{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Implementation of a hierarchical model\n", "\n", "<hr>" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "nbsphinx": "hidden", "tags": [] }, "outputs": [], "source": [ "# Colab setup ------------------\n", "import os, sys, subprocess\n", "if \"google.colab\" in sys.modules:\n", " cmd = \"pip install --upgrade colorcet bebi103 arviz cmdstanpy watermark\"\n", " process = subprocess.Popen(cmd.split(), stdout=subprocess.PIPE, stderr=subprocess.PIPE)\n", " stdout, stderr = process.communicate()\n", " import cmdstanpy; cmdstanpy.install_cmdstan()\n", "else:\n", " data_path = \"../data/\"\n", "# ------------------------------" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "tags": [] }, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "/Users/bois/opt/anaconda3/lib/python3.9/site-packages/colorcet/__init__.py:74: UserWarning: Trying to register the cmap 'cet_gray' which already exists.\n", " register_cmap(\"cet_\"+name, cmap=cm[name])\n", "/Users/bois/opt/anaconda3/lib/python3.9/site-packages/colorcet/__init__.py:74: UserWarning: Trying to register the cmap 'cet_gray_r' which already exists.\n", " register_cmap(\"cet_\"+name, cmap=cm[name])\n" ] }, { "data": { "application/javascript": [ "\n", "(function(root) {\n", " function now() {\n", " return new Date();\n", " }\n", "\n", " var 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", " if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n", " root._bokeh_timeout = Date.now() + 5000;\n", " root._bokeh_failed_load = false;\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, js_modules, callback) {\n", " if (css_urls == null) css_urls = [];\n", " if (js_urls == null) js_urls = [];\n", " if (js_modules == null) js_modules = [];\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.length === 0 && js_modules.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 + js_modules.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() {\n", " console.error(\"failed to load \" + url);\n", " }\n", "\n", " for (var i = 0; i < css_urls.length; i++) {\n", " var url = css_urls[i];\n", " const element = document.createElement(\"link\");\n", " element.onload = on_load;\n", " element.onerror = on_error;\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", " var skip = [];\n", " if (window.requirejs) {\n", " window.requirejs.config({'packages': {}, 'paths': {}, 'shim': {}});\n", " \n", " }\n", " for (var i = 0; i < js_urls.length; i++) {\n", " var url = js_urls[i];\n", " if (skip.indexOf(url) >= 0) { on_load(); continue; }\n", " var element = document.createElement('script');\n", " element.onload = on_load;\n", " element.onerror = on_error;\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", " for (var i = 0; i < js_modules.length; i++) {\n", " var url = js_modules[i];\n", " if (skip.indexOf(url) >= 0) { on_load(); continue; }\n", " var element = document.createElement('script');\n", " element.onload = on_load;\n", " element.onerror = on_error;\n", " element.async = false;\n", " element.src = url;\n", " element.type = \"module\";\n", " console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n", " document.head.appendChild(element);\n", " }\n", " if (!js_urls.length && !js_modules.length) {\n", " on_load()\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", " var js_urls = [];\n", " var js_modules = [];\n", " var css_urls = [];\n", " var inline_js = [\n", " function(Bokeh) {\n", " inject_raw_css(\".bk.alert {\\n padding: 0.75rem 1.25rem;\\n border: 1px solid transparent;\\n border-radius: 0.25rem;\\n /* Don't set margin because that will not render correctly! */\\n /* margin-bottom: 1rem; */\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.bk.alert a {\\n color: rgb(11, 46, 19); /* #002752; */\\n font-weight: 700;\\n text-decoration: rgb(11, 46, 19);\\n text-decoration-color: rgb(11, 46, 19);\\n text-decoration-line: none;\\n text-decoration-style: solid;\\n text-decoration-thickness: auto;\\n }\\n.bk.alert a:hover {\\n color: rgb(11, 46, 19);\\n font-weight: 700;\\n text-decoration: underline;\\n}\\n\\n.bk.alert-primary {\\n color: #004085;\\n background-color: #cce5ff;\\n border-color: #b8daff;\\n}\\n.bk.alert-primary hr {\\n border-top-color: #9fcdff;\\n}\\n\\n.bk.alert-secondary {\\n color: #383d41;\\n background-color: #e2e3e5;\\n border-color: #d6d8db;\\n }\\n.bk.alert-secondary hr {\\n border-top-color: #c8cbcf;\\n}\\n\\n.bk.alert-success {\\n color: #155724;\\n background-color: #d4edda;\\n border-color: #c3e6cb;\\n }\\n\\n.bk.alert-success hr {\\n border-top-color: #b1dfbb;\\n}\\n\\n.bk.alert-info {\\n color: #0c5460;\\n background-color: #d1ecf1;\\n border-color: #bee5eb;\\n }\\n.bk.alert-info hr {\\n border-top-color: #abdde5;\\n}\\n\\n.bk.alert-warning {\\n color: #856404;\\n background-color: #fff3cd;\\n border-color: #ffeeba;\\n }\\n\\n.bk.alert-warning hr {\\n border-top-color: #ffe8a1;\\n}\\n\\n.bk.alert-danger {\\n color: #721c24;\\n background-color: #f8d7da;\\n border-color: #f5c6cb;\\n}\\n.bk.alert-danger hr {\\n border-top-color: #f1b0b7;\\n}\\n\\n.bk.alert-light {\\n color: #818182;\\n background-color: #fefefe;\\n border-color: #fdfdfe;\\n }\\n.bk.alert-light hr {\\n border-top-color: #ececf6;\\n}\\n\\n.bk.alert-dark {\\n color: #1b1e21;\\n background-color: #d6d8d9;\\n border-color: #c6c8ca;\\n }\\n.bk.alert-dark hr {\\n border-top-color: #b9bbbe;\\n}\\n\\n\\n/* adjf\\u00e6l */\\n\\n.bk.alert-primary a {\\n color: #002752;\\n}\\n\\n.bk.alert-secondary a {\\n color: #202326;\\n}\\n\\n\\n.bk.alert-success a {\\n color: #0b2e13;\\n}\\n\\n\\n.bk.alert-info a {\\n color: #062c33;\\n}\\n\\n\\n.bk.alert-warning a {\\n color: #533f03;\\n}\\n\\n\\n.bk.alert-danger a {\\n color: #491217;\\n}\\n\\n.bk.alert-light a {\\n color: #686868;\\n}\\n\\n.bk.alert-dark a {\\n color: #040505;\\n}\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\".bk.card {\\n border: 1px solid rgba(0,0,0,.125);\\n border-radius: 0.25rem;\\n}\\n.bk.accordion {\\n border: 1px solid rgba(0,0,0,.125);\\n}\\n.bk.card-header {\\n align-items: center;\\n background-color: rgba(0, 0, 0, 0.03);\\n border-radius: 0.25rem;\\n display: inline-flex;\\n justify-content: start;\\n width: 100%;\\n}\\n.bk.accordion-header {\\n align-items: center;\\n background-color: rgba(0, 0, 0, 0.03);\\n border-radius: 0;\\n display: flex;\\n justify-content: start;\\n width: 100%;\\n}\\n.bk.card-button {\\n background-color: transparent;\\n margin-left: 0.5em;\\n}\\n.bk.card-header-row {\\n position: relative !important;\\n}\\n.bk.card-title {\\n align-items: center;\\n font-size: 1.4em;\\n font-weight: bold;\\n overflow-wrap: break-word;\\n}\\n.bk.card-header-row > .bk {\\n padding-right: 1.5em !important;\\n overflow-wrap: break-word;\\n}\\n\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\".bk.panel-widget-box {\\n min-height: 20px;\\n background-color: #f5f5f5;\\n border: 1px solid #e3e3e3;\\n border-radius: 4px;\\n -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n box-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n overflow-x: hidden;\\n overflow-y: hidden;\\n}\\n\\n.scrollable {\\n overflow: scroll;\\n}\\n\\nprogress {\\n appearance: none;\\n -moz-appearance: none;\\n -webkit-appearance: none;\\n border: none;\\n height: 20px;\\n background-color: whiteSmoke;\\n border-radius: 3px;\\n box-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n color: royalblue;\\n position: relative;\\n margin: 0 0 1.5em;\\n}\\n\\nprogress[value]::-webkit-progress-bar {\\n background-color: whiteSmoke;\\n border-radius: 3px;\\n box-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n}\\n\\nprogress[value]::-webkit-progress-value {\\n position: relative;\\n background-size: 35px 20px, 100% 100%, 100% 100%;\\n border-radius:3px;\\n}\\n\\nprogress.active:not([value])::before {\\n background-position: 10%;\\n animation-name: stripes;\\n animation-duration: 3s;\\n animation-timing-function: linear;\\n animation-iteration-count: infinite;\\n}\\n\\nprogress[value]::-moz-progress-bar {\\n background-size: 35px 20px, 100% 100%, 100% 100%;\\n border-radius:3px;\\n}\\n\\nprogress:not([value])::-moz-progress-bar {\\n border-radius:3px;\\n background: linear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\n\\nprogress.active:not([value])::-moz-progress-bar {\\n background-position: 10%;\\n animation-name: stripes;\\n animation-duration: 3s;\\n animation-timing-function: linear;\\n animation-iteration-count: infinite;\\n}\\n\\nprogress.active:not([value])::-webkit-progress-bar {\\n background-position: 10%;\\n animation-name: stripes;\\n animation-duration: 3s;\\n animation-timing-function: linear;\\n animation-iteration-count: infinite;\\n}\\n\\nprogress.primary[value]::-webkit-progress-value { background-color: #007bff; }\\nprogress.primary:not([value])::before { background-color: #007bff; }\\nprogress.primary:not([value])::-webkit-progress-bar { background-color: #007bff; }\\nprogress.primary::-moz-progress-bar { background-color: #007bff; }\\n\\nprogress.secondary[value]::-webkit-progress-value { background-color: #6c757d; }\\nprogress.secondary:not([value])::before { background-color: #6c757d; }\\nprogress.secondary:not([value])::-webkit-progress-bar { background-color: #6c757d; }\\nprogress.secondary::-moz-progress-bar { background-color: #6c757d; }\\n\\nprogress.success[value]::-webkit-progress-value { background-color: #28a745; }\\nprogress.success:not([value])::before { background-color: #28a745; }\\nprogress.success:not([value])::-webkit-progress-bar { background-color: #28a745; }\\nprogress.success::-moz-progress-bar { background-color: #28a745; }\\n\\nprogress.danger[value]::-webkit-progress-value { background-color: #dc3545; }\\nprogress.danger:not([value])::before { background-color: #dc3545; }\\nprogress.danger:not([value])::-webkit-progress-bar { background-color: #dc3545; }\\nprogress.danger::-moz-progress-bar { background-color: #dc3545; }\\n\\nprogress.warning[value]::-webkit-progress-value { background-color: #ffc107; }\\nprogress.warning:not([value])::before { background-color: #ffc107; }\\nprogress.warning:not([value])::-webkit-progress-bar { background-color: #ffc107; }\\nprogress.warning::-moz-progress-bar { background-color: #ffc107; }\\n\\nprogress.info[value]::-webkit-progress-value { background-color: #17a2b8; }\\nprogress.info:not([value])::before { background-color: #17a2b8; }\\nprogress.info:not([value])::-webkit-progress-bar { background-color: #17a2b8; }\\nprogress.info::-moz-progress-bar { background-color: #17a2b8; }\\n\\nprogress.light[value]::-webkit-progress-value { background-color: #f8f9fa; }\\nprogress.light:not([value])::before { background-color: #f8f9fa; }\\nprogress.light:not([value])::-webkit-progress-bar { background-color: #f8f9fa; }\\nprogress.light::-moz-progress-bar { background-color: #f8f9fa; }\\n\\nprogress.dark[value]::-webkit-progress-value { background-color: #343a40; }\\nprogress.dark:not([value])::-webkit-progress-bar { background-color: #343a40; }\\nprogress.dark:not([value])::before { background-color: #343a40; }\\nprogress.dark::-moz-progress-bar { background-color: #343a40; }\\n\\nprogress:not([value])::-webkit-progress-bar {\\n border-radius: 3px;\\n background: linear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\nprogress:not([value])::before {\\n content:\\\" \\\";\\n position:absolute;\\n height: 20px;\\n top:0;\\n left:0;\\n right:0;\\n bottom:0;\\n border-radius: 3px;\\n background: linear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\n\\n@keyframes stripes {\\n from {background-position: 0%}\\n to {background-position: 100%}\\n}\\n\\n.bk-root .bk.loader {\\n overflow: hidden;\\n}\\n\\n.bk.loader::after {\\n content: \\\"\\\";\\n border-radius: 50%;\\n -webkit-mask-image: radial-gradient(transparent 50%, rgba(0, 0, 0, 1) 54%);\\n width: 100%;\\n height: 100%;\\n left: 0;\\n top: 0;\\n position: absolute;\\n}\\n\\n.bk-root .bk.loader.dark::after {\\n background: #0f0f0f;\\n}\\n\\n.bk-root .bk.loader.light::after {\\n background: #f0f0f0;\\n}\\n\\n.bk-root .bk.loader.spin::after {\\n animation: spin 2s linear infinite;\\n}\\n\\n.bk-root div.bk.loader.spin.primary-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #007bff 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.secondary-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #6c757d 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.success-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #28a745 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.danger-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #dc3545 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.warning-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #ffc107 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.info-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #17a2b8 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.light-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #f8f9fa 50%);\\n}\\n\\n.bk-root div.bk.loader.dark-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #343a40 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.primary-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #007bff 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.secondary-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #6c757d 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.success-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #28a745 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.danger-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #dc3545 50%)\\n}\\n\\n.bk-root div.bk.loader.spin.warning-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #ffc107 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.info-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #17a2b8 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.light-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #f8f9fa 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.dark-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #343a40 50%);\\n}\\n\\n/* Safari */\\n@-webkit-keyframes spin {\\n 0% { -webkit-transform: rotate(0deg); }\\n 100% { -webkit-transform: rotate(360deg); }\\n}\\n\\n@keyframes spin {\\n 0% { transform: rotate(0deg); }\\n 100% { transform: rotate(360deg); }\\n}\\n\\n.dot div {\\n height: 100%;\\n width: 100%;\\n border: 1px solid #000 !important;\\n background-color: #fff;\\n border-radius: 50%;\\n display: inline-block;\\n}\\n\\n.dot-filled div {\\n height: 100%;\\n width: 100%;\\n border: 1px solid #000 !important;\\n border-radius: 50%;\\n display: inline-block;\\n}\\n\\n.dot-filled.primary div {\\n background-color: #007bff;\\n}\\n\\n.dot-filled.secondary div {\\n background-color: #6c757d;\\n}\\n\\n.dot-filled.success div {\\n background-color: #28a745;\\n}\\n\\n.dot-filled.danger div {\\n background-color: #dc3545;\\n}\\n\\n.dot-filled.warning div {\\n background-color: #ffc107;\\n}\\n\\n.dot-filled.info div {\\n background-color: #17a2b8;\\n}\\n\\n.dot-filled.dark div {\\n background-color: #343a40;\\n}\\n\\n.dot-filled.light div {\\n background-color: #f8f9fa;\\n}\\n\\n/* Slider editor */\\n.slider-edit .bk-input-group .bk-input {\\n border: 0;\\n border-radius: 0;\\n min-height: 0;\\n padding-left: 0;\\n padding-right: 0;\\n font-weight: bold;\\n}\\n\\n.slider-edit .bk-input-group .bk-spin-wrapper {\\n display: contents;\\n}\\n\\n.slider-edit .bk-input-group .bk-spin-wrapper .bk.bk-spin-btn-up {\\n top: -6px;\\n}\\n\\n.slider-edit .bk-input-group .bk-spin-wrapper .bk.bk-spin-btn-down {\\n bottom: 3px;\\n}\\n\\n/* JSON Pane */\\n.bk-root .json-formatter-row .json-formatter-string, .bk-root .json-formatter-row .json-formatter-stringifiable {\\n white-space: pre-wrap;\\n}\\n\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\".codehilite .hll { background-color: #ffffcc }\\n.codehilite { background: #f8f8f8; }\\n.codehilite .c { color: #408080; font-style: italic } /* Comment */\\n.codehilite .err { border: 1px solid #FF0000 } /* Error */\\n.codehilite .k { color: #008000; font-weight: bold } /* Keyword */\\n.codehilite .o { color: #666666 } /* Operator */\\n.codehilite .ch { color: #408080; font-style: italic } /* Comment.Hashbang */\\n.codehilite .cm { color: #408080; font-style: italic } /* Comment.Multiline */\\n.codehilite .cp { color: #BC7A00 } /* Comment.Preproc */\\n.codehilite .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */\\n.codehilite .c1 { color: #408080; font-style: italic } /* Comment.Single */\\n.codehilite .cs { color: #408080; font-style: italic } /* Comment.Special */\\n.codehilite .gd { color: #A00000 } /* Generic.Deleted */\\n.codehilite .ge { font-style: italic } /* Generic.Emph */\\n.codehilite .gr { color: #FF0000 } /* Generic.Error */\\n.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */\\n.codehilite .gi { color: #00A000 } /* Generic.Inserted */\\n.codehilite .go { color: #888888 } /* Generic.Output */\\n.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\\n.codehilite .gs { font-weight: bold } /* Generic.Strong */\\n.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\\n.codehilite .gt { color: #0044DD } /* Generic.Traceback */\\n.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\\n.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\\n.codehilite .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\\n.codehilite .kp { color: #008000 } /* Keyword.Pseudo */\\n.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\\n.codehilite .kt { color: #B00040 } /* Keyword.Type */\\n.codehilite .m { color: #666666 } /* Literal.Number */\\n.codehilite .s { color: #BA2121 } /* Literal.String */\\n.codehilite .na { color: #7D9029 } /* Name.Attribute */\\n.codehilite .nb { color: #008000 } /* Name.Builtin */\\n.codehilite .nc { color: #0000FF; font-weight: bold } /* Name.Class */\\n.codehilite .no { color: #880000 } /* Name.Constant */\\n.codehilite .nd { color: #AA22FF } /* Name.Decorator */\\n.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */\\n.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */\\n.codehilite .nf { color: #0000FF } /* Name.Function */\\n.codehilite .nl { color: #A0A000 } /* Name.Label */\\n.codehilite .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\\n.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */\\n.codehilite .nv { color: #19177C } /* Name.Variable */\\n.codehilite .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\\n.codehilite .w { color: #bbbbbb } /* Text.Whitespace */\\n.codehilite .mb { color: #666666 } /* Literal.Number.Bin */\\n.codehilite .mf { color: #666666 } /* Literal.Number.Float */\\n.codehilite .mh { color: #666666 } /* Literal.Number.Hex */\\n.codehilite .mi { color: #666666 } /* Literal.Number.Integer */\\n.codehilite .mo { color: #666666 } /* Literal.Number.Oct */\\n.codehilite .sa { color: #BA2121 } /* Literal.String.Affix */\\n.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */\\n.codehilite .sc { color: #BA2121 } /* Literal.String.Char */\\n.codehilite .dl { color: #BA2121 } /* Literal.String.Delimiter */\\n.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\\n.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */\\n.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */\\n.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */\\n.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */\\n.codehilite .sx { color: #008000 } /* Literal.String.Other */\\n.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */\\n.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */\\n.codehilite .ss { color: #19177C } /* Literal.String.Symbol */\\n.codehilite .bp { color: #008000 } /* Name.Builtin.Pseudo */\\n.codehilite .fm { color: #0000FF } /* Name.Function.Magic */\\n.codehilite .vc { color: #19177C } /* Name.Variable.Class */\\n.codehilite .vg { color: #19177C } /* Name.Variable.Global */\\n.codehilite .vi { color: #19177C } /* Name.Variable.Instance */\\n.codehilite .vm { color: #19177C } /* Name.Variable.Magic */\\n.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */\\n\\n.markdown h1 { margin-block-start: 0.34em }\\n.markdown h2 { margin-block-start: 0.42em }\\n.markdown h3 { margin-block-start: 0.5em }\\n.markdown h4 { margin-block-start: 0.67em }\\n.markdown h5 { margin-block-start: 0.84em }\\n.markdown h6 { margin-block-start: 1.17em }\\n.markdown ul { padding-inline-start: 2em }\\n.markdown ol { padding-inline-start: 2em }\\n.markdown strong { font-weight: 600 }\\n.markdown a { color: -webkit-link }\\n.markdown a { color: -moz-hyperlinkText }\\n\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\".json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n color: black;\\n text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \\\"No properties\\\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \\\"[]\\\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n color: green;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: blue;\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n color: #00008B;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n color: white;\\n text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \\\"No properties\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \\\"[]\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n color: #31F031;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: #027BFF;\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n color: #23A0DB;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\".bk.pn-loading:before {\\n position: absolute;\\n height: 100%;\\n width: 100%;\\n content: '';\\n z-index: 1000;\\n background-color: rgb(255,255,255,0.50);\\n border-color: lightgray;\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: auto 50%;\\n border-width: 1px;\\n cursor: progress;\\n}\\n.bk.pn-loading.arcs:hover:before {\\n cursor: progress;\\n}\\n\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\"table.panel-df {\\n margin-left: auto;\\n margin-right: auto;\\n border: none;\\n border-collapse: collapse;\\n border-spacing: 0;\\n color: black;\\n font-size: 12px;\\n table-layout: fixed;\\n width: 100%;\\n}\\n\\n.panel-df tr, .panel-df th, .panel-df td {\\n text-align: right;\\n vertical-align: middle;\\n padding: 0.5em 0.5em !important;\\n line-height: normal;\\n white-space: normal;\\n max-width: none;\\n border: none;\\n}\\n\\n.panel-df tbody {\\n display: table-row-group;\\n vertical-align: middle;\\n border-color: inherit;\\n}\\n\\n.panel-df tbody tr:nth-child(odd) {\\n background: #f5f5f5;\\n}\\n\\n.panel-df thead {\\n border-bottom: 1px solid black;\\n vertical-align: bottom;\\n}\\n\\n.panel-df tr:hover {\\n background: lightblue !important;\\n cursor: pointer;\\n}\\n\");\n", " },\n", " function(Bokeh) {\n", " inject_raw_css(\"\\n .bk.pn-loading.arcs:before {\\n background-image: url(\\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBzdHlsZT0ibWFyZ2luOiBhdXRvOyBiYWNrZ3JvdW5kOiBub25lOyBkaXNwbGF5OiBibG9jazsgc2hhcGUtcmVuZGVyaW5nOiBhdXRvOyIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIj4gIDxjaXJjbGUgY3g9IjUwIiBjeT0iNTAiIHI9IjMyIiBzdHJva2Utd2lkdGg9IjgiIHN0cm9rZT0iI2MzYzNjMyIgc3Ryb2tlLWRhc2hhcnJheT0iNTAuMjY1NDgyNDU3NDM2NjkgNTAuMjY1NDgyNDU3NDM2NjkiIGZpbGw9Im5vbmUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCI+ICAgIDxhbmltYXRlVHJhbnNmb3JtIGF0dHJpYnV0ZU5hbWU9InRyYW5zZm9ybSIgdHlwZT0icm90YXRlIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgZHVyPSIxcyIga2V5VGltZXM9IjA7MSIgdmFsdWVzPSIwIDUwIDUwOzM2MCA1MCA1MCI+PC9hbmltYXRlVHJhbnNmb3JtPiAgPC9jaXJjbGU+PC9zdmc+\\\")\\n }\\n \");\n", " },\n", " function(Bokeh) {\n", " /* BEGIN bokeh.min.js */\n", " /*!\n", " * Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors\n", " * All rights reserved.\n", " * \n", " * Redistribution and use in source and binary forms, with or without modification,\n", " * are permitted provided that the following conditions are met:\n", " * \n", " * Redistributions of source code must retain the above copyright notice,\n", " * this list of conditions and the following disclaimer.\n", " * \n", " * Redistributions in binary form must reproduce the above copyright notice,\n", " * this list of conditions and the following disclaimer in the documentation\n", " * and/or other materials provided with the distribution.\n", " * \n", " * Neither the name of Anaconda nor the names of any contributors\n", " * may be used to endorse or promote products derived from this software\n", " * without specific prior written permission.\n", " * \n", " * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n", " * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n", " * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n", " * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n", " * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n", " * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n", " * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n", " * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n", " * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n", " * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n", " * THE POSSIBILITY OF SUCH DAMAGE.\n", " */\n", " (function(root, factory) {\n", " const bokeh = factory();\n", " bokeh.__bokeh__ = true;\n", " if (typeof root.Bokeh === \"undefined\" || typeof root.Bokeh.__bokeh__ === \"undefined\") {\n", " root.Bokeh = bokeh;\n", " }\n", " const Bokeh = root.Bokeh;\n", " Bokeh[bokeh.version] = bokeh;\n", " })(this, function() {\n", " var define;\n", " var parent_require = typeof require === \"function\" && require\n", " return (function(modules, entry, aliases, externals) {\n", " if (aliases === undefined) aliases = {};\n", " if (externals === undefined) externals = {};\n", "\n", " var cache = {};\n", "\n", " var normalize = function(name) {\n", " if (typeof name === \"number\")\n", " return name;\n", "\n", " if (name === \"bokehjs\")\n", " return entry;\n", "\n", " if (!externals[name]) {\n", " var prefix = \"@bokehjs/\"\n", " if (name.slice(0, prefix.length) === prefix)\n", " name = name.slice(prefix.length)\n", " }\n", "\n", " var alias = aliases[name]\n", " if (alias != null)\n", " return alias;\n", "\n", " var trailing = name.length > 0 && name[name.lenght-1] === \"/\";\n", " var index = aliases[name + (trailing ? \"\" : \"/\") + \"index\"];\n", " if (index != null)\n", " return index;\n", "\n", " return name;\n", " }\n", "\n", " var require = function(name) {\n", " var mod = cache[name];\n", " if (!mod) {\n", " var id = normalize(name);\n", "\n", " mod = cache[id];\n", " if (!mod) {\n", " if (!modules[id]) {\n", " if (externals[id] === false || (externals[id] == true && parent_require)) {\n", " try {\n", " mod = {exports: externals[id] ? parent_require(id) : {}};\n", " cache[id] = cache[name] = mod;\n", " return mod.exports;\n", " } catch (e) {}\n", " }\n", "\n", " var err = new Error(\"Cannot find module '\" + name + \"'\");\n", " err.code = 'MODULE_NOT_FOUND';\n", " throw err;\n", " }\n", "\n", " mod = {exports: {}};\n", " cache[id] = cache[name] = mod;\n", "\n", " function __esModule() {\n", " Object.defineProperty(mod.exports, \"__esModule\", {value: true});\n", " }\n", "\n", " function __esExport(name, value) {\n", " Object.defineProperty(mod.exports, name, {\n", " enumerable: true, get: function () { return value; }\n", " });\n", " }\n", "\n", " modules[id].call(mod.exports, require, mod, mod.exports, __esModule, __esExport);\n", " } else {\n", " cache[name] = mod;\n", " }\n", " }\n", "\n", " return mod.exports;\n", " }\n", " require.resolve = function(name) {\n", " return \"\"\n", " }\n", "\n", " var main = require(entry);\n", " main.require = require;\n", "\n", " if (typeof Proxy !== \"undefined\") {\n", " // allow Bokeh.loader[\"@bokehjs/module/name\"] syntax\n", " main.loader = new Proxy({}, {\n", " get: function(_obj, module) {\n", " return require(module);\n", " }\n", " });\n", " }\n", "\n", " main.register_plugin = function(plugin_modules, plugin_entry, plugin_aliases, plugin_externals) {\n", " if (plugin_aliases === undefined) plugin_aliases = {};\n", " if (plugin_externals === undefined) plugin_externals = {};\n", "\n", " for (var name in plugin_modules) {\n", " modules[name] = plugin_modules[name];\n", " }\n", "\n", " for (var name in plugin_aliases) {\n", " aliases[name] = plugin_aliases[name];\n", " }\n", "\n", " for (var name in plugin_externals) {\n", " externals[name] = plugin_externals[name];\n", " }\n", "\n", " var plugin = require(plugin_entry);\n", "\n", " for (var name in plugin) {\n", " main[name] = plugin[name];\n", " }\n", "\n", " return plugin;\n", " }\n", "\n", " return main;\n", " })\n", " ([\n", " function _(t,_,n,o,r){o();t(1).__exportStar(t(2),n)},\n", " function _(t,e,n,r,o){r();var a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])})(t,e)};n.__extends=function(t,e){function n(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)};function i(t){var e=\"function\"==typeof Symbol&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&\"number\"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?\"Object is not iterable.\":\"Symbol.iterator is not defined.\")}function c(t,e){var n=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,a=n.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(t){o={error:t}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i}function u(t){return this instanceof u?(this.v=t,this):new u(t)}n.__assign=function(){return n.__assign=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},n.__assign.apply(this,arguments)},n.__rest=function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(t);o<r.length;o++)e.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(t,r[o])&&(n[r[o]]=t[r[o]])}return n},n.__decorate=function(t,e,n,r){var o,a=arguments.length,i=a<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,n):r;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)i=Reflect.decorate(t,e,n,r);else for(var c=t.length-1;c>=0;c--)(o=t[c])&&(i=(a<3?o(i):a>3?o(e,n,i):o(e,n))||i);return a>3&&i&&Object.defineProperty(e,n,i),i},n.__param=function(t,e){return function(n,r){e(n,r,t)}},n.__metadata=function(t,e){if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.metadata)return Reflect.metadata(t,e)},n.__awaiter=function(t,e,n,r){return new(n||(n=Promise))((function(o,a){function i(t){try{u(r.next(t))}catch(t){a(t)}}function c(t){try{u(r.throw(t))}catch(t){a(t)}}function u(t){var e;t.done?o(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(i,c)}u((r=r.apply(t,e||[])).next())}))},n.__generator=function(t,e){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:c(0),throw:c(1),return:c(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function c(a){return function(c){return function(a){if(n)throw new TypeError(\"Generator is already executing.\");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=e.call(t,i)}catch(t){a=[6,t],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}},n.__createBinding=Object.create?function(t,e,n,r){void 0===r&&(r=n),Object.defineProperty(t,r,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,r){void 0===r&&(r=n),t[r]=e[n]},n.__exportStar=function(t,e){for(var r in t)\"default\"===r||Object.prototype.hasOwnProperty.call(e,r)||n.__createBinding(e,t,r)},n.__values=i,n.__read=c,n.__spread=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(c(arguments[e]));return t},n.__spreadArrays=function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var r=Array(t),o=0;for(e=0;e<n;e++)for(var a=arguments[e],i=0,c=a.length;i<c;i++,o++)r[o]=a[i];return r},n.__await=u,n.__asyncGenerator=function(t,e,n){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var r,o=n.apply(t,e||[]),a=[];return r={},i(\"next\"),i(\"throw\"),i(\"return\"),r[Symbol.asyncIterator]=function(){return this},r;function i(t){o[t]&&(r[t]=function(e){return new Promise((function(n,r){a.push([t,e,n,r])>1||c(t,e)}))})}function c(t,e){try{(n=o[t](e)).value instanceof u?Promise.resolve(n.value.v).then(f,l):s(a[0][2],n)}catch(t){s(a[0][3],t)}var n}function f(t){c(\"next\",t)}function l(t){c(\"throw\",t)}function s(t,e){t(e),a.shift(),a.length&&c(a[0][0],a[0][1])}},n.__asyncDelegator=function(t){var e,n;return e={},r(\"next\"),r(\"throw\",(function(t){throw t})),r(\"return\"),e[Symbol.iterator]=function(){return this},e;function r(r,o){e[r]=t[r]?function(e){return(n=!n)?{value:u(t[r](e)),done:\"return\"===r}:o?o(e):e}:o}},n.__asyncValues=function(t){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t=i(t),e={},r(\"next\"),r(\"throw\"),r(\"return\"),e[Symbol.asyncIterator]=function(){return this},e);function r(n){e[n]=t[n]&&function(e){return new Promise((function(r,o){(function(t,e,n,r){Promise.resolve(r).then((function(e){t({value:e,done:n})}),e)})(r,o,(e=t[n](e)).done,e.value)}))}}},n.__makeTemplateObject=function(t,e){return Object.defineProperty?Object.defineProperty(t,\"raw\",{value:e}):t.raw=e,t};var f=Object.create?function(t,e){Object.defineProperty(t,\"default\",{enumerable:!0,value:e})}:function(t,e){t.default=e};n.__importStar=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)\"default\"!==r&&Object.prototype.hasOwnProperty.call(t,r)&&n.__createBinding(e,t,r);return f(e,t),e},n.__importDefault=function(t){return t&&t.__esModule?t:{default:t}},n.__classPrivateFieldGet=function(t,e){if(!e.has(t))throw new TypeError(\"attempted to get private field on non-instance\");return e.get(t)},n.__classPrivateFieldSet=function(t,e,n){if(!e.has(t))throw new TypeError(\"attempted to set private field on non-instance\");return e.set(t,n),n}},\n", " function _(e,t,o,s,l){s();const n=e(1);l(\"version\",e(3).version),l(\"index\",e(4).index),o.embed=n.__importStar(e(4)),o.protocol=n.__importStar(e(404)),o._testing=n.__importStar(e(405));var r=e(19);l(\"logger\",r.logger),l(\"set_log_level\",r.set_log_level),l(\"settings\",e(28).settings),l(\"Models\",e(7).Models),l(\"documents\",e(5).documents),l(\"safely\",e(406).safely)},\n", " function _(n,i,o,c,e){c(),o.version=\"2.3.3\"},\n", " function _(e,o,t,n,s){n();const d=e(5),r=e(19),_=e(34),c=e(13),i=e(8),a=e(16),u=e(395),l=e(397),m=e(396);var f=e(395);s(\"add_document_standalone\",f.add_document_standalone),s(\"index\",f.index),s(\"add_document_from_session\",e(397).add_document_from_session);var g=e(402);async function w(e,o,t,n){i.isString(e)&&(e=JSON.parse(_.unescape(e)));const s={};for(const[o,t]of c.entries(e))s[o]=d.Document.from_json(t);const a=[];for(const e of o){const o=m._resolve_element(e),d=m._resolve_root_elements(e);if(null!=e.docid)a.push(await u.add_document_standalone(s[e.docid],o,d,e.use_for_title));else{if(null==e.token)throw new Error(\"Error rendering Bokeh items: either 'docid' or 'token' was expected.\");{const s=l._get_ws_url(t,n);r.logger.debug(`embed: computed ws url: ${s}`);try{a.push(await l.add_document_from_session(s,e.token,o,d,e.use_for_title)),console.log(\"Bokeh items were rendered successfully\")}catch(e){console.log(\"Error rendering Bokeh items:\",e)}}}}return a}s(\"embed_items_notebook\",g.embed_items_notebook),s(\"kernels\",g.kernels),s(\"BOKEH_ROOT\",e(396).BOKEH_ROOT),t.embed_item=async function(e,o){const t={},n=_.uuid4();t[n]=e.doc,null==o&&(o=e.target_id);const s=document.getElementById(o);null!=s&&s.classList.add(m.BOKEH_ROOT);const d={roots:{[e.root_id]:o},root_ids:[e.root_id],docid:n};await a.defer();const[r]=await w(t,[d]);return r},t.embed_items=async function(e,o,t,n){return await a.defer(),w(e,o,t,n)}},\n", " function _(t,_,o,r,n){r();const a=t(1);a.__exportStar(t(6),o),a.__exportStar(t(35),o)},\n", " function _(e,t,s,o,n){o();const r=e(1),i=e(7),l=e(3),_=e(19),a=e(264),c=e(14),d=e(30),h=e(15),f=e(17),u=e(31),m=e(9),g=e(13),v=r.__importStar(e(132)),w=e(26),p=e(8),b=e(319),y=e(130),k=e(53),M=e(394),j=e(35);class S{constructor(e){this.document=e,this.session=null,this.subscribed_models=new Set}send_event(e){const t=new j.MessageSentEvent(this.document,\"bokeh_event\",e.to_json());this.document._trigger_on_change(t)}trigger(e){for(const t of this.subscribed_models)null!=e.origin&&e.origin!=t||t._process_event(e)}}s.EventManager=S,S.__name__=\"EventManager\",s.documents=[],s.DEFAULT_TITLE=\"Bokeh Application\";class E{constructor(e){var t;s.documents.push(this),this._init_timestamp=Date.now(),this._resolver=null!==(t=null==e?void 0:e.resolver)&&void 0!==t?t:new i.ModelResolver,this._title=s.DEFAULT_TITLE,this._roots=[],this._all_models=new Map,this._all_models_freeze_count=0,this._callbacks=new Map,this._message_callbacks=new Map,this.event_manager=new S(this),this.idle=new h.Signal0(this,\"idle\"),this._idle_roots=new WeakMap,this._interactive_timestamp=null,this._interactive_plot=null}get layoutables(){return this._roots.filter((e=>e instanceof b.LayoutDOM))}get is_idle(){for(const e of this.layoutables)if(!this._idle_roots.has(e))return!1;return!0}notify_idle(e){this._idle_roots.set(e,!0),this.is_idle&&(_.logger.info(`document idle at ${Date.now()-this._init_timestamp} ms`),this.event_manager.send_event(new a.DocumentReady),this.idle.emit())}clear(){this._push_all_models_freeze();try{for(;this._roots.length>0;)this.remove_root(this._roots[0])}finally{this._pop_all_models_freeze()}}interactive_start(e){null==this._interactive_plot&&(this._interactive_plot=e,this._interactive_plot.trigger_event(new a.LODStart)),this._interactive_timestamp=Date.now()}interactive_stop(){null!=this._interactive_plot&&this._interactive_plot.trigger_event(new a.LODEnd),this._interactive_plot=null,this._interactive_timestamp=null}interactive_duration(){return null==this._interactive_timestamp?-1:Date.now()-this._interactive_timestamp}destructively_move(e){if(e===this)throw new Error(\"Attempted to overwrite a document with itself\");e.clear();const t=m.copy(this._roots);this.clear();for(const e of t)if(null!=e.document)throw new Error(`Somehow we didn't detach ${e}`);if(0!=this._all_models.size)throw new Error(`this._all_models still had stuff in it: ${this._all_models}`);for(const s of t)e.add_root(s);e.set_title(this._title)}_push_all_models_freeze(){this._all_models_freeze_count+=1}_pop_all_models_freeze(){this._all_models_freeze_count-=1,0===this._all_models_freeze_count&&this._recompute_all_models()}_invalidate_all_models(){_.logger.debug(\"invalidating document models\"),0===this._all_models_freeze_count&&this._recompute_all_models()}_recompute_all_models(){let e=new Set;for(const t of this._roots)e=v.union(e,t.references());const t=new Set(this._all_models.values()),s=v.difference(t,e),o=v.difference(e,t),n=new Map;for(const t of e)n.set(t.id,t);for(const e of s)e.detach_document();for(const e of o)e.attach_document(this);this._all_models=n}roots(){return this._roots}add_root(e,t){if(_.logger.debug(`Adding root: ${e}`),!m.includes(this._roots,e)){this._push_all_models_freeze();try{this._roots.push(e)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new j.RootAddedEvent(this,e,t))}}remove_root(e,t){const s=this._roots.indexOf(e);if(!(s<0)){this._push_all_models_freeze();try{this._roots.splice(s,1)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new j.RootRemovedEvent(this,e,t))}}title(){return this._title}set_title(e,t){e!==this._title&&(this._title=e,this._trigger_on_change(new j.TitleChangedEvent(this,e,t)))}get_model_by_id(e){var t;return null!==(t=this._all_models.get(e))&&void 0!==t?t:null}get_model_by_name(e){const t=[];for(const s of this._all_models.values())s instanceof k.Model&&s.name==e&&t.push(s);switch(t.length){case 0:return null;case 1:return t[0];default:throw new Error(`Multiple models are named '${e}'`)}}on_message(e,t){const s=this._message_callbacks.get(e);null==s?this._message_callbacks.set(e,new Set([t])):s.add(t)}remove_on_message(e,t){var s;null===(s=this._message_callbacks.get(e))||void 0===s||s.delete(t)}_trigger_on_message(e,t){const s=this._message_callbacks.get(e);if(null!=s)for(const e of s)e(t)}on_change(e,t=!1){this._callbacks.has(e)||this._callbacks.set(e,t)}remove_on_change(e){this._callbacks.delete(e)}_trigger_on_change(e){for(const[t,s]of this._callbacks)if(!s&&e instanceof j.DocumentEventBatch)for(const s of e.events)t(s);else t(e)}_notify_change(e,t,s,o,n){this._trigger_on_change(new j.ModelChangedEvent(this,e,t,s,o,null==n?void 0:n.setter_id,null==n?void 0:n.hint))}static _instantiate_object(e,t,s,o){const n=Object.assign(Object.assign({},s),{id:e,__deferred__:!0});return new(o.get(t))(n)}static _instantiate_references_json(e,t,s){var o;const n=new Map;for(const r of e){const e=r.id,i=r.type,l=null!==(o=r.attributes)&&void 0!==o?o:{};let _=t.get(e);null==_&&(_=E._instantiate_object(e,i,l,s),null!=r.subtype&&_.set_subtype(r.subtype)),n.set(_.id,_)}return n}static _resolve_refs(e,t,s,o){function n(e){var r;if(f.is_ref(e)){const o=null!==(r=t.get(e.id))&&void 0!==r?r:s.get(e.id);if(null!=o)return o;throw new Error(`reference ${JSON.stringify(e)} isn't known (not in Document?)`)}return u.is_NDArray_ref(e)?u.decode_NDArray(e,o):p.isArray(e)?function(e){const t=[];for(const s of e)t.push(n(s));return t}(e):p.isPlainObject(e)?function(e){const t={};for(const[s,o]of g.entries(e))t[s]=n(o);return t}(e):e}return n(e)}static _initialize_references_json(e,t,s,o){const n=new Map;for(const{id:r,attributes:i}of e){const e=!t.has(r),l=e?s.get(r):t.get(r),_=E._resolve_refs(i,t,s,o);l.setv(_,{silent:!0}),n.set(r,{instance:l,is_new:e})}const r=[],i=new Set;function l(e){if(e instanceof c.HasProps){if(n.has(e.id)&&!i.has(e.id)){i.add(e.id);const{instance:t,is_new:s}=n.get(e.id),{attributes:o}=t;for(const e of g.values(o))l(e);s&&(t.finalize(),r.push(t))}}else if(p.isArray(e))for(const t of e)l(t);else if(p.isPlainObject(e))for(const t of g.values(e))l(t)}for(const e of n.values())l(e.instance);for(const e of r)e.connect_signals()}static _event_for_attribute_change(e,t,s,o,n){if(o.get_model_by_id(e.id).property(t).syncable){const r={kind:\"ModelChanged\",model:{id:e.id},attr:t,new:s};return c.HasProps._json_record_references(o,s,n,{recursive:!0}),r}return null}static _events_to_sync_objects(e,t,s,o){const n=Object.keys(e.attributes),r=Object.keys(t.attributes),i=m.difference(n,r),l=m.difference(r,n),a=m.intersection(n,r),c=[];for(const e of i)_.logger.warn(`Server sent key ${e} but we don't seem to have it in our JSON`);for(const n of l){const r=t.attributes[n];c.push(E._event_for_attribute_change(e,n,r,s,o))}for(const n of a){const r=e.attributes[n],i=t.attributes[n];null==r&&null==i||(null==r||null==i?c.push(E._event_for_attribute_change(e,n,i,s,o)):w.is_equal(r,i)||c.push(E._event_for_attribute_change(e,n,i,s,o)))}return c.filter((e=>null!=e))}static _compute_patch_since_json(e,t){const s=t.to_json(!1);function o(e){const t=new Map;for(const s of e.roots.references)t.set(s.id,s);return t}const n=o(e),r=new Map,i=[];for(const t of e.roots.root_ids)r.set(t,n.get(t)),i.push(t);const l=o(s),_=new Map,a=[];for(const e of s.roots.root_ids)_.set(e,l.get(e)),a.push(e);if(i.sort(),a.sort(),m.difference(i,a).length>0||m.difference(a,i).length>0)throw new Error(\"Not implemented: computing add/remove of document roots\");const c=new Set;let h=[];for(const e of t._all_models.keys())if(n.has(e)){const s=E._events_to_sync_objects(n.get(e),l.get(e),t,c);h=h.concat(s)}const f=new d.Serializer({include_defaults:!1});return f.to_serializable([...c]),{references:[...f.definitions],events:h}}to_json_string(e=!0){return JSON.stringify(this.to_json(e))}to_json(e=!0){const t=new d.Serializer({include_defaults:e}),s=t.to_serializable(this._roots);return{version:l.version,title:this._title,roots:{root_ids:s.map((e=>e.id)),references:[...t.definitions]}}}static from_json_string(e){const t=JSON.parse(e);return E.from_json(t)}static from_json(e){_.logger.debug(\"Creating Document from JSON\");const t=e.version,s=-1!==t.indexOf(\"+\")||-1!==t.indexOf(\"-\"),o=`Library versions: JS (${l.version}) / Python (${t})`;s||l.version.replace(/-(dev|rc)\\./,\"$1\")==t?_.logger.debug(o):(_.logger.warn(\"JS/Python version mismatch\"),_.logger.warn(o));const n=new i.ModelResolver;null!=e.defs&&M.resolve_defs(e.defs,n);const r=e.roots,a=r.root_ids,c=r.references,d=E._instantiate_references_json(c,new Map,n);E._initialize_references_json(c,new Map,d,new Map);const h=new E({resolver:n});for(const e of a){const t=d.get(e);null!=t&&h.add_root(t)}return h.set_title(e.title),h}replace_with_json(e){E.from_json(e).destructively_move(this)}create_json_patch_string(e){return JSON.stringify(this.create_json_patch(e))}create_json_patch(e){for(const t of e)if(t.document!=this)throw new Error(\"Cannot create a patch using events from a different document\");const t=new d.Serializer,s=t.to_serializable(e);for(const e of this._all_models.values())t.remove_def(e);return{events:s,references:[...t.definitions]}}apply_json_patch(e,t=new Map,s){const o=e.references,n=e.events,r=E._instantiate_references_json(o,this._all_models,this._resolver);t instanceof Map||(t=new Map(t));for(const e of n)switch(e.kind){case\"RootAdded\":case\"RootRemoved\":case\"ModelChanged\":{const t=e.model.id,s=this._all_models.get(t);if(null!=s)r.set(t,s);else if(!r.has(t))throw _.logger.warn(`Got an event for unknown model ${e.model}\"`),new Error(\"event model wasn't known\");break}}const i=new Map(this._all_models),l=new Map;for(const[e,t]of r)i.has(e)||l.set(e,t);E._initialize_references_json(o,i,l,t);for(const e of n)switch(e.kind){case\"MessageSent\":{const{msg_type:s,msg_data:o}=e;let n;if(void 0===o){if(1!=t.size)throw new Error(\"expected exactly one buffer\");{const[[,e]]=t;n=e}}else n=E._resolve_refs(o,i,l,t);this._trigger_on_message(s,n);break}case\"ModelChanged\":{const o=e.model.id,n=this._all_models.get(o);if(null==n)throw new Error(`Cannot apply patch to ${o} which is not in the document`);const r=e.attr,_=E._resolve_refs(e.new,i,l,t);n.setv({[r]:_},{setter_id:s});break}case\"ColumnDataChanged\":{const o=e.column_source.id,n=this._all_models.get(o);if(null==n)throw new Error(`Cannot stream to ${o} which is not in the document`);const r=E._resolve_refs(e.new,new Map,new Map,t);if(null!=e.cols)for(const e in n.data)e in r||(r[e]=n.data[e]);n.setv({data:r},{setter_id:s,check_eq:!1});break}case\"ColumnsStreamed\":{const t=e.column_source.id,o=this._all_models.get(t);if(null==o)throw new Error(`Cannot stream to ${t} which is not in the document`);if(!(o instanceof y.ColumnDataSource))throw new Error(\"Cannot stream to non-ColumnDataSource\");const n=e.data,r=e.rollover;o.stream(n,r,s);break}case\"ColumnsPatched\":{const t=e.column_source.id,o=this._all_models.get(t);if(null==o)throw new Error(`Cannot patch ${t} which is not in the document`);if(!(o instanceof y.ColumnDataSource))throw new Error(\"Cannot patch non-ColumnDataSource\");const n=e.patches;o.patch(n,s);break}case\"RootAdded\":{const t=e.model.id,o=r.get(t);this.add_root(o,s);break}case\"RootRemoved\":{const t=e.model.id,o=r.get(t);this.remove_root(o,s);break}case\"TitleChanged\":this.set_title(e.title,s);break;default:throw new Error(\"Unknown patch event \"+JSON.stringify(e))}}}s.Document=E,E.__name__=\"Document\"},\n", " function _(e,o,s,r,t){r();const l=e(1),d=e(8),i=e(13),n=e(14);s.overrides={};const a=new Map;s.Models=e=>{const o=s.Models.get(e);if(null!=o)return o;throw new Error(`Model '${e}' does not exist. This could be due to a widget or a custom model not being registered before first usage.`)},s.Models.get=e=>{var o;return null!==(o=s.overrides[e])&&void 0!==o?o:a.get(e)},s.Models.register=(e,o)=>{s.overrides[e]=o},s.Models.unregister=e=>{delete s.overrides[e]},s.Models.register_models=(e,o=!1,s)=>{var r;if(null!=e)for(const t of d.isArray(e)?e:i.values(e))if(r=t,d.isObject(r)&&r.prototype instanceof n.HasProps){const e=t.__qualified__;o||!a.has(e)?a.set(e,t):null!=s?s(e):console.warn(`Model '${e}' was already registered`)}},s.register_models=s.Models.register_models,s.Models.registered_names=()=>[...a.keys()];class u{constructor(){this._known_models=new Map}get(e,o){var r;const t=null!==(r=s.Models.get(e))&&void 0!==r?r:this._known_models.get(e);if(null!=t)return t;if(void 0!==o)return o;throw new Error(`Model '${e}' does not exist. This could be due to a widget or a custom model not being registered before first usage.`)}register(e){const o=e.__qualified__;null==this.get(o,null)?this._known_models.set(o,e):console.warn(`Model '${o}' was already registered with this resolver`)}}s.ModelResolver=u,u.__name__=\"ModelResolver\";const _=l.__importStar(e(38));s.register_models(_)},\n", " function _(n,r,t,e,i){e();\n", " // (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n", " // Underscore may be freely distributed under the MIT license.\n", " const o=n(9),u=Object.prototype.toString;function c(n){return!0===n||!1===n||\"[object Boolean]\"===u.call(n)}function f(n){return\"[object Number]\"===u.call(n)}function a(n){return\"[object String]\"===u.call(n)}function l(n){const r=typeof n;return\"function\"===r||\"object\"===r&&!!n}function s(n){return l(n)&&void 0!==n[Symbol.iterator]}t.isBoolean=c,t.isNumber=f,t.isInteger=function(n){return f(n)&&Number.isInteger(n)},t.isString=a,t.isPrimitive=function(n){return null===n||c(n)||f(n)||a(n)},t.isFunction=function(n){return\"[object Function]\"===u.call(n)},t.isArray=function(n){return Array.isArray(n)},t.isArrayOf=function(n,r){return o.every(n,r)},t.isArrayableOf=function(n,r){for(let t=0,e=n.length;t<e;t++)if(!r(n[t]))return!1;return!0},t.isTypedArray=function(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)},t.isObject=l,t.isPlainObject=function(n){return l(n)&&(null==n.constructor||n.constructor===Object)},t.isIterable=s,t.isArrayable=function(n){return s(n)&&\"length\"in n}},\n", " function _(n,t,e,r,o){r();\n", " // (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n", " // Underscore may be freely distributed under the MIT license.\n", " const i=n(10),u=n(11),c=n(12);o(\"map\",c.map),o(\"reduce\",c.reduce),o(\"min\",c.min),o(\"min_by\",c.min_by),o(\"max\",c.max),o(\"max_by\",c.max_by),o(\"sum\",c.sum),o(\"cumsum\",c.cumsum),o(\"every\",c.every),o(\"some\",c.some),o(\"find\",c.find),o(\"find_last\",c.find_last),o(\"find_index\",c.find_index),o(\"find_last_index\",c.find_last_index),o(\"sorted_index\",c.sorted_index),o(\"is_empty\",c.is_empty);const f=Array.prototype.slice;function s(n){return f.call(n)}function a(n){return[].concat(...n)}function l(n,t){return-1!==n.indexOf(t)}function m(n,t,e=1){u.assert(e>0,\"'step' must be a positive number\"),null==t&&(t=n,n=0);const{max:r,ceil:o,abs:i}=Math,c=n<=t?e:-e,f=r(o(i(t-n)/e),0),s=new Array(f);for(let t=0;t<f;t++,n+=c)s[t]=n;return s}e.head=function(n){return n[0]},e.tail=function(n){return n[n.length-1]},e.last=function(n){return n[n.length-1]},e.copy=s,e.concat=a,e.includes=l,e.contains=l,e.nth=function(n,t){return n[t>=0?t:n.length+t]},e.zip=function(...n){if(0==n.length)return[];const t=c.min(n.map((n=>n.length))),e=n.length,r=new Array(t);for(let o=0;o<t;o++){r[o]=new Array(e);for(let t=0;t<e;t++)r[o][t]=n[t][o]}return r},e.unzip=function(n){const t=n.length,e=c.min(n.map((n=>n.length))),r=Array(e);for(let n=0;n<e;n++)r[n]=new Array(t);for(let o=0;o<t;o++)for(let t=0;t<e;t++)r[t][o]=n[o][t];return r},e.range=m,e.linspace=function(n,t,e=100){const r=(t-n)/(e-1),o=new Array(e);for(let t=0;t<e;t++)o[t]=n+r*t;return o},e.transpose=function(n){const t=n.length,e=n[0].length,r=[];for(let o=0;o<e;o++){r[o]=[];for(let e=0;e<t;e++)r[o][e]=n[e][o]}return r},e.argmin=function(n){return c.min_by(m(n.length),(t=>n[t]))},e.argmax=function(n){return c.max_by(m(n.length),(t=>n[t]))},e.sort_by=function(n,t){const e=n.map(((n,e)=>({value:n,index:e,key:t(n)})));return e.sort(((n,t)=>{const e=n.key,r=t.key;if(e!==r){if(e>r||void 0===e)return 1;if(e<r||void 0===r)return-1}return n.index-t.index})),e.map((n=>n.value))},e.uniq=function(n){const t=new Set;for(const e of n)t.add(e);return[...t]},e.uniq_by=function(n,t){const e=[],r=[];for(const o of n){const n=t(o);l(r,n)||(r.push(n),e.push(o))}return e},e.union=function(...n){const t=new Set;for(const e of n)for(const n of e)t.add(n);return[...t]},e.intersection=function(n,...t){const e=[];n:for(const r of n)if(!l(e,r)){for(const n of t)if(!l(n,r))continue n;e.push(r)}return e},e.difference=function(n,...t){const e=a(t);return n.filter((n=>!l(e,n)))},e.remove_at=function(n,t){const e=s(n);return e.splice(t,1),e},e.remove_by=function(n,t){for(let e=0;e<n.length;)t(n[e])?n.splice(e,1):e++},e.shuffle=function(n){const t=n.length,e=new Array(t);for(let r=0;r<t;r++){const t=i.randomIn(0,r);t!==r&&(e[r]=e[t]),e[t]=n[r]}return e},e.pairwise=function(n,t){const e=n.length,r=new Array(e-1);for(let o=0;o<e-1;o++)r[o]=t(n[o],n[o+1]);return r},e.reversed=function(n){const t=n.length,e=new Array(t);for(let r=0;r<t;r++)e[t-r-1]=n[r];return e},e.repeat=function(n,t){const e=new Array(t);for(let r=0;r<t;r++)e[r]=n;return e}},\n", " function _(n,r,t,e,o){e();const{PI:u}=Math;function a(n){if(0==n)return 0;for(;n<=0;)n+=2*u;for(;n>2*u;)n-=2*u;return n}function c(n,r){return a(n-r)}function f(){return Math.random()}function i(n){switch(n){case\"deg\":return u/180;case\"rad\":return 1;case\"grad\":return u/200;case\"turn\":return 2*u}}t.angle_norm=a,t.angle_dist=c,t.angle_between=function(n,r,t,e=!1){const o=c(r,t);if(0==o)return!1;if(o==2*u)return!0;const f=a(n),i=c(r,f)<=o&&c(f,t)<=o;return e?!i:i},t.random=f,t.randomIn=function(n,r){return null==r&&(r=n,n=0),n+Math.floor(Math.random()*(r-n+1))},t.atan2=function(n,r){return Math.atan2(r[1]-n[1],r[0]-n[0])},t.radians=function(n){return n*(u/180)},t.degrees=function(n){return n/(u/180)},t.resolve_angle=function(n,r){return-i(r)*n},t.to_radians_coeff=i,t.rnorm=function(n,r){let t,e;for(;t=f(),e=f(),e=(2*e-1)*Math.sqrt(1/Math.E*2),!(-4*t*t*Math.log(t)>=e*e););let o=e/t;return o=n+r*o,o},t.clamp=function(n,r,t){return n<r?r:n>t?t:n},t.log=function(n,r=Math.E){return Math.log(n)/Math.log(r)}},\n", " function _(r,n,e,o,s){o();class t extends Error{}e.AssertionError=t,t.__name__=\"AssertionError\",e.assert=function(r,n){if(!(!0===r||!1!==r&&r()))throw new t(null!=n?n:\"Assertion failed\")},e.unreachable=function(){throw new Error(\"unreachable code\")}},\n", " function _(n,t,e,r,o){r();const i=n(10);function l(n,t,e,...r){const o=n.length;t<0&&(t+=o),t<0?t=0:t>o&&(t=o),null==e||e>o-t?e=o-t:e<0&&(e=0);const i=o-e+r.length,l=new n.constructor(i);let u=0;for(;u<t;u++)l[u]=n[u];for(const n of r)l[u++]=n;for(let r=t+e;r<o;r++)l[u++]=n[r];return l}function u(n,t){return l(n,t,n.length-t)}function c(n,t){const e=n.length,r=new n.constructor(e);for(let o=0;o<e;o++)r[o]=t(n[o],o,n);return r}function f(n,t,e){const r=n.length;if(void 0===e&&0==r)throw new Error(\"can't reduce an empty array without an initial value\");let o,i;for(void 0===e?(o=n[0],i=1):(o=e,i=0);i<r;i++)o=t(o,n[i],i,n);return o}function s(n){return function(t,e){const r=t.length;let o=n>0?0:r-1;for(;o>=0&&o<r;o+=n)if(e(t[o]))return o;return-1}}function h(n,t){let e=0,r=n.length;for(;e<r;){const o=Math.floor((e+r)/2);n[o]<t?e=o+1:r=o}return e}function a(n,t,e,r,o){const i=(o-e)/(r-t);let l=i*(n-t)+e;return isFinite(l)||(l=i*(n-r)+o,isFinite(l)||e!=o||(l=e)),l}function g(n,t){if(n<t[0])return-1;if(n>t[t.length-1])return t.length;let e=0,r=t.length-1;for(;r-e!=1;){const o=e+Math.floor((r-e)/2);n>=t[o]?e=o:r=o}return e}e.is_empty=function(n){return 0==n.length},e.copy=function(n){return Array.isArray(n)?n.slice():new n.constructor(n)},e.splice=l,e.head=u,e.insert=function(n,t,e){return l(n,e,0,t)},e.append=function(n,t){return l(n,n.length,0,t)},e.prepend=function(n,t){return l(n,0,0,t)},e.indexOf=function(n,t){for(let e=0,r=n.length;e<r;e++)if(n[e]===t)return e;return-1},e.subselect=function(n,t){const e=t.length,r=new n.constructor(e);for(let o=0;o<e;o++)r[o]=n[t[o]];return r},e.mul=function(n,t,e){const r=n.length,o=null!=e?e:new n.constructor(r);for(let e=0;e<r;e++)o[e]=n[e]*t;return o},e.map=c,e.inplace_map=function(n,t,e){const r=n.length,o=null!=e?e:n;for(let e=0;e<r;e++)o[e]=t(n[e],e)},e.filter=function(n,t){const e=n.length,r=new n.constructor(e);let o=0;for(let i=0;i<e;i++){const e=n[i];t(e,i,n)&&(r[o++]=e)}return u(r,o)},e.reduce=f,e.min=function(n){let t,e=1/0;for(let r=0,o=n.length;r<o;r++)t=n[r],!isNaN(t)&&t<e&&(e=t);return e},e.max=function(n){let t,e=-1/0;for(let r=0,o=n.length;r<o;r++)t=n[r],!isNaN(t)&&t>e&&(e=t);return e},e.minmax=function(n){let t,e=1/0,r=-1/0;for(let o=0,i=n.length;o<i;o++)t=n[o],isNaN(t)||(t<e&&(e=t),t>r&&(r=t));return[e,r]},e.min_by=function(n,t){if(0==n.length)throw new Error(\"min_by() called with an empty array\");let e=n[0],r=t(e);for(let o=1,i=n.length;o<i;o++){const i=n[o],l=t(i);l<r&&(e=i,r=l)}return e},e.max_by=function(n,t){if(0==n.length)throw new Error(\"max_by() called with an empty array\");let e=n[0],r=t(e);for(let o=1,i=n.length;o<i;o++){const i=n[o],l=t(i);l>r&&(e=i,r=l)}return e},e.sum=function(n){let t=0;for(let e=0,r=n.length;e<r;e++)t+=n[e];return t},e.cumsum=function(n){const t=new n.constructor(n.length);return f(n,((n,e,r)=>t[r]=n+e),0),t},e.every=function(n,t){for(let e=0,r=n.length;e<r;e++)if(!t(n[e]))return!1;return!0},e.some=function(n,t){for(let e=0,r=n.length;e<r;e++)if(t(n[e]))return!0;return!1},e.index_of=function(n,t){for(let e=0,r=n.length;e<r;e++)if(n[e]===t)return e;return-1},e.find_index=s(1),e.find_last_index=s(-1),e.find=function(n,t){const r=e.find_index(n,t);return-1==r?void 0:n[r]},e.find_last=function(n,t){const r=e.find_last_index(n,t);return-1==r?void 0:n[r]},e.sorted_index=h,e.bin_counts=function(n,t){const e=t.length-1,r=Array(e).fill(0);for(let o=0;o<n.length;o++){const l=h(t,n[o]);r[i.clamp(l-1,0,e-1)]+=1}return r},e.interpolate=function(n,t,e){const r=n.length,o=new Array(r);for(let i=0;i<r;i++){const r=n[i];if(isNaN(r)){o[i]=r;continue}const l=g(r,t);if(-1==l)o[i]=e[0];else if(l==t.length)o[i]=e[e.length-1];else if(l==t.length-1||t[l]==r)o[i]=e[l];else{const n=t[l],u=e[l],c=t[l+1],f=e[l+1];o[i]=a(r,n,u,c,f)}}return o},e.left_edge_index=g,e.norm=function(n,t,e){const r=e-t;return c(n,(n=>(n-t)/r))}},\n", " function _(t,e,n,c,o){c();const s=t(9),{hasOwnProperty:r}=Object.prototype;function u(t){return Object.keys(t).length}n.keys=Object.keys,n.values=Object.values,n.entries=Object.entries,n.extend=Object.assign,n.clone=function(t){return Object.assign({},t)},n.merge=function(t,e){const n=Object.create(Object.prototype),c=s.concat([Object.keys(t),Object.keys(e)]);for(const o of c){const c=r.call(t,o)?t[o]:[],u=r.call(e,o)?e[o]:[];n[o]=s.union(c,u)}return n},n.size=u,n.isEmpty=function(t){return 0==u(t)},n.to_object=function(t){const e={};for(const[n,c]of t)e[n]=c;return e}},\n", " function _(t,e,s,n,r){n();const i=t(1),o=t(15),c=t(17),a=i.__importStar(t(18)),_=i.__importStar(t(21)),h=t(34),u=t(13),l=t(8),f=t(26),p=t(30),d=t(35),g=t(26),y=t(36),v=t(37),m=i.__importStar(t(21));class b extends(o.Signalable()){constructor(t={}){var e,s;super(),this._subtype=void 0,this.document=null,this.destroyed=new o.Signal0(this,\"destroyed\"),this.change=new o.Signal0(this,\"change\"),this.transformchange=new o.Signal0(this,\"transformchange\"),this.exprchange=new o.Signal0(this,\"exprchange\"),this.properties={},this._pending=!1,this._changing=!1;const n=t instanceof Map?t.get.bind(t):e=>t[e];this.id=null!==(e=n(\"id\"))&&void 0!==e?e:h.uniqueId();for(const[t,{type:e,default_value:s,options:r}]of u.entries(this._props)){let i;e instanceof a.PropertyAlias?Object.defineProperty(this.properties,t,{get:()=>this.properties[e.attr],configurable:!1,enumerable:!1}):(i=e instanceof _.Kind?new a.PrimitiveProperty(this,t,e,s,n(t),r):new e(this,t,_.Any,s,n(t),r),this.properties[t]=i)}null!==(s=n(\"__deferred__\"))&&void 0!==s&&s||(this.finalize(),this.connect_signals())}get is_syncable(){return!0}set type(t){console.warn(\"prototype.type = 'ModelName' is deprecated, use static __name__ instead\"),this.constructor.__name__=t}get type(){return this.constructor.__qualified__}static get __qualified__(){const{__module__:t,__name__:e}=this;return null!=t?`${t}.${e}`:e}static get[Symbol.toStringTag](){return this.__name__}static init_HasProps(){this.prototype._props={},this.prototype._mixins=[]}static _fix_default(t,e){if(void 0===t||l.isFunction(t))return t;if(l.isPrimitive(t))return()=>t;{const e=new v.Cloner;return()=>e.clone(t)}}static define(t){for(const[e,s]of u.entries(l.isFunction(t)?t(m):t)){if(null!=this.prototype._props[e])throw new Error(`attempted to redefine property '${this.prototype.type}.${e}'`);if(null!=this.prototype[e])throw new Error(`attempted to redefine attribute '${this.prototype.type}.${e}'`);Object.defineProperty(this.prototype,e,{get(){return this.properties[e].get_value()},set(t){return this.setv({[e]:t}),this},configurable:!1,enumerable:!0});const[t,n,r={}]=s,i={type:t,default_value:this._fix_default(n,e),options:r},o=Object.assign({},this.prototype._props);o[e]=i,this.prototype._props=o}}static internal(t){const e={};for(const[s,n]of u.entries(l.isFunction(t)?t(m):t)){const[t,r,i={}]=n;e[s]=[t,r,Object.assign(Object.assign({},i),{internal:!0})]}this.define(e)}static mixins(t){function e(t,e){const s={};for(const[n,r]of u.entries(e))s[t+n]=r;return s}const s={},n=[];for(const r of l.isArray(t)?t:[t])if(l.isArray(r)){const[t,i]=r;u.extend(s,e(t,i)),n.push([t,i])}else{const t=r;u.extend(s,t),n.push([\"\",t])}this.define(s),this.prototype._mixins=[...this.prototype._mixins,...n]}static override(t){for(const[e,s]of u.entries(t)){const t=this._fix_default(s,e),n=this.prototype._props[e];if(null==n)throw new Error(`attempted to override nonexistent '${this.prototype.type}.${e}'`);const r=Object.assign({},this.prototype._props);r[e]=Object.assign(Object.assign({},n),{default_value:t}),this.prototype._props=r}}toString(){return`${this.type}(${this.id})`}property(t){const e=this.properties[t];if(null!=e)return e;throw new Error(`unknown property ${this.type}.${t}`)}get attributes(){const t={};for(const e of this)t[e.attr]=e.get_value();return t}[v.clone](t){const e=new Map;for(const s of this)s.dirty&&e.set(s.attr,t.clone(s.get_value()));return new this.constructor(e)}[g.equals](t,e){for(const s of this){const n=t.property(s.attr);if(e.eq(s.get_value(),n.get_value()))return!1}return!0}[y.pretty](t){const e=t.token,s=[];for(const n of this)if(n.dirty){const r=n.get_value();s.push(`${n.attr}${e(\":\")} ${t.to_string(r)}`)}return`${this.constructor.__qualified__}${e(\"(\")}${e(\"{\")}${s.join(`${e(\",\")} `)}${e(\"}\")}${e(\")\")}`}[p.serialize](t){const e=this.ref();t.add_ref(this,e);const s=this.struct();for(const e of this)e.syncable&&(t.include_defaults||e.dirty)&&(s.attributes[e.attr]=t.to_serializable(e.get_value()));return t.add_def(this,s),e}finalize(){for(const t of this){if(!(t instanceof a.VectorSpec||t instanceof a.ScalarSpec))continue;const e=t.get_value();if(null!=e){const{transform:t,expr:s}=e;null!=t&&this.connect(t.change,(()=>this.transformchange.emit())),null!=s&&this.connect(s.change,(()=>this.exprchange.emit()))}}this.initialize()}initialize(){}connect_signals(){}disconnect_signals(){o.Signal.disconnectReceiver(this)}destroy(){this.disconnect_signals(),this.destroyed.emit()}clone(){return(new v.Cloner).clone(this)}_setv(t,e){const s=e.check_eq,n=[],r=this._changing;this._changing=!0;for(const[e,r]of t)!1!==s&&f.is_equal(e.get_value(),r)||(e.set_value(r),n.push(e));n.length>0&&(this._pending=!0);for(const t of n)t.change.emit();if(!r){if(!e.no_change)for(;this._pending;)this._pending=!1,this.change.emit();this._pending=!1,this._changing=!1}}setv(t,e={}){const s=u.entries(t);if(0==s.length)return;if(!0===e.silent){for(const[t,e]of s)this.properties[t].set_value(e);return}const n=new Map,r=new Map;for(const[t,e]of s){const s=this.properties[t];n.set(s,e),r.set(s,s.get_value())}this._setv(n,e);const{document:i}=this;if(null!=i){const t=[];for(const[e,s]of r)t.push([e,s,e.get_value()]);for(const[,e,s]of t)if(this._needs_invalidate(e,s)){i._invalidate_all_models();break}this._push_changes(t,e)}}getv(t){return this.property(t).get_value()}ref(){return{id:this.id}}struct(){const t={type:this.type,id:this.id,attributes:{}};return null!=this._subtype&&(t.subtype=this._subtype),t}set_subtype(t){this._subtype=t}*[Symbol.iterator](){yield*u.values(this.properties)}*syncable_properties(){for(const t of this)t.syncable&&(yield t)}serializable_attributes(){const t={};for(const e of this.syncable_properties())t[e.attr]=e.get_value();return t}static _json_record_references(t,e,s,n){const{recursive:r}=n;if(c.is_ref(e)){const n=t.get_model_by_id(e.id);null==n||s.has(n)||b._value_record_references(n,s,{recursive:r})}else if(l.isArray(e))for(const n of e)b._json_record_references(t,n,s,{recursive:r});else if(l.isPlainObject(e))for(const n of u.values(e))b._json_record_references(t,n,s,{recursive:r})}static _value_record_references(t,e,s){const{recursive:n}=s;if(t instanceof b){if(!e.has(t)&&(e.add(t),n))for(const s of t.syncable_properties()){const t=s.get_value();b._value_record_references(t,e,{recursive:n})}}else if(l.isArray(t))for(const s of t)b._value_record_references(s,e,{recursive:n});else if(l.isPlainObject(t))for(const s of u.values(t))b._value_record_references(s,e,{recursive:n})}references(){const t=new Set;return b._value_record_references(this,t,{recursive:!0}),t}_doc_attached(){}_doc_detached(){}attach_document(t){if(null!=this.document&&this.document!=t)throw new Error(\"models must be owned by only a single document\");this.document=t,this._doc_attached()}detach_document(){this._doc_detached(),this.document=null}_needs_invalidate(t,e){const s=new Set;b._value_record_references(e,s,{recursive:!1});const n=new Set;b._value_record_references(t,n,{recursive:!1});for(const t of s)if(!n.has(t))return!0;for(const t of n)if(!s.has(t))return!0;return!1}_push_changes(t,e={}){if(!this.is_syncable)return;const{document:s}=this;if(null==s)return;const{setter_id:n}=e,r=[];for(const[e,i,o]of t)e.syncable&&r.push(new d.ModelChangedEvent(s,this,e.attr,i,o,n));if(0!=r.length){let t;1==r.length?[t]=r:t=new d.DocumentEventBatch(s,r,n),s._trigger_on_change(t)}}on_change(t,e){for(const s of l.isArray(t)?t:[t])this.connect(s.change,e)}}s.HasProps=b,b.init_HasProps()},\n", " function _(n,t,e,l,s){l();const i=n(16),o=n(9);class c{constructor(n,t){this.sender=n,this.name=t}connect(n,t=null){u.has(this.sender)||u.set(this.sender,[]);const e=u.get(this.sender);if(null!=g(e,this,n,t))return!1;const l=null!=t?t:n;a.has(l)||a.set(l,[]);const s=a.get(l),i={signal:this,slot:n,context:t};return e.push(i),s.push(i),!0}disconnect(n,t=null){const e=u.get(this.sender);if(null==e||0===e.length)return!1;const l=g(e,this,n,t);if(null==l)return!1;const s=null!=t?t:n,i=a.get(s);return l.signal=null,d(e),d(i),!0}emit(n){var t;const e=null!==(t=u.get(this.sender))&&void 0!==t?t:[];for(const{signal:t,slot:l,context:s}of e)t===this&&l.call(s,n,this.sender)}}e.Signal=c,c.__name__=\"Signal\";class r extends c{emit(){super.emit(void 0)}}e.Signal0=r,r.__name__=\"Signal0\",function(n){function t(n,t){const e=u.get(n);if(null==e||0===e.length)return;const l=a.get(t);if(null!=l&&0!==l.length){for(const t of l){if(null==t.signal)return;t.signal.sender===n&&(t.signal=null)}d(e),d(l)}}function e(n){var t;const e=u.get(n);if(null!=e&&0!==e.length){for(const n of e){if(null==n.signal)return;const e=null!==(t=n.context)&&void 0!==t?t:n.slot;n.signal=null,d(a.get(e))}d(e)}}function l(n,t,e){const l=a.get(n);if(null!=l&&0!==l.length){for(const n of l){if(null==n.signal)return;if(null!=t&&n.slot!=t)continue;const l=n.signal.sender;null!=e&&e.has(l)||(n.signal=null,d(u.get(l)))}d(l)}}function s(n){const t=u.get(n);if(null!=t&&0!==t.length){for(const n of t)n.signal=null;d(t)}const e=a.get(n);if(null!=e&&0!==e.length){for(const n of e)n.signal=null;d(e)}}n.disconnect_between=t,n.disconnect_sender=e,n.disconnect_receiver=l,n.disconnect_all=s,n.disconnectBetween=t,n.disconnectSender=e,n.disconnectReceiver=l,n.disconnectAll=s}(c||(e.Signal=c={})),e.Signalable=function(){return class{connect(n,t){return n.connect(t,this)}disconnect(n,t){return n.disconnect(t,this)}}};const u=new WeakMap,a=new WeakMap;function g(n,t,e,l){return o.find(n,(n=>n.signal===t&&n.slot===e&&n.context===l))}const f=new Set;function d(n){0===f.size&&(async()=>{await i.defer(),function(){for(const n of f)o.remove_by(n,(n=>null==n.signal));f.clear()}()})(),f.add(n)}},\n", " function _(e,n,t,s,o){s();const a=new MessageChannel,l=new Map;a.port1.onmessage=e=>{const n=e.data,t=l.get(n);if(null!=t)try{t()}finally{l.delete(n)}};let r=1;t.defer=function(){return new Promise((e=>{const n=r++;l.set(n,e),a.port2.postMessage(n)}))}},\n", " function _(n,t,i,e,c){e();const r=n(8),s=n(13);i.is_ref=function(n){if(r.isPlainObject(n)){const t=s.keys(n);return 1==t.length&&\"id\"==t[0]}return!1}},\n", " function _(e,t,n,a,r){a(),n.YCoordinateSeqSeqSeqSpec=n.XCoordinateSeqSeqSeqSpec=n.YCoordinateSeqSpec=n.XCoordinateSeqSpec=n.YCoordinateSpec=n.XCoordinateSpec=n.CoordinateSeqSeqSeqSpec=n.CoordinateSeqSpec=n.CoordinateSpec=n.BaseCoordinateSpec=n.NumberUnitsSpec=n.UnitsSpec=n.DataSpec=n.VectorSpec=n.TextBaselineScalar=n.TextAlignScalar=n.FontStyleScalar=n.FontSizeScalar=n.FontScalar=n.LineDashScalar=n.LineCapScalar=n.LineJoinScalar=n.ArrayScalar=n.NullStringScalar=n.StringScalar=n.NumberScalar=n.ColorScalar=n.AnyScalar=n.ScalarSpec=n.VerticalAlign=n.UpdateMode=n.TooltipAttachment=n.TickLabelOrientation=n.TextureRepetition=n.TextBaseline=n.TextAlign=n.TapBehavior=n.StepMode=n.StartEnd=n.SpatialUnits=n.Sort=n.SizingMode=n.Side=n.RoundingFunction=n.ResetPolicy=n.RenderMode=n.RenderLevel=n.RadiusDimension=n.PointPolicy=n.Place=void 0,n.TextBaselineSpec=n.TextAlignSpec=n.FontStyleSpec=n.FontSizeSpec=n.FontSpec=n.LineDashSpec=n.LineCapSpec=n.LineJoinSpec=n.MarkerSpec=n.ArraySpec=n.NullStringSpec=n.StringSpec=n.AnySpec=n.NDArraySpec=n.ColorSpec=n.NumberSpec=n.BooleanSpec=n.ScreenDistanceSpec=n.NullDistanceSpec=n.DistanceSpec=n.AngleSpec=void 0;const i=e(1),s=e(15),l=e(19),o=i.__importStar(e(20)),c=e(24),_=e(9),u=e(12),d=e(10),S=e(22),p=e(27),m=e(8),h=e(28),v=e(29),y=e(33);function x(e){try{return JSON.stringify(e)}catch(t){return e.toString()}}function g(e){return m.isPlainObject(e)&&(void 0===e.value?0:1)+(void 0===e.field?0:1)+(void 0===e.expr?0:1)==1}r(\"Uniform\",y.Uniform),r(\"UniformScalar\",y.UniformScalar),r(\"UniformVector\",y.UniformVector),n.isSpec=g;class f{constructor(e,t,n,a,r,i={}){var l;let o;if(this.obj=e,this.attr=t,this.kind=n,this.default_value=a,this._dirty=!1,this.change=new s.Signal0(this.obj,\"change\"),this.internal=null!==(l=i.internal)&&void 0!==l&&l,this.on_update=i.on_update,void 0!==r)o=r,this._dirty=!0;else{const t=this._default_override();if(void 0!==t)o=t;else{if(void 0===a)return void(this.spec={value:null});o=a(e)}}this._update(o)}get is_value(){return void 0!==this.spec.value}get syncable(){return!this.internal}get_value(){return this.spec.value}set_value(e){this._update(e),this._dirty=!0}_default_override(){}get dirty(){return this._dirty}_update(e){var t;this.validate(e),this.spec={value:e},null===(t=this.on_update)||void 0===t||t.call(this,e,this.obj)}toString(){return`Prop(${this.obj}.${this.attr}, spec: ${x(this.spec)})`}normalize(e){return e}validate(e){if(!this.valid(e))throw new Error(`${this.obj}.${this.attr} given invalid value: ${x(e)}`)}valid(e){return this.kind.valid(e)}_value(e=!0){if(!this.is_value)throw new Error(\"attempted to retrieve property value for property without value specification\");let t=this.normalize([this.spec.value])[0];return null!=this.spec.transform&&e&&(t=this.spec.transform.compute(t)),t}}n.Property=f,f.__name__=\"Property\";class A{constructor(e){this.attr=e}}n.PropertyAlias=A,A.__name__=\"PropertyAlias\",n.Alias=function(e){return new A(e)};class C extends f{}n.PrimitiveProperty=C,C.__name__=\"PrimitiveProperty\";class L extends f{}n.Any=L,L.__name__=\"Any\";class T extends f{valid(e){return m.isArray(e)||m.isTypedArray(e)}}n.Array=T,T.__name__=\"Array\";class P extends f{valid(e){return m.isBoolean(e)}}n.Boolean=P,P.__name__=\"Boolean\";class b extends f{valid(e){return S.is_Color(e)}}n.Color=b,b.__name__=\"Color\";class w extends f{}n.Instance=w,w.__name__=\"Instance\";class q extends f{valid(e){return m.isNumber(e)}}n.Number=q,q.__name__=\"Number\";class N extends q{valid(e){return m.isNumber(e)&&(0|e)==e}}n.Int=N,N.__name__=\"Int\";class B extends q{}n.Angle=B,B.__name__=\"Angle\";class D extends q{valid(e){return m.isNumber(e)&&0<=e&&e<=1}}n.Percent=D,D.__name__=\"Percent\";class F extends f{valid(e){return m.isString(e)}}n.String=F,F.__name__=\"String\";class z extends f{valid(e){return null===e||m.isString(e)}}n.NullString=z,z.__name__=\"NullString\";class U extends F{}n.FontSize=U,U.__name__=\"FontSize\";class M extends F{_default_override(){return h.settings.dev?\"Bokeh\":void 0}}n.Font=M,M.__name__=\"Font\";class R extends f{valid(e){return m.isString(e)&&_.includes(this.enum_values,e)}}function k(e){return class extends R{get enum_values(){return[...e]}}}n.EnumProperty=R,R.__name__=\"EnumProperty\",n.Enum=k;class O extends R{get enum_values(){return[...o.Direction]}normalize(e){const t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)switch(e[n]){case\"clock\":t[n]=0;break;case\"anticlock\":t[n]=1}return t}}n.Direction=O,O.__name__=\"Direction\",n.Anchor=k(o.Anchor),n.AngleUnits=k(o.AngleUnits),n.BoxOrigin=k(o.BoxOrigin),n.ButtonType=k(o.ButtonType),n.CalendarPosition=k(o.CalendarPosition),n.Dimension=k(o.Dimension),n.Dimensions=k(o.Dimensions),n.Distribution=k(o.Distribution),n.FontStyle=k(o.FontStyle),n.HatchPatternType=k(o.HatchPatternType),n.HTTPMethod=k(o.HTTPMethod),n.HexTileOrientation=k(o.HexTileOrientation),n.HoverMode=k(o.HoverMode),n.LatLon=k(o.LatLon),n.LegendClickPolicy=k(o.LegendClickPolicy),n.LegendLocation=k(o.LegendLocation),n.LineCap=k(o.LineCap),n.LineJoin=k(o.LineJoin),n.LinePolicy=k(o.LinePolicy),n.Location=k(o.Location),n.Logo=k(o.Logo),n.MarkerType=k(o.MarkerType),n.MutedPolicy=k(o.MutedPolicy),n.Orientation=k(o.Orientation),n.OutputBackend=k(o.OutputBackend),n.PaddingUnits=k(o.PaddingUnits),n.Place=k(o.Place),n.PointPolicy=k(o.PointPolicy),n.RadiusDimension=k(o.RadiusDimension),n.RenderLevel=k(o.RenderLevel),n.RenderMode=k(o.RenderMode),n.ResetPolicy=k(o.ResetPolicy),n.RoundingFunction=k(o.RoundingFunction),n.Side=k(o.Side),n.SizingMode=k(o.SizingMode),n.Sort=k(o.Sort),n.SpatialUnits=k(o.SpatialUnits),n.StartEnd=k(o.StartEnd),n.StepMode=k(o.StepMode),n.TapBehavior=k(o.TapBehavior),n.TextAlign=k(o.TextAlign),n.TextBaseline=k(o.TextBaseline),n.TextureRepetition=k(o.TextureRepetition),n.TickLabelOrientation=k(o.TickLabelOrientation),n.TooltipAttachment=k(o.TooltipAttachment),n.UpdateMode=k(o.UpdateMode),n.VerticalAlign=k(o.VerticalAlign);class E extends f{get_value(){const{value:e,expr:t,transform:n}=this.spec;return null!=t||null!=n?this.spec:e}_update(e){g(e)?this.spec=e:this.spec={value:e},null!=this.spec.value&&this.validate(this.spec.value)}materialize(e){return e}scalar(e,t){return new y.UniformScalar(e,t)}uniform(e){var t;const{expr:n,value:a,transform:r}=this.spec,i=null!==(t=e.get_length())&&void 0!==t?t:1;if(null!=n){let t=n.compute(e);return null!=r&&(t=r.compute(t)),t=this.materialize(t),this.scalar(t,i)}{let e=a;return null!=r&&(e=r.compute(e)),e=this.materialize(e),this.scalar(e,i)}}}n.ScalarSpec=E,E.__name__=\"ScalarSpec\";class V extends E{}n.AnyScalar=V,V.__name__=\"AnyScalar\";class $ extends E{}n.ColorScalar=$,$.__name__=\"ColorScalar\";class J extends E{}n.NumberScalar=J,J.__name__=\"NumberScalar\";class X extends E{}n.StringScalar=X,X.__name__=\"StringScalar\";class Y extends E{}n.NullStringScalar=Y,Y.__name__=\"NullStringScalar\";class H extends E{}n.ArrayScalar=H,H.__name__=\"ArrayScalar\";class j extends E{}n.LineJoinScalar=j,j.__name__=\"LineJoinScalar\";class G extends E{}n.LineCapScalar=G,G.__name__=\"LineCapScalar\";class I extends E{}n.LineDashScalar=I,I.__name__=\"LineDashScalar\";class K extends E{_default_override(){return h.settings.dev?\"Bokeh\":void 0}}n.FontScalar=K,K.__name__=\"FontScalar\";class Q extends E{}n.FontSizeScalar=Q,Q.__name__=\"FontSizeScalar\";class W extends E{}n.FontStyleScalar=W,W.__name__=\"FontStyleScalar\";class Z extends E{}n.TextAlignScalar=Z,Z.__name__=\"TextAlignScalar\";class ee extends E{}n.TextBaselineScalar=ee,ee.__name__=\"TextBaselineScalar\";class te extends f{get_value(){return null===this.spec.value?null:this.spec}_update(e){g(e)?this.spec=e:this.spec={value:e},null!=this.spec.value&&this.validate(this.spec.value)}materialize(e){return e}v_materialize(e){return e}scalar(e,t){return new y.UniformScalar(e,t)}vector(e){return new y.UniformVector(e)}uniform(e){var t;const{field:n,expr:a,value:r,transform:i}=this.spec,s=null!==(t=e.get_length())&&void 0!==t?t:1;if(null!=n){let t=e.get_column(n);return null!=t?(null!=i&&(t=i.v_compute(t)),t=this.v_materialize(t),this.vector(t)):(l.logger.warn(`attempted to retrieve property array for nonexistent field '${n}'`),this.scalar(null,s))}if(null!=a){let t=a.v_compute(e);return null!=i&&(t=i.v_compute(t)),t=this.v_materialize(t),this.vector(t)}{let e=r;return null!=i&&(e=i.compute(e)),e=this.materialize(e),this.scalar(e,s)}}array(e){var t;let n;const a=null!==(t=e.get_length())&&void 0!==t?t:1;if(null!=this.spec.field){const t=e.get_column(this.spec.field);if(null!=t)n=this.normalize(t);else{l.logger.warn(`attempted to retrieve property array for nonexistent field '${this.spec.field}'`);const e=new Float64Array(a);e.fill(NaN),n=e}}else if(null!=this.spec.expr)n=this.normalize(this.spec.expr.v_compute(e));else{const e=this._value(!1);if(m.isNumber(e)){const t=new Float64Array(a);t.fill(e),n=t}else n=_.repeat(e,a)}return null!=this.spec.transform&&(n=this.spec.transform.v_compute(n)),n}}n.VectorSpec=te,te.__name__=\"VectorSpec\";class ne extends te{}n.DataSpec=ne,ne.__name__=\"DataSpec\";class ae extends te{_update(e){super._update(e);const{units:t}=this.spec;if(null!=t&&!_.includes(this.valid_units,t))throw new Error(`units must be one of ${this.valid_units.join(\", \")}; got: ${t}`)}get units(){var e;return null!==(e=this.spec.units)&&void 0!==e?e:this.default_units}set units(e){e!=this.default_units?this.spec.units=e:delete this.spec.units}}n.UnitsSpec=ae,ae.__name__=\"UnitsSpec\";class re extends ae{array(e){return new Float64Array(super.array(e))}}n.NumberUnitsSpec=re,re.__name__=\"NumberUnitsSpec\";class ie extends ne{}n.BaseCoordinateSpec=ie,ie.__name__=\"BaseCoordinateSpec\";class se extends ie{}n.CoordinateSpec=se,se.__name__=\"CoordinateSpec\";class le extends ie{}n.CoordinateSeqSpec=le,le.__name__=\"CoordinateSeqSpec\";class oe extends ie{}n.CoordinateSeqSeqSeqSpec=oe,oe.__name__=\"CoordinateSeqSeqSeqSpec\";class ce extends se{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSpec=ce,ce.__name__=\"XCoordinateSpec\";class _e extends se{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSpec=_e,_e.__name__=\"YCoordinateSpec\";class ue extends le{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSeqSpec=ue,ue.__name__=\"XCoordinateSeqSpec\";class de extends le{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSeqSpec=de,de.__name__=\"YCoordinateSeqSpec\";class Se extends oe{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSeqSeqSeqSpec=Se,Se.__name__=\"XCoordinateSeqSeqSeqSpec\";class pe extends oe{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSeqSeqSeqSpec=pe,pe.__name__=\"YCoordinateSeqSeqSeqSpec\";class me extends re{get default_units(){return\"rad\"}get valid_units(){return[...o.AngleUnits]}materialize(e){return e*-d.to_radians_coeff(this.units)}v_materialize(e){const t=-d.to_radians_coeff(this.units),n=new Float32Array(e.length);return u.mul(e,t,n),n}array(e){throw new Error(\"not supported\")}}n.AngleSpec=me,me.__name__=\"AngleSpec\";class he extends re{get default_units(){return\"data\"}get valid_units(){return[...o.SpatialUnits]}}n.DistanceSpec=he,he.__name__=\"DistanceSpec\";class ve extends he{materialize(e){return null!=e?e:NaN}}n.NullDistanceSpec=ve,ve.__name__=\"NullDistanceSpec\";class ye extends he{get default_units(){return\"screen\"}}n.ScreenDistanceSpec=ye,ye.__name__=\"ScreenDistanceSpec\";class xe extends ne{v_materialize(e){return new Uint8Array(e)}array(e){return new Uint8Array(super.array(e))}}n.BooleanSpec=xe,xe.__name__=\"BooleanSpec\";class ge extends ne{v_materialize(e){return m.isTypedArray(e)?e:new Float64Array(e)}array(e){return new Float64Array(super.array(e))}}n.NumberSpec=ge,ge.__name__=\"NumberSpec\";class fe extends ne{materialize(e){return S.encode_rgba(S.color2rgba(e))}v_materialize(e){if(!v.is_NDArray(e)){const t=e.length,n=new c.RGBAArray(4*t);let a=0;for(const t of e){const[e,r,i,s]=S.color2rgba(t);n[a++]=e,n[a++]=r,n[a++]=i,n[a++]=s}return new c.ColorArray(n.buffer)}if(\"uint32\"==e.dtype&&1==e.dimension)return p.to_big_endian(e);if(\"uint8\"==e.dtype&&1==e.dimension){const[t]=e.shape,n=new c.RGBAArray(4*t);let a=0;for(const t of e)n[a++]=t,n[a++]=t,n[a++]=t,n[a++]=255;return new c.ColorArray(n.buffer)}if(\"uint8\"==e.dtype&&2==e.dimension){const[t,n]=e.shape;if(4==n)return new c.ColorArray(e.buffer);if(3==n){const a=new c.RGBAArray(4*t);for(let r=0,i=0;r<n*t;)a[i++]=e[r++],a[i++]=e[r++],a[i++]=e[r++],a[i++]=255;return new c.ColorArray(a.buffer)}}else if((\"float32\"==e.dtype||\"float64\"==e.dtype)&&2==e.dimension){const[t,n]=e.shape;if(3==n||4==n){const a=new c.RGBAArray(4*t);for(let r=0,i=0;r<n*t;)a[i++]=255*e[r++],a[i++]=255*e[r++],a[i++]=255*e[r++],a[i++]=255*(3==n?1:e[r++]);return new c.ColorArray(a.buffer)}}throw new Error(\"invalid color array\")}vector(e){return new y.ColorUniformVector(e)}}n.ColorSpec=fe,fe.__name__=\"ColorSpec\";class Ae extends ne{}n.NDArraySpec=Ae,Ae.__name__=\"NDArraySpec\";class Ce extends ne{}n.AnySpec=Ce,Ce.__name__=\"AnySpec\";class Le extends ne{}n.StringSpec=Le,Le.__name__=\"StringSpec\";class Te extends ne{}n.NullStringSpec=Te,Te.__name__=\"NullStringSpec\";class Pe extends ne{}n.ArraySpec=Pe,Pe.__name__=\"ArraySpec\";class be extends ne{}n.MarkerSpec=be,be.__name__=\"MarkerSpec\";class we extends ne{}n.LineJoinSpec=we,we.__name__=\"LineJoinSpec\";class qe extends ne{}n.LineCapSpec=qe,qe.__name__=\"LineCapSpec\";class Ne extends ne{}n.LineDashSpec=Ne,Ne.__name__=\"LineDashSpec\";class Be extends ne{_default_override(){return h.settings.dev?\"Bokeh\":void 0}}n.FontSpec=Be,Be.__name__=\"FontSpec\";class De extends ne{}n.FontSizeSpec=De,De.__name__=\"FontSizeSpec\";class Fe extends ne{}n.FontStyleSpec=Fe,Fe.__name__=\"FontStyleSpec\";class ze extends ne{}n.TextAlignSpec=ze,ze.__name__=\"TextAlignSpec\";class Ue extends ne{}n.TextBaselineSpec=Ue,Ue.__name__=\"TextBaselineSpec\"},\n", " function _(e,l,o,n,t){n();const s=e(8),g=e(13),r={};class i{constructor(e,l){this.name=e,this.level=l}}o.LogLevel=i,i.__name__=\"LogLevel\";class v{constructor(e,l=v.INFO){this._name=e,this.set_level(l)}static get levels(){return Object.keys(v.log_levels)}static get(e,l=v.INFO){if(e.length>0){let o=r[e];return null==o&&(r[e]=o=new v(e,l)),o}throw new TypeError(\"Logger.get() expects a non-empty string name and an optional log-level\")}get level(){return this.get_level()}get_level(){return this._log_level}set_level(e){if(e instanceof i)this._log_level=e;else{if(!s.isString(e)||null==v.log_levels[e])throw new Error(\"Logger.set_level() expects a log-level object or a string name of a log-level\");this._log_level=v.log_levels[e]}const l=`[${this._name}]`;for(const[e,o]of g.entries(v.log_levels))o.level<this._log_level.level||this._log_level.level===v.OFF.level?this[e]=function(){}:this[e]=_(e,l)}trace(...e){}debug(...e){}info(...e){}warn(...e){}error(...e){}}function _(e,l){return null!=console[e]?console[e].bind(console,l):null!=console.log?console.log.bind(console,l):function(){}}function c(e){const l=o.logger.level;return s.isString(e)&&null==v.log_levels[e]?(console.log(`[bokeh] unrecognized logging level '${e}' passed to Bokeh.set_log_level(), ignoring`),console.log(`[bokeh] valid log levels are: ${v.levels.join(\", \")}`)):(console.log(`[bokeh] setting log level to: '${s.isString(e)?e:e.level}'`),o.logger.set_level(e)),l}o.Logger=v,v.__name__=\"Logger\",v.TRACE=new i(\"trace\",0),v.DEBUG=new i(\"debug\",1),v.INFO=new i(\"info\",2),v.WARN=new i(\"warn\",6),v.ERROR=new i(\"error\",7),v.FATAL=new i(\"fatal\",8),v.OFF=new i(\"off\",9),v.log_levels={trace:v.TRACE,debug:v.DEBUG,info:v.INFO,warn:v.WARN,error:v.ERROR,fatal:v.FATAL,off:v.OFF},o.logger=v.get(\"bokeh\"),o.set_log_level=c,o.with_log_level=function(e,l){const o=c(e);try{l()}finally{c(o)}}},\n", " function _(e,n,t,o,i){o(),t.VerticalAlign=void 0;const a=e(21);t.Align=a.Enum(\"start\",\"center\",\"end\"),t.Anchor=a.Enum(\"top_left\",\"top_center\",\"top_right\",\"center_left\",\"center_center\",\"center_right\",\"bottom_left\",\"bottom_center\",\"bottom_right\",\"top\",\"left\",\"center\",\"right\",\"bottom\"),t.AngleUnits=a.Enum(\"deg\",\"rad\",\"grad\",\"turn\"),t.BoxOrigin=a.Enum(\"corner\",\"center\"),t.ButtonType=a.Enum(\"default\",\"primary\",\"success\",\"warning\",\"danger\",\"light\"),t.CalendarPosition=a.Enum(\"auto\",\"above\",\"below\"),t.Dimension=a.Enum(\"width\",\"height\"),t.Dimensions=a.Enum(\"width\",\"height\",\"both\"),t.Direction=a.Enum(\"clock\",\"anticlock\"),t.Distribution=a.Enum(\"uniform\",\"normal\"),t.FontStyle=a.Enum(\"normal\",\"italic\",\"bold\",\"bold italic\"),t.HatchPatternType=a.Enum(\"blank\",\"dot\",\"ring\",\"horizontal_line\",\"vertical_line\",\"cross\",\"horizontal_dash\",\"vertical_dash\",\"spiral\",\"right_diagonal_line\",\"left_diagonal_line\",\"diagonal_cross\",\"right_diagonal_dash\",\"left_diagonal_dash\",\"horizontal_wave\",\"vertical_wave\",\"criss_cross\",\" \",\".\",\"o\",\"-\",\"|\",\"+\",'\"',\":\",\"@\",\"/\",\"\\\\\",\"x\",\",\",\"`\",\"v\",\">\",\"*\"),t.HTTPMethod=a.Enum(\"POST\",\"GET\"),t.HexTileOrientation=a.Enum(\"pointytop\",\"flattop\"),t.HoverMode=a.Enum(\"mouse\",\"hline\",\"vline\"),t.LatLon=a.Enum(\"lat\",\"lon\"),t.LegendClickPolicy=a.Enum(\"none\",\"hide\",\"mute\"),t.LegendLocation=t.Anchor,t.LineCap=a.Enum(\"butt\",\"round\",\"square\"),t.LineJoin=a.Enum(\"miter\",\"round\",\"bevel\"),t.LineDash=a.Enum(\"solid\",\"dashed\",\"dotted\",\"dotdash\",\"dashdot\"),t.LinePolicy=a.Enum(\"prev\",\"next\",\"nearest\",\"interp\",\"none\"),t.Location=a.Enum(\"above\",\"below\",\"left\",\"right\"),t.Logo=a.Enum(\"normal\",\"grey\"),t.MarkerType=a.Enum(\"asterisk\",\"circle\",\"circle_cross\",\"circle_dot\",\"circle_x\",\"circle_y\",\"cross\",\"dash\",\"diamond\",\"diamond_cross\",\"diamond_dot\",\"dot\",\"hex\",\"hex_dot\",\"inverted_triangle\",\"plus\",\"square\",\"square_cross\",\"square_dot\",\"square_pin\",\"square_x\",\"star\",\"star_dot\",\"triangle\",\"triangle_dot\",\"triangle_pin\",\"x\",\"y\"),t.MutedPolicy=a.Enum(\"show\",\"ignore\"),t.Orientation=a.Enum(\"vertical\",\"horizontal\"),t.OutputBackend=a.Enum(\"canvas\",\"svg\",\"webgl\"),t.PaddingUnits=a.Enum(\"percent\",\"absolute\"),t.Place=a.Enum(\"above\",\"below\",\"left\",\"right\",\"center\"),t.PointPolicy=a.Enum(\"snap_to_data\",\"follow_mouse\",\"none\"),t.RadiusDimension=a.Enum(\"x\",\"y\",\"max\",\"min\"),t.RenderLevel=a.Enum(\"image\",\"underlay\",\"glyph\",\"guide\",\"annotation\",\"overlay\"),t.RenderMode=a.Enum(\"canvas\",\"css\"),t.ResetPolicy=a.Enum(\"standard\",\"event_only\"),t.RoundingFunction=a.Enum(\"round\",\"nearest\",\"floor\",\"rounddown\",\"ceil\",\"roundup\"),t.SelectionMode=a.Enum(\"replace\",\"append\",\"intersect\",\"subtract\"),t.Side=a.Enum(\"above\",\"below\",\"left\",\"right\"),t.SizingMode=a.Enum(\"stretch_width\",\"stretch_height\",\"stretch_both\",\"scale_width\",\"scale_height\",\"scale_both\",\"fixed\"),t.Sort=a.Enum(\"ascending\",\"descending\"),t.SpatialUnits=a.Enum(\"screen\",\"data\"),t.StartEnd=a.Enum(\"start\",\"end\"),t.StepMode=a.Enum(\"after\",\"before\",\"center\"),t.TapBehavior=a.Enum(\"select\",\"inspect\"),t.TextAlign=a.Enum(\"left\",\"right\",\"center\"),t.TextBaseline=a.Enum(\"top\",\"middle\",\"bottom\",\"alphabetic\",\"hanging\",\"ideographic\"),t.TextureRepetition=a.Enum(\"repeat\",\"repeat_x\",\"repeat_y\",\"no_repeat\"),t.TickLabelOrientation=a.Enum(\"vertical\",\"horizontal\",\"parallel\",\"normal\"),t.TooltipAttachment=a.Enum(\"horizontal\",\"vertical\",\"left\",\"right\",\"above\",\"below\"),t.UpdateMode=a.Enum(\"replace\",\"append\"),t.VerticalAlign=a.Enum(\"top\",\"middle\",\"bottom\")},\n", " function _(e,n,t,s,r){s();const i=e(1).__importStar(e(8)),a=e(22),l=e(13),_=window.Map,{hasOwnProperty:u}=Object.prototype;class d{}t.Kind=d,d.__name__=\"Kind\",function(e){class n extends d{valid(e){return!0}}n.__name__=\"Any\",e.Any=n;class t extends d{valid(e){return!0}}t.__name__=\"Unknown\",e.Unknown=t;class s extends d{valid(e){return i.isBoolean(e)}}s.__name__=\"Boolean\",e.Boolean=s;class r extends d{constructor(e){super(),this.obj_type=e}valid(e){return!0}}r.__name__=\"Ref\",e.Ref=r;class c extends d{valid(e){return!0}}c.__name__=\"AnyRef\",e.AnyRef=c;class o extends d{valid(e){return i.isNumber(e)}}o.__name__=\"Number\",e.Number=o;class p extends o{valid(e){return super.valid(e)&&i.isInteger(e)}}p.__name__=\"Int\",e.Int=p;class y extends o{valid(e){return super.valid(e)&&0<=e&&e<=1}}y.__name__=\"Percent\",e.Percent=y;class m extends d{constructor(e){super(),this.types=e,this.types=e}valid(e){return this.types.some((n=>n.valid(e)))}}m.__name__=\"Or\",e.Or=m;class v extends d{constructor(e){super(),this.types=e,this.types=e}valid(e){if(!i.isArray(e))return!1;for(let n=0;n<this.types.length;n++){const t=this.types[n],s=e[n];if(!t.valid(s))return!1}return!0}}v.__name__=\"Tuple\",e.Tuple=v;class w extends d{constructor(e){super(),this.struct_type=e}valid(e){if(!i.isPlainObject(e))return!1;const{struct_type:n}=this;if(l.size(n)!=l.size(e))return!1;for(const t in n)if(u.call(n,t)){if(!u.call(e,t))return!1;const s=n[t],r=e[t];if(!s.valid(r))return!1}return!0}}w.__name__=\"Struct\",e.Struct=w;class h extends d{valid(e){return i.isArray(e)||i.isTypedArray(e)}}h.__name__=\"Arrayable\",e.Arrayable=h;class f extends d{constructor(e){super(),this.item_type=e}valid(e){return i.isArray(e)&&e.every((e=>this.item_type.valid(e)))}}f.__name__=\"Array\",e.Array=f;class K extends d{valid(e){return null===e}}K.__name__=\"Null\",e.Null=K;class b extends d{constructor(e){super(),this.base_type=e}valid(e){return null===e||this.base_type.valid(e)}}b.__name__=\"Nullable\",e.Nullable=b;class A extends d{constructor(e){super(),this.base_type=e}valid(e){return void 0===e||this.base_type.valid(e)}}A.__name__=\"Opt\",e.Opt=A;class x extends d{valid(e){return i.isString(e)}}x.__name__=\"String\",e.String=x;class S extends d{constructor(e){super(),this.values=new Set(e)}valid(e){return this.values.has(e)}*[Symbol.iterator](){yield*this.values}}S.__name__=\"Enum\",e.Enum=S;class N extends d{constructor(e){super(),this.item_type=e}valid(e){if(!i.isPlainObject(e))return!1;for(const n in e)if(u.call(e,n)){const t=e[n];if(!this.item_type.valid(t))return!1}return!0}}N.__name__=\"Dict\",e.Dict=N;class O extends d{constructor(e,n){super(),this.key_type=e,this.item_type=n}valid(e){if(!(e instanceof _))return!1;for(const[n,t]of e.entries())if(!this.key_type.valid(n)||!this.item_type.valid(t))return!1;return!0}}O.__name__=\"Map\",e.Map=O;class g extends d{valid(e){return a.is_Color(e)}}g.__name__=\"Color\",e.Color=g;class P extends d{valid(e){return i.isFunction(e)}}P.__name__=\"Function\",e.Function=P}(t.Kinds||(t.Kinds={})),t.Any=new t.Kinds.Any,t.Unknown=new t.Kinds.Unknown,t.Boolean=new t.Kinds.Boolean,t.Number=new t.Kinds.Number,t.Int=new t.Kinds.Int,t.String=new t.Kinds.String,t.Null=new t.Kinds.Null;t.Nullable=e=>new t.Kinds.Nullable(e);t.Opt=e=>new t.Kinds.Opt(e);t.Or=(...e)=>new t.Kinds.Or(e);t.Tuple=(...e)=>new t.Kinds.Tuple(e);t.Struct=e=>new t.Kinds.Struct(e),t.Arrayable=new t.Kinds.Arrayable;t.Array=e=>new t.Kinds.Array(e);t.Dict=e=>new t.Kinds.Dict(e);t.Map=(e,n)=>new t.Kinds.Map(e,n);t.Enum=(...e)=>new t.Kinds.Enum(e);t.Ref=e=>new t.Kinds.Ref(e);t.AnyRef=()=>new t.Kinds.AnyRef;t.Function=()=>new t.Kinds.Function,t.Percent=new t.Kinds.Percent,t.Alpha=t.Percent,t.Color=new t.Kinds.Color,t.Auto=t.Enum(\"auto\"),t.FontSize=t.String,t.Font=t.String,t.Angle=t.Number},\n", " function _(n,t,r,e,s){e();const u=n(23),c=n(10),l=n(8),{round:i}=Math;function o(n){return c.clamp(i(n),0,255)}function a(){return[0,0,0,0]}function f(n){return[n>>24&255,n>>16&255,n>>8&255,255&n]}function d(n,t){var r;let e,s,u,c;return null==n?[e,s,u,c]=[0,0,0,0]:l.isInteger(n)?[e,s,u,c]=f(n):l.isString(n)?[e,s,u,c]=null!==(r=_(n))&&void 0!==r?r:[0,0,0,0]:([e,s,u,c=1]=n,c=o(255*c)),255==c&&null!=t&&(c=o(255*t)),[e,s,u,c]}r.transparent=a,r.encode_rgba=function([n,t,r,e]){return n<<24|t<<16|r<<8|e},r.decode_rgba=f,r.compose_alpha=function(n,t){return 255==(255&n)?4294967040&n|o(255*t):n},r.color2rgba=d;const h={0:\"0\",1:\"1\",2:\"2\",3:\"3\",4:\"4\",5:\"5\",6:\"6\",7:\"7\",8:\"8\",9:\"9\",10:\"a\",11:\"b\",12:\"c\",13:\"d\",14:\"e\",15:\"f\"};function g(n){return h[n>>4]+h[15&n]}r.color2css=function(n,t){const[r,e,s,u]=d(n,t);return`rgba(${r}, ${e}, ${s}, ${u/255})`},r.color2hex=function(n,t){const[r,e,s,u]=d(n,t),c=`#${g(r)}${g(e)}${g(s)}`;return 255==u?c:`${c}${g(u)}`},r.color2hexrgb=function(n){const[t,r,e]=d(n);return`#${g(t)}${g(r)}${g(e)}`};const b=/^rgba?\\(\\s*([^\\s,]+?)\\s+([^\\s,]+?)\\s+([^\\s,]+?)(?:\\s*\\/\\s*([^\\s,]+?))?\\s*\\)$/,m=/^rgba?\\(\\s*([^\\s,]+?)\\s*,\\s*([^\\s,]+?)\\s*,\\s*([^\\s,]+?)(?:\\s*,\\s*([^\\s,]+?))?\\s*\\)$/,$=(()=>{const n=document.createElement(\"canvas\");n.width=1,n.height=1;const t=n.getContext(\"2d\"),r=t.createLinearGradient(0,0,1,1);return n=>{t.fillStyle=r,t.fillStyle=n;const e=t.fillStyle;return e!=r?e:null}})();function _(n){var t;if(!(n=n.trim().toLowerCase()))return null;if(\"transparent\"==n)return[0,0,0,0];if(u.is_named_color(n))return f(u.named_colors[n]);if(\"#\"==n[0]){const t=Number(\"0x\"+n.substr(1));if(isNaN(t))return null;switch(n.length-1){case 3:{const n=t>>8&15,r=t>>4&15,e=t>>0&15;return[n<<4|n,r<<4|r,e<<4|e,255]}case 4:{const n=t>>12&15,r=t>>8&15,e=t>>4&15,s=t>>0&15;return[n<<4|n,r<<4|r,e<<4|e,s<<4|s]}case 6:return[t>>16&255,t>>8&255,t>>0&255,255];case 8:return[t>>24&255,t>>16&255,t>>8&255,t>>0&255]}}else if(n.startsWith(\"rgb\")){const r=null!==(t=n.match(b))&&void 0!==t?t:n.match(m);if(null!=r){let[,n,t,e,s=\"1\"]=r;const u=n.endsWith(\"%\"),c=t.endsWith(\"%\"),l=e.endsWith(\"%\"),i=s.endsWith(\"%\");if(!(u&&c&&l)&&(u||c||l))return null;u&&(n=n.slice(0,-1)),c&&(t=t.slice(0,-1)),l&&(e=e.slice(0,-1)),i&&(s=s.slice(0,-1));let a=Number(n),f=Number(t),d=Number(e),h=Number(s);return isNaN(a+f+d+h)?null:(u&&(a=a/100*255),c&&(f=f/100*255),l&&(d=d/100*255),h=255*(i?h/100:h),a=o(a),f=o(f),d=o(d),h=o(h),[a,f,d,h])}}else{const t=$(n);if(null!=t)return _(t)}return null}r.css4_parse=_,r.is_Color=function(n){return!!l.isInteger(n)||(!(!l.isString(n)||null==_(n))||!(!l.isArray(n)||3!=n.length&&4!=n.length))},r.is_dark=function([n,t,r]){return 1-(.299*n+.587*t+.114*r)/255>=.6}},\n", " function _(e,r,l,a,i){a();l.named_colors={aliceblue:4042850303,antiquewhite:4209760255,aqua:16777215,aquamarine:2147472639,azure:4043309055,beige:4126530815,bisque:4293182719,black:255,blanchedalmond:4293643775,blue:65535,blueviolet:2318131967,brown:2771004159,burlywood:3736635391,cadetblue:1604231423,chartreuse:2147418367,chocolate:3530104575,coral:4286533887,cornflowerblue:1687547391,cornsilk:4294499583,crimson:3692313855,cyan:16777215,darkblue:35839,darkcyan:9145343,darkgoldenrod:3095792639,darkgray:2846468607,darkgreen:6553855,darkgrey:2846468607,darkkhaki:3182914559,darkmagenta:2332068863,darkolivegreen:1433087999,darkorange:4287365375,darkorchid:2570243327,darkred:2332033279,darksalmon:3918953215,darkseagreen:2411499519,darkslateblue:1211993087,darkslategray:793726975,darkslategrey:793726975,darkturquoise:13554175,darkviolet:2483082239,deeppink:4279538687,deepskyblue:12582911,dimgray:1768516095,dimgrey:1768516095,dodgerblue:512819199,firebrick:2988581631,floralwhite:4294635775,forestgreen:579543807,fuchsia:4278255615,gainsboro:3705462015,ghostwhite:4177068031,gold:4292280575,goldenrod:3668254975,gray:2155905279,green:8388863,greenyellow:2919182335,grey:2155905279,honeydew:4043305215,hotpink:4285117695,indianred:3445382399,indigo:1258324735,ivory:4294963455,khaki:4041641215,lavender:3873897215,lavenderblush:4293981695,lawngreen:2096890111,lemonchiffon:4294626815,lightblue:2916673279,lightcoral:4034953471,lightcyan:3774873599,lightgoldenrodyellow:4210742015,lightgray:3553874943,lightgreen:2431553791,lightgrey:3553874943,lightpink:4290167295,lightsalmon:4288707327,lightseagreen:548580095,lightskyblue:2278488831,lightslategray:2005441023,lightslategrey:2005441023,lightsteelblue:2965692159,lightyellow:4294959359,lime:16711935,limegreen:852308735,linen:4210091775,magenta:4278255615,maroon:2147483903,mediumaquamarine:1724754687,mediumblue:52735,mediumorchid:3126187007,mediumpurple:2473647103,mediumseagreen:1018393087,mediumslateblue:2070474495,mediumspringgreen:16423679,mediumturquoise:1221709055,mediumvioletred:3340076543,midnightblue:421097727,mintcream:4127193855,mistyrose:4293190143,moccasin:4293178879,navajowhite:4292783615,navy:33023,oldlace:4260751103,olive:2155872511,olivedrab:1804477439,orange:4289003775,orangered:4282712319,orchid:3664828159,palegoldenrod:4008225535,palegreen:2566625535,paleturquoise:2951671551,palevioletred:3681588223,papayawhip:4293907967,peachpuff:4292524543,peru:3448061951,pink:4290825215,plum:3718307327,powderblue:2967529215,purple:2147516671,rebeccapurple:1714657791,red:4278190335,rosybrown:3163525119,royalblue:1097458175,saddlebrown:2336560127,salmon:4202722047,sandybrown:4104413439,seagreen:780883967,seashell:4294307583,sienna:2689740287,silver:3233857791,skyblue:2278484991,slateblue:1784335871,slategray:1887473919,slategrey:1887473919,snow:4294638335,springgreen:16744447,steelblue:1182971135,tan:3535047935,teal:8421631,thistle:3636451583,tomato:4284696575,turquoise:1088475391,violet:4001558271,wheat:4125012991,white:4294967295,whitesmoke:4126537215,yellow:4294902015,yellowgreen:2597139199},l.is_named_color=function(e){return e in l.named_colors}},\n", " function _(r,t,n,a,o){a(),n.GeneratorFunction=Object.getPrototypeOf((function*(){})).constructor,n.ColorArray=Uint32Array,n.RGBAArray=Uint8ClampedArray,n.infer_type=function(r,t){return r instanceof Float64Array||r instanceof Array||t instanceof Float64Array||t instanceof Array?Float64Array:Float32Array},n.ScreenArray=Float32Array,n.to_screen=function(r){return r instanceof Float32Array?r:new Float32Array(r)},o(\"Indices\",r(25).BitSet)},\n", " function _(t,s,r,e,i){e();const n=t(26),o=t(11);class a{constructor(t,s=0){this.size=t,this[Symbol.toStringTag]=\"BitSet\",this._count=null,this._nwords=Math.ceil(t/32),0==s||1==s?(this._array=new Uint32Array(this._nwords),1==s&&this._array.fill(4294967295)):(o.assert(s.length==this._nwords,\"Initializer size mismatch\"),this._array=s)}clone(){return new a(this.size,new Uint32Array(this._array))}[n.equals](t,s){if(!s.eq(this.size,t.size))return!1;const{_nwords:r}=this,e=this.size%r,i=0==e?r:r-1;for(let s=0;s<i;s++)if(this._array[s]!=t._array[s])return!1;if(0==e)return!0;{const s=1<<e-1,r=s-1^s;return(this._array[i]&r)==(t._array[i]&r)}}static all_set(t){return new a(t,1)}static all_unset(t){return new a(t,0)}static from_indices(t,s){const r=new a(t);for(const t of s)r.set(t);return r}static from_booleans(t,s){const r=new a(t),e=Math.min(t,s.length);for(let t=0;t<e;t++)s[t]&&r.set(t);return r}_check_bounds(t){o.assert(0<=t&&t<this.size,`Out of bounds: 0 <= ${t} < ${this.size}`)}get(t){this._check_bounds(t);const s=t>>>5,r=31&t;return!!(this._array[s]>>r&1)}set(t,s=!0){this._check_bounds(t),this._count=null;const r=t>>>5,e=31&t;s?this._array[r]|=1<<e:this._array[r]&=~(1<<e)}unset(t){this.set(t,!1)}*[Symbol.iterator](){yield*this.ones()}get count(){let t=this._count;return null==t&&(this._count=t=this._get_count()),t}_get_count(){const{_array:t,_nwords:s,size:r}=this;let e=0;for(let i=0,n=0;n<s;n++){const s=t[n];if(0==s)i+=32;else for(let t=0;t<32&&i<r;t++,i++)s>>>t&1&&(e+=1)}return e}*ones(){const{_array:t,_nwords:s,size:r}=this;for(let e=0,i=0;i<s;i++){const s=t[i];if(0!=s)for(let t=0;t<32&&e<r;t++,e++)s>>>t&1&&(yield e);else e+=32}}*zeros(){const{_array:t,_nwords:s,size:r}=this;for(let e=0,i=0;i<s;i++){const s=t[i];if(4294967295!=s)for(let t=0;t<32&&e<r;t++,e++)s>>>t&1||(yield e);else e+=32}}_check_size(t){o.assert(this.size==t.size,\"Size mismatch\")}add(t){this._check_size(t);for(let s=0;s<this._nwords;s++)this._array[s]|=t._array[s]}intersect(t){this._check_size(t);for(let s=0;s<this._nwords;s++)this._array[s]&=t._array[s]}subtract(t){this._check_size(t);for(let s=0;s<this._nwords;s++){const r=this._array[s],e=t._array[s];this._array[s]=(r^e)&r}}union(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++)s._array[r]|=t._array[r];return s}intersection(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++)s._array[r]&=t._array[r];return s}difference(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++){const e=this._array[r],i=t._array[r];s._array[r]=(e^i)&e}return s}select(t){o.assert(this.size<=t.length,\"Size mismatch\");const s=this.count,r=new t.constructor(s);let e=0;for(const s of this)r[e++]=t[s];return r}}r.BitSet=a,a.__name__=\"BitSet\"},\n", " function _(t,e,r,n,s){n();const o=t(8),{hasOwnProperty:c}=Object.prototype;function a(t){return o.isObject(t)&&void 0!==t[r.equals]}r.equals=Symbol(\"equals\"),r.wildcard=Symbol(\"wildcard\");const i=Object.prototype.toString;class u{constructor(){this.a_stack=[],this.b_stack=[]}eq(t,e){if(Object.is(t,e))return!0;if(t===r.wildcard||e===r.wildcard)return!0;if(null==t||null==e)return t===e;const n=i.call(t);if(n!=i.call(e))return!1;switch(n){case\"[object Number]\":return this.numbers(t,e);case\"[object RegExp]\":case\"[object String]\":return`${t}`==`${e}`;case\"[object Date]\":case\"[object Boolean]\":return+t==+e}const{a_stack:s,b_stack:o}=this;let c=s.length;for(;c--;)if(s[c]===t)return o[c]===e;s.push(t),o.push(e);const u=(()=>{if(a(t)&&a(e))return t[r.equals](e,this);switch(n){case\"[object Array]\":case\"[object Uint8Array]\":case\"[object Int8Array]\":case\"[object Uint16Array]\":case\"[object Int16Array]\":case\"[object Uint32Array]\":case\"[object Int32Array]\":case\"[object Float32Array]\":case\"[object Float64Array]\":return this.arrays(t,e);case\"[object Map]\":return this.maps(t,e);case\"[object Set]\":return this.sets(t,e);case\"[object Object]\":if(t.constructor==e.constructor&&(null==t.constructor||t.constructor===Object))return this.objects(t,e);case\"[object Function]\":if(t.constructor==e.constructor&&t.constructor===Function)return this.eq(`${t}`,`${e}`)}if(t instanceof Node)return this.nodes(t,e);throw Error(`can't compare objects of type ${n}`)})();return s.pop(),o.pop(),u}numbers(t,e){return Object.is(t,e)}arrays(t,e){const{length:r}=t;if(r!=e.length)return!1;for(let n=0;n<r;n++)if(!this.eq(t[n],e[n]))return!1;return!0}iterables(t,e){const r=t[Symbol.iterator](),n=e[Symbol.iterator]();for(;;){const t=r.next(),e=n.next();if(t.done&&e.done)return!0;if(t.done||e.done)return!1;if(!this.eq(t.value,e.value))return!1}}maps(t,e){if(t.size!=e.size)return!1;for(const[r,n]of t)if(!e.has(r)||!this.eq(n,e.get(r)))return!1;return!0}sets(t,e){if(t.size!=e.size)return!1;for(const r of t)if(!e.has(r))return!1;return!0}objects(t,e){const r=Object.keys(t);if(r.length!=Object.keys(e).length)return!1;for(const n of r)if(!c.call(e,n)||!this.eq(t[n],e[n]))return!1;return!0}nodes(t,e){return t.nodeType==e.nodeType&&(t.textContent==e.textContent&&!!this.iterables(t.childNodes,e.childNodes))}}r.Comparator=u,u.__name__=\"Comparator\";const{abs:l}=Math;class b extends u{constructor(t=1e-4){super(),this.tolerance=t}numbers(t,e){return super.numbers(t,e)||l(t-e)<this.tolerance}}function f(t,e){return(new u).eq(t,e)}r.SimilarComparator=b,b.__name__=\"SimilarComparator\",r.is_equal=f,r.is_similar=function(t,e,r){return new b(r).eq(t,e)},r.isEqual=f},\n", " function _(n,i,e,t,r){t(),e.is_windows=navigator.appVersion.includes(\"Windows\"),e.is_ie=(()=>{const n=navigator.userAgent;return n.includes(\"MSIE\")||n.includes(\"Trident\")||n.includes(\"Edge\")})(),e.is_mobile=\"undefined\"!=typeof window&&(\"ontouchstart\"in window||navigator.maxTouchPoints>0),e.is_little_endian=(()=>{const n=new ArrayBuffer(4),i=new Uint8Array(n);new Uint32Array(n)[1]=168496141;let e=!0;return 10==i[4]&&11==i[5]&&12==i[6]&&13==i[7]&&(e=!1),e})(),e.BYTE_ORDER=e.is_little_endian?\"little\":\"big\",e.to_big_endian=function(n){if(e.is_little_endian){const i=new Uint32Array(n.length),e=new DataView(i.buffer);let t=0;for(const i of n)e.setUint32(t,i),t+=4;return i}return n}},\n", " function _(e,t,r,i,s){i();class _{constructor(){this._dev=!1,this._wireframe=!1}set dev(e){this._dev=e}get dev(){return this._dev}set wireframe(e){this._wireframe=e}get wireframe(){return this._wireframe}}r.Settings=_,_.__name__=\"Settings\",r.settings=new _},\n", " function _(t,e,s,r,n){var a,i,h,u,l,c,o,y;r();const p=t(8),_=t(11),A=t(26),d=t(30),D=t(31),N=Symbol(\"__ndarray__\");class f extends Uint8Array{constructor(t,e){super(t),this[a]=!0,this.dtype=\"uint8\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(a=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Uint8NDArray=f,f.__name__=\"Uint8NDArray\";class m extends Int8Array{constructor(t,e){super(t),this[i]=!0,this.dtype=\"int8\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(i=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Int8NDArray=m,m.__name__=\"Int8NDArray\";class g extends Uint16Array{constructor(t,e){super(t),this[h]=!0,this.dtype=\"uint16\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(h=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Uint16NDArray=g,g.__name__=\"Uint16NDArray\";class q extends Int16Array{constructor(t,e){super(t),this[u]=!0,this.dtype=\"int16\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(u=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Int16NDArray=q,q.__name__=\"Int16NDArray\";class I extends Uint32Array{constructor(t,e){super(t),this[l]=!0,this.dtype=\"uint32\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(l=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Uint32NDArray=I,I.__name__=\"Uint32NDArray\";class U extends Int32Array{constructor(t,e){super(t),this[c]=!0,this.dtype=\"int32\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(c=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Int32NDArray=U,U.__name__=\"Int32NDArray\";class w extends Float32Array{constructor(t,e){super(t),this[o]=!0,this.dtype=\"float32\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(o=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Float32NDArray=w,w.__name__=\"Float32NDArray\";class x extends Float64Array{constructor(t,e){super(t),this[y]=!0,this.dtype=\"float64\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(y=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}function z(t){return p.isObject(t)&&void 0!==t[N]}s.Float64NDArray=x,x.__name__=\"Float64NDArray\",s.is_NDArray=z,s.ndarray=function(t,e={}){let{dtype:s}=e;null==s&&(s=t instanceof ArrayBuffer||p.isArray(t)?\"float64\":(()=>{switch(!0){case t instanceof Uint8Array:return\"uint8\";case t instanceof Int8Array:return\"int8\";case t instanceof Uint16Array:return\"uint16\";case t instanceof Int16Array:return\"int16\";case t instanceof Uint32Array:return\"uint32\";case t instanceof Int32Array:return\"int32\";case t instanceof Float32Array:return\"float32\";case t instanceof Float64Array:return\"float64\";default:_.unreachable()}})());const{shape:r}=e;switch(s){case\"uint8\":return new f(t,r);case\"int8\":return new m(t,r);case\"uint16\":return new g(t,r);case\"int16\":return new q(t,r);case\"uint32\":return new I(t,r);case\"int32\":return new U(t,r);case\"float32\":return new w(t,r);case\"float64\":return new x(t,r)}}},\n", " function _(e,r,t,i,s){i();const n=e(11),a=e(13),l=e(8);t.serialize=Symbol(\"serialize\");class o extends Error{}t.SerializationError=o,o.__name__=\"SerializationError\";class f{constructor(e){var r;this._references=new Map,this._definitions=new Map,this._refmap=new Map,this.include_defaults=null===(r=null==e?void 0:e.include_defaults)||void 0===r||r}get_ref(e){return this._references.get(e)}add_ref(e,r){n.assert(!this._references.has(e)),this._references.set(e,r)}add_def(e,r){const t=this.get_ref(e);n.assert(null!=t),this._definitions.set(e,r),this._refmap.set(t,r)}get objects(){return new Set(this._references.keys())}get references(){return new Set(this._references.values())}get definitions(){return new Set(this._definitions.values())}resolve_ref(e){return this._refmap.get(e)}remove_ref(e){return this._references.delete(e)}remove_def(e){return this._definitions.delete(e)}to_serializable(e){const r=this.get_ref(e);if(null!=r)return r;if(function(e){return l.isObject(e)&&void 0!==e[t.serialize]}(e))return e[t.serialize](this);if(l.isArray(e)||l.isTypedArray(e)){const r=e.length,t=new Array(r);for(let i=0;i<r;i++){const r=e[i];t[i]=this.to_serializable(r)}return t}if(l.isPlainObject(e)){const r={};for(const[t,i]of a.entries(e))r[t]=this.to_serializable(i);return r}if(null===e||l.isBoolean(e)||l.isNumber(e)||l.isString(e))return e;throw new o(`${Object.prototype.toString.call(e)} is not serializable`)}}t.Serializer=f,f.__name__=\"Serializer\"},\n", " function _(r,e,n,t,_){t();const a=r(1),f=r(8),u=a.__importStar(r(29)),s=r(27),o=r(32);n.is_NDArray_ref=function(r){return f.isPlainObject(r)&&(\"__buffer__\"in r||\"__ndarray__\"in r)},n.decode_NDArray=function(r,e){const{shape:n,dtype:t,order:_}=r;let a;if(\"__buffer__\"in r){const n=e.get(r.__buffer__);if(null==n)throw new Error(`buffer for ${r.__buffer__} not found`);a=n}else a=o.base64_to_buffer(r.__ndarray__);const f=(()=>{switch(t){case\"uint8\":return new u.Uint8NDArray(a,n);case\"int8\":return new u.Int8NDArray(a,n);case\"uint16\":return new u.Uint16NDArray(a,n);case\"int16\":return new u.Int16NDArray(a,n);case\"uint32\":return new u.Uint32NDArray(a,n);case\"int32\":return new u.Int32NDArray(a,n);case\"float32\":return new u.Float32NDArray(a,n);case\"float64\":return new u.Float64NDArray(a,n)}})();return _!==s.BYTE_ORDER&&o.swap(f),f},n.encode_NDArray=function(r,e){const n={order:s.BYTE_ORDER,dtype:r.dtype,shape:r.shape};if(null!=e){const t=`${e.size}`;return e.set(t,r.buffer),Object.assign({__buffer__:t},n)}{const e={toJSON:()=>o.buffer_to_base64(r.buffer)};return Object.assign({__ndarray__:e},n)}}},\n", " function _(t,e,n,r,f){r(),n.buffer_to_base64=function(t){const e=new Uint8Array(t),n=Array.from(e).map((t=>String.fromCharCode(t)));return btoa(n.join(\"\"))},n.base64_to_buffer=function(t){const e=atob(t),n=e.length,r=new Uint8Array(n);for(let t=0,f=n;t<f;t++)r[t]=e.charCodeAt(t);return r.buffer},n.swap=function(t){switch(t.BYTES_PER_ELEMENT){case 2:!function(t){const e=new Uint8Array(t.buffer,t.byteOffset,2*t.length);for(let t=0,n=e.length;t<n;t+=2){const n=e[t];e[t]=e[t+1],e[t+1]=n}}(t);break;case 4:!function(t){const e=new Uint8Array(t.buffer,t.byteOffset,4*t.length);for(let t=0,n=e.length;t<n;t+=4){let n=e[t];e[t]=e[t+3],e[t+3]=n,n=e[t+1],e[t+1]=e[t+2],e[t+2]=n}}(t);break;case 8:!function(t){const e=new Uint8Array(t.buffer,t.byteOffset,8*t.length);for(let t=0,n=e.length;t<n;t+=8){let n=e[t];e[t]=e[t+7],e[t+7]=n,n=e[t+1],e[t+1]=e[t+6],e[t+6]=n,n=e[t+2],e[t+2]=e[t+5],e[t+5]=n,n=e[t+3],e[t+3]=e[t+4],e[t+4]=n}}(t)}}},\n", " function _(t,r,e,s,a){s();const i=t(26);class n{is_Scalar(){return this.is_scalar}is_Vector(){return!this.is_scalar}}e.Uniform=n,n.__name__=\"Uniform\";class l extends n{constructor(t,r){super(),this.value=t,this.length=r,this.is_scalar=!0}get(t){return this.value}*[Symbol.iterator](){const{length:t,value:r}=this;for(let e=0;e<t;e++)yield r}select(t){return new l(this.value,t.count)}[i.equals](t,r){return r.eq(this.length,t.length)&&r.eq(this.value,t.value)}}e.UniformScalar=l,l.__name__=\"UniformScalar\";class o extends n{constructor(t){super(),this.array=t,this.is_scalar=!1,this.length=this.array.length}get(t){return this.array[t]}*[Symbol.iterator](){yield*this.array}select(t){const r=t.select(this.array);return new this.constructor(r)}[i.equals](t,r){return r.eq(this.length,t.length)&&r.eq(this.array,t.array)}}e.UniformVector=o,o.__name__=\"UniformVector\";class h extends o{constructor(t){super(t),this.array=t,this._view=new DataView(t.buffer)}get(t){return this._view.getUint32(4*t)}*[Symbol.iterator](){const t=this.length;for(let r=0;r<t;r++)yield this.get(r)}}e.ColorUniformVector=h,h.__name__=\"ColorUniformVector\"},\n", " function _(t,e,r,n,u){n();const c=t(28);function s(){const t=new Array(32),e=\"0123456789ABCDEF\";for(let r=0;r<32;r++)t[r]=e.substr(Math.floor(16*Math.random()),1);return t[12]=\"4\",t[16]=e.substr(3&t[16].charCodeAt(0)|8,1),t.join(\"\")}r.startsWith=function(t,e,r=0){return t.substr(r,e.length)==e},r.uuid4=s;let a=1e3;r.uniqueId=function(t){const e=c.settings.dev?\"j\"+a++:s();return null!=t?`${t}-${e}`:e},r.escape=function(t){return t.replace(/(?:[&<>\"'`])/g,(t=>{switch(t){case\"&\":return\"&\";case\"<\":return\"<\";case\">\":return\">\";case'\"':return\""\";case\"'\":return\"'\";case\"`\":return\"`\";default:return t}}))},r.unescape=function(t){return t.replace(/&(amp|lt|gt|quot|#x27|#x60);/g,((t,e)=>{switch(e){case\"amp\":return\"&\";case\"lt\":return\"<\";case\"gt\":return\">\";case\"quot\":return'\"';case\"#x27\":return\"'\";case\"#x60\":return\"`\";default:return e}}))},r.use_strict=function(t){return`'use strict';\\n${t}`},r.to_fixed=function(t,e){return t.toFixed(e).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\")}},\n", " function _(e,t,s,n,o){n();const i=e(30);class r{constructor(e){this.document=e}}s.DocumentEvent=r,r.__name__=\"DocumentEvent\";class a extends r{constructor(e,t,s){super(e),this.events=t,this.setter_id=s}}s.DocumentEventBatch=a,a.__name__=\"DocumentEventBatch\";class d extends r{}s.DocumentChangedEvent=d,d.__name__=\"DocumentChangedEvent\";class l extends d{constructor(e,t,s){super(e),this.msg_type=t,this.msg_data=s}[i.serialize](e){const t=this.msg_data,s=e.to_serializable(t);return{kind:\"MessageSent\",msg_type:this.msg_type,msg_data:s}}}s.MessageSentEvent=l,l.__name__=\"MessageSentEvent\";class _ extends d{constructor(e,t,s,n,o,i,r){super(e),this.model=t,this.attr=s,this.old=n,this.new_=o,this.setter_id=i,this.hint=r}[i.serialize](e){if(null!=this.hint)return e.to_serializable(this.hint);const t=this.new_,s=e.to_serializable(t);return this.model!=t&&e.remove_def(this.model),{kind:\"ModelChanged\",model:this.model.ref(),attr:this.attr,new:s}}}s.ModelChangedEvent=_,_.__name__=\"ModelChangedEvent\";class c extends d{constructor(e,t,s){super(e),this.column_source=t,this.patches=s}[i.serialize](e){return{kind:\"ColumnsPatched\",column_source:this.column_source,patches:this.patches}}}s.ColumnsPatchedEvent=c,c.__name__=\"ColumnsPatchedEvent\";class h extends d{constructor(e,t,s,n){super(e),this.column_source=t,this.data=s,this.rollover=n}[i.serialize](e){return{kind:\"ColumnsStreamed\",column_source:this.column_source,data:this.data,rollover:this.rollover}}}s.ColumnsStreamedEvent=h,h.__name__=\"ColumnsStreamedEvent\";class m extends d{constructor(e,t,s){super(e),this.title=t,this.setter_id=s}[i.serialize](e){return{kind:\"TitleChanged\",title:this.title}}}s.TitleChangedEvent=m,m.__name__=\"TitleChangedEvent\";class u extends d{constructor(e,t,s){super(e),this.model=t,this.setter_id=s}[i.serialize](e){return{kind:\"RootAdded\",model:e.to_serializable(this.model)}}}s.RootAddedEvent=u,u.__name__=\"RootAddedEvent\";class v extends d{constructor(e,t,s){super(e),this.model=t,this.setter_id=s}[i.serialize](e){return{kind:\"RootRemoved\",model:this.model.ref()}}}s.RootRemovedEvent=v,v.__name__=\"RootRemovedEvent\"},\n", " function _(t,r,n,i,e){i();const s=t(8),o=t(13);n.pretty=Symbol(\"pretty\");class c{constructor(t){this.precision=null==t?void 0:t.precision}to_string(t){return function(t){return s.isObject(t)&&void 0!==t[n.pretty]}(t)?t[n.pretty](this):s.isBoolean(t)?this.boolean(t):s.isNumber(t)?this.number(t):s.isString(t)?this.string(t):s.isArray(t)?this.array(t):s.isIterable(t)?this.iterable(t):s.isPlainObject(t)?this.object(t):`${t}`}token(t){return t}boolean(t){return`${t}`}number(t){return null!=this.precision?t.toFixed(this.precision):`${t}`}string(t){return`\"${t.replace(/'/g,\"\\\\'\")}\"`}array(t){const r=this.token,n=[];for(const r of t)n.push(this.to_string(r));return`${r(\"[\")}${n.join(`${r(\",\")} `)}${r(\"]\")}`}iterable(t){var r;const n=this.token,i=null!==(r=Object(t)[Symbol.toStringTag])&&void 0!==r?r:\"Object\",e=this.array(t);return`${i}${n(\"(\")}${e}${n(\")\")}`}object(t){const r=this.token,n=[];for(const[i,e]of o.entries(t))n.push(`${i}${r(\":\")} ${this.to_string(e)}`);return`${r(\"{\")}${n.join(`${r(\",\")} `)}${r(\"}\")}`}}n.Printer=c,c.__name__=\"Printer\",n.to_string=function(t,r){return new c(r).to_string(t)}},\n", " function _(n,o,r,e,t){e();const l=n(13),i=n(8);function c(n){return i.isObject(n)&&void 0!==n[r.clone]}r.clone=Symbol(\"clone\"),r.is_Cloneable=c;class s extends Error{}r.CloningError=s,s.__name__=\"CloningError\";class a{constructor(){}clone(n){if(c(n))return n[r.clone](this);if(i.isArray(n)){const o=n.length,r=new Array(o);for(let e=0;e<o;e++){const o=n[e];r[e]=this.clone(o)}return r}if(i.isPlainObject(n)){const o={};for(const[r,e]of l.entries(n))o[r]=this.clone(e);return o}if(null===n||i.isBoolean(n)||i.isNumber(n)||i.isString(n))return n;throw new s(`${Object.prototype.toString.call(n)} is not cloneable`)}}r.Cloner=a,a.__name__=\"Cloner\"},\n", " function _(t,_,r,o,a){o();const e=t(1);e.__exportStar(t(39),r),e.__exportStar(t(162),r),e.__exportStar(t(257),r),e.__exportStar(t(261),r),e.__exportStar(t(266),r),e.__exportStar(t(272),r),e.__exportStar(t(205),r),e.__exportStar(t(277),r),e.__exportStar(t(313),r),e.__exportStar(t(315),r),e.__exportStar(t(317),r),e.__exportStar(t(209),r),e.__exportStar(t(147),r),e.__exportStar(t(330),r),e.__exportStar(t(338),r),e.__exportStar(t(220),r),e.__exportStar(t(339),r),e.__exportStar(t(217),r),e.__exportStar(t(340),r),e.__exportStar(t(341),r),e.__exportStar(t(198),r),e.__exportStar(t(346),r),e.__exportStar(t(356),r),e.__exportStar(t(360),r)},\n", " function _(e,o,n,a,t){a(),t(\"Annotation\",e(40).Annotation),t(\"Arrow\",e(55).Arrow),t(\"ArrowHead\",e(133).ArrowHead),t(\"OpenHead\",e(133).OpenHead),t(\"NormalHead\",e(133).NormalHead),t(\"TeeHead\",e(133).TeeHead),t(\"VeeHead\",e(133).VeeHead),t(\"Band\",e(134).Band),t(\"BoxAnnotation\",e(136).BoxAnnotation),t(\"ColorBar\",e(137).ColorBar),t(\"Label\",e(226).Label),t(\"LabelSet\",e(227).LabelSet),t(\"Legend\",e(228).Legend),t(\"LegendItem\",e(229).LegendItem),t(\"PolyAnnotation\",e(231).PolyAnnotation),t(\"Slope\",e(232).Slope),t(\"Span\",e(233).Span),t(\"TextAnnotation\",e(139).TextAnnotation),t(\"Title\",e(138).Title),t(\"ToolbarPanel\",e(234).ToolbarPanel),t(\"Tooltip\",e(254).Tooltip),t(\"Whisker\",e(256).Whisker)},\n", " function _(t,e,i,n,s){n();const o=t(41);class a extends o.RendererView{get_size(){if(this.model.visible){const{width:t,height:e}=this._get_size();return{width:Math.round(t),height:Math.round(e)}}return{width:0,height:0}}_get_size(){throw new Error(\"not implemented\")}connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.visible,(()=>{null!=this.layout&&(this.layout.visible=this.model.visible,this.plot_view.request_layout())}))}get needs_clip(){return null==this.layout}serializable_state(){const t=super.serializable_state();return null==this.layout?t:Object.assign(Object.assign({},t),{bbox:this.layout.bbox.box})}}i.AnnotationView=a,a.__name__=\"AnnotationView\";class l extends o.Renderer{constructor(t){super(t)}static init_Annotation(){this.override({level:\"annotation\"})}}i.Annotation=l,l.__name__=\"Annotation\",l.init_Annotation()},\n", " function _(e,i,t,n,s){n();const r=e(1),a=e(42),_=r.__importStar(e(45)),o=e(20),l=e(53),d=e(54);class h extends a.View{get coordinates(){const{_coordinates:e}=this;return null!=e?e:this._coordinates=this._initialize_coordinates()}initialize(){super.initialize(),this.visuals=new _.Visuals(this),this.needs_webgl_blit=!1}connect_signals(){super.connect_signals();const{x_range_name:e,y_range_name:i}=this.model.properties;this.on_change([e,i],(()=>this._initialize_coordinates()))}_initialize_coordinates(){const{x_range_name:e,y_range_name:i}=this.model,{frame:t}=this.plot_view,n=t.x_scales.get(e),s=t.y_scales.get(i);return new d.CoordinateTransform(n,s)}get plot_view(){return this.parent}get plot_model(){return this.parent.model}get layer(){const{overlays:e,primary:i}=this.canvas;return\"overlay\"==this.model.level?e:i}get canvas(){return this.plot_view.canvas_view}request_render(){this.request_paint()}request_paint(){this.plot_view.request_paint(this)}notify_finished(){this.plot_view.notify_finished()}get needs_clip(){return!1}get has_webgl(){return!1}render(){this.model.visible&&this._render(),this._has_finished=!0}renderer_view(e){}}t.RendererView=h,h.__name__=\"RendererView\";class c extends l.Model{constructor(e){super(e)}static init_Renderer(){this.define((({Boolean:e,String:i})=>({level:[o.RenderLevel,\"image\"],visible:[e,!0],x_range_name:[i,\"default\"],y_range_name:[i,\"default\"]})))}}t.Renderer=c,c.__name__=\"Renderer\",c.init_Renderer()},\n", " function _(t,e,s,i,n){i();const r=t(1),o=t(15),h=t(43),l=t(8),a=r.__importDefault(t(44));class _{constructor(t){this.removed=new o.Signal0(this,\"removed\"),this._ready=Promise.resolve(void 0),this._slots=new WeakMap;const{model:e,parent:s}=t;this.model=e,this.parent=s,this.root=null==s?this:s.root,this.removed.emit()}get ready(){return this._ready}connect(t,e){let s=this._slots.get(e);return null==s&&(s=(t,s)=>{const i=Promise.resolve(e.call(this,t,s));this._ready=this._ready.then((()=>i))},this._slots.set(e,s)),t.connect(s,this)}disconnect(t,e){return t.disconnect(e,this)}initialize(){this._has_finished=!1,this.is_root&&(this._stylesheet=h.stylesheet);for(const t of this.styles())this.stylesheet.append(t)}async lazy_initialize(){}remove(){this.disconnect_signals(),this.removed.emit()}toString(){return`${this.model.type}View(${this.model.id})`}serializable_state(){return{type:this.model.type}}get is_root(){return null==this.parent}assert_root(){if(!this.is_root)throw new Error(`${this.toString()} is not a root layout`)}has_finished(){return this._has_finished}get is_idle(){return this.has_finished()}connect_signals(){}disconnect_signals(){o.Signal.disconnect_receiver(this)}on_change(t,e){for(const s of l.isArray(t)?t:[t])this.connect(s.change,e)}cursor(t,e){return null}get stylesheet(){return this.is_root?this._stylesheet:this.root.stylesheet}styles(){return[a.default]}}s.View=_,_.__name__=\"View\"},\n", " function _(t,e,n,i,o){i();const s=t(8),l=t(13),r=t=>(e={},...n)=>{const i=document.createElement(t);i.classList.add(\"bk\");for(let[t,n]of l.entries(e))if(null!=n&&(!s.isBoolean(n)||n))if(\"class\"===t&&(s.isString(n)&&(n=n.split(/\\s+/)),s.isArray(n)))for(const t of n)null!=t&&i.classList.add(t);else if(\"style\"===t&&s.isPlainObject(n))for(const[t,e]of l.entries(n))i.style[t]=e;else if(\"data\"===t&&s.isPlainObject(n))for(const[t,e]of l.entries(n))i.dataset[t]=e;else i.setAttribute(t,n);function o(t){if(s.isString(t))i.appendChild(document.createTextNode(t));else if(t instanceof Node)i.appendChild(t);else if(t instanceof NodeList||t instanceof HTMLCollection)for(const e of t)i.appendChild(e);else if(null!=t&&!1!==t)throw new Error(`expected a DOM element, string, false or null, got ${JSON.stringify(t)}`)}for(const t of n)if(s.isArray(t))for(const e of t)o(e);else o(t);return i};function a(t){const e=t.parentNode;null!=e&&e.removeChild(t)}function c(t,...e){const n=t.firstChild;for(const i of e)t.insertBefore(i,n)}function d(t,e){var n,i,o;const s=Element.prototype;return(null!==(o=null!==(i=null!==(n=s.matches)&&void 0!==n?n:s.webkitMatchesSelector)&&void 0!==i?i:s.mozMatchesSelector)&&void 0!==o?o:s.msMatchesSelector).call(t,e)}function h(t){return parseFloat(t)||0}function u(t){const e=getComputedStyle(t);return{border:{top:h(e.borderTopWidth),bottom:h(e.borderBottomWidth),left:h(e.borderLeftWidth),right:h(e.borderRightWidth)},margin:{top:h(e.marginTop),bottom:h(e.marginBottom),left:h(e.marginLeft),right:h(e.marginRight)},padding:{top:h(e.paddingTop),bottom:h(e.paddingBottom),left:h(e.paddingLeft),right:h(e.paddingRight)}}}function f(t){const e=t.getBoundingClientRect();return{width:Math.ceil(e.width),height:Math.ceil(e.height)}}n.createElement=function(t,e,...n){return r(t)(e,...n)},n.div=r(\"div\"),n.span=r(\"span\"),n.canvas=r(\"canvas\"),n.link=r(\"link\"),n.style=r(\"style\"),n.a=r(\"a\"),n.p=r(\"p\"),n.i=r(\"i\"),n.pre=r(\"pre\"),n.button=r(\"button\"),n.label=r(\"label\"),n.input=r(\"input\"),n.select=r(\"select\"),n.option=r(\"option\"),n.optgroup=r(\"optgroup\"),n.textarea=r(\"textarea\"),n.nbsp=function(){return document.createTextNode(\" \")},n.append=function(t,...e){for(const n of e)t.appendChild(n)},n.remove=a,n.removeElement=a,n.replaceWith=function(t,e){const n=t.parentNode;null!=n&&n.replaceChild(e,t)},n.prepend=c,n.empty=function(t,e=!1){let n;for(;n=t.firstChild;)t.removeChild(n);if(e&&t instanceof Element)for(const e of t.attributes)t.removeAttributeNode(e)},n.display=function(t){t.style.display=\"\"},n.undisplay=function(t){t.style.display=\"none\"},n.show=function(t){t.style.visibility=\"\"},n.hide=function(t){t.style.visibility=\"hidden\"},n.offset=function(t){const e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset-document.documentElement.clientTop,left:e.left+window.pageXOffset-document.documentElement.clientLeft}},n.matches=d,n.parent=function(t,e){let n=t;for(;n=n.parentElement;)if(d(n,e))return n;return null},n.extents=u,n.size=f,n.scroll_size=function(t){return{width:Math.ceil(t.scrollWidth),height:Math.ceil(t.scrollHeight)}},n.outer_size=function(t){const{margin:{left:e,right:n,top:i,bottom:o}}=u(t),{width:s,height:l}=f(t);return{width:Math.ceil(s+e+n),height:Math.ceil(l+i+o)}},n.content_size=function(t){const{left:e,top:n}=t.getBoundingClientRect(),{padding:i}=u(t);let o=0,s=0;for(const l of t.children){const t=l.getBoundingClientRect();o=Math.max(o,Math.ceil(t.left-e-i.left+t.width)),s=Math.max(s,Math.ceil(t.top-n-i.top+t.height))}return{width:o,height:s}},n.position=function(t,e,n){const{style:i}=t;if(i.left=`${e.x}px`,i.top=`${e.y}px`,i.width=`${e.width}px`,i.height=`${e.height}px`,null==n)i.margin=\"\";else{const{top:t,right:e,bottom:o,left:s}=n;i.margin=`${t}px ${e}px ${o}px ${s}px`}},n.children=function(t){return Array.from(t.children)};class p{constructor(t){this.el=t,this.classList=t.classList}get values(){const t=[];for(let e=0;e<this.classList.length;e++){const n=this.classList.item(e);null!=n&&t.push(n)}return t}has(t){return this.classList.contains(t)}add(...t){for(const e of t)this.classList.add(e);return this}remove(...t){for(const e of t)this.classList.remove(e);return this}clear(){for(const t of this.values)\"bk\"!=t&&this.classList.remove(t);return this}toggle(t,e){return(null!=e?e:!this.has(t))?this.add(t):this.remove(t),this}}var g;function m(t,e,n){const{width:i,height:o,position:s,display:l}=t.style;t.style.position=\"absolute\",t.style.display=\"\",t.style.width=null!=e.width&&e.width!=1/0?`${e.width}px`:\"auto\",t.style.height=null!=e.height&&e.height!=1/0?`${e.height}px`:\"auto\";try{return n()}finally{t.style.position=s,t.style.display=l,t.style.width=i,t.style.height=o}}n.ClassList=p,p.__name__=\"ClassList\",n.classes=function(t){return new p(t)},n.toggle_attribute=function(t,e,n){null==n&&(n=!t.hasAttribute(e)),n?t.setAttribute(e,\"true\"):t.removeAttribute(e)},(g=n.Keys||(n.Keys={}))[g.Backspace=8]=\"Backspace\",g[g.Tab=9]=\"Tab\",g[g.Enter=13]=\"Enter\",g[g.Esc=27]=\"Esc\",g[g.PageUp=33]=\"PageUp\",g[g.PageDown=34]=\"PageDown\",g[g.Left=37]=\"Left\",g[g.Up=38]=\"Up\",g[g.Right=39]=\"Right\",g[g.Down=40]=\"Down\",g[g.Delete=46]=\"Delete\",n.undisplayed=function(t,e){const{display:n}=t.style;t.style.display=\"none\";try{return e()}finally{t.style.display=n}},n.unsized=function(t,e){return m(t,{},e)},n.sized=m;class y{constructor(t){this.root=t,this.known=new Set,this.style=n.style({type:\"text/css\"}),c(t,this.style)}append(t){this.known.has(t)||(this.style.appendChild(document.createTextNode(t)),this.known.add(t))}}n.StyleSheet=y,y.__name__=\"StyleSheet\",n.stylesheet=new y(document.head),n.dom_ready=async function(){if(\"loading\"==document.readyState)return new Promise(((t,e)=>{document.addEventListener(\"DOMContentLoaded\",(()=>t()),{once:!0})}))}},\n", " function _(o,i,t,e,r){e(),t.root=\"bk-root\",t.default=\".bk-root{position:relative;width:auto;height:auto;box-sizing:border-box;font-family:Helvetica, Arial, sans-serif;font-size:13px;}.bk-root .bk,.bk-root .bk:before,.bk-root .bk:after{box-sizing:inherit;margin:0;border:0;padding:0;background-image:none;font-family:inherit;font-size:100%;line-height:1.42857143;}.bk-root pre.bk{font-family:Courier, monospace;}\"},\n", " function _(e,t,r,a,c){a();const l=e(1),n=e(46);c(\"Line\",n.Line),c(\"LineScalar\",n.LineScalar),c(\"LineVector\",n.LineVector);const i=e(49);c(\"Fill\",i.Fill),c(\"FillScalar\",i.FillScalar),c(\"FillVector\",i.FillVector);const s=e(50);c(\"Text\",s.Text),c(\"TextScalar\",s.TextScalar),c(\"TextVector\",s.TextVector);const o=e(51);c(\"Hatch\",o.Hatch),c(\"HatchScalar\",o.HatchScalar),c(\"HatchVector\",o.HatchVector);const u=l.__importStar(e(48)),V=e(47);c(\"VisualProperties\",V.VisualProperties),c(\"VisualUniforms\",V.VisualUniforms);class h{constructor(e){this._visuals=[];for(const[t,r]of e.model._mixins){const a=(()=>{switch(r){case u.Line:return new n.Line(e,t);case u.LineScalar:return new n.LineScalar(e,t);case u.LineVector:return new n.LineVector(e,t);case u.Fill:return new i.Fill(e,t);case u.FillScalar:return new i.FillScalar(e,t);case u.FillVector:return new i.FillVector(e,t);case u.Text:return new s.Text(e,t);case u.TextScalar:return new s.TextScalar(e,t);case u.TextVector:return new s.TextVector(e,t);case u.Hatch:return new o.Hatch(e,t);case u.HatchScalar:return new o.HatchScalar(e,t);case u.HatchVector:return new o.HatchVector(e,t);default:throw new Error(\"unknown visual\")}})();this._visuals.push(a),Object.defineProperty(this,t+a.type,{get:()=>a,configurable:!1,enumerable:!0})}}*[Symbol.iterator](){yield*this._visuals}}r.Visuals=h,h.__name__=\"Visuals\"},\n", " function _(e,t,i,l,s){l();const n=e(1),a=e(47),o=n.__importStar(e(48)),r=e(22),_=e(8);function h(e){if(_.isArray(e))return e;switch(e){case\"solid\":return[];case\"dashed\":return[6];case\"dotted\":return[2,4];case\"dotdash\":return[2,4,6,4];case\"dashdot\":return[6,4,2,4];default:return e.split(\" \").map(Number).filter(_.isInteger)}}i.resolve_line_dash=h;class c extends a.VisualProperties{get doit(){const e=this.line_color.get_value(),t=this.line_alpha.get_value(),i=this.line_width.get_value();return!(null==e||0==t||0==i)}set_value(e){const t=this.line_color.get_value(),i=this.line_alpha.get_value();e.strokeStyle=r.color2css(t,i),e.lineWidth=this.line_width.get_value(),e.lineJoin=this.line_join.get_value(),e.lineCap=this.line_cap.get_value(),e.lineDash=h(this.line_dash.get_value()),e.lineDashOffset=this.line_dash_offset.get_value()}}i.Line=c,c.__name__=\"Line\";class u extends a.VisualUniforms{get doit(){const e=this.line_color.value,t=this.line_alpha.value,i=this.line_width.value;return!(0==e||0==t||0==i)}set_value(e){const t=this.line_color.value,i=this.line_alpha.value;e.strokeStyle=r.color2css(t,i),e.lineWidth=this.line_width.value,e.lineJoin=this.line_join.value,e.lineCap=this.line_cap.value,e.lineDash=h(this.line_dash.value),e.lineDashOffset=this.line_dash_offset.value}}i.LineScalar=u,u.__name__=\"LineScalar\";class d extends a.VisualUniforms{get doit(){const{line_color:e}=this;if(e.is_Scalar()&&0==e.value)return!1;const{line_alpha:t}=this;if(t.is_Scalar()&&0==t.value)return!1;const{line_width:i}=this;return!i.is_Scalar()||0!=i.value}set_vectorize(e,t){const i=this.line_color.get(t),l=this.line_alpha.get(t),s=this.line_width.get(t),n=this.line_join.get(t),a=this.line_cap.get(t),o=this.line_dash.get(t),_=this.line_dash_offset.get(t);e.strokeStyle=r.color2css(i,l),e.lineWidth=s,e.lineJoin=n,e.lineCap=a,e.lineDash=h(o),e.lineDashOffset=_}}i.LineVector=d,d.__name__=\"LineVector\",c.prototype.type=\"line\",c.prototype.attrs=Object.keys(o.Line),u.prototype.type=\"line\",u.prototype.attrs=Object.keys(o.LineScalar),d.prototype.type=\"line\",d.prototype.attrs=Object.keys(o.LineVector)},\n", " function _(t,s,o,i,r){i();class e{constructor(t,s=\"\"){this.obj=t,this.prefix=s;const o=this;this._props=[];for(const i of this.attrs){const r=t.model.properties[s+i];r.change.connect((()=>this.update())),o[i]=r,this._props.push(r)}this.update()}*[Symbol.iterator](){yield*this._props}update(){}}o.VisualProperties=e,e.__name__=\"VisualProperties\";class p{constructor(t,s=\"\"){this.obj=t,this.prefix=s;for(const o of this.attrs)Object.defineProperty(this,o,{get:()=>t[s+o]})}*[Symbol.iterator](){for(const t of this.attrs)yield this.obj.model.properties[this.prefix+t]}update(){}}o.VisualUniforms=p,p.__name__=\"VisualUniforms\"},\n", " function _(e,l,t,a,c){a();const r=e(1),o=r.__importStar(e(18)),n=e(20),i=r.__importStar(e(21)),_=e(13);t.Line={line_color:[i.Nullable(i.Color),\"black\"],line_alpha:[i.Alpha,1],line_width:[i.Number,1],line_join:[n.LineJoin,\"bevel\"],line_cap:[n.LineCap,\"butt\"],line_dash:[i.Or(n.LineDash,i.Array(i.Number)),[]],line_dash_offset:[i.Number,0]},t.Fill={fill_color:[i.Nullable(i.Color),\"gray\"],fill_alpha:[i.Alpha,1]},t.Hatch={hatch_color:[i.Nullable(i.Color),\"black\"],hatch_alpha:[i.Alpha,1],hatch_scale:[i.Number,12],hatch_pattern:[i.Nullable(i.Or(n.HatchPatternType,i.String)),null],hatch_weight:[i.Number,1],hatch_extra:[i.Dict(i.AnyRef()),{}]},t.Text={text_color:[i.Nullable(i.Color),\"#444444\"],text_alpha:[i.Alpha,1],text_font:[o.Font,\"helvetica\"],text_font_size:[i.FontSize,\"16px\"],text_font_style:[n.FontStyle,\"normal\"],text_align:[n.TextAlign,\"left\"],text_baseline:[n.TextBaseline,\"bottom\"],text_line_height:[i.Number,1.2]},t.LineScalar={line_color:[o.ColorScalar,\"black\"],line_alpha:[o.NumberScalar,1],line_width:[o.NumberScalar,1],line_join:[o.LineJoinScalar,\"bevel\"],line_cap:[o.LineCapScalar,\"butt\"],line_dash:[o.LineDashScalar,[]],line_dash_offset:[o.NumberScalar,0]},t.FillScalar={fill_color:[o.ColorScalar,\"gray\"],fill_alpha:[o.NumberScalar,1]},t.HatchScalar={hatch_color:[o.ColorScalar,\"black\"],hatch_alpha:[o.NumberScalar,1],hatch_scale:[o.NumberScalar,12],hatch_pattern:[o.NullStringScalar,null],hatch_weight:[o.NumberScalar,1],hatch_extra:[o.AnyScalar,{}]},t.TextScalar={text_color:[o.ColorScalar,\"#444444\"],text_alpha:[o.NumberScalar,1],text_font:[o.FontScalar,\"helvetica\"],text_font_size:[o.FontSizeScalar,\"16px\"],text_font_style:[o.FontStyleScalar,\"normal\"],text_align:[o.TextAlignScalar,\"left\"],text_baseline:[o.TextBaselineScalar,\"bottom\"],text_line_height:[o.NumberScalar,1.2]},t.LineVector={line_color:[o.ColorSpec,\"black\"],line_alpha:[o.NumberSpec,1],line_width:[o.NumberSpec,1],line_join:[o.LineJoinSpec,\"bevel\"],line_cap:[o.LineCapSpec,\"butt\"],line_dash:[o.LineDashSpec,[]],line_dash_offset:[o.NumberSpec,0]},t.FillVector={fill_color:[o.ColorSpec,\"gray\"],fill_alpha:[o.NumberSpec,1]},t.HatchVector={hatch_color:[o.ColorSpec,\"black\"],hatch_alpha:[o.NumberSpec,1],hatch_scale:[o.NumberSpec,12],hatch_pattern:[o.NullStringSpec,null],hatch_weight:[o.NumberSpec,1],hatch_extra:[o.AnyScalar,{}]},t.TextVector={text_color:[o.ColorSpec,\"#444444\"],text_alpha:[o.NumberSpec,1],text_font:[o.FontSpec,\"helvetica\"],text_font_size:[o.FontSizeSpec,\"16px\"],text_font_style:[o.FontStyleSpec,\"normal\"],text_align:[o.TextAlignSpec,\"left\"],text_baseline:[o.TextBaselineSpec,\"bottom\"],text_line_height:[o.NumberSpec,1.2]},t.attrs_of=function(e,l,t,a=!1){const c={};for(const r of _.keys(t)){const t=`${l}${r}`,o=e[t];c[a?t:r]=o}return c}},\n", " function _(l,t,e,i,s){i();const o=l(1),a=l(47),r=o.__importStar(l(48)),c=l(22);class _ extends a.VisualProperties{get doit(){const l=this.fill_color.get_value(),t=this.fill_alpha.get_value();return!(null==l||0==t)}set_value(l){const t=this.fill_color.get_value(),e=this.fill_alpha.get_value();l.fillStyle=c.color2css(t,e)}}e.Fill=_,_.__name__=\"Fill\";class n extends a.VisualUniforms{get doit(){const l=this.fill_color.value,t=this.fill_alpha.value;return!(0==l||0==t)}set_value(l){const t=this.fill_color.value,e=this.fill_alpha.value;l.fillStyle=c.color2css(t,e)}}e.FillScalar=n,n.__name__=\"FillScalar\";class p extends a.VisualUniforms{get doit(){const{fill_color:l}=this;if(l.is_Scalar()&&0==l.value)return!1;const{fill_alpha:t}=this;return!t.is_Scalar()||0!=t.value}set_vectorize(l,t){const e=this.fill_color.get(t),i=this.fill_alpha.get(t);l.fillStyle=c.color2css(e,i)}}e.FillVector=p,p.__name__=\"FillVector\",_.prototype.type=\"fill\",_.prototype.attrs=Object.keys(r.Fill),n.prototype.type=\"fill\",n.prototype.attrs=Object.keys(r.FillScalar),p.prototype.type=\"fill\",p.prototype.attrs=Object.keys(r.FillVector)},\n", " function _(t,e,s,l,a){l();const o=t(1),_=t(47),i=o.__importStar(t(48)),n=t(22);class x extends _.VisualProperties{get doit(){const t=this.text_color.get_value(),e=this.text_alpha.get_value();return!(null==t||0==e)}set_value(t){const e=this.text_color.get_value(),s=this.text_alpha.get_value();t.fillStyle=n.color2css(e,s),t.font=this.font_value(),t.textAlign=this.text_align.get_value(),t.textBaseline=this.text_baseline.get_value()}font_value(){return`${this.text_font_style.get_value()} ${this.text_font_size.get_value()} ${this.text_font.get_value()}`}}s.Text=x,x.__name__=\"Text\";class r extends _.VisualUniforms{get doit(){const t=this.text_color.value,e=this.text_alpha.value;return!(0==t||0==e)}set_value(t){const e=this.text_color.value,s=this.text_alpha.value,l=this.font_value(),a=this.text_align.value,o=this.text_baseline.value;t.fillStyle=n.color2css(e,s),t.font=l,t.textAlign=a,t.textBaseline=o}font_value(){return`${this.text_font_style.value} ${this.text_font_size.value} ${this.text_font.value}`}}s.TextScalar=r,r.__name__=\"TextScalar\";class u extends _.VisualUniforms{get doit(){const{text_color:t}=this;if(t.is_Scalar()&&0==t.value)return!1;const{text_alpha:e}=this;return!e.is_Scalar()||0!=e.value}set_vectorize(t,e){const s=this.text_color.get(e),l=this.text_alpha.get(e),a=this.font_value(e),o=this.text_align.get(e),_=this.text_baseline.get(e);t.fillStyle=n.color2css(s,l),t.font=a,t.textAlign=o,t.textBaseline=_}font_value(t){return`${this.text_font_style.get(t)} ${this.text_font_size.get(t)} ${this.text_font.get(t)}`}}s.TextVector=u,u.__name__=\"TextVector\",x.prototype.type=\"text\",x.prototype.attrs=Object.keys(i.Text),r.prototype.type=\"text\",r.prototype.attrs=Object.keys(i.TextScalar),u.prototype.type=\"text\",u.prototype.attrs=Object.keys(i.TextVector)},\n", " function _(t,e,a,h,r){h();const i=t(1),s=t(47),c=t(52),n=i.__importStar(t(18)),_=i.__importStar(t(48));class l extends s.VisualProperties{constructor(){super(...arguments),this._update_iteration=0}update(){if(this._update_iteration++,this._hatch_image=null,!this.doit)return;const t=this.hatch_color.get_value(),e=this.hatch_alpha.get_value(),a=this.hatch_scale.get_value(),h=this.hatch_pattern.get_value(),r=this.hatch_weight.get_value(),i=t=>{this._hatch_image=t},s=this.hatch_extra.get_value()[h];if(null!=s){const h=s.get_pattern(t,e,a,r);if(h instanceof Promise){const{_update_iteration:t}=this;h.then((e=>{this._update_iteration==t&&(i(e),this.obj.request_render())}))}else i(h)}else{const s=this.obj.canvas.create_layer(),n=c.get_pattern(s,h,t,e,a,r);i(n)}}get doit(){const t=this.hatch_color.get_value(),e=this.hatch_alpha.get_value(),a=this.hatch_pattern.get_value();return!(null==t||0==e||\" \"==a||\"blank\"==a||null==a)}set_value(t){const e=this.pattern(t);t.fillStyle=null!=e?e:\"transparent\"}pattern(t){const e=this._hatch_image;return null==e?null:t.createPattern(e,this.repetition())}repetition(){const t=this.hatch_pattern.get_value(),e=this.hatch_extra.get_value()[t];if(null==e)return\"repeat\";switch(e.repetition){case\"repeat\":return\"repeat\";case\"repeat_x\":return\"repeat-x\";case\"repeat_y\":return\"repeat-y\";case\"no_repeat\":return\"no-repeat\"}}}a.Hatch=l,l.__name__=\"Hatch\";class o extends s.VisualUniforms{constructor(){super(...arguments),this._static_doit=!1,this._update_iteration=0}_compute_static_doit(){const t=this.hatch_color.value,e=this.hatch_alpha.value,a=this.hatch_pattern.value;return!(null==t||0==e||\" \"==a||\"blank\"==a||null==a)}update(){this._update_iteration++;const t=this.hatch_color.length;if(this._hatch_image=new n.UniformScalar(null,t),this._static_doit=this._compute_static_doit(),!this._static_doit)return;const e=this.hatch_color.value,a=this.hatch_alpha.value,h=this.hatch_scale.value,r=this.hatch_pattern.value,i=this.hatch_weight.value,s=e=>{this._hatch_image=new n.UniformScalar(e,t)},_=this.hatch_extra.value[r];if(null!=_){const t=_.get_pattern(e,a,h,i);if(t instanceof Promise){const{_update_iteration:e}=this;t.then((t=>{this._update_iteration==e&&(s(t),this.obj.request_render())}))}else s(t)}else{const t=this.obj.canvas.create_layer(),n=c.get_pattern(t,r,e,a,h,i);s(n)}}get doit(){return this._static_doit}set_value(t){var e;t.fillStyle=null!==(e=this.pattern(t))&&void 0!==e?e:\"transparent\"}pattern(t){const e=this._hatch_image.value;return null==e?null:t.createPattern(e,this.repetition())}repetition(){const t=this.hatch_pattern.value,e=this.hatch_extra.value[t];if(null==e)return\"repeat\";switch(e.repetition){case\"repeat\":return\"repeat\";case\"repeat_x\":return\"repeat-x\";case\"repeat_y\":return\"repeat-y\";case\"no_repeat\":return\"no-repeat\"}}}a.HatchScalar=o,o.__name__=\"HatchScalar\";class u extends s.VisualUniforms{constructor(){super(...arguments),this._static_doit=!1,this._update_iteration=0}_compute_static_doit(){const{hatch_color:t}=this;if(t.is_Scalar()&&0==t.value)return!1;const{hatch_alpha:e}=this;if(e.is_Scalar()&&0==e.value)return!1;const{hatch_pattern:a}=this;if(a.is_Scalar()){const t=a.value;if(\" \"==t||\"blank\"==t||null==t)return!1}return!0}update(){this._update_iteration++;const t=this.hatch_color.length;if(this._hatch_image=new n.UniformScalar(null,t),this._static_doit=this._compute_static_doit(),!this._static_doit)return;const e=(t,e,a,h,r,i)=>{const s=this.hatch_extra.value[t];if(null!=s){const t=s.get_pattern(e,a,h,r);if(t instanceof Promise){const{_update_iteration:e}=this;t.then((t=>{this._update_iteration==e&&(i(t),this.obj.request_render())}))}else i(t)}else{const s=this.obj.canvas.create_layer(),n=c.get_pattern(s,t,e,a,h,r);i(n)}};if(this.hatch_color.is_Scalar()&&this.hatch_alpha.is_Scalar()&&this.hatch_scale.is_Scalar()&&this.hatch_pattern.is_Scalar()&&this.hatch_weight.is_Scalar()){const a=this.hatch_color.value,h=this.hatch_alpha.value,r=this.hatch_scale.value;e(this.hatch_pattern.value,a,h,r,this.hatch_weight.value,(e=>{this._hatch_image=new n.UniformScalar(e,t)}))}else{const a=new Array(t);a.fill(null),this._hatch_image=new n.UniformVector(a);for(let h=0;h<t;h++){const t=this.hatch_color.get(h),r=this.hatch_alpha.get(h),i=this.hatch_scale.get(h);e(this.hatch_pattern.get(h),t,r,i,this.hatch_weight.get(h),(t=>{a[h]=t}))}}}get doit(){return this._static_doit}set_vectorize(t,e){var a;t.fillStyle=null!==(a=this.pattern(t,e))&&void 0!==a?a:\"transparent\"}pattern(t,e){const a=this._hatch_image.get(e);return null==a?null:t.createPattern(a,this.repetition(e))}repetition(t){const e=this.hatch_pattern.get(t),a=this.hatch_extra.value[e];if(null==a)return\"repeat\";switch(a.repetition){case\"repeat\":return\"repeat\";case\"repeat_x\":return\"repeat-x\";case\"repeat_y\":return\"repeat-y\";case\"no_repeat\":return\"no-repeat\"}}}a.HatchVector=u,u.__name__=\"HatchVector\",l.prototype.type=\"hatch\",l.prototype.attrs=Object.keys(_.Hatch),o.prototype.type=\"hatch\",o.prototype.attrs=Object.keys(_.HatchScalar),u.prototype.type=\"hatch\",u.prototype.attrs=Object.keys(_.HatchVector)},\n", " function _(e,o,a,s,r){s();const i=e(22);function l(e,o,a){e.moveTo(0,a+.5),e.lineTo(o,a+.5),e.stroke()}function n(e,o,a){e.moveTo(a+.5,0),e.lineTo(a+.5,o),e.stroke()}function t(e,o){e.moveTo(0,o),e.lineTo(o,0),e.stroke(),e.moveTo(0,0),e.lineTo(o,o),e.stroke()}a.hatch_aliases={\" \":\"blank\",\".\":\"dot\",o:\"ring\",\"-\":\"horizontal_line\",\"|\":\"vertical_line\",\"+\":\"cross\",'\"':\"horizontal_dash\",\":\":\"vertical_dash\",\"@\":\"spiral\",\"/\":\"right_diagonal_line\",\"\\\\\":\"left_diagonal_line\",x:\"diagonal_cross\",\",\":\"right_diagonal_dash\",\"`\":\"left_diagonal_dash\",v:\"horizontal_wave\",\">\":\"vertical_wave\",\"*\":\"criss_cross\"},a.get_pattern=function(e,o,s,r,c,k){return e.resize(c,c),e.prepare(),function(e,o,s,r,c,k){var _;const T=c,v=T/2,h=v/2,d=i.color2css(s,r);switch(e.strokeStyle=d,e.fillStyle=d,e.lineCap=\"square\",e.lineWidth=k,null!==(_=a.hatch_aliases[o])&&void 0!==_?_:o){case\"blank\":break;case\"dot\":e.arc(v,v,v/2,0,2*Math.PI,!0),e.fill();break;case\"ring\":e.arc(v,v,v/2,0,2*Math.PI,!0),e.stroke();break;case\"horizontal_line\":l(e,T,v);break;case\"vertical_line\":n(e,T,v);break;case\"cross\":l(e,T,v),n(e,T,v);break;case\"horizontal_dash\":l(e,v,v);break;case\"vertical_dash\":n(e,v,v);break;case\"spiral\":{const o=T/30;e.moveTo(v,v);for(let a=0;a<360;a++){const s=.1*a,r=v+o*s*Math.cos(s),i=v+o*s*Math.sin(s);e.lineTo(r,i)}e.stroke();break}case\"right_diagonal_line\":e.moveTo(.5-h,T),e.lineTo(h+.5,0),e.stroke(),e.moveTo(h+.5,T),e.lineTo(3*h+.5,0),e.stroke(),e.moveTo(3*h+.5,T),e.lineTo(5*h+.5,0),e.stroke(),e.stroke();break;case\"left_diagonal_line\":e.moveTo(h+.5,T),e.lineTo(.5-h,0),e.stroke(),e.moveTo(3*h+.5,T),e.lineTo(h+.5,0),e.stroke(),e.moveTo(5*h+.5,T),e.lineTo(3*h+.5,0),e.stroke(),e.stroke();break;case\"diagonal_cross\":t(e,T);break;case\"right_diagonal_dash\":e.moveTo(h+.5,3*h+.5),e.lineTo(3*h+.5,h+.5),e.stroke();break;case\"left_diagonal_dash\":e.moveTo(h+.5,h+.5),e.lineTo(3*h+.5,3*h+.5),e.stroke();break;case\"horizontal_wave\":e.moveTo(0,h),e.lineTo(v,3*h),e.lineTo(T,h),e.stroke();break;case\"vertical_wave\":e.moveTo(h,0),e.lineTo(3*h,v),e.lineTo(h,T),e.stroke();break;case\"criss_cross\":t(e,T),l(e,T,v),n(e,T,v)}}(e.ctx,o,s,r,c,k),e.canvas}},\n", " function _(e,t,s,n,c){n();const a=e(14),i=e(8),r=e(13),l=e(19);class o extends a.HasProps{constructor(e){super(e)}get is_syncable(){return this.syncable}static init_Model(){this.define((({Any:e,Unknown:t,Boolean:s,String:n,Array:c,Dict:a,Nullable:i})=>({tags:[c(t),[]],name:[i(n),null],js_property_callbacks:[a(c(e)),{}],js_event_callbacks:[a(c(e)),{}],subscribed_events:[c(n),[]],syncable:[s,!0]})))}initialize(){super.initialize(),this._js_callbacks=new Map}connect_signals(){super.connect_signals(),this._update_property_callbacks(),this.connect(this.properties.js_property_callbacks.change,(()=>this._update_property_callbacks())),this.connect(this.properties.js_event_callbacks.change,(()=>this._update_event_callbacks())),this.connect(this.properties.subscribed_events.change,(()=>this._update_event_callbacks()))}_process_event(e){var t;for(const s of null!==(t=this.js_event_callbacks[e.event_name])&&void 0!==t?t:[])s.execute(e);null!=this.document&&this.subscribed_events.some((t=>t==e.event_name))&&this.document.event_manager.send_event(e)}trigger_event(e){null!=this.document&&(e.origin=this,this.document.event_manager.trigger(e))}_update_event_callbacks(){null!=this.document?this.document.event_manager.subscribed_models.add(this):l.logger.warn(\"WARNING: Document not defined for updating event callbacks\")}_update_property_callbacks(){const e=e=>{const[t,s=null]=e.split(\":\");return null!=s?this.properties[s][t]:this[t]};for(const[t,s]of this._js_callbacks){const n=e(t);for(const e of s)this.disconnect(n,e)}this._js_callbacks.clear();for(const[t,s]of r.entries(this.js_property_callbacks)){const n=s.map((e=>()=>e.execute(this)));this._js_callbacks.set(t,n);const c=e(t);for(const e of n)this.connect(c,e)}}_doc_attached(){r.isEmpty(this.js_event_callbacks)&&0==this.subscribed_events.length||this._update_event_callbacks()}_doc_detached(){this.document.event_manager.subscribed_models.delete(this)}select(e){if(i.isString(e))return[...this.references()].filter((t=>t instanceof o&&t.name===e));if(e.prototype instanceof a.HasProps)return[...this.references()].filter((t=>t instanceof e));throw new Error(\"invalid selector\")}select_one(e){const t=this.select(e);switch(t.length){case 0:return null;case 1:return t[0];default:throw new Error(\"found more than one object matching given selector\")}}}s.Model=o,o.__name__=\"Model\",o.init_Model()},\n", " function _(s,e,_,t,a){t();class r{constructor(s,e){this.x_scale=s,this.y_scale=e,this.x_range=this.x_scale.source_range,this.y_range=this.y_scale.source_range,this.ranges=[this.x_range,this.y_range],this.scales=[this.x_scale,this.y_scale]}map_to_screen(s,e){return[this.x_scale.v_compute(s),this.y_scale.v_compute(e)]}map_from_screen(s,e){return[this.x_scale.v_invert(s),this.y_scale.v_invert(e)]}}_.CoordinateTransform=r,r.__name__=\"CoordinateTransform\"},\n", " function _(t,e,s,a,i){a();const n=t(1),_=t(56),r=t(133),o=t(48),l=t(20),d=t(24),h=t(122),c=n.__importStar(t(18)),u=t(10);class v extends _.DataAnnotationView{async lazy_initialize(){await super.lazy_initialize();const{start:t,end:e}=this.model;null!=t&&(this.start=await h.build_view(t,{parent:this})),null!=e&&(this.end=await h.build_view(e,{parent:this}))}set_data(t){var e,s;super.set_data(t),null===(e=this.start)||void 0===e||e.set_data(t),null===(s=this.end)||void 0===s||s.set_data(t)}remove(){var t,e;null===(t=this.start)||void 0===t||t.remove(),null===(e=this.end)||void 0===e||e.remove(),super.remove()}map_data(){const{frame:t}=this.plot_view;\"data\"==this.model.start_units?(this._sx_start=this.coordinates.x_scale.v_compute(this._x_start),this._sy_start=this.coordinates.y_scale.v_compute(this._y_start)):(this._sx_start=t.bbox.xview.v_compute(this._x_start),this._sy_start=t.bbox.yview.v_compute(this._y_start)),\"data\"==this.model.end_units?(this._sx_end=this.coordinates.x_scale.v_compute(this._x_end),this._sy_end=this.coordinates.y_scale.v_compute(this._y_end)):(this._sx_end=t.bbox.xview.v_compute(this._x_end),this._sy_end=t.bbox.yview.v_compute(this._y_end));const{_sx_start:e,_sy_start:s,_sx_end:a,_sy_end:i}=this,n=e.length,_=this._angles=new d.ScreenArray(n);for(let t=0;t<n;t++)_[t]=Math.PI/2+u.atan2([e[t],s[t]],[a[t],i[t]])}paint(t){const{start:e,end:s}=this,{_sx_start:a,_sy_start:i,_sx_end:n,_sy_end:_,_angles:r}=this,{x:o,y:l,width:d,height:h}=this.plot_view.frame.bbox;for(let c=0,u=a.length;c<u;c++)null!=s&&(t.save(),t.translate(n[c],_[c]),t.rotate(r[c]),s.render(t,c),t.restore()),null!=e&&(t.save(),t.translate(a[c],i[c]),t.rotate(r[c]+Math.PI),e.render(t,c),t.restore()),this.visuals.line.doit&&(t.save(),null==e&&null==s||(t.beginPath(),t.rect(o,l,d,h),null!=s&&(t.save(),t.translate(n[c],_[c]),t.rotate(r[c]),s.clip(t,c),t.restore()),null!=e&&(t.save(),t.translate(a[c],i[c]),t.rotate(r[c]+Math.PI),e.clip(t,c),t.restore()),t.closePath(),t.clip()),this.visuals.line.set_vectorize(t,c),t.beginPath(),t.moveTo(a[c],i[c]),t.lineTo(n[c],_[c]),t.stroke(),t.restore())}}s.ArrowView=v,v.__name__=\"ArrowView\";class p extends _.DataAnnotation{constructor(t){super(t)}static init_Arrow(){this.prototype.default_view=v,this.mixins(o.LineVector),this.define((({Ref:t,Nullable:e})=>({x_start:[c.XCoordinateSpec,{field:\"x_start\"}],y_start:[c.YCoordinateSpec,{field:\"y_start\"}],start_units:[l.SpatialUnits,\"data\"],start:[e(t(r.ArrowHead)),null],x_end:[c.XCoordinateSpec,{field:\"x_end\"}],y_end:[c.YCoordinateSpec,{field:\"y_end\"}],end_units:[l.SpatialUnits,\"data\"],end:[e(t(r.ArrowHead)),()=>new r.OpenHead]})))}}s.Arrow=p,p.__name__=\"Arrow\",p.init_Arrow()},\n", " function _(t,n,s,a,e){a();const i=t(1),o=t(40),c=t(57),_=t(130),r=t(65),l=i.__importStar(t(18));class h extends o.AnnotationView{constructor(){super(...arguments),this._initial_set_data=!1}connect_signals(){super.connect_signals();const t=()=>{this.set_data(this.model.source),this.request_render()};this.connect(this.model.change,t),this.connect(this.model.source.streaming,t),this.connect(this.model.source.patching,t),this.connect(this.model.source.change,t)}set_data(t){const n=this;for(const s of this.model)if(s instanceof l.VectorSpec||s instanceof l.ScalarSpec)if(s instanceof l.BaseCoordinateSpec){const a=s.array(t);n[`_${s.attr}`]=a}else{const a=s.uniform(t);n[`${s.attr}`]=a}this.plot_model.use_map&&(null!=n._x&&r.inplace.project_xy(n._x,n._y),null!=n._xs&&r.inplace.project_xsys(n._xs,n._ys));for(const t of this.visuals)t.update()}_render(){this._initial_set_data||(this.set_data(this.model.source),this._initial_set_data=!0),this.map_data(),this.paint(this.layer.ctx)}}s.DataAnnotationView=h,h.__name__=\"DataAnnotationView\";class u extends o.Annotation{constructor(t){super(t)}static init_DataAnnotation(){this.define((({Ref:t})=>({source:[t(c.ColumnarDataSource),()=>new _.ColumnDataSource]})))}}s.DataAnnotation=u,u.__name__=\"DataAnnotation\",u.init_DataAnnotation()},\n", " function _(t,e,n,a,i){a();const s=t(58),r=t(15),l=t(19),o=t(60),c=t(8),u=t(9),h=t(13),g=t(59),d=t(129),_=t(29);class m extends s.DataSource{constructor(t){super(t)}get_array(t){let e=this.data[t];return null==e?this.data[t]=e=[]:c.isArray(e)||(this.data[t]=e=Array.from(e)),e}static init_ColumnarDataSource(){this.define((({Ref:t})=>({selection_policy:[t(d.SelectionPolicy),()=>new d.UnionRenderers]}))),this.internal((({AnyRef:t})=>({selection_manager:[t(),t=>new o.SelectionManager({source:t})],inspected:[t(),()=>new g.Selection]})))}initialize(){super.initialize(),this._select=new r.Signal0(this,\"select\"),this.inspect=new r.Signal(this,\"inspect\"),this.streaming=new r.Signal0(this,\"streaming\"),this.patching=new r.Signal(this,\"patching\")}get_column(t){const e=this.data[t];return null!=e?e:null}columns(){return h.keys(this.data)}get_length(t=!0){const e=u.uniq(h.values(this.data).map((t=>_.is_NDArray(t)?t.shape[0]:t.length)));switch(e.length){case 0:return null;case 1:return e[0];default:{const n=\"data source has columns of inconsistent lengths\";if(t)return l.logger.warn(n),e.sort()[0];throw new Error(n)}}}get length(){var t;return null!==(t=this.get_length())&&void 0!==t?t:0}clear(){const t={};for(const e of this.columns())t[e]=new this.data[e].constructor(0);this.data=t}}n.ColumnarDataSource=m,m.__name__=\"ColumnarDataSource\",m.init_ColumnarDataSource()},\n", " function _(e,t,c,n,a){n();const o=e(53),i=e(59);class s extends o.Model{constructor(e){super(e)}static init_DataSource(){this.define((({Ref:e})=>({selected:[e(i.Selection),()=>new i.Selection]})))}}c.DataSource=s,s.__name__=\"DataSource\",s.init_DataSource()},\n", " function _(i,e,s,t,n){t();const l=i(53),c=i(9),h=i(13);class d extends l.Model{constructor(i){super(i)}get_view(){return this.view}static init_Selection(){this.define((({Int:i,Array:e,Dict:s})=>({indices:[e(i),[]],line_indices:[e(i),[]],multiline_indices:[s(e(i)),{}]}))),this.internal((({Int:i,Array:e,AnyRef:s,Struct:t,Nullable:n})=>({selected_glyphs:[e(s()),[]],view:[n(s()),null],image_indices:[e(t({index:i,dim1:i,dim2:i,flat_index:i})),[]]})))}get selected_glyph(){return this.selected_glyphs.length>0?this.selected_glyphs[0]:null}add_to_selected_glyphs(i){this.selected_glyphs.push(i)}update(i,e=!0,s=\"replace\"){switch(s){case\"replace\":this.indices=i.indices,this.line_indices=i.line_indices,this.selected_glyphs=i.selected_glyphs,this.view=i.view,this.multiline_indices=i.multiline_indices,this.image_indices=i.image_indices;break;case\"append\":this.update_through_union(i);break;case\"intersect\":this.update_through_intersection(i);break;case\"subtract\":this.update_through_subtraction(i)}}clear(){this.indices=[],this.line_indices=[],this.multiline_indices={},this.view=null,this.selected_glyphs=[]}is_empty(){return 0==this.indices.length&&0==this.line_indices.length&&0==this.image_indices.length}update_through_union(i){this.indices=c.union(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}update_through_intersection(i){this.indices=c.intersection(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}update_through_subtraction(i){this.indices=c.difference(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}}s.Selection=d,d.__name__=\"Selection\",d.init_Selection()},\n", " function _(e,t,s,n,i){n();const o=e(14),c=e(59),r=e(61),l=e(123);class p extends o.HasProps{constructor(e){super(e),this.inspectors=new Map}static init_SelectionManager(){this.internal((({AnyRef:e})=>({source:[e()]})))}select(e,t,s,n=\"replace\"){const i=[],o=[];for(const t of e)t instanceof r.GlyphRendererView?i.push(t):t instanceof l.GraphRendererView&&o.push(t);let c=!1;for(const e of o){const i=e.model.selection_policy.hit_test(t,e);c=c||e.model.selection_policy.do_selection(i,e.model,s,n)}if(i.length>0){const e=this.source.selection_policy.hit_test(t,i);c=c||this.source.selection_policy.do_selection(e,this.source,s,n)}return c}inspect(e,t){let s=!1;if(e instanceof r.GlyphRendererView){const n=e.hit_test(t);if(null!=n){s=!n.is_empty();const i=this.get_or_create_inspector(e.model);i.update(n,!0,\"replace\"),this.source.setv({inspected:i},{silent:!0}),this.source.inspect.emit([e.model,{geometry:t}])}}else if(e instanceof l.GraphRendererView){const n=e.model.inspection_policy.hit_test(t,e);s=s||e.model.inspection_policy.do_inspection(n,t,e,!1,\"replace\")}return s}clear(e){this.source.selected.clear(),null!=e&&this.get_or_create_inspector(e.model).clear()}get_or_create_inspector(e){let t=this.inspectors.get(e);return null==t&&(t=new c.Selection,this.inspectors.set(e,t)),t}}s.SelectionManager=p,p.__name__=\"SelectionManager\",p.init_SelectionManager()},\n", " function _(e,t,i,s,l){s();const h=e(62),n=e(63),o=e(116),a=e(117),c=e(119),d=e(98),_=e(57),r=e(120),p=e(24),g=e(12),u=e(9),y=e(13),m=e(122),v=e(104),f={fill:{},line:{}},w={fill:{fill_alpha:.3,fill_color:\"grey\"},line:{line_alpha:.3,line_color:\"grey\"}},b={fill:{fill_alpha:.2},line:{}};class V extends h.DataRendererView{get glyph_view(){return this.glyph}async lazy_initialize(){var e,t;await super.lazy_initialize();const i=this.model.glyph;this.glyph=await this.build_glyph_view(i);const s=\"fill\"in this.glyph.visuals,l=\"line\"in this.glyph.visuals,h=Object.assign({},i.attributes);function n(e){const t=y.clone(h);return s&&y.extend(t,e.fill),l&&y.extend(t,e.line),new i.constructor(t)}delete h.id;let{selection_glyph:o}=this.model;null==o?o=n({fill:{},line:{}}):\"auto\"==o&&(o=n(f)),this.selection_glyph=await this.build_glyph_view(o);let{nonselection_glyph:a}=this.model;null==a?a=n({fill:{},line:{}}):\"auto\"==a&&(a=n(b)),this.nonselection_glyph=await this.build_glyph_view(a);const{hover_glyph:c}=this.model;null!=c&&(this.hover_glyph=await this.build_glyph_view(c));const{muted_glyph:d}=this.model;null!=d&&(this.muted_glyph=await this.build_glyph_view(d));const _=n(w);this.decimated_glyph=await this.build_glyph_view(_),this.selection_glyph.set_base(this.glyph),this.nonselection_glyph.set_base(this.glyph),null===(e=this.hover_glyph)||void 0===e||e.set_base(this.glyph),null===(t=this.muted_glyph)||void 0===t||t.set_base(this.glyph),this.decimated_glyph.set_base(this.glyph),this.set_data()}async build_glyph_view(e){return m.build_view(e,{parent:this})}remove(){var e,t;this.glyph.remove(),this.selection_glyph.remove(),this.nonselection_glyph.remove(),null===(e=this.hover_glyph)||void 0===e||e.remove(),null===(t=this.muted_glyph)||void 0===t||t.remove(),this.decimated_glyph.remove(),super.remove()}connect_signals(){super.connect_signals();const e=()=>this.request_render(),t=()=>this.update_data();this.connect(this.model.change,e),this.connect(this.glyph.model.change,t),this.connect(this.selection_glyph.model.change,t),this.connect(this.nonselection_glyph.model.change,t),null!=this.hover_glyph&&this.connect(this.hover_glyph.model.change,t),null!=this.muted_glyph&&this.connect(this.muted_glyph.model.change,t),this.connect(this.decimated_glyph.model.change,t),this.connect(this.model.data_source.change,t),this.connect(this.model.data_source.streaming,t),this.connect(this.model.data_source.patching,(e=>this.update_data(e))),this.connect(this.model.data_source.selected.change,e),this.connect(this.model.data_source._select,e),null!=this.hover_glyph&&this.connect(this.model.data_source.inspect,e),this.connect(this.model.properties.view.change,t),this.connect(this.model.view.properties.indices.change,t),this.connect(this.model.view.properties.masked.change,(()=>this.set_visuals())),this.connect(this.model.properties.visible.change,(()=>this.plot_view.invalidate_dataranges=!0));const{x_ranges:i,y_ranges:s}=this.plot_view.frame;for(const[,e]of i)e instanceof v.FactorRange&&this.connect(e.change,t);for(const[,e]of s)e instanceof v.FactorRange&&this.connect(e.change,t);const{transformchange:l,exprchange:h}=this.model.glyph;this.connect(l,t),this.connect(h,t)}_update_masked_indices(){const e=this.glyph.mask_data();return this.model.view.masked=e,e}update_data(e){this.set_data(e),this.request_render()}set_data(e){const t=this.model.data_source;this.all_indices=this.model.view.indices;const{all_indices:i}=this;this.glyph.set_data(t,i,e),this.set_visuals(),this._update_masked_indices();const{lod_factor:s}=this.plot_model,l=this.all_indices.count;this.decimated=new p.Indices(l);for(let e=0;e<l;e+=s)this.decimated.set(e);this.plot_view.invalidate_dataranges=!0}set_visuals(){var e,t,i,s;const l=this.model.data_source,{all_indices:h}=this;this.glyph.set_visuals(l,h),this.decimated_glyph.set_visuals(l,h),null===(e=this.selection_glyph)||void 0===e||e.set_visuals(l,h),null===(t=this.nonselection_glyph)||void 0===t||t.set_visuals(l,h),null===(i=this.hover_glyph)||void 0===i||i.set_visuals(l,h),null===(s=this.muted_glyph)||void 0===s||s.set_visuals(l,h)}get has_webgl(){return this.glyph.has_webgl}_render(){const e=this.has_webgl;this.glyph.map_data();const t=[...this.all_indices];let i=[...this._update_masked_indices()];const{ctx:s}=this.layer;s.save();const{selected:l}=this.model.data_source;let h;h=!l||l.is_empty()?[]:this.glyph instanceof n.LineView&&l.selected_glyph===this.glyph.model?this.model.view.convert_indices_from_subset(i):l.indices;const{inspected:d}=this.model.data_source,_=new Set((()=>!d||d.is_empty()?[]:d.selected_glyph?this.model.view.convert_indices_from_subset(i):d.indices.length>0?d.indices:Object.keys(d.multiline_indices).map((e=>parseInt(e))))()),r=g.filter(i,(e=>_.has(t[e]))),{lod_threshold:p}=this.plot_model;let y,m,v;if(null!=this.model.document&&this.model.document.interactive_duration()>0&&!e&&null!=p&&t.length>p?(i=[...this.decimated],y=this.decimated_glyph,m=this.decimated_glyph,v=this.selection_glyph):(y=this.model.muted&&null!=this.muted_glyph?this.muted_glyph:this.glyph,m=this.nonselection_glyph,v=this.selection_glyph),null!=this.hover_glyph&&r.length&&(i=u.difference(i,r)),h.length){const e={};for(const t of h)e[t]=!0;const l=new Array,o=new Array;if(this.glyph instanceof n.LineView)for(const i of t)null!=e[i]?l.push(i):o.push(i);else for(const s of i)null!=e[t[s]]?l.push(s):o.push(s);m.render(s,o),v.render(s,l),null!=this.hover_glyph&&(this.glyph instanceof n.LineView?this.hover_glyph.render(s,this.model.view.convert_indices_from_subset(r)):this.hover_glyph.render(s,r))}else if(this.glyph instanceof n.LineView)this.hover_glyph&&r.length?this.hover_glyph.render(s,this.model.view.convert_indices_from_subset(r)):y.render(s,t);else if(this.glyph instanceof o.PatchView||this.glyph instanceof a.HAreaView||this.glyph instanceof c.VAreaView)if(0==d.selected_glyphs.length||null==this.hover_glyph)y.render(s,t);else for(const e of d.selected_glyphs)e==this.glyph.model&&this.hover_glyph.render(s,t);else y.render(s,i),this.hover_glyph&&r.length&&this.hover_glyph.render(s,r);s.restore()}draw_legend(e,t,i,s,l,h,n,o){0!=this.glyph.data_size&&(null==o&&(o=this.model.get_reference_point(h,n)),this.glyph.draw_legend_for_index(e,{x0:t,x1:i,y0:s,y1:l},o))}hit_test(e){if(!this.model.visible)return null;const t=this.glyph.hit_test(e);return null==t?null:this.model.view.convert_selection_from_subset(t)}}i.GlyphRendererView=V,V.__name__=\"GlyphRendererView\";class G extends h.DataRenderer{constructor(e){super(e)}static init_GlyphRenderer(){this.prototype.default_view=V,this.define((({Boolean:e,Auto:t,Or:i,Ref:s,Null:l,Nullable:h})=>({data_source:[s(_.ColumnarDataSource)],view:[s(r.CDSView),e=>new r.CDSView({source:e.data_source})],glyph:[s(d.Glyph)],hover_glyph:[h(s(d.Glyph)),null],nonselection_glyph:[i(s(d.Glyph),t,l),\"auto\"],selection_glyph:[i(s(d.Glyph),t,l),\"auto\"],muted_glyph:[h(s(d.Glyph)),null],muted:[e,!1]})))}initialize(){super.initialize(),this.view.source!=this.data_source&&(this.view.source=this.data_source,this.view.compute_indices())}get_reference_point(e,t){if(null!=e){const i=this.data_source.get_column(e);if(null!=i)for(const[e,s]of Object.entries(this.view.indices_map))if(i[parseInt(e)]==t)return s}return 0}get_selection_manager(){return this.data_source.selection_manager}}i.GlyphRenderer=G,G.__name__=\"GlyphRenderer\",G.init_GlyphRenderer()},\n", " function _(e,r,t,a,n){a();const s=e(41);class i extends s.RendererView{get xscale(){return this.coordinates.x_scale}get yscale(){return this.coordinates.y_scale}}t.DataRendererView=i,i.__name__=\"DataRendererView\";class _ extends s.Renderer{constructor(e){super(e)}static init_DataRenderer(){this.override({level:\"glyph\"})}get selection_manager(){return this.get_selection_manager()}}t.DataRenderer=_,_.__name__=\"DataRenderer\",_.init_DataRenderer()},\n", " function _(e,i,t,s,n){s();const l=e(1),_=e(64),r=e(106),h=e(108),o=l.__importStar(e(48)),a=l.__importStar(e(107)),c=e(59);class d extends _.XYGlyphView{initialize(){super.initialize();const{webgl:e}=this.renderer.plot_view.canvas_view;null!=e&&(this.glglyph=new h.LineGL(e.gl,this))}_render(e,i,t){const{sx:s,sy:n}=null!=t?t:this;let l=!0;e.beginPath();for(const t of i){const i=s[t],_=n[t];isFinite(i+_)?l?(e.moveTo(i,_),l=!1):e.lineTo(i,_):l=!0}this.visuals.line.set_value(e),e.stroke()}_hit_point(e){const i=new c.Selection,t={x:e.sx,y:e.sy};let s=9999;const n=Math.max(2,this.line_width.value/2);for(let e=0,l=this.sx.length-1;e<l;e++){const l={x:this.sx[e],y:this.sy[e]},_={x:this.sx[e+1],y:this.sy[e+1]},r=a.dist_to_segment(t,l,_);r<n&&r<s&&(s=r,i.add_to_selected_glyphs(this.model),i.view=this,i.line_indices=[e])}return i}_hit_span(e){const{sx:i,sy:t}=e,s=new c.Selection;let n,l;\"v\"==e.direction?(n=this.renderer.yscale.invert(t),l=this._y):(n=this.renderer.xscale.invert(i),l=this._x);for(let e=0,i=l.length-1;e<i;e++)(l[e]<=n&&n<=l[e+1]||l[e+1]<=n&&n<=l[e])&&(s.add_to_selected_glyphs(this.model),s.view=this,s.line_indices.push(e));return s}get_interpolation_hit(e,i){const[t,s,n,l]=[this._x[e],this._y[e],this._x[e+1],this._y[e+1]];return r.line_interpolation(this.renderer,i,t,s,n,l)}draw_legend_for_index(e,i,t){r.generic_line_scalar_legend(this.visuals,e,i)}}t.LineView=d,d.__name__=\"LineView\";class x extends _.XYGlyph{constructor(e){super(e)}static init_Line(){this.prototype.default_view=d,this.mixins(o.LineScalar)}}t.Line=x,x.__name__=\"Line\",x.init_Line()},\n", " function _(t,e,i,s,_){s();const n=t(1),a=t(65),p=n.__importStar(t(18)),y=t(98);class c extends y.GlyphView{_project_data(){a.inplace.project_xy(this._x,this._y)}_index_data(t){const{_x:e,_y:i,data_size:s}=this;for(let _=0;_<s;_++){const s=e[_],n=i[_];isNaN(s+n)||!isFinite(s+n)?t.add_empty():t.add(s,n,s,n)}}scenterxy(t){return[this.sx[t],this.sy[t]]}}i.XYGlyphView=c,c.__name__=\"XYGlyphView\";class d extends y.Glyph{constructor(t){super(t)}static init_XYGlyph(){this.define((({})=>({x:[p.XCoordinateSpec,{field:\"x\"}],y:[p.YCoordinateSpec,{field:\"y\"}]})))}}i.XYGlyph=d,d.__name__=\"XYGlyph\",d.init_XYGlyph()},\n", " function _(n,t,e,o,r){o();const c=n(1),l=c.__importDefault(n(66)),i=c.__importDefault(n(67)),u=n(24),a=new i.default(\"GOOGLE\"),s=new i.default(\"WGS84\"),f=l.default(s,a);e.wgs84_mercator={compute:(n,t)=>isFinite(n)&&isFinite(t)?f.forward([n,t]):[NaN,NaN],invert:(n,t)=>isFinite(n)&&isFinite(t)?f.inverse([n,t]):[NaN,NaN]};const _={lon:[-20026376.39,20026376.39],lat:[-20048966.1,20048966.1]},p={lon:[-180,180],lat:[-85.06,85.06]},{min:g,max:h}=Math;function m(n,t){const o=g(n.length,t.length),r=u.infer_type(n,t),c=new r(o),l=new r(o);return e.inplace.project_xy(n,t,c,l),[c,l]}e.clip_mercator=function(n,t,e){const[o,r]=_[e];return[h(n,o),g(t,r)]},e.in_bounds=function(n,t){const[e,o]=p[t];return e<n&&n<o},function(n){function t(n,t,o,r){const c=g(n.length,t.length);o=null!=o?o:n,r=null!=r?r:t;for(let l=0;l<c;l++){const c=n[l],i=t[l],[u,a]=e.wgs84_mercator.compute(c,i);o[l]=u,r[l]=a}}n.project_xy=t,n.project_xsys=function(n,e,o,r){const c=g(n.length,e.length);o=null!=o?o:n,r=null!=r?r:e;for(let l=0;l<c;l++)t(n[l],e[l],o[l],r[l])}}(e.inplace||(e.inplace={})),e.project_xy=m,e.project_xsys=function(n,t){const e=g(n.length,t.length),o=new Array(e),r=new Array(e);for(let c=0;c<e;c++){const[e,l]=m(n[c],t[c]);o[c]=e,r[c]=l}return[o,r]}},\n", " function _(e,n,t,r,o){r();const a=e(1),i=a.__importDefault(e(67)),c=a.__importDefault(e(92));var u=i.default(\"WGS84\");function f(e,n,t){var r,o,a;return Array.isArray(t)?(r=c.default(e,n,t)||{x:NaN,y:NaN},t.length>2?void 0!==e.name&&\"geocent\"===e.name||void 0!==n.name&&\"geocent\"===n.name?\"number\"==typeof r.z?[r.x,r.y,r.z].concat(t.splice(3)):[r.x,r.y,t[2]].concat(t.splice(3)):[r.x,r.y].concat(t.splice(2)):[r.x,r.y]):(o=c.default(e,n,t),2===(a=Object.keys(t)).length||a.forEach((function(r){if(void 0!==e.name&&\"geocent\"===e.name||void 0!==n.name&&\"geocent\"===n.name){if(\"x\"===r||\"y\"===r||\"z\"===r)return}else if(\"x\"===r||\"y\"===r)return;o[r]=t[r]})),o)}function l(e){return e instanceof i.default?e:e.oProj?e.oProj:i.default(e)}t.default=function(e,n,t){e=l(e);var r,o=!1;return void 0===n?(n=e,e=u,o=!0):(void 0!==n.x||Array.isArray(n))&&(t=n,n=e,e=u,o=!0),n=l(n),t?f(e,n,t):(r={forward:function(t){return f(e,n,t)},inverse:function(t){return f(n,e,t)}},o&&(r.oProj=n),r)}},\n", " function _(t,e,a,s,i){s();const u=t(1),l=u.__importDefault(t(68)),o=u.__importDefault(t(79)),r=u.__importDefault(t(80)),f=t(88),p=u.__importDefault(t(90)),d=u.__importDefault(t(91)),m=u.__importDefault(t(75));function n(t,e){if(!(this instanceof n))return new n(t);e=e||function(t){if(t)throw t};var a=l.default(t);if(\"object\"==typeof a){var s=n.projections.get(a.projName);if(s){if(a.datumCode&&\"none\"!==a.datumCode){var i=m.default(p.default,a.datumCode);i&&(a.datum_params=i.towgs84?i.towgs84.split(\",\"):null,a.ellps=i.ellipse,a.datumName=i.datumName?i.datumName:a.datumCode)}a.k0=a.k0||1,a.axis=a.axis||\"enu\",a.ellps=a.ellps||\"wgs84\";var u=f.sphere(a.a,a.b,a.rf,a.ellps,a.sphere),r=f.eccentricity(u.a,u.b,u.rf,a.R_A),h=a.datum||d.default(a.datumCode,a.datum_params,u.a,u.b,r.es,r.ep2);o.default(this,a),o.default(this,s),this.a=u.a,this.b=u.b,this.rf=u.rf,this.sphere=u.sphere,this.es=r.es,this.e=r.e,this.ep2=r.ep2,this.datum=h,this.init(),e(null,this)}else e(t)}else e(t)}n.projections=r.default,n.projections.start(),a.default=n},\n", " function _(t,r,n,u,e){u();const f=t(1),i=f.__importDefault(t(69)),a=f.__importDefault(t(76)),o=f.__importDefault(t(71)),l=f.__importDefault(t(75));var C=[\"PROJECTEDCRS\",\"PROJCRS\",\"GEOGCS\",\"GEOCCS\",\"PROJCS\",\"LOCAL_CS\",\"GEODCRS\",\"GEODETICCRS\",\"GEODETICDATUM\",\"ENGCRS\",\"ENGINEERINGCRS\"];var d=[\"3857\",\"900913\",\"3785\",\"102113\"];n.default=function(t){if(!function(t){return\"string\"==typeof t}(t))return t;if(function(t){return t in i.default}(t))return i.default[t];if(function(t){return C.some((function(r){return t.indexOf(r)>-1}))}(t)){var r=a.default(t);if(function(t){var r=l.default(t,\"authority\");if(r){var n=l.default(r,\"epsg\");return n&&d.indexOf(n)>-1}}(r))return i.default[\"EPSG:3857\"];var n=function(t){var r=l.default(t,\"extension\");if(r)return l.default(r,\"proj4\")}(r);return n?o.default(n):r}return function(t){return\"+\"===t[0]}(t)?o.default(t):void 0}},\n", " function _(t,r,i,e,n){e();const f=t(1),a=f.__importDefault(t(70)),l=f.__importDefault(t(71)),u=f.__importDefault(t(76));function o(t){var r=this;if(2===arguments.length){var i=arguments[1];\"string\"==typeof i?\"+\"===i.charAt(0)?o[t]=l.default(arguments[1]):o[t]=u.default(arguments[1]):o[t]=i}else if(1===arguments.length){if(Array.isArray(t))return t.map((function(t){Array.isArray(t)?o.apply(r,t):o(t)}));if(\"string\"==typeof t){if(t in o)return o[t]}else\"EPSG\"in t?o[\"EPSG:\"+t.EPSG]=t:\"ESRI\"in t?o[\"ESRI:\"+t.ESRI]=t:\"IAU2000\"in t?o[\"IAU2000:\"+t.IAU2000]=t:console.log(t);return}}a.default(o),i.default=o},\n", " function _(t,l,G,S,e){S(),G.default=function(t){t(\"EPSG:4326\",\"+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees\"),t(\"EPSG:4269\",\"+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees\"),t(\"EPSG:3857\",\"+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs\"),t.WGS84=t[\"EPSG:4326\"],t[\"EPSG:3785\"]=t[\"EPSG:3857\"],t.GOOGLE=t[\"EPSG:3857\"],t[\"EPSG:900913\"]=t[\"EPSG:3857\"],t[\"EPSG:102113\"]=t[\"EPSG:3857\"]}},\n", " function _(t,n,o,a,u){a();const e=t(1),r=t(72),i=e.__importDefault(t(73)),f=e.__importDefault(t(74)),l=e.__importDefault(t(75));o.default=function(t){var n,o,a,u={},e=t.split(\"+\").map((function(t){return t.trim()})).filter((function(t){return t})).reduce((function(t,n){var o=n.split(\"=\");return o.push(!0),t[o[0].toLowerCase()]=o[1],t}),{}),c={proj:\"projName\",datum:\"datumCode\",rf:function(t){u.rf=parseFloat(t)},lat_0:function(t){u.lat0=t*r.D2R},lat_1:function(t){u.lat1=t*r.D2R},lat_2:function(t){u.lat2=t*r.D2R},lat_ts:function(t){u.lat_ts=t*r.D2R},lon_0:function(t){u.long0=t*r.D2R},lon_1:function(t){u.long1=t*r.D2R},lon_2:function(t){u.long2=t*r.D2R},alpha:function(t){u.alpha=parseFloat(t)*r.D2R},lonc:function(t){u.longc=t*r.D2R},x_0:function(t){u.x0=parseFloat(t)},y_0:function(t){u.y0=parseFloat(t)},k_0:function(t){u.k0=parseFloat(t)},k:function(t){u.k0=parseFloat(t)},a:function(t){u.a=parseFloat(t)},b:function(t){u.b=parseFloat(t)},r_a:function(){u.R_A=!0},zone:function(t){u.zone=parseInt(t,10)},south:function(){u.utmSouth=!0},towgs84:function(t){u.datum_params=t.split(\",\").map((function(t){return parseFloat(t)}))},to_meter:function(t){u.to_meter=parseFloat(t)},units:function(t){u.units=t;var n=l.default(f.default,t);n&&(u.to_meter=n.to_meter)},from_greenwich:function(t){u.from_greenwich=t*r.D2R},pm:function(t){var n=l.default(i.default,t);u.from_greenwich=(n||parseFloat(t))*r.D2R},nadgrids:function(t){\"@null\"===t?u.datumCode=\"none\":u.nadgrids=t},axis:function(t){var n=\"ewnsud\";3===t.length&&-1!==n.indexOf(t.substr(0,1))&&-1!==n.indexOf(t.substr(1,1))&&-1!==n.indexOf(t.substr(2,1))&&(u.axis=t)}};for(n in e)o=e[n],n in c?\"function\"==typeof(a=c[n])?a(o):u[a]=o:u[n]=o;return\"string\"==typeof u.datumCode&&\"WGS84\"!==u.datumCode&&(u.datumCode=u.datumCode.toLowerCase()),u}},\n", " function _(P,A,_,D,I){D(),_.PJD_3PARAM=1,_.PJD_7PARAM=2,_.PJD_WGS84=4,_.PJD_NODATUM=5,_.SEC_TO_RAD=484813681109536e-20,_.HALF_PI=Math.PI/2,_.SIXTH=.16666666666666666,_.RA4=.04722222222222222,_.RA6=.022156084656084655,_.EPSLN=1e-10,_.D2R=.017453292519943295,_.R2D=57.29577951308232,_.FORTPI=Math.PI/4,_.TWO_PI=2*Math.PI,_.SPI=3.14159265359},\n", " function _(o,r,a,e,s){e();var n={};a.default=n,n.greenwich=0,n.lisbon=-9.131906111111,n.paris=2.337229166667,n.bogota=-74.080916666667,n.madrid=-3.687938888889,n.rome=12.452333333333,n.bern=7.439583333333,n.jakarta=106.807719444444,n.ferro=-17.666666666667,n.brussels=4.367975,n.stockholm=18.058277777778,n.athens=23.7163375,n.oslo=10.722916666667},\n", " function _(t,e,f,o,u){o(),f.default={ft:{to_meter:.3048},\"us-ft\":{to_meter:1200/3937}}},\n", " function _(e,r,t,a,n){a();var o=/[\\s_\\-\\/\\(\\)]/g;t.default=function(e,r){if(e[r])return e[r];for(var t,a=Object.keys(e),n=r.toLowerCase().replace(o,\"\"),f=-1;++f<a.length;)if((t=a[f]).toLowerCase().replace(o,\"\")===n)return e[t]}},\n", " function _(e,t,a,o,d){o();const r=e(1);const n=r.__importDefault(e(77)),l=e(78);function i(e){return.017453292519943295*e}a.default=function(e){var t=n.default(e),a=t.shift(),o=t.shift();t.unshift([\"name\",o]),t.unshift([\"type\",a]);var d={};return l.sExpr(t,d),function(e){if(\"GEOGCS\"===e.type?e.projName=\"longlat\":\"LOCAL_CS\"===e.type?(e.projName=\"identity\",e.local=!0):\"object\"==typeof e.PROJECTION?e.projName=Object.keys(e.PROJECTION)[0]:e.projName=e.PROJECTION,e.AXIS){for(var t=\"\",a=0,o=e.AXIS.length;a<o;++a){var d=e.AXIS[a][0].toLowerCase();-1!==d.indexOf(\"north\")?t+=\"n\":-1!==d.indexOf(\"south\")?t+=\"s\":-1!==d.indexOf(\"east\")?t+=\"e\":-1!==d.indexOf(\"west\")&&(t+=\"w\")}2===t.length&&(t+=\"u\"),3===t.length&&(e.axis=t)}e.UNIT&&(e.units=e.UNIT.name.toLowerCase(),\"metre\"===e.units&&(e.units=\"meter\"),e.UNIT.convert&&(\"GEOGCS\"===e.type?e.DATUM&&e.DATUM.SPHEROID&&(e.to_meter=e.UNIT.convert*e.DATUM.SPHEROID.a):e.to_meter=e.UNIT.convert));var r=e.GEOGCS;function n(t){return t*(e.to_meter||1)}\"GEOGCS\"===e.type&&(r=e),r&&(r.DATUM?e.datumCode=r.DATUM.name.toLowerCase():e.datumCode=r.name.toLowerCase(),\"d_\"===e.datumCode.slice(0,2)&&(e.datumCode=e.datumCode.slice(2)),\"new_zealand_geodetic_datum_1949\"!==e.datumCode&&\"new_zealand_1949\"!==e.datumCode||(e.datumCode=\"nzgd49\"),\"wgs_1984\"!==e.datumCode&&\"world_geodetic_system_1984\"!==e.datumCode||(\"Mercator_Auxiliary_Sphere\"===e.PROJECTION&&(e.sphere=!0),e.datumCode=\"wgs84\"),\"_ferro\"===e.datumCode.slice(-6)&&(e.datumCode=e.datumCode.slice(0,-6)),\"_jakarta\"===e.datumCode.slice(-8)&&(e.datumCode=e.datumCode.slice(0,-8)),~e.datumCode.indexOf(\"belge\")&&(e.datumCode=\"rnb72\"),r.DATUM&&r.DATUM.SPHEROID&&(e.ellps=r.DATUM.SPHEROID.name.replace(\"_19\",\"\").replace(/[Cc]larke\\_18/,\"clrk\"),\"international\"===e.ellps.toLowerCase().slice(0,13)&&(e.ellps=\"intl\"),e.a=r.DATUM.SPHEROID.a,e.rf=parseFloat(r.DATUM.SPHEROID.rf,10)),r.DATUM&&r.DATUM.TOWGS84&&(e.datum_params=r.DATUM.TOWGS84),~e.datumCode.indexOf(\"osgb_1936\")&&(e.datumCode=\"osgb36\"),~e.datumCode.indexOf(\"osni_1952\")&&(e.datumCode=\"osni52\"),(~e.datumCode.indexOf(\"tm65\")||~e.datumCode.indexOf(\"geodetic_datum_of_1965\"))&&(e.datumCode=\"ire65\"),\"ch1903+\"===e.datumCode&&(e.datumCode=\"ch1903\"),~e.datumCode.indexOf(\"israel\")&&(e.datumCode=\"isr93\")),e.b&&!isFinite(e.b)&&(e.b=e.a),[[\"standard_parallel_1\",\"Standard_Parallel_1\"],[\"standard_parallel_2\",\"Standard_Parallel_2\"],[\"false_easting\",\"False_Easting\"],[\"false_northing\",\"False_Northing\"],[\"central_meridian\",\"Central_Meridian\"],[\"latitude_of_origin\",\"Latitude_Of_Origin\"],[\"latitude_of_origin\",\"Central_Parallel\"],[\"scale_factor\",\"Scale_Factor\"],[\"k0\",\"scale_factor\"],[\"latitude_of_center\",\"Latitude_Of_Center\"],[\"latitude_of_center\",\"Latitude_of_center\"],[\"lat0\",\"latitude_of_center\",i],[\"longitude_of_center\",\"Longitude_Of_Center\"],[\"longitude_of_center\",\"Longitude_of_center\"],[\"longc\",\"longitude_of_center\",i],[\"x0\",\"false_easting\",n],[\"y0\",\"false_northing\",n],[\"long0\",\"central_meridian\",i],[\"lat0\",\"latitude_of_origin\",i],[\"lat0\",\"standard_parallel_1\",i],[\"lat1\",\"standard_parallel_1\",i],[\"lat2\",\"standard_parallel_2\",i],[\"azimuth\",\"Azimuth\"],[\"alpha\",\"azimuth\",i],[\"srsCode\",\"name\"]].forEach((function(t){return a=e,d=(o=t)[0],r=o[1],void(!(d in a)&&r in a&&(a[d]=a[r],3===o.length&&(a[d]=o[2](a[d]))));var a,o,d,r})),e.long0||!e.longc||\"Albers_Conic_Equal_Area\"!==e.projName&&\"Lambert_Azimuthal_Equal_Area\"!==e.projName||(e.long0=e.longc),e.lat_ts||!e.lat1||\"Stereographic_South_Pole\"!==e.projName&&\"Polar Stereographic (variant B)\"!==e.projName||(e.lat0=i(e.lat1>0?90:-90),e.lat_ts=e.lat1)}(d),d}},\n", " function _(t,e,r,i,s){i(),r.default=function(t){return new d(t).output()};var h=/\\s/,o=/[A-Za-z]/,n=/[A-Za-z84]/,a=/[,\\]]/,u=/[\\d\\.E\\-\\+]/;function d(t){if(\"string\"!=typeof t)throw new Error(\"not a string\");this.text=t.trim(),this.level=0,this.place=0,this.root=null,this.stack=[],this.currentObject=null,this.state=1}d.prototype.readCharicter=function(){var t=this.text[this.place++];if(4!==this.state)for(;h.test(t);){if(this.place>=this.text.length)return;t=this.text[this.place++]}switch(this.state){case 1:return this.neutral(t);case 2:return this.keyword(t);case 4:return this.quoted(t);case 5:return this.afterquote(t);case 3:return this.number(t);case-1:return}},d.prototype.afterquote=function(t){if('\"'===t)return this.word+='\"',void(this.state=4);if(a.test(t))return this.word=this.word.trim(),void this.afterItem(t);throw new Error(\"havn't handled \\\"\"+t+'\" in afterquote yet, index '+this.place)},d.prototype.afterItem=function(t){return\",\"===t?(null!==this.word&&this.currentObject.push(this.word),this.word=null,void(this.state=1)):\"]\"===t?(this.level--,null!==this.word&&(this.currentObject.push(this.word),this.word=null),this.state=1,this.currentObject=this.stack.pop(),void(this.currentObject||(this.state=-1))):void 0},d.prototype.number=function(t){if(!u.test(t)){if(a.test(t))return this.word=parseFloat(this.word),void this.afterItem(t);throw new Error(\"havn't handled \\\"\"+t+'\" in number yet, index '+this.place)}this.word+=t},d.prototype.quoted=function(t){'\"'!==t?this.word+=t:this.state=5},d.prototype.keyword=function(t){if(n.test(t))this.word+=t;else{if(\"[\"===t){var e=[];return e.push(this.word),this.level++,null===this.root?this.root=e:this.currentObject.push(e),this.stack.push(this.currentObject),this.currentObject=e,void(this.state=1)}if(!a.test(t))throw new Error(\"havn't handled \\\"\"+t+'\" in keyword yet, index '+this.place);this.afterItem(t)}},d.prototype.neutral=function(t){if(o.test(t))return this.word=t,void(this.state=2);if('\"'===t)return this.word=\"\",void(this.state=4);if(u.test(t))return this.word=t,void(this.state=3);if(!a.test(t))throw new Error(\"havn't handled \\\"\"+t+'\" in neutral yet, index '+this.place);this.afterItem(t)},d.prototype.output=function(){for(;this.place<this.text.length;)this.readCharicter();if(-1===this.state)return this.root;throw new Error('unable to parse string \"'+this.text+'\". State is '+this.state)}},\n", " function _(e,a,r,s,c){function n(e,a,r){Array.isArray(a)&&(r.unshift(a),a=null);var s=a?{}:e,c=r.reduce((function(e,a){return E(a,e),e}),s);a&&(e[a]=c)}function E(e,a){if(Array.isArray(e)){var r=e.shift();if(\"PARAMETER\"===r&&(r=e.shift()),1===e.length)return Array.isArray(e[0])?(a[r]={},void E(e[0],a[r])):void(a[r]=e[0]);if(e.length)if(\"TOWGS84\"!==r){if(\"AXIS\"===r)return r in a||(a[r]=[]),void a[r].push(e);var s;switch(Array.isArray(r)||(a[r]={}),r){case\"UNIT\":case\"PRIMEM\":case\"VERT_DATUM\":return a[r]={name:e[0].toLowerCase(),convert:e[1]},void(3===e.length&&E(e[2],a[r]));case\"SPHEROID\":case\"ELLIPSOID\":return a[r]={name:e[0],a:e[1],rf:e[2]},void(4===e.length&&E(e[3],a[r]));case\"PROJECTEDCRS\":case\"PROJCRS\":case\"GEOGCS\":case\"GEOCCS\":case\"PROJCS\":case\"LOCAL_CS\":case\"GEODCRS\":case\"GEODETICCRS\":case\"GEODETICDATUM\":case\"EDATUM\":case\"ENGINEERINGDATUM\":case\"VERT_CS\":case\"VERTCRS\":case\"VERTICALCRS\":case\"COMPD_CS\":case\"COMPOUNDCRS\":case\"ENGINEERINGCRS\":case\"ENGCRS\":case\"FITTED_CS\":case\"LOCAL_DATUM\":case\"DATUM\":return e[0]=[\"name\",e[0]],void n(a,r,e);default:for(s=-1;++s<e.length;)if(!Array.isArray(e[s]))return E(e,a[r]);return n(a,r,e)}}else a[r]=e;else a[r]=!0}else a[e]=!0}s(),r.sExpr=E},\n", " function _(n,r,f,i,t){i(),f.default=function(n,r){var f,i;if(n=n||{},!r)return n;for(i in r)void 0!==(f=r[i])&&(n[i]=f);return n}},\n", " function _(t,o,a,e,n){e();const r=t(1),f=r.__importDefault(t(81)),u=r.__importDefault(t(87));var i=[f.default,u.default],c={},d=[];function s(t,o){var a=d.length;return t.names?(d[a]=t,t.names.forEach((function(t){c[t.toLowerCase()]=a})),this):(console.log(o),!0)}function l(t){if(!t)return!1;var o=t.toLowerCase();return void 0!==c[o]&&d[c[o]]?d[c[o]]:void 0}function v(){i.forEach(s)}a.add=s,a.get=l,a.start=v,a.default={start:v,add:s,get:l}},\n", " function _(t,i,s,h,a){h();const e=t(1),r=e.__importDefault(t(82)),n=e.__importDefault(t(83)),l=e.__importDefault(t(85)),u=e.__importDefault(t(86)),o=t(72);function f(){var t=this.b/this.a;this.es=1-t*t,\"x0\"in this||(this.x0=0),\"y0\"in this||(this.y0=0),this.e=Math.sqrt(this.es),this.lat_ts?this.sphere?this.k0=Math.cos(this.lat_ts):this.k0=r.default(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)}function _(t){var i,s,h=t.x,a=t.y;if(a*o.R2D>90&&a*o.R2D<-90&&h*o.R2D>180&&h*o.R2D<-180)return null;if(Math.abs(Math.abs(a)-o.HALF_PI)<=o.EPSLN)return null;if(this.sphere)i=this.x0+this.a*this.k0*n.default(h-this.long0),s=this.y0+this.a*this.k0*Math.log(Math.tan(o.FORTPI+.5*a));else{var e=Math.sin(a),r=l.default(this.e,a,e);i=this.x0+this.a*this.k0*n.default(h-this.long0),s=this.y0-this.a*this.k0*Math.log(r)}return t.x=i,t.y=s,t}function M(t){var i,s,h=t.x-this.x0,a=t.y-this.y0;if(this.sphere)s=o.HALF_PI-2*Math.atan(Math.exp(-a/(this.a*this.k0)));else{var e=Math.exp(-a/(this.a*this.k0));if(-9999===(s=u.default(this.e,e)))return null}return i=n.default(this.long0+h/(this.a*this.k0)),t.x=i,t.y=s,t}s.init=f,s.forward=_,s.inverse=M,s.names=[\"Mercator\",\"Popular Visualisation Pseudo Mercator\",\"Mercator_1SP\",\"Mercator_Auxiliary_Sphere\",\"merc\"],s.default={init:f,forward:_,inverse:M,names:s.names}},\n", " function _(t,n,r,u,a){u(),r.default=function(t,n,r){var u=t*n;return r/Math.sqrt(1-u*u)}},\n", " function _(t,n,u,a,f){a();const e=t(1),o=t(72),_=e.__importDefault(t(84));u.default=function(t){return Math.abs(t)<=o.SPI?t:t-_.default(t)*o.TWO_PI}},\n", " function _(n,t,u,f,c){f(),u.default=function(n){return n<0?-1:1}},\n", " function _(t,n,a,o,u){o();const c=t(72);a.default=function(t,n,a){var o=t*a,u=.5*t;return o=Math.pow((1-o)/(1+o),u),Math.tan(.5*(c.HALF_PI-n))/o}},\n", " function _(t,a,n,r,f){r();const h=t(72);n.default=function(t,a){for(var n,r,f=.5*t,o=h.HALF_PI-2*Math.atan(a),u=0;u<=15;u++)if(n=t*Math.sin(o),o+=r=h.HALF_PI-2*Math.atan(a*Math.pow((1-n)/(1+n),f))-o,Math.abs(r)<=1e-10)return o;return-9999}},\n", " function _(n,i,e,t,r){function a(){}function f(n){return n}t(),e.init=a,e.forward=f,e.inverse=f,e.names=[\"longlat\",\"identity\"],e.default={init:a,forward:f,inverse:f,names:e.names}},\n", " function _(t,r,e,a,n){a();const f=t(1),i=t(72),u=f.__importStar(t(89)),c=f.__importDefault(t(75));e.eccentricity=function(t,r,e,a){var n=t*t,f=r*r,u=(n-f)/n,c=0;return a?(n=(t*=1-u*(i.SIXTH+u*(i.RA4+u*i.RA6)))*t,u=0):c=Math.sqrt(u),{es:u,e:c,ep2:(n-f)/f}},e.sphere=function(t,r,e,a,n){if(!t){var f=c.default(u.default,a);f||(f=u.WGS84),t=f.a,r=f.b,e=f.rf}return e&&!r&&(r=(1-1/e)*t),(0===e||Math.abs(t-r)<i.EPSLN)&&(n=!0,r=t),{a:t,b:r,rf:e,sphere:n}}},\n", " function _(e,a,l,s,r){s();var i={};l.default=i,i.MERIT={a:6378137,rf:298.257,ellipseName:\"MERIT 1983\"},i.SGS85={a:6378136,rf:298.257,ellipseName:\"Soviet Geodetic System 85\"},i.GRS80={a:6378137,rf:298.257222101,ellipseName:\"GRS 1980(IUGG, 1980)\"},i.IAU76={a:6378140,rf:298.257,ellipseName:\"IAU 1976\"},i.airy={a:6377563.396,b:6356256.91,ellipseName:\"Airy 1830\"},i.APL4={a:6378137,rf:298.25,ellipseName:\"Appl. Physics. 1965\"},i.NWL9D={a:6378145,rf:298.25,ellipseName:\"Naval Weapons Lab., 1965\"},i.mod_airy={a:6377340.189,b:6356034.446,ellipseName:\"Modified Airy\"},i.andrae={a:6377104.43,rf:300,ellipseName:\"Andrae 1876 (Den., Iclnd.)\"},i.aust_SA={a:6378160,rf:298.25,ellipseName:\"Australian Natl & S. Amer. 1969\"},i.GRS67={a:6378160,rf:298.247167427,ellipseName:\"GRS 67(IUGG 1967)\"},i.bessel={a:6377397.155,rf:299.1528128,ellipseName:\"Bessel 1841\"},i.bess_nam={a:6377483.865,rf:299.1528128,ellipseName:\"Bessel 1841 (Namibia)\"},i.clrk66={a:6378206.4,b:6356583.8,ellipseName:\"Clarke 1866\"},i.clrk80={a:6378249.145,rf:293.4663,ellipseName:\"Clarke 1880 mod.\"},i.clrk58={a:6378293.645208759,rf:294.2606763692654,ellipseName:\"Clarke 1858\"},i.CPM={a:6375738.7,rf:334.29,ellipseName:\"Comm. des Poids et Mesures 1799\"},i.delmbr={a:6376428,rf:311.5,ellipseName:\"Delambre 1810 (Belgium)\"},i.engelis={a:6378136.05,rf:298.2566,ellipseName:\"Engelis 1985\"},i.evrst30={a:6377276.345,rf:300.8017,ellipseName:\"Everest 1830\"},i.evrst48={a:6377304.063,rf:300.8017,ellipseName:\"Everest 1948\"},i.evrst56={a:6377301.243,rf:300.8017,ellipseName:\"Everest 1956\"},i.evrst69={a:6377295.664,rf:300.8017,ellipseName:\"Everest 1969\"},i.evrstSS={a:6377298.556,rf:300.8017,ellipseName:\"Everest (Sabah & Sarawak)\"},i.fschr60={a:6378166,rf:298.3,ellipseName:\"Fischer (Mercury Datum) 1960\"},i.fschr60m={a:6378155,rf:298.3,ellipseName:\"Fischer 1960\"},i.fschr68={a:6378150,rf:298.3,ellipseName:\"Fischer 1968\"},i.helmert={a:6378200,rf:298.3,ellipseName:\"Helmert 1906\"},i.hough={a:6378270,rf:297,ellipseName:\"Hough\"},i.intl={a:6378388,rf:297,ellipseName:\"International 1909 (Hayford)\"},i.kaula={a:6378163,rf:298.24,ellipseName:\"Kaula 1961\"},i.lerch={a:6378139,rf:298.257,ellipseName:\"Lerch 1979\"},i.mprts={a:6397300,rf:191,ellipseName:\"Maupertius 1738\"},i.new_intl={a:6378157.5,b:6356772.2,ellipseName:\"New International 1967\"},i.plessis={a:6376523,rf:6355863,ellipseName:\"Plessis 1817 (France)\"},i.krass={a:6378245,rf:298.3,ellipseName:\"Krassovsky, 1942\"},i.SEasia={a:6378155,b:6356773.3205,ellipseName:\"Southeast Asia\"},i.walbeck={a:6376896,b:6355834.8467,ellipseName:\"Walbeck\"},i.WGS60={a:6378165,rf:298.3,ellipseName:\"WGS 60\"},i.WGS66={a:6378145,rf:298.25,ellipseName:\"WGS 66\"},i.WGS7={a:6378135,rf:298.26,ellipseName:\"WGS 72\"},l.WGS84=i.WGS84={a:6378137,rf:298.257223563,ellipseName:\"WGS 84\"},i.sphere={a:6370997,b:6370997,ellipseName:\"Normal Sphere (r=6370997)\"}},\n", " function _(e,a,s,t,l){t();var m={};s.default=m,m.wgs84={towgs84:\"0,0,0\",ellipse:\"WGS84\",datumName:\"WGS84\"},m.ch1903={towgs84:\"674.374,15.056,405.346\",ellipse:\"bessel\",datumName:\"swiss\"},m.ggrs87={towgs84:\"-199.87,74.79,246.62\",ellipse:\"GRS80\",datumName:\"Greek_Geodetic_Reference_System_1987\"},m.nad83={towgs84:\"0,0,0\",ellipse:\"GRS80\",datumName:\"North_American_Datum_1983\"},m.nad27={nadgrids:\"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat\",ellipse:\"clrk66\",datumName:\"North_American_Datum_1927\"},m.potsdam={towgs84:\"606.0,23.0,413.0\",ellipse:\"bessel\",datumName:\"Potsdam Rauenberg 1950 DHDN\"},m.carthage={towgs84:\"-263.0,6.0,431.0\",ellipse:\"clark80\",datumName:\"Carthage 1934 Tunisia\"},m.hermannskogel={towgs84:\"653.0,-212.0,449.0\",ellipse:\"bessel\",datumName:\"Hermannskogel\"},m.osni52={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"airy\",datumName:\"Irish National\"},m.ire65={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"mod_airy\",datumName:\"Ireland 1965\"},m.rassadiran={towgs84:\"-133.63,-157.5,-158.62\",ellipse:\"intl\",datumName:\"Rassadiran\"},m.nzgd49={towgs84:\"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993\",ellipse:\"intl\",datumName:\"New Zealand Geodetic Datum 1949\"},m.osgb36={towgs84:\"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894\",ellipse:\"airy\",datumName:\"Airy 1830\"},m.s_jtsk={towgs84:\"589,76,480\",ellipse:\"bessel\",datumName:\"S-JTSK (Ferro)\"},m.beduaram={towgs84:\"-106,-87,188\",ellipse:\"clrk80\",datumName:\"Beduaram\"},m.gunung_segara={towgs84:\"-403,684,41\",ellipse:\"bessel\",datumName:\"Gunung Segara Jakarta\"},m.rnb72={towgs84:\"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1\",ellipse:\"intl\",datumName:\"Reseau National Belge 1972\"}},\n", " function _(a,m,_,t,u){t();const p=a(72);_.default=function(a,m,_,t,u,d){var r={};return r.datum_type=void 0===a||\"none\"===a?p.PJD_NODATUM:p.PJD_WGS84,m&&(r.datum_params=m.map(parseFloat),0===r.datum_params[0]&&0===r.datum_params[1]&&0===r.datum_params[2]||(r.datum_type=p.PJD_3PARAM),r.datum_params.length>3&&(0===r.datum_params[3]&&0===r.datum_params[4]&&0===r.datum_params[5]&&0===r.datum_params[6]||(r.datum_type=p.PJD_7PARAM,r.datum_params[3]*=p.SEC_TO_RAD,r.datum_params[4]*=p.SEC_TO_RAD,r.datum_params[5]*=p.SEC_TO_RAD,r.datum_params[6]=r.datum_params[6]/1e6+1))),r.a=_,r.b=t,r.es=u,r.ep2=d,r}},\n", " function _(t,e,a,r,u){r();const m=t(1),_=t(72),o=m.__importDefault(t(93)),d=m.__importDefault(t(95)),f=m.__importDefault(t(67)),n=m.__importDefault(t(96)),i=m.__importDefault(t(97));a.default=function t(e,a,r){var u;if(Array.isArray(r)&&(r=n.default(r)),i.default(r),e.datum&&a.datum&&function(t,e){return(t.datum.datum_type===_.PJD_3PARAM||t.datum.datum_type===_.PJD_7PARAM)&&\"WGS84\"!==e.datumCode||(e.datum.datum_type===_.PJD_3PARAM||e.datum.datum_type===_.PJD_7PARAM)&&\"WGS84\"!==t.datumCode}(e,a)&&(r=t(e,u=new f.default(\"WGS84\"),r),e=u),\"enu\"!==e.axis&&(r=d.default(e,!1,r)),\"longlat\"===e.projName)r={x:r.x*_.D2R,y:r.y*_.D2R,z:r.z||0};else if(e.to_meter&&(r={x:r.x*e.to_meter,y:r.y*e.to_meter,z:r.z||0}),!(r=e.inverse(r)))return;return e.from_greenwich&&(r.x+=e.from_greenwich),r=o.default(e.datum,a.datum,r),a.from_greenwich&&(r={x:r.x-a.from_greenwich,y:r.y,z:r.z||0}),\"longlat\"===a.projName?r={x:r.x*_.R2D,y:r.y*_.R2D,z:r.z||0}:(r=a.forward(r),a.to_meter&&(r={x:r.x/a.to_meter,y:r.y/a.to_meter,z:r.z||0})),\"enu\"!==a.axis?d.default(a,!0,r):r}},\n", " function _(t,e,a,u,c){u();const m=t(72),o=t(94);function _(t){return t===m.PJD_3PARAM||t===m.PJD_7PARAM}a.default=function(t,e,a){return o.compareDatums(t,e)||t.datum_type===m.PJD_NODATUM||e.datum_type===m.PJD_NODATUM?a:t.es!==e.es||t.a!==e.a||_(t.datum_type)||_(e.datum_type)?(a=o.geodeticToGeocentric(a,t.es,t.a),_(t.datum_type)&&(a=o.geocentricToWgs84(a,t.datum_type,t.datum_params)),_(e.datum_type)&&(a=o.geocentricFromWgs84(a,e.datum_type,e.datum_params)),o.geocentricToGeodetic(a,e.es,e.a,e.b)):a}},\n", " function _(a,t,r,m,s){m();const u=a(72);r.compareDatums=function(a,t){return a.datum_type===t.datum_type&&(!(a.a!==t.a||Math.abs(a.es-t.es)>5e-11)&&(a.datum_type===u.PJD_3PARAM?a.datum_params[0]===t.datum_params[0]&&a.datum_params[1]===t.datum_params[1]&&a.datum_params[2]===t.datum_params[2]:a.datum_type!==u.PJD_7PARAM||a.datum_params[0]===t.datum_params[0]&&a.datum_params[1]===t.datum_params[1]&&a.datum_params[2]===t.datum_params[2]&&a.datum_params[3]===t.datum_params[3]&&a.datum_params[4]===t.datum_params[4]&&a.datum_params[5]===t.datum_params[5]&&a.datum_params[6]===t.datum_params[6]))},r.geodeticToGeocentric=function(a,t,r){var m,s,_,e,n=a.x,d=a.y,i=a.z?a.z:0;if(d<-u.HALF_PI&&d>-1.001*u.HALF_PI)d=-u.HALF_PI;else if(d>u.HALF_PI&&d<1.001*u.HALF_PI)d=u.HALF_PI;else{if(d<-u.HALF_PI)return{x:-1/0,y:-1/0,z:a.z};if(d>u.HALF_PI)return{x:1/0,y:1/0,z:a.z}}return n>Math.PI&&(n-=2*Math.PI),s=Math.sin(d),e=Math.cos(d),_=s*s,{x:((m=r/Math.sqrt(1-t*_))+i)*e*Math.cos(n),y:(m+i)*e*Math.sin(n),z:(m*(1-t)+i)*s}},r.geocentricToGeodetic=function(a,t,r,m){var s,_,e,n,d,i,p,P,y,z,M,o,A,c,x,h=1e-12,f=a.x,I=a.y,F=a.z?a.z:0;if(s=Math.sqrt(f*f+I*I),_=Math.sqrt(f*f+I*I+F*F),s/r<h){if(c=0,_/r<h)return u.HALF_PI,x=-m,{x:a.x,y:a.y,z:a.z}}else c=Math.atan2(I,f);e=F/_,P=(n=s/_)*(1-t)*(d=1/Math.sqrt(1-t*(2-t)*n*n)),y=e*d,A=0;do{A++,i=t*(p=r/Math.sqrt(1-t*y*y))/(p+(x=s*P+F*y-p*(1-t*y*y))),o=(M=e*(d=1/Math.sqrt(1-i*(2-i)*n*n)))*P-(z=n*(1-i)*d)*y,P=z,y=M}while(o*o>1e-24&&A<30);return{x:c,y:Math.atan(M/Math.abs(z)),z:x}},r.geocentricToWgs84=function(a,t,r){if(t===u.PJD_3PARAM)return{x:a.x+r[0],y:a.y+r[1],z:a.z+r[2]};if(t===u.PJD_7PARAM){var m=r[0],s=r[1],_=r[2],e=r[3],n=r[4],d=r[5],i=r[6];return{x:i*(a.x-d*a.y+n*a.z)+m,y:i*(d*a.x+a.y-e*a.z)+s,z:i*(-n*a.x+e*a.y+a.z)+_}}},r.geocentricFromWgs84=function(a,t,r){if(t===u.PJD_3PARAM)return{x:a.x-r[0],y:a.y-r[1],z:a.z-r[2]};if(t===u.PJD_7PARAM){var m=r[0],s=r[1],_=r[2],e=r[3],n=r[4],d=r[5],i=r[6],p=(a.x-m)/i,P=(a.y-s)/i,y=(a.z-_)/i;return{x:p+d*P-n*y,y:-d*p+P+e*y,z:n*p-e*P+y}}}},\n", " function _(e,a,i,r,s){r(),i.default=function(e,a,i){var r,s,n,c=i.x,d=i.y,f=i.z||0,u={};for(n=0;n<3;n++)if(!a||2!==n||void 0!==i.z)switch(0===n?(r=c,s=-1!==\"ew\".indexOf(e.axis[n])?\"x\":\"y\"):1===n?(r=d,s=-1!==\"ns\".indexOf(e.axis[n])?\"y\":\"x\"):(r=f,s=\"z\"),e.axis[n]){case\"e\":u[s]=r;break;case\"w\":u[s]=-r;break;case\"n\":u[s]=r;break;case\"s\":u[s]=-r;break;case\"u\":void 0!==i[s]&&(u.z=r);break;case\"d\":void 0!==i[s]&&(u.z=-r);break;default:return null}return u}},\n", " function _(n,t,e,u,f){u(),e.default=function(n){var t={x:n[0],y:n[1]};return n.length>2&&(t.z=n[2]),n.length>3&&(t.m=n[3]),t}},\n", " function _(e,i,n,t,r){function o(e){if(\"function\"==typeof Number.isFinite){if(Number.isFinite(e))return;throw new TypeError(\"coordinates must be finite numbers\")}if(\"number\"!=typeof e||e!=e||!isFinite(e))throw new TypeError(\"coordinates must be finite numbers\")}t(),n.default=function(e){o(e.x),o(e.y)}},\n", " function _(e,t,s,i,n){i();const r=e(1),a=r.__importStar(e(18)),o=r.__importStar(e(99)),_=r.__importStar(e(45)),l=e(42),c=e(53),h=e(19),d=e(24),u=e(8),f=e(100),p=e(12),g=e(26),y=e(101),x=e(104),v=e(59),{abs:b,ceil:m}=Math;class w extends l.View{constructor(){super(...arguments),this._index=null,this._data_size=null,this._nohit_warned=new Set}get renderer(){return this.parent}get has_webgl(){return null!=this.glglyph}get index(){const{_index:e}=this;if(null!=e)return e;throw new Error(`${this}.index_data() wasn't called`)}get data_size(){const{_data_size:e}=this;if(null!=e)return e;throw new Error(`${this}.set_data() wasn't called`)}initialize(){super.initialize(),this.visuals=new _.Visuals(this)}request_render(){this.parent.request_render()}get canvas(){return this.renderer.parent.canvas_view}render(e,t,s){var i;null!=this.glglyph&&(this.renderer.needs_webgl_blit=this.glglyph.render(e,t,null!==(i=this.base)&&void 0!==i?i:this),this.renderer.needs_webgl_blit)||(e.beginPath(),this._render(e,t,null!=s?s:this.base))}has_finished(){return!0}notify_finished(){this.renderer.notify_finished()}_bounds(e){return e}bounds(){return this._bounds(this.index.bbox)}log_bounds(){const{x0:e,x1:t}=this.index.bounds(o.positive_x()),{y0:s,y1:i}=this.index.bounds(o.positive_y());return this._bounds({x0:e,y0:s,x1:t,y1:i})}get_anchor_point(e,t,[s,i]){switch(e){case\"center\":case\"center_center\":{const[e,n]=this.scenterxy(t,s,i);return{x:e,y:n}}default:return null}}scenterx(e,t,s){return this.scenterxy(e,t,s)[0]}scentery(e,t,s){return this.scenterxy(e,t,s)[1]}sdist(e,t,s,i=\"edge\",n=!1){const r=t.length,a=new d.ScreenArray(r),o=e.s_compute;if(\"center\"==i)for(let e=0;e<r;e++){const i=t[e],n=s.get(e)/2,r=o(i-n),_=o(i+n);a[e]=b(_-r)}else for(let e=0;e<r;e++){const i=t[e],n=o(i),r=o(i+s.get(e));a[e]=b(r-n)}return n&&p.inplace_map(a,(e=>m(e))),a}draw_legend_for_index(e,t,s){}hit_test(e){switch(e.type){case\"point\":if(null!=this._hit_point)return this._hit_point(e);break;case\"span\":if(null!=this._hit_span)return this._hit_span(e);break;case\"rect\":if(null!=this._hit_rect)return this._hit_rect(e);break;case\"poly\":if(null!=this._hit_poly)return this._hit_poly(e)}return this._nohit_warned.has(e.type)||(h.logger.debug(`'${e.type}' selection not available for ${this.model.type}`),this._nohit_warned.add(e.type)),null}_hit_rect_against_index(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,[r,a]=this.renderer.coordinates.x_scale.r_invert(t,s),[o,_]=this.renderer.coordinates.y_scale.r_invert(i,n),l=[...this.index.indices({x0:r,x1:a,y0:o,y1:_})];return new v.Selection({indices:l})}_project_data(){}*_iter_visuals(){for(const e of this.visuals)for(const t of e)(t instanceof a.VectorSpec||t instanceof a.ScalarSpec)&&(yield t)}set_base(e){e!=this&&e instanceof this.constructor&&(this.base=e)}_configure(e,t){Object.defineProperty(this,u.isString(e)?e:e.attr,Object.assign({configurable:!0,enumerable:!0},t))}set_visuals(e,t){var s;for(const s of this._iter_visuals()){const{base:i}=this;if(null!=i){const e=i.model.properties[s.attr];if(null!=e&&g.is_equal(s.get_value(),e.get_value())){this._configure(s,{get:()=>i[`${s.attr}`]});continue}}const n=s.uniform(e).select(t);this._configure(s,{value:n})}for(const e of this.visuals)e.update();null===(s=this.glglyph)||void 0===s||s.set_visuals_changed()}set_data(e,t,s){var i;const{x_range:n,y_range:r}=this.renderer.coordinates,o=new Set(this._iter_visuals());this._data_size=t.count;for(const s of this.model)if((s instanceof a.VectorSpec||s instanceof a.ScalarSpec)&&!o.has(s))if(s instanceof a.BaseCoordinateSpec){const i=s.array(e);let o=t.select(i);const _=\"x\"==s.dimension?n:r;if(_ instanceof x.FactorRange)if(s instanceof a.CoordinateSpec)o=_.v_synthetic(o);else if(s instanceof a.CoordinateSeqSpec)for(let e=0;e<o.length;e++)o[e]=_.v_synthetic(o[e]);let l;l=s instanceof a.CoordinateSeqSpec?f.RaggedArray.from(o,Float64Array):o,this._configure(`_${s.attr}`,{value:l})}else{const i=s.uniform(e).select(t);if(this._configure(s,{value:i}),s instanceof a.DistanceSpec){const e=i.is_Scalar()?i.value:p.max(i.array);this._configure(`max_${s.attr}`,{value:e})}}this.renderer.plot_view.model.use_map&&this._project_data(),this._set_data(null!=s?s:null),null===(i=this.glglyph)||void 0===i||i.set_data_changed(),this.index_data()}_set_data(e){}get _index_size(){return this.data_size}index_data(){const e=new y.SpatialIndex(this._index_size);this._index_data(e),e.finish(),this._index=e}mask_data(){return null==this._mask_data?d.Indices.all_set(this.data_size):this._mask_data()}map_data(){var e;const t=this,{x_scale:s,y_scale:i}=this.renderer.coordinates;for(const e of this.model)if(e instanceof a.BaseCoordinateSpec){const n=\"x\"==e.dimension?s:i;let r=t[`_${e.attr}`];if(r instanceof f.RaggedArray){const e=n.v_compute(r.array);r=new f.RaggedArray(r.offsets,e)}else r=n.v_compute(r);this[`s${e.attr}`]=r}this._map_data(),null===(e=this.glglyph)||void 0===e||e.set_data_changed()}_map_data(){}}s.GlyphView=w,w.__name__=\"GlyphView\";class S extends c.Model{constructor(e){super(e)}}s.Glyph=S,S.__name__=\"Glyph\"},\n", " function _(t,i,e,h,r){h();const s=t(24),n=t(26),{min:x,max:y}=Math;e.empty=function(){return{x0:1/0,y0:1/0,x1:-1/0,y1:-1/0}},e.positive_x=function(){return{x0:Number.MIN_VALUE,y0:-1/0,x1:1/0,y1:1/0}},e.positive_y=function(){return{x0:-1/0,y0:Number.MIN_VALUE,x1:1/0,y1:1/0}},e.union=function(t,i){return{x0:x(t.x0,i.x0),x1:y(t.x1,i.x1),y0:x(t.y0,i.y0),y1:y(t.y1,i.y1)}};class o{constructor(t){if(null==t)this.x0=0,this.y0=0,this.x1=0,this.y1=0;else if(\"x0\"in t){const{x0:i,y0:e,x1:h,y1:r}=t;if(!(i<=h&&e<=r))throw new Error(`invalid bbox {x0: ${i}, y0: ${e}, x1: ${h}, y1: ${r}}`);this.x0=i,this.y0=e,this.x1=h,this.y1=r}else if(\"x\"in t){const{x:i,y:e,width:h,height:r}=t;if(!(h>=0&&r>=0))throw new Error(`invalid bbox {x: ${i}, y: ${e}, width: ${h}, height: ${r}}`);this.x0=i,this.y0=e,this.x1=i+h,this.y1=e+r}else{let i,e,h,r;if(\"width\"in t)if(\"left\"in t)i=t.left,e=i+t.width;else if(\"right\"in t)e=t.right,i=e-t.width;else{const h=t.width/2;i=t.hcenter-h,e=t.hcenter+h}else i=t.left,e=t.right;if(\"height\"in t)if(\"top\"in t)h=t.top,r=h+t.height;else if(\"bottom\"in t)r=t.bottom,h=r-t.height;else{const i=t.height/2;h=t.vcenter-i,r=t.vcenter+i}else h=t.top,r=t.bottom;if(!(i<=e&&h<=r))throw new Error(`invalid bbox {left: ${i}, top: ${h}, right: ${e}, bottom: ${r}}`);this.x0=i,this.y0=h,this.x1=e,this.y1=r}}static from_rect({left:t,right:i,top:e,bottom:h}){return new o({x0:Math.min(t,i),y0:Math.min(e,h),x1:Math.max(t,i),y1:Math.max(e,h)})}equals(t){return this.x0==t.x0&&this.y0==t.y0&&this.x1==t.x1&&this.y1==t.y1}[n.equals](t,i){return i.eq(this.x0,t.x0)&&i.eq(this.y0,t.y0)&&i.eq(this.x1,t.x1)&&i.eq(this.y1,t.y1)}toString(){return`BBox({left: ${this.left}, top: ${this.top}, width: ${this.width}, height: ${this.height}})`}get left(){return this.x0}get top(){return this.y0}get right(){return this.x1}get bottom(){return this.y1}get p0(){return[this.x0,this.y0]}get p1(){return[this.x1,this.y1]}get x(){return this.x0}get y(){return this.y0}get width(){return this.x1-this.x0}get height(){return this.y1-this.y0}get size(){return{width:this.width,height:this.height}}get rect(){const{x0:t,y0:i,x1:e,y1:h}=this;return{p0:{x:t,y:i},p1:{x:e,y:i},p2:{x:e,y:h},p3:{x:t,y:h}}}get box(){const{x:t,y:i,width:e,height:h}=this;return{x:t,y:i,width:e,height:h}}get h_range(){return{start:this.x0,end:this.x1}}get v_range(){return{start:this.y0,end:this.y1}}get ranges(){return[this.h_range,this.v_range]}get aspect(){return this.width/this.height}get hcenter(){return(this.left+this.right)/2}get vcenter(){return(this.top+this.bottom)/2}get area(){return this.width*this.height}relative(){const{width:t,height:i}=this;return new o({x:0,y:0,width:t,height:i})}translate(t,i){const{x:e,y:h,width:r,height:s}=this;return new o({x:t+e,y:i+h,width:r,height:s})}relativize(t,i){return[t-this.x,i-this.y]}contains(t,i){return this.x0<=t&&t<=this.x1&&this.y0<=i&&i<=this.y1}clip(t,i){return t<this.x0?t=this.x0:t>this.x1&&(t=this.x1),i<this.y0?i=this.y0:i>this.y1&&(i=this.y1),[t,i]}grow_by(t){return new o({left:this.left-t,right:this.right+t,top:this.top-t,bottom:this.bottom+t})}shrink_by(t){return new o({left:this.left+t,right:this.right-t,top:this.top+t,bottom:this.bottom-t})}union(t){return new o({x0:x(this.x0,t.x0),y0:x(this.y0,t.y0),x1:y(this.x1,t.x1),y1:y(this.y1,t.y1)})}intersection(t){return this.intersects(t)?new o({x0:y(this.x0,t.x0),y0:y(this.y0,t.y0),x1:x(this.x1,t.x1),y1:x(this.y1,t.y1)}):null}intersects(t){return!(t.x1<this.x0||t.x0>this.x1||t.y1<this.y0||t.y0>this.y1)}get xview(){return{compute:t=>this.left+t,v_compute:t=>{const i=new s.ScreenArray(t.length),e=this.left;for(let h=0;h<t.length;h++)i[h]=e+t[h];return i}}}get yview(){return{compute:t=>this.bottom-t,v_compute:t=>{const i=new s.ScreenArray(t.length),e=this.bottom;for(let h=0;h<t.length;h++)i[h]=e-t[h];return i}}}}e.BBox=o,o.__name__=\"BBox\"},\n", " function _(t,s,r,e,n){e();const a=t(26),o=t(11);class h{constructor(t,s){this.offsets=t,this.array=s}[a.equals](t,s){return s.arrays(this.offsets,t.offsets)&&s.arrays(this.array,t.array)}get length(){return this.offsets.length}clone(){return new h(this.offsets.slice(),this.array.slice())}static from(t,s){const r=t.length;let e=0;const n=(()=>{const s=new Uint32Array(r);for(let n=0;n<r;n++){const r=t[n].length;s[n]=e,e+=r}return e<256?new Uint8Array(s):e<65536?new Uint16Array(s):s})(),a=new s(e);for(let s=0;s<r;s++)a.set(t[s],n[s]);return new h(n,a)}*[Symbol.iterator](){const{offsets:t,length:s}=this;for(let r=0;r<s;r++)yield this.array.subarray(t[r],t[r+1])}_check_bounds(t){o.assert(0<=t&&t<this.length,`Out of bounds: 0 <= ${t} < ${this.length}`)}get(t){this._check_bounds(t);const{offsets:s}=this;return this.array.subarray(s[t],s[t+1])}set(t,s){this._check_bounds(t),this.array.set(s,this.offsets[t])}}r.RaggedArray=h,h.__name__=\"RaggedArray\",h[Symbol.toStringTag]=\"RaggedArray\"},\n", " function _(n,i,t,e,s){e();const o=n(1).__importDefault(n(102)),d=n(24),x=n(99);function h(n,i){let t=0,e=i.length-1;for(;t<e;){const s=t+e>>1;i[s]>n?e=s:t=s+1}return i[t]}class r extends o.default{search_indices(n,i,t,e){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let s=this._boxes.length-4;const o=[],x=new d.Indices(this.numItems);for(;void 0!==s;){const d=Math.min(s+4*this.nodeSize,h(s,this._levelBounds));for(let h=s;h<d;h+=4){const d=0|this._indices[h>>2];t<this._boxes[h+0]||(e<this._boxes[h+1]||n>this._boxes[h+2]||i>this._boxes[h+3]||(s<4*this.numItems?x.set(d):o.push(d)))}s=o.pop()}return x}}r.__name__=\"_FlatBush\";class l{constructor(n){this.index=null,n>0&&(this.index=new r(n))}add(n,i,t,e){var s;null===(s=this.index)||void 0===s||s.add(n,i,t,e)}add_empty(){var n;null===(n=this.index)||void 0===n||n.add(1/0,1/0,-1/0,-1/0)}finish(){var n;null===(n=this.index)||void 0===n||n.finish()}_normalize(n){let{x0:i,y0:t,x1:e,y1:s}=n;return i>e&&([i,e]=[e,i]),t>s&&([t,s]=[s,t]),{x0:i,y0:t,x1:e,y1:s}}get bbox(){if(null==this.index)return x.empty();{const{minX:n,minY:i,maxX:t,maxY:e}=this.index;return{x0:n,y0:i,x1:t,y1:e}}}indices(n){if(null==this.index)return new d.Indices(0);{const{x0:i,y0:t,x1:e,y1:s}=this._normalize(n);return this.index.search_indices(i,t,e,s)}}bounds(n){const i=x.empty();for(const t of this.indices(n)){const n=this.index._boxes,e=n[4*t+0],s=n[4*t+1],o=n[4*t+2],d=n[4*t+3];e<i.x0&&(i.x0=e),o>i.x1&&(i.x1=o),s<i.y0&&(i.y0=s),d>i.y1&&(i.y1=d)}return i}}t.SpatialIndex=l,l.__name__=\"SpatialIndex\"},\n", " function _(t,s,i,e,h){e();const n=t(1).__importDefault(t(103)),o=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class r{static from(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");const[s,i]=new Uint8Array(t,0,2);if(251!==s)throw new Error(\"Data does not appear to be in a Flatbush format.\");if(i>>4!=3)throw new Error(`Got v${i>>4} data when expected v3.`);const[e]=new Uint16Array(t,2,1),[h]=new Uint32Array(t,4,1);return new r(h,e,o[15&i],t)}constructor(t,s=16,i=Float64Array,e){if(void 0===t)throw new Error(\"Missing required argument: numItems.\");if(isNaN(t)||t<=0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+s,2),65535);let h=t,r=h;this._levelBounds=[4*h];do{h=Math.ceil(h/this.nodeSize),r+=h,this._levelBounds.push(4*r)}while(1!==h);this.ArrayType=i||Float64Array,this.IndexArrayType=r<16384?Uint16Array:Uint32Array;const a=o.indexOf(this.ArrayType),_=4*r*this.ArrayType.BYTES_PER_ELEMENT;if(a<0)throw new Error(`Unexpected typed array class: ${i}.`);e&&e instanceof ArrayBuffer?(this.data=e,this._boxes=new this.ArrayType(this.data,8,4*r),this._indices=new this.IndexArrayType(this.data,8+_,r),this._pos=4*r,this.minX=this._boxes[this._pos-4],this.minY=this._boxes[this._pos-3],this.maxX=this._boxes[this._pos-2],this.maxY=this._boxes[this._pos-1]):(this.data=new ArrayBuffer(8+_+r*this.IndexArrayType.BYTES_PER_ELEMENT),this._boxes=new this.ArrayType(this.data,8,4*r),this._indices=new this.IndexArrayType(this.data,8+_,r),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(this.data,0,2).set([251,48+a]),new Uint16Array(this.data,2,1)[0]=s,new Uint32Array(this.data,4,1)[0]=t),this._queue=new n.default}add(t,s,i,e){const h=this._pos>>2;return this._indices[h]=h,this._boxes[this._pos++]=t,this._boxes[this._pos++]=s,this._boxes[this._pos++]=i,this._boxes[this._pos++]=e,t<this.minX&&(this.minX=t),s<this.minY&&(this.minY=s),i>this.maxX&&(this.maxX=i),e>this.maxY&&(this.maxY=e),h}finish(){if(this._pos>>2!==this.numItems)throw new Error(`Added ${this._pos>>2} items when expected ${this.numItems}.`);if(this.numItems<=this.nodeSize)return this._boxes[this._pos++]=this.minX,this._boxes[this._pos++]=this.minY,this._boxes[this._pos++]=this.maxX,void(this._boxes[this._pos++]=this.maxY);const t=this.maxX-this.minX,s=this.maxY-this.minY,i=new Uint32Array(this.numItems);for(let e=0;e<this.numItems;e++){let h=4*e;const n=this._boxes[h++],o=this._boxes[h++],r=this._boxes[h++],a=this._boxes[h++],_=Math.floor(65535*((n+r)/2-this.minX)/t),x=Math.floor(65535*((o+a)/2-this.minY)/s);i[e]=m(_,x)}x(i,this._boxes,this._indices,0,this.numItems-1,this.nodeSize);for(let t=0,s=0;t<this._levelBounds.length-1;t++){const i=this._levelBounds[t];for(;s<i;){const t=s;let e=1/0,h=1/0,n=-1/0,o=-1/0;for(let t=0;t<this.nodeSize&&s<i;t++)e=Math.min(e,this._boxes[s++]),h=Math.min(h,this._boxes[s++]),n=Math.max(n,this._boxes[s++]),o=Math.max(o,this._boxes[s++]);this._indices[this._pos>>2]=t,this._boxes[this._pos++]=e,this._boxes[this._pos++]=h,this._boxes[this._pos++]=n,this._boxes[this._pos++]=o}}}search(t,s,i,e,h){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let n=this._boxes.length-4;const o=[],r=[];for(;void 0!==n;){const a=Math.min(n+4*this.nodeSize,_(n,this._levelBounds));for(let _=n;_<a;_+=4){const a=0|this._indices[_>>2];i<this._boxes[_]||(e<this._boxes[_+1]||t>this._boxes[_+2]||s>this._boxes[_+3]||(n<4*this.numItems?(void 0===h||h(a))&&r.push(a):o.push(a)))}n=o.pop()}return r}neighbors(t,s,i=1/0,e=1/0,h){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let n=this._boxes.length-4;const o=this._queue,r=[],x=e*e;for(;void 0!==n;){const e=Math.min(n+4*this.nodeSize,_(n,this._levelBounds));for(let i=n;i<e;i+=4){const e=0|this._indices[i>>2],r=a(t,this._boxes[i],this._boxes[i+2]),_=a(s,this._boxes[i+1],this._boxes[i+3]),x=r*r+_*_;n<4*this.numItems?(void 0===h||h(e))&&o.push(-e-1,x):o.push(e,x)}for(;o.length&&o.peek()<0;){if(o.peekValue()>x)return o.clear(),r;if(r.push(-o.pop()-1),r.length===i)return o.clear(),r}n=o.pop()}return o.clear(),r}}function a(t,s,i){return t<s?s-t:t<=i?0:t-i}function _(t,s){let i=0,e=s.length-1;for(;i<e;){const h=i+e>>1;s[h]>t?e=h:i=h+1}return s[i]}function x(t,s,i,e,h,n){if(Math.floor(e/n)>=Math.floor(h/n))return;const o=t[e+h>>1];let r=e-1,a=h+1;for(;;){do{r++}while(t[r]<o);do{a--}while(t[a]>o);if(r>=a)break;d(t,s,i,r,a)}x(t,s,i,e,a,n),x(t,s,i,a+1,h,n)}function d(t,s,i,e,h){const n=t[e];t[e]=t[h],t[h]=n;const o=4*e,r=4*h,a=s[o],_=s[o+1],x=s[o+2],d=s[o+3];s[o]=s[r],s[o+1]=s[r+1],s[o+2]=s[r+2],s[o+3]=s[r+3],s[r]=a,s[r+1]=_,s[r+2]=x,s[r+3]=d;const m=i[e];i[e]=i[h],i[h]=m}function m(t,s){let i=t^s,e=65535^i,h=65535^(t|s),n=t&(65535^s),o=i|e>>1,r=i>>1^i,a=h>>1^e&n>>1^h,_=i&h>>1^n>>1^n;i=o,e=r,h=a,n=_,o=i&i>>2^e&e>>2,r=i&e>>2^e&(i^e)>>2,a^=i&h>>2^e&n>>2,_^=e&h>>2^(i^e)&n>>2,i=o,e=r,h=a,n=_,o=i&i>>4^e&e>>4,r=i&e>>4^e&(i^e)>>4,a^=i&h>>4^e&n>>4,_^=e&h>>4^(i^e)&n>>4,i=o,e=r,h=a,n=_,a^=i&h>>8^e&n>>8,_^=e&h>>8^(i^e)&n>>8,i=a^a>>1,e=_^_>>1;let x=t^s,d=e|65535^(x|i);return x=16711935&(x|x<<8),x=252645135&(x|x<<4),x=858993459&(x|x<<2),x=1431655765&(x|x<<1),d=16711935&(d|d<<8),d=252645135&(d|d<<4),d=858993459&(d|d<<2),d=1431655765&(d|d<<1),(d<<1|x)>>>0}i.default=r},\n", " function _(s,t,i,h,e){h();i.default=class{constructor(){this.ids=[],this.values=[],this.length=0}clear(){this.length=0}push(s,t){let i=this.length++;for(this.ids[i]=s,this.values[i]=t;i>0;){const s=i-1>>1,h=this.values[s];if(t>=h)break;this.ids[i]=this.ids[s],this.values[i]=h,i=s}this.ids[i]=s,this.values[i]=t}pop(){if(0===this.length)return;const s=this.ids[0];if(this.length--,this.length>0){const s=this.ids[0]=this.ids[this.length],t=this.values[0]=this.values[this.length],i=this.length>>1;let h=0;for(;h<i;){let s=1+(h<<1);const i=s+1;let e=this.ids[s],l=this.values[s];const n=this.values[i];if(i<this.length&&n<l&&(s=i,e=this.ids[i],l=n),l>=t)break;this.ids[h]=e,this.values[h]=l,h=s}this.ids[h]=s,this.values[h]=t}return s}peek(){if(0!==this.length)return this.ids[0]}peekValue(){if(0!==this.length)return this.values[0]}}},\n", " function _(t,n,e,i,s){i();const r=t(105),a=t(20),o=t(21),g=t(24),p=t(9),c=t(8),l=t(11);function u(t,n,e=0){const i=new Map;for(let s=0;s<t.length;s++){const r=t[s];if(i.has(r))throw new Error(`duplicate factor or subfactor: ${r}`);i.set(r,{value:.5+s*(1+n)+e})}return[i,(t.length-1)*n]}function h(t,n,e,i=0){var s;const r=new Map,a=new Map;for(const[n,e]of t){const t=null!==(s=a.get(n))&&void 0!==s?s:[];a.set(n,[...t,e])}let o=i,g=0;for(const[t,i]of a){const s=i.length,[a,c]=u(i,e,o);g+=c;const l=p.sum(i.map((t=>a.get(t).value)));r.set(t,{value:l/s,mapping:a}),o+=s+n+c}return[r,(a.size-1)*n+g]}function d(t,n,e,i,s=0){var r;const a=new Map,o=new Map;for(const[n,e,i]of t){const t=null!==(r=o.get(n))&&void 0!==r?r:[];o.set(n,[...t,[e,i]])}let g=s,c=0;for(const[t,s]of o){const r=s.length,[o,l]=h(s,e,i,g);c+=l;const u=p.sum(s.map((([t])=>o.get(t).value)));a.set(t,{value:u/r,mapping:o}),g+=r+n+l}return[a,(o.size-1)*n+c]}e.Factor=o.Or(o.String,o.Tuple(o.String,o.String),o.Tuple(o.String,o.String,o.String)),e.FactorSeq=o.Or(o.Array(o.String),o.Array(o.Tuple(o.String,o.String)),o.Array(o.Tuple(o.String,o.String,o.String))),e.map_one_level=u,e.map_two_levels=h,e.map_three_levels=d;class _ extends r.Range{constructor(t){super(t)}static init_FactorRange(){this.define((({Number:t})=>({factors:[e.FactorSeq,[]],factor_padding:[t,0],subgroup_padding:[t,.8],group_padding:[t,1.4],range_padding:[t,0],range_padding_units:[a.PaddingUnits,\"percent\"],start:[t],end:[t]}))),this.internal((({Number:t,String:n,Array:e,Tuple:i,Nullable:s})=>({levels:[t],mids:[s(e(i(n,n))),null],tops:[s(e(n)),null]})))}get min(){return this.start}get max(){return this.end}initialize(){super.initialize(),this._init(!0)}connect_signals(){super.connect_signals(),this.connect(this.properties.factors.change,(()=>this.reset())),this.connect(this.properties.factor_padding.change,(()=>this.reset())),this.connect(this.properties.group_padding.change,(()=>this.reset())),this.connect(this.properties.subgroup_padding.change,(()=>this.reset())),this.connect(this.properties.range_padding.change,(()=>this.reset())),this.connect(this.properties.range_padding_units.change,(()=>this.reset()))}reset(){this._init(!1),this.change.emit()}_lookup(t){switch(t.length){case 1:{const[n]=t,e=this._mapping.get(n);return null!=e?e.value:NaN}case 2:{const[n,e]=t,i=this._mapping.get(n);if(null!=i){const t=i.mapping.get(e);if(null!=t)return t.value}return NaN}case 3:{const[n,e,i]=t,s=this._mapping.get(n);if(null!=s){const t=s.mapping.get(e);if(null!=t){const n=t.mapping.get(i);if(null!=n)return n.value}}return NaN}default:l.unreachable()}}synthetic(t){if(c.isNumber(t))return t;if(c.isString(t))return this._lookup([t]);let n=0;const e=t[t.length-1];return c.isNumber(e)&&(n=e,t=t.slice(0,-1)),this._lookup(t)+n}v_synthetic(t){const n=t.length,e=new g.ScreenArray(n);for(let i=0;i<n;i++)e[i]=this.synthetic(t[i]);return e}_init(t){const{levels:n,mapping:e,tops:i,mids:s,inside_padding:r}=(()=>{if(p.every(this.factors,c.isString)){const t=this.factors,[n,e]=u(t,this.factor_padding);return{levels:1,mapping:n,tops:null,mids:null,inside_padding:e}}if(p.every(this.factors,(t=>c.isArray(t)&&2==t.length&&c.isString(t[0])&&c.isString(t[1])))){const t=this.factors,[n,e]=h(t,this.group_padding,this.factor_padding),i=[...n.keys()];return{levels:2,mapping:n,tops:i,mids:null,inside_padding:e}}if(p.every(this.factors,(t=>c.isArray(t)&&3==t.length&&c.isString(t[0])&&c.isString(t[1])&&c.isString(t[2])))){const t=this.factors,[n,e]=d(t,this.group_padding,this.subgroup_padding,this.factor_padding),i=[...n.keys()],s=[];for(const[t,e]of n)for(const n of e.mapping.keys())s.push([t,n]);return{levels:3,mapping:n,tops:i,mids:s,inside_padding:e}}l.unreachable()})();this._mapping=e,this.tops=i,this.mids=s;let a=0,o=this.factors.length+r;if(\"percent\"==this.range_padding_units){const t=(o-a)*this.range_padding/2;a-=t,o+=t}else a-=this.range_padding,o+=this.range_padding;this.setv({start:a,end:o,levels:n},{silent:t}),\"auto\"==this.bounds&&this.setv({bounds:[a,o]},{silent:!0})}}e.FactorRange=_,_.__name__=\"FactorRange\",_.init_FactorRange()},\n", " function _(e,t,i,n,s){n();const a=e(53);class l extends a.Model{constructor(e){super(e),this.have_updated_interactively=!1}static init_Range(){this.define((({Number:e,Tuple:t,Or:i,Auto:n,Nullable:s})=>({bounds:[s(i(t(s(e),s(e)),n)),null],min_interval:[s(e),null],max_interval:[s(e),null]}))),this.internal((({Array:e,AnyRef:t})=>({plots:[e(t()),[]]})))}get is_reversed(){return this.start>this.end}get is_valid(){return isFinite(this.min)&&isFinite(this.max)}}i.Range=l,l.__name__=\"Range\",l.init_Range()},\n", " function _(e,t,i,n,l){n();const o=e(1).__importStar(e(107));function a(e,t,{x0:i,x1:n,y0:l,y1:o},a){t.save(),t.beginPath(),t.moveTo(i,(l+o)/2),t.lineTo(n,(l+o)/2),e.line.doit&&(e.line.set_vectorize(t,a),t.stroke()),t.restore()}function r(e,t,{x0:i,x1:n,y0:l,y1:o},a){var r,c;const s=.1*Math.abs(n-i),_=.1*Math.abs(o-l),v=i+s,d=n-s,h=l+_,g=o-_;t.beginPath(),t.rect(v,h,d-v,g-h),e.fill.doit&&(e.fill.set_vectorize(t,a),t.fill()),(null===(r=e.hatch)||void 0===r?void 0:r.doit)&&(e.hatch.set_vectorize(t,a),t.fill()),(null===(c=e.line)||void 0===c?void 0:c.doit)&&(e.line.set_vectorize(t,a),t.stroke())}i.generic_line_scalar_legend=function(e,t,{x0:i,x1:n,y0:l,y1:o}){t.save(),t.beginPath(),t.moveTo(i,(l+o)/2),t.lineTo(n,(l+o)/2),e.line.doit&&(e.line.set_value(t),t.stroke()),t.restore()},i.generic_line_vector_legend=a,i.generic_line_legend=a,i.generic_area_scalar_legend=function(e,t,{x0:i,x1:n,y0:l,y1:o}){var a,r;const c=.1*Math.abs(n-i),s=.1*Math.abs(o-l),_=i+c,v=n-c,d=l+s,h=o-s;t.beginPath(),t.rect(_,d,v-_,h-d),e.fill.doit&&(e.fill.set_value(t),t.fill()),(null===(a=e.hatch)||void 0===a?void 0:a.doit)&&(e.hatch.set_value(t),t.fill()),(null===(r=e.line)||void 0===r?void 0:r.doit)&&(e.line.set_value(t),t.stroke())},i.generic_area_vector_legend=r,i.generic_area_legend=r,i.line_interpolation=function(e,t,i,n,l,a){const{sx:r,sy:c}=t;let s,_,v,d;\"point\"==t.type?([v,d]=e.yscale.r_invert(c-1,c+1),[s,_]=e.xscale.r_invert(r-1,r+1)):\"v\"==t.direction?([v,d]=e.yscale.r_invert(c,c),[s,_]=[Math.min(i-1,l-1),Math.max(i+1,l+1)]):([s,_]=e.xscale.r_invert(r,r),[v,d]=[Math.min(n-1,a-1),Math.max(n+1,a+1)]);const{x:h,y:g}=o.check_2_segments_intersect(s,v,_,d,i,n,l,a);return[h,g]}},\n", " function _(t,n,e,i,r){function s(t,n){return(t.x-n.x)**2+(t.y-n.y)**2}function o(t,n,e){const i=s(n,e);if(0==i)return s(t,n);const r=((t.x-n.x)*(e.x-n.x)+(t.y-n.y)*(e.y-n.y))/i;if(r<0)return s(t,n);if(r>1)return s(t,e);return s(t,{x:n.x+r*(e.x-n.x),y:n.y+r*(e.y-n.y)})}i(),e.point_in_poly=function(t,n,e,i){let r=!1,s=e[e.length-1],o=i[i.length-1];for(let u=0;u<e.length;u++){const c=e[u],_=i[u];o<n!=_<n&&s+(n-o)/(_-o)*(c-s)<t&&(r=!r),s=c,o=_}return r},e.point_in_ellipse=function(t,n,e,i,r,s,o){return((Math.cos(e)/r)**2+(Math.sin(e)/i)**2)*(t-s)**2+2*Math.cos(e)*Math.sin(e)*((1/r)**2-(1/i)**2)*(t-s)*(n-o)+((Math.cos(e)/i)**2+(Math.sin(e)/r)**2)*(n-o)**2<=1},e.dist_2_pts=s,e.dist_to_segment_squared=o,e.dist_to_segment=function(t,n,e){return Math.sqrt(o(t,n,e))},e.check_2_segments_intersect=function(t,n,e,i,r,s,o,u){const c=(u-s)*(e-t)-(o-r)*(i-n);if(0==c)return{hit:!1,x:null,y:null};{let _=n-s,h=t-r;const l=(e-t)*_-(i-n)*h;_=((o-r)*_-(u-s)*h)/c,h=l/c;return{hit:_>0&&_<1&&h>0&&h<1,x:t+_*(e-t),y:n+_*(i-n)}}}},\n", " function _(t,e,s,i,a){i();const o=t(1),n=t(109),_=t(113),r=o.__importDefault(t(114)),h=o.__importDefault(t(115)),l=t(22),g=t(46);class u{constructor(t){this._atlas=new Map,this._width=256,this._height=256,this.tex=new n.Texture2d(t),this.tex.set_wrapping(t.REPEAT,t.REPEAT),this.tex.set_interpolation(t.NEAREST,t.NEAREST),this.tex.set_size([this._width,this._height],t.RGBA),this.tex.set_data([0,0],[this._width,this._height],new Uint8Array(4*this._width*this._height)),this.get_atlas_data([1])}get_atlas_data(t){const e=t.join(\"-\");let s=this._atlas.get(e);if(null==s){const[i,a]=this.make_pattern(t),o=this._atlas.size;this.tex.set_data([0,o],[this._width,1],new Uint8Array(i.map((t=>t+10)))),s=[o/this._height,a],this._atlas.set(e,s)}return s}make_pattern(t){t.length>1&&t.length%2&&(t=t.concat(t));let e=0;for(const s of t)e+=s;const s=[];let i=0;for(let e=0,a=t.length+2;e<a;e+=2){const a=Math.max(1e-4,t[e%t.length]),o=Math.max(1e-4,t[(e+1)%t.length]);s.push(i,i+a),i+=a+o}const a=this._width,o=new Float32Array(4*a);for(let t=0,i=a;t<i;t++){let i,n,_;const r=e*t/(a-1);let h=0,l=1e16;for(let t=0,e=s.length;t<e;t++){const e=Math.abs(s[t]-r);e<l&&(h=t,l=e)}h%2==0?(_=r<=s[h]?1:0,n=s[h],i=s[h+1]):(_=r>s[h]?-1:0,n=s[h-1],i=s[h]),o[4*t+0]=s[h],o[4*t+1]=_,o[4*t+2]=n,o[4*t+3]=i}return[o,e]}}u.__name__=\"DashAtlas\";const f={miter:0,round:1,bevel:2},c={\"\":0,none:0,\".\":0,round:1,\")\":1,\"(\":1,o:1,\"triangle in\":2,\"<\":2,\"triangle out\":3,\">\":3,square:4,\"[\":4,\"]\":4,\"=\":4,butt:5,\"|\":5};class d extends _.BaseGLGlyph{constructor(t,e){super(t,e),this.glyph=e,this._scale_aspect=0;const s=r.default,i=h.default;this.prog=new n.Program(t),this.prog.set_shaders(s,i),this.index_buffer=new n.IndexBuffer(t),this.vbo_position=new n.VertexBuffer(t),this.vbo_tangents=new n.VertexBuffer(t),this.vbo_segment=new n.VertexBuffer(t),this.vbo_angles=new n.VertexBuffer(t),this.vbo_texcoord=new n.VertexBuffer(t),this.dash_atlas=new u(t)}draw(t,e,s){const i=e.glglyph;if(i.data_changed&&(i._set_data(),i.data_changed=!1),this.visuals_changed&&(this._set_visuals(),this.visuals_changed=!1),i._update_scale(1,1),this._scale_aspect=1,this.prog.set_attribute(\"a_position\",\"vec2\",i.vbo_position),this.prog.set_attribute(\"a_tangents\",\"vec4\",i.vbo_tangents),this.prog.set_attribute(\"a_segment\",\"vec2\",i.vbo_segment),this.prog.set_attribute(\"a_angles\",\"vec2\",i.vbo_angles),this.prog.set_attribute(\"a_texcoord\",\"vec2\",i.vbo_texcoord),this.prog.set_uniform(\"u_length\",\"float\",[i.cumsum]),this.prog.set_texture(\"u_dash_atlas\",this.dash_atlas.tex),this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[s.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[s.width,s.height]),this.prog.set_uniform(\"u_scale_aspect\",\"vec2\",[1,1]),this.prog.set_uniform(\"u_scale_length\",\"float\",[Math.sqrt(2)]),this.I_triangles=i.I_triangles,this.I_triangles.length<65535)this.index_buffer.set_size(2*this.I_triangles.length),this.index_buffer.set_data(0,new Uint16Array(this.I_triangles)),this.prog.draw(this.gl.TRIANGLES,this.index_buffer);else{t=Array.from(this.I_triangles);const e=this.I_triangles.length,s=64008,a=[];for(let t=0,i=Math.ceil(e/s);t<i;t++)a.push([]);for(let e=0,i=t.length;e<i;e++){const i=t[e]%s;a[Math.floor(t[e]/s)].push(i)}for(let t=0,e=a.length;t<e;t++){const e=new Uint16Array(a[t]),o=t*s*4;0!==e.length&&(this.prog.set_attribute(\"a_position\",\"vec2\",i.vbo_position,0,2*o),this.prog.set_attribute(\"a_tangents\",\"vec4\",i.vbo_tangents,0,4*o),this.prog.set_attribute(\"a_segment\",\"vec2\",i.vbo_segment,0,2*o),this.prog.set_attribute(\"a_angles\",\"vec2\",i.vbo_angles,0,2*o),this.prog.set_attribute(\"a_texcoord\",\"vec2\",i.vbo_texcoord,0,2*o),this.index_buffer.set_size(2*e.length),this.index_buffer.set_data(0,e),this.prog.draw(this.gl.TRIANGLES,this.index_buffer))}}}_set_data(){this._bake(),this.vbo_position.set_size(4*this.V_position.length),this.vbo_position.set_data(0,this.V_position),this.vbo_tangents.set_size(4*this.V_tangents.length),this.vbo_tangents.set_data(0,this.V_tangents),this.vbo_angles.set_size(4*this.V_angles.length),this.vbo_angles.set_data(0,this.V_angles),this.vbo_texcoord.set_size(4*this.V_texcoord.length),this.vbo_texcoord.set_data(0,this.V_texcoord)}_set_visuals(){const{line_color:t,line_alpha:e,line_width:s,line_cap:i,line_join:a,line_dash:o,line_dash_offset:n}=this.glyph.visuals.line,[_,r,h,u]=l.color2rgba(t.value,e.value),d=s.value,p=c[i.value],v=f[a.value];this.prog.set_uniform(\"u_color\",\"vec4\",[_/255,r/255,h/255,u/255]),this.prog.set_uniform(\"u_linewidth\",\"float\",[d]),this.prog.set_uniform(\"u_antialias\",\"float\",[.9]),this.prog.set_uniform(\"u_linecaps\",\"vec2\",[p,p]),this.prog.set_uniform(\"u_linejoin\",\"float\",[v]),this.prog.set_uniform(\"u_miter_limit\",\"float\",[10]);const b=g.resolve_line_dash(o.value);let m=0,w=1;b.length&&([m,w]=this.dash_atlas.get_atlas_data(b)),this.prog.set_uniform(\"u_dash_index\",\"float\",[m]),this.prog.set_uniform(\"u_dash_phase\",\"float\",[n.value]),this.prog.set_uniform(\"u_dash_period\",\"float\",[w]),this.prog.set_uniform(\"u_dash_caps\",\"vec2\",[p,p]),this.prog.set_uniform(\"u_closed\",\"float\",[0])}_bake(){let t,e,s,i,a,o,n,_;const r=this.nvertices,h=this.glyph.sx,l=this.glyph.sy,g=n=new Float32Array(2*r),u=new Float32Array(2*r),f=_=new Float32Array(4*r);for(let t=0,e=r;t<e;t++)g[2*t+0]=isFinite(h[t])?h[t]:0,g[2*t+1]=isFinite(l[t])?l[t]:0;this.tangents=e=new Float32Array(2*r-2);for(let t=0,s=r-1;t<s;t++)e[2*t+0]=n[2*(t+1)+0]-n[2*t+0],e[2*t+1]=n[2*(t+1)+1]-n[2*t+1];for(let t=0,s=r-1;t<s;t++)f[4*(t+1)+0]=e[2*t+0],f[4*(t+1)+1]=e[2*t+1],f[4*t+2]=e[2*t+0],f[4*t+3]=e[2*t+1];f[0]=e[0],f[1]=e[1],f[4*(r-1)+2]=e[2*(r-2)+0],f[4*(r-1)+3]=e[2*(r-2)+1];const c=new Float32Array(r);for(let t=0,e=r;t<e;t++)c[t]=Math.atan2(_[4*t+0]*_[4*t+3]-_[4*t+1]*_[4*t+2],_[4*t+0]*_[4*t+2]+_[4*t+1]*_[4*t+3]);for(let t=0,e=r-1;t<e;t++)u[2*t+0]=c[t],u[2*t+1]=c[t+1];for(let t=0,e=r;t<e;t++)isFinite(h[t])||(g[2*t+0]=h[t]),isFinite(l[t])||(g[2*t+1]=l[t]);const d=4*r-4;this.V_position=i=new Float32Array(2*d),this.V_angles=s=new Float32Array(2*d),this.V_tangents=a=new Float32Array(4*d),this.V_texcoord=o=new Float32Array(2*d);for(let t=0,e=r;t<e;t++)for(let e=0;e<4;e++){for(let a=0;a<2;a++)i[2*(4*t+e-2)+a]=g[2*t+a],s[2*(4*t+e)+a]=u[2*t+a];for(let s=0;s<4;s++)a[4*(4*t+e-2)+s]=f[4*t+s]}for(let t=0,e=r;t<e;t++)o[2*(4*t+0)+0]=-1,o[2*(4*t+1)+0]=-1,o[2*(4*t+2)+0]=1,o[2*(4*t+3)+0]=1,o[2*(4*t+0)+1]=-1,o[2*(4*t+1)+1]=1,o[2*(4*t+2)+1]=-1,o[2*(4*t+3)+1]=1;const p=6*(r-1);this.I_triangles=t=new Uint32Array(p);for(let e=0,s=r;e<s;e++)t[6*e+0]=0+4*e,t[6*e+1]=1+4*e,t[6*e+2]=3+4*e,t[6*e+3]=2+4*e,t[6*e+4]=0+4*e,t[6*e+5]=3+4*e}_update_scale(t,e){let s;const i=this.nvertices,a=4*i-4,o=this.tangents,n=new Float32Array(i-1),_=new Float32Array(2*i);this.V_segment=s=new Float32Array(2*a);for(let s=0,a=i-1;s<a;s++)n[s]=Math.sqrt((o[2*s+0]*t)**2+(o[2*s+1]*e)**2);let r=0;for(let t=0,e=i-1;t<e;t++)r+=n[t],_[2*(t+1)+0]=r,_[2*t+1]=r;for(let t=0,e=i;t<e;t++)for(let e=0;e<4;e++)for(let i=0;i<2;i++)s[2*(4*t+e)+i]=_[2*t+i];this.cumsum=r,this.vbo_segment.set_size(4*this.V_segment.length),this.vbo_segment.set_data(0,this.V_segment)}}s.LineGL=d,d.__name__=\"LineGL\"},\n", " function _(e,r,f,u,x){u(),x(\"Program\",e(110).Program),x(\"Texture2d\",e(112).Texture2d);var t=e(111);x(\"IndexBuffer\",t.IndexBuffer),x(\"VertexBuffer\",t.VertexBuffer)},\n", " function _(t,e,i,s,a){s();const r=t(111);class n{constructor(t){this.gl=t,this.UTYPEMAP={float:\"uniform1fv\",vec2:\"uniform2fv\",vec3:\"uniform3fv\",vec4:\"uniform4fv\",int:\"uniform1iv\",ivec2:\"uniform2iv\",ivec3:\"uniform3iv\",ivec4:\"uniform4iv\",bool:\"uniform1iv\",bvec2:\"uniform2iv\",bvec3:\"uniform3iv\",bvec4:\"uniform4iv\",mat2:\"uniformMatrix2fv\",mat3:\"uniformMatrix3fv\",mat4:\"uniformMatrix4fv\",sampler1D:\"uniform1i\",sampler2D:\"uniform1i\",sampler3D:\"uniform1i\"},this.ATYPEMAP={float:\"vertexAttrib1f\",vec2:\"vertexAttrib2f\",vec3:\"vertexAttrib3f\",vec4:\"vertexAttrib4f\"},this.ATYPEINFO={float:[1,5126],vec2:[2,5126],vec3:[3,5126],vec4:[4,5126],vec4_uint8:[4,5121]},this._linked=!1,this._validated=!1,this._unset_variables=new Set,this._known_invalid=new Set,this._locations=new Map,this._samplers=new Map,this._attributes=new Map,this.handle=this.gl.createProgram()}delete(){this.gl.deleteProgram(this.handle)}activate(){this.gl.useProgram(this.handle)}deactivate(){this.gl.useProgram(0)}set_shaders(t,e){const i=this.gl;this._linked=!1;const s=i.createShader(i.VERTEX_SHADER),a=i.createShader(i.FRAGMENT_SHADER),r=[[t,s,\"vertex\"],[e,a,\"fragment\"]];for(const[t,e,s]of r){i.shaderSource(e,t),i.compileShader(e);if(!i.getShaderParameter(e,i.COMPILE_STATUS)){const t=i.getShaderInfoLog(e);throw new Error(`errors in ${s} shader:\\n${t}`)}}if(i.attachShader(this.handle,s),i.attachShader(this.handle,a),i.linkProgram(this.handle),!i.getProgramParameter(this.handle,i.LINK_STATUS)){const t=i.getProgramInfoLog(this.handle);throw new Error(`Program link error:\\n${t}`)}this._unset_variables=this._get_active_attributes_and_uniforms(),i.detachShader(this.handle,s),i.detachShader(this.handle,a),i.deleteShader(s),i.deleteShader(a),this._known_invalid.clear(),this._linked=!0}_get_active_attributes_and_uniforms(){const t=this.gl;this._locations.clear();const e=new RegExp(\"(\\\\w+)\\\\s*(\\\\[(\\\\d+)\\\\])\\\\s*\"),i=t.getProgramParameter(this.handle,t.ACTIVE_UNIFORMS),s=[],a=[],r=[[s,t.getProgramParameter(this.handle,t.ACTIVE_ATTRIBUTES),t.getActiveAttrib,t.getAttribLocation],[a,i,t.getActiveUniform,t.getUniformLocation]];for(const[i,s,a,n]of r)for(let r=0;r<s;r+=1){const s=a.call(t,this.handle,r),o=s.name,h=o.match(e);if(null!=h){const t=h[1];for(let e=0;e<s.size;e+=1)i.push([`${t}[${e}]`,s.type])}else i.push([o,s.type]);this._locations.set(o,n.call(t,this.handle,o))}const n=new Set;for(const[t]of s)n.add(t);for(const[t]of a)n.add(t);return n}set_texture(t,e){var i;if(!this._linked)throw new Error(\"Cannot set uniform when program has no code\");const s=null!==(i=this._locations.get(t))&&void 0!==i?i:-1;if(s<0)this._known_invalid.has(t)||(this._known_invalid.add(t),console.log(`\"Variable ${t} is not an active texture`));else{this._unset_variables.has(t)&&this._unset_variables.delete(t),this.activate();{let i=this._samplers.size;this._samplers.has(t)&&(i=this._samplers.get(t)[2]),this._samplers.set(t,[e._target,e.handle,i]),this.gl.uniform1i(s,i)}}}set_uniform(t,e,i){var s;if(!this._linked)throw new Error(\"Cannot set uniform when program has no code\");const a=null!==(s=this._locations.get(t))&&void 0!==s?s:-1;if(a<0)return void(this._known_invalid.has(t)||(this._known_invalid.add(t),console.log(`Variable ${t} is not an active uniform`)));this._unset_variables.has(t)&&this._unset_variables.delete(t);let r=1;if(!e.startsWith(\"mat\")){const t=\"int\"==e||\"bool\"==e?\"float\":e.replace(/^ib/,\"\");r=Math.floor(i.length/this.ATYPEINFO[t][0])}if(r>1)for(let e=0;e<r;e+=1)if(this._unset_variables.has(`${t}[${e}]`)){const i=`${t}[${e}]`;this._unset_variables.has(i)&&this._unset_variables.delete(i)}const n=this.UTYPEMAP[e];this.activate(),e.startsWith(\"mat\")?this.gl[n](a,!1,i):this.gl[n](a,i)}set_attribute(t,e,i,s=0,a=0,n=!1){var o;if(!this._linked)throw new Error(\"Cannot set attribute when program has no code\");const h=null!==(o=this._locations.get(t))&&void 0!==o?o:-1;if(h<0)this._known_invalid.has(t)||(this._known_invalid.add(t),i instanceof r.VertexBuffer&&a>0||console.log(`Variable ${t} is not an active attribute`));else if(this._unset_variables.has(t)&&this._unset_variables.delete(t),this.activate(),i instanceof r.VertexBuffer){const[r,o]=this.ATYPEINFO[e],l=\"vertexAttribPointer\",_=[r,o,n,s,a];this._attributes.set(t,[i.handle,h,l,_])}else{const s=this.ATYPEMAP[e];this._attributes.set(t,[null,h,s,i])}}_pre_draw(){this.activate();for(const[t,e,i]of this._samplers.values())this.gl.activeTexture(this.gl.TEXTURE0+i),this.gl.bindTexture(t,e);for(const[t,e,i,s]of this._attributes.values())null!=t?(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,t),this.gl.enableVertexAttribArray(e),this.gl[i].apply(this.gl,[e,...s])):(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,null),this.gl.disableVertexAttribArray(e),this.gl[i].apply(this.gl,[e,...s]));this._validated||(this._validated=!0,this._validate())}_validate(){if(this._unset_variables.size&&console.log(`Program has unset variables: ${this._unset_variables}`),this.gl.validateProgram(this.handle),!this.gl.getProgramParameter(this.handle,this.gl.VALIDATE_STATUS))throw console.log(this.gl.getProgramInfoLog(this.handle)),new Error(\"Program validation error\")}draw(t,e){if(!this._linked)throw new Error(\"Cannot draw program if code has not been set\");if(e instanceof r.IndexBuffer){this._pre_draw(),e.activate();const i=e.buffer_size/2,s=this.gl.UNSIGNED_SHORT;this.gl.drawElements(t,i,s,0),e.deactivate()}else{const[i,s]=e;0!=s&&(this._pre_draw(),this.gl.drawArrays(t,i,s))}}}i.Program=n,n.__name__=\"Program\"},\n", " function _(t,e,s,i,a){i();class r{constructor(t){this.gl=t,this._usage=35048,this.buffer_size=0,this.handle=this.gl.createBuffer()}delete(){this.gl.deleteBuffer(this.handle)}activate(){this.gl.bindBuffer(this._target,this.handle)}deactivate(){this.gl.bindBuffer(this._target,null)}set_size(t){t!=this.buffer_size&&(this.activate(),this.gl.bufferData(this._target,t,this._usage),this.buffer_size=t)}set_data(t,e){this.activate(),this.gl.bufferSubData(this._target,t,e)}}s.Buffer=r,r.__name__=\"Buffer\";class f extends r{constructor(){super(...arguments),this._target=34962}}s.VertexBuffer=f,f.__name__=\"VertexBuffer\";class h extends r{constructor(){super(...arguments),this._target=34963}}s.IndexBuffer=h,h.__name__=\"IndexBuffer\"},\n", " function _(t,e,i,a,r){a();const s=t(11);class h{constructor(t){this.gl=t,this._target=3553,this._types={Int8Array:5120,Uint8Array:5121,Int16Array:5122,Uint16Array:5123,Int32Array:5124,Uint32Array:5125,Float32Array:5126},this.handle=this.gl.createTexture()}delete(){this.gl.deleteTexture(this.handle)}activate(){this.gl.bindTexture(this._target,this.handle)}deactivate(){this.gl.bindTexture(this._target,0)}_get_alignment(t){const e=[4,8,2,1];for(const i of e)if(t%i==0)return i;s.unreachable()}set_wrapping(t,e){this.activate(),this.gl.texParameterf(this._target,this.gl.TEXTURE_WRAP_S,t),this.gl.texParameterf(this._target,this.gl.TEXTURE_WRAP_T,e)}set_interpolation(t,e){this.activate(),this.gl.texParameterf(this._target,this.gl.TEXTURE_MIN_FILTER,t),this.gl.texParameterf(this._target,this.gl.TEXTURE_MAG_FILTER,e)}set_size([t,e],i){var a,r,s;t==(null===(a=this._shape_format)||void 0===a?void 0:a.width)&&e==(null===(r=this._shape_format)||void 0===r?void 0:r.height)&&i==(null===(s=this._shape_format)||void 0===s?void 0:s.format)||(this._shape_format={width:t,height:e,format:i},this.activate(),this.gl.texImage2D(this._target,0,i,t,e,0,i,this.gl.UNSIGNED_BYTE,null))}set_data(t,[e,i],a){this.activate();const{format:r}=this._shape_format,[s,h]=t,l=this._types[a.constructor.name];if(null==l)throw new Error(`Type ${a.constructor.name} not allowed for texture`);const _=this._get_alignment(e);4!=_&&this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,_),this.gl.texSubImage2D(this._target,0,s,h,e,i,r,l,a),4!=_&&this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,4)}}i.Texture2d=h,h.__name__=\"Texture2d\"},\n", " function _(e,t,s,i,h){i();class a{constructor(e,t){this.gl=e,this.glyph=t,this.nvertices=0,this.size_changed=!1,this.data_changed=!1,this.visuals_changed=!1}set_data_changed(){const{data_size:e}=this.glyph;e!=this.nvertices&&(this.nvertices=e,this.size_changed=!0),this.data_changed=!0}set_visuals_changed(){this.visuals_changed=!0}render(e,t,s){if(0==t.length)return!0;const{width:i,height:h}=this.glyph.renderer.plot_view.canvas_view.webgl.canvas,a={pixel_ratio:this.glyph.renderer.plot_view.canvas_view.pixel_ratio,width:i,height:h};return this.draw(t,s,a),!0}}s.BaseGLGlyph=a,a.__name__=\"BaseGLGlyph\"},\n", " function _(n,e,t,a,i){a();t.default=\"\\nprecision mediump float;\\n\\nconst float PI = 3.14159265358979323846264;\\nconst float THETA = 15.0 * 3.14159265358979323846264/180.0;\\n\\nuniform float u_pixel_ratio;\\nuniform vec2 u_canvas_size, u_offset;\\nuniform vec2 u_scale_aspect;\\nuniform float u_scale_length;\\n\\nuniform vec4 u_color;\\nuniform float u_antialias;\\nuniform float u_length;\\nuniform float u_linewidth;\\nuniform float u_dash_index;\\nuniform float u_closed;\\n\\nattribute vec2 a_position;\\nattribute vec4 a_tangents;\\nattribute vec2 a_segment;\\nattribute vec2 a_angles;\\nattribute vec2 a_texcoord;\\n\\nvarying vec4 v_color;\\nvarying vec2 v_segment;\\nvarying vec2 v_angles;\\nvarying vec2 v_texcoord;\\nvarying vec2 v_miter;\\nvarying float v_length;\\nvarying float v_linewidth;\\n\\nfloat cross(in vec2 v1, in vec2 v2)\\n{\\n return v1.x*v2.y - v1.y*v2.x;\\n}\\n\\nfloat signed_distance(in vec2 v1, in vec2 v2, in vec2 v3)\\n{\\n return cross(v2-v1,v1-v3) / length(v2-v1);\\n}\\n\\nvoid rotate( in vec2 v, in float alpha, out vec2 result )\\n{\\n float c = cos(alpha);\\n float s = sin(alpha);\\n result = vec2( c*v.x - s*v.y,\\n s*v.x + c*v.y );\\n}\\n\\nvoid main()\\n{\\n bool closed = (u_closed > 0.0);\\n\\n // Attributes and uniforms to varyings\\n v_color = u_color;\\n v_linewidth = u_linewidth;\\n v_segment = a_segment * u_scale_length;\\n v_length = u_length * u_scale_length;\\n\\n // Scale to map to pixel coordinates. The original algorithm from the paper\\n // assumed isotropic scale. We obviously do not have this.\\n vec2 abs_scale_aspect = abs(u_scale_aspect);\\n vec2 abs_scale = u_scale_length * abs_scale_aspect;\\n\\n // Correct angles for aspect ratio\\n vec2 av;\\n av = vec2(1.0, tan(a_angles.x)) / abs_scale_aspect;\\n v_angles.x = atan(av.y, av.x);\\n av = vec2(1.0, tan(a_angles.y)) / abs_scale_aspect;\\n v_angles.y = atan(av.y, av.x);\\n\\n // Thickness below 1 pixel are represented using a 1 pixel thickness\\n // and a modified alpha\\n v_color.a = min(v_linewidth, v_color.a);\\n v_linewidth = max(v_linewidth, 1.0);\\n\\n // If color is fully transparent we just will discard the fragment anyway\\n if( v_color.a <= 0.0 ) {\\n gl_Position = vec4(0.0,0.0,0.0,1.0);\\n return;\\n }\\n\\n // This is the actual half width of the line\\n float w = ceil(u_antialias+v_linewidth)/2.0;\\n\\n vec2 position = a_position;\\n\\n vec2 t1 = normalize(a_tangents.xy * abs_scale_aspect); // note the scaling for aspect ratio here\\n vec2 t2 = normalize(a_tangents.zw * abs_scale_aspect);\\n float u = a_texcoord.x;\\n float v = a_texcoord.y;\\n vec2 o1 = vec2( +t1.y, -t1.x);\\n vec2 o2 = vec2( +t2.y, -t2.x);\\n\\n // This is a join\\n // ----------------------------------------------------------------\\n if( t1 != t2 ) {\\n float angle = atan (t1.x*t2.y-t1.y*t2.x, t1.x*t2.x+t1.y*t2.y); // Angle needs recalculation for some reason\\n vec2 t = normalize(t1+t2);\\n vec2 o = vec2( + t.y, - t.x);\\n\\n if ( u_dash_index > 0.0 )\\n {\\n // Broken angle\\n // ----------------------------------------------------------------\\n if( (abs(angle) > THETA) ) {\\n position += v * w * o / cos(angle/2.0);\\n float s = sign(angle);\\n if( angle < 0.0 ) {\\n if( u == +1.0 ) {\\n u = v_segment.y + v * w * tan(angle/2.0);\\n if( v == 1.0 ) {\\n position -= 2.0 * w * t1 / sin(angle);\\n u -= 2.0 * w / sin(angle);\\n }\\n } else {\\n u = v_segment.x - v * w * tan(angle/2.0);\\n if( v == 1.0 ) {\\n position += 2.0 * w * t2 / sin(angle);\\n u += 2.0*w / sin(angle);\\n }\\n }\\n } else {\\n if( u == +1.0 ) {\\n u = v_segment.y + v * w * tan(angle/2.0);\\n if( v == -1.0 ) {\\n position += 2.0 * w * t1 / sin(angle);\\n u += 2.0 * w / sin(angle);\\n }\\n } else {\\n u = v_segment.x - v * w * tan(angle/2.0);\\n if( v == -1.0 ) {\\n position -= 2.0 * w * t2 / sin(angle);\\n u -= 2.0*w / sin(angle);\\n }\\n }\\n }\\n // Continuous angle\\n // ------------------------------------------------------------\\n } else {\\n position += v * w * o / cos(angle/2.0);\\n if( u == +1.0 ) u = v_segment.y;\\n else u = v_segment.x;\\n }\\n }\\n\\n // Solid line\\n // --------------------------------------------------------------------\\n else\\n {\\n position.xy += v * w * o / cos(angle/2.0);\\n if( angle < 0.0 ) {\\n if( u == +1.0 ) {\\n u = v_segment.y + v * w * tan(angle/2.0);\\n } else {\\n u = v_segment.x - v * w * tan(angle/2.0);\\n }\\n } else {\\n if( u == +1.0 ) {\\n u = v_segment.y + v * w * tan(angle/2.0);\\n } else {\\n u = v_segment.x - v * w * tan(angle/2.0);\\n }\\n }\\n }\\n\\n // This is a line start or end (t1 == t2)\\n // ------------------------------------------------------------------------\\n } else {\\n position += v * w * o1;\\n if( u == -1.0 ) {\\n u = v_segment.x - w;\\n position -= w * t1;\\n } else {\\n u = v_segment.y + w;\\n position += w * t2;\\n }\\n }\\n\\n // Miter distance\\n // ------------------------------------------------------------------------\\n vec2 t;\\n vec2 curr = a_position * abs_scale;\\n if( a_texcoord.x < 0.0 ) {\\n vec2 next = curr + t2*(v_segment.y-v_segment.x);\\n\\n rotate( t1, +v_angles.x/2.0, t);\\n v_miter.x = signed_distance(curr, curr+t, position);\\n\\n rotate( t2, +v_angles.y/2.0, t);\\n v_miter.y = signed_distance(next, next+t, position);\\n } else {\\n vec2 prev = curr - t1*(v_segment.y-v_segment.x);\\n\\n rotate( t1, -v_angles.x/2.0,t);\\n v_miter.x = signed_distance(prev, prev+t, position);\\n\\n rotate( t2, -v_angles.y/2.0,t);\\n v_miter.y = signed_distance(curr, curr+t, position);\\n }\\n\\n if (!closed && v_segment.x <= 0.0) {\\n v_miter.x = 1e10;\\n }\\n if (!closed && v_segment.y >= v_length)\\n {\\n v_miter.y = 1e10;\\n }\\n\\n v_texcoord = vec2( u, v*w );\\n\\n // Calculate position in device coordinates. Note that we\\n // already scaled with abs scale above.\\n vec2 normpos = position * sign(u_scale_aspect);\\n normpos += 0.5; // make up for Bokeh's offset\\n normpos /= u_canvas_size / u_pixel_ratio; // in 0..1\\n gl_Position = vec4(normpos*2.0-1.0, 0.0, 1.0);\\n gl_Position.y *= -1.0;\\n}\\n\"},\n", " function _(n,t,e,s,a){s();e.default=\"\\nprecision mediump float;\\n\\nconst float PI = 3.14159265358979323846264;\\nconst float THETA = 15.0 * 3.14159265358979323846264/180.0;\\n\\nuniform sampler2D u_dash_atlas;\\n\\nuniform vec2 u_linecaps;\\nuniform float u_miter_limit;\\nuniform float u_linejoin;\\nuniform float u_antialias;\\nuniform float u_dash_phase;\\nuniform float u_dash_period;\\nuniform float u_dash_index;\\nuniform vec2 u_dash_caps;\\nuniform float u_closed;\\n\\nvarying vec4 v_color;\\nvarying vec2 v_segment;\\nvarying vec2 v_angles;\\nvarying vec2 v_texcoord;\\nvarying vec2 v_miter;\\nvarying float v_length;\\nvarying float v_linewidth;\\n\\n// Compute distance to cap ----------------------------------------------------\\nfloat cap( int type, float dx, float dy, float t, float linewidth )\\n{\\n float d = 0.0;\\n dx = abs(dx);\\n dy = abs(dy);\\n if (type == 0) discard; // None\\n else if (type == 1) d = sqrt(dx*dx+dy*dy); // Round\\n else if (type == 3) d = (dx+abs(dy)); // Triangle in\\n else if (type == 2) d = max(abs(dy),(t+dx-abs(dy))); // Triangle out\\n else if (type == 4) d = max(dx,dy); // Square\\n else if (type == 5) d = max(dx+t,dy); // Butt\\n return d;\\n}\\n\\n// Compute distance to join -------------------------------------------------\\nfloat join( in int type, in float d, in vec2 segment, in vec2 texcoord, in vec2 miter,\\n in float linewidth )\\n{\\n // texcoord.x is distance from start\\n // texcoord.y is distance from centerline\\n // segment.x and y indicate the limits (as for texcoord.x) for this segment\\n\\n float dx = texcoord.x;\\n\\n // Round join\\n if( type == 1 ) {\\n if (dx < segment.x) {\\n d = max(d,length( texcoord - vec2(segment.x,0.0)));\\n //d = length( texcoord - vec2(segment.x,0.0));\\n } else if (dx > segment.y) {\\n d = max(d,length( texcoord - vec2(segment.y,0.0)));\\n //d = length( texcoord - vec2(segment.y,0.0));\\n }\\n }\\n // Bevel join\\n else if ( type == 2 ) {\\n if (dx < segment.x) {\\n vec2 x = texcoord - vec2(segment.x,0.0);\\n d = max(d, max(abs(x.x), abs(x.y)));\\n\\n } else if (dx > segment.y) {\\n vec2 x = texcoord - vec2(segment.y,0.0);\\n d = max(d, max(abs(x.x), abs(x.y)));\\n }\\n /* Original code for bevel which does not work for us\\n if( (dx < segment.x) || (dx > segment.y) )\\n d = max(d, min(abs(x.x),abs(x.y)));\\n */\\n }\\n\\n return d;\\n}\\n\\nvoid main()\\n{\\n // If color is fully transparent we just discard the fragment\\n if( v_color.a <= 0.0 ) {\\n discard;\\n }\\n\\n // Test if dash pattern is the solid one (0)\\n bool solid = (u_dash_index == 0.0);\\n\\n // Test if path is closed\\n bool closed = (u_closed > 0.0);\\n\\n vec4 color = v_color;\\n float dx = v_texcoord.x;\\n float dy = v_texcoord.y;\\n float t = v_linewidth/2.0-u_antialias;\\n float width = 1.0; //v_linewidth; original code had dashes scale with line width, we do not\\n float d = 0.0;\\n\\n vec2 linecaps = u_linecaps;\\n vec2 dash_caps = u_dash_caps;\\n float line_start = 0.0;\\n float line_stop = v_length;\\n\\n // Apply miter limit; fragments too far into the miter are simply discarded\\n if( (dx < v_segment.x) || (dx > v_segment.y) ) {\\n float into_miter = max(v_segment.x - dx, dx - v_segment.y);\\n if (into_miter > u_miter_limit*v_linewidth/2.0)\\n discard;\\n }\\n\\n // Solid line --------------------------------------------------------------\\n if( solid ) {\\n d = abs(dy);\\n if( (!closed) && (dx < line_start) ) {\\n d = cap( int(u_linecaps.x), abs(dx), abs(dy), t, v_linewidth );\\n }\\n else if( (!closed) && (dx > line_stop) ) {\\n d = cap( int(u_linecaps.y), abs(dx)-line_stop, abs(dy), t, v_linewidth );\\n }\\n else {\\n d = join( int(u_linejoin), abs(dy), v_segment, v_texcoord, v_miter, v_linewidth );\\n }\\n\\n // Dash line --------------------------------------------------------------\\n } else {\\n float segment_start = v_segment.x;\\n float segment_stop = v_segment.y;\\n float segment_center= (segment_start+segment_stop)/2.0;\\n float freq = u_dash_period*width;\\n float u = mod( dx + u_dash_phase*width, freq);\\n vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0; // conversion to int-like\\n float dash_center= tex.x * width;\\n float dash_type = tex.y;\\n float _start = tex.z * width;\\n float _stop = tex.a * width;\\n float dash_start = dx - u + _start;\\n float dash_stop = dx - u + _stop;\\n\\n // Compute extents of the first dash (the one relative to v_segment.x)\\n // Note: this could be computed in the vertex shader\\n if( (dash_stop < segment_start) && (dash_caps.x != 5.0) ) {\\n float u = mod(segment_start + u_dash_phase*width, freq);\\n vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0; // conversion to int-like\\n dash_center= tex.x * width;\\n //dash_type = tex.y;\\n float _start = tex.z * width;\\n float _stop = tex.a * width;\\n dash_start = segment_start - u + _start;\\n dash_stop = segment_start - u + _stop;\\n }\\n\\n // Compute extents of the last dash (the one relatives to v_segment.y)\\n // Note: This could be computed in the vertex shader\\n else if( (dash_start > segment_stop) && (dash_caps.y != 5.0) ) {\\n float u = mod(segment_stop + u_dash_phase*width, freq);\\n vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0; // conversion to int-like\\n dash_center= tex.x * width;\\n //dash_type = tex.y;\\n float _start = tex.z * width;\\n float _stop = tex.a * width;\\n dash_start = segment_stop - u + _start;\\n dash_stop = segment_stop - u + _stop;\\n }\\n\\n // This test if the we are dealing with a discontinuous angle\\n bool discontinuous = ((dx < segment_center) && abs(v_angles.x) > THETA) ||\\n ((dx >= segment_center) && abs(v_angles.y) > THETA);\\n //if( dx < line_start) discontinuous = false;\\n //if( dx > line_stop) discontinuous = false;\\n\\n float d_join = join( int(u_linejoin), abs(dy),\\n v_segment, v_texcoord, v_miter, v_linewidth );\\n\\n // When path is closed, we do not have room for linecaps, so we make room\\n // by shortening the total length\\n if (closed) {\\n line_start += v_linewidth/2.0;\\n line_stop -= v_linewidth/2.0;\\n }\\n\\n // We also need to take antialias area into account\\n //line_start += u_antialias;\\n //line_stop -= u_antialias;\\n\\n // Check is dash stop is before line start\\n if( dash_stop <= line_start ) {\\n discard;\\n }\\n // Check is dash start is beyond line stop\\n if( dash_start >= line_stop ) {\\n discard;\\n }\\n\\n // Check if current dash start is beyond segment stop\\n if( discontinuous ) {\\n // Dash start is beyond segment, we discard\\n if( (dash_start > segment_stop) ) {\\n discard;\\n //gl_FragColor = vec4(1.0,0.0,0.0,.25); return;\\n }\\n\\n // Dash stop is before segment, we discard\\n if( (dash_stop < segment_start) ) {\\n discard; //gl_FragColor = vec4(0.0,1.0,0.0,.25); return;\\n }\\n\\n // Special case for round caps (nicer with this)\\n if( dash_caps.x == 1.0 ) {\\n if( (u > _stop) && (dash_stop > segment_stop ) && (abs(v_angles.y) < PI/2.0)) {\\n discard;\\n }\\n }\\n\\n // Special case for round caps (nicer with this)\\n if( dash_caps.y == 1.0 ) {\\n if( (u < _start) && (dash_start < segment_start ) && (abs(v_angles.x) < PI/2.0)) {\\n discard;\\n }\\n }\\n\\n // Special case for triangle caps (in & out) and square\\n // We make sure the cap stop at crossing frontier\\n if( (dash_caps.x != 1.0) && (dash_caps.x != 5.0) ) {\\n if( (dash_start < segment_start ) && (abs(v_angles.x) < PI/2.0) ) {\\n float a = v_angles.x/2.0;\\n float x = (segment_start-dx)*cos(a) - dy*sin(a);\\n float y = (segment_start-dx)*sin(a) + dy*cos(a);\\n if( x > 0.0 ) discard;\\n // We transform the cap into square to avoid holes\\n dash_caps.x = 4.0;\\n }\\n }\\n\\n // Special case for triangle caps (in & out) and square\\n // We make sure the cap stop at crossing frontier\\n if( (dash_caps.y != 1.0) && (dash_caps.y != 5.0) ) {\\n if( (dash_stop > segment_stop ) && (abs(v_angles.y) < PI/2.0) ) {\\n float a = v_angles.y/2.0;\\n float x = (dx-segment_stop)*cos(a) - dy*sin(a);\\n float y = (dx-segment_stop)*sin(a) + dy*cos(a);\\n if( x > 0.0 ) discard;\\n // We transform the caps into square to avoid holes\\n dash_caps.y = 4.0;\\n }\\n }\\n }\\n\\n // Line cap at start\\n if( (dx < line_start) && (dash_start < line_start) && (dash_stop > line_start) ) {\\n d = cap( int(linecaps.x), dx-line_start, dy, t, v_linewidth);\\n }\\n // Line cap at stop\\n else if( (dx > line_stop) && (dash_stop > line_stop) && (dash_start < line_stop) ) {\\n d = cap( int(linecaps.y), dx-line_stop, dy, t, v_linewidth);\\n }\\n // Dash cap left - dash_type = -1, 0 or 1, but there may be roundoff errors\\n else if( dash_type < -0.5 ) {\\n d = cap( int(dash_caps.y), abs(u-dash_center), dy, t, v_linewidth);\\n if( (dx > line_start) && (dx < line_stop) )\\n d = max(d,d_join);\\n }\\n // Dash cap right\\n else if( dash_type > 0.5 ) {\\n d = cap( int(dash_caps.x), abs(dash_center-u), dy, t, v_linewidth);\\n if( (dx > line_start) && (dx < line_stop) )\\n d = max(d,d_join);\\n }\\n // Dash body (plain)\\n else {// if( dash_type > -0.5 && dash_type < 0.5) {\\n d = abs(dy);\\n }\\n\\n // Line join\\n if( (dx > line_start) && (dx < line_stop)) {\\n if( (dx <= segment_start) && (dash_start <= segment_start)\\n && (dash_stop >= segment_start) ) {\\n d = d_join;\\n // Antialias at outer border\\n float angle = PI/2.+v_angles.x;\\n float f = abs( (segment_start - dx)*cos(angle) - dy*sin(angle));\\n d = max(f,d);\\n }\\n else if( (dx > segment_stop) && (dash_start <= segment_stop)\\n && (dash_stop >= segment_stop) ) {\\n d = d_join;\\n // Antialias at outer border\\n float angle = PI/2.+v_angles.y;\\n float f = abs((dx - segment_stop)*cos(angle) - dy*sin(angle));\\n d = max(f,d);\\n }\\n else if( dx < (segment_start - v_linewidth/2.)) {\\n discard;\\n }\\n else if( dx > (segment_stop + v_linewidth/2.)) {\\n discard;\\n }\\n }\\n else if( dx < (segment_start - v_linewidth/2.)) {\\n discard;\\n }\\n else if( dx > (segment_stop + v_linewidth/2.)) {\\n discard;\\n }\\n }\\n\\n // Distance to border ------------------------------------------------------\\n d = d - t;\\n if( d < 0.0 ) {\\n gl_FragColor = color;\\n } else {\\n d /= u_antialias;\\n gl_FragColor = vec4(color.rgb, exp(-d*d)*color.a);\\n }\\n}\\n\"},\n", " function _(i,t,s,e,l){e();const a=i(1),n=i(64),_=i(106),o=a.__importStar(i(107)),h=a.__importStar(i(48)),c=i(59);class r extends n.XYGlyphView{_inner_loop(i,t,s,e,l){for(const a of t){const t=s[a],n=e[a];0!=a?isNaN(t+n)?(i.closePath(),l.apply(i),i.beginPath()):i.lineTo(t,n):(i.beginPath(),i.moveTo(t,n))}i.closePath(),l.call(i)}_render(i,t,s){const{sx:e,sy:l}=null!=s?s:this;this.visuals.fill.doit&&(this.visuals.fill.set_value(i),this._inner_loop(i,t,e,l,i.fill)),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(i),this._inner_loop(i,t,e,l,i.fill)),this.visuals.line.doit&&(this.visuals.line.set_value(i),this._inner_loop(i,t,e,l,i.stroke))}draw_legend_for_index(i,t,s){_.generic_area_scalar_legend(this.visuals,i,t)}_hit_point(i){const t=new c.Selection;return o.point_in_poly(i.sx,i.sy,this.sx,this.sy)&&(t.add_to_selected_glyphs(this.model),t.view=this),t}}s.PatchView=r,r.__name__=\"PatchView\";class p extends n.XYGlyph{constructor(i){super(i)}static init_Patch(){this.prototype.default_view=r,this.mixins([h.LineScalar,h.FillScalar,h.HatchScalar])}}s.Patch=p,p.__name__=\"Patch\",p.init_Patch()},\n", " function _(t,e,s,i,n){i();const a=t(1),r=t(24),h=t(118),_=a.__importStar(t(107)),l=a.__importStar(t(18)),o=t(59);class c extends h.AreaView{_index_data(t){const{min:e,max:s}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._x1[n],a=this._x2[n],r=this._y[n];isNaN(i+a+r)||!isFinite(i+a+r)?t.add_empty():t.add(e(i,a),r,s(i,a),r)}}_inner(t,e,s,i,n){t.beginPath();for(let s=0,n=e.length;s<n;s++)t.lineTo(e[s],i[s]);for(let e=s.length-1;e>=0;e--)t.lineTo(s[e],i[e]);t.closePath(),n.call(t)}_render(t,e,s){const{sx1:i,sx2:n,sy:a}=null!=s?s:this;this.visuals.fill.doit&&(this.visuals.fill.set_value(t),this._inner(t,i,n,a,t.fill)),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(t),this._inner(t,i,n,a,t.fill))}_hit_point(t){const e=this.sy.length,s=new r.ScreenArray(2*e),i=new r.ScreenArray(2*e);for(let t=0,n=e;t<n;t++)s[t]=this.sx1[t],i[t]=this.sy[t],s[e+t]=this.sx2[e-t-1],i[e+t]=this.sy[e-t-1];const n=new o.Selection;return _.point_in_poly(t.sx,t.sy,s,i)&&(n.add_to_selected_glyphs(this.model),n.view=this),n}scenterxy(t){return[(this.sx1[t]+this.sx2[t])/2,this.sy[t]]}_map_data(){this.sx1=this.renderer.xscale.v_compute(this._x1),this.sx2=this.renderer.xscale.v_compute(this._x2),this.sy=this.renderer.yscale.v_compute(this._y)}}s.HAreaView=c,c.__name__=\"HAreaView\";class d extends h.Area{constructor(t){super(t)}static init_HArea(){this.prototype.default_view=c,this.define((({})=>({x1:[l.XCoordinateSpec,{field:\"x1\"}],x2:[l.XCoordinateSpec,{field:\"x2\"}],y:[l.YCoordinateSpec,{field:\"y\"}]})))}}s.HArea=d,d.__name__=\"HArea\",d.init_HArea()},\n", " function _(e,a,_,i,r){i();const s=e(1),n=e(98),t=e(106),c=s.__importStar(e(48));class l extends n.GlyphView{draw_legend_for_index(e,a,_){t.generic_area_scalar_legend(this.visuals,e,a)}}_.AreaView=l,l.__name__=\"AreaView\";class d extends n.Glyph{constructor(e){super(e)}static init_Area(){this.mixins([c.FillScalar,c.HatchScalar])}}_.Area=d,d.__name__=\"Area\",d.init_Area()},\n", " function _(t,e,s,i,n){i();const a=t(1),r=t(24),h=t(118),_=a.__importStar(t(107)),l=a.__importStar(t(18)),o=t(59);class c extends h.AreaView{_index_data(t){const{min:e,max:s}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._x[n],a=this._y1[n],r=this._y2[n];isNaN(i+a+r)||!isFinite(i+a+r)?t.add_empty():t.add(i,e(a,r),i,s(a,r))}}_inner(t,e,s,i,n){t.beginPath();for(let i=0,n=s.length;i<n;i++)t.lineTo(e[i],s[i]);for(let s=i.length-1;s>=0;s--)t.lineTo(e[s],i[s]);t.closePath(),n.call(t)}_render(t,e,s){const{sx:i,sy1:n,sy2:a}=null!=s?s:this;this.visuals.fill.doit&&(this.visuals.fill.set_value(t),this._inner(t,i,n,a,t.fill)),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(t),this._inner(t,i,n,a,t.fill))}scenterxy(t){return[this.sx[t],(this.sy1[t]+this.sy2[t])/2]}_hit_point(t){const e=this.sx.length,s=new r.ScreenArray(2*e),i=new r.ScreenArray(2*e);for(let t=0,n=e;t<n;t++)s[t]=this.sx[t],i[t]=this.sy1[t],s[e+t]=this.sx[e-t-1],i[e+t]=this.sy2[e-t-1];const n=new o.Selection;return _.point_in_poly(t.sx,t.sy,s,i)&&(n.add_to_selected_glyphs(this.model),n.view=this),n}_map_data(){this.sx=this.renderer.xscale.v_compute(this._x),this.sy1=this.renderer.yscale.v_compute(this._y1),this.sy2=this.renderer.yscale.v_compute(this._y2)}}s.VAreaView=c,c.__name__=\"VAreaView\";class d extends h.Area{constructor(t){super(t)}static init_VArea(){this.prototype.default_view=c,this.define((({})=>({x:[l.XCoordinateSpec,{field:\"x\"}],y1:[l.YCoordinateSpec,{field:\"y1\"}],y2:[l.YCoordinateSpec,{field:\"y2\"}]})))}}s.VArea=d,d.__name__=\"VArea\",d.init_VArea()},\n", " function _(i,e,s,t,n){t();const c=i(53),o=i(59),r=i(24),a=i(121),u=i(57);class _ extends c.Model{constructor(i){super(i)}static init_CDSView(){this.define((({Array:i,Ref:e})=>({filters:[i(e(a.Filter)),[]],source:[e(u.ColumnarDataSource)]}))),this.internal((({Int:i,Dict:e,Ref:s,Nullable:t})=>({indices:[s(r.Indices)],indices_map:[e(i),{}],masked:[t(s(r.Indices)),null]})))}initialize(){super.initialize(),this.compute_indices()}connect_signals(){super.connect_signals(),this.connect(this.properties.filters.change,(()=>this.compute_indices()));const i=()=>{const i=()=>this.compute_indices();null!=this.source&&(this.connect(this.source.change,i),this.source instanceof u.ColumnarDataSource&&(this.connect(this.source.streaming,i),this.connect(this.source.patching,i)))};let e=null!=this.source;e?i():this.connect(this.properties.source.change,(()=>{e||(i(),e=!0)}))}compute_indices(){var i;const{source:e}=this;if(null==e)return;const s=null!==(i=e.get_length())&&void 0!==i?i:1,t=r.Indices.all_set(s);for(const i of this.filters)t.intersect(i.compute_indices(e));this.indices=t,this._indices=[...t],this.indices_map_to_subset()}indices_map_to_subset(){this.indices_map={};for(let i=0;i<this._indices.length;i++)this.indices_map[this._indices[i]]=i}convert_selection_from_subset(i){const e=i.indices.map((i=>this._indices[i]));return new o.Selection(Object.assign(Object.assign({},i.attributes),{indices:e}))}convert_selection_to_subset(i){const e=i.indices.map((i=>this.indices_map[i]));return new o.Selection(Object.assign(Object.assign({},i.attributes),{indices:e}))}convert_indices_from_subset(i){return i.map((i=>this._indices[i]))}}s.CDSView=_,_.__name__=\"CDSView\",_.init_CDSView()},\n", " function _(e,t,n,s,c){s();const o=e(53);class r extends o.Model{constructor(e){super(e)}}n.Filter=r,r.__name__=\"Filter\"},\n", " function _(n,e,t,i,o){i();const s=n(9);async function c(n,e,t){const i=new n(Object.assign(Object.assign({},t),{model:e}));return i.initialize(),await i.lazy_initialize(),i}t.build_view=async function(n,e={parent:null},t=(n=>n.default_view)){const i=await c(t(n),n,e);return i.connect_signals(),i},t.build_views=async function(n,e,t={parent:null},i=(n=>n.default_view)){const o=s.difference([...n.keys()],e);for(const e of o)n.get(e).remove(),n.delete(e);const a=[],f=e.filter((e=>!n.has(e)));for(const e of f){const o=await c(i(e),e,t);n.set(e,o),a.push(o)}for(const n of a)n.connect_signals();return a},t.remove_views=function(n){for(const[e,t]of n)t.remove(),n.delete(e)}},\n", " function _(e,r,n,t,i){t();const s=e(62),o=e(61),l=e(124),d=e(125),a=e(126),p=e(122),_=e(64),h=e(127),c=e(128),u=e(11);class y extends s.DataRendererView{get glyph_view(){return this.node_view.glyph}async lazy_initialize(){await super.lazy_initialize();const e=this.model;let r=null,n=null;const t=new class extends l.Expression{_v_compute(n){u.assert(null==r);const[t]=r=e.layout_provider.get_edge_coordinates(n);return t}},i=new class extends l.Expression{_v_compute(e){u.assert(null!=r);const[,n]=r;return r=null,n}},s=new class extends l.Expression{_v_compute(r){u.assert(null==n);const[t]=n=e.layout_provider.get_node_coordinates(r);return t}},o=new class extends l.Expression{_v_compute(e){u.assert(null!=n);const[,r]=n;return n=null,r}},{edge_renderer:d,node_renderer:a}=this.model;if(!(d.glyph instanceof h.MultiLine||d.glyph instanceof c.Patches))throw new Error(`${this}.edge_renderer.glyph must be a MultiLine glyph`);if(!(a.glyph instanceof _.XYGlyph))throw new Error(`${this}.node_renderer.glyph must be a XYGlyph glyph`);d.glyph.properties.xs.internal=!0,d.glyph.properties.ys.internal=!0,a.glyph.properties.x.internal=!0,a.glyph.properties.y.internal=!0,d.glyph.xs={expr:t},d.glyph.ys={expr:i},a.glyph.x={expr:s},a.glyph.y={expr:o};const{parent:y}=this;this.edge_view=await p.build_view(d,{parent:y}),this.node_view=await p.build_view(a,{parent:y})}connect_signals(){super.connect_signals(),this.connect(this.model.layout_provider.change,(()=>{this.edge_view.set_data(),this.node_view.set_data(),this.request_render()}))}remove(){this.edge_view.remove(),this.node_view.remove(),super.remove()}_render(){this.edge_view.render(),this.node_view.render()}renderer_view(e){if(e instanceof o.GlyphRenderer){if(e==this.edge_view.model)return this.edge_view;if(e==this.node_view.model)return this.node_view}return super.renderer_view(e)}}n.GraphRendererView=y,y.__name__=\"GraphRendererView\";class g extends s.DataRenderer{constructor(e){super(e)}static init_GraphRenderer(){this.prototype.default_view=y,this.define((({Ref:e})=>({layout_provider:[e(d.LayoutProvider)],node_renderer:[e(o.GlyphRenderer)],edge_renderer:[e(o.GlyphRenderer)],selection_policy:[e(a.GraphHitTestPolicy),()=>new a.NodesOnly],inspection_policy:[e(a.GraphHitTestPolicy),()=>new a.NodesOnly]})))}get_selection_manager(){return this.node_renderer.data_source.selection_manager}}n.GraphRenderer=g,g.__name__=\"GraphRenderer\",g.init_GraphRenderer()},\n", " function _(e,t,s,n,i){n();const c=e(53);class l extends c.Model{constructor(e){super(e)}initialize(){super.initialize(),this._connected=new Set,this._result=new Map}v_compute(e){this._connected.has(e)||(this.connect(e.change,(()=>this._result.delete(e))),this.connect(e.patching,(()=>this._result.delete(e))),this.connect(e.streaming,(()=>this._result.delete(e))),this._connected.add(e));let t=this._result.get(e);return null==t&&(t=this._v_compute(e),this._result.set(e,t)),t}}s.Expression=l,l.__name__=\"Expression\";class h extends c.Model{constructor(e){super(e)}initialize(){super.initialize(),this._connected=new Set,this._result=new Map}compute(e){this._connected.has(e)||(this.connect(e.change,(()=>this._result.delete(e))),this.connect(e.patching,(()=>this._result.delete(e))),this.connect(e.streaming,(()=>this._result.delete(e))),this._connected.add(e));let t=this._result.get(e);return null==t&&(t=this._compute(e),this._result.set(e,t)),t}}s.ScalarExpression=h,h.__name__=\"ScalarExpression\"},\n", " function _(o,e,r,t,n){t();const s=o(53);class c extends s.Model{constructor(o){super(o)}}r.LayoutProvider=c,c.__name__=\"LayoutProvider\"},\n", " function _(e,t,d,n,s){n();const o=e(53),r=e(12),_=e(9),i=e(59);class c extends o.Model{constructor(e){super(e)}_hit_test(e,t,d){if(!t.model.visible)return null;const n=d.glyph.hit_test(e);return null==n?null:d.model.view.convert_selection_from_subset(n)}}d.GraphHitTestPolicy=c,c.__name__=\"GraphHitTestPolicy\";class a extends c{constructor(e){super(e)}hit_test(e,t){return this._hit_test(e,t,t.edge_view)}do_selection(e,t,d,n){if(null==e)return!1;const s=t.edge_renderer.data_source.selected;return s.update(e,d,n),t.edge_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,d,n,s){if(null==e)return!1;const{edge_renderer:o}=d.model,r=o.get_selection_manager().get_or_create_inspector(d.edge_view.model);return r.update(e,n,s),d.edge_view.model.data_source.setv({inspected:r},{silent:!0}),d.edge_view.model.data_source.inspect.emit([d.edge_view.model,{geometry:t}]),!r.is_empty()}}d.EdgesOnly=a,a.__name__=\"EdgesOnly\";class l extends c{constructor(e){super(e)}hit_test(e,t){return this._hit_test(e,t,t.node_view)}do_selection(e,t,d,n){if(null==e)return!1;const s=t.node_renderer.data_source.selected;return s.update(e,d,n),t.node_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,d,n,s){if(null==e)return!1;const{node_renderer:o}=d.model,r=o.get_selection_manager().get_or_create_inspector(d.node_view.model);return r.update(e,n,s),d.node_view.model.data_source.setv({inspected:r},{silent:!0}),d.node_view.model.data_source.inspect.emit([d.node_view.model,{geometry:t}]),!r.is_empty()}}d.NodesOnly=l,l.__name__=\"NodesOnly\";class u extends c{constructor(e){super(e)}hit_test(e,t){return this._hit_test(e,t,t.node_view)}get_linked_edges(e,t,d){let n=[];\"selection\"==d?n=e.selected.indices.map((t=>e.data.index[t])):\"inspection\"==d&&(n=e.inspected.indices.map((t=>e.data.index[t])));const s=[];for(let e=0;e<t.data.start.length;e++)(_.contains(n,t.data.start[e])||_.contains(n,t.data.end[e]))&&s.push(e);const o=new i.Selection;for(const e of s)o.multiline_indices[e]=[0];return o.indices=s,o}do_selection(e,t,d,n){if(null==e)return!1;const s=t.node_renderer.data_source.selected;s.update(e,d,n);const o=t.edge_renderer.data_source.selected,r=this.get_linked_edges(t.node_renderer.data_source,t.edge_renderer.data_source,\"selection\");return o.update(r,d,n),t.node_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,d,n,s){if(null==e)return!1;const o=d.node_view.model.data_source.selection_manager.get_or_create_inspector(d.node_view.model);o.update(e,n,s),d.node_view.model.data_source.setv({inspected:o},{silent:!0});const r=d.edge_view.model.data_source.selection_manager.get_or_create_inspector(d.edge_view.model),_=this.get_linked_edges(d.node_view.model.data_source,d.edge_view.model.data_source,\"inspection\");return r.update(_,n,s),d.edge_view.model.data_source.setv({inspected:r},{silent:!0}),d.node_view.model.data_source.inspect.emit([d.node_view.model,{geometry:t}]),!o.is_empty()}}d.NodesAndLinkedEdges=u,u.__name__=\"NodesAndLinkedEdges\";class m extends c{constructor(e){super(e)}hit_test(e,t){return this._hit_test(e,t,t.edge_view)}get_linked_nodes(e,t,d){let n=[];\"selection\"==d?n=t.selected.indices:\"inspection\"==d&&(n=t.inspected.indices);const s=[];for(const e of n)s.push(t.data.start[e]),s.push(t.data.end[e]);const o=_.uniq(s).map((t=>r.indexOf(e.data.index,t)));return new i.Selection({indices:o})}do_selection(e,t,d,n){if(null==e)return!1;const s=t.edge_renderer.data_source.selected;s.update(e,d,n);const o=t.node_renderer.data_source.selected,r=this.get_linked_nodes(t.node_renderer.data_source,t.edge_renderer.data_source,\"selection\");return o.update(r,d,n),t.edge_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,d,n,s){if(null==e)return!1;const o=d.edge_view.model.data_source.selection_manager.get_or_create_inspector(d.edge_view.model);o.update(e,n,s),d.edge_view.model.data_source.setv({inspected:o},{silent:!0});const r=d.node_view.model.data_source.selection_manager.get_or_create_inspector(d.node_view.model),_=this.get_linked_nodes(d.node_view.model.data_source,d.edge_view.model.data_source,\"inspection\");return r.update(_,n,s),d.node_view.model.data_source.setv({inspected:r},{silent:!0}),d.edge_view.model.data_source.inspect.emit([d.edge_view.model,{geometry:t}]),!o.is_empty()}}d.EdgesAndLinkedNodes=m,m.__name__=\"EdgesAndLinkedNodes\"},\n", " function _(t,e,i,n,s){n();const o=t(1),l=t(65),r=t(48),_=o.__importStar(t(107)),c=o.__importStar(t(18)),h=t(12),a=t(13),d=t(98),x=t(106),y=t(59);class g extends d.GlyphView{_project_data(){l.inplace.project_xy(this._xs.array,this._ys.array)}_index_data(t){const{data_size:e}=this;for(let i=0;i<e;i++){const e=this._xs.get(i);if(0==e.length){t.add_empty();continue}const n=this._ys.get(i);if(0==n.length){t.add_empty();continue}const[s,o]=h.minmax(e),[l,r]=h.minmax(n);t.add(s,l,o,r)}}_render(t,e,i){const{sxs:n,sys:s}=null!=i?i:this;for(const i of e){const e=n.get(i),o=s.get(i),l=Math.min(e.length,o.length);let r=!0;t.beginPath();for(let i=0;i<l;i++){const n=e[i],s=o[i];isFinite(n+s)?r?(t.moveTo(n,s),r=!1):t.lineTo(n,s):r=!0}this.visuals.line.set_vectorize(t,i),t.stroke()}}_hit_point(t){const e={x:t.sx,y:t.sy};let i=9999;const n=new Map;for(let t=0,s=this.sxs.length;t<s;t++){const s=Math.max(2,this.line_width.get(t)/2),o=this.sxs.get(t),l=this.sys.get(t);let r=null;for(let t=0,n=o.length-1;t<n;t++){const n={x:o[t],y:l[t]},c={x:o[t+1],y:l[t+1]},h=_.dist_to_segment(e,n,c);h<s&&h<i&&(i=h,r=[t])}null!=r&&n.set(t,r)}return new y.Selection({indices:[...n.keys()],multiline_indices:a.to_object(n)})}_hit_span(t){const{sx:e,sy:i}=t;let n,s;\"v\"==t.direction?(n=this.renderer.yscale.invert(i),s=this._ys):(n=this.renderer.xscale.invert(e),s=this._xs);const o=new Map;for(let t=0,e=s.length;t<e;t++){const e=s.get(t),i=[];for(let t=0,s=e.length-1;t<s;t++)e[t]<=n&&n<=e[t+1]&&i.push(t);i.length>0&&o.set(t,i)}return new y.Selection({indices:[...o.keys()],multiline_indices:a.to_object(o)})}get_interpolation_hit(t,e,i){const n=this._xs.get(t),s=this._ys.get(t),o=n[e],l=s[e],r=n[e+1],_=s[e+1];return x.line_interpolation(this.renderer,i,o,l,r,_)}draw_legend_for_index(t,e,i){x.generic_line_vector_legend(this.visuals,t,e,i)}scenterxy(){throw new Error(`${this}.scenterxy() is not implemented`)}}i.MultiLineView=g,g.__name__=\"MultiLineView\";class u extends d.Glyph{constructor(t){super(t)}static init_MultiLine(){this.prototype.default_view=g,this.define((({})=>({xs:[c.XCoordinateSeqSpec,{field:\"xs\"}],ys:[c.YCoordinateSeqSpec,{field:\"ys\"}]}))),this.mixins(r.LineVector)}}i.MultiLine=u,u.__name__=\"MultiLine\",u.init_MultiLine()},\n", " function _(e,t,s,i,n){i();const r=e(1),o=e(98),a=e(106),_=e(12),c=e(48),l=r.__importStar(e(107)),h=r.__importStar(e(18)),d=e(59),y=e(11),p=e(65);class x extends o.GlyphView{_project_data(){p.inplace.project_xy(this._xs.array,this._ys.array)}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++){const t=this._xs.get(s),i=this._ys.get(s);if(0==t.length)e.add_empty();else{const[s,n]=_.minmax(t),[r,o]=_.minmax(i);e.add(s,r,n,o)}}}_mask_data(){const{x_range:e,y_range:t}=this.renderer.plot_view.frame;return this.index.indices({x0:e.min,x1:e.max,y0:t.min,y1:t.max})}_inner_loop(e,t,s,i){for(let n=0,r=t.length;n<r;n++)0!=n?isNaN(t[n]+s[n])?(e.closePath(),i.apply(e),e.beginPath()):e.lineTo(t[n],s[n]):(e.beginPath(),e.moveTo(t[n],s[n]));e.closePath(),i.call(e)}_render(e,t,s){const{sxs:i,sys:n}=null!=s?s:this;for(const s of t){const t=i.get(s),r=n.get(s);this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,s),this._inner_loop(e,t,r,e.fill)),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(e,s),this._inner_loop(e,t,r,e.fill)),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,s),this._inner_loop(e,t,r,e.stroke))}}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,r=[t,s,s,t],o=[i,i,n,n],[a,_]=this.renderer.xscale.r_invert(t,s),[c,h]=this.renderer.yscale.r_invert(i,n),y=this.index.indices({x0:a,x1:_,y0:c,y1:h}),p=[];for(const e of y){const t=this.sxs.get(e),s=this.sys.get(e);let i=!0;for(let e=0,n=t.length;e<n;e++){const n=t[e],a=s[e];if(!l.point_in_poly(n,a,r,o)){i=!1;break}}i&&p.push(e)}return new d.Selection({indices:p})}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),n=this.renderer.yscale.invert(s),r=this.index.indices({x0:i,y0:n,x1:i,y1:n}),o=[];for(const e of r){const i=this.sxs.get(e),n=this.sys.get(e),r=i.length;for(let a=0,_=0;;_++){if(isNaN(i[_])||_==r){const r=i.subarray(a,_),c=n.subarray(a,_);if(l.point_in_poly(t,s,r,c)){o.push(e);break}a=_+1}if(_==r)break}}return new d.Selection({indices:o})}_get_snap_coord(e){return _.sum(e)/e.length}scenterxy(e,t,s){const i=this.sxs.get(e),n=this.sys.get(e),r=i.length;let o=!1;for(let e=0,a=0;;a++){const _=isNaN(i[a]);if(o=o||_,a==r&&!o){return[this._get_snap_coord(i),this._get_snap_coord(n)]}if(_||a==r){const r=i.subarray(e,a),o=n.subarray(e,a);if(l.point_in_poly(t,s,r,o)){return[this._get_snap_coord(r),this._get_snap_coord(o)]}e=a+1}if(a==r)break}y.unreachable()}draw_legend_for_index(e,t,s){a.generic_area_vector_legend(this.visuals,e,t,s)}}s.PatchesView=x,x.__name__=\"PatchesView\";class f extends o.Glyph{constructor(e){super(e)}static init_Patches(){this.prototype.default_view=x,this.define((({})=>({xs:[h.XCoordinateSeqSpec,{field:\"xs\"}],ys:[h.YCoordinateSeqSpec,{field:\"ys\"}]}))),this.mixins([c.LineVector,c.FillVector,c.HatchVector])}}s.Patches=f,f.__name__=\"Patches\",f.init_Patches()},\n", " function _(e,t,n,s,o){s();const r=e(53);class c extends r.Model{do_selection(e,t,n,s){return null!=e&&(t.selected.update(e,n,s),t._select.emit(),!t.selected.is_empty())}}n.SelectionPolicy=c,c.__name__=\"SelectionPolicy\";class l extends c{hit_test(e,t){const n=[];for(const s of t){const t=s.hit_test(e);null!=t&&n.push(t)}if(n.length>0){const e=n[0];for(const t of n)e.update_through_intersection(t);return e}return null}}n.IntersectRenderers=l,l.__name__=\"IntersectRenderers\";class _ extends c{hit_test(e,t){const n=[];for(const s of t){const t=s.hit_test(e);null!=t&&n.push(t)}if(n.length>0){const e=n[0];for(const t of n)e.update_through_union(t);return e}return null}}n.UnionRenderers=_,_.__name__=\"UnionRenderers\"},\n", " function _(t,n,e,s,o){s();const r=t(1),i=t(57),l=t(8),c=t(13),a=r.__importStar(t(131)),u=t(132),h=t(35);function d(t,n,e){if(l.isArray(t)){const s=t.concat(n);return null!=e&&s.length>e?s.slice(-e):s}if(l.isTypedArray(t)){const s=t.length+n.length;if(null!=e&&s>e){const o=s-e,r=t.length;let i;t.length<e?(i=new t.constructor(e),i.set(t,0)):i=t;for(let t=o,n=r;t<n;t++)i[t-o]=i[t];for(let t=0,e=n.length;t<e;t++)i[t+(r-o)]=n[t];return i}{const e=new t.constructor(n);return a.concat(t,e)}}throw new Error(\"unsupported array types\")}function f(t,n){let e,s,o;return l.isNumber(t)?(e=t,o=t+1,s=1):(e=null!=t.start?t.start:0,o=null!=t.stop?t.stop:n,s=null!=t.step?t.step:1),[e,o,s]}function m(t,n){const e=new Set;let s=!1;for(const[o,r]of n){let n,i,c,a;if(l.isArray(o)){const[s]=o;e.add(s),n=t[s].shape,i=t[s],a=r,2===o.length?(n=[1,n[0]],c=[o[0],0,o[1]]):c=o}else l.isNumber(o)?(a=[r],e.add(o)):(a=r,s=!0),c=[0,0,o],n=[1,t.length],i=t;let u=0;const[h,d,m]=f(c[1],n[0]),[_,p,g]=f(c[2],n[1]);for(let t=h;t<d;t+=m)for(let o=_;o<p;o+=g)s&&e.add(o),i[t*n[1]+o]=a[u],u++}return e}e.stream_to_column=d,e.slice=f,e.patch_to_column=m;class _ extends i.ColumnarDataSource{constructor(t){super(t)}static init_ColumnDataSource(){this.define((({Dict:t,Any:n})=>({data:[t(n),{}]})))}stream(t,n,e){const{data:s}=this;for(const[e,o]of c.entries(t))s[e]=d(s[e],o,n);if(this.setv({data:s},{silent:!0}),this.streaming.emit(),null!=this.document){const s=new h.ColumnsStreamedEvent(this.document,this.ref(),t,n);this.document._notify_change(this,\"data\",null,null,{setter_id:e,hint:s})}}patch(t,n){const{data:e}=this;let s=new Set;for(const[n,o]of c.entries(t))s=u.union(s,m(e[n],o));if(this.setv({data:e},{silent:!0}),this.patching.emit([...s]),null!=this.document){const e=new h.ColumnsPatchedEvent(this.document,this.ref(),t);this.document._notify_change(this,\"data\",null,null,{setter_id:n,hint:e})}}}e.ColumnDataSource=_,_.__name__=\"ColumnDataSource\",_.init_ColumnDataSource()},\n", " function _(t,n,o,e,c){e(),o.concat=function(t,...n){let o=t.length;for(const t of n)o+=t.length;const e=new t.constructor(o);e.set(t,0);let c=t.length;for(const t of n)e.set(t,c),c+=t.length;return e}},\n", " function _(n,o,t,e,f){function c(...n){const o=new Set;for(const t of n)for(const n of t)o.add(n);return o}e(),t.union=c,t.intersection=function(n,...o){const t=new Set;n:for(const e of n){for(const n of o)if(!n.has(e))continue n;t.add(e)}return t},t.difference=function(n,...o){const t=new Set(n);for(const n of c(...o))t.delete(n);return t}},\n", " function _(e,i,t,s,o){s();const n=e(1),a=e(53),l=e(42),r=n.__importStar(e(45)),_=e(48),c=n.__importStar(e(18));class d extends l.View{initialize(){super.initialize(),this.visuals=new r.Visuals(this)}request_render(){this.parent.request_render()}get canvas(){return this.parent.canvas}set_data(e){const i=this;for(const t of this.model){if(!(t instanceof c.VectorSpec||t instanceof c.ScalarSpec))continue;const s=t.uniform(e);i[`${t.attr}`]=s}}}t.ArrowHeadView=d,d.__name__=\"ArrowHeadView\";class h extends a.Model{constructor(e){super(e)}static init_ArrowHead(){this.define((()=>({size:[c.NumberSpec,25]})))}}t.ArrowHead=h,h.__name__=\"ArrowHead\",h.init_ArrowHead();class v extends d{clip(e,i){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.moveTo(.5*t,t),e.lineTo(.5*t,-2),e.lineTo(-.5*t,-2),e.lineTo(-.5*t,t),e.lineTo(0,0),e.lineTo(.5*t,t)}render(e,i){if(this.visuals.line.doit){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.beginPath(),e.moveTo(.5*t,t),e.lineTo(0,0),e.lineTo(-.5*t,t),e.stroke()}}}t.OpenHeadView=v,v.__name__=\"OpenHeadView\";class u extends h{constructor(e){super(e)}static init_OpenHead(){this.prototype.default_view=v,this.mixins(_.LineVector)}}t.OpenHead=u,u.__name__=\"OpenHead\",u.init_OpenHead();class m extends d{clip(e,i){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.moveTo(.5*t,t),e.lineTo(.5*t,-2),e.lineTo(-.5*t,-2),e.lineTo(-.5*t,t),e.lineTo(.5*t,t)}render(e,i){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,i),this._normal(e,i),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,i),this._normal(e,i),e.stroke())}_normal(e,i){const t=this.size.get(i);e.beginPath(),e.moveTo(.5*t,t),e.lineTo(0,0),e.lineTo(-.5*t,t),e.closePath()}}t.NormalHeadView=m,m.__name__=\"NormalHeadView\";class T extends h{constructor(e){super(e)}static init_NormalHead(){this.prototype.default_view=m,this.mixins([_.LineVector,_.FillVector]),this.override({fill_color:\"black\"})}}t.NormalHead=T,T.__name__=\"NormalHead\",T.init_NormalHead();class p extends d{clip(e,i){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.moveTo(.5*t,t),e.lineTo(.5*t,-2),e.lineTo(-.5*t,-2),e.lineTo(-.5*t,t),e.lineTo(0,.5*t),e.lineTo(.5*t,t)}render(e,i){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,i),this._vee(e,i),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,i),this._vee(e,i),e.stroke())}_vee(e,i){const t=this.size.get(i);e.beginPath(),e.moveTo(.5*t,t),e.lineTo(0,0),e.lineTo(-.5*t,t),e.lineTo(0,.5*t),e.closePath()}}t.VeeHeadView=p,p.__name__=\"VeeHeadView\";class H extends h{constructor(e){super(e)}static init_VeeHead(){this.prototype.default_view=p,this.mixins([_.LineVector,_.FillVector]),this.override({fill_color:\"black\"})}}t.VeeHead=H,H.__name__=\"VeeHead\",H.init_VeeHead();class V extends d{render(e,i){if(this.visuals.line.doit){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.beginPath(),e.moveTo(.5*t,0),e.lineTo(-.5*t,0),e.stroke()}}clip(e,i){}}t.TeeHeadView=V,V.__name__=\"TeeHeadView\";class f extends h{constructor(e){super(e)}static init_TeeHead(){this.prototype.default_view=V,this.mixins(_.LineVector)}}t.TeeHead=f,f.__name__=\"TeeHead\",f.init_TeeHead()},\n", " function _(s,e,i,t,l){t();const _=s(1),o=s(135),r=_.__importStar(s(48));class h extends o.UpperLowerView{paint(s){s.beginPath(),s.moveTo(this._lower_sx[0],this._lower_sy[0]);for(let e=0,i=this._lower_sx.length;e<i;e++)s.lineTo(this._lower_sx[e],this._lower_sy[e]);for(let e=this._upper_sx.length-1;e>=0;e--)s.lineTo(this._upper_sx[e],this._upper_sy[e]);s.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(s),s.fill()),s.beginPath(),s.moveTo(this._lower_sx[0],this._lower_sy[0]);for(let e=0,i=this._lower_sx.length;e<i;e++)s.lineTo(this._lower_sx[e],this._lower_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(s),s.stroke()),s.beginPath(),s.moveTo(this._upper_sx[0],this._upper_sy[0]);for(let e=0,i=this._upper_sx.length;e<i;e++)s.lineTo(this._upper_sx[e],this._upper_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(s),s.stroke())}}i.BandView=h,h.__name__=\"BandView\";class n extends o.UpperLower{constructor(s){super(s)}static init_Band(){this.prototype.default_view=h,this.mixins([r.Line,r.Fill]),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}}i.Band=n,n.__name__=\"Band\",n.init_Band()},\n", " function _(e,t,i,s,o){s();const r=e(1),p=e(56),n=e(20),_=r.__importStar(e(18));class a extends p.DataAnnotationView{map_data(){const{frame:e}=this.plot_view,t=this.model.dimension,i=this.coordinates.x_scale,s=this.coordinates.y_scale,o=\"height\"==t?s:i,r=\"height\"==t?i:s,p=\"height\"==t?e.bbox.yview:e.bbox.xview,n=\"height\"==t?e.bbox.xview:e.bbox.yview;let _,a,h;_=\"data\"==this.model.properties.lower.units?o.v_compute(this._lower):p.v_compute(this._lower),a=\"data\"==this.model.properties.upper.units?o.v_compute(this._upper):p.v_compute(this._upper),h=\"data\"==this.model.properties.base.units?r.v_compute(this._base):n.v_compute(this._base);const[d,c]=\"height\"==t?[1,0]:[0,1],u=[_,h],l=[a,h];this._lower_sx=u[d],this._lower_sy=u[c],this._upper_sx=l[d],this._upper_sy=l[c]}}i.UpperLowerView=a,a.__name__=\"UpperLowerView\";class h extends _.CoordinateSpec{get dimension(){return\"width\"==this.obj.dimension?\"x\":\"y\"}get units(){var e;return null!==(e=this.spec.units)&&void 0!==e?e:\"data\"}}i.XOrYCoordinateSpec=h,h.__name__=\"XOrYCoordinateSpec\";class d extends p.DataAnnotation{constructor(e){super(e)}static init_UpperLower(){this.define((()=>({dimension:[n.Dimension,\"height\"],lower:[h,{field:\"lower\"}],upper:[h,{field:\"upper\"}],base:[h,{field:\"base\"}]})))}}i.UpperLower=d,d.__name__=\"UpperLower\",d.init_UpperLower()},\n", " function _(t,i,o,n,e){n();const s=t(1),l=t(40),a=s.__importStar(t(48)),r=t(20),h=t(99);o.EDGE_TOLERANCE=2.5;class c extends l.AnnotationView{constructor(){super(...arguments),this.bbox=new h.BBox}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render()))}_render(){const{left:t,right:i,top:o,bottom:n}=this.model;if(null==t&&null==i&&null==o&&null==n)return;const{frame:e}=this.plot_view,s=this.coordinates.x_scale,l=this.coordinates.y_scale,a=(t,i,o,n,e)=>{let s;return s=null!=t?this.model.screen?t:\"data\"==i?o.compute(t):n.compute(t):e,s};this.bbox=h.BBox.from_rect({left:a(t,this.model.left_units,s,e.bbox.xview,e.bbox.left),right:a(i,this.model.right_units,s,e.bbox.xview,e.bbox.right),top:a(o,this.model.top_units,l,e.bbox.yview,e.bbox.top),bottom:a(n,this.model.bottom_units,l,e.bbox.yview,e.bbox.bottom)}),this._paint_box()}_paint_box(){const{ctx:t}=this.layer;t.save();const{left:i,top:o,width:n,height:e}=this.bbox;t.beginPath(),t.rect(i,o,n,e),this.visuals.fill.doit&&(this.visuals.fill.set_value(t),t.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(t),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke()),t.restore()}interactive_bbox(){const t=this.model.line_width+o.EDGE_TOLERANCE;return this.bbox.grow_by(t)}interactive_hit(t,i){if(null==this.model.in_cursor)return!1;return this.interactive_bbox().contains(t,i)}cursor(t,i){const{left:o,right:n,bottom:e,top:s}=this.bbox;return Math.abs(t-o)<3||Math.abs(t-n)<3?this.model.ew_cursor:Math.abs(i-e)<3||Math.abs(i-s)<3?this.model.ns_cursor:this.bbox.contains(t,i)?this.model.in_cursor:null}}o.BoxAnnotationView=c,c.__name__=\"BoxAnnotationView\";class u extends l.Annotation{constructor(t){super(t)}static init_BoxAnnotation(){this.prototype.default_view=c,this.mixins([a.Line,a.Fill,a.Hatch]),this.define((({Number:t,Nullable:i})=>({top:[i(t),null],top_units:[r.SpatialUnits,\"data\"],bottom:[i(t),null],bottom_units:[r.SpatialUnits,\"data\"],left:[i(t),null],left_units:[r.SpatialUnits,\"data\"],right:[i(t),null],right_units:[r.SpatialUnits,\"data\"],render_mode:[r.RenderMode,\"canvas\"]}))),this.internal((({Boolean:t,String:i,Nullable:o})=>({screen:[t,!1],ew_cursor:[o(i),null],ns_cursor:[o(i),null],in_cursor:[o(i),null]}))),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}update({left:t,right:i,top:o,bottom:n}){this.setv({left:t,right:i,top:o,bottom:n,screen:!0})}}o.BoxAnnotation=u,u.__name__=\"BoxAnnotation\",u.init_BoxAnnotation()},\n", " function _(t,e,i,o,n){o();const a=t(1),r=t(40),s=t(138),l=t(144),_=t(162),c=t(165),h=t(198),u=t(166),p=t(205),m=t(169),g=t(203),d=t(202),f=t(209),w=t(217),b=t(220),v=t(20),x=a.__importStar(t(48)),y=t(9),k=t(221),C=t(222),z=t(225),j=t(140),B=t(11),L=t(122),S=t(99),M=t(8);class T extends r.AnnotationView{get orientation(){return this._orientation}initialize(){super.initialize();const{ticker:t,formatter:e,color_mapper:i}=this.model;this._ticker=\"auto\"!=t?t:(()=>{switch(!0){case i instanceof f.LogColorMapper:return new h.LogTicker;case i instanceof f.ScanningColorMapper:return new h.BinnedTicker({mapper:i});case i instanceof f.CategoricalColorMapper:return new h.CategoricalTicker;default:return new h.BasicTicker}})(),this._formatter=\"auto\"!=e?e:(()=>{switch(!0){case this._ticker instanceof h.LogTicker:return new p.LogTickFormatter;case i instanceof f.CategoricalColorMapper:return new p.CategoricalTickFormatter;default:return new p.BasicTickFormatter}})(),this._major_range=(()=>{if(i instanceof f.CategoricalColorMapper){const{factors:t}=i;return new b.FactorRange({factors:t})}if(i instanceof d.ContinuousColorMapper){const{min:t,max:e}=i.metrics;return new b.Range1d({start:t,end:e})}B.unreachable()})(),this._major_scale=(()=>{if(i instanceof f.LinearColorMapper)return new w.LinearScale;if(i instanceof f.LogColorMapper)return new w.LogScale;if(i instanceof f.ScanningColorMapper){const{binning:t}=i.metrics;return new w.LinearInterpolationScale({binning:t})}if(i instanceof f.CategoricalColorMapper)return new w.CategoricalScale;B.unreachable()})(),this._minor_range=new b.Range1d({start:0,end:1}),this._minor_scale=new w.LinearScale;const o=x.attrs_of(this.model,\"major_label_\",x.Text,!0),n=x.attrs_of(this.model,\"major_tick_\",x.Line,!0),a=x.attrs_of(this.model,\"minor_tick_\",x.Line,!0),r=x.attrs_of(this.model,\"title_\",x.Text),l=i instanceof f.CategoricalColorMapper?_.CategoricalAxis:i instanceof f.LogColorMapper?_.LogAxis:_.LinearAxis;this._axis=new l(Object.assign(Object.assign(Object.assign({ticker:this._ticker,formatter:this._formatter,major_tick_in:this.model.major_tick_in,major_tick_out:this.model.major_tick_out,minor_tick_in:this.model.minor_tick_in,minor_tick_out:this.model.minor_tick_out,major_label_standoff:this.model.label_standoff,major_label_overrides:this.model.major_label_overrides,major_label_policy:this.model.major_label_policy,axis_line_color:null},o),n),a));const{title:c}=this.model;c&&(this._title=new s.Title(Object.assign({text:c,standoff:this.model.title_standoff},r)))}async lazy_initialize(){await super.lazy_initialize();const t=this,e={get parent(){return t.parent},get root(){return t.root},get frame(){return t._frame},get canvas_view(){return t.parent.canvas_view},request_layout(){t.parent.request_layout()}};this._axis_view=await L.build_view(this._axis,{parent:e}),null!=this._title&&(this._title_view=await L.build_view(this._title,{parent:e}))}remove(){var t;null===(t=this._title_view)||void 0===t||t.remove(),this._axis_view.remove(),super.remove()}connect_signals(){super.connect_signals(),this.connect(this._ticker.change,(()=>this.request_render())),this.connect(this._formatter.change,(()=>this.request_render())),this.connect(this.model.color_mapper.metrics_change,(()=>{const t=this._major_range,e=this._major_scale,{color_mapper:i}=this.model;if(i instanceof d.ContinuousColorMapper&&t instanceof b.Range1d){const{min:e,max:o}=i.metrics;t.setv({start:e,end:o})}if(i instanceof f.ScanningColorMapper&&e instanceof w.LinearInterpolationScale){const{binning:t}=i.metrics;e.binning=t}this._set_canvas_image(),this.plot_view.request_layout()}))}_set_canvas_image(){const{orientation:t}=this,e=(()=>{const{palette:e}=this.model.color_mapper;return\"vertical\"==t?y.reversed(e):e})(),[i,o]=\"vertical\"==t?[1,e.length]:[e.length,1],n=this._image=document.createElement(\"canvas\");n.width=i,n.height=o;const a=n.getContext(\"2d\"),r=a.getImageData(0,0,i,o),s=new f.LinearColorMapper({palette:e}).rgba_mapper.v_compute(y.range(0,e.length));r.data.set(s),a.putImageData(r,0,0)}update_layout(){const{location:t,width:e,height:i,padding:o,margin:n}=this.model,[a,r]=(()=>{if(!M.isString(t))return[\"end\",\"start\"];switch(t){case\"top_left\":return[\"start\",\"start\"];case\"top\":case\"top_center\":return[\"start\",\"center\"];case\"top_right\":return[\"start\",\"end\"];case\"bottom_left\":return[\"end\",\"start\"];case\"bottom\":case\"bottom_center\":return[\"end\",\"center\"];case\"bottom_right\":return[\"end\",\"end\"];case\"left\":case\"center_left\":return[\"center\",\"start\"];case\"center\":case\"center_center\":return[\"center\",\"center\"];case\"right\":case\"center_right\":return[\"center\",\"end\"]}})(),s=this._orientation=(()=>{const{orientation:t}=this.model;return\"auto\"==t?null!=this.panel?this.panel.is_horizontal?\"horizontal\":\"vertical\":\"start\"==r||\"end\"==r||\"center\"==r&&\"center\"==a?\"vertical\":\"horizontal\":t})(),_=new C.NodeLayout,c=new C.VStack,h=new C.VStack,u=new C.HStack,p=new C.HStack;_.absolute=!0,c.absolute=!0,h.absolute=!0,u.absolute=!0,p.absolute=!0;const[m,g,d,f]=(()=>\"horizontal\"==s?[this._major_scale,this._minor_scale,this._major_range,this._minor_range]:[this._minor_scale,this._major_scale,this._minor_range,this._major_range])();this._frame=new l.CartesianFrame(m,g,d,f),_.on_resize((t=>this._frame.set_geometry(t)));const w=new z.BorderLayout;this._inner_layout=w,w.absolute=!0,w.center_panel=_,w.top_panel=c,w.bottom_panel=h,w.left_panel=u,w.right_panel=p;const b={left:o,right:o,top:o,bottom:o},v=(()=>{if(null==this.panel){if(M.isString(t))return{left:n,right:n,top:n,bottom:n};{const[e,i]=t;return{left:e,right:n,top:n,bottom:i}}}if(!M.isString(t)){const[e,i]=t;return w.fixup_geometry=(t,o)=>{const n=t,a=this.layout.bbox,{width:r,height:s}=t;if(t=new S.BBox({left:a.left+e,bottom:a.bottom-i,width:r,height:s}),null!=o){const e=t.left-n.left,i=t.top-n.top,{left:a,top:r,width:s,height:l}=o;o=new S.BBox({left:a+e,top:r+i,width:s,height:l})}return[t,o]},{left:e,right:0,top:0,bottom:i}}w.fixup_geometry=(t,e)=>{const i=t;if(\"horizontal\"==s){const{top:e,width:i,height:o}=t;if(\"end\"==r){const{right:n}=this.layout.bbox;t=new S.BBox({right:n,top:e,width:i,height:o})}else if(\"center\"==r){const{hcenter:n}=this.layout.bbox;t=new S.BBox({hcenter:Math.round(n),top:e,width:i,height:o})}}else{const{left:e,width:i,height:o}=t;if(\"end\"==a){const{bottom:n}=this.layout.bbox;t=new S.BBox({left:e,bottom:n,width:i,height:o})}else if(\"center\"==a){const{vcenter:n}=this.layout.bbox;t=new S.BBox({left:e,vcenter:Math.round(n),width:i,height:o})}}if(null!=e){const o=t.left-i.left,n=t.top-i.top,{left:a,top:r,width:s,height:l}=e;e=new S.BBox({left:a+o,top:r+n,width:s,height:l})}return[t,e]}})();let x,y,B,L;if(w.padding=b,null!=this.panel?(x=\"max\",y=void 0,B=void 0,L=void 0):\"auto\"==(\"horizontal\"==s?e:i)?(x=\"fixed\",y=25*this.model.color_mapper.palette.length,B={percent:.3},L={percent:.8}):(x=\"fit\",y=void 0),\"horizontal\"==s){const t=\"auto\"==e?void 0:e,o=\"auto\"==i?25:i;w.set_sizing({width_policy:x,height_policy:\"min\",width:y,min_width:B,max_width:L,halign:r,valign:a,margin:v}),w.center_panel.set_sizing({width_policy:\"auto\"==e?\"fit\":\"fixed\",height_policy:\"fixed\",width:t,height:o})}else{const t=\"auto\"==e?25:e,o=\"auto\"==i?void 0:i;w.set_sizing({width_policy:\"min\",height_policy:x,height:y,min_height:B,max_height:L,halign:r,valign:a,margin:v}),w.center_panel.set_sizing({width_policy:\"fixed\",height_policy:\"auto\"==i?\"fit\":\"fixed\",width:t,height:o})}c.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),h.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),u.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),p.set_sizing({width_policy:\"min\",height_policy:\"fit\"});const{_title_view:T}=this;null!=T&&(\"horizontal\"==s?(T.panel=new j.Panel(\"above\"),T.update_layout(),c.children.push(T.layout)):(T.panel=new j.Panel(\"left\"),T.update_layout(),u.children.push(T.layout)));const{panel:A}=this,O=null!=A&&s==A.orientation?A.side:\"horizontal\"==s?\"below\":\"right\",R=(()=>{switch(O){case\"above\":return c;case\"below\":return h;case\"left\":return u;case\"right\":return p}})(),{_axis_view:F}=this;if(F.panel=new j.Panel(O),F.update_layout(),R.children.push(F.layout),null!=this.panel){const t=new k.Grid([{layout:w,row:0,col:0}]);t.absolute=!0,\"horizontal\"==s?t.set_sizing({width_policy:\"max\",height_policy:\"min\"}):t.set_sizing({width_policy:\"min\",height_policy:\"max\"}),this.layout=t}else this.layout=this._inner_layout;const{visible:I}=this.model;this.layout.sizing.visible=I,this._set_canvas_image()}_render(){var t;const{ctx:e}=this.layer;e.save(),this._paint_bbox(e,this._inner_layout.bbox),this._paint_image(e,this._inner_layout.center_panel.bbox),null===(t=this._title_view)||void 0===t||t.render(),this._axis_view.render(),e.restore()}_paint_bbox(t,e){const{x:i,y:o}=e;let{width:n,height:a}=e;i+n>=this.parent.canvas_view.bbox.width&&(n-=1),o+a>=this.parent.canvas_view.bbox.height&&(a-=1),t.save(),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(i,o,n,a)),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.strokeRect(i,o,n,a)),t.restore()}_paint_image(t,e){const{x:i,y:o,width:n,height:a}=e;t.save(),t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.scale_alpha,t.drawImage(this._image,i,o,n,a),this.visuals.bar_line.doit&&(this.visuals.bar_line.set_value(t),t.strokeRect(i,o,n,a)),t.restore()}serializable_state(){const t=super.serializable_state(),{children:e=[]}=t,i=a.__rest(t,[\"children\"]);return null!=this._title_view&&e.push(this._title_view.serializable_state()),e.push(this._axis_view.serializable_state()),Object.assign(Object.assign({},i),{children:e})}}i.ColorBarView=T,T.__name__=\"ColorBarView\";class A extends r.Annotation{constructor(t){super(t)}static init_ColorBar(){this.prototype.default_view=T,this.mixins([[\"major_label_\",x.Text],[\"title_\",x.Text],[\"major_tick_\",x.Line],[\"minor_tick_\",x.Line],[\"border_\",x.Line],[\"bar_\",x.Line],[\"background_\",x.Fill]]),this.define((({Alpha:t,Number:e,String:i,Tuple:o,Dict:n,Or:a,Ref:r,Auto:s,Nullable:l})=>({location:[a(v.Anchor,o(e,e)),\"top_right\"],orientation:[a(v.Orientation,s),\"auto\"],title:[l(i),null],title_standoff:[e,2],width:[a(e,s),\"auto\"],height:[a(e,s),\"auto\"],scale_alpha:[t,1],ticker:[a(r(c.Ticker),s),\"auto\"],formatter:[a(r(u.TickFormatter),s),\"auto\"],major_label_overrides:[n(i),{}],major_label_policy:[r(m.LabelingPolicy),()=>new m.NoOverlap],color_mapper:[r(g.ColorMapper)],label_standoff:[e,5],margin:[e,30],padding:[e,10],major_tick_in:[e,5],major_tick_out:[e,0],minor_tick_in:[e,0],minor_tick_out:[e,0]}))),this.override({background_fill_color:\"#ffffff\",background_fill_alpha:.95,bar_line_color:null,border_line_color:null,major_label_text_font_size:\"11px\",major_tick_line_color:\"#ffffff\",minor_tick_line_color:null,title_text_font_size:\"13px\",title_text_font_style:\"italic\"})}}i.ColorBar=A,A.__name__=\"ColorBar\",A.init_ColorBar()},\n", " function _(t,e,i,s,l){s();const o=t(1),a=t(139),n=t(20),r=t(143),c=o.__importStar(t(48));class h extends a.TextAnnotationView{_get_location(){const t=this.model.offset,e=this.model.standoff/2;let i,s;const{bbox:l}=this.layout;switch(this.panel.side){case\"above\":case\"below\":switch(this.model.vertical_align){case\"top\":s=l.top+e;break;case\"middle\":s=l.vcenter;break;case\"bottom\":s=l.bottom-e}switch(this.model.align){case\"left\":i=l.left+t;break;case\"center\":i=l.hcenter;break;case\"right\":i=l.right-t}break;case\"left\":switch(this.model.vertical_align){case\"top\":i=l.left+e;break;case\"middle\":i=l.hcenter;break;case\"bottom\":i=l.right-e}switch(this.model.align){case\"left\":s=l.bottom-t;break;case\"center\":s=l.vcenter;break;case\"right\":s=l.top+t}break;case\"right\":switch(this.model.vertical_align){case\"top\":i=l.right-e;break;case\"middle\":i=l.hcenter;break;case\"bottom\":i=l.left+e}switch(this.model.align){case\"left\":s=l.top+t;break;case\"center\":s=l.vcenter;break;case\"right\":s=l.bottom-t}}return[i,s]}_render(){const{text:t}=this.model;if(null==t||0==t.length)return;this.model.text_baseline=this.model.vertical_align,this.model.text_align=this.model.align;const[e,i]=this._get_location(),s=this.panel.get_label_angle_heuristic(\"parallel\");(\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this))(this.layer.ctx,t,e,i,s)}_get_size(){const{text:t}=this.model;if(null==t||0==t.length)return{width:0,height:0};{const{ctx:e}=this.layer;this.visuals.text.set_value(e);const{width:i}=this.layer.ctx.measureText(t),{height:s}=r.font_metrics(e.font);return{width:i,height:2+s*this.model.text_line_height+this.model.standoff}}}}i.TitleView=h,h.__name__=\"TitleView\";class _ extends a.TextAnnotation{constructor(t){super(t)}static init_Title(){this.prototype.default_view=h,this.mixins([c.Text,[\"border_\",c.Line],[\"background_\",c.Fill]]),this.define((({Number:t,String:e})=>({text:[e,\"\"],vertical_align:[n.VerticalAlign,\"bottom\"],align:[n.TextAlign,\"left\"],offset:[t,0],standoff:[t,10]}))),this.prototype._props.text_align.options.internal=!0,this.prototype._props.text_baseline.options.internal=!0,this.override({text_font_size:\"13px\",text_font_style:\"bold\",text_line_height:1,background_fill_color:null,border_line_color:null})}}i.Title=_,_.__name__=\"Title\",_.init_Title()},\n", " function _(e,t,s,i,n){i();const l=e(40),a=e(43),o=e(20),r=e(140),d=e(143),c=e(11);class _ extends l.AnnotationView{update_layout(){const{panel:e}=this;this.layout=null!=e?new r.SideLayout(e,(()=>this.get_size()),!0):void 0}initialize(){super.initialize(),\"css\"==this.model.render_mode&&(this.el=a.div(),this.plot_view.canvas_view.add_overlay(this.el))}remove(){null!=this.el&&a.remove(this.el),super.remove()}connect_signals(){super.connect_signals(),\"css\"==this.model.render_mode?this.connect(this.model.change,(()=>this.render())):this.connect(this.model.change,(()=>this.request_render()))}render(){this.model.visible||\"css\"!=this.model.render_mode||a.undisplay(this.el),super.render()}_calculate_text_dimensions(e,t){const{width:s}=e.measureText(t),{height:i}=d.font_metrics(this.visuals.text.font_value());return[s,i]}_calculate_bounding_box_dimensions(e,t){const[s,i]=this._calculate_text_dimensions(e,t);let n,l;switch(e.textAlign){case\"left\":n=0;break;case\"center\":n=-s/2;break;case\"right\":n=-s;break;default:c.unreachable()}switch(e.textBaseline){case\"top\":l=0;break;case\"middle\":l=-.5*i;break;case\"bottom\":l=-1*i;break;case\"alphabetic\":l=-.8*i;break;case\"hanging\":l=-.17*i;break;case\"ideographic\":l=-.83*i;break;default:c.unreachable()}return[n,l,s,i]}_canvas_text(e,t,s,i,n){this.visuals.text.set_value(e);const l=this._calculate_bounding_box_dimensions(e,t);e.save(),e.beginPath(),e.translate(s,i),n&&e.rotate(n),e.rect(l[0],l[1],l[2],l[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(e),e.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(e),e.stroke()),this.visuals.text.doit&&(this.visuals.text.set_value(e),e.fillText(t,0,0)),e.restore()}_css_text(e,t,s,i,n){const{el:l}=this;c.assert(null!=l),a.undisplay(l),this.visuals.text.set_value(e);const[o,r]=this._calculate_bounding_box_dimensions(e,t);l.style.position=\"absolute\",l.style.left=`${s+o}px`,l.style.top=`${i+r}px`,l.style.color=e.fillStyle,l.style.font=e.font,l.style.lineHeight=\"normal\",n&&(l.style.transform=`rotate(${n}rad)`),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(e),l.style.backgroundColor=e.fillStyle),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(e),l.style.borderStyle=e.lineDash.length<2?\"solid\":\"dashed\",l.style.borderWidth=`${e.lineWidth}px`,l.style.borderColor=e.strokeStyle),l.textContent=t,a.display(l)}}s.TextAnnotationView=_,_.__name__=\"TextAnnotationView\";class u extends l.Annotation{constructor(e){super(e)}static init_TextAnnotation(){this.define((()=>({render_mode:[o.RenderMode,\"canvas\"]})))}}s.TextAnnotation=u,u.__name__=\"TextAnnotation\",u.init_TextAnnotation()},\n", " function _(t,e,i,l,r){l();const a=t(141),o=t(142),n=t(8),h=Math.PI/2,s={above:{parallel:0,normal:-h,horizontal:0,vertical:-h},below:{parallel:0,normal:h,horizontal:0,vertical:h},left:{parallel:-h,normal:0,horizontal:0,vertical:-h},right:{parallel:h,normal:0,horizontal:0,vertical:h}},c={above:{parallel:\"bottom\",normal:\"center\",horizontal:\"bottom\",vertical:\"center\"},below:{parallel:\"top\",normal:\"center\",horizontal:\"top\",vertical:\"center\"},left:{parallel:\"bottom\",normal:\"center\",horizontal:\"center\",vertical:\"bottom\"},right:{parallel:\"bottom\",normal:\"center\",horizontal:\"center\",vertical:\"bottom\"}},g={above:{parallel:\"center\",normal:\"left\",horizontal:\"center\",vertical:\"left\"},below:{parallel:\"center\",normal:\"left\",horizontal:\"center\",vertical:\"left\"},left:{parallel:\"center\",normal:\"right\",horizontal:\"right\",vertical:\"center\"},right:{parallel:\"center\",normal:\"left\",horizontal:\"left\",vertical:\"center\"}},_={above:\"right\",below:\"left\",left:\"right\",right:\"left\"},b={above:\"left\",below:\"right\",left:\"right\",right:\"left\"};class z{constructor(t){this.side=t}get dimension(){return\"above\"==this.side||\"below\"==this.side?0:1}get normals(){switch(this.side){case\"above\":return[0,-1];case\"below\":return[0,1];case\"left\":return[-1,0];case\"right\":return[1,0]}}get orientation(){return this.is_horizontal?\"horizontal\":\"vertical\"}get is_horizontal(){return 0==this.dimension}get is_vertical(){return 1==this.dimension}get_label_text_heuristics(t){const{side:e}=this;return n.isString(t)?{vertical_align:c[e][t],align:g[e][t]}:{vertical_align:\"center\",align:(t<0?_:b)[e]}}get_label_angle_heuristic(t){return n.isString(t)?s[this.side][t]:-t}}i.Panel=z,z.__name__=\"Panel\";class m extends o.ContentLayoutable{constructor(t,e,i=!1){super(),this.panel=t,this.get_size=e,this.rotate=i,this.panel.is_horizontal?this.set_sizing({width_policy:\"max\",height_policy:\"fixed\"}):this.set_sizing({width_policy:\"fixed\",height_policy:\"max\"})}_content_size(){const{width:t,height:e}=this.get_size();return!this.rotate||this.panel.is_horizontal?new a.Sizeable({width:t,height:e}):new a.Sizeable({width:e,height:t})}has_size_changed(){const{width:t,height:e}=this._content_size();return this.panel.is_horizontal?this.bbox.height!=e:this.bbox.width!=t}}i.SideLayout=m,m.__name__=\"SideLayout\"},\n", " function _(h,t,i,e,w){e();const n=h(21),{min:d,max:s}=Math;class g{constructor(h={}){this.width=null!=h.width?h.width:0,this.height=null!=h.height?h.height:0}bounded_to({width:h,height:t}){return new g({width:this.width==1/0&&null!=h?h:this.width,height:this.height==1/0&&null!=t?t:this.height})}expanded_to({width:h,height:t}){return new g({width:h!=1/0?s(this.width,h):this.width,height:t!=1/0?s(this.height,t):this.height})}expand_to({width:h,height:t}){this.width=s(this.width,h),this.height=s(this.height,t)}narrowed_to({width:h,height:t}){return new g({width:d(this.width,h),height:d(this.height,t)})}narrow_to({width:h,height:t}){this.width=d(this.width,h),this.height=d(this.height,t)}grow_by({left:h,right:t,top:i,bottom:e}){const w=this.width+h+t,n=this.height+i+e;return new g({width:w,height:n})}shrink_by({left:h,right:t,top:i,bottom:e}){const w=s(this.width-h-t,0),n=s(this.height-i-e,0);return new g({width:w,height:n})}map(h,t){return new g({width:h(this.width),height:(null!=t?t:h)(this.height)})}}i.Sizeable=g,g.__name__=\"Sizeable\",i.SizingPolicy=n.Enum(\"fixed\",\"fit\",\"min\",\"max\")},\n", " function _(i,t,h,e,n){e();const s=i(141),r=i(99),g=i(8),{min:l,max:a,round:_}=Math;class o{constructor(){this.absolute=!1,this._bbox=new r.BBox,this._inner_bbox=new r.BBox,this._dirty=!1,this._handlers=[]}*[Symbol.iterator](){}get bbox(){return this._bbox}get inner_bbox(){return this._inner_bbox}get sizing(){return this._sizing}set visible(i){this._sizing.visible=i,this._dirty=!0}set_sizing(i){var t,h,e,n,s;const r=null!==(t=i.width_policy)&&void 0!==t?t:\"fit\",g=i.width,l=i.min_width,a=i.max_width,_=null!==(h=i.height_policy)&&void 0!==h?h:\"fit\",o=i.height,d=i.min_height,u=i.max_height,c=i.aspect,w=null!==(e=i.margin)&&void 0!==e?e:{top:0,right:0,bottom:0,left:0},m=!1!==i.visible,x=null!==(n=i.halign)&&void 0!==n?n:\"start\",b=null!==(s=i.valign)&&void 0!==s?s:\"start\";this._sizing={width_policy:r,min_width:l,width:g,max_width:a,height_policy:_,min_height:d,height:o,max_height:u,aspect:c,margin:w,visible:m,halign:x,valign:b,size:{width:g,height:o}},this._init()}_init(){}_set_geometry(i,t){this._bbox=i,this._inner_bbox=t}set_geometry(i,t){const{fixup_geometry:h}=this;null!=h&&([i,t]=h(i,t)),this._set_geometry(i,null!=t?t:i);for(const i of this._handlers)i(this._bbox,this._inner_bbox)}on_resize(i){this._handlers.push(i)}is_width_expanding(){return\"max\"==this.sizing.width_policy}is_height_expanding(){return\"max\"==this.sizing.height_policy}apply_aspect(i,{width:t,height:h}){const{aspect:e}=this.sizing;if(null!=e){const{width_policy:n,height_policy:s}=this.sizing,r=(i,t)=>{const h={max:4,fit:3,min:2,fixed:1};return h[i]>h[t]};if(\"fixed\"!=n&&\"fixed\"!=s)if(n==s){const n=t,s=_(t/e),r=_(h*e),g=h;Math.abs(i.width-n)+Math.abs(i.height-s)<=Math.abs(i.width-r)+Math.abs(i.height-g)?(t=n,h=s):(t=r,h=g)}else r(n,s)?h=_(t/e):t=_(h*e);else\"fixed\"==n?h=_(t/e):\"fixed\"==s&&(t=_(h*e))}return{width:t,height:h}}measure(i){if(!this.sizing.visible)return{width:0,height:0};const t=i=>\"fixed\"==this.sizing.width_policy&&null!=this.sizing.width?this.sizing.width:i,h=i=>\"fixed\"==this.sizing.height_policy&&null!=this.sizing.height?this.sizing.height:i,e=new s.Sizeable(i).shrink_by(this.sizing.margin).map(t,h),n=this._measure(e),r=this.clip_size(n,e),g=t(r.width),l=h(r.height),a=this.apply_aspect(e,{width:g,height:l});return Object.assign(Object.assign({},n),a)}compute(i={}){const t=this.measure({width:null!=i.width&&this.is_width_expanding()?i.width:1/0,height:null!=i.height&&this.is_height_expanding()?i.height:1/0}),{width:h,height:e}=t,n=new r.BBox({left:0,top:0,width:h,height:e});let s;if(null!=t.inner){const{left:i,top:n,right:g,bottom:l}=t.inner;s=new r.BBox({left:i,top:n,right:h-g,bottom:e-l})}this.set_geometry(n,s)}get xview(){return this.bbox.xview}get yview(){return this.bbox.yview}clip_size(i,t){function h(i,t,h,e){return null==h?h=0:g.isNumber(h)||(h=Math.round(h.percent*t)),null==e?e=1/0:g.isNumber(e)||(e=Math.round(e.percent*t)),a(h,l(i,e))}return{width:h(i.width,t.width,this.sizing.min_width,this.sizing.max_width),height:h(i.height,t.height,this.sizing.min_height,this.sizing.max_height)}}has_size_changed(){const{_dirty:i}=this;return this._dirty=!1,i}}h.Layoutable=o,o.__name__=\"Layoutable\";class d extends o{_measure(i){const{width_policy:t,height_policy:h}=this.sizing;return{width:(()=>{const{width:h}=this.sizing;if(i.width==1/0)return null!=h?h:0;switch(t){case\"fixed\":return null!=h?h:0;case\"min\":return null!=h?l(i.width,h):0;case\"fit\":return null!=h?l(i.width,h):i.width;case\"max\":return null!=h?a(i.width,h):i.width}})(),height:(()=>{const{height:t}=this.sizing;if(i.height==1/0)return null!=t?t:0;switch(h){case\"fixed\":return null!=t?t:0;case\"min\":return null!=t?l(i.height,t):0;case\"fit\":return null!=t?l(i.height,t):i.height;case\"max\":return null!=t?a(i.height,t):i.height}})()}}}h.LayoutItem=d,d.__name__=\"LayoutItem\";class u extends o{_measure(i){const t=this._content_size(),h=i.bounded_to(this.sizing.size).bounded_to(t);return{width:(()=>{switch(this.sizing.width_policy){case\"fixed\":return null!=this.sizing.width?this.sizing.width:t.width;case\"min\":return t.width;case\"fit\":return h.width;case\"max\":return Math.max(t.width,h.width)}})(),height:(()=>{switch(this.sizing.height_policy){case\"fixed\":return null!=this.sizing.height?this.sizing.height:t.height;case\"min\":return t.height;case\"fit\":return h.height;case\"max\":return Math.max(t.height,h.height)}})()}}}h.ContentLayoutable=u,u.__name__=\"ContentLayoutable\"},\n", " function _(t,e,n,r,l){r();const a=t(11),c=(()=>{try{return\"undefined\"!=typeof OffscreenCanvas&&null!=new OffscreenCanvas(0,0).getContext(\"2d\")}catch(t){return!1}})()?(t,e)=>new OffscreenCanvas(t,e):(t,e)=>{const n=document.createElement(\"canvas\");return n.width=t,n.height=e,n},o=(()=>{const t=c(0,0).getContext(\"2d\");return e=>{t.font=e;const n=t.measureText(\"M\"),r=t.measureText(\"x\"),l=t.measureText(\"Ã…Åšg|\"),c=l.fontBoundingBoxAscent,o=l.fontBoundingBoxDescent;if(null!=c&&null!=o)return{height:c+o,ascent:c,descent:o,cap_height:n.actualBoundingBoxAscent,x_height:r.actualBoundingBoxAscent};const s=l.actualBoundingBoxAscent,u=l.actualBoundingBoxDescent;if(null!=s&&null!=u)return{height:s+u,ascent:s,descent:u,cap_height:n.actualBoundingBoxAscent,x_height:r.actualBoundingBoxAscent};a.unreachable()}})(),s=(()=>{const t=c(0,0).getContext(\"2d\");return(e,n)=>{t.font=n;const r=t.measureText(e),l=r.actualBoundingBoxAscent,c=r.actualBoundingBoxDescent;if(null!=l&&null!=c)return{width:r.width,height:l+c,ascent:l,descent:c};a.unreachable()}})(),u=(()=>{const t=document.createElement(\"canvas\"),e=t.getContext(\"2d\");let n=-1,r=-1;return(l,a=1)=>{e.font=l;const{width:c}=e.measureText(\"M\"),o=c*a,s=Math.ceil(o),u=Math.ceil(2*o),i=Math.ceil(1.5*o);n<s&&(n=s,t.width=s),r<u&&(r=u,t.height=u),e.save(),e.scale(a,a),e.fillStyle=\"#f00\",e.fillRect(0,0,s,u);const f=t=>{let e=0;for(let n=0;n<=i;n++)for(let r=0;r<s;r++,e+=4)if(255!=t[e])return i-n;return 0};e.font=l,e.fillStyle=\"#000\";for(const t of\"xa\")e.fillText(t,0,i/a);const{data:h}=e.getImageData(0,0,s,u),g=f(h)/a;for(const t of\"ASQ\")e.fillText(t,0,i/a);const{data:d}=e.getImageData(0,0,s,u),x=f(d)/a;for(const t of\"Ã…Åšgy\")e.fillText(t,0,i/a);const{data:m}=e.getImageData(0,0,s,u),B=f(m)/a,w=(t=>{let e=t.length-4;for(let n=u;n>=i;n--)for(let r=0;r<s;r++,e-=4)if(255!=t[e])return n-i;return 0})(m)/a;return e.restore(),{height:B+w,ascent:B,cap_height:x,x_height:g,descent:w}}})(),i=(()=>{const t=document.createElement(\"canvas\"),e=t.getContext(\"2d\");let n=-1,r=-1;return(l,a,c=1)=>{e.font=a;const{width:o}=e.measureText(\"M\"),s=o*c,u=Math.ceil(s),i=Math.ceil(2*s),f=Math.ceil(1.5*s);(n<u||r<i)&&(n=u,t.width=u,r=i,t.height=i),e.save(),e.scale(c,c),e.fillStyle=\"#f00\",e.fillRect(0,0,u,i);e.font=a,e.fillStyle=\"#000\",e.fillText(l,0,f/c);const h=e.measureText(l),{data:g}=e.getImageData(0,0,u,i),d=(t=>{let e=0;for(let n=0;n<=f;n++)for(let r=0;r<u;r++,e+=4)if(255!=t[e])return f-n;return 0})(g)/c,x=(t=>{let e=t.length-4;for(let n=i;n>=f;n--)for(let r=0;r<u;r++,e-=4)if(255!=t[e])return n-f;return 0})(g)/c;return e.restore(),{width:h.width,height:d+x,ascent:d,descent:x}}})(),f=(()=>{try{return o(\"normal 10px sans-serif\"),o}catch(t){return u}})(),h=(()=>{try{return s(\"A\",\"normal 10px sans-serif\"),s}catch(t){return i}})(),g=new Map;function d(t){let e=g.get(t);return null==e&&(e={font:f(t),glyphs:new Map},g.set(t,e)),e.font}n.font_metrics=d,n.glyph_metrics=function(t,e){let n=g.get(e);null==n&&(d(e),n=g.get(e));let r=n.glyphs.get(t);return null==r&&(r=h(t,e),n.glyphs.set(t,r)),r},n.parse_css_font_size=function(t){const e=t.match(/^\\s*(\\d+(\\.\\d+)?)(\\w+)\\s*$/);if(null!=e){const[,t,,n]=e,r=Number(t);if(isFinite(r))return{value:r,unit:n}}return null}},\n", " function _(e,t,s,_,a){_();const r=e(145),n=e(157),g=e(156),i=e(159),c=e(104),h=e(99),o=e(13),l=e(11);class x{constructor(e,t,s,_,a={},r={}){this.in_x_scale=e,this.in_y_scale=t,this.x_range=s,this.y_range=_,this.extra_x_ranges=a,this.extra_y_ranges=r,this._bbox=new h.BBox,l.assert(null==e.source_range&&null==e.target_range),l.assert(null==t.source_range&&null==t.target_range),this._configure_scales()}get bbox(){return this._bbox}_get_ranges(e,t){return new Map(o.entries(Object.assign(Object.assign({},t),{default:e})))}_get_scales(e,t,s){const _=new Map;for(const[a,g]of t){if(g instanceof c.FactorRange!=e instanceof r.CategoricalScale)throw new Error(`Range ${g.type} is incompatible is Scale ${e.type}`);e instanceof n.LogScale&&g instanceof i.DataRange1d&&(g.scale_hint=\"log\");const t=e.clone();t.setv({source_range:g,target_range:s}),_.set(a,t)}return _}_configure_frame_ranges(){const{bbox:e}=this;this._x_target=new g.Range1d({start:e.left,end:e.right}),this._y_target=new g.Range1d({start:e.bottom,end:e.top})}_configure_scales(){this._configure_frame_ranges(),this._x_ranges=this._get_ranges(this.x_range,this.extra_x_ranges),this._y_ranges=this._get_ranges(this.y_range,this.extra_y_ranges),this._x_scales=this._get_scales(this.in_x_scale,this._x_ranges,this._x_target),this._y_scales=this._get_scales(this.in_y_scale,this._y_ranges,this._y_target)}_update_scales(){this._configure_frame_ranges();for(const[,e]of this._x_scales)e.target_range=this._x_target;for(const[,e]of this._y_scales)e.target_range=this._y_target}set_geometry(e){this._bbox=e,this._update_scales()}get x_target(){return this._x_target}get y_target(){return this._y_target}get x_ranges(){return this._x_ranges}get y_ranges(){return this._y_ranges}get x_scales(){return this._x_scales}get y_scales(){return this._y_scales}get x_scale(){return this._x_scales.get(\"default\")}get y_scale(){return this._y_scales.get(\"default\")}get xscales(){return o.to_object(this.x_scales)}get yscales(){return o.to_object(this.y_scales)}}s.CartesianFrame=x,x.__name__=\"CartesianFrame\"},\n", " function _(e,t,r,n,_){n();const c=e(146);class s extends c.Scale{constructor(e){super(e)}get s_compute(){const[e,t]=this._linear_compute_state(),r=this.source_range;return n=>e*r.synthetic(n)+t}compute(e){return super._linear_compute(this.source_range.synthetic(e))}v_compute(e){return super._linear_v_compute(this.source_range.v_synthetic(e))}invert(e){return this._linear_invert(e)}v_invert(e){return this._linear_v_invert(e)}}r.CategoricalScale=s,s.__name__=\"CategoricalScale\"},\n", " function _(t,e,r,n,s){n();const i=t(147),_=t(105),a=t(156),c=t(24);class o extends i.Transform{constructor(t){super(t)}static init_Scale(){this.internal((({Ref:t})=>({source_range:[t(_.Range)],target_range:[t(a.Range1d)]})))}r_compute(t,e){return this.target_range.is_reversed?[this.compute(e),this.compute(t)]:[this.compute(t),this.compute(e)]}r_invert(t,e){return this.target_range.is_reversed?[this.invert(e),this.invert(t)]:[this.invert(t),this.invert(e)]}_linear_compute(t){const[e,r]=this._linear_compute_state();return e*t+r}_linear_v_compute(t){const[e,r]=this._linear_compute_state(),n=new c.ScreenArray(t.length);for(let s=0;s<t.length;s++)n[s]=e*t[s]+r;return n}_linear_invert(t){const[e,r]=this._linear_compute_state();return(t-r)/e}_linear_v_invert(t){const[e,r]=this._linear_compute_state(),n=new Float64Array(t.length);for(let s=0;s<t.length;s++)n[s]=(t[s]-r)/e;return n}_linear_compute_state(){const t=this.source_range.start,e=this.source_range.end,r=this.target_range.start,n=(this.target_range.end-r)/(e-t);return[n,-n*t+r]}}r.Scale=o,o.__name__=\"Scale\",o.init_Scale()},\n", " function _(r,o,t,e,n){e(),n(\"CustomJSTransform\",r(148).CustomJSTransform),n(\"Dodge\",r(150).Dodge),n(\"Interpolator\",r(152).Interpolator),n(\"Jitter\",r(153).Jitter),n(\"LinearInterpolator\",r(154).LinearInterpolator),n(\"StepInterpolator\",r(155).StepInterpolator),n(\"Transform\",r(149).Transform)},\n", " function _(t,r,s,n,e){n();const a=t(149),o=t(13),u=t(34);class m extends a.Transform{constructor(t){super(t)}static init_CustomJSTransform(){this.define((({Unknown:t,String:r,Dict:s})=>({args:[s(t),{}],func:[r,\"\"],v_func:[r,\"\"]})))}get names(){return o.keys(this.args)}get values(){return o.values(this.args)}_make_transform(t,r){return new Function(...this.names,t,u.use_strict(r))}get scalar_transform(){return this._make_transform(\"x\",this.func)}get vector_transform(){return this._make_transform(\"xs\",this.v_func)}compute(t){return this.scalar_transform(...this.values,t)}v_compute(t){return this.vector_transform(...this.values,t)}}s.CustomJSTransform=m,m.__name__=\"CustomJSTransform\",m.init_CustomJSTransform()},\n", " function _(n,s,o,r,c){r();const e=n(53);class t extends e.Model{constructor(n){super(n)}}o.Transform=t,t.__name__=\"Transform\"},\n", " function _(e,t,n,o,s){o();const i=e(151);class r extends i.RangeTransform{constructor(e){super(e)}static init_Dodge(){this.define((({Number:e})=>({value:[e,0]})))}_compute(e){return e+this.value}}n.Dodge=r,r.__name__=\"Dodge\",r.init_Dodge()},\n", " function _(e,n,t,r,s){r();const a=e(149),i=e(105),o=e(104),c=e(24),f=e(8);class u extends a.Transform{constructor(e){super(e)}static init_RangeTransform(){this.define((({Ref:e,Nullable:n})=>({range:[n(e(i.Range)),null]})))}v_compute(e){let n;if(this.range instanceof o.FactorRange)n=this.range.v_synthetic(e);else{if(!f.isArrayableOf(e,f.isNumber))throw new Error(\"unexpected\");n=e}const t=new(c.infer_type(n))(n.length);for(let e=0;e<n.length;e++){const r=n[e];t[e]=this._compute(r)}return t}compute(e){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(e));if(f.isNumber(e))return this._compute(e);throw new Error(\"unexpected\")}}t.RangeTransform=u,u.__name__=\"RangeTransform\",u.init_RangeTransform()},\n", " function _(t,e,r,n,o){n();const s=t(149),i=t(57),a=t(24),h=t(9),l=t(8);class d extends s.Transform{constructor(t){super(t),this._sorted_dirty=!0}static init_Interpolator(){this.define((({Boolean:t,Number:e,String:r,Ref:n,Array:o,Or:s,Nullable:a})=>({x:[s(r,o(e))],y:[s(r,o(e))],data:[a(n(i.ColumnarDataSource)),null],clip:[t,!0]})))}connect_signals(){super.connect_signals(),this.connect(this.change,(()=>this._sorted_dirty=!0))}v_compute(t){const e=new(a.infer_type(t))(t.length);for(let r=0;r<t.length;r++){const n=t[r];e[r]=this.compute(n)}return e}sort(t=!1){if(!this._sorted_dirty)return;let e,r;if(l.isString(this.x)&&l.isString(this.y)&&null!=this.data){const t=this.data.columns();if(!h.includes(t,this.x))throw new Error(\"The x parameter does not correspond to a valid column name defined in the data parameter\");if(!h.includes(t,this.y))throw new Error(\"The y parameter does not correspond to a valid column name defined in the data parameter\");e=this.data.get_column(this.x),r=this.data.get_column(this.y)}else{if(!l.isArray(this.x)||!l.isArray(this.y))throw new Error(\"parameters 'x' and 'y' must be both either string fields or arrays\");e=this.x,r=this.y}if(e.length!==r.length)throw new Error(\"The length for x and y do not match\");if(e.length<2)throw new Error(\"x and y must have at least two elements to support interpolation\");const n=e.length,o=new Uint32Array(n);for(let t=0;t<n;t++)o[t]=t;const s=t?-1:1;o.sort(((t,r)=>s*(e[t]-e[r]))),this._x_sorted=new(a.infer_type(e))(n),this._y_sorted=new(a.infer_type(r))(n);for(let t=0;t<n;t++)this._x_sorted[t]=e[o[t]],this._y_sorted[t]=r[o[t]];this._sorted_dirty=!1}}r.Interpolator=d,d.__name__=\"Interpolator\",d.init_Interpolator()},\n", " function _(t,i,e,s,r){s();const n=t(1),u=t(151),o=t(20),a=n.__importStar(t(10));class h extends u.RangeTransform{constructor(t){super(t)}static init_Jitter(){this.define((({Number:t})=>({mean:[t,0],width:[t,1],distribution:[o.Distribution,\"uniform\"]})))}v_compute(t){return null!=this.previous_values&&this.previous_values.length==t.length||(this.previous_values=super.v_compute(t)),this.previous_values}_compute(t){switch(this.distribution){case\"uniform\":return t+this.mean+(a.random()-.5)*this.width;case\"normal\":return t+a.rnorm(this.mean,this.width)}}}e.Jitter=h,h.__name__=\"Jitter\",h.init_Jitter()},\n", " function _(t,s,_,r,e){r();const i=t(9),o=t(152);class n extends o.Interpolator{constructor(t){super(t)}compute(t){if(this.sort(!1),this.clip){if(t<this._x_sorted[0]||t>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(t<this._x_sorted[0])return this._y_sorted[0];if(t>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}if(t==this._x_sorted[0])return this._y_sorted[0];const s=i.find_last_index(this._x_sorted,(s=>s<t)),_=this._x_sorted[s],r=this._x_sorted[s+1],e=this._y_sorted[s],o=this._y_sorted[s+1];return e+(t-_)/(r-_)*(o-e)}}_.LinearInterpolator=n,n.__name__=\"LinearInterpolator\"},\n", " function _(t,e,s,r,o){r();const i=t(152),_=t(20),n=t(9);class d extends i.Interpolator{constructor(t){super(t)}static init_StepInterpolator(){this.define((()=>({mode:[_.StepMode,\"after\"]})))}compute(t){if(this.sort(!1),this.clip){if(t<this._x_sorted[0]||t>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(t<this._x_sorted[0])return this._y_sorted[0];if(t>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}let e;switch(this.mode){case\"after\":e=n.find_last_index(this._x_sorted,(e=>t>=e));break;case\"before\":e=n.find_index(this._x_sorted,(e=>t<=e));break;case\"center\":{const s=n.map(this._x_sorted,(e=>Math.abs(e-t))),r=n.min(s);e=n.find_index(s,(t=>r===t));break}default:throw new Error(`unknown mode: ${this.mode}`)}return-1!=e?this._y_sorted[e]:NaN}}s.StepInterpolator=d,d.__name__=\"StepInterpolator\",d.init_StepInterpolator()},\n", " function _(t,e,s,n,i){n();const a=t(105);class r extends a.Range{constructor(t){super(t)}static init_Range1d(){this.define((({Number:t,Nullable:e})=>({start:[t,0],end:[t,1],reset_start:[e(t),null,{on_update(t,e){e._reset_start=null!=t?t:e.start}}],reset_end:[e(t),null,{on_update(t,e){e._reset_end=null!=t?t:e.end}}]})))}_set_auto_bounds(){if(\"auto\"==this.bounds){const t=Math.min(this._reset_start,this._reset_end),e=Math.max(this._reset_start,this._reset_end);this.setv({bounds:[t,e]},{silent:!0})}}initialize(){super.initialize(),this._set_auto_bounds()}get min(){return Math.min(this.start,this.end)}get max(){return Math.max(this.start,this.end)}reset(){this._set_auto_bounds();const{_reset_start:t,_reset_end:e}=this;this.start!=t||this.end!=e?this.setv({start:t,end:e}):this.change.emit()}map(t){return new r({start:t(this.start),end:t(this.end)})}widen(t){let{start:e,end:s}=this;return this.is_reversed?(e+=t,s-=t):(e-=t,s+=t),new r({start:e,end:s})}}s.Range1d=r,r.__name__=\"Range1d\",r.init_Range1d()},\n", " function _(t,e,o,n,s){n();const a=t(158),r=t(24);class c extends a.ContinuousScale{constructor(t){super(t)}get s_compute(){const[t,e,o,n]=this._compute_state();return s=>{if(0==o)return 0;{const a=(Math.log(s)-n)/o;return isFinite(a)?a*t+e:NaN}}}compute(t){const[e,o,n,s]=this._compute_state();let a;if(0==n)a=0;else{const r=(Math.log(t)-s)/n;a=isFinite(r)?r*e+o:NaN}return a}v_compute(t){const[e,o,n,s]=this._compute_state(),a=new r.ScreenArray(t.length);if(0==n)for(let e=0;e<t.length;e++)a[e]=0;else for(let r=0;r<t.length;r++){const c=(Math.log(t[r])-s)/n;let l;l=isFinite(c)?c*e+o:NaN,a[r]=l}return a}invert(t){const[e,o,n,s]=this._compute_state(),a=(t-o)/e;return Math.exp(n*a+s)}v_invert(t){const[e,o,n,s]=this._compute_state(),a=new Float64Array(t.length);for(let r=0;r<t.length;r++){const c=(t[r]-o)/e;a[r]=Math.exp(n*c+s)}return a}_get_safe_factor(t,e){let o=t<0?0:t,n=e<0?0:e;if(o==n)if(0==o)[o,n]=[1,10];else{const t=Math.log(o)/Math.log(10);o=10**Math.floor(t),n=Math.ceil(t)!=Math.floor(t)?10**Math.ceil(t):10**(Math.ceil(t)+1)}return[o,n]}_compute_state(){const t=this.source_range.start,e=this.source_range.end,o=this.target_range.start,n=this.target_range.end-o,[s,a]=this._get_safe_factor(t,e);let r,c;0==s?(r=Math.log(a),c=0):(r=Math.log(a)-Math.log(s),c=Math.log(s));return[n,o,r,c]}}o.LogScale=c,c.__name__=\"LogScale\"},\n", " function _(n,c,o,s,e){s();const t=n(146);class u extends t.Scale{constructor(n){super(n)}}o.ContinuousScale=u,u.__name__=\"ContinuousScale\"},\n", " function _(t,i,n,a,e){a();const s=t(1),l=t(160),_=t(20),o=t(9),h=t(19),r=s.__importStar(t(99)),d=t(161);class u extends l.DataRange{constructor(t){super(t),this.have_updated_interactively=!1}static init_DataRange1d(){this.define((({Boolean:t,Number:i,Nullable:n})=>({start:[i],end:[i],range_padding:[i,.1],range_padding_units:[_.PaddingUnits,\"percent\"],flipped:[t,!1],follow:[n(_.StartEnd),null],follow_interval:[n(i),null],default_span:[i,2],only_visible:[t,!1]}))),this.internal((({Enum:t})=>({scale_hint:[t(\"log\",\"auto\"),\"auto\"]})))}initialize(){super.initialize(),this._initial_start=this.start,this._initial_end=this.end,this._initial_range_padding=this.range_padding,this._initial_range_padding_units=this.range_padding_units,this._initial_follow=this.follow,this._initial_follow_interval=this.follow_interval,this._initial_default_span=this.default_span,this._plot_bounds=new Map}get min(){return Math.min(this.start,this.end)}get max(){return Math.max(this.start,this.end)}computed_renderers(){const{renderers:t,names:i}=this,n=o.concat(this.plots.map((t=>t.data_renderers)));return d.compute_renderers(0==t.length?\"auto\":t,n,i)}_compute_plot_bounds(t,i){let n=r.empty();for(const a of t){const t=i.get(a);null==t||!a.visible&&this.only_visible||(n=r.union(n,t))}return n}adjust_bounds_for_aspect(t,i){const n=r.empty();let a=t.x1-t.x0;a<=0&&(a=1);let e=t.y1-t.y0;e<=0&&(e=1);const s=.5*(t.x1+t.x0),l=.5*(t.y1+t.y0);return a<i*e?a=i*e:e=a/i,n.x1=s+.5*a,n.x0=s-.5*a,n.y1=l+.5*e,n.y0=l-.5*e,n}_compute_min_max(t,i){let n,a,e=r.empty();for(const i of t)e=r.union(e,i);return[n,a]=0==i?[e.x0,e.x1]:[e.y0,e.y1],[n,a]}_compute_range(t,i){const n=this.range_padding;let a,e;if(null!=this._initial_start&&(t=this._initial_start),null!=this._initial_end&&(i=this._initial_end),\"log\"==this.scale_hint){let s,l;if((isNaN(t)||!isFinite(t)||t<=0)&&(t=isNaN(i)||!isFinite(i)||i<=0?.1:i/100,h.logger.warn(`could not determine minimum data value for log axis, DataRange1d using value ${t}`)),(isNaN(i)||!isFinite(i)||i<=0)&&(i=isNaN(t)||!isFinite(t)||t<=0?10:100*t,h.logger.warn(`could not determine maximum data value for log axis, DataRange1d using value ${i}`)),i==t)l=this.default_span+.001,s=Math.log(t)/Math.log(10);else{let a,e;\"percent\"==this.range_padding_units?(a=Math.log(t)/Math.log(10),e=Math.log(i)/Math.log(10),l=(e-a)*(1+n)):(a=Math.log(t-n)/Math.log(10),e=Math.log(i+n)/Math.log(10),l=e-a),s=(a+e)/2}a=10**(s-l/2),e=10**(s+l/2)}else{let s;s=i==t?this.default_span:\"percent\"==this.range_padding_units?(i-t)*(1+n):i-t+2*n;const l=(i+t)/2;a=l-s/2,e=l+s/2}let s=1;this.flipped&&([a,e]=[e,a],s=-1);const l=this.follow_interval;return null!=l&&Math.abs(a-e)>l&&(\"start\"==this.follow?e=a+s*l:\"end\"==this.follow&&(a=e-s*l)),[a,e]}update(t,i,n,a){if(this.have_updated_interactively)return;const e=this.computed_renderers();let s=this._compute_plot_bounds(e,t);null!=a&&(s=this.adjust_bounds_for_aspect(s,a)),this._plot_bounds.set(n,s);const[l,_]=this._compute_min_max(this._plot_bounds.values(),i);let[o,h]=this._compute_range(l,_);null!=this._initial_start&&(\"log\"==this.scale_hint?this._initial_start>0&&(o=this._initial_start):o=this._initial_start),null!=this._initial_end&&(\"log\"==this.scale_hint?this._initial_end>0&&(h=this._initial_end):h=this._initial_end);let r=!1;\"auto\"==this.bounds&&(this.setv({bounds:[o,h]},{silent:!0}),r=!0);const[d,u]=[this.start,this.end];if(o!=d||h!=u){const t={};o!=d&&(t.start=o),h!=u&&(t.end=h),this.setv(t),r=!1}r&&this.change.emit()}reset(){this.have_updated_interactively=!1,this.setv({range_padding:this._initial_range_padding,range_padding_units:this._initial_range_padding_units,follow:this._initial_follow,follow_interval:this._initial_follow_interval,default_span:this._initial_default_span},{silent:!0}),this.change.emit()}}n.DataRange1d=u,u.__name__=\"DataRange1d\",u.init_DataRange1d()},\n", " function _(a,e,n,t,r){t();const s=a(105),i=a(62);class R extends s.Range{constructor(a){super(a)}static init_DataRange(){this.define((({String:a,Array:e,Ref:n})=>({names:[e(a),[]],renderers:[e(n(i.DataRenderer)),[]]})))}}n.DataRange=R,R.__name__=\"DataRange\",R.init_DataRange()},\n", " function _(n,e,t,r,u){r();const l=n(9);t.compute_renderers=function(n,e,t){if(null==n)return[];let r=\"auto\"==n?e:n;return t.length>0&&(r=r.filter((n=>l.includes(t,n.name)))),r}},\n", " function _(i,s,x,A,o){A(),o(\"Axis\",i(163).Axis),o(\"CategoricalAxis\",i(170).CategoricalAxis),o(\"ContinuousAxis\",i(173).ContinuousAxis),o(\"DatetimeAxis\",i(174).DatetimeAxis),o(\"LinearAxis\",i(175).LinearAxis),o(\"LogAxis\",i(192).LogAxis),o(\"MercatorAxis\",i(195).MercatorAxis)},\n", " function _(t,e,i,s,o){s();const n=t(1),a=t(164),l=t(165),r=t(166),_=t(169),h=n.__importStar(t(48)),c=t(20),b=t(24),m=t(140),d=t(9),u=t(8),x=t(167),g=t(104),{abs:f}=Math;class p extends a.GuideRendererView{update_layout(){this.layout=new m.SideLayout(this.panel,(()=>this.get_size()),!0),this.layout.on_resize((()=>this._coordinates=void 0))}get_size(){const{visible:t,fixed_location:e}=this.model;if(t&&null==e&&this.is_renderable){const{extents:t}=this;return{width:0,height:Math.round(t.tick+t.tick_label+t.axis_label)}}return{width:0,height:0}}get is_renderable(){const[t,e]=this.ranges;return t.is_valid&&e.is_valid}_render(){var t;if(!this.is_renderable)return;const{tick_coords:e,extents:i}=this,s=this.layer.ctx;s.save(),this._draw_rule(s,i),this._draw_major_ticks(s,i,e),this._draw_minor_ticks(s,i,e),this._draw_major_labels(s,i,e),this._draw_axis_label(s,i,e),null===(t=this._paint)||void 0===t||t.call(this,s,i,e),s.restore()}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.plot_view.request_layout()))}get needs_clip(){return null!=this.model.fixed_location}_draw_rule(t,e){if(!this.visuals.axis_line.doit)return;const[i,s]=this.rule_coords,[o,n]=this.coordinates.map_to_screen(i,s),[a,l]=this.normals,[r,_]=this.offsets;this.visuals.axis_line.set_value(t),t.beginPath();for(let e=0;e<o.length;e++){const i=Math.round(o[e]+a*r),s=Math.round(n[e]+l*_);t.lineTo(i,s)}t.stroke()}_draw_major_ticks(t,e,i){const s=this.model.major_tick_in,o=this.model.major_tick_out,n=this.visuals.major_tick_line;this._draw_ticks(t,i.major,s,o,n)}_draw_minor_ticks(t,e,i){const s=this.model.minor_tick_in,o=this.model.minor_tick_out,n=this.visuals.minor_tick_line;this._draw_ticks(t,i.minor,s,o,n)}_draw_major_labels(t,e,i){const s=i.major,o=this.compute_labels(s[this.dimension]),n=this.model.major_label_orientation,a=e.tick+this.model.major_label_standoff,l=this.visuals.major_label_text;this._draw_oriented_labels(t,o,s,n,this.panel.side,a,l)}_axis_label_extent(){const t=this.model.axis_label;if(!t)return 0;const e=new x.TextBox({text:t});e.visuals=this.visuals.axis_label_text,e.angle=this.panel.get_label_angle_heuristic(\"parallel\"),e.base_font_size=this.plot_view.base_font_size;const i=e.size(),s=0==this.dimension?i.height:i.width,o=this.model.axis_label_standoff;return s>0?o+s+3:0}_draw_axis_label(t,e,i){const s=this.model.axis_label;if(!s||null!=this.model.fixed_location)return;const o=new x.TextBox({text:s});o.visuals=this.visuals.axis_label_text,o.angle=this.panel.get_label_angle_heuristic(\"parallel\"),o.base_font_size=this.plot_view.base_font_size;const[n,a]=(()=>{const{bbox:t}=this.layout;switch(this.panel.side){case\"above\":return[t.hcenter,t.bottom];case\"below\":return[t.hcenter,t.top];case\"left\":return[t.right,t.vcenter];case\"right\":return[t.left,t.vcenter]}})(),[l,r]=this.normals,_=e.tick+e.tick_label+this.model.axis_label_standoff,{vertical_align:h,align:c}=this.panel.get_label_text_heuristics(\"parallel\");o.position={sx:n+l*_,sy:a+r*_,x_anchor:c,y_anchor:h},o.align=c,o.paint(t)}_draw_ticks(t,e,i,s,o){if(!o.doit)return;const[n,a]=e,[l,r]=this.coordinates.map_to_screen(n,a),[_,h]=this.normals,[c,b]=this.offsets,[m,d]=[_*(c-i),h*(b-i)],[u,x]=[_*(c+s),h*(b+s)];o.set_value(t),t.beginPath();for(let e=0;e<l.length;e++){const i=Math.round(l[e]+u),s=Math.round(r[e]+x),o=Math.round(l[e]+m),n=Math.round(r[e]+d);t.moveTo(i,s),t.lineTo(o,n)}t.stroke()}_draw_oriented_labels(t,e,i,s,o,n,a){if(!a.doit||0==e.length)return;const[l,r]=i,[_,h]=this.coordinates.map_to_screen(l,r),[c,m]=this.offsets,[d,u]=this.normals,g=d*(c+n),f=u*(m+n),{vertical_align:p,align:k}=this.panel.get_label_text_heuristics(s),w=this.panel.get_label_angle_heuristic(s);e.visuals=a,e.angle=w,e.base_font_size=this.plot_view.base_font_size;for(let t=0;t<e.length;t++){const i=e.items[t];i.position={sx:_[t]+g,sy:h[t]+f,x_anchor:k,y_anchor:p},i instanceof x.TextBox&&(i.align=k)}const j=e.length,v=b.Indices.all_set(j),{items:y}=e,z=y.map((t=>t.bbox())),T=(()=>{const[t]=this.ranges;return t.is_reversed?0==this.dimension?(t,e)=>z[t].left-z[e].right:(t,e)=>z[e].top-z[t].bottom:0==this.dimension?(t,e)=>z[e].left-z[t].right:(t,e)=>z[t].top-z[e].bottom})(),{major_label_policy:O}=this.model,A=O.filter(v,z,T),M=[...A.ones()];if(0!=M.length){const t=this.parent.canvas_view.bbox,e=e=>{const i=z[e];if(i.left<0){const t=-i.left,{position:s}=y[e];y[e].position=Object.assign(Object.assign({},s),{sx:s.sx+t})}else if(i.right>t.width){const s=i.right-t.width,{position:o}=y[e];y[e].position=Object.assign(Object.assign({},o),{sx:o.sx-s})}},i=e=>{const i=z[e];if(i.top<0){const t=-i.top,{position:s}=y[e];y[e].position=Object.assign(Object.assign({},s),{sy:s.sy+t})}else if(i.bottom>t.height){const s=i.bottom-t.height,{position:o}=y[e];y[e].position=Object.assign(Object.assign({},o),{sy:o.sy-s})}},s=M[0],o=M[M.length-1];0==this.dimension?(e(s),e(o)):(i(s),i(o))}for(const e of A){y[e].paint(t)}}_tick_extent(){return this.model.major_tick_out}_tick_label_extents(){const t=this.tick_coords.major,e=this.compute_labels(t[this.dimension]),i=this.model.major_label_orientation,s=this.model.major_label_standoff,o=this.visuals.major_label_text;return[this._oriented_labels_extent(e,i,s,o)]}get extents(){const t=this._tick_label_extents();return{tick:this._tick_extent(),tick_labels:t,tick_label:d.sum(t),axis_label:this._axis_label_extent()}}_oriented_labels_extent(t,e,i,s){if(0==t.length)return 0;const o=this.panel.get_label_angle_heuristic(e);t.visuals=s,t.angle=o,t.base_font_size=this.plot_view.base_font_size;const n=t.max_size(),a=0==this.dimension?n.height:n.width;return a>0?i+a+3:0}get normals(){return this.panel.normals}get dimension(){return this.panel.dimension}compute_labels(t){const e=this.model.formatter.format_graphics(t,this),{major_label_overrides:i}=this.model;for(let s=0;s<t.length;s++){const o=i[t[s]];null!=o&&(e[s]=new x.TextBox({text:o}))}return new x.GraphicsBoxes(e)}get offsets(){if(null!=this.model.fixed_location)return[0,0];const{frame:t}=this.plot_view;let[e,i]=[0,0];switch(this.panel.side){case\"below\":i=f(this.layout.bbox.top-t.bbox.bottom);break;case\"above\":i=f(this.layout.bbox.bottom-t.bbox.top);break;case\"right\":e=f(this.layout.bbox.left-t.bbox.right);break;case\"left\":e=f(this.layout.bbox.right-t.bbox.left)}return[e,i]}get ranges(){const t=this.dimension,e=(t+1)%2,{ranges:i}=this.coordinates;return[i[t],i[e]]}get computed_bounds(){const[t]=this.ranges,e=this.model.bounds,i=[t.min,t.max];if(\"auto\"==e)return[t.min,t.max];{let t,s;const[o,n]=e,[a,l]=i,{min:r,max:_}=Math;return f(o-n)>f(a-l)?(t=_(r(o,n),a),s=r(_(o,n),l)):(t=r(o,n),s=_(o,n)),[t,s]}}get rule_coords(){const t=this.dimension,e=(t+1)%2,[i]=this.ranges,[s,o]=this.computed_bounds,n=[new Array(2),new Array(2)];return n[t][0]=Math.max(s,i.min),n[t][1]=Math.min(o,i.max),n[t][0]>n[t][1]&&(n[t][0]=n[t][1]=NaN),n[e][0]=this.loc,n[e][1]=this.loc,n}get tick_coords(){const t=this.dimension,e=(t+1)%2,[i]=this.ranges,[s,o]=this.computed_bounds,n=this.model.ticker.get_ticks(s,o,i,this.loc),a=n.major,l=n.minor,r=[[],[]],_=[[],[]],[h,c]=[i.min,i.max];for(let i=0;i<a.length;i++)a[i]<h||a[i]>c||(r[t].push(a[i]),r[e].push(this.loc));for(let i=0;i<l.length;i++)l[i]<h||l[i]>c||(_[t].push(l[i]),_[e].push(this.loc));return{major:r,minor:_}}get loc(){const{fixed_location:t}=this.model;if(null!=t){if(u.isNumber(t))return t;const[,e]=this.ranges;if(e instanceof g.FactorRange)return e.synthetic(t);throw new Error(\"unexpected\")}const[,e]=this.ranges;switch(this.panel.side){case\"left\":case\"below\":return e.start;case\"right\":case\"above\":return e.end}}serializable_state(){return Object.assign(Object.assign({},super.serializable_state()),{bbox:this.layout.bbox.box})}}i.AxisView=p,p.__name__=\"AxisView\";class k extends a.GuideRenderer{constructor(t){super(t)}static init_Axis(){this.prototype.default_view=p,this.mixins([[\"axis_\",h.Line],[\"major_tick_\",h.Line],[\"minor_tick_\",h.Line],[\"major_label_\",h.Text],[\"axis_label_\",h.Text]]),this.define((({Any:t,Int:e,Number:i,String:s,Ref:o,Dict:n,Tuple:a,Or:h,Nullable:b,Auto:m})=>({bounds:[h(a(i,i),m),\"auto\"],ticker:[o(l.Ticker)],formatter:[o(r.TickFormatter)],axis_label:[b(s),\"\"],axis_label_standoff:[e,5],major_label_standoff:[e,5],major_label_orientation:[h(c.TickLabelOrientation,i),\"horizontal\"],major_label_overrides:[n(s),{}],major_label_policy:[o(_.LabelingPolicy),()=>new _.AllLabels],major_tick_in:[i,2],major_tick_out:[i,6],minor_tick_in:[i,0],minor_tick_out:[i,4],fixed_location:[b(h(i,t)),null]}))),this.override({axis_line_color:\"black\",major_tick_line_color:\"black\",minor_tick_line_color:\"black\",major_label_text_font_size:\"11px\",major_label_text_align:\"center\",major_label_text_baseline:\"alphabetic\",axis_label_text_font_size:\"13px\",axis_label_text_font_style:\"italic\"})}}i.Axis=k,k.__name__=\"Axis\",k.init_Axis()},\n", " function _(e,r,d,i,n){i();const s=e(41);class t extends s.RendererView{}d.GuideRendererView=t,t.__name__=\"GuideRendererView\";class _ extends s.Renderer{constructor(e){super(e)}static init_GuideRenderer(){this.override({level:\"guide\"})}}d.GuideRenderer=_,_.__name__=\"GuideRenderer\",_.init_GuideRenderer()},\n", " function _(c,e,n,s,o){s();const r=c(53);class t extends r.Model{constructor(c){super(c)}}n.Ticker=t,t.__name__=\"Ticker\"},\n", " function _(t,o,r,e,c){e();const n=t(53),a=t(167);class m extends n.Model{constructor(t){super(t)}format_graphics(t,o){return this.doFormat(t,o).map((t=>new a.TextBox({text:t})))}compute(t,o){return this.doFormat([t],null!=o?o:{loc:0})[0]}v_compute(t,o){return this.doFormat(t,null!=o?o:{loc:0})}}r.TickFormatter=m,m.__name__=\"TickFormatter\"},\n", " function _(t,e,s,i,n){i();const h=t(99),o=t(143),a=t(9),r=t(8),c=t(168),_=t(22);s.text_width=(()=>{const t=document.createElement(\"canvas\").getContext(\"2d\");let e=\"\";return(s,i)=>(i!=e&&(e=i,t.font=i),t.measureText(s).width)})();class l{constructor(){this._position={sx:0,sy:0},this.font_size_scale=1,this._base_font_size=13}set base_font_size(t){this._base_font_size=t}get base_font_size(){return this._base_font_size}set position(t){this._position=t}get position(){return this._position}infer_text_height(){return\"ascent_descent\"}bbox(){const{p0:t,p1:e,p2:s,p3:i}=this.rect(),n=Math.min(t.x,e.x,s.x,i.x),o=Math.min(t.y,e.y,s.y,i.y),a=Math.max(t.x,e.x,s.x,i.x),r=Math.max(t.y,e.y,s.y,i.y);return new h.BBox({left:n,right:a,top:o,bottom:r})}size(){const{width:t,height:e}=this._size(),{angle:s}=this;if(s){const i=Math.cos(Math.abs(s)),n=Math.sin(Math.abs(s));return{width:Math.abs(t*i+e*n),height:Math.abs(t*n+e*i)}}return{width:t,height:e}}rect(){const t=this._rect(),{angle:e}=this;if(e){const{sx:s,sy:i}=this.position,n=new c.AffineTransform;return n.translate(s,i),n.rotate(e),n.translate(-s,-i),n.apply_rect(t)}return t}paint_rect(t){const{p0:e,p1:s,p2:i,p3:n}=this.rect();t.save(),t.strokeStyle=\"red\",t.lineWidth=1,t.beginPath();const{round:h}=Math;t.moveTo(h(e.x),h(e.y)),t.lineTo(h(s.x),h(s.y)),t.lineTo(h(i.x),h(i.y)),t.lineTo(h(n.x),h(n.y)),t.closePath(),t.stroke(),t.restore()}paint_bbox(t){const{x:e,y:s,width:i,height:n}=this.bbox();t.save(),t.strokeStyle=\"blue\",t.lineWidth=1,t.beginPath();const{round:h}=Math;t.moveTo(h(e),h(s)),t.lineTo(h(e),h(s+n)),t.lineTo(h(e+i),h(s+n)),t.lineTo(h(e+i),h(s)),t.closePath(),t.stroke(),t.restore()}}s.GraphicsBox=l,l.__name__=\"GraphicsBox\";class x extends l{constructor({text:t}){super(),this.align=\"left\",this.text=t}set visuals(t){const e=t.text_color.get_value(),s=t.text_alpha.get_value(),i=t.text_font_style.get_value();let n=t.text_font_size.get_value();const h=t.text_font.get_value(),{font_size_scale:a,base_font_size:r}=this,c=o.parse_css_font_size(n);if(null!=c){let{value:t,unit:e}=c;t*=a,\"em\"==e&&r&&(t*=r,e=\"px\"),n=`${t}${e}`}const l=`${i} ${n} ${h}`;this.font=l,this.color=_.color2css(e,s),this.line_height=t.text_line_height.get_value()}infer_text_height(){if(this.text.includes(\"\\n\"))return\"ascent_descent\";return function(t){for(const e of new Set(t))if(!(\"0\"<=e&&e<=\"9\"))switch(e){case\",\":case\".\":case\"+\":case\"-\":case\"−\":case\"e\":continue;default:return!1}return!0}(this.text)?\"cap\":\"ascent_descent\"}_text_line(t){var e;const s=null!==(e=this.text_height_metric)&&void 0!==e?e:this.infer_text_height(),i=(()=>{switch(s){case\"x\":case\"x_descent\":return t.x_height;case\"cap\":case\"cap_descent\":return t.cap_height;case\"ascent\":case\"ascent_descent\":return t.ascent}})(),n=(()=>{switch(s){case\"x\":case\"cap\":case\"ascent\":return 0;case\"x_descent\":case\"cap_descent\":case\"ascent_descent\":return t.descent}})();return{height:i+n,ascent:i,descent:n}}get nlines(){return this.text.split(\"\\n\").length}_size(){var t,e;const{font:i}=this,n=o.font_metrics(i),h=(this.line_height-1)*n.height,r=\"\"==this.text,c=this.text.split(\"\\n\"),_=c.length,l=c.map((t=>s.text_width(t,i))),x=this._text_line(n).height*_,u=\"%\"==(null===(t=this.width)||void 0===t?void 0:t.unit)?this.width.value:1,p=\"%\"==(null===(e=this.height)||void 0===e?void 0:e.unit)?this.height.value:1;return{width:a.max(l)*u,height:r?0:(x+h*(_-1))*p,metrics:n}}_computed_position(t,e,s){const{width:i,height:n}=t,{sx:h,sy:o,x_anchor:a=\"left\",y_anchor:c=\"center\"}=this.position;return{x:h-(()=>{if(r.isNumber(a))return a*i;switch(a){case\"left\":return 0;case\"center\":return.5*i;case\"right\":return i}})(),y:o-(()=>{var t;if(r.isNumber(c))return c*n;switch(c){case\"top\":return 0;case\"center\":return.5*n;case\"bottom\":return n;case\"baseline\":if(1!=s)return.5*n;switch(null!==(t=this.text_height_metric)&&void 0!==t?t:this.infer_text_height()){case\"x\":case\"x_descent\":return e.x_height;case\"cap\":case\"cap_descent\":return e.cap_height;case\"ascent\":case\"ascent_descent\":return e.ascent}}})()}}_rect(){const{width:t,height:e,metrics:s}=this._size(),i=this.text.split(\"\\n\").length,{x:n,y:o}=this._computed_position({width:t,height:e},s,i);return new h.BBox({x:n,y:o,width:t,height:e}).rect}paint(t){var e,i;const{font:n}=this,h=o.font_metrics(n),r=(this.line_height-1)*h.height,c=this.text.split(\"\\n\"),_=c.length,l=c.map((t=>s.text_width(t,n))),x=this._text_line(h),u=x.height*_,p=\"%\"==(null===(e=this.width)||void 0===e?void 0:e.unit)?this.width.value:1,f=\"%\"==(null===(i=this.height)||void 0===i?void 0:i.unit)?this.height.value:1,g=a.max(l)*p,d=(u+r*(_-1))*f;t.save(),t.fillStyle=this.color,t.font=this.font,t.textAlign=\"left\",t.textBaseline=\"alphabetic\";const{sx:b,sy:m}=this.position,{align:y}=this,{angle:v}=this;v&&(t.translate(b,m),t.rotate(v),t.translate(-b,-m));let{x:w,y:z}=this._computed_position({width:g,height:d},h,_);if(\"justify\"==y)for(let e=0;e<_;e++){let i=w;const h=c[e].split(\" \"),o=h.length,_=h.map((t=>s.text_width(t,n))),l=(g-a.sum(_))/(o-1);for(let e=0;e<o;e++)t.fillText(h[e],i,z),i+=_[e]+l;z+=x.height+r}else for(let e=0;e<_;e++){const s=w+(()=>{switch(y){case\"left\":return 0;case\"center\":return.5*(g-l[e]);case\"right\":return g-l[e]}})();t.fillStyle=this.color,t.fillText(c[e],s,z+x.ascent),z+=x.height+r}t.restore()}}s.TextBox=x,x.__name__=\"TextBox\";class u extends l{constructor(t,e){super(),this.base=t,this.expo=e}get children(){return[this.base,this.expo]}set base_font_size(t){super.base_font_size=t,this.base.base_font_size=t,this.expo.base_font_size=t}set position(t){this._position=t;const e=this.base.size(),s=this.expo.size(),i=this._shift_scale()*e.height,n=Math.max(e.height,i+s.height);this.base.position={sx:0,x_anchor:\"left\",sy:n,y_anchor:\"bottom\"},this.expo.position={sx:e.width,x_anchor:\"left\",sy:i,y_anchor:\"bottom\"}}get position(){return this._position}set visuals(t){this.expo.font_size_scale=.7,this.base.visuals=t,this.expo.visuals=t}_shift_scale(){if(this.base instanceof x&&1==this.base.nlines){const{x_height:t,cap_height:e}=o.font_metrics(this.base.font);return t/e}return 2/3}infer_text_height(){return this.base.infer_text_height()}_rect(){const t=this.base.bbox(),e=this.expo.bbox(),s=t.union(e),{x:i,y:n}=this._computed_position();return s.translate(i,n).rect}_size(){const t=this.base.size(),e=this.expo.size();return{width:t.width+e.width,height:Math.max(t.height,this._shift_scale()*t.height+e.height)}}paint(t){t.save();const{angle:e}=this;if(e){const{sx:s,sy:i}=this.position;t.translate(s,i),t.rotate(e),t.translate(-s,-i)}const{x:s,y:i}=this._computed_position();t.translate(s,i),this.base.paint(t),this.expo.paint(t),t.restore()}paint_bbox(t){super.paint_bbox(t);const{x:e,y:s}=this._computed_position();t.save(),t.translate(e,s);for(const e of this.children)e.paint_bbox(t);t.restore()}_computed_position(){const{width:t,height:e}=this._size(),{sx:s,sy:i,x_anchor:n=\"left\",y_anchor:h=\"center\"}=this.position;return{x:s-(()=>{if(r.isNumber(n))return n*t;switch(n){case\"left\":return 0;case\"center\":return.5*t;case\"right\":return t}})(),y:i-(()=>{if(r.isNumber(h))return h*e;switch(h){case\"top\":return 0;case\"center\":return.5*e;case\"bottom\":return e;case\"baseline\":return.5*e}})()}}}s.BaseExpo=u,u.__name__=\"BaseExpo\";class p{constructor(t){this.items=t}set base_font_size(t){for(const e of this.items)e.base_font_size=t}get length(){return this.items.length}set visuals(t){for(const e of this.items)e.visuals=t;const e={x:0,cap:1,ascent:2,x_descent:3,cap_descent:4,ascent_descent:5},s=a.max_by(this.items.map((t=>t.infer_text_height())),(t=>e[t]));for(const t of this.items)t.text_height_metric=s}set angle(t){for(const e of this.items)e.angle=t}max_size(){let t=0,e=0;for(const s of this.items){const i=s.size();t=Math.max(t,i.width),e=Math.max(e,i.height)}return{width:t,height:e}}}s.GraphicsBoxes=p,p.__name__=\"GraphicsBoxes\"},\n", " function _(t,s,r,n,i){n();const{sin:e,cos:a}=Math;class h{constructor(t=1,s=0,r=0,n=1,i=0,e=0){this.a=t,this.b=s,this.c=r,this.d=n,this.e=i,this.f=e}toString(){const{a:t,b:s,c:r,d:n,e:i,f:e}=this;return`matrix(${t}, ${s}, ${r}, ${n}, ${i}, ${e})`}clone(){const{a:t,b:s,c:r,d:n,e:i,f:e}=this;return new h(t,s,r,n,i,e)}get is_identity(){const{a:t,b:s,c:r,d:n,e:i,f:e}=this;return 1==t&&0==s&&0==r&&1==n&&0==i&&0==e}apply_point(t){const[s,r]=this.apply(t.x,t.y);return{x:s,y:r}}apply_rect(t){return{p0:this.apply_point(t.p0),p1:this.apply_point(t.p1),p2:this.apply_point(t.p2),p3:this.apply_point(t.p3)}}apply(t,s){const{a:r,b:n,c:i,d:e,e:a,f:h}=this;return[r*t+i*s+a,n*t+e*s+h]}iv_apply(t,s){const{a:r,b:n,c:i,d:e,e:a,f:h}=this,p=t.length;for(let o=0;o<p;o++){const p=t[o],c=s[o];t[o]=r*p+i*c+a,s[o]=n*p+e*c+h}}transform(t,s,r,n,i,e){const{a,b:h,c:p,d:o,e:c,f:l}=this;return this.a=a*t+p*s,this.c=a*r+p*n,this.e=a*i+p*e+c,this.b=h*t+o*s,this.d=h*r+o*n,this.f=h*i+o*e+l,this}translate(t,s){return this.transform(1,0,0,1,t,s)}scale(t,s){return this.transform(t,0,0,s,0,0)}skew(t,s){return this.transform(1,s,t,1,0,0)}rotate(t){const s=e(t),r=a(t);return this.transform(r,s,-s,r,0,0)}rotate_ccw(t){return this.rotate(-t)}translate_x(t){return this.translate(t,0)}translate_y(t){return this.translate(0,t)}flip(){return this.scale(-1,-1)}flip_x(){return this.scale(1,-1)}flip_y(){return this.scale(-1,1)}}r.AffineTransform=h,h.__name__=\"AffineTransform\"},\n", " function _(e,n,s,t,i){t();const l=e(53),c=e(13),o=e(34),r=e(8),a=e(24);class u extends l.Model{constructor(e){super(e)}}s.LabelingPolicy=u,u.__name__=\"LabelingPolicy\";class _ extends u{constructor(e){super(e)}filter(e,n,s){return e}}s.AllLabels=_,_.__name__=\"AllLabels\";class d extends u{constructor(e){super(e)}static init_NoOverlap(){this.define((({Number:e})=>({min_distance:[e,5]})))}filter(e,n,s){const{min_distance:t}=this;let i=null;for(const n of e)null!=i&&s(i,n)<t?e.unset(n):i=n;return e}}s.NoOverlap=d,d.__name__=\"NoOverlap\",d.init_NoOverlap();class m extends u{constructor(e){super(e)}static init_CustomLabelingPolicy(){this.define((({Unknown:e,String:n,Dict:s})=>({args:[s(e),{}],code:[n,\"\"]})))}get names(){return c.keys(this.args)}get values(){return c.values(this.args)}get func(){const e=o.use_strict(this.code);return new a.GeneratorFunction(\"indices\",\"bboxes\",\"distance\",...this.names,e)}filter(e,n,s){const t=Object.create(null),i=this.func.call(t,e,n,s,...this.values);let l=i.next();if(l.done&&void 0!==l.value){const{value:n}=l;return n instanceof a.Indices?n:void 0===n?e:r.isIterable(n)?a.Indices.from_indices(e.size,n):a.Indices.all_unset(e.size)}{const n=[];do{n.push(l.value),l=i.next()}while(!l.done);return a.Indices.from_indices(e.size,n)}}}s.CustomLabelingPolicy=m,m.__name__=\"CustomLabelingPolicy\",m.init_CustomLabelingPolicy()},\n", " function _(t,s,e,o,i){o();const a=t(1),r=t(163),l=t(171),_=t(172),n=a.__importStar(t(48)),c=t(20),p=t(167),h=t(8);class m extends r.AxisView{_paint(t,s,e){this._draw_group_separators(t,s,e)}_draw_group_separators(t,s,e){const[o]=this.ranges,[i,a]=this.computed_bounds;if(!o.tops||o.tops.length<2||!this.visuals.separator_line.doit)return;const r=this.dimension,l=(r+1)%2,_=[[],[]];let n=0;for(let t=0;t<o.tops.length-1;t++){let s,e;for(let i=n;i<o.factors.length;i++)if(o.factors[i][0]==o.tops[t+1]){[s,e]=[o.factors[i-1],o.factors[i]],n=i;break}const c=(o.synthetic(s)+o.synthetic(e))/2;c>i&&c<a&&(_[r].push(c),_[l].push(this.loc))}const c=this.extents.tick_label;this._draw_ticks(t,_,-3,c-6,this.visuals.separator_line)}_draw_major_labels(t,s,e){const o=this._get_factor_info();let i=s.tick+this.model.major_label_standoff;for(let e=0;e<o.length;e++){const[a,r,l,_]=o[e];this._draw_oriented_labels(t,a,r,l,this.panel.side,i,_),i+=s.tick_labels[e]}}_tick_label_extents(){const t=this._get_factor_info(),s=[];for(const[e,,o,i]of t){const t=this._oriented_labels_extent(e,o,this.model.major_label_standoff,i);s.push(t)}return s}_get_factor_info(){const[t]=this.ranges,[s,e]=this.computed_bounds,o=this.loc,i=this.model.ticker.get_ticks(s,e,t,o),a=this.tick_coords,r=[],l=t=>new p.GraphicsBoxes(t.map((t=>h.isString(t)?new p.TextBox({text:t}):t))),_=t=>l(this.model.formatter.doFormat(t,this));if(1==t.levels){const t=_(i.major);r.push([t,a.major,this.model.major_label_orientation,this.visuals.major_label_text])}else if(2==t.levels){const t=_(i.major.map((t=>t[1])));r.push([t,a.major,this.model.major_label_orientation,this.visuals.major_label_text]),r.push([l(i.tops),a.tops,this.model.group_label_orientation,this.visuals.group_text])}else if(3==t.levels){const t=_(i.major.map((t=>t[2]))),s=i.mids.map((t=>t[1]));r.push([t,a.major,this.model.major_label_orientation,this.visuals.major_label_text]),r.push([l(s),a.mids,this.model.subgroup_label_orientation,this.visuals.subgroup_text]),r.push([l(i.tops),a.tops,this.model.group_label_orientation,this.visuals.group_text])}return r}get tick_coords(){const t=this.dimension,s=(t+1)%2,[e]=this.ranges,[o,i]=this.computed_bounds,a=this.model.ticker.get_ticks(o,i,e,this.loc),r={major:[[],[]],mids:[[],[]],tops:[[],[]],minor:[[],[]]};return r.major[t]=a.major,r.major[s]=a.major.map((()=>this.loc)),3==e.levels&&(r.mids[t]=a.mids,r.mids[s]=a.mids.map((()=>this.loc))),e.levels>1&&(r.tops[t]=a.tops,r.tops[s]=a.tops.map((()=>this.loc))),r}}e.CategoricalAxisView=m,m.__name__=\"CategoricalAxisView\";class u extends r.Axis{constructor(t){super(t)}static init_CategoricalAxis(){this.prototype.default_view=m,this.mixins([[\"separator_\",n.Line],[\"group_\",n.Text],[\"subgroup_\",n.Text]]),this.define((({Number:t,Or:s})=>({group_label_orientation:[s(c.TickLabelOrientation,t),\"parallel\"],subgroup_label_orientation:[s(c.TickLabelOrientation,t),\"parallel\"]}))),this.override({ticker:()=>new l.CategoricalTicker,formatter:()=>new _.CategoricalTickFormatter,separator_line_color:\"lightgrey\",separator_line_width:2,group_text_font_style:\"bold\",group_text_font_size:\"11px\",group_text_color:\"grey\",subgroup_text_font_style:\"bold\",subgroup_text_font_size:\"11px\"})}}e.CategoricalAxis=u,u.__name__=\"CategoricalAxis\",u.init_CategoricalAxis()},\n", " function _(t,c,o,s,e){s();const r=t(165);class i extends r.Ticker{constructor(t){super(t)}get_ticks(t,c,o,s){var e,r;return{major:this._collect(o.factors,o,t,c),minor:[],tops:this._collect(null!==(e=o.tops)&&void 0!==e?e:[],o,t,c),mids:this._collect(null!==(r=o.mids)&&void 0!==r?r:[],o,t,c)}}_collect(t,c,o,s){const e=[];for(const r of t){const t=c.synthetic(r);t>o&&t<s&&e.push(r)}return e}}o.CategoricalTicker=i,i.__name__=\"CategoricalTicker\"},\n", " function _(t,r,o,c,a){c();const e=t(166),n=t(9);class i extends e.TickFormatter{constructor(t){super(t)}doFormat(t,r){return n.copy(t)}}o.CategoricalTickFormatter=i,i.__name__=\"CategoricalTickFormatter\"},\n", " function _(s,n,i,o,u){o();const e=s(163);class t extends e.AxisView{}i.ContinuousAxisView=t,t.__name__=\"ContinuousAxisView\";class _ extends e.Axis{constructor(s){super(s)}}i.ContinuousAxis=_,_.__name__=\"ContinuousAxis\"},\n", " function _(e,t,i,s,a){s();const n=e(175),r=e(180),m=e(185);class _ extends n.LinearAxisView{}i.DatetimeAxisView=_,_.__name__=\"DatetimeAxisView\";class c extends n.LinearAxis{constructor(e){super(e)}static init_DatetimeAxis(){this.prototype.default_view=_,this.override({ticker:()=>new m.DatetimeTicker,formatter:()=>new r.DatetimeTickFormatter})}}i.DatetimeAxis=c,c.__name__=\"DatetimeAxis\",c.init_DatetimeAxis()},\n", " function _(i,e,s,n,t){n();const r=i(173),a=i(176),o=i(177);class c extends r.ContinuousAxisView{}s.LinearAxisView=c,c.__name__=\"LinearAxisView\";class _ extends r.ContinuousAxis{constructor(i){super(i)}static init_LinearAxis(){this.prototype.default_view=c,this.override({ticker:()=>new o.BasicTicker,formatter:()=>new a.BasicTickFormatter})}}s.LinearAxis=_,_.__name__=\"LinearAxis\",_.init_LinearAxis()},\n", " function _(i,t,e,n,o){n();const s=i(166),r=i(34);function c(i){let t=\"\";for(const e of i)t+=\"-\"==e?\"−\":e;return t}e.unicode_replace=c;class _ extends s.TickFormatter{constructor(i){super(i),this.last_precision=3}static init_BasicTickFormatter(){this.define((({Boolean:i,Int:t,Auto:e,Or:n})=>({precision:[n(t,e),\"auto\"],use_scientific:[i,!0],power_limit_high:[t,5],power_limit_low:[t,-3]})))}get scientific_limit_low(){return 10**this.power_limit_low}get scientific_limit_high(){return 10**this.power_limit_high}_need_sci(i){if(!this.use_scientific)return!1;const{scientific_limit_high:t}=this,{scientific_limit_low:e}=this,n=i.length<2?0:Math.abs(i[1]-i[0])/1e4;for(const o of i){const i=Math.abs(o);if(!(i<=n)&&(i>=t||i<=e))return!0}return!1}_format_with_precision(i,t,e){return t?i.map((i=>c(i.toExponential(e)))):i.map((i=>c(r.to_fixed(i,e))))}_auto_precision(i,t){const e=new Array(i.length),n=this.last_precision<=15;i:for(let o=this.last_precision;n?o<=15:o>=1;n?o++:o--){if(t){e[0]=i[0].toExponential(o);for(let t=1;t<i.length;t++)if(e[t]==e[t-1])continue i;this.last_precision=o;break}e[0]=r.to_fixed(i[0],o);for(let t=1;t<i.length;t++)if(e[t]=r.to_fixed(i[t],o),e[t]==e[t-1])continue i;this.last_precision=o;break}return this.last_precision}doFormat(i,t){if(0==i.length)return[];const e=this._need_sci(i),n=\"auto\"==this.precision?this._auto_precision(i,e):this.precision;return this._format_with_precision(i,e,n)}}e.BasicTickFormatter=_,_.__name__=\"BasicTickFormatter\",_.init_BasicTickFormatter()},\n", " function _(c,e,s,i,n){i();const r=c(178);class t extends r.AdaptiveTicker{constructor(c){super(c)}}s.BasicTicker=t,t.__name__=\"BasicTicker\"},\n", " function _(t,i,a,e,s){e();const n=t(179),r=t(9),_=t(10);class l extends n.ContinuousTicker{constructor(t){super(t)}static init_AdaptiveTicker(){this.define((({Number:t,Array:i,Nullable:a})=>({base:[t,10],mantissas:[i(t),[1,2,5]],min_interval:[t,0],max_interval:[a(t),null]})))}get_min_interval(){return this.min_interval}get_max_interval(){var t;return null!==(t=this.max_interval)&&void 0!==t?t:1/0}initialize(){super.initialize();const t=r.nth(this.mantissas,-1)/this.base,i=r.nth(this.mantissas,0)*this.base;this.extended_mantissas=[t,...this.mantissas,i],this.base_factor=0===this.get_min_interval()?1:this.get_min_interval()}get_interval(t,i,a){const e=i-t,s=this.get_ideal_interval(t,i,a),n=Math.floor(_.log(s/this.base_factor,this.base)),l=this.base**n*this.base_factor,h=this.extended_mantissas,m=h.map((t=>Math.abs(a-e/(t*l)))),v=h[r.argmin(m)]*l;return _.clamp(v,this.get_min_interval(),this.get_max_interval())}}a.AdaptiveTicker=l,l.__name__=\"AdaptiveTicker\",l.init_AdaptiveTicker()},\n", " function _(t,i,n,s,e){s();const o=t(165),r=t(9);class c extends o.Ticker{constructor(t){super(t)}static init_ContinuousTicker(){this.define((({Int:t})=>({num_minor_ticks:[t,5],desired_num_ticks:[t,6]})))}get_ticks(t,i,n,s){return this.get_ticks_no_defaults(t,i,s,this.desired_num_ticks)}get_ticks_no_defaults(t,i,n,s){const e=this.get_interval(t,i,s),o=Math.floor(t/e),c=Math.ceil(i/e);let _;_=isFinite(o)&&isFinite(c)?r.range(o,c+1):[];const u=_.map((t=>t*e)).filter((n=>t<=n&&n<=i)),a=this.num_minor_ticks,f=[];if(a>0&&u.length>0){const n=e/a,s=r.range(0,a).map((t=>t*n));for(const n of s.slice(1)){const s=u[0]-n;t<=s&&s<=i&&f.push(s)}for(const n of u)for(const e of s){const s=n+e;t<=s&&s<=i&&f.push(s)}}return{major:u,minor:f}}get_ideal_interval(t,i,n){return(i-t)/n}}n.ContinuousTicker=c,c.__name__=\"ContinuousTicker\",c.init_ContinuousTicker()},\n", " function _(t,s,e,i,n){i();const r=t(1).__importDefault(t(181)),o=t(166),a=t(19),c=t(182),m=t(9),u=t(8);function h(t){return r.default(t,\"%Y %m %d %H %M %S\").split(/\\s+/).map((t=>parseInt(t,10)))}function d(t,s){if(u.isFunction(s))return s(t);{const e=c.sprintf(\"$1%06d\",function(t){return Math.round(t/1e3%1*1e6)}(t));return-1==(s=s.replace(/((^|[^%])(%%)*)%f/,e)).indexOf(\"%\")?s:r.default(t,s)}}const l=[\"microseconds\",\"milliseconds\",\"seconds\",\"minsec\",\"minutes\",\"hourmin\",\"hours\",\"days\",\"months\",\"years\"];class f extends o.TickFormatter{constructor(t){super(t),this.strip_leading_zeros=!0}static init_DatetimeTickFormatter(){this.define((({String:t,Array:s})=>({microseconds:[s(t),[\"%fus\"]],milliseconds:[s(t),[\"%3Nms\",\"%S.%3Ns\"]],seconds:[s(t),[\"%Ss\"]],minsec:[s(t),[\":%M:%S\"]],minutes:[s(t),[\":%M\",\"%Mm\"]],hourmin:[s(t),[\"%H:%M\"]],hours:[s(t),[\"%Hh\",\"%H:%M\"]],days:[s(t),[\"%m/%d\",\"%a%d\"]],months:[s(t),[\"%m/%Y\",\"%b %Y\"]],years:[s(t),[\"%Y\"]]})))}initialize(){super.initialize(),this._update_width_formats()}_update_width_formats(){const t=+r.default(new Date),s=function(s){const e=s.map((s=>d(t,s).length)),i=m.sort_by(m.zip(e,s),(([t])=>t));return m.unzip(i)};this._width_formats={microseconds:s(this.microseconds),milliseconds:s(this.milliseconds),seconds:s(this.seconds),minsec:s(this.minsec),minutes:s(this.minutes),hourmin:s(this.hourmin),hours:s(this.hours),days:s(this.days),months:s(this.months),years:s(this.years)}}_get_resolution_str(t,s){const e=1.1*t;switch(!1){case!(e<.001):return\"microseconds\";case!(e<1):return\"milliseconds\";case!(e<60):return s>=60?\"minsec\":\"seconds\";case!(e<3600):return s>=3600?\"hourmin\":\"minutes\";case!(e<86400):return\"hours\";case!(e<2678400):return\"days\";case!(e<31536e3):return\"months\";default:return\"years\"}}doFormat(t,s){if(0==t.length)return[];const e=Math.abs(t[t.length-1]-t[0])/1e3,i=e/(t.length-1),n=this._get_resolution_str(i,e),[,[r]]=this._width_formats[n],o=[],c=l.indexOf(n),m={};for(const t of l)m[t]=0;m.seconds=5,m.minsec=4,m.minutes=4,m.hourmin=3,m.hours=3;for(const s of t){let t,e;try{e=h(s),t=d(s,r)}catch(t){a.logger.warn(`unable to format tick for timestamp value ${s}`),a.logger.warn(` - ${t}`),o.push(\"ERR\");continue}let i=!1,u=c;for(;0==e[m[l[u]]];){let r;if(u+=1,u==l.length)break;if((\"minsec\"==n||\"hourmin\"==n)&&!i){if(\"minsec\"==n&&0==e[4]&&0!=e[5]||\"hourmin\"==n&&0==e[3]&&0!=e[4]){r=this._width_formats[l[c-1]][1][0],t=d(s,r);break}i=!0}r=this._width_formats[l[u]][1][0],t=d(s,r)}if(this.strip_leading_zeros){let s=t.replace(/^0+/g,\"\");s!=t&&isNaN(parseInt(s))&&(s=`0${s}`),o.push(s)}else o.push(t)}return o}}e.DatetimeTickFormatter=f,f.__name__=\"DatetimeTickFormatter\",f.init_DatetimeTickFormatter()},\n", " function _(e,t,n,r,o){!function(e){\"object\"==typeof t&&t.exports?t.exports=e():\"function\"==typeof define?define(e):this.tz=e()}((function(){function e(e,t,n){var r,o=t.day[1];do{r=new Date(Date.UTC(n,t.month,Math.abs(o++)))}while(t.day[0]<7&&r.getUTCDay()!=t.day[0]);return(r={clock:t.clock,sort:r.getTime(),rule:t,save:6e4*t.save,offset:e.offset})[r.clock]=r.sort+6e4*t.time,r.posix?r.wallclock=r[r.clock]+(e.offset+t.saved):r.posix=r[r.clock]-(e.offset+t.saved),r}function t(t,n,r){var o,a,u,i,l,s,c,f=t[t.zone],h=[],T=new Date(r).getUTCFullYear(),g=1;for(o=1,a=f.length;o<a&&!(f[o][n]<=r);o++);if((u=f[o]).rules){for(s=t[u.rules],c=T+1;c>=T-g;--c)for(o=0,a=s.length;o<a;o++)s[o].from<=c&&c<=s[o].to?h.push(e(u,s[o],c)):s[o].to<c&&1==g&&(g=c-s[o].to);for(h.sort((function(e,t){return e.sort-t.sort})),o=0,a=h.length;o<a;o++)r>=h[o][n]&&h[o][h[o].clock]>u[h[o].clock]&&(i=h[o])}return i&&((l=/^(.*)\\/(.*)$/.exec(u.format))?i.abbrev=l[i.save?2:1]:i.abbrev=u.format.replace(/%s/,i.rule.letter)),i||u}function n(e,n){return\"UTC\"==e.zone?n:(e.entry=t(e,\"posix\",n),n+e.entry.offset+e.entry.save)}function r(e,n){return\"UTC\"==e.zone?n:(e.entry=r=t(e,\"wallclock\",n),0<(o=n-r.wallclock)&&o<r.save?null:n-r.offset-r.save);var r,o}function o(e,t,o){var a,i=+(o[1]+1),s=o[2]*i,c=u.indexOf(o[3].toLowerCase());if(c>9)t+=s*l[c-10];else{if(a=new Date(n(e,t)),c<7)for(;s;)a.setUTCDate(a.getUTCDate()+i),a.getUTCDay()==c&&(s-=i);else 7==c?a.setUTCFullYear(a.getUTCFullYear()+s):8==c?a.setUTCMonth(a.getUTCMonth()+s):a.setUTCDate(a.getUTCDate()+s);null==(t=r(e,a.getTime()))&&(t=r(e,a.getTime()+864e5*i)-864e5*i)}return t}var a={clock:function(){return+new Date},zone:\"UTC\",entry:{abbrev:\"UTC\",offset:0,save:0},UTC:1,z:function(e,t,n,r){var o,a,u=this.entry.offset+this.entry.save,i=Math.abs(u/1e3),l=[],s=3600;for(o=0;o<3;o++)l.push((\"0\"+Math.floor(i/s)).slice(-2)),i%=s,s/=60;return\"^\"!=n||u?(\"^\"==n&&(r=3),3==r?(a=(a=l.join(\":\")).replace(/:00$/,\"\"),\"^\"!=n&&(a=a.replace(/:00$/,\"\"))):r?(a=l.slice(0,r+1).join(\":\"),\"^\"==n&&(a=a.replace(/:00$/,\"\"))):a=l.slice(0,2).join(\"\"),a=(a=(u<0?\"-\":\"+\")+a).replace(/([-+])(0)/,{_:\" $1\",\"-\":\"$1\"}[n]||\"$1$2\")):\"Z\"},\"%\":function(e){return\"%\"},n:function(e){return\"\\n\"},t:function(e){return\"\\t\"},U:function(e){return s(e,0)},W:function(e){return s(e,1)},V:function(e){return c(e)[0]},G:function(e){return c(e)[1]},g:function(e){return c(e)[1]%100},j:function(e){return Math.floor((e.getTime()-Date.UTC(e.getUTCFullYear(),0))/864e5)+1},s:function(e){return Math.floor(e.getTime()/1e3)},C:function(e){return Math.floor(e.getUTCFullYear()/100)},N:function(e){return e.getTime()%1e3*1e6},m:function(e){return e.getUTCMonth()+1},Y:function(e){return e.getUTCFullYear()},y:function(e){return e.getUTCFullYear()%100},H:function(e){return e.getUTCHours()},M:function(e){return e.getUTCMinutes()},S:function(e){return e.getUTCSeconds()},e:function(e){return e.getUTCDate()},d:function(e){return e.getUTCDate()},u:function(e){return e.getUTCDay()||7},w:function(e){return e.getUTCDay()},l:function(e){return e.getUTCHours()%12||12},I:function(e){return e.getUTCHours()%12||12},k:function(e){return e.getUTCHours()},Z:function(e){return this.entry.abbrev},a:function(e){return this[this.locale].day.abbrev[e.getUTCDay()]},A:function(e){return this[this.locale].day.full[e.getUTCDay()]},h:function(e){return this[this.locale].month.abbrev[e.getUTCMonth()]},b:function(e){return this[this.locale].month.abbrev[e.getUTCMonth()]},B:function(e){return this[this.locale].month.full[e.getUTCMonth()]},P:function(e){return this[this.locale].meridiem[Math.floor(e.getUTCHours()/12)].toLowerCase()},p:function(e){return this[this.locale].meridiem[Math.floor(e.getUTCHours()/12)]},R:function(e,t){return this.convert([t,\"%H:%M\"])},T:function(e,t){return this.convert([t,\"%H:%M:%S\"])},D:function(e,t){return this.convert([t,\"%m/%d/%y\"])},F:function(e,t){return this.convert([t,\"%Y-%m-%d\"])},x:function(e,t){return this.convert([t,this[this.locale].date])},r:function(e,t){return this.convert([t,this[this.locale].time12||\"%I:%M:%S\"])},X:function(e,t){return this.convert([t,this[this.locale].time24])},c:function(e,t){return this.convert([t,this[this.locale].dateTime])},convert:function(e){if(!e.length)return\"1.0.23\";var t,a,u,l,s,c=Object.create(this),f=[];for(t=0;t<e.length;t++)if(l=e[t],Array.isArray(l))t||isNaN(l[1])?l.splice.apply(e,[t--,1].concat(l)):s=l;else if(isNaN(l)){if(\"string\"==(u=typeof l))~l.indexOf(\"%\")?c.format=l:t||\"*\"!=l?!t&&(u=/^(\\d{4})-(\\d{2})-(\\d{2})(?:[T\\s](\\d{2}):(\\d{2})(?::(\\d{2})(?:\\.(\\d+))?)?(Z|(([+-])(\\d{2}(:\\d{2}){0,2})))?)?$/.exec(l))?((s=[]).push.apply(s,u.slice(1,8)),u[9]?(s.push(u[10]+1),s.push.apply(s,u[11].split(/:/))):u[8]&&s.push(1)):/^\\w{2,3}_\\w{2}$/.test(l)?c.locale=l:(u=i.exec(l))?f.push(u):c.zone=l:s=l;else if(\"function\"==u){if(u=l.call(c))return u}else if(/^\\w{2,3}_\\w{2}$/.test(l.name))c[l.name]=l;else if(l.zones){for(u in l.zones)c[u]=l.zones[u];for(u in l.rules)c[u]=l.rules[u]}}else t||(s=l);if(c[c.locale]||delete c.locale,c[c.zone]||delete c.zone,null!=s){if(\"*\"==s)s=c.clock();else if(Array.isArray(s)){for(u=[],a=!s[7],t=0;t<11;t++)u[t]=+(s[t]||0);--u[1],s=Date.UTC.apply(Date.UTC,u)+-u[7]*(36e5*u[8]+6e4*u[9]+1e3*u[10])}else s=Math.floor(s);if(!isNaN(s)){if(a&&(s=r(c,s)),null==s)return s;for(t=0,a=f.length;t<a;t++)s=o(c,s,f[t]);return c.format?(u=new Date(n(c,s)),c.format.replace(/%([-0_^]?)(:{0,3})(\\d*)(.)/g,(function(e,t,n,r,o){var a,i,l=\"0\";if(a=c[o]){for(e=String(a.call(c,u,s,t,n.length)),\"_\"==(t||a.style)&&(l=\" \"),i=\"-\"==t?0:a.pad||0;e.length<i;)e=l+e;for(i=\"-\"==t?0:r||a.pad;e.length<i;)e=l+e;\"N\"==o&&i<e.length&&(e=e.slice(0,i)),\"^\"==t&&(e=e.toUpperCase())}return e}))):s}}return function(){return c.convert(arguments)}},locale:\"en_US\",en_US:{date:\"%m/%d/%Y\",time24:\"%I:%M:%S %p\",time12:\"%I:%M:%S %p\",dateTime:\"%a %d %b %Y %I:%M:%S %p %Z\",meridiem:[\"AM\",\"PM\"],month:{abbrev:\"Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec\".split(\"|\"),full:\"January|February|March|April|May|June|July|August|September|October|November|December\".split(\"|\")},day:{abbrev:\"Sun|Mon|Tue|Wed|Thu|Fri|Sat\".split(\"|\"),full:\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday\".split(\"|\")}}},u=\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|year|month|day|hour|minute|second|millisecond\",i=new RegExp(\"^\\\\s*([+-])(\\\\d+)\\\\s+(\"+u+\")s?\\\\s*$\",\"i\"),l=[36e5,6e4,1e3,1];function s(e,t){var n,r,o;return r=new Date(Date.UTC(e.getUTCFullYear(),0)),n=Math.floor((e.getTime()-r.getTime())/864e5),r.getUTCDay()==t?o=0:8==(o=7-r.getUTCDay()+t)&&(o=1),n>=o?Math.floor((n-o)/7)+1:0}function c(e){var t,n,r;return n=e.getUTCFullYear(),t=new Date(Date.UTC(n,0)).getUTCDay(),(r=s(e,1)+(t>1&&t<=4?1:0))?53!=r||4==t||3==t&&29==new Date(n,1,29).getDate()?[r,e.getUTCFullYear()]:[1,e.getUTCFullYear()+1]:(n=e.getUTCFullYear()-1,[r=4==(t=new Date(Date.UTC(n,0)).getUTCDay())||3==t&&29==new Date(n,1,29).getDate()?53:52,e.getUTCFullYear()-1])}return u=u.toLowerCase().split(\"|\"),\"delmHMSUWVgCIky\".replace(/./g,(function(e){a[e].pad=2})),a.N.pad=9,a.j.pad=3,a.k.style=\"_\",a.l.style=\"_\",a.e.style=\"_\",function(){return a.convert(arguments)}}))},\n", " function _(r,t,n,e,i){e();const u=r(1),a=u.__importStar(r(183)),f=r(184),o=u.__importDefault(r(181)),l=r(21),s=r(8);function c(r,...t){return f.sprintf(r,...t)}function m(r,t,n){if(s.isNumber(r)){return c((()=>{switch(!1){case Math.floor(r)!=r:return\"%d\";case!(Math.abs(r)>.1&&Math.abs(r)<1e3):return\"%0.3f\";default:return\"%0.3e\"}})(),r)}return`${r}`}function p(r,t,e){if(null==t)return m;if(null!=e&&r in e){const t=e[r];if(s.isString(t)){if(t in n.DEFAULT_FORMATTERS)return n.DEFAULT_FORMATTERS[t];throw new Error(`Unknown tooltip field formatter type '${t}'`)}return function(r,n,e){return t.format(r,n,e)}}return n.DEFAULT_FORMATTERS.numeral}function d(r,t,n,e){if(\"$\"==r[0]){return function(r,t){if(r in t)return t[r];throw new Error(`Unknown special variable '$${r}'`)}(r.substring(1),e)}return function(r,t,n){const e=t.get_column(r);if(null==e)return null;if(s.isNumber(n))return e[n];const i=e[n.index];if(s.isTypedArray(i)||s.isArray(i))return s.isArray(i[0])?i[n.dim2][n.dim1]:i[n.flat_index];return i}(r.substring(1).replace(/[{}]/g,\"\"),t,n)}n.FormatterType=l.Enum(\"numeral\",\"printf\",\"datetime\"),n.DEFAULT_FORMATTERS={numeral:(r,t,n)=>a.format(r,t),datetime:(r,t,n)=>o.default(r,t),printf:(r,t,n)=>c(t,r)},n.sprintf=c,n.basic_formatter=m,n.get_formatter=p,n.get_value=d,n.replace_placeholders=function(r,t,n,e,i={},u){let a,f;if(s.isString(r)?(a=r,f=!1):(a=r.html,f=!0),a=a.replace(/@\\$name/g,(r=>`@{${i.name}}`)),a=a.replace(/((?:\\$\\w+)|(?:@\\w+)|(?:@{(?:[^{}]+)}))(?:{([^{}]+)})?/g,((r,a,o)=>{const l=d(a,t,n,i);if(null==l)return u?u(\"???\"):\"???\";if(\"safe\"==o)return f=!0,`${l}`;const s=`${p(a,o,e)(l,o,i)}`;return u?u(s):s})),f){return[...(new DOMParser).parseFromString(a,\"text/html\").body.childNodes]}return a}},\n", " function _(e,n,t,r,i){\n", " /*!\n", " * numbro.js\n", " * version : 1.6.2\n", " * author : Företagsplatsen AB\n", " * license : MIT\n", " * http://www.foretagsplatsen.se\n", " */\n", " var a,o={},l=o,u=\"en-US\",c=null,s=\"0,0\";void 0!==n&&n.exports;function f(e){this._value=e}function d(e){var n,t=\"\";for(n=0;n<e;n++)t+=\"0\";return t}function h(e,n,t,r){var i,a,o=Math.pow(10,n);return a=e.toFixed(0).search(\"e\")>-1?function(e,n){var t,r,i,a;return t=(a=e.toString()).split(\"e\")[0],i=a.split(\"e\")[1],a=t.split(\".\")[0]+(r=t.split(\".\")[1]||\"\")+d(i-r.length),n>0&&(a+=\".\"+d(n)),a}(e,n):(t(e*o)/o).toFixed(n),r&&(i=new RegExp(\"0{1,\"+r+\"}$\"),a=a.replace(i,\"\")),a}function p(e,n,t){return n.indexOf(\"$\")>-1?function(e,n,t){var r,i,a=n,l=a.indexOf(\"$\"),c=a.indexOf(\"(\"),s=a.indexOf(\"+\"),f=a.indexOf(\"-\"),d=\"\",h=\"\";-1===a.indexOf(\"$\")?\"infix\"===o[u].currency.position?(h=o[u].currency.symbol,o[u].currency.spaceSeparated&&(h=\" \"+h+\" \")):o[u].currency.spaceSeparated&&(d=\" \"):a.indexOf(\" $\")>-1?(d=\" \",a=a.replace(\" $\",\"\")):a.indexOf(\"$ \")>-1?(d=\" \",a=a.replace(\"$ \",\"\")):a=a.replace(\"$\",\"\");if(i=m(e,a,t,h),-1===n.indexOf(\"$\"))switch(o[u].currency.position){case\"postfix\":i.indexOf(\")\")>-1?((i=i.split(\"\")).splice(-1,0,d+o[u].currency.symbol),i=i.join(\"\")):i=i+d+o[u].currency.symbol;break;case\"infix\":break;case\"prefix\":i.indexOf(\"(\")>-1||i.indexOf(\"-\")>-1?(i=i.split(\"\"),r=Math.max(c,f)+1,i.splice(r,0,o[u].currency.symbol+d),i=i.join(\"\")):i=o[u].currency.symbol+d+i;break;default:throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]')}else l<=1?i.indexOf(\"(\")>-1||i.indexOf(\"+\")>-1||i.indexOf(\"-\")>-1?(r=1,(l<c||l<s||l<f)&&(r=0),(i=i.split(\"\")).splice(r,0,o[u].currency.symbol+d),i=i.join(\"\")):i=o[u].currency.symbol+d+i:i.indexOf(\")\")>-1?((i=i.split(\"\")).splice(-1,0,d+o[u].currency.symbol),i=i.join(\"\")):i=i+d+o[u].currency.symbol;return i}(e,n,t):n.indexOf(\"%\")>-1?function(e,n,t){var r,i=\"\";e*=100,n.indexOf(\" %\")>-1?(i=\" \",n=n.replace(\" %\",\"\")):n=n.replace(\"%\",\"\");(r=m(e,n,t)).indexOf(\")\")>-1?((r=r.split(\"\")).splice(-1,0,i+\"%\"),r=r.join(\"\")):r=r+i+\"%\";return r}(e,n,t):n.indexOf(\":\")>-1?function(e){var n=Math.floor(e/60/60),t=Math.floor((e-60*n*60)/60),r=Math.round(e-60*n*60-60*t);return n+\":\"+(t<10?\"0\"+t:t)+\":\"+(r<10?\"0\"+r:r)}(e):m(e,n,t)}function m(e,n,t,r){var i,a,l,s,f,d,p,m,x,g,O,b,w,y,M,v,$,B=!1,E=!1,F=!1,k=\"\",U=!1,N=!1,S=!1,j=!1,D=!1,C=\"\",L=\"\",T=Math.abs(e),K=[\"B\",\"KiB\",\"MiB\",\"GiB\",\"TiB\",\"PiB\",\"EiB\",\"ZiB\",\"YiB\"],G=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\",\"ZB\",\"YB\"],I=\"\",P=!1,R=!1;if(0===e&&null!==c)return c;if(!isFinite(e))return\"\"+e;if(0===n.indexOf(\"{\")){var W=n.indexOf(\"}\");if(-1===W)throw Error('Format should also contain a \"}\"');b=n.slice(1,W),n=n.slice(W+1)}else b=\"\";if(n.indexOf(\"}\")===n.length-1){var Y=n.indexOf(\"{\");if(-1===Y)throw Error('Format should also contain a \"{\"');w=n.slice(Y+1,-1),n=n.slice(0,Y+1)}else w=\"\";if(v=null===($=-1===n.indexOf(\".\")?n.match(/([0-9]+).*/):n.match(/([0-9]+)\\..*/))?-1:$[1].length,-1!==n.indexOf(\"-\")&&(P=!0),n.indexOf(\"(\")>-1?(B=!0,n=n.slice(1,-1)):n.indexOf(\"+\")>-1&&(E=!0,n=n.replace(/\\+/g,\"\")),n.indexOf(\"a\")>-1){if(g=n.split(\".\")[0].match(/[0-9]+/g)||[\"0\"],g=parseInt(g[0],10),U=n.indexOf(\"aK\")>=0,N=n.indexOf(\"aM\")>=0,S=n.indexOf(\"aB\")>=0,j=n.indexOf(\"aT\")>=0,D=U||N||S||j,n.indexOf(\" a\")>-1?(k=\" \",n=n.replace(\" a\",\"\")):n=n.replace(\"a\",\"\"),p=0===(p=(f=Math.floor(Math.log(T)/Math.LN10)+1)%3)?3:p,g&&0!==T&&(d=Math.floor(Math.log(T)/Math.LN10)+1-g,m=3*~~((Math.min(g,f)-p)/3),T/=Math.pow(10,m),-1===n.indexOf(\".\")&&g>3))for(n+=\"[.]\",M=(M=0===d?0:3*~~(d/3)-d)<0?M+3:M,i=0;i<M;i++)n+=\"0\";Math.floor(Math.log(Math.abs(e))/Math.LN10)+1!==g&&(T>=Math.pow(10,12)&&!D||j?(k+=o[u].abbreviations.trillion,e/=Math.pow(10,12)):T<Math.pow(10,12)&&T>=Math.pow(10,9)&&!D||S?(k+=o[u].abbreviations.billion,e/=Math.pow(10,9)):T<Math.pow(10,9)&&T>=Math.pow(10,6)&&!D||N?(k+=o[u].abbreviations.million,e/=Math.pow(10,6)):(T<Math.pow(10,6)&&T>=Math.pow(10,3)&&!D||U)&&(k+=o[u].abbreviations.thousand,e/=Math.pow(10,3)))}if(n.indexOf(\"b\")>-1)for(n.indexOf(\" b\")>-1?(C=\" \",n=n.replace(\" b\",\"\")):n=n.replace(\"b\",\"\"),s=0;s<=K.length;s++)if(a=Math.pow(1024,s),l=Math.pow(1024,s+1),e>=a&&e<l){C+=K[s],a>0&&(e/=a);break}if(n.indexOf(\"d\")>-1)for(n.indexOf(\" d\")>-1?(C=\" \",n=n.replace(\" d\",\"\")):n=n.replace(\"d\",\"\"),s=0;s<=G.length;s++)if(a=Math.pow(1e3,s),l=Math.pow(1e3,s+1),e>=a&&e<l){C+=G[s],a>0&&(e/=a);break}if(n.indexOf(\"o\")>-1&&(n.indexOf(\" o\")>-1?(L=\" \",n=n.replace(\" o\",\"\")):n=n.replace(\"o\",\"\"),o[u].ordinal&&(L+=o[u].ordinal(e))),n.indexOf(\"[.]\")>-1&&(F=!0,n=n.replace(\"[.]\",\".\")),x=e.toString().split(\".\")[0],O=n.split(\".\")[1],y=n.indexOf(\",\"),O){if(x=(I=-1!==O.indexOf(\"*\")?h(e,e.toString().split(\".\")[1].length,t):O.indexOf(\"[\")>-1?h(e,(O=(O=O.replace(\"]\",\"\")).split(\"[\"))[0].length+O[1].length,t,O[1].length):h(e,O.length,t)).split(\".\")[0],I.split(\".\")[1].length)I=(r?k+r:o[u].delimiters.decimal)+I.split(\".\")[1];else I=\"\";F&&0===Number(I.slice(1))&&(I=\"\")}else x=h(e,null,t);return x.indexOf(\"-\")>-1&&(x=x.slice(1),R=!0),x.length<v&&(x=new Array(v-x.length+1).join(\"0\")+x),y>-1&&(x=x.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g,\"$1\"+o[u].delimiters.thousands)),0===n.indexOf(\".\")&&(x=\"\"),b+(n.indexOf(\"(\")<n.indexOf(\"-\")?(B&&R?\"(\":\"\")+(P&&R||!B&&R?\"-\":\"\"):(P&&R||!B&&R?\"-\":\"\")+(B&&R?\"(\":\"\"))+(!R&&E&&0!==e?\"+\":\"\")+x+I+(L||\"\")+(k&&!r?k:\"\")+(C||\"\")+(B&&R?\")\":\"\")+w}function x(e,n){o[e]=n}function g(e){u=e;var n=o[e].defaults;n&&n.format&&a.defaultFormat(n.format),n&&n.currencyFormat&&a.defaultCurrencyFormat(n.currencyFormat)}(a=function(e){return a.isNumbro(e)?e=e.value():0===e||void 0===e?e=0:Number(e)||(e=a.fn.unformat(e)),new f(Number(e))}).version=\"1.6.2\",a.isNumbro=function(e){return e instanceof f},a.setLanguage=function(e,n){console.warn(\"`setLanguage` is deprecated since version 1.6.0. Use `setCulture` instead\");var t=e,r=e.split(\"-\")[0],i=null;l[t]||(Object.keys(l).forEach((function(e){i||e.split(\"-\")[0]!==r||(i=e)})),t=i||n||\"en-US\"),g(t)},a.setCulture=function(e,n){var t=e,r=e.split(\"-\")[1],i=null;o[t]||(r&&Object.keys(o).forEach((function(e){i||e.split(\"-\")[1]!==r||(i=e)})),t=i||n||\"en-US\"),g(t)},a.language=function(e,n){if(console.warn(\"`language` is deprecated since version 1.6.0. Use `culture` instead\"),!e)return u;if(e&&!n){if(!l[e])throw new Error(\"Unknown language : \"+e);g(e)}return!n&&l[e]||x(e,n),a},a.culture=function(e,n){if(!e)return u;if(e&&!n){if(!o[e])throw new Error(\"Unknown culture : \"+e);g(e)}return!n&&o[e]||x(e,n),a},a.languageData=function(e){if(console.warn(\"`languageData` is deprecated since version 1.6.0. Use `cultureData` instead\"),!e)return l[u];if(!l[e])throw new Error(\"Unknown language : \"+e);return l[e]},a.cultureData=function(e){if(!e)return o[u];if(!o[e])throw new Error(\"Unknown culture : \"+e);return o[e]},a.culture(\"en-US\",{delimiters:{thousands:\",\",decimal:\".\"},abbreviations:{thousand:\"k\",million:\"m\",billion:\"b\",trillion:\"t\"},ordinal:function(e){var n=e%10;return 1==~~(e%100/10)?\"th\":1===n?\"st\":2===n?\"nd\":3===n?\"rd\":\"th\"},currency:{symbol:\"$\",position:\"prefix\"},defaults:{currencyFormat:\",0000 a\"},formats:{fourDigits:\"0000 a\",fullWithTwoDecimals:\"$ ,0.00\",fullWithTwoDecimalsNoCurrency:\",0.00\"}}),a.languages=function(){return console.warn(\"`languages` is deprecated since version 1.6.0. Use `cultures` instead\"),l},a.cultures=function(){return o},a.zeroFormat=function(e){c=\"string\"==typeof e?e:null},a.defaultFormat=function(e){s=\"string\"==typeof e?e:\"0.0\"},a.defaultCurrencyFormat=function(e){\"string\"==typeof e?e:\"0$\"},a.validate=function(e,n){var t,r,i,o,l,u,c,s;if(\"string\"!=typeof e&&(e+=\"\",console.warn&&console.warn(\"Numbro.js: Value is not string. It has been co-erced to: \",e)),(e=e.trim()).match(/^\\d+$/))return!0;if(\"\"===e)return!1;try{c=a.cultureData(n)}catch(e){c=a.cultureData(a.culture())}return i=c.currency.symbol,l=c.abbreviations,t=c.delimiters.decimal,r=\".\"===c.delimiters.thousands?\"\\\\.\":c.delimiters.thousands,(null===(s=e.match(/^[^\\d]+/))||(e=e.substr(1),s[0]===i))&&((null===(s=e.match(/[^\\d]+$/))||(e=e.slice(0,-1),s[0]===l.thousand||s[0]===l.million||s[0]===l.billion||s[0]===l.trillion))&&(u=new RegExp(r+\"{2}\"),!e.match(/[^\\d.,]/g)&&(!((o=e.split(t)).length>2)&&(o.length<2?!!o[0].match(/^\\d+.*\\d$/)&&!o[0].match(u):1===o[0].length?!!o[0].match(/^\\d+$/)&&!o[0].match(u)&&!!o[1].match(/^\\d+$/):!!o[0].match(/^\\d+.*\\d$/)&&!o[0].match(u)&&!!o[1].match(/^\\d+$/)))))},n.exports={format:function(e,n,t,r){return null!=t&&t!==a.culture()&&a.setCulture(t),p(Number(e),null!=n?n:s,null==r?Math.round:r)}}},\n", " function _(e,n,t,r,i){!function(){\"use strict\";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\\x25]+/,modulo:/^\\x25{2}/,placeholder:/^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\\d]*)/i,key_access:/^\\.([a-z_][a-z_\\d]*)/i,index_access:/^\\[(\\d+)\\]/,sign:/^[+-]/};function n(e){return i(a(e),arguments)}function r(e,t){return n.apply(null,[e].concat(t||[]))}function i(t,r){var i,s,a,o,p,c,l,u,f,d=1,g=t.length,y=\"\";for(s=0;s<g;s++)if(\"string\"==typeof t[s])y+=t[s];else if(\"object\"==typeof t[s]){if((o=t[s]).keys)for(i=r[d],a=0;a<o.keys.length;a++){if(null==i)throw new Error(n('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"',o.keys[a],o.keys[a-1]));i=i[o.keys[a]]}else i=o.param_no?r[o.param_no]:r[d++];if(e.not_type.test(o.type)&&e.not_primitive.test(o.type)&&i instanceof Function&&(i=i()),e.numeric_arg.test(o.type)&&\"number\"!=typeof i&&isNaN(i))throw new TypeError(n(\"[sprintf] expecting number but found %T\",i));switch(e.number.test(o.type)&&(u=i>=0),o.type){case\"b\":i=parseInt(i,10).toString(2);break;case\"c\":i=String.fromCharCode(parseInt(i,10));break;case\"d\":case\"i\":i=parseInt(i,10);break;case\"j\":i=JSON.stringify(i,null,o.width?parseInt(o.width):0);break;case\"e\":i=o.precision?parseFloat(i).toExponential(o.precision):parseFloat(i).toExponential();break;case\"f\":i=o.precision?parseFloat(i).toFixed(o.precision):parseFloat(i);break;case\"g\":i=o.precision?String(Number(i.toPrecision(o.precision))):parseFloat(i);break;case\"o\":i=(parseInt(i,10)>>>0).toString(8);break;case\"s\":i=String(i),i=o.precision?i.substring(0,o.precision):i;break;case\"t\":i=String(!!i),i=o.precision?i.substring(0,o.precision):i;break;case\"T\":i=Object.prototype.toString.call(i).slice(8,-1).toLowerCase(),i=o.precision?i.substring(0,o.precision):i;break;case\"u\":i=parseInt(i,10)>>>0;break;case\"v\":i=i.valueOf(),i=o.precision?i.substring(0,o.precision):i;break;case\"x\":i=(parseInt(i,10)>>>0).toString(16);break;case\"X\":i=(parseInt(i,10)>>>0).toString(16).toUpperCase()}e.json.test(o.type)?y+=i:(!e.number.test(o.type)||u&&!o.sign?f=\"\":(f=u?\"+\":\"-\",i=i.toString().replace(e.sign,\"\")),c=o.pad_char?\"0\"===o.pad_char?\"0\":o.pad_char.charAt(1):\" \",l=o.width-(f+i).length,p=o.width&&l>0?c.repeat(l):\"\",y+=o.align?f+i+p:\"0\"===c?f+p+i:p+f+i)}return y}var s=Object.create(null);function a(n){if(s[n])return s[n];for(var t,r=n,i=[],a=0;r;){if(null!==(t=e.text.exec(r)))i.push(t[0]);else if(null!==(t=e.modulo.exec(r)))i.push(\"%\");else{if(null===(t=e.placeholder.exec(r)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(t[2]){a|=1;var o=[],p=t[2],c=[];if(null===(c=e.key.exec(p)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o.push(c[1]);\"\"!==(p=p.substring(c[0].length));)if(null!==(c=e.key_access.exec(p)))o.push(c[1]);else{if(null===(c=e.index_access.exec(p)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o.push(c[1])}t[2]=o}else a|=2;if(3===a)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");i.push({placeholder:t[0],param_no:t[1],keys:t[2],sign:t[3],pad_char:t[4],align:t[5],width:t[6],precision:t[7],type:t[8]})}r=r.substring(t[0].length)}return s[n]=i}void 0!==t&&(t.sprintf=n,t.vsprintf=r),\"undefined\"!=typeof window&&(window.sprintf=n,window.vsprintf=r,\"function\"==typeof define&&define.amd&&define((function(){return{sprintf:n,vsprintf:r}})))}()},\n", " function _(e,i,n,t,a){t();const s=e(9),r=e(178),c=e(186),m=e(187),_=e(190),k=e(191),o=e(189);class T extends c.CompositeTicker{constructor(e){super(e)}static init_DatetimeTicker(){this.override({num_minor_ticks:0,tickers:()=>[new r.AdaptiveTicker({mantissas:[1,2,5],base:10,min_interval:0,max_interval:500*o.ONE_MILLI,num_minor_ticks:0}),new r.AdaptiveTicker({mantissas:[1,2,5,10,15,20,30],base:60,min_interval:o.ONE_SECOND,max_interval:30*o.ONE_MINUTE,num_minor_ticks:0}),new r.AdaptiveTicker({mantissas:[1,2,4,6,8,12],base:24,min_interval:o.ONE_HOUR,max_interval:12*o.ONE_HOUR,num_minor_ticks:0}),new m.DaysTicker({days:s.range(1,32)}),new m.DaysTicker({days:s.range(1,31,3)}),new m.DaysTicker({days:[1,8,15,22]}),new m.DaysTicker({days:[1,15]}),new _.MonthsTicker({months:s.range(0,12,1)}),new _.MonthsTicker({months:s.range(0,12,2)}),new _.MonthsTicker({months:s.range(0,12,4)}),new _.MonthsTicker({months:s.range(0,12,6)}),new k.YearsTicker({})]})}}n.DatetimeTicker=T,T.__name__=\"DatetimeTicker\",T.init_DatetimeTicker()},\n", " function _(t,e,i,s,r){s();const n=t(179),_=t(9);class a extends n.ContinuousTicker{constructor(t){super(t)}static init_CompositeTicker(){this.define((({Array:t,Ref:e})=>({tickers:[t(e(n.ContinuousTicker)),[]]})))}get min_intervals(){return this.tickers.map((t=>t.get_min_interval()))}get max_intervals(){return this.tickers.map((t=>t.get_max_interval()))}get_min_interval(){return this.min_intervals[0]}get_max_interval(){return this.max_intervals[0]}get_best_ticker(t,e,i){const s=e-t,r=this.get_ideal_interval(t,e,i),n=[_.sorted_index(this.min_intervals,r)-1,_.sorted_index(this.max_intervals,r)],a=[this.min_intervals[n[0]],this.max_intervals[n[1]]].map((t=>Math.abs(i-s/t)));let c;if(_.is_empty(a.filter((t=>!isNaN(t)))))c=this.tickers[0];else{const t=n[_.argmin(a)];c=this.tickers[t]}return c}get_interval(t,e,i){return this.get_best_ticker(t,e,i).get_interval(t,e,i)}get_ticks_no_defaults(t,e,i,s){return this.get_best_ticker(t,e,s).get_ticks_no_defaults(t,e,i,s)}}i.CompositeTicker=a,a.__name__=\"CompositeTicker\",a.init_CompositeTicker()},\n", " function _(t,e,n,i,s){i();const a=t(188),o=t(189),r=t(9);class c extends a.SingleIntervalTicker{constructor(t){super(t)}static init_DaysTicker(){this.define((({Int:t,Array:e})=>({days:[e(t),[]]}))),this.override({num_minor_ticks:0})}initialize(){super.initialize();const t=this.days;t.length>1?this.interval=(t[1]-t[0])*o.ONE_DAY:this.interval=31*o.ONE_DAY}get_ticks_no_defaults(t,e,n,i){const s=function(t,e){const n=o.last_month_no_later_than(new Date(t)),i=o.last_month_no_later_than(new Date(e));i.setUTCMonth(i.getUTCMonth()+1);const s=[],a=n;for(;s.push(o.copy_date(a)),a.setUTCMonth(a.getUTCMonth()+1),!(a>i););return s}(t,e),a=this.days,c=this.interval;return{major:r.concat(s.map((t=>((t,e)=>{const n=t.getUTCMonth(),i=[];for(const s of a){const a=o.copy_date(t);a.setUTCDate(s),new Date(a.getTime()+e/2).getUTCMonth()==n&&i.push(a)}return i})(t,c)))).map((t=>t.getTime())).filter((n=>t<=n&&n<=e)),minor:[]}}}n.DaysTicker=c,c.__name__=\"DaysTicker\",c.init_DaysTicker()},\n", " function _(e,t,n,i,r){i();const l=e(179);class a extends l.ContinuousTicker{constructor(e){super(e)}static init_SingleIntervalTicker(){this.define((({Number:e})=>({interval:[e]})))}get_interval(e,t,n){return this.interval}get_min_interval(){return this.interval}get_max_interval(){return this.interval}}n.SingleIntervalTicker=a,a.__name__=\"SingleIntervalTicker\",a.init_SingleIntervalTicker()},\n", " function _(t,n,e,_,E){function N(t){return new Date(t.getTime())}function O(t){const n=N(t);return n.setUTCDate(1),n.setUTCHours(0),n.setUTCMinutes(0),n.setUTCSeconds(0),n.setUTCMilliseconds(0),n}_(),e.ONE_MILLI=1,e.ONE_SECOND=1e3,e.ONE_MINUTE=60*e.ONE_SECOND,e.ONE_HOUR=60*e.ONE_MINUTE,e.ONE_DAY=24*e.ONE_HOUR,e.ONE_MONTH=30*e.ONE_DAY,e.ONE_YEAR=365*e.ONE_DAY,e.copy_date=N,e.last_month_no_later_than=O,e.last_year_no_later_than=function(t){const n=O(t);return n.setUTCMonth(0),n}},\n", " function _(t,e,n,i,s){i();const r=t(188),a=t(189),o=t(9);class c extends r.SingleIntervalTicker{constructor(t){super(t)}static init_MonthsTicker(){this.define((({Int:t,Array:e})=>({months:[e(t),[]]})))}initialize(){super.initialize();const t=this.months;t.length>1?this.interval=(t[1]-t[0])*a.ONE_MONTH:this.interval=12*a.ONE_MONTH}get_ticks_no_defaults(t,e,n,i){const s=function(t,e){const n=a.last_year_no_later_than(new Date(t)),i=a.last_year_no_later_than(new Date(e));i.setUTCFullYear(i.getUTCFullYear()+1);const s=[],r=n;for(;s.push(a.copy_date(r)),r.setUTCFullYear(r.getUTCFullYear()+1),!(r>i););return s}(t,e),r=this.months;return{major:o.concat(s.map((t=>r.map((e=>{const n=a.copy_date(t);return n.setUTCMonth(e),n}))))).map((t=>t.getTime())).filter((n=>t<=n&&n<=e)),minor:[]}}}n.MonthsTicker=c,c.__name__=\"MonthsTicker\",c.init_MonthsTicker()},\n", " function _(e,t,a,i,r){i();const n=e(177),_=e(188),s=e(189);class c extends _.SingleIntervalTicker{constructor(e){super(e)}initialize(){super.initialize(),this.interval=s.ONE_YEAR,this.basic_ticker=new n.BasicTicker({num_minor_ticks:0})}get_ticks_no_defaults(e,t,a,i){const r=s.last_year_no_later_than(new Date(e)).getUTCFullYear(),n=s.last_year_no_later_than(new Date(t)).getUTCFullYear();return{major:this.basic_ticker.get_ticks_no_defaults(r,n,a,i).major.map((e=>Date.UTC(e,0,1))).filter((a=>e<=a&&a<=t)),minor:[]}}}a.YearsTicker=c,c.__name__=\"YearsTicker\"},\n", " function _(i,s,t,e,o){e();const n=i(173),r=i(193),_=i(194);class c extends n.ContinuousAxisView{}t.LogAxisView=c,c.__name__=\"LogAxisView\";class x extends n.ContinuousAxis{constructor(i){super(i)}static init_LogAxis(){this.prototype.default_view=c,this.override({ticker:()=>new _.LogTicker,formatter:()=>new r.LogTickFormatter})}}t.LogAxis=x,x.__name__=\"LogAxis\",x.init_LogAxis()},\n", " function _(t,e,r,i,n){i();const o=t(166),a=t(176),s=t(194),c=t(167),{log:l,round:u}=Math;class _ extends o.TickFormatter{constructor(t){super(t)}static init_LogTickFormatter(){this.define((({Ref:t,Nullable:e})=>({ticker:[e(t(s.LogTicker)),null]})))}initialize(){super.initialize(),this.basic_formatter=new a.BasicTickFormatter}format_graphics(t,e){var r,i;if(0==t.length)return[];const n=null!==(i=null===(r=this.ticker)||void 0===r?void 0:r.base)&&void 0!==i?i:10,o=this._exponents(t,n);return null==o?this.basic_formatter.format_graphics(t,e):o.map((t=>{const e=new c.TextBox({text:a.unicode_replace(`${n}`)}),r=new c.TextBox({text:a.unicode_replace(`${t}`)});return new c.BaseExpo(e,r)}))}_exponents(t,e){let r=null;const i=[];for(const n of t){const t=u(l(n)/l(e));if(r==t)return null;r=t,i.push(t)}return i}doFormat(t,e){var r,i;if(0==t.length)return[];const n=null!==(i=null===(r=this.ticker)||void 0===r?void 0:r.base)&&void 0!==i?i:10,o=this._exponents(t,n);return null==o?this.basic_formatter.doFormat(t,e):o.map((t=>a.unicode_replace(`${n}^${t}`)))}}r.LogTickFormatter=_,_.__name__=\"LogTickFormatter\",_.init_LogTickFormatter()},\n", " function _(t,o,e,i,s){i();const n=t(178),r=t(9);class c extends n.AdaptiveTicker{constructor(t){super(t)}static init_LogTicker(){this.override({mantissas:[1,5]})}get_ticks_no_defaults(t,o,e,i){const s=this.num_minor_ticks,n=[],c=this.base,a=Math.log(t)/Math.log(c),f=Math.log(o)/Math.log(c),l=f-a;let h;if(isFinite(l))if(l<2){const e=this.get_interval(t,o,i),c=Math.floor(t/e),a=Math.ceil(o/e);if(h=r.range(c,a+1).filter((t=>0!=t)).map((t=>t*e)).filter((e=>t<=e&&e<=o)),s>0&&h.length>0){const t=e/s,o=r.range(0,s).map((o=>o*t));for(const t of o.slice(1))n.push(h[0]-t);for(const t of h)for(const e of o)n.push(t+e)}}else{const t=Math.ceil(.999999*a),o=Math.floor(1.000001*f),e=Math.ceil((o-t)/9);if(h=r.range(t-1,o+1,e).map((t=>c**t)),s>0&&h.length>0){const t=c**e/s,o=r.range(1,s+1).map((o=>o*t));for(const t of o)n.push(h[0]/t);n.push(h[0]);for(const t of h)for(const e of o)n.push(t*e)}}else h=[];return{major:h.filter((e=>t<=e&&e<=o)),minor:n.filter((e=>t<=e&&e<=o))}}}e.LogTicker=c,c.__name__=\"LogTicker\",c.init_LogTicker()},\n", " function _(e,t,i,r,s){r();const a=e(163),o=e(175),c=e(196),n=e(197);class _ extends a.AxisView{}i.MercatorAxisView=_,_.__name__=\"MercatorAxisView\";class x extends o.LinearAxis{constructor(e){super(e)}static init_MercatorAxis(){this.prototype.default_view=_,this.override({ticker:()=>new n.MercatorTicker({dimension:\"lat\"}),formatter:()=>new c.MercatorTickFormatter({dimension:\"lat\"})})}}i.MercatorAxis=x,x.__name__=\"MercatorAxis\",x.init_MercatorAxis()},\n", " function _(r,t,e,o,n){o();const i=r(176),c=r(20),a=r(65);class s extends i.BasicTickFormatter{constructor(r){super(r)}static init_MercatorTickFormatter(){this.define((({Nullable:r})=>({dimension:[r(c.LatLon),null]})))}doFormat(r,t){if(null==this.dimension)throw new Error(\"MercatorTickFormatter.dimension not configured\");if(0==r.length)return[];const e=r.length,o=new Array(e);if(\"lon\"==this.dimension)for(let n=0;n<e;n++){const[e]=a.wgs84_mercator.invert(r[n],t.loc);o[n]=e}else for(let n=0;n<e;n++){const[,e]=a.wgs84_mercator.invert(t.loc,r[n]);o[n]=e}return super.doFormat(o,t)}}e.MercatorTickFormatter=s,s.__name__=\"MercatorTickFormatter\",s.init_MercatorTickFormatter()},\n", " function _(t,o,n,r,s){r();const i=t(177),e=t(20),c=t(65);class _ extends i.BasicTicker{constructor(t){super(t)}static init_MercatorTicker(){this.define((({Nullable:t})=>({dimension:[t(e.LatLon),null]})))}get_ticks_no_defaults(t,o,n,r){if(null==this.dimension)throw new Error(`${this}.dimension wasn't configured`);return[t,o]=c.clip_mercator(t,o,this.dimension),\"lon\"==this.dimension?this._get_ticks_lon(t,o,n,r):this._get_ticks_lat(t,o,n,r)}_get_ticks_lon(t,o,n,r){const[s]=c.wgs84_mercator.invert(t,n),[i,e]=c.wgs84_mercator.invert(o,n),_=super.get_ticks_no_defaults(s,i,n,r),a=[];for(const t of _.major)if(c.in_bounds(t,\"lon\")){const[o]=c.wgs84_mercator.compute(t,e);a.push(o)}const m=[];for(const t of _.minor)if(c.in_bounds(t,\"lon\")){const[o]=c.wgs84_mercator.compute(t,e);m.push(o)}return{major:a,minor:m}}_get_ticks_lat(t,o,n,r){const[,s]=c.wgs84_mercator.invert(n,t),[i,e]=c.wgs84_mercator.invert(n,o),_=super.get_ticks_no_defaults(s,e,n,r),a=[];for(const t of _.major)if(c.in_bounds(t,\"lat\")){const[,o]=c.wgs84_mercator.compute(i,t);a.push(o)}const m=[];for(const t of _.minor)if(c.in_bounds(t,\"lat\")){const[,o]=c.wgs84_mercator.compute(i,t);m.push(o)}return{major:a,minor:m}}}n.MercatorTicker=_,_.__name__=\"MercatorTicker\",_.init_MercatorTicker()},\n", " function _(e,i,r,c,k){c(),k(\"AdaptiveTicker\",e(178).AdaptiveTicker),k(\"BasicTicker\",e(177).BasicTicker),k(\"CategoricalTicker\",e(171).CategoricalTicker),k(\"CompositeTicker\",e(186).CompositeTicker),k(\"ContinuousTicker\",e(179).ContinuousTicker),k(\"DatetimeTicker\",e(185).DatetimeTicker),k(\"DaysTicker\",e(187).DaysTicker),k(\"FixedTicker\",e(199).FixedTicker),k(\"LogTicker\",e(194).LogTicker),k(\"MercatorTicker\",e(197).MercatorTicker),k(\"MonthsTicker\",e(190).MonthsTicker),k(\"SingleIntervalTicker\",e(188).SingleIntervalTicker),k(\"Ticker\",e(165).Ticker),k(\"YearsTicker\",e(191).YearsTicker),k(\"BinnedTicker\",e(200).BinnedTicker)},\n", " function _(i,t,e,r,n){r();const s=i(179);class _ extends s.ContinuousTicker{constructor(i){super(i)}static init_FixedTicker(){this.define((({Number:i,Array:t})=>({ticks:[t(i),[]],minor_ticks:[t(i),[]]})))}get_ticks_no_defaults(i,t,e,r){return{major:this.ticks,minor:this.minor_ticks}}get_interval(i,t,e){return 0}get_min_interval(){return 0}get_max_interval(){return 0}}e.FixedTicker=_,_.__name__=\"FixedTicker\",_.init_FixedTicker()},\n", " function _(e,n,t,i,r){i();const c=e(165),o=e(201),s=e(12);class a extends c.Ticker{constructor(e){super(e)}static init_BinnedTicker(){this.define((({Number:e,Ref:n,Or:t,Auto:i})=>({mapper:[n(o.ScanningColorMapper)],num_major_ticks:[t(e,i),8]})))}get_ticks(e,n,t,i){const{binning:r}=this.mapper.metrics,c=Math.max(0,s.left_edge_index(e,r)),o=Math.min(s.left_edge_index(n,r)+1,r.length-1),a=[];for(let e=c;e<=o;e++)a.push(r[e]);const{num_major_ticks:_}=this,m=[],h=\"auto\"==_?a.length:_,l=Math.max(1,Math.floor(a.length/h));for(let e=0;e<a.length;e+=l)m.push(a[e]);return{major:m,minor:[]}}}t.BinnedTicker=a,a.__name__=\"BinnedTicker\",a.init_BinnedTicker()},\n", " function _(n,e,i,r,o){r();const t=n(202),a=n(12);class c extends t.ContinuousColorMapper{constructor(n){super(n)}cmap(n,e,i,r,o){if(n<o.binning[0])return i;if(n>o.binning[o.binning.length-1])return r;return e[a.left_edge_index(n,o.binning)]}}i.ScanningColorMapper=c,c.__name__=\"ScanningColorMapper\"},\n", " function _(t,o,e,n,s){n();const l=t(203),i=t(61),c=t(9),a=t(8);class r extends l.ColorMapper{constructor(t){super(t),this._scan_data=null}static init_ContinuousColorMapper(){this.define((({Number:t,String:o,Ref:e,Color:n,Or:s,Tuple:l,Array:c,Nullable:a})=>({high:[a(t),null],low:[a(t),null],high_color:[a(n),null],low_color:[a(n),null],domain:[c(l(e(i.GlyphRenderer),s(o,c(o)))),[]]})))}connect_signals(){super.connect_signals();const t=()=>{for(const[t]of this.domain)this.connect(t.view.change,(()=>this.update_data())),this.connect(t.data_source.selected.change,(()=>this.update_data()))};this.connect(this.properties.domain.change,(()=>t())),t()}update_data(){const{domain:t,palette:o}=this,e=[...this._collect(t)];this._scan_data=this.scan(e,o.length),this.metrics_change.emit(),this.change.emit()}get metrics(){return null==this._scan_data&&this.update_data(),this._scan_data}*_collect(t){for(const[o,e]of t)for(const t of a.isArray(e)?e:[e]){let e=o.data_source.get_column(t);e=o.view.indices.select(e);const n=o.view.masked,s=o.data_source.selected.indices;let l;if(null!=n&&s.length>0?l=c.intersection([...n],s):null!=n?l=[...n]:s.length>0&&(l=s),null!=l&&(e=c.map(l,(t=>e[t]))),e.length>0&&!a.isNumber(e[0]))for(const t of e)yield*t;else yield*e}}_v_compute(t,o,e,n){const{nan_color:s}=n;let{low_color:l,high_color:i}=n;null==l&&(l=e[0]),null==i&&(i=e[e.length-1]);const{domain:a}=this,r=c.is_empty(a)?t:[...this._collect(a)];this._scan_data=this.scan(r,e.length),this.metrics_change.emit();for(let n=0,c=t.length;n<c;n++){const c=t[n];isNaN(c)?o[n]=s:o[n]=this.cmap(c,e,l,i,this._scan_data)}}_colors(t){return Object.assign(Object.assign({},super._colors(t)),{low_color:null!=this.low_color?t(this.low_color):void 0,high_color:null!=this.high_color?t(this.high_color):void 0})}}e.ContinuousColorMapper=r,r.__name__=\"ContinuousColorMapper\",r.init_ContinuousColorMapper()},\n", " function _(t,r,e,n,o){n();const i=t(204),a=t(15),c=t(24),_=t(22),l=t(27);function s(t){return _.encode_rgba(_.color2rgba(t))}function p(t){const r=new Uint32Array(t.length);for(let e=0,n=t.length;e<n;e++)r[e]=s(t[e]);return r}e._convert_color=s,e._convert_palette=p;class u extends i.Mapper{constructor(t){super(t)}initialize(){super.initialize(),this.metrics_change=new a.Signal0(this,\"metrics_change\")}static init_ColorMapper(){this.define((({Color:t,Array:r})=>({palette:[r(t)],nan_color:[t,\"gray\"]})))}v_compute(t){const r=new Array(t.length);return this._v_compute(t,r,this.palette,this._colors((t=>t))),r}get rgba_mapper(){const t=this,r=p(this.palette),e=this._colors(s);return{v_compute(n){const o=new c.ColorArray(n.length);return t._v_compute(n,o,r,e),new Uint8ClampedArray(l.to_big_endian(o).buffer)}}}_colors(t){return{nan_color:t(this.nan_color)}}}e.ColorMapper=u,u.__name__=\"ColorMapper\",u.init_ColorMapper()},\n", " function _(r,e,n,s,o){s();const p=r(149);class t extends p.Transform{constructor(r){super(r)}compute(r){throw new Error(\"mapping single values is not supported\")}}n.Mapper=t,t.__name__=\"Mapper\"},\n", " function _(t,r,a,e,c){e(),c(\"BasicTickFormatter\",t(176).BasicTickFormatter),c(\"CategoricalTickFormatter\",t(172).CategoricalTickFormatter),c(\"DatetimeTickFormatter\",t(180).DatetimeTickFormatter),c(\"FuncTickFormatter\",t(206).FuncTickFormatter),c(\"LogTickFormatter\",t(193).LogTickFormatter),c(\"MercatorTickFormatter\",t(196).MercatorTickFormatter),c(\"NumeralTickFormatter\",t(207).NumeralTickFormatter),c(\"PrintfTickFormatter\",t(208).PrintfTickFormatter),c(\"TickFormatter\",t(166).TickFormatter)},\n", " function _(t,n,e,s,i){s();const r=t(166),c=t(13),a=t(34);class u extends r.TickFormatter{constructor(t){super(t)}static init_FuncTickFormatter(){this.define((({Unknown:t,String:n,Dict:e})=>({args:[e(t),{}],code:[n,\"\"]})))}get names(){return c.keys(this.args)}get values(){return c.values(this.args)}_make_func(){const t=a.use_strict(this.code);return new Function(\"tick\",\"index\",\"ticks\",...this.names,t)}doFormat(t,n){const e=this._make_func().bind({});return t.map(((t,n,s)=>`${e(t,n,s,...this.values)}`))}}e.FuncTickFormatter=u,u.__name__=\"FuncTickFormatter\",u.init_FuncTickFormatter()},\n", " function _(r,t,n,e,a){e();const o=r(1).__importStar(r(183)),i=r(166),u=r(20);class c extends i.TickFormatter{constructor(r){super(r)}static init_NumeralTickFormatter(){this.define((({String:r})=>({format:[r,\"0,0\"],language:[r,\"en\"],rounding:[u.RoundingFunction,\"round\"]})))}get _rounding_fn(){switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}}doFormat(r,t){const{format:n,language:e,_rounding_fn:a}=this;return r.map((r=>o.format(r,n,e,a)))}}n.NumeralTickFormatter=c,c.__name__=\"NumeralTickFormatter\",c.init_NumeralTickFormatter()},\n", " function _(t,r,i,n,o){n();const a=t(166),e=t(182);class c extends a.TickFormatter{constructor(t){super(t)}static init_PrintfTickFormatter(){this.define((({String:t})=>({format:[t,\"%s\"]})))}doFormat(t,r){return t.map((t=>e.sprintf(this.format,t)))}}i.PrintfTickFormatter=c,c.__name__=\"PrintfTickFormatter\",c.init_PrintfTickFormatter()},\n", " function _(r,o,a,p,e){p(),e(\"CategoricalColorMapper\",r(210).CategoricalColorMapper),e(\"CategoricalMarkerMapper\",r(212).CategoricalMarkerMapper),e(\"CategoricalPatternMapper\",r(213).CategoricalPatternMapper),e(\"ContinuousColorMapper\",r(202).ContinuousColorMapper),e(\"ColorMapper\",r(203).ColorMapper),e(\"LinearColorMapper\",r(214).LinearColorMapper),e(\"LogColorMapper\",r(215).LogColorMapper),e(\"ScanningColorMapper\",r(201).ScanningColorMapper),e(\"EqHistColorMapper\",r(216).EqHistColorMapper)},\n", " function _(t,o,a,r,e){r();const c=t(211),l=t(203),i=t(104);class s extends l.ColorMapper{constructor(t){super(t)}static init_CategoricalColorMapper(){this.define((({Number:t,Nullable:o})=>({factors:[i.FactorSeq],start:[t,0],end:[o(t),null]})))}_v_compute(t,o,a,{nan_color:r}){c.cat_v_compute(t,this.factors,a,o,this.start,this.end,r)}}a.CategoricalColorMapper=s,s.__name__=\"CategoricalColorMapper\",s.init_CategoricalColorMapper()},\n", " function _(n,t,e,l,i){l();const c=n(12),u=n(8);function f(n,t){if(n.length!=t.length)return!1;for(let e=0,l=n.length;e<l;e++)if(n[e]!==t[e])return!1;return!0}e._cat_equals=f,e.cat_v_compute=function(n,t,e,l,i,o,r){const _=n.length;for(let g=0;g<_;g++){let _,s,h=n[g];u.isString(h)?_=c.index_of(t,h):(null!=i?h=null!=o?h.slice(i,o):h.slice(i):null!=o&&(h=h.slice(0,o)),_=1==h.length?c.index_of(t,h[0]):c.find_index(t,(n=>f(n,h)))),s=_<0||_>=e.length?r:e[_],l[g]=s}}},\n", " function _(r,e,a,t,s){t();const c=r(211),i=r(104),l=r(204),n=r(20);class p extends l.Mapper{constructor(r){super(r)}static init_CategoricalMarkerMapper(){this.define((({Number:r,Array:e,Nullable:a})=>({factors:[i.FactorSeq],markers:[e(n.MarkerType)],start:[r,0],end:[a(r),null],default_value:[n.MarkerType,\"circle\"]})))}v_compute(r){const e=new Array(r.length);return c.cat_v_compute(r,this.factors,this.markers,e,this.start,this.end,this.default_value),e}}a.CategoricalMarkerMapper=p,p.__name__=\"CategoricalMarkerMapper\",p.init_CategoricalMarkerMapper()},\n", " function _(t,a,e,r,n){r();const s=t(211),c=t(104),i=t(204),p=t(20);class l extends i.Mapper{constructor(t){super(t)}static init_CategoricalPatternMapper(){this.define((({Number:t,Array:a,Nullable:e})=>({factors:[c.FactorSeq],patterns:[a(p.HatchPatternType)],start:[t,0],end:[e(t),null],default_value:[p.HatchPatternType,\" \"]})))}v_compute(t){const a=new Array(t.length);return s.cat_v_compute(t,this.factors,this.patterns,a,this.start,this.end,this.default_value),a}}e.CategoricalPatternMapper=l,l.__name__=\"CategoricalPatternMapper\",l.init_CategoricalPatternMapper()},\n", " function _(n,r,o,t,a){t();const e=n(202),i=n(12);class s extends e.ContinuousColorMapper{constructor(n){super(n)}scan(n,r){const o=null!=this.low?this.low:i.min(n),t=null!=this.high?this.high:i.max(n);return{max:t,min:o,norm_factor:1/(t-o),normed_interval:1/r}}cmap(n,r,o,t,a){const e=r.length-1;if(n==a.max)return r[e];const i=(n-a.min)*a.norm_factor,s=Math.floor(i/a.normed_interval);return s<0?o:s>e?t:r[s]}}o.LinearColorMapper=s,s.__name__=\"LinearColorMapper\"},\n", " function _(o,t,n,r,l){r();const a=o(202),s=o(12);class e extends a.ContinuousColorMapper{constructor(o){super(o)}scan(o,t){const n=null!=this.low?this.low:s.min(o),r=null!=this.high?this.high:s.max(o);return{max:r,min:n,scale:t/(Math.log(r)-Math.log(n))}}cmap(o,t,n,r,l){const a=t.length-1;if(o>l.max)return r;if(o==l.max)return t[a];if(o<l.min)return n;const s=Math.log(o)-Math.log(l.min);let e=Math.floor(s*l.scale);return e>a&&(e=a),t[e]}}n.LogColorMapper=e,e.__name__=\"LogColorMapper\"},\n", " function _(n,t,i,e,o){e();const s=n(201),r=n(12),a=n(9),l=n(19);class c extends s.ScanningColorMapper{constructor(n){super(n)}static init_EqHistColorMapper(){this.define((({Int:n})=>({bins:[n,65536]})))}scan(n,t){const i=null!=this.low?this.low:r.min(n),e=null!=this.high?this.high:r.max(n),o=this.bins,s=a.linspace(i,e,o+1),c=r.bin_counts(n,s),h=new Array(o);for(let n=0,t=s.length;n<t-1;n++){const t=s[n],i=s[n+1];h[n]=(t+i)/2}const p=a.cumsum(c),g=p[p.length-1],u=r.map(p,(n=>n/g));let m=t-1,M=[],_=0,f=2*t;for(;m!=t&&_<4&&0!=m;){const n=f/m;if(n>1e3)break;f=Math.round(Math.max(t*n,t));const i=a.range(0,f),e=r.map(u,(n=>n*(f-1)));M=r.interpolate(i,e,h);m=a.uniq(M).length-1,_++}if(0==m){M=[i,e];for(let n=0;n<t-1;n++)M.push(e)}else M=M.slice(M.length-t-1),m!=t&&l.logger.warn(\"EqHistColorMapper warning: Histogram equalization did not converge.\");return M[0]=i,M[M.length-1]=e,{min:i,max:e,binning:M}}}i.EqHistColorMapper=c,c.__name__=\"EqHistColorMapper\",c.init_EqHistColorMapper()},\n", " function _(a,e,l,c,n){c(),n(\"CategoricalScale\",a(145).CategoricalScale),n(\"ContinuousScale\",a(158).ContinuousScale),n(\"LinearScale\",a(218).LinearScale),n(\"LinearInterpolationScale\",a(219).LinearInterpolationScale),n(\"LogScale\",a(157).LogScale),n(\"Scale\",a(146).Scale)},\n", " function _(e,t,n,r,_){r();const i=e(158);class u extends i.ContinuousScale{constructor(e){super(e)}get s_compute(){const[e,t]=this._linear_compute_state();return n=>e*n+t}compute(e){return this._linear_compute(e)}v_compute(e){return this._linear_v_compute(e)}invert(e){return this._linear_invert(e)}v_invert(e){return this._linear_v_invert(e)}}n.LinearScale=u,u.__name__=\"LinearScale\"},\n", " function _(n,t,e,r,i){r();const a=n(146),o=n(12);class c extends a.Scale{constructor(n){super(n)}static init_LinearInterpolationScale(){this.internal((({Arrayable:n})=>({binning:[n]})))}get s_compute(){throw new Error(\"not implemented\")}compute(n){return n}v_compute(n){const{binning:t}=this,{start:e,end:r}=this.source_range,i=e,a=r,c=t.length,l=(r-e)/(c-1),s=new Float64Array(c);for(let n=0;n<c;n++)s[n]=e+n*l;const u=o.map(n,(n=>{if(n<i)return i;if(n>a)return a;const e=o.left_edge_index(n,t);if(-1==e)return i;if(e>=c-1)return a;const r=t[e],l=(n-r)/(t[e+1]-r),u=s[e];return u+l*(s[e+1]-u)}));return this._linear_v_compute(u)}invert(n){return n}v_invert(n){return new Float64Array(n)}}e.LinearInterpolationScale=c,c.__name__=\"LinearInterpolationScale\",c.init_LinearInterpolationScale()},\n", " function _(a,n,e,g,R){g(),R(\"DataRange\",a(160).DataRange),R(\"DataRange1d\",a(159).DataRange1d),R(\"FactorRange\",a(104).FactorRange),R(\"Range\",a(105).Range),R(\"Range1d\",a(156).Range1d)},\n", " function _(a,o,i,t,e){t();var n=a(141);e(\"Sizeable\",n.Sizeable),e(\"SizingPolicy\",n.SizingPolicy);var c=a(142);e(\"Layoutable\",c.Layoutable),e(\"LayoutItem\",c.LayoutItem);var r=a(222);e(\"HStack\",r.HStack),e(\"VStack\",r.VStack);var l=a(223);e(\"Grid\",l.Grid),e(\"Row\",l.Row),e(\"Column\",l.Column);var S=a(224);e(\"ContentBox\",S.ContentBox),e(\"VariadicBox\",S.VariadicBox)},\n", " function _(t,e,h,i,r){i();const n=t(142),o=t(99);class s extends n.Layoutable{constructor(){super(...arguments),this.children=[]}*[Symbol.iterator](){yield*this.children}}h.Stack=s,s.__name__=\"Stack\";class c extends s{_measure(t){let e=0,h=0;for(const t of this.children){const i=t.measure({width:0,height:0});e+=i.width,h=Math.max(h,i.height)}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);const h=this.absolute?t.top:0;let i=this.absolute?t.left:0;const{height:r}=t;for(const t of this.children){const{width:e}=t.measure({width:0,height:0});t.set_geometry(new o.BBox({left:i,width:e,top:h,height:r})),i+=e}}}h.HStack=c,c.__name__=\"HStack\";class a extends s{_measure(t){let e=0,h=0;for(const t of this.children){const i=t.measure({width:0,height:0});e=Math.max(e,i.width),h+=i.height}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);const h=this.absolute?t.left:0;let i=this.absolute?t.top:0;const{width:r}=t;for(const t of this.children){const{height:e}=t.measure({width:0,height:0});t.set_geometry(new o.BBox({top:i,height:e,left:h,width:r})),i+=e}}}h.VStack=a,a.__name__=\"VStack\";class l extends n.Layoutable{constructor(){super(...arguments),this.children=[]}*[Symbol.iterator](){yield*this.children}_measure(t){const{width_policy:e,height_policy:h}=this.sizing,{min:i,max:r}=Math;let n=0,o=0;for(const e of this.children){const{width:h,height:i}=e.measure(t);n=r(n,h),o=r(o,i)}return{width:(()=>{const{width:h}=this.sizing;if(t.width==1/0)return\"fixed\"==e&&null!=h?h:n;switch(e){case\"fixed\":return null!=h?h:n;case\"min\":return n;case\"fit\":return null!=h?i(t.width,h):t.width;case\"max\":return null!=h?r(t.width,h):t.width}})(),height:(()=>{const{height:e}=this.sizing;if(t.height==1/0)return\"fixed\"==h&&null!=e?e:o;switch(h){case\"fixed\":return null!=e?e:o;case\"min\":return o;case\"fit\":return null!=e?i(t.height,e):t.height;case\"max\":return null!=e?r(t.height,e):t.height}})()}}_set_geometry(t,e){super._set_geometry(t,e);const h=this.absolute?t:t.relative(),{left:i,right:r,top:n,bottom:s}=h,c=Math.round(h.vcenter),a=Math.round(h.hcenter);for(const e of this.children){const{margin:h,halign:l,valign:d}=e.sizing,{width:u,height:g,inner:_}=e.measure(t),w=(()=>{switch(`${d}_${l}`){case\"start_start\":return new o.BBox({left:i+h.left,top:n+h.top,width:u,height:g});case\"start_center\":return new o.BBox({hcenter:a,top:n+h.top,width:u,height:g});case\"start_end\":return new o.BBox({right:r-h.right,top:n+h.top,width:u,height:g});case\"center_start\":return new o.BBox({left:i+h.left,vcenter:c,width:u,height:g});case\"center_center\":return new o.BBox({hcenter:a,vcenter:c,width:u,height:g});case\"center_end\":return new o.BBox({right:r-h.right,vcenter:c,width:u,height:g});case\"end_start\":return new o.BBox({left:i+h.left,bottom:s-h.bottom,width:u,height:g});case\"end_center\":return new o.BBox({hcenter:a,bottom:s-h.bottom,width:u,height:g});case\"end_end\":return new o.BBox({right:r-h.right,bottom:s-h.bottom,width:u,height:g})}})(),m=null==_?w:new o.BBox({left:w.left+_.left,top:w.top+_.top,right:w.right-_.right,bottom:w.bottom-_.bottom});e.set_geometry(w,m)}}}h.NodeLayout=l,l.__name__=\"NodeLayout\"},\n", " function _(t,i,s,e,o){e();const n=t(141),l=t(142),r=t(8),h=t(99),c=t(9),{max:a,round:g}=Math;class p{constructor(t){this.def=t,this._map=new Map}get(t){let i=this._map.get(t);return void 0===i&&(i=this.def(),this._map.set(t,i)),i}apply(t,i){const s=this.get(t);this._map.set(t,i(s))}}p.__name__=\"DefaultMap\";class f{constructor(){this._items=[],this._nrows=0,this._ncols=0}get nrows(){return this._nrows}get ncols(){return this._ncols}add(t,i){const{r1:s,c1:e}=t;this._nrows=a(this._nrows,s+1),this._ncols=a(this._ncols,e+1),this._items.push({span:t,data:i})}at(t,i){return this._items.filter((({span:s})=>s.r0<=t&&t<=s.r1&&s.c0<=i&&i<=s.c1)).map((({data:t})=>t))}row(t){return this._items.filter((({span:i})=>i.r0<=t&&t<=i.r1)).map((({data:t})=>t))}col(t){return this._items.filter((({span:i})=>i.c0<=t&&t<=i.c1)).map((({data:t})=>t))}foreach(t){for(const{span:i,data:s}of this._items)t(i,s)}map(t){const i=new f;for(const{span:s,data:e}of this._items)i.add(s,t(s,e));return i}}f.__name__=\"Container\";class _ extends l.Layoutable{constructor(t=[]){super(),this.items=t,this.rows=\"auto\",this.cols=\"auto\",this.spacing=0}*[Symbol.iterator](){for(const{layout:t}of this.items)yield t}is_width_expanding(){if(super.is_width_expanding())return!0;if(\"fixed\"==this.sizing.width_policy)return!1;const{cols:t}=this._state;return c.some(t,(t=>\"max\"==t.policy))}is_height_expanding(){if(super.is_height_expanding())return!0;if(\"fixed\"==this.sizing.height_policy)return!1;const{rows:t}=this._state;return c.some(t,(t=>\"max\"==t.policy))}_init(){var t,i,s,e;super._init();const o=new f;for(const{layout:t,row:i,col:s,row_span:e,col_span:n}of this.items)if(t.sizing.visible){const l=i,r=s,h=i+(null!=e?e:1)-1,c=s+(null!=n?n:1)-1;o.add({r0:l,c0:r,r1:h,c1:c},t)}const{nrows:n,ncols:l}=o,h=new Array(n);for(let s=0;s<n;s++){const e=(()=>{var t;const i=r.isPlainObject(this.rows)?null!==(t=this.rows[s])&&void 0!==t?t:this.rows[\"*\"]:this.rows;return null==i?{policy:\"auto\"}:r.isNumber(i)?{policy:\"fixed\",height:i}:r.isString(i)?{policy:i}:i})(),n=null!==(t=e.align)&&void 0!==t?t:\"auto\";if(\"fixed\"==e.policy)h[s]={policy:\"fixed\",height:e.height,align:n};else if(\"min\"==e.policy)h[s]={policy:\"min\",align:n};else if(\"fit\"==e.policy||\"max\"==e.policy)h[s]={policy:e.policy,flex:null!==(i=e.flex)&&void 0!==i?i:1,align:n};else{if(\"auto\"!=e.policy)throw new Error(\"unrechable\");c.some(o.row(s),(t=>t.is_height_expanding()))?h[s]={policy:\"max\",flex:1,align:n}:h[s]={policy:\"min\",align:n}}}const a=new Array(l);for(let t=0;t<l;t++){const i=(()=>{var i;const s=r.isPlainObject(this.cols)?null!==(i=this.cols[t])&&void 0!==i?i:this.cols[\"*\"]:this.cols;return null==s?{policy:\"auto\"}:r.isNumber(s)?{policy:\"fixed\",width:s}:r.isString(s)?{policy:s}:s})(),n=null!==(s=i.align)&&void 0!==s?s:\"auto\";if(\"fixed\"==i.policy)a[t]={policy:\"fixed\",width:i.width,align:n};else if(\"min\"==i.policy)a[t]={policy:\"min\",align:n};else if(\"fit\"==i.policy||\"max\"==i.policy)a[t]={policy:i.policy,flex:null!==(e=i.flex)&&void 0!==e?e:1,align:n};else{if(\"auto\"!=i.policy)throw new Error(\"unrechable\");c.some(o.col(t),(t=>t.is_width_expanding()))?a[t]={policy:\"max\",flex:1,align:n}:a[t]={policy:\"min\",align:n}}}const[g,p]=r.isNumber(this.spacing)?[this.spacing,this.spacing]:this.spacing;this._state={items:o,nrows:n,ncols:l,rows:h,cols:a,rspacing:g,cspacing:p}}_measure_totals(t,i){const{nrows:s,ncols:e,rspacing:o,cspacing:n}=this._state;return{height:c.sum(t)+(s-1)*o,width:c.sum(i)+(e-1)*n}}_measure_cells(t){const{items:i,nrows:s,ncols:e,rows:o,cols:l,rspacing:r,cspacing:h}=this._state,c=new Array(s);for(let t=0;t<s;t++){const i=o[t];c[t]=\"fixed\"==i.policy?i.height:0}const p=new Array(e);for(let t=0;t<e;t++){const i=l[t];p[t]=\"fixed\"==i.policy?i.width:0}const _=new f;i.foreach(((i,s)=>{const{r0:e,c0:f,r1:d,c1:u}=i,w=(d-e)*r,m=(u-f)*h;let y=0;for(let i=e;i<=d;i++)y+=t(i,f).height;y+=w;let x=0;for(let i=f;i<=u;i++)x+=t(e,i).width;x+=m;const b=s.measure({width:x,height:y});_.add(i,{layout:s,size_hint:b});const z=new n.Sizeable(b).grow_by(s.sizing.margin);z.height-=w,z.width-=m;const v=[];for(let t=e;t<=d;t++){const i=o[t];\"fixed\"==i.policy?z.height-=i.height:v.push(t)}if(z.height>0){const t=g(z.height/v.length);for(const i of v)c[i]=a(c[i],t)}const j=[];for(let t=f;t<=u;t++){const i=l[t];\"fixed\"==i.policy?z.width-=i.width:j.push(t)}if(z.width>0){const t=g(z.width/j.length);for(const i of j)p[i]=a(p[i],t)}}));return{size:this._measure_totals(c,p),row_heights:c,col_widths:p,size_hints:_}}_measure_grid(t){const{nrows:i,ncols:s,rows:e,cols:o,rspacing:n,cspacing:l}=this._state,r=this._measure_cells(((t,i)=>{const s=e[t],n=o[i];return{width:\"fixed\"==n.policy?n.width:1/0,height:\"fixed\"==s.policy?s.height:1/0}}));let h;h=\"fixed\"==this.sizing.height_policy&&null!=this.sizing.height?this.sizing.height:t.height!=1/0&&this.is_height_expanding()?t.height:r.size.height;let c,p=0;for(let t=0;t<i;t++){const i=e[t];\"fit\"==i.policy||\"max\"==i.policy?p+=i.flex:h-=r.row_heights[t]}if(h-=(i-1)*n,0!=p&&h>0)for(let t=0;t<i;t++){const i=e[t];if(\"fit\"==i.policy||\"max\"==i.policy){const s=g(h*(i.flex/p));h-=s,r.row_heights[t]=s,p-=i.flex}}else if(h<0){let t=0;for(let s=0;s<i;s++){\"fixed\"!=e[s].policy&&t++}let s=-h;for(let o=0;o<i;o++){if(\"fixed\"!=e[o].policy){const i=r.row_heights[o],e=g(s/t);r.row_heights[o]=a(i-e,0),s-=e>i?i:e,t--}}}c=\"fixed\"==this.sizing.width_policy&&null!=this.sizing.width?this.sizing.width:t.width!=1/0&&this.is_width_expanding()?t.width:r.size.width;let f=0;for(let t=0;t<s;t++){const i=o[t];\"fit\"==i.policy||\"max\"==i.policy?f+=i.flex:c-=r.col_widths[t]}if(c-=(s-1)*l,0!=f&&c>0)for(let t=0;t<s;t++){const i=o[t];if(\"fit\"==i.policy||\"max\"==i.policy){const s=g(c*(i.flex/f));c-=s,r.col_widths[t]=s,f-=i.flex}}else if(c<0){let t=0;for(let i=0;i<s;i++){\"fixed\"!=o[i].policy&&t++}let i=-c;for(let e=0;e<s;e++){if(\"fixed\"!=o[e].policy){const s=r.col_widths[e],o=g(i/t);r.col_widths[e]=a(s-o,0),i-=o>s?s:o,t--}}}const{row_heights:_,col_widths:d,size_hints:u}=this._measure_cells(((t,i)=>({width:r.col_widths[i],height:r.row_heights[t]})));return{size:this._measure_totals(_,d),row_heights:_,col_widths:d,size_hints:u}}_measure(t){const{size:i}=this._measure_grid(t);return i}_set_geometry(t,i){super._set_geometry(t,i);const{nrows:s,ncols:e,rspacing:o,cspacing:n}=this._state,{row_heights:l,col_widths:r,size_hints:c}=this._measure_grid(t),f=this._state.rows.map(((t,i)=>Object.assign(Object.assign({},t),{top:0,height:l[i],get bottom(){return this.top+this.height}}))),_=this._state.cols.map(((t,i)=>Object.assign(Object.assign({},t),{left:0,width:r[i],get right(){return this.left+this.width}}))),d=c.map(((t,i)=>Object.assign(Object.assign({},i),{outer:new h.BBox,inner:new h.BBox})));for(let i=0,e=this.absolute?t.top:0;i<s;i++){const t=f[i];t.top=e,e+=t.height+o}for(let i=0,s=this.absolute?t.left:0;i<e;i++){const t=_[i];t.left=s,s+=t.width+n}d.foreach((({r0:t,c0:i,r1:s,c1:e},l)=>{const{layout:r,size_hint:c}=l,{sizing:a}=r,{width:p,height:d}=c,u=function(t,i){let s=(i-t)*n;for(let e=t;e<=i;e++)s+=_[e].width;return s}(i,e),w=function(t,i){let s=(i-t)*o;for(let e=t;e<=i;e++)s+=f[e].height;return s}(t,s),m=i==e&&\"auto\"!=_[i].align?_[i].align:a.halign,y=t==s&&\"auto\"!=f[t].align?f[t].align:a.valign;let x=_[i].left;\"start\"==m?x+=a.margin.left:\"center\"==m?x+=g((u-p)/2):\"end\"==m&&(x+=u-a.margin.right-p);let b=f[t].top;\"start\"==y?b+=a.margin.top:\"center\"==y?b+=g((w-d)/2):\"end\"==y&&(b+=w-a.margin.bottom-d),l.outer=new h.BBox({left:x,top:b,width:p,height:d})}));const u=f.map((()=>({start:new p((()=>0)),end:new p((()=>0))}))),w=_.map((()=>({start:new p((()=>0)),end:new p((()=>0))})));d.foreach((({r0:t,c0:i,r1:s,c1:e},{size_hint:o,outer:n})=>{const{inner:l}=o;null!=l&&(u[t].start.apply(n.top,(t=>a(t,l.top))),u[s].end.apply(f[s].bottom-n.bottom,(t=>a(t,l.bottom))),w[i].start.apply(n.left,(t=>a(t,l.left))),w[e].end.apply(_[e].right-n.right,(t=>a(t,l.right))))})),d.foreach((({r0:t,c0:i,r1:s,c1:e},o)=>{const{size_hint:n,outer:l}=o,r=t=>{const i=this.absolute?l:l.relative(),s=i.left+t.left,e=i.top+t.top,o=i.right-t.right,n=i.bottom-t.bottom;return new h.BBox({left:s,top:e,right:o,bottom:n})};if(null!=n.inner){let h=r(n.inner);if(!1!==n.align){const o=u[t].start.get(l.top),n=u[s].end.get(f[s].bottom-l.bottom),c=w[i].start.get(l.left),a=w[e].end.get(_[e].right-l.right);try{h=r({top:o,bottom:n,left:c,right:a})}catch(t){}}o.inner=h}else o.inner=l})),d.foreach(((t,{layout:i,outer:s,inner:e})=>{i.set_geometry(s,e)}))}}s.Grid=_,_.__name__=\"Grid\";class d extends _{constructor(t){super(),this.items=t.map(((t,i)=>({layout:t,row:0,col:i}))),this.rows=\"fit\"}}s.Row=d,d.__name__=\"Row\";class u extends _{constructor(t){super(),this.items=t.map(((t,i)=>({layout:t,row:i,col:0}))),this.cols=\"fit\"}}s.Column=u,u.__name__=\"Column\"},\n", " function _(e,t,s,n,i){n();const a=e(142),c=e(141),o=e(43);class r extends a.ContentLayoutable{constructor(e){super(),this.content_size=o.unsized(e,(()=>new c.Sizeable(o.size(e))))}_content_size(){return this.content_size}}s.ContentBox=r,r.__name__=\"ContentBox\";class _ extends a.Layoutable{constructor(e){super(),this.el=e}_measure(e){const t=new c.Sizeable(e).bounded_to(this.sizing.size);return o.sized(this.el,t,(()=>{const e=new c.Sizeable(o.content_size(this.el)),{border:t,padding:s}=o.extents(this.el);return e.grow_by(t).grow_by(s).map(Math.ceil)}))}}s.VariadicBox=_,_.__name__=\"VariadicBox\";class h extends _{constructor(e){super(e),this._cache=new Map}_measure(e){const{width:t,height:s}=e,n=`${t},${s}`;let i=this._cache.get(n);return null==i&&(i=super._measure(e),this._cache.set(n,i)),i}invalidate_cache(){this._cache.clear()}}s.CachedVariadicBox=h,h.__name__=\"CachedVariadicBox\"},\n", " function _(t,e,i,h,o){h();const s=t(141),r=t(142),n=t(99);class g extends r.Layoutable{constructor(){super(...arguments),this.min_border={left:0,top:0,right:0,bottom:0},this.padding={left:0,top:0,right:0,bottom:0}}*[Symbol.iterator](){yield this.top_panel,yield this.bottom_panel,yield this.left_panel,yield this.right_panel,yield this.center_panel}_measure(t){t=new s.Sizeable({width:\"fixed\"==this.sizing.width_policy||t.width==1/0?this.sizing.width:t.width,height:\"fixed\"==this.sizing.height_policy||t.height==1/0?this.sizing.height:t.height});const e=this.left_panel.measure({width:0,height:t.height}),i=Math.max(e.width,this.min_border.left)+this.padding.left,h=this.right_panel.measure({width:0,height:t.height}),o=Math.max(h.width,this.min_border.right)+this.padding.right,r=this.top_panel.measure({width:t.width,height:0}),n=Math.max(r.height,this.min_border.top)+this.padding.top,g=this.bottom_panel.measure({width:t.width,height:0}),a=Math.max(g.height,this.min_border.bottom)+this.padding.bottom,d=new s.Sizeable(t).shrink_by({left:i,right:o,top:n,bottom:a}),l=this.center_panel.measure(d);return{width:i+l.width+o,height:n+l.height+a,inner:{left:i,right:o,top:n,bottom:a},align:(()=>{const{width_policy:t,height_policy:e}=this.center_panel.sizing;return\"fixed\"!=t&&\"fixed\"!=e})()}}_set_geometry(t,e){super._set_geometry(t,e),this.center_panel.set_geometry(e);const i=this.left_panel.measure({width:0,height:t.height}),h=this.right_panel.measure({width:0,height:t.height}),o=this.top_panel.measure({width:t.width,height:0}),s=this.bottom_panel.measure({width:t.width,height:0}),{left:r,top:g,right:a,bottom:d}=e;this.top_panel.set_geometry(new n.BBox({left:r,right:a,bottom:g,height:o.height})),this.bottom_panel.set_geometry(new n.BBox({left:r,right:a,top:d,height:s.height})),this.left_panel.set_geometry(new n.BBox({top:g,bottom:d,right:r,width:i.width})),this.right_panel.set_geometry(new n.BBox({top:g,bottom:d,left:a,width:h.width}))}}i.BorderLayout=g,g.__name__=\"BorderLayout\"},\n", " function _(t,e,i,s,n){s();const o=t(1),l=t(139),a=t(10),_=t(143),d=t(20),h=o.__importStar(t(48));class r extends l.TextAnnotationView{_get_size(){const{ctx:t}=this.layer;this.visuals.text.set_value(t);const{width:e}=t.measureText(this.model.text),{height:i}=_.font_metrics(t.font);return{width:e,height:i}}_render(){const{angle:t,angle_units:e}=this.model,i=a.resolve_angle(t,e),s=null!=this.layout?this.layout:this.plot_view.frame,n=this.coordinates.x_scale,o=this.coordinates.y_scale;let l=\"data\"==this.model.x_units?n.compute(this.model.x):s.bbox.xview.compute(this.model.x),_=\"data\"==this.model.y_units?o.compute(this.model.y):s.bbox.yview.compute(this.model.y);l+=this.model.x_offset,_-=this.model.y_offset;(\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this))(this.layer.ctx,this.model.text,l,_,i)}}i.LabelView=r,r.__name__=\"LabelView\";class c extends l.TextAnnotation{constructor(t){super(t)}static init_Label(){this.prototype.default_view=r,this.mixins([h.Text,[\"border_\",h.Line],[\"background_\",h.Fill]]),this.define((({Number:t,String:e,Angle:i})=>({x:[t],x_units:[d.SpatialUnits,\"data\"],y:[t],y_units:[d.SpatialUnits,\"data\"],text:[e,\"\"],angle:[i,0],angle_units:[d.AngleUnits,\"rad\"],x_offset:[t,0],y_offset:[t,0]}))),this.override({background_fill_color:null,border_line_color:null})}}i.Label=c,c.__name__=\"Label\",c.init_Label()},\n", " function _(t,e,s,i,o){i();const l=t(1),n=t(139),a=t(56),r=t(130),_=l.__importStar(t(48)),c=t(20),h=t(43),d=l.__importStar(t(18)),u=t(143);class x extends n.TextAnnotationView{set_data(t){a.DataAnnotationView.prototype.set_data.call(this,t)}initialize(){if(super.initialize(),this.set_data(this.model.source),\"css\"==this.model.render_mode)for(let t=0,e=this.text.length;t<e;t++){const t=h.div({style:{display:\"none\"}});this.el.appendChild(t)}}connect_signals(){super.connect_signals();const t=()=>{this.set_data(this.model.source),\"css\"==this.model.render_mode?this.render():this.request_render()};this.connect(this.model.change,t),this.connect(this.model.source.streaming,t),this.connect(this.model.source.patching,t),this.connect(this.model.source.change,t)}_calculate_text_dimensions(t,e){const{width:s}=t.measureText(e),{height:i}=u.font_metrics(this.visuals.text.font_value(0));return[s,i]}_map_data(){const t=this.coordinates.x_scale,e=this.coordinates.y_scale,s=null!=this.layout?this.layout:this.plot_view.frame;return[\"data\"==this.model.x_units?t.v_compute(this._x):s.bbox.xview.v_compute(this._x),\"data\"==this.model.y_units?e.v_compute(this._y):s.bbox.yview.v_compute(this._y)]}_render(){const t=\"canvas\"==this.model.render_mode?this._v_canvas_text.bind(this):this._v_css_text.bind(this),{ctx:e}=this.layer,[s,i]=this._map_data();for(let o=0,l=this.text.length;o<l;o++)t(e,o,this.text.get(o),s[o]+this.x_offset.get(o),i[o]-this.y_offset.get(o),this.angle.get(o))}_get_size(){const{ctx:t}=this.layer;this.visuals.text.set_vectorize(t,0);const{width:e}=t.measureText(this.text.get(0)),{height:s}=u.font_metrics(t.font);return{width:e,height:s}}_v_canvas_text(t,e,s,i,o,l){this.visuals.text.set_vectorize(t,e);const n=this._calculate_bounding_box_dimensions(t,s);t.save(),t.beginPath(),t.translate(i,o),t.rotate(l),t.rect(n[0],n[1],n[2],n[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_vectorize(t,e),t.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_vectorize(t,e),t.stroke()),this.visuals.text.doit&&(this.visuals.text.set_vectorize(t,e),t.fillText(s,0,0)),t.restore()}_v_css_text(t,e,s,i,o,l){const n=this.el.children[e];n.textContent=s,this.visuals.text.set_vectorize(t,e);const[a,r]=this._calculate_bounding_box_dimensions(t,s);n.style.position=\"absolute\",n.style.left=`${i+a}px`,n.style.top=`${o+r}px`,n.style.color=t.fillStyle,n.style.font=t.font,n.style.lineHeight=\"normal\",l&&(n.style.transform=`rotate(${l}rad)`),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_vectorize(t,e),n.style.backgroundColor=t.fillStyle),this.visuals.border_line.doit&&(this.visuals.border_line.set_vectorize(t,e),n.style.borderStyle=t.lineDash.length<2?\"solid\":\"dashed\",n.style.borderWidth=`${t.lineWidth}px`,n.style.borderColor=t.strokeStyle),h.display(n)}}s.LabelSetView=x,x.__name__=\"LabelSetView\";class v extends n.TextAnnotation{constructor(t){super(t)}static init_LabelSet(){this.prototype.default_view=x,this.mixins([_.TextVector,[\"border_\",_.LineVector],[\"background_\",_.FillVector]]),this.define((({Ref:t})=>({x:[d.XCoordinateSpec,{field:\"x\"}],y:[d.YCoordinateSpec,{field:\"y\"}],x_units:[c.SpatialUnits,\"data\"],y_units:[c.SpatialUnits,\"data\"],text:[d.StringSpec,{field:\"text\"}],angle:[d.AngleSpec,0],x_offset:[d.NumberSpec,{value:0}],y_offset:[d.NumberSpec,{value:0}],source:[t(r.ColumnDataSource),()=>new r.ColumnDataSource]}))),this.override({background_fill_color:null,border_line_color:null})}}s.LabelSet=v,v.__name__=\"LabelSet\",v.init_LabelSet()},\n", " function _(t,e,i,s,l){s();const n=t(1),h=t(40),o=t(229),a=t(20),_=n.__importStar(t(48)),r=t(15),d=t(140),c=t(143),g=t(99),m=t(9),b=t(8),f=t(11);class u extends h.AnnotationView{update_layout(){const{panel:t}=this;this.layout=null!=t?new d.SideLayout(t,(()=>this.get_size())):void 0}cursor(t,e){return\"none\"==this.model.click_policy?null:\"pointer\"}get legend_padding(){return null!=this.model.border_line_color?this.model.padding:0}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render())),this.connect(this.model.item_change,(()=>this.request_render()))}compute_legend_bbox(){const t=this.model.get_legend_names(),{glyph_height:e,glyph_width:i}=this.model,{label_height:s,label_width:l}=this.model;this.max_label_height=m.max([c.font_metrics(this.visuals.label_text.font_value()).height,s,e]);const{ctx:n}=this.layer;n.save(),this.visuals.label_text.set_value(n),this.text_widths=new Map;for(const e of t)this.text_widths.set(e,m.max([n.measureText(e).width,l]));this.visuals.title_text.set_value(n),this.title_height=this.model.title?c.font_metrics(this.visuals.title_text.font_value()).height+this.model.title_standoff:0,this.title_width=this.model.title?n.measureText(this.model.title).width:0,n.restore();const h=Math.max(m.max([...this.text_widths.values()]),0),o=this.model.margin,{legend_padding:a}=this,_=this.model.spacing,{label_standoff:r}=this.model;let d,u;if(\"vertical\"==this.model.orientation)d=t.length*this.max_label_height+Math.max(t.length-1,0)*_+2*a+this.title_height,u=m.max([h+i+r+2*a,this.title_width+2*a]);else{let e=2*a+Math.max(t.length-1,0)*_;for(const[,t]of this.text_widths)e+=m.max([t,l])+i+r;u=m.max([this.title_width+2*a,e]),d=this.max_label_height+this.title_height+2*a}const x=null!=this.layout?this.layout:this.plot_view.frame,[p,w]=x.bbox.ranges,{location:v}=this.model;let y,k;if(b.isString(v))switch(v){case\"top_left\":y=p.start+o,k=w.start+o;break;case\"top\":case\"top_center\":y=(p.end+p.start)/2-u/2,k=w.start+o;break;case\"top_right\":y=p.end-o-u,k=w.start+o;break;case\"bottom_right\":y=p.end-o-u,k=w.end-o-d;break;case\"bottom\":case\"bottom_center\":y=(p.end+p.start)/2-u/2,k=w.end-o-d;break;case\"bottom_left\":y=p.start+o,k=w.end-o-d;break;case\"left\":case\"center_left\":y=p.start+o,k=(w.end+w.start)/2-d/2;break;case\"center\":case\"center_center\":y=(p.end+p.start)/2-u/2,k=(w.end+w.start)/2-d/2;break;case\"right\":case\"center_right\":y=p.end-o-u,k=(w.end+w.start)/2-d/2}else if(b.isArray(v)&&2==v.length){const[t,e]=v;y=x.bbox.xview.compute(t),k=x.bbox.yview.compute(e)-d}else f.unreachable();return new g.BBox({left:y,top:k,width:u,height:d})}interactive_bbox(){return this.compute_legend_bbox()}interactive_hit(t,e){return this.interactive_bbox().contains(t,e)}on_hit(t,e){let i;const{glyph_width:s}=this.model,{legend_padding:l}=this,n=this.model.spacing,{label_standoff:h}=this.model;let o=i=l;const a=this.compute_legend_bbox(),_=\"vertical\"==this.model.orientation;for(const r of this.model.items){const d=r.get_labels_list_from_label_prop();for(const c of d){const d=a.x+o,m=a.y+i+this.title_height;let b,f;[b,f]=_?[a.width-2*l,this.max_label_height]:[this.text_widths.get(c)+s+h,this.max_label_height];if(new g.BBox({left:d,top:m,width:b,height:f}).contains(t,e)){switch(this.model.click_policy){case\"hide\":for(const t of r.renderers)t.visible=!t.visible;break;case\"mute\":for(const t of r.renderers)t.muted=!t.muted}return!0}_?i+=this.max_label_height+n:o+=this.text_widths.get(c)+s+h+n}}return!1}_render(){if(0==this.model.items.length)return;for(const t of this.model.items)t.legend=this.model;const{ctx:t}=this.layer,e=this.compute_legend_bbox();t.save(),this._draw_legend_box(t,e),this._draw_legend_items(t,e),this._draw_title(t,e),t.restore()}_draw_legend_box(t,e){t.beginPath(),t.rect(e.x,e.y,e.width,e.height),this.visuals.background_fill.set_value(t),t.fill(),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.stroke())}_draw_legend_items(t,e){const{glyph_width:i,glyph_height:s}=this.model,{legend_padding:l}=this,n=this.model.spacing,{label_standoff:h}=this.model;let o=l,a=l;const _=\"vertical\"==this.model.orientation;for(const r of this.model.items){const d=r.get_labels_list_from_label_prop(),c=r.get_field_from_label_prop();if(0==d.length)continue;const g=(()=>{switch(this.model.click_policy){case\"none\":return!0;case\"hide\":return m.every(r.renderers,(t=>t.visible));case\"mute\":return m.every(r.renderers,(t=>!t.muted))}})();for(const m of d){const d=e.x+o,b=e.y+a+this.title_height,f=d+i,u=b+s;_?a+=this.max_label_height+n:o+=this.text_widths.get(m)+i+h+n,this.visuals.label_text.set_value(t),t.fillText(m,f+h,b+this.max_label_height/2);for(const e of r.renderers){const i=this.plot_view.renderer_view(e);null==i||i.draw_legend(t,d,f,b,u,c,m,r.index)}if(!g){let s,n;[s,n]=_?[e.width-2*l,this.max_label_height]:[this.text_widths.get(m)+i+h,this.max_label_height],t.beginPath(),t.rect(d,b,s,n),this.visuals.inactive_fill.set_value(t),t.fill()}}}}_draw_title(t,e){const{title:i}=this.model;i&&this.visuals.title_text.doit&&(t.save(),t.translate(e.x0,e.y0+this.title_height),this.visuals.title_text.set_value(t),t.fillText(i,this.legend_padding,this.legend_padding-this.model.title_standoff),t.restore())}_get_size(){const{width:t,height:e}=this.compute_legend_bbox();return{width:t+2*this.model.margin,height:e+2*this.model.margin}}}i.LegendView=u,u.__name__=\"LegendView\";class x extends h.Annotation{constructor(t){super(t)}initialize(){super.initialize(),this.item_change=new r.Signal0(this,\"item_change\")}static init_Legend(){this.prototype.default_view=u,this.mixins([[\"label_\",_.Text],[\"title_\",_.Text],[\"inactive_\",_.Fill],[\"border_\",_.Line],[\"background_\",_.Fill]]),this.define((({Number:t,String:e,Array:i,Tuple:s,Or:l,Ref:n,Nullable:h})=>({orientation:[a.Orientation,\"vertical\"],location:[l(a.LegendLocation,s(t,t)),\"top_right\"],title:[h(e),null],title_standoff:[t,5],label_standoff:[t,5],glyph_height:[t,20],glyph_width:[t,20],label_height:[t,20],label_width:[t,20],margin:[t,10],padding:[t,10],spacing:[t,3],items:[i(n(o.LegendItem)),[]],click_policy:[a.LegendClickPolicy,\"none\"]}))),this.override({border_line_color:\"#e5e5e5\",border_line_alpha:.5,border_line_width:1,background_fill_color:\"#ffffff\",background_fill_alpha:.95,inactive_fill_color:\"white\",inactive_fill_alpha:.7,label_text_font_size:\"13px\",label_text_baseline:\"middle\",title_text_font_size:\"13px\",title_text_font_style:\"italic\"})}get_legend_names(){const t=[];for(const e of this.items){const i=e.get_labels_list_from_label_prop();t.push(...i)}return t}}i.Legend=x,x.__name__=\"Legend\",x.init_Legend()},\n", " function _(e,r,n,l,t){l();const i=e(1),s=e(53),o=e(61),_=e(57),a=e(230),u=i.__importStar(e(18)),d=e(19),c=e(9);class f extends s.Model{constructor(e){super(e)}static init_LegendItem(){this.define((({Int:e,Array:r,Ref:n,Nullable:l})=>({label:[u.NullStringSpec,null],renderers:[r(n(o.GlyphRenderer)),[]],index:[l(e),null]})))}_check_data_sources_on_renderers(){if(null!=this.get_field_from_label_prop()){if(this.renderers.length<1)return!1;const e=this.renderers[0].data_source;if(null!=e)for(const r of this.renderers)if(r.data_source!=e)return!1}return!0}_check_field_label_on_data_source(){const e=this.get_field_from_label_prop();if(null!=e){if(this.renderers.length<1)return!1;const r=this.renderers[0].data_source;if(null!=r&&!c.includes(r.columns(),e))return!1}return!0}initialize(){super.initialize(),this.legend=null,this.connect(this.change,(()=>{var e;return null===(e=this.legend)||void 0===e?void 0:e.item_change.emit()}));this._check_data_sources_on_renderers()||d.logger.error(\"Non matching data sources on legend item renderers\");this._check_field_label_on_data_source()||d.logger.error(`Bad column name on label: ${this.label}`)}get_field_from_label_prop(){const{label:e}=this;return a.isField(e)?e.field:null}get_labels_list_from_label_prop(){if(a.isValue(this.label)){const{value:e}=this.label;return null!=e?[e]:[]}const e=this.get_field_from_label_prop();if(null!=e){let r;if(!this.renderers[0]||null==this.renderers[0].data_source)return[\"No source found\"];if(r=this.renderers[0].data_source,r instanceof _.ColumnarDataSource){const n=r.get_column(e);return null!=n?c.uniq(Array.from(n)):[\"Invalid field\"]}}return[]}}n.LegendItem=f,f.__name__=\"LegendItem\",f.init_LegendItem()},\n", " function _(i,n,e,t,u){t();const c=i(8);e.isValue=function(i){return c.isPlainObject(i)&&\"value\"in i},e.isField=function(i){return c.isPlainObject(i)&&\"field\"in i},e.isExpr=function(i){return c.isPlainObject(i)&&\"expr\"in i}},\n", " function _(t,i,s,n,e){n();const o=t(1),l=t(40),a=o.__importStar(t(48)),c=t(20);class h extends l.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render()))}_render(){const{xs:t,ys:i}=this.model;if(t.length!=i.length)return;const s=t.length;if(s<3)return;const{frame:n}=this.plot_view,{ctx:e}=this.layer,o=this.coordinates.x_scale,l=this.coordinates.y_scale,{screen:a}=this.model;function c(t,i,s,n){return a?t:\"data\"==i?s.v_compute(t):n.v_compute(t)}const h=c(t,this.model.xs_units,o,n.bbox.xview),r=c(i,this.model.ys_units,l,n.bbox.yview);e.beginPath();for(let t=0;t<s;t++)e.lineTo(h[t],r[t]);e.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(e),e.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(e),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_value(e),e.stroke())}}s.PolyAnnotationView=h,h.__name__=\"PolyAnnotationView\";class r extends l.Annotation{constructor(t){super(t)}static init_PolyAnnotation(){this.prototype.default_view=h,this.mixins([a.Line,a.Fill,a.Hatch]),this.define((({Number:t,Array:i})=>({xs:[i(t),[]],xs_units:[c.SpatialUnits,\"data\"],ys:[i(t),[]],ys_units:[c.SpatialUnits,\"data\"]}))),this.internal((({Boolean:t})=>({screen:[t,!1]}))),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}update({xs:t,ys:i}){this.setv({xs:t,ys:i,screen:!0},{check_eq:!1})}}s.PolyAnnotation=r,r.__name__=\"PolyAnnotation\",r.init_PolyAnnotation()},\n", " function _(e,t,i,n,o){n();const s=e(1),l=e(40),r=s.__importStar(e(48));class c extends l.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render()))}_render(){const{gradient:e,y_intercept:t}=this.model;if(null==e||null==t)return;const{frame:i}=this.plot_view,n=this.coordinates.x_scale,o=this.coordinates.y_scale;let s,l,r,c;if(0==e)s=o.compute(t),l=s,r=i.bbox.left,c=r+i.bbox.width;else{s=i.bbox.top,l=s+i.bbox.height;const a=(o.invert(s)-t)/e,_=(o.invert(l)-t)/e;r=n.compute(a),c=n.compute(_)}const{ctx:a}=this.layer;a.save(),a.beginPath(),this.visuals.line.set_value(a),a.moveTo(r,s),a.lineTo(c,l),a.stroke(),a.restore()}}i.SlopeView=c,c.__name__=\"SlopeView\";class a extends l.Annotation{constructor(e){super(e)}static init_Slope(){this.prototype.default_view=c,this.mixins(r.Line),this.define((({Number:e,Nullable:t})=>({gradient:[t(e),null],y_intercept:[t(e),null]}))),this.override({line_color:\"black\"})}}i.Slope=a,a.__name__=\"Slope\",a.init_Slope()},\n", " function _(e,i,t,n,o){n();const s=e(1),a=e(40),l=s.__importStar(e(48)),h=e(20);class c extends a.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.plot_view.request_paint(this)))}_render(){const{location:e}=this.model;if(null==e)return;const{frame:i}=this.plot_view,t=this.coordinates.x_scale,n=this.coordinates.y_scale,o=(i,t)=>\"data\"==this.model.location_units?i.compute(e):this.model.for_hover?e:t.compute(e);let s,a,l,h;\"width\"==this.model.dimension?(l=o(n,i.bbox.yview),a=i.bbox.left,h=i.bbox.width,s=this.model.line_width):(l=i.bbox.top,a=o(t,i.bbox.xview),h=this.model.line_width,s=i.bbox.height);const{ctx:c}=this.layer;c.save(),c.beginPath(),this.visuals.line.set_value(c),c.moveTo(a,l),\"width\"==this.model.dimension?c.lineTo(a+h,l):c.lineTo(a,l+s),c.stroke(),c.restore()}}t.SpanView=c,c.__name__=\"SpanView\";class d extends a.Annotation{constructor(e){super(e)}static init_Span(){this.prototype.default_view=c,this.mixins(l.Line),this.define((({Number:e,Nullable:i})=>({render_mode:[h.RenderMode,\"canvas\"],location:[i(e),null],location_units:[h.SpatialUnits,\"data\"],dimension:[h.Dimension,\"width\"]}))),this.internal((({Boolean:e})=>({for_hover:[e,!1]}))),this.override({line_color:\"black\"})}}t.Span=d,d.__name__=\"Span\",d.init_Span()},\n", " function _(i,e,t,o,l){o();const s=i(40),a=i(235),n=i(122),r=i(43),_=i(140),h=i(99);class b extends s.AnnotationView{constructor(){super(...arguments),this._invalidate_toolbar=!0,this._previous_bbox=new h.BBox}update_layout(){this.layout=new _.SideLayout(this.panel,(()=>this.get_size()),!0)}initialize(){super.initialize(),this.el=r.div(),this.plot_view.canvas_view.add_event(this.el)}async lazy_initialize(){await super.lazy_initialize(),this._toolbar_view=await n.build_view(this.model.toolbar,{parent:this}),this.plot_view.visibility_callbacks.push((i=>this._toolbar_view.set_visibility(i)))}remove(){this._toolbar_view.remove(),r.remove(this.el),super.remove()}render(){this.model.visible||r.undisplay(this.el),super.render()}_render(){const{bbox:i}=this.layout;this._previous_bbox.equals(i)||(r.position(this.el,i),this._previous_bbox=i),this._invalidate_toolbar&&(this.el.style.position=\"absolute\",this.el.style.overflow=\"hidden\",this._toolbar_view.render(),r.empty(this.el),this.el.appendChild(this._toolbar_view.el),this._invalidate_toolbar=!1),r.display(this.el)}_get_size(){const{tools:i,logo:e}=this.model.toolbar;return{width:30*i.length+(null!=e?25:0),height:30}}}t.ToolbarPanelView=b,b.__name__=\"ToolbarPanelView\";class d extends s.Annotation{constructor(i){super(i)}static init_ToolbarPanel(){this.prototype.default_view=b,this.define((({Ref:i})=>({toolbar:[i(a.Toolbar)]})))}}t.ToolbarPanel=d,d.__name__=\"ToolbarPanel\",d.init_ToolbarPanel()},\n", " function _(t,s,e,i,o){i();const c=t(8),n=t(9),a=t(13),l=t(236),r=t(237),_=t(247),p=t(248);e.Drag=l.Tool,e.Inspection=l.Tool,e.Scroll=l.Tool,e.Tap=l.Tool;const u=t=>{switch(t){case\"tap\":return\"active_tap\";case\"pan\":return\"active_drag\";case\"pinch\":case\"scroll\":return\"active_scroll\";case\"multi\":return\"active_multi\"}return null},h=t=>\"tap\"==t||\"pan\"==t;class v extends p.ToolbarBase{constructor(t){super(t)}static init_Toolbar(){this.prototype.default_view=p.ToolbarBaseView,this.define((({Or:t,Ref:s,Auto:i,Null:o,Nullable:c})=>({active_drag:[t(s(e.Drag),i,o),\"auto\"],active_inspect:[t(s(e.Inspection),i,o),\"auto\"],active_scroll:[t(s(e.Scroll),i,o),\"auto\"],active_tap:[t(s(e.Tap),i,o),\"auto\"],active_multi:[c(s(r.GestureTool)),null]})))}connect_signals(){super.connect_signals();const{tools:t,active_drag:s,active_inspect:e,active_scroll:i,active_tap:o,active_multi:c}=this.properties;this.on_change([t,s,e,i,o,c],(()=>this._init_tools()))}_init_tools(){if(super._init_tools(),\"auto\"==this.active_inspect);else if(this.active_inspect instanceof _.InspectTool){let t=!1;for(const s of this.inspectors)s!=this.active_inspect?s.active=!1:t=!0;t||(this.active_inspect=null)}else if(c.isArray(this.active_inspect)){const t=n.intersection(this.active_inspect,this.inspectors);t.length!=this.active_inspect.length&&(this.active_inspect=t);for(const t of this.inspectors)n.includes(this.active_inspect,t)||(t.active=!1)}else if(null==this.active_inspect)for(const t of this.inspectors)t.active=!1;const t=t=>{t.active?this._active_change(t):t.active=!0};for(const t of a.values(this.gestures)){t.tools=n.sort_by(t.tools,(t=>t.default_order));for(const s of t.tools)this.connect(s.properties.active.change,(()=>this._active_change(s)))}for(const[s,e]of a.entries(this.gestures)){const i=u(s);if(i){const o=this[i];\"auto\"==o?0!=e.tools.length&&h(s)&&t(e.tools[0]):null!=o&&(n.includes(this.tools,o)?t(o):this[i]=null)}}}}e.Toolbar=v,v.__name__=\"Toolbar\",v.init_Toolbar()},\n", " function _(t,e,n,i,o){i();const s=t(42),a=t(9),r=t(53);class l extends s.View{get plot_view(){return this.parent}get plot_model(){return this.parent.model}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,(()=>{this.model.active?this.activate():this.deactivate()}))}activate(){}deactivate(){}}n.ToolView=l,l.__name__=\"ToolView\";class _ extends r.Model{constructor(t){super(t)}static init_Tool(){this.prototype._known_aliases=new Map,this.define((({String:t,Nullable:e})=>({description:[e(t),null]}))),this.internal((({Boolean:t})=>({active:[t,!1]})))}get synthetic_renderers(){return[]}_get_dim_limits([t,e],[n,i],o,s){const r=o.bbox.h_range;let l;\"width\"==s||\"both\"==s?(l=[a.min([t,n]),a.max([t,n])],l=[a.max([l[0],r.start]),a.min([l[1],r.end])]):l=[r.start,r.end];const _=o.bbox.v_range;let c;return\"height\"==s||\"both\"==s?(c=[a.min([e,i]),a.max([e,i])],c=[a.max([c[0],_.start]),a.min([c[1],_.end])]):c=[_.start,_.end],[l,c]}static register_alias(t,e){this.prototype._known_aliases.set(t,e)}static from_string(t){const e=this.prototype._known_aliases.get(t);if(null!=e)return e();{const e=[...this.prototype._known_aliases.keys()];throw new Error(`unexpected tool name '${t}', possible tools are ${e.join(\", \")}`)}}}n.Tool=_,_.__name__=\"Tool\",_.init_Tool()},\n", " function _(e,o,t,s,n){s();const u=e(238),_=e(246);class l extends u.ButtonToolView{}t.GestureToolView=l,l.__name__=\"GestureToolView\";class i extends u.ButtonTool{constructor(e){super(e),this.button_view=_.OnOffButtonView}}t.GestureTool=i,i.__name__=\"GestureTool\"},\n", " function _(t,e,o,i,s){i();const n=t(1),l=n.__importDefault(t(239)),r=t(240),a=t(236),u=t(43),h=t(34),_=t(8),c=t(9),d=n.__importStar(t(241)),m=d,p=n.__importDefault(t(242)),g=n.__importDefault(t(243)),v=t(244);class f extends r.DOMView{initialize(){super.initialize();const t=this.model.menu;if(null!=t){const e=this.parent.model.toolbar_location,o=\"left\"==e||\"above\"==e,i=this.parent.model.horizontal?\"vertical\":\"horizontal\";this._menu=new v.ContextMenu(o?c.reversed(t):t,{orientation:i,prevent_hide:t=>t.target==this.el})}this._hammer=new l.default(this.el,{touchAction:\"auto\",inputClass:l.default.TouchMouseInput}),this.connect(this.model.change,(()=>this.render())),this._hammer.on(\"tap\",(t=>{var e;(null===(e=this._menu)||void 0===e?void 0:e.is_open)?this._menu.hide():t.target==this.el&&this._clicked()})),this._hammer.on(\"press\",(()=>this._pressed()))}remove(){var t;this._hammer.destroy(),null===(t=this._menu)||void 0===t||t.remove(),super.remove()}styles(){return[...super.styles(),d.default,p.default,g.default]}css_classes(){return super.css_classes().concat(m.toolbar_button)}render(){u.empty(this.el);const t=this.model.computed_icon;_.isString(t)&&(h.startsWith(t,\"data:image\")?this.el.style.backgroundImage=\"url('\"+t+\"')\":this.el.classList.add(t)),this.el.title=this.model.tooltip,null!=this._menu&&this.root.el.appendChild(this._menu.el)}_pressed(){var t;const{left:e,top:o,right:i,bottom:s}=this.el.getBoundingClientRect(),n=(()=>{switch(this.parent.model.toolbar_location){case\"right\":return{right:e,top:o};case\"left\":return{left:i,top:o};case\"above\":return{left:e,top:s};case\"below\":return{left:e,bottom:o}}})();null===(t=this._menu)||void 0===t||t.toggle(n)}}o.ButtonToolButtonView=f,f.__name__=\"ButtonToolButtonView\";class b extends a.ToolView{}o.ButtonToolView=b,b.__name__=\"ButtonToolView\";class B extends a.Tool{constructor(t){super(t)}static init_ButtonTool(){this.internal((({Boolean:t})=>({disabled:[t,!1]})))}_get_dim_tooltip(t){const{description:e,tool_name:o}=this;return null!=e?e:\"both\"==t?o:`${o} (${\"width\"==t?\"x\":\"y\"}-axis)`}get tooltip(){var t;return null!==(t=this.description)&&void 0!==t?t:this.tool_name}get computed_icon(){return this.icon}get menu(){return null}}o.ButtonTool=B,B.__name__=\"ButtonTool\",B.init_ButtonTool()},\n", " function _(t,e,i,n,r){\n", " /*! Hammer.JS - v2.0.7 - 2016-04-22\n", " * http://hammerjs.github.io/\n", " *\n", " * Copyright (c) 2016 Jorik Tangelder;\n", " * Licensed under the MIT license */\n", " !function(t,i,n,r){\"use strict\";var s,o=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],a=i.createElement(\"div\"),h=Math.round,u=Math.abs,c=Date.now;function l(t,e,i){return setTimeout(T(t,i),e)}function p(t,e,i){return!!Array.isArray(t)&&(f(t,i[e],i),!0)}function f(t,e,i){var n;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==r)for(n=0;n<t.length;)e.call(i,t[n],n,t),n++;else for(n in t)t.hasOwnProperty(n)&&e.call(i,t[n],n,t)}function v(e,i,n){var r=\"DEPRECATED METHOD: \"+i+\"\\n\"+n+\" AT \\n\";return function(){var i=new Error(\"get-stack-trace\"),n=i&&i.stack?i.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",s=t.console&&(t.console.warn||t.console.log);return s&&s.call(t.console,r,n),e.apply(this,arguments)}}s=\"function\"!=typeof Object.assign?function(t){if(t===r||null===t)throw new TypeError(\"Cannot convert undefined or null to object\");for(var e=Object(t),i=1;i<arguments.length;i++){var n=arguments[i];if(n!==r&&null!==n)for(var s in n)n.hasOwnProperty(s)&&(e[s]=n[s])}return e}:Object.assign;var d=v((function(t,e,i){for(var n=Object.keys(e),s=0;s<n.length;)(!i||i&&t[n[s]]===r)&&(t[n[s]]=e[n[s]]),s++;return t}),\"extend\",\"Use `assign`.\"),m=v((function(t,e){return d(t,e,!0)}),\"merge\",\"Use `assign`.\");function g(t,e,i){var n,r=e.prototype;(n=t.prototype=Object.create(r)).constructor=t,n._super=r,i&&s(n,i)}function T(t,e){return function(){return t.apply(e,arguments)}}function y(t,e){return\"function\"==typeof t?t.apply(e&&e[0]||r,e):t}function E(t,e){return t===r?e:t}function I(t,e,i){f(S(e),(function(e){t.addEventListener(e,i,!1)}))}function A(t,e,i){f(S(e),(function(e){t.removeEventListener(e,i,!1)}))}function _(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function C(t,e){return t.indexOf(e)>-1}function S(t){return t.trim().split(/\\s+/g)}function b(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var n=0;n<t.length;){if(i&&t[n][i]==e||!i&&t[n]===e)return n;n++}return-1}function P(t){return Array.prototype.slice.call(t,0)}function D(t,e,i){for(var n=[],r=[],s=0;s<t.length;){var o=e?t[s][e]:t[s];b(r,o)<0&&n.push(t[s]),r[s]=o,s++}return i&&(n=e?n.sort((function(t,i){return t[e]>i[e]})):n.sort()),n}function x(t,e){for(var i,n,s=e[0].toUpperCase()+e.slice(1),a=0;a<o.length;){if((n=(i=o[a])?i+s:e)in t)return n;a++}return r}var w=1;function O(e){var i=e.ownerDocument||e;return i.defaultView||i.parentWindow||t}var R=\"ontouchstart\"in t,M=x(t,\"PointerEvent\")!==r,z=R&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),N=\"touch\",X=\"mouse\",Y=24,F=[\"x\",\"y\"],W=[\"clientX\",\"clientY\"];function q(t,e){var i=this;this.manager=t,this.callback=e,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(e){y(t.options.enable,[t])&&i.handler(e)},this.init()}function k(t,e,i){var n=i.pointers.length,s=i.changedPointers.length,o=1&e&&n-s==0,a=12&e&&n-s==0;i.isFirst=!!o,i.isFinal=!!a,o&&(t.session={}),i.eventType=e,function(t,e){var i=t.session,n=e.pointers,s=n.length;i.firstInput||(i.firstInput=H(e));s>1&&!i.firstMultiple?i.firstMultiple=H(e):1===s&&(i.firstMultiple=!1);var o=i.firstInput,a=i.firstMultiple,h=a?a.center:o.center,l=e.center=L(n);e.timeStamp=c(),e.deltaTime=e.timeStamp-o.timeStamp,e.angle=G(h,l),e.distance=j(h,l),function(t,e){var i=e.center,n=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};1!==e.eventType&&4!==s.eventType||(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},n=t.offsetDelta={x:i.x,y:i.y});e.deltaX=r.x+(i.x-n.x),e.deltaY=r.y+(i.y-n.y)}(i,e),e.offsetDirection=V(e.deltaX,e.deltaY);var p=U(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=p.x,e.overallVelocityY=p.y,e.overallVelocity=u(p.x)>u(p.y)?p.x:p.y,e.scale=a?(f=a.pointers,v=n,j(v[0],v[1],W)/j(f[0],f[1],W)):1,e.rotation=a?function(t,e){return G(e[1],e[0],W)+G(t[1],t[0],W)}(a.pointers,n):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,function(t,e){var i,n,s,o,a=t.lastInterval||e,h=e.timeStamp-a.timeStamp;if(8!=e.eventType&&(h>25||a.velocity===r)){var c=e.deltaX-a.deltaX,l=e.deltaY-a.deltaY,p=U(h,c,l);n=p.x,s=p.y,i=u(p.x)>u(p.y)?p.x:p.y,o=V(c,l),t.lastInterval=e}else i=a.velocity,n=a.velocityX,s=a.velocityY,o=a.direction;e.velocity=i,e.velocityX=n,e.velocityY=s,e.direction=o}(i,e);var f,v;var d=t.element;_(e.srcEvent.target,d)&&(d=e.srcEvent.target);e.target=d}(t,i),t.emit(\"hammer.input\",i),t.recognize(i),t.session.prevInput=i}function H(t){for(var e=[],i=0;i<t.pointers.length;)e[i]={clientX:h(t.pointers[i].clientX),clientY:h(t.pointers[i].clientY)},i++;return{timeStamp:c(),pointers:e,center:L(e),deltaX:t.deltaX,deltaY:t.deltaY}}function L(t){var e=t.length;if(1===e)return{x:h(t[0].clientX),y:h(t[0].clientY)};for(var i=0,n=0,r=0;r<e;)i+=t[r].clientX,n+=t[r].clientY,r++;return{x:h(i/e),y:h(n/e)}}function U(t,e,i){return{x:e/t||0,y:i/t||0}}function V(t,e){return t===e?1:u(t)>=u(e)?t<0?2:4:e<0?8:16}function j(t,e,i){i||(i=F);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return Math.sqrt(n*n+r*r)}function G(t,e,i){i||(i=F);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return 180*Math.atan2(r,n)/Math.PI}q.prototype={handler:function(){},init:function(){this.evEl&&I(this.element,this.evEl,this.domHandler),this.evTarget&&I(this.target,this.evTarget,this.domHandler),this.evWin&&I(O(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&A(this.element,this.evEl,this.domHandler),this.evTarget&&A(this.target,this.evTarget,this.domHandler),this.evWin&&A(O(this.element),this.evWin,this.domHandler)}};var Z={mousedown:1,mousemove:2,mouseup:4},B=\"mousedown\",$=\"mousemove mouseup\";function J(){this.evEl=B,this.evWin=$,this.pressed=!1,q.apply(this,arguments)}g(J,q,{handler:function(t){var e=Z[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:X,srcEvent:t}))}});var K={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},Q={2:N,3:\"pen\",4:X,5:\"kinect\"},tt=\"pointerdown\",et=\"pointermove pointerup pointercancel\";function it(){this.evEl=tt,this.evWin=et,q.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(tt=\"MSPointerDown\",et=\"MSPointerMove MSPointerUp MSPointerCancel\"),g(it,q,{handler:function(t){var e=this.store,i=!1,n=t.type.toLowerCase().replace(\"ms\",\"\"),r=K[n],s=Q[t.pointerType]||t.pointerType,o=s==N,a=b(e,t.pointerId,\"pointerId\");1&r&&(0===t.button||o)?a<0&&(e.push(t),a=e.length-1):12&r&&(i=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),i&&e.splice(a,1))}});var nt={touchstart:1,touchmove:2,touchend:4,touchcancel:8},rt=\"touchstart\",st=\"touchstart touchmove touchend touchcancel\";function ot(){this.evTarget=rt,this.evWin=st,this.started=!1,q.apply(this,arguments)}function at(t,e){var i=P(t.touches),n=P(t.changedTouches);return 12&e&&(i=D(i.concat(n),\"identifier\",!0)),[i,n]}g(ot,q,{handler:function(t){var e=nt[t.type];if(1===e&&(this.started=!0),this.started){var i=at.call(this,t,e);12&e&&i[0].length-i[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:N,srcEvent:t})}}});var ht={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ut=\"touchstart touchmove touchend touchcancel\";function ct(){this.evTarget=ut,this.targetIds={},q.apply(this,arguments)}function lt(t,e){var i=P(t.touches),n=this.targetIds;if(3&e&&1===i.length)return n[i[0].identifier]=!0,[i,i];var r,s,o=P(t.changedTouches),a=[],h=this.target;if(s=i.filter((function(t){return _(t.target,h)})),1===e)for(r=0;r<s.length;)n[s[r].identifier]=!0,r++;for(r=0;r<o.length;)n[o[r].identifier]&&a.push(o[r]),12&e&&delete n[o[r].identifier],r++;return a.length?[D(s.concat(a),\"identifier\",!0),a]:void 0}g(ct,q,{handler:function(t){var e=ht[t.type],i=lt.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:N,srcEvent:t})}});function pt(){q.apply(this,arguments);var t=T(this.handler,this);this.touch=new ct(this.manager,t),this.mouse=new J(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function ft(t,e){1&t?(this.primaryTouch=e.changedPointers[0].identifier,vt.call(this,e)):12&t&&vt.call(this,e)}function vt(t){var e=t.changedPointers[0];if(e.identifier===this.primaryTouch){var i={x:e.clientX,y:e.clientY};this.lastTouches.push(i);var n=this.lastTouches;setTimeout((function(){var t=n.indexOf(i);t>-1&&n.splice(t,1)}),2500)}}function dt(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,n=0;n<this.lastTouches.length;n++){var r=this.lastTouches[n],s=Math.abs(e-r.x),o=Math.abs(i-r.y);if(s<=25&&o<=25)return!0}return!1}g(pt,q,{handler:function(t,e,i){var n=i.pointerType==N,r=i.pointerType==X;if(!(r&&i.sourceCapabilities&&i.sourceCapabilities.firesTouchEvents)){if(n)ft.call(this,e,i);else if(r&&dt.call(this,i))return;this.callback(t,e,i)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var mt=x(a.style,\"touchAction\"),gt=mt!==r,Tt=\"compute\",yt=\"auto\",Et=\"manipulation\",It=\"none\",At=\"pan-x\",_t=\"pan-y\",Ct=function(){if(!gt)return!1;var e={},i=t.CSS&&t.CSS.supports;return[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach((function(n){e[n]=!i||t.CSS.supports(\"touch-action\",n)})),e}();function St(t,e){this.manager=t,this.set(e)}St.prototype={set:function(t){t==Tt&&(t=this.compute()),gt&&this.manager.element.style&&Ct[t]&&(this.manager.element.style[mt]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return f(this.manager.recognizers,(function(e){y(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))})),function(t){if(C(t,It))return It;var e=C(t,At),i=C(t,_t);if(e&&i)return It;if(e||i)return e?At:_t;if(C(t,Et))return Et;return yt}(t.join(\" \"))},preventDefaults:function(t){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var n=this.actions,r=C(n,It)&&!Ct.none,s=C(n,_t)&&!Ct[\"pan-y\"],o=C(n,At)&&!Ct[\"pan-x\"];if(r){var a=1===t.pointers.length,h=t.distance<2,u=t.deltaTime<250;if(a&&h&&u)return}if(!o||!s)return r||s&&6&i||o&&i&Y?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var bt=32;function Pt(t){this.options=s({},this.defaults,t||{}),this.id=w++,this.manager=null,this.options.enable=E(this.options.enable,!0),this.state=1,this.simultaneous={},this.requireFail=[]}function Dt(t){return 16&t?\"cancel\":8&t?\"end\":4&t?\"move\":2&t?\"start\":\"\"}function xt(t){return 16==t?\"down\":8==t?\"up\":2==t?\"left\":4==t?\"right\":\"\"}function wt(t,e){var i=e.manager;return i?i.get(t):t}function Ot(){Pt.apply(this,arguments)}function Rt(){Ot.apply(this,arguments),this.pX=null,this.pY=null}function Mt(){Ot.apply(this,arguments)}function zt(){Pt.apply(this,arguments),this._timer=null,this._input=null}function Nt(){Ot.apply(this,arguments)}function Xt(){Ot.apply(this,arguments)}function Yt(){Pt.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Ft(t,e){return(e=e||{}).recognizers=E(e.recognizers,Ft.defaults.preset),new Wt(t,e)}Pt.prototype={defaults:{},set:function(t){return s(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(p(t,\"recognizeWith\",this))return this;var e=this.simultaneous;return e[(t=wt(t,this)).id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return p(t,\"dropRecognizeWith\",this)||(t=wt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(p(t,\"requireFailure\",this))return this;var e=this.requireFail;return-1===b(e,t=wt(t,this))&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(p(t,\"dropRequireFailure\",this))return this;t=wt(t,this);var e=b(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,i=this.state;function n(i){e.manager.emit(i,t)}i<8&&n(e.options.event+Dt(i)),n(e.options.event),t.additionalEvent&&n(t.additionalEvent),i>=8&&n(e.options.event+Dt(i))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=bt},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(33&this.requireFail[t].state))return!1;t++}return!0},recognize:function(t){var e=s({},t);if(!y(this.options.enable,[this,e]))return this.reset(),void(this.state=bt);56&this.state&&(this.state=1),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},g(Ot,Pt,{defaults:{pointers:1},attrTest:function(t){var e=this.options.pointers;return 0===e||t.pointers.length===e},process:function(t){var e=this.state,i=t.eventType,n=6&e,r=this.attrTest(t);return n&&(8&i||!r)?16|e:n||r?4&i?8|e:2&e?4|e:2:bt}}),g(Rt,Ot,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:30},getTouchAction:function(){var t=this.options.direction,e=[];return 6&t&&e.push(_t),t&Y&&e.push(At),e},directionTest:function(t){var e=this.options,i=!0,n=t.distance,r=t.direction,s=t.deltaX,o=t.deltaY;return r&e.direction||(6&e.direction?(r=0===s?1:s<0?2:4,i=s!=this.pX,n=Math.abs(t.deltaX)):(r=0===o?1:o<0?8:16,i=o!=this.pY,n=Math.abs(t.deltaY))),t.direction=r,i&&n>e.threshold&&r&e.direction},attrTest:function(t){return Ot.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=xt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),g(Mt,Ot,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[It]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){if(1!==t.scale){var e=t.scale<1?\"in\":\"out\";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),g(zt,Pt,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[yt]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,n=t.distance<e.threshold,r=t.deltaTime>e.time;if(this._input=t,!n||!i||12&t.eventType&&!r)this.reset();else if(1&t.eventType)this.reset(),this._timer=l((function(){this.state=8,this.tryEmit()}),e.time,this);else if(4&t.eventType)return 8;return bt},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=c(),this.manager.emit(this.options.event,this._input)))}}),g(Nt,Ot,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[It]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),g(Xt,Ot,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return Rt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return 30&i?e=t.overallVelocity:6&i?e=t.overallVelocityX:i&Y&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&u(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=xt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),g(Yt,Pt,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[Et]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,n=t.distance<e.threshold,r=t.deltaTime<e.time;if(this.reset(),1&t.eventType&&0===this.count)return this.failTimeout();if(n&&r&&i){if(4!=t.eventType)return this.failTimeout();var s=!this.pTime||t.timeStamp-this.pTime<e.interval,o=!this.pCenter||j(this.pCenter,t.center)<e.posThreshold;if(this.pTime=t.timeStamp,this.pCenter=t.center,o&&s?this.count+=1:this.count=1,this._input=t,0===this.count%e.taps)return this.hasRequireFailures()?(this._timer=l((function(){this.state=8,this.tryEmit()}),e.interval,this),2):8}return bt},failTimeout:function(){return this._timer=l((function(){this.state=bt}),this.options.interval,this),bt},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Ft.VERSION=\"2.0.7\",Ft.defaults={domEvents:!1,touchAction:Tt,enable:!0,inputTarget:null,inputClass:null,preset:[[Nt,{enable:!1}],[Mt,{enable:!1},[\"rotate\"]],[Xt,{direction:6}],[Rt,{direction:6},[\"swipe\"]],[Yt],[Yt,{event:\"doubletap\",taps:2},[\"tap\"]],[zt]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}};function Wt(t,e){var i;this.options=s({},Ft.defaults,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=new((i=this).options.inputClass||(M?it:z?ct:R?pt:J))(i,k),this.touchAction=new St(this,this.options.touchAction),qt(this,!0),f(this.options.recognizers,(function(t){var e=this.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])}),this)}function qt(t,e){var i,n=t.element;n.style&&(f(t.options.cssProps,(function(r,s){i=x(n.style,s),e?(t.oldCssProps[i]=n.style[i],n.style[i]=r):n.style[i]=t.oldCssProps[i]||\"\"})),e||(t.oldCssProps={}))}Wt.prototype={set:function(t){return s(this.options,t),t.touchAction&&this.touchAction.update(),t.inputTarget&&(this.input.destroy(),this.input.target=t.inputTarget,this.input.init()),this},stop:function(t){this.session.stopped=t?2:1},recognize:function(t){var e=this.session;if(!e.stopped){var i;this.touchAction.preventDefaults(t);var n=this.recognizers,r=e.curRecognizer;(!r||r&&8&r.state)&&(r=e.curRecognizer=null);for(var s=0;s<n.length;)i=n[s],2===e.stopped||r&&i!=r&&!i.canRecognizeWith(r)?i.reset():i.recognize(t),!r&&14&i.state&&(r=e.curRecognizer=i),s++}},get:function(t){if(t instanceof Pt)return t;for(var e=this.recognizers,i=0;i<e.length;i++)if(e[i].options.event==t)return e[i];return null},add:function(t){if(p(t,\"add\",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),t.manager=this,this.touchAction.update(),t},remove:function(t){if(p(t,\"remove\",this))return this;if(t=this.get(t)){var e=this.recognizers,i=b(e,t);-1!==i&&(e.splice(i,1),this.touchAction.update())}return this},on:function(t,e){if(t!==r&&e!==r){var i=this.handlers;return f(S(t),(function(t){i[t]=i[t]||[],i[t].push(e)})),this}},off:function(t,e){if(t!==r){var i=this.handlers;return f(S(t),(function(t){e?i[t]&&i[t].splice(b(i[t],e),1):delete i[t]})),this}},emit:function(t,e){this.options.domEvents&&function(t,e){var n=i.createEvent(\"Event\");n.initEvent(t,!0,!0),n.gesture=e,e.target.dispatchEvent(n)}(t,e);var n=this.handlers[t]&&this.handlers[t].slice();if(n&&n.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var r=0;r<n.length;)n[r](e),r++}},destroy:function(){this.element&&qt(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},s(Ft,{INPUT_START:1,INPUT_MOVE:2,INPUT_END:4,INPUT_CANCEL:8,STATE_POSSIBLE:1,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:bt,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:Y,DIRECTION_ALL:30,Manager:Wt,Input:q,TouchAction:St,TouchInput:ct,MouseInput:J,PointerEventInput:it,TouchMouseInput:pt,SingleTouchInput:ot,Recognizer:Pt,AttrRecognizer:Ot,Tap:Yt,Pan:Rt,Swipe:Xt,Pinch:Mt,Rotate:Nt,Press:zt,on:I,off:A,each:f,merge:m,extend:d,assign:s,inherit:g,bindFn:T,prefixed:x}),(void 0!==t?t:\"undefined\"!=typeof self?self:{}).Hammer=Ft,\"function\"==typeof define&&define.amd?define((function(){return Ft})):void 0!==e&&e.exports?e.exports=Ft:t.Hammer=Ft}(window,document)},\n", " function _(e,s,t,i,r){i();const n=e(42),a=e(43);class l extends n.View{initialize(){super.initialize(),this.el=this._createElement()}remove(){a.remove(this.el),super.remove()}css_classes(){return[]}render(){}renderTo(e){e.appendChild(this.el),this.render()}_createElement(){return a.createElement(this.tagName,{class:this.css_classes()})}}t.DOMView=l,l.__name__=\"DOMView\",l.prototype.tagName=\"div\"},\n", " function _(o,b,t,r,e){r(),t.root=\"bk-root\",t.toolbar_hidden=\"bk-toolbar-hidden\",t.toolbar=\"bk-toolbar\",t.button_bar=\"bk-button-bar\",t.logo=\"bk-logo\",t.above=\"bk-above\",t.below=\"bk-below\",t.left=\"bk-left\",t.right=\"bk-right\",t.toolbar_button=\"bk-toolbar-button\",t.active=\"bk-active\",t.default='.bk-root .bk-toolbar-hidden{visibility:hidden;opacity:0;transition:visibility 0.3s linear, opacity 0.3s linear;}.bk-root .bk-toolbar,.bk-root .bk-button-bar{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;}.bk-root .bk-toolbar .bk-logo{flex-shrink:0;-webkit-flex-shrink:0;}.bk-root .bk-toolbar.bk-above,.bk-root .bk-toolbar.bk-below{flex-direction:row;-webkit-flex-direction:row;justify-content:flex-end;-webkit-justify-content:flex-end;}.bk-root .bk-toolbar.bk-above .bk-button-bar,.bk-root .bk-toolbar.bk-below .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-toolbar.bk-above .bk-logo,.bk-root .bk-toolbar.bk-below .bk-logo{order:1;-webkit-order:1;margin-left:5px;margin-right:0px;}.bk-root .bk-toolbar.bk-left,.bk-root .bk-toolbar.bk-right{flex-direction:column;-webkit-flex-direction:column;justify-content:flex-start;-webkit-justify-content:flex-start;}.bk-root .bk-toolbar.bk-left .bk-button-bar,.bk-root .bk-toolbar.bk-right .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;}.bk-root .bk-toolbar.bk-left .bk-logo,.bk-root .bk-toolbar.bk-right .bk-logo{order:0;-webkit-order:0;margin-bottom:5px;margin-top:0px;}.bk-root .bk-toolbar-button{width:30px;height:30px;cursor:pointer;background-size:60% 60%;background-origin:border-box;background-color:transparent;background-repeat:no-repeat;background-position:center center;}.bk-root .bk-toolbar-button:hover{background-color:rgba(192, 192, 192, 0.15);}.bk-root .bk-toolbar-button:focus{outline:none;}.bk-root .bk-toolbar-button::-moz-focus-inner{border:0;}.bk-root .bk-toolbar.bk-above .bk-toolbar-button{border-bottom:2px solid transparent;}.bk-root .bk-toolbar.bk-above .bk-toolbar-button.bk-active{border-bottom-color:#26aae1;}.bk-root .bk-toolbar.bk-below .bk-toolbar-button{border-top:2px solid transparent;}.bk-root .bk-toolbar.bk-below .bk-toolbar-button.bk-active{border-top-color:#26aae1;}.bk-root .bk-toolbar.bk-right .bk-toolbar-button{border-left:2px solid transparent;}.bk-root .bk-toolbar.bk-right .bk-toolbar-button.bk-active{border-left-color:#26aae1;}.bk-root .bk-toolbar.bk-left .bk-toolbar-button{border-right:2px solid transparent;}.bk-root .bk-toolbar.bk-left .bk-toolbar-button.bk-active{border-right-color:#26aae1;}.bk-root .bk-button-bar + .bk-button-bar:before{content:\" \";display:inline-block;background-color:lightgray;}.bk-root .bk-toolbar.bk-above .bk-button-bar + .bk-button-bar:before,.bk-root .bk-toolbar.bk-below .bk-button-bar + .bk-button-bar:before{height:10px;width:1px;}.bk-root .bk-toolbar.bk-left .bk-button-bar + .bk-button-bar:before,.bk-root .bk-toolbar.bk-right .bk-button-bar + .bk-button-bar:before{height:1px;width:10px;}'},\n", " function _(A,g,o,C,l){C(),o.root=\"bk-root\",o.tool_icon_copy_to_clipboard=\"bk-tool-icon-copy-to-clipboard\",o.tool_icon_replace_mode=\"bk-tool-icon-replace-mode\",o.tool_icon_append_mode=\"bk-tool-icon-append-mode\",o.tool_icon_intersect_mode=\"bk-tool-icon-intersect-mode\",o.tool_icon_subtract_mode=\"bk-tool-icon-subtract-mode\",o.tool_icon_clear_selection=\"bk-tool-icon-clear-selection\",o.tool_icon_box_select=\"bk-tool-icon-box-select\",o.tool_icon_box_zoom=\"bk-tool-icon-box-zoom\",o.tool_icon_zoom_in=\"bk-tool-icon-zoom-in\",o.tool_icon_zoom_out=\"bk-tool-icon-zoom-out\",o.tool_icon_help=\"bk-tool-icon-help\",o.tool_icon_hover=\"bk-tool-icon-hover\",o.tool_icon_crosshair=\"bk-tool-icon-crosshair\",o.tool_icon_lasso_select=\"bk-tool-icon-lasso-select\",o.tool_icon_pan=\"bk-tool-icon-pan\",o.tool_icon_xpan=\"bk-tool-icon-xpan\",o.tool_icon_ypan=\"bk-tool-icon-ypan\",o.tool_icon_range=\"bk-tool-icon-range\",o.tool_icon_polygon_select=\"bk-tool-icon-polygon-select\",o.tool_icon_redo=\"bk-tool-icon-redo\",o.tool_icon_reset=\"bk-tool-icon-reset\",o.tool_icon_save=\"bk-tool-icon-save\",o.tool_icon_tap_select=\"bk-tool-icon-tap-select\",o.tool_icon_undo=\"bk-tool-icon-undo\",o.tool_icon_wheel_pan=\"bk-tool-icon-wheel-pan\",o.tool_icon_wheel_zoom=\"bk-tool-icon-wheel-zoom\",o.tool_icon_box_edit=\"bk-tool-icon-box-edit\",o.tool_icon_freehand_draw=\"bk-tool-icon-freehand-draw\",o.tool_icon_poly_draw=\"bk-tool-icon-poly-draw\",o.tool_icon_point_draw=\"bk-tool-icon-point-draw\",o.tool_icon_poly_edit=\"bk-tool-icon-poly-edit\",o.tool_icon_line_edit=\"bk-tool-icon-line-edit\",o.default='.bk-root .bk-tool-icon-copy-to-clipboard{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUSDBoBvcHQeQAAAG9JREFUWMNjXLhsJcNAAiaGAQYwB/xHwh/Q+ITEkfHQCwEWND4jmeb8H/JpgBwfI6cNBhLSEkqaGXRpgFRAcZoZsmlg1AGjDhh1wKgDRh0w6gCaVcf/R2wIkNqw+D9s0wADvUNiyIYA47BJAwPuAAAj/Cjd0TCN6wAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-replace-mode{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxokK3gniQAAAHpJREFUWMNjXLhsJcNAAiaGAQajDhhwB7DgEP+PxmeksvjgDwFcLmYkUh2hkBj8IcBIZXsYh1w2/I8v3sgAOM0bLYhGc8GgrwuICgldfQO88pcvXvg/aOuCUQeM5oLRuoCFCJcTbOMh5XOiW0JDNhdQS3y0IBp1ABwAAF8KGrhC1Eg6AAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-append-mode{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxkZWD04WwAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAAAoUlEQVRYw+1WQQ6AIAwrhO8Y/bIXEz9jIMSDr8ETCUEPQzA4pMeFLKNbu4l5WR0CDOMEALBGIzMuQIBEZQjPgP9JLjwTfBjY9sO9lZsFA9IafZng3BlIyVefgd8XQFZBAWe8jfNxwsDhir6rzoCiPiy1K+J8/FRQemv2XfAdFcQ9znU4Viqg9ta1qYJ+D1BnAIBrkgGVOrXNqUA9rbyZm/AEzFh4jEeY/soAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-intersect-mode{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxkrkOpp2wAAAPhJREFUWMPtV1EKwjAMTUavI3oawR/vtn5srJdREfzwMvHHQlcT2mpdMzFfWxiP5r2+JMN+mAiCOB72CABgR1cln4oOGocJnuMTSxWk8jMm7OggYkYXA9gPE3uyd8NXHONJ+eYMdE/NqCJmEZ5ZqlJJ4sUksKN7cYSaPoCZFWR1QI+Xm1fBACU63Cw22x0AAJxudwrffVwvZ+JmQdAHZkw0d4EpAMCw8k87pMdbnwtizQumJYv3nwV6XOA1qbUT/oQLUJgFRbsiNwFVucBIlyR3p0tdMp+XmFjfLKi1LatyAXtCRjPWBdL3Ke3VuACJKFfDr/xFN2fgAR/Go0qaLlmEAAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-subtract-mode{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxgsF5XNOQAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAABFUlEQVRYw9VWUQqDMAxNpWfxQxD1MoP97G7zQ5mH2RTZYLtM9lWoMbXtxLXNX4OG9r28l4hrd0PQoqxqAACYpxH25C/nkwCHyCBwSPoS09k1T5Fo+4EiExcC4v584xGFmyIXHBLRISAVZyZufUPVa4rcrwmPDgr93ylo+2GliLRUYHK6th/o/6r7nfLpqaCsagEA8Hh9FmcNKeRmgeYDC+SCq0B6FFi8/BcV6BdR9cL3gCv3ijPKOacsn3rBEcjmaVxpfGcg4wHxzgJJnc6241Hn23DERFRAu1bNcWa3Q0uXi62XR6sCaWoSejbtdLYmU3kTEunNgj0bUbQqYG/IcMaqwPS9jftoVCAQ0ZVDJwf0zQdH4AsyW6fpQu4YegAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-clear-selection{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUGEhcuan3d3wAAAoRJREFUWMPtlzFP3EAQhd+b3TNSzg0N5TWXLkJQUUaKhIQ4fgP/g5ArrriE/I3opEgRrZtIVJR0FJQ010SioUmEZHtnUpwN9gWHGA5BJCy58MraffvmfZ41v3z9hqe8BE98vQh4cgG+Ydzmnrng8efvQJNi/uN7dznx/B3ggtfhf4ehNdUttRzBDIm/2VTiiWCG1HK0nc+3UWtq8BQIiEEakEQOADBIA4QCQmBqoHBhFNR27ikQSmGdYCdTqCpEHMDZmEKRWUBEv1gBDg5SzRJnpopILWICgWuRYflLamuzxB2BmtYqSRIka5VWU8QduXO+1hRc5YZu5GAwmP2ZJzND0IBu5HCV2+NQcAhAVRsnC2IbPzPdSjzd6to6VtfWkXi6YLaVWr7xoAwkfpb8MnC3SH7rKSMBe4M0jA/OTicFIbtCGRIyNbURhcf3ErCd6YwA1m0HgAxhw1NGQnlXBHG4kylVlSJuH0RfIP2CkL2I/qS1gIAAQiBl1QwFggIHtyxgrxK5PgyfC0JWKoT0HLh8LwoietB4TYKaIl7yeNURxB05UtMxDOcVQlZIrlRKdK6m47gjR/fuBRQihyLArtNeJD50Izcx2Eczu7iFkIug4VM3cpOr3MKDekFED0fWUHv9Zq0kpLnridjhY3XDg7NTN0jDrhO3X7O9Wg7wwyANu4mnayNg3gmbu0tCNoUyBNGv2l4rB9EXynA7082FOxAQLhU6rQVO9T2AvWowFToNCJcPORGxIRcnpjZSKATSU9NxvOQnAPArDSaQoUKnNI4iufkGtD4P3EHIcWZhz4HLceSOyrR3Izf5memPAL2cX3yhAkonysZVaWLBkd9dw1Ivv2a/AYPkK+ty1U1DAAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-box-select{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg0kduFrowAAAIdJREFUWMPtVtEKwCAI9KL//4e9DPZ3+wP3KgOjNZouFYI4C8q7s7DtB1lGIeMoRMRinCLXg/ML3EcFqpjjloOyZxRntxpwQ8HsgHYARKFAtSFrCg3TCdMFCE1BuuALEXJLjC4qENsFVXCESZw38/kWLOkC/K4PcOc/Hj03WkoDT3EaWW9egQul6CUbq90JTwAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-box-zoom{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg82t254aQAAAkBJREFUWMPN11+E1FEUB/DPTFn2qaeIpcSwr5NlUyJiKWVXWUqvlUh/iE3RY9mUekkPPURtLKNRrFJEeuphGfUUaVliiX1aVjGs6aG7+XX9ZnZ+d2fTl2vmnHvPPfeee/79Sk+may2/UQq/q7Qu+bAJoxjHIKqB/wlfUMcMVqI9bLZ+DGIKwzlzQ2GcxCx2xwvKOUKlaHTiX8bHNspjDONHkOmJBW5jIof/FvPh/06MZOb6cRc7cGn1AKUE5cdzlM/gAr5F/O24H3xkFRfxAbVygvK+cIsspjGWo1zgjeFpxL+BvnLw7laBA4xjIFJwrgu52DoVjKdY4HBEX8dSF3JLYe1fe6UcYCii3xWQjdfuSTnAtoheKCC7GNED5Zx4L4qt61jbTLHA94geKSC7P7ZeShQ0Inoi1IJuEOeORooFXkV0FZNdZs5qvFfKAeqYy7nZ6yg//HG0MBfffh71lFrQDCW2EvEP4mt4okZUDftz9rmGZkotmMxJRtlisy+MTniAWrty3AlXw0hFM2TD89l+oNsoOJXjbIs4EpqNtTCLXbiZ0g+M4mFObj8U3vsNjoZCVcmk60ZwthpepLZkB/AsivWfOJZxtpUQHfWib7KWDwzjeegBZJSdKFiE2qJTFFTwElsi/unQ/awXrU4WGMD7nOJxBY/1EO2iYConq93CHT1GOwucjdqnRyFz+VcHmMNefMY9nNkA3SWUOoXhQviSWQ4huLIRFlirFixnQq/XaKXUgg2xQNGv4V7x/RcW+AXPB3h7H1PaiQAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-zoom-in{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsUBmL8iQAAA2JJREFUWMO9l12IlFUYx3//MzPrLpSjkm5oN4FFIWVEl66IQlFYwtLOzozsjHdGRSCRF0sfBEXRVV0FQuQiLm5CZNBFgRRaRLVFhbJ2EdiN5gbK7toObTPn6eYdPTvNzPvOBz5Xh/ec5/n/n89zXtEHmZqeSXSuXBz/3zfdKvBWJHQrwZuRcP0El+QkbQXeBX6WZEgm6TtJk5lM5o4Lc+cV6qpf4Ga20Tm338zeATItVK9Ker6yvPzp4NDQ3+XieGsCU9MzTYumGbhz7m4ze9/MHgvBgItACrgfGAj2jgAvAYs3wlEujjc13kii8YyZrXXOfWhmo9GnFUlvOOemarVapVqtkslksmb2KjARqL62ecuWN9NxbRInzrldAXhV0uFSIfdew7G/gNLU9MwS8CwSmE3Oz88fcXG5blfpqVRq0Ix8VIAAX0XgrVL7HDCHGcCaWrV60LUBN8Dae58aQIxEqcA592I9M610JL0cpG/U9TIHJNKY3RV5z0R+7Nd4HZ0P1g/2RMBuegLAsRMnb4vT8d5vqKfMzOgtAlADrkmqGywmiMBTwfr3dC9j1Xv/r6Tvg/5/5ejxE6cO7M9faVbQZrYNOFSPmqQvVo9FKexvi5uWX58943aM7DwAfBDY+FbSCxP5sdkGx55GeguzrUEXPaSo2pFkAbiSZQCAzZJOmdkjwd6SpB/M7KykQTPbA2wDhoIzRzcNDx9MJwGNIXdJ0mEzmwbujL7dbma7gd03A7lKfnTOvf74nl0r6bonTUbujRSUCrm2d4L3/kvn3JPe+8+BDW2i9o+kT7z3kxP5sYsA6W47oE64TsR7P9tQL4vA2mh9WdIscKxUyJ0M7aR7acOGzikD65EQLEjaa2ZXzMwDFeB6qZBbbLTRE4EGeSaozNOZgYFf8qP7lmIvs354n0qlHpB0T7B9Ogl4IgJJrmjv/SiQjbrkD+BMUkfSbYATPdckrTOzkciWAXOlQu5cYgLdPEIapud9wMOR9zVJH3ViKx333mtHMJvNuoWFhZ3A+ojMcja77njXBEKwJJfTcqUyCIQ34Mf7nnh0paMnXacFuGoC1mr3AtuDfLzd8Zuyl+rfuGn4HLAD+Az4qZQf+61TAj0Noj8vX6oC35SL43u7teG6rf5+iXppwW7/JUL5D03qaFRvvUe+AAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-zoom-out{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsHgty9VwAAA0FJREFUWMO9l09oXFUUxn/fmXlpItppi22k7UJBRSlVkCytSAuKUloIdjKT0El3FXVXdVFKRVAQV7qQohsNwdA0UFvBhYtqUVyIVlRaogtFQVq7qSTVjA3z3nHzBq/jvPmTN/Ss7rv3nvN99/y794kByMzcfE/7picn/jenmwWeRUI3E7wdCRskuCSTdDfwBvCtJEdySV9KOhpF0e0/LF5SqKtBgbv7ZjObcvfXgShD9Zqk5+orKx8Oj4z8NT05kU1gZm6+bdK0Azezu9z9hLs/HoIBvwAF4H5gKFh7B3gBWFY3460kWve4+3oze9fdx9OpVUmvmNlMHMf1RqNBFEUldz8OHAxUX9q6bduryut+Sfvc/Wz62ZD0fK1afjND9y3gGSRwv1GMojstTxUUCoVhdyopEYDzKXjWwZ4FFnEHWBc3Goet00m7lZlZYQixKw0FZnakGZksHUnHgvCN5/KARBH37enpOVg58H13HV0Kxg/kIuD/ngSA2ZMLt3bTSZJkUzNk7k4+D0AM/CGpaXCyBw/sC8Y/qZd2GpZiuL9YLN4Sx/HpoP5/c/exQ1OVq+1yyt13SLoArEsJnMjlgfOffvK3u58Kprab2QezJxfG2iTzUzI70wRPG9jbmpmb95SNB9mpzp7/j2yVdNbdx4K565K+cvfPJQ27+x5gBzAS7Hlvy+jo4WIvoC3kWpcvS3rR3eeAO9K529x9N7C7zX6AC2b28hN7Hl1Vt44niVq13LUjmtlYkiQfA5s6eO+GpDNJkhw9NFX5ueNt2ARodyF1IHIN2JiOl4H16fiKpK+B2Vq1vBAqFAf4IJkGNiIhWJK0192vunsC1IE/a9XycquNXARa5OnApeeioaHvKuP7r3dTGsiLqFAo7JR0T7B8rhfwXARa2us4UEqr5Ffgs151i/08oTNKdIO770ptObBYq5Yv5ibQq/sl3Qc8lJ4+lnSqH1vFfp9koZRKJVtaWnqkWXqSVkqlDe+vmUDWpZMlK/X6MBDegKf3P/nYaj8ErN9fqZBYEsf3Ag8G8Xit33BaniTcvGX0IvAw8BHwTa1y4Md+CeRqRL9fudwAvpienNi7Vhu21uwflOT+L+i1X2TJP57iUvUFtHWsAAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-help{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABltpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPHRpZmY6Q29tcHJlc3Npb24+NTwvdGlmZjpDb21wcmVzc2lvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzI8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMzIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDNDIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMTIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDMjIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPGRjOnN1YmplY3Q+CiAgICAgICAgICAgIDxyZGY6U2VxLz4KICAgICAgICAgPC9kYzpzdWJqZWN0PgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNjoxMToyOCAxMToxMTo4MjwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+UGl4ZWxtYXRvciAzLjY8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cphjt2AAAAT7SURBVFgJxRdbaFxFdGb2bhui227BWrsVKYgf2kJUbP9EUPuzEB803WTXJjH61Q/7Ya1+CMYKEVTsh4J/EpvY7BoabUiNiA8s1p+4KIhpoUUEselHqyS76TbZ3HuP58ydc3d2u4+IkQxczpz3mZkzZ86VYpXjvenpjZsLhUcliE4AuUuASAgptmt1EFdwPiclzIIUUwubNn17OJlcXo1p2UpodHRiux9xB1Eug1+slbzhFxGOKc851tu7/0oznYYBDA8Pt0U2tL8KQryIq2tvZqQhD0QJHRz3yqWhgYGBpXpydQMwqz6NCnurleCSADkJEfgKfOePqL80R/wV1ZaQyr1LenKfkPCkEPKeaj0xg7vxVL3duCmA0Vyuw/fl52hgBxsBED+h4Cv9z3R/zbRm8MTJTx7HQN7GQB6w5C4L4SX7M5lfLBpurjXMyvNIShiyi0l1pL8n9b7EDGPR8fHxzSsQ6XDB3618/xqo6Pk25V5MpVJllgHM1BO58RdQ612kOYZ+GXdij70TYQB05mpj+1kU5G2fB+l3PZtOf8NGx6ambnMXb3yAxg8wjSEG6OKKR9oicBQD+ZvpH2Wzj0lQpxCPG9qMv1x6hHNCsSAlHM7ZOa682vlI9tRDbvHGbD3nZAPpDoD/3JIrLpAs26UFkC3EMUA99hpfGtEBfJjNJnS2Gwnadnvl+Xw+iuc3DAJuNyIaSCHpilVldyDjjUxj3WDZIAhxhHHyRcdNuA7AAfUaXzVKODpzFiZ4/uLvh5G+m2no+C/pyIf7MqlEJB7bpqR6nXkEUfbeawuLaZsW2ISfNQ2vtaktQlGFQyIVGT0o2+2EC4iQNGwjBIN9qdQ5Qg4mk4X4rW3vCClLtowE2FOFUxKDfNmiZci3ovKKRFPh4FK9q4Zbdr+lKKJiA13TcHR2dmLBgdmQ0GAS2MZaEowY+XbAk09IvgtYZGp16SyvFhaHcIUh645t8T9DBCcnz5zZ4hZLu3DzK2QlL1QQa0Y+pHiJKPSuOGj3PmZTheM5w2TwqBxnvBZOTk7G5gvXJ5Aelms8wnJURL+olSWcfEhf6gDoUXPMq6ZlqbzWU2pE+3hi4s6F68tfIj9cBMlikr7Z0/P0b/X0yIcUXsDCF1WhtL4OROHaXk+xlkbV0Cu732Nmhc4peaWSg73pA8dq5RkvO37ldUTfXCKZv2q45MkhvG87WQEzpCCUSvV1d9GONBy3lMvgKSwrZig8gjAietWY0QriylO2jIo4yVbOSb7KB/qmI9BPKjHpSSXYauRyn92Nq9/Kcrj13x3s3v8D481glQ/0raiNYgX9njPSBOImbrHZePl+tfFmc9sH+Xaoh8NjOKSVdDMhjjYzQLy+dFceH5+IJQf9VYXX4tROg4ZFU8m31M3mfPEqUoJqCGJfvWpo2xnNfdrhC28n06SCeSzNZxlvBINGRXCtKS7EY1uV6V7HWAm38y1cXaXsMcOCvr9ySPj+af7A1U2HJXHzVNvUXVLIGyPf+jV0pf8GHoN+TLAyPkidTCi2RpPApmnR0Bd1zGRaB/B8Oj2HSw7LLbVR1MmskW8RdEWVXSJf3JbpAMgRtc4IZoxTh9qotQjCasm46M0YX9pV1VmbpvRH5OwwgdRtSg2vKaAz/1dNKVtb17Y8DCL4HVufHxMOYl1/zTgIgiYvBnFKfaNp3YjTdPz3n9Na8//X7/k/O1tdwopcZlcAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-hover{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4oVHp0SwAAAQJJREFUWMPtlsENgzAMRb8RQ5VJItFDOgaZAMaAA0iZpN3KPZSoEEHSQBCViI/G8pfNt/KAFFcPshPdoAGgZkYVVYjQAFCyFLN8tlAbXRwAxp61nc9XCkGERpZCxRDvBl0zoxp7K98GAACxxH29srNNmPsK2l7zHoHHXZDr+/9vwDfB3kgeSB5IHkgeOH0DmesJjSXi6pUvkYt5u9teVy6aWREDM0D0BRvmGRV5N6DsQkMzI64FidtI5t3AOKWaFhuioY8dlYf9TO1PREUh/9HVeAqzIThHgWZ6MuNmC1jiL1mK4pAzlKUojEmNsxcmL0J60tazWjLZFpClPbd9BMJfL95145YajN5RHQAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-crosshair{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADEUlEQVRYR81XXVIaQRCeHqug8CXmBNETaE4gniDwIgpVspxAbxC9ATkBkCpQ8gKeQDiB5AQxNyAvUlrldr7eHxyGXZi1rMJ5opbp7m++7un+htSGF204vsoMoNXrlzSpfWa1oxQfhAegCZGaEtPorHo8znIoJwCt6+td8uk7ApUQCIHTF4BNAWzImq8ap6cP68CsBdDp9i9ZqXM7ML79g/EnCWD+jgMKENKqWT+tXK0CkQqgNRjs0OxpQIqKhoMxaG6/6JeRnK7T6yO2UvVqhYSlLX+ryORfgKn9ORDFIy7ky41yGcwsr0QAQfDH5zucOswx819fs4egI9OFCcD8DjBF7VNbEX0JzdWEt3NHSSASAcCxBDqMgt/623kvyTgNgNjJIfTjk4D4FqaJR1715MjmYAmA5Bx3AwUXQL+t105KaTlcBSC26XRvhjEIoLiq1yqXpr8FAGG16/ug4IT27fxBWu7EiQuAiImJpEMKE6nYM30uAIDDttSUOPfJP7JzbjPhAiBIh9QE67vIvoOi9WJfCwDavf40ulpjbCqmUf+W753ezURuh7Dg1SqflwAEHU6pgfyBq9Y4qx0LG++2fnZ/eUzcstmdM2AWH+jfc+liWdBJfSENf8Lifi3GVwC9mybOfi5dzatWVrbbLIHNva8p5h/16gkaFiLGGxbufkoE6XguwePiXLF3XmMfCUCUAqtKXU7sumd1CowOuJEi3Pg1FBpjitIGhyvVSfvmjci6ZR+rFQfDiPVE2jFYeICQ+PoewwjC5h7CZld6DBdyu6nDSKgzOyIMhmhK5TTqXYbRorZYM46TmpKAAOrGWwSJJekSB1yqJNOzp1Gs7YJ0EDeySDIMtJbQHh6Kf/uFfNFZkolJICRmz0P8DKWZuIG2g1hpok+Mk0Qphs0h9lzMtWRoNvYLuVImUWrmPJDlBKeRBDfATGOpHkhw670QSHWGLLckmF1PTsMlYqMJpyUbiO0weiMMceqLVTcotnMCYAYJJbcuQrVgZFP0NOOJYpr62pf3AmrHfWUG4O7abefGAfwH7EXSMJafOlYAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-lasso-select{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgwlGP1qdAAABMBJREFUWMO9V1uIVVUY/r61z57ZMx4DnbzgkbQXL5iCJphlWdpIGY4jpFBkEiU9ZNaDRRcITcIwMwgxoQtU2IMXdAZfMjFvpERXYiSbysyBEXFmyuHMnLP32uvrwT2xnY5nxvHQ93Jg7fWv71/r//7L4a59TRgqJk+Z6v3a+sv0OI5nk5wu6VaSVZImAThHsgjgrKTvM5nMUWvtmf5n8HodCIKgOgzDhc65pSTrJQWDsSNpJX1ljHnDOfdT37oZLLHv+8OMMasKhcIJ59xHAJYMlhwAJGUAzJfUTHLFuFzOG5QDU6dNMyQfs9Yedc5tBpAD4IYYNQGoBrDtQnt7/b0LFrJsCHzfn2itfQfAnZLiazytA3AaQAuAiwDaEgeNpGkkswAWSBqRONB38b88z5uTKePt6iiKXkk8jq+iJC5LOmiMaTLGHLPWhmWeHr7vV0dRtATAapAzIVmSo51zyzIlbm2stesFPA6pKk0r6Ryg93y/ek8YFvPOOTg3cDSiKCoC2OP7/rEoirYm4rUkF12lAWNM1lr7lqQn0+QA8gI2jBg5cj6Aj8OwmB+KAKIoukhyp6SRJAUgl0ndPLDWPi9pJQCbuviXvu+/GIZhW1dnJ24UJFuTjCCA2ADA8sYGWmsXS3qmL94kDYAtkh4Nw7ANlQJ5U6INT1KrAYC9zQdykl7nFSj5fXp5Y8NWVBhy7mUAjqShMYdMXV2dJ2klyRwAJ8lIeuGWCRMP7N7frEqSG2OmAFhKshNAp5wrmO7u7jEAngPQm1S2z2pqapr+OPt7XEly0oxwzq2RdFmSD2AMgKKJouhhAL4kA+Cs53l7e3t7uytJHgRBreTWkXwkKVJnJD0B4GAGwIJE9R6AFufc6UqSZ7PZbD6ff5dkA4CQZEHSqwAOISmXtwGIE+F1SeqqIP8d+Xz+C0mLJYWSAODteXffczjdDQNJ0BWMCoLg5gqIbRTJNwHsljQhUb0luWPM2LE7Thw/9m/5NCT/TByxAOYWi8X6/gdWV1dnfN8fNRBxJpMZTXKdc+6IpFVJWAEgkvSJpA0X2tvtVTaSjgOYBCAEEADYSHK87/sfhmEYA9gShuEDkgzJHyWtB/B1irQ2juP7ADxkrX0wOUOpzmdpzEY590HJ7Ni1r2kSyZOSiv2+hSRjSTXp/QAukzySNJOJkmalyNIl10hqMcasdc61XDNcQRD8BnITgNp+36r6kfcNFMMlLQGwTNLMEuQGQBfJl2bdPru+HDkAZAqFQux53jZHEsC6aw0eg2gylNRBcqcx5v04ji999+03AwsWAOI4Lsy9a94WkisAnE5a5WCJYwCfA1g7LJudI2lTHMeXBm1faiQzxkyRtF3S5CTupeAB+KG2tnZFT0/P30NO2VKLzrmfAbwGMipjG5Oc0dPTc0Md05SZ5U4Q2FxChErtEYD7jTGNQ3UgM8Asv90Yc9I5LSKRlXSI5CxJa0jWSALJjKRnAewfkniT+vwf7N7fXHK9rq7O7+jo+BTA/NRrdBpjnnLOnUrvXd7YMPQXSBunneno6IhIHgYwW1JtkgmBpBkATlVMAwOk3nFJ+VSoqgCMr6gIy2FcLtdKspAedyQN/98caDt/3kpyabUmf8WvG/8A1vODTBVE/0MAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-pan{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4lKssI9gAAAOtJREFUWMPVll0KwyAMgNPgoc0JzDX2Mtgp3csKErSamGabIEUo/T6bHz0ezxdsjPJ5kvUDaROem7VJAp3gufkbtwtI+JYEOsHNEugIN0mgM1wtsVoF1MnyKtZHZBW4DVxoMh6jaAW0MTfnBAbALyUwCD6UwEB4VyJN4FXx4aqUAACgFLjzrsRP9AECAP4Cm88QtJeJrGivdeNdPpko+j1H7XzUB+6WYHmo4eDk4wj41XFMEfBZGXpK0F/eB+QhVcXslVo7i6eANjF5NYSojCN7wi05MJNgbfKiMaPZA75TBVKCrWWbnGrb3DPePZ9Bcbe/QecAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-xpan{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4X4hxZdgAAAMpJREFUWMPtlsEKwjAMhr/pwOOedINJe/PobWXCfAIvgo/nA4heOiilZQqN2yE5lpD/I38SWt3uD9aMHSuHAiiAAmwaYCqoM/0KMABtQYDW11wEaHyiEei28bWb8LGOkk5C4iEEgE11YBQWDyHGuAMD0CeS30IQPfACbC3o+Vd2bOIOWMCtoO1mC+ap3CfmoCokFs/SZd6E0ILjnzrhvFbyEJ2FIZzXyB6iZ3AkjITn8WOdSbbAoaD4NSW+tIZdQYBOPyQKoAAKkIsPv0se4A/1UC0AAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-ypan{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4anK0lywAAAMVJREFUWMPtlzEKwzAMRX/S7rlpIMXeOnaLaME36FLo8XqCdNFghGljyc4kgQi2Q/SUj0F/eL7eMMTKz6j9wNlYPGRrFcSoLH4XxQPvdQeYuPOlcLbw2dRTgqvoXEaolWM0aP4LYm0NkHYWzyFSSwlmzjw2sR6OvAXNwgEcwAEcwAEcwAEcoGYk20SiMCHlmVoCzACoojEqjHBmCeJOCOo1lgPA7Q8E8TvdjMmHuzsV3NFD4w+1t+Ai/gTx3qHuOFqdMQB8ASMwJX0IEHOeAAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-range{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABCJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyI+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDx0aWZmOkNvbXByZXNzaW9uPjU8L3RpZmY6Q29tcHJlc3Npb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjMyPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4zMjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgICAgIDxkYzpzdWJqZWN0PgogICAgICAgICAgICA8cmRmOkJhZy8+CiAgICAgICAgIDwvZGM6c3ViamVjdD4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTgtMDQtMjhUMTQ6MDQ6NDk8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPlBpeGVsbWF0b3IgMy43PC94bXA6Q3JlYXRvclRvb2w+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgrsrWBhAAAD60lEQVRYCcVWv2scRxSemZ097SHbSeWkcYwwclDhzr1Q5T6QE1LghP6BGNIYJGRWNlaZItiFK1mr+JAu4HQu0kjpU8sgF3ITAsaFg0hOvt2Zyfvmdsa7a610Unx44Zgf773vvfneezPHNzrbhn3CT3xC3wPXYOC8LDzqdi8YY/gwh4BeknS/2th6dr2kf94AOp3OFyWgMyziOPbMDxV9FTtJnl1ut795Xd0/YQ0/vtYQwMT1KXWCfr2IjOWwtNehwN4xL9ykTrm6Pzl58yLn3J+mKh9mXbT3uRjGEDph+O8/TjfP5dBp7Ha7AX7O3o5nZeD/0E/OGyXntDgzA0X6qmCnrVutVlrUWV9f/3xo+pwhGDhvEPHOjoxnZjJggXmMHzBQ7NGNp9vxk61fr0HR7e/u7pZzCGHlc7qwBYYTT7tJYSx1AQzppyFPft5apta9w7SKcn0b7P7+/jCsDQ5mbc0dCmIJGDN0ehdcjsmkm6A6KUeKFOTE11PLxrC7Ukqh3ylL2fT0NAP9q6ur6rRCJJYsbKB0JsbCKMuy+xREePDyxQPCz+Crlw062QcA5wBOOt1l6vIl2WiI9F1fN6Q+BBqit6hEC4Hk08GQJMn4myjSP7RavVxgdaVUh/3U6HCMsPr9pYnJKRziHtWQ+un58+hGs6nsjQSjpuTyKGN3CX+FBwHXSiEVgjP+O8X6N12kIePES+GzTKAkGbNp8yJsGUMVzz8jPKReiyAQRimy5/cjye5RpF8utFp/+nwmT7d/NMzcFkS7yjJNGDaPURQxIQThEQy0SyF4l5WJYYhBa816vZ6dU7A6CAhbZVow/pDe0O9hVOoCi13r4BgBAvJHqMSQL2vE/iH6IAXEwgrRVUmBoRRwnwJQT98xEeVeSUyB4dJ5nwJBKdCFFGRmUCcu7rwIYypCTblaChuNBhWODrman5ub+4v0rMNBt8z6Ezh7GksJQpCbm79cMQE7QBFm/X6f0rjWnv8WRYg/QdbUpwDAEBy8vPyA8rNGzg3a8MiElwiM7dAtRqNoNptjGPM1laVxP9umWEMGLOKhKUOJDtBwDmzsw9fC/CzHr9SGuCTi2LbbKvVtmqXpCjMihBFa79Wrt5fGx9PDzc3fmu32Lf8qFliwU9emKhBSp+kRKn/hu9k1COEDbFdt/BoKWOAkuEbdVYyoIXv8+I/QK9dMHEb1Knb7MHOv8LFFOsjzCVHWOD7Ltn+MXCRF4729vWMDK+p8rLkvwjLg4N4v741m5YuwCI9CvHp1Ha8gFdBoPnQAkGsYYGxxcfEI7QQlFCTGUXwjAz4tWF+EpymOWu7fglE7qsOvrYE6g4+9/x/vhRbMdLOCFgAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-polygon-select{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjc1OfiVKAAAAe1JREFUWMPt1r9rU1EUB/DPK0XbqphFHETo4OCiFhwF0V1KHbRSROLqon+AUMVRRFBwEbRFMBiV+mMW/wIxi5OD1kERRVKRJHUwLvfBTZrU5OWBGXLgQu7Jfe98z/ec7z0vKa88b2q1BDtRHdAPBaylm1NzsxsOjPnPNt6WSWprbft+/c3I3zOAjhT1Y4+fvcjEQJIXnVECSa+AhqIHqlHH5lWCZoe+Gk4GRgDG86j9SAUdlDBSQaZhlOkuHyoVdJmsw98D1S5fM4NYM1LCpqM+Lwa240oLgmZzpVZvzKT75VLZcqksSZKWlQeAy/iORVwIvh31xvotvK7VG3Px4aWHj3Jl4C2uYSvq+Bn8v6LLbaVWb9zsBiKLCvbiNG7gLm7jAYqbPHMJMziZ9lsKoh8GtqCEVVzHftwJn+TFHp4/hg8BSCYVfMOZoPEv2NZGdy9WCGUr9toDR3E2/H4V6nwRe/BmgN65H1ZhvMuB3XiKIyFoGefwO6ysVkUlrNUNsyAK/jli533Q+Y8cJFvAeXyMS1CI/jiMr/gUtD2LQwMGr4R3p7bY3oQHQ5b38CT4D2AXXg6YcQXHpyYnlqKsi5iOAVSwL9zd7zJ09r+Cpwq72omFMazjT9Dnibym0dTkRDUKrrgwH7MwXVyYB38BstaGDfLUTsgAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-redo{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4itK+dVQAAAaFJREFUWMPt1L1rFFEUBfDfJDaBBSslIFjbaSFp1FJQFMVCHkzhKIqdUYOCoBgErVz8rCwiTDMwBCIKipDWyip/gxAIWAmBgBC0eYFh2Gx2l9lFcA5M8e59782Zc84dWrT435Hs1siLchqn43MS0zgW22vYxjesYjVLw3YjBPKinMUTBOwf8J5fKLGYpWFjJAJ5Uc7gIW6jM6Kim3iNZ1katgYmEL/6I+YasvY7Lg6iRpIX5VF8wuEe/XV8wGf8jN6LWTiAc7iEQ7ucPZ+lYW0vAtfwvlbfwCKW9gpXDOv1mJvZHiSO91MiyYsyiQSuxtpXXM7SsDmM5nlRdrCMMz3sOJWl4Xevc/vwBzdwAl+yNNwZxfRI+GxelK9ikHcwh8d4NNR/YFRES1ZwoTYdR7I0rNf3TzVNIGbmSvR/Bx08mIgCFSVu4l2ltIWD9WxNGR+W8KOynqnZ0rwCeVG+wa0hjrxtWoF5dAfc28V8Mib/n+Nev5dnabg/zgw87aNEN/bHOwVRiRe4Wym9zNKwMKkpgIWKEt24njxiJlq0aPFv4i9ZWXMSPPhE/QAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-reset{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4gWqH8eQAABLdJREFUWMPtlktsVGUUx3/nfvfOlLQaY2IiRRMQIRpI0PjamJhoVASDvNpCpYw1vJQYSVwZwIVQF6wwRHmkAUof9ElrI6VqDAXcID4TF0IiYQMkSlTokNCZ+b7jove2t+NMH7rQBWd3v+989/zP+Z8X3Jb/WGQySvUNTQBJESkNguAVYIWqzhaRhwBU9WcR+QXoymazn6jqzUQiMQSQzWZRVdal1vwzAI2tHQBPOuc2AbWTdOyQ53n7nHNfRwee51GzqoIQMCLDpr3x/tLQ0oZzrk5Vj0/BOEBt+KYuOlBVGlrahr0Wob27t3gEjnZ2AyQzmUwHsDgP6J/AYRE553neDwDOuUdU9QngNeCumK4TkRMhZUORcYC1qysLA6iuSQHIwkWLD6lqapQsuSmwTVV3h99I7EcAR462A2xR2Ilq6ehTaejvO1774kuLNALR33eclsaGsQDe3fYegHl43vyNwEeqGl1963mm2jl7YZRTQ82qlWP4HM6ZToC5ztkW4LHQoALru7s6Di5dvlIj/e6ujrEAWoZDn8hmMjXATMACGaAVuBjXTVVXFc/AxhaA+4zvn1DV+eHxVWPMAmvtb5GeMWZyZVhI2rt7qVy2pOh9U1snwIPW2vMi4oWJuBPYHkVAVScPoKmtkzVVK6cEMsyJraHhiCqJqJUwj/JRz7TW1iSSyR2rVyylqa0Ta+24Ic8vXaAEmDFc/l5Z2A/80OibuVyuz/f9ElUdHCmvw82t5HK5h6y1PYhsz2YyGw43t2KtBZHIGwB6+j4rCkBVUdV7gXrggnPuu8h4eP+xMeZS2D0rJYZ6AdAMzAt1b4nI26p6IFZOY8pugijcKSIHVLUK0LyST4vnrVfnWr3mjmP4QTATaERkXkypRFX3isjmuHdRJEK6Ckqquopp06bdKCkp2Sgi7XnGLcg7gzeutwNIiPYc8HixqIrIOlU9ONVIhHPEd851icgSVXUiskVV94gIqoonIt0i8gfQCfwae38e6BWRXuBZz5jZ8VbaOE4EIqlZVUEQBLlkMplS1QER2RwkEnsSyaREDUzyeNsvIhvCMqkH1kdIJ2o+k8iJB1LVVRfjZ6nqqlEAIbdVQGto8Lrv+/dbawcjAL7vc+6bs+zetetfLSHxniIFGofGGsU2oC7eOCbDfZ7nQawBOSAX74SF9oEPImOq+r7nmVmxb5raukZa8UReGmNmhbMkAwwBH467EYVZe49z7kdgenj8k7V2oTHm8kgdWcvrNdVFjR8cHkYzjDH9wLjDaEwEzpwa4MypgWvAjtjxfGNMj4jMiT+M+kFsZI/Q6Pv+HGNMT8w4wI7TAyevxXVPD5z8+zD64tRXAMHVK1eaVLUyVvuDqroV2BOnJF4ZIedviUidqt4Re9s+vbx8zZXLl7PR2+nl5Tz/zNOFp2FzxzGAklw22wUsLLaSKXwf8vhosZUM6PeDYEUum70VHfpBwKsVyyfeikOP6oBNwN1TrLbfgX3A1kKLzKeff8nLLzw38T5wZDgxn1LnNk5lLRfP26/OnR2hwfNYW2Atn9RCsrf+EECyrKysDFimqhXhyjY3VLkAXBKRDqA7nU6nS0tLhyIj6XSaN9bVclv+l/IXAmkwvZc+jNUAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-save{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4UexUIzAAAAIRJREFUWMNjXLhs5X+GAQRMDAMMWJDYjGhyf7CoIQf8x2H+f0KGM9M7BBio5FNcITo408CoA0YdQM1cwEhtB/ylgqMkCJmFLwrOQguj/xTg50hmkeyARAYGhlNUCIXjDAwM0eREwTUGBgbz0Ww46oBRB4w6YNQBow4YdcCIahP+H5EhAAAH2R8hH3Rg0QAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-tap-select{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3NzIwRUFGMDYyMjE2ODExOTdBNUNBNjVEQTY5OTRDRSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCOTJBQzE0RDQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCOTJBQzE0QzQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OTQ0QzIwMUM1RjIxNjgxMUE3QkFFMzhGRjc2NTI3MjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NzcyMEVBRjA2MjIxNjgxMTk3QTVDQTY1REE2OTk0Q0UiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6eYZ88AAADLklEQVR42rSXf2TUYRzHv7tuGcfE6Vwb5zLSSjEj7Y9KWqfEmFZJP+yPMdKKmUrrn0iUfjhWlLFi6YfNrF+StBoTo39iYkTGco4xxxG59P7k/T2PT8/37nu3bx9ezvPj+zyf5/PreS78bGLS8SmrwE6yje3NHJsDBTALpknBz6JhH3NiYAB0gHqPOVv52wJ6QQ48BzdAttTioRJjdeA8mAHHS2xuk3p+M8M16ipVQE49Ds6CiFO9RLjGONf05QLx6wPQaBlbBlPgJVgkP0ETiIJ2sB/E1XfimjfgBOOlKDUqCGOcqBcQnw6BYW5YTo4wbvQhMmCfGRemC2rBiGXzWUb+kM/NRZ6CHWBM9ce5R61NgX6ayhSJ5EPlItlDRNkz4JbFHf06BkSzHjXxM+gDv1S/mPUo2AXWgt9UUHL/IVhS8yUV1/EbV3o4N+NaoE9Fu/i827K5pNYHnqAVJECShWmAaddpscYFFXwR7vnXBRGlnUN/L6kqKJlxnRUuDbaDBiL+vst5d4gpcpBrqk/2jIgCKVUolhntplzivHmwh4stGOPfwBWwl/2dpp8p7xjQZqFLiQJtauKkivYm+kzccpK57yXfOUe+P23JqAnVbhMFmlXntCWnxbT31am9ZJ4BJifsUmNTqt0cYhA5ypympPg7VkEKunPbVb8cIG+0kyHLJZNR7fUMooUKFHAPkfQo58VLK+RzwRDd4FdWG9mjpaAXzqkJa1R7kQttqEABWXMjOOxxVRfnhRm5URX1prk/0pQHwNcKlchZ+jdpC+hFdVqO0my9Hj5dkYgCn1Rfh/KdlNDHrJhPqlDih+IfBd6qwpOgEqYMsorJ2HtWxtagLJDn/W3KRfPOZhoeBJfZPgVeGKeKrkQBh5dLXl25Ny3pc4/1fkTdbvFqFQgbxWeYD0hXulhQ0pYiM1jG547fcbMQpVnHTZEn9W3ljsCzwHxCdVteNHIZvQa7/7cC7nV6zHIfyFP9EXjFa7YxKAVqPP4bxhhoLWW+z9JyCb6M/MREg59/RlmmXbmneIybB+YC/ay+yrffqEddDzwGvKxxDmzhc0tc80XVgblqFfgjwAAPubcGjAOl1wAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-undo{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4em8Dh0gAAAatJREFUWMPt1rFrFFEQBvDfGhACASshkL/ALpWVrSAKEQV5sIULWlgZNSgIFkGIVQ412gkBt1lYLERREFJqJRaW1oHAoZUQsDqwecWy7N3tbe6C4H2wxc682Zn3zTfvLXPM8b8j6RqYF+UCzsfnHBawGt3fMcAX7GEvS8NgKgXkRbmMxwg41TLsN0psZmnodyogL8pFPMIdLHUk7hA7eJKl4U/rAuKu3+HslFr/FZezNPSTFslX8QErDe4DvMVH/Iq9F7VwGpdwZUjsPtaSFjv/1vCBPjaxO0xcNbHejLpZrrlvJCMCT+JzA+2fcC1Lw+GE4l3CG1yIptfjCtiKoqtiJ0vD3aM0Py/K57iIMxgkQxat4EdN7e9xdRzlk+LEEPvDWvIDXJ928sYxjL36icWK+VaWhlezOIqbGFirJd/H7szugrwoX+D2BDEvszSsT5OBdfRaru/F9dPXQF6U27g/KnmWhgctxqyzBrZGMNGL/rHI0nDkKXiKexXTsywNGx0OnFbFNk3BRoWJXnw//j+ivCi32/S8CxPVNiWOAdUiJtXITIqYY45/Cn8B2D97FYW2H+IAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-wheel-pan{background-image:url(\"data:image/png;base64,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\");}.bk-root .bk-tool-icon-wheel-zoom{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgskILvMJQAABTtJREFUWMPdl1+MXVUVxn/fPvf2zrSFmUKnoBCUdjRoVaIxEpO2JhilMYBCtBQS2hejpg1Uo2NUrIFAoyGmtiE+GHwQGtvQJhqDmKYRBv+URFsFDNCSptH60DJTO3dKnX/33rM/H7rvsDu9M20fDMaVnGTvtb69z7fWXmvtc/TEzqd4OyXwNsv/FwFJQVI/sA14SZKRLOlPkr5TrVYXHz70quYkEEK4TtI2YAgYkrQthHDdhV5uuw+43/ZrwCbgRttgY/tjtrc0m83X3/f+D6ydnJhYcB4BSZcBA7aP2d4ELAGW2N5k+xgwkDB0IH19CGGH7R8B1aQeAf4KvAw0ku4K2zu7uru3ApdPEyiKohd4TNKjtjt5h6RHgccSNrddbvuHtm9Jqoak7xVF8WFgdavV+pSk5cCObNmXgK++85prCj3z28HKqZMnH7D9YAY4BvwujT8BvCuL1INX9vVt+dfwcCvNb7f9q2RuSfrGvWu/sL2Nf3LX7pzvj4ENSGBPVarVd4fRkZFltjdmoMGiKO4IIWwIIWwoiuIOYDDzeOPoyMiyFLkum7WJCMDztrcrTTrIRuAQZ6NcK1utL4dWq/VZoC8BhqvV6l1lWb4YYxyLMY6VZflitVq9CxhOmL60hhCKeYiV7WMKIXw9jT1HpXw3c+bOAKzOjJubzebJrKQCQLPZPClpc7bP6rMYKtjXth2OMf7tIkr11Wz8oQDc1Fb09vY+kQw1YAuwJY2nbUluAnCWpKkaFl6IQIzxivaR2SYA89sJVK/Xp2x32R6w/a30DNjuqtfrU0ArYecDCEqgLqm94T0dEm9mBG7PxkdDlkBnkhebgIezNQ8nHcCZPL9ijE1Jf/bZZoPtzbavmqNZLbf9tSxq+yoduuJ+SZ+zXSZyBXCqU+d8fvC5yRUrV+0G2j3g2hDCLyXd/+Su3QdnvP/zCuH72LWsgf2k0oHlH2c2odlkxcpVEdgr6aDtjyb8x20/J+mA7T9I6rL9SWA5dne2/GdXLl58qNJh398An85yTMA+4DOz8Dgu6Zu2dwJXJ91ltm8Gbp7Fgb+EEB4aHhpq5CEtACqVyr3AC0AlPS8k3TSmQ2YPhhBuS/1/LpmS9JTtNTHGfwBU2uUALARotVqniqJYH2Pck85pfavVaufAwnQvnHc0McaDKVptebN94QAnJB0EdtjekydyZXqjs/0ZgLIs/w6sy8bnYGYJ63pgERKC05JutT1kOwITwL9tvzlzUQUYB+Zjs2DBgu6xsbGJZHstByZbezregcBXeCsEz1bnzXt5anLyzLq71zDLxTRdVgemdx0fv2e2w5thO5DbiqL4oKT3ZKpnpyYnz+SY2ZpTAPZmJfdIrVZbNBNUq9UW2X4kU+2dcf53Aj1pj2PA7y/6m1DS00A9za9uNBq7iqJYBuoGdRdFsazRaOzKSqye1rTbaa/tlbYrqXQP2X4FIA9/J1l39xrC0v7+w5IeB8XkwS1lWe6TGJAYKMty31tfO4qSHl/a3384I3CDpI+kzC4lnRfrue6GytEjR8oQwlY73gC0L4qlth/q0M1/LYWtR48cKQF6enrC6dOnVwGLEpnxnp7en4+O1i/tszzGOCTpPmB7ahb57QUwBWyXdF+McWg6MScmuoA8OX8xOlpvXGz422XYTsB/SnpA0h7bX5R0WzI9HUL4qe2XbI+dk3xl+V7gxoztD5jRI+YK/zkEEokx2/uB/RdzIfUtueqVN04cXwF8G3iHY3z9Urw/j8ClyhsnjrcS2Vv/J/8NLxT+/zqBTkcxU/cfEkyEAu3kmjAAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-box-edit{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4QfHjM1QAAAGRJREFUWMNjXLhsJcNAAiaGAQYsDAwM/+lsJ+OgCwGsLqMB+D8o08CoA0YdMOqAUQewDFQdMBoFIyoN/B/U7YFRB7DQIc7xyo9GwbBMA4xDqhxgISH1klXbDYk0QOseEeOgDgEAIS0JQleje6IAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-freehand-draw{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADTElEQVRYCeWWTWwMYRjH/88721X1lZJIGxJxcEE4OOiBgzjXWh8TJKR76kWacOBGxdEJIdk4VChZI/phidRBHMRRIr7DSUiaSCRFRM3u88gz+o7Z6bBTdjmYZPf9eJ55fv/5zzvvDPC/H9QsA66Olo9Ga+/MdR+Ljm2/KQIULsz9FqItGdOfJKLhApLgVkiSCGODjWit7QpKWy+TNrFeXvzKVUT8NiTVaIgDcbiCFJ7GiT8WkARXAdYBK0Lbhi/CenArRNskuM7/tgNp4ArQ42dwjf3WY5gWTqC7O/NbNn2Xkfw/YwdSw/We14HP2IEZwX+y9cZ9SH0LmgFP7UCz4KkENBNeV0Cz4b8U8DfgKiDxMWwUXETqLvJpCQpXZfawbzS7t9v5pL19cHBwfja7YA0y/lyCM0+E5hv5+piZXwKYcF23as+37bTXsQVqgkL0p/34fHR7DcBtbetFsBmGDwMOJCggYG55yw7dMlk6DuC1Bdu2RsCU9TYWQq2IoGbsreZ5NzvEqfSBsIsIy8OTbcdgiRHeh4o8AFAEwDakbY2AaCCpH7V9aGhoUUUy3UyVbkPYFuYLDlUZH8XBpwxkK0Dbgxg5HcVi0ent7a0RULMIozaHBSMfF9b2SzdutFcFB2FkwMIJOG6qfteXOa1nHZ48tyefuwyfT9s6wtzZ3t7eZse2DR2I228TtHXzuWCx9g8MtK5cuHCZTH4tiHEOa4xFngvTyS8f35d6enomiCi4/foEXBkZaQuukChL4FYA2Whd7YcC4gEdW3CpdL3LtGAVCVYJywEyTpAuJKeMOKXZs/Bw947C50KhUFOG4cwz35cjWNBlHGeD53n3xsfHP/T19U1qciggar8Fa4I3PHobIotBWBtc2hSiChyZxVzM53Pv7FVH6Tp3uVy+g0r1ImD2GjIrQGYIxjnfuXTZGICS5k/bBwJoubwEFX4TLah9EXomJGMA3za+f9913Yl4TnzsDQ+vE6YTZOjHh4ngibstt1pzQwd04F0bPStEBpXqRoBeQ/AKghfBnOEKgS+Q7z91Xfdz/HGKg8Ox7z8iYD9z6wqTkZFgnvhMGP9VZ2or1XVkPM9z0mytSfVsHa1RLBZbLoyNzUnK+ydz3wC6I9x+lwbngwAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-poly-draw{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjglo9eZgwAAAc5JREFUWMPt1zFrU1EUB/DfS4OmVTGDIChCP4BgnQXRxVHqIJUupp9AB8VBQcRBQUXIB9DWQoMRiXZzcnQSA34A7aAuHSJKkgo2LvfBrU3aJnlYkBy4vHcP557zP/9z3r33JdXa647N0kHSZd5Nn0rSxc8G3cXp85sMcnZZ8vge3osZ+l3vB8CWFA0iL14t79h210swAjACMAIwAjACkB90D/8/GchI9ve4nPwTBh5E9ws7OepzGWb9EddSn51Op9ZstadSg4VK1UKlKkmSDSMLALewiuNh/hVJq71Wxttmqz0dG88vPc+MgWP4grvYG3SLOBrZFFFrttqPe4HIDxh4GSei+98iSlusuYopXEAjBtEPA3tQwUpwluAbDm4TPJUz+BTW9l2Ce6G7L0X/Bw8D3T/7SKKIDzHg7QCcxjvcQAEtXAnrrg/RP0/DKPbqgcN4iVOR7gcO4dcQgRuoh7HSqwlP4n20m63jJu5n8MkWMYfP3UowhzdR8FU8w9iQwevBdyq3/27CMRzAE5yLuvsRLg+ZcR1nJ8YL81HWJUzGAPaFZwe/Q5MdyYDyNHgjzO90YyGHtVDncuiJchaHw8R4oREFV5qdiVmYLM3OgD9k5209/atmIAAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-point-draw{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEiERGWPELgAAA4RJREFUWMO1lr1uG1cQhb9ztdRSP7AF1QxgwKlcuZSqRC9gWUUUINWqTh5AnaFOnVPEteQmRuhCURqWsSqqc9IolREXdEvQBElxtdw7KURSFEVKu4w8wAKLxdw9Z+bMnRmZGXfZ29//II8th4WwGVNyIoQLYB5vxA9Caq04iUd9A+7ZlsNC2I7TdSd2hZXMJKlnTqp9jtl/GBaqoyQ0noFKpUIzBicYYc+DEFpxkglc4oVJa5gvDn8v1xV2irG3FM4NSVwjUKlUaMcpJhCGmSEJQ6QGD8M5WnHCd8+f3QCXpPLx8WNwv0j6Bm9FMK7FJ3WBE+R/2t7c/GBmFvSBrzRTCsyTDjXrxUgEMtpxynJYmJoBJ4VAybwVARgvL7Oik0okCodnKpVKX7P0leiVMb0VvbJT+upznK4vh0GIeQwwQStJkHQD3MwsCALTJRG7Qrdrj5m/djgYaIa0hlkRdJk26XEgC9txurccBtVW3IudBImmZuACUP+ZlIDBt9FKcubYNTcAH/X0RYM1E7utJPlqe+uZzPxUcEkiSS4sTT95n15Mud0xWC0o2PAWOCdK3KYZlFxfM+tHOcnMzNr1es18ug+cgsVjP4yBU/Ppfrter1m/+l0+zYygML1xRVHU7TSb1cSzBzoBzszsH+AMdJJ49jrNZjWKou6wBnwOzcyndBpNbuueURR1Dw8Pq35p9cc5p/Dy9Dypt7jXrtdGwQECS9NPhr6Gq6txUzNigE6zydLK6lTw12/KT4FGFEUfJX2YJNONq5tVs4ODA7sD/DnwJ/BoADZuE3tHFs12dna6d4C/BI6AlbyzI8ii2TTw12/KK33gb2cdXsNZoAntbZC2SeO4c9592k/5eNQbiwvFd1kJuFGwLJr1wSPg/SwpvyFBHufOeXcFeAlE97U/uCxOY+P3b+Bn4B3Q+L8EdJfD4a+/AbC4UBzPxiPg3wlHZquB28Cn2IuR9x3gr3uV4DbwfvSDOvi4uFA8BDZmIRHkjHpS9Ht9iRqd8+5G3g05mAGcQbsdiX5QJ428G7Kygo8XYdb1/K4NWVmjzkNge2sz84bs+ELmpDDLtqWsNZBXgvmw8CTtpWVMT7x5YWBjLARnwZfKQNYN2U2LPvrh+5nBt7c2M2/It9bArCTKR8eZN+SJ13AScPnoODeRdqNenH+wul5w2gUr2WUjMFAt8bZ/0axX/wNnv4H8vTFb1QAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-poly-edit{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gELFi46qJmxxAAABV9JREFUWMOdl19vFFUYxn9n9u9sCyylUIzWUoMQBAWCMdEEIt6xIRQSLIEKtvHe6AcA4yeQb7CAUNJy0daLeomJN8SEULAC2kBBapBKoLvbmdl/c14vdmY7u91tF95kknPOnHmf95znPc97Ro2OTeBbdjFDT3c32ZxVHUOE9kSMB0/m6ExuoJn1H+ur6Y+OTfD50SMN5168OgrAlyf7CfuD+z7+iDs3p8hkLUQ0iFQ/yFl5Nm/qonfHVva+s32Zw9GxCYILsZ08tpNfBhbs+1YN4OH9+7huGdECSBVfqUosbsllfmauBqiR+cCNwOr7AEo8pPHJnymXykhg5fUWjoQpl0vVvhZhbSzGoUOHqgBlt6B6uruj2Zy1E9jo0fhfeyL2x4Mnc8VErK0KUEOB64JSyptfG4RSytsJjUJVxw2lsFy3urL9nx1Qd25ObctkrVMi+jQivd7U2ZyV/3Hzpq7h3h1b/7p9Y0o8v8rwAbTWrGpSocN/FGDlbAI0Rl23PCBan0Ok158H9Ipwzi25A/Mzc9Gl/BYx/E4kYqC1NKRARNAaDCNUM27Z+Zr+ouXs0q4+LSLBHPYCFkTkC6uU39kwCdsS7WRKmaYUiAhdnZ3MPX2K4+QjQI+C94A93rMzm8ltMwyDeDzWjMZeEb2pYQDdW3vITU2jtUZ5QThOPgm8C7wP7J15OPsBsB3oWpGnVWisCeDS1VHj4vBI92+/3tgB7Ab2AruAXiDBK5oIOkhtkEYRNRuJhObrd8Dl9ewf4D5wG7hVLpen29vb5wzD+BrkbBMaL3d1dk5nsrnlFDTTFWAWmAZueWD3gCemGde2k2fw1Al1YXhEvjozoO49eczdqekrWmsc2zlrmvEKOGoW1GUjFLqSk2KpJrCLwyMCPAP+BO54QL8DM6YZX/ClsP9YnwKkXnIBP4jdIpJRpdJTCYdMwwi98KU0Hjc/dDILNyUcwTCWdOSMJ0TRmBktGRhLugu0xyLk7CIqVNm+0bGJptl1YXikD0grpY4Rjc4a8Fbgdab/6OGbAJeCUuyJnnHmZH9pbSyGuBXV8NUwlUpR1EWyixmSyTWEwqGlJ2Swbo2JXbAAfgDGgGQA9I1A9t1tlq0AxrXxn0ilUpw4fhQqYkH/sT41OTnJJwf2s6FjI5mshdYa7bqVR2uezr9MJmJt14FvGrh/O9D+e6UkM/xyCuCqEKCYnJyUTKFQrZDHjxzGshwWLQcRsOz8Hi85P23id0ug/XilAMLBmm4tPGdoaKjSH5+oAGrhwvBI9SjZTn4QSK9yenoD7dlrExPoJlXW8G8ytpNHxRKk02lGxsdRKFwXLNvx5yY94HQLGhGk4LFCYQSqaE0AwWM1eOoEbR0dKBSW7bC4mKuffxs4D/wCLKwQQPAUzIkslfp6cVomROWSolh0GjldAM4nzDi2k9/i5UAzC9aKfwNJ3zgJg9YEvN6+C7SHgKm69+sD7RfNnKTTaZRPQfAut4oFV//IS7gkcB34VlVo8kGzphlfB+DU+TfNGBpZtRastvrvARJmfMF28ge9sc2B9/PNnCilMIDwK6y8/ow/Ai4kvILTljAXvDvEvrqKSUs60KolzPjBxspavQD2tKqCAGF/Ba+xE/Wbilu54wZV8NEKF5fXzQHl/bh4hUsE0WAXSlDMYcQSrQXgCmsTseXHsJkNnjqBFGwKJaHsKlxtUHYVhbLCzr1kaOA4bcn1y1Swmb+iLpJKpVrfgdpfsiVVCYcgluwgnU7jEgJ4s5UkLFtWYyHyEg0/N1q1tmQH+YXnAMFr97Nmv3p+0QsHQRsF8qpBOE5+rb9Nkaj50tVQKjqh4OU3GNL/1/So3vuUgbAAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-line-edit{background-image:url(\"data:image/png;base64,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\");}'},\n", " function _(o,r,e,t,b){t(),e.root=\"bk-root\",e.menu_icon=\"bk-menu-icon\",e.context_menu=\"bk-context-menu\",e.horizontal=\"bk-horizontal\",e.vertical=\"bk-vertical\",e.divider=\"bk-divider\",e.active=\"bk-active\",e.menu=\"bk-menu\",e.above=\"bk-above\",e.below=\"bk-below\",e.caret=\"bk-caret\",e.down=\"bk-down\",e.up=\"bk-up\",e.left=\"bk-left\",e.right=\"bk-right\",e.default=\".bk-root .bk-menu-icon{width:28px;height:28px;background-size:60%;background-color:transparent;background-repeat:no-repeat;background-position:center center;}.bk-root .bk-context-menu{position:absolute;display:inline-flex;display:-webkit-inline-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;width:auto;height:auto;z-index:100;cursor:pointer;font-size:12px;background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);}.bk-root .bk-context-menu.bk-horizontal{flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-context-menu.bk-vertical{flex-direction:column;-webkit-flex-direction:column;}.bk-root .bk-context-menu > .bk-divider{cursor:default;overflow:hidden;background-color:#e5e5e5;}.bk-root .bk-context-menu.bk-horizontal > .bk-divider{width:1px;margin:5px 0;}.bk-root .bk-context-menu.bk-vertical > .bk-divider{height:1px;margin:0 5px;}.bk-root .bk-context-menu > :not(.bk-divider){border:1px solid transparent;}.bk-root .bk-context-menu > :not(.bk-divider).bk-active{border-color:#26aae1;}.bk-root .bk-context-menu > :not(.bk-divider):hover{background-color:#f9f9f9;}.bk-root .bk-context-menu.bk-horizontal > :not(.bk-divider):first-child{border-top-left-radius:4px;border-bottom-left-radius:4px;}.bk-root .bk-context-menu.bk-horizontal > :not(.bk-divider):last-child{border-top-right-radius:4px;border-bottom-right-radius:4px;}.bk-root .bk-context-menu.bk-vertical > :not(.bk-divider):first-child{border-top-left-radius:4px;border-top-right-radius:4px;}.bk-root .bk-context-menu.bk-vertical > :not(.bk-divider):last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;}.bk-root .bk-menu{position:absolute;left:0;width:100%;z-index:100;cursor:pointer;font-size:12px;background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);}.bk-root .bk-menu.bk-above{bottom:100%;}.bk-root .bk-menu.bk-below{top:100%;}.bk-root .bk-menu > .bk-divider{height:1px;margin:7.5px 0;overflow:hidden;background-color:#e5e5e5;}.bk-root .bk-menu > :not(.bk-divider){padding:6px 12px;}.bk-root .bk-menu > :not(.bk-divider):hover,.bk-root .bk-menu > :not(.bk-divider).bk-active{background-color:#e6e6e6;}.bk-root .bk-caret{display:inline-block;vertical-align:middle;width:0;height:0;margin:0 5px;}.bk-root .bk-caret.bk-down{border-top:4px solid;}.bk-root .bk-caret.bk-up{border-bottom:4px solid;}.bk-root .bk-caret.bk-down,.bk-root .bk-caret.bk-up{border-right:4px solid transparent;border-left:4px solid transparent;}.bk-root .bk-caret.bk-left{border-right:4px solid;}.bk-root .bk-caret.bk-right{border-left:4px solid;}.bk-root .bk-caret.bk-left,.bk-root .bk-caret.bk-right{border-top:4px solid transparent;border-bottom:4px solid transparent;}\"},\n", " function _(t,e,i,n,s){n();const o=t(1),l=t(43),h=t(245),d=o.__importStar(t(243));class r{constructor(t,e={}){this.items=t,this.options=e,this.el=l.div(),this._open=!1,this._item_click=t=>{var e;null===(e=this.items[t])||void 0===e||e.handler(),this.hide()},this._on_mousedown=t=>{var e,i;const{target:n}=t;n instanceof Node&&this.el.contains(n)||(null===(i=(e=this.options).prevent_hide)||void 0===i?void 0:i.call(e,t))||this.hide()},this._on_keydown=t=>{t.keyCode==l.Keys.Esc&&this.hide()},this._on_blur=()=>{this.hide()},l.undisplay(this.el)}get is_open(){return this._open}get can_open(){return 0!=this.items.length}remove(){l.remove(this.el),this._unlisten()}_listen(){document.addEventListener(\"mousedown\",this._on_mousedown),document.addEventListener(\"keydown\",this._on_keydown),window.addEventListener(\"blur\",this._on_blur)}_unlisten(){document.removeEventListener(\"mousedown\",this._on_mousedown),document.removeEventListener(\"keydown\",this._on_keydown),window.removeEventListener(\"blur\",this._on_blur)}_position(t){const e=this.el.parentElement;if(null!=e){const i=e.getBoundingClientRect();this.el.style.left=null!=t.left?t.left-i.left+\"px\":\"\",this.el.style.top=null!=t.top?t.top-i.top+\"px\":\"\",this.el.style.right=null!=t.right?i.right-t.right+\"px\":\"\",this.el.style.bottom=null!=t.bottom?i.bottom-t.bottom+\"px\":\"\"}}render(){var t,e;l.empty(this.el,!0);const i=null!==(t=this.options.orientation)&&void 0!==t?t:\"vertical\";l.classes(this.el).add(\"bk-context-menu\",`bk-${i}`);for(const[t,i]of h.enumerate(this.items)){let n;if(null==t)n=l.div({class:d.divider});else{if(null!=t.if&&!t.if())continue;{const i=null!=t.icon?l.div({class:[\"bk-menu-icon\",t.icon]}):null;n=l.div({class:(null===(e=t.active)||void 0===e?void 0:e.call(t))?\"bk-active\":null,title:t.tooltip},i,t.label)}}n.addEventListener(\"click\",(()=>this._item_click(i))),this.el.appendChild(n)}}show(t){if(0!=this.items.length&&!this._open){if(this.render(),0==this.el.children.length)return;this._position(null!=t?t:{left:0,top:0}),l.display(this.el),this._listen(),this._open=!0}}hide(){this._open&&(this._open=!1,this._unlisten(),l.undisplay(this.el))}toggle(t){this._open?this.hide():this.show(t)}}i.ContextMenu=r,r.__name__=\"ContextMenu\"},\n", " function _(n,e,o,t,r){t();const f=n(9);function*i(n,e){const o=n.length;if(e>o)return;const t=f.range(e);for(yield t.map((e=>n[e]));;){let r;for(const n of f.reversed(f.range(e)))if(t[n]!=n+o-e){r=n;break}if(null==r)return;t[r]+=1;for(const n of f.range(r+1,e))t[n]=t[n-1]+1;yield t.map((e=>n[e]))}}o.enumerate=function*(n){let e=0;for(const o of n)yield[o,e++]},o.combinations=i,o.subsets=function*(n){for(const e of f.range(n.length+1))yield*i(n,e)}},\n", " function _(t,e,i,n,o){n();const s=t(1),c=t(238),l=s.__importStar(t(241)),a=t(43);class _ extends c.ButtonToolButtonView{render(){super.render(),a.classes(this.el).toggle(l.active,this.model.active)}_clicked(){const{active:t}=this.model;this.model.active=!t}}i.OnOffButtonView=_,_.__name__=\"OnOffButtonView\"},\n", " function _(t,e,o,n,s){n();const i=t(238),c=t(246);class l extends i.ButtonToolView{}o.InspectToolView=l,l.__name__=\"InspectToolView\";class _ extends i.ButtonTool{constructor(t){super(t),this.event_type=\"move\"}static init_InspectTool(){this.prototype.button_view=c.OnOffButtonView,this.define((({Boolean:t})=>({toggleable:[t,!0]}))),this.override({active:!0})}}o.InspectTool=_,_.__name__=\"InspectTool\",_.init_InspectTool()},\n", " function _(t,o,e,i,s){i();const l=t(1),n=t(19),a=t(43),r=t(122),c=t(240),_=t(20),u=t(9),h=t(13),v=t(8),p=t(249),d=t(99),b=t(53),g=t(236),f=t(237),m=t(251),w=t(252),y=t(247),T=l.__importStar(t(241)),z=T,B=l.__importStar(t(253)),x=B;class L extends b.Model{constructor(t){super(t)}static init_ToolbarViewModel(){this.define((({Boolean:t,Nullable:o})=>({_visible:[o(t),null],autohide:[t,!1]})))}get visible(){return!this.autohide||null!=this._visible&&this._visible}}e.ToolbarViewModel=L,L.__name__=\"ToolbarViewModel\",L.init_ToolbarViewModel();class M extends c.DOMView{constructor(){super(...arguments),this.layout={bbox:new d.BBox}}initialize(){super.initialize(),this._tool_button_views=new Map,this._toolbar_view_model=new L({autohide:this.model.autohide})}async lazy_initialize(){await super.lazy_initialize(),await this._build_tool_button_views()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.tools.change,(async()=>{await this._build_tool_button_views(),this.render()})),this.connect(this.model.properties.autohide.change,(()=>{this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change()})),this.connect(this._toolbar_view_model.properties._visible.change,(()=>this._on_visible_change()))}styles(){return[...super.styles(),T.default,B.default]}remove(){r.remove_views(this._tool_button_views),super.remove()}async _build_tool_button_views(){const t=null!=this.model._proxied_tools?this.model._proxied_tools:this.model.tools;await r.build_views(this._tool_button_views,t,{parent:this},(t=>t.button_view))}set_visibility(t){t!=this._toolbar_view_model._visible&&(this._toolbar_view_model._visible=t)}_on_visible_change(){const t=this._toolbar_view_model.visible,o=z.toolbar_hidden;this.el.classList.contains(o)&&t?this.el.classList.remove(o):t||this.el.classList.add(o)}render(){if(a.empty(this.el),this.el.classList.add(z.toolbar),this.el.classList.add(z[this.model.toolbar_location]),this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change(),null!=this.model.logo){const t=\"grey\"===this.model.logo?x.grey:null,o=a.a({href:\"https://bokeh.org/\",target:\"_blank\",class:[x.logo,x.logo_small,t]});this.el.appendChild(o)}for(const[,t]of this._tool_button_views)t.render();const t=[],o=t=>this._tool_button_views.get(t).el,{gestures:e}=this.model;for(const i of h.values(e))t.push(i.tools.map(o));t.push(this.model.actions.map(o)),t.push(this.model.inspectors.filter((t=>t.toggleable)).map(o));for(const o of t)if(0!==o.length){const t=a.div({class:z.button_bar},o);this.el.appendChild(t)}}update_layout(){}update_position(){}after_layout(){this._has_finished=!0}export(t,o=!0){const e=\"png\"==t?\"canvas\":\"svg\",i=new p.CanvasLayer(e,o);return i.resize(0,0),i}}function V(){return{pan:{tools:[],active:null},scroll:{tools:[],active:null},pinch:{tools:[],active:null},tap:{tools:[],active:null},doubletap:{tools:[],active:null},press:{tools:[],active:null},pressup:{tools:[],active:null},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}}}e.ToolbarBaseView=M,M.__name__=\"ToolbarBaseView\";class S extends b.Model{constructor(t){super(t)}static init_ToolbarBase(){this.prototype.default_view=M,this.define((({Boolean:t,Array:o,Ref:e,Nullable:i})=>({tools:[o(e(g.Tool)),[]],logo:[i(_.Logo),\"normal\"],autohide:[t,!1]}))),this.internal((({Array:t,Struct:o,Ref:e,Nullable:i})=>{const s=o({tools:t(e(f.GestureTool)),active:i(e(g.Tool))});return{gestures:[o({pan:s,scroll:s,pinch:s,tap:s,doubletap:s,press:s,pressup:s,rotate:s,move:s,multi:s}),V],actions:[t(e(m.ActionTool)),[]],inspectors:[t(e(y.InspectTool)),[]],help:[t(e(w.HelpTool)),[]],toolbar_location:[_.Location,\"right\"]}}))}initialize(){super.initialize(),this._init_tools()}_init_tools(){const t=function(t,o){if(t.length!=o.length)return!0;const e=new Set(o.map((t=>t.id)));return u.some(t,(t=>!e.has(t.id)))},o=this.tools.filter((t=>t instanceof y.InspectTool));t(this.inspectors,o)&&(this.inspectors=o);const e=this.tools.filter((t=>t instanceof w.HelpTool));t(this.help,e)&&(this.help=e);const i=this.tools.filter((t=>t instanceof m.ActionTool));t(this.actions,i)&&(this.actions=i);const s=(t,o)=>{t in this.gestures||n.logger.warn(`Toolbar: unknown event type '${t}' for tool: ${o}`)},l={pan:{tools:[],active:null},scroll:{tools:[],active:null},pinch:{tools:[],active:null},tap:{tools:[],active:null},doubletap:{tools:[],active:null},press:{tools:[],active:null},pressup:{tools:[],active:null},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}};for(const t of this.tools)if(t instanceof f.GestureTool&&t.event_type)if(v.isString(t.event_type))l[t.event_type].tools.push(t),s(t.event_type,t);else{l.multi.tools.push(t);for(const o of t.event_type)s(o,t)}for(const o of Object.keys(l)){const e=this.gestures[o];t(e.tools,l[o].tools)&&(e.tools=l[o].tools),e.active&&u.every(e.tools,(t=>t.id!=e.active.id))&&(e.active=null)}}get horizontal(){return\"above\"===this.toolbar_location||\"below\"===this.toolbar_location}get vertical(){return\"left\"===this.toolbar_location||\"right\"===this.toolbar_location}_active_change(t){const{event_type:o}=t;if(null==o)return;const e=v.isString(o)?[o]:o;for(const o of e)if(t.active){const e=this.gestures[o].active;null!=e&&t!=e&&(n.logger.debug(`Toolbar: deactivating tool: ${e} for event type '${o}'`),e.active=!1),this.gestures[o].active=t,n.logger.debug(`Toolbar: activating tool: ${t} for event type '${o}'`)}else this.gestures[o].active=null}}e.ToolbarBase=S,S.__name__=\"ToolbarBase\",S.init_ToolbarBase()},\n", " function _(e,t,i,n,s){n();const o=e(250),a=e(99),r=e(43);function h(e){!function(e){void 0===e.lineDash&&Object.defineProperty(e,\"lineDash\",{get:()=>e.getLineDash(),set:t=>e.setLineDash(t)})}(e),function(e){e.setImageSmoothingEnabled=t=>{e.imageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t,e.oImageSmoothingEnabled=t,e.webkitImageSmoothingEnabled=t,e.msImageSmoothingEnabled=t},e.getImageSmoothingEnabled=()=>{const t=e.imageSmoothingEnabled;return null==t||t}}(e),function(e){e.ellipse||(e.ellipse=function(t,i,n,s,o,a,r,h=!1){const l=.551784;e.translate(t,i),e.rotate(o);let c=n,g=s;h&&(c=-n,g=-s),e.moveTo(-c,0),e.bezierCurveTo(-c,g*l,-c*l,g,0,g),e.bezierCurveTo(c*l,g,c,g*l,c,0),e.bezierCurveTo(c,-g*l,c*l,-g,0,-g),e.bezierCurveTo(-c*l,-g,-c,-g*l,-c,0),e.rotate(-o),e.translate(-t,-i)})}(e)}const l={position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"};class c{constructor(e,t){switch(this.backend=e,this.hidpi=t,this.pixel_ratio=1,this.bbox=new a.BBox,e){case\"webgl\":case\"canvas\":{this._el=this._canvas=r.canvas({style:l});const e=this.canvas.getContext(\"2d\");if(null==e)throw new Error(\"unable to obtain 2D rendering context\");this._ctx=e,t&&(this.pixel_ratio=devicePixelRatio);break}case\"svg\":{const e=new o.SVGRenderingContext2D;this._ctx=e,this._canvas=e.get_svg(),this._el=r.div({style:l},this._canvas);break}}h(this._ctx)}get canvas(){return this._canvas}get ctx(){return this._ctx}get el(){return this._el}resize(e,t){this.bbox=new a.BBox({left:0,top:0,width:e,height:t});const i=this._ctx instanceof o.SVGRenderingContext2D?this._ctx:this.canvas;i.width=e*this.pixel_ratio,i.height=t*this.pixel_ratio}prepare(){const{ctx:e,hidpi:t,pixel_ratio:i}=this;e.save(),t&&(e.scale(i,i),e.translate(.5,.5)),this.clear()}clear(){const{x:e,y:t,width:i,height:n}=this.bbox;this.ctx.clearRect(e,t,i,n)}finish(){this.ctx.restore()}to_blob(){const{_canvas:e}=this;if(e instanceof HTMLCanvasElement)return null!=e.msToBlob?Promise.resolve(e.msToBlob()):new Promise(((t,i)=>{e.toBlob((e=>null!=e?t(e):i()),\"image/png\")}));{const e=this._ctx.get_serialized_svg(!0),t=new Blob([e],{type:\"image/svg+xml\"});return Promise.resolve(t)}}}i.CanvasLayer=c,c.__name__=\"CanvasLayer\"},\n", " function _(t,e,i,s,n){s();const r=t(168),a=t(8),o=t(43);function l(t){if(!t)throw new Error(\"cannot create a random attribute name for an undefined object\");const e=\"ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz\";let i=\"\";do{i=\"\";for(let t=0;t<12;t++)i+=e[Math.floor(Math.random()*e.length)]}while(t[i]);return i}function h(t){var e;const i={left:\"start\",right:\"end\",center:\"middle\",start:\"start\",end:\"end\"};return null!==(e=i[t])&&void 0!==e?e:i.start}function c(t){var e;const i={alphabetic:\"alphabetic\",hanging:\"hanging\",top:\"text-before-edge\",bottom:\"text-after-edge\",middle:\"central\"};return null!==(e=i[t])&&void 0!==e?e:i.alphabetic}const _=function(t,e){const i=new Map,s=t.split(\",\");e=null!=e?e:10;for(let t=0;t<s.length;t+=2){const n=\"&\"+s[t+1]+\";\",r=parseInt(s[t],e);i.set(n,\"&#\"+r+\";\")}return i.set(\"\\\\xa0\",\" \"),i}(\"50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro\",32),u={strokeStyle:{svgAttr:\"stroke\",canvas:\"#000000\",svg:\"none\",apply:\"stroke\"},fillStyle:{svgAttr:\"fill\",canvas:\"#000000\",svg:null,apply:\"fill\"},lineCap:{svgAttr:\"stroke-linecap\",canvas:\"butt\",svg:\"butt\",apply:\"stroke\"},lineJoin:{svgAttr:\"stroke-linejoin\",canvas:\"miter\",svg:\"miter\",apply:\"stroke\"},miterLimit:{svgAttr:\"stroke-miterlimit\",canvas:10,svg:4,apply:\"stroke\"},lineWidth:{svgAttr:\"stroke-width\",canvas:1,svg:1,apply:\"stroke\"},globalAlpha:{svgAttr:\"opacity\",canvas:1,svg:1,apply:\"fill stroke\"},font:{canvas:\"10px sans-serif\"},shadowColor:{canvas:\"#000000\"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:\"start\"},textBaseline:{canvas:\"alphabetic\"},lineDash:{svgAttr:\"stroke-dasharray\",canvas:[],svg:null,apply:\"stroke\"}};class p{constructor(t,e){this.__root=t,this.__ctx=e}addColorStop(t,e){const i=this.__ctx.__createElement(\"stop\");if(i.setAttribute(\"offset\",`${t}`),-1!==e.indexOf(\"rgba\")){const t=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(e),[,s,n,r,a]=t;i.setAttribute(\"stop-color\",`rgb(${s},${n},${r})`),i.setAttribute(\"stop-opacity\",a)}else i.setAttribute(\"stop-color\",e);this.__root.appendChild(i)}}p.__name__=\"CanvasGradient\";class d{constructor(t,e){this.__root=t,this.__ctx=e}}d.__name__=\"CanvasPattern\";class m{constructor(t){var e,i,s;this.__currentPosition=null,this._transform=new r.AffineTransform,this._clip_path=null,this.__document=null!==(e=null==t?void 0:t.document)&&void 0!==e?e:document,(null==t?void 0:t.ctx)?this.__ctx=t.ctx:(this.__canvas=this.__document.createElement(\"canvas\"),this.__ctx=this.__canvas.getContext(\"2d\")),this.__setDefaultStyles(),this.__stack=[],this.__root=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\"),this.__root.setAttribute(\"version\",\"1.1\"),this.__root.setAttribute(\"xmlns\",\"http://www.w3.org/2000/svg\"),this.__root.setAttributeNS(\"http://www.w3.org/2000/xmlns/\",\"xmlns:xlink\",\"http://www.w3.org/1999/xlink\"),this.width=null!==(i=null==t?void 0:t.width)&&void 0!==i?i:500,this.height=null!==(s=null==t?void 0:t.height)&&void 0!==s?s:500,this.__ids={},this.__defs=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this.__root.appendChild(this.__defs)}get canvas(){return this}get width(){return this._width}set width(t){this._width=t,this.__root.setAttribute(\"width\",`${t}`)}get height(){return this._height}set height(t){this._height=t,this.__root.setAttribute(\"height\",`${t}`)}__createElement(t,e={},i=!1){const s=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",t);i&&(s.setAttribute(\"fill\",\"none\"),s.setAttribute(\"stroke\",\"none\"));const n=Object.keys(e);for(const t of n)s.setAttribute(t,`${e[t]}`);return s}__setDefaultStyles(){const t=Object.keys(u),e=this;for(let i=0;i<t.length;i++){const s=t[i];e[s]=u[s].canvas}}__applyStyleState(t){const e=Object.keys(t),i=this;for(let s=0;s<e.length;s++){const n=e[s];i[n]=t[n]}}__getStyleState(){const t=Object.keys(u),e={};for(let i=0;i<t.length;i++){const s=t[i];e[s]=this[s]}return e}__applyStyleToCurrentElement(t){var e;const i=this.__currentElement,s=Object.keys(u);for(let n=0;n<s.length;n++){const r=u[s[n]],o=this[s[n]];if(null===(e=r.apply)||void 0===e?void 0:e.includes(t))if(o instanceof d){for(const t of[...o.__ctx.__defs.childNodes])if(t instanceof Element){const e=t.getAttribute(\"id\");this.__ids[e]=e,this.__defs.appendChild(t)}const t=o.__root.getAttribute(\"id\");i.setAttribute(r.apply,`url(#${t})`)}else if(o instanceof p){const t=o.__root.getAttribute(\"id\");i.setAttribute(r.apply,`url(#${t})`)}else if(r.svg!==o)if(\"stroke\"!==r.svgAttr&&\"fill\"!==r.svgAttr||!a.isString(o)||-1===o.indexOf(\"rgba\")){let e=r.svgAttr;if(\"globalAlpha\"===s[n]&&(e=t+\"-\"+r.svgAttr,i.getAttribute(e)))continue;i.setAttribute(e,`${o}`)}else{const t=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(o),[,e,s,n,a]=t;i.setAttribute(r.svgAttr,`rgb(${e},${s},${n})`);let l=parseFloat(a);const h=this.globalAlpha;null!=h&&(l*=h),i.setAttribute(r.svgAttr+\"-opacity\",`${l}`)}}}get_serialized_svg(t=!1){let e=(new XMLSerializer).serializeToString(this.__root);if(/xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg\".+xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg/gi.test(e)&&(e=e.replace('xmlns=\"http://www.w3.org/2000/svg','xmlns:xlink=\"http://www.w3.org/1999/xlink')),t)for(const[t,i]of _){const s=new RegExp(t,\"gi\");s.test(e)&&(e=e.replace(s,i))}return e}get_svg(){return this.__root}save(){this.__stack.push({transform:this._transform,clip_path:this._clip_path,attributes:this.__getStyleState()}),this._transform=this._transform.clone()}restore(){if(0==this.__stack.length)return;const{transform:t,clip_path:e,attributes:i}=this.__stack.pop();this._transform=t,this._clip_path=e,this.__applyStyleState(i)}_apply_transform(t,e=this._transform){e.is_identity||t.setAttribute(\"transform\",e.toString())}scale(t,e){isFinite(t)&&(null==e||isFinite(e))&&this._transform.scale(t,null!=e?e:t)}rotate(t){isFinite(t)&&this._transform.rotate(t)}translate(t,e){isFinite(t+e)&&this._transform.translate(t,e)}transform(t,e,i,s,n,r){isFinite(t+e+i+s+n+r)&&this._transform.transform(t,e,i,s,n,r)}beginPath(){this.__currentDefaultPath=\"\",this.__currentPosition=null;const t=this.__createElement(\"path\",{},!0);this.__root.appendChild(t),this.__currentElement=t}__applyCurrentDefaultPath(){const t=this.__currentElement;\"path\"===t.nodeName?t.setAttribute(\"d\",this.__currentDefaultPath):console.error(\"Attempted to apply path command to node\",t.nodeName)}__addPathCommand(t,e,i){const s=this.__currentDefaultPath?\" \":\"\";this.__currentDefaultPath+=s+i,this.__currentPosition={x:t,y:e}}get _hasCurrentDefaultPath(){return!!this.__currentDefaultPath}moveTo(t,e){if(!isFinite(t+e))return;\"path\"!==this.__currentElement.nodeName&&this.beginPath();const[i,s]=this._transform.apply(t,e);this.__addPathCommand(i,s,`M ${i} ${s}`)}closePath(){this._hasCurrentDefaultPath&&this.__addPathCommand(NaN,NaN,\"Z\")}lineTo(t,e){if(isFinite(t+e))if(this._hasCurrentDefaultPath){const[i,s]=this._transform.apply(t,e);this.__addPathCommand(i,s,`L ${i} ${s}`)}else this.moveTo(t,e)}bezierCurveTo(t,e,i,s,n,r){if(!isFinite(t+e+i+s+n+r))return;const[a,o]=this._transform.apply(n,r),[l,h]=this._transform.apply(t,e),[c,_]=this._transform.apply(i,s);this.__addPathCommand(a,o,`C ${l} ${h} ${c} ${_} ${a} ${o}`)}quadraticCurveTo(t,e,i,s){if(!isFinite(t+e+i+s))return;const[n,r]=this._transform.apply(i,s),[a,o]=this._transform.apply(t,e);this.__addPathCommand(n,r,`Q ${a} ${o} ${n} ${r}`)}arcTo(t,e,i,s,n){if(!isFinite(t+e+i+s+n))return;if(null==this.__currentPosition)return;const r=this.__currentPosition.x,a=this.__currentPosition.y;if(n<0)throw new Error(\"IndexSizeError: The radius provided (\"+n+\") is negative.\");if(r===t&&a===e||t===i&&e===s||0===n)return void this.lineTo(t,e);function o([t,e]){const i=Math.sqrt(t**2+e**2);return[t/i,e/i]}const l=o([r-t,a-e]),h=o([i-t,s-e]);if(l[0]*h[1]==l[1]*h[0])return void this.lineTo(t,e);const c=l[0]*h[0]+l[1]*h[1],_=Math.acos(Math.abs(c)),u=o([l[0]+h[0],l[1]+h[1]]),p=n/Math.sin(_/2),d=t+p*u[0],m=e+p*u[1],f=[-l[1],l[0]],g=[h[1],-h[0]];function v(t){const e=t[0];return t[1]>=0?Math.acos(e):-Math.acos(e)}const w=v(f),b=v(g);this.lineTo(d+f[0]*n,m+f[1]*n),this.arc(d,m,n,w,b)}stroke(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"fill\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"stroke\"),null!=this._clip_path&&this.__currentElement.setAttribute(\"clip-path\",this._clip_path)}fill(t){if(\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"stroke\"),\"none\"!=this.__currentElement.getAttribute(\"fill\")){const t=this.__currentElement.cloneNode(!0);this.__root.appendChild(t),this.__currentElement=t}this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"fill\"),null!=t&&this.__currentElement.setAttribute(\"fill-rule\",t),null!=this._clip_path&&this.__currentElement.setAttribute(\"clip-path\",this._clip_path)}rect(t,e,i,s){isFinite(t+e+i+s)&&(\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+s),this.lineTo(t,e+s),this.lineTo(t,e))}fillRect(t,e,i,s){isFinite(t+e+i+s)&&(this.beginPath(),this.rect(t,e,i,s),this.fill())}strokeRect(t,e,i,s){isFinite(t+e+i+s)&&(this.beginPath(),this.rect(t,e,i,s),this.stroke())}__clearCanvas(){o.empty(this.__defs),o.empty(this.__root),this.__root.appendChild(this.__defs),this.__currentElement=this.__root}clearRect(t,e,i,s){if(!isFinite(t+e+i+s))return;if(0===t&&0===e&&i===this.width&&s===this.height)return void this.__clearCanvas();const n=this.__createElement(\"rect\",{x:t,y:e,width:i,height:s,fill:\"#FFFFFF\"},!0);this._apply_transform(n),this.__root.appendChild(n)}createLinearGradient(t,e,i,s){if(!isFinite(t+e+i+s))throw new Error(\"The provided double value is non-finite\");const[n,r]=this._transform.apply(t,e),[a,o]=this._transform.apply(i,s),h=this.__createElement(\"linearGradient\",{id:l(this.__ids),x1:`${n}px`,x2:`${a}px`,y1:`${r}px`,y2:`${o}px`,gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(h),new p(h,this)}createRadialGradient(t,e,i,s,n,r){if(!isFinite(t+e+i+s+n+r))throw new Error(\"The provided double value is non-finite\");const[a,o]=this._transform.apply(t,e),[h,c]=this._transform.apply(s,n),_=this.__createElement(\"radialGradient\",{id:l(this.__ids),cx:`${h}px`,cy:`${c}px`,r:`${r}px`,fx:`${a}px`,fy:`${o}px`,gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(_),new p(_,this)}__parseFont(){var t,e,i,s,n;const r=/^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))(?:\\s*\\/\\s*(normal|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])))?\\s*([-,\\'\\\"\\sa-z0-9]+?)\\s*$/i.exec(this.font),a={style:null!==(t=r[1])&&void 0!==t?t:\"normal\",size:null!==(e=r[4])&&void 0!==e?e:\"10px\",family:null!==(i=r[6])&&void 0!==i?i:\"sans-serif\",weight:null!==(s=r[3])&&void 0!==s?s:\"normal\",decoration:null!==(n=r[2])&&void 0!==n?n:\"normal\"};return\"underline\"===this.__fontUnderline&&(a.decoration=\"underline\"),null!=this.__fontHref&&(a.href=this.__fontHref),a}__wrapTextLink(t,e){if(t.href){const i=this.__createElement(\"a\");return i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.href),i.appendChild(e),i}return e}__applyText(t,e,i,s){const n=this.__parseFont(),r=this.__createElement(\"text\",{\"font-family\":n.family,\"font-size\":n.size,\"font-style\":n.style,\"font-weight\":n.weight,\"text-decoration\":n.decoration,x:e,y:i,\"text-anchor\":h(this.textAlign),\"dominant-baseline\":c(this.textBaseline)},!0);r.appendChild(this.__document.createTextNode(t)),this._apply_transform(r),this.__currentElement=r,this.__applyStyleToCurrentElement(s),this.__root.appendChild(this.__wrapTextLink(n,r))}fillText(t,e,i){null!=t&&isFinite(e+i)&&this.__applyText(t,e,i,\"fill\")}strokeText(t,e,i){null!=t&&isFinite(e+i)&&this.__applyText(t,e,i,\"stroke\")}measureText(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)}arc(t,e,i,s,n,r=!1){if(!isFinite(t+e+i+s+n))return;if(s===n)return;(s%=2*Math.PI)===(n%=2*Math.PI)&&(n=(n+2*Math.PI-.001*(r?-1:1))%(2*Math.PI));const a=t+i*Math.cos(n),o=e+i*Math.sin(n),l=t+i*Math.cos(s),h=e+i*Math.sin(s),c=r?0:1;let _=0,u=n-s;u<0&&(u+=2*Math.PI),_=r?u>Math.PI?0:1:u>Math.PI?1:0,this.lineTo(l,h);const p=i,d=i,[m,f]=this._transform.apply(a,o);this.__addPathCommand(m,f,`A ${p} ${d} 0 ${_} ${c} ${m} ${f}`)}clip(){const t=this.__createElement(\"clipPath\"),e=l(this.__ids);this.__applyCurrentDefaultPath(),t.setAttribute(\"id\",e),t.appendChild(this.__currentElement),this.__defs.appendChild(t),this._clip_path=`url(#${e})`}drawImage(t,...e){let i,s,n,r,a,o,l,h;if(2==e.length){if([i,s]=e,!isFinite(i+s))return;a=0,o=0,l=t.width,h=t.height,n=l,r=h}else if(4==e.length){if([i,s,n,r]=e,!isFinite(i+s+n+r))return;a=0,o=0,l=t.width,h=t.height}else{if(8!==e.length)throw new Error(`Inavlid number of arguments passed to drawImage: ${arguments.length}`);if([a,o,l,h,i,s,n,r]=e,!isFinite(a+o+l+h+i+s+n+r))return}const c=this.__root,_=this._transform.clone().translate(i,s);if(t instanceof m||t instanceof SVGSVGElement){const e=(t instanceof SVGSVGElement?t:t.get_svg()).cloneNode(!0);let i;_.is_identity?i=c:(i=this.__createElement(\"g\"),this._apply_transform(i,_),c.appendChild(i));for(const t of[...e.childNodes])if(t instanceof SVGDefsElement){for(const e of[...t.childNodes])if(e instanceof Element){const t=e.getAttribute(\"id\");this.__ids[t]=t,this.__defs.appendChild(e)}}else i.appendChild(t)}else if(t instanceof HTMLImageElement||t instanceof SVGImageElement){const e=this.__createElement(\"image\");if(e.setAttribute(\"width\",`${n}`),e.setAttribute(\"height\",`${r}`),e.setAttribute(\"preserveAspectRatio\",\"none\"),a||o||l!==t.width||h!==t.height){const e=this.__document.createElement(\"canvas\");e.width=n,e.height=r;e.getContext(\"2d\").drawImage(t,a,o,l,h,0,0,n,r),t=e}this._apply_transform(e,_);const i=t instanceof HTMLCanvasElement?t.toDataURL():t.getAttribute(\"src\");e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",i),c.appendChild(e)}else if(t instanceof HTMLCanvasElement){const e=this.__createElement(\"image\");e.setAttribute(\"width\",`${n}`),e.setAttribute(\"height\",`${r}`),e.setAttribute(\"preserveAspectRatio\",\"none\");const i=this.__document.createElement(\"canvas\");i.width=n,i.height=r;const s=i.getContext(\"2d\");s.imageSmoothingEnabled=!1,s.drawImage(t,a,o,l,h,0,0,n,r),t=i,this._apply_transform(e,_),e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.toDataURL()),c.appendChild(e)}}createPattern(t,e){const i=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"pattern\"),s=l(this.__ids);if(i.setAttribute(\"id\",s),i.setAttribute(\"width\",`${this._to_number(t.width)}`),i.setAttribute(\"height\",`${this._to_number(t.height)}`),i.setAttribute(\"patternUnits\",\"userSpaceOnUse\"),t instanceof HTMLCanvasElement||t instanceof HTMLImageElement||t instanceof SVGImageElement){const e=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\"),s=t instanceof HTMLCanvasElement?t.toDataURL():t.getAttribute(\"src\");e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",s),i.appendChild(e),this.__defs.appendChild(i)}else if(t instanceof m){for(const e of[...t.__root.childNodes])e instanceof SVGDefsElement||i.appendChild(e);this.__defs.appendChild(i)}else{if(!(t instanceof SVGSVGElement))throw new Error(\"unsupported\");for(const e of[...t.childNodes])e instanceof SVGDefsElement||i.appendChild(e);this.__defs.appendChild(i)}return new d(i,this)}setLineDash(t){t&&t.length>0?this.lineDash=t.join(\",\"):this.lineDash=null}_to_number(t){return a.isNumber(t)?t:t.baseVal.value}}i.SVGRenderingContext2D=m,m.__name__=\"SVGRenderingContext2D\"},\n", " function _(o,t,n,i,e){i();const s=o(238),c=o(15);class l extends s.ButtonToolButtonView{_clicked(){this.model.do.emit(void 0)}}n.ActionToolButtonView=l,l.__name__=\"ActionToolButtonView\";class _ extends s.ButtonToolView{connect_signals(){super.connect_signals(),this.connect(this.model.do,(o=>this.doit(o)))}}n.ActionToolView=_,_.__name__=\"ActionToolView\";class d extends s.ButtonTool{constructor(o){super(o),this.button_view=l,this.do=new c.Signal(this,\"do\")}}n.ActionTool=d,d.__name__=\"ActionTool\"},\n", " function _(o,e,t,i,l){i();const s=o(251),n=o(242);class r extends s.ActionToolView{doit(){window.open(this.model.redirect)}}t.HelpToolView=r,r.__name__=\"HelpToolView\";class c extends s.ActionTool{constructor(o){super(o),this.tool_name=\"Help\",this.icon=n.tool_icon_help}static init_HelpTool(){this.prototype.default_view=r,this.define((({String:o})=>({redirect:[o,\"https://docs.bokeh.org/en/latest/docs/user_guide/tools.html\"]}))),this.override({description:\"Click the question mark to learn more about Bokeh plot tools.\"}),this.register_alias(\"help\",(()=>new c))}}t.HelpTool=c,c.__name__=\"HelpTool\",c.init_HelpTool()},\n", " function _(o,l,g,A,r){A(),g.root=\"bk-root\",g.logo=\"bk-logo\",g.grey=\"bk-grey\",g.logo_small=\"bk-logo-small\",g.logo_notebook=\"bk-logo-notebook\",g.default=\".bk-root .bk-logo{margin:5px;position:relative;display:block;background-repeat:no-repeat;}.bk-root .bk-logo.bk-grey{filter:url(\\\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale\\\");filter:gray;-webkit-filter:grayscale(100%);}.bk-root .bk-logo-small{width:20px;height:20px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAOkSURBVDiNjZRtaJVlGMd/1/08zzln5zjP1LWcU9N0NkN8m2CYjpgQYQXqSs0I84OLIC0hkEKoPtiH3gmKoiJDU7QpLgoLjLIQCpEsNJ1vqUOdO7ppbuec5+V+rj4ctwzd8IIbbi6u+8f1539dt3A78eXC7QizUF7gyV1fD1Yqg4JWz84yffhm0qkFqBogB9rM8tZdtwVsPUhWhGcFJngGeWrPzHm5oaMmkfEg1usvLFyc8jLRqDOMru7AyC8saQr7GG7f5fvDeH7Ej8CM66nIF+8yngt6HWaKh7k49Soy9nXurCi1o3qUbS3zWfrYeQDTB/Qj6kX6Ybhw4B+bOYoLKCC9H3Nu/leUTZ1JdRWkkn2ldcCamzrcf47KKXdAJllSlxAOkRgyHsGC/zRday5Qld9DyoM4/q/rUoy/CXh3jzOu3bHUVZeU+DEn8FInkPBFlu3+nW3Nw0mk6vCDiWg8CeJaxEwuHS3+z5RgY+YBR6V1Z1nxSOfoaPa4LASWxxdNp+VWTk7+4vzaou8v8PN+xo+KY2xsw6une2frhw05CTYOmQvsEhjhWjn0bmXPjpE1+kplmmkP3suftwTubK9Vq22qKmrBhpY4jvd5afdRA3wGjFAgcnTK2s4hY0/GPNIb0nErGMCRxWOOX64Z8RAC4oCXdklmEvcL8o0BfkNK4lUg9HTl+oPlQxdNo3Mg4Nv175e/1LDGzZen30MEjRUtmXSfiTVu1kK8W4txyV6BMKlbgk3lMwYCiusNy9fVfvvwMxv8Ynl6vxoByANLTWplvuj/nF9m2+PDtt1eiHPBr1oIfhCChQMBw6Aw0UulqTKZdfVvfG7VcfIqLG9bcldL/+pdWTLxLUy8Qq38heUIjh4XlzZxzQm19lLFlr8vdQ97rjZVOLf8nclzckbcD4wxXMidpX30sFd37Fv/GtwwhzhxGVAprjbg0gCAEeIgwCZyTV2Z1REEW8O4py0wsjeloKoMr6iCY6dP92H6Vw/oTyICIthibxjm/DfN9lVz8IqtqKYLUXfoKVMVQVVJOElGjrnnUt9T9wbgp8AyYKaGlqingHZU/uG2NTZSVqwHQTWkx9hxjkpWDaCg6Ckj5qebgBVbT3V3NNXMSiWSDdGV3hrtzla7J+duwPOToIg42ChPQOQjspnSlp1V+Gjdged7+8UN5CRAV7a5EdFNwCjEaBR27b3W890TE7g24NAP/mMDXRWrGoFPQI9ls/MWO2dWFAar/xcOIImbbpA3zgAAAABJRU5ErkJggg==);}.bk-root .bk-logo-notebook{display:inline-block;vertical-align:middle;margin-right:5px;}\"},\n", " function _(t,e,i,s,l){s();const o=t(1),n=t(40),h=t(20),a=t(43),r=o.__importStar(t(255)),c=r;class d extends n.AnnotationView{initialize(){super.initialize(),this.el=a.div({class:c.tooltip}),a.undisplay(this.el),this.plot_view.canvas_view.add_overlay(this.el)}remove(){a.remove(this.el),super.remove()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.content.change,(()=>this.render())),this.connect(this.model.properties.position.change,(()=>this._reposition()))}styles(){return[...super.styles(),r.default]}render(){this.model.visible||a.undisplay(this.el),super.render()}_render(){const{content:t}=this.model;null!=t?(a.empty(this.el),a.classes(this.el).toggle(\"bk-tooltip-custom\",this.model.custom),this.el.appendChild(t),this.model.show_arrow&&this.el.classList.add(c.tooltip_arrow)):a.undisplay(this.el)}_reposition(){const{position:t}=this.model;if(null==t)return void a.undisplay(this.el);const[e,i]=t,s=(()=>{const t=this.parent.layout.bbox.relative(),{attachment:s}=this.model;switch(s){case\"horizontal\":return e<t.hcenter?\"right\":\"left\";case\"vertical\":return i<t.vcenter?\"below\":\"above\";default:return s}})();let l;this.el.classList.remove(c.right),this.el.classList.remove(c.left),this.el.classList.remove(c.above),this.el.classList.remove(c.below),a.display(this.el);let o=null,n=null;switch(s){case\"right\":this.el.classList.add(c.left),o=e+(this.el.offsetWidth-this.el.clientWidth)+10,l=i-this.el.offsetHeight/2;break;case\"left\":this.el.classList.add(c.right),n=this.plot_view.layout.bbox.width-e+10,l=i-this.el.offsetHeight/2;break;case\"below\":this.el.classList.add(c.above),l=i+(this.el.offsetHeight-this.el.clientHeight)+10,o=Math.round(e-this.el.offsetWidth/2);break;case\"above\":this.el.classList.add(c.below),l=i-this.el.offsetHeight-10,o=Math.round(e-this.el.offsetWidth/2)}this.el.style.top=`${l}px`,this.el.style.left=null!=o?`${o}px`:\"auto\",this.el.style.right=null!=n?`${n}px`:\"auto\"}}i.TooltipView=d,d.__name__=\"TooltipView\";class p extends n.Annotation{constructor(t){super(t)}static init_Tooltip(){this.prototype.default_view=d,this.define((({Boolean:t})=>({attachment:[h.TooltipAttachment,\"horizontal\"],inner_only:[t,!0],show_arrow:[t,!0]}))),this.internal((({Boolean:t,Number:e,Tuple:i,Ref:s,Nullable:l})=>({position:[l(i(e,e)),null],content:[s(HTMLElement),()=>a.div()],custom:[t]}))),this.override({level:\"overlay\"})}clear(){this.position=null}}i.Tooltip=p,p.__name__=\"Tooltip\",p.init_Tooltip()},\n", " function _(o,t,r,e,l){e(),r.root=\"bk-root\",r.tooltip=\"bk-tooltip\",r.left=\"bk-left\",r.tooltip_arrow=\"bk-tooltip-arrow\",r.right=\"bk-right\",r.above=\"bk-above\",r.below=\"bk-below\",r.tooltip_row_label=\"bk-tooltip-row-label\",r.tooltip_row_value=\"bk-tooltip-row-value\",r.tooltip_color_block=\"bk-tooltip-color-block\",r.default='.bk-root{}.bk-root .bk-tooltip{font-weight:300;font-size:12px;position:absolute;padding:5px;border:1px solid #e5e5e5;color:#2f2f2f;background-color:white;pointer-events:none;opacity:0.95;z-index:100;}.bk-root .bk-tooltip > div:not(:first-child){margin-top:5px;border-top:#e5e5e5 1px dashed;}.bk-root .bk-tooltip.bk-left.bk-tooltip-arrow::before{position:absolute;margin:-7px 0 0 0;top:50%;width:0;height:0;border-style:solid;border-width:7px 0 7px 0;border-color:transparent;content:\" \";display:block;left:-10px;border-right-width:10px;border-right-color:#909599;}.bk-root .bk-tooltip.bk-left::before{left:-10px;border-right-width:10px;border-right-color:#909599;}.bk-root .bk-tooltip.bk-right.bk-tooltip-arrow::after{position:absolute;margin:-7px 0 0 0;top:50%;width:0;height:0;border-style:solid;border-width:7px 0 7px 0;border-color:transparent;content:\" \";display:block;right:-10px;border-left-width:10px;border-left-color:#909599;}.bk-root .bk-tooltip.bk-right::after{right:-10px;border-left-width:10px;border-left-color:#909599;}.bk-root .bk-tooltip.bk-above::before{position:absolute;margin:0 0 0 -7px;left:50%;width:0;height:0;border-style:solid;border-width:0 7px 0 7px;border-color:transparent;content:\" \";display:block;top:-10px;border-bottom-width:10px;border-bottom-color:#909599;}.bk-root .bk-tooltip.bk-below::after{position:absolute;margin:0 0 0 -7px;left:50%;width:0;height:0;border-style:solid;border-width:0 7px 0 7px;border-color:transparent;content:\" \";display:block;bottom:-10px;border-top-width:10px;border-top-color:#909599;}.bk-root .bk-tooltip-row-label{text-align:right;color:#26aae1;}.bk-root .bk-tooltip-row-value{color:default;}.bk-root .bk-tooltip-color-block{width:12px;height:12px;margin-left:5px;margin-right:5px;outline:#dddddd solid 1px;display:inline-block;}'},\n", " function _(e,t,i,s,r){s();const a=e(135),h=e(133),_=e(122),l=e(48);class o extends a.UpperLowerView{async lazy_initialize(){await super.lazy_initialize();const{lower_head:e,upper_head:t}=this.model;null!=e&&(this.lower_head=await _.build_view(e,{parent:this})),null!=t&&(this.upper_head=await _.build_view(t,{parent:this}))}set_data(e){var t,i;super.set_data(e),null===(t=this.lower_head)||void 0===t||t.set_data(e),null===(i=this.upper_head)||void 0===i||i.set_data(e)}paint(e){if(this.visuals.line.doit)for(let t=0,i=this._lower_sx.length;t<i;t++)this.visuals.line.set_vectorize(e,t),e.beginPath(),e.moveTo(this._lower_sx[t],this._lower_sy[t]),e.lineTo(this._upper_sx[t],this._upper_sy[t]),e.stroke();const t=\"height\"==this.model.dimension?0:Math.PI/2;if(null!=this.lower_head)for(let i=0,s=this._lower_sx.length;i<s;i++)e.save(),e.translate(this._lower_sx[i],this._lower_sy[i]),e.rotate(t+Math.PI),this.lower_head.render(e,i),e.restore();if(null!=this.upper_head)for(let i=0,s=this._upper_sx.length;i<s;i++)e.save(),e.translate(this._upper_sx[i],this._upper_sy[i]),e.rotate(t),this.upper_head.render(e,i),e.restore()}}i.WhiskerView=o,o.__name__=\"WhiskerView\";class n extends a.UpperLower{constructor(e){super(e)}static init_Whisker(){this.prototype.default_view=o,this.mixins(l.LineVector),this.define((({Ref:e,Nullable:t})=>({lower_head:[t(e(h.ArrowHead)),()=>new h.TeeHead({size:10})],upper_head:[t(e(h.ArrowHead)),()=>new h.TeeHead({size:10})]}))),this.override({level:\"underlay\"})}}i.Whisker=n,n.__name__=\"Whisker\",n.init_Whisker()},\n", " function _(n,o,t,u,e){u(),e(\"CustomJS\",n(258).CustomJS),e(\"OpenURL\",n(260).OpenURL)},\n", " function _(t,s,e,n,c){n();const u=t(259),i=t(13),a=t(34);class r extends u.Callback{constructor(t){super(t)}static init_CustomJS(){this.define((({Unknown:t,String:s,Dict:e})=>({args:[e(t),{}],code:[s,\"\"]})))}get names(){return i.keys(this.args)}get values(){return i.values(this.args)}get func(){const t=a.use_strict(this.code);return new Function(...this.names,\"cb_obj\",\"cb_data\",t)}execute(t,s={}){return this.func.apply(t,this.values.concat(t,s))}}e.CustomJS=r,r.__name__=\"CustomJS\",r.init_CustomJS()},\n", " function _(c,a,l,n,s){n();const e=c(53);class o extends e.Model{constructor(c){super(c)}}l.Callback=o,o.__name__=\"Callback\"},\n", " function _(e,t,n,i,o){i();const s=e(259),c=e(182),r=e(8);class a extends s.Callback{constructor(e){super(e)}static init_OpenURL(){this.define((({Boolean:e,String:t})=>({url:[t,\"http://\"],same_tab:[e,!1]})))}navigate(e){this.same_tab?window.location.href=e:window.open(e)}execute(e,{source:t}){const n=e=>{const n=c.replace_placeholders(this.url,t,e,void 0,void 0,encodeURI);if(!r.isString(n))throw new Error(\"HTML output is not supported in this context\");this.navigate(n)},{selected:i}=t;for(const e of i.indices)n(e);for(const e of i.line_indices)n(e)}}n.OpenURL=a,a.__name__=\"OpenURL\",a.init_OpenURL()},\n", " function _(a,n,e,r,s){r(),s(\"Canvas\",a(262).Canvas),s(\"CartesianFrame\",a(144).CartesianFrame)},\n", " function _(e,t,s,i,a){i();const l=e(14),n=e(240),r=e(19),o=e(43),h=e(20),_=e(13),c=e(263),d=e(99),p=e(249),v=(()=>{const e=document.createElement(\"canvas\"),t=e.getContext(\"webgl\",{premultipliedAlpha:!0});return null!=t?{canvas:e,gl:t}:void r.logger.trace(\"WebGL is not supported\")})(),u={position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"};class b extends n.DOMView{constructor(){super(...arguments),this.bbox=new d.BBox}initialize(){super.initialize(),\"webgl\"==this.model.output_backend&&(this.webgl=v),this.underlays_el=o.div({style:u}),this.primary=this.create_layer(),this.overlays=this.create_layer(),this.overlays_el=o.div({style:u}),this.events_el=o.div({class:\"bk-canvas-events\",style:u});const e=[this.underlays_el,this.primary.el,this.overlays.el,this.overlays_el,this.events_el];_.extend(this.el.style,u),o.append(this.el,...e),this.ui_event_bus=new c.UIEventBus(this)}remove(){this.ui_event_bus.destroy(),super.remove()}add_underlay(e){this.underlays_el.appendChild(e)}add_overlay(e){this.overlays_el.appendChild(e)}add_event(e){this.events_el.appendChild(e)}get pixel_ratio(){return this.primary.pixel_ratio}resize(e,t){this.bbox=new d.BBox({left:0,top:0,width:e,height:t}),this.primary.resize(e,t),this.overlays.resize(e,t)}prepare_webgl(e){const{webgl:t}=this;if(null!=t){const{width:s,height:i}=this.bbox;t.canvas.width=this.pixel_ratio*s,t.canvas.height=this.pixel_ratio*i;const{gl:a}=t;a.enable(a.SCISSOR_TEST);const[l,n,r,o]=e,{xview:h,yview:_}=this.bbox,c=h.compute(l),d=_.compute(n+o),p=this.pixel_ratio;a.scissor(p*c,p*d,p*r,p*o),a.enable(a.BLEND),a.blendFuncSeparate(a.SRC_ALPHA,a.ONE_MINUS_SRC_ALPHA,a.ONE_MINUS_DST_ALPHA,a.ONE),this._clear_webgl()}}blit_webgl(e){const{webgl:t}=this;if(null!=t){if(r.logger.debug(\"Blitting WebGL canvas\"),e.restore(),e.drawImage(t.canvas,0,0),e.save(),this.model.hidpi){const t=this.pixel_ratio;e.scale(t,t),e.translate(.5,.5)}this._clear_webgl()}}_clear_webgl(){const{webgl:e}=this;if(null!=e){const{gl:t,canvas:s}=e;t.viewport(0,0,s.width,s.height),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT|t.DEPTH_BUFFER_BIT)}}compose(){const e=this.create_layer(),{width:t,height:s}=this.bbox;return e.resize(t,s),e.ctx.drawImage(this.primary.canvas,0,0),e.ctx.drawImage(this.overlays.canvas,0,0),e}create_layer(){const{output_backend:e,hidpi:t}=this.model;return new p.CanvasLayer(e,t)}to_blob(){return this.compose().to_blob()}}s.CanvasView=b,b.__name__=\"CanvasView\";class g extends l.HasProps{constructor(e){super(e)}static init_Canvas(){this.prototype.default_view=b,this.internal((({Boolean:e})=>({hidpi:[e,!0],output_backend:[h.OutputBackend,\"canvas\"]})))}}s.Canvas=g,g.__name__=\"Canvas\",g.init_Canvas()},\n", " function _(t,e,s,n,i){n();const r=t(1),a=r.__importDefault(t(239)),_=t(15),h=t(19),o=t(43),l=r.__importStar(t(264)),c=t(265),p=t(9),u=t(8),v=t(27),d=t(244);class g{constructor(t){this.canvas_view=t,this.pan_start=new _.Signal(this,\"pan:start\"),this.pan=new _.Signal(this,\"pan\"),this.pan_end=new _.Signal(this,\"pan:end\"),this.pinch_start=new _.Signal(this,\"pinch:start\"),this.pinch=new _.Signal(this,\"pinch\"),this.pinch_end=new _.Signal(this,\"pinch:end\"),this.rotate_start=new _.Signal(this,\"rotate:start\"),this.rotate=new _.Signal(this,\"rotate\"),this.rotate_end=new _.Signal(this,\"rotate:end\"),this.tap=new _.Signal(this,\"tap\"),this.doubletap=new _.Signal(this,\"doubletap\"),this.press=new _.Signal(this,\"press\"),this.pressup=new _.Signal(this,\"pressup\"),this.move_enter=new _.Signal(this,\"move:enter\"),this.move=new _.Signal(this,\"move\"),this.move_exit=new _.Signal(this,\"move:exit\"),this.scroll=new _.Signal(this,\"scroll\"),this.keydown=new _.Signal(this,\"keydown\"),this.keyup=new _.Signal(this,\"keyup\"),this.hammer=new a.default(this.hit_area,{touchAction:\"auto\",inputClass:a.default.TouchMouseInput}),this._prev_move=null,this._curr_pan=null,this._curr_pinch=null,this._curr_rotate=null,this._configure_hammerjs(),this.hit_area.addEventListener(\"mousemove\",(t=>this._mouse_move(t))),this.hit_area.addEventListener(\"mouseenter\",(t=>this._mouse_enter(t))),this.hit_area.addEventListener(\"mouseleave\",(t=>this._mouse_exit(t))),this.hit_area.addEventListener(\"contextmenu\",(t=>this._context_menu(t))),this.hit_area.addEventListener(\"wheel\",(t=>this._mouse_wheel(t))),document.addEventListener(\"keydown\",this),document.addEventListener(\"keyup\",this),this.menu=new d.ContextMenu([],{prevent_hide:t=>2==t.button&&t.target==this.hit_area}),this.hit_area.appendChild(this.menu.el)}get hit_area(){return this.canvas_view.events_el}destroy(){this.menu.remove(),this.hammer.destroy(),document.removeEventListener(\"keydown\",this),document.removeEventListener(\"keyup\",this)}handleEvent(t){\"keydown\"==t.type?this._key_down(t):\"keyup\"==t.type&&this._key_up(t)}_configure_hammerjs(){this.hammer.get(\"doubletap\").recognizeWith(\"tap\"),this.hammer.get(\"tap\").requireFailure(\"doubletap\"),this.hammer.get(\"doubletap\").dropRequireFailure(\"tap\"),this.hammer.on(\"doubletap\",(t=>this._doubletap(t))),this.hammer.on(\"tap\",(t=>this._tap(t))),this.hammer.on(\"press\",(t=>this._press(t))),this.hammer.on(\"pressup\",(t=>this._pressup(t))),this.hammer.get(\"pan\").set({direction:a.default.DIRECTION_ALL}),this.hammer.on(\"panstart\",(t=>this._pan_start(t))),this.hammer.on(\"pan\",(t=>this._pan(t))),this.hammer.on(\"panend\",(t=>this._pan_end(t))),this.hammer.get(\"pinch\").set({enable:!0}),this.hammer.on(\"pinchstart\",(t=>this._pinch_start(t))),this.hammer.on(\"pinch\",(t=>this._pinch(t))),this.hammer.on(\"pinchend\",(t=>this._pinch_end(t))),this.hammer.get(\"rotate\").set({enable:!0}),this.hammer.on(\"rotatestart\",(t=>this._rotate_start(t))),this.hammer.on(\"rotate\",(t=>this._rotate(t))),this.hammer.on(\"rotateend\",(t=>this._rotate_end(t)))}register_tool(t){const e=t.model.event_type;null!=e&&(u.isString(e)?this._register_tool(t,e):e.forEach(((e,s)=>this._register_tool(t,e,s<1))))}_register_tool(t,e,s=!0){const n=t,{id:i}=n.model,r=t=>e=>{e.id==i&&t(e.e)},a=t=>e=>{t(e.e)};switch(e){case\"pan\":null!=n._pan_start&&n.connect(this.pan_start,r(n._pan_start.bind(n))),null!=n._pan&&n.connect(this.pan,r(n._pan.bind(n))),null!=n._pan_end&&n.connect(this.pan_end,r(n._pan_end.bind(n)));break;case\"pinch\":null!=n._pinch_start&&n.connect(this.pinch_start,r(n._pinch_start.bind(n))),null!=n._pinch&&n.connect(this.pinch,r(n._pinch.bind(n))),null!=n._pinch_end&&n.connect(this.pinch_end,r(n._pinch_end.bind(n)));break;case\"rotate\":null!=n._rotate_start&&n.connect(this.rotate_start,r(n._rotate_start.bind(n))),null!=n._rotate&&n.connect(this.rotate,r(n._rotate.bind(n))),null!=n._rotate_end&&n.connect(this.rotate_end,r(n._rotate_end.bind(n)));break;case\"move\":null!=n._move_enter&&n.connect(this.move_enter,r(n._move_enter.bind(n))),null!=n._move&&n.connect(this.move,r(n._move.bind(n))),null!=n._move_exit&&n.connect(this.move_exit,r(n._move_exit.bind(n)));break;case\"tap\":null!=n._tap&&n.connect(this.tap,r(n._tap.bind(n))),null!=n._doubletap&&n.connect(this.doubletap,r(n._doubletap.bind(n)));break;case\"press\":null!=n._press&&n.connect(this.press,r(n._press.bind(n))),null!=n._pressup&&n.connect(this.pressup,r(n._pressup.bind(n)));break;case\"scroll\":null!=n._scroll&&n.connect(this.scroll,r(n._scroll.bind(n)));break;default:throw new Error(`unsupported event_type: ${e}`)}s&&(null!=n._keydown&&n.connect(this.keydown,a(n._keydown.bind(n))),null!=n._keyup&&n.connect(this.keyup,a(n._keyup.bind(n))),v.is_mobile&&null!=n._scroll&&\"pinch\"==e&&(h.logger.debug(\"Registering scroll on touch screen\"),n.connect(this.scroll,r(n._scroll.bind(n)))))}_hit_test_renderers(t,e,s){var n;const i=t.get_renderer_views();for(const t of p.reversed(i))if(null===(n=t.interactive_hit)||void 0===n?void 0:n.call(t,e,s))return t;return null}set_cursor(t=\"default\"){this.hit_area.style.cursor=t}_hit_test_frame(t,e,s){return t.frame.bbox.contains(e,s)}_hit_test_canvas(t,e,s){return t.layout.bbox.contains(e,s)}_hit_test_plot(t,e){for(const s of this.canvas_view.plot_views)if(s.layout.bbox.relative().contains(t,e))return s;return null}_trigger(t,e,s){var n;const{sx:i,sy:r}=e,a=this._hit_test_plot(i,r),_=t=>{const[s,n]=[i,r];return Object.assign(Object.assign({},e),{sx:s,sy:n})};if(\"panstart\"==e.type||\"pan\"==e.type||\"panend\"==e.type){let n;if(\"panstart\"==e.type&&null!=a?(this._curr_pan={plot_view:a},n=a):\"pan\"==e.type&&null!=this._curr_pan?n=this._curr_pan.plot_view:\"panend\"==e.type&&null!=this._curr_pan?(n=this._curr_pan.plot_view,this._curr_pan=null):n=null,null!=n){const e=_();this.__trigger(n,t,e,s)}}else if(\"pinchstart\"==e.type||\"pinch\"==e.type||\"pinchend\"==e.type){let n;if(\"pinchstart\"==e.type&&null!=a?(this._curr_pinch={plot_view:a},n=a):\"pinch\"==e.type&&null!=this._curr_pinch?n=this._curr_pinch.plot_view:\"pinchend\"==e.type&&null!=this._curr_pinch?(n=this._curr_pinch.plot_view,this._curr_pinch=null):n=null,null!=n){const e=_();this.__trigger(n,t,e,s)}}else if(\"rotatestart\"==e.type||\"rotate\"==e.type||\"rotateend\"==e.type){let n;if(\"rotatestart\"==e.type&&null!=a?(this._curr_rotate={plot_view:a},n=a):\"rotate\"==e.type&&null!=this._curr_rotate?n=this._curr_rotate.plot_view:\"rotateend\"==e.type&&null!=this._curr_rotate?(n=this._curr_rotate.plot_view,this._curr_rotate=null):n=null,null!=n){const e=_();this.__trigger(n,t,e,s)}}else if(\"mouseenter\"==e.type||\"mousemove\"==e.type||\"mouseleave\"==e.type){const h=null===(n=this._prev_move)||void 0===n?void 0:n.plot_view;if(null!=h&&(\"mouseleave\"==e.type||h!=a)){const{sx:t,sy:e}=_();this.__trigger(h,this.move_exit,{type:\"mouseleave\",sx:t,sy:e,shiftKey:!1,ctrlKey:!1},s)}if(null!=a&&(\"mouseenter\"==e.type||h!=a)){const{sx:t,sy:e}=_();this.__trigger(a,this.move_enter,{type:\"mouseenter\",sx:t,sy:e,shiftKey:!1,ctrlKey:!1},s)}if(null!=a&&\"mousemove\"==e.type){const e=_();this.__trigger(a,t,e,s)}this._prev_move={sx:i,sy:r,plot_view:a}}else if(null!=a){const e=_();this.__trigger(a,t,e,s)}}__trigger(t,e,s,n){var i,r;const a=t.model.toolbar.gestures,_=e.name.split(\":\")[0],h=this._hit_test_renderers(t,s.sx,s.sy),o=this._hit_test_canvas(t,s.sx,s.sy);switch(_){case\"move\":{const n=a[_].active;null!=n&&this.trigger(e,s,n.id);const r=t.model.toolbar.inspectors.filter((t=>t.active));let l=\"default\";null!=h?(l=null!==(i=h.cursor(s.sx,s.sy))&&void 0!==i?i:l,p.is_empty(r)||(e=this.move_exit)):this._hit_test_frame(t,s.sx,s.sy)&&(p.is_empty(r)||(l=\"crosshair\")),this.set_cursor(l),t.set_toolbar_visibility(o),r.map((t=>this.trigger(e,s,t.id)));break}case\"tap\":{const{target:t}=n;if(null!=t&&t!=this.hit_area)return;null!=h&&null!=h.on_hit&&h.on_hit(s.sx,s.sy);const i=a[_].active;null!=i&&this.trigger(e,s,i.id);break}case\"doubletap\":{const t=null!==(r=a.doubletap.active)&&void 0!==r?r:a.tap.active;null!=t&&this.trigger(e,s,t.id);break}case\"scroll\":{const t=a[v.is_mobile?\"pinch\":\"scroll\"].active;null!=t&&(n.preventDefault(),n.stopPropagation(),this.trigger(e,s,t.id));break}case\"pan\":{const t=a[_].active;null!=t&&(n.preventDefault(),this.trigger(e,s,t.id));break}default:{const t=a[_].active;null!=t&&this.trigger(e,s,t.id)}}this._trigger_bokeh_event(t,s)}trigger(t,e,s=null){t.emit({id:s,e})}_trigger_bokeh_event(t,e){const s=(()=>{const{sx:s,sy:n}=e,i=t.frame.x_scale.invert(s),r=t.frame.y_scale.invert(n);switch(e.type){case\"wheel\":return new l.MouseWheel(s,n,i,r,e.delta);case\"mousemove\":return new l.MouseMove(s,n,i,r);case\"mouseenter\":return new l.MouseEnter(s,n,i,r);case\"mouseleave\":return new l.MouseLeave(s,n,i,r);case\"tap\":return new l.Tap(s,n,i,r);case\"doubletap\":return new l.DoubleTap(s,n,i,r);case\"press\":return new l.Press(s,n,i,r);case\"pressup\":return new l.PressUp(s,n,i,r);case\"pan\":return new l.Pan(s,n,i,r,e.deltaX,e.deltaY);case\"panstart\":return new l.PanStart(s,n,i,r);case\"panend\":return new l.PanEnd(s,n,i,r);case\"pinch\":return new l.Pinch(s,n,i,r,e.scale);case\"pinchstart\":return new l.PinchStart(s,n,i,r);case\"pinchend\":return new l.PinchEnd(s,n,i,r);case\"rotate\":return new l.Rotate(s,n,i,r,e.rotation);case\"rotatestart\":return new l.RotateStart(s,n,i,r);case\"rotateend\":return new l.RotateEnd(s,n,i,r);default:return}})();null!=s&&t.model.trigger_event(s)}_get_sxy(t){const{pageX:e,pageY:s}=function(t){return\"undefined\"!=typeof TouchEvent&&t instanceof TouchEvent}(t)?(0!=t.touches.length?t.touches:t.changedTouches)[0]:t,{left:n,top:i}=o.offset(this.hit_area);return{sx:e-n,sy:s-i}}_pan_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{deltaX:t.deltaX,deltaY:t.deltaY,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_pinch_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{scale:t.scale,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_rotate_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{rotation:t.rotation,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_tap_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_move_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t)),{shiftKey:t.shiftKey,ctrlKey:t.ctrlKey})}_scroll_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t)),{delta:c.getDeltaY(t),shiftKey:t.shiftKey,ctrlKey:t.ctrlKey})}_key_event(t){return{type:t.type,keyCode:t.keyCode}}_pan_start(t){const e=this._pan_event(t);e.sx-=t.deltaX,e.sy-=t.deltaY,this._trigger(this.pan_start,e,t.srcEvent)}_pan(t){this._trigger(this.pan,this._pan_event(t),t.srcEvent)}_pan_end(t){this._trigger(this.pan_end,this._pan_event(t),t.srcEvent)}_pinch_start(t){this._trigger(this.pinch_start,this._pinch_event(t),t.srcEvent)}_pinch(t){this._trigger(this.pinch,this._pinch_event(t),t.srcEvent)}_pinch_end(t){this._trigger(this.pinch_end,this._pinch_event(t),t.srcEvent)}_rotate_start(t){this._trigger(this.rotate_start,this._rotate_event(t),t.srcEvent)}_rotate(t){this._trigger(this.rotate,this._rotate_event(t),t.srcEvent)}_rotate_end(t){this._trigger(this.rotate_end,this._rotate_event(t),t.srcEvent)}_tap(t){this._trigger(this.tap,this._tap_event(t),t.srcEvent)}_doubletap(t){this._trigger(this.doubletap,this._tap_event(t),t.srcEvent)}_press(t){this._trigger(this.press,this._tap_event(t),t.srcEvent)}_pressup(t){this._trigger(this.pressup,this._tap_event(t),t.srcEvent)}_mouse_enter(t){this._trigger(this.move_enter,this._move_event(t),t)}_mouse_move(t){this._trigger(this.move,this._move_event(t),t)}_mouse_exit(t){this._trigger(this.move_exit,this._move_event(t),t)}_mouse_wheel(t){this._trigger(this.scroll,this._scroll_event(t),t)}_context_menu(t){!this.menu.is_open&&this.menu.can_open&&t.preventDefault();const{sx:e,sy:s}=this._get_sxy(t);this.menu.toggle({left:e,top:s})}_key_down(t){this.trigger(this.keydown,this._key_event(t))}_key_up(t){this.trigger(this.keyup,this._key_event(t))}}s.UIEventBus=g,g.__name__=\"UIEventBus\"},\n", " function _(e,t,s,n,_){n();var a=this&&this.__decorate||function(e,t,s,n){var _,a=arguments.length,o=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,s):n;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)o=Reflect.decorate(e,t,s,n);else for(var c=e.length-1;c>=0;c--)(_=e[c])&&(o=(a<3?_(o):a>3?_(t,s,o):_(t,s))||o);return a>3&&o&&Object.defineProperty(t,s,o),o};function o(e){return function(t){t.prototype.event_name=e}}class c{to_json(){const{event_name:e}=this;return{event_name:e,event_values:this._to_json()}}}s.BokehEvent=c,c.__name__=\"BokehEvent\";class r extends c{constructor(){super(...arguments),this.origin=null}_to_json(){return{model:this.origin}}}s.ModelEvent=r,r.__name__=\"ModelEvent\";let l=class extends c{_to_json(){return{}}};s.DocumentReady=l,l.__name__=\"DocumentReady\",s.DocumentReady=l=a([o(\"document_ready\")],l);let i=class extends r{};s.ButtonClick=i,i.__name__=\"ButtonClick\",s.ButtonClick=i=a([o(\"button_click\")],i);let u=class extends r{constructor(e){super(),this.item=e}_to_json(){const{item:e}=this;return Object.assign(Object.assign({},super._to_json()),{item:e})}};s.MenuItemClick=u,u.__name__=\"MenuItemClick\",s.MenuItemClick=u=a([o(\"menu_item_click\")],u);class d extends r{}s.UIEvent=d,d.__name__=\"UIEvent\";let h=class extends d{};s.LODStart=h,h.__name__=\"LODStart\",s.LODStart=h=a([o(\"lodstart\")],h);let m=class extends d{};s.LODEnd=m,m.__name__=\"LODEnd\",s.LODEnd=m=a([o(\"lodend\")],m);let x=class extends d{constructor(e,t){super(),this.geometry=e,this.final=t}_to_json(){const{geometry:e,final:t}=this;return Object.assign(Object.assign({},super._to_json()),{geometry:e,final:t})}};s.SelectionGeometry=x,x.__name__=\"SelectionGeometry\",s.SelectionGeometry=x=a([o(\"selectiongeometry\")],x);let p=class extends d{};s.Reset=p,p.__name__=\"Reset\",s.Reset=p=a([o(\"reset\")],p);class j extends d{constructor(e,t,s,n){super(),this.sx=e,this.sy=t,this.x=s,this.y=n}_to_json(){const{sx:e,sy:t,x:s,y:n}=this;return Object.assign(Object.assign({},super._to_json()),{sx:e,sy:t,x:s,y:n})}}s.PointEvent=j,j.__name__=\"PointEvent\";let y=class extends j{constructor(e,t,s,n,_,a){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.delta_x=_,this.delta_y=a}_to_json(){const{delta_x:e,delta_y:t}=this;return Object.assign(Object.assign({},super._to_json()),{delta_x:e,delta_y:t})}};s.Pan=y,y.__name__=\"Pan\",s.Pan=y=a([o(\"pan\")],y);let P=class extends j{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.scale=_}_to_json(){const{scale:e}=this;return Object.assign(Object.assign({},super._to_json()),{scale:e})}};s.Pinch=P,P.__name__=\"Pinch\",s.Pinch=P=a([o(\"pinch\")],P);let v=class extends j{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.rotation=_}_to_json(){const{rotation:e}=this;return Object.assign(Object.assign({},super._to_json()),{rotation:e})}};s.Rotate=v,v.__name__=\"Rotate\",s.Rotate=v=a([o(\"rotate\")],v);let g=class extends j{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.delta=_}_to_json(){const{delta:e}=this;return Object.assign(Object.assign({},super._to_json()),{delta:e})}};s.MouseWheel=g,g.__name__=\"MouseWheel\",s.MouseWheel=g=a([o(\"wheel\")],g);let E=class extends j{};s.MouseMove=E,E.__name__=\"MouseMove\",s.MouseMove=E=a([o(\"mousemove\")],E);let O=class extends j{};s.MouseEnter=O,O.__name__=\"MouseEnter\",s.MouseEnter=O=a([o(\"mouseenter\")],O);let b=class extends j{};s.MouseLeave=b,b.__name__=\"MouseLeave\",s.MouseLeave=b=a([o(\"mouseleave\")],b);let M=class extends j{};s.Tap=M,M.__name__=\"Tap\",s.Tap=M=a([o(\"tap\")],M);let R=class extends j{};s.DoubleTap=R,R.__name__=\"DoubleTap\",s.DoubleTap=R=a([o(\"doubletap\")],R);let f=class extends j{};s.Press=f,f.__name__=\"Press\",s.Press=f=a([o(\"press\")],f);let S=class extends j{};s.PressUp=S,S.__name__=\"PressUp\",s.PressUp=S=a([o(\"pressup\")],S);let D=class extends j{};s.PanStart=D,D.__name__=\"PanStart\",s.PanStart=D=a([o(\"panstart\")],D);let k=class extends j{};s.PanEnd=k,k.__name__=\"PanEnd\",s.PanEnd=k=a([o(\"panend\")],k);let L=class extends j{};s.PinchStart=L,L.__name__=\"PinchStart\",s.PinchStart=L=a([o(\"pinchstart\")],L);let C=class extends j{};s.PinchEnd=C,C.__name__=\"PinchEnd\",s.PinchEnd=C=a([o(\"pinchend\")],C);let T=class extends j{};s.RotateStart=T,T.__name__=\"RotateStart\",s.RotateStart=T=a([o(\"rotatestart\")],T);let B=class extends j{};s.RotateEnd=B,B.__name__=\"RotateEnd\",s.RotateEnd=B=a([o(\"rotateend\")],B)},\n", " function _(t,e,n,l,o){\n", " /*!\n", " * jQuery Mousewheel 3.1.13\n", " *\n", " * Copyright jQuery Foundation and other contributors\n", " * Released under the MIT license\n", " * http://jquery.org/license\n", " */\n", " function u(t){const e=getComputedStyle(t).fontSize;return null!=e?parseInt(e,10):null}l(),n.getDeltaY=function(t){let e=-t.deltaY;if(t.target instanceof HTMLElement)switch(t.deltaMode){case t.DOM_DELTA_LINE:e*=(n=t.target,null!==(a=null!==(o=u(null!==(l=n.offsetParent)&&void 0!==l?l:document.body))&&void 0!==o?o:u(n))&&void 0!==a?a:16);break;case t.DOM_DELTA_PAGE:e*=function(t){return t.clientHeight}(t.target)}var n,l,o,a;return e}},\n", " function _(m,i,u,s,a){s(),a(\"Expression\",m(124).Expression),a(\"CustomJSExpr\",m(267).CustomJSExpr),a(\"Stack\",m(268).Stack),a(\"CumSum\",m(269).CumSum),a(\"ScalarExpression\",m(124).ScalarExpression),a(\"Minimum\",m(270).Minimum),a(\"Maximum\",m(271).Maximum)},\n", " function _(t,e,s,n,r){n();const i=t(14),o=t(124),a=t(24),c=t(9),u=t(13),l=t(34),h=t(8);class p extends o.Expression{constructor(t){super(t)}static init_CustomJSExpr(){this.define((({Unknown:t,String:e,Dict:s})=>({args:[s(t),{}],code:[e,\"\"]})))}connect_signals(){super.connect_signals();for(const t of u.values(this.args))t instanceof i.HasProps&&t.change.connect((()=>{this._result.clear(),this.change.emit()}))}get names(){return u.keys(this.args)}get values(){return u.values(this.args)}get func(){const t=l.use_strict(this.code);return new a.GeneratorFunction(...this.names,t)}_v_compute(t){const e=this.func.apply(t,this.values);let s=e.next();if(s.done&&void 0!==s.value){const{value:e}=s;return h.isArray(e)||h.isTypedArray(e)?e:h.isIterable(e)?[...e]:c.repeat(e,t.length)}{const t=[];do{t.push(s.value),s=e.next()}while(!s.done);return t}}}s.CustomJSExpr=p,p.__name__=\"CustomJSExpr\",p.init_CustomJSExpr()},\n", " function _(t,n,e,i,s){i();const a=t(124);class c extends a.Expression{constructor(t){super(t)}static init_Stack(){this.define((({String:t,Array:n})=>({fields:[n(t),[]]})))}_v_compute(t){var n;const e=null!==(n=t.get_length())&&void 0!==n?n:0,i=new Float64Array(e);for(const n of this.fields){const s=t.data[n];if(null!=s)for(let t=0,n=Math.min(e,s.length);t<n;t++)i[t]+=s[t]}return i}}e.Stack=c,c.__name__=\"Stack\",c.init_Stack()},\n", " function _(e,t,n,i,u){i();const o=e(124);class r extends o.Expression{constructor(e){super(e)}static init_CumSum(){this.define((({Boolean:e,String:t})=>({field:[t],include_zero:[e,!1]})))}_v_compute(e){var t;const n=new Float64Array(null!==(t=e.get_length())&&void 0!==t?t:0),i=e.data[this.field],u=this.include_zero?1:0;n[0]=this.include_zero?0:i[0];for(let e=1;e<n.length;e++)n[e]=n[e-1]+i[e-u];return n}}n.CumSum=r,r.__name__=\"CumSum\",r.init_CumSum()},\n", " function _(i,n,t,l,u){l();const e=i(124),m=i(9);class s extends e.ScalarExpression{constructor(i){super(i)}static init_Minimum(){this.define((({Number:i,String:n,Nullable:t})=>({field:[n],initial:[t(i),null]})))}_compute(i){var n,t;const l=null!==(n=i.data[this.field])&&void 0!==n?n:[];return Math.min(null!==(t=this.initial)&&void 0!==t?t:1/0,m.min(l))}}t.Minimum=s,s.__name__=\"Minimum\",s.init_Minimum()},\n", " function _(i,t,a,n,l){n();const u=i(124),e=i(9);class m extends u.ScalarExpression{constructor(i){super(i)}static init_Maximum(){this.define((({Number:i,String:t,Nullable:a})=>({field:[t],initial:[a(i),null]})))}_compute(i){var t,a;const n=null!==(t=i.data[this.field])&&void 0!==t?t:[];return Math.max(null!==(a=this.initial)&&void 0!==a?a:-1/0,e.max(n))}}a.Maximum=m,m.__name__=\"Maximum\",m.init_Maximum()},\n", " function _(e,t,l,r,i){r(),i(\"BooleanFilter\",e(273).BooleanFilter),i(\"CustomJSFilter\",e(274).CustomJSFilter),i(\"Filter\",e(121).Filter),i(\"GroupFilter\",e(275).GroupFilter),i(\"IndexFilter\",e(276).IndexFilter)},\n", " function _(e,n,l,o,t){o();const i=e(121),s=e(24);class a extends i.Filter{constructor(e){super(e)}static init_BooleanFilter(){this.define((({Boolean:e,Array:n,Nullable:l})=>({booleans:[l(n(e)),null]})))}compute_indices(e){const n=e.length,{booleans:l}=this;return null==l?s.Indices.all_set(n):s.Indices.from_booleans(n,l)}}l.BooleanFilter=a,a.__name__=\"BooleanFilter\",a.init_BooleanFilter()},\n", " function _(e,t,s,n,r){n();const i=e(121),o=e(24),u=e(13),c=e(8),a=e(34);class l extends i.Filter{constructor(e){super(e)}static init_CustomJSFilter(){this.define((({Unknown:e,String:t,Dict:s})=>({args:[s(e),{}],code:[t,\"\"]})))}get names(){return u.keys(this.args)}get values(){return u.values(this.args)}get func(){const e=a.use_strict(this.code);return new Function(...this.names,\"source\",e)}compute_indices(e){const t=e.length,s=this.func(...this.values,e);if(null==s)return o.Indices.all_set(t);if(c.isArrayOf(s,c.isInteger))return o.Indices.from_indices(t,s);if(c.isArrayOf(s,c.isBoolean))return o.Indices.from_booleans(t,s);throw new Error(`expect an array of integers or booleans, or null, got ${s}`)}}s.CustomJSFilter=l,l.__name__=\"CustomJSFilter\",l.init_CustomJSFilter()},\n", " function _(n,t,e,i,o){i();const r=n(121),u=n(24),s=n(19);class c extends r.Filter{constructor(n){super(n)}static init_GroupFilter(){this.define((({String:n})=>({column_name:[n],group:[n]})))}compute_indices(n){const t=n.get_column(this.column_name);if(null==t)return s.logger.warn(`${this}: groupby column '${this.column_name}' not found in the data source`),new u.Indices(n.length,1);{const e=new u.Indices(n.length);for(let n=0;n<e.size;n++)t[n]===this.group&&e.set(n);return e}}}e.GroupFilter=c,c.__name__=\"GroupFilter\",c.init_GroupFilter()},\n", " function _(e,n,i,t,s){t();const l=e(121),c=e(24);class r extends l.Filter{constructor(e){super(e)}static init_IndexFilter(){this.define((({Int:e,Array:n,Nullable:i})=>({indices:[i(n(e)),null]})))}compute_indices(e){const n=e.length,{indices:i}=this;return null==i?c.Indices.all_set(n):c.Indices.from_indices(n,i)}}i.IndexFilter=r,r.__name__=\"IndexFilter\",r.init_IndexFilter()},\n", " function _(e,a,l,i,t){i(),t(\"AnnularWedge\",e(278).AnnularWedge),t(\"Annulus\",e(279).Annulus),t(\"Arc\",e(280).Arc),t(\"Bezier\",e(281).Bezier),t(\"Circle\",e(282).Circle),t(\"Ellipse\",e(286).Ellipse),t(\"EllipseOval\",e(287).EllipseOval),t(\"Glyph\",e(98).Glyph),t(\"HArea\",e(117).HArea),t(\"HBar\",e(289).HBar),t(\"HexTile\",e(291).HexTile),t(\"Image\",e(292).Image),t(\"ImageRGBA\",e(294).ImageRGBA),t(\"ImageURL\",e(295).ImageURL),t(\"Line\",e(63).Line),t(\"MultiLine\",e(127).MultiLine),t(\"MultiPolygons\",e(297).MultiPolygons),t(\"Oval\",e(298).Oval),t(\"Patch\",e(116).Patch),t(\"Patches\",e(128).Patches),t(\"Quad\",e(299).Quad),t(\"Quadratic\",e(300).Quadratic),t(\"Ray\",e(301).Ray),t(\"Rect\",e(302).Rect),t(\"Scatter\",e(303).Scatter),t(\"Segment\",e(306).Segment),t(\"Spline\",e(307).Spline),t(\"Step\",e(309).Step),t(\"Text\",e(310).Text),t(\"VArea\",e(119).VArea),t(\"VBar\",e(311).VBar),t(\"Wedge\",e(312).Wedge)},\n", " function _(e,t,s,i,r){i();const n=e(1),a=e(64),o=e(106),_=e(48),d=e(24),u=e(20),h=n.__importStar(e(18)),l=e(10),c=e(59);class g extends a.XYGlyphView{_map_data(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this.inner_radius):this.sinner_radius=d.to_screen(this.inner_radius),\"data\"==this.model.properties.outer_radius.units?this.souter_radius=this.sdist(this.renderer.xscale,this._x,this.outer_radius):this.souter_radius=d.to_screen(this.outer_radius)}_render(e,t,s){const{sx:i,sy:r,start_angle:n,end_angle:a,sinner_radius:o,souter_radius:_}=null!=s?s:this,d=\"anticlock\"==this.model.direction;for(const s of t){const t=i[s],u=r[s],h=o[s],l=_[s],c=n.get(s),g=a.get(s);if(isNaN(t+u+h+l+c+g))continue;const x=g-c;e.translate(t,u),e.rotate(c),e.beginPath(),e.moveTo(l,0),e.arc(0,0,l,0,x,d),e.rotate(x),e.lineTo(h,0),e.arc(0,0,h,0,-x,!d),e.closePath(),e.rotate(-x-c),e.translate(-t,-u),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,s),e.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(e,s),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,s),e.stroke())}}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),r=this.renderer.yscale.invert(s);let n,a,o,_;if(\"data\"==this.model.properties.outer_radius.units)n=i-this.max_outer_radius,o=i+this.max_outer_radius,a=r-this.max_outer_radius,_=r+this.max_outer_radius;else{const e=t-this.max_outer_radius,i=t+this.max_outer_radius;[n,o]=this.renderer.xscale.r_invert(e,i);const r=s-this.max_outer_radius,d=s+this.max_outer_radius;[a,_]=this.renderer.yscale.r_invert(r,d)}const d=[];for(const e of this.index.indices({x0:n,x1:o,y0:a,y1:_})){const t=this.souter_radius[e]**2,s=this.sinner_radius[e]**2,[n,a]=this.renderer.xscale.r_compute(i,this._x[e]),[o,_]=this.renderer.yscale.r_compute(r,this._y[e]),u=(n-a)**2+(o-_)**2;u<=t&&u>=s&&d.push(e)}const u=\"anticlock\"==this.model.direction,h=[];for(const e of d){const i=Math.atan2(s-this.sy[e],t-this.sx[e]);l.angle_between(-i,-this.start_angle.get(e),-this.end_angle.get(e),u)&&h.push(e)}return new c.Selection({indices:h})}draw_legend_for_index(e,t,s){o.generic_area_vector_legend(this.visuals,e,t,s)}scenterxy(e){const t=(this.sinner_radius[e]+this.souter_radius[e])/2,s=(this.start_angle.get(e)+this.end_angle.get(e))/2;return[this.sx[e]+t*Math.cos(s),this.sy[e]+t*Math.sin(s)]}}s.AnnularWedgeView=g,g.__name__=\"AnnularWedgeView\";class x extends a.XYGlyph{constructor(e){super(e)}static init_AnnularWedge(){this.prototype.default_view=g,this.mixins([_.LineVector,_.FillVector,_.HatchVector]),this.define((({})=>({direction:[u.Direction,\"anticlock\"],inner_radius:[h.DistanceSpec,{field:\"inner_radius\"}],outer_radius:[h.DistanceSpec,{field:\"outer_radius\"}],start_angle:[h.AngleSpec,{field:\"start_angle\"}],end_angle:[h.AngleSpec,{field:\"end_angle\"}]})))}}s.AnnularWedge=x,x.__name__=\"AnnularWedge\",x.init_AnnularWedge()},\n", " function _(s,i,t,e,r){e();const n=s(1),a=s(64),u=s(24),_=s(48),o=n.__importStar(s(18)),h=s(27),d=s(59);class c extends a.XYGlyphView{_map_data(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this.inner_radius):this.sinner_radius=u.to_screen(this.inner_radius),\"data\"==this.model.properties.outer_radius.units?this.souter_radius=this.sdist(this.renderer.xscale,this._x,this.outer_radius):this.souter_radius=u.to_screen(this.outer_radius)}_render(s,i,t){const{sx:e,sy:r,sinner_radius:n,souter_radius:a}=null!=t?t:this;for(const t of i){const i=e[t],_=r[t],o=n[t],d=a[t];function u(){if(s.beginPath(),h.is_ie)for(const t of[!1,!0])s.arc(i,_,o,0,Math.PI,t),s.arc(i,_,d,Math.PI,0,!t);else s.arc(i,_,o,0,2*Math.PI,!0),s.arc(i,_,d,2*Math.PI,0,!1)}isNaN(i+_+o+d)||(this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(s,t),u(),s.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(s,t),u(),s.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(s,t),s.beginPath(),s.arc(i,_,o,0,2*Math.PI),s.moveTo(i+d,_),s.arc(i,_,d,0,2*Math.PI),s.stroke()))}}_hit_point(s){const{sx:i,sy:t}=s,e=this.renderer.xscale.invert(i),r=this.renderer.yscale.invert(t);let n,a,u,_;if(\"data\"==this.model.properties.outer_radius.units)n=e-this.max_outer_radius,u=e+this.max_outer_radius,a=r-this.max_outer_radius,_=r+this.max_outer_radius;else{const s=i-this.max_outer_radius,e=i+this.max_outer_radius;[n,u]=this.renderer.xscale.r_invert(s,e);const r=t-this.max_outer_radius,o=t+this.max_outer_radius;[a,_]=this.renderer.yscale.r_invert(r,o)}const o=[];for(const s of this.index.indices({x0:n,x1:u,y0:a,y1:_})){const i=this.souter_radius[s]**2,t=this.sinner_radius[s]**2,[n,a]=this.renderer.xscale.r_compute(e,this._x[s]),[u,_]=this.renderer.yscale.r_compute(r,this._y[s]),h=(n-a)**2+(u-_)**2;h<=i&&h>=t&&o.push(s)}return new d.Selection({indices:o})}draw_legend_for_index(s,{x0:i,y0:t,x1:e,y1:r},n){const a=n+1,u=new Array(a);u[n]=(i+e)/2;const _=new Array(a);_[n]=(t+r)/2;const o=.5*Math.min(Math.abs(e-i),Math.abs(r-t)),h=new Array(a);h[n]=.4*o;const d=new Array(a);d[n]=.8*o,this._render(s,[n],{sx:u,sy:_,sinner_radius:h,souter_radius:d})}}t.AnnulusView=c,c.__name__=\"AnnulusView\";class l extends a.XYGlyph{constructor(s){super(s)}static init_Annulus(){this.prototype.default_view=c,this.mixins([_.LineVector,_.FillVector,_.HatchVector]),this.define((({})=>({inner_radius:[o.DistanceSpec,{field:\"inner_radius\"}],outer_radius:[o.DistanceSpec,{field:\"outer_radius\"}]})))}}t.Annulus=l,l.__name__=\"Annulus\",l.init_Annulus()},\n", " function _(e,i,s,t,n){t();const r=e(1),a=e(64),c=e(106),d=e(48),_=e(24),l=e(20),o=r.__importStar(e(18));class h extends a.XYGlyphView{_map_data(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this.radius):this.sradius=_.to_screen(this.radius)}_render(e,i,s){if(this.visuals.line.doit){const{sx:t,sy:n,sradius:r,start_angle:a,end_angle:c}=null!=s?s:this,d=\"anticlock\"==this.model.direction;for(const s of i){const i=t[s],_=n[s],l=r[s],o=a.get(s),h=c.get(s);isNaN(i+_+l+o+h)||(e.beginPath(),e.arc(i,_,l,o,h,d),this.visuals.line.set_vectorize(e,s),e.stroke())}}}draw_legend_for_index(e,i,s){c.generic_line_vector_legend(this.visuals,e,i,s)}}s.ArcView=h,h.__name__=\"ArcView\";class u extends a.XYGlyph{constructor(e){super(e)}static init_Arc(){this.prototype.default_view=h,this.mixins(d.LineVector),this.define((({})=>({direction:[l.Direction,\"anticlock\"],radius:[o.DistanceSpec,{field:\"radius\"}],start_angle:[o.AngleSpec,{field:\"start_angle\"}],end_angle:[o.AngleSpec,{field:\"end_angle\"}]})))}}s.Arc=u,u.__name__=\"Arc\",u.init_Arc()},\n", " function _(e,t,i,s,n){s();const o=e(1),c=e(48),r=e(98),a=e(106),_=e(65),d=o.__importStar(e(18));function l(e,t,i,s,n,o,c,r){const a=[],_=[[],[]];for(let _=0;_<=2;_++){let d,l,x;if(0===_?(l=6*e-12*i+6*n,d=-3*e+9*i-9*n+3*c,x=3*i-3*e):(l=6*t-12*s+6*o,d=-3*t+9*s-9*o+3*r,x=3*s-3*t),Math.abs(d)<1e-12){if(Math.abs(l)<1e-12)continue;const e=-x/l;0<e&&e<1&&a.push(e);continue}const h=l*l-4*x*d,y=Math.sqrt(h);if(h<0)continue;const p=(-l+y)/(2*d);0<p&&p<1&&a.push(p);const f=(-l-y)/(2*d);0<f&&f<1&&a.push(f)}let d=a.length;const l=d;for(;d--;){const l=a[d],x=1-l,h=x*x*x*e+3*x*x*l*i+3*x*l*l*n+l*l*l*c;_[0][d]=h;const y=x*x*x*t+3*x*x*l*s+3*x*l*l*o+l*l*l*r;_[1][d]=y}return _[0][l]=e,_[1][l]=t,_[0][l+1]=c,_[1][l+1]=r,[Math.min(..._[0]),Math.max(..._[1]),Math.max(..._[0]),Math.min(..._[1])]}class x extends r.GlyphView{_project_data(){_.inplace.project_xy(this._x0,this._y0),_.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{data_size:t,_x0:i,_y0:s,_x1:n,_y1:o,_cx0:c,_cy0:r,_cx1:a,_cy1:_}=this;for(let d=0;d<t;d++){const t=i[d],x=s[d],h=n[d],y=o[d],p=c[d],f=r[d],u=a[d],m=_[d];if(isNaN(t+h+x+y+p+f+u+m))e.add_empty();else{const[i,s,n,o]=l(t,x,h,y,p,f,u,m);e.add(i,s,n,o)}}}_render(e,t,i){if(this.visuals.line.doit){const{sx0:s,sy0:n,sx1:o,sy1:c,scx0:r,scy0:a,scx1:_,scy1:d}=null!=i?i:this;for(const i of t){const t=s[i],l=n[i],x=o[i],h=c[i],y=r[i],p=a[i],f=_[i],u=d[i];isNaN(t+l+x+h+y+p+f+u)||(e.beginPath(),e.moveTo(t,l),e.bezierCurveTo(y,p,f,u,x,h),this.visuals.line.set_vectorize(e,i),e.stroke())}}}draw_legend_for_index(e,t,i){a.generic_line_vector_legend(this.visuals,e,t,i)}scenterxy(){throw new Error(`${this}.scenterxy() is not implemented`)}}i.BezierView=x,x.__name__=\"BezierView\";class h extends r.Glyph{constructor(e){super(e)}static init_Bezier(){this.prototype.default_view=x,this.define((({})=>({x0:[d.XCoordinateSpec,{field:\"x0\"}],y0:[d.YCoordinateSpec,{field:\"y0\"}],x1:[d.XCoordinateSpec,{field:\"x1\"}],y1:[d.YCoordinateSpec,{field:\"y1\"}],cx0:[d.XCoordinateSpec,{field:\"cx0\"}],cy0:[d.YCoordinateSpec,{field:\"cy0\"}],cx1:[d.XCoordinateSpec,{field:\"cx1\"}],cy1:[d.YCoordinateSpec,{field:\"cy1\"}]}))),this.mixins(c.LineVector)}}i.Bezier=h,h.__name__=\"Bezier\",h.init_Bezier()},\n", " function _(s,i,e,t,r){t();const a=s(1),n=s(64),h=s(283),d=s(48),l=s(24),c=s(20),_=a.__importStar(s(107)),u=a.__importStar(s(18)),o=s(9),x=s(12),m=s(59);class y extends n.XYGlyphView{initialize(){super.initialize();const{webgl:s}=this.renderer.plot_view.canvas_view;null!=s&&(this.glglyph=new h.MarkerGL(s.gl,this,\"circle\"))}get use_radius(){return!(this.radius.is_Scalar()&&isNaN(this.radius.value))}_map_data(){if(this.use_radius)if(\"data\"==this.model.properties.radius.units)switch(this.model.radius_dimension){case\"x\":this.sradius=this.sdist(this.renderer.xscale,this._x,this.radius);break;case\"y\":this.sradius=this.sdist(this.renderer.yscale,this._y,this.radius);break;case\"max\":{const s=this.sdist(this.renderer.xscale,this._x,this.radius),i=this.sdist(this.renderer.yscale,this._y,this.radius);this.sradius=x.map(s,((s,e)=>Math.max(s,i[e])));break}case\"min\":{const s=this.sdist(this.renderer.xscale,this._x,this.radius),i=this.sdist(this.renderer.yscale,this._y,this.radius);this.sradius=x.map(s,((s,e)=>Math.min(s,i[e])));break}}else this.sradius=l.to_screen(this.radius),this._configure(\"max_size\",{value:2*this.max_radius});else{const s=new l.ScreenArray(this.size);this.sradius=x.map(s,(s=>s/2))}}_mask_data(){const{frame:s}=this.renderer.plot_view,i=s.x_target,e=s.y_target;let t,r;return this.use_radius&&\"data\"==this.model.properties.radius.units?(t=i.map((s=>this.renderer.xscale.invert(s))).widen(this.max_radius),r=e.map((s=>this.renderer.yscale.invert(s))).widen(this.max_radius)):(t=i.widen(this.max_size).map((s=>this.renderer.xscale.invert(s))),r=e.widen(this.max_size).map((s=>this.renderer.yscale.invert(s)))),this.index.indices({x0:t.start,x1:t.end,y0:r.start,y1:r.end})}_render(s,i,e){const{sx:t,sy:r,sradius:a}=null!=e?e:this;for(const e of i){const i=t[e],n=r[e],h=a[e];isNaN(i+n+h)||(s.beginPath(),s.arc(i,n,h,0,2*Math.PI,!1),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(s,e),s.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(s,e),s.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(s,e),s.stroke()))}}_hit_point(s){const{sx:i,sy:e}=s,t=this.renderer.xscale.invert(i),r=this.renderer.yscale.invert(e),{hit_dilation:a}=this.model;let n,h,d,l;if(this.use_radius&&\"data\"==this.model.properties.radius.units)n=t-this.max_radius*a,h=t+this.max_radius*a,d=r-this.max_radius*a,l=r+this.max_radius*a;else{const s=i-this.max_size*a,t=i+this.max_size*a;[n,h]=this.renderer.xscale.r_invert(s,t);const r=e-this.max_size*a,c=e+this.max_size*a;[d,l]=this.renderer.yscale.r_invert(r,c)}const c=this.index.indices({x0:n,x1:h,y0:d,y1:l}),_=[];if(this.use_radius&&\"data\"==this.model.properties.radius.units)for(const s of c){const i=(this.sradius[s]*a)**2,[e,n]=this.renderer.xscale.r_compute(t,this._x[s]),[h,d]=this.renderer.yscale.r_compute(r,this._y[s]);(e-n)**2+(h-d)**2<=i&&_.push(s)}else for(const s of c){const t=(this.sradius[s]*a)**2;(this.sx[s]-i)**2+(this.sy[s]-e)**2<=t&&_.push(s)}return new m.Selection({indices:_})}_hit_span(s){const{sx:i,sy:e}=s,t=this.bounds();let r,a,n,h;if(\"h\"==s.direction){let s,e;if(n=t.y0,h=t.y1,this.use_radius&&\"data\"==this.model.properties.radius.units)s=i-this.max_radius,e=i+this.max_radius,[r,a]=this.renderer.xscale.r_invert(s,e);else{const t=this.max_size/2;s=i-t,e=i+t,[r,a]=this.renderer.xscale.r_invert(s,e)}}else{let s,i;if(r=t.x0,a=t.x1,this.use_radius&&\"data\"==this.model.properties.radius.units)s=e-this.max_radius,i=e+this.max_radius,[n,h]=this.renderer.yscale.r_invert(s,i);else{const t=this.max_size/2;s=e-t,i=e+t,[n,h]=this.renderer.yscale.r_invert(s,i)}}const d=[...this.index.indices({x0:r,x1:a,y0:n,y1:h})];return new m.Selection({indices:d})}_hit_rect(s){const{sx0:i,sx1:e,sy0:t,sy1:r}=s,[a,n]=this.renderer.xscale.r_invert(i,e),[h,d]=this.renderer.yscale.r_invert(t,r),l=[...this.index.indices({x0:a,x1:n,y0:h,y1:d})];return new m.Selection({indices:l})}_hit_poly(s){const{sx:i,sy:e}=s,t=o.range(0,this.sx.length),r=[];for(let s=0,a=t.length;s<a;s++){const a=t[s];_.point_in_poly(this.sx[s],this.sy[s],i,e)&&r.push(a)}return new m.Selection({indices:r})}draw_legend_for_index(s,{x0:i,y0:e,x1:t,y1:r},a){const n=a+1,h=new Array(n);h[a]=(i+t)/2;const d=new Array(n);d[a]=(e+r)/2;const l=new Array(n);l[a]=.2*Math.min(Math.abs(t-i),Math.abs(r-e)),this._render(s,[a],{sx:h,sy:d,sradius:l})}}e.CircleView=y,y.__name__=\"CircleView\";class p extends n.XYGlyph{constructor(s){super(s)}static init_Circle(){this.prototype.default_view=y,this.mixins([d.LineVector,d.FillVector,d.HatchVector]),this.define((({Number:s})=>({angle:[u.AngleSpec,0],size:[u.ScreenDistanceSpec,{value:4}],radius:[u.NullDistanceSpec,null],radius_dimension:[c.RadiusDimension,\"x\"],hit_dilation:[s,1]})))}}e.Circle=p,p.__name__=\"Circle\",p.init_Circle()},\n", " function _(t,e,s,i,a){i();const r=t(1),o=t(109),_=t(113),l=r.__importDefault(t(284)),h=r.__importDefault(t(285)),n=t(282),f=t(12),u=t(19),c=t(24),g=t(22),b=t(11);function d(t,e,s,i,a,r,o){if(a.doit)if(r.is_Scalar()&&o.is_Scalar()){e.used=!1;const[i,a,_,l]=g.color2rgba(r.value,o.value);t.set_attribute(s,\"vec4\",[i/255,a/255,_/255,l/255])}else{let a;if(e.used=!0,r.is_Vector()){const t=new c.ColorArray(r.array);if(a=new c.RGBAArray(t.buffer),!o.is_Scalar()||1!=o.value)for(let t=0;t<i;t++){const e=4*t+3;255==a[e]&&(a[e]=255*o.get(t))}}else if(r.is_Scalar()&&o.is_Vector()){const t=new c.ColorArray(i);t.fill(r.value),a=new c.RGBAArray(t.buffer);for(let t=0;t<i;t++)for(let t=0;t<i;t++){const e=4*t+3;255==a[e]&&(a[e]=255*o.get(t))}}else b.unreachable();e.set_size(4*i),e.set_data(0,a),t.set_attribute(s,\"vec4_uint8\",e,0,0,!0)}else e.used=!1,t.set_attribute(s,\"vec4\",[0,0,0,0])}class p extends _.BaseGLGlyph{constructor(t,e,s){super(t,e),this.glyph=e,this.marker_type=s;const i=[`#define USE_${s.toUpperCase()}`],a=l.default,r=`${i.join(\"\\n\")}\\n\\n${h.default}`;this.prog=new o.Program(t),this.prog.set_shaders(a,r),this.vbo_sx=new o.VertexBuffer(t),this.prog.set_attribute(\"a_sx\",\"float\",this.vbo_sx),this.vbo_sy=new o.VertexBuffer(t),this.prog.set_attribute(\"a_sy\",\"float\",this.vbo_sy),this.vbo_s=new o.VertexBuffer(t),this.prog.set_attribute(\"a_size\",\"float\",this.vbo_s),this.vbo_a=new o.VertexBuffer(t),this.prog.set_attribute(\"a_angle\",\"float\",this.vbo_a),this.vbo_linewidth=new o.VertexBuffer(t),this.vbo_fg_color=new o.VertexBuffer(t),this.vbo_bg_color=new o.VertexBuffer(t),this.index_buffer=new o.IndexBuffer(t)}static is_supported(t){switch(t){case\"asterisk\":case\"circle\":case\"circle_cross\":case\"circle_x\":case\"cross\":case\"diamond\":case\"diamond_cross\":case\"hex\":case\"inverted_triangle\":case\"square\":case\"square_cross\":case\"square_x\":case\"star\":case\"triangle\":case\"x\":return!0;default:return!1}}draw(t,e,s){const i=e.glglyph,{nvertices:a}=i;if(i.data_changed&&(i._set_data(a),this.glyph instanceof n.CircleView&&null!=this.glyph.radius&&this.vbo_s.set_data(0,f.map(this.glyph.sradius,(t=>2*t))),i.data_changed=!1),this.visuals_changed&&(this._set_visuals(a),this.visuals_changed=!1),this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[s.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[s.width,s.height]),this.prog.set_attribute(\"a_sx\",\"float\",i.vbo_sx),this.prog.set_attribute(\"a_sy\",\"float\",i.vbo_sy),this.prog.set_attribute(\"a_size\",\"float\",i.vbo_s),this.prog.set_attribute(\"a_angle\",\"float\",i.vbo_a),0!=t.length)if(t.length===a)this.prog.draw(this.gl.POINTS,[0,a]);else if(a<65535){const e=window.navigator.userAgent;e.indexOf(\"MSIE \")+e.indexOf(\"Trident/\")+e.indexOf(\"Edge/\")>0&&u.logger.warn(\"WebGL warning: IE is known to produce 1px sprites whith selections.\"),this.index_buffer.set_size(2*t.length),this.index_buffer.set_data(0,new Uint16Array(t)),this.prog.draw(this.gl.POINTS,this.index_buffer)}else{const e=64e3,s=[];for(let t=0,i=Math.ceil(a/e);t<i;t++)s.push([]);for(let i=0,a=t.length;i<a;i++){const a=t[i]%e;s[Math.floor(t[i]/e)].push(a)}for(let t=0,a=s.length;t<a;t++){const a=new Uint16Array(s[t]),r=t*e*4;0!==a.length&&(this.prog.set_attribute(\"a_sx\",\"float\",i.vbo_sx,0,r),this.prog.set_attribute(\"a_sy\",\"float\",i.vbo_sy,0,r),this.prog.set_attribute(\"a_size\",\"float\",i.vbo_s,0,r),this.prog.set_attribute(\"a_angle\",\"float\",i.vbo_a,0,r),this.vbo_linewidth.used&&this.prog.set_attribute(\"a_linewidth\",\"float\",this.vbo_linewidth,0,r),this.vbo_fg_color.used&&this.prog.set_attribute(\"a_fg_color\",\"vec4_uint8\",this.vbo_fg_color,0,4*r,!0),this.vbo_bg_color.used&&this.prog.set_attribute(\"a_bg_color\",\"vec4_uint8\",this.vbo_bg_color,0,4*r,!0),this.index_buffer.set_size(2*a.length),this.index_buffer.set_data(0,a),this.prog.draw(this.gl.POINTS,this.index_buffer))}}}_set_data(t){const e=4*t;this.vbo_sx.set_size(e),this.vbo_sy.set_size(e),this.vbo_a.set_size(e),this.vbo_s.set_size(e),this.vbo_sx.set_data(0,this.glyph.sx),this.vbo_sy.set_data(0,this.glyph.sy),null!=this.glyph.angle&&this.vbo_a.set_data(0,new Float32Array(this.glyph.angle)),this.glyph instanceof n.CircleView&&null!=this.glyph.radius?this.vbo_s.set_data(0,f.map(this.glyph.sradius,(t=>2*t))):this.vbo_s.set_data(0,new Float32Array(this.glyph.size))}_set_visuals(t){const{line:e,fill:s}=this.glyph.visuals;!function(t,e,s,i,a,r){if(a.doit){if(r.is_Scalar())e.used=!1,t.set_attribute(s,\"float\",[r.value]);else if(r.is_Vector()){e.used=!0;const a=new Float32Array(r.array);e.set_size(4*i),e.set_data(0,a),t.set_attribute(s,\"float\",e)}}else e.used=!1,t.set_attribute(s,\"float\",[0])}(this.prog,this.vbo_linewidth,\"a_linewidth\",t,e,e.line_width),d(this.prog,this.vbo_fg_color,\"a_fg_color\",t,e,e.line_color,e.line_alpha),d(this.prog,this.vbo_bg_color,\"a_bg_color\",t,s,s.fill_color,s.fill_alpha),this.prog.set_uniform(\"u_antialias\",\"float\",[.8])}}s.MarkerGL=p,p.__name__=\"MarkerGL\"},\n", " function _(n,i,a,o,_){o();a.default=\"\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\n//\\nuniform float u_pixel_ratio;\\nuniform vec2 u_canvas_size;\\nuniform vec2 u_offset;\\nuniform vec2 u_scale;\\nuniform float u_antialias;\\n//\\nattribute float a_sx;\\nattribute float a_sy;\\nattribute float a_size;\\nattribute float a_angle; // in radians\\nattribute float a_linewidth;\\nattribute vec4 a_fg_color;\\nattribute vec4 a_bg_color;\\n//\\nvarying float v_linewidth;\\nvarying float v_size;\\nvarying vec4 v_fg_color;\\nvarying vec4 v_bg_color;\\nvarying vec2 v_rotation;\\n\\nvoid main (void)\\n{\\n v_size = a_size * u_pixel_ratio;\\n v_linewidth = a_linewidth * u_pixel_ratio;\\n v_fg_color = a_fg_color;\\n v_bg_color = a_bg_color;\\n v_rotation = vec2(cos(-a_angle), sin(-a_angle));\\n vec2 pos = vec2(a_sx, a_sy); // in pixels\\n pos += 0.5; // make up for Bokeh's offset\\n pos /= u_canvas_size / u_pixel_ratio; // in 0..1\\n gl_Position = vec4(pos*2.0-1.0, 0.0, 1.0);\\n gl_Position.y *= -1.0;\\n gl_PointSize = SQRT_2 * v_size + 2.0 * (v_linewidth + 1.5*u_antialias);\\n}\\n\"},\n", " function _(n,a,s,e,t){e();s.default='\\nprecision mediump float;\\n\\nconst float SQRT_2 = 1.4142135623730951;\\nconst float PI = 3.14159265358979323846264;\\n\\nconst float IN_ANGLE = 0.6283185307179586; // PI/5. = 36 degrees (star of 5 pikes)\\n//const float OUT_ANGLE = PI/2. - IN_ANGLE; // External angle for regular stars\\nconst float COS_A = 0.8090169943749475; // cos(IN_ANGLE)\\nconst float SIN_A = 0.5877852522924731; // sin(IN_ANGLE)\\nconst float COS_B = 0.5877852522924731; // cos(OUT_ANGLE)\\nconst float SIN_B = 0.8090169943749475; // sin(OUT_ANGLE)\\n\\n//\\nuniform float u_antialias;\\n//\\nvarying vec4 v_fg_color;\\nvarying vec4 v_bg_color;\\nvarying float v_linewidth;\\nvarying float v_size;\\nvarying vec2 v_rotation;\\n\\n#ifdef USE_ASTERISK\\n// asterisk\\nfloat marker(vec2 P, float size)\\n{\\n // Masks\\n float diamond = max(abs(SQRT_2 / 2.0 * (P.x - P.y)), abs(SQRT_2 / 2.0 * (P.x + P.y))) - size / (2.0 * SQRT_2);\\n float square = max(abs(P.x), abs(P.y)) - size / (2.0 * SQRT_2);\\n // Shapes\\n float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0; // bit of \"width\" for aa\\n float cross = min(abs(P.x), abs(P.y)) - size / 100.0; // bit of \"width\" for aa\\n // Result is union of masked shapes\\n return min(max(X, diamond), max(cross, square));\\n}\\n#endif\\n\\n#ifdef USE_CIRCLE\\n// circle\\nfloat marker(vec2 P, float size)\\n{\\n return length(P) - size/2.0;\\n}\\n#endif\\n\\n#ifdef USE_SQUARE\\n// square\\nfloat marker(vec2 P, float size)\\n{\\n return max(abs(P.x), abs(P.y)) - size/2.0;\\n}\\n#endif\\n\\n#ifdef USE_DIAMOND\\n// diamond\\nfloat marker(vec2 P, float size)\\n{\\n float x = SQRT_2 / 2.0 * (P.x * 1.5 - P.y);\\n float y = SQRT_2 / 2.0 * (P.x * 1.5 + P.y);\\n float r1 = max(abs(x), abs(y)) - size / (2.0 * SQRT_2);\\n return r1 / SQRT_2;\\n}\\n#endif\\n\\n#ifdef USE_HEX\\n// hex\\nfloat marker(vec2 P, float size)\\n{\\n vec2 q = abs(P);\\n return max(q.y * 0.57735 + q.x - 1.0 * size/2.0, q.y - 0.866 * size/2.0);\\n}\\n#endif\\n\\n#ifdef USE_STAR\\n// star\\n// https://iquilezles.org/www/articles/distfunctions2d/distfunctions2d.htm\\nfloat marker(vec2 P, float size)\\n{\\n float bn = mod(atan(P.x, -P.y), 2.0*IN_ANGLE) - IN_ANGLE;\\n P = length(P)*vec2(cos(bn), abs(sin(bn)));\\n P -= size*vec2(COS_A, SIN_A)/2.;\\n P += vec2(COS_B, SIN_B)*clamp(-(P.x*COS_B + P.y*SIN_B), 0.0, size*SIN_A/SIN_B/2.);\\n\\n return length(P)*sign(P.x);\\n}\\n#endif\\n\\n#ifdef USE_TRIANGLE\\n// triangle\\nfloat marker(vec2 P, float size)\\n{\\n P.y -= size * 0.3;\\n float x = SQRT_2 / 2.0 * (P.x * 1.7 - P.y);\\n float y = SQRT_2 / 2.0 * (P.x * 1.7 + P.y);\\n float r1 = max(abs(x), abs(y)) - size / 1.6;\\n float r2 = P.y;\\n return max(r1 / SQRT_2, r2); // Intersect diamond with rectangle\\n}\\n#endif\\n\\n#ifdef USE_INVERTED_TRIANGLE\\n// inverted_triangle\\nfloat marker(vec2 P, float size)\\n{\\n P.y += size * 0.3;\\n float x = SQRT_2 / 2.0 * (P.x * 1.7 - P.y);\\n float y = SQRT_2 / 2.0 * (P.x * 1.7 + P.y);\\n float r1 = max(abs(x), abs(y)) - size / 1.6;\\n float r2 = - P.y;\\n return max(r1 / SQRT_2, r2); // Intersect diamond with rectangle\\n}\\n#endif\\n\\n#ifdef USE_CROSS\\n// cross\\nfloat marker(vec2 P, float size)\\n{\\n float square = max(abs(P.x), abs(P.y)) - size / 2.5; // 2.5 is a tweak\\n float cross = min(abs(P.x), abs(P.y)) - size / 100.0; // bit of \"width\" for aa\\n return max(square, cross);\\n}\\n#endif\\n\\n#ifdef USE_CIRCLE_CROSS\\n// circle_cross\\nfloat marker(vec2 P, float size)\\n{\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float circle = length(P) - size/2.0;\\n float c1 = max(circle, s1);\\n float c2 = max(circle, s2);\\n float c3 = max(circle, s3);\\n float c4 = max(circle, s4);\\n // Union\\n return min(min(min(c1, c2), c3), c4);\\n}\\n#endif\\n\\n#ifdef USE_SQUARE_CROSS\\n// square_cross\\nfloat marker(vec2 P, float size)\\n{\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float square = max(abs(P.x), abs(P.y)) - size/2.0;\\n float c1 = max(square, s1);\\n float c2 = max(square, s2);\\n float c3 = max(square, s3);\\n float c4 = max(square, s4);\\n // Union\\n return min(min(min(c1, c2), c3), c4);\\n}\\n#endif\\n\\n#ifdef USE_DIAMOND_CROSS\\n// diamond_cross\\nfloat marker(vec2 P, float size)\\n{\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float x = SQRT_2 / 2.0 * (P.x * 1.5 - P.y);\\n float y = SQRT_2 / 2.0 * (P.x * 1.5 + P.y);\\n float diamond = max(abs(x), abs(y)) - size / (2.0 * SQRT_2);\\n diamond /= SQRT_2;\\n float c1 = max(diamond, s1);\\n float c2 = max(diamond, s2);\\n float c3 = max(diamond, s3);\\n float c4 = max(diamond, s4);\\n // Union\\n return min(min(min(c1, c2), c3), c4);\\n}\\n#endif\\n\\n#ifdef USE_X\\n// x\\nfloat marker(vec2 P, float size)\\n{\\n float circle = length(P) - size / 1.6;\\n float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0; // bit of \"width\" for aa\\n return max(circle, X);\\n}\\n#endif\\n\\n#ifdef USE_CIRCLE_X\\n// circle_x\\nfloat marker(vec2 P, float size)\\n{\\n float x = P.x - P.y;\\n float y = P.x + P.y;\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(x - qs), abs(y - qs)) - qs;\\n float s2 = max(abs(x + qs), abs(y - qs)) - qs;\\n float s3 = max(abs(x - qs), abs(y + qs)) - qs;\\n float s4 = max(abs(x + qs), abs(y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float circle = length(P) - size/2.0;\\n float c1 = max(circle, s1);\\n float c2 = max(circle, s2);\\n float c3 = max(circle, s3);\\n float c4 = max(circle, s4);\\n // Union\\n float almost = min(min(min(c1, c2), c3), c4);\\n // In this case, the X is also outside of the main shape\\n float Xmask = length(P) - size / 1.6; // a circle\\n float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0; // bit of \"width\" for aa\\n return min(max(X, Xmask), almost);\\n}\\n#endif\\n\\n#ifdef USE_SQUARE_X\\n// square_x\\nfloat marker(vec2 P, float size)\\n{\\n float x = P.x - P.y;\\n float y = P.x + P.y;\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(x - qs), abs(y - qs)) - qs;\\n float s2 = max(abs(x + qs), abs(y - qs)) - qs;\\n float s3 = max(abs(x - qs), abs(y + qs)) - qs;\\n float s4 = max(abs(x + qs), abs(y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float square = max(abs(P.x), abs(P.y)) - size/2.0;\\n float c1 = max(square, s1);\\n float c2 = max(square, s2);\\n float c3 = max(square, s3);\\n float c4 = max(square, s4);\\n // Union\\n return min(min(min(c1, c2), c3), c4);\\n}\\n#endif\\n\\nvec4 outline(float distance, float linewidth, float antialias, vec4 fg_color, vec4 bg_color)\\n{\\n vec4 frag_color;\\n float t = linewidth/2.0 - antialias;\\n float signed_distance = distance;\\n float border_distance = abs(signed_distance) - t;\\n float alpha = border_distance/antialias;\\n alpha = exp(-alpha*alpha);\\n\\n // If fg alpha is zero, it probably means no outline. To avoid a dark outline\\n // shining through due to aa, we set the fg color to the bg color. Avoid if (i.e. branching).\\n float select = float(bool(fg_color.a));\\n fg_color.rgb = select * fg_color.rgb + (1.0 - select) * bg_color.rgb;\\n // Similarly, if we want a transparent bg\\n select = float(bool(bg_color.a));\\n bg_color.rgb = select * bg_color.rgb + (1.0 - select) * fg_color.rgb;\\n\\n if( border_distance < 0.0)\\n frag_color = fg_color;\\n else if( signed_distance < 0.0 ) {\\n frag_color = mix(bg_color, fg_color, sqrt(alpha));\\n } else {\\n if( abs(signed_distance) < (linewidth/2.0 + antialias) ) {\\n frag_color = vec4(fg_color.rgb, fg_color.a * alpha);\\n } else {\\n discard;\\n }\\n }\\n return frag_color;\\n}\\n\\nvoid main()\\n{\\n vec2 P = gl_PointCoord.xy - vec2(0.5, 0.5);\\n P = vec2(v_rotation.x*P.x - v_rotation.y*P.y,\\n v_rotation.y*P.x + v_rotation.x*P.y);\\n float point_size = SQRT_2*v_size + 2.0 * (v_linewidth + 1.5*u_antialias);\\n float distance = marker(P*point_size, v_size);\\n gl_FragColor = outline(distance, v_linewidth, u_antialias, v_fg_color, v_bg_color);\\n}\\n'},\n", " function _(e,l,i,s,t){s();const _=e(287);class p extends _.EllipseOvalView{}i.EllipseView=p,p.__name__=\"EllipseView\";class n extends _.EllipseOval{constructor(e){super(e)}static init_Ellipse(){this.prototype.default_view=p}}i.Ellipse=n,n.__name__=\"Ellipse\",n.init_Ellipse()},\n", " function _(t,s,i,e,h){e();const r=t(1),a=t(288),n=r.__importStar(t(107)),l=t(24),o=t(59),_=r.__importStar(t(18));class d extends a.CenterRotatableView{_map_data(){\"data\"==this.model.properties.width.units?this.sw=this.sdist(this.renderer.xscale,this._x,this.width,\"center\"):this.sw=l.to_screen(this.width),\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this.height,\"center\"):this.sh=l.to_screen(this.height)}_render(t,s,i){const{sx:e,sy:h,sw:r,sh:a,angle:n}=null!=i?i:this;for(const i of s){const s=e[i],l=h[i],o=r[i],_=a[i],d=n.get(i);isNaN(s+l+o+_+d)||(t.beginPath(),t.ellipse(s,l,o/2,_/2,d,0,2*Math.PI),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,i),t.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(t,i),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,i),t.stroke()))}}_hit_point(t){let s,i,e,h,r,a,l,_,d;const{sx:c,sy:w}=t,x=this.renderer.xscale.invert(c),p=this.renderer.yscale.invert(w);\"data\"==this.model.properties.width.units?(s=x-this.max_width,i=x+this.max_width):(a=c-this.max_width,l=c+this.max_width,[s,i]=this.renderer.xscale.r_invert(a,l)),\"data\"==this.model.properties.height.units?(e=p-this.max_height,h=p+this.max_height):(_=w-this.max_height,d=w+this.max_height,[e,h]=this.renderer.yscale.r_invert(_,d));const m=this.index.indices({x0:s,x1:i,y0:e,y1:h}),v=[];for(const t of m)r=n.point_in_ellipse(c,w,this.angle.get(t),this.sh[t]/2,this.sw[t]/2,this.sx[t],this.sy[t]),r&&v.push(t);return new o.Selection({indices:v})}draw_legend_for_index(t,{x0:s,y0:i,x1:e,y1:h},r){const a=r+1,n=new Array(a);n[r]=(s+e)/2;const l=new Array(a);l[r]=(i+h)/2;const o=this.sw[r]/this.sh[r],d=.8*Math.min(Math.abs(e-s),Math.abs(h-i)),c=new Array(a),w=new Array(a);o>1?(c[r]=d,w[r]=d/o):(c[r]=d*o,w[r]=d);const x=new _.UniformScalar(0,a);this._render(t,[r],{sx:n,sy:l,sw:c,sh:w,angle:x})}}i.EllipseOvalView=d,d.__name__=\"EllipseOvalView\";class c extends a.CenterRotatable{constructor(t){super(t)}}i.EllipseOval=c,c.__name__=\"EllipseOval\"},\n", " function _(t,e,i,a,n){a();const s=t(1),h=t(64),r=t(48),o=s.__importStar(t(18));class _ extends h.XYGlyphView{get max_w2(){return\"data\"==this.model.properties.width.units?this.max_width/2:0}get max_h2(){return\"data\"==this.model.properties.height.units?this.max_height/2:0}_bounds({x0:t,x1:e,y0:i,y1:a}){const{max_w2:n,max_h2:s}=this;return{x0:t-n,x1:e+n,y0:i-s,y1:a+s}}}i.CenterRotatableView=_,_.__name__=\"CenterRotatableView\";class l extends h.XYGlyph{constructor(t){super(t)}static init_CenterRotatable(){this.mixins([r.LineVector,r.FillVector,r.HatchVector]),this.define((({})=>({angle:[o.AngleSpec,0],width:[o.DistanceSpec,{field:\"width\"}],height:[o.DistanceSpec,{field:\"height\"}]})))}}i.CenterRotatable=l,l.__name__=\"CenterRotatable\",l.init_CenterRotatable()},\n", " function _(t,e,s,i,h){i();const r=t(1),a=t(290),n=t(24),_=r.__importStar(t(18));class o extends a.BoxView{scenterxy(t){return[(this.sleft[t]+this.sright[t])/2,this.sy[t]]}_lrtb(t){const e=this._left[t],s=this._right[t],i=this._y[t],h=this.height.get(t)/2;return[Math.min(e,s),Math.max(e,s),i+h,i-h]}_map_data(){this.sy=this.renderer.yscale.v_compute(this._y),this.sh=this.sdist(this.renderer.yscale,this._y,this.height,\"center\"),this.sleft=this.renderer.xscale.v_compute(this._left),this.sright=this.renderer.xscale.v_compute(this._right);const t=this.sy.length;this.stop=new n.ScreenArray(t),this.sbottom=new n.ScreenArray(t);for(let e=0;e<t;e++)this.stop[e]=this.sy[e]-this.sh[e]/2,this.sbottom[e]=this.sy[e]+this.sh[e]/2;this._clamp_viewport()}}s.HBarView=o,o.__name__=\"HBarView\";class c extends a.Box{constructor(t){super(t)}static init_HBar(){this.prototype.default_view=o,this.define((({})=>({left:[_.XCoordinateSpec,{value:0}],y:[_.YCoordinateSpec,{field:\"y\"}],height:[_.NumberSpec,{value:1}],right:[_.XCoordinateSpec,{field:\"right\"}]})))}}s.HBar=c,c.__name__=\"HBar\",c.init_HBar()},\n", " function _(t,e,s,i,r){i();const n=t(48),o=t(98),a=t(106),h=t(59);class c extends o.GlyphView{get_anchor_point(t,e,s){const i=Math.min(this.sleft[e],this.sright[e]),r=Math.max(this.sright[e],this.sleft[e]),n=Math.min(this.stop[e],this.sbottom[e]),o=Math.max(this.sbottom[e],this.stop[e]);switch(t){case\"top_left\":return{x:i,y:n};case\"top\":case\"top_center\":return{x:(i+r)/2,y:n};case\"top_right\":return{x:r,y:n};case\"bottom_left\":return{x:i,y:o};case\"bottom\":case\"bottom_center\":return{x:(i+r)/2,y:o};case\"bottom_right\":return{x:r,y:o};case\"left\":case\"center_left\":return{x:i,y:(n+o)/2};case\"center\":case\"center_center\":return{x:(i+r)/2,y:(n+o)/2};case\"right\":case\"center_right\":return{x:r,y:(n+o)/2}}}_index_data(t){const{min:e,max:s}=Math,{data_size:i}=this;for(let r=0;r<i;r++){const[i,n,o,a]=this._lrtb(r);isNaN(i+n+o+a)||!isFinite(i+n+o+a)?t.add_empty():t.add(e(i,n),e(o,a),s(n,i),s(o,a))}}_render(t,e,s){const{sleft:i,sright:r,stop:n,sbottom:o}=null!=s?s:this;for(const s of e){const e=i[s],h=n[s],c=r[s],_=o[s];function a(){t.beginPath(),t.rect(e,h,c-e,_-h)}isNaN(e+h+c+_)||(this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,s),a(),t.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(t,s),a(),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,s),a(),t.stroke()))}}_clamp_viewport(){const t=this.renderer.plot_view.frame.bbox.h_range,e=this.renderer.plot_view.frame.bbox.v_range,s=this.stop.length;for(let i=0;i<s;i++)this.stop[i]=Math.max(this.stop[i],e.start),this.sbottom[i]=Math.min(this.sbottom[i],e.end),this.sleft[i]=Math.max(this.sleft[i],t.start),this.sright[i]=Math.min(this.sright[i],t.end)}_hit_rect(t){return this._hit_rect_against_index(t)}_hit_point(t){const{sx:e,sy:s}=t,i=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(s),n=[...this.index.indices({x0:i,y0:r,x1:i,y1:r})];return new h.Selection({indices:n})}_hit_span(t){const{sx:e,sy:s}=t;let i;if(\"v\"==t.direction){const t=this.renderer.yscale.invert(s),e=this.renderer.plot_view.frame.bbox.h_range,[r,n]=this.renderer.xscale.r_invert(e.start,e.end);i=[...this.index.indices({x0:r,y0:t,x1:n,y1:t})]}else{const t=this.renderer.xscale.invert(e),s=this.renderer.plot_view.frame.bbox.v_range,[r,n]=this.renderer.yscale.r_invert(s.start,s.end);i=[...this.index.indices({x0:t,y0:r,x1:t,y1:n})]}return new h.Selection({indices:i})}draw_legend_for_index(t,e,s){a.generic_area_vector_legend(this.visuals,t,e,s)}}s.BoxView=c,c.__name__=\"BoxView\";class _ extends o.Glyph{constructor(t){super(t)}static init_Box(){this.mixins([n.LineVector,n.FillVector,n.HatchVector])}}s.Box=_,_.__name__=\"Box\",_.init_Box()},\n", " function _(e,t,s,i,r){i();const n=e(1),o=e(98),a=n.__importStar(e(107)),c=n.__importStar(e(18)),l=e(48),h=e(20),_=e(65),d=e(106),x=e(59);class p extends o.GlyphView{scenterxy(e){return[this.sx[e],this.sy[e]]}_set_data(){const{orientation:e,size:t,aspect_scale:s}=this.model,{q:i,r}=this,n=this.q.length;this._x=new Float64Array(n),this._y=new Float64Array(n);const{_x:o,_y:a}=this,c=Math.sqrt(3);if(\"pointytop\"==e)for(let e=0;e<n;e++){const n=i.get(e),l=r.get(e)/2;o[e]=t*c*(n+l)/s,a[e]=-3*t*l}else for(let e=0;e<n;e++){const n=i.get(e)/2,l=r.get(e);o[e]=3*t*n,a[e]=-t*c*(l+n)*s}}_project_data(){_.inplace.project_xy(this._x,this._y)}_index_data(e){let t=this.model.size,s=Math.sqrt(3)*t/2;\"flattop\"==this.model.orientation?([s,t]=[t,s],t*=this.model.aspect_scale):s/=this.model.aspect_scale;const{data_size:i}=this;for(let r=0;r<i;r++){const i=this._x[r],n=this._y[r];isNaN(i+n)||!isFinite(i+n)?e.add_empty():e.add(i-s,n-t,i+s,n+t)}}map_data(){[this.sx,this.sy]=this.renderer.coordinates.map_to_screen(this._x,this._y),[this.svx,this.svy]=this._get_unscaled_vertices()}_get_unscaled_vertices(){const e=this.model.size,t=this.model.aspect_scale;if(\"pointytop\"==this.model.orientation){const s=this.renderer.yscale,i=this.renderer.xscale,r=Math.abs(s.compute(0)-s.compute(e)),n=Math.sqrt(3)/2*Math.abs(i.compute(0)-i.compute(e))/t,o=r/2;return[[0,-n,-n,0,n,n],[r,o,-o,-r,-o,o]]}{const s=this.renderer.xscale,i=this.renderer.yscale,r=Math.abs(s.compute(0)-s.compute(e)),n=Math.sqrt(3)/2*Math.abs(i.compute(0)-i.compute(e))*t,o=r/2;return[[r,o,-o,-r,-o,o],[0,-n,-n,0,n,n]]}}_render(e,t,s){const{sx:i,sy:r,svx:n,svy:o,scale:a}=null!=s?s:this;for(const s of t){const t=i[s],c=r[s],l=a.get(s);if(!isNaN(t+c+l)){e.translate(t,c),e.beginPath();for(let t=0;t<6;t++)e.lineTo(n[t]*l,o[t]*l);e.closePath(),e.translate(-t,-c),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,s),e.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(e,s),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,s),e.stroke())}}}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),r=this.renderer.yscale.invert(s),n=this.index.indices({x0:i,y0:r,x1:i,y1:r}),o=[];for(const e of n)a.point_in_poly(t-this.sx[e],s-this.sy[e],this.svx,this.svy)&&o.push(e);return new x.Selection({indices:o})}_hit_span(e){const{sx:t,sy:s}=e;let i;if(\"v\"==e.direction){const e=this.renderer.yscale.invert(s),t=this.renderer.plot_view.frame.bbox.h_range,[r,n]=this.renderer.xscale.r_invert(t.start,t.end);i=[...this.index.indices({x0:r,y0:e,x1:n,y1:e})]}else{const e=this.renderer.xscale.invert(t),s=this.renderer.plot_view.frame.bbox.v_range,[r,n]=this.renderer.yscale.r_invert(s.start,s.end);i=[...this.index.indices({x0:e,y0:r,x1:e,y1:n})]}return new x.Selection({indices:i})}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:r}=e,[n,o]=this.renderer.xscale.r_invert(t,s),[a,c]=this.renderer.yscale.r_invert(i,r),l=[...this.index.indices({x0:n,x1:o,y0:a,y1:c})];return new x.Selection({indices:l})}draw_legend_for_index(e,t,s){d.generic_area_vector_legend(this.visuals,e,t,s)}}s.HexTileView=p,p.__name__=\"HexTileView\";class y extends o.Glyph{constructor(e){super(e)}static init_HexTile(){this.prototype.default_view=p,this.mixins([l.LineVector,l.FillVector,l.HatchVector]),this.define((({Number:e})=>({r:[c.NumberSpec,{field:\"r\"}],q:[c.NumberSpec,{field:\"q\"}],scale:[c.NumberSpec,1],size:[e,1],aspect_scale:[e,1],orientation:[h.HexTileOrientation,\"pointytop\"]}))),this.override({line_color:null})}}s.HexTile=y,y.__name__=\"HexTile\",y.init_HexTile()},\n", " function _(e,a,t,_,s){_();const i=e(293),n=e(203),r=e(214);class o extends i.ImageBaseView{connect_signals(){super.connect_signals(),this.connect(this.model.color_mapper.change,(()=>this._update_image()))}_update_image(){null!=this.image_data&&(this._set_data(null),this.renderer.request_render())}_flat_img_to_buf8(e){return this.model.color_mapper.rgba_mapper.v_compute(e)}}t.ImageView=o,o.__name__=\"ImageView\";class m extends i.ImageBase{constructor(e){super(e)}static init_Image(){this.prototype.default_view=o,this.define((({Ref:e})=>({color_mapper:[e(n.ColorMapper),()=>new r.LinearColorMapper({palette:[\"#000000\",\"#252525\",\"#525252\",\"#737373\",\"#969696\",\"#bdbdbd\",\"#d9d9d9\",\"#f0f0f0\",\"#ffffff\"]})]})))}}t.Image=m,m.__name__=\"Image\",m.init_Image()},\n", " function _(e,t,i,s,a){s();const h=e(1),n=e(64),r=e(24),_=h.__importStar(e(18)),d=e(59),l=e(9),g=e(29),o=e(11);class c extends n.XYGlyphView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.global_alpha.change,(()=>this.renderer.request_render()))}_render(e,t,i){const{image_data:s,sx:a,sy:h,sw:n,sh:r}=null!=i?i:this,_=e.getImageSmoothingEnabled();e.setImageSmoothingEnabled(!1),e.globalAlpha=this.model.global_alpha;for(const i of t){const t=s[i],_=a[i],d=h[i],l=n[i],g=r[i];if(null==t||isNaN(_+d+l+g))continue;const o=d;e.translate(0,o),e.scale(1,-1),e.translate(0,-o),e.drawImage(t,0|_,0|d,l,g),e.translate(0,o),e.scale(1,-1),e.translate(0,-o)}e.setImageSmoothingEnabled(_)}_set_data(e){this._set_width_heigh_data();for(let t=0,i=this.image.length;t<i;t++){if(null!=e&&e.indexOf(t)<0)continue;const i=this.image.get(t);let s;g.is_NDArray(i)?(o.assert(2==i.dimension,\"expected a 2D array\"),s=i,this._height[t]=i.shape[0],this._width[t]=i.shape[1]):(s=l.concat(i),this._height[t]=i.length,this._width[t]=i[0].length);const a=this._flat_img_to_buf8(s);this._set_image_data_from_buffer(t,a)}}_index_data(e){const{data_size:t}=this;for(let i=0;i<t;i++){const[t,s,a,h]=this._lrtb(i);isNaN(t+s+a+h)||!isFinite(t+s+a+h)?e.add_empty():e.add(t,h,s,a)}}_lrtb(e){const t=this.dw.get(e),i=this.dh.get(e),s=this.renderer.xscale.source_range,a=this._x[e],h=s.is_reversed?a-t:a+t,n=this.renderer.yscale.source_range,r=this._y[e],_=n.is_reversed?r-i:r+i,[d,l]=a<h?[a,h]:[h,a],[g,o]=r<_?[r,_]:[_,r];return[d,l,o,g]}_set_width_heigh_data(){null!=this.image_data&&this.image_data.length==this.image.length||(this.image_data=new Array(this.image.length)),null!=this._width&&this._width.length==this.image.length||(this._width=new Uint32Array(this.image.length)),null!=this._height&&this._height.length==this.image.length||(this._height=new Uint32Array(this.image.length))}_get_or_create_canvas(e){const t=this.image_data[e];if(null!=t&&t.width==this._width[e]&&t.height==this._height[e])return t;{const t=document.createElement(\"canvas\");return t.width=this._width[e],t.height=this._height[e],t}}_set_image_data_from_buffer(e,t){const i=this._get_or_create_canvas(e),s=i.getContext(\"2d\"),a=s.getImageData(0,0,this._width[e],this._height[e]);a.data.set(t),s.putImageData(a,0,0),this.image_data[e]=i}_map_data(){\"data\"==this.model.properties.dw.units?this.sw=this.sdist(this.renderer.xscale,this._x,this.dw,\"edge\",this.model.dilate):this.sw=r.to_screen(this.dw),\"data\"==this.model.properties.dh.units?this.sh=this.sdist(this.renderer.yscale,this._y,this.dh,\"edge\",this.model.dilate):this.sh=r.to_screen(this.dh)}_image_index(e,t,i){const[s,a,h,n]=this._lrtb(e),r=this._width[e],_=this._height[e],d=(a-s)/r,l=(h-n)/_;let g=Math.floor((t-s)/d),o=Math.floor((i-n)/l);return this.renderer.xscale.source_range.is_reversed&&(g=r-g-1),this.renderer.yscale.source_range.is_reversed&&(o=_-o-1),{index:e,dim1:g,dim2:o,flat_index:o*r+g}}_hit_point(e){const{sx:t,sy:i}=e,s=this.renderer.xscale.invert(t),a=this.renderer.yscale.invert(i),h=this.index.indices({x0:s,x1:s,y0:a,y1:a}),n=new d.Selection;for(const e of h)t!=1/0&&i!=1/0&&n.image_indices.push(this._image_index(e,s,a));return n}}i.ImageBaseView=c,c.__name__=\"ImageBaseView\";class m extends n.XYGlyph{constructor(e){super(e)}static init_ImageBase(){this.define((({Boolean:e,Alpha:t})=>({image:[_.NDArraySpec,{field:\"image\"}],dw:[_.DistanceSpec,{field:\"dw\"}],dh:[_.DistanceSpec,{field:\"dh\"}],dilate:[e,!1],global_alpha:[t,1]})))}}i.ImageBase=m,m.__name__=\"ImageBase\",m.init_ImageBase()},\n", " function _(e,a,t,_,i){_();const n=e(293),s=e(8);class r extends n.ImageBaseView{_flat_img_to_buf8(e){let a;return a=s.isArray(e)?new Uint32Array(e):e,new Uint8ClampedArray(a.buffer)}}t.ImageRGBAView=r,r.__name__=\"ImageRGBAView\";class m extends n.ImageBase{constructor(e){super(e)}static init_ImageRGBA(){this.prototype.default_view=r}}t.ImageRGBA=m,m.__name__=\"ImageRGBA\",m.init_ImageRGBA()},\n", " function _(e,t,s,r,a){r();const i=e(1),n=e(64),o=e(24),c=e(20),_=i.__importStar(e(18)),h=e(12),l=e(296);class d extends n.XYGlyphView{constructor(){super(...arguments),this._images_rendered=!1,this._set_data_iteration=0}connect_signals(){super.connect_signals(),this.connect(this.model.properties.global_alpha.change,(()=>this.renderer.request_render()))}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++)e.add_empty()}_set_data(){this._set_data_iteration++;const e=this.url.length;this.image=new Array(e);const{retry_attempts:t,retry_timeout:s}=this.model,{_set_data_iteration:r}=this;for(let a=0;a<e;a++){const e=this.url.get(a);e&&new l.ImageLoader(e,{loaded:e=>{this._set_data_iteration==r&&(this.image[a]=e,this.renderer.request_render())},attempts:t+1,timeout:s})}const a=\"data\"==this.model.properties.w.units,i=\"data\"==this.model.properties.h.units,n=this._x.length,c=new o.ScreenArray(a?2*n:n),_=new o.ScreenArray(i?2*n:n),{anchor:d}=this.model;function m(e,t){switch(d){case\"top_left\":case\"bottom_left\":case\"left\":case\"center_left\":return[e,e+t];case\"top\":case\"top_center\":case\"bottom\":case\"bottom_center\":case\"center\":case\"center_center\":return[e-t/2,e+t/2];case\"top_right\":case\"bottom_right\":case\"right\":case\"center_right\":return[e-t,e]}}function g(e,t){switch(d){case\"top_left\":case\"top\":case\"top_center\":case\"top_right\":return[e,e-t];case\"bottom_left\":case\"bottom\":case\"bottom_center\":case\"bottom_right\":return[e+t,e];case\"left\":case\"center_left\":case\"center\":case\"center_center\":case\"right\":case\"center_right\":return[e+t/2,e-t/2]}}if(a)for(let e=0;e<n;e++)[c[e],c[n+e]]=m(this._x[e],this.w.get(e));else c.set(this._x,0);if(i)for(let e=0;e<n;e++)[_[e],_[n+e]]=g(this._y[e],this.h.get(e));else _.set(this._y,0);const[u,p]=h.minmax(c),[f,b]=h.minmax(_);this._bounds_rect={x0:u,x1:p,y0:f,y1:b}}has_finished(){return super.has_finished()&&1==this._images_rendered}_map_data(){\"data\"==this.model.properties.w.units?this.sw=this.sdist(this.renderer.xscale,this._x,this.w,\"edge\",this.model.dilate):this.sw=o.to_screen(this.w),\"data\"==this.model.properties.h.units?this.sh=this.sdist(this.renderer.yscale,this._y,this.h,\"edge\",this.model.dilate):this.sh=o.to_screen(this.h)}_render(e,t,s){const{image:r,sx:a,sy:i,sw:n,sh:o,angle:c}=null!=s?s:this,{frame:_}=this.renderer.plot_view;e.rect(_.bbox.left+1,_.bbox.top+1,_.bbox.width-2,_.bbox.height-2),e.clip();let h=!0;for(const s of t){if(isNaN(a[s]+i[s]+c.get(s)))continue;const t=r[s];null!=t?this._render_image(e,s,t,a,i,n,o,c):h=!1}h&&!this._images_rendered&&(this._images_rendered=!0,this.notify_finished())}_final_sx_sy(e,t,s,r,a){switch(e){case\"top_left\":return[t,s];case\"top\":case\"top_center\":return[t-r/2,s];case\"top_right\":return[t-r,s];case\"right\":case\"center_right\":return[t-r,s-a/2];case\"bottom_right\":return[t-r,s-a];case\"bottom\":case\"bottom_center\":return[t-r/2,s-a];case\"bottom_left\":return[t,s-a];case\"left\":case\"center_left\":return[t,s-a/2];case\"center\":case\"center_center\":return[t-r/2,s-a/2]}}_render_image(e,t,s,r,a,i,n,o){isNaN(i[t])&&(i[t]=s.width),isNaN(n[t])&&(n[t]=s.height);const c=i[t],_=n[t],{anchor:h}=this.model,[l,d]=this._final_sx_sy(h,r[t],a[t],c,_),m=o.get(t);e.save(),e.globalAlpha=this.model.global_alpha;const g=c/2,u=_/2;m?(e.translate(l,d),e.translate(g,u),e.rotate(m),e.translate(-g,-u),e.drawImage(s,0,0,c,_),e.translate(g,u),e.rotate(-m),e.translate(-g,-u),e.translate(-l,-d)):e.drawImage(s,l,d,c,_),e.restore()}bounds(){return this._bounds_rect}}s.ImageURLView=d,d.__name__=\"ImageURLView\";class m extends n.XYGlyph{constructor(e){super(e)}static init_ImageURL(){this.prototype.default_view=d,this.define((({Boolean:e,Int:t,Alpha:s})=>({url:[_.StringSpec,{field:\"url\"}],anchor:[c.Anchor,\"top_left\"],global_alpha:[s,1],angle:[_.AngleSpec,0],w:[_.NullDistanceSpec,null],h:[_.NullDistanceSpec,null],dilate:[e,!1],retry_attempts:[t,0],retry_timeout:[t,0]})))}}s.ImageURL=m,m.__name__=\"ImageURL\",m.init_ImageURL()},\n", " function _(i,e,t,s,o){s();const a=i(19);class n{constructor(i,e={}){this._image=new Image,this._finished=!1;const{attempts:t=1,timeout:s=1}=e;this.promise=new Promise(((o,n)=>{this._image.crossOrigin=\"anonymous\";let r=0;this._image.onerror=()=>{if(++r==t){const s=`unable to load ${i} image after ${t} attempts`;if(a.logger.warn(s),null==this._image.crossOrigin)return void(null!=e.failed&&e.failed());a.logger.warn(`attempting to load ${i} without a cross origin policy`),this._image.crossOrigin=null,r=0}setTimeout((()=>this._image.src=i),s)},this._image.onload=()=>{this._finished=!0,null!=e.loaded&&e.loaded(this._image),o(this._image)},this._image.src=i}))}get finished(){return this._finished}get image(){if(this._finished)return this._image;throw new Error(\"not loaded yet\")}}t.ImageLoader=n,n.__name__=\"ImageLoader\"},\n", " function _(t,s,e,i,n){i();const o=t(1),l=t(101),r=t(98),h=t(106),_=t(12),a=t(12),c=t(48),d=o.__importStar(t(107)),x=o.__importStar(t(18)),y=t(59),f=t(11);class g extends r.GlyphView{_project_data(){}_index_data(t){const{min:s,max:e}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._xs[n],o=this._ys[n];if(0==i.length||0==o.length){t.add_empty();continue}let l=1/0,r=-1/0,h=1/0,a=-1/0;for(let t=0,n=i.length;t<n;t++){const n=i[t][0],c=o[t][0];if(0!=n.length&&0!=c.length){const[t,i]=_.minmax(n),[o,d]=_.minmax(c);l=s(l,t),r=e(r,i),h=s(h,o),a=e(a,d)}}isFinite(l+r+h+a)?t.add(l,h,r,a):t.add_empty()}this._hole_index=this._index_hole_data()}_index_hole_data(){const{min:t,max:s}=Math,{data_size:e}=this,i=new l.SpatialIndex(e);for(let n=0;n<e;n++){const e=this._xs[n],o=this._ys[n];if(0==e.length||0==o.length){i.add_empty();continue}let l=1/0,r=-1/0,h=1/0,a=-1/0;for(let i=0,n=e.length;i<n;i++){const n=e[i],c=o[i];if(n.length>1&&c.length>1)for(let e=1,i=n.length;e<i;e++){const[i,o]=_.minmax(n[e]),[d,x]=_.minmax(c[e]);l=t(l,i),r=s(r,o),h=t(h,d),a=s(a,x)}}isFinite(l+r+h+a)?i.add(l,h,r,a):i.add_empty()}return i.finish(),i}_mask_data(){const{x_range:t,y_range:s}=this.renderer.plot_view.frame;return this.index.indices({x0:t.min,x1:t.max,y0:s.min,y1:s.max})}_inner_loop(t,s,e){t.beginPath();for(let i=0,n=s.length;i<n;i++)for(let n=0,o=s[i].length;n<o;n++){const o=s[i][n],l=e[i][n];for(let s=0,e=o.length;s<e;s++)0!=s?t.lineTo(o[s],l[s]):t.moveTo(o[s],l[s]);t.closePath()}}_render(t,s,e){if(this.visuals.fill.doit||this.visuals.line.doit){const{sxs:i,sys:n}=null!=e?e:this;for(const e of s){const s=i[e],o=n[e];this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._inner_loop(t,s,o),t.fill(\"evenodd\")),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(t,e),this._inner_loop(t,s,o),t.fill(\"evenodd\")),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._inner_loop(t,s,o),t.stroke())}}}_hit_rect(t){const{sx0:s,sx1:e,sy0:i,sy1:n}=t,o=[s,e,e,s],l=[i,i,n,n],[r,h]=this.renderer.xscale.r_invert(s,e),[_,a]=this.renderer.yscale.r_invert(i,n),c=this.index.indices({x0:r,x1:h,y0:_,y1:a}),x=[];for(const t of c){const s=this.sxs[t],e=this.sys[t];let i=!0;for(let t=0,n=s.length;t<n;t++){for(let n=0,r=s[t][0].length;n<r;n++){const r=s[t][0][n],h=e[t][0][n];if(!d.point_in_poly(r,h,o,l)){i=!1;break}}if(!i)break}i&&x.push(t)}return new y.Selection({indices:x})}_hit_point(t){const{sx:s,sy:e}=t,i=this.renderer.xscale.invert(s),n=this.renderer.yscale.invert(e),o=this.index.indices({x0:i,y0:n,x1:i,y1:n}),l=this._hole_index.indices({x0:i,y0:n,x1:i,y1:n}),r=[];for(const t of o){const i=this.sxs[t],n=this.sys[t];for(let o=0,h=i.length;o<h;o++){const h=i[o].length;if(d.point_in_poly(s,e,i[o][0],n[o][0]))if(1==h)r.push(t);else if(l.get(t)){if(h>1){let l=!1;for(let t=1;t<h;t++){const r=i[o][t],h=n[o][t];if(d.point_in_poly(s,e,r,h)){l=!0;break}}l||r.push(t)}}else r.push(t)}}return new y.Selection({indices:r})}_get_snap_coord(t){return a.sum(t)/t.length}scenterxy(t,s,e){if(1==this.sxs[t].length){return[this._get_snap_coord(this.sxs[t][0][0]),this._get_snap_coord(this.sys[t][0][0])]}{const i=this.sxs[t],n=this.sys[t];for(let t=0,o=i.length;t<o;t++)if(d.point_in_poly(s,e,i[t][0],n[t][0])){return[this._get_snap_coord(i[t][0]),this._get_snap_coord(n[t][0])]}}f.unreachable()}map_data(){const t=this._xs.length;this.sxs=new Array(t),this.sys=new Array(t);for(let s=0;s<t;s++){const t=this._xs[s].length;this.sxs[s]=new Array(t),this.sys[s]=new Array(t);for(let e=0;e<t;e++){const t=this._xs[s][e].length;this.sxs[s][e]=new Array(t),this.sys[s][e]=new Array(t);for(let i=0;i<t;i++){const[t,n]=this.renderer.coordinates.map_to_screen(this._xs[s][e][i],this._ys[s][e][i]);this.sxs[s][e][i]=t,this.sys[s][e][i]=n}}}}draw_legend_for_index(t,s,e){h.generic_area_vector_legend(this.visuals,t,s,e)}}e.MultiPolygonsView=g,g.__name__=\"MultiPolygonsView\";class p extends r.Glyph{constructor(t){super(t)}static init_MultiPolygons(){this.prototype.default_view=g,this.define((({})=>({xs:[x.XCoordinateSeqSeqSeqSpec,{field:\"xs\"}],ys:[x.YCoordinateSeqSeqSeqSpec,{field:\"ys\"}]}))),this.mixins([c.LineVector,c.FillVector,c.HatchVector])}}e.MultiPolygons=p,p.__name__=\"MultiPolygons\",p.init_MultiPolygons()},\n", " function _(a,t,e,l,s){l();const _=a(287),i=a(12);class n extends _.EllipseOvalView{_map_data(){super._map_data(),i.mul(this.sw,.75)}}e.OvalView=n,n.__name__=\"OvalView\";class v extends _.EllipseOval{constructor(a){super(a)}static init_Oval(){this.prototype.default_view=n}}e.Oval=v,v.__name__=\"Oval\",v.init_Oval()},\n", " function _(t,e,i,o,s){o();const r=t(1),_=t(290),d=r.__importStar(t(18));class n extends _.BoxView{scenterxy(t){return[this.sleft[t]/2+this.sright[t]/2,this.stop[t]/2+this.sbottom[t]/2]}_lrtb(t){return[this._left[t],this._right[t],this._top[t],this._bottom[t]]}}i.QuadView=n,n.__name__=\"QuadView\";class a extends _.Box{constructor(t){super(t)}static init_Quad(){this.prototype.default_view=n,this.define((({})=>({right:[d.XCoordinateSpec,{field:\"right\"}],bottom:[d.YCoordinateSpec,{field:\"bottom\"}],left:[d.XCoordinateSpec,{field:\"left\"}],top:[d.YCoordinateSpec,{field:\"top\"}]})))}}i.Quad=a,a.__name__=\"Quad\",a.init_Quad()},\n", " function _(e,t,i,s,n){s();const a=e(1),c=e(48),o=e(65),r=e(98),_=e(106),d=a.__importStar(e(18));function l(e,t,i){if(t==(e+i)/2)return[e,i];{const s=(e-t)/(e-2*t+i),n=e*(1-s)**2+2*t*(1-s)*s+i*s**2;return[Math.min(e,i,n),Math.max(e,i,n)]}}class x extends r.GlyphView{_project_data(){o.inplace.project_xy(this._x0,this._y0),o.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{_x0:t,_x1:i,_y0:s,_y1:n,_cx:a,_cy:c,data_size:o}=this;for(let r=0;r<o;r++){const o=t[r],_=i[r],d=s[r],x=n[r],y=a[r],h=c[r];if(isNaN(o+_+d+x+y+h))e.add_empty();else{const[t,i]=l(o,y,_),[s,n]=l(d,h,x);e.add(t,s,i,n)}}}_render(e,t,i){if(this.visuals.line.doit){const{sx0:s,sy0:n,sx1:a,sy1:c,scx:o,scy:r}=null!=i?i:this;for(const i of t){const t=s[i],_=n[i],d=a[i],l=c[i],x=o[i],y=r[i];isNaN(t+_+d+l+x+y)||(e.beginPath(),e.moveTo(t,_),e.quadraticCurveTo(x,y,d,l),this.visuals.line.set_vectorize(e,i),e.stroke())}}}draw_legend_for_index(e,t,i){_.generic_line_vector_legend(this.visuals,e,t,i)}scenterxy(){throw new Error(`${this}.scenterxy() is not implemented`)}}i.QuadraticView=x,x.__name__=\"QuadraticView\";class y extends r.Glyph{constructor(e){super(e)}static init_Quadratic(){this.prototype.default_view=x,this.define((({})=>({x0:[d.XCoordinateSpec,{field:\"x0\"}],y0:[d.YCoordinateSpec,{field:\"y0\"}],x1:[d.XCoordinateSpec,{field:\"x1\"}],y1:[d.YCoordinateSpec,{field:\"y1\"}],cx:[d.XCoordinateSpec,{field:\"cx\"}],cy:[d.YCoordinateSpec,{field:\"cy\"}]}))),this.mixins(c.LineVector)}}i.Quadratic=y,y.__name__=\"Quadratic\",y.init_Quadratic()},\n", " function _(e,t,s,i,n){i();const a=e(1),l=e(64),h=e(106),r=e(48),o=e(24),_=a.__importStar(e(18));class c extends l.XYGlyphView{_map_data(){\"data\"==this.model.properties.length.units?this.slength=this.sdist(this.renderer.xscale,this._x,this.length):this.slength=o.to_screen(this.length);const{width:e,height:t}=this.renderer.plot_view.frame.bbox,s=2*(e+t),{slength:i}=this;for(let e=0,t=i.length;e<t;e++)0==i[e]&&(i[e]=s)}_render(e,t,s){const{sx:i,sy:n,slength:a,angle:l}=null!=s?s:this;if(this.visuals.line.doit)for(const s of t){const t=i[s],h=n[s],r=l.get(s),o=a[s];isNaN(t+h+r+o)||(e.translate(t,h),e.rotate(r),e.beginPath(),e.moveTo(0,0),e.lineTo(o,0),this.visuals.line.set_vectorize(e,s),e.stroke(),e.rotate(-r),e.translate(-t,-h))}}draw_legend_for_index(e,t,s){h.generic_line_vector_legend(this.visuals,e,t,s)}}s.RayView=c,c.__name__=\"RayView\";class g extends l.XYGlyph{constructor(e){super(e)}static init_Ray(){this.prototype.default_view=c,this.mixins(r.LineVector),this.define((({})=>({length:[_.DistanceSpec,0],angle:[_.AngleSpec,0]})))}}s.Ray=g,g.__name__=\"Ray\",g.init_Ray()},\n", " function _(t,s,e,i,h){i();const r=t(288),n=t(106),a=t(24),o=t(12),l=t(59);class _ extends r.CenterRotatableView{_map_data(){if(\"data\"==this.model.properties.width.units)[this.sw,this.sx0]=this._map_dist_corner_for_data_side_length(this._x,this.width,this.renderer.xscale);else{this.sw=a.to_screen(this.width);const t=this.sx.length;this.sx0=new a.ScreenArray(t);for(let s=0;s<t;s++)this.sx0[s]=this.sx[s]-this.sw[s]/2}if(\"data\"==this.model.properties.height.units)[this.sh,this.sy1]=this._map_dist_corner_for_data_side_length(this._y,this.height,this.renderer.yscale);else{this.sh=a.to_screen(this.height);const t=this.sy.length;this.sy1=new a.ScreenArray(t);for(let s=0;s<t;s++)this.sy1[s]=this.sy[s]-this.sh[s]/2}const t=this.sw.length;this.ssemi_diag=new a.ScreenArray(t);for(let s=0;s<t;s++)this.ssemi_diag[s]=Math.sqrt(this.sw[s]/2*this.sw[s]/2+this.sh[s]/2*this.sh[s]/2)}_render(t,s,e){const{sx:i,sy:h,sx0:r,sy1:n,sw:a,sh:o,angle:l}=null!=e?e:this;for(const e of s){const s=i[e],_=h[e],c=r[e],d=n[e],f=a[e],y=o[e],g=l.get(e);isNaN(s+_+c+d+f+y+g)||0!=f&&0!=y&&(t.beginPath(),g?(t.translate(s,_),t.rotate(g),t.rect(-f/2,-y/2,f,y),t.rotate(-g),t.translate(-s,-_)):t.rect(c,d,f,y),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),t.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.stroke()))}}_hit_rect(t){return this._hit_rect_against_index(t)}_hit_point(t){let{sx:s,sy:e}=t;const i=this.renderer.xscale.invert(s),h=this.renderer.yscale.invert(e),r=this.sx0.length,n=new a.ScreenArray(r);for(let t=0;t<r;t++)n[t]=this.sx0[t]+this.sw[t]/2;const _=new a.ScreenArray(r);for(let t=0;t<r;t++)_[t]=this.sy1[t]+this.sh[t]/2;const c=o.max(this._ddist(0,n,this.ssemi_diag)),d=o.max(this._ddist(1,_,this.ssemi_diag)),f=i-c,y=i+c,g=h-d,w=h+d;let x,u;const v=[];for(const t of this.index.indices({x0:f,x1:y,y0:g,y1:w})){const i=this.angle.get(t);if(i){const h=Math.sin(-i),r=Math.cos(-i),n=r*(s-this.sx[t])-h*(e-this.sy[t])+this.sx[t],a=h*(s-this.sx[t])+r*(e-this.sy[t])+this.sy[t];s=n,e=a,x=Math.abs(this.sx[t]-s)<=this.sw[t]/2,u=Math.abs(this.sy[t]-e)<=this.sh[t]/2}else{const i=s-this.sx0[t],h=e-this.sy1[t];x=0<=i&&i<=this.sw[t],u=0<=h&&h<=this.sh[t]}x&&u&&v.push(t)}return new l.Selection({indices:v})}_map_dist_corner_for_data_side_length(t,s,e){const i=t.length,h=new Float64Array(i),r=new Float64Array(i);for(let e=0;e<i;e++){const i=t[e],n=s.get(e)/2;h[e]=i-n,r[e]=i+n}const n=e.v_compute(h),a=e.v_compute(r),o=this.sdist(e,h,s,\"edge\",this.model.dilate);let l=n;for(let t=0;t<i;t++){const s=n[t],e=a[t];if(!isNaN(s+e)&&s!=e){l=s<e?n:a;break}}return[o,l]}_ddist(t,s,e){const i=a.infer_type(s,e),h=0==t?this.renderer.xscale:this.renderer.yscale,r=s,n=r.length,o=new i(n);for(let t=0;t<n;t++)o[t]=r[t]+e[t];const l=h.v_invert(r),_=h.v_invert(o),c=l.length,d=new i(c);for(let t=0;t<c;t++)d[t]=Math.abs(_[t]-l[t]);return d}draw_legend_for_index(t,s,e){n.generic_area_vector_legend(this.visuals,t,s,e)}}e.RectView=_,_.__name__=\"RectView\";class c extends r.CenterRotatable{constructor(t){super(t)}static init_Rect(){this.prototype.default_view=_,this.define((({Boolean:t})=>({dilate:[t,!1]})))}}e.Rect=c,c.__name__=\"Rect\",c.init_Rect()},\n", " function _(e,t,r,s,i){s();const a=e(1),n=e(304),_=e(305),l=e(283),c=a.__importStar(e(18));class o extends n.MarkerView{_init_webgl(){const{webgl:e}=this.renderer.plot_view.canvas_view;if(null!=e){const t=new Set(this.marker);if(1==t.size){const[r]=[...t];if(l.MarkerGL.is_supported(r)){const{glglyph:t}=this;if(null==t||t.marker_type!=r)return void(this.glglyph=new l.MarkerGL(e.gl,this,r))}}}delete this.glglyph}_set_data(e){super._set_data(e),this._init_webgl()}_render(e,t,r){const{sx:s,sy:i,size:a,angle:n,marker:l}=null!=r?r:this;for(const r of t){const t=s[r],c=i[r],o=a.get(r),g=n.get(r),h=l.get(r);if(isNaN(t+c+o+g)||null==h)continue;const d=o/2;e.beginPath(),e.translate(t,c),g&&e.rotate(g),_.marker_funcs[h](e,r,d,this.visuals),g&&e.rotate(-g),e.translate(-t,-c)}}draw_legend_for_index(e,{x0:t,x1:r,y0:s,y1:i},a){const n=a+1,_=this.marker.get(a),l=Object.assign(Object.assign({},this._get_legend_args({x0:t,x1:r,y0:s,y1:i},a)),{marker:new c.UniformScalar(_,n)});this._render(e,[a],l)}}r.ScatterView=o,o.__name__=\"ScatterView\";class g extends n.Marker{constructor(e){super(e)}static init_Scatter(){this.prototype.default_view=o,this.define((()=>({marker:[c.MarkerSpec,{value:\"circle\"}]})))}}r.Scatter=g,g.__name__=\"Scatter\",g.init_Scatter()},\n", " function _(e,t,s,i,n){i();const r=e(1),a=e(64),c=e(48),_=r.__importStar(e(107)),o=r.__importStar(e(18)),h=e(9),l=e(59);class x extends a.XYGlyphView{_render(e,t,s){const{sx:i,sy:n,size:r,angle:a}=null!=s?s:this;for(const s of t){const t=i[s],c=n[s],_=r.get(s),o=a.get(s);if(isNaN(t+c+_+o))continue;const h=_/2;e.beginPath(),e.translate(t,c),o&&e.rotate(o),this._render_one(e,s,h,this.visuals),o&&e.rotate(-o),e.translate(-t,-c)}}_mask_data(){const{x_target:e,y_target:t}=this.renderer.plot_view.frame,s=e.widen(this.max_size).map((e=>this.renderer.xscale.invert(e))),i=t.widen(this.max_size).map((e=>this.renderer.yscale.invert(e)));return this.index.indices({x0:s.start,x1:s.end,y0:i.start,y1:i.end})}_hit_point(e){const{sx:t,sy:s}=e,{max_size:i}=this,{hit_dilation:n}=this.model,r=t-i*n,a=t+i*n,[c,_]=this.renderer.xscale.r_invert(r,a),o=s-i*n,h=s+i*n,[x,d]=this.renderer.yscale.r_invert(o,h),y=this.index.indices({x0:c,x1:_,y0:x,y1:d}),g=[];for(const e of y){const i=this.size.get(e)/2*n;Math.abs(this.sx[e]-t)<=i&&Math.abs(this.sy[e]-s)<=i&&g.push(e)}return new l.Selection({indices:g})}_hit_span(e){const{sx:t,sy:s}=e,i=this.bounds(),n=this.max_size/2;let r,a,c,_;if(\"h\"==e.direction){c=i.y0,_=i.y1;const e=t-n,s=t+n;[r,a]=this.renderer.xscale.r_invert(e,s)}else{r=i.x0,a=i.x1;const e=s-n,t=s+n;[c,_]=this.renderer.yscale.r_invert(e,t)}const o=[...this.index.indices({x0:r,x1:a,y0:c,y1:_})];return new l.Selection({indices:o})}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,[r,a]=this.renderer.xscale.r_invert(t,s),[c,_]=this.renderer.yscale.r_invert(i,n),o=[...this.index.indices({x0:r,x1:a,y0:c,y1:_})];return new l.Selection({indices:o})}_hit_poly(e){const{sx:t,sy:s}=e,i=h.range(0,this.sx.length),n=[];for(let e=0,r=i.length;e<r;e++){const r=i[e];_.point_in_poly(this.sx[e],this.sy[e],t,s)&&n.push(r)}return new l.Selection({indices:n})}_get_legend_args({x0:e,x1:t,y0:s,y1:i},n){const r=n+1,a=new Array(r),c=new Array(r);a[n]=(e+t)/2,c[n]=(s+i)/2;const _=.4*Math.min(Math.abs(t-e),Math.abs(i-s));return{sx:a,sy:c,size:new o.UniformScalar(_,r),angle:new o.UniformScalar(0,r)}}draw_legend_for_index(e,{x0:t,x1:s,y0:i,y1:n},r){const a=this._get_legend_args({x0:t,x1:s,y0:i,y1:n},r);this._render(e,[r],a)}}s.MarkerView=x,x.__name__=\"MarkerView\";class d extends a.XYGlyph{constructor(e){super(e)}static init_Marker(){this.mixins([c.LineVector,c.FillVector,c.HatchVector]),this.define((({Number:e})=>({size:[o.ScreenDistanceSpec,{value:4}],angle:[o.AngleSpec,0],hit_dilation:[e,1]})))}}s.Marker=d,d.__name__=\"Marker\",d.init_Marker()},\n", " function _(t,e,i,o,l){o();const n=Math.sqrt(3),c=Math.sqrt(5),r=(c+1)/4,s=Math.sqrt((5-c)/8),f=(c-1)/4,a=Math.sqrt((5+c)/8);function h(t,e){t.rotate(Math.PI/4),d(t,e),t.rotate(-Math.PI/4)}function v(t,e){const i=e*n,o=i/3;t.moveTo(-i/2,-o),t.lineTo(0,0),t.lineTo(i/2,-o),t.lineTo(0,0),t.lineTo(0,e)}function d(t,e){t.moveTo(0,e),t.lineTo(0,-e),t.moveTo(-e,0),t.lineTo(e,0)}function _(t,e){t.moveTo(0,e),t.lineTo(e/1.5,0),t.lineTo(0,-e),t.lineTo(-e/1.5,0),t.closePath()}function u(t,e){const i=e*n,o=i/3;t.moveTo(-e,o),t.lineTo(e,o),t.lineTo(0,o-i),t.closePath()}function z(t,e,i,o){t.arc(0,0,i,0,2*Math.PI,!1),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function T(t,e,i,o){_(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function k(t,e,i,o){!function(t,e){t.beginPath(),t.arc(0,0,e/4,0,2*Math.PI,!1),t.closePath()}(t,i),o.line.set_vectorize(t,e),t.fillStyle=t.strokeStyle,t.fill()}function P(t,e,i,o){!function(t,e){const i=e/2,o=n*i;t.moveTo(e,0),t.lineTo(i,-o),t.lineTo(-i,-o),t.lineTo(-e,0),t.lineTo(-i,o),t.lineTo(i,o),t.closePath()}(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function m(t,e,i,o){const l=2*i;t.rect(-i,-i,l,l),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function q(t,e,i,o){!function(t,e){const i=Math.sqrt(5-2*c)*e;t.moveTo(0,-e),t.lineTo(i*f,i*a-e),t.lineTo(i*(1+f),i*a-e),t.lineTo(i*(1+f-r),i*(a+s)-e),t.lineTo(i*(1+2*f-r),i*(2*a+s)-e),t.lineTo(0,2*i*a-e),t.lineTo(-i*(1+2*f-r),i*(2*a+s)-e),t.lineTo(-i*(1+f-r),i*(a+s)-e),t.lineTo(-i*(1+f),i*a-e),t.lineTo(-i*f,i*a-e),t.closePath()}(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function M(t,e,i,o){u(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}i.marker_funcs={asterisk:function(t,e,i,o){d(t,i),h(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},circle:z,circle_cross:function(t,e,i,o){t.arc(0,0,i,0,2*Math.PI,!1),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),d(t,i),t.stroke())},circle_dot:function(t,e,i,o){z(t,e,i,o),k(t,e,i,o)},circle_y:function(t,e,i,o){t.arc(0,0,i,0,2*Math.PI,!1),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),v(t,i),t.stroke())},circle_x:function(t,e,i,o){t.arc(0,0,i,0,2*Math.PI,!1),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),h(t,i),t.stroke())},cross:function(t,e,i,o){d(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},diamond:T,diamond_dot:function(t,e,i,o){T(t,e,i,o),k(t,e,i,o)},diamond_cross:function(t,e,i,o){_(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.moveTo(0,i),t.lineTo(0,-i),t.moveTo(-i/1.5,0),t.lineTo(i/1.5,0),t.stroke())},dot:k,hex:P,hex_dot:function(t,e,i,o){P(t,e,i,o),k(t,e,i,o)},inverted_triangle:function(t,e,i,o){t.rotate(Math.PI),u(t,i),t.rotate(-Math.PI),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},plus:function(t,e,i,o){const l=3*i/8,n=[l,l,i,i,l,l,-l,-l,-i,-i,-l,-l],c=[i,l,l,-l,-l,-i,-i,-l,-l,l,l,i];t.beginPath();for(let e=0;e<12;e++)t.lineTo(n[e],c[e]);t.closePath(),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},square:m,square_cross:function(t,e,i,o){const l=2*i;t.rect(-i,-i,l,l),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),d(t,i),t.stroke())},square_dot:function(t,e,i,o){m(t,e,i,o),k(t,e,i,o)},square_pin:function(t,e,i,o){const l=3*i/8;t.moveTo(-i,-i),t.quadraticCurveTo(0,-l,i,-i),t.quadraticCurveTo(l,0,i,i),t.quadraticCurveTo(0,l,-i,i),t.quadraticCurveTo(-l,0,-i,-i),t.closePath(),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},square_x:function(t,e,i,o){const l=2*i;t.rect(-i,-i,l,l),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.moveTo(-i,i),t.lineTo(i,-i),t.moveTo(-i,-i),t.lineTo(i,i),t.stroke())},star:q,star_dot:function(t,e,i,o){q(t,e,i,o),k(t,e,i,o)},triangle:M,triangle_dot:function(t,e,i,o){M(t,e,i,o),k(t,e,i,o)},triangle_pin:function(t,e,i,o){const l=i*n,c=l/3,r=3*c/8;t.moveTo(-i,c),t.quadraticCurveTo(0,r,i,c),t.quadraticCurveTo(n*r/2,r/2,0,c-l),t.quadraticCurveTo(-n*r/2,r/2,-i,c),t.closePath(),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},dash:function(t,e,i,o){!function(t,e){t.moveTo(-e,0),t.lineTo(e,0)}(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},x:function(t,e,i,o){h(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},y:function(t,e,i,o){v(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}}},\n", " function _(e,t,s,i,n){i();const r=e(1),_=r.__importStar(e(107)),o=r.__importStar(e(18)),h=e(48),a=e(65),c=e(98),d=e(106),x=e(59);class y extends c.GlyphView{_project_data(){a.inplace.project_xy(this._x0,this._y0),a.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{min:t,max:s}=Math,{_x0:i,_x1:n,_y0:r,_y1:_,data_size:o}=this;for(let h=0;h<o;h++){const o=i[h],a=n[h],c=r[h],d=_[h];isNaN(o+a+c+d)?e.add_empty():e.add(t(o,a),t(c,d),s(o,a),s(c,d))}}_render(e,t,s){if(this.visuals.line.doit){const{sx0:i,sy0:n,sx1:r,sy1:_}=null!=s?s:this;for(const s of t){const t=i[s],o=n[s],h=r[s],a=_[s];isNaN(t+o+h+a)||(e.beginPath(),e.moveTo(t,o),e.lineTo(h,a),this.visuals.line.set_vectorize(e,s),e.stroke())}}}_hit_point(e){const{sx:t,sy:s}=e,i={x:t,y:s},[n,r]=this.renderer.xscale.r_invert(t-2,t+2),[o,h]=this.renderer.yscale.r_invert(s-2,s+2),a=this.index.indices({x0:n,y0:o,x1:r,y1:h}),c=[];for(const e of a){const t=Math.max(2,this.line_width.get(e)/2)**2,s={x:this.sx0[e],y:this.sy0[e]},n={x:this.sx1[e],y:this.sy1[e]};_.dist_to_segment_squared(i,s,n)<t&&c.push(e)}return new x.Selection({indices:c})}_hit_span(e){const[t,s]=this.renderer.plot_view.frame.bbox.ranges,{sx:i,sy:n}=e;let r,_,o;\"v\"==e.direction?(o=this.renderer.yscale.invert(n),[r,_]=[this._y0,this._y1]):(o=this.renderer.xscale.invert(i),[r,_]=[this._x0,this._x1]);const h=[],[a,c]=this.renderer.xscale.r_invert(t.start,t.end),[d,y]=this.renderer.yscale.r_invert(s.start,s.end),l=this.index.indices({x0:a,y0:d,x1:c,y1:y});for(const t of l){(r[t]<=o&&o<=_[t]||_[t]<=o&&o<=r[t])&&h.push(t);const s=1.5+this.line_width.get(t)/2;r[t]==_[t]&&(\"h\"==e.direction?Math.abs(this.sx0[t]-i)<=s&&h.push(t):Math.abs(this.sy0[t]-n)<=s&&h.push(t))}return new x.Selection({indices:h})}scenterxy(e){return[this.sx0[e]/2+this.sx1[e]/2,this.sy0[e]/2+this.sy1[e]/2]}draw_legend_for_index(e,t,s){d.generic_line_vector_legend(this.visuals,e,t,s)}}s.SegmentView=y,y.__name__=\"SegmentView\";class l extends c.Glyph{constructor(e){super(e)}static init_Segment(){this.prototype.default_view=y,this.define((({})=>({x0:[o.XCoordinateSpec,{field:\"x0\"}],y0:[o.YCoordinateSpec,{field:\"y0\"}],x1:[o.XCoordinateSpec,{field:\"x1\"}],y1:[o.YCoordinateSpec,{field:\"y1\"}]}))),this.mixins(h.LineVector)}}s.Segment=l,l.__name__=\"Segment\",l.init_Segment()},\n", " function _(t,e,s,i,n){i();const _=t(1),l=t(64),o=_.__importStar(t(48)),a=t(308);class c extends l.XYGlyphView{_set_data(){const{tension:t,closed:e}=this.model;[this._xt,this._yt]=a.catmullrom_spline(this._x,this._y,20,t,e)}_map_data(){const{x_scale:t,y_scale:e}=this.renderer.coordinates;this.sxt=t.v_compute(this._xt),this.syt=e.v_compute(this._yt)}_render(t,e,s){const{sxt:i,syt:n}=null!=s?s:this;this.visuals.line.set_value(t);const _=i.length;for(let e=0;e<_;e++)0!=e?isNaN(i[e])||isNaN(n[e])?(t.stroke(),t.beginPath()):t.lineTo(i[e],n[e]):(t.beginPath(),t.moveTo(i[e],n[e]));t.stroke()}}s.SplineView=c,c.__name__=\"SplineView\";class h extends l.XYGlyph{constructor(t){super(t)}static init_Spline(){this.prototype.default_view=c,this.mixins(o.LineScalar),this.define((({Boolean:t,Number:e})=>({tension:[e,.5],closed:[t,!1]})))}}s.Spline=h,h.__name__=\"Spline\",h.init_Spline()},\n", " function _(n,t,e,o,s){o();const c=n(24),l=n(11);e.catmullrom_spline=function(n,t,e=10,o=.5,s=!1){l.assert(n.length==t.length);const r=n.length,f=s?r+1:r,w=c.infer_type(n,t),i=new w(f+2),u=new w(f+2);i.set(n,1),u.set(t,1),s?(i[0]=n[r-1],u[0]=t[r-1],i[f]=n[0],u[f]=t[0],i[f+1]=n[1],u[f+1]=t[1]):(i[0]=n[0],u[0]=t[0],i[f+1]=n[r-1],u[f+1]=t[r-1]);const g=new w(4*(e+1));for(let n=0,t=0;n<=e;n++){const o=n/e,s=o**2,c=o*s;g[t++]=2*c-3*s+1,g[t++]=-2*c+3*s,g[t++]=c-2*s+o,g[t++]=c-s}const h=new w((f-1)*(e+1)),_=new w((f-1)*(e+1));for(let n=1,t=0;n<f;n++){const s=(i[n+1]-i[n-1])*o,c=(u[n+1]-u[n-1])*o,l=(i[n+2]-i[n])*o,r=(u[n+2]-u[n])*o;for(let o=0;o<=4*e;t++){const e=g[o++],f=g[o++],w=g[o++],a=g[o++];h[t]=e*i[n]+f*i[n+1]+w*s+a*l,_[t]=e*u[n]+f*u[n+1]+w*c+a*r}}return[h,_]}},\n", " function _(e,t,i,n,s){n();const o=e(1),l=e(64),r=e(106),a=o.__importStar(e(48)),_=e(20);class c extends l.XYGlyphView{_render(e,t,i){const{sx:n,sy:s}=null!=i?i:this;let o=!1,l=null;this.visuals.line.set_value(e);const r=t.length;if(!(r<2)){e.beginPath(),e.moveTo(n[0],s[0]);for(const i of t){let t,r,a,_;switch(this.model.mode){case\"before\":[t,a]=[n[i-1],s[i]],[r,_]=[n[i],s[i]];break;case\"after\":[t,a]=[n[i],s[i-1]],[r,_]=[n[i],s[i]];break;case\"center\":{const e=(n[i-1]+n[i])/2;[t,a]=[e,s[i-1]],[r,_]=[e,s[i]];break}default:throw new Error(\"unexpected\")}if(o){if(!isFinite(n[i]+s[i])){e.stroke(),e.beginPath(),o=!1,l=i;continue}null!=l&&i-l>1&&(e.stroke(),o=!1)}o?(e.lineTo(t,a),e.lineTo(r,_)):(e.beginPath(),e.moveTo(n[i],s[i]),o=!0),l=i}e.lineTo(n[r-1],s[r-1]),e.stroke()}}draw_legend_for_index(e,t,i){r.generic_line_scalar_legend(this.visuals,e,t)}}i.StepView=c,c.__name__=\"StepView\";class d extends l.XYGlyph{constructor(e){super(e)}static init_Step(){this.prototype.default_view=c,this.mixins(a.LineScalar),this.define((()=>({mode:[_.StepMode,\"before\"]})))}}i.Step=d,d.__name__=\"Step\",d.init_Step()},\n", " function _(t,e,s,i,n){i();const o=t(1),_=t(64),h=t(48),l=o.__importStar(t(107)),r=o.__importStar(t(18)),a=t(143),c=t(11),x=t(59);class u extends _.XYGlyphView{_rotate_point(t,e,s,i,n){return[(t-s)*Math.cos(n)-(e-i)*Math.sin(n)+s,(t-s)*Math.sin(n)+(e-i)*Math.cos(n)+i]}_text_bounds(t,e,s,i){return[[t,t+s,t+s,t,t],[e,e,e-i,e-i,e]]}_render(t,e,s){const{sx:i,sy:n,x_offset:o,y_offset:_,angle:h,text:l}=null!=s?s:this;this._sys=[],this._sxs=[];for(const s of e){const e=this._sxs[s]=[],r=this._sys[s]=[],c=i[s],x=n[s],u=o.get(s),f=_.get(s),p=h.get(s),g=l.get(s);if(!isNaN(c+x+u+f+p)&&null!=g&&this.visuals.text.doit){const i=`${g}`;t.save(),t.translate(c+u,x+f),t.rotate(p),this.visuals.text.set_vectorize(t,s);const n=this.visuals.text.font_value(s),{height:o}=a.font_metrics(n),_=this.text_line_height.get(s)*o;if(-1==i.indexOf(\"\\n\")){t.fillText(i,0,0);const s=c+u,n=x+f,o=t.measureText(i).width,[h,l]=this._text_bounds(s,n,o,_);e.push(h),r.push(l)}else{const n=i.split(\"\\n\"),o=_*n.length,h=this.text_baseline.get(s);let l;switch(h){case\"top\":l=0;break;case\"middle\":l=-o/2+_/2;break;case\"bottom\":l=-o+_;break;default:l=0,console.warn(`'${h}' baseline not supported with multi line text`)}for(const s of n){t.fillText(s,0,l);const i=c+u,n=l+x+f,o=t.measureText(s).width,[h,a]=this._text_bounds(i,n,o,_);e.push(h),r.push(a),l+=_}}t.restore()}}}_hit_point(t){const{sx:e,sy:s}=t,i=[];for(let t=0;t<this._sxs.length;t++){const n=this._sxs[t],o=this._sys[t],_=n.length;for(let h=0,r=_;h<r;h++){const[r,a]=this._rotate_point(e,s,n[_-1][0],o[_-1][0],-this.angle.get(t));l.point_in_poly(r,a,n[h],o[h])&&i.push(t)}}return new x.Selection({indices:i})}scenterxy(t){const e=this._sxs[t],s=this._sys[t];c.assert(0!=e.length&&0!=s.length);const i=e[0][0],n=s[0][0],o=(e[0][2]+i)/2,_=(s[0][2]+n)/2,[h,l]=this._rotate_point(o,_,i,n,this.angle.get(t));return[h,l]}}s.TextView=u,u.__name__=\"TextView\";class f extends _.XYGlyph{constructor(t){super(t)}static init_Text(){this.prototype.default_view=u,this.mixins(h.TextVector),this.define((({})=>({text:[r.NullStringSpec,{field:\"text\"}],angle:[r.AngleSpec,0],x_offset:[r.NumberSpec,0],y_offset:[r.NumberSpec,0]})))}}s.Text=f,f.__name__=\"Text\",f.init_Text()},\n", " function _(t,s,e,i,r){i();const h=t(1),o=t(290),a=t(24),n=h.__importStar(t(18));class _ extends o.BoxView{scenterxy(t){return[this.sx[t],(this.stop[t]+this.sbottom[t])/2]}_lrtb(t){const s=this.width.get(t)/2,e=this._x[t],i=this._top[t],r=this._bottom[t];return[e-s,e+s,Math.max(i,r),Math.min(i,r)]}_map_data(){this.sx=this.renderer.xscale.v_compute(this._x),this.sw=this.sdist(this.renderer.xscale,this._x,this.width,\"center\"),this.stop=this.renderer.yscale.v_compute(this._top),this.sbottom=this.renderer.yscale.v_compute(this._bottom);const t=this.sx.length;this.sleft=new a.ScreenArray(t),this.sright=new a.ScreenArray(t);for(let s=0;s<t;s++)this.sleft[s]=this.sx[s]-this.sw[s]/2,this.sright[s]=this.sx[s]+this.sw[s]/2;this._clamp_viewport()}}e.VBarView=_,_.__name__=\"VBarView\";class c extends o.Box{constructor(t){super(t)}static init_VBar(){this.prototype.default_view=_,this.define((({})=>({x:[n.XCoordinateSpec,{field:\"x\"}],bottom:[n.YCoordinateSpec,{value:0}],width:[n.NumberSpec,{value:1}],top:[n.YCoordinateSpec,{field:\"top\"}]})))}}e.VBar=c,c.__name__=\"VBar\",c.init_VBar()},\n", " function _(e,t,s,i,n){i();const r=e(1),a=e(64),l=e(106),c=e(48),d=e(24),h=e(20),o=r.__importStar(e(18)),_=e(10),u=e(59);class g extends a.XYGlyphView{_map_data(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this.radius):this.sradius=d.to_screen(this.radius)}_render(e,t,s){const{sx:i,sy:n,sradius:r,start_angle:a,end_angle:l}=null!=s?s:this,c=\"anticlock\"==this.model.direction;for(const s of t){const t=i[s],d=n[s],h=r[s],o=a.get(s),_=l.get(s);isNaN(t+d+h+o+_)||(e.beginPath(),e.arc(t,d,h,o,_,c),e.lineTo(t,d),e.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,s),e.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(e,s),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,s),e.stroke()))}}_hit_point(e){let t,s,i,n,r,a,l,c,d;const{sx:h,sy:o}=e,g=this.renderer.xscale.invert(h),p=this.renderer.yscale.invert(o),x=2*this.max_radius;\"data\"===this.model.properties.radius.units?(a=g-x,l=g+x,c=p-x,d=p+x):(s=h-x,i=h+x,[a,l]=this.renderer.xscale.r_invert(s,i),n=o-x,r=o+x,[c,d]=this.renderer.yscale.r_invert(n,r));const f=[];for(const e of this.index.indices({x0:a,x1:l,y0:c,y1:d})){const a=this.sradius[e]**2;[s,i]=this.renderer.xscale.r_compute(g,this._x[e]),[n,r]=this.renderer.yscale.r_compute(p,this._y[e]),t=(s-i)**2+(n-r)**2,t<=a&&f.push(e)}const v=\"anticlock\"==this.model.direction,y=[];for(const e of f){const t=Math.atan2(o-this.sy[e],h-this.sx[e]);_.angle_between(-t,-this.start_angle.get(e),-this.end_angle.get(e),v)&&y.push(e)}return new u.Selection({indices:y})}draw_legend_for_index(e,t,s){l.generic_area_vector_legend(this.visuals,e,t,s)}scenterxy(e){const t=this.sradius[e]/2,s=(this.start_angle.get(e)+this.end_angle.get(e))/2;return[this.sx[e]+t*Math.cos(s),this.sy[e]+t*Math.sin(s)]}}s.WedgeView=g,g.__name__=\"WedgeView\";class p extends a.XYGlyph{constructor(e){super(e)}static init_Wedge(){this.prototype.default_view=g,this.mixins([c.LineVector,c.FillVector,c.HatchVector]),this.define((({})=>({direction:[h.Direction,\"anticlock\"],radius:[o.DistanceSpec,{field:\"radius\"}],start_angle:[o.AngleSpec,{field:\"start_angle\"}],end_angle:[o.AngleSpec,{field:\"end_angle\"}]})))}}s.Wedge=p,p.__name__=\"Wedge\",p.init_Wedge()},\n", " function _(t,_,r,o,a){o();const e=t(1);e.__exportStar(t(126),r),e.__exportStar(t(125),r),e.__exportStar(t(314),r)},\n", " function _(t,a,o,r,e){r();const n=t(125);class l extends n.LayoutProvider{constructor(t){super(t)}static init_StaticLayoutProvider(){this.define((({Number:t,Tuple:a,Dict:o})=>({graph_layout:[o(a(t,t)),{}]})))}get_node_coordinates(t){var a;const o=null!==(a=t.data.index)&&void 0!==a?a:[],r=o.length,e=new Float64Array(r),n=new Float64Array(r);for(let t=0;t<r;t++){const a=this.graph_layout[o[t]],[r,l]=null!=a?a:[NaN,NaN];e[t]=r,n[t]=l}return[e,n]}get_edge_coordinates(t){var a,o;const r=null!==(a=t.data.start)&&void 0!==a?a:[],e=null!==(o=t.data.end)&&void 0!==o?o:[],n=Math.min(r.length,e.length),l=[],i=[],u=null!=t.data.xs&&null!=t.data.ys;for(let a=0;a<n;a++){const o=null!=this.graph_layout[r[a]]&&null!=this.graph_layout[e[a]];if(u&&o)l.push(t.data.xs[a]),i.push(t.data.ys[a]);else{let t,n;o?(t=this.graph_layout[r[a]],n=this.graph_layout[e[a]]):(t=[NaN,NaN],n=[NaN,NaN]),l.push([t[0],n[0]]),i.push([t[1],n[1]])}}return[l,i]}}o.StaticLayoutProvider=l,l.__name__=\"StaticLayoutProvider\",l.init_StaticLayoutProvider()},\n", " function _(i,d,n,r,G){r(),G(\"Grid\",i(316).Grid)},\n", " function _(i,e,t,s,n){s();const r=i(1),o=i(162),d=i(164),l=i(165),_=r.__importStar(i(48)),a=i(8);class h extends d.GuideRendererView{_render(){const i=this.layer.ctx;i.save(),this._draw_regions(i),this._draw_minor_grids(i),this._draw_grids(i),i.restore()}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render()))}_draw_regions(i){if(!this.visuals.band_fill.doit&&!this.visuals.band_hatch.doit)return;const[e,t]=this.grid_coords(\"major\",!1);for(let s=0;s<e.length-1;s++){if(s%2!=1)continue;const[n,r]=this.coordinates.map_to_screen(e[s],t[s]),[o,d]=this.coordinates.map_to_screen(e[s+1],t[s+1]);i.beginPath(),i.rect(n[0],r[0],o[1]-n[0],d[1]-r[0]),this.visuals.band_fill.doit&&(this.visuals.band_fill.set_value(i),i.fill()),this.visuals.band_hatch.doit&&(this.visuals.band_hatch.set_value(i),i.fill())}}_draw_grids(i){if(!this.visuals.grid_line.doit)return;const[e,t]=this.grid_coords(\"major\");this._draw_grid_helper(i,this.visuals.grid_line,e,t)}_draw_minor_grids(i){if(!this.visuals.minor_grid_line.doit)return;const[e,t]=this.grid_coords(\"minor\");this._draw_grid_helper(i,this.visuals.minor_grid_line,e,t)}_draw_grid_helper(i,e,t,s){e.set_value(i),i.beginPath();for(let e=0;e<t.length;e++){const[n,r]=this.coordinates.map_to_screen(t[e],s[e]);i.moveTo(Math.round(n[0]),Math.round(r[0]));for(let e=1;e<n.length;e++)i.lineTo(Math.round(n[e]),Math.round(r[e]))}i.stroke()}ranges(){const i=this.model.dimension,e=(i+1)%2,{ranges:t}=this.coordinates;return[t[i],t[e]]}computed_bounds(){const[i]=this.ranges(),e=this.model.bounds,t=[i.min,i.max];let s,n;if(a.isArray(e))s=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]),s<t[0]&&(s=t[0]),n>t[1]&&(n=t[1]);else{[s,n]=t;for(const i of this.plot_view.axis_views)i.dimension==this.model.dimension&&i.model.x_range_name==this.model.x_range_name&&i.model.y_range_name==this.model.y_range_name&&([s,n]=i.computed_bounds)}return[s,n]}grid_coords(i,e=!0){const t=this.model.dimension,s=(t+1)%2,[n,r]=this.ranges();let[o,d]=this.computed_bounds();[o,d]=[Math.min(o,d),Math.max(o,d)];const l=[[],[]],_=this.model.get_ticker();if(null==_)return l;const a=_.get_ticks(o,d,n,r.min)[i],h=n.min,u=n.max,c=r.min,m=r.max;e||(a[0]!=h&&a.splice(0,0,h),a[a.length-1]!=u&&a.push(u));for(let i=0;i<a.length;i++){if((a[i]==h||a[i]==u)&&e)continue;const n=[],r=[],o=2;for(let e=0;e<o;e++){const t=c+(m-c)/(o-1)*e;n.push(a[i]),r.push(t)}l[t].push(n),l[s].push(r)}return l}}t.GridView=h,h.__name__=\"GridView\";class u extends d.GuideRenderer{constructor(i){super(i)}static init_Grid(){this.prototype.default_view=h,this.mixins([[\"grid_\",_.Line],[\"minor_grid_\",_.Line],[\"band_\",_.Fill],[\"band_\",_.Hatch]]),this.define((({Number:i,Auto:e,Enum:t,Ref:s,Tuple:n,Or:r,Nullable:d})=>({bounds:[r(n(i,i),e),\"auto\"],dimension:[t(0,1),0],axis:[d(s(o.Axis)),null],ticker:[d(s(l.Ticker)),null]}))),this.override({level:\"underlay\",band_fill_color:null,band_fill_alpha:0,grid_line_color:\"#e5e5e5\",minor_grid_line_color:null})}get_ticker(){return null!=this.ticker?this.ticker:null!=this.axis?this.axis.ticker:null}}t.Grid=u,u.__name__=\"Grid\",u.init_Grid()},\n", " function _(o,a,x,B,e){B(),e(\"Box\",o(318).Box),e(\"Column\",o(320).Column),e(\"GridBox\",o(321).GridBox),e(\"HTMLBox\",o(322).HTMLBox),e(\"LayoutDOM\",o(319).LayoutDOM),e(\"Panel\",o(323).Panel),e(\"Row\",o(324).Row),e(\"Spacer\",o(325).Spacer),e(\"Tabs\",o(326).Tabs),e(\"WidgetBox\",o(329).WidgetBox)},\n", " function _(e,n,i,t,s){t();const o=e(319);class c extends o.LayoutDOMView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.children.change,(()=>this.rebuild()))}get child_models(){return this.model.children}}i.BoxView=c,c.__name__=\"BoxView\";class r extends o.LayoutDOM{constructor(e){super(e)}static init_Box(){this.define((({Number:e,Array:n,Ref:i})=>({children:[n(i(o.LayoutDOM)),[]],spacing:[e,0]})))}}i.Box=r,r.__name__=\"Box\",r.init_Box()},\n", " function _(t,i,e,s,o){s();const l=t(53),n=t(20),h=t(43),a=t(19),r=t(8),_=t(22),d=t(143),c=t(122),u=t(240),m=t(221),p=t(44),g=t(249);class f extends u.DOMView{constructor(){super(...arguments),this._idle_notified=!1,this._offset_parent=null,this._viewport={}}get base_font_size(){const t=getComputedStyle(this.el).fontSize,i=d.parse_css_font_size(t);if(null!=i){const{value:t,unit:e}=i;if(\"px\"==e)return t}return 13}initialize(){super.initialize(),this.el.style.position=this.is_root?\"relative\":\"absolute\",this._child_views=new Map}async lazy_initialize(){await super.lazy_initialize(),await this.build_child_views()}remove(){for(const t of this.child_views)t.remove();this._child_views.clear(),super.remove()}connect_signals(){super.connect_signals(),this.is_root&&(this._on_resize=()=>this.resize_layout(),window.addEventListener(\"resize\",this._on_resize),this._parent_observer=setInterval((()=>{const t=this.el.offsetParent;this._offset_parent!=t&&(this._offset_parent=t,null!=t&&(this.compute_viewport(),this.invalidate_layout()))}),250));const t=this.model.properties;this.on_change([t.width,t.height,t.min_width,t.min_height,t.max_width,t.max_height,t.margin,t.width_policy,t.height_policy,t.sizing_mode,t.aspect_ratio,t.visible],(()=>this.invalidate_layout())),this.on_change([t.background,t.css_classes],(()=>this.invalidate_render()))}disconnect_signals(){null!=this._parent_observer&&clearTimeout(this._parent_observer),null!=this._on_resize&&window.removeEventListener(\"resize\",this._on_resize),super.disconnect_signals()}css_classes(){return super.css_classes().concat(this.model.css_classes)}get child_views(){return this.child_models.map((t=>this._child_views.get(t)))}async build_child_views(){await c.build_views(this._child_views,this.child_models,{parent:this})}render(){super.render(),h.empty(this.el);const{background:t}=this.model;this.el.style.backgroundColor=null!=t?_.color2css(t):\"\",h.classes(this.el).clear().add(...this.css_classes());for(const t of this.child_views)this.el.appendChild(t.el),t.render()}update_layout(){for(const t of this.child_views)t.update_layout();this._update_layout()}update_position(){this.el.style.display=this.model.visible?\"block\":\"none\";const t=this.is_root?this.layout.sizing.margin:void 0;h.position(this.el,this.layout.bbox,t);for(const t of this.child_views)t.update_position()}after_layout(){for(const t of this.child_views)t.after_layout();this._has_finished=!0}compute_viewport(){this._viewport=this._viewport_size()}renderTo(t){t.appendChild(this.el),this._offset_parent=this.el.offsetParent,this.compute_viewport(),this.build()}build(){return this.assert_root(),this.render(),this.update_layout(),this.compute_layout(),this}async rebuild(){await this.build_child_views(),this.invalidate_render()}compute_layout(){const t=Date.now();this.layout.compute(this._viewport),this.update_position(),this.after_layout(),a.logger.debug(`layout computed in ${Date.now()-t} ms`),this.notify_finished()}resize_layout(){this.root.compute_viewport(),this.root.compute_layout()}invalidate_layout(){this.root.update_layout(),this.root.compute_layout()}invalidate_render(){this.render(),this.invalidate_layout()}has_finished(){if(!super.has_finished())return!1;for(const t of this.child_views)if(!t.has_finished())return!1;return!0}notify_finished(){this.is_root?!this._idle_notified&&this.has_finished()&&null!=this.model.document&&(this._idle_notified=!0,this.model.document.notify_idle(this.model)):this.root.notify_finished()}_width_policy(){return null!=this.model.width?\"fixed\":\"fit\"}_height_policy(){return null!=this.model.height?\"fixed\":\"fit\"}box_sizing(){let{width_policy:t,height_policy:i,aspect_ratio:e}=this.model;\"auto\"==t&&(t=this._width_policy()),\"auto\"==i&&(i=this._height_policy());const{sizing_mode:s}=this.model;if(null!=s)if(\"fixed\"==s)t=i=\"fixed\";else if(\"stretch_both\"==s)t=i=\"max\";else if(\"stretch_width\"==s)t=\"max\";else if(\"stretch_height\"==s)i=\"max\";else switch(null==e&&(e=\"auto\"),s){case\"scale_width\":t=\"max\",i=\"min\";break;case\"scale_height\":t=\"min\",i=\"max\";break;case\"scale_both\":t=\"max\",i=\"max\"}const o={width_policy:t,height_policy:i},{min_width:l,min_height:n}=this.model;null!=l&&(o.min_width=l),null!=n&&(o.min_height=n);const{width:h,height:a}=this.model;null!=h&&(o.width=h),null!=a&&(o.height=a);const{max_width:_,max_height:d}=this.model;null!=_&&(o.max_width=_),null!=d&&(o.max_height=d),\"auto\"==e&&null!=h&&null!=a?o.aspect=h/a:r.isNumber(e)&&(o.aspect=e);const{margin:c}=this.model;if(null!=c)if(r.isNumber(c))o.margin={top:c,right:c,bottom:c,left:c};else if(2==c.length){const[t,i]=c;o.margin={top:t,right:i,bottom:t,left:i}}else{const[t,i,e,s]=c;o.margin={top:t,right:i,bottom:e,left:s}}o.visible=this.model.visible;const{align:u}=this.model;return r.isArray(u)?[o.halign,o.valign]=u:o.halign=o.valign=u,o}_viewport_size(){return h.undisplayed(this.el,(()=>{let t=this.el;for(;t=t.parentElement;){if(t.classList.contains(p.root))continue;if(t==document.body){const{margin:{left:t,right:i,top:e,bottom:s}}=h.extents(document.body);return{width:Math.ceil(document.documentElement.clientWidth-t-i),height:Math.ceil(document.documentElement.clientHeight-e-s)}}const{padding:{left:i,right:e,top:s,bottom:o}}=h.extents(t),{width:l,height:n}=t.getBoundingClientRect(),a=Math.ceil(l-i-e),r=Math.ceil(n-s-o);if(a>0||r>0)return{width:a>0?a:void 0,height:r>0?r:void 0}}return{}}))}export(t,i=!0){const e=\"png\"==t?\"canvas\":\"svg\",s=new g.CanvasLayer(e,i),{width:o,height:l}=this.layout.bbox;s.resize(o,l);for(const e of this.child_views){const o=e.export(t,i),{x:l,y:n}=e.layout.bbox;s.ctx.drawImage(o.canvas,l,n)}return s}serializable_state(){return Object.assign(Object.assign({},super.serializable_state()),{bbox:this.layout.bbox.box,children:this.child_views.map((t=>t.serializable_state()))})}}e.LayoutDOMView=f,f.__name__=\"LayoutDOMView\";class w extends l.Model{constructor(t){super(t)}static init_LayoutDOM(){this.define((t=>{const{Boolean:i,Number:e,String:s,Auto:o,Color:l,Array:h,Tuple:a,Or:r,Null:_,Nullable:d}=t,c=a(e,e),u=a(e,e,e,e);return{width:[d(e),null],height:[d(e),null],min_width:[d(e),null],min_height:[d(e),null],max_width:[d(e),null],max_height:[d(e),null],margin:[d(r(e,c,u)),[0,0,0,0]],width_policy:[r(m.SizingPolicy,o),\"auto\"],height_policy:[r(m.SizingPolicy,o),\"auto\"],aspect_ratio:[r(e,o,_),null],sizing_mode:[d(n.SizingMode),null],visible:[i,!0],disabled:[i,!1],align:[r(n.Align,a(n.Align,n.Align)),\"start\"],background:[d(l),null],css_classes:[h(s),[]]}}))}}e.LayoutDOM=w,w.__name__=\"LayoutDOM\",w.init_LayoutDOM()},\n", " function _(t,s,i,o,n){o();const e=t(318),l=t(223);class u extends e.BoxView{_update_layout(){const t=this.child_views.map((t=>t.layout));this.layout=new l.Column(t),this.layout.rows=this.model.rows,this.layout.spacing=[this.model.spacing,0],this.layout.set_sizing(this.box_sizing())}}i.ColumnView=u,u.__name__=\"ColumnView\";class a extends e.Box{constructor(t){super(t)}static init_Column(){this.prototype.default_view=u,this.define((({Any:t})=>({rows:[t,\"auto\"]})))}}i.Column=a,a.__name__=\"Column\",a.init_Column()},\n", " function _(t,s,i,o,e){o();const n=t(319),l=t(223);class a extends n.LayoutDOMView{connect_signals(){super.connect_signals();const{children:t,rows:s,cols:i,spacing:o}=this.model.properties;this.on_change([t,s,i,o],(()=>this.rebuild()))}get child_models(){return this.model.children.map((([t])=>t))}_update_layout(){this.layout=new l.Grid,this.layout.rows=this.model.rows,this.layout.cols=this.model.cols,this.layout.spacing=this.model.spacing;for(const[t,s,i,o,e]of this.model.children){const n=this._child_views.get(t);this.layout.items.push({layout:n.layout,row:s,col:i,row_span:o,col_span:e})}this.layout.set_sizing(this.box_sizing())}}i.GridBoxView=a,a.__name__=\"GridBoxView\";class r extends n.LayoutDOM{constructor(t){super(t)}static init_GridBox(){this.prototype.default_view=a,this.define((({Any:t,Int:s,Number:i,Tuple:o,Array:e,Ref:l,Or:a,Opt:r})=>({children:[e(o(l(n.LayoutDOM),s,s,r(s),r(s))),[]],rows:[t,\"auto\"],cols:[t,\"auto\"],spacing:[a(i,o(i,i)),0]})))}}i.GridBox=r,r.__name__=\"GridBox\",r.init_GridBox()},\n", " function _(t,e,o,s,n){s();const _=t(319),i=t(221);class a extends _.LayoutDOMView{get child_models(){return[]}_update_layout(){this.layout=new i.ContentBox(this.el),this.layout.set_sizing(this.box_sizing())}}o.HTMLBoxView=a,a.__name__=\"HTMLBoxView\";class u extends _.LayoutDOM{constructor(t){super(t)}}o.HTMLBox=u,u.__name__=\"HTMLBox\"},\n", " function _(e,n,t,i,l){i();const a=e(53),o=e(319);class s extends a.Model{constructor(e){super(e)}static init_Panel(){this.define((({Boolean:e,String:n,Ref:t})=>({title:[n,\"\"],child:[t(o.LayoutDOM)],closable:[e,!1]})))}}t.Panel=s,s.__name__=\"Panel\",s.init_Panel()},\n", " function _(t,s,i,o,e){o();const n=t(318),a=t(223);class _ extends n.BoxView{_update_layout(){const t=this.child_views.map((t=>t.layout));this.layout=new a.Row(t),this.layout.cols=this.model.cols,this.layout.spacing=[0,this.model.spacing],this.layout.set_sizing(this.box_sizing())}}i.RowView=_,_.__name__=\"RowView\";class l extends n.Box{constructor(t){super(t)}static init_Row(){this.prototype.default_view=_,this.define((({Any:t})=>({cols:[t,\"auto\"]})))}}i.Row=l,l.__name__=\"Row\",l.init_Row()},\n", " function _(t,e,a,i,s){i();const _=t(319),c=t(221);class n extends _.LayoutDOMView{get child_models(){return[]}_update_layout(){this.layout=new c.LayoutItem,this.layout.set_sizing(this.box_sizing())}}a.SpacerView=n,n.__name__=\"SpacerView\";class o extends _.LayoutDOM{constructor(t){super(t)}static init_Spacer(){this.prototype.default_view=n}}a.Spacer=o,o.__name__=\"Spacer\",o.init_Spacer()},\n", " function _(e,t,s,i,l){i();const h=e(1),a=e(221),o=e(43),r=e(9),c=e(10),d=e(20),n=e(319),_=e(323),p=h.__importStar(e(327)),b=p,u=h.__importStar(e(328)),m=u,g=h.__importStar(e(243)),v=g;class w extends n.LayoutDOMView{constructor(){super(...arguments),this._scroll_index=0}connect_signals(){super.connect_signals(),this.connect(this.model.properties.tabs.change,(()=>this.rebuild())),this.connect(this.model.properties.active.change,(()=>this.on_active_change()))}styles(){return[...super.styles(),u.default,g.default,p.default]}get child_models(){return this.model.tabs.map((e=>e.child))}_update_layout(){const e=this.model.tabs_location,t=\"above\"==e||\"below\"==e,{scroll_el:s,headers_el:i}=this;this.header=new class extends a.ContentBox{_measure(e){const l=o.size(s),h=o.children(i).slice(0,3).map((e=>o.size(e))),{width:a,height:c}=super._measure(e);if(t){const t=l.width+r.sum(h.map((e=>e.width)));return{width:e.width!=1/0?e.width:t,height:c}}{const t=l.height+r.sum(h.map((e=>e.height)));return{width:a,height:e.height!=1/0?e.height:t}}}}(this.header_el),t?this.header.set_sizing({width_policy:\"fit\",height_policy:\"fixed\"}):this.header.set_sizing({width_policy:\"fixed\",height_policy:\"fit\"});let l=1,h=1;switch(e){case\"above\":l-=1;break;case\"below\":l+=1;break;case\"left\":h-=1;break;case\"right\":h+=1}const c={layout:this.header,row:l,col:h},d=this.child_views.map((e=>({layout:e.layout,row:1,col:1})));this.layout=new a.Grid([c,...d]),this.layout.set_sizing(this.box_sizing())}update_position(){super.update_position(),this.header_el.style.position=\"absolute\",o.position(this.header_el,this.header.bbox);const e=this.model.tabs_location,t=\"above\"==e||\"below\"==e,s=o.size(this.scroll_el),i=o.scroll_size(this.headers_el);if(t){const{width:e}=this.header.bbox;i.width>e?(this.wrapper_el.style.maxWidth=e-s.width+\"px\",o.display(this.scroll_el),this.do_scroll(this.model.active)):(this.wrapper_el.style.maxWidth=\"\",o.undisplay(this.scroll_el))}else{const{height:e}=this.header.bbox;i.height>e?(this.wrapper_el.style.maxHeight=e-s.height+\"px\",o.display(this.scroll_el),this.do_scroll(this.model.active)):(this.wrapper_el.style.maxHeight=\"\",o.undisplay(this.scroll_el))}const{child_views:l}=this;for(const e of l)o.hide(e.el);const h=l[this.model.active];null!=h&&o.show(h.el)}render(){super.render();const{active:e}=this.model,t=this.model.tabs.map(((t,s)=>{const i=o.div({class:[b.tab,s==e?b.active:null]},t.title);if(i.addEventListener(\"click\",(e=>{e.target==e.currentTarget&&this.change_active(s)})),t.closable){const e=o.div({class:b.close});e.addEventListener(\"click\",(e=>{if(e.target==e.currentTarget){this.model.tabs=r.remove_at(this.model.tabs,s);const e=this.model.tabs.length;this.model.active>e-1&&(this.model.active=e-1)}})),i.appendChild(e)}return i}));this.headers_el=o.div({class:[b.headers]},t),this.wrapper_el=o.div({class:b.headers_wrapper},this.headers_el),this.left_el=o.div({class:[m.btn,m.btn_default],disabled:\"\"},o.div({class:[v.caret,b.left]})),this.right_el=o.div({class:[m.btn,m.btn_default]},o.div({class:[v.caret,b.right]})),this.left_el.addEventListener(\"click\",(()=>this.do_scroll(\"left\"))),this.right_el.addEventListener(\"click\",(()=>this.do_scroll(\"right\"))),this.scroll_el=o.div({class:m.btn_group},this.left_el,this.right_el);const s=this.model.tabs_location;this.header_el=o.div({class:[b.tabs_header,b[s]]},this.scroll_el,this.wrapper_el),this.el.appendChild(this.header_el)}do_scroll(e){const t=this.model.tabs.length;\"left\"==e?this._scroll_index-=1:\"right\"==e?this._scroll_index+=1:this._scroll_index=e,this._scroll_index=c.clamp(this._scroll_index,0,t-1),0==this._scroll_index?this.left_el.setAttribute(\"disabled\",\"\"):this.left_el.removeAttribute(\"disabled\"),this._scroll_index==t-1?this.right_el.setAttribute(\"disabled\",\"\"):this.right_el.removeAttribute(\"disabled\");const s=o.children(this.headers_el).slice(0,this._scroll_index).map((e=>e.getBoundingClientRect())),i=this.model.tabs_location;if(\"above\"==i||\"below\"==i){const e=-r.sum(s.map((e=>e.width)));this.headers_el.style.left=`${e}px`}else{const e=-r.sum(s.map((e=>e.height)));this.headers_el.style.top=`${e}px`}}change_active(e){e!=this.model.active&&(this.model.active=e)}on_active_change(){const e=this.model.active,t=o.children(this.headers_el);for(const e of t)e.classList.remove(b.active);t[e].classList.add(b.active);const{child_views:s}=this;for(const e of s)o.hide(e.el);o.show(s[e].el)}}s.TabsView=w,w.__name__=\"TabsView\";class f extends n.LayoutDOM{constructor(e){super(e)}static init_Tabs(){this.prototype.default_view=w,this.define((({Int:e,Array:t,Ref:s})=>({tabs:[t(s(_.Panel)),[]],tabs_location:[d.Location,\"above\"],active:[e,0]})))}}s.Tabs=f,f.__name__=\"Tabs\",f.init_Tabs()},\n", " function _(e,r,b,o,t){o(),b.root=\"bk-root\",b.tabs_header=\"bk-tabs-header\",b.btn_group=\"bk-btn-group\",b.btn=\"bk-btn\",b.headers_wrapper=\"bk-headers-wrapper\",b.above=\"bk-above\",b.right=\"bk-right\",b.below=\"bk-below\",b.left=\"bk-left\",b.headers=\"bk-headers\",b.tab=\"bk-tab\",b.active=\"bk-active\",b.close=\"bk-close\",b.default='.bk-root .bk-tabs-header{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;overflow:hidden;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;}.bk-root .bk-tabs-header .bk-btn-group{height:auto;margin-right:5px;}.bk-root .bk-tabs-header .bk-btn-group > .bk-btn{flex-grow:0;-webkit-flex-grow:0;height:auto;padding:4px 4px;}.bk-root .bk-tabs-header .bk-headers-wrapper{flex-grow:1;-webkit-flex-grow:1;overflow:hidden;color:#666666;}.bk-root .bk-tabs-header.bk-above .bk-headers-wrapper{border-bottom:1px solid #e6e6e6;}.bk-root .bk-tabs-header.bk-right .bk-headers-wrapper{border-left:1px solid #e6e6e6;}.bk-root .bk-tabs-header.bk-below .bk-headers-wrapper{border-top:1px solid #e6e6e6;}.bk-root .bk-tabs-header.bk-left .bk-headers-wrapper{border-right:1px solid #e6e6e6;}.bk-root .bk-tabs-header.bk-above,.bk-root .bk-tabs-header.bk-below{flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-tabs-header.bk-above .bk-headers,.bk-root .bk-tabs-header.bk-below .bk-headers{flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-tabs-header.bk-left,.bk-root .bk-tabs-header.bk-right{flex-direction:column;-webkit-flex-direction:column;}.bk-root .bk-tabs-header.bk-left .bk-headers,.bk-root .bk-tabs-header.bk-right .bk-headers{flex-direction:column;-webkit-flex-direction:column;}.bk-root .bk-tabs-header .bk-headers{position:relative;display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;}.bk-root .bk-tabs-header .bk-tab{padding:4px 8px;border:solid transparent;white-space:nowrap;cursor:pointer;}.bk-root .bk-tabs-header .bk-tab:hover{background-color:#f2f2f2;}.bk-root .bk-tabs-header .bk-tab.bk-active{color:#4d4d4d;background-color:white;border-color:#e6e6e6;}.bk-root .bk-tabs-header .bk-tab .bk-close{margin-left:10px;}.bk-root .bk-tabs-header.bk-above .bk-tab{border-width:3px 1px 0px 1px;border-radius:4px 4px 0 0;}.bk-root .bk-tabs-header.bk-right .bk-tab{border-width:1px 3px 1px 0px;border-radius:0 4px 4px 0;}.bk-root .bk-tabs-header.bk-below .bk-tab{border-width:0px 1px 3px 1px;border-radius:0 0 4px 4px;}.bk-root .bk-tabs-header.bk-left .bk-tab{border-width:1px 0px 1px 3px;border-radius:4px 0 0 4px;}.bk-root .bk-close{display:inline-block;width:10px;height:10px;vertical-align:middle;background-image:url(\\'data:image/svg+xml;utf8, <svg viewPort=\"0 0 10 10\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"> <line x1=\"1\" y1=\"9\" x2=\"9\" y2=\"1\" stroke=\"gray\" stroke-width=\"2\"/> <line x1=\"1\" y1=\"1\" x2=\"9\" y2=\"9\" stroke=\"gray\" stroke-width=\"2\"/> </svg>\\');}.bk-root .bk-close:hover{background-image:url(\\'data:image/svg+xml;utf8, <svg viewPort=\"0 0 10 10\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"> <line x1=\"1\" y1=\"9\" x2=\"9\" y2=\"1\" stroke=\"red\" stroke-width=\"2\"/> <line x1=\"1\" y1=\"1\" x2=\"9\" y2=\"9\" stroke=\"red\" stroke-width=\"2\"/> </svg>\\');}'},\n", " function _(o,b,r,t,e){t(),r.root=\"bk-root\",r.btn=\"bk-btn\",r.active=\"bk-active\",r.btn_default=\"bk-btn-default\",r.btn_primary=\"bk-btn-primary\",r.btn_success=\"bk-btn-success\",r.btn_warning=\"bk-btn-warning\",r.btn_danger=\"bk-btn-danger\",r.btn_light=\"bk-btn-light\",r.btn_group=\"bk-btn-group\",r.dropdown_toggle=\"bk-dropdown-toggle\",r.default=\".bk-root .bk-btn{height:100%;display:inline-block;text-align:center;vertical-align:middle;white-space:nowrap;cursor:pointer;padding:6px 12px;font-size:12px;border:1px solid transparent;border-radius:4px;outline:0;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;}.bk-root .bk-btn:hover,.bk-root .bk-btn:focus{text-decoration:none;}.bk-root .bk-btn:active,.bk-root .bk-btn.bk-active{background-image:none;box-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);}.bk-root .bk-btn[disabled]{cursor:not-allowed;pointer-events:none;opacity:0.65;box-shadow:none;}.bk-root .bk-btn-default{color:#333;background-color:#fff;border-color:#ccc;}.bk-root .bk-btn-default:hover{background-color:#f5f5f5;border-color:#b8b8b8;}.bk-root .bk-btn-default.bk-active{background-color:#ebebeb;border-color:#adadad;}.bk-root .bk-btn-default[disabled],.bk-root .bk-btn-default[disabled]:hover,.bk-root .bk-btn-default[disabled]:focus,.bk-root .bk-btn-default[disabled]:active,.bk-root .bk-btn-default[disabled].bk-active{background-color:#e6e6e6;border-color:#ccc;}.bk-root .bk-btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd;}.bk-root .bk-btn-primary:hover{background-color:#3681c1;border-color:#2c699e;}.bk-root .bk-btn-primary.bk-active{background-color:#3276b1;border-color:#285e8e;}.bk-root .bk-btn-primary[disabled],.bk-root .bk-btn-primary[disabled]:hover,.bk-root .bk-btn-primary[disabled]:focus,.bk-root .bk-btn-primary[disabled]:active,.bk-root .bk-btn-primary[disabled].bk-active{background-color:#506f89;border-color:#357ebd;}.bk-root .bk-btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c;}.bk-root .bk-btn-success:hover{background-color:#4eb24e;border-color:#409240;}.bk-root .bk-btn-success.bk-active{background-color:#47a447;border-color:#398439;}.bk-root .bk-btn-success[disabled],.bk-root .bk-btn-success[disabled]:hover,.bk-root .bk-btn-success[disabled]:focus,.bk-root .bk-btn-success[disabled]:active,.bk-root .bk-btn-success[disabled].bk-active{background-color:#667b66;border-color:#4cae4c;}.bk-root .bk-btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236;}.bk-root .bk-btn-warning:hover{background-color:#eea43b;border-color:#e89014;}.bk-root .bk-btn-warning.bk-active{background-color:#ed9c28;border-color:#d58512;}.bk-root .bk-btn-warning[disabled],.bk-root .bk-btn-warning[disabled]:hover,.bk-root .bk-btn-warning[disabled]:focus,.bk-root .bk-btn-warning[disabled]:active,.bk-root .bk-btn-warning[disabled].bk-active{background-color:#c89143;border-color:#eea236;}.bk-root .bk-btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a;}.bk-root .bk-btn-danger:hover{background-color:#d5433e;border-color:#bd2d29;}.bk-root .bk-btn-danger.bk-active{background-color:#d2322d;border-color:#ac2925;}.bk-root .bk-btn-danger[disabled],.bk-root .bk-btn-danger[disabled]:hover,.bk-root .bk-btn-danger[disabled]:focus,.bk-root .bk-btn-danger[disabled]:active,.bk-root .bk-btn-danger[disabled].bk-active{background-color:#a55350;border-color:#d43f3a;}.bk-root .bk-btn-light{color:#333;background-color:#fff;border-color:#ccc;border-color:transparent;}.bk-root .bk-btn-light:hover{background-color:#f5f5f5;border-color:#b8b8b8;}.bk-root .bk-btn-light.bk-active{background-color:#ebebeb;border-color:#adadad;}.bk-root .bk-btn-light[disabled],.bk-root .bk-btn-light[disabled]:hover,.bk-root .bk-btn-light[disabled]:focus,.bk-root .bk-btn-light[disabled]:active,.bk-root .bk-btn-light[disabled].bk-active{background-color:#e6e6e6;border-color:#ccc;}.bk-root .bk-btn-group{height:100%;display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-btn-group > .bk-btn{flex-grow:1;-webkit-flex-grow:1;}.bk-root .bk-btn-group > .bk-btn + .bk-btn{margin-left:-1px;}.bk-root .bk-btn-group > .bk-btn:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;}.bk-root .bk-btn-group > .bk-btn:not(:first-child):last-child{border-bottom-left-radius:0;border-top-left-radius:0;}.bk-root .bk-btn-group > .bk-btn:not(:first-child):not(:last-child){border-radius:0;}.bk-root .bk-btn-group .bk-dropdown-toggle{flex:0 0 0;-webkit-flex:0 0 0;padding:6px 6px;}\"},\n", " function _(t,e,i,o,n){o();const _=t(320);class s extends _.ColumnView{}i.WidgetBoxView=s,s.__name__=\"WidgetBoxView\";class d extends _.Column{constructor(t){super(t)}static init_WidgetBox(){this.prototype.default_view=s}}i.WidgetBox=d,d.__name__=\"WidgetBox\",d.init_WidgetBox()},\n", " function _(p,o,t,a,n){a(),n(\"MapOptions\",p(331).MapOptions),n(\"GMapOptions\",p(331).GMapOptions),n(\"GMapPlot\",p(331).GMapPlot),n(\"Plot\",p(332).Plot)},\n", " function _(t,i,n,e,a){e();const s=t(332),o=t(53),p=t(156),_=t(337);a(\"GMapPlotView\",_.GMapPlotView);class l extends o.Model{constructor(t){super(t)}static init_MapOptions(){this.define((({Int:t,Number:i})=>({lat:[i],lng:[i],zoom:[t,12]})))}}n.MapOptions=l,l.__name__=\"MapOptions\",l.init_MapOptions();class r extends l{constructor(t){super(t)}static init_GMapOptions(){this.define((({Boolean:t,Int:i,String:n})=>({map_type:[n,\"roadmap\"],scale_control:[t,!1],styles:[n],tilt:[i,45]})))}}n.GMapOptions=r,r.__name__=\"GMapOptions\",r.init_GMapOptions();class c extends s.Plot{constructor(t){super(t),this.use_map=!0}static init_GMapPlot(){this.prototype.default_view=_.GMapPlotView,this.define((({String:t,Ref:i})=>({map_options:[i(r)],api_key:[t],api_version:[t,\"3.43\"]}))),this.override({x_range:()=>new p.Range1d,y_range:()=>new p.Range1d})}}n.GMapPlot=c,c.__name__=\"GMapPlot\",c.init_GMapPlot()},\n", " function _(e,t,i,n,r){n();const o=e(1),a=o.__importStar(e(48)),s=o.__importStar(e(18)),l=e(15),_=e(20),h=e(9),c=e(13),d=e(8),u=e(319),g=e(163),p=e(316),f=e(40),b=e(138),w=e(218),m=e(235),y=e(105),v=e(146),x=e(130),A=e(41),R=e(62),S=e(61),P=e(159),D=e(333);r(\"PlotView\",D.PlotView);class L extends u.LayoutDOM{constructor(e){super(e),this.use_map=!1}static init_Plot(){this.prototype.default_view=D.PlotView,this.mixins([[\"outline_\",a.Line],[\"background_\",a.Fill],[\"border_\",a.Fill]]),this.define((({Boolean:e,Number:t,String:i,Array:n,Dict:r,Or:o,Ref:a,Null:l,Nullable:h})=>({toolbar:[a(m.Toolbar),()=>new m.Toolbar],toolbar_location:[h(_.Location),\"right\"],toolbar_sticky:[e,!0],plot_width:[s.Alias(\"width\")],plot_height:[s.Alias(\"height\")],frame_width:[h(t),null],frame_height:[h(t),null],title:[o(a(b.Title),i,l),()=>new b.Title({text:\"\"})],title_location:[h(_.Location),\"above\"],above:[n(o(a(f.Annotation),a(g.Axis))),[]],below:[n(o(a(f.Annotation),a(g.Axis))),[]],left:[n(o(a(f.Annotation),a(g.Axis))),[]],right:[n(o(a(f.Annotation),a(g.Axis))),[]],center:[n(o(a(f.Annotation),a(p.Grid))),[]],renderers:[n(a(A.Renderer)),[]],x_range:[a(y.Range),()=>new P.DataRange1d],extra_x_ranges:[r(a(y.Range)),{}],y_range:[a(y.Range),()=>new P.DataRange1d],extra_y_ranges:[r(a(y.Range)),{}],x_scale:[a(v.Scale),()=>new w.LinearScale],y_scale:[a(v.Scale),()=>new w.LinearScale],lod_factor:[t,10],lod_interval:[t,300],lod_threshold:[h(t),2e3],lod_timeout:[t,500],hidpi:[e,!0],output_backend:[_.OutputBackend,\"canvas\"],min_border:[h(t),5],min_border_top:[h(t),null],min_border_left:[h(t),null],min_border_bottom:[h(t),null],min_border_right:[h(t),null],inner_width:[t,0],inner_height:[t,0],outer_width:[t,0],outer_height:[t,0],match_aspect:[e,!1],aspect_scale:[t,1],reset_policy:[_.ResetPolicy,\"standard\"]}))),this.override({width:600,height:600,outline_line_color:\"#e5e5e5\",border_fill_color:\"#ffffff\",background_fill_color:\"#ffffff\"})}_doc_attached(){super._doc_attached(),this._push_changes([[this.properties.inner_height,null,this.inner_height],[this.properties.inner_width,null,this.inner_width]])}initialize(){super.initialize(),this.reset=new l.Signal0(this,\"reset\");for(const e of c.values(this.extra_x_ranges).concat(this.x_range)){let t=e.plots;d.isArray(t)&&(t=t.concat(this),e.setv({plots:t},{silent:!0}))}for(const e of c.values(this.extra_y_ranges).concat(this.y_range)){let t=e.plots;d.isArray(t)&&(t=t.concat(this),e.setv({plots:t},{silent:!0}))}}add_layout(e,t=\"center\"){const i=this.properties[t].get_value();this.setv({[t]:[...i,e]})}remove_layout(e){const t=t=>{h.remove_by(t,(t=>t==e))};t(this.left),t(this.right),t(this.above),t(this.below),t(this.center)}get data_renderers(){return this.renderers.filter((e=>e instanceof R.DataRenderer))}add_renderers(...e){this.renderers=this.renderers.concat(e)}add_glyph(e,t=new x.ColumnDataSource,i={}){const n=new S.GlyphRenderer(Object.assign(Object.assign({},i),{data_source:t,glyph:e}));return this.add_renderers(n),n}add_tools(...e){this.toolbar.tools=this.toolbar.tools.concat(e)}get panels(){return[...this.side_panels,...this.center]}get side_panels(){const{above:e,below:t,left:i,right:n}=this;return h.concat([e,t,i,n])}}i.Plot=L,L.__name__=\"Plot\",L.init_Plot()},\n", " function _(e,t,i,s,a){s();const n=e(1),o=e(144),l=e(262),r=e(319),_=e(40),h=e(138),d=e(163),u=e(234),c=e(264),p=e(122),v=e(45),b=e(19),g=e(334),m=e(8),w=e(9),y=e(249),f=e(222),x=e(225),z=e(223),k=e(140),q=e(99),M=e(335),V=e(336),P=e(28);class R extends r.LayoutDOMView{constructor(){super(...arguments),this._outer_bbox=new q.BBox,this._inner_bbox=new q.BBox,this._needs_paint=!0,this._needs_layout=!1,this._invalidated_painters=new Set,this._invalidate_all=!0}get canvas(){return this.canvas_view}get state(){return this._state_manager}set invalidate_dataranges(e){this._range_manager.invalidate_dataranges=e}renderer_view(e){const t=this.renderer_views.get(e);if(null==t)for(const[,t]of this.renderer_views){const i=t.renderer_view(e);if(null!=i)return i}return t}get is_paused(){return null!=this._is_paused&&0!==this._is_paused}get child_models(){return[]}pause(){null==this._is_paused?this._is_paused=1:this._is_paused+=1}unpause(e=!1){if(null==this._is_paused)throw new Error(\"wasn't paused\");this._is_paused-=1,0!=this._is_paused||e||this.request_paint(\"everything\")}request_render(){this.request_paint(\"everything\")}request_paint(e){this.invalidate_painters(e),this.schedule_paint()}invalidate_painters(e){if(\"everything\"==e)this._invalidate_all=!0;else if(m.isArray(e))for(const t of e)this._invalidated_painters.add(t);else this._invalidated_painters.add(e)}schedule_paint(){if(!this.is_paused){const e=this.throttled_paint();this._ready=this._ready.then((()=>e))}}request_layout(){this._needs_layout=!0,this.request_paint(\"everything\")}reset(){\"standard\"==this.model.reset_policy&&(this.state.clear(),this.reset_range(),this.reset_selection()),this.model.trigger_event(new c.Reset)}remove(){p.remove_views(this.renderer_views),p.remove_views(this.tool_views),this.canvas_view.remove(),super.remove()}render(){super.render(),this.el.appendChild(this.canvas_view.el),this.canvas_view.render()}initialize(){this.pause(),super.initialize(),this.lod_started=!1,this.visuals=new v.Visuals(this),this._initial_state={selection:new Map,dimensions:{width:0,height:0}},this.visibility_callbacks=[],this.renderer_views=new Map,this.tool_views=new Map,this.frame=new o.CartesianFrame(this.model.x_scale,this.model.y_scale,this.model.x_range,this.model.y_range,this.model.extra_x_ranges,this.model.extra_y_ranges),this._range_manager=new M.RangeManager(this),this._state_manager=new V.StateManager(this,this._initial_state),this.throttled_paint=g.throttle((()=>this.repaint()),1e3/60);const{title_location:e,title:t}=this.model;null!=e&&null!=t&&(this._title=t instanceof h.Title?t:new h.Title({text:t}));const{toolbar_location:i,toolbar:s}=this.model;null!=i&&null!=s&&(this._toolbar=new u.ToolbarPanel({toolbar:s}),s.toolbar_location=i)}async lazy_initialize(){await super.lazy_initialize();const{hidpi:e,output_backend:t}=this.model,i=new l.Canvas({hidpi:e,output_backend:t});this.canvas_view=await p.build_view(i,{parent:this}),this.canvas_view.plot_views=[this],await this.build_renderer_views(),await this.build_tool_views(),this._range_manager.update_dataranges(),this.unpause(!0),b.logger.debug(\"PlotView initialized\")}_width_policy(){return null==this.model.frame_width?super._width_policy():\"min\"}_height_policy(){return null==this.model.frame_height?super._height_policy():\"min\"}_update_layout(){var e,t,i,s,a;this.layout=new x.BorderLayout,this.layout.set_sizing(this.box_sizing());const n=w.copy(this.model.above),o=w.copy(this.model.below),l=w.copy(this.model.left),r=w.copy(this.model.right),d=e=>{switch(e){case\"above\":return n;case\"below\":return o;case\"left\":return l;case\"right\":return r}},{title_location:c,title:p}=this.model;null!=c&&null!=p&&d(c).push(this._title);const{toolbar_location:v,toolbar:b}=this.model;if(null!=v&&null!=b){const e=d(v);let t=!0;if(this.model.toolbar_sticky)for(let i=0;i<e.length;i++){const s=e[i];if(s instanceof h.Title){e[i]=\"above\"==v||\"below\"==v?[s,this._toolbar]:[this._toolbar,s],t=!1;break}}t&&e.push(this._toolbar)}const g=(e,t)=>{var i;const s=this.renderer_view(t);return s.panel=new k.Panel(e),null===(i=s.update_layout)||void 0===i||i.call(s),s.layout},y=(e,t)=>{const i=\"above\"==e||\"below\"==e,s=[];for(const a of t)if(m.isArray(a)){const t=a.map((t=>{const s=g(e,t);if(t instanceof u.ToolbarPanel){const e=i?\"width_policy\":\"height_policy\";s.set_sizing(Object.assign(Object.assign({},s.sizing),{[e]:\"min\"}))}return s}));let n;i?(n=new z.Row(t),n.set_sizing({width_policy:\"max\",height_policy:\"min\"})):(n=new z.Column(t),n.set_sizing({width_policy:\"min\",height_policy:\"max\"})),n.absolute=!0,s.push(n)}else s.push(g(e,a));return s},q=null!==(e=this.model.min_border)&&void 0!==e?e:0;this.layout.min_border={left:null!==(t=this.model.min_border_left)&&void 0!==t?t:q,top:null!==(i=this.model.min_border_top)&&void 0!==i?i:q,right:null!==(s=this.model.min_border_right)&&void 0!==s?s:q,bottom:null!==(a=this.model.min_border_bottom)&&void 0!==a?a:q};const M=new f.NodeLayout,V=new f.VStack,P=new f.VStack,R=new f.HStack,O=new f.HStack;M.absolute=!0,V.absolute=!0,P.absolute=!0,R.absolute=!0,O.absolute=!0,M.children=this.model.center.filter((e=>e instanceof _.Annotation)).map((e=>{var t;const i=this.renderer_view(e);return null===(t=i.update_layout)||void 0===t||t.call(i),i.layout})).filter((e=>null!=e));const{frame_width:S,frame_height:j}=this.model;M.set_sizing(Object.assign(Object.assign({},null!=S?{width_policy:\"fixed\",width:S}:{width_policy:\"fit\"}),null!=j?{height_policy:\"fixed\",height:j}:{height_policy:\"fit\"})),M.on_resize((e=>this.frame.set_geometry(e))),V.children=w.reversed(y(\"above\",n)),P.children=y(\"below\",o),R.children=w.reversed(y(\"left\",l)),O.children=y(\"right\",r),V.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),P.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),R.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),O.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),this.layout.center_panel=M,this.layout.top_panel=V,this.layout.bottom_panel=P,this.layout.left_panel=R,this.layout.right_panel=O}get axis_views(){const e=[];for(const[,t]of this.renderer_views)t instanceof d.AxisView&&e.push(t);return e}set_toolbar_visibility(e){for(const t of this.visibility_callbacks)t(e)}update_range(e,t){this.pause(),this._range_manager.update(e,t),this.unpause()}reset_range(){this.update_range(null)}get_selection(){const e=new Map;for(const t of this.model.data_renderers){const{selected:i}=t.selection_manager.source;e.set(t,i)}return e}update_selection(e){for(const t of this.model.data_renderers){const i=t.selection_manager.source;if(null!=e){const s=e.get(t);null!=s&&i.selected.update(s,!0)}else i.selection_manager.clear()}}reset_selection(){this.update_selection(null)}_invalidate_layout(){(()=>{var e;for(const t of this.model.side_panels){const i=this.renderer_views.get(t);if(null===(e=i.layout)||void 0===e?void 0:e.has_size_changed())return this.invalidate_painters(i),!0}return!1})()&&this.root.compute_layout()}get_renderer_views(){return this.computed_renderers.map((e=>this.renderer_views.get(e)))}*_compute_renderers(){const{above:e,below:t,left:i,right:s,center:a,renderers:n}=this.model;yield*n,yield*e,yield*t,yield*i,yield*s,yield*a,null!=this._title&&(yield this._title),null!=this._toolbar&&(yield this._toolbar);for(const e of this.model.toolbar.tools)null!=e.overlay&&(yield e.overlay),yield*e.synthetic_renderers}async build_renderer_views(){this.computed_renderers=[...this._compute_renderers()],await p.build_views(this.renderer_views,this.computed_renderers,{parent:this})}async build_tool_views(){const e=this.model.toolbar.tools;(await p.build_views(this.tool_views,e,{parent:this})).map((e=>this.canvas_view.ui_event_bus.register_tool(e)))}connect_signals(){super.connect_signals();const{x_ranges:e,y_ranges:t}=this.frame;for(const[,t]of e)this.connect(t.change,(()=>{this._needs_layout=!0,this.request_paint(\"everything\")}));for(const[,e]of t)this.connect(e.change,(()=>{this._needs_layout=!0,this.request_paint(\"everything\")}));const{above:i,below:s,left:a,right:n,center:o,renderers:l}=this.model.properties;this.on_change([i,s,a,n,o,l],(async()=>await this.build_renderer_views())),this.connect(this.model.toolbar.properties.tools.change,(async()=>{await this.build_renderer_views(),await this.build_tool_views()})),this.connect(this.model.change,(()=>this.request_paint(\"everything\"))),this.connect(this.model.reset,(()=>this.reset()))}has_finished(){if(!super.has_finished())return!1;if(this.model.visible)for(const[,e]of this.renderer_views)if(!e.has_finished())return!1;return!0}after_layout(){var e;super.after_layout();for(const[,t]of this.renderer_views)t instanceof _.AnnotationView&&(null===(e=t.after_layout)||void 0===e||e.call(t));if(this._needs_layout=!1,this.model.setv({inner_width:Math.round(this.frame.bbox.width),inner_height:Math.round(this.frame.bbox.height),outer_width:Math.round(this.layout.bbox.width),outer_height:Math.round(this.layout.bbox.height)},{no_change:!0}),!1!==this.model.match_aspect&&(this.pause(),this._range_manager.update_dataranges(),this.unpause(!0)),!this._outer_bbox.equals(this.layout.bbox)){const{width:e,height:t}=this.layout.bbox;this.canvas_view.resize(e,t),this._outer_bbox=this.layout.bbox,this._invalidate_all=!0,this._needs_paint=!0}const{inner_bbox:t}=this.layout;this._inner_bbox.equals(t)||(this._inner_bbox=t,this._needs_paint=!0),this._needs_paint&&this.paint()}repaint(){this._needs_layout&&this._invalidate_layout(),this.paint()}paint(){var e;if(this.is_paused||!this.model.visible)return;b.logger.trace(`PlotView.paint() for ${this.model.id}`);const{document:t}=this.model;if(null!=t){const e=t.interactive_duration();e>=0&&e<this.model.lod_interval?setTimeout((()=>{t.interactive_duration()>this.model.lod_timeout&&t.interactive_stop(),this.request_paint(\"everything\")}),this.model.lod_timeout):t.interactive_stop()}this._range_manager.invalidate_dataranges&&(this._range_manager.update_dataranges(),this._invalidate_layout());let i=!1,s=!1;if(this._invalidate_all)i=!0,s=!0;else for(const e of this._invalidated_painters){const{level:t}=e.model;if(\"overlay\"!=t?i=!0:s=!0,i&&s)break}this._invalidated_painters.clear(),this._invalidate_all=!1;const a=[this.frame.bbox.left,this.frame.bbox.top,this.frame.bbox.width,this.frame.bbox.height],{primary:n,overlays:o}=this.canvas_view;i&&(n.prepare(),this.canvas_view.prepare_webgl(a),this._map_hook(n.ctx,a),this._paint_empty(n.ctx,a),this._paint_outline(n.ctx,a),this._paint_levels(n.ctx,\"image\",a,!0),this._paint_levels(n.ctx,\"underlay\",a,!0),this._paint_levels(n.ctx,\"glyph\",a,!0),this._paint_levels(n.ctx,\"guide\",a,!1),this._paint_levels(n.ctx,\"annotation\",a,!1),n.finish()),(s||P.settings.wireframe)&&(o.prepare(),this._paint_levels(o.ctx,\"overlay\",a,!1),P.settings.wireframe&&this._paint_layout(o.ctx,this.layout),o.finish()),null==this._initial_state.range&&(this._initial_state.range=null!==(e=this._range_manager.compute_initial())&&void 0!==e?e:void 0),this._needs_paint=!1}_paint_levels(e,t,i,s){for(const a of this.computed_renderers){if(a.level!=t)continue;const n=this.renderer_views.get(a);e.save(),(s||n.needs_clip)&&(e.beginPath(),e.rect(...i),e.clip()),n.render(),e.restore(),n.has_webgl&&n.needs_webgl_blit&&this.canvas_view.blit_webgl(e)}}_paint_layout(e,t){const{x:i,y:s,width:a,height:n}=t.bbox;e.strokeStyle=\"blue\",e.strokeRect(i,s,a,n);for(const a of t)e.save(),t.absolute||e.translate(i,s),this._paint_layout(e,a),e.restore()}_map_hook(e,t){}_paint_empty(e,t){const[i,s,a,n]=[0,0,this.layout.bbox.width,this.layout.bbox.height],[o,l,r,_]=t;this.visuals.border_fill.doit&&(this.visuals.border_fill.set_value(e),e.fillRect(i,s,a,n),e.clearRect(o,l,r,_)),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(e),e.fillRect(o,l,r,_))}_paint_outline(e,t){if(this.visuals.outline_line.doit){e.save(),this.visuals.outline_line.set_value(e);let[i,s,a,n]=t;i+a==this.layout.bbox.width&&(a-=1),s+n==this.layout.bbox.height&&(n-=1),e.strokeRect(i,s,a,n),e.restore()}}to_blob(){return this.canvas_view.to_blob()}export(e,t=!0){const i=\"png\"==e?\"canvas\":\"svg\",s=new y.CanvasLayer(i,t),{width:a,height:n}=this.layout.bbox;s.resize(a,n);const{canvas:o}=this.canvas_view.compose();return s.ctx.drawImage(o,0,0),s}serializable_state(){const e=super.serializable_state(),{children:t}=e,i=n.__rest(e,[\"children\"]),s=this.get_renderer_views().map((e=>e.serializable_state())).filter((e=>null!=e.bbox));return Object.assign(Object.assign({},i),{children:[...null!=t?t:[],...s]})}}i.PlotView=R,R.__name__=\"PlotView\"},\n", " function _(t,n,e,o,u){o(),e.throttle=function(t,n){let e=null,o=0,u=!1;return function(){return new Promise(((r,i)=>{const l=function(){o=Date.now(),e=null,u=!1;try{t(),r()}catch(t){i(t)}},a=Date.now(),c=n-(a-o);c<=0&&!u?(null!=e&&clearTimeout(e),u=!0,requestAnimationFrame(l)):e||u?r():e=setTimeout((()=>requestAnimationFrame(l)),c)}))}}},\n", " function _(t,n,e,s,a){s();const o=t(159),r=t(19);class l{constructor(t){this.parent=t,this.invalidate_dataranges=!0}get frame(){return this.parent.frame}update(t,n){const{x_ranges:e,y_ranges:s}=this.frame;if(null==t){for(const[,t]of e)t.reset();for(const[,t]of s)t.reset();this.update_dataranges()}else{const a=[];for(const[n,s]of e)a.push([s,t.xrs.get(n)]);for(const[n,e]of s)a.push([e,t.yrs.get(n)]);(null==n?void 0:n.scrolling)&&this._update_ranges_together(a),this._update_ranges_individually(a,n)}}reset(){this.update(null)}update_dataranges(){const t=new Map,n=new Map;let e=!1;for(const[,t]of this.frame.x_ranges)t instanceof o.DataRange1d&&\"log\"==t.scale_hint&&(e=!0);for(const[,t]of this.frame.y_ranges)t instanceof o.DataRange1d&&\"log\"==t.scale_hint&&(e=!0);for(const s of this.parent.model.data_renderers){const a=this.parent.renderer_view(s);if(null==a)continue;const o=a.glyph_view.bounds();if(null!=o&&t.set(s,o),e){const t=a.glyph_view.log_bounds();null!=t&&n.set(s,t)}}let s=!1,a=!1;const{width:l,height:i}=this.frame.bbox;let d;!1!==this.parent.model.match_aspect&&0!=l&&0!=i&&(d=1/this.parent.model.aspect_scale*(l/i));for(const[,e]of this.frame.x_ranges){if(e instanceof o.DataRange1d){const a=\"log\"==e.scale_hint?n:t;e.update(a,0,this.parent.model,d),e.follow&&(s=!0)}null!=e.bounds&&(a=!0)}for(const[,e]of this.frame.y_ranges){if(e instanceof o.DataRange1d){const a=\"log\"==e.scale_hint?n:t;e.update(a,1,this.parent.model,d),e.follow&&(s=!0)}null!=e.bounds&&(a=!0)}if(s&&a){r.logger.warn(\"Follow enabled so bounds are unset.\");for(const[,t]of this.frame.x_ranges)t.bounds=null;for(const[,t]of this.frame.y_ranges)t.bounds=null}this.invalidate_dataranges=!1}compute_initial(){let t=!0;const{x_ranges:n,y_ranges:e}=this.frame,s=new Map,a=new Map;for(const[e,a]of n){const{start:n,end:o}=a;if(null==n||null==o||isNaN(n+o)){t=!1;break}s.set(e,{start:n,end:o})}if(t)for(const[n,s]of e){const{start:e,end:o}=s;if(null==e||null==o||isNaN(e+o)){t=!1;break}a.set(n,{start:e,end:o})}return t?{xrs:s,yrs:a}:(r.logger.warn(\"could not set initial ranges\"),null)}_update_ranges_together(t){let n=1;for(const[e,s]of t)n=Math.min(n,this._get_weight_to_constrain_interval(e,s));if(n<1)for(const[e,s]of t)s.start=n*s.start+(1-n)*e.start,s.end=n*s.end+(1-n)*e.end}_update_ranges_individually(t,n){const e=!!(null==n?void 0:n.panning),s=!!(null==n?void 0:n.scrolling);let a=!1;for(const[n,o]of t){if(!s){const t=this._get_weight_to_constrain_interval(n,o);t<1&&(o.start=t*o.start+(1-t)*n.start,o.end=t*o.end+(1-t)*n.end)}if(null!=n.bounds&&\"auto\"!=n.bounds){const[t,r]=n.bounds,l=Math.abs(o.end-o.start);n.is_reversed?(null!=t&&t>=o.end&&(a=!0,o.end=t,(e||s)&&(o.start=t+l)),null!=r&&r<=o.start&&(a=!0,o.start=r,(e||s)&&(o.end=r-l))):(null!=t&&t>=o.start&&(a=!0,o.start=t,(e||s)&&(o.end=t+l)),null!=r&&r<=o.end&&(a=!0,o.end=r,(e||s)&&(o.start=r-l)))}}if(!(s&&a&&(null==n?void 0:n.maintain_focus)))for(const[n,e]of t)n.have_updated_interactively=!0,n.start==e.start&&n.end==e.end||n.setv(e)}_get_weight_to_constrain_interval(t,n){const{min_interval:e}=t;let{max_interval:s}=t;if(null!=t.bounds&&\"auto\"!=t.bounds){const[n,e]=t.bounds;if(null!=n&&null!=e){const t=Math.abs(e-n);s=null!=s?Math.min(s,t):t}}let a=1;if(null!=e||null!=s){const o=Math.abs(t.end-t.start),r=Math.abs(n.end-n.start);null!=e&&e>0&&r<e&&(a=(o-e)/(o-r)),null!=s&&s>0&&r>s&&(a=(s-o)/(r-o)),a=Math.max(0,Math.min(1,a))}return a}}e.RangeManager=l,l.__name__=\"RangeManager\"},\n", " function _(t,i,s,e,n){e();const h=t(15);class a{constructor(t,i){this.parent=t,this.initial_state=i,this.changed=new h.Signal0(this.parent,\"state_changed\"),this.history=[],this.index=-1}_do_state_change(t){const i=null!=this.history[t]?this.history[t].state:this.initial_state;null!=i.range&&this.parent.update_range(i.range),null!=i.selection&&this.parent.update_selection(i.selection)}push(t,i){const{history:s,index:e}=this,n=null!=s[e]?s[e].state:{},h=Object.assign(Object.assign(Object.assign({},this.initial_state),n),i);this.history=this.history.slice(0,this.index+1),this.history.push({type:t,state:h}),this.index=this.history.length-1,this.changed.emit()}clear(){this.history=[],this.index=-1,this.changed.emit()}undo(){this.can_undo&&(this.index-=1,this._do_state_change(this.index),this.changed.emit())}redo(){this.can_redo&&(this.index+=1,this._do_state_change(this.index),this.changed.emit())}get can_undo(){return this.index>=0}get can_redo(){return this.index<this.history.length-1}}s.StateManager=a,a.__name__=\"StateManager\"},\n", " function _(t,e,s,o,i){o();const a=t(19),n=t(15),p=t(43),l=t(65),_=t(22),h=t(333),m=new n.Signal0({},\"gmaps_ready\");class d extends h.PlotView{initialize(){this.pause(),super.initialize(),this._tiles_loaded=!1,this.zoom_count=0;const{zoom:t,lat:e,lng:s}=this.model.map_options;if(this.initial_zoom=t,this.initial_lat=e,this.initial_lng=s,!this.model.api_key){const t=\"https://developers.google.com/maps/documentation/javascript/get-api-key\";a.logger.error(`api_key is required. See ${t} for more information on how to obtain your own.`)}if(\"undefined\"==typeof google||null==google.maps){if(void 0===window._bokeh_gmaps_callback){const{api_key:t,api_version:e}=this.model;!function(t,e){window._bokeh_gmaps_callback=()=>m.emit();const s=encodeURIComponent,o=document.createElement(\"script\");o.type=\"text/javascript\",o.src=`https://maps.googleapis.com/maps/api/js?v=${s(e)}&key=${s(t)}&callback=_bokeh_gmaps_callback`,document.body.appendChild(o)}(t,e)}m.connect((()=>this.request_paint(\"everything\")))}this.unpause()}remove(){p.remove(this.map_el),super.remove()}update_range(t,e){var s,o;if(null==t)this.map.setCenter({lat:this.initial_lat,lng:this.initial_lng}),this.map.setOptions({zoom:this.initial_zoom}),super.update_range(null,e);else if(null!=t.sdx||null!=t.sdy)this.map.panBy(null!==(s=t.sdx)&&void 0!==s?s:0,null!==(o=t.sdy)&&void 0!==o?o:0),super.update_range(t,e);else if(null!=t.factor){if(10!==this.zoom_count)return void(this.zoom_count+=1);this.zoom_count=0,this.pause(),super.update_range(t,e);const s=t.factor<0?-1:1,o=this.map.getZoom(),i=o+s;if(i>=2){this.map.setZoom(i);const[t,e,,]=this._get_projected_bounds();e-t<0&&this.map.setZoom(o)}this.unpause()}this._set_bokeh_ranges()}_build_map(){const{maps:t}=google;this.map_types={satellite:t.MapTypeId.SATELLITE,terrain:t.MapTypeId.TERRAIN,roadmap:t.MapTypeId.ROADMAP,hybrid:t.MapTypeId.HYBRID};const e=this.model.map_options,s={center:new t.LatLng(e.lat,e.lng),zoom:e.zoom,disableDefaultUI:!0,mapTypeId:this.map_types[e.map_type],scaleControl:e.scale_control,tilt:e.tilt};null!=e.styles&&(s.styles=JSON.parse(e.styles)),this.map_el=p.div({style:{position:\"absolute\"}}),this.canvas_view.add_underlay(this.map_el),this.map=new t.Map(this.map_el,s),t.event.addListener(this.map,\"idle\",(()=>this._set_bokeh_ranges())),t.event.addListener(this.map,\"bounds_changed\",(()=>this._set_bokeh_ranges())),t.event.addListenerOnce(this.map,\"tilesloaded\",(()=>this._render_finished())),this.connect(this.model.properties.map_options.change,(()=>this._update_options())),this.connect(this.model.map_options.properties.styles.change,(()=>this._update_styles())),this.connect(this.model.map_options.properties.lat.change,(()=>this._update_center(\"lat\"))),this.connect(this.model.map_options.properties.lng.change,(()=>this._update_center(\"lng\"))),this.connect(this.model.map_options.properties.zoom.change,(()=>this._update_zoom())),this.connect(this.model.map_options.properties.map_type.change,(()=>this._update_map_type())),this.connect(this.model.map_options.properties.scale_control.change,(()=>this._update_scale_control())),this.connect(this.model.map_options.properties.tilt.change,(()=>this._update_tilt()))}_render_finished(){this._tiles_loaded=!0,this.notify_finished()}has_finished(){return super.has_finished()&&!0===this._tiles_loaded}_get_latlon_bounds(){const t=this.map.getBounds(),e=t.getNorthEast(),s=t.getSouthWest();return[s.lng(),e.lng(),s.lat(),e.lat()]}_get_projected_bounds(){const[t,e,s,o]=this._get_latlon_bounds(),[i,a]=l.wgs84_mercator.compute(t,s),[n,p]=l.wgs84_mercator.compute(e,o);return[i,n,a,p]}_set_bokeh_ranges(){const[t,e,s,o]=this._get_projected_bounds();this.frame.x_range.setv({start:t,end:e}),this.frame.y_range.setv({start:s,end:o})}_update_center(t){const e=this.map.getCenter().toJSON();e[t]=this.model.map_options[t],this.map.setCenter(e),this._set_bokeh_ranges()}_update_map_type(){this.map.setOptions({mapTypeId:this.map_types[this.model.map_options.map_type]})}_update_scale_control(){this.map.setOptions({scaleControl:this.model.map_options.scale_control})}_update_tilt(){this.map.setOptions({tilt:this.model.map_options.tilt})}_update_options(){this._update_styles(),this._update_center(\"lat\"),this._update_center(\"lng\"),this._update_zoom(),this._update_map_type()}_update_styles(){this.map.setOptions({styles:JSON.parse(this.model.map_options.styles)})}_update_zoom(){this.map.setOptions({zoom:this.model.map_options.zoom}),this._set_bokeh_ranges()}_map_hook(t,e){if(null==this.map&&\"undefined\"!=typeof google&&null!=google.maps&&this._build_map(),null!=this.map_el){const[t,s,o,i]=e;this.map_el.style.top=`${s}px`,this.map_el.style.left=`${t}px`,this.map_el.style.width=`${o}px`,this.map_el.style.height=`${i}px`}}_paint_empty(t,e){const s=this.layout.bbox.width,o=this.layout.bbox.height,[i,a,n,p]=e;t.clearRect(0,0,s,o),t.beginPath(),t.moveTo(0,0),t.lineTo(0,o),t.lineTo(s,o),t.lineTo(s,0),t.lineTo(0,0),t.moveTo(i,a),t.lineTo(i+n,a),t.lineTo(i+n,a+p),t.lineTo(i,a+p),t.lineTo(i,a),t.closePath(),null!=this.model.border_fill_color&&(t.fillStyle=_.color2css(this.model.border_fill_color),t.fill())}}s.GMapPlotView=d,d.__name__=\"GMapPlotView\"},\n", " function _(t,_,n,o,r){o();t(1).__exportStar(t(169),n)},\n", " function _(e,r,d,n,R){n(),R(\"GlyphRenderer\",e(61).GlyphRenderer),R(\"GraphRenderer\",e(123).GraphRenderer),R(\"GuideRenderer\",e(164).GuideRenderer),R(\"Renderer\",e(41).Renderer)},\n", " function _(e,t,n,o,c){o();e(1).__exportStar(e(129),n),c(\"Selection\",e(59).Selection)},\n", " function _(a,e,S,o,r){o(),r(\"ServerSentDataSource\",a(342).ServerSentDataSource),r(\"AjaxDataSource\",a(344).AjaxDataSource),r(\"ColumnDataSource\",a(130).ColumnDataSource),r(\"ColumnarDataSource\",a(57).ColumnarDataSource),r(\"CDSView\",a(120).CDSView),r(\"DataSource\",a(58).DataSource),r(\"GeoJSONDataSource\",a(345).GeoJSONDataSource),r(\"WebDataSource\",a(343).WebDataSource)},\n", " function _(e,t,i,a,s){a();const n=e(343);class r extends n.WebDataSource{constructor(e){super(e),this.initialized=!1}setup(){if(!this.initialized){this.initialized=!0;new EventSource(this.data_url).onmessage=e=>{var t;this.load_data(JSON.parse(e.data),this.mode,null!==(t=this.max_size)&&void 0!==t?t:void 0)}}}}i.ServerSentDataSource=r,r.__name__=\"ServerSentDataSource\"},\n", " function _(t,e,a,n,s){n();const r=t(130),i=t(20);class l extends r.ColumnDataSource{constructor(t){super(t)}get_column(t){const e=this.data[t];return null!=e?e:[]}get_length(){var t;return null!==(t=super.get_length())&&void 0!==t?t:0}initialize(){super.initialize(),this.setup()}load_data(t,e,a){const{adapter:n}=this;let s;switch(s=null!=n?n.execute(this,{response:t}):t,e){case\"replace\":this.data=s;break;case\"append\":{const t=this.data;for(const e of this.columns()){const n=Array.from(t[e]),r=Array.from(s[e]),i=n.concat(r);s[e]=null!=a?i.slice(-a):i}this.data=s;break}}}static init_WebDataSource(){this.define((({Any:t,Int:e,String:a,Nullable:n})=>({max_size:[n(e),null],mode:[i.UpdateMode,\"replace\"],adapter:[n(t),null],data_url:[a]})))}}a.WebDataSource=l,l.__name__=\"WebDataSource\",l.init_WebDataSource()},\n", " function _(t,e,i,s,a){s();const n=t(343),r=t(20),o=t(19),l=t(13);class d extends n.WebDataSource{constructor(t){super(t),this.interval=null,this.initialized=!1}static init_AjaxDataSource(){this.define((({Boolean:t,Int:e,String:i,Dict:s,Nullable:a})=>({polling_interval:[a(e),null],content_type:[i,\"application/json\"],http_headers:[s(i),{}],method:[r.HTTPMethod,\"POST\"],if_modified:[t,!1]})))}destroy(){null!=this.interval&&clearInterval(this.interval),super.destroy()}setup(){if(!this.initialized&&(this.initialized=!0,this.get_data(this.mode),null!=this.polling_interval)){const t=()=>this.get_data(this.mode,this.max_size,this.if_modified);this.interval=setInterval(t,this.polling_interval)}}get_data(t,e=null,i=!1){const s=this.prepare_request();s.addEventListener(\"load\",(()=>this.do_load(s,t,null!=e?e:void 0))),s.addEventListener(\"error\",(()=>this.do_error(s))),s.send()}prepare_request(){const t=new XMLHttpRequest;t.open(this.method,this.data_url,!0),t.withCredentials=!1,t.setRequestHeader(\"Content-Type\",this.content_type);const e=this.http_headers;for(const[i,s]of l.entries(e))t.setRequestHeader(i,s);return t}do_load(t,e,i){if(200===t.status){const s=JSON.parse(t.responseText);this.load_data(s,e,i)}}do_error(t){o.logger.error(`Failed to fetch JSON from ${this.data_url} with code ${t.status}`)}}i.AjaxDataSource=d,d.__name__=\"AjaxDataSource\",d.init_AjaxDataSource()},\n", " function _(e,t,o,r,n){r();const s=e(57),a=e(19),i=e(9),l=e(13);function c(e){return null!=e?e:NaN}const{hasOwnProperty:_}=Object.prototype;class g extends s.ColumnarDataSource{constructor(e){super(e)}static init_GeoJSONDataSource(){this.define((({String:e})=>({geojson:[e]}))),this.internal((({Dict:e,Arrayable:t})=>({data:[e(t),{}]})))}initialize(){super.initialize(),this._update_data()}connect_signals(){super.connect_signals(),this.connect(this.properties.geojson.change,(()=>this._update_data()))}_update_data(){this.data=this.geojson_to_column_data()}_get_new_list_array(e){return i.range(0,e).map((e=>[]))}_get_new_nan_array(e){return i.range(0,e).map((e=>NaN))}_add_properties(e,t,o,r){var n;const s=null!==(n=e.properties)&&void 0!==n?n:{};for(const[e,n]of l.entries(s))_.call(t,e)||(t[e]=this._get_new_nan_array(r)),t[e][o]=c(n)}_add_geometry(e,t,o){function r(e,t){return e.concat([[NaN,NaN,NaN]]).concat(t)}switch(e.type){case\"Point\":{const[r,n,s]=e.coordinates;t.x[o]=r,t.y[o]=n,t.z[o]=c(s);break}case\"LineString\":{const{coordinates:r}=e;for(let e=0;e<r.length;e++){const[n,s,a]=r[e];t.xs[o][e]=n,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"Polygon\":{e.coordinates.length>1&&a.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\");const r=e.coordinates[0];for(let e=0;e<r.length;e++){const[n,s,a]=r[e];t.xs[o][e]=n,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"MultiPoint\":a.logger.warn(\"MultiPoint not supported in Bokeh\");break;case\"MultiLineString\":{const n=e.coordinates.reduce(r);for(let e=0;e<n.length;e++){const[r,s,a]=n[e];t.xs[o][e]=r,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"MultiPolygon\":{const n=[];for(const t of e.coordinates)t.length>1&&a.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\"),n.push(t[0]);const s=n.reduce(r);for(let e=0;e<s.length;e++){const[r,n,a]=s[e];t.xs[o][e]=r,t.ys[o][e]=n,t.zs[o][e]=c(a)}break}default:throw new Error(`Invalid GeoJSON geometry type: ${e.type}`)}}geojson_to_column_data(){const e=JSON.parse(this.geojson);let t;switch(e.type){case\"GeometryCollection\":if(null==e.geometries)throw new Error(\"No geometries found in GeometryCollection\");if(0===e.geometries.length)throw new Error(\"geojson.geometries must have one or more items\");t=e.geometries;break;case\"FeatureCollection\":if(null==e.features)throw new Error(\"No features found in FeaturesCollection\");if(0==e.features.length)throw new Error(\"geojson.features must have one or more items\");t=e.features;break;default:throw new Error(\"Bokeh only supports type GeometryCollection and FeatureCollection at top level\")}let o=0;for(const e of t){const t=\"Feature\"===e.type?e.geometry:e;\"GeometryCollection\"==t.type?o+=t.geometries.length:o+=1}const r={x:this._get_new_nan_array(o),y:this._get_new_nan_array(o),z:this._get_new_nan_array(o),xs:this._get_new_list_array(o),ys:this._get_new_list_array(o),zs:this._get_new_list_array(o)};let n=0;for(const e of t){const t=\"Feature\"==e.type?e.geometry:e;if(\"GeometryCollection\"==t.type)for(const s of t.geometries)this._add_geometry(s,r,n),\"Feature\"===e.type&&this._add_properties(e,r,n,o),n+=1;else this._add_geometry(t,r,n),\"Feature\"===e.type&&this._add_properties(e,r,n,o),n+=1}return r}}o.GeoJSONDataSource=g,g.__name__=\"GeoJSONDataSource\",g.init_GeoJSONDataSource()},\n", " function _(e,r,T,o,S){o(),S(\"BBoxTileSource\",e(347).BBoxTileSource),S(\"MercatorTileSource\",e(348).MercatorTileSource),S(\"QUADKEYTileSource\",e(351).QUADKEYTileSource),S(\"TileRenderer\",e(352).TileRenderer),S(\"TileSource\",e(349).TileSource),S(\"TMSTileSource\",e(355).TMSTileSource),S(\"WMTSTileSource\",e(353).WMTSTileSource)},\n", " function _(e,t,r,i,o){i();const l=e(348);class n extends l.MercatorTileSource{constructor(e){super(e)}static init_BBoxTileSource(){this.define((({Boolean:e})=>({use_latlon:[e,!1]})))}get_image_url(e,t,r){const i=this.string_lookup_replace(this.url,this.extra_url_vars);let o,l,n,s;return this.use_latlon?[l,s,o,n]=this.get_tile_geographic_bounds(e,t,r):[l,s,o,n]=this.get_tile_meter_bounds(e,t,r),i.replace(\"{XMIN}\",l.toString()).replace(\"{YMIN}\",s.toString()).replace(\"{XMAX}\",o.toString()).replace(\"{YMAX}\",n.toString())}}r.BBoxTileSource=n,n.__name__=\"BBoxTileSource\",n.init_BBoxTileSource()},\n", " function _(t,e,i,_,s){_();const r=t(349),o=t(9),n=t(350);class l extends r.TileSource{constructor(t){super(t)}static init_MercatorTileSource(){this.define((({Boolean:t})=>({snap_to_zoom:[t,!1],wrap_around:[t,!0]}))),this.override({x_origin_offset:20037508.34,y_origin_offset:20037508.34,initial_resolution:156543.03392804097})}initialize(){super.initialize(),this._resolutions=o.range(this.min_zoom,this.max_zoom+1).map((t=>this.get_resolution(t)))}_computed_initial_resolution(){return null!=this.initial_resolution?this.initial_resolution:2*Math.PI*6378137/this.tile_size}is_valid_tile(t,e,i){return!(!this.wrap_around&&(t<0||t>=2**i))&&!(e<0||e>=2**i)}parent_by_tile_xyz(t,e,i){const _=this.tile_xyz_to_quadkey(t,e,i),s=_.substring(0,_.length-1);return this.quadkey_to_tile_xyz(s)}get_resolution(t){return this._computed_initial_resolution()/2**t}get_resolution_by_extent(t,e,i){return[(t[2]-t[0])/i,(t[3]-t[1])/e]}get_level_by_extent(t,e,i){const _=(t[2]-t[0])/i,s=(t[3]-t[1])/e,r=Math.max(_,s);let o=0;for(const t of this._resolutions){if(r>t){if(0==o)return 0;if(o>0)return o-1}o+=1}return o-1}get_closest_level_by_extent(t,e,i){const _=(t[2]-t[0])/i,s=(t[3]-t[1])/e,r=Math.max(_,s),o=this._resolutions.reduce((function(t,e){return Math.abs(e-r)<Math.abs(t-r)?e:t}));return this._resolutions.indexOf(o)}snap_to_zoom_level(t,e,i,_){const[s,r,o,n]=t,l=this._resolutions[_];let u=i*l,a=e*l;if(!this.snap_to_zoom){const t=(o-s)/u,e=(n-r)/a;t>e?(u=o-s,a*=t):(u*=e,a=n-r)}const h=(u-(o-s))/2,c=(a-(n-r))/2;return[s-h,r-c,o+h,n+c]}tms_to_wmts(t,e,i){return[t,2**i-1-e,i]}wmts_to_tms(t,e,i){return[t,2**i-1-e,i]}pixels_to_meters(t,e,i){const _=this.get_resolution(i);return[t*_-this.x_origin_offset,e*_-this.y_origin_offset]}meters_to_pixels(t,e,i){const _=this.get_resolution(i);return[(t+this.x_origin_offset)/_,(e+this.y_origin_offset)/_]}pixels_to_tile(t,e){let i=Math.ceil(t/this.tile_size);i=0===i?i:i-1;return[i,Math.max(Math.ceil(e/this.tile_size)-1,0)]}pixels_to_raster(t,e,i){return[t,(this.tile_size<<i)-e]}meters_to_tile(t,e,i){const[_,s]=this.meters_to_pixels(t,e,i);return this.pixels_to_tile(_,s)}get_tile_meter_bounds(t,e,i){const[_,s]=this.pixels_to_meters(t*this.tile_size,e*this.tile_size,i),[r,o]=this.pixels_to_meters((t+1)*this.tile_size,(e+1)*this.tile_size,i);return[_,s,r,o]}get_tile_geographic_bounds(t,e,i){const _=this.get_tile_meter_bounds(t,e,i),[s,r,o,l]=n.meters_extent_to_geographic(_);return[s,r,o,l]}get_tiles_by_extent(t,e,i=1){const[_,s,r,o]=t;let[n,l]=this.meters_to_tile(_,s,e),[u,a]=this.meters_to_tile(r,o,e);n-=i,l-=i,u+=i,a+=i;const h=[];for(let t=a;t>=l;t--)for(let i=n;i<=u;i++)this.is_valid_tile(i,t,e)&&h.push([i,t,e,this.get_tile_meter_bounds(i,t,e)]);return this.sort_tiles_from_center(h,[n,l,u,a]),h}quadkey_to_tile_xyz(t){let e=0,i=0;const _=t.length;for(let s=_;s>0;s--){const r=1<<s-1;switch(t.charAt(_-s)){case\"0\":continue;case\"1\":e|=r;break;case\"2\":i|=r;break;case\"3\":e|=r,i|=r;break;default:throw new TypeError(`Invalid Quadkey: ${t}`)}}return[e,i,_]}tile_xyz_to_quadkey(t,e,i){let _=\"\";for(let s=i;s>0;s--){const i=1<<s-1;let r=0;0!=(t&i)&&(r+=1),0!=(e&i)&&(r+=2),_+=r.toString()}return _}children_by_tile_xyz(t,e,i){const _=this.tile_xyz_to_quadkey(t,e,i),s=[];for(let t=0;t<=3;t++){const[e,i,r]=this.quadkey_to_tile_xyz(_+t.toString()),o=this.get_tile_meter_bounds(e,i,r);s.push([e,i,r,o])}return s}get_closest_parent_by_tile_xyz(t,e,i){const _=this.calculate_world_x_by_tile_xyz(t,e,i);[t,e,i]=this.normalize_xyz(t,e,i);let s=this.tile_xyz_to_quadkey(t,e,i);for(;s.length>0;)if(s=s.substring(0,s.length-1),[t,e,i]=this.quadkey_to_tile_xyz(s),[t,e,i]=this.denormalize_xyz(t,e,i,_),this.tiles.has(this.tile_xyz_to_key(t,e,i)))return[t,e,i];return[0,0,0]}normalize_xyz(t,e,i){if(this.wrap_around){const _=2**i;return[(t%_+_)%_,e,i]}return[t,e,i]}denormalize_xyz(t,e,i,_){return[t+_*2**i,e,i]}denormalize_meters(t,e,i,_){return[t+2*_*Math.PI*6378137,e]}calculate_world_x_by_tile_xyz(t,e,i){return Math.floor(t/2**i)}}i.MercatorTileSource=l,l.__name__=\"MercatorTileSource\",l.init_MercatorTileSource()},\n", " function _(e,t,r,i,n){i();const l=e(53),s=e(13);class a extends l.Model{constructor(e){super(e)}static init_TileSource(){this.define((({Number:e,String:t,Dict:r,Nullable:i})=>({url:[t,\"\"],tile_size:[e,256],max_zoom:[e,30],min_zoom:[e,0],extra_url_vars:[r(t),{}],attribution:[t,\"\"],x_origin_offset:[e],y_origin_offset:[e],initial_resolution:[i(e),null]})))}initialize(){super.initialize(),this.tiles=new Map,this._normalize_case()}connect_signals(){super.connect_signals(),this.connect(this.change,(()=>this._clear_cache()))}string_lookup_replace(e,t){let r=e;for(const[e,i]of s.entries(t))r=r.replace(`{${e}}`,i);return r}_normalize_case(){const e=this.url.replace(\"{x}\",\"{X}\").replace(\"{y}\",\"{Y}\").replace(\"{z}\",\"{Z}\").replace(\"{q}\",\"{Q}\").replace(\"{xmin}\",\"{XMIN}\").replace(\"{ymin}\",\"{YMIN}\").replace(\"{xmax}\",\"{XMAX}\").replace(\"{ymax}\",\"{YMAX}\");this.url=e}_clear_cache(){this.tiles=new Map}tile_xyz_to_key(e,t,r){return`${e}:${t}:${r}`}key_to_tile_xyz(e){const[t,r,i]=e.split(\":\").map((e=>parseInt(e)));return[t,r,i]}sort_tiles_from_center(e,t){const[r,i,n,l]=t,s=(n-r)/2+r,a=(l-i)/2+i;e.sort((function(e,t){return Math.sqrt((s-e[0])**2+(a-e[1])**2)-Math.sqrt((s-t[0])**2+(a-t[1])**2)}))}get_image_url(e,t,r){return this.string_lookup_replace(this.url,this.extra_url_vars).replace(\"{X}\",e.toString()).replace(\"{Y}\",t.toString()).replace(\"{Z}\",r.toString())}}r.TileSource=a,a.__name__=\"TileSource\",a.init_TileSource()},\n", " function _(t,e,r,n,o){n();const c=t(65);function _(t,e){return c.wgs84_mercator.compute(t,e)}function g(t,e){return c.wgs84_mercator.invert(t,e)}r.geographic_to_meters=_,r.meters_to_geographic=g,r.geographic_extent_to_meters=function(t){const[e,r,n,o]=t,[c,g]=_(e,r),[i,u]=_(n,o);return[c,g,i,u]},r.meters_extent_to_geographic=function(t){const[e,r,n,o]=t,[c,_]=g(e,r),[i,u]=g(n,o);return[c,_,i,u]}},\n", " function _(e,t,r,s,_){s();const o=e(348);class c extends o.MercatorTileSource{constructor(e){super(e)}get_image_url(e,t,r){const s=this.string_lookup_replace(this.url,this.extra_url_vars),[_,o,c]=this.tms_to_wmts(e,t,r),i=this.tile_xyz_to_quadkey(_,o,c);return s.replace(\"{Q}\",i)}}r.QUADKEYTileSource=c,c.__name__=\"QUADKEYTileSource\"},\n", " function _(t,e,i,s,_){s();const n=t(1),a=t(349),h=t(353),r=t(41),o=t(156),l=t(43),d=t(296),m=t(9),c=t(8),p=n.__importStar(t(354));class g extends r.RendererView{initialize(){this._tiles=[],super.initialize()}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render())),this.connect(this.model.tile_source.change,(()=>this.request_render()))}styles(){return[...super.styles(),p.default]}get_extent(){return[this.x_range.start,this.y_range.start,this.x_range.end,this.y_range.end]}get map_plot(){return this.plot_model}get map_canvas(){return this.layer.ctx}get map_frame(){return this.plot_view.frame}get x_range(){return this.map_plot.x_range}get y_range(){return this.map_plot.y_range}_set_data(){this.extent=this.get_extent(),this._last_height=void 0,this._last_width=void 0}_update_attribution(){null!=this.attribution_el&&l.removeElement(this.attribution_el);const{attribution:t}=this.model.tile_source;if(c.isString(t)&&t.length>0){const{layout:e,frame:i}=this.plot_view,s=e.bbox.width-i.bbox.right,_=e.bbox.height-i.bbox.bottom,n=i.bbox.width;this.attribution_el=l.div({class:p.tile_attribution,style:{position:\"absolute\",right:`${s}px`,bottom:`${_}px`,\"max-width\":n-4+\"px\",padding:\"2px\",\"background-color\":\"rgba(255,255,255,0.5)\",\"font-size\":\"9px\",\"line-height\":\"1.05\",\"white-space\":\"nowrap\",overflow:\"hidden\",\"text-overflow\":\"ellipsis\"}}),this.plot_view.canvas_view.add_event(this.attribution_el),this.attribution_el.innerHTML=t,this.attribution_el.title=this.attribution_el.textContent.replace(/\\s*\\n\\s*/g,\" \")}}_map_data(){this.initial_extent=this.get_extent();const t=this.model.tile_source.get_level_by_extent(this.initial_extent,this.map_frame.bbox.height,this.map_frame.bbox.width),e=this.model.tile_source.snap_to_zoom_level(this.initial_extent,this.map_frame.bbox.height,this.map_frame.bbox.width,t);this.x_range.start=e[0],this.y_range.start=e[1],this.x_range.end=e[2],this.y_range.end=e[3],this.x_range instanceof o.Range1d&&(this.x_range.reset_start=e[0],this.x_range.reset_end=e[2]),this.y_range instanceof o.Range1d&&(this.y_range.reset_start=e[1],this.y_range.reset_end=e[3]),this._update_attribution()}_create_tile(t,e,i,s,_=!1){const[n,a,h]=this.model.tile_source.normalize_xyz(t,e,i),r={img:void 0,tile_coords:[t,e,i],normalized_coords:[n,a,h],quadkey:this.model.tile_source.tile_xyz_to_quadkey(t,e,i),cache_key:this.model.tile_source.tile_xyz_to_key(t,e,i),bounds:s,loaded:!1,finished:!1,x_coord:s[0],y_coord:s[3]},o=this.model.tile_source.get_image_url(n,a,h);new d.ImageLoader(o,{loaded:t=>{Object.assign(r,{img:t,loaded:!0}),_?(r.finished=!0,this.notify_finished()):this.request_render()},failed(){r.finished=!0}}),this.model.tile_source.tiles.set(r.cache_key,r),this._tiles.push(r)}_enforce_aspect_ratio(){if(this._last_height!==this.map_frame.bbox.height||this._last_width!==this.map_frame.bbox.width){const t=this.get_extent(),e=this.model.tile_source.get_level_by_extent(t,this.map_frame.bbox.height,this.map_frame.bbox.width),i=this.model.tile_source.snap_to_zoom_level(t,this.map_frame.bbox.height,this.map_frame.bbox.width,e);this.x_range.setv({start:i[0],end:i[2]}),this.y_range.setv({start:i[1],end:i[3]}),this.extent=i,this._last_height=this.map_frame.bbox.height,this._last_width=this.map_frame.bbox.width}}has_finished(){if(!super.has_finished())return!1;if(0===this._tiles.length)return!1;for(const t of this._tiles)if(!t.finished)return!1;return!0}_render(){null==this.map_initialized&&(this._set_data(),this._map_data(),this.map_initialized=!0),this._enforce_aspect_ratio(),this._update(),null!=this.prefetch_timer&&clearTimeout(this.prefetch_timer),this.prefetch_timer=setTimeout(this._prefetch_tiles.bind(this),500),this.has_finished()&&this.notify_finished()}_draw_tile(t){const e=this.model.tile_source.tiles.get(t);if(null!=e&&e.loaded){const[[t],[i]]=this.coordinates.map_to_screen([e.bounds[0]],[e.bounds[3]]),[[s],[_]]=this.coordinates.map_to_screen([e.bounds[2]],[e.bounds[1]]),n=s-t,a=_-i,h=t,r=i,o=this.map_canvas.getImageSmoothingEnabled();this.map_canvas.setImageSmoothingEnabled(this.model.smoothing),this.map_canvas.drawImage(e.img,h,r,n,a),this.map_canvas.setImageSmoothingEnabled(o),e.finished=!0}}_set_rect(){const t=this.plot_model.outline_line_width,e=this.map_frame.bbox.left+t/2,i=this.map_frame.bbox.top+t/2,s=this.map_frame.bbox.width-t,_=this.map_frame.bbox.height-t;this.map_canvas.rect(e,i,s,_),this.map_canvas.clip()}_render_tiles(t){this.map_canvas.save(),this._set_rect(),this.map_canvas.globalAlpha=this.model.alpha;for(const e of t)this._draw_tile(e);this.map_canvas.restore()}_prefetch_tiles(){const{tile_source:t}=this.model,e=this.get_extent(),i=this.map_frame.bbox.height,s=this.map_frame.bbox.width,_=this.model.tile_source.get_level_by_extent(e,i,s),n=this.model.tile_source.get_tiles_by_extent(e,_);for(let e=0,i=Math.min(10,n.length);e<i;e++){const[i,s,_]=n[e],a=this.model.tile_source.children_by_tile_xyz(i,s,_);for(const e of a){const[i,s,_,n]=e;t.tiles.has(t.tile_xyz_to_key(i,s,_))||this._create_tile(i,s,_,n,!0)}}}_fetch_tiles(t){for(const e of t){const[t,i,s,_]=e;this._create_tile(t,i,s,_)}}_update(){const{tile_source:t}=this.model,{min_zoom:e}=t,{max_zoom:i}=t;let s=this.get_extent();const _=this.extent[2]-this.extent[0]<s[2]-s[0],n=this.map_frame.bbox.height,a=this.map_frame.bbox.width;let h=t.get_level_by_extent(s,n,a),r=!1;h<e?(s=this.extent,h=e,r=!0):h>i&&(s=this.extent,h=i,r=!0),r&&(this.x_range.setv({start:s[0],end:s[2]}),this.y_range.setv({start:s[1],end:s[3]})),this.extent=s;const o=t.get_tiles_by_extent(s,h),l=[],d=[],c=[],p=[];for(const e of o){const[i,s,n]=e,a=t.tile_xyz_to_key(i,s,n),h=t.tiles.get(a);if(null!=h&&h.loaded)d.push(a);else if(this.model.render_parents){const[e,a,h]=t.get_closest_parent_by_tile_xyz(i,s,n),r=t.tile_xyz_to_key(e,a,h),o=t.tiles.get(r);if(null!=o&&o.loaded&&!m.includes(c,r)&&c.push(r),_){const e=t.children_by_tile_xyz(i,s,n);for(const[i,s,_]of e){const e=t.tile_xyz_to_key(i,s,_);t.tiles.has(e)&&p.push(e)}}}null==h&&l.push(e)}this._render_tiles(c),this._render_tiles(p),this._render_tiles(d),null!=this.render_timer&&clearTimeout(this.render_timer),this.render_timer=setTimeout((()=>this._fetch_tiles(l)),65)}}i.TileRendererView=g,g.__name__=\"TileRendererView\";class u extends r.Renderer{constructor(t){super(t)}static init_TileRenderer(){this.prototype.default_view=g,this.define((({Boolean:t,Number:e,Ref:i})=>({alpha:[e,1],smoothing:[t,!0],tile_source:[i(a.TileSource),()=>new h.WMTSTileSource],render_parents:[t,!0]}))),this.override({level:\"image\"})}}i.TileRenderer=u,u.__name__=\"TileRenderer\",u.init_TileRenderer()},\n", " function _(t,e,r,o,s){o();const c=t(348);class i extends c.MercatorTileSource{constructor(t){super(t)}get_image_url(t,e,r){const o=this.string_lookup_replace(this.url,this.extra_url_vars),[s,c,i]=this.tms_to_wmts(t,e,r);return o.replace(\"{X}\",s.toString()).replace(\"{Y}\",c.toString()).replace(\"{Z}\",i.toString())}}r.WMTSTileSource=i,i.__name__=\"WMTSTileSource\"},\n", " function _(t,o,i,b,r){b(),i.root=\"bk-root\",i.tile_attribution=\"bk-tile-attribution\",i.default=\".bk-root .bk-tile-attribution a{color:black;}\"},\n", " function _(e,r,t,c,o){c();const i=e(348);class l extends i.MercatorTileSource{constructor(e){super(e)}get_image_url(e,r,t){return this.string_lookup_replace(this.url,this.extra_url_vars).replace(\"{X}\",e.toString()).replace(\"{Y}\",r.toString()).replace(\"{Z}\",t.toString())}}t.TMSTileSource=l,l.__name__=\"TMSTileSource\"},\n", " function _(e,t,u,a,r){a(),r(\"CanvasTexture\",e(357).CanvasTexture),r(\"ImageURLTexture\",e(359).ImageURLTexture),r(\"Texture\",e(358).Texture)},\n", " function _(t,e,n,c,s){c();const a=t(358),i=t(34);class r extends a.Texture{constructor(t){super(t)}static init_CanvasTexture(){this.define((({String:t})=>({code:[t]})))}get func(){const t=i.use_strict(this.code);return new Function(\"ctx\",\"color\",\"scale\",\"weight\",t)}get_pattern(t,e,n){const c=document.createElement(\"canvas\");c.width=e,c.height=e;const s=c.getContext(\"2d\");return this.func.call(this,s,t,e,n),c}}n.CanvasTexture=r,r.__name__=\"CanvasTexture\",r.init_CanvasTexture()},\n", " function _(e,t,i,n,r){n();const s=e(53),u=e(20);class o extends s.Model{constructor(e){super(e)}static init_Texture(){this.define((()=>({repetition:[u.TextureRepetition,\"repeat\"]})))}}i.Texture=o,o.__name__=\"Texture\",o.init_Texture()},\n", " function _(e,t,i,r,n){r();const a=e(358),s=e(296);class u extends a.Texture{constructor(e){super(e)}static init_ImageURLTexture(){this.define((({String:e})=>({url:[e]})))}initialize(){super.initialize(),this._loader=new s.ImageLoader(this.url)}get_pattern(e,t,i){const{_loader:r}=this;return this._loader.finished?r.image:r.promise}}i.ImageURLTexture=u,u.__name__=\"ImageURLTexture\",u.init_ImageURLTexture()},\n", " function _(o,l,T,e,t){e(),t(\"ActionTool\",o(251).ActionTool),t(\"CustomAction\",o(361).CustomAction),t(\"HelpTool\",o(252).HelpTool),t(\"RedoTool\",o(362).RedoTool),t(\"ResetTool\",o(363).ResetTool),t(\"SaveTool\",o(364).SaveTool),t(\"UndoTool\",o(365).UndoTool),t(\"ZoomInTool\",o(366).ZoomInTool),t(\"ZoomOutTool\",o(369).ZoomOutTool),t(\"ButtonTool\",o(238).ButtonTool),t(\"EditTool\",o(370).EditTool),t(\"BoxEditTool\",o(371).BoxEditTool),t(\"FreehandDrawTool\",o(372).FreehandDrawTool),t(\"PointDrawTool\",o(373).PointDrawTool),t(\"PolyDrawTool\",o(374).PolyDrawTool),t(\"PolyTool\",o(375).PolyTool),t(\"PolyEditTool\",o(376).PolyEditTool),t(\"BoxSelectTool\",o(377).BoxSelectTool),t(\"BoxZoomTool\",o(379).BoxZoomTool),t(\"GestureTool\",o(237).GestureTool),t(\"LassoSelectTool\",o(380).LassoSelectTool),t(\"LineEditTool\",o(382).LineEditTool),t(\"PanTool\",o(384).PanTool),t(\"PolySelectTool\",o(381).PolySelectTool),t(\"RangeTool\",o(385).RangeTool),t(\"SelectTool\",o(378).SelectTool),t(\"TapTool\",o(386).TapTool),t(\"WheelPanTool\",o(387).WheelPanTool),t(\"WheelZoomTool\",o(388).WheelZoomTool),t(\"CrosshairTool\",o(389).CrosshairTool),t(\"CustomJSHover\",o(390).CustomJSHover),t(\"HoverTool\",o(391).HoverTool),t(\"InspectTool\",o(247).InspectTool),t(\"Tool\",o(236).Tool),t(\"ToolProxy\",o(392).ToolProxy),t(\"Toolbar\",o(235).Toolbar),t(\"ToolbarBase\",o(248).ToolbarBase),t(\"ProxyToolbar\",o(393).ProxyToolbar),t(\"ToolbarBox\",o(393).ToolbarBox)},\n", " function _(t,o,i,s,n){s();const e=t(251);class c extends e.ActionToolButtonView{css_classes(){return super.css_classes().concat(\"bk-toolbar-button-custom-action\")}}i.CustomActionButtonView=c,c.__name__=\"CustomActionButtonView\";class u extends e.ActionToolView{doit(){var t;null===(t=this.model.callback)||void 0===t||t.execute(this.model)}}i.CustomActionView=u,u.__name__=\"CustomActionView\";class l extends e.ActionTool{constructor(t){super(t),this.tool_name=\"Custom Action\",this.button_view=c}static init_CustomAction(){this.prototype.default_view=u,this.define((({Any:t,String:o,Nullable:i})=>({callback:[i(t)],icon:[o]}))),this.override({description:\"Perform a Custom Action\"})}}i.CustomAction=l,l.__name__=\"CustomAction\",l.init_CustomAction()},\n", " function _(o,e,t,i,s){i();const n=o(251),d=o(242);class l extends n.ActionToolView{connect_signals(){super.connect_signals(),this.connect(this.plot_view.state.changed,(()=>this.model.disabled=!this.plot_view.state.can_redo))}doit(){this.plot_view.state.redo()}}t.RedoToolView=l,l.__name__=\"RedoToolView\";class _ extends n.ActionTool{constructor(o){super(o),this.tool_name=\"Redo\",this.icon=d.tool_icon_redo}static init_RedoTool(){this.prototype.default_view=l,this.override({disabled:!0}),this.register_alias(\"redo\",(()=>new _))}}t.RedoTool=_,_.__name__=\"RedoTool\",_.init_RedoTool()},\n", " function _(e,t,o,s,i){s();const _=e(251),n=e(242);class l extends _.ActionToolView{doit(){this.plot_view.reset()}}o.ResetToolView=l,l.__name__=\"ResetToolView\";class c extends _.ActionTool{constructor(e){super(e),this.tool_name=\"Reset\",this.icon=n.tool_icon_reset}static init_ResetTool(){this.prototype.default_view=l,this.register_alias(\"reset\",(()=>new c))}}o.ResetTool=c,c.__name__=\"ResetTool\",c.init_ResetTool()},\n", " function _(o,e,t,a,i){a();const n=o(251),s=o(242);class c extends n.ActionToolView{async copy(){const o=await this.plot_view.to_blob(),e=new ClipboardItem({[o.type]:o});await navigator.clipboard.write([e])}async save(o){const e=await this.plot_view.to_blob(),t=document.createElement(\"a\");t.href=URL.createObjectURL(e),t.download=o,t.target=\"_blank\",t.dispatchEvent(new MouseEvent(\"click\"))}doit(o=\"save\"){switch(o){case\"save\":this.save(\"bokeh_plot\");break;case\"copy\":this.copy()}}}t.SaveToolView=c,c.__name__=\"SaveToolView\";class l extends n.ActionTool{constructor(o){super(o),this.tool_name=\"Save\",this.icon=s.tool_icon_save}static init_SaveTool(){this.prototype.default_view=c,this.register_alias(\"save\",(()=>new l))}get menu(){return[{icon:\"bk-tool-icon-copy-to-clipboard\",tooltip:\"Copy image to clipboard\",if:()=>\"undefined\"!=typeof ClipboardItem,handler:()=>{this.do.emit(\"copy\")}}]}}t.SaveTool=l,l.__name__=\"SaveTool\",l.init_SaveTool()},\n", " function _(o,t,n,i,e){i();const s=o(251),d=o(242);class l extends s.ActionToolView{connect_signals(){super.connect_signals(),this.connect(this.plot_view.state.changed,(()=>this.model.disabled=!this.plot_view.state.can_undo))}doit(){this.plot_view.state.undo()}}n.UndoToolView=l,l.__name__=\"UndoToolView\";class _ extends s.ActionTool{constructor(o){super(o),this.tool_name=\"Undo\",this.icon=d.tool_icon_undo}static init_UndoTool(){this.prototype.default_view=l,this.override({disabled:!0}),this.register_alias(\"undo\",(()=>new _))}}n.UndoTool=_,_.__name__=\"UndoTool\",_.init_UndoTool()},\n", " function _(o,i,n,s,e){s();const t=o(367),_=o(242);class m extends t.ZoomBaseToolView{}n.ZoomInToolView=m,m.__name__=\"ZoomInToolView\";class l extends t.ZoomBaseTool{constructor(o){super(o),this.sign=1,this.tool_name=\"Zoom In\",this.icon=_.tool_icon_zoom_in}static init_ZoomInTool(){this.prototype.default_view=m,this.register_alias(\"zoom_in\",(()=>new l({dimensions:\"both\"}))),this.register_alias(\"xzoom_in\",(()=>new l({dimensions:\"width\"}))),this.register_alias(\"yzoom_in\",(()=>new l({dimensions:\"height\"})))}}n.ZoomInTool=l,l.__name__=\"ZoomInTool\",l.init_ZoomInTool()},\n", " function _(o,t,e,i,s){i();const n=o(251),l=o(20),a=o(368);class _ extends n.ActionToolView{doit(){var o;const t=this.plot_view.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,s=\"height\"==e||\"both\"==e,n=a.scale_range(t,this.model.sign*this.model.factor,i,s);this.plot_view.state.push(\"zoom_out\",{range:n}),this.plot_view.update_range(n,{scrolling:!0}),null===(o=this.model.document)||void 0===o||o.interactive_start(this.plot_model)}}e.ZoomBaseToolView=_,_.__name__=\"ZoomBaseToolView\";class m extends n.ActionTool{constructor(o){super(o)}static init_ZoomBaseTool(){this.define((({Percent:o})=>({factor:[o,.1],dimensions:[l.Dimensions,\"both\"]})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}e.ZoomBaseTool=m,m.__name__=\"ZoomBaseTool\",m.init_ZoomBaseTool()},\n", " function _(n,t,o,r,s){r();const c=n(10);function e(n,t,o){const[r,s]=[n.start,n.end],c=null!=o?o:(s+r)/2;return[r-(r-c)*t,s-(s-c)*t]}function a(n,[t,o]){const r=new Map;for(const[s,c]of n){const[n,e]=c.r_invert(t,o);r.set(s,{start:n,end:e})}return r}o.scale_highlow=e,o.get_info=a,o.scale_range=function(n,t,o=!0,r=!0,s){t=c.clamp(t,-.9,.9);const l=o?t:0,[u,i]=e(n.bbox.h_range,l,null!=s?s.x:void 0),_=a(n.x_scales,[u,i]),f=r?t:0,[g,x]=e(n.bbox.v_range,f,null!=s?s.y:void 0);return{xrs:_,yrs:a(n.y_scales,[g,x]),factor:t}}},\n", " function _(o,t,i,s,e){s();const n=o(367),_=o(242);class m extends n.ZoomBaseToolView{}i.ZoomOutToolView=m,m.__name__=\"ZoomOutToolView\";class l extends n.ZoomBaseTool{constructor(o){super(o),this.sign=-1,this.tool_name=\"Zoom Out\",this.icon=_.tool_icon_zoom_out}static init_ZoomOutTool(){this.prototype.default_view=m,this.register_alias(\"zoom_out\",(()=>new l({dimensions:\"both\"}))),this.register_alias(\"xzoom_out\",(()=>new l({dimensions:\"width\"}))),this.register_alias(\"yzoom_out\",(()=>new l({dimensions:\"height\"})))}}i.ZoomOutTool=l,l.__name__=\"ZoomOutTool\",l.init_ZoomOutTool()},\n", " function _(e,t,s,o,n){o();const i=e(9),r=e(8),c=e(11),a=e(61),_=e(237);class l extends _.GestureToolView{constructor(){super(...arguments),this._mouse_in_frame=!0}_select_mode(e){const{shiftKey:t,ctrlKey:s}=e;return t||s?t&&!s?\"append\":!t&&s?\"intersect\":t&&s?\"subtract\":void c.unreachable():\"replace\"}_move_enter(e){this._mouse_in_frame=!0}_move_exit(e){this._mouse_in_frame=!1}_map_drag(e,t,s){if(!this.plot_view.frame.bbox.contains(e,t))return null;const o=this.plot_view.renderer_view(s);if(null==o)return null;return[o.coordinates.x_scale.invert(e),o.coordinates.y_scale.invert(t)]}_delete_selected(e){const t=e.data_source,s=t.selected.indices;s.sort();for(const e of t.columns()){const o=t.get_array(e);for(let e=0;e<s.length;e++){const t=s[e];o.splice(t-e,1)}}this._emit_cds_changes(t)}_pop_glyphs(e,t){const s=e.columns();if(t&&s.length)for(const o of s){let s=e.get_array(o);const n=s.length-t+1;n<1||(r.isArray(s)||(s=Array.from(s),e.data[o]=s),s.splice(0,n))}}_emit_cds_changes(e,t=!0,s=!0,o=!0){s&&e.selection_manager.clear(),t&&e.change.emit(),o&&(e.data=e.data,e.properties.data.change.emit())}_drag_points(e,t,s=\"both\"){if(null==this._basepoint)return;const[o,n]=this._basepoint;for(const i of t){const t=this._map_drag(o,n,i),r=this._map_drag(e.sx,e.sy,i);if(null==r||null==t)continue;const[c,a]=r,[_,l]=t,[d,u]=[c-_,a-l],h=i.glyph,m=i.data_source,[p,f]=[h.x.field,h.y.field];for(const e of m.selected.indices)!p||\"width\"!=s&&\"both\"!=s||(m.data[p][e]+=d),!f||\"height\"!=s&&\"both\"!=s||(m.data[f][e]+=u);m.change.emit()}this._basepoint=[e.sx,e.sy]}_pad_empty_columns(e,t){for(const s of e.columns())i.includes(t,s)||e.get_array(s).push(this.model.empty_value)}_select_event(e,t,s){const o=this.plot_view.frame,{sx:n,sy:i}=e;if(!o.bbox.contains(n,i))return[];const r={type:\"point\",sx:n,sy:i},c=[];for(const e of s){const s=e.get_selection_manager(),o=e.data_source,n=this.plot_view.renderer_view(e);if(null!=n){s.select([n],r,!0,t)&&c.push(e),o.properties.selected.change.emit()}}return c}}s.EditToolView=l,l.__name__=\"EditToolView\";class d extends _.GestureTool{constructor(e){super(e)}static init_EditTool(){this.define((({Unknown:e,String:t,Array:s,Ref:o,Nullable:n})=>({custom_icon:[n(t),null],empty_value:[e],renderers:[s(o(a.GlyphRenderer)),[]]})))}get computed_icon(){var e;return null!==(e=this.custom_icon)&&void 0!==e?e:this.icon}}s.EditTool=d,d.__name__=\"EditTool\",d.init_EditTool()},\n", " function _(e,t,s,i,_){i();const o=e(43),n=e(20),a=e(370),d=e(242);class l extends a.EditToolView{_tap(e){null==this._draw_basepoint&&null==this._basepoint&&this._select_event(e,this._select_mode(e),this.model.renderers)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)if(e.keyCode===o.Keys.Backspace)this._delete_selected(t);else if(e.keyCode==o.Keys.Esc){t.data_source.selection_manager.clear()}}_set_extent([e,t],[s,i],_,o=!1){const n=this.model.renderers[0],a=this.plot_view.renderer_view(n);if(null==a)return;const d=n.glyph,l=n.data_source,[r,h]=a.coordinates.x_scale.r_invert(e,t),[p,u]=a.coordinates.y_scale.r_invert(s,i),[c,m]=[(r+h)/2,(p+u)/2],[f,b]=[h-r,u-p],[x,y]=[d.x.field,d.y.field],[w,v]=[d.width.field,d.height.field];if(_)this._pop_glyphs(l,this.model.num_objects),x&&l.get_array(x).push(c),y&&l.get_array(y).push(m),w&&l.get_array(w).push(f),v&&l.get_array(v).push(b),this._pad_empty_columns(l,[x,y,w,v]);else{const e=l.data[x].length-1;x&&(l.data[x][e]=c),y&&(l.data[y][e]=m),w&&(l.data[w][e]=f),v&&(l.data[v][e]=b)}this._emit_cds_changes(l,!0,!1,o)}_update_box(e,t=!1,s=!1){if(null==this._draw_basepoint)return;const i=[e.sx,e.sy],_=this.plot_view.frame,o=this.model.dimensions,n=this.model._get_dim_limits(this._draw_basepoint,i,_,o);if(null!=n){const[e,i]=n;this._set_extent(e,i,t,s)}}_doubletap(e){this.model.active&&(null!=this._draw_basepoint?(this._update_box(e,!1,!0),this._draw_basepoint=null):(this._draw_basepoint=[e.sx,e.sy],this._select_event(e,\"append\",this.model.renderers),this._update_box(e,!0,!1)))}_move(e){this._update_box(e,!1,!1)}_pan_start(e){if(e.shiftKey){if(null!=this._draw_basepoint)return;this._draw_basepoint=[e.sx,e.sy],this._update_box(e,!0,!1)}else{if(null!=this._basepoint)return;this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy]}}_pan(e,t=!1,s=!1){if(e.shiftKey){if(null==this._draw_basepoint)return;this._update_box(e,t,s)}else{if(null==this._basepoint)return;this._drag_points(e,this.model.renderers)}}_pan_end(e){if(this._pan(e,!1,!0),e.shiftKey)this._draw_basepoint=null;else{this._basepoint=null;for(const e of this.model.renderers)this._emit_cds_changes(e.data_source,!1,!0,!0)}}}s.BoxEditToolView=l,l.__name__=\"BoxEditToolView\";class r extends a.EditTool{constructor(e){super(e),this.tool_name=\"Box Edit Tool\",this.icon=d.tool_icon_box_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=1}static init_BoxEditTool(){this.prototype.default_view=l,this.define((({Int:e})=>({dimensions:[n.Dimensions,\"both\"],num_objects:[e,0]})))}}s.BoxEditTool=r,r.__name__=\"BoxEditTool\",r.init_BoxEditTool()},\n", " function _(e,t,a,s,r){s();const _=e(43),i=e(8),o=e(370),d=e(242);class n extends o.EditToolView{_draw(e,t,a=!1){if(!this.model.active)return;const s=this.model.renderers[0],r=this._map_drag(e.sx,e.sy,s);if(null==r)return;const[_,o]=r,d=s.data_source,n=s.glyph,[h,l]=[n.xs.field,n.ys.field];if(\"new\"==t)this._pop_glyphs(d,this.model.num_objects),h&&d.get_array(h).push([_]),l&&d.get_array(l).push([o]),this._pad_empty_columns(d,[h,l]);else if(\"add\"==t){if(h){const e=d.data[h].length-1;let t=d.get_array(h)[e];i.isArray(t)||(t=Array.from(t),d.data[h][e]=t),t.push(_)}if(l){const e=d.data[l].length-1;let t=d.get_array(l)[e];i.isArray(t)||(t=Array.from(t),d.data[l][e]=t),t.push(o)}}this._emit_cds_changes(d,!0,!0,a)}_pan_start(e){this._draw(e,\"new\")}_pan(e){this._draw(e,\"add\")}_pan_end(e){this._draw(e,\"add\",!0)}_tap(e){this._select_event(e,this._select_mode(e),this.model.renderers)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===_.Keys.Esc?t.data_source.selection_manager.clear():e.keyCode===_.Keys.Backspace&&this._delete_selected(t)}}a.FreehandDrawToolView=n,n.__name__=\"FreehandDrawToolView\";class h extends o.EditTool{constructor(e){super(e),this.tool_name=\"Freehand Draw Tool\",this.icon=d.tool_icon_freehand_draw,this.event_type=[\"pan\",\"tap\"],this.default_order=3}static init_FreehandDrawTool(){this.prototype.default_view=n,this.define((({Int:e})=>({num_objects:[e,0]}))),this.register_alias(\"freehand_draw\",(()=>new h))}}a.FreehandDrawTool=h,h.__name__=\"FreehandDrawTool\",h.init_FreehandDrawTool()},\n", " function _(e,t,s,o,i){o();const a=e(43),n=e(370),_=e(242);class r extends n.EditToolView{_tap(e){if(this._select_event(e,this._select_mode(e),this.model.renderers).length||!this.model.add)return;const t=this.model.renderers[0],s=this._map_drag(e.sx,e.sy,t);if(null==s)return;const o=t.glyph,i=t.data_source,[a,n]=[o.x.field,o.y.field],[_,r]=s;this._pop_glyphs(i,this.model.num_objects),a&&i.get_array(a).push(_),n&&i.get_array(n).push(r),this._pad_empty_columns(i,[a,n]),i.change.emit(),i.data=i.data,i.properties.data.change.emit()}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===a.Keys.Backspace?this._delete_selected(t):e.keyCode==a.Keys.Esc&&t.data_source.selection_manager.clear()}_pan_start(e){this.model.drag&&(this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy])}_pan(e){this.model.drag&&null!=this._basepoint&&this._drag_points(e,this.model.renderers)}_pan_end(e){if(this.model.drag){this._pan(e);for(const e of this.model.renderers)this._emit_cds_changes(e.data_source,!1,!0,!0);this._basepoint=null}}}s.PointDrawToolView=r,r.__name__=\"PointDrawToolView\";class d extends n.EditTool{constructor(e){super(e),this.tool_name=\"Point Draw Tool\",this.icon=_.tool_icon_point_draw,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=2}static init_PointDrawTool(){this.prototype.default_view=r,this.define((({Boolean:e,Int:t})=>({add:[e,!0],drag:[e,!0],num_objects:[t,0]})))}}s.PointDrawTool=d,d.__name__=\"PointDrawTool\",d.init_PointDrawTool()},\n", " function _(e,t,s,i,a){i();const o=e(43),r=e(8),n=e(375),_=e(242);class d extends n.PolyToolView{constructor(){super(...arguments),this._drawing=!1,this._initialized=!1}_tap(e){this._drawing?this._draw(e,\"add\",!0):this._select_event(e,this._select_mode(e),this.model.renderers)}_draw(e,t,s=!1){const i=this.model.renderers[0],a=this._map_drag(e.sx,e.sy,i);if(this._initialized||this.activate(),null==a)return;const[o,n]=this._snap_to_vertex(e,...a),_=i.data_source,d=i.glyph,[l,h]=[d.xs.field,d.ys.field];if(\"new\"==t)this._pop_glyphs(_,this.model.num_objects),l&&_.get_array(l).push([o,o]),h&&_.get_array(h).push([n,n]),this._pad_empty_columns(_,[l,h]);else if(\"edit\"==t){if(l){const e=_.data[l][_.data[l].length-1];e[e.length-1]=o}if(h){const e=_.data[h][_.data[h].length-1];e[e.length-1]=n}}else if(\"add\"==t){if(l){const e=_.data[l].length-1;let t=_.get_array(l)[e];const s=t[t.length-1];t[t.length-1]=o,r.isArray(t)||(t=Array.from(t),_.data[l][e]=t),t.push(s)}if(h){const e=_.data[h].length-1;let t=_.get_array(h)[e];const s=t[t.length-1];t[t.length-1]=n,r.isArray(t)||(t=Array.from(t),_.data[h][e]=t),t.push(s)}}this._emit_cds_changes(_,!0,!1,s)}_show_vertices(){if(!this.model.active)return;const e=[],t=[];for(let s=0;s<this.model.renderers.length;s++){const i=this.model.renderers[s],a=i.data_source,o=i.glyph,[r,n]=[o.xs.field,o.ys.field];if(r)for(const t of a.get_array(r))e.push(...t);if(n)for(const e of a.get_array(n))t.push(...e);this._drawing&&s==this.model.renderers.length-1&&(e.splice(e.length-1,1),t.splice(t.length-1,1))}this._set_vertices(e,t)}_doubletap(e){this.model.active&&(this._drawing?(this._drawing=!1,this._draw(e,\"edit\",!0)):(this._drawing=!0,this._draw(e,\"new\",!0)))}_move(e){this._drawing&&this._draw(e,\"edit\")}_remove(){const e=this.model.renderers[0],t=e.data_source,s=e.glyph,[i,a]=[s.xs.field,s.ys.field];if(i){const e=t.data[i].length-1,s=t.get_array(i)[e];s.splice(s.length-1,1)}if(a){const e=t.data[a].length-1,s=t.get_array(a)[e];s.splice(s.length-1,1)}this._emit_cds_changes(t)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===o.Keys.Backspace?this._delete_selected(t):e.keyCode==o.Keys.Esc&&(this._drawing&&(this._remove(),this._drawing=!1),t.data_source.selection_manager.clear())}_pan_start(e){this.model.drag&&(this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy])}_pan(e){if(null==this._basepoint||!this.model.drag)return;const[t,s]=this._basepoint;for(const i of this.model.renderers){const a=this._map_drag(t,s,i),o=this._map_drag(e.sx,e.sy,i);if(null==o||null==a)continue;const r=i.data_source,n=i.glyph,[_,d]=[n.xs.field,n.ys.field];if(!_&&!d)continue;const[l,h]=o,[c,g]=a,[f,p]=[l-c,h-g];for(const e of r.selected.indices){let t,s,i;_&&(s=r.data[_][e]),d?(i=r.data[d][e],t=i.length):t=s.length;for(let e=0;e<t;e++)s&&(s[e]+=f),i&&(i[e]+=p)}r.change.emit()}this._basepoint=[e.sx,e.sy]}_pan_end(e){if(this.model.drag){this._pan(e);for(const e of this.model.renderers)this._emit_cds_changes(e.data_source);this._basepoint=null}}activate(){if(this.model.vertex_renderer&&this.model.active){if(this._show_vertices(),!this._initialized)for(const e of this.model.renderers){const t=e.data_source;t.connect(t.properties.data.change,(()=>this._show_vertices()))}this._initialized=!0}}deactivate(){this._drawing&&(this._remove(),this._drawing=!1),this.model.vertex_renderer&&this._hide_vertices()}}s.PolyDrawToolView=d,d.__name__=\"PolyDrawToolView\";class l extends n.PolyTool{constructor(e){super(e),this.tool_name=\"Polygon Draw Tool\",this.icon=_.tool_icon_poly_draw,this.event_type=[\"pan\",\"tap\",\"move\"],this.default_order=3}static init_PolyDrawTool(){this.prototype.default_view=d,this.define((({Boolean:e,Int:t})=>({drag:[e,!0],num_objects:[t,0]})))}}s.PolyDrawTool=l,l.__name__=\"PolyDrawTool\",l.init_PolyDrawTool()},\n", " function _(e,t,r,o,s){o();const i=e(8),l=e(370);class _ extends l.EditToolView{_set_vertices(e,t){const r=this.model.vertex_renderer.glyph,o=this.model.vertex_renderer.data_source,[s,l]=[r.x.field,r.y.field];s&&(i.isArray(e)?o.data[s]=e:r.x={value:e}),l&&(i.isArray(t)?o.data[l]=t:r.y={value:t}),this._emit_cds_changes(o,!0,!0,!1)}_hide_vertices(){this._set_vertices([],[])}_snap_to_vertex(e,t,r){if(this.model.vertex_renderer){const o=this._select_event(e,\"replace\",[this.model.vertex_renderer]),s=this.model.vertex_renderer.data_source,i=this.model.vertex_renderer.glyph,[l,_]=[i.x.field,i.y.field];if(o.length){const e=s.selected.indices[0];l&&(t=s.data[l][e]),_&&(r=s.data[_][e]),s.selection_manager.clear()}}return[t,r]}}r.PolyToolView=_,_.__name__=\"PolyToolView\";class d extends l.EditTool{constructor(e){super(e)}static init_PolyTool(){this.define((({AnyRef:e})=>({vertex_renderer:[e()]})))}}r.PolyTool=d,d.__name__=\"PolyTool\",d.init_PolyTool()},\n", " function _(e,t,s,r,i){r();const _=e(43),d=e(8),n=e(375),l=e(242);class a extends n.PolyToolView{constructor(){super(...arguments),this._drawing=!1,this._cur_index=null}_doubletap(e){if(!this.model.active)return;const t=this._map_drag(e.sx,e.sy,this.model.vertex_renderer);if(null==t)return;const[s,r]=t,i=this._select_event(e,\"replace\",[this.model.vertex_renderer]),_=this.model.vertex_renderer.data_source,d=this.model.vertex_renderer.glyph,[n,l]=[d.x.field,d.y.field];if(i.length&&null!=this._selected_renderer){const e=_.selected.indices[0];this._drawing?(this._drawing=!1,_.selection_manager.clear()):(_.selected.indices=[e+1],n&&_.get_array(n).splice(e+1,0,s),l&&_.get_array(l).splice(e+1,0,r),this._drawing=!0),_.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}else this._show_vertices(e)}_show_vertices(e){if(!this.model.active)return;const t=this.model.renderers[0],s=()=>this._update_vertices(t),r=null==t?void 0:t.data_source,i=this._select_event(e,\"replace\",this.model.renderers);if(!i.length)return this._set_vertices([],[]),this._selected_renderer=null,this._drawing=!1,this._cur_index=null,void(null!=r&&r.disconnect(r.properties.data.change,s));null!=r&&r.connect(r.properties.data.change,s),this._cur_index=i[0].data_source.selected.indices[0],this._update_vertices(i[0])}_update_vertices(e){const t=e.glyph,s=e.data_source,r=this._cur_index,[i,_]=[t.xs.field,t.ys.field];if(this._drawing)return;if(null==r&&(i||_))return;let n,l;i&&null!=r?(n=s.data[i][r],d.isArray(n)||(s.data[i][r]=n=Array.from(n))):n=t.xs.value,_&&null!=r?(l=s.data[_][r],d.isArray(l)||(s.data[_][r]=l=Array.from(l))):l=t.ys.value,this._selected_renderer=e,this._set_vertices(n,l)}_move(e){if(this._drawing&&null!=this._selected_renderer){const t=this.model.vertex_renderer,s=t.data_source,r=t.glyph,i=this._map_drag(e.sx,e.sy,t);if(null==i)return;let[_,d]=i;const n=s.selected.indices;[_,d]=this._snap_to_vertex(e,_,d),s.selected.indices=n;const[l,a]=[r.x.field,r.y.field],c=n[0];l&&(s.data[l][c]=_),a&&(s.data[a][c]=d),s.change.emit(),this._selected_renderer.data_source.change.emit()}}_tap(e){const t=this.model.vertex_renderer,s=this._map_drag(e.sx,e.sy,t);if(null==s)return;if(this._drawing&&this._selected_renderer){let[r,i]=s;const _=t.data_source,d=t.glyph,[n,l]=[d.x.field,d.y.field],a=_.selected.indices;[r,i]=this._snap_to_vertex(e,r,i);const c=a[0];if(_.selected.indices=[c+1],n){const e=_.get_array(n),t=e[c];e[c]=r,e.splice(c+1,0,t)}if(l){const e=_.get_array(l),t=e[c];e[c]=i,e.splice(c+1,0,t)}return _.change.emit(),void this._emit_cds_changes(this._selected_renderer.data_source,!0,!1,!0)}const r=this._select_mode(e);this._select_event(e,r,[t]),this._select_event(e,r,this.model.renderers)}_remove_vertex(){if(!this._drawing||!this._selected_renderer)return;const e=this.model.vertex_renderer,t=e.data_source,s=e.glyph,r=t.selected.indices[0],[i,_]=[s.x.field,s.y.field];i&&t.get_array(i).splice(r,1),_&&t.get_array(_).splice(r,1),t.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}_pan_start(e){this._select_event(e,\"append\",[this.model.vertex_renderer]),this._basepoint=[e.sx,e.sy]}_pan(e){null!=this._basepoint&&(this._drag_points(e,[this.model.vertex_renderer]),this._selected_renderer&&this._selected_renderer.data_source.change.emit())}_pan_end(e){null!=this._basepoint&&(this._drag_points(e,[this.model.vertex_renderer]),this._emit_cds_changes(this.model.vertex_renderer.data_source,!1,!0,!0),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source),this._basepoint=null)}_keyup(e){if(!this.model.active||!this._mouse_in_frame)return;let t;t=this._selected_renderer?[this.model.vertex_renderer]:this.model.renderers;for(const s of t)e.keyCode===_.Keys.Backspace?(this._delete_selected(s),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source)):e.keyCode==_.Keys.Esc&&(this._drawing?(this._remove_vertex(),this._drawing=!1):this._selected_renderer&&this._hide_vertices(),s.data_source.selection_manager.clear())}deactivate(){this._selected_renderer&&(this._drawing&&(this._remove_vertex(),this._drawing=!1),this._hide_vertices())}}s.PolyEditToolView=a,a.__name__=\"PolyEditToolView\";class c extends n.PolyTool{constructor(e){super(e),this.tool_name=\"Poly Edit Tool\",this.icon=l.tool_icon_poly_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=4}static init_PolyEditTool(){this.prototype.default_view=a}}s.PolyEditTool=c,c.__name__=\"PolyEditTool\",c.init_PolyEditTool()},\n", " function _(e,t,o,s,i){s();const l=e(378),n=e(136),_=e(20),c=e(242);class h extends l.SelectToolView{_compute_limits(e){const t=this.plot_view.frame,o=this.model.dimensions;let s=this._base_point;if(\"center\"==this.model.origin){const[t,o]=s,[i,l]=e;s=[t-(i-t),o-(l-o)]}return this.model._get_dim_limits(s,e,t,o)}_pan_start(e){const{sx:t,sy:o}=e;this._base_point=[t,o]}_pan(e){const{sx:t,sy:o}=e,s=[t,o],[i,l]=this._compute_limits(s);this.model.overlay.update({left:i[0],right:i[1],top:l[0],bottom:l[1]}),this.model.select_every_mousemove&&this._do_select(i,l,!1,this._select_mode(e))}_pan_end(e){const{sx:t,sy:o}=e,s=[t,o],[i,l]=this._compute_limits(s);this._do_select(i,l,!0,this._select_mode(e)),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null,this.plot_view.state.push(\"box_select\",{selection:this.plot_view.get_selection()})}_do_select([e,t],[o,s],i,l=\"replace\"){const n={type:\"rect\",sx0:e,sx1:t,sy0:o,sy1:s};this._select(n,i,l)}}o.BoxSelectToolView=h,h.__name__=\"BoxSelectToolView\";const r=()=>new n.BoxAnnotation({level:\"overlay\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class a extends l.SelectTool{constructor(e){super(e),this.tool_name=\"Box Select\",this.icon=c.tool_icon_box_select,this.event_type=\"pan\",this.default_order=30}static init_BoxSelectTool(){this.prototype.default_view=h,this.define((({Boolean:e,Ref:t})=>({dimensions:[_.Dimensions,\"both\"],select_every_mousemove:[e,!1],overlay:[t(n.BoxAnnotation),r],origin:[_.BoxOrigin,\"corner\"]}))),this.register_alias(\"box_select\",(()=>new a)),this.register_alias(\"xbox_select\",(()=>new a({dimensions:\"width\"}))),this.register_alias(\"ybox_select\",(()=>new a({dimensions:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}o.BoxSelectTool=a,a.__name__=\"BoxSelectTool\",a.init_BoxSelectTool()},\n", " function _(e,t,s,n,o){n();const r=e(237),c=e(61),i=e(123),l=e(62),a=e(161),_=e(20),d=e(43),h=e(264),p=e(15),u=e(11);class m extends r.GestureToolView{connect_signals(){super.connect_signals(),this.model.clear.connect((()=>this._clear()))}get computed_renderers(){const{renderers:e,names:t}=this.model,s=this.plot_model.data_renderers;return a.compute_renderers(e,s,t)}_computed_renderers_by_data_source(){var e;const t=new Map;for(const s of this.computed_renderers){let n;if(s instanceof c.GlyphRenderer)n=s.data_source;else{if(!(s instanceof i.GraphRenderer))continue;n=s.node_renderer.data_source}const o=null!==(e=t.get(n))&&void 0!==e?e:[];t.set(n,[...o,s])}return t}_select_mode(e){const{shiftKey:t,ctrlKey:s}=e;return t||s?t&&!s?\"append\":!t&&s?\"intersect\":t&&s?\"subtract\":void u.unreachable():this.model.mode}_keyup(e){e.keyCode==d.Keys.Esc&&this._clear()}_clear(){for(const e of this.computed_renderers)e.get_selection_manager().clear();const e=this.computed_renderers.map((e=>this.plot_view.renderer_view(e)));this.plot_view.request_paint(e)}_select(e,t,s){const n=this._computed_renderers_by_data_source();for(const[,o]of n){const n=o[0].get_selection_manager(),r=[];for(const e of o){const t=this.plot_view.renderer_view(e);null!=t&&r.push(t)}n.select(r,e,t,s)}null!=this.model.callback&&this._emit_callback(e),this._emit_selection_event(e,t)}_emit_selection_event(e,t=!0){const{x_scale:s,y_scale:n}=this.plot_view.frame;let o;switch(e.type){case\"point\":{const{sx:t,sy:r}=e,c=s.invert(t),i=n.invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}case\"span\":{const{sx:t,sy:r}=e,c=s.invert(t),i=n.invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}case\"rect\":{const{sx0:t,sx1:r,sy0:c,sy1:i}=e,[l,a]=s.r_invert(t,r),[_,d]=n.r_invert(c,i);o=Object.assign(Object.assign({},e),{x0:l,y0:_,x1:a,y1:d});break}case\"poly\":{const{sx:t,sy:r}=e,c=s.v_invert(t),i=n.v_invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}}this.plot_model.trigger_event(new h.SelectionGeometry(o,t))}}s.SelectToolView=m,m.__name__=\"SelectToolView\";class v extends r.GestureTool{constructor(e){super(e)}initialize(){super.initialize(),this.clear=new p.Signal0(this,\"clear\")}static init_SelectTool(){this.define((({String:e,Array:t,Ref:s,Or:n,Auto:o})=>({renderers:[n(t(s(l.DataRenderer)),o),\"auto\"],names:[t(e),[]],mode:[_.SelectionMode,\"replace\"]})))}get menu(){return[{icon:\"bk-tool-icon-replace-mode\",tooltip:\"Replace the current selection\",active:()=>\"replace\"==this.mode,handler:()=>{this.mode=\"replace\",this.active=!0}},{icon:\"bk-tool-icon-append-mode\",tooltip:\"Append to the current selection (Shift)\",active:()=>\"append\"==this.mode,handler:()=>{this.mode=\"append\",this.active=!0}},{icon:\"bk-tool-icon-intersect-mode\",tooltip:\"Intersect with the current selection (Ctrl)\",active:()=>\"intersect\"==this.mode,handler:()=>{this.mode=\"intersect\",this.active=!0}},{icon:\"bk-tool-icon-subtract-mode\",tooltip:\"Subtract from the current selection (Shift+Ctrl)\",active:()=>\"subtract\"==this.mode,handler:()=>{this.mode=\"subtract\",this.active=!0}},null,{icon:\"bk-tool-icon-clear-selection\",tooltip:\"Clear the current selection (Esc)\",handler:()=>{this.clear.emit()}}]}}s.SelectTool=v,v.__name__=\"SelectTool\",v.init_SelectTool()},\n", " function _(t,o,e,s,i){s();const n=t(237),_=t(136),a=t(20),l=t(242);class r extends n.GestureToolView{_match_aspect(t,o,e){const s=e.bbox.aspect,i=e.bbox.h_range.end,n=e.bbox.h_range.start,_=e.bbox.v_range.end,a=e.bbox.v_range.start;let l=Math.abs(t[0]-o[0]),r=Math.abs(t[1]-o[1]);const h=0==r?0:l/r,[c]=h>=s?[1,h/s]:[s/h,1];let m,p,d,b;return t[0]<=o[0]?(m=t[0],p=t[0]+l*c,p>i&&(p=i)):(p=t[0],m=t[0]-l*c,m<n&&(m=n)),l=Math.abs(p-m),t[1]<=o[1]?(b=t[1],d=t[1]+l/s,d>_&&(d=_)):(d=t[1],b=t[1]-l/s,b<a&&(b=a)),r=Math.abs(d-b),t[0]<=o[0]?p=t[0]+s*r:m=t[0]-s*r,[[m,p],[b,d]]}_compute_limits(t){const o=this.plot_view.frame,e=this.model.dimensions;let s,i,n=this._base_point;if(\"center\"==this.model.origin){const[o,e]=n,[s,i]=t;n=[o-(s-o),e-(i-e)]}return this.model.match_aspect&&\"both\"==e?[s,i]=this._match_aspect(n,t,o):[s,i]=this.model._get_dim_limits(n,t,o,e),[s,i]}_pan_start(t){this._base_point=[t.sx,t.sy]}_pan(t){const o=[t.sx,t.sy],[e,s]=this._compute_limits(o);this.model.overlay.update({left:e[0],right:e[1],top:s[0],bottom:s[1]})}_pan_end(t){const o=[t.sx,t.sy],[e,s]=this._compute_limits(o);this._update(e,s),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null}_update([t,o],[e,s]){if(Math.abs(o-t)<=5||Math.abs(s-e)<=5)return;const{x_scales:i,y_scales:n}=this.plot_view.frame,_=new Map;for(const[e,s]of i){const[i,n]=s.r_invert(t,o);_.set(e,{start:i,end:n})}const a=new Map;for(const[t,o]of n){const[i,n]=o.r_invert(e,s);a.set(t,{start:i,end:n})}const l={xrs:_,yrs:a};this.plot_view.state.push(\"box_zoom\",{range:l}),this.plot_view.update_range(l)}}e.BoxZoomToolView=r,r.__name__=\"BoxZoomToolView\";const h=()=>new _.BoxAnnotation({level:\"overlay\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class c extends n.GestureTool{constructor(t){super(t),this.tool_name=\"Box Zoom\",this.icon=l.tool_icon_box_zoom,this.event_type=\"pan\",this.default_order=20}static init_BoxZoomTool(){this.prototype.default_view=r,this.define((({Boolean:t,Ref:o})=>({dimensions:[a.Dimensions,\"both\"],overlay:[o(_.BoxAnnotation),h],match_aspect:[t,!1],origin:[a.BoxOrigin,\"corner\"]}))),this.register_alias(\"box_zoom\",(()=>new c({dimensions:\"both\"}))),this.register_alias(\"xbox_zoom\",(()=>new c({dimensions:\"width\"}))),this.register_alias(\"ybox_zoom\",(()=>new c({dimensions:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}e.BoxZoomTool=c,c.__name__=\"BoxZoomTool\",c.init_BoxZoomTool()},\n", " function _(s,e,t,o,i){o();const l=s(378),_=s(231),a=s(381),c=s(43),n=s(242);class h extends l.SelectToolView{constructor(){super(...arguments),this.sxs=[],this.sys=[]}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,(()=>this._active_change()))}_active_change(){this.model.active||this._clear_overlay()}_keyup(s){s.keyCode==c.Keys.Enter&&this._clear_overlay()}_pan_start(s){this.sxs=[],this.sys=[];const{sx:e,sy:t}=s;this._append_overlay(e,t)}_pan(s){const[e,t]=this.plot_view.frame.bbox.clip(s.sx,s.sy);this._append_overlay(e,t),this.model.select_every_mousemove&&this._do_select(this.sxs,this.sys,!1,this._select_mode(s))}_pan_end(s){const{sxs:e,sys:t}=this;this._clear_overlay(),this._do_select(e,t,!0,this._select_mode(s)),this.plot_view.state.push(\"lasso_select\",{selection:this.plot_view.get_selection()})}_append_overlay(s,e){const{sxs:t,sys:o}=this;t.push(s),o.push(e),this.model.overlay.update({xs:t,ys:o})}_clear_overlay(){this.sxs=[],this.sys=[],this.model.overlay.update({xs:this.sxs,ys:this.sys})}_do_select(s,e,t,o){const i={type:\"poly\",sx:s,sy:e};this._select(i,t,o)}}t.LassoSelectToolView=h,h.__name__=\"LassoSelectToolView\";class r extends l.SelectTool{constructor(s){super(s),this.tool_name=\"Lasso Select\",this.icon=n.tool_icon_lasso_select,this.event_type=\"pan\",this.default_order=12}static init_LassoSelectTool(){this.prototype.default_view=h,this.define((({Boolean:s,Ref:e})=>({select_every_mousemove:[s,!0],overlay:[e(_.PolyAnnotation),a.DEFAULT_POLY_OVERLAY]}))),this.register_alias(\"lasso_select\",(()=>new r))}}t.LassoSelectTool=r,r.__name__=\"LassoSelectTool\",r.init_LassoSelectTool()},\n", " function _(e,t,s,l,o){l();const i=e(378),a=e(231),_=e(43),c=e(9),n=e(242);class h extends i.SelectToolView{initialize(){super.initialize(),this.data={sx:[],sy:[]}}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,(()=>this._active_change()))}_active_change(){this.model.active||this._clear_data()}_keyup(e){e.keyCode==_.Keys.Enter&&this._clear_data()}_doubletap(e){this._do_select(this.data.sx,this.data.sy,!0,this._select_mode(e)),this.plot_view.state.push(\"poly_select\",{selection:this.plot_view.get_selection()}),this._clear_data()}_clear_data(){this.data={sx:[],sy:[]},this.model.overlay.update({xs:[],ys:[]})}_tap(e){const{sx:t,sy:s}=e;this.plot_view.frame.bbox.contains(t,s)&&(this.data.sx.push(t),this.data.sy.push(s),this.model.overlay.update({xs:c.copy(this.data.sx),ys:c.copy(this.data.sy)}))}_do_select(e,t,s,l){const o={type:\"poly\",sx:e,sy:t};this._select(o,s,l)}}s.PolySelectToolView=h,h.__name__=\"PolySelectToolView\";s.DEFAULT_POLY_OVERLAY=()=>new a.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class y extends i.SelectTool{constructor(e){super(e),this.tool_name=\"Poly Select\",this.icon=n.tool_icon_polygon_select,this.event_type=\"tap\",this.default_order=11}static init_PolySelectTool(){this.prototype.default_view=h,this.define((({Ref:e})=>({overlay:[e(a.PolyAnnotation),s.DEFAULT_POLY_OVERLAY]}))),this.register_alias(\"poly_select\",(()=>new y))}}s.PolySelectTool=y,y.__name__=\"PolySelectTool\",y.init_PolySelectTool()},\n", " function _(e,t,i,s,n){s();const r=e(20),_=e(383),d=e(242);class o extends _.LineToolView{constructor(){super(...arguments),this._drawing=!1}_doubletap(e){if(!this.model.active)return;const t=this.model.renderers;for(const i of t){1==this._select_event(e,\"replace\",[i]).length&&(this._selected_renderer=i)}this._show_intersections(),this._update_line_cds()}_show_intersections(){if(!this.model.active)return;if(null==this._selected_renderer)return;if(!this.model.renderers.length)return this._set_intersection([],[]),this._selected_renderer=null,void(this._drawing=!1);const e=this._selected_renderer.data_source,t=this._selected_renderer.glyph,[i,s]=[t.x.field,t.y.field],n=e.get_array(i),r=e.get_array(s);this._set_intersection(n,r)}_tap(e){const t=this.model.intersection_renderer;if(null==this._map_drag(e.sx,e.sy,t))return;if(this._drawing&&this._selected_renderer){const i=this._select_mode(e);if(0==this._select_event(e,i,[t]).length)return}const i=this._select_mode(e);this._select_event(e,i,[t]),this._select_event(e,i,this.model.renderers)}_update_line_cds(){if(null==this._selected_renderer)return;const e=this.model.intersection_renderer.glyph,t=this.model.intersection_renderer.data_source,[i,s]=[e.x.field,e.y.field];if(i&&s){const e=t.data[i],n=t.data[s];this._selected_renderer.data_source.data[i]=e,this._selected_renderer.data_source.data[s]=n}this._emit_cds_changes(this._selected_renderer.data_source,!0,!0,!1)}_pan_start(e){this._select_event(e,\"append\",[this.model.intersection_renderer]),this._basepoint=[e.sx,e.sy]}_pan(e){null!=this._basepoint&&(this._drag_points(e,[this.model.intersection_renderer],this.model.dimensions),this._selected_renderer&&this._selected_renderer.data_source.change.emit())}_pan_end(e){null!=this._basepoint&&(this._drag_points(e,[this.model.intersection_renderer]),this._emit_cds_changes(this.model.intersection_renderer.data_source,!1,!0,!0),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source),this._basepoint=null)}activate(){this._drawing=!0}deactivate(){this._selected_renderer&&(this._drawing&&(this._drawing=!1),this._hide_intersections())}}i.LineEditToolView=o,o.__name__=\"LineEditToolView\";class l extends _.LineTool{constructor(e){super(e),this.tool_name=\"Line Edit Tool\",this.icon=d.tool_icon_line_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=4}static init_LineEditTool(){this.prototype.default_view=o,this.define((()=>({dimensions:[r.Dimensions,\"both\"]})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}i.LineEditTool=l,l.__name__=\"LineEditTool\",l.init_LineEditTool()},\n", " function _(e,i,t,n,o){n();const s=e(8),_=e(370);class r extends _.EditToolView{_set_intersection(e,i){const t=this.model.intersection_renderer.glyph,n=this.model.intersection_renderer.data_source,[o,_]=[t.x.field,t.y.field];o&&(s.isArray(e)?n.data[o]=e:t.x={value:e}),_&&(s.isArray(i)?n.data[_]=i:t.y={value:i}),this._emit_cds_changes(n,!0,!0,!1)}_hide_intersections(){this._set_intersection([],[])}}t.LineToolView=r,r.__name__=\"LineToolView\";class c extends _.EditTool{constructor(e){super(e)}static init_LineTool(){this.define((({AnyRef:e})=>({intersection_renderer:[e()]})))}}t.LineTool=c,c.__name__=\"LineTool\",c.init_LineTool()},\n", " function _(t,s,i,n,e){n();const o=t(1),a=t(237),_=t(20),h=o.__importStar(t(242));function l(t,s,i){const n=new Map;for(const[e,o]of t){const[t,a]=o.r_invert(s,i);n.set(e,{start:t,end:a})}return n}i.update_ranges=l;class r extends a.GestureToolView{_pan_start(t){var s;this.last_dx=0,this.last_dy=0;const{sx:i,sy:n}=t,e=this.plot_view.frame.bbox;if(!e.contains(i,n)){const t=e.h_range,s=e.v_range;(i<t.start||i>t.end)&&(this.v_axis_only=!0),(n<s.start||n>s.end)&&(this.h_axis_only=!0)}null===(s=this.model.document)||void 0===s||s.interactive_start(this.plot_model)}_pan(t){var s;this._update(t.deltaX,t.deltaY),null===(s=this.model.document)||void 0===s||s.interactive_start(this.plot_model)}_pan_end(t){this.h_axis_only=!1,this.v_axis_only=!1,null!=this.pan_info&&this.plot_view.state.push(\"pan\",{range:this.pan_info})}_update(t,s){const i=this.plot_view.frame,n=t-this.last_dx,e=s-this.last_dy,o=i.bbox.h_range,a=o.start-n,_=o.end-n,h=i.bbox.v_range,r=h.start-e,d=h.end-e,p=this.model.dimensions;let c,m,u,x,v,y;\"width\"!=p&&\"both\"!=p||this.v_axis_only?(c=o.start,m=o.end,u=0):(c=a,m=_,u=-n),\"height\"!=p&&\"both\"!=p||this.h_axis_only?(x=h.start,v=h.end,y=0):(x=r,v=d,y=-e),this.last_dx=t,this.last_dy=s;const{x_scales:g,y_scales:w}=i,f=l(g,c,m),b=l(w,x,v);this.pan_info={xrs:f,yrs:b,sdx:u,sdy:y},this.plot_view.update_range(this.pan_info,{panning:!0})}}i.PanToolView=r,r.__name__=\"PanToolView\";class d extends a.GestureTool{constructor(t){super(t),this.tool_name=\"Pan\",this.event_type=\"pan\",this.default_order=10}static init_PanTool(){this.prototype.default_view=r,this.define((()=>({dimensions:[_.Dimensions,\"both\",{on_update(t,s){switch(t){case\"both\":s.icon=h.tool_icon_pan;break;case\"width\":s.icon=h.tool_icon_xpan;break;case\"height\":s.icon=h.tool_icon_ypan}}}]}))),this.register_alias(\"pan\",(()=>new d({dimensions:\"both\"}))),this.register_alias(\"xpan\",(()=>new d({dimensions:\"width\"}))),this.register_alias(\"ypan\",(()=>new d({dimensions:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}i.PanTool=d,d.__name__=\"PanTool\",d.init_PanTool()},\n", " function _(t,e,i,s,n){s();const l=t(136),a=t(156),r=t(19),o=t(237),_=t(242);function h(t){switch(t){case 1:return 2;case 2:return 1;case 4:return 5;case 5:return 4;default:return t}}function d(t,e,i,s){if(null==e)return!1;const n=i.compute(e);return Math.abs(t-n)<s}function u(t,e,i,s,n){let l=!0;if(null!=n.left&&null!=n.right){const e=i.invert(t);(e<n.left||e>n.right)&&(l=!1)}if(null!=n.bottom&&null!=n.top){const t=s.invert(e);(t<n.bottom||t>n.top)&&(l=!1)}return l}function c(t,e,i){let s=0;return t>=i.start&&t<=i.end&&(s+=1),e>=i.start&&e<=i.end&&(s+=1),s}function g(t,e,i,s){const n=e.compute(t),l=e.invert(n+i);return l>=s.start&&l<=s.end?l:t}function y(t,e,i){return t>e.start?(e.end=t,i):(e.end=e.start,e.start=t,h(i))}function f(t,e,i){return t<e.end?(e.start=t,i):(e.start=e.end,e.end=t,h(i))}function m(t,e,i,s){const[n,l]=e.r_compute(t.start,t.end),[a,r]=e.r_invert(n+i,l+i),o=c(t.start,t.end,s);c(a,r,s)>=o&&(t.start=a,t.end=r)}i.flip_side=h,i.is_near=d,i.is_inside=u,i.sides_inside=c,i.compute_value=g,i.update_range_end_side=y,i.update_range_start_side=f,i.update_range=m;class v extends o.GestureToolView{initialize(){super.initialize(),this.side=0,this.model.update_overlay_from_ranges()}connect_signals(){super.connect_signals(),null!=this.model.x_range&&this.connect(this.model.x_range.change,(()=>this.model.update_overlay_from_ranges())),null!=this.model.y_range&&this.connect(this.model.y_range.change,(()=>this.model.update_overlay_from_ranges()))}_pan_start(t){this.last_dx=0,this.last_dy=0;const e=this.model.x_range,i=this.model.y_range,{frame:s}=this.plot_view,n=s.x_scale,a=s.y_scale,r=this.model.overlay,{left:o,right:_,top:h,bottom:c}=r,g=this.model.overlay.line_width+l.EDGE_TOLERANCE;null!=e&&this.model.x_interaction&&(d(t.sx,o,n,g)?this.side=1:d(t.sx,_,n,g)?this.side=2:u(t.sx,t.sy,n,a,r)&&(this.side=3)),null!=i&&this.model.y_interaction&&(0==this.side&&d(t.sy,c,a,g)&&(this.side=4),0==this.side&&d(t.sy,h,a,g)?this.side=5:u(t.sx,t.sy,n,a,this.model.overlay)&&(3==this.side?this.side=7:this.side=6))}_pan(t){const e=this.plot_view.frame,i=t.deltaX-this.last_dx,s=t.deltaY-this.last_dy,n=this.model.x_range,l=this.model.y_range,a=e.x_scale,r=e.y_scale;if(null!=n)if(3==this.side||7==this.side)m(n,a,i,e.x_range);else if(1==this.side){const t=g(n.start,a,i,e.x_range);this.side=f(t,n,this.side)}else if(2==this.side){const t=g(n.end,a,i,e.x_range);this.side=y(t,n,this.side)}if(null!=l)if(6==this.side||7==this.side)m(l,r,s,e.y_range);else if(4==this.side){const t=g(l.start,r,s,e.y_range);this.side=f(t,l,this.side)}else if(5==this.side){const t=g(l.end,r,s,e.y_range);this.side=y(t,l,this.side)}this.last_dx=t.deltaX,this.last_dy=t.deltaY}_pan_end(t){this.side=0}}i.RangeToolView=v,v.__name__=\"RangeToolView\";const p=()=>new l.BoxAnnotation({level:\"overlay\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:.5,line_dash:[2,2]});class x extends o.GestureTool{constructor(t){super(t),this.tool_name=\"Range Tool\",this.icon=_.tool_icon_range,this.event_type=\"pan\",this.default_order=1}static init_RangeTool(){this.prototype.default_view=v,this.define((({Boolean:t,Ref:e,Nullable:i})=>({x_range:[i(e(a.Range1d)),null],x_interaction:[t,!0],y_range:[i(e(a.Range1d)),null],y_interaction:[t,!0],overlay:[e(l.BoxAnnotation),p]})))}initialize(){super.initialize(),this.overlay.in_cursor=\"grab\",this.overlay.ew_cursor=null!=this.x_range&&this.x_interaction?\"ew-resize\":null,this.overlay.ns_cursor=null!=this.y_range&&this.y_interaction?\"ns-resize\":null}update_overlay_from_ranges(){null==this.x_range&&null==this.y_range&&(this.overlay.left=null,this.overlay.right=null,this.overlay.bottom=null,this.overlay.top=null,r.logger.warn(\"RangeTool not configured with any Ranges.\")),null==this.x_range?(this.overlay.left=null,this.overlay.right=null):(this.overlay.left=this.x_range.start,this.overlay.right=this.x_range.end),null==this.y_range?(this.overlay.bottom=null,this.overlay.top=null):(this.overlay.bottom=this.y_range.start,this.overlay.top=this.y_range.end)}}i.RangeTool=x,x.__name__=\"RangeTool\",x.init_RangeTool()},\n", " function _(e,t,s,o,i){o();const l=e(378),a=e(20),n=e(242);class c extends l.SelectToolView{_tap(e){\"tap\"==this.model.gesture&&this._handle_tap(e)}_doubletap(e){\"doubletap\"==this.model.gesture&&this._handle_tap(e)}_handle_tap(e){const{sx:t,sy:s}=e,o={type:\"point\",sx:t,sy:s};this._select(o,!0,this._select_mode(e))}_select(e,t,s){const{callback:o}=this.model;if(\"select\"==this.model.behavior){const i=this._computed_renderers_by_data_source();for(const[,l]of i){const i=l[0].get_selection_manager(),a=l.map((e=>this.plot_view.renderer_view(e))).filter((e=>null!=e));if(i.select(a,e,t,s)&&null!=o){const t=a[0].coordinates.x_scale.invert(e.sx),s=a[0].coordinates.y_scale.invert(e.sy),l={geometries:Object.assign(Object.assign({},e),{x:t,y:s}),source:i.source};o.execute(this.model,l)}}this._emit_selection_event(e),this.plot_view.state.push(\"tap\",{selection:this.plot_view.get_selection()})}else for(const t of this.computed_renderers){const s=this.plot_view.renderer_view(t);if(null==s)continue;const i=t.get_selection_manager();if(i.inspect(s,e)&&null!=o){const t=s.coordinates.x_scale.invert(e.sx),l=s.coordinates.y_scale.invert(e.sy),a={geometries:Object.assign(Object.assign({},e),{x:t,y:l}),source:i.source};o.execute(this.model,a)}}}}s.TapToolView=c,c.__name__=\"TapToolView\";class _ extends l.SelectTool{constructor(e){super(e),this.tool_name=\"Tap\",this.icon=n.tool_icon_tap_select,this.event_type=\"tap\",this.default_order=10}static init_TapTool(){this.prototype.default_view=c,this.define((({Any:e,Enum:t,Nullable:s})=>({behavior:[a.TapBehavior,\"select\"],gesture:[t(\"tap\",\"doubletap\"),\"tap\"],callback:[s(e)]}))),this.register_alias(\"click\",(()=>new _({behavior:\"inspect\"}))),this.register_alias(\"tap\",(()=>new _)),this.register_alias(\"doubletap\",(()=>new _({gesture:\"doubletap\"})))}}s.TapTool=_,_.__name__=\"TapTool\",_.init_TapTool()},\n", " function _(e,t,s,i,n){i();const o=e(237),a=e(20),l=e(242),_=e(384);class h extends o.GestureToolView{_scroll(e){let t=this.model.speed*e.delta;t>.9?t=.9:t<-.9&&(t=-.9),this._update_ranges(t)}_update_ranges(e){var t;const{frame:s}=this.plot_view,i=s.bbox.h_range,n=s.bbox.v_range,[o,a]=[i.start,i.end],[l,h]=[n.start,n.end];let r,d,c,p;switch(this.model.dimension){case\"height\":{const t=Math.abs(h-l);r=o,d=a,c=l-t*e,p=h-t*e;break}case\"width\":{const t=Math.abs(a-o);r=o-t*e,d=a-t*e,c=l,p=h;break}}const{x_scales:m,y_scales:u}=s,w={xrs:_.update_ranges(m,r,d),yrs:_.update_ranges(u,c,p),factor:e};this.plot_view.state.push(\"wheel_pan\",{range:w}),this.plot_view.update_range(w,{scrolling:!0}),null===(t=this.model.document)||void 0===t||t.interactive_start(this.plot_model)}}s.WheelPanToolView=h,h.__name__=\"WheelPanToolView\";class r extends o.GestureTool{constructor(e){super(e),this.tool_name=\"Wheel Pan\",this.icon=l.tool_icon_wheel_pan,this.event_type=\"scroll\",this.default_order=12}static init_WheelPanTool(){this.prototype.default_view=h,this.define((()=>({dimension:[a.Dimension,\"width\"]}))),this.internal((({Number:e})=>({speed:[e,.001]}))),this.register_alias(\"xwheel_pan\",(()=>new r({dimension:\"width\"}))),this.register_alias(\"ywheel_pan\",(()=>new r({dimension:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimension)}}s.WheelPanTool=r,r.__name__=\"WheelPanTool\",r.init_WheelPanTool()},\n", " function _(e,o,t,s,i){s();const l=e(237),n=e(368),h=e(20),_=e(27),a=e(242);class m extends l.GestureToolView{_pinch(e){const{sx:o,sy:t,scale:s,ctrlKey:i,shiftKey:l}=e;let n;n=s>=1?20*(s-1):-20/s,this._scroll({type:\"wheel\",sx:o,sy:t,delta:n,ctrlKey:i,shiftKey:l})}_scroll(e){var o;const{frame:t}=this.plot_view,s=t.bbox.h_range,i=t.bbox.v_range,{sx:l,sy:h}=e,_=this.model.dimensions,a=(\"width\"==_||\"both\"==_)&&s.start<l&&l<s.end,m=(\"height\"==_||\"both\"==_)&&i.start<h&&h<i.end;if(!(a&&m||this.model.zoom_on_axis))return;const r=this.model.speed*e.delta,d=n.scale_range(t,r,a,m,{x:l,y:h});this.plot_view.state.push(\"wheel_zoom\",{range:d});const{maintain_focus:c}=this.model;this.plot_view.update_range(d,{scrolling:!0,maintain_focus:c}),null===(o=this.model.document)||void 0===o||o.interactive_start(this.plot_model)}}t.WheelZoomToolView=m,m.__name__=\"WheelZoomToolView\";class r extends l.GestureTool{constructor(e){super(e),this.tool_name=\"Wheel Zoom\",this.icon=a.tool_icon_wheel_zoom,this.event_type=_.is_mobile?\"pinch\":\"scroll\",this.default_order=10}static init_WheelZoomTool(){this.prototype.default_view=m,this.define((({Boolean:e,Number:o})=>({dimensions:[h.Dimensions,\"both\"],maintain_focus:[e,!0],zoom_on_axis:[e,!0],speed:[o,1/600]}))),this.register_alias(\"wheel_zoom\",(()=>new r({dimensions:\"both\"}))),this.register_alias(\"xwheel_zoom\",(()=>new r({dimensions:\"width\"}))),this.register_alias(\"ywheel_zoom\",(()=>new r({dimensions:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}t.WheelZoomTool=r,r.__name__=\"WheelZoomTool\",r.init_WheelZoomTool()},\n", " function _(i,s,t,o,e){o();const n=i(247),l=i(233),h=i(20),a=i(13),r=i(242);class _ extends n.InspectToolView{_move(i){if(!this.model.active)return;const{sx:s,sy:t}=i;this.plot_view.frame.bbox.contains(s,t)?this._update_spans(s,t):this._update_spans(null,null)}_move_exit(i){this._update_spans(null,null)}_update_spans(i,s){const t=this.model.dimensions;\"width\"!=t&&\"both\"!=t||(this.model.spans.width.location=s),\"height\"!=t&&\"both\"!=t||(this.model.spans.height.location=i)}}t.CrosshairToolView=_,_.__name__=\"CrosshairToolView\";class c extends n.InspectTool{constructor(i){super(i),this.tool_name=\"Crosshair\",this.icon=r.tool_icon_crosshair}static init_CrosshairTool(){function i(i,s){return new l.Span({for_hover:!0,dimension:s,location_units:\"screen\",level:\"overlay\",line_color:i.line_color,line_width:i.line_width,line_alpha:i.line_alpha})}this.prototype.default_view=_,this.define((({Alpha:i,Number:s,Color:t})=>({dimensions:[h.Dimensions,\"both\"],line_color:[t,\"black\"],line_width:[s,1],line_alpha:[i,1]}))),this.internal((({Struct:s,Ref:t})=>({spans:[s({width:t(l.Span),height:t(l.Span)}),s=>({width:i(s,\"width\"),height:i(s,\"height\")})]}))),this.register_alias(\"crosshair\",(()=>new c))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}get synthetic_renderers(){return a.values(this.spans)}}t.CrosshairTool=c,c.__name__=\"CrosshairTool\",c.init_CrosshairTool()},\n", " function _(t,e,s,o,r){o();const n=t(53),i=t(13),a=t(34);class u extends n.Model{constructor(t){super(t)}static init_CustomJSHover(){this.define((({Unknown:t,String:e,Dict:s})=>({args:[s(t),{}],code:[e,\"\"]})))}get values(){return i.values(this.args)}_make_code(t,e,s,o){return new Function(...i.keys(this.args),t,e,s,a.use_strict(o))}format(t,e,s){return this._make_code(\"value\",\"format\",\"special_vars\",this.code)(...this.values,t,e,s)}}s.CustomJSHover=u,u.__name__=\"CustomJSHover\",u.init_CustomJSHover()},\n", " function _(e,t,n,s,o){s();const i=e(1),r=e(247),l=e(390),a=e(254),c=e(61),_=e(123),d=e(62),p=e(63),h=e(127),u=i.__importStar(e(107)),m=e(182),y=e(43),f=e(22),x=e(13),v=e(245),w=e(8),g=e(122),b=e(20),k=e(242),C=e(15),S=e(161),T=i.__importStar(e(255));function $(e,t,n,s,o,i){const r={x:o[e],y:i[e]},l={x:o[e+1],y:i[e+1]};let a,c;if(\"span\"==t.type)\"h\"==t.direction?(a=Math.abs(r.x-n),c=Math.abs(l.x-n)):(a=Math.abs(r.y-s),c=Math.abs(l.y-s));else{const e={x:n,y:s};a=u.dist_2_pts(r,e),c=u.dist_2_pts(l,e)}return a<c?[[r.x,r.y],e]:[[l.x,l.y],e+1]}function R(e,t,n){return[[e[n],t[n]],n]}n._nearest_line_hit=$,n._line_hit=R;class H extends r.InspectToolView{initialize(){super.initialize(),this._ttmodels=new Map,this._ttviews=new Map}async lazy_initialize(){await super.lazy_initialize(),await this._update_ttmodels()}remove(){g.remove_views(this._ttviews),super.remove()}connect_signals(){super.connect_signals();const e=this.plot_model.properties.renderers,{renderers:t,tooltips:n}=this.model.properties;this.on_change(n,(()=>delete this._template_el)),this.on_change([e,t,n],(async()=>await this._update_ttmodels()))}async _update_ttmodels(){const{_ttmodels:e,computed_renderers:t}=this;e.clear();const{tooltips:n}=this.model;if(null!=n)for(const t of this.computed_renderers){const s=new a.Tooltip({custom:w.isString(n)||w.isFunction(n),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t instanceof c.GlyphRenderer?e.set(t,s):t instanceof _.GraphRenderer&&(e.set(t.node_renderer,s),e.set(t.edge_renderer,s))}const s=await g.build_views(this._ttviews,[...e.values()],{parent:this.plot_view});for(const e of s)e.render();const o=[...function*(){for(const e of t)e instanceof c.GlyphRenderer?yield e:e instanceof _.GraphRenderer&&(yield e.node_renderer,yield e.edge_renderer)}()],i=this._slots.get(this._update);if(null!=i){const e=new Set(o.map((e=>e.data_source)));C.Signal.disconnect_receiver(this,i,e)}for(const e of o)this.connect(e.data_source.inspect,this._update)}get computed_renderers(){const{renderers:e,names:t}=this.model,n=this.plot_model.data_renderers;return S.compute_renderers(e,n,t)}get ttmodels(){return this._ttmodels}_clear(){this._inspect(1/0,1/0);for(const[,e]of this.ttmodels)e.clear()}_move(e){if(!this.model.active)return;const{sx:t,sy:n}=e;this.plot_view.frame.bbox.contains(t,n)?this._inspect(t,n):this._clear()}_move_exit(){this._clear()}_inspect(e,t){let n;if(\"mouse\"==this.model.mode)n={type:\"point\",sx:e,sy:t};else{n={type:\"span\",direction:\"vline\"==this.model.mode?\"h\":\"v\",sx:e,sy:t}}for(const e of this.computed_renderers){const t=e.get_selection_manager(),s=this.plot_view.renderer_view(e);null!=s&&t.inspect(s,n)}this._emit_callback(n)}_update([e,{geometry:t}]){var n,s;if(!this.model.active)return;if(\"point\"!=t.type&&\"span\"!=t.type)return;if(!(e instanceof c.GlyphRenderer))return;if(\"ignore\"==this.model.muted_policy&&e.muted)return;const o=this.ttmodels.get(e);if(null==o)return;const i=e.get_selection_manager();let r=i.inspectors.get(e);if(r=e.view.convert_selection_to_subset(r),r.is_empty())return void o.clear();const l=i.source,a=this.plot_view.renderer_view(e);if(null==a)return;const{sx:_,sy:d}=t,u=a.coordinates.x_scale,m=a.coordinates.y_scale,f=u.invert(_),v=m.invert(d),{glyph:w}=a,g=[];if(w instanceof p.LineView)for(const n of r.line_indices){let s,o,i=w._x[n+1],a=w._y[n+1],c=n;switch(this.model.line_policy){case\"interp\":[i,a]=w.get_interpolation_hit(n,t),s=u.compute(i),o=m.compute(a);break;case\"prev\":[[s,o],c]=R(w.sx,w.sy,n);break;case\"next\":[[s,o],c]=R(w.sx,w.sy,n+1);break;case\"nearest\":[[s,o],c]=$(n,t,_,d,w.sx,w.sy),i=w._x[c],a=w._y[c];break;default:[s,o]=[_,d]}const p={index:c,x:f,y:v,sx:_,sy:d,data_x:i,data_y:a,rx:s,ry:o,indices:r.line_indices,name:e.name};g.push([s,o,this._render_tooltips(l,c,p)])}for(const t of r.image_indices){const n={index:t.index,x:f,y:v,sx:_,sy:d,name:e.name},s=this._render_tooltips(l,t,n);g.push([_,d,s])}for(const o of r.indices)if(w instanceof h.MultiLineView&&!x.isEmpty(r.multiline_indices))for(const n of r.multiline_indices[o.toString()]){let s,i,a,p=w._xs.get(o)[n],h=w._ys.get(o)[n],y=n;switch(this.model.line_policy){case\"interp\":[p,h]=w.get_interpolation_hit(o,n,t),s=u.compute(p),i=m.compute(h);break;case\"prev\":[[s,i],y]=R(w.sxs.get(o),w.sys.get(o),n);break;case\"next\":[[s,i],y]=R(w.sxs.get(o),w.sys.get(o),n+1);break;case\"nearest\":[[s,i],y]=$(n,t,_,d,w.sxs.get(o),w.sys.get(o)),p=w._xs.get(o)[y],h=w._ys.get(o)[y];break;default:throw new Error(\"shouldn't have happened\")}a=e instanceof c.GlyphRenderer?e.view.convert_indices_from_subset([o])[0]:o;const x={index:a,x:f,y:v,sx:_,sy:d,data_x:p,data_y:h,segment_index:y,indices:r.multiline_indices,name:e.name};g.push([s,i,this._render_tooltips(l,a,x)])}else{const t=null===(n=w._x)||void 0===n?void 0:n[o],i=null===(s=w._y)||void 0===s?void 0:s[o];let a,p,h;if(\"snap_to_data\"==this.model.point_policy){let e=w.get_anchor_point(this.model.anchor,o,[_,d]);if(null==e&&(e=w.get_anchor_point(\"center\",o,[_,d]),null==e))continue;a=e.x,p=e.y}else[a,p]=[_,d];h=e instanceof c.GlyphRenderer?e.view.convert_indices_from_subset([o])[0]:o;const u={index:h,x:f,y:v,sx:_,sy:d,data_x:t,data_y:i,indices:r.indices,name:e.name};g.push([a,p,this._render_tooltips(l,h,u)])}if(0==g.length)o.clear();else{const{content:e}=o;y.empty(o.content);for(const[,,t]of g)null!=t&&e.appendChild(t);const[t,n]=g[g.length-1];o.setv({position:[t,n]},{check_eq:!1})}}_emit_callback(e){const{callback:t}=this.model;if(null!=t)for(const n of this.computed_renderers){if(!(n instanceof c.GlyphRenderer))continue;const s=this.plot_view.renderer_view(n);if(null==s)continue;const{x_scale:o,y_scale:i}=s.coordinates,r=o.invert(e.sx),l=i.invert(e.sy),a=n.data_source.inspected;t.execute(this.model,{geometry:Object.assign({x:r,y:l},e),renderer:n,index:a})}}_create_template(e){const t=y.div({style:{display:\"table\",borderSpacing:\"2px\"}});for(const[n]of e){const e=y.div({style:{display:\"table-row\"}});t.appendChild(e);const s=y.div({style:{display:\"table-cell\"},class:T.tooltip_row_label},0!=n.length?`${n}: `:\"\");e.appendChild(s);const o=y.span();o.dataset.value=\"\";const i=y.span({class:T.tooltip_color_block},\" \");i.dataset.swatch=\"\",y.undisplay(i);const r=y.div({style:{display:\"table-cell\"},class:T.tooltip_row_value},o,i);e.appendChild(r)}return t}_render_template(e,t,n,s,o){const i=e.cloneNode(!0),r=i.querySelectorAll(\"[data-value]\"),l=i.querySelectorAll(\"[data-swatch]\"),a=/\\$color(\\[.*\\])?:(\\w*)/,c=/\\$swatch:(\\w*)/;for(const[[,e],i]of v.enumerate(t)){const t=e.match(c),_=e.match(a);if(null!=t||null!=_){if(null!=t){const[,e]=t,o=n.get_column(e);if(null==o)r[i].textContent=`${e} unknown`;else{const e=w.isNumber(s)?o[s]:null;null!=e&&(l[i].style.backgroundColor=f.color2css(e),y.display(l[i]))}}if(null!=_){const[,e=\"\",t]=_,o=n.get_column(t);if(null==o){r[i].textContent=`${t} unknown`;continue}const a=e.indexOf(\"hex\")>=0,c=e.indexOf(\"swatch\")>=0,d=w.isNumber(s)?o[s]:null;if(null==d){r[i].textContent=\"(null)\";continue}r[i].textContent=a?f.color2hex(d):f.color2css(d),c&&(l[i].style.backgroundColor=f.color2css(d),y.display(l[i]))}}else{const t=m.replace_placeholders(e.replace(\"$~\",\"$data_\"),n,s,this.model.formatters,o);if(w.isString(t))r[i].textContent=t;else for(const e of t)r[i].appendChild(e)}}return i}_render_tooltips(e,t,n){var s;const{tooltips:o}=this.model;if(w.isString(o)){const s=m.replace_placeholders({html:o},e,t,this.model.formatters,n);return y.div({},s)}if(w.isFunction(o))return o(e,n);if(null!=o){const i=null!==(s=this._template_el)&&void 0!==s?s:this._template_el=this._create_template(o);return this._render_template(i,o,e,t,n)}return null}}n.HoverToolView=H,H.__name__=\"HoverToolView\";class M extends r.InspectTool{constructor(e){super(e),this.tool_name=\"Hover\",this.icon=k.tool_icon_hover}static init_HoverTool(){this.prototype.default_view=H,this.define((({Any:e,Boolean:t,String:n,Array:s,Tuple:o,Dict:i,Or:r,Ref:a,Function:c,Auto:_,Nullable:p})=>({tooltips:[p(r(n,s(o(n,n)),c())),[[\"index\",\"$index\"],[\"data (x, y)\",\"($x, $y)\"],[\"screen (x, y)\",\"($sx, $sy)\"]]],formatters:[i(r(a(l.CustomJSHover),m.FormatterType)),{}],renderers:[r(s(a(d.DataRenderer)),_),\"auto\"],names:[s(n),[]],mode:[b.HoverMode,\"mouse\"],muted_policy:[b.MutedPolicy,\"show\"],point_policy:[b.PointPolicy,\"snap_to_data\"],line_policy:[b.LinePolicy,\"nearest\"],show_arrow:[t,!0],anchor:[b.Anchor,\"center\"],attachment:[b.TooltipAttachment,\"horizontal\"],callback:[p(e)]}))),this.register_alias(\"hover\",(()=>new M))}}n.HoverTool=M,M.__name__=\"HoverTool\",M.init_HoverTool()},\n", " function _(t,o,e,n,i){n();const s=t(15),l=t(53),c=t(238),r=t(247),a=t(245);class u extends l.Model{constructor(t){super(t)}static init_ToolProxy(){this.define((({Boolean:t,Array:o,Ref:e})=>({tools:[o(e(c.ButtonTool)),[]],active:[t,!1],disabled:[t,!1]})))}get button_view(){return this.tools[0].button_view}get event_type(){return this.tools[0].event_type}get tooltip(){return this.tools[0].tooltip}get tool_name(){return this.tools[0].tool_name}get icon(){return this.tools[0].computed_icon}get computed_icon(){return this.icon}get toggleable(){const t=this.tools[0];return t instanceof r.InspectTool&&t.toggleable}initialize(){super.initialize(),this.do=new s.Signal0(this,\"do\")}connect_signals(){super.connect_signals(),this.connect(this.do,(()=>this.doit())),this.connect(this.properties.active.change,(()=>this.set_active()));for(const t of this.tools)this.connect(t.properties.active.change,(()=>{this.active=t.active}))}doit(){for(const t of this.tools)t.do.emit()}set_active(){for(const t of this.tools)t.active=this.active}get menu(){const{menu:t}=this.tools[0];if(null==t)return null;const o=[];for(const[e,n]of a.enumerate(t))if(null==e)o.push(null);else{const t=()=>{var t,o;for(const e of this.tools)null===(o=null===(t=e.menu)||void 0===t?void 0:t[n])||void 0===o||o.handler()};o.push(Object.assign(Object.assign({},e),{handler:t}))}return o}}e.ToolProxy=u,u.__name__=\"ToolProxy\",u.init_ToolProxy()},\n", " function _(o,t,s,i,e){i();const n=o(20),r=o(9),l=o(13),c=o(248),h=o(235),a=o(392),_=o(319),p=o(221);class f extends c.ToolbarBase{constructor(o){super(o)}static init_ProxyToolbar(){this.define((({Array:o,Ref:t})=>({toolbars:[o(t(h.Toolbar)),[]]})))}initialize(){super.initialize(),this._merge_tools()}_merge_tools(){this._proxied_tools=[];const o={},t={},s={},i=[],e=[];for(const o of this.help)r.includes(e,o.redirect)||(i.push(o),e.push(o.redirect));this._proxied_tools.push(...i),this.help=i;for(const[o,t]of l.entries(this.gestures)){o in s||(s[o]={});for(const i of t.tools)i.type in s[o]||(s[o][i.type]=[]),s[o][i.type].push(i)}for(const t of this.inspectors)t.type in o||(o[t.type]=[]),o[t.type].push(t);for(const o of this.actions)o.type in t||(t[o.type]=[]),t[o.type].push(o);const n=(o,t=!1)=>{const s=new a.ToolProxy({tools:o,active:t});return this._proxied_tools.push(s),s};for(const o of l.keys(s)){const t=this.gestures[o];t.tools=[];for(const i of l.keys(s[o])){const e=s[o][i];if(e.length>0)if(\"multi\"==o)for(const o of e){const s=n([o]);t.tools.push(s),this.connect(s.properties.active.change,(()=>this._active_change(s)))}else{const o=n(e);t.tools.push(o),this.connect(o.properties.active.change,(()=>this._active_change(o)))}}}this.actions=[];for(const[o,s]of l.entries(t))if(\"CustomAction\"==o)for(const o of s)this.actions.push(n([o]));else s.length>0&&this.actions.push(n(s));this.inspectors=[];for(const t of l.values(o))t.length>0&&this.inspectors.push(n(t,!0));for(const[o,t]of l.entries(this.gestures))0!=t.tools.length&&(t.tools=r.sort_by(t.tools,(o=>o.default_order)),\"pinch\"!=o&&\"scroll\"!=o&&\"multi\"!=o&&(t.tools[0].active=!0))}}s.ProxyToolbar=f,f.__name__=\"ProxyToolbar\",f.init_ProxyToolbar();class u extends _.LayoutDOMView{initialize(){this.model.toolbar.toolbar_location=this.model.toolbar_location,super.initialize()}get child_models(){return[this.model.toolbar]}_update_layout(){this.layout=new p.ContentBox(this.child_views[0].el);const{toolbar:o}=this.model;o.horizontal?this.layout.set_sizing({width_policy:\"fit\",min_width:100,height_policy:\"fixed\"}):this.layout.set_sizing({width_policy:\"fixed\",height_policy:\"fit\",min_height:100})}}s.ToolbarBoxView=u,u.__name__=\"ToolbarBoxView\";class y extends _.LayoutDOM{constructor(o){super(o)}static init_ToolbarBox(){this.prototype.default_view=u,this.define((({Ref:o})=>({toolbar:[o(c.ToolbarBase)],toolbar_location:[n.Location,\"right\"]})))}}s.ToolbarBox=y,y.__name__=\"ToolbarBox\",y.init_ToolbarBox()},\n", " function _(e,n,r,t,o){t();const s=e(1),u=e(53),c=s.__importStar(e(21)),a=e(8),l=e(13);r.resolve_defs=function(e,n){var r,t,o,s;function i(e){return null!=e.module?`${e.module}.${e.name}`:e.name}function f(e){if(a.isString(e))switch(e){case\"Any\":return c.Any;case\"Unknown\":return c.Unknown;case\"Boolean\":return c.Boolean;case\"Number\":return c.Number;case\"Int\":return c.Int;case\"String\":return c.String;case\"Null\":return c.Null}else switch(e[0]){case\"Nullable\":{const[,n]=e;return c.Nullable(f(n))}case\"Or\":{const[,...n]=e;return c.Or(...n.map(f))}case\"Tuple\":{const[,n,...r]=e;return c.Tuple(f(n),...r.map(f))}case\"Array\":{const[,n]=e;return c.Array(f(n))}case\"Struct\":{const[,...n]=e,r=n.map((([e,n])=>[e,f(n)]));return c.Struct(l.to_object(r))}case\"Dict\":{const[,n]=e;return c.Dict(f(n))}case\"Map\":{const[,n,r]=e;return c.Map(f(n),f(r))}case\"Enum\":{const[,...n]=e;return c.Enum(...n)}case\"Ref\":{const[,r]=e,t=n.get(i(r));if(null!=t)return c.Ref(t);throw new Error(`${i(r)} wasn't defined before referencing it`)}case\"AnyRef\":return c.AnyRef()}}for(const c of e){const e=(()=>{if(null==c.extends)return u.Model;{const e=n.get(i(c.extends));if(null!=e)return e;throw new Error(`base model ${i(c.extends)} of ${i(c)} is not defined`)}})(),a=((s=class extends e{}).__name__=c.name,s.__module__=c.module,s);for(const e of null!==(r=c.properties)&&void 0!==r?r:[]){const n=f(null!==(t=e.kind)&&void 0!==t?t:\"Unknown\");a.define({[e.name]:[n,e.default]})}for(const e of null!==(o=c.overrides)&&void 0!==o?o:[])a.override({[e.name]:e.default});n.register(a)}}},\n", " function _(n,e,t,o,i){o();const d=n(5),c=n(240),s=n(122),a=n(43),l=n(396);t.index={},t.add_document_standalone=async function(n,e,o=[],i=!1){const u=new Map;async function f(i){let d;const f=n.roots().indexOf(i),r=o[f];null!=r?d=r:e.classList.contains(l.BOKEH_ROOT)?d=e:(d=a.div({class:l.BOKEH_ROOT}),e.appendChild(d));const w=await s.build_view(i,{parent:null});return w instanceof c.DOMView&&w.renderTo(d),u.set(i,w),t.index[i.id]=w,w}for(const e of n.roots())await f(e);return i&&(window.document.title=n.title()),n.on_change((n=>{n instanceof d.RootAddedEvent?f(n.model):n instanceof d.RootRemovedEvent?function(n){const e=u.get(n);null!=e&&(e.remove(),u.delete(n),delete t.index[n.id])}(n.model):i&&n instanceof d.TitleChangedEvent&&(window.document.title=n.title)})),[...u.values()]}},\n", " function _(o,e,n,t,r){t();const l=o(43),d=o(44);function u(o){let e=document.getElementById(o);if(null==e)throw new Error(`Error rendering Bokeh model: could not find #${o} HTML tag`);if(!document.body.contains(e))throw new Error(`Error rendering Bokeh model: element #${o} must be under <body>`);if(\"SCRIPT\"==e.tagName){const o=l.div({class:n.BOKEH_ROOT});l.replaceWith(e,o),e=o}return e}n.BOKEH_ROOT=d.root,n._resolve_element=function(o){const{elementid:e}=o;return null!=e?u(e):document.body},n._resolve_root_elements=function(o){const e=[];if(null!=o.root_ids&&null!=o.roots)for(const n of o.root_ids)e.push(u(o.roots[n]));return e}},\n", " function _(n,o,t,s,e){s();const c=n(398),r=n(19),a=n(395);t._get_ws_url=function(n,o){let t,s=\"ws:\";return\"https:\"==window.location.protocol&&(s=\"wss:\"),null!=o?(t=document.createElement(\"a\"),t.href=o):t=window.location,null!=n?\"/\"==n&&(n=\"\"):n=t.pathname.replace(/\\/+$/,\"\"),s+\"//\"+t.host+n+\"/ws\"};const i={};t.add_document_from_session=async function(n,o,t,s=[],e=!1){const l=window.location.search.substr(1);let d;try{d=await function(n,o,t){const s=c.parse_token(o).session_id;n in i||(i[n]={});const e=i[n];return s in e||(e[s]=c.pull_session(n,o,t)),e[s]}(n,o,l)}catch(n){const t=c.parse_token(o).session_id;throw r.logger.error(`Failed to load Bokeh session ${t}: ${n}`),n}return a.add_document_standalone(d.document,t,s,e)}},\n", " function _(e,s,n,t,o){t();const r=e(19),i=e(5),c=e(399),l=e(400),_=e(401);n.DEFAULT_SERVER_WEBSOCKET_URL=\"ws://localhost:5006/ws\",n.DEFAULT_TOKEN=\"eyJzZXNzaW9uX2lkIjogImRlZmF1bHQifQ\";let h=0;function a(e){let s=e.split(\".\")[0];const n=s.length%4;return 0!=n&&(s+=\"=\".repeat(4-n)),JSON.parse(atob(s.replace(/_/g,\"/\").replace(/-/g,\"+\")))}n.parse_token=a;class d{constructor(e=n.DEFAULT_SERVER_WEBSOCKET_URL,s=n.DEFAULT_TOKEN,t=null){this.url=e,this.token=s,this.args_string=t,this._number=h++,this.socket=null,this.session=null,this.closed_permanently=!1,this._current_handler=null,this._pending_replies=new Map,this._pending_messages=[],this._receiver=new l.Receiver,this.id=a(s).session_id.split(\".\")[0],r.logger.debug(`Creating websocket ${this._number} to '${this.url}' session '${this.id}'`)}async connect(){if(this.closed_permanently)throw new Error(\"Cannot connect() a closed ClientConnection\");if(null!=this.socket)throw new Error(\"Already connected\");this._current_handler=null,this._pending_replies.clear(),this._pending_messages=[];try{let e=`${this.url}`;return null!=this.args_string&&this.args_string.length>0&&(e+=`?${this.args_string}`),this.socket=new WebSocket(e,[\"bokeh\",this.token]),new Promise(((e,s)=>{this.socket.binaryType=\"arraybuffer\",this.socket.onopen=()=>this._on_open(e,s),this.socket.onmessage=e=>this._on_message(e),this.socket.onclose=e=>this._on_close(e,s),this.socket.onerror=()=>this._on_error(s)}))}catch(e){throw r.logger.error(`websocket creation failed to url: ${this.url}`),r.logger.error(` - ${e}`),e}}close(){this.closed_permanently||(r.logger.debug(`Permanently closing websocket connection ${this._number}`),this.closed_permanently=!0,null!=this.socket&&this.socket.close(1e3,`close method called on ClientConnection ${this._number}`),this.session._connection_closed())}_schedule_reconnect(e){setTimeout((()=>{this.closed_permanently||r.logger.info(`Websocket connection ${this._number} disconnected, will not attempt to reconnect`)}),e)}send(e){if(null==this.socket)throw new Error(`not connected so cannot send ${e}`);e.send(this.socket)}async send_with_reply(e){const s=await new Promise(((s,n)=>{this._pending_replies.set(e.msgid(),{resolve:s,reject:n}),this.send(e)}));if(\"ERROR\"===s.msgtype())throw new Error(`Error reply ${s.content.text}`);return s}async _pull_doc_json(){const e=c.Message.create(\"PULL-DOC-REQ\",{}),s=await this.send_with_reply(e);if(!(\"doc\"in s.content))throw new Error(\"No 'doc' field in PULL-DOC-REPLY\");return s.content.doc}async _repull_session_doc(e,s){var n;r.logger.debug(this.session?\"Repulling session\":\"Pulling session for first time\");try{const n=await this._pull_doc_json();if(null==this.session)if(this.closed_permanently)r.logger.debug(\"Got new document after connection was already closed\"),s(new Error(\"The connection has been closed\"));else{const s=i.Document.from_json(n),t=i.Document._compute_patch_since_json(n,s);if(t.events.length>0){r.logger.debug(`Sending ${t.events.length} changes from model construction back to server`);const e=c.Message.create(\"PATCH-DOC\",{},t);this.send(e)}this.session=new _.ClientSession(this,s,this.id);for(const e of this._pending_messages)this.session.handle(e);this._pending_messages=[],r.logger.debug(\"Created a new session from new pulled doc\"),e(this.session)}else this.session.document.replace_with_json(n),r.logger.debug(\"Updated existing session with new pulled doc\")}catch(e){null===(n=console.trace)||void 0===n||n.call(console,e),r.logger.error(`Failed to repull session ${e}`),s(e instanceof Error?e:`${e}`)}}_on_open(e,s){r.logger.info(`Websocket connection ${this._number} is now open`),this._current_handler=n=>{this._awaiting_ack_handler(n,e,s)}}_on_message(e){null==this._current_handler&&r.logger.error(\"Got a message with no current handler set\");try{this._receiver.consume(e.data)}catch(e){this._close_bad_protocol(`${e}`)}const s=this._receiver.message;if(null!=s){const e=s.problem();null!=e&&this._close_bad_protocol(e),this._current_handler(s)}}_on_close(e,s){r.logger.info(`Lost websocket ${this._number} connection, ${e.code} (${e.reason})`),this.socket=null,this._pending_replies.forEach((e=>e.reject(\"Disconnected\"))),this._pending_replies.clear(),this.closed_permanently||this._schedule_reconnect(2e3),s(new Error(`Lost websocket connection, ${e.code} (${e.reason})`))}_on_error(e){r.logger.debug(`Websocket error on socket ${this._number}`);const s=\"Could not open websocket\";r.logger.error(`Failed to connect to Bokeh server: ${s}`),e(new Error(s))}_close_bad_protocol(e){r.logger.error(`Closing connection: ${e}`),null!=this.socket&&this.socket.close(1002,e)}_awaiting_ack_handler(e,s,n){\"ACK\"===e.msgtype()?(this._current_handler=e=>this._steady_state_handler(e),this._repull_session_doc(s,n)):this._close_bad_protocol(\"First message was not an ACK\")}_steady_state_handler(e){const s=e.reqid(),n=this._pending_replies.get(s);n?(this._pending_replies.delete(s),n.resolve(e)):this.session?this.session.handle(e):\"PATCH-DOC\"!=e.msgtype()&&this._pending_messages.push(e)}}n.ClientConnection=d,d.__name__=\"ClientConnection\",n.pull_session=function(e,s,n){return new d(e,s,n).connect()}},\n", " function _(e,s,t,r,n){r();const i=e(34);class a{constructor(e,s,t){this.header=e,this.metadata=s,this.content=t,this.buffers=new Map}static assemble(e,s,t){const r=JSON.parse(e),n=JSON.parse(s),i=JSON.parse(t);return new a(r,n,i)}assemble_buffer(e,s){const t=null!=this.header.num_buffers?this.header.num_buffers:0;if(t<=this.buffers.size)throw new Error(`too many buffers received, expecting ${t}`);const{id:r}=JSON.parse(e);this.buffers.set(r,s)}static create(e,s,t={}){const r=a.create_header(e);return new a(r,s,t)}static create_header(e){return{msgid:i.uniqueId(),msgtype:e}}complete(){return null!=this.header&&null!=this.metadata&&null!=this.content&&(null==this.header.num_buffers||this.buffers.size==this.header.num_buffers)}send(e){if((null!=this.header.num_buffers?this.header.num_buffers:0)>0)throw new Error(\"BokehJS only supports receiving buffers, not sending\");const s=JSON.stringify(this.header),t=JSON.stringify(this.metadata),r=JSON.stringify(this.content);e.send(s),e.send(t),e.send(r)}msgid(){return this.header.msgid}msgtype(){return this.header.msgtype}reqid(){return this.header.reqid}problem(){return\"msgid\"in this.header?\"msgtype\"in this.header?null:\"No msgtype in header\":\"No msgid in header\"}}t.Message=a,a.__name__=\"Message\"},\n", " function _(e,t,s,_,r){_();const i=e(399),h=e(8);class a{constructor(){this.message=null,this._partial=null,this._fragments=[],this._buf_header=null,this._current_consumer=this._HEADER}consume(e){this._current_consumer(e)}_HEADER(e){this._assume_text(e),this.message=null,this._partial=null,this._fragments=[e],this._buf_header=null,this._current_consumer=this._METADATA}_METADATA(e){this._assume_text(e),this._fragments.push(e),this._current_consumer=this._CONTENT}_CONTENT(e){this._assume_text(e),this._fragments.push(e);const[t,s,_]=this._fragments.slice(0,3);this._partial=i.Message.assemble(t,s,_),this._check_complete()}_BUFFER_HEADER(e){this._assume_text(e),this._buf_header=e,this._current_consumer=this._BUFFER_PAYLOAD}_BUFFER_PAYLOAD(e){this._assume_binary(e),this._partial.assemble_buffer(this._buf_header,e),this._check_complete()}_assume_text(e){if(!h.isString(e))throw new Error(\"Expected text fragment but received binary fragment\")}_assume_binary(e){if(!(e instanceof ArrayBuffer))throw new Error(\"Expected binary fragment but received text fragment\")}_check_complete(){this._partial.complete()?(this.message=this._partial,this._current_consumer=this._HEADER):this._current_consumer=this._BUFFER_HEADER}}s.Receiver=a,a.__name__=\"Receiver\"},\n", " function _(e,t,n,s,o){s();const c=e(5),i=e(399),_=e(19);class r{constructor(e,t,n){this._connection=e,this.document=t,this.id=n,this._document_listener=e=>{this._document_changed(e)},this.document.on_change(this._document_listener,!0)}handle(e){const t=e.msgtype();\"PATCH-DOC\"===t?this._handle_patch(e):\"OK\"===t?this._handle_ok(e):\"ERROR\"===t?this._handle_error(e):_.logger.debug(`Doing nothing with message ${e.msgtype()}`)}close(){this._connection.close()}_connection_closed(){this.document.remove_on_change(this._document_listener)}async request_server_info(){const e=i.Message.create(\"SERVER-INFO-REQ\",{});return(await this._connection.send_with_reply(e)).content}async force_roundtrip(){await this.request_server_info()}_document_changed(e){if(e.setter_id===this.id)return;const t=e instanceof c.DocumentEventBatch?e.events:[e],n=this.document.create_json_patch(t),s=i.Message.create(\"PATCH-DOC\",{},n);this._connection.send(s)}_handle_patch(e){this.document.apply_json_patch(e.content,e.buffers,this.id)}_handle_ok(e){_.logger.trace(`Unhandled OK reply to ${e.reqid()}`)}_handle_error(e){_.logger.error(`Unhandled ERROR reply to ${e.reqid()}: ${e.content.text}`)}}n.ClientSession=r,r.__name__=\"ClientSession\"},\n", " function _(e,o,t,n,r){n();const s=e(1),l=e(5),i=e(400),a=e(19),c=e(43),g=e(13),f=e(395),u=e(396),m=s.__importDefault(e(44)),p=s.__importDefault(e(253)),d=s.__importDefault(e(403));function _(e,o){o.buffers.length>0?e.consume(o.buffers[0].buffer):e.consume(o.content.data);const t=e.message;null!=t&&this.apply_json_patch(t.content,t.buffers)}function b(e,o){if(\"undefined\"!=typeof Jupyter&&null!=Jupyter.notebook.kernel){a.logger.info(`Registering Jupyter comms for target ${e}`);const t=Jupyter.notebook.kernel.comm_manager;try{t.register_target(e,(t=>{a.logger.info(`Registering Jupyter comms for target ${e}`);const n=new i.Receiver;t.on_msg(_.bind(o,n))}))}catch(e){a.logger.warn(`Jupyter comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else if(o.roots()[0].id in t.kernels){a.logger.info(`Registering JupyterLab comms for target ${e}`);const n=t.kernels[o.roots()[0].id];try{n.registerCommTarget(e,(t=>{a.logger.info(`Registering JupyterLab comms for target ${e}`);const n=new i.Receiver;t.onMsg=_.bind(o,n)}))}catch(e){a.logger.warn(`Jupyter comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else if(\"undefined\"!=typeof google&&null!=google.colab.kernel){a.logger.info(`Registering Google Colab comms for target ${e}`);const t=google.colab.kernel.comms;try{t.registerTarget(e,(async t=>{var n,r,l;a.logger.info(`Registering Google Colab comms for target ${e}`);const c=new i.Receiver;try{for(var g,f=s.__asyncValues(t.messages);!(g=await f.next()).done;){const e=g.value,t={data:e.data},n=[];for(const o of null!==(l=e.buffers)&&void 0!==l?l:[])n.push(new DataView(o));const r={content:t,buffers:n};_.bind(o)(c,r)}}catch(e){n={error:e}}finally{try{g&&!g.done&&(r=f.return)&&await r.call(f)}finally{if(n)throw n.error}}}))}catch(e){a.logger.warn(`Google Colab comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else console.warn(\"Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest @bokeh/jupyter_bokeh extension is installed. In an exported notebook this warning is expected.\")}c.stylesheet.append(m.default),c.stylesheet.append(p.default),c.stylesheet.append(d.default),t.kernels={},t.embed_items_notebook=function(e,o){if(1!=g.size(e))throw new Error(\"embed_items_notebook expects exactly one document in docs_json\");const t=l.Document.from_json(g.values(e)[0]);for(const e of o){null!=e.notebook_comms_target&&b(e.notebook_comms_target,t);const o=u._resolve_element(e),n=u._resolve_root_elements(e);f.add_document_standalone(t,o,n)}}},\n", " function _(t,o,r,e,d){e(),r.root=\"bk-root\",r.tooltip=\"bk-tooltip\",r.default=\".rendered_html .bk-root .bk-tooltip table,.rendered_html .bk-root .bk-tooltip tr,.rendered_html .bk-root .bk-tooltip th,.rendered_html .bk-root .bk-tooltip td{border:none;padding:1px;}\"},\n", " function _(t,_,o,r,n){r();const a=t(1);a.__exportStar(t(399),o),a.__exportStar(t(400),o)},\n", " function _(e,t,n,s,o){function l(){const e=document.getElementsByTagName(\"body\")[0],t=document.getElementsByClassName(\"bokeh-test-div\");1==t.length&&(e.removeChild(t[0]),delete t[0]);const n=document.createElement(\"div\");n.classList.add(\"bokeh-test-div\"),n.style.display=\"none\",e.insertBefore(n,e.firstChild)}s(),n.results={},n.init=function(){l()},n.record0=function(e,t){n.results[e]=t},n.record=function(e,t){n.results[e]=t,l()},n.count=function(e){null==n.results[e]&&(n.results[e]=0),n.results[e]+=1,l()}},\n", " function _(e,t,o,n,l){n(),o.safely=function(e,t=!1){try{return e()}catch(e){if(function(e){const t=document.createElement(\"div\");t.style.backgroundColor=\"#f2dede\",t.style.border=\"1px solid #a94442\",t.style.borderRadius=\"4px\",t.style.display=\"inline-block\",t.style.fontFamily=\"sans-serif\",t.style.marginTop=\"5px\",t.style.minWidth=\"200px\",t.style.padding=\"5px 5px 5px 10px\",t.classList.add(\"bokeh-error-box-into-flames\");const o=document.createElement(\"span\");o.style.backgroundColor=\"#a94442\",o.style.borderRadius=\"0px 4px 0px 0px\",o.style.color=\"white\",o.style.cursor=\"pointer\",o.style.cssFloat=\"right\",o.style.fontSize=\"0.8em\",o.style.margin=\"-6px -6px 0px 0px\",o.style.padding=\"2px 5px 4px 5px\",o.title=\"close\",o.setAttribute(\"aria-label\",\"close\"),o.appendChild(document.createTextNode(\"x\")),o.addEventListener(\"click\",(()=>s.removeChild(t)));const n=document.createElement(\"h3\");n.style.color=\"#a94442\",n.style.margin=\"8px 0px 0px 0px\",n.style.padding=\"0px\",n.appendChild(document.createTextNode(\"Bokeh Error\"));const l=document.createElement(\"pre\");l.style.whiteSpace=\"unset\",l.style.overflowX=\"auto\",l.appendChild(document.createTextNode(e)),t.appendChild(o),t.appendChild(n),t.appendChild(l);const s=document.getElementsByTagName(\"body\")[0];s.insertBefore(t,s.firstChild)}(e instanceof Error&&e.stack?e.stack:`${e}`),t)return;throw e}}},\n", " ], 0, {\"main\":0,\"tslib\":1,\"index\":2,\"version\":3,\"embed/index\":4,\"document/index\":5,\"document/document\":6,\"base\":7,\"core/util/types\":8,\"core/util/array\":9,\"core/util/math\":10,\"core/util/assert\":11,\"core/util/arrayable\":12,\"core/util/object\":13,\"core/has_props\":14,\"core/signaling\":15,\"core/util/defer\":16,\"core/util/refs\":17,\"core/properties\":18,\"core/logging\":19,\"core/enums\":20,\"core/kinds\":21,\"core/util/color\":22,\"core/util/svg_colors\":23,\"core/types\":24,\"core/util/bitset\":25,\"core/util/eq\":26,\"core/util/platform\":27,\"core/settings\":28,\"core/util/ndarray\":29,\"core/serializer\":30,\"core/util/serialization\":31,\"core/util/buffer\":32,\"core/uniforms\":33,\"core/util/string\":34,\"document/events\":35,\"core/util/pretty\":36,\"core/util/cloneable\":37,\"models/index\":38,\"models/annotations/index\":39,\"models/annotations/annotation\":40,\"models/renderers/renderer\":41,\"core/view\":42,\"core/dom\":43,\"styles/root.css\":44,\"core/visuals/index\":45,\"core/visuals/line\":46,\"core/visuals/visual\":47,\"core/property_mixins\":48,\"core/visuals/fill\":49,\"core/visuals/text\":50,\"core/visuals/hatch\":51,\"core/visuals/patterns\":52,\"model\":53,\"models/canvas/coordinates\":54,\"models/annotations/arrow\":55,\"models/annotations/data_annotation\":56,\"models/sources/columnar_data_source\":57,\"models/sources/data_source\":58,\"models/selections/selection\":59,\"core/selection_manager\":60,\"models/renderers/glyph_renderer\":61,\"models/renderers/data_renderer\":62,\"models/glyphs/line\":63,\"models/glyphs/xy_glyph\":64,\"core/util/projections\":65,\"models/glyphs/glyph\":98,\"core/util/bbox\":99,\"core/util/ragged_array\":100,\"core/util/spatial\":101,\"models/ranges/factor_range\":104,\"models/ranges/range\":105,\"models/glyphs/utils\":106,\"core/hittest\":107,\"models/glyphs/webgl/line\":108,\"models/glyphs/webgl/utils/index\":109,\"models/glyphs/webgl/utils/program\":110,\"models/glyphs/webgl/utils/buffer\":111,\"models/glyphs/webgl/utils/texture\":112,\"models/glyphs/webgl/base\":113,\"models/glyphs/webgl/line.vert\":114,\"models/glyphs/webgl/line.frag\":115,\"models/glyphs/patch\":116,\"models/glyphs/harea\":117,\"models/glyphs/area\":118,\"models/glyphs/varea\":119,\"models/sources/cds_view\":120,\"models/filters/filter\":121,\"core/build_views\":122,\"models/renderers/graph_renderer\":123,\"models/expressions/expression\":124,\"models/graphs/layout_provider\":125,\"models/graphs/graph_hit_test_policy\":126,\"models/glyphs/multi_line\":127,\"models/glyphs/patches\":128,\"models/selections/interaction_policy\":129,\"models/sources/column_data_source\":130,\"core/util/typed_array\":131,\"core/util/set\":132,\"models/annotations/arrow_head\":133,\"models/annotations/band\":134,\"models/annotations/upper_lower\":135,\"models/annotations/box_annotation\":136,\"models/annotations/color_bar\":137,\"models/annotations/title\":138,\"models/annotations/text_annotation\":139,\"core/layout/side_panel\":140,\"core/layout/types\":141,\"core/layout/layoutable\":142,\"core/util/text\":143,\"models/canvas/cartesian_frame\":144,\"models/scales/categorical_scale\":145,\"models/scales/scale\":146,\"models/transforms/index\":147,\"models/transforms/customjs_transform\":148,\"models/transforms/transform\":149,\"models/transforms/dodge\":150,\"models/transforms/range_transform\":151,\"models/transforms/interpolator\":152,\"models/transforms/jitter\":153,\"models/transforms/linear_interpolator\":154,\"models/transforms/step_interpolator\":155,\"models/ranges/range1d\":156,\"models/scales/log_scale\":157,\"models/scales/continuous_scale\":158,\"models/ranges/data_range1d\":159,\"models/ranges/data_range\":160,\"models/util\":161,\"models/axes/index\":162,\"models/axes/axis\":163,\"models/renderers/guide_renderer\":164,\"models/tickers/ticker\":165,\"models/formatters/tick_formatter\":166,\"core/graphics\":167,\"core/util/affine\":168,\"models/policies/labeling\":169,\"models/axes/categorical_axis\":170,\"models/tickers/categorical_ticker\":171,\"models/formatters/categorical_tick_formatter\":172,\"models/axes/continuous_axis\":173,\"models/axes/datetime_axis\":174,\"models/axes/linear_axis\":175,\"models/formatters/basic_tick_formatter\":176,\"models/tickers/basic_ticker\":177,\"models/tickers/adaptive_ticker\":178,\"models/tickers/continuous_ticker\":179,\"models/formatters/datetime_tick_formatter\":180,\"core/util/templating\":182,\"models/tickers/datetime_ticker\":185,\"models/tickers/composite_ticker\":186,\"models/tickers/days_ticker\":187,\"models/tickers/single_interval_ticker\":188,\"models/tickers/util\":189,\"models/tickers/months_ticker\":190,\"models/tickers/years_ticker\":191,\"models/axes/log_axis\":192,\"models/formatters/log_tick_formatter\":193,\"models/tickers/log_ticker\":194,\"models/axes/mercator_axis\":195,\"models/formatters/mercator_tick_formatter\":196,\"models/tickers/mercator_ticker\":197,\"models/tickers/index\":198,\"models/tickers/fixed_ticker\":199,\"models/tickers/binned_ticker\":200,\"models/mappers/scanning_color_mapper\":201,\"models/mappers/continuous_color_mapper\":202,\"models/mappers/color_mapper\":203,\"models/mappers/mapper\":204,\"models/formatters/index\":205,\"models/formatters/func_tick_formatter\":206,\"models/formatters/numeral_tick_formatter\":207,\"models/formatters/printf_tick_formatter\":208,\"models/mappers/index\":209,\"models/mappers/categorical_color_mapper\":210,\"models/mappers/categorical_mapper\":211,\"models/mappers/categorical_marker_mapper\":212,\"models/mappers/categorical_pattern_mapper\":213,\"models/mappers/linear_color_mapper\":214,\"models/mappers/log_color_mapper\":215,\"models/mappers/eqhist_color_mapper\":216,\"models/scales/index\":217,\"models/scales/linear_scale\":218,\"models/scales/linear_interpolation_scale\":219,\"models/ranges/index\":220,\"core/layout/index\":221,\"core/layout/alignments\":222,\"core/layout/grid\":223,\"core/layout/html\":224,\"core/layout/border\":225,\"models/annotations/label\":226,\"models/annotations/label_set\":227,\"models/annotations/legend\":228,\"models/annotations/legend_item\":229,\"core/vectorization\":230,\"models/annotations/poly_annotation\":231,\"models/annotations/slope\":232,\"models/annotations/span\":233,\"models/annotations/toolbar_panel\":234,\"models/tools/toolbar\":235,\"models/tools/tool\":236,\"models/tools/gestures/gesture_tool\":237,\"models/tools/button_tool\":238,\"core/dom_view\":240,\"styles/toolbar.css\":241,\"styles/icons.css\":242,\"styles/menus.css\":243,\"core/util/menus\":244,\"core/util/iterator\":245,\"models/tools/on_off_button\":246,\"models/tools/inspectors/inspect_tool\":247,\"models/tools/toolbar_base\":248,\"core/util/canvas\":249,\"core/util/svg\":250,\"models/tools/actions/action_tool\":251,\"models/tools/actions/help_tool\":252,\"styles/logo.css\":253,\"models/annotations/tooltip\":254,\"styles/tooltips.css\":255,\"models/annotations/whisker\":256,\"models/callbacks/index\":257,\"models/callbacks/customjs\":258,\"models/callbacks/callback\":259,\"models/callbacks/open_url\":260,\"models/canvas/index\":261,\"models/canvas/canvas\":262,\"core/ui_events\":263,\"core/bokeh_events\":264,\"core/util/wheel\":265,\"models/expressions/index\":266,\"models/expressions/customjs_expr\":267,\"models/expressions/stack\":268,\"models/expressions/cumsum\":269,\"models/expressions/minimum\":270,\"models/expressions/maximum\":271,\"models/filters/index\":272,\"models/filters/boolean_filter\":273,\"models/filters/customjs_filter\":274,\"models/filters/group_filter\":275,\"models/filters/index_filter\":276,\"models/glyphs/index\":277,\"models/glyphs/annular_wedge\":278,\"models/glyphs/annulus\":279,\"models/glyphs/arc\":280,\"models/glyphs/bezier\":281,\"models/glyphs/circle\":282,\"models/glyphs/webgl/markers\":283,\"models/glyphs/webgl/markers.vert\":284,\"models/glyphs/webgl/markers.frag\":285,\"models/glyphs/ellipse\":286,\"models/glyphs/ellipse_oval\":287,\"models/glyphs/center_rotatable\":288,\"models/glyphs/hbar\":289,\"models/glyphs/box\":290,\"models/glyphs/hex_tile\":291,\"models/glyphs/image\":292,\"models/glyphs/image_base\":293,\"models/glyphs/image_rgba\":294,\"models/glyphs/image_url\":295,\"core/util/image\":296,\"models/glyphs/multi_polygons\":297,\"models/glyphs/oval\":298,\"models/glyphs/quad\":299,\"models/glyphs/quadratic\":300,\"models/glyphs/ray\":301,\"models/glyphs/rect\":302,\"models/glyphs/scatter\":303,\"models/glyphs/marker\":304,\"models/glyphs/defs\":305,\"models/glyphs/segment\":306,\"models/glyphs/spline\":307,\"core/util/interpolation\":308,\"models/glyphs/step\":309,\"models/glyphs/text\":310,\"models/glyphs/vbar\":311,\"models/glyphs/wedge\":312,\"models/graphs/index\":313,\"models/graphs/static_layout_provider\":314,\"models/grids/index\":315,\"models/grids/grid\":316,\"models/layouts/index\":317,\"models/layouts/box\":318,\"models/layouts/layout_dom\":319,\"models/layouts/column\":320,\"models/layouts/grid_box\":321,\"models/layouts/html_box\":322,\"models/layouts/panel\":323,\"models/layouts/row\":324,\"models/layouts/spacer\":325,\"models/layouts/tabs\":326,\"styles/tabs.css\":327,\"styles/buttons.css\":328,\"models/layouts/widget_box\":329,\"models/plots/index\":330,\"models/plots/gmap_plot\":331,\"models/plots/plot\":332,\"models/plots/plot_canvas\":333,\"core/util/throttle\":334,\"models/plots/range_manager\":335,\"models/plots/state_manager\":336,\"models/plots/gmap_plot_canvas\":337,\"models/policies/index\":338,\"models/renderers/index\":339,\"models/selections/index\":340,\"models/sources/index\":341,\"models/sources/server_sent_data_source\":342,\"models/sources/web_data_source\":343,\"models/sources/ajax_data_source\":344,\"models/sources/geojson_data_source\":345,\"models/tiles/index\":346,\"models/tiles/bbox_tile_source\":347,\"models/tiles/mercator_tile_source\":348,\"models/tiles/tile_source\":349,\"models/tiles/tile_utils\":350,\"models/tiles/quadkey_tile_source\":351,\"models/tiles/tile_renderer\":352,\"models/tiles/wmts_tile_source\":353,\"styles/tiles.css\":354,\"models/tiles/tms_tile_source\":355,\"models/textures/index\":356,\"models/textures/canvas_texture\":357,\"models/textures/texture\":358,\"models/textures/image_url_texture\":359,\"models/tools/index\":360,\"models/tools/actions/custom_action\":361,\"models/tools/actions/redo_tool\":362,\"models/tools/actions/reset_tool\":363,\"models/tools/actions/save_tool\":364,\"models/tools/actions/undo_tool\":365,\"models/tools/actions/zoom_in_tool\":366,\"models/tools/actions/zoom_base_tool\":367,\"core/util/zoom\":368,\"models/tools/actions/zoom_out_tool\":369,\"models/tools/edit/edit_tool\":370,\"models/tools/edit/box_edit_tool\":371,\"models/tools/edit/freehand_draw_tool\":372,\"models/tools/edit/point_draw_tool\":373,\"models/tools/edit/poly_draw_tool\":374,\"models/tools/edit/poly_tool\":375,\"models/tools/edit/poly_edit_tool\":376,\"models/tools/gestures/box_select_tool\":377,\"models/tools/gestures/select_tool\":378,\"models/tools/gestures/box_zoom_tool\":379,\"models/tools/gestures/lasso_select_tool\":380,\"models/tools/gestures/poly_select_tool\":381,\"models/tools/edit/line_edit_tool\":382,\"models/tools/edit/line_tool\":383,\"models/tools/gestures/pan_tool\":384,\"models/tools/gestures/range_tool\":385,\"models/tools/gestures/tap_tool\":386,\"models/tools/gestures/wheel_pan_tool\":387,\"models/tools/gestures/wheel_zoom_tool\":388,\"models/tools/inspectors/crosshair_tool\":389,\"models/tools/inspectors/customjs_hover\":390,\"models/tools/inspectors/hover_tool\":391,\"models/tools/tool_proxy\":392,\"models/tools/toolbar_box\":393,\"document/defs\":394,\"embed/standalone\":395,\"embed/dom\":396,\"embed/server\":397,\"client/connection\":398,\"protocol/message\":399,\"protocol/receiver\":400,\"client/session\":401,\"embed/notebook\":402,\"styles/notebook.css\":403,\"protocol/index\":404,\"testing\":405,\"safely\":406}, {});});\n", "\n", " /* END bokeh.min.js */\n", " },\n", " \n", " function(Bokeh) {\n", " /* BEGIN bokeh-widgets.min.js */\n", " /*!\n", " * Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors\n", " * All rights reserved.\n", " * \n", " * Redistribution and use in source and binary forms, with or without modification,\n", " * are permitted provided that the following conditions are met:\n", " * \n", " * Redistributions of source code must retain the above copyright notice,\n", " * this list of conditions and the following disclaimer.\n", " * \n", " * Redistributions in binary form must reproduce the above copyright notice,\n", " * this list of conditions and the following disclaimer in the documentation\n", " * and/or other materials provided with the distribution.\n", " * \n", " * Neither the name of Anaconda nor the names of any contributors\n", " * may be used to endorse or promote products derived from this software\n", " * without specific prior written permission.\n", " * \n", " * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n", " * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n", " * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n", " * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n", " * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n", " * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n", " * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n", " * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n", " * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n", " * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n", " * THE POSSIBILITY OF SUCH DAMAGE.\n", " */\n", " (function(root, factory) {\n", " factory(root[\"Bokeh\"], \"2.3.3\");\n", " })(this, function(Bokeh, version) {\n", " var define;\n", " return (function(modules, entry, aliases, externals) {\n", " const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n", " if (bokeh != null) {\n", " return bokeh.register_plugin(modules, entry, aliases);\n", " } else {\n", " throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n", " }\n", " })\n", " ({\n", " 417: function _(t,e,i,o,r){o();const s=t(1).__importStar(t(418));i.Widgets=s;t(7).register_models(s)},\n", " 418: function _(t,e,o,r,u){r(),u(\"AbstractButton\",t(419).AbstractButton),u(\"AbstractIcon\",t(422).AbstractIcon),u(\"AutocompleteInput\",t(423).AutocompleteInput),u(\"Button\",t(428).Button),u(\"CheckboxButtonGroup\",t(429).CheckboxButtonGroup),u(\"CheckboxGroup\",t(431).CheckboxGroup),u(\"ColorPicker\",t(433).ColorPicker),u(\"DatePicker\",t(434).DatePicker),u(\"DateRangeSlider\",t(437).DateRangeSlider),u(\"DateSlider\",t(442).DateSlider),u(\"Div\",t(443).Div),u(\"Dropdown\",t(446).Dropdown),u(\"FileInput\",t(447).FileInput),u(\"InputWidget\",t(426).InputWidget),u(\"Markup\",t(444).Markup),u(\"MultiSelect\",t(448).MultiSelect),u(\"Paragraph\",t(449).Paragraph),u(\"PasswordInput\",t(450).PasswordInput),u(\"MultiChoice\",t(451).MultiChoice),u(\"NumericInput\",t(454).NumericInput),u(\"PreText\",t(455).PreText),u(\"RadioButtonGroup\",t(456).RadioButtonGroup),u(\"RadioGroup\",t(457).RadioGroup),u(\"RangeSlider\",t(458).RangeSlider),u(\"Select\",t(459).Select),u(\"Slider\",t(460).Slider),u(\"Spinner\",t(461).Spinner),u(\"TextInput\",t(424).TextInput),u(\"TextAreaInput\",t(462).TextAreaInput),u(\"Toggle\",t(463).Toggle),u(\"Widget\",t(488).Widget)},\n", " 419: function _(t,e,n,i,s){i();const l=t(1),o=t(20),r=t(43),c=t(122),u=t(420),_=t(422),a=l.__importStar(t(328)),b=a;class d extends u.ControlView{*controls(){yield this.button_el}async lazy_initialize(){await super.lazy_initialize();const{icon:t}=this.model;null!=t&&(this.icon_view=await c.build_view(t,{parent:this}))}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.render()))}remove(){null!=this.icon_view&&this.icon_view.remove(),super.remove()}styles(){return[...super.styles(),a.default]}_render_button(...t){return r.button({type:\"button\",disabled:this.model.disabled,class:[b.btn,b[`btn_${this.model.button_type}`]]},...t)}render(){super.render(),this.button_el=this._render_button(this.model.label),this.button_el.addEventListener(\"click\",(()=>this.click())),null!=this.icon_view&&(\"\"!=this.model.label?r.prepend(this.button_el,this.icon_view.el,r.nbsp()):r.prepend(this.button_el,this.icon_view.el),this.icon_view.render()),this.group_el=r.div({class:b.btn_group},this.button_el),this.el.appendChild(this.group_el)}click(){}}n.AbstractButtonView=d,d.__name__=\"AbstractButtonView\";class h extends u.Control{constructor(t){super(t)}static init_AbstractButton(){this.define((({String:t,Ref:e,Nullable:n})=>({label:[t,\"Button\"],icon:[n(e(_.AbstractIcon)),null],button_type:[o.ButtonType,\"default\"]})))}}n.AbstractButton=h,h.__name__=\"AbstractButton\",h.init_AbstractButton()},\n", " 420: function _(t,e,o,s,n){s();const i=t(488),l=t(43);class c extends i.WidgetView{connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.disabled,(()=>{for(const t of this.controls())l.toggle_attribute(t,\"disabled\",this.model.disabled)}))}}o.ControlView=c,c.__name__=\"ControlView\";class r extends i.Widget{constructor(t){super(t)}}o.Control=r,r.__name__=\"Control\"},\n", " 488: function _(i,t,e,o,n){o();const s=i(322),r=i(20);class d extends s.HTMLBoxView{_width_policy(){return\"horizontal\"==this.model.orientation?super._width_policy():\"fixed\"}_height_policy(){return\"horizontal\"==this.model.orientation?\"fixed\":super._height_policy()}box_sizing(){const i=super.box_sizing();return\"horizontal\"==this.model.orientation?null==i.width&&(i.width=this.model.default_size):null==i.height&&(i.height=this.model.default_size),i}}e.WidgetView=d,d.__name__=\"WidgetView\";class _ extends s.HTMLBox{constructor(i){super(i)}static init_Widget(){this.define((({Number:i})=>({orientation:[r.Orientation,\"horizontal\"],default_size:[i,300]}))),this.override({margin:[5,5,5,5]})}}e.Widget=_,_.__name__=\"Widget\",_.init_Widget()},\n", " 422: function _(c,t,s,n,e){n();const o=c(53),_=c(240);class a extends _.DOMView{}s.AbstractIconView=a,a.__name__=\"AbstractIconView\";class r extends o.Model{constructor(c){super(c)}}s.AbstractIcon=r,r.__name__=\"AbstractIcon\"},\n", " 423: function _(e,t,n,i,s){i();const h=e(1),o=e(424),_=e(43),u=e(10),r=h.__importStar(e(243)),c=r;class l extends o.TextInputView{constructor(){super(...arguments),this._open=!1,this._last_value=\"\",this._hover_index=0}styles(){return[...super.styles(),r.default]}render(){super.render(),this.input_el.addEventListener(\"keydown\",(e=>this._keydown(e))),this.input_el.addEventListener(\"keyup\",(e=>this._keyup(e))),this.menu=_.div({class:[c.menu,c.below]}),this.menu.addEventListener(\"click\",(e=>this._menu_click(e))),this.menu.addEventListener(\"mouseover\",(e=>this._menu_hover(e))),this.el.appendChild(this.menu),_.undisplay(this.menu)}change_input(){this._open&&this.menu.children.length>0&&(this.model.value=this.menu.children[this._hover_index].textContent,this.input_el.focus(),this._hide_menu()),this.model.restrict||super.change_input()}_update_completions(e){_.empty(this.menu);for(const t of e){const e=_.div({},t);this.menu.appendChild(e)}e.length>0&&this.menu.children[0].classList.add(c.active)}_show_menu(){if(!this._open){this._open=!0,this._hover_index=0,this._last_value=this.model.value,_.display(this.menu);const e=t=>{const{target:n}=t;n instanceof HTMLElement&&!this.el.contains(n)&&(document.removeEventListener(\"click\",e),this._hide_menu())};document.addEventListener(\"click\",e)}}_hide_menu(){this._open&&(this._open=!1,_.undisplay(this.menu))}_menu_click(e){e.target!=e.currentTarget&&e.target instanceof Element&&(this.model.value=e.target.textContent,this.input_el.focus(),this._hide_menu())}_menu_hover(e){if(e.target!=e.currentTarget&&e.target instanceof Element){let t=0;for(t=0;t<this.menu.children.length&&this.menu.children[t].textContent!=e.target.textContent;t++);this._bump_hover(t)}}_bump_hover(e){const t=this.menu.children.length;this._open&&t>0&&(this.menu.children[this._hover_index].classList.remove(c.active),this._hover_index=u.clamp(e,0,t-1),this.menu.children[this._hover_index].classList.add(c.active))}_keydown(e){}_keyup(e){switch(e.keyCode){case _.Keys.Enter:this.change_input();break;case _.Keys.Esc:this._hide_menu();break;case _.Keys.Up:this._bump_hover(this._hover_index-1);break;case _.Keys.Down:this._bump_hover(this._hover_index+1);break;default:{const e=this.input_el.value;if(e.length<this.model.min_characters)return void this._hide_menu();const t=[],{case_sensitive:n}=this.model;let i;i=n?e=>e:e=>e.toLowerCase();for(const n of this.model.completions)i(n).startsWith(i(e))&&t.push(n);this._update_completions(t),0==t.length?this._hide_menu():this._show_menu()}}}}n.AutocompleteInputView=l,l.__name__=\"AutocompleteInputView\";class a extends o.TextInput{constructor(e){super(e)}static init_AutocompleteInput(){this.prototype.default_view=l,this.define((({Boolean:e,Int:t,String:n,Array:i})=>({completions:[i(n),[]],min_characters:[t,2],case_sensitive:[e,!0],restrict:[e,!0]})))}}n.AutocompleteInput=a,a.__name__=\"AutocompleteInput\",a.init_AutocompleteInput()},\n", " 424: function _(t,e,n,i,p){i();const _=t(1),u=t(425),s=t(43),x=_.__importStar(t(427));class a extends u.TextLikeInputView{_render_input(){this.input_el=s.input({type:\"text\",class:x.input})}}n.TextInputView=a,a.__name__=\"TextInputView\";class c extends u.TextLikeInput{constructor(t){super(t)}static init_TextInput(){this.prototype.default_view=a}}n.TextInput=c,c.__name__=\"TextInput\",c.init_TextInput()},\n", " 425: function _(e,t,n,i,l){i();const s=e(426);class h extends s.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,(()=>{var e;return this.input_el.name=null!==(e=this.model.name)&&void 0!==e?e:\"\"})),this.connect(this.model.properties.value.change,(()=>this.input_el.value=this.model.value)),this.connect(this.model.properties.value_input.change,(()=>this.input_el.value=this.model.value_input)),this.connect(this.model.properties.disabled.change,(()=>this.input_el.disabled=this.model.disabled)),this.connect(this.model.properties.placeholder.change,(()=>this.input_el.placeholder=this.model.placeholder)),this.connect(this.model.properties.max_length.change,(()=>{const{max_length:e}=this.model;null!=e?this.input_el.maxLength=e:this.input_el.removeAttribute(\"maxLength\")}))}render(){var e;super.render(),this._render_input();const{input_el:t}=this;t.name=null!==(e=this.model.name)&&void 0!==e?e:\"\",t.value=this.model.value,t.disabled=this.model.disabled,t.placeholder=this.model.placeholder,null!=this.model.max_length&&(t.maxLength=this.model.max_length),t.addEventListener(\"change\",(()=>this.change_input())),t.addEventListener(\"input\",(()=>this.change_input_value())),this.group_el.appendChild(t)}change_input(){this.model.value=this.input_el.value,super.change_input()}change_input_value(){this.model.value_input=this.input_el.value,super.change_input()}}n.TextLikeInputView=h,h.__name__=\"TextLikeInputView\";class a extends s.InputWidget{constructor(e){super(e)}static init_TextLikeInput(){this.define((({Int:e,String:t,Nullable:n})=>({value:[t,\"\"],value_input:[t,\"\"],placeholder:[t,\"\"],max_length:[n(e),null]})))}}n.TextLikeInput=a,a.__name__=\"TextLikeInput\",a.init_TextLikeInput()},\n", " 426: function _(t,e,i,n,s){n();const l=t(1),o=t(420),r=t(43),_=l.__importStar(t(427)),p=_;class d extends o.ControlView{*controls(){yield this.input_el}connect_signals(){super.connect_signals(),this.connect(this.model.properties.title.change,(()=>{this.label_el.textContent=this.model.title}))}styles(){return[...super.styles(),_.default]}render(){super.render();const{title:t}=this.model;this.label_el=r.label({style:{display:0==t.length?\"none\":\"\"}},t),this.group_el=r.div({class:p.input_group},this.label_el),this.el.appendChild(this.group_el)}change_input(){}}i.InputWidgetView=d,d.__name__=\"InputWidgetView\";class u extends o.Control{constructor(t){super(t)}static init_InputWidget(){this.define((({String:t})=>({title:[t,\"\"]})))}}i.InputWidget=u,u.__name__=\"InputWidget\",u.init_InputWidget()},\n", " 427: function _(o,i,t,n,p){n(),t.root=\"bk-root\",t.input=\"bk-input\",t.input_group=\"bk-input-group\",t.inline=\"bk-inline\",t.spin_wrapper=\"bk-spin-wrapper\",t.spin_btn=\"bk-spin-btn\",t.spin_btn_up=\"bk-spin-btn-up\",t.spin_btn_down=\"bk-spin-btn-down\",t.default='.bk-root .bk-input{display:inline-block;width:100%;flex-grow:1;-webkit-flex-grow:1;min-height:31px;padding:0 12px;background-color:#fff;border:1px solid #ccc;border-radius:4px;}.bk-root .bk-input:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);}.bk-root .bk-input::placeholder,.bk-root .bk-input:-ms-input-placeholder,.bk-root .bk-input::-moz-placeholder,.bk-root .bk-input::-webkit-input-placeholder{color:#999;opacity:1;}.bk-root .bk-input[disabled]{cursor:not-allowed;background-color:#eee;opacity:1;}.bk-root select:not([multiple]).bk-input,.bk-root select:not([size]).bk-input{height:auto;appearance:none;-webkit-appearance:none;background-image:url(\\'data:image/svg+xml;utf8,<svg version=\"1.1\" viewBox=\"0 0 25 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0,0 25,0 12.5,20 Z\" fill=\"black\" /></svg>\\');background-position:right 0.5em center;background-size:8px 6px;background-repeat:no-repeat;}.bk-root select[multiple].bk-input,.bk-root select[size].bk-input,.bk-root textarea.bk-input{height:auto;}.bk-root .bk-input-group{width:100%;height:100%;display:inline-flex;display:-webkit-inline-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:start;-webkit-align-items:start;flex-direction:column;-webkit-flex-direction:column;white-space:nowrap;}.bk-root .bk-input-group.bk-inline{flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-input-group.bk-inline > *:not(:first-child){margin-left:5px;}.bk-root .bk-input-group input[type=\"checkbox\"] + span,.bk-root .bk-input-group input[type=\"radio\"] + span{position:relative;top:-2px;margin-left:3px;}.bk-root .bk-input-group > .bk-spin-wrapper{display:inherit;width:inherit;height:inherit;position:relative;overflow:hidden;padding:0;vertical-align:middle;}.bk-root .bk-input-group > .bk-spin-wrapper input{padding-right:20px;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn{position:absolute;display:block;height:50%;min-height:0;min-width:0;width:30px;padding:0;margin:0;right:0;border:none;background:none;cursor:pointer;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn:before{content:\"\";display:inline-block;transform:translateY(-50%);border-left:5px solid transparent;border-right:5px solid transparent;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up{top:0;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up:before{border-bottom:5px solid black;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up:disabled:before{border-bottom-color:grey;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down{bottom:0;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down:before{border-top:5px solid black;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down:disabled:before{border-top-color:grey;}'},\n", " 428: function _(t,e,n,i,o){i();const s=t(419),u=t(264);class c extends s.AbstractButtonView{click(){this.model.trigger_event(new u.ButtonClick),super.click()}}n.ButtonView=c,c.__name__=\"ButtonView\";class _ extends s.AbstractButton{constructor(t){super(t)}static init_Button(){this.prototype.default_view=c,this.override({label:\"Button\"})}}n.Button=_,_.__name__=\"Button\",_.init_Button()},\n", " 429: function _(t,e,o,i,c){i();const n=t(1),s=t(430),a=t(43),u=n.__importStar(t(328));class r extends s.ButtonGroupView{get active(){return new Set(this.model.active)}change_active(t){const{active:e}=this;e.has(t)?e.delete(t):e.add(t),this.model.active=[...e].sort()}_update_active(){const{active:t}=this;this._buttons.forEach(((e,o)=>{a.classes(e).toggle(u.active,t.has(o))}))}}o.CheckboxButtonGroupView=r,r.__name__=\"CheckboxButtonGroupView\";class _ extends s.ButtonGroup{constructor(t){super(t)}static init_CheckboxButtonGroup(){this.prototype.default_view=r,this.define((({Int:t,Array:e})=>({active:[e(t),[]]})))}}o.CheckboxButtonGroup=_,_.__name__=\"CheckboxButtonGroup\",_.init_CheckboxButtonGroup()},\n", " 430: function _(t,e,n,s,i){s();const o=t(1),r=t(420),u=t(20),a=t(43),_=o.__importStar(t(328)),l=_;class c extends r.ControlView{*controls(){yield*this._buttons}connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.button_type,(()=>this.render())),this.on_change(t.labels,(()=>this.render())),this.on_change(t.active,(()=>this._update_active()))}styles(){return[...super.styles(),_.default]}render(){super.render(),this._buttons=this.model.labels.map(((t,e)=>{const n=a.div({class:[l.btn,l[`btn_${this.model.button_type}`]],disabled:this.model.disabled},t);return n.addEventListener(\"click\",(()=>this.change_active(e))),n})),this._update_active();const t=a.div({class:l.btn_group},this._buttons);this.el.appendChild(t)}}n.ButtonGroupView=c,c.__name__=\"ButtonGroupView\";class d extends r.Control{constructor(t){super(t)}static init_ButtonGroup(){this.define((({String:t,Array:e})=>({labels:[e(t),[]],button_type:[u.ButtonType,\"default\"]})))}}n.ButtonGroup=d,d.__name__=\"ButtonGroup\",d.init_ButtonGroup()},\n", " 431: function _(e,t,i,n,s){n();const o=e(1),c=e(432),a=e(43),l=e(9),d=o.__importStar(e(427));class h extends c.InputGroupView{render(){super.render();const e=a.div({class:[d.input_group,this.model.inline?d.inline:null]});this.el.appendChild(e);const{active:t,labels:i}=this.model;this._inputs=[];for(let n=0;n<i.length;n++){const s=a.input({type:\"checkbox\",value:`${n}`});s.addEventListener(\"change\",(()=>this.change_active(n))),this._inputs.push(s),this.model.disabled&&(s.disabled=!0),l.includes(t,n)&&(s.checked=!0);const o=a.label({},s,a.span({},i[n]));e.appendChild(o)}}change_active(e){const t=new Set(this.model.active);t.has(e)?t.delete(e):t.add(e),this.model.active=[...t].sort()}}i.CheckboxGroupView=h,h.__name__=\"CheckboxGroupView\";class p extends c.InputGroup{constructor(e){super(e)}static init_CheckboxGroup(){this.prototype.default_view=h,this.define((({Boolean:e,Int:t,String:i,Array:n})=>({active:[n(t),[]],labels:[n(i),[]],inline:[e,!1]})))}}i.CheckboxGroup=p,p.__name__=\"CheckboxGroup\",p.init_CheckboxGroup()},\n", " 432: function _(n,t,e,s,o){s();const r=n(1),u=n(420),c=r.__importDefault(n(427));class _ extends u.ControlView{*controls(){yield*this._inputs}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.render()))}styles(){return[...super.styles(),c.default]}}e.InputGroupView=_,_.__name__=\"InputGroupView\";class i extends u.Control{constructor(n){super(n)}}e.InputGroup=i,i.__name__=\"InputGroup\"},\n", " 433: function _(e,i,t,n,o){n();const s=e(1),l=e(426),r=e(43),c=e(22),a=s.__importStar(e(427));class d extends l.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,(()=>{var e;return this.input_el.name=null!==(e=this.model.name)&&void 0!==e?e:\"\"})),this.connect(this.model.properties.color.change,(()=>this.input_el.value=c.color2hexrgb(this.model.color))),this.connect(this.model.properties.disabled.change,(()=>this.input_el.disabled=this.model.disabled))}render(){super.render(),this.input_el=r.input({type:\"color\",class:a.input,name:this.model.name,value:this.model.color,disabled:this.model.disabled}),this.input_el.addEventListener(\"change\",(()=>this.change_input())),this.group_el.appendChild(this.input_el)}change_input(){this.model.color=this.input_el.value,super.change_input()}}t.ColorPickerView=d,d.__name__=\"ColorPickerView\";class h extends l.InputWidget{constructor(e){super(e)}static init_ColorPicker(){this.prototype.default_view=d,this.define((({Color:e})=>({color:[e,\"#000000\"]})))}}t.ColorPicker=h,h.__name__=\"ColorPicker\",h.init_ColorPicker()},\n", " 434: function _(e,t,i,n,s){n();const a=e(1),l=a.__importDefault(e(435)),o=e(426),d=e(43),r=e(20),c=e(8),h=a.__importStar(e(427)),u=a.__importDefault(e(436));function _(e){const t=[];for(const i of e)if(c.isString(i))t.push(i);else{const[e,n]=i;t.push({from:e,to:n})}return t}class p extends o.InputWidgetView{connect_signals(){super.connect_signals();const{value:e,min_date:t,max_date:i,disabled_dates:n,enabled_dates:s,position:a,inline:l}=this.model.properties;this.connect(e.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.setDate(this.model.value)})),this.connect(t.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"minDate\",this.model.min_date)})),this.connect(i.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"maxDate\",this.model.max_date)})),this.connect(n.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"disable\",this.model.disabled_dates)})),this.connect(s.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enable\",this.model.enabled_dates)})),this.connect(a.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"position\",this.model.position)})),this.connect(l.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"inline\",this.model.inline)}))}remove(){var e;null===(e=this._picker)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),u.default]}render(){var e,t;null==this._picker&&(super.render(),this.input_el=d.input({type:\"text\",class:h.input,disabled:this.model.disabled}),this.group_el.appendChild(this.input_el),this._picker=l.default(this.input_el,{defaultDate:this.model.value,minDate:null!==(e=this.model.min_date)&&void 0!==e?e:void 0,maxDate:null!==(t=this.model.max_date)&&void 0!==t?t:void 0,inline:this.model.inline,position:this.model.position,disable:_(this.model.disabled_dates),enable:_(this.model.enabled_dates),onChange:(e,t,i)=>this._on_change(e,t,i)}))}_on_change(e,t,i){this.model.value=t,this.change_input()}}i.DatePickerView=p,p.__name__=\"DatePickerView\";class m extends o.InputWidget{constructor(e){super(e)}static init_DatePicker(){this.prototype.default_view=p,this.define((({Boolean:e,String:t,Array:i,Tuple:n,Or:s,Nullable:a})=>{const l=i(s(t,n(t,t)));return{value:[t],min_date:[a(t),null],max_date:[a(t),null],disabled_dates:[l,[]],enabled_dates:[l,[]],position:[r.CalendarPosition,\"auto\"],inline:[e,!1]}}))}}i.DatePicker=m,m.__name__=\"DatePicker\",m.init_DatePicker()},\n", " 435: function _(e,n,t,a,i){\n", " /* flatpickr v4.6.6, @license MIT */var o,r;o=this,r=function(){\"use strict\";\n", " /*! *****************************************************************************\n", " Copyright (c) Microsoft Corporation.\n", " \n", " Permission to use, copy, modify, and/or distribute this software for any\n", " purpose with or without fee is hereby granted.\n", " \n", " THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n", " REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n", " AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n", " INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n", " LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n", " OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n", " PERFORMANCE OF THIS SOFTWARE.\n", " ***************************************************************************** */var e=function(){return(e=Object.assign||function(e){for(var n,t=1,a=arguments.length;t<a;t++)for(var i in n=arguments[t])Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i]);return e}).apply(this,arguments)};function n(){for(var e=0,n=0,t=arguments.length;n<t;n++)e+=arguments[n].length;var a=Array(e),i=0;for(n=0;n<t;n++)for(var o=arguments[n],r=0,l=o.length;r<l;r++,i++)a[i]=o[r];return a}var t=[\"onChange\",\"onClose\",\"onDayCreate\",\"onDestroy\",\"onKeyDown\",\"onMonthChange\",\"onOpen\",\"onParseConfig\",\"onReady\",\"onValueUpdate\",\"onYearChange\",\"onPreCalendarPosition\"],a={_disable:[],_enable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:\"F j, Y\",altInput:!1,altInputClass:\"form-control input\",animate:\"object\"==typeof window&&-1===window.navigator.userAgent.indexOf(\"MSIE\"),ariaDateFormat:\"F j, Y\",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:\", \",dateFormat:\"Y-m-d\",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enable:[],enableSeconds:!1,enableTime:!1,errorHandler:function(e){return\"undefined\"!=typeof console&&console.warn(e)},getWeek:function(e){var n=new Date(e.getTime());n.setHours(0,0,0,0),n.setDate(n.getDate()+3-(n.getDay()+6)%7);var t=new Date(n.getFullYear(),0,4);return 1+Math.round(((n.getTime()-t.getTime())/864e5-3+(t.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:\"default\",minuteIncrement:5,mode:\"single\",monthSelectorType:\"dropdown\",nextArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>\",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:\"auto\",positionElement:void 0,prevArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>\",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},i={weekdays:{shorthand:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longhand:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"]},months:{shorthand:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longhand:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(e){var n=e%100;if(n>3&&n<21)return\"th\";switch(n%10){case 1:return\"st\";case 2:return\"nd\";case 3:return\"rd\";default:return\"th\"}},rangeSeparator:\" to \",weekAbbreviation:\"Wk\",scrollTitle:\"Scroll to increment\",toggleTitle:\"Click to toggle\",amPM:[\"AM\",\"PM\"],yearAriaLabel:\"Year\",monthAriaLabel:\"Month\",hourAriaLabel:\"Hour\",minuteAriaLabel:\"Minute\",time_24hr:!1},o=function(e,n){return void 0===n&&(n=2),(\"000\"+e).slice(-1*n)},r=function(e){return!0===e?1:0};function l(e,n,t){var a;return void 0===t&&(t=!1),function(){var i=this,o=arguments;null!==a&&clearTimeout(a),a=window.setTimeout((function(){a=null,t||e.apply(i,o)}),n),t&&!a&&e.apply(i,o)}}var c=function(e){return e instanceof Array?e:[e]};function d(e,n,t){if(!0===t)return e.classList.add(n);e.classList.remove(n)}function s(e,n,t){var a=window.document.createElement(e);return n=n||\"\",t=t||\"\",a.className=n,void 0!==t&&(a.textContent=t),a}function u(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function f(e,n){return n(e)?e:e.parentNode?f(e.parentNode,n):void 0}function m(e,n){var t=s(\"div\",\"numInputWrapper\"),a=s(\"input\",\"numInput \"+e),i=s(\"span\",\"arrowUp\"),o=s(\"span\",\"arrowDown\");if(-1===navigator.userAgent.indexOf(\"MSIE 9.0\")?a.type=\"number\":(a.type=\"text\",a.pattern=\"\\\\d*\"),void 0!==n)for(var r in n)a.setAttribute(r,n[r]);return t.appendChild(a),t.appendChild(i),t.appendChild(o),t}function g(e){try{return\"function\"==typeof e.composedPath?e.composedPath()[0]:e.target}catch(n){return e.target}}var p=function(){},h=function(e,n,t){return t.months[n?\"shorthand\":\"longhand\"][e]},v={D:p,F:function(e,n,t){e.setMonth(t.months.longhand.indexOf(n))},G:function(e,n){e.setHours(parseFloat(n))},H:function(e,n){e.setHours(parseFloat(n))},J:function(e,n){e.setDate(parseFloat(n))},K:function(e,n,t){e.setHours(e.getHours()%12+12*r(new RegExp(t.amPM[1],\"i\").test(n)))},M:function(e,n,t){e.setMonth(t.months.shorthand.indexOf(n))},S:function(e,n){e.setSeconds(parseFloat(n))},U:function(e,n){return new Date(1e3*parseFloat(n))},W:function(e,n,t){var a=parseInt(n),i=new Date(e.getFullYear(),0,2+7*(a-1),0,0,0,0);return i.setDate(i.getDate()-i.getDay()+t.firstDayOfWeek),i},Y:function(e,n){e.setFullYear(parseFloat(n))},Z:function(e,n){return new Date(n)},d:function(e,n){e.setDate(parseFloat(n))},h:function(e,n){e.setHours(parseFloat(n))},i:function(e,n){e.setMinutes(parseFloat(n))},j:function(e,n){e.setDate(parseFloat(n))},l:p,m:function(e,n){e.setMonth(parseFloat(n)-1)},n:function(e,n){e.setMonth(parseFloat(n)-1)},s:function(e,n){e.setSeconds(parseFloat(n))},u:function(e,n){return new Date(parseFloat(n))},w:p,y:function(e,n){e.setFullYear(2e3+parseFloat(n))}},D={D:\"(\\\\w+)\",F:\"(\\\\w+)\",G:\"(\\\\d\\\\d|\\\\d)\",H:\"(\\\\d\\\\d|\\\\d)\",J:\"(\\\\d\\\\d|\\\\d)\\\\w+\",K:\"\",M:\"(\\\\w+)\",S:\"(\\\\d\\\\d|\\\\d)\",U:\"(.+)\",W:\"(\\\\d\\\\d|\\\\d)\",Y:\"(\\\\d{4})\",Z:\"(.+)\",d:\"(\\\\d\\\\d|\\\\d)\",h:\"(\\\\d\\\\d|\\\\d)\",i:\"(\\\\d\\\\d|\\\\d)\",j:\"(\\\\d\\\\d|\\\\d)\",l:\"(\\\\w+)\",m:\"(\\\\d\\\\d|\\\\d)\",n:\"(\\\\d\\\\d|\\\\d)\",s:\"(\\\\d\\\\d|\\\\d)\",u:\"(.+)\",w:\"(\\\\d\\\\d|\\\\d)\",y:\"(\\\\d{2})\"},w={Z:function(e){return e.toISOString()},D:function(e,n,t){return n.weekdays.shorthand[w.w(e,n,t)]},F:function(e,n,t){return h(w.n(e,n,t)-1,!1,n)},G:function(e,n,t){return o(w.h(e,n,t))},H:function(e){return o(e.getHours())},J:function(e,n){return void 0!==n.ordinal?e.getDate()+n.ordinal(e.getDate()):e.getDate()},K:function(e,n){return n.amPM[r(e.getHours()>11)]},M:function(e,n){return h(e.getMonth(),!0,n)},S:function(e){return o(e.getSeconds())},U:function(e){return e.getTime()/1e3},W:function(e,n,t){return t.getWeek(e)},Y:function(e){return o(e.getFullYear(),4)},d:function(e){return o(e.getDate())},h:function(e){return e.getHours()%12?e.getHours()%12:12},i:function(e){return o(e.getMinutes())},j:function(e){return e.getDate()},l:function(e,n){return n.weekdays.longhand[e.getDay()]},m:function(e){return o(e.getMonth()+1)},n:function(e){return e.getMonth()+1},s:function(e){return e.getSeconds()},u:function(e){return e.getTime()},w:function(e){return e.getDay()},y:function(e){return String(e.getFullYear()).substring(2)}},b=function(e){var n=e.config,t=void 0===n?a:n,o=e.l10n,r=void 0===o?i:o,l=e.isMobile,c=void 0!==l&&l;return function(e,n,a){var i=a||r;return void 0===t.formatDate||c?n.split(\"\").map((function(n,a,o){return w[n]&&\"\\\\\"!==o[a-1]?w[n](e,i,t):\"\\\\\"!==n?n:\"\"})).join(\"\"):t.formatDate(e,n,i)}},C=function(e){var n=e.config,t=void 0===n?a:n,o=e.l10n,r=void 0===o?i:o;return function(e,n,i,o){if(0===e||e){var l,c=o||r,d=e;if(e instanceof Date)l=new Date(e.getTime());else if(\"string\"!=typeof e&&void 0!==e.toFixed)l=new Date(e);else if(\"string\"==typeof e){var s=n||(t||a).dateFormat,u=String(e).trim();if(\"today\"===u)l=new Date,i=!0;else if(/Z$/.test(u)||/GMT$/.test(u))l=new Date(e);else if(t&&t.parseDate)l=t.parseDate(e,s);else{l=t&&t.noCalendar?new Date((new Date).setHours(0,0,0,0)):new Date((new Date).getFullYear(),0,1,0,0,0,0);for(var f=void 0,m=[],g=0,p=0,h=\"\";g<s.length;g++){var w=s[g],b=\"\\\\\"===w,C=\"\\\\\"===s[g-1]||b;if(D[w]&&!C){h+=D[w];var M=new RegExp(h).exec(e);M&&(f=!0)&&m[\"Y\"!==w?\"push\":\"unshift\"]({fn:v[w],val:M[++p]})}else b||(h+=\".\");m.forEach((function(e){var n=e.fn,t=e.val;return l=n(l,t,c)||l}))}l=f?l:void 0}}if(l instanceof Date&&!isNaN(l.getTime()))return!0===i&&l.setHours(0,0,0,0),l;t.errorHandler(new Error(\"Invalid date provided: \"+d))}}};function M(e,n,t){return void 0===t&&(t=!0),!1!==t?new Date(e.getTime()).setHours(0,0,0,0)-new Date(n.getTime()).setHours(0,0,0,0):e.getTime()-n.getTime()}var y=864e5;function x(p,v){var w={config:e(e({},a),k.defaultConfig),l10n:i};function x(e){return e.bind(w)}function E(){var e=w.config;!1===e.weekNumbers&&1===e.showMonths||!0!==e.noCalendar&&window.requestAnimationFrame((function(){if(void 0!==w.calendarContainer&&(w.calendarContainer.style.visibility=\"hidden\",w.calendarContainer.style.display=\"block\"),void 0!==w.daysContainer){var n=(w.days.offsetWidth+1)*e.showMonths;w.daysContainer.style.width=n+\"px\",w.calendarContainer.style.width=n+(void 0!==w.weekWrapper?w.weekWrapper.offsetWidth:0)+\"px\",w.calendarContainer.style.removeProperty(\"visibility\"),w.calendarContainer.style.removeProperty(\"display\")}}))}function T(e){if(0===w.selectedDates.length){var n=void 0!==w.config.minDate?new Date(w.config.minDate.getTime()):new Date,t=_(),a=t.hours,i=t.minutes,l=t.seconds;n.setHours(a,i,l,0),w.setDate(n,!1)}void 0!==e&&\"blur\"!==e.type&&function(e){e.preventDefault();var n=\"keydown\"===e.type,t=g(e),a=t;void 0!==w.amPM&&t===w.amPM&&(w.amPM.textContent=w.l10n.amPM[r(w.amPM.textContent===w.l10n.amPM[0])]);var i=parseFloat(a.getAttribute(\"min\")),l=parseFloat(a.getAttribute(\"max\")),c=parseFloat(a.getAttribute(\"step\")),d=parseInt(a.value,10),s=e.delta||(n?38===e.which?1:-1:0),u=d+c*s;if(void 0!==a.value&&2===a.value.length){var f=a===w.hourElement,m=a===w.minuteElement;u<i?(u=l+u+r(!f)+(r(f)&&r(!w.amPM)),m&&H(void 0,-1,w.hourElement)):u>l&&(u=a===w.hourElement?u-l-r(!w.amPM):i,m&&H(void 0,1,w.hourElement)),w.amPM&&f&&(1===c?u+d===23:Math.abs(u-d)>c)&&(w.amPM.textContent=w.l10n.amPM[r(w.amPM.textContent===w.l10n.amPM[0])]),a.value=o(u)}}(e);var c=w._input.value;I(),be(),w._input.value!==c&&w._debouncedChange()}function I(){if(void 0!==w.hourElement&&void 0!==w.minuteElement){var e,n,t=(parseInt(w.hourElement.value.slice(-2),10)||0)%24,a=(parseInt(w.minuteElement.value,10)||0)%60,i=void 0!==w.secondElement?(parseInt(w.secondElement.value,10)||0)%60:0;void 0!==w.amPM&&(e=t,n=w.amPM.textContent,t=e%12+12*r(n===w.l10n.amPM[1]));var o=void 0!==w.config.minTime||w.config.minDate&&w.minDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.minDate,!0);if(void 0!==w.config.maxTime||w.config.maxDate&&w.maxDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.maxDate,!0)){var l=void 0!==w.config.maxTime?w.config.maxTime:w.config.maxDate;(t=Math.min(t,l.getHours()))===l.getHours()&&(a=Math.min(a,l.getMinutes())),a===l.getMinutes()&&(i=Math.min(i,l.getSeconds()))}if(o){var c=void 0!==w.config.minTime?w.config.minTime:w.config.minDate;(t=Math.max(t,c.getHours()))===c.getHours()&&(a=Math.max(a,c.getMinutes())),a===c.getMinutes()&&(i=Math.max(i,c.getSeconds()))}O(t,a,i)}}function S(e){var n=e||w.latestSelectedDateObj;n&&O(n.getHours(),n.getMinutes(),n.getSeconds())}function _(){var e=w.config.defaultHour,n=w.config.defaultMinute,t=w.config.defaultSeconds;if(void 0!==w.config.minDate){var a=w.config.minDate.getHours(),i=w.config.minDate.getMinutes();(e=Math.max(e,a))===a&&(n=Math.max(i,n)),e===a&&n===i&&(t=w.config.minDate.getSeconds())}if(void 0!==w.config.maxDate){var o=w.config.maxDate.getHours(),r=w.config.maxDate.getMinutes();(e=Math.min(e,o))===o&&(n=Math.min(r,n)),e===o&&n===r&&(t=w.config.maxDate.getSeconds())}return{hours:e,minutes:n,seconds:t}}function O(e,n,t){void 0!==w.latestSelectedDateObj&&w.latestSelectedDateObj.setHours(e%24,n,t||0,0),w.hourElement&&w.minuteElement&&!w.isMobile&&(w.hourElement.value=o(w.config.time_24hr?e:(12+e)%12+12*r(e%12==0)),w.minuteElement.value=o(n),void 0!==w.amPM&&(w.amPM.textContent=w.l10n.amPM[r(e>=12)]),void 0!==w.secondElement&&(w.secondElement.value=o(t)))}function F(e){var n=g(e),t=parseInt(n.value)+(e.delta||0);(t/1e3>1||\"Enter\"===e.key&&!/[^\\d]/.test(t.toString()))&&Q(t)}function N(e,n,t,a){return n instanceof Array?n.forEach((function(n){return N(e,n,t,a)})):e instanceof Array?e.forEach((function(e){return N(e,n,t,a)})):(e.addEventListener(n,t,a),void w._handlers.push({element:e,event:n,handler:t,options:a}))}function A(){pe(\"onChange\")}function P(e,n){var t=void 0!==e?w.parseDate(e):w.latestSelectedDateObj||(w.config.minDate&&w.config.minDate>w.now?w.config.minDate:w.config.maxDate&&w.config.maxDate<w.now?w.config.maxDate:w.now),a=w.currentYear,i=w.currentMonth;try{void 0!==t&&(w.currentYear=t.getFullYear(),w.currentMonth=t.getMonth())}catch(e){e.message=\"Invalid date supplied: \"+t,w.config.errorHandler(e)}n&&w.currentYear!==a&&(pe(\"onYearChange\"),K()),!n||w.currentYear===a&&w.currentMonth===i||pe(\"onMonthChange\"),w.redraw()}function Y(e){var n=g(e);~n.className.indexOf(\"arrow\")&&H(e,n.classList.contains(\"arrowUp\")?1:-1)}function H(e,n,t){var a=e&&g(e),i=t||a&&a.parentNode&&a.parentNode.firstChild,o=he(\"increment\");o.delta=n,i&&i.dispatchEvent(o)}function j(e,n,t,a){var i=X(n,!0),o=s(\"span\",\"flatpickr-day \"+e,n.getDate().toString());return o.dateObj=n,o.$i=a,o.setAttribute(\"aria-label\",w.formatDate(n,w.config.ariaDateFormat)),-1===e.indexOf(\"hidden\")&&0===M(n,w.now)&&(w.todayDateElem=o,o.classList.add(\"today\"),o.setAttribute(\"aria-current\",\"date\")),i?(o.tabIndex=-1,ve(n)&&(o.classList.add(\"selected\"),w.selectedDateElem=o,\"range\"===w.config.mode&&(d(o,\"startRange\",w.selectedDates[0]&&0===M(n,w.selectedDates[0],!0)),d(o,\"endRange\",w.selectedDates[1]&&0===M(n,w.selectedDates[1],!0)),\"nextMonthDay\"===e&&o.classList.add(\"inRange\")))):o.classList.add(\"flatpickr-disabled\"),\"range\"===w.config.mode&&function(e){return!(\"range\"!==w.config.mode||w.selectedDates.length<2)&&M(e,w.selectedDates[0])>=0&&M(e,w.selectedDates[1])<=0}(n)&&!ve(n)&&o.classList.add(\"inRange\"),w.weekNumbers&&1===w.config.showMonths&&\"prevMonthDay\"!==e&&t%7==1&&w.weekNumbers.insertAdjacentHTML(\"beforeend\",\"<span class='flatpickr-day'>\"+w.config.getWeek(n)+\"</span>\"),pe(\"onDayCreate\",o),o}function L(e){e.focus(),\"range\"===w.config.mode&&ae(e)}function W(e){for(var n=e>0?0:w.config.showMonths-1,t=e>0?w.config.showMonths:-1,a=n;a!=t;a+=e)for(var i=w.daysContainer.children[a],o=e>0?0:i.children.length-1,r=e>0?i.children.length:-1,l=o;l!=r;l+=e){var c=i.children[l];if(-1===c.className.indexOf(\"hidden\")&&X(c.dateObj))return c}}function R(e,n){var t=ee(document.activeElement||document.body),a=void 0!==e?e:t?document.activeElement:void 0!==w.selectedDateElem&&ee(w.selectedDateElem)?w.selectedDateElem:void 0!==w.todayDateElem&&ee(w.todayDateElem)?w.todayDateElem:W(n>0?1:-1);void 0===a?w._input.focus():t?function(e,n){for(var t=-1===e.className.indexOf(\"Month\")?e.dateObj.getMonth():w.currentMonth,a=n>0?w.config.showMonths:-1,i=n>0?1:-1,o=t-w.currentMonth;o!=a;o+=i)for(var r=w.daysContainer.children[o],l=t-w.currentMonth===o?e.$i+n:n<0?r.children.length-1:0,c=r.children.length,d=l;d>=0&&d<c&&d!=(n>0?c:-1);d+=i){var s=r.children[d];if(-1===s.className.indexOf(\"hidden\")&&X(s.dateObj)&&Math.abs(e.$i-d)>=Math.abs(n))return L(s)}w.changeMonth(i),R(W(i),0)}(a,n):L(a)}function B(e,n){for(var t=(new Date(e,n,1).getDay()-w.l10n.firstDayOfWeek+7)%7,a=w.utils.getDaysInMonth((n-1+12)%12,e),i=w.utils.getDaysInMonth(n,e),o=window.document.createDocumentFragment(),r=w.config.showMonths>1,l=r?\"prevMonthDay hidden\":\"prevMonthDay\",c=r?\"nextMonthDay hidden\":\"nextMonthDay\",d=a+1-t,u=0;d<=a;d++,u++)o.appendChild(j(l,new Date(e,n-1,d),d,u));for(d=1;d<=i;d++,u++)o.appendChild(j(\"\",new Date(e,n,d),d,u));for(var f=i+1;f<=42-t&&(1===w.config.showMonths||u%7!=0);f++,u++)o.appendChild(j(c,new Date(e,n+1,f%i),f,u));var m=s(\"div\",\"dayContainer\");return m.appendChild(o),m}function J(){if(void 0!==w.daysContainer){u(w.daysContainer),w.weekNumbers&&u(w.weekNumbers);for(var e=document.createDocumentFragment(),n=0;n<w.config.showMonths;n++){var t=new Date(w.currentYear,w.currentMonth,1);t.setMonth(w.currentMonth+n),e.appendChild(B(t.getFullYear(),t.getMonth()))}w.daysContainer.appendChild(e),w.days=w.daysContainer.firstChild,\"range\"===w.config.mode&&1===w.selectedDates.length&&ae()}}function K(){if(!(w.config.showMonths>1||\"dropdown\"!==w.config.monthSelectorType)){var e=function(e){return!(void 0!==w.config.minDate&&w.currentYear===w.config.minDate.getFullYear()&&e<w.config.minDate.getMonth()||void 0!==w.config.maxDate&&w.currentYear===w.config.maxDate.getFullYear()&&e>w.config.maxDate.getMonth())};w.monthsDropdownContainer.tabIndex=-1,w.monthsDropdownContainer.innerHTML=\"\";for(var n=0;n<12;n++)if(e(n)){var t=s(\"option\",\"flatpickr-monthDropdown-month\");t.value=new Date(w.currentYear,n).getMonth().toString(),t.textContent=h(n,w.config.shorthandCurrentMonth,w.l10n),t.tabIndex=-1,w.currentMonth===n&&(t.selected=!0),w.monthsDropdownContainer.appendChild(t)}}}function U(){var e,n=s(\"div\",\"flatpickr-month\"),t=window.document.createDocumentFragment();w.config.showMonths>1||\"static\"===w.config.monthSelectorType?e=s(\"span\",\"cur-month\"):(w.monthsDropdownContainer=s(\"select\",\"flatpickr-monthDropdown-months\"),w.monthsDropdownContainer.setAttribute(\"aria-label\",w.l10n.monthAriaLabel),N(w.monthsDropdownContainer,\"change\",(function(e){var n=g(e),t=parseInt(n.value,10);w.changeMonth(t-w.currentMonth),pe(\"onMonthChange\")})),K(),e=w.monthsDropdownContainer);var a=m(\"cur-year\",{tabindex:\"-1\"}),i=a.getElementsByTagName(\"input\")[0];i.setAttribute(\"aria-label\",w.l10n.yearAriaLabel),w.config.minDate&&i.setAttribute(\"min\",w.config.minDate.getFullYear().toString()),w.config.maxDate&&(i.setAttribute(\"max\",w.config.maxDate.getFullYear().toString()),i.disabled=!!w.config.minDate&&w.config.minDate.getFullYear()===w.config.maxDate.getFullYear());var o=s(\"div\",\"flatpickr-current-month\");return o.appendChild(e),o.appendChild(a),t.appendChild(o),n.appendChild(t),{container:n,yearElement:i,monthElement:e}}function q(){u(w.monthNav),w.monthNav.appendChild(w.prevMonthNav),w.config.showMonths&&(w.yearElements=[],w.monthElements=[]);for(var e=w.config.showMonths;e--;){var n=U();w.yearElements.push(n.yearElement),w.monthElements.push(n.monthElement),w.monthNav.appendChild(n.container)}w.monthNav.appendChild(w.nextMonthNav)}function $(){w.weekdayContainer?u(w.weekdayContainer):w.weekdayContainer=s(\"div\",\"flatpickr-weekdays\");for(var e=w.config.showMonths;e--;){var n=s(\"div\",\"flatpickr-weekdaycontainer\");w.weekdayContainer.appendChild(n)}return z(),w.weekdayContainer}function z(){if(w.weekdayContainer){var e=w.l10n.firstDayOfWeek,t=n(w.l10n.weekdays.shorthand);e>0&&e<t.length&&(t=n(t.splice(e,t.length),t.splice(0,e)));for(var a=w.config.showMonths;a--;)w.weekdayContainer.children[a].innerHTML=\"\\n <span class='flatpickr-weekday'>\\n \"+t.join(\"</span><span class='flatpickr-weekday'>\")+\"\\n </span>\\n \"}}function G(e,n){void 0===n&&(n=!0);var t=n?e:e-w.currentMonth;t<0&&!0===w._hidePrevMonthArrow||t>0&&!0===w._hideNextMonthArrow||(w.currentMonth+=t,(w.currentMonth<0||w.currentMonth>11)&&(w.currentYear+=w.currentMonth>11?1:-1,w.currentMonth=(w.currentMonth+12)%12,pe(\"onYearChange\"),K()),J(),pe(\"onMonthChange\"),De())}function V(e){return!(!w.config.appendTo||!w.config.appendTo.contains(e))||w.calendarContainer.contains(e)}function Z(e){if(w.isOpen&&!w.config.inline){var n=g(e),t=V(n),a=n===w.input||n===w.altInput||w.element.contains(n)||e.path&&e.path.indexOf&&(~e.path.indexOf(w.input)||~e.path.indexOf(w.altInput)),i=\"blur\"===e.type?a&&e.relatedTarget&&!V(e.relatedTarget):!a&&!t&&!V(e.relatedTarget),o=!w.config.ignoredFocusElements.some((function(e){return e.contains(n)}));i&&o&&(void 0!==w.timeContainer&&void 0!==w.minuteElement&&void 0!==w.hourElement&&\"\"!==w.input.value&&void 0!==w.input.value&&T(),w.close(),w.config&&\"range\"===w.config.mode&&1===w.selectedDates.length&&(w.clear(!1),w.redraw()))}}function Q(e){if(!(!e||w.config.minDate&&e<w.config.minDate.getFullYear()||w.config.maxDate&&e>w.config.maxDate.getFullYear())){var n=e,t=w.currentYear!==n;w.currentYear=n||w.currentYear,w.config.maxDate&&w.currentYear===w.config.maxDate.getFullYear()?w.currentMonth=Math.min(w.config.maxDate.getMonth(),w.currentMonth):w.config.minDate&&w.currentYear===w.config.minDate.getFullYear()&&(w.currentMonth=Math.max(w.config.minDate.getMonth(),w.currentMonth)),t&&(w.redraw(),pe(\"onYearChange\"),K())}}function X(e,n){void 0===n&&(n=!0);var t=w.parseDate(e,void 0,n);if(w.config.minDate&&t&&M(t,w.config.minDate,void 0!==n?n:!w.minDateHasTime)<0||w.config.maxDate&&t&&M(t,w.config.maxDate,void 0!==n?n:!w.maxDateHasTime)>0)return!1;if(0===w.config.enable.length&&0===w.config.disable.length)return!0;if(void 0===t)return!1;for(var a=w.config.enable.length>0,i=a?w.config.enable:w.config.disable,o=0,r=void 0;o<i.length;o++){if(\"function\"==typeof(r=i[o])&&r(t))return a;if(r instanceof Date&&void 0!==t&&r.getTime()===t.getTime())return a;if(\"string\"==typeof r&&void 0!==t){var l=w.parseDate(r,void 0,!0);return l&&l.getTime()===t.getTime()?a:!a}if(\"object\"==typeof r&&void 0!==t&&r.from&&r.to&&t.getTime()>=r.from.getTime()&&t.getTime()<=r.to.getTime())return a}return!a}function ee(e){return void 0!==w.daysContainer&&-1===e.className.indexOf(\"hidden\")&&-1===e.className.indexOf(\"flatpickr-disabled\")&&w.daysContainer.contains(e)}function ne(e){e.target!==w._input||e.relatedTarget&&V(e.relatedTarget)||w.setDate(w._input.value,!0,e.target===w.altInput?w.config.altFormat:w.config.dateFormat)}function te(e){var n=g(e),t=w.config.wrap?p.contains(n):n===w._input,a=w.config.allowInput,i=w.isOpen&&(!a||!t),o=w.config.inline&&t&&!a;if(13===e.keyCode&&t){if(a)return w.setDate(w._input.value,!0,n===w.altInput?w.config.altFormat:w.config.dateFormat),n.blur();w.open()}else if(V(n)||i||o){var r=!!w.timeContainer&&w.timeContainer.contains(n);switch(e.keyCode){case 13:r?(e.preventDefault(),T(),se()):ue(e);break;case 27:e.preventDefault(),se();break;case 8:case 46:t&&!w.config.allowInput&&(e.preventDefault(),w.clear());break;case 37:case 39:if(r||t)w.hourElement&&w.hourElement.focus();else if(e.preventDefault(),void 0!==w.daysContainer&&(!1===a||document.activeElement&&ee(document.activeElement))){var l=39===e.keyCode?1:-1;e.ctrlKey?(e.stopPropagation(),G(l),R(W(1),0)):R(void 0,l)}break;case 38:case 40:e.preventDefault();var c=40===e.keyCode?1:-1;w.daysContainer&&void 0!==n.$i||n===w.input||n===w.altInput?e.ctrlKey?(e.stopPropagation(),Q(w.currentYear-c),R(W(1),0)):r||R(void 0,7*c):n===w.currentYearElement?Q(w.currentYear-c):w.config.enableTime&&(!r&&w.hourElement&&w.hourElement.focus(),T(e),w._debouncedChange());break;case 9:if(r){var d=[w.hourElement,w.minuteElement,w.secondElement,w.amPM].concat(w.pluginElements).filter((function(e){return e})),s=d.indexOf(n);if(-1!==s){var u=d[s+(e.shiftKey?-1:1)];e.preventDefault(),(u||w._input).focus()}}else!w.config.noCalendar&&w.daysContainer&&w.daysContainer.contains(n)&&e.shiftKey&&(e.preventDefault(),w._input.focus())}}if(void 0!==w.amPM&&n===w.amPM)switch(e.key){case w.l10n.amPM[0].charAt(0):case w.l10n.amPM[0].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[0],I(),be();break;case w.l10n.amPM[1].charAt(0):case w.l10n.amPM[1].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[1],I(),be()}(t||V(n))&&pe(\"onKeyDown\",e)}function ae(e){if(1===w.selectedDates.length&&(!e||e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\"))){for(var n=e?e.dateObj.getTime():w.days.firstElementChild.dateObj.getTime(),t=w.parseDate(w.selectedDates[0],void 0,!0).getTime(),a=Math.min(n,w.selectedDates[0].getTime()),i=Math.max(n,w.selectedDates[0].getTime()),o=!1,r=0,l=0,c=a;c<i;c+=y)X(new Date(c),!0)||(o=o||c>a&&c<i,c<t&&(!r||c>r)?r=c:c>t&&(!l||c<l)&&(l=c));for(var d=0;d<w.config.showMonths;d++)for(var s=w.daysContainer.children[d],u=function(a,i){var c,d,u,f=s.children[a],m=f.dateObj.getTime(),g=r>0&&m<r||l>0&&m>l;return g?(f.classList.add(\"notAllowed\"),[\"inRange\",\"startRange\",\"endRange\"].forEach((function(e){f.classList.remove(e)})),\"continue\"):o&&!g?\"continue\":([\"startRange\",\"inRange\",\"endRange\",\"notAllowed\"].forEach((function(e){f.classList.remove(e)})),void(void 0!==e&&(e.classList.add(n<=w.selectedDates[0].getTime()?\"startRange\":\"endRange\"),t<n&&m===t?f.classList.add(\"startRange\"):t>n&&m===t&&f.classList.add(\"endRange\"),m>=r&&(0===l||m<=l)&&(d=t,u=n,(c=m)>Math.min(d,u)&&c<Math.max(d,u))&&f.classList.add(\"inRange\"))))},f=0,m=s.children.length;f<m;f++)u(f)}}function ie(){!w.isOpen||w.config.static||w.config.inline||ce()}function oe(e){return function(n){var t=w.config[\"_\"+e+\"Date\"]=w.parseDate(n,w.config.dateFormat),a=w.config[\"_\"+(\"min\"===e?\"max\":\"min\")+\"Date\"];void 0!==t&&(w[\"min\"===e?\"minDateHasTime\":\"maxDateHasTime\"]=t.getHours()>0||t.getMinutes()>0||t.getSeconds()>0),w.selectedDates&&(w.selectedDates=w.selectedDates.filter((function(e){return X(e)})),w.selectedDates.length||\"min\"!==e||S(t),be()),w.daysContainer&&(de(),void 0!==t?w.currentYearElement[e]=t.getFullYear().toString():w.currentYearElement.removeAttribute(e),w.currentYearElement.disabled=!!a&&void 0!==t&&a.getFullYear()===t.getFullYear())}}function re(){return w.config.wrap?p.querySelector(\"[data-input]\"):p}function le(){\"object\"!=typeof w.config.locale&&void 0===k.l10ns[w.config.locale]&&w.config.errorHandler(new Error(\"flatpickr: invalid locale \"+w.config.locale)),w.l10n=e(e({},k.l10ns.default),\"object\"==typeof w.config.locale?w.config.locale:\"default\"!==w.config.locale?k.l10ns[w.config.locale]:void 0),D.K=\"(\"+w.l10n.amPM[0]+\"|\"+w.l10n.amPM[1]+\"|\"+w.l10n.amPM[0].toLowerCase()+\"|\"+w.l10n.amPM[1].toLowerCase()+\")\",void 0===e(e({},v),JSON.parse(JSON.stringify(p.dataset||{}))).time_24hr&&void 0===k.defaultConfig.time_24hr&&(w.config.time_24hr=w.l10n.time_24hr),w.formatDate=b(w),w.parseDate=C({config:w.config,l10n:w.l10n})}function ce(e){if(void 0!==w.calendarContainer){pe(\"onPreCalendarPosition\");var n=e||w._positionElement,t=Array.prototype.reduce.call(w.calendarContainer.children,(function(e,n){return e+n.offsetHeight}),0),a=w.calendarContainer.offsetWidth,i=w.config.position.split(\" \"),o=i[0],r=i.length>1?i[1]:null,l=n.getBoundingClientRect(),c=window.innerHeight-l.bottom,s=\"above\"===o||\"below\"!==o&&c<t&&l.top>t,u=window.pageYOffset+l.top+(s?-t-2:n.offsetHeight+2);if(d(w.calendarContainer,\"arrowTop\",!s),d(w.calendarContainer,\"arrowBottom\",s),!w.config.inline){var f=window.pageXOffset+l.left,m=!1,g=!1;\"center\"===r?(f-=(a-l.width)/2,m=!0):\"right\"===r&&(f-=a-l.width,g=!0),d(w.calendarContainer,\"arrowLeft\",!m&&!g),d(w.calendarContainer,\"arrowCenter\",m),d(w.calendarContainer,\"arrowRight\",g);var p=window.document.body.offsetWidth-(window.pageXOffset+l.right),h=f+a>window.document.body.offsetWidth,v=p+a>window.document.body.offsetWidth;if(d(w.calendarContainer,\"rightMost\",h),!w.config.static)if(w.calendarContainer.style.top=u+\"px\",h)if(v){var D=function(){for(var e=null,n=0;n<document.styleSheets.length;n++){var t=document.styleSheets[n];try{t.cssRules}catch(e){continue}e=t;break}return null!=e?e:(a=document.createElement(\"style\"),document.head.appendChild(a),a.sheet);var a}();if(void 0===D)return;var b=window.document.body.offsetWidth,C=Math.max(0,b/2-a/2),M=D.cssRules.length,y=\"{left:\"+l.left+\"px;right:auto;}\";d(w.calendarContainer,\"rightMost\",!1),d(w.calendarContainer,\"centerMost\",!0),D.insertRule(\".flatpickr-calendar.centerMost:before,.flatpickr-calendar.centerMost:after\"+y,M),w.calendarContainer.style.left=C+\"px\",w.calendarContainer.style.right=\"auto\"}else w.calendarContainer.style.left=\"auto\",w.calendarContainer.style.right=p+\"px\";else w.calendarContainer.style.left=f+\"px\",w.calendarContainer.style.right=\"auto\"}}}function de(){w.config.noCalendar||w.isMobile||(K(),De(),J())}function se(){w._input.focus(),-1!==window.navigator.userAgent.indexOf(\"MSIE\")||void 0!==navigator.msMaxTouchPoints?setTimeout(w.close,0):w.close()}function ue(e){e.preventDefault(),e.stopPropagation();var n=f(g(e),(function(e){return e.classList&&e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\")&&!e.classList.contains(\"notAllowed\")}));if(void 0!==n){var t=n,a=w.latestSelectedDateObj=new Date(t.dateObj.getTime()),i=(a.getMonth()<w.currentMonth||a.getMonth()>w.currentMonth+w.config.showMonths-1)&&\"range\"!==w.config.mode;if(w.selectedDateElem=t,\"single\"===w.config.mode)w.selectedDates=[a];else if(\"multiple\"===w.config.mode){var o=ve(a);o?w.selectedDates.splice(parseInt(o),1):w.selectedDates.push(a)}else\"range\"===w.config.mode&&(2===w.selectedDates.length&&w.clear(!1,!1),w.latestSelectedDateObj=a,w.selectedDates.push(a),0!==M(a,w.selectedDates[0],!0)&&w.selectedDates.sort((function(e,n){return e.getTime()-n.getTime()})));if(I(),i){var r=w.currentYear!==a.getFullYear();w.currentYear=a.getFullYear(),w.currentMonth=a.getMonth(),r&&(pe(\"onYearChange\"),K()),pe(\"onMonthChange\")}if(De(),J(),be(),i||\"range\"===w.config.mode||1!==w.config.showMonths?void 0!==w.selectedDateElem&&void 0===w.hourElement&&w.selectedDateElem&&w.selectedDateElem.focus():L(t),void 0!==w.hourElement&&void 0!==w.hourElement&&w.hourElement.focus(),w.config.closeOnSelect){var l=\"single\"===w.config.mode&&!w.config.enableTime,c=\"range\"===w.config.mode&&2===w.selectedDates.length&&!w.config.enableTime;(l||c)&&se()}A()}}w.parseDate=C({config:w.config,l10n:w.l10n}),w._handlers=[],w.pluginElements=[],w.loadedPlugins=[],w._bind=N,w._setHoursFromDate=S,w._positionCalendar=ce,w.changeMonth=G,w.changeYear=Q,w.clear=function(e,n){if(void 0===e&&(e=!0),void 0===n&&(n=!0),w.input.value=\"\",void 0!==w.altInput&&(w.altInput.value=\"\"),void 0!==w.mobileInput&&(w.mobileInput.value=\"\"),w.selectedDates=[],w.latestSelectedDateObj=void 0,!0===n&&(w.currentYear=w._initialDate.getFullYear(),w.currentMonth=w._initialDate.getMonth()),!0===w.config.enableTime){var t=_(),a=t.hours,i=t.minutes,o=t.seconds;O(a,i,o)}w.redraw(),e&&pe(\"onChange\")},w.close=function(){w.isOpen=!1,w.isMobile||(void 0!==w.calendarContainer&&w.calendarContainer.classList.remove(\"open\"),void 0!==w._input&&w._input.classList.remove(\"active\")),pe(\"onClose\")},w._createElement=s,w.destroy=function(){void 0!==w.config&&pe(\"onDestroy\");for(var e=w._handlers.length;e--;){var n=w._handlers[e];n.element.removeEventListener(n.event,n.handler,n.options)}if(w._handlers=[],w.mobileInput)w.mobileInput.parentNode&&w.mobileInput.parentNode.removeChild(w.mobileInput),w.mobileInput=void 0;else if(w.calendarContainer&&w.calendarContainer.parentNode)if(w.config.static&&w.calendarContainer.parentNode){var t=w.calendarContainer.parentNode;if(t.lastChild&&t.removeChild(t.lastChild),t.parentNode){for(;t.firstChild;)t.parentNode.insertBefore(t.firstChild,t);t.parentNode.removeChild(t)}}else w.calendarContainer.parentNode.removeChild(w.calendarContainer);w.altInput&&(w.input.type=\"text\",w.altInput.parentNode&&w.altInput.parentNode.removeChild(w.altInput),delete w.altInput),w.input&&(w.input.type=w.input._type,w.input.classList.remove(\"flatpickr-input\"),w.input.removeAttribute(\"readonly\")),[\"_showTimeInput\",\"latestSelectedDateObj\",\"_hideNextMonthArrow\",\"_hidePrevMonthArrow\",\"__hideNextMonthArrow\",\"__hidePrevMonthArrow\",\"isMobile\",\"isOpen\",\"selectedDateElem\",\"minDateHasTime\",\"maxDateHasTime\",\"days\",\"daysContainer\",\"_input\",\"_positionElement\",\"innerContainer\",\"rContainer\",\"monthNav\",\"todayDateElem\",\"calendarContainer\",\"weekdayContainer\",\"prevMonthNav\",\"nextMonthNav\",\"monthsDropdownContainer\",\"currentMonthElement\",\"currentYearElement\",\"navigationCurrentMonth\",\"selectedDateElem\",\"config\"].forEach((function(e){try{delete w[e]}catch(e){}}))},w.isEnabled=X,w.jumpToDate=P,w.open=function(e,n){if(void 0===n&&(n=w._positionElement),!0===w.isMobile){if(e){e.preventDefault();var t=g(e);t&&t.blur()}return void 0!==w.mobileInput&&(w.mobileInput.focus(),w.mobileInput.click()),void pe(\"onOpen\")}if(!w._input.disabled&&!w.config.inline){var a=w.isOpen;w.isOpen=!0,a||(w.calendarContainer.classList.add(\"open\"),w._input.classList.add(\"active\"),pe(\"onOpen\"),ce(n)),!0===w.config.enableTime&&!0===w.config.noCalendar&&(!1!==w.config.allowInput||void 0!==e&&w.timeContainer.contains(e.relatedTarget)||setTimeout((function(){return w.hourElement.select()}),50))}},w.redraw=de,w.set=function(e,n){if(null!==e&&\"object\"==typeof e)for(var a in Object.assign(w.config,e),e)void 0!==fe[a]&&fe[a].forEach((function(e){return e()}));else w.config[e]=n,void 0!==fe[e]?fe[e].forEach((function(e){return e()})):t.indexOf(e)>-1&&(w.config[e]=c(n));w.redraw(),be(!0)},w.setDate=function(e,n,t){if(void 0===n&&(n=!1),void 0===t&&(t=w.config.dateFormat),0!==e&&!e||e instanceof Array&&0===e.length)return w.clear(n);me(e,t),w.latestSelectedDateObj=w.selectedDates[w.selectedDates.length-1],w.redraw(),P(void 0,n),S(),0===w.selectedDates.length&&w.clear(!1),be(n),n&&pe(\"onChange\")},w.toggle=function(e){if(!0===w.isOpen)return w.close();w.open(e)};var fe={locale:[le,z],showMonths:[q,E,$],minDate:[P],maxDate:[P]};function me(e,n){var t=[];if(e instanceof Array)t=e.map((function(e){return w.parseDate(e,n)}));else if(e instanceof Date||\"number\"==typeof e)t=[w.parseDate(e,n)];else if(\"string\"==typeof e)switch(w.config.mode){case\"single\":case\"time\":t=[w.parseDate(e,n)];break;case\"multiple\":t=e.split(w.config.conjunction).map((function(e){return w.parseDate(e,n)}));break;case\"range\":t=e.split(w.l10n.rangeSeparator).map((function(e){return w.parseDate(e,n)}))}else w.config.errorHandler(new Error(\"Invalid date supplied: \"+JSON.stringify(e)));w.selectedDates=w.config.allowInvalidPreload?t:t.filter((function(e){return e instanceof Date&&X(e,!1)})),\"range\"===w.config.mode&&w.selectedDates.sort((function(e,n){return e.getTime()-n.getTime()}))}function ge(e){return e.slice().map((function(e){return\"string\"==typeof e||\"number\"==typeof e||e instanceof Date?w.parseDate(e,void 0,!0):e&&\"object\"==typeof e&&e.from&&e.to?{from:w.parseDate(e.from,void 0),to:w.parseDate(e.to,void 0)}:e})).filter((function(e){return e}))}function pe(e,n){if(void 0!==w.config){var t=w.config[e];if(void 0!==t&&t.length>0)for(var a=0;t[a]&&a<t.length;a++)t[a](w.selectedDates,w.input.value,w,n);\"onChange\"===e&&(w.input.dispatchEvent(he(\"change\")),w.input.dispatchEvent(he(\"input\")))}}function he(e){var n=document.createEvent(\"Event\");return n.initEvent(e,!0,!0),n}function ve(e){for(var n=0;n<w.selectedDates.length;n++)if(0===M(w.selectedDates[n],e))return\"\"+n;return!1}function De(){w.config.noCalendar||w.isMobile||!w.monthNav||(w.yearElements.forEach((function(e,n){var t=new Date(w.currentYear,w.currentMonth,1);t.setMonth(w.currentMonth+n),w.config.showMonths>1||\"static\"===w.config.monthSelectorType?w.monthElements[n].textContent=h(t.getMonth(),w.config.shorthandCurrentMonth,w.l10n)+\" \":w.monthsDropdownContainer.value=t.getMonth().toString(),e.value=t.getFullYear().toString()})),w._hidePrevMonthArrow=void 0!==w.config.minDate&&(w.currentYear===w.config.minDate.getFullYear()?w.currentMonth<=w.config.minDate.getMonth():w.currentYear<w.config.minDate.getFullYear()),w._hideNextMonthArrow=void 0!==w.config.maxDate&&(w.currentYear===w.config.maxDate.getFullYear()?w.currentMonth+1>w.config.maxDate.getMonth():w.currentYear>w.config.maxDate.getFullYear()))}function we(e){return w.selectedDates.map((function(n){return w.formatDate(n,e)})).filter((function(e,n,t){return\"range\"!==w.config.mode||w.config.enableTime||t.indexOf(e)===n})).join(\"range\"!==w.config.mode?w.config.conjunction:w.l10n.rangeSeparator)}function be(e){void 0===e&&(e=!0),void 0!==w.mobileInput&&w.mobileFormatStr&&(w.mobileInput.value=void 0!==w.latestSelectedDateObj?w.formatDate(w.latestSelectedDateObj,w.mobileFormatStr):\"\"),w.input.value=we(w.config.dateFormat),void 0!==w.altInput&&(w.altInput.value=we(w.config.altFormat)),!1!==e&&pe(\"onValueUpdate\")}function Ce(e){var n=g(e),t=w.prevMonthNav.contains(n),a=w.nextMonthNav.contains(n);t||a?G(t?-1:1):w.yearElements.indexOf(n)>=0?n.select():n.classList.contains(\"arrowUp\")?w.changeYear(w.currentYear+1):n.classList.contains(\"arrowDown\")&&w.changeYear(w.currentYear-1)}return function(){w.element=w.input=p,w.isOpen=!1,function(){var n=[\"wrap\",\"weekNumbers\",\"allowInput\",\"allowInvalidPreload\",\"clickOpens\",\"time_24hr\",\"enableTime\",\"noCalendar\",\"altInput\",\"shorthandCurrentMonth\",\"inline\",\"static\",\"enableSeconds\",\"disableMobile\"],i=e(e({},JSON.parse(JSON.stringify(p.dataset||{}))),v),o={};w.config.parseDate=i.parseDate,w.config.formatDate=i.formatDate,Object.defineProperty(w.config,\"enable\",{get:function(){return w.config._enable},set:function(e){w.config._enable=ge(e)}}),Object.defineProperty(w.config,\"disable\",{get:function(){return w.config._disable},set:function(e){w.config._disable=ge(e)}});var r=\"time\"===i.mode;if(!i.dateFormat&&(i.enableTime||r)){var l=k.defaultConfig.dateFormat||a.dateFormat;o.dateFormat=i.noCalendar||r?\"H:i\"+(i.enableSeconds?\":S\":\"\"):l+\" H:i\"+(i.enableSeconds?\":S\":\"\")}if(i.altInput&&(i.enableTime||r)&&!i.altFormat){var d=k.defaultConfig.altFormat||a.altFormat;o.altFormat=i.noCalendar||r?\"h:i\"+(i.enableSeconds?\":S K\":\" K\"):d+\" h:i\"+(i.enableSeconds?\":S\":\"\")+\" K\"}Object.defineProperty(w.config,\"minDate\",{get:function(){return w.config._minDate},set:oe(\"min\")}),Object.defineProperty(w.config,\"maxDate\",{get:function(){return w.config._maxDate},set:oe(\"max\")});var s=function(e){return function(n){w.config[\"min\"===e?\"_minTime\":\"_maxTime\"]=w.parseDate(n,\"H:i:S\")}};Object.defineProperty(w.config,\"minTime\",{get:function(){return w.config._minTime},set:s(\"min\")}),Object.defineProperty(w.config,\"maxTime\",{get:function(){return w.config._maxTime},set:s(\"max\")}),\"time\"===i.mode&&(w.config.noCalendar=!0,w.config.enableTime=!0),Object.assign(w.config,o,i);for(var u=0;u<n.length;u++)w.config[n[u]]=!0===w.config[n[u]]||\"true\"===w.config[n[u]];for(t.filter((function(e){return void 0!==w.config[e]})).forEach((function(e){w.config[e]=c(w.config[e]||[]).map(x)})),w.isMobile=!w.config.disableMobile&&!w.config.inline&&\"single\"===w.config.mode&&!w.config.disable.length&&!w.config.enable.length&&!w.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),u=0;u<w.config.plugins.length;u++){var f=w.config.plugins[u](w)||{};for(var m in f)t.indexOf(m)>-1?w.config[m]=c(f[m]).map(x).concat(w.config[m]):void 0===i[m]&&(w.config[m]=f[m])}i.altInputClass||(w.config.altInputClass=re().className+\" \"+w.config.altInputClass),pe(\"onParseConfig\")}(),le(),w.input=re(),w.input?(w.input._type=w.input.type,w.input.type=\"text\",w.input.classList.add(\"flatpickr-input\"),w._input=w.input,w.config.altInput&&(w.altInput=s(w.input.nodeName,w.config.altInputClass),w._input=w.altInput,w.altInput.placeholder=w.input.placeholder,w.altInput.disabled=w.input.disabled,w.altInput.required=w.input.required,w.altInput.tabIndex=w.input.tabIndex,w.altInput.type=\"text\",w.input.setAttribute(\"type\",\"hidden\"),!w.config.static&&w.input.parentNode&&w.input.parentNode.insertBefore(w.altInput,w.input.nextSibling)),w.config.allowInput||w._input.setAttribute(\"readonly\",\"readonly\"),w._positionElement=w.config.positionElement||w._input):w.config.errorHandler(new Error(\"Invalid input element specified\")),function(){w.selectedDates=[],w.now=w.parseDate(w.config.now)||new Date;var e=w.config.defaultDate||(\"INPUT\"!==w.input.nodeName&&\"TEXTAREA\"!==w.input.nodeName||!w.input.placeholder||w.input.value!==w.input.placeholder?w.input.value:null);e&&me(e,w.config.dateFormat),w._initialDate=w.selectedDates.length>0?w.selectedDates[0]:w.config.minDate&&w.config.minDate.getTime()>w.now.getTime()?w.config.minDate:w.config.maxDate&&w.config.maxDate.getTime()<w.now.getTime()?w.config.maxDate:w.now,w.currentYear=w._initialDate.getFullYear(),w.currentMonth=w._initialDate.getMonth(),w.selectedDates.length>0&&(w.latestSelectedDateObj=w.selectedDates[0]),void 0!==w.config.minTime&&(w.config.minTime=w.parseDate(w.config.minTime,\"H:i\")),void 0!==w.config.maxTime&&(w.config.maxTime=w.parseDate(w.config.maxTime,\"H:i\")),w.minDateHasTime=!!w.config.minDate&&(w.config.minDate.getHours()>0||w.config.minDate.getMinutes()>0||w.config.minDate.getSeconds()>0),w.maxDateHasTime=!!w.config.maxDate&&(w.config.maxDate.getHours()>0||w.config.maxDate.getMinutes()>0||w.config.maxDate.getSeconds()>0)}(),w.utils={getDaysInMonth:function(e,n){return void 0===e&&(e=w.currentMonth),void 0===n&&(n=w.currentYear),1===e&&(n%4==0&&n%100!=0||n%400==0)?29:w.l10n.daysInMonth[e]}},w.isMobile||function(){var e=window.document.createDocumentFragment();if(w.calendarContainer=s(\"div\",\"flatpickr-calendar\"),w.calendarContainer.tabIndex=-1,!w.config.noCalendar){if(e.appendChild((w.monthNav=s(\"div\",\"flatpickr-months\"),w.yearElements=[],w.monthElements=[],w.prevMonthNav=s(\"span\",\"flatpickr-prev-month\"),w.prevMonthNav.innerHTML=w.config.prevArrow,w.nextMonthNav=s(\"span\",\"flatpickr-next-month\"),w.nextMonthNav.innerHTML=w.config.nextArrow,q(),Object.defineProperty(w,\"_hidePrevMonthArrow\",{get:function(){return w.__hidePrevMonthArrow},set:function(e){w.__hidePrevMonthArrow!==e&&(d(w.prevMonthNav,\"flatpickr-disabled\",e),w.__hidePrevMonthArrow=e)}}),Object.defineProperty(w,\"_hideNextMonthArrow\",{get:function(){return w.__hideNextMonthArrow},set:function(e){w.__hideNextMonthArrow!==e&&(d(w.nextMonthNav,\"flatpickr-disabled\",e),w.__hideNextMonthArrow=e)}}),w.currentYearElement=w.yearElements[0],De(),w.monthNav)),w.innerContainer=s(\"div\",\"flatpickr-innerContainer\"),w.config.weekNumbers){var n=function(){w.calendarContainer.classList.add(\"hasWeeks\");var e=s(\"div\",\"flatpickr-weekwrapper\");e.appendChild(s(\"span\",\"flatpickr-weekday\",w.l10n.weekAbbreviation));var n=s(\"div\",\"flatpickr-weeks\");return e.appendChild(n),{weekWrapper:e,weekNumbers:n}}(),t=n.weekWrapper,a=n.weekNumbers;w.innerContainer.appendChild(t),w.weekNumbers=a,w.weekWrapper=t}w.rContainer=s(\"div\",\"flatpickr-rContainer\"),w.rContainer.appendChild($()),w.daysContainer||(w.daysContainer=s(\"div\",\"flatpickr-days\"),w.daysContainer.tabIndex=-1),J(),w.rContainer.appendChild(w.daysContainer),w.innerContainer.appendChild(w.rContainer),e.appendChild(w.innerContainer)}w.config.enableTime&&e.appendChild(function(){w.calendarContainer.classList.add(\"hasTime\"),w.config.noCalendar&&w.calendarContainer.classList.add(\"noCalendar\"),w.timeContainer=s(\"div\",\"flatpickr-time\"),w.timeContainer.tabIndex=-1;var e=s(\"span\",\"flatpickr-time-separator\",\":\"),n=m(\"flatpickr-hour\",{\"aria-label\":w.l10n.hourAriaLabel});w.hourElement=n.getElementsByTagName(\"input\")[0];var t=m(\"flatpickr-minute\",{\"aria-label\":w.l10n.minuteAriaLabel});if(w.minuteElement=t.getElementsByTagName(\"input\")[0],w.hourElement.tabIndex=w.minuteElement.tabIndex=-1,w.hourElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getHours():w.config.time_24hr?w.config.defaultHour:function(e){switch(e%24){case 0:case 12:return 12;default:return e%12}}(w.config.defaultHour)),w.minuteElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getMinutes():w.config.defaultMinute),w.hourElement.setAttribute(\"step\",w.config.hourIncrement.toString()),w.minuteElement.setAttribute(\"step\",w.config.minuteIncrement.toString()),w.hourElement.setAttribute(\"min\",w.config.time_24hr?\"0\":\"1\"),w.hourElement.setAttribute(\"max\",w.config.time_24hr?\"23\":\"12\"),w.minuteElement.setAttribute(\"min\",\"0\"),w.minuteElement.setAttribute(\"max\",\"59\"),w.timeContainer.appendChild(n),w.timeContainer.appendChild(e),w.timeContainer.appendChild(t),w.config.time_24hr&&w.timeContainer.classList.add(\"time24hr\"),w.config.enableSeconds){w.timeContainer.classList.add(\"hasSeconds\");var a=m(\"flatpickr-second\");w.secondElement=a.getElementsByTagName(\"input\")[0],w.secondElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getSeconds():w.config.defaultSeconds),w.secondElement.setAttribute(\"step\",w.minuteElement.getAttribute(\"step\")),w.secondElement.setAttribute(\"min\",\"0\"),w.secondElement.setAttribute(\"max\",\"59\"),w.timeContainer.appendChild(s(\"span\",\"flatpickr-time-separator\",\":\")),w.timeContainer.appendChild(a)}return w.config.time_24hr||(w.amPM=s(\"span\",\"flatpickr-am-pm\",w.l10n.amPM[r((w.latestSelectedDateObj?w.hourElement.value:w.config.defaultHour)>11)]),w.amPM.title=w.l10n.toggleTitle,w.amPM.tabIndex=-1,w.timeContainer.appendChild(w.amPM)),w.timeContainer}()),d(w.calendarContainer,\"rangeMode\",\"range\"===w.config.mode),d(w.calendarContainer,\"animate\",!0===w.config.animate),d(w.calendarContainer,\"multiMonth\",w.config.showMonths>1),w.calendarContainer.appendChild(e);var i=void 0!==w.config.appendTo&&void 0!==w.config.appendTo.nodeType;if((w.config.inline||w.config.static)&&(w.calendarContainer.classList.add(w.config.inline?\"inline\":\"static\"),w.config.inline&&(!i&&w.element.parentNode?w.element.parentNode.insertBefore(w.calendarContainer,w._input.nextSibling):void 0!==w.config.appendTo&&w.config.appendTo.appendChild(w.calendarContainer)),w.config.static)){var l=s(\"div\",\"flatpickr-wrapper\");w.element.parentNode&&w.element.parentNode.insertBefore(l,w.element),l.appendChild(w.element),w.altInput&&l.appendChild(w.altInput),l.appendChild(w.calendarContainer)}w.config.static||w.config.inline||(void 0!==w.config.appendTo?w.config.appendTo:window.document.body).appendChild(w.calendarContainer)}(),function(){if(w.config.wrap&&[\"open\",\"close\",\"toggle\",\"clear\"].forEach((function(e){Array.prototype.forEach.call(w.element.querySelectorAll(\"[data-\"+e+\"]\"),(function(n){return N(n,\"click\",w[e])}))})),w.isMobile)!function(){var e=w.config.enableTime?w.config.noCalendar?\"time\":\"datetime-local\":\"date\";w.mobileInput=s(\"input\",w.input.className+\" flatpickr-mobile\"),w.mobileInput.tabIndex=1,w.mobileInput.type=e,w.mobileInput.disabled=w.input.disabled,w.mobileInput.required=w.input.required,w.mobileInput.placeholder=w.input.placeholder,w.mobileFormatStr=\"datetime-local\"===e?\"Y-m-d\\\\TH:i:S\":\"date\"===e?\"Y-m-d\":\"H:i:S\",w.selectedDates.length>0&&(w.mobileInput.defaultValue=w.mobileInput.value=w.formatDate(w.selectedDates[0],w.mobileFormatStr)),w.config.minDate&&(w.mobileInput.min=w.formatDate(w.config.minDate,\"Y-m-d\")),w.config.maxDate&&(w.mobileInput.max=w.formatDate(w.config.maxDate,\"Y-m-d\")),w.input.getAttribute(\"step\")&&(w.mobileInput.step=String(w.input.getAttribute(\"step\"))),w.input.type=\"hidden\",void 0!==w.altInput&&(w.altInput.type=\"hidden\");try{w.input.parentNode&&w.input.parentNode.insertBefore(w.mobileInput,w.input.nextSibling)}catch(e){}N(w.mobileInput,\"change\",(function(e){w.setDate(g(e).value,!1,w.mobileFormatStr),pe(\"onChange\"),pe(\"onClose\")}))}();else{var e=l(ie,50);if(w._debouncedChange=l(A,300),w.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&N(w.daysContainer,\"mouseover\",(function(e){\"range\"===w.config.mode&&ae(g(e))})),N(window.document.body,\"keydown\",te),w.config.inline||w.config.static||N(window,\"resize\",e),void 0!==window.ontouchstart?N(window.document,\"touchstart\",Z):N(window.document,\"click\",Z),N(window.document,\"focus\",Z,{capture:!0}),!0===w.config.clickOpens&&(N(w._input,\"focus\",w.open),N(w._input,\"click\",w.open)),void 0!==w.daysContainer&&(N(w.monthNav,\"click\",Ce),N(w.monthNav,[\"keyup\",\"increment\"],F),N(w.daysContainer,\"click\",ue)),void 0!==w.timeContainer&&void 0!==w.minuteElement&&void 0!==w.hourElement){var n=function(e){return g(e).select()};N(w.timeContainer,[\"increment\"],T),N(w.timeContainer,\"blur\",T,{capture:!0}),N(w.timeContainer,\"click\",Y),N([w.hourElement,w.minuteElement],[\"focus\",\"click\"],n),void 0!==w.secondElement&&N(w.secondElement,\"focus\",(function(){return w.secondElement&&w.secondElement.select()})),void 0!==w.amPM&&N(w.amPM,\"click\",(function(e){T(e),A()}))}w.config.allowInput&&N(w._input,\"blur\",ne)}}(),(w.selectedDates.length||w.config.noCalendar)&&(w.config.enableTime&&S(w.config.noCalendar?w.latestSelectedDateObj||w.config.minDate:void 0),be(!1)),E();var n=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!w.isMobile&&n&&ce(),pe(\"onReady\")}(),w}function E(e,n){for(var t=Array.prototype.slice.call(e).filter((function(e){return e instanceof HTMLElement})),a=[],i=0;i<t.length;i++){var o=t[i];try{if(null!==o.getAttribute(\"data-fp-omit\"))continue;void 0!==o._flatpickr&&(o._flatpickr.destroy(),o._flatpickr=void 0),o._flatpickr=x(o,n||{}),a.push(o._flatpickr)}catch(e){console.error(e)}}return 1===a.length?a[0]:a}\"function\"!=typeof Object.assign&&(Object.assign=function(e){for(var n=[],t=1;t<arguments.length;t++)n[t-1]=arguments[t];if(!e)throw TypeError(\"Cannot convert undefined or null to object\");for(var a=function(n){n&&Object.keys(n).forEach((function(t){return e[t]=n[t]}))},i=0,o=n;i<o.length;i++){var r=o[i];a(r)}return e}),\"undefined\"!=typeof HTMLElement&&\"undefined\"!=typeof HTMLCollection&&\"undefined\"!=typeof NodeList&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(e){return E(this,e)},HTMLElement.prototype.flatpickr=function(e){return E([this],e)});var k=function(e,n){return\"string\"==typeof e?E(window.document.querySelectorAll(e),n):e instanceof Node?E([e],n):E(e,n)};return k.defaultConfig={},k.l10ns={en:e({},i),default:e({},i)},k.localize=function(n){k.l10ns.default=e(e({},k.l10ns.default),n)},k.setDefaults=function(n){k.defaultConfig=e(e({},k.defaultConfig),n)},k.parseDate=C({}),k.formatDate=b({}),k.compareDates=M,\"undefined\"!=typeof jQuery&&void 0!==jQuery.fn&&(jQuery.fn.flatpickr=function(e){return E(this,e)}),Date.prototype.fp_incr=function(e){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+(\"string\"==typeof e?parseInt(e,10):e))},\"undefined\"!=typeof window&&(window.flatpickr=k),k},\"object\"==typeof t&&void 0!==n?n.exports=r():\"function\"==typeof define&&define.amd?define(r):(o=o||self).flatpickr=r()},\n", " 436: function _(t,e,a,r,i){r(),a.default='.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;background:#fff;-webkit-box-shadow:1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);box-shadow:1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible;}.flatpickr-calendar.open{display:inline-block;z-index:99999;}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);}.flatpickr-calendar.inline{display:block;position:relative;top:2px;}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px);}.flatpickr-calendar.static.open{z-index:999;display:block;}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none !important;box-shadow:none !important;}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0;}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0;}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #e6e6e6;}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto;}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:\\'\\';height:0;width:0;left:22px;}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px;}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%;}.flatpickr-calendar:before{border-width:5px;margin:0 -5px;}.flatpickr-calendar:after{border-width:4px;margin:0 -4px;}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%;}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6;}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff;}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%;}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6;}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff;}.flatpickr-calendar:focus{outline:0;}.flatpickr-wrapper{position:relative;display:inline-block;}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.flatpickr-months .flatpickr-month{background:transparent;color:rgba(0, 0, 0, 0.9);fill:rgba(0, 0, 0, 0.9);height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:rgba(0, 0, 0, 0.9);fill:rgba(0, 0, 0, 0.9);}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none;}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative;}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0;}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0;}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9;}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747;}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px;}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill 0.1s;transition:fill 0.1s;fill:inherit;}.numInputWrapper{position:relative;height:auto;}.numInputWrapper input,.numInputWrapper span{display:inline-block;}.numInputWrapper input{width:100%;}.numInputWrapper input::-ms-clear{display:none;}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none;}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(57, 57, 57, 0.15);-webkit-box-sizing:border-box;box-sizing:border-box;}.numInputWrapper span:hover{background:rgba(0, 0, 0, 0.1);}.numInputWrapper span:active{background:rgba(0, 0, 0, 0.2);}.numInputWrapper span:after{display:block;content:\"\";position:absolute;}.numInputWrapper span.arrowUp{top:0;border-bottom:0;}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(57, 57, 57, 0.6);top:26%;}.numInputWrapper span.arrowDown{top:50%;}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(57, 57, 57, 0.6);top:40%;}.numInputWrapper span svg{width:inherit;height:auto;}.numInputWrapper span svg path{fill:rgba(0, 0, 0, 0.5);}.numInputWrapper:hover{background:rgba(0, 0, 0, 0.05);}.numInputWrapper:hover span{opacity:1;}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px);}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:0.5ch;padding:0;}.flatpickr-current-month span.cur-month:hover{background:rgba(0, 0, 0, 0.05);}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch\\0;display:inline-block;}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:rgba(0, 0, 0, 0.9);}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:rgba(0, 0, 0, 0.9);}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 0.5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;}.flatpickr-current-month input.cur-year:focus{outline:0;}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(0, 0, 0, 0.5);background:transparent;pointer-events:none;}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:transparent;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:none;padding:0 0 0 0.5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto;}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none;}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0, 0, 0, 0.05);}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:none;padding:0;}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px;}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:rgba(0, 0, 0, 0.54);line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder;}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0;}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;}.flatpickr-days:focus{outline:0;}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px);opacity:1;}.dayContainer + .dayContainer{-webkit-box-shadow:-1px 0 0 #e6e6e6;box-shadow:-1px 0 0 #e6e6e6;}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#393939;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center;}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e6e6e6;border-color:#e6e6e6;}.flatpickr-day.today{border-color:#959ea9;}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff;}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#569ff7;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#569ff7;}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px;}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0;}.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #569ff7;box-shadow:-10px 0 0 #569ff7;}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px;}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;box-shadow:-5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:rgba(57, 57, 57, 0.3);background:transparent;border-color:transparent;cursor:default;}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(57, 57, 57, 0.1);}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #569ff7, 5px 0 0 #569ff7;box-shadow:-5px 0 0 #569ff7, 5px 0 0 #569ff7;}.flatpickr-day.hidden{visibility:hidden;}.rangeMode .flatpickr-day{margin-top:1px;}.flatpickr-weekwrapper{float:left;}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;-webkit-box-shadow:1px 0 0 #e6e6e6;box-shadow:1px 0 0 #e6e6e6;}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px;}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(57, 57, 57, 0.3);background:transparent;cursor:default;border:none;}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box;}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.flatpickr-time:after{content:\"\";display:table;clear:both;}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left;}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939;}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939;}.flatpickr-time.hasSeconds .numInputWrapper{width:26%;}.flatpickr-time.time24hr .numInputWrapper{width:49%;}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#393939;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;}.flatpickr-time input.flatpickr-hour{font-weight:bold;}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400;}.flatpickr-time input:focus{outline:0;border:0;}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;font-weight:bold;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400;}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee;}.flatpickr-input[readonly]{cursor:pointer;}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0);}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0);}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}}.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-box-shadow:0 3px 13px rgba(0, 0, 0, 0.08);box-shadow:0 3px 13px rgba(0, 0, 0, 0.08);}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible;}.flatpickr-calendar.open{display:inline-block;z-index:99999;}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);}.flatpickr-calendar.inline{display:block;position:relative;top:2px;}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px);}.flatpickr-calendar.static.open{z-index:999;display:block;}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none !important;box-shadow:none !important;}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0;}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0;}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #eceef1;}.flatpickr-calendar.hasTime .flatpickr-innerContainer{border-bottom:0;}.flatpickr-calendar.hasTime .flatpickr-time{border:1px solid #eceef1;}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto;}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:\\'\\';height:0;width:0;left:22px;}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px;}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%;}.flatpickr-calendar:before{border-width:5px;margin:0 -5px;}.flatpickr-calendar:after{border-width:4px;margin:0 -4px;}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%;}.flatpickr-calendar.arrowTop:before{border-bottom-color:#eceef1;}.flatpickr-calendar.arrowTop:after{border-bottom-color:#eceef1;}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%;}.flatpickr-calendar.arrowBottom:before{border-top-color:#eceef1;}.flatpickr-calendar.arrowBottom:after{border-top-color:#eceef1;}.flatpickr-calendar:focus{outline:0;}.flatpickr-wrapper{position:relative;display:inline-block;}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.flatpickr-months .flatpickr-month{border-radius:5px 5px 0 0;background:#eceef1;color:#5a6171;fill:#5a6171;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#5a6171;fill:#5a6171;}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none;}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative;}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0;}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0;}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#bbb;}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747;}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px;}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill 0.1s;transition:fill 0.1s;fill:inherit;}.numInputWrapper{position:relative;height:auto;}.numInputWrapper input,.numInputWrapper span{display:inline-block;}.numInputWrapper input{width:100%;}.numInputWrapper input::-ms-clear{display:none;}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none;}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(72, 72, 72, 0.15);-webkit-box-sizing:border-box;box-sizing:border-box;}.numInputWrapper span:hover{background:rgba(0, 0, 0, 0.1);}.numInputWrapper span:active{background:rgba(0, 0, 0, 0.2);}.numInputWrapper span:after{display:block;content:\"\";position:absolute;}.numInputWrapper span.arrowUp{top:0;border-bottom:0;}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(72, 72, 72, 0.6);top:26%;}.numInputWrapper span.arrowDown{top:50%;}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(72, 72, 72, 0.6);top:40%;}.numInputWrapper span svg{width:inherit;height:auto;}.numInputWrapper span svg path{fill:rgba(90, 97, 113, 0.5);}.numInputWrapper:hover{background:rgba(0, 0, 0, 0.05);}.numInputWrapper:hover span{opacity:1;}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px);}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:0.5ch;padding:0;}.flatpickr-current-month span.cur-month:hover{background:rgba(0, 0, 0, 0.05);}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch\\0;display:inline-block;}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#5a6171;}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#5a6171;}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 0.5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;}.flatpickr-current-month input.cur-year:focus{outline:0;}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(90, 97, 113, 0.5);background:transparent;pointer-events:none;}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:#eceef1;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:none;padding:0 0 0 0.5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto;}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none;}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0, 0, 0, 0.05);}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#eceef1;outline:none;padding:0;}.flatpickr-weekdays{background:#eceef1;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px;}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;}span.flatpickr-weekday{cursor:default;font-size:90%;background:#eceef1;color:#5a6171;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder;}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0;}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;border-left:1px solid #eceef1;border-right:1px solid #eceef1;}.flatpickr-days:focus{outline:0;}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px);opacity:1;}.dayContainer + .dayContainer{-webkit-box-shadow:-1px 0 0 #eceef1;box-shadow:-1px 0 0 #eceef1;}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#484848;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center;}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e2e2e2;border-color:#e2e2e2;}.flatpickr-day.today{border-color:#bbb;}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#bbb;background:#bbb;color:#fff;}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#ff5a5f;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#ff5a5f;}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px;}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0;}.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #ff5a5f;box-shadow:-10px 0 0 #ff5a5f;}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px;}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;box-shadow:-5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:rgba(72, 72, 72, 0.3);background:transparent;border-color:transparent;cursor:default;}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(72, 72, 72, 0.1);}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f;box-shadow:-5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f;}.flatpickr-day.hidden{visibility:hidden;}.rangeMode .flatpickr-day{margin-top:1px;}.flatpickr-weekwrapper{float:left;}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;border-left:1px solid #eceef1;}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px;}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(72, 72, 72, 0.3);background:transparent;cursor:default;border:none;}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;background:#fff;border-bottom:1px solid #eceef1;}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box;}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background:#fff;border-radius:0 0 5px 5px;}.flatpickr-time:after{content:\"\";display:table;clear:both;}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left;}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#484848;}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#484848;}.flatpickr-time.hasSeconds .numInputWrapper{width:26%;}.flatpickr-time.time24hr .numInputWrapper{width:49%;}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#484848;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;}.flatpickr-time input.flatpickr-hour{font-weight:bold;}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400;}.flatpickr-time input:focus{outline:0;border:0;}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#484848;font-weight:bold;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400;}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eaeaea;}.flatpickr-input[readonly]{cursor:pointer;}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0);}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0);}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}}span.flatpickr-day.selected{font-weight:bold;}'},\n", " 437: function _(e,t,a,i,r){i();const n=e(1).__importDefault(e(181)),s=e(438),d=e(8);class _ extends s.AbstractRangeSliderView{}a.DateRangeSliderView=_,_.__name__=\"DateRangeSliderView\";class l extends s.AbstractSlider{constructor(e){super(e),this.behaviour=\"drag\",this.connected=[!1,!0,!1]}static init_DateRangeSlider(){this.prototype.default_view=_,this.override({format:\"%d %b %Y\"})}_formatter(e,t){return d.isString(t)?n.default(e,t):t.compute(e)}}a.DateRangeSlider=l,l.__name__=\"DateRangeSlider\",l.init_DateRangeSlider()},\n", " 438: function _(t,e,i,s,l){s();const r=t(1),o=r.__importStar(t(439)),n=t(43),a=t(9),d=t(22),_=t(420),h=t(166),c=r.__importStar(t(440)),m=c,u=r.__importDefault(t(441)),p=r.__importStar(t(427));class b extends _.ControlView{*controls(){yield this.slider_el}get noUiSlider(){return this.slider_el.noUiSlider}connect_signals(){super.connect_signals();const{direction:t,orientation:e,tooltips:i}=this.model.properties;this.on_change([t,e,i],(()=>this.render()));const{start:s,end:l,value:r,step:o,title:n}=this.model.properties;this.on_change([s,l,r,o],(()=>{const{start:t,end:e,value:i,step:s}=this._calc_to();this.noUiSlider.updateOptions({range:{min:t,max:e},start:i,step:s})}));const{bar_color:a}=this.model.properties;this.on_change(a,(()=>{this._set_bar_color()}));const{show_value:d}=this.model.properties;this.on_change([r,n,d],(()=>this._update_title()))}styles(){return[...super.styles(),u.default,c.default]}_update_title(){var t;n.empty(this.title_el);const e=null==this.model.title||0==this.model.title.length&&!this.model.show_value;if(this.title_el.style.display=e?\"none\":\"\",!e&&(0!=(null===(t=this.model.title)||void 0===t?void 0:t.length)&&(this.title_el.textContent=`${this.model.title}: `),this.model.show_value)){const{value:t}=this._calc_to(),e=t.map((t=>this.model.pretty(t))).join(\" .. \");this.title_el.appendChild(n.span({class:m.slider_value},e))}}_set_bar_color(){if(!this.model.disabled){this.slider_el.querySelector(\".noUi-connect\").style.backgroundColor=d.color2css(this.model.bar_color)}}render(){super.render();const{start:t,end:e,value:i,step:s}=this._calc_to();let l;if(this.model.tooltips){const t={to:t=>this.model.pretty(t)};l=a.repeat(t,i.length)}else l=!1;if(null==this.slider_el){this.slider_el=n.div(),o.create(this.slider_el,{range:{min:t,max:e},start:i,step:s,behaviour:this.model.behaviour,connect:this.model.connected,tooltips:l,orientation:this.model.orientation,direction:this.model.direction}),this.noUiSlider.on(\"slide\",((t,e,i)=>this._slide(i))),this.noUiSlider.on(\"change\",((t,e,i)=>this._change(i)));const r=(t,e)=>{if(!l)return;this.slider_el.querySelectorAll(\".noUi-handle\")[t].querySelector(\".noUi-tooltip\").style.display=e?\"block\":\"\"};this.noUiSlider.on(\"start\",((t,e)=>r(e,!0))),this.noUiSlider.on(\"end\",((t,e)=>r(e,!1)))}else this.noUiSlider.updateOptions({range:{min:t,max:e},start:i,step:s});this._set_bar_color(),this.model.disabled?this.slider_el.setAttribute(\"disabled\",\"true\"):this.slider_el.removeAttribute(\"disabled\"),this.title_el=n.div({class:m.slider_title}),this._update_title(),this.group_el=n.div({class:p.input_group},this.title_el,this.slider_el),this.el.appendChild(this.group_el)}_slide(t){this.model.value=this._calc_from(t)}_change(t){const e=this._calc_from(t);this.model.setv({value:e,value_throttled:e})}}b.__name__=\"AbstractBaseSliderView\";class v extends b{_calc_to(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}}_calc_from([t]){return Number.isInteger(this.model.start)&&Number.isInteger(this.model.end)&&Number.isInteger(this.model.step)?Math.round(t):t}}i.AbstractSliderView=v,v.__name__=\"AbstractSliderView\";class g extends b{_calc_to(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}}_calc_from(t){return t}}i.AbstractRangeSliderView=g,g.__name__=\"AbstractRangeSliderView\";class S extends _.Control{constructor(t){super(t),this.connected=!1}static init_AbstractSlider(){this.define((({Any:t,Boolean:e,Number:i,String:s,Color:l,Or:r,Enum:o,Ref:n,Nullable:a})=>({title:[a(s),\"\"],show_value:[e,!0],start:[t],end:[t],value:[t],value_throttled:[t],step:[i,1],format:[r(s,n(h.TickFormatter))],direction:[o(\"ltr\",\"rtl\"),\"ltr\"],tooltips:[e,!0],bar_color:[l,\"#e6e6e6\"]})))}pretty(t){return this._formatter(t,this.format)}}i.AbstractSlider=S,S.__name__=\"AbstractSlider\",S.init_AbstractSlider()},\n", " 439: function _(t,e,r,n,i){\n", " /*! nouislider - 14.6.3 - 11/19/2020 */\n", " var o;o=function(){\"use strict\";var t=\"14.6.3\";function e(t){t.parentElement.removeChild(t)}function r(t){return null!=t}function n(t){t.preventDefault()}function i(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function o(t,e,r){r>0&&(u(t,e),setTimeout((function(){c(t,e)}),r))}function s(t){return Math.max(Math.min(t,100),0)}function a(t){return Array.isArray(t)?t:[t]}function l(t){var e=(t=String(t)).split(\".\");return e.length>1?e[1].length:0}function u(t,e){t.classList&&!/\\s/.test(e)?t.classList.add(e):t.className+=\" \"+e}function c(t,e){t.classList&&!/\\s/.test(e)?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function p(t){var e=void 0!==window.pageXOffset,r=\"CSS1Compat\"===(t.compatMode||\"\");return{x:e?window.pageXOffset:r?t.documentElement.scrollLeft:t.body.scrollLeft,y:e?window.pageYOffset:r?t.documentElement.scrollTop:t.body.scrollTop}}function f(t,e){return 100/(e-t)}function d(t,e,r){return 100*e/(t[r+1]-t[r])}function h(t,e){for(var r=1;t>=e[r];)r+=1;return r}function m(t,e,r){if(r>=t.slice(-1)[0])return 100;var n=h(r,t),i=t[n-1],o=t[n],s=e[n-1],a=e[n];return s+function(t,e){return d(t,t[0]<0?e+Math.abs(t[0]):e-t[0],0)}([i,o],r)/f(s,a)}function g(t,e,r,n){if(100===n)return n;var i=h(n,t),o=t[i-1],s=t[i];return r?n-o>(s-o)/2?s:o:e[i-1]?t[i-1]+function(t,e){return Math.round(t/e)*e}(n-t[i-1],e[i-1]):n}function v(t,e,r){var n;if(\"number\"==typeof e&&(e=[e]),!Array.isArray(e))throw new Error(\"noUiSlider (14.6.3): 'range' contains invalid value.\");if(!i(n=\"min\"===t?0:\"max\"===t?100:parseFloat(t))||!i(e[0]))throw new Error(\"noUiSlider (14.6.3): 'range' value isn't numeric.\");r.xPct.push(n),r.xVal.push(e[0]),n?r.xSteps.push(!isNaN(e[1])&&e[1]):isNaN(e[1])||(r.xSteps[0]=e[1]),r.xHighestCompleteStep.push(0)}function b(t,e,r){if(e)if(r.xVal[t]!==r.xVal[t+1]){r.xSteps[t]=d([r.xVal[t],r.xVal[t+1]],e,0)/f(r.xPct[t],r.xPct[t+1]);var n=(r.xVal[t+1]-r.xVal[t])/r.xNumSteps[t],i=Math.ceil(Number(n.toFixed(3))-1),o=r.xVal[t]+r.xNumSteps[t]*i;r.xHighestCompleteStep[t]=o}else r.xSteps[t]=r.xHighestCompleteStep[t]=r.xVal[t]}function x(t,e,r){var n;this.xPct=[],this.xVal=[],this.xSteps=[r||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i=[];for(n in t)t.hasOwnProperty(n)&&i.push([t[n],n]);for(i.length&&\"object\"==typeof i[0][0]?i.sort((function(t,e){return t[0][0]-e[0][0]})):i.sort((function(t,e){return t[0]-e[0]})),n=0;n<i.length;n++)v(i[n][1],i[n][0],this);for(this.xNumSteps=this.xSteps.slice(0),n=0;n<this.xNumSteps.length;n++)b(n,this.xNumSteps[n],this)}x.prototype.getDistance=function(t){var e,r=[];for(e=0;e<this.xNumSteps.length-1;e++){var n=this.xNumSteps[e];if(n&&t/n%1!=0)throw new Error(\"noUiSlider (14.6.3): 'limit', 'margin' and 'padding' of \"+this.xPct[e]+\"% range must be divisible by step.\");r[e]=d(this.xVal,t,e)}return r},x.prototype.getAbsoluteDistance=function(t,e,r){var n,i=0;if(t<this.xPct[this.xPct.length-1])for(;t>this.xPct[i+1];)i++;else t===this.xPct[this.xPct.length-1]&&(i=this.xPct.length-2);r||t!==this.xPct[i+1]||i++;var o=1,s=e[i],a=0,l=0,u=0,c=0;for(n=r?(t-this.xPct[i])/(this.xPct[i+1]-this.xPct[i]):(this.xPct[i+1]-t)/(this.xPct[i+1]-this.xPct[i]);s>0;)a=this.xPct[i+1+c]-this.xPct[i+c],e[i+c]*o+100-100*n>100?(l=a*n,o=(s-100*n)/e[i+c],n=1):(l=e[i+c]*a/100*o,o=0),r?(u-=l,this.xPct.length+c>=1&&c--):(u+=l,this.xPct.length-c>=1&&c++),s=e[i+c]*o;return t+u},x.prototype.toStepping=function(t){return t=m(this.xVal,this.xPct,t)},x.prototype.fromStepping=function(t){return function(t,e,r){if(r>=100)return t.slice(-1)[0];var n=h(r,e),i=t[n-1],o=t[n],s=e[n-1];return function(t,e){return e*(t[1]-t[0])/100+t[0]}([i,o],(r-s)*f(s,e[n]))}(this.xVal,this.xPct,t)},x.prototype.getStep=function(t){return t=g(this.xPct,this.xSteps,this.snap,t)},x.prototype.getDefaultStep=function(t,e,r){var n=h(t,this.xPct);return(100===t||e&&t===this.xPct[n-1])&&(n=Math.max(n-1,1)),(this.xVal[n]-this.xVal[n-1])/r},x.prototype.getNearbySteps=function(t){var e=h(t,this.xPct);return{stepBefore:{startValue:this.xVal[e-2],step:this.xNumSteps[e-2],highestStep:this.xHighestCompleteStep[e-2]},thisStep:{startValue:this.xVal[e-1],step:this.xNumSteps[e-1],highestStep:this.xHighestCompleteStep[e-1]},stepAfter:{startValue:this.xVal[e],step:this.xNumSteps[e],highestStep:this.xHighestCompleteStep[e]}}},x.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(l);return Math.max.apply(null,t)},x.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var S={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number},w={target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",touchArea:\"touch-area\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",connects:\"connects\",ltr:\"ltr\",rtl:\"rtl\",textDirectionLtr:\"txt-dir-ltr\",textDirectionRtl:\"txt-dir-rtl\",draggable:\"draggable\",drag:\"state-drag\",tap:\"state-tap\",active:\"active\",tooltip:\"tooltip\",pips:\"pips\",pipsHorizontal:\"pips-horizontal\",pipsVertical:\"pips-vertical\",marker:\"marker\",markerHorizontal:\"marker-horizontal\",markerVertical:\"marker-vertical\",markerNormal:\"marker-normal\",markerLarge:\"marker-large\",markerSub:\"marker-sub\",value:\"value\",valueHorizontal:\"value-horizontal\",valueVertical:\"value-vertical\",valueNormal:\"value-normal\",valueLarge:\"value-large\",valueSub:\"value-sub\"},y=\".__tooltips\",E=\".__aria\";function C(t){if(function(t){return\"object\"==typeof t&&\"function\"==typeof t.to&&\"function\"==typeof t.from}(t))return!0;throw new Error(\"noUiSlider (14.6.3): 'format' requires 'to' and 'from' methods.\")}function P(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'step' is not numeric.\");t.singleStep=e}function N(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'keyboardPageMultiplier' is not numeric.\");t.keyboardPageMultiplier=e}function k(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'keyboardDefaultStep' is not numeric.\");t.keyboardDefaultStep=e}function U(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider (14.6.3): 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider (14.6.3): Missing 'min' or 'max' in 'range'.\");if(e.min===e.max)throw new Error(\"noUiSlider (14.6.3): 'range' 'min' and 'max' cannot be equal.\");t.spectrum=new x(e,t.snap,t.singleStep)}function A(t,e){if(e=a(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider (14.6.3): 'start' option is incorrect.\");t.handles=e.length,t.start=e}function V(t,e){if(t.snap=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'snap' option must be a boolean.\")}function D(t,e){if(t.animate=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'animate' option must be a boolean.\")}function M(t,e){if(t.animationDuration=e,\"number\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'animationDuration' option must be a number.\")}function O(t,e){var r,n=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(r=1;r<t.handles;r++)n.push(e);n.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider (14.6.3): 'connect' option doesn't match handle count.\");n=e}t.connect=n}function L(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider (14.6.3): 'orientation' option is invalid.\")}}function z(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'margin' option must be numeric.\");0!==e&&(t.margin=t.spectrum.getDistance(e))}function H(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'limit' option must be numeric.\");if(t.limit=t.spectrum.getDistance(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider (14.6.3): 'limit' option is only supported on linear sliders with 2 or more handles.\")}function j(t,e){var r;if(!i(e)&&!Array.isArray(e))throw new Error(\"noUiSlider (14.6.3): 'padding' option must be numeric or array of exactly 2 numbers.\");if(Array.isArray(e)&&2!==e.length&&!i(e[0])&&!i(e[1]))throw new Error(\"noUiSlider (14.6.3): 'padding' option must be numeric or array of exactly 2 numbers.\");if(0!==e){for(Array.isArray(e)||(e=[e,e]),t.padding=[t.spectrum.getDistance(e[0]),t.spectrum.getDistance(e[1])],r=0;r<t.spectrum.xNumSteps.length-1;r++)if(t.padding[0][r]<0||t.padding[1][r]<0)throw new Error(\"noUiSlider (14.6.3): 'padding' option must be a positive number(s).\");var n=e[0]+e[1],o=t.spectrum.xVal[0];if(n/(t.spectrum.xVal[t.spectrum.xVal.length-1]-o)>1)throw new Error(\"noUiSlider (14.6.3): 'padding' option must not exceed 100% of the range.\")}}function F(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider (14.6.3): 'direction' option was not recognized.\")}}function R(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'behaviour' must be a string containing options.\");var r=e.indexOf(\"tap\")>=0,n=e.indexOf(\"drag\")>=0,i=e.indexOf(\"fixed\")>=0,o=e.indexOf(\"snap\")>=0,s=e.indexOf(\"hover\")>=0,a=e.indexOf(\"unconstrained\")>=0;if(i){if(2!==t.handles)throw new Error(\"noUiSlider (14.6.3): 'fixed' behaviour must be used with 2 handles\");z(t,t.start[1]-t.start[0])}if(a&&(t.margin||t.limit))throw new Error(\"noUiSlider (14.6.3): 'unconstrained' behaviour cannot be used with margin or limit\");t.events={tap:r||o,drag:n,fixed:i,snap:o,hover:s,unconstrained:a}}function T(t,e){if(!1!==e)if(!0===e){t.tooltips=[];for(var r=0;r<t.handles;r++)t.tooltips.push(!0)}else{if(t.tooltips=a(e),t.tooltips.length!==t.handles)throw new Error(\"noUiSlider (14.6.3): must pass a formatter for all handles.\");t.tooltips.forEach((function(t){if(\"boolean\"!=typeof t&&(\"object\"!=typeof t||\"function\"!=typeof t.to))throw new Error(\"noUiSlider (14.6.3): 'tooltips' must be passed a formatter or 'false'.\")}))}}function _(t,e){t.ariaFormat=e,C(e)}function B(t,e){t.format=e,C(e)}function q(t,e){if(t.keyboardSupport=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'keyboardSupport' option must be a boolean.\")}function X(t,e){t.documentElement=e}function Y(t,e){if(\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider (14.6.3): 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function I(t,e){if(\"object\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'cssClasses' must be an object.\");if(\"string\"==typeof t.cssPrefix)for(var r in t.cssClasses={},e)e.hasOwnProperty(r)&&(t.cssClasses[r]=t.cssPrefix+e[r]);else t.cssClasses=e}function W(t){var e={margin:0,limit:0,padding:0,animate:!0,animationDuration:300,ariaFormat:S,format:S},n={step:{r:!1,t:P},keyboardPageMultiplier:{r:!1,t:N},keyboardDefaultStep:{r:!1,t:k},start:{r:!0,t:A},connect:{r:!0,t:O},direction:{r:!0,t:F},snap:{r:!1,t:V},animate:{r:!1,t:D},animationDuration:{r:!1,t:M},range:{r:!0,t:U},orientation:{r:!1,t:L},margin:{r:!1,t:z},limit:{r:!1,t:H},padding:{r:!1,t:j},behaviour:{r:!0,t:R},ariaFormat:{r:!1,t:_},format:{r:!1,t:B},tooltips:{r:!1,t:T},keyboardSupport:{r:!0,t:q},documentElement:{r:!1,t:X},cssPrefix:{r:!0,t:Y},cssClasses:{r:!0,t:I}},i={connect:!1,direction:\"ltr\",behaviour:\"tap\",orientation:\"horizontal\",keyboardSupport:!0,cssPrefix:\"noUi-\",cssClasses:w,keyboardPageMultiplier:5,keyboardDefaultStep:10};t.format&&!t.ariaFormat&&(t.ariaFormat=t.format),Object.keys(n).forEach((function(o){if(!r(t[o])&&void 0===i[o]){if(n[o].r)throw new Error(\"noUiSlider (14.6.3): '\"+o+\"' is required.\");return!0}n[o].t(e,r(t[o])?t[o]:i[o])})),e.pips=t.pips;var o=document.createElement(\"div\"),s=void 0!==o.style.msTransform,a=void 0!==o.style.transform;return e.transformRule=a?\"transform\":s?\"msTransform\":\"webkitTransform\",e.style=[[\"left\",\"top\"],[\"right\",\"bottom\"]][e.dir][e.ort],e}function $(t,r,i){var l,f,d,h,m,g,v,b,x=window.navigator.pointerEnabled?{start:\"pointerdown\",move:\"pointermove\",end:\"pointerup\"}:window.navigator.msPointerEnabled?{start:\"MSPointerDown\",move:\"MSPointerMove\",end:\"MSPointerUp\"}:{start:\"mousedown touchstart\",move:\"mousemove touchmove\",end:\"mouseup touchend\"},S=window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\")&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}(),w=t,C=r.spectrum,P=[],N=[],k=[],U=0,A={},V=t.ownerDocument,D=r.documentElement||V.documentElement,M=V.body,O=\"rtl\"===V.dir||1===r.ort?0:100;function L(t,e){var r=V.createElement(\"div\");return e&&u(r,e),t.appendChild(r),r}function z(t,e){var n=L(t,r.cssClasses.origin),i=L(n,r.cssClasses.handle);return L(i,r.cssClasses.touchArea),i.setAttribute(\"data-handle\",e),r.keyboardSupport&&(i.setAttribute(\"tabindex\",\"0\"),i.addEventListener(\"keydown\",(function(t){return function(t,e){if(F()||R(e))return!1;var n=[\"Left\",\"Right\"],i=[\"Down\",\"Up\"],o=[\"PageDown\",\"PageUp\"],s=[\"Home\",\"End\"];r.dir&&!r.ort?n.reverse():r.ort&&!r.dir&&(i.reverse(),o.reverse());var a,l=t.key.replace(\"Arrow\",\"\"),u=l===o[0],c=l===o[1],p=l===i[0]||l===n[0]||u,f=l===i[1]||l===n[1]||c,d=l===s[0],h=l===s[1];if(!(p||f||d||h))return!0;if(t.preventDefault(),f||p){var m=r.keyboardPageMultiplier,g=p?0:1,v=ht(e)[g];if(null===v)return!1;!1===v&&(v=C.getDefaultStep(N[e],p,r.keyboardDefaultStep)),(c||u)&&(v*=m),v=Math.max(v,1e-7),v*=p?-1:1,a=P[e]+v}else a=h?r.spectrum.xVal[r.spectrum.xVal.length-1]:r.spectrum.xVal[0];return ut(e,C.toStepping(a),!0,!0),nt(\"slide\",e),nt(\"update\",e),nt(\"change\",e),nt(\"set\",e),!1}(t,e)}))),i.setAttribute(\"role\",\"slider\"),i.setAttribute(\"aria-orientation\",r.ort?\"vertical\":\"horizontal\"),0===e?u(i,r.cssClasses.handleLower):e===r.handles-1&&u(i,r.cssClasses.handleUpper),n}function H(t,e){return!!e&&L(t,r.cssClasses.connect)}function j(t,e){return!!r.tooltips[e]&&L(t.firstChild,r.cssClasses.tooltip)}function F(){return w.hasAttribute(\"disabled\")}function R(t){return f[t].hasAttribute(\"disabled\")}function T(){m&&(rt(\"update\"+y),m.forEach((function(t){t&&e(t)})),m=null)}function _(){T(),m=f.map(j),et(\"update\"+y,(function(t,e,n){if(m[e]){var i=t[e];!0!==r.tooltips[e]&&(i=r.tooltips[e].to(n[e])),m[e].innerHTML=i}}))}function B(t,e,n){var i=V.createElement(\"div\"),o=[];o[0]=r.cssClasses.valueNormal,o[1]=r.cssClasses.valueLarge,o[2]=r.cssClasses.valueSub;var s=[];s[0]=r.cssClasses.markerNormal,s[1]=r.cssClasses.markerLarge,s[2]=r.cssClasses.markerSub;var a=[r.cssClasses.valueHorizontal,r.cssClasses.valueVertical],l=[r.cssClasses.markerHorizontal,r.cssClasses.markerVertical];function c(t,e){var n=e===r.cssClasses.value,i=n?o:s;return e+\" \"+(n?a:l)[r.ort]+\" \"+i[t]}return u(i,r.cssClasses.pips),u(i,0===r.ort?r.cssClasses.pipsHorizontal:r.cssClasses.pipsVertical),Object.keys(t).forEach((function(o){!function(t,o,s){if(-1!==(s=e?e(o,s):s)){var a=L(i,!1);a.className=c(s,r.cssClasses.marker),a.style[r.style]=t+\"%\",s>0&&((a=L(i,!1)).className=c(s,r.cssClasses.value),a.setAttribute(\"data-value\",o),a.style[r.style]=t+\"%\",a.innerHTML=n.to(o))}}(o,t[o][0],t[o][1])})),i}function q(){h&&(e(h),h=null)}function X(t){q();var e=t.mode,r=t.density||1,n=t.filter||!1,i=function(t,e,r){if(\"range\"===t||\"steps\"===t)return C.xVal;if(\"count\"===t){if(e<2)throw new Error(\"noUiSlider (14.6.3): 'values' (>= 2) required for mode 'count'.\");var n=e-1,i=100/n;for(e=[];n--;)e[n]=n*i;e.push(100),t=\"positions\"}return\"positions\"===t?e.map((function(t){return C.fromStepping(r?C.getStep(t):t)})):\"values\"===t?r?e.map((function(t){return C.fromStepping(C.getStep(C.toStepping(t)))})):e:void 0}(e,t.values||!1,t.stepped||!1),o=function(t,e,r){var n,i={},o=C.xVal[0],s=C.xVal[C.xVal.length-1],a=!1,l=!1,u=0;return n=r.slice().sort((function(t,e){return t-e})),(r=n.filter((function(t){return!this[t]&&(this[t]=!0)}),{}))[0]!==o&&(r.unshift(o),a=!0),r[r.length-1]!==s&&(r.push(s),l=!0),r.forEach((function(n,o){var s,c,p,f,d,h,m,g,v,b,x=n,S=r[o+1],w=\"steps\"===e;if(w&&(s=C.xNumSteps[o]),s||(s=S-x),!1!==x)for(void 0===S&&(S=x),s=Math.max(s,1e-7),c=x;c<=S;c=(c+s).toFixed(7)/1){for(g=(d=(f=C.toStepping(c))-u)/t,b=d/(v=Math.round(g)),p=1;p<=v;p+=1)i[(h=u+p*b).toFixed(5)]=[C.fromStepping(h),0];m=r.indexOf(c)>-1?1:w?2:0,!o&&a&&c!==S&&(m=0),c===S&&l||(i[f.toFixed(5)]=[c,m]),u=f}})),i}(r,e,i),s=t.format||{to:Math.round};return h=w.appendChild(B(o,n,s))}function Y(){var t=l.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][r.ort];return 0===r.ort?t.width||l[e]:t.height||l[e]}function I(t,e,n,i){var o=function(o){return!!(o=function(t,e,r){var n,i,o=0===t.type.indexOf(\"touch\"),s=0===t.type.indexOf(\"mouse\"),a=0===t.type.indexOf(\"pointer\");if(0===t.type.indexOf(\"MSPointer\")&&(a=!0),\"mousedown\"===t.type&&!t.buttons&&!t.touches)return!1;if(o){var l=function(t){return t.target===r||r.contains(t.target)||t.target.shadowRoot&&t.target.shadowRoot.contains(r)};if(\"touchstart\"===t.type){var u=Array.prototype.filter.call(t.touches,l);if(u.length>1)return!1;n=u[0].pageX,i=u[0].pageY}else{var c=Array.prototype.find.call(t.changedTouches,l);if(!c)return!1;n=c.pageX,i=c.pageY}}return e=e||p(V),(s||a)&&(n=t.clientX+e.x,i=t.clientY+e.y),t.pageOffset=e,t.points=[n,i],t.cursor=s||a,t}(o,i.pageOffset,i.target||e))&&!(F()&&!i.doNotReject)&&(s=w,a=r.cssClasses.tap,!((s.classList?s.classList.contains(a):new RegExp(\"\\\\b\"+a+\"\\\\b\").test(s.className))&&!i.doNotReject)&&!(t===x.start&&void 0!==o.buttons&&o.buttons>1)&&(!i.hover||!o.buttons)&&(S||o.preventDefault(),o.calcPoint=o.points[r.ort],void n(o,i)));var s,a},s=[];return t.split(\" \").forEach((function(t){e.addEventListener(t,o,!!S&&{passive:!0}),s.push([t,o])})),s}function $(t){var e,n,i,o,a,u,c=100*(t-(e=l,n=r.ort,i=e.getBoundingClientRect(),o=e.ownerDocument,a=o.documentElement,u=p(o),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(u.x=0),n?i.top+u.y-a.clientTop:i.left+u.x-a.clientLeft))/Y();return c=s(c),r.dir?100-c:c}function G(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&K(t,e)}function J(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return K(t,e);var n=(r.dir?-1:1)*(t.calcPoint-e.startCalcPoint);st(n>0,100*n/e.baseSize,e.locations,e.handleNumbers)}function K(t,e){e.handle&&(c(e.handle,r.cssClasses.active),U-=1),e.listeners.forEach((function(t){D.removeEventListener(t[0],t[1])})),0===U&&(c(w,r.cssClasses.drag),lt(),t.cursor&&(M.style.cursor=\"\",M.removeEventListener(\"selectstart\",n))),e.handleNumbers.forEach((function(t){nt(\"change\",t),nt(\"set\",t),nt(\"end\",t)}))}function Q(t,e){if(e.handleNumbers.some(R))return!1;var i;1===e.handleNumbers.length&&(i=f[e.handleNumbers[0]].children[0],U+=1,u(i,r.cssClasses.active)),t.stopPropagation();var o=[],s=I(x.move,D,J,{target:t.target,handle:i,listeners:o,startCalcPoint:t.calcPoint,baseSize:Y(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:N.slice()}),a=I(x.end,D,K,{target:t.target,handle:i,listeners:o,doNotReject:!0,handleNumbers:e.handleNumbers}),l=I(\"mouseout\",D,G,{target:t.target,handle:i,listeners:o,doNotReject:!0,handleNumbers:e.handleNumbers});o.push.apply(o,s.concat(a,l)),t.cursor&&(M.style.cursor=getComputedStyle(t.target).cursor,f.length>1&&u(w,r.cssClasses.drag),M.addEventListener(\"selectstart\",n,!1)),e.handleNumbers.forEach((function(t){nt(\"start\",t)}))}function Z(t){t.stopPropagation();var e=$(t.calcPoint),n=function(t){var e=100,r=!1;return f.forEach((function(n,i){if(!R(i)){var o=N[i],s=Math.abs(o-t);(s<e||s<=e&&t>o||100===s&&100===e)&&(r=i,e=s)}})),r}(e);if(!1===n)return!1;r.events.snap||o(w,r.cssClasses.tap,r.animationDuration),ut(n,e,!0,!0),lt(),nt(\"slide\",n,!0),nt(\"update\",n,!0),nt(\"change\",n,!0),nt(\"set\",n,!0),r.events.snap&&Q(t,{handleNumbers:[n]})}function tt(t){var e=$(t.calcPoint),r=C.getStep(e),n=C.fromStepping(r);Object.keys(A).forEach((function(t){\"hover\"===t.split(\".\")[0]&&A[t].forEach((function(t){t.call(g,n)}))}))}function et(t,e){A[t]=A[t]||[],A[t].push(e),\"update\"===t.split(\".\")[0]&&f.forEach((function(t,e){nt(\"update\",e)}))}function rt(t){var e=t&&t.split(\".\")[0],r=e?t.substring(e.length):t;Object.keys(A).forEach((function(t){var n=t.split(\".\")[0],i=t.substring(n.length);e&&e!==n||r&&r!==i||function(t){return t===E||t===y}(i)&&r!==i||delete A[t]}))}function nt(t,e,n){Object.keys(A).forEach((function(i){var o=i.split(\".\")[0];t===o&&A[i].forEach((function(t){t.call(g,P.map(r.format.to),e,P.slice(),n||!1,N.slice(),g)}))}))}function it(t,e,n,i,o,a){var l;return f.length>1&&!r.events.unconstrained&&(i&&e>0&&(l=C.getAbsoluteDistance(t[e-1],r.margin,0),n=Math.max(n,l)),o&&e<f.length-1&&(l=C.getAbsoluteDistance(t[e+1],r.margin,1),n=Math.min(n,l))),f.length>1&&r.limit&&(i&&e>0&&(l=C.getAbsoluteDistance(t[e-1],r.limit,0),n=Math.min(n,l)),o&&e<f.length-1&&(l=C.getAbsoluteDistance(t[e+1],r.limit,1),n=Math.max(n,l))),r.padding&&(0===e&&(l=C.getAbsoluteDistance(0,r.padding[0],0),n=Math.max(n,l)),e===f.length-1&&(l=C.getAbsoluteDistance(100,r.padding[1],1),n=Math.min(n,l))),!((n=s(n=C.getStep(n)))===t[e]&&!a)&&n}function ot(t,e){var n=r.ort;return(n?e:t)+\", \"+(n?t:e)}function st(t,e,r,n){var i=r.slice(),o=[!t,t],s=[t,!t];n=n.slice(),t&&n.reverse(),n.length>1?n.forEach((function(t,r){var n=it(i,t,i[t]+e,o[r],s[r],!1);!1===n?e=0:(e=n-i[t],i[t]=n)})):o=s=[!0];var a=!1;n.forEach((function(t,n){a=ut(t,r[t]+e,o[n],s[n])||a})),a&&n.forEach((function(t){nt(\"update\",t),nt(\"slide\",t)}))}function at(t,e){return r.dir?100-t-e:t}function lt(){k.forEach((function(t){var e=N[t]>50?-1:1,r=3+(f.length+e*t);f[t].style.zIndex=r}))}function ut(t,e,n,i,o){return o||(e=it(N,t,e,n,i,!1)),!1!==e&&(function(t,e){N[t]=e,P[t]=C.fromStepping(e);var n=\"translate(\"+ot(10*(at(e,0)-O)+\"%\",\"0\")+\")\";f[t].style[r.transformRule]=n,ct(t),ct(t+1)}(t,e),!0)}function ct(t){if(d[t]){var e=0,n=100;0!==t&&(e=N[t-1]),t!==d.length-1&&(n=N[t]);var i=n-e,o=\"translate(\"+ot(at(e,i)+\"%\",\"0\")+\")\",s=\"scale(\"+ot(i/100,\"1\")+\")\";d[t].style[r.transformRule]=o+\" \"+s}}function pt(t,e){return null===t||!1===t||void 0===t?N[e]:(\"number\"==typeof t&&(t=String(t)),t=r.format.from(t),!1===(t=C.toStepping(t))||isNaN(t)?N[e]:t)}function ft(t,e,n){var i=a(t),s=void 0===N[0];e=void 0===e||!!e,r.animate&&!s&&o(w,r.cssClasses.tap,r.animationDuration),k.forEach((function(t){ut(t,pt(i[t],t),!0,!1,n)}));for(var l=1===k.length?0:1;l<k.length;++l)k.forEach((function(t){ut(t,N[t],!0,!0,n)}));lt(),k.forEach((function(t){nt(\"update\",t),null!==i[t]&&e&&nt(\"set\",t)}))}function dt(){var t=P.map(r.format.to);return 1===t.length?t[0]:t}function ht(t){var e=N[t],n=C.getNearbySteps(e),i=P[t],o=n.thisStep.step,s=null;if(r.snap)return[i-n.stepBefore.startValue||null,n.stepAfter.startValue-i||null];!1!==o&&i+o>n.stepAfter.startValue&&(o=n.stepAfter.startValue-i),s=i>n.thisStep.startValue?n.thisStep.step:!1!==n.stepBefore.step&&i-n.stepBefore.highestStep,100===e?o=null:0===e&&(s=null);var a=C.countStepDecimals();return null!==o&&!1!==o&&(o=Number(o.toFixed(a))),null!==s&&!1!==s&&(s=Number(s.toFixed(a))),[s,o]}return u(v=w,r.cssClasses.target),0===r.dir?u(v,r.cssClasses.ltr):u(v,r.cssClasses.rtl),0===r.ort?u(v,r.cssClasses.horizontal):u(v,r.cssClasses.vertical),u(v,\"rtl\"===getComputedStyle(v).direction?r.cssClasses.textDirectionRtl:r.cssClasses.textDirectionLtr),l=L(v,r.cssClasses.base),function(t,e){var n=L(e,r.cssClasses.connects);f=[],(d=[]).push(H(n,t[0]));for(var i=0;i<r.handles;i++)f.push(z(e,i)),k[i]=i,d.push(H(n,t[i+1]))}(r.connect,l),(b=r.events).fixed||f.forEach((function(t,e){I(x.start,t.children[0],Q,{handleNumbers:[e]})})),b.tap&&I(x.start,l,Z,{}),b.hover&&I(x.move,l,tt,{hover:!0}),b.drag&&d.forEach((function(t,e){if(!1!==t&&0!==e&&e!==d.length-1){var n=f[e-1],i=f[e],o=[t];u(t,r.cssClasses.draggable),b.fixed&&(o.push(n.children[0]),o.push(i.children[0])),o.forEach((function(t){I(x.start,t,Q,{handles:[n,i],handleNumbers:[e-1,e]})}))}})),ft(r.start),r.pips&&X(r.pips),r.tooltips&&_(),rt(\"update\"+E),et(\"update\"+E,(function(t,e,n,i,o){k.forEach((function(t){var e=f[t],i=it(N,t,0,!0,!0,!0),s=it(N,t,100,!0,!0,!0),a=o[t],l=r.ariaFormat.to(n[t]);i=C.fromStepping(i).toFixed(1),s=C.fromStepping(s).toFixed(1),a=C.fromStepping(a).toFixed(1),e.children[0].setAttribute(\"aria-valuemin\",i),e.children[0].setAttribute(\"aria-valuemax\",s),e.children[0].setAttribute(\"aria-valuenow\",a),e.children[0].setAttribute(\"aria-valuetext\",l)}))})),g={destroy:function(){for(var t in rt(E),rt(y),r.cssClasses)r.cssClasses.hasOwnProperty(t)&&c(w,r.cssClasses[t]);for(;w.firstChild;)w.removeChild(w.firstChild);delete w.noUiSlider},steps:function(){return k.map(ht)},on:et,off:rt,get:dt,set:ft,setHandle:function(t,e,r,n){if(!((t=Number(t))>=0&&t<k.length))throw new Error(\"noUiSlider (14.6.3): invalid handle number, got: \"+t);ut(t,pt(e,t),!0,!0,n),nt(\"update\",t),r&&nt(\"set\",t)},reset:function(t){ft(r.start,t)},__moveHandles:function(t,e,r){st(t,e,N,r)},options:i,updateOptions:function(t,e){var n=dt(),o=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\",\"pips\",\"tooltips\"];o.forEach((function(e){void 0!==t[e]&&(i[e]=t[e])}));var s=W(i);o.forEach((function(e){void 0!==t[e]&&(r[e]=s[e])})),C=s.spectrum,r.margin=s.margin,r.limit=s.limit,r.padding=s.padding,r.pips?X(r.pips):q(),r.tooltips?_():T(),N=[],ft(t.start||n,e)},target:w,removePips:q,removeTooltips:T,getTooltips:function(){return m},getOrigins:function(){return f},pips:X}}return{__spectrum:x,version:t,cssClasses:w,create:function(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider (14.6.3): create requires a single element, got: \"+t);if(t.noUiSlider)throw new Error(\"noUiSlider (14.6.3): Slider was already initialized.\");var r=$(t,W(e),e);return t.noUiSlider=r,r}}},\"function\"==typeof define&&define.amd?define([],o):\"object\"==typeof r?e.exports=o():window.noUiSlider=o()},\n", " 440: function _(e,t,l,i,o){i(),l.root=\"bk-root\",l.slider_title=\"bk-slider-title\",l.slider_value=\"bk-slider-value\",l.default=\".bk-root .bk-slider-title{white-space:nowrap;}.bk-root .bk-slider-value{font-weight:600;}\"},\n", " 441: function _(o,t,r,i,n){i(),r.root=\"bk-root\",r.default='.bk-root{}.bk-root .noUi-target,.bk-root .noUi-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-select:none;-ms-touch-action:none;touch-action:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-moz-box-sizing:border-box;box-sizing:border-box;}.bk-root .noUi-target{position:relative;}.bk-root .noUi-base,.bk-root .noUi-connects{width:100%;height:100%;position:relative;z-index:1;}.bk-root .noUi-connects{overflow:hidden;z-index:0;}.bk-root .noUi-connect,.bk-root .noUi-origin{will-change:transform;position:absolute;z-index:1;top:0;right:0;-ms-transform-origin:0 0;-webkit-transform-origin:0 0;-webkit-transform-style:preserve-3d;transform-origin:0 0;transform-style:flat;}.bk-root .noUi-connect{height:100%;width:100%;}.bk-root .noUi-origin{height:10%;width:10%;}.bk-root .noUi-txt-dir-rtl.noUi-horizontal .noUi-origin{left:0;right:auto;}.bk-root .noUi-vertical .noUi-origin{width:0;}.bk-root .noUi-horizontal .noUi-origin{height:0;}.bk-root .noUi-handle{-webkit-backface-visibility:hidden;backface-visibility:hidden;position:absolute;}.bk-root .noUi-touch-area{height:100%;width:100%;}.bk-root .noUi-state-tap .noUi-connect,.bk-root .noUi-state-tap .noUi-origin{-webkit-transition:transform 0.3s;transition:transform 0.3s;}.bk-root .noUi-state-drag *{cursor:inherit !important;}.bk-root .noUi-horizontal{height:18px;}.bk-root .noUi-horizontal .noUi-handle{width:34px;height:28px;right:-17px;top:-6px;}.bk-root .noUi-vertical{width:18px;}.bk-root .noUi-vertical .noUi-handle{width:28px;height:34px;right:-6px;top:-17px;}.bk-root .noUi-txt-dir-rtl.noUi-horizontal .noUi-handle{left:-17px;right:auto;}.bk-root .noUi-target{background:#FAFAFA;border-radius:4px;border:1px solid #D3D3D3;box-shadow:inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB;}.bk-root .noUi-connects{border-radius:3px;}.bk-root .noUi-connect{background:#3FB8AF;}.bk-root .noUi-draggable{cursor:ew-resize;}.bk-root .noUi-vertical .noUi-draggable{cursor:ns-resize;}.bk-root .noUi-handle{border:1px solid #D9D9D9;border-radius:3px;background:#FFF;cursor:default;box-shadow:inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB;}.bk-root .noUi-active{box-shadow:inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB;}.bk-root .noUi-handle:before,.bk-root .noUi-handle:after{content:\"\";display:block;position:absolute;height:14px;width:1px;background:#E8E7E6;left:14px;top:6px;}.bk-root .noUi-handle:after{left:17px;}.bk-root .noUi-vertical .noUi-handle:before,.bk-root .noUi-vertical .noUi-handle:after{width:14px;height:1px;left:6px;top:14px;}.bk-root .noUi-vertical .noUi-handle:after{top:17px;}.bk-root [disabled] .noUi-connect{background:#B8B8B8;}.bk-root [disabled].noUi-target,.bk-root [disabled].noUi-handle,.bk-root [disabled] .noUi-handle{cursor:not-allowed;}.bk-root .noUi-pips,.bk-root .noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box;}.bk-root .noUi-pips{position:absolute;color:#999;}.bk-root .noUi-value{position:absolute;white-space:nowrap;text-align:center;}.bk-root .noUi-value-sub{color:#ccc;font-size:10px;}.bk-root .noUi-marker{position:absolute;background:#CCC;}.bk-root .noUi-marker-sub{background:#AAA;}.bk-root .noUi-marker-large{background:#AAA;}.bk-root .noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%;}.bk-root .noUi-value-horizontal{-webkit-transform:translate(-50%, 50%);transform:translate(-50%, 50%);}.bk-root .noUi-rtl .noUi-value-horizontal{-webkit-transform:translate(50%, 50%);transform:translate(50%, 50%);}.bk-root .noUi-marker-horizontal.noUi-marker{margin-left:-1px;width:2px;height:5px;}.bk-root .noUi-marker-horizontal.noUi-marker-sub{height:10px;}.bk-root .noUi-marker-horizontal.noUi-marker-large{height:15px;}.bk-root .noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%;}.bk-root .noUi-value-vertical{-webkit-transform:translate(0, -50%);transform:translate(0, -50%);padding-left:25px;}.bk-root .noUi-rtl .noUi-value-vertical{-webkit-transform:translate(0, 50%);transform:translate(0, 50%);}.bk-root .noUi-marker-vertical.noUi-marker{width:5px;height:2px;margin-top:-1px;}.bk-root .noUi-marker-vertical.noUi-marker-sub{width:10px;}.bk-root .noUi-marker-vertical.noUi-marker-large{width:15px;}.bk-root .noUi-tooltip{display:block;position:absolute;border:1px solid #D9D9D9;border-radius:3px;background:#fff;color:#000;padding:5px;text-align:center;white-space:nowrap;}.bk-root .noUi-horizontal .noUi-tooltip{-webkit-transform:translate(-50%, 0);transform:translate(-50%, 0);left:50%;bottom:120%;}.bk-root .noUi-vertical .noUi-tooltip{-webkit-transform:translate(0, -50%);transform:translate(0, -50%);top:50%;right:120%;}.bk-root .noUi-horizontal .noUi-origin > .noUi-tooltip{-webkit-transform:translate(50%, 0);transform:translate(50%, 0);left:auto;bottom:10px;}.bk-root .noUi-vertical .noUi-origin > .noUi-tooltip{-webkit-transform:translate(0, -18px);transform:translate(0, -18px);top:auto;right:28px;}.bk-root .noUi-handle{cursor:grab;cursor:-webkit-grab;}.bk-root .noUi-handle.noUi-active{cursor:grabbing;cursor:-webkit-grabbing;}.bk-root .noUi-handle:after,.bk-root .noUi-handle:before{display:none;}.bk-root .noUi-tooltip{display:none;white-space:nowrap;}.bk-root .noUi-handle:hover .noUi-tooltip{display:block;}.bk-root .noUi-horizontal{width:100%;height:10px;}.bk-root .noUi-vertical{width:10px;height:100%;}.bk-root .noUi-horizontal .noUi-handle{width:14px;height:18px;right:-7px;top:-5px;}.bk-root .noUi-vertical .noUi-handle{width:18px;height:14px;right:-5px;top:-7px;}.bk-root .noUi-target.noUi-horizontal{margin:5px 0px;}.bk-root .noUi-target.noUi-vertical{margin:0px 5px;}'},\n", " 442: function _(t,e,i,r,a){r();const s=t(1).__importDefault(t(181)),d=t(438),_=t(8);class n extends d.AbstractSliderView{}i.DateSliderView=n,n.__name__=\"DateSliderView\";class l extends d.AbstractSlider{constructor(t){super(t),this.behaviour=\"tap\",this.connected=[!0,!1]}static init_DateSlider(){this.prototype.default_view=n,this.override({format:\"%d %b %Y\"})}_formatter(t,e){return _.isString(e)?s.default(t,e):e.compute(t)}}i.DateSlider=l,l.__name__=\"DateSlider\",l.init_DateSlider()},\n", " 443: function _(e,t,i,n,s){n();const r=e(444);class _ extends r.MarkupView{render(){super.render(),this.model.render_as_text?this.markup_el.textContent=this.model.text:this.markup_el.innerHTML=this.model.text}}i.DivView=_,_.__name__=\"DivView\";class a extends r.Markup{constructor(e){super(e)}static init_Div(){this.prototype.default_view=_,this.define((({Boolean:e})=>({render_as_text:[e,!1]})))}}i.Div=a,a.__name__=\"Div\",a.init_Div()},\n", " 444: function _(t,e,s,i,a){i();const n=t(1),l=t(224),r=t(43),c=t(488),u=n.__importStar(t(445));class _ extends c.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>{this.layout.invalidate_cache(),this.render(),this.root.compute_layout()}))}styles(){return[...super.styles(),u.default]}_update_layout(){this.layout=new l.CachedVariadicBox(this.el),this.layout.set_sizing(this.box_sizing())}render(){super.render();const t=Object.assign(Object.assign({},this.model.style),{display:\"inline-block\"});this.markup_el=r.div({class:u.clearfix,style:t}),this.el.appendChild(this.markup_el)}}s.MarkupView=_,_.__name__=\"MarkupView\";class o extends c.Widget{constructor(t){super(t)}static init_Markup(){this.define((({String:t,Dict:e})=>({text:[t,\"\"],style:[e(t),{}]})))}}s.Markup=o,o.__name__=\"Markup\",o.init_Markup()},\n", " 445: function _(o,r,e,t,a){t(),e.root=\"bk-root\",e.clearfix=\"bk-clearfix\",e.default='.bk-root .bk-clearfix:before,.bk-root .bk-clearfix:after{content:\"\";display:table;}.bk-root .bk-clearfix:after{clear:both;}'},\n", " 446: function _(e,t,i,n,s){n();const o=e(1),r=e(419),l=e(264),d=e(43),_=e(8),u=o.__importStar(e(328)),c=o.__importStar(e(243)),h=c;class p extends r.AbstractButtonView{constructor(){super(...arguments),this._open=!1}styles(){return[...super.styles(),c.default]}render(){super.render();const e=d.div({class:[h.caret,h.down]});if(this.model.is_split){const t=this._render_button(e);t.classList.add(u.dropdown_toggle),t.addEventListener(\"click\",(()=>this._toggle_menu())),this.group_el.appendChild(t)}else this.button_el.appendChild(e);const t=this.model.menu.map(((e,t)=>{if(null==e)return d.div({class:h.divider});{const i=_.isString(e)?e:e[0],n=d.div({},i);return n.addEventListener(\"click\",(()=>this._item_click(t))),n}}));this.menu=d.div({class:[h.menu,h.below]},t),this.el.appendChild(this.menu),d.undisplay(this.menu)}_show_menu(){if(!this._open){this._open=!0,d.display(this.menu);const e=t=>{const{target:i}=t;i instanceof HTMLElement&&!this.el.contains(i)&&(document.removeEventListener(\"click\",e),this._hide_menu())};document.addEventListener(\"click\",e)}}_hide_menu(){this._open&&(this._open=!1,d.undisplay(this.menu))}_toggle_menu(){this._open?this._hide_menu():this._show_menu()}click(){this.model.is_split?(this._hide_menu(),this.model.trigger_event(new l.ButtonClick),super.click()):this._toggle_menu()}_item_click(e){this._hide_menu();const t=this.model.menu[e];if(null!=t){const i=_.isString(t)?t:t[1];_.isString(i)?this.model.trigger_event(new l.MenuItemClick(i)):i.execute(this.model,{index:e})}}}i.DropdownView=p,p.__name__=\"DropdownView\";class m extends r.AbstractButton{constructor(e){super(e)}static init_Dropdown(){this.prototype.default_view=p,this.define((({Null:e,Boolean:t,String:i,Array:n,Tuple:s,Or:o})=>({split:[t,!1],menu:[n(o(i,s(i,o(i)),e)),[]]}))),this.override({label:\"Dropdown\"})}get is_split(){return this.split}}i.Dropdown=m,m.__name__=\"Dropdown\",m.init_Dropdown()},\n", " 447: function _(e,i,l,t,s){t();const n=e(43),a=e(488);class o extends a.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.render()))}render(){const{multiple:e,accept:i,disabled:l,width:t}=this.model;null==this.dialog_el&&(this.dialog_el=n.input({type:\"file\",multiple:e}),this.dialog_el.onchange=()=>{const{files:e}=this.dialog_el;null!=e&&this.load_files(e)},this.el.appendChild(this.dialog_el)),null!=i&&\"\"!=i&&(this.dialog_el.accept=i),this.dialog_el.style.width=`${t}px`,this.dialog_el.disabled=l}async load_files(e){const i=[],l=[],t=[];for(const s of e){const e=await this._read_file(s),[,n=\"\",,a=\"\"]=e.split(/[:;,]/,4);i.push(a),l.push(s.name),t.push(n)}this.model.multiple?(this.model.value=i,this.model.filename=l,this.model.mime_type=t):(this.model.value=i[0],this.model.filename=l[0],this.model.mime_type=t[0])}_read_file(e){return new Promise(((i,l)=>{const t=new FileReader;t.onload=()=>{var s;const{result:n}=t;null!=n?i(n):l(null!==(s=t.error)&&void 0!==s?s:new Error(`unable to read '${e.name}'`))},t.readAsDataURL(e)}))}}l.FileInputView=o,o.__name__=\"FileInputView\";class d extends a.Widget{constructor(e){super(e)}static init_FileInput(){this.prototype.default_view=o,this.define((({Boolean:e,String:i,Array:l,Or:t})=>({value:[t(i,l(i)),\"\"],mime_type:[t(i,l(i)),\"\"],filename:[t(i,l(i)),\"\"],accept:[i,\"\"],multiple:[e,!1]})))}}l.FileInput=d,d.__name__=\"FileInput\",d.init_FileInput()},\n", " 448: function _(e,t,i,s,n){s();const l=e(1),o=e(43),r=e(8),c=e(426),h=l.__importStar(e(427));class p extends c.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.value.change,(()=>this.render_selection())),this.connect(this.model.properties.options.change,(()=>this.render())),this.connect(this.model.properties.name.change,(()=>this.render())),this.connect(this.model.properties.title.change,(()=>this.render())),this.connect(this.model.properties.size.change,(()=>this.render())),this.connect(this.model.properties.disabled.change,(()=>this.render()))}render(){super.render();const e=this.model.options.map((e=>{let t,i;return r.isString(e)?t=i=e:[t,i]=e,o.option({value:t},i)}));this.input_el=o.select({multiple:!0,class:h.input,name:this.model.name,disabled:this.model.disabled},e),this.input_el.addEventListener(\"change\",(()=>this.change_input())),this.group_el.appendChild(this.input_el),this.render_selection()}render_selection(){const e=new Set(this.model.value);for(const t of this.el.querySelectorAll(\"option\"))t.selected=e.has(t.value);this.input_el.size=this.model.size}change_input(){const e=null!=this.el.querySelector(\"select:focus\"),t=[];for(const e of this.el.querySelectorAll(\"option\"))e.selected&&t.push(e.value);this.model.value=t,super.change_input(),e&&this.input_el.focus()}}i.MultiSelectView=p,p.__name__=\"MultiSelectView\";class u extends c.InputWidget{constructor(e){super(e)}static init_MultiSelect(){this.prototype.default_view=p,this.define((({Int:e,String:t,Array:i,Tuple:s,Or:n})=>({value:[i(t),[]],options:[i(n(t,s(t,t))),[]],size:[e,4]})))}}i.MultiSelect=u,u.__name__=\"MultiSelect\",u.init_MultiSelect()},\n", " 449: function _(a,r,e,t,p){t();const s=a(444),i=a(43);class n extends s.MarkupView{render(){super.render();const a=i.p({style:{margin:0}},this.model.text);this.markup_el.appendChild(a)}}e.ParagraphView=n,n.__name__=\"ParagraphView\";class _ extends s.Markup{constructor(a){super(a)}static init_Paragraph(){this.prototype.default_view=n}}e.Paragraph=_,_.__name__=\"Paragraph\",_.init_Paragraph()},\n", " 450: function _(s,t,e,n,r){n();const p=s(424);class u extends p.TextInputView{render(){super.render(),this.input_el.type=\"password\"}}e.PasswordInputView=u,u.__name__=\"PasswordInputView\";class a extends p.TextInput{constructor(s){super(s)}static init_PasswordInput(){this.prototype.default_view=u}}e.PasswordInput=a,a.__name__=\"PasswordInput\",a.init_PasswordInput()},\n", " 451: function _(e,t,i,l,s){l();const o=e(1),n=o.__importDefault(e(452)),h=e(43),a=e(8),u=e(224),c=o.__importStar(e(427)),d=o.__importDefault(e(453)),_=e(426);class r extends _.InputWidgetView{constructor(){super(...arguments),this._last_height=null}connect_signals(){super.connect_signals(),this.connect(this.model.properties.disabled.change,(()=>this.set_disabled()));const{value:e,max_items:t,option_limit:i,delete_button:l,placeholder:s,options:o,name:n,title:h}=this.model.properties;this.on_change([e,t,i,l,s,o,n,h],(()=>this.render()))}styles(){return[...super.styles(),d.default]}_update_layout(){this.layout=new u.CachedVariadicBox(this.el),this.layout.set_sizing(this.box_sizing())}render(){super.render(),this.input_el=h.select({multiple:!0,class:c.input,name:this.model.name,disabled:this.model.disabled}),this.group_el.appendChild(this.input_el);const e=new Set(this.model.value),t=this.model.options.map((t=>{let i,l;return a.isString(t)?i=l=t:[i,l]=t,{value:i,label:l,selected:e.has(i)}})),i=this.model.solid?\"solid\":\"light\",l=`choices__item ${i}`,s=`choices__button ${i}`,o={choices:t,duplicateItemsAllowed:!1,removeItemButton:this.model.delete_button,classNames:{item:l,button:s}};null!=this.model.placeholder&&(o.placeholderValue=this.model.placeholder),null!=this.model.max_items&&(o.maxItemCount=this.model.max_items),null!=this.model.option_limit&&(o.renderChoiceLimit=this.model.option_limit),this.choice_el=new n.default(this.input_el,o);const u=()=>this.choice_el.containerOuter.element.getBoundingClientRect().height;null!=this._last_height&&this._last_height!=u()&&this.root.invalidate_layout(),this._last_height=u(),this.input_el.addEventListener(\"change\",(()=>this.change_input()))}set_disabled(){this.model.disabled?this.choice_el.disable():this.choice_el.enable()}change_input(){const e=null!=this.el.querySelector(\"select:focus\"),t=[];for(const e of this.el.querySelectorAll(\"option\"))e.selected&&t.push(e.value);this.model.value=t,super.change_input(),e&&this.input_el.focus()}}i.MultiChoiceView=r,r.__name__=\"MultiChoiceView\";class m extends _.InputWidget{constructor(e){super(e)}static init_MultiChoice(){this.prototype.default_view=r,this.define((({Boolean:e,Int:t,String:i,Array:l,Tuple:s,Or:o,Nullable:n})=>({value:[l(i),[]],options:[l(o(i,s(i,i))),[]],max_items:[n(t),null],delete_button:[e,!0],placeholder:[n(i),null],option_limit:[n(t),null],solid:[e,!0]})))}}i.MultiChoice=m,m.__name__=\"MultiChoice\",m.init_MultiChoice()},\n", " 452: function _(e,t,i,n,s){\n", " /*! choices.js v9.0.1 | © 2019 Josh Johnson | https://github.com/jshjohnson/Choices#readme */\n", " var r,o;r=window,o=function(){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,\"a\",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p=\"/public/assets/scripts/\",i(i.s=4)}([function(e,t,i){\"use strict\";var n=function(e){return function(e){return!!e&&\"object\"==typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return\"[object RegExp]\"===t||\"[object Date]\"===t||function(e){return e.$$typeof===s}(e)}(e)},s=\"function\"==typeof Symbol&&Symbol.for?Symbol.for(\"react.element\"):60103;function r(e,t){return!1!==t.clone&&t.isMergeableObject(e)?l((i=e,Array.isArray(i)?[]:{}),e,t):e;var i}function o(e,t,i){return e.concat(t).map((function(e){return r(e,i)}))}function a(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return e.propertyIsEnumerable(t)})):[]}(e))}function c(e,t,i){var n={};return i.isMergeableObject(e)&&a(e).forEach((function(t){n[t]=r(e[t],i)})),a(t).forEach((function(s){(function(e,t){try{return t in e&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}catch(e){return!1}})(e,s)||(i.isMergeableObject(t[s])&&e[s]?n[s]=function(e,t){if(!t.customMerge)return l;var i=t.customMerge(e);return\"function\"==typeof i?i:l}(s,i)(e[s],t[s],i):n[s]=r(t[s],i))})),n}function l(e,t,i){(i=i||{}).arrayMerge=i.arrayMerge||o,i.isMergeableObject=i.isMergeableObject||n,i.cloneUnlessOtherwiseSpecified=r;var s=Array.isArray(t);return s===Array.isArray(e)?s?i.arrayMerge(e,t,i):c(e,t,i):r(t,i)}l.all=function(e,t){if(!Array.isArray(e))throw new Error(\"first argument should be an array\");return e.reduce((function(e,i){return l(e,i,t)}),{})};var h=l;e.exports=h},function(e,t,i){\"use strict\";(function(e,n){var s,r=i(3);s=\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:void 0!==e?e:n;var o=Object(r.a)(s);t.a=o}).call(this,i(5),i(6)(e))},function(e,t,i){\n", " /*!\n", " * Fuse.js v3.4.5 - Lightweight fuzzy-search (http://fusejs.io)\n", " *\n", " * Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me)\n", " * All Rights Reserved. Apache Software License 2.0\n", " *\n", " * http://www.apache.org/licenses/LICENSE-2.0\n", " */\n", " e.exports=function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,\"a\",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p=\"\",i(i.s=1)}([function(e,t){e.exports=function(e){return Array.isArray?Array.isArray(e):\"[object Array]\"===Object.prototype.toString.call(e)}},function(e,t,i){function n(e){return(n=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function s(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var r=i(2),o=i(8),a=i(0),c=function(){function e(t,i){var n=i.location,s=void 0===n?0:n,r=i.distance,a=void 0===r?100:r,c=i.threshold,l=void 0===c?.6:c,h=i.maxPatternLength,u=void 0===h?32:h,d=i.caseSensitive,p=void 0!==d&&d,m=i.tokenSeparator,f=void 0===m?/ +/g:m,v=i.findAllMatches,g=void 0!==v&&v,_=i.minMatchCharLength,b=void 0===_?1:_,y=i.id,E=void 0===y?null:y,I=i.keys,S=void 0===I?[]:I,w=i.shouldSort,O=void 0===w||w,C=i.getFn,A=void 0===C?o:C,L=i.sortFn,T=void 0===L?function(e,t){return e.score-t.score}:L,x=i.tokenize,k=void 0!==x&&x,P=i.matchAllTokens,D=void 0!==P&&P,M=i.includeMatches,N=void 0!==M&&M,F=i.includeScore,j=void 0!==F&&F,K=i.verbose,R=void 0!==K&&K;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.options={location:s,distance:a,threshold:l,maxPatternLength:u,isCaseSensitive:p,tokenSeparator:f,findAllMatches:g,minMatchCharLength:b,id:E,keys:S,includeMatches:N,includeScore:j,shouldSort:O,getFn:A,sortFn:T,verbose:R,tokenize:k,matchAllTokens:D},this.setCollection(t)}var t,i,c;return t=e,(i=[{key:\"setCollection\",value:function(e){return this.list=e,e}},{key:\"search\",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{limit:!1};this._log('---------\\nSearch pattern: \"'.concat(e,'\"'));var i=this._prepareSearchers(e),n=i.tokenSearchers,s=i.fullSearcher,r=this._search(n,s),o=r.weights,a=r.results;return this._computeScore(o,a),this.options.shouldSort&&this._sort(a),t.limit&&\"number\"==typeof t.limit&&(a=a.slice(0,t.limit)),this._format(a)}},{key:\"_prepareSearchers\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",t=[];if(this.options.tokenize)for(var i=e.split(this.options.tokenSeparator),n=0,s=i.length;n<s;n+=1)t.push(new r(i[n],this.options));return{tokenSearchers:t,fullSearcher:new r(e,this.options)}}},{key:\"_search\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0,i=this.list,n={},s=[];if(\"string\"==typeof i[0]){for(var r=0,o=i.length;r<o;r+=1)this._analyze({key:\"\",value:i[r],record:r,index:r},{resultMap:n,results:s,tokenSearchers:e,fullSearcher:t});return{weights:null,results:s}}for(var a={},c=0,l=i.length;c<l;c+=1)for(var h=i[c],u=0,d=this.options.keys.length;u<d;u+=1){var p=this.options.keys[u];if(\"string\"!=typeof p){if(a[p.name]={weight:1-p.weight||1},p.weight<=0||p.weight>1)throw new Error(\"Key weight has to be > 0 and <= 1\");p=p.name}else a[p]={weight:1};this._analyze({key:p,value:this.options.getFn(h,p),record:h,index:c},{resultMap:n,results:s,tokenSearchers:e,fullSearcher:t})}return{weights:a,results:s}}},{key:\"_analyze\",value:function(e,t){var i=e.key,n=e.arrayIndex,s=void 0===n?-1:n,r=e.value,o=e.record,c=e.index,l=t.tokenSearchers,h=void 0===l?[]:l,u=t.fullSearcher,d=void 0===u?[]:u,p=t.resultMap,m=void 0===p?{}:p,f=t.results,v=void 0===f?[]:f;if(null!=r){var g=!1,_=-1,b=0;if(\"string\"==typeof r){this._log(\"\\nKey: \".concat(\"\"===i?\"-\":i));var y=d.search(r);if(this._log('Full text: \"'.concat(r,'\", score: ').concat(y.score)),this.options.tokenize){for(var E=r.split(this.options.tokenSeparator),I=[],S=0;S<h.length;S+=1){var w=h[S];this._log('\\nPattern: \"'.concat(w.pattern,'\"'));for(var O=!1,C=0;C<E.length;C+=1){var A=E[C],L=w.search(A),T={};L.isMatch?(T[A]=L.score,g=!0,O=!0,I.push(L.score)):(T[A]=1,this.options.matchAllTokens||I.push(1)),this._log('Token: \"'.concat(A,'\", score: ').concat(T[A]))}O&&(b+=1)}_=I[0];for(var x=I.length,k=1;k<x;k+=1)_+=I[k];_/=x,this._log(\"Token score average:\",_)}var P=y.score;_>-1&&(P=(P+_)/2),this._log(\"Score average:\",P);var D=!this.options.tokenize||!this.options.matchAllTokens||b>=h.length;if(this._log(\"\\nCheck Matches: \".concat(D)),(g||y.isMatch)&&D){var M=m[c];M?M.output.push({key:i,arrayIndex:s,value:r,score:P,matchedIndices:y.matchedIndices}):(m[c]={item:o,output:[{key:i,arrayIndex:s,value:r,score:P,matchedIndices:y.matchedIndices}]},v.push(m[c]))}}else if(a(r))for(var N=0,F=r.length;N<F;N+=1)this._analyze({key:i,arrayIndex:N,value:r[N],record:o,index:c},{resultMap:m,results:v,tokenSearchers:h,fullSearcher:d})}}},{key:\"_computeScore\",value:function(e,t){this._log(\"\\n\\nComputing score:\\n\");for(var i=0,n=t.length;i<n;i+=1){for(var s=t[i].output,r=s.length,o=1,a=1,c=0;c<r;c+=1){var l=e?e[s[c].key].weight:1,h=(1===l?s[c].score:s[c].score||.001)*l;1!==l?a=Math.min(a,h):(s[c].nScore=h,o*=h)}t[i].score=1===a?o:a,this._log(t[i])}}},{key:\"_sort\",value:function(e){this._log(\"\\n\\nSorting....\"),e.sort(this.options.sortFn)}},{key:\"_format\",value:function(e){var t=[];if(this.options.verbose){var i=[];this._log(\"\\n\\nOutput:\\n\\n\",JSON.stringify(e,(function(e,t){if(\"object\"===n(t)&&null!==t){if(-1!==i.indexOf(t))return;i.push(t)}return t}))),i=null}var s=[];this.options.includeMatches&&s.push((function(e,t){var i=e.output;t.matches=[];for(var n=0,s=i.length;n<s;n+=1){var r=i[n];if(0!==r.matchedIndices.length){var o={indices:r.matchedIndices,value:r.value};r.key&&(o.key=r.key),r.hasOwnProperty(\"arrayIndex\")&&r.arrayIndex>-1&&(o.arrayIndex=r.arrayIndex),t.matches.push(o)}}})),this.options.includeScore&&s.push((function(e,t){t.score=e.score}));for(var r=0,o=e.length;r<o;r+=1){var a=e[r];if(this.options.id&&(a.item=this.options.getFn(a.item,this.options.id)[0]),s.length){for(var c={item:a.item},l=0,h=s.length;l<h;l+=1)s[l](a,c);t.push(c)}else t.push(a.item)}return t}},{key:\"_log\",value:function(){var e;this.options.verbose&&(e=console).log.apply(e,arguments)}}])&&s(t.prototype,i),c&&s(t,c),e}();e.exports=c},function(e,t,i){function n(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var s=i(3),r=i(4),o=i(7),a=function(){function e(t,i){var n=i.location,s=void 0===n?0:n,r=i.distance,a=void 0===r?100:r,c=i.threshold,l=void 0===c?.6:c,h=i.maxPatternLength,u=void 0===h?32:h,d=i.isCaseSensitive,p=void 0!==d&&d,m=i.tokenSeparator,f=void 0===m?/ +/g:m,v=i.findAllMatches,g=void 0!==v&&v,_=i.minMatchCharLength,b=void 0===_?1:_;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.options={location:s,distance:a,threshold:l,maxPatternLength:u,isCaseSensitive:p,tokenSeparator:f,findAllMatches:g,minMatchCharLength:b},this.pattern=this.options.isCaseSensitive?t:t.toLowerCase(),this.pattern.length<=u&&(this.patternAlphabet=o(this.pattern))}var t,i,a;return t=e,(i=[{key:\"search\",value:function(e){if(this.options.isCaseSensitive||(e=e.toLowerCase()),this.pattern===e)return{isMatch:!0,score:0,matchedIndices:[[0,e.length-1]]};var t=this.options,i=t.maxPatternLength,n=t.tokenSeparator;if(this.pattern.length>i)return s(e,this.pattern,n);var o=this.options,a=o.location,c=o.distance,l=o.threshold,h=o.findAllMatches,u=o.minMatchCharLength;return r(e,this.pattern,this.patternAlphabet,{location:a,distance:c,threshold:l,findAllMatches:h,minMatchCharLength:u})}}])&&n(t.prototype,i),a&&n(t,a),e}();e.exports=a},function(e,t){var i=/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g;e.exports=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:/ +/g,s=new RegExp(t.replace(i,\"\\\\$&\").replace(n,\"|\")),r=e.match(s),o=!!r,a=[];if(o)for(var c=0,l=r.length;c<l;c+=1){var h=r[c];a.push([e.indexOf(h),h.length-1])}return{score:o?.5:1,isMatch:o,matchedIndices:a}}},function(e,t,i){var n=i(5),s=i(6);e.exports=function(e,t,i,r){for(var o=r.location,a=void 0===o?0:o,c=r.distance,l=void 0===c?100:c,h=r.threshold,u=void 0===h?.6:h,d=r.findAllMatches,p=void 0!==d&&d,m=r.minMatchCharLength,f=void 0===m?1:m,v=a,g=e.length,_=u,b=e.indexOf(t,v),y=t.length,E=[],I=0;I<g;I+=1)E[I]=0;if(-1!==b){var S=n(t,{errors:0,currentLocation:b,expectedLocation:v,distance:l});if(_=Math.min(S,_),-1!==(b=e.lastIndexOf(t,v+y))){var w=n(t,{errors:0,currentLocation:b,expectedLocation:v,distance:l});_=Math.min(w,_)}}b=-1;for(var O=[],C=1,A=y+g,L=1<<y-1,T=0;T<y;T+=1){for(var x=0,k=A;x<k;)n(t,{errors:T,currentLocation:v+k,expectedLocation:v,distance:l})<=_?x=k:A=k,k=Math.floor((A-x)/2+x);A=k;var P=Math.max(1,v-k+1),D=p?g:Math.min(v+k,g)+y,M=Array(D+2);M[D+1]=(1<<T)-1;for(var N=D;N>=P;N-=1){var F=N-1,j=i[e.charAt(F)];if(j&&(E[F]=1),M[N]=(M[N+1]<<1|1)&j,0!==T&&(M[N]|=(O[N+1]|O[N])<<1|1|O[N+1]),M[N]&L&&(C=n(t,{errors:T,currentLocation:F,expectedLocation:v,distance:l}))<=_){if(_=C,(b=F)<=v)break;P=Math.max(1,2*v-b)}}if(n(t,{errors:T+1,currentLocation:v,expectedLocation:v,distance:l})>_)break;O=M}return{isMatch:b>=0,score:0===C?.001:C,matchedIndices:s(E,f)}}},function(e,t){e.exports=function(e,t){var i=t.errors,n=void 0===i?0:i,s=t.currentLocation,r=void 0===s?0:s,o=t.expectedLocation,a=void 0===o?0:o,c=t.distance,l=void 0===c?100:c,h=n/e.length,u=Math.abs(a-r);return l?h+u/l:u?1:h}},function(e,t){e.exports=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=[],n=-1,s=-1,r=0,o=e.length;r<o;r+=1){var a=e[r];a&&-1===n?n=r:a||-1===n||((s=r-1)-n+1>=t&&i.push([n,s]),n=-1)}return e[r-1]&&r-n>=t&&i.push([n,r-1]),i}},function(e,t){e.exports=function(e){for(var t={},i=e.length,n=0;n<i;n+=1)t[e.charAt(n)]=0;for(var s=0;s<i;s+=1)t[e.charAt(s)]|=1<<i-s-1;return t}},function(e,t,i){var n=i(0);e.exports=function(e,t){return function e(t,i,s){if(i){var r=i.indexOf(\".\"),o=i,a=null;-1!==r&&(o=i.slice(0,r),a=i.slice(r+1));var c=t[o];if(null!=c)if(a||\"string\"!=typeof c&&\"number\"!=typeof c)if(n(c))for(var l=0,h=c.length;l<h;l+=1)e(c[l],a,s);else a&&e(c,a,s);else s.push(c.toString())}else s.push(t);return s}(e,t,[])}}])},function(e,t,i){\"use strict\";function n(e){var t,i=e.Symbol;return\"function\"==typeof i?i.observable?t=i.observable:(t=i(\"observable\"),i.observable=t):t=\"@@observable\",t}i.d(t,\"a\",(function(){return n}))},function(e,t,i){e.exports=i(7)},function(e,t){var i;i=function(){return this}();try{i=i||new Function(\"return this\")()}catch(e){\"object\"==typeof window&&(i=window)}e.exports=i},function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,\"loaded\",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,\"id\",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,\"exports\",{enumerable:!0}),t.webpackPolyfill=1}return t}},function(e,t,i){\"use strict\";i.r(t);var n=i(2),s=i.n(n),r=i(0),o=i.n(r),a=i(1),c=function(){return Math.random().toString(36).substring(7).split(\"\").join(\".\")},l={INIT:\"@@redux/INIT\"+c(),REPLACE:\"@@redux/REPLACE\"+c(),PROBE_UNKNOWN_ACTION:function(){return\"@@redux/PROBE_UNKNOWN_ACTION\"+c()}};function h(e){if(\"object\"!=typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function u(e,t,i){var n;if(\"function\"==typeof t&&\"function\"==typeof i||\"function\"==typeof i&&\"function\"==typeof arguments[3])throw new Error(\"It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function.\");if(\"function\"==typeof t&&void 0===i&&(i=t,t=void 0),void 0!==i){if(\"function\"!=typeof i)throw new Error(\"Expected the enhancer to be a function.\");return i(u)(e,t)}if(\"function\"!=typeof e)throw new Error(\"Expected the reducer to be a function.\");var s=e,r=t,o=[],c=o,d=!1;function p(){c===o&&(c=o.slice())}function m(){if(d)throw new Error(\"You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.\");return r}function f(e){if(\"function\"!=typeof e)throw new Error(\"Expected the listener to be a function.\");if(d)throw new Error(\"You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.\");var t=!0;return p(),c.push(e),function(){if(t){if(d)throw new Error(\"You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.\");t=!1,p();var i=c.indexOf(e);c.splice(i,1)}}}function v(e){if(!h(e))throw new Error(\"Actions must be plain objects. Use custom middleware for async actions.\");if(void 0===e.type)throw new Error('Actions may not have an undefined \"type\" property. Have you misspelled a constant?');if(d)throw new Error(\"Reducers may not dispatch actions.\");try{d=!0,r=s(r,e)}finally{d=!1}for(var t=o=c,i=0;i<t.length;i++)(0,t[i])();return e}function g(e){if(\"function\"!=typeof e)throw new Error(\"Expected the nextReducer to be a function.\");s=e,v({type:l.REPLACE})}function _(){var e,t=f;return(e={subscribe:function(e){if(\"object\"!=typeof e||null===e)throw new TypeError(\"Expected the observer to be an object.\");function i(){e.next&&e.next(m())}return i(),{unsubscribe:t(i)}}})[a.a]=function(){return this},e}return v({type:l.INIT}),(n={dispatch:v,subscribe:f,getState:m,replaceReducer:g})[a.a]=_,n}function d(e,t){var i=t&&t.type;return\"Given \"+(i&&'action \"'+String(i)+'\"'||\"an action\")+', reducer \"'+e+'\" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'}var p,m=[],f=[],v=[],g={loading:!1},_=function(e,t){switch(void 0===e&&(e=g),t.type){case\"SET_IS_LOADING\":return{loading:t.isLoading};default:return e}},b=function(e){return Array.from({length:e},(function(){return(e=0,t=36,Math.floor(Math.random()*(t-e)+e)).toString(36);var e,t})).join(\"\")},y=function(e){return Object.prototype.toString.call(e).slice(8,-1)},E=function(e,t){return null!=t&&y(t)===e},I=function(e){return\"string\"!=typeof e?e:e.replace(/&/g,\"&\").replace(/>/g,\"&rt;\").replace(/</g,\"<\").replace(/\"/g,\""\")},S=(p=document.createElement(\"div\"),function(e){var t=e.trim();p.innerHTML=t;for(var i=p.children[0];p.firstChild;)p.removeChild(p.firstChild);return i}),w=function(e,t){return e.score-t.score},O=function(e){return JSON.parse(JSON.stringify(e))},C=function(e){for(var t=Object.keys(e),i={},n=0;n<t.length;n++){var s=t[n];\"function\"==typeof e[s]&&(i[s]=e[s])}var r,o=Object.keys(i);try{!function(e){Object.keys(e).forEach((function(t){var i=e[t];if(void 0===i(void 0,{type:l.INIT}))throw new Error('Reducer \"'+t+\"\\\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.\");if(void 0===i(void 0,{type:l.PROBE_UNKNOWN_ACTION()}))throw new Error('Reducer \"'+t+\"\\\" returned undefined when probed with a random type. Don't try to handle \"+l.INIT+' or other actions in \"redux/*\" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.')}))}(i)}catch(e){r=e}return function(e,t){if(void 0===e&&(e={}),r)throw r;for(var n=!1,s={},a=0;a<o.length;a++){var c=o[a],l=i[c],h=e[c],u=l(h,t);if(void 0===u){var p=d(c,t);throw new Error(p)}s[c]=u,n=n||u!==h}return n?s:e}}({items:function(e,t){switch(void 0===e&&(e=m),t.type){case\"ADD_ITEM\":return[].concat(e,[{id:t.id,choiceId:t.choiceId,groupId:t.groupId,value:t.value,label:t.label,active:!0,highlighted:!1,customProperties:t.customProperties,placeholder:t.placeholder||!1,keyCode:null}]).map((function(e){var t=e;return t.highlighted=!1,t}));case\"REMOVE_ITEM\":return e.map((function(e){var i=e;return i.id===t.id&&(i.active=!1),i}));case\"HIGHLIGHT_ITEM\":return e.map((function(e){var i=e;return i.id===t.id&&(i.highlighted=t.highlighted),i}));default:return e}},groups:function(e,t){switch(void 0===e&&(e=f),t.type){case\"ADD_GROUP\":return[].concat(e,[{id:t.id,value:t.value,active:t.active,disabled:t.disabled}]);case\"CLEAR_CHOICES\":return[];default:return e}},choices:function(e,t){switch(void 0===e&&(e=v),t.type){case\"ADD_CHOICE\":return[].concat(e,[{id:t.id,elementId:t.elementId,groupId:t.groupId,value:t.value,label:t.label||t.value,disabled:t.disabled||!1,selected:!1,active:!0,score:9999,customProperties:t.customProperties,placeholder:t.placeholder||!1,keyCode:null}]);case\"ADD_ITEM\":return t.activateOptions?e.map((function(e){var i=e;return i.active=t.active,i})):t.choiceId>-1?e.map((function(e){var i=e;return i.id===parseInt(t.choiceId,10)&&(i.selected=!0),i})):e;case\"REMOVE_ITEM\":return t.choiceId>-1?e.map((function(e){var i=e;return i.id===parseInt(t.choiceId,10)&&(i.selected=!1),i})):e;case\"FILTER_CHOICES\":return e.map((function(e){var i=e;return i.active=t.results.some((function(e){var t=e.item,n=e.score;return t.id===i.id&&(i.score=n,!0)})),i}));case\"ACTIVATE_CHOICES\":return e.map((function(e){var i=e;return i.active=t.active,i}));case\"CLEAR_CHOICES\":return v;default:return e}},general:_}),A=function(e,t){var i=e;if(\"CLEAR_ALL\"===t.type)i=void 0;else if(\"RESET_TO\"===t.type)return O(t.state);return C(i,t)};function L(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var T=function(){function e(){this._store=u(A,window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__())}var t,i,n,s=e.prototype;return s.subscribe=function(e){this._store.subscribe(e)},s.dispatch=function(e){this._store.dispatch(e)},s.isLoading=function(){return this.state.general.loading},s.getChoiceById=function(e){return this.activeChoices.find((function(t){return t.id===parseInt(e,10)}))},s.getGroupById=function(e){return this.groups.find((function(t){return t.id===e}))},t=e,(i=[{key:\"state\",get:function(){return this._store.getState()}},{key:\"items\",get:function(){return this.state.items}},{key:\"activeItems\",get:function(){return this.items.filter((function(e){return!0===e.active}))}},{key:\"highlightedActiveItems\",get:function(){return this.items.filter((function(e){return e.active&&e.highlighted}))}},{key:\"choices\",get:function(){return this.state.choices}},{key:\"activeChoices\",get:function(){return this.choices.filter((function(e){return!0===e.active}))}},{key:\"selectableChoices\",get:function(){return this.choices.filter((function(e){return!0!==e.disabled}))}},{key:\"searchableChoices\",get:function(){return this.selectableChoices.filter((function(e){return!0!==e.placeholder}))}},{key:\"placeholderChoice\",get:function(){return[].concat(this.choices).reverse().find((function(e){return!0===e.placeholder}))}},{key:\"groups\",get:function(){return this.state.groups}},{key:\"activeGroups\",get:function(){var e=this.groups,t=this.choices;return e.filter((function(e){var i=!0===e.active&&!1===e.disabled,n=t.some((function(e){return!0===e.active&&!1===e.disabled}));return i&&n}),[])}}])&&L(t.prototype,i),n&&L(t,n),e}();function x(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var k=function(){function e(e){var t=e.element,i=e.type,n=e.classNames;this.element=t,this.classNames=n,this.type=i,this.isActive=!1}var t,i,n,s=e.prototype;return s.getChild=function(e){return this.element.querySelector(e)},s.show=function(){return this.element.classList.add(this.classNames.activeState),this.element.setAttribute(\"aria-expanded\",\"true\"),this.isActive=!0,this},s.hide=function(){return this.element.classList.remove(this.classNames.activeState),this.element.setAttribute(\"aria-expanded\",\"false\"),this.isActive=!1,this},t=e,(i=[{key:\"distanceFromTopWindow\",get:function(){return this.element.getBoundingClientRect().bottom}}])&&x(t.prototype,i),n&&x(t,n),e}(),P={items:[],choices:[],silent:!1,renderChoiceLimit:-1,maxItemCount:-1,addItems:!0,addItemFilter:null,removeItems:!0,removeItemButton:!1,editItems:!1,duplicateItemsAllowed:!0,delimiter:\",\",paste:!0,searchEnabled:!0,searchChoices:!0,searchFloor:1,searchResultLimit:4,searchFields:[\"label\",\"value\"],position:\"auto\",resetScrollPosition:!0,shouldSort:!0,shouldSortItems:!1,sorter:function(e,t){var i=e.value,n=e.label,s=void 0===n?i:n,r=t.value,o=t.label,a=void 0===o?r:o;return s.localeCompare(a,[],{sensitivity:\"base\",ignorePunctuation:!0,numeric:!0})},placeholder:!0,placeholderValue:null,searchPlaceholderValue:null,prependValue:null,appendValue:null,renderSelectedChoices:\"auto\",loadingText:\"Loading...\",noResultsText:\"No results found\",noChoicesText:\"No choices to choose from\",itemSelectText:\"Press to select\",uniqueItemText:\"Only unique values can be added\",customAddItemText:\"Only values matching specific conditions can be added\",addItemText:function(e){return'Press Enter to add <b>\"'+I(e)+'\"</b>'},maxItemText:function(e){return\"Only \"+e+\" values can be added\"},valueComparer:function(e,t){return e===t},fuseOptions:{includeScore:!0},callbackOnInit:null,callbackOnCreateTemplates:null,classNames:{containerOuter:\"choices\",containerInner:\"choices__inner\",input:\"choices__input\",inputCloned:\"choices__input--cloned\",list:\"choices__list\",listItems:\"choices__list--multiple\",listSingle:\"choices__list--single\",listDropdown:\"choices__list--dropdown\",item:\"choices__item\",itemSelectable:\"choices__item--selectable\",itemDisabled:\"choices__item--disabled\",itemChoice:\"choices__item--choice\",placeholder:\"choices__placeholder\",group:\"choices__group\",groupHeading:\"choices__heading\",button:\"choices__button\",activeState:\"is-active\",focusState:\"is-focused\",openState:\"is-open\",disabledState:\"is-disabled\",highlightedState:\"is-highlighted\",selectedState:\"is-selected\",flippedState:\"is-flipped\",loadingState:\"is-loading\",noResults:\"has-no-results\",noChoices:\"has-no-choices\"}},D=\"showDropdown\",M=\"hideDropdown\",N=\"change\",F=\"choice\",j=\"search\",K=\"addItem\",R=\"removeItem\",H=\"highlightItem\",B=\"highlightChoice\",V=\"ADD_CHOICE\",G=\"FILTER_CHOICES\",q=\"ACTIVATE_CHOICES\",U=\"CLEAR_CHOICES\",z=\"ADD_GROUP\",W=\"ADD_ITEM\",X=\"REMOVE_ITEM\",$=\"HIGHLIGHT_ITEM\",J=46,Y=8,Z=13,Q=65,ee=27,te=38,ie=40,ne=33,se=34,re=\"text\",oe=\"select-one\",ae=\"select-multiple\",ce=function(){function e(e){var t=e.element,i=e.type,n=e.classNames,s=e.position;this.element=t,this.classNames=n,this.type=i,this.position=s,this.isOpen=!1,this.isFlipped=!1,this.isFocussed=!1,this.isDisabled=!1,this.isLoading=!1,this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this)}var t=e.prototype;return t.addEventListeners=function(){this.element.addEventListener(\"focus\",this._onFocus),this.element.addEventListener(\"blur\",this._onBlur)},t.removeEventListeners=function(){this.element.removeEventListener(\"focus\",this._onFocus),this.element.removeEventListener(\"blur\",this._onBlur)},t.shouldFlip=function(e){if(\"number\"!=typeof e)return!1;var t=!1;return\"auto\"===this.position?t=!window.matchMedia(\"(min-height: \"+(e+1)+\"px)\").matches:\"top\"===this.position&&(t=!0),t},t.setActiveDescendant=function(e){this.element.setAttribute(\"aria-activedescendant\",e)},t.removeActiveDescendant=function(){this.element.removeAttribute(\"aria-activedescendant\")},t.open=function(e){this.element.classList.add(this.classNames.openState),this.element.setAttribute(\"aria-expanded\",\"true\"),this.isOpen=!0,this.shouldFlip(e)&&(this.element.classList.add(this.classNames.flippedState),this.isFlipped=!0)},t.close=function(){this.element.classList.remove(this.classNames.openState),this.element.setAttribute(\"aria-expanded\",\"false\"),this.removeActiveDescendant(),this.isOpen=!1,this.isFlipped&&(this.element.classList.remove(this.classNames.flippedState),this.isFlipped=!1)},t.focus=function(){this.isFocussed||this.element.focus()},t.addFocusState=function(){this.element.classList.add(this.classNames.focusState)},t.removeFocusState=function(){this.element.classList.remove(this.classNames.focusState)},t.enable=function(){this.element.classList.remove(this.classNames.disabledState),this.element.removeAttribute(\"aria-disabled\"),this.type===oe&&this.element.setAttribute(\"tabindex\",\"0\"),this.isDisabled=!1},t.disable=function(){this.element.classList.add(this.classNames.disabledState),this.element.setAttribute(\"aria-disabled\",\"true\"),this.type===oe&&this.element.setAttribute(\"tabindex\",\"-1\"),this.isDisabled=!0},t.wrap=function(e){!function(e,t){void 0===t&&(t=document.createElement(\"div\")),e.nextSibling?e.parentNode.insertBefore(t,e.nextSibling):e.parentNode.appendChild(t),t.appendChild(e)}(e,this.element)},t.unwrap=function(e){this.element.parentNode.insertBefore(e,this.element),this.element.parentNode.removeChild(this.element)},t.addLoadingState=function(){this.element.classList.add(this.classNames.loadingState),this.element.setAttribute(\"aria-busy\",\"true\"),this.isLoading=!0},t.removeLoadingState=function(){this.element.classList.remove(this.classNames.loadingState),this.element.removeAttribute(\"aria-busy\"),this.isLoading=!1},t._onFocus=function(){this.isFocussed=!0},t._onBlur=function(){this.isFocussed=!1},e}();function le(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var he=function(){function e(e){var t=e.element,i=e.type,n=e.classNames,s=e.preventPaste;this.element=t,this.type=i,this.classNames=n,this.preventPaste=s,this.isFocussed=this.element===document.activeElement,this.isDisabled=t.disabled,this._onPaste=this._onPaste.bind(this),this._onInput=this._onInput.bind(this),this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this)}var t,i,n,s=e.prototype;return s.addEventListeners=function(){this.element.addEventListener(\"paste\",this._onPaste),this.element.addEventListener(\"input\",this._onInput,{passive:!0}),this.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.element.addEventListener(\"blur\",this._onBlur,{passive:!0})},s.removeEventListeners=function(){this.element.removeEventListener(\"input\",this._onInput,{passive:!0}),this.element.removeEventListener(\"paste\",this._onPaste),this.element.removeEventListener(\"focus\",this._onFocus,{passive:!0}),this.element.removeEventListener(\"blur\",this._onBlur,{passive:!0})},s.enable=function(){this.element.removeAttribute(\"disabled\"),this.isDisabled=!1},s.disable=function(){this.element.setAttribute(\"disabled\",\"\"),this.isDisabled=!0},s.focus=function(){this.isFocussed||this.element.focus()},s.blur=function(){this.isFocussed&&this.element.blur()},s.clear=function(e){return void 0===e&&(e=!0),this.element.value&&(this.element.value=\"\"),e&&this.setWidth(),this},s.setWidth=function(){var e=this.element,t=e.style,i=e.value,n=e.placeholder;t.minWidth=n.length+1+\"ch\",t.width=i.length+1+\"ch\"},s.setActiveDescendant=function(e){this.element.setAttribute(\"aria-activedescendant\",e)},s.removeActiveDescendant=function(){this.element.removeAttribute(\"aria-activedescendant\")},s._onInput=function(){this.type!==oe&&this.setWidth()},s._onPaste=function(e){this.preventPaste&&e.preventDefault()},s._onFocus=function(){this.isFocussed=!0},s._onBlur=function(){this.isFocussed=!1},t=e,(i=[{key:\"placeholder\",set:function(e){this.element.placeholder=e}},{key:\"value\",get:function(){return I(this.element.value)},set:function(e){this.element.value=e}}])&&le(t.prototype,i),n&&le(t,n),e}(),ue=function(){function e(e){var t=e.element;this.element=t,this.scrollPos=this.element.scrollTop,this.height=this.element.offsetHeight}var t=e.prototype;return t.clear=function(){this.element.innerHTML=\"\"},t.append=function(e){this.element.appendChild(e)},t.getChild=function(e){return this.element.querySelector(e)},t.hasChildren=function(){return this.element.hasChildNodes()},t.scrollToTop=function(){this.element.scrollTop=0},t.scrollToChildElement=function(e,t){var i=this;if(e){var n=this.element.offsetHeight,s=this.element.scrollTop+n,r=e.offsetHeight,o=e.offsetTop+r,a=t>0?this.element.scrollTop+o-s:e.offsetTop;requestAnimationFrame((function(){i._animateScroll(a,t)}))}},t._scrollDown=function(e,t,i){var n=(i-e)/t,s=n>1?n:1;this.element.scrollTop=e+s},t._scrollUp=function(e,t,i){var n=(e-i)/t,s=n>1?n:1;this.element.scrollTop=e-s},t._animateScroll=function(e,t){var i=this,n=this.element.scrollTop,s=!1;t>0?(this._scrollDown(n,4,e),n<e&&(s=!0)):(this._scrollUp(n,4,e),n>e&&(s=!0)),s&&requestAnimationFrame((function(){i._animateScroll(e,t)}))},e}();function de(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var pe=function(){function e(e){var t=e.element,i=e.classNames;if(this.element=t,this.classNames=i,!(t instanceof HTMLInputElement||t instanceof HTMLSelectElement))throw new TypeError(\"Invalid element passed\");this.isDisabled=!1}var t,i,n,s=e.prototype;return s.conceal=function(){this.element.classList.add(this.classNames.input),this.element.hidden=!0,this.element.tabIndex=-1;var e=this.element.getAttribute(\"style\");e&&this.element.setAttribute(\"data-choice-orig-style\",e),this.element.setAttribute(\"data-choice\",\"active\")},s.reveal=function(){this.element.classList.remove(this.classNames.input),this.element.hidden=!1,this.element.removeAttribute(\"tabindex\");var e=this.element.getAttribute(\"data-choice-orig-style\");e?(this.element.removeAttribute(\"data-choice-orig-style\"),this.element.setAttribute(\"style\",e)):this.element.removeAttribute(\"style\"),this.element.removeAttribute(\"data-choice\"),this.element.value=this.element.value},s.enable=function(){this.element.removeAttribute(\"disabled\"),this.element.disabled=!1,this.isDisabled=!1},s.disable=function(){this.element.setAttribute(\"disabled\",\"\"),this.element.disabled=!0,this.isDisabled=!0},s.triggerEvent=function(e,t){!function(e,t,i){void 0===i&&(i=null);var n=new CustomEvent(t,{detail:i,bubbles:!0,cancelable:!0});e.dispatchEvent(n)}(this.element,e,t)},t=e,(i=[{key:\"isActive\",get:function(){return\"active\"===this.element.dataset.choice}},{key:\"dir\",get:function(){return this.element.dir}},{key:\"value\",get:function(){return this.element.value},set:function(e){this.element.value=e}}])&&de(t.prototype,i),n&&de(t,n),e}();function me(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var fe=function(e){var t,i,n,s,r;function o(t){var i,n=t.element,s=t.classNames,r=t.delimiter;return(i=e.call(this,{element:n,classNames:s})||this).delimiter=r,i}return i=e,(t=o).prototype=Object.create(i.prototype),t.prototype.constructor=t,t.__proto__=i,n=o,(s=[{key:\"value\",get:function(){return this.element.value},set:function(e){var t=e.map((function(e){return e.value})).join(this.delimiter);this.element.setAttribute(\"value\",t),this.element.value=t}}])&&me(n.prototype,s),r&&me(n,r),o}(pe);function ve(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var ge=function(e){var t,i,n,s,r;function o(t){var i,n=t.element,s=t.classNames,r=t.template;return(i=e.call(this,{element:n,classNames:s})||this).template=r,i}return i=e,(t=o).prototype=Object.create(i.prototype),t.prototype.constructor=t,t.__proto__=i,o.prototype.appendDocFragment=function(e){this.element.innerHTML=\"\",this.element.appendChild(e)},n=o,(s=[{key:\"placeholderOption\",get:function(){return this.element.querySelector('option[value=\"\"]')||this.element.querySelector(\"option[placeholder]\")}},{key:\"optionGroups\",get:function(){return Array.from(this.element.getElementsByTagName(\"OPTGROUP\"))}},{key:\"options\",get:function(){return Array.from(this.element.options)},set:function(e){var t=this,i=document.createDocumentFragment();e.forEach((function(e){return n=e,s=t.template(n),void i.appendChild(s);var n,s})),this.appendDocFragment(i)}}])&&ve(n.prototype,s),r&&ve(n,r),o}(pe),_e={containerOuter:function(e,t,i,n,s,r){var o=e.containerOuter,a=Object.assign(document.createElement(\"div\"),{className:o});return a.dataset.type=r,t&&(a.dir=t),n&&(a.tabIndex=0),i&&(a.setAttribute(\"role\",s?\"combobox\":\"listbox\"),s&&a.setAttribute(\"aria-autocomplete\",\"list\")),a.setAttribute(\"aria-haspopup\",\"true\"),a.setAttribute(\"aria-expanded\",\"false\"),a},containerInner:function(e){var t=e.containerInner;return Object.assign(document.createElement(\"div\"),{className:t})},itemList:function(e,t){var i=e.list,n=e.listSingle,s=e.listItems;return Object.assign(document.createElement(\"div\"),{className:i+\" \"+(t?n:s)})},placeholder:function(e,t){var i=e.placeholder;return Object.assign(document.createElement(\"div\"),{className:i,innerHTML:t})},item:function(e,t,i){var n=e.item,s=e.button,r=e.highlightedState,o=e.itemSelectable,a=e.placeholder,c=t.id,l=t.value,h=t.label,u=t.customProperties,d=t.active,p=t.disabled,m=t.highlighted,f=t.placeholder,v=Object.assign(document.createElement(\"div\"),{className:n,innerHTML:h});if(Object.assign(v.dataset,{item:\"\",id:c,value:l,customProperties:u}),d&&v.setAttribute(\"aria-selected\",\"true\"),p&&v.setAttribute(\"aria-disabled\",\"true\"),f&&v.classList.add(a),v.classList.add(m?r:o),i){p&&v.classList.remove(o),v.dataset.deletable=\"\";var g=\"Remove item\",_=Object.assign(document.createElement(\"button\"),{type:\"button\",className:s,innerHTML:g});_.setAttribute(\"aria-label\",\"Remove item: '\"+l+\"'\"),_.dataset.button=\"\",v.appendChild(_)}return v},choiceList:function(e,t){var i=e.list,n=Object.assign(document.createElement(\"div\"),{className:i});return t||n.setAttribute(\"aria-multiselectable\",\"true\"),n.setAttribute(\"role\",\"listbox\"),n},choiceGroup:function(e,t){var i=e.group,n=e.groupHeading,s=e.itemDisabled,r=t.id,o=t.value,a=t.disabled,c=Object.assign(document.createElement(\"div\"),{className:i+\" \"+(a?s:\"\")});return c.setAttribute(\"role\",\"group\"),Object.assign(c.dataset,{group:\"\",id:r,value:o}),a&&c.setAttribute(\"aria-disabled\",\"true\"),c.appendChild(Object.assign(document.createElement(\"div\"),{className:n,innerHTML:o})),c},choice:function(e,t,i){var n=e.item,s=e.itemChoice,r=e.itemSelectable,o=e.selectedState,a=e.itemDisabled,c=e.placeholder,l=t.id,h=t.value,u=t.label,d=t.groupId,p=t.elementId,m=t.disabled,f=t.selected,v=t.placeholder,g=Object.assign(document.createElement(\"div\"),{id:p,innerHTML:u,className:n+\" \"+s});return f&&g.classList.add(o),v&&g.classList.add(c),g.setAttribute(\"role\",d>0?\"treeitem\":\"option\"),Object.assign(g.dataset,{choice:\"\",id:l,value:h,selectText:i}),m?(g.classList.add(a),g.dataset.choiceDisabled=\"\",g.setAttribute(\"aria-disabled\",\"true\")):(g.classList.add(r),g.dataset.choiceSelectable=\"\"),g},input:function(e,t){var i=e.input,n=e.inputCloned,s=Object.assign(document.createElement(\"input\"),{type:\"text\",className:i+\" \"+n,autocomplete:\"off\",autocapitalize:\"off\",spellcheck:!1});return s.setAttribute(\"role\",\"textbox\"),s.setAttribute(\"aria-autocomplete\",\"list\"),s.setAttribute(\"aria-label\",t),s},dropdown:function(e){var t=e.list,i=e.listDropdown,n=document.createElement(\"div\");return n.classList.add(t,i),n.setAttribute(\"aria-expanded\",\"false\"),n},notice:function(e,t,i){var n=e.item,s=e.itemChoice,r=e.noResults,o=e.noChoices;void 0===i&&(i=\"\");var a=[n,s];return\"no-choices\"===i?a.push(o):\"no-results\"===i&&a.push(r),Object.assign(document.createElement(\"div\"),{innerHTML:t,className:a.join(\" \")})},option:function(e){var t=e.label,i=e.value,n=e.customProperties,s=e.active,r=e.disabled,o=new Option(t,i,!1,s);return n&&(o.dataset.customProperties=n),o.disabled=r,o}},be=function(e){return void 0===e&&(e=!0),{type:q,active:e}},ye=function(e,t){return{type:$,id:e,highlighted:t}},Ee=function(e){var t=e.value,i=e.id,n=e.active,s=e.disabled;return{type:z,value:t,id:i,active:n,disabled:s}},Ie=function(e){return{type:\"SET_IS_LOADING\",isLoading:e}};function Se(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var we=\"-ms-scroll-limit\"in document.documentElement.style&&\"-ms-ime-align\"in document.documentElement.style,Oe={},Ce=function(){var e,t,i;function n(e,t){var i=this;void 0===e&&(e=\"[data-choice]\"),void 0===t&&(t={}),this.config=o.a.all([P,n.defaults.options,t],{arrayMerge:function(e,t){return[].concat(t)}});var s,r,a,c,l=(s=this.config,r=P,a=Object.keys(s).sort(),c=Object.keys(r).sort(),a.filter((function(e){return c.indexOf(e)<0})));l.length&&console.warn(\"Unknown config option(s) passed\",l.join(\", \"));var h=\"string\"==typeof e?document.querySelector(e):e;if(!(h instanceof HTMLInputElement||h instanceof HTMLSelectElement))throw TypeError(\"Expected one of the following types text|select-one|select-multiple\");if(this._isTextElement=h.type===re,this._isSelectOneElement=h.type===oe,this._isSelectMultipleElement=h.type===ae,this._isSelectElement=this._isSelectOneElement||this._isSelectMultipleElement,this.config.searchEnabled=this._isSelectMultipleElement||this.config.searchEnabled,[\"auto\",\"always\"].includes(this.config.renderSelectedChoices)||(this.config.renderSelectedChoices=\"auto\"),t.addItemFilter&&\"function\"!=typeof t.addItemFilter){var u=t.addItemFilter instanceof RegExp?t.addItemFilter:new RegExp(t.addItemFilter);this.config.addItemFilter=u.test.bind(u)}if(this._isTextElement?this.passedElement=new fe({element:h,classNames:this.config.classNames,delimiter:this.config.delimiter}):this.passedElement=new ge({element:h,classNames:this.config.classNames,template:function(e){return i._templates.option(e)}}),this.initialised=!1,this._store=new T,this._initialState={},this._currentState={},this._prevState={},this._currentValue=\"\",this._canSearch=this.config.searchEnabled,this._isScrollingOnIe=!1,this._highlightPosition=0,this._wasTap=!0,this._placeholderValue=this._generatePlaceholderValue(),this._baseId=function(e,t){var i=e.id||e.name&&e.name+\"-\"+b(2)||b(4);return t+\"-\"+i.replace(/(:|\\.|\\[|\\]|,)/g,\"\")}(this.passedElement.element,\"choices-\"),this._direction=this.passedElement.dir,!this._direction){var d=window.getComputedStyle(this.passedElement.element).direction;d!==window.getComputedStyle(document.documentElement).direction&&(this._direction=d)}if(this._idNames={itemChoice:\"item-choice\"},this._presetGroups=this.passedElement.optionGroups,this._presetOptions=this.passedElement.options,this._presetChoices=this.config.choices,this._presetItems=this.config.items,this.passedElement.value&&(this._presetItems=this._presetItems.concat(this.passedElement.value.split(this.config.delimiter))),this.passedElement.options&&this.passedElement.options.forEach((function(e){i._presetChoices.push({value:e.value,label:e.innerHTML,selected:e.selected,disabled:e.disabled||e.parentNode.disabled,placeholder:\"\"===e.value||e.hasAttribute(\"placeholder\"),customProperties:e.getAttribute(\"data-custom-properties\")})})),this._render=this._render.bind(this),this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this),this._onKeyUp=this._onKeyUp.bind(this),this._onKeyDown=this._onKeyDown.bind(this),this._onClick=this._onClick.bind(this),this._onTouchMove=this._onTouchMove.bind(this),this._onTouchEnd=this._onTouchEnd.bind(this),this._onMouseDown=this._onMouseDown.bind(this),this._onMouseOver=this._onMouseOver.bind(this),this._onFormReset=this._onFormReset.bind(this),this._onAKey=this._onAKey.bind(this),this._onEnterKey=this._onEnterKey.bind(this),this._onEscapeKey=this._onEscapeKey.bind(this),this._onDirectionKey=this._onDirectionKey.bind(this),this._onDeleteKey=this._onDeleteKey.bind(this),this.passedElement.isActive)return this.config.silent||console.warn(\"Trying to initialise Choices on element already initialised\"),void(this.initialised=!0);this.init()}e=n,i=[{key:\"defaults\",get:function(){return Object.preventExtensions({get options(){return Oe},get templates(){return _e}})}}],(t=null)&&Se(e.prototype,t),i&&Se(e,i);var r=n.prototype;return r.init=function(){if(!this.initialised){this._createTemplates(),this._createElements(),this._createStructure(),this._initialState=O(this._store.state),this._store.subscribe(this._render),this._render(),this._addEventListeners(),(!this.config.addItems||this.passedElement.element.hasAttribute(\"disabled\"))&&this.disable(),this.initialised=!0;var e=this.config.callbackOnInit;e&&\"function\"==typeof e&&e.call(this)}},r.destroy=function(){this.initialised&&(this._removeEventListeners(),this.passedElement.reveal(),this.containerOuter.unwrap(this.passedElement.element),this.clearStore(),this._isSelectElement&&(this.passedElement.options=this._presetOptions),this._templates=null,this.initialised=!1)},r.enable=function(){return this.passedElement.isDisabled&&this.passedElement.enable(),this.containerOuter.isDisabled&&(this._addEventListeners(),this.input.enable(),this.containerOuter.enable()),this},r.disable=function(){return this.passedElement.isDisabled||this.passedElement.disable(),this.containerOuter.isDisabled||(this._removeEventListeners(),this.input.disable(),this.containerOuter.disable()),this},r.highlightItem=function(e,t){if(void 0===t&&(t=!0),!e)return this;var i=e.id,n=e.groupId,s=void 0===n?-1:n,r=e.value,o=void 0===r?\"\":r,a=e.label,c=void 0===a?\"\":a,l=s>=0?this._store.getGroupById(s):null;return this._store.dispatch(ye(i,!0)),t&&this.passedElement.triggerEvent(H,{id:i,value:o,label:c,groupValue:l&&l.value?l.value:null}),this},r.unhighlightItem=function(e){if(!e)return this;var t=e.id,i=e.groupId,n=void 0===i?-1:i,s=e.value,r=void 0===s?\"\":s,o=e.label,a=void 0===o?\"\":o,c=n>=0?this._store.getGroupById(n):null;return this._store.dispatch(ye(t,!1)),this.passedElement.triggerEvent(H,{id:t,value:r,label:a,groupValue:c&&c.value?c.value:null}),this},r.highlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.highlightItem(t)})),this},r.unhighlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.unhighlightItem(t)})),this},r.removeActiveItemsByValue=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.value===e})).forEach((function(e){return t._removeItem(e)})),this},r.removeActiveItems=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.id!==e})).forEach((function(e){return t._removeItem(e)})),this},r.removeHighlightedItems=function(e){var t=this;return void 0===e&&(e=!1),this._store.highlightedActiveItems.forEach((function(i){t._removeItem(i),e&&t._triggerChange(i.value)})),this},r.showDropdown=function(e){var t=this;return this.dropdown.isActive||requestAnimationFrame((function(){t.dropdown.show(),t.containerOuter.open(t.dropdown.distanceFromTopWindow),!e&&t._canSearch&&t.input.focus(),t.passedElement.triggerEvent(D,{})})),this},r.hideDropdown=function(e){var t=this;return this.dropdown.isActive?(requestAnimationFrame((function(){t.dropdown.hide(),t.containerOuter.close(),!e&&t._canSearch&&(t.input.removeActiveDescendant(),t.input.blur()),t.passedElement.triggerEvent(M,{})})),this):this},r.getValue=function(e){void 0===e&&(e=!1);var t=this._store.activeItems.reduce((function(t,i){var n=e?i.value:i;return t.push(n),t}),[]);return this._isSelectOneElement?t[0]:t},r.setValue=function(e){var t=this;return this.initialised?(e.forEach((function(e){return t._setChoiceOrItem(e)})),this):this},r.setChoiceByValue=function(e){var t=this;return!this.initialised||this._isTextElement||(Array.isArray(e)?e:[e]).forEach((function(e){return t._findAndSelectChoiceByValue(e)})),this},r.setChoices=function(e,t,i,n){var s=this;if(void 0===e&&(e=[]),void 0===t&&(t=\"value\"),void 0===i&&(i=\"label\"),void 0===n&&(n=!1),!this.initialised)throw new ReferenceError(\"setChoices was called on a non-initialized instance of Choices\");if(!this._isSelectElement)throw new TypeError(\"setChoices can't be used with INPUT based Choices\");if(\"string\"!=typeof t||!t)throw new TypeError(\"value parameter must be a name of 'value' field in passed objects\");if(n&&this.clearChoices(),\"function\"==typeof e){var r=e(this);if(\"function\"==typeof Promise&&r instanceof Promise)return new Promise((function(e){return requestAnimationFrame(e)})).then((function(){return s._handleLoadingState(!0)})).then((function(){return r})).then((function(e){return s.setChoices(e,t,i,n)})).catch((function(e){s.config.silent||console.error(e)})).then((function(){return s._handleLoadingState(!1)})).then((function(){return s}));if(!Array.isArray(r))throw new TypeError(\".setChoices first argument function must return either array of choices or Promise, got: \"+typeof r);return this.setChoices(r,t,i,!1)}if(!Array.isArray(e))throw new TypeError(\".setChoices must be called either with array of choices with a function resulting into Promise of array of choices\");return this.containerOuter.removeLoadingState(),this._startLoading(),e.forEach((function(e){e.choices?s._addGroup({id:parseInt(e.id,10)||null,group:e,valueKey:t,labelKey:i}):s._addChoice({value:e[t],label:e[i],isSelected:e.selected,isDisabled:e.disabled,customProperties:e.customProperties,placeholder:e.placeholder})})),this._stopLoading(),this},r.clearChoices=function(){return this._store.dispatch({type:U}),this},r.clearStore=function(){return this._store.dispatch({type:\"CLEAR_ALL\"}),this},r.clearInput=function(){var e=!this._isSelectOneElement;return this.input.clear(e),!this._isTextElement&&this._canSearch&&(this._isSearching=!1,this._store.dispatch(be(!0))),this},r._render=function(){if(!this._store.isLoading()){this._currentState=this._store.state;var e=this._currentState.choices!==this._prevState.choices||this._currentState.groups!==this._prevState.groups||this._currentState.items!==this._prevState.items,t=this._isSelectElement,i=this._currentState.items!==this._prevState.items;e&&(t&&this._renderChoices(),i&&this._renderItems(),this._prevState=this._currentState)}},r._renderChoices=function(){var e=this,t=this._store,i=t.activeGroups,n=t.activeChoices,s=document.createDocumentFragment();if(this.choiceList.clear(),this.config.resetScrollPosition&&requestAnimationFrame((function(){return e.choiceList.scrollToTop()})),i.length>=1&&!this._isSearching){var r=n.filter((function(e){return!0===e.placeholder&&-1===e.groupId}));r.length>=1&&(s=this._createChoicesFragment(r,s)),s=this._createGroupsFragment(i,n,s)}else n.length>=1&&(s=this._createChoicesFragment(n,s));if(s.childNodes&&s.childNodes.length>0){var o=this._store.activeItems,a=this._canAddItem(o,this.input.value);a.response?(this.choiceList.append(s),this._highlightChoice()):this.choiceList.append(this._getTemplate(\"notice\",a.notice))}else{var c,l;this._isSearching?(l=\"function\"==typeof this.config.noResultsText?this.config.noResultsText():this.config.noResultsText,c=this._getTemplate(\"notice\",l,\"no-results\")):(l=\"function\"==typeof this.config.noChoicesText?this.config.noChoicesText():this.config.noChoicesText,c=this._getTemplate(\"notice\",l,\"no-choices\")),this.choiceList.append(c)}},r._renderItems=function(){var e=this._store.activeItems||[];this.itemList.clear();var t=this._createItemsFragment(e);t.childNodes&&this.itemList.append(t)},r._createGroupsFragment=function(e,t,i){var n=this;return void 0===i&&(i=document.createDocumentFragment()),this.config.shouldSort&&e.sort(this.config.sorter),e.forEach((function(e){var s=function(e){return t.filter((function(t){return n._isSelectOneElement?t.groupId===e.id:t.groupId===e.id&&(\"always\"===n.config.renderSelectedChoices||!t.selected)}))}(e);if(s.length>=1){var r=n._getTemplate(\"choiceGroup\",e);i.appendChild(r),n._createChoicesFragment(s,i,!0)}})),i},r._createChoicesFragment=function(e,t,i){var n=this;void 0===t&&(t=document.createDocumentFragment()),void 0===i&&(i=!1);var s=this.config,r=s.renderSelectedChoices,o=s.searchResultLimit,a=s.renderChoiceLimit,c=this._isSearching?w:this.config.sorter,l=function(e){if(\"auto\"!==r||n._isSelectOneElement||!e.selected){var i=n._getTemplate(\"choice\",e,n.config.itemSelectText);t.appendChild(i)}},h=e;\"auto\"!==r||this._isSelectOneElement||(h=e.filter((function(e){return!e.selected})));var u=h.reduce((function(e,t){return t.placeholder?e.placeholderChoices.push(t):e.normalChoices.push(t),e}),{placeholderChoices:[],normalChoices:[]}),d=u.placeholderChoices,p=u.normalChoices;(this.config.shouldSort||this._isSearching)&&p.sort(c);var m=h.length,f=this._isSelectOneElement?[].concat(d,p):p;this._isSearching?m=o:a&&a>0&&!i&&(m=a);for(var v=0;v<m;v+=1)f[v]&&l(f[v]);return t},r._createItemsFragment=function(e,t){var i=this;void 0===t&&(t=document.createDocumentFragment());var n=this.config,s=n.shouldSortItems,r=n.sorter,o=n.removeItemButton;return s&&!this._isSelectOneElement&&e.sort(r),this._isTextElement?this.passedElement.value=e:this.passedElement.options=e,e.forEach((function(e){var n=i._getTemplate(\"item\",e,o);t.appendChild(n)})),t},r._triggerChange=function(e){null!=e&&this.passedElement.triggerEvent(N,{value:e})},r._selectPlaceholderChoice=function(){var e=this._store.placeholderChoice;e&&(this._addItem({value:e.value,label:e.label,choiceId:e.id,groupId:e.groupId,placeholder:e.placeholder}),this._triggerChange(e.value))},r._handleButtonAction=function(e,t){if(e&&t&&this.config.removeItems&&this.config.removeItemButton){var i=t.parentNode.getAttribute(\"data-id\"),n=e.find((function(e){return e.id===parseInt(i,10)}));this._removeItem(n),this._triggerChange(n.value),this._isSelectOneElement&&this._selectPlaceholderChoice()}},r._handleItemAction=function(e,t,i){var n=this;if(void 0===i&&(i=!1),e&&t&&this.config.removeItems&&!this._isSelectOneElement){var s=t.getAttribute(\"data-id\");e.forEach((function(e){e.id!==parseInt(s,10)||e.highlighted?!i&&e.highlighted&&n.unhighlightItem(e):n.highlightItem(e)})),this.input.focus()}},r._handleChoiceAction=function(e,t){if(e&&t){var i=t.dataset.id,n=this._store.getChoiceById(i);if(n){var s=e[0]&&e[0].keyCode?e[0].keyCode:null,r=this.dropdown.isActive;n.keyCode=s,this.passedElement.triggerEvent(F,{choice:n}),n.selected||n.disabled||this._canAddItem(e,n.value).response&&(this._addItem({value:n.value,label:n.label,choiceId:n.id,groupId:n.groupId,customProperties:n.customProperties,placeholder:n.placeholder,keyCode:n.keyCode}),this._triggerChange(n.value)),this.clearInput(),r&&this._isSelectOneElement&&(this.hideDropdown(!0),this.containerOuter.focus())}}},r._handleBackspace=function(e){if(this.config.removeItems&&e){var t=e[e.length-1],i=e.some((function(e){return e.highlighted}));this.config.editItems&&!i&&t?(this.input.value=t.value,this.input.setWidth(),this._removeItem(t),this._triggerChange(t.value)):(i||this.highlightItem(t,!1),this.removeHighlightedItems(!0))}},r._startLoading=function(){this._store.dispatch(Ie(!0))},r._stopLoading=function(){this._store.dispatch(Ie(!1))},r._handleLoadingState=function(e){void 0===e&&(e=!0);var t=this.itemList.getChild(\".\"+this.config.classNames.placeholder);e?(this.disable(),this.containerOuter.addLoadingState(),this._isSelectOneElement?t?t.innerHTML=this.config.loadingText:(t=this._getTemplate(\"placeholder\",this.config.loadingText),this.itemList.append(t)):this.input.placeholder=this.config.loadingText):(this.enable(),this.containerOuter.removeLoadingState(),this._isSelectOneElement?t.innerHTML=this._placeholderValue||\"\":this.input.placeholder=this._placeholderValue||\"\")},r._handleSearch=function(e){if(e&&this.input.isFocussed){var t=this._store.choices,i=this.config,n=i.searchFloor,s=i.searchChoices,r=t.some((function(e){return!e.active}));if(e&&e.length>=n){var o=s?this._searchChoices(e):0;this.passedElement.triggerEvent(j,{value:e,resultCount:o})}else r&&(this._isSearching=!1,this._store.dispatch(be(!0)))}},r._canAddItem=function(e,t){var i=!0,n=\"function\"==typeof this.config.addItemText?this.config.addItemText(t):this.config.addItemText;if(!this._isSelectOneElement){var s=function(e,t,i){return void 0===i&&(i=\"value\"),e.some((function(e){return\"string\"==typeof t?e[i]===t.trim():e[i]===t}))}(e,t);this.config.maxItemCount>0&&this.config.maxItemCount<=e.length&&(i=!1,n=\"function\"==typeof this.config.maxItemText?this.config.maxItemText(this.config.maxItemCount):this.config.maxItemText),!this.config.duplicateItemsAllowed&&s&&i&&(i=!1,n=\"function\"==typeof this.config.uniqueItemText?this.config.uniqueItemText(t):this.config.uniqueItemText),this._isTextElement&&this.config.addItems&&i&&\"function\"==typeof this.config.addItemFilter&&!this.config.addItemFilter(t)&&(i=!1,n=\"function\"==typeof this.config.customAddItemText?this.config.customAddItemText(t):this.config.customAddItemText)}return{response:i,notice:n}},r._searchChoices=function(e){var t=\"string\"==typeof e?e.trim():e,i=\"string\"==typeof this._currentValue?this._currentValue.trim():this._currentValue;if(t.length<1&&t===i+\" \")return 0;var n=this._store.searchableChoices,r=t,o=[].concat(this.config.searchFields),a=Object.assign(this.config.fuseOptions,{keys:o}),c=new s.a(n,a).search(r);return this._currentValue=t,this._highlightPosition=0,this._isSearching=!0,this._store.dispatch(function(e){return{type:G,results:e}}(c)),c.length},r._addEventListeners=function(){var e=document.documentElement;e.addEventListener(\"touchend\",this._onTouchEnd,!0),this.containerOuter.element.addEventListener(\"keydown\",this._onKeyDown,!0),this.containerOuter.element.addEventListener(\"mousedown\",this._onMouseDown,!0),e.addEventListener(\"click\",this._onClick,{passive:!0}),e.addEventListener(\"touchmove\",this._onTouchMove,{passive:!0}),this.dropdown.element.addEventListener(\"mouseover\",this._onMouseOver,{passive:!0}),this._isSelectOneElement&&(this.containerOuter.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.containerOuter.element.addEventListener(\"blur\",this._onBlur,{passive:!0})),this.input.element.addEventListener(\"keyup\",this._onKeyUp,{passive:!0}),this.input.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.input.element.addEventListener(\"blur\",this._onBlur,{passive:!0}),this.input.element.form&&this.input.element.form.addEventListener(\"reset\",this._onFormReset,{passive:!0}),this.input.addEventListeners()},r._removeEventListeners=function(){var e=document.documentElement;e.removeEventListener(\"touchend\",this._onTouchEnd,!0),this.containerOuter.element.removeEventListener(\"keydown\",this._onKeyDown,!0),this.containerOuter.element.removeEventListener(\"mousedown\",this._onMouseDown,!0),e.removeEventListener(\"click\",this._onClick),e.removeEventListener(\"touchmove\",this._onTouchMove),this.dropdown.element.removeEventListener(\"mouseover\",this._onMouseOver),this._isSelectOneElement&&(this.containerOuter.element.removeEventListener(\"focus\",this._onFocus),this.containerOuter.element.removeEventListener(\"blur\",this._onBlur)),this.input.element.removeEventListener(\"keyup\",this._onKeyUp),this.input.element.removeEventListener(\"focus\",this._onFocus),this.input.element.removeEventListener(\"blur\",this._onBlur),this.input.element.form&&this.input.element.form.removeEventListener(\"reset\",this._onFormReset),this.input.removeEventListeners()},r._onKeyDown=function(e){var t,i=e.target,n=e.keyCode,s=e.ctrlKey,r=e.metaKey,o=this._store.activeItems,a=this.input.isFocussed,c=this.dropdown.isActive,l=this.itemList.hasChildren(),h=String.fromCharCode(n),u=J,d=Y,p=Z,m=Q,f=ee,v=te,g=ie,_=ne,b=se,y=s||r;!this._isTextElement&&/[a-zA-Z0-9-_ ]/.test(h)&&this.showDropdown();var E=((t={})[m]=this._onAKey,t[p]=this._onEnterKey,t[f]=this._onEscapeKey,t[v]=this._onDirectionKey,t[_]=this._onDirectionKey,t[g]=this._onDirectionKey,t[b]=this._onDirectionKey,t[d]=this._onDeleteKey,t[u]=this._onDeleteKey,t);E[n]&&E[n]({event:e,target:i,keyCode:n,metaKey:r,activeItems:o,hasFocusedInput:a,hasActiveDropdown:c,hasItems:l,hasCtrlDownKeyPressed:y})},r._onKeyUp=function(e){var t=e.target,i=e.keyCode,n=this.input.value,s=this._store.activeItems,r=this._canAddItem(s,n),o=J,a=Y;if(this._isTextElement)if(r.notice&&n){var c=this._getTemplate(\"notice\",r.notice);this.dropdown.element.innerHTML=c.outerHTML,this.showDropdown(!0)}else this.hideDropdown(!0);else{var l=(i===o||i===a)&&!t.value,h=!this._isTextElement&&this._isSearching,u=this._canSearch&&r.response;l&&h?(this._isSearching=!1,this._store.dispatch(be(!0))):u&&this._handleSearch(this.input.value)}this._canSearch=this.config.searchEnabled},r._onAKey=function(e){var t=e.hasItems;e.hasCtrlDownKeyPressed&&t&&(this._canSearch=!1,this.config.removeItems&&!this.input.value&&this.input.element===document.activeElement&&this.highlightAll())},r._onEnterKey=function(e){var t=e.event,i=e.target,n=e.activeItems,s=e.hasActiveDropdown,r=Z,o=i.hasAttribute(\"data-button\");if(this._isTextElement&&i.value){var a=this.input.value;this._canAddItem(n,a).response&&(this.hideDropdown(!0),this._addItem({value:a}),this._triggerChange(a),this.clearInput())}if(o&&(this._handleButtonAction(n,i),t.preventDefault()),s){var c=this.dropdown.getChild(\".\"+this.config.classNames.highlightedState);c&&(n[0]&&(n[0].keyCode=r),this._handleChoiceAction(n,c)),t.preventDefault()}else this._isSelectOneElement&&(this.showDropdown(),t.preventDefault())},r._onEscapeKey=function(e){e.hasActiveDropdown&&(this.hideDropdown(!0),this.containerOuter.focus())},r._onDirectionKey=function(e){var t,i,n,s=e.event,r=e.hasActiveDropdown,o=e.keyCode,a=e.metaKey,c=ie,l=ne,h=se;if(r||this._isSelectOneElement){this.showDropdown(),this._canSearch=!1;var u,d=o===c||o===h?1:-1,p=\"[data-choice-selectable]\";if(a||o===h||o===l)u=d>0?this.dropdown.element.querySelector(\"[data-choice-selectable]:last-of-type\"):this.dropdown.element.querySelector(p);else{var m=this.dropdown.element.querySelector(\".\"+this.config.classNames.highlightedState);u=m?function(e,t,i){if(void 0===i&&(i=1),e instanceof Element&&\"string\"==typeof t){for(var n=(i>0?\"next\":\"previous\")+\"ElementSibling\",s=e[n];s;){if(s.matches(t))return s;s=s[n]}return s}}(m,p,d):this.dropdown.element.querySelector(p)}u&&(t=u,i=this.choiceList.element,void 0===(n=d)&&(n=1),t&&(n>0?i.scrollTop+i.offsetHeight>=t.offsetTop+t.offsetHeight:t.offsetTop>=i.scrollTop)||this.choiceList.scrollToChildElement(u,d),this._highlightChoice(u)),s.preventDefault()}},r._onDeleteKey=function(e){var t=e.event,i=e.target,n=e.hasFocusedInput,s=e.activeItems;!n||i.value||this._isSelectOneElement||(this._handleBackspace(s),t.preventDefault())},r._onTouchMove=function(){this._wasTap&&(this._wasTap=!1)},r._onTouchEnd=function(e){var t=(e||e.touches[0]).target;this._wasTap&&this.containerOuter.element.contains(t)&&((t===this.containerOuter.element||t===this.containerInner.element)&&(this._isTextElement?this.input.focus():this._isSelectMultipleElement&&this.showDropdown()),e.stopPropagation()),this._wasTap=!0},r._onMouseDown=function(e){var t=e.target;if(t instanceof HTMLElement){if(we&&this.choiceList.element.contains(t)){var i=this.choiceList.element.firstElementChild,n=\"ltr\"===this._direction?e.offsetX>=i.offsetWidth:e.offsetX<i.offsetLeft;this._isScrollingOnIe=n}if(t!==this.input.element){var s=t.closest(\"[data-button],[data-item],[data-choice]\");if(s instanceof HTMLElement){var r=e.shiftKey,o=this._store.activeItems,a=s.dataset;\"button\"in a?this._handleButtonAction(o,s):\"item\"in a?this._handleItemAction(o,s,r):\"choice\"in a&&this._handleChoiceAction(o,s)}e.preventDefault()}}},r._onMouseOver=function(e){var t=e.target;t instanceof HTMLElement&&\"choice\"in t.dataset&&this._highlightChoice(t)},r._onClick=function(e){var t=e.target;this.containerOuter.element.contains(t)?this.dropdown.isActive||this.containerOuter.isDisabled?this._isSelectOneElement&&t!==this.input.element&&!this.dropdown.element.contains(t)&&this.hideDropdown():this._isTextElement?document.activeElement!==this.input.element&&this.input.focus():(this.showDropdown(),this.containerOuter.focus()):(this._store.highlightedActiveItems.length>0&&this.unhighlightAll(),this.containerOuter.removeFocusState(),this.hideDropdown(!0))},r._onFocus=function(e){var t,i=this,n=e.target;this.containerOuter.element.contains(n)&&((t={}).text=function(){n===i.input.element&&i.containerOuter.addFocusState()},t[\"select-one\"]=function(){i.containerOuter.addFocusState(),n===i.input.element&&i.showDropdown(!0)},t[\"select-multiple\"]=function(){n===i.input.element&&(i.showDropdown(!0),i.containerOuter.addFocusState())},t)[this.passedElement.element.type]()},r._onBlur=function(e){var t=this,i=e.target;if(this.containerOuter.element.contains(i)&&!this._isScrollingOnIe){var n,s=this._store.activeItems.some((function(e){return e.highlighted}));((n={}).text=function(){i===t.input.element&&(t.containerOuter.removeFocusState(),s&&t.unhighlightAll(),t.hideDropdown(!0))},n[\"select-one\"]=function(){t.containerOuter.removeFocusState(),(i===t.input.element||i===t.containerOuter.element&&!t._canSearch)&&t.hideDropdown(!0)},n[\"select-multiple\"]=function(){i===t.input.element&&(t.containerOuter.removeFocusState(),t.hideDropdown(!0),s&&t.unhighlightAll())},n)[this.passedElement.element.type]()}else this._isScrollingOnIe=!1,this.input.element.focus()},r._onFormReset=function(){this._store.dispatch({type:\"RESET_TO\",state:this._initialState})},r._highlightChoice=function(e){var t=this;void 0===e&&(e=null);var i=Array.from(this.dropdown.element.querySelectorAll(\"[data-choice-selectable]\"));if(i.length){var n=e;Array.from(this.dropdown.element.querySelectorAll(\".\"+this.config.classNames.highlightedState)).forEach((function(e){e.classList.remove(t.config.classNames.highlightedState),e.setAttribute(\"aria-selected\",\"false\")})),n?this._highlightPosition=i.indexOf(n):(n=i.length>this._highlightPosition?i[this._highlightPosition]:i[i.length-1])||(n=i[0]),n.classList.add(this.config.classNames.highlightedState),n.setAttribute(\"aria-selected\",\"true\"),this.passedElement.triggerEvent(B,{el:n}),this.dropdown.isActive&&(this.input.setActiveDescendant(n.id),this.containerOuter.setActiveDescendant(n.id))}},r._addItem=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,s=e.choiceId,r=void 0===s?-1:s,o=e.groupId,a=void 0===o?-1:o,c=e.customProperties,l=void 0===c?null:c,h=e.placeholder,u=void 0!==h&&h,d=e.keyCode,p=void 0===d?null:d,m=\"string\"==typeof t?t.trim():t,f=p,v=l,g=this._store.items,_=n||m,b=r||-1,y=a>=0?this._store.getGroupById(a):null,E=g?g.length+1:1;return this.config.prependValue&&(m=this.config.prependValue+m.toString()),this.config.appendValue&&(m+=this.config.appendValue.toString()),this._store.dispatch(function(e){var t=e.value,i=e.label,n=e.id,s=e.choiceId,r=e.groupId,o=e.customProperties,a=e.placeholder,c=e.keyCode;return{type:W,value:t,label:i,id:n,choiceId:s,groupId:r,customProperties:o,placeholder:a,keyCode:c}}({value:m,label:_,id:E,choiceId:b,groupId:a,customProperties:l,placeholder:u,keyCode:f})),this._isSelectOneElement&&this.removeActiveItems(E),this.passedElement.triggerEvent(K,{id:E,value:m,label:_,customProperties:v,groupValue:y&&y.value?y.value:void 0,keyCode:f}),this},r._removeItem=function(e){if(!e||!E(\"Object\",e))return this;var t=e.id,i=e.value,n=e.label,s=e.choiceId,r=e.groupId,o=r>=0?this._store.getGroupById(r):null;return this._store.dispatch(function(e,t){return{type:X,id:e,choiceId:t}}(t,s)),o&&o.value?this.passedElement.triggerEvent(R,{id:t,value:i,label:n,groupValue:o.value}):this.passedElement.triggerEvent(R,{id:t,value:i,label:n}),this},r._addChoice=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,s=e.isSelected,r=void 0!==s&&s,o=e.isDisabled,a=void 0!==o&&o,c=e.groupId,l=void 0===c?-1:c,h=e.customProperties,u=void 0===h?null:h,d=e.placeholder,p=void 0!==d&&d,m=e.keyCode,f=void 0===m?null:m;if(null!=t){var v=this._store.choices,g=n||t,_=v?v.length+1:1,b=this._baseId+\"-\"+this._idNames.itemChoice+\"-\"+_;this._store.dispatch(function(e){var t=e.value,i=e.label,n=e.id,s=e.groupId,r=e.disabled,o=e.elementId,a=e.customProperties,c=e.placeholder,l=e.keyCode;return{type:V,value:t,label:i,id:n,groupId:s,disabled:r,elementId:o,customProperties:a,placeholder:c,keyCode:l}}({id:_,groupId:l,elementId:b,value:t,label:g,disabled:a,customProperties:u,placeholder:p,keyCode:f})),r&&this._addItem({value:t,label:g,choiceId:_,customProperties:u,placeholder:p,keyCode:f})}},r._addGroup=function(e){var t=this,i=e.group,n=e.id,s=e.valueKey,r=void 0===s?\"value\":s,o=e.labelKey,a=void 0===o?\"label\":o,c=E(\"Object\",i)?i.choices:Array.from(i.getElementsByTagName(\"OPTION\")),l=n||Math.floor((new Date).valueOf()*Math.random()),h=!!i.disabled&&i.disabled;c?(this._store.dispatch(Ee({value:i.label,id:l,active:!0,disabled:h})),c.forEach((function(e){var i=e.disabled||e.parentNode&&e.parentNode.disabled;t._addChoice({value:e[r],label:E(\"Object\",e)?e[a]:e.innerHTML,isSelected:e.selected,isDisabled:i,groupId:l,customProperties:e.customProperties,placeholder:e.placeholder})}))):this._store.dispatch(Ee({value:i.label,id:i.id,active:!1,disabled:i.disabled}))},r._getTemplate=function(e){var t;if(!e)return null;for(var i=this.config.classNames,n=arguments.length,s=new Array(n>1?n-1:0),r=1;r<n;r++)s[r-1]=arguments[r];return(t=this._templates[e]).call.apply(t,[this,i].concat(s))},r._createTemplates=function(){var e=this.config.callbackOnCreateTemplates,t={};e&&\"function\"==typeof e&&(t=e.call(this,S)),this._templates=o()(_e,t)},r._createElements=function(){this.containerOuter=new ce({element:this._getTemplate(\"containerOuter\",this._direction,this._isSelectElement,this._isSelectOneElement,this.config.searchEnabled,this.passedElement.element.type),classNames:this.config.classNames,type:this.passedElement.element.type,position:this.config.position}),this.containerInner=new ce({element:this._getTemplate(\"containerInner\"),classNames:this.config.classNames,type:this.passedElement.element.type,position:this.config.position}),this.input=new he({element:this._getTemplate(\"input\",this._placeholderValue),classNames:this.config.classNames,type:this.passedElement.element.type,preventPaste:!this.config.paste}),this.choiceList=new ue({element:this._getTemplate(\"choiceList\",this._isSelectOneElement)}),this.itemList=new ue({element:this._getTemplate(\"itemList\",this._isSelectOneElement)}),this.dropdown=new k({element:this._getTemplate(\"dropdown\"),classNames:this.config.classNames,type:this.passedElement.element.type})},r._createStructure=function(){this.passedElement.conceal(),this.containerInner.wrap(this.passedElement.element),this.containerOuter.wrap(this.containerInner.element),this._isSelectOneElement?this.input.placeholder=this.config.searchPlaceholderValue||\"\":this._placeholderValue&&(this.input.placeholder=this._placeholderValue,this.input.setWidth()),this.containerOuter.element.appendChild(this.containerInner.element),this.containerOuter.element.appendChild(this.dropdown.element),this.containerInner.element.appendChild(this.itemList.element),this._isTextElement||this.dropdown.element.appendChild(this.choiceList.element),this._isSelectOneElement?this.config.searchEnabled&&this.dropdown.element.insertBefore(this.input.element,this.dropdown.element.firstChild):this.containerInner.element.appendChild(this.input.element),this._isSelectElement&&(this._highlightPosition=0,this._isSearching=!1,this._startLoading(),this._presetGroups.length?this._addPredefinedGroups(this._presetGroups):this._addPredefinedChoices(this._presetChoices),this._stopLoading()),this._isTextElement&&this._addPredefinedItems(this._presetItems)},r._addPredefinedGroups=function(e){var t=this,i=this.passedElement.placeholderOption;i&&\"SELECT\"===i.parentNode.tagName&&this._addChoice({value:i.value,label:i.innerHTML,isSelected:i.selected,isDisabled:i.disabled,placeholder:!0}),e.forEach((function(e){return t._addGroup({group:e,id:e.id||null})}))},r._addPredefinedChoices=function(e){var t=this;this.config.shouldSort&&e.sort(this.config.sorter);var i=e.some((function(e){return e.selected})),n=e.findIndex((function(e){return void 0===e.disabled||!e.disabled}));e.forEach((function(e,s){var r=e.value,o=e.label,a=e.customProperties,c=e.placeholder;if(t._isSelectElement)if(e.choices)t._addGroup({group:e,id:e.id||null});else{var l=!(!t._isSelectOneElement||i||s!==n)||e.selected,h=e.disabled;t._addChoice({value:r,label:o,isSelected:l,isDisabled:h,customProperties:a,placeholder:c})}else t._addChoice({value:r,label:o,isSelected:e.selected,isDisabled:e.disabled,customProperties:a,placeholder:c})}))},r._addPredefinedItems=function(e){var t=this;e.forEach((function(e){\"object\"==typeof e&&e.value&&t._addItem({value:e.value,label:e.label,choiceId:e.id,customProperties:e.customProperties,placeholder:e.placeholder}),\"string\"==typeof e&&t._addItem({value:e})}))},r._setChoiceOrItem=function(e){var t=this;({object:function(){e.value&&(t._isTextElement?t._addItem({value:e.value,label:e.label,choiceId:e.id,customProperties:e.customProperties,placeholder:e.placeholder}):t._addChoice({value:e.value,label:e.label,isSelected:!0,isDisabled:!1,customProperties:e.customProperties,placeholder:e.placeholder}))},string:function(){t._isTextElement?t._addItem({value:e}):t._addChoice({value:e,label:e,isSelected:!0,isDisabled:!1})}})[y(e).toLowerCase()]()},r._findAndSelectChoiceByValue=function(e){var t=this,i=this._store.choices.find((function(i){return t.config.valueComparer(i.value,e)}));i&&!i.selected&&this._addItem({value:i.value,label:i.label,choiceId:i.id,groupId:i.groupId,customProperties:i.customProperties,placeholder:i.placeholder,keyCode:i.keyCode})},r._generatePlaceholderValue=function(){if(this._isSelectElement){var e=this.passedElement.placeholderOption;return!!e&&e.text}var t=this.config,i=t.placeholder,n=t.placeholderValue,s=this.passedElement.element.dataset;if(i){if(n)return n;if(s.placeholder)return s.placeholder}return!1},n}();t.default=Ce}]).default},\"object\"==typeof i&&\"object\"==typeof t?t.exports=o():\"function\"==typeof define&&define.amd?define([],o):\"object\"==typeof i?i.Choices=o():r.Choices=o()},\n", " 453: function _(o,e,i,t,r){t(),i.root=\"bk-root\",i.default=\".bk-root{}.bk-root .choices{position:relative;margin-bottom:24px;font-size:16px;}.bk-root .choices:focus{outline:none;}.bk-root .choices:last-child{margin-bottom:0;}.bk-root .choices.is-disabled .choices__inner,.bk-root .choices.is-disabled .choices__input{background-color:#eaeaea;cursor:not-allowed;-webkit-user-select:none;-ms-user-select:none;user-select:none;}.bk-root .choices.is-disabled .choices__item{cursor:not-allowed;}.bk-root .choices [hidden]{display:none !important;}.bk-root .choices[data-type*='select-one']{cursor:pointer;}.bk-root .choices[data-type*='select-one'] .choices__inner{padding-bottom:7.5px;}.bk-root .choices[data-type*='select-one'] .choices__input{display:block;width:100%;padding:10px;border-bottom:1px solid #dddddd;background-color:#ffffff;margin:0;}.bk-root .choices[data-type*='select-one'] .choices__button{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);padding:0;background-size:8px;position:absolute;top:50%;right:0;margin-top:-10px;margin-right:25px;height:20px;width:20px;border-radius:10em;opacity:0.5;}.bk-root .choices[data-type*='select-one'] .choices__button:hover,.bk-root .choices[data-type*='select-one'] .choices__button:focus{opacity:1;}.bk-root .choices[data-type*='select-one'] .choices__button:focus{box-shadow:0px 0px 0px 2px #00bcd4;}.bk-root .choices[data-type*='select-one'] .choices__item[data-value=''] .choices__button{display:none;}.bk-root .choices[data-type*='select-one']:after{content:'';height:0;width:0;border-style:solid;border-color:#333333 transparent transparent transparent;border-width:5px;position:absolute;right:11.5px;top:50%;margin-top:-2.5px;pointer-events:none;}.bk-root .choices[data-type*='select-one'].is-open:after{border-color:transparent transparent #333333 transparent;margin-top:-7.5px;}.bk-root .choices[data-type*='select-one'][dir='rtl']:after{left:11.5px;right:auto;}.bk-root .choices[data-type*='select-one'][dir='rtl'] .choices__button{right:auto;left:0;margin-left:25px;margin-right:0;}.bk-root .choices[data-type*='select-multiple'] .choices__inner,.bk-root .choices[data-type*='text'] .choices__inner{cursor:text;}.bk-root .choices[data-type*='select-multiple'] .choices__button,.bk-root .choices[data-type*='text'] .choices__button{position:relative;display:inline-block;margin-top:0;margin-right:-4px;margin-bottom:0;margin-left:8px;padding-left:16px;border-left:1px solid #008fa1;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);background-size:8px;width:8px;line-height:1;opacity:0.75;border-radius:0;}.bk-root .choices[data-type*='select-multiple'] .choices__button:hover,.bk-root .choices[data-type*='select-multiple'] .choices__button:focus,.bk-root .choices[data-type*='text'] .choices__button:hover,.bk-root .choices[data-type*='text'] .choices__button:focus{opacity:1;}.bk-root .choices__inner{display:inline-block;vertical-align:top;width:100%;background-color:#f9f9f9;padding:7.5px 7.5px 3.75px;border:1px solid #dddddd;border-radius:2.5px;font-size:14px;min-height:44px;overflow:hidden;}.bk-root .is-focused .choices__inner,.bk-root .is-open .choices__inner{border-color:#b7b7b7;}.bk-root .is-open .choices__inner{border-radius:2.5px 2.5px 0 0;}.bk-root .is-flipped.is-open .choices__inner{border-radius:0 0 2.5px 2.5px;}.bk-root .choices__list{margin:0;padding-left:0;list-style:none;}.bk-root .choices__list--single{display:inline-block;padding:4px 16px 4px 4px;width:100%;}.bk-root [dir='rtl'] .choices__list--single{padding-right:4px;padding-left:16px;}.bk-root .choices__list--single .choices__item{width:100%;}.bk-root .choices__list--multiple{display:inline;}.bk-root .choices__list--multiple .choices__item{display:inline-block;vertical-align:middle;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:500;margin-right:3.75px;margin-bottom:3.75px;background-color:#00bcd4;border:1px solid #00a5bb;color:#ffffff;word-break:break-all;box-sizing:border-box;}.bk-root .choices__list--multiple .choices__item[data-deletable]{padding-right:5px;}.bk-root [dir='rtl'] .choices__list--multiple .choices__item{margin-right:0;margin-left:3.75px;}.bk-root .choices__list--multiple .choices__item.is-highlighted{background-color:#00a5bb;border:1px solid #008fa1;}.bk-root .is-disabled .choices__list--multiple .choices__item{background-color:#aaaaaa;border:1px solid #919191;}.bk-root .choices__list--dropdown{visibility:hidden;z-index:1;position:absolute;width:100%;background-color:#ffffff;border:1px solid #dddddd;top:100%;margin-top:-1px;border-bottom-left-radius:2.5px;border-bottom-right-radius:2.5px;overflow:hidden;word-break:break-all;will-change:visibility;}.bk-root .choices__list--dropdown.is-active{visibility:visible;}.bk-root .is-open .choices__list--dropdown{border-color:#b7b7b7;}.bk-root .is-flipped .choices__list--dropdown{top:auto;bottom:100%;margin-top:0;margin-bottom:-1px;border-radius:0.25rem 0.25rem 0 0;}.bk-root .choices__list--dropdown .choices__list{position:relative;max-height:300px;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position;}.bk-root .choices__list--dropdown .choices__item{position:relative;padding:10px;font-size:14px;}.bk-root [dir='rtl'] .choices__list--dropdown .choices__item{text-align:right;}@media (min-width: 640px){.bk-root .choices__list--dropdown .choices__item--selectable{padding-right:100px;}.bk-root .choices__list--dropdown .choices__item--selectable:after{content:attr(data-select-text);font-size:12px;opacity:0;position:absolute;right:10px;top:50%;transform:translateY(-50%);}.bk-root [dir='rtl'] .choices__list--dropdown .choices__item--selectable{text-align:right;padding-left:100px;padding-right:10px;}.bk-root [dir='rtl'] .choices__list--dropdown .choices__item--selectable:after{right:auto;left:10px;}}.bk-root .choices__list--dropdown .choices__item--selectable.is-highlighted{background-color:#f2f2f2;}.bk-root .choices__list--dropdown .choices__item--selectable.is-highlighted:after{opacity:0.5;}.bk-root .choices__item{cursor:default;}.bk-root .choices__item--selectable{cursor:pointer;}.bk-root .choices__item--disabled{cursor:not-allowed;-webkit-user-select:none;-ms-user-select:none;user-select:none;opacity:0.5;}.bk-root .choices__heading{font-weight:600;font-size:12px;padding:10px;border-bottom:1px solid #f7f7f7;color:gray;}.bk-root .choices__button{text-indent:-9999px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background-color:transparent;background-repeat:no-repeat;background-position:center;cursor:pointer;}.bk-root .choices__button:focus{outline:none;}.bk-root .choices__input{display:inline-block;vertical-align:baseline;background-color:#f9f9f9;font-size:14px;margin-bottom:5px;border:0;border-radius:0;max-width:100%;padding:4px 0 4px 2px;}.bk-root .choices__input:focus{outline:0;}.bk-root [dir='rtl'] .choices__input{padding-right:2px;padding-left:0;}.bk-root .choices__placeholder{opacity:0.5;}.bk-root .choices{width:100%;}.bk-root .choices{box-sizing:border-box;}.bk-root .choices *,.bk-root .choices *:before,.bk-root .choices *:after{box-sizing:inherit;}.bk-root .choices__inner .choices__item.light{background-color:rgba(0, 126, 255, 0.08);border-radius:5px;border:1px solid rgba(0, 126, 255, 0.24);color:#007eff;}.bk-root .choices__inner .choices__item.solid{background-color:#1f77b4;border:none;border-radius:5px;color:white;}.bk-root .choices__inner .choices__item.solid .is-highlighted{background-color:#1f77b4;border:none;}.bk-root .choices__input{background-color:transparent;}.bk-root .choices__inner{background:transparent;border:1px solid darkgray;border-radius:5px;min-height:unset;}.bk-root .choices__list{white-space:initial;}.bk-root .choices__list--dropdown{z-index:100;}.bk-root .choices[data-type*=select-multiple] .choices__button.light{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDA3ZWZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);}.bk-root .choices[data-type*=select-multiple] .choices__button.solid{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);border-left:1px solid white;opacity:1;}\"},\n", " 454: function _(e,t,l,i,n){i();const s=e(1),u=s.__importStar(e(183)),h=e(426),o=e(166),a=e(43),r=e(8),d=e(11),p=s.__importStar(e(427)),_=/^[-+]?\\d*$/,m=/^[-+]?\\d*\\.?\\d*(?:(?:\\d|\\d.)[eE][-+]?)*\\d*$/;class c extends h.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,(()=>{var e;return this.input_el.name=null!==(e=this.model.name)&&void 0!==e?e:\"\"})),this.connect(this.model.properties.value.change,(()=>{this.input_el.value=this.format_value,this.old_value=this.input_el.value})),this.connect(this.model.properties.low.change,(()=>{const{value:e,low:t,high:l}=this.model;null!=t&&null!=l&&d.assert(t<=l,\"Invalid bounds, low must be inferior to high\"),null!=e&&null!=t&&(this.model.value=Math.max(e,t))})),this.connect(this.model.properties.high.change,(()=>{const{value:e,low:t,high:l}=this.model;null!=t&&null!=l&&d.assert(l>=t,\"Invalid bounds, high must be superior to low\"),null!=e&&null!=l&&(this.model.value=Math.min(e,l))})),this.connect(this.model.properties.high.change,(()=>this.input_el.placeholder=this.model.placeholder)),this.connect(this.model.properties.disabled.change,(()=>this.input_el.disabled=this.model.disabled)),this.connect(this.model.properties.placeholder.change,(()=>this.input_el.placeholder=this.model.placeholder))}get format_value(){return null!=this.model.value?this.model.pretty(this.model.value):\"\"}_set_input_filter(e){this.input_el.addEventListener(\"input\",(()=>{const{selectionStart:t,selectionEnd:l}=this.input_el;if(e(this.input_el.value))this.old_value=this.input_el.value;else{const e=this.old_value.length-this.input_el.value.length;this.input_el.value=this.old_value,t&&l&&this.input_el.setSelectionRange(t-1,l+e)}}))}render(){super.render(),this.input_el=a.input({type:\"text\",class:p.input,name:this.model.name,value:this.format_value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.old_value=this.format_value,this.set_input_filter(),this.input_el.addEventListener(\"change\",(()=>this.change_input())),this.input_el.addEventListener(\"focusout\",(()=>this.input_el.value=this.format_value)),this.group_el.appendChild(this.input_el)}set_input_filter(){\"int\"==this.model.mode?this._set_input_filter((e=>_.test(e))):\"float\"==this.model.mode&&this._set_input_filter((e=>m.test(e)))}bound_value(e){let t=e;const{low:l,high:i}=this.model;return t=null!=l?Math.max(l,t):t,t=null!=i?Math.min(i,t):t,t}get value(){let e=\"\"!=this.input_el.value?Number(this.input_el.value):null;return null!=e&&(e=this.bound_value(e)),e}change_input(){null==this.value?this.model.value=null:Number.isNaN(this.value)||(this.model.value=this.value)}}l.NumericInputView=c,c.__name__=\"NumericInputView\";class v extends h.InputWidget{constructor(e){super(e)}static init_NumericInput(){this.prototype.default_view=c,this.define((({Number:e,String:t,Enum:l,Ref:i,Or:n,Nullable:s})=>({value:[s(e),null],placeholder:[t,\"\"],mode:[l(\"int\",\"float\"),\"int\"],format:[s(n(t,i(o.TickFormatter))),null],low:[s(e),null],high:[s(e),null]})))}_formatter(e,t){return r.isString(t)?u.format(e,t):t.doFormat([e],{loc:0})[0]}pretty(e){return null!=this.format?this._formatter(e,this.format):`${e}`}}l.NumericInput=v,v.__name__=\"NumericInput\",v.init_NumericInput()},\n", " 455: function _(e,t,r,s,i){s();const n=e(444),_=e(43);class a extends n.MarkupView{render(){super.render();const e=_.pre({style:{overflow:\"auto\"}},this.model.text);this.markup_el.appendChild(e)}}r.PreTextView=a,a.__name__=\"PreTextView\";class o extends n.Markup{constructor(e){super(e)}static init_PreText(){this.prototype.default_view=a}}r.PreText=o,o.__name__=\"PreText\",o.init_PreText()},\n", " 456: function _(t,o,i,e,a){e();const n=t(1),u=t(430),s=t(43),c=n.__importStar(t(328));class _ extends u.ButtonGroupView{change_active(t){this.model.active!==t&&(this.model.active=t)}_update_active(){const{active:t}=this.model;this._buttons.forEach(((o,i)=>{s.classes(o).toggle(c.active,t===i)}))}}i.RadioButtonGroupView=_,_.__name__=\"RadioButtonGroupView\";class r extends u.ButtonGroup{constructor(t){super(t)}static init_RadioButtonGroup(){this.prototype.default_view=_,this.define((({Int:t,Nullable:o})=>({active:[o(t),null]})))}}i.RadioButtonGroup=r,r.__name__=\"RadioButtonGroup\",r.init_RadioButtonGroup()},\n", " 457: function _(e,i,t,n,a){n();const s=e(1),o=e(43),l=e(34),d=e(432),p=s.__importStar(e(427));class u extends d.InputGroupView{render(){super.render();const e=o.div({class:[p.input_group,this.model.inline?p.inline:null]});this.el.appendChild(e);const i=l.uniqueId(),{active:t,labels:n}=this.model;this._inputs=[];for(let a=0;a<n.length;a++){const s=o.input({type:\"radio\",name:i,value:`${a}`});s.addEventListener(\"change\",(()=>this.change_active(a))),this._inputs.push(s),this.model.disabled&&(s.disabled=!0),a==t&&(s.checked=!0);const l=o.label({},s,o.span({},n[a]));e.appendChild(l)}}change_active(e){this.model.active=e}}t.RadioGroupView=u,u.__name__=\"RadioGroupView\";class r extends d.InputGroup{constructor(e){super(e)}static init_RadioGroup(){this.prototype.default_view=u,this.define((({Boolean:e,Int:i,String:t,Array:n,Nullable:a})=>({active:[a(i),null],labels:[n(t),[]],inline:[e,!1]})))}}t.RadioGroup=r,r.__name__=\"RadioGroup\",r.init_RadioGroup()},\n", " 458: function _(e,t,i,r,a){r();const n=e(1).__importStar(e(183)),s=e(438),_=e(8);class d extends s.AbstractRangeSliderView{}i.RangeSliderView=d,d.__name__=\"RangeSliderView\";class o extends s.AbstractSlider{constructor(e){super(e),this.behaviour=\"drag\",this.connected=[!1,!0,!1]}static init_RangeSlider(){this.prototype.default_view=d,this.override({format:\"0[.]00\"})}_formatter(e,t){return _.isString(t)?n.format(e,t):t.compute(e)}}i.RangeSlider=o,o.__name__=\"RangeSlider\",o.init_RangeSlider()},\n", " 459: function _(e,t,n,i,s){i();const l=e(1),u=e(43),a=e(8),o=e(13),_=e(426),p=l.__importStar(e(427));class r extends _.InputWidgetView{constructor(){super(...arguments),this._known_values=new Set}connect_signals(){super.connect_signals();const{value:e,options:t}=this.model.properties;this.on_change(e,(()=>{this._update_value()})),this.on_change(t,(()=>{u.empty(this.input_el),u.append(this.input_el,...this.options_el()),this._update_value()}))}options_el(){const{_known_values:e}=this;function t(t){return t.map((t=>{let n,i;return a.isString(t)?n=i=t:[n,i]=t,e.add(n),u.option({value:n},i)}))}e.clear();const{options:n}=this.model;return a.isArray(n)?t(n):o.entries(n).map((([e,n])=>u.optgroup({label:e},t(n))))}render(){super.render(),this.input_el=u.select({class:p.input,name:this.model.name,disabled:this.model.disabled},this.options_el()),this._update_value(),this.input_el.addEventListener(\"change\",(()=>this.change_input())),this.group_el.appendChild(this.input_el)}change_input(){const e=this.input_el.value;this.model.value=e,super.change_input()}_update_value(){const{value:e}=this.model;this._known_values.has(e)?this.input_el.value=e:this.input_el.removeAttribute(\"value\")}}n.SelectView=r,r.__name__=\"SelectView\";class c extends _.InputWidget{constructor(e){super(e)}static init_Select(){this.prototype.default_view=r,this.define((({String:e,Array:t,Tuple:n,Dict:i,Or:s})=>{const l=t(s(e,n(e,e)));return{value:[e,\"\"],options:[s(l,i(l)),[]]}}))}}n.Select=c,c.__name__=\"Select\",c.init_Select()},\n", " 460: function _(t,e,i,r,s){r();const _=t(1).__importStar(t(183)),a=t(438),n=t(8);class o extends a.AbstractSliderView{}i.SliderView=o,o.__name__=\"SliderView\";class d extends a.AbstractSlider{constructor(t){super(t),this.behaviour=\"tap\",this.connected=[!0,!1]}static init_Slider(){this.prototype.default_view=o,this.override({format:\"0[.]00\"})}_formatter(t,e){return n.isString(e)?_.format(t,e):e.compute(t)}}i.Slider=d,d.__name__=\"Slider\",d.init_Slider()},\n", " 461: function _(e,t,i,n,s){n();const l=e(454),o=e(43),{min:r,max:a,floor:h,abs:_}=Math;function u(e){return h(e)!==e?e.toFixed(16).replace(/0+$/,\"\").split(\".\")[1].length:0}class d extends l.NumericInputView{*buttons(){yield this.btn_up_el,yield this.btn_down_el}initialize(){super.initialize(),this._handles={interval:void 0,timeout:void 0},this._interval=200}connect_signals(){super.connect_signals();const e=this.model.properties;this.on_change(e.disabled,(()=>{for(const e of this.buttons())o.toggle_attribute(e,\"disabled\",this.model.disabled)}))}render(){super.render(),this.wrapper_el=o.div({class:\"bk-spin-wrapper\"}),this.group_el.replaceChild(this.wrapper_el,this.input_el),this.btn_up_el=o.button({class:\"bk-spin-btn bk-spin-btn-up\"}),this.btn_down_el=o.button({class:\"bk-spin-btn bk-spin-btn-down\"}),this.wrapper_el.appendChild(this.input_el),this.wrapper_el.appendChild(this.btn_up_el),this.wrapper_el.appendChild(this.btn_down_el);for(const e of this.buttons())o.toggle_attribute(e,\"disabled\",this.model.disabled),e.addEventListener(\"mousedown\",(e=>this._btn_mouse_down(e))),e.addEventListener(\"mouseup\",(()=>this._btn_mouse_up())),e.addEventListener(\"mouseleave\",(()=>this._btn_mouse_leave()));this.input_el.addEventListener(\"keydown\",(e=>this._input_key_down(e))),this.input_el.addEventListener(\"keyup\",(()=>this.model.value_throttled=this.model.value)),this.input_el.addEventListener(\"wheel\",(e=>this._input_mouse_wheel(e))),this.input_el.addEventListener(\"wheel\",function(e,t,i=!1){let n;return function(...s){const l=this,o=i&&void 0===n;void 0!==n&&clearTimeout(n),n=setTimeout((function(){n=void 0,i||e.apply(l,s)}),t),o&&e.apply(l,s)}}((()=>{this.model.value_throttled=this.model.value}),this.model.wheel_wait,!1))}get precision(){const{low:e,high:t,step:i}=this.model,n=u;return a(n(_(null!=e?e:0)),n(_(null!=t?t:0)),n(_(i)))}remove(){this._stop_incrementation(),super.remove()}_start_incrementation(e){clearInterval(this._handles.interval),this._counter=0;const{step:t}=this.model,i=e=>{if(this._counter+=1,this._counter%5==0){const t=Math.floor(this._counter/5);t<10?(clearInterval(this._handles.interval),this._handles.interval=setInterval((()=>i(e)),this._interval/(t+1))):t>=10&&t<=13&&(clearInterval(this._handles.interval),this._handles.interval=setInterval((()=>i(2*e)),this._interval/10))}this.increment(e)};this._handles.interval=setInterval((()=>i(e*t)),this._interval)}_stop_incrementation(){clearTimeout(this._handles.timeout),this._handles.timeout=void 0,clearInterval(this._handles.interval),this._handles.interval=void 0,this.model.value_throttled=this.model.value}_btn_mouse_down(e){e.preventDefault();const t=e.currentTarget===this.btn_up_el?1:-1;this.increment(t*this.model.step),this.input_el.focus(),this._handles.timeout=setTimeout((()=>this._start_incrementation(t)),this._interval)}_btn_mouse_up(){this._stop_incrementation()}_btn_mouse_leave(){this._stop_incrementation()}_input_mouse_wheel(e){if(document.activeElement===this.input_el){e.preventDefault();const t=e.deltaY>0?-1:1;this.increment(t*this.model.step)}}_input_key_down(e){switch(e.keyCode){case o.Keys.Up:return e.preventDefault(),this.increment(this.model.step);case o.Keys.Down:return e.preventDefault(),this.increment(-this.model.step);case o.Keys.PageUp:return e.preventDefault(),this.increment(this.model.page_step_multiplier*this.model.step);case o.Keys.PageDown:return e.preventDefault(),this.increment(-this.model.page_step_multiplier*this.model.step)}}adjust_to_precision(e){return this.bound_value(Number(e.toFixed(this.precision)))}increment(e){const{low:t,high:i}=this.model;null==this.model.value?e>0?this.model.value=null!=t?t:null!=i?r(0,i):0:e<0&&(this.model.value=null!=i?i:null!=t?a(t,0):0):this.model.value=this.adjust_to_precision(this.model.value+e)}change_input(){super.change_input(),this.model.value_throttled=this.model.value}}i.SpinnerView=d,d.__name__=\"SpinnerView\";class p extends l.NumericInput{constructor(e){super(e)}static init_Spinner(){this.prototype.default_view=d,this.define((({Number:e,Nullable:t})=>({value_throttled:[t(e),null],step:[e,1],page_step_multiplier:[e,10],wheel_wait:[e,100]}))),this.override({mode:\"float\"})}}i.Spinner=p,p.__name__=\"Spinner\",p.init_Spinner()},\n", " 462: function _(e,t,s,n,i){n();const r=e(1),o=e(425),p=e(43),c=r.__importStar(e(427));class l extends o.TextLikeInputView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.rows.change,(()=>this.input_el.rows=this.model.rows)),this.connect(this.model.properties.cols.change,(()=>this.input_el.cols=this.model.cols))}_render_input(){this.input_el=p.textarea({class:c.input})}render(){super.render(),this.input_el.cols=this.model.cols,this.input_el.rows=this.model.rows}}s.TextAreaInputView=l,l.__name__=\"TextAreaInputView\";class _ extends o.TextLikeInput{constructor(e){super(e)}static init_TextAreaInput(){this.prototype.default_view=l,this.define((({Int:e})=>({cols:[e,20],rows:[e,2]}))),this.override({max_length:500})}}s.TextAreaInput=_,_.__name__=\"TextAreaInput\",_.init_TextAreaInput()},\n", " 463: function _(e,t,i,s,c){s();const o=e(1),a=e(419),n=e(43),l=o.__importStar(e(328));class _ extends a.AbstractButtonView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,(()=>this._update_active()))}render(){super.render(),this._update_active()}click(){this.model.active=!this.model.active,super.click()}_update_active(){n.classes(this.button_el).toggle(l.active,this.model.active)}}i.ToggleView=_,_.__name__=\"ToggleView\";class g extends a.AbstractButton{constructor(e){super(e)}static init_Toggle(){this.prototype.default_view=_,this.define((({Boolean:e})=>({active:[e,!1]}))),this.override({label:\"Toggle\"})}}i.Toggle=g,g.__name__=\"Toggle\",g.init_Toggle()},\n", " }, 417, {\"models/widgets/main\":417,\"models/widgets/index\":418,\"models/widgets/abstract_button\":419,\"models/widgets/control\":420,\"models/widgets/widget\":488,\"models/widgets/abstract_icon\":422,\"models/widgets/autocomplete_input\":423,\"models/widgets/text_input\":424,\"models/widgets/text_like_input\":425,\"models/widgets/input_widget\":426,\"styles/widgets/inputs.css\":427,\"models/widgets/button\":428,\"models/widgets/checkbox_button_group\":429,\"models/widgets/button_group\":430,\"models/widgets/checkbox_group\":431,\"models/widgets/input_group\":432,\"models/widgets/color_picker\":433,\"models/widgets/date_picker\":434,\"styles/widgets/flatpickr.css\":436,\"models/widgets/date_range_slider\":437,\"models/widgets/abstract_slider\":438,\"styles/widgets/sliders.css\":440,\"styles/widgets/nouislider.css\":441,\"models/widgets/date_slider\":442,\"models/widgets/div\":443,\"models/widgets/markup\":444,\"styles/clearfix.css\":445,\"models/widgets/dropdown\":446,\"models/widgets/file_input\":447,\"models/widgets/multiselect\":448,\"models/widgets/paragraph\":449,\"models/widgets/password_input\":450,\"models/widgets/multichoice\":451,\"styles/widgets/choices.css\":453,\"models/widgets/numeric_input\":454,\"models/widgets/pretext\":455,\"models/widgets/radio_button_group\":456,\"models/widgets/radio_group\":457,\"models/widgets/range_slider\":458,\"models/widgets/selectbox\":459,\"models/widgets/slider\":460,\"models/widgets/spinner\":461,\"models/widgets/textarea_input\":462,\"models/widgets/toggle\":463}, {});});\n", "\n", " /* END bokeh-widgets.min.js */\n", " },\n", " \n", " function(Bokeh) {\n", " /* BEGIN bokeh-tables.min.js */\n", " /*!\n", " * Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors\n", " * All rights reserved.\n", " * \n", " * Redistribution and use in source and binary forms, with or without modification,\n", " * are permitted provided that the following conditions are met:\n", " * \n", " * Redistributions of source code must retain the above copyright notice,\n", " * this list of conditions and the following disclaimer.\n", " * \n", " * Redistributions in binary form must reproduce the above copyright notice,\n", " * this list of conditions and the following disclaimer in the documentation\n", " * and/or other materials provided with the distribution.\n", " * \n", " * Neither the name of Anaconda nor the names of any contributors\n", " * may be used to endorse or promote products derived from this software\n", " * without specific prior written permission.\n", " * \n", " * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n", " * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n", " * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n", " * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n", " * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n", " * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n", " * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n", " * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n", " * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n", " * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n", " * THE POSSIBILITY OF SUCH DAMAGE.\n", " */\n", " (function(root, factory) {\n", " factory(root[\"Bokeh\"], \"2.3.3\");\n", " })(this, function(Bokeh, version) {\n", " var define;\n", " return (function(modules, entry, aliases, externals) {\n", " const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n", " if (bokeh != null) {\n", " return bokeh.register_plugin(modules, entry, aliases);\n", " } else {\n", " throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n", " }\n", " })\n", " ({\n", " 464: function _(t,e,o,r,s){r();const _=t(1).__importStar(t(465));o.Tables=_;t(7).register_models(_)},\n", " 465: function _(g,a,r,e,t){e();const o=g(1);o.__exportStar(g(466),r),o.__exportStar(g(469),r),t(\"DataTable\",g(472).DataTable),t(\"TableColumn\",g(490).TableColumn),t(\"TableWidget\",g(489).TableWidget);var n=g(492);t(\"AvgAggregator\",n.AvgAggregator),t(\"MinAggregator\",n.MinAggregator),t(\"MaxAggregator\",n.MaxAggregator),t(\"SumAggregator\",n.SumAggregator);var A=g(493);t(\"GroupingInfo\",A.GroupingInfo),t(\"DataCube\",A.DataCube)},\n", " 466: function _(e,t,i,s,r){s();const a=e(1),n=e(43),l=e(240),u=e(53),d=e(467),o=a.__importStar(e(468));class _ extends l.DOMView{constructor(e){const{model:t,parent:i}=e.column;super(Object.assign({model:t,parent:i},e)),this.args=e,this.initialize(),this.render()}get emptyValue(){return null}initialize(){super.initialize(),this.inputEl=this._createInput(),this.defaultValue=null}async lazy_initialize(){throw new Error(\"unsupported\")}css_classes(){return super.css_classes().concat(o.cell_editor)}render(){super.render(),this.args.container.append(this.el),this.el.appendChild(this.inputEl),this.renderEditor(),this.disableNavigation()}renderEditor(){}disableNavigation(){this.inputEl.addEventListener(\"keydown\",(e=>{switch(e.keyCode){case n.Keys.Left:case n.Keys.Right:case n.Keys.Up:case n.Keys.Down:case n.Keys.PageUp:case n.Keys.PageDown:e.stopImmediatePropagation()}}))}destroy(){this.remove()}focus(){this.inputEl.focus()}show(){}hide(){}position(){}getValue(){return this.inputEl.value}setValue(e){this.inputEl.value=e}serializeValue(){return this.getValue()}isValueChanged(){return!(\"\"==this.getValue()&&null==this.defaultValue)&&this.getValue()!==this.defaultValue}applyValue(e,t){const i=this.args.grid.getData(),s=i.index.indexOf(e[d.DTINDEX_NAME]);i.setField(s,this.args.column.field,t)}loadValue(e){const t=e[this.args.column.field];this.defaultValue=null!=t?t:this.emptyValue,this.setValue(this.defaultValue)}validateValue(e){if(this.args.column.validator){const t=this.args.column.validator(e);if(!t.valid)return t}return{valid:!0,msg:null}}validate(){return this.validateValue(this.getValue())}}i.CellEditorView=_,_.__name__=\"CellEditorView\";class c extends u.Model{}i.CellEditor=c,c.__name__=\"CellEditor\";class p extends _{get emptyValue(){return\"\"}_createInput(){return n.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}}i.StringEditorView=p,p.__name__=\"StringEditorView\";class h extends c{static init_StringEditor(){this.prototype.default_view=p,this.define((({String:e,Array:t})=>({completions:[t(e),[]]})))}}i.StringEditor=h,h.__name__=\"StringEditor\",h.init_StringEditor();class E extends _{_createInput(){return n.textarea()}renderEditor(){this.inputEl.focus(),this.inputEl.select()}}i.TextEditorView=E,E.__name__=\"TextEditorView\";class V extends c{static init_TextEditor(){this.prototype.default_view=E}}i.TextEditor=V,V.__name__=\"TextEditor\",V.init_TextEditor();class m extends _{_createInput(){return n.select()}renderEditor(){for(const e of this.model.options)this.inputEl.appendChild(n.option({value:e},e));this.focus()}}i.SelectEditorView=m,m.__name__=\"SelectEditorView\";class f extends c{static init_SelectEditor(){this.prototype.default_view=m,this.define((({String:e,Array:t})=>({options:[t(e),[]]})))}}i.SelectEditor=f,f.__name__=\"SelectEditor\",f.init_SelectEditor();class x extends _{_createInput(){return n.input({type:\"text\"})}}i.PercentEditorView=x,x.__name__=\"PercentEditorView\";class g extends c{static init_PercentEditor(){this.prototype.default_view=x}}i.PercentEditor=g,g.__name__=\"PercentEditor\",g.init_PercentEditor();class w extends _{_createInput(){return n.input({type:\"checkbox\"})}renderEditor(){this.focus()}loadValue(e){this.defaultValue=!!e[this.args.column.field],this.inputEl.checked=this.defaultValue}serializeValue(){return this.inputEl.checked}}i.CheckboxEditorView=w,w.__name__=\"CheckboxEditorView\";class v extends c{static init_CheckboxEditor(){this.prototype.default_view=w}}i.CheckboxEditor=v,v.__name__=\"CheckboxEditor\",v.init_CheckboxEditor();class y extends _{_createInput(){return n.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}remove(){super.remove()}serializeValue(){var e;return null!==(e=parseInt(this.getValue(),10))&&void 0!==e?e:0}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}validateValue(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid integer\"}:super.validateValue(e)}}i.IntEditorView=y,y.__name__=\"IntEditorView\";class I extends c{static init_IntEditor(){this.prototype.default_view=y,this.define((({Int:e})=>({step:[e,1]})))}}i.IntEditor=I,I.__name__=\"IntEditor\",I.init_IntEditor();class b extends _{_createInput(){return n.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}remove(){super.remove()}serializeValue(){var e;return null!==(e=parseFloat(this.getValue()))&&void 0!==e?e:0}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}validateValue(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid number\"}:super.validateValue(e)}}i.NumberEditorView=b,b.__name__=\"NumberEditorView\";class N extends c{static init_NumberEditor(){this.prototype.default_view=b,this.define((({Number:e})=>({step:[e,.01]})))}}i.NumberEditor=N,N.__name__=\"NumberEditor\",N.init_NumberEditor();class S extends _{_createInput(){return n.input({type:\"text\"})}}i.TimeEditorView=S,S.__name__=\"TimeEditorView\";class C extends c{static init_TimeEditor(){this.prototype.default_view=S}}i.TimeEditor=C,C.__name__=\"TimeEditor\",C.init_TimeEditor();class D extends _{_createInput(){return n.input({type:\"text\"})}get emptyValue(){return new Date}renderEditor(){this.inputEl.focus(),this.inputEl.select()}destroy(){super.destroy()}show(){super.show()}hide(){super.hide()}position(){return super.position()}getValue(){}setValue(e){}}i.DateEditorView=D,D.__name__=\"DateEditorView\";class T extends c{static init_DateEditor(){this.prototype.default_view=D}}i.DateEditor=T,T.__name__=\"DateEditor\",T.init_DateEditor()},\n", " 467: function _(_,n,i,t,d){t(),i.DTINDEX_NAME=\"__bkdt_internal_index__\"},\n", " 468: function _(e,l,o,t,r){t(),o.root=\"bk-root\",o.data_table=\"bk-data-table\",o.cell_special_defaults=\"bk-cell-special-defaults\",o.cell_select=\"bk-cell-select\",o.cell_index=\"bk-cell-index\",o.header_index=\"bk-header-index\",o.cell_editor=\"bk-cell-editor\",o.cell_editor_completion=\"bk-cell-editor-completion\",o.default='.bk-root .bk-data-table{box-sizing:content-box;font-size:11px;}.bk-root .bk-data-table input[type=\"checkbox\"]{margin-left:4px;margin-right:4px;}.bk-root .bk-cell-special-defaults{border-right-color:silver;border-right-style:solid;background:#f5f5f5;}.bk-root .bk-cell-select{border-right-color:silver;border-right-style:solid;background:#f5f5f5;}.bk-root .slick-cell.bk-cell-index{border-right-color:silver;border-right-style:solid;background:#f5f5f5;text-align:right;background:#f0f0f0;color:#909090;}.bk-root .bk-header-index .slick-column-name{float:right;}.bk-root .slick-row.selected .bk-cell-index{background-color:transparent;}.bk-root .slick-row.odd{background:#f0f0f0;}.bk-root .slick-cell{padding-left:4px;padding-right:4px;border-right-color:transparent;border:0.25px solid transparent;}.bk-root .slick-cell .bk{line-height:inherit;}.bk-root .slick-cell.active{border-style:dashed;}.bk-root .slick-cell.selected{background-color:#F0F8FF;}.bk-root .slick-cell.editable{padding-left:0;padding-right:0;}.bk-root .bk-cell-editor{display:contents;}.bk-root .bk-cell-editor input,.bk-root .bk-cell-editor select{width:100%;height:100%;border:0;margin:0;padding:0;outline:0;background:transparent;vertical-align:baseline;}.bk-root .bk-cell-editor input{padding-left:4px;padding-right:4px;}.bk-root .bk-cell-editor-completion{font-size:11px;}'},\n", " 469: function _(t,e,r,a,n){a();const i=t(1),o=i.__importDefault(t(181)),s=i.__importStar(t(183)),l=t(470),c=t(43),m=t(20),u=t(8),_=t(34),F=t(22),d=t(53);class f extends d.Model{constructor(t){super(t)}doFormat(t,e,r,a,n){return null==r?\"\":(r+\"\").replace(/&/g,\"&\").replace(/</g,\"<\").replace(/>/g,\">\")}}r.CellFormatter=f,f.__name__=\"CellFormatter\";class h extends f{constructor(t){super(t)}static init_StringFormatter(){this.define((({Color:t,Nullable:e})=>({font_style:[m.FontStyle,\"normal\"],text_align:[m.TextAlign,\"left\"],text_color:[e(t),null]})))}doFormat(t,e,r,a,n){const{font_style:i,text_align:o,text_color:s}=this,l=c.div({},null==r?\"\":`${r}`);switch(i){case\"bold\":l.style.fontWeight=\"bold\";break;case\"italic\":l.style.fontStyle=\"italic\"}return null!=o&&(l.style.textAlign=o),null!=s&&(l.style.color=F.color2css(s)),l.outerHTML}}r.StringFormatter=h,h.__name__=\"StringFormatter\",h.init_StringFormatter();class g extends h{constructor(t){super(t)}static init_ScientificFormatter(){this.define((({Number:t,String:e,Nullable:r})=>({nan_format:[r(e),null],precision:[t,10],power_limit_high:[t,5],power_limit_low:[t,-3]})))}get scientific_limit_low(){return 10**this.power_limit_low}get scientific_limit_high(){return 10**this.power_limit_high}doFormat(t,e,r,a,n){const i=Math.abs(r)<=this.scientific_limit_low||Math.abs(r)>=this.scientific_limit_high;let o=this.precision;return o<1&&(o=1),r=null!=r&&!isNaN(r)||null==this.nan_format?0==r?_.to_fixed(r,1):i?r.toExponential(o):_.to_fixed(r,o):this.nan_format,super.doFormat(t,e,r,a,n)}}r.ScientificFormatter=g,g.__name__=\"ScientificFormatter\",g.init_ScientificFormatter();class p extends h{constructor(t){super(t)}static init_NumberFormatter(){this.define((({String:t,Nullable:e})=>({format:[t,\"0,0\"],language:[t,\"en\"],rounding:[m.RoundingFunction,\"round\"],nan_format:[e(t),null]})))}doFormat(t,e,r,a,n){const{format:i,language:o,nan_format:l}=this,c=(()=>{switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}})();return r=null!=r&&!isNaN(r)||null==l?s.format(r,i,o,c):l,super.doFormat(t,e,r,a,n)}}r.NumberFormatter=p,p.__name__=\"NumberFormatter\",p.init_NumberFormatter();class S extends f{constructor(t){super(t)}static init_BooleanFormatter(){this.define((({String:t})=>({icon:[t,\"check\"]})))}doFormat(t,e,r,a,n){return r?c.i({class:this.icon}).outerHTML:\"\"}}r.BooleanFormatter=S,S.__name__=\"BooleanFormatter\",S.init_BooleanFormatter();class b extends h{constructor(t){super(t)}static init_DateFormatter(){this.define((({String:t,Nullable:e})=>({format:[t,\"ISO-8601\"],nan_format:[e(t),null]})))}getFormat(){switch(this.format){case\"ATOM\":case\"W3C\":case\"RFC-3339\":case\"ISO-8601\":return\"%Y-%m-%d\";case\"COOKIE\":return\"%a, %d %b %Y\";case\"RFC-850\":return\"%A, %d-%b-%y\";case\"RFC-1123\":case\"RFC-2822\":return\"%a, %e %b %Y\";case\"RSS\":case\"RFC-822\":case\"RFC-1036\":return\"%a, %e %b %y\";case\"TIMESTAMP\":return;default:return this.format}}doFormat(t,e,r,a,n){const{nan_format:i}=this;let s;return s=null!=(r=u.isString(r)?parseInt(r,10):r)&&!isNaN(r)&&-9223372036854776!==r||null==i?null==r?\"\":o.default(r,this.getFormat()):i,super.doFormat(t,e,s,a,n)}}r.DateFormatter=b,b.__name__=\"DateFormatter\",b.init_DateFormatter();class x extends f{constructor(t){super(t)}static init_HTMLTemplateFormatter(){this.define((({String:t})=>({template:[t,\"<%= value %>\"]})))}doFormat(t,e,r,a,n){const{template:i}=this;if(null==r)return\"\";return l._.template(i)(Object.assign(Object.assign({},n),{value:r}))}}r.HTMLTemplateFormatter=x,x.__name__=\"HTMLTemplateFormatter\",x.init_HTMLTemplateFormatter()},\n", " 470: function _(e,n,t,f,i){var o=e(471),d=o.template;function r(e,n,t){return d(e,n,t)}r._=o,n.exports=r,\"function\"==typeof define&&define.amd?define((function(){return r})):\"undefined\"==typeof window&&\"undefined\"==typeof navigator||(window.UnderscoreTemplate=r)},\n", " 471: function _(r,e,n,t,a){\n", " // (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n", " // Underscore may be freely distributed under the MIT license.\n", " var u={},c=Array.prototype,o=Object.prototype,l=c.slice,i=o.toString,f=o.hasOwnProperty,s=c.forEach,p=Object.keys,_=Array.isArray,h=function(){},v=h.each=h.forEach=function(r,e,n){if(null!=r)if(s&&r.forEach===s)r.forEach(e,n);else if(r.length===+r.length){for(var t=0,a=r.length;t<a;t++)if(e.call(n,r[t],t,r)===u)return}else{var c=h.keys(r);for(t=0,a=c.length;t<a;t++)if(e.call(n,r[c[t]],c[t],r)===u)return}};h.keys=p||function(r){if(r!==Object(r))throw new TypeError(\"Invalid object\");var e=[];for(var n in r)h.has(r,n)&&e.push(n);return e},h.defaults=function(r){return v(l.call(arguments,1),(function(e){if(e)for(var n in e)void 0===r[n]&&(r[n]=e[n])})),r},h.isArray=_||function(r){return\"[object Array]\"===i.call(r)},h.has=function(r,e){if(!h.isArray(e))return null!=r&&f.call(r,e);for(var n=e.length,t=0;t<n;t++){var a=e[t];if(null==r||!f.call(r,a))return!1;r=r[a]}return!!n};var g={escape:{\"&\":\"&\",\"<\":\"<\",\">\":\">\",'\"':\""\",\"'\":\"'\"}},y={escape:new RegExp(\"[\"+h.keys(g.escape).join(\"\")+\"]\",\"g\")};h.each([\"escape\"],(function(r){h[r]=function(e){return null==e?\"\":(\"\"+e).replace(y[r],(function(e){return g[r][e]}))}})),h.templateSettings={evaluate:/<%([\\s\\S]+?)%>/g,interpolate:/<%=([\\s\\S]+?)%>/g,escape:/<%-([\\s\\S]+?)%>/g};var j=/(.)^/,b={\"'\":\"'\",\"\\\\\":\"\\\\\",\"\\r\":\"r\",\"\\n\":\"n\",\"\\t\":\"t\",\"\\u2028\":\"u2028\",\"\\u2029\":\"u2029\"},w=/\\\\|'|\\r|\\n|\\t|\\u2028|\\u2029/g;h.template=function(r,e,n){var t;n=h.defaults({},n,h.templateSettings);var a=new RegExp([(n.escape||j).source,(n.interpolate||j).source,(n.evaluate||j).source].join(\"|\")+\"|$\",\"g\"),u=0,c=\"__p+='\";r.replace(a,(function(e,n,t,a,o){return c+=r.slice(u,o).replace(w,(function(r){return\"\\\\\"+b[r]})),n&&(c+=\"'+\\n((__t=(\"+n+\"))==null?'':_.escape(__t))+\\n'\"),t&&(c+=\"'+\\n((__t=(\"+t+\"))==null?'':__t)+\\n'\"),a&&(c+=\"';\\n\"+a+\"\\n__p+='\"),u=o+e.length,e})),c+=\"';\\n\",n.variable||(c=\"with(obj||{}){\\n\"+c+\"}\\n\"),c=\"var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\\n\"+c+\"return __p;\\n\";try{t=new Function(n.variable||\"obj\",\"_\",c)}catch(r){throw r.source=c,r}if(e)return t(e,h);var o=function(r){return t.call(this,r,h)};return o.source=\"function(\"+(n.variable||\"obj\")+\"){\\n\"+c+\"}\",o},e.exports=h},\n", " 472: function _(e,t,i,s,o){s();const n=e(1),l=e(473),r=e(477),d=e(478),a=e(479),h=e(34),u=e(8),c=e(9),_=e(13),m=e(19),g=e(488),p=e(467),f=e(489),b=e(490),w=n.__importStar(e(468)),x=w,C=n.__importDefault(e(491));i.AutosizeModes={fit_columns:\"FCV\",fit_viewport:\"FVC\",force_fit:\"LFF\",none:\"NOA\"};let z=!1;class v{constructor(e,t){this.init(e,t)}init(e,t){if(p.DTINDEX_NAME in e.data)throw new Error(`special name ${p.DTINDEX_NAME} cannot be used as a data table column`);this.source=e,this.view=t,this.index=[...this.view.indices]}getLength(){return this.index.length}getItem(e){const t={};for(const i of _.keys(this.source.data))t[i]=this.source.data[i][this.index[e]];return t[p.DTINDEX_NAME]=this.index[e],t}getField(e,t){return t==p.DTINDEX_NAME?this.index[e]:this.source.data[t][this.index[e]]}setField(e,t,i){const s=this.index[e];this.source.patch({[t]:[[s,i]]})}getRecords(){return c.range(0,this.getLength()).map((e=>this.getItem(e)))}getItems(){return this.getRecords()}slice(e,t,i){return e=null!=e?e:0,t=null!=t?t:this.getLength(),i=null!=i?i:1,c.range(e,t,i).map((e=>this.getItem(e)))}sort(e){let t=e.map((e=>[e.sortCol.field,e.sortAsc?1:-1]));0==t.length&&(t=[[p.DTINDEX_NAME,1]]);const i=this.getRecords(),s=this.index.slice();this.index.sort(((e,o)=>{for(const[n,l]of t){const t=i[s.indexOf(e)][n],r=i[s.indexOf(o)][n];if(t!==r)return u.isNumber(t)&&u.isNumber(r)?l*(t-r||+isNaN(t)-+isNaN(r)):`${t}`>`${r}`?l:-l}return 0}))}}i.TableDataProvider=v,v.__name__=\"TableDataProvider\";class A extends g.WidgetView{constructor(){super(...arguments),this._in_selection_update=!1,this._width=null}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.render())),this.connect(this.model.source.streaming,(()=>this.updateGrid())),this.connect(this.model.source.patching,(()=>this.updateGrid())),this.connect(this.model.source.change,(()=>this.updateGrid())),this.connect(this.model.source.properties.data.change,(()=>this.updateGrid())),this.connect(this.model.source.selected.change,(()=>this.updateSelection())),this.connect(this.model.source.selected.properties.indices.change,(()=>this.updateSelection()))}remove(){var e;null===(e=this.grid)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),C.default,w.default]}update_position(){super.update_position(),this.grid.resizeCanvas()}after_layout(){super.after_layout(),this.updateLayout(!0,!1)}box_sizing(){const e=super.box_sizing();return\"fit_viewport\"===this.model.autosize_mode&&null!=this._width&&(e.width=this._width),e}updateLayout(e,t){const s=this.autosize;s===i.AutosizeModes.fit_columns||s===i.AutosizeModes.force_fit?(e||this.grid.resizeCanvas(),this.grid.autosizeColumns()):e&&t&&s===i.AutosizeModes.fit_viewport&&this.invalidate_layout()}updateGrid(){if(this.model.view.compute_indices(),this.data.init(this.model.source,this.model.view),this.model.sortable){const e=this.grid.getColumns(),t=this.grid.getSortColumns().map((t=>({sortCol:{field:e[this.grid.getColumnIndex(t.columnId)].field},sortAsc:t.sortAsc})));this.data.sort(t)}this.grid.invalidate(),this.updateLayout(!0,!0)}updateSelection(){if(this._in_selection_update)return;const{selected:e}=this.model.source,t=e.indices.map((e=>this.data.index.indexOf(e))).sort();this._in_selection_update=!0,this.grid.setSelectedRows(t),this._in_selection_update=!1;const i=this.grid.getViewport(),s=this.model.get_scroll_index(i,t);null!=s&&this.grid.scrollRowToTop(s)}newIndexColumn(){return{id:h.uniqueId(),name:this.model.index_header,field:p.DTINDEX_NAME,width:this.model.index_width,behavior:\"select\",cannotTriggerInsert:!0,resizable:!1,selectable:!1,sortable:!0,cssClass:x.cell_index,headerCssClass:x.header_index}}css_classes(){return super.css_classes().concat(x.data_table)}get autosize(){let e;return e=!0===this.model.fit_columns?i.AutosizeModes.force_fit:!1===this.model.fit_columns?i.AutosizeModes.none:i.AutosizeModes[this.model.autosize_mode],e}render(){var e;const t=this.model.columns.map((e=>Object.assign(Object.assign({},e.toColumn()),{parent:this})));let s=null;if(\"checkbox\"==this.model.selectable&&(s=new r.CheckboxSelectColumn({cssClass:x.cell_select}),t.unshift(s.getColumnDefinition())),null!=this.model.index_position){const e=this.model.index_position,i=this.newIndexColumn();-1==e?t.push(i):e<-1?t.splice(e+1,0,i):t.splice(e,0,i)}let{reorderable:o}=this.model;!o||\"undefined\"!=typeof $&&null!=$.fn&&null!=$.fn.sortable||(z||(m.logger.warn(\"jquery-ui is required to enable DataTable.reorderable\"),z=!0),o=!1);let n=-1,h=!1;const{frozen_rows:c,frozen_columns:_}=this.model,g=null==_?-1:_-1;null!=c&&(h=c<0,n=Math.abs(c));const p={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:o,autosizeColsMode:this.autosize,multiColumnSort:this.model.sortable,editable:this.model.editable,autoEdit:this.model.auto_edit,autoHeight:!1,rowHeight:this.model.row_height,frozenColumn:g,frozenRow:n,frozenBottom:h},f=null!=this.grid;if(this.data=new v(this.model.source,this.model.view),this.grid=new a.Grid(this.el,this.data,t,p),this.autosize==i.AutosizeModes.fit_viewport){this.grid.autosizeColumns();let i=0;for(const s of t)i+=null!==(e=s.width)&&void 0!==e?e:0;this._width=Math.ceil(i)}if(this.grid.onSort.subscribe(((e,t)=>{if(!this.model.sortable)return;const i=t.sortCols;null!=i&&(this.data.sort(i),this.grid.invalidate(),this.updateSelection(),this.grid.render(),this.model.header_row||this._hide_header(),this.model.update_sort_columns(i))})),!1!==this.model.selectable){this.grid.setSelectionModel(new l.RowSelectionModel({selectActiveRow:null==s})),null!=s&&this.grid.registerPlugin(s);const e={dataItemColumnValueExtractor(e,t){let i=e[t.field];return u.isString(i)&&(i=i.replace(/\\n/g,\"\\\\n\")),i},includeHeaderWhenCopying:!1};this.grid.registerPlugin(new d.CellExternalCopyManager(e)),this.grid.onSelectedRowsChanged.subscribe(((e,t)=>{this._in_selection_update||(this.model.source.selected.indices=t.rows.map((e=>this.data.index[e])))})),this.updateSelection(),this.model.header_row||this._hide_header()}f&&this.updateLayout(f,!1)}_hide_header(){for(const e of this.el.querySelectorAll(\".slick-header-columns\"))e.style.height=\"0px\";this.grid.resizeCanvas()}}i.DataTableView=A,A.__name__=\"DataTableView\";class D extends f.TableWidget{constructor(e){super(e),this._sort_columns=[]}get sort_columns(){return this._sort_columns}static init_DataTable(){this.prototype.default_view=A,this.define((({Array:e,Boolean:t,Int:i,Ref:s,String:o,Enum:n,Or:l,Nullable:r})=>({autosize_mode:[n(\"fit_columns\",\"fit_viewport\",\"none\",\"force_fit\"),\"force_fit\"],auto_edit:[t,!1],columns:[e(s(b.TableColumn)),[]],fit_columns:[r(t),null],frozen_columns:[r(i),null],frozen_rows:[r(i),null],sortable:[t,!0],reorderable:[t,!0],editable:[t,!1],selectable:[l(t,n(\"checkbox\")),!0],index_position:[r(i),0],index_header:[o,\"#\"],index_width:[i,40],scroll_to_selection:[t,!0],header_row:[t,!0],row_height:[i,25]}))),this.override({width:600,height:400})}update_sort_columns(e){this._sort_columns=e.map((({sortCol:e,sortAsc:t})=>({field:e.field,sortAsc:t})))}get_scroll_index(e,t){return this.scroll_to_selection&&0!=t.length?c.some(t,(t=>e.top<=t&&t<=e.bottom))?null:Math.max(0,Math.min(...t)-1):null}}i.DataTable=D,D.__name__=\"DataTable\",D.init_DataTable()},\n", " 473: function _(e,t,n,o,r){var l=e(474),i=e(476);t.exports={RowSelectionModel:function(e){var t,n,o,r=[],c=this,u=new i.EventHandler,s={selectActiveRow:!0};function a(e){return function(){n||(n=!0,e.apply(this,arguments),n=!1)}}function f(e){for(var t=[],n=0;n<e.length;n++)for(var o=e[n].fromRow;o<=e[n].toRow;o++)t.push(o);return t}function h(e){for(var n=[],o=t.getColumns().length-1,r=0;r<e.length;r++)n.push(new i.Range(e[r],0,e[r],o));return n}function w(){return f(r)}function g(e){(r&&0!==r.length||e&&0!==e.length)&&(r=e,c.onSelectedRangesChanged.notify(r))}function v(e,n){o.selectActiveRow&&null!=n.row&&g([new i.Range(n.row,0,n.row,t.getColumns().length-1)])}function p(e){var n=t.getActiveCell();if(t.getOptions().multiSelect&&n&&e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&(e.which==i.keyCode.UP||e.which==i.keyCode.DOWN)){var o=w();o.sort((function(e,t){return e-t})),o.length||(o=[n.row]);var r,l=o[0],c=o[o.length-1];if((r=e.which==i.keyCode.DOWN?n.row<c||l==c?++c:++l:n.row<c?--c:--l)>=0&&r<t.getDataLength())t.scrollRowIntoView(r),g(h(function(e,t){var n,o=[];for(n=e;n<=t;n++)o.push(n);for(n=t;n<e;n++)o.push(n);return o}(l,c)));e.preventDefault(),e.stopPropagation()}}function y(e){var n=t.getCellFromEvent(e);if(!n||!t.canCellBeActive(n.row,n.cell))return!1;if(!t.getOptions().multiSelect||!e.ctrlKey&&!e.shiftKey&&!e.metaKey)return!1;var o=f(r),i=l.inArray(n.row,o);if(-1===i&&(e.ctrlKey||e.metaKey))o.push(n.row),t.setActiveCell(n.row,n.cell);else if(-1!==i&&(e.ctrlKey||e.metaKey))o=l.grep(o,(function(e,t){return e!==n.row})),t.setActiveCell(n.row,n.cell);else if(o.length&&e.shiftKey){var c=o.pop(),u=Math.min(n.row,c),s=Math.max(n.row,c);o=[];for(var a=u;a<=s;a++)a!==c&&o.push(a);o.push(c),t.setActiveCell(n.row,n.cell)}return g(h(o)),e.stopImmediatePropagation(),!0}l.extend(this,{getSelectedRows:w,setSelectedRows:function(e){g(h(e))},getSelectedRanges:function(){return r},setSelectedRanges:g,init:function(n){o=l.extend(!0,{},s,e),t=n,u.subscribe(t.onActiveCellChanged,a(v)),u.subscribe(t.onKeyDown,a(p)),u.subscribe(t.onClick,a(y))},destroy:function(){u.unsubscribeAll()},pluginName:\"RowSelectionModel\",onSelectedRangesChanged:new i.Event})}}},\n", " 474: function _(e,n,f,o,t){n.exports=\"undefined\"!=typeof $?$:e(475)},\n", " 475: function _(e,t,n,r,i){\n", " /*!\n", " * jQuery JavaScript Library v3.5.1\n", " * https://jquery.com/\n", " *\n", " * Includes Sizzle.js\n", " * https://sizzlejs.com/\n", " *\n", " * Copyright JS Foundation and other contributors\n", " * Released under the MIT license\n", " * https://jquery.org/license\n", " *\n", " * Date: 2020-05-04T22:49Z\n", " */\n", " !function(e,n){\"use strict\";\"object\"==typeof t&&\"object\"==typeof t.exports?t.exports=e.document?n(e,!0):function(e){if(!e.document)throw new Error(\"jQuery requires a window with a document\");return n(e)}:n(e)}(\"undefined\"!=typeof window?window:this,(function(e,t){\"use strict\";var n=[],r=Object.getPrototypeOf,i=n.slice,o=n.flat?function(e){return n.flat.call(e)}:function(e){return n.concat.apply([],e)},a=n.push,s=n.indexOf,u={},l=u.toString,c=u.hasOwnProperty,f=c.toString,p=f.call(Object),d={},h=function(e){return\"function\"==typeof e&&\"number\"!=typeof e.nodeType},g=function(e){return null!=e&&e===e.window},v=e.document,y={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||v).createElement(\"script\");if(o.text=e,t)for(r in y)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+\"\":\"object\"==typeof e||\"function\"==typeof e?u[l.call(e)]||\"object\":typeof e}var b=\"3.5.1\",w=function(e,t){return new w.fn.init(e,t)};function T(e){var t=!!e&&\"length\"in e&&e.length,n=x(e);return!h(e)&&!g(e)&&(\"array\"===n||0===t||\"number\"==typeof t&&t>0&&t-1 in e)}w.fn=w.prototype={jquery:b,constructor:w,length:0,toArray:function(){return i.call(this)},get:function(e){return null==e?i.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=w.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return w.each(this,e)},map:function(e){return this.pushStack(w.map(this,(function(t,n){return e.call(t,n,t)})))},slice:function(){return this.pushStack(i.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(w.grep(this,(function(e,t){return(t+1)%2})))},odd:function(){return this.pushStack(w.grep(this,(function(e,t){return t%2})))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:n.sort,splice:n.splice},w.extend=w.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for(\"boolean\"==typeof a&&(l=a,a=arguments[s]||{},s++),\"object\"==typeof a||h(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],\"__proto__\"!==t&&a!==r&&(l&&r&&(w.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||w.isPlainObject(n)?n:{},i=!1,a[t]=w.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},w.extend({expando:\"jQuery\"+(b+Math.random()).replace(/\\D/g,\"\"),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||\"[object Object]\"!==l.call(e))&&(!(t=r(e))||\"function\"==typeof(n=c.call(t,\"constructor\")&&t.constructor)&&f.call(n)===p)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){m(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(T(e))for(n=e.length;r<n&&!1!==t.call(e[r],r,e[r]);r++);else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(T(Object(e))?w.merge(n,\"string\"==typeof e?[e]:e):a.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:s.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,a=0,s=[];if(T(e))for(r=e.length;a<r;a++)null!=(i=t(e[a],a,n))&&s.push(i);else for(a in e)null!=(i=t(e[a],a,n))&&s.push(i);return o(s)},guid:1,support:d}),\"function\"==typeof Symbol&&(w.fn[Symbol.iterator]=n[Symbol.iterator]),w.each(\"Boolean Number String Function Array Date RegExp Object Error Symbol\".split(\" \"),(function(e,t){u[\"[object \"+t+\"]\"]=t.toLowerCase()}));var C=\n", " /*!\n", " * Sizzle CSS Selector Engine v2.3.5\n", " * https://sizzlejs.com/\n", " *\n", " * Copyright JS Foundation and other contributors\n", " * Released under the MIT license\n", " * https://js.foundation/\n", " *\n", " * Date: 2020-03-14\n", " */\n", " function(e){var t,n,r,i,o,a,s,u,l,c,f,p,d,h,g,v,y,m,x,b=\"sizzle\"+1*new Date,w=e.document,T=0,C=0,E=ue(),S=ue(),k=ue(),A=ue(),N=function(e,t){return e===t&&(f=!0),0},D={}.hasOwnProperty,j=[],q=j.pop,L=j.push,H=j.push,O=j.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R=\"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",M=\"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",I=\"(?:\\\\\\\\[\\\\da-fA-F]{1,6}[\\\\x20\\\\t\\\\r\\\\n\\\\f]?|\\\\\\\\[^\\\\r\\\\n\\\\f]|[\\\\w-]|[^\\0-\\\\x7f])+\",W=\"\\\\[[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(\"+I+\")(?:\"+M+\"*([*^$|!~]?=)\"+M+\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\"+I+\"))|)\"+M+\"*\\\\]\",F=\":(\"+I+\")(?:\\\\((('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\"+W+\")*)|.*)\\\\)|)\",B=new RegExp(M+\"+\",\"g\"),$=new RegExp(\"^[\\\\x20\\\\t\\\\r\\\\n\\\\f]+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)[\\\\x20\\\\t\\\\r\\\\n\\\\f]+$\",\"g\"),_=new RegExp(\"^[\\\\x20\\\\t\\\\r\\\\n\\\\f]*,[\\\\x20\\\\t\\\\r\\\\n\\\\f]*\"),z=new RegExp(\"^[\\\\x20\\\\t\\\\r\\\\n\\\\f]*([>+~]|[\\\\x20\\\\t\\\\r\\\\n\\\\f])[\\\\x20\\\\t\\\\r\\\\n\\\\f]*\"),U=new RegExp(M+\"|>\"),X=new RegExp(F),V=new RegExp(\"^\"+I+\"$\"),G={ID:new RegExp(\"^#(\"+I+\")\"),CLASS:new RegExp(\"^\\\\.(\"+I+\")\"),TAG:new RegExp(\"^(\"+I+\"|[*])\"),ATTR:new RegExp(\"^\"+W),PSEUDO:new RegExp(\"^\"+F),CHILD:new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\([\\\\x20\\\\t\\\\r\\\\n\\\\f]*(even|odd|(([+-]|)(\\\\d*)n|)[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(?:([+-]|)[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(\\\\d+)|))[\\\\x20\\\\t\\\\r\\\\n\\\\f]*\\\\)|)\",\"i\"),bool:new RegExp(\"^(?:\"+R+\")$\",\"i\"),needsContext:new RegExp(\"^[\\\\x20\\\\t\\\\r\\\\n\\\\f]*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\([\\\\x20\\\\t\\\\r\\\\n\\\\f]*((?:-\\\\d)?\\\\d*)[\\\\x20\\\\t\\\\r\\\\n\\\\f]*\\\\)|)(?=[^-]|$)\",\"i\")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\\d$/i,K=/^[^{]+\\{\\s*\\[native \\w/,Z=/^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,ee=/[+~]/,te=new RegExp(\"\\\\\\\\[\\\\da-fA-F]{1,6}[\\\\x20\\\\t\\\\r\\\\n\\\\f]?|\\\\\\\\([^\\\\r\\\\n\\\\f])\",\"g\"),ne=function(e,t){var n=\"0x\"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,ie=function(e,t){return t?\"\\0\"===e?\"�\":e.slice(0,-1)+\"\\\\\"+e.charCodeAt(e.length-1).toString(16)+\" \":\"\\\\\"+e},oe=function(){p()},ae=be((function(e){return!0===e.disabled&&\"fieldset\"===e.nodeName.toLowerCase()}),{dir:\"parentNode\",next:\"legend\"});try{H.apply(j=O.call(w.childNodes),w.childNodes),j[w.childNodes.length].nodeType}catch(e){H={apply:j.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function se(e,t,r,i){var o,s,l,c,f,h,y,m=t&&t.ownerDocument,w=t?t.nodeType:9;if(r=r||[],\"string\"!=typeof e||!e||1!==w&&9!==w&&11!==w)return r;if(!i&&(p(t),t=t||d,g)){if(11!==w&&(f=Z.exec(e)))if(o=f[1]){if(9===w){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&x(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return H.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return H.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!A[e+\" \"]&&(!v||!v.test(e))&&(1!==w||\"object\"!==t.nodeName.toLowerCase())){if(y=e,m=t,1===w&&(U.test(e)||z.test(e))){for((m=ee.test(e)&&ye(t.parentNode)||t)===t&&n.scope||((c=t.getAttribute(\"id\"))?c=c.replace(re,ie):t.setAttribute(\"id\",c=b)),s=(h=a(e)).length;s--;)h[s]=(c?\"#\"+c:\":scope\")+\" \"+xe(h[s]);y=h.join(\",\")}try{return H.apply(r,m.querySelectorAll(y)),r}catch(t){A(e,!0)}finally{c===b&&t.removeAttribute(\"id\")}}}return u(e.replace($,\"$1\"),t,r,i)}function ue(){var e=[];return function t(n,i){return e.push(n+\" \")>r.cacheLength&&delete t[e.shift()],t[n+\" \"]=i}}function le(e){return e[b]=!0,e}function ce(e){var t=d.createElement(\"fieldset\");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){for(var n=e.split(\"|\"),i=n.length;i--;)r.attrHandle[n[i]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(e){return function(t){return\"input\"===t.nodeName.toLowerCase()&&t.type===e}}function he(e){return function(t){var n=t.nodeName.toLowerCase();return(\"input\"===n||\"button\"===n)&&t.type===e}}function ge(e){return function(t){return\"form\"in t?t.parentNode&&!1===t.disabled?\"label\"in t?\"label\"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ae(t)===e:t.disabled===e:\"label\"in t&&t.disabled===e}}function ve(e){return le((function(t){return t=+t,le((function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))}))}))}function ye(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=se.support={},o=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||\"HTML\")},p=se.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!=d&&9===a.nodeType&&a.documentElement?(h=(d=a).documentElement,g=!o(d),w!=d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener(\"unload\",oe,!1):i.attachEvent&&i.attachEvent(\"onunload\",oe)),n.scope=ce((function(e){return h.appendChild(e).appendChild(d.createElement(\"div\")),void 0!==e.querySelectorAll&&!e.querySelectorAll(\":scope fieldset div\").length})),n.attributes=ce((function(e){return e.className=\"i\",!e.getAttribute(\"className\")})),n.getElementsByTagName=ce((function(e){return e.appendChild(d.createComment(\"\")),!e.getElementsByTagName(\"*\").length})),n.getElementsByClassName=K.test(d.getElementsByClassName),n.getById=ce((function(e){return h.appendChild(e).id=b,!d.getElementsByName||!d.getElementsByName(b).length})),n.getById?(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute(\"id\")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode(\"id\");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode(\"id\"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode(\"id\"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if(\"*\"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&g)return t.getElementsByClassName(e)},y=[],v=[],(n.qsa=K.test(d.querySelectorAll))&&(ce((function(e){var t;h.appendChild(e).innerHTML=\"<a id='\"+b+\"'></a><select id='\"+b+\"-\\r\\\\' msallowcapture=''><option selected=''></option></select>\",e.querySelectorAll(\"[msallowcapture^='']\").length&&v.push(\"[*^$]=[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(?:''|\\\"\\\")\"),e.querySelectorAll(\"[selected]\").length||v.push(\"\\\\[[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(?:value|\"+R+\")\"),e.querySelectorAll(\"[id~=\"+b+\"-]\").length||v.push(\"~=\"),(t=d.createElement(\"input\")).setAttribute(\"name\",\"\"),e.appendChild(t),e.querySelectorAll(\"[name='']\").length||v.push(\"\\\\[[\\\\x20\\\\t\\\\r\\\\n\\\\f]*name[\\\\x20\\\\t\\\\r\\\\n\\\\f]*=[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(?:''|\\\"\\\")\"),e.querySelectorAll(\":checked\").length||v.push(\":checked\"),e.querySelectorAll(\"a#\"+b+\"+*\").length||v.push(\".#.+[+~]\"),e.querySelectorAll(\"\\\\\\f\"),v.push(\"[\\\\r\\\\n\\\\f]\")})),ce((function(e){e.innerHTML=\"<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>\";var t=d.createElement(\"input\");t.setAttribute(\"type\",\"hidden\"),e.appendChild(t).setAttribute(\"name\",\"D\"),e.querySelectorAll(\"[name=d]\").length&&v.push(\"name[\\\\x20\\\\t\\\\r\\\\n\\\\f]*[*^$|!~]?=\"),2!==e.querySelectorAll(\":enabled\").length&&v.push(\":enabled\",\":disabled\"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(\":disabled\").length&&v.push(\":enabled\",\":disabled\"),e.querySelectorAll(\"*,:x\"),v.push(\",.*:\")}))),(n.matchesSelector=K.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ce((function(e){n.disconnectedMatch=m.call(e,\"*\"),m.call(e,\"[s!='']:x\"),y.push(\"!=\",F)})),v=v.length&&new RegExp(v.join(\"|\")),y=y.length&&new RegExp(y.join(\"|\")),t=K.test(h.compareDocumentPosition),x=t||K.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},N=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e==d||e.ownerDocument==w&&x(w,e)?-1:t==d||t.ownerDocument==w&&x(w,t)?1:c?P(c,e)-P(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==d?-1:t==d?1:i?-1:o?1:c?P(c,e)-P(c,t):0;if(i===o)return pe(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?pe(a[r],s[r]):a[r]==w?-1:s[r]==w?1:0},d):d},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(p(e),n.matchesSelector&&g&&!A[t+\" \"]&&(!y||!y.test(t))&&(!v||!v.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){A(t,!0)}return se(t,d,null,[e]).length>0},se.contains=function(e,t){return(e.ownerDocument||e)!=d&&p(e),x(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=d&&p(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},se.escape=function(e){return(e+\"\").replace(re,ie)},se.error=function(e){throw new Error(\"Syntax error, unrecognized expression: \"+e)},se.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(N),f){for(;t=e[o++];)t===e[o]&&(i=r.push(o));for(;i--;)e.splice(r[i],1)}return c=null,e},i=se.getText=function(e){var t,n=\"\",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if(\"string\"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},(r=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{\">\":{dir:\"parentNode\",first:!0},\" \":{dir:\"parentNode\"},\"+\":{dir:\"previousSibling\",first:!0},\"~\":{dir:\"previousSibling\"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||\"\").replace(te,ne),\"~=\"===e[2]&&(e[3]=\" \"+e[3]+\" \"),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),\"nth\"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*(\"even\"===e[3]||\"odd\"===e[3])),e[5]=+(e[7]+e[8]||\"odd\"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||\"\":n&&X.test(n)&&(t=a(n,!0))&&(t=n.indexOf(\")\",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return\"*\"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+\" \"];return t||(t=new RegExp(\"(^|[\\\\x20\\\\t\\\\r\\\\n\\\\f])\"+e+\"(\"+M+\"|$)\"))&&E(e,(function(e){return t.test(\"string\"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute(\"class\")||\"\")}))},ATTR:function(e,t,n){return function(r){var i=se.attr(r,e);return null==i?\"!=\"===t:!t||(i+=\"\",\"=\"===t?i===n:\"!=\"===t?i!==n:\"^=\"===t?n&&0===i.indexOf(n):\"*=\"===t?n&&i.indexOf(n)>-1:\"$=\"===t?n&&i.slice(-n.length)===n:\"~=\"===t?(\" \"+i.replace(B,\" \")+\" \").indexOf(n)>-1:\"|=\"===t&&(i===n||i.slice(0,n.length+1)===n+\"-\"))}},CHILD:function(e,t,n,r,i){var o=\"nth\"!==e.slice(0,3),a=\"last\"!==e.slice(-4),s=\"of-type\"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,d,h,g=o!==a?\"nextSibling\":\"previousSibling\",v=t.parentNode,y=s&&t.nodeName.toLowerCase(),m=!u&&!s,x=!1;if(v){if(o){for(;g;){for(p=t;p=p[g];)if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g=\"only\"===e&&!h&&\"nextSibling\"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&m){for(x=(d=(l=(c=(f=(p=v)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1])&&l[2],p=d&&v.childNodes[d];p=++d&&p&&p[g]||(x=d=0)||h.pop();)if(1===p.nodeType&&++x&&p===t){c[e]=[T,d,x];break}}else if(m&&(x=d=(l=(c=(f=(p=t)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1]),!1===x)for(;(p=++d&&p&&p[g]||(x=d=0)||h.pop())&&((s?p.nodeName.toLowerCase()!==y:1!==p.nodeType)||!++x||(m&&((c=(f=p[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]=[T,x]),p!==t)););return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||se.error(\"unsupported pseudo: \"+e);return i[b]?i(t):i.length>1?(n=[e,e,\"\",t],r.setFilters.hasOwnProperty(e.toLowerCase())?le((function(e,n){for(var r,o=i(e,t),a=o.length;a--;)e[r=P(e,o[a])]=!(n[r]=o[a])})):function(e){return i(e,0,n)}):i}},pseudos:{not:le((function(e){var t=[],n=[],r=s(e.replace($,\"$1\"));return r[b]?le((function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))})):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}})),has:le((function(e){return function(t){return se(e,t).length>0}})),contains:le((function(e){return e=e.replace(te,ne),function(t){return(t.textContent||i(t)).indexOf(e)>-1}})),lang:le((function(e){return V.test(e||\"\")||se.error(\"unsupported lang: \"+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute(\"xml:lang\")||t.getAttribute(\"lang\"))return(n=n.toLowerCase())===e||0===n.indexOf(e+\"-\")}while((t=t.parentNode)&&1===t.nodeType);return!1}})),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===d.activeElement&&(!d.hasFocus||d.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&!!e.checked||\"option\"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&\"button\"===e.type||\"button\"===t},text:function(e){var t;return\"input\"===e.nodeName.toLowerCase()&&\"text\"===e.type&&(null==(t=e.getAttribute(\"type\"))||\"text\"===t.toLowerCase())},first:ve((function(){return[0]})),last:ve((function(e,t){return[t-1]})),eq:ve((function(e,t,n){return[n<0?n+t:n]})),even:ve((function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e})),odd:ve((function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e})),lt:ve((function(e,t,n){for(var r=n<0?n+t:n>t?t:n;--r>=0;)e.push(r);return e})),gt:ve((function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e}))}}).pseudos.nth=r.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=de(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=he(t);function me(){}function xe(e){for(var t=0,n=e.length,r=\"\";t<n;t++)r+=e[t].value;return r}function be(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&\"parentNode\"===o,s=C++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,u){var l,c,f,p=[T,s];if(u){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(c=(f=t[b]||(t[b]={}))[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=c[o])&&l[0]===T&&l[1]===s)return p[2]=l[2];if(c[o]=p,p[2]=e(t,n,u))return!0}return!1}}function we(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(e,t,n,r,i,o){return r&&!r[b]&&(r=Ce(r)),i&&!i[b]&&(i=Ce(i,o)),le((function(o,a,s,u){var l,c,f,p=[],d=[],h=a.length,g=o||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(t||\"*\",s.nodeType?[s]:s,[]),v=!e||!o&&t?g:Te(g,p,e,s,u),y=n?i||(o?e:h||r)?[]:a:v;if(n&&n(v,y,s,u),r)for(l=Te(y,d),r(l,[],s,u),c=l.length;c--;)(f=l[c])&&(y[d[c]]=!(v[d[c]]=f));if(o){if(i||e){if(i){for(l=[],c=y.length;c--;)(f=y[c])&&l.push(v[c]=f);i(null,y=[],l,u)}for(c=y.length;c--;)(f=y[c])&&(l=i?P(o,f):p[c])>-1&&(o[l]=!(a[l]=f))}}else y=Te(y===a?y.splice(h,y.length):y),i?i(null,a,y,u):H.apply(a,y)}))}function Ee(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[\" \"],u=a?1:0,c=be((function(e){return e===t}),s,!0),f=be((function(e){return P(t,e)>-1}),s,!0),p=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];u<o;u++)if(n=r.relative[e[u].type])p=[be(we(p),n)];else{if((n=r.filter[e[u].type].apply(null,e[u].matches))[b]){for(i=++u;i<o&&!r.relative[e[i].type];i++);return Ce(u>1&&we(p),u>1&&xe(e.slice(0,u-1).concat({value:\" \"===e[u-2].type?\"*\":\"\"})).replace($,\"$1\"),n,u<i&&Ee(e.slice(u,i)),i<o&&Ee(e=e.slice(i)),i<o&&xe(e))}p.push(n)}return we(p)}return me.prototype=r.filters=r.pseudos,r.setFilters=new me,a=se.tokenize=function(e,t){var n,i,o,a,s,u,l,c=S[e+\" \"];if(c)return t?0:c.slice(0);for(s=e,u=[],l=r.preFilter;s;){for(a in n&&!(i=_.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),n=!1,(i=z.exec(s))&&(n=i.shift(),o.push({value:n,type:i[0].replace($,\" \")}),s=s.slice(n.length)),r.filter)!(i=G[a].exec(s))||l[a]&&!(i=l[a](i))||(n=i.shift(),o.push({value:n,type:a,matches:i}),s=s.slice(n.length));if(!n)break}return t?s.length:s?se.error(e):S(e,u).slice(0)},s=se.compile=function(e,t){var n,i=[],o=[],s=k[e+\" \"];if(!s){for(t||(t=a(e)),n=t.length;n--;)(s=Ee(t[n]))[b]?i.push(s):o.push(s);(s=k(e,function(e,t){var n=t.length>0,i=e.length>0,o=function(o,a,s,u,c){var f,h,v,y=0,m=\"0\",x=o&&[],b=[],w=l,C=o||i&&r.find.TAG(\"*\",c),E=T+=null==w?1:Math.random()||.1,S=C.length;for(c&&(l=a==d||a||c);m!==S&&null!=(f=C[m]);m++){if(i&&f){for(h=0,a||f.ownerDocument==d||(p(f),s=!g);v=e[h++];)if(v(f,a||d,s)){u.push(f);break}c&&(T=E)}n&&((f=!v&&f)&&y--,o&&x.push(f))}if(y+=m,n&&m!==y){for(h=0;v=t[h++];)v(x,b,a,s);if(o){if(y>0)for(;m--;)x[m]||b[m]||(b[m]=q.call(u));b=Te(b)}H.apply(u,b),c&&!o&&b.length>0&&y+t.length>1&&se.uniqueSort(u)}return c&&(T=E,l=w),x};return n?le(o):o}(o,i))).selector=e}return s},u=se.select=function(e,t,n,i){var o,u,l,c,f,p=\"function\"==typeof e&&e,d=!i&&a(e=p.selector||e);if(n=n||[],1===d.length){if((u=d[0]=d[0].slice(0)).length>2&&\"ID\"===(l=u[0]).type&&9===t.nodeType&&g&&r.relative[u[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(te,ne),t)||[])[0]))return n;p&&(t=t.parentNode),e=e.slice(u.shift().value.length)}for(o=G.needsContext.test(e)?0:u.length;o--&&(l=u[o],!r.relative[c=l.type]);)if((f=r.find[c])&&(i=f(l.matches[0].replace(te,ne),ee.test(u[0].type)&&ye(t.parentNode)||t))){if(u.splice(o,1),!(e=i.length&&xe(u)))return H.apply(n,i),n;break}}return(p||s(e,d))(i,t,!g,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},n.sortStable=b.split(\"\").sort(N).join(\"\")===b,n.detectDuplicates=!!f,p(),n.sortDetached=ce((function(e){return 1&e.compareDocumentPosition(d.createElement(\"fieldset\"))})),ce((function(e){return e.innerHTML=\"<a href='#'></a>\",\"#\"===e.firstChild.getAttribute(\"href\")}))||fe(\"type|href|height|width\",(function(e,t,n){if(!n)return e.getAttribute(t,\"type\"===t.toLowerCase()?1:2)})),n.attributes&&ce((function(e){return e.innerHTML=\"<input/>\",e.firstChild.setAttribute(\"value\",\"\"),\"\"===e.firstChild.getAttribute(\"value\")}))||fe(\"value\",(function(e,t,n){if(!n&&\"input\"===e.nodeName.toLowerCase())return e.defaultValue})),ce((function(e){return null==e.getAttribute(\"disabled\")}))||fe(R,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),se}(e);w.find=C,w.expr=C.selectors,w.expr[\":\"]=w.expr.pseudos,w.uniqueSort=w.unique=C.uniqueSort,w.text=C.getText,w.isXMLDoc=C.isXML,w.contains=C.contains,w.escapeSelector=C.escape;var E=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&w(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=w.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i;function D(e,t,n){return h(t)?w.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?w.grep(e,(function(e){return e===t!==n})):\"string\"!=typeof t?w.grep(e,(function(e){return s.call(t,e)>-1!==n})):w.filter(t,e,n)}w.filter=function(e,t,n){var r=t[0];return n&&(e=\":not(\"+e+\")\"),1===t.length&&1===r.nodeType?w.find.matchesSelector(r,e)?[r]:[]:w.find.matches(e,w.grep(t,(function(e){return 1===e.nodeType})))},w.fn.extend({find:function(e){var t,n,r=this.length,i=this;if(\"string\"!=typeof e)return this.pushStack(w(e).filter((function(){for(t=0;t<r;t++)if(w.contains(i[t],this))return!0})));for(n=this.pushStack([]),t=0;t<r;t++)w.find(e,i[t],n);return r>1?w.uniqueSort(n):n},filter:function(e){return this.pushStack(D(this,e||[],!1))},not:function(e){return this.pushStack(D(this,e||[],!0))},is:function(e){return!!D(this,\"string\"==typeof e&&k.test(e)?w(e):e||[],!1).length}});var j,q=/^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/;(w.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,\"string\"==typeof e){if(!(r=\"<\"===e[0]&&\">\"===e[e.length-1]&&e.length>=3?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:v,!0)),N.test(r[1])&&w.isPlainObject(t))for(r in t)h(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=v.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):h(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,j=w(v);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter((function(){for(var e=0;e<n;e++)if(w.contains(this,t[e]))return!0}))},closest:function(e,t){var n,r=0,i=this.length,o=[],a=\"string\"!=typeof e&&w(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&w.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?w.uniqueSort(o):o)},index:function(e){return e?\"string\"==typeof e?s.call(w(e),this[0]):s.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(w.uniqueSort(w.merge(this.get(),w(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),w.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return E(e,\"parentNode\")},parentsUntil:function(e,t,n){return E(e,\"parentNode\",n)},next:function(e){return O(e,\"nextSibling\")},prev:function(e){return O(e,\"previousSibling\")},nextAll:function(e){return E(e,\"nextSibling\")},prevAll:function(e){return E(e,\"previousSibling\")},nextUntil:function(e,t,n){return E(e,\"nextSibling\",n)},prevUntil:function(e,t,n){return E(e,\"previousSibling\",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,\"template\")&&(e=e.content||e),w.merge([],e.childNodes))}},(function(e,t){w.fn[e]=function(n,r){var i=w.map(this,t,n);return\"Until\"!==e.slice(-5)&&(r=n),r&&\"string\"==typeof r&&(i=w.filter(r,i)),this.length>1&&(H[e]||w.uniqueSort(i),L.test(e)&&i.reverse()),this.pushStack(i)}}));var P=/[^\\x20\\t\\r\\n\\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&h(i=e.promise)?i.call(e).done(t).fail(n):e&&h(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}w.Callbacks=function(e){e=\"string\"==typeof e?function(e){var t={};return w.each(e.match(P)||[],(function(e,n){t[n]=!0})),t}(e):w.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1)for(n=a.shift();++s<o.length;)!1===o[s].apply(n[0],n[1])&&e.stopOnFalse&&(s=o.length,n=!1);e.memory||(n=!1),t=!1,i&&(o=n?[]:\"\")},l={add:function(){return o&&(n&&!t&&(s=o.length-1,a.push(n)),function t(n){w.each(n,(function(n,r){h(r)?e.unique&&l.has(r)||o.push(r):r&&r.length&&\"string\"!==x(r)&&t(r)}))}(arguments),n&&!t&&u()),this},remove:function(){return w.each(arguments,(function(e,t){for(var n;(n=w.inArray(t,o,n))>-1;)o.splice(n,1),n<=s&&s--})),this},has:function(e){return e?w.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n=\"\",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=\"\"),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l},w.extend({Deferred:function(t){var n=[[\"notify\",\"progress\",w.Callbacks(\"memory\"),w.Callbacks(\"memory\"),2],[\"resolve\",\"done\",w.Callbacks(\"once memory\"),w.Callbacks(\"once memory\"),0,\"resolved\"],[\"reject\",\"fail\",w.Callbacks(\"once memory\"),w.Callbacks(\"once memory\"),1,\"rejected\"]],r=\"pending\",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return w.Deferred((function(t){w.each(n,(function(n,r){var i=h(e[r[4]])&&e[r[4]];o[r[1]]((function(){var e=i&&i.apply(this,arguments);e&&h(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+\"With\"](this,i?[e]:arguments)}))})),e=null})).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var s=this,u=arguments,l=function(){var e,l;if(!(t<o)){if((e=r.apply(s,u))===n.promise())throw new TypeError(\"Thenable self-resolution\");l=e&&(\"object\"==typeof e||\"function\"==typeof e)&&e.then,h(l)?i?l.call(e,a(o,n,R,i),a(o,n,M,i)):(o++,l.call(e,a(o,n,R,i),a(o,n,M,i),a(o,n,R,n.notifyWith))):(r!==R&&(s=void 0,u=[e]),(i||n.resolveWith)(s,u))}},c=i?l:function(){try{l()}catch(e){w.Deferred.exceptionHook&&w.Deferred.exceptionHook(e,c.stackTrace),t+1>=o&&(r!==M&&(s=void 0,u=[e]),n.rejectWith(s,u))}};t?c():(w.Deferred.getStackHook&&(c.stackTrace=w.Deferred.getStackHook()),e.setTimeout(c))}}return w.Deferred((function(e){n[0][3].add(a(0,e,h(i)?i:R,e.notifyWith)),n[1][3].add(a(0,e,h(t)?t:R)),n[2][3].add(a(0,e,h(r)?r:M))})).promise()},promise:function(e){return null!=e?w.extend(e,i):i}},o={};return w.each(n,(function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add((function(){r=s}),n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+\"With\"](this===o?void 0:this,arguments),this},o[t[0]+\"With\"]=a.fireWith})),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),o=i.call(arguments),a=w.Deferred(),s=function(e){return function(n){r[e]=this,o[e]=arguments.length>1?i.call(arguments):n,--t||a.resolveWith(r,o)}};if(t<=1&&(I(e,a.done(s(n)).resolve,a.reject,!t),\"pending\"===a.state()||h(o[n]&&o[n].then)))return a.then();for(;n--;)I(o[n],s(n),a.reject);return a.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&W.test(t.name)&&e.console.warn(\"jQuery.Deferred exception: \"+t.message,t.stack,n)},w.readyException=function(t){e.setTimeout((function(){throw t}))};var F=w.Deferred();function B(){v.removeEventListener(\"DOMContentLoaded\",B),e.removeEventListener(\"load\",B),w.ready()}w.fn.ready=function(e){return F.then(e).catch((function(e){w.readyException(e)})),this},w.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--w.readyWait:w.isReady)||(w.isReady=!0,!0!==e&&--w.readyWait>0||F.resolveWith(v,[w]))}}),w.ready.then=F.then,\"complete\"===v.readyState||\"loading\"!==v.readyState&&!v.documentElement.doScroll?e.setTimeout(w.ready):(v.addEventListener(\"DOMContentLoaded\",B),e.addEventListener(\"load\",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if(\"object\"===x(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,h(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(w(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,\"ms-\").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=w.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if(\"string\"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&\"string\"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;for(;n--;)delete r[t[n]]}(void 0===t||w.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!w.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,K=/[A-Z]/g;function Z(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r=\"data-\"+t.replace(K,\"-$&\").toLowerCase(),\"string\"==typeof(n=e.getAttribute(r))){try{n=function(e){return\"true\"===e||\"false\"!==e&&(\"null\"===e?null:e===+e+\"\"?+e:J.test(e)?JSON.parse(e):e)}(n)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}w.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),w.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,\"hasDataAttrs\"))){for(n=a.length;n--;)a[n]&&0===(r=a[n].name).indexOf(\"data-\")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,\"hasDataAttrs\",!0)}return i}return\"object\"==typeof e?this.each((function(){Q.set(this,e)})):$(this,(function(t){var n;if(o&&void 0===t)return void 0!==(n=Q.get(o,e))||void 0!==(n=Z(o,e))?n:void 0;this.each((function(){Q.set(this,e,t)}))}),null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each((function(){Q.remove(this,e)}))}}),w.extend({queue:function(e,t,n){var r;if(e)return t=(t||\"fx\")+\"queue\",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,w.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||\"fx\";var n=w.queue(e,t),r=n.length,i=n.shift(),o=w._queueHooks(e,t);\"inprogress\"===i&&(i=n.shift(),r--),i&&(\"fx\"===t&&n.unshift(\"inprogress\"),delete o.stop,i.call(e,(function(){w.dequeue(e,t)}),o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+\"queueHooks\";return Y.get(e,n)||Y.access(e,n,{empty:w.Callbacks(\"once memory\").add((function(){Y.remove(e,[t+\"queue\",n])}))})}}),w.fn.extend({queue:function(e,t){var n=2;return\"string\"!=typeof e&&(t=e,e=\"fx\",n--),arguments.length<n?w.queue(this[0],e):void 0===t?this:this.each((function(){var n=w.queue(this,e,t);w._queueHooks(this,e),\"fx\"===e&&\"inprogress\"!==n[0]&&w.dequeue(this,e)}))},dequeue:function(e){return this.each((function(){w.dequeue(this,e)}))},clearQueue:function(e){return this.queue(e||\"fx\",[])},promise:function(e,t){var n,r=1,i=w.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for(\"string\"!=typeof e&&(t=e,e=void 0),e=e||\"fx\";a--;)(n=Y.get(o[a],e+\"queueHooks\"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source,te=new RegExp(\"^(?:([+-])=|)(\"+ee+\")([a-z%]*)$\",\"i\"),ne=[\"Top\",\"Right\",\"Bottom\",\"Left\"],re=v.documentElement,ie=function(e){return w.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return w.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return\"none\"===(e=t||e).style.display||\"\"===e.style.display&&ie(e)&&\"none\"===w.css(e,\"display\")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return w.css(e,t,\"\")},u=s(),l=n&&n[3]||(w.cssNumber[t]?\"\":\"px\"),c=e.nodeType&&(w.cssNumber[t]||\"px\"!==l&&+u)&&te.exec(w.css(e,t));if(c&&c[3]!==l){for(u/=2,l=l||c[3],c=+u||1;a--;)w.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,w.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e){var t,n=e.ownerDocument,r=e.nodeName,i=ue[r];return i||(t=n.body.appendChild(n.createElement(r)),i=w.css(t,\"display\"),t.parentNode.removeChild(t),\"none\"===i&&(i=\"block\"),ue[r]=i,i)}function ce(e,t){for(var n,r,i=[],o=0,a=e.length;o<a;o++)(r=e[o]).style&&(n=r.style.display,t?(\"none\"===n&&(i[o]=Y.get(r,\"display\")||null,i[o]||(r.style.display=\"\")),\"\"===r.style.display&&ae(r)&&(i[o]=le(r))):\"none\"!==n&&(i[o]=\"none\",Y.set(r,\"display\",n)));for(o=0;o<a;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}w.fn.extend({show:function(){return ce(this,!0)},hide:function(){return ce(this)},toggle:function(e){return\"boolean\"==typeof e?e?this.show():this.hide():this.each((function(){ae(this)?w(this).show():w(this).hide()}))}});var fe,pe,de=/^(?:checkbox|radio)$/i,he=/<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)/i,ge=/^$|^module$|\\/(?:java|ecma)script/i;fe=v.createDocumentFragment().appendChild(v.createElement(\"div\")),(pe=v.createElement(\"input\")).setAttribute(\"type\",\"radio\"),pe.setAttribute(\"checked\",\"checked\"),pe.setAttribute(\"name\",\"t\"),fe.appendChild(pe),d.checkClone=fe.cloneNode(!0).cloneNode(!0).lastChild.checked,fe.innerHTML=\"<textarea>x</textarea>\",d.noCloneChecked=!!fe.cloneNode(!0).lastChild.defaultValue,fe.innerHTML=\"<option></option>\",d.option=!!fe.lastChild;var ve={thead:[1,\"<table>\",\"</table>\"],col:[2,\"<table><colgroup>\",\"</colgroup></table>\"],tr:[2,\"<table><tbody>\",\"</tbody></table>\"],td:[3,\"<table><tbody><tr>\",\"</tr></tbody></table>\"],_default:[0,\"\",\"\"]};function ye(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||\"*\"):void 0!==e.querySelectorAll?e.querySelectorAll(t||\"*\"):[],void 0===t||t&&A(e,t)?w.merge([e],n):n}function me(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],\"globalEval\",!t||Y.get(t[n],\"globalEval\"))}ve.tbody=ve.tfoot=ve.colgroup=ve.caption=ve.thead,ve.th=ve.td,d.option||(ve.optgroup=ve.option=[1,\"<select multiple='multiple'>\",\"</select>\"]);var xe=/<|&#?\\w+;/;function be(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if(\"object\"===x(o))w.merge(p,o.nodeType?[o]:o);else if(xe.test(o)){for(a=a||f.appendChild(t.createElement(\"div\")),s=(he.exec(o)||[\"\",\"\"])[1].toLowerCase(),u=ve[s]||ve._default,a.innerHTML=u[1]+w.htmlPrefilter(o)+u[2],c=u[0];c--;)a=a.lastChild;w.merge(p,a.childNodes),(a=f.firstChild).textContent=\"\"}else p.push(t.createTextNode(o));for(f.textContent=\"\",d=0;o=p[d++];)if(r&&w.inArray(o,r)>-1)i&&i.push(o);else if(l=ie(o),a=ye(f.appendChild(o),\"script\"),l&&me(a),n)for(c=0;o=a[c++];)ge.test(o.type||\"\")&&n.push(o);return f}var we=/^key/,Te=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\\.(.+)|)/;function Ee(){return!0}function Se(){return!1}function ke(e,t){return e===function(){try{return v.activeElement}catch(e){}}()==(\"focus\"===t)}function Ae(e,t,n,r,i,o){var a,s;if(\"object\"==typeof t){for(s in\"string\"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&(\"string\"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return w().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=w.guid++)),e.each((function(){w.event.add(this,t,i,r,n)}))}function Ne(e,t,n){n?(Y.set(e,t,!1),w.event.add(e,t,{namespace:!1,handler:function(e){var r,o,a=Y.get(this,t);if(1&e.isTrigger&&this[t]){if(a.length)(w.event.special[t]||{}).delegateType&&e.stopPropagation();else if(a=i.call(arguments),Y.set(this,t,a),r=n(this,t),this[t](),a!==(o=Y.get(this,t))||r?Y.set(this,t,!1):o={},a!==o)return e.stopImmediatePropagation(),e.preventDefault(),o.value}else a.length&&(Y.set(this,t,{value:w.event.trigger(w.extend(a[0],w.Event.prototype),a.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,t)&&w.event.add(e,t,Ee)}w.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(e);if(V(e))for(n.handler&&(n=(o=n).handler,i=o.selector),i&&w.find.matchesSelector(re,i),n.guid||(n.guid=w.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(t){return void 0!==w&&w.event.triggered!==t.type?w.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||\"\").match(P)||[\"\"]).length;l--;)d=g=(s=Ce.exec(t[l])||[])[1],h=(s[2]||\"\").split(\".\").sort(),d&&(f=w.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=w.event.special[d]||{},c=w.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&w.expr.match.needsContext.test(i),namespace:h.join(\".\")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),w.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){for(l=(t=(t||\"\").match(P)||[\"\"]).length;l--;)if(d=g=(s=Ce.exec(t[l])||[])[1],h=(s[2]||\"\").split(\".\").sort(),d){for(f=w.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp(\"(^|\\\\.)\"+h.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"),a=o=p.length;o--;)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&(\"**\"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||w.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)w.event.remove(e,d+t[l],n,r,!0);w.isEmptyObject(u)&&Y.remove(e,\"handle events\")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=w.event.fix(e),l=(Y.get(this,\"events\")||Object.create(null))[u.type]||[],c=w.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){for(a=w.event.handlers.call(this,u,l),t=0;(i=a[t++])&&!u.isPropagationStopped();)for(u.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!u.isImmediatePropagationStopped();)u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((w.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!(\"click\"===e.type&&e.button>=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&(\"click\"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+\" \"]&&(a[i]=r.needsContext?w(i,this).index(l)>-1:w.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(e,t){Object.defineProperty(w.Event.prototype,e,{enumerable:!0,configurable:!0,get:h(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[w.expando]?e:new w.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return de.test(t.type)&&t.click&&A(t,\"input\")&&Ne(t,\"click\",Ee),!1},trigger:function(e){var t=this||e;return de.test(t.type)&&t.click&&A(t,\"input\")&&Ne(t,\"click\"),!0},_default:function(e){var t=e.target;return de.test(t.type)&&t.click&&A(t,\"input\")&&Y.get(t,\"click\")||A(t,\"a\")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},w.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},w.Event=function(e,t){if(!(this instanceof w.Event))return new w.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ee:Se,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&w.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[w.expando]=!0},w.Event.prototype={constructor:w.Event,isDefaultPrevented:Se,isPropagationStopped:Se,isImmediatePropagationStopped:Se,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ee,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ee,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ee,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},w.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&we.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Te.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},w.event.addProp),w.each({focus:\"focusin\",blur:\"focusout\"},(function(e,t){w.event.special[e]={setup:function(){return Ne(this,e,ke),!1},trigger:function(){return Ne(this,e),!0},delegateType:t}})),w.each({mouseenter:\"mouseover\",mouseleave:\"mouseout\",pointerenter:\"pointerover\",pointerleave:\"pointerout\"},(function(e,t){w.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||w.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}})),w.fn.extend({on:function(e,t,n,r){return Ae(this,e,t,n,r)},one:function(e,t,n,r){return Ae(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,w(e.delegateTarget).off(r.namespace?r.origType+\".\"+r.namespace:r.origType,r.selector,r.handler),this;if(\"object\"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&\"function\"!=typeof t||(n=t,t=void 0),!1===n&&(n=Se),this.each((function(){w.event.remove(this,e,n,t)}))}});var De=/<script|<style|<link/i,je=/checked\\s*(?:[^=]|=\\s*.checked.)/i,qe=/^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g;function Le(e,t){return A(e,\"table\")&&A(11!==t.nodeType?t:t.firstChild,\"tr\")&&w(e).children(\"tbody\")[0]||e}function He(e){return e.type=(null!==e.getAttribute(\"type\"))+\"/\"+e.type,e}function Oe(e){return\"true/\"===(e.type||\"\").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute(\"type\"),e}function Pe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,\"handle events\"),s)for(n=0,r=s[i].length;n<r;n++)w.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=w.extend({},o),Q.set(t,a))}}function Re(e,t){var n=t.nodeName.toLowerCase();\"input\"===n&&de.test(e.type)?t.checked=e.checked:\"input\"!==n&&\"textarea\"!==n||(t.defaultValue=e.defaultValue)}function Me(e,t,n,r){t=o(t);var i,a,s,u,l,c,f=0,p=e.length,g=p-1,v=t[0],y=h(v);if(y||p>1&&\"string\"==typeof v&&!d.checkClone&&je.test(v))return e.each((function(i){var o=e.eq(i);y&&(t[0]=v.call(this,i,o.html())),Me(o,t,n,r)}));if(p&&(a=(i=be(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=a),a||r)){for(u=(s=w.map(ye(i,\"script\"),He)).length;f<p;f++)l=i,f!==g&&(l=w.clone(l,!0,!0),u&&w.merge(s,ye(l,\"script\"))),n.call(e[f],l,f);if(u)for(c=s[s.length-1].ownerDocument,w.map(s,Oe),f=0;f<u;f++)l=s[f],ge.test(l.type||\"\")&&!Y.access(l,\"globalEval\")&&w.contains(c,l)&&(l.src&&\"module\"!==(l.type||\"\").toLowerCase()?w._evalUrl&&!l.noModule&&w._evalUrl(l.src,{nonce:l.nonce||l.getAttribute(\"nonce\")},c):m(l.textContent.replace(qe,\"\"),l,c))}return e}function Ie(e,t,n){for(var r,i=t?w.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||w.cleanData(ye(r)),r.parentNode&&(n&&ie(r)&&me(ye(r,\"script\")),r.parentNode.removeChild(r));return e}w.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=ie(e);if(!(d.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||w.isXMLDoc(e)))for(a=ye(s),r=0,i=(o=ye(e)).length;r<i;r++)Re(o[r],a[r]);if(t)if(n)for(o=o||ye(e),a=a||ye(s),r=0,i=o.length;r<i;r++)Pe(o[r],a[r]);else Pe(e,s);return(a=ye(s,\"script\")).length>0&&me(a,!u&&ye(e,\"script\")),s},cleanData:function(e){for(var t,n,r,i=w.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?w.event.remove(n,r):w.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),w.fn.extend({detach:function(e){return Ie(this,e,!0)},remove:function(e){return Ie(this,e)},text:function(e){return $(this,(function(e){return void 0===e?w.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)}))}),null,e,arguments.length)},append:function(){return Me(this,arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Le(this,e).appendChild(e)}))},prepend:function(){return Me(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Le(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return Me(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return Me(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)}))},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(w.cleanData(ye(e,!1)),e.textContent=\"\");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return w.clone(this,e,t)}))},html:function(e){return $(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(\"string\"==typeof e&&!De.test(e)&&!ve[(he.exec(e)||[\"\",\"\"])[1].toLowerCase()]){e=w.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(w.cleanData(ye(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)}),null,e,arguments.length)},replaceWith:function(){var e=[];return Me(this,arguments,(function(t){var n=this.parentNode;w.inArray(this,e)<0&&(w.cleanData(ye(this)),n&&n.replaceChild(t,this))}),e)}}),w.each({appendTo:\"append\",prependTo:\"prepend\",insertBefore:\"before\",insertAfter:\"after\",replaceAll:\"replaceWith\"},(function(e,t){w.fn[e]=function(e){for(var n,r=[],i=w(e),o=i.length-1,s=0;s<=o;s++)n=s===o?this:this.clone(!0),w(i[s])[t](n),a.apply(r,n.get());return this.pushStack(r)}}));var We=new RegExp(\"^(\"+ee+\")(?!px)[a-z%]+$\",\"i\"),Fe=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)},Be=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},$e=new RegExp(ne.join(\"|\"),\"i\");function _e(e,t,n){var r,i,o,a,s=e.style;return(n=n||Fe(e))&&(\"\"!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=w.style(e,t)),!d.pixelBoxStyles()&&We.test(a)&&$e.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+\"\":a}function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function t(){if(c){l.style.cssText=\"position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0\",c.style.cssText=\"position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%\",re.appendChild(l).appendChild(c);var t=e.getComputedStyle(c);r=\"1%\"!==t.top,u=12===n(t.marginLeft),c.style.right=\"60%\",a=36===n(t.right),i=36===n(t.width),c.style.position=\"absolute\",o=12===n(c.offsetWidth/3),re.removeChild(l),c=null}}function n(e){return Math.round(parseFloat(e))}var r,i,o,a,s,u,l=v.createElement(\"div\"),c=v.createElement(\"div\");c.style&&(c.style.backgroundClip=\"content-box\",c.cloneNode(!0).style.backgroundClip=\"\",d.clearCloneStyle=\"content-box\"===c.style.backgroundClip,w.extend(d,{boxSizingReliable:function(){return t(),i},pixelBoxStyles:function(){return t(),a},pixelPosition:function(){return t(),r},reliableMarginLeft:function(){return t(),u},scrollboxSize:function(){return t(),o},reliableTrDimensions:function(){var t,n,r,i;return null==s&&(t=v.createElement(\"table\"),n=v.createElement(\"tr\"),r=v.createElement(\"div\"),t.style.cssText=\"position:absolute;left:-11111px\",n.style.height=\"1px\",r.style.height=\"9px\",re.appendChild(t).appendChild(n).appendChild(r),i=e.getComputedStyle(n),s=parseInt(i.height)>3,re.removeChild(t)),s}}))}();var Ue=[\"Webkit\",\"Moz\",\"ms\"],Xe=v.createElement(\"div\").style,Ve={};function Ge(e){var t=w.cssProps[e]||Ve[e];return t||(e in Xe?e:Ve[e]=function(e){for(var t=e[0].toUpperCase()+e.slice(1),n=Ue.length;n--;)if((e=Ue[n]+t)in Xe)return e}(e)||e)}var Ye=/^(none|table(?!-c[ea]).+)/,Qe=/^--/,Je={position:\"absolute\",visibility:\"hidden\",display:\"block\"},Ke={letterSpacing:\"0\",fontWeight:\"400\"};function Ze(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||\"px\"):t}function et(e,t,n,r,i,o){var a=\"width\"===t?1:0,s=0,u=0;if(n===(r?\"border\":\"content\"))return 0;for(;a<4;a+=2)\"margin\"===n&&(u+=w.css(e,n+ne[a],!0,i)),r?(\"content\"===n&&(u-=w.css(e,\"padding\"+ne[a],!0,i)),\"margin\"!==n&&(u-=w.css(e,\"border\"+ne[a]+\"Width\",!0,i))):(u+=w.css(e,\"padding\"+ne[a],!0,i),\"padding\"!==n?u+=w.css(e,\"border\"+ne[a]+\"Width\",!0,i):s+=w.css(e,\"border\"+ne[a]+\"Width\",!0,i));return!r&&o>=0&&(u+=Math.max(0,Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function tt(e,t,n){var r=Fe(e),i=(!d.boxSizingReliable()||n)&&\"border-box\"===w.css(e,\"boxSizing\",!1,r),o=i,a=_e(e,t,r),s=\"offset\"+t[0].toUpperCase()+t.slice(1);if(We.test(a)){if(!n)return a;a=\"auto\"}return(!d.boxSizingReliable()&&i||!d.reliableTrDimensions()&&A(e,\"tr\")||\"auto\"===a||!parseFloat(a)&&\"inline\"===w.css(e,\"display\",!1,r))&&e.getClientRects().length&&(i=\"border-box\"===w.css(e,\"boxSizing\",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+et(e,t,n||(i?\"border\":\"content\"),o,r,a)+\"px\"}function nt(e,t,n,r,i){return new nt.prototype.init(e,t,n,r,i)}w.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=_e(e,\"opacity\");return\"\"===n?\"1\":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Qe.test(t),l=e.style;if(u||(t=Ge(s)),a=w.cssHooks[t]||w.cssHooks[s],void 0===n)return a&&\"get\"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];\"string\"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o=\"number\"),null!=n&&n==n&&(\"number\"!==o||u||(n+=i&&i[3]||(w.cssNumber[s]?\"\":\"px\")),d.clearCloneStyle||\"\"!==n||0!==t.indexOf(\"background\")||(l[t]=\"inherit\"),a&&\"set\"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Qe.test(t)||(t=Ge(s)),(a=w.cssHooks[t]||w.cssHooks[s])&&\"get\"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=_e(e,t,r)),\"normal\"===i&&t in Ke&&(i=Ke[t]),\"\"===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),w.each([\"height\",\"width\"],(function(e,t){w.cssHooks[t]={get:function(e,n,r){if(n)return!Ye.test(w.css(e,\"display\"))||e.getClientRects().length&&e.getBoundingClientRect().width?tt(e,t,r):Be(e,Je,(function(){return tt(e,t,r)}))},set:function(e,n,r){var i,o=Fe(e),a=!d.scrollboxSize()&&\"absolute\"===o.position,s=(a||r)&&\"border-box\"===w.css(e,\"boxSizing\",!1,o),u=r?et(e,t,r,s,o):0;return s&&a&&(u-=Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-et(e,t,\"border\",!1,o)-.5)),u&&(i=te.exec(n))&&\"px\"!==(i[3]||\"px\")&&(e.style[t]=n,n=w.css(e,t)),Ze(0,n,u)}}})),w.cssHooks.marginLeft=ze(d.reliableMarginLeft,(function(e,t){if(t)return(parseFloat(_e(e,\"marginLeft\"))||e.getBoundingClientRect().left-Be(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+\"px\"})),w.each({margin:\"\",padding:\"\",border:\"Width\"},(function(e,t){w.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o=\"string\"==typeof n?n.split(\" \"):[n];r<4;r++)i[e+ne[r]+t]=o[r]||o[r-2]||o[0];return i}},\"margin\"!==e&&(w.cssHooks[e+t].set=Ze)})),w.fn.extend({css:function(e,t){return $(this,(function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Fe(e),i=t.length;a<i;a++)o[t[a]]=w.css(e,t[a],!1,r);return o}return void 0!==n?w.style(e,t,n):w.css(e,t)}),e,t,arguments.length>1)}}),w.Tween=nt,nt.prototype={constructor:nt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||w.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(w.cssNumber[n]?\"\":\"px\")},cur:function(){var e=nt.propHooks[this.prop];return e&&e.get?e.get(this):nt.propHooks._default.get(this)},run:function(e){var t,n=nt.propHooks[this.prop];return this.options.duration?this.pos=t=w.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):nt.propHooks._default.set(this),this}},nt.prototype.init.prototype=nt.prototype,nt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=w.css(e.elem,e.prop,\"\"))&&\"auto\"!==t?t:0},set:function(e){w.fx.step[e.prop]?w.fx.step[e.prop](e):1!==e.elem.nodeType||!w.cssHooks[e.prop]&&null==e.elem.style[Ge(e.prop)]?e.elem[e.prop]=e.now:w.style(e.elem,e.prop,e.now+e.unit)}}},nt.propHooks.scrollTop=nt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},w.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:\"swing\"},w.fx=nt.prototype.init,w.fx.step={};var rt,it,ot=/^(?:toggle|show|hide)$/,at=/queueHooks$/;function st(){it&&(!1===v.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(st):e.setTimeout(st,w.fx.interval),w.fx.tick())}function ut(){return e.setTimeout((function(){rt=void 0})),rt=Date.now()}function lt(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i[\"margin\"+(n=ne[r])]=i[\"padding\"+n]=e;return t&&(i.opacity=i.width=e),i}function ct(e,t,n){for(var r,i=(ft.tweeners[t]||[]).concat(ft.tweeners[\"*\"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ft(e,t,n){var r,i,o=0,a=ft.prefilters.length,s=w.Deferred().always((function(){delete u.elem})),u=function(){if(i)return!1;for(var t=rt||ut(),n=Math.max(0,l.startTime+l.duration-t),r=1-(n/l.duration||0),o=0,a=l.tweens.length;o<a;o++)l.tweens[o].run(r);return s.notifyWith(e,[l,r,n]),r<1&&a?n:(a||s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:w.extend({},t),opts:w.extend(!0,{specialEasing:{},easing:w.easing._default},n),originalProperties:t,originalOptions:n,startTime:rt||ut(),duration:n.duration,tweens:[],createTween:function(t,n){var r=w.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=w.cssHooks[r])&&\"expand\"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);o<a;o++)if(r=ft.prefilters[o].call(l,e,c,l.opts))return h(r.stop)&&(w._queueHooks(l.elem,l.opts.queue).stop=r.stop.bind(r)),r;return w.map(c,ct,l),h(l.opts.start)&&l.opts.start.call(e,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),w.fx.timer(w.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l}w.Animation=w.extend(ft,{tweeners:{\"*\":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){h(e)?(t=e,e=[\"*\"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ft.tweeners[n]=ft.tweeners[n]||[],ft.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f=\"width\"in t||\"height\"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,\"fxshow\");for(r in n.queue||(null==(a=w._queueHooks(e,\"fx\")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always((function(){p.always((function(){a.unqueued--,w.queue(e,\"fx\").length||a.empty.fire()}))}))),t)if(i=t[r],ot.test(i)){if(delete t[r],o=o||\"toggle\"===i,i===(g?\"hide\":\"show\")){if(\"show\"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||w.style(e,r)}if((u=!w.isEmptyObject(t))||!w.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,\"display\")),\"none\"===(c=w.css(e,\"display\"))&&(l?c=l:(ce([e],!0),l=e.style.display||l,c=w.css(e,\"display\"),ce([e]))),(\"inline\"===c||\"inline-block\"===c&&null!=l)&&\"none\"===w.css(e,\"float\")&&(u||(p.done((function(){h.display=l})),null==l&&(c=h.display,l=\"none\"===c?\"\":c)),h.display=\"inline-block\")),n.overflow&&(h.overflow=\"hidden\",p.always((function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]}))),u=!1,d)u||(v?\"hidden\"in v&&(g=v.hidden):v=Y.access(e,\"fxshow\",{display:l}),o&&(v.hidden=!g),g&&ce([e],!0),p.done((function(){for(r in g||ce([e]),Y.remove(e,\"fxshow\"),d)w.style(e,r,d[r])}))),u=ct(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?ft.prefilters.unshift(e):ft.prefilters.push(e)}}),w.speed=function(e,t,n){var r=e&&\"object\"==typeof e?w.extend({},e):{complete:n||!n&&t||h(e)&&e,duration:e,easing:n&&t||t&&!h(t)&&t};return w.fx.off?r.duration=0:\"number\"!=typeof r.duration&&(r.duration in w.fx.speeds?r.duration=w.fx.speeds[r.duration]:r.duration=w.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue=\"fx\"),r.old=r.complete,r.complete=function(){h(r.old)&&r.old.call(this),r.queue&&w.dequeue(this,r.queue)},r},w.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css(\"opacity\",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=w.isEmptyObject(e),o=w.speed(t,n,r),a=function(){var t=ft(this,w.extend({},e),o);(i||Y.get(this,\"finish\"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return\"string\"!=typeof e&&(n=t,t=e,e=void 0),t&&this.queue(e||\"fx\",[]),this.each((function(){var t=!0,i=null!=e&&e+\"queueHooks\",o=w.timers,a=Y.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&at.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||w.dequeue(this,e)}))},finish:function(e){return!1!==e&&(e=e||\"fx\"),this.each((function(){var t,n=Y.get(this),r=n[e+\"queue\"],i=n[e+\"queueHooks\"],o=w.timers,a=r?r.length:0;for(n.finish=!0,w.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish}))}}),w.each([\"toggle\",\"show\",\"hide\"],(function(e,t){var n=w.fn[t];w.fn[t]=function(e,r,i){return null==e||\"boolean\"==typeof e?n.apply(this,arguments):this.animate(lt(t,!0),e,r,i)}})),w.each({slideDown:lt(\"show\"),slideUp:lt(\"hide\"),slideToggle:lt(\"toggle\"),fadeIn:{opacity:\"show\"},fadeOut:{opacity:\"hide\"},fadeToggle:{opacity:\"toggle\"}},(function(e,t){w.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}})),w.timers=[],w.fx.tick=function(){var e,t=0,n=w.timers;for(rt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||w.fx.stop(),rt=void 0},w.fx.timer=function(e){w.timers.push(e),w.fx.start()},w.fx.interval=13,w.fx.start=function(){it||(it=!0,st())},w.fx.stop=function(){it=null},w.fx.speeds={slow:600,fast:200,_default:400},w.fn.delay=function(t,n){return t=w.fx&&w.fx.speeds[t]||t,n=n||\"fx\",this.queue(n,(function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}}))},function(){var e=v.createElement(\"input\"),t=v.createElement(\"select\").appendChild(v.createElement(\"option\"));e.type=\"checkbox\",d.checkOn=\"\"!==e.value,d.optSelected=t.selected,(e=v.createElement(\"input\")).value=\"t\",e.type=\"radio\",d.radioValue=\"t\"===e.value}();var pt,dt=w.expr.attrHandle;w.fn.extend({attr:function(e,t){return $(this,w.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each((function(){w.removeAttr(this,e)}))}}),w.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?w.prop(e,t,n):(1===o&&w.isXMLDoc(e)||(i=w.attrHooks[t.toLowerCase()]||(w.expr.match.bool.test(t)?pt:void 0)),void 0!==n?null===n?void w.removeAttr(e,t):i&&\"set\"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+\"\"),n):i&&\"get\"in i&&null!==(r=i.get(e,t))?r:null==(r=w.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!d.radioValue&&\"radio\"===t&&A(e,\"input\")){var n=e.value;return e.setAttribute(\"type\",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),pt={set:function(e,t,n){return!1===t?w.removeAttr(e,n):e.setAttribute(n,n),n}},w.each(w.expr.match.bool.source.match(/\\w+/g),(function(e,t){var n=dt[t]||w.find.attr;dt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=dt[a],dt[a]=i,i=null!=n(e,t,r)?a:null,dt[a]=o),i}}));var ht=/^(?:input|select|textarea|button)$/i,gt=/^(?:a|area)$/i;function vt(e){return(e.match(P)||[]).join(\" \")}function yt(e){return e.getAttribute&&e.getAttribute(\"class\")||\"\"}function mt(e){return Array.isArray(e)?e:\"string\"==typeof e&&e.match(P)||[]}w.fn.extend({prop:function(e,t){return $(this,w.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[w.propFix[e]||e]}))}}),w.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&w.isXMLDoc(e)||(t=w.propFix[t]||t,i=w.propHooks[t]),void 0!==n?i&&\"set\"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&\"get\"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=w.find.attr(e,\"tabindex\");return t?parseInt(t,10):ht.test(e.nodeName)||gt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:\"htmlFor\",class:\"className\"}}),d.optSelected||(w.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),w.each([\"tabIndex\",\"readOnly\",\"maxLength\",\"cellSpacing\",\"cellPadding\",\"rowSpan\",\"colSpan\",\"useMap\",\"frameBorder\",\"contentEditable\"],(function(){w.propFix[this.toLowerCase()]=this})),w.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(h(e))return this.each((function(t){w(this).addClass(e.call(this,t,yt(this)))}));if((t=mt(e)).length)for(;n=this[u++];)if(i=yt(n),r=1===n.nodeType&&\" \"+vt(i)+\" \"){for(a=0;o=t[a++];)r.indexOf(\" \"+o+\" \")<0&&(r+=o+\" \");i!==(s=vt(r))&&n.setAttribute(\"class\",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(h(e))return this.each((function(t){w(this).removeClass(e.call(this,t,yt(this)))}));if(!arguments.length)return this.attr(\"class\",\"\");if((t=mt(e)).length)for(;n=this[u++];)if(i=yt(n),r=1===n.nodeType&&\" \"+vt(i)+\" \"){for(a=0;o=t[a++];)for(;r.indexOf(\" \"+o+\" \")>-1;)r=r.replace(\" \"+o+\" \",\" \");i!==(s=vt(r))&&n.setAttribute(\"class\",s)}return this},toggleClass:function(e,t){var n=typeof e,r=\"string\"===n||Array.isArray(e);return\"boolean\"==typeof t&&r?t?this.addClass(e):this.removeClass(e):h(e)?this.each((function(n){w(this).toggleClass(e.call(this,n,yt(this),t),t)})):this.each((function(){var t,i,o,a;if(r)for(i=0,o=w(this),a=mt(e);t=a[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&\"boolean\"!==n||((t=yt(this))&&Y.set(this,\"__className__\",t),this.setAttribute&&this.setAttribute(\"class\",t||!1===e?\"\":Y.get(this,\"__className__\")||\"\"))}))},hasClass:function(e){var t,n,r=0;for(t=\" \"+e+\" \";n=this[r++];)if(1===n.nodeType&&(\" \"+vt(yt(n))+\" \").indexOf(t)>-1)return!0;return!1}});var xt=/\\r/g;w.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=h(e),this.each((function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,w(this).val()):e)?i=\"\":\"number\"==typeof i?i+=\"\":Array.isArray(i)&&(i=w.map(i,(function(e){return null==e?\"\":e+\"\"}))),(t=w.valHooks[this.type]||w.valHooks[this.nodeName.toLowerCase()])&&\"set\"in t&&void 0!==t.set(this,i,\"value\")||(this.value=i))}))):i?(t=w.valHooks[i.type]||w.valHooks[i.nodeName.toLowerCase()])&&\"get\"in t&&void 0!==(n=t.get(i,\"value\"))?n:\"string\"==typeof(n=i.value)?n.replace(xt,\"\"):null==n?\"\":n:void 0}}),w.extend({valHooks:{option:{get:function(e){var t=w.find.attr(e,\"value\");return null!=t?t:vt(w.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a=\"select-one\"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,\"optgroup\"))){if(t=w(n).val(),a)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,o=w.makeArray(t),a=i.length;a--;)((r=i[a]).selected=w.inArray(w.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),w.each([\"radio\",\"checkbox\"],(function(){w.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=w.inArray(w(e).val(),t)>-1}},d.checkOn||(w.valHooks[this].get=function(e){return null===e.getAttribute(\"value\")?\"on\":e.value})})),d.focusin=\"onfocusin\"in e;var bt=/^(?:focusinfocus|focusoutblur)$/,wt=function(e){e.stopPropagation()};w.extend(w.event,{trigger:function(t,n,r,i){var o,a,s,u,l,f,p,d,y=[r||v],m=c.call(t,\"type\")?t.type:t,x=c.call(t,\"namespace\")?t.namespace.split(\".\"):[];if(a=d=s=r=r||v,3!==r.nodeType&&8!==r.nodeType&&!bt.test(m+w.event.triggered)&&(m.indexOf(\".\")>-1&&(x=m.split(\".\"),m=x.shift(),x.sort()),l=m.indexOf(\":\")<0&&\"on\"+m,(t=t[w.expando]?t:new w.Event(m,\"object\"==typeof t&&t)).isTrigger=i?2:3,t.namespace=x.join(\".\"),t.rnamespace=t.namespace?new RegExp(\"(^|\\\\.)\"+x.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:w.makeArray(n,[t]),p=w.event.special[m]||{},i||!p.trigger||!1!==p.trigger.apply(r,n))){if(!i&&!p.noBubble&&!g(r)){for(u=p.delegateType||m,bt.test(u+m)||(a=a.parentNode);a;a=a.parentNode)y.push(a),s=a;s===(r.ownerDocument||v)&&y.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=y[o++])&&!t.isPropagationStopped();)d=a,t.type=o>1?u:p.bindType||m,(f=(Y.get(a,\"events\")||Object.create(null))[t.type]&&Y.get(a,\"handle\"))&&f.apply(a,n),(f=l&&a[l])&&f.apply&&V(a)&&(t.result=f.apply(a,n),!1===t.result&&t.preventDefault());return t.type=m,i||t.isDefaultPrevented()||p._default&&!1!==p._default.apply(y.pop(),n)||!V(r)||l&&h(r[m])&&!g(r)&&((s=r[l])&&(r[l]=null),w.event.triggered=m,t.isPropagationStopped()&&d.addEventListener(m,wt),r[m](),t.isPropagationStopped()&&d.removeEventListener(m,wt),w.event.triggered=void 0,s&&(r[l]=s)),t.result}},simulate:function(e,t,n){var r=w.extend(new w.Event,n,{type:e,isSimulated:!0});w.event.trigger(r,null,t)}}),w.fn.extend({trigger:function(e,t){return this.each((function(){w.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return w.event.trigger(e,t,n,!0)}}),d.focusin||w.each({focus:\"focusin\",blur:\"focusout\"},(function(e,t){var n=function(e){w.event.simulate(t,e.target,w.event.fix(e))};w.event.special[t]={setup:function(){var r=this.ownerDocument||this.document||this,i=Y.access(r,t);i||r.addEventListener(e,n,!0),Y.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,i=Y.access(r,t)-1;i?Y.access(r,t,i):(r.removeEventListener(e,n,!0),Y.remove(r,t))}}}));var Tt=e.location,Ct={guid:Date.now()},Et=/\\?/;w.parseXML=function(t){var n;if(!t||\"string\"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,\"text/xml\")}catch(e){n=void 0}return n&&!n.getElementsByTagName(\"parsererror\").length||w.error(\"Invalid XML: \"+t),n};var St=/\\[\\]$/,kt=/\\r?\\n/g,At=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;function Dt(e,t,n,r){var i;if(Array.isArray(t))w.each(t,(function(t,i){n||St.test(e)?r(e,i):Dt(e+\"[\"+(\"object\"==typeof i&&null!=i?t:\"\")+\"]\",i,n,r)}));else if(n||\"object\"!==x(t))r(e,t);else for(i in t)Dt(e+\"[\"+i+\"]\",t[i],n,r)}w.param=function(e,t){var n,r=[],i=function(e,t){var n=h(t)?t():t;r[r.length]=encodeURIComponent(e)+\"=\"+encodeURIComponent(null==n?\"\":n)};if(null==e)return\"\";if(Array.isArray(e)||e.jquery&&!w.isPlainObject(e))w.each(e,(function(){i(this.name,this.value)}));else for(n in e)Dt(n,e[n],t,i);return r.join(\"&\")},w.fn.extend({serialize:function(){return w.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=w.prop(this,\"elements\");return e?w.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!w(this).is(\":disabled\")&&Nt.test(this.nodeName)&&!At.test(e)&&(this.checked||!de.test(e))})).map((function(e,t){var n=w(this).val();return null==n?null:Array.isArray(n)?w.map(n,(function(e){return{name:t.name,value:e.replace(kt,\"\\r\\n\")}})):{name:t.name,value:n.replace(kt,\"\\r\\n\")}})).get()}});var jt=/%20/g,qt=/#.*$/,Lt=/([?&])_=[^&]*/,Ht=/^(.*?):[ \\t]*([^\\r\\n]*)$/gm,Ot=/^(?:GET|HEAD)$/,Pt=/^\\/\\//,Rt={},Mt={},It=\"*/\".concat(\"*\"),Wt=v.createElement(\"a\");function Ft(e){return function(t,n){\"string\"!=typeof t&&(n=t,t=\"*\");var r,i=0,o=t.toLowerCase().match(P)||[];if(h(n))for(;r=o[i++];)\"+\"===r[0]?(r=r.slice(1)||\"*\",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Bt(e,t,n,r){var i={},o=e===Mt;function a(s){var u;return i[s]=!0,w.each(e[s]||[],(function(e,s){var l=s(t,n,r);return\"string\"!=typeof l||o||i[l]?o?!(u=l):void 0:(t.dataTypes.unshift(l),a(l),!1)})),u}return a(t.dataTypes[0])||!i[\"*\"]&&a(\"*\")}function $t(e,t){var n,r,i=w.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&w.extend(!0,e,r),e}Wt.href=Tt.href,w.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Tt.href,type:\"GET\",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Tt.protocol),global:!0,processData:!0,async:!0,contentType:\"application/x-www-form-urlencoded; charset=UTF-8\",accepts:{\"*\":It,text:\"text/plain\",html:\"text/html\",xml:\"application/xml, text/xml\",json:\"application/json, text/javascript\"},contents:{xml:/\\bxml\\b/,html:/\\bhtml/,json:/\\bjson\\b/},responseFields:{xml:\"responseXML\",text:\"responseText\",json:\"responseJSON\"},converters:{\"* text\":String,\"text html\":!0,\"text json\":JSON.parse,\"text xml\":w.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?$t($t(e,w.ajaxSettings),t):$t(w.ajaxSettings,e)},ajaxPrefilter:Ft(Rt),ajaxTransport:Ft(Mt),ajax:function(t,n){\"object\"==typeof t&&(n=t,t=void 0),n=n||{};var r,i,o,a,s,u,l,c,f,p,d=w.ajaxSetup({},n),h=d.context||d,g=d.context&&(h.nodeType||h.jquery)?w(h):w.event,y=w.Deferred(),m=w.Callbacks(\"once memory\"),x=d.statusCode||{},b={},T={},C=\"canceled\",E={readyState:0,getResponseHeader:function(e){var t;if(l){if(!a)for(a={};t=Ht.exec(o);)a[t[1].toLowerCase()+\" \"]=(a[t[1].toLowerCase()+\" \"]||[]).concat(t[2]);t=a[e.toLowerCase()+\" \"]}return null==t?null:t.join(\", \")},getAllResponseHeaders:function(){return l?o:null},setRequestHeader:function(e,t){return null==l&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==l&&(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)E.always(e[E.status]);else for(t in e)x[t]=[x[t],e[t]];return this},abort:function(e){var t=e||C;return r&&r.abort(t),S(0,t),this}};if(y.promise(E),d.url=((t||d.url||Tt.href)+\"\").replace(Pt,Tt.protocol+\"//\"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=(d.dataType||\"*\").toLowerCase().match(P)||[\"\"],null==d.crossDomain){u=v.createElement(\"a\");try{u.href=d.url,u.href=u.href,d.crossDomain=Wt.protocol+\"//\"+Wt.host!=u.protocol+\"//\"+u.host}catch(e){d.crossDomain=!0}}if(d.data&&d.processData&&\"string\"!=typeof d.data&&(d.data=w.param(d.data,d.traditional)),Bt(Rt,d,n,E),l)return E;for(f in(c=w.event&&d.global)&&0==w.active++&&w.event.trigger(\"ajaxStart\"),d.type=d.type.toUpperCase(),d.hasContent=!Ot.test(d.type),i=d.url.replace(qt,\"\"),d.hasContent?d.data&&d.processData&&0===(d.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&(d.data=d.data.replace(jt,\"+\")):(p=d.url.slice(i.length),d.data&&(d.processData||\"string\"==typeof d.data)&&(i+=(Et.test(i)?\"&\":\"?\")+d.data,delete d.data),!1===d.cache&&(i=i.replace(Lt,\"$1\"),p=(Et.test(i)?\"&\":\"?\")+\"_=\"+Ct.guid+++p),d.url=i+p),d.ifModified&&(w.lastModified[i]&&E.setRequestHeader(\"If-Modified-Since\",w.lastModified[i]),w.etag[i]&&E.setRequestHeader(\"If-None-Match\",w.etag[i])),(d.data&&d.hasContent&&!1!==d.contentType||n.contentType)&&E.setRequestHeader(\"Content-Type\",d.contentType),E.setRequestHeader(\"Accept\",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(\"*\"!==d.dataTypes[0]?\", \"+It+\"; q=0.01\":\"\"):d.accepts[\"*\"]),d.headers)E.setRequestHeader(f,d.headers[f]);if(d.beforeSend&&(!1===d.beforeSend.call(h,E,d)||l))return E.abort();if(C=\"abort\",m.add(d.complete),E.done(d.success),E.fail(d.error),r=Bt(Mt,d,n,E)){if(E.readyState=1,c&&g.trigger(\"ajaxSend\",[E,d]),l)return E;d.async&&d.timeout>0&&(s=e.setTimeout((function(){E.abort(\"timeout\")}),d.timeout));try{l=!1,r.send(b,S)}catch(e){if(l)throw e;S(-1,e)}}else S(-1,\"No Transport\");function S(t,n,a,u){var f,p,v,b,T,C=n;l||(l=!0,s&&e.clearTimeout(s),r=void 0,o=u||\"\",E.readyState=t>0?4:0,f=t>=200&&t<300||304===t,a&&(b=function(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;\"*\"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader(\"Content-Type\"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+\" \"+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(d,E,a)),!f&&w.inArray(\"script\",d.dataTypes)>-1&&(d.converters[\"text script\"]=function(){}),b=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if(\"*\"===o)o=u;else if(\"*\"!==u&&u!==o){if(!(a=l[u+\" \"+o]||l[\"* \"+o]))for(i in l)if((s=i.split(\" \"))[1]===o&&(a=l[u+\" \"+s[0]]||l[\"* \"+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:\"parsererror\",error:a?e:\"No conversion from \"+u+\" to \"+o}}}return{state:\"success\",data:t}}(d,b,E,f),f?(d.ifModified&&((T=E.getResponseHeader(\"Last-Modified\"))&&(w.lastModified[i]=T),(T=E.getResponseHeader(\"etag\"))&&(w.etag[i]=T)),204===t||\"HEAD\"===d.type?C=\"nocontent\":304===t?C=\"notmodified\":(C=b.state,p=b.data,f=!(v=b.error))):(v=C,!t&&C||(C=\"error\",t<0&&(t=0))),E.status=t,E.statusText=(n||C)+\"\",f?y.resolveWith(h,[p,C,E]):y.rejectWith(h,[E,C,v]),E.statusCode(x),x=void 0,c&&g.trigger(f?\"ajaxSuccess\":\"ajaxError\",[E,d,f?p:v]),m.fireWith(h,[E,C]),c&&(g.trigger(\"ajaxComplete\",[E,d]),--w.active||w.event.trigger(\"ajaxStop\")))}return E},getJSON:function(e,t,n){return w.get(e,t,n,\"json\")},getScript:function(e,t){return w.get(e,void 0,t,\"script\")}}),w.each([\"get\",\"post\"],(function(e,t){w[t]=function(e,n,r,i){return h(n)&&(i=i||r,r=n,n=void 0),w.ajax(w.extend({url:e,type:t,dataType:i,data:n,success:r},w.isPlainObject(e)&&e))}})),w.ajaxPrefilter((function(e){var t;for(t in e.headers)\"content-type\"===t.toLowerCase()&&(e.contentType=e.headers[t]||\"\")})),w._evalUrl=function(e,t,n){return w.ajax({url:e,type:\"GET\",dataType:\"script\",cache:!0,async:!1,global:!1,converters:{\"text script\":function(){}},dataFilter:function(e){w.globalEval(e,t,n)}})},w.fn.extend({wrapAll:function(e){var t;return this[0]&&(h(e)&&(e=e.call(this[0])),t=w(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return h(e)?this.each((function(t){w(this).wrapInner(e.call(this,t))})):this.each((function(){var t=w(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=h(e);return this.each((function(n){w(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not(\"body\").each((function(){w(this).replaceWith(this.childNodes)})),this}}),w.expr.pseudos.hidden=function(e){return!w.expr.pseudos.visible(e)},w.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},w.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var _t={0:200,1223:204},zt=w.ajaxSettings.xhr();d.cors=!!zt&&\"withCredentials\"in zt,d.ajax=zt=!!zt,w.ajaxTransport((function(t){var n,r;if(d.cors||zt&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];for(a in t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i[\"X-Requested-With\"]||(i[\"X-Requested-With\"]=\"XMLHttpRequest\"),i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,\"abort\"===e?s.abort():\"error\"===e?\"number\"!=typeof s.status?o(0,\"error\"):o(s.status,s.statusText):o(_t[s.status]||s.status,s.statusText,\"text\"!==(s.responseType||\"text\")||\"string\"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=s.ontimeout=n(\"error\"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout((function(){n&&r()}))},n=n(\"abort\");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}})),w.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),w.ajaxSetup({accepts:{script:\"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript\"},contents:{script:/\\b(?:java|ecma)script\\b/},converters:{\"text script\":function(e){return w.globalEval(e),e}}}),w.ajaxPrefilter(\"script\",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type=\"GET\")})),w.ajaxTransport(\"script\",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=w(\"<script>\").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on(\"load error\",n=function(e){t.remove(),n=null,e&&i(\"error\"===e.type?404:200,e.type)}),v.head.appendChild(t[0])},abort:function(){n&&n()}}}));var Ut,Xt=[],Vt=/(=)\\?(?=&|$)|\\?\\?/;w.ajaxSetup({jsonp:\"callback\",jsonpCallback:function(){var e=Xt.pop()||w.expando+\"_\"+Ct.guid++;return this[e]=!0,e}}),w.ajaxPrefilter(\"json jsonp\",(function(t,n,r){var i,o,a,s=!1!==t.jsonp&&(Vt.test(t.url)?\"url\":\"string\"==typeof t.data&&0===(t.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&Vt.test(t.data)&&\"data\");if(s||\"jsonp\"===t.dataTypes[0])return i=t.jsonpCallback=h(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(Vt,\"$1\"+i):!1!==t.jsonp&&(t.url+=(Et.test(t.url)?\"&\":\"?\")+t.jsonp+\"=\"+i),t.converters[\"script json\"]=function(){return a||w.error(i+\" was not called\"),a[0]},t.dataTypes[0]=\"json\",o=e[i],e[i]=function(){a=arguments},r.always((function(){void 0===o?w(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,Xt.push(i)),a&&h(o)&&o(a[0]),a=o=void 0})),\"script\"})),d.createHTMLDocument=((Ut=v.implementation.createHTMLDocument(\"\").body).innerHTML=\"<form></form><form></form>\",2===Ut.childNodes.length),w.parseHTML=function(e,t,n){return\"string\"!=typeof e?[]:(\"boolean\"==typeof t&&(n=t,t=!1),t||(d.createHTMLDocument?((r=(t=v.implementation.createHTMLDocument(\"\")).createElement(\"base\")).href=v.location.href,t.head.appendChild(r)):t=v),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=be([e],t,o),o&&o.length&&w(o).remove(),w.merge([],i.childNodes)));var r,i,o},w.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(\" \");return s>-1&&(r=vt(e.slice(s)),e=e.slice(0,s)),h(t)?(n=t,t=void 0):t&&\"object\"==typeof t&&(i=\"POST\"),a.length>0&&w.ajax({url:e,type:i||\"GET\",dataType:\"html\",data:t}).done((function(e){o=arguments,a.html(r?w(\"<div>\").append(w.parseHTML(e)).find(r):e)})).always(n&&function(e,t){a.each((function(){n.apply(this,o||[e.responseText,t,e])}))}),this},w.expr.pseudos.animated=function(e){return w.grep(w.timers,(function(t){return e===t.elem})).length},w.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=w.css(e,\"position\"),c=w(e),f={};\"static\"===l&&(e.style.position=\"relative\"),s=c.offset(),o=w.css(e,\"top\"),u=w.css(e,\"left\"),(\"absolute\"===l||\"fixed\"===l)&&(o+u).indexOf(\"auto\")>-1?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),h(t)&&(t=t.call(e,n,w.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),\"using\"in t?t.using.call(e,f):(\"number\"==typeof f.top&&(f.top+=\"px\"),\"number\"==typeof f.left&&(f.left+=\"px\"),c.css(f))}},w.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each((function(t){w.offset.setOffset(this,e,t)}));var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if(\"fixed\"===w.css(r,\"position\"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&\"static\"===w.css(e,\"position\");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=w(e).offset()).top+=w.css(e,\"borderTopWidth\",!0),i.left+=w.css(e,\"borderLeftWidth\",!0))}return{top:t.top-i.top-w.css(r,\"marginTop\",!0),left:t.left-i.left-w.css(r,\"marginLeft\",!0)}}},offsetParent:function(){return this.map((function(){for(var e=this.offsetParent;e&&\"static\"===w.css(e,\"position\");)e=e.offsetParent;return e||re}))}}),w.each({scrollLeft:\"pageXOffset\",scrollTop:\"pageYOffset\"},(function(e,t){var n=\"pageYOffset\"===t;w.fn[e]=function(r){return $(this,(function(e,r,i){var o;if(g(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i}),e,r,arguments.length)}})),w.each([\"top\",\"left\"],(function(e,t){w.cssHooks[t]=ze(d.pixelPosition,(function(e,n){if(n)return n=_e(e,t),We.test(n)?w(e).position()[t]+\"px\":n}))})),w.each({Height:\"height\",Width:\"width\"},(function(e,t){w.each({padding:\"inner\"+e,content:t,\"\":\"outer\"+e},(function(n,r){w.fn[r]=function(i,o){var a=arguments.length&&(n||\"boolean\"!=typeof i),s=n||(!0===i||!0===o?\"margin\":\"border\");return $(this,(function(t,n,i){var o;return g(t)?0===r.indexOf(\"outer\")?t[\"inner\"+e]:t.document.documentElement[\"client\"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body[\"scroll\"+e],o[\"scroll\"+e],t.body[\"offset\"+e],o[\"offset\"+e],o[\"client\"+e])):void 0===i?w.css(t,n,s):w.style(t,n,i,s)}),t,a?i:void 0,a)}}))})),w.each([\"ajaxStart\",\"ajaxStop\",\"ajaxComplete\",\"ajaxError\",\"ajaxSuccess\",\"ajaxSend\"],(function(e,t){w.fn[t]=function(e){return this.on(t,e)}})),w.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,\"**\"):this.off(t,e||\"**\",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),w.each(\"blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu\".split(\" \"),(function(e,t){w.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}));var Gt=/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g;w.proxy=function(e,t){var n,r,o;if(\"string\"==typeof t&&(n=e[t],t=e,e=n),h(e))return r=i.call(arguments,2),(o=function(){return e.apply(t||this,r.concat(i.call(arguments)))}).guid=e.guid=e.guid||w.guid++,o},w.holdReady=function(e){e?w.readyWait++:w.ready(!0)},w.isArray=Array.isArray,w.parseJSON=JSON.parse,w.nodeName=A,w.isFunction=h,w.isWindow=g,w.camelCase=X,w.type=x,w.now=Date.now,w.isNumeric=function(e){var t=w.type(e);return(\"number\"===t||\"string\"===t)&&!isNaN(e-parseFloat(e))},w.trim=function(e){return null==e?\"\":(e+\"\").replace(Gt,\"\")},\"function\"==typeof define&&define.amd&&define(\"jquery\",[],(function(){return w}));var Yt=e.jQuery,Qt=e.$;return w.noConflict=function(t){return e.$===w&&(e.$=Qt),t&&e.jQuery===w&&(e.jQuery=Yt),w},void 0===t&&(e.jQuery=e.$=w),w}))},\n", " 476: function _(t,n,i,o,e){var r=t(474);function u(){var t=!1,n=!1;this.stopPropagation=function(){t=!0},this.isPropagationStopped=function(){return t},this.stopImmediatePropagation=function(){n=!0},this.isImmediatePropagationStopped=function(){return n}}function s(){this.__nonDataRow=!0}function l(){this.__group=!0,this.level=0,this.count=0,this.value=null,this.title=null,this.collapsed=!1,this.selectChecked=!1,this.totals=null,this.rows=[],this.groups=null,this.groupingKey=null}function c(){this.__groupTotals=!0,this.group=null,this.initialized=!1}function h(){var t=null;this.isActive=function(n){return n?t===n:null!==t},this.activate=function(n){if(n!==t){if(null!==t)throw new Error(\"SlickGrid.EditorLock.activate: an editController is still active, can't activate another editController\");if(!n.commitCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .commitCurrentEdit()\");if(!n.cancelCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .cancelCurrentEdit()\");t=n}},this.deactivate=function(n){if(t!==n)throw new Error(\"SlickGrid.EditorLock.deactivate: specified editController is not the currently active one\");t=null},this.commitCurrentEdit=function(){return!t||t.commitCurrentEdit()},this.cancelCurrentEdit=function(){return!t||t.cancelCurrentEdit()}}l.prototype=new s,l.prototype.equals=function(t){return this.value===t.value&&this.count===t.count&&this.collapsed===t.collapsed&&this.title===t.title},c.prototype=new s,n.exports={Event:function(){var t=[];this.subscribe=function(n){t.push(n)},this.unsubscribe=function(n){for(var i=t.length-1;i>=0;i--)t[i]===n&&t.splice(i,1)},this.notify=function(n,i,o){var e;i=i||new u,o=o||this;for(var r=0;r<t.length&&!i.isPropagationStopped()&&!i.isImmediatePropagationStopped();r++)e=t[r].call(o,i,n);return e}},EventData:u,EventHandler:function(){var t=[];this.subscribe=function(n,i){return t.push({event:n,handler:i}),n.subscribe(i),this},this.unsubscribe=function(n,i){for(var o=t.length;o--;)if(t[o].event===n&&t[o].handler===i)return t.splice(o,1),void n.unsubscribe(i);return this},this.unsubscribeAll=function(){for(var n=t.length;n--;)t[n].event.unsubscribe(t[n].handler);return t=[],this}},Range:function(t,n,i,o){void 0===i&&void 0===o&&(i=t,o=n),this.fromRow=Math.min(t,i),this.fromCell=Math.min(n,o),this.toRow=Math.max(t,i),this.toCell=Math.max(n,o),this.isSingleRow=function(){return this.fromRow==this.toRow},this.isSingleCell=function(){return this.fromRow==this.toRow&&this.fromCell==this.toCell},this.contains=function(t,n){return t>=this.fromRow&&t<=this.toRow&&n>=this.fromCell&&n<=this.toCell},this.toString=function(){return this.isSingleCell()?\"(\"+this.fromRow+\":\"+this.fromCell+\")\":\"(\"+this.fromRow+\":\"+this.fromCell+\" - \"+this.toRow+\":\"+this.toCell+\")\"}},NonDataRow:s,Group:l,GroupTotals:c,EditorLock:h,GlobalEditorLock:new h,TreeColumns:function(t){var n={};function i(t){t.forEach((function(t){n[t.id]=t,t.columns&&i(t.columns)}))}function o(t,n){return t.filter((function(t){var i=n.call(t);return i&&t.columns&&(t.columns=o(t.columns,n)),i&&(!t.columns||t.columns.length)}))}function e(t,n){t.sort((function(t,i){return u(n.getColumnIndex(t.id))-u(n.getColumnIndex(i.id))})).forEach((function(t){t.columns&&e(t.columns,n)}))}function u(t){return void 0===t?-1:t}function s(t){if(!t.length)return t.columns?1+s(t.columns):1;for(var n in t)return s(t[n])}function l(t,n,i){var o=[];if(n==(i=i||0))return t.length&&t.forEach((function(t){t.columns&&(t.extractColumns=function(){return c(t)})})),t;for(var e in t)t[e].columns&&(o=o.concat(l(t[e].columns,n,i+1)));return o}function c(t){var n=[];if(t.hasOwnProperty(\"length\"))for(var i=0;i<t.length;i++)n=n.concat(c(t[i]));else{if(!t.hasOwnProperty(\"columns\"))return t;n=n.concat(c(t.columns))}return n}function h(){return r.extend(!0,[],t)}i(t),this.hasDepth=function(){for(var n in t)if(t[n].hasOwnProperty(\"columns\"))return!0;return!1},this.getTreeColumns=function(){return t},this.extractColumns=function(){return this.hasDepth()?c(t):t},this.getDepth=function(){return s(t)},this.getColumnsInDepth=function(n){return l(t,n)},this.getColumnsInGroup=function(t){return c(t)},this.visibleColumns=function(){return o(h(),(function(){return this.visible}))},this.filter=function(t){return o(h(),t)},this.reOrder=function(n){return e(t,n)},this.getById=function(t){return n[t]},this.getInIds=function(t){return t.map((function(t){return n[t]}))}},keyCode:{SPACE:8,BACKSPACE:8,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,ESC:27,HOME:36,INSERT:45,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,RIGHT:39,TAB:9,UP:38,A:65,C:67,V:86},preClickClassName:\"slick-edit-preclick\",GridAutosizeColsMode:{None:\"NOA\",LegacyOff:\"LOF\",LegacyForceFit:\"LFF\",IgnoreViewport:\"IGV\",FitColsToViewport:\"FCV\",FitViewportToCols:\"FVC\"},ColAutosizeMode:{Locked:\"LCK\",Guide:\"GUI\",Content:\"CON\",ContentIntelligent:\"CTI\"},RowSelectionMode:{FirstRow:\"FS1\",FirstNRows:\"FSN\",AllRows:\"ALL\",LastRow:\"LS1\"},ValueFilterMode:{None:\"NONE\",DeDuplicate:\"DEDP\",GetGreatestAndSub:\"GR8T\",GetLongestTextAndSub:\"LNSB\",GetLongestText:\"LNSC\"},WidthEvalMode:{CanvasTextSize:\"CANV\",HTML:\"HTML\"}}},\n", " 477: function _(e,t,o,l,n){var i=e(474),c=e(476);t.exports={CheckboxSelectColumn:function(e){var t,o=null,l=k(),n=new c.EventHandler,r={},d=!1,a=i.extend(!0,{},{columnId:\"_checkbox_selector\",cssClass:null,hideSelectAllCheckbox:!1,toolTip:\"Select/Deselect All\",width:30,hideInColumnTitleRow:!1,hideInFilterHeaderRow:!0},e);function s(){t.updateColumnHeader(a.columnId,\"\",\"\")}function u(){i(\"#filter-checkbox-selectall-container\").hide()}function h(e,n){var c,s,u,h=t.getSelectedRows(),f={},p=0;if(\"function\"==typeof o)for(u=0;u<t.getDataLength();u++){C(s,t.getDataItem(u),t)||p++}var b=[];for(s=0;s<h.length;s++){c=h[s],C(s,t.getDataItem(c),t)?(f[c]=!0,f[c]!==r[c]&&(t.invalidateRow(c),delete r[c])):b.push(c)}for(s in r)t.invalidateRow(s);(r=f,t.render(),d=h.length&&h.length+p>=t.getDataLength(),a.hideInColumnTitleRow||a.hideSelectAllCheckbox||R(d),a.hideInFilterHeaderRow)||i(\"#header-filter-selector\"+l).prop(\"checked\",d);if(b.length>0){for(s=0;s<b.length;s++){var m=h.indexOf(b[s]);h.splice(m,1)}t.setSelectedRows(h)}}function f(e,o){32==e.which&&t.getColumns()[o.cell].id===a.columnId&&(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit()||b(o.row),e.preventDefault(),e.stopImmediatePropagation())}function p(e,o){if(t.getColumns()[o.cell].id===a.columnId&&i(e.target).is(\":checkbox\")){if(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();b(o.row),e.stopPropagation(),e.stopImmediatePropagation()}}function b(e){var o=t.getDataItem(e);C(e,o,t)&&(r[e]?t.setSelectedRows(i.grep(t.getSelectedRows(),(function(t){return t!=e}))):t.setSelectedRows(t.getSelectedRows().concat(e)),t.setActiveCell(e,function(){if(null===g){g=0;for(var e=t.getColumns(),o=0;o<e.length;o++)e[o].id==a.columnId&&(g=o)}return g}()))}function m(e,o){if(o.column.id==a.columnId&&i(e.target).is(\":checkbox\")){if(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();if(i(e.target).is(\":checked\")){for(var l=[],n=0;n<t.getDataLength();n++){C(n,t.getDataItem(n),t)&&l.push(n)}t.setSelectedRows(l)}else t.setSelectedRows([]);e.stopPropagation(),e.stopImmediatePropagation()}}\"function\"==typeof a.selectableOverride&&v(a.selectableOverride);var g=null;function k(){return Math.round(1e7*Math.random())}function w(e,t,o,l,n,i){var c=k()+e;return n&&C(e,n,i)?r[e]?\"<input id='selector\"+c+\"' type='checkbox' checked='checked'><label for='selector\"+c+\"'></label>\":\"<input id='selector\"+c+\"' type='checkbox'><label for='selector\"+c+\"'></label>\":null}function C(e,t,l){return\"function\"!=typeof o||o(e,t,l)}function R(e){e?t.updateColumnHeader(a.columnId,\"<input id='header-selector\"+l+\"' type='checkbox' checked='checked'><label for='header-selector\"+l+\"'></label>\",a.toolTip):t.updateColumnHeader(a.columnId,\"<input id='header-selector\"+l+\"' type='checkbox'><label for='header-selector\"+l+\"'></label>\",a.toolTip)}function v(e){o=e}i.extend(this,{init:function(e){t=e,n.subscribe(t.onSelectedRowsChanged,h).subscribe(t.onClick,p).subscribe(t.onKeyDown,f),a.hideInFilterHeaderRow||function(e){e.onHeaderRowCellRendered.subscribe((function(e,t){\"sel\"===t.column.field&&(i(t.node).empty(),i(\"<span id='filter-checkbox-selectall-container'><input id='header-filter-selector\"+l+\"' type='checkbox'><label for='header-filter-selector\"+l+\"'></label></span>\").appendTo(t.node).on(\"click\",(function(e){m(e,t)})))}))}(e),a.hideInColumnTitleRow||n.subscribe(t.onHeaderClick,m)},destroy:function(){n.unsubscribeAll()},pluginName:\"CheckboxSelectColumn\",deSelectRows:function(e){var o,l=e.length,n=[];for(o=0;o<l;o++)r[e[o]]&&(n[n.length]=e[o]);t.setSelectedRows(i.grep(t.getSelectedRows(),(function(e){return n.indexOf(e)<0})))},selectRows:function(e){var o,l=e.length,n=[];for(o=0;o<l;o++)r[e[o]]||(n[n.length]=e[o]);t.setSelectedRows(t.getSelectedRows().concat(n))},getColumnDefinition:function(){return{id:a.columnId,name:a.hideSelectAllCheckbox||a.hideInColumnTitleRow?\"\":\"<input id='header-selector\"+l+\"' type='checkbox'><label for='header-selector\"+l+\"'></label>\",toolTip:a.hideSelectAllCheckbox||a.hideInColumnTitleRow?\"\":a.toolTip,field:\"sel\",width:a.width,resizable:!1,sortable:!1,cssClass:a.cssClass,hideSelectAllCheckbox:a.hideSelectAllCheckbox,formatter:w}},getOptions:function(){return a},selectableOverride:v,setOptions:function(e){if((a=i.extend(!0,{},a,e)).hideSelectAllCheckbox)s(),u();else if(a.hideInColumnTitleRow?s():(R(d),n.subscribe(t.onHeaderClick,m)),a.hideInFilterHeaderRow)u();else{var o=i(\"#filter-checkbox-selectall-container\");o.show(),o.find('input[type=\"checkbox\"]').prop(\"checked\",d)}}})}}},\n", " 478: function _(e,t,o,l,n){var a=e(474),r=e(476),i=r.keyCode;t.exports={CellExternalCopyManager:function(e){var t,o,l=this,n=e||{},s=n.copiedCellStyleLayerKey||\"copy-manager\",u=n.copiedCellStyle||\"copied\",c=0,d=n.bodyElement||document.body,f=n.onCopyInit||null,h=n.onCopySuccess||null;function C(e){if(n.headerColumnValueExtractor){var t=n.headerColumnValueExtractor(e);if(t)return t}return e.name}function m(e,o,l){if(n.dataItemColumnValueExtractor){var r=n.dataItemColumnValueExtractor(e,o);if(r)return r}var i=\"\";if(o.editor){var s={container:a(\"<p>\"),column:o,position:{top:0,left:0},grid:t,event:l},u=new o.editor(s);u.loadValue(e),i=u.serializeValue(),u.destroy()}else i=e[o.field];return i}function g(e,o,l){if(o.denyPaste)return null;if(n.dataItemColumnValueSetter)return n.dataItemColumnValueSetter(e,o,l);if(o.editor){var r={container:a(\"body\"),column:o,position:{top:0,left:0},grid:t},i=new o.editor(r);i.loadValue(e),i.applyValue(e,l),i.destroy()}else e[o.field]=l}function p(e){var t=document.createElement(\"textarea\");return t.style.position=\"absolute\",t.style.left=\"-1000px\",t.style.top=document.body.scrollTop+\"px\",t.value=e,d.appendChild(t),t.select(),t}function y(e,a){var r;if(!t.getEditorLock().isActive()||t.getOptions().autoEdit){if(e.which==i.ESC&&o&&(e.preventDefault(),w(),l.onCopyCancelled.notify({ranges:o}),o=null),(e.which===i.C||e.which===i.INSERT)&&(e.ctrlKey||e.metaKey)&&!e.shiftKey&&(f&&f.call(),0!==(r=t.getSelectionModel().getSelectedRanges()).length)){o=r,v(r),l.onCopyCells.notify({ranges:r});for(var s=t.getColumns(),u=\"\",c=0;c<r.length;c++){for(var y=r[c],D=[],S=y.fromRow;S<y.toRow+1;S++){var R=[],x=t.getDataItem(S);if(0===D.length&&n.includeHeaderWhenCopying){for(var E=[],V=y.fromCell;V<y.toCell+1;V++)s[V].name.length>0&&E.push(C(s[V]));D.push(E.join(\"\\t\"))}for(V=y.fromCell;V<y.toCell+1;V++)R.push(m(x,s[V],e));D.push(R.join(\"\\t\"))}u+=D.join(\"\\r\\n\")+\"\\r\\n\"}if(window.clipboardData)return window.clipboardData.setData(\"Text\",u),!0;var b=document.activeElement;if((M=p(u)).focus(),setTimeout((function(){d.removeChild(M),b?b.focus():console.log(\"Not element to restore focus to after copy?\")}),100),h){var I=0;I=1===r.length?r[0].toRow+1-r[0].fromRow:r.length,h.call(this,I)}return!1}if(!n.readOnlyMode&&(e.which===i.V&&(e.ctrlKey||e.metaKey)&&!e.shiftKey||e.which===i.INSERT&&e.shiftKey&&!e.ctrlKey)){var M=p(\"\");return setTimeout((function(){!function(e,t){var o=e.getColumns(),a=t.value.split(/[\\n\\f\\r]/);\"\"===a[a.length-1]&&a.pop();var r=[],i=0;d.removeChild(t);for(var s=0;s<a.length;s++)\"\"!==a[s]?r[i++]=a[s].split(\"\\t\"):r[i++]=[\"\"];var u=e.getActiveCell(),c=e.getSelectionModel().getSelectedRanges(),f=c&&c.length?c[0]:null,h=null,C=null;if(f)h=f.fromRow,C=f.fromCell;else{if(!u)return;h=u.row,C=u.cell}var m=!1,p=r.length,y=r.length?r[0].length:0;1==r.length&&1==r[0].length&&f&&(m=!0,p=f.toRow-f.fromRow+1,y=f.toCell-f.fromCell+1);var w=e.getData().length-h,D=0;if(w<p&&n.newRowCreator){var S=e.getData();for(D=1;D<=p-w;D++)S.push({});e.setData(S),e.render()}var R=h+p>e.getDataLength();if(n.newRowCreator&&R){var x=h+p-e.getDataLength();n.newRowCreator(x)}var E={isClipboardCommand:!0,clippedRange:r,oldValues:[],cellExternalCopyManager:l,_options:n,setDataItemValueForColumn:g,markCopySelection:v,oneCellToMultiple:m,activeRow:h,activeCell:C,destH:p,destW:y,maxDestY:e.getDataLength(),maxDestX:e.getColumns().length,h:0,w:0,execute:function(){this.h=0;for(var t=0;t<this.destH;t++){this.oldValues[t]=[],this.w=0,this.h++;for(var l=0;l<this.destW;l++){this.w++;var n=h+t,a=C+l;if(n<this.maxDestY&&a<this.maxDestX){e.getCellNode(n,a);var i=e.getDataItem(n);this.oldValues[t][l]=i[o[a].field],m?this.setDataItemValueForColumn(i,o[a],r[0][0]):this.setDataItemValueForColumn(i,o[a],r[t]?r[t][l]:\"\"),e.updateCell(n,a),e.onCellChange.notify({row:n,cell:a,item:i,grid:e})}}}var s={fromCell:C,fromRow:h,toCell:C+this.w-1,toRow:h+this.h-1};this.markCopySelection([s]),e.getSelectionModel().setSelectedRanges([s]),this.cellExternalCopyManager.onPasteCells.notify({ranges:[s]})},undo:function(){for(var t=0;t<this.destH;t++)for(var l=0;l<this.destW;l++){var n=h+t,a=C+l;if(n<this.maxDestY&&a<this.maxDestX){e.getCellNode(n,a);var r=e.getDataItem(n);m?this.setDataItemValueForColumn(r,o[a],this.oldValues[0][0]):this.setDataItemValueForColumn(r,o[a],this.oldValues[t][l]),e.updateCell(n,a),e.onCellChange.notify({row:n,cell:a,item:r,grid:e})}}var i={fromCell:C,fromRow:h,toCell:C+this.w-1,toRow:h+this.h-1};if(this.markCopySelection([i]),e.getSelectionModel().setSelectedRanges([i]),this.cellExternalCopyManager.onPasteCells.notify({ranges:[i]}),D>1){for(var s=e.getData();D>1;D--)s.splice(s.length-1,1);e.setData(s),e.render()}}};n.clipboardCommandHandler?n.clipboardCommandHandler(E):E.execute()}(t,M)}),100),!1}}}function v(e){w();for(var o=t.getColumns(),n={},a=0;a<e.length;a++)for(var r=e[a].fromRow;r<=e[a].toRow;r++){n[r]={};for(var i=e[a].fromCell;i<=e[a].toCell&&i<o.length;i++)n[r][o[i].id]=u}t.setCellCssStyles(s,n),clearTimeout(c),c=setTimeout((function(){l.clearCopySelection()}),2e3)}function w(){t.removeCellCssStyles(s)}a.extend(this,{init:function(e){(t=e).onKeyDown.subscribe(y);var o=e.getSelectionModel();if(!o)throw new Error(\"Selection model is mandatory for this plugin. Please set a selection model on the grid before adding this plugin: grid.setSelectionModel(new Slick.CellSelectionModel())\");o.onSelectedRangesChanged.subscribe((function(e,o){t.focus()}))},destroy:function(){t.onKeyDown.unsubscribe(y)},pluginName:\"CellExternalCopyManager\",clearCopySelection:w,handleKeyDown:y,onCopyCells:new r.Event,onCopyCancelled:new r.Event,onPasteCells:new r.Event,setIncludeHeaderWhenCopying:function(e){n.includeHeaderWhenCopying=e}})}}},\n", " 479: function _(r,t,o,_,e){var p=r(1);p.__exportStar(r(476),t.exports),p.__exportStar(r(480),t.exports),p.__exportStar(r(483),t.exports),p.__exportStar(r(484),t.exports),p.__exportStar(r(485),t.exports),p.__exportStar(r(486),t.exports),p.__exportStar(r(487),t.exports)},\n", " 480: function _(require,module,exports,__esModule,__esExport){\n", " /**\n", " * @license\n", " * (c) 2009-2016 Michael Leibman\n", " * michael{dot}leibman{at}gmail{dot}com\n", " * http://github.com/mleibman/slickgrid\n", " *\n", " * Distributed under MIT license.\n", " * All rights reserved.\n", " *\n", " * SlickGrid v2.4\n", " *\n", " * NOTES:\n", " * Cell/row DOM manipulations are done directly bypassing jQuery's DOM manipulation methods.\n", " * This increases the speed dramatically, but can only be done safely because there are no event handlers\n", " * or data associated with any cell/row DOM nodes. Cell editors must make sure they implement .destroy()\n", " * and do proper cleanup.\n", " */\n", " var $=require(474),Slick=require(476),scrollbarDimensions,maxSupportedCssHeight;function SlickGrid(container,data,columns,options){$.fn.drag||require(481),$.fn.drop||require(482);var defaults={alwaysShowVerticalScroll:!1,alwaysAllowHorizontalScroll:!1,explicitInitialization:!1,rowHeight:25,defaultColumnWidth:80,enableAddRow:!1,leaveSpaceForNewRows:!1,editable:!1,autoEdit:!0,suppressActiveCellChangeOnEdit:!1,enableCellNavigation:!0,enableColumnReorder:!0,asyncEditorLoading:!1,asyncEditorLoadDelay:100,forceFitColumns:!1,enableAsyncPostRender:!1,asyncPostRenderDelay:50,enableAsyncPostRenderCleanup:!1,asyncPostRenderCleanupDelay:40,autoHeight:!1,editorLock:Slick.GlobalEditorLock,showColumnHeader:!0,showHeaderRow:!1,headerRowHeight:25,createFooterRow:!1,showFooterRow:!1,footerRowHeight:25,createPreHeaderPanel:!1,showPreHeaderPanel:!1,preHeaderPanelHeight:25,showTopPanel:!1,topPanelHeight:25,formatterFactory:null,editorFactory:null,cellFlashingCssClass:\"flashing\",selectedCellCssClass:\"selected\",multiSelect:!0,enableTextSelectionOnCells:!1,dataItemColumnValueExtractor:null,frozenBottom:!1,frozenColumn:-1,frozenRow:-1,fullWidthRows:!1,multiColumnSort:!1,numberedMultiColumnSort:!1,tristateMultiColumnSort:!1,sortColNumberInSeparateSpan:!1,defaultFormatter,forceSyncScrolling:!1,addNewRowCssClass:\"new-row\",preserveCopiedSelectionOnPaste:!1,showCellSelection:!0,viewportClass:null,minRowBuffer:3,emulatePagingWhenScrolling:!0,editorCellNavOnLRKeys:!1,doPaging:!0,autosizeColsMode:Slick.GridAutosizeColsMode.LegacyOff,autosizeColPaddingPx:4,autosizeTextAvgToMWidthRatio:.75,viewportSwitchToScrollModeWidthPercent:void 0,viewportMinWidthPx:void 0,viewportMaxWidthPx:void 0},columnDefaults={name:\"\",resizable:!0,sortable:!1,minWidth:30,maxWidth:void 0,rerenderOnResize:!1,headerCssClass:null,defaultSortAsc:!0,focusable:!0,selectable:!0},columnAutosizeDefaults={ignoreHeaderText:!1,colValueArray:void 0,allowAddlPercent:void 0,formatterOverride:void 0,autosizeMode:Slick.ColAutosizeMode.ContentIntelligent,rowSelectionModeOnInit:void 0,rowSelectionMode:Slick.RowSelectionMode.FirstNRows,rowSelectionCount:100,valueFilterMode:Slick.ValueFilterMode.None,widthEvalMode:Slick.WidthEvalMode.CanvasTextSize,sizeToRemaining:void 0,widthPx:void 0,colDataTypeOf:void 0},th,h,ph,n,cj,page=0,offset=0,vScrollDir=1,initialized=!1,$container,uid=\"slickgrid_\"+Math.round(1e6*Math.random()),self=this,$focusSink,$focusSink2,$groupHeaders=$(),$headerScroller,$headers,$headerRow,$headerRowScroller,$headerRowSpacerL,$headerRowSpacerR,$footerRow,$footerRowScroller,$footerRowSpacerL,$footerRowSpacerR,$preHeaderPanel,$preHeaderPanelScroller,$preHeaderPanelSpacer,$preHeaderPanelR,$preHeaderPanelScrollerR,$preHeaderPanelSpacerR,$topPanelScroller,$topPanel,$viewport,$canvas,$style,$boundAncestors,treeColumns,stylesheet,columnCssRulesL,columnCssRulesR,viewportH,viewportW,canvasWidth,canvasWidthL,canvasWidthR,headersWidth,headersWidthL,headersWidthR,viewportHasHScroll,viewportHasVScroll,headerColumnWidthDiff=0,headerColumnHeightDiff=0,cellWidthDiff=0,cellHeightDiff=0,jQueryNewWidthBehaviour=!1,absoluteColumnMinWidth,hasFrozenRows=!1,frozenRowsHeight=0,actualFrozenRow=-1,paneTopH=0,paneBottomH=0,viewportTopH=0,viewportBottomH=0,topPanelH=0,headerRowH=0,footerRowH=0,tabbingDirection=1,$activeCanvasNode,$activeViewportNode,activePosX,activeRow,activeCell,activeCellNode=null,currentEditor=null,serializedEditorValue,editController,rowsCache={},renderedRows=0,numVisibleRows=0,prevScrollTop=0,scrollTop=0,lastRenderedScrollTop=0,lastRenderedScrollLeft=0,prevScrollLeft=0,scrollLeft=0,selectionModel,selectedRows=[],plugins=[],cellCssClasses={},columnsById={},sortColumns=[],columnPosLeft=[],columnPosRight=[],pagingActive=!1,pagingIsLastPage=!1,scrollThrottle=ActionThrottle(render,50),h_editorLoader=null,h_render=null,h_postrender=null,h_postrenderCleanup=null,postProcessedRows={},postProcessToRow=null,postProcessFromRow=null,postProcessedCleanupQueue=[],postProcessgroupId=0,counter_rows_rendered=0,counter_rows_removed=0,rowNodeFromLastMouseWheelEvent,zombieRowNodeFromLastMouseWheelEvent,zombieRowCacheFromLastMouseWheelEvent,zombieRowPostProcessedFromLastMouseWheelEvent,$paneHeaderL,$paneHeaderR,$paneTopL,$paneTopR,$paneBottomL,$paneBottomR,$headerScrollerL,$headerScrollerR,$headerL,$headerR,$groupHeadersL,$groupHeadersR,$headerRowScrollerL,$headerRowScrollerR,$footerRowScrollerL,$footerRowScrollerR,$headerRowL,$headerRowR,$footerRowL,$footerRowR,$topPanelScrollerL,$topPanelScrollerR,$topPanelL,$topPanelR,$viewportTopL,$viewportTopR,$viewportBottomL,$viewportBottomR,$canvasTopL,$canvasTopR,$canvasBottomL,$canvasBottomR,$viewportScrollContainerX,$viewportScrollContainerY,$headerScrollContainer,$headerRowScrollContainer,$footerRowScrollContainer,cssShow={position:\"absolute\",visibility:\"hidden\",display:\"block\"},$hiddenParents,oldProps=[],columnResizeDragging=!1;function init(){if(($container=container instanceof $?container:$(container)).length<1)throw new Error(\"SlickGrid requires a valid container, \"+container+\" does not exist in the DOM.\");if(cacheCssForHiddenInit(),maxSupportedCssHeight=maxSupportedCssHeight||getMaxSupportedCssHeight(),options=$.extend({},defaults,options),validateAndEnforceOptions(),columnDefaults.width=options.defaultColumnWidth,treeColumns=new Slick.TreeColumns(columns),columns=treeColumns.extractColumns(),updateColumnProps(),options.enableColumnReorder&&!$.fn.sortable)throw new Error(\"SlickGrid's 'enableColumnReorder = true' option requires jquery-ui.sortable module to be loaded\");if(editController={commitCurrentEdit,cancelCurrentEdit},$container.empty().css(\"overflow\",\"hidden\").css(\"outline\",0).addClass(uid).addClass(\"ui-widget\"),/relative|absolute|fixed/.test($container.css(\"position\"))||$container.css(\"position\",\"relative\"),$focusSink=$(\"<div tabIndex='0' hideFocus style='position:fixed;width:0;height:0;top:0;left:0;outline:0;'></div>\").appendTo($container),$paneHeaderL=$(\"<div class='slick-pane slick-pane-header slick-pane-left' tabIndex='0' />\").appendTo($container),$paneHeaderR=$(\"<div class='slick-pane slick-pane-header slick-pane-right' tabIndex='0' />\").appendTo($container),$paneTopL=$(\"<div class='slick-pane slick-pane-top slick-pane-left' tabIndex='0' />\").appendTo($container),$paneTopR=$(\"<div class='slick-pane slick-pane-top slick-pane-right' tabIndex='0' />\").appendTo($container),$paneBottomL=$(\"<div class='slick-pane slick-pane-bottom slick-pane-left' tabIndex='0' />\").appendTo($container),$paneBottomR=$(\"<div class='slick-pane slick-pane-bottom slick-pane-right' tabIndex='0' />\").appendTo($container),options.createPreHeaderPanel&&($preHeaderPanelScroller=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($paneHeaderL),$preHeaderPanel=$(\"<div />\").appendTo($preHeaderPanelScroller),$preHeaderPanelSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($preHeaderPanelScroller),$preHeaderPanelScrollerR=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($paneHeaderR),$preHeaderPanelR=$(\"<div />\").appendTo($preHeaderPanelScrollerR),$preHeaderPanelSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($preHeaderPanelScrollerR),options.showPreHeaderPanel||($preHeaderPanelScroller.hide(),$preHeaderPanelScrollerR.hide())),$headerScrollerL=$(\"<div class='slick-header ui-state-default slick-header-left' />\").appendTo($paneHeaderL),$headerScrollerR=$(\"<div class='slick-header ui-state-default slick-header-right' />\").appendTo($paneHeaderR),$headerScroller=$().add($headerScrollerL).add($headerScrollerR),treeColumns.hasDepth()){$groupHeadersL=[],$groupHeadersR=[];for(var e=0;e<treeColumns.getDepth()-1;e++)$groupHeadersL[e]=$(\"<div class='slick-group-header-columns slick-group-header-columns-left' style='left:-1000px' />\").appendTo($headerScrollerL),$groupHeadersR[e]=$(\"<div class='slick-group-header-columns slick-group-header-columns-right' style='left:-1000px' />\").appendTo($headerScrollerR);$groupHeaders=$().add($groupHeadersL).add($groupHeadersR)}$headerL=$(\"<div class='slick-header-columns slick-header-columns-left' style='left:-1000px' />\").appendTo($headerScrollerL),$headerR=$(\"<div class='slick-header-columns slick-header-columns-right' style='left:-1000px' />\").appendTo($headerScrollerR),$headers=$().add($headerL).add($headerR),$headerRowScrollerL=$(\"<div class='slick-headerrow ui-state-default' />\").appendTo($paneTopL),$headerRowScrollerR=$(\"<div class='slick-headerrow ui-state-default' />\").appendTo($paneTopR),$headerRowScroller=$().add($headerRowScrollerL).add($headerRowScrollerR),$headerRowSpacerL=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($headerRowScrollerL),$headerRowSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($headerRowScrollerR),$headerRowL=$(\"<div class='slick-headerrow-columns slick-headerrow-columns-left' />\").appendTo($headerRowScrollerL),$headerRowR=$(\"<div class='slick-headerrow-columns slick-headerrow-columns-right' />\").appendTo($headerRowScrollerR),$headerRow=$().add($headerRowL).add($headerRowR),$topPanelScrollerL=$(\"<div class='slick-top-panel-scroller ui-state-default' />\").appendTo($paneTopL),$topPanelScrollerR=$(\"<div class='slick-top-panel-scroller ui-state-default' />\").appendTo($paneTopR),$topPanelScroller=$().add($topPanelScrollerL).add($topPanelScrollerR),$topPanelL=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScrollerL),$topPanelR=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScrollerR),$topPanel=$().add($topPanelL).add($topPanelR),options.showColumnHeader||$headerScroller.hide(),options.showTopPanel||$topPanelScroller.hide(),options.showHeaderRow||$headerRowScroller.hide(),$viewportTopL=$(\"<div class='slick-viewport slick-viewport-top slick-viewport-left' tabIndex='0' hideFocus />\").appendTo($paneTopL),$viewportTopR=$(\"<div class='slick-viewport slick-viewport-top slick-viewport-right' tabIndex='0' hideFocus />\").appendTo($paneTopR),$viewportBottomL=$(\"<div class='slick-viewport slick-viewport-bottom slick-viewport-left' tabIndex='0' hideFocus />\").appendTo($paneBottomL),$viewportBottomR=$(\"<div class='slick-viewport slick-viewport-bottom slick-viewport-right' tabIndex='0' hideFocus />\").appendTo($paneBottomR),$viewport=$().add($viewportTopL).add($viewportTopR).add($viewportBottomL).add($viewportBottomR),$activeViewportNode=$viewportTopL,$canvasTopL=$(\"<div class='grid-canvas grid-canvas-top grid-canvas-left' tabIndex='0' hideFocus />\").appendTo($viewportTopL),$canvasTopR=$(\"<div class='grid-canvas grid-canvas-top grid-canvas-right' tabIndex='0' hideFocus />\").appendTo($viewportTopR),$canvasBottomL=$(\"<div class='grid-canvas grid-canvas-bottom grid-canvas-left' tabIndex='0' hideFocus />\").appendTo($viewportBottomL),$canvasBottomR=$(\"<div class='grid-canvas grid-canvas-bottom grid-canvas-right' tabIndex='0' hideFocus />\").appendTo($viewportBottomR),options.viewportClass&&$viewport.toggleClass(options.viewportClass,!0),$canvas=$().add($canvasTopL).add($canvasTopR).add($canvasBottomL).add($canvasBottomR),scrollbarDimensions=scrollbarDimensions||measureScrollbar(),$activeCanvasNode=$canvasTopL,$preHeaderPanelSpacer&&$preHeaderPanelSpacer.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),$headers.width(getHeadersWidth()),$headerRowSpacerL.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),$headerRowSpacerR.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),options.createFooterRow&&($footerRowScrollerR=$(\"<div class='slick-footerrow ui-state-default' />\").appendTo($paneTopR),$footerRowScrollerL=$(\"<div class='slick-footerrow ui-state-default' />\").appendTo($paneTopL),$footerRowScroller=$().add($footerRowScrollerL).add($footerRowScrollerR),$footerRowSpacerL=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScrollerL),$footerRowSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScrollerR),$footerRowL=$(\"<div class='slick-footerrow-columns slick-footerrow-columns-left' />\").appendTo($footerRowScrollerL),$footerRowR=$(\"<div class='slick-footerrow-columns slick-footerrow-columns-right' />\").appendTo($footerRowScrollerR),$footerRow=$().add($footerRowL).add($footerRowR),options.showFooterRow||$footerRowScroller.hide()),$focusSink2=$focusSink.clone().appendTo($container),options.explicitInitialization||finishInitialization()}function finishInitialization(){initialized||(initialized=!0,getViewportWidth(),getViewportHeight(),measureCellPaddingAndBorder(),disableSelection($headers),options.enableTextSelectionOnCells||$viewport.on(\"selectstart.ui\",(function(e){return $(e.target).is(\"input,textarea\")})),setFrozenOptions(),setPaneVisibility(),setScroller(),setOverflow(),updateColumnCaches(),createColumnHeaders(),createColumnGroupHeaders(),createColumnFooter(),setupColumnSort(),createCssRules(),resizeCanvas(),bindAncestorScrollEvents(),$container.on(\"resize.slickgrid\",resizeCanvas),$viewport.on(\"scroll\",handleScroll),$.fn.mousewheel&&$viewport.on(\"mousewheel\",handleMouseWheel),$headerScroller.on(\"contextmenu\",handleHeaderContextMenu).on(\"click\",handleHeaderClick).on(\"mouseenter\",\".slick-header-column\",handleHeaderMouseEnter).on(\"mouseleave\",\".slick-header-column\",handleHeaderMouseLeave),$headerRowScroller.on(\"scroll\",handleHeaderRowScroll),options.createFooterRow&&($footerRow.on(\"contextmenu\",handleFooterContextMenu).on(\"click\",handleFooterClick),$footerRowScroller.on(\"scroll\",handleFooterRowScroll)),options.createPreHeaderPanel&&$preHeaderPanelScroller.on(\"scroll\",handlePreHeaderPanelScroll),$focusSink.add($focusSink2).on(\"keydown\",handleKeyDown),$canvas.on(\"keydown\",handleKeyDown).on(\"click\",handleClick).on(\"dblclick\",handleDblClick).on(\"contextmenu\",handleContextMenu).on(\"draginit\",handleDragInit).on(\"dragstart\",{distance:3},handleDragStart).on(\"drag\",handleDrag).on(\"dragend\",handleDragEnd).on(\"mouseenter\",\".slick-cell\",handleMouseEnter).on(\"mouseleave\",\".slick-cell\",handleMouseLeave),restoreCssFromHiddenInit())}function cacheCssForHiddenInit(){($hiddenParents=$container.parents().addBack().not(\":visible\")).each((function(){var e={};for(var o in cssShow)e[o]=this.style[o],this.style[o]=cssShow[o];oldProps.push(e)}))}function restoreCssFromHiddenInit(){$hiddenParents.each((function(e){var o=oldProps[e];for(var t in cssShow)this.style[t]=o[t]}))}function hasFrozenColumns(){return options.frozenColumn>-1}function registerPlugin(e){plugins.unshift(e),e.init(self)}function unregisterPlugin(e){for(var o=plugins.length;o>=0;o--)if(plugins[o]===e){plugins[o].destroy&&plugins[o].destroy(),plugins.splice(o,1);break}}function getPluginByName(e){for(var o=plugins.length-1;o>=0;o--)if(plugins[o].pluginName===e)return plugins[o]}function setSelectionModel(e){selectionModel&&(selectionModel.onSelectedRangesChanged.unsubscribe(handleSelectedRangesChanged),selectionModel.destroy&&selectionModel.destroy()),(selectionModel=e)&&(selectionModel.init(self),selectionModel.onSelectedRangesChanged.subscribe(handleSelectedRangesChanged))}function getSelectionModel(){return selectionModel}function getCanvasNode(e,o){e||(e=0),o||(o=0);var t=\"number\"==typeof e?e:getColumnIndex(e);return hasFrozenRows&&o>=actualFrozenRow+(options.frozenBottom?0:1)?hasFrozenColumns()&&t>options.frozenColumn?$canvasBottomR[0]:$canvasBottomL[0]:hasFrozenColumns()&&t>options.frozenColumn?$canvasTopR[0]:$canvasTopL[0]}function getActiveCanvasNode(e){return setActiveCanvasNode(e),$activeCanvasNode[0]}function getCanvases(){return $canvas}function setActiveCanvasNode(e){e&&($activeCanvasNode=$(e.target).closest(\".grid-canvas\"))}function getViewportNode(){return $viewport[0]}function getActiveViewportNode(e){return setActiveViewPortNode(e),$activeViewportNode[0]}function setActiveViewportNode(e){e&&($activeViewportNode=$(e.target).closest(\".slick-viewport\"))}function measureScrollbar(){var e=$('<div class=\"'+$viewport.className+'\" style=\"position:absolute; top:-10000px; left:-10000px; overflow:auto; width:100px; height:100px;\"></div>').appendTo(\"body\"),o=$('<div style=\"width:200px; height:200px; overflow:auto;\"></div>').appendTo(e),t={width:e[0].offsetWidth-e[0].clientWidth,height:e[0].offsetHeight-e[0].clientHeight};return o.remove(),e.remove(),t}function getHeadersWidth(){headersWidth=headersWidthL=headersWidthR=0;for(var e=!options.autoHeight,o=0,t=columns.length;o<t;o++){var n=columns[o].width;options.frozenColumn>-1&&o>options.frozenColumn?headersWidthR+=n:headersWidthL+=n}return e&&(options.frozenColumn>-1&&o>options.frozenColumn?headersWidthR+=scrollbarDimensions.width:headersWidthL+=scrollbarDimensions.width),hasFrozenColumns()?(headersWidthL+=1e3,headersWidthR=Math.max(headersWidthR,viewportW)+headersWidthL,headersWidthR+=scrollbarDimensions.width):(headersWidthL+=scrollbarDimensions.width,headersWidthL=Math.max(headersWidthL,viewportW)+1e3),headersWidth=headersWidthL+headersWidthR,Math.max(headersWidth,viewportW)+1e3}function getHeadersWidthL(){return headersWidthL=0,columns.forEach((function(e,o){options.frozenColumn>-1&&o>options.frozenColumn||(headersWidthL+=e.width)})),hasFrozenColumns()?headersWidthL+=1e3:(headersWidthL+=scrollbarDimensions.width,headersWidthL=Math.max(headersWidthL,viewportW)+1e3),headersWidthL}function getHeadersWidthR(){return headersWidthR=0,columns.forEach((function(e,o){options.frozenColumn>-1&&o>options.frozenColumn&&(headersWidthR+=e.width)})),hasFrozenColumns()&&(headersWidthR=Math.max(headersWidthR,viewportW)+getHeadersWidthL(),headersWidthR+=scrollbarDimensions.width),headersWidthR}function getCanvasWidth(){var e=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,o=columns.length;for(canvasWidthL=canvasWidthR=0;o--;)hasFrozenColumns()&&o>options.frozenColumn?canvasWidthR+=columns[o].width:canvasWidthL+=columns[o].width;var t=canvasWidthL+canvasWidthR;return options.fullWidthRows?Math.max(t,e):t}function updateCanvasWidth(e){var o,t=canvasWidth,n=canvasWidthL,l=canvasWidthR;((o=(canvasWidth=getCanvasWidth())!==t||canvasWidthL!==n||canvasWidthR!==l)||hasFrozenColumns()||hasFrozenRows)&&($canvasTopL.width(canvasWidthL),getHeadersWidth(),$headerL.width(headersWidthL),$headerR.width(headersWidthR),hasFrozenColumns()?($canvasTopR.width(canvasWidthR),$paneHeaderL.width(canvasWidthL),$paneHeaderR.css(\"left\",canvasWidthL),$paneHeaderR.css(\"width\",viewportW-canvasWidthL),$paneTopL.width(canvasWidthL),$paneTopR.css(\"left\",canvasWidthL),$paneTopR.css(\"width\",viewportW-canvasWidthL),$headerRowScrollerL.width(canvasWidthL),$headerRowScrollerR.width(viewportW-canvasWidthL),$headerRowL.width(canvasWidthL),$headerRowR.width(canvasWidthR),options.createFooterRow&&($footerRowScrollerL.width(canvasWidthL),$footerRowScrollerR.width(viewportW-canvasWidthL),$footerRowL.width(canvasWidthL),$footerRowR.width(canvasWidthR)),options.createPreHeaderPanel&&$preHeaderPanel.width(canvasWidth),$viewportTopL.width(canvasWidthL),$viewportTopR.width(viewportW-canvasWidthL),hasFrozenRows&&($paneBottomL.width(canvasWidthL),$paneBottomR.css(\"left\",canvasWidthL),$viewportBottomL.width(canvasWidthL),$viewportBottomR.width(viewportW-canvasWidthL),$canvasBottomL.width(canvasWidthL),$canvasBottomR.width(canvasWidthR))):($paneHeaderL.width(\"100%\"),$paneTopL.width(\"100%\"),$headerRowScrollerL.width(\"100%\"),$headerRowL.width(canvasWidth),options.createFooterRow&&($footerRowScrollerL.width(\"100%\"),$footerRowL.width(canvasWidth)),options.createPreHeaderPanel&&($preHeaderPanel.width(\"100%\"),$preHeaderPanel.width(canvasWidth)),$viewportTopL.width(\"100%\"),hasFrozenRows&&($viewportBottomL.width(\"100%\"),$canvasBottomL.width(canvasWidthL))),viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width),$headerRowSpacerL.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),$headerRowSpacerR.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),options.createFooterRow&&($footerRowSpacerL.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),$footerRowSpacerR.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0))),(o||e)&&applyColumnWidths()}function disableSelection(e){e&&e.jquery&&e.attr(\"unselectable\",\"on\").css(\"MozUserSelect\",\"none\").on(\"selectstart.ui\",(function(){return!1}))}function getMaxSupportedCssHeight(){for(var e=1e6,o=navigator.userAgent.toLowerCase().match(/firefox/)?6e6:1e9,t=$(\"<div style='display:none' />\").appendTo(document.body);;){var n=2*e;if(t.css(\"height\",n),n>o||t.height()!==n)break;e=n}return t.remove(),e}function getUID(){return uid}function getHeaderColumnWidthDiff(){return headerColumnWidthDiff}function getScrollbarDimensions(){return scrollbarDimensions}function bindAncestorScrollEvents(){for(var e=hasFrozenRows&&!options.frozenBottom?$canvasBottomL[0]:$canvasTopL[0];(e=e.parentNode)!=document.body&&null!=e;)if(e==$viewportTopL[0]||e.scrollWidth!=e.clientWidth||e.scrollHeight!=e.clientHeight){var o=$(e);$boundAncestors=$boundAncestors?$boundAncestors.add(o):o,o.on(\"scroll.\"+uid,handleActiveCellPositionChange)}}function unbindAncestorScrollEvents(){$boundAncestors&&($boundAncestors.off(\"scroll.\"+uid),$boundAncestors=null)}function updateColumnHeader(e,o,t){if(initialized){var n=getColumnIndex(e);if(null!=n){var l=columns[n],r=$headers.children().eq(n);r&&(void 0!==o&&(columns[n].name=o),void 0!==t&&(columns[n].toolTip=t),trigger(self.onBeforeHeaderCellDestroy,{node:r[0],column:l,grid:self}),r.attr(\"title\",t||\"\").children().eq(0).html(o),trigger(self.onHeaderCellRendered,{node:r[0],column:l,grid:self}))}}}function getHeader(e){if(!e)return hasFrozenColumns()?$headers:$headerL;var o=getColumnIndex(e.id);return hasFrozenColumns()?o<=options.frozenColumn?$headerL:$headerR:$headerL}function getHeaderColumn(e){var o=\"number\"==typeof e?e:getColumnIndex(e),t=hasFrozenColumns()?o<=options.frozenColumn?$headerL:$headerR:$headerL,n=hasFrozenColumns()?o<=options.frozenColumn?o:o-options.frozenColumn-1:o,l=t.children().eq(n);return l&&l[0]}function getHeaderRow(){return hasFrozenColumns()?$headerRow:$headerRow[0]}function getFooterRow(){return hasFrozenColumns()?$footerRow:$footerRow[0]}function getPreHeaderPanel(){return $preHeaderPanel[0]}function getPreHeaderPanelRight(){return $preHeaderPanelR[0]}function getHeaderRowColumn(e){var o,t=\"number\"==typeof e?e:getColumnIndex(e);hasFrozenColumns()?t<=options.frozenColumn?o=$headerRowL:(o=$headerRowR,t-=options.frozenColumn+1):o=$headerRowL;var n=o.children().eq(t);return n&&n[0]}function getFooterRowColumn(e){var o,t=\"number\"==typeof e?e:getColumnIndex(e);hasFrozenColumns()?t<=options.frozenColumn?o=$footerRowL:(o=$footerRowR,t-=options.frozenColumn+1):o=$footerRowL;var n=o&&o.children().eq(t);return n&&n[0]}function createColumnFooter(){if(options.createFooterRow){$footerRow.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowL.empty(),$footerRowR.empty();for(var e=0;e<columns.length;e++){var o=columns[e],t=$(\"<div class='ui-state-default slick-footerrow-column l\"+e+\" r\"+e+\"'></div>\").data(\"column\",o).addClass(hasFrozenColumns()&&e<=options.frozenColumn?\"frozen\":\"\").appendTo(hasFrozenColumns()&&e>options.frozenColumn?$footerRowR:$footerRowL);trigger(self.onFooterRowCellRendered,{node:t[0],column:o,grid:self})}}}function createColumnGroupHeaders(){var e=0,o=!1;if(treeColumns.hasDepth()){for(var t=0;t<$groupHeadersL.length;t++){$groupHeadersL[t].empty(),$groupHeadersR[t].empty();var n=treeColumns.getColumnsInDepth(t);for(var l in n){var r=n[l];e+=r.extractColumns().length,hasFrozenColumns()&&0===t&&e-1===options.frozenColumn&&(o=!0),$(\"<div class='ui-state-default slick-group-header-column' />\").html(\"<span class='slick-column-name'>\"+r.name+\"</span>\").attr(\"id\",\"\"+uid+r.id).attr(\"title\",r.toolTip||\"\").data(\"column\",r).addClass(r.headerCssClass||\"\").addClass(hasFrozenColumns()&&e-1>options.frozenColumn?\"frozen\":\"\").appendTo(hasFrozenColumns()&&e-1>options.frozenColumn?$groupHeadersR[t]:$groupHeadersL[t])}if(hasFrozenColumns()&&0===t&&!o){$groupHeadersL[t].empty(),$groupHeadersR[t].empty(),alert(\"All columns of group should to be grouped!\");break}}applyColumnGroupHeaderWidths()}}function createColumnHeaders(){function e(){$(this).addClass(\"ui-state-hover\")}function o(){$(this).removeClass(\"ui-state-hover\")}$headers.find(\".slick-header-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderCellDestroy,{node:this,column:e,grid:self})})),$headerL.empty(),$headerR.empty(),getHeadersWidth(),$headerL.width(headersWidthL),$headerR.width(headersWidthR),$headerRow.find(\".slick-headerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderRowCellDestroy,{node:this,column:e,grid:self})})),$headerRowL.empty(),$headerRowR.empty(),options.createFooterRow&&($footerRowL.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowL.empty(),hasFrozenColumns()&&($footerRowR.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowR.empty()));for(var t=0;t<columns.length;t++){var n=columns[t],l=hasFrozenColumns()?t<=options.frozenColumn?$headerL:$headerR:$headerL,r=hasFrozenColumns()?t<=options.frozenColumn?$headerRowL:$headerRowR:$headerRowL,i=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+n.name+\"</span>\").width(n.width-headerColumnWidthDiff).attr(\"id\",\"\"+uid+n.id).attr(\"title\",n.toolTip||\"\").data(\"column\",n).addClass(n.headerCssClass||\"\").addClass(hasFrozenColumns()&&t<=options.frozenColumn?\"frozen\":\"\").appendTo(l);if((options.enableColumnReorder||n.sortable)&&i.on(\"mouseenter\",e).on(\"mouseleave\",o),n.hasOwnProperty(\"headerCellAttrs\")&&n.headerCellAttrs instanceof Object)for(var a in n.headerCellAttrs)n.headerCellAttrs.hasOwnProperty(a)&&i.attr(a,n.headerCellAttrs[a]);if(n.sortable&&(i.addClass(\"slick-header-sortable\"),i.append(\"<span class='slick-sort-indicator\"+(options.numberedMultiColumnSort&&!options.sortColNumberInSeparateSpan?\" slick-sort-indicator-numbered\":\"\")+\"' />\"),options.numberedMultiColumnSort&&options.sortColNumberInSeparateSpan&&i.append(\"<span class='slick-sort-indicator-numbered' />\")),trigger(self.onHeaderCellRendered,{node:i[0],column:n,grid:self}),options.showHeaderRow){var s=$(\"<div class='ui-state-default slick-headerrow-column l\"+t+\" r\"+t+\"'></div>\").data(\"column\",n).addClass(hasFrozenColumns()&&t<=options.frozenColumn?\"frozen\":\"\").appendTo(r);trigger(self.onHeaderRowCellRendered,{node:s[0],column:n,grid:self})}if(options.createFooterRow&&options.showFooterRow){var d=$(\"<div class='ui-state-default slick-footerrow-column l\"+t+\" r\"+t+\"'></div>\").data(\"column\",n).appendTo($footerRow);trigger(self.onFooterRowCellRendered,{node:d[0],column:n,grid:self})}}setSortColumns(sortColumns),setupColumnResize(),options.enableColumnReorder&&(\"function\"==typeof options.enableColumnReorder?options.enableColumnReorder(self,$headers,headerColumnWidthDiff,setColumns,setupColumnResize,columns,getColumnIndex,uid,trigger):setupColumnReorder())}function setupColumnSort(){$headers.click((function(e){if(!columnResizeDragging&&(e.metaKey=e.metaKey||e.ctrlKey,!$(e.target).hasClass(\"slick-resizable-handle\"))){var o=$(e.target).closest(\".slick-header-column\");if(o.length){var t=o.data(\"column\");if(t.sortable){if(!getEditorLock().commitCurrentEdit())return;for(var n=null,l=0;l<sortColumns.length;l++)if(sortColumns[l].columnId==t.id){(n=sortColumns[l]).sortAsc=!n.sortAsc;break}var r=!!n;options.tristateMultiColumnSort?(n||(n={columnId:t.id,sortAsc:t.defaultSortAsc}),r&&n.sortAsc&&(sortColumns.splice(l,1),n=null),options.multiColumnSort||(sortColumns=[]),!n||r&&options.multiColumnSort||sortColumns.push(n)):e.metaKey&&options.multiColumnSort?n&&sortColumns.splice(l,1):((e.shiftKey||e.metaKey)&&options.multiColumnSort||(sortColumns=[]),n?0===sortColumns.length&&sortColumns.push(n):(n={columnId:t.id,sortAsc:t.defaultSortAsc},sortColumns.push(n))),setSortColumns(sortColumns),options.multiColumnSort?trigger(self.onSort,{multiColumnSort:!0,sortCols:$.map(sortColumns,(function(e){return{columnId:columns[getColumnIndex(e.columnId)].id,sortCol:columns[getColumnIndex(e.columnId)],sortAsc:e.sortAsc}}))},e):trigger(self.onSort,{multiColumnSort:!1,columnId:sortColumns.length>0?t.id:null,sortCol:sortColumns.length>0?t:null,sortAsc:!(sortColumns.length>0)||sortColumns[0].sortAsc},e)}}}}))}function currentPositionInHeader(e){var o=0;return $headers.find(\".slick-header-column\").each((function(t){if(this.id==e)return o=t,!1})),o}function limitPositionInGroup(e){var o,t=0,n=0;return treeColumns.getColumnsInDepth($groupHeadersL.length-1).some((function(l){return t=n,n+=l.columns.length,l.columns.some((function(t){return t.id===e&&(o=l),o})),o})),n--,{start:t,end:n,group:o}}function remove(e,o){var t=e.lastIndexOf(o);t>-1&&(e.splice(t,1),remove(e,o))}function columnPositionValidInGroup(e){var o=currentPositionInHeader(e[0].id),t=limitPositionInGroup(e.data(\"column\").id),n=t.start<=o&&o<=t.end;return{limit:t,valid:n,message:n?\"\":'Column \"'.concat(e.text(),'\" can be reordered only within the \"',t.group.name,'\" group!')}}function setupColumnReorder(){$headers.filter(\":ui-sortable\").sortable(\"destroy\");var e,o=null;function t(){$viewportScrollContainerX[0].scrollLeft=$viewportScrollContainerX[0].scrollLeft+10}function n(){$viewportScrollContainerX[0].scrollLeft=$viewportScrollContainerX[0].scrollLeft-10}$headers.sortable({containment:\"parent\",distance:3,axis:\"x\",cursor:\"default\",tolerance:\"intersection\",helper:\"clone\",placeholder:\"slick-sortable-placeholder ui-state-default slick-header-column\",start:function(o,t){t.placeholder.width(t.helper.outerWidth()-headerColumnWidthDiff),e=!hasFrozenColumns()||t.placeholder.offset().left+t.placeholder.width()>$viewportScrollContainerX.offset().left,$(t.helper).addClass(\"slick-header-column-active\")},beforeStop:function(e,o){$(o.helper).removeClass(\"slick-header-column-active\")},sort:function(l,r){e&&l.originalEvent.pageX>$container[0].clientWidth?o||(o=setInterval(t,100)):e&&l.originalEvent.pageX<$viewportScrollContainerX.offset().left?o||(o=setInterval(n,100)):(clearInterval(o),o=null)},stop:function(e,t){var n=!1;clearInterval(o),o=null;var l=null;if(treeColumns.hasDepth()){var r=columnPositionValidInGroup(t.item);l=r.limit,(n=!r.valid)&&alert(r.message)}if(!n&&getEditorLock().commitCurrentEdit()){var i=$headerL.sortable(\"toArray\");i=i.concat($headerR.sortable(\"toArray\"));for(var a=[],s=0;s<i.length;s++)a.push(columns[getColumnIndex(i[s].replace(uid,\"\"))]);setColumns(a),trigger(self.onColumnsReordered,{impactedColumns:getImpactedColumns(l)}),e.stopPropagation(),setupColumnResize()}else $(this).sortable(\"cancel\")}})}function getImpactedColumns(e){var o=[];if(e)for(var t=e.start;t<=e.end;t++)o.push(columns[t]);else o=columns;return o}function setupColumnResize(){var e,o,t,n,l,r,i,a,s;(l=$headers.children()).find(\".slick-resizable-handle\").remove(),l.each((function(e,o){e>=columns.length||columns[e].resizable&&(void 0===a&&(a=e),s=e)})),void 0!==a&&l.each((function(d,c){d>=columns.length||d<a||options.forceFitColumns&&d>=s||($(c),$(\"<div class='slick-resizable-handle' />\").appendTo(c).on(\"dragstart\",(function(o,a){if(!getEditorLock().commitCurrentEdit())return!1;n=o.pageX,$(this).parent().addClass(\"slick-header-column-active\");var s=null,c=null;if(l.each((function(e,o){e>=columns.length||(columns[e].previousWidth=$(o).outerWidth())})),options.forceFitColumns)for(s=0,c=0,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(null!==c&&(t.maxWidth?c+=t.maxWidth-t.previousWidth:c=null),s+=t.previousWidth-Math.max(t.minWidth||0,absoluteColumnMinWidth));var u=0,h=0;for(e=0;e<=d;e++)(t=columns[e]).resizable&&(null!==h&&(t.maxWidth?h+=t.maxWidth-t.previousWidth:h=null),u+=t.previousWidth-Math.max(t.minWidth||0,absoluteColumnMinWidth));null===s&&(s=1e5),null===u&&(u=1e5),null===c&&(c=1e5),null===h&&(h=1e5),i=n+Math.min(s,h),r=n-Math.min(u,c)})).on(\"drag\",(function(l,a){columnResizeDragging=!0;var s,c,u=Math.min(i,Math.max(r,l.pageX))-n,h=0;if(u<0){for(c=u,e=d;e>=0;e--)(t=columns[e]).resizable&&(s=Math.max(t.minWidth||0,absoluteColumnMinWidth),c&&t.previousWidth+c<s?(c+=t.previousWidth-s,t.width=s):(t.width=t.previousWidth+c,c=0));for(o=0;o<=d;o++)t=columns[o],hasFrozenColumns()&&o>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0),hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width);else for(e=d+1;e<columns.length;e++)t=columns[e],hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0))}else{for(c=u,h=0,0,e=d;e>=0;e--)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0));for(o=0;o<=d;o++)t=columns[o],hasFrozenColumns()&&o>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(s=Math.max(t.minWidth||0,absoluteColumnMinWidth),c&&t.previousWidth+c<s?(c+=t.previousWidth-s,t.width=s):(t.width=t.previousWidth+c,c=0),hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width);else for(e=d+1;e<columns.length;e++)t=columns[e],hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width}hasFrozenColumns()&&h!=canvasWidthL&&($headerL.width(h+1e3),$paneHeaderR.css(\"left\",h)),applyColumnHeaderWidths(),applyColumnGroupHeaderWidths(),options.syncColumnCellResize&&applyColumnWidths(),trigger(self.onColumnsDrag,{triggeredByColumn:$(this).parent().attr(\"id\").replace(uid,\"\"),resizeHandle:$(this)})})).on(\"dragend\",(function(o,n){$(this).parent().removeClass(\"slick-header-column-active\");var r,i=$(this).parent().attr(\"id\").replace(uid,\"\");for(!0===trigger(self.onBeforeColumnsResize,{triggeredByColumn:i})&&(applyColumnHeaderWidths(),applyColumnGroupHeaderWidths()),e=0;e<columns.length;e++)t=columns[e],r=$(l[e]).outerWidth(),t.previousWidth!==r&&t.rerenderOnResize&&invalidateAllRows();updateCanvasWidth(!0),render(),trigger(self.onColumnsResized,{triggeredByColumn:i}),setTimeout((function(){columnResizeDragging=!1}),300)})))}))}function getVBoxDelta(e){var o=0;return e&&\"function\"==typeof e.css&&$.each([\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],(function(t,n){o+=parseFloat(e.css(n))||0})),o}function setFrozenOptions(){if(options.frozenColumn=options.frozenColumn>=0&&options.frozenColumn<columns.length?parseInt(options.frozenColumn):-1,options.frozenRow>-1){hasFrozenRows=!0,frozenRowsHeight=options.frozenRow*options.rowHeight;var e=getDataLength();actualFrozenRow=options.frozenBottom?e-options.frozenRow:options.frozenRow}else hasFrozenRows=!1}function setPaneVisibility(){hasFrozenColumns()?($paneHeaderR.show(),$paneTopR.show(),hasFrozenRows?($paneBottomL.show(),$paneBottomR.show()):($paneBottomR.hide(),$paneBottomL.hide())):($paneHeaderR.hide(),$paneTopR.hide(),$paneBottomR.hide(),hasFrozenRows?$paneBottomL.show():($paneBottomR.hide(),$paneBottomL.hide()))}function setOverflow(){$viewportTopL.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"scroll\":hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"auto\",\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":hasFrozenColumns()?\"hidden\":hasFrozenRows?\"scroll\":\"auto\"}),$viewportTopR.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"scroll\":hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"auto\",\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":(hasFrozenColumns(),hasFrozenRows?\"scroll\":\"auto\")}),$viewportBottomL.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"scroll\":\"auto\":(hasFrozenRows&&options.alwaysAllowHorizontalScroll,\"auto\"),\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":hasFrozenColumns()?\"hidden\":hasFrozenRows?\"scroll\":\"auto\"}),$viewportBottomR.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"scroll\":\"auto\":(hasFrozenRows&&options.alwaysAllowHorizontalScroll,\"auto\"),\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":(hasFrozenColumns(),\"auto\")}),options.viewportClass&&($viewportTopL.toggleClass(options.viewportClass,!0),$viewportTopR.toggleClass(options.viewportClass,!0),$viewportBottomL.toggleClass(options.viewportClass,!0),$viewportBottomR.toggleClass(options.viewportClass,!0))}function setScroller(){hasFrozenColumns()?($headerScrollContainer=$headerScrollerR,$headerRowScrollContainer=$headerRowScrollerR,$footerRowScrollContainer=$footerRowScrollerR,hasFrozenRows?options.frozenBottom?($viewportScrollContainerX=$viewportBottomR,$viewportScrollContainerY=$viewportTopR):$viewportScrollContainerX=$viewportScrollContainerY=$viewportBottomR:$viewportScrollContainerX=$viewportScrollContainerY=$viewportTopR):($headerScrollContainer=$headerScrollerL,$headerRowScrollContainer=$headerRowScrollerL,$footerRowScrollContainer=$footerRowScrollerL,hasFrozenRows?options.frozenBottom?($viewportScrollContainerX=$viewportBottomL,$viewportScrollContainerY=$viewportTopL):$viewportScrollContainerX=$viewportScrollContainerY=$viewportBottomL:$viewportScrollContainerX=$viewportScrollContainerY=$viewportTopL)}function measureCellPaddingAndBorder(){var e,o=[\"borderLeftWidth\",\"borderRightWidth\",\"paddingLeft\",\"paddingRight\"],t=[\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],n=$.fn.jquery.split(\".\");jQueryNewWidthBehaviour=1==n[0]&&n[1]>=8||n[0]>=2,e=$(\"<div class='ui-state-default slick-header-column' style='visibility:hidden'>-</div>\").appendTo($headers),headerColumnWidthDiff=headerColumnHeightDiff=0,\"border-box\"!=e.css(\"box-sizing\")&&\"border-box\"!=e.css(\"-moz-box-sizing\")&&\"border-box\"!=e.css(\"-webkit-box-sizing\")&&($.each(o,(function(o,t){headerColumnWidthDiff+=parseFloat(e.css(t))||0})),$.each(t,(function(o,t){headerColumnHeightDiff+=parseFloat(e.css(t))||0}))),e.remove();var l=$(\"<div class='slick-row' />\").appendTo($canvas);e=$(\"<div class='slick-cell' id='' style='visibility:hidden'>-</div>\").appendTo(l),cellWidthDiff=cellHeightDiff=0,\"border-box\"!=e.css(\"box-sizing\")&&\"border-box\"!=e.css(\"-moz-box-sizing\")&&\"border-box\"!=e.css(\"-webkit-box-sizing\")&&($.each(o,(function(o,t){cellWidthDiff+=parseFloat(e.css(t))||0})),$.each(t,(function(o,t){cellHeightDiff+=parseFloat(e.css(t))||0}))),l.remove(),absoluteColumnMinWidth=Math.max(headerColumnWidthDiff,cellWidthDiff)}function createCssRules(){$style=$(\"<style type='text/css' rel='stylesheet' />\").appendTo($(\"head\"));for(var e=options.rowHeight-cellHeightDiff,o=[\".\"+uid+\" .slick-group-header-column { left: 1000px; }\",\".\"+uid+\" .slick-header-column { left: 1000px; }\",\".\"+uid+\" .slick-top-panel { height:\"+options.topPanelHeight+\"px; }\",\".\"+uid+\" .slick-preheader-panel { height:\"+options.preHeaderPanelHeight+\"px; }\",\".\"+uid+\" .slick-headerrow-columns { height:\"+options.headerRowHeight+\"px; }\",\".\"+uid+\" .slick-footerrow-columns { height:\"+options.footerRowHeight+\"px; }\",\".\"+uid+\" .slick-cell { height:\"+e+\"px; }\",\".\"+uid+\" .slick-row { height:\"+options.rowHeight+\"px; }\"],t=0;t<columns.length;t++)o.push(\".\"+uid+\" .l\"+t+\" { }\"),o.push(\".\"+uid+\" .r\"+t+\" { }\");$style[0].styleSheet?$style[0].styleSheet.cssText=o.join(\" \"):$style[0].appendChild(document.createTextNode(o.join(\" \")))}function getColumnCssRules(e){var o;if(!stylesheet){var t=document.styleSheets;for(o=0;o<t.length;o++)if((t[o].ownerNode||t[o].owningElement)==$style[0]){stylesheet=t[o];break}if(!stylesheet)throw new Error(\"Cannot find stylesheet.\");columnCssRulesL=[],columnCssRulesR=[];var n,l,r=stylesheet.cssRules||stylesheet.rules;for(o=0;o<r.length;o++){var i=r[o].selectorText;(n=/\\.l\\d+/.exec(i))?(l=parseInt(n[0].substr(2,n[0].length-2),10),columnCssRulesL[l]=r[o]):(n=/\\.r\\d+/.exec(i))&&(l=parseInt(n[0].substr(2,n[0].length-2),10),columnCssRulesR[l]=r[o])}}return{left:columnCssRulesL[e],right:columnCssRulesR[e]}}function removeCssRules(){$style.remove(),stylesheet=null}function destroy(){getEditorLock().cancelCurrentEdit(),trigger(self.onBeforeDestroy,{});for(var e=plugins.length;e--;)unregisterPlugin(plugins[e]);options.enableColumnReorder&&$headers.filter(\":ui-sortable\").sortable(\"destroy\"),unbindAncestorScrollEvents(),$container.off(\".slickgrid\"),removeCssRules(),$canvas.off(\"draginit dragstart dragend drag\"),$container.empty().removeClass(uid)}var canvas=null,canvas_context=null;function autosizeColumn(e,o){var t=e;if(\"number\"==typeof e)t=columns[e];else if(\"string\"==typeof e)for(var n=0;n<columns.length;n++)columns[n].Id===e&&(t=columns[n]);getColAutosizeWidth(t,$(getCanvasNode(0,0)),o)}function autosizeColumns(e,o){if((e=e||options.autosizeColsMode)!==Slick.GridAutosizeColsMode.LegacyForceFit&&e!==Slick.GridAutosizeColsMode.LegacyOff){if(e!==Slick.GridAutosizeColsMode.None){(canvas=document.createElement(\"canvas\"))&&canvas.getContext&&(canvas_context=canvas.getContext(\"2d\"));var t,n,l,r,i=$(getCanvasNode(0,0)),a=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,s=0,d=0,c=0,u=0,h=0;for(t=0;t<columns.length;t++)getColAutosizeWidth(n=columns[t],i,o),h+=n.autoSize.autosizeMode===Slick.ColAutosizeMode.Locked?n.width:0,u+=n.autoSize.autosizeMode===Slick.ColAutosizeMode.Locked?n.width:n.minWidth,s+=n.autoSize.widthPx,d+=n.autoSize.sizeToRemaining?0:n.autoSize.widthPx,c+=n.autoSize.sizeToRemaining&&n.minWidth||0;var p=s-d;if(e===Slick.GridAutosizeColsMode.FitViewportToCols){var m=s+scrollbarDimensions.width;e=Slick.GridAutosizeColsMode.IgnoreViewport,options.viewportMaxWidthPx&&m>options.viewportMaxWidthPx?(m=options.viewportMaxWidthPx,e=Slick.GridAutosizeColsMode.FitColsToViewport):options.viewportMinWidthPx&&m<options.viewportMinWidthPx&&(m=options.viewportMinWidthPx,e=Slick.GridAutosizeColsMode.FitColsToViewport),$container.width(m)}if(e===Slick.GridAutosizeColsMode.FitColsToViewport)if(p>0&&d<a-c)for(t=0;t<columns.length;t++){var w=a-d;l=(n=columns[t]).autoSize.sizeToRemaining?w*n.autoSize.widthPx/p:n.autoSize.widthPx,n.rerenderOnResize&&n.width!=l&&(r=!0),n.width=l}else if(options.viewportSwitchToScrollModeWidthPercent&&d+c>a*options.viewportSwitchToScrollModeWidthPercent/100||u>a)e=Slick.GridAutosizeColsMode.IgnoreViewport;else{var v=d-h,f=a-h-c;for(t=0;t<columns.length;t++)l=(n=columns[t]).width,n.autoSize.autosizeMode!==Slick.ColAutosizeMode.Locked&&(n.autoSize.sizeToRemaining?l=n.minWidth:((l=f/v*n.autoSize.widthPx)<n.minWidth&&(l=n.minWidth),v-=n.autoSize.widthPx,f-=l)),n.rerenderOnResize&&n.width!=l&&(r=!0),n.width=l}if(e===Slick.GridAutosizeColsMode.IgnoreViewport)for(t=0;t<columns.length;t++)l=columns[t].autoSize.widthPx,columns[t].rerenderOnResize&&columns[t].width!=l&&(r=!0),columns[t].width=l;reRenderColumns(r)}}else legacyAutosizeColumns()}function LogColWidths(){for(var e=\"Col Widths:\",o=0;o<columns.length;o++)e+=\" \"+columns[o].width;console.log(e)}function getColAutosizeWidth(e,o,t){var n=e.autoSize;if(n.widthPx=e.width,n.autosizeMode!==Slick.ColAutosizeMode.Locked&&n.autosizeMode!==Slick.ColAutosizeMode.Guide){var l=getDataLength();if(n.autosizeMode===Slick.ColAutosizeMode.ContentIntelligent){var r,i=n.colDataTypeOf;if(l>0){var a=getDataItem(0);a&&\"object\"===(i=typeof(r=a[e.field]))&&(r instanceof Date&&(i=\"date\"),\"undefined\"!=typeof moment&&r instanceof moment&&(i=\"moment\"))}\"boolean\"===i&&(n.colValueArray=[!0,!1]),\"number\"===i&&(n.valueFilterMode=Slick.ValueFilterMode.GetGreatestAndSub,n.rowSelectionMode=Slick.RowSelectionMode.AllRows),\"string\"===i&&(n.valueFilterMode=Slick.ValueFilterMode.GetLongestText,n.rowSelectionMode=Slick.RowSelectionMode.AllRows,n.allowAddlPercent=5),\"date\"===i&&(n.colValueArray=[new Date(2009,8,30,12,20,20)]),\"moment\"===i&&\"undefined\"!=typeof moment&&(n.colValueArray=[moment([2009,8,30,12,20,20])])}var s=getColContentSize(e,o,t);s=s*(n.allowAddlPercent?1+n.allowAddlPercent/100:1)+options.autosizeColPaddingPx,e.minWidth&&s<e.minWidth&&(s=e.minWidth),e.maxWidth&&s>e.maxWidth&&(s=e.maxWidth),n.widthPx=s}}function getColContentSize(e,o,t){var n,l=e.autoSize,r=1,i=0,a=0;if(l.ignoreHeaderText||(a=getColHeaderWidth(e)),l.colValueArray)return i=getColWidth(e,o,l.colValueArray),Math.max(a,i);var s=getData();s.getItems&&(s=s.getItems());var d=(t?l.rowSelectionModeOnInit:void 0)||l.rowSelectionMode;if(d===Slick.RowSelectionMode.FirstRow&&(s=s.slice(0,1)),d===Slick.RowSelectionMode.LastRow&&(s=s.slice(s.length-1,s.length)),d===Slick.RowSelectionMode.FirstNRows&&(s=s.slice(0,l.rowSelectionCount)),l.valueFilterMode===Slick.ValueFilterMode.DeDuplicate){var c={};for(u=0,n=s.length;u<n;u++)c[s[u][e.field]]=!0;if(Object.keys)s=Object.keys(c);else for(var u in s=[],c)s.push(u)}if(l.valueFilterMode===Slick.ValueFilterMode.GetGreatestAndSub){var h,p=0;for(u=0,n=s.length;u<n;u++)w=s[u][e.field],Math.abs(w)>p&&(h=w,p=Math.abs(w));h=\"\"+h,s=[h=+(h=Array(h.length+1).join(\"9\"))]}if(l.valueFilterMode===Slick.ValueFilterMode.GetLongestTextAndSub){var m=0;for(u=0,n=s.length;u<n;u++)((w=s[u][e.field])||\"\").length>m&&(m=w.length);w=Array(m+1).join(\"m\"),r=options.autosizeTextAvgToMWidthRatio,s=[w]}if(l.valueFilterMode===Slick.ValueFilterMode.GetLongestText){m=0;var w,v=0;for(u=0,n=s.length;u<n;u++)((w=s[u][e.field])||\"\").length>m&&(m=w.length,v=u);s=[w=s[v][e.field]]}return i=getColWidth(e,o,s)*r,Math.max(a,i)}function getColWidth(e,o,t){var n=getColumnIndex(e.id),l=$('<div class=\"slick-row ui-widget-content\"></div>'),r=$('<div class=\"slick-cell\"></div>');r.css({position:\"absolute\",visibility:\"hidden\",\"text-overflow\":\"initial\",\"white-space\":\"nowrap\"}),l.append(r),o.append(l);var i,a,s,d,c=0;return canvas_context&&e.autoSize.widthEvalMode===Slick.WidthEvalMode.CanvasTextSize?(canvas_context.font=r.css(\"font-size\")+\" \"+r.css(\"font-family\"),$(t).each((function(o,t){d=Array.isArray(t)?t[e.field]:t,(i=(a=\"\"+d)?canvas_context.measureText(a).width:0)>c&&(c=i,s=a)})),r.html(s),i=r.outerWidth(),l.remove(),i):($(t).each((function(o,t){d=Array.isArray(t)?t[e.field]:t,applyFormatResultToCellNode(e.formatterOverride?e.formatterOverride(o,n,d,e,t):e.formatter?e.formatter(o,n,d,e,t):\"\"+d,r[0]),(i=r.outerWidth())>c&&(c=i)})),l.remove(),c)}function getColHeaderWidth(e){var o=0,t=getUID()+e.id,n=document.getElementById(t),l=t+\"_\";if(n){var r=n.cloneNode(!0);r.id=l,r.style.cssText=\"position: absolute; visibility: hidden;right: auto;text-overflow: initial;white-space: nowrap;\",n.parentNode.insertBefore(r,n),o=r.offsetWidth,r.parentNode.removeChild(r)}else{var i=getHeader(e);o=(n=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+e.name+\"</span>\").attr(\"id\",l).css({position:\"absolute\",visibility:\"hidden\",right:\"auto\",\"text-overflow:\":\"initial\",\"white-space\":\"nowrap\"}).addClass(e.headerCssClass||\"\").appendTo(i))[0].offsetWidth,i[0].removeChild(n[0])}return o}function legacyAutosizeColumns(){var e,o,t,n=[],l=0,r=0,i=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW;for(e=0;e<columns.length;e++)o=columns[e],n.push(o.width),r+=o.width,o.resizable&&(l+=o.width-Math.max(o.minWidth,absoluteColumnMinWidth));for(t=r;r>i&&l;){var a=(r-i)/l;for(e=0;e<columns.length&&r>i;e++){o=columns[e];var s=n[e];if(!(!o.resizable||s<=o.minWidth||s<=absoluteColumnMinWidth)){var d=Math.max(o.minWidth,absoluteColumnMinWidth),c=Math.floor(a*(s-d))||1;r-=c=Math.min(c,s-d),l-=c,n[e]-=c}}if(t<=r)break;t=r}for(t=r;r<i;){var u=i/r;for(e=0;e<columns.length&&r<i;e++){o=columns[e];var h,p=n[e];r+=h=!o.resizable||o.maxWidth<=p?0:Math.min(Math.floor(u*p)-p,o.maxWidth-p||1e6)||1,n[e]+=r<=i?h:0}if(t>=r)break;t=r}var m=!1;for(e=0;e<columns.length;e++)columns[e].rerenderOnResize&&columns[e].width!=n[e]&&(m=!0),columns[e].width=n[e];reRenderColumns(m)}function reRenderColumns(e){applyColumnHeaderWidths(),applyColumnGroupHeaderWidths(),updateCanvasWidth(!0),trigger(self.onAutosizeColumns,{columns}),e&&(invalidateAllRows(),render())}function trigger(e,o,t){return t=t||new Slick.EventData,(o=o||{}).grid=self,e.notify(o,t,self)}function getEditorLock(){return options.editorLock}function getEditController(){return editController}function getColumnIndex(e){return columnsById[e]}function applyColumnGroupHeaderWidths(){if(treeColumns.hasDepth())for(var e=$groupHeadersL.length-1;e>=0;e--){treeColumns.getColumnsInDepth(e);$().add($groupHeadersL[e]).add($groupHeadersR[e]).each((function(e){var o=$(this),t=0;o.width(0===e?getHeadersWidthL():getHeadersWidthR()),o.children().each((function(){var e=$(this),n=$(this).data(\"column\");n.width=0,n.columns.forEach((function(){var e=o.next().children(\":eq(\"+t+++\")\");n.width+=e.outerWidth()})),e.width(n.width-headerColumnWidthDiff)}))}))}}function applyColumnHeaderWidths(){if(initialized){for(var e,o=0,t=$headers.children(),n=columns.length;o<n;o++)e=$(t[o]),jQueryNewWidthBehaviour?e.outerWidth()!==columns[o].width&&e.outerWidth(columns[o].width):e.width()!==columns[o].width-headerColumnWidthDiff&&e.width(columns[o].width-headerColumnWidthDiff);updateColumnCaches()}}function applyColumnWidths(){for(var e,o,t=0,n=0;n<columns.length;n++)e=columns[n].width,(o=getColumnCssRules(n)).left.style.left=t+\"px\",o.right.style.right=(-1!=options.frozenColumn&&n>options.frozenColumn?canvasWidthR:canvasWidthL)-t-e+\"px\",options.frozenColumn==n?t=0:t+=columns[n].width}function setSortColumn(e,o){setSortColumns([{columnId:e,sortAsc:o}])}function setSortColumns(e){sortColumns=e;var o=options.numberedMultiColumnSort&&sortColumns.length>1,t=$headers.children();t.removeClass(\"slick-header-column-sorted\").find(\".slick-sort-indicator\").removeClass(\"slick-sort-indicator-asc slick-sort-indicator-desc\"),t.find(\".slick-sort-indicator-numbered\").text(\"\"),$.each(sortColumns,(function(e,n){null==n.sortAsc&&(n.sortAsc=!0);var l=getColumnIndex(n.columnId);null!=l&&(t.eq(l).addClass(\"slick-header-column-sorted\").find(\".slick-sort-indicator\").addClass(n.sortAsc?\"slick-sort-indicator-asc\":\"slick-sort-indicator-desc\"),o&&t.eq(l).find(\".slick-sort-indicator-numbered\").text(e+1))}))}function getSortColumns(){return sortColumns}function handleSelectedRangesChanged(e,o){var t=selectedRows.slice(0);selectedRows=[];for(var n={},l=0;l<o.length;l++)for(var r=o[l].fromRow;r<=o[l].toRow;r++){n[r]||(selectedRows.push(r),n[r]={});for(var i=o[l].fromCell;i<=o[l].toCell;i++)canCellBeSelected(r,i)&&(n[r][columns[i].id]=options.selectedCellCssClass)}setCellCssStyles(options.selectedCellCssClass,n),simpleArrayEquals(t,selectedRows)&&trigger(self.onSelectedRowsChanged,{rows:getSelectedRows(),previousSelectedRows:t},e)}function simpleArrayEquals(e,o){return Array.isArray(e)&&Array.isArray(o)&&o.sort().toString()!==e.sort().toString()}function getColumns(){return columns}function updateColumnCaches(){columnPosLeft=[],columnPosRight=[];for(var e=0,o=0,t=columns.length;o<t;o++)columnPosLeft[o]=e,columnPosRight[o]=e+columns[o].width,options.frozenColumn==o?e=0:e+=columns[o].width}function updateColumnProps(){columnsById={};for(var e=0;e<columns.length;e++){columns[e].width&&(columns[e].widthRequest=columns[e].width);var o=columns[e]=$.extend({},columnDefaults,columns[e]);o.autoSize=$.extend({},columnAutosizeDefaults,o.autoSize),columnsById[o.id]=e,o.minWidth&&o.width<o.minWidth&&(o.width=o.minWidth),o.maxWidth&&o.width>o.maxWidth&&(o.width=o.maxWidth),o.resizable}}function setColumns(e){var o=new Slick.TreeColumns(e);columns=o.hasDepth()?(treeColumns=o).extractColumns():e,updateColumnProps(),updateColumnCaches(),initialized&&(setPaneVisibility(),setOverflow(),invalidateAllRows(),createColumnHeaders(),createColumnGroupHeaders(),createColumnFooter(),removeCssRules(),createCssRules(),resizeCanvas(),updateCanvasWidth(),applyColumnHeaderWidths(),applyColumnWidths(),handleScroll())}function getOptions(){return options}function setOptions(e,o){if(getEditorLock().commitCurrentEdit()){makeActiveCellNormal(),void 0!==e.showColumnHeader&&setColumnHeaderVisibility(e.showColumnHeader),options.enableAddRow!==e.enableAddRow&&invalidateRow(getDataLength());var t=$.extend(!0,{},options);options=$.extend(options,e),trigger(self.onSetOptions,{optionsBefore:t,optionsAfter:options}),validateAndEnforceOptions(),$viewport.css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),o||render(),setFrozenOptions(),setScroller(),zombieRowNodeFromLastMouseWheelEvent=null,setColumns(treeColumns.extractColumns())}}function validateAndEnforceOptions(){options.autoHeight&&(options.leaveSpaceForNewRows=!1),options.forceFitColumns&&(options.autosizeColsMode=Slick.GridAutosizeColsMode.LegacyForceFit,console.log(\"forceFitColumns option is deprecated - use autosizeColsMode\"))}function setData(e,o){data=e,invalidateAllRows(),updateRowCount(),o&&scrollTo(0)}function getData(){return data}function getDataLength(){return data.getLength?data.getLength():data&&data.length||0}function getDataLengthIncludingAddNew(){return getDataLength()+(options.enableAddRow&&(!pagingActive||pagingIsLastPage)?1:0)}function getDataItem(e){return data.getItem?data.getItem(e):data[e]}function getTopPanel(){return $topPanel[0]}function setTopPanelVisibility(e,o){var t=!1!==o;options.showTopPanel!=e&&(options.showTopPanel=e,e?t?$topPanelScroller.slideDown(\"fast\",resizeCanvas):($topPanelScroller.show(),resizeCanvas()):t?$topPanelScroller.slideUp(\"fast\",resizeCanvas):($topPanelScroller.hide(),resizeCanvas()))}function setHeaderRowVisibility(e,o){var t=!1!==o;options.showHeaderRow!=e&&(options.showHeaderRow=e,e?t?$headerRowScroller.slideDown(\"fast\",resizeCanvas):($headerRowScroller.show(),resizeCanvas()):t?$headerRowScroller.slideUp(\"fast\",resizeCanvas):($headerRowScroller.hide(),resizeCanvas()))}function setColumnHeaderVisibility(e,o){options.showColumnHeader!=e&&(options.showColumnHeader=e,e?o?$headerScroller.slideDown(\"fast\",resizeCanvas):($headerScroller.show(),resizeCanvas()):o?$headerScroller.slideUp(\"fast\",resizeCanvas):($headerScroller.hide(),resizeCanvas()))}function setFooterRowVisibility(e,o){var t=!1!==o;options.showFooterRow!=e&&(options.showFooterRow=e,e?t?$footerRowScroller.slideDown(\"fast\",resizeCanvas):($footerRowScroller.show(),resizeCanvas()):t?$footerRowScroller.slideUp(\"fast\",resizeCanvas):($footerRowScroller.hide(),resizeCanvas()))}function setPreHeaderPanelVisibility(e,o){var t=!1!==o;options.showPreHeaderPanel!=e&&(options.showPreHeaderPanel=e,e?t?$preHeaderPanelScroller.slideDown(\"fast\",resizeCanvas):($preHeaderPanelScroller.show(),resizeCanvas()):t?$preHeaderPanelScroller.slideUp(\"fast\",resizeCanvas):($preHeaderPanelScroller.hide(),resizeCanvas()))}function getContainerNode(){return $container.get(0)}function getRowTop(e){return options.rowHeight*e-offset}function getRowFromPosition(e){return Math.floor((e+offset)/options.rowHeight)}function scrollTo(e){e=Math.max(e,0),e=Math.min(e,th-$viewportScrollContainerY.height()+(viewportHasHScroll||hasFrozenColumns()?scrollbarDimensions.height:0));var o=offset;page=Math.min(n-1,Math.floor(e/ph));var t=e-(offset=Math.round(page*cj));offset!=o&&(cleanupRows(getVisibleRange(t)),updateRowPositions());prevScrollTop!=t&&(vScrollDir=prevScrollTop+o<t+offset?1:-1,lastRenderedScrollTop=scrollTop=prevScrollTop=t,hasFrozenColumns()&&($viewportTopL[0].scrollTop=t),hasFrozenRows&&($viewportBottomL[0].scrollTop=$viewportBottomR[0].scrollTop=t),$viewportScrollContainerY[0].scrollTop=t,trigger(self.onViewportChanged,{}))}function defaultFormatter(e,o,t,n,l,r){return null==t?\"\":(t+\"\").replace(/&/g,\"&\").replace(/</g,\"<\").replace(/>/g,\">\")}function getFormatter(e,o){var t=data.getItemMetadata&&data.getItemMetadata(e),n=t&&t.columns&&(t.columns[o.id]||t.columns[getColumnIndex(o.id)]);return n&&n.formatter||t&&t.formatter||o.formatter||options.formatterFactory&&options.formatterFactory.getFormatter(o)||options.defaultFormatter}function callFormatter(e,o,t,n,l,r){var i,a=data.getItemMetadata&&data.getItemMetadata(e);if(a=a&&a.columns){var s=a[n.id]||a[o];i=getFormatter(e,n)(e,o,t,n,l,s)}else i=getFormatter(e,n)(e,o,t,n,l);return i}function getEditor(e,o){var t=columns[o],n=data.getItemMetadata&&data.getItemMetadata(e),l=n&&n.columns;return l&&l[t.id]&&void 0!==l[t.id].editor?l[t.id].editor:l&&l[o]&&void 0!==l[o].editor?l[o].editor:t.editor||options.editorFactory&&options.editorFactory.getEditor(t)}function getDataItemValueForColumn(e,o){return options.dataItemColumnValueExtractor?options.dataItemColumnValueExtractor(e,o):e[o.field]}function appendRowHtml(e,o,t,n,l){var r=getDataItem(t),i=t<l&&!r,a=\"slick-row\"+(hasFrozenRows&&t<=options.frozenRow?\" frozen\":\"\")+(i?\" loading\":\"\")+(t===activeRow&&options.showCellSelection?\" active\":\"\")+(t%2==1?\" odd\":\" even\");r||(a+=\" \"+options.addNewRowCssClass);var s=data.getItemMetadata&&data.getItemMetadata(t);s&&s.cssClasses&&(a+=\" \"+s.cssClasses);var d,c,u=getFrozenRowOffset(t),h=\"<div class='ui-widget-content \"+a+\"' style='top:\"+(getRowTop(t)-u)+\"px'>\";e.push(h),hasFrozenColumns()&&o.push(h);for(var p=0,m=columns.length;p<m;p++){if(c=columns[p],d=1,s&&s.columns){var w=s.columns[c.id]||s.columns[p];\"*\"===(d=w&&w.colspan||1)&&(d=m-p)}if(columnPosRight[Math.min(m-1,p+d-1)]>n.leftPx){if(!c.alwaysRenderColumn&&columnPosLeft[p]>n.rightPx)break;hasFrozenColumns()&&p>options.frozenColumn?appendCellHtml(o,t,p,d,r):appendCellHtml(e,t,p,d,r)}else(c.alwaysRenderColumn||hasFrozenColumns()&&p<=options.frozenColumn)&&appendCellHtml(e,t,p,d,r);d>1&&(p+=d-1)}e.push(\"</div>\"),hasFrozenColumns()&&o.push(\"</div>\")}function appendCellHtml(e,o,t,n,l){var r=columns[t],i=\"slick-cell l\"+t+\" r\"+Math.min(columns.length-1,t+n-1)+(r.cssClass?\" \"+r.cssClass:\"\");for(var a in hasFrozenColumns()&&t<=options.frozenColumn&&(i+=\" frozen\"),o===activeRow&&t===activeCell&&options.showCellSelection&&(i+=\" active\"),cellCssClasses)cellCssClasses[a][o]&&cellCssClasses[a][o][r.id]&&(i+=\" \"+cellCssClasses[a][o][r.id]);var s=null,d=\"\";l&&(s=getDataItemValueForColumn(l,r),null==(d=getFormatter(o,r)(o,t,s,r,l,self))&&(d=\"\"));var c=trigger(self.onBeforeAppendCell,{row:o,cell:t,value:s,dataContext:l})||\"\";c+=d&&d.addClasses?(c?\" \":\"\")+d.addClasses:\"\";var u=d&&d.toolTip?\"title='\"+d.toolTip+\"'\":\"\",h=\"\";if(r.hasOwnProperty(\"cellAttrs\")&&r.cellAttrs instanceof Object)for(var a in r.cellAttrs)r.cellAttrs.hasOwnProperty(a)&&(h+=\" \"+a+'=\"'+r.cellAttrs[a]+'\" ');e.push(\"<div class='\"+i+(c?\" \"+c:\"\")+\"' \"+u+h+\">\"),l&&e.push(\"[object Object]\"!==Object.prototype.toString.call(d)?d:d.text),e.push(\"</div>\"),rowsCache[o].cellRenderQueue.push(t),rowsCache[o].cellColSpans[t]=n}function cleanupRows(e){for(var o in rowsCache){var t=!0;hasFrozenRows&&(options.frozenBottom&&o>=actualFrozenRow||!options.frozenBottom&&o<=actualFrozenRow)&&(t=!1),(o=parseInt(o,10))!==activeRow&&(o<e.top||o>e.bottom)&&t&&removeRowFromCache(o)}options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}function invalidate(){updateRowCount(),invalidateAllRows(),render()}function invalidateAllRows(){for(var e in currentEditor&&makeActiveCellNormal(),rowsCache)removeRowFromCache(e);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}function queuePostProcessedRowForCleanup(e,o,t){for(var n in postProcessgroupId++,o)o.hasOwnProperty(n)&&postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e.cellNodesByColumnIdx[0|n],columnIdx:0|n,rowIdx:t});postProcessedCleanupQueue.push({actionType:\"R\",groupId:postProcessgroupId,node:e.rowNode}),$(e.rowNode).detach()}function queuePostProcessedCellForCleanup(e,o,t){postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e,columnIdx:o,rowIdx:t}),$(e).detach()}function removeRowFromCache(e){var o=rowsCache[e];o&&(rowNodeFromLastMouseWheelEvent==o.rowNode[0]||hasFrozenColumns()&&rowNodeFromLastMouseWheelEvent==o.rowNode[1]?(o.rowNode.hide(),zombieRowNodeFromLastMouseWheelEvent=o.rowNode):o.rowNode.each((function(){this.parentElement.removeChild(this)})),delete rowsCache[e],delete postProcessedRows[e],renderedRows--,counter_rows_removed++)}function invalidateRows(e){var o,t;if(e&&e.length){for(vScrollDir=0,t=e.length,o=0;o<t;o++)currentEditor&&activeRow===e[o]&&makeActiveCellNormal(),rowsCache[e[o]]&&removeRowFromCache(e[o]);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}}function invalidateRow(e){(e||0===e)&&invalidateRows([e])}function applyFormatResultToCellNode(e,o,t){null==e&&(e=\"\"),\"[object Object]\"===Object.prototype.toString.call(e)?(o.innerHTML=e.text,e.removeClasses&&!t&&$(o).removeClass(e.removeClasses),e.addClasses&&$(o).addClass(e.addClasses),e.toolTip&&$(o).attr(\"title\",e.toolTip)):o.innerHTML=e}function updateCell(e,o){var t=getCellNode(e,o);if(t){var n=columns[o],l=getDataItem(e);if(currentEditor&&activeRow===e&&activeCell===o)currentEditor.loadValue(l);else applyFormatResultToCellNode(l?getFormatter(e,n)(e,o,getDataItemValueForColumn(l,n),n,l,self):\"\",t),invalidatePostProcessingResults(e)}}function updateRow(e){var o=rowsCache[e];if(o){ensureCellNodesInRowsCache(e);var t=getDataItem(e);for(var n in o.cellNodesByColumnIdx)if(o.cellNodesByColumnIdx.hasOwnProperty(n)){var l=columns[n|=0],r=o.cellNodesByColumnIdx[n][0];e===activeRow&&n===activeCell&¤tEditor?currentEditor.loadValue(t):t?applyFormatResultToCellNode(getFormatter(e,l)(e,n,getDataItemValueForColumn(t,l),l,t,self),r):r.innerHTML=\"\"}invalidatePostProcessingResults(e)}}function getViewportHeight(){if(options.autoHeight&&-1==options.frozenColumn||(topPanelH=options.showTopPanel?options.topPanelHeight+getVBoxDelta($topPanelScroller):0,headerRowH=options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0,footerRowH=options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0),options.autoHeight){var e=$paneHeaderL.outerHeight();e+=options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0,e+=options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0,e+=getCanvasWidth()>viewportW?scrollbarDimensions.height:0,viewportH=options.rowHeight*getDataLengthIncludingAddNew()+(-1==options.frozenColumn?e:0)}else{var o=options.showColumnHeader?parseFloat($.css($headerScroller[0],\"height\"))+getVBoxDelta($headerScroller):0,t=options.createPreHeaderPanel&&options.showPreHeaderPanel?options.preHeaderPanelHeight+getVBoxDelta($preHeaderPanelScroller):0;viewportH=parseFloat($.css($container[0],\"height\",!0))-parseFloat($.css($container[0],\"paddingTop\",!0))-parseFloat($.css($container[0],\"paddingBottom\",!0))-o-topPanelH-headerRowH-footerRowH-t}return numVisibleRows=Math.ceil(viewportH/options.rowHeight),viewportH}function getViewportWidth(){viewportW=parseFloat($container.width())}function resizeCanvas(){if(initialized){paneTopH=0,paneBottomH=0,viewportTopH=0,viewportBottomH=0,getViewportWidth(),getViewportHeight(),hasFrozenRows?options.frozenBottom?(paneTopH=viewportH-frozenRowsHeight-scrollbarDimensions.height,paneBottomH=frozenRowsHeight+scrollbarDimensions.height):(paneTopH=frozenRowsHeight,paneBottomH=viewportH-frozenRowsHeight):paneTopH=viewportH,paneTopH+=topPanelH+headerRowH+footerRowH,hasFrozenColumns()&&options.autoHeight&&(paneTopH+=scrollbarDimensions.height),viewportTopH=paneTopH-topPanelH-headerRowH-footerRowH,options.autoHeight&&(hasFrozenColumns()&&$container.height(paneTopH+parseFloat($.css($headerScrollerL[0],\"height\"))),$paneTopL.css(\"position\",\"relative\")),$paneTopL.css({top:$paneHeaderL.height(),height:paneTopH});var e=$paneTopL.position().top+paneTopH;options.autoHeight||$viewportTopL.height(viewportTopH),hasFrozenColumns()?($paneTopR.css({top:$paneHeaderL.height(),height:paneTopH}),$viewportTopR.height(viewportTopH),hasFrozenRows&&($paneBottomL.css({top:e,height:paneBottomH}),$paneBottomR.css({top:e,height:paneBottomH}),$viewportBottomR.height(paneBottomH))):hasFrozenRows&&($paneBottomL.css({width:\"100%\",height:paneBottomH}),$paneBottomL.css(\"top\",e)),hasFrozenRows?($viewportBottomL.height(paneBottomH),options.frozenBottom?($canvasBottomL.height(frozenRowsHeight),hasFrozenColumns()&&$canvasBottomR.height(frozenRowsHeight)):($canvasTopL.height(frozenRowsHeight),hasFrozenColumns()&&$canvasTopR.height(frozenRowsHeight))):$viewportTopR.height(viewportTopH),scrollbarDimensions&&scrollbarDimensions.width||(scrollbarDimensions=measureScrollbar()),options.autosizeColsMode===Slick.GridAutosizeColsMode.LegacyForceFit&&autosizeColumns(),updateRowCount(),handleScroll(),lastRenderedScrollLeft=-1,render()}}function updatePagingStatusFromView(e){pagingActive=0!==e.pageSize,pagingIsLastPage=e.pageNum==e.totalPages-1}function updateRowCount(){if(initialized){var e=getDataLength(),o=getDataLengthIncludingAddNew(),t=0,l=hasFrozenRows&&!options.frozenBottom?$canvasBottomL.height():$canvasTopL.height();if(hasFrozenRows)t=getDataLength()-options.frozenRow;else t=o+(options.leaveSpaceForNewRows?numVisibleRows-1:0);var r=$viewportScrollContainerY.height(),i=viewportHasVScroll;viewportHasVScroll=options.alwaysShowVerticalScroll||!options.autoHeight&&t*options.rowHeight>r,makeActiveCellNormal();var a=e-1;for(var s in rowsCache)s>a&&removeRowFromCache(s);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup(),activeCellNode&&activeRow>a&&resetActiveCell();l=h;options.autoHeight?h=options.rowHeight*t:(th=Math.max(options.rowHeight*t,r-scrollbarDimensions.height))<maxSupportedCssHeight?(h=ph=th,n=1,cj=0):(ph=(h=maxSupportedCssHeight)/100,n=Math.floor(th/ph),cj=(th-h)/(n-1)),h!==l&&(hasFrozenRows&&!options.frozenBottom?($canvasBottomL.css(\"height\",h),hasFrozenColumns()&&$canvasBottomR.css(\"height\",h)):($canvasTopL.css(\"height\",h),$canvasTopR.css(\"height\",h)),scrollTop=$viewportScrollContainerY[0].scrollTop);var d=scrollTop+offset<=th-r;0==th||0==scrollTop?page=offset=0:scrollTo(d?scrollTop+offset:th-r),h!=l&&options.autoHeight&&resizeCanvas(),options.autosizeColsMode===Slick.GridAutosizeColsMode.LegacyForceFit&&i!=viewportHasVScroll&&autosizeColumns(),updateCanvasWidth(!1)}}function getVisibleRange(e,o){return null==e&&(e=scrollTop),null==o&&(o=scrollLeft),{top:getRowFromPosition(e),bottom:getRowFromPosition(e+viewportH)+1,leftPx:o,rightPx:o+viewportW}}function getRenderedRange(e,o){var t=getVisibleRange(e,o),n=Math.round(viewportH/options.rowHeight),l=options.minRowBuffer;return-1==vScrollDir?(t.top-=n,t.bottom+=l):1==vScrollDir?(t.top-=l,t.bottom+=n):(t.top-=l,t.bottom+=l),t.top=Math.max(0,t.top),t.bottom=Math.min(getDataLengthIncludingAddNew()-1,t.bottom),t.leftPx-=viewportW,t.rightPx+=viewportW,t.leftPx=Math.max(0,t.leftPx),t.rightPx=Math.min(canvasWidth,t.rightPx),t}function ensureCellNodesInRowsCache(e){var o=rowsCache[e];if(o&&o.cellRenderQueue.length)for(var t=o.rowNode.children().last();o.cellRenderQueue.length;){var n=o.cellRenderQueue.pop();o.cellNodesByColumnIdx[n]=t,0===(t=t.prev()).length&&(t=$(o.rowNode[0]).children().last())}}function cleanUpCells(e,o){if(!hasFrozenRows||!(options.frozenBottom&&o>actualFrozenRow||o<=actualFrozenRow)){var t,n=rowsCache[o],l=[];for(var r in n.cellNodesByColumnIdx)if(n.cellNodesByColumnIdx.hasOwnProperty(r)&&!((r|=0)<=options.frozenColumn||Array.isArray(columns)&&columns[r]&&columns[r].alwaysRenderColumn)){var i=n.cellColSpans[r];(columnPosLeft[r]>e.rightPx||columnPosRight[Math.min(columns.length-1,r+i-1)]<e.leftPx)&&(o==activeRow&&r==activeCell||l.push(r))}for(;null!=(t=l.pop());)n.cellNodesByColumnIdx[t][0].parentElement.removeChild(n.cellNodesByColumnIdx[t][0]),delete n.cellColSpans[t],delete n.cellNodesByColumnIdx[t],postProcessedRows[o]&&delete postProcessedRows[o][t]}}function cleanUpAndRenderCells(e){for(var o,t,n,l=[],r=[],i=e.top,a=e.bottom;i<=a;i++)if(o=rowsCache[i]){ensureCellNodesInRowsCache(i),cleanUpCells(e,i),t=0;var s=data.getItemMetadata&&data.getItemMetadata(i);s=s&&s.columns;for(var d=getDataItem(i),c=0,u=columns.length;c<u&&!(columnPosLeft[c]>e.rightPx);c++)if(null==(n=o.cellColSpans[c])){if(n=1,s){var h=s[columns[c].id]||s[c];\"*\"===(n=h&&h.colspan||1)&&(n=u-c)}columnPosRight[Math.min(u-1,c+n-1)]>e.leftPx&&(appendCellHtml(l,i,c,n,d),t++),c+=n>1?n-1:0}else c+=n>1?n-1:0;t&&(t,r.push(i))}if(l.length){var p,m,w=document.createElement(\"div\");for(w.innerHTML=l.join(\"\");null!=(p=r.pop());){var v;for(o=rowsCache[p];null!=(v=o.cellRenderQueue.pop());)m=w.lastChild,hasFrozenColumns()&&v>options.frozenColumn?o.rowNode[1].appendChild(m):o.rowNode[0].appendChild(m),o.cellNodesByColumnIdx[v]=$(m)}}}function renderRows(e){for(var o=[],t=[],n=[],l=!1,r=getDataLength(),i=e.top,a=e.bottom;i<=a;i++)rowsCache[i]||hasFrozenRows&&options.frozenBottom&&i==getDataLength()||(renderedRows++,n.push(i),rowsCache[i]={rowNode:null,cellColSpans:[],cellNodesByColumnIdx:[],cellRenderQueue:[]},appendRowHtml(o,t,i,e,r),activeCellNode&&activeRow===i&&(l=!0),counter_rows_rendered++);if(n.length){var s=document.createElement(\"div\"),d=document.createElement(\"div\");s.innerHTML=o.join(\"\"),d.innerHTML=t.join(\"\");for(i=0,a=n.length;i<a;i++)hasFrozenRows&&n[i]>=actualFrozenRow?hasFrozenColumns()?rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasBottomL)).add($(d.firstChild).appendTo($canvasBottomR)):rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasBottomL)):hasFrozenColumns()?rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasTopL)).add($(d.firstChild).appendTo($canvasTopR)):rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasTopL));l&&(activeCellNode=getCellNode(activeRow,activeCell))}}function startPostProcessing(){options.enableAsyncPostRender&&(clearTimeout(h_postrender),h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}function startPostProcessingCleanup(){options.enableAsyncPostRenderCleanup&&(clearTimeout(h_postrenderCleanup),h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay))}function invalidatePostProcessingResults(e){for(var o in postProcessedRows[e])postProcessedRows[e].hasOwnProperty(o)&&(postProcessedRows[e][o]=\"C\");postProcessFromRow=Math.min(postProcessFromRow,e),postProcessToRow=Math.max(postProcessToRow,e),startPostProcessing()}function updateRowPositions(){for(var e in rowsCache){var o=e?parseInt(e):0;rowsCache[o].rowNode[0].style.top=getRowTop(o)+\"px\"}}function render(){if(initialized){scrollThrottle.dequeue();var e=getVisibleRange(),o=getRenderedRange();if(cleanupRows(o),lastRenderedScrollLeft!=scrollLeft){if(hasFrozenRows){var t=$.extend(!0,{},o);options.frozenBottom?(t.top=actualFrozenRow,t.bottom=getDataLength()):(t.top=0,t.bottom=options.frozenRow),cleanUpAndRenderCells(t)}cleanUpAndRenderCells(o)}renderRows(o),hasFrozenRows&&(options.frozenBottom?renderRows({top:actualFrozenRow,bottom:getDataLength()-1,leftPx:o.leftPx,rightPx:o.rightPx}):renderRows({top:0,bottom:options.frozenRow-1,leftPx:o.leftPx,rightPx:o.rightPx})),postProcessFromRow=e.top,postProcessToRow=Math.min(getDataLengthIncludingAddNew()-1,e.bottom),startPostProcessing(),lastRenderedScrollTop=scrollTop,lastRenderedScrollLeft=scrollLeft,h_render=null,trigger(self.onRendered,{startRow:e.top,endRow:e.bottom,grid:self})}}function handleHeaderScroll(){handleElementScroll($headerScrollContainer[0])}function handleHeaderRowScroll(){var e=$headerRowScrollContainer[0].scrollLeft;e!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=e)}function handleFooterRowScroll(){var e=$footerRowScrollContainer[0].scrollLeft;e!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=e)}function handlePreHeaderPanelScroll(){handleElementScroll($preHeaderPanelScroller[0])}function handleElementScroll(e){var o=e.scrollLeft;o!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=o)}function handleScroll(){return scrollTop=$viewportScrollContainerY[0].scrollTop,scrollLeft=$viewportScrollContainerX[0].scrollLeft,_handleScroll(!1)}function _handleScroll(e){var o=$viewportScrollContainerY[0].scrollHeight-$viewportScrollContainerY[0].clientHeight,t=$viewportScrollContainerY[0].scrollWidth-$viewportScrollContainerY[0].clientWidth;o=Math.max(0,o),t=Math.max(0,t),scrollTop>o&&(scrollTop=o),scrollLeft>t&&(scrollLeft=t);var l=Math.abs(scrollTop-prevScrollTop),r=Math.abs(scrollLeft-prevScrollLeft);if(r&&(prevScrollLeft=scrollLeft,$viewportScrollContainerX[0].scrollLeft=scrollLeft,$headerScrollContainer[0].scrollLeft=scrollLeft,$topPanelScroller[0].scrollLeft=scrollLeft,$headerRowScrollContainer[0].scrollLeft=scrollLeft,options.createFooterRow&&($footerRowScrollContainer[0].scrollLeft=scrollLeft),options.createPreHeaderPanel&&(hasFrozenColumns()?$preHeaderPanelScrollerR[0].scrollLeft=scrollLeft:$preHeaderPanelScroller[0].scrollLeft=scrollLeft),hasFrozenColumns()?hasFrozenRows&&($viewportTopR[0].scrollLeft=scrollLeft):hasFrozenRows&&($viewportTopL[0].scrollLeft=scrollLeft)),l)if(vScrollDir=prevScrollTop<scrollTop?1:-1,prevScrollTop=scrollTop,e&&($viewportScrollContainerY[0].scrollTop=scrollTop),hasFrozenColumns()&&(hasFrozenRows&&!options.frozenBottom?$viewportBottomL[0].scrollTop=scrollTop:$viewportTopL[0].scrollTop=scrollTop),l<viewportH)scrollTo(scrollTop+offset);else{var i=offset;page=h==viewportH?0:Math.min(n-1,Math.floor(scrollTop*((th-viewportH)/(h-viewportH))*(1/ph))),i!=(offset=Math.round(page*cj))&&invalidateAllRows()}if(r||l){var a=Math.abs(lastRenderedScrollLeft-scrollLeft),s=Math.abs(lastRenderedScrollTop-scrollTop);(a>20||s>20)&&(options.forceSyncScrolling||s<viewportH&&a<viewportW?render():scrollThrottle.enqueue(),trigger(self.onViewportChanged,{}))}return trigger(self.onScroll,{scrollLeft,scrollTop}),!(!r&&!l)}function ActionThrottle(e,o){var t=!1,n=!1;function l(){n=!1}function r(){t=!0,setTimeout(i,o),e()}function i(){n?(l(),r()):t=!1}return{enqueue:function(){t?n=!0:r()},dequeue:l}}function asyncPostProcessRows(){for(var e=getDataLength();postProcessFromRow<=postProcessToRow;){var o=vScrollDir>=0?postProcessFromRow++:postProcessToRow--,t=rowsCache[o];if(t&&!(o>=e)){for(var n in postProcessedRows[o]||(postProcessedRows[o]={}),ensureCellNodesInRowsCache(o),t.cellNodesByColumnIdx)if(t.cellNodesByColumnIdx.hasOwnProperty(n)){var l=columns[n|=0],r=postProcessedRows[o][n];if(l.asyncPostRender&&\"R\"!==r){var i=t.cellNodesByColumnIdx[n];i&&l.asyncPostRender(i,o,getDataItem(o),l,\"C\"===r),postProcessedRows[o][n]=\"R\"}}return void(h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}}}function asyncPostProcessCleanupRows(){if(postProcessedCleanupQueue.length>0){for(var e=postProcessedCleanupQueue[0].groupId;postProcessedCleanupQueue.length>0&&postProcessedCleanupQueue[0].groupId==e;){var o=postProcessedCleanupQueue.shift();if(\"R\"==o.actionType&&$(o.node).remove(),\"C\"==o.actionType){var t=columns[o.columnIdx];t.asyncPostRenderCleanup&&o.node&&t.asyncPostRenderCleanup(o.node,o.rowIdx,t)}}h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay)}}function updateCellCssStylesOnRenderedRows(e,o){var t,n,l,r;for(var i in rowsCache){if(r=o&&o[i],l=e&&e[i],r)for(n in r)l&&r[n]==l[n]||(t=getCellNode(i,getColumnIndex(n)))&&$(t).removeClass(r[n]);if(l)for(n in l)r&&r[n]==l[n]||(t=getCellNode(i,getColumnIndex(n)))&&$(t).addClass(l[n])}}function addCellCssStyles(e,o){if(cellCssClasses[e])throw new Error(\"addCellCssStyles: cell CSS hash with key '\"+e+\"' already exists.\");cellCssClasses[e]=o,updateCellCssStylesOnRenderedRows(o,null),trigger(self.onCellCssStylesChanged,{key:e,hash:o,grid:self})}function removeCellCssStyles(e){cellCssClasses[e]&&(updateCellCssStylesOnRenderedRows(null,cellCssClasses[e]),delete cellCssClasses[e],trigger(self.onCellCssStylesChanged,{key:e,hash:null,grid:self}))}function setCellCssStyles(e,o){var t=cellCssClasses[e];cellCssClasses[e]=o,updateCellCssStylesOnRenderedRows(o,t),trigger(self.onCellCssStylesChanged,{key:e,hash:o,grid:self})}function getCellCssStyles(e){return cellCssClasses[e]}function flashCell(e,o,t){(t=t||100,rowsCache[e])&&function e(o,n){n&&setTimeout((function(){o.queue((function(){o.toggleClass(options.cellFlashingCssClass).dequeue(),e(o,n-1)}))}),t)}($(getCellNode(e,o)),4)}function handleMouseWheel(e,o,t,n){var l=$(e.target).closest(\".slick-row\"),r=l[0];if(r!=rowNodeFromLastMouseWheelEvent){var i=l.parents(\".grid-canvas\").hasClass(\"grid-canvas-left\");if(zombieRowNodeFromLastMouseWheelEvent&&zombieRowNodeFromLastMouseWheelEvent[i?0:1]!=r){var a=zombieRowNodeFromLastMouseWheelEvent[i||1==zombieRowNodeFromLastMouseWheelEvent.length?0:1];a.parentElement.removeChild(a),zombieRowNodeFromLastMouseWheelEvent=null}rowNodeFromLastMouseWheelEvent=r}scrollTop=Math.max(0,$viewportScrollContainerY[0].scrollTop-n*options.rowHeight),scrollLeft=$viewportScrollContainerX[0].scrollLeft+10*t,_handleScroll(!0)&&e.preventDefault()}function handleDragInit(e,o){var t=getCellFromEvent(e);if(!t||!cellExists(t.row,t.cell))return!1;var n=trigger(self.onDragInit,o,e);return!!e.isImmediatePropagationStopped()&&n}function handleDragStart(e,o){var t=getCellFromEvent(e);if(!t||!cellExists(t.row,t.cell))return!1;var n=trigger(self.onDragStart,o,e);return!!e.isImmediatePropagationStopped()&&n}function handleDrag(e,o){return trigger(self.onDrag,o,e)}function handleDragEnd(e,o){trigger(self.onDragEnd,o,e)}function handleKeyDown(e){trigger(self.onKeyDown,{row:activeRow,cell:activeCell},e);var o=e.isImmediatePropagationStopped(),t=Slick.keyCode;if(!o&&!e.shiftKey&&!e.altKey){if(options.editable&¤tEditor&¤tEditor.keyCaptureList&¤tEditor.keyCaptureList.indexOf(e.which)>-1)return;e.which==t.HOME?o=e.ctrlKey?navigateTop():navigateRowStart():e.which==t.END&&(o=e.ctrlKey?navigateBottom():navigateRowEnd())}if(!o)if(e.shiftKey||e.altKey||e.ctrlKey)e.which!=t.TAB||!e.shiftKey||e.ctrlKey||e.altKey||(o=navigatePrev());else{if(options.editable&¤tEditor&¤tEditor.keyCaptureList&¤tEditor.keyCaptureList.indexOf(e.which)>-1)return;if(e.which==t.ESCAPE){if(!getEditorLock().isActive())return;cancelEditAndSetFocus()}else e.which==t.PAGE_DOWN?(navigatePageDown(),o=!0):e.which==t.PAGE_UP?(navigatePageUp(),o=!0):e.which==t.LEFT?o=navigateLeft():e.which==t.RIGHT?o=navigateRight():e.which==t.UP?o=navigateUp():e.which==t.DOWN?o=navigateDown():e.which==t.TAB?o=navigateNext():e.which==t.ENTER&&(options.editable&&(currentEditor?activeRow===getDataLength()?navigateDown():commitEditAndSetFocus():getEditorLock().commitCurrentEdit()&&makeActiveCellEditable(void 0,void 0,e)),o=!0)}if(o){e.stopPropagation(),e.preventDefault();try{e.originalEvent.keyCode=0}catch(e){}}}function handleClick(e){currentEditor||(e.target!=document.activeElement||$(e.target).hasClass(\"slick-cell\"))&&setFocus();var o=getCellFromEvent(e);if(o&&(null===currentEditor||activeRow!=o.row||activeCell!=o.cell)&&(trigger(self.onClick,{row:o.row,cell:o.cell},e),!e.isImmediatePropagationStopped()&&canCellBeActive(o.row,o.cell)&&(!getEditorLock().isActive()||getEditorLock().commitCurrentEdit()))){scrollRowIntoView(o.row,!1);var t=e.target&&e.target.className===Slick.preClickClassName,n=columns[o.cell],l=!!(options.editable&&n&&n.editor&&options.suppressActiveCellChangeOnEdit);setActiveCellInternal(getCellNode(o.row,o.cell),null,t,l,e)}}function handleContextMenu(e){var o=$(e.target).closest(\".slick-cell\",$canvas);0!==o.length&&(activeCellNode===o[0]&&null!==currentEditor||trigger(self.onContextMenu,{},e))}function handleDblClick(e){var o=getCellFromEvent(e);!o||null!==currentEditor&&activeRow==o.row&&activeCell==o.cell||(trigger(self.onDblClick,{row:o.row,cell:o.cell},e),e.isImmediatePropagationStopped()||options.editable&&gotoCell(o.row,o.cell,!0,e))}function handleHeaderMouseEnter(e){trigger(self.onHeaderMouseEnter,{column:$(this).data(\"column\"),grid:self},e)}function handleHeaderMouseLeave(e){trigger(self.onHeaderMouseLeave,{column:$(this).data(\"column\"),grid:self},e)}function handleHeaderContextMenu(e){var o=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),t=o&&o.data(\"column\");trigger(self.onHeaderContextMenu,{column:t},e)}function handleHeaderClick(e){if(!columnResizeDragging){var o=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),t=o&&o.data(\"column\");t&&trigger(self.onHeaderClick,{column:t},e)}}function handleFooterContextMenu(e){var o=$(e.target).closest(\".slick-footerrow-column\",\".slick-footerrow-columns\"),t=o&&o.data(\"column\");trigger(self.onFooterContextMenu,{column:t},e)}function handleFooterClick(e){var o=$(e.target).closest(\".slick-footerrow-column\",\".slick-footerrow-columns\"),t=o&&o.data(\"column\");trigger(self.onFooterClick,{column:t},e)}function handleMouseEnter(e){trigger(self.onMouseEnter,{},e)}function handleMouseLeave(e){trigger(self.onMouseLeave,{},e)}function cellExists(e,o){return!(e<0||e>=getDataLength()||o<0||o>=columns.length)}function getCellFromPoint(e,o){for(var t=getRowFromPosition(o),n=0,l=0,r=0;r<columns.length&&l<e;r++)l+=columns[r].width,n++;return n<0&&(n=0),{row:t,cell:n-1}}function getCellFromNode(e){var o=/l\\d+/.exec(e.className);if(!o)throw new Error(\"getCellFromNode: cannot get cell - \"+e.className);return parseInt(o[0].substr(1,o[0].length-1),10)}function getRowFromNode(e){for(var o in rowsCache)for(var t in rowsCache[o].rowNode)if(rowsCache[o].rowNode[t]===e)return o?parseInt(o):0;return null}function getFrozenRowOffset(e){return hasFrozenRows?options.frozenBottom?e>=actualFrozenRow?h<viewportTopH?actualFrozenRow*options.rowHeight:h:0:e>=actualFrozenRow?frozenRowsHeight:0:0}function getCellFromEvent(e){var o,t,n=$(e.target).closest(\".slick-cell\",$canvas);if(!n.length)return null;if(o=getRowFromNode(n[0].parentNode),hasFrozenRows){var l=n.parents(\".grid-canvas\").offset(),r=0;n.parents(\".grid-canvas-bottom\").length&&(r=options.frozenBottom?$canvasTopL.height():frozenRowsHeight),o=getCellFromPoint(e.clientX-l.left,e.clientY-l.top+r+$(document).scrollTop()).row}return t=getCellFromNode(n[0]),null==o||null==t?null:{row:o,cell:t}}function getCellNodeBox(e,o){if(!cellExists(e,o))return null;for(var t=getFrozenRowOffset(e),n=getRowTop(e)-t,l=n+options.rowHeight-1,r=0,i=0;i<o;i++)r+=columns[i].width,options.frozenColumn==i&&(r=0);return{top:n,left:r,bottom:l,right:r+columns[o].width}}function resetActiveCell(){setActiveCellInternal(null,!1)}function setFocus(){-1==tabbingDirection?$focusSink[0].focus():$focusSink2[0].focus()}function scrollCellIntoView(e,o,t){if(scrollRowIntoView(e,t),!(o<=options.frozenColumn)){var n=getColspan(e,o);internalScrollColumnIntoView(columnPosLeft[o],columnPosRight[o+(n>1?n-1:0)])}}function internalScrollColumnIntoView(e,o){var t=scrollLeft+$viewportScrollContainerX.width();e<scrollLeft?($viewportScrollContainerX.scrollLeft(e),handleScroll(),render()):o>t&&($viewportScrollContainerX.scrollLeft(Math.min(e,o-$viewportScrollContainerX[0].clientWidth)),handleScroll(),render())}function scrollColumnIntoView(e){internalScrollColumnIntoView(columnPosLeft[e],columnPosRight[e])}function setActiveCellInternal(e,o,t,n,l){null!==activeCellNode&&(makeActiveCellNormal(),$(activeCellNode).removeClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).removeClass(\"active\"));if(null!=(activeCellNode=e)){var r=$(activeCellNode),i=r.offset(),a=Math.floor(r.parents(\".grid-canvas\").offset().top),s=r.parents(\".grid-canvas-bottom\").length;hasFrozenRows&&s&&(a-=options.frozenBottom?$canvasTopL.height():frozenRowsHeight);var d=getCellFromPoint(i.left,Math.ceil(i.top)-a);activeRow=d.row,activeCell=activePosX=activeCell=activePosX=getCellFromNode(activeCellNode),null==o&&(o=activeRow==getDataLength()||options.autoEdit),options.showCellSelection&&(r.addClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).addClass(\"active\")),options.editable&&o&&isCellPotentiallyEditable(activeRow,activeCell)&&(clearTimeout(h_editorLoader),options.asyncEditorLoading?h_editorLoader=setTimeout((function(){makeActiveCellEditable(void 0,t,l)}),options.asyncEditorLoadDelay):makeActiveCellEditable(void 0,t,l))}else activeRow=activeCell=null;n||trigger(self.onActiveCellChanged,getActiveCell())}function clearTextSelection(){if(document.selection&&document.selection.empty)try{document.selection.empty()}catch(e){}else if(window.getSelection){var e=window.getSelection();e&&e.removeAllRanges&&e.removeAllRanges()}}function isCellPotentiallyEditable(e,o){var t=getDataLength();return!(e<t&&!getDataItem(e))&&(!(columns[o].cannotTriggerInsert&&e>=t)&&!!getEditor(e,o))}function makeActiveCellNormal(){if(currentEditor){if(trigger(self.onBeforeCellEditorDestroy,{editor:currentEditor}),currentEditor.destroy(),currentEditor=null,activeCellNode){var e=getDataItem(activeRow);if($(activeCellNode).removeClass(\"editable invalid\"),e){var o=columns[activeCell];applyFormatResultToCellNode(getFormatter(activeRow,o)(activeRow,activeCell,getDataItemValueForColumn(e,o),o,e,self),activeCellNode),invalidatePostProcessingResults(activeRow)}}navigator.userAgent.toLowerCase().match(/msie/)&&clearTextSelection(),getEditorLock().deactivate(editController)}}function makeActiveCellEditable(e,o,t){if(activeCellNode){if(!options.editable)throw new Error(\"Grid : makeActiveCellEditable : should never get called when options.editable is false\");if(clearTimeout(h_editorLoader),isCellPotentiallyEditable(activeRow,activeCell)){var n=columns[activeCell],l=getDataItem(activeRow);if(!1!==trigger(self.onBeforeEditCell,{row:activeRow,cell:activeCell,item:l,column:n})){getEditorLock().activate(editController),$(activeCellNode).addClass(\"editable\");var r=e||getEditor(activeRow,activeCell);e||r.suppressClearOnEdit||(activeCellNode.innerHTML=\"\");var i=data.getItemMetadata&&data.getItemMetadata(activeRow),a=(i=i&&i.columns)&&(i[n.id]||i[activeCell]);currentEditor=new r({grid:self,gridPosition:absBox($container[0]),position:absBox(activeCellNode),container:activeCellNode,column:n,columnMetaData:a,item:l||{},event:t,commitChanges:commitEditAndSetFocus,cancelChanges:cancelEditAndSetFocus}),l&&(currentEditor.loadValue(l),o&¤tEditor.preClick&¤tEditor.preClick()),serializedEditorValue=currentEditor.serializeValue(),currentEditor.position&&handleActiveCellPositionChange()}else setFocus()}}}function commitEditAndSetFocus(){getEditorLock().commitCurrentEdit()&&(setFocus(),options.autoEdit&&navigateDown())}function cancelEditAndSetFocus(){getEditorLock().cancelCurrentEdit()&&setFocus()}function absBox(e){var o={top:e.offsetTop,left:e.offsetLeft,bottom:0,right:0,width:$(e).outerWidth(),height:$(e).outerHeight(),visible:!0};o.bottom=o.top+o.height,o.right=o.left+o.width;for(var t=e.offsetParent;(e=e.parentNode)!=document.body&&null!=e;)o.visible&&e.scrollHeight!=e.offsetHeight&&\"visible\"!=$(e).css(\"overflowY\")&&(o.visible=o.bottom>e.scrollTop&&o.top<e.scrollTop+e.clientHeight),o.visible&&e.scrollWidth!=e.offsetWidth&&\"visible\"!=$(e).css(\"overflowX\")&&(o.visible=o.right>e.scrollLeft&&o.left<e.scrollLeft+e.clientWidth),o.left-=e.scrollLeft,o.top-=e.scrollTop,e===t&&(o.left+=e.offsetLeft,o.top+=e.offsetTop,t=e.offsetParent),o.bottom=o.top+o.height,o.right=o.left+o.width;return o}function getActiveCellPosition(){return absBox(activeCellNode)}function getGridPosition(){return absBox($container[0])}function handleActiveCellPositionChange(){if(activeCellNode&&(trigger(self.onActiveCellPositionChanged,{}),currentEditor)){var e=getActiveCellPosition();currentEditor.show&¤tEditor.hide&&(e.visible?currentEditor.show():currentEditor.hide()),currentEditor.position&¤tEditor.position(e)}}function getCellEditor(){return currentEditor}function getActiveCell(){return activeCellNode?{row:activeRow,cell:activeCell}:null}function getActiveCellNode(){return activeCellNode}function scrollRowIntoView(e,o){if(!hasFrozenRows||!options.frozenBottom&&e>actualFrozenRow-1||options.frozenBottom&&e<actualFrozenRow-1){var t=$viewportScrollContainerY.height(),n=hasFrozenRows&&!options.frozenBottom?e-options.frozenRow:e,l=n*options.rowHeight,r=(n+1)*options.rowHeight-t+(viewportHasHScroll?scrollbarDimensions.height:0);(n+1)*options.rowHeight>scrollTop+t+offset?(scrollTo(o?l:r),render()):n*options.rowHeight<scrollTop+offset&&(scrollTo(o?r:l),render())}}function scrollRowToTop(e){scrollTo(e*options.rowHeight),render()}function scrollPage(e){var o=e*numVisibleRows;if(scrollTo((getRowFromPosition(scrollTop+options.rowHeight-1)+o)*options.rowHeight),render(),options.enableCellNavigation&&null!=activeRow){var t=activeRow+o,n=getDataLengthIncludingAddNew();t>=n&&(t=n-1),t<0&&(t=0);for(var l=0,r=null,i=activePosX;l<=activePosX;)canCellBeActive(t,l)&&(r=l),l+=getColspan(t,l);null!==r?(setActiveCellInternal(getCellNode(t,r)),activePosX=i):resetActiveCell()}}function navigatePageDown(){scrollPage(1)}function navigatePageUp(){scrollPage(-1)}function navigateTop(){navigateToRow(0)}function navigateBottom(){navigateToRow(getDataLength()-1)}function navigateToRow(e){var o=getDataLength();if(!o)return!0;if(e<0?e=0:e>=o&&(e=o-1),scrollCellIntoView(e,0,!0),options.enableCellNavigation&&null!=activeRow){for(var t=0,n=null,l=activePosX;t<=activePosX;)canCellBeActive(e,t)&&(n=t),t+=getColspan(e,t);null!==n?(setActiveCellInternal(getCellNode(e,n)),activePosX=l):resetActiveCell()}return!0}function getColspan(e,o){var t=data.getItemMetadata&&data.getItemMetadata(e);if(!t||!t.columns)return 1;var n=t.columns[columns[o].id]||t.columns[o],l=n&&n.colspan;return l=\"*\"===l?columns.length-o:l||1}function findFirstFocusableCell(e){for(var o=0;o<columns.length;){if(canCellBeActive(e,o))return o;o+=getColspan(e,o)}return null}function findLastFocusableCell(e){for(var o=0,t=null;o<columns.length;)canCellBeActive(e,o)&&(t=o),o+=getColspan(e,o);return t}function gotoRight(e,o,t){if(o>=columns.length)return null;do{o+=getColspan(e,o)}while(o<columns.length&&!canCellBeActive(e,o));return o<columns.length?{row:e,cell:o,posX:o}:null}function gotoLeft(e,o,t){if(o<=0)return null;var n=findFirstFocusableCell(e);if(null===n||n>=o)return null;for(var l,r={row:e,cell:n,posX:n};;){if(!(l=gotoRight(r.row,r.cell,r.posX)))return null;if(l.cell>=o)return r;r=l}}function gotoDown(e,o,t){for(var n,l=getDataLengthIncludingAddNew();;){if(++e>=l)return null;for(n=o=0;o<=t;)n=o,o+=getColspan(e,o);if(canCellBeActive(e,n))return{row:e,cell:n,posX:t}}}function gotoUp(e,o,t){for(var n;;){if(--e<0)return null;for(n=o=0;o<=t;)n=o,o+=getColspan(e,o);if(canCellBeActive(e,n))return{row:e,cell:n,posX:t}}}function gotoNext(e,o,t){if(null==e&&null==o&&canCellBeActive(e=o=t=0,o))return{row:e,cell:o,posX:o};var n=gotoRight(e,o,t);if(n)return n;var l=null,r=getDataLengthIncludingAddNew();for(e===r-1&&e--;++e<r;)if(null!==(l=findFirstFocusableCell(e)))return{row:e,cell:l,posX:l};return null}function gotoPrev(e,o,t){if(null==e&&null==o&&canCellBeActive(e=getDataLengthIncludingAddNew()-1,o=t=columns.length-1))return{row:e,cell:o,posX:o};for(var n,l;!n&&!(n=gotoLeft(e,o,t));){if(--e<0)return null;o=0,null!==(l=findLastFocusableCell(e))&&(n={row:e,cell:l,posX:l})}return n}function gotoRowStart(e,o,t){var n=findFirstFocusableCell(e);return null===n?null:{row:e,cell:n,posX:n}}function gotoRowEnd(e,o,t){var n=findLastFocusableCell(e);return null===n?null:{row:e,cell:n,posX:n}}function navigateRight(){return navigate(\"right\")}function navigateLeft(){return navigate(\"left\")}function navigateDown(){return navigate(\"down\")}function navigateUp(){return navigate(\"up\")}function navigateNext(){return navigate(\"next\")}function navigatePrev(){return navigate(\"prev\")}function navigateRowStart(){return navigate(\"home\")}function navigateRowEnd(){return navigate(\"end\")}function navigate(e){if(!options.enableCellNavigation)return!1;if(!activeCellNode&&\"prev\"!=e&&\"next\"!=e)return!1;if(!getEditorLock().commitCurrentEdit())return!0;setFocus();tabbingDirection={up:-1,down:1,left:-1,right:1,prev:-1,next:1,home:-1,end:1}[e];var o=(0,{up:gotoUp,down:gotoDown,left:gotoLeft,right:gotoRight,prev:gotoPrev,next:gotoNext,home:gotoRowStart,end:gotoRowEnd}[e])(activeRow,activeCell,activePosX);if(o){if(hasFrozenRows&&options.frozenBottom&o.row==getDataLength())return;var t=o.row==getDataLength();return(!options.frozenBottom&&o.row>=actualFrozenRow||options.frozenBottom&&o.row<actualFrozenRow)&&scrollCellIntoView(o.row,o.cell,!t&&options.emulatePagingWhenScrolling),setActiveCellInternal(getCellNode(o.row,o.cell)),activePosX=o.posX,!0}return setActiveCellInternal(getCellNode(activeRow,activeCell)),!1}function getCellNode(e,o){if(rowsCache[e]){ensureCellNodesInRowsCache(e);try{return rowsCache[e].cellNodesByColumnIdx.length>o?rowsCache[e].cellNodesByColumnIdx[o][0]:null}catch(t){return rowsCache[e].cellNodesByColumnIdx[o]}}return null}function setActiveCell(e,o,t,n,l){initialized&&(e>getDataLength()||e<0||o>=columns.length||o<0||options.enableCellNavigation&&(scrollCellIntoView(e,o,!1),setActiveCellInternal(getCellNode(e,o),t,n,l)))}function canCellBeActive(e,o){if(!options.enableCellNavigation||e>=getDataLengthIncludingAddNew()||e<0||o>=columns.length||o<0)return!1;var t=data.getItemMetadata&&data.getItemMetadata(e);if(t&&void 0!==t.focusable)return!!t.focusable;var n=t&&t.columns;return n&&n[columns[o].id]&&void 0!==n[columns[o].id].focusable?!!n[columns[o].id].focusable:n&&n[o]&&void 0!==n[o].focusable?!!n[o].focusable:!!columns[o].focusable}function canCellBeSelected(e,o){if(e>=getDataLength()||e<0||o>=columns.length||o<0)return!1;var t=data.getItemMetadata&&data.getItemMetadata(e);if(t&&void 0!==t.selectable)return!!t.selectable;var n=t&&t.columns&&(t.columns[columns[o].id]||t.columns[o]);return n&&void 0!==n.selectable?!!n.selectable:!!columns[o].selectable}function gotoCell(e,o,t,n){if(initialized&&canCellBeActive(e,o)&&getEditorLock().commitCurrentEdit()){scrollCellIntoView(e,o,!1);var l=getCellNode(e,o),r=columns[o],i=!!(options.editable&&r&&r.editor&&options.suppressActiveCellChangeOnEdit);setActiveCellInternal(l,t||e===getDataLength()||options.autoEdit,null,i,n),currentEditor||setFocus()}}function commitCurrentEdit(){var e=getDataItem(activeRow),o=columns[activeCell];if(currentEditor){if(currentEditor.isValueChanged()){var t=currentEditor.validate();if(t.valid){if(activeRow<getDataLength()){var n={row:activeRow,cell:activeCell,editor:currentEditor,serializedValue:currentEditor.serializeValue(),prevSerializedValue:serializedEditorValue,execute:function(){this.editor.applyValue(e,this.serializedValue),updateRow(this.row),trigger(self.onCellChange,{row:this.row,cell:this.cell,item:e})},undo:function(){this.editor.applyValue(e,this.prevSerializedValue),updateRow(this.row),trigger(self.onCellChange,{row:this.row,cell:this.cell,item:e})}};options.editCommandHandler?(makeActiveCellNormal(),options.editCommandHandler(e,o,n)):(n.execute(),makeActiveCellNormal())}else{var l={};currentEditor.applyValue(l,currentEditor.serializeValue()),makeActiveCellNormal(),trigger(self.onAddNewRow,{item:l,column:o})}return!getEditorLock().isActive()}return $(activeCellNode).removeClass(\"invalid\"),$(activeCellNode).width(),$(activeCellNode).addClass(\"invalid\"),trigger(self.onValidationError,{editor:currentEditor,cellNode:activeCellNode,validationResults:t,row:activeRow,cell:activeCell,column:o}),currentEditor.focus(),!1}makeActiveCellNormal()}return!0}function cancelCurrentEdit(){return makeActiveCellNormal(),!0}function rowsToRanges(e){for(var o=[],t=columns.length-1,n=0;n<e.length;n++)o.push(new Slick.Range(e[n],0,e[n],t));return o}function getSelectedRows(){if(!selectionModel)throw new Error(\"Selection model is not set\");return selectedRows.slice(0)}function setSelectedRows(e){if(!selectionModel)throw new Error(\"Selection model is not set\");self&&self.getEditorLock&&!self.getEditorLock().isActive()&&selectionModel.setSelectedRanges(rowsToRanges(e))}this.debug=function(){var e=\"\";e+=\"\\ncounter_rows_rendered: \"+counter_rows_rendered,e+=\"\\ncounter_rows_removed: \"+counter_rows_removed,e+=\"\\nrenderedRows: \"+renderedRows,e+=\"\\nnumVisibleRows: \"+numVisibleRows,e+=\"\\nmaxSupportedCssHeight: \"+maxSupportedCssHeight,e+=\"\\nn(umber of pages): \"+n,e+=\"\\n(current) page: \"+page,e+=\"\\npage height (ph): \"+ph,e+=\"\\nvScrollDir: \"+vScrollDir,alert(e)},this.eval=function(expr){return eval(expr)},$.extend(this,{slickGridVersion:\"2.4.27\",onScroll:new Slick.Event,onSort:new Slick.Event,onHeaderMouseEnter:new Slick.Event,onHeaderMouseLeave:new Slick.Event,onHeaderContextMenu:new Slick.Event,onHeaderClick:new Slick.Event,onHeaderCellRendered:new Slick.Event,onBeforeHeaderCellDestroy:new Slick.Event,onHeaderRowCellRendered:new Slick.Event,onFooterRowCellRendered:new Slick.Event,onFooterContextMenu:new Slick.Event,onFooterClick:new Slick.Event,onBeforeHeaderRowCellDestroy:new Slick.Event,onBeforeFooterRowCellDestroy:new Slick.Event,onMouseEnter:new Slick.Event,onMouseLeave:new Slick.Event,onClick:new Slick.Event,onDblClick:new Slick.Event,onContextMenu:new Slick.Event,onKeyDown:new Slick.Event,onAddNewRow:new Slick.Event,onBeforeAppendCell:new Slick.Event,onValidationError:new Slick.Event,onViewportChanged:new Slick.Event,onColumnsReordered:new Slick.Event,onColumnsDrag:new Slick.Event,onColumnsResized:new Slick.Event,onBeforeColumnsResize:new Slick.Event,onCellChange:new Slick.Event,onBeforeEditCell:new Slick.Event,onBeforeCellEditorDestroy:new Slick.Event,onBeforeDestroy:new Slick.Event,onActiveCellChanged:new Slick.Event,onActiveCellPositionChanged:new Slick.Event,onDragInit:new Slick.Event,onDragStart:new Slick.Event,onDrag:new Slick.Event,onDragEnd:new Slick.Event,onSelectedRowsChanged:new Slick.Event,onCellCssStylesChanged:new Slick.Event,onAutosizeColumns:new Slick.Event,onRendered:new Slick.Event,onSetOptions:new Slick.Event,registerPlugin,unregisterPlugin,getPluginByName,getColumns,setColumns,getColumnIndex,updateColumnHeader,setSortColumn,setSortColumns,getSortColumns,autosizeColumns,autosizeColumn,getOptions,setOptions,getData,getDataLength,getDataItem,setData,getSelectionModel,setSelectionModel,getSelectedRows,setSelectedRows,getContainerNode,updatePagingStatusFromView,applyFormatResultToCellNode,render,invalidate,invalidateRow,invalidateRows,invalidateAllRows,updateCell,updateRow,getViewport:getVisibleRange,getRenderedRange,resizeCanvas,updateRowCount,scrollRowIntoView,scrollRowToTop,scrollCellIntoView,scrollColumnIntoView,getCanvasNode,getUID,getHeaderColumnWidthDiff,getScrollbarDimensions,getHeadersWidth,getCanvasWidth,getCanvases,getActiveCanvasNode,setActiveCanvasNode,getViewportNode,getActiveViewportNode,setActiveViewportNode,focus:setFocus,scrollTo,getCellFromPoint,getCellFromEvent,getActiveCell,setActiveCell,getActiveCellNode,getActiveCellPosition,resetActiveCell,editActiveCell:makeActiveCellEditable,getCellEditor,getCellNode,getCellNodeBox,canCellBeSelected,canCellBeActive,navigatePrev,navigateNext,navigateUp,navigateDown,navigateLeft,navigateRight,navigatePageUp,navigatePageDown,navigateTop,navigateBottom,navigateRowStart,navigateRowEnd,gotoCell,getTopPanel,setTopPanelVisibility,getPreHeaderPanel,getPreHeaderPanelLeft:getPreHeaderPanel,getPreHeaderPanelRight,setPreHeaderPanelVisibility,getHeader,getHeaderColumn,setHeaderRowVisibility,getHeaderRow,getHeaderRowColumn,setFooterRowVisibility,getFooterRow,getFooterRowColumn,getGridPosition,flashCell,addCellCssStyles,setCellCssStyles,removeCellCssStyles,getCellCssStyles,getFrozenRowOffset,setColumnHeaderVisibility,init:finishInitialization,destroy,getEditorLock,getEditController}),init()}module.exports={Grid:SlickGrid}},\n", " 481: function _(t,e,a,n,r){\n", " /*!\n", " * jquery.event.drag - v 2.3.0\n", " * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n", " * Open Source MIT License - http://threedubmedia.com/code/license\n", " */\n", " var o=t(474);o.fn.drag=function(t,e,a){var n=\"string\"==typeof t?t:\"\",r=o.isFunction(t)?t:o.isFunction(e)?e:null;return 0!==n.indexOf(\"drag\")&&(n=\"drag\"+n),a=(t==r?e:a)||{},r?this.on(n,a,r):this.trigger(n)};var i=o.event,d=i.special,s=d.drag={defaults:{which:1,distance:0,not:\":input\",handle:null,relative:!1,drop:!0,click:!1},datakey:\"dragdata\",noBubble:!0,add:function(t){var e=o.data(this,s.datakey),a=t.data||{};e.related+=1,o.each(s.defaults,(function(t,n){void 0!==a[t]&&(e[t]=a[t])}))},remove:function(){o.data(this,s.datakey).related-=1},setup:function(){if(!o.data(this,s.datakey)){var t=o.extend({related:0},s.defaults);o.data(this,s.datakey,t),i.add(this,\"touchstart mousedown\",s.init,t),this.attachEvent&&this.attachEvent(\"ondragstart\",s.dontstart)}},teardown:function(){(o.data(this,s.datakey)||{}).related||(o.removeData(this,s.datakey),i.remove(this,\"touchstart mousedown\",s.init),s.textselect(!0),this.detachEvent&&this.detachEvent(\"ondragstart\",s.dontstart))},init:function(t){if(!s.touched){var e,a=t.data;if(!(0!=t.which&&a.which>0&&t.which!=a.which)){var n=o(t.target).attr(\"class\")||\"\";if(!o(t.target).is(a.not)&&n&&-1!==n.toString().indexOf(\"slick\")&&(!a.handle||o(t.target).closest(a.handle,t.currentTarget).length)&&(s.touched=\"touchstart\"==t.type?this:null,a.propagates=1,a.mousedown=this,a.interactions=[s.interaction(this,a)],a.target=t.target,a.pageX=t.pageX,a.pageY=t.pageY,a.dragging=null,e=s.hijack(t,\"draginit\",a),a.propagates))return(e=s.flatten(e))&&e.length&&(a.interactions=[],o.each(e,(function(){a.interactions.push(s.interaction(this,a))}))),a.propagates=a.interactions.length,!1!==a.drop&&d.drop&&d.drop.handler(t,a),s.textselect(!1),s.touched?i.add(s.touched,\"touchmove touchend\",s.handler,a):i.add(document,\"mousemove mouseup\",s.handler,a),!(!s.touched||a.live)&&void 0}}},interaction:function(t,e){var a=t&&t.ownerDocument&&o(t)[e.relative?\"position\":\"offset\"]()||{top:0,left:0};return{drag:t,callback:new s.callback,droppable:[],offset:a}},handler:function(t){var e=t.data;switch(t.type){case!e.dragging&&\"touchmove\":t.preventDefault();case!e.dragging&&\"mousemove\":if(Math.pow(t.pageX-e.pageX,2)+Math.pow(t.pageY-e.pageY,2)<Math.pow(e.distance,2))break;t.target=e.target,s.hijack(t,\"dragstart\",e),e.propagates&&(e.dragging=!0);case\"touchmove\":t.preventDefault();case\"mousemove\":if(e.dragging){if(s.hijack(t,\"drag\",e),e.propagates){!1!==e.drop&&d.drop&&d.drop.handler(t,e);break}t.type=\"mouseup\"}case\"touchend\":case\"mouseup\":default:s.touched?i.remove(s.touched,\"touchmove touchend\",s.handler):i.remove(document,\"mousemove mouseup\",s.handler),e.dragging&&(!1!==e.drop&&d.drop&&d.drop.handler(t,e),s.hijack(t,\"dragend\",e)),s.textselect(!0),!1===e.click&&e.dragging&&o.data(e.mousedown,\"suppress.click\",(new Date).getTime()+5),e.dragging=s.touched=!1}},hijack:function(t,e,a,n,r){if(a){var d,c,l,p={event:t.originalEvent,type:t.type},u=e.indexOf(\"drop\")?\"drag\":\"drop\",g=n||0,h=isNaN(n)?a.interactions.length:n;t.type=e;var f=function(){};t.originalEvent=new o.Event(p.event,{preventDefault:f,stopPropagation:f,stopImmediatePropagation:f}),a.results=[];do{if(c=a.interactions[g]){if(\"dragend\"!==e&&c.cancelled)continue;l=s.properties(t,a,c),c.results=[],o(r||c[u]||a.droppable).each((function(n,r){if(l.target=r,t.isPropagationStopped=function(){return!1},!1===(d=r?i.dispatch.call(r,t,l):null)?(\"drag\"==u&&(c.cancelled=!0,a.propagates-=1),\"drop\"==e&&(c[u][n]=null)):\"dropinit\"==e&&c.droppable.push(s.element(d)||r),\"dragstart\"==e&&(c.proxy=o(s.element(d)||c.drag)[0]),c.results.push(d),delete t.result,\"dropinit\"!==e)return d})),a.results[g]=s.flatten(c.results),\"dropinit\"==e&&(c.droppable=s.flatten(c.droppable)),\"dragstart\"!=e||c.cancelled||l.update()}}while(++g<h);return t.type=p.type,t.originalEvent=p.event,s.flatten(a.results)}},properties:function(t,e,a){var n=a.callback;return n.drag=a.drag,n.proxy=a.proxy||a.drag,n.startX=e.pageX,n.startY=e.pageY,n.deltaX=t.pageX-e.pageX,n.deltaY=t.pageY-e.pageY,n.originalX=a.offset.left,n.originalY=a.offset.top,n.offsetX=n.originalX+n.deltaX,n.offsetY=n.originalY+n.deltaY,n.drop=s.flatten((a.drop||[]).slice()),n.available=s.flatten((a.droppable||[]).slice()),n},element:function(t){if(t&&(t.jquery||1==t.nodeType))return t},flatten:function(t){return o.map(t,(function(t){return t&&t.jquery?o.makeArray(t):t&&t.length?s.flatten(t):t}))},textselect:function(t){o(document)[t?\"off\":\"on\"](\"selectstart\",s.dontstart).css(\"MozUserSelect\",t?\"\":\"none\"),document.unselectable=t?\"off\":\"on\"},dontstart:function(){return!1},callback:function(){}};s.callback.prototype={update:function(){d.drop&&this.available.length&&o.each(this.available,(function(t){d.drop.locate(this,t)}))}};var c=i.dispatch;i.dispatch=function(t){if(!(o.data(this,\"suppress.\"+t.type)-(new Date).getTime()>0))return c.apply(this,arguments);o.removeData(this,\"suppress.\"+t.type)},d.draginit=d.dragstart=d.dragend=s},\n", " 482: function _(t,e,a,n,i){\n", " /*!\n", " * jquery.event.drop - v 2.3.0\n", " * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n", " * Open Source MIT License - http://threedubmedia.com/code/license\n", " */\n", " var o=t(474);o.fn.drop=function(t,e,a){var n=\"string\"==typeof t?t:\"\",i=o.isFunction(t)?t:o.isFunction(e)?e:null;return 0!==n.indexOf(\"drop\")&&(n=\"drop\"+n),a=(t==i?e:a)||{},i?this.on(n,a,i):this.trigger(n)},o.drop=function(t){t=t||{},d.multi=!0===t.multi?1/0:!1===t.multi?1:isNaN(t.multi)?d.multi:t.multi,d.delay=t.delay||d.delay,d.tolerance=o.isFunction(t.tolerance)?t.tolerance:null===t.tolerance?null:d.tolerance,d.mode=t.mode||d.mode||\"intersect\"};var r=o.event.special,d=o.event.special.drop={multi:1,delay:20,mode:\"overlap\",targets:[],datakey:\"dropdata\",noBubble:!0,add:function(t){o.data(this,d.datakey).related+=1},remove:function(){o.data(this,d.datakey).related-=1},setup:function(){if(!o.data(this,d.datakey)){o.data(this,d.datakey,{related:0,active:[],anyactive:0,winner:0,location:{}}),d.targets.push(this)}},teardown:function(){if(!(o.data(this,d.datakey)||{}).related){o.removeData(this,d.datakey);var t=this;d.targets=o.grep(d.targets,(function(e){return e!==t}))}},handler:function(t,e){var a;if(e)switch(t.type){case\"mousedown\":case\"touchstart\":a=o(d.targets),\"string\"==typeof e.drop&&(a=a.filter(e.drop)),a.each((function(){var t=o.data(this,d.datakey);t.active=[],t.anyactive=0,t.winner=0})),e.droppable=a,r.drag.hijack(t,\"dropinit\",e);break;case\"mousemove\":case\"touchmove\":d.event=t,d.timer||d.tolerate(e);break;case\"mouseup\":case\"touchend\":d.timer=clearTimeout(d.timer),e.propagates&&(r.drag.hijack(t,\"drop\",e),r.drag.hijack(t,\"dropend\",e))}},locate:function(t,e){var a=o.data(t,d.datakey),n=o(t),i=n.length&&!n.is(document)?n.offset():{},r=n.outerHeight(),l=n.outerWidth(),c={elem:t,width:l,height:r,top:i.top,left:i.left,right:i.left+l,bottom:i.top+r};return a&&(a.location=c,a.index=e,a.elem=t),c},contains:function(t,e){return(e[0]||e.left)>=t.left&&(e[0]||e.right)<=t.right&&(e[1]||e.top)>=t.top&&(e[1]||e.bottom)<=t.bottom},modes:{intersect:function(t,e,a){return this.contains(a,[t.pageX,t.pageY])?1e9:this.modes.overlap.apply(this,arguments)},overlap:function(t,e,a){return Math.max(0,Math.min(a.bottom,e.bottom)-Math.max(a.top,e.top))*Math.max(0,Math.min(a.right,e.right)-Math.max(a.left,e.left))},fit:function(t,e,a){return this.contains(a,e)?1:0},middle:function(t,e,a){return this.contains(a,[e.left+.5*e.width,e.top+.5*e.height])?1:0}},sort:function(t,e){return e.winner-t.winner||t.index-e.index},tolerate:function(t){var e,a,n,i,l,c,s,u,p=0,h=t.interactions.length,m=[d.event.pageX,d.event.pageY],f=d.tolerance||d.modes[d.mode];do{if(u=t.interactions[p]){if(!u)return;u.drop=[],l=[],c=u.droppable.length,f&&(n=d.locate(u.proxy)),e=0;do{if(s=u.droppable[e]){if(!(a=(i=o.data(s,d.datakey)).location))continue;i.winner=f?f.call(d,d.event,n,a):d.contains(a,m)?1:0,l.push(i)}}while(++e<c);l.sort(d.sort),e=0;do{(i=l[e])&&(i.winner&&u.drop.length<d.multi?(i.active[p]||i.anyactive||(!1!==r.drag.hijack(d.event,\"dropstart\",t,p,i.elem)[0]?(i.active[p]=1,i.anyactive+=1):i.winner=0),i.winner&&u.drop.push(i.elem)):i.active[p]&&1==i.anyactive&&(r.drag.hijack(d.event,\"dropend\",t,p,i.elem),i.active[p]=0,i.anyactive-=1))}while(++e<c)}}while(++p<h);d.last&&m[0]==d.last.pageX&&m[1]==d.last.pageY?delete d.timer:d.timer=setTimeout((function(){d.tolerate(t)}),d.delay),d.last=d.event}};r.dropinit=r.dropstart=r.dropend=d},\n", " 483: function _(e,t,n,r,o){var i=e(474),l=e(476);var a={Avg:function(e){this.field_=e,this.init=function(){this.count_=0,this.nonNullCount_=0,this.sum_=0},this.accumulate=function(e){var t=e[this.field_];this.count_++,null==t||\"\"===t||isNaN(t)||(this.nonNullCount_++,this.sum_+=parseFloat(t))},this.storeResult=function(e){e.avg||(e.avg={}),0!==this.nonNullCount_&&(e.avg[this.field_]=this.sum_/this.nonNullCount_)}},Min:function(e){this.field_=e,this.init=function(){this.min_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(null==this.min_||t<this.min_)&&(this.min_=t)},this.storeResult=function(e){e.min||(e.min={}),e.min[this.field_]=this.min_}},Max:function(e){this.field_=e,this.init=function(){this.max_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(null==this.max_||t>this.max_)&&(this.max_=t)},this.storeResult=function(e){e.max||(e.max={}),e.max[this.field_]=this.max_}},Sum:function(e){this.field_=e,this.init=function(){this.sum_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(this.sum_+=parseFloat(t))},this.storeResult=function(e){e.sum||(e.sum={}),e.sum[this.field_]=this.sum_}},Count:function(e){this.field_=e,this.init=function(){},this.storeResult=function(e){e.count||(e.count={}),e.count[this.field_]=e.group.rows.length}}};t.exports={DataView:function(e){var t,n,r,o,a,u=this,s=\"id\",g=[],c=[],f={},h=null,p=null,d=null,m=!1,v=!0,_={},w={},y=[],$=[],C={getter:null,formatter:null,comparer:function(e,t){return e.value===t.value?0:e.value>t.value?1:-1},predefinedValues:[],aggregators:[],aggregateEmpty:!1,aggregateCollapsed:!1,aggregateChildGroups:!1,collapsed:!1,displayTotalsRow:!0,lazyTotalsCalculation:!1},I=[],R=[],x=[],E=\":|:\",M=0,S=0,b=0,F=new l.Event,A=new l.Event,N=new l.Event,G=new l.Event,T=new l.Event,O=new l.Event,P=new l.Event,D=new l.Event;function K(e){for(var t,n=e=e||0,r=g.length;n<r;n++){if(void 0===(t=g[n][s]))throw new Error(\"Each data element must implement a unique 'id' property\");f[t]=n}}function j(){var e=M?Math.max(1,Math.ceil(b/M)):1;return{pageSize:M,pageNum:S,totalRows:b,totalPages:e,dataView:u}}function B(e,r){v=r,n=e,t=null,!1===r&&g.reverse(),g.sort(e),!1===r&&g.reverse(),f={},K(),se()}function z(e,r){v=r,t=e,n=null;var o=Object.prototype.toString;Object.prototype.toString=\"function\"==typeof e?e:function(){return this[e]},!1===r&&g.reverse(),g.sort(),Object.prototype.toString=o,!1===r&&g.reverse(),f={},K(),se()}function V(t){e.groupItemMetadataProvider||(e.groupItemMetadataProvider=new l.Data.GroupItemMetadataProvider),R=[],x=[],I=(t=t||[])instanceof Array?t:[t];for(var n=0;n<I.length;n++){var r=I[n]=i.extend(!0,{},C,I[n]);r.getterIsAFn=\"function\"==typeof r.getter,r.compiledAccumulators=[];for(var o=r.aggregators.length;o--;)r.compiledAccumulators[o]=re(r.aggregators[o]);x[n]={}}se()}function q(){if(!h){h={};for(var e=0,t=c.length;e<t;e++)h[c[e][s]]=e}}function U(e){return g[f[e]]}function L(e,t){if(void 0===f[e])throw new Error(\"Invalid id\");if(e!==t[s]){var n=t[s];if(null==n)throw new Error(\"Cannot update item to associate with a null id\");if(void 0!==f[n])throw new Error(\"Cannot update item to associate with a non-unique id\");f[n]=f[e],delete f[e],d&&d[e]&&delete d[e],e=n}g[f[e]]=t,d||(d={}),d[e]=!0,se()}function k(e,t){g.splice(e,0,t),K(e),se()}function H(e){var t=f[e];if(void 0===t)throw new Error(\"Invalid id\");delete f[e],g.splice(t,1),K(t),se()}function W(e){if(!n)throw new Error(\"sortedAddItem() requires a sort comparer, use sort()\");k(function(e){var t=0,r=g.length;for(;t<r;){var o=t+r>>>1;-1===n(g[o],e)?t=o+1:r=o}return t}(e),e)}function J(e,t){if(null==e)for(var n=0;n<I.length;n++)x[n]={},I[n].collapsed=t,!0===t?D.notify({level:n,groupingKey:null}):P.notify({level:n,groupingKey:null});else x[e]={},I[e].collapsed=t,!0===t?D.notify({level:e,groupingKey:null}):P.notify({level:e,groupingKey:null});se()}function Q(e,t,n){x[e][t]=I[e].collapsed^n,se()}function X(e,t){for(var n,r,o,i=[],a={},u=t?t.level+1:0,s=I[u],g=0,c=s.predefinedValues.length;g<c;g++)(n=a[r=s.predefinedValues[g]])||((n=new l.Group).value=r,n.level=u,n.groupingKey=(t?t.groupingKey+E:\"\")+r,i[i.length]=n,a[r]=n);for(g=0,c=e.length;g<c;g++)o=e[g],(n=a[r=s.getterIsAFn?s.getter(o):o[s.getter]])||((n=new l.Group).value=r,n.level=u,n.groupingKey=(t?t.groupingKey+E:\"\")+r,i[i.length]=n,a[r]=n),n.rows[n.count++]=o;if(u<I.length-1)for(g=0;g<i.length;g++)(n=i[g]).groups=X(n.rows,n);return i.length&&ee(i,u),i.sort(I[u].comparer),i}function Y(e){var t,n=e.group,r=I[n.level],o=n.level==I.length,i=r.aggregators.length;if(!o&&r.aggregateChildGroups)for(var l=n.groups.length;l--;)n.groups[l].totals.initialized||Y(n.groups[l].totals);for(;i--;)(t=r.aggregators[i]).init(),!o&&r.aggregateChildGroups?r.compiledAccumulators[i].call(t,n.groups):r.compiledAccumulators[i].call(t,n.rows),t.storeResult(e);e.initialized=!0}function Z(e){var t=I[e.level],n=new l.GroupTotals;n.group=e,e.totals=n,t.lazyTotalsCalculation||Y(n)}function ee(e,t){for(var n,r=I[t=t||0],o=r.collapsed,i=x[t],l=e.length;l--;)(n=e[l]).collapsed&&!r.aggregateCollapsed||(n.groups&&ee(n.groups,t+1),r.aggregators.length&&(r.aggregateEmpty||n.rows.length||n.groups&&n.groups.length)&&Z(n),n.collapsed=o^i[n.groupingKey],n.title=r.formatter?r.formatter(n):n.value)}function te(e,t){for(var n,r,o=I[t=t||0],i=[],l=0,a=0,u=e.length;a<u;a++){if(r=e[a],i[l++]=r,!r.collapsed)for(var s=0,g=(n=r.groups?te(r.groups,t+1):r.rows).length;s<g;s++)i[l++]=n[s];r.totals&&o.displayTotalsRow&&(!r.collapsed||o.aggregateCollapsed)&&(i[l++]=r.totals)}return i}function ne(e){var t=e.toString().indexOf(\"function\")>=0?/^function[^(]*\\(([^)]*)\\)\\s*{([\\s\\S]*)}$/:/^[^(]*\\(([^)]*)\\)\\s*{([\\s\\S]*)}$/,n=e.toString().match(t);return{params:n[1].split(\",\"),body:n[2]}}function re(e){if(e.accumulate){var t=ne(e.accumulate),n=new Function(\"_items\",\"for (var \"+t.params[0]+\", _i=0, _il=_items.length; _i<_il; _i++) {\"+t.params[0]+\" = _items[_i]; \"+t.body+\"}\"),r=\"compiledAccumulatorLoop\";return n.displayName=r,n.name=oe(n,r),n}return function(){}}function oe(e,t){try{Object.defineProperty(e,\"name\",{writable:!0,value:t})}catch(n){e.name=t}}function ie(e,t){for(var n=[],r=0,o=0,i=e.length;o<i;o++)p(e[o],t)&&(n[r++]=e[o]);return n}function le(e,t,n){for(var r,o=[],i=0,l=0,a=e.length;l<a;l++)r=e[l],n[l]?o[i++]=r:p(r,t)&&(o[i++]=r,n[l]=!0);return o}function ae(t){if(p){var n=e.inlineFilters?o:ie,i=e.inlineFilters?a:le;_.isFilterNarrowing?y=n(y,r):_.isFilterExpanding?y=i(t,r,$):_.isFilterUnchanged||(y=n(t,r))}else y=M?t:t.concat();var l;return M?(y.length<=S*M&&(S=0===y.length?0:Math.floor((y.length-1)/M)),l=y.slice(M*S,M*S+M)):l=y,{totalRows:y.length,rows:l}}function ue(e){h=null,_.isFilterNarrowing==w.isFilterNarrowing&&_.isFilterExpanding==w.isFilterExpanding||($=[]);var t=ae(e);b=t.totalRows;var n=t.rows;R=[],I.length&&(R=X(n)).length&&(n=te(R));var r=function(e,t){var n,r,o,i=[],l=0,a=Math.max(t.length,e.length);_&&_.ignoreDiffsBefore&&(l=Math.max(0,Math.min(t.length,_.ignoreDiffsBefore))),_&&_.ignoreDiffsAfter&&(a=Math.min(t.length,Math.max(0,_.ignoreDiffsAfter)));for(var u=l,g=e.length;u<a;u++)u>=g?i[i.length]=u:(n=t[u],r=e[u],(!n||I.length&&(o=n.__nonDataRow||r.__nonDataRow)&&n.__group!==r.__group||n.__group&&!n.equals(r)||o&&(n.__groupTotals||r.__groupTotals)||n[s]!=r[s]||d&&d[n[s]])&&(i[i.length]=u));return i}(c,n);return c=n,r}function se(){if(!m){var e=i.extend(!0,{},j()),t=c.length,n=b,r=ue(g);M&&b<S*M&&(S=Math.max(0,Math.ceil(b/M)-1),r=ue(g)),d=null,w=_,_={},n!==b&&(T.notify(e,null,u),O.notify(j(),null,u)),t!==c.length&&A.notify({previous:t,current:c.length,dataView:u,callingOnRowsChanged:r.length>0},null,u),r.length>0&&N.notify({rows:r,dataView:u,calledOnRowCountChanged:t!==c.length},null,u),(t!==c.length||r.length>0)&&G.notify({rowsDiff:r,previousRowCount:t,currentRowCount:c.length,rowCountChanged:t!==c.length,rowsChanged:r.length>0,dataView:u},null,u)}}e=i.extend(!0,{},{groupItemMetadataProvider:null,inlineFilters:!1},e),i.extend(this,{beginUpdate:function(){m=!0},endUpdate:function(){m=!1,se()},setPagingOptions:function(e){T.notify(j(),null,u),null!=e.pageSize&&(M=e.pageSize,S=M?Math.min(S,Math.max(0,Math.ceil(b/M)-1)):0),null!=e.pageNum&&(S=Math.min(e.pageNum,Math.max(0,Math.ceil(b/M)-1))),O.notify(j(),null,u),se()},getPagingInfo:j,getIdPropertyName:function(){return s},getItems:function(){return g},setItems:function(e,t){void 0!==t&&(s=t),g=y=e,f={},K(),function(){for(var e,t=0,n=g.length;t<n;t++)if(void 0===(e=g[t][s])||f[e]!==t)throw new Error(\"Each data element must implement a unique 'id' property\")}(),se(),F.notify({idProperty:t},null,u)},setFilter:function(t){p=t,e.inlineFilters&&(o=function(){var e=ne(p),t=\"{ continue _coreloop; }$1\",n=\"{ _retval[_idx++] = $item$; continue _coreloop; }$1\",r=e.body.replace(/return false\\s*([;}]|\\}|$)/gi,t).replace(/return!1([;}]|\\}|$)/gi,t).replace(/return true\\s*([;}]|\\}|$)/gi,n).replace(/return!0([;}]|\\}|$)/gi,n).replace(/return ([^;}]+?)\\s*([;}]|$)/gi,\"{ if ($1) { _retval[_idx++] = $item$; }; continue _coreloop; }$2\"),o=[\"var _retval = [], _idx = 0; \",\"var $item$, $args$ = _args; \",\"_coreloop: \",\"for (var _i = 0, _il = _items.length; _i < _il; _i++) { \",\"$item$ = _items[_i]; \",\"$filter$; \",\"} \",\"return _retval; \"].join(\"\");o=(o=(o=o.replace(/\\$filter\\$/gi,r)).replace(/\\$item\\$/gi,e.params[0])).replace(/\\$args\\$/gi,e.params[1]);var i=new Function(\"_items,_args\",o),l=\"compiledFilter\";return i.displayName=l,i.name=oe(i,l),i}(),a=function(){var e=ne(p),t=\"{ continue _coreloop; }$1\",n=\"{ _cache[_i] = true;_retval[_idx++] = $item$; continue _coreloop; }$1\",r=e.body.replace(/return false\\s*([;}]|\\}|$)/gi,t).replace(/return!1([;}]|\\}|$)/gi,t).replace(/return true\\s*([;}]|\\}|$)/gi,n).replace(/return!0([;}]|\\}|$)/gi,n).replace(/return ([^;}]+?)\\s*([;}]|$)/gi,\"{ if ((_cache[_i] = $1)) { _retval[_idx++] = $item$; }; continue _coreloop; }$2\"),o=[\"var _retval = [], _idx = 0; \",\"var $item$, $args$ = _args; \",\"_coreloop: \",\"for (var _i = 0, _il = _items.length; _i < _il; _i++) { \",\"$item$ = _items[_i]; \",\"if (_cache[_i]) { \",\"_retval[_idx++] = $item$; \",\"continue _coreloop; \",\"} \",\"$filter$; \",\"} \",\"return _retval; \"].join(\"\");o=(o=(o=o.replace(/\\$filter\\$/gi,r)).replace(/\\$item\\$/gi,e.params[0])).replace(/\\$args\\$/gi,e.params[1]);var i=new Function(\"_items,_args,_cache\",o),l=\"compiledFilterWithCaching\";return i.displayName=l,i.name=oe(i,l),i}()),se()},getFilter:function(){return p},getFilteredItems:function(){return y},sort:B,fastSort:z,reSort:function(){n?B(n,v):t&&z(t,v)},setGrouping:V,getGrouping:function(){return I},groupBy:function(e,t,n){V(null!=e?{getter:e,formatter:t,comparer:n}:[])},setAggregators:function(e,t){if(!I.length)throw new Error(\"At least one grouping must be specified before calling setAggregators().\");I[0].aggregators=e,I[0].aggregateCollapsed=t,V(I)},collapseAllGroups:function(e){J(e,!0)},expandAllGroups:function(e){J(e,!1)},collapseGroup:function(e){var t,n,r=Array.prototype.slice.call(arguments),o=r[0];1===r.length&&-1!==o.indexOf(E)?(t=o,n=o.split(E).length-1):(t=r.join(E),n=r.length-1),Q(n,t,!0),D.notify({level:n,groupingKey:t})},expandGroup:function(e){var t,n,r=Array.prototype.slice.call(arguments),o=r[0];1===r.length&&-1!==o.indexOf(E)?(n=o.split(E).length-1,t=o):(n=r.length-1,t=r.join(E)),Q(n,t,!1),P.notify({level:n,groupingKey:t})},getGroups:function(){return R},getIdxById:function(e){return f[e]},getRowByItem:function(e){return q(),h[e[s]]},getRowById:function(e){return q(),h[e]},getItemById:U,getItemByIdx:function(e){return g[e]},mapItemsToRows:function(e){var t=[];q();for(var n=0,r=e.length;n<r;n++){var o=h[e[n][s]];null!=o&&(t[t.length]=o)}return t},mapRowsToIds:function(e){for(var t=[],n=0,r=e.length;n<r;n++)e[n]<c.length&&(t[t.length]=c[e[n]][s]);return t},mapIdsToRows:function(e){var t=[];q();for(var n=0,r=e.length;n<r;n++){var o=h[e[n]];null!=o&&(t[t.length]=o)}return t},setRefreshHints:function(e){_=e},setFilterArgs:function(e){r=e},refresh:se,updateItem:L,insertItem:k,addItem:function(e){g.push(e),K(g.length-1),se()},deleteItem:H,sortedAddItem:W,sortedUpdateItem:function(e,t){if(void 0===f[e]||e!==t[s])throw new Error(\"Invalid or non-matching id \"+f[e]);if(!n)throw new Error(\"sortedUpdateItem() requires a sort comparer, use sort()\");var r=U(e);0!==n(r,t)?(H(e),W(t)):L(e,t)},syncGridSelection:function(e,t,n){var r,o=this,a=o.mapRowsToIds(e.getSelectedRows()),u=new l.Event;function s(t){a.join(\",\")!=t.join(\",\")&&(a=t,u.notify({grid:e,ids:a,dataView:o},new l.EventData,o))}return e.onSelectedRowsChanged.subscribe((function(t,l){if(!r){var u=o.mapRowsToIds(e.getSelectedRows());if(n&&e.getOptions().multiSelect)s(i.grep(a,(function(e){return void 0===o.getRowById(e)})).concat(u));else s(u)}})),this.onRowsOrCountChanged.subscribe((function(){if(a.length>0){r=!0;var n=o.mapIdsToRows(a);t||s(o.mapRowsToIds(n)),e.setSelectedRows(n),r=!1}})),u},syncGridCellCssStyles:function(e,t){var n,r;function o(e){for(var t in n={},e){var r=c[t][s];n[r]=e[t]}}function i(){if(n){r=!0,q();var o={};for(var i in n){var l=h[i];null!=l&&(o[l]=n[i])}e.setCellCssStyles(t,o),r=!1}}o(e.getCellCssStyles(t)),e.onCellCssStylesChanged.subscribe((function(n,l){r||t==l.key&&(l.hash?o(l.hash):(e.onCellCssStylesChanged.unsubscribe(),u.onRowsOrCountChanged.unsubscribe(i)))})),this.onRowsOrCountChanged.subscribe(i)},getLength:function(){return c.length},getItem:function(e){var t=c[e];if(t&&t.__group&&t.totals&&!t.totals.initialized){var n=I[t.level];n.displayTotalsRow||(Y(t.totals),t.title=n.formatter?n.formatter(t):t.value)}else t&&t.__groupTotals&&!t.initialized&&Y(t);return t},getItemMetadata:function(t){var n=c[t];return void 0===n?null:n.__group?e.groupItemMetadataProvider.getGroupRowMetadata(n):n.__groupTotals?e.groupItemMetadataProvider.getTotalsRowMetadata(n):null},onSetItemsCalled:F,onRowCountChanged:A,onRowsChanged:N,onRowsOrCountChanged:G,onBeforePagingInfoChanged:T,onPagingInfoChanged:O,onGroupExpanded:P,onGroupCollapsed:D})},Aggregators:a,Data:{Aggregators:a}}},\n", " 484: function _(e,t,i,n,o){var l=e(474),a=e(476);function s(e){var t,i;function n(){var t=e.column.editorFixedDecimalPlaces;return void 0===t&&(t=s.DefaultDecimalPlaces),t||0===t?t:null}this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=l(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?u:c).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(o){i=o[e.column.field];var l=n();null!==l&&(i||0===i)&&i.toFixed&&(i=i.toFixed(l)),t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){var e=parseFloat(t.val());s.AllowEmptyValue?e||0===e||(e=\"\"):e=e||0;var i=n();return null!==i&&(e||0===e)&&e.toFixed&&(e=parseFloat(e.toFixed(i))),e},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(isNaN(t.val()))return{valid:!1,msg:\"Please enter a valid number\"};if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()}function u(e){var t=this.selectionStart,i=this.value.length;(e.keyCode===a.keyCode.LEFT&&t>0||e.keyCode===a.keyCode.RIGHT&&t<i-1)&&e.stopImmediatePropagation()}function c(e){e.keyCode!==a.keyCode.LEFT&&e.keyCode!==a.keyCode.RIGHT||e.stopImmediatePropagation()}s.DefaultDecimalPlaces=null,s.AllowEmptyValue=!1,t.exports={Editors:{Text:function(e){var t,i;this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=l(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?u:c).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.getValue=function(){return t.val()},this.setValue=function(e){t.val(e)},this.loadValue=function(n){i=n[e.column.field]||\"\",t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},Integer:function(e){var t,i;this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=l(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?u:c).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field],t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return parseInt(t.val(),10)||0},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(isNaN(t.val()))return{valid:!1,msg:\"Please enter a valid integer\"};if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},Float:s,Date:function(e){var t,i,n=!1;this.init=function(){(t=l(\"<INPUT type=text class='editor-text' />\")).appendTo(e.container),t.focus().select(),t.datepicker({showOn:\"button\",buttonImageOnly:!0,beforeShow:function(){n=!0},onClose:function(){n=!1}}),t.width(t.width()-18)},this.destroy=function(){l.datepicker.dpDiv.stop(!0,!0),t.datepicker(\"hide\"),t.datepicker(\"destroy\"),t.remove()},this.show=function(){n&&l.datepicker.dpDiv.stop(!0,!0).show()},this.hide=function(){n&&l.datepicker.dpDiv.stop(!0,!0).hide()},this.position=function(e){n&&l.datepicker.dpDiv.css(\"top\",e.top+30).css(\"left\",e.left)},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field],t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},YesNoSelect:function(e){var t,i;this.init=function(){(t=l(\"<SELECT tabIndex='0' class='editor-yesno'><OPTION value='yes'>Yes</OPTION><OPTION value='no'>No</OPTION></SELECT>\")).appendTo(e.container),t.focus()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){t.val((i=n[e.column.field])?\"yes\":\"no\"),t.select()},this.serializeValue=function(){return\"yes\"==t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return t.val()!=i},this.validate=function(){return{valid:!0,msg:null}},this.init()},Checkbox:function(e){var t,i;this.init=function(){(t=l(\"<INPUT type=checkbox value='true' class='editor-checkbox' hideFocus>\")).appendTo(e.container),t.focus()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){(i=!!n[e.column.field])?t.prop(\"checked\",!0):t.prop(\"checked\",!1)},this.preClick=function(){t.prop(\"checked\",!t.prop(\"checked\"))},this.serializeValue=function(){return t.prop(\"checked\")},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return this.serializeValue()!==i},this.validate=function(){return{valid:!0,msg:null}},this.init()},PercentComplete:function(e){var t,i,n;this.init=function(){(t=l(\"<INPUT type=text class='editor-percentcomplete' />\")).width(l(e.container).innerWidth()-25),t.appendTo(e.container),(i=l(\"<div class='editor-percentcomplete-picker' />\").appendTo(e.container)).append(\"<div class='editor-percentcomplete-helper'><div class='editor-percentcomplete-wrapper'><div class='editor-percentcomplete-slider' /><div class='editor-percentcomplete-buttons' /></div></div>\"),i.find(\".editor-percentcomplete-buttons\").append(\"<button val=0>Not started</button><br/><button val=50>In Progress</button><br/><button val=100>Complete</button>\"),t.focus().select(),i.find(\".editor-percentcomplete-slider\").slider({orientation:\"vertical\",range:\"min\",value:n,slide:function(e,i){t.val(i.value)}}),i.find(\".editor-percentcomplete-buttons button\").on(\"click\",(function(e){t.val(l(this).attr(\"val\")),i.find(\".editor-percentcomplete-slider\").slider(\"value\",l(this).attr(\"val\"))}))},this.destroy=function(){t.remove(),i.remove()},this.focus=function(){t.focus()},this.loadValue=function(i){t.val(n=i[e.column.field]),t.select()},this.serializeValue=function(){return parseInt(t.val(),10)||0},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==n)&&(parseInt(t.val(),10)||0)!=n},this.validate=function(){return isNaN(parseInt(t.val(),10))?{valid:!1,msg:\"Please enter a valid positive number\"}:{valid:!0,msg:null}},this.init()},LongText:function(e){var t,i,n,o=this;this.init=function(){var n=l(\"body\");e.grid.getOptions().editorCellNavOnLRKeys;i=l(\"<DIV style='z-index:10000;position:absolute;background:white;padding:5px;border:3px solid gray; -moz-border-radius:10px; border-radius:10px;'/>\").appendTo(n),t=l(\"<TEXTAREA hidefocus rows=5 style='background:white;width:250px;height:80px;border:0;outline:0'>\").appendTo(i),l(\"<DIV style='text-align:right'><BUTTON>Save</BUTTON><BUTTON>Cancel</BUTTON></DIV>\").appendTo(i),i.find(\"button:first\").on(\"click\",this.save),i.find(\"button:last\").on(\"click\",this.cancel),t.on(\"keydown\",this.handleKeyDown),o.position(e.position),t.focus().select()},this.handleKeyDown=function(t){if(t.which==a.keyCode.ENTER&&t.ctrlKey)o.save();else if(t.which==a.keyCode.ESCAPE)t.preventDefault(),o.cancel();else if(t.which==a.keyCode.TAB&&t.shiftKey)t.preventDefault(),e.grid.navigatePrev();else if(t.which==a.keyCode.TAB)t.preventDefault(),e.grid.navigateNext();else if((t.which==a.keyCode.LEFT||t.which==a.keyCode.RIGHT)&&e.grid.getOptions().editorCellNavOnLRKeys){var i=this.selectionStart,n=this.value.length;t.keyCode===a.keyCode.LEFT&&0===i&&e.grid.navigatePrev(),t.keyCode===a.keyCode.RIGHT&&i>=n-1&&e.grid.navigateNext()}},this.save=function(){e.commitChanges()},this.cancel=function(){t.val(n),e.cancelChanges()},this.hide=function(){i.hide()},this.show=function(){i.show()},this.position=function(e){i.css(\"top\",e.top-5).css(\"left\",e.left-5)},this.destroy=function(){i.remove()},this.focus=function(){t.focus()},this.loadValue=function(i){t.val(n=i[e.column.field]),t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==n)&&t.val()!=n},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()}}}},\n", " 485: function _(e,n,r,t,c){e(476);n.exports={Formatters:{PercentComplete:function(e,n,r,t,c){return null==r||\"\"===r?\"-\":r<50?\"<span style='color:red;font-weight:bold;'>\"+r+\"%</span>\":\"<span style='color:green'>\"+r+\"%</span>\"},PercentCompleteBar:function(e,n,r,t,c){return null==r||\"\"===r?\"\":\"<span class='percent-complete-bar' style='background:\"+(r<30?\"red\":r<70?\"silver\":\"green\")+\";width:\"+r+\"%'></span>\"},YesNo:function(e,n,r,t,c){return r?\"Yes\":\"No\"},Checkmark:function(e,n,r,t,c){return r?\"<img src='../images/tick.png'>\":\"\"},Checkbox:function(e,n,r,t,c){return'<img class=\"slick-edit-preclick\" src=\"../images/'+(r?\"CheckboxY\":\"CheckboxN\")+'.png\">'}}}},\n", " 486: function _(t,o,r,e,n){var a=t(474),l=t(476);o.exports={RemoteModel:function(){var t=50,o={length:0},r=\"\",e=null,n=1,i=null,s=null,u=new l.Event,f=new l.Event;function c(){for(var t in o)delete o[t];o.length=0}function h(l,c){if(s){s.abort();for(var h=s.fromPage;h<=s.toPage;h++)o[h*t]=void 0}l<0&&(l=0),o.length>0&&(c=Math.min(c,o.length-1));for(var v=Math.floor(l/t),m=Math.floor(c/t);void 0!==o[v*t]&&v<m;)v++;for(;void 0!==o[m*t]&&v<m;)m--;if(v>m||v==m&&void 0!==o[v*t])f.notify({from:l,to:c});else{var g=\"http://octopart.com/api/v3/parts/search?apikey=68b25f31&include[]=short_description&show[]=uid&show[]=manufacturer&show[]=mpn&show[]=brand&show[]=octopart_url&show[]=short_description&q=\"+r+\"&start=\"+v*t+\"&limit=\"+((m-v)*t+t);null!=e&&(g+=\"&sortby=\"+e+(n>0?\"+asc\":\"+desc\")),null!=i&&clearTimeout(i),i=setTimeout((function(){for(var r=v;r<=m;r++)o[r*t]=null;u.notify({from:l,to:c}),(s=a.jsonp({url:g,callbackParameter:\"callback\",cache:!0,success:d,error:function(){!function(t,o){alert(\"error loading pages \"+t+\" to \"+o)}(v,m)}})).fromPage=v,s.toPage=m}),50)}}function d(t){var r=t.request.start,e=r+t.results.length;o.length=Math.min(parseInt(t.hits),1e3);for(var n=0;n<t.results.length;n++){var a=t.results[n].item;o[r+n]=a,o[r+n].index=r+n}s=null,f.notify({from:r,to:e})}return{data:o,clear:c,isDataLoaded:function(t,r){for(var e=t;e<=r;e++)if(null==o[e]||null==o[e])return!1;return!0},ensureData:h,reloadData:function(t,r){for(var e=t;e<=r;e++)delete o[e];h(t,r)},setSort:function(t,o){e=t,n=o,c()},setSearch:function(t){r=t,c()},onDataLoading:u,onDataLoaded:f}}}},\n", " 487: function _(e,s,t,o,l){var a=e(474),r=e(476);s.exports={GroupItemMetadataProvider:function(e){var s,t={checkboxSelect:!1,checkboxSelectCssClass:\"slick-group-select-checkbox\",checkboxSelectPlugin:null,groupCssClass:\"slick-group\",groupTitleCssClass:\"slick-group-title\",totalsCssClass:\"slick-group-totals\",groupFocusable:!0,totalsFocusable:!1,toggleCssClass:\"slick-group-toggle\",toggleExpandedCssClass:\"expanded\",toggleCollapsedCssClass:\"collapsed\",enableExpandCollapse:!0,groupFormatter:function(e,s,t,l,a,r){if(!o.enableExpandCollapse)return a.title;var c=15*a.level+\"px\";return(o.checkboxSelect?'<span class=\"'+o.checkboxSelectCssClass+\" \"+(a.selectChecked?\"checked\":\"unchecked\")+'\"></span>':\"\")+\"<span class='\"+o.toggleCssClass+\" \"+(a.collapsed?o.toggleCollapsedCssClass:o.toggleExpandedCssClass)+\"' style='margin-left:\"+c+\"'></span><span class='\"+o.groupTitleCssClass+\"' level='\"+a.level+\"'>\"+a.title+\"</span>\"},totalsFormatter:function(e,s,t,o,l,a){return o.groupTotalsFormatter&&o.groupTotalsFormatter(l,o,a)||\"\"},includeHeaderTotals:!1},o=a.extend(!0,{},t,e);function l(e,t){var l=a(e.target),c=this.getDataItem(t.row);if(c&&c instanceof r.Group&&l.hasClass(o.toggleCssClass)){var n=s.getRenderedRange();this.getData().setRefreshHints({ignoreDiffsBefore:n.top,ignoreDiffsAfter:n.bottom+1}),c.collapsed?this.getData().expandGroup(c.groupingKey):this.getData().collapseGroup(c.groupingKey),e.stopImmediatePropagation(),e.preventDefault()}if(c&&c instanceof r.Group&&l.hasClass(o.checkboxSelectCssClass)){c.selectChecked=!c.selectChecked,l.removeClass(c.selectChecked?\"unchecked\":\"checked\"),l.addClass(c.selectChecked?\"checked\":\"unchecked\");var i=s.getData().mapItemsToRows(c.rows);(c.selectChecked?o.checkboxSelectPlugin.selectRows:o.checkboxSelectPlugin.deSelectRows)(i)}}function c(e,t){if(o.enableExpandCollapse&&e.which==r.keyCode.SPACE){var l=this.getActiveCell();if(l){var a=this.getDataItem(l.row);if(a&&a instanceof r.Group){var c=s.getRenderedRange();this.getData().setRefreshHints({ignoreDiffsBefore:c.top,ignoreDiffsAfter:c.bottom+1}),a.collapsed?this.getData().expandGroup(a.groupingKey):this.getData().collapseGroup(a.groupingKey),e.stopImmediatePropagation(),e.preventDefault()}}}}return{init:function(e){(s=e).onClick.subscribe(l),s.onKeyDown.subscribe(c)},destroy:function(){s&&(s.onClick.unsubscribe(l),s.onKeyDown.unsubscribe(c))},getGroupRowMetadata:function(e){var s=e&&e.level;return{selectable:!1,focusable:o.groupFocusable,cssClasses:o.groupCssClass+\" slick-group-level-\"+s,formatter:o.includeHeaderTotals&&o.totalsFormatter,columns:{0:{colspan:o.includeHeaderTotals?\"1\":\"*\",formatter:o.groupFormatter,editor:null}}}},getTotalsRowMetadata:function(e){var s=e&&e.group&&e.group.level;return{selectable:!1,focusable:o.totalsFocusable,cssClasses:o.totalsCssClass+\" slick-group-level-\"+s,formatter:o.totalsFormatter,editor:null}},getOptions:function(){return o},setOptions:function(e){a.extend(!0,o,e)}}}}},\n", " 488: function _(i,t,e,o,n){o();const s=i(322),r=i(20);class d extends s.HTMLBoxView{_width_policy(){return\"horizontal\"==this.model.orientation?super._width_policy():\"fixed\"}_height_policy(){return\"horizontal\"==this.model.orientation?\"fixed\":super._height_policy()}box_sizing(){const i=super.box_sizing();return\"horizontal\"==this.model.orientation?null==i.width&&(i.width=this.model.default_size):null==i.height&&(i.height=this.model.default_size),i}}e.WidgetView=d,d.__name__=\"WidgetView\";class _ extends s.HTMLBox{constructor(i){super(i)}static init_Widget(){this.define((({Number:i})=>({orientation:[r.Orientation,\"horizontal\"],default_size:[i,300]}))),this.override({margin:[5,5,5,5]})}}e.Widget=_,_.__name__=\"Widget\",_.init_Widget()},\n", " 489: function _(e,i,t,s,n){s();const c=e(488),u=e(130),a=e(120);class o extends c.Widget{constructor(e){super(e)}static init_TableWidget(){this.define((({Ref:e})=>({source:[e(u.ColumnDataSource),()=>new u.ColumnDataSource],view:[e(a.CDSView),()=>new a.CDSView]})))}initialize(){super.initialize(),null==this.view.source&&(this.view.source=this.source,this.view.compute_indices())}}t.TableWidget=o,o.__name__=\"TableWidget\",o.init_TableWidget()},\n", " 490: function _(t,e,i,r,o){r();const l=t(469),n=t(466),d=t(34),a=t(20),s=t(53);class u extends s.Model{constructor(t){super(t)}static init_TableColumn(){this.define((({Boolean:t,Number:e,String:i,Nullable:r,Ref:o})=>({field:[i],title:[r(i),null],width:[e,300],formatter:[o(l.StringFormatter),()=>new l.StringFormatter],editor:[o(n.StringEditor),()=>new n.StringEditor],sortable:[t,!0],default_sort:[a.Sort,\"ascending\"]})))}toColumn(){var t;return{id:d.uniqueId(),field:this.field,name:null!==(t=this.title)&&void 0!==t?t:this.field,width:this.width,formatter:null!=this.formatter?this.formatter.doFormat.bind(this.formatter):void 0,model:this.editor,editor:this.editor.default_view,sortable:this.sortable,defaultSortAsc:\"ascending\"==this.default_sort}}}i.TableColumn=u,u.__name__=\"TableColumn\",u.init_TableColumn()},\n", " 491: function _(A,o,e,r,i){r(),e.root=\"bk-root\",e.default='.bk-root{}.bk-root .slick-header.ui-state-default,.bk-root .slick-headerrow.ui-state-default,.bk-root .slick-footerrow.ui-state-default,.bk-root .slick-top-panel-scroller.ui-state-default,.bk-root .slick-group-header.ui-state-default{width:100%;overflow:auto;position:relative;border-left:0px !important;}.bk-root .slick-header.ui-state-default{overflow:inherit;}.bk-root .slick-header::-webkit-scrollbar,.bk-root .slick-headerrow::-webkit-scrollbar,.bk-root .slick-footerrow::-webkit-scrollbar{display:none;}.bk-root .slick-header-columns,.bk-root .slick-headerrow-columns,.bk-root .slick-footerrow-columns,.bk-root .slick-group-header-columns{position:relative;white-space:nowrap;cursor:default;overflow:hidden;}.bk-root .slick-header-column.ui-state-default,.bk-root .slick-group-header-column.ui-state-default{position:relative;display:inline-block;box-sizing:content-box !important;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;height:16px;line-height:16px;margin:0;padding:4px;border-right:1px solid silver;border-left:0px !important;border-top:0px !important;border-bottom:0px !important;float:left;}.bk-root .slick-footerrow-column.ui-state-default{-o-text-overflow:ellipsis;text-overflow:ellipsis;margin:0;padding:4px;border-right:1px solid silver;border-left:0px;border-top:0px;border-bottom:0px;float:left;line-height:20px;vertical-align:middle;}.bk-root .slick-headerrow-column.ui-state-default,.bk-root .slick-footerrow-column.ui-state-default{padding:4px;}.bk-root .slick-header-column-sorted{font-style:italic;}.bk-root .slick-sort-indicator{display:inline-block;width:8px;height:5px;margin-left:4px;margin-top:6px;float:left;}.bk-root .slick-sort-indicator-numbered{display:inline-block;width:8px;height:5px;margin-left:4px;margin-top:0;line-height:20px;float:left;font-family:Arial;font-style:normal;font-weight:bold;color:#6190CD;}.bk-root .slick-sort-indicator-desc{background:url(images/sort-desc.gif);}.bk-root .slick-sort-indicator-asc{background:url(images/sort-asc.gif);}.bk-root .slick-resizable-handle{position:absolute;font-size:0.1px;display:block;cursor:col-resize;width:9px;right:-5px;top:0;height:100%;z-index:1;}.bk-root .slick-sortable-placeholder{background:silver;}.bk-root .grid-canvas{position:relative;outline:0;}.bk-root .slick-row.ui-widget-content,.bk-root .slick-row.ui-state-active{position:absolute;border:0px;width:100%;}.bk-root .slick-cell,.bk-root .slick-headerrow-column,.bk-root .slick-footerrow-column{position:absolute;border:1px solid transparent;border-right:1px dotted silver;border-bottom-color:silver;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;vertical-align:middle;z-index:1;padding:1px 2px 2px 1px;margin:0;white-space:nowrap;cursor:default;}.bk-root .slick-cell,.bk-root .slick-headerrow-column{border-bottom-color:silver;}.bk-root .slick-footerrow-column{border-top-color:silver;}.bk-root .slick-group-toggle{display:inline-block;}.bk-root .slick-cell.highlighted{background:lightskyblue;background:rgba(0, 0, 255, 0.2);-webkit-transition:all 0.5s;-moz-transition:all 0.5s;-o-transition:all 0.5s;transition:all 0.5s;}.bk-root .slick-cell.flashing{border:1px solid red !important;}.bk-root .slick-cell.editable{z-index:11;overflow:visible;background:white;border-color:black;border-style:solid;}.bk-root .slick-cell:focus{outline:none;}.bk-root .slick-reorder-proxy{display:inline-block;background:blue;opacity:0.15;cursor:move;}.bk-root .slick-reorder-guide{display:inline-block;height:2px;background:blue;opacity:0.7;}.bk-root .slick-selection{z-index:10;position:absolute;border:2px dashed black;}.bk-root .slick-pane{position:absolute;outline:0;overflow:hidden;width:100%;}.bk-root .slick-pane-header{display:block;}.bk-root .slick-header{overflow:hidden;position:relative;}.bk-root .slick-headerrow{overflow:hidden;position:relative;}.bk-root .slick-top-panel-scroller{overflow:hidden;position:relative;}.bk-root .slick-top-panel{width:10000px;}.bk-root .slick-viewport{position:relative;outline:0;width:100%;}.bk-root .slick-header-columns{background:url(\\'images/header-columns-bg.gif\\') repeat-x center bottom;border-bottom:1px solid silver;}.bk-root .slick-header-column{background:url(\\'images/header-columns-bg.gif\\') repeat-x center bottom;border-right:1px solid silver;}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background:white url(\\'images/header-columns-over-bg.gif\\') repeat-x center bottom;}.bk-root .slick-headerrow{background:#fafafa;}.bk-root .slick-headerrow-column{background:#fafafa;border-bottom:0;height:100%;}.bk-root .slick-row.ui-state-active{background:#F5F7D7;}.bk-root .slick-row{position:absolute;background:white;border:0px;line-height:20px;}.bk-root .slick-row.selected{z-index:10;background:#DFE8F6;}.bk-root .slick-cell{padding-left:4px;padding-right:4px;}.bk-root .slick-group{border-bottom:2px solid silver;}.bk-root .slick-group-toggle{width:9px;height:9px;margin-right:5px;}.bk-root .slick-group-toggle.expanded{background:url(images/collapse.gif) no-repeat center center;}.bk-root .slick-group-toggle.collapsed{background:url(images/expand.gif) no-repeat center center;}.bk-root .slick-group-totals{color:gray;background:white;}.bk-root .slick-group-select-checkbox{width:13px;height:13px;margin:3px 10px 0 0;display:inline-block;}.bk-root .slick-group-select-checkbox.checked{background:url(images/GrpCheckboxY.png) no-repeat center center;}.bk-root .slick-group-select-checkbox.unchecked{background:url(images/GrpCheckboxN.png) no-repeat center center;}.bk-root .slick-cell.selected{background-color:beige;}.bk-root .slick-cell.active{border-color:gray;border-style:solid;}.bk-root .slick-sortable-placeholder{background:silver !important;}.bk-root .slick-row.odd{background:#fafafa;}.bk-root .slick-row.ui-state-active{background:#F5F7D7;}.bk-root .slick-row.loading{opacity:0.5;}.bk-root .slick-cell.invalid{border-color:red;-moz-animation-duration:0.2s;-webkit-animation-duration:0.2s;-moz-animation-name:slickgrid-invalid-hilite;-webkit-animation-name:slickgrid-invalid-hilite;}@-moz-keyframes slickgrid-invalid-hilite{from{box-shadow:0 0 6px red;}to{box-shadow:none;}}@-webkit-keyframes slickgrid-invalid-hilite{from{box-shadow:0 0 6px red;}to{box-shadow:none;}}.bk-root .slick-column-name,.bk-root .slick-sort-indicator{display:inline-block;float:left;margin-bottom:100px;}.bk-root .slick-header-button{display:inline-block;float:right;vertical-align:top;margin:1px;margin-bottom:100px;height:15px;width:15px;background-repeat:no-repeat;background-position:center center;cursor:pointer;}.bk-root .slick-header-button-hidden{width:0;-webkit-transition:0.2s width;-ms-transition:0.2s width;transition:0.2s width;}.bk-root .slick-header-column:hover > .slick-header-button{width:15px;}.bk-root .slick-header-menubutton{position:absolute;right:0;top:0;bottom:0;width:14px;background-repeat:no-repeat;background-position:left center;background-image:url(../images/down.gif);cursor:pointer;display:none;border-left:thin ridge silver;}.bk-root .slick-header-column:hover > .slick-header-menubutton,.bk-root .slick-header-column-active .slick-header-menubutton{display:inline-block;}.bk-root .slick-header-menu{position:absolute;display:inline-block;margin:0;padding:2px;cursor:default;}.bk-root .slick-header-menuitem{list-style:none;margin:0;padding:0;cursor:pointer;}.bk-root .slick-header-menuicon{display:inline-block;width:16px;height:16px;vertical-align:middle;margin-right:4px;background-repeat:no-repeat;background-position:center center;}.bk-root .slick-header-menucontent{display:inline-block;vertical-align:middle;}.bk-root .slick-header-menuitem-disabled{color:silver;}.bk-root .slick-header-menuitem.slick-header-menuitem-divider{cursor:default;border:none;overflow:hidden;padding:0;height:1px;margin:8px 2px;background-color:#cecece;}.bk-root .slick-header-menuitem-divider.slick-header-menuitem:hover{background-color:#cecece;}.bk-root .slick-columnpicker{border:1px solid #718BB7;background:#f0f0f0;padding:6px;-moz-box-shadow:2px 2px 2px silver;-webkit-box-shadow:2px 2px 2px silver;box-shadow:2px 2px 2px silver;min-width:150px;cursor:default;position:absolute;z-index:20;overflow:auto;resize:both;}.bk-root .slick-columnpicker > .close{float:right;}.bk-root .slick-columnpicker .title{font-size:16px;width:60%;border-bottom:solid 1px #d6d6d6;margin-bottom:10px;}.bk-root .slick-columnpicker li{list-style:none;margin:0;padding:0;background:none;}.bk-root .slick-columnpicker input{margin:4px;}.bk-root .slick-columnpicker li a{display:block;padding:4px;font-weight:bold;}.bk-root .slick-columnpicker li a:hover{background:white;}.bk-root .slick-columnpicker-list li.hidden{display:none;}.bk-root .slick-pager{width:100%;height:26px;border:1px solid gray;border-top:0;background:url(\\'../images/header-columns-bg.gif\\') repeat-x center bottom;vertical-align:middle;}.bk-root .slick-pager .slick-pager-status{display:inline-block;padding:6px;}.bk-root .slick-pager .ui-icon-container{display:inline-block;margin:2px;border-color:gray;}.bk-root .slick-pager .slick-pager-nav{display:inline-block;float:left;padding:2px;}.bk-root .slick-pager .slick-pager-settings{display:block;float:right;padding:2px;}.bk-root .slick-pager .slick-pager-settings *{vertical-align:middle;}.bk-root .slick-pager .slick-pager-settings a{padding:2px;text-decoration:underline;cursor:pointer;}.bk-root .slick-header-columns{border-bottom:1px solid silver;background-image:none;}.bk-root .slick-header-column{border-right:1px solid transparent;background-image:none;}.bk-root .slick-header-column:last-of-type{border-right-color:transparent;}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background-color:#F0F8FF;background-image:none;}.bk-root .slick-group-toggle.expanded{background-image:url(\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIMwADCBxIUIDBgwIEChgwwECBAgQUFjBAkaJCABgxGlB4AGHCAAIQiBypEEECkScJqgwQEAA7\");}.bk-root .slick-group-toggle.collapsed{background-image:url(\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIOAADCBxIUIDBgwIEChgwAECBAgQUFjAAQIABAwoBaNSIMYCAAwIqGlSIAEHFkiQTIBCgkqDLAAEBADs=\");}.bk-root .slick-group-select-checkbox.checked{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAAEcSURBVChTjdI9S8NQFAbg/raQXVwCRRFE7GK7OXTwD+ikk066VF3a0ja0hQTyQdJrwNq0zrYSQRLEXMSWSlCIb8glqRcFD+9yz3nugXwU4n9XQqMoGjj36uBJsTwuaNo3EwBG4Yy7pe7Gv8YcvhJCGFVsjxsjxujj6OTSGlHv+U2WZUZbPWKOv1ZjT5a7pbIoiptbO5b73mwrjHa1B27l8VlTEIS1damlTnEE+EEN9/P8WrfH81qdAIGeXvTTmzltdCy46sEhxpKUINReZR9NnqZbr9puugxV3NjWh/k74WmmEdWhmUNy2jNmWRc6fZTVADCqao52u+DGWTACYNT3fRxwtatPufTNR4yCIGAUn5hS+vJHhWGY/ANx/A3tvdv+1tZmuwAAAABJRU5ErkJggg==\");}.bk-root .slick-group-select-checkbox.unchecked{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACXSURBVChT1dIxC4MwEAXg/v8/VOhQVDBNakV0KA6pxS4JhWRSIYPEJxwdDi1de7wleR+3JIf486w0hKCKRpSvvOhZcCmvNQBRuKqdah03U7UjNNH81rOaBYDo8SQaPX8JANFEaLaGBeAPaaY61rGksiN6TmR5H1j9CSoAosYYHLA7vTxYMvVEZa0liif23r93xjm3/oEYF8PiDn/I2FHCAAAAAElFTkSuQmCC\");}.bk-root .slick-sort-indicator-desc{background-image:url(\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgeAAUAGEgQgIAACBEKLHgwYcKFBh1KFNhQosOKEgMCADs=\");}.bk-root .slick-sort-indicator-asc{background-image:url(\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgbAAMIDABgoEGDABIeRJhQ4cKGEA8KmEiRosGAADs=\");}.bk-root .slick-header-menubutton{background-image:url(\"data:image/gif;base64,R0lGODlhDgAOAIABADtKYwAAACH5BAEAAAEALAAAAAAOAA4AAAISjI+py+0PHZgUsGobhTn6DxoFADs=\");}.bk-root .slick-pager{background-image:none;}'},\n", " 492: function _(t,e,s,r,a){r();const i=t(479),{Avg:g,Min:n,Max:o,Sum:u}=i.Data.Aggregators,c=t(53);class _ extends c.Model{constructor(t){super(t)}static init_RowAggregator(){this.define((({String:t})=>({field_:[t,\"\"]})))}}s.RowAggregator=_,_.__name__=\"RowAggregator\",_.init_RowAggregator();const l=new g;class m extends _{constructor(){super(...arguments),this.key=\"avg\",this.init=l.init,this.accumulate=l.accumulate,this.storeResult=l.storeResult}}s.AvgAggregator=m,m.__name__=\"AvgAggregator\";const h=new n;class A extends _{constructor(){super(...arguments),this.key=\"min\",this.init=h.init,this.accumulate=h.accumulate,this.storeResult=h.storeResult}}s.MinAggregator=A,A.__name__=\"MinAggregator\";const R=new o;class x extends _{constructor(){super(...arguments),this.key=\"max\",this.init=R.init,this.accumulate=R.accumulate,this.storeResult=R.storeResult}}s.MaxAggregator=x,x.__name__=\"MaxAggregator\";const d=new u;class w extends _{constructor(){super(...arguments),this.key=\"sum\",this.init=d.init,this.accumulate=d.accumulate,this.storeResult=d.storeResult}}s.SumAggregator=w,w.__name__=\"SumAggregator\"},\n", " 493: function _(t,e,s,o,r){o();const i=t(43),a=t(479),n=t(467),l=t(472),u=t(130),g=t(492),c=t(53);function p(t,e,s,o,r){const{collapsed:a,level:n,title:l}=r,u=i.span({class:\"slick-group-toggle \"+(a?\"collapsed\":\"expanded\"),style:{\"margin-left\":15*n+\"px\"}}),g=i.span({class:\"slick-group-title\",level:n},l);return`${u.outerHTML}${g.outerHTML}`}function h(t,e){const s=this.getDataItem(e.row);s instanceof a.Group&&t.target.classList.contains(\"slick-group-toggle\")&&(s.collapsed?this.getData().expandGroup(s.groupingKey):this.getData().collapseGroup(s.groupingKey),t.stopImmediatePropagation(),t.preventDefault(),this.invalidate(),this.render())}class d extends c.Model{constructor(t){super(t)}static init_GroupingInfo(){this.define((({Boolean:t,String:e,Array:s,Ref:o})=>({getter:[e,\"\"],aggregators:[s(o(g.RowAggregator)),[]],collapsed:[t,!1]})))}get comparer(){return(t,e)=>t.value===e.value?0:t.value>e.value?1:-1}}s.GroupingInfo=d,d.__name__=\"GroupingInfo\",d.init_GroupingInfo();class f extends l.TableDataProvider{constructor(t,e,s,o){super(t,e),this.columns=s,this.groupingInfos=[],this.groupingDelimiter=\":|:\",this.target=o}setGrouping(t){this.groupingInfos=t,this.toggledGroupsByLevel=t.map((()=>({}))),this.refresh()}extractGroups(t,e){const s=[],o=new Map,r=e?e.level+1:0,{comparer:i,getter:n}=this.groupingInfos[r];return t.forEach((t=>{const i=this.source.data[n][t];let l=o.get(i);if(!l){const t=e?`${e.groupingKey}${this.groupingDelimiter}${i}`:`${i}`;l=Object.assign(new a.Group,{value:i,level:r,groupingKey:t}),s.push(l),o.set(i,l)}l.rows.push(t)})),r<this.groupingInfos.length-1&&s.forEach((t=>{t.groups=this.extractGroups(t.rows,t)})),s.sort(i),s}calculateTotals(t,e){const s={avg:{},max:{},min:{},sum:{}},{source:{data:o}}=this,r=Object.keys(o),i=t.rows.map((t=>r.reduce(((e,s)=>Object.assign(Object.assign({},e),{[s]:o[s][t]})),{})));return e.forEach((t=>{t.init(),i.forEach((e=>t.accumulate(e))),t.storeResult(s)})),s}addTotals(t,e=0){const{aggregators:s,collapsed:o}=this.groupingInfos[e],r=this.toggledGroupsByLevel[e];t.forEach((t=>{t.groups&&this.addTotals(t.groups,e+1),s.length&&t.rows.length&&(t.totals=this.calculateTotals(t,s)),t.collapsed=o!==r[t.groupingKey],t.title=t.value?`${t.value}`:\"\"}))}flattenedGroupedRows(t,e=0){const s=[];return t.forEach((t=>{if(s.push(t),!t.collapsed){const o=t.groups?this.flattenedGroupedRows(t.groups,e+1):t.rows;s.push(...o)}})),s}refresh(){const t=this.extractGroups([...this.view.indices]),e=this.source.data[this.columns[0].field];t.length&&(this.addTotals(t),this.rows=this.flattenedGroupedRows(t),this.target.data={row_indices:this.rows.map((t=>t instanceof a.Group?t.rows:t)),labels:this.rows.map((t=>t instanceof a.Group?t.title:e[t]))})}getLength(){return this.rows.length}getItem(t){const e=this.rows[t],{source:{data:s}}=this;return e instanceof a.Group?e:Object.keys(s).reduce(((t,o)=>Object.assign(Object.assign({},t),{[o]:s[o][e]})),{[n.DTINDEX_NAME]:e})}getItemMetadata(t){const e=this.rows[t],s=this.columns.slice(1),o=e instanceof a.Group?this.groupingInfos[e.level].aggregators:[];return e instanceof a.Group?{selectable:!1,focusable:!1,cssClasses:\"slick-group\",columns:[{formatter:p},...s.map((function(t){const{field:e,formatter:s}=t,r=o.find((({field_:t})=>t===e));if(r){const{key:t}=r;return{formatter:(o,r,i,a,n)=>s?s(o,r,n.totals[t][e],a,n):\"\"}}return{}}))]}:{}}collapseGroup(t){const e=t.split(this.groupingDelimiter).length-1;this.toggledGroupsByLevel[e][t]=!this.groupingInfos[e].collapsed,this.refresh()}expandGroup(t){const e=t.split(this.groupingDelimiter).length-1;this.toggledGroupsByLevel[e][t]=this.groupingInfos[e].collapsed,this.refresh()}}s.DataCubeProvider=f,f.__name__=\"DataCubeProvider\";class m extends l.DataTableView{render(){const t={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:!1,autosizeColsMode:this.autosize,multiColumnSort:!1,editable:this.model.editable,autoEdit:this.model.auto_edit,rowHeight:this.model.row_height},e=this.model.columns.map((t=>t.toColumn()));var s,o;e[0].formatter=(s=e[0].formatter,o=this.model.grouping.length,(t,e,r,a,n)=>{const l=i.span({class:\"slick-group-toggle\",style:{\"margin-left\":15*(null!=o?o:0)+\"px\"}}),u=s?s(t,e,r,a,n):`${r}`;return`${l.outerHTML}${u&&u.replace(/^<div/,\"<span\").replace(/div>$/,\"span>\")}`}),delete e[0].editor,this.data=new f(this.model.source,this.model.view,e,this.model.target),this.data.setGrouping(this.model.grouping),this.el.style.width=`${this.model.width}px`,this.grid=new a.Grid(this.el,this.data,e,t),this.grid.onClick.subscribe(h)}}s.DataCubeView=m,m.__name__=\"DataCubeView\";class w extends l.DataTable{constructor(t){super(t)}static init_DataCube(){this.prototype.default_view=m,this.define((({Array:t,Ref:e})=>({grouping:[t(e(d)),[]],target:[e(u.ColumnDataSource)]})))}}s.DataCube=w,w.__name__=\"DataCube\",w.init_DataCube()},\n", " }, 464, {\"models/widgets/tables/main\":464,\"models/widgets/tables/index\":465,\"models/widgets/tables/cell_editors\":466,\"models/widgets/tables/definitions\":467,\"styles/widgets/tables.css\":468,\"models/widgets/tables/cell_formatters\":469,\"models/widgets/tables/data_table\":472,\"models/widgets/widget\":488,\"models/widgets/tables/table_widget\":489,\"models/widgets/tables/table_column\":490,\"styles/widgets/slickgrid.css\":491,\"models/widgets/tables/row_aggregators\":492,\"models/widgets/tables/data_cube\":493}, {});});\n", "\n", " /* END bokeh-tables.min.js */\n", " },\n", " \n", " function(Bokeh) {\n", " Bokeh.set_log_level(\"info\");\n", " },\n", " \n", " function(Bokeh) {\n", " /* BEGIN panel.min.js */\n", " /*!\n", " * Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors\n", " * All rights reserved.\n", " * \n", " * Redistribution and use in source and binary forms, with or without modification,\n", " * are permitted provided that the following conditions are met:\n", " * \n", " * Redistributions of source code must retain the above copyright notice,\n", " * this list of conditions and the following disclaimer.\n", " * \n", " * Redistributions in binary form must reproduce the above copyright notice,\n", " * this list of conditions and the following disclaimer in the documentation\n", " * and/or other materials provided with the distribution.\n", " * \n", " * Neither the name of Anaconda nor the names of any contributors\n", " * may be used to endorse or promote products derived from this software\n", " * without specific prior written permission.\n", " * \n", " * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n", " * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n", " * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n", " * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n", " * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n", " * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n", " * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n", " * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n", " * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n", " * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n", " * THE POSSIBILITY OF SUCH DAMAGE.\n", " */\n", " (function(root, factory) {\n", " factory(root[\"Bokeh\"], undefined);\n", " })(this, function(Bokeh, version) {\n", " var define;\n", " return (function(modules, entry, aliases, externals) {\n", " const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n", " if (bokeh != null) {\n", " return bokeh.register_plugin(modules, entry, aliases);\n", " } else {\n", " throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n", " }\n", " })\n", " ({\n", " \"4e90918c0a\": function _(e,s,t,o,i){o();const n=e(\"tslib\").__importStar(e(\"7898617fc4\"));t.Panel=n;e(\"@bokehjs/base\").register_models(n)},\n", " \"7898617fc4\": function _(e,a,t,o,c){o();const d=e(\"tslib\");c(\"AcePlot\",e(\"be520eff91\").AcePlot),c(\"Audio\",e(\"339f84d639\").Audio),c(\"Card\",e(\"c816112d20\").Card),c(\"CommManager\",e(\"e552778259\").CommManager),c(\"DataTabulator\",e(\"cd0a5e2f82\").DataTabulator),c(\"DatetimePicker\",e(\"6e11b2cfe2\").DatetimePicker),c(\"DeckGLPlot\",e(\"df2378664f\").DeckGLPlot),c(\"ECharts\",e(\"9d046c4720\").ECharts),c(\"HTML\",e(\"2839081043\").HTML),c(\"IDOM\",e(\"7d45bd3bc4\").IDOM),c(\"IPyWidget\",e(\"0eae77d68f\").IPyWidget),c(\"JSON\",e(\"0d30bea0c8\").JSON),c(\"FileDownload\",e(\"1767172ffa\").FileDownload),c(\"KaTeX\",e(\"7b859fb3cf\").KaTeX),c(\"Location\",e(\"642aa56b24\").Location),c(\"MathJax\",e(\"0c21036737\").MathJax),c(\"Perspective\",e(\"84a772681d\").Perspective),c(\"Player\",e(\"2e8044c920\").Player),c(\"PlotlyPlot\",e(\"c23bb1717d\").PlotlyPlot),c(\"Progress\",e(\"9f787650b9\").Progress),c(\"ReactiveHTML\",e(\"d536149aaa\").ReactiveHTML),c(\"SingleSelect\",e(\"3b85956787\").SingleSelect),c(\"SpeechToText\",e(\"aaa48703af\").SpeechToText),c(\"State\",e(\"bfa46a5f19\").State),c(\"Terminal\",e(\"91fe88c277\").Terminal),c(\"TextToSpeech\",e(\"33cd2c254e\").TextToSpeech),c(\"TrendIndicator\",e(\"ded3463d6c\").TrendIndicator),c(\"VegaPlot\",e(\"4feb5fa522\").VegaPlot),c(\"Video\",e(\"ffe54b53c3\").Video),c(\"VideoStream\",e(\"e3e9b8e495\").VideoStream),d.__exportStar(e(\"c51f25e2a7\"),t)},\n", " \"be520eff91\": function _(e,t,i,o,s){o();const n=e(\"@bokehjs/models/layouts/html_box\"),a=e(\"@bokehjs/core/dom\"),d=e(\"4c755983eb\");class h extends d.PanelHTMLBoxView{initialize(){super.initialize(),this._ace=window.ace,this._container=a.div({id:\"_\"+Math.random().toString(36).substr(2,9),style:{width:\"100%\",height:\"100%\",zIndex:0}})}connect_signals(){super.connect_signals(),this.connect(this.model.properties.code.change,(()=>this._update_code_from_model())),this.connect(this.model.properties.theme.change,(()=>this._update_theme())),this.connect(this.model.properties.language.change,(()=>this._update_language())),this.connect(this.model.properties.filename.change,(()=>this._update_filename())),this.connect(this.model.properties.print_margin.change,(()=>this._update_print_margin())),this.connect(this.model.properties.annotations.change,(()=>this._add_annotations())),this.connect(this.model.properties.readonly.change,(()=>{this._editor.setReadOnly(this.model.readonly)}))}render(){super.render(),this._container!==this.el.childNodes[0]&&this.el.appendChild(this._container),this._container.textContent=this.model.code,this._editor=this._ace.edit(this._container.id),this._langTools=this._ace.require(\"ace/ext/language_tools\"),this._modelist=this._ace.require(\"ace/ext/modelist\"),this._editor.setOptions({enableBasicAutocompletion:!0,enableSnippets:!0,fontFamily:\"monospace\"}),this._update_theme(),this._update_filename(),this._update_language(),this._editor.setReadOnly(this.model.readonly),this._editor.setShowPrintMargin(this.model.print_margin),this._editor.on(\"change\",(()=>this._update_code_from_editor()))}_update_code_from_model(){this._editor&&this._editor.getValue()!=this.model.code&&this._editor.setValue(this.model.code)}_update_print_margin(){this._editor.setShowPrintMargin(this.model.print_margin)}_update_code_from_editor(){this._editor.getValue()!=this.model.code&&(this.model.code=this._editor.getValue())}_update_theme(){this._editor.setTheme(`ace/theme/${this.model.theme}`)}_update_filename(){if(this.model.filename){const e=this._modelist.getModeForPath(this.model.filename).mode;this.model.language=e.slice(9)}}_update_language(){null!=this.model.language&&this._editor.session.setMode(`ace/mode/${this.model.language}`)}_add_annotations(){this._editor.session.setAnnotations(this.model.annotations)}after_layout(){super.after_layout(),this._editor.resize()}}i.AcePlotView=h,h.__name__=\"AcePlotView\";class _ extends n.HTMLBox{constructor(e){super(e)}static init_AcePlot(){this.prototype.default_view=h,this.define((({Any:e,Array:t,Boolean:i,String:o})=>({code:[o,\"\"],filename:[o],language:[o],theme:[o,\"chrome\"],annotations:[t(e),[]],readonly:[i,!1],print_margin:[i,!1]}))),this.override({height:300,width:300})}}i.AcePlot=_,_.__name__=\"AcePlot\",_.__module__=\"panel.models.ace\",_.init_AcePlot()},\n", " \"4c755983eb\": function _(e,i,t,s,h){s();const n=e(\"@bokehjs/core/layout/html\"),_=e(\"@bokehjs/core/layout/types\"),a=e(\"@bokehjs/core/dom\"),l=e(\"@bokehjs/models/widgets/markup\"),o=e(\"@bokehjs/models/layouts/html_box\");function d(e,i){let t=null!=i.width?\"fixed\":\"fit\",s=null!=i.height?\"fixed\":\"fit\";const{sizing_mode:h}=i;if(null!=h)if(\"fixed\"==h)t=s=\"fixed\";else if(\"stretch_both\"==h)t=s=\"max\";else if(\"stretch_width\"==h)t=\"max\";else if(\"stretch_height\"==h)s=\"max\";else switch(h){case\"scale_width\":t=\"max\",s=\"min\";break;case\"scale_height\":t=\"min\",s=\"max\";break;case\"scale_both\":t=\"max\",s=\"max\";break;default:throw new Error(\"unreachable\")}\"fixed\"==t&&i.width?e.style.width=i.width+\"px\":\"max\"==t&&(e.style.width=\"100%\"),null!=i.min_width&&(e.style.minWidth=i.min_width+\"px\"),null!=i.max_width&&(e.style.maxWidth=i.max_width+\"px\"),\"fixed\"==s&&i.height?e.style.height=i.height+\"px\":\"max\"==s&&(e.style.height=\"100%\"),null!=i.min_height&&(e.style.minHeight=i.min_height+\"px\"),null!=i.max_width&&(e.style.maxHeight=i.max_height+\"px\")}t.set_size=d;class m extends n.VariadicBox{constructor(e,i,t){super(e),this.el=e,this.sizing_mode=i,this.changed=t,this._cache=new Map,this._cache_count=new Map}_measure(e){const i=[e.width,e.height,this.sizing_mode].toString(),t=this.changed&&\"fixed\"!=this.sizing_mode&&null!=this.sizing_mode?1:0,s=this._cache.get(i),h=this._cache_count.get(i);if(null!=s&&null!=h&&h>=t)return this._cache_count.set(i,h+1),s;const n=new _.Sizeable(e).bounded_to(this.sizing.size),l=a.sized(this.el,n,(()=>{const e=new _.Sizeable(a.content_size(this.el)),{border:i,padding:t}=a.extents(this.el);return e.grow_by(i).grow_by(t).map(Math.ceil)}));return this._cache.set(i,l),this._cache_count.set(i,0),l}invalidate_cache(){}}t.CachedVariadicBox=m,m.__name__=\"CachedVariadicBox\";class c extends l.MarkupView{_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new m(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}render(){super.render(),d(this.markup_el,this.model)}}t.PanelMarkupView=c,c.__name__=\"PanelMarkupView\";class r extends o.HTMLBoxView{_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new m(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}render(){super.render(),d(this.el,this.model)}}t.PanelHTMLBoxView=r,r.__name__=\"PanelHTMLBoxView\"},\n", " \"339f84d639\": function _(e,t,i,o,s){o();const l=e(\"@bokehjs/models/layouts/html_box\"),d=e(\"4c755983eb\");class u extends d.PanelHTMLBoxView{initialize(){super.initialize(),this._blocked=!1,this._setting=!1,this._time=Date.now()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.loop.change,(()=>this.set_loop())),this.connect(this.model.properties.paused.change,(()=>this.set_paused())),this.connect(this.model.properties.time.change,(()=>this.set_time())),this.connect(this.model.properties.value.change,(()=>this.set_value())),this.connect(this.model.properties.volume.change,(()=>this.set_volume()))}render(){super.render(),this.audioEl=document.createElement(\"audio\"),this.audioEl.controls=!0,this.audioEl.src=this.model.value,this.audioEl.currentTime=this.model.time,this.audioEl.loop=this.model.loop,null!=this.model.volume?this.audioEl.volume=this.model.volume/100:this.model.volume=100*this.audioEl.volume,this.audioEl.onpause=()=>this.model.paused=!0,this.audioEl.onplay=()=>this.model.paused=!1,this.audioEl.ontimeupdate=()=>this.update_time(this),this.audioEl.onvolumechange=()=>this.update_volume(this),this.el.appendChild(this.audioEl),this.model.paused||this.audioEl.play()}update_time(e){e._setting?e._setting=!1:Date.now()-e._time<e.model.throttle||(e._blocked=!0,e.model.time=e.audioEl.currentTime,e._time=Date.now())}update_volume(e){e._setting?e._setting=!1:(e._blocked=!0,e.model.volume=100*e.audioEl.volume)}set_loop(){this.audioEl.loop=this.model.loop}set_paused(){!this.audioEl.paused&&this.model.paused&&this.audioEl.pause(),this.audioEl.paused&&!this.model.paused&&this.audioEl.play()}set_volume(){this._blocked?this._blocked=!1:(this._setting=!0,null!=this.model.volume&&(this.audioEl.volume=this.model.volume/100))}set_time(){this._blocked?this._blocked=!1:(this._setting=!0,this.audioEl.currentTime=this.model.time)}set_value(){this.audioEl.src=this.model.value}}i.AudioView=u,u.__name__=\"AudioView\";class h extends l.HTMLBox{constructor(e){super(e)}static init_Audio(){this.prototype.default_view=u,this.define((({Any:e,Boolean:t,Int:i,Number:o})=>({loop:[t,!1],paused:[t,!0],time:[o,0],throttle:[o,250],value:[e,\"\"],volume:[i]})))}}i.Audio=h,h.__name__=\"Audio\",h.__module__=\"panel.models.widgets\",h.init_Audio()},\n", " \"c816112d20\": function _(e,s,l,t,o){t();const i=e(\"tslib\"),a=e(\"@bokehjs/models/layouts/column\"),n=e(\"@bokehjs/core/util/bbox\"),c=i.__importStar(e(\"@bokehjs/core/dom\")),d=e(\"@bokehjs/core/dom\"),r=e(\"@bokehjs/core/layout/grid\"),h=e(\"@bokehjs/core/util/color\");class _ extends a.ColumnView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.collapsed.change,(()=>this._collapse()));const{active_header_background:e,header_background:s,header_color:l}=this.model.properties;this.on_change([e,s,l],(()=>this.render()))}_update_layout(){const e=(this.model.collapsed?this.child_views.slice(0,1):this.child_views).map((e=>e.layout));this.layout=new r.Column(e),this.layout.rows=this.model.rows,this.layout.spacing=[this.model.spacing,0],this.layout.set_sizing(this.box_sizing())}update_position(){if(this.model.collapsible){const e=this.child_views[0],s=e.layout.bbox,l=e.layout.inner_bbox;if(0!=s.x1){const t=getComputedStyle(this.button_el.children[0]),o=parseFloat(t.width)+parseFloat(t.marginLeft),i=new n.BBox({x0:s.x0,x1:s.x1-o,y0:s.y0,y1:s.y1}),a=new n.BBox({x0:l.x0,x1:l.x1-o,y0:l.y0,y1:l.y1});e.layout.set_geometry(i,a)}}super.update_position()}render(){d.empty(this.el);const{background:e,button_css_classes:s,header_color:l,header_tag:t,header_css_classes:o}=this.model;this.el.style.backgroundColor=null!=e?h.color2css(e):\"\",d.classes(this.el).clear().add(...this.css_classes());let i=this.model.header_background;!this.model.collapsed&&this.model.active_header_background&&(i=this.model.active_header_background);const a=this.child_views[0];let n;if(this.model.collapsible){this.button_el=c.createElement(\"button\",{type:\"button\",class:o});const e=c.createElement(\"div\",{class:s});e.innerHTML=this.model.collapsed?\"â–º\":\"â–¼\",this.button_el.appendChild(e),this.button_el.style.backgroundColor=null!=i?i:\"\",a.el.style.backgroundColor=null!=i?i:\"\",this.button_el.appendChild(a.el),this.button_el.onclick=()=>this._toggle_button(),n=this.button_el}else n=c.createElement(t,{class:o}),n.style.backgroundColor=null!=i?i:\"\",n.appendChild(a.el);n.style.color=null!=l?l:\"\",this.el.appendChild(n),a.render();for(const e of this.child_views.slice(1))this.model.collapsed||this.el.appendChild(e.el),e.render()}_toggle_button(){this.model.collapsed=!this.model.collapsed}_collapse(){this.invalidate_render()}_createElement(){return c.createElement(this.model.tag,{class:this.css_classes()})}}l.CardView=_,_.__name__=\"CardView\";class u extends a.Column{constructor(e){super(e)}static init_Card(){this.prototype.default_view=_,this.define((({Array:e,Boolean:s,Nullable:l,String:t})=>({active_header_background:[l(t),null],button_css_classes:[e(t),[]],collapsed:[s,!0],collapsible:[s,!0],header_background:[l(t),null],header_color:[l(t),null],header_css_classes:[e(t),[]],header_tag:[t,\"div\"],tag:[t,\"div\"]})))}}l.Card=u,u.__name__=\"Card\",u.__module__=\"panel.models.layout\",u.init_Card()},\n", " \"e552778259\": function _(e,t,n,o,i){o();const s=e(\"@bokehjs/document\"),c=e(\"@bokehjs/core/view\"),_=e(\"@bokehjs/model\"),l=e(\"@bokehjs/protocol/message\"),a=e(\"@bokehjs/protocol/receiver\");class h extends c.View{renderTo(){}}n.CommManagerView=h,h.__name__=\"CommManagerView\";class m extends _.Model{constructor(e){super(e),this._document_listener=e=>this._document_changed(e),this._receiver=new a.Receiver,this._event_buffer=[],this._blocked=!1,this._timeout=Date.now(),null!=window.PyViz&&window.PyViz.comm_manager?(this.ns=window.PyViz,this.ns.comm_manager.register_target(this.plot_id,this.comm_id,(e=>this.msg_handler(e))),this._client_comm=this.ns.comm_manager.get_client_comm(this.plot_id,this.client_comm_id,(e=>this.on_ack(e)))):console.log(\"Could not find comm manager on window.PyViz, ensure the extension is loaded.\")}_doc_attached(){super._doc_attached(),null!=this.document&&this.document.on_change(this._document_listener)}_document_changed(e){e.setter_id!==this.id&&(e instanceof s.ModelChangedEvent&&!(e.attr in e.model.serializable_attributes())||(this._event_buffer.push(e),(!this._blocked||Date.now()>this._timeout)&&(setTimeout((()=>this.process_events()),this.debounce),this._blocked=!0,this._timeout=Date.now()+this.timeout)))}process_events(){if(null==this.document||null==this._client_comm)return;const e=this.document.create_json_patch(this._event_buffer);this._event_buffer=[];const t=l.Message.create(\"PATCH-DOC\",{},e);this._client_comm.send(t)}on_ack(e){const t=e.metadata;this._event_buffer.length?(this._blocked=!0,this._timeout=Date.now()+this.timeout,this.process_events()):this._blocked=!1,\"Ready\"==t.msg_type&&t.content?console.log(\"Python callback returned following output:\",t.content):\"Error\"==t.msg_type&&console.log(\"Python failed with the following traceback:\",t.traceback)}msg_handler(e){const t=e.metadata,n=e.buffers,o=e.content.data,i=this.plot_id;if(\"Ready\"==t.msg_type)t.content?console.log(\"Python callback returned following output:\",t.content):\"Error\"==t.msg_type&&console.log(\"Python failed with the following traceback:\",t.traceback);else if(null!=i){let e=null;if(i in this.ns.plot_index&&null!=this.ns.plot_index[i]?e=this.ns.plot_index[i]:void 0!==window.Bokeh&&i in window.Bokeh.index&&(e=window.Bokeh.index[i]),null==e)return;null!=n&&n.length>0?this._receiver.consume(n[0].buffer):this._receiver.consume(o);const t=this._receiver.message;null!=t&&Object.keys(t.content).length>0&&null!=this.document&&this.document.apply_json_patch(t.content,t.buffers,this.id)}}static init_CommManager(){this.prototype.default_view=h,this.define((({Int:e,String:t})=>({plot_id:[t],comm_id:[t],client_comm_id:[t],timeout:[e,5e3],debounce:[e,50]})))}}n.CommManager=m,m.__name__=\"CommManager\",m.__module__=\"panel.models.comm_manager\",m.init_CommManager()},\n", " \"cd0a5e2f82\": function _(t,e,s,i,o){i();const l=t(\"@bokehjs/core/util/types\"),n=t(\"@bokehjs/models/layouts/html_box\"),a=t(\"@bokehjs/core/dom\"),r=t(\"@bokehjs/core/kinds\"),d=t(\"@bokehjs/models/sources/column_data_source\"),c=t(\"@bokehjs/models/widgets/tables\"),u=t(\"f1971f81bf\"),h=t(\"4c755983eb\");function m(t,e,s){for(const i of s)if(i[t]==e)return i;return null}function f(t,e,s,i=0){const o={};if(0==t.length)return o;const n=s[i];for(const a of t){const t=f(a._children,e,s,i+1);for(const e in t)l.isArray(t[e])?a[e]=t[e].reduce(((t,e)=>t+e),0)/t[e].length:a[e]=t[e];for(const t of e.slice(1)){const e=a[t.field];if(t.field in o){const s=o[t.field];\"min\"===n?o[t.field]=Math.min(e,s):\"max\"===n?o[t.field]=Math.max(e,s):\"sum\"===n?o[t.field]=e+s:\"mean\"===n&&(l.isArray(o[t.field])?o[t.field].push(e):o[t.field]=[s,e])}else o[t.field]=e}}return o}function _(t,e,s,i){const o=[],l=e[0].field;for(const i of t){const t=i[s[0]];let n=m(l,t,o);null==n&&(n={_children:[]},n[l]=t,o.push(n));let a=n;const r={};for(const t of s.slice(1)){a=m(l,i[t],a._children),null==a&&(a={_children:[]},a[l]=i[t],n._children.push(a)),r[t]=n;for(const t of e.slice(1))a[t.field]=i[t];n=a}for(const t of e.slice(1))a[t.field]=i[t.field]}const n=[];for(const t of s)n.push(t in i?i[t]:\"sum\");return f(o,e,n),o}class g extends h.PanelHTMLBoxView{constructor(){super(...arguments),this._tabulator_cell_updating=!1,this._selection_updating=!1,this._styled_cells=[]}connect_signals(){super.connect_signals();const{configuration:t,layout:e,columns:s,theme:i,groupby:o}=this.model.properties;this.on_change([t,e,s,o],(()=>this.render_and_resize())),this.on_change([i],(()=>this.setCSS())),this.connect(this.model.properties.download.change,(()=>{const t=this.model.filename.endsWith(\".json\")?\"json\":\"csv\";this.tabulator.download(t,this.model.filename)})),this.connect(this.model.properties.hidden_columns.change,(()=>{this.hideColumns()})),this.connect(this.model.properties.page_size.change,(()=>{this.setPageSize()})),this.connect(this.model.properties.page.change,(()=>{this.setPage()})),this.connect(this.model.properties.max_page.change,(()=>{this.setMaxPage()})),this.connect(this.model.properties.frozen_rows.change,(()=>{this.freezeRows()})),this.connect(this.model.properties.styles.change,(()=>{this.updateStyles()})),this.connect(this.model.source.properties.data.change,(()=>{this.setData()})),this.connect(this.model.source.streaming,(()=>this.addData())),this.connect(this.model.source.patching,(()=>this.updateOrAddData())),this.connect(this.model.source.selected.change,(()=>this.updateSelection())),this.connect(this.model.source.selected.properties.indices.change,(()=>this.updateSelection()))}render_and_resize(){this.render(),this.update_layout(),this.compute_layout(),this.root!==this&&this.invalidate_layout()}render(){super.render();if(this.setCSS())return;this._initializing=!0;const t=a.div({class:\"pnx-tabulator\"});h.set_size(t,this.model);let e=this.getConfiguration();this.tabulator=new Tabulator(t,e),\"remote\"===this.model.pagination&&(this.tabulator.options.pagination=this.model.pagination,this.tabulator.modules.page.mode=\"remote\"),this.setGroupBy(),this.hideColumns(),this.model.pagination?(this.setMaxPage(),this.tabulator.setPage(this.model.page),this.setData()):this.freezeRows(),this.el.appendChild(t)}tableInit(t,e){const s=e.modules.ajax;s.sendRequest=()=>t.requestPage(s.params.page,s.params.sorters),e.modules.page._parseRemoteData=()=>{}}requestPage(t,e){return new Promise(((s,i)=>{try{null!=t&&null!=e&&(this.model.page=t||1,this.model.sorters=e),s([])}catch(t){i(t)}}))}renderComplete(){this._initializing&&(this.updateStyles(),this.updateSelection()),this._initializing=!1}freezeRows(){for(const t of this.model.frozen_rows)this.tabulator.getRow(t).freeze()}getLayout(){switch(this.model.layout){case\"fit_data\":return\"fitData\";case\"fit_data_fill\":return\"fitDataFill\";case\"fit_data_stretch\":return\"fitDataStretch\";case\"fit_data_table\":return\"fitDataTable\";case\"fit_columns\":return\"fitColumns\"}}getConfiguration(){const t=\"remote\"==this.model.pagination?\"local\":this.model.pagination||!1;let e=!(\"boolean\"==typeof this.model.select_mode);const s=this;let i=Object.assign(Object.assign({},this.model.configuration),{index:\"_index\",nestedFieldSeparator:!1,selectable:e,tableBuilding:function(){s.tableInit(s,this)},renderComplete:()=>this.renderComplete(),rowSelectionChanged:(t,e)=>this.rowSelectionChanged(t,e),rowClick:(t,e)=>this.rowClicked(t,e),cellEdited:t=>this.cellEdited(t),columns:this.getColumns(),layout:this.getLayout(),pagination:t,paginationSize:this.model.page_size,paginationInitialPage:1,selectableCheck:t=>{const e=this.model.selectable_rows;return null==e||e.indexOf(t._row.data._index)>=0},tooltips:t=>t.getColumn().getField()+\": \"+t.getValue()});t&&(i.ajaxURL=\"http://panel.pyviz.org\",i.ajaxSorting=!0);const o=this.model.source;let l;return l=null===o||0===o.columns().length?[]:u.transform_cds_to_records(o,!0),i.dataTree&&(l=_(l,this.model.columns,this.model.indexes,this.model.aggregators)),Object.assign(Object.assign({},i),{data:l})}getColumns(){var t;const e=null===(t=this.model.configuration)||void 0===t?void 0:t.columns;let s=[];if(null!=e)for(const t of e)if(null!=t.columns){const e=[];for(const s of t.columns)e.push(Object.assign({},s));s.push(Object.assign(Object.assign({},t),{columns:e}))}else s.push(Object.assign({},t));for(const t of this.model.columns){let i=null;if(null!=e)for(const e of s)if(null!=e.columns){for(const s of e.columns)if(t.field===s.field){i=s;break}if(null!=i)break}else if(t.field===e.field){i=e;break}if(null==i&&(i={field:t.field}),null==i.title&&(i.title=t.title),null==i.width&&null!=t.width&&0!=t.width&&(i.width=t.width),null==i.formatter&&null!=t.formatter){const e=t.formatter.type;i.formatter=\"BooleanFormatter\"===e?\"tickCross\":e=>{const s=t.formatter.doFormat(e.getRow(),e,e.getValue(),null,null),i=a.div();return i.innerHTML=s,i.children[0].innerHTML}}const o=t.editor,l=o.type;null!=i.editor||(\"StringEditor\"===l?o.completions.length>0?(i.editor=\"autocomplete\",i.editorParams={values:o.completions}):i.editor=\"input\":\"TextEditor\"===l?i.editor=\"textarea\":\"IntEditor\"===l||\"NumberEditor\"===l?(i.editor=\"number\",i.editorParams={step:o.step}):\"CheckboxEditor\"===l?i.editor=\"tickCross\":\"SelectEditor\"===l?(i.editor=\"select\",i.editorParams={values:o.options}):null!=o&&null!=o.default_view&&(i.editor=(e,s,i,o)=>this.renderEditor(t,e,s,i,o))),i.editable=()=>this.model.editable&&null!=o.default_view,null==e&&s.push(i)}return s}renderEditor(t,e,s,i,o){const l=t.editor,n=new l.default_view({column:t,model:l,parent:this,container:e._cell.element});return n.initialize(),n.connect_signals(),s((()=>{n.setValue(e.getValue())})),n.inputEl.addEventListener(\"change\",(()=>{const t=n.serializeValue(),s=e.getValue(),l=n.validate();l.valid||o(l.msg),null!=s&&typeof t!=typeof s?o(\"Mismatching type\"):i(n.serializeValue())})),n.inputEl}after_layout(){super.after_layout(),null!=this.tabulator&&this.tabulator.redraw(!0),this.updateStyles()}setData(){let t=u.transform_cds_to_records(this.model.source,!0);this.model.configuration.dataTree&&(t=_(t,this.model.columns,this.model.indexes,this.model.aggregators)),null!=this.model.pagination?this.tabulator.rowManager.setData(t,!0,!1):this.tabulator.setData(t),this.freezeRows(),this.updateSelection()}setGroupBy(){if(0==this.model.groupby.length)return void this.tabulator.setGroupBy(!1);this.tabulator.setGroupBy((t=>{const e=[];for(const s of this.model.groupby){const i=s+\": \"+t[s];e.push(i)}return e.join(\", \")}))}setCSS(){let t;t=\"default\"==this.model.theme?\"tabulator\":\"tabulator_\"+this.model.theme;const e=this.model.theme_url+t+\".min.css\";let s=null;const i=document.getElementsByTagName(\"link\"),o=this.model.theme_url.indexOf(\"dist/\"),l=this.model.theme_url.slice(0,o);for(const t of i)if(t.href.indexOf(l)>=0){s=t;break}if(null!=s)return!s.href.endsWith(e)&&(s.href=e,setTimeout((()=>this.render_and_resize()),100),!0);let n=document.getElementsByTagName(\"head\")[0];const a=document.createElement(\"link\");return a.type=\"text/css\",a.rel=\"stylesheet\",a.media=\"screen\",a.href=e,a.onload=()=>{this.render_and_resize()},n.appendChild(a),!0}updateStyles(){for(const t of this._styled_cells)t.cssText=\"\";if(this._styled_cells=[],null!=this.model.styles&&null!=this.tabulator&&0!=this.tabulator.getDataCount()){for(const t in this.model.styles){const e=this.model.styles[t],s=this.tabulator.getRow(t);if(!s)continue;const i=s._row.cells;for(const t in e){const s=e[t],o=i[t];if(null==o||!s.length)continue;const n=o.element;this._styled_cells.push(n),n.cssText=\"\";for(const t of s){let e,s;if(l.isArray(t))[e,s]=t;else{if(!t.includes(\":\"))continue;[e,s]=t.split(\":\")}n.style.setProperty(e,s.trimLeft())}}}this.model.styles={}}}addData(){const t=this.tabulator.rowManager.getRows(),e=t[t.length-1];let s=u.transform_cds_to_records(this.model.source,!0);this.tabulator.setData(s),this.model.follow&&this.tabulator.scrollToRow(e.data._index||0,\"top\",!1),this.freezeRows(),this.updateSelection()}updateOrAddData(){if(this._tabulator_cell_updating)return;let t=u.transform_cds_to_records(this.model.source,!0);this.tabulator.setData(t),this.freezeRows(),this.updateSelection()}hideColumns(){for(const t of this.tabulator.getColumns())this.model.hidden_columns.indexOf(t._column.field)>-1?t.hide():t.show()}setMaxPage(){this.tabulator.setMaxPage(Math.max(this.model.page,this.model.max_page)),this.tabulator.modules.page._setPageButtons()}setPage(){this.tabulator.setPage(this.model.page)}setPageSize(){this.tabulator.setPageSize(this.model.page_size)}updateSelection(){if(null==this.tabulator||this._selection_updating)return;const t=this.model.source.selected.indices,e=this.tabulator.getSelectedData().map((t=>t._index));JSON.stringify(t)!=JSON.stringify(e)&&(this._selection_updating=!0,this.tabulator.deselectRow(),this.tabulator.selectRow(t),this.tabulator.scrollToRow(t[0],\"bottom\",!1),this._selection_updating=!1)}rowClicked(t,e){if(this._selection_updating||this._initializing||!0!==this.model.select_mode)return;let s=[];const i=this.model.source.selected,o=e._row.data._index;if(t.ctrlKey||t.metaKey)s=this.model.source.selected.indices;else if(t.shiftKey&&i.indices.length){const t=i.indices[i.indices.length-1];if(o>t)for(let e=t;e<o;e++)s.push(e);else for(let e=t;e>o;e--)s.push(e)}s.indexOf(o)<0?s.push(o):s.splice(s.indexOf(o),1);const l=this._filter_selected(s);this.tabulator.deselectRow(),this.tabulator.selectRow(l),this._selection_updating=!0,i.indices=l,this._selection_updating=!1}_filter_selected(t){const e=[];for(const s of t)(null==this.model.selectable_rows||this.model.selectable_rows.indexOf(s)>=0)&&e.push(s);return e}rowSelectionChanged(t,e){if(this._selection_updating||this._initializing||\"boolean\"==typeof this.model.select_mode)return;const s=t.map((t=>t._index)),i=this._filter_selected(s);this._selection_updating=s.length===i.length,this.model.source.selected.indices=i,this._selection_updating=!1}cellEdited(t){const e=t._cell.column.field,s=t._cell.row.data._index,i=t._cell.value;this._tabulator_cell_updating=!0,this.model.source.patch({[e]:[[s,i]]}),this._tabulator_cell_updating=!1}}s.DataTabulatorView=g,g.__name__=\"DataTabulatorView\",s.TableLayout=r.Enum(\"fit_data\",\"fit_data_fill\",\"fit_data_stretch\",\"fit_data_table\",\"fit_columns\");class p extends n.HTMLBox{constructor(t){super(t)}static init_DataTabulator(){this.prototype.default_view=g,this.define((({Any:t,Array:e,Boolean:i,Nullable:o,Number:l,Ref:n,String:a})=>({aggregators:[t,{}],configuration:[t,{}],columns:[e(n(c.TableColumn)),[]],download:[i,!0],editable:[i,!0],filename:[a,\"table.csv\"],follow:[i,!0],frozen_rows:[e(l),[]],groupby:[e(a),[]],hidden_columns:[e(a),[]],indexes:[e(a),[]],layout:[s.TableLayout,\"fit_data\"],max_page:[l,0],pagination:[o(a),null],page:[l,0],page_size:[l,0],select_mode:[t,!0],selectable_rows:[o(e(l)),null],source:[n(d.ColumnDataSource)],sorters:[e(t),[]],styles:[t,{}],theme:[a,\"simple\"],theme_url:[a,\"https://unpkg.com/tabulator-tables@4.9.3/dist/css/\"]})))}}s.DataTabulator=p,p.__name__=\"DataTabulator\",p.__module__=\"panel.models.tabulator\",p.init_DataTabulator()},\n", " \"f1971f81bf\": function _(n,t,e,o,r){o(),e.transform_cds_to_records=function(n,t=!1){const e=[],o=n.columns(),r=n.get_length();if(0===o.length||null===r)return[];for(let l=0;l<r;l++){const r={};for(const t of o){let e=n.get_array(t);const o=null==e[0].shape?null:e[0].shape;null!=o&&o.length>1&&\"number\"==typeof o[0]?r[t]=e.slice(l*o[1],l*o[1]+o[1]):r[t]=e[l]}t&&(r._index=l),e.push(r)}return e},e.dict_to_records=function(n,t=!0){for(let e=0;e<n.index.length;e++){const o={};for(const r of n)(t||\"index\"!==r)&&(o[r]=n[r][e])}return[]}},\n", " \"6e11b2cfe2\": function _(e,t,i,s,n){s();const o=e(\"tslib\"),l=o.__importDefault(e(\"50d3473f3f\")),d=e(\"@bokehjs/models/widgets/input_widget\"),a=e(\"@bokehjs/core/dom\"),r=e(\"@bokehjs/core/enums\"),c=e(\"@bokehjs/core/util/types\"),m=o.__importStar(e(\"@bokehjs/styles/widgets/inputs.css\")),h=o.__importDefault(e(\"@bokehjs/styles/widgets/flatpickr.css\"));function _(e){const t=[];for(const i of e)if(c.isString(i))t.push(i);else{const[e,s]=i;t.push({from:e,to:s})}return t}class u extends d.InputWidgetView{connect_signals(){super.connect_signals();const{value:e,min_date:t,max_date:i,disabled_dates:s,enabled_dates:n,position:o,inline:l,enable_time:d,enable_seconds:a,military_time:r,date_format:c,mode:m}=this.model.properties;this.connect(e.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.setDate(this.model.value)})),this.connect(t.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"minDate\",this.model.min_date)})),this.connect(i.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"maxDate\",this.model.max_date)})),this.connect(s.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"disable\",this.model.disabled_dates)})),this.connect(n.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enable\",this.model.enabled_dates)})),this.connect(o.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"position\",this.model.position)})),this.connect(l.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"inline\",this.model.inline)})),this.connect(d.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enableTime\",this.model.enable_time)})),this.connect(a.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enableSeconds\",this.model.enable_seconds)})),this.connect(r.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"time_24hr\",this.model.military_time)})),this.connect(m.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"mode\",this.model.mode)})),this.connect(c.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"dateFormat\",this.model.date_format)}))}remove(){var e;null===(e=this._picker)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),h.default]}render(){var e,t;null==this._picker&&(super.render(),this.input_el=a.input({type:\"text\",class:m.input,disabled:this.model.disabled}),this.group_el.appendChild(this.input_el),this._picker=l.default(this.input_el,{defaultDate:this.model.value,minDate:null!==(e=this.model.min_date)&&void 0!==e?e:void 0,maxDate:null!==(t=this.model.max_date)&&void 0!==t?t:void 0,inline:this.model.inline,position:this.model.position,disable:_(this.model.disabled_dates),enable:_(this.model.enabled_dates),enableTime:this.model.enable_time,enableSeconds:this.model.enable_seconds,time_24hr:this.model.military_time,dateFormat:this.model.date_format,mode:this.model.mode,onClose:(e,t,i)=>this._on_close(e,t,i)}))}_on_close(e,t,i){(\"range\"!=this.model.mode||t.includes(\"to\"))&&(this.model.value=t,this.change_input())}}i.DatetimePickerView=u,u.__name__=\"DatetimePickerView\";class p extends d.InputWidget{constructor(e){super(e)}static init_DatetimePicker(){this.prototype.default_view=u,this.define((({Boolean:e,String:t,Array:i,Tuple:s,Or:n,Nullable:o})=>{const l=i(n(t,s(t,t)));return{value:[t],min_date:[o(t),null],max_date:[o(t),null],disabled_dates:[l,[]],enabled_dates:[l,[]],position:[r.CalendarPosition,\"auto\"],inline:[e,!1],enable_time:[e,!0],enable_seconds:[e,!0],military_time:[e,!0],date_format:[t,\"Y-m-d H:i:S\"],mode:[t,\"single\"]}}))}}i.DatetimePicker=p,p.__name__=\"DatetimePicker\",p.__module__=\"panel.models.datetime_picker\",p.init_DatetimePicker()},\n", " \"50d3473f3f\": function _(e,n,t,a,i){\n", " /* flatpickr v4.6.6, @license MIT */var o,r;o=this,r=function(){\"use strict\";\n", " /*! *****************************************************************************\n", " Copyright (c) Microsoft Corporation.\n", " \n", " Permission to use, copy, modify, and/or distribute this software for any\n", " purpose with or without fee is hereby granted.\n", " \n", " THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n", " REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n", " AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n", " INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n", " LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n", " OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n", " PERFORMANCE OF THIS SOFTWARE.\n", " ***************************************************************************** */var e=function(){return(e=Object.assign||function(e){for(var n,t=1,a=arguments.length;t<a;t++)for(var i in n=arguments[t])Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i]);return e}).apply(this,arguments)};function n(){for(var e=0,n=0,t=arguments.length;n<t;n++)e+=arguments[n].length;var a=Array(e),i=0;for(n=0;n<t;n++)for(var o=arguments[n],r=0,l=o.length;r<l;r++,i++)a[i]=o[r];return a}var t=[\"onChange\",\"onClose\",\"onDayCreate\",\"onDestroy\",\"onKeyDown\",\"onMonthChange\",\"onOpen\",\"onParseConfig\",\"onReady\",\"onValueUpdate\",\"onYearChange\",\"onPreCalendarPosition\"],a={_disable:[],_enable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:\"F j, Y\",altInput:!1,altInputClass:\"form-control input\",animate:\"object\"==typeof window&&-1===window.navigator.userAgent.indexOf(\"MSIE\"),ariaDateFormat:\"F j, Y\",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:\", \",dateFormat:\"Y-m-d\",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enable:[],enableSeconds:!1,enableTime:!1,errorHandler:function(e){return\"undefined\"!=typeof console&&console.warn(e)},getWeek:function(e){var n=new Date(e.getTime());n.setHours(0,0,0,0),n.setDate(n.getDate()+3-(n.getDay()+6)%7);var t=new Date(n.getFullYear(),0,4);return 1+Math.round(((n.getTime()-t.getTime())/864e5-3+(t.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:\"default\",minuteIncrement:5,mode:\"single\",monthSelectorType:\"dropdown\",nextArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>\",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:\"auto\",positionElement:void 0,prevArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>\",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},i={weekdays:{shorthand:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longhand:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"]},months:{shorthand:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longhand:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(e){var n=e%100;if(n>3&&n<21)return\"th\";switch(n%10){case 1:return\"st\";case 2:return\"nd\";case 3:return\"rd\";default:return\"th\"}},rangeSeparator:\" to \",weekAbbreviation:\"Wk\",scrollTitle:\"Scroll to increment\",toggleTitle:\"Click to toggle\",amPM:[\"AM\",\"PM\"],yearAriaLabel:\"Year\",monthAriaLabel:\"Month\",hourAriaLabel:\"Hour\",minuteAriaLabel:\"Minute\",time_24hr:!1},o=function(e,n){return void 0===n&&(n=2),(\"000\"+e).slice(-1*n)},r=function(e){return!0===e?1:0};function l(e,n,t){var a;return void 0===t&&(t=!1),function(){var i=this,o=arguments;null!==a&&clearTimeout(a),a=window.setTimeout((function(){a=null,t||e.apply(i,o)}),n),t&&!a&&e.apply(i,o)}}var c=function(e){return e instanceof Array?e:[e]};function d(e,n,t){if(!0===t)return e.classList.add(n);e.classList.remove(n)}function s(e,n,t){var a=window.document.createElement(e);return n=n||\"\",t=t||\"\",a.className=n,void 0!==t&&(a.textContent=t),a}function u(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function f(e,n){return n(e)?e:e.parentNode?f(e.parentNode,n):void 0}function m(e,n){var t=s(\"div\",\"numInputWrapper\"),a=s(\"input\",\"numInput \"+e),i=s(\"span\",\"arrowUp\"),o=s(\"span\",\"arrowDown\");if(-1===navigator.userAgent.indexOf(\"MSIE 9.0\")?a.type=\"number\":(a.type=\"text\",a.pattern=\"\\\\d*\"),void 0!==n)for(var r in n)a.setAttribute(r,n[r]);return t.appendChild(a),t.appendChild(i),t.appendChild(o),t}function g(e){try{return\"function\"==typeof e.composedPath?e.composedPath()[0]:e.target}catch(n){return e.target}}var p=function(){},h=function(e,n,t){return t.months[n?\"shorthand\":\"longhand\"][e]},v={D:p,F:function(e,n,t){e.setMonth(t.months.longhand.indexOf(n))},G:function(e,n){e.setHours(parseFloat(n))},H:function(e,n){e.setHours(parseFloat(n))},J:function(e,n){e.setDate(parseFloat(n))},K:function(e,n,t){e.setHours(e.getHours()%12+12*r(new RegExp(t.amPM[1],\"i\").test(n)))},M:function(e,n,t){e.setMonth(t.months.shorthand.indexOf(n))},S:function(e,n){e.setSeconds(parseFloat(n))},U:function(e,n){return new Date(1e3*parseFloat(n))},W:function(e,n,t){var a=parseInt(n),i=new Date(e.getFullYear(),0,2+7*(a-1),0,0,0,0);return i.setDate(i.getDate()-i.getDay()+t.firstDayOfWeek),i},Y:function(e,n){e.setFullYear(parseFloat(n))},Z:function(e,n){return new Date(n)},d:function(e,n){e.setDate(parseFloat(n))},h:function(e,n){e.setHours(parseFloat(n))},i:function(e,n){e.setMinutes(parseFloat(n))},j:function(e,n){e.setDate(parseFloat(n))},l:p,m:function(e,n){e.setMonth(parseFloat(n)-1)},n:function(e,n){e.setMonth(parseFloat(n)-1)},s:function(e,n){e.setSeconds(parseFloat(n))},u:function(e,n){return new Date(parseFloat(n))},w:p,y:function(e,n){e.setFullYear(2e3+parseFloat(n))}},D={D:\"(\\\\w+)\",F:\"(\\\\w+)\",G:\"(\\\\d\\\\d|\\\\d)\",H:\"(\\\\d\\\\d|\\\\d)\",J:\"(\\\\d\\\\d|\\\\d)\\\\w+\",K:\"\",M:\"(\\\\w+)\",S:\"(\\\\d\\\\d|\\\\d)\",U:\"(.+)\",W:\"(\\\\d\\\\d|\\\\d)\",Y:\"(\\\\d{4})\",Z:\"(.+)\",d:\"(\\\\d\\\\d|\\\\d)\",h:\"(\\\\d\\\\d|\\\\d)\",i:\"(\\\\d\\\\d|\\\\d)\",j:\"(\\\\d\\\\d|\\\\d)\",l:\"(\\\\w+)\",m:\"(\\\\d\\\\d|\\\\d)\",n:\"(\\\\d\\\\d|\\\\d)\",s:\"(\\\\d\\\\d|\\\\d)\",u:\"(.+)\",w:\"(\\\\d\\\\d|\\\\d)\",y:\"(\\\\d{2})\"},w={Z:function(e){return e.toISOString()},D:function(e,n,t){return n.weekdays.shorthand[w.w(e,n,t)]},F:function(e,n,t){return h(w.n(e,n,t)-1,!1,n)},G:function(e,n,t){return o(w.h(e,n,t))},H:function(e){return o(e.getHours())},J:function(e,n){return void 0!==n.ordinal?e.getDate()+n.ordinal(e.getDate()):e.getDate()},K:function(e,n){return n.amPM[r(e.getHours()>11)]},M:function(e,n){return h(e.getMonth(),!0,n)},S:function(e){return o(e.getSeconds())},U:function(e){return e.getTime()/1e3},W:function(e,n,t){return t.getWeek(e)},Y:function(e){return o(e.getFullYear(),4)},d:function(e){return o(e.getDate())},h:function(e){return e.getHours()%12?e.getHours()%12:12},i:function(e){return o(e.getMinutes())},j:function(e){return e.getDate()},l:function(e,n){return n.weekdays.longhand[e.getDay()]},m:function(e){return o(e.getMonth()+1)},n:function(e){return e.getMonth()+1},s:function(e){return e.getSeconds()},u:function(e){return e.getTime()},w:function(e){return e.getDay()},y:function(e){return String(e.getFullYear()).substring(2)}},b=function(e){var n=e.config,t=void 0===n?a:n,o=e.l10n,r=void 0===o?i:o,l=e.isMobile,c=void 0!==l&&l;return function(e,n,a){var i=a||r;return void 0===t.formatDate||c?n.split(\"\").map((function(n,a,o){return w[n]&&\"\\\\\"!==o[a-1]?w[n](e,i,t):\"\\\\\"!==n?n:\"\"})).join(\"\"):t.formatDate(e,n,i)}},C=function(e){var n=e.config,t=void 0===n?a:n,o=e.l10n,r=void 0===o?i:o;return function(e,n,i,o){if(0===e||e){var l,c=o||r,d=e;if(e instanceof Date)l=new Date(e.getTime());else if(\"string\"!=typeof e&&void 0!==e.toFixed)l=new Date(e);else if(\"string\"==typeof e){var s=n||(t||a).dateFormat,u=String(e).trim();if(\"today\"===u)l=new Date,i=!0;else if(/Z$/.test(u)||/GMT$/.test(u))l=new Date(e);else if(t&&t.parseDate)l=t.parseDate(e,s);else{l=t&&t.noCalendar?new Date((new Date).setHours(0,0,0,0)):new Date((new Date).getFullYear(),0,1,0,0,0,0);for(var f=void 0,m=[],g=0,p=0,h=\"\";g<s.length;g++){var w=s[g],b=\"\\\\\"===w,C=\"\\\\\"===s[g-1]||b;if(D[w]&&!C){h+=D[w];var M=new RegExp(h).exec(e);M&&(f=!0)&&m[\"Y\"!==w?\"push\":\"unshift\"]({fn:v[w],val:M[++p]})}else b||(h+=\".\");m.forEach((function(e){var n=e.fn,t=e.val;return l=n(l,t,c)||l}))}l=f?l:void 0}}if(l instanceof Date&&!isNaN(l.getTime()))return!0===i&&l.setHours(0,0,0,0),l;t.errorHandler(new Error(\"Invalid date provided: \"+d))}}};function M(e,n,t){return void 0===t&&(t=!0),!1!==t?new Date(e.getTime()).setHours(0,0,0,0)-new Date(n.getTime()).setHours(0,0,0,0):e.getTime()-n.getTime()}var y=864e5;function x(p,v){var w={config:e(e({},a),k.defaultConfig),l10n:i};function x(e){return e.bind(w)}function E(){var e=w.config;!1===e.weekNumbers&&1===e.showMonths||!0!==e.noCalendar&&window.requestAnimationFrame((function(){if(void 0!==w.calendarContainer&&(w.calendarContainer.style.visibility=\"hidden\",w.calendarContainer.style.display=\"block\"),void 0!==w.daysContainer){var n=(w.days.offsetWidth+1)*e.showMonths;w.daysContainer.style.width=n+\"px\",w.calendarContainer.style.width=n+(void 0!==w.weekWrapper?w.weekWrapper.offsetWidth:0)+\"px\",w.calendarContainer.style.removeProperty(\"visibility\"),w.calendarContainer.style.removeProperty(\"display\")}}))}function T(e){if(0===w.selectedDates.length){var n=void 0!==w.config.minDate?new Date(w.config.minDate.getTime()):new Date,t=_(),a=t.hours,i=t.minutes,l=t.seconds;n.setHours(a,i,l,0),w.setDate(n,!1)}void 0!==e&&\"blur\"!==e.type&&function(e){e.preventDefault();var n=\"keydown\"===e.type,t=g(e),a=t;void 0!==w.amPM&&t===w.amPM&&(w.amPM.textContent=w.l10n.amPM[r(w.amPM.textContent===w.l10n.amPM[0])]);var i=parseFloat(a.getAttribute(\"min\")),l=parseFloat(a.getAttribute(\"max\")),c=parseFloat(a.getAttribute(\"step\")),d=parseInt(a.value,10),s=e.delta||(n?38===e.which?1:-1:0),u=d+c*s;if(void 0!==a.value&&2===a.value.length){var f=a===w.hourElement,m=a===w.minuteElement;u<i?(u=l+u+r(!f)+(r(f)&&r(!w.amPM)),m&&H(void 0,-1,w.hourElement)):u>l&&(u=a===w.hourElement?u-l-r(!w.amPM):i,m&&H(void 0,1,w.hourElement)),w.amPM&&f&&(1===c?u+d===23:Math.abs(u-d)>c)&&(w.amPM.textContent=w.l10n.amPM[r(w.amPM.textContent===w.l10n.amPM[0])]),a.value=o(u)}}(e);var c=w._input.value;I(),be(),w._input.value!==c&&w._debouncedChange()}function I(){if(void 0!==w.hourElement&&void 0!==w.minuteElement){var e,n,t=(parseInt(w.hourElement.value.slice(-2),10)||0)%24,a=(parseInt(w.minuteElement.value,10)||0)%60,i=void 0!==w.secondElement?(parseInt(w.secondElement.value,10)||0)%60:0;void 0!==w.amPM&&(e=t,n=w.amPM.textContent,t=e%12+12*r(n===w.l10n.amPM[1]));var o=void 0!==w.config.minTime||w.config.minDate&&w.minDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.minDate,!0);if(void 0!==w.config.maxTime||w.config.maxDate&&w.maxDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.maxDate,!0)){var l=void 0!==w.config.maxTime?w.config.maxTime:w.config.maxDate;(t=Math.min(t,l.getHours()))===l.getHours()&&(a=Math.min(a,l.getMinutes())),a===l.getMinutes()&&(i=Math.min(i,l.getSeconds()))}if(o){var c=void 0!==w.config.minTime?w.config.minTime:w.config.minDate;(t=Math.max(t,c.getHours()))===c.getHours()&&(a=Math.max(a,c.getMinutes())),a===c.getMinutes()&&(i=Math.max(i,c.getSeconds()))}O(t,a,i)}}function S(e){var n=e||w.latestSelectedDateObj;n&&O(n.getHours(),n.getMinutes(),n.getSeconds())}function _(){var e=w.config.defaultHour,n=w.config.defaultMinute,t=w.config.defaultSeconds;if(void 0!==w.config.minDate){var a=w.config.minDate.getHours(),i=w.config.minDate.getMinutes();(e=Math.max(e,a))===a&&(n=Math.max(i,n)),e===a&&n===i&&(t=w.config.minDate.getSeconds())}if(void 0!==w.config.maxDate){var o=w.config.maxDate.getHours(),r=w.config.maxDate.getMinutes();(e=Math.min(e,o))===o&&(n=Math.min(r,n)),e===o&&n===r&&(t=w.config.maxDate.getSeconds())}return{hours:e,minutes:n,seconds:t}}function O(e,n,t){void 0!==w.latestSelectedDateObj&&w.latestSelectedDateObj.setHours(e%24,n,t||0,0),w.hourElement&&w.minuteElement&&!w.isMobile&&(w.hourElement.value=o(w.config.time_24hr?e:(12+e)%12+12*r(e%12==0)),w.minuteElement.value=o(n),void 0!==w.amPM&&(w.amPM.textContent=w.l10n.amPM[r(e>=12)]),void 0!==w.secondElement&&(w.secondElement.value=o(t)))}function F(e){var n=g(e),t=parseInt(n.value)+(e.delta||0);(t/1e3>1||\"Enter\"===e.key&&!/[^\\d]/.test(t.toString()))&&Q(t)}function N(e,n,t,a){return n instanceof Array?n.forEach((function(n){return N(e,n,t,a)})):e instanceof Array?e.forEach((function(e){return N(e,n,t,a)})):(e.addEventListener(n,t,a),void w._handlers.push({element:e,event:n,handler:t,options:a}))}function A(){pe(\"onChange\")}function P(e,n){var t=void 0!==e?w.parseDate(e):w.latestSelectedDateObj||(w.config.minDate&&w.config.minDate>w.now?w.config.minDate:w.config.maxDate&&w.config.maxDate<w.now?w.config.maxDate:w.now),a=w.currentYear,i=w.currentMonth;try{void 0!==t&&(w.currentYear=t.getFullYear(),w.currentMonth=t.getMonth())}catch(e){e.message=\"Invalid date supplied: \"+t,w.config.errorHandler(e)}n&&w.currentYear!==a&&(pe(\"onYearChange\"),K()),!n||w.currentYear===a&&w.currentMonth===i||pe(\"onMonthChange\"),w.redraw()}function Y(e){var n=g(e);~n.className.indexOf(\"arrow\")&&H(e,n.classList.contains(\"arrowUp\")?1:-1)}function H(e,n,t){var a=e&&g(e),i=t||a&&a.parentNode&&a.parentNode.firstChild,o=he(\"increment\");o.delta=n,i&&i.dispatchEvent(o)}function j(e,n,t,a){var i=X(n,!0),o=s(\"span\",\"flatpickr-day \"+e,n.getDate().toString());return o.dateObj=n,o.$i=a,o.setAttribute(\"aria-label\",w.formatDate(n,w.config.ariaDateFormat)),-1===e.indexOf(\"hidden\")&&0===M(n,w.now)&&(w.todayDateElem=o,o.classList.add(\"today\"),o.setAttribute(\"aria-current\",\"date\")),i?(o.tabIndex=-1,ve(n)&&(o.classList.add(\"selected\"),w.selectedDateElem=o,\"range\"===w.config.mode&&(d(o,\"startRange\",w.selectedDates[0]&&0===M(n,w.selectedDates[0],!0)),d(o,\"endRange\",w.selectedDates[1]&&0===M(n,w.selectedDates[1],!0)),\"nextMonthDay\"===e&&o.classList.add(\"inRange\")))):o.classList.add(\"flatpickr-disabled\"),\"range\"===w.config.mode&&function(e){return!(\"range\"!==w.config.mode||w.selectedDates.length<2)&&M(e,w.selectedDates[0])>=0&&M(e,w.selectedDates[1])<=0}(n)&&!ve(n)&&o.classList.add(\"inRange\"),w.weekNumbers&&1===w.config.showMonths&&\"prevMonthDay\"!==e&&t%7==1&&w.weekNumbers.insertAdjacentHTML(\"beforeend\",\"<span class='flatpickr-day'>\"+w.config.getWeek(n)+\"</span>\"),pe(\"onDayCreate\",o),o}function L(e){e.focus(),\"range\"===w.config.mode&&ae(e)}function W(e){for(var n=e>0?0:w.config.showMonths-1,t=e>0?w.config.showMonths:-1,a=n;a!=t;a+=e)for(var i=w.daysContainer.children[a],o=e>0?0:i.children.length-1,r=e>0?i.children.length:-1,l=o;l!=r;l+=e){var c=i.children[l];if(-1===c.className.indexOf(\"hidden\")&&X(c.dateObj))return c}}function R(e,n){var t=ee(document.activeElement||document.body),a=void 0!==e?e:t?document.activeElement:void 0!==w.selectedDateElem&&ee(w.selectedDateElem)?w.selectedDateElem:void 0!==w.todayDateElem&&ee(w.todayDateElem)?w.todayDateElem:W(n>0?1:-1);void 0===a?w._input.focus():t?function(e,n){for(var t=-1===e.className.indexOf(\"Month\")?e.dateObj.getMonth():w.currentMonth,a=n>0?w.config.showMonths:-1,i=n>0?1:-1,o=t-w.currentMonth;o!=a;o+=i)for(var r=w.daysContainer.children[o],l=t-w.currentMonth===o?e.$i+n:n<0?r.children.length-1:0,c=r.children.length,d=l;d>=0&&d<c&&d!=(n>0?c:-1);d+=i){var s=r.children[d];if(-1===s.className.indexOf(\"hidden\")&&X(s.dateObj)&&Math.abs(e.$i-d)>=Math.abs(n))return L(s)}w.changeMonth(i),R(W(i),0)}(a,n):L(a)}function B(e,n){for(var t=(new Date(e,n,1).getDay()-w.l10n.firstDayOfWeek+7)%7,a=w.utils.getDaysInMonth((n-1+12)%12,e),i=w.utils.getDaysInMonth(n,e),o=window.document.createDocumentFragment(),r=w.config.showMonths>1,l=r?\"prevMonthDay hidden\":\"prevMonthDay\",c=r?\"nextMonthDay hidden\":\"nextMonthDay\",d=a+1-t,u=0;d<=a;d++,u++)o.appendChild(j(l,new Date(e,n-1,d),d,u));for(d=1;d<=i;d++,u++)o.appendChild(j(\"\",new Date(e,n,d),d,u));for(var f=i+1;f<=42-t&&(1===w.config.showMonths||u%7!=0);f++,u++)o.appendChild(j(c,new Date(e,n+1,f%i),f,u));var m=s(\"div\",\"dayContainer\");return m.appendChild(o),m}function J(){if(void 0!==w.daysContainer){u(w.daysContainer),w.weekNumbers&&u(w.weekNumbers);for(var e=document.createDocumentFragment(),n=0;n<w.config.showMonths;n++){var t=new Date(w.currentYear,w.currentMonth,1);t.setMonth(w.currentMonth+n),e.appendChild(B(t.getFullYear(),t.getMonth()))}w.daysContainer.appendChild(e),w.days=w.daysContainer.firstChild,\"range\"===w.config.mode&&1===w.selectedDates.length&&ae()}}function K(){if(!(w.config.showMonths>1||\"dropdown\"!==w.config.monthSelectorType)){var e=function(e){return!(void 0!==w.config.minDate&&w.currentYear===w.config.minDate.getFullYear()&&e<w.config.minDate.getMonth()||void 0!==w.config.maxDate&&w.currentYear===w.config.maxDate.getFullYear()&&e>w.config.maxDate.getMonth())};w.monthsDropdownContainer.tabIndex=-1,w.monthsDropdownContainer.innerHTML=\"\";for(var n=0;n<12;n++)if(e(n)){var t=s(\"option\",\"flatpickr-monthDropdown-month\");t.value=new Date(w.currentYear,n).getMonth().toString(),t.textContent=h(n,w.config.shorthandCurrentMonth,w.l10n),t.tabIndex=-1,w.currentMonth===n&&(t.selected=!0),w.monthsDropdownContainer.appendChild(t)}}}function U(){var e,n=s(\"div\",\"flatpickr-month\"),t=window.document.createDocumentFragment();w.config.showMonths>1||\"static\"===w.config.monthSelectorType?e=s(\"span\",\"cur-month\"):(w.monthsDropdownContainer=s(\"select\",\"flatpickr-monthDropdown-months\"),w.monthsDropdownContainer.setAttribute(\"aria-label\",w.l10n.monthAriaLabel),N(w.monthsDropdownContainer,\"change\",(function(e){var n=g(e),t=parseInt(n.value,10);w.changeMonth(t-w.currentMonth),pe(\"onMonthChange\")})),K(),e=w.monthsDropdownContainer);var a=m(\"cur-year\",{tabindex:\"-1\"}),i=a.getElementsByTagName(\"input\")[0];i.setAttribute(\"aria-label\",w.l10n.yearAriaLabel),w.config.minDate&&i.setAttribute(\"min\",w.config.minDate.getFullYear().toString()),w.config.maxDate&&(i.setAttribute(\"max\",w.config.maxDate.getFullYear().toString()),i.disabled=!!w.config.minDate&&w.config.minDate.getFullYear()===w.config.maxDate.getFullYear());var o=s(\"div\",\"flatpickr-current-month\");return o.appendChild(e),o.appendChild(a),t.appendChild(o),n.appendChild(t),{container:n,yearElement:i,monthElement:e}}function q(){u(w.monthNav),w.monthNav.appendChild(w.prevMonthNav),w.config.showMonths&&(w.yearElements=[],w.monthElements=[]);for(var e=w.config.showMonths;e--;){var n=U();w.yearElements.push(n.yearElement),w.monthElements.push(n.monthElement),w.monthNav.appendChild(n.container)}w.monthNav.appendChild(w.nextMonthNav)}function $(){w.weekdayContainer?u(w.weekdayContainer):w.weekdayContainer=s(\"div\",\"flatpickr-weekdays\");for(var e=w.config.showMonths;e--;){var n=s(\"div\",\"flatpickr-weekdaycontainer\");w.weekdayContainer.appendChild(n)}return z(),w.weekdayContainer}function z(){if(w.weekdayContainer){var e=w.l10n.firstDayOfWeek,t=n(w.l10n.weekdays.shorthand);e>0&&e<t.length&&(t=n(t.splice(e,t.length),t.splice(0,e)));for(var a=w.config.showMonths;a--;)w.weekdayContainer.children[a].innerHTML=\"\\n <span class='flatpickr-weekday'>\\n \"+t.join(\"</span><span class='flatpickr-weekday'>\")+\"\\n </span>\\n \"}}function G(e,n){void 0===n&&(n=!0);var t=n?e:e-w.currentMonth;t<0&&!0===w._hidePrevMonthArrow||t>0&&!0===w._hideNextMonthArrow||(w.currentMonth+=t,(w.currentMonth<0||w.currentMonth>11)&&(w.currentYear+=w.currentMonth>11?1:-1,w.currentMonth=(w.currentMonth+12)%12,pe(\"onYearChange\"),K()),J(),pe(\"onMonthChange\"),De())}function V(e){return!(!w.config.appendTo||!w.config.appendTo.contains(e))||w.calendarContainer.contains(e)}function Z(e){if(w.isOpen&&!w.config.inline){var n=g(e),t=V(n),a=n===w.input||n===w.altInput||w.element.contains(n)||e.path&&e.path.indexOf&&(~e.path.indexOf(w.input)||~e.path.indexOf(w.altInput)),i=\"blur\"===e.type?a&&e.relatedTarget&&!V(e.relatedTarget):!a&&!t&&!V(e.relatedTarget),o=!w.config.ignoredFocusElements.some((function(e){return e.contains(n)}));i&&o&&(void 0!==w.timeContainer&&void 0!==w.minuteElement&&void 0!==w.hourElement&&\"\"!==w.input.value&&void 0!==w.input.value&&T(),w.close(),w.config&&\"range\"===w.config.mode&&1===w.selectedDates.length&&(w.clear(!1),w.redraw()))}}function Q(e){if(!(!e||w.config.minDate&&e<w.config.minDate.getFullYear()||w.config.maxDate&&e>w.config.maxDate.getFullYear())){var n=e,t=w.currentYear!==n;w.currentYear=n||w.currentYear,w.config.maxDate&&w.currentYear===w.config.maxDate.getFullYear()?w.currentMonth=Math.min(w.config.maxDate.getMonth(),w.currentMonth):w.config.minDate&&w.currentYear===w.config.minDate.getFullYear()&&(w.currentMonth=Math.max(w.config.minDate.getMonth(),w.currentMonth)),t&&(w.redraw(),pe(\"onYearChange\"),K())}}function X(e,n){void 0===n&&(n=!0);var t=w.parseDate(e,void 0,n);if(w.config.minDate&&t&&M(t,w.config.minDate,void 0!==n?n:!w.minDateHasTime)<0||w.config.maxDate&&t&&M(t,w.config.maxDate,void 0!==n?n:!w.maxDateHasTime)>0)return!1;if(0===w.config.enable.length&&0===w.config.disable.length)return!0;if(void 0===t)return!1;for(var a=w.config.enable.length>0,i=a?w.config.enable:w.config.disable,o=0,r=void 0;o<i.length;o++){if(\"function\"==typeof(r=i[o])&&r(t))return a;if(r instanceof Date&&void 0!==t&&r.getTime()===t.getTime())return a;if(\"string\"==typeof r&&void 0!==t){var l=w.parseDate(r,void 0,!0);return l&&l.getTime()===t.getTime()?a:!a}if(\"object\"==typeof r&&void 0!==t&&r.from&&r.to&&t.getTime()>=r.from.getTime()&&t.getTime()<=r.to.getTime())return a}return!a}function ee(e){return void 0!==w.daysContainer&&-1===e.className.indexOf(\"hidden\")&&-1===e.className.indexOf(\"flatpickr-disabled\")&&w.daysContainer.contains(e)}function ne(e){e.target!==w._input||e.relatedTarget&&V(e.relatedTarget)||w.setDate(w._input.value,!0,e.target===w.altInput?w.config.altFormat:w.config.dateFormat)}function te(e){var n=g(e),t=w.config.wrap?p.contains(n):n===w._input,a=w.config.allowInput,i=w.isOpen&&(!a||!t),o=w.config.inline&&t&&!a;if(13===e.keyCode&&t){if(a)return w.setDate(w._input.value,!0,n===w.altInput?w.config.altFormat:w.config.dateFormat),n.blur();w.open()}else if(V(n)||i||o){var r=!!w.timeContainer&&w.timeContainer.contains(n);switch(e.keyCode){case 13:r?(e.preventDefault(),T(),se()):ue(e);break;case 27:e.preventDefault(),se();break;case 8:case 46:t&&!w.config.allowInput&&(e.preventDefault(),w.clear());break;case 37:case 39:if(r||t)w.hourElement&&w.hourElement.focus();else if(e.preventDefault(),void 0!==w.daysContainer&&(!1===a||document.activeElement&&ee(document.activeElement))){var l=39===e.keyCode?1:-1;e.ctrlKey?(e.stopPropagation(),G(l),R(W(1),0)):R(void 0,l)}break;case 38:case 40:e.preventDefault();var c=40===e.keyCode?1:-1;w.daysContainer&&void 0!==n.$i||n===w.input||n===w.altInput?e.ctrlKey?(e.stopPropagation(),Q(w.currentYear-c),R(W(1),0)):r||R(void 0,7*c):n===w.currentYearElement?Q(w.currentYear-c):w.config.enableTime&&(!r&&w.hourElement&&w.hourElement.focus(),T(e),w._debouncedChange());break;case 9:if(r){var d=[w.hourElement,w.minuteElement,w.secondElement,w.amPM].concat(w.pluginElements).filter((function(e){return e})),s=d.indexOf(n);if(-1!==s){var u=d[s+(e.shiftKey?-1:1)];e.preventDefault(),(u||w._input).focus()}}else!w.config.noCalendar&&w.daysContainer&&w.daysContainer.contains(n)&&e.shiftKey&&(e.preventDefault(),w._input.focus())}}if(void 0!==w.amPM&&n===w.amPM)switch(e.key){case w.l10n.amPM[0].charAt(0):case w.l10n.amPM[0].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[0],I(),be();break;case w.l10n.amPM[1].charAt(0):case w.l10n.amPM[1].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[1],I(),be()}(t||V(n))&&pe(\"onKeyDown\",e)}function ae(e){if(1===w.selectedDates.length&&(!e||e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\"))){for(var n=e?e.dateObj.getTime():w.days.firstElementChild.dateObj.getTime(),t=w.parseDate(w.selectedDates[0],void 0,!0).getTime(),a=Math.min(n,w.selectedDates[0].getTime()),i=Math.max(n,w.selectedDates[0].getTime()),o=!1,r=0,l=0,c=a;c<i;c+=y)X(new Date(c),!0)||(o=o||c>a&&c<i,c<t&&(!r||c>r)?r=c:c>t&&(!l||c<l)&&(l=c));for(var d=0;d<w.config.showMonths;d++)for(var s=w.daysContainer.children[d],u=function(a,i){var c,d,u,f=s.children[a],m=f.dateObj.getTime(),g=r>0&&m<r||l>0&&m>l;return g?(f.classList.add(\"notAllowed\"),[\"inRange\",\"startRange\",\"endRange\"].forEach((function(e){f.classList.remove(e)})),\"continue\"):o&&!g?\"continue\":([\"startRange\",\"inRange\",\"endRange\",\"notAllowed\"].forEach((function(e){f.classList.remove(e)})),void(void 0!==e&&(e.classList.add(n<=w.selectedDates[0].getTime()?\"startRange\":\"endRange\"),t<n&&m===t?f.classList.add(\"startRange\"):t>n&&m===t&&f.classList.add(\"endRange\"),m>=r&&(0===l||m<=l)&&(d=t,u=n,(c=m)>Math.min(d,u)&&c<Math.max(d,u))&&f.classList.add(\"inRange\"))))},f=0,m=s.children.length;f<m;f++)u(f)}}function ie(){!w.isOpen||w.config.static||w.config.inline||ce()}function oe(e){return function(n){var t=w.config[\"_\"+e+\"Date\"]=w.parseDate(n,w.config.dateFormat),a=w.config[\"_\"+(\"min\"===e?\"max\":\"min\")+\"Date\"];void 0!==t&&(w[\"min\"===e?\"minDateHasTime\":\"maxDateHasTime\"]=t.getHours()>0||t.getMinutes()>0||t.getSeconds()>0),w.selectedDates&&(w.selectedDates=w.selectedDates.filter((function(e){return X(e)})),w.selectedDates.length||\"min\"!==e||S(t),be()),w.daysContainer&&(de(),void 0!==t?w.currentYearElement[e]=t.getFullYear().toString():w.currentYearElement.removeAttribute(e),w.currentYearElement.disabled=!!a&&void 0!==t&&a.getFullYear()===t.getFullYear())}}function re(){return w.config.wrap?p.querySelector(\"[data-input]\"):p}function le(){\"object\"!=typeof w.config.locale&&void 0===k.l10ns[w.config.locale]&&w.config.errorHandler(new Error(\"flatpickr: invalid locale \"+w.config.locale)),w.l10n=e(e({},k.l10ns.default),\"object\"==typeof w.config.locale?w.config.locale:\"default\"!==w.config.locale?k.l10ns[w.config.locale]:void 0),D.K=\"(\"+w.l10n.amPM[0]+\"|\"+w.l10n.amPM[1]+\"|\"+w.l10n.amPM[0].toLowerCase()+\"|\"+w.l10n.amPM[1].toLowerCase()+\")\",void 0===e(e({},v),JSON.parse(JSON.stringify(p.dataset||{}))).time_24hr&&void 0===k.defaultConfig.time_24hr&&(w.config.time_24hr=w.l10n.time_24hr),w.formatDate=b(w),w.parseDate=C({config:w.config,l10n:w.l10n})}function ce(e){if(void 0!==w.calendarContainer){pe(\"onPreCalendarPosition\");var n=e||w._positionElement,t=Array.prototype.reduce.call(w.calendarContainer.children,(function(e,n){return e+n.offsetHeight}),0),a=w.calendarContainer.offsetWidth,i=w.config.position.split(\" \"),o=i[0],r=i.length>1?i[1]:null,l=n.getBoundingClientRect(),c=window.innerHeight-l.bottom,s=\"above\"===o||\"below\"!==o&&c<t&&l.top>t,u=window.pageYOffset+l.top+(s?-t-2:n.offsetHeight+2);if(d(w.calendarContainer,\"arrowTop\",!s),d(w.calendarContainer,\"arrowBottom\",s),!w.config.inline){var f=window.pageXOffset+l.left,m=!1,g=!1;\"center\"===r?(f-=(a-l.width)/2,m=!0):\"right\"===r&&(f-=a-l.width,g=!0),d(w.calendarContainer,\"arrowLeft\",!m&&!g),d(w.calendarContainer,\"arrowCenter\",m),d(w.calendarContainer,\"arrowRight\",g);var p=window.document.body.offsetWidth-(window.pageXOffset+l.right),h=f+a>window.document.body.offsetWidth,v=p+a>window.document.body.offsetWidth;if(d(w.calendarContainer,\"rightMost\",h),!w.config.static)if(w.calendarContainer.style.top=u+\"px\",h)if(v){var D=function(){for(var e=null,n=0;n<document.styleSheets.length;n++){var t=document.styleSheets[n];try{t.cssRules}catch(e){continue}e=t;break}return null!=e?e:(a=document.createElement(\"style\"),document.head.appendChild(a),a.sheet);var a}();if(void 0===D)return;var b=window.document.body.offsetWidth,C=Math.max(0,b/2-a/2),M=D.cssRules.length,y=\"{left:\"+l.left+\"px;right:auto;}\";d(w.calendarContainer,\"rightMost\",!1),d(w.calendarContainer,\"centerMost\",!0),D.insertRule(\".flatpickr-calendar.centerMost:before,.flatpickr-calendar.centerMost:after\"+y,M),w.calendarContainer.style.left=C+\"px\",w.calendarContainer.style.right=\"auto\"}else w.calendarContainer.style.left=\"auto\",w.calendarContainer.style.right=p+\"px\";else w.calendarContainer.style.left=f+\"px\",w.calendarContainer.style.right=\"auto\"}}}function de(){w.config.noCalendar||w.isMobile||(K(),De(),J())}function se(){w._input.focus(),-1!==window.navigator.userAgent.indexOf(\"MSIE\")||void 0!==navigator.msMaxTouchPoints?setTimeout(w.close,0):w.close()}function ue(e){e.preventDefault(),e.stopPropagation();var n=f(g(e),(function(e){return e.classList&&e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\")&&!e.classList.contains(\"notAllowed\")}));if(void 0!==n){var t=n,a=w.latestSelectedDateObj=new Date(t.dateObj.getTime()),i=(a.getMonth()<w.currentMonth||a.getMonth()>w.currentMonth+w.config.showMonths-1)&&\"range\"!==w.config.mode;if(w.selectedDateElem=t,\"single\"===w.config.mode)w.selectedDates=[a];else if(\"multiple\"===w.config.mode){var o=ve(a);o?w.selectedDates.splice(parseInt(o),1):w.selectedDates.push(a)}else\"range\"===w.config.mode&&(2===w.selectedDates.length&&w.clear(!1,!1),w.latestSelectedDateObj=a,w.selectedDates.push(a),0!==M(a,w.selectedDates[0],!0)&&w.selectedDates.sort((function(e,n){return e.getTime()-n.getTime()})));if(I(),i){var r=w.currentYear!==a.getFullYear();w.currentYear=a.getFullYear(),w.currentMonth=a.getMonth(),r&&(pe(\"onYearChange\"),K()),pe(\"onMonthChange\")}if(De(),J(),be(),i||\"range\"===w.config.mode||1!==w.config.showMonths?void 0!==w.selectedDateElem&&void 0===w.hourElement&&w.selectedDateElem&&w.selectedDateElem.focus():L(t),void 0!==w.hourElement&&void 0!==w.hourElement&&w.hourElement.focus(),w.config.closeOnSelect){var l=\"single\"===w.config.mode&&!w.config.enableTime,c=\"range\"===w.config.mode&&2===w.selectedDates.length&&!w.config.enableTime;(l||c)&&se()}A()}}w.parseDate=C({config:w.config,l10n:w.l10n}),w._handlers=[],w.pluginElements=[],w.loadedPlugins=[],w._bind=N,w._setHoursFromDate=S,w._positionCalendar=ce,w.changeMonth=G,w.changeYear=Q,w.clear=function(e,n){if(void 0===e&&(e=!0),void 0===n&&(n=!0),w.input.value=\"\",void 0!==w.altInput&&(w.altInput.value=\"\"),void 0!==w.mobileInput&&(w.mobileInput.value=\"\"),w.selectedDates=[],w.latestSelectedDateObj=void 0,!0===n&&(w.currentYear=w._initialDate.getFullYear(),w.currentMonth=w._initialDate.getMonth()),!0===w.config.enableTime){var t=_(),a=t.hours,i=t.minutes,o=t.seconds;O(a,i,o)}w.redraw(),e&&pe(\"onChange\")},w.close=function(){w.isOpen=!1,w.isMobile||(void 0!==w.calendarContainer&&w.calendarContainer.classList.remove(\"open\"),void 0!==w._input&&w._input.classList.remove(\"active\")),pe(\"onClose\")},w._createElement=s,w.destroy=function(){void 0!==w.config&&pe(\"onDestroy\");for(var e=w._handlers.length;e--;){var n=w._handlers[e];n.element.removeEventListener(n.event,n.handler,n.options)}if(w._handlers=[],w.mobileInput)w.mobileInput.parentNode&&w.mobileInput.parentNode.removeChild(w.mobileInput),w.mobileInput=void 0;else if(w.calendarContainer&&w.calendarContainer.parentNode)if(w.config.static&&w.calendarContainer.parentNode){var t=w.calendarContainer.parentNode;if(t.lastChild&&t.removeChild(t.lastChild),t.parentNode){for(;t.firstChild;)t.parentNode.insertBefore(t.firstChild,t);t.parentNode.removeChild(t)}}else w.calendarContainer.parentNode.removeChild(w.calendarContainer);w.altInput&&(w.input.type=\"text\",w.altInput.parentNode&&w.altInput.parentNode.removeChild(w.altInput),delete w.altInput),w.input&&(w.input.type=w.input._type,w.input.classList.remove(\"flatpickr-input\"),w.input.removeAttribute(\"readonly\")),[\"_showTimeInput\",\"latestSelectedDateObj\",\"_hideNextMonthArrow\",\"_hidePrevMonthArrow\",\"__hideNextMonthArrow\",\"__hidePrevMonthArrow\",\"isMobile\",\"isOpen\",\"selectedDateElem\",\"minDateHasTime\",\"maxDateHasTime\",\"days\",\"daysContainer\",\"_input\",\"_positionElement\",\"innerContainer\",\"rContainer\",\"monthNav\",\"todayDateElem\",\"calendarContainer\",\"weekdayContainer\",\"prevMonthNav\",\"nextMonthNav\",\"monthsDropdownContainer\",\"currentMonthElement\",\"currentYearElement\",\"navigationCurrentMonth\",\"selectedDateElem\",\"config\"].forEach((function(e){try{delete w[e]}catch(e){}}))},w.isEnabled=X,w.jumpToDate=P,w.open=function(e,n){if(void 0===n&&(n=w._positionElement),!0===w.isMobile){if(e){e.preventDefault();var t=g(e);t&&t.blur()}return void 0!==w.mobileInput&&(w.mobileInput.focus(),w.mobileInput.click()),void pe(\"onOpen\")}if(!w._input.disabled&&!w.config.inline){var a=w.isOpen;w.isOpen=!0,a||(w.calendarContainer.classList.add(\"open\"),w._input.classList.add(\"active\"),pe(\"onOpen\"),ce(n)),!0===w.config.enableTime&&!0===w.config.noCalendar&&(!1!==w.config.allowInput||void 0!==e&&w.timeContainer.contains(e.relatedTarget)||setTimeout((function(){return w.hourElement.select()}),50))}},w.redraw=de,w.set=function(e,n){if(null!==e&&\"object\"==typeof e)for(var a in Object.assign(w.config,e),e)void 0!==fe[a]&&fe[a].forEach((function(e){return e()}));else w.config[e]=n,void 0!==fe[e]?fe[e].forEach((function(e){return e()})):t.indexOf(e)>-1&&(w.config[e]=c(n));w.redraw(),be(!0)},w.setDate=function(e,n,t){if(void 0===n&&(n=!1),void 0===t&&(t=w.config.dateFormat),0!==e&&!e||e instanceof Array&&0===e.length)return w.clear(n);me(e,t),w.latestSelectedDateObj=w.selectedDates[w.selectedDates.length-1],w.redraw(),P(void 0,n),S(),0===w.selectedDates.length&&w.clear(!1),be(n),n&&pe(\"onChange\")},w.toggle=function(e){if(!0===w.isOpen)return w.close();w.open(e)};var fe={locale:[le,z],showMonths:[q,E,$],minDate:[P],maxDate:[P]};function me(e,n){var t=[];if(e instanceof Array)t=e.map((function(e){return w.parseDate(e,n)}));else if(e instanceof Date||\"number\"==typeof e)t=[w.parseDate(e,n)];else if(\"string\"==typeof e)switch(w.config.mode){case\"single\":case\"time\":t=[w.parseDate(e,n)];break;case\"multiple\":t=e.split(w.config.conjunction).map((function(e){return w.parseDate(e,n)}));break;case\"range\":t=e.split(w.l10n.rangeSeparator).map((function(e){return w.parseDate(e,n)}))}else w.config.errorHandler(new Error(\"Invalid date supplied: \"+JSON.stringify(e)));w.selectedDates=w.config.allowInvalidPreload?t:t.filter((function(e){return e instanceof Date&&X(e,!1)})),\"range\"===w.config.mode&&w.selectedDates.sort((function(e,n){return e.getTime()-n.getTime()}))}function ge(e){return e.slice().map((function(e){return\"string\"==typeof e||\"number\"==typeof e||e instanceof Date?w.parseDate(e,void 0,!0):e&&\"object\"==typeof e&&e.from&&e.to?{from:w.parseDate(e.from,void 0),to:w.parseDate(e.to,void 0)}:e})).filter((function(e){return e}))}function pe(e,n){if(void 0!==w.config){var t=w.config[e];if(void 0!==t&&t.length>0)for(var a=0;t[a]&&a<t.length;a++)t[a](w.selectedDates,w.input.value,w,n);\"onChange\"===e&&(w.input.dispatchEvent(he(\"change\")),w.input.dispatchEvent(he(\"input\")))}}function he(e){var n=document.createEvent(\"Event\");return n.initEvent(e,!0,!0),n}function ve(e){for(var n=0;n<w.selectedDates.length;n++)if(0===M(w.selectedDates[n],e))return\"\"+n;return!1}function De(){w.config.noCalendar||w.isMobile||!w.monthNav||(w.yearElements.forEach((function(e,n){var t=new Date(w.currentYear,w.currentMonth,1);t.setMonth(w.currentMonth+n),w.config.showMonths>1||\"static\"===w.config.monthSelectorType?w.monthElements[n].textContent=h(t.getMonth(),w.config.shorthandCurrentMonth,w.l10n)+\" \":w.monthsDropdownContainer.value=t.getMonth().toString(),e.value=t.getFullYear().toString()})),w._hidePrevMonthArrow=void 0!==w.config.minDate&&(w.currentYear===w.config.minDate.getFullYear()?w.currentMonth<=w.config.minDate.getMonth():w.currentYear<w.config.minDate.getFullYear()),w._hideNextMonthArrow=void 0!==w.config.maxDate&&(w.currentYear===w.config.maxDate.getFullYear()?w.currentMonth+1>w.config.maxDate.getMonth():w.currentYear>w.config.maxDate.getFullYear()))}function we(e){return w.selectedDates.map((function(n){return w.formatDate(n,e)})).filter((function(e,n,t){return\"range\"!==w.config.mode||w.config.enableTime||t.indexOf(e)===n})).join(\"range\"!==w.config.mode?w.config.conjunction:w.l10n.rangeSeparator)}function be(e){void 0===e&&(e=!0),void 0!==w.mobileInput&&w.mobileFormatStr&&(w.mobileInput.value=void 0!==w.latestSelectedDateObj?w.formatDate(w.latestSelectedDateObj,w.mobileFormatStr):\"\"),w.input.value=we(w.config.dateFormat),void 0!==w.altInput&&(w.altInput.value=we(w.config.altFormat)),!1!==e&&pe(\"onValueUpdate\")}function Ce(e){var n=g(e),t=w.prevMonthNav.contains(n),a=w.nextMonthNav.contains(n);t||a?G(t?-1:1):w.yearElements.indexOf(n)>=0?n.select():n.classList.contains(\"arrowUp\")?w.changeYear(w.currentYear+1):n.classList.contains(\"arrowDown\")&&w.changeYear(w.currentYear-1)}return function(){w.element=w.input=p,w.isOpen=!1,function(){var n=[\"wrap\",\"weekNumbers\",\"allowInput\",\"allowInvalidPreload\",\"clickOpens\",\"time_24hr\",\"enableTime\",\"noCalendar\",\"altInput\",\"shorthandCurrentMonth\",\"inline\",\"static\",\"enableSeconds\",\"disableMobile\"],i=e(e({},JSON.parse(JSON.stringify(p.dataset||{}))),v),o={};w.config.parseDate=i.parseDate,w.config.formatDate=i.formatDate,Object.defineProperty(w.config,\"enable\",{get:function(){return w.config._enable},set:function(e){w.config._enable=ge(e)}}),Object.defineProperty(w.config,\"disable\",{get:function(){return w.config._disable},set:function(e){w.config._disable=ge(e)}});var r=\"time\"===i.mode;if(!i.dateFormat&&(i.enableTime||r)){var l=k.defaultConfig.dateFormat||a.dateFormat;o.dateFormat=i.noCalendar||r?\"H:i\"+(i.enableSeconds?\":S\":\"\"):l+\" H:i\"+(i.enableSeconds?\":S\":\"\")}if(i.altInput&&(i.enableTime||r)&&!i.altFormat){var d=k.defaultConfig.altFormat||a.altFormat;o.altFormat=i.noCalendar||r?\"h:i\"+(i.enableSeconds?\":S K\":\" K\"):d+\" h:i\"+(i.enableSeconds?\":S\":\"\")+\" K\"}Object.defineProperty(w.config,\"minDate\",{get:function(){return w.config._minDate},set:oe(\"min\")}),Object.defineProperty(w.config,\"maxDate\",{get:function(){return w.config._maxDate},set:oe(\"max\")});var s=function(e){return function(n){w.config[\"min\"===e?\"_minTime\":\"_maxTime\"]=w.parseDate(n,\"H:i:S\")}};Object.defineProperty(w.config,\"minTime\",{get:function(){return w.config._minTime},set:s(\"min\")}),Object.defineProperty(w.config,\"maxTime\",{get:function(){return w.config._maxTime},set:s(\"max\")}),\"time\"===i.mode&&(w.config.noCalendar=!0,w.config.enableTime=!0),Object.assign(w.config,o,i);for(var u=0;u<n.length;u++)w.config[n[u]]=!0===w.config[n[u]]||\"true\"===w.config[n[u]];for(t.filter((function(e){return void 0!==w.config[e]})).forEach((function(e){w.config[e]=c(w.config[e]||[]).map(x)})),w.isMobile=!w.config.disableMobile&&!w.config.inline&&\"single\"===w.config.mode&&!w.config.disable.length&&!w.config.enable.length&&!w.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),u=0;u<w.config.plugins.length;u++){var f=w.config.plugins[u](w)||{};for(var m in f)t.indexOf(m)>-1?w.config[m]=c(f[m]).map(x).concat(w.config[m]):void 0===i[m]&&(w.config[m]=f[m])}i.altInputClass||(w.config.altInputClass=re().className+\" \"+w.config.altInputClass),pe(\"onParseConfig\")}(),le(),w.input=re(),w.input?(w.input._type=w.input.type,w.input.type=\"text\",w.input.classList.add(\"flatpickr-input\"),w._input=w.input,w.config.altInput&&(w.altInput=s(w.input.nodeName,w.config.altInputClass),w._input=w.altInput,w.altInput.placeholder=w.input.placeholder,w.altInput.disabled=w.input.disabled,w.altInput.required=w.input.required,w.altInput.tabIndex=w.input.tabIndex,w.altInput.type=\"text\",w.input.setAttribute(\"type\",\"hidden\"),!w.config.static&&w.input.parentNode&&w.input.parentNode.insertBefore(w.altInput,w.input.nextSibling)),w.config.allowInput||w._input.setAttribute(\"readonly\",\"readonly\"),w._positionElement=w.config.positionElement||w._input):w.config.errorHandler(new Error(\"Invalid input element specified\")),function(){w.selectedDates=[],w.now=w.parseDate(w.config.now)||new Date;var e=w.config.defaultDate||(\"INPUT\"!==w.input.nodeName&&\"TEXTAREA\"!==w.input.nodeName||!w.input.placeholder||w.input.value!==w.input.placeholder?w.input.value:null);e&&me(e,w.config.dateFormat),w._initialDate=w.selectedDates.length>0?w.selectedDates[0]:w.config.minDate&&w.config.minDate.getTime()>w.now.getTime()?w.config.minDate:w.config.maxDate&&w.config.maxDate.getTime()<w.now.getTime()?w.config.maxDate:w.now,w.currentYear=w._initialDate.getFullYear(),w.currentMonth=w._initialDate.getMonth(),w.selectedDates.length>0&&(w.latestSelectedDateObj=w.selectedDates[0]),void 0!==w.config.minTime&&(w.config.minTime=w.parseDate(w.config.minTime,\"H:i\")),void 0!==w.config.maxTime&&(w.config.maxTime=w.parseDate(w.config.maxTime,\"H:i\")),w.minDateHasTime=!!w.config.minDate&&(w.config.minDate.getHours()>0||w.config.minDate.getMinutes()>0||w.config.minDate.getSeconds()>0),w.maxDateHasTime=!!w.config.maxDate&&(w.config.maxDate.getHours()>0||w.config.maxDate.getMinutes()>0||w.config.maxDate.getSeconds()>0)}(),w.utils={getDaysInMonth:function(e,n){return void 0===e&&(e=w.currentMonth),void 0===n&&(n=w.currentYear),1===e&&(n%4==0&&n%100!=0||n%400==0)?29:w.l10n.daysInMonth[e]}},w.isMobile||function(){var e=window.document.createDocumentFragment();if(w.calendarContainer=s(\"div\",\"flatpickr-calendar\"),w.calendarContainer.tabIndex=-1,!w.config.noCalendar){if(e.appendChild((w.monthNav=s(\"div\",\"flatpickr-months\"),w.yearElements=[],w.monthElements=[],w.prevMonthNav=s(\"span\",\"flatpickr-prev-month\"),w.prevMonthNav.innerHTML=w.config.prevArrow,w.nextMonthNav=s(\"span\",\"flatpickr-next-month\"),w.nextMonthNav.innerHTML=w.config.nextArrow,q(),Object.defineProperty(w,\"_hidePrevMonthArrow\",{get:function(){return w.__hidePrevMonthArrow},set:function(e){w.__hidePrevMonthArrow!==e&&(d(w.prevMonthNav,\"flatpickr-disabled\",e),w.__hidePrevMonthArrow=e)}}),Object.defineProperty(w,\"_hideNextMonthArrow\",{get:function(){return w.__hideNextMonthArrow},set:function(e){w.__hideNextMonthArrow!==e&&(d(w.nextMonthNav,\"flatpickr-disabled\",e),w.__hideNextMonthArrow=e)}}),w.currentYearElement=w.yearElements[0],De(),w.monthNav)),w.innerContainer=s(\"div\",\"flatpickr-innerContainer\"),w.config.weekNumbers){var n=function(){w.calendarContainer.classList.add(\"hasWeeks\");var e=s(\"div\",\"flatpickr-weekwrapper\");e.appendChild(s(\"span\",\"flatpickr-weekday\",w.l10n.weekAbbreviation));var n=s(\"div\",\"flatpickr-weeks\");return e.appendChild(n),{weekWrapper:e,weekNumbers:n}}(),t=n.weekWrapper,a=n.weekNumbers;w.innerContainer.appendChild(t),w.weekNumbers=a,w.weekWrapper=t}w.rContainer=s(\"div\",\"flatpickr-rContainer\"),w.rContainer.appendChild($()),w.daysContainer||(w.daysContainer=s(\"div\",\"flatpickr-days\"),w.daysContainer.tabIndex=-1),J(),w.rContainer.appendChild(w.daysContainer),w.innerContainer.appendChild(w.rContainer),e.appendChild(w.innerContainer)}w.config.enableTime&&e.appendChild(function(){w.calendarContainer.classList.add(\"hasTime\"),w.config.noCalendar&&w.calendarContainer.classList.add(\"noCalendar\"),w.timeContainer=s(\"div\",\"flatpickr-time\"),w.timeContainer.tabIndex=-1;var e=s(\"span\",\"flatpickr-time-separator\",\":\"),n=m(\"flatpickr-hour\",{\"aria-label\":w.l10n.hourAriaLabel});w.hourElement=n.getElementsByTagName(\"input\")[0];var t=m(\"flatpickr-minute\",{\"aria-label\":w.l10n.minuteAriaLabel});if(w.minuteElement=t.getElementsByTagName(\"input\")[0],w.hourElement.tabIndex=w.minuteElement.tabIndex=-1,w.hourElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getHours():w.config.time_24hr?w.config.defaultHour:function(e){switch(e%24){case 0:case 12:return 12;default:return e%12}}(w.config.defaultHour)),w.minuteElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getMinutes():w.config.defaultMinute),w.hourElement.setAttribute(\"step\",w.config.hourIncrement.toString()),w.minuteElement.setAttribute(\"step\",w.config.minuteIncrement.toString()),w.hourElement.setAttribute(\"min\",w.config.time_24hr?\"0\":\"1\"),w.hourElement.setAttribute(\"max\",w.config.time_24hr?\"23\":\"12\"),w.minuteElement.setAttribute(\"min\",\"0\"),w.minuteElement.setAttribute(\"max\",\"59\"),w.timeContainer.appendChild(n),w.timeContainer.appendChild(e),w.timeContainer.appendChild(t),w.config.time_24hr&&w.timeContainer.classList.add(\"time24hr\"),w.config.enableSeconds){w.timeContainer.classList.add(\"hasSeconds\");var a=m(\"flatpickr-second\");w.secondElement=a.getElementsByTagName(\"input\")[0],w.secondElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getSeconds():w.config.defaultSeconds),w.secondElement.setAttribute(\"step\",w.minuteElement.getAttribute(\"step\")),w.secondElement.setAttribute(\"min\",\"0\"),w.secondElement.setAttribute(\"max\",\"59\"),w.timeContainer.appendChild(s(\"span\",\"flatpickr-time-separator\",\":\")),w.timeContainer.appendChild(a)}return w.config.time_24hr||(w.amPM=s(\"span\",\"flatpickr-am-pm\",w.l10n.amPM[r((w.latestSelectedDateObj?w.hourElement.value:w.config.defaultHour)>11)]),w.amPM.title=w.l10n.toggleTitle,w.amPM.tabIndex=-1,w.timeContainer.appendChild(w.amPM)),w.timeContainer}()),d(w.calendarContainer,\"rangeMode\",\"range\"===w.config.mode),d(w.calendarContainer,\"animate\",!0===w.config.animate),d(w.calendarContainer,\"multiMonth\",w.config.showMonths>1),w.calendarContainer.appendChild(e);var i=void 0!==w.config.appendTo&&void 0!==w.config.appendTo.nodeType;if((w.config.inline||w.config.static)&&(w.calendarContainer.classList.add(w.config.inline?\"inline\":\"static\"),w.config.inline&&(!i&&w.element.parentNode?w.element.parentNode.insertBefore(w.calendarContainer,w._input.nextSibling):void 0!==w.config.appendTo&&w.config.appendTo.appendChild(w.calendarContainer)),w.config.static)){var l=s(\"div\",\"flatpickr-wrapper\");w.element.parentNode&&w.element.parentNode.insertBefore(l,w.element),l.appendChild(w.element),w.altInput&&l.appendChild(w.altInput),l.appendChild(w.calendarContainer)}w.config.static||w.config.inline||(void 0!==w.config.appendTo?w.config.appendTo:window.document.body).appendChild(w.calendarContainer)}(),function(){if(w.config.wrap&&[\"open\",\"close\",\"toggle\",\"clear\"].forEach((function(e){Array.prototype.forEach.call(w.element.querySelectorAll(\"[data-\"+e+\"]\"),(function(n){return N(n,\"click\",w[e])}))})),w.isMobile)!function(){var e=w.config.enableTime?w.config.noCalendar?\"time\":\"datetime-local\":\"date\";w.mobileInput=s(\"input\",w.input.className+\" flatpickr-mobile\"),w.mobileInput.tabIndex=1,w.mobileInput.type=e,w.mobileInput.disabled=w.input.disabled,w.mobileInput.required=w.input.required,w.mobileInput.placeholder=w.input.placeholder,w.mobileFormatStr=\"datetime-local\"===e?\"Y-m-d\\\\TH:i:S\":\"date\"===e?\"Y-m-d\":\"H:i:S\",w.selectedDates.length>0&&(w.mobileInput.defaultValue=w.mobileInput.value=w.formatDate(w.selectedDates[0],w.mobileFormatStr)),w.config.minDate&&(w.mobileInput.min=w.formatDate(w.config.minDate,\"Y-m-d\")),w.config.maxDate&&(w.mobileInput.max=w.formatDate(w.config.maxDate,\"Y-m-d\")),w.input.getAttribute(\"step\")&&(w.mobileInput.step=String(w.input.getAttribute(\"step\"))),w.input.type=\"hidden\",void 0!==w.altInput&&(w.altInput.type=\"hidden\");try{w.input.parentNode&&w.input.parentNode.insertBefore(w.mobileInput,w.input.nextSibling)}catch(e){}N(w.mobileInput,\"change\",(function(e){w.setDate(g(e).value,!1,w.mobileFormatStr),pe(\"onChange\"),pe(\"onClose\")}))}();else{var e=l(ie,50);if(w._debouncedChange=l(A,300),w.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&N(w.daysContainer,\"mouseover\",(function(e){\"range\"===w.config.mode&&ae(g(e))})),N(window.document.body,\"keydown\",te),w.config.inline||w.config.static||N(window,\"resize\",e),void 0!==window.ontouchstart?N(window.document,\"touchstart\",Z):N(window.document,\"click\",Z),N(window.document,\"focus\",Z,{capture:!0}),!0===w.config.clickOpens&&(N(w._input,\"focus\",w.open),N(w._input,\"click\",w.open)),void 0!==w.daysContainer&&(N(w.monthNav,\"click\",Ce),N(w.monthNav,[\"keyup\",\"increment\"],F),N(w.daysContainer,\"click\",ue)),void 0!==w.timeContainer&&void 0!==w.minuteElement&&void 0!==w.hourElement){var n=function(e){return g(e).select()};N(w.timeContainer,[\"increment\"],T),N(w.timeContainer,\"blur\",T,{capture:!0}),N(w.timeContainer,\"click\",Y),N([w.hourElement,w.minuteElement],[\"focus\",\"click\"],n),void 0!==w.secondElement&&N(w.secondElement,\"focus\",(function(){return w.secondElement&&w.secondElement.select()})),void 0!==w.amPM&&N(w.amPM,\"click\",(function(e){T(e),A()}))}w.config.allowInput&&N(w._input,\"blur\",ne)}}(),(w.selectedDates.length||w.config.noCalendar)&&(w.config.enableTime&&S(w.config.noCalendar?w.latestSelectedDateObj||w.config.minDate:void 0),be(!1)),E();var n=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!w.isMobile&&n&&ce(),pe(\"onReady\")}(),w}function E(e,n){for(var t=Array.prototype.slice.call(e).filter((function(e){return e instanceof HTMLElement})),a=[],i=0;i<t.length;i++){var o=t[i];try{if(null!==o.getAttribute(\"data-fp-omit\"))continue;void 0!==o._flatpickr&&(o._flatpickr.destroy(),o._flatpickr=void 0),o._flatpickr=x(o,n||{}),a.push(o._flatpickr)}catch(e){console.error(e)}}return 1===a.length?a[0]:a}\"function\"!=typeof Object.assign&&(Object.assign=function(e){for(var n=[],t=1;t<arguments.length;t++)n[t-1]=arguments[t];if(!e)throw TypeError(\"Cannot convert undefined or null to object\");for(var a=function(n){n&&Object.keys(n).forEach((function(t){return e[t]=n[t]}))},i=0,o=n;i<o.length;i++){var r=o[i];a(r)}return e}),\"undefined\"!=typeof HTMLElement&&\"undefined\"!=typeof HTMLCollection&&\"undefined\"!=typeof NodeList&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(e){return E(this,e)},HTMLElement.prototype.flatpickr=function(e){return E([this],e)});var k=function(e,n){return\"string\"==typeof e?E(window.document.querySelectorAll(e),n):e instanceof Node?E([e],n):E(e,n)};return k.defaultConfig={},k.l10ns={en:e({},i),default:e({},i)},k.localize=function(n){k.l10ns.default=e(e({},k.l10ns.default),n)},k.setDefaults=function(n){k.defaultConfig=e(e({},k.defaultConfig),n)},k.parseDate=C({}),k.formatDate=b({}),k.compareDates=M,\"undefined\"!=typeof jQuery&&void 0!==jQuery.fn&&(jQuery.fn.flatpickr=function(e){return E(this,e)}),Date.prototype.fp_incr=function(e){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+(\"string\"==typeof e?parseInt(e,10):e))},\"undefined\"!=typeof window&&(window.flatpickr=k),k},\"object\"==typeof t&&void 0!==n?n.exports=r():\"function\"==typeof define&&define.amd?define(r):(o=o||self).flatpickr=r()},\n", " \"df2378664f\": function _(e,t,o,i,a){i();const n=e(\"tslib\"),s=e(\"@bokehjs/core/dom\"),c=e(\"@bokehjs/models/layouts/html_box\"),r=e(\"@bokehjs/models/sources/column_data_source\"),d=e(\"f1971f81bf\"),l=e(\"4c755983eb\"),_=e(\"6e04fbe567\"),h=n.__importDefault(e(\"093eb75864\"));function p(){const e={},t=window.deck,o=Object.keys(t).filter((e=>e.charAt(0)===e.charAt(0).toUpperCase()));for(const i of o)e[i]=t[i];return e}class u extends l.PanelHTMLBoxView{connect_signals(){super.connect_signals();const{data:e,mapbox_api_key:t,tooltip:o,layers:i,initialViewState:a,data_sources:n}=this.model.properties;this.on_change([t,o],(()=>this.render())),this.on_change([e,a],(()=>this.updateDeck())),this.on_change([i],(()=>this._update_layers())),this.on_change([n],(()=>this._connect_sources(!0))),this._layer_map={},this._connected=[],this._connect_sources()}_update_layers(){this._layer_map={},this._update_data(!0)}_connect_sources(e=!1){for(const e of this.model.data_sources)this._connected.indexOf(e)<0&&(this.connect(e.properties.data.change,(()=>this._update_data(!0))),this._connected.push(e));this._update_data(e)}initialize(){if(super.initialize(),window.deck.JSONConverter){const{CSVLoader:e,Tile3DLoader:t}=window.loaders;window.loaders.registerLoaders([t,e]);const o={classes:p(),enumerations:{COORDINATE_SYSTEM:window.deck.COORDINATE_SYSTEM,GL:h.default},constants:{Tile3DLoader:t}};this.jsonConverter=new window.deck.JSONConverter({configuration:o})}}_update_data(e=!0){let t=0;for(const e of this.model.layers){let o;if(t+=1,t-1 in this._layer_map)o=this.model.data_sources[this._layer_map[t-1]];else{if(\"number\"!=typeof e.data)continue;this._layer_map[t-1]=e.data,o=this.model.data_sources[e.data]}e.data=d.transform_cds_to_records(o)}e&&this.updateDeck()}_on_click_event(e){const t={coordinate:e.coordinate,lngLat:e.lngLat,index:e.index};this.model.clickState=t}_on_hover_event(e){if(null==e.coordinate)return;const t={coordinate:e.coordinate,lngLat:e.lngLat,index:e.index};this.model.hoverState=t}_on_viewState_event(e){this.model.viewState=e.viewState}getData(){return Object.assign(Object.assign({},this.model.data),{layers:this.model.layers,initialViewState:this.model.initialViewState,onViewStateChange:e=>this._on_viewState_event(e),onClick:e=>this._on_click_event(e),onHover:e=>this._on_hover_event(e)})}updateDeck(){if(!this.deckGL)return void this.render();const e=this.getData();if(window.deck.updateDeck)window.deck.updateDeck(e,this.deckGL);else{const t=this.jsonConverter.convert(e);this.deckGL.setProps(t)}}createDeck({mapboxApiKey:e,container:t,jsonInput:o,tooltip:i}){let a;try{const n=this.jsonConverter.convert(o),s=_.makeTooltip(i,n.layers);a=new window.deck.DeckGL(Object.assign(Object.assign({},n),{map:window.mapboxgl,mapboxApiAccessToken:e,container:t,getTooltip:s}))}catch(e){console.error(e)}return a}render(){super.render();const e=s.div({class:\"deckgl\"});l.set_size(e,this.model);const t=this.model.mapbox_api_key,o=this.model.tooltip,i=this.getData();window.deck.createDeck?this.deckGL=window.deck.createDeck({mapboxApiKey:t,container:e,jsonInput:i,tooltip:o}):this.deckGL=this.createDeck({mapboxApiKey:t,container:e,jsonInput:i,tooltip:o}),this.el.appendChild(e)}}o.DeckGLPlotView=u,u.__name__=\"DeckGLPlotView\";class k extends c.HTMLBox{constructor(e){super(e)}static init_DeckGLPlot(){this.prototype.default_view=u,this.define((({Any:e,Array:t,String:o,Ref:i})=>({data:[e],data_sources:[t(i(r.ColumnDataSource)),[]],clickState:[e,{}],hoverState:[e,{}],initialViewState:[e,{}],layers:[t(e),[]],mapbox_api_key:[o,\"\"],tooltip:[e,{}],viewState:[e,{}]}))),this.override({height:400,width:600})}}o.DeckGLPlot=k,k.__name__=\"DeckGLPlot\",k.__module__=\"panel.models.deckgl\",k.init_DeckGLPlot()},\n", " \"6e04fbe567\": function _(t,e,n,i,l){\n", " /*\n", " This file was adapted from https://github.com/uber/deck.gl/ the LICENSE\n", " below is preserved to comply with the original license.\n", " \n", " Copyright (c) 2015 - 2017 Uber Technologies, Inc.\n", " \n", " Permission is hereby granted, free of charge, to any person obtaining a copy\n", " of this software and associated documentation files (the \"Software\"), to deal\n", " in the Software without restriction, including without limitation the rights\n", " to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n", " copies of the Software, and to permit persons to whom the Software is\n", " furnished to do so, subject to the following conditions:\n", " \n", " The above copyright notice and this permission notice shall be included in\n", " all copies or substantial portions of the Software.\n", " \n", " THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n", " IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n", " FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n", " AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n", " LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n", " OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n", " THE SOFTWARE.\n", " */\n", " let o,r;i();const c={fontFamily:'\"Helvetica Neue\", Helvetica, Arial, sans-serif',display:\"flex\",flex:\"wrap\",maxWidth:\"500px\",flexDirection:\"column\",zIndex:2};function s(){return document.createElement(\"div\")}function a(t){if(!t.picked)return null;if(t.object===o)return r;const e={html:u(t.object),style:c};return r=e,o=t.object,e}n.getTooltipDefault=a;const f=new Set([\"position\",\"index\"]);function u(t){const e=s();for(const n in t){if(f.has(n))continue;const i=s();i.className=\"header\",i.textContent=n;const l=s();l.className=\"value\",l.textContent=h(t[n]);const o=s();p(o,i,l),o.appendChild(i),o.appendChild(l),e.appendChild(o)}return e.innerHTML}function p(t,e,n){Object.assign(e.style,{fontWeight:700,marginRight:\"10px\",flex:\"1 1 0%\"}),Object.assign(n.style,{flex:\"none\",maxWidth:\"250px\",overflow:\"hidden\",whiteSpace:\"nowrap\",textOverflow:\"ellipsis\"}),Object.assign(t.style,{display:\"flex\",flexDirection:\"row\",justifyContent:\"space-between\",alignItems:\"stretch\"})}function h(t){let e;if(Array.isArray(t)&&t.length>4)e=`Array<${t.length}>`;else if(\"string\"==typeof t)e=t;else if(\"number\"==typeof t)e=String(t);else try{e=JSON.stringify(t)}catch(t){e=\"<Non-Serializable Object>\"}return e.length>50&&(e=e.slice(0,50)),e}function d(t,e){let n=t;for(const t in e){if(\"object\"==typeof e[t])for(const i in e[t])n=n.replace(`{${t}.${i}}`,e[t][i]);n=n.replace(`{${t}}`,e[t])}return n}n.tabularize=u,n.toText=h,n.substituteIn=d,n.makeTooltip=function(t,e){if(!t)return null;let n=!1;const i={};for(let l=0;l<e.length;l++){const o=e[l].id;\"boolean\"!=typeof t&&(l.toString()in t||o in t)&&(i[o]=o in t?t[o]:t[l.toString()],n=!0)}return t.html||t.text||n?e=>{if(!e.picked)return null;const l=n?i[e.layer.id]:t;if(null==l)return;if(\"boolean\"==typeof l)return l?a(e):null;const o={style:l.style||c};return l.html?o.html=d(l.html,e.object):o.text=d(l.text,e.object),o}:a}},\n", " \"093eb75864\": function _(E,_,R,T,A){_.exports={DEPTH_BUFFER_BIT:256,STENCIL_BUFFER_BIT:1024,COLOR_BUFFER_BIT:16384,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPHA:772,ONE_MINUS_DST_ALPHA:773,DST_COLOR:774,ONE_MINUS_DST_COLOR:775,SRC_ALPHA_SATURATE:776,CONSTANT_COLOR:32769,ONE_MINUS_CONSTANT_COLOR:32770,CONSTANT_ALPHA:32771,ONE_MINUS_CONSTANT_ALPHA:32772,FUNC_ADD:32774,FUNC_SUBTRACT:32778,FUNC_REVERSE_SUBTRACT:32779,BLEND_EQUATION:32777,BLEND_EQUATION_RGB:32777,BLEND_EQUATION_ALPHA:34877,BLEND_DST_RGB:32968,BLEND_SRC_RGB:32969,BLEND_DST_ALPHA:32970,BLEND_SRC_ALPHA:32971,BLEND_COLOR:32773,ARRAY_BUFFER_BINDING:34964,ELEMENT_ARRAY_BUFFER_BINDING:34965,LINE_WIDTH:2849,ALIASED_POINT_SIZE_RANGE:33901,ALIASED_LINE_WIDTH_RANGE:33902,CULL_FACE_MODE:2885,FRONT_FACE:2886,DEPTH_RANGE:2928,DEPTH_WRITEMASK:2930,DEPTH_CLEAR_VALUE:2931,DEPTH_FUNC:2932,STENCIL_CLEAR_VALUE:2961,STENCIL_FUNC:2962,STENCIL_FAIL:2964,STENCIL_PASS_DEPTH_FAIL:2965,STENCIL_PASS_DEPTH_PASS:2966,STENCIL_REF:2967,STENCIL_VALUE_MASK:2963,STENCIL_WRITEMASK:2968,STENCIL_BACK_FUNC:34816,STENCIL_BACK_FAIL:34817,STENCIL_BACK_PASS_DEPTH_FAIL:34818,STENCIL_BACK_PASS_DEPTH_PASS:34819,STENCIL_BACK_REF:36003,STENCIL_BACK_VALUE_MASK:36004,STENCIL_BACK_WRITEMASK:36005,VIEWPORT:2978,SCISSOR_BOX:3088,COLOR_CLEAR_VALUE:3106,COLOR_WRITEMASK:3107,UNPACK_ALIGNMENT:3317,PACK_ALIGNMENT:3333,MAX_TEXTURE_SIZE:3379,MAX_VIEWPORT_DIMS:3386,SUBPIXEL_BITS:3408,RED_BITS:3410,GREEN_BITS:3411,BLUE_BITS:3412,ALPHA_BITS:3413,DEPTH_BITS:3414,STENCIL_BITS:3415,POLYGON_OFFSET_UNITS:10752,POLYGON_OFFSET_FACTOR:32824,TEXTURE_BINDING_2D:32873,SAMPLE_BUFFERS:32936,SAMPLES:32937,SAMPLE_COVERAGE_VALUE:32938,SAMPLE_COVERAGE_INVERT:32939,COMPRESSED_TEXTURE_FORMATS:34467,VENDOR:7936,RENDERER:7937,VERSION:7938,IMPLEMENTATION_COLOR_READ_TYPE:35738,IMPLEMENTATION_COLOR_READ_FORMAT:35739,BROWSER_DEFAULT_WEBGL:37444,STATIC_DRAW:35044,STREAM_DRAW:35040,DYNAMIC_DRAW:35048,ARRAY_BUFFER:34962,ELEMENT_ARRAY_BUFFER:34963,BUFFER_SIZE:34660,BUFFER_USAGE:34661,CURRENT_VERTEX_ATTRIB:34342,VERTEX_ATTRIB_ARRAY_ENABLED:34338,VERTEX_ATTRIB_ARRAY_SIZE:34339,VERTEX_ATTRIB_ARRAY_STRIDE:34340,VERTEX_ATTRIB_ARRAY_TYPE:34341,VERTEX_ATTRIB_ARRAY_NORMALIZED:34922,VERTEX_ATTRIB_ARRAY_POINTER:34373,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:34975,CULL_FACE:2884,FRONT:1028,BACK:1029,FRONT_AND_BACK:1032,BLEND:3042,DEPTH_TEST:2929,DITHER:3024,POLYGON_OFFSET_FILL:32823,SAMPLE_ALPHA_TO_COVERAGE:32926,SAMPLE_COVERAGE:32928,SCISSOR_TEST:3089,STENCIL_TEST:2960,NO_ERROR:0,INVALID_ENUM:1280,INVALID_VALUE:1281,INVALID_OPERATION:1282,OUT_OF_MEMORY:1285,CONTEXT_LOST_WEBGL:37442,CW:2304,CCW:2305,DONT_CARE:4352,FASTEST:4353,NICEST:4354,GENERATE_MIPMAP_HINT:33170,BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,DOUBLE:5130,DEPTH_COMPONENT:6402,ALPHA:6406,RGB:6407,RGBA:6408,LUMINANCE:6409,LUMINANCE_ALPHA:6410,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,FRAGMENT_SHADER:35632,VERTEX_SHADER:35633,COMPILE_STATUS:35713,DELETE_STATUS:35712,LINK_STATUS:35714,VALIDATE_STATUS:35715,ATTACHED_SHADERS:35717,ACTIVE_ATTRIBUTES:35721,ACTIVE_UNIFORMS:35718,MAX_VERTEX_ATTRIBS:34921,MAX_VERTEX_UNIFORM_VECTORS:36347,MAX_VARYING_VECTORS:36348,MAX_COMBINED_TEXTURE_IMAGE_UNITS:35661,MAX_VERTEX_TEXTURE_IMAGE_UNITS:35660,MAX_TEXTURE_IMAGE_UNITS:34930,MAX_FRAGMENT_UNIFORM_VECTORS:36349,SHADER_TYPE:35663,SHADING_LANGUAGE_VERSION:35724,CURRENT_PROGRAM:35725,NEVER:512,ALWAYS:519,LESS:513,EQUAL:514,LEQUAL:515,GREATER:516,GEQUAL:518,NOTEQUAL:517,KEEP:7680,REPLACE:7681,INCR:7682,DECR:7683,INVERT:5386,INCR_WRAP:34055,DECR_WRAP:34056,NEAREST:9728,LINEAR:9729,NEAREST_MIPMAP_NEAREST:9984,LINEAR_MIPMAP_NEAREST:9985,NEAREST_MIPMAP_LINEAR:9986,LINEAR_MIPMAP_LINEAR:9987,TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,TEXTURE_2D:3553,TEXTURE:5890,TEXTURE_CUBE_MAP:34067,TEXTURE_BINDING_CUBE_MAP:34068,TEXTURE_CUBE_MAP_POSITIVE_X:34069,TEXTURE_CUBE_MAP_NEGATIVE_X:34070,TEXTURE_CUBE_MAP_POSITIVE_Y:34071,TEXTURE_CUBE_MAP_NEGATIVE_Y:34072,TEXTURE_CUBE_MAP_POSITIVE_Z:34073,TEXTURE_CUBE_MAP_NEGATIVE_Z:34074,MAX_CUBE_MAP_TEXTURE_SIZE:34076,TEXTURE0:33984,ACTIVE_TEXTURE:34016,REPEAT:10497,CLAMP_TO_EDGE:33071,MIRRORED_REPEAT:33648,TEXTURE_WIDTH:4096,TEXTURE_HEIGHT:4097,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,INT_VEC2:35667,INT_VEC3:35668,INT_VEC4:35669,BOOL:35670,BOOL_VEC2:35671,BOOL_VEC3:35672,BOOL_VEC4:35673,FLOAT_MAT2:35674,FLOAT_MAT3:35675,FLOAT_MAT4:35676,SAMPLER_2D:35678,SAMPLER_CUBE:35680,LOW_FLOAT:36336,MEDIUM_FLOAT:36337,HIGH_FLOAT:36338,LOW_INT:36339,MEDIUM_INT:36340,HIGH_INT:36341,FRAMEBUFFER:36160,RENDERBUFFER:36161,RGBA4:32854,RGB5_A1:32855,RGB565:36194,DEPTH_COMPONENT16:33189,STENCIL_INDEX:6401,STENCIL_INDEX8:36168,DEPTH_STENCIL:34041,RENDERBUFFER_WIDTH:36162,RENDERBUFFER_HEIGHT:36163,RENDERBUFFER_INTERNAL_FORMAT:36164,RENDERBUFFER_RED_SIZE:36176,RENDERBUFFER_GREEN_SIZE:36177,RENDERBUFFER_BLUE_SIZE:36178,RENDERBUFFER_ALPHA_SIZE:36179,RENDERBUFFER_DEPTH_SIZE:36180,RENDERBUFFER_STENCIL_SIZE:36181,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE:36048,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME:36049,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL:36050,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE:36051,COLOR_ATTACHMENT0:36064,DEPTH_ATTACHMENT:36096,STENCIL_ATTACHMENT:36128,DEPTH_STENCIL_ATTACHMENT:33306,NONE:0,FRAMEBUFFER_COMPLETE:36053,FRAMEBUFFER_INCOMPLETE_ATTACHMENT:36054,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:36055,FRAMEBUFFER_INCOMPLETE_DIMENSIONS:36057,FRAMEBUFFER_UNSUPPORTED:36061,FRAMEBUFFER_BINDING:36006,RENDERBUFFER_BINDING:36007,READ_FRAMEBUFFER:36008,DRAW_FRAMEBUFFER:36009,MAX_RENDERBUFFER_SIZE:34024,INVALID_FRAMEBUFFER_OPERATION:1286,UNPACK_FLIP_Y_WEBGL:37440,UNPACK_PREMULTIPLY_ALPHA_WEBGL:37441,UNPACK_COLORSPACE_CONVERSION_WEBGL:37443,READ_BUFFER:3074,UNPACK_ROW_LENGTH:3314,UNPACK_SKIP_ROWS:3315,UNPACK_SKIP_PIXELS:3316,PACK_ROW_LENGTH:3330,PACK_SKIP_ROWS:3331,PACK_SKIP_PIXELS:3332,TEXTURE_BINDING_3D:32874,UNPACK_SKIP_IMAGES:32877,UNPACK_IMAGE_HEIGHT:32878,MAX_3D_TEXTURE_SIZE:32883,MAX_ELEMENTS_VERTICES:33e3,MAX_ELEMENTS_INDICES:33001,MAX_TEXTURE_LOD_BIAS:34045,MAX_FRAGMENT_UNIFORM_COMPONENTS:35657,MAX_VERTEX_UNIFORM_COMPONENTS:35658,MAX_ARRAY_TEXTURE_LAYERS:35071,MIN_PROGRAM_TEXEL_OFFSET:35076,MAX_PROGRAM_TEXEL_OFFSET:35077,MAX_VARYING_COMPONENTS:35659,FRAGMENT_SHADER_DERIVATIVE_HINT:35723,RASTERIZER_DISCARD:35977,VERTEX_ARRAY_BINDING:34229,MAX_VERTEX_OUTPUT_COMPONENTS:37154,MAX_FRAGMENT_INPUT_COMPONENTS:37157,MAX_SERVER_WAIT_TIMEOUT:37137,MAX_ELEMENT_INDEX:36203,RED:6403,RGB8:32849,RGBA8:32856,RGB10_A2:32857,TEXTURE_3D:32879,TEXTURE_WRAP_R:32882,TEXTURE_MIN_LOD:33082,TEXTURE_MAX_LOD:33083,TEXTURE_BASE_LEVEL:33084,TEXTURE_MAX_LEVEL:33085,TEXTURE_COMPARE_MODE:34892,TEXTURE_COMPARE_FUNC:34893,SRGB:35904,SRGB8:35905,SRGB8_ALPHA8:35907,COMPARE_REF_TO_TEXTURE:34894,RGBA32F:34836,RGB32F:34837,RGBA16F:34842,RGB16F:34843,TEXTURE_2D_ARRAY:35866,TEXTURE_BINDING_2D_ARRAY:35869,R11F_G11F_B10F:35898,RGB9_E5:35901,RGBA32UI:36208,RGB32UI:36209,RGBA16UI:36214,RGB16UI:36215,RGBA8UI:36220,RGB8UI:36221,RGBA32I:36226,RGB32I:36227,RGBA16I:36232,RGB16I:36233,RGBA8I:36238,RGB8I:36239,RED_INTEGER:36244,RGB_INTEGER:36248,RGBA_INTEGER:36249,R8:33321,RG8:33323,R16F:33325,R32F:33326,RG16F:33327,RG32F:33328,R8I:33329,R8UI:33330,R16I:33331,R16UI:33332,R32I:33333,R32UI:33334,RG8I:33335,RG8UI:33336,RG16I:33337,RG16UI:33338,RG32I:33339,RG32UI:33340,R8_SNORM:36756,RG8_SNORM:36757,RGB8_SNORM:36758,RGBA8_SNORM:36759,RGB10_A2UI:36975,TEXTURE_IMMUTABLE_FORMAT:37167,TEXTURE_IMMUTABLE_LEVELS:33503,UNSIGNED_INT_2_10_10_10_REV:33640,UNSIGNED_INT_10F_11F_11F_REV:35899,UNSIGNED_INT_5_9_9_9_REV:35902,FLOAT_32_UNSIGNED_INT_24_8_REV:36269,UNSIGNED_INT_24_8:34042,HALF_FLOAT:5131,RG:33319,RG_INTEGER:33320,INT_2_10_10_10_REV:36255,CURRENT_QUERY:34917,QUERY_RESULT:34918,QUERY_RESULT_AVAILABLE:34919,ANY_SAMPLES_PASSED:35887,ANY_SAMPLES_PASSED_CONSERVATIVE:36202,MAX_DRAW_BUFFERS:34852,DRAW_BUFFER0:34853,DRAW_BUFFER1:34854,DRAW_BUFFER2:34855,DRAW_BUFFER3:34856,DRAW_BUFFER4:34857,DRAW_BUFFER5:34858,DRAW_BUFFER6:34859,DRAW_BUFFER7:34860,DRAW_BUFFER8:34861,DRAW_BUFFER9:34862,DRAW_BUFFER10:34863,DRAW_BUFFER11:34864,DRAW_BUFFER12:34865,DRAW_BUFFER13:34866,DRAW_BUFFER14:34867,DRAW_BUFFER15:34868,MAX_COLOR_ATTACHMENTS:36063,COLOR_ATTACHMENT1:36065,COLOR_ATTACHMENT2:36066,COLOR_ATTACHMENT3:36067,COLOR_ATTACHMENT4:36068,COLOR_ATTACHMENT5:36069,COLOR_ATTACHMENT6:36070,COLOR_ATTACHMENT7:36071,COLOR_ATTACHMENT8:36072,COLOR_ATTACHMENT9:36073,COLOR_ATTACHMENT10:36074,COLOR_ATTACHMENT11:36075,COLOR_ATTACHMENT12:36076,COLOR_ATTACHMENT13:36077,COLOR_ATTACHMENT14:36078,COLOR_ATTACHMENT15:36079,SAMPLER_3D:35679,SAMPLER_2D_SHADOW:35682,SAMPLER_2D_ARRAY:36289,SAMPLER_2D_ARRAY_SHADOW:36292,SAMPLER_CUBE_SHADOW:36293,INT_SAMPLER_2D:36298,INT_SAMPLER_3D:36299,INT_SAMPLER_CUBE:36300,INT_SAMPLER_2D_ARRAY:36303,UNSIGNED_INT_SAMPLER_2D:36306,UNSIGNED_INT_SAMPLER_3D:36307,UNSIGNED_INT_SAMPLER_CUBE:36308,UNSIGNED_INT_SAMPLER_2D_ARRAY:36311,MAX_SAMPLES:36183,SAMPLER_BINDING:35097,PIXEL_PACK_BUFFER:35051,PIXEL_UNPACK_BUFFER:35052,PIXEL_PACK_BUFFER_BINDING:35053,PIXEL_UNPACK_BUFFER_BINDING:35055,COPY_READ_BUFFER:36662,COPY_WRITE_BUFFER:36663,COPY_READ_BUFFER_BINDING:36662,COPY_WRITE_BUFFER_BINDING:36663,FLOAT_MAT2x3:35685,FLOAT_MAT2x4:35686,FLOAT_MAT3x2:35687,FLOAT_MAT3x4:35688,FLOAT_MAT4x2:35689,FLOAT_MAT4x3:35690,UNSIGNED_INT_VEC2:36294,UNSIGNED_INT_VEC3:36295,UNSIGNED_INT_VEC4:36296,UNSIGNED_NORMALIZED:35863,SIGNED_NORMALIZED:36764,VERTEX_ATTRIB_ARRAY_INTEGER:35069,VERTEX_ATTRIB_ARRAY_DIVISOR:35070,TRANSFORM_FEEDBACK_BUFFER_MODE:35967,MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS:35968,TRANSFORM_FEEDBACK_VARYINGS:35971,TRANSFORM_FEEDBACK_BUFFER_START:35972,TRANSFORM_FEEDBACK_BUFFER_SIZE:35973,TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN:35976,MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS:35978,MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS:35979,INTERLEAVED_ATTRIBS:35980,SEPARATE_ATTRIBS:35981,TRANSFORM_FEEDBACK_BUFFER:35982,TRANSFORM_FEEDBACK_BUFFER_BINDING:35983,TRANSFORM_FEEDBACK:36386,TRANSFORM_FEEDBACK_PAUSED:36387,TRANSFORM_FEEDBACK_ACTIVE:36388,TRANSFORM_FEEDBACK_BINDING:36389,FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING:33296,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE:33297,FRAMEBUFFER_ATTACHMENT_RED_SIZE:33298,FRAMEBUFFER_ATTACHMENT_GREEN_SIZE:33299,FRAMEBUFFER_ATTACHMENT_BLUE_SIZE:33300,FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE:33301,FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE:33302,FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE:33303,FRAMEBUFFER_DEFAULT:33304,DEPTH24_STENCIL8:35056,DRAW_FRAMEBUFFER_BINDING:36006,READ_FRAMEBUFFER_BINDING:36010,RENDERBUFFER_SAMPLES:36011,FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER:36052,FRAMEBUFFER_INCOMPLETE_MULTISAMPLE:36182,UNIFORM_BUFFER:35345,UNIFORM_BUFFER_BINDING:35368,UNIFORM_BUFFER_START:35369,UNIFORM_BUFFER_SIZE:35370,MAX_VERTEX_UNIFORM_BLOCKS:35371,MAX_FRAGMENT_UNIFORM_BLOCKS:35373,MAX_COMBINED_UNIFORM_BLOCKS:35374,MAX_UNIFORM_BUFFER_BINDINGS:35375,MAX_UNIFORM_BLOCK_SIZE:35376,MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS:35377,MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS:35379,UNIFORM_BUFFER_OFFSET_ALIGNMENT:35380,ACTIVE_UNIFORM_BLOCKS:35382,UNIFORM_TYPE:35383,UNIFORM_SIZE:35384,UNIFORM_BLOCK_INDEX:35386,UNIFORM_OFFSET:35387,UNIFORM_ARRAY_STRIDE:35388,UNIFORM_MATRIX_STRIDE:35389,UNIFORM_IS_ROW_MAJOR:35390,UNIFORM_BLOCK_BINDING:35391,UNIFORM_BLOCK_DATA_SIZE:35392,UNIFORM_BLOCK_ACTIVE_UNIFORMS:35394,UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES:35395,UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER:35396,UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER:35398,OBJECT_TYPE:37138,SYNC_CONDITION:37139,SYNC_STATUS:37140,SYNC_FLAGS:37141,SYNC_FENCE:37142,SYNC_GPU_COMMANDS_COMPLETE:37143,UNSIGNALED:37144,SIGNALED:37145,ALREADY_SIGNALED:37146,TIMEOUT_EXPIRED:37147,CONDITION_SATISFIED:37148,WAIT_FAILED:37149,SYNC_FLUSH_COMMANDS_BIT:1,COLOR:6144,DEPTH:6145,STENCIL:6146,MIN:32775,MAX:32776,DEPTH_COMPONENT24:33190,STREAM_READ:35041,STREAM_COPY:35042,STATIC_READ:35045,STATIC_COPY:35046,DYNAMIC_READ:35049,DYNAMIC_COPY:35050,DEPTH_COMPONENT32F:36012,DEPTH32F_STENCIL8:36013,INVALID_INDEX:4294967295,TIMEOUT_IGNORED:-1,MAX_CLIENT_WAIT_TIMEOUT_WEBGL:37447,VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE:35070,UNMASKED_VENDOR_WEBGL:37445,UNMASKED_RENDERER_WEBGL:37446,MAX_TEXTURE_MAX_ANISOTROPY_EXT:34047,TEXTURE_MAX_ANISOTROPY_EXT:34046,COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_RGBA8_ETC2_EAC:37493,COMPRESSED_SRGB8_ETC2:37494,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37495,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37496,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37497,COMPRESSED_RGB_PVRTC_4BPPV1_IMG:35840,COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:35842,COMPRESSED_RGB_PVRTC_2BPPV1_IMG:35841,COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:35843,COMPRESSED_RGB_ETC1_WEBGL:36196,COMPRESSED_RGB_ATC_WEBGL:35986,COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:35986,COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:34798,UNSIGNED_INT_24_8_WEBGL:34042,HALF_FLOAT_OES:36193,RGBA32F_EXT:34836,RGB32F_EXT:34837,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT:33297,UNSIGNED_NORMALIZED_EXT:35863,MIN_EXT:32775,MAX_EXT:32776,SRGB_EXT:35904,SRGB_ALPHA_EXT:35906,SRGB8_ALPHA8_EXT:35907,FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT:33296,FRAGMENT_SHADER_DERIVATIVE_HINT_OES:35723,COLOR_ATTACHMENT0_WEBGL:36064,COLOR_ATTACHMENT1_WEBGL:36065,COLOR_ATTACHMENT2_WEBGL:36066,COLOR_ATTACHMENT3_WEBGL:36067,COLOR_ATTACHMENT4_WEBGL:36068,COLOR_ATTACHMENT5_WEBGL:36069,COLOR_ATTACHMENT6_WEBGL:36070,COLOR_ATTACHMENT7_WEBGL:36071,COLOR_ATTACHMENT8_WEBGL:36072,COLOR_ATTACHMENT9_WEBGL:36073,COLOR_ATTACHMENT10_WEBGL:36074,COLOR_ATTACHMENT11_WEBGL:36075,COLOR_ATTACHMENT12_WEBGL:36076,COLOR_ATTACHMENT13_WEBGL:36077,COLOR_ATTACHMENT14_WEBGL:36078,COLOR_ATTACHMENT15_WEBGL:36079,DRAW_BUFFER0_WEBGL:34853,DRAW_BUFFER1_WEBGL:34854,DRAW_BUFFER2_WEBGL:34855,DRAW_BUFFER3_WEBGL:34856,DRAW_BUFFER4_WEBGL:34857,DRAW_BUFFER5_WEBGL:34858,DRAW_BUFFER6_WEBGL:34859,DRAW_BUFFER7_WEBGL:34860,DRAW_BUFFER8_WEBGL:34861,DRAW_BUFFER9_WEBGL:34862,DRAW_BUFFER10_WEBGL:34863,DRAW_BUFFER11_WEBGL:34864,DRAW_BUFFER12_WEBGL:34865,DRAW_BUFFER13_WEBGL:34866,DRAW_BUFFER14_WEBGL:34867,DRAW_BUFFER15_WEBGL:34868,MAX_COLOR_ATTACHMENTS_WEBGL:36063,MAX_DRAW_BUFFERS_WEBGL:34852,VERTEX_ARRAY_BINDING_OES:34229,QUERY_COUNTER_BITS_EXT:34916,CURRENT_QUERY_EXT:34917,QUERY_RESULT_EXT:34918,QUERY_RESULT_AVAILABLE_EXT:34919,TIME_ELAPSED_EXT:35007,TIMESTAMP_EXT:36392,GPU_DISJOINT_EXT:36795}},\n", " \"9d046c4720\": function _(t,e,s,h,i){h();const r=t(\"@bokehjs/models/layouts/html_box\");class n extends r.HTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,(()=>this._plot()));const{width:t,height:e,renderer:s,theme:h}=this.model.properties;this.on_change([t,e],(()=>this._resize())),this.on_change([h,s],(()=>this.render()))}render(){super.render();const t={width:this.model.width,height:this.model.height,renderer:this.model.renderer};null!=this._chart&&window.echarts.dispose(this._chart),this._chart=window.echarts.init(this.el,this.model.theme,t),this._plot()}after_layout(){super.after_layout(),this._chart.resize()}_plot(){null!=window.echarts&&this._chart.setOption(this.model.data)}_resize(){this._chart.resize({width:this.model.width,height:this.model.height})}}s.EChartsView=n,n.__name__=\"EChartsView\";class a extends r.HTMLBox{constructor(t){super(t)}static init_ECharts(){this.prototype.default_view=n,this.define((({Any:t,String:e})=>({data:[t,{}],theme:[e,\"default\"],renderer:[e,\"canvas\"]})))}}s.ECharts=a,a.__name__=\"ECharts\",a.__module__=\"panel.models.echarts\",a.init_ECharts()},\n", " \"2839081043\": function _(e,t,n,s,r){s();const o=e(\"@bokehjs/models/widgets/markup\"),i=e(\"@bokehjs/core/bokeh_events\"),_=e(\"4c755983eb\"),l=e(\"3329d4aa5b\");class c extends i.ModelEvent{constructor(e,t){super(),this.node=e,this.data=t,this.event_name=\"dom_event\"}_to_json(){return{model:this.origin,node:this.node,data:this.data}}}function a(e){return(new DOMParser).parseFromString(e,\"text/html\").documentElement.textContent}function d(e){Array.from(e.querySelectorAll(\"script\")).forEach((e=>{const t=document.createElement(\"script\");Array.from(e.attributes).forEach((e=>t.setAttribute(e.name,e.value))),t.appendChild(document.createTextNode(e.innerHTML)),e.parentNode&&e.parentNode.replaceChild(t,e)}))}n.DOMEvent=c,c.__name__=\"DOMEvent\",n.htmlDecode=a,n.runScripts=d;class u extends _.PanelMarkupView{constructor(){super(...arguments),this._event_listeners={}}connect_signals(){super.connect_signals(),this.connect(this.model.properties.events.change,(()=>{this._remove_event_listeners(),this._setup_event_listeners()}))}render(){super.render();const e=a(this.model.text)||this.model.text;e?(this.markup_el.innerHTML=e,d(this.markup_el),this._setup_event_listeners()):this.markup_el.innerHTML=\"\"}_remove_event_listeners(){for(const e in this._event_listeners){const t=document.getElementById(e);if(null!=t)for(const n in this._event_listeners[e]){const s=this._event_listeners[e][n];t.removeEventListener(n,s)}else console.warn(`DOM node '${e}' could not be found. Cannot subscribe to DOM events.`)}this._event_listeners={}}_setup_event_listeners(){for(const e in this.model.events){const t=document.getElementById(e);if(null!=t)for(const n of this.model.events[e]){const s=t=>{this.model.trigger_event(new c(e,l.serializeEvent(t)))};t.addEventListener(n,s),e in this._event_listeners||(this._event_listeners[e]={}),this._event_listeners[e][n]=s}else console.warn(`DOM node '${e}' could not be found. Cannot subscribe to DOM events.`)}}}n.HTMLView=u,u.__name__=\"HTMLView\";class h extends o.Markup{constructor(e){super(e)}static init_HTML(){this.prototype.default_view=u,this.define((({Any:e})=>({events:[e,{}]})))}}n.HTML=h,h.__name__=\"HTML\",h.__module__=\"panel.models.markup\",h.init_HTML()},\n", " \"3329d4aa5b\": function _(e,t,o,a,i){function n(e){const t={type:e.type};return\"value\"in e.target&&(t.value=e.target.value),e.type in c&&Object.assign(t,c[e.type](e)),t}a(),o.serializeEvent=n;const r={clipboard:e=>({clipboardData:e.clipboardData}),composition:e=>({data:e.data}),keyboard:e=>({altKey:e.altKey,charCode:e.charCode,ctrlKey:e.ctrlKey,key:e.key,keyCode:e.keyCode,locale:e.locale||null,location:e.location,metaKey:e.metaKey,repeat:e.repeat,shiftKey:e.shiftKey,which:e.which}),mouse:e=>({altKey:e.altKey,button:e.button,buttons:e.buttons,clientX:e.clientX,clientY:e.clientY,ctrlKey:e.ctrlKey,metaKey:e.metaKey,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY,shiftKey:e.shiftKey}),pointer:e=>({pointerId:e.pointerId,width:e.width,height:e.height,pressure:e.pressure,tiltX:e.tiltX,tiltY:e.tiltY,pointerType:e.pointerType,isPrimary:e.isPrimary}),touch:e=>({altKey:e.altKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey}),ui:e=>({detail:e.detail}),wheel:e=>({deltaMode:e.deltaMode,deltaX:e.deltaX,deltaY:e.deltaY,deltaZ:e.deltaZ}),animation:e=>({animationName:e.animationName,pseudoElement:e.pseudoElement,elapsedTime:e.elapsedTime}),transition:e=>({propertyName:e.propertyName,pseudoElement:e.pseudoElement,elapsedTime:e.elapsedTime})},l={clipboard:[\"copy\",\"cut\",\"paste\"],composition:[\"compositionend\",\"compositionstart\",\"compositionupdate\"],keyboard:[\"keydown\",\"keypress\",\"keyup\"],mouse:[\"click\",\"contextmenu\",\"doubleclick\",\"drag\",\"dragend\",\"dragenter\",\"dragexit\",\"dragleave\",\"dragover\",\"dragstart\",\"drop\",\"mousedown\",\"mouseenter\",\"mouseleave\",\"mousemove\",\"mouseout\",\"mouseover\",\"mouseup\"],pointer:[\"pointerdown\",\"pointermove\",\"pointerup\",\"pointercancel\",\"gotpointercapture\",\"lostpointercapture\",\"pointerenter\",\"pointerleave\",\"pointerover\",\"pointerout\"],selection:[\"select\"],touch:[\"touchcancel\",\"touchend\",\"touchmove\",\"touchstart\"],ui:[\"scroll\"],wheel:[\"wheel\"],animation:[\"animationstart\",\"animationend\",\"animationiteration\"],transition:[\"transitionend\"]},c={};Object.keys(l).forEach((e=>{l[e].forEach((t=>{c[t]=r[e]}))})),o.default=n},\n", " \"7d45bd3bc4\": function _(require,module,exports,__esModule,__esExport){__esModule();const preact_1=require(\"6f11f2ef27\"),hooks_1=require(\"4c02a9b43f\"),preact_2=require(\"b3f51db71c\"),fast_json_patch_1=require(\"cbecfde9cd\"),html_box_1=require(\"@bokehjs/models/layouts/html_box\"),layout_1=require(\"4c755983eb\"),event_to_object_1=require(\"3329d4aa5b\"),LayoutConfigContext=preact_1.createContext({});function mountLayout(e,t,o,n){preact_1.render(preact_2.html`\n", " <${Layout}\n", " saveUpdateHook=${t}\n", " sendEvent=${o}\n", " importSourceUrl=${n}\n", " />\n", " `,e)}function Layout({saveUpdateHook:e,sendEvent:t,importSourceUrl:o}){const[n,r]=useInplaceJsonPatch({});return hooks_1.useEffect((()=>e(r)),[r]),n.tagName?preact_2.html`\n", " <${LayoutConfigContext.Provider}\n", " value=${{sendEvent:t,importSourceUrl:o}}\n", " >\n", " <${Element} model=${n} />\n", " <//>\n", " `:preact_2.html`<div />`}function Element({model:e}){return e.importSource?preact_2.html`<${ImportedElement} model=${e} />`:preact_2.html`<${StandardElement} model=${e} />`}function ImportedElement({model:e}){const t=hooks_1.useContext(LayoutConfigContext),o=useLazyModule(e.importSource.source,t.importSourceUrl);if(o){const n=getPathProperty(o,e.tagName),r=elementChildren(e),a=elementAttributes(e,t.sendEvent);return preact_2.html`<${n} ...${a}>${r}<//>`}{const t=e.importSource.fallback;if(!t)return preact_2.html`<div />`;switch(typeof t){case\"object\":return preact_2.html`<${Element} model=${t} />`;case\"string\":return preact_2.html`<div>${t}</div>`;default:return null}}}function StandardElement({model:e}){const t=hooks_1.useContext(LayoutConfigContext),o=elementChildren(e),n=elementAttributes(e,t.sendEvent);return e.children&&e.children.length?preact_2.html`<${e.tagName} ...${n}>${o}<//>`:preact_2.html`<${e.tagName} ...${n} />`}function elementChildren(e){return e.children?e.children.map((e=>{switch(typeof e){case\"object\":return preact_2.html`<${Element} model=${e} />`;case\"string\":return e;default:return null}})):[]}function elementAttributes(e,t){const o=Object.assign({},e.attributes);return e.eventHandlers&&Object.keys(e.eventHandlers).forEach((n=>{const r=e.eventHandlers[n];o[n]=eventHandler(t,r)})),o}function eventHandler(e,t){return function(){const o=Array.from(arguments).map((e=>\"object\"==typeof e?(t.preventDefault&&e.preventDefault(),t.stopPropagation&&e.stopPropagation(),event_to_object_1.serializeEvent(e)):e));return new Promise((n=>{const r={data:o,target:t.target};e(r),n(r)}))}}function useLazyModule(source,sourceUrlBase=\"\"){const[module,setModule]=hooks_1.useState(null);return module||eval(`import('${joinUrl(sourceUrlBase,source)}')`).then(setModule),module}function getPathProperty(e,t){const o=t.split(\".\");let n=e[o.shift()];for(let e=0;e<o.length;e++)n=n[o[e]];return n}function useInplaceJsonPatch(e){const t=hooks_1.useRef(e),o=useForceUpdate(),n=hooks_1.useCallback(((e,n)=>{applyPatchInplace(t.current,e,n),o()}),[t,o]);return[t.current,n]}function applyPatchInplace(e,t,o){t?fast_json_patch_1.applyPatch(e,[{op:\"replace\",path:t,value:fast_json_patch_1.applyPatch(fast_json_patch_1.getValueByPointer(e,t),o,!1,!1).newDocument}]):fast_json_patch_1.applyPatch(e,o)}function useForceUpdate(){const[,e]=hooks_1.useState({});return hooks_1.useCallback((()=>e({})),[])}function joinUrl(e,t){return t.startsWith(\"./\")?(e.endsWith(\"/\")?e.slice(0,-1):e)+t.slice(1):t}exports.mountLayout=mountLayout,exports.default=Layout;class IDOMView extends layout_1.PanelHTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.event.change,(()=>{this._update(...this.model.event),setTimeout((()=>{requestAnimationFrame((()=>this.fix_layout()))}))}))}fix_layout(){this.update_layout(),this.compute_layout(),this.invalidate_layout(),layout_1.set_size(this.el,this.model)}initialize(){super.initialize(),mountLayout(this.el,(e=>this._save_update(e)),(e=>this._send(e)),this.model.importSourceUrl)}async lazy_initialize(){await super.lazy_initialize(),await new Promise((e=>{const t=()=>{this._update?e(null):setTimeout(t,100)};t()}))}_save_update(e){this._update=e}async render(){super.render(),this._update(...this.model.event),await new Promise((e=>{const t=()=>{this.el.children.length?(this.fix_layout(),e(null)):setTimeout(t,50)};t()}))}_send(e){this.model.msg=e}}exports.IDOMView=IDOMView,IDOMView.__name__=\"IDOMView\";class IDOM extends html_box_1.HTMLBox{constructor(e){super(e)}static init_IDOM(){this.prototype.default_view=IDOMView,this.define((({Any:e,String:t})=>({event:[e,[]],importSourceUrl:[t,\"\"],msg:[e,{}]})))}}exports.IDOM=IDOM,IDOM.__name__=\"IDOM\",IDOM.__module__=\"panel.models.idom\",IDOM.init_IDOM()},\n", " \"6f11f2ef27\": function _(e,n,t,_,l){_();var o,r,i,u,s,c,f={},p=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function d(e,n){for(var t in n)e[t]=n[t];return e}function h(e){var n=e.parentNode;n&&n.removeChild(e)}function v(e,n,t){var _,l,o,r=arguments,i={};for(o in n)\"key\"==o?_=n[o]:\"ref\"==o?l=n[o]:i[o]=n[o];if(arguments.length>3)for(t=[t],o=3;o<arguments.length;o++)t.push(r[o]);if(null!=t&&(i.children=t),\"function\"==typeof e&&null!=e.defaultProps)for(o in e.defaultProps)void 0===i[o]&&(i[o]=e.defaultProps[o]);return y(e,i,_,l,null)}function y(e,n,t,_,l){var r={type:e,props:n,key:t,ref:_,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:null==l?++o.__v:l};return null!=o.vnode&&o.vnode(r),r}function m(e){return e.children}function k(e,n){this.props=e,this.context=n}function g(e,n){if(null==n)return e.__?g(e.__,e.__.__k.indexOf(e)+1):null;for(var t;n<e.__k.length;n++)if(null!=(t=e.__k[n])&&null!=t.__e)return t.__e;return\"function\"==typeof e.type?g(e):null}function b(e){var n,t;if(null!=(e=e.__)&&null!=e.__c){for(e.__e=e.__c.base=null,n=0;n<e.__k.length;n++)if(null!=(t=e.__k[n])&&null!=t.__e){e.__e=e.__c.base=t.__e;break}return b(e)}}function C(e){(!e.__d&&(e.__d=!0)&&i.push(e)&&!x.__r++||s!==o.debounceRendering)&&((s=o.debounceRendering)||u)(x)}function x(){for(var e;x.__r=i.length;)e=i.sort((function(e,n){return e.__v.__b-n.__v.__b})),i=[],e.some((function(e){var n,t,_,l,o,r;e.__d&&(o=(l=(n=e).__v).__e,(r=n.__P)&&(t=[],(_=d({},l)).__v=l.__v+1,A(r,l,_,n.__n,void 0!==r.ownerSVGElement,null!=l.__h?[o]:null,t,null==o?g(l):o,l.__h),N(t,l),l.__e!=o&&b(l)))}))}function P(e,n,t,_,l,o,r,i,u,s){var c,a,d,h,v,k,b,C=_&&_.__k||p,x=C.length;for(t.__k=[],c=0;c<n.length;c++)if(null!=(h=t.__k[c]=null==(h=n[c])||\"boolean\"==typeof h?null:\"string\"==typeof h||\"number\"==typeof h?y(null,h,null,null,h):Array.isArray(h)?y(m,{children:h},null,null,null):h.__b>0?y(h.type,h.props,h.key,null,h.__v):h)){if(h.__=t,h.__b=t.__b+1,null===(d=C[c])||d&&h.key==d.key&&h.type===d.type)C[c]=void 0;else for(a=0;a<x;a++){if((d=C[a])&&h.key==d.key&&h.type===d.type){C[a]=void 0;break}d=null}A(e,h,d=d||f,l,o,r,i,u,s),v=h.__e,(a=h.ref)&&d.ref!=a&&(b||(b=[]),d.ref&&b.push(d.ref,null,h),b.push(a,h.__c||v,h)),null!=v?(null==k&&(k=v),\"function\"==typeof h.type&&null!=h.__k&&h.__k===d.__k?h.__d=u=S(h,u,e):u=E(e,h,d,C,v,u),s||\"option\"!==t.type?\"function\"==typeof t.type&&(t.__d=u):e.value=\"\"):u&&d.__e==u&&u.parentNode!=e&&(u=g(d))}for(t.__e=k,c=x;c--;)null!=C[c]&&(\"function\"==typeof t.type&&null!=C[c].__e&&C[c].__e==t.__d&&(t.__d=g(_,c+1)),M(C[c],C[c]));if(b)for(c=0;c<b.length;c++)L(b[c],b[++c],b[++c])}function S(e,n,t){var _,l;for(_=0;_<e.__k.length;_++)(l=e.__k[_])&&(l.__=e,n=\"function\"==typeof l.type?S(l,n,t):E(t,l,l,e.__k,l.__e,n));return n}function E(e,n,t,_,l,o){var r,i,u;if(void 0!==n.__d)r=n.__d,n.__d=void 0;else if(null==t||l!=o||null==l.parentNode)e:if(null==o||o.parentNode!==e)e.appendChild(l),r=null;else{for(i=o,u=0;(i=i.nextSibling)&&u<_.length;u+=2)if(i==l)break e;e.insertBefore(l,o),r=o}return void 0!==r?r:l.nextSibling}function w(e,n,t){\"-\"===n[0]?e.setProperty(n,t):e[n]=null==t?\"\":\"number\"!=typeof t||a.test(n)?t:t+\"px\"}function U(e,n,t,_,l){var o;e:if(\"style\"===n)if(\"string\"==typeof t)e.style.cssText=t;else{if(\"string\"==typeof _&&(e.style.cssText=_=\"\"),_)for(n in _)t&&n in t||w(e.style,n,\"\");if(t)for(n in t)_&&t[n]===_[n]||w(e.style,n,t[n])}else if(\"o\"===n[0]&&\"n\"===n[1])o=n!==(n=n.replace(/Capture$/,\"\")),n=n.toLowerCase()in e?n.toLowerCase().slice(2):n.slice(2),e.l||(e.l={}),e.l[n+o]=t,t?_||e.addEventListener(n,o?T:D,o):e.removeEventListener(n,o?T:D,o);else if(\"dangerouslySetInnerHTML\"!==n){if(l)n=n.replace(/xlink[H:h]/,\"h\").replace(/sName$/,\"s\");else if(\"href\"!==n&&\"list\"!==n&&\"form\"!==n&&\"download\"!==n&&n in e)try{e[n]=null==t?\"\":t;break e}catch(e){}\"function\"==typeof t||(null!=t&&(!1!==t||\"a\"===n[0]&&\"r\"===n[1])?e.setAttribute(n,t):e.removeAttribute(n))}}function D(e){this.l[e.type+!1](o.event?o.event(e):e)}function T(e){this.l[e.type+!0](o.event?o.event(e):e)}function A(e,n,t,_,l,r,i,u,s){var c,f,p,a,h,v,y,g,b,C,x,S=n.type;if(void 0!==n.constructor)return null;null!=t.__h&&(s=t.__h,u=n.__e=t.__e,n.__h=null,r=[u]),(c=o.__b)&&c(n);try{e:if(\"function\"==typeof S){if(g=n.props,b=(c=S.contextType)&&_[c.__c],C=c?b?b.props.value:c.__:_,t.__c?y=(f=n.__c=t.__c).__=f.__E:(\"prototype\"in S&&S.prototype.render?n.__c=f=new S(g,C):(n.__c=f=new k(g,C),f.constructor=S,f.render=F),b&&b.sub(f),f.props=g,f.state||(f.state={}),f.context=C,f.__n=_,p=f.__d=!0,f.__h=[]),null==f.__s&&(f.__s=f.state),null!=S.getDerivedStateFromProps&&(f.__s==f.state&&(f.__s=d({},f.__s)),d(f.__s,S.getDerivedStateFromProps(g,f.__s))),a=f.props,h=f.state,p)null==S.getDerivedStateFromProps&&null!=f.componentWillMount&&f.componentWillMount(),null!=f.componentDidMount&&f.__h.push(f.componentDidMount);else{if(null==S.getDerivedStateFromProps&&g!==a&&null!=f.componentWillReceiveProps&&f.componentWillReceiveProps(g,C),!f.__e&&null!=f.shouldComponentUpdate&&!1===f.shouldComponentUpdate(g,f.__s,C)||n.__v===t.__v){f.props=g,f.state=f.__s,n.__v!==t.__v&&(f.__d=!1),f.__v=n,n.__e=t.__e,n.__k=t.__k,f.__h.length&&i.push(f);break e}null!=f.componentWillUpdate&&f.componentWillUpdate(g,f.__s,C),null!=f.componentDidUpdate&&f.__h.push((function(){f.componentDidUpdate(a,h,v)}))}f.context=C,f.props=g,f.state=f.__s,(c=o.__r)&&c(n),f.__d=!1,f.__v=n,f.__P=e,c=f.render(f.props,f.state,f.context),f.state=f.__s,null!=f.getChildContext&&(_=d(d({},_),f.getChildContext())),p||null==f.getSnapshotBeforeUpdate||(v=f.getSnapshotBeforeUpdate(a,h)),x=null!=c&&c.type===m&&null==c.key?c.props.children:c,P(e,Array.isArray(x)?x:[x],n,t,_,l,r,i,u,s),f.base=n.__e,n.__h=null,f.__h.length&&i.push(f),y&&(f.__E=f.__=null),f.__e=!1}else null==r&&n.__v===t.__v?(n.__k=t.__k,n.__e=t.__e):n.__e=W(t.__e,n,t,_,l,r,i,s);(c=o.diffed)&&c(n)}catch(e){n.__v=null,(s||null!=r)&&(n.__e=u,n.__h=!!s,r[r.indexOf(u)]=null),o.__e(e,n,t)}}function N(e,n){o.__c&&o.__c(n,e),e.some((function(n){try{e=n.__h,n.__h=[],e.some((function(e){e.call(n)}))}catch(e){o.__e(e,n.__v)}}))}function W(e,n,t,_,l,o,r,i){var u,s,c,a,d=t.props,v=n.props,y=n.type,m=0;if(\"svg\"===y&&(l=!0),null!=o)for(;m<o.length;m++)if((u=o[m])&&(u===e||(y?u.localName==y:3==u.nodeType))){e=u,o[m]=null;break}if(null==e){if(null===y)return document.createTextNode(v);e=l?document.createElementNS(\"http://www.w3.org/2000/svg\",y):document.createElement(y,v.is&&v),o=null,i=!1}if(null===y)d===v||i&&e.data===v||(e.data=v);else{if(o=o&&p.slice.call(e.childNodes),s=(d=t.props||f).dangerouslySetInnerHTML,c=v.dangerouslySetInnerHTML,!i){if(null!=o)for(d={},a=0;a<e.attributes.length;a++)d[e.attributes[a].name]=e.attributes[a].value;(c||s)&&(c&&(s&&c.__html==s.__html||c.__html===e.innerHTML)||(e.innerHTML=c&&c.__html||\"\"))}if(function(e,n,t,_,l){var o;for(o in t)\"children\"===o||\"key\"===o||o in n||U(e,o,null,t[o],_);for(o in n)l&&\"function\"!=typeof n[o]||\"children\"===o||\"key\"===o||\"value\"===o||\"checked\"===o||t[o]===n[o]||U(e,o,n[o],t[o],_)}(e,v,d,l,i),c)n.__k=[];else if(m=n.props.children,P(e,Array.isArray(m)?m:[m],n,t,_,l&&\"foreignObject\"!==y,o,r,e.firstChild,i),null!=o)for(m=o.length;m--;)null!=o[m]&&h(o[m]);i||(\"value\"in v&&void 0!==(m=v.value)&&(m!==e.value||\"progress\"===y&&!m)&&U(e,\"value\",m,d.value,!1),\"checked\"in v&&void 0!==(m=v.checked)&&m!==e.checked&&U(e,\"checked\",m,d.checked,!1))}return e}function L(e,n,t){try{\"function\"==typeof e?e(n):e.current=n}catch(e){o.__e(e,t)}}function M(e,n,t){var _,l,r;if(o.unmount&&o.unmount(e),(_=e.ref)&&(_.current&&_.current!==e.__e||L(_,null,n)),t||\"function\"==typeof e.type||(t=null!=(l=e.__e)),e.__e=e.__d=void 0,null!=(_=e.__c)){if(_.componentWillUnmount)try{_.componentWillUnmount()}catch(e){o.__e(e,n)}_.base=_.__P=null}if(_=e.__k)for(r=0;r<_.length;r++)_[r]&&M(_[r],n,t);null!=l&&h(l)}function F(e,n,t){return this.constructor(e,t)}function H(e,n,t){var _,l,r;o.__&&o.__(e,n),l=(_=\"function\"==typeof t)?null:t&&t.__k||n.__k,r=[],A(n,e=(!_&&t||n).__k=v(m,null,[e]),l||f,f,void 0!==n.ownerSVGElement,!_&&t?[t]:l?null:n.firstChild?p.slice.call(n.childNodes):null,r,!_&&t?t:l?l.__e:n.firstChild,_),N(r,e)}t.options=o,t.isValidElement=r,t.createElement=v,t.h=v,t.createRef=function(){return{current:null}},t.Fragment=m,t.Component=k,t.toChildArray=function e(n,t){return t=t||[],null==n||\"boolean\"==typeof n||(Array.isArray(n)?n.some((function(n){e(n,t)})):t.push(n)),t},t.render=H,t.hydrate=function e(n,t){H(n,t,e)},t.cloneElement=function(e,n,t){var _,l,o,r=arguments,i=d({},e.props);for(o in n)\"key\"==o?_=n[o]:\"ref\"==o?l=n[o]:i[o]=n[o];if(arguments.length>3)for(t=[t],o=3;o<arguments.length;o++)t.push(r[o]);return null!=t&&(i.children=t),y(e.type,i,_||e.key,l||e.ref,null)},t.createContext=function(e,n){var t={__c:n=\"__cC\"+c++,__:e,Consumer:function(e,n){return e.children(n)},Provider:function(e){var t,_;return this.getChildContext||(t=[],(_={})[n]=this,this.getChildContext=function(){return _},this.shouldComponentUpdate=function(e){this.props.value!==e.value&&t.some(C)},this.sub=function(e){t.push(e);var n=e.componentWillUnmount;e.componentWillUnmount=function(){t.splice(t.indexOf(e),1),n&&n.call(e)}}),e.children}};return t.Provider.__=t.Consumer.contextType=t},t.options=o={__e:function(e,n){for(var t,_,l;n=n.__;)if((t=n.__c)&&!t.__)try{if((_=t.constructor)&&null!=_.getDerivedStateFromError&&(t.setState(_.getDerivedStateFromError(e)),l=t.__d),null!=t.componentDidCatch&&(t.componentDidCatch(e),l=t.__d),l)return t.__E=t}catch(n){e=n}throw e},__v:0},t.isValidElement=r=function(e){return null!=e&&void 0===e.constructor},k.prototype.setState=function(e,n){var t;t=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=d({},this.state),\"function\"==typeof e&&(e=e(d({},t),this.props)),e&&d(t,e),null!=e&&this.__v&&(n&&this.__h.push(n),C(this))},k.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),C(this))},k.prototype.render=m,i=[],u=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,x.__r=0,c=0},\n", " \"4c02a9b43f\": function _(_,n,t,o,u){o();const e=_(\"6f11f2ef27\");var i,c,r,f=0,a=[],s=e.options.__b,h=e.options.__r,p=e.options.diffed,v=e.options.__c,m=e.options.unmount;function l(_,n){e.options.__h&&e.options.__h(c,_,f||n),f=0;var t=c.__H||(c.__H={__:[],__h:[]});return _>=t.__.length&&t.__.push({}),t.__[_]}function H(_){return f=1,d(q,_)}function d(_,n,t){var o=l(i++,2);return o.t=_,o.__c||(o.__=[t?t(n):q(void 0,n),function(_){var n=o.t(o.__[0],_);o.__[0]!==n&&(o.__=[n,o.__[1]],o.__c.setState({}))}],o.__c=c),o.__}function E(_,n){var t=l(i++,4);!e.options.__s&&F(t.__H,n)&&(t.__=_,t.__H=n,c.__h.push(t))}function y(_,n){var t=l(i++,7);return F(t.__H,n)&&(t.__=_(),t.__H=n,t.__h=_),t.__}function b(){a.forEach((function(_){if(_.__P)try{_.__H.__h.forEach(A),_.__H.__h.forEach(D),_.__H.__h=[]}catch(n){_.__H.__h=[],e.options.__e(n,_.__v)}})),a=[]}t.useState=H,t.useReducer=d,t.useEffect=function(_,n){var t=l(i++,3);!e.options.__s&&F(t.__H,n)&&(t.__=_,t.__H=n,c.__H.__h.push(t))},t.useLayoutEffect=E,t.useRef=function(_){return f=5,y((function(){return{current:_}}),[])},t.useImperativeHandle=function(_,n,t){f=6,E((function(){\"function\"==typeof _?_(n()):_&&(_.current=n())}),null==t?t:t.concat(_))},t.useMemo=y,t.useCallback=function(_,n){return f=8,y((function(){return _}),n)},t.useContext=function(_){var n=c.context[_.__c],t=l(i++,9);return t.__c=_,n?(null==t.__&&(t.__=!0,n.sub(c)),n.props.value):_.__},t.useDebugValue=function(_,n){e.options.useDebugValue&&e.options.useDebugValue(n?n(_):_)},t.useErrorBoundary=function(_){var n=l(i++,10),t=H();return n.__=_,c.componentDidCatch||(c.componentDidCatch=function(_){n.__&&n.__(_),t[1](_)}),[t[0],function(){t[1](void 0)}]},e.options.__b=function(_){c=null,s&&s(_)},e.options.__r=function(_){h&&h(_),i=0;var n=(c=_.__c).__H;n&&(n.__h.forEach(A),n.__h.forEach(D),n.__h=[])},e.options.diffed=function(_){p&&p(_);var n=_.__c;n&&n.__H&&n.__H.__h.length&&(1!==a.push(n)&&r===e.options.requestAnimationFrame||((r=e.options.requestAnimationFrame)||function(_){var n,t=function(){clearTimeout(o),g&&cancelAnimationFrame(n),setTimeout(_)},o=setTimeout(t,100);g&&(n=requestAnimationFrame(t))})(b)),c=void 0},e.options.__c=function(_,n){n.some((function(_){try{_.__h.forEach(A),_.__h=_.__h.filter((function(_){return!_.__||D(_)}))}catch(t){n.some((function(_){_.__h&&(_.__h=[])})),n=[],e.options.__e(t,_.__v)}})),v&&v(_,n)},e.options.unmount=function(_){m&&m(_);var n=_.__c;if(n&&n.__H)try{n.__H.__.forEach(A)}catch(_){e.options.__e(_,n.__v)}};var g=\"function\"==typeof requestAnimationFrame;function A(_){var n=c;\"function\"==typeof _.__c&&_.__c(),c=n}function D(_){var n=c;_.__c=_.__(),c=n}function F(_,n){return!_||_.length!==n.length||n.some((function(n,t){return n!==_[t]}))}function q(_,n){return\"function\"==typeof n?n(_):n}},\n", " \"b3f51db71c\": function _(e,f,n,t,o){t();const r=e(\"tslib\"),d=e(\"6f11f2ef27\");var a=e(\"6f11f2ef27\");o(\"h\",a.h),o(\"render\",a.render),o(\"Component\",a.Component);var h=r.__importDefault(e(\"ab33dd3f38\")).default.bind(d.h);n.html=h},\n", " \"ab33dd3f38\": function _(n,t,s,u,r){u();var e=function(n,t,s,u){var r;t[0]=0;for(var h=1;h<t.length;h++){var p=t[h++],a=t[h]?(t[0]|=p?1:2,s[t[h++]]):t[++h];3===p?u[0]=a:4===p?u[1]=Object.assign(u[1]||{},a):5===p?(u[1]=u[1]||{})[t[++h]]=a:6===p?u[1][t[++h]]+=a+\"\":p?(r=n.apply(a,e(n,a,s,[\"\",null])),u.push(r),a[0]?t[0]|=2:(t[h-2]=0,t[h]=r)):u.push(a)}return u},h=new Map;s.default=function(n){var t=h.get(this);return t||(t=new Map,h.set(this,t)),(t=e(this,t.get(n)||(t.set(n,t=function(n){for(var t,s,u=1,r=\"\",e=\"\",h=[0],p=function(n){1===u&&(n||(r=r.replace(/^\\s*\\n\\s*|\\s*\\n\\s*$/g,\"\")))?h.push(0,n,r):3===u&&(n||r)?(h.push(3,n,r),u=2):2===u&&\"...\"===r&&n?h.push(4,n,0):2===u&&r&&!n?h.push(5,0,!0,r):u>=5&&((r||!n&&5===u)&&(h.push(u,0,r,s),u=6),n&&(h.push(u,n,0,s),u=6)),r=\"\"},a=0;a<n.length;a++){a&&(1===u&&p(),p(a));for(var f=0;f<n[a].length;f++)t=n[a][f],1===u?\"<\"===t?(p(),h=[h],u=3):r+=t:4===u?\"--\"===r&&\">\"===t?(u=1,r=\"\"):r=t+r[0]:e?t===e?e=\"\":r+=t:'\"'===t||\"'\"===t?e=t:\">\"===t?(p(),u=1):u&&(\"=\"===t?(u=5,s=r,r=\"\"):\"/\"===t&&(u<5||\">\"===n[a][f+1])?(p(),3===u&&(h=h[0]),u=h,(h=h[0]).push(2,0,u),u=0):\" \"===t||\"\\t\"===t||\"\\n\"===t||\"\\r\"===t?(p(),u=2):r+=t),3===u&&\"!--\"===r&&(u=4,h=h[0])}return p(),h}(n)),t),arguments,[])).length>1?t:t[0]}},\n", " \"cbecfde9cd\": function _(e,n,t,o,a){var r=this&&this.__assign||function(){return(r=Object.assign||function(e){for(var n,t=1,o=arguments.length;t<o;t++)for(var a in n=arguments[t])Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a]);return e}).apply(this,arguments)};o();\n", " /*!\n", " * https://github.com/Starcounter-Jack/JSON-Patch\n", " * (c) 2017 Joachim Wester\n", " * MIT license\n", " */\n", " var p=e(\"cb21060ee5\"),s=e(\"b2f693e532\"),c=e(\"b2f693e532\");t.applyOperation=c.applyOperation,t.applyPatch=c.applyPatch,t.applyReducer=c.applyReducer,t.getValueByPointer=c.getValueByPointer,t.validate=c.validate,t.validator=c.validator;var i=e(\"cb21060ee5\");t.JsonPatchError=i.PatchError,t.deepClone=i._deepClone,t.escapePathComponent=i.escapePathComponent,t.unescapePathComponent=i.unescapePathComponent;var u=new WeakMap,l=function(e){this.observers=new Map,this.obj=e},v=function(e,n){this.callback=e,this.observer=n};function h(e,n){n.unobserve()}function d(e,n){var t,o=function(e){return u.get(e)}(e);if(o){var a=function(e,n){return e.observers.get(n)}(o,n);t=a&&a.observer}else o=new l(e),u.set(e,o);if(t)return t;if(t={},o.value=p._deepClone(e),n){t.callback=n,t.next=null;var r=function(){f(t)},s=function(){clearTimeout(t.next),t.next=setTimeout(r)};\"undefined\"!=typeof window&&(window.addEventListener(\"mouseup\",s),window.addEventListener(\"keyup\",s),window.addEventListener(\"mousedown\",s),window.addEventListener(\"keydown\",s),window.addEventListener(\"change\",s))}return t.patches=[],t.object=e,t.unobserve=function(){f(t),clearTimeout(t.next),function(e,n){e.observers.delete(n.callback)}(o,t),\"undefined\"!=typeof window&&(window.removeEventListener(\"mouseup\",s),window.removeEventListener(\"keyup\",s),window.removeEventListener(\"mousedown\",s),window.removeEventListener(\"keydown\",s),window.removeEventListener(\"change\",s))},o.observers.set(n,new v(n,t)),t}function f(e,n){void 0===n&&(n=!1);var t=u.get(e.object);w(t.value,e.object,e.patches,\"\",n),e.patches.length&&s.applyPatch(t.value,e.patches);var o=e.patches;return o.length>0&&(e.patches=[],e.callback&&e.callback(o)),o}function w(e,n,t,o,a){if(n!==e){\"function\"==typeof n.toJSON&&(n=n.toJSON());for(var r=p._objectKeys(n),s=p._objectKeys(e),c=!1,i=s.length-1;i>=0;i--){var u=e[v=s[i]];if(!p.hasOwnProperty(n,v)||void 0===n[v]&&void 0!==u&&!1===Array.isArray(n))Array.isArray(e)===Array.isArray(n)?(a&&t.push({op:\"test\",path:o+\"/\"+p.escapePathComponent(v),value:p._deepClone(u)}),t.push({op:\"remove\",path:o+\"/\"+p.escapePathComponent(v)}),c=!0):(a&&t.push({op:\"test\",path:o,value:e}),t.push({op:\"replace\",path:o,value:n}),!0);else{var l=n[v];\"object\"==typeof u&&null!=u&&\"object\"==typeof l&&null!=l?w(u,l,t,o+\"/\"+p.escapePathComponent(v),a):u!==l&&(!0,a&&t.push({op:\"test\",path:o+\"/\"+p.escapePathComponent(v),value:p._deepClone(u)}),t.push({op:\"replace\",path:o+\"/\"+p.escapePathComponent(v),value:p._deepClone(l)}))}}if(c||r.length!=s.length)for(i=0;i<r.length;i++){var v=r[i];p.hasOwnProperty(e,v)||void 0===n[v]||t.push({op:\"add\",path:o+\"/\"+p.escapePathComponent(v),value:p._deepClone(n[v])})}}}function b(e,n,t){void 0===t&&(t=!1);var o=[];return w(e,n,o,\"\",t),o}t.unobserve=h,t.observe=d,t.generate=f,t.compare=b;var y=e(\"b2f693e532\"),m=e(\"cb21060ee5\");t.default=r({},y,{unobserve:h,observe:d,generate:f,compare:b,JsonPatchError:m.PatchError,deepClone:p._deepClone,escapePathComponent:p.escapePathComponent,unescapePathComponent:m.unescapePathComponent})},\n", " \"cb21060ee5\": function _(r,e,t,n,o){\n", " /*!\n", " * https://github.com/Starcounter-Jack/JSON-Patch\n", " * (c) 2017 Joachim Wester\n", " * MIT license\n", " */\n", " var i,f=this&&this.__extends||(i=function(r,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,e){r.__proto__=e}||function(r,e){for(var t in e)e.hasOwnProperty(t)&&(r[t]=e[t])})(r,e)},function(r,e){function t(){this.constructor=r}i(r,e),r.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)});n();var u=Object.prototype.hasOwnProperty;function a(r,e){return u.call(r,e)}function c(r){if(Array.isArray(r)){for(var e=new Array(r.length),t=0;t<e.length;t++)e[t]=\"\"+t;return e}if(Object.keys)return Object.keys(r);e=[];for(var n in r)a(r,n)&&e.push(n);return e}function p(r){return-1===r.indexOf(\"/\")&&-1===r.indexOf(\"~\")?r:r.replace(/~/g,\"~0\").replace(/\\//g,\"~1\")}function s(r,e){var t;for(var n in r)if(a(r,n)){if(r[n]===e)return p(n)+\"/\";if(\"object\"==typeof r[n]&&\"\"!=(t=s(r[n],e)))return p(n)+\"/\"+t}return\"\"}function h(r,e){var t=[r];for(var n in e){var o=\"object\"==typeof e[n]?JSON.stringify(e[n],null,2):e[n];void 0!==o&&t.push(n+\": \"+o)}return t.join(\"\\n\")}t.hasOwnProperty=a,t._objectKeys=c,t._deepClone=function(r){switch(typeof r){case\"object\":return JSON.parse(JSON.stringify(r));case\"undefined\":return null;default:return r}},t.isInteger=function(r){for(var e,t=0,n=r.length;t<n;){if(!((e=r.charCodeAt(t))>=48&&e<=57))return!1;t++}return!0},t.escapePathComponent=p,t.unescapePathComponent=function(r){return r.replace(/~1/g,\"/\").replace(/~0/g,\"~\")},t._getPathRecursive=s,t.getPath=function(r,e){if(r===e)return\"/\";var t=s(r,e);if(\"\"===t)throw new Error(\"Object not found in root\");return\"/\"+t},t.hasUndefined=function r(e){if(void 0===e)return!0;if(e)if(Array.isArray(e)){for(var t=0,n=e.length;t<n;t++)if(r(e[t]))return!0}else if(\"object\"==typeof e){var o=c(e),i=o.length;for(t=0;t<i;t++)if(r(e[o[t]]))return!0}return!1};var y=function(r){function e(e,t,n,o,i){var f=this.constructor,u=r.call(this,h(e,{name:t,index:n,operation:o,tree:i}))||this;return u.name=t,u.index=n,u.operation=o,u.tree=i,Object.setPrototypeOf(u,f.prototype),u.message=h(e,{name:t,index:n,operation:o,tree:i}),u}return f(e,r),e}(Error);t.PatchError=y},\n", " \"b2f693e532\": function _(e,t,o,r,n){r();var a=e(\"0c8122087b\"),i=e(\"cb21060ee5\");o.JsonPatchError=i.PatchError,o.deepClone=i._deepClone;var p={add:function(e,t,o){return e[t]=this.value,{newDocument:o}},remove:function(e,t,o){var r=e[t];return delete e[t],{newDocument:o,removed:r}},replace:function(e,t,o){var r=e[t];return e[t]=this.value,{newDocument:o,removed:r}},move:function(e,t,o){var r=h(o,this.path);r&&(r=i._deepClone(r));var n=c(o,{op:\"remove\",path:this.from}).removed;return c(o,{op:\"add\",path:this.path,value:n}),{newDocument:o,removed:r}},copy:function(e,t,o){var r=h(o,this.from);return c(o,{op:\"add\",path:this.path,value:i._deepClone(r)}),{newDocument:o}},test:function(e,t,o){return{newDocument:o,test:a(e[t],this.value)}},_get:function(e,t,o){return this.value=e[t],{newDocument:o}}},s={add:function(e,t,o){return i.isInteger(t)?e.splice(t,0,this.value):e[t]=this.value,{newDocument:o,index:t}},remove:function(e,t,o){return{newDocument:o,removed:e.splice(t,1)[0]}},replace:function(e,t,o){var r=e[t];return e[t]=this.value,{newDocument:o,removed:r}},move:p.move,copy:p.copy,test:p.test,_get:p._get};function h(e,t){if(\"\"==t)return e;var o={op:\"_get\",path:t};return c(e,o),o.value}function c(e,t,r,n,c,u){if(void 0===r&&(r=!1),void 0===n&&(n=!0),void 0===c&&(c=!0),void 0===u&&(u=0),r&&(\"function\"==typeof r?r(t,0,e,t.path):d(t,0)),\"\"===t.path){var f={newDocument:e};if(\"add\"===t.op)return f.newDocument=t.value,f;if(\"replace\"===t.op)return f.newDocument=t.value,f.removed=e,f;if(\"move\"===t.op||\"copy\"===t.op)return f.newDocument=h(e,t.from),\"move\"===t.op&&(f.removed=e),f;if(\"test\"===t.op){if(f.test=a(e,t.value),!1===f.test)throw new o.JsonPatchError(\"Test operation failed\",\"TEST_OPERATION_FAILED\",u,t,e);return f.newDocument=e,f}if(\"remove\"===t.op)return f.removed=e,f.newDocument=null,f;if(\"_get\"===t.op)return t.value=e,f;if(r)throw new o.JsonPatchError(\"Operation `op` property is not one of operations defined in RFC-6902\",\"OPERATION_OP_INVALID\",u,t,e);return f}n||(e=i._deepClone(e));var l=(t.path||\"\").split(\"/\"),v=e,E=1,_=l.length,O=void 0,w=void 0,A=void 0;for(A=\"function\"==typeof r?r:d;;){if(w=l[E],c&&\"__proto__\"==w)throw new TypeError(\"JSON-Patch: modifying `__proto__` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README\");if(r&&void 0===O&&(void 0===v[w]?O=l.slice(0,E).join(\"/\"):E==_-1&&(O=t.path),void 0!==O&&A(t,0,e,O)),E++,Array.isArray(v)){if(\"-\"===w)w=v.length;else{if(r&&!i.isInteger(w))throw new o.JsonPatchError(\"Expected an unsigned base-10 integer value, making the new referenced value the array element with the zero-based index\",\"OPERATION_PATH_ILLEGAL_ARRAY_INDEX\",u,t,e);i.isInteger(w)&&(w=~~w)}if(E>=_){if(r&&\"add\"===t.op&&w>v.length)throw new o.JsonPatchError(\"The specified index MUST NOT be greater than the number of elements in the array\",\"OPERATION_VALUE_OUT_OF_BOUNDS\",u,t,e);if(!1===(f=s[t.op].call(t,v,w,e)).test)throw new o.JsonPatchError(\"Test operation failed\",\"TEST_OPERATION_FAILED\",u,t,e);return f}}else if(w&&-1!=w.indexOf(\"~\")&&(w=i.unescapePathComponent(w)),E>=_){if(!1===(f=p[t.op].call(t,v,w,e)).test)throw new o.JsonPatchError(\"Test operation failed\",\"TEST_OPERATION_FAILED\",u,t,e);return f}v=v[w]}}function u(e,t,r,n,a){if(void 0===n&&(n=!0),void 0===a&&(a=!0),r&&!Array.isArray(t))throw new o.JsonPatchError(\"Patch sequence must be an array\",\"SEQUENCE_NOT_AN_ARRAY\");n||(e=i._deepClone(e));for(var p=new Array(t.length),s=0,h=t.length;s<h;s++)p[s]=c(e,t[s],r,!0,a,s),e=p[s].newDocument;return p.newDocument=e,p}function f(e,t,r){var n=c(e,t);if(!1===n.test)throw new o.JsonPatchError(\"Test operation failed\",\"TEST_OPERATION_FAILED\",r,t,e);return n.newDocument}function d(e,t,r,n){if(\"object\"!=typeof e||null===e||Array.isArray(e))throw new o.JsonPatchError(\"Operation is not an object\",\"OPERATION_NOT_AN_OBJECT\",t,e,r);if(!p[e.op])throw new o.JsonPatchError(\"Operation `op` property is not one of operations defined in RFC-6902\",\"OPERATION_OP_INVALID\",t,e,r);if(\"string\"!=typeof e.path)throw new o.JsonPatchError(\"Operation `path` property is not a string\",\"OPERATION_PATH_INVALID\",t,e,r);if(0!==e.path.indexOf(\"/\")&&e.path.length>0)throw new o.JsonPatchError('Operation `path` property must start with \"/\"',\"OPERATION_PATH_INVALID\",t,e,r);if((\"move\"===e.op||\"copy\"===e.op)&&\"string\"!=typeof e.from)throw new o.JsonPatchError(\"Operation `from` property is not present (applicable in `move` and `copy` operations)\",\"OPERATION_FROM_REQUIRED\",t,e,r);if((\"add\"===e.op||\"replace\"===e.op||\"test\"===e.op)&&void 0===e.value)throw new o.JsonPatchError(\"Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)\",\"OPERATION_VALUE_REQUIRED\",t,e,r);if((\"add\"===e.op||\"replace\"===e.op||\"test\"===e.op)&&i.hasUndefined(e.value))throw new o.JsonPatchError(\"Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)\",\"OPERATION_VALUE_CANNOT_CONTAIN_UNDEFINED\",t,e,r);if(r)if(\"add\"==e.op){var a=e.path.split(\"/\").length,s=n.split(\"/\").length;if(a!==s+1&&a!==s)throw new o.JsonPatchError(\"Cannot perform an `add` operation at the desired path\",\"OPERATION_PATH_CANNOT_ADD\",t,e,r)}else if(\"replace\"===e.op||\"remove\"===e.op||\"_get\"===e.op){if(e.path!==n)throw new o.JsonPatchError(\"Cannot perform the operation at a path that does not exist\",\"OPERATION_PATH_UNRESOLVABLE\",t,e,r)}else if(\"move\"===e.op||\"copy\"===e.op){var h=l([{op:\"_get\",path:e.from,value:void 0}],r);if(h&&\"OPERATION_PATH_UNRESOLVABLE\"===h.name)throw new o.JsonPatchError(\"Cannot perform the operation from a path that does not exist\",\"OPERATION_FROM_UNRESOLVABLE\",t,e,r)}}function l(e,t,r){try{if(!Array.isArray(e))throw new o.JsonPatchError(\"Patch sequence must be an array\",\"SEQUENCE_NOT_AN_ARRAY\");if(t)u(i._deepClone(t),i._deepClone(e),r||!0);else{r=r||d;for(var n=0;n<e.length;n++)r(e[n],n,t,void 0)}}catch(e){if(e instanceof o.JsonPatchError)return e;throw e}}o.getValueByPointer=h,o.applyOperation=c,o.applyPatch=u,o.applyReducer=f,o.validator=d,o.validate=l,o.default={JsonPatchError:o.JsonPatchError,deepClone:o.deepClone,getValueByPointer:h,applyOperation:c,applyPatch:u,applyReducer:f,validator:d,validate:l}},\n", " \"0c8122087b\": function _(r,t,e,n,f){var i=Array.isArray,o=Object.keys,u=Object.prototype.hasOwnProperty;t.exports=function r(t,e){if(t===e)return!0;if(t&&e&&\"object\"==typeof t&&\"object\"==typeof e){var n,f,a,c=i(t),g=i(e);if(c&&g){if((f=t.length)!=e.length)return!1;for(n=f;0!=n--;)if(!r(t[n],e[n]))return!1;return!0}if(c!=g)return!1;var p=t instanceof Date,s=e instanceof Date;if(p!=s)return!1;if(p&&s)return t.getTime()==e.getTime();var y=t instanceof RegExp,l=e instanceof RegExp;if(y!=l)return!1;if(y&&l)return t.toString()==e.toString();var h=o(t);if((f=h.length)!==o(e).length)return!1;for(n=f;0!=n--;)if(!u.call(e,h[n]))return!1;for(n=f;0!=n--;)if(!r(t[a=h[n]],e[a]))return!1;return!0}return t!=t&&e!=e}},\n", " \"0eae77d68f\": function _(e,i,t,n,d){n();const s=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"4c755983eb\"),o=window.Jupyter;class a extends l.PanelHTMLBoxView{constructor(){super(...arguments),this.rendered=!1}render(){super.render(),this._render().then((()=>{this.rendered=!0,this.invalidate_layout(),this.notify_finished()}))}has_finished(){return this.rendered&&super.has_finished()}async _render(){const{spec:e,state:i}=this.model.bundle;let t;if(null!=o&&null!=o.notebook?t=o.notebook.kernel.widget_manager:null!=window.PyViz.widget_manager&&(t=window.PyViz.widget_manager),t)if(null==this.ipyview){const n=(await t.set_state(i)).find((i=>i.model_id==e.model_id));if(null!=n){const e=await t.create_view(n,{el:this.el});if(this.ipyview=e,e.children_views)for(const i of e.children_views.views)await i;this.el.appendChild(e.el),e.trigger(\"displayed\",e)}}else this.el.appendChild(this.ipyview.el);else console.log(\"Panel IPyWidget model could not find a WidgetManager\")}}t.IPyWidgetView=a,a.__name__=\"IPyWidgetView\";class r extends s.HTMLBox{constructor(e){super(e)}static init_IPyWidget(){this.prototype.default_view=a,this.define((({Any:e})=>({bundle:[e,{}]})))}}t.IPyWidget=r,r.__name__=\"IPyWidget\",r.__module__=\"panel.models.ipywidget\",r.init_IPyWidget()},\n", " \"0d30bea0c8\": function _(e,t,r,s,n){s();const i=e(\"tslib\"),o=e(\"@bokehjs/core/kinds\"),d=e(\"@bokehjs/models/widgets/markup\"),l=i.__importDefault(e(\"18bba7b7e1\")),a=e(\"4c755983eb\");class h extends a.PanelMarkupView{connect_signals(){super.connect_signals();const{depth:e,hover_preview:t,theme:r}=this.model.properties;this.on_change([e,t,r],(()=>this.render()))}render(){super.render();const e=this.model.text.replace(/(\\r\\n|\\n|\\r)/gm,\"\");let t;try{t=window.JSON.parse(e)}catch(e){return void(this.markup_el.innerHTML=\"<b>Invalid JSON:</b> \"+e.toString())}const r={hoverPreviewEnabled:this.model.hover_preview,theme:this.model.theme},s=null==this.model.depth?1/0:this.model.depth,n=new l.default(t,s,r).render();let i=\"border-radius: 5px; padding: 10px;\";\"dark\"==this.model.theme?n.style.cssText=\"background-color: rgb(30, 30, 30);\"+i:n.style.cssText=i,this.markup_el.append(n)}}r.JSONView=h,h.__name__=\"JSONView\",r.JSONTheme=o.Enum(\"dark\",\"light\");class p extends d.Markup{constructor(e){super(e)}static init_JSON(){this.prototype.default_view=h,this.define((({Boolean:e,Int:t,Nullable:s})=>({depth:[s(t),1],hover_preview:[e,!1],theme:[r.JSONTheme,\"dark\"]})))}}r.JSON=p,p.__name__=\"JSON\",p.__module__=\"panel.models.markup\",p.init_JSON()},\n", " \"18bba7b7e1\": function _(t,e,r,n,o){function i(t){return null===t?\"null\":typeof t}function s(t){return!!t&&\"object\"==typeof t}function a(t){if(void 0===t)return\"\";if(null===t)return\"Object\";if(\"object\"==typeof t&&!t.constructor)return\"Object\";var e=/function ([^(]*)/.exec(t.constructor.toString());return e&&e.length>1?e[1]:\"\"}function f(t,e,r){return\"null\"===t||\"undefined\"===t?t:(\"string\"!==t&&\"stringifiable\"!==t||(r='\"'+r.replace(/\"/g,'\\\\\"')+'\"'),\"function\"===t?e.toString().replace(/[\\r\\n]/g,\"\").replace(/\\{.*\\}/,\"\")+\"{…}\":r)}function m(t){var e=\"\";return s(t)?(e=a(t),Array.isArray(t)&&(e+=\"[\"+t.length+\"]\")):e=f(i(t),t,t),e}function l(t){return\"json-formatter-\"+t}function d(t,e,r){var n=document.createElement(t);return e&&n.classList.add(l(e)),void 0!==r&&(r instanceof Node?n.appendChild(r):n.appendChild(document.createTextNode(String(r)))),n}n(),function(t){if(\"undefined\"!=typeof window){var e=document.createElement(\"style\");e.setAttribute(\"media\",\"screen\"),e.innerHTML=t,document.head.appendChild(e)}}('.json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n color: black;\\n text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \"No properties\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \"[]\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n color: green;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: blue;\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n color: #00008B;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \"â–º\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n color: white;\\n text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \"No properties\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \"[]\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n color: #31F031;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: #027BFF;\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n color: #23A0DB;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \"â–º\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n');var c=/(^\\d{1,4}[\\.|\\\\/|-]\\d{1,2}[\\.|\\\\/|-]\\d{1,4})(\\s*(?:0?[1-9]:[0-5]|1(?=[012])\\d:[0-5])\\d\\s*[ap]m)?$/,p=/\\d{2}:\\d{2}:\\d{2} GMT-\\d{4}/,j=/\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}Z/,h=window.requestAnimationFrame||function(t){return t(),0},u={hoverPreviewEnabled:!1,hoverPreviewArrayCount:100,hoverPreviewFieldCount:5,animateOpen:!0,animateClose:!0,theme:null,useToJSON:!0,sortPropertiesBy:null},g=function(){function t(t,e,r,n){void 0===e&&(e=1),void 0===r&&(r=u),this.json=t,this.open=e,this.config=r,this.key=n,this._isOpen=null,void 0===this.config.hoverPreviewEnabled&&(this.config.hoverPreviewEnabled=u.hoverPreviewEnabled),void 0===this.config.hoverPreviewArrayCount&&(this.config.hoverPreviewArrayCount=u.hoverPreviewArrayCount),void 0===this.config.hoverPreviewFieldCount&&(this.config.hoverPreviewFieldCount=u.hoverPreviewFieldCount),void 0===this.config.useToJSON&&(this.config.useToJSON=u.useToJSON),\"\"===this.key&&(this.key='\"\"')}return Object.defineProperty(t.prototype,\"isOpen\",{get:function(){return null!==this._isOpen?this._isOpen:this.open>0},set:function(t){this._isOpen=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isDate\",{get:function(){return this.json instanceof Date||\"string\"===this.type&&(c.test(this.json)||j.test(this.json)||p.test(this.json))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isUrl\",{get:function(){return\"string\"===this.type&&0===this.json.indexOf(\"http\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isArray\",{get:function(){return Array.isArray(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isObject\",{get:function(){return s(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isEmptyObject\",{get:function(){return!this.keys.length&&!this.isArray},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isEmpty\",{get:function(){return this.isEmptyObject||this.keys&&!this.keys.length&&this.isArray},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"useToJSON\",{get:function(){return this.config.useToJSON&&\"stringifiable\"===this.type},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"hasKey\",{get:function(){return void 0!==this.key},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"constructorName\",{get:function(){return a(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"type\",{get:function(){return this.config.useToJSON&&this.json&&this.json.toJSON?\"stringifiable\":i(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"keys\",{get:function(){if(this.isObject){var t=Object.keys(this.json);return!this.isArray&&this.config.sortPropertiesBy?t.sort(this.config.sortPropertiesBy):t}return[]},enumerable:!0,configurable:!0}),t.prototype.toggleOpen=function(){this.isOpen=!this.isOpen,this.element&&(this.isOpen?this.appendChildren(this.config.animateOpen):this.removeChildren(this.config.animateClose),this.element.classList.toggle(l(\"open\")))},t.prototype.openAtDepth=function(t){void 0===t&&(t=1),t<0||(this.open=t,this.isOpen=0!==t,this.element&&(this.removeChildren(!1),0===t?this.element.classList.remove(l(\"open\")):(this.appendChildren(this.config.animateOpen),this.element.classList.add(l(\"open\")))))},t.prototype.getInlinepreview=function(){var t=this;if(this.isArray)return this.json.length>this.config.hoverPreviewArrayCount?\"Array[\"+this.json.length+\"]\":\"[\"+this.json.map(m).join(\", \")+\"]\";var e=this.keys,r=e.slice(0,this.config.hoverPreviewFieldCount).map((function(e){return e+\":\"+m(t.json[e])})),n=e.length>=this.config.hoverPreviewFieldCount?\"…\":\"\";return\"{\"+r.join(\", \")+n+\"}\"},t.prototype.render=function(){this.element=d(\"div\",\"row\");var t=this.isObject?d(\"a\",\"toggler-link\"):d(\"span\");if(this.isObject&&!this.useToJSON&&t.appendChild(d(\"span\",\"toggler\")),this.hasKey&&t.appendChild(d(\"span\",\"key\",this.key+\":\")),this.isObject&&!this.useToJSON){var e=d(\"span\",\"value\"),r=d(\"span\"),n=d(\"span\",\"constructor-name\",this.constructorName);if(r.appendChild(n),this.isArray){var o=d(\"span\");o.appendChild(d(\"span\",\"bracket\",\"[\")),o.appendChild(d(\"span\",\"number\",this.json.length)),o.appendChild(d(\"span\",\"bracket\",\"]\")),r.appendChild(o)}e.appendChild(r),t.appendChild(e)}else{(e=this.isUrl?d(\"a\"):d(\"span\")).classList.add(l(this.type)),this.isDate&&e.classList.add(l(\"date\")),this.isUrl&&(e.classList.add(l(\"url\")),e.setAttribute(\"href\",this.json));var i=f(this.type,this.json,this.useToJSON?this.json.toJSON():this.json);e.appendChild(document.createTextNode(i)),t.appendChild(e)}if(this.isObject&&this.config.hoverPreviewEnabled){var s=d(\"span\",\"preview-text\");s.appendChild(document.createTextNode(this.getInlinepreview())),t.appendChild(s)}var a=d(\"div\",\"children\");return this.isObject&&a.classList.add(l(\"object\")),this.isArray&&a.classList.add(l(\"array\")),this.isEmpty&&a.classList.add(l(\"empty\")),this.config&&this.config.theme&&this.element.classList.add(l(this.config.theme)),this.isOpen&&this.element.classList.add(l(\"open\")),this.element.appendChild(t),this.element.appendChild(a),this.isObject&&this.isOpen&&this.appendChildren(),this.isObject&&!this.useToJSON&&t.addEventListener(\"click\",this.toggleOpen.bind(this)),this.element},t.prototype.appendChildren=function(e){var r=this;void 0===e&&(e=!1);var n=this.element.querySelector(\"div.\"+l(\"children\"));if(n&&!this.isEmpty)if(e){var o=0,i=function(){var e=r.keys[o],s=new t(r.json[e],r.open-1,r.config,e);n.appendChild(s.render()),(o+=1)<r.keys.length&&(o>10?i():h(i))};h(i)}else this.keys.forEach((function(e){var o=new t(r.json[e],r.open-1,r.config,e);n.appendChild(o.render())}))},t.prototype.removeChildren=function(t){void 0===t&&(t=!1);var e=this.element.querySelector(\"div.\"+l(\"children\"));if(t){var r=0,n=function(){e&&e.children.length&&(e.removeChild(e.children[0]),(r+=1)>10?n():h(n))};h(n)}else e&&(e.innerHTML=\"\")},t}();r.default=g},\n", " \"1767172ffa\": function _(e,t,i,s,l){s();const n=e(\"tslib\"),o=e(\"@bokehjs/models/widgets/input_widget\"),a=n.__importStar(e(\"@bokehjs/styles/buttons.css\")),h=a,d=e(\"@bokehjs/core/dom\"),_=e(\"@bokehjs/core/enums\");class r extends o.InputWidgetView{constructor(){super(...arguments),this._downloadable=!1,this._embed=!1,this._prev_href=\"\",this._prev_download=\"\"}initialize(){super.initialize(),this.model.data&&this.model.filename&&(this._embed=!0)}connect_signals(){super.connect_signals(),this.connect(this.model.properties.button_type.change,(()=>this._update_button_style())),this.connect(this.model.properties.filename.change,(()=>this._update_download())),this.connect(this.model.properties._transfers.change,(()=>this._handle_click())),this.connect(this.model.properties.label.change,(()=>this._update_label())),this.connect(this.model.properties.disabled.change,(()=>this.set_disabled()))}render(){super.render(),this.group_el.style.display=\"flex\",this.group_el.style.alignItems=\"stretch\",this.anchor_el=document.createElement(\"a\"),this._update_button_style(),this._update_label(),this.model.disabled?(this.anchor_el.setAttribute(\"disabled\",\"\"),this._downloadable=!1):(this.anchor_el.removeAttribute(\"disabled\"),this._prev_download&&(this.anchor_el.download=this._prev_download),this._prev_href&&(this.anchor_el.href=this._prev_href),this.anchor_el.download&&this.anchor_el.download&&(this._downloadable=!0)),this._embed?this._make_link_downloadable():(this._click_listener=this._increment_clicks.bind(this),this.anchor_el.addEventListener(\"click\",this._click_listener)),this.group_el.appendChild(this.anchor_el),this.input_el=d.input({type:\"bk_btn, bk_btn_type\"}),this.input_el.addEventListener(\"change\",(()=>this.change_input()))}styles(){return[...super.styles(),a.default]}_increment_clicks(){this.model.clicks=this.model.clicks+1}_handle_click(){!this.model.auto&&this._downloadable||(this._make_link_downloadable(),!this._embed&&this.model.auto&&(this.anchor_el.removeEventListener(\"click\",this._click_listener),this.anchor_el.click(),this.anchor_el.removeAttribute(\"href\"),this.anchor_el.removeAttribute(\"download\"),this.anchor_el.addEventListener(\"click\",this._click_listener)),this._prev_href=this.anchor_el.getAttribute(\"href\"),this._prev_download=this.anchor_el.getAttribute(\"download\"))}_make_link_downloadable(){this._update_href(),this._update_download(),this.anchor_el.download&&this.anchor_el.href&&(this._downloadable=!0)}_update_href(){if(this.model.data){const e=function(e){const t=atob(e.split(\",\")[1]),i=e.split(\",\")[0].split(\":\")[1].split(\";\")[0],s=new ArrayBuffer(t.length),l=new Uint8Array(s);for(let e=0;e<t.length;e++)l[e]=t.charCodeAt(e);return new Blob([s],{type:i})}(this.model.data);this.anchor_el.href=URL.createObjectURL(e)}}_update_download(){this.model.filename&&(this.anchor_el.download=this.model.filename)}_update_label(){this.anchor_el.textContent=this.model.label}_update_button_style(){const e=h[`btn_${this.model.button_type}`];if(this.anchor_el.hasAttribute(\"class\")){const t=this.anchor_el.classList.item(1);t&&this.anchor_el.classList.replace(t,e)}else this.anchor_el.classList.add(h.btn),this.anchor_el.classList.add(e)}set_disabled(){this.model.disabled?this.anchor_el.setAttribute(\"disabled\",\"\"):this.anchor_el.removeAttribute(\"disabled\")}}i.FileDownloadView=r,r.__name__=\"FileDownloadView\";class c extends o.InputWidget{constructor(e){super(e)}static init_FileDownload(){this.prototype.default_view=r,this.define((({Boolean:e,Int:t,Nullable:i,String:s})=>({auto:[e,!1],clicks:[t,0],data:[i(s),null],label:[s,\"Download\"],filename:[i(s),null],button_type:[_.ButtonType,\"default\"],_transfers:[t,0]}))),this.override({title:\"\"})}}i.FileDownload=c,c.__name__=\"FileDownload\",c.__module__=\"panel.models.widgets\",c.init_FileDownload()},\n", " \"7b859fb3cf\": function _(e,t,i,a,n){a();const s=e(\"@bokehjs/models/widgets/markup\"),r=e(\"4c755983eb\");class l extends r.PanelMarkupView{render(){super.render(),this.markup_el.innerHTML=this.model.text,window.renderMathInElement&&window.renderMathInElement(this.el,{delimiters:[{left:\"$$\",right:\"$$\",display:!0},{left:\"\\\\[\",right:\"\\\\]\",display:!0},{left:\"$\",right:\"$\",display:!1},{left:\"\\\\(\",right:\"\\\\)\",display:!1}]})}}i.KaTeXView=l,l.__name__=\"KaTeXView\";class d extends s.Markup{constructor(e){super(e)}static init_KaTeX(){this.prototype.default_view=l}}i.KaTeX=d,d.__name__=\"KaTeX\",d.__module__=\"panel.models.katex\",d.init_KaTeX()},\n", " \"642aa56b24\": function _(o,e,t,i,a){i();const h=o(\"@bokehjs/core/view\"),n=o(\"@bokehjs/model\");class s extends h.View{initialize(){super.initialize(),this.model.pathname=window.location.pathname,this.model.search=window.location.search,this.model.hash=window.location.hash,this.model.href=window.location.href,this.model.hostname=window.location.hostname,this.model.protocol=window.location.protocol,this.model.port=window.location.port}connect_signals(){super.connect_signals(),this.connect(this.model.properties.pathname.change,(()=>this.update(\"pathname\"))),this.connect(this.model.properties.search.change,(()=>this.update(\"search\"))),this.connect(this.model.properties.hash.change,(()=>this.update(\"hash\"))),this.connect(this.model.properties.reload.change,(()=>this.update(\"reload\")))}update(o){this.model.reload&&\"reload\"!==o?(\"pathname\"==o&&(window.location.pathname=this.model.pathname),\"search\"==o&&(window.location.search=this.model.search),\"hash\"==o&&(window.location.hash=this.model.hash)):(window.history.pushState({},\"\",`${this.model.pathname}${this.model.search}${this.model.hash}`),this.model.href=window.location.href,\"reload\"===o&&window.location.reload())}}t.LocationView=s,s.__name__=\"LocationView\";class c extends n.Model{constructor(o){super(o)}static init_Location(){this.prototype.default_view=s,this.define((({Boolean:o,String:e})=>({href:[e,\"\"],hostname:[e,\"\"],pathname:[e,\"\"],protocol:[e,\"\"],port:[e,\"\"],search:[e,\"\"],hash:[e,\"\"],reload:[o,!1]})))}}t.Location=c,c.__name__=\"Location\",c.__module__=\"panel.models.location\",c.init_Location()},\n", " \"0c21036737\": function _(e,t,a,i,s){i();const h=e(\"@bokehjs/models/widgets/markup\"),_=e(\"4c755983eb\");class n extends _.PanelMarkupView{initialize(){super.initialize(),this._hub=window.MathJax.Hub,this._hub.Config({tex2jax:{inlineMath:[[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]]}})}render(){super.render(),this._hub&&(this.markup_el.innerHTML=this.model.text,this._hub.Queue([\"Typeset\",this._hub,this.markup_el]))}}a.MathJaxView=n,n.__name__=\"MathJaxView\";class u extends h.Markup{constructor(e){super(e)}static init_MathJax(){this.prototype.default_view=n}}a.MathJax=u,u.__name__=\"MathJax\",u.__module__=\"panel.models.mathjax\",u.init_MathJax()},\n", " \"84a772681d\": function _(e,t,i,s,n){s();const o=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"@bokehjs/core/dom\"),r=e(\"@bokehjs/models/sources/column_data_source\"),c=e(\"4c755983eb\"),h=[\"perspective-viewer-material\",\"perspective-viewer-material-dark\",\"perspective-viewer-material-dense\",\"perspective-viewer-material-dense-dark\",\"perspective-viewer-vaporwave\"];function p(e){return!h.includes(e)}function a(e){return\"perspective-viewer-\"+e}class u extends c.PanelHTMLBoxView{constructor(){super(...arguments),this._updating=!1,this._config_listener=null,this._event_listener=null,this._loaded=!1}connect_signals(){super.connect_signals(),this.connect(this.model.source.properties.data.change,(()=>this.setData())),this.connect(this.model.properties.toggle_config.change,(()=>{this.perspective_element.toggleConfig(),this.fix_layout()})),this.connect(this.model.properties.columns.change,(()=>{this.updateAttribute(\"columns\",this.model.columns,!0)})),this.connect(this.model.properties.computed_columns.change,(()=>{this.updateAttribute(\"computed-columns\",this.model.computed_columns,!0)})),this.connect(this.model.properties.column_pivots.change,(()=>{this.updateAttribute(\"column-pivots\",this.model.column_pivots,!0)})),this.connect(this.model.properties.row_pivots.change,(()=>{this.updateAttribute(\"row-pivots\",this.model.row_pivots,!0)})),this.connect(this.model.properties.aggregates.change,(()=>{this.updateAttribute(\"aggregates\",this.model.aggregates,!0)})),this.connect(this.model.properties.filters.change,(()=>{this.updateAttribute(\"filters\",this.model.filters,!0)})),this.connect(this.model.properties.sort.change,(()=>{this.updateAttribute(\"sort\",this.model.sort,!0)})),this.connect(this.model.properties.plugin.change,(()=>{this.updateAttribute(\"plugin\",this.model.plugin,!1)})),this.connect(this.model.properties.selectable.change,(()=>{this.updateAttribute(\"selectable\",this.model.selectable,!0)})),this.connect(this.model.properties.editable.change,(()=>{this.updateAttribute(\"editable\",this.model.editable,!0)})),this.connect(this.model.properties.theme.change,(()=>this.updateTheme())),null!=this.model.document&&(this._event_listener=e=>this.on_event(e),this.model.document.on_change(this._event_listener))}disconnect_signals(){null!=this._config_listener&&this.perspective_element.removeEventListener(\"perspective-config-update\",this._config_listener),this._config_listener=null,null!=this.model.document&&null!=this._event_listener&&this.model.document.remove_on_change(this._event_listener),this._event_listener=null,super.disconnect_signals()}render(){super.render(),this.worker=window.perspective.worker(),this.table=this.worker.table(this.model.schema),this.table.update(this.data);const e=l.div({class:\"pnx-perspective-viewer\",style:{zIndex:0}});c.set_size(e,this.model),e.innerHTML=this.getInnerHTML(),this.perspective_element=e.children[0],c.set_size(this.perspective_element,this.model),this.el.appendChild(e),this.perspective_element.load(this.table).then((()=>{this.update_config(),this._config_listener=()=>this.sync_config(),this.model.toggle_config&&this.perspective_element.toggleConfig(),this.perspective_element.addEventListener(\"perspective-config-update\",this._config_listener),this._loaded=!0}))}fix_layout(){this.update_layout(),this.compute_layout(),this.invalidate_layout()}sync_config(){if(this._updating)return;const e=this.perspective_element.save(),t={};for(const i in e){const s=i.replace(\"-\",\"_\"),n=e[i];void 0===n||\"plugin\"==s&&\"debug\"===n||(t[s]=n)}this._updating=!0,this.model.setv(t),this._updating=!1}update_config(){if(this._updating)return;const e=this.perspective_element.save();for(const t in e){const i=t.replace(\"-\",\"_\");let s=this.model.property(i).get_value();e[t]!==s&&(this._updating=!0,\"plugin\"!==i&&(s=JSON.stringify(s)),this.perspective_element.setAttribute(t,s),this._updating=!1)}}on_event(e){null!=(e=e.hint)&&null!=e.column_source&&e.column_source.id==this.model.source.id&&(void 0!==e.rollover?this.stream(e.data,e.rollover):void 0!==e.patches&&this.patch(e.patches))}get data(){const e={};for(const t of this.model.source.columns())e[t]=this.model.source.get_array(t);return e}stream(e,t){this._loaded&&(null==t?this.table.update(e):this.table.replace(this.data))}patch(e){this.table.replace(this.data)}getInnerHTML(){let e=\"<perspective-viewer style='height:100%;width:100%;'\";var t,i;return e+=(t=\"class\",null==(i=a(this.model.theme))?\"\":(\"string\"!=typeof i&&(i=JSON.stringify(i)),\" \"+t+\"='\"+i+\"'\")),e+=\"></perspective-viewer>\",e}setData(){this._loaded&&this.table.load(this.data)}updateAttribute(e,t,i){if(this._updating)return;t!=this.perspective_element.save()[e]&&(i&&(t=JSON.stringify(t)),this._updating=!0,this.perspective_element.setAttribute(e,t),this._updating=!1)}updateTheme(){let e=this.perspective_element.getAttribute(\"class\"),t=this.toNewClassAttribute(e,this.model.theme);this.perspective_element.setAttribute(\"class\",t)}toNewClassAttribute(e,t){let i=[];return null!=e&&(i=e.split(\" \").filter(p)),i.push(a(t)),i.join(\" \")}}i.PerspectiveView=u,u.__name__=\"PerspectiveView\";class d extends o.HTMLBox{constructor(e){super(e)}static init_Perspective(){this.prototype.default_view=u,this.define((({Any:e,Array:t,Boolean:i,Ref:s,Nullable:n,String:o})=>({aggregates:[e],column_pivots:[n(t(o))],columns:[t(o)],computed_columns:[n(t(o))],editable:[n(i)],filters:[n(t(e))],plugin:[o],plugin_config:[e],row_pivots:[n(t(o))],selectable:[n(i)],schema:[e,{}],toggle_config:[i,!0],sort:[n(t(t(o)))],source:[s(r.ColumnDataSource)],theme:[o]})))}}i.Perspective=d,d.__name__=\"Perspective\",d.__module__=\"panel.models.perspective\",d.init_Perspective()},\n", " \"2e8044c920\": function _(e,t,i,s,o){s();const l=e(\"@bokehjs/core/kinds\"),n=e(\"@bokehjs/core/dom\"),a=e(\"@bokehjs/models/widgets/widget\");function r(e){e.forEach((e=>e.style.borderStyle=\"inset\"))}function d(e){e.forEach((e=>e.style.borderStyle=\"outset\"))}class h extends a.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.value.change,(()=>this.render())),this.connect(this.model.properties.loop_policy.change,(()=>this.set_loop_state(this.model.loop_policy))),this.connect(this.model.properties.disabled.change,(()=>this.toggle_disable())),this.connect(this.model.properties.show_loop_controls.change,(()=>{this.model.show_loop_controls&&this.loop_state.parentNode!=this.groupEl?this.groupEl.appendChild(this.loop_state):this.model.show_loop_controls||this.loop_state.parentNode!=this.groupEl||this.groupEl.removeChild(this.loop_state)}))}toggle_disable(){this.sliderEl.disabled=this.model.disabled;for(const e of this.buttonEl.children){e.disabled=this.model.disabled}for(const e of this.loop_state.children)if(\"input\"==e.tagName){e.disabled=this.model.disabled}}get_height(){return 250}render(){if(null!=this.sliderEl)return this.sliderEl.min=String(this.model.start),this.sliderEl.max=String(this.model.end),void(this.sliderEl.value=String(this.model.value));super.render(),this.groupEl=n.div(),this.groupEl.style.display=\"flex\",this.groupEl.style.flexDirection=\"column\",this.groupEl.style.alignItems=\"center\",this.sliderEl=document.createElement(\"input\"),this.sliderEl.style.width=\"100%\",this.sliderEl.setAttribute(\"type\",\"range\"),this.sliderEl.value=String(this.model.value),this.sliderEl.min=String(this.model.start),this.sliderEl.max=String(this.model.end),this.sliderEl.onchange=e=>this.set_frame(parseInt(e.target.value));const e=n.div();this.buttonEl=e,e.style.cssText=\"margin: 0 auto; display: flex; padding: 5px; align-items: stretch; width: 100%;\";const t=\"text-align: center; min-width: 20px; flex-grow: 1; margin: 2px\",i=\"text-align: center; min-width: 40px; flex-grow: 2; margin: 2px\",s=document.createElement(\"button\");s.style.cssText=t,s.appendChild(document.createTextNode(\"–\")),s.onclick=()=>this.slower(),e.appendChild(s);const o=document.createElement(\"button\");o.style.cssText=i,o.appendChild(document.createTextNode(\"âšâ—€â—€\")),o.onclick=()=>this.first_frame(),e.appendChild(o);const l=document.createElement(\"button\");l.style.cssText=i,l.appendChild(document.createTextNode(\"âšâ—€\")),l.onclick=()=>this.previous_frame(),e.appendChild(l);const a=document.createElement(\"button\");a.style.cssText=i,a.appendChild(document.createTextNode(\"â—€\")),a.onclick=()=>this.reverse_animation(),e.appendChild(a);const h=document.createElement(\"button\");h.style.cssText=i,h.appendChild(document.createTextNode(\"âšâš\")),h.onclick=()=>this.pause_animation(),e.appendChild(h);const c=document.createElement(\"button\");c.style.cssText=i,c.appendChild(document.createTextNode(\"â–¶\")),c.onclick=()=>this.play_animation(),e.appendChild(c);const p=document.createElement(\"button\");p.style.cssText=i,p.appendChild(document.createTextNode(\"â–¶âš\")),p.onclick=()=>this.next_frame(),e.appendChild(p);const m=document.createElement(\"button\");m.style.cssText=i,m.appendChild(document.createTextNode(\"▶▶âš\")),m.onclick=()=>this.last_frame(),e.appendChild(m);const _=document.createElement(\"button\");_.style.cssText=t,_.appendChild(document.createTextNode(\"+\")),_.onclick=()=>this.faster(),e.appendChild(_),this._toggle_reverse=()=>{d([h,c]),r([a])},this._toogle_pause=()=>{d([a,c]),r([h])},this._toggle_play=()=>{d([a,h]),r([c])},this.loop_state=document.createElement(\"form\"),this.loop_state.style.cssText=\"margin: 0 auto; display: table\";const u=document.createElement(\"input\");u.type=\"radio\",u.value=\"once\",u.name=\"state\";const g=document.createElement(\"label\");g.innerHTML=\"Once\",g.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\";const f=document.createElement(\"input\");f.setAttribute(\"type\",\"radio\"),f.setAttribute(\"value\",\"loop\"),f.setAttribute(\"name\",\"state\");const v=document.createElement(\"label\");v.innerHTML=\"Loop\",v.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\";const y=document.createElement(\"input\");y.setAttribute(\"type\",\"radio\"),y.setAttribute(\"value\",\"reflect\"),y.setAttribute(\"name\",\"state\");const x=document.createElement(\"label\");x.innerHTML=\"Reflect\",x.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\",\"once\"==this.model.loop_policy?u.checked=!0:\"loop\"==this.model.loop_policy?f.checked=!0:y.checked=!0,this.loop_state.appendChild(u),this.loop_state.appendChild(g),this.loop_state.appendChild(f),this.loop_state.appendChild(v),this.loop_state.appendChild(y),this.loop_state.appendChild(x),this.groupEl.appendChild(this.sliderEl),this.groupEl.appendChild(e),this.model.show_loop_controls&&this.groupEl.appendChild(this.loop_state),this.toggle_disable(),this.el.appendChild(this.groupEl)}set_frame(e){this.model.value!=e&&(this.model.value=e),this.sliderEl.value!=String(e)&&(this.sliderEl.value=String(e))}get_loop_state(){for(var e=this.loop_state.state,t=0;t<e.length;t++){var i=e[t];if(i.checked)return i.value}return\"once\"}set_loop_state(e){for(var t=this.loop_state.state,i=0;i<t.length;i++){var s=t[i];s.value==e&&(s.checked=!0)}}next_frame(){this.set_frame(Math.min(this.model.end,this.model.value+this.model.step))}previous_frame(){this.set_frame(Math.max(this.model.start,this.model.value-this.model.step))}first_frame(){this.set_frame(this.model.start)}last_frame(){this.set_frame(this.model.end)}slower(){this.model.interval=Math.round(this.model.interval/.7),this.model.direction>0?this.play_animation():this.model.direction<0&&this.reverse_animation()}faster(){this.model.interval=Math.round(.7*this.model.interval),this.model.direction>0?this.play_animation():this.model.direction<0&&this.reverse_animation()}anim_step_forward(){if(this.model.value<this.model.end)this.next_frame();else{var e=this.get_loop_state();\"loop\"==e?this.first_frame():\"reflect\"==e?(this.last_frame(),this.reverse_animation()):(this.pause_animation(),this.last_frame())}}anim_step_reverse(){if(this.model.value>this.model.start)this.previous_frame();else{var e=this.get_loop_state();\"loop\"==e?this.last_frame():\"reflect\"==e?(this.first_frame(),this.play_animation()):(this.pause_animation(),this.first_frame())}}pause_animation(){this._toogle_pause(),this.model.direction=0,this.timer&&(clearInterval(this.timer),this.timer=null)}play_animation(){this.pause_animation(),this._toggle_play(),this.model.direction=1,this.timer||(this.timer=setInterval((()=>this.anim_step_forward()),this.model.interval))}reverse_animation(){this.pause_animation(),this._toggle_reverse(),this.model.direction=-1,this.timer||(this.timer=setInterval((()=>this.anim_step_reverse()),this.model.interval))}}i.PlayerView=h,h.__name__=\"PlayerView\",i.LoopPolicy=l.Enum(\"once\",\"loop\",\"reflect\");class c extends a.Widget{constructor(e){super(e)}static init_Player(){this.prototype.default_view=h,this.define((({Boolean:e,Int:t})=>({direction:[t,0],interval:[t,500],start:[t,0],end:[t,10],step:[t,1],loop_policy:[i.LoopPolicy,\"once\"],value:[t,0],show_loop_controls:[e,!0]}))),this.override({width:400})}}i.Player=c,c.__name__=\"Player\",c.__module__=\"panel.models.widgets\",c.init_Player()},\n", " \"c23bb1717d\": function _(t,e,o,r,l){r();const i=t(\"@bokehjs/core/dom\"),s=t(\"@bokehjs/core/util/object\"),a=t(\"@bokehjs/core/util/eq\"),n=t(\"@bokehjs/models/layouts/html_box\"),p=t(\"@bokehjs/models/sources/column_data_source\"),_=t(\"99a25e6992\"),h=t(\"990b5dd5c7\"),u=t(\"4c755983eb\"),d=(t,e,o)=>{let r=Array.isArray(e)?[]:{};if(\"click\"===o||\"hover\"===o||\"selected\"===o){const o=[];if(null==e)return null;const l=t.data;for(let t=0;t<e.points.length;t++){const r=e.points[t];let i={};for(let t in r){const e=r[t];!r.hasOwnProperty(t)||Array.isArray(e)||h.isPlainObject(e)||(i[t]=e)}null!=r&&(r.hasOwnProperty(\"curveNumber\")&&r.hasOwnProperty(\"pointNumber\")&&l[r.curveNumber].hasOwnProperty(\"customdata\")&&(i.customdata=l[r.curveNumber].customdata[r.pointNumber]),r.hasOwnProperty(\"pointNumbers\")&&(i.pointNumbers=r.pointNumbers)),o[t]=i}r.points=o}else if(\"relayout\"===o||\"restyle\"===o)for(let t in e)e.hasOwnProperty(t)&&(r[t]=e[t]);return e.hasOwnProperty(\"range\")&&(r.range=e.range),e.hasOwnProperty(\"lassoPoints\")&&(r.lassoPoints=e.lassoPoints),r};class c extends u.PanelHTMLBoxView{constructor(){super(...arguments),this._settingViewport=!1,this._plotInitialized=!1,this._reacting=!1,this._relayouting=!1,this._end_relayouting=_.debounce((()=>{this._relayouting=!1}),2e3,!1)}connect_signals(){super.connect_signals();const{data:t,data_sources:e,layout:o,relayout:r,restyle:l}=this.model.properties;this.on_change([t,e,o],(()=>{const t=this.model._render_count;setTimeout((()=>{this.model._render_count===t&&(this.model._render_count+=1)}),250)})),this.on_change([r],(()=>{null!=this.model.relayout&&(window.Plotly.relayout(this._layout_wrapper,this.model.relayout),this.model.relayout=null)})),this.on_change([l],(()=>{null!=this.model.restyle&&(window.Plotly.restyle(this._layout_wrapper,this.model.restyle.data,this.model.restyle.traces),this.model.restyle=null)})),this.connect(this.model.properties.viewport_update_policy.change,(()=>{this._updateSetViewportFunction()})),this.connect(this.model.properties.viewport_update_throttle.change,(()=>{this._updateSetViewportFunction()})),this.connect(this.model.properties._render_count.change,(()=>this.plot())),this.connect(this.model.properties.viewport.change,(()=>this._updateViewportFromProperty()))}render(){super.render(),this._layout_wrapper=i.div({style:\"height: 100%; width: 100%\"}),this.el.appendChild(this._layout_wrapper),window.Plotly&&this.plot()}_trace_data(){const t=[];for(let e=0;e<this.model.data.length;e++)t.push(this._get_trace(e,!1));return t}_layout_data(){const t=h.deepCopy(this.model.layout);if(this._relayouting){const{layout:e}=this._layout_wrapper;Object.keys(e).reduce(((e,o)=>{\"axis\"===o.slice(1,5)&&\"range\"in e&&(t[o].range=e.range)}),{})}return t}_install_callbacks(){this._layout_wrapper.on(\"plotly_relayout\",(t=>{!0!==t._update_from_property&&(this.model.relayout_data=d(this._layout_wrapper,t,\"relayout\"),this._updateViewportProperty(),this._end_relayouting())})),this._layout_wrapper.on(\"plotly_relayouting\",(()=>{\"mouseup\"!==this.model.viewport_update_policy&&(this._relayouting=!0,this._updateViewportProperty())})),this._layout_wrapper.on(\"plotly_restyle\",(t=>{this.model.restyle_data=d(this._layout_wrapper,t,\"restyle\"),this._updateViewportProperty()})),this._layout_wrapper.on(\"plotly_click\",(t=>{this.model.click_data=d(this._layout_wrapper,t,\"click\")})),this._layout_wrapper.on(\"plotly_hover\",(t=>{this.model.hover_data=d(this._layout_wrapper,t,\"hover\")})),this._layout_wrapper.on(\"plotly_selected\",(t=>{this.model.selected_data=d(this._layout_wrapper,t,\"selected\")})),this._layout_wrapper.on(\"plotly_clickannotation\",(t=>{delete t.event,delete t.fullAnnotation,this.model.clickannotation_data=t})),this._layout_wrapper.on(\"plotly_deselect\",(()=>{this.model.selected_data=null})),this._layout_wrapper.on(\"plotly_unhover\",(()=>{this.model.hover_data=null}))}plot(){if(!window.Plotly)return;const t=this._trace_data(),e=this._layout_data();this._reacting=!0,window.Plotly.react(this._layout_wrapper,t,e,this.model.config).then((()=>{var t,e;this._updateSetViewportFunction(),this._updateViewportProperty(),this._plotInitialized||this._install_callbacks(),this._plotInitialized=!0,this._reacting=!1,t=this._layout_wrapper,(e=window.getComputedStyle(t).display)&&\"none\"!==e&&window.Plotly.Plots.resize(this._layout_wrapper)}))}_get_trace(t,e){const o=s.clone(this.model.data[t]),r=this.model.data_sources[t];for(const t of r.columns()){let l=r.get_array(t)[0];if(null!=l.shape&&l.shape.length>1){const t=[],e=l.shape;for(let o=0;o<e[0];o++)t.push(l.slice(o*e[1],(o+1)*e[1]));l=t}let i=t.split(\".\"),s=i[i.length-1],a=o;for(let t of i.slice(0,-1))a=a[t];e&&1==i.length?a[s]=[l]:a[s]=l}return o}_updateViewportFromProperty(){if(!window.Plotly||this._settingViewport||this._reacting||!this.model.viewport)return;const t=this._layout_wrapper._fullLayout;Object.keys(this.model.viewport).reduce(((e,o)=>{if(a.isEqual(h.get(t,o),e))return!0;{let t=h.deepCopy(this.model.viewport);return t._update_from_property=!0,window.Plotly.relayout(this.el,t),!1}}),{})}_updateViewportProperty(){const t=this._layout_wrapper._fullLayout;let e={};for(let o in t){if(!t.hasOwnProperty(o))continue;let r=o.slice(0,5);\"xaxis\"!==r&&\"yaxis\"!==r||(e[o+\".range\"]=h.deepCopy(t[o].range))}a.isEqual(e,this.model.viewport)||this._setViewport(e)}_updateSetViewportFunction(){\"continuous\"===this.model.viewport_update_policy||\"mouseup\"===this.model.viewport_update_policy?this._setViewport=t=>{this._settingViewport||(this._settingViewport=!0,this.model.viewport=t,this._settingViewport=!1)}:this._setViewport=h.throttle((t=>{this._settingViewport||(this._settingViewport=!0,this.model.viewport=t,this._settingViewport=!1)}),this.model.viewport_update_throttle)}}o.PlotlyPlotView=c,c.__name__=\"PlotlyPlotView\";class y extends n.HTMLBox{constructor(t){super(t)}static init_PlotlyPlot(){this.prototype.default_view=c,this.define((({Array:t,Any:e,Ref:o,String:r,Nullable:l,Number:i})=>({data:[t(e),[]],layout:[e,{}],config:[e,{}],data_sources:[t(o(p.ColumnDataSource)),[]],relayout:[l(e),{}],restyle:[l(e),{}],relayout_data:[e,{}],restyle_data:[t(e),[]],click_data:[e,{}],hover_data:[e,{}],clickannotation_data:[e,{}],selected_data:[e,{}],viewport:[e,{}],viewport_update_policy:[r,\"mouseup\"],viewport_update_throttle:[i,200],_render_count:[i,0]})))}}o.PlotlyPlot=y,y.__name__=\"PlotlyPlot\",y.__module__=\"panel.models.plotly\",y.init_PlotlyPlot()},\n", " \"99a25e6992\": function _(n,l,u,t,e){function o(n,l,u){var t,e,o,a,r;function i(){var c=Date.now()-a;c<l&&c>=0?t=setTimeout(i,l-c):(t=null,u||(r=n.apply(o,e),o=e=null))}null==l&&(l=100);var c=function(){o=this,e=arguments,a=Date.now();var c=u&&!t;return t||(t=setTimeout(i,l)),c&&(r=n.apply(o,e),o=e=null),r};return c.clear=function(){t&&(clearTimeout(t),t=null)},c.flush=function(){t&&(r=n.apply(o,e),o=e=null,clearTimeout(t),t=null)},c}o.debounce=o,l.exports=o},\n", " \"990b5dd5c7\": function _(t,n,r,e,o){e();r.get=(t,n,r)=>{const e=r=>String.prototype.split.call(n,r).filter(Boolean).reduce(((t,n)=>null!=t?t[n]:t),t),o=e(/[,[\\]]+?/)||e(/[,[\\].]+?/);return void 0===o||o===t?r:o},r.throttle=function(t,n){var r=0;return function(){var e=Number(new Date);e-r>=n&&(t(),r=e)}},r.deepCopy=function t(n){var r;if(null==n||\"object\"!=typeof n)return n;if(n instanceof Array){r=[];for(var e=0,o=n.length;e<o;e++)r[e]=t(n[e]);return r}if(n instanceof Object){const r={};for(const e in n){const o=e;n.hasOwnProperty(o)&&(r[o]=t(n[o]))}return r}throw new Error(\"Unable to copy obj! Its type isn't supported.\")},r.isPlainObject=function(t){return\"[object Object]\"===Object.prototype.toString.call(t)}},\n", " \"9f787650b9\": function _(e,s,t,i,o){i();const r=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),h=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"4c755983eb\");class n extends h.HTMLBoxView{connect_signals(){super.connect_signals();const e=()=>{this.render(),this.root.compute_layout()};this.connect(this.model.properties.height.change,e),this.connect(this.model.properties.width.change,e),this.connect(this.model.properties.height_policy.change,e),this.connect(this.model.properties.width_policy.change,e),this.connect(this.model.properties.sizing_mode.change,e),this.connect(this.model.properties.active.change,(()=>this.setCSS())),this.connect(this.model.properties.bar_color.change,(()=>this.setCSS())),this.connect(this.model.properties.css_classes.change,(()=>this.setCSS())),this.connect(this.model.properties.value.change,(()=>this.setValue())),this.connect(this.model.properties.max.change,(()=>this.setMax()))}render(){super.render();const e=Object.assign(Object.assign({},this.model.style),{display:\"inline-block\"});this.progressEl=document.createElement(\"progress\"),this.setValue(),this.setMax(),l.set_size(this.progressEl,this.model),this.setCSS();for(const s in e)this.progressEl.style.setProperty(s,e[s]);this.el.appendChild(this.progressEl)}setCSS(){let e=this.model.css_classes.join(\" \")+\" \"+this.model.bar_color;this.model.active&&(e+=\" active\"),this.progressEl.className=e}setValue(){null!=this.model.value&&(this.progressEl.value=this.model.value)}setMax(){null!=this.model.max&&(this.progressEl.max=this.model.max)}_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new l.CachedVariadicBox(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}}t.ProgressView=n,n.__name__=\"ProgressView\";class c extends h.HTMLBox{constructor(e){super(e)}static init_Progress(){this.prototype.default_view=n,this.define({active:[r.Boolean,!0],bar_color:[r.String,\"primary\"],style:[r.Any,{}],max:[r.Number,100],value:[r.Any,null]})}}t.Progress=c,c.__name__=\"Progress\",c.__module__=\"panel.models.widgets\",c.init_Progress()},\n", " \"d536149aaa\": function _(e,t,n,s,i){s();const o=e(\"6f11f2ef27\"),l=e(\"4c02a9b43f\"),r=e(\"b3f51db71c\"),c=e(\"@bokehjs/core/build_views\"),a=e(\"@bokehjs/core/util/types\"),h=e(\"@bokehjs/models/layouts/html_box\"),d=e(\"@bokehjs/core/dom\"),_=e(\"@bokehjs/core/util/color\"),u=e(\"f1971f81bf\"),m=e(\"3329d4aa5b\"),p=e(\"2839081043\"),f=e(\"4c755983eb\");function v(e,t,n){const s={};for(const e of n)s[`{${e}}`]=\"(.*)\";const i=[];let o=\"^\"+(e.replace(/[-\\/\\\\^$*+?.()|[\\]]/g,\"\\\\$&\")+\"$\");let l,r,c;for(const t in s)if(r=e.indexOf(t),r>-1){for(o=o.replace(t,s[t]),c={index:r,token:t},l=0;l<i.length&&i[l].index<r;l++);l<i.length?i.splice(l,0,c):i.push(c)}o=o.replace(/\\{[^{}]+\\}/g,\".*\");var a=new RegExp(o).exec(t);let h=null;if(a)for(h={},l=0;l<i.length;l++)h[i[l].token.slice(1,-1)]=a[l+1];return h}class g extends f.PanelHTMLBoxView{constructor(){super(...arguments),this._parent=null,this._changing=!1,this._event_listeners={},this._mutation_observers=[],this._script_fns={},this._state={}}initialize(){super.initialize(),this.html=p.htmlDecode(this.model.html)||this.model.html}_recursive_connect(e,t,n){for(const s in e.properties){let i;i=n.length?`${n}.${s}`:s;const o=e[s];null!=o.properties&&this._recursive_connect(o,!0,i),this.connect(e.properties[s].change,(()=>{if(t)for(const t in this.model.children)if(this.model.children[t]==s){let n=e[s];return a.isArray(n)||(n=[n]),this._render_node(t,n),void this.invalidate_layout()}this._changing||(this._update(i),this.invalidate_layout())}))}}connect_signals(){super.connect_signals(),this.connect(this.model.properties.children.change,(async()=>{this.html=p.htmlDecode(this.model.html)||this.model.html,await this.rebuild(),this.invalidate_layout()})),this._recursive_connect(this.model.data,!0,\"\"),this.connect(this.model.properties.events.change,(()=>{this._remove_event_listeners(),this._setup_event_listeners()})),this.connect_scripts()}connect_scripts(){const e=this.model.data.id;for(let t in this.model.scripts){const n=this.model.scripts[t];let s,i=this.model.data;if(t.indexOf(\".\")>=0){const e=t.split(\".\");s=e[e.length-1];for(const t of e.slice(0,-1))i=i[t]}else s=t;for(const o of n){const n=p.htmlDecode(o)||o,l=this._render_script(n,e);this._script_fns[t]=l;const r=i.properties[s];null!=r&&this.connect(r.change,(()=>{this._changing||this.run_script(t)}))}}}run_script(e,t=!1){const n=this._script_fns[e];if(void 0===n)return void(t||console.log(`Script '${e}' could not be found.`));const s={get_records:(e,t)=>this.get_records(e,t)};for(const e in this._script_fns)s[e]=()=>this.run_script(e);return n(this.model,this.model.data,this._state,this,(e=>this.run_script(e)),s)}get_records(e,t=!0){return u.dict_to_records(this.model.data[e],t)}disconnect_signals(){super.disconnect_signals(),this._remove_event_listeners(),this._remove_mutation_observers(),this.run_script(\"remove\",!0)}get child_models(){const e=[];for(const t in this.model.children)for(const n of this.model.children[t])\"string\"!=typeof n&&e.push(n);return e}async build_child_views(){await c.build_views(this._child_views,this.child_models,{parent:null})}compute_layout(){this.root!=this?super.compute_layout():(this.update_position(),this.after_layout(),this.notify_finished())}after_layout(){for(const e of this.child_views)e.after_layout();this.run_script(\"after_layout\",!0),this._has_finished=!0}update_layout(){for(const e of this.child_views)this._align_view(e),e.compute_viewport(),e.update_layout(),e.compute_layout();this.root!=this&&this._update_layout()}_align_view(e){const{align:t}=e.model;let n,s;a.isArray(t)?[n,s]=t:n=s=t,\"center\"===n?(e.el.style.marginLeft=\"auto\",e.el.style.marginRight=\"auto\"):\"end\"===n&&(e.el.style.marginLeft=\"auto\"),\"center\"===s?(e.el.style.marginTop=\"auto\",e.el.style.marginBottom=\"auto\"):\"end\"===s&&(e.el.style.marginTop=\"auto\")}render(){d.empty(this.el);const{background:e}=this.model;this.el.style.backgroundColor=null!=e?_.color2css(e):\"\",d.classes(this.el).clear().add(...this.css_classes()),this._update(),this._render_children(),this._setup_mutation_observers(),this._setup_event_listeners(),this.run_script(\"render\",!0)}_send_event(e,t,n){let s=m.serializeEvent(n);s.type=t,this.model.trigger_event(new p.DOMEvent(e,s))}_render_child(e,t){const n=this._child_views.get(e);null==n?t.innerHTML=e:(n._parent=this,n.renderTo(t))}resize_layout(){null!=this._parent&&this._parent.resize_layout(),this.root!=this&&super.resize_layout()}invalidate_layout(){null!=this._parent&&this._parent.invalidate_layout(),this.root!=this&&super.invalidate_layout()}update_position(){if(this.root!=this)return void super.update_position();this.el.style.display=this.model.visible?\"block\":\"none\",f.set_size(this.el,this.model);let{margin:e}=this.model,t=null;if(null==e)this.el.style.margin=\"\";else{if(a.isNumber(e))t={top:e,right:e,bottom:e,left:e};else if(2==e.length){const[n,s]=e;t={top:n,right:s,bottom:n,left:s}}else{const[n,s,i,o]=e;t={top:n,right:s,bottom:i,left:o}}const{top:n,right:s,bottom:i,left:o}=t;this.el.style.padding=`${n}px ${s}px ${i}px ${o}px`}for(const e of this.child_views)e.update_position()}_render_node(e,t){const n=this.model.data.id;if(this.model.looped.indexOf(e)>-1)for(let s=0;s<t.length;s++){let i=document.getElementById(`${e}-${s}-${n}`);null!=i?this._render_child(t[s],i):console.warn(`DOM node '${e}-${s}-${n}' could not be found. Cannot render children.`)}else{let s=document.getElementById(`${e}-${n}`);if(null==s)return void console.warn(`DOM node '${e}-${n}' could not be found. Cannot render children.`);for(const e of t)this._render_child(e,s)}}_render_children(){for(const e in this.model.children){let t=this.model.children[e];\"string\"==typeof t&&(t=this.model.data[t],a.isArray(t)||(t=[t])),this._render_node(e,t)}}_render_html(e,t={}){let n=e,s=\"\";const i=[];for(const e in this.model.callbacks)for(const t of this.model.callbacks[e]){const[o,l]=t;let r;if(n=n.replace(\"${\"+l,\"$--{\"+l),l.startsWith(\"script(\")){const e=l.replace(\"('\",\"_\").replace(\"')\",\"\").replace('(\"',\"_\").replace('\")',\"\").replace(\"-\",\"_\"),t=e.replace(\"script_\",\"\");n=n.replace(l,e),r=`\\n const ${e} = (event) => {\\n view._state.event = event\\n view.run_script(\"${t}\")\\n delete view._state.event\\n }\\n `}else r=`\\n const ${l} = (event) => {\\n view._send_event(\"${e}\", \"${o}\", event)\\n }\\n `;i.indexOf(l)>-1||(i.push(l),s+=r)}return n=n.replaceAll(\"${model.\",\"$-{model.\").replaceAll(\"${\",\"${data.\").replaceAll(\"$-{model.\",\"${model.\").replaceAll(\"$--{\",\"${\"),new Function(\"view, model, data, state, html, useCallback\",s+\"return html`\"+n+\"`;\")(this,this.model,this.model.data,t,r.html,l.useCallback)}_render_script(e,t){const n=[];for(const s of this.model.nodes){if(s in this.model.children&&\"string\"!=typeof this.model.children[s])continue;const i=s.replace(\"-\",\"_\");if(-1===e.indexOf(i))continue;const o=`\\n const ${i} = document.getElementById('${s}-${t}')\\n if (${i} == null) {\\n console.warn(\"DOM node '${s}' could not be found. Cannot execute callback.\")\\n return\\n }\\n `;n.push(o)}return n.push(\"\\n if (state.event !== undefined) {\\n const event = state.event\\n }\\n \"),n.push(e),new Function(\"model, data, state, view, script, self\",n.join(\"\\n\"))}_remove_mutation_observers(){for(const e of this._mutation_observers)e.disconnect();this._mutation_observers=[]}_setup_mutation_observers(){const e=this.model.data.id;for(const t in this.model.attrs){const n=document.getElementById(`${t}-${e}`);if(null==n){console.warn(`DOM node '${t}-${e}' could not be found. Cannot set up MutationObserver.`);continue}const s=new MutationObserver((()=>{this._update_model(n,t)}));s.observe(n,{attributes:!0}),this._mutation_observers.push(s)}}_remove_event_listeners(){const e=this.model.data.id;for(const t in this._event_listeners){const n=document.getElementById(`${t}-${e}`);if(null!=n)for(const e in this._event_listeners[t]){const s=this._event_listeners[t][e];n.removeEventListener(e,s)}}this._event_listeners={}}_setup_event_listeners(){const e=this.model.data.id;for(const t in this.model.events){const n=document.getElementById(`${t}-${e}`);if(null==n){console.warn(`DOM node '${t}-${e}' could not be found. Cannot subscribe to DOM events.`);continue}const s=this.model.events[t];for(const e in s){const i=i=>{this._send_event(t,e,i),t in this.model.attrs&&s[e]&&this._update_model(n,t)};n.addEventListener(e,i),t in this._event_listeners||(this._event_listeners[t]={}),this._event_listeners[t][e]=i}}}_update(e=null){if(null==e||this.html.indexOf(`\\${${e}}`)>-1){const e=this._render_html(this.html);try{this._changing=!0,o.render(e,this.el)}finally{this._changing=!1}}}_update_model(e,t){if(this._changing)return;const n={};for(const s of this.model.attrs[t]){const[i,o,l]=s;let r=\"children\"===i?e.innerHTML:e[i];if(1===o.length&&`{${o[0]}}`===l)n[o[0]]=r;else if(\"string\"==typeof r)if(r=v(l,r,o),null==r)console.warn(`Could not resolve parameters in ${t} element ${i} attribute value ${r}.`);else for(const e in r)void 0===r[e]?console.warn(`Could not resolve ${e} in ${t} element ${i} attribute value ${r}.`):n[e]=r[e]}try{this._changing=!0,this.model.data.setv(function(e){const t={};for(const n in e){let s=e[n];\"string\"!=typeof s?s=s:\"\"===s||\"NaN\"!==s&&isNaN(Number(s))?\"false\"!==s&&\"true\"!==s||(s=\"true\"===s):s=Number(s),t[n]=s}return t}(n))}catch(e){console.log(\"Could not serialize\",n)}finally{this._changing=!1}}}n.ReactiveHTMLView=g,g.__name__=\"ReactiveHTMLView\";class $ extends h.HTMLBox{constructor(e){super(e)}static init_ReactiveHTML(){this.prototype.default_view=g,this.define((({Array:e,Any:t,String:n})=>({attrs:[t,{}],callbacks:[t,{}],children:[t,{}],data:[t],events:[t,{}],html:[n,\"\"],looped:[e(n),[]],nodes:[e(n),[]],scripts:[t,{}]})))}}n.ReactiveHTML=$,$.__name__=\"ReactiveHTML\",$.__module__=\"panel.models.reactive_html\",$.init_ReactiveHTML()},\n", " \"3b85956787\": function _(e,t,s,i,n){i();const l=e(\"tslib\"),o=e(\"@bokehjs/core/dom\"),c=e(\"@bokehjs/core/util/types\"),r=e(\"@bokehjs/models/widgets/input_widget\"),h=l.__importStar(e(\"@bokehjs/styles/widgets/inputs.css\"));class d extends r.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.value.change,(()=>this.render_selection())),this.connect(this.model.properties.options.change,(()=>this.render())),this.connect(this.model.properties.name.change,(()=>this.render())),this.connect(this.model.properties.title.change,(()=>this.render())),this.connect(this.model.properties.size.change,(()=>this.render())),this.connect(this.model.properties.disabled.change,(()=>this.render()))}render(){super.render();const e=this.model.options.map((e=>{let t,s;return c.isString(e)?t=s=e:[t,s]=e,o.option({value:t},s)}));this.select_el=o.select({multiple:!1,class:h.input,name:this.model.name,disabled:this.model.disabled},e),this.select_el.style.backgroundImage=\"none\",this.select_el.addEventListener(\"change\",(()=>this.change_input())),this.group_el.appendChild(this.select_el),this.render_selection()}render_selection(){const e=this.model.value;for(const t of this.el.querySelectorAll(\"option\"))t.value===e&&(t.selected=!0);this.select_el.size=this.model.size}change_input(){const e=null!=this.el.querySelector(\"select:focus\");let t=null;for(const e of this.el.querySelectorAll(\"option\"))if(e.selected){t=e.value;break}this.model.value=t,super.change_input(),e&&this.select_el.focus()}}s.SingleSelectView=d,d.__name__=\"SingleSelectView\";class a extends r.InputWidget{constructor(e){super(e)}static init_SingleSelect(){this.prototype.default_view=d,this.define((({Any:e,Array:t,Int:s,String:i})=>({value:[i,\"\"],options:[t(e),[]],size:[s,4]})))}}s.SingleSelect=a,a.__name__=\"SingleSelect\",a.__module__=\"panel.models.widgets\",a.init_SingleSelect()},\n", " \"aaa48703af\": function _(t,e,i,o,n){o();const s=t(\"tslib\").__importStar(t(\"@bokehjs/core/properties\")),r=t(\"@bokehjs/models/layouts/html_box\"),h=\"Click to START the speech recognition.\",{webkitSpeechRecognition:a}=window,{webkitSpeechGrammarList:l}=window;class c extends r.HTMLBoxView{initialize(){var t,e;super.initialize(),this.recognition=new a,this.recognition.lang=this.model.lang,this.recognition.continuous=this.model.continuous,this.recognition.interimResults=this.model.interim_results,this.recognition.maxAlternatives=this.model.max_alternatives,this.recognition.serviceURI=this.model.service_uri,this.setGrammars(),this.recognition.onresult=t=>{this.model.results=function(t){const e=[];for(let o of t){let t=[],n={is_final:o.isFinal,alternatives:t};for(let e=0;e<o.length;e++){let n={confidence:(i=o[e].confidence,Math.round(100*(i+Number.EPSILON))/100),transcript:o[e].transcript};t.push(n)}n.alternatives=t,e.push(n)}var i;return e}(t.results)},this.recognition.onerror=t=>{console.log(\"SpeechToText Error\"),console.log(t)},this.recognition.onnomatch=t=>{console.log(\"SpeechToText No Match\"),console.log(t)},this.recognition.onaudiostart=()=>this.model.audio_started=!0,this.recognition.onaudioend=()=>this.model.audio_started=!1,this.recognition.onsoundstart=()=>this.model.sound_started=!0,this.recognition.onsoundend=()=>this.model.sound_started=!1,this.recognition.onspeechstart=()=>this.model.speech_started=!0,this.recognition.onspeechend=()=>this.model.speech_started=!1,this.recognition.onstart=()=>{this.buttonEl.onclick=()=>{this.recognition.stop()},this.buttonEl.innerHTML=this.iconStarted(),this.buttonEl.setAttribute(\"title\",\"Click to STOP the speech recognition.\"),this.model.started=!0},this.recognition.onend=()=>{this.buttonEl.onclick=()=>{this.recognition.start()},this.buttonEl.innerHTML=this.iconNotStarted(),this.buttonEl.setAttribute(\"title\",h),this.model.started=!1},this.buttonEl=(t=`<button class=\"bk bk-btn bk-btn-${this.model.button_type}\" type=\"button\" title=\"${h}\"></button>`,e=document.createElement(\"template\"),t=t.trim(),e.innerHTML=t,e.content.firstChild),this.buttonEl.innerHTML=this.iconNotStarted(),this.buttonEl.onclick=()=>this.recognition.start()}iconStarted(){return\"\"!==this.model.button_started?this.model.button_started:'<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"22px\" style=\"vertical-align: middle;\" fill=\"currentColor\" class=\"bi bi-mic\" viewBox=\"0 0 16 16\">\\n <path fill-rule=\"evenodd\" d=\"M3.5 6.5A.5.5 0 0 1 4 7v1a4 4 0 0 0 8 0V7a.5.5 0 0 1 1 0v1a5 5 0 0 1-4.5 4.975V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 .5-.5z\"/>\\n <path fill-rule=\"evenodd\" d=\"M10 8V3a2 2 0 1 0-4 0v5a2 2 0 1 0 4 0zM8 0a3 3 0 0 0-3 3v5a3 3 0 0 0 6 0V3a3 3 0 0 0-3-3z\"/>\\n</svg>'}iconNotStarted(){return\"\"!==this.model.button_not_started?this.model.button_not_started:'<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"22px\" style=\"vertical-align: middle;\" fill=\"currentColor\" class=\"bi bi-mic-mute\" viewBox=\"0 0 16 16\">\\n<path fill-rule=\"evenodd\" d=\"M12.734 9.613A4.995 4.995 0 0 0 13 8V7a.5.5 0 0 0-1 0v1c0 .274-.027.54-.08.799l.814.814zm-2.522 1.72A4 4 0 0 1 4 8V7a.5.5 0 0 0-1 0v1a5 5 0 0 0 4.5 4.975V15h-3a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-3v-2.025a4.973 4.973 0 0 0 2.43-.923l-.718-.719zM11 7.88V3a3 3 0 0 0-5.842-.963l.845.845A2 2 0 0 1 10 3v3.879l1 1zM8.738 9.86l.748.748A3 3 0 0 1 5 8V6.121l1 1V8a2 2 0 0 0 2.738 1.86zm4.908 3.494l-12-12 .708-.708 12 12-.708.707z\"/>\\n</svg>'}setIcon(){this.model.started?this.buttonEl.innerHTML=this.iconStarted():this.buttonEl.innerHTML=this.iconNotStarted()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.start.change,(()=>{this.model.start=!1,this.recognition.start()})),this.connect(this.model.properties.stop.change,(()=>{this.model.stop=!1,this.recognition.stop()})),this.connect(this.model.properties.abort.change,(()=>{this.model.abort=!1,this.recognition.abort()})),this.connect(this.model.properties.grammars.change,(()=>this.setGrammars())),this.connect(this.model.properties.lang.change,(()=>this.recognition.lang=this.model.lang)),this.connect(this.model.properties.continuous.change,(()=>this.recognition.continuous=this.model.continuous)),this.connect(this.model.properties.interim_results.change,(()=>this.recognition.interimResults=this.model.interim_results)),this.connect(this.model.properties.max_alternatives.change,(()=>this.recognition.maxAlternatives=this.model.max_alternatives)),this.connect(this.model.properties.service_uri.change,(()=>this.recognition.serviceURI=this.model.service_uri)),this.connect(this.model.properties.button_type.change,(()=>this.buttonEl.className=`bk bk-btn bk-btn-${this.model.button_type}`)),this.connect(this.model.properties.button_hide.change,(()=>this.render()));const{button_not_started:t,button_started:e}=this.model.properties;this.on_change([t,e],(()=>this.setIcon()))}setGrammars(){this.recognition.grammars=function(t){if(t){var e=new l;for(let i of t)i.src?e.addFromString(i.src,i.weight):i.uri&&e.addFromURI(i.uri,i.weight);return e}return null}(this.model.grammars)}render(){super.render(),this.model.button_hide||this.el.appendChild(this.buttonEl)}}i.SpeechToTextView=c,c.__name__=\"SpeechToTextView\";class d extends r.HTMLBox{constructor(t){super(t)}static init_SpeechToText(){this.prototype.default_view=c,this.define({start:[s.Boolean,!1],stop:[s.Boolean,!1],abort:[s.Boolean,!1],grammars:[s.Array,[]],lang:[s.String,\"\"],continuous:[s.Boolean,!1],interim_results:[s.Boolean,!1],max_alternatives:[s.Number,1],service_uri:[s.String],started:[s.Boolean,!1],audio_started:[s.Boolean,!1],sound_started:[s.Boolean,!1],speech_started:[s.Boolean,!1],button_type:[s.String,\"light\"],button_hide:[s.Boolean,!1],button_not_started:[s.String,\"\"],button_started:[s.String,\"\"],results:[s.Array,[]]})}}i.SpeechToText=d,d.__name__=\"SpeechToText\",d.__module__=\"panel.models.speech_to_text\",d.init_SpeechToText()},\n", " \"bfa46a5f19\": function _(e,t,s,a,i){a();const o=e(\"@bokehjs/core/view\"),c=e(\"@bokehjs/core/util/array\"),n=e(\"@bokehjs/model\"),h=e(\"@bokehjs/protocol/receiver\");class _ extends o.View{renderTo(){}}s.StateView=_,_.__name__=\"StateView\";class r extends n.Model{constructor(e){super(e),this._receiver=new h.Receiver,this._cache={}}apply_state(e){this._receiver.consume(e.header),this._receiver.consume(e.metadata),this._receiver.consume(e.content),this._receiver.message&&this.document&&this.document.apply_json_patch(this._receiver.message.content)}_receive_json(e,t){const s=JSON.parse(e);this._cache[t]=s;let a=this.state;for(const e of this.values)a=a[e];a===t?this.apply_state(s):this._cache[a]&&this.apply_state(this._cache[a])}set_state(e,t){let s=c.copy(this.values);s[this.widgets[e.id]]=t;let a=this.state;for(const e of s)a=a[e];var i,o,n;this.values=s,this.json?this._cache[a]?this.apply_state(this._cache[a]):(i=a,o=e=>this._receive_json(e,a),(n=new XMLHttpRequest).overrideMimeType(\"application/json\"),n.open(\"GET\",i,!0),n.onreadystatechange=function(){4==n.readyState&&200==n.status&&o(n.responseText)},n.send(null)):this.apply_state(a)}static init_State(){this.prototype.default_view=_,this.define((({Any:e,Boolean:t})=>({json:[t,!1],state:[e,{}],widgets:[e,{}],values:[e,[]]})))}}s.State=r,r.__name__=\"State\",r.__module__=\"panel.models.state\",r.init_State()},\n", " \"91fe88c277\": function _(e,t,i,n,s){n();const r=e(\"@bokehjs/models/layouts/html_box\"),o=e(\"@bokehjs/core/dom\"),a=e(\"4c755983eb\");class l extends a.PanelHTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.output.change,this.write),this.connect(this.model.properties._clears.change,this.clear)}render(){super.render(),this.container=o.div({class:\"terminal-container\"}),a.set_size(this.container,this.model),this.term=this.getNewTerminal(),this.term.onData((e=>{this.handleOnData(e)})),this.webLinksAddon=this.getNewWebLinksAddon(),this.term.loadAddon(this.webLinksAddon),this.term.open(this.container),this.term.onRender((()=>{this._rendered||this.fit()})),this.write(),this.el.appendChild(this.container)}getNewTerminal(){const e=window;return e.Terminal?new e.Terminal(this.model.options):new e.xtermjs.Terminal(this.model.options)}getNewWebLinksAddon(){return new window.WebLinksAddon.WebLinksAddon}handleOnData(e){this.model.input===e?this.model._value_repeats+=1:this.model.input=e}write(){const e=this.model.output;if(null==e||!e.length)return;const t=e.replace(/\\r?\\n/g,\"\\r\\n\");this.term.write(t)}clear(){this.term.clear()}fit(){const e=this.layout.inner_bbox.width,t=this.layout.inner_bbox.height,i=this.term._core._renderService,n=i.dimensions.actualCellWidth,s=i.dimensions.actualCellHeight;if(0===n||0===s)return;const r=Math.max(2,Math.floor(e/n)),o=Math.max(1,Math.floor(t/s));this.term.rows===o&&this.term.cols===r||(i.clear(),this.term.resize(r,o)),this._rendered=!0}after_layout(){super.after_layout(),this.fit()}resize_layout(){super.resize_layout(),this.fit()}}i.TerminalView=l,l.__name__=\"TerminalView\";class h extends r.HTMLBox{constructor(e){super(e)}static init_Terminal(){this.prototype.default_view=l,this.define((({Any:e,Int:t,String:i})=>({options:[e,{}],output:[i],input:[i],_clears:[t,0],_value_repeats:[t,0]})))}}i.Terminal=h,h.__name__=\"Terminal\",h.__module__=\"panel.models.terminal\",h.init_Terminal()},\n", " \"33cd2c254e\": function _(e,s,i,t,n){t();const h=e(\"@bokehjs/models/layouts/html_box\");function o(e){var s=[];for(let t of e){var i={default:t.default,lang:t.lang,local_service:t.localService,name:t.name,voice_uri:t.voiceURI};s.push(i)}return s}class c extends h.HTMLBoxView{initialize(){super.initialize(),this.model.paused=speechSynthesis.paused,this.model.pending=speechSynthesis.pending,this.model.speaking=speechSynthesis.speaking,this._callback=window.setInterval((function(){!speechSynthesis.paused&&speechSynthesis.speaking&&window.speechSynthesis.resume()}),1e4);const e=()=>{\"undefined\"!=typeof speechSynthesis&&(this.voices=speechSynthesis.getVoices(),this.voices&&(this.model.voices=o(this.voices)))};e(),\"undefined\"!=typeof speechSynthesis&&void 0!==speechSynthesis.onvoiceschanged&&(speechSynthesis.onvoiceschanged=e)}remove(){null!=this._callback&&clearInterval(this._callback),speechSynthesis.cancel(),super.remove()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.speak.change,(()=>{this.speak()})),this.connect(this.model.properties.pause.change,(()=>{this.model.pause=!1,speechSynthesis.pause()})),this.connect(this.model.properties.resume.change,(()=>{this.model.resume=!1,speechSynthesis.resume()})),this.connect(this.model.properties.cancel.change,(()=>{this.model.cancel=!1,speechSynthesis.cancel()}))}speak(){let e=new SpeechSynthesisUtterance(this.model.speak.text);if(e.pitch=this.model.speak.pitch,e.volume=this.model.speak.volume,e.rate=this.model.speak.rate,this.model.voices)for(let s of this.voices)s.name===this.model.speak.voice&&(e.voice=s);e.onpause=()=>this.model.paused=!0,e.onstart=()=>{this.model.speaking=!0,this.model.paused=!1,this.model.pending=speechSynthesis.pending},e.onresume=()=>this.model.paused=!1,e.onend=()=>{this.model.speaking=!1,this.model.paused=!1,this.model.pending=speechSynthesis.pending},speechSynthesis.speak(e),this.model.paused=speechSynthesis.paused,this.model.pending=speechSynthesis.pending}render(){super.render(),this.model.voices||(this.model.voices=o(this.voices)),null!=this.model.speak&&this.model.speak.text&&this.speak()}}i.TextToSpeechView=c,c.__name__=\"TextToSpeechView\";class p extends h.HTMLBox{constructor(e){super(e)}static init_TextToSpeech(){this.prototype.default_view=c,this.define((({Any:e,Array:s,Boolean:i})=>({paused:[i,!1],pending:[i,!1],speaking:[i,!1],voices:[s(e),[]],cancel:[i,!1],pause:[i,!1],resume:[i,!1],speak:[e,{}]})))}}i.TextToSpeech=p,p.__name__=\"TextToSpeech\",p.__module__=\"panel.models.text_to_speech\",p.init_TextToSpeech()},\n", " \"ded3463d6c\": function _(t,e,i,l,o){l();const s=t(\"@bokehjs/models/layouts/html_box\"),h=t(\"@bokehjs/core/build_views\"),a=t(\"@bokehjs/models/plots\"),n=t(\"@bokehjs/models/glyphs\"),d=t(\"@bokehjs/core/dom\"),r=t(\"@bokehjs/models/sources/column_data_source\"),c=t(\"@bokehjs/models/formatters\");class p extends s.HTMLBoxView{initialize(){super.initialize(),this.containerDiv=d.div({style:\"height:100%; width:100%;\"}),this.titleDiv=d.div({style:\"font-size: 1em; word-wrap: break-word;\"}),this.valueDiv=d.div({style:\"font-size: 2em\"}),this.value2Div=d.div({style:\"font-size: 1em; opacity: 0.5; display: inline\"}),this.changeDiv=d.div({style:\"font-size: 1em; opacity: 0.5; display: inline\"}),this.textDiv=d.div({},this.titleDiv,this.valueDiv,d.div({},this.changeDiv,this.value2Div)),this.updateTitle(),this.updateValue(),this.updateValue2(),this.updateValueChange(),this.updateTextFontSize(),this.plotDiv=d.div({}),this.containerDiv=d.div({style:\"height:100%; width:100%\"},this.textDiv,this.plotDiv),this.updateLayout()}connect_signals(){super.connect_signals();const{pos_color:t,neg_color:e}=this.model.properties;this.on_change([t,e],(()=>this.updateValueChange()));const{plot_color:i,plot_type:l,width:o,height:s,sizing_mode:h}=this.model.properties;this.on_change([i,l,o,s,h],(()=>this.render())),this.connect(this.model.properties.title.change,(()=>this.updateTitle(!0))),this.connect(this.model.properties.value.change,(()=>this.updateValue(!0))),this.connect(this.model.properties.value_change.change,(()=>this.updateValue2(!0))),this.connect(this.model.properties.layout.change,(()=>this.updateLayout()))}async render(){super.render(),this.el.appendChild(this.containerDiv),await this.setPlot()}async setPlot(){this.plot=new a.Plot({background_fill_color:null,border_fill_color:null,outline_line_color:null,min_border:0,sizing_mode:\"stretch_both\",toolbar_location:null});var t=this.model.source;if(\"line\"===this.model.plot_type){var e=new n.Line({x:{field:this.model.plot_x},y:{field:this.model.plot_y},line_width:4,line_color:this.model.plot_color});this.plot.add_glyph(e,t)}else if(\"step\"===this.model.plot_type){var i=new n.Step({x:{field:this.model.plot_x},y:{field:this.model.plot_y},line_width:3,line_color:this.model.plot_color});this.plot.add_glyph(i,t)}else if(\"area\"===this.model.plot_type){var l=new n.VArea({x:{field:this.model.plot_x},y1:{field:this.model.plot_y},y2:0,fill_color:this.model.plot_color,fill_alpha:.5});this.plot.add_glyph(l,t);e=new n.Line({x:{field:this.model.plot_x},y:{field:this.model.plot_y},line_width:3,line_color:this.model.plot_color});this.plot.add_glyph(e,t)}else{var o=new n.VBar({x:{field:this.model.plot_x},top:{field:this.model.plot_y},width:.9,line_color:null,fill_color:this.model.plot_color});this.plot.add_glyph(o,t)}const s=await h.build_view(this.plot);this.plotDiv.innerHTML=\"\",s.renderTo(this.plotDiv)}after_layout(){super.after_layout(),this.updateTextFontSize()}updateTextFontSize(){this.updateTextFontSizeColumn()}updateTextFontSizeColumn(){let t=this.containerDiv.clientWidth,e=this.containerDiv.clientHeight;\"column\"===this.model.layout?e=Math.round(e/2):t=Math.round(t/2);const i=t/this.model.title.length*2,l=t/(2*this._value_format.length)*1.8,o=t/(this._value_change_format.length+1)*2,s=e/6,h=Math.min(i,l,o,s);this.textDiv.style.fontSize=Math.trunc(h)+\"px\",this.textDiv.style.lineHeight=\"1.3\"}updateTitle(t=!1){this.titleDiv.innerText=this.model.title,t&&this.updateTextFontSize()}updateValue(t=!1){this._value_format=this.model.formatter.doFormat([this.model.value],{loc:0})[0],this.valueDiv.innerText=this._value_format,t&&this.updateTextFontSize()}updateValue2(t=!1){this._value_change_format=this.model.change_formatter.doFormat([this.model.value_change],{loc:0})[0],this.value2Div.innerText=this._value_change_format,this.updateValueChange(),t&&this.updateTextFontSize()}updateValueChange(){this.model.value_change>0?(this.changeDiv.innerHTML=\"▲\",this.changeDiv.style.color=this.model.pos_color):this.model.value_change<0?(this.changeDiv.innerHTML=\"▼\",this.changeDiv.style.color=this.model.neg_color):(this.changeDiv.innerHTML=\" \",this.changeDiv.style.color=\"inherit\")}updateLayout(){\"column\"===this.model.layout?(this.containerDiv.style.display=\"block\",this.textDiv.style.height=\"50%\",this.textDiv.style.width=\"100%\",this.plotDiv.style.height=\"50%\",this.plotDiv.style.width=\"100%\"):(this.containerDiv.style.display=\"flex\",this.textDiv.style.height=\"100%\",this.textDiv.style.width=\"\",this.plotDiv.style.height=\"100%\",this.plotDiv.style.width=\"\",this.textDiv.style.flex=\"1\",this.plotDiv.style.flex=\"1\"),this.invalidate_layout()}}i.TrendIndicatorView=p,p.__name__=\"TrendIndicatorView\";class _ extends s.HTMLBox{constructor(t){super(t)}static init_TrendIndicator(){this.prototype.default_view=p,this.define((({Number:t,String:e,Ref:i})=>({description:[e,\"\"],formatter:[i(c.TickFormatter),()=>new c.BasicTickFormatter],change_formatter:[i(c.TickFormatter),()=>new c.NumeralTickFormatter],layout:[e,\"column\"],source:[i(r.ColumnDataSource)],plot_x:[e,\"x\"],plot_y:[e,\"y\"],plot_color:[e,\"#428bca\"],plot_type:[e,\"bar\"],pos_color:[e,\"#5cb85c\"],neg_color:[e,\"#d9534f\"],title:[e,\"\"],value:[t,0],value_change:[t,0]})))}}i.TrendIndicator=_,_.__name__=\"TrendIndicator\",_.__module__=\"panel.models.trend\",_.init_TrendIndicator()},\n", " \"4feb5fa522\": function _(t,e,s,o,a){o();const n=t(\"@bokehjs/core/util/types\"),c=t(\"@bokehjs/models/layouts/html_box\");class d extends c.HTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,this._plot),this.connect(this.model.properties.data_sources.change,(()=>this._connect_sources())),this._connected=[],this._connect_sources()}_connect_sources(){for(const t in this.model.data_sources){const e=this.model.data_sources[t];this._connected.indexOf(t)<0&&(this.connect(e.properties.data.change,this._plot),this._connected.push(t))}}_fetch_datasets(){const t={};for(const e in this.model.data_sources){const s=this.model.data_sources[e],o=[],a=s.columns();for(let t=0;t<s.get_length();t++){const e={};for(const o of a)e[o]=s.data[o][t];o.push(e)}t[e]=o}return t}render(){super.render(),this._plot()}_plot(){const t=this.model.data;if(null!=t&&window.vegaEmbed){if(this.model.data_sources&&Object.keys(this.model.data_sources).length>0){const e=this._fetch_datasets();if(\"data\"in e&&(t.data.values=e.data,delete e.data),null!=t.data){const s=n.isArray(t.data)?t.data:[t.data];for(const t of s)t.name in e&&(t.values=e[t.name],delete e[t.name])}this.model.data.datasets=e}window.vegaEmbed(this.el,this.model.data,{actions:!1})}}}s.VegaPlotView=d,d.__name__=\"VegaPlotView\";class i extends c.HTMLBox{constructor(t){super(t)}static init_VegaPlot(){this.prototype.default_view=d,this.define((({Any:t})=>({data:[t,{}],data_sources:[t,{}]})))}}s.VegaPlot=i,i.__name__=\"VegaPlot\",i.__module__=\"panel.models.vega\",i.init_VegaPlot()},\n", " \"ffe54b53c3\": function _(e,i,t,o,s){o();const l=e(\"@bokehjs/models/layouts/html_box\"),d=e(\"4c755983eb\");class h extends d.PanelHTMLBoxView{initialize(){super.initialize(),this._blocked=!1,this._setting=!1,this._time=Date.now()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.loop.change,(()=>this.set_loop())),this.connect(this.model.properties.paused.change,(()=>this.set_paused())),this.connect(this.model.properties.time.change,(()=>this.set_time())),this.connect(this.model.properties.value.change,(()=>this.set_value())),this.connect(this.model.properties.volume.change,(()=>this.set_volume()))}render(){super.render(),this.videoEl=document.createElement(\"video\"),this.model.sizing_mode&&\"fixed\"!==this.model.sizing_mode||(this.model.height&&(this.videoEl.height=this.model.height),this.model.width&&(this.videoEl.width=this.model.width)),this.videoEl.style.objectFit=\"fill\",this.videoEl.style.minWidth=\"100%\",this.videoEl.style.minHeight=\"100%\",this.videoEl.controls=!0,this.videoEl.src=this.model.value,this.videoEl.currentTime=this.model.time,this.videoEl.loop=this.model.loop,null!=this.model.volume?this.videoEl.volume=this.model.volume/100:this.model.volume=100*this.videoEl.volume,this.videoEl.onpause=()=>this.model.paused=!0,this.videoEl.onplay=()=>this.model.paused=!1,this.videoEl.ontimeupdate=()=>this.update_time(this),this.videoEl.onvolumechange=()=>this.update_volume(this),this.el.appendChild(this.videoEl),this.model.paused||this.videoEl.play()}update_time(e){e._setting?e._setting=!1:Date.now()-e._time<e.model.throttle||(e._blocked=!0,e.model.time=e.videoEl.currentTime,e._time=Date.now())}update_volume(e){e._setting?e._setting=!1:(e._blocked=!0,e.model.volume=100*e.videoEl.volume)}set_loop(){this.videoEl.loop=this.model.loop}set_paused(){!this.videoEl.paused&&this.model.paused&&this.videoEl.pause(),this.videoEl.paused&&!this.model.paused&&this.videoEl.play()}set_volume(){this._blocked?this._blocked=!1:(this._setting=!0,null!=this.model.volume&&(this.videoEl.volume=this.model.volume/100))}set_time(){this._blocked?this._blocked=!1:(this._setting=!0,this.videoEl.currentTime=this.model.time)}set_value(){this.videoEl.src=this.model.value}}t.VideoView=h,h.__name__=\"VideoView\";class m extends l.HTMLBox{constructor(e){super(e)}static init_Video(){this.prototype.default_view=h,this.define((({Any:e,Boolean:i,Int:t,Number:o})=>({loop:[i,!1],paused:[i,!0],time:[o,0],throttle:[t,250],value:[e,\"\"],volume:[t]})))}}t.Video=m,m.__name__=\"Video\",m.__module__=\"panel.models.widgets\",m.init_Video()},\n", " \"e3e9b8e495\": function _(e,t,i,s,o){s();const h=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"4c755983eb\");class a extends l.PanelHTMLBoxView{constructor(){super(...arguments),this.constraints={audio:!1,video:!0}}initialize(){super.initialize(),null!==this.model.timeout&&this.set_timeout()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.timeout.change,(()=>this.set_timeout())),this.connect(this.model.properties.snapshot.change,(()=>this.snapshot())),this.connect(this.model.properties.paused.change,(()=>this.pause()))}pause(){this.model.paused?(null!=this.timer&&(clearInterval(this.timer),this.timer=null),this.videoEl.pause()):this.videoEl.play(),this.set_timeout()}set_timeout(){this.timer&&(clearInterval(this.timer),this.timer=null),null!=this.model.timeout&&this.model.timeout>0&&(this.timer=setInterval((()=>this.snapshot()),this.model.timeout))}snapshot(){this.canvasEl.width=this.videoEl.videoWidth,this.canvasEl.height=this.videoEl.videoHeight;const e=this.canvasEl.getContext(\"2d\");e&&e.drawImage(this.videoEl,0,0,this.canvasEl.width,this.canvasEl.height),this.model.value=this.canvasEl.toDataURL(\"image/\"+this.model.format,.95)}remove(){super.remove(),this.timer&&(clearInterval(this.timer),this.timer=null)}render(){super.render(),this.videoEl||(this.videoEl=document.createElement(\"video\"),this.model.sizing_mode&&\"fixed\"!==this.model.sizing_mode||(this.model.height&&(this.videoEl.height=this.model.height),this.model.width&&(this.videoEl.width=this.model.width)),this.videoEl.style.objectFit=\"fill\",this.videoEl.style.minWidth=\"100%\",this.videoEl.style.minHeight=\"100%\",this.canvasEl=document.createElement(\"canvas\"),this.el.appendChild(this.videoEl),navigator.mediaDevices.getUserMedia&&navigator.mediaDevices.getUserMedia(this.constraints).then((e=>{this.videoEl.srcObject=e,this.model.paused||this.videoEl.play()})).catch(console.error))}}i.VideoStreamView=a,a.__name__=\"VideoStreamView\";class n extends h.HTMLBox{constructor(e){super(e)}static init_VideoStream(){this.prototype.default_view=a,this.define((({Any:e,Boolean:t,Int:i,Nullable:s,String:o})=>({format:[o,\"png\"],paused:[t,!1],snapshot:[t,!1],timeout:[s(i),null],value:[e]}))),this.override({height:240,width:320})}}i.VideoStream=n,n.__name__=\"VideoStream\",n.__module__=\"panel.models.widgets\",n.init_VideoStream()},\n", " \"c51f25e2a7\": function _(o,V,e,l,K){l(),K(\"VTKJSPlot\",o(\"34fc7779c7\").VTKJSPlot),K(\"VTKVolumePlot\",o(\"89262e43a1\").VTKVolumePlot),K(\"VTKAxes\",o(\"db7a0079c0\").VTKAxes),K(\"VTKSynchronizedPlot\",o(\"4baab0b7ce\").VTKSynchronizedPlot)},\n", " \"34fc7779c7\": function _(e,t,n,i,s){i();const a=e(\"46fdad9667\"),r=e(\"4eb45e35aa\");class _ extends a.AbstractVTKView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,(()=>{this.invalidate_render()}))}render(){super.render(),this._create_orientation_widget(),this._set_axes()}invalidate_render(){this._vtk_renwin=null,super.invalidate_render()}init_vtk_renwin(){this._vtk_renwin=r.vtkns.FullScreenRenderWindow.newInstance({rootContainer:this.el,container:this._vtk_container})}plot(){if(!this.model.data)return void this._vtk_renwin.getRenderWindow().render();const e=r.vtkns.DataAccessHelper.get(\"zip\",{zipContent:atob(this.model.data),callback:t=>{const n=r.vtkns.HttpSceneLoader.newInstance({renderer:this._vtk_renwin.getRenderer(),dataAccessHelper:e}),i=r.vtk.macro.debounce((()=>setTimeout((()=>{null==this._axes&&this.model.axes&&this._set_axes(),this._set_camera_state(),this._get_camera_state()}),100)),100);n.setUrl(\"index.json\"),n.onReady(i)}})}}n.VTKJSPlotView=_,_.__name__=\"VTKJSPlotView\";class o extends a.AbstractVTKPlot{static init_VTKJSPlot(){this.prototype.default_view=_,this.define((({Boolean:e,Nullable:t,String:n})=>({data:[t(n)],enable_keybindings:[e,!1]})))}}n.VTKJSPlot=o,o.__name__=\"VTKJSPlot\",o.init_VTKJSPlot()},\n", " \"46fdad9667\": function _(e,t,i,n,s){n();const a=e(\"@bokehjs/core/dom\"),o=e(\"@bokehjs/models/layouts/html_box\"),r=e(\"@bokehjs/core/util/object\"),_=e(\"@bokehjs/models/mappers/color_mapper\"),d=e(\"@bokehjs/core/kinds\"),h=e(\"4c755983eb\"),c=e(\"4eb45e35aa\"),l=e(\"c010237f8b\"),g=e(\"db7a0079c0\"),p={padding:\"0px 2px 0px 2px\",maxHeight:\"150px\",height:\"auto\",backgroundColor:\"rgba(255, 255, 255, 0.4)\",borderRadius:\"10px\",margin:\"2px\",boxSizing:\"border-box\",overflow:\"hidden\",overflowY:\"auto\",transition:\"width 0.1s linear\",bottom:\"0px\",position:\"absolute\"},m=d.Enum(\"LowerLeft\",\"LowerRight\",\"UpperLeft\",\"UpperRight\",\"LowerEdge\",\"RightEdge\",\"LeftEdge\",\"UpperEdge\");class v extends h.PanelHTMLBoxView{initialize(){super.initialize(),this._camera_callbacks=[],this._renderable=!0,this._setting_camera=!1}_add_colorbars(){const e=this.el.querySelector(\".vtk_info\");if(e&&this.el.removeChild(e),this.model.color_mappers.length<1)return;const t=document.createElement(\"div\"),i=\"350px\",n=\"30px\";t.classList.add(\"vtk_info\"),c.applyStyle(t,p),c.applyStyle(t,{width:i}),this.el.appendChild(t);const s=[];this.model.color_mappers.forEach((e=>{const i=new l.VTKColorBar(t,e);s.push(i)}));const a=document.createElement(\"div\");c.applyStyle(a,{textAlign:\"center\",fontSize:\"20px\"}),a.innerText=\"...\",t.addEventListener(\"click\",(()=>{t.style.width===n?(t.removeChild(a),c.applyStyle(t,{height:\"auto\",width:i}),s.forEach((e=>t.appendChild(e.canvas)))):(s.forEach((e=>t.removeChild(e.canvas))),c.applyStyle(t,{height:n,width:n}),t.appendChild(a))})),t.click()}_init_annotations_container(){this._annotations_container||(this._annotations_container=document.createElement(\"div\"),this._annotations_container.style.position=\"absolute\",this._annotations_container.style.width=\"100%\",this._annotations_container.style.height=\"100%\",this._annotations_container.style.top=\"0\",this._annotations_container.style.left=\"0\",this._annotations_container.style.pointerEvents=\"none\")}_clean_annotations(){if(this._annotations_container)for(;this._annotations_container.firstElementChild;)this._annotations_container.firstElementChild.remove()}_add_annotations(){this._clean_annotations();const{annotations:e}=this.model;if(null!=e)for(let t of e){const{viewport:e,color:i,fontSize:n,fontFamily:s}=t;m.values.forEach((a=>{const o=t[a];if(o){const t=document.createElement(\"div\");t.textContent=o;const{style:r}=t;r.position=\"absolute\",r.color=`rgb(${i.map((e=>255*e)).join(\",\")})`,r.fontSize=`${n}px`,r.padding=\"5px\",r.fontFamily=s,r.width=\"fit-content\",\"UpperLeft\"==a&&(r.top=100*(1-e[3])+\"%\",r.left=100*e[0]+\"%\"),\"UpperRight\"==a&&(r.top=100*(1-e[3])+\"%\",r.right=100*(1-e[2])+\"%\"),\"LowerLeft\"==a&&(r.bottom=100*e[1]+\"%\",r.left=100*e[0]+\"%\"),\"LowerRight\"==a&&(r.bottom=100*e[1]+\"%\",r.right=100*(1-e[2])+\"%\"),\"UpperEdge\"==a&&(r.top=100*(1-e[3])+\"%\",r.left=100*(e[0]+(e[2]-e[0])/2)+\"%\",r.transform=\"translateX(-50%)\"),\"LowerEdge\"==a&&(r.bottom=100*e[1]+\"%\",r.left=100*(e[0]+(e[2]-e[0])/2)+\"%\",r.transform=\"translateX(-50%)\"),\"LeftEdge\"==a&&(r.left=100*e[0]+\"%\",r.top=100*(1-e[3]+(e[3]-e[1])/2)+\"%\",r.transform=\"translateY(-50%)\"),\"RightEdge\"==a&&(r.right=100*(1-e[2])+\"%\",r.top=100*(1-e[3]+(e[3]-e[1])/2)+\"%\",r.transform=\"translateY(-50%)\"),this._annotations_container.appendChild(t)}}))}console.log(this.model.annotations)}connect_signals(){super.connect_signals(),this.on_change(this.model.properties.orientation_widget,(()=>{this._orientation_widget_visibility(this.model.orientation_widget)})),this.on_change(this.model.properties.camera,(()=>this._set_camera_state())),this.on_change(this.model.properties.axes,(()=>{this._delete_axes(),this.model.axes&&this._set_axes(),this._vtk_render()})),this.on_change(this.model.properties.color_mappers,(()=>this._add_colorbars())),this.on_change(this.model.properties.annotations,(()=>this._add_annotations()))}render(){super.render(),this._vtk_renwin&&this._vtk_container?(h.set_size(this._vtk_container,this.model),this.el.appendChild(this._vtk_container)):(this._orientationWidget=null,this._axes=null,this._vtk_container=a.div(),this.init_vtk_renwin(),this._init_annotations_container(),h.set_size(this._vtk_container,this.model),this.el.appendChild(this._vtk_container),this._vtk_renwin.getInteractor().onEndAnimation((()=>this._get_camera_state())),this._remove_default_key_binding(),this._bind_key_events(),this.plot(),this._add_colorbars(),this._add_annotations(),this.model.renderer_el=this._vtk_renwin),this.el.appendChild(this._annotations_container)}after_layout(){super.after_layout(),this._renderable&&this._vtk_renwin.resize(),this._vtk_render()}invalidate_render(){this._unsubscribe_camera_cb(),super.invalidate_render()}resize_layout(){this.layout&&super.resize_layout()}remove(){this._unsubscribe_camera_cb(),window.removeEventListener(\"resize\",this._vtk_renwin.resize),this._vtk_renwin.delete(),super.remove()}get _vtk_camera_state(){const e=this._vtk_renwin.getRenderer().getActiveCamera();let t;return e&&(t=r.clone(e.get()),delete t.classHierarchy,delete t.vtkObject,delete t.vtkCamera,delete t.viewPlaneNormal,delete t.flattenedDepIds,delete t.managedInstanceId,delete t.directionOfProjection),t}get _axes_canvas(){let e=this._vtk_container.querySelector(\".axes-canvas\");return e||(e=a.canvas({style:{position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"}}),e.classList.add(\"axes-canvas\"),this._vtk_container.appendChild(e),this._vtk_renwin.setResizeCallback((()=>{if(this._axes_canvas){const e=this._vtk_container.getBoundingClientRect(),t=Math.floor(e.width*window.devicePixelRatio),i=Math.floor(e.height*window.devicePixelRatio);this._axes_canvas.setAttribute(\"width\",t.toFixed()),this._axes_canvas.setAttribute(\"height\",i.toFixed())}}))),e}_bind_key_events(){this.el.addEventListener(\"mouseenter\",(()=>{const e=this._vtk_renwin.getInteractor();this.model.enable_keybindings&&(document.querySelector(\"body\").addEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").addEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").addEventListener(\"keyup\",e.handleKeyUp))})),this.el.addEventListener(\"mouseleave\",(()=>{const e=this._vtk_renwin.getInteractor();document.querySelector(\"body\").removeEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").removeEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").removeEventListener(\"keyup\",e.handleKeyUp)}))}_create_orientation_widget(){const e=c.vtkns.AxesActor.newInstance();this._orientationWidget=c.vtkns.OrientationMarkerWidget.newInstance({actor:e,interactor:this._vtk_renwin.getInteractor()}),this._orientationWidget.setEnabled(!0),this._orientationWidget.setViewportCorner(c.vtkns.OrientationMarkerWidget.Corners.BOTTOM_RIGHT),this._orientationWidget.setViewportSize(.15),this._orientationWidget.setMinPixelSize(75),this._orientationWidget.setMaxPixelSize(300),this.model.interactive_orientation_widget&&this._make_orientation_widget_interactive(),this._orientation_widget_visibility(this.model.orientation_widget)}_make_orientation_widget_interactive(){this._widgetManager=c.vtkns.WidgetManager.newInstance(),this._widgetManager.setRenderer(this._orientationWidget.getRenderer());const e=this._orientationWidget.getActor(),t=c.vtkns.InteractiveOrientationWidget.newInstance();t.placeWidget(e.getBounds()),t.setBounds(e.getBounds()),t.setPlaceFactor(1);this._widgetManager.addWidget(t).onOrientationChange((({direction:e})=>{const t=this._vtk_renwin.getRenderer().getActiveCamera(),i=t.getFocalPoint(),n=t.getPosition(),s=t.getViewUp(),a=Math.sqrt(Math.pow(n[0]-i[0],2)+Math.pow(n[1]-i[1],2)+Math.pow(n[2]-i[2],2));t.setPosition(i[0]+e[0]*a,i[1]+e[1]*a,i[2]+e[2]*a),e[0]&&t.setViewUp(c.majorAxis(s,1,2)),e[1]&&t.setViewUp(c.majorAxis(s,0,2)),e[2]&&t.setViewUp(c.majorAxis(s,0,1)),this._vtk_renwin.getRenderer().resetCameraClippingRange(),this._vtk_render(),this._get_camera_state()}))}_delete_axes(){if(this._axes){Object.keys(this._axes).forEach((e=>this._vtk_renwin.getRenderer().removeActor(this._axes[e]))),this._axes=null;const e=this._axes_canvas.getContext(\"2d\");e&&e.clearRect(0,0,this._axes_canvas.clientWidth*window.devicePixelRatio,this._axes_canvas.clientHeight*window.devicePixelRatio)}}_get_camera_state(){this._setting_camera||(this._setting_camera=!0,this.model.camera=this._vtk_camera_state,this._setting_camera=!1)}_orientation_widget_visibility(e){this._orientationWidget.setEnabled(e),null!=this._widgetManager&&(e?this._widgetManager.enablePicking():this._widgetManager.disablePicking()),this._vtk_render()}_remove_default_key_binding(){const e=this._vtk_renwin.getInteractor();document.querySelector(\"body\").removeEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").removeEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").removeEventListener(\"keyup\",e.handleKeyUp)}_set_axes(){if(this.model.axes&&this._vtk_renwin.getRenderer()){const{psActor:e,axesActor:t,gridActor:i}=this.model.axes.create_axes(this._axes_canvas);this._axes={psActor:e,axesActor:t,gridActor:i},e&&this._vtk_renwin.getRenderer().addActor(e),t&&this._vtk_renwin.getRenderer().addActor(t),i&&this._vtk_renwin.getRenderer().addActor(i)}}_set_camera_state(){this._setting_camera||void 0===this._vtk_renwin.getRenderer()||(this._setting_camera=!0,this.model.camera&&JSON.stringify(this.model.camera)!=JSON.stringify(this._vtk_camera_state)&&this._vtk_renwin.getRenderer().getActiveCamera().set(this.model.camera),this._vtk_renwin.getRenderer().resetCameraClippingRange(),this._vtk_render(),this._setting_camera=!1)}_unsubscribe_camera_cb(){this._camera_callbacks.splice(0,this._camera_callbacks.length).map((e=>e.unsubscribe()))}_vtk_render(){this._renderable&&(this._orientationWidget&&this._orientationWidget.updateMarkerOrientation(),this._vtk_renwin.getRenderWindow().render())}}i.AbstractVTKView=v,v.__name__=\"AbstractVTKView\";class w extends o.HTMLBox{constructor(e){super(e)}getActors(){return this.renderer_el.getRenderer().getActors()}static init_AbstractVTKPlot(){this.define((({Any:e,Ref:t,Array:i,Boolean:n,Nullable:s})=>({axes:[s(t(g.VTKAxes)),null],camera:[e],color_mappers:[i(t(_.ColorMapper)),[]],orientation_widget:[n,!1],interactive_orientation_widget:[n,!1],annotations:[s(i(e)),null]}))),this.override({height:300,width:300})}}i.AbstractVTKPlot=w,w.__name__=\"AbstractVTKPlot\",w.__module__=\"panel.models.vtk\",w.init_AbstractVTKPlot()},\n", " \"4eb45e35aa\": function _(e,t,n,r,a){r();const o=e(\"@bokehjs/core/util/array\"),k=e(\"@bokehjs/core/kinds\");if(n.ARRAY_TYPES={uint8:Uint8Array,int8:Int8Array,uint16:Uint16Array,int16:Int16Array,uint32:Uint32Array,int32:Int32Array,float32:Float32Array,float64:Float64Array},n.vtk=window.vtk,n.vtkns={},n.vtk){n.vtkns.Actor=n.vtk.Rendering.Core.vtkActor,n.vtkns.AxesActor=n.vtk.Rendering.Core.vtkAxesActor,n.vtkns.Base64=n.vtk.Common.Core.vtkBase64,n.vtkns.BoundingBox=n.vtk.Common.DataModel.vtkBoundingBox,n.vtkns.Camera=n.vtk.Rendering.Core.vtkCamera,n.vtkns.ColorTransferFunction=n.vtk.Rendering.Core.vtkColorTransferFunction,n.vtkns.CubeSource=n.vtk.Filters.Sources.vtkCubeSource,n.vtkns.DataAccessHelper=n.vtk.IO.Core.DataAccessHelper,n.vtkns.DataArray=n.vtk.Common.Core.vtkDataArray,n.vtkns.Follower=n.vtk.Rendering.Core.vtkFollower,n.vtkns.FullScreenRenderWindow=n.vtk.Rendering.Misc.vtkFullScreenRenderWindow,n.vtkns.Glyph3DMapper=n.vtk.Rendering.Core.vtkGlyph3DMapper,n.vtkns.HttpSceneLoader=n.vtk.IO.Core.vtkHttpSceneLoader,n.vtkns.ImageData=n.vtk.Common.DataModel.vtkImageData,n.vtkns.ImageMapper=n.vtk.Rendering.Core.vtkImageMapper,n.vtkns.ImageProperty=n.vtk.Rendering.Core.vtkImageProperty,n.vtkns.ImageSlice=n.vtk.Rendering.Core.vtkImageSlice,n.vtkns.InteractiveOrientationWidget=n.vtk.Widgets.Widgets3D.vtkInteractiveOrientationWidget,n.vtkns.InteractorStyleTrackballCamera=n.vtk.Interaction.Style.vtkInteractorStyleTrackballCamera,n.vtkns.Light=n.vtk.Rendering.Core.vtkLight,n.vtkns.LineSource=n.vtk.Filters.Sources.vtkLineSource,n.vtkns.LookupTable=n.vtk.Common.Core.vtkLookupTable,n.vtkns.macro=n.vtk.macro,n.vtkns.Mapper=n.vtk.Rendering.Core.vtkMapper,n.vtkns.OpenGLRenderWindow=n.vtk.Rendering.OpenGL.vtkRenderWindow,n.vtkns.OrientationMarkerWidget=n.vtk.Interaction.Widgets.vtkOrientationMarkerWidget,n.vtkns.OutlineFilter=n.vtk.Filters.General.vtkOutlineFilter,n.vtkns.PiecewiseFunction=n.vtk.Common.DataModel.vtkPiecewiseFunction,n.vtkns.PixelSpaceCallbackMapper=n.vtk.Rendering.Core.vtkPixelSpaceCallbackMapper,n.vtkns.PlaneSource=n.vtk.Filters.Sources.vtkPlaneSource,n.vtkns.PointSource=n.vtk.Filters.Sources.vtkPointSource,n.vtkns.PolyData=n.vtk.Common.DataModel.vtkPolyData,n.vtkns.Property=n.vtk.Rendering.Core.vtkProperty,n.vtkns.Renderer=n.vtk.Rendering.Core.vtkRenderer,n.vtkns.RenderWindow=n.vtk.Rendering.Core.vtkRenderWindow,n.vtkns.RenderWindowInteractor=n.vtk.Rendering.Core.vtkRenderWindowInteractor,n.vtkns.SphereMapper=n.vtk.Rendering.Core.vtkSphereMapper,n.vtkns.SynchronizableRenderWindow=n.vtk.Rendering.Misc.vtkSynchronizableRenderWindow,n.vtkns.ThirdParty=n.vtk.ThirdParty,n.vtkns.Texture=n.vtk.Rendering.Core.vtkTexture,n.vtkns.Volume=n.vtk.Rendering.Core.vtkVolume,n.vtkns.VolumeController=n.vtk.Interaction.UI.vtkVolumeController,n.vtkns.VolumeMapper=n.vtk.Rendering.Core.vtkVolumeMapper,n.vtkns.VolumeProperty=n.vtk.Rendering.Core.vtkVolumeProperty,n.vtkns.WidgetManager=n.vtk.Widgets.Core.vtkWidgetManager;const{vtkObjectManager:e}=n.vtkns.SynchronizableRenderWindow;e.setTypeMapping(\"vtkVolumeMapper\",n.vtkns.VolumeMapper.newInstance,e.oneTimeGenericUpdater),e.setTypeMapping(\"vtkSmartVolumeMapper\",n.vtkns.VolumeMapper.newInstance,e.oneTimeGenericUpdater),e.setTypeMapping(\"vtkFollower\",n.vtkns.Follower.newInstance,e.genericUpdater),e.setTypeMapping(\"vtkOpenGLGlyph3DMapper\",n.vtkns.Glyph3DMapper.newInstance,e.genericUpdater)}function i(e){const t=Math.min(Math.max(Math.round(e),0),255).toString(16);return 2==t.length?t:\"0\"+t}function v(e,t,n){return\"#\"+i(e)+i(t)+i(n)}function s(e){for(var t=new ArrayBuffer(e.length),n=new Uint8Array(t),r=0,a=e.length;r<a;r++)n[r]=e.charCodeAt(r);return t}n.Interpolation=k.Enum(\"fast_linear\",\"linear\",\"nearest\"),n.applyStyle=function(e,t){Object.keys(t).forEach((n=>{e.style[n]=t[n]}))},n.hexToRGB=function(e){return[parseInt(e.slice(1,3),16)/255,parseInt(e.slice(3,5),16)/255,parseInt(e.slice(5,7),16)/255]},n.rgbToHex=v,n.vtkLutToMapper=function(e){const{scale:t,nodes:r}=e.get(\"scale\",\"nodes\");if(t!==n.vtkns.ColorTransferFunction.Scale.LINEAR)throw\"Error transfer function scale not handle\";const a=r.map((e=>e.x)),k=Math.min(...a),i=Math.max(...a),s=o.linspace(k,i,255),c=[0,0,0];return{low:k,high:i,palette:s.map((t=>(e.getColor(t,c),v(255*c[0],255*c[1],255*c[2]))))}},n.data2VTKImageData=function(e){const t=n.vtkns.ImageData.newInstance({spacing:e.spacing});t.setDimensions(e.dims),t.setOrigin(null!=e.origin?e.origin:e.dims.map((e=>e/2)));const r=n.vtkns.DataArray.newInstance({name:\"scalars\",numberOfComponents:1,values:new n.ARRAY_TYPES[e.dtype](s(atob(e.buffer)))});return t.getPointData().setScalars(r),t},n.majorAxis=function(e,t,n){const r=[0,0,0],a=Math.abs(e[t])>Math.abs(e[n])?t:n,o=e[a]>0?1:-1;return r[a]=o,r},n.cartesian_product=function(...e){return e.reduce(((e,t)=>e.flatMap((e=>t.map((t=>[].concat(e,t)))))))}},\n", " \"c010237f8b\": function _(t,i,e,s,h){s();const a=t(\"@bokehjs/models/mappers\"),n=t(\"@bokehjs/core/util/array\");class c{constructor(t,i,e={}){this.parent=t,this.mapper=i,this.options=e,e.ticksNum||(e.ticksNum=5),e.fontFamily||(e.fontFamily=\"Arial\"),e.fontSize||(e.fontSize=\"12px\"),e.ticksSize||(e.ticksSize=2),this.canvas=document.createElement(\"canvas\"),this.canvas.style.width=\"100%\",this.parent.appendChild(this.canvas),this.ctx=this.canvas.getContext(\"2d\"),this.ctx.font=`${this.options.fontSize} ${this.options.fontFamily}`,this.ctx.lineWidth=e.ticksSize,e.height||(e.height=4*(this.font_height+1)+\"px\"),this.canvas.style.height=e.height,this.draw_colorbar()}get values(){const{min:t,max:i}=this.mapper.metrics;return n.linspace(t,i,this.options.ticksNum)}get ticks(){return this.values.map((t=>t.toExponential(3)))}get title(){return this.mapper.name?this.mapper.name:\"scalars\"}get font_height(){let t=0;return this.values.forEach((i=>{const{actualBoundingBoxAscent:e,actualBoundingBoxDescent:s}=this.ctx.measureText(`${i}`),h=e+s;t<h&&(t=h)})),t}draw_colorbar(){this.canvas.width=this.canvas.clientWidth,this.canvas.height=this.canvas.clientHeight;const{palette:t}=this.mapper;this.ctx.font=`${this.options.fontSize} ${this.options.fontFamily}`;const i=this.font_height;this.ctx.save();const e=document.createElement(\"canvas\"),s=t.length;e.width=s,e.height=1;const h=e.getContext(\"2d\"),c=h.getImageData(0,0,s,1),o=new a.LinearColorMapper({palette:t}).rgba_mapper.v_compute(n.range(0,t.length));c.data.set(o),h.putImageData(c,0,0),this.ctx.drawImage(e,0,2*(this.font_height+1)+1,this.canvas.width,this.canvas.height),this.ctx.restore(),this.ctx.save(),this.ctx.textAlign=\"center\",this.ctx.fillText(this.title,this.canvas.width/2,i+1),this.ctx.restore(),this.ctx.save();const r=n.linspace(0,this.canvas.width,5);r.forEach(((t,e)=>{let s=t;0==e?(s=t+Math.ceil(this.ctx.lineWidth/2),this.ctx.textAlign=\"left\"):e==r.length-1?(s=t-Math.ceil(this.ctx.lineWidth/2),this.ctx.textAlign=\"right\"):this.ctx.textAlign=\"center\",this.ctx.moveTo(s,2*(i+1)),this.ctx.lineTo(s,2*(i+1)+5),this.ctx.stroke(),this.ctx.fillText(`${this.ticks[e]}`,t,2*(i+1))})),this.ctx.restore()}}e.VTKColorBar=c,c.__name__=\"VTKColorBar\"},\n", " \"db7a0079c0\": function _(t,s,i,e,n){e();const a=t(\"tslib\").__importStar(t(\"@bokehjs/core/properties\")),r=t(\"@bokehjs/model\"),c=t(\"2f3fd5db07\"),h=t(\"4eb45e35aa\");class l extends r.Model{constructor(t){super(t)}static init_VTKAxes(){this.define({origin:[a.Array],xticker:[a.Instance],yticker:[a.Instance],zticker:[a.Instance],digits:[a.Number,1],show_grid:[a.Boolean,!0],grid_opacity:[a.Number,.1],axes_opacity:[a.Number,1],fontsize:[a.Number,12]})}get xticks(){return this.xticker?this.xticker.ticks:[]}get yticks(){return this.yticker?this.yticker.ticks:[]}get zticks(){return this.zticker?this.zticker.ticks:[]}get xlabels(){return this.xticker.labels?this.xticker.labels:this.xticks.map((t=>t.toFixed(this.digits)))}get ylabels(){return this.yticker.labels?this.yticker.labels:this.yticks.map((t=>t.toFixed(this.digits)))}get zlabels(){return this.zticker.labels?this.zticker.labels:this.zticks.map((t=>t.toFixed(this.digits)))}_make_grid_lines(t,s,i){const e=[];for(let n=0;n<t-1;n++)for(let t=0;t<s-1;t++){const a=n*s+t+i,r=[5,a,n*s+t+1+i,(n+1)*s+t+1+i,(n+1)*s+t+i,a];e.push(r)}return e}_create_grid_axes(){const t=[];t.push(h.cartesian_product(this.xticks,this.yticks,[this.origin[2]])),t.push(h.cartesian_product([this.origin[0]],this.yticks,this.zticks)),t.push(h.cartesian_product(this.xticks,[this.origin[1]],this.zticks));const s=[];let i=0;s.push(this._make_grid_lines(this.xticks.length,this.yticks.length,i)),i+=this.xticks.length*this.yticks.length,s.push(this._make_grid_lines(this.yticks.length,this.zticks.length,i)),i+=this.yticks.length*this.zticks.length,s.push(this._make_grid_lines(this.xticks.length,this.zticks.length,i));const e=h.vtk({vtkClass:\"vtkPolyData\",points:{vtkClass:\"vtkPoints\",dataType:\"Float32Array\",numberOfComponents:3,values:t.flat(2)},lines:{vtkClass:\"vtkCellArray\",dataType:\"Uint32Array\",values:s.flat(2)}}),n=h.vtkns.Mapper.newInstance(),a=h.vtkns.Actor.newInstance();return n.setInputData(e),a.setMapper(n),a.getProperty().setOpacity(this.grid_opacity),a.setVisibility(this.show_grid),a}create_axes(t){if(null==this.origin)return{psActor:null,axesActor:null,gridActor:null};const s=[this.xticks,this.yticks,this.zticks].map(((t,s)=>{let i=null;switch(s){case 0:i=h.cartesian_product(t,[this.origin[1]],[this.origin[2]]);break;case 1:i=h.cartesian_product([this.origin[0]],t,[this.origin[2]]);break;case 2:i=h.cartesian_product([this.origin[0]],[this.origin[1]],t)}return i})).flat(2),i=h.vtk({vtkClass:\"vtkPolyData\",points:{vtkClass:\"vtkPoints\",dataType:\"Float32Array\",numberOfComponents:3,values:s},lines:{vtkClass:\"vtkCellArray\",dataType:\"Uint32Array\",values:[2,0,this.xticks.length-1,2,this.xticks.length,this.xticks.length+this.yticks.length-1,2,this.xticks.length+this.yticks.length,this.xticks.length+this.yticks.length+this.zticks.length-1]}}),e=h.vtkns.PixelSpaceCallbackMapper.newInstance();e.setInputData(i),e.setUseZValues(!0),e.setCallback(((s,i,n)=>{const a=t.getContext(\"2d\");if(a){const r={height:t.clientHeight*window.devicePixelRatio,width:t.clientWidth*window.devicePixelRatio},h=e.getInputData().getPoints(),l=i.getViewMatrix();c.mat4.transpose(l,l);const o=i.getProjectionMatrix(n,-1,1);c.mat4.transpose(o,o),a.clearRect(0,0,r.width,r.height),s.forEach(((t,s)=>{const i=h.getPoint(s),e=c.vec3.fromValues(i[0],i[1],i[2]);if(c.vec3.transformMat4(e,e,l),e[2]+=.05,c.vec3.transformMat4(e,e,o),e[2]-.001<t[3]){let i;a.font=\"30px serif\",a.textAlign=\"center\",a.textBaseline=\"alphabetic\",a.fillText(\".\",t[0],r.height-t[1]+2),a.font=this.fontsize*window.devicePixelRatio+\"px serif\",a.textAlign=\"right\",a.textBaseline=\"top\",i=s<this.xticks.length?this.xlabels[s]:s>=this.xticks.length&&s<this.xticks.length+this.yticks.length?this.ylabels[s-this.xticks.length]:this.zlabels[s-(this.xticks.length+this.yticks.length)],a.fillText(`${i}`,t[0],r.height-t[1])}}))}}));const n=h.vtkns.Actor.newInstance();n.setMapper(e);const a=h.vtkns.Mapper.newInstance();a.setInputData(i);const r=h.vtkns.Actor.newInstance();r.setMapper(a),r.getProperty().setOpacity(this.axes_opacity);return{psActor:n,axesActor:r,gridActor:this._create_grid_axes()}}}i.VTKAxes=l,l.__name__=\"VTKAxes\",l.__module__=\"panel.models.vtk\",l.init_VTKAxes()},\n", " \"2f3fd5db07\": function _(t,c,a,o,r){o();const _=t(\"tslib\"),m=_.__importStar(t(\"68ca94c15c\"));a.glMatrix=m;const i=_.__importStar(t(\"7c0b8e6048\"));a.mat2=i;const n=_.__importStar(t(\"dc03f0a621\"));a.mat2d=n;const s=_.__importStar(t(\"0285c50a7e\"));a.mat3=s;const p=_.__importStar(t(\"a427635f32\"));a.mat4=p;const S=_.__importStar(t(\"eb06fc032a\"));a.quat=S;const e=_.__importStar(t(\"277615c682\"));a.quat2=e;const f=_.__importStar(t(\"c56d9ff837\"));a.vec2=f;const b=_.__importStar(t(\"2c5eb22089\"));a.vec3=b;const d=_.__importStar(t(\"c1aa33d719\"));a.vec4=d},\n", " \"68ca94c15c\": function _(t,a,r,n,o){n(),r.EPSILON=1e-6,r.ARRAY_TYPE=\"undefined\"!=typeof Float32Array?Float32Array:Array,r.RANDOM=Math.random,r.setMatrixArrayType=function(t){r.ARRAY_TYPE=t};var h=Math.PI/180;r.toRadian=function(t){return t*h},r.equals=function(t,a){return Math.abs(t-a)<=r.EPSILON*Math.max(1,Math.abs(t),Math.abs(a))},Math.hypot||(Math.hypot=function(){for(var t=0,a=arguments.length;a--;)t+=arguments[a]*arguments[a];return Math.sqrt(t)})},\n", " \"7c0b8e6048\": function _(t,n,r,a,u){a();const e=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function o(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=r[0],i=r[1],f=r[2],s=r[3];return t[0]=a*c+e*i,t[1]=u*c+o*i,t[2]=a*f+e*s,t[3]=u*f+o*s,t}function c(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}r.create=function(){var t=new e.ARRAY_TYPE(4);return e.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t},r.clone=function(t){var n=new e.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},r.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t},r.fromValues=function(t,n,r,a){var u=new e.ARRAY_TYPE(4);return u[0]=t,u[1]=n,u[2]=r,u[3]=a,u},r.set=function(t,n,r,a,u){return t[0]=n,t[1]=r,t[2]=a,t[3]=u,t},r.transpose=function(t,n){if(t===n){var r=n[1];t[1]=n[2],t[2]=r}else t[0]=n[0],t[1]=n[2],t[2]=n[1],t[3]=n[3];return t},r.invert=function(t,n){var r=n[0],a=n[1],u=n[2],e=n[3],o=r*e-u*a;return o?(o=1/o,t[0]=e*o,t[1]=-a*o,t[2]=-u*o,t[3]=r*o,t):null},r.adjoint=function(t,n){var r=n[0];return t[0]=n[3],t[1]=-n[1],t[2]=-n[2],t[3]=r,t},r.determinant=function(t){return t[0]*t[3]-t[2]*t[1]},r.multiply=o,r.rotate=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=Math.sin(r),i=Math.cos(r);return t[0]=a*i+e*c,t[1]=u*i+o*c,t[2]=a*-c+e*i,t[3]=u*-c+o*i,t},r.scale=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=r[0],i=r[1];return t[0]=a*c,t[1]=u*c,t[2]=e*i,t[3]=o*i,t},r.fromRotation=function(t,n){var r=Math.sin(n),a=Math.cos(n);return t[0]=a,t[1]=r,t[2]=-r,t[3]=a,t},r.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t},r.str=function(t){return\"mat2(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3])},r.LDU=function(t,n,r,a){return t[2]=a[2]/a[0],r[0]=a[0],r[1]=a[1],r[3]=a[3]-t[2]*r[1],[t,n,r]},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},r.subtract=c,r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},r.equals=function(t,n){var r=t[0],a=t[1],u=t[2],o=t[3],c=n[0],i=n[1],f=n[2],s=n[3];return Math.abs(r-c)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(c))&&Math.abs(a-i)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(i))&&Math.abs(u-f)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(f))&&Math.abs(o-s)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(s))},r.multiplyScalar=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t},r.multiplyScalarAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t[3]=n[3]+r[3]*a,t},r.mul=o,r.sub=c},\n", " \"dc03f0a621\": function _(t,n,a,r,u){r();const o=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function e(t,n,a){var r=n[0],u=n[1],o=n[2],e=n[3],c=n[4],i=n[5],s=a[0],h=a[1],f=a[2],M=a[3],b=a[4],l=a[5];return t[0]=r*s+o*h,t[1]=u*s+e*h,t[2]=r*f+o*M,t[3]=u*f+e*M,t[4]=r*b+o*l+c,t[5]=u*b+e*l+i,t}function c(t,n,a){return t[0]=n[0]-a[0],t[1]=n[1]-a[1],t[2]=n[2]-a[2],t[3]=n[3]-a[3],t[4]=n[4]-a[4],t[5]=n[5]-a[5],t}a.create=function(){var t=new o.ARRAY_TYPE(6);return o.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[4]=0,t[5]=0),t[0]=1,t[3]=1,t},a.clone=function(t){var n=new o.ARRAY_TYPE(6);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n},a.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t},a.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t},a.fromValues=function(t,n,a,r,u,e){var c=new o.ARRAY_TYPE(6);return c[0]=t,c[1]=n,c[2]=a,c[3]=r,c[4]=u,c[5]=e,c},a.set=function(t,n,a,r,u,o,e){return t[0]=n,t[1]=a,t[2]=r,t[3]=u,t[4]=o,t[5]=e,t},a.invert=function(t,n){var a=n[0],r=n[1],u=n[2],o=n[3],e=n[4],c=n[5],i=a*o-r*u;return i?(i=1/i,t[0]=o*i,t[1]=-r*i,t[2]=-u*i,t[3]=a*i,t[4]=(u*c-o*e)*i,t[5]=(r*e-a*c)*i,t):null},a.determinant=function(t){return t[0]*t[3]-t[1]*t[2]},a.multiply=e,a.rotate=function(t,n,a){var r=n[0],u=n[1],o=n[2],e=n[3],c=n[4],i=n[5],s=Math.sin(a),h=Math.cos(a);return t[0]=r*h+o*s,t[1]=u*h+e*s,t[2]=r*-s+o*h,t[3]=u*-s+e*h,t[4]=c,t[5]=i,t},a.scale=function(t,n,a){var r=n[0],u=n[1],o=n[2],e=n[3],c=n[4],i=n[5],s=a[0],h=a[1];return t[0]=r*s,t[1]=u*s,t[2]=o*h,t[3]=e*h,t[4]=c,t[5]=i,t},a.translate=function(t,n,a){var r=n[0],u=n[1],o=n[2],e=n[3],c=n[4],i=n[5],s=a[0],h=a[1];return t[0]=r,t[1]=u,t[2]=o,t[3]=e,t[4]=r*s+o*h+c,t[5]=u*s+e*h+i,t},a.fromRotation=function(t,n){var a=Math.sin(n),r=Math.cos(n);return t[0]=r,t[1]=a,t[2]=-a,t[3]=r,t[4]=0,t[5]=0,t},a.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t[4]=0,t[5]=0,t},a.fromTranslation=function(t,n){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=n[0],t[5]=n[1],t},a.str=function(t){return\"mat2d(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\")\"},a.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],1)},a.add=function(t,n,a){return t[0]=n[0]+a[0],t[1]=n[1]+a[1],t[2]=n[2]+a[2],t[3]=n[3]+a[3],t[4]=n[4]+a[4],t[5]=n[5]+a[5],t},a.subtract=c,a.multiplyScalar=function(t,n,a){return t[0]=n[0]*a,t[1]=n[1]*a,t[2]=n[2]*a,t[3]=n[3]*a,t[4]=n[4]*a,t[5]=n[5]*a,t},a.multiplyScalarAndAdd=function(t,n,a,r){return t[0]=n[0]+a[0]*r,t[1]=n[1]+a[1]*r,t[2]=n[2]+a[2]*r,t[3]=n[3]+a[3]*r,t[4]=n[4]+a[4]*r,t[5]=n[5]+a[5]*r,t},a.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]},a.equals=function(t,n){var a=t[0],r=t[1],u=t[2],e=t[3],c=t[4],i=t[5],s=n[0],h=n[1],f=n[2],M=n[3],b=n[4],l=n[5];return Math.abs(a-s)<=o.EPSILON*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(r-h)<=o.EPSILON*Math.max(1,Math.abs(r),Math.abs(h))&&Math.abs(u-f)<=o.EPSILON*Math.max(1,Math.abs(u),Math.abs(f))&&Math.abs(e-M)<=o.EPSILON*Math.max(1,Math.abs(e),Math.abs(M))&&Math.abs(c-b)<=o.EPSILON*Math.max(1,Math.abs(c),Math.abs(b))&&Math.abs(i-l)<=o.EPSILON*Math.max(1,Math.abs(i),Math.abs(l))},a.mul=e,a.sub=c},\n", " \"0285c50a7e\": function _(t,a,n,r,u){r();const o=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function e(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=n[0],b=n[1],l=n[2],m=n[3],v=n[4],E=n[5],P=n[6],S=n[7],A=n[8];return t[0]=f*r+b*e+l*s,t[1]=f*u+b*i+l*M,t[2]=f*o+b*c+l*h,t[3]=m*r+v*e+E*s,t[4]=m*u+v*i+E*M,t[5]=m*o+v*c+E*h,t[6]=P*r+S*e+A*s,t[7]=P*u+S*i+A*M,t[8]=P*o+S*c+A*h,t}function i(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t[6]=a[6]-n[6],t[7]=a[7]-n[7],t[8]=a[8]-n[8],t}n.create=function(){var t=new o.ARRAY_TYPE(9);return o.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t},n.fromMat4=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[4],t[4]=a[5],t[5]=a[6],t[6]=a[8],t[7]=a[9],t[8]=a[10],t},n.clone=function(t){var a=new o.ARRAY_TYPE(9);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a[8]=t[8],a},n.copy=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t},n.fromValues=function(t,a,n,r,u,e,i,c,s){var M=new o.ARRAY_TYPE(9);return M[0]=t,M[1]=a,M[2]=n,M[3]=r,M[4]=u,M[5]=e,M[6]=i,M[7]=c,M[8]=s,M},n.set=function(t,a,n,r,u,o,e,i,c,s){return t[0]=a,t[1]=n,t[2]=r,t[3]=u,t[4]=o,t[5]=e,t[6]=i,t[7]=c,t[8]=s,t},n.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.transpose=function(t,a){if(t===a){var n=a[1],r=a[2],u=a[5];t[1]=a[3],t[2]=a[6],t[3]=n,t[5]=a[7],t[6]=r,t[7]=u}else t[0]=a[0],t[1]=a[3],t[2]=a[6],t[3]=a[1],t[4]=a[4],t[5]=a[7],t[6]=a[2],t[7]=a[5],t[8]=a[8];return t},n.invert=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8],h=M*e-i*s,f=-M*o+i*c,b=s*o-e*c,l=n*h+r*f+u*b;return l?(l=1/l,t[0]=h*l,t[1]=(-M*r+u*s)*l,t[2]=(i*r-u*e)*l,t[3]=f*l,t[4]=(M*n-u*c)*l,t[5]=(-i*n+u*o)*l,t[6]=b*l,t[7]=(-s*n+r*c)*l,t[8]=(e*n-r*o)*l,t):null},n.adjoint=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8];return t[0]=e*M-i*s,t[1]=u*s-r*M,t[2]=r*i-u*e,t[3]=i*c-o*M,t[4]=n*M-u*c,t[5]=u*o-n*i,t[6]=o*s-e*c,t[7]=r*c-n*s,t[8]=n*e-r*o,t},n.determinant=function(t){var a=t[0],n=t[1],r=t[2],u=t[3],o=t[4],e=t[5],i=t[6],c=t[7],s=t[8];return a*(s*o-e*c)+n*(-s*u+e*i)+r*(c*u-o*i)},n.multiply=e,n.translate=function(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=n[0],b=n[1];return t[0]=r,t[1]=u,t[2]=o,t[3]=e,t[4]=i,t[5]=c,t[6]=f*r+b*e+s,t[7]=f*u+b*i+M,t[8]=f*o+b*c+h,t},n.rotate=function(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=Math.sin(n),b=Math.cos(n);return t[0]=b*r+f*e,t[1]=b*u+f*i,t[2]=b*o+f*c,t[3]=b*e-f*r,t[4]=b*i-f*u,t[5]=b*c-f*o,t[6]=s,t[7]=M,t[8]=h,t},n.scale=function(t,a,n){var r=n[0],u=n[1];return t[0]=r*a[0],t[1]=r*a[1],t[2]=r*a[2],t[3]=u*a[3],t[4]=u*a[4],t[5]=u*a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t},n.fromTranslation=function(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=a[0],t[7]=a[1],t[8]=1,t},n.fromRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=n,t[2]=0,t[3]=-n,t[4]=r,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromScaling=function(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=0,t[4]=a[1],t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromMat2d=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=0,t[3]=a[2],t[4]=a[3],t[5]=0,t[6]=a[4],t[7]=a[5],t[8]=1,t},n.fromQuat=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=n+n,i=r+r,c=u+u,s=n*e,M=r*e,h=r*i,f=u*e,b=u*i,l=u*c,m=o*e,v=o*i,E=o*c;return t[0]=1-h-l,t[3]=M-E,t[6]=f+v,t[1]=M+E,t[4]=1-s-l,t[7]=b-m,t[2]=f-v,t[5]=b+m,t[8]=1-s-h,t},n.normalFromMat4=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8],h=a[9],f=a[10],b=a[11],l=a[12],m=a[13],v=a[14],E=a[15],P=n*i-r*e,S=n*c-u*e,A=n*s-o*e,x=r*c-u*i,d=r*s-o*i,I=u*s-o*c,L=M*m-h*l,N=M*v-f*l,O=M*E-b*l,R=h*v-f*m,p=h*E-b*m,Y=f*E-b*v,y=P*Y-S*p+A*R+x*O-d*N+I*L;return y?(y=1/y,t[0]=(i*Y-c*p+s*R)*y,t[1]=(c*O-e*Y-s*N)*y,t[2]=(e*p-i*O+s*L)*y,t[3]=(u*p-r*Y-o*R)*y,t[4]=(n*Y-u*O+o*N)*y,t[5]=(r*O-n*p-o*L)*y,t[6]=(m*I-v*d+E*x)*y,t[7]=(v*A-l*I-E*S)*y,t[8]=(l*d-m*A+E*P)*y,t):null},n.projection=function(t,a,n){return t[0]=2/a,t[1]=0,t[2]=0,t[3]=0,t[4]=-2/n,t[5]=0,t[6]=-1,t[7]=1,t[8]=1,t},n.str=function(t){return\"mat3(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\", \"+t[8]+\")\"},n.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t[8]=a[8]+n[8],t},n.subtract=i,n.multiplyScalar=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t[8]=a[8]*n,t},n.multiplyScalarAndAdd=function(t,a,n,r){return t[0]=a[0]+n[0]*r,t[1]=a[1]+n[1]*r,t[2]=a[2]+n[2]*r,t[3]=a[3]+n[3]*r,t[4]=a[4]+n[4]*r,t[5]=a[5]+n[5]*r,t[6]=a[6]+n[6]*r,t[7]=a[7]+n[7]*r,t[8]=a[8]+n[8]*r,t},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]&&t[8]===a[8]},n.equals=function(t,a){var n=t[0],r=t[1],u=t[2],e=t[3],i=t[4],c=t[5],s=t[6],M=t[7],h=t[8],f=a[0],b=a[1],l=a[2],m=a[3],v=a[4],E=a[5],P=a[6],S=a[7],A=a[8];return Math.abs(n-f)<=o.EPSILON*Math.max(1,Math.abs(n),Math.abs(f))&&Math.abs(r-b)<=o.EPSILON*Math.max(1,Math.abs(r),Math.abs(b))&&Math.abs(u-l)<=o.EPSILON*Math.max(1,Math.abs(u),Math.abs(l))&&Math.abs(e-m)<=o.EPSILON*Math.max(1,Math.abs(e),Math.abs(m))&&Math.abs(i-v)<=o.EPSILON*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(c-E)<=o.EPSILON*Math.max(1,Math.abs(c),Math.abs(E))&&Math.abs(s-P)<=o.EPSILON*Math.max(1,Math.abs(s),Math.abs(P))&&Math.abs(M-S)<=o.EPSILON*Math.max(1,Math.abs(M),Math.abs(S))&&Math.abs(h-A)<=o.EPSILON*Math.max(1,Math.abs(h),Math.abs(A))},n.mul=e,n.sub=i},\n", " \"a427635f32\": function _(t,a,n,r,h){r();const o=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function M(t,a,n){var r=a[0],h=a[1],o=a[2],u=a[3],M=a[4],s=a[5],e=a[6],i=a[7],c=a[8],f=a[9],b=a[10],l=a[11],m=a[12],v=a[13],P=a[14],E=a[15],S=n[0],I=n[1],O=n[2],L=n[3];return t[0]=S*r+I*M+O*c+L*m,t[1]=S*h+I*s+O*f+L*v,t[2]=S*o+I*e+O*b+L*P,t[3]=S*u+I*i+O*l+L*E,S=n[4],I=n[5],O=n[6],L=n[7],t[4]=S*r+I*M+O*c+L*m,t[5]=S*h+I*s+O*f+L*v,t[6]=S*o+I*e+O*b+L*P,t[7]=S*u+I*i+O*l+L*E,S=n[8],I=n[9],O=n[10],L=n[11],t[8]=S*r+I*M+O*c+L*m,t[9]=S*h+I*s+O*f+L*v,t[10]=S*o+I*e+O*b+L*P,t[11]=S*u+I*i+O*l+L*E,S=n[12],I=n[13],O=n[14],L=n[15],t[12]=S*r+I*M+O*c+L*m,t[13]=S*h+I*s+O*f+L*v,t[14]=S*o+I*e+O*b+L*P,t[15]=S*u+I*i+O*l+L*E,t}function s(t,a,n){var r=a[0],h=a[1],o=a[2],u=a[3],M=r+r,s=h+h,e=o+o,i=r*M,c=r*s,f=r*e,b=h*s,l=h*e,m=o*e,v=u*M,P=u*s,E=u*e;return t[0]=1-(b+m),t[1]=c+E,t[2]=f-P,t[3]=0,t[4]=c-E,t[5]=1-(i+m),t[6]=l+v,t[7]=0,t[8]=f+P,t[9]=l-v,t[10]=1-(i+b),t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}function e(t,a){var n=a[0],r=a[1],h=a[2],o=a[4],u=a[5],M=a[6],s=a[8],e=a[9],i=a[10];return t[0]=Math.hypot(n,r,h),t[1]=Math.hypot(o,u,M),t[2]=Math.hypot(s,e,i),t}function i(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t[6]=a[6]-n[6],t[7]=a[7]-n[7],t[8]=a[8]-n[8],t[9]=a[9]-n[9],t[10]=a[10]-n[10],t[11]=a[11]-n[11],t[12]=a[12]-n[12],t[13]=a[13]-n[13],t[14]=a[14]-n[14],t[15]=a[15]-n[15],t}n.create=function(){var t=new o.ARRAY_TYPE(16);return o.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},n.clone=function(t){var a=new o.ARRAY_TYPE(16);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a[8]=t[8],a[9]=t[9],a[10]=t[10],a[11]=t[11],a[12]=t[12],a[13]=t[13],a[14]=t[14],a[15]=t[15],a},n.copy=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t[9]=a[9],t[10]=a[10],t[11]=a[11],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15],t},n.fromValues=function(t,a,n,r,h,u,M,s,e,i,c,f,b,l,m,v){var P=new o.ARRAY_TYPE(16);return P[0]=t,P[1]=a,P[2]=n,P[3]=r,P[4]=h,P[5]=u,P[6]=M,P[7]=s,P[8]=e,P[9]=i,P[10]=c,P[11]=f,P[12]=b,P[13]=l,P[14]=m,P[15]=v,P},n.set=function(t,a,n,r,h,o,u,M,s,e,i,c,f,b,l,m,v){return t[0]=a,t[1]=n,t[2]=r,t[3]=h,t[4]=o,t[5]=u,t[6]=M,t[7]=s,t[8]=e,t[9]=i,t[10]=c,t[11]=f,t[12]=b,t[13]=l,t[14]=m,t[15]=v,t},n.identity=u,n.transpose=function(t,a){if(t===a){var n=a[1],r=a[2],h=a[3],o=a[6],u=a[7],M=a[11];t[1]=a[4],t[2]=a[8],t[3]=a[12],t[4]=n,t[6]=a[9],t[7]=a[13],t[8]=r,t[9]=o,t[11]=a[14],t[12]=h,t[13]=u,t[14]=M}else t[0]=a[0],t[1]=a[4],t[2]=a[8],t[3]=a[12],t[4]=a[1],t[5]=a[5],t[6]=a[9],t[7]=a[13],t[8]=a[2],t[9]=a[6],t[10]=a[10],t[11]=a[14],t[12]=a[3],t[13]=a[7],t[14]=a[11],t[15]=a[15];return t},n.invert=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=a[4],M=a[5],s=a[6],e=a[7],i=a[8],c=a[9],f=a[10],b=a[11],l=a[12],m=a[13],v=a[14],P=a[15],E=n*M-r*u,S=n*s-h*u,I=n*e-o*u,O=r*s-h*M,L=r*e-o*M,N=h*e-o*s,p=i*m-c*l,R=i*v-f*l,x=i*P-b*l,A=c*v-f*m,y=c*P-b*m,Y=f*P-b*v,g=E*Y-S*y+I*A+O*x-L*R+N*p;return g?(g=1/g,t[0]=(M*Y-s*y+e*A)*g,t[1]=(h*y-r*Y-o*A)*g,t[2]=(m*N-v*L+P*O)*g,t[3]=(f*L-c*N-b*O)*g,t[4]=(s*x-u*Y-e*R)*g,t[5]=(n*Y-h*x+o*R)*g,t[6]=(v*I-l*N-P*S)*g,t[7]=(i*N-f*I+b*S)*g,t[8]=(u*y-M*x+e*p)*g,t[9]=(r*x-n*y-o*p)*g,t[10]=(l*L-m*I+P*E)*g,t[11]=(c*I-i*L-b*E)*g,t[12]=(M*R-u*A-s*p)*g,t[13]=(n*A-r*R+h*p)*g,t[14]=(m*S-l*O-v*E)*g,t[15]=(i*O-c*S+f*E)*g,t):null},n.adjoint=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=a[4],M=a[5],s=a[6],e=a[7],i=a[8],c=a[9],f=a[10],b=a[11],l=a[12],m=a[13],v=a[14],P=a[15];return t[0]=M*(f*P-b*v)-c*(s*P-e*v)+m*(s*b-e*f),t[1]=-(r*(f*P-b*v)-c*(h*P-o*v)+m*(h*b-o*f)),t[2]=r*(s*P-e*v)-M*(h*P-o*v)+m*(h*e-o*s),t[3]=-(r*(s*b-e*f)-M*(h*b-o*f)+c*(h*e-o*s)),t[4]=-(u*(f*P-b*v)-i*(s*P-e*v)+l*(s*b-e*f)),t[5]=n*(f*P-b*v)-i*(h*P-o*v)+l*(h*b-o*f),t[6]=-(n*(s*P-e*v)-u*(h*P-o*v)+l*(h*e-o*s)),t[7]=n*(s*b-e*f)-u*(h*b-o*f)+i*(h*e-o*s),t[8]=u*(c*P-b*m)-i*(M*P-e*m)+l*(M*b-e*c),t[9]=-(n*(c*P-b*m)-i*(r*P-o*m)+l*(r*b-o*c)),t[10]=n*(M*P-e*m)-u*(r*P-o*m)+l*(r*e-o*M),t[11]=-(n*(M*b-e*c)-u*(r*b-o*c)+i*(r*e-o*M)),t[12]=-(u*(c*v-f*m)-i*(M*v-s*m)+l*(M*f-s*c)),t[13]=n*(c*v-f*m)-i*(r*v-h*m)+l*(r*f-h*c),t[14]=-(n*(M*v-s*m)-u*(r*v-h*m)+l*(r*s-h*M)),t[15]=n*(M*f-s*c)-u*(r*f-h*c)+i*(r*s-h*M),t},n.determinant=function(t){var a=t[0],n=t[1],r=t[2],h=t[3],o=t[4],u=t[5],M=t[6],s=t[7],e=t[8],i=t[9],c=t[10],f=t[11],b=t[12],l=t[13],m=t[14],v=t[15];return(a*u-n*o)*(c*v-f*m)-(a*M-r*o)*(i*v-f*l)+(a*s-h*o)*(i*m-c*l)+(n*M-r*u)*(e*v-f*b)-(n*s-h*u)*(e*m-c*b)+(r*s-h*M)*(e*l-i*b)},n.multiply=M,n.translate=function(t,a,n){var r,h,o,u,M,s,e,i,c,f,b,l,m=n[0],v=n[1],P=n[2];return a===t?(t[12]=a[0]*m+a[4]*v+a[8]*P+a[12],t[13]=a[1]*m+a[5]*v+a[9]*P+a[13],t[14]=a[2]*m+a[6]*v+a[10]*P+a[14],t[15]=a[3]*m+a[7]*v+a[11]*P+a[15]):(r=a[0],h=a[1],o=a[2],u=a[3],M=a[4],s=a[5],e=a[6],i=a[7],c=a[8],f=a[9],b=a[10],l=a[11],t[0]=r,t[1]=h,t[2]=o,t[3]=u,t[4]=M,t[5]=s,t[6]=e,t[7]=i,t[8]=c,t[9]=f,t[10]=b,t[11]=l,t[12]=r*m+M*v+c*P+a[12],t[13]=h*m+s*v+f*P+a[13],t[14]=o*m+e*v+b*P+a[14],t[15]=u*m+i*v+l*P+a[15]),t},n.scale=function(t,a,n){var r=n[0],h=n[1],o=n[2];return t[0]=a[0]*r,t[1]=a[1]*r,t[2]=a[2]*r,t[3]=a[3]*r,t[4]=a[4]*h,t[5]=a[5]*h,t[6]=a[6]*h,t[7]=a[7]*h,t[8]=a[8]*o,t[9]=a[9]*o,t[10]=a[10]*o,t[11]=a[11]*o,t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15],t},n.rotate=function(t,a,n,r){var h,u,M,s,e,i,c,f,b,l,m,v,P,E,S,I,O,L,N,p,R,x,A,y,Y=r[0],g=r[1],T=r[2],d=Math.hypot(Y,g,T);return d<o.EPSILON?null:(Y*=d=1/d,g*=d,T*=d,h=Math.sin(n),M=1-(u=Math.cos(n)),s=a[0],e=a[1],i=a[2],c=a[3],f=a[4],b=a[5],l=a[6],m=a[7],v=a[8],P=a[9],E=a[10],S=a[11],I=Y*Y*M+u,O=g*Y*M+T*h,L=T*Y*M-g*h,N=Y*g*M-T*h,p=g*g*M+u,R=T*g*M+Y*h,x=Y*T*M+g*h,A=g*T*M-Y*h,y=T*T*M+u,t[0]=s*I+f*O+v*L,t[1]=e*I+b*O+P*L,t[2]=i*I+l*O+E*L,t[3]=c*I+m*O+S*L,t[4]=s*N+f*p+v*R,t[5]=e*N+b*p+P*R,t[6]=i*N+l*p+E*R,t[7]=c*N+m*p+S*R,t[8]=s*x+f*A+v*y,t[9]=e*x+b*A+P*y,t[10]=i*x+l*A+E*y,t[11]=c*x+m*A+S*y,a!==t&&(t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t)},n.rotateX=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[4],u=a[5],M=a[6],s=a[7],e=a[8],i=a[9],c=a[10],f=a[11];return a!==t&&(t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[4]=o*h+e*r,t[5]=u*h+i*r,t[6]=M*h+c*r,t[7]=s*h+f*r,t[8]=e*h-o*r,t[9]=i*h-u*r,t[10]=c*h-M*r,t[11]=f*h-s*r,t},n.rotateY=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[0],u=a[1],M=a[2],s=a[3],e=a[8],i=a[9],c=a[10],f=a[11];return a!==t&&(t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[0]=o*h-e*r,t[1]=u*h-i*r,t[2]=M*h-c*r,t[3]=s*h-f*r,t[8]=o*r+e*h,t[9]=u*r+i*h,t[10]=M*r+c*h,t[11]=s*r+f*h,t},n.rotateZ=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[0],u=a[1],M=a[2],s=a[3],e=a[4],i=a[5],c=a[6],f=a[7];return a!==t&&(t[8]=a[8],t[9]=a[9],t[10]=a[10],t[11]=a[11],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[0]=o*h+e*r,t[1]=u*h+i*r,t[2]=M*h+c*r,t[3]=s*h+f*r,t[4]=e*h-o*r,t[5]=i*h-u*r,t[6]=c*h-M*r,t[7]=f*h-s*r,t},n.fromTranslation=function(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=a[0],t[13]=a[1],t[14]=a[2],t[15]=1,t},n.fromScaling=function(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=a[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotation=function(t,a,n){var r,h,u,M=n[0],s=n[1],e=n[2],i=Math.hypot(M,s,e);return i<o.EPSILON?null:(M*=i=1/i,s*=i,e*=i,r=Math.sin(a),u=1-(h=Math.cos(a)),t[0]=M*M*u+h,t[1]=s*M*u+e*r,t[2]=e*M*u-s*r,t[3]=0,t[4]=M*s*u-e*r,t[5]=s*s*u+h,t[6]=e*s*u+M*r,t[7]=0,t[8]=M*e*u+s*r,t[9]=s*e*u-M*r,t[10]=e*e*u+h,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)},n.fromXRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=n,t[7]=0,t[8]=0,t[9]=-n,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromYRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=0,t[2]=-n,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=n,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromZRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=n,t[2]=0,t[3]=0,t[4]=-n,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotationTranslation=s,n.fromQuat2=function(t,a){var n=new o.ARRAY_TYPE(3),r=-a[0],h=-a[1],u=-a[2],M=a[3],e=a[4],i=a[5],c=a[6],f=a[7],b=r*r+h*h+u*u+M*M;return b>0?(n[0]=2*(e*M+f*r+i*u-c*h)/b,n[1]=2*(i*M+f*h+c*r-e*u)/b,n[2]=2*(c*M+f*u+e*h-i*r)/b):(n[0]=2*(e*M+f*r+i*u-c*h),n[1]=2*(i*M+f*h+c*r-e*u),n[2]=2*(c*M+f*u+e*h-i*r)),s(t,a,n),t},n.getTranslation=function(t,a){return t[0]=a[12],t[1]=a[13],t[2]=a[14],t},n.getScaling=e,n.getRotation=function(t,a){var n=new o.ARRAY_TYPE(3);e(n,a);var r=1/n[0],h=1/n[1],u=1/n[2],M=a[0]*r,s=a[1]*h,i=a[2]*u,c=a[4]*r,f=a[5]*h,b=a[6]*u,l=a[8]*r,m=a[9]*h,v=a[10]*u,P=M+f+v,E=0;return P>0?(E=2*Math.sqrt(P+1),t[3]=.25*E,t[0]=(b-m)/E,t[1]=(l-i)/E,t[2]=(s-c)/E):M>f&&M>v?(E=2*Math.sqrt(1+M-f-v),t[3]=(b-m)/E,t[0]=.25*E,t[1]=(s+c)/E,t[2]=(l+i)/E):f>v?(E=2*Math.sqrt(1+f-M-v),t[3]=(l-i)/E,t[0]=(s+c)/E,t[1]=.25*E,t[2]=(b+m)/E):(E=2*Math.sqrt(1+v-M-f),t[3]=(s-c)/E,t[0]=(l+i)/E,t[1]=(b+m)/E,t[2]=.25*E),t},n.fromRotationTranslationScale=function(t,a,n,r){var h=a[0],o=a[1],u=a[2],M=a[3],s=h+h,e=o+o,i=u+u,c=h*s,f=h*e,b=h*i,l=o*e,m=o*i,v=u*i,P=M*s,E=M*e,S=M*i,I=r[0],O=r[1],L=r[2];return t[0]=(1-(l+v))*I,t[1]=(f+S)*I,t[2]=(b-E)*I,t[3]=0,t[4]=(f-S)*O,t[5]=(1-(c+v))*O,t[6]=(m+P)*O,t[7]=0,t[8]=(b+E)*L,t[9]=(m-P)*L,t[10]=(1-(c+l))*L,t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t},n.fromRotationTranslationScaleOrigin=function(t,a,n,r,h){var o=a[0],u=a[1],M=a[2],s=a[3],e=o+o,i=u+u,c=M+M,f=o*e,b=o*i,l=o*c,m=u*i,v=u*c,P=M*c,E=s*e,S=s*i,I=s*c,O=r[0],L=r[1],N=r[2],p=h[0],R=h[1],x=h[2],A=(1-(m+P))*O,y=(b+I)*O,Y=(l-S)*O,g=(b-I)*L,T=(1-(f+P))*L,d=(v+E)*L,_=(l+S)*N,q=(v-E)*N,w=(1-(f+m))*N;return t[0]=A,t[1]=y,t[2]=Y,t[3]=0,t[4]=g,t[5]=T,t[6]=d,t[7]=0,t[8]=_,t[9]=q,t[10]=w,t[11]=0,t[12]=n[0]+p-(A*p+g*R+_*x),t[13]=n[1]+R-(y*p+T*R+q*x),t[14]=n[2]+x-(Y*p+d*R+w*x),t[15]=1,t},n.fromQuat=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=n+n,M=r+r,s=h+h,e=n*u,i=r*u,c=r*M,f=h*u,b=h*M,l=h*s,m=o*u,v=o*M,P=o*s;return t[0]=1-c-l,t[1]=i+P,t[2]=f-v,t[3]=0,t[4]=i-P,t[5]=1-e-l,t[6]=b+m,t[7]=0,t[8]=f+v,t[9]=b-m,t[10]=1-e-c,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.frustum=function(t,a,n,r,h,o,u){var M=1/(n-a),s=1/(h-r),e=1/(o-u);return t[0]=2*o*M,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*o*s,t[6]=0,t[7]=0,t[8]=(n+a)*M,t[9]=(h+r)*s,t[10]=(u+o)*e,t[11]=-1,t[12]=0,t[13]=0,t[14]=u*o*2*e,t[15]=0,t},n.perspective=function(t,a,n,r,h){var o,u=1/Math.tan(a/2);return t[0]=u/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=u,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=h&&h!==1/0?(o=1/(r-h),t[10]=(h+r)*o,t[14]=2*h*r*o):(t[10]=-1,t[14]=-2*r),t},n.perspectiveFromFieldOfView=function(t,a,n,r){var h=Math.tan(a.upDegrees*Math.PI/180),o=Math.tan(a.downDegrees*Math.PI/180),u=Math.tan(a.leftDegrees*Math.PI/180),M=Math.tan(a.rightDegrees*Math.PI/180),s=2/(u+M),e=2/(h+o);return t[0]=s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e,t[6]=0,t[7]=0,t[8]=-(u-M)*s*.5,t[9]=(h-o)*e*.5,t[10]=r/(n-r),t[11]=-1,t[12]=0,t[13]=0,t[14]=r*n/(n-r),t[15]=0,t},n.ortho=function(t,a,n,r,h,o,u){var M=1/(a-n),s=1/(r-h),e=1/(o-u);return t[0]=-2*M,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*s,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*e,t[11]=0,t[12]=(a+n)*M,t[13]=(h+r)*s,t[14]=(u+o)*e,t[15]=1,t},n.lookAt=function(t,a,n,r){var h,M,s,e,i,c,f,b,l,m,v=a[0],P=a[1],E=a[2],S=r[0],I=r[1],O=r[2],L=n[0],N=n[1],p=n[2];return Math.abs(v-L)<o.EPSILON&&Math.abs(P-N)<o.EPSILON&&Math.abs(E-p)<o.EPSILON?u(t):(f=v-L,b=P-N,l=E-p,h=I*(l*=m=1/Math.hypot(f,b,l))-O*(b*=m),M=O*(f*=m)-S*l,s=S*b-I*f,(m=Math.hypot(h,M,s))?(h*=m=1/m,M*=m,s*=m):(h=0,M=0,s=0),e=b*s-l*M,i=l*h-f*s,c=f*M-b*h,(m=Math.hypot(e,i,c))?(e*=m=1/m,i*=m,c*=m):(e=0,i=0,c=0),t[0]=h,t[1]=e,t[2]=f,t[3]=0,t[4]=M,t[5]=i,t[6]=b,t[7]=0,t[8]=s,t[9]=c,t[10]=l,t[11]=0,t[12]=-(h*v+M*P+s*E),t[13]=-(e*v+i*P+c*E),t[14]=-(f*v+b*P+l*E),t[15]=1,t)},n.targetTo=function(t,a,n,r){var h=a[0],o=a[1],u=a[2],M=r[0],s=r[1],e=r[2],i=h-n[0],c=o-n[1],f=u-n[2],b=i*i+c*c+f*f;b>0&&(i*=b=1/Math.sqrt(b),c*=b,f*=b);var l=s*f-e*c,m=e*i-M*f,v=M*c-s*i;return(b=l*l+m*m+v*v)>0&&(l*=b=1/Math.sqrt(b),m*=b,v*=b),t[0]=l,t[1]=m,t[2]=v,t[3]=0,t[4]=c*v-f*m,t[5]=f*l-i*v,t[6]=i*m-c*l,t[7]=0,t[8]=i,t[9]=c,t[10]=f,t[11]=0,t[12]=h,t[13]=o,t[14]=u,t[15]=1,t},n.str=function(t){return\"mat4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\", \"+t[8]+\", \"+t[9]+\", \"+t[10]+\", \"+t[11]+\", \"+t[12]+\", \"+t[13]+\", \"+t[14]+\", \"+t[15]+\")\"},n.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15])},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t[8]=a[8]+n[8],t[9]=a[9]+n[9],t[10]=a[10]+n[10],t[11]=a[11]+n[11],t[12]=a[12]+n[12],t[13]=a[13]+n[13],t[14]=a[14]+n[14],t[15]=a[15]+n[15],t},n.subtract=i,n.multiplyScalar=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t[8]=a[8]*n,t[9]=a[9]*n,t[10]=a[10]*n,t[11]=a[11]*n,t[12]=a[12]*n,t[13]=a[13]*n,t[14]=a[14]*n,t[15]=a[15]*n,t},n.multiplyScalarAndAdd=function(t,a,n,r){return t[0]=a[0]+n[0]*r,t[1]=a[1]+n[1]*r,t[2]=a[2]+n[2]*r,t[3]=a[3]+n[3]*r,t[4]=a[4]+n[4]*r,t[5]=a[5]+n[5]*r,t[6]=a[6]+n[6]*r,t[7]=a[7]+n[7]*r,t[8]=a[8]+n[8]*r,t[9]=a[9]+n[9]*r,t[10]=a[10]+n[10]*r,t[11]=a[11]+n[11]*r,t[12]=a[12]+n[12]*r,t[13]=a[13]+n[13]*r,t[14]=a[14]+n[14]*r,t[15]=a[15]+n[15]*r,t},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]&&t[8]===a[8]&&t[9]===a[9]&&t[10]===a[10]&&t[11]===a[11]&&t[12]===a[12]&&t[13]===a[13]&&t[14]===a[14]&&t[15]===a[15]},n.equals=function(t,a){var n=t[0],r=t[1],h=t[2],u=t[3],M=t[4],s=t[5],e=t[6],i=t[7],c=t[8],f=t[9],b=t[10],l=t[11],m=t[12],v=t[13],P=t[14],E=t[15],S=a[0],I=a[1],O=a[2],L=a[3],N=a[4],p=a[5],R=a[6],x=a[7],A=a[8],y=a[9],Y=a[10],g=a[11],T=a[12],d=a[13],_=a[14],q=a[15];return Math.abs(n-S)<=o.EPSILON*Math.max(1,Math.abs(n),Math.abs(S))&&Math.abs(r-I)<=o.EPSILON*Math.max(1,Math.abs(r),Math.abs(I))&&Math.abs(h-O)<=o.EPSILON*Math.max(1,Math.abs(h),Math.abs(O))&&Math.abs(u-L)<=o.EPSILON*Math.max(1,Math.abs(u),Math.abs(L))&&Math.abs(M-N)<=o.EPSILON*Math.max(1,Math.abs(M),Math.abs(N))&&Math.abs(s-p)<=o.EPSILON*Math.max(1,Math.abs(s),Math.abs(p))&&Math.abs(e-R)<=o.EPSILON*Math.max(1,Math.abs(e),Math.abs(R))&&Math.abs(i-x)<=o.EPSILON*Math.max(1,Math.abs(i),Math.abs(x))&&Math.abs(c-A)<=o.EPSILON*Math.max(1,Math.abs(c),Math.abs(A))&&Math.abs(f-y)<=o.EPSILON*Math.max(1,Math.abs(f),Math.abs(y))&&Math.abs(b-Y)<=o.EPSILON*Math.max(1,Math.abs(b),Math.abs(Y))&&Math.abs(l-g)<=o.EPSILON*Math.max(1,Math.abs(l),Math.abs(g))&&Math.abs(m-T)<=o.EPSILON*Math.max(1,Math.abs(m),Math.abs(T))&&Math.abs(v-d)<=o.EPSILON*Math.max(1,Math.abs(v),Math.abs(d))&&Math.abs(P-_)<=o.EPSILON*Math.max(1,Math.abs(P),Math.abs(_))&&Math.abs(E-q)<=o.EPSILON*Math.max(1,Math.abs(E),Math.abs(q))},n.mul=M,n.sub=i},\n", " \"eb06fc032a\": function _(t,a,r,n,e){n();const o=t(\"tslib\"),s=o.__importStar(t(\"68ca94c15c\")),u=o.__importStar(t(\"0285c50a7e\")),c=o.__importStar(t(\"2c5eb22089\")),i=o.__importStar(t(\"c1aa33d719\"));function h(){var t=new s.ARRAY_TYPE(4);return s.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function M(t,a,r){r*=.5;var n=Math.sin(r);return t[0]=n*a[0],t[1]=n*a[1],t[2]=n*a[2],t[3]=Math.cos(r),t}function l(t,a,r){var n=a[0],e=a[1],o=a[2],s=a[3],u=r[0],c=r[1],i=r[2],h=r[3];return t[0]=n*h+s*u+e*i-o*c,t[1]=e*h+s*c+o*u-n*i,t[2]=o*h+s*i+n*c-e*u,t[3]=s*h-n*u-e*c-o*i,t}function f(t,a){var r=a[0],n=a[1],e=a[2],o=a[3],s=Math.sqrt(r*r+n*n+e*e),u=Math.exp(o),c=s>0?u*Math.sin(s)/s:0;return t[0]=r*c,t[1]=n*c,t[2]=e*c,t[3]=u*Math.cos(s),t}function v(t,a){var r=a[0],n=a[1],e=a[2],o=a[3],s=Math.sqrt(r*r+n*n+e*e),u=s>0?Math.atan2(s,o)/s:0;return t[0]=r*u,t[1]=n*u,t[2]=e*u,t[3]=.5*Math.log(r*r+n*n+e*e+o*o),t}function m(t,a,r,n){var e,o,u,c,i,h=a[0],M=a[1],l=a[2],f=a[3],v=r[0],m=r[1],q=r[2],d=r[3];return(o=h*v+M*m+l*q+f*d)<0&&(o=-o,v=-v,m=-m,q=-q,d=-d),1-o>s.EPSILON?(e=Math.acos(o),u=Math.sin(e),c=Math.sin((1-n)*e)/u,i=Math.sin(n*e)/u):(c=1-n,i=n),t[0]=c*h+i*v,t[1]=c*M+i*m,t[2]=c*l+i*q,t[3]=c*f+i*d,t}function q(t,a){var r,n=a[0]+a[4]+a[8];if(n>0)r=Math.sqrt(n+1),t[3]=.5*r,r=.5/r,t[0]=(a[5]-a[7])*r,t[1]=(a[6]-a[2])*r,t[2]=(a[1]-a[3])*r;else{var e=0;a[4]>a[0]&&(e=1),a[8]>a[3*e+e]&&(e=2);var o=(e+1)%3,s=(e+2)%3;r=Math.sqrt(a[3*e+e]-a[3*o+o]-a[3*s+s]+1),t[e]=.5*r,r=.5/r,t[3]=(a[3*o+s]-a[3*s+o])*r,t[o]=(a[3*o+e]+a[3*e+o])*r,t[s]=(a[3*s+e]+a[3*e+s])*r}return t}var d,p,A,g,_,P;r.create=h,r.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t},r.setAxisAngle=M,r.getAxisAngle=function(t,a){var r=2*Math.acos(a[3]),n=Math.sin(r/2);return n>s.EPSILON?(t[0]=a[0]/n,t[1]=a[1]/n,t[2]=a[2]/n):(t[0]=1,t[1]=0,t[2]=0),r},r.getAngle=function(t,a){var n=r.dot(t,a);return Math.acos(2*n*n-1)},r.multiply=l,r.rotateX=function(t,a,r){r*=.5;var n=a[0],e=a[1],o=a[2],s=a[3],u=Math.sin(r),c=Math.cos(r);return t[0]=n*c+s*u,t[1]=e*c+o*u,t[2]=o*c-e*u,t[3]=s*c-n*u,t},r.rotateY=function(t,a,r){r*=.5;var n=a[0],e=a[1],o=a[2],s=a[3],u=Math.sin(r),c=Math.cos(r);return t[0]=n*c-o*u,t[1]=e*c+s*u,t[2]=o*c+n*u,t[3]=s*c-e*u,t},r.rotateZ=function(t,a,r){r*=.5;var n=a[0],e=a[1],o=a[2],s=a[3],u=Math.sin(r),c=Math.cos(r);return t[0]=n*c+e*u,t[1]=e*c-n*u,t[2]=o*c+s*u,t[3]=s*c-o*u,t},r.calculateW=function(t,a){var r=a[0],n=a[1],e=a[2];return t[0]=r,t[1]=n,t[2]=e,t[3]=Math.sqrt(Math.abs(1-r*r-n*n-e*e)),t},r.exp=f,r.ln=v,r.pow=function(t,a,n){return v(t,a),r.scale(t,t,n),f(t,t),t},r.slerp=m,r.random=function(t){var a=s.RANDOM(),r=s.RANDOM(),n=s.RANDOM(),e=Math.sqrt(1-a),o=Math.sqrt(a);return t[0]=e*Math.sin(2*Math.PI*r),t[1]=e*Math.cos(2*Math.PI*r),t[2]=o*Math.sin(2*Math.PI*n),t[3]=o*Math.cos(2*Math.PI*n),t},r.invert=function(t,a){var r=a[0],n=a[1],e=a[2],o=a[3],s=r*r+n*n+e*e+o*o,u=s?1/s:0;return t[0]=-r*u,t[1]=-n*u,t[2]=-e*u,t[3]=o*u,t},r.conjugate=function(t,a){return t[0]=-a[0],t[1]=-a[1],t[2]=-a[2],t[3]=a[3],t},r.fromMat3=q,r.fromEuler=function(t,a,r,n){var e=.5*Math.PI/180;a*=e,r*=e,n*=e;var o=Math.sin(a),s=Math.cos(a),u=Math.sin(r),c=Math.cos(r),i=Math.sin(n),h=Math.cos(n);return t[0]=o*c*h-s*u*i,t[1]=s*u*h+o*c*i,t[2]=s*c*i-o*u*h,t[3]=s*c*h+o*u*i,t},r.str=function(t){return\"quat(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.clone=i.clone,r.fromValues=i.fromValues,r.copy=i.copy,r.set=i.set,r.add=i.add,r.mul=l,r.scale=i.scale,r.dot=i.dot,r.lerp=i.lerp,r.length=i.length,r.len=r.length,r.squaredLength=i.squaredLength,r.sqrLen=r.squaredLength,r.normalize=i.normalize,r.exactEquals=i.exactEquals,r.equals=i.equals,r.rotationTo=(d=c.create(),p=c.fromValues(1,0,0),A=c.fromValues(0,1,0),function(t,a,n){var e=c.dot(a,n);return e<-.999999?(c.cross(d,p,a),c.len(d)<1e-6&&c.cross(d,A,a),c.normalize(d,d),M(t,d,Math.PI),t):e>.999999?(t[0]=0,t[1]=0,t[2]=0,t[3]=1,t):(c.cross(d,a,n),t[0]=d[0],t[1]=d[1],t[2]=d[2],t[3]=1+e,r.normalize(t,t))}),r.sqlerp=(g=h(),_=h(),function(t,a,r,n,e,o){return m(g,a,e,o),m(_,r,n,o),m(t,g,_,2*o*(1-o)),t}),r.setAxes=(P=u.create(),function(t,a,n,e){return P[0]=n[0],P[3]=n[1],P[6]=n[2],P[1]=e[0],P[4]=e[1],P[7]=e[2],P[2]=-a[0],P[5]=-a[1],P[8]=-a[2],r.normalize(t,q(t,P))})},\n", " \"2c5eb22089\": function _(t,n,r,a,u){a();const e=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function o(){var t=new e.ARRAY_TYPE(3);return e.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function i(t){var n=t[0],r=t[1],a=t[2];return Math.hypot(n,r,a)}function c(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t}function h(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t}function M(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t}function s(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2];return Math.hypot(r,a,u)}function f(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2];return r*r+a*a+u*u}function v(t){var n=t[0],r=t[1],a=t[2];return n*n+r*r+a*a}function l(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}var m;r.create=o,r.clone=function(t){var n=new e.ARRAY_TYPE(3);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n},r.length=i,r.fromValues=function(t,n,r){var a=new e.ARRAY_TYPE(3);return a[0]=t,a[1]=n,a[2]=r,a},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t},r.set=function(t,n,r,a){return t[0]=n,t[1]=r,t[2]=a,t},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t},r.subtract=c,r.multiply=h,r.divide=M,r.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t},r.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t},r.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t},r.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t},r.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t},r.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t},r.scaleAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t},r.distance=s,r.squaredDistance=f,r.squaredLength=v,r.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t},r.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t},r.normalize=function(t,n){var r=n[0],a=n[1],u=n[2],e=r*r+a*a+u*u;return e>0&&(e=1/Math.sqrt(e)),t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t},r.dot=l,r.cross=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[0],i=r[1],c=r[2];return t[0]=u*c-e*i,t[1]=e*o-a*c,t[2]=a*i-u*o,t},r.lerp=function(t,n,r,a){var u=n[0],e=n[1],o=n[2];return t[0]=u+a*(r[0]-u),t[1]=e+a*(r[1]-e),t[2]=o+a*(r[2]-o),t},r.hermite=function(t,n,r,a,u,e){var o=e*e,i=o*(2*e-3)+1,c=o*(e-2)+e,h=o*(e-1),M=o*(3-2*e);return t[0]=n[0]*i+r[0]*c+a[0]*h+u[0]*M,t[1]=n[1]*i+r[1]*c+a[1]*h+u[1]*M,t[2]=n[2]*i+r[2]*c+a[2]*h+u[2]*M,t},r.bezier=function(t,n,r,a,u,e){var o=1-e,i=o*o,c=e*e,h=i*o,M=3*e*i,s=3*c*o,f=c*e;return t[0]=n[0]*h+r[0]*M+a[0]*s+u[0]*f,t[1]=n[1]*h+r[1]*M+a[1]*s+u[1]*f,t[2]=n[2]*h+r[2]*M+a[2]*s+u[2]*f,t},r.random=function(t,n){n=n||1;var r=2*e.RANDOM()*Math.PI,a=2*e.RANDOM()-1,u=Math.sqrt(1-a*a)*n;return t[0]=Math.cos(r)*u,t[1]=Math.sin(r)*u,t[2]=a*n,t},r.transformMat4=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[3]*a+r[7]*u+r[11]*e+r[15];return o=o||1,t[0]=(r[0]*a+r[4]*u+r[8]*e+r[12])/o,t[1]=(r[1]*a+r[5]*u+r[9]*e+r[13])/o,t[2]=(r[2]*a+r[6]*u+r[10]*e+r[14])/o,t},r.transformMat3=function(t,n,r){var a=n[0],u=n[1],e=n[2];return t[0]=a*r[0]+u*r[3]+e*r[6],t[1]=a*r[1]+u*r[4]+e*r[7],t[2]=a*r[2]+u*r[5]+e*r[8],t},r.transformQuat=function(t,n,r){var a=r[0],u=r[1],e=r[2],o=r[3],i=n[0],c=n[1],h=n[2],M=u*h-e*c,s=e*i-a*h,f=a*c-u*i,v=u*f-e*s,l=e*M-a*f,m=a*s-u*M,d=2*o;return M*=d,s*=d,f*=d,v*=2,l*=2,m*=2,t[0]=i+M+v,t[1]=c+s+l,t[2]=h+f+m,t},r.rotateX=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[0],e[1]=u[1]*Math.cos(a)-u[2]*Math.sin(a),e[2]=u[1]*Math.sin(a)+u[2]*Math.cos(a),t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.rotateY=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[2]*Math.sin(a)+u[0]*Math.cos(a),e[1]=u[1],e[2]=u[2]*Math.cos(a)-u[0]*Math.sin(a),t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.rotateZ=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[0]*Math.cos(a)-u[1]*Math.sin(a),e[1]=u[0]*Math.sin(a)+u[1]*Math.cos(a),e[2]=u[2],t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.angle=function(t,n){var r=t[0],a=t[1],u=t[2],e=n[0],o=n[1],i=n[2],c=Math.sqrt(r*r+a*a+u*u)*Math.sqrt(e*e+o*o+i*i),h=c&&l(t,n)/c;return Math.acos(Math.min(Math.max(h,-1),1))},r.zero=function(t){return t[0]=0,t[1]=0,t[2]=0,t},r.str=function(t){return\"vec3(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\")\"},r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]},r.equals=function(t,n){var r=t[0],a=t[1],u=t[2],o=n[0],i=n[1],c=n[2];return Math.abs(r-o)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(a-i)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(i))&&Math.abs(u-c)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(c))},r.sub=c,r.mul=h,r.div=M,r.dist=s,r.sqrDist=f,r.len=i,r.sqrLen=v,r.forEach=(m=o(),function(t,n,r,a,u,e){var o,i;for(n||(n=3),r||(r=0),i=a?Math.min(a*n+r,t.length):t.length,o=r;o<i;o+=n)m[0]=t[o],m[1]=t[o+1],m[2]=t[o+2],u(m,m,e),t[o]=m[0],t[o+1]=m[1],t[o+2]=m[2];return t})},\n", " \"c1aa33d719\": function _(t,n,r,a,u){a();const e=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function o(){var t=new e.ARRAY_TYPE(4);return e.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t}function i(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}function c(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t[3]=n[3]*r[3],t}function h(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t[3]=n[3]/r[3],t}function M(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2],e=n[3]-t[3];return Math.hypot(r,a,u,e)}function f(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2],e=n[3]-t[3];return r*r+a*a+u*u+e*e}function s(t){var n=t[0],r=t[1],a=t[2],u=t[3];return Math.hypot(n,r,a,u)}function l(t){var n=t[0],r=t[1],a=t[2],u=t[3];return n*n+r*r+a*a+u*u}var m;r.create=o,r.clone=function(t){var n=new e.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},r.fromValues=function(t,n,r,a){var u=new e.ARRAY_TYPE(4);return u[0]=t,u[1]=n,u[2]=r,u[3]=a,u},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},r.set=function(t,n,r,a,u){return t[0]=n,t[1]=r,t[2]=a,t[3]=u,t},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},r.subtract=i,r.multiply=c,r.divide=h,r.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t[3]=Math.ceil(n[3]),t},r.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t[3]=Math.floor(n[3]),t},r.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t[3]=Math.min(n[3],r[3]),t},r.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t[3]=Math.max(n[3],r[3]),t},r.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t[3]=Math.round(n[3]),t},r.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t},r.scaleAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t[3]=n[3]+r[3]*a,t},r.distance=M,r.squaredDistance=f,r.length=s,r.squaredLength=l,r.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t[3]=-n[3],t},r.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t[3]=1/n[3],t},r.normalize=function(t,n){var r=n[0],a=n[1],u=n[2],e=n[3],o=r*r+a*a+u*u+e*e;return o>0&&(o=1/Math.sqrt(o)),t[0]=r*o,t[1]=a*o,t[2]=u*o,t[3]=e*o,t},r.dot=function(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]+t[3]*n[3]},r.cross=function(t,n,r,a){var u=r[0]*a[1]-r[1]*a[0],e=r[0]*a[2]-r[2]*a[0],o=r[0]*a[3]-r[3]*a[0],i=r[1]*a[2]-r[2]*a[1],c=r[1]*a[3]-r[3]*a[1],h=r[2]*a[3]-r[3]*a[2],M=n[0],f=n[1],s=n[2],l=n[3];return t[0]=f*h-s*c+l*i,t[1]=-M*h+s*o-l*e,t[2]=M*c-f*o+l*u,t[3]=-M*i+f*e-s*u,t},r.lerp=function(t,n,r,a){var u=n[0],e=n[1],o=n[2],i=n[3];return t[0]=u+a*(r[0]-u),t[1]=e+a*(r[1]-e),t[2]=o+a*(r[2]-o),t[3]=i+a*(r[3]-i),t},r.random=function(t,n){var r,a,u,o,i,c;n=n||1;do{i=(r=2*e.RANDOM()-1)*r+(a=2*e.RANDOM()-1)*a}while(i>=1);do{c=(u=2*e.RANDOM()-1)*u+(o=2*e.RANDOM()-1)*o}while(c>=1);var h=Math.sqrt((1-i)/c);return t[0]=n*r,t[1]=n*a,t[2]=n*u*h,t[3]=n*o*h,t},r.transformMat4=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3];return t[0]=r[0]*a+r[4]*u+r[8]*e+r[12]*o,t[1]=r[1]*a+r[5]*u+r[9]*e+r[13]*o,t[2]=r[2]*a+r[6]*u+r[10]*e+r[14]*o,t[3]=r[3]*a+r[7]*u+r[11]*e+r[15]*o,t},r.transformQuat=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[0],i=r[1],c=r[2],h=r[3],M=h*a+i*e-c*u,f=h*u+c*a-o*e,s=h*e+o*u-i*a,l=-o*a-i*u-c*e;return t[0]=M*h+l*-o+f*-c-s*-i,t[1]=f*h+l*-i+s*-o-M*-c,t[2]=s*h+l*-c+M*-i-f*-o,t[3]=n[3],t},r.zero=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t},r.str=function(t){return\"vec4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},r.equals=function(t,n){var r=t[0],a=t[1],u=t[2],o=t[3],i=n[0],c=n[1],h=n[2],M=n[3];return Math.abs(r-i)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(i))&&Math.abs(a-c)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(c))&&Math.abs(u-h)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(h))&&Math.abs(o-M)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(M))},r.sub=i,r.mul=c,r.div=h,r.dist=M,r.sqrDist=f,r.len=s,r.sqrLen=l,r.forEach=(m=o(),function(t,n,r,a,u,e){var o,i;for(n||(n=4),r||(r=0),i=a?Math.min(a*n+r,t.length):t.length,o=r;o<i;o+=n)m[0]=t[o],m[1]=t[o+1],m[2]=t[o+2],m[3]=t[o+3],u(m,m,e),t[o]=m[0],t[o+1]=m[1],t[o+2]=m[2],t[o+3]=m[3];return t})},\n", " \"277615c682\": function _(t,a,n,r,e){r();const u=t(\"tslib\"),o=u.__importStar(t(\"68ca94c15c\")),i=u.__importStar(t(\"eb06fc032a\")),s=u.__importStar(t(\"a427635f32\"));function c(t,a,n){var r=.5*n[0],e=.5*n[1],u=.5*n[2],o=a[0],i=a[1],s=a[2],c=a[3];return t[0]=o,t[1]=i,t[2]=s,t[3]=c,t[4]=r*c+e*s-u*i,t[5]=e*c+u*o-r*s,t[6]=u*c+r*i-e*o,t[7]=-r*o-e*i-u*s,t}function h(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t}function f(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=n[4],s=n[5],c=n[6],h=n[7],f=a[4],M=a[5],b=a[6],l=a[7],v=n[0],m=n[1],R=n[2],A=n[3];return t[0]=r*A+o*v+e*R-u*m,t[1]=e*A+o*m+u*v-r*R,t[2]=u*A+o*R+r*m-e*v,t[3]=o*A-r*v-e*m-u*R,t[4]=r*h+o*i+e*c-u*s+f*A+l*v+M*R-b*m,t[5]=e*h+o*s+u*i-r*c+M*A+l*m+b*v-f*R,t[6]=u*h+o*c+r*s-e*i+b*A+l*R+f*m-M*v,t[7]=o*h-r*i-e*s-u*c+l*A-f*v-M*m-b*R,t}n.create=function(){var t=new o.ARRAY_TYPE(8);return o.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[4]=0,t[5]=0,t[6]=0,t[7]=0),t[3]=1,t},n.clone=function(t){var a=new o.ARRAY_TYPE(8);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a},n.fromValues=function(t,a,n,r,e,u,i,s){var c=new o.ARRAY_TYPE(8);return c[0]=t,c[1]=a,c[2]=n,c[3]=r,c[4]=e,c[5]=u,c[6]=i,c[7]=s,c},n.fromRotationTranslationValues=function(t,a,n,r,e,u,i){var s=new o.ARRAY_TYPE(8);s[0]=t,s[1]=a,s[2]=n,s[3]=r;var c=.5*e,h=.5*u,f=.5*i;return s[4]=c*r+h*n-f*a,s[5]=h*r+f*t-c*n,s[6]=f*r+c*a-h*t,s[7]=-c*t-h*a-f*n,s},n.fromRotationTranslation=c,n.fromTranslation=function(t,a){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=.5*a[0],t[5]=.5*a[1],t[6]=.5*a[2],t[7]=0,t},n.fromRotation=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.fromMat4=function(t,a){var n=i.create();s.getRotation(n,a);var r=new o.ARRAY_TYPE(3);return s.getTranslation(r,a),c(t,n,r),t},n.copy=h,n.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.set=function(t,a,n,r,e,u,o,i,s){return t[0]=a,t[1]=n,t[2]=r,t[3]=e,t[4]=u,t[5]=o,t[6]=i,t[7]=s,t},n.getReal=i.copy,n.getDual=function(t,a){return t[0]=a[4],t[1]=a[5],t[2]=a[6],t[3]=a[7],t},n.setReal=i.copy,n.setDual=function(t,a){return t[4]=a[0],t[5]=a[1],t[6]=a[2],t[7]=a[3],t},n.getTranslation=function(t,a){var n=a[4],r=a[5],e=a[6],u=a[7],o=-a[0],i=-a[1],s=-a[2],c=a[3];return t[0]=2*(n*c+u*o+r*s-e*i),t[1]=2*(r*c+u*i+e*o-n*s),t[2]=2*(e*c+u*s+n*i-r*o),t},n.translate=function(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=.5*n[0],s=.5*n[1],c=.5*n[2],h=a[4],f=a[5],M=a[6],b=a[7];return t[0]=r,t[1]=e,t[2]=u,t[3]=o,t[4]=o*i+e*c-u*s+h,t[5]=o*s+u*i-r*c+f,t[6]=o*c+r*s-e*i+M,t[7]=-r*i-e*s-u*c+b,t},n.rotateX=function(t,a,n){var r=-a[0],e=-a[1],u=-a[2],o=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*o+f*r+c*u-h*e,b=c*o+f*e+h*r-s*u,l=h*o+f*u+s*e-c*r,v=f*o-s*r-c*e-h*u;return i.rotateX(t,a,n),r=t[0],e=t[1],u=t[2],o=t[3],t[4]=M*o+v*r+b*u-l*e,t[5]=b*o+v*e+l*r-M*u,t[6]=l*o+v*u+M*e-b*r,t[7]=v*o-M*r-b*e-l*u,t},n.rotateY=function(t,a,n){var r=-a[0],e=-a[1],u=-a[2],o=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*o+f*r+c*u-h*e,b=c*o+f*e+h*r-s*u,l=h*o+f*u+s*e-c*r,v=f*o-s*r-c*e-h*u;return i.rotateY(t,a,n),r=t[0],e=t[1],u=t[2],o=t[3],t[4]=M*o+v*r+b*u-l*e,t[5]=b*o+v*e+l*r-M*u,t[6]=l*o+v*u+M*e-b*r,t[7]=v*o-M*r-b*e-l*u,t},n.rotateZ=function(t,a,n){var r=-a[0],e=-a[1],u=-a[2],o=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*o+f*r+c*u-h*e,b=c*o+f*e+h*r-s*u,l=h*o+f*u+s*e-c*r,v=f*o-s*r-c*e-h*u;return i.rotateZ(t,a,n),r=t[0],e=t[1],u=t[2],o=t[3],t[4]=M*o+v*r+b*u-l*e,t[5]=b*o+v*e+l*r-M*u,t[6]=l*o+v*u+M*e-b*r,t[7]=v*o-M*r-b*e-l*u,t},n.rotateByQuatAppend=function(t,a,n){var r=n[0],e=n[1],u=n[2],o=n[3],i=a[0],s=a[1],c=a[2],h=a[3];return t[0]=i*o+h*r+s*u-c*e,t[1]=s*o+h*e+c*r-i*u,t[2]=c*o+h*u+i*e-s*r,t[3]=h*o-i*r-s*e-c*u,i=a[4],s=a[5],c=a[6],h=a[7],t[4]=i*o+h*r+s*u-c*e,t[5]=s*o+h*e+c*r-i*u,t[6]=c*o+h*u+i*e-s*r,t[7]=h*o-i*r-s*e-c*u,t},n.rotateByQuatPrepend=function(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=n[0],s=n[1],c=n[2],h=n[3];return t[0]=r*h+o*i+e*c-u*s,t[1]=e*h+o*s+u*i-r*c,t[2]=u*h+o*c+r*s-e*i,t[3]=o*h-r*i-e*s-u*c,i=n[4],s=n[5],c=n[6],h=n[7],t[4]=r*h+o*i+e*c-u*s,t[5]=e*h+o*s+u*i-r*c,t[6]=u*h+o*c+r*s-e*i,t[7]=o*h-r*i-e*s-u*c,t},n.rotateAroundAxis=function(t,a,n,r){if(Math.abs(r)<o.EPSILON)return h(t,a);var e=Math.hypot(n[0],n[1],n[2]);r*=.5;var u=Math.sin(r),i=u*n[0]/e,s=u*n[1]/e,c=u*n[2]/e,f=Math.cos(r),M=a[0],b=a[1],l=a[2],v=a[3];t[0]=M*f+v*i+b*c-l*s,t[1]=b*f+v*s+l*i-M*c,t[2]=l*f+v*c+M*s-b*i,t[3]=v*f-M*i-b*s-l*c;var m=a[4],R=a[5],A=a[6],E=a[7];return t[4]=m*f+E*i+R*c-A*s,t[5]=R*f+E*s+A*i-m*c,t[6]=A*f+E*c+m*s-R*i,t[7]=E*f-m*i-R*s-A*c,t},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t},n.multiply=f,n.mul=f,n.scale=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t},n.dot=i.dot,n.lerp=function(t,a,r,e){var u=1-e;return n.dot(a,r)<0&&(e=-e),t[0]=a[0]*u+r[0]*e,t[1]=a[1]*u+r[1]*e,t[2]=a[2]*u+r[2]*e,t[3]=a[3]*u+r[3]*e,t[4]=a[4]*u+r[4]*e,t[5]=a[5]*u+r[5]*e,t[6]=a[6]*u+r[6]*e,t[7]=a[7]*u+r[7]*e,t},n.invert=function(t,a){var r=n.squaredLength(a);return t[0]=-a[0]/r,t[1]=-a[1]/r,t[2]=-a[2]/r,t[3]=a[3]/r,t[4]=-a[4]/r,t[5]=-a[5]/r,t[6]=-a[6]/r,t[7]=a[7]/r,t},n.conjugate=function(t,a){return t[0]=-a[0],t[1]=-a[1],t[2]=-a[2],t[3]=a[3],t[4]=-a[4],t[5]=-a[5],t[6]=-a[6],t[7]=a[7],t},n.length=i.length,n.len=n.length,n.squaredLength=i.squaredLength,n.sqrLen=n.squaredLength,n.normalize=function(t,a){var r=n.squaredLength(a);if(r>0){r=Math.sqrt(r);var e=a[0]/r,u=a[1]/r,o=a[2]/r,i=a[3]/r,s=a[4],c=a[5],h=a[6],f=a[7],M=e*s+u*c+o*h+i*f;t[0]=e,t[1]=u,t[2]=o,t[3]=i,t[4]=(s-e*M)/r,t[5]=(c-u*M)/r,t[6]=(h-o*M)/r,t[7]=(f-i*M)/r}return t},n.str=function(t){return\"quat2(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\")\"},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]},n.equals=function(t,a){var n=t[0],r=t[1],e=t[2],u=t[3],i=t[4],s=t[5],c=t[6],h=t[7],f=a[0],M=a[1],b=a[2],l=a[3],v=a[4],m=a[5],R=a[6],A=a[7];return Math.abs(n-f)<=o.EPSILON*Math.max(1,Math.abs(n),Math.abs(f))&&Math.abs(r-M)<=o.EPSILON*Math.max(1,Math.abs(r),Math.abs(M))&&Math.abs(e-b)<=o.EPSILON*Math.max(1,Math.abs(e),Math.abs(b))&&Math.abs(u-l)<=o.EPSILON*Math.max(1,Math.abs(u),Math.abs(l))&&Math.abs(i-v)<=o.EPSILON*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(s-m)<=o.EPSILON*Math.max(1,Math.abs(s),Math.abs(m))&&Math.abs(c-R)<=o.EPSILON*Math.max(1,Math.abs(c),Math.abs(R))&&Math.abs(h-A)<=o.EPSILON*Math.max(1,Math.abs(h),Math.abs(A))}},\n", " \"c56d9ff837\": function _(n,t,r,a,u){a();const e=n(\"tslib\").__importStar(n(\"68ca94c15c\"));function o(){var n=new e.ARRAY_TYPE(2);return e.ARRAY_TYPE!=Float32Array&&(n[0]=0,n[1]=0),n}function c(n,t,r){return n[0]=t[0]-r[0],n[1]=t[1]-r[1],n}function i(n,t,r){return n[0]=t[0]*r[0],n[1]=t[1]*r[1],n}function f(n,t,r){return n[0]=t[0]/r[0],n[1]=t[1]/r[1],n}function s(n,t){var r=t[0]-n[0],a=t[1]-n[1];return Math.hypot(r,a)}function h(n,t){var r=t[0]-n[0],a=t[1]-n[1];return r*r+a*a}function M(n){var t=n[0],r=n[1];return Math.hypot(t,r)}function l(n){var t=n[0],r=n[1];return t*t+r*r}var v;r.create=o,r.clone=function(n){var t=new e.ARRAY_TYPE(2);return t[0]=n[0],t[1]=n[1],t},r.fromValues=function(n,t){var r=new e.ARRAY_TYPE(2);return r[0]=n,r[1]=t,r},r.copy=function(n,t){return n[0]=t[0],n[1]=t[1],n},r.set=function(n,t,r){return n[0]=t,n[1]=r,n},r.add=function(n,t,r){return n[0]=t[0]+r[0],n[1]=t[1]+r[1],n},r.subtract=c,r.multiply=i,r.divide=f,r.ceil=function(n,t){return n[0]=Math.ceil(t[0]),n[1]=Math.ceil(t[1]),n},r.floor=function(n,t){return n[0]=Math.floor(t[0]),n[1]=Math.floor(t[1]),n},r.min=function(n,t,r){return n[0]=Math.min(t[0],r[0]),n[1]=Math.min(t[1],r[1]),n},r.max=function(n,t,r){return n[0]=Math.max(t[0],r[0]),n[1]=Math.max(t[1],r[1]),n},r.round=function(n,t){return n[0]=Math.round(t[0]),n[1]=Math.round(t[1]),n},r.scale=function(n,t,r){return n[0]=t[0]*r,n[1]=t[1]*r,n},r.scaleAndAdd=function(n,t,r,a){return n[0]=t[0]+r[0]*a,n[1]=t[1]+r[1]*a,n},r.distance=s,r.squaredDistance=h,r.length=M,r.squaredLength=l,r.negate=function(n,t){return n[0]=-t[0],n[1]=-t[1],n},r.inverse=function(n,t){return n[0]=1/t[0],n[1]=1/t[1],n},r.normalize=function(n,t){var r=t[0],a=t[1],u=r*r+a*a;return u>0&&(u=1/Math.sqrt(u)),n[0]=t[0]*u,n[1]=t[1]*u,n},r.dot=function(n,t){return n[0]*t[0]+n[1]*t[1]},r.cross=function(n,t,r){var a=t[0]*r[1]-t[1]*r[0];return n[0]=n[1]=0,n[2]=a,n},r.lerp=function(n,t,r,a){var u=t[0],e=t[1];return n[0]=u+a*(r[0]-u),n[1]=e+a*(r[1]-e),n},r.random=function(n,t){t=t||1;var r=2*e.RANDOM()*Math.PI;return n[0]=Math.cos(r)*t,n[1]=Math.sin(r)*t,n},r.transformMat2=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[2]*u,n[1]=r[1]*a+r[3]*u,n},r.transformMat2d=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[2]*u+r[4],n[1]=r[1]*a+r[3]*u+r[5],n},r.transformMat3=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[3]*u+r[6],n[1]=r[1]*a+r[4]*u+r[7],n},r.transformMat4=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[4]*u+r[12],n[1]=r[1]*a+r[5]*u+r[13],n},r.rotate=function(n,t,r,a){var u=t[0]-r[0],e=t[1]-r[1],o=Math.sin(a),c=Math.cos(a);return n[0]=u*c-e*o+r[0],n[1]=u*o+e*c+r[1],n},r.angle=function(n,t){var r=n[0],a=n[1],u=t[0],e=t[1],o=Math.sqrt(r*r+a*a)*Math.sqrt(u*u+e*e),c=o&&(r*u+a*e)/o;return Math.acos(Math.min(Math.max(c,-1),1))},r.zero=function(n){return n[0]=0,n[1]=0,n},r.str=function(n){return\"vec2(\"+n[0]+\", \"+n[1]+\")\"},r.exactEquals=function(n,t){return n[0]===t[0]&&n[1]===t[1]},r.equals=function(n,t){var r=n[0],a=n[1],u=t[0],o=t[1];return Math.abs(r-u)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(a-o)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(o))},r.len=M,r.sub=c,r.mul=i,r.div=f,r.dist=s,r.sqrDist=h,r.sqrLen=l,r.forEach=(v=o(),function(n,t,r,a,u,e){var o,c;for(t||(t=2),r||(r=0),c=a?Math.min(a*t+r,n.length):n.length,o=r;o<c;o+=t)v[0]=n[o],v[1]=n[o+1],u(v,v,e),n[o]=v[0],n[o+1]=v[1];return n})},\n", " \"89262e43a1\": function _(e,t,i,s,n){s();const r=e(\"46fdad9667\"),o=e(\"4eb45e35aa\");class a extends r.AbstractVTKView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,(()=>{this._vtk_image_data=o.data2VTKImageData(this.model.data),this.invalidate_render()})),this.connect(this.model.properties.colormap.change,(()=>{this.colormap_selector.value=this.model.colormap;const e=new Event(\"change\");this.colormap_selector.dispatchEvent(e)})),this.connect(this.model.properties.shadow.change,(()=>{this.shadow_selector.value=this.model.shadow?\"1\":\"0\";const e=new Event(\"change\");this.shadow_selector.dispatchEvent(e)})),this.connect(this.model.properties.sampling.change,(()=>{this.sampling_slider.value=this.model.sampling.toFixed(2);const e=new Event(\"input\");this.sampling_slider.dispatchEvent(e)})),this.connect(this.model.properties.edge_gradient.change,(()=>{this.edge_gradient_slider.value=this.model.edge_gradient.toFixed(2);const e=new Event(\"input\");this.edge_gradient_slider.dispatchEvent(e)})),this.connect(this.model.properties.rescale.change,(()=>{this._controllerWidget.setRescaleColorMap(this.model.rescale),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.ambient.change,(()=>{this.volume.getProperty().setAmbient(this.model.ambient),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.diffuse.change,(()=>{this.volume.getProperty().setDiffuse(this.model.diffuse),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.specular.change,(()=>{this.volume.getProperty().setSpecular(this.model.specular),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.specular_power.change,(()=>{this.volume.getProperty().setSpecularPower(this.model.specular_power),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.display_volume.change,(()=>{this._set_volume_visibility(this.model.display_volume),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.display_slices.change,(()=>{this._set_slices_visibility(this.model.display_slices),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.slice_i.change,(()=>{void 0!==this.image_actor_i&&(this.image_actor_i.getMapper().setISlice(this.model.slice_i),this._vtk_renwin.getRenderWindow().render())})),this.connect(this.model.properties.slice_j.change,(()=>{void 0!==this.image_actor_j&&(this.image_actor_j.getMapper().setJSlice(this.model.slice_j),this._vtk_renwin.getRenderWindow().render())})),this.connect(this.model.properties.slice_k.change,(()=>{void 0!==this.image_actor_k&&(this.image_actor_k.getMapper().setKSlice(this.model.slice_k),this._vtk_renwin.getRenderWindow().render())})),this.connect(this.model.properties.render_background.change,(()=>{this._vtk_renwin.getRenderer().setBackground(...o.hexToRGB(this.model.render_background)),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.interpolation.change,(()=>{this._set_interpolation(this.model.interpolation),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.controller_expanded.change,(()=>{null!=this._controllerWidget&&this._controllerWidget.setExpanded(this.model.controller_expanded)}))}render(){this._vtk_renwin=null,this._orientationWidget=null,this._axes=null,super.render(),this._create_orientation_widget(),this._set_axes(),this.model.camera?this._set_camera_state():this._vtk_renwin.getRenderer().resetCamera(),this._get_camera_state()}invalidate_render(){this._vtk_renwin=null,super.invalidate_render()}init_vtk_renwin(){this._vtk_renwin=o.vtkns.FullScreenRenderWindow.newInstance({rootContainer:this.el,container:this._vtk_container})}plot(){this._controllerWidget=o.vtkns.VolumeController.newInstance({size:[400,150],rescaleColorMap:this.model.rescale}),this._plot_volume(),this._plot_slices(),this._controllerWidget.setupContent(this._vtk_renwin.getRenderWindow(),this.volume,!0),this._controllerWidget.setContainer(this.el),this._controllerWidget.setExpanded(this.model.controller_expanded),this._connect_js_controls(),this._vtk_renwin.getRenderWindow().getInteractor(),this._vtk_renwin.getRenderWindow().getInteractor().setDesiredUpdateRate(45),this._set_volume_visibility(this.model.display_volume),this._set_slices_visibility(this.model.display_slices),this._vtk_renwin.getRenderer().setBackground(...o.hexToRGB(this.model.render_background)),this._set_interpolation(this.model.interpolation),this._set_camera_state()}get vtk_image_data(){return this._vtk_image_data||(this._vtk_image_data=o.data2VTKImageData(this.model.data)),this._vtk_image_data}get volume(){return this._vtk_renwin.getRenderer().getVolumes()[0]}get image_actor_i(){return this._vtk_renwin.getRenderer().getActors()[0]}get image_actor_j(){return this._vtk_renwin.getRenderer().getActors()[1]}get image_actor_k(){return this._vtk_renwin.getRenderer().getActors()[2]}get shadow_selector(){return this.el.querySelector(\".js-shadow\")}get edge_gradient_slider(){return this.el.querySelector(\".js-edge\")}get sampling_slider(){return this.el.querySelector(\".js-spacing\")}get colormap_selector(){return this.el.querySelector(\".js-color-preset\")}_connect_js_controls(){const{el:e}=this._controllerWidget.get(\"el\");if(void 0!==e){e.querySelector(\".js-button\").addEventListener(\"click\",(()=>this.model.controller_expanded=this._controllerWidget.getExpanded()))}this.colormap_selector.addEventListener(\"change\",(()=>{this.model.colormap=this.colormap_selector.value})),this.model.colormap?this.model.properties.colormap.change.emit():this.model.colormap=this.colormap_selector.value,this.shadow_selector.addEventListener(\"change\",(()=>{this.model.shadow=!!Number(this.shadow_selector.value)})),(this.model.shadow=!!Number(this.shadow_selector.value))&&this.model.properties.shadow.change.emit(),this.sampling_slider.addEventListener(\"input\",(()=>{const e=Number(this.sampling_slider.value);Math.abs(this.model.sampling-e)>=.005&&(this.model.sampling=e)})),Math.abs(this.model.sampling-Number(this.shadow_selector.value))>=.005&&this.model.properties.sampling.change.emit(),this.edge_gradient_slider.addEventListener(\"input\",(()=>{const e=Number(this.edge_gradient_slider.value);Math.abs(this.model.edge_gradient-e)>=.005&&(this.model.edge_gradient=e)})),Math.abs(this.model.edge_gradient-Number(this.edge_gradient_slider.value))>=.005&&this.model.properties.edge_gradient.change.emit()}_plot_slices(){const e=this._vtk_image_data,t=o.vtkns.ImageSlice.newInstance(),i=o.vtkns.ImageSlice.newInstance(),s=o.vtkns.ImageSlice.newInstance(),n=o.vtkns.ImageMapper.newInstance(),r=o.vtkns.ImageMapper.newInstance(),a=o.vtkns.ImageMapper.newInstance();n.setInputData(e),n.setISlice(this.model.slice_i),t.setMapper(n),r.setInputData(e),r.setJSlice(this.model.slice_j),i.setMapper(r),a.setInputData(e),a.setKSlice(this.model.slice_k),s.setMapper(a);const l=o.vtkns.PiecewiseFunction.newInstance();l.removeAllPoints(),l.addPoint(0,1);const d=this.volume.getProperty().getRGBTransferFunction(0),c=t.getProperty();i.setProperty(c),s.setProperty(c),c.setRGBTransferFunction(d),c.setScalarOpacity(l);const _=this._vtk_renwin.getRenderer();_.addActor(t),_.addActor(i),_.addActor(s)}_plot_volume(){const e=this.vtk_image_data,t=o.vtkns.Volume.newInstance(),i=o.vtkns.VolumeMapper.newInstance();t.setMapper(i),i.setInputData(e);const s=(e.getPointData().getScalars()||e.getPointData().getArrays()[0]).getRange(),n=o.vtkns.ColorTransferFunction.newInstance();n.onModified((()=>this.model.mapper=o.vtkLutToMapper(n)));const r=o.vtkns.PiecewiseFunction.newInstance(),a=.7*Math.sqrt(e.getSpacing().map((e=>e*e)).reduce(((e,t)=>e+t),0));i.setSampleDistance(a),t.getProperty().setRGBTransferFunction(0,n),t.getProperty().setScalarOpacity(0,r),t.getProperty().setInterpolationTypeToFastLinear(),t.getProperty().setScalarOpacityUnitDistance(0,o.vtkns.BoundingBox.getDiagonalLength(e.getBounds())/Math.max(...e.getDimensions())),t.getProperty().setGradientOpacityMinimumValue(0,0),t.getProperty().setGradientOpacityMaximumValue(0,.05*(s[1]-s[0])),t.getProperty().setShade(this.model.shadow),t.getProperty().setUseGradientOpacity(0,!0),t.getProperty().setGradientOpacityMinimumOpacity(0,0),t.getProperty().setGradientOpacityMaximumOpacity(0,1),t.getProperty().setAmbient(this.model.ambient),t.getProperty().setDiffuse(this.model.diffuse),t.getProperty().setSpecular(this.model.specular),t.getProperty().setSpecularPower(this.model.specular_power),this._vtk_renwin.getRenderer().addVolume(t)}_set_interpolation(e){\"fast_linear\"==e?(this.volume.getProperty().setInterpolationTypeToFastLinear(),this.image_actor_i.getProperty().setInterpolationTypeToLinear()):\"linear\"==e?(this.volume.getProperty().setInterpolationTypeToLinear(),this.image_actor_i.getProperty().setInterpolationTypeToLinear()):(this.volume.getProperty().setInterpolationTypeToNearest(),this.image_actor_i.getProperty().setInterpolationTypeToNearest())}_set_slices_visibility(e){this._vtk_renwin.getRenderer().getActors().map((t=>t.setVisibility(e)))}_set_volume_visibility(e){this.volume.setVisibility(e)}}i.VTKVolumePlotView=a,a.__name__=\"VTKVolumePlotView\";class l extends r.AbstractVTKPlot{constructor(e){super(e)}static init_VTKVolumePlot(){this.prototype.default_view=a,this.define((({Any:e,Array:t,Boolean:i,Int:s,Number:n,String:r,Struct:a})=>({ambient:[n,.2],colormap:[r],data:[e],diffuse:[n,.7],display_slices:[i,!1],display_volume:[i,!0],edge_gradient:[n,.2],interpolation:[o.Interpolation,\"fast_linear\"],mapper:[a({palette:t(r),low:n,high:n})],render_background:[r,\"#52576e\"],rescale:[i,!1],sampling:[n,.4],shadow:[i,!0],slice_i:[s,0],slice_j:[s,0],slice_k:[s,0],specular:[n,.3],specular_power:[n,8],controller_expanded:[i,!0]})))}}i.VTKVolumePlot=l,l.__name__=\"VTKVolumePlot\",l.init_VTKVolumePlot()},\n", " \"4baab0b7ce\": function _(e,t,n,s,r){s();const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),o=e(\"@bokehjs/core/util/object\"),_=e(\"46fdad9667\"),a=e(\"4eb45e35aa\"),h=e(\"11e0707a8f\"),c=\"panel\";class d extends _.AbstractVTKView{initialize(){super.initialize(),this._promises=[],this._renderable=!1,this._arrays={},this._decoded_arrays={},this._pending_arrays={},this.getArray=e=>this._arrays[e]?Promise.resolve(this._arrays[e]):new Promise(((t,n)=>{this._pending_arrays[e]={resolve:t,reject:n}})),this.registerArray=(e,t)=>(this._arrays[e]=t,this._pending_arrays[e]&&this._pending_arrays[e].resolve(t),!0),this._synchronizer_context=a.vtkns.SynchronizableRenderWindow.getSynchronizerContext(c)}connect_signals(){super.connect_signals(),this.connect(this.model.properties.arrays.change,(()=>this._decode_arrays())),this.connect(this.model.properties.scene.change,(()=>{if(this.model.rebuild)this._vtk_renwin=null,this.invalidate_render();else{const e=o.clone(this.model.scene);Promise.all(this._promises).then((()=>{this._sync_plot(e,(()=>{this._on_scene_ready()}))}))}})),this.connect(this.model.properties.one_time_reset.change,(()=>{this._vtk_renwin.getRenderWindow().clearOneTimeUpdaters()}))}init_vtk_renwin(){this._vtk_renwin=h.FullScreenRenderWindowSynchronized.newInstance({rootContainer:this.el,container:this._vtk_container,synchronizerContext:this._synchronizer_context})}plot(){this._vtk_renwin.getRenderWindow().clearOneTimeUpdaters(),this._decode_arrays();const e=o.clone(this.model.scene);Promise.all(this._promises).then((()=>{this._sync_plot(e,(()=>this._on_scene_ready())).then((()=>{this._set_camera_state(),this._get_camera_state()}))}))}_decode_arrays(){const e=new a.vtkns.ThirdParty.JSZip,t=this.model.arrays,n=this.registerArray,s=this.model.arrays_processed,r=this.model;Object.keys(t).forEach((i=>{this._decoded_arrays[i]||(this._decoded_arrays[i]=!0,this._promises.push(function(i){return e.loadAsync(atob(t[i])).then((e=>e.file(\"data/\"+i))).then((e=>e.async(\"arraybuffer\"))).then((e=>n(i,e))).then((()=>{s.push(i),r.properties.arrays_processed.change.emit()}))}(i)))}))}_on_scene_ready(){this._promises.length>0||(this._renderable=!0,this._camera_callbacks.push(this._vtk_renwin.getRenderer().getActiveCamera().onModified((()=>this._vtk_render()))),this._orientationWidget||this._create_orientation_widget(),this._axes||this._set_axes(),this._vtk_renwin.resize(),this._vtk_render())}_sync_plot(e,t){this._renderable=!1,this._promises=[],this._unsubscribe_camera_cb(),this._synchronizer_context.setFetchArrayFunction((e=>Promise.resolve(this._arrays[e])));const n=this._synchronizer_context.getInstance(this.model.scene.dependencies[0].id);return n&&!this._vtk_renwin.getRenderer()&&this._vtk_renwin.getRenderWindow().addRenderer(n),this._vtk_renwin.getRenderWindow().synchronize(e).then(t)}}n.VTKSynchronizedPlotView=d,d.__name__=\"VTKSynchronizedPlotView\";class l extends _.AbstractVTKPlot{constructor(e){super(e),this.outline=a.vtkns.OutlineFilter.newInstance();const t=a.vtkns.Mapper.newInstance();t.setInputConnection(this.outline.getOutputPort()),this.outline_actor=a.vtkns.Actor.newInstance(),this.outline_actor.setMapper(t)}getActors(e){let t=this.renderer_el.getRenderer().getActors();if(e){const n=this.renderer_el.getSynchronizerContext(c);t=t.filter((t=>{const s=n.getInstanceId(t);return!!s&&s.slice(-16)==e.slice(1,17)}))}return t}static init_VTKSynchronizedPlot(){this.prototype.default_view=d,this.define({arrays:[i.Any,{}],arrays_processed:[i.Array,[]],enable_keybindings:[i.Boolean,!1],one_time_reset:[i.Boolean],rebuild:[i.Boolean,!1],scene:[i.Any,{}]}),this.override({height:300,width:300})}}n.VTKSynchronizedPlot=l,l.__name__=\"VTKSynchronizedPlot\",l.__module__=\"panel.models.vtk\",l.init_VTKSynchronizedPlot()},\n", " \"11e0707a8f\": function _(e,n,o,t,r){t();const i=e(\"4eb45e35aa\");if(i.vtk){const e={containerStyle:null,controlPanelStyle:null,listenWindowResize:!0,resizeCallback:null,controllerVisibility:!0,synchronizerContextName:\"default\"},n={position:\"absolute\",left:\"25px\",top:\"25px\",backgroundColor:\"white\",borderRadius:\"5px\",listStyle:\"none\",padding:\"5px 10px\",margin:\"0\",display:\"block\",border:\"solid 1px black\",maxWidth:\"calc(100vw - 70px)\",maxHeight:\"calc(100vh - 60px)\",overflow:\"auto\"};o.FullScreenRenderWindowSynchronized={newInstance:i.vtk.macro.newInstance(((o,t,r={})=>{Object.assign(t,e,r),i.vtk.macro.obj(o,t),i.vtk.macro.get(o,t,[\"renderWindow\",\"openGLRenderWindow\",\"interactor\",\"rootContainer\",\"container\",\"controlContainer\",\"synchronizerContext\"]),function(e,o){o.renderWindow=i.vtkns.SynchronizableRenderWindow.newInstance({synchronizerContext:o.synchronizerContext}),o.openGLRenderWindow=i.vtkns.OpenGLRenderWindow.newInstance(),o.openGLRenderWindow.setContainer(o.container),o.renderWindow.addView(o.openGLRenderWindow),o.interactor=i.vtkns.RenderWindowInteractor.newInstance(),o.interactor.setInteractorStyle(i.vtkns.InteractorStyleTrackballCamera.newInstance()),o.interactor.setView(o.openGLRenderWindow),o.interactor.initialize(),o.interactor.bindEvents(o.container),e.getRenderer=()=>o.renderWindow.getRenderers()[0],e.removeController=()=>{const e=o.controlContainer;e&&e.parentNode.removeChild(e)},e.setControllerVisibility=e=>{o.controllerVisibility=e,o.controlContainer&&(o.controlContainer.style.display=e?\"block\":\"none\")},e.toggleControllerVisibility=()=>{e.setControllerVisibility(!o.controllerVisibility)},e.addController=t=>{o.controlContainer=document.createElement(\"div\"),i.applyStyle(o.controlContainer,o.controlPanelStyle||n),o.rootContainer.appendChild(o.controlContainer),o.controlContainer.innerHTML=t,e.setControllerVisibility(o.controllerVisibility),o.rootContainer.addEventListener(\"keypress\",(n=>{\"c\"===String.fromCharCode(n.charCode)&&e.toggleControllerVisibility()}))},e.delete=i.vtk.macro.chain(e.setContainer,o.openGLRenderWindow.delete,e.delete),e.resize=()=>{const e=o.container.getBoundingClientRect(),n=window.devicePixelRatio||1;o.openGLRenderWindow.setSize(Math.floor(e.width*n),Math.floor(e.height*n)),o.resizeCallback&&o.resizeCallback(e),o.renderWindow.render()},e.setResizeCallback=n=>{o.resizeCallback=n,e.resize()},o.listenWindowResize&&window.addEventListener(\"resize\",e.resize),e.resize()}(o,t)}))}}},\n", " }, \"4e90918c0a\", {\"index\":\"4e90918c0a\",\"models/index\":\"7898617fc4\",\"models/ace\":\"be520eff91\",\"models/layout\":\"4c755983eb\",\"models/audio\":\"339f84d639\",\"models/card\":\"c816112d20\",\"models/comm_manager\":\"e552778259\",\"models/tabulator\":\"cd0a5e2f82\",\"models/data\":\"f1971f81bf\",\"models/datetime_picker\":\"6e11b2cfe2\",\"models/deckgl\":\"df2378664f\",\"models/tooltips\":\"6e04fbe567\",\"models/echarts\":\"9d046c4720\",\"models/html\":\"2839081043\",\"models/event-to-object\":\"3329d4aa5b\",\"models/idom\":\"7d45bd3bc4\",\"models/ipywidget\":\"0eae77d68f\",\"models/json\":\"0d30bea0c8\",\"models/file_download\":\"1767172ffa\",\"models/katex\":\"7b859fb3cf\",\"models/location\":\"642aa56b24\",\"models/mathjax\":\"0c21036737\",\"models/perspective\":\"84a772681d\",\"models/player\":\"2e8044c920\",\"models/plotly\":\"c23bb1717d\",\"models/util\":\"990b5dd5c7\",\"models/progress\":\"9f787650b9\",\"models/reactive_html\":\"d536149aaa\",\"models/singleselect\":\"3b85956787\",\"models/speech_to_text\":\"aaa48703af\",\"models/state\":\"bfa46a5f19\",\"models/terminal\":\"91fe88c277\",\"models/text_to_speech\":\"33cd2c254e\",\"models/trend\":\"ded3463d6c\",\"models/vega\":\"4feb5fa522\",\"models/video\":\"ffe54b53c3\",\"models/videostream\":\"e3e9b8e495\",\"models/vtk/index\":\"c51f25e2a7\",\"models/vtk/vtkjs\":\"34fc7779c7\",\"models/vtk/vtklayout\":\"46fdad9667\",\"models/vtk/util\":\"4eb45e35aa\",\"models/vtk/vtkcolorbar\":\"c010237f8b\",\"models/vtk/vtkaxes\":\"db7a0079c0\",\"models/vtk/vtkvolume\":\"89262e43a1\",\"models/vtk/vtksynchronized\":\"4baab0b7ce\",\"models/vtk/panel_fullscreen_renwin_sync\":\"11e0707a8f\"}, {});});\n", "\n", " /* END panel.min.js */\n", " },\n", " function(Bokeh) {} // ensure no trailing comma for IE\n", " ];\n", "\n", " function run_inline_js() {\n", " if ((root.Bokeh !== undefined) || (force === true)) {\n", " for (var i = 0; i < inline_js.length; i++) {\n", " inline_js[i].call(root, root.Bokeh);\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", " }\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, js_modules, function() {\n", " console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n", " run_inline_js();\n", " });\n", " }\n", "}(window));" ], "application/vnd.holoviews_load.v0+json": "\n(function(root) {\n function now() {\n return new Date();\n }\n\n var 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 if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n root._bokeh_timeout = Date.now() + 5000;\n root._bokeh_failed_load = false;\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, js_modules, callback) {\n if (css_urls == null) css_urls = [];\n if (js_urls == null) js_urls = [];\n if (js_modules == null) js_modules = [];\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.length === 0 && js_modules.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 + js_modules.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() {\n console.error(\"failed to load \" + url);\n }\n\n for (var i = 0; i < css_urls.length; i++) {\n var url = css_urls[i];\n const element = document.createElement(\"link\");\n element.onload = on_load;\n element.onerror = on_error;\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 var skip = [];\n if (window.requirejs) {\n window.requirejs.config({'packages': {}, 'paths': {}, 'shim': {}});\n \n }\n for (var i = 0; i < js_urls.length; i++) {\n var url = js_urls[i];\n if (skip.indexOf(url) >= 0) { on_load(); continue; }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\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 for (var i = 0; i < js_modules.length; i++) {\n var url = js_modules[i];\n if (skip.indexOf(url) >= 0) { on_load(); continue; }\n var element = document.createElement('script');\n element.onload = on_load;\n element.onerror = on_error;\n element.async = false;\n element.src = url;\n element.type = \"module\";\n console.debug(\"Bokeh: injecting script tag for BokehJS library: \", url);\n document.head.appendChild(element);\n }\n if (!js_urls.length && !js_modules.length) {\n on_load()\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 var js_urls = [];\n var js_modules = [];\n var css_urls = [];\n var inline_js = [\n function(Bokeh) {\n inject_raw_css(\".bk.alert {\\n padding: 0.75rem 1.25rem;\\n border: 1px solid transparent;\\n border-radius: 0.25rem;\\n /* Don't set margin because that will not render correctly! */\\n /* margin-bottom: 1rem; */\\n margin-top: 15px;\\n margin-bottom: 15px;\\n}\\n.bk.alert a {\\n color: rgb(11, 46, 19); /* #002752; */\\n font-weight: 700;\\n text-decoration: rgb(11, 46, 19);\\n text-decoration-color: rgb(11, 46, 19);\\n text-decoration-line: none;\\n text-decoration-style: solid;\\n text-decoration-thickness: auto;\\n }\\n.bk.alert a:hover {\\n color: rgb(11, 46, 19);\\n font-weight: 700;\\n text-decoration: underline;\\n}\\n\\n.bk.alert-primary {\\n color: #004085;\\n background-color: #cce5ff;\\n border-color: #b8daff;\\n}\\n.bk.alert-primary hr {\\n border-top-color: #9fcdff;\\n}\\n\\n.bk.alert-secondary {\\n color: #383d41;\\n background-color: #e2e3e5;\\n border-color: #d6d8db;\\n }\\n.bk.alert-secondary hr {\\n border-top-color: #c8cbcf;\\n}\\n\\n.bk.alert-success {\\n color: #155724;\\n background-color: #d4edda;\\n border-color: #c3e6cb;\\n }\\n\\n.bk.alert-success hr {\\n border-top-color: #b1dfbb;\\n}\\n\\n.bk.alert-info {\\n color: #0c5460;\\n background-color: #d1ecf1;\\n border-color: #bee5eb;\\n }\\n.bk.alert-info hr {\\n border-top-color: #abdde5;\\n}\\n\\n.bk.alert-warning {\\n color: #856404;\\n background-color: #fff3cd;\\n border-color: #ffeeba;\\n }\\n\\n.bk.alert-warning hr {\\n border-top-color: #ffe8a1;\\n}\\n\\n.bk.alert-danger {\\n color: #721c24;\\n background-color: #f8d7da;\\n border-color: #f5c6cb;\\n}\\n.bk.alert-danger hr {\\n border-top-color: #f1b0b7;\\n}\\n\\n.bk.alert-light {\\n color: #818182;\\n background-color: #fefefe;\\n border-color: #fdfdfe;\\n }\\n.bk.alert-light hr {\\n border-top-color: #ececf6;\\n}\\n\\n.bk.alert-dark {\\n color: #1b1e21;\\n background-color: #d6d8d9;\\n border-color: #c6c8ca;\\n }\\n.bk.alert-dark hr {\\n border-top-color: #b9bbbe;\\n}\\n\\n\\n/* adjf\\u00e6l */\\n\\n.bk.alert-primary a {\\n color: #002752;\\n}\\n\\n.bk.alert-secondary a {\\n color: #202326;\\n}\\n\\n\\n.bk.alert-success a {\\n color: #0b2e13;\\n}\\n\\n\\n.bk.alert-info a {\\n color: #062c33;\\n}\\n\\n\\n.bk.alert-warning a {\\n color: #533f03;\\n}\\n\\n\\n.bk.alert-danger a {\\n color: #491217;\\n}\\n\\n.bk.alert-light a {\\n color: #686868;\\n}\\n\\n.bk.alert-dark a {\\n color: #040505;\\n}\");\n },\n function(Bokeh) {\n inject_raw_css(\".bk.card {\\n border: 1px solid rgba(0,0,0,.125);\\n border-radius: 0.25rem;\\n}\\n.bk.accordion {\\n border: 1px solid rgba(0,0,0,.125);\\n}\\n.bk.card-header {\\n align-items: center;\\n background-color: rgba(0, 0, 0, 0.03);\\n border-radius: 0.25rem;\\n display: inline-flex;\\n justify-content: start;\\n width: 100%;\\n}\\n.bk.accordion-header {\\n align-items: center;\\n background-color: rgba(0, 0, 0, 0.03);\\n border-radius: 0;\\n display: flex;\\n justify-content: start;\\n width: 100%;\\n}\\n.bk.card-button {\\n background-color: transparent;\\n margin-left: 0.5em;\\n}\\n.bk.card-header-row {\\n position: relative !important;\\n}\\n.bk.card-title {\\n align-items: center;\\n font-size: 1.4em;\\n font-weight: bold;\\n overflow-wrap: break-word;\\n}\\n.bk.card-header-row > .bk {\\n padding-right: 1.5em !important;\\n overflow-wrap: break-word;\\n}\\n\");\n },\n function(Bokeh) {\n inject_raw_css(\".bk.panel-widget-box {\\n min-height: 20px;\\n background-color: #f5f5f5;\\n border: 1px solid #e3e3e3;\\n border-radius: 4px;\\n -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n box-shadow: inset 0 1px 1px rgba(0,0,0,.05);\\n overflow-x: hidden;\\n overflow-y: hidden;\\n}\\n\\n.scrollable {\\n overflow: scroll;\\n}\\n\\nprogress {\\n appearance: none;\\n -moz-appearance: none;\\n -webkit-appearance: none;\\n border: none;\\n height: 20px;\\n background-color: whiteSmoke;\\n border-radius: 3px;\\n box-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n color: royalblue;\\n position: relative;\\n margin: 0 0 1.5em;\\n}\\n\\nprogress[value]::-webkit-progress-bar {\\n background-color: whiteSmoke;\\n border-radius: 3px;\\n box-shadow: 0 2px 3px rgba(0,0,0,.5) inset;\\n}\\n\\nprogress[value]::-webkit-progress-value {\\n position: relative;\\n background-size: 35px 20px, 100% 100%, 100% 100%;\\n border-radius:3px;\\n}\\n\\nprogress.active:not([value])::before {\\n background-position: 10%;\\n animation-name: stripes;\\n animation-duration: 3s;\\n animation-timing-function: linear;\\n animation-iteration-count: infinite;\\n}\\n\\nprogress[value]::-moz-progress-bar {\\n background-size: 35px 20px, 100% 100%, 100% 100%;\\n border-radius:3px;\\n}\\n\\nprogress:not([value])::-moz-progress-bar {\\n border-radius:3px;\\n background: linear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\n\\nprogress.active:not([value])::-moz-progress-bar {\\n background-position: 10%;\\n animation-name: stripes;\\n animation-duration: 3s;\\n animation-timing-function: linear;\\n animation-iteration-count: infinite;\\n}\\n\\nprogress.active:not([value])::-webkit-progress-bar {\\n background-position: 10%;\\n animation-name: stripes;\\n animation-duration: 3s;\\n animation-timing-function: linear;\\n animation-iteration-count: infinite;\\n}\\n\\nprogress.primary[value]::-webkit-progress-value { background-color: #007bff; }\\nprogress.primary:not([value])::before { background-color: #007bff; }\\nprogress.primary:not([value])::-webkit-progress-bar { background-color: #007bff; }\\nprogress.primary::-moz-progress-bar { background-color: #007bff; }\\n\\nprogress.secondary[value]::-webkit-progress-value { background-color: #6c757d; }\\nprogress.secondary:not([value])::before { background-color: #6c757d; }\\nprogress.secondary:not([value])::-webkit-progress-bar { background-color: #6c757d; }\\nprogress.secondary::-moz-progress-bar { background-color: #6c757d; }\\n\\nprogress.success[value]::-webkit-progress-value { background-color: #28a745; }\\nprogress.success:not([value])::before { background-color: #28a745; }\\nprogress.success:not([value])::-webkit-progress-bar { background-color: #28a745; }\\nprogress.success::-moz-progress-bar { background-color: #28a745; }\\n\\nprogress.danger[value]::-webkit-progress-value { background-color: #dc3545; }\\nprogress.danger:not([value])::before { background-color: #dc3545; }\\nprogress.danger:not([value])::-webkit-progress-bar { background-color: #dc3545; }\\nprogress.danger::-moz-progress-bar { background-color: #dc3545; }\\n\\nprogress.warning[value]::-webkit-progress-value { background-color: #ffc107; }\\nprogress.warning:not([value])::before { background-color: #ffc107; }\\nprogress.warning:not([value])::-webkit-progress-bar { background-color: #ffc107; }\\nprogress.warning::-moz-progress-bar { background-color: #ffc107; }\\n\\nprogress.info[value]::-webkit-progress-value { background-color: #17a2b8; }\\nprogress.info:not([value])::before { background-color: #17a2b8; }\\nprogress.info:not([value])::-webkit-progress-bar { background-color: #17a2b8; }\\nprogress.info::-moz-progress-bar { background-color: #17a2b8; }\\n\\nprogress.light[value]::-webkit-progress-value { background-color: #f8f9fa; }\\nprogress.light:not([value])::before { background-color: #f8f9fa; }\\nprogress.light:not([value])::-webkit-progress-bar { background-color: #f8f9fa; }\\nprogress.light::-moz-progress-bar { background-color: #f8f9fa; }\\n\\nprogress.dark[value]::-webkit-progress-value { background-color: #343a40; }\\nprogress.dark:not([value])::-webkit-progress-bar { background-color: #343a40; }\\nprogress.dark:not([value])::before { background-color: #343a40; }\\nprogress.dark::-moz-progress-bar { background-color: #343a40; }\\n\\nprogress:not([value])::-webkit-progress-bar {\\n border-radius: 3px;\\n background: linear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\nprogress:not([value])::before {\\n content:\\\" \\\";\\n position:absolute;\\n height: 20px;\\n top:0;\\n left:0;\\n right:0;\\n bottom:0;\\n border-radius: 3px;\\n background: linear-gradient(-45deg, transparent 33%, rgba(0, 0, 0, 0.2) 33%, rgba(0, 0, 0, 0.2) 66%, transparent 66%) left/2.5em 1.5em;\\n}\\n\\n@keyframes stripes {\\n from {background-position: 0%}\\n to {background-position: 100%}\\n}\\n\\n.bk-root .bk.loader {\\n overflow: hidden;\\n}\\n\\n.bk.loader::after {\\n content: \\\"\\\";\\n border-radius: 50%;\\n -webkit-mask-image: radial-gradient(transparent 50%, rgba(0, 0, 0, 1) 54%);\\n width: 100%;\\n height: 100%;\\n left: 0;\\n top: 0;\\n position: absolute;\\n}\\n\\n.bk-root .bk.loader.dark::after {\\n background: #0f0f0f;\\n}\\n\\n.bk-root .bk.loader.light::after {\\n background: #f0f0f0;\\n}\\n\\n.bk-root .bk.loader.spin::after {\\n animation: spin 2s linear infinite;\\n}\\n\\n.bk-root div.bk.loader.spin.primary-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #007bff 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.secondary-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #6c757d 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.success-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #28a745 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.danger-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #dc3545 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.warning-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #ffc107 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.info-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #17a2b8 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.light-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #f8f9fa 50%);\\n}\\n\\n.bk-root div.bk.loader.dark-light::after {\\n background: linear-gradient(135deg, #f0f0f0 50%, transparent 50%), linear-gradient(45deg, #f0f0f0 50%, #343a40 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.primary-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #007bff 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.secondary-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #6c757d 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.success-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #28a745 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.danger-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #dc3545 50%)\\n}\\n\\n.bk-root div.bk.loader.spin.warning-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #ffc107 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.info-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #17a2b8 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.light-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #f8f9fa 50%);\\n}\\n\\n.bk-root div.bk.loader.spin.dark-dark::after {\\n background: linear-gradient(135deg, #0f0f0f 50%, transparent 50%), linear-gradient(45deg, #0f0f0f 50%, #343a40 50%);\\n}\\n\\n/* Safari */\\n@-webkit-keyframes spin {\\n 0% { -webkit-transform: rotate(0deg); }\\n 100% { -webkit-transform: rotate(360deg); }\\n}\\n\\n@keyframes spin {\\n 0% { transform: rotate(0deg); }\\n 100% { transform: rotate(360deg); }\\n}\\n\\n.dot div {\\n height: 100%;\\n width: 100%;\\n border: 1px solid #000 !important;\\n background-color: #fff;\\n border-radius: 50%;\\n display: inline-block;\\n}\\n\\n.dot-filled div {\\n height: 100%;\\n width: 100%;\\n border: 1px solid #000 !important;\\n border-radius: 50%;\\n display: inline-block;\\n}\\n\\n.dot-filled.primary div {\\n background-color: #007bff;\\n}\\n\\n.dot-filled.secondary div {\\n background-color: #6c757d;\\n}\\n\\n.dot-filled.success div {\\n background-color: #28a745;\\n}\\n\\n.dot-filled.danger div {\\n background-color: #dc3545;\\n}\\n\\n.dot-filled.warning div {\\n background-color: #ffc107;\\n}\\n\\n.dot-filled.info div {\\n background-color: #17a2b8;\\n}\\n\\n.dot-filled.dark div {\\n background-color: #343a40;\\n}\\n\\n.dot-filled.light div {\\n background-color: #f8f9fa;\\n}\\n\\n/* Slider editor */\\n.slider-edit .bk-input-group .bk-input {\\n border: 0;\\n border-radius: 0;\\n min-height: 0;\\n padding-left: 0;\\n padding-right: 0;\\n font-weight: bold;\\n}\\n\\n.slider-edit .bk-input-group .bk-spin-wrapper {\\n display: contents;\\n}\\n\\n.slider-edit .bk-input-group .bk-spin-wrapper .bk.bk-spin-btn-up {\\n top: -6px;\\n}\\n\\n.slider-edit .bk-input-group .bk-spin-wrapper .bk.bk-spin-btn-down {\\n bottom: 3px;\\n}\\n\\n/* JSON Pane */\\n.bk-root .json-formatter-row .json-formatter-string, .bk-root .json-formatter-row .json-formatter-stringifiable {\\n white-space: pre-wrap;\\n}\\n\");\n },\n function(Bokeh) {\n inject_raw_css(\".codehilite .hll { background-color: #ffffcc }\\n.codehilite { background: #f8f8f8; }\\n.codehilite .c { color: #408080; font-style: italic } /* Comment */\\n.codehilite .err { border: 1px solid #FF0000 } /* Error */\\n.codehilite .k { color: #008000; font-weight: bold } /* Keyword */\\n.codehilite .o { color: #666666 } /* Operator */\\n.codehilite .ch { color: #408080; font-style: italic } /* Comment.Hashbang */\\n.codehilite .cm { color: #408080; font-style: italic } /* Comment.Multiline */\\n.codehilite .cp { color: #BC7A00 } /* Comment.Preproc */\\n.codehilite .cpf { color: #408080; font-style: italic } /* Comment.PreprocFile */\\n.codehilite .c1 { color: #408080; font-style: italic } /* Comment.Single */\\n.codehilite .cs { color: #408080; font-style: italic } /* Comment.Special */\\n.codehilite .gd { color: #A00000 } /* Generic.Deleted */\\n.codehilite .ge { font-style: italic } /* Generic.Emph */\\n.codehilite .gr { color: #FF0000 } /* Generic.Error */\\n.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */\\n.codehilite .gi { color: #00A000 } /* Generic.Inserted */\\n.codehilite .go { color: #888888 } /* Generic.Output */\\n.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */\\n.codehilite .gs { font-weight: bold } /* Generic.Strong */\\n.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */\\n.codehilite .gt { color: #0044DD } /* Generic.Traceback */\\n.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */\\n.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */\\n.codehilite .kn { color: #008000; font-weight: bold } /* Keyword.Namespace */\\n.codehilite .kp { color: #008000 } /* Keyword.Pseudo */\\n.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */\\n.codehilite .kt { color: #B00040 } /* Keyword.Type */\\n.codehilite .m { color: #666666 } /* Literal.Number */\\n.codehilite .s { color: #BA2121 } /* Literal.String */\\n.codehilite .na { color: #7D9029 } /* Name.Attribute */\\n.codehilite .nb { color: #008000 } /* Name.Builtin */\\n.codehilite .nc { color: #0000FF; font-weight: bold } /* Name.Class */\\n.codehilite .no { color: #880000 } /* Name.Constant */\\n.codehilite .nd { color: #AA22FF } /* Name.Decorator */\\n.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */\\n.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */\\n.codehilite .nf { color: #0000FF } /* Name.Function */\\n.codehilite .nl { color: #A0A000 } /* Name.Label */\\n.codehilite .nn { color: #0000FF; font-weight: bold } /* Name.Namespace */\\n.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */\\n.codehilite .nv { color: #19177C } /* Name.Variable */\\n.codehilite .ow { color: #AA22FF; font-weight: bold } /* Operator.Word */\\n.codehilite .w { color: #bbbbbb } /* Text.Whitespace */\\n.codehilite .mb { color: #666666 } /* Literal.Number.Bin */\\n.codehilite .mf { color: #666666 } /* Literal.Number.Float */\\n.codehilite .mh { color: #666666 } /* Literal.Number.Hex */\\n.codehilite .mi { color: #666666 } /* Literal.Number.Integer */\\n.codehilite .mo { color: #666666 } /* Literal.Number.Oct */\\n.codehilite .sa { color: #BA2121 } /* Literal.String.Affix */\\n.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */\\n.codehilite .sc { color: #BA2121 } /* Literal.String.Char */\\n.codehilite .dl { color: #BA2121 } /* Literal.String.Delimiter */\\n.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */\\n.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */\\n.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */\\n.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */\\n.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */\\n.codehilite .sx { color: #008000 } /* Literal.String.Other */\\n.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */\\n.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */\\n.codehilite .ss { color: #19177C } /* Literal.String.Symbol */\\n.codehilite .bp { color: #008000 } /* Name.Builtin.Pseudo */\\n.codehilite .fm { color: #0000FF } /* Name.Function.Magic */\\n.codehilite .vc { color: #19177C } /* Name.Variable.Class */\\n.codehilite .vg { color: #19177C } /* Name.Variable.Global */\\n.codehilite .vi { color: #19177C } /* Name.Variable.Instance */\\n.codehilite .vm { color: #19177C } /* Name.Variable.Magic */\\n.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */\\n\\n.markdown h1 { margin-block-start: 0.34em }\\n.markdown h2 { margin-block-start: 0.42em }\\n.markdown h3 { margin-block-start: 0.5em }\\n.markdown h4 { margin-block-start: 0.67em }\\n.markdown h5 { margin-block-start: 0.84em }\\n.markdown h6 { margin-block-start: 1.17em }\\n.markdown ul { padding-inline-start: 2em }\\n.markdown ol { padding-inline-start: 2em }\\n.markdown strong { font-weight: 600 }\\n.markdown a { color: -webkit-link }\\n.markdown a { color: -moz-hyperlinkText }\\n\");\n },\n function(Bokeh) {\n inject_raw_css(\".json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n color: black;\\n text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \\\"No properties\\\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \\\"[]\\\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n color: green;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: blue;\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n color: #00008B;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n color: white;\\n text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \\\"No properties\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \\\"[]\\\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n color: #31F031;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: #027BFF;\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n color: #23A0DB;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \\\"\\\\25BA\\\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n\");\n },\n function(Bokeh) {\n inject_raw_css(\".bk.pn-loading:before {\\n position: absolute;\\n height: 100%;\\n width: 100%;\\n content: '';\\n z-index: 1000;\\n background-color: rgb(255,255,255,0.50);\\n border-color: lightgray;\\n background-repeat: no-repeat;\\n background-position: center;\\n background-size: auto 50%;\\n border-width: 1px;\\n cursor: progress;\\n}\\n.bk.pn-loading.arcs:hover:before {\\n cursor: progress;\\n}\\n\");\n },\n function(Bokeh) {\n inject_raw_css(\"table.panel-df {\\n margin-left: auto;\\n margin-right: auto;\\n border: none;\\n border-collapse: collapse;\\n border-spacing: 0;\\n color: black;\\n font-size: 12px;\\n table-layout: fixed;\\n width: 100%;\\n}\\n\\n.panel-df tr, .panel-df th, .panel-df td {\\n text-align: right;\\n vertical-align: middle;\\n padding: 0.5em 0.5em !important;\\n line-height: normal;\\n white-space: normal;\\n max-width: none;\\n border: none;\\n}\\n\\n.panel-df tbody {\\n display: table-row-group;\\n vertical-align: middle;\\n border-color: inherit;\\n}\\n\\n.panel-df tbody tr:nth-child(odd) {\\n background: #f5f5f5;\\n}\\n\\n.panel-df thead {\\n border-bottom: 1px solid black;\\n vertical-align: bottom;\\n}\\n\\n.panel-df tr:hover {\\n background: lightblue !important;\\n cursor: pointer;\\n}\\n\");\n },\n function(Bokeh) {\n inject_raw_css(\"\\n .bk.pn-loading.arcs:before {\\n background-image: url(\\\"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiBzdHlsZT0ibWFyZ2luOiBhdXRvOyBiYWNrZ3JvdW5kOiBub25lOyBkaXNwbGF5OiBibG9jazsgc2hhcGUtcmVuZGVyaW5nOiBhdXRvOyIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIj4gIDxjaXJjbGUgY3g9IjUwIiBjeT0iNTAiIHI9IjMyIiBzdHJva2Utd2lkdGg9IjgiIHN0cm9rZT0iI2MzYzNjMyIgc3Ryb2tlLWRhc2hhcnJheT0iNTAuMjY1NDgyNDU3NDM2NjkgNTAuMjY1NDgyNDU3NDM2NjkiIGZpbGw9Im5vbmUiIHN0cm9rZS1saW5lY2FwPSJyb3VuZCI+ICAgIDxhbmltYXRlVHJhbnNmb3JtIGF0dHJpYnV0ZU5hbWU9InRyYW5zZm9ybSIgdHlwZT0icm90YXRlIiByZXBlYXRDb3VudD0iaW5kZWZpbml0ZSIgZHVyPSIxcyIga2V5VGltZXM9IjA7MSIgdmFsdWVzPSIwIDUwIDUwOzM2MCA1MCA1MCI+PC9hbmltYXRlVHJhbnNmb3JtPiAgPC9jaXJjbGU+PC9zdmc+\\\")\\n }\\n \");\n },\n function(Bokeh) {\n /* BEGIN bokeh.min.js */\n /*!\n * Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors\n * All rights reserved.\n * \n * Redistribution and use in source and binary forms, with or without modification,\n * are permitted provided that the following conditions are met:\n * \n * Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n * \n * Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n * \n * Neither the name of Anaconda nor the names of any contributors\n * may be used to endorse or promote products derived from this software\n * without specific prior written permission.\n * \n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n * THE POSSIBILITY OF SUCH DAMAGE.\n */\n (function(root, factory) {\n const bokeh = factory();\n bokeh.__bokeh__ = true;\n if (typeof root.Bokeh === \"undefined\" || typeof root.Bokeh.__bokeh__ === \"undefined\") {\n root.Bokeh = bokeh;\n }\n const Bokeh = root.Bokeh;\n Bokeh[bokeh.version] = bokeh;\n })(this, function() {\n var define;\n var parent_require = typeof require === \"function\" && require\n return (function(modules, entry, aliases, externals) {\n if (aliases === undefined) aliases = {};\n if (externals === undefined) externals = {};\n\n var cache = {};\n\n var normalize = function(name) {\n if (typeof name === \"number\")\n return name;\n\n if (name === \"bokehjs\")\n return entry;\n\n if (!externals[name]) {\n var prefix = \"@bokehjs/\"\n if (name.slice(0, prefix.length) === prefix)\n name = name.slice(prefix.length)\n }\n\n var alias = aliases[name]\n if (alias != null)\n return alias;\n\n var trailing = name.length > 0 && name[name.lenght-1] === \"/\";\n var index = aliases[name + (trailing ? \"\" : \"/\") + \"index\"];\n if (index != null)\n return index;\n\n return name;\n }\n\n var require = function(name) {\n var mod = cache[name];\n if (!mod) {\n var id = normalize(name);\n\n mod = cache[id];\n if (!mod) {\n if (!modules[id]) {\n if (externals[id] === false || (externals[id] == true && parent_require)) {\n try {\n mod = {exports: externals[id] ? parent_require(id) : {}};\n cache[id] = cache[name] = mod;\n return mod.exports;\n } catch (e) {}\n }\n\n var err = new Error(\"Cannot find module '\" + name + \"'\");\n err.code = 'MODULE_NOT_FOUND';\n throw err;\n }\n\n mod = {exports: {}};\n cache[id] = cache[name] = mod;\n\n function __esModule() {\n Object.defineProperty(mod.exports, \"__esModule\", {value: true});\n }\n\n function __esExport(name, value) {\n Object.defineProperty(mod.exports, name, {\n enumerable: true, get: function () { return value; }\n });\n }\n\n modules[id].call(mod.exports, require, mod, mod.exports, __esModule, __esExport);\n } else {\n cache[name] = mod;\n }\n }\n\n return mod.exports;\n }\n require.resolve = function(name) {\n return \"\"\n }\n\n var main = require(entry);\n main.require = require;\n\n if (typeof Proxy !== \"undefined\") {\n // allow Bokeh.loader[\"@bokehjs/module/name\"] syntax\n main.loader = new Proxy({}, {\n get: function(_obj, module) {\n return require(module);\n }\n });\n }\n\n main.register_plugin = function(plugin_modules, plugin_entry, plugin_aliases, plugin_externals) {\n if (plugin_aliases === undefined) plugin_aliases = {};\n if (plugin_externals === undefined) plugin_externals = {};\n\n for (var name in plugin_modules) {\n modules[name] = plugin_modules[name];\n }\n\n for (var name in plugin_aliases) {\n aliases[name] = plugin_aliases[name];\n }\n\n for (var name in plugin_externals) {\n externals[name] = plugin_externals[name];\n }\n\n var plugin = require(plugin_entry);\n\n for (var name in plugin) {\n main[name] = plugin[name];\n }\n\n return plugin;\n }\n\n return main;\n })\n ([\n function _(t,_,n,o,r){o();t(1).__exportStar(t(2),n)},\n function _(t,e,n,r,o){r();var a=function(t,e){return(a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])})(t,e)};n.__extends=function(t,e){function n(){this.constructor=t}a(t,e),t.prototype=null===e?Object.create(e):(n.prototype=e.prototype,new n)};function i(t){var e=\"function\"==typeof Symbol&&Symbol.iterator,n=e&&t[e],r=0;if(n)return n.call(t);if(t&&\"number\"==typeof t.length)return{next:function(){return t&&r>=t.length&&(t=void 0),{value:t&&t[r++],done:!t}}};throw new TypeError(e?\"Object is not iterable.\":\"Symbol.iterator is not defined.\")}function c(t,e){var n=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!n)return t;var r,o,a=n.call(t),i=[];try{for(;(void 0===e||e-- >0)&&!(r=a.next()).done;)i.push(r.value)}catch(t){o={error:t}}finally{try{r&&!r.done&&(n=a.return)&&n.call(a)}finally{if(o)throw o.error}}return i}function u(t){return this instanceof u?(this.v=t,this):new u(t)}n.__assign=function(){return n.__assign=Object.assign||function(t){for(var e,n=1,r=arguments.length;n<r;n++)for(var o in e=arguments[n])Object.prototype.hasOwnProperty.call(e,o)&&(t[o]=e[o]);return t},n.__assign.apply(this,arguments)},n.__rest=function(t,e){var n={};for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&e.indexOf(r)<0&&(n[r]=t[r]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols){var o=0;for(r=Object.getOwnPropertySymbols(t);o<r.length;o++)e.indexOf(r[o])<0&&Object.prototype.propertyIsEnumerable.call(t,r[o])&&(n[r[o]]=t[r[o]])}return n},n.__decorate=function(t,e,n,r){var o,a=arguments.length,i=a<3?e:null===r?r=Object.getOwnPropertyDescriptor(e,n):r;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)i=Reflect.decorate(t,e,n,r);else for(var c=t.length-1;c>=0;c--)(o=t[c])&&(i=(a<3?o(i):a>3?o(e,n,i):o(e,n))||i);return a>3&&i&&Object.defineProperty(e,n,i),i},n.__param=function(t,e){return function(n,r){e(n,r,t)}},n.__metadata=function(t,e){if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.metadata)return Reflect.metadata(t,e)},n.__awaiter=function(t,e,n,r){return new(n||(n=Promise))((function(o,a){function i(t){try{u(r.next(t))}catch(t){a(t)}}function c(t){try{u(r.throw(t))}catch(t){a(t)}}function u(t){var e;t.done?o(t.value):(e=t.value,e instanceof n?e:new n((function(t){t(e)}))).then(i,c)}u((r=r.apply(t,e||[])).next())}))},n.__generator=function(t,e){var n,r,o,a,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return a={next:c(0),throw:c(1),return:c(2)},\"function\"==typeof Symbol&&(a[Symbol.iterator]=function(){return this}),a;function c(a){return function(c){return function(a){if(n)throw new TypeError(\"Generator is already executing.\");for(;i;)try{if(n=1,r&&(o=2&a[0]?r.return:a[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,a[1])).done)return o;switch(r=0,o&&(a=[2&a[0],o.value]),a[0]){case 0:case 1:o=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,r=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(o=i.trys,(o=o.length>0&&o[o.length-1])||6!==a[0]&&2!==a[0])){i=0;continue}if(3===a[0]&&(!o||a[1]>o[0]&&a[1]<o[3])){i.label=a[1];break}if(6===a[0]&&i.label<o[1]){i.label=o[1],o=a;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(a);break}o[2]&&i.ops.pop(),i.trys.pop();continue}a=e.call(t,i)}catch(t){a=[6,t],r=0}finally{n=o=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}([a,c])}}},n.__createBinding=Object.create?function(t,e,n,r){void 0===r&&(r=n),Object.defineProperty(t,r,{enumerable:!0,get:function(){return e[n]}})}:function(t,e,n,r){void 0===r&&(r=n),t[r]=e[n]},n.__exportStar=function(t,e){for(var r in t)\"default\"===r||Object.prototype.hasOwnProperty.call(e,r)||n.__createBinding(e,t,r)},n.__values=i,n.__read=c,n.__spread=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(c(arguments[e]));return t},n.__spreadArrays=function(){for(var t=0,e=0,n=arguments.length;e<n;e++)t+=arguments[e].length;var r=Array(t),o=0;for(e=0;e<n;e++)for(var a=arguments[e],i=0,c=a.length;i<c;i++,o++)r[o]=a[i];return r},n.__await=u,n.__asyncGenerator=function(t,e,n){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var r,o=n.apply(t,e||[]),a=[];return r={},i(\"next\"),i(\"throw\"),i(\"return\"),r[Symbol.asyncIterator]=function(){return this},r;function i(t){o[t]&&(r[t]=function(e){return new Promise((function(n,r){a.push([t,e,n,r])>1||c(t,e)}))})}function c(t,e){try{(n=o[t](e)).value instanceof u?Promise.resolve(n.value.v).then(f,l):s(a[0][2],n)}catch(t){s(a[0][3],t)}var n}function f(t){c(\"next\",t)}function l(t){c(\"throw\",t)}function s(t,e){t(e),a.shift(),a.length&&c(a[0][0],a[0][1])}},n.__asyncDelegator=function(t){var e,n;return e={},r(\"next\"),r(\"throw\",(function(t){throw t})),r(\"return\"),e[Symbol.iterator]=function(){return this},e;function r(r,o){e[r]=t[r]?function(e){return(n=!n)?{value:u(t[r](e)),done:\"return\"===r}:o?o(e):e}:o}},n.__asyncValues=function(t){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var e,n=t[Symbol.asyncIterator];return n?n.call(t):(t=i(t),e={},r(\"next\"),r(\"throw\"),r(\"return\"),e[Symbol.asyncIterator]=function(){return this},e);function r(n){e[n]=t[n]&&function(e){return new Promise((function(r,o){(function(t,e,n,r){Promise.resolve(r).then((function(e){t({value:e,done:n})}),e)})(r,o,(e=t[n](e)).done,e.value)}))}}},n.__makeTemplateObject=function(t,e){return Object.defineProperty?Object.defineProperty(t,\"raw\",{value:e}):t.raw=e,t};var f=Object.create?function(t,e){Object.defineProperty(t,\"default\",{enumerable:!0,value:e})}:function(t,e){t.default=e};n.__importStar=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var r in t)\"default\"!==r&&Object.prototype.hasOwnProperty.call(t,r)&&n.__createBinding(e,t,r);return f(e,t),e},n.__importDefault=function(t){return t&&t.__esModule?t:{default:t}},n.__classPrivateFieldGet=function(t,e){if(!e.has(t))throw new TypeError(\"attempted to get private field on non-instance\");return e.get(t)},n.__classPrivateFieldSet=function(t,e,n){if(!e.has(t))throw new TypeError(\"attempted to set private field on non-instance\");return e.set(t,n),n}},\n function _(e,t,o,s,l){s();const n=e(1);l(\"version\",e(3).version),l(\"index\",e(4).index),o.embed=n.__importStar(e(4)),o.protocol=n.__importStar(e(404)),o._testing=n.__importStar(e(405));var r=e(19);l(\"logger\",r.logger),l(\"set_log_level\",r.set_log_level),l(\"settings\",e(28).settings),l(\"Models\",e(7).Models),l(\"documents\",e(5).documents),l(\"safely\",e(406).safely)},\n function _(n,i,o,c,e){c(),o.version=\"2.3.3\"},\n function _(e,o,t,n,s){n();const d=e(5),r=e(19),_=e(34),c=e(13),i=e(8),a=e(16),u=e(395),l=e(397),m=e(396);var f=e(395);s(\"add_document_standalone\",f.add_document_standalone),s(\"index\",f.index),s(\"add_document_from_session\",e(397).add_document_from_session);var g=e(402);async function w(e,o,t,n){i.isString(e)&&(e=JSON.parse(_.unescape(e)));const s={};for(const[o,t]of c.entries(e))s[o]=d.Document.from_json(t);const a=[];for(const e of o){const o=m._resolve_element(e),d=m._resolve_root_elements(e);if(null!=e.docid)a.push(await u.add_document_standalone(s[e.docid],o,d,e.use_for_title));else{if(null==e.token)throw new Error(\"Error rendering Bokeh items: either 'docid' or 'token' was expected.\");{const s=l._get_ws_url(t,n);r.logger.debug(`embed: computed ws url: ${s}`);try{a.push(await l.add_document_from_session(s,e.token,o,d,e.use_for_title)),console.log(\"Bokeh items were rendered successfully\")}catch(e){console.log(\"Error rendering Bokeh items:\",e)}}}}return a}s(\"embed_items_notebook\",g.embed_items_notebook),s(\"kernels\",g.kernels),s(\"BOKEH_ROOT\",e(396).BOKEH_ROOT),t.embed_item=async function(e,o){const t={},n=_.uuid4();t[n]=e.doc,null==o&&(o=e.target_id);const s=document.getElementById(o);null!=s&&s.classList.add(m.BOKEH_ROOT);const d={roots:{[e.root_id]:o},root_ids:[e.root_id],docid:n};await a.defer();const[r]=await w(t,[d]);return r},t.embed_items=async function(e,o,t,n){return await a.defer(),w(e,o,t,n)}},\n function _(t,_,o,r,n){r();const a=t(1);a.__exportStar(t(6),o),a.__exportStar(t(35),o)},\n function _(e,t,s,o,n){o();const r=e(1),i=e(7),l=e(3),_=e(19),a=e(264),c=e(14),d=e(30),h=e(15),f=e(17),u=e(31),m=e(9),g=e(13),v=r.__importStar(e(132)),w=e(26),p=e(8),b=e(319),y=e(130),k=e(53),M=e(394),j=e(35);class S{constructor(e){this.document=e,this.session=null,this.subscribed_models=new Set}send_event(e){const t=new j.MessageSentEvent(this.document,\"bokeh_event\",e.to_json());this.document._trigger_on_change(t)}trigger(e){for(const t of this.subscribed_models)null!=e.origin&&e.origin!=t||t._process_event(e)}}s.EventManager=S,S.__name__=\"EventManager\",s.documents=[],s.DEFAULT_TITLE=\"Bokeh Application\";class E{constructor(e){var t;s.documents.push(this),this._init_timestamp=Date.now(),this._resolver=null!==(t=null==e?void 0:e.resolver)&&void 0!==t?t:new i.ModelResolver,this._title=s.DEFAULT_TITLE,this._roots=[],this._all_models=new Map,this._all_models_freeze_count=0,this._callbacks=new Map,this._message_callbacks=new Map,this.event_manager=new S(this),this.idle=new h.Signal0(this,\"idle\"),this._idle_roots=new WeakMap,this._interactive_timestamp=null,this._interactive_plot=null}get layoutables(){return this._roots.filter((e=>e instanceof b.LayoutDOM))}get is_idle(){for(const e of this.layoutables)if(!this._idle_roots.has(e))return!1;return!0}notify_idle(e){this._idle_roots.set(e,!0),this.is_idle&&(_.logger.info(`document idle at ${Date.now()-this._init_timestamp} ms`),this.event_manager.send_event(new a.DocumentReady),this.idle.emit())}clear(){this._push_all_models_freeze();try{for(;this._roots.length>0;)this.remove_root(this._roots[0])}finally{this._pop_all_models_freeze()}}interactive_start(e){null==this._interactive_plot&&(this._interactive_plot=e,this._interactive_plot.trigger_event(new a.LODStart)),this._interactive_timestamp=Date.now()}interactive_stop(){null!=this._interactive_plot&&this._interactive_plot.trigger_event(new a.LODEnd),this._interactive_plot=null,this._interactive_timestamp=null}interactive_duration(){return null==this._interactive_timestamp?-1:Date.now()-this._interactive_timestamp}destructively_move(e){if(e===this)throw new Error(\"Attempted to overwrite a document with itself\");e.clear();const t=m.copy(this._roots);this.clear();for(const e of t)if(null!=e.document)throw new Error(`Somehow we didn't detach ${e}`);if(0!=this._all_models.size)throw new Error(`this._all_models still had stuff in it: ${this._all_models}`);for(const s of t)e.add_root(s);e.set_title(this._title)}_push_all_models_freeze(){this._all_models_freeze_count+=1}_pop_all_models_freeze(){this._all_models_freeze_count-=1,0===this._all_models_freeze_count&&this._recompute_all_models()}_invalidate_all_models(){_.logger.debug(\"invalidating document models\"),0===this._all_models_freeze_count&&this._recompute_all_models()}_recompute_all_models(){let e=new Set;for(const t of this._roots)e=v.union(e,t.references());const t=new Set(this._all_models.values()),s=v.difference(t,e),o=v.difference(e,t),n=new Map;for(const t of e)n.set(t.id,t);for(const e of s)e.detach_document();for(const e of o)e.attach_document(this);this._all_models=n}roots(){return this._roots}add_root(e,t){if(_.logger.debug(`Adding root: ${e}`),!m.includes(this._roots,e)){this._push_all_models_freeze();try{this._roots.push(e)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new j.RootAddedEvent(this,e,t))}}remove_root(e,t){const s=this._roots.indexOf(e);if(!(s<0)){this._push_all_models_freeze();try{this._roots.splice(s,1)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new j.RootRemovedEvent(this,e,t))}}title(){return this._title}set_title(e,t){e!==this._title&&(this._title=e,this._trigger_on_change(new j.TitleChangedEvent(this,e,t)))}get_model_by_id(e){var t;return null!==(t=this._all_models.get(e))&&void 0!==t?t:null}get_model_by_name(e){const t=[];for(const s of this._all_models.values())s instanceof k.Model&&s.name==e&&t.push(s);switch(t.length){case 0:return null;case 1:return t[0];default:throw new Error(`Multiple models are named '${e}'`)}}on_message(e,t){const s=this._message_callbacks.get(e);null==s?this._message_callbacks.set(e,new Set([t])):s.add(t)}remove_on_message(e,t){var s;null===(s=this._message_callbacks.get(e))||void 0===s||s.delete(t)}_trigger_on_message(e,t){const s=this._message_callbacks.get(e);if(null!=s)for(const e of s)e(t)}on_change(e,t=!1){this._callbacks.has(e)||this._callbacks.set(e,t)}remove_on_change(e){this._callbacks.delete(e)}_trigger_on_change(e){for(const[t,s]of this._callbacks)if(!s&&e instanceof j.DocumentEventBatch)for(const s of e.events)t(s);else t(e)}_notify_change(e,t,s,o,n){this._trigger_on_change(new j.ModelChangedEvent(this,e,t,s,o,null==n?void 0:n.setter_id,null==n?void 0:n.hint))}static _instantiate_object(e,t,s,o){const n=Object.assign(Object.assign({},s),{id:e,__deferred__:!0});return new(o.get(t))(n)}static _instantiate_references_json(e,t,s){var o;const n=new Map;for(const r of e){const e=r.id,i=r.type,l=null!==(o=r.attributes)&&void 0!==o?o:{};let _=t.get(e);null==_&&(_=E._instantiate_object(e,i,l,s),null!=r.subtype&&_.set_subtype(r.subtype)),n.set(_.id,_)}return n}static _resolve_refs(e,t,s,o){function n(e){var r;if(f.is_ref(e)){const o=null!==(r=t.get(e.id))&&void 0!==r?r:s.get(e.id);if(null!=o)return o;throw new Error(`reference ${JSON.stringify(e)} isn't known (not in Document?)`)}return u.is_NDArray_ref(e)?u.decode_NDArray(e,o):p.isArray(e)?function(e){const t=[];for(const s of e)t.push(n(s));return t}(e):p.isPlainObject(e)?function(e){const t={};for(const[s,o]of g.entries(e))t[s]=n(o);return t}(e):e}return n(e)}static _initialize_references_json(e,t,s,o){const n=new Map;for(const{id:r,attributes:i}of e){const e=!t.has(r),l=e?s.get(r):t.get(r),_=E._resolve_refs(i,t,s,o);l.setv(_,{silent:!0}),n.set(r,{instance:l,is_new:e})}const r=[],i=new Set;function l(e){if(e instanceof c.HasProps){if(n.has(e.id)&&!i.has(e.id)){i.add(e.id);const{instance:t,is_new:s}=n.get(e.id),{attributes:o}=t;for(const e of g.values(o))l(e);s&&(t.finalize(),r.push(t))}}else if(p.isArray(e))for(const t of e)l(t);else if(p.isPlainObject(e))for(const t of g.values(e))l(t)}for(const e of n.values())l(e.instance);for(const e of r)e.connect_signals()}static _event_for_attribute_change(e,t,s,o,n){if(o.get_model_by_id(e.id).property(t).syncable){const r={kind:\"ModelChanged\",model:{id:e.id},attr:t,new:s};return c.HasProps._json_record_references(o,s,n,{recursive:!0}),r}return null}static _events_to_sync_objects(e,t,s,o){const n=Object.keys(e.attributes),r=Object.keys(t.attributes),i=m.difference(n,r),l=m.difference(r,n),a=m.intersection(n,r),c=[];for(const e of i)_.logger.warn(`Server sent key ${e} but we don't seem to have it in our JSON`);for(const n of l){const r=t.attributes[n];c.push(E._event_for_attribute_change(e,n,r,s,o))}for(const n of a){const r=e.attributes[n],i=t.attributes[n];null==r&&null==i||(null==r||null==i?c.push(E._event_for_attribute_change(e,n,i,s,o)):w.is_equal(r,i)||c.push(E._event_for_attribute_change(e,n,i,s,o)))}return c.filter((e=>null!=e))}static _compute_patch_since_json(e,t){const s=t.to_json(!1);function o(e){const t=new Map;for(const s of e.roots.references)t.set(s.id,s);return t}const n=o(e),r=new Map,i=[];for(const t of e.roots.root_ids)r.set(t,n.get(t)),i.push(t);const l=o(s),_=new Map,a=[];for(const e of s.roots.root_ids)_.set(e,l.get(e)),a.push(e);if(i.sort(),a.sort(),m.difference(i,a).length>0||m.difference(a,i).length>0)throw new Error(\"Not implemented: computing add/remove of document roots\");const c=new Set;let h=[];for(const e of t._all_models.keys())if(n.has(e)){const s=E._events_to_sync_objects(n.get(e),l.get(e),t,c);h=h.concat(s)}const f=new d.Serializer({include_defaults:!1});return f.to_serializable([...c]),{references:[...f.definitions],events:h}}to_json_string(e=!0){return JSON.stringify(this.to_json(e))}to_json(e=!0){const t=new d.Serializer({include_defaults:e}),s=t.to_serializable(this._roots);return{version:l.version,title:this._title,roots:{root_ids:s.map((e=>e.id)),references:[...t.definitions]}}}static from_json_string(e){const t=JSON.parse(e);return E.from_json(t)}static from_json(e){_.logger.debug(\"Creating Document from JSON\");const t=e.version,s=-1!==t.indexOf(\"+\")||-1!==t.indexOf(\"-\"),o=`Library versions: JS (${l.version}) / Python (${t})`;s||l.version.replace(/-(dev|rc)\\./,\"$1\")==t?_.logger.debug(o):(_.logger.warn(\"JS/Python version mismatch\"),_.logger.warn(o));const n=new i.ModelResolver;null!=e.defs&&M.resolve_defs(e.defs,n);const r=e.roots,a=r.root_ids,c=r.references,d=E._instantiate_references_json(c,new Map,n);E._initialize_references_json(c,new Map,d,new Map);const h=new E({resolver:n});for(const e of a){const t=d.get(e);null!=t&&h.add_root(t)}return h.set_title(e.title),h}replace_with_json(e){E.from_json(e).destructively_move(this)}create_json_patch_string(e){return JSON.stringify(this.create_json_patch(e))}create_json_patch(e){for(const t of e)if(t.document!=this)throw new Error(\"Cannot create a patch using events from a different document\");const t=new d.Serializer,s=t.to_serializable(e);for(const e of this._all_models.values())t.remove_def(e);return{events:s,references:[...t.definitions]}}apply_json_patch(e,t=new Map,s){const o=e.references,n=e.events,r=E._instantiate_references_json(o,this._all_models,this._resolver);t instanceof Map||(t=new Map(t));for(const e of n)switch(e.kind){case\"RootAdded\":case\"RootRemoved\":case\"ModelChanged\":{const t=e.model.id,s=this._all_models.get(t);if(null!=s)r.set(t,s);else if(!r.has(t))throw _.logger.warn(`Got an event for unknown model ${e.model}\"`),new Error(\"event model wasn't known\");break}}const i=new Map(this._all_models),l=new Map;for(const[e,t]of r)i.has(e)||l.set(e,t);E._initialize_references_json(o,i,l,t);for(const e of n)switch(e.kind){case\"MessageSent\":{const{msg_type:s,msg_data:o}=e;let n;if(void 0===o){if(1!=t.size)throw new Error(\"expected exactly one buffer\");{const[[,e]]=t;n=e}}else n=E._resolve_refs(o,i,l,t);this._trigger_on_message(s,n);break}case\"ModelChanged\":{const o=e.model.id,n=this._all_models.get(o);if(null==n)throw new Error(`Cannot apply patch to ${o} which is not in the document`);const r=e.attr,_=E._resolve_refs(e.new,i,l,t);n.setv({[r]:_},{setter_id:s});break}case\"ColumnDataChanged\":{const o=e.column_source.id,n=this._all_models.get(o);if(null==n)throw new Error(`Cannot stream to ${o} which is not in the document`);const r=E._resolve_refs(e.new,new Map,new Map,t);if(null!=e.cols)for(const e in n.data)e in r||(r[e]=n.data[e]);n.setv({data:r},{setter_id:s,check_eq:!1});break}case\"ColumnsStreamed\":{const t=e.column_source.id,o=this._all_models.get(t);if(null==o)throw new Error(`Cannot stream to ${t} which is not in the document`);if(!(o instanceof y.ColumnDataSource))throw new Error(\"Cannot stream to non-ColumnDataSource\");const n=e.data,r=e.rollover;o.stream(n,r,s);break}case\"ColumnsPatched\":{const t=e.column_source.id,o=this._all_models.get(t);if(null==o)throw new Error(`Cannot patch ${t} which is not in the document`);if(!(o instanceof y.ColumnDataSource))throw new Error(\"Cannot patch non-ColumnDataSource\");const n=e.patches;o.patch(n,s);break}case\"RootAdded\":{const t=e.model.id,o=r.get(t);this.add_root(o,s);break}case\"RootRemoved\":{const t=e.model.id,o=r.get(t);this.remove_root(o,s);break}case\"TitleChanged\":this.set_title(e.title,s);break;default:throw new Error(\"Unknown patch event \"+JSON.stringify(e))}}}s.Document=E,E.__name__=\"Document\"},\n function _(e,o,s,r,t){r();const l=e(1),d=e(8),i=e(13),n=e(14);s.overrides={};const a=new Map;s.Models=e=>{const o=s.Models.get(e);if(null!=o)return o;throw new Error(`Model '${e}' does not exist. This could be due to a widget or a custom model not being registered before first usage.`)},s.Models.get=e=>{var o;return null!==(o=s.overrides[e])&&void 0!==o?o:a.get(e)},s.Models.register=(e,o)=>{s.overrides[e]=o},s.Models.unregister=e=>{delete s.overrides[e]},s.Models.register_models=(e,o=!1,s)=>{var r;if(null!=e)for(const t of d.isArray(e)?e:i.values(e))if(r=t,d.isObject(r)&&r.prototype instanceof n.HasProps){const e=t.__qualified__;o||!a.has(e)?a.set(e,t):null!=s?s(e):console.warn(`Model '${e}' was already registered`)}},s.register_models=s.Models.register_models,s.Models.registered_names=()=>[...a.keys()];class u{constructor(){this._known_models=new Map}get(e,o){var r;const t=null!==(r=s.Models.get(e))&&void 0!==r?r:this._known_models.get(e);if(null!=t)return t;if(void 0!==o)return o;throw new Error(`Model '${e}' does not exist. This could be due to a widget or a custom model not being registered before first usage.`)}register(e){const o=e.__qualified__;null==this.get(o,null)?this._known_models.set(o,e):console.warn(`Model '${o}' was already registered with this resolver`)}}s.ModelResolver=u,u.__name__=\"ModelResolver\";const _=l.__importStar(e(38));s.register_models(_)},\n function _(n,r,t,e,i){e();\n // (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n // Underscore may be freely distributed under the MIT license.\n const o=n(9),u=Object.prototype.toString;function c(n){return!0===n||!1===n||\"[object Boolean]\"===u.call(n)}function f(n){return\"[object Number]\"===u.call(n)}function a(n){return\"[object String]\"===u.call(n)}function l(n){const r=typeof n;return\"function\"===r||\"object\"===r&&!!n}function s(n){return l(n)&&void 0!==n[Symbol.iterator]}t.isBoolean=c,t.isNumber=f,t.isInteger=function(n){return f(n)&&Number.isInteger(n)},t.isString=a,t.isPrimitive=function(n){return null===n||c(n)||f(n)||a(n)},t.isFunction=function(n){return\"[object Function]\"===u.call(n)},t.isArray=function(n){return Array.isArray(n)},t.isArrayOf=function(n,r){return o.every(n,r)},t.isArrayableOf=function(n,r){for(let t=0,e=n.length;t<e;t++)if(!r(n[t]))return!1;return!0},t.isTypedArray=function(n){return ArrayBuffer.isView(n)&&!(n instanceof DataView)},t.isObject=l,t.isPlainObject=function(n){return l(n)&&(null==n.constructor||n.constructor===Object)},t.isIterable=s,t.isArrayable=function(n){return s(n)&&\"length\"in n}},\n function _(n,t,e,r,o){r();\n // (c) 2009-2015 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n // Underscore may be freely distributed under the MIT license.\n const i=n(10),u=n(11),c=n(12);o(\"map\",c.map),o(\"reduce\",c.reduce),o(\"min\",c.min),o(\"min_by\",c.min_by),o(\"max\",c.max),o(\"max_by\",c.max_by),o(\"sum\",c.sum),o(\"cumsum\",c.cumsum),o(\"every\",c.every),o(\"some\",c.some),o(\"find\",c.find),o(\"find_last\",c.find_last),o(\"find_index\",c.find_index),o(\"find_last_index\",c.find_last_index),o(\"sorted_index\",c.sorted_index),o(\"is_empty\",c.is_empty);const f=Array.prototype.slice;function s(n){return f.call(n)}function a(n){return[].concat(...n)}function l(n,t){return-1!==n.indexOf(t)}function m(n,t,e=1){u.assert(e>0,\"'step' must be a positive number\"),null==t&&(t=n,n=0);const{max:r,ceil:o,abs:i}=Math,c=n<=t?e:-e,f=r(o(i(t-n)/e),0),s=new Array(f);for(let t=0;t<f;t++,n+=c)s[t]=n;return s}e.head=function(n){return n[0]},e.tail=function(n){return n[n.length-1]},e.last=function(n){return n[n.length-1]},e.copy=s,e.concat=a,e.includes=l,e.contains=l,e.nth=function(n,t){return n[t>=0?t:n.length+t]},e.zip=function(...n){if(0==n.length)return[];const t=c.min(n.map((n=>n.length))),e=n.length,r=new Array(t);for(let o=0;o<t;o++){r[o]=new Array(e);for(let t=0;t<e;t++)r[o][t]=n[t][o]}return r},e.unzip=function(n){const t=n.length,e=c.min(n.map((n=>n.length))),r=Array(e);for(let n=0;n<e;n++)r[n]=new Array(t);for(let o=0;o<t;o++)for(let t=0;t<e;t++)r[t][o]=n[o][t];return r},e.range=m,e.linspace=function(n,t,e=100){const r=(t-n)/(e-1),o=new Array(e);for(let t=0;t<e;t++)o[t]=n+r*t;return o},e.transpose=function(n){const t=n.length,e=n[0].length,r=[];for(let o=0;o<e;o++){r[o]=[];for(let e=0;e<t;e++)r[o][e]=n[e][o]}return r},e.argmin=function(n){return c.min_by(m(n.length),(t=>n[t]))},e.argmax=function(n){return c.max_by(m(n.length),(t=>n[t]))},e.sort_by=function(n,t){const e=n.map(((n,e)=>({value:n,index:e,key:t(n)})));return e.sort(((n,t)=>{const e=n.key,r=t.key;if(e!==r){if(e>r||void 0===e)return 1;if(e<r||void 0===r)return-1}return n.index-t.index})),e.map((n=>n.value))},e.uniq=function(n){const t=new Set;for(const e of n)t.add(e);return[...t]},e.uniq_by=function(n,t){const e=[],r=[];for(const o of n){const n=t(o);l(r,n)||(r.push(n),e.push(o))}return e},e.union=function(...n){const t=new Set;for(const e of n)for(const n of e)t.add(n);return[...t]},e.intersection=function(n,...t){const e=[];n:for(const r of n)if(!l(e,r)){for(const n of t)if(!l(n,r))continue n;e.push(r)}return e},e.difference=function(n,...t){const e=a(t);return n.filter((n=>!l(e,n)))},e.remove_at=function(n,t){const e=s(n);return e.splice(t,1),e},e.remove_by=function(n,t){for(let e=0;e<n.length;)t(n[e])?n.splice(e,1):e++},e.shuffle=function(n){const t=n.length,e=new Array(t);for(let r=0;r<t;r++){const t=i.randomIn(0,r);t!==r&&(e[r]=e[t]),e[t]=n[r]}return e},e.pairwise=function(n,t){const e=n.length,r=new Array(e-1);for(let o=0;o<e-1;o++)r[o]=t(n[o],n[o+1]);return r},e.reversed=function(n){const t=n.length,e=new Array(t);for(let r=0;r<t;r++)e[t-r-1]=n[r];return e},e.repeat=function(n,t){const e=new Array(t);for(let r=0;r<t;r++)e[r]=n;return e}},\n function _(n,r,t,e,o){e();const{PI:u}=Math;function a(n){if(0==n)return 0;for(;n<=0;)n+=2*u;for(;n>2*u;)n-=2*u;return n}function c(n,r){return a(n-r)}function f(){return Math.random()}function i(n){switch(n){case\"deg\":return u/180;case\"rad\":return 1;case\"grad\":return u/200;case\"turn\":return 2*u}}t.angle_norm=a,t.angle_dist=c,t.angle_between=function(n,r,t,e=!1){const o=c(r,t);if(0==o)return!1;if(o==2*u)return!0;const f=a(n),i=c(r,f)<=o&&c(f,t)<=o;return e?!i:i},t.random=f,t.randomIn=function(n,r){return null==r&&(r=n,n=0),n+Math.floor(Math.random()*(r-n+1))},t.atan2=function(n,r){return Math.atan2(r[1]-n[1],r[0]-n[0])},t.radians=function(n){return n*(u/180)},t.degrees=function(n){return n/(u/180)},t.resolve_angle=function(n,r){return-i(r)*n},t.to_radians_coeff=i,t.rnorm=function(n,r){let t,e;for(;t=f(),e=f(),e=(2*e-1)*Math.sqrt(1/Math.E*2),!(-4*t*t*Math.log(t)>=e*e););let o=e/t;return o=n+r*o,o},t.clamp=function(n,r,t){return n<r?r:n>t?t:n},t.log=function(n,r=Math.E){return Math.log(n)/Math.log(r)}},\n function _(r,n,e,o,s){o();class t extends Error{}e.AssertionError=t,t.__name__=\"AssertionError\",e.assert=function(r,n){if(!(!0===r||!1!==r&&r()))throw new t(null!=n?n:\"Assertion failed\")},e.unreachable=function(){throw new Error(\"unreachable code\")}},\n function _(n,t,e,r,o){r();const i=n(10);function l(n,t,e,...r){const o=n.length;t<0&&(t+=o),t<0?t=0:t>o&&(t=o),null==e||e>o-t?e=o-t:e<0&&(e=0);const i=o-e+r.length,l=new n.constructor(i);let u=0;for(;u<t;u++)l[u]=n[u];for(const n of r)l[u++]=n;for(let r=t+e;r<o;r++)l[u++]=n[r];return l}function u(n,t){return l(n,t,n.length-t)}function c(n,t){const e=n.length,r=new n.constructor(e);for(let o=0;o<e;o++)r[o]=t(n[o],o,n);return r}function f(n,t,e){const r=n.length;if(void 0===e&&0==r)throw new Error(\"can't reduce an empty array without an initial value\");let o,i;for(void 0===e?(o=n[0],i=1):(o=e,i=0);i<r;i++)o=t(o,n[i],i,n);return o}function s(n){return function(t,e){const r=t.length;let o=n>0?0:r-1;for(;o>=0&&o<r;o+=n)if(e(t[o]))return o;return-1}}function h(n,t){let e=0,r=n.length;for(;e<r;){const o=Math.floor((e+r)/2);n[o]<t?e=o+1:r=o}return e}function a(n,t,e,r,o){const i=(o-e)/(r-t);let l=i*(n-t)+e;return isFinite(l)||(l=i*(n-r)+o,isFinite(l)||e!=o||(l=e)),l}function g(n,t){if(n<t[0])return-1;if(n>t[t.length-1])return t.length;let e=0,r=t.length-1;for(;r-e!=1;){const o=e+Math.floor((r-e)/2);n>=t[o]?e=o:r=o}return e}e.is_empty=function(n){return 0==n.length},e.copy=function(n){return Array.isArray(n)?n.slice():new n.constructor(n)},e.splice=l,e.head=u,e.insert=function(n,t,e){return l(n,e,0,t)},e.append=function(n,t){return l(n,n.length,0,t)},e.prepend=function(n,t){return l(n,0,0,t)},e.indexOf=function(n,t){for(let e=0,r=n.length;e<r;e++)if(n[e]===t)return e;return-1},e.subselect=function(n,t){const e=t.length,r=new n.constructor(e);for(let o=0;o<e;o++)r[o]=n[t[o]];return r},e.mul=function(n,t,e){const r=n.length,o=null!=e?e:new n.constructor(r);for(let e=0;e<r;e++)o[e]=n[e]*t;return o},e.map=c,e.inplace_map=function(n,t,e){const r=n.length,o=null!=e?e:n;for(let e=0;e<r;e++)o[e]=t(n[e],e)},e.filter=function(n,t){const e=n.length,r=new n.constructor(e);let o=0;for(let i=0;i<e;i++){const e=n[i];t(e,i,n)&&(r[o++]=e)}return u(r,o)},e.reduce=f,e.min=function(n){let t,e=1/0;for(let r=0,o=n.length;r<o;r++)t=n[r],!isNaN(t)&&t<e&&(e=t);return e},e.max=function(n){let t,e=-1/0;for(let r=0,o=n.length;r<o;r++)t=n[r],!isNaN(t)&&t>e&&(e=t);return e},e.minmax=function(n){let t,e=1/0,r=-1/0;for(let o=0,i=n.length;o<i;o++)t=n[o],isNaN(t)||(t<e&&(e=t),t>r&&(r=t));return[e,r]},e.min_by=function(n,t){if(0==n.length)throw new Error(\"min_by() called with an empty array\");let e=n[0],r=t(e);for(let o=1,i=n.length;o<i;o++){const i=n[o],l=t(i);l<r&&(e=i,r=l)}return e},e.max_by=function(n,t){if(0==n.length)throw new Error(\"max_by() called with an empty array\");let e=n[0],r=t(e);for(let o=1,i=n.length;o<i;o++){const i=n[o],l=t(i);l>r&&(e=i,r=l)}return e},e.sum=function(n){let t=0;for(let e=0,r=n.length;e<r;e++)t+=n[e];return t},e.cumsum=function(n){const t=new n.constructor(n.length);return f(n,((n,e,r)=>t[r]=n+e),0),t},e.every=function(n,t){for(let e=0,r=n.length;e<r;e++)if(!t(n[e]))return!1;return!0},e.some=function(n,t){for(let e=0,r=n.length;e<r;e++)if(t(n[e]))return!0;return!1},e.index_of=function(n,t){for(let e=0,r=n.length;e<r;e++)if(n[e]===t)return e;return-1},e.find_index=s(1),e.find_last_index=s(-1),e.find=function(n,t){const r=e.find_index(n,t);return-1==r?void 0:n[r]},e.find_last=function(n,t){const r=e.find_last_index(n,t);return-1==r?void 0:n[r]},e.sorted_index=h,e.bin_counts=function(n,t){const e=t.length-1,r=Array(e).fill(0);for(let o=0;o<n.length;o++){const l=h(t,n[o]);r[i.clamp(l-1,0,e-1)]+=1}return r},e.interpolate=function(n,t,e){const r=n.length,o=new Array(r);for(let i=0;i<r;i++){const r=n[i];if(isNaN(r)){o[i]=r;continue}const l=g(r,t);if(-1==l)o[i]=e[0];else if(l==t.length)o[i]=e[e.length-1];else if(l==t.length-1||t[l]==r)o[i]=e[l];else{const n=t[l],u=e[l],c=t[l+1],f=e[l+1];o[i]=a(r,n,u,c,f)}}return o},e.left_edge_index=g,e.norm=function(n,t,e){const r=e-t;return c(n,(n=>(n-t)/r))}},\n function _(t,e,n,c,o){c();const s=t(9),{hasOwnProperty:r}=Object.prototype;function u(t){return Object.keys(t).length}n.keys=Object.keys,n.values=Object.values,n.entries=Object.entries,n.extend=Object.assign,n.clone=function(t){return Object.assign({},t)},n.merge=function(t,e){const n=Object.create(Object.prototype),c=s.concat([Object.keys(t),Object.keys(e)]);for(const o of c){const c=r.call(t,o)?t[o]:[],u=r.call(e,o)?e[o]:[];n[o]=s.union(c,u)}return n},n.size=u,n.isEmpty=function(t){return 0==u(t)},n.to_object=function(t){const e={};for(const[n,c]of t)e[n]=c;return e}},\n function _(t,e,s,n,r){n();const i=t(1),o=t(15),c=t(17),a=i.__importStar(t(18)),_=i.__importStar(t(21)),h=t(34),u=t(13),l=t(8),f=t(26),p=t(30),d=t(35),g=t(26),y=t(36),v=t(37),m=i.__importStar(t(21));class b extends(o.Signalable()){constructor(t={}){var e,s;super(),this._subtype=void 0,this.document=null,this.destroyed=new o.Signal0(this,\"destroyed\"),this.change=new o.Signal0(this,\"change\"),this.transformchange=new o.Signal0(this,\"transformchange\"),this.exprchange=new o.Signal0(this,\"exprchange\"),this.properties={},this._pending=!1,this._changing=!1;const n=t instanceof Map?t.get.bind(t):e=>t[e];this.id=null!==(e=n(\"id\"))&&void 0!==e?e:h.uniqueId();for(const[t,{type:e,default_value:s,options:r}]of u.entries(this._props)){let i;e instanceof a.PropertyAlias?Object.defineProperty(this.properties,t,{get:()=>this.properties[e.attr],configurable:!1,enumerable:!1}):(i=e instanceof _.Kind?new a.PrimitiveProperty(this,t,e,s,n(t),r):new e(this,t,_.Any,s,n(t),r),this.properties[t]=i)}null!==(s=n(\"__deferred__\"))&&void 0!==s&&s||(this.finalize(),this.connect_signals())}get is_syncable(){return!0}set type(t){console.warn(\"prototype.type = 'ModelName' is deprecated, use static __name__ instead\"),this.constructor.__name__=t}get type(){return this.constructor.__qualified__}static get __qualified__(){const{__module__:t,__name__:e}=this;return null!=t?`${t}.${e}`:e}static get[Symbol.toStringTag](){return this.__name__}static init_HasProps(){this.prototype._props={},this.prototype._mixins=[]}static _fix_default(t,e){if(void 0===t||l.isFunction(t))return t;if(l.isPrimitive(t))return()=>t;{const e=new v.Cloner;return()=>e.clone(t)}}static define(t){for(const[e,s]of u.entries(l.isFunction(t)?t(m):t)){if(null!=this.prototype._props[e])throw new Error(`attempted to redefine property '${this.prototype.type}.${e}'`);if(null!=this.prototype[e])throw new Error(`attempted to redefine attribute '${this.prototype.type}.${e}'`);Object.defineProperty(this.prototype,e,{get(){return this.properties[e].get_value()},set(t){return this.setv({[e]:t}),this},configurable:!1,enumerable:!0});const[t,n,r={}]=s,i={type:t,default_value:this._fix_default(n,e),options:r},o=Object.assign({},this.prototype._props);o[e]=i,this.prototype._props=o}}static internal(t){const e={};for(const[s,n]of u.entries(l.isFunction(t)?t(m):t)){const[t,r,i={}]=n;e[s]=[t,r,Object.assign(Object.assign({},i),{internal:!0})]}this.define(e)}static mixins(t){function e(t,e){const s={};for(const[n,r]of u.entries(e))s[t+n]=r;return s}const s={},n=[];for(const r of l.isArray(t)?t:[t])if(l.isArray(r)){const[t,i]=r;u.extend(s,e(t,i)),n.push([t,i])}else{const t=r;u.extend(s,t),n.push([\"\",t])}this.define(s),this.prototype._mixins=[...this.prototype._mixins,...n]}static override(t){for(const[e,s]of u.entries(t)){const t=this._fix_default(s,e),n=this.prototype._props[e];if(null==n)throw new Error(`attempted to override nonexistent '${this.prototype.type}.${e}'`);const r=Object.assign({},this.prototype._props);r[e]=Object.assign(Object.assign({},n),{default_value:t}),this.prototype._props=r}}toString(){return`${this.type}(${this.id})`}property(t){const e=this.properties[t];if(null!=e)return e;throw new Error(`unknown property ${this.type}.${t}`)}get attributes(){const t={};for(const e of this)t[e.attr]=e.get_value();return t}[v.clone](t){const e=new Map;for(const s of this)s.dirty&&e.set(s.attr,t.clone(s.get_value()));return new this.constructor(e)}[g.equals](t,e){for(const s of this){const n=t.property(s.attr);if(e.eq(s.get_value(),n.get_value()))return!1}return!0}[y.pretty](t){const e=t.token,s=[];for(const n of this)if(n.dirty){const r=n.get_value();s.push(`${n.attr}${e(\":\")} ${t.to_string(r)}`)}return`${this.constructor.__qualified__}${e(\"(\")}${e(\"{\")}${s.join(`${e(\",\")} `)}${e(\"}\")}${e(\")\")}`}[p.serialize](t){const e=this.ref();t.add_ref(this,e);const s=this.struct();for(const e of this)e.syncable&&(t.include_defaults||e.dirty)&&(s.attributes[e.attr]=t.to_serializable(e.get_value()));return t.add_def(this,s),e}finalize(){for(const t of this){if(!(t instanceof a.VectorSpec||t instanceof a.ScalarSpec))continue;const e=t.get_value();if(null!=e){const{transform:t,expr:s}=e;null!=t&&this.connect(t.change,(()=>this.transformchange.emit())),null!=s&&this.connect(s.change,(()=>this.exprchange.emit()))}}this.initialize()}initialize(){}connect_signals(){}disconnect_signals(){o.Signal.disconnectReceiver(this)}destroy(){this.disconnect_signals(),this.destroyed.emit()}clone(){return(new v.Cloner).clone(this)}_setv(t,e){const s=e.check_eq,n=[],r=this._changing;this._changing=!0;for(const[e,r]of t)!1!==s&&f.is_equal(e.get_value(),r)||(e.set_value(r),n.push(e));n.length>0&&(this._pending=!0);for(const t of n)t.change.emit();if(!r){if(!e.no_change)for(;this._pending;)this._pending=!1,this.change.emit();this._pending=!1,this._changing=!1}}setv(t,e={}){const s=u.entries(t);if(0==s.length)return;if(!0===e.silent){for(const[t,e]of s)this.properties[t].set_value(e);return}const n=new Map,r=new Map;for(const[t,e]of s){const s=this.properties[t];n.set(s,e),r.set(s,s.get_value())}this._setv(n,e);const{document:i}=this;if(null!=i){const t=[];for(const[e,s]of r)t.push([e,s,e.get_value()]);for(const[,e,s]of t)if(this._needs_invalidate(e,s)){i._invalidate_all_models();break}this._push_changes(t,e)}}getv(t){return this.property(t).get_value()}ref(){return{id:this.id}}struct(){const t={type:this.type,id:this.id,attributes:{}};return null!=this._subtype&&(t.subtype=this._subtype),t}set_subtype(t){this._subtype=t}*[Symbol.iterator](){yield*u.values(this.properties)}*syncable_properties(){for(const t of this)t.syncable&&(yield t)}serializable_attributes(){const t={};for(const e of this.syncable_properties())t[e.attr]=e.get_value();return t}static _json_record_references(t,e,s,n){const{recursive:r}=n;if(c.is_ref(e)){const n=t.get_model_by_id(e.id);null==n||s.has(n)||b._value_record_references(n,s,{recursive:r})}else if(l.isArray(e))for(const n of e)b._json_record_references(t,n,s,{recursive:r});else if(l.isPlainObject(e))for(const n of u.values(e))b._json_record_references(t,n,s,{recursive:r})}static _value_record_references(t,e,s){const{recursive:n}=s;if(t instanceof b){if(!e.has(t)&&(e.add(t),n))for(const s of t.syncable_properties()){const t=s.get_value();b._value_record_references(t,e,{recursive:n})}}else if(l.isArray(t))for(const s of t)b._value_record_references(s,e,{recursive:n});else if(l.isPlainObject(t))for(const s of u.values(t))b._value_record_references(s,e,{recursive:n})}references(){const t=new Set;return b._value_record_references(this,t,{recursive:!0}),t}_doc_attached(){}_doc_detached(){}attach_document(t){if(null!=this.document&&this.document!=t)throw new Error(\"models must be owned by only a single document\");this.document=t,this._doc_attached()}detach_document(){this._doc_detached(),this.document=null}_needs_invalidate(t,e){const s=new Set;b._value_record_references(e,s,{recursive:!1});const n=new Set;b._value_record_references(t,n,{recursive:!1});for(const t of s)if(!n.has(t))return!0;for(const t of n)if(!s.has(t))return!0;return!1}_push_changes(t,e={}){if(!this.is_syncable)return;const{document:s}=this;if(null==s)return;const{setter_id:n}=e,r=[];for(const[e,i,o]of t)e.syncable&&r.push(new d.ModelChangedEvent(s,this,e.attr,i,o,n));if(0!=r.length){let t;1==r.length?[t]=r:t=new d.DocumentEventBatch(s,r,n),s._trigger_on_change(t)}}on_change(t,e){for(const s of l.isArray(t)?t:[t])this.connect(s.change,e)}}s.HasProps=b,b.init_HasProps()},\n function _(n,t,e,l,s){l();const i=n(16),o=n(9);class c{constructor(n,t){this.sender=n,this.name=t}connect(n,t=null){u.has(this.sender)||u.set(this.sender,[]);const e=u.get(this.sender);if(null!=g(e,this,n,t))return!1;const l=null!=t?t:n;a.has(l)||a.set(l,[]);const s=a.get(l),i={signal:this,slot:n,context:t};return e.push(i),s.push(i),!0}disconnect(n,t=null){const e=u.get(this.sender);if(null==e||0===e.length)return!1;const l=g(e,this,n,t);if(null==l)return!1;const s=null!=t?t:n,i=a.get(s);return l.signal=null,d(e),d(i),!0}emit(n){var t;const e=null!==(t=u.get(this.sender))&&void 0!==t?t:[];for(const{signal:t,slot:l,context:s}of e)t===this&&l.call(s,n,this.sender)}}e.Signal=c,c.__name__=\"Signal\";class r extends c{emit(){super.emit(void 0)}}e.Signal0=r,r.__name__=\"Signal0\",function(n){function t(n,t){const e=u.get(n);if(null==e||0===e.length)return;const l=a.get(t);if(null!=l&&0!==l.length){for(const t of l){if(null==t.signal)return;t.signal.sender===n&&(t.signal=null)}d(e),d(l)}}function e(n){var t;const e=u.get(n);if(null!=e&&0!==e.length){for(const n of e){if(null==n.signal)return;const e=null!==(t=n.context)&&void 0!==t?t:n.slot;n.signal=null,d(a.get(e))}d(e)}}function l(n,t,e){const l=a.get(n);if(null!=l&&0!==l.length){for(const n of l){if(null==n.signal)return;if(null!=t&&n.slot!=t)continue;const l=n.signal.sender;null!=e&&e.has(l)||(n.signal=null,d(u.get(l)))}d(l)}}function s(n){const t=u.get(n);if(null!=t&&0!==t.length){for(const n of t)n.signal=null;d(t)}const e=a.get(n);if(null!=e&&0!==e.length){for(const n of e)n.signal=null;d(e)}}n.disconnect_between=t,n.disconnect_sender=e,n.disconnect_receiver=l,n.disconnect_all=s,n.disconnectBetween=t,n.disconnectSender=e,n.disconnectReceiver=l,n.disconnectAll=s}(c||(e.Signal=c={})),e.Signalable=function(){return class{connect(n,t){return n.connect(t,this)}disconnect(n,t){return n.disconnect(t,this)}}};const u=new WeakMap,a=new WeakMap;function g(n,t,e,l){return o.find(n,(n=>n.signal===t&&n.slot===e&&n.context===l))}const f=new Set;function d(n){0===f.size&&(async()=>{await i.defer(),function(){for(const n of f)o.remove_by(n,(n=>null==n.signal));f.clear()}()})(),f.add(n)}},\n function _(e,n,t,s,o){s();const a=new MessageChannel,l=new Map;a.port1.onmessage=e=>{const n=e.data,t=l.get(n);if(null!=t)try{t()}finally{l.delete(n)}};let r=1;t.defer=function(){return new Promise((e=>{const n=r++;l.set(n,e),a.port2.postMessage(n)}))}},\n function _(n,t,i,e,c){e();const r=n(8),s=n(13);i.is_ref=function(n){if(r.isPlainObject(n)){const t=s.keys(n);return 1==t.length&&\"id\"==t[0]}return!1}},\n function _(e,t,n,a,r){a(),n.YCoordinateSeqSeqSeqSpec=n.XCoordinateSeqSeqSeqSpec=n.YCoordinateSeqSpec=n.XCoordinateSeqSpec=n.YCoordinateSpec=n.XCoordinateSpec=n.CoordinateSeqSeqSeqSpec=n.CoordinateSeqSpec=n.CoordinateSpec=n.BaseCoordinateSpec=n.NumberUnitsSpec=n.UnitsSpec=n.DataSpec=n.VectorSpec=n.TextBaselineScalar=n.TextAlignScalar=n.FontStyleScalar=n.FontSizeScalar=n.FontScalar=n.LineDashScalar=n.LineCapScalar=n.LineJoinScalar=n.ArrayScalar=n.NullStringScalar=n.StringScalar=n.NumberScalar=n.ColorScalar=n.AnyScalar=n.ScalarSpec=n.VerticalAlign=n.UpdateMode=n.TooltipAttachment=n.TickLabelOrientation=n.TextureRepetition=n.TextBaseline=n.TextAlign=n.TapBehavior=n.StepMode=n.StartEnd=n.SpatialUnits=n.Sort=n.SizingMode=n.Side=n.RoundingFunction=n.ResetPolicy=n.RenderMode=n.RenderLevel=n.RadiusDimension=n.PointPolicy=n.Place=void 0,n.TextBaselineSpec=n.TextAlignSpec=n.FontStyleSpec=n.FontSizeSpec=n.FontSpec=n.LineDashSpec=n.LineCapSpec=n.LineJoinSpec=n.MarkerSpec=n.ArraySpec=n.NullStringSpec=n.StringSpec=n.AnySpec=n.NDArraySpec=n.ColorSpec=n.NumberSpec=n.BooleanSpec=n.ScreenDistanceSpec=n.NullDistanceSpec=n.DistanceSpec=n.AngleSpec=void 0;const i=e(1),s=e(15),l=e(19),o=i.__importStar(e(20)),c=e(24),_=e(9),u=e(12),d=e(10),S=e(22),p=e(27),m=e(8),h=e(28),v=e(29),y=e(33);function x(e){try{return JSON.stringify(e)}catch(t){return e.toString()}}function g(e){return m.isPlainObject(e)&&(void 0===e.value?0:1)+(void 0===e.field?0:1)+(void 0===e.expr?0:1)==1}r(\"Uniform\",y.Uniform),r(\"UniformScalar\",y.UniformScalar),r(\"UniformVector\",y.UniformVector),n.isSpec=g;class f{constructor(e,t,n,a,r,i={}){var l;let o;if(this.obj=e,this.attr=t,this.kind=n,this.default_value=a,this._dirty=!1,this.change=new s.Signal0(this.obj,\"change\"),this.internal=null!==(l=i.internal)&&void 0!==l&&l,this.on_update=i.on_update,void 0!==r)o=r,this._dirty=!0;else{const t=this._default_override();if(void 0!==t)o=t;else{if(void 0===a)return void(this.spec={value:null});o=a(e)}}this._update(o)}get is_value(){return void 0!==this.spec.value}get syncable(){return!this.internal}get_value(){return this.spec.value}set_value(e){this._update(e),this._dirty=!0}_default_override(){}get dirty(){return this._dirty}_update(e){var t;this.validate(e),this.spec={value:e},null===(t=this.on_update)||void 0===t||t.call(this,e,this.obj)}toString(){return`Prop(${this.obj}.${this.attr}, spec: ${x(this.spec)})`}normalize(e){return e}validate(e){if(!this.valid(e))throw new Error(`${this.obj}.${this.attr} given invalid value: ${x(e)}`)}valid(e){return this.kind.valid(e)}_value(e=!0){if(!this.is_value)throw new Error(\"attempted to retrieve property value for property without value specification\");let t=this.normalize([this.spec.value])[0];return null!=this.spec.transform&&e&&(t=this.spec.transform.compute(t)),t}}n.Property=f,f.__name__=\"Property\";class A{constructor(e){this.attr=e}}n.PropertyAlias=A,A.__name__=\"PropertyAlias\",n.Alias=function(e){return new A(e)};class C extends f{}n.PrimitiveProperty=C,C.__name__=\"PrimitiveProperty\";class L extends f{}n.Any=L,L.__name__=\"Any\";class T extends f{valid(e){return m.isArray(e)||m.isTypedArray(e)}}n.Array=T,T.__name__=\"Array\";class P extends f{valid(e){return m.isBoolean(e)}}n.Boolean=P,P.__name__=\"Boolean\";class b extends f{valid(e){return S.is_Color(e)}}n.Color=b,b.__name__=\"Color\";class w extends f{}n.Instance=w,w.__name__=\"Instance\";class q extends f{valid(e){return m.isNumber(e)}}n.Number=q,q.__name__=\"Number\";class N extends q{valid(e){return m.isNumber(e)&&(0|e)==e}}n.Int=N,N.__name__=\"Int\";class B extends q{}n.Angle=B,B.__name__=\"Angle\";class D extends q{valid(e){return m.isNumber(e)&&0<=e&&e<=1}}n.Percent=D,D.__name__=\"Percent\";class F extends f{valid(e){return m.isString(e)}}n.String=F,F.__name__=\"String\";class z extends f{valid(e){return null===e||m.isString(e)}}n.NullString=z,z.__name__=\"NullString\";class U extends F{}n.FontSize=U,U.__name__=\"FontSize\";class M extends F{_default_override(){return h.settings.dev?\"Bokeh\":void 0}}n.Font=M,M.__name__=\"Font\";class R extends f{valid(e){return m.isString(e)&&_.includes(this.enum_values,e)}}function k(e){return class extends R{get enum_values(){return[...e]}}}n.EnumProperty=R,R.__name__=\"EnumProperty\",n.Enum=k;class O extends R{get enum_values(){return[...o.Direction]}normalize(e){const t=new Uint8Array(e.length);for(let n=0;n<e.length;n++)switch(e[n]){case\"clock\":t[n]=0;break;case\"anticlock\":t[n]=1}return t}}n.Direction=O,O.__name__=\"Direction\",n.Anchor=k(o.Anchor),n.AngleUnits=k(o.AngleUnits),n.BoxOrigin=k(o.BoxOrigin),n.ButtonType=k(o.ButtonType),n.CalendarPosition=k(o.CalendarPosition),n.Dimension=k(o.Dimension),n.Dimensions=k(o.Dimensions),n.Distribution=k(o.Distribution),n.FontStyle=k(o.FontStyle),n.HatchPatternType=k(o.HatchPatternType),n.HTTPMethod=k(o.HTTPMethod),n.HexTileOrientation=k(o.HexTileOrientation),n.HoverMode=k(o.HoverMode),n.LatLon=k(o.LatLon),n.LegendClickPolicy=k(o.LegendClickPolicy),n.LegendLocation=k(o.LegendLocation),n.LineCap=k(o.LineCap),n.LineJoin=k(o.LineJoin),n.LinePolicy=k(o.LinePolicy),n.Location=k(o.Location),n.Logo=k(o.Logo),n.MarkerType=k(o.MarkerType),n.MutedPolicy=k(o.MutedPolicy),n.Orientation=k(o.Orientation),n.OutputBackend=k(o.OutputBackend),n.PaddingUnits=k(o.PaddingUnits),n.Place=k(o.Place),n.PointPolicy=k(o.PointPolicy),n.RadiusDimension=k(o.RadiusDimension),n.RenderLevel=k(o.RenderLevel),n.RenderMode=k(o.RenderMode),n.ResetPolicy=k(o.ResetPolicy),n.RoundingFunction=k(o.RoundingFunction),n.Side=k(o.Side),n.SizingMode=k(o.SizingMode),n.Sort=k(o.Sort),n.SpatialUnits=k(o.SpatialUnits),n.StartEnd=k(o.StartEnd),n.StepMode=k(o.StepMode),n.TapBehavior=k(o.TapBehavior),n.TextAlign=k(o.TextAlign),n.TextBaseline=k(o.TextBaseline),n.TextureRepetition=k(o.TextureRepetition),n.TickLabelOrientation=k(o.TickLabelOrientation),n.TooltipAttachment=k(o.TooltipAttachment),n.UpdateMode=k(o.UpdateMode),n.VerticalAlign=k(o.VerticalAlign);class E extends f{get_value(){const{value:e,expr:t,transform:n}=this.spec;return null!=t||null!=n?this.spec:e}_update(e){g(e)?this.spec=e:this.spec={value:e},null!=this.spec.value&&this.validate(this.spec.value)}materialize(e){return e}scalar(e,t){return new y.UniformScalar(e,t)}uniform(e){var t;const{expr:n,value:a,transform:r}=this.spec,i=null!==(t=e.get_length())&&void 0!==t?t:1;if(null!=n){let t=n.compute(e);return null!=r&&(t=r.compute(t)),t=this.materialize(t),this.scalar(t,i)}{let e=a;return null!=r&&(e=r.compute(e)),e=this.materialize(e),this.scalar(e,i)}}}n.ScalarSpec=E,E.__name__=\"ScalarSpec\";class V extends E{}n.AnyScalar=V,V.__name__=\"AnyScalar\";class $ extends E{}n.ColorScalar=$,$.__name__=\"ColorScalar\";class J extends E{}n.NumberScalar=J,J.__name__=\"NumberScalar\";class X extends E{}n.StringScalar=X,X.__name__=\"StringScalar\";class Y extends E{}n.NullStringScalar=Y,Y.__name__=\"NullStringScalar\";class H extends E{}n.ArrayScalar=H,H.__name__=\"ArrayScalar\";class j extends E{}n.LineJoinScalar=j,j.__name__=\"LineJoinScalar\";class G extends E{}n.LineCapScalar=G,G.__name__=\"LineCapScalar\";class I extends E{}n.LineDashScalar=I,I.__name__=\"LineDashScalar\";class K extends E{_default_override(){return h.settings.dev?\"Bokeh\":void 0}}n.FontScalar=K,K.__name__=\"FontScalar\";class Q extends E{}n.FontSizeScalar=Q,Q.__name__=\"FontSizeScalar\";class W extends E{}n.FontStyleScalar=W,W.__name__=\"FontStyleScalar\";class Z extends E{}n.TextAlignScalar=Z,Z.__name__=\"TextAlignScalar\";class ee extends E{}n.TextBaselineScalar=ee,ee.__name__=\"TextBaselineScalar\";class te extends f{get_value(){return null===this.spec.value?null:this.spec}_update(e){g(e)?this.spec=e:this.spec={value:e},null!=this.spec.value&&this.validate(this.spec.value)}materialize(e){return e}v_materialize(e){return e}scalar(e,t){return new y.UniformScalar(e,t)}vector(e){return new y.UniformVector(e)}uniform(e){var t;const{field:n,expr:a,value:r,transform:i}=this.spec,s=null!==(t=e.get_length())&&void 0!==t?t:1;if(null!=n){let t=e.get_column(n);return null!=t?(null!=i&&(t=i.v_compute(t)),t=this.v_materialize(t),this.vector(t)):(l.logger.warn(`attempted to retrieve property array for nonexistent field '${n}'`),this.scalar(null,s))}if(null!=a){let t=a.v_compute(e);return null!=i&&(t=i.v_compute(t)),t=this.v_materialize(t),this.vector(t)}{let e=r;return null!=i&&(e=i.compute(e)),e=this.materialize(e),this.scalar(e,s)}}array(e){var t;let n;const a=null!==(t=e.get_length())&&void 0!==t?t:1;if(null!=this.spec.field){const t=e.get_column(this.spec.field);if(null!=t)n=this.normalize(t);else{l.logger.warn(`attempted to retrieve property array for nonexistent field '${this.spec.field}'`);const e=new Float64Array(a);e.fill(NaN),n=e}}else if(null!=this.spec.expr)n=this.normalize(this.spec.expr.v_compute(e));else{const e=this._value(!1);if(m.isNumber(e)){const t=new Float64Array(a);t.fill(e),n=t}else n=_.repeat(e,a)}return null!=this.spec.transform&&(n=this.spec.transform.v_compute(n)),n}}n.VectorSpec=te,te.__name__=\"VectorSpec\";class ne extends te{}n.DataSpec=ne,ne.__name__=\"DataSpec\";class ae extends te{_update(e){super._update(e);const{units:t}=this.spec;if(null!=t&&!_.includes(this.valid_units,t))throw new Error(`units must be one of ${this.valid_units.join(\", \")}; got: ${t}`)}get units(){var e;return null!==(e=this.spec.units)&&void 0!==e?e:this.default_units}set units(e){e!=this.default_units?this.spec.units=e:delete this.spec.units}}n.UnitsSpec=ae,ae.__name__=\"UnitsSpec\";class re extends ae{array(e){return new Float64Array(super.array(e))}}n.NumberUnitsSpec=re,re.__name__=\"NumberUnitsSpec\";class ie extends ne{}n.BaseCoordinateSpec=ie,ie.__name__=\"BaseCoordinateSpec\";class se extends ie{}n.CoordinateSpec=se,se.__name__=\"CoordinateSpec\";class le extends ie{}n.CoordinateSeqSpec=le,le.__name__=\"CoordinateSeqSpec\";class oe extends ie{}n.CoordinateSeqSeqSeqSpec=oe,oe.__name__=\"CoordinateSeqSeqSeqSpec\";class ce extends se{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSpec=ce,ce.__name__=\"XCoordinateSpec\";class _e extends se{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSpec=_e,_e.__name__=\"YCoordinateSpec\";class ue extends le{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSeqSpec=ue,ue.__name__=\"XCoordinateSeqSpec\";class de extends le{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSeqSpec=de,de.__name__=\"YCoordinateSeqSpec\";class Se extends oe{constructor(){super(...arguments),this.dimension=\"x\"}}n.XCoordinateSeqSeqSeqSpec=Se,Se.__name__=\"XCoordinateSeqSeqSeqSpec\";class pe extends oe{constructor(){super(...arguments),this.dimension=\"y\"}}n.YCoordinateSeqSeqSeqSpec=pe,pe.__name__=\"YCoordinateSeqSeqSeqSpec\";class me extends re{get default_units(){return\"rad\"}get valid_units(){return[...o.AngleUnits]}materialize(e){return e*-d.to_radians_coeff(this.units)}v_materialize(e){const t=-d.to_radians_coeff(this.units),n=new Float32Array(e.length);return u.mul(e,t,n),n}array(e){throw new Error(\"not supported\")}}n.AngleSpec=me,me.__name__=\"AngleSpec\";class he extends re{get default_units(){return\"data\"}get valid_units(){return[...o.SpatialUnits]}}n.DistanceSpec=he,he.__name__=\"DistanceSpec\";class ve extends he{materialize(e){return null!=e?e:NaN}}n.NullDistanceSpec=ve,ve.__name__=\"NullDistanceSpec\";class ye extends he{get default_units(){return\"screen\"}}n.ScreenDistanceSpec=ye,ye.__name__=\"ScreenDistanceSpec\";class xe extends ne{v_materialize(e){return new Uint8Array(e)}array(e){return new Uint8Array(super.array(e))}}n.BooleanSpec=xe,xe.__name__=\"BooleanSpec\";class ge extends ne{v_materialize(e){return m.isTypedArray(e)?e:new Float64Array(e)}array(e){return new Float64Array(super.array(e))}}n.NumberSpec=ge,ge.__name__=\"NumberSpec\";class fe extends ne{materialize(e){return S.encode_rgba(S.color2rgba(e))}v_materialize(e){if(!v.is_NDArray(e)){const t=e.length,n=new c.RGBAArray(4*t);let a=0;for(const t of e){const[e,r,i,s]=S.color2rgba(t);n[a++]=e,n[a++]=r,n[a++]=i,n[a++]=s}return new c.ColorArray(n.buffer)}if(\"uint32\"==e.dtype&&1==e.dimension)return p.to_big_endian(e);if(\"uint8\"==e.dtype&&1==e.dimension){const[t]=e.shape,n=new c.RGBAArray(4*t);let a=0;for(const t of e)n[a++]=t,n[a++]=t,n[a++]=t,n[a++]=255;return new c.ColorArray(n.buffer)}if(\"uint8\"==e.dtype&&2==e.dimension){const[t,n]=e.shape;if(4==n)return new c.ColorArray(e.buffer);if(3==n){const a=new c.RGBAArray(4*t);for(let r=0,i=0;r<n*t;)a[i++]=e[r++],a[i++]=e[r++],a[i++]=e[r++],a[i++]=255;return new c.ColorArray(a.buffer)}}else if((\"float32\"==e.dtype||\"float64\"==e.dtype)&&2==e.dimension){const[t,n]=e.shape;if(3==n||4==n){const a=new c.RGBAArray(4*t);for(let r=0,i=0;r<n*t;)a[i++]=255*e[r++],a[i++]=255*e[r++],a[i++]=255*e[r++],a[i++]=255*(3==n?1:e[r++]);return new c.ColorArray(a.buffer)}}throw new Error(\"invalid color array\")}vector(e){return new y.ColorUniformVector(e)}}n.ColorSpec=fe,fe.__name__=\"ColorSpec\";class Ae extends ne{}n.NDArraySpec=Ae,Ae.__name__=\"NDArraySpec\";class Ce extends ne{}n.AnySpec=Ce,Ce.__name__=\"AnySpec\";class Le extends ne{}n.StringSpec=Le,Le.__name__=\"StringSpec\";class Te extends ne{}n.NullStringSpec=Te,Te.__name__=\"NullStringSpec\";class Pe extends ne{}n.ArraySpec=Pe,Pe.__name__=\"ArraySpec\";class be extends ne{}n.MarkerSpec=be,be.__name__=\"MarkerSpec\";class we extends ne{}n.LineJoinSpec=we,we.__name__=\"LineJoinSpec\";class qe extends ne{}n.LineCapSpec=qe,qe.__name__=\"LineCapSpec\";class Ne extends ne{}n.LineDashSpec=Ne,Ne.__name__=\"LineDashSpec\";class Be extends ne{_default_override(){return h.settings.dev?\"Bokeh\":void 0}}n.FontSpec=Be,Be.__name__=\"FontSpec\";class De extends ne{}n.FontSizeSpec=De,De.__name__=\"FontSizeSpec\";class Fe extends ne{}n.FontStyleSpec=Fe,Fe.__name__=\"FontStyleSpec\";class ze extends ne{}n.TextAlignSpec=ze,ze.__name__=\"TextAlignSpec\";class Ue extends ne{}n.TextBaselineSpec=Ue,Ue.__name__=\"TextBaselineSpec\"},\n function _(e,l,o,n,t){n();const s=e(8),g=e(13),r={};class i{constructor(e,l){this.name=e,this.level=l}}o.LogLevel=i,i.__name__=\"LogLevel\";class v{constructor(e,l=v.INFO){this._name=e,this.set_level(l)}static get levels(){return Object.keys(v.log_levels)}static get(e,l=v.INFO){if(e.length>0){let o=r[e];return null==o&&(r[e]=o=new v(e,l)),o}throw new TypeError(\"Logger.get() expects a non-empty string name and an optional log-level\")}get level(){return this.get_level()}get_level(){return this._log_level}set_level(e){if(e instanceof i)this._log_level=e;else{if(!s.isString(e)||null==v.log_levels[e])throw new Error(\"Logger.set_level() expects a log-level object or a string name of a log-level\");this._log_level=v.log_levels[e]}const l=`[${this._name}]`;for(const[e,o]of g.entries(v.log_levels))o.level<this._log_level.level||this._log_level.level===v.OFF.level?this[e]=function(){}:this[e]=_(e,l)}trace(...e){}debug(...e){}info(...e){}warn(...e){}error(...e){}}function _(e,l){return null!=console[e]?console[e].bind(console,l):null!=console.log?console.log.bind(console,l):function(){}}function c(e){const l=o.logger.level;return s.isString(e)&&null==v.log_levels[e]?(console.log(`[bokeh] unrecognized logging level '${e}' passed to Bokeh.set_log_level(), ignoring`),console.log(`[bokeh] valid log levels are: ${v.levels.join(\", \")}`)):(console.log(`[bokeh] setting log level to: '${s.isString(e)?e:e.level}'`),o.logger.set_level(e)),l}o.Logger=v,v.__name__=\"Logger\",v.TRACE=new i(\"trace\",0),v.DEBUG=new i(\"debug\",1),v.INFO=new i(\"info\",2),v.WARN=new i(\"warn\",6),v.ERROR=new i(\"error\",7),v.FATAL=new i(\"fatal\",8),v.OFF=new i(\"off\",9),v.log_levels={trace:v.TRACE,debug:v.DEBUG,info:v.INFO,warn:v.WARN,error:v.ERROR,fatal:v.FATAL,off:v.OFF},o.logger=v.get(\"bokeh\"),o.set_log_level=c,o.with_log_level=function(e,l){const o=c(e);try{l()}finally{c(o)}}},\n function _(e,n,t,o,i){o(),t.VerticalAlign=void 0;const a=e(21);t.Align=a.Enum(\"start\",\"center\",\"end\"),t.Anchor=a.Enum(\"top_left\",\"top_center\",\"top_right\",\"center_left\",\"center_center\",\"center_right\",\"bottom_left\",\"bottom_center\",\"bottom_right\",\"top\",\"left\",\"center\",\"right\",\"bottom\"),t.AngleUnits=a.Enum(\"deg\",\"rad\",\"grad\",\"turn\"),t.BoxOrigin=a.Enum(\"corner\",\"center\"),t.ButtonType=a.Enum(\"default\",\"primary\",\"success\",\"warning\",\"danger\",\"light\"),t.CalendarPosition=a.Enum(\"auto\",\"above\",\"below\"),t.Dimension=a.Enum(\"width\",\"height\"),t.Dimensions=a.Enum(\"width\",\"height\",\"both\"),t.Direction=a.Enum(\"clock\",\"anticlock\"),t.Distribution=a.Enum(\"uniform\",\"normal\"),t.FontStyle=a.Enum(\"normal\",\"italic\",\"bold\",\"bold italic\"),t.HatchPatternType=a.Enum(\"blank\",\"dot\",\"ring\",\"horizontal_line\",\"vertical_line\",\"cross\",\"horizontal_dash\",\"vertical_dash\",\"spiral\",\"right_diagonal_line\",\"left_diagonal_line\",\"diagonal_cross\",\"right_diagonal_dash\",\"left_diagonal_dash\",\"horizontal_wave\",\"vertical_wave\",\"criss_cross\",\" \",\".\",\"o\",\"-\",\"|\",\"+\",'\"',\":\",\"@\",\"/\",\"\\\\\",\"x\",\",\",\"`\",\"v\",\">\",\"*\"),t.HTTPMethod=a.Enum(\"POST\",\"GET\"),t.HexTileOrientation=a.Enum(\"pointytop\",\"flattop\"),t.HoverMode=a.Enum(\"mouse\",\"hline\",\"vline\"),t.LatLon=a.Enum(\"lat\",\"lon\"),t.LegendClickPolicy=a.Enum(\"none\",\"hide\",\"mute\"),t.LegendLocation=t.Anchor,t.LineCap=a.Enum(\"butt\",\"round\",\"square\"),t.LineJoin=a.Enum(\"miter\",\"round\",\"bevel\"),t.LineDash=a.Enum(\"solid\",\"dashed\",\"dotted\",\"dotdash\",\"dashdot\"),t.LinePolicy=a.Enum(\"prev\",\"next\",\"nearest\",\"interp\",\"none\"),t.Location=a.Enum(\"above\",\"below\",\"left\",\"right\"),t.Logo=a.Enum(\"normal\",\"grey\"),t.MarkerType=a.Enum(\"asterisk\",\"circle\",\"circle_cross\",\"circle_dot\",\"circle_x\",\"circle_y\",\"cross\",\"dash\",\"diamond\",\"diamond_cross\",\"diamond_dot\",\"dot\",\"hex\",\"hex_dot\",\"inverted_triangle\",\"plus\",\"square\",\"square_cross\",\"square_dot\",\"square_pin\",\"square_x\",\"star\",\"star_dot\",\"triangle\",\"triangle_dot\",\"triangle_pin\",\"x\",\"y\"),t.MutedPolicy=a.Enum(\"show\",\"ignore\"),t.Orientation=a.Enum(\"vertical\",\"horizontal\"),t.OutputBackend=a.Enum(\"canvas\",\"svg\",\"webgl\"),t.PaddingUnits=a.Enum(\"percent\",\"absolute\"),t.Place=a.Enum(\"above\",\"below\",\"left\",\"right\",\"center\"),t.PointPolicy=a.Enum(\"snap_to_data\",\"follow_mouse\",\"none\"),t.RadiusDimension=a.Enum(\"x\",\"y\",\"max\",\"min\"),t.RenderLevel=a.Enum(\"image\",\"underlay\",\"glyph\",\"guide\",\"annotation\",\"overlay\"),t.RenderMode=a.Enum(\"canvas\",\"css\"),t.ResetPolicy=a.Enum(\"standard\",\"event_only\"),t.RoundingFunction=a.Enum(\"round\",\"nearest\",\"floor\",\"rounddown\",\"ceil\",\"roundup\"),t.SelectionMode=a.Enum(\"replace\",\"append\",\"intersect\",\"subtract\"),t.Side=a.Enum(\"above\",\"below\",\"left\",\"right\"),t.SizingMode=a.Enum(\"stretch_width\",\"stretch_height\",\"stretch_both\",\"scale_width\",\"scale_height\",\"scale_both\",\"fixed\"),t.Sort=a.Enum(\"ascending\",\"descending\"),t.SpatialUnits=a.Enum(\"screen\",\"data\"),t.StartEnd=a.Enum(\"start\",\"end\"),t.StepMode=a.Enum(\"after\",\"before\",\"center\"),t.TapBehavior=a.Enum(\"select\",\"inspect\"),t.TextAlign=a.Enum(\"left\",\"right\",\"center\"),t.TextBaseline=a.Enum(\"top\",\"middle\",\"bottom\",\"alphabetic\",\"hanging\",\"ideographic\"),t.TextureRepetition=a.Enum(\"repeat\",\"repeat_x\",\"repeat_y\",\"no_repeat\"),t.TickLabelOrientation=a.Enum(\"vertical\",\"horizontal\",\"parallel\",\"normal\"),t.TooltipAttachment=a.Enum(\"horizontal\",\"vertical\",\"left\",\"right\",\"above\",\"below\"),t.UpdateMode=a.Enum(\"replace\",\"append\"),t.VerticalAlign=a.Enum(\"top\",\"middle\",\"bottom\")},\n function _(e,n,t,s,r){s();const i=e(1).__importStar(e(8)),a=e(22),l=e(13),_=window.Map,{hasOwnProperty:u}=Object.prototype;class d{}t.Kind=d,d.__name__=\"Kind\",function(e){class n extends d{valid(e){return!0}}n.__name__=\"Any\",e.Any=n;class t extends d{valid(e){return!0}}t.__name__=\"Unknown\",e.Unknown=t;class s extends d{valid(e){return i.isBoolean(e)}}s.__name__=\"Boolean\",e.Boolean=s;class r extends d{constructor(e){super(),this.obj_type=e}valid(e){return!0}}r.__name__=\"Ref\",e.Ref=r;class c extends d{valid(e){return!0}}c.__name__=\"AnyRef\",e.AnyRef=c;class o extends d{valid(e){return i.isNumber(e)}}o.__name__=\"Number\",e.Number=o;class p extends o{valid(e){return super.valid(e)&&i.isInteger(e)}}p.__name__=\"Int\",e.Int=p;class y extends o{valid(e){return super.valid(e)&&0<=e&&e<=1}}y.__name__=\"Percent\",e.Percent=y;class m extends d{constructor(e){super(),this.types=e,this.types=e}valid(e){return this.types.some((n=>n.valid(e)))}}m.__name__=\"Or\",e.Or=m;class v extends d{constructor(e){super(),this.types=e,this.types=e}valid(e){if(!i.isArray(e))return!1;for(let n=0;n<this.types.length;n++){const t=this.types[n],s=e[n];if(!t.valid(s))return!1}return!0}}v.__name__=\"Tuple\",e.Tuple=v;class w extends d{constructor(e){super(),this.struct_type=e}valid(e){if(!i.isPlainObject(e))return!1;const{struct_type:n}=this;if(l.size(n)!=l.size(e))return!1;for(const t in n)if(u.call(n,t)){if(!u.call(e,t))return!1;const s=n[t],r=e[t];if(!s.valid(r))return!1}return!0}}w.__name__=\"Struct\",e.Struct=w;class h extends d{valid(e){return i.isArray(e)||i.isTypedArray(e)}}h.__name__=\"Arrayable\",e.Arrayable=h;class f extends d{constructor(e){super(),this.item_type=e}valid(e){return i.isArray(e)&&e.every((e=>this.item_type.valid(e)))}}f.__name__=\"Array\",e.Array=f;class K extends d{valid(e){return null===e}}K.__name__=\"Null\",e.Null=K;class b extends d{constructor(e){super(),this.base_type=e}valid(e){return null===e||this.base_type.valid(e)}}b.__name__=\"Nullable\",e.Nullable=b;class A extends d{constructor(e){super(),this.base_type=e}valid(e){return void 0===e||this.base_type.valid(e)}}A.__name__=\"Opt\",e.Opt=A;class x extends d{valid(e){return i.isString(e)}}x.__name__=\"String\",e.String=x;class S extends d{constructor(e){super(),this.values=new Set(e)}valid(e){return this.values.has(e)}*[Symbol.iterator](){yield*this.values}}S.__name__=\"Enum\",e.Enum=S;class N extends d{constructor(e){super(),this.item_type=e}valid(e){if(!i.isPlainObject(e))return!1;for(const n in e)if(u.call(e,n)){const t=e[n];if(!this.item_type.valid(t))return!1}return!0}}N.__name__=\"Dict\",e.Dict=N;class O extends d{constructor(e,n){super(),this.key_type=e,this.item_type=n}valid(e){if(!(e instanceof _))return!1;for(const[n,t]of e.entries())if(!this.key_type.valid(n)||!this.item_type.valid(t))return!1;return!0}}O.__name__=\"Map\",e.Map=O;class g extends d{valid(e){return a.is_Color(e)}}g.__name__=\"Color\",e.Color=g;class P extends d{valid(e){return i.isFunction(e)}}P.__name__=\"Function\",e.Function=P}(t.Kinds||(t.Kinds={})),t.Any=new t.Kinds.Any,t.Unknown=new t.Kinds.Unknown,t.Boolean=new t.Kinds.Boolean,t.Number=new t.Kinds.Number,t.Int=new t.Kinds.Int,t.String=new t.Kinds.String,t.Null=new t.Kinds.Null;t.Nullable=e=>new t.Kinds.Nullable(e);t.Opt=e=>new t.Kinds.Opt(e);t.Or=(...e)=>new t.Kinds.Or(e);t.Tuple=(...e)=>new t.Kinds.Tuple(e);t.Struct=e=>new t.Kinds.Struct(e),t.Arrayable=new t.Kinds.Arrayable;t.Array=e=>new t.Kinds.Array(e);t.Dict=e=>new t.Kinds.Dict(e);t.Map=(e,n)=>new t.Kinds.Map(e,n);t.Enum=(...e)=>new t.Kinds.Enum(e);t.Ref=e=>new t.Kinds.Ref(e);t.AnyRef=()=>new t.Kinds.AnyRef;t.Function=()=>new t.Kinds.Function,t.Percent=new t.Kinds.Percent,t.Alpha=t.Percent,t.Color=new t.Kinds.Color,t.Auto=t.Enum(\"auto\"),t.FontSize=t.String,t.Font=t.String,t.Angle=t.Number},\n function _(n,t,r,e,s){e();const u=n(23),c=n(10),l=n(8),{round:i}=Math;function o(n){return c.clamp(i(n),0,255)}function a(){return[0,0,0,0]}function f(n){return[n>>24&255,n>>16&255,n>>8&255,255&n]}function d(n,t){var r;let e,s,u,c;return null==n?[e,s,u,c]=[0,0,0,0]:l.isInteger(n)?[e,s,u,c]=f(n):l.isString(n)?[e,s,u,c]=null!==(r=_(n))&&void 0!==r?r:[0,0,0,0]:([e,s,u,c=1]=n,c=o(255*c)),255==c&&null!=t&&(c=o(255*t)),[e,s,u,c]}r.transparent=a,r.encode_rgba=function([n,t,r,e]){return n<<24|t<<16|r<<8|e},r.decode_rgba=f,r.compose_alpha=function(n,t){return 255==(255&n)?4294967040&n|o(255*t):n},r.color2rgba=d;const h={0:\"0\",1:\"1\",2:\"2\",3:\"3\",4:\"4\",5:\"5\",6:\"6\",7:\"7\",8:\"8\",9:\"9\",10:\"a\",11:\"b\",12:\"c\",13:\"d\",14:\"e\",15:\"f\"};function g(n){return h[n>>4]+h[15&n]}r.color2css=function(n,t){const[r,e,s,u]=d(n,t);return`rgba(${r}, ${e}, ${s}, ${u/255})`},r.color2hex=function(n,t){const[r,e,s,u]=d(n,t),c=`#${g(r)}${g(e)}${g(s)}`;return 255==u?c:`${c}${g(u)}`},r.color2hexrgb=function(n){const[t,r,e]=d(n);return`#${g(t)}${g(r)}${g(e)}`};const b=/^rgba?\\(\\s*([^\\s,]+?)\\s+([^\\s,]+?)\\s+([^\\s,]+?)(?:\\s*\\/\\s*([^\\s,]+?))?\\s*\\)$/,m=/^rgba?\\(\\s*([^\\s,]+?)\\s*,\\s*([^\\s,]+?)\\s*,\\s*([^\\s,]+?)(?:\\s*,\\s*([^\\s,]+?))?\\s*\\)$/,$=(()=>{const n=document.createElement(\"canvas\");n.width=1,n.height=1;const t=n.getContext(\"2d\"),r=t.createLinearGradient(0,0,1,1);return n=>{t.fillStyle=r,t.fillStyle=n;const e=t.fillStyle;return e!=r?e:null}})();function _(n){var t;if(!(n=n.trim().toLowerCase()))return null;if(\"transparent\"==n)return[0,0,0,0];if(u.is_named_color(n))return f(u.named_colors[n]);if(\"#\"==n[0]){const t=Number(\"0x\"+n.substr(1));if(isNaN(t))return null;switch(n.length-1){case 3:{const n=t>>8&15,r=t>>4&15,e=t>>0&15;return[n<<4|n,r<<4|r,e<<4|e,255]}case 4:{const n=t>>12&15,r=t>>8&15,e=t>>4&15,s=t>>0&15;return[n<<4|n,r<<4|r,e<<4|e,s<<4|s]}case 6:return[t>>16&255,t>>8&255,t>>0&255,255];case 8:return[t>>24&255,t>>16&255,t>>8&255,t>>0&255]}}else if(n.startsWith(\"rgb\")){const r=null!==(t=n.match(b))&&void 0!==t?t:n.match(m);if(null!=r){let[,n,t,e,s=\"1\"]=r;const u=n.endsWith(\"%\"),c=t.endsWith(\"%\"),l=e.endsWith(\"%\"),i=s.endsWith(\"%\");if(!(u&&c&&l)&&(u||c||l))return null;u&&(n=n.slice(0,-1)),c&&(t=t.slice(0,-1)),l&&(e=e.slice(0,-1)),i&&(s=s.slice(0,-1));let a=Number(n),f=Number(t),d=Number(e),h=Number(s);return isNaN(a+f+d+h)?null:(u&&(a=a/100*255),c&&(f=f/100*255),l&&(d=d/100*255),h=255*(i?h/100:h),a=o(a),f=o(f),d=o(d),h=o(h),[a,f,d,h])}}else{const t=$(n);if(null!=t)return _(t)}return null}r.css4_parse=_,r.is_Color=function(n){return!!l.isInteger(n)||(!(!l.isString(n)||null==_(n))||!(!l.isArray(n)||3!=n.length&&4!=n.length))},r.is_dark=function([n,t,r]){return 1-(.299*n+.587*t+.114*r)/255>=.6}},\n function _(e,r,l,a,i){a();l.named_colors={aliceblue:4042850303,antiquewhite:4209760255,aqua:16777215,aquamarine:2147472639,azure:4043309055,beige:4126530815,bisque:4293182719,black:255,blanchedalmond:4293643775,blue:65535,blueviolet:2318131967,brown:2771004159,burlywood:3736635391,cadetblue:1604231423,chartreuse:2147418367,chocolate:3530104575,coral:4286533887,cornflowerblue:1687547391,cornsilk:4294499583,crimson:3692313855,cyan:16777215,darkblue:35839,darkcyan:9145343,darkgoldenrod:3095792639,darkgray:2846468607,darkgreen:6553855,darkgrey:2846468607,darkkhaki:3182914559,darkmagenta:2332068863,darkolivegreen:1433087999,darkorange:4287365375,darkorchid:2570243327,darkred:2332033279,darksalmon:3918953215,darkseagreen:2411499519,darkslateblue:1211993087,darkslategray:793726975,darkslategrey:793726975,darkturquoise:13554175,darkviolet:2483082239,deeppink:4279538687,deepskyblue:12582911,dimgray:1768516095,dimgrey:1768516095,dodgerblue:512819199,firebrick:2988581631,floralwhite:4294635775,forestgreen:579543807,fuchsia:4278255615,gainsboro:3705462015,ghostwhite:4177068031,gold:4292280575,goldenrod:3668254975,gray:2155905279,green:8388863,greenyellow:2919182335,grey:2155905279,honeydew:4043305215,hotpink:4285117695,indianred:3445382399,indigo:1258324735,ivory:4294963455,khaki:4041641215,lavender:3873897215,lavenderblush:4293981695,lawngreen:2096890111,lemonchiffon:4294626815,lightblue:2916673279,lightcoral:4034953471,lightcyan:3774873599,lightgoldenrodyellow:4210742015,lightgray:3553874943,lightgreen:2431553791,lightgrey:3553874943,lightpink:4290167295,lightsalmon:4288707327,lightseagreen:548580095,lightskyblue:2278488831,lightslategray:2005441023,lightslategrey:2005441023,lightsteelblue:2965692159,lightyellow:4294959359,lime:16711935,limegreen:852308735,linen:4210091775,magenta:4278255615,maroon:2147483903,mediumaquamarine:1724754687,mediumblue:52735,mediumorchid:3126187007,mediumpurple:2473647103,mediumseagreen:1018393087,mediumslateblue:2070474495,mediumspringgreen:16423679,mediumturquoise:1221709055,mediumvioletred:3340076543,midnightblue:421097727,mintcream:4127193855,mistyrose:4293190143,moccasin:4293178879,navajowhite:4292783615,navy:33023,oldlace:4260751103,olive:2155872511,olivedrab:1804477439,orange:4289003775,orangered:4282712319,orchid:3664828159,palegoldenrod:4008225535,palegreen:2566625535,paleturquoise:2951671551,palevioletred:3681588223,papayawhip:4293907967,peachpuff:4292524543,peru:3448061951,pink:4290825215,plum:3718307327,powderblue:2967529215,purple:2147516671,rebeccapurple:1714657791,red:4278190335,rosybrown:3163525119,royalblue:1097458175,saddlebrown:2336560127,salmon:4202722047,sandybrown:4104413439,seagreen:780883967,seashell:4294307583,sienna:2689740287,silver:3233857791,skyblue:2278484991,slateblue:1784335871,slategray:1887473919,slategrey:1887473919,snow:4294638335,springgreen:16744447,steelblue:1182971135,tan:3535047935,teal:8421631,thistle:3636451583,tomato:4284696575,turquoise:1088475391,violet:4001558271,wheat:4125012991,white:4294967295,whitesmoke:4126537215,yellow:4294902015,yellowgreen:2597139199},l.is_named_color=function(e){return e in l.named_colors}},\n function _(r,t,n,a,o){a(),n.GeneratorFunction=Object.getPrototypeOf((function*(){})).constructor,n.ColorArray=Uint32Array,n.RGBAArray=Uint8ClampedArray,n.infer_type=function(r,t){return r instanceof Float64Array||r instanceof Array||t instanceof Float64Array||t instanceof Array?Float64Array:Float32Array},n.ScreenArray=Float32Array,n.to_screen=function(r){return r instanceof Float32Array?r:new Float32Array(r)},o(\"Indices\",r(25).BitSet)},\n function _(t,s,r,e,i){e();const n=t(26),o=t(11);class a{constructor(t,s=0){this.size=t,this[Symbol.toStringTag]=\"BitSet\",this._count=null,this._nwords=Math.ceil(t/32),0==s||1==s?(this._array=new Uint32Array(this._nwords),1==s&&this._array.fill(4294967295)):(o.assert(s.length==this._nwords,\"Initializer size mismatch\"),this._array=s)}clone(){return new a(this.size,new Uint32Array(this._array))}[n.equals](t,s){if(!s.eq(this.size,t.size))return!1;const{_nwords:r}=this,e=this.size%r,i=0==e?r:r-1;for(let s=0;s<i;s++)if(this._array[s]!=t._array[s])return!1;if(0==e)return!0;{const s=1<<e-1,r=s-1^s;return(this._array[i]&r)==(t._array[i]&r)}}static all_set(t){return new a(t,1)}static all_unset(t){return new a(t,0)}static from_indices(t,s){const r=new a(t);for(const t of s)r.set(t);return r}static from_booleans(t,s){const r=new a(t),e=Math.min(t,s.length);for(let t=0;t<e;t++)s[t]&&r.set(t);return r}_check_bounds(t){o.assert(0<=t&&t<this.size,`Out of bounds: 0 <= ${t} < ${this.size}`)}get(t){this._check_bounds(t);const s=t>>>5,r=31&t;return!!(this._array[s]>>r&1)}set(t,s=!0){this._check_bounds(t),this._count=null;const r=t>>>5,e=31&t;s?this._array[r]|=1<<e:this._array[r]&=~(1<<e)}unset(t){this.set(t,!1)}*[Symbol.iterator](){yield*this.ones()}get count(){let t=this._count;return null==t&&(this._count=t=this._get_count()),t}_get_count(){const{_array:t,_nwords:s,size:r}=this;let e=0;for(let i=0,n=0;n<s;n++){const s=t[n];if(0==s)i+=32;else for(let t=0;t<32&&i<r;t++,i++)s>>>t&1&&(e+=1)}return e}*ones(){const{_array:t,_nwords:s,size:r}=this;for(let e=0,i=0;i<s;i++){const s=t[i];if(0!=s)for(let t=0;t<32&&e<r;t++,e++)s>>>t&1&&(yield e);else e+=32}}*zeros(){const{_array:t,_nwords:s,size:r}=this;for(let e=0,i=0;i<s;i++){const s=t[i];if(4294967295!=s)for(let t=0;t<32&&e<r;t++,e++)s>>>t&1||(yield e);else e+=32}}_check_size(t){o.assert(this.size==t.size,\"Size mismatch\")}add(t){this._check_size(t);for(let s=0;s<this._nwords;s++)this._array[s]|=t._array[s]}intersect(t){this._check_size(t);for(let s=0;s<this._nwords;s++)this._array[s]&=t._array[s]}subtract(t){this._check_size(t);for(let s=0;s<this._nwords;s++){const r=this._array[s],e=t._array[s];this._array[s]=(r^e)&r}}union(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++)s._array[r]|=t._array[r];return s}intersection(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++)s._array[r]&=t._array[r];return s}difference(t){this._check_size(t);const s=this.clone();for(let r=0;r<this._nwords;r++){const e=this._array[r],i=t._array[r];s._array[r]=(e^i)&e}return s}select(t){o.assert(this.size<=t.length,\"Size mismatch\");const s=this.count,r=new t.constructor(s);let e=0;for(const s of this)r[e++]=t[s];return r}}r.BitSet=a,a.__name__=\"BitSet\"},\n function _(t,e,r,n,s){n();const o=t(8),{hasOwnProperty:c}=Object.prototype;function a(t){return o.isObject(t)&&void 0!==t[r.equals]}r.equals=Symbol(\"equals\"),r.wildcard=Symbol(\"wildcard\");const i=Object.prototype.toString;class u{constructor(){this.a_stack=[],this.b_stack=[]}eq(t,e){if(Object.is(t,e))return!0;if(t===r.wildcard||e===r.wildcard)return!0;if(null==t||null==e)return t===e;const n=i.call(t);if(n!=i.call(e))return!1;switch(n){case\"[object Number]\":return this.numbers(t,e);case\"[object RegExp]\":case\"[object String]\":return`${t}`==`${e}`;case\"[object Date]\":case\"[object Boolean]\":return+t==+e}const{a_stack:s,b_stack:o}=this;let c=s.length;for(;c--;)if(s[c]===t)return o[c]===e;s.push(t),o.push(e);const u=(()=>{if(a(t)&&a(e))return t[r.equals](e,this);switch(n){case\"[object Array]\":case\"[object Uint8Array]\":case\"[object Int8Array]\":case\"[object Uint16Array]\":case\"[object Int16Array]\":case\"[object Uint32Array]\":case\"[object Int32Array]\":case\"[object Float32Array]\":case\"[object Float64Array]\":return this.arrays(t,e);case\"[object Map]\":return this.maps(t,e);case\"[object Set]\":return this.sets(t,e);case\"[object Object]\":if(t.constructor==e.constructor&&(null==t.constructor||t.constructor===Object))return this.objects(t,e);case\"[object Function]\":if(t.constructor==e.constructor&&t.constructor===Function)return this.eq(`${t}`,`${e}`)}if(t instanceof Node)return this.nodes(t,e);throw Error(`can't compare objects of type ${n}`)})();return s.pop(),o.pop(),u}numbers(t,e){return Object.is(t,e)}arrays(t,e){const{length:r}=t;if(r!=e.length)return!1;for(let n=0;n<r;n++)if(!this.eq(t[n],e[n]))return!1;return!0}iterables(t,e){const r=t[Symbol.iterator](),n=e[Symbol.iterator]();for(;;){const t=r.next(),e=n.next();if(t.done&&e.done)return!0;if(t.done||e.done)return!1;if(!this.eq(t.value,e.value))return!1}}maps(t,e){if(t.size!=e.size)return!1;for(const[r,n]of t)if(!e.has(r)||!this.eq(n,e.get(r)))return!1;return!0}sets(t,e){if(t.size!=e.size)return!1;for(const r of t)if(!e.has(r))return!1;return!0}objects(t,e){const r=Object.keys(t);if(r.length!=Object.keys(e).length)return!1;for(const n of r)if(!c.call(e,n)||!this.eq(t[n],e[n]))return!1;return!0}nodes(t,e){return t.nodeType==e.nodeType&&(t.textContent==e.textContent&&!!this.iterables(t.childNodes,e.childNodes))}}r.Comparator=u,u.__name__=\"Comparator\";const{abs:l}=Math;class b extends u{constructor(t=1e-4){super(),this.tolerance=t}numbers(t,e){return super.numbers(t,e)||l(t-e)<this.tolerance}}function f(t,e){return(new u).eq(t,e)}r.SimilarComparator=b,b.__name__=\"SimilarComparator\",r.is_equal=f,r.is_similar=function(t,e,r){return new b(r).eq(t,e)},r.isEqual=f},\n function _(n,i,e,t,r){t(),e.is_windows=navigator.appVersion.includes(\"Windows\"),e.is_ie=(()=>{const n=navigator.userAgent;return n.includes(\"MSIE\")||n.includes(\"Trident\")||n.includes(\"Edge\")})(),e.is_mobile=\"undefined\"!=typeof window&&(\"ontouchstart\"in window||navigator.maxTouchPoints>0),e.is_little_endian=(()=>{const n=new ArrayBuffer(4),i=new Uint8Array(n);new Uint32Array(n)[1]=168496141;let e=!0;return 10==i[4]&&11==i[5]&&12==i[6]&&13==i[7]&&(e=!1),e})(),e.BYTE_ORDER=e.is_little_endian?\"little\":\"big\",e.to_big_endian=function(n){if(e.is_little_endian){const i=new Uint32Array(n.length),e=new DataView(i.buffer);let t=0;for(const i of n)e.setUint32(t,i),t+=4;return i}return n}},\n function _(e,t,r,i,s){i();class _{constructor(){this._dev=!1,this._wireframe=!1}set dev(e){this._dev=e}get dev(){return this._dev}set wireframe(e){this._wireframe=e}get wireframe(){return this._wireframe}}r.Settings=_,_.__name__=\"Settings\",r.settings=new _},\n function _(t,e,s,r,n){var a,i,h,u,l,c,o,y;r();const p=t(8),_=t(11),A=t(26),d=t(30),D=t(31),N=Symbol(\"__ndarray__\");class f extends Uint8Array{constructor(t,e){super(t),this[a]=!0,this.dtype=\"uint8\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(a=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Uint8NDArray=f,f.__name__=\"Uint8NDArray\";class m extends Int8Array{constructor(t,e){super(t),this[i]=!0,this.dtype=\"int8\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(i=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Int8NDArray=m,m.__name__=\"Int8NDArray\";class g extends Uint16Array{constructor(t,e){super(t),this[h]=!0,this.dtype=\"uint16\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(h=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Uint16NDArray=g,g.__name__=\"Uint16NDArray\";class q extends Int16Array{constructor(t,e){super(t),this[u]=!0,this.dtype=\"int16\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(u=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Int16NDArray=q,q.__name__=\"Int16NDArray\";class I extends Uint32Array{constructor(t,e){super(t),this[l]=!0,this.dtype=\"uint32\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(l=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Uint32NDArray=I,I.__name__=\"Uint32NDArray\";class U extends Int32Array{constructor(t,e){super(t),this[c]=!0,this.dtype=\"int32\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(c=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Int32NDArray=U,U.__name__=\"Int32NDArray\";class w extends Float32Array{constructor(t,e){super(t),this[o]=!0,this.dtype=\"float32\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(o=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}s.Float32NDArray=w,w.__name__=\"Float32NDArray\";class x extends Float64Array{constructor(t,e){super(t),this[y]=!0,this.dtype=\"float64\",this.shape=null!=e?e:z(t)?t.shape:[this.length],this.dimension=this.shape.length}[(y=N,A.equals)](t,e){return e.eq(this.shape,t.shape)&&e.arrays(this,t)}[d.serialize](t){return D.encode_NDArray(this)}}function z(t){return p.isObject(t)&&void 0!==t[N]}s.Float64NDArray=x,x.__name__=\"Float64NDArray\",s.is_NDArray=z,s.ndarray=function(t,e={}){let{dtype:s}=e;null==s&&(s=t instanceof ArrayBuffer||p.isArray(t)?\"float64\":(()=>{switch(!0){case t instanceof Uint8Array:return\"uint8\";case t instanceof Int8Array:return\"int8\";case t instanceof Uint16Array:return\"uint16\";case t instanceof Int16Array:return\"int16\";case t instanceof Uint32Array:return\"uint32\";case t instanceof Int32Array:return\"int32\";case t instanceof Float32Array:return\"float32\";case t instanceof Float64Array:return\"float64\";default:_.unreachable()}})());const{shape:r}=e;switch(s){case\"uint8\":return new f(t,r);case\"int8\":return new m(t,r);case\"uint16\":return new g(t,r);case\"int16\":return new q(t,r);case\"uint32\":return new I(t,r);case\"int32\":return new U(t,r);case\"float32\":return new w(t,r);case\"float64\":return new x(t,r)}}},\n function _(e,r,t,i,s){i();const n=e(11),a=e(13),l=e(8);t.serialize=Symbol(\"serialize\");class o extends Error{}t.SerializationError=o,o.__name__=\"SerializationError\";class f{constructor(e){var r;this._references=new Map,this._definitions=new Map,this._refmap=new Map,this.include_defaults=null===(r=null==e?void 0:e.include_defaults)||void 0===r||r}get_ref(e){return this._references.get(e)}add_ref(e,r){n.assert(!this._references.has(e)),this._references.set(e,r)}add_def(e,r){const t=this.get_ref(e);n.assert(null!=t),this._definitions.set(e,r),this._refmap.set(t,r)}get objects(){return new Set(this._references.keys())}get references(){return new Set(this._references.values())}get definitions(){return new Set(this._definitions.values())}resolve_ref(e){return this._refmap.get(e)}remove_ref(e){return this._references.delete(e)}remove_def(e){return this._definitions.delete(e)}to_serializable(e){const r=this.get_ref(e);if(null!=r)return r;if(function(e){return l.isObject(e)&&void 0!==e[t.serialize]}(e))return e[t.serialize](this);if(l.isArray(e)||l.isTypedArray(e)){const r=e.length,t=new Array(r);for(let i=0;i<r;i++){const r=e[i];t[i]=this.to_serializable(r)}return t}if(l.isPlainObject(e)){const r={};for(const[t,i]of a.entries(e))r[t]=this.to_serializable(i);return r}if(null===e||l.isBoolean(e)||l.isNumber(e)||l.isString(e))return e;throw new o(`${Object.prototype.toString.call(e)} is not serializable`)}}t.Serializer=f,f.__name__=\"Serializer\"},\n function _(r,e,n,t,_){t();const a=r(1),f=r(8),u=a.__importStar(r(29)),s=r(27),o=r(32);n.is_NDArray_ref=function(r){return f.isPlainObject(r)&&(\"__buffer__\"in r||\"__ndarray__\"in r)},n.decode_NDArray=function(r,e){const{shape:n,dtype:t,order:_}=r;let a;if(\"__buffer__\"in r){const n=e.get(r.__buffer__);if(null==n)throw new Error(`buffer for ${r.__buffer__} not found`);a=n}else a=o.base64_to_buffer(r.__ndarray__);const f=(()=>{switch(t){case\"uint8\":return new u.Uint8NDArray(a,n);case\"int8\":return new u.Int8NDArray(a,n);case\"uint16\":return new u.Uint16NDArray(a,n);case\"int16\":return new u.Int16NDArray(a,n);case\"uint32\":return new u.Uint32NDArray(a,n);case\"int32\":return new u.Int32NDArray(a,n);case\"float32\":return new u.Float32NDArray(a,n);case\"float64\":return new u.Float64NDArray(a,n)}})();return _!==s.BYTE_ORDER&&o.swap(f),f},n.encode_NDArray=function(r,e){const n={order:s.BYTE_ORDER,dtype:r.dtype,shape:r.shape};if(null!=e){const t=`${e.size}`;return e.set(t,r.buffer),Object.assign({__buffer__:t},n)}{const e={toJSON:()=>o.buffer_to_base64(r.buffer)};return Object.assign({__ndarray__:e},n)}}},\n function _(t,e,n,r,f){r(),n.buffer_to_base64=function(t){const e=new Uint8Array(t),n=Array.from(e).map((t=>String.fromCharCode(t)));return btoa(n.join(\"\"))},n.base64_to_buffer=function(t){const e=atob(t),n=e.length,r=new Uint8Array(n);for(let t=0,f=n;t<f;t++)r[t]=e.charCodeAt(t);return r.buffer},n.swap=function(t){switch(t.BYTES_PER_ELEMENT){case 2:!function(t){const e=new Uint8Array(t.buffer,t.byteOffset,2*t.length);for(let t=0,n=e.length;t<n;t+=2){const n=e[t];e[t]=e[t+1],e[t+1]=n}}(t);break;case 4:!function(t){const e=new Uint8Array(t.buffer,t.byteOffset,4*t.length);for(let t=0,n=e.length;t<n;t+=4){let n=e[t];e[t]=e[t+3],e[t+3]=n,n=e[t+1],e[t+1]=e[t+2],e[t+2]=n}}(t);break;case 8:!function(t){const e=new Uint8Array(t.buffer,t.byteOffset,8*t.length);for(let t=0,n=e.length;t<n;t+=8){let n=e[t];e[t]=e[t+7],e[t+7]=n,n=e[t+1],e[t+1]=e[t+6],e[t+6]=n,n=e[t+2],e[t+2]=e[t+5],e[t+5]=n,n=e[t+3],e[t+3]=e[t+4],e[t+4]=n}}(t)}}},\n function _(t,r,e,s,a){s();const i=t(26);class n{is_Scalar(){return this.is_scalar}is_Vector(){return!this.is_scalar}}e.Uniform=n,n.__name__=\"Uniform\";class l extends n{constructor(t,r){super(),this.value=t,this.length=r,this.is_scalar=!0}get(t){return this.value}*[Symbol.iterator](){const{length:t,value:r}=this;for(let e=0;e<t;e++)yield r}select(t){return new l(this.value,t.count)}[i.equals](t,r){return r.eq(this.length,t.length)&&r.eq(this.value,t.value)}}e.UniformScalar=l,l.__name__=\"UniformScalar\";class o extends n{constructor(t){super(),this.array=t,this.is_scalar=!1,this.length=this.array.length}get(t){return this.array[t]}*[Symbol.iterator](){yield*this.array}select(t){const r=t.select(this.array);return new this.constructor(r)}[i.equals](t,r){return r.eq(this.length,t.length)&&r.eq(this.array,t.array)}}e.UniformVector=o,o.__name__=\"UniformVector\";class h extends o{constructor(t){super(t),this.array=t,this._view=new DataView(t.buffer)}get(t){return this._view.getUint32(4*t)}*[Symbol.iterator](){const t=this.length;for(let r=0;r<t;r++)yield this.get(r)}}e.ColorUniformVector=h,h.__name__=\"ColorUniformVector\"},\n function _(t,e,r,n,u){n();const c=t(28);function s(){const t=new Array(32),e=\"0123456789ABCDEF\";for(let r=0;r<32;r++)t[r]=e.substr(Math.floor(16*Math.random()),1);return t[12]=\"4\",t[16]=e.substr(3&t[16].charCodeAt(0)|8,1),t.join(\"\")}r.startsWith=function(t,e,r=0){return t.substr(r,e.length)==e},r.uuid4=s;let a=1e3;r.uniqueId=function(t){const e=c.settings.dev?\"j\"+a++:s();return null!=t?`${t}-${e}`:e},r.escape=function(t){return t.replace(/(?:[&<>\"'`])/g,(t=>{switch(t){case\"&\":return\"&\";case\"<\":return\"<\";case\">\":return\">\";case'\"':return\""\";case\"'\":return\"'\";case\"`\":return\"`\";default:return t}}))},r.unescape=function(t){return t.replace(/&(amp|lt|gt|quot|#x27|#x60);/g,((t,e)=>{switch(e){case\"amp\":return\"&\";case\"lt\":return\"<\";case\"gt\":return\">\";case\"quot\":return'\"';case\"#x27\":return\"'\";case\"#x60\":return\"`\";default:return e}}))},r.use_strict=function(t){return`'use strict';\\n${t}`},r.to_fixed=function(t,e){return t.toFixed(e).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\")}},\n function _(e,t,s,n,o){n();const i=e(30);class r{constructor(e){this.document=e}}s.DocumentEvent=r,r.__name__=\"DocumentEvent\";class a extends r{constructor(e,t,s){super(e),this.events=t,this.setter_id=s}}s.DocumentEventBatch=a,a.__name__=\"DocumentEventBatch\";class d extends r{}s.DocumentChangedEvent=d,d.__name__=\"DocumentChangedEvent\";class l extends d{constructor(e,t,s){super(e),this.msg_type=t,this.msg_data=s}[i.serialize](e){const t=this.msg_data,s=e.to_serializable(t);return{kind:\"MessageSent\",msg_type:this.msg_type,msg_data:s}}}s.MessageSentEvent=l,l.__name__=\"MessageSentEvent\";class _ extends d{constructor(e,t,s,n,o,i,r){super(e),this.model=t,this.attr=s,this.old=n,this.new_=o,this.setter_id=i,this.hint=r}[i.serialize](e){if(null!=this.hint)return e.to_serializable(this.hint);const t=this.new_,s=e.to_serializable(t);return this.model!=t&&e.remove_def(this.model),{kind:\"ModelChanged\",model:this.model.ref(),attr:this.attr,new:s}}}s.ModelChangedEvent=_,_.__name__=\"ModelChangedEvent\";class c extends d{constructor(e,t,s){super(e),this.column_source=t,this.patches=s}[i.serialize](e){return{kind:\"ColumnsPatched\",column_source:this.column_source,patches:this.patches}}}s.ColumnsPatchedEvent=c,c.__name__=\"ColumnsPatchedEvent\";class h extends d{constructor(e,t,s,n){super(e),this.column_source=t,this.data=s,this.rollover=n}[i.serialize](e){return{kind:\"ColumnsStreamed\",column_source:this.column_source,data:this.data,rollover:this.rollover}}}s.ColumnsStreamedEvent=h,h.__name__=\"ColumnsStreamedEvent\";class m extends d{constructor(e,t,s){super(e),this.title=t,this.setter_id=s}[i.serialize](e){return{kind:\"TitleChanged\",title:this.title}}}s.TitleChangedEvent=m,m.__name__=\"TitleChangedEvent\";class u extends d{constructor(e,t,s){super(e),this.model=t,this.setter_id=s}[i.serialize](e){return{kind:\"RootAdded\",model:e.to_serializable(this.model)}}}s.RootAddedEvent=u,u.__name__=\"RootAddedEvent\";class v extends d{constructor(e,t,s){super(e),this.model=t,this.setter_id=s}[i.serialize](e){return{kind:\"RootRemoved\",model:this.model.ref()}}}s.RootRemovedEvent=v,v.__name__=\"RootRemovedEvent\"},\n function _(t,r,n,i,e){i();const s=t(8),o=t(13);n.pretty=Symbol(\"pretty\");class c{constructor(t){this.precision=null==t?void 0:t.precision}to_string(t){return function(t){return s.isObject(t)&&void 0!==t[n.pretty]}(t)?t[n.pretty](this):s.isBoolean(t)?this.boolean(t):s.isNumber(t)?this.number(t):s.isString(t)?this.string(t):s.isArray(t)?this.array(t):s.isIterable(t)?this.iterable(t):s.isPlainObject(t)?this.object(t):`${t}`}token(t){return t}boolean(t){return`${t}`}number(t){return null!=this.precision?t.toFixed(this.precision):`${t}`}string(t){return`\"${t.replace(/'/g,\"\\\\'\")}\"`}array(t){const r=this.token,n=[];for(const r of t)n.push(this.to_string(r));return`${r(\"[\")}${n.join(`${r(\",\")} `)}${r(\"]\")}`}iterable(t){var r;const n=this.token,i=null!==(r=Object(t)[Symbol.toStringTag])&&void 0!==r?r:\"Object\",e=this.array(t);return`${i}${n(\"(\")}${e}${n(\")\")}`}object(t){const r=this.token,n=[];for(const[i,e]of o.entries(t))n.push(`${i}${r(\":\")} ${this.to_string(e)}`);return`${r(\"{\")}${n.join(`${r(\",\")} `)}${r(\"}\")}`}}n.Printer=c,c.__name__=\"Printer\",n.to_string=function(t,r){return new c(r).to_string(t)}},\n function _(n,o,r,e,t){e();const l=n(13),i=n(8);function c(n){return i.isObject(n)&&void 0!==n[r.clone]}r.clone=Symbol(\"clone\"),r.is_Cloneable=c;class s extends Error{}r.CloningError=s,s.__name__=\"CloningError\";class a{constructor(){}clone(n){if(c(n))return n[r.clone](this);if(i.isArray(n)){const o=n.length,r=new Array(o);for(let e=0;e<o;e++){const o=n[e];r[e]=this.clone(o)}return r}if(i.isPlainObject(n)){const o={};for(const[r,e]of l.entries(n))o[r]=this.clone(e);return o}if(null===n||i.isBoolean(n)||i.isNumber(n)||i.isString(n))return n;throw new s(`${Object.prototype.toString.call(n)} is not cloneable`)}}r.Cloner=a,a.__name__=\"Cloner\"},\n function _(t,_,r,o,a){o();const e=t(1);e.__exportStar(t(39),r),e.__exportStar(t(162),r),e.__exportStar(t(257),r),e.__exportStar(t(261),r),e.__exportStar(t(266),r),e.__exportStar(t(272),r),e.__exportStar(t(205),r),e.__exportStar(t(277),r),e.__exportStar(t(313),r),e.__exportStar(t(315),r),e.__exportStar(t(317),r),e.__exportStar(t(209),r),e.__exportStar(t(147),r),e.__exportStar(t(330),r),e.__exportStar(t(338),r),e.__exportStar(t(220),r),e.__exportStar(t(339),r),e.__exportStar(t(217),r),e.__exportStar(t(340),r),e.__exportStar(t(341),r),e.__exportStar(t(198),r),e.__exportStar(t(346),r),e.__exportStar(t(356),r),e.__exportStar(t(360),r)},\n function _(e,o,n,a,t){a(),t(\"Annotation\",e(40).Annotation),t(\"Arrow\",e(55).Arrow),t(\"ArrowHead\",e(133).ArrowHead),t(\"OpenHead\",e(133).OpenHead),t(\"NormalHead\",e(133).NormalHead),t(\"TeeHead\",e(133).TeeHead),t(\"VeeHead\",e(133).VeeHead),t(\"Band\",e(134).Band),t(\"BoxAnnotation\",e(136).BoxAnnotation),t(\"ColorBar\",e(137).ColorBar),t(\"Label\",e(226).Label),t(\"LabelSet\",e(227).LabelSet),t(\"Legend\",e(228).Legend),t(\"LegendItem\",e(229).LegendItem),t(\"PolyAnnotation\",e(231).PolyAnnotation),t(\"Slope\",e(232).Slope),t(\"Span\",e(233).Span),t(\"TextAnnotation\",e(139).TextAnnotation),t(\"Title\",e(138).Title),t(\"ToolbarPanel\",e(234).ToolbarPanel),t(\"Tooltip\",e(254).Tooltip),t(\"Whisker\",e(256).Whisker)},\n function _(t,e,i,n,s){n();const o=t(41);class a extends o.RendererView{get_size(){if(this.model.visible){const{width:t,height:e}=this._get_size();return{width:Math.round(t),height:Math.round(e)}}return{width:0,height:0}}_get_size(){throw new Error(\"not implemented\")}connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.visible,(()=>{null!=this.layout&&(this.layout.visible=this.model.visible,this.plot_view.request_layout())}))}get needs_clip(){return null==this.layout}serializable_state(){const t=super.serializable_state();return null==this.layout?t:Object.assign(Object.assign({},t),{bbox:this.layout.bbox.box})}}i.AnnotationView=a,a.__name__=\"AnnotationView\";class l extends o.Renderer{constructor(t){super(t)}static init_Annotation(){this.override({level:\"annotation\"})}}i.Annotation=l,l.__name__=\"Annotation\",l.init_Annotation()},\n function _(e,i,t,n,s){n();const r=e(1),a=e(42),_=r.__importStar(e(45)),o=e(20),l=e(53),d=e(54);class h extends a.View{get coordinates(){const{_coordinates:e}=this;return null!=e?e:this._coordinates=this._initialize_coordinates()}initialize(){super.initialize(),this.visuals=new _.Visuals(this),this.needs_webgl_blit=!1}connect_signals(){super.connect_signals();const{x_range_name:e,y_range_name:i}=this.model.properties;this.on_change([e,i],(()=>this._initialize_coordinates()))}_initialize_coordinates(){const{x_range_name:e,y_range_name:i}=this.model,{frame:t}=this.plot_view,n=t.x_scales.get(e),s=t.y_scales.get(i);return new d.CoordinateTransform(n,s)}get plot_view(){return this.parent}get plot_model(){return this.parent.model}get layer(){const{overlays:e,primary:i}=this.canvas;return\"overlay\"==this.model.level?e:i}get canvas(){return this.plot_view.canvas_view}request_render(){this.request_paint()}request_paint(){this.plot_view.request_paint(this)}notify_finished(){this.plot_view.notify_finished()}get needs_clip(){return!1}get has_webgl(){return!1}render(){this.model.visible&&this._render(),this._has_finished=!0}renderer_view(e){}}t.RendererView=h,h.__name__=\"RendererView\";class c extends l.Model{constructor(e){super(e)}static init_Renderer(){this.define((({Boolean:e,String:i})=>({level:[o.RenderLevel,\"image\"],visible:[e,!0],x_range_name:[i,\"default\"],y_range_name:[i,\"default\"]})))}}t.Renderer=c,c.__name__=\"Renderer\",c.init_Renderer()},\n function _(t,e,s,i,n){i();const r=t(1),o=t(15),h=t(43),l=t(8),a=r.__importDefault(t(44));class _{constructor(t){this.removed=new o.Signal0(this,\"removed\"),this._ready=Promise.resolve(void 0),this._slots=new WeakMap;const{model:e,parent:s}=t;this.model=e,this.parent=s,this.root=null==s?this:s.root,this.removed.emit()}get ready(){return this._ready}connect(t,e){let s=this._slots.get(e);return null==s&&(s=(t,s)=>{const i=Promise.resolve(e.call(this,t,s));this._ready=this._ready.then((()=>i))},this._slots.set(e,s)),t.connect(s,this)}disconnect(t,e){return t.disconnect(e,this)}initialize(){this._has_finished=!1,this.is_root&&(this._stylesheet=h.stylesheet);for(const t of this.styles())this.stylesheet.append(t)}async lazy_initialize(){}remove(){this.disconnect_signals(),this.removed.emit()}toString(){return`${this.model.type}View(${this.model.id})`}serializable_state(){return{type:this.model.type}}get is_root(){return null==this.parent}assert_root(){if(!this.is_root)throw new Error(`${this.toString()} is not a root layout`)}has_finished(){return this._has_finished}get is_idle(){return this.has_finished()}connect_signals(){}disconnect_signals(){o.Signal.disconnect_receiver(this)}on_change(t,e){for(const s of l.isArray(t)?t:[t])this.connect(s.change,e)}cursor(t,e){return null}get stylesheet(){return this.is_root?this._stylesheet:this.root.stylesheet}styles(){return[a.default]}}s.View=_,_.__name__=\"View\"},\n function _(t,e,n,i,o){i();const s=t(8),l=t(13),r=t=>(e={},...n)=>{const i=document.createElement(t);i.classList.add(\"bk\");for(let[t,n]of l.entries(e))if(null!=n&&(!s.isBoolean(n)||n))if(\"class\"===t&&(s.isString(n)&&(n=n.split(/\\s+/)),s.isArray(n)))for(const t of n)null!=t&&i.classList.add(t);else if(\"style\"===t&&s.isPlainObject(n))for(const[t,e]of l.entries(n))i.style[t]=e;else if(\"data\"===t&&s.isPlainObject(n))for(const[t,e]of l.entries(n))i.dataset[t]=e;else i.setAttribute(t,n);function o(t){if(s.isString(t))i.appendChild(document.createTextNode(t));else if(t instanceof Node)i.appendChild(t);else if(t instanceof NodeList||t instanceof HTMLCollection)for(const e of t)i.appendChild(e);else if(null!=t&&!1!==t)throw new Error(`expected a DOM element, string, false or null, got ${JSON.stringify(t)}`)}for(const t of n)if(s.isArray(t))for(const e of t)o(e);else o(t);return i};function a(t){const e=t.parentNode;null!=e&&e.removeChild(t)}function c(t,...e){const n=t.firstChild;for(const i of e)t.insertBefore(i,n)}function d(t,e){var n,i,o;const s=Element.prototype;return(null!==(o=null!==(i=null!==(n=s.matches)&&void 0!==n?n:s.webkitMatchesSelector)&&void 0!==i?i:s.mozMatchesSelector)&&void 0!==o?o:s.msMatchesSelector).call(t,e)}function h(t){return parseFloat(t)||0}function u(t){const e=getComputedStyle(t);return{border:{top:h(e.borderTopWidth),bottom:h(e.borderBottomWidth),left:h(e.borderLeftWidth),right:h(e.borderRightWidth)},margin:{top:h(e.marginTop),bottom:h(e.marginBottom),left:h(e.marginLeft),right:h(e.marginRight)},padding:{top:h(e.paddingTop),bottom:h(e.paddingBottom),left:h(e.paddingLeft),right:h(e.paddingRight)}}}function f(t){const e=t.getBoundingClientRect();return{width:Math.ceil(e.width),height:Math.ceil(e.height)}}n.createElement=function(t,e,...n){return r(t)(e,...n)},n.div=r(\"div\"),n.span=r(\"span\"),n.canvas=r(\"canvas\"),n.link=r(\"link\"),n.style=r(\"style\"),n.a=r(\"a\"),n.p=r(\"p\"),n.i=r(\"i\"),n.pre=r(\"pre\"),n.button=r(\"button\"),n.label=r(\"label\"),n.input=r(\"input\"),n.select=r(\"select\"),n.option=r(\"option\"),n.optgroup=r(\"optgroup\"),n.textarea=r(\"textarea\"),n.nbsp=function(){return document.createTextNode(\" \")},n.append=function(t,...e){for(const n of e)t.appendChild(n)},n.remove=a,n.removeElement=a,n.replaceWith=function(t,e){const n=t.parentNode;null!=n&&n.replaceChild(e,t)},n.prepend=c,n.empty=function(t,e=!1){let n;for(;n=t.firstChild;)t.removeChild(n);if(e&&t instanceof Element)for(const e of t.attributes)t.removeAttributeNode(e)},n.display=function(t){t.style.display=\"\"},n.undisplay=function(t){t.style.display=\"none\"},n.show=function(t){t.style.visibility=\"\"},n.hide=function(t){t.style.visibility=\"hidden\"},n.offset=function(t){const e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset-document.documentElement.clientTop,left:e.left+window.pageXOffset-document.documentElement.clientLeft}},n.matches=d,n.parent=function(t,e){let n=t;for(;n=n.parentElement;)if(d(n,e))return n;return null},n.extents=u,n.size=f,n.scroll_size=function(t){return{width:Math.ceil(t.scrollWidth),height:Math.ceil(t.scrollHeight)}},n.outer_size=function(t){const{margin:{left:e,right:n,top:i,bottom:o}}=u(t),{width:s,height:l}=f(t);return{width:Math.ceil(s+e+n),height:Math.ceil(l+i+o)}},n.content_size=function(t){const{left:e,top:n}=t.getBoundingClientRect(),{padding:i}=u(t);let o=0,s=0;for(const l of t.children){const t=l.getBoundingClientRect();o=Math.max(o,Math.ceil(t.left-e-i.left+t.width)),s=Math.max(s,Math.ceil(t.top-n-i.top+t.height))}return{width:o,height:s}},n.position=function(t,e,n){const{style:i}=t;if(i.left=`${e.x}px`,i.top=`${e.y}px`,i.width=`${e.width}px`,i.height=`${e.height}px`,null==n)i.margin=\"\";else{const{top:t,right:e,bottom:o,left:s}=n;i.margin=`${t}px ${e}px ${o}px ${s}px`}},n.children=function(t){return Array.from(t.children)};class p{constructor(t){this.el=t,this.classList=t.classList}get values(){const t=[];for(let e=0;e<this.classList.length;e++){const n=this.classList.item(e);null!=n&&t.push(n)}return t}has(t){return this.classList.contains(t)}add(...t){for(const e of t)this.classList.add(e);return this}remove(...t){for(const e of t)this.classList.remove(e);return this}clear(){for(const t of this.values)\"bk\"!=t&&this.classList.remove(t);return this}toggle(t,e){return(null!=e?e:!this.has(t))?this.add(t):this.remove(t),this}}var g;function m(t,e,n){const{width:i,height:o,position:s,display:l}=t.style;t.style.position=\"absolute\",t.style.display=\"\",t.style.width=null!=e.width&&e.width!=1/0?`${e.width}px`:\"auto\",t.style.height=null!=e.height&&e.height!=1/0?`${e.height}px`:\"auto\";try{return n()}finally{t.style.position=s,t.style.display=l,t.style.width=i,t.style.height=o}}n.ClassList=p,p.__name__=\"ClassList\",n.classes=function(t){return new p(t)},n.toggle_attribute=function(t,e,n){null==n&&(n=!t.hasAttribute(e)),n?t.setAttribute(e,\"true\"):t.removeAttribute(e)},(g=n.Keys||(n.Keys={}))[g.Backspace=8]=\"Backspace\",g[g.Tab=9]=\"Tab\",g[g.Enter=13]=\"Enter\",g[g.Esc=27]=\"Esc\",g[g.PageUp=33]=\"PageUp\",g[g.PageDown=34]=\"PageDown\",g[g.Left=37]=\"Left\",g[g.Up=38]=\"Up\",g[g.Right=39]=\"Right\",g[g.Down=40]=\"Down\",g[g.Delete=46]=\"Delete\",n.undisplayed=function(t,e){const{display:n}=t.style;t.style.display=\"none\";try{return e()}finally{t.style.display=n}},n.unsized=function(t,e){return m(t,{},e)},n.sized=m;class y{constructor(t){this.root=t,this.known=new Set,this.style=n.style({type:\"text/css\"}),c(t,this.style)}append(t){this.known.has(t)||(this.style.appendChild(document.createTextNode(t)),this.known.add(t))}}n.StyleSheet=y,y.__name__=\"StyleSheet\",n.stylesheet=new y(document.head),n.dom_ready=async function(){if(\"loading\"==document.readyState)return new Promise(((t,e)=>{document.addEventListener(\"DOMContentLoaded\",(()=>t()),{once:!0})}))}},\n function _(o,i,t,e,r){e(),t.root=\"bk-root\",t.default=\".bk-root{position:relative;width:auto;height:auto;box-sizing:border-box;font-family:Helvetica, Arial, sans-serif;font-size:13px;}.bk-root .bk,.bk-root .bk:before,.bk-root .bk:after{box-sizing:inherit;margin:0;border:0;padding:0;background-image:none;font-family:inherit;font-size:100%;line-height:1.42857143;}.bk-root pre.bk{font-family:Courier, monospace;}\"},\n function _(e,t,r,a,c){a();const l=e(1),n=e(46);c(\"Line\",n.Line),c(\"LineScalar\",n.LineScalar),c(\"LineVector\",n.LineVector);const i=e(49);c(\"Fill\",i.Fill),c(\"FillScalar\",i.FillScalar),c(\"FillVector\",i.FillVector);const s=e(50);c(\"Text\",s.Text),c(\"TextScalar\",s.TextScalar),c(\"TextVector\",s.TextVector);const o=e(51);c(\"Hatch\",o.Hatch),c(\"HatchScalar\",o.HatchScalar),c(\"HatchVector\",o.HatchVector);const u=l.__importStar(e(48)),V=e(47);c(\"VisualProperties\",V.VisualProperties),c(\"VisualUniforms\",V.VisualUniforms);class h{constructor(e){this._visuals=[];for(const[t,r]of e.model._mixins){const a=(()=>{switch(r){case u.Line:return new n.Line(e,t);case u.LineScalar:return new n.LineScalar(e,t);case u.LineVector:return new n.LineVector(e,t);case u.Fill:return new i.Fill(e,t);case u.FillScalar:return new i.FillScalar(e,t);case u.FillVector:return new i.FillVector(e,t);case u.Text:return new s.Text(e,t);case u.TextScalar:return new s.TextScalar(e,t);case u.TextVector:return new s.TextVector(e,t);case u.Hatch:return new o.Hatch(e,t);case u.HatchScalar:return new o.HatchScalar(e,t);case u.HatchVector:return new o.HatchVector(e,t);default:throw new Error(\"unknown visual\")}})();this._visuals.push(a),Object.defineProperty(this,t+a.type,{get:()=>a,configurable:!1,enumerable:!0})}}*[Symbol.iterator](){yield*this._visuals}}r.Visuals=h,h.__name__=\"Visuals\"},\n function _(e,t,i,l,s){l();const n=e(1),a=e(47),o=n.__importStar(e(48)),r=e(22),_=e(8);function h(e){if(_.isArray(e))return e;switch(e){case\"solid\":return[];case\"dashed\":return[6];case\"dotted\":return[2,4];case\"dotdash\":return[2,4,6,4];case\"dashdot\":return[6,4,2,4];default:return e.split(\" \").map(Number).filter(_.isInteger)}}i.resolve_line_dash=h;class c extends a.VisualProperties{get doit(){const e=this.line_color.get_value(),t=this.line_alpha.get_value(),i=this.line_width.get_value();return!(null==e||0==t||0==i)}set_value(e){const t=this.line_color.get_value(),i=this.line_alpha.get_value();e.strokeStyle=r.color2css(t,i),e.lineWidth=this.line_width.get_value(),e.lineJoin=this.line_join.get_value(),e.lineCap=this.line_cap.get_value(),e.lineDash=h(this.line_dash.get_value()),e.lineDashOffset=this.line_dash_offset.get_value()}}i.Line=c,c.__name__=\"Line\";class u extends a.VisualUniforms{get doit(){const e=this.line_color.value,t=this.line_alpha.value,i=this.line_width.value;return!(0==e||0==t||0==i)}set_value(e){const t=this.line_color.value,i=this.line_alpha.value;e.strokeStyle=r.color2css(t,i),e.lineWidth=this.line_width.value,e.lineJoin=this.line_join.value,e.lineCap=this.line_cap.value,e.lineDash=h(this.line_dash.value),e.lineDashOffset=this.line_dash_offset.value}}i.LineScalar=u,u.__name__=\"LineScalar\";class d extends a.VisualUniforms{get doit(){const{line_color:e}=this;if(e.is_Scalar()&&0==e.value)return!1;const{line_alpha:t}=this;if(t.is_Scalar()&&0==t.value)return!1;const{line_width:i}=this;return!i.is_Scalar()||0!=i.value}set_vectorize(e,t){const i=this.line_color.get(t),l=this.line_alpha.get(t),s=this.line_width.get(t),n=this.line_join.get(t),a=this.line_cap.get(t),o=this.line_dash.get(t),_=this.line_dash_offset.get(t);e.strokeStyle=r.color2css(i,l),e.lineWidth=s,e.lineJoin=n,e.lineCap=a,e.lineDash=h(o),e.lineDashOffset=_}}i.LineVector=d,d.__name__=\"LineVector\",c.prototype.type=\"line\",c.prototype.attrs=Object.keys(o.Line),u.prototype.type=\"line\",u.prototype.attrs=Object.keys(o.LineScalar),d.prototype.type=\"line\",d.prototype.attrs=Object.keys(o.LineVector)},\n function _(t,s,o,i,r){i();class e{constructor(t,s=\"\"){this.obj=t,this.prefix=s;const o=this;this._props=[];for(const i of this.attrs){const r=t.model.properties[s+i];r.change.connect((()=>this.update())),o[i]=r,this._props.push(r)}this.update()}*[Symbol.iterator](){yield*this._props}update(){}}o.VisualProperties=e,e.__name__=\"VisualProperties\";class p{constructor(t,s=\"\"){this.obj=t,this.prefix=s;for(const o of this.attrs)Object.defineProperty(this,o,{get:()=>t[s+o]})}*[Symbol.iterator](){for(const t of this.attrs)yield this.obj.model.properties[this.prefix+t]}update(){}}o.VisualUniforms=p,p.__name__=\"VisualUniforms\"},\n function _(e,l,t,a,c){a();const r=e(1),o=r.__importStar(e(18)),n=e(20),i=r.__importStar(e(21)),_=e(13);t.Line={line_color:[i.Nullable(i.Color),\"black\"],line_alpha:[i.Alpha,1],line_width:[i.Number,1],line_join:[n.LineJoin,\"bevel\"],line_cap:[n.LineCap,\"butt\"],line_dash:[i.Or(n.LineDash,i.Array(i.Number)),[]],line_dash_offset:[i.Number,0]},t.Fill={fill_color:[i.Nullable(i.Color),\"gray\"],fill_alpha:[i.Alpha,1]},t.Hatch={hatch_color:[i.Nullable(i.Color),\"black\"],hatch_alpha:[i.Alpha,1],hatch_scale:[i.Number,12],hatch_pattern:[i.Nullable(i.Or(n.HatchPatternType,i.String)),null],hatch_weight:[i.Number,1],hatch_extra:[i.Dict(i.AnyRef()),{}]},t.Text={text_color:[i.Nullable(i.Color),\"#444444\"],text_alpha:[i.Alpha,1],text_font:[o.Font,\"helvetica\"],text_font_size:[i.FontSize,\"16px\"],text_font_style:[n.FontStyle,\"normal\"],text_align:[n.TextAlign,\"left\"],text_baseline:[n.TextBaseline,\"bottom\"],text_line_height:[i.Number,1.2]},t.LineScalar={line_color:[o.ColorScalar,\"black\"],line_alpha:[o.NumberScalar,1],line_width:[o.NumberScalar,1],line_join:[o.LineJoinScalar,\"bevel\"],line_cap:[o.LineCapScalar,\"butt\"],line_dash:[o.LineDashScalar,[]],line_dash_offset:[o.NumberScalar,0]},t.FillScalar={fill_color:[o.ColorScalar,\"gray\"],fill_alpha:[o.NumberScalar,1]},t.HatchScalar={hatch_color:[o.ColorScalar,\"black\"],hatch_alpha:[o.NumberScalar,1],hatch_scale:[o.NumberScalar,12],hatch_pattern:[o.NullStringScalar,null],hatch_weight:[o.NumberScalar,1],hatch_extra:[o.AnyScalar,{}]},t.TextScalar={text_color:[o.ColorScalar,\"#444444\"],text_alpha:[o.NumberScalar,1],text_font:[o.FontScalar,\"helvetica\"],text_font_size:[o.FontSizeScalar,\"16px\"],text_font_style:[o.FontStyleScalar,\"normal\"],text_align:[o.TextAlignScalar,\"left\"],text_baseline:[o.TextBaselineScalar,\"bottom\"],text_line_height:[o.NumberScalar,1.2]},t.LineVector={line_color:[o.ColorSpec,\"black\"],line_alpha:[o.NumberSpec,1],line_width:[o.NumberSpec,1],line_join:[o.LineJoinSpec,\"bevel\"],line_cap:[o.LineCapSpec,\"butt\"],line_dash:[o.LineDashSpec,[]],line_dash_offset:[o.NumberSpec,0]},t.FillVector={fill_color:[o.ColorSpec,\"gray\"],fill_alpha:[o.NumberSpec,1]},t.HatchVector={hatch_color:[o.ColorSpec,\"black\"],hatch_alpha:[o.NumberSpec,1],hatch_scale:[o.NumberSpec,12],hatch_pattern:[o.NullStringSpec,null],hatch_weight:[o.NumberSpec,1],hatch_extra:[o.AnyScalar,{}]},t.TextVector={text_color:[o.ColorSpec,\"#444444\"],text_alpha:[o.NumberSpec,1],text_font:[o.FontSpec,\"helvetica\"],text_font_size:[o.FontSizeSpec,\"16px\"],text_font_style:[o.FontStyleSpec,\"normal\"],text_align:[o.TextAlignSpec,\"left\"],text_baseline:[o.TextBaselineSpec,\"bottom\"],text_line_height:[o.NumberSpec,1.2]},t.attrs_of=function(e,l,t,a=!1){const c={};for(const r of _.keys(t)){const t=`${l}${r}`,o=e[t];c[a?t:r]=o}return c}},\n function _(l,t,e,i,s){i();const o=l(1),a=l(47),r=o.__importStar(l(48)),c=l(22);class _ extends a.VisualProperties{get doit(){const l=this.fill_color.get_value(),t=this.fill_alpha.get_value();return!(null==l||0==t)}set_value(l){const t=this.fill_color.get_value(),e=this.fill_alpha.get_value();l.fillStyle=c.color2css(t,e)}}e.Fill=_,_.__name__=\"Fill\";class n extends a.VisualUniforms{get doit(){const l=this.fill_color.value,t=this.fill_alpha.value;return!(0==l||0==t)}set_value(l){const t=this.fill_color.value,e=this.fill_alpha.value;l.fillStyle=c.color2css(t,e)}}e.FillScalar=n,n.__name__=\"FillScalar\";class p extends a.VisualUniforms{get doit(){const{fill_color:l}=this;if(l.is_Scalar()&&0==l.value)return!1;const{fill_alpha:t}=this;return!t.is_Scalar()||0!=t.value}set_vectorize(l,t){const e=this.fill_color.get(t),i=this.fill_alpha.get(t);l.fillStyle=c.color2css(e,i)}}e.FillVector=p,p.__name__=\"FillVector\",_.prototype.type=\"fill\",_.prototype.attrs=Object.keys(r.Fill),n.prototype.type=\"fill\",n.prototype.attrs=Object.keys(r.FillScalar),p.prototype.type=\"fill\",p.prototype.attrs=Object.keys(r.FillVector)},\n function _(t,e,s,l,a){l();const o=t(1),_=t(47),i=o.__importStar(t(48)),n=t(22);class x extends _.VisualProperties{get doit(){const t=this.text_color.get_value(),e=this.text_alpha.get_value();return!(null==t||0==e)}set_value(t){const e=this.text_color.get_value(),s=this.text_alpha.get_value();t.fillStyle=n.color2css(e,s),t.font=this.font_value(),t.textAlign=this.text_align.get_value(),t.textBaseline=this.text_baseline.get_value()}font_value(){return`${this.text_font_style.get_value()} ${this.text_font_size.get_value()} ${this.text_font.get_value()}`}}s.Text=x,x.__name__=\"Text\";class r extends _.VisualUniforms{get doit(){const t=this.text_color.value,e=this.text_alpha.value;return!(0==t||0==e)}set_value(t){const e=this.text_color.value,s=this.text_alpha.value,l=this.font_value(),a=this.text_align.value,o=this.text_baseline.value;t.fillStyle=n.color2css(e,s),t.font=l,t.textAlign=a,t.textBaseline=o}font_value(){return`${this.text_font_style.value} ${this.text_font_size.value} ${this.text_font.value}`}}s.TextScalar=r,r.__name__=\"TextScalar\";class u extends _.VisualUniforms{get doit(){const{text_color:t}=this;if(t.is_Scalar()&&0==t.value)return!1;const{text_alpha:e}=this;return!e.is_Scalar()||0!=e.value}set_vectorize(t,e){const s=this.text_color.get(e),l=this.text_alpha.get(e),a=this.font_value(e),o=this.text_align.get(e),_=this.text_baseline.get(e);t.fillStyle=n.color2css(s,l),t.font=a,t.textAlign=o,t.textBaseline=_}font_value(t){return`${this.text_font_style.get(t)} ${this.text_font_size.get(t)} ${this.text_font.get(t)}`}}s.TextVector=u,u.__name__=\"TextVector\",x.prototype.type=\"text\",x.prototype.attrs=Object.keys(i.Text),r.prototype.type=\"text\",r.prototype.attrs=Object.keys(i.TextScalar),u.prototype.type=\"text\",u.prototype.attrs=Object.keys(i.TextVector)},\n function _(t,e,a,h,r){h();const i=t(1),s=t(47),c=t(52),n=i.__importStar(t(18)),_=i.__importStar(t(48));class l extends s.VisualProperties{constructor(){super(...arguments),this._update_iteration=0}update(){if(this._update_iteration++,this._hatch_image=null,!this.doit)return;const t=this.hatch_color.get_value(),e=this.hatch_alpha.get_value(),a=this.hatch_scale.get_value(),h=this.hatch_pattern.get_value(),r=this.hatch_weight.get_value(),i=t=>{this._hatch_image=t},s=this.hatch_extra.get_value()[h];if(null!=s){const h=s.get_pattern(t,e,a,r);if(h instanceof Promise){const{_update_iteration:t}=this;h.then((e=>{this._update_iteration==t&&(i(e),this.obj.request_render())}))}else i(h)}else{const s=this.obj.canvas.create_layer(),n=c.get_pattern(s,h,t,e,a,r);i(n)}}get doit(){const t=this.hatch_color.get_value(),e=this.hatch_alpha.get_value(),a=this.hatch_pattern.get_value();return!(null==t||0==e||\" \"==a||\"blank\"==a||null==a)}set_value(t){const e=this.pattern(t);t.fillStyle=null!=e?e:\"transparent\"}pattern(t){const e=this._hatch_image;return null==e?null:t.createPattern(e,this.repetition())}repetition(){const t=this.hatch_pattern.get_value(),e=this.hatch_extra.get_value()[t];if(null==e)return\"repeat\";switch(e.repetition){case\"repeat\":return\"repeat\";case\"repeat_x\":return\"repeat-x\";case\"repeat_y\":return\"repeat-y\";case\"no_repeat\":return\"no-repeat\"}}}a.Hatch=l,l.__name__=\"Hatch\";class o extends s.VisualUniforms{constructor(){super(...arguments),this._static_doit=!1,this._update_iteration=0}_compute_static_doit(){const t=this.hatch_color.value,e=this.hatch_alpha.value,a=this.hatch_pattern.value;return!(null==t||0==e||\" \"==a||\"blank\"==a||null==a)}update(){this._update_iteration++;const t=this.hatch_color.length;if(this._hatch_image=new n.UniformScalar(null,t),this._static_doit=this._compute_static_doit(),!this._static_doit)return;const e=this.hatch_color.value,a=this.hatch_alpha.value,h=this.hatch_scale.value,r=this.hatch_pattern.value,i=this.hatch_weight.value,s=e=>{this._hatch_image=new n.UniformScalar(e,t)},_=this.hatch_extra.value[r];if(null!=_){const t=_.get_pattern(e,a,h,i);if(t instanceof Promise){const{_update_iteration:e}=this;t.then((t=>{this._update_iteration==e&&(s(t),this.obj.request_render())}))}else s(t)}else{const t=this.obj.canvas.create_layer(),n=c.get_pattern(t,r,e,a,h,i);s(n)}}get doit(){return this._static_doit}set_value(t){var e;t.fillStyle=null!==(e=this.pattern(t))&&void 0!==e?e:\"transparent\"}pattern(t){const e=this._hatch_image.value;return null==e?null:t.createPattern(e,this.repetition())}repetition(){const t=this.hatch_pattern.value,e=this.hatch_extra.value[t];if(null==e)return\"repeat\";switch(e.repetition){case\"repeat\":return\"repeat\";case\"repeat_x\":return\"repeat-x\";case\"repeat_y\":return\"repeat-y\";case\"no_repeat\":return\"no-repeat\"}}}a.HatchScalar=o,o.__name__=\"HatchScalar\";class u extends s.VisualUniforms{constructor(){super(...arguments),this._static_doit=!1,this._update_iteration=0}_compute_static_doit(){const{hatch_color:t}=this;if(t.is_Scalar()&&0==t.value)return!1;const{hatch_alpha:e}=this;if(e.is_Scalar()&&0==e.value)return!1;const{hatch_pattern:a}=this;if(a.is_Scalar()){const t=a.value;if(\" \"==t||\"blank\"==t||null==t)return!1}return!0}update(){this._update_iteration++;const t=this.hatch_color.length;if(this._hatch_image=new n.UniformScalar(null,t),this._static_doit=this._compute_static_doit(),!this._static_doit)return;const e=(t,e,a,h,r,i)=>{const s=this.hatch_extra.value[t];if(null!=s){const t=s.get_pattern(e,a,h,r);if(t instanceof Promise){const{_update_iteration:e}=this;t.then((t=>{this._update_iteration==e&&(i(t),this.obj.request_render())}))}else i(t)}else{const s=this.obj.canvas.create_layer(),n=c.get_pattern(s,t,e,a,h,r);i(n)}};if(this.hatch_color.is_Scalar()&&this.hatch_alpha.is_Scalar()&&this.hatch_scale.is_Scalar()&&this.hatch_pattern.is_Scalar()&&this.hatch_weight.is_Scalar()){const a=this.hatch_color.value,h=this.hatch_alpha.value,r=this.hatch_scale.value;e(this.hatch_pattern.value,a,h,r,this.hatch_weight.value,(e=>{this._hatch_image=new n.UniformScalar(e,t)}))}else{const a=new Array(t);a.fill(null),this._hatch_image=new n.UniformVector(a);for(let h=0;h<t;h++){const t=this.hatch_color.get(h),r=this.hatch_alpha.get(h),i=this.hatch_scale.get(h);e(this.hatch_pattern.get(h),t,r,i,this.hatch_weight.get(h),(t=>{a[h]=t}))}}}get doit(){return this._static_doit}set_vectorize(t,e){var a;t.fillStyle=null!==(a=this.pattern(t,e))&&void 0!==a?a:\"transparent\"}pattern(t,e){const a=this._hatch_image.get(e);return null==a?null:t.createPattern(a,this.repetition(e))}repetition(t){const e=this.hatch_pattern.get(t),a=this.hatch_extra.value[e];if(null==a)return\"repeat\";switch(a.repetition){case\"repeat\":return\"repeat\";case\"repeat_x\":return\"repeat-x\";case\"repeat_y\":return\"repeat-y\";case\"no_repeat\":return\"no-repeat\"}}}a.HatchVector=u,u.__name__=\"HatchVector\",l.prototype.type=\"hatch\",l.prototype.attrs=Object.keys(_.Hatch),o.prototype.type=\"hatch\",o.prototype.attrs=Object.keys(_.HatchScalar),u.prototype.type=\"hatch\",u.prototype.attrs=Object.keys(_.HatchVector)},\n function _(e,o,a,s,r){s();const i=e(22);function l(e,o,a){e.moveTo(0,a+.5),e.lineTo(o,a+.5),e.stroke()}function n(e,o,a){e.moveTo(a+.5,0),e.lineTo(a+.5,o),e.stroke()}function t(e,o){e.moveTo(0,o),e.lineTo(o,0),e.stroke(),e.moveTo(0,0),e.lineTo(o,o),e.stroke()}a.hatch_aliases={\" \":\"blank\",\".\":\"dot\",o:\"ring\",\"-\":\"horizontal_line\",\"|\":\"vertical_line\",\"+\":\"cross\",'\"':\"horizontal_dash\",\":\":\"vertical_dash\",\"@\":\"spiral\",\"/\":\"right_diagonal_line\",\"\\\\\":\"left_diagonal_line\",x:\"diagonal_cross\",\",\":\"right_diagonal_dash\",\"`\":\"left_diagonal_dash\",v:\"horizontal_wave\",\">\":\"vertical_wave\",\"*\":\"criss_cross\"},a.get_pattern=function(e,o,s,r,c,k){return e.resize(c,c),e.prepare(),function(e,o,s,r,c,k){var _;const T=c,v=T/2,h=v/2,d=i.color2css(s,r);switch(e.strokeStyle=d,e.fillStyle=d,e.lineCap=\"square\",e.lineWidth=k,null!==(_=a.hatch_aliases[o])&&void 0!==_?_:o){case\"blank\":break;case\"dot\":e.arc(v,v,v/2,0,2*Math.PI,!0),e.fill();break;case\"ring\":e.arc(v,v,v/2,0,2*Math.PI,!0),e.stroke();break;case\"horizontal_line\":l(e,T,v);break;case\"vertical_line\":n(e,T,v);break;case\"cross\":l(e,T,v),n(e,T,v);break;case\"horizontal_dash\":l(e,v,v);break;case\"vertical_dash\":n(e,v,v);break;case\"spiral\":{const o=T/30;e.moveTo(v,v);for(let a=0;a<360;a++){const s=.1*a,r=v+o*s*Math.cos(s),i=v+o*s*Math.sin(s);e.lineTo(r,i)}e.stroke();break}case\"right_diagonal_line\":e.moveTo(.5-h,T),e.lineTo(h+.5,0),e.stroke(),e.moveTo(h+.5,T),e.lineTo(3*h+.5,0),e.stroke(),e.moveTo(3*h+.5,T),e.lineTo(5*h+.5,0),e.stroke(),e.stroke();break;case\"left_diagonal_line\":e.moveTo(h+.5,T),e.lineTo(.5-h,0),e.stroke(),e.moveTo(3*h+.5,T),e.lineTo(h+.5,0),e.stroke(),e.moveTo(5*h+.5,T),e.lineTo(3*h+.5,0),e.stroke(),e.stroke();break;case\"diagonal_cross\":t(e,T);break;case\"right_diagonal_dash\":e.moveTo(h+.5,3*h+.5),e.lineTo(3*h+.5,h+.5),e.stroke();break;case\"left_diagonal_dash\":e.moveTo(h+.5,h+.5),e.lineTo(3*h+.5,3*h+.5),e.stroke();break;case\"horizontal_wave\":e.moveTo(0,h),e.lineTo(v,3*h),e.lineTo(T,h),e.stroke();break;case\"vertical_wave\":e.moveTo(h,0),e.lineTo(3*h,v),e.lineTo(h,T),e.stroke();break;case\"criss_cross\":t(e,T),l(e,T,v),n(e,T,v)}}(e.ctx,o,s,r,c,k),e.canvas}},\n function _(e,t,s,n,c){n();const a=e(14),i=e(8),r=e(13),l=e(19);class o extends a.HasProps{constructor(e){super(e)}get is_syncable(){return this.syncable}static init_Model(){this.define((({Any:e,Unknown:t,Boolean:s,String:n,Array:c,Dict:a,Nullable:i})=>({tags:[c(t),[]],name:[i(n),null],js_property_callbacks:[a(c(e)),{}],js_event_callbacks:[a(c(e)),{}],subscribed_events:[c(n),[]],syncable:[s,!0]})))}initialize(){super.initialize(),this._js_callbacks=new Map}connect_signals(){super.connect_signals(),this._update_property_callbacks(),this.connect(this.properties.js_property_callbacks.change,(()=>this._update_property_callbacks())),this.connect(this.properties.js_event_callbacks.change,(()=>this._update_event_callbacks())),this.connect(this.properties.subscribed_events.change,(()=>this._update_event_callbacks()))}_process_event(e){var t;for(const s of null!==(t=this.js_event_callbacks[e.event_name])&&void 0!==t?t:[])s.execute(e);null!=this.document&&this.subscribed_events.some((t=>t==e.event_name))&&this.document.event_manager.send_event(e)}trigger_event(e){null!=this.document&&(e.origin=this,this.document.event_manager.trigger(e))}_update_event_callbacks(){null!=this.document?this.document.event_manager.subscribed_models.add(this):l.logger.warn(\"WARNING: Document not defined for updating event callbacks\")}_update_property_callbacks(){const e=e=>{const[t,s=null]=e.split(\":\");return null!=s?this.properties[s][t]:this[t]};for(const[t,s]of this._js_callbacks){const n=e(t);for(const e of s)this.disconnect(n,e)}this._js_callbacks.clear();for(const[t,s]of r.entries(this.js_property_callbacks)){const n=s.map((e=>()=>e.execute(this)));this._js_callbacks.set(t,n);const c=e(t);for(const e of n)this.connect(c,e)}}_doc_attached(){r.isEmpty(this.js_event_callbacks)&&0==this.subscribed_events.length||this._update_event_callbacks()}_doc_detached(){this.document.event_manager.subscribed_models.delete(this)}select(e){if(i.isString(e))return[...this.references()].filter((t=>t instanceof o&&t.name===e));if(e.prototype instanceof a.HasProps)return[...this.references()].filter((t=>t instanceof e));throw new Error(\"invalid selector\")}select_one(e){const t=this.select(e);switch(t.length){case 0:return null;case 1:return t[0];default:throw new Error(\"found more than one object matching given selector\")}}}s.Model=o,o.__name__=\"Model\",o.init_Model()},\n function _(s,e,_,t,a){t();class r{constructor(s,e){this.x_scale=s,this.y_scale=e,this.x_range=this.x_scale.source_range,this.y_range=this.y_scale.source_range,this.ranges=[this.x_range,this.y_range],this.scales=[this.x_scale,this.y_scale]}map_to_screen(s,e){return[this.x_scale.v_compute(s),this.y_scale.v_compute(e)]}map_from_screen(s,e){return[this.x_scale.v_invert(s),this.y_scale.v_invert(e)]}}_.CoordinateTransform=r,r.__name__=\"CoordinateTransform\"},\n function _(t,e,s,a,i){a();const n=t(1),_=t(56),r=t(133),o=t(48),l=t(20),d=t(24),h=t(122),c=n.__importStar(t(18)),u=t(10);class v extends _.DataAnnotationView{async lazy_initialize(){await super.lazy_initialize();const{start:t,end:e}=this.model;null!=t&&(this.start=await h.build_view(t,{parent:this})),null!=e&&(this.end=await h.build_view(e,{parent:this}))}set_data(t){var e,s;super.set_data(t),null===(e=this.start)||void 0===e||e.set_data(t),null===(s=this.end)||void 0===s||s.set_data(t)}remove(){var t,e;null===(t=this.start)||void 0===t||t.remove(),null===(e=this.end)||void 0===e||e.remove(),super.remove()}map_data(){const{frame:t}=this.plot_view;\"data\"==this.model.start_units?(this._sx_start=this.coordinates.x_scale.v_compute(this._x_start),this._sy_start=this.coordinates.y_scale.v_compute(this._y_start)):(this._sx_start=t.bbox.xview.v_compute(this._x_start),this._sy_start=t.bbox.yview.v_compute(this._y_start)),\"data\"==this.model.end_units?(this._sx_end=this.coordinates.x_scale.v_compute(this._x_end),this._sy_end=this.coordinates.y_scale.v_compute(this._y_end)):(this._sx_end=t.bbox.xview.v_compute(this._x_end),this._sy_end=t.bbox.yview.v_compute(this._y_end));const{_sx_start:e,_sy_start:s,_sx_end:a,_sy_end:i}=this,n=e.length,_=this._angles=new d.ScreenArray(n);for(let t=0;t<n;t++)_[t]=Math.PI/2+u.atan2([e[t],s[t]],[a[t],i[t]])}paint(t){const{start:e,end:s}=this,{_sx_start:a,_sy_start:i,_sx_end:n,_sy_end:_,_angles:r}=this,{x:o,y:l,width:d,height:h}=this.plot_view.frame.bbox;for(let c=0,u=a.length;c<u;c++)null!=s&&(t.save(),t.translate(n[c],_[c]),t.rotate(r[c]),s.render(t,c),t.restore()),null!=e&&(t.save(),t.translate(a[c],i[c]),t.rotate(r[c]+Math.PI),e.render(t,c),t.restore()),this.visuals.line.doit&&(t.save(),null==e&&null==s||(t.beginPath(),t.rect(o,l,d,h),null!=s&&(t.save(),t.translate(n[c],_[c]),t.rotate(r[c]),s.clip(t,c),t.restore()),null!=e&&(t.save(),t.translate(a[c],i[c]),t.rotate(r[c]+Math.PI),e.clip(t,c),t.restore()),t.closePath(),t.clip()),this.visuals.line.set_vectorize(t,c),t.beginPath(),t.moveTo(a[c],i[c]),t.lineTo(n[c],_[c]),t.stroke(),t.restore())}}s.ArrowView=v,v.__name__=\"ArrowView\";class p extends _.DataAnnotation{constructor(t){super(t)}static init_Arrow(){this.prototype.default_view=v,this.mixins(o.LineVector),this.define((({Ref:t,Nullable:e})=>({x_start:[c.XCoordinateSpec,{field:\"x_start\"}],y_start:[c.YCoordinateSpec,{field:\"y_start\"}],start_units:[l.SpatialUnits,\"data\"],start:[e(t(r.ArrowHead)),null],x_end:[c.XCoordinateSpec,{field:\"x_end\"}],y_end:[c.YCoordinateSpec,{field:\"y_end\"}],end_units:[l.SpatialUnits,\"data\"],end:[e(t(r.ArrowHead)),()=>new r.OpenHead]})))}}s.Arrow=p,p.__name__=\"Arrow\",p.init_Arrow()},\n function _(t,n,s,a,e){a();const i=t(1),o=t(40),c=t(57),_=t(130),r=t(65),l=i.__importStar(t(18));class h extends o.AnnotationView{constructor(){super(...arguments),this._initial_set_data=!1}connect_signals(){super.connect_signals();const t=()=>{this.set_data(this.model.source),this.request_render()};this.connect(this.model.change,t),this.connect(this.model.source.streaming,t),this.connect(this.model.source.patching,t),this.connect(this.model.source.change,t)}set_data(t){const n=this;for(const s of this.model)if(s instanceof l.VectorSpec||s instanceof l.ScalarSpec)if(s instanceof l.BaseCoordinateSpec){const a=s.array(t);n[`_${s.attr}`]=a}else{const a=s.uniform(t);n[`${s.attr}`]=a}this.plot_model.use_map&&(null!=n._x&&r.inplace.project_xy(n._x,n._y),null!=n._xs&&r.inplace.project_xsys(n._xs,n._ys));for(const t of this.visuals)t.update()}_render(){this._initial_set_data||(this.set_data(this.model.source),this._initial_set_data=!0),this.map_data(),this.paint(this.layer.ctx)}}s.DataAnnotationView=h,h.__name__=\"DataAnnotationView\";class u extends o.Annotation{constructor(t){super(t)}static init_DataAnnotation(){this.define((({Ref:t})=>({source:[t(c.ColumnarDataSource),()=>new _.ColumnDataSource]})))}}s.DataAnnotation=u,u.__name__=\"DataAnnotation\",u.init_DataAnnotation()},\n function _(t,e,n,a,i){a();const s=t(58),r=t(15),l=t(19),o=t(60),c=t(8),u=t(9),h=t(13),g=t(59),d=t(129),_=t(29);class m extends s.DataSource{constructor(t){super(t)}get_array(t){let e=this.data[t];return null==e?this.data[t]=e=[]:c.isArray(e)||(this.data[t]=e=Array.from(e)),e}static init_ColumnarDataSource(){this.define((({Ref:t})=>({selection_policy:[t(d.SelectionPolicy),()=>new d.UnionRenderers]}))),this.internal((({AnyRef:t})=>({selection_manager:[t(),t=>new o.SelectionManager({source:t})],inspected:[t(),()=>new g.Selection]})))}initialize(){super.initialize(),this._select=new r.Signal0(this,\"select\"),this.inspect=new r.Signal(this,\"inspect\"),this.streaming=new r.Signal0(this,\"streaming\"),this.patching=new r.Signal(this,\"patching\")}get_column(t){const e=this.data[t];return null!=e?e:null}columns(){return h.keys(this.data)}get_length(t=!0){const e=u.uniq(h.values(this.data).map((t=>_.is_NDArray(t)?t.shape[0]:t.length)));switch(e.length){case 0:return null;case 1:return e[0];default:{const n=\"data source has columns of inconsistent lengths\";if(t)return l.logger.warn(n),e.sort()[0];throw new Error(n)}}}get length(){var t;return null!==(t=this.get_length())&&void 0!==t?t:0}clear(){const t={};for(const e of this.columns())t[e]=new this.data[e].constructor(0);this.data=t}}n.ColumnarDataSource=m,m.__name__=\"ColumnarDataSource\",m.init_ColumnarDataSource()},\n function _(e,t,c,n,a){n();const o=e(53),i=e(59);class s extends o.Model{constructor(e){super(e)}static init_DataSource(){this.define((({Ref:e})=>({selected:[e(i.Selection),()=>new i.Selection]})))}}c.DataSource=s,s.__name__=\"DataSource\",s.init_DataSource()},\n function _(i,e,s,t,n){t();const l=i(53),c=i(9),h=i(13);class d extends l.Model{constructor(i){super(i)}get_view(){return this.view}static init_Selection(){this.define((({Int:i,Array:e,Dict:s})=>({indices:[e(i),[]],line_indices:[e(i),[]],multiline_indices:[s(e(i)),{}]}))),this.internal((({Int:i,Array:e,AnyRef:s,Struct:t,Nullable:n})=>({selected_glyphs:[e(s()),[]],view:[n(s()),null],image_indices:[e(t({index:i,dim1:i,dim2:i,flat_index:i})),[]]})))}get selected_glyph(){return this.selected_glyphs.length>0?this.selected_glyphs[0]:null}add_to_selected_glyphs(i){this.selected_glyphs.push(i)}update(i,e=!0,s=\"replace\"){switch(s){case\"replace\":this.indices=i.indices,this.line_indices=i.line_indices,this.selected_glyphs=i.selected_glyphs,this.view=i.view,this.multiline_indices=i.multiline_indices,this.image_indices=i.image_indices;break;case\"append\":this.update_through_union(i);break;case\"intersect\":this.update_through_intersection(i);break;case\"subtract\":this.update_through_subtraction(i)}}clear(){this.indices=[],this.line_indices=[],this.multiline_indices={},this.view=null,this.selected_glyphs=[]}is_empty(){return 0==this.indices.length&&0==this.line_indices.length&&0==this.image_indices.length}update_through_union(i){this.indices=c.union(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}update_through_intersection(i){this.indices=c.intersection(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}update_through_subtraction(i){this.indices=c.difference(this.indices,i.indices),this.selected_glyphs=c.union(i.selected_glyphs,this.selected_glyphs),this.line_indices=c.union(i.line_indices,this.line_indices),this.view=i.view,this.multiline_indices=h.merge(i.multiline_indices,this.multiline_indices)}}s.Selection=d,d.__name__=\"Selection\",d.init_Selection()},\n function _(e,t,s,n,i){n();const o=e(14),c=e(59),r=e(61),l=e(123);class p extends o.HasProps{constructor(e){super(e),this.inspectors=new Map}static init_SelectionManager(){this.internal((({AnyRef:e})=>({source:[e()]})))}select(e,t,s,n=\"replace\"){const i=[],o=[];for(const t of e)t instanceof r.GlyphRendererView?i.push(t):t instanceof l.GraphRendererView&&o.push(t);let c=!1;for(const e of o){const i=e.model.selection_policy.hit_test(t,e);c=c||e.model.selection_policy.do_selection(i,e.model,s,n)}if(i.length>0){const e=this.source.selection_policy.hit_test(t,i);c=c||this.source.selection_policy.do_selection(e,this.source,s,n)}return c}inspect(e,t){let s=!1;if(e instanceof r.GlyphRendererView){const n=e.hit_test(t);if(null!=n){s=!n.is_empty();const i=this.get_or_create_inspector(e.model);i.update(n,!0,\"replace\"),this.source.setv({inspected:i},{silent:!0}),this.source.inspect.emit([e.model,{geometry:t}])}}else if(e instanceof l.GraphRendererView){const n=e.model.inspection_policy.hit_test(t,e);s=s||e.model.inspection_policy.do_inspection(n,t,e,!1,\"replace\")}return s}clear(e){this.source.selected.clear(),null!=e&&this.get_or_create_inspector(e.model).clear()}get_or_create_inspector(e){let t=this.inspectors.get(e);return null==t&&(t=new c.Selection,this.inspectors.set(e,t)),t}}s.SelectionManager=p,p.__name__=\"SelectionManager\",p.init_SelectionManager()},\n function _(e,t,i,s,l){s();const h=e(62),n=e(63),o=e(116),a=e(117),c=e(119),d=e(98),_=e(57),r=e(120),p=e(24),g=e(12),u=e(9),y=e(13),m=e(122),v=e(104),f={fill:{},line:{}},w={fill:{fill_alpha:.3,fill_color:\"grey\"},line:{line_alpha:.3,line_color:\"grey\"}},b={fill:{fill_alpha:.2},line:{}};class V extends h.DataRendererView{get glyph_view(){return this.glyph}async lazy_initialize(){var e,t;await super.lazy_initialize();const i=this.model.glyph;this.glyph=await this.build_glyph_view(i);const s=\"fill\"in this.glyph.visuals,l=\"line\"in this.glyph.visuals,h=Object.assign({},i.attributes);function n(e){const t=y.clone(h);return s&&y.extend(t,e.fill),l&&y.extend(t,e.line),new i.constructor(t)}delete h.id;let{selection_glyph:o}=this.model;null==o?o=n({fill:{},line:{}}):\"auto\"==o&&(o=n(f)),this.selection_glyph=await this.build_glyph_view(o);let{nonselection_glyph:a}=this.model;null==a?a=n({fill:{},line:{}}):\"auto\"==a&&(a=n(b)),this.nonselection_glyph=await this.build_glyph_view(a);const{hover_glyph:c}=this.model;null!=c&&(this.hover_glyph=await this.build_glyph_view(c));const{muted_glyph:d}=this.model;null!=d&&(this.muted_glyph=await this.build_glyph_view(d));const _=n(w);this.decimated_glyph=await this.build_glyph_view(_),this.selection_glyph.set_base(this.glyph),this.nonselection_glyph.set_base(this.glyph),null===(e=this.hover_glyph)||void 0===e||e.set_base(this.glyph),null===(t=this.muted_glyph)||void 0===t||t.set_base(this.glyph),this.decimated_glyph.set_base(this.glyph),this.set_data()}async build_glyph_view(e){return m.build_view(e,{parent:this})}remove(){var e,t;this.glyph.remove(),this.selection_glyph.remove(),this.nonselection_glyph.remove(),null===(e=this.hover_glyph)||void 0===e||e.remove(),null===(t=this.muted_glyph)||void 0===t||t.remove(),this.decimated_glyph.remove(),super.remove()}connect_signals(){super.connect_signals();const e=()=>this.request_render(),t=()=>this.update_data();this.connect(this.model.change,e),this.connect(this.glyph.model.change,t),this.connect(this.selection_glyph.model.change,t),this.connect(this.nonselection_glyph.model.change,t),null!=this.hover_glyph&&this.connect(this.hover_glyph.model.change,t),null!=this.muted_glyph&&this.connect(this.muted_glyph.model.change,t),this.connect(this.decimated_glyph.model.change,t),this.connect(this.model.data_source.change,t),this.connect(this.model.data_source.streaming,t),this.connect(this.model.data_source.patching,(e=>this.update_data(e))),this.connect(this.model.data_source.selected.change,e),this.connect(this.model.data_source._select,e),null!=this.hover_glyph&&this.connect(this.model.data_source.inspect,e),this.connect(this.model.properties.view.change,t),this.connect(this.model.view.properties.indices.change,t),this.connect(this.model.view.properties.masked.change,(()=>this.set_visuals())),this.connect(this.model.properties.visible.change,(()=>this.plot_view.invalidate_dataranges=!0));const{x_ranges:i,y_ranges:s}=this.plot_view.frame;for(const[,e]of i)e instanceof v.FactorRange&&this.connect(e.change,t);for(const[,e]of s)e instanceof v.FactorRange&&this.connect(e.change,t);const{transformchange:l,exprchange:h}=this.model.glyph;this.connect(l,t),this.connect(h,t)}_update_masked_indices(){const e=this.glyph.mask_data();return this.model.view.masked=e,e}update_data(e){this.set_data(e),this.request_render()}set_data(e){const t=this.model.data_source;this.all_indices=this.model.view.indices;const{all_indices:i}=this;this.glyph.set_data(t,i,e),this.set_visuals(),this._update_masked_indices();const{lod_factor:s}=this.plot_model,l=this.all_indices.count;this.decimated=new p.Indices(l);for(let e=0;e<l;e+=s)this.decimated.set(e);this.plot_view.invalidate_dataranges=!0}set_visuals(){var e,t,i,s;const l=this.model.data_source,{all_indices:h}=this;this.glyph.set_visuals(l,h),this.decimated_glyph.set_visuals(l,h),null===(e=this.selection_glyph)||void 0===e||e.set_visuals(l,h),null===(t=this.nonselection_glyph)||void 0===t||t.set_visuals(l,h),null===(i=this.hover_glyph)||void 0===i||i.set_visuals(l,h),null===(s=this.muted_glyph)||void 0===s||s.set_visuals(l,h)}get has_webgl(){return this.glyph.has_webgl}_render(){const e=this.has_webgl;this.glyph.map_data();const t=[...this.all_indices];let i=[...this._update_masked_indices()];const{ctx:s}=this.layer;s.save();const{selected:l}=this.model.data_source;let h;h=!l||l.is_empty()?[]:this.glyph instanceof n.LineView&&l.selected_glyph===this.glyph.model?this.model.view.convert_indices_from_subset(i):l.indices;const{inspected:d}=this.model.data_source,_=new Set((()=>!d||d.is_empty()?[]:d.selected_glyph?this.model.view.convert_indices_from_subset(i):d.indices.length>0?d.indices:Object.keys(d.multiline_indices).map((e=>parseInt(e))))()),r=g.filter(i,(e=>_.has(t[e]))),{lod_threshold:p}=this.plot_model;let y,m,v;if(null!=this.model.document&&this.model.document.interactive_duration()>0&&!e&&null!=p&&t.length>p?(i=[...this.decimated],y=this.decimated_glyph,m=this.decimated_glyph,v=this.selection_glyph):(y=this.model.muted&&null!=this.muted_glyph?this.muted_glyph:this.glyph,m=this.nonselection_glyph,v=this.selection_glyph),null!=this.hover_glyph&&r.length&&(i=u.difference(i,r)),h.length){const e={};for(const t of h)e[t]=!0;const l=new Array,o=new Array;if(this.glyph instanceof n.LineView)for(const i of t)null!=e[i]?l.push(i):o.push(i);else for(const s of i)null!=e[t[s]]?l.push(s):o.push(s);m.render(s,o),v.render(s,l),null!=this.hover_glyph&&(this.glyph instanceof n.LineView?this.hover_glyph.render(s,this.model.view.convert_indices_from_subset(r)):this.hover_glyph.render(s,r))}else if(this.glyph instanceof n.LineView)this.hover_glyph&&r.length?this.hover_glyph.render(s,this.model.view.convert_indices_from_subset(r)):y.render(s,t);else if(this.glyph instanceof o.PatchView||this.glyph instanceof a.HAreaView||this.glyph instanceof c.VAreaView)if(0==d.selected_glyphs.length||null==this.hover_glyph)y.render(s,t);else for(const e of d.selected_glyphs)e==this.glyph.model&&this.hover_glyph.render(s,t);else y.render(s,i),this.hover_glyph&&r.length&&this.hover_glyph.render(s,r);s.restore()}draw_legend(e,t,i,s,l,h,n,o){0!=this.glyph.data_size&&(null==o&&(o=this.model.get_reference_point(h,n)),this.glyph.draw_legend_for_index(e,{x0:t,x1:i,y0:s,y1:l},o))}hit_test(e){if(!this.model.visible)return null;const t=this.glyph.hit_test(e);return null==t?null:this.model.view.convert_selection_from_subset(t)}}i.GlyphRendererView=V,V.__name__=\"GlyphRendererView\";class G extends h.DataRenderer{constructor(e){super(e)}static init_GlyphRenderer(){this.prototype.default_view=V,this.define((({Boolean:e,Auto:t,Or:i,Ref:s,Null:l,Nullable:h})=>({data_source:[s(_.ColumnarDataSource)],view:[s(r.CDSView),e=>new r.CDSView({source:e.data_source})],glyph:[s(d.Glyph)],hover_glyph:[h(s(d.Glyph)),null],nonselection_glyph:[i(s(d.Glyph),t,l),\"auto\"],selection_glyph:[i(s(d.Glyph),t,l),\"auto\"],muted_glyph:[h(s(d.Glyph)),null],muted:[e,!1]})))}initialize(){super.initialize(),this.view.source!=this.data_source&&(this.view.source=this.data_source,this.view.compute_indices())}get_reference_point(e,t){if(null!=e){const i=this.data_source.get_column(e);if(null!=i)for(const[e,s]of Object.entries(this.view.indices_map))if(i[parseInt(e)]==t)return s}return 0}get_selection_manager(){return this.data_source.selection_manager}}i.GlyphRenderer=G,G.__name__=\"GlyphRenderer\",G.init_GlyphRenderer()},\n function _(e,r,t,a,n){a();const s=e(41);class i extends s.RendererView{get xscale(){return this.coordinates.x_scale}get yscale(){return this.coordinates.y_scale}}t.DataRendererView=i,i.__name__=\"DataRendererView\";class _ extends s.Renderer{constructor(e){super(e)}static init_DataRenderer(){this.override({level:\"glyph\"})}get selection_manager(){return this.get_selection_manager()}}t.DataRenderer=_,_.__name__=\"DataRenderer\",_.init_DataRenderer()},\n function _(e,i,t,s,n){s();const l=e(1),_=e(64),r=e(106),h=e(108),o=l.__importStar(e(48)),a=l.__importStar(e(107)),c=e(59);class d extends _.XYGlyphView{initialize(){super.initialize();const{webgl:e}=this.renderer.plot_view.canvas_view;null!=e&&(this.glglyph=new h.LineGL(e.gl,this))}_render(e,i,t){const{sx:s,sy:n}=null!=t?t:this;let l=!0;e.beginPath();for(const t of i){const i=s[t],_=n[t];isFinite(i+_)?l?(e.moveTo(i,_),l=!1):e.lineTo(i,_):l=!0}this.visuals.line.set_value(e),e.stroke()}_hit_point(e){const i=new c.Selection,t={x:e.sx,y:e.sy};let s=9999;const n=Math.max(2,this.line_width.value/2);for(let e=0,l=this.sx.length-1;e<l;e++){const l={x:this.sx[e],y:this.sy[e]},_={x:this.sx[e+1],y:this.sy[e+1]},r=a.dist_to_segment(t,l,_);r<n&&r<s&&(s=r,i.add_to_selected_glyphs(this.model),i.view=this,i.line_indices=[e])}return i}_hit_span(e){const{sx:i,sy:t}=e,s=new c.Selection;let n,l;\"v\"==e.direction?(n=this.renderer.yscale.invert(t),l=this._y):(n=this.renderer.xscale.invert(i),l=this._x);for(let e=0,i=l.length-1;e<i;e++)(l[e]<=n&&n<=l[e+1]||l[e+1]<=n&&n<=l[e])&&(s.add_to_selected_glyphs(this.model),s.view=this,s.line_indices.push(e));return s}get_interpolation_hit(e,i){const[t,s,n,l]=[this._x[e],this._y[e],this._x[e+1],this._y[e+1]];return r.line_interpolation(this.renderer,i,t,s,n,l)}draw_legend_for_index(e,i,t){r.generic_line_scalar_legend(this.visuals,e,i)}}t.LineView=d,d.__name__=\"LineView\";class x extends _.XYGlyph{constructor(e){super(e)}static init_Line(){this.prototype.default_view=d,this.mixins(o.LineScalar)}}t.Line=x,x.__name__=\"Line\",x.init_Line()},\n function _(t,e,i,s,_){s();const n=t(1),a=t(65),p=n.__importStar(t(18)),y=t(98);class c extends y.GlyphView{_project_data(){a.inplace.project_xy(this._x,this._y)}_index_data(t){const{_x:e,_y:i,data_size:s}=this;for(let _=0;_<s;_++){const s=e[_],n=i[_];isNaN(s+n)||!isFinite(s+n)?t.add_empty():t.add(s,n,s,n)}}scenterxy(t){return[this.sx[t],this.sy[t]]}}i.XYGlyphView=c,c.__name__=\"XYGlyphView\";class d extends y.Glyph{constructor(t){super(t)}static init_XYGlyph(){this.define((({})=>({x:[p.XCoordinateSpec,{field:\"x\"}],y:[p.YCoordinateSpec,{field:\"y\"}]})))}}i.XYGlyph=d,d.__name__=\"XYGlyph\",d.init_XYGlyph()},\n function _(n,t,e,o,r){o();const c=n(1),l=c.__importDefault(n(66)),i=c.__importDefault(n(67)),u=n(24),a=new i.default(\"GOOGLE\"),s=new i.default(\"WGS84\"),f=l.default(s,a);e.wgs84_mercator={compute:(n,t)=>isFinite(n)&&isFinite(t)?f.forward([n,t]):[NaN,NaN],invert:(n,t)=>isFinite(n)&&isFinite(t)?f.inverse([n,t]):[NaN,NaN]};const _={lon:[-20026376.39,20026376.39],lat:[-20048966.1,20048966.1]},p={lon:[-180,180],lat:[-85.06,85.06]},{min:g,max:h}=Math;function m(n,t){const o=g(n.length,t.length),r=u.infer_type(n,t),c=new r(o),l=new r(o);return e.inplace.project_xy(n,t,c,l),[c,l]}e.clip_mercator=function(n,t,e){const[o,r]=_[e];return[h(n,o),g(t,r)]},e.in_bounds=function(n,t){const[e,o]=p[t];return e<n&&n<o},function(n){function t(n,t,o,r){const c=g(n.length,t.length);o=null!=o?o:n,r=null!=r?r:t;for(let l=0;l<c;l++){const c=n[l],i=t[l],[u,a]=e.wgs84_mercator.compute(c,i);o[l]=u,r[l]=a}}n.project_xy=t,n.project_xsys=function(n,e,o,r){const c=g(n.length,e.length);o=null!=o?o:n,r=null!=r?r:e;for(let l=0;l<c;l++)t(n[l],e[l],o[l],r[l])}}(e.inplace||(e.inplace={})),e.project_xy=m,e.project_xsys=function(n,t){const e=g(n.length,t.length),o=new Array(e),r=new Array(e);for(let c=0;c<e;c++){const[e,l]=m(n[c],t[c]);o[c]=e,r[c]=l}return[o,r]}},\n function _(e,n,t,r,o){r();const a=e(1),i=a.__importDefault(e(67)),c=a.__importDefault(e(92));var u=i.default(\"WGS84\");function f(e,n,t){var r,o,a;return Array.isArray(t)?(r=c.default(e,n,t)||{x:NaN,y:NaN},t.length>2?void 0!==e.name&&\"geocent\"===e.name||void 0!==n.name&&\"geocent\"===n.name?\"number\"==typeof r.z?[r.x,r.y,r.z].concat(t.splice(3)):[r.x,r.y,t[2]].concat(t.splice(3)):[r.x,r.y].concat(t.splice(2)):[r.x,r.y]):(o=c.default(e,n,t),2===(a=Object.keys(t)).length||a.forEach((function(r){if(void 0!==e.name&&\"geocent\"===e.name||void 0!==n.name&&\"geocent\"===n.name){if(\"x\"===r||\"y\"===r||\"z\"===r)return}else if(\"x\"===r||\"y\"===r)return;o[r]=t[r]})),o)}function l(e){return e instanceof i.default?e:e.oProj?e.oProj:i.default(e)}t.default=function(e,n,t){e=l(e);var r,o=!1;return void 0===n?(n=e,e=u,o=!0):(void 0!==n.x||Array.isArray(n))&&(t=n,n=e,e=u,o=!0),n=l(n),t?f(e,n,t):(r={forward:function(t){return f(e,n,t)},inverse:function(t){return f(n,e,t)}},o&&(r.oProj=n),r)}},\n function _(t,e,a,s,i){s();const u=t(1),l=u.__importDefault(t(68)),o=u.__importDefault(t(79)),r=u.__importDefault(t(80)),f=t(88),p=u.__importDefault(t(90)),d=u.__importDefault(t(91)),m=u.__importDefault(t(75));function n(t,e){if(!(this instanceof n))return new n(t);e=e||function(t){if(t)throw t};var a=l.default(t);if(\"object\"==typeof a){var s=n.projections.get(a.projName);if(s){if(a.datumCode&&\"none\"!==a.datumCode){var i=m.default(p.default,a.datumCode);i&&(a.datum_params=i.towgs84?i.towgs84.split(\",\"):null,a.ellps=i.ellipse,a.datumName=i.datumName?i.datumName:a.datumCode)}a.k0=a.k0||1,a.axis=a.axis||\"enu\",a.ellps=a.ellps||\"wgs84\";var u=f.sphere(a.a,a.b,a.rf,a.ellps,a.sphere),r=f.eccentricity(u.a,u.b,u.rf,a.R_A),h=a.datum||d.default(a.datumCode,a.datum_params,u.a,u.b,r.es,r.ep2);o.default(this,a),o.default(this,s),this.a=u.a,this.b=u.b,this.rf=u.rf,this.sphere=u.sphere,this.es=r.es,this.e=r.e,this.ep2=r.ep2,this.datum=h,this.init(),e(null,this)}else e(t)}else e(t)}n.projections=r.default,n.projections.start(),a.default=n},\n function _(t,r,n,u,e){u();const f=t(1),i=f.__importDefault(t(69)),a=f.__importDefault(t(76)),o=f.__importDefault(t(71)),l=f.__importDefault(t(75));var C=[\"PROJECTEDCRS\",\"PROJCRS\",\"GEOGCS\",\"GEOCCS\",\"PROJCS\",\"LOCAL_CS\",\"GEODCRS\",\"GEODETICCRS\",\"GEODETICDATUM\",\"ENGCRS\",\"ENGINEERINGCRS\"];var d=[\"3857\",\"900913\",\"3785\",\"102113\"];n.default=function(t){if(!function(t){return\"string\"==typeof t}(t))return t;if(function(t){return t in i.default}(t))return i.default[t];if(function(t){return C.some((function(r){return t.indexOf(r)>-1}))}(t)){var r=a.default(t);if(function(t){var r=l.default(t,\"authority\");if(r){var n=l.default(r,\"epsg\");return n&&d.indexOf(n)>-1}}(r))return i.default[\"EPSG:3857\"];var n=function(t){var r=l.default(t,\"extension\");if(r)return l.default(r,\"proj4\")}(r);return n?o.default(n):r}return function(t){return\"+\"===t[0]}(t)?o.default(t):void 0}},\n function _(t,r,i,e,n){e();const f=t(1),a=f.__importDefault(t(70)),l=f.__importDefault(t(71)),u=f.__importDefault(t(76));function o(t){var r=this;if(2===arguments.length){var i=arguments[1];\"string\"==typeof i?\"+\"===i.charAt(0)?o[t]=l.default(arguments[1]):o[t]=u.default(arguments[1]):o[t]=i}else if(1===arguments.length){if(Array.isArray(t))return t.map((function(t){Array.isArray(t)?o.apply(r,t):o(t)}));if(\"string\"==typeof t){if(t in o)return o[t]}else\"EPSG\"in t?o[\"EPSG:\"+t.EPSG]=t:\"ESRI\"in t?o[\"ESRI:\"+t.ESRI]=t:\"IAU2000\"in t?o[\"IAU2000:\"+t.IAU2000]=t:console.log(t);return}}a.default(o),i.default=o},\n function _(t,l,G,S,e){S(),G.default=function(t){t(\"EPSG:4326\",\"+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees\"),t(\"EPSG:4269\",\"+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees\"),t(\"EPSG:3857\",\"+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs\"),t.WGS84=t[\"EPSG:4326\"],t[\"EPSG:3785\"]=t[\"EPSG:3857\"],t.GOOGLE=t[\"EPSG:3857\"],t[\"EPSG:900913\"]=t[\"EPSG:3857\"],t[\"EPSG:102113\"]=t[\"EPSG:3857\"]}},\n function _(t,n,o,a,u){a();const e=t(1),r=t(72),i=e.__importDefault(t(73)),f=e.__importDefault(t(74)),l=e.__importDefault(t(75));o.default=function(t){var n,o,a,u={},e=t.split(\"+\").map((function(t){return t.trim()})).filter((function(t){return t})).reduce((function(t,n){var o=n.split(\"=\");return o.push(!0),t[o[0].toLowerCase()]=o[1],t}),{}),c={proj:\"projName\",datum:\"datumCode\",rf:function(t){u.rf=parseFloat(t)},lat_0:function(t){u.lat0=t*r.D2R},lat_1:function(t){u.lat1=t*r.D2R},lat_2:function(t){u.lat2=t*r.D2R},lat_ts:function(t){u.lat_ts=t*r.D2R},lon_0:function(t){u.long0=t*r.D2R},lon_1:function(t){u.long1=t*r.D2R},lon_2:function(t){u.long2=t*r.D2R},alpha:function(t){u.alpha=parseFloat(t)*r.D2R},lonc:function(t){u.longc=t*r.D2R},x_0:function(t){u.x0=parseFloat(t)},y_0:function(t){u.y0=parseFloat(t)},k_0:function(t){u.k0=parseFloat(t)},k:function(t){u.k0=parseFloat(t)},a:function(t){u.a=parseFloat(t)},b:function(t){u.b=parseFloat(t)},r_a:function(){u.R_A=!0},zone:function(t){u.zone=parseInt(t,10)},south:function(){u.utmSouth=!0},towgs84:function(t){u.datum_params=t.split(\",\").map((function(t){return parseFloat(t)}))},to_meter:function(t){u.to_meter=parseFloat(t)},units:function(t){u.units=t;var n=l.default(f.default,t);n&&(u.to_meter=n.to_meter)},from_greenwich:function(t){u.from_greenwich=t*r.D2R},pm:function(t){var n=l.default(i.default,t);u.from_greenwich=(n||parseFloat(t))*r.D2R},nadgrids:function(t){\"@null\"===t?u.datumCode=\"none\":u.nadgrids=t},axis:function(t){var n=\"ewnsud\";3===t.length&&-1!==n.indexOf(t.substr(0,1))&&-1!==n.indexOf(t.substr(1,1))&&-1!==n.indexOf(t.substr(2,1))&&(u.axis=t)}};for(n in e)o=e[n],n in c?\"function\"==typeof(a=c[n])?a(o):u[a]=o:u[n]=o;return\"string\"==typeof u.datumCode&&\"WGS84\"!==u.datumCode&&(u.datumCode=u.datumCode.toLowerCase()),u}},\n function _(P,A,_,D,I){D(),_.PJD_3PARAM=1,_.PJD_7PARAM=2,_.PJD_WGS84=4,_.PJD_NODATUM=5,_.SEC_TO_RAD=484813681109536e-20,_.HALF_PI=Math.PI/2,_.SIXTH=.16666666666666666,_.RA4=.04722222222222222,_.RA6=.022156084656084655,_.EPSLN=1e-10,_.D2R=.017453292519943295,_.R2D=57.29577951308232,_.FORTPI=Math.PI/4,_.TWO_PI=2*Math.PI,_.SPI=3.14159265359},\n function _(o,r,a,e,s){e();var n={};a.default=n,n.greenwich=0,n.lisbon=-9.131906111111,n.paris=2.337229166667,n.bogota=-74.080916666667,n.madrid=-3.687938888889,n.rome=12.452333333333,n.bern=7.439583333333,n.jakarta=106.807719444444,n.ferro=-17.666666666667,n.brussels=4.367975,n.stockholm=18.058277777778,n.athens=23.7163375,n.oslo=10.722916666667},\n function _(t,e,f,o,u){o(),f.default={ft:{to_meter:.3048},\"us-ft\":{to_meter:1200/3937}}},\n function _(e,r,t,a,n){a();var o=/[\\s_\\-\\/\\(\\)]/g;t.default=function(e,r){if(e[r])return e[r];for(var t,a=Object.keys(e),n=r.toLowerCase().replace(o,\"\"),f=-1;++f<a.length;)if((t=a[f]).toLowerCase().replace(o,\"\")===n)return e[t]}},\n function _(e,t,a,o,d){o();const r=e(1);const n=r.__importDefault(e(77)),l=e(78);function i(e){return.017453292519943295*e}a.default=function(e){var t=n.default(e),a=t.shift(),o=t.shift();t.unshift([\"name\",o]),t.unshift([\"type\",a]);var d={};return l.sExpr(t,d),function(e){if(\"GEOGCS\"===e.type?e.projName=\"longlat\":\"LOCAL_CS\"===e.type?(e.projName=\"identity\",e.local=!0):\"object\"==typeof e.PROJECTION?e.projName=Object.keys(e.PROJECTION)[0]:e.projName=e.PROJECTION,e.AXIS){for(var t=\"\",a=0,o=e.AXIS.length;a<o;++a){var d=e.AXIS[a][0].toLowerCase();-1!==d.indexOf(\"north\")?t+=\"n\":-1!==d.indexOf(\"south\")?t+=\"s\":-1!==d.indexOf(\"east\")?t+=\"e\":-1!==d.indexOf(\"west\")&&(t+=\"w\")}2===t.length&&(t+=\"u\"),3===t.length&&(e.axis=t)}e.UNIT&&(e.units=e.UNIT.name.toLowerCase(),\"metre\"===e.units&&(e.units=\"meter\"),e.UNIT.convert&&(\"GEOGCS\"===e.type?e.DATUM&&e.DATUM.SPHEROID&&(e.to_meter=e.UNIT.convert*e.DATUM.SPHEROID.a):e.to_meter=e.UNIT.convert));var r=e.GEOGCS;function n(t){return t*(e.to_meter||1)}\"GEOGCS\"===e.type&&(r=e),r&&(r.DATUM?e.datumCode=r.DATUM.name.toLowerCase():e.datumCode=r.name.toLowerCase(),\"d_\"===e.datumCode.slice(0,2)&&(e.datumCode=e.datumCode.slice(2)),\"new_zealand_geodetic_datum_1949\"!==e.datumCode&&\"new_zealand_1949\"!==e.datumCode||(e.datumCode=\"nzgd49\"),\"wgs_1984\"!==e.datumCode&&\"world_geodetic_system_1984\"!==e.datumCode||(\"Mercator_Auxiliary_Sphere\"===e.PROJECTION&&(e.sphere=!0),e.datumCode=\"wgs84\"),\"_ferro\"===e.datumCode.slice(-6)&&(e.datumCode=e.datumCode.slice(0,-6)),\"_jakarta\"===e.datumCode.slice(-8)&&(e.datumCode=e.datumCode.slice(0,-8)),~e.datumCode.indexOf(\"belge\")&&(e.datumCode=\"rnb72\"),r.DATUM&&r.DATUM.SPHEROID&&(e.ellps=r.DATUM.SPHEROID.name.replace(\"_19\",\"\").replace(/[Cc]larke\\_18/,\"clrk\"),\"international\"===e.ellps.toLowerCase().slice(0,13)&&(e.ellps=\"intl\"),e.a=r.DATUM.SPHEROID.a,e.rf=parseFloat(r.DATUM.SPHEROID.rf,10)),r.DATUM&&r.DATUM.TOWGS84&&(e.datum_params=r.DATUM.TOWGS84),~e.datumCode.indexOf(\"osgb_1936\")&&(e.datumCode=\"osgb36\"),~e.datumCode.indexOf(\"osni_1952\")&&(e.datumCode=\"osni52\"),(~e.datumCode.indexOf(\"tm65\")||~e.datumCode.indexOf(\"geodetic_datum_of_1965\"))&&(e.datumCode=\"ire65\"),\"ch1903+\"===e.datumCode&&(e.datumCode=\"ch1903\"),~e.datumCode.indexOf(\"israel\")&&(e.datumCode=\"isr93\")),e.b&&!isFinite(e.b)&&(e.b=e.a),[[\"standard_parallel_1\",\"Standard_Parallel_1\"],[\"standard_parallel_2\",\"Standard_Parallel_2\"],[\"false_easting\",\"False_Easting\"],[\"false_northing\",\"False_Northing\"],[\"central_meridian\",\"Central_Meridian\"],[\"latitude_of_origin\",\"Latitude_Of_Origin\"],[\"latitude_of_origin\",\"Central_Parallel\"],[\"scale_factor\",\"Scale_Factor\"],[\"k0\",\"scale_factor\"],[\"latitude_of_center\",\"Latitude_Of_Center\"],[\"latitude_of_center\",\"Latitude_of_center\"],[\"lat0\",\"latitude_of_center\",i],[\"longitude_of_center\",\"Longitude_Of_Center\"],[\"longitude_of_center\",\"Longitude_of_center\"],[\"longc\",\"longitude_of_center\",i],[\"x0\",\"false_easting\",n],[\"y0\",\"false_northing\",n],[\"long0\",\"central_meridian\",i],[\"lat0\",\"latitude_of_origin\",i],[\"lat0\",\"standard_parallel_1\",i],[\"lat1\",\"standard_parallel_1\",i],[\"lat2\",\"standard_parallel_2\",i],[\"azimuth\",\"Azimuth\"],[\"alpha\",\"azimuth\",i],[\"srsCode\",\"name\"]].forEach((function(t){return a=e,d=(o=t)[0],r=o[1],void(!(d in a)&&r in a&&(a[d]=a[r],3===o.length&&(a[d]=o[2](a[d]))));var a,o,d,r})),e.long0||!e.longc||\"Albers_Conic_Equal_Area\"!==e.projName&&\"Lambert_Azimuthal_Equal_Area\"!==e.projName||(e.long0=e.longc),e.lat_ts||!e.lat1||\"Stereographic_South_Pole\"!==e.projName&&\"Polar Stereographic (variant B)\"!==e.projName||(e.lat0=i(e.lat1>0?90:-90),e.lat_ts=e.lat1)}(d),d}},\n function _(t,e,r,i,s){i(),r.default=function(t){return new d(t).output()};var h=/\\s/,o=/[A-Za-z]/,n=/[A-Za-z84]/,a=/[,\\]]/,u=/[\\d\\.E\\-\\+]/;function d(t){if(\"string\"!=typeof t)throw new Error(\"not a string\");this.text=t.trim(),this.level=0,this.place=0,this.root=null,this.stack=[],this.currentObject=null,this.state=1}d.prototype.readCharicter=function(){var t=this.text[this.place++];if(4!==this.state)for(;h.test(t);){if(this.place>=this.text.length)return;t=this.text[this.place++]}switch(this.state){case 1:return this.neutral(t);case 2:return this.keyword(t);case 4:return this.quoted(t);case 5:return this.afterquote(t);case 3:return this.number(t);case-1:return}},d.prototype.afterquote=function(t){if('\"'===t)return this.word+='\"',void(this.state=4);if(a.test(t))return this.word=this.word.trim(),void this.afterItem(t);throw new Error(\"havn't handled \\\"\"+t+'\" in afterquote yet, index '+this.place)},d.prototype.afterItem=function(t){return\",\"===t?(null!==this.word&&this.currentObject.push(this.word),this.word=null,void(this.state=1)):\"]\"===t?(this.level--,null!==this.word&&(this.currentObject.push(this.word),this.word=null),this.state=1,this.currentObject=this.stack.pop(),void(this.currentObject||(this.state=-1))):void 0},d.prototype.number=function(t){if(!u.test(t)){if(a.test(t))return this.word=parseFloat(this.word),void this.afterItem(t);throw new Error(\"havn't handled \\\"\"+t+'\" in number yet, index '+this.place)}this.word+=t},d.prototype.quoted=function(t){'\"'!==t?this.word+=t:this.state=5},d.prototype.keyword=function(t){if(n.test(t))this.word+=t;else{if(\"[\"===t){var e=[];return e.push(this.word),this.level++,null===this.root?this.root=e:this.currentObject.push(e),this.stack.push(this.currentObject),this.currentObject=e,void(this.state=1)}if(!a.test(t))throw new Error(\"havn't handled \\\"\"+t+'\" in keyword yet, index '+this.place);this.afterItem(t)}},d.prototype.neutral=function(t){if(o.test(t))return this.word=t,void(this.state=2);if('\"'===t)return this.word=\"\",void(this.state=4);if(u.test(t))return this.word=t,void(this.state=3);if(!a.test(t))throw new Error(\"havn't handled \\\"\"+t+'\" in neutral yet, index '+this.place);this.afterItem(t)},d.prototype.output=function(){for(;this.place<this.text.length;)this.readCharicter();if(-1===this.state)return this.root;throw new Error('unable to parse string \"'+this.text+'\". State is '+this.state)}},\n function _(e,a,r,s,c){function n(e,a,r){Array.isArray(a)&&(r.unshift(a),a=null);var s=a?{}:e,c=r.reduce((function(e,a){return E(a,e),e}),s);a&&(e[a]=c)}function E(e,a){if(Array.isArray(e)){var r=e.shift();if(\"PARAMETER\"===r&&(r=e.shift()),1===e.length)return Array.isArray(e[0])?(a[r]={},void E(e[0],a[r])):void(a[r]=e[0]);if(e.length)if(\"TOWGS84\"!==r){if(\"AXIS\"===r)return r in a||(a[r]=[]),void a[r].push(e);var s;switch(Array.isArray(r)||(a[r]={}),r){case\"UNIT\":case\"PRIMEM\":case\"VERT_DATUM\":return a[r]={name:e[0].toLowerCase(),convert:e[1]},void(3===e.length&&E(e[2],a[r]));case\"SPHEROID\":case\"ELLIPSOID\":return a[r]={name:e[0],a:e[1],rf:e[2]},void(4===e.length&&E(e[3],a[r]));case\"PROJECTEDCRS\":case\"PROJCRS\":case\"GEOGCS\":case\"GEOCCS\":case\"PROJCS\":case\"LOCAL_CS\":case\"GEODCRS\":case\"GEODETICCRS\":case\"GEODETICDATUM\":case\"EDATUM\":case\"ENGINEERINGDATUM\":case\"VERT_CS\":case\"VERTCRS\":case\"VERTICALCRS\":case\"COMPD_CS\":case\"COMPOUNDCRS\":case\"ENGINEERINGCRS\":case\"ENGCRS\":case\"FITTED_CS\":case\"LOCAL_DATUM\":case\"DATUM\":return e[0]=[\"name\",e[0]],void n(a,r,e);default:for(s=-1;++s<e.length;)if(!Array.isArray(e[s]))return E(e,a[r]);return n(a,r,e)}}else a[r]=e;else a[r]=!0}else a[e]=!0}s(),r.sExpr=E},\n function _(n,r,f,i,t){i(),f.default=function(n,r){var f,i;if(n=n||{},!r)return n;for(i in r)void 0!==(f=r[i])&&(n[i]=f);return n}},\n function _(t,o,a,e,n){e();const r=t(1),f=r.__importDefault(t(81)),u=r.__importDefault(t(87));var i=[f.default,u.default],c={},d=[];function s(t,o){var a=d.length;return t.names?(d[a]=t,t.names.forEach((function(t){c[t.toLowerCase()]=a})),this):(console.log(o),!0)}function l(t){if(!t)return!1;var o=t.toLowerCase();return void 0!==c[o]&&d[c[o]]?d[c[o]]:void 0}function v(){i.forEach(s)}a.add=s,a.get=l,a.start=v,a.default={start:v,add:s,get:l}},\n function _(t,i,s,h,a){h();const e=t(1),r=e.__importDefault(t(82)),n=e.__importDefault(t(83)),l=e.__importDefault(t(85)),u=e.__importDefault(t(86)),o=t(72);function f(){var t=this.b/this.a;this.es=1-t*t,\"x0\"in this||(this.x0=0),\"y0\"in this||(this.y0=0),this.e=Math.sqrt(this.es),this.lat_ts?this.sphere?this.k0=Math.cos(this.lat_ts):this.k0=r.default(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)}function _(t){var i,s,h=t.x,a=t.y;if(a*o.R2D>90&&a*o.R2D<-90&&h*o.R2D>180&&h*o.R2D<-180)return null;if(Math.abs(Math.abs(a)-o.HALF_PI)<=o.EPSLN)return null;if(this.sphere)i=this.x0+this.a*this.k0*n.default(h-this.long0),s=this.y0+this.a*this.k0*Math.log(Math.tan(o.FORTPI+.5*a));else{var e=Math.sin(a),r=l.default(this.e,a,e);i=this.x0+this.a*this.k0*n.default(h-this.long0),s=this.y0-this.a*this.k0*Math.log(r)}return t.x=i,t.y=s,t}function M(t){var i,s,h=t.x-this.x0,a=t.y-this.y0;if(this.sphere)s=o.HALF_PI-2*Math.atan(Math.exp(-a/(this.a*this.k0)));else{var e=Math.exp(-a/(this.a*this.k0));if(-9999===(s=u.default(this.e,e)))return null}return i=n.default(this.long0+h/(this.a*this.k0)),t.x=i,t.y=s,t}s.init=f,s.forward=_,s.inverse=M,s.names=[\"Mercator\",\"Popular Visualisation Pseudo Mercator\",\"Mercator_1SP\",\"Mercator_Auxiliary_Sphere\",\"merc\"],s.default={init:f,forward:_,inverse:M,names:s.names}},\n function _(t,n,r,u,a){u(),r.default=function(t,n,r){var u=t*n;return r/Math.sqrt(1-u*u)}},\n function _(t,n,u,a,f){a();const e=t(1),o=t(72),_=e.__importDefault(t(84));u.default=function(t){return Math.abs(t)<=o.SPI?t:t-_.default(t)*o.TWO_PI}},\n function _(n,t,u,f,c){f(),u.default=function(n){return n<0?-1:1}},\n function _(t,n,a,o,u){o();const c=t(72);a.default=function(t,n,a){var o=t*a,u=.5*t;return o=Math.pow((1-o)/(1+o),u),Math.tan(.5*(c.HALF_PI-n))/o}},\n function _(t,a,n,r,f){r();const h=t(72);n.default=function(t,a){for(var n,r,f=.5*t,o=h.HALF_PI-2*Math.atan(a),u=0;u<=15;u++)if(n=t*Math.sin(o),o+=r=h.HALF_PI-2*Math.atan(a*Math.pow((1-n)/(1+n),f))-o,Math.abs(r)<=1e-10)return o;return-9999}},\n function _(n,i,e,t,r){function a(){}function f(n){return n}t(),e.init=a,e.forward=f,e.inverse=f,e.names=[\"longlat\",\"identity\"],e.default={init:a,forward:f,inverse:f,names:e.names}},\n function _(t,r,e,a,n){a();const f=t(1),i=t(72),u=f.__importStar(t(89)),c=f.__importDefault(t(75));e.eccentricity=function(t,r,e,a){var n=t*t,f=r*r,u=(n-f)/n,c=0;return a?(n=(t*=1-u*(i.SIXTH+u*(i.RA4+u*i.RA6)))*t,u=0):c=Math.sqrt(u),{es:u,e:c,ep2:(n-f)/f}},e.sphere=function(t,r,e,a,n){if(!t){var f=c.default(u.default,a);f||(f=u.WGS84),t=f.a,r=f.b,e=f.rf}return e&&!r&&(r=(1-1/e)*t),(0===e||Math.abs(t-r)<i.EPSLN)&&(n=!0,r=t),{a:t,b:r,rf:e,sphere:n}}},\n function _(e,a,l,s,r){s();var i={};l.default=i,i.MERIT={a:6378137,rf:298.257,ellipseName:\"MERIT 1983\"},i.SGS85={a:6378136,rf:298.257,ellipseName:\"Soviet Geodetic System 85\"},i.GRS80={a:6378137,rf:298.257222101,ellipseName:\"GRS 1980(IUGG, 1980)\"},i.IAU76={a:6378140,rf:298.257,ellipseName:\"IAU 1976\"},i.airy={a:6377563.396,b:6356256.91,ellipseName:\"Airy 1830\"},i.APL4={a:6378137,rf:298.25,ellipseName:\"Appl. Physics. 1965\"},i.NWL9D={a:6378145,rf:298.25,ellipseName:\"Naval Weapons Lab., 1965\"},i.mod_airy={a:6377340.189,b:6356034.446,ellipseName:\"Modified Airy\"},i.andrae={a:6377104.43,rf:300,ellipseName:\"Andrae 1876 (Den., Iclnd.)\"},i.aust_SA={a:6378160,rf:298.25,ellipseName:\"Australian Natl & S. Amer. 1969\"},i.GRS67={a:6378160,rf:298.247167427,ellipseName:\"GRS 67(IUGG 1967)\"},i.bessel={a:6377397.155,rf:299.1528128,ellipseName:\"Bessel 1841\"},i.bess_nam={a:6377483.865,rf:299.1528128,ellipseName:\"Bessel 1841 (Namibia)\"},i.clrk66={a:6378206.4,b:6356583.8,ellipseName:\"Clarke 1866\"},i.clrk80={a:6378249.145,rf:293.4663,ellipseName:\"Clarke 1880 mod.\"},i.clrk58={a:6378293.645208759,rf:294.2606763692654,ellipseName:\"Clarke 1858\"},i.CPM={a:6375738.7,rf:334.29,ellipseName:\"Comm. des Poids et Mesures 1799\"},i.delmbr={a:6376428,rf:311.5,ellipseName:\"Delambre 1810 (Belgium)\"},i.engelis={a:6378136.05,rf:298.2566,ellipseName:\"Engelis 1985\"},i.evrst30={a:6377276.345,rf:300.8017,ellipseName:\"Everest 1830\"},i.evrst48={a:6377304.063,rf:300.8017,ellipseName:\"Everest 1948\"},i.evrst56={a:6377301.243,rf:300.8017,ellipseName:\"Everest 1956\"},i.evrst69={a:6377295.664,rf:300.8017,ellipseName:\"Everest 1969\"},i.evrstSS={a:6377298.556,rf:300.8017,ellipseName:\"Everest (Sabah & Sarawak)\"},i.fschr60={a:6378166,rf:298.3,ellipseName:\"Fischer (Mercury Datum) 1960\"},i.fschr60m={a:6378155,rf:298.3,ellipseName:\"Fischer 1960\"},i.fschr68={a:6378150,rf:298.3,ellipseName:\"Fischer 1968\"},i.helmert={a:6378200,rf:298.3,ellipseName:\"Helmert 1906\"},i.hough={a:6378270,rf:297,ellipseName:\"Hough\"},i.intl={a:6378388,rf:297,ellipseName:\"International 1909 (Hayford)\"},i.kaula={a:6378163,rf:298.24,ellipseName:\"Kaula 1961\"},i.lerch={a:6378139,rf:298.257,ellipseName:\"Lerch 1979\"},i.mprts={a:6397300,rf:191,ellipseName:\"Maupertius 1738\"},i.new_intl={a:6378157.5,b:6356772.2,ellipseName:\"New International 1967\"},i.plessis={a:6376523,rf:6355863,ellipseName:\"Plessis 1817 (France)\"},i.krass={a:6378245,rf:298.3,ellipseName:\"Krassovsky, 1942\"},i.SEasia={a:6378155,b:6356773.3205,ellipseName:\"Southeast Asia\"},i.walbeck={a:6376896,b:6355834.8467,ellipseName:\"Walbeck\"},i.WGS60={a:6378165,rf:298.3,ellipseName:\"WGS 60\"},i.WGS66={a:6378145,rf:298.25,ellipseName:\"WGS 66\"},i.WGS7={a:6378135,rf:298.26,ellipseName:\"WGS 72\"},l.WGS84=i.WGS84={a:6378137,rf:298.257223563,ellipseName:\"WGS 84\"},i.sphere={a:6370997,b:6370997,ellipseName:\"Normal Sphere (r=6370997)\"}},\n function _(e,a,s,t,l){t();var m={};s.default=m,m.wgs84={towgs84:\"0,0,0\",ellipse:\"WGS84\",datumName:\"WGS84\"},m.ch1903={towgs84:\"674.374,15.056,405.346\",ellipse:\"bessel\",datumName:\"swiss\"},m.ggrs87={towgs84:\"-199.87,74.79,246.62\",ellipse:\"GRS80\",datumName:\"Greek_Geodetic_Reference_System_1987\"},m.nad83={towgs84:\"0,0,0\",ellipse:\"GRS80\",datumName:\"North_American_Datum_1983\"},m.nad27={nadgrids:\"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat\",ellipse:\"clrk66\",datumName:\"North_American_Datum_1927\"},m.potsdam={towgs84:\"606.0,23.0,413.0\",ellipse:\"bessel\",datumName:\"Potsdam Rauenberg 1950 DHDN\"},m.carthage={towgs84:\"-263.0,6.0,431.0\",ellipse:\"clark80\",datumName:\"Carthage 1934 Tunisia\"},m.hermannskogel={towgs84:\"653.0,-212.0,449.0\",ellipse:\"bessel\",datumName:\"Hermannskogel\"},m.osni52={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"airy\",datumName:\"Irish National\"},m.ire65={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"mod_airy\",datumName:\"Ireland 1965\"},m.rassadiran={towgs84:\"-133.63,-157.5,-158.62\",ellipse:\"intl\",datumName:\"Rassadiran\"},m.nzgd49={towgs84:\"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993\",ellipse:\"intl\",datumName:\"New Zealand Geodetic Datum 1949\"},m.osgb36={towgs84:\"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894\",ellipse:\"airy\",datumName:\"Airy 1830\"},m.s_jtsk={towgs84:\"589,76,480\",ellipse:\"bessel\",datumName:\"S-JTSK (Ferro)\"},m.beduaram={towgs84:\"-106,-87,188\",ellipse:\"clrk80\",datumName:\"Beduaram\"},m.gunung_segara={towgs84:\"-403,684,41\",ellipse:\"bessel\",datumName:\"Gunung Segara Jakarta\"},m.rnb72={towgs84:\"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1\",ellipse:\"intl\",datumName:\"Reseau National Belge 1972\"}},\n function _(a,m,_,t,u){t();const p=a(72);_.default=function(a,m,_,t,u,d){var r={};return r.datum_type=void 0===a||\"none\"===a?p.PJD_NODATUM:p.PJD_WGS84,m&&(r.datum_params=m.map(parseFloat),0===r.datum_params[0]&&0===r.datum_params[1]&&0===r.datum_params[2]||(r.datum_type=p.PJD_3PARAM),r.datum_params.length>3&&(0===r.datum_params[3]&&0===r.datum_params[4]&&0===r.datum_params[5]&&0===r.datum_params[6]||(r.datum_type=p.PJD_7PARAM,r.datum_params[3]*=p.SEC_TO_RAD,r.datum_params[4]*=p.SEC_TO_RAD,r.datum_params[5]*=p.SEC_TO_RAD,r.datum_params[6]=r.datum_params[6]/1e6+1))),r.a=_,r.b=t,r.es=u,r.ep2=d,r}},\n function _(t,e,a,r,u){r();const m=t(1),_=t(72),o=m.__importDefault(t(93)),d=m.__importDefault(t(95)),f=m.__importDefault(t(67)),n=m.__importDefault(t(96)),i=m.__importDefault(t(97));a.default=function t(e,a,r){var u;if(Array.isArray(r)&&(r=n.default(r)),i.default(r),e.datum&&a.datum&&function(t,e){return(t.datum.datum_type===_.PJD_3PARAM||t.datum.datum_type===_.PJD_7PARAM)&&\"WGS84\"!==e.datumCode||(e.datum.datum_type===_.PJD_3PARAM||e.datum.datum_type===_.PJD_7PARAM)&&\"WGS84\"!==t.datumCode}(e,a)&&(r=t(e,u=new f.default(\"WGS84\"),r),e=u),\"enu\"!==e.axis&&(r=d.default(e,!1,r)),\"longlat\"===e.projName)r={x:r.x*_.D2R,y:r.y*_.D2R,z:r.z||0};else if(e.to_meter&&(r={x:r.x*e.to_meter,y:r.y*e.to_meter,z:r.z||0}),!(r=e.inverse(r)))return;return e.from_greenwich&&(r.x+=e.from_greenwich),r=o.default(e.datum,a.datum,r),a.from_greenwich&&(r={x:r.x-a.from_greenwich,y:r.y,z:r.z||0}),\"longlat\"===a.projName?r={x:r.x*_.R2D,y:r.y*_.R2D,z:r.z||0}:(r=a.forward(r),a.to_meter&&(r={x:r.x/a.to_meter,y:r.y/a.to_meter,z:r.z||0})),\"enu\"!==a.axis?d.default(a,!0,r):r}},\n function _(t,e,a,u,c){u();const m=t(72),o=t(94);function _(t){return t===m.PJD_3PARAM||t===m.PJD_7PARAM}a.default=function(t,e,a){return o.compareDatums(t,e)||t.datum_type===m.PJD_NODATUM||e.datum_type===m.PJD_NODATUM?a:t.es!==e.es||t.a!==e.a||_(t.datum_type)||_(e.datum_type)?(a=o.geodeticToGeocentric(a,t.es,t.a),_(t.datum_type)&&(a=o.geocentricToWgs84(a,t.datum_type,t.datum_params)),_(e.datum_type)&&(a=o.geocentricFromWgs84(a,e.datum_type,e.datum_params)),o.geocentricToGeodetic(a,e.es,e.a,e.b)):a}},\n function _(a,t,r,m,s){m();const u=a(72);r.compareDatums=function(a,t){return a.datum_type===t.datum_type&&(!(a.a!==t.a||Math.abs(a.es-t.es)>5e-11)&&(a.datum_type===u.PJD_3PARAM?a.datum_params[0]===t.datum_params[0]&&a.datum_params[1]===t.datum_params[1]&&a.datum_params[2]===t.datum_params[2]:a.datum_type!==u.PJD_7PARAM||a.datum_params[0]===t.datum_params[0]&&a.datum_params[1]===t.datum_params[1]&&a.datum_params[2]===t.datum_params[2]&&a.datum_params[3]===t.datum_params[3]&&a.datum_params[4]===t.datum_params[4]&&a.datum_params[5]===t.datum_params[5]&&a.datum_params[6]===t.datum_params[6]))},r.geodeticToGeocentric=function(a,t,r){var m,s,_,e,n=a.x,d=a.y,i=a.z?a.z:0;if(d<-u.HALF_PI&&d>-1.001*u.HALF_PI)d=-u.HALF_PI;else if(d>u.HALF_PI&&d<1.001*u.HALF_PI)d=u.HALF_PI;else{if(d<-u.HALF_PI)return{x:-1/0,y:-1/0,z:a.z};if(d>u.HALF_PI)return{x:1/0,y:1/0,z:a.z}}return n>Math.PI&&(n-=2*Math.PI),s=Math.sin(d),e=Math.cos(d),_=s*s,{x:((m=r/Math.sqrt(1-t*_))+i)*e*Math.cos(n),y:(m+i)*e*Math.sin(n),z:(m*(1-t)+i)*s}},r.geocentricToGeodetic=function(a,t,r,m){var s,_,e,n,d,i,p,P,y,z,M,o,A,c,x,h=1e-12,f=a.x,I=a.y,F=a.z?a.z:0;if(s=Math.sqrt(f*f+I*I),_=Math.sqrt(f*f+I*I+F*F),s/r<h){if(c=0,_/r<h)return u.HALF_PI,x=-m,{x:a.x,y:a.y,z:a.z}}else c=Math.atan2(I,f);e=F/_,P=(n=s/_)*(1-t)*(d=1/Math.sqrt(1-t*(2-t)*n*n)),y=e*d,A=0;do{A++,i=t*(p=r/Math.sqrt(1-t*y*y))/(p+(x=s*P+F*y-p*(1-t*y*y))),o=(M=e*(d=1/Math.sqrt(1-i*(2-i)*n*n)))*P-(z=n*(1-i)*d)*y,P=z,y=M}while(o*o>1e-24&&A<30);return{x:c,y:Math.atan(M/Math.abs(z)),z:x}},r.geocentricToWgs84=function(a,t,r){if(t===u.PJD_3PARAM)return{x:a.x+r[0],y:a.y+r[1],z:a.z+r[2]};if(t===u.PJD_7PARAM){var m=r[0],s=r[1],_=r[2],e=r[3],n=r[4],d=r[5],i=r[6];return{x:i*(a.x-d*a.y+n*a.z)+m,y:i*(d*a.x+a.y-e*a.z)+s,z:i*(-n*a.x+e*a.y+a.z)+_}}},r.geocentricFromWgs84=function(a,t,r){if(t===u.PJD_3PARAM)return{x:a.x-r[0],y:a.y-r[1],z:a.z-r[2]};if(t===u.PJD_7PARAM){var m=r[0],s=r[1],_=r[2],e=r[3],n=r[4],d=r[5],i=r[6],p=(a.x-m)/i,P=(a.y-s)/i,y=(a.z-_)/i;return{x:p+d*P-n*y,y:-d*p+P+e*y,z:n*p-e*P+y}}}},\n function _(e,a,i,r,s){r(),i.default=function(e,a,i){var r,s,n,c=i.x,d=i.y,f=i.z||0,u={};for(n=0;n<3;n++)if(!a||2!==n||void 0!==i.z)switch(0===n?(r=c,s=-1!==\"ew\".indexOf(e.axis[n])?\"x\":\"y\"):1===n?(r=d,s=-1!==\"ns\".indexOf(e.axis[n])?\"y\":\"x\"):(r=f,s=\"z\"),e.axis[n]){case\"e\":u[s]=r;break;case\"w\":u[s]=-r;break;case\"n\":u[s]=r;break;case\"s\":u[s]=-r;break;case\"u\":void 0!==i[s]&&(u.z=r);break;case\"d\":void 0!==i[s]&&(u.z=-r);break;default:return null}return u}},\n function _(n,t,e,u,f){u(),e.default=function(n){var t={x:n[0],y:n[1]};return n.length>2&&(t.z=n[2]),n.length>3&&(t.m=n[3]),t}},\n function _(e,i,n,t,r){function o(e){if(\"function\"==typeof Number.isFinite){if(Number.isFinite(e))return;throw new TypeError(\"coordinates must be finite numbers\")}if(\"number\"!=typeof e||e!=e||!isFinite(e))throw new TypeError(\"coordinates must be finite numbers\")}t(),n.default=function(e){o(e.x),o(e.y)}},\n function _(e,t,s,i,n){i();const r=e(1),a=r.__importStar(e(18)),o=r.__importStar(e(99)),_=r.__importStar(e(45)),l=e(42),c=e(53),h=e(19),d=e(24),u=e(8),f=e(100),p=e(12),g=e(26),y=e(101),x=e(104),v=e(59),{abs:b,ceil:m}=Math;class w extends l.View{constructor(){super(...arguments),this._index=null,this._data_size=null,this._nohit_warned=new Set}get renderer(){return this.parent}get has_webgl(){return null!=this.glglyph}get index(){const{_index:e}=this;if(null!=e)return e;throw new Error(`${this}.index_data() wasn't called`)}get data_size(){const{_data_size:e}=this;if(null!=e)return e;throw new Error(`${this}.set_data() wasn't called`)}initialize(){super.initialize(),this.visuals=new _.Visuals(this)}request_render(){this.parent.request_render()}get canvas(){return this.renderer.parent.canvas_view}render(e,t,s){var i;null!=this.glglyph&&(this.renderer.needs_webgl_blit=this.glglyph.render(e,t,null!==(i=this.base)&&void 0!==i?i:this),this.renderer.needs_webgl_blit)||(e.beginPath(),this._render(e,t,null!=s?s:this.base))}has_finished(){return!0}notify_finished(){this.renderer.notify_finished()}_bounds(e){return e}bounds(){return this._bounds(this.index.bbox)}log_bounds(){const{x0:e,x1:t}=this.index.bounds(o.positive_x()),{y0:s,y1:i}=this.index.bounds(o.positive_y());return this._bounds({x0:e,y0:s,x1:t,y1:i})}get_anchor_point(e,t,[s,i]){switch(e){case\"center\":case\"center_center\":{const[e,n]=this.scenterxy(t,s,i);return{x:e,y:n}}default:return null}}scenterx(e,t,s){return this.scenterxy(e,t,s)[0]}scentery(e,t,s){return this.scenterxy(e,t,s)[1]}sdist(e,t,s,i=\"edge\",n=!1){const r=t.length,a=new d.ScreenArray(r),o=e.s_compute;if(\"center\"==i)for(let e=0;e<r;e++){const i=t[e],n=s.get(e)/2,r=o(i-n),_=o(i+n);a[e]=b(_-r)}else for(let e=0;e<r;e++){const i=t[e],n=o(i),r=o(i+s.get(e));a[e]=b(r-n)}return n&&p.inplace_map(a,(e=>m(e))),a}draw_legend_for_index(e,t,s){}hit_test(e){switch(e.type){case\"point\":if(null!=this._hit_point)return this._hit_point(e);break;case\"span\":if(null!=this._hit_span)return this._hit_span(e);break;case\"rect\":if(null!=this._hit_rect)return this._hit_rect(e);break;case\"poly\":if(null!=this._hit_poly)return this._hit_poly(e)}return this._nohit_warned.has(e.type)||(h.logger.debug(`'${e.type}' selection not available for ${this.model.type}`),this._nohit_warned.add(e.type)),null}_hit_rect_against_index(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,[r,a]=this.renderer.coordinates.x_scale.r_invert(t,s),[o,_]=this.renderer.coordinates.y_scale.r_invert(i,n),l=[...this.index.indices({x0:r,x1:a,y0:o,y1:_})];return new v.Selection({indices:l})}_project_data(){}*_iter_visuals(){for(const e of this.visuals)for(const t of e)(t instanceof a.VectorSpec||t instanceof a.ScalarSpec)&&(yield t)}set_base(e){e!=this&&e instanceof this.constructor&&(this.base=e)}_configure(e,t){Object.defineProperty(this,u.isString(e)?e:e.attr,Object.assign({configurable:!0,enumerable:!0},t))}set_visuals(e,t){var s;for(const s of this._iter_visuals()){const{base:i}=this;if(null!=i){const e=i.model.properties[s.attr];if(null!=e&&g.is_equal(s.get_value(),e.get_value())){this._configure(s,{get:()=>i[`${s.attr}`]});continue}}const n=s.uniform(e).select(t);this._configure(s,{value:n})}for(const e of this.visuals)e.update();null===(s=this.glglyph)||void 0===s||s.set_visuals_changed()}set_data(e,t,s){var i;const{x_range:n,y_range:r}=this.renderer.coordinates,o=new Set(this._iter_visuals());this._data_size=t.count;for(const s of this.model)if((s instanceof a.VectorSpec||s instanceof a.ScalarSpec)&&!o.has(s))if(s instanceof a.BaseCoordinateSpec){const i=s.array(e);let o=t.select(i);const _=\"x\"==s.dimension?n:r;if(_ instanceof x.FactorRange)if(s instanceof a.CoordinateSpec)o=_.v_synthetic(o);else if(s instanceof a.CoordinateSeqSpec)for(let e=0;e<o.length;e++)o[e]=_.v_synthetic(o[e]);let l;l=s instanceof a.CoordinateSeqSpec?f.RaggedArray.from(o,Float64Array):o,this._configure(`_${s.attr}`,{value:l})}else{const i=s.uniform(e).select(t);if(this._configure(s,{value:i}),s instanceof a.DistanceSpec){const e=i.is_Scalar()?i.value:p.max(i.array);this._configure(`max_${s.attr}`,{value:e})}}this.renderer.plot_view.model.use_map&&this._project_data(),this._set_data(null!=s?s:null),null===(i=this.glglyph)||void 0===i||i.set_data_changed(),this.index_data()}_set_data(e){}get _index_size(){return this.data_size}index_data(){const e=new y.SpatialIndex(this._index_size);this._index_data(e),e.finish(),this._index=e}mask_data(){return null==this._mask_data?d.Indices.all_set(this.data_size):this._mask_data()}map_data(){var e;const t=this,{x_scale:s,y_scale:i}=this.renderer.coordinates;for(const e of this.model)if(e instanceof a.BaseCoordinateSpec){const n=\"x\"==e.dimension?s:i;let r=t[`_${e.attr}`];if(r instanceof f.RaggedArray){const e=n.v_compute(r.array);r=new f.RaggedArray(r.offsets,e)}else r=n.v_compute(r);this[`s${e.attr}`]=r}this._map_data(),null===(e=this.glglyph)||void 0===e||e.set_data_changed()}_map_data(){}}s.GlyphView=w,w.__name__=\"GlyphView\";class S extends c.Model{constructor(e){super(e)}}s.Glyph=S,S.__name__=\"Glyph\"},\n function _(t,i,e,h,r){h();const s=t(24),n=t(26),{min:x,max:y}=Math;e.empty=function(){return{x0:1/0,y0:1/0,x1:-1/0,y1:-1/0}},e.positive_x=function(){return{x0:Number.MIN_VALUE,y0:-1/0,x1:1/0,y1:1/0}},e.positive_y=function(){return{x0:-1/0,y0:Number.MIN_VALUE,x1:1/0,y1:1/0}},e.union=function(t,i){return{x0:x(t.x0,i.x0),x1:y(t.x1,i.x1),y0:x(t.y0,i.y0),y1:y(t.y1,i.y1)}};class o{constructor(t){if(null==t)this.x0=0,this.y0=0,this.x1=0,this.y1=0;else if(\"x0\"in t){const{x0:i,y0:e,x1:h,y1:r}=t;if(!(i<=h&&e<=r))throw new Error(`invalid bbox {x0: ${i}, y0: ${e}, x1: ${h}, y1: ${r}}`);this.x0=i,this.y0=e,this.x1=h,this.y1=r}else if(\"x\"in t){const{x:i,y:e,width:h,height:r}=t;if(!(h>=0&&r>=0))throw new Error(`invalid bbox {x: ${i}, y: ${e}, width: ${h}, height: ${r}}`);this.x0=i,this.y0=e,this.x1=i+h,this.y1=e+r}else{let i,e,h,r;if(\"width\"in t)if(\"left\"in t)i=t.left,e=i+t.width;else if(\"right\"in t)e=t.right,i=e-t.width;else{const h=t.width/2;i=t.hcenter-h,e=t.hcenter+h}else i=t.left,e=t.right;if(\"height\"in t)if(\"top\"in t)h=t.top,r=h+t.height;else if(\"bottom\"in t)r=t.bottom,h=r-t.height;else{const i=t.height/2;h=t.vcenter-i,r=t.vcenter+i}else h=t.top,r=t.bottom;if(!(i<=e&&h<=r))throw new Error(`invalid bbox {left: ${i}, top: ${h}, right: ${e}, bottom: ${r}}`);this.x0=i,this.y0=h,this.x1=e,this.y1=r}}static from_rect({left:t,right:i,top:e,bottom:h}){return new o({x0:Math.min(t,i),y0:Math.min(e,h),x1:Math.max(t,i),y1:Math.max(e,h)})}equals(t){return this.x0==t.x0&&this.y0==t.y0&&this.x1==t.x1&&this.y1==t.y1}[n.equals](t,i){return i.eq(this.x0,t.x0)&&i.eq(this.y0,t.y0)&&i.eq(this.x1,t.x1)&&i.eq(this.y1,t.y1)}toString(){return`BBox({left: ${this.left}, top: ${this.top}, width: ${this.width}, height: ${this.height}})`}get left(){return this.x0}get top(){return this.y0}get right(){return this.x1}get bottom(){return this.y1}get p0(){return[this.x0,this.y0]}get p1(){return[this.x1,this.y1]}get x(){return this.x0}get y(){return this.y0}get width(){return this.x1-this.x0}get height(){return this.y1-this.y0}get size(){return{width:this.width,height:this.height}}get rect(){const{x0:t,y0:i,x1:e,y1:h}=this;return{p0:{x:t,y:i},p1:{x:e,y:i},p2:{x:e,y:h},p3:{x:t,y:h}}}get box(){const{x:t,y:i,width:e,height:h}=this;return{x:t,y:i,width:e,height:h}}get h_range(){return{start:this.x0,end:this.x1}}get v_range(){return{start:this.y0,end:this.y1}}get ranges(){return[this.h_range,this.v_range]}get aspect(){return this.width/this.height}get hcenter(){return(this.left+this.right)/2}get vcenter(){return(this.top+this.bottom)/2}get area(){return this.width*this.height}relative(){const{width:t,height:i}=this;return new o({x:0,y:0,width:t,height:i})}translate(t,i){const{x:e,y:h,width:r,height:s}=this;return new o({x:t+e,y:i+h,width:r,height:s})}relativize(t,i){return[t-this.x,i-this.y]}contains(t,i){return this.x0<=t&&t<=this.x1&&this.y0<=i&&i<=this.y1}clip(t,i){return t<this.x0?t=this.x0:t>this.x1&&(t=this.x1),i<this.y0?i=this.y0:i>this.y1&&(i=this.y1),[t,i]}grow_by(t){return new o({left:this.left-t,right:this.right+t,top:this.top-t,bottom:this.bottom+t})}shrink_by(t){return new o({left:this.left+t,right:this.right-t,top:this.top+t,bottom:this.bottom-t})}union(t){return new o({x0:x(this.x0,t.x0),y0:x(this.y0,t.y0),x1:y(this.x1,t.x1),y1:y(this.y1,t.y1)})}intersection(t){return this.intersects(t)?new o({x0:y(this.x0,t.x0),y0:y(this.y0,t.y0),x1:x(this.x1,t.x1),y1:x(this.y1,t.y1)}):null}intersects(t){return!(t.x1<this.x0||t.x0>this.x1||t.y1<this.y0||t.y0>this.y1)}get xview(){return{compute:t=>this.left+t,v_compute:t=>{const i=new s.ScreenArray(t.length),e=this.left;for(let h=0;h<t.length;h++)i[h]=e+t[h];return i}}}get yview(){return{compute:t=>this.bottom-t,v_compute:t=>{const i=new s.ScreenArray(t.length),e=this.bottom;for(let h=0;h<t.length;h++)i[h]=e-t[h];return i}}}}e.BBox=o,o.__name__=\"BBox\"},\n function _(t,s,r,e,n){e();const a=t(26),o=t(11);class h{constructor(t,s){this.offsets=t,this.array=s}[a.equals](t,s){return s.arrays(this.offsets,t.offsets)&&s.arrays(this.array,t.array)}get length(){return this.offsets.length}clone(){return new h(this.offsets.slice(),this.array.slice())}static from(t,s){const r=t.length;let e=0;const n=(()=>{const s=new Uint32Array(r);for(let n=0;n<r;n++){const r=t[n].length;s[n]=e,e+=r}return e<256?new Uint8Array(s):e<65536?new Uint16Array(s):s})(),a=new s(e);for(let s=0;s<r;s++)a.set(t[s],n[s]);return new h(n,a)}*[Symbol.iterator](){const{offsets:t,length:s}=this;for(let r=0;r<s;r++)yield this.array.subarray(t[r],t[r+1])}_check_bounds(t){o.assert(0<=t&&t<this.length,`Out of bounds: 0 <= ${t} < ${this.length}`)}get(t){this._check_bounds(t);const{offsets:s}=this;return this.array.subarray(s[t],s[t+1])}set(t,s){this._check_bounds(t),this.array.set(s,this.offsets[t])}}r.RaggedArray=h,h.__name__=\"RaggedArray\",h[Symbol.toStringTag]=\"RaggedArray\"},\n function _(n,i,t,e,s){e();const o=n(1).__importDefault(n(102)),d=n(24),x=n(99);function h(n,i){let t=0,e=i.length-1;for(;t<e;){const s=t+e>>1;i[s]>n?e=s:t=s+1}return i[t]}class r extends o.default{search_indices(n,i,t,e){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let s=this._boxes.length-4;const o=[],x=new d.Indices(this.numItems);for(;void 0!==s;){const d=Math.min(s+4*this.nodeSize,h(s,this._levelBounds));for(let h=s;h<d;h+=4){const d=0|this._indices[h>>2];t<this._boxes[h+0]||(e<this._boxes[h+1]||n>this._boxes[h+2]||i>this._boxes[h+3]||(s<4*this.numItems?x.set(d):o.push(d)))}s=o.pop()}return x}}r.__name__=\"_FlatBush\";class l{constructor(n){this.index=null,n>0&&(this.index=new r(n))}add(n,i,t,e){var s;null===(s=this.index)||void 0===s||s.add(n,i,t,e)}add_empty(){var n;null===(n=this.index)||void 0===n||n.add(1/0,1/0,-1/0,-1/0)}finish(){var n;null===(n=this.index)||void 0===n||n.finish()}_normalize(n){let{x0:i,y0:t,x1:e,y1:s}=n;return i>e&&([i,e]=[e,i]),t>s&&([t,s]=[s,t]),{x0:i,y0:t,x1:e,y1:s}}get bbox(){if(null==this.index)return x.empty();{const{minX:n,minY:i,maxX:t,maxY:e}=this.index;return{x0:n,y0:i,x1:t,y1:e}}}indices(n){if(null==this.index)return new d.Indices(0);{const{x0:i,y0:t,x1:e,y1:s}=this._normalize(n);return this.index.search_indices(i,t,e,s)}}bounds(n){const i=x.empty();for(const t of this.indices(n)){const n=this.index._boxes,e=n[4*t+0],s=n[4*t+1],o=n[4*t+2],d=n[4*t+3];e<i.x0&&(i.x0=e),o>i.x1&&(i.x1=o),s<i.y0&&(i.y0=s),d>i.y1&&(i.y1=d)}return i}}t.SpatialIndex=l,l.__name__=\"SpatialIndex\"},\n function _(t,s,i,e,h){e();const n=t(1).__importDefault(t(103)),o=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array];class r{static from(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");const[s,i]=new Uint8Array(t,0,2);if(251!==s)throw new Error(\"Data does not appear to be in a Flatbush format.\");if(i>>4!=3)throw new Error(`Got v${i>>4} data when expected v3.`);const[e]=new Uint16Array(t,2,1),[h]=new Uint32Array(t,4,1);return new r(h,e,o[15&i],t)}constructor(t,s=16,i=Float64Array,e){if(void 0===t)throw new Error(\"Missing required argument: numItems.\");if(isNaN(t)||t<=0)throw new Error(`Unpexpected numItems value: ${t}.`);this.numItems=+t,this.nodeSize=Math.min(Math.max(+s,2),65535);let h=t,r=h;this._levelBounds=[4*h];do{h=Math.ceil(h/this.nodeSize),r+=h,this._levelBounds.push(4*r)}while(1!==h);this.ArrayType=i||Float64Array,this.IndexArrayType=r<16384?Uint16Array:Uint32Array;const a=o.indexOf(this.ArrayType),_=4*r*this.ArrayType.BYTES_PER_ELEMENT;if(a<0)throw new Error(`Unexpected typed array class: ${i}.`);e&&e instanceof ArrayBuffer?(this.data=e,this._boxes=new this.ArrayType(this.data,8,4*r),this._indices=new this.IndexArrayType(this.data,8+_,r),this._pos=4*r,this.minX=this._boxes[this._pos-4],this.minY=this._boxes[this._pos-3],this.maxX=this._boxes[this._pos-2],this.maxY=this._boxes[this._pos-1]):(this.data=new ArrayBuffer(8+_+r*this.IndexArrayType.BYTES_PER_ELEMENT),this._boxes=new this.ArrayType(this.data,8,4*r),this._indices=new this.IndexArrayType(this.data,8+_,r),this._pos=0,this.minX=1/0,this.minY=1/0,this.maxX=-1/0,this.maxY=-1/0,new Uint8Array(this.data,0,2).set([251,48+a]),new Uint16Array(this.data,2,1)[0]=s,new Uint32Array(this.data,4,1)[0]=t),this._queue=new n.default}add(t,s,i,e){const h=this._pos>>2;return this._indices[h]=h,this._boxes[this._pos++]=t,this._boxes[this._pos++]=s,this._boxes[this._pos++]=i,this._boxes[this._pos++]=e,t<this.minX&&(this.minX=t),s<this.minY&&(this.minY=s),i>this.maxX&&(this.maxX=i),e>this.maxY&&(this.maxY=e),h}finish(){if(this._pos>>2!==this.numItems)throw new Error(`Added ${this._pos>>2} items when expected ${this.numItems}.`);if(this.numItems<=this.nodeSize)return this._boxes[this._pos++]=this.minX,this._boxes[this._pos++]=this.minY,this._boxes[this._pos++]=this.maxX,void(this._boxes[this._pos++]=this.maxY);const t=this.maxX-this.minX,s=this.maxY-this.minY,i=new Uint32Array(this.numItems);for(let e=0;e<this.numItems;e++){let h=4*e;const n=this._boxes[h++],o=this._boxes[h++],r=this._boxes[h++],a=this._boxes[h++],_=Math.floor(65535*((n+r)/2-this.minX)/t),x=Math.floor(65535*((o+a)/2-this.minY)/s);i[e]=m(_,x)}x(i,this._boxes,this._indices,0,this.numItems-1,this.nodeSize);for(let t=0,s=0;t<this._levelBounds.length-1;t++){const i=this._levelBounds[t];for(;s<i;){const t=s;let e=1/0,h=1/0,n=-1/0,o=-1/0;for(let t=0;t<this.nodeSize&&s<i;t++)e=Math.min(e,this._boxes[s++]),h=Math.min(h,this._boxes[s++]),n=Math.max(n,this._boxes[s++]),o=Math.max(o,this._boxes[s++]);this._indices[this._pos>>2]=t,this._boxes[this._pos++]=e,this._boxes[this._pos++]=h,this._boxes[this._pos++]=n,this._boxes[this._pos++]=o}}}search(t,s,i,e,h){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let n=this._boxes.length-4;const o=[],r=[];for(;void 0!==n;){const a=Math.min(n+4*this.nodeSize,_(n,this._levelBounds));for(let _=n;_<a;_+=4){const a=0|this._indices[_>>2];i<this._boxes[_]||(e<this._boxes[_+1]||t>this._boxes[_+2]||s>this._boxes[_+3]||(n<4*this.numItems?(void 0===h||h(a))&&r.push(a):o.push(a)))}n=o.pop()}return r}neighbors(t,s,i=1/0,e=1/0,h){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");let n=this._boxes.length-4;const o=this._queue,r=[],x=e*e;for(;void 0!==n;){const e=Math.min(n+4*this.nodeSize,_(n,this._levelBounds));for(let i=n;i<e;i+=4){const e=0|this._indices[i>>2],r=a(t,this._boxes[i],this._boxes[i+2]),_=a(s,this._boxes[i+1],this._boxes[i+3]),x=r*r+_*_;n<4*this.numItems?(void 0===h||h(e))&&o.push(-e-1,x):o.push(e,x)}for(;o.length&&o.peek()<0;){if(o.peekValue()>x)return o.clear(),r;if(r.push(-o.pop()-1),r.length===i)return o.clear(),r}n=o.pop()}return o.clear(),r}}function a(t,s,i){return t<s?s-t:t<=i?0:t-i}function _(t,s){let i=0,e=s.length-1;for(;i<e;){const h=i+e>>1;s[h]>t?e=h:i=h+1}return s[i]}function x(t,s,i,e,h,n){if(Math.floor(e/n)>=Math.floor(h/n))return;const o=t[e+h>>1];let r=e-1,a=h+1;for(;;){do{r++}while(t[r]<o);do{a--}while(t[a]>o);if(r>=a)break;d(t,s,i,r,a)}x(t,s,i,e,a,n),x(t,s,i,a+1,h,n)}function d(t,s,i,e,h){const n=t[e];t[e]=t[h],t[h]=n;const o=4*e,r=4*h,a=s[o],_=s[o+1],x=s[o+2],d=s[o+3];s[o]=s[r],s[o+1]=s[r+1],s[o+2]=s[r+2],s[o+3]=s[r+3],s[r]=a,s[r+1]=_,s[r+2]=x,s[r+3]=d;const m=i[e];i[e]=i[h],i[h]=m}function m(t,s){let i=t^s,e=65535^i,h=65535^(t|s),n=t&(65535^s),o=i|e>>1,r=i>>1^i,a=h>>1^e&n>>1^h,_=i&h>>1^n>>1^n;i=o,e=r,h=a,n=_,o=i&i>>2^e&e>>2,r=i&e>>2^e&(i^e)>>2,a^=i&h>>2^e&n>>2,_^=e&h>>2^(i^e)&n>>2,i=o,e=r,h=a,n=_,o=i&i>>4^e&e>>4,r=i&e>>4^e&(i^e)>>4,a^=i&h>>4^e&n>>4,_^=e&h>>4^(i^e)&n>>4,i=o,e=r,h=a,n=_,a^=i&h>>8^e&n>>8,_^=e&h>>8^(i^e)&n>>8,i=a^a>>1,e=_^_>>1;let x=t^s,d=e|65535^(x|i);return x=16711935&(x|x<<8),x=252645135&(x|x<<4),x=858993459&(x|x<<2),x=1431655765&(x|x<<1),d=16711935&(d|d<<8),d=252645135&(d|d<<4),d=858993459&(d|d<<2),d=1431655765&(d|d<<1),(d<<1|x)>>>0}i.default=r},\n function _(s,t,i,h,e){h();i.default=class{constructor(){this.ids=[],this.values=[],this.length=0}clear(){this.length=0}push(s,t){let i=this.length++;for(this.ids[i]=s,this.values[i]=t;i>0;){const s=i-1>>1,h=this.values[s];if(t>=h)break;this.ids[i]=this.ids[s],this.values[i]=h,i=s}this.ids[i]=s,this.values[i]=t}pop(){if(0===this.length)return;const s=this.ids[0];if(this.length--,this.length>0){const s=this.ids[0]=this.ids[this.length],t=this.values[0]=this.values[this.length],i=this.length>>1;let h=0;for(;h<i;){let s=1+(h<<1);const i=s+1;let e=this.ids[s],l=this.values[s];const n=this.values[i];if(i<this.length&&n<l&&(s=i,e=this.ids[i],l=n),l>=t)break;this.ids[h]=e,this.values[h]=l,h=s}this.ids[h]=s,this.values[h]=t}return s}peek(){if(0!==this.length)return this.ids[0]}peekValue(){if(0!==this.length)return this.values[0]}}},\n function _(t,n,e,i,s){i();const r=t(105),a=t(20),o=t(21),g=t(24),p=t(9),c=t(8),l=t(11);function u(t,n,e=0){const i=new Map;for(let s=0;s<t.length;s++){const r=t[s];if(i.has(r))throw new Error(`duplicate factor or subfactor: ${r}`);i.set(r,{value:.5+s*(1+n)+e})}return[i,(t.length-1)*n]}function h(t,n,e,i=0){var s;const r=new Map,a=new Map;for(const[n,e]of t){const t=null!==(s=a.get(n))&&void 0!==s?s:[];a.set(n,[...t,e])}let o=i,g=0;for(const[t,i]of a){const s=i.length,[a,c]=u(i,e,o);g+=c;const l=p.sum(i.map((t=>a.get(t).value)));r.set(t,{value:l/s,mapping:a}),o+=s+n+c}return[r,(a.size-1)*n+g]}function d(t,n,e,i,s=0){var r;const a=new Map,o=new Map;for(const[n,e,i]of t){const t=null!==(r=o.get(n))&&void 0!==r?r:[];o.set(n,[...t,[e,i]])}let g=s,c=0;for(const[t,s]of o){const r=s.length,[o,l]=h(s,e,i,g);c+=l;const u=p.sum(s.map((([t])=>o.get(t).value)));a.set(t,{value:u/r,mapping:o}),g+=r+n+l}return[a,(o.size-1)*n+c]}e.Factor=o.Or(o.String,o.Tuple(o.String,o.String),o.Tuple(o.String,o.String,o.String)),e.FactorSeq=o.Or(o.Array(o.String),o.Array(o.Tuple(o.String,o.String)),o.Array(o.Tuple(o.String,o.String,o.String))),e.map_one_level=u,e.map_two_levels=h,e.map_three_levels=d;class _ extends r.Range{constructor(t){super(t)}static init_FactorRange(){this.define((({Number:t})=>({factors:[e.FactorSeq,[]],factor_padding:[t,0],subgroup_padding:[t,.8],group_padding:[t,1.4],range_padding:[t,0],range_padding_units:[a.PaddingUnits,\"percent\"],start:[t],end:[t]}))),this.internal((({Number:t,String:n,Array:e,Tuple:i,Nullable:s})=>({levels:[t],mids:[s(e(i(n,n))),null],tops:[s(e(n)),null]})))}get min(){return this.start}get max(){return this.end}initialize(){super.initialize(),this._init(!0)}connect_signals(){super.connect_signals(),this.connect(this.properties.factors.change,(()=>this.reset())),this.connect(this.properties.factor_padding.change,(()=>this.reset())),this.connect(this.properties.group_padding.change,(()=>this.reset())),this.connect(this.properties.subgroup_padding.change,(()=>this.reset())),this.connect(this.properties.range_padding.change,(()=>this.reset())),this.connect(this.properties.range_padding_units.change,(()=>this.reset()))}reset(){this._init(!1),this.change.emit()}_lookup(t){switch(t.length){case 1:{const[n]=t,e=this._mapping.get(n);return null!=e?e.value:NaN}case 2:{const[n,e]=t,i=this._mapping.get(n);if(null!=i){const t=i.mapping.get(e);if(null!=t)return t.value}return NaN}case 3:{const[n,e,i]=t,s=this._mapping.get(n);if(null!=s){const t=s.mapping.get(e);if(null!=t){const n=t.mapping.get(i);if(null!=n)return n.value}}return NaN}default:l.unreachable()}}synthetic(t){if(c.isNumber(t))return t;if(c.isString(t))return this._lookup([t]);let n=0;const e=t[t.length-1];return c.isNumber(e)&&(n=e,t=t.slice(0,-1)),this._lookup(t)+n}v_synthetic(t){const n=t.length,e=new g.ScreenArray(n);for(let i=0;i<n;i++)e[i]=this.synthetic(t[i]);return e}_init(t){const{levels:n,mapping:e,tops:i,mids:s,inside_padding:r}=(()=>{if(p.every(this.factors,c.isString)){const t=this.factors,[n,e]=u(t,this.factor_padding);return{levels:1,mapping:n,tops:null,mids:null,inside_padding:e}}if(p.every(this.factors,(t=>c.isArray(t)&&2==t.length&&c.isString(t[0])&&c.isString(t[1])))){const t=this.factors,[n,e]=h(t,this.group_padding,this.factor_padding),i=[...n.keys()];return{levels:2,mapping:n,tops:i,mids:null,inside_padding:e}}if(p.every(this.factors,(t=>c.isArray(t)&&3==t.length&&c.isString(t[0])&&c.isString(t[1])&&c.isString(t[2])))){const t=this.factors,[n,e]=d(t,this.group_padding,this.subgroup_padding,this.factor_padding),i=[...n.keys()],s=[];for(const[t,e]of n)for(const n of e.mapping.keys())s.push([t,n]);return{levels:3,mapping:n,tops:i,mids:s,inside_padding:e}}l.unreachable()})();this._mapping=e,this.tops=i,this.mids=s;let a=0,o=this.factors.length+r;if(\"percent\"==this.range_padding_units){const t=(o-a)*this.range_padding/2;a-=t,o+=t}else a-=this.range_padding,o+=this.range_padding;this.setv({start:a,end:o,levels:n},{silent:t}),\"auto\"==this.bounds&&this.setv({bounds:[a,o]},{silent:!0})}}e.FactorRange=_,_.__name__=\"FactorRange\",_.init_FactorRange()},\n function _(e,t,i,n,s){n();const a=e(53);class l extends a.Model{constructor(e){super(e),this.have_updated_interactively=!1}static init_Range(){this.define((({Number:e,Tuple:t,Or:i,Auto:n,Nullable:s})=>({bounds:[s(i(t(s(e),s(e)),n)),null],min_interval:[s(e),null],max_interval:[s(e),null]}))),this.internal((({Array:e,AnyRef:t})=>({plots:[e(t()),[]]})))}get is_reversed(){return this.start>this.end}get is_valid(){return isFinite(this.min)&&isFinite(this.max)}}i.Range=l,l.__name__=\"Range\",l.init_Range()},\n function _(e,t,i,n,l){n();const o=e(1).__importStar(e(107));function a(e,t,{x0:i,x1:n,y0:l,y1:o},a){t.save(),t.beginPath(),t.moveTo(i,(l+o)/2),t.lineTo(n,(l+o)/2),e.line.doit&&(e.line.set_vectorize(t,a),t.stroke()),t.restore()}function r(e,t,{x0:i,x1:n,y0:l,y1:o},a){var r,c;const s=.1*Math.abs(n-i),_=.1*Math.abs(o-l),v=i+s,d=n-s,h=l+_,g=o-_;t.beginPath(),t.rect(v,h,d-v,g-h),e.fill.doit&&(e.fill.set_vectorize(t,a),t.fill()),(null===(r=e.hatch)||void 0===r?void 0:r.doit)&&(e.hatch.set_vectorize(t,a),t.fill()),(null===(c=e.line)||void 0===c?void 0:c.doit)&&(e.line.set_vectorize(t,a),t.stroke())}i.generic_line_scalar_legend=function(e,t,{x0:i,x1:n,y0:l,y1:o}){t.save(),t.beginPath(),t.moveTo(i,(l+o)/2),t.lineTo(n,(l+o)/2),e.line.doit&&(e.line.set_value(t),t.stroke()),t.restore()},i.generic_line_vector_legend=a,i.generic_line_legend=a,i.generic_area_scalar_legend=function(e,t,{x0:i,x1:n,y0:l,y1:o}){var a,r;const c=.1*Math.abs(n-i),s=.1*Math.abs(o-l),_=i+c,v=n-c,d=l+s,h=o-s;t.beginPath(),t.rect(_,d,v-_,h-d),e.fill.doit&&(e.fill.set_value(t),t.fill()),(null===(a=e.hatch)||void 0===a?void 0:a.doit)&&(e.hatch.set_value(t),t.fill()),(null===(r=e.line)||void 0===r?void 0:r.doit)&&(e.line.set_value(t),t.stroke())},i.generic_area_vector_legend=r,i.generic_area_legend=r,i.line_interpolation=function(e,t,i,n,l,a){const{sx:r,sy:c}=t;let s,_,v,d;\"point\"==t.type?([v,d]=e.yscale.r_invert(c-1,c+1),[s,_]=e.xscale.r_invert(r-1,r+1)):\"v\"==t.direction?([v,d]=e.yscale.r_invert(c,c),[s,_]=[Math.min(i-1,l-1),Math.max(i+1,l+1)]):([s,_]=e.xscale.r_invert(r,r),[v,d]=[Math.min(n-1,a-1),Math.max(n+1,a+1)]);const{x:h,y:g}=o.check_2_segments_intersect(s,v,_,d,i,n,l,a);return[h,g]}},\n function _(t,n,e,i,r){function s(t,n){return(t.x-n.x)**2+(t.y-n.y)**2}function o(t,n,e){const i=s(n,e);if(0==i)return s(t,n);const r=((t.x-n.x)*(e.x-n.x)+(t.y-n.y)*(e.y-n.y))/i;if(r<0)return s(t,n);if(r>1)return s(t,e);return s(t,{x:n.x+r*(e.x-n.x),y:n.y+r*(e.y-n.y)})}i(),e.point_in_poly=function(t,n,e,i){let r=!1,s=e[e.length-1],o=i[i.length-1];for(let u=0;u<e.length;u++){const c=e[u],_=i[u];o<n!=_<n&&s+(n-o)/(_-o)*(c-s)<t&&(r=!r),s=c,o=_}return r},e.point_in_ellipse=function(t,n,e,i,r,s,o){return((Math.cos(e)/r)**2+(Math.sin(e)/i)**2)*(t-s)**2+2*Math.cos(e)*Math.sin(e)*((1/r)**2-(1/i)**2)*(t-s)*(n-o)+((Math.cos(e)/i)**2+(Math.sin(e)/r)**2)*(n-o)**2<=1},e.dist_2_pts=s,e.dist_to_segment_squared=o,e.dist_to_segment=function(t,n,e){return Math.sqrt(o(t,n,e))},e.check_2_segments_intersect=function(t,n,e,i,r,s,o,u){const c=(u-s)*(e-t)-(o-r)*(i-n);if(0==c)return{hit:!1,x:null,y:null};{let _=n-s,h=t-r;const l=(e-t)*_-(i-n)*h;_=((o-r)*_-(u-s)*h)/c,h=l/c;return{hit:_>0&&_<1&&h>0&&h<1,x:t+_*(e-t),y:n+_*(i-n)}}}},\n function _(t,e,s,i,a){i();const o=t(1),n=t(109),_=t(113),r=o.__importDefault(t(114)),h=o.__importDefault(t(115)),l=t(22),g=t(46);class u{constructor(t){this._atlas=new Map,this._width=256,this._height=256,this.tex=new n.Texture2d(t),this.tex.set_wrapping(t.REPEAT,t.REPEAT),this.tex.set_interpolation(t.NEAREST,t.NEAREST),this.tex.set_size([this._width,this._height],t.RGBA),this.tex.set_data([0,0],[this._width,this._height],new Uint8Array(4*this._width*this._height)),this.get_atlas_data([1])}get_atlas_data(t){const e=t.join(\"-\");let s=this._atlas.get(e);if(null==s){const[i,a]=this.make_pattern(t),o=this._atlas.size;this.tex.set_data([0,o],[this._width,1],new Uint8Array(i.map((t=>t+10)))),s=[o/this._height,a],this._atlas.set(e,s)}return s}make_pattern(t){t.length>1&&t.length%2&&(t=t.concat(t));let e=0;for(const s of t)e+=s;const s=[];let i=0;for(let e=0,a=t.length+2;e<a;e+=2){const a=Math.max(1e-4,t[e%t.length]),o=Math.max(1e-4,t[(e+1)%t.length]);s.push(i,i+a),i+=a+o}const a=this._width,o=new Float32Array(4*a);for(let t=0,i=a;t<i;t++){let i,n,_;const r=e*t/(a-1);let h=0,l=1e16;for(let t=0,e=s.length;t<e;t++){const e=Math.abs(s[t]-r);e<l&&(h=t,l=e)}h%2==0?(_=r<=s[h]?1:0,n=s[h],i=s[h+1]):(_=r>s[h]?-1:0,n=s[h-1],i=s[h]),o[4*t+0]=s[h],o[4*t+1]=_,o[4*t+2]=n,o[4*t+3]=i}return[o,e]}}u.__name__=\"DashAtlas\";const f={miter:0,round:1,bevel:2},c={\"\":0,none:0,\".\":0,round:1,\")\":1,\"(\":1,o:1,\"triangle in\":2,\"<\":2,\"triangle out\":3,\">\":3,square:4,\"[\":4,\"]\":4,\"=\":4,butt:5,\"|\":5};class d extends _.BaseGLGlyph{constructor(t,e){super(t,e),this.glyph=e,this._scale_aspect=0;const s=r.default,i=h.default;this.prog=new n.Program(t),this.prog.set_shaders(s,i),this.index_buffer=new n.IndexBuffer(t),this.vbo_position=new n.VertexBuffer(t),this.vbo_tangents=new n.VertexBuffer(t),this.vbo_segment=new n.VertexBuffer(t),this.vbo_angles=new n.VertexBuffer(t),this.vbo_texcoord=new n.VertexBuffer(t),this.dash_atlas=new u(t)}draw(t,e,s){const i=e.glglyph;if(i.data_changed&&(i._set_data(),i.data_changed=!1),this.visuals_changed&&(this._set_visuals(),this.visuals_changed=!1),i._update_scale(1,1),this._scale_aspect=1,this.prog.set_attribute(\"a_position\",\"vec2\",i.vbo_position),this.prog.set_attribute(\"a_tangents\",\"vec4\",i.vbo_tangents),this.prog.set_attribute(\"a_segment\",\"vec2\",i.vbo_segment),this.prog.set_attribute(\"a_angles\",\"vec2\",i.vbo_angles),this.prog.set_attribute(\"a_texcoord\",\"vec2\",i.vbo_texcoord),this.prog.set_uniform(\"u_length\",\"float\",[i.cumsum]),this.prog.set_texture(\"u_dash_atlas\",this.dash_atlas.tex),this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[s.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[s.width,s.height]),this.prog.set_uniform(\"u_scale_aspect\",\"vec2\",[1,1]),this.prog.set_uniform(\"u_scale_length\",\"float\",[Math.sqrt(2)]),this.I_triangles=i.I_triangles,this.I_triangles.length<65535)this.index_buffer.set_size(2*this.I_triangles.length),this.index_buffer.set_data(0,new Uint16Array(this.I_triangles)),this.prog.draw(this.gl.TRIANGLES,this.index_buffer);else{t=Array.from(this.I_triangles);const e=this.I_triangles.length,s=64008,a=[];for(let t=0,i=Math.ceil(e/s);t<i;t++)a.push([]);for(let e=0,i=t.length;e<i;e++){const i=t[e]%s;a[Math.floor(t[e]/s)].push(i)}for(let t=0,e=a.length;t<e;t++){const e=new Uint16Array(a[t]),o=t*s*4;0!==e.length&&(this.prog.set_attribute(\"a_position\",\"vec2\",i.vbo_position,0,2*o),this.prog.set_attribute(\"a_tangents\",\"vec4\",i.vbo_tangents,0,4*o),this.prog.set_attribute(\"a_segment\",\"vec2\",i.vbo_segment,0,2*o),this.prog.set_attribute(\"a_angles\",\"vec2\",i.vbo_angles,0,2*o),this.prog.set_attribute(\"a_texcoord\",\"vec2\",i.vbo_texcoord,0,2*o),this.index_buffer.set_size(2*e.length),this.index_buffer.set_data(0,e),this.prog.draw(this.gl.TRIANGLES,this.index_buffer))}}}_set_data(){this._bake(),this.vbo_position.set_size(4*this.V_position.length),this.vbo_position.set_data(0,this.V_position),this.vbo_tangents.set_size(4*this.V_tangents.length),this.vbo_tangents.set_data(0,this.V_tangents),this.vbo_angles.set_size(4*this.V_angles.length),this.vbo_angles.set_data(0,this.V_angles),this.vbo_texcoord.set_size(4*this.V_texcoord.length),this.vbo_texcoord.set_data(0,this.V_texcoord)}_set_visuals(){const{line_color:t,line_alpha:e,line_width:s,line_cap:i,line_join:a,line_dash:o,line_dash_offset:n}=this.glyph.visuals.line,[_,r,h,u]=l.color2rgba(t.value,e.value),d=s.value,p=c[i.value],v=f[a.value];this.prog.set_uniform(\"u_color\",\"vec4\",[_/255,r/255,h/255,u/255]),this.prog.set_uniform(\"u_linewidth\",\"float\",[d]),this.prog.set_uniform(\"u_antialias\",\"float\",[.9]),this.prog.set_uniform(\"u_linecaps\",\"vec2\",[p,p]),this.prog.set_uniform(\"u_linejoin\",\"float\",[v]),this.prog.set_uniform(\"u_miter_limit\",\"float\",[10]);const b=g.resolve_line_dash(o.value);let m=0,w=1;b.length&&([m,w]=this.dash_atlas.get_atlas_data(b)),this.prog.set_uniform(\"u_dash_index\",\"float\",[m]),this.prog.set_uniform(\"u_dash_phase\",\"float\",[n.value]),this.prog.set_uniform(\"u_dash_period\",\"float\",[w]),this.prog.set_uniform(\"u_dash_caps\",\"vec2\",[p,p]),this.prog.set_uniform(\"u_closed\",\"float\",[0])}_bake(){let t,e,s,i,a,o,n,_;const r=this.nvertices,h=this.glyph.sx,l=this.glyph.sy,g=n=new Float32Array(2*r),u=new Float32Array(2*r),f=_=new Float32Array(4*r);for(let t=0,e=r;t<e;t++)g[2*t+0]=isFinite(h[t])?h[t]:0,g[2*t+1]=isFinite(l[t])?l[t]:0;this.tangents=e=new Float32Array(2*r-2);for(let t=0,s=r-1;t<s;t++)e[2*t+0]=n[2*(t+1)+0]-n[2*t+0],e[2*t+1]=n[2*(t+1)+1]-n[2*t+1];for(let t=0,s=r-1;t<s;t++)f[4*(t+1)+0]=e[2*t+0],f[4*(t+1)+1]=e[2*t+1],f[4*t+2]=e[2*t+0],f[4*t+3]=e[2*t+1];f[0]=e[0],f[1]=e[1],f[4*(r-1)+2]=e[2*(r-2)+0],f[4*(r-1)+3]=e[2*(r-2)+1];const c=new Float32Array(r);for(let t=0,e=r;t<e;t++)c[t]=Math.atan2(_[4*t+0]*_[4*t+3]-_[4*t+1]*_[4*t+2],_[4*t+0]*_[4*t+2]+_[4*t+1]*_[4*t+3]);for(let t=0,e=r-1;t<e;t++)u[2*t+0]=c[t],u[2*t+1]=c[t+1];for(let t=0,e=r;t<e;t++)isFinite(h[t])||(g[2*t+0]=h[t]),isFinite(l[t])||(g[2*t+1]=l[t]);const d=4*r-4;this.V_position=i=new Float32Array(2*d),this.V_angles=s=new Float32Array(2*d),this.V_tangents=a=new Float32Array(4*d),this.V_texcoord=o=new Float32Array(2*d);for(let t=0,e=r;t<e;t++)for(let e=0;e<4;e++){for(let a=0;a<2;a++)i[2*(4*t+e-2)+a]=g[2*t+a],s[2*(4*t+e)+a]=u[2*t+a];for(let s=0;s<4;s++)a[4*(4*t+e-2)+s]=f[4*t+s]}for(let t=0,e=r;t<e;t++)o[2*(4*t+0)+0]=-1,o[2*(4*t+1)+0]=-1,o[2*(4*t+2)+0]=1,o[2*(4*t+3)+0]=1,o[2*(4*t+0)+1]=-1,o[2*(4*t+1)+1]=1,o[2*(4*t+2)+1]=-1,o[2*(4*t+3)+1]=1;const p=6*(r-1);this.I_triangles=t=new Uint32Array(p);for(let e=0,s=r;e<s;e++)t[6*e+0]=0+4*e,t[6*e+1]=1+4*e,t[6*e+2]=3+4*e,t[6*e+3]=2+4*e,t[6*e+4]=0+4*e,t[6*e+5]=3+4*e}_update_scale(t,e){let s;const i=this.nvertices,a=4*i-4,o=this.tangents,n=new Float32Array(i-1),_=new Float32Array(2*i);this.V_segment=s=new Float32Array(2*a);for(let s=0,a=i-1;s<a;s++)n[s]=Math.sqrt((o[2*s+0]*t)**2+(o[2*s+1]*e)**2);let r=0;for(let t=0,e=i-1;t<e;t++)r+=n[t],_[2*(t+1)+0]=r,_[2*t+1]=r;for(let t=0,e=i;t<e;t++)for(let e=0;e<4;e++)for(let i=0;i<2;i++)s[2*(4*t+e)+i]=_[2*t+i];this.cumsum=r,this.vbo_segment.set_size(4*this.V_segment.length),this.vbo_segment.set_data(0,this.V_segment)}}s.LineGL=d,d.__name__=\"LineGL\"},\n function _(e,r,f,u,x){u(),x(\"Program\",e(110).Program),x(\"Texture2d\",e(112).Texture2d);var t=e(111);x(\"IndexBuffer\",t.IndexBuffer),x(\"VertexBuffer\",t.VertexBuffer)},\n function _(t,e,i,s,a){s();const r=t(111);class n{constructor(t){this.gl=t,this.UTYPEMAP={float:\"uniform1fv\",vec2:\"uniform2fv\",vec3:\"uniform3fv\",vec4:\"uniform4fv\",int:\"uniform1iv\",ivec2:\"uniform2iv\",ivec3:\"uniform3iv\",ivec4:\"uniform4iv\",bool:\"uniform1iv\",bvec2:\"uniform2iv\",bvec3:\"uniform3iv\",bvec4:\"uniform4iv\",mat2:\"uniformMatrix2fv\",mat3:\"uniformMatrix3fv\",mat4:\"uniformMatrix4fv\",sampler1D:\"uniform1i\",sampler2D:\"uniform1i\",sampler3D:\"uniform1i\"},this.ATYPEMAP={float:\"vertexAttrib1f\",vec2:\"vertexAttrib2f\",vec3:\"vertexAttrib3f\",vec4:\"vertexAttrib4f\"},this.ATYPEINFO={float:[1,5126],vec2:[2,5126],vec3:[3,5126],vec4:[4,5126],vec4_uint8:[4,5121]},this._linked=!1,this._validated=!1,this._unset_variables=new Set,this._known_invalid=new Set,this._locations=new Map,this._samplers=new Map,this._attributes=new Map,this.handle=this.gl.createProgram()}delete(){this.gl.deleteProgram(this.handle)}activate(){this.gl.useProgram(this.handle)}deactivate(){this.gl.useProgram(0)}set_shaders(t,e){const i=this.gl;this._linked=!1;const s=i.createShader(i.VERTEX_SHADER),a=i.createShader(i.FRAGMENT_SHADER),r=[[t,s,\"vertex\"],[e,a,\"fragment\"]];for(const[t,e,s]of r){i.shaderSource(e,t),i.compileShader(e);if(!i.getShaderParameter(e,i.COMPILE_STATUS)){const t=i.getShaderInfoLog(e);throw new Error(`errors in ${s} shader:\\n${t}`)}}if(i.attachShader(this.handle,s),i.attachShader(this.handle,a),i.linkProgram(this.handle),!i.getProgramParameter(this.handle,i.LINK_STATUS)){const t=i.getProgramInfoLog(this.handle);throw new Error(`Program link error:\\n${t}`)}this._unset_variables=this._get_active_attributes_and_uniforms(),i.detachShader(this.handle,s),i.detachShader(this.handle,a),i.deleteShader(s),i.deleteShader(a),this._known_invalid.clear(),this._linked=!0}_get_active_attributes_and_uniforms(){const t=this.gl;this._locations.clear();const e=new RegExp(\"(\\\\w+)\\\\s*(\\\\[(\\\\d+)\\\\])\\\\s*\"),i=t.getProgramParameter(this.handle,t.ACTIVE_UNIFORMS),s=[],a=[],r=[[s,t.getProgramParameter(this.handle,t.ACTIVE_ATTRIBUTES),t.getActiveAttrib,t.getAttribLocation],[a,i,t.getActiveUniform,t.getUniformLocation]];for(const[i,s,a,n]of r)for(let r=0;r<s;r+=1){const s=a.call(t,this.handle,r),o=s.name,h=o.match(e);if(null!=h){const t=h[1];for(let e=0;e<s.size;e+=1)i.push([`${t}[${e}]`,s.type])}else i.push([o,s.type]);this._locations.set(o,n.call(t,this.handle,o))}const n=new Set;for(const[t]of s)n.add(t);for(const[t]of a)n.add(t);return n}set_texture(t,e){var i;if(!this._linked)throw new Error(\"Cannot set uniform when program has no code\");const s=null!==(i=this._locations.get(t))&&void 0!==i?i:-1;if(s<0)this._known_invalid.has(t)||(this._known_invalid.add(t),console.log(`\"Variable ${t} is not an active texture`));else{this._unset_variables.has(t)&&this._unset_variables.delete(t),this.activate();{let i=this._samplers.size;this._samplers.has(t)&&(i=this._samplers.get(t)[2]),this._samplers.set(t,[e._target,e.handle,i]),this.gl.uniform1i(s,i)}}}set_uniform(t,e,i){var s;if(!this._linked)throw new Error(\"Cannot set uniform when program has no code\");const a=null!==(s=this._locations.get(t))&&void 0!==s?s:-1;if(a<0)return void(this._known_invalid.has(t)||(this._known_invalid.add(t),console.log(`Variable ${t} is not an active uniform`)));this._unset_variables.has(t)&&this._unset_variables.delete(t);let r=1;if(!e.startsWith(\"mat\")){const t=\"int\"==e||\"bool\"==e?\"float\":e.replace(/^ib/,\"\");r=Math.floor(i.length/this.ATYPEINFO[t][0])}if(r>1)for(let e=0;e<r;e+=1)if(this._unset_variables.has(`${t}[${e}]`)){const i=`${t}[${e}]`;this._unset_variables.has(i)&&this._unset_variables.delete(i)}const n=this.UTYPEMAP[e];this.activate(),e.startsWith(\"mat\")?this.gl[n](a,!1,i):this.gl[n](a,i)}set_attribute(t,e,i,s=0,a=0,n=!1){var o;if(!this._linked)throw new Error(\"Cannot set attribute when program has no code\");const h=null!==(o=this._locations.get(t))&&void 0!==o?o:-1;if(h<0)this._known_invalid.has(t)||(this._known_invalid.add(t),i instanceof r.VertexBuffer&&a>0||console.log(`Variable ${t} is not an active attribute`));else if(this._unset_variables.has(t)&&this._unset_variables.delete(t),this.activate(),i instanceof r.VertexBuffer){const[r,o]=this.ATYPEINFO[e],l=\"vertexAttribPointer\",_=[r,o,n,s,a];this._attributes.set(t,[i.handle,h,l,_])}else{const s=this.ATYPEMAP[e];this._attributes.set(t,[null,h,s,i])}}_pre_draw(){this.activate();for(const[t,e,i]of this._samplers.values())this.gl.activeTexture(this.gl.TEXTURE0+i),this.gl.bindTexture(t,e);for(const[t,e,i,s]of this._attributes.values())null!=t?(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,t),this.gl.enableVertexAttribArray(e),this.gl[i].apply(this.gl,[e,...s])):(this.gl.bindBuffer(this.gl.ARRAY_BUFFER,null),this.gl.disableVertexAttribArray(e),this.gl[i].apply(this.gl,[e,...s]));this._validated||(this._validated=!0,this._validate())}_validate(){if(this._unset_variables.size&&console.log(`Program has unset variables: ${this._unset_variables}`),this.gl.validateProgram(this.handle),!this.gl.getProgramParameter(this.handle,this.gl.VALIDATE_STATUS))throw console.log(this.gl.getProgramInfoLog(this.handle)),new Error(\"Program validation error\")}draw(t,e){if(!this._linked)throw new Error(\"Cannot draw program if code has not been set\");if(e instanceof r.IndexBuffer){this._pre_draw(),e.activate();const i=e.buffer_size/2,s=this.gl.UNSIGNED_SHORT;this.gl.drawElements(t,i,s,0),e.deactivate()}else{const[i,s]=e;0!=s&&(this._pre_draw(),this.gl.drawArrays(t,i,s))}}}i.Program=n,n.__name__=\"Program\"},\n function _(t,e,s,i,a){i();class r{constructor(t){this.gl=t,this._usage=35048,this.buffer_size=0,this.handle=this.gl.createBuffer()}delete(){this.gl.deleteBuffer(this.handle)}activate(){this.gl.bindBuffer(this._target,this.handle)}deactivate(){this.gl.bindBuffer(this._target,null)}set_size(t){t!=this.buffer_size&&(this.activate(),this.gl.bufferData(this._target,t,this._usage),this.buffer_size=t)}set_data(t,e){this.activate(),this.gl.bufferSubData(this._target,t,e)}}s.Buffer=r,r.__name__=\"Buffer\";class f extends r{constructor(){super(...arguments),this._target=34962}}s.VertexBuffer=f,f.__name__=\"VertexBuffer\";class h extends r{constructor(){super(...arguments),this._target=34963}}s.IndexBuffer=h,h.__name__=\"IndexBuffer\"},\n function _(t,e,i,a,r){a();const s=t(11);class h{constructor(t){this.gl=t,this._target=3553,this._types={Int8Array:5120,Uint8Array:5121,Int16Array:5122,Uint16Array:5123,Int32Array:5124,Uint32Array:5125,Float32Array:5126},this.handle=this.gl.createTexture()}delete(){this.gl.deleteTexture(this.handle)}activate(){this.gl.bindTexture(this._target,this.handle)}deactivate(){this.gl.bindTexture(this._target,0)}_get_alignment(t){const e=[4,8,2,1];for(const i of e)if(t%i==0)return i;s.unreachable()}set_wrapping(t,e){this.activate(),this.gl.texParameterf(this._target,this.gl.TEXTURE_WRAP_S,t),this.gl.texParameterf(this._target,this.gl.TEXTURE_WRAP_T,e)}set_interpolation(t,e){this.activate(),this.gl.texParameterf(this._target,this.gl.TEXTURE_MIN_FILTER,t),this.gl.texParameterf(this._target,this.gl.TEXTURE_MAG_FILTER,e)}set_size([t,e],i){var a,r,s;t==(null===(a=this._shape_format)||void 0===a?void 0:a.width)&&e==(null===(r=this._shape_format)||void 0===r?void 0:r.height)&&i==(null===(s=this._shape_format)||void 0===s?void 0:s.format)||(this._shape_format={width:t,height:e,format:i},this.activate(),this.gl.texImage2D(this._target,0,i,t,e,0,i,this.gl.UNSIGNED_BYTE,null))}set_data(t,[e,i],a){this.activate();const{format:r}=this._shape_format,[s,h]=t,l=this._types[a.constructor.name];if(null==l)throw new Error(`Type ${a.constructor.name} not allowed for texture`);const _=this._get_alignment(e);4!=_&&this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,_),this.gl.texSubImage2D(this._target,0,s,h,e,i,r,l,a),4!=_&&this.gl.pixelStorei(this.gl.UNPACK_ALIGNMENT,4)}}i.Texture2d=h,h.__name__=\"Texture2d\"},\n function _(e,t,s,i,h){i();class a{constructor(e,t){this.gl=e,this.glyph=t,this.nvertices=0,this.size_changed=!1,this.data_changed=!1,this.visuals_changed=!1}set_data_changed(){const{data_size:e}=this.glyph;e!=this.nvertices&&(this.nvertices=e,this.size_changed=!0),this.data_changed=!0}set_visuals_changed(){this.visuals_changed=!0}render(e,t,s){if(0==t.length)return!0;const{width:i,height:h}=this.glyph.renderer.plot_view.canvas_view.webgl.canvas,a={pixel_ratio:this.glyph.renderer.plot_view.canvas_view.pixel_ratio,width:i,height:h};return this.draw(t,s,a),!0}}s.BaseGLGlyph=a,a.__name__=\"BaseGLGlyph\"},\n function _(n,e,t,a,i){a();t.default=\"\\nprecision mediump float;\\n\\nconst float PI = 3.14159265358979323846264;\\nconst float THETA = 15.0 * 3.14159265358979323846264/180.0;\\n\\nuniform float u_pixel_ratio;\\nuniform vec2 u_canvas_size, u_offset;\\nuniform vec2 u_scale_aspect;\\nuniform float u_scale_length;\\n\\nuniform vec4 u_color;\\nuniform float u_antialias;\\nuniform float u_length;\\nuniform float u_linewidth;\\nuniform float u_dash_index;\\nuniform float u_closed;\\n\\nattribute vec2 a_position;\\nattribute vec4 a_tangents;\\nattribute vec2 a_segment;\\nattribute vec2 a_angles;\\nattribute vec2 a_texcoord;\\n\\nvarying vec4 v_color;\\nvarying vec2 v_segment;\\nvarying vec2 v_angles;\\nvarying vec2 v_texcoord;\\nvarying vec2 v_miter;\\nvarying float v_length;\\nvarying float v_linewidth;\\n\\nfloat cross(in vec2 v1, in vec2 v2)\\n{\\n return v1.x*v2.y - v1.y*v2.x;\\n}\\n\\nfloat signed_distance(in vec2 v1, in vec2 v2, in vec2 v3)\\n{\\n return cross(v2-v1,v1-v3) / length(v2-v1);\\n}\\n\\nvoid rotate( in vec2 v, in float alpha, out vec2 result )\\n{\\n float c = cos(alpha);\\n float s = sin(alpha);\\n result = vec2( c*v.x - s*v.y,\\n s*v.x + c*v.y );\\n}\\n\\nvoid main()\\n{\\n bool closed = (u_closed > 0.0);\\n\\n // Attributes and uniforms to varyings\\n v_color = u_color;\\n v_linewidth = u_linewidth;\\n v_segment = a_segment * u_scale_length;\\n v_length = u_length * u_scale_length;\\n\\n // Scale to map to pixel coordinates. The original algorithm from the paper\\n // assumed isotropic scale. We obviously do not have this.\\n vec2 abs_scale_aspect = abs(u_scale_aspect);\\n vec2 abs_scale = u_scale_length * abs_scale_aspect;\\n\\n // Correct angles for aspect ratio\\n vec2 av;\\n av = vec2(1.0, tan(a_angles.x)) / abs_scale_aspect;\\n v_angles.x = atan(av.y, av.x);\\n av = vec2(1.0, tan(a_angles.y)) / abs_scale_aspect;\\n v_angles.y = atan(av.y, av.x);\\n\\n // Thickness below 1 pixel are represented using a 1 pixel thickness\\n // and a modified alpha\\n v_color.a = min(v_linewidth, v_color.a);\\n v_linewidth = max(v_linewidth, 1.0);\\n\\n // If color is fully transparent we just will discard the fragment anyway\\n if( v_color.a <= 0.0 ) {\\n gl_Position = vec4(0.0,0.0,0.0,1.0);\\n return;\\n }\\n\\n // This is the actual half width of the line\\n float w = ceil(u_antialias+v_linewidth)/2.0;\\n\\n vec2 position = a_position;\\n\\n vec2 t1 = normalize(a_tangents.xy * abs_scale_aspect); // note the scaling for aspect ratio here\\n vec2 t2 = normalize(a_tangents.zw * abs_scale_aspect);\\n float u = a_texcoord.x;\\n float v = a_texcoord.y;\\n vec2 o1 = vec2( +t1.y, -t1.x);\\n vec2 o2 = vec2( +t2.y, -t2.x);\\n\\n // This is a join\\n // ----------------------------------------------------------------\\n if( t1 != t2 ) {\\n float angle = atan (t1.x*t2.y-t1.y*t2.x, t1.x*t2.x+t1.y*t2.y); // Angle needs recalculation for some reason\\n vec2 t = normalize(t1+t2);\\n vec2 o = vec2( + t.y, - t.x);\\n\\n if ( u_dash_index > 0.0 )\\n {\\n // Broken angle\\n // ----------------------------------------------------------------\\n if( (abs(angle) > THETA) ) {\\n position += v * w * o / cos(angle/2.0);\\n float s = sign(angle);\\n if( angle < 0.0 ) {\\n if( u == +1.0 ) {\\n u = v_segment.y + v * w * tan(angle/2.0);\\n if( v == 1.0 ) {\\n position -= 2.0 * w * t1 / sin(angle);\\n u -= 2.0 * w / sin(angle);\\n }\\n } else {\\n u = v_segment.x - v * w * tan(angle/2.0);\\n if( v == 1.0 ) {\\n position += 2.0 * w * t2 / sin(angle);\\n u += 2.0*w / sin(angle);\\n }\\n }\\n } else {\\n if( u == +1.0 ) {\\n u = v_segment.y + v * w * tan(angle/2.0);\\n if( v == -1.0 ) {\\n position += 2.0 * w * t1 / sin(angle);\\n u += 2.0 * w / sin(angle);\\n }\\n } else {\\n u = v_segment.x - v * w * tan(angle/2.0);\\n if( v == -1.0 ) {\\n position -= 2.0 * w * t2 / sin(angle);\\n u -= 2.0*w / sin(angle);\\n }\\n }\\n }\\n // Continuous angle\\n // ------------------------------------------------------------\\n } else {\\n position += v * w * o / cos(angle/2.0);\\n if( u == +1.0 ) u = v_segment.y;\\n else u = v_segment.x;\\n }\\n }\\n\\n // Solid line\\n // --------------------------------------------------------------------\\n else\\n {\\n position.xy += v * w * o / cos(angle/2.0);\\n if( angle < 0.0 ) {\\n if( u == +1.0 ) {\\n u = v_segment.y + v * w * tan(angle/2.0);\\n } else {\\n u = v_segment.x - v * w * tan(angle/2.0);\\n }\\n } else {\\n if( u == +1.0 ) {\\n u = v_segment.y + v * w * tan(angle/2.0);\\n } else {\\n u = v_segment.x - v * w * tan(angle/2.0);\\n }\\n }\\n }\\n\\n // This is a line start or end (t1 == t2)\\n // ------------------------------------------------------------------------\\n } else {\\n position += v * w * o1;\\n if( u == -1.0 ) {\\n u = v_segment.x - w;\\n position -= w * t1;\\n } else {\\n u = v_segment.y + w;\\n position += w * t2;\\n }\\n }\\n\\n // Miter distance\\n // ------------------------------------------------------------------------\\n vec2 t;\\n vec2 curr = a_position * abs_scale;\\n if( a_texcoord.x < 0.0 ) {\\n vec2 next = curr + t2*(v_segment.y-v_segment.x);\\n\\n rotate( t1, +v_angles.x/2.0, t);\\n v_miter.x = signed_distance(curr, curr+t, position);\\n\\n rotate( t2, +v_angles.y/2.0, t);\\n v_miter.y = signed_distance(next, next+t, position);\\n } else {\\n vec2 prev = curr - t1*(v_segment.y-v_segment.x);\\n\\n rotate( t1, -v_angles.x/2.0,t);\\n v_miter.x = signed_distance(prev, prev+t, position);\\n\\n rotate( t2, -v_angles.y/2.0,t);\\n v_miter.y = signed_distance(curr, curr+t, position);\\n }\\n\\n if (!closed && v_segment.x <= 0.0) {\\n v_miter.x = 1e10;\\n }\\n if (!closed && v_segment.y >= v_length)\\n {\\n v_miter.y = 1e10;\\n }\\n\\n v_texcoord = vec2( u, v*w );\\n\\n // Calculate position in device coordinates. Note that we\\n // already scaled with abs scale above.\\n vec2 normpos = position * sign(u_scale_aspect);\\n normpos += 0.5; // make up for Bokeh's offset\\n normpos /= u_canvas_size / u_pixel_ratio; // in 0..1\\n gl_Position = vec4(normpos*2.0-1.0, 0.0, 1.0);\\n gl_Position.y *= -1.0;\\n}\\n\"},\n function _(n,t,e,s,a){s();e.default=\"\\nprecision mediump float;\\n\\nconst float PI = 3.14159265358979323846264;\\nconst float THETA = 15.0 * 3.14159265358979323846264/180.0;\\n\\nuniform sampler2D u_dash_atlas;\\n\\nuniform vec2 u_linecaps;\\nuniform float u_miter_limit;\\nuniform float u_linejoin;\\nuniform float u_antialias;\\nuniform float u_dash_phase;\\nuniform float u_dash_period;\\nuniform float u_dash_index;\\nuniform vec2 u_dash_caps;\\nuniform float u_closed;\\n\\nvarying vec4 v_color;\\nvarying vec2 v_segment;\\nvarying vec2 v_angles;\\nvarying vec2 v_texcoord;\\nvarying vec2 v_miter;\\nvarying float v_length;\\nvarying float v_linewidth;\\n\\n// Compute distance to cap ----------------------------------------------------\\nfloat cap( int type, float dx, float dy, float t, float linewidth )\\n{\\n float d = 0.0;\\n dx = abs(dx);\\n dy = abs(dy);\\n if (type == 0) discard; // None\\n else if (type == 1) d = sqrt(dx*dx+dy*dy); // Round\\n else if (type == 3) d = (dx+abs(dy)); // Triangle in\\n else if (type == 2) d = max(abs(dy),(t+dx-abs(dy))); // Triangle out\\n else if (type == 4) d = max(dx,dy); // Square\\n else if (type == 5) d = max(dx+t,dy); // Butt\\n return d;\\n}\\n\\n// Compute distance to join -------------------------------------------------\\nfloat join( in int type, in float d, in vec2 segment, in vec2 texcoord, in vec2 miter,\\n in float linewidth )\\n{\\n // texcoord.x is distance from start\\n // texcoord.y is distance from centerline\\n // segment.x and y indicate the limits (as for texcoord.x) for this segment\\n\\n float dx = texcoord.x;\\n\\n // Round join\\n if( type == 1 ) {\\n if (dx < segment.x) {\\n d = max(d,length( texcoord - vec2(segment.x,0.0)));\\n //d = length( texcoord - vec2(segment.x,0.0));\\n } else if (dx > segment.y) {\\n d = max(d,length( texcoord - vec2(segment.y,0.0)));\\n //d = length( texcoord - vec2(segment.y,0.0));\\n }\\n }\\n // Bevel join\\n else if ( type == 2 ) {\\n if (dx < segment.x) {\\n vec2 x = texcoord - vec2(segment.x,0.0);\\n d = max(d, max(abs(x.x), abs(x.y)));\\n\\n } else if (dx > segment.y) {\\n vec2 x = texcoord - vec2(segment.y,0.0);\\n d = max(d, max(abs(x.x), abs(x.y)));\\n }\\n /* Original code for bevel which does not work for us\\n if( (dx < segment.x) || (dx > segment.y) )\\n d = max(d, min(abs(x.x),abs(x.y)));\\n */\\n }\\n\\n return d;\\n}\\n\\nvoid main()\\n{\\n // If color is fully transparent we just discard the fragment\\n if( v_color.a <= 0.0 ) {\\n discard;\\n }\\n\\n // Test if dash pattern is the solid one (0)\\n bool solid = (u_dash_index == 0.0);\\n\\n // Test if path is closed\\n bool closed = (u_closed > 0.0);\\n\\n vec4 color = v_color;\\n float dx = v_texcoord.x;\\n float dy = v_texcoord.y;\\n float t = v_linewidth/2.0-u_antialias;\\n float width = 1.0; //v_linewidth; original code had dashes scale with line width, we do not\\n float d = 0.0;\\n\\n vec2 linecaps = u_linecaps;\\n vec2 dash_caps = u_dash_caps;\\n float line_start = 0.0;\\n float line_stop = v_length;\\n\\n // Apply miter limit; fragments too far into the miter are simply discarded\\n if( (dx < v_segment.x) || (dx > v_segment.y) ) {\\n float into_miter = max(v_segment.x - dx, dx - v_segment.y);\\n if (into_miter > u_miter_limit*v_linewidth/2.0)\\n discard;\\n }\\n\\n // Solid line --------------------------------------------------------------\\n if( solid ) {\\n d = abs(dy);\\n if( (!closed) && (dx < line_start) ) {\\n d = cap( int(u_linecaps.x), abs(dx), abs(dy), t, v_linewidth );\\n }\\n else if( (!closed) && (dx > line_stop) ) {\\n d = cap( int(u_linecaps.y), abs(dx)-line_stop, abs(dy), t, v_linewidth );\\n }\\n else {\\n d = join( int(u_linejoin), abs(dy), v_segment, v_texcoord, v_miter, v_linewidth );\\n }\\n\\n // Dash line --------------------------------------------------------------\\n } else {\\n float segment_start = v_segment.x;\\n float segment_stop = v_segment.y;\\n float segment_center= (segment_start+segment_stop)/2.0;\\n float freq = u_dash_period*width;\\n float u = mod( dx + u_dash_phase*width, freq);\\n vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0; // conversion to int-like\\n float dash_center= tex.x * width;\\n float dash_type = tex.y;\\n float _start = tex.z * width;\\n float _stop = tex.a * width;\\n float dash_start = dx - u + _start;\\n float dash_stop = dx - u + _stop;\\n\\n // Compute extents of the first dash (the one relative to v_segment.x)\\n // Note: this could be computed in the vertex shader\\n if( (dash_stop < segment_start) && (dash_caps.x != 5.0) ) {\\n float u = mod(segment_start + u_dash_phase*width, freq);\\n vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0; // conversion to int-like\\n dash_center= tex.x * width;\\n //dash_type = tex.y;\\n float _start = tex.z * width;\\n float _stop = tex.a * width;\\n dash_start = segment_start - u + _start;\\n dash_stop = segment_start - u + _stop;\\n }\\n\\n // Compute extents of the last dash (the one relatives to v_segment.y)\\n // Note: This could be computed in the vertex shader\\n else if( (dash_start > segment_stop) && (dash_caps.y != 5.0) ) {\\n float u = mod(segment_stop + u_dash_phase*width, freq);\\n vec4 tex = texture2D(u_dash_atlas, vec2(u/freq, u_dash_index)) * 255.0 -10.0; // conversion to int-like\\n dash_center= tex.x * width;\\n //dash_type = tex.y;\\n float _start = tex.z * width;\\n float _stop = tex.a * width;\\n dash_start = segment_stop - u + _start;\\n dash_stop = segment_stop - u + _stop;\\n }\\n\\n // This test if the we are dealing with a discontinuous angle\\n bool discontinuous = ((dx < segment_center) && abs(v_angles.x) > THETA) ||\\n ((dx >= segment_center) && abs(v_angles.y) > THETA);\\n //if( dx < line_start) discontinuous = false;\\n //if( dx > line_stop) discontinuous = false;\\n\\n float d_join = join( int(u_linejoin), abs(dy),\\n v_segment, v_texcoord, v_miter, v_linewidth );\\n\\n // When path is closed, we do not have room for linecaps, so we make room\\n // by shortening the total length\\n if (closed) {\\n line_start += v_linewidth/2.0;\\n line_stop -= v_linewidth/2.0;\\n }\\n\\n // We also need to take antialias area into account\\n //line_start += u_antialias;\\n //line_stop -= u_antialias;\\n\\n // Check is dash stop is before line start\\n if( dash_stop <= line_start ) {\\n discard;\\n }\\n // Check is dash start is beyond line stop\\n if( dash_start >= line_stop ) {\\n discard;\\n }\\n\\n // Check if current dash start is beyond segment stop\\n if( discontinuous ) {\\n // Dash start is beyond segment, we discard\\n if( (dash_start > segment_stop) ) {\\n discard;\\n //gl_FragColor = vec4(1.0,0.0,0.0,.25); return;\\n }\\n\\n // Dash stop is before segment, we discard\\n if( (dash_stop < segment_start) ) {\\n discard; //gl_FragColor = vec4(0.0,1.0,0.0,.25); return;\\n }\\n\\n // Special case for round caps (nicer with this)\\n if( dash_caps.x == 1.0 ) {\\n if( (u > _stop) && (dash_stop > segment_stop ) && (abs(v_angles.y) < PI/2.0)) {\\n discard;\\n }\\n }\\n\\n // Special case for round caps (nicer with this)\\n if( dash_caps.y == 1.0 ) {\\n if( (u < _start) && (dash_start < segment_start ) && (abs(v_angles.x) < PI/2.0)) {\\n discard;\\n }\\n }\\n\\n // Special case for triangle caps (in & out) and square\\n // We make sure the cap stop at crossing frontier\\n if( (dash_caps.x != 1.0) && (dash_caps.x != 5.0) ) {\\n if( (dash_start < segment_start ) && (abs(v_angles.x) < PI/2.0) ) {\\n float a = v_angles.x/2.0;\\n float x = (segment_start-dx)*cos(a) - dy*sin(a);\\n float y = (segment_start-dx)*sin(a) + dy*cos(a);\\n if( x > 0.0 ) discard;\\n // We transform the cap into square to avoid holes\\n dash_caps.x = 4.0;\\n }\\n }\\n\\n // Special case for triangle caps (in & out) and square\\n // We make sure the cap stop at crossing frontier\\n if( (dash_caps.y != 1.0) && (dash_caps.y != 5.0) ) {\\n if( (dash_stop > segment_stop ) && (abs(v_angles.y) < PI/2.0) ) {\\n float a = v_angles.y/2.0;\\n float x = (dx-segment_stop)*cos(a) - dy*sin(a);\\n float y = (dx-segment_stop)*sin(a) + dy*cos(a);\\n if( x > 0.0 ) discard;\\n // We transform the caps into square to avoid holes\\n dash_caps.y = 4.0;\\n }\\n }\\n }\\n\\n // Line cap at start\\n if( (dx < line_start) && (dash_start < line_start) && (dash_stop > line_start) ) {\\n d = cap( int(linecaps.x), dx-line_start, dy, t, v_linewidth);\\n }\\n // Line cap at stop\\n else if( (dx > line_stop) && (dash_stop > line_stop) && (dash_start < line_stop) ) {\\n d = cap( int(linecaps.y), dx-line_stop, dy, t, v_linewidth);\\n }\\n // Dash cap left - dash_type = -1, 0 or 1, but there may be roundoff errors\\n else if( dash_type < -0.5 ) {\\n d = cap( int(dash_caps.y), abs(u-dash_center), dy, t, v_linewidth);\\n if( (dx > line_start) && (dx < line_stop) )\\n d = max(d,d_join);\\n }\\n // Dash cap right\\n else if( dash_type > 0.5 ) {\\n d = cap( int(dash_caps.x), abs(dash_center-u), dy, t, v_linewidth);\\n if( (dx > line_start) && (dx < line_stop) )\\n d = max(d,d_join);\\n }\\n // Dash body (plain)\\n else {// if( dash_type > -0.5 && dash_type < 0.5) {\\n d = abs(dy);\\n }\\n\\n // Line join\\n if( (dx > line_start) && (dx < line_stop)) {\\n if( (dx <= segment_start) && (dash_start <= segment_start)\\n && (dash_stop >= segment_start) ) {\\n d = d_join;\\n // Antialias at outer border\\n float angle = PI/2.+v_angles.x;\\n float f = abs( (segment_start - dx)*cos(angle) - dy*sin(angle));\\n d = max(f,d);\\n }\\n else if( (dx > segment_stop) && (dash_start <= segment_stop)\\n && (dash_stop >= segment_stop) ) {\\n d = d_join;\\n // Antialias at outer border\\n float angle = PI/2.+v_angles.y;\\n float f = abs((dx - segment_stop)*cos(angle) - dy*sin(angle));\\n d = max(f,d);\\n }\\n else if( dx < (segment_start - v_linewidth/2.)) {\\n discard;\\n }\\n else if( dx > (segment_stop + v_linewidth/2.)) {\\n discard;\\n }\\n }\\n else if( dx < (segment_start - v_linewidth/2.)) {\\n discard;\\n }\\n else if( dx > (segment_stop + v_linewidth/2.)) {\\n discard;\\n }\\n }\\n\\n // Distance to border ------------------------------------------------------\\n d = d - t;\\n if( d < 0.0 ) {\\n gl_FragColor = color;\\n } else {\\n d /= u_antialias;\\n gl_FragColor = vec4(color.rgb, exp(-d*d)*color.a);\\n }\\n}\\n\"},\n function _(i,t,s,e,l){e();const a=i(1),n=i(64),_=i(106),o=a.__importStar(i(107)),h=a.__importStar(i(48)),c=i(59);class r extends n.XYGlyphView{_inner_loop(i,t,s,e,l){for(const a of t){const t=s[a],n=e[a];0!=a?isNaN(t+n)?(i.closePath(),l.apply(i),i.beginPath()):i.lineTo(t,n):(i.beginPath(),i.moveTo(t,n))}i.closePath(),l.call(i)}_render(i,t,s){const{sx:e,sy:l}=null!=s?s:this;this.visuals.fill.doit&&(this.visuals.fill.set_value(i),this._inner_loop(i,t,e,l,i.fill)),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(i),this._inner_loop(i,t,e,l,i.fill)),this.visuals.line.doit&&(this.visuals.line.set_value(i),this._inner_loop(i,t,e,l,i.stroke))}draw_legend_for_index(i,t,s){_.generic_area_scalar_legend(this.visuals,i,t)}_hit_point(i){const t=new c.Selection;return o.point_in_poly(i.sx,i.sy,this.sx,this.sy)&&(t.add_to_selected_glyphs(this.model),t.view=this),t}}s.PatchView=r,r.__name__=\"PatchView\";class p extends n.XYGlyph{constructor(i){super(i)}static init_Patch(){this.prototype.default_view=r,this.mixins([h.LineScalar,h.FillScalar,h.HatchScalar])}}s.Patch=p,p.__name__=\"Patch\",p.init_Patch()},\n function _(t,e,s,i,n){i();const a=t(1),r=t(24),h=t(118),_=a.__importStar(t(107)),l=a.__importStar(t(18)),o=t(59);class c extends h.AreaView{_index_data(t){const{min:e,max:s}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._x1[n],a=this._x2[n],r=this._y[n];isNaN(i+a+r)||!isFinite(i+a+r)?t.add_empty():t.add(e(i,a),r,s(i,a),r)}}_inner(t,e,s,i,n){t.beginPath();for(let s=0,n=e.length;s<n;s++)t.lineTo(e[s],i[s]);for(let e=s.length-1;e>=0;e--)t.lineTo(s[e],i[e]);t.closePath(),n.call(t)}_render(t,e,s){const{sx1:i,sx2:n,sy:a}=null!=s?s:this;this.visuals.fill.doit&&(this.visuals.fill.set_value(t),this._inner(t,i,n,a,t.fill)),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(t),this._inner(t,i,n,a,t.fill))}_hit_point(t){const e=this.sy.length,s=new r.ScreenArray(2*e),i=new r.ScreenArray(2*e);for(let t=0,n=e;t<n;t++)s[t]=this.sx1[t],i[t]=this.sy[t],s[e+t]=this.sx2[e-t-1],i[e+t]=this.sy[e-t-1];const n=new o.Selection;return _.point_in_poly(t.sx,t.sy,s,i)&&(n.add_to_selected_glyphs(this.model),n.view=this),n}scenterxy(t){return[(this.sx1[t]+this.sx2[t])/2,this.sy[t]]}_map_data(){this.sx1=this.renderer.xscale.v_compute(this._x1),this.sx2=this.renderer.xscale.v_compute(this._x2),this.sy=this.renderer.yscale.v_compute(this._y)}}s.HAreaView=c,c.__name__=\"HAreaView\";class d extends h.Area{constructor(t){super(t)}static init_HArea(){this.prototype.default_view=c,this.define((({})=>({x1:[l.XCoordinateSpec,{field:\"x1\"}],x2:[l.XCoordinateSpec,{field:\"x2\"}],y:[l.YCoordinateSpec,{field:\"y\"}]})))}}s.HArea=d,d.__name__=\"HArea\",d.init_HArea()},\n function _(e,a,_,i,r){i();const s=e(1),n=e(98),t=e(106),c=s.__importStar(e(48));class l extends n.GlyphView{draw_legend_for_index(e,a,_){t.generic_area_scalar_legend(this.visuals,e,a)}}_.AreaView=l,l.__name__=\"AreaView\";class d extends n.Glyph{constructor(e){super(e)}static init_Area(){this.mixins([c.FillScalar,c.HatchScalar])}}_.Area=d,d.__name__=\"Area\",d.init_Area()},\n function _(t,e,s,i,n){i();const a=t(1),r=t(24),h=t(118),_=a.__importStar(t(107)),l=a.__importStar(t(18)),o=t(59);class c extends h.AreaView{_index_data(t){const{min:e,max:s}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._x[n],a=this._y1[n],r=this._y2[n];isNaN(i+a+r)||!isFinite(i+a+r)?t.add_empty():t.add(i,e(a,r),i,s(a,r))}}_inner(t,e,s,i,n){t.beginPath();for(let i=0,n=s.length;i<n;i++)t.lineTo(e[i],s[i]);for(let s=i.length-1;s>=0;s--)t.lineTo(e[s],i[s]);t.closePath(),n.call(t)}_render(t,e,s){const{sx:i,sy1:n,sy2:a}=null!=s?s:this;this.visuals.fill.doit&&(this.visuals.fill.set_value(t),this._inner(t,i,n,a,t.fill)),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(t),this._inner(t,i,n,a,t.fill))}scenterxy(t){return[this.sx[t],(this.sy1[t]+this.sy2[t])/2]}_hit_point(t){const e=this.sx.length,s=new r.ScreenArray(2*e),i=new r.ScreenArray(2*e);for(let t=0,n=e;t<n;t++)s[t]=this.sx[t],i[t]=this.sy1[t],s[e+t]=this.sx[e-t-1],i[e+t]=this.sy2[e-t-1];const n=new o.Selection;return _.point_in_poly(t.sx,t.sy,s,i)&&(n.add_to_selected_glyphs(this.model),n.view=this),n}_map_data(){this.sx=this.renderer.xscale.v_compute(this._x),this.sy1=this.renderer.yscale.v_compute(this._y1),this.sy2=this.renderer.yscale.v_compute(this._y2)}}s.VAreaView=c,c.__name__=\"VAreaView\";class d extends h.Area{constructor(t){super(t)}static init_VArea(){this.prototype.default_view=c,this.define((({})=>({x:[l.XCoordinateSpec,{field:\"x\"}],y1:[l.YCoordinateSpec,{field:\"y1\"}],y2:[l.YCoordinateSpec,{field:\"y2\"}]})))}}s.VArea=d,d.__name__=\"VArea\",d.init_VArea()},\n function _(i,e,s,t,n){t();const c=i(53),o=i(59),r=i(24),a=i(121),u=i(57);class _ extends c.Model{constructor(i){super(i)}static init_CDSView(){this.define((({Array:i,Ref:e})=>({filters:[i(e(a.Filter)),[]],source:[e(u.ColumnarDataSource)]}))),this.internal((({Int:i,Dict:e,Ref:s,Nullable:t})=>({indices:[s(r.Indices)],indices_map:[e(i),{}],masked:[t(s(r.Indices)),null]})))}initialize(){super.initialize(),this.compute_indices()}connect_signals(){super.connect_signals(),this.connect(this.properties.filters.change,(()=>this.compute_indices()));const i=()=>{const i=()=>this.compute_indices();null!=this.source&&(this.connect(this.source.change,i),this.source instanceof u.ColumnarDataSource&&(this.connect(this.source.streaming,i),this.connect(this.source.patching,i)))};let e=null!=this.source;e?i():this.connect(this.properties.source.change,(()=>{e||(i(),e=!0)}))}compute_indices(){var i;const{source:e}=this;if(null==e)return;const s=null!==(i=e.get_length())&&void 0!==i?i:1,t=r.Indices.all_set(s);for(const i of this.filters)t.intersect(i.compute_indices(e));this.indices=t,this._indices=[...t],this.indices_map_to_subset()}indices_map_to_subset(){this.indices_map={};for(let i=0;i<this._indices.length;i++)this.indices_map[this._indices[i]]=i}convert_selection_from_subset(i){const e=i.indices.map((i=>this._indices[i]));return new o.Selection(Object.assign(Object.assign({},i.attributes),{indices:e}))}convert_selection_to_subset(i){const e=i.indices.map((i=>this.indices_map[i]));return new o.Selection(Object.assign(Object.assign({},i.attributes),{indices:e}))}convert_indices_from_subset(i){return i.map((i=>this._indices[i]))}}s.CDSView=_,_.__name__=\"CDSView\",_.init_CDSView()},\n function _(e,t,n,s,c){s();const o=e(53);class r extends o.Model{constructor(e){super(e)}}n.Filter=r,r.__name__=\"Filter\"},\n function _(n,e,t,i,o){i();const s=n(9);async function c(n,e,t){const i=new n(Object.assign(Object.assign({},t),{model:e}));return i.initialize(),await i.lazy_initialize(),i}t.build_view=async function(n,e={parent:null},t=(n=>n.default_view)){const i=await c(t(n),n,e);return i.connect_signals(),i},t.build_views=async function(n,e,t={parent:null},i=(n=>n.default_view)){const o=s.difference([...n.keys()],e);for(const e of o)n.get(e).remove(),n.delete(e);const a=[],f=e.filter((e=>!n.has(e)));for(const e of f){const o=await c(i(e),e,t);n.set(e,o),a.push(o)}for(const n of a)n.connect_signals();return a},t.remove_views=function(n){for(const[e,t]of n)t.remove(),n.delete(e)}},\n function _(e,r,n,t,i){t();const s=e(62),o=e(61),l=e(124),d=e(125),a=e(126),p=e(122),_=e(64),h=e(127),c=e(128),u=e(11);class y extends s.DataRendererView{get glyph_view(){return this.node_view.glyph}async lazy_initialize(){await super.lazy_initialize();const e=this.model;let r=null,n=null;const t=new class extends l.Expression{_v_compute(n){u.assert(null==r);const[t]=r=e.layout_provider.get_edge_coordinates(n);return t}},i=new class extends l.Expression{_v_compute(e){u.assert(null!=r);const[,n]=r;return r=null,n}},s=new class extends l.Expression{_v_compute(r){u.assert(null==n);const[t]=n=e.layout_provider.get_node_coordinates(r);return t}},o=new class extends l.Expression{_v_compute(e){u.assert(null!=n);const[,r]=n;return n=null,r}},{edge_renderer:d,node_renderer:a}=this.model;if(!(d.glyph instanceof h.MultiLine||d.glyph instanceof c.Patches))throw new Error(`${this}.edge_renderer.glyph must be a MultiLine glyph`);if(!(a.glyph instanceof _.XYGlyph))throw new Error(`${this}.node_renderer.glyph must be a XYGlyph glyph`);d.glyph.properties.xs.internal=!0,d.glyph.properties.ys.internal=!0,a.glyph.properties.x.internal=!0,a.glyph.properties.y.internal=!0,d.glyph.xs={expr:t},d.glyph.ys={expr:i},a.glyph.x={expr:s},a.glyph.y={expr:o};const{parent:y}=this;this.edge_view=await p.build_view(d,{parent:y}),this.node_view=await p.build_view(a,{parent:y})}connect_signals(){super.connect_signals(),this.connect(this.model.layout_provider.change,(()=>{this.edge_view.set_data(),this.node_view.set_data(),this.request_render()}))}remove(){this.edge_view.remove(),this.node_view.remove(),super.remove()}_render(){this.edge_view.render(),this.node_view.render()}renderer_view(e){if(e instanceof o.GlyphRenderer){if(e==this.edge_view.model)return this.edge_view;if(e==this.node_view.model)return this.node_view}return super.renderer_view(e)}}n.GraphRendererView=y,y.__name__=\"GraphRendererView\";class g extends s.DataRenderer{constructor(e){super(e)}static init_GraphRenderer(){this.prototype.default_view=y,this.define((({Ref:e})=>({layout_provider:[e(d.LayoutProvider)],node_renderer:[e(o.GlyphRenderer)],edge_renderer:[e(o.GlyphRenderer)],selection_policy:[e(a.GraphHitTestPolicy),()=>new a.NodesOnly],inspection_policy:[e(a.GraphHitTestPolicy),()=>new a.NodesOnly]})))}get_selection_manager(){return this.node_renderer.data_source.selection_manager}}n.GraphRenderer=g,g.__name__=\"GraphRenderer\",g.init_GraphRenderer()},\n function _(e,t,s,n,i){n();const c=e(53);class l extends c.Model{constructor(e){super(e)}initialize(){super.initialize(),this._connected=new Set,this._result=new Map}v_compute(e){this._connected.has(e)||(this.connect(e.change,(()=>this._result.delete(e))),this.connect(e.patching,(()=>this._result.delete(e))),this.connect(e.streaming,(()=>this._result.delete(e))),this._connected.add(e));let t=this._result.get(e);return null==t&&(t=this._v_compute(e),this._result.set(e,t)),t}}s.Expression=l,l.__name__=\"Expression\";class h extends c.Model{constructor(e){super(e)}initialize(){super.initialize(),this._connected=new Set,this._result=new Map}compute(e){this._connected.has(e)||(this.connect(e.change,(()=>this._result.delete(e))),this.connect(e.patching,(()=>this._result.delete(e))),this.connect(e.streaming,(()=>this._result.delete(e))),this._connected.add(e));let t=this._result.get(e);return null==t&&(t=this._compute(e),this._result.set(e,t)),t}}s.ScalarExpression=h,h.__name__=\"ScalarExpression\"},\n function _(o,e,r,t,n){t();const s=o(53);class c extends s.Model{constructor(o){super(o)}}r.LayoutProvider=c,c.__name__=\"LayoutProvider\"},\n function _(e,t,d,n,s){n();const o=e(53),r=e(12),_=e(9),i=e(59);class c extends o.Model{constructor(e){super(e)}_hit_test(e,t,d){if(!t.model.visible)return null;const n=d.glyph.hit_test(e);return null==n?null:d.model.view.convert_selection_from_subset(n)}}d.GraphHitTestPolicy=c,c.__name__=\"GraphHitTestPolicy\";class a extends c{constructor(e){super(e)}hit_test(e,t){return this._hit_test(e,t,t.edge_view)}do_selection(e,t,d,n){if(null==e)return!1;const s=t.edge_renderer.data_source.selected;return s.update(e,d,n),t.edge_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,d,n,s){if(null==e)return!1;const{edge_renderer:o}=d.model,r=o.get_selection_manager().get_or_create_inspector(d.edge_view.model);return r.update(e,n,s),d.edge_view.model.data_source.setv({inspected:r},{silent:!0}),d.edge_view.model.data_source.inspect.emit([d.edge_view.model,{geometry:t}]),!r.is_empty()}}d.EdgesOnly=a,a.__name__=\"EdgesOnly\";class l extends c{constructor(e){super(e)}hit_test(e,t){return this._hit_test(e,t,t.node_view)}do_selection(e,t,d,n){if(null==e)return!1;const s=t.node_renderer.data_source.selected;return s.update(e,d,n),t.node_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,d,n,s){if(null==e)return!1;const{node_renderer:o}=d.model,r=o.get_selection_manager().get_or_create_inspector(d.node_view.model);return r.update(e,n,s),d.node_view.model.data_source.setv({inspected:r},{silent:!0}),d.node_view.model.data_source.inspect.emit([d.node_view.model,{geometry:t}]),!r.is_empty()}}d.NodesOnly=l,l.__name__=\"NodesOnly\";class u extends c{constructor(e){super(e)}hit_test(e,t){return this._hit_test(e,t,t.node_view)}get_linked_edges(e,t,d){let n=[];\"selection\"==d?n=e.selected.indices.map((t=>e.data.index[t])):\"inspection\"==d&&(n=e.inspected.indices.map((t=>e.data.index[t])));const s=[];for(let e=0;e<t.data.start.length;e++)(_.contains(n,t.data.start[e])||_.contains(n,t.data.end[e]))&&s.push(e);const o=new i.Selection;for(const e of s)o.multiline_indices[e]=[0];return o.indices=s,o}do_selection(e,t,d,n){if(null==e)return!1;const s=t.node_renderer.data_source.selected;s.update(e,d,n);const o=t.edge_renderer.data_source.selected,r=this.get_linked_edges(t.node_renderer.data_source,t.edge_renderer.data_source,\"selection\");return o.update(r,d,n),t.node_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,d,n,s){if(null==e)return!1;const o=d.node_view.model.data_source.selection_manager.get_or_create_inspector(d.node_view.model);o.update(e,n,s),d.node_view.model.data_source.setv({inspected:o},{silent:!0});const r=d.edge_view.model.data_source.selection_manager.get_or_create_inspector(d.edge_view.model),_=this.get_linked_edges(d.node_view.model.data_source,d.edge_view.model.data_source,\"inspection\");return r.update(_,n,s),d.edge_view.model.data_source.setv({inspected:r},{silent:!0}),d.node_view.model.data_source.inspect.emit([d.node_view.model,{geometry:t}]),!o.is_empty()}}d.NodesAndLinkedEdges=u,u.__name__=\"NodesAndLinkedEdges\";class m extends c{constructor(e){super(e)}hit_test(e,t){return this._hit_test(e,t,t.edge_view)}get_linked_nodes(e,t,d){let n=[];\"selection\"==d?n=t.selected.indices:\"inspection\"==d&&(n=t.inspected.indices);const s=[];for(const e of n)s.push(t.data.start[e]),s.push(t.data.end[e]);const o=_.uniq(s).map((t=>r.indexOf(e.data.index,t)));return new i.Selection({indices:o})}do_selection(e,t,d,n){if(null==e)return!1;const s=t.edge_renderer.data_source.selected;s.update(e,d,n);const o=t.node_renderer.data_source.selected,r=this.get_linked_nodes(t.node_renderer.data_source,t.edge_renderer.data_source,\"selection\");return o.update(r,d,n),t.edge_renderer.data_source._select.emit(),!s.is_empty()}do_inspection(e,t,d,n,s){if(null==e)return!1;const o=d.edge_view.model.data_source.selection_manager.get_or_create_inspector(d.edge_view.model);o.update(e,n,s),d.edge_view.model.data_source.setv({inspected:o},{silent:!0});const r=d.node_view.model.data_source.selection_manager.get_or_create_inspector(d.node_view.model),_=this.get_linked_nodes(d.node_view.model.data_source,d.edge_view.model.data_source,\"inspection\");return r.update(_,n,s),d.node_view.model.data_source.setv({inspected:r},{silent:!0}),d.edge_view.model.data_source.inspect.emit([d.edge_view.model,{geometry:t}]),!o.is_empty()}}d.EdgesAndLinkedNodes=m,m.__name__=\"EdgesAndLinkedNodes\"},\n function _(t,e,i,n,s){n();const o=t(1),l=t(65),r=t(48),_=o.__importStar(t(107)),c=o.__importStar(t(18)),h=t(12),a=t(13),d=t(98),x=t(106),y=t(59);class g extends d.GlyphView{_project_data(){l.inplace.project_xy(this._xs.array,this._ys.array)}_index_data(t){const{data_size:e}=this;for(let i=0;i<e;i++){const e=this._xs.get(i);if(0==e.length){t.add_empty();continue}const n=this._ys.get(i);if(0==n.length){t.add_empty();continue}const[s,o]=h.minmax(e),[l,r]=h.minmax(n);t.add(s,l,o,r)}}_render(t,e,i){const{sxs:n,sys:s}=null!=i?i:this;for(const i of e){const e=n.get(i),o=s.get(i),l=Math.min(e.length,o.length);let r=!0;t.beginPath();for(let i=0;i<l;i++){const n=e[i],s=o[i];isFinite(n+s)?r?(t.moveTo(n,s),r=!1):t.lineTo(n,s):r=!0}this.visuals.line.set_vectorize(t,i),t.stroke()}}_hit_point(t){const e={x:t.sx,y:t.sy};let i=9999;const n=new Map;for(let t=0,s=this.sxs.length;t<s;t++){const s=Math.max(2,this.line_width.get(t)/2),o=this.sxs.get(t),l=this.sys.get(t);let r=null;for(let t=0,n=o.length-1;t<n;t++){const n={x:o[t],y:l[t]},c={x:o[t+1],y:l[t+1]},h=_.dist_to_segment(e,n,c);h<s&&h<i&&(i=h,r=[t])}null!=r&&n.set(t,r)}return new y.Selection({indices:[...n.keys()],multiline_indices:a.to_object(n)})}_hit_span(t){const{sx:e,sy:i}=t;let n,s;\"v\"==t.direction?(n=this.renderer.yscale.invert(i),s=this._ys):(n=this.renderer.xscale.invert(e),s=this._xs);const o=new Map;for(let t=0,e=s.length;t<e;t++){const e=s.get(t),i=[];for(let t=0,s=e.length-1;t<s;t++)e[t]<=n&&n<=e[t+1]&&i.push(t);i.length>0&&o.set(t,i)}return new y.Selection({indices:[...o.keys()],multiline_indices:a.to_object(o)})}get_interpolation_hit(t,e,i){const n=this._xs.get(t),s=this._ys.get(t),o=n[e],l=s[e],r=n[e+1],_=s[e+1];return x.line_interpolation(this.renderer,i,o,l,r,_)}draw_legend_for_index(t,e,i){x.generic_line_vector_legend(this.visuals,t,e,i)}scenterxy(){throw new Error(`${this}.scenterxy() is not implemented`)}}i.MultiLineView=g,g.__name__=\"MultiLineView\";class u extends d.Glyph{constructor(t){super(t)}static init_MultiLine(){this.prototype.default_view=g,this.define((({})=>({xs:[c.XCoordinateSeqSpec,{field:\"xs\"}],ys:[c.YCoordinateSeqSpec,{field:\"ys\"}]}))),this.mixins(r.LineVector)}}i.MultiLine=u,u.__name__=\"MultiLine\",u.init_MultiLine()},\n function _(e,t,s,i,n){i();const r=e(1),o=e(98),a=e(106),_=e(12),c=e(48),l=r.__importStar(e(107)),h=r.__importStar(e(18)),d=e(59),y=e(11),p=e(65);class x extends o.GlyphView{_project_data(){p.inplace.project_xy(this._xs.array,this._ys.array)}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++){const t=this._xs.get(s),i=this._ys.get(s);if(0==t.length)e.add_empty();else{const[s,n]=_.minmax(t),[r,o]=_.minmax(i);e.add(s,r,n,o)}}}_mask_data(){const{x_range:e,y_range:t}=this.renderer.plot_view.frame;return this.index.indices({x0:e.min,x1:e.max,y0:t.min,y1:t.max})}_inner_loop(e,t,s,i){for(let n=0,r=t.length;n<r;n++)0!=n?isNaN(t[n]+s[n])?(e.closePath(),i.apply(e),e.beginPath()):e.lineTo(t[n],s[n]):(e.beginPath(),e.moveTo(t[n],s[n]));e.closePath(),i.call(e)}_render(e,t,s){const{sxs:i,sys:n}=null!=s?s:this;for(const s of t){const t=i.get(s),r=n.get(s);this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,s),this._inner_loop(e,t,r,e.fill)),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(e,s),this._inner_loop(e,t,r,e.fill)),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,s),this._inner_loop(e,t,r,e.stroke))}}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,r=[t,s,s,t],o=[i,i,n,n],[a,_]=this.renderer.xscale.r_invert(t,s),[c,h]=this.renderer.yscale.r_invert(i,n),y=this.index.indices({x0:a,x1:_,y0:c,y1:h}),p=[];for(const e of y){const t=this.sxs.get(e),s=this.sys.get(e);let i=!0;for(let e=0,n=t.length;e<n;e++){const n=t[e],a=s[e];if(!l.point_in_poly(n,a,r,o)){i=!1;break}}i&&p.push(e)}return new d.Selection({indices:p})}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),n=this.renderer.yscale.invert(s),r=this.index.indices({x0:i,y0:n,x1:i,y1:n}),o=[];for(const e of r){const i=this.sxs.get(e),n=this.sys.get(e),r=i.length;for(let a=0,_=0;;_++){if(isNaN(i[_])||_==r){const r=i.subarray(a,_),c=n.subarray(a,_);if(l.point_in_poly(t,s,r,c)){o.push(e);break}a=_+1}if(_==r)break}}return new d.Selection({indices:o})}_get_snap_coord(e){return _.sum(e)/e.length}scenterxy(e,t,s){const i=this.sxs.get(e),n=this.sys.get(e),r=i.length;let o=!1;for(let e=0,a=0;;a++){const _=isNaN(i[a]);if(o=o||_,a==r&&!o){return[this._get_snap_coord(i),this._get_snap_coord(n)]}if(_||a==r){const r=i.subarray(e,a),o=n.subarray(e,a);if(l.point_in_poly(t,s,r,o)){return[this._get_snap_coord(r),this._get_snap_coord(o)]}e=a+1}if(a==r)break}y.unreachable()}draw_legend_for_index(e,t,s){a.generic_area_vector_legend(this.visuals,e,t,s)}}s.PatchesView=x,x.__name__=\"PatchesView\";class f extends o.Glyph{constructor(e){super(e)}static init_Patches(){this.prototype.default_view=x,this.define((({})=>({xs:[h.XCoordinateSeqSpec,{field:\"xs\"}],ys:[h.YCoordinateSeqSpec,{field:\"ys\"}]}))),this.mixins([c.LineVector,c.FillVector,c.HatchVector])}}s.Patches=f,f.__name__=\"Patches\",f.init_Patches()},\n function _(e,t,n,s,o){s();const r=e(53);class c extends r.Model{do_selection(e,t,n,s){return null!=e&&(t.selected.update(e,n,s),t._select.emit(),!t.selected.is_empty())}}n.SelectionPolicy=c,c.__name__=\"SelectionPolicy\";class l extends c{hit_test(e,t){const n=[];for(const s of t){const t=s.hit_test(e);null!=t&&n.push(t)}if(n.length>0){const e=n[0];for(const t of n)e.update_through_intersection(t);return e}return null}}n.IntersectRenderers=l,l.__name__=\"IntersectRenderers\";class _ extends c{hit_test(e,t){const n=[];for(const s of t){const t=s.hit_test(e);null!=t&&n.push(t)}if(n.length>0){const e=n[0];for(const t of n)e.update_through_union(t);return e}return null}}n.UnionRenderers=_,_.__name__=\"UnionRenderers\"},\n function _(t,n,e,s,o){s();const r=t(1),i=t(57),l=t(8),c=t(13),a=r.__importStar(t(131)),u=t(132),h=t(35);function d(t,n,e){if(l.isArray(t)){const s=t.concat(n);return null!=e&&s.length>e?s.slice(-e):s}if(l.isTypedArray(t)){const s=t.length+n.length;if(null!=e&&s>e){const o=s-e,r=t.length;let i;t.length<e?(i=new t.constructor(e),i.set(t,0)):i=t;for(let t=o,n=r;t<n;t++)i[t-o]=i[t];for(let t=0,e=n.length;t<e;t++)i[t+(r-o)]=n[t];return i}{const e=new t.constructor(n);return a.concat(t,e)}}throw new Error(\"unsupported array types\")}function f(t,n){let e,s,o;return l.isNumber(t)?(e=t,o=t+1,s=1):(e=null!=t.start?t.start:0,o=null!=t.stop?t.stop:n,s=null!=t.step?t.step:1),[e,o,s]}function m(t,n){const e=new Set;let s=!1;for(const[o,r]of n){let n,i,c,a;if(l.isArray(o)){const[s]=o;e.add(s),n=t[s].shape,i=t[s],a=r,2===o.length?(n=[1,n[0]],c=[o[0],0,o[1]]):c=o}else l.isNumber(o)?(a=[r],e.add(o)):(a=r,s=!0),c=[0,0,o],n=[1,t.length],i=t;let u=0;const[h,d,m]=f(c[1],n[0]),[_,p,g]=f(c[2],n[1]);for(let t=h;t<d;t+=m)for(let o=_;o<p;o+=g)s&&e.add(o),i[t*n[1]+o]=a[u],u++}return e}e.stream_to_column=d,e.slice=f,e.patch_to_column=m;class _ extends i.ColumnarDataSource{constructor(t){super(t)}static init_ColumnDataSource(){this.define((({Dict:t,Any:n})=>({data:[t(n),{}]})))}stream(t,n,e){const{data:s}=this;for(const[e,o]of c.entries(t))s[e]=d(s[e],o,n);if(this.setv({data:s},{silent:!0}),this.streaming.emit(),null!=this.document){const s=new h.ColumnsStreamedEvent(this.document,this.ref(),t,n);this.document._notify_change(this,\"data\",null,null,{setter_id:e,hint:s})}}patch(t,n){const{data:e}=this;let s=new Set;for(const[n,o]of c.entries(t))s=u.union(s,m(e[n],o));if(this.setv({data:e},{silent:!0}),this.patching.emit([...s]),null!=this.document){const e=new h.ColumnsPatchedEvent(this.document,this.ref(),t);this.document._notify_change(this,\"data\",null,null,{setter_id:n,hint:e})}}}e.ColumnDataSource=_,_.__name__=\"ColumnDataSource\",_.init_ColumnDataSource()},\n function _(t,n,o,e,c){e(),o.concat=function(t,...n){let o=t.length;for(const t of n)o+=t.length;const e=new t.constructor(o);e.set(t,0);let c=t.length;for(const t of n)e.set(t,c),c+=t.length;return e}},\n function _(n,o,t,e,f){function c(...n){const o=new Set;for(const t of n)for(const n of t)o.add(n);return o}e(),t.union=c,t.intersection=function(n,...o){const t=new Set;n:for(const e of n){for(const n of o)if(!n.has(e))continue n;t.add(e)}return t},t.difference=function(n,...o){const t=new Set(n);for(const n of c(...o))t.delete(n);return t}},\n function _(e,i,t,s,o){s();const n=e(1),a=e(53),l=e(42),r=n.__importStar(e(45)),_=e(48),c=n.__importStar(e(18));class d extends l.View{initialize(){super.initialize(),this.visuals=new r.Visuals(this)}request_render(){this.parent.request_render()}get canvas(){return this.parent.canvas}set_data(e){const i=this;for(const t of this.model){if(!(t instanceof c.VectorSpec||t instanceof c.ScalarSpec))continue;const s=t.uniform(e);i[`${t.attr}`]=s}}}t.ArrowHeadView=d,d.__name__=\"ArrowHeadView\";class h extends a.Model{constructor(e){super(e)}static init_ArrowHead(){this.define((()=>({size:[c.NumberSpec,25]})))}}t.ArrowHead=h,h.__name__=\"ArrowHead\",h.init_ArrowHead();class v extends d{clip(e,i){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.moveTo(.5*t,t),e.lineTo(.5*t,-2),e.lineTo(-.5*t,-2),e.lineTo(-.5*t,t),e.lineTo(0,0),e.lineTo(.5*t,t)}render(e,i){if(this.visuals.line.doit){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.beginPath(),e.moveTo(.5*t,t),e.lineTo(0,0),e.lineTo(-.5*t,t),e.stroke()}}}t.OpenHeadView=v,v.__name__=\"OpenHeadView\";class u extends h{constructor(e){super(e)}static init_OpenHead(){this.prototype.default_view=v,this.mixins(_.LineVector)}}t.OpenHead=u,u.__name__=\"OpenHead\",u.init_OpenHead();class m extends d{clip(e,i){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.moveTo(.5*t,t),e.lineTo(.5*t,-2),e.lineTo(-.5*t,-2),e.lineTo(-.5*t,t),e.lineTo(.5*t,t)}render(e,i){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,i),this._normal(e,i),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,i),this._normal(e,i),e.stroke())}_normal(e,i){const t=this.size.get(i);e.beginPath(),e.moveTo(.5*t,t),e.lineTo(0,0),e.lineTo(-.5*t,t),e.closePath()}}t.NormalHeadView=m,m.__name__=\"NormalHeadView\";class T extends h{constructor(e){super(e)}static init_NormalHead(){this.prototype.default_view=m,this.mixins([_.LineVector,_.FillVector]),this.override({fill_color:\"black\"})}}t.NormalHead=T,T.__name__=\"NormalHead\",T.init_NormalHead();class p extends d{clip(e,i){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.moveTo(.5*t,t),e.lineTo(.5*t,-2),e.lineTo(-.5*t,-2),e.lineTo(-.5*t,t),e.lineTo(0,.5*t),e.lineTo(.5*t,t)}render(e,i){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,i),this._vee(e,i),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,i),this._vee(e,i),e.stroke())}_vee(e,i){const t=this.size.get(i);e.beginPath(),e.moveTo(.5*t,t),e.lineTo(0,0),e.lineTo(-.5*t,t),e.lineTo(0,.5*t),e.closePath()}}t.VeeHeadView=p,p.__name__=\"VeeHeadView\";class H extends h{constructor(e){super(e)}static init_VeeHead(){this.prototype.default_view=p,this.mixins([_.LineVector,_.FillVector]),this.override({fill_color:\"black\"})}}t.VeeHead=H,H.__name__=\"VeeHead\",H.init_VeeHead();class V extends d{render(e,i){if(this.visuals.line.doit){this.visuals.line.set_vectorize(e,i);const t=this.size.get(i);e.beginPath(),e.moveTo(.5*t,0),e.lineTo(-.5*t,0),e.stroke()}}clip(e,i){}}t.TeeHeadView=V,V.__name__=\"TeeHeadView\";class f extends h{constructor(e){super(e)}static init_TeeHead(){this.prototype.default_view=V,this.mixins(_.LineVector)}}t.TeeHead=f,f.__name__=\"TeeHead\",f.init_TeeHead()},\n function _(s,e,i,t,l){t();const _=s(1),o=s(135),r=_.__importStar(s(48));class h extends o.UpperLowerView{paint(s){s.beginPath(),s.moveTo(this._lower_sx[0],this._lower_sy[0]);for(let e=0,i=this._lower_sx.length;e<i;e++)s.lineTo(this._lower_sx[e],this._lower_sy[e]);for(let e=this._upper_sx.length-1;e>=0;e--)s.lineTo(this._upper_sx[e],this._upper_sy[e]);s.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(s),s.fill()),s.beginPath(),s.moveTo(this._lower_sx[0],this._lower_sy[0]);for(let e=0,i=this._lower_sx.length;e<i;e++)s.lineTo(this._lower_sx[e],this._lower_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(s),s.stroke()),s.beginPath(),s.moveTo(this._upper_sx[0],this._upper_sy[0]);for(let e=0,i=this._upper_sx.length;e<i;e++)s.lineTo(this._upper_sx[e],this._upper_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(s),s.stroke())}}i.BandView=h,h.__name__=\"BandView\";class n extends o.UpperLower{constructor(s){super(s)}static init_Band(){this.prototype.default_view=h,this.mixins([r.Line,r.Fill]),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}}i.Band=n,n.__name__=\"Band\",n.init_Band()},\n function _(e,t,i,s,o){s();const r=e(1),p=e(56),n=e(20),_=r.__importStar(e(18));class a extends p.DataAnnotationView{map_data(){const{frame:e}=this.plot_view,t=this.model.dimension,i=this.coordinates.x_scale,s=this.coordinates.y_scale,o=\"height\"==t?s:i,r=\"height\"==t?i:s,p=\"height\"==t?e.bbox.yview:e.bbox.xview,n=\"height\"==t?e.bbox.xview:e.bbox.yview;let _,a,h;_=\"data\"==this.model.properties.lower.units?o.v_compute(this._lower):p.v_compute(this._lower),a=\"data\"==this.model.properties.upper.units?o.v_compute(this._upper):p.v_compute(this._upper),h=\"data\"==this.model.properties.base.units?r.v_compute(this._base):n.v_compute(this._base);const[d,c]=\"height\"==t?[1,0]:[0,1],u=[_,h],l=[a,h];this._lower_sx=u[d],this._lower_sy=u[c],this._upper_sx=l[d],this._upper_sy=l[c]}}i.UpperLowerView=a,a.__name__=\"UpperLowerView\";class h extends _.CoordinateSpec{get dimension(){return\"width\"==this.obj.dimension?\"x\":\"y\"}get units(){var e;return null!==(e=this.spec.units)&&void 0!==e?e:\"data\"}}i.XOrYCoordinateSpec=h,h.__name__=\"XOrYCoordinateSpec\";class d extends p.DataAnnotation{constructor(e){super(e)}static init_UpperLower(){this.define((()=>({dimension:[n.Dimension,\"height\"],lower:[h,{field:\"lower\"}],upper:[h,{field:\"upper\"}],base:[h,{field:\"base\"}]})))}}i.UpperLower=d,d.__name__=\"UpperLower\",d.init_UpperLower()},\n function _(t,i,o,n,e){n();const s=t(1),l=t(40),a=s.__importStar(t(48)),r=t(20),h=t(99);o.EDGE_TOLERANCE=2.5;class c extends l.AnnotationView{constructor(){super(...arguments),this.bbox=new h.BBox}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render()))}_render(){const{left:t,right:i,top:o,bottom:n}=this.model;if(null==t&&null==i&&null==o&&null==n)return;const{frame:e}=this.plot_view,s=this.coordinates.x_scale,l=this.coordinates.y_scale,a=(t,i,o,n,e)=>{let s;return s=null!=t?this.model.screen?t:\"data\"==i?o.compute(t):n.compute(t):e,s};this.bbox=h.BBox.from_rect({left:a(t,this.model.left_units,s,e.bbox.xview,e.bbox.left),right:a(i,this.model.right_units,s,e.bbox.xview,e.bbox.right),top:a(o,this.model.top_units,l,e.bbox.yview,e.bbox.top),bottom:a(n,this.model.bottom_units,l,e.bbox.yview,e.bbox.bottom)}),this._paint_box()}_paint_box(){const{ctx:t}=this.layer;t.save();const{left:i,top:o,width:n,height:e}=this.bbox;t.beginPath(),t.rect(i,o,n,e),this.visuals.fill.doit&&(this.visuals.fill.set_value(t),t.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(t),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke()),t.restore()}interactive_bbox(){const t=this.model.line_width+o.EDGE_TOLERANCE;return this.bbox.grow_by(t)}interactive_hit(t,i){if(null==this.model.in_cursor)return!1;return this.interactive_bbox().contains(t,i)}cursor(t,i){const{left:o,right:n,bottom:e,top:s}=this.bbox;return Math.abs(t-o)<3||Math.abs(t-n)<3?this.model.ew_cursor:Math.abs(i-e)<3||Math.abs(i-s)<3?this.model.ns_cursor:this.bbox.contains(t,i)?this.model.in_cursor:null}}o.BoxAnnotationView=c,c.__name__=\"BoxAnnotationView\";class u extends l.Annotation{constructor(t){super(t)}static init_BoxAnnotation(){this.prototype.default_view=c,this.mixins([a.Line,a.Fill,a.Hatch]),this.define((({Number:t,Nullable:i})=>({top:[i(t),null],top_units:[r.SpatialUnits,\"data\"],bottom:[i(t),null],bottom_units:[r.SpatialUnits,\"data\"],left:[i(t),null],left_units:[r.SpatialUnits,\"data\"],right:[i(t),null],right_units:[r.SpatialUnits,\"data\"],render_mode:[r.RenderMode,\"canvas\"]}))),this.internal((({Boolean:t,String:i,Nullable:o})=>({screen:[t,!1],ew_cursor:[o(i),null],ns_cursor:[o(i),null],in_cursor:[o(i),null]}))),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}update({left:t,right:i,top:o,bottom:n}){this.setv({left:t,right:i,top:o,bottom:n,screen:!0})}}o.BoxAnnotation=u,u.__name__=\"BoxAnnotation\",u.init_BoxAnnotation()},\n function _(t,e,i,o,n){o();const a=t(1),r=t(40),s=t(138),l=t(144),_=t(162),c=t(165),h=t(198),u=t(166),p=t(205),m=t(169),g=t(203),d=t(202),f=t(209),w=t(217),b=t(220),v=t(20),x=a.__importStar(t(48)),y=t(9),k=t(221),C=t(222),z=t(225),j=t(140),B=t(11),L=t(122),S=t(99),M=t(8);class T extends r.AnnotationView{get orientation(){return this._orientation}initialize(){super.initialize();const{ticker:t,formatter:e,color_mapper:i}=this.model;this._ticker=\"auto\"!=t?t:(()=>{switch(!0){case i instanceof f.LogColorMapper:return new h.LogTicker;case i instanceof f.ScanningColorMapper:return new h.BinnedTicker({mapper:i});case i instanceof f.CategoricalColorMapper:return new h.CategoricalTicker;default:return new h.BasicTicker}})(),this._formatter=\"auto\"!=e?e:(()=>{switch(!0){case this._ticker instanceof h.LogTicker:return new p.LogTickFormatter;case i instanceof f.CategoricalColorMapper:return new p.CategoricalTickFormatter;default:return new p.BasicTickFormatter}})(),this._major_range=(()=>{if(i instanceof f.CategoricalColorMapper){const{factors:t}=i;return new b.FactorRange({factors:t})}if(i instanceof d.ContinuousColorMapper){const{min:t,max:e}=i.metrics;return new b.Range1d({start:t,end:e})}B.unreachable()})(),this._major_scale=(()=>{if(i instanceof f.LinearColorMapper)return new w.LinearScale;if(i instanceof f.LogColorMapper)return new w.LogScale;if(i instanceof f.ScanningColorMapper){const{binning:t}=i.metrics;return new w.LinearInterpolationScale({binning:t})}if(i instanceof f.CategoricalColorMapper)return new w.CategoricalScale;B.unreachable()})(),this._minor_range=new b.Range1d({start:0,end:1}),this._minor_scale=new w.LinearScale;const o=x.attrs_of(this.model,\"major_label_\",x.Text,!0),n=x.attrs_of(this.model,\"major_tick_\",x.Line,!0),a=x.attrs_of(this.model,\"minor_tick_\",x.Line,!0),r=x.attrs_of(this.model,\"title_\",x.Text),l=i instanceof f.CategoricalColorMapper?_.CategoricalAxis:i instanceof f.LogColorMapper?_.LogAxis:_.LinearAxis;this._axis=new l(Object.assign(Object.assign(Object.assign({ticker:this._ticker,formatter:this._formatter,major_tick_in:this.model.major_tick_in,major_tick_out:this.model.major_tick_out,minor_tick_in:this.model.minor_tick_in,minor_tick_out:this.model.minor_tick_out,major_label_standoff:this.model.label_standoff,major_label_overrides:this.model.major_label_overrides,major_label_policy:this.model.major_label_policy,axis_line_color:null},o),n),a));const{title:c}=this.model;c&&(this._title=new s.Title(Object.assign({text:c,standoff:this.model.title_standoff},r)))}async lazy_initialize(){await super.lazy_initialize();const t=this,e={get parent(){return t.parent},get root(){return t.root},get frame(){return t._frame},get canvas_view(){return t.parent.canvas_view},request_layout(){t.parent.request_layout()}};this._axis_view=await L.build_view(this._axis,{parent:e}),null!=this._title&&(this._title_view=await L.build_view(this._title,{parent:e}))}remove(){var t;null===(t=this._title_view)||void 0===t||t.remove(),this._axis_view.remove(),super.remove()}connect_signals(){super.connect_signals(),this.connect(this._ticker.change,(()=>this.request_render())),this.connect(this._formatter.change,(()=>this.request_render())),this.connect(this.model.color_mapper.metrics_change,(()=>{const t=this._major_range,e=this._major_scale,{color_mapper:i}=this.model;if(i instanceof d.ContinuousColorMapper&&t instanceof b.Range1d){const{min:e,max:o}=i.metrics;t.setv({start:e,end:o})}if(i instanceof f.ScanningColorMapper&&e instanceof w.LinearInterpolationScale){const{binning:t}=i.metrics;e.binning=t}this._set_canvas_image(),this.plot_view.request_layout()}))}_set_canvas_image(){const{orientation:t}=this,e=(()=>{const{palette:e}=this.model.color_mapper;return\"vertical\"==t?y.reversed(e):e})(),[i,o]=\"vertical\"==t?[1,e.length]:[e.length,1],n=this._image=document.createElement(\"canvas\");n.width=i,n.height=o;const a=n.getContext(\"2d\"),r=a.getImageData(0,0,i,o),s=new f.LinearColorMapper({palette:e}).rgba_mapper.v_compute(y.range(0,e.length));r.data.set(s),a.putImageData(r,0,0)}update_layout(){const{location:t,width:e,height:i,padding:o,margin:n}=this.model,[a,r]=(()=>{if(!M.isString(t))return[\"end\",\"start\"];switch(t){case\"top_left\":return[\"start\",\"start\"];case\"top\":case\"top_center\":return[\"start\",\"center\"];case\"top_right\":return[\"start\",\"end\"];case\"bottom_left\":return[\"end\",\"start\"];case\"bottom\":case\"bottom_center\":return[\"end\",\"center\"];case\"bottom_right\":return[\"end\",\"end\"];case\"left\":case\"center_left\":return[\"center\",\"start\"];case\"center\":case\"center_center\":return[\"center\",\"center\"];case\"right\":case\"center_right\":return[\"center\",\"end\"]}})(),s=this._orientation=(()=>{const{orientation:t}=this.model;return\"auto\"==t?null!=this.panel?this.panel.is_horizontal?\"horizontal\":\"vertical\":\"start\"==r||\"end\"==r||\"center\"==r&&\"center\"==a?\"vertical\":\"horizontal\":t})(),_=new C.NodeLayout,c=new C.VStack,h=new C.VStack,u=new C.HStack,p=new C.HStack;_.absolute=!0,c.absolute=!0,h.absolute=!0,u.absolute=!0,p.absolute=!0;const[m,g,d,f]=(()=>\"horizontal\"==s?[this._major_scale,this._minor_scale,this._major_range,this._minor_range]:[this._minor_scale,this._major_scale,this._minor_range,this._major_range])();this._frame=new l.CartesianFrame(m,g,d,f),_.on_resize((t=>this._frame.set_geometry(t)));const w=new z.BorderLayout;this._inner_layout=w,w.absolute=!0,w.center_panel=_,w.top_panel=c,w.bottom_panel=h,w.left_panel=u,w.right_panel=p;const b={left:o,right:o,top:o,bottom:o},v=(()=>{if(null==this.panel){if(M.isString(t))return{left:n,right:n,top:n,bottom:n};{const[e,i]=t;return{left:e,right:n,top:n,bottom:i}}}if(!M.isString(t)){const[e,i]=t;return w.fixup_geometry=(t,o)=>{const n=t,a=this.layout.bbox,{width:r,height:s}=t;if(t=new S.BBox({left:a.left+e,bottom:a.bottom-i,width:r,height:s}),null!=o){const e=t.left-n.left,i=t.top-n.top,{left:a,top:r,width:s,height:l}=o;o=new S.BBox({left:a+e,top:r+i,width:s,height:l})}return[t,o]},{left:e,right:0,top:0,bottom:i}}w.fixup_geometry=(t,e)=>{const i=t;if(\"horizontal\"==s){const{top:e,width:i,height:o}=t;if(\"end\"==r){const{right:n}=this.layout.bbox;t=new S.BBox({right:n,top:e,width:i,height:o})}else if(\"center\"==r){const{hcenter:n}=this.layout.bbox;t=new S.BBox({hcenter:Math.round(n),top:e,width:i,height:o})}}else{const{left:e,width:i,height:o}=t;if(\"end\"==a){const{bottom:n}=this.layout.bbox;t=new S.BBox({left:e,bottom:n,width:i,height:o})}else if(\"center\"==a){const{vcenter:n}=this.layout.bbox;t=new S.BBox({left:e,vcenter:Math.round(n),width:i,height:o})}}if(null!=e){const o=t.left-i.left,n=t.top-i.top,{left:a,top:r,width:s,height:l}=e;e=new S.BBox({left:a+o,top:r+n,width:s,height:l})}return[t,e]}})();let x,y,B,L;if(w.padding=b,null!=this.panel?(x=\"max\",y=void 0,B=void 0,L=void 0):\"auto\"==(\"horizontal\"==s?e:i)?(x=\"fixed\",y=25*this.model.color_mapper.palette.length,B={percent:.3},L={percent:.8}):(x=\"fit\",y=void 0),\"horizontal\"==s){const t=\"auto\"==e?void 0:e,o=\"auto\"==i?25:i;w.set_sizing({width_policy:x,height_policy:\"min\",width:y,min_width:B,max_width:L,halign:r,valign:a,margin:v}),w.center_panel.set_sizing({width_policy:\"auto\"==e?\"fit\":\"fixed\",height_policy:\"fixed\",width:t,height:o})}else{const t=\"auto\"==e?25:e,o=\"auto\"==i?void 0:i;w.set_sizing({width_policy:\"min\",height_policy:x,height:y,min_height:B,max_height:L,halign:r,valign:a,margin:v}),w.center_panel.set_sizing({width_policy:\"fixed\",height_policy:\"auto\"==i?\"fit\":\"fixed\",width:t,height:o})}c.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),h.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),u.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),p.set_sizing({width_policy:\"min\",height_policy:\"fit\"});const{_title_view:T}=this;null!=T&&(\"horizontal\"==s?(T.panel=new j.Panel(\"above\"),T.update_layout(),c.children.push(T.layout)):(T.panel=new j.Panel(\"left\"),T.update_layout(),u.children.push(T.layout)));const{panel:A}=this,O=null!=A&&s==A.orientation?A.side:\"horizontal\"==s?\"below\":\"right\",R=(()=>{switch(O){case\"above\":return c;case\"below\":return h;case\"left\":return u;case\"right\":return p}})(),{_axis_view:F}=this;if(F.panel=new j.Panel(O),F.update_layout(),R.children.push(F.layout),null!=this.panel){const t=new k.Grid([{layout:w,row:0,col:0}]);t.absolute=!0,\"horizontal\"==s?t.set_sizing({width_policy:\"max\",height_policy:\"min\"}):t.set_sizing({width_policy:\"min\",height_policy:\"max\"}),this.layout=t}else this.layout=this._inner_layout;const{visible:I}=this.model;this.layout.sizing.visible=I,this._set_canvas_image()}_render(){var t;const{ctx:e}=this.layer;e.save(),this._paint_bbox(e,this._inner_layout.bbox),this._paint_image(e,this._inner_layout.center_panel.bbox),null===(t=this._title_view)||void 0===t||t.render(),this._axis_view.render(),e.restore()}_paint_bbox(t,e){const{x:i,y:o}=e;let{width:n,height:a}=e;i+n>=this.parent.canvas_view.bbox.width&&(n-=1),o+a>=this.parent.canvas_view.bbox.height&&(a-=1),t.save(),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(i,o,n,a)),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.strokeRect(i,o,n,a)),t.restore()}_paint_image(t,e){const{x:i,y:o,width:n,height:a}=e;t.save(),t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.scale_alpha,t.drawImage(this._image,i,o,n,a),this.visuals.bar_line.doit&&(this.visuals.bar_line.set_value(t),t.strokeRect(i,o,n,a)),t.restore()}serializable_state(){const t=super.serializable_state(),{children:e=[]}=t,i=a.__rest(t,[\"children\"]);return null!=this._title_view&&e.push(this._title_view.serializable_state()),e.push(this._axis_view.serializable_state()),Object.assign(Object.assign({},i),{children:e})}}i.ColorBarView=T,T.__name__=\"ColorBarView\";class A extends r.Annotation{constructor(t){super(t)}static init_ColorBar(){this.prototype.default_view=T,this.mixins([[\"major_label_\",x.Text],[\"title_\",x.Text],[\"major_tick_\",x.Line],[\"minor_tick_\",x.Line],[\"border_\",x.Line],[\"bar_\",x.Line],[\"background_\",x.Fill]]),this.define((({Alpha:t,Number:e,String:i,Tuple:o,Dict:n,Or:a,Ref:r,Auto:s,Nullable:l})=>({location:[a(v.Anchor,o(e,e)),\"top_right\"],orientation:[a(v.Orientation,s),\"auto\"],title:[l(i),null],title_standoff:[e,2],width:[a(e,s),\"auto\"],height:[a(e,s),\"auto\"],scale_alpha:[t,1],ticker:[a(r(c.Ticker),s),\"auto\"],formatter:[a(r(u.TickFormatter),s),\"auto\"],major_label_overrides:[n(i),{}],major_label_policy:[r(m.LabelingPolicy),()=>new m.NoOverlap],color_mapper:[r(g.ColorMapper)],label_standoff:[e,5],margin:[e,30],padding:[e,10],major_tick_in:[e,5],major_tick_out:[e,0],minor_tick_in:[e,0],minor_tick_out:[e,0]}))),this.override({background_fill_color:\"#ffffff\",background_fill_alpha:.95,bar_line_color:null,border_line_color:null,major_label_text_font_size:\"11px\",major_tick_line_color:\"#ffffff\",minor_tick_line_color:null,title_text_font_size:\"13px\",title_text_font_style:\"italic\"})}}i.ColorBar=A,A.__name__=\"ColorBar\",A.init_ColorBar()},\n function _(t,e,i,s,l){s();const o=t(1),a=t(139),n=t(20),r=t(143),c=o.__importStar(t(48));class h extends a.TextAnnotationView{_get_location(){const t=this.model.offset,e=this.model.standoff/2;let i,s;const{bbox:l}=this.layout;switch(this.panel.side){case\"above\":case\"below\":switch(this.model.vertical_align){case\"top\":s=l.top+e;break;case\"middle\":s=l.vcenter;break;case\"bottom\":s=l.bottom-e}switch(this.model.align){case\"left\":i=l.left+t;break;case\"center\":i=l.hcenter;break;case\"right\":i=l.right-t}break;case\"left\":switch(this.model.vertical_align){case\"top\":i=l.left+e;break;case\"middle\":i=l.hcenter;break;case\"bottom\":i=l.right-e}switch(this.model.align){case\"left\":s=l.bottom-t;break;case\"center\":s=l.vcenter;break;case\"right\":s=l.top+t}break;case\"right\":switch(this.model.vertical_align){case\"top\":i=l.right-e;break;case\"middle\":i=l.hcenter;break;case\"bottom\":i=l.left+e}switch(this.model.align){case\"left\":s=l.top+t;break;case\"center\":s=l.vcenter;break;case\"right\":s=l.bottom-t}}return[i,s]}_render(){const{text:t}=this.model;if(null==t||0==t.length)return;this.model.text_baseline=this.model.vertical_align,this.model.text_align=this.model.align;const[e,i]=this._get_location(),s=this.panel.get_label_angle_heuristic(\"parallel\");(\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this))(this.layer.ctx,t,e,i,s)}_get_size(){const{text:t}=this.model;if(null==t||0==t.length)return{width:0,height:0};{const{ctx:e}=this.layer;this.visuals.text.set_value(e);const{width:i}=this.layer.ctx.measureText(t),{height:s}=r.font_metrics(e.font);return{width:i,height:2+s*this.model.text_line_height+this.model.standoff}}}}i.TitleView=h,h.__name__=\"TitleView\";class _ extends a.TextAnnotation{constructor(t){super(t)}static init_Title(){this.prototype.default_view=h,this.mixins([c.Text,[\"border_\",c.Line],[\"background_\",c.Fill]]),this.define((({Number:t,String:e})=>({text:[e,\"\"],vertical_align:[n.VerticalAlign,\"bottom\"],align:[n.TextAlign,\"left\"],offset:[t,0],standoff:[t,10]}))),this.prototype._props.text_align.options.internal=!0,this.prototype._props.text_baseline.options.internal=!0,this.override({text_font_size:\"13px\",text_font_style:\"bold\",text_line_height:1,background_fill_color:null,border_line_color:null})}}i.Title=_,_.__name__=\"Title\",_.init_Title()},\n function _(e,t,s,i,n){i();const l=e(40),a=e(43),o=e(20),r=e(140),d=e(143),c=e(11);class _ extends l.AnnotationView{update_layout(){const{panel:e}=this;this.layout=null!=e?new r.SideLayout(e,(()=>this.get_size()),!0):void 0}initialize(){super.initialize(),\"css\"==this.model.render_mode&&(this.el=a.div(),this.plot_view.canvas_view.add_overlay(this.el))}remove(){null!=this.el&&a.remove(this.el),super.remove()}connect_signals(){super.connect_signals(),\"css\"==this.model.render_mode?this.connect(this.model.change,(()=>this.render())):this.connect(this.model.change,(()=>this.request_render()))}render(){this.model.visible||\"css\"!=this.model.render_mode||a.undisplay(this.el),super.render()}_calculate_text_dimensions(e,t){const{width:s}=e.measureText(t),{height:i}=d.font_metrics(this.visuals.text.font_value());return[s,i]}_calculate_bounding_box_dimensions(e,t){const[s,i]=this._calculate_text_dimensions(e,t);let n,l;switch(e.textAlign){case\"left\":n=0;break;case\"center\":n=-s/2;break;case\"right\":n=-s;break;default:c.unreachable()}switch(e.textBaseline){case\"top\":l=0;break;case\"middle\":l=-.5*i;break;case\"bottom\":l=-1*i;break;case\"alphabetic\":l=-.8*i;break;case\"hanging\":l=-.17*i;break;case\"ideographic\":l=-.83*i;break;default:c.unreachable()}return[n,l,s,i]}_canvas_text(e,t,s,i,n){this.visuals.text.set_value(e);const l=this._calculate_bounding_box_dimensions(e,t);e.save(),e.beginPath(),e.translate(s,i),n&&e.rotate(n),e.rect(l[0],l[1],l[2],l[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(e),e.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(e),e.stroke()),this.visuals.text.doit&&(this.visuals.text.set_value(e),e.fillText(t,0,0)),e.restore()}_css_text(e,t,s,i,n){const{el:l}=this;c.assert(null!=l),a.undisplay(l),this.visuals.text.set_value(e);const[o,r]=this._calculate_bounding_box_dimensions(e,t);l.style.position=\"absolute\",l.style.left=`${s+o}px`,l.style.top=`${i+r}px`,l.style.color=e.fillStyle,l.style.font=e.font,l.style.lineHeight=\"normal\",n&&(l.style.transform=`rotate(${n}rad)`),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(e),l.style.backgroundColor=e.fillStyle),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(e),l.style.borderStyle=e.lineDash.length<2?\"solid\":\"dashed\",l.style.borderWidth=`${e.lineWidth}px`,l.style.borderColor=e.strokeStyle),l.textContent=t,a.display(l)}}s.TextAnnotationView=_,_.__name__=\"TextAnnotationView\";class u extends l.Annotation{constructor(e){super(e)}static init_TextAnnotation(){this.define((()=>({render_mode:[o.RenderMode,\"canvas\"]})))}}s.TextAnnotation=u,u.__name__=\"TextAnnotation\",u.init_TextAnnotation()},\n function _(t,e,i,l,r){l();const a=t(141),o=t(142),n=t(8),h=Math.PI/2,s={above:{parallel:0,normal:-h,horizontal:0,vertical:-h},below:{parallel:0,normal:h,horizontal:0,vertical:h},left:{parallel:-h,normal:0,horizontal:0,vertical:-h},right:{parallel:h,normal:0,horizontal:0,vertical:h}},c={above:{parallel:\"bottom\",normal:\"center\",horizontal:\"bottom\",vertical:\"center\"},below:{parallel:\"top\",normal:\"center\",horizontal:\"top\",vertical:\"center\"},left:{parallel:\"bottom\",normal:\"center\",horizontal:\"center\",vertical:\"bottom\"},right:{parallel:\"bottom\",normal:\"center\",horizontal:\"center\",vertical:\"bottom\"}},g={above:{parallel:\"center\",normal:\"left\",horizontal:\"center\",vertical:\"left\"},below:{parallel:\"center\",normal:\"left\",horizontal:\"center\",vertical:\"left\"},left:{parallel:\"center\",normal:\"right\",horizontal:\"right\",vertical:\"center\"},right:{parallel:\"center\",normal:\"left\",horizontal:\"left\",vertical:\"center\"}},_={above:\"right\",below:\"left\",left:\"right\",right:\"left\"},b={above:\"left\",below:\"right\",left:\"right\",right:\"left\"};class z{constructor(t){this.side=t}get dimension(){return\"above\"==this.side||\"below\"==this.side?0:1}get normals(){switch(this.side){case\"above\":return[0,-1];case\"below\":return[0,1];case\"left\":return[-1,0];case\"right\":return[1,0]}}get orientation(){return this.is_horizontal?\"horizontal\":\"vertical\"}get is_horizontal(){return 0==this.dimension}get is_vertical(){return 1==this.dimension}get_label_text_heuristics(t){const{side:e}=this;return n.isString(t)?{vertical_align:c[e][t],align:g[e][t]}:{vertical_align:\"center\",align:(t<0?_:b)[e]}}get_label_angle_heuristic(t){return n.isString(t)?s[this.side][t]:-t}}i.Panel=z,z.__name__=\"Panel\";class m extends o.ContentLayoutable{constructor(t,e,i=!1){super(),this.panel=t,this.get_size=e,this.rotate=i,this.panel.is_horizontal?this.set_sizing({width_policy:\"max\",height_policy:\"fixed\"}):this.set_sizing({width_policy:\"fixed\",height_policy:\"max\"})}_content_size(){const{width:t,height:e}=this.get_size();return!this.rotate||this.panel.is_horizontal?new a.Sizeable({width:t,height:e}):new a.Sizeable({width:e,height:t})}has_size_changed(){const{width:t,height:e}=this._content_size();return this.panel.is_horizontal?this.bbox.height!=e:this.bbox.width!=t}}i.SideLayout=m,m.__name__=\"SideLayout\"},\n function _(h,t,i,e,w){e();const n=h(21),{min:d,max:s}=Math;class g{constructor(h={}){this.width=null!=h.width?h.width:0,this.height=null!=h.height?h.height:0}bounded_to({width:h,height:t}){return new g({width:this.width==1/0&&null!=h?h:this.width,height:this.height==1/0&&null!=t?t:this.height})}expanded_to({width:h,height:t}){return new g({width:h!=1/0?s(this.width,h):this.width,height:t!=1/0?s(this.height,t):this.height})}expand_to({width:h,height:t}){this.width=s(this.width,h),this.height=s(this.height,t)}narrowed_to({width:h,height:t}){return new g({width:d(this.width,h),height:d(this.height,t)})}narrow_to({width:h,height:t}){this.width=d(this.width,h),this.height=d(this.height,t)}grow_by({left:h,right:t,top:i,bottom:e}){const w=this.width+h+t,n=this.height+i+e;return new g({width:w,height:n})}shrink_by({left:h,right:t,top:i,bottom:e}){const w=s(this.width-h-t,0),n=s(this.height-i-e,0);return new g({width:w,height:n})}map(h,t){return new g({width:h(this.width),height:(null!=t?t:h)(this.height)})}}i.Sizeable=g,g.__name__=\"Sizeable\",i.SizingPolicy=n.Enum(\"fixed\",\"fit\",\"min\",\"max\")},\n function _(i,t,h,e,n){e();const s=i(141),r=i(99),g=i(8),{min:l,max:a,round:_}=Math;class o{constructor(){this.absolute=!1,this._bbox=new r.BBox,this._inner_bbox=new r.BBox,this._dirty=!1,this._handlers=[]}*[Symbol.iterator](){}get bbox(){return this._bbox}get inner_bbox(){return this._inner_bbox}get sizing(){return this._sizing}set visible(i){this._sizing.visible=i,this._dirty=!0}set_sizing(i){var t,h,e,n,s;const r=null!==(t=i.width_policy)&&void 0!==t?t:\"fit\",g=i.width,l=i.min_width,a=i.max_width,_=null!==(h=i.height_policy)&&void 0!==h?h:\"fit\",o=i.height,d=i.min_height,u=i.max_height,c=i.aspect,w=null!==(e=i.margin)&&void 0!==e?e:{top:0,right:0,bottom:0,left:0},m=!1!==i.visible,x=null!==(n=i.halign)&&void 0!==n?n:\"start\",b=null!==(s=i.valign)&&void 0!==s?s:\"start\";this._sizing={width_policy:r,min_width:l,width:g,max_width:a,height_policy:_,min_height:d,height:o,max_height:u,aspect:c,margin:w,visible:m,halign:x,valign:b,size:{width:g,height:o}},this._init()}_init(){}_set_geometry(i,t){this._bbox=i,this._inner_bbox=t}set_geometry(i,t){const{fixup_geometry:h}=this;null!=h&&([i,t]=h(i,t)),this._set_geometry(i,null!=t?t:i);for(const i of this._handlers)i(this._bbox,this._inner_bbox)}on_resize(i){this._handlers.push(i)}is_width_expanding(){return\"max\"==this.sizing.width_policy}is_height_expanding(){return\"max\"==this.sizing.height_policy}apply_aspect(i,{width:t,height:h}){const{aspect:e}=this.sizing;if(null!=e){const{width_policy:n,height_policy:s}=this.sizing,r=(i,t)=>{const h={max:4,fit:3,min:2,fixed:1};return h[i]>h[t]};if(\"fixed\"!=n&&\"fixed\"!=s)if(n==s){const n=t,s=_(t/e),r=_(h*e),g=h;Math.abs(i.width-n)+Math.abs(i.height-s)<=Math.abs(i.width-r)+Math.abs(i.height-g)?(t=n,h=s):(t=r,h=g)}else r(n,s)?h=_(t/e):t=_(h*e);else\"fixed\"==n?h=_(t/e):\"fixed\"==s&&(t=_(h*e))}return{width:t,height:h}}measure(i){if(!this.sizing.visible)return{width:0,height:0};const t=i=>\"fixed\"==this.sizing.width_policy&&null!=this.sizing.width?this.sizing.width:i,h=i=>\"fixed\"==this.sizing.height_policy&&null!=this.sizing.height?this.sizing.height:i,e=new s.Sizeable(i).shrink_by(this.sizing.margin).map(t,h),n=this._measure(e),r=this.clip_size(n,e),g=t(r.width),l=h(r.height),a=this.apply_aspect(e,{width:g,height:l});return Object.assign(Object.assign({},n),a)}compute(i={}){const t=this.measure({width:null!=i.width&&this.is_width_expanding()?i.width:1/0,height:null!=i.height&&this.is_height_expanding()?i.height:1/0}),{width:h,height:e}=t,n=new r.BBox({left:0,top:0,width:h,height:e});let s;if(null!=t.inner){const{left:i,top:n,right:g,bottom:l}=t.inner;s=new r.BBox({left:i,top:n,right:h-g,bottom:e-l})}this.set_geometry(n,s)}get xview(){return this.bbox.xview}get yview(){return this.bbox.yview}clip_size(i,t){function h(i,t,h,e){return null==h?h=0:g.isNumber(h)||(h=Math.round(h.percent*t)),null==e?e=1/0:g.isNumber(e)||(e=Math.round(e.percent*t)),a(h,l(i,e))}return{width:h(i.width,t.width,this.sizing.min_width,this.sizing.max_width),height:h(i.height,t.height,this.sizing.min_height,this.sizing.max_height)}}has_size_changed(){const{_dirty:i}=this;return this._dirty=!1,i}}h.Layoutable=o,o.__name__=\"Layoutable\";class d extends o{_measure(i){const{width_policy:t,height_policy:h}=this.sizing;return{width:(()=>{const{width:h}=this.sizing;if(i.width==1/0)return null!=h?h:0;switch(t){case\"fixed\":return null!=h?h:0;case\"min\":return null!=h?l(i.width,h):0;case\"fit\":return null!=h?l(i.width,h):i.width;case\"max\":return null!=h?a(i.width,h):i.width}})(),height:(()=>{const{height:t}=this.sizing;if(i.height==1/0)return null!=t?t:0;switch(h){case\"fixed\":return null!=t?t:0;case\"min\":return null!=t?l(i.height,t):0;case\"fit\":return null!=t?l(i.height,t):i.height;case\"max\":return null!=t?a(i.height,t):i.height}})()}}}h.LayoutItem=d,d.__name__=\"LayoutItem\";class u extends o{_measure(i){const t=this._content_size(),h=i.bounded_to(this.sizing.size).bounded_to(t);return{width:(()=>{switch(this.sizing.width_policy){case\"fixed\":return null!=this.sizing.width?this.sizing.width:t.width;case\"min\":return t.width;case\"fit\":return h.width;case\"max\":return Math.max(t.width,h.width)}})(),height:(()=>{switch(this.sizing.height_policy){case\"fixed\":return null!=this.sizing.height?this.sizing.height:t.height;case\"min\":return t.height;case\"fit\":return h.height;case\"max\":return Math.max(t.height,h.height)}})()}}}h.ContentLayoutable=u,u.__name__=\"ContentLayoutable\"},\n function _(t,e,n,r,l){r();const a=t(11),c=(()=>{try{return\"undefined\"!=typeof OffscreenCanvas&&null!=new OffscreenCanvas(0,0).getContext(\"2d\")}catch(t){return!1}})()?(t,e)=>new OffscreenCanvas(t,e):(t,e)=>{const n=document.createElement(\"canvas\");return n.width=t,n.height=e,n},o=(()=>{const t=c(0,0).getContext(\"2d\");return e=>{t.font=e;const n=t.measureText(\"M\"),r=t.measureText(\"x\"),l=t.measureText(\"Ã…Åšg|\"),c=l.fontBoundingBoxAscent,o=l.fontBoundingBoxDescent;if(null!=c&&null!=o)return{height:c+o,ascent:c,descent:o,cap_height:n.actualBoundingBoxAscent,x_height:r.actualBoundingBoxAscent};const s=l.actualBoundingBoxAscent,u=l.actualBoundingBoxDescent;if(null!=s&&null!=u)return{height:s+u,ascent:s,descent:u,cap_height:n.actualBoundingBoxAscent,x_height:r.actualBoundingBoxAscent};a.unreachable()}})(),s=(()=>{const t=c(0,0).getContext(\"2d\");return(e,n)=>{t.font=n;const r=t.measureText(e),l=r.actualBoundingBoxAscent,c=r.actualBoundingBoxDescent;if(null!=l&&null!=c)return{width:r.width,height:l+c,ascent:l,descent:c};a.unreachable()}})(),u=(()=>{const t=document.createElement(\"canvas\"),e=t.getContext(\"2d\");let n=-1,r=-1;return(l,a=1)=>{e.font=l;const{width:c}=e.measureText(\"M\"),o=c*a,s=Math.ceil(o),u=Math.ceil(2*o),i=Math.ceil(1.5*o);n<s&&(n=s,t.width=s),r<u&&(r=u,t.height=u),e.save(),e.scale(a,a),e.fillStyle=\"#f00\",e.fillRect(0,0,s,u);const f=t=>{let e=0;for(let n=0;n<=i;n++)for(let r=0;r<s;r++,e+=4)if(255!=t[e])return i-n;return 0};e.font=l,e.fillStyle=\"#000\";for(const t of\"xa\")e.fillText(t,0,i/a);const{data:h}=e.getImageData(0,0,s,u),g=f(h)/a;for(const t of\"ASQ\")e.fillText(t,0,i/a);const{data:d}=e.getImageData(0,0,s,u),x=f(d)/a;for(const t of\"Ã…Åšgy\")e.fillText(t,0,i/a);const{data:m}=e.getImageData(0,0,s,u),B=f(m)/a,w=(t=>{let e=t.length-4;for(let n=u;n>=i;n--)for(let r=0;r<s;r++,e-=4)if(255!=t[e])return n-i;return 0})(m)/a;return e.restore(),{height:B+w,ascent:B,cap_height:x,x_height:g,descent:w}}})(),i=(()=>{const t=document.createElement(\"canvas\"),e=t.getContext(\"2d\");let n=-1,r=-1;return(l,a,c=1)=>{e.font=a;const{width:o}=e.measureText(\"M\"),s=o*c,u=Math.ceil(s),i=Math.ceil(2*s),f=Math.ceil(1.5*s);(n<u||r<i)&&(n=u,t.width=u,r=i,t.height=i),e.save(),e.scale(c,c),e.fillStyle=\"#f00\",e.fillRect(0,0,u,i);e.font=a,e.fillStyle=\"#000\",e.fillText(l,0,f/c);const h=e.measureText(l),{data:g}=e.getImageData(0,0,u,i),d=(t=>{let e=0;for(let n=0;n<=f;n++)for(let r=0;r<u;r++,e+=4)if(255!=t[e])return f-n;return 0})(g)/c,x=(t=>{let e=t.length-4;for(let n=i;n>=f;n--)for(let r=0;r<u;r++,e-=4)if(255!=t[e])return n-f;return 0})(g)/c;return e.restore(),{width:h.width,height:d+x,ascent:d,descent:x}}})(),f=(()=>{try{return o(\"normal 10px sans-serif\"),o}catch(t){return u}})(),h=(()=>{try{return s(\"A\",\"normal 10px sans-serif\"),s}catch(t){return i}})(),g=new Map;function d(t){let e=g.get(t);return null==e&&(e={font:f(t),glyphs:new Map},g.set(t,e)),e.font}n.font_metrics=d,n.glyph_metrics=function(t,e){let n=g.get(e);null==n&&(d(e),n=g.get(e));let r=n.glyphs.get(t);return null==r&&(r=h(t,e),n.glyphs.set(t,r)),r},n.parse_css_font_size=function(t){const e=t.match(/^\\s*(\\d+(\\.\\d+)?)(\\w+)\\s*$/);if(null!=e){const[,t,,n]=e,r=Number(t);if(isFinite(r))return{value:r,unit:n}}return null}},\n function _(e,t,s,_,a){_();const r=e(145),n=e(157),g=e(156),i=e(159),c=e(104),h=e(99),o=e(13),l=e(11);class x{constructor(e,t,s,_,a={},r={}){this.in_x_scale=e,this.in_y_scale=t,this.x_range=s,this.y_range=_,this.extra_x_ranges=a,this.extra_y_ranges=r,this._bbox=new h.BBox,l.assert(null==e.source_range&&null==e.target_range),l.assert(null==t.source_range&&null==t.target_range),this._configure_scales()}get bbox(){return this._bbox}_get_ranges(e,t){return new Map(o.entries(Object.assign(Object.assign({},t),{default:e})))}_get_scales(e,t,s){const _=new Map;for(const[a,g]of t){if(g instanceof c.FactorRange!=e instanceof r.CategoricalScale)throw new Error(`Range ${g.type} is incompatible is Scale ${e.type}`);e instanceof n.LogScale&&g instanceof i.DataRange1d&&(g.scale_hint=\"log\");const t=e.clone();t.setv({source_range:g,target_range:s}),_.set(a,t)}return _}_configure_frame_ranges(){const{bbox:e}=this;this._x_target=new g.Range1d({start:e.left,end:e.right}),this._y_target=new g.Range1d({start:e.bottom,end:e.top})}_configure_scales(){this._configure_frame_ranges(),this._x_ranges=this._get_ranges(this.x_range,this.extra_x_ranges),this._y_ranges=this._get_ranges(this.y_range,this.extra_y_ranges),this._x_scales=this._get_scales(this.in_x_scale,this._x_ranges,this._x_target),this._y_scales=this._get_scales(this.in_y_scale,this._y_ranges,this._y_target)}_update_scales(){this._configure_frame_ranges();for(const[,e]of this._x_scales)e.target_range=this._x_target;for(const[,e]of this._y_scales)e.target_range=this._y_target}set_geometry(e){this._bbox=e,this._update_scales()}get x_target(){return this._x_target}get y_target(){return this._y_target}get x_ranges(){return this._x_ranges}get y_ranges(){return this._y_ranges}get x_scales(){return this._x_scales}get y_scales(){return this._y_scales}get x_scale(){return this._x_scales.get(\"default\")}get y_scale(){return this._y_scales.get(\"default\")}get xscales(){return o.to_object(this.x_scales)}get yscales(){return o.to_object(this.y_scales)}}s.CartesianFrame=x,x.__name__=\"CartesianFrame\"},\n function _(e,t,r,n,_){n();const c=e(146);class s extends c.Scale{constructor(e){super(e)}get s_compute(){const[e,t]=this._linear_compute_state(),r=this.source_range;return n=>e*r.synthetic(n)+t}compute(e){return super._linear_compute(this.source_range.synthetic(e))}v_compute(e){return super._linear_v_compute(this.source_range.v_synthetic(e))}invert(e){return this._linear_invert(e)}v_invert(e){return this._linear_v_invert(e)}}r.CategoricalScale=s,s.__name__=\"CategoricalScale\"},\n function _(t,e,r,n,s){n();const i=t(147),_=t(105),a=t(156),c=t(24);class o extends i.Transform{constructor(t){super(t)}static init_Scale(){this.internal((({Ref:t})=>({source_range:[t(_.Range)],target_range:[t(a.Range1d)]})))}r_compute(t,e){return this.target_range.is_reversed?[this.compute(e),this.compute(t)]:[this.compute(t),this.compute(e)]}r_invert(t,e){return this.target_range.is_reversed?[this.invert(e),this.invert(t)]:[this.invert(t),this.invert(e)]}_linear_compute(t){const[e,r]=this._linear_compute_state();return e*t+r}_linear_v_compute(t){const[e,r]=this._linear_compute_state(),n=new c.ScreenArray(t.length);for(let s=0;s<t.length;s++)n[s]=e*t[s]+r;return n}_linear_invert(t){const[e,r]=this._linear_compute_state();return(t-r)/e}_linear_v_invert(t){const[e,r]=this._linear_compute_state(),n=new Float64Array(t.length);for(let s=0;s<t.length;s++)n[s]=(t[s]-r)/e;return n}_linear_compute_state(){const t=this.source_range.start,e=this.source_range.end,r=this.target_range.start,n=(this.target_range.end-r)/(e-t);return[n,-n*t+r]}}r.Scale=o,o.__name__=\"Scale\",o.init_Scale()},\n function _(r,o,t,e,n){e(),n(\"CustomJSTransform\",r(148).CustomJSTransform),n(\"Dodge\",r(150).Dodge),n(\"Interpolator\",r(152).Interpolator),n(\"Jitter\",r(153).Jitter),n(\"LinearInterpolator\",r(154).LinearInterpolator),n(\"StepInterpolator\",r(155).StepInterpolator),n(\"Transform\",r(149).Transform)},\n function _(t,r,s,n,e){n();const a=t(149),o=t(13),u=t(34);class m extends a.Transform{constructor(t){super(t)}static init_CustomJSTransform(){this.define((({Unknown:t,String:r,Dict:s})=>({args:[s(t),{}],func:[r,\"\"],v_func:[r,\"\"]})))}get names(){return o.keys(this.args)}get values(){return o.values(this.args)}_make_transform(t,r){return new Function(...this.names,t,u.use_strict(r))}get scalar_transform(){return this._make_transform(\"x\",this.func)}get vector_transform(){return this._make_transform(\"xs\",this.v_func)}compute(t){return this.scalar_transform(...this.values,t)}v_compute(t){return this.vector_transform(...this.values,t)}}s.CustomJSTransform=m,m.__name__=\"CustomJSTransform\",m.init_CustomJSTransform()},\n function _(n,s,o,r,c){r();const e=n(53);class t extends e.Model{constructor(n){super(n)}}o.Transform=t,t.__name__=\"Transform\"},\n function _(e,t,n,o,s){o();const i=e(151);class r extends i.RangeTransform{constructor(e){super(e)}static init_Dodge(){this.define((({Number:e})=>({value:[e,0]})))}_compute(e){return e+this.value}}n.Dodge=r,r.__name__=\"Dodge\",r.init_Dodge()},\n function _(e,n,t,r,s){r();const a=e(149),i=e(105),o=e(104),c=e(24),f=e(8);class u extends a.Transform{constructor(e){super(e)}static init_RangeTransform(){this.define((({Ref:e,Nullable:n})=>({range:[n(e(i.Range)),null]})))}v_compute(e){let n;if(this.range instanceof o.FactorRange)n=this.range.v_synthetic(e);else{if(!f.isArrayableOf(e,f.isNumber))throw new Error(\"unexpected\");n=e}const t=new(c.infer_type(n))(n.length);for(let e=0;e<n.length;e++){const r=n[e];t[e]=this._compute(r)}return t}compute(e){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(e));if(f.isNumber(e))return this._compute(e);throw new Error(\"unexpected\")}}t.RangeTransform=u,u.__name__=\"RangeTransform\",u.init_RangeTransform()},\n function _(t,e,r,n,o){n();const s=t(149),i=t(57),a=t(24),h=t(9),l=t(8);class d extends s.Transform{constructor(t){super(t),this._sorted_dirty=!0}static init_Interpolator(){this.define((({Boolean:t,Number:e,String:r,Ref:n,Array:o,Or:s,Nullable:a})=>({x:[s(r,o(e))],y:[s(r,o(e))],data:[a(n(i.ColumnarDataSource)),null],clip:[t,!0]})))}connect_signals(){super.connect_signals(),this.connect(this.change,(()=>this._sorted_dirty=!0))}v_compute(t){const e=new(a.infer_type(t))(t.length);for(let r=0;r<t.length;r++){const n=t[r];e[r]=this.compute(n)}return e}sort(t=!1){if(!this._sorted_dirty)return;let e,r;if(l.isString(this.x)&&l.isString(this.y)&&null!=this.data){const t=this.data.columns();if(!h.includes(t,this.x))throw new Error(\"The x parameter does not correspond to a valid column name defined in the data parameter\");if(!h.includes(t,this.y))throw new Error(\"The y parameter does not correspond to a valid column name defined in the data parameter\");e=this.data.get_column(this.x),r=this.data.get_column(this.y)}else{if(!l.isArray(this.x)||!l.isArray(this.y))throw new Error(\"parameters 'x' and 'y' must be both either string fields or arrays\");e=this.x,r=this.y}if(e.length!==r.length)throw new Error(\"The length for x and y do not match\");if(e.length<2)throw new Error(\"x and y must have at least two elements to support interpolation\");const n=e.length,o=new Uint32Array(n);for(let t=0;t<n;t++)o[t]=t;const s=t?-1:1;o.sort(((t,r)=>s*(e[t]-e[r]))),this._x_sorted=new(a.infer_type(e))(n),this._y_sorted=new(a.infer_type(r))(n);for(let t=0;t<n;t++)this._x_sorted[t]=e[o[t]],this._y_sorted[t]=r[o[t]];this._sorted_dirty=!1}}r.Interpolator=d,d.__name__=\"Interpolator\",d.init_Interpolator()},\n function _(t,i,e,s,r){s();const n=t(1),u=t(151),o=t(20),a=n.__importStar(t(10));class h extends u.RangeTransform{constructor(t){super(t)}static init_Jitter(){this.define((({Number:t})=>({mean:[t,0],width:[t,1],distribution:[o.Distribution,\"uniform\"]})))}v_compute(t){return null!=this.previous_values&&this.previous_values.length==t.length||(this.previous_values=super.v_compute(t)),this.previous_values}_compute(t){switch(this.distribution){case\"uniform\":return t+this.mean+(a.random()-.5)*this.width;case\"normal\":return t+a.rnorm(this.mean,this.width)}}}e.Jitter=h,h.__name__=\"Jitter\",h.init_Jitter()},\n function _(t,s,_,r,e){r();const i=t(9),o=t(152);class n extends o.Interpolator{constructor(t){super(t)}compute(t){if(this.sort(!1),this.clip){if(t<this._x_sorted[0]||t>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(t<this._x_sorted[0])return this._y_sorted[0];if(t>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}if(t==this._x_sorted[0])return this._y_sorted[0];const s=i.find_last_index(this._x_sorted,(s=>s<t)),_=this._x_sorted[s],r=this._x_sorted[s+1],e=this._y_sorted[s],o=this._y_sorted[s+1];return e+(t-_)/(r-_)*(o-e)}}_.LinearInterpolator=n,n.__name__=\"LinearInterpolator\"},\n function _(t,e,s,r,o){r();const i=t(152),_=t(20),n=t(9);class d extends i.Interpolator{constructor(t){super(t)}static init_StepInterpolator(){this.define((()=>({mode:[_.StepMode,\"after\"]})))}compute(t){if(this.sort(!1),this.clip){if(t<this._x_sorted[0]||t>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(t<this._x_sorted[0])return this._y_sorted[0];if(t>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}let e;switch(this.mode){case\"after\":e=n.find_last_index(this._x_sorted,(e=>t>=e));break;case\"before\":e=n.find_index(this._x_sorted,(e=>t<=e));break;case\"center\":{const s=n.map(this._x_sorted,(e=>Math.abs(e-t))),r=n.min(s);e=n.find_index(s,(t=>r===t));break}default:throw new Error(`unknown mode: ${this.mode}`)}return-1!=e?this._y_sorted[e]:NaN}}s.StepInterpolator=d,d.__name__=\"StepInterpolator\",d.init_StepInterpolator()},\n function _(t,e,s,n,i){n();const a=t(105);class r extends a.Range{constructor(t){super(t)}static init_Range1d(){this.define((({Number:t,Nullable:e})=>({start:[t,0],end:[t,1],reset_start:[e(t),null,{on_update(t,e){e._reset_start=null!=t?t:e.start}}],reset_end:[e(t),null,{on_update(t,e){e._reset_end=null!=t?t:e.end}}]})))}_set_auto_bounds(){if(\"auto\"==this.bounds){const t=Math.min(this._reset_start,this._reset_end),e=Math.max(this._reset_start,this._reset_end);this.setv({bounds:[t,e]},{silent:!0})}}initialize(){super.initialize(),this._set_auto_bounds()}get min(){return Math.min(this.start,this.end)}get max(){return Math.max(this.start,this.end)}reset(){this._set_auto_bounds();const{_reset_start:t,_reset_end:e}=this;this.start!=t||this.end!=e?this.setv({start:t,end:e}):this.change.emit()}map(t){return new r({start:t(this.start),end:t(this.end)})}widen(t){let{start:e,end:s}=this;return this.is_reversed?(e+=t,s-=t):(e-=t,s+=t),new r({start:e,end:s})}}s.Range1d=r,r.__name__=\"Range1d\",r.init_Range1d()},\n function _(t,e,o,n,s){n();const a=t(158),r=t(24);class c extends a.ContinuousScale{constructor(t){super(t)}get s_compute(){const[t,e,o,n]=this._compute_state();return s=>{if(0==o)return 0;{const a=(Math.log(s)-n)/o;return isFinite(a)?a*t+e:NaN}}}compute(t){const[e,o,n,s]=this._compute_state();let a;if(0==n)a=0;else{const r=(Math.log(t)-s)/n;a=isFinite(r)?r*e+o:NaN}return a}v_compute(t){const[e,o,n,s]=this._compute_state(),a=new r.ScreenArray(t.length);if(0==n)for(let e=0;e<t.length;e++)a[e]=0;else for(let r=0;r<t.length;r++){const c=(Math.log(t[r])-s)/n;let l;l=isFinite(c)?c*e+o:NaN,a[r]=l}return a}invert(t){const[e,o,n,s]=this._compute_state(),a=(t-o)/e;return Math.exp(n*a+s)}v_invert(t){const[e,o,n,s]=this._compute_state(),a=new Float64Array(t.length);for(let r=0;r<t.length;r++){const c=(t[r]-o)/e;a[r]=Math.exp(n*c+s)}return a}_get_safe_factor(t,e){let o=t<0?0:t,n=e<0?0:e;if(o==n)if(0==o)[o,n]=[1,10];else{const t=Math.log(o)/Math.log(10);o=10**Math.floor(t),n=Math.ceil(t)!=Math.floor(t)?10**Math.ceil(t):10**(Math.ceil(t)+1)}return[o,n]}_compute_state(){const t=this.source_range.start,e=this.source_range.end,o=this.target_range.start,n=this.target_range.end-o,[s,a]=this._get_safe_factor(t,e);let r,c;0==s?(r=Math.log(a),c=0):(r=Math.log(a)-Math.log(s),c=Math.log(s));return[n,o,r,c]}}o.LogScale=c,c.__name__=\"LogScale\"},\n function _(n,c,o,s,e){s();const t=n(146);class u extends t.Scale{constructor(n){super(n)}}o.ContinuousScale=u,u.__name__=\"ContinuousScale\"},\n function _(t,i,n,a,e){a();const s=t(1),l=t(160),_=t(20),o=t(9),h=t(19),r=s.__importStar(t(99)),d=t(161);class u extends l.DataRange{constructor(t){super(t),this.have_updated_interactively=!1}static init_DataRange1d(){this.define((({Boolean:t,Number:i,Nullable:n})=>({start:[i],end:[i],range_padding:[i,.1],range_padding_units:[_.PaddingUnits,\"percent\"],flipped:[t,!1],follow:[n(_.StartEnd),null],follow_interval:[n(i),null],default_span:[i,2],only_visible:[t,!1]}))),this.internal((({Enum:t})=>({scale_hint:[t(\"log\",\"auto\"),\"auto\"]})))}initialize(){super.initialize(),this._initial_start=this.start,this._initial_end=this.end,this._initial_range_padding=this.range_padding,this._initial_range_padding_units=this.range_padding_units,this._initial_follow=this.follow,this._initial_follow_interval=this.follow_interval,this._initial_default_span=this.default_span,this._plot_bounds=new Map}get min(){return Math.min(this.start,this.end)}get max(){return Math.max(this.start,this.end)}computed_renderers(){const{renderers:t,names:i}=this,n=o.concat(this.plots.map((t=>t.data_renderers)));return d.compute_renderers(0==t.length?\"auto\":t,n,i)}_compute_plot_bounds(t,i){let n=r.empty();for(const a of t){const t=i.get(a);null==t||!a.visible&&this.only_visible||(n=r.union(n,t))}return n}adjust_bounds_for_aspect(t,i){const n=r.empty();let a=t.x1-t.x0;a<=0&&(a=1);let e=t.y1-t.y0;e<=0&&(e=1);const s=.5*(t.x1+t.x0),l=.5*(t.y1+t.y0);return a<i*e?a=i*e:e=a/i,n.x1=s+.5*a,n.x0=s-.5*a,n.y1=l+.5*e,n.y0=l-.5*e,n}_compute_min_max(t,i){let n,a,e=r.empty();for(const i of t)e=r.union(e,i);return[n,a]=0==i?[e.x0,e.x1]:[e.y0,e.y1],[n,a]}_compute_range(t,i){const n=this.range_padding;let a,e;if(null!=this._initial_start&&(t=this._initial_start),null!=this._initial_end&&(i=this._initial_end),\"log\"==this.scale_hint){let s,l;if((isNaN(t)||!isFinite(t)||t<=0)&&(t=isNaN(i)||!isFinite(i)||i<=0?.1:i/100,h.logger.warn(`could not determine minimum data value for log axis, DataRange1d using value ${t}`)),(isNaN(i)||!isFinite(i)||i<=0)&&(i=isNaN(t)||!isFinite(t)||t<=0?10:100*t,h.logger.warn(`could not determine maximum data value for log axis, DataRange1d using value ${i}`)),i==t)l=this.default_span+.001,s=Math.log(t)/Math.log(10);else{let a,e;\"percent\"==this.range_padding_units?(a=Math.log(t)/Math.log(10),e=Math.log(i)/Math.log(10),l=(e-a)*(1+n)):(a=Math.log(t-n)/Math.log(10),e=Math.log(i+n)/Math.log(10),l=e-a),s=(a+e)/2}a=10**(s-l/2),e=10**(s+l/2)}else{let s;s=i==t?this.default_span:\"percent\"==this.range_padding_units?(i-t)*(1+n):i-t+2*n;const l=(i+t)/2;a=l-s/2,e=l+s/2}let s=1;this.flipped&&([a,e]=[e,a],s=-1);const l=this.follow_interval;return null!=l&&Math.abs(a-e)>l&&(\"start\"==this.follow?e=a+s*l:\"end\"==this.follow&&(a=e-s*l)),[a,e]}update(t,i,n,a){if(this.have_updated_interactively)return;const e=this.computed_renderers();let s=this._compute_plot_bounds(e,t);null!=a&&(s=this.adjust_bounds_for_aspect(s,a)),this._plot_bounds.set(n,s);const[l,_]=this._compute_min_max(this._plot_bounds.values(),i);let[o,h]=this._compute_range(l,_);null!=this._initial_start&&(\"log\"==this.scale_hint?this._initial_start>0&&(o=this._initial_start):o=this._initial_start),null!=this._initial_end&&(\"log\"==this.scale_hint?this._initial_end>0&&(h=this._initial_end):h=this._initial_end);let r=!1;\"auto\"==this.bounds&&(this.setv({bounds:[o,h]},{silent:!0}),r=!0);const[d,u]=[this.start,this.end];if(o!=d||h!=u){const t={};o!=d&&(t.start=o),h!=u&&(t.end=h),this.setv(t),r=!1}r&&this.change.emit()}reset(){this.have_updated_interactively=!1,this.setv({range_padding:this._initial_range_padding,range_padding_units:this._initial_range_padding_units,follow:this._initial_follow,follow_interval:this._initial_follow_interval,default_span:this._initial_default_span},{silent:!0}),this.change.emit()}}n.DataRange1d=u,u.__name__=\"DataRange1d\",u.init_DataRange1d()},\n function _(a,e,n,t,r){t();const s=a(105),i=a(62);class R extends s.Range{constructor(a){super(a)}static init_DataRange(){this.define((({String:a,Array:e,Ref:n})=>({names:[e(a),[]],renderers:[e(n(i.DataRenderer)),[]]})))}}n.DataRange=R,R.__name__=\"DataRange\",R.init_DataRange()},\n function _(n,e,t,r,u){r();const l=n(9);t.compute_renderers=function(n,e,t){if(null==n)return[];let r=\"auto\"==n?e:n;return t.length>0&&(r=r.filter((n=>l.includes(t,n.name)))),r}},\n function _(i,s,x,A,o){A(),o(\"Axis\",i(163).Axis),o(\"CategoricalAxis\",i(170).CategoricalAxis),o(\"ContinuousAxis\",i(173).ContinuousAxis),o(\"DatetimeAxis\",i(174).DatetimeAxis),o(\"LinearAxis\",i(175).LinearAxis),o(\"LogAxis\",i(192).LogAxis),o(\"MercatorAxis\",i(195).MercatorAxis)},\n function _(t,e,i,s,o){s();const n=t(1),a=t(164),l=t(165),r=t(166),_=t(169),h=n.__importStar(t(48)),c=t(20),b=t(24),m=t(140),d=t(9),u=t(8),x=t(167),g=t(104),{abs:f}=Math;class p extends a.GuideRendererView{update_layout(){this.layout=new m.SideLayout(this.panel,(()=>this.get_size()),!0),this.layout.on_resize((()=>this._coordinates=void 0))}get_size(){const{visible:t,fixed_location:e}=this.model;if(t&&null==e&&this.is_renderable){const{extents:t}=this;return{width:0,height:Math.round(t.tick+t.tick_label+t.axis_label)}}return{width:0,height:0}}get is_renderable(){const[t,e]=this.ranges;return t.is_valid&&e.is_valid}_render(){var t;if(!this.is_renderable)return;const{tick_coords:e,extents:i}=this,s=this.layer.ctx;s.save(),this._draw_rule(s,i),this._draw_major_ticks(s,i,e),this._draw_minor_ticks(s,i,e),this._draw_major_labels(s,i,e),this._draw_axis_label(s,i,e),null===(t=this._paint)||void 0===t||t.call(this,s,i,e),s.restore()}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.plot_view.request_layout()))}get needs_clip(){return null!=this.model.fixed_location}_draw_rule(t,e){if(!this.visuals.axis_line.doit)return;const[i,s]=this.rule_coords,[o,n]=this.coordinates.map_to_screen(i,s),[a,l]=this.normals,[r,_]=this.offsets;this.visuals.axis_line.set_value(t),t.beginPath();for(let e=0;e<o.length;e++){const i=Math.round(o[e]+a*r),s=Math.round(n[e]+l*_);t.lineTo(i,s)}t.stroke()}_draw_major_ticks(t,e,i){const s=this.model.major_tick_in,o=this.model.major_tick_out,n=this.visuals.major_tick_line;this._draw_ticks(t,i.major,s,o,n)}_draw_minor_ticks(t,e,i){const s=this.model.minor_tick_in,o=this.model.minor_tick_out,n=this.visuals.minor_tick_line;this._draw_ticks(t,i.minor,s,o,n)}_draw_major_labels(t,e,i){const s=i.major,o=this.compute_labels(s[this.dimension]),n=this.model.major_label_orientation,a=e.tick+this.model.major_label_standoff,l=this.visuals.major_label_text;this._draw_oriented_labels(t,o,s,n,this.panel.side,a,l)}_axis_label_extent(){const t=this.model.axis_label;if(!t)return 0;const e=new x.TextBox({text:t});e.visuals=this.visuals.axis_label_text,e.angle=this.panel.get_label_angle_heuristic(\"parallel\"),e.base_font_size=this.plot_view.base_font_size;const i=e.size(),s=0==this.dimension?i.height:i.width,o=this.model.axis_label_standoff;return s>0?o+s+3:0}_draw_axis_label(t,e,i){const s=this.model.axis_label;if(!s||null!=this.model.fixed_location)return;const o=new x.TextBox({text:s});o.visuals=this.visuals.axis_label_text,o.angle=this.panel.get_label_angle_heuristic(\"parallel\"),o.base_font_size=this.plot_view.base_font_size;const[n,a]=(()=>{const{bbox:t}=this.layout;switch(this.panel.side){case\"above\":return[t.hcenter,t.bottom];case\"below\":return[t.hcenter,t.top];case\"left\":return[t.right,t.vcenter];case\"right\":return[t.left,t.vcenter]}})(),[l,r]=this.normals,_=e.tick+e.tick_label+this.model.axis_label_standoff,{vertical_align:h,align:c}=this.panel.get_label_text_heuristics(\"parallel\");o.position={sx:n+l*_,sy:a+r*_,x_anchor:c,y_anchor:h},o.align=c,o.paint(t)}_draw_ticks(t,e,i,s,o){if(!o.doit)return;const[n,a]=e,[l,r]=this.coordinates.map_to_screen(n,a),[_,h]=this.normals,[c,b]=this.offsets,[m,d]=[_*(c-i),h*(b-i)],[u,x]=[_*(c+s),h*(b+s)];o.set_value(t),t.beginPath();for(let e=0;e<l.length;e++){const i=Math.round(l[e]+u),s=Math.round(r[e]+x),o=Math.round(l[e]+m),n=Math.round(r[e]+d);t.moveTo(i,s),t.lineTo(o,n)}t.stroke()}_draw_oriented_labels(t,e,i,s,o,n,a){if(!a.doit||0==e.length)return;const[l,r]=i,[_,h]=this.coordinates.map_to_screen(l,r),[c,m]=this.offsets,[d,u]=this.normals,g=d*(c+n),f=u*(m+n),{vertical_align:p,align:k}=this.panel.get_label_text_heuristics(s),w=this.panel.get_label_angle_heuristic(s);e.visuals=a,e.angle=w,e.base_font_size=this.plot_view.base_font_size;for(let t=0;t<e.length;t++){const i=e.items[t];i.position={sx:_[t]+g,sy:h[t]+f,x_anchor:k,y_anchor:p},i instanceof x.TextBox&&(i.align=k)}const j=e.length,v=b.Indices.all_set(j),{items:y}=e,z=y.map((t=>t.bbox())),T=(()=>{const[t]=this.ranges;return t.is_reversed?0==this.dimension?(t,e)=>z[t].left-z[e].right:(t,e)=>z[e].top-z[t].bottom:0==this.dimension?(t,e)=>z[e].left-z[t].right:(t,e)=>z[t].top-z[e].bottom})(),{major_label_policy:O}=this.model,A=O.filter(v,z,T),M=[...A.ones()];if(0!=M.length){const t=this.parent.canvas_view.bbox,e=e=>{const i=z[e];if(i.left<0){const t=-i.left,{position:s}=y[e];y[e].position=Object.assign(Object.assign({},s),{sx:s.sx+t})}else if(i.right>t.width){const s=i.right-t.width,{position:o}=y[e];y[e].position=Object.assign(Object.assign({},o),{sx:o.sx-s})}},i=e=>{const i=z[e];if(i.top<0){const t=-i.top,{position:s}=y[e];y[e].position=Object.assign(Object.assign({},s),{sy:s.sy+t})}else if(i.bottom>t.height){const s=i.bottom-t.height,{position:o}=y[e];y[e].position=Object.assign(Object.assign({},o),{sy:o.sy-s})}},s=M[0],o=M[M.length-1];0==this.dimension?(e(s),e(o)):(i(s),i(o))}for(const e of A){y[e].paint(t)}}_tick_extent(){return this.model.major_tick_out}_tick_label_extents(){const t=this.tick_coords.major,e=this.compute_labels(t[this.dimension]),i=this.model.major_label_orientation,s=this.model.major_label_standoff,o=this.visuals.major_label_text;return[this._oriented_labels_extent(e,i,s,o)]}get extents(){const t=this._tick_label_extents();return{tick:this._tick_extent(),tick_labels:t,tick_label:d.sum(t),axis_label:this._axis_label_extent()}}_oriented_labels_extent(t,e,i,s){if(0==t.length)return 0;const o=this.panel.get_label_angle_heuristic(e);t.visuals=s,t.angle=o,t.base_font_size=this.plot_view.base_font_size;const n=t.max_size(),a=0==this.dimension?n.height:n.width;return a>0?i+a+3:0}get normals(){return this.panel.normals}get dimension(){return this.panel.dimension}compute_labels(t){const e=this.model.formatter.format_graphics(t,this),{major_label_overrides:i}=this.model;for(let s=0;s<t.length;s++){const o=i[t[s]];null!=o&&(e[s]=new x.TextBox({text:o}))}return new x.GraphicsBoxes(e)}get offsets(){if(null!=this.model.fixed_location)return[0,0];const{frame:t}=this.plot_view;let[e,i]=[0,0];switch(this.panel.side){case\"below\":i=f(this.layout.bbox.top-t.bbox.bottom);break;case\"above\":i=f(this.layout.bbox.bottom-t.bbox.top);break;case\"right\":e=f(this.layout.bbox.left-t.bbox.right);break;case\"left\":e=f(this.layout.bbox.right-t.bbox.left)}return[e,i]}get ranges(){const t=this.dimension,e=(t+1)%2,{ranges:i}=this.coordinates;return[i[t],i[e]]}get computed_bounds(){const[t]=this.ranges,e=this.model.bounds,i=[t.min,t.max];if(\"auto\"==e)return[t.min,t.max];{let t,s;const[o,n]=e,[a,l]=i,{min:r,max:_}=Math;return f(o-n)>f(a-l)?(t=_(r(o,n),a),s=r(_(o,n),l)):(t=r(o,n),s=_(o,n)),[t,s]}}get rule_coords(){const t=this.dimension,e=(t+1)%2,[i]=this.ranges,[s,o]=this.computed_bounds,n=[new Array(2),new Array(2)];return n[t][0]=Math.max(s,i.min),n[t][1]=Math.min(o,i.max),n[t][0]>n[t][1]&&(n[t][0]=n[t][1]=NaN),n[e][0]=this.loc,n[e][1]=this.loc,n}get tick_coords(){const t=this.dimension,e=(t+1)%2,[i]=this.ranges,[s,o]=this.computed_bounds,n=this.model.ticker.get_ticks(s,o,i,this.loc),a=n.major,l=n.minor,r=[[],[]],_=[[],[]],[h,c]=[i.min,i.max];for(let i=0;i<a.length;i++)a[i]<h||a[i]>c||(r[t].push(a[i]),r[e].push(this.loc));for(let i=0;i<l.length;i++)l[i]<h||l[i]>c||(_[t].push(l[i]),_[e].push(this.loc));return{major:r,minor:_}}get loc(){const{fixed_location:t}=this.model;if(null!=t){if(u.isNumber(t))return t;const[,e]=this.ranges;if(e instanceof g.FactorRange)return e.synthetic(t);throw new Error(\"unexpected\")}const[,e]=this.ranges;switch(this.panel.side){case\"left\":case\"below\":return e.start;case\"right\":case\"above\":return e.end}}serializable_state(){return Object.assign(Object.assign({},super.serializable_state()),{bbox:this.layout.bbox.box})}}i.AxisView=p,p.__name__=\"AxisView\";class k extends a.GuideRenderer{constructor(t){super(t)}static init_Axis(){this.prototype.default_view=p,this.mixins([[\"axis_\",h.Line],[\"major_tick_\",h.Line],[\"minor_tick_\",h.Line],[\"major_label_\",h.Text],[\"axis_label_\",h.Text]]),this.define((({Any:t,Int:e,Number:i,String:s,Ref:o,Dict:n,Tuple:a,Or:h,Nullable:b,Auto:m})=>({bounds:[h(a(i,i),m),\"auto\"],ticker:[o(l.Ticker)],formatter:[o(r.TickFormatter)],axis_label:[b(s),\"\"],axis_label_standoff:[e,5],major_label_standoff:[e,5],major_label_orientation:[h(c.TickLabelOrientation,i),\"horizontal\"],major_label_overrides:[n(s),{}],major_label_policy:[o(_.LabelingPolicy),()=>new _.AllLabels],major_tick_in:[i,2],major_tick_out:[i,6],minor_tick_in:[i,0],minor_tick_out:[i,4],fixed_location:[b(h(i,t)),null]}))),this.override({axis_line_color:\"black\",major_tick_line_color:\"black\",minor_tick_line_color:\"black\",major_label_text_font_size:\"11px\",major_label_text_align:\"center\",major_label_text_baseline:\"alphabetic\",axis_label_text_font_size:\"13px\",axis_label_text_font_style:\"italic\"})}}i.Axis=k,k.__name__=\"Axis\",k.init_Axis()},\n function _(e,r,d,i,n){i();const s=e(41);class t extends s.RendererView{}d.GuideRendererView=t,t.__name__=\"GuideRendererView\";class _ extends s.Renderer{constructor(e){super(e)}static init_GuideRenderer(){this.override({level:\"guide\"})}}d.GuideRenderer=_,_.__name__=\"GuideRenderer\",_.init_GuideRenderer()},\n function _(c,e,n,s,o){s();const r=c(53);class t extends r.Model{constructor(c){super(c)}}n.Ticker=t,t.__name__=\"Ticker\"},\n function _(t,o,r,e,c){e();const n=t(53),a=t(167);class m extends n.Model{constructor(t){super(t)}format_graphics(t,o){return this.doFormat(t,o).map((t=>new a.TextBox({text:t})))}compute(t,o){return this.doFormat([t],null!=o?o:{loc:0})[0]}v_compute(t,o){return this.doFormat(t,null!=o?o:{loc:0})}}r.TickFormatter=m,m.__name__=\"TickFormatter\"},\n function _(t,e,s,i,n){i();const h=t(99),o=t(143),a=t(9),r=t(8),c=t(168),_=t(22);s.text_width=(()=>{const t=document.createElement(\"canvas\").getContext(\"2d\");let e=\"\";return(s,i)=>(i!=e&&(e=i,t.font=i),t.measureText(s).width)})();class l{constructor(){this._position={sx:0,sy:0},this.font_size_scale=1,this._base_font_size=13}set base_font_size(t){this._base_font_size=t}get base_font_size(){return this._base_font_size}set position(t){this._position=t}get position(){return this._position}infer_text_height(){return\"ascent_descent\"}bbox(){const{p0:t,p1:e,p2:s,p3:i}=this.rect(),n=Math.min(t.x,e.x,s.x,i.x),o=Math.min(t.y,e.y,s.y,i.y),a=Math.max(t.x,e.x,s.x,i.x),r=Math.max(t.y,e.y,s.y,i.y);return new h.BBox({left:n,right:a,top:o,bottom:r})}size(){const{width:t,height:e}=this._size(),{angle:s}=this;if(s){const i=Math.cos(Math.abs(s)),n=Math.sin(Math.abs(s));return{width:Math.abs(t*i+e*n),height:Math.abs(t*n+e*i)}}return{width:t,height:e}}rect(){const t=this._rect(),{angle:e}=this;if(e){const{sx:s,sy:i}=this.position,n=new c.AffineTransform;return n.translate(s,i),n.rotate(e),n.translate(-s,-i),n.apply_rect(t)}return t}paint_rect(t){const{p0:e,p1:s,p2:i,p3:n}=this.rect();t.save(),t.strokeStyle=\"red\",t.lineWidth=1,t.beginPath();const{round:h}=Math;t.moveTo(h(e.x),h(e.y)),t.lineTo(h(s.x),h(s.y)),t.lineTo(h(i.x),h(i.y)),t.lineTo(h(n.x),h(n.y)),t.closePath(),t.stroke(),t.restore()}paint_bbox(t){const{x:e,y:s,width:i,height:n}=this.bbox();t.save(),t.strokeStyle=\"blue\",t.lineWidth=1,t.beginPath();const{round:h}=Math;t.moveTo(h(e),h(s)),t.lineTo(h(e),h(s+n)),t.lineTo(h(e+i),h(s+n)),t.lineTo(h(e+i),h(s)),t.closePath(),t.stroke(),t.restore()}}s.GraphicsBox=l,l.__name__=\"GraphicsBox\";class x extends l{constructor({text:t}){super(),this.align=\"left\",this.text=t}set visuals(t){const e=t.text_color.get_value(),s=t.text_alpha.get_value(),i=t.text_font_style.get_value();let n=t.text_font_size.get_value();const h=t.text_font.get_value(),{font_size_scale:a,base_font_size:r}=this,c=o.parse_css_font_size(n);if(null!=c){let{value:t,unit:e}=c;t*=a,\"em\"==e&&r&&(t*=r,e=\"px\"),n=`${t}${e}`}const l=`${i} ${n} ${h}`;this.font=l,this.color=_.color2css(e,s),this.line_height=t.text_line_height.get_value()}infer_text_height(){if(this.text.includes(\"\\n\"))return\"ascent_descent\";return function(t){for(const e of new Set(t))if(!(\"0\"<=e&&e<=\"9\"))switch(e){case\",\":case\".\":case\"+\":case\"-\":case\"−\":case\"e\":continue;default:return!1}return!0}(this.text)?\"cap\":\"ascent_descent\"}_text_line(t){var e;const s=null!==(e=this.text_height_metric)&&void 0!==e?e:this.infer_text_height(),i=(()=>{switch(s){case\"x\":case\"x_descent\":return t.x_height;case\"cap\":case\"cap_descent\":return t.cap_height;case\"ascent\":case\"ascent_descent\":return t.ascent}})(),n=(()=>{switch(s){case\"x\":case\"cap\":case\"ascent\":return 0;case\"x_descent\":case\"cap_descent\":case\"ascent_descent\":return t.descent}})();return{height:i+n,ascent:i,descent:n}}get nlines(){return this.text.split(\"\\n\").length}_size(){var t,e;const{font:i}=this,n=o.font_metrics(i),h=(this.line_height-1)*n.height,r=\"\"==this.text,c=this.text.split(\"\\n\"),_=c.length,l=c.map((t=>s.text_width(t,i))),x=this._text_line(n).height*_,u=\"%\"==(null===(t=this.width)||void 0===t?void 0:t.unit)?this.width.value:1,p=\"%\"==(null===(e=this.height)||void 0===e?void 0:e.unit)?this.height.value:1;return{width:a.max(l)*u,height:r?0:(x+h*(_-1))*p,metrics:n}}_computed_position(t,e,s){const{width:i,height:n}=t,{sx:h,sy:o,x_anchor:a=\"left\",y_anchor:c=\"center\"}=this.position;return{x:h-(()=>{if(r.isNumber(a))return a*i;switch(a){case\"left\":return 0;case\"center\":return.5*i;case\"right\":return i}})(),y:o-(()=>{var t;if(r.isNumber(c))return c*n;switch(c){case\"top\":return 0;case\"center\":return.5*n;case\"bottom\":return n;case\"baseline\":if(1!=s)return.5*n;switch(null!==(t=this.text_height_metric)&&void 0!==t?t:this.infer_text_height()){case\"x\":case\"x_descent\":return e.x_height;case\"cap\":case\"cap_descent\":return e.cap_height;case\"ascent\":case\"ascent_descent\":return e.ascent}}})()}}_rect(){const{width:t,height:e,metrics:s}=this._size(),i=this.text.split(\"\\n\").length,{x:n,y:o}=this._computed_position({width:t,height:e},s,i);return new h.BBox({x:n,y:o,width:t,height:e}).rect}paint(t){var e,i;const{font:n}=this,h=o.font_metrics(n),r=(this.line_height-1)*h.height,c=this.text.split(\"\\n\"),_=c.length,l=c.map((t=>s.text_width(t,n))),x=this._text_line(h),u=x.height*_,p=\"%\"==(null===(e=this.width)||void 0===e?void 0:e.unit)?this.width.value:1,f=\"%\"==(null===(i=this.height)||void 0===i?void 0:i.unit)?this.height.value:1,g=a.max(l)*p,d=(u+r*(_-1))*f;t.save(),t.fillStyle=this.color,t.font=this.font,t.textAlign=\"left\",t.textBaseline=\"alphabetic\";const{sx:b,sy:m}=this.position,{align:y}=this,{angle:v}=this;v&&(t.translate(b,m),t.rotate(v),t.translate(-b,-m));let{x:w,y:z}=this._computed_position({width:g,height:d},h,_);if(\"justify\"==y)for(let e=0;e<_;e++){let i=w;const h=c[e].split(\" \"),o=h.length,_=h.map((t=>s.text_width(t,n))),l=(g-a.sum(_))/(o-1);for(let e=0;e<o;e++)t.fillText(h[e],i,z),i+=_[e]+l;z+=x.height+r}else for(let e=0;e<_;e++){const s=w+(()=>{switch(y){case\"left\":return 0;case\"center\":return.5*(g-l[e]);case\"right\":return g-l[e]}})();t.fillStyle=this.color,t.fillText(c[e],s,z+x.ascent),z+=x.height+r}t.restore()}}s.TextBox=x,x.__name__=\"TextBox\";class u extends l{constructor(t,e){super(),this.base=t,this.expo=e}get children(){return[this.base,this.expo]}set base_font_size(t){super.base_font_size=t,this.base.base_font_size=t,this.expo.base_font_size=t}set position(t){this._position=t;const e=this.base.size(),s=this.expo.size(),i=this._shift_scale()*e.height,n=Math.max(e.height,i+s.height);this.base.position={sx:0,x_anchor:\"left\",sy:n,y_anchor:\"bottom\"},this.expo.position={sx:e.width,x_anchor:\"left\",sy:i,y_anchor:\"bottom\"}}get position(){return this._position}set visuals(t){this.expo.font_size_scale=.7,this.base.visuals=t,this.expo.visuals=t}_shift_scale(){if(this.base instanceof x&&1==this.base.nlines){const{x_height:t,cap_height:e}=o.font_metrics(this.base.font);return t/e}return 2/3}infer_text_height(){return this.base.infer_text_height()}_rect(){const t=this.base.bbox(),e=this.expo.bbox(),s=t.union(e),{x:i,y:n}=this._computed_position();return s.translate(i,n).rect}_size(){const t=this.base.size(),e=this.expo.size();return{width:t.width+e.width,height:Math.max(t.height,this._shift_scale()*t.height+e.height)}}paint(t){t.save();const{angle:e}=this;if(e){const{sx:s,sy:i}=this.position;t.translate(s,i),t.rotate(e),t.translate(-s,-i)}const{x:s,y:i}=this._computed_position();t.translate(s,i),this.base.paint(t),this.expo.paint(t),t.restore()}paint_bbox(t){super.paint_bbox(t);const{x:e,y:s}=this._computed_position();t.save(),t.translate(e,s);for(const e of this.children)e.paint_bbox(t);t.restore()}_computed_position(){const{width:t,height:e}=this._size(),{sx:s,sy:i,x_anchor:n=\"left\",y_anchor:h=\"center\"}=this.position;return{x:s-(()=>{if(r.isNumber(n))return n*t;switch(n){case\"left\":return 0;case\"center\":return.5*t;case\"right\":return t}})(),y:i-(()=>{if(r.isNumber(h))return h*e;switch(h){case\"top\":return 0;case\"center\":return.5*e;case\"bottom\":return e;case\"baseline\":return.5*e}})()}}}s.BaseExpo=u,u.__name__=\"BaseExpo\";class p{constructor(t){this.items=t}set base_font_size(t){for(const e of this.items)e.base_font_size=t}get length(){return this.items.length}set visuals(t){for(const e of this.items)e.visuals=t;const e={x:0,cap:1,ascent:2,x_descent:3,cap_descent:4,ascent_descent:5},s=a.max_by(this.items.map((t=>t.infer_text_height())),(t=>e[t]));for(const t of this.items)t.text_height_metric=s}set angle(t){for(const e of this.items)e.angle=t}max_size(){let t=0,e=0;for(const s of this.items){const i=s.size();t=Math.max(t,i.width),e=Math.max(e,i.height)}return{width:t,height:e}}}s.GraphicsBoxes=p,p.__name__=\"GraphicsBoxes\"},\n function _(t,s,r,n,i){n();const{sin:e,cos:a}=Math;class h{constructor(t=1,s=0,r=0,n=1,i=0,e=0){this.a=t,this.b=s,this.c=r,this.d=n,this.e=i,this.f=e}toString(){const{a:t,b:s,c:r,d:n,e:i,f:e}=this;return`matrix(${t}, ${s}, ${r}, ${n}, ${i}, ${e})`}clone(){const{a:t,b:s,c:r,d:n,e:i,f:e}=this;return new h(t,s,r,n,i,e)}get is_identity(){const{a:t,b:s,c:r,d:n,e:i,f:e}=this;return 1==t&&0==s&&0==r&&1==n&&0==i&&0==e}apply_point(t){const[s,r]=this.apply(t.x,t.y);return{x:s,y:r}}apply_rect(t){return{p0:this.apply_point(t.p0),p1:this.apply_point(t.p1),p2:this.apply_point(t.p2),p3:this.apply_point(t.p3)}}apply(t,s){const{a:r,b:n,c:i,d:e,e:a,f:h}=this;return[r*t+i*s+a,n*t+e*s+h]}iv_apply(t,s){const{a:r,b:n,c:i,d:e,e:a,f:h}=this,p=t.length;for(let o=0;o<p;o++){const p=t[o],c=s[o];t[o]=r*p+i*c+a,s[o]=n*p+e*c+h}}transform(t,s,r,n,i,e){const{a,b:h,c:p,d:o,e:c,f:l}=this;return this.a=a*t+p*s,this.c=a*r+p*n,this.e=a*i+p*e+c,this.b=h*t+o*s,this.d=h*r+o*n,this.f=h*i+o*e+l,this}translate(t,s){return this.transform(1,0,0,1,t,s)}scale(t,s){return this.transform(t,0,0,s,0,0)}skew(t,s){return this.transform(1,s,t,1,0,0)}rotate(t){const s=e(t),r=a(t);return this.transform(r,s,-s,r,0,0)}rotate_ccw(t){return this.rotate(-t)}translate_x(t){return this.translate(t,0)}translate_y(t){return this.translate(0,t)}flip(){return this.scale(-1,-1)}flip_x(){return this.scale(1,-1)}flip_y(){return this.scale(-1,1)}}r.AffineTransform=h,h.__name__=\"AffineTransform\"},\n function _(e,n,s,t,i){t();const l=e(53),c=e(13),o=e(34),r=e(8),a=e(24);class u extends l.Model{constructor(e){super(e)}}s.LabelingPolicy=u,u.__name__=\"LabelingPolicy\";class _ extends u{constructor(e){super(e)}filter(e,n,s){return e}}s.AllLabels=_,_.__name__=\"AllLabels\";class d extends u{constructor(e){super(e)}static init_NoOverlap(){this.define((({Number:e})=>({min_distance:[e,5]})))}filter(e,n,s){const{min_distance:t}=this;let i=null;for(const n of e)null!=i&&s(i,n)<t?e.unset(n):i=n;return e}}s.NoOverlap=d,d.__name__=\"NoOverlap\",d.init_NoOverlap();class m extends u{constructor(e){super(e)}static init_CustomLabelingPolicy(){this.define((({Unknown:e,String:n,Dict:s})=>({args:[s(e),{}],code:[n,\"\"]})))}get names(){return c.keys(this.args)}get values(){return c.values(this.args)}get func(){const e=o.use_strict(this.code);return new a.GeneratorFunction(\"indices\",\"bboxes\",\"distance\",...this.names,e)}filter(e,n,s){const t=Object.create(null),i=this.func.call(t,e,n,s,...this.values);let l=i.next();if(l.done&&void 0!==l.value){const{value:n}=l;return n instanceof a.Indices?n:void 0===n?e:r.isIterable(n)?a.Indices.from_indices(e.size,n):a.Indices.all_unset(e.size)}{const n=[];do{n.push(l.value),l=i.next()}while(!l.done);return a.Indices.from_indices(e.size,n)}}}s.CustomLabelingPolicy=m,m.__name__=\"CustomLabelingPolicy\",m.init_CustomLabelingPolicy()},\n function _(t,s,e,o,i){o();const a=t(1),r=t(163),l=t(171),_=t(172),n=a.__importStar(t(48)),c=t(20),p=t(167),h=t(8);class m extends r.AxisView{_paint(t,s,e){this._draw_group_separators(t,s,e)}_draw_group_separators(t,s,e){const[o]=this.ranges,[i,a]=this.computed_bounds;if(!o.tops||o.tops.length<2||!this.visuals.separator_line.doit)return;const r=this.dimension,l=(r+1)%2,_=[[],[]];let n=0;for(let t=0;t<o.tops.length-1;t++){let s,e;for(let i=n;i<o.factors.length;i++)if(o.factors[i][0]==o.tops[t+1]){[s,e]=[o.factors[i-1],o.factors[i]],n=i;break}const c=(o.synthetic(s)+o.synthetic(e))/2;c>i&&c<a&&(_[r].push(c),_[l].push(this.loc))}const c=this.extents.tick_label;this._draw_ticks(t,_,-3,c-6,this.visuals.separator_line)}_draw_major_labels(t,s,e){const o=this._get_factor_info();let i=s.tick+this.model.major_label_standoff;for(let e=0;e<o.length;e++){const[a,r,l,_]=o[e];this._draw_oriented_labels(t,a,r,l,this.panel.side,i,_),i+=s.tick_labels[e]}}_tick_label_extents(){const t=this._get_factor_info(),s=[];for(const[e,,o,i]of t){const t=this._oriented_labels_extent(e,o,this.model.major_label_standoff,i);s.push(t)}return s}_get_factor_info(){const[t]=this.ranges,[s,e]=this.computed_bounds,o=this.loc,i=this.model.ticker.get_ticks(s,e,t,o),a=this.tick_coords,r=[],l=t=>new p.GraphicsBoxes(t.map((t=>h.isString(t)?new p.TextBox({text:t}):t))),_=t=>l(this.model.formatter.doFormat(t,this));if(1==t.levels){const t=_(i.major);r.push([t,a.major,this.model.major_label_orientation,this.visuals.major_label_text])}else if(2==t.levels){const t=_(i.major.map((t=>t[1])));r.push([t,a.major,this.model.major_label_orientation,this.visuals.major_label_text]),r.push([l(i.tops),a.tops,this.model.group_label_orientation,this.visuals.group_text])}else if(3==t.levels){const t=_(i.major.map((t=>t[2]))),s=i.mids.map((t=>t[1]));r.push([t,a.major,this.model.major_label_orientation,this.visuals.major_label_text]),r.push([l(s),a.mids,this.model.subgroup_label_orientation,this.visuals.subgroup_text]),r.push([l(i.tops),a.tops,this.model.group_label_orientation,this.visuals.group_text])}return r}get tick_coords(){const t=this.dimension,s=(t+1)%2,[e]=this.ranges,[o,i]=this.computed_bounds,a=this.model.ticker.get_ticks(o,i,e,this.loc),r={major:[[],[]],mids:[[],[]],tops:[[],[]],minor:[[],[]]};return r.major[t]=a.major,r.major[s]=a.major.map((()=>this.loc)),3==e.levels&&(r.mids[t]=a.mids,r.mids[s]=a.mids.map((()=>this.loc))),e.levels>1&&(r.tops[t]=a.tops,r.tops[s]=a.tops.map((()=>this.loc))),r}}e.CategoricalAxisView=m,m.__name__=\"CategoricalAxisView\";class u extends r.Axis{constructor(t){super(t)}static init_CategoricalAxis(){this.prototype.default_view=m,this.mixins([[\"separator_\",n.Line],[\"group_\",n.Text],[\"subgroup_\",n.Text]]),this.define((({Number:t,Or:s})=>({group_label_orientation:[s(c.TickLabelOrientation,t),\"parallel\"],subgroup_label_orientation:[s(c.TickLabelOrientation,t),\"parallel\"]}))),this.override({ticker:()=>new l.CategoricalTicker,formatter:()=>new _.CategoricalTickFormatter,separator_line_color:\"lightgrey\",separator_line_width:2,group_text_font_style:\"bold\",group_text_font_size:\"11px\",group_text_color:\"grey\",subgroup_text_font_style:\"bold\",subgroup_text_font_size:\"11px\"})}}e.CategoricalAxis=u,u.__name__=\"CategoricalAxis\",u.init_CategoricalAxis()},\n function _(t,c,o,s,e){s();const r=t(165);class i extends r.Ticker{constructor(t){super(t)}get_ticks(t,c,o,s){var e,r;return{major:this._collect(o.factors,o,t,c),minor:[],tops:this._collect(null!==(e=o.tops)&&void 0!==e?e:[],o,t,c),mids:this._collect(null!==(r=o.mids)&&void 0!==r?r:[],o,t,c)}}_collect(t,c,o,s){const e=[];for(const r of t){const t=c.synthetic(r);t>o&&t<s&&e.push(r)}return e}}o.CategoricalTicker=i,i.__name__=\"CategoricalTicker\"},\n function _(t,r,o,c,a){c();const e=t(166),n=t(9);class i extends e.TickFormatter{constructor(t){super(t)}doFormat(t,r){return n.copy(t)}}o.CategoricalTickFormatter=i,i.__name__=\"CategoricalTickFormatter\"},\n function _(s,n,i,o,u){o();const e=s(163);class t extends e.AxisView{}i.ContinuousAxisView=t,t.__name__=\"ContinuousAxisView\";class _ extends e.Axis{constructor(s){super(s)}}i.ContinuousAxis=_,_.__name__=\"ContinuousAxis\"},\n function _(e,t,i,s,a){s();const n=e(175),r=e(180),m=e(185);class _ extends n.LinearAxisView{}i.DatetimeAxisView=_,_.__name__=\"DatetimeAxisView\";class c extends n.LinearAxis{constructor(e){super(e)}static init_DatetimeAxis(){this.prototype.default_view=_,this.override({ticker:()=>new m.DatetimeTicker,formatter:()=>new r.DatetimeTickFormatter})}}i.DatetimeAxis=c,c.__name__=\"DatetimeAxis\",c.init_DatetimeAxis()},\n function _(i,e,s,n,t){n();const r=i(173),a=i(176),o=i(177);class c extends r.ContinuousAxisView{}s.LinearAxisView=c,c.__name__=\"LinearAxisView\";class _ extends r.ContinuousAxis{constructor(i){super(i)}static init_LinearAxis(){this.prototype.default_view=c,this.override({ticker:()=>new o.BasicTicker,formatter:()=>new a.BasicTickFormatter})}}s.LinearAxis=_,_.__name__=\"LinearAxis\",_.init_LinearAxis()},\n function _(i,t,e,n,o){n();const s=i(166),r=i(34);function c(i){let t=\"\";for(const e of i)t+=\"-\"==e?\"−\":e;return t}e.unicode_replace=c;class _ extends s.TickFormatter{constructor(i){super(i),this.last_precision=3}static init_BasicTickFormatter(){this.define((({Boolean:i,Int:t,Auto:e,Or:n})=>({precision:[n(t,e),\"auto\"],use_scientific:[i,!0],power_limit_high:[t,5],power_limit_low:[t,-3]})))}get scientific_limit_low(){return 10**this.power_limit_low}get scientific_limit_high(){return 10**this.power_limit_high}_need_sci(i){if(!this.use_scientific)return!1;const{scientific_limit_high:t}=this,{scientific_limit_low:e}=this,n=i.length<2?0:Math.abs(i[1]-i[0])/1e4;for(const o of i){const i=Math.abs(o);if(!(i<=n)&&(i>=t||i<=e))return!0}return!1}_format_with_precision(i,t,e){return t?i.map((i=>c(i.toExponential(e)))):i.map((i=>c(r.to_fixed(i,e))))}_auto_precision(i,t){const e=new Array(i.length),n=this.last_precision<=15;i:for(let o=this.last_precision;n?o<=15:o>=1;n?o++:o--){if(t){e[0]=i[0].toExponential(o);for(let t=1;t<i.length;t++)if(e[t]==e[t-1])continue i;this.last_precision=o;break}e[0]=r.to_fixed(i[0],o);for(let t=1;t<i.length;t++)if(e[t]=r.to_fixed(i[t],o),e[t]==e[t-1])continue i;this.last_precision=o;break}return this.last_precision}doFormat(i,t){if(0==i.length)return[];const e=this._need_sci(i),n=\"auto\"==this.precision?this._auto_precision(i,e):this.precision;return this._format_with_precision(i,e,n)}}e.BasicTickFormatter=_,_.__name__=\"BasicTickFormatter\",_.init_BasicTickFormatter()},\n function _(c,e,s,i,n){i();const r=c(178);class t extends r.AdaptiveTicker{constructor(c){super(c)}}s.BasicTicker=t,t.__name__=\"BasicTicker\"},\n function _(t,i,a,e,s){e();const n=t(179),r=t(9),_=t(10);class l extends n.ContinuousTicker{constructor(t){super(t)}static init_AdaptiveTicker(){this.define((({Number:t,Array:i,Nullable:a})=>({base:[t,10],mantissas:[i(t),[1,2,5]],min_interval:[t,0],max_interval:[a(t),null]})))}get_min_interval(){return this.min_interval}get_max_interval(){var t;return null!==(t=this.max_interval)&&void 0!==t?t:1/0}initialize(){super.initialize();const t=r.nth(this.mantissas,-1)/this.base,i=r.nth(this.mantissas,0)*this.base;this.extended_mantissas=[t,...this.mantissas,i],this.base_factor=0===this.get_min_interval()?1:this.get_min_interval()}get_interval(t,i,a){const e=i-t,s=this.get_ideal_interval(t,i,a),n=Math.floor(_.log(s/this.base_factor,this.base)),l=this.base**n*this.base_factor,h=this.extended_mantissas,m=h.map((t=>Math.abs(a-e/(t*l)))),v=h[r.argmin(m)]*l;return _.clamp(v,this.get_min_interval(),this.get_max_interval())}}a.AdaptiveTicker=l,l.__name__=\"AdaptiveTicker\",l.init_AdaptiveTicker()},\n function _(t,i,n,s,e){s();const o=t(165),r=t(9);class c extends o.Ticker{constructor(t){super(t)}static init_ContinuousTicker(){this.define((({Int:t})=>({num_minor_ticks:[t,5],desired_num_ticks:[t,6]})))}get_ticks(t,i,n,s){return this.get_ticks_no_defaults(t,i,s,this.desired_num_ticks)}get_ticks_no_defaults(t,i,n,s){const e=this.get_interval(t,i,s),o=Math.floor(t/e),c=Math.ceil(i/e);let _;_=isFinite(o)&&isFinite(c)?r.range(o,c+1):[];const u=_.map((t=>t*e)).filter((n=>t<=n&&n<=i)),a=this.num_minor_ticks,f=[];if(a>0&&u.length>0){const n=e/a,s=r.range(0,a).map((t=>t*n));for(const n of s.slice(1)){const s=u[0]-n;t<=s&&s<=i&&f.push(s)}for(const n of u)for(const e of s){const s=n+e;t<=s&&s<=i&&f.push(s)}}return{major:u,minor:f}}get_ideal_interval(t,i,n){return(i-t)/n}}n.ContinuousTicker=c,c.__name__=\"ContinuousTicker\",c.init_ContinuousTicker()},\n function _(t,s,e,i,n){i();const r=t(1).__importDefault(t(181)),o=t(166),a=t(19),c=t(182),m=t(9),u=t(8);function h(t){return r.default(t,\"%Y %m %d %H %M %S\").split(/\\s+/).map((t=>parseInt(t,10)))}function d(t,s){if(u.isFunction(s))return s(t);{const e=c.sprintf(\"$1%06d\",function(t){return Math.round(t/1e3%1*1e6)}(t));return-1==(s=s.replace(/((^|[^%])(%%)*)%f/,e)).indexOf(\"%\")?s:r.default(t,s)}}const l=[\"microseconds\",\"milliseconds\",\"seconds\",\"minsec\",\"minutes\",\"hourmin\",\"hours\",\"days\",\"months\",\"years\"];class f extends o.TickFormatter{constructor(t){super(t),this.strip_leading_zeros=!0}static init_DatetimeTickFormatter(){this.define((({String:t,Array:s})=>({microseconds:[s(t),[\"%fus\"]],milliseconds:[s(t),[\"%3Nms\",\"%S.%3Ns\"]],seconds:[s(t),[\"%Ss\"]],minsec:[s(t),[\":%M:%S\"]],minutes:[s(t),[\":%M\",\"%Mm\"]],hourmin:[s(t),[\"%H:%M\"]],hours:[s(t),[\"%Hh\",\"%H:%M\"]],days:[s(t),[\"%m/%d\",\"%a%d\"]],months:[s(t),[\"%m/%Y\",\"%b %Y\"]],years:[s(t),[\"%Y\"]]})))}initialize(){super.initialize(),this._update_width_formats()}_update_width_formats(){const t=+r.default(new Date),s=function(s){const e=s.map((s=>d(t,s).length)),i=m.sort_by(m.zip(e,s),(([t])=>t));return m.unzip(i)};this._width_formats={microseconds:s(this.microseconds),milliseconds:s(this.milliseconds),seconds:s(this.seconds),minsec:s(this.minsec),minutes:s(this.minutes),hourmin:s(this.hourmin),hours:s(this.hours),days:s(this.days),months:s(this.months),years:s(this.years)}}_get_resolution_str(t,s){const e=1.1*t;switch(!1){case!(e<.001):return\"microseconds\";case!(e<1):return\"milliseconds\";case!(e<60):return s>=60?\"minsec\":\"seconds\";case!(e<3600):return s>=3600?\"hourmin\":\"minutes\";case!(e<86400):return\"hours\";case!(e<2678400):return\"days\";case!(e<31536e3):return\"months\";default:return\"years\"}}doFormat(t,s){if(0==t.length)return[];const e=Math.abs(t[t.length-1]-t[0])/1e3,i=e/(t.length-1),n=this._get_resolution_str(i,e),[,[r]]=this._width_formats[n],o=[],c=l.indexOf(n),m={};for(const t of l)m[t]=0;m.seconds=5,m.minsec=4,m.minutes=4,m.hourmin=3,m.hours=3;for(const s of t){let t,e;try{e=h(s),t=d(s,r)}catch(t){a.logger.warn(`unable to format tick for timestamp value ${s}`),a.logger.warn(` - ${t}`),o.push(\"ERR\");continue}let i=!1,u=c;for(;0==e[m[l[u]]];){let r;if(u+=1,u==l.length)break;if((\"minsec\"==n||\"hourmin\"==n)&&!i){if(\"minsec\"==n&&0==e[4]&&0!=e[5]||\"hourmin\"==n&&0==e[3]&&0!=e[4]){r=this._width_formats[l[c-1]][1][0],t=d(s,r);break}i=!0}r=this._width_formats[l[u]][1][0],t=d(s,r)}if(this.strip_leading_zeros){let s=t.replace(/^0+/g,\"\");s!=t&&isNaN(parseInt(s))&&(s=`0${s}`),o.push(s)}else o.push(t)}return o}}e.DatetimeTickFormatter=f,f.__name__=\"DatetimeTickFormatter\",f.init_DatetimeTickFormatter()},\n function _(e,t,n,r,o){!function(e){\"object\"==typeof t&&t.exports?t.exports=e():\"function\"==typeof define?define(e):this.tz=e()}((function(){function e(e,t,n){var r,o=t.day[1];do{r=new Date(Date.UTC(n,t.month,Math.abs(o++)))}while(t.day[0]<7&&r.getUTCDay()!=t.day[0]);return(r={clock:t.clock,sort:r.getTime(),rule:t,save:6e4*t.save,offset:e.offset})[r.clock]=r.sort+6e4*t.time,r.posix?r.wallclock=r[r.clock]+(e.offset+t.saved):r.posix=r[r.clock]-(e.offset+t.saved),r}function t(t,n,r){var o,a,u,i,l,s,c,f=t[t.zone],h=[],T=new Date(r).getUTCFullYear(),g=1;for(o=1,a=f.length;o<a&&!(f[o][n]<=r);o++);if((u=f[o]).rules){for(s=t[u.rules],c=T+1;c>=T-g;--c)for(o=0,a=s.length;o<a;o++)s[o].from<=c&&c<=s[o].to?h.push(e(u,s[o],c)):s[o].to<c&&1==g&&(g=c-s[o].to);for(h.sort((function(e,t){return e.sort-t.sort})),o=0,a=h.length;o<a;o++)r>=h[o][n]&&h[o][h[o].clock]>u[h[o].clock]&&(i=h[o])}return i&&((l=/^(.*)\\/(.*)$/.exec(u.format))?i.abbrev=l[i.save?2:1]:i.abbrev=u.format.replace(/%s/,i.rule.letter)),i||u}function n(e,n){return\"UTC\"==e.zone?n:(e.entry=t(e,\"posix\",n),n+e.entry.offset+e.entry.save)}function r(e,n){return\"UTC\"==e.zone?n:(e.entry=r=t(e,\"wallclock\",n),0<(o=n-r.wallclock)&&o<r.save?null:n-r.offset-r.save);var r,o}function o(e,t,o){var a,i=+(o[1]+1),s=o[2]*i,c=u.indexOf(o[3].toLowerCase());if(c>9)t+=s*l[c-10];else{if(a=new Date(n(e,t)),c<7)for(;s;)a.setUTCDate(a.getUTCDate()+i),a.getUTCDay()==c&&(s-=i);else 7==c?a.setUTCFullYear(a.getUTCFullYear()+s):8==c?a.setUTCMonth(a.getUTCMonth()+s):a.setUTCDate(a.getUTCDate()+s);null==(t=r(e,a.getTime()))&&(t=r(e,a.getTime()+864e5*i)-864e5*i)}return t}var a={clock:function(){return+new Date},zone:\"UTC\",entry:{abbrev:\"UTC\",offset:0,save:0},UTC:1,z:function(e,t,n,r){var o,a,u=this.entry.offset+this.entry.save,i=Math.abs(u/1e3),l=[],s=3600;for(o=0;o<3;o++)l.push((\"0\"+Math.floor(i/s)).slice(-2)),i%=s,s/=60;return\"^\"!=n||u?(\"^\"==n&&(r=3),3==r?(a=(a=l.join(\":\")).replace(/:00$/,\"\"),\"^\"!=n&&(a=a.replace(/:00$/,\"\"))):r?(a=l.slice(0,r+1).join(\":\"),\"^\"==n&&(a=a.replace(/:00$/,\"\"))):a=l.slice(0,2).join(\"\"),a=(a=(u<0?\"-\":\"+\")+a).replace(/([-+])(0)/,{_:\" $1\",\"-\":\"$1\"}[n]||\"$1$2\")):\"Z\"},\"%\":function(e){return\"%\"},n:function(e){return\"\\n\"},t:function(e){return\"\\t\"},U:function(e){return s(e,0)},W:function(e){return s(e,1)},V:function(e){return c(e)[0]},G:function(e){return c(e)[1]},g:function(e){return c(e)[1]%100},j:function(e){return Math.floor((e.getTime()-Date.UTC(e.getUTCFullYear(),0))/864e5)+1},s:function(e){return Math.floor(e.getTime()/1e3)},C:function(e){return Math.floor(e.getUTCFullYear()/100)},N:function(e){return e.getTime()%1e3*1e6},m:function(e){return e.getUTCMonth()+1},Y:function(e){return e.getUTCFullYear()},y:function(e){return e.getUTCFullYear()%100},H:function(e){return e.getUTCHours()},M:function(e){return e.getUTCMinutes()},S:function(e){return e.getUTCSeconds()},e:function(e){return e.getUTCDate()},d:function(e){return e.getUTCDate()},u:function(e){return e.getUTCDay()||7},w:function(e){return e.getUTCDay()},l:function(e){return e.getUTCHours()%12||12},I:function(e){return e.getUTCHours()%12||12},k:function(e){return e.getUTCHours()},Z:function(e){return this.entry.abbrev},a:function(e){return this[this.locale].day.abbrev[e.getUTCDay()]},A:function(e){return this[this.locale].day.full[e.getUTCDay()]},h:function(e){return this[this.locale].month.abbrev[e.getUTCMonth()]},b:function(e){return this[this.locale].month.abbrev[e.getUTCMonth()]},B:function(e){return this[this.locale].month.full[e.getUTCMonth()]},P:function(e){return this[this.locale].meridiem[Math.floor(e.getUTCHours()/12)].toLowerCase()},p:function(e){return this[this.locale].meridiem[Math.floor(e.getUTCHours()/12)]},R:function(e,t){return this.convert([t,\"%H:%M\"])},T:function(e,t){return this.convert([t,\"%H:%M:%S\"])},D:function(e,t){return this.convert([t,\"%m/%d/%y\"])},F:function(e,t){return this.convert([t,\"%Y-%m-%d\"])},x:function(e,t){return this.convert([t,this[this.locale].date])},r:function(e,t){return this.convert([t,this[this.locale].time12||\"%I:%M:%S\"])},X:function(e,t){return this.convert([t,this[this.locale].time24])},c:function(e,t){return this.convert([t,this[this.locale].dateTime])},convert:function(e){if(!e.length)return\"1.0.23\";var t,a,u,l,s,c=Object.create(this),f=[];for(t=0;t<e.length;t++)if(l=e[t],Array.isArray(l))t||isNaN(l[1])?l.splice.apply(e,[t--,1].concat(l)):s=l;else if(isNaN(l)){if(\"string\"==(u=typeof l))~l.indexOf(\"%\")?c.format=l:t||\"*\"!=l?!t&&(u=/^(\\d{4})-(\\d{2})-(\\d{2})(?:[T\\s](\\d{2}):(\\d{2})(?::(\\d{2})(?:\\.(\\d+))?)?(Z|(([+-])(\\d{2}(:\\d{2}){0,2})))?)?$/.exec(l))?((s=[]).push.apply(s,u.slice(1,8)),u[9]?(s.push(u[10]+1),s.push.apply(s,u[11].split(/:/))):u[8]&&s.push(1)):/^\\w{2,3}_\\w{2}$/.test(l)?c.locale=l:(u=i.exec(l))?f.push(u):c.zone=l:s=l;else if(\"function\"==u){if(u=l.call(c))return u}else if(/^\\w{2,3}_\\w{2}$/.test(l.name))c[l.name]=l;else if(l.zones){for(u in l.zones)c[u]=l.zones[u];for(u in l.rules)c[u]=l.rules[u]}}else t||(s=l);if(c[c.locale]||delete c.locale,c[c.zone]||delete c.zone,null!=s){if(\"*\"==s)s=c.clock();else if(Array.isArray(s)){for(u=[],a=!s[7],t=0;t<11;t++)u[t]=+(s[t]||0);--u[1],s=Date.UTC.apply(Date.UTC,u)+-u[7]*(36e5*u[8]+6e4*u[9]+1e3*u[10])}else s=Math.floor(s);if(!isNaN(s)){if(a&&(s=r(c,s)),null==s)return s;for(t=0,a=f.length;t<a;t++)s=o(c,s,f[t]);return c.format?(u=new Date(n(c,s)),c.format.replace(/%([-0_^]?)(:{0,3})(\\d*)(.)/g,(function(e,t,n,r,o){var a,i,l=\"0\";if(a=c[o]){for(e=String(a.call(c,u,s,t,n.length)),\"_\"==(t||a.style)&&(l=\" \"),i=\"-\"==t?0:a.pad||0;e.length<i;)e=l+e;for(i=\"-\"==t?0:r||a.pad;e.length<i;)e=l+e;\"N\"==o&&i<e.length&&(e=e.slice(0,i)),\"^\"==t&&(e=e.toUpperCase())}return e}))):s}}return function(){return c.convert(arguments)}},locale:\"en_US\",en_US:{date:\"%m/%d/%Y\",time24:\"%I:%M:%S %p\",time12:\"%I:%M:%S %p\",dateTime:\"%a %d %b %Y %I:%M:%S %p %Z\",meridiem:[\"AM\",\"PM\"],month:{abbrev:\"Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec\".split(\"|\"),full:\"January|February|March|April|May|June|July|August|September|October|November|December\".split(\"|\")},day:{abbrev:\"Sun|Mon|Tue|Wed|Thu|Fri|Sat\".split(\"|\"),full:\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday\".split(\"|\")}}},u=\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|year|month|day|hour|minute|second|millisecond\",i=new RegExp(\"^\\\\s*([+-])(\\\\d+)\\\\s+(\"+u+\")s?\\\\s*$\",\"i\"),l=[36e5,6e4,1e3,1];function s(e,t){var n,r,o;return r=new Date(Date.UTC(e.getUTCFullYear(),0)),n=Math.floor((e.getTime()-r.getTime())/864e5),r.getUTCDay()==t?o=0:8==(o=7-r.getUTCDay()+t)&&(o=1),n>=o?Math.floor((n-o)/7)+1:0}function c(e){var t,n,r;return n=e.getUTCFullYear(),t=new Date(Date.UTC(n,0)).getUTCDay(),(r=s(e,1)+(t>1&&t<=4?1:0))?53!=r||4==t||3==t&&29==new Date(n,1,29).getDate()?[r,e.getUTCFullYear()]:[1,e.getUTCFullYear()+1]:(n=e.getUTCFullYear()-1,[r=4==(t=new Date(Date.UTC(n,0)).getUTCDay())||3==t&&29==new Date(n,1,29).getDate()?53:52,e.getUTCFullYear()-1])}return u=u.toLowerCase().split(\"|\"),\"delmHMSUWVgCIky\".replace(/./g,(function(e){a[e].pad=2})),a.N.pad=9,a.j.pad=3,a.k.style=\"_\",a.l.style=\"_\",a.e.style=\"_\",function(){return a.convert(arguments)}}))},\n function _(r,t,n,e,i){e();const u=r(1),a=u.__importStar(r(183)),f=r(184),o=u.__importDefault(r(181)),l=r(21),s=r(8);function c(r,...t){return f.sprintf(r,...t)}function m(r,t,n){if(s.isNumber(r)){return c((()=>{switch(!1){case Math.floor(r)!=r:return\"%d\";case!(Math.abs(r)>.1&&Math.abs(r)<1e3):return\"%0.3f\";default:return\"%0.3e\"}})(),r)}return`${r}`}function p(r,t,e){if(null==t)return m;if(null!=e&&r in e){const t=e[r];if(s.isString(t)){if(t in n.DEFAULT_FORMATTERS)return n.DEFAULT_FORMATTERS[t];throw new Error(`Unknown tooltip field formatter type '${t}'`)}return function(r,n,e){return t.format(r,n,e)}}return n.DEFAULT_FORMATTERS.numeral}function d(r,t,n,e){if(\"$\"==r[0]){return function(r,t){if(r in t)return t[r];throw new Error(`Unknown special variable '$${r}'`)}(r.substring(1),e)}return function(r,t,n){const e=t.get_column(r);if(null==e)return null;if(s.isNumber(n))return e[n];const i=e[n.index];if(s.isTypedArray(i)||s.isArray(i))return s.isArray(i[0])?i[n.dim2][n.dim1]:i[n.flat_index];return i}(r.substring(1).replace(/[{}]/g,\"\"),t,n)}n.FormatterType=l.Enum(\"numeral\",\"printf\",\"datetime\"),n.DEFAULT_FORMATTERS={numeral:(r,t,n)=>a.format(r,t),datetime:(r,t,n)=>o.default(r,t),printf:(r,t,n)=>c(t,r)},n.sprintf=c,n.basic_formatter=m,n.get_formatter=p,n.get_value=d,n.replace_placeholders=function(r,t,n,e,i={},u){let a,f;if(s.isString(r)?(a=r,f=!1):(a=r.html,f=!0),a=a.replace(/@\\$name/g,(r=>`@{${i.name}}`)),a=a.replace(/((?:\\$\\w+)|(?:@\\w+)|(?:@{(?:[^{}]+)}))(?:{([^{}]+)})?/g,((r,a,o)=>{const l=d(a,t,n,i);if(null==l)return u?u(\"???\"):\"???\";if(\"safe\"==o)return f=!0,`${l}`;const s=`${p(a,o,e)(l,o,i)}`;return u?u(s):s})),f){return[...(new DOMParser).parseFromString(a,\"text/html\").body.childNodes]}return a}},\n function _(e,n,t,r,i){\n /*!\n * numbro.js\n * version : 1.6.2\n * author : Företagsplatsen AB\n * license : MIT\n * http://www.foretagsplatsen.se\n */\n var a,o={},l=o,u=\"en-US\",c=null,s=\"0,0\";void 0!==n&&n.exports;function f(e){this._value=e}function d(e){var n,t=\"\";for(n=0;n<e;n++)t+=\"0\";return t}function h(e,n,t,r){var i,a,o=Math.pow(10,n);return a=e.toFixed(0).search(\"e\")>-1?function(e,n){var t,r,i,a;return t=(a=e.toString()).split(\"e\")[0],i=a.split(\"e\")[1],a=t.split(\".\")[0]+(r=t.split(\".\")[1]||\"\")+d(i-r.length),n>0&&(a+=\".\"+d(n)),a}(e,n):(t(e*o)/o).toFixed(n),r&&(i=new RegExp(\"0{1,\"+r+\"}$\"),a=a.replace(i,\"\")),a}function p(e,n,t){return n.indexOf(\"$\")>-1?function(e,n,t){var r,i,a=n,l=a.indexOf(\"$\"),c=a.indexOf(\"(\"),s=a.indexOf(\"+\"),f=a.indexOf(\"-\"),d=\"\",h=\"\";-1===a.indexOf(\"$\")?\"infix\"===o[u].currency.position?(h=o[u].currency.symbol,o[u].currency.spaceSeparated&&(h=\" \"+h+\" \")):o[u].currency.spaceSeparated&&(d=\" \"):a.indexOf(\" $\")>-1?(d=\" \",a=a.replace(\" $\",\"\")):a.indexOf(\"$ \")>-1?(d=\" \",a=a.replace(\"$ \",\"\")):a=a.replace(\"$\",\"\");if(i=m(e,a,t,h),-1===n.indexOf(\"$\"))switch(o[u].currency.position){case\"postfix\":i.indexOf(\")\")>-1?((i=i.split(\"\")).splice(-1,0,d+o[u].currency.symbol),i=i.join(\"\")):i=i+d+o[u].currency.symbol;break;case\"infix\":break;case\"prefix\":i.indexOf(\"(\")>-1||i.indexOf(\"-\")>-1?(i=i.split(\"\"),r=Math.max(c,f)+1,i.splice(r,0,o[u].currency.symbol+d),i=i.join(\"\")):i=o[u].currency.symbol+d+i;break;default:throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]')}else l<=1?i.indexOf(\"(\")>-1||i.indexOf(\"+\")>-1||i.indexOf(\"-\")>-1?(r=1,(l<c||l<s||l<f)&&(r=0),(i=i.split(\"\")).splice(r,0,o[u].currency.symbol+d),i=i.join(\"\")):i=o[u].currency.symbol+d+i:i.indexOf(\")\")>-1?((i=i.split(\"\")).splice(-1,0,d+o[u].currency.symbol),i=i.join(\"\")):i=i+d+o[u].currency.symbol;return i}(e,n,t):n.indexOf(\"%\")>-1?function(e,n,t){var r,i=\"\";e*=100,n.indexOf(\" %\")>-1?(i=\" \",n=n.replace(\" %\",\"\")):n=n.replace(\"%\",\"\");(r=m(e,n,t)).indexOf(\")\")>-1?((r=r.split(\"\")).splice(-1,0,i+\"%\"),r=r.join(\"\")):r=r+i+\"%\";return r}(e,n,t):n.indexOf(\":\")>-1?function(e){var n=Math.floor(e/60/60),t=Math.floor((e-60*n*60)/60),r=Math.round(e-60*n*60-60*t);return n+\":\"+(t<10?\"0\"+t:t)+\":\"+(r<10?\"0\"+r:r)}(e):m(e,n,t)}function m(e,n,t,r){var i,a,l,s,f,d,p,m,x,g,O,b,w,y,M,v,$,B=!1,E=!1,F=!1,k=\"\",U=!1,N=!1,S=!1,j=!1,D=!1,C=\"\",L=\"\",T=Math.abs(e),K=[\"B\",\"KiB\",\"MiB\",\"GiB\",\"TiB\",\"PiB\",\"EiB\",\"ZiB\",\"YiB\"],G=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\",\"ZB\",\"YB\"],I=\"\",P=!1,R=!1;if(0===e&&null!==c)return c;if(!isFinite(e))return\"\"+e;if(0===n.indexOf(\"{\")){var W=n.indexOf(\"}\");if(-1===W)throw Error('Format should also contain a \"}\"');b=n.slice(1,W),n=n.slice(W+1)}else b=\"\";if(n.indexOf(\"}\")===n.length-1){var Y=n.indexOf(\"{\");if(-1===Y)throw Error('Format should also contain a \"{\"');w=n.slice(Y+1,-1),n=n.slice(0,Y+1)}else w=\"\";if(v=null===($=-1===n.indexOf(\".\")?n.match(/([0-9]+).*/):n.match(/([0-9]+)\\..*/))?-1:$[1].length,-1!==n.indexOf(\"-\")&&(P=!0),n.indexOf(\"(\")>-1?(B=!0,n=n.slice(1,-1)):n.indexOf(\"+\")>-1&&(E=!0,n=n.replace(/\\+/g,\"\")),n.indexOf(\"a\")>-1){if(g=n.split(\".\")[0].match(/[0-9]+/g)||[\"0\"],g=parseInt(g[0],10),U=n.indexOf(\"aK\")>=0,N=n.indexOf(\"aM\")>=0,S=n.indexOf(\"aB\")>=0,j=n.indexOf(\"aT\")>=0,D=U||N||S||j,n.indexOf(\" a\")>-1?(k=\" \",n=n.replace(\" a\",\"\")):n=n.replace(\"a\",\"\"),p=0===(p=(f=Math.floor(Math.log(T)/Math.LN10)+1)%3)?3:p,g&&0!==T&&(d=Math.floor(Math.log(T)/Math.LN10)+1-g,m=3*~~((Math.min(g,f)-p)/3),T/=Math.pow(10,m),-1===n.indexOf(\".\")&&g>3))for(n+=\"[.]\",M=(M=0===d?0:3*~~(d/3)-d)<0?M+3:M,i=0;i<M;i++)n+=\"0\";Math.floor(Math.log(Math.abs(e))/Math.LN10)+1!==g&&(T>=Math.pow(10,12)&&!D||j?(k+=o[u].abbreviations.trillion,e/=Math.pow(10,12)):T<Math.pow(10,12)&&T>=Math.pow(10,9)&&!D||S?(k+=o[u].abbreviations.billion,e/=Math.pow(10,9)):T<Math.pow(10,9)&&T>=Math.pow(10,6)&&!D||N?(k+=o[u].abbreviations.million,e/=Math.pow(10,6)):(T<Math.pow(10,6)&&T>=Math.pow(10,3)&&!D||U)&&(k+=o[u].abbreviations.thousand,e/=Math.pow(10,3)))}if(n.indexOf(\"b\")>-1)for(n.indexOf(\" b\")>-1?(C=\" \",n=n.replace(\" b\",\"\")):n=n.replace(\"b\",\"\"),s=0;s<=K.length;s++)if(a=Math.pow(1024,s),l=Math.pow(1024,s+1),e>=a&&e<l){C+=K[s],a>0&&(e/=a);break}if(n.indexOf(\"d\")>-1)for(n.indexOf(\" d\")>-1?(C=\" \",n=n.replace(\" d\",\"\")):n=n.replace(\"d\",\"\"),s=0;s<=G.length;s++)if(a=Math.pow(1e3,s),l=Math.pow(1e3,s+1),e>=a&&e<l){C+=G[s],a>0&&(e/=a);break}if(n.indexOf(\"o\")>-1&&(n.indexOf(\" o\")>-1?(L=\" \",n=n.replace(\" o\",\"\")):n=n.replace(\"o\",\"\"),o[u].ordinal&&(L+=o[u].ordinal(e))),n.indexOf(\"[.]\")>-1&&(F=!0,n=n.replace(\"[.]\",\".\")),x=e.toString().split(\".\")[0],O=n.split(\".\")[1],y=n.indexOf(\",\"),O){if(x=(I=-1!==O.indexOf(\"*\")?h(e,e.toString().split(\".\")[1].length,t):O.indexOf(\"[\")>-1?h(e,(O=(O=O.replace(\"]\",\"\")).split(\"[\"))[0].length+O[1].length,t,O[1].length):h(e,O.length,t)).split(\".\")[0],I.split(\".\")[1].length)I=(r?k+r:o[u].delimiters.decimal)+I.split(\".\")[1];else I=\"\";F&&0===Number(I.slice(1))&&(I=\"\")}else x=h(e,null,t);return x.indexOf(\"-\")>-1&&(x=x.slice(1),R=!0),x.length<v&&(x=new Array(v-x.length+1).join(\"0\")+x),y>-1&&(x=x.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g,\"$1\"+o[u].delimiters.thousands)),0===n.indexOf(\".\")&&(x=\"\"),b+(n.indexOf(\"(\")<n.indexOf(\"-\")?(B&&R?\"(\":\"\")+(P&&R||!B&&R?\"-\":\"\"):(P&&R||!B&&R?\"-\":\"\")+(B&&R?\"(\":\"\"))+(!R&&E&&0!==e?\"+\":\"\")+x+I+(L||\"\")+(k&&!r?k:\"\")+(C||\"\")+(B&&R?\")\":\"\")+w}function x(e,n){o[e]=n}function g(e){u=e;var n=o[e].defaults;n&&n.format&&a.defaultFormat(n.format),n&&n.currencyFormat&&a.defaultCurrencyFormat(n.currencyFormat)}(a=function(e){return a.isNumbro(e)?e=e.value():0===e||void 0===e?e=0:Number(e)||(e=a.fn.unformat(e)),new f(Number(e))}).version=\"1.6.2\",a.isNumbro=function(e){return e instanceof f},a.setLanguage=function(e,n){console.warn(\"`setLanguage` is deprecated since version 1.6.0. Use `setCulture` instead\");var t=e,r=e.split(\"-\")[0],i=null;l[t]||(Object.keys(l).forEach((function(e){i||e.split(\"-\")[0]!==r||(i=e)})),t=i||n||\"en-US\"),g(t)},a.setCulture=function(e,n){var t=e,r=e.split(\"-\")[1],i=null;o[t]||(r&&Object.keys(o).forEach((function(e){i||e.split(\"-\")[1]!==r||(i=e)})),t=i||n||\"en-US\"),g(t)},a.language=function(e,n){if(console.warn(\"`language` is deprecated since version 1.6.0. Use `culture` instead\"),!e)return u;if(e&&!n){if(!l[e])throw new Error(\"Unknown language : \"+e);g(e)}return!n&&l[e]||x(e,n),a},a.culture=function(e,n){if(!e)return u;if(e&&!n){if(!o[e])throw new Error(\"Unknown culture : \"+e);g(e)}return!n&&o[e]||x(e,n),a},a.languageData=function(e){if(console.warn(\"`languageData` is deprecated since version 1.6.0. Use `cultureData` instead\"),!e)return l[u];if(!l[e])throw new Error(\"Unknown language : \"+e);return l[e]},a.cultureData=function(e){if(!e)return o[u];if(!o[e])throw new Error(\"Unknown culture : \"+e);return o[e]},a.culture(\"en-US\",{delimiters:{thousands:\",\",decimal:\".\"},abbreviations:{thousand:\"k\",million:\"m\",billion:\"b\",trillion:\"t\"},ordinal:function(e){var n=e%10;return 1==~~(e%100/10)?\"th\":1===n?\"st\":2===n?\"nd\":3===n?\"rd\":\"th\"},currency:{symbol:\"$\",position:\"prefix\"},defaults:{currencyFormat:\",0000 a\"},formats:{fourDigits:\"0000 a\",fullWithTwoDecimals:\"$ ,0.00\",fullWithTwoDecimalsNoCurrency:\",0.00\"}}),a.languages=function(){return console.warn(\"`languages` is deprecated since version 1.6.0. Use `cultures` instead\"),l},a.cultures=function(){return o},a.zeroFormat=function(e){c=\"string\"==typeof e?e:null},a.defaultFormat=function(e){s=\"string\"==typeof e?e:\"0.0\"},a.defaultCurrencyFormat=function(e){\"string\"==typeof e?e:\"0$\"},a.validate=function(e,n){var t,r,i,o,l,u,c,s;if(\"string\"!=typeof e&&(e+=\"\",console.warn&&console.warn(\"Numbro.js: Value is not string. It has been co-erced to: \",e)),(e=e.trim()).match(/^\\d+$/))return!0;if(\"\"===e)return!1;try{c=a.cultureData(n)}catch(e){c=a.cultureData(a.culture())}return i=c.currency.symbol,l=c.abbreviations,t=c.delimiters.decimal,r=\".\"===c.delimiters.thousands?\"\\\\.\":c.delimiters.thousands,(null===(s=e.match(/^[^\\d]+/))||(e=e.substr(1),s[0]===i))&&((null===(s=e.match(/[^\\d]+$/))||(e=e.slice(0,-1),s[0]===l.thousand||s[0]===l.million||s[0]===l.billion||s[0]===l.trillion))&&(u=new RegExp(r+\"{2}\"),!e.match(/[^\\d.,]/g)&&(!((o=e.split(t)).length>2)&&(o.length<2?!!o[0].match(/^\\d+.*\\d$/)&&!o[0].match(u):1===o[0].length?!!o[0].match(/^\\d+$/)&&!o[0].match(u)&&!!o[1].match(/^\\d+$/):!!o[0].match(/^\\d+.*\\d$/)&&!o[0].match(u)&&!!o[1].match(/^\\d+$/)))))},n.exports={format:function(e,n,t,r){return null!=t&&t!==a.culture()&&a.setCulture(t),p(Number(e),null!=n?n:s,null==r?Math.round:r)}}},\n function _(e,n,t,r,i){!function(){\"use strict\";var e={not_string:/[^s]/,not_bool:/[^t]/,not_type:/[^T]/,not_primitive:/[^v]/,number:/[diefg]/,numeric_arg:/[bcdiefguxX]/,json:/[j]/,not_json:/[^j]/,text:/^[^\\x25]+/,modulo:/^\\x25{2}/,placeholder:/^\\x25(?:([1-9]\\d*)\\$|\\(([^)]+)\\))?(\\+)?(0|'[^$])?(-)?(\\d+)?(?:\\.(\\d+))?([b-gijostTuvxX])/,key:/^([a-z_][a-z_\\d]*)/i,key_access:/^\\.([a-z_][a-z_\\d]*)/i,index_access:/^\\[(\\d+)\\]/,sign:/^[+-]/};function n(e){return i(a(e),arguments)}function r(e,t){return n.apply(null,[e].concat(t||[]))}function i(t,r){var i,s,a,o,p,c,l,u,f,d=1,g=t.length,y=\"\";for(s=0;s<g;s++)if(\"string\"==typeof t[s])y+=t[s];else if(\"object\"==typeof t[s]){if((o=t[s]).keys)for(i=r[d],a=0;a<o.keys.length;a++){if(null==i)throw new Error(n('[sprintf] Cannot access property \"%s\" of undefined value \"%s\"',o.keys[a],o.keys[a-1]));i=i[o.keys[a]]}else i=o.param_no?r[o.param_no]:r[d++];if(e.not_type.test(o.type)&&e.not_primitive.test(o.type)&&i instanceof Function&&(i=i()),e.numeric_arg.test(o.type)&&\"number\"!=typeof i&&isNaN(i))throw new TypeError(n(\"[sprintf] expecting number but found %T\",i));switch(e.number.test(o.type)&&(u=i>=0),o.type){case\"b\":i=parseInt(i,10).toString(2);break;case\"c\":i=String.fromCharCode(parseInt(i,10));break;case\"d\":case\"i\":i=parseInt(i,10);break;case\"j\":i=JSON.stringify(i,null,o.width?parseInt(o.width):0);break;case\"e\":i=o.precision?parseFloat(i).toExponential(o.precision):parseFloat(i).toExponential();break;case\"f\":i=o.precision?parseFloat(i).toFixed(o.precision):parseFloat(i);break;case\"g\":i=o.precision?String(Number(i.toPrecision(o.precision))):parseFloat(i);break;case\"o\":i=(parseInt(i,10)>>>0).toString(8);break;case\"s\":i=String(i),i=o.precision?i.substring(0,o.precision):i;break;case\"t\":i=String(!!i),i=o.precision?i.substring(0,o.precision):i;break;case\"T\":i=Object.prototype.toString.call(i).slice(8,-1).toLowerCase(),i=o.precision?i.substring(0,o.precision):i;break;case\"u\":i=parseInt(i,10)>>>0;break;case\"v\":i=i.valueOf(),i=o.precision?i.substring(0,o.precision):i;break;case\"x\":i=(parseInt(i,10)>>>0).toString(16);break;case\"X\":i=(parseInt(i,10)>>>0).toString(16).toUpperCase()}e.json.test(o.type)?y+=i:(!e.number.test(o.type)||u&&!o.sign?f=\"\":(f=u?\"+\":\"-\",i=i.toString().replace(e.sign,\"\")),c=o.pad_char?\"0\"===o.pad_char?\"0\":o.pad_char.charAt(1):\" \",l=o.width-(f+i).length,p=o.width&&l>0?c.repeat(l):\"\",y+=o.align?f+i+p:\"0\"===c?f+p+i:p+f+i)}return y}var s=Object.create(null);function a(n){if(s[n])return s[n];for(var t,r=n,i=[],a=0;r;){if(null!==(t=e.text.exec(r)))i.push(t[0]);else if(null!==(t=e.modulo.exec(r)))i.push(\"%\");else{if(null===(t=e.placeholder.exec(r)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(t[2]){a|=1;var o=[],p=t[2],c=[];if(null===(c=e.key.exec(p)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o.push(c[1]);\"\"!==(p=p.substring(c[0].length));)if(null!==(c=e.key_access.exec(p)))o.push(c[1]);else{if(null===(c=e.index_access.exec(p)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o.push(c[1])}t[2]=o}else a|=2;if(3===a)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");i.push({placeholder:t[0],param_no:t[1],keys:t[2],sign:t[3],pad_char:t[4],align:t[5],width:t[6],precision:t[7],type:t[8]})}r=r.substring(t[0].length)}return s[n]=i}void 0!==t&&(t.sprintf=n,t.vsprintf=r),\"undefined\"!=typeof window&&(window.sprintf=n,window.vsprintf=r,\"function\"==typeof define&&define.amd&&define((function(){return{sprintf:n,vsprintf:r}})))}()},\n function _(e,i,n,t,a){t();const s=e(9),r=e(178),c=e(186),m=e(187),_=e(190),k=e(191),o=e(189);class T extends c.CompositeTicker{constructor(e){super(e)}static init_DatetimeTicker(){this.override({num_minor_ticks:0,tickers:()=>[new r.AdaptiveTicker({mantissas:[1,2,5],base:10,min_interval:0,max_interval:500*o.ONE_MILLI,num_minor_ticks:0}),new r.AdaptiveTicker({mantissas:[1,2,5,10,15,20,30],base:60,min_interval:o.ONE_SECOND,max_interval:30*o.ONE_MINUTE,num_minor_ticks:0}),new r.AdaptiveTicker({mantissas:[1,2,4,6,8,12],base:24,min_interval:o.ONE_HOUR,max_interval:12*o.ONE_HOUR,num_minor_ticks:0}),new m.DaysTicker({days:s.range(1,32)}),new m.DaysTicker({days:s.range(1,31,3)}),new m.DaysTicker({days:[1,8,15,22]}),new m.DaysTicker({days:[1,15]}),new _.MonthsTicker({months:s.range(0,12,1)}),new _.MonthsTicker({months:s.range(0,12,2)}),new _.MonthsTicker({months:s.range(0,12,4)}),new _.MonthsTicker({months:s.range(0,12,6)}),new k.YearsTicker({})]})}}n.DatetimeTicker=T,T.__name__=\"DatetimeTicker\",T.init_DatetimeTicker()},\n function _(t,e,i,s,r){s();const n=t(179),_=t(9);class a extends n.ContinuousTicker{constructor(t){super(t)}static init_CompositeTicker(){this.define((({Array:t,Ref:e})=>({tickers:[t(e(n.ContinuousTicker)),[]]})))}get min_intervals(){return this.tickers.map((t=>t.get_min_interval()))}get max_intervals(){return this.tickers.map((t=>t.get_max_interval()))}get_min_interval(){return this.min_intervals[0]}get_max_interval(){return this.max_intervals[0]}get_best_ticker(t,e,i){const s=e-t,r=this.get_ideal_interval(t,e,i),n=[_.sorted_index(this.min_intervals,r)-1,_.sorted_index(this.max_intervals,r)],a=[this.min_intervals[n[0]],this.max_intervals[n[1]]].map((t=>Math.abs(i-s/t)));let c;if(_.is_empty(a.filter((t=>!isNaN(t)))))c=this.tickers[0];else{const t=n[_.argmin(a)];c=this.tickers[t]}return c}get_interval(t,e,i){return this.get_best_ticker(t,e,i).get_interval(t,e,i)}get_ticks_no_defaults(t,e,i,s){return this.get_best_ticker(t,e,s).get_ticks_no_defaults(t,e,i,s)}}i.CompositeTicker=a,a.__name__=\"CompositeTicker\",a.init_CompositeTicker()},\n function _(t,e,n,i,s){i();const a=t(188),o=t(189),r=t(9);class c extends a.SingleIntervalTicker{constructor(t){super(t)}static init_DaysTicker(){this.define((({Int:t,Array:e})=>({days:[e(t),[]]}))),this.override({num_minor_ticks:0})}initialize(){super.initialize();const t=this.days;t.length>1?this.interval=(t[1]-t[0])*o.ONE_DAY:this.interval=31*o.ONE_DAY}get_ticks_no_defaults(t,e,n,i){const s=function(t,e){const n=o.last_month_no_later_than(new Date(t)),i=o.last_month_no_later_than(new Date(e));i.setUTCMonth(i.getUTCMonth()+1);const s=[],a=n;for(;s.push(o.copy_date(a)),a.setUTCMonth(a.getUTCMonth()+1),!(a>i););return s}(t,e),a=this.days,c=this.interval;return{major:r.concat(s.map((t=>((t,e)=>{const n=t.getUTCMonth(),i=[];for(const s of a){const a=o.copy_date(t);a.setUTCDate(s),new Date(a.getTime()+e/2).getUTCMonth()==n&&i.push(a)}return i})(t,c)))).map((t=>t.getTime())).filter((n=>t<=n&&n<=e)),minor:[]}}}n.DaysTicker=c,c.__name__=\"DaysTicker\",c.init_DaysTicker()},\n function _(e,t,n,i,r){i();const l=e(179);class a extends l.ContinuousTicker{constructor(e){super(e)}static init_SingleIntervalTicker(){this.define((({Number:e})=>({interval:[e]})))}get_interval(e,t,n){return this.interval}get_min_interval(){return this.interval}get_max_interval(){return this.interval}}n.SingleIntervalTicker=a,a.__name__=\"SingleIntervalTicker\",a.init_SingleIntervalTicker()},\n function _(t,n,e,_,E){function N(t){return new Date(t.getTime())}function O(t){const n=N(t);return n.setUTCDate(1),n.setUTCHours(0),n.setUTCMinutes(0),n.setUTCSeconds(0),n.setUTCMilliseconds(0),n}_(),e.ONE_MILLI=1,e.ONE_SECOND=1e3,e.ONE_MINUTE=60*e.ONE_SECOND,e.ONE_HOUR=60*e.ONE_MINUTE,e.ONE_DAY=24*e.ONE_HOUR,e.ONE_MONTH=30*e.ONE_DAY,e.ONE_YEAR=365*e.ONE_DAY,e.copy_date=N,e.last_month_no_later_than=O,e.last_year_no_later_than=function(t){const n=O(t);return n.setUTCMonth(0),n}},\n function _(t,e,n,i,s){i();const r=t(188),a=t(189),o=t(9);class c extends r.SingleIntervalTicker{constructor(t){super(t)}static init_MonthsTicker(){this.define((({Int:t,Array:e})=>({months:[e(t),[]]})))}initialize(){super.initialize();const t=this.months;t.length>1?this.interval=(t[1]-t[0])*a.ONE_MONTH:this.interval=12*a.ONE_MONTH}get_ticks_no_defaults(t,e,n,i){const s=function(t,e){const n=a.last_year_no_later_than(new Date(t)),i=a.last_year_no_later_than(new Date(e));i.setUTCFullYear(i.getUTCFullYear()+1);const s=[],r=n;for(;s.push(a.copy_date(r)),r.setUTCFullYear(r.getUTCFullYear()+1),!(r>i););return s}(t,e),r=this.months;return{major:o.concat(s.map((t=>r.map((e=>{const n=a.copy_date(t);return n.setUTCMonth(e),n}))))).map((t=>t.getTime())).filter((n=>t<=n&&n<=e)),minor:[]}}}n.MonthsTicker=c,c.__name__=\"MonthsTicker\",c.init_MonthsTicker()},\n function _(e,t,a,i,r){i();const n=e(177),_=e(188),s=e(189);class c extends _.SingleIntervalTicker{constructor(e){super(e)}initialize(){super.initialize(),this.interval=s.ONE_YEAR,this.basic_ticker=new n.BasicTicker({num_minor_ticks:0})}get_ticks_no_defaults(e,t,a,i){const r=s.last_year_no_later_than(new Date(e)).getUTCFullYear(),n=s.last_year_no_later_than(new Date(t)).getUTCFullYear();return{major:this.basic_ticker.get_ticks_no_defaults(r,n,a,i).major.map((e=>Date.UTC(e,0,1))).filter((a=>e<=a&&a<=t)),minor:[]}}}a.YearsTicker=c,c.__name__=\"YearsTicker\"},\n function _(i,s,t,e,o){e();const n=i(173),r=i(193),_=i(194);class c extends n.ContinuousAxisView{}t.LogAxisView=c,c.__name__=\"LogAxisView\";class x extends n.ContinuousAxis{constructor(i){super(i)}static init_LogAxis(){this.prototype.default_view=c,this.override({ticker:()=>new _.LogTicker,formatter:()=>new r.LogTickFormatter})}}t.LogAxis=x,x.__name__=\"LogAxis\",x.init_LogAxis()},\n function _(t,e,r,i,n){i();const o=t(166),a=t(176),s=t(194),c=t(167),{log:l,round:u}=Math;class _ extends o.TickFormatter{constructor(t){super(t)}static init_LogTickFormatter(){this.define((({Ref:t,Nullable:e})=>({ticker:[e(t(s.LogTicker)),null]})))}initialize(){super.initialize(),this.basic_formatter=new a.BasicTickFormatter}format_graphics(t,e){var r,i;if(0==t.length)return[];const n=null!==(i=null===(r=this.ticker)||void 0===r?void 0:r.base)&&void 0!==i?i:10,o=this._exponents(t,n);return null==o?this.basic_formatter.format_graphics(t,e):o.map((t=>{const e=new c.TextBox({text:a.unicode_replace(`${n}`)}),r=new c.TextBox({text:a.unicode_replace(`${t}`)});return new c.BaseExpo(e,r)}))}_exponents(t,e){let r=null;const i=[];for(const n of t){const t=u(l(n)/l(e));if(r==t)return null;r=t,i.push(t)}return i}doFormat(t,e){var r,i;if(0==t.length)return[];const n=null!==(i=null===(r=this.ticker)||void 0===r?void 0:r.base)&&void 0!==i?i:10,o=this._exponents(t,n);return null==o?this.basic_formatter.doFormat(t,e):o.map((t=>a.unicode_replace(`${n}^${t}`)))}}r.LogTickFormatter=_,_.__name__=\"LogTickFormatter\",_.init_LogTickFormatter()},\n function _(t,o,e,i,s){i();const n=t(178),r=t(9);class c extends n.AdaptiveTicker{constructor(t){super(t)}static init_LogTicker(){this.override({mantissas:[1,5]})}get_ticks_no_defaults(t,o,e,i){const s=this.num_minor_ticks,n=[],c=this.base,a=Math.log(t)/Math.log(c),f=Math.log(o)/Math.log(c),l=f-a;let h;if(isFinite(l))if(l<2){const e=this.get_interval(t,o,i),c=Math.floor(t/e),a=Math.ceil(o/e);if(h=r.range(c,a+1).filter((t=>0!=t)).map((t=>t*e)).filter((e=>t<=e&&e<=o)),s>0&&h.length>0){const t=e/s,o=r.range(0,s).map((o=>o*t));for(const t of o.slice(1))n.push(h[0]-t);for(const t of h)for(const e of o)n.push(t+e)}}else{const t=Math.ceil(.999999*a),o=Math.floor(1.000001*f),e=Math.ceil((o-t)/9);if(h=r.range(t-1,o+1,e).map((t=>c**t)),s>0&&h.length>0){const t=c**e/s,o=r.range(1,s+1).map((o=>o*t));for(const t of o)n.push(h[0]/t);n.push(h[0]);for(const t of h)for(const e of o)n.push(t*e)}}else h=[];return{major:h.filter((e=>t<=e&&e<=o)),minor:n.filter((e=>t<=e&&e<=o))}}}e.LogTicker=c,c.__name__=\"LogTicker\",c.init_LogTicker()},\n function _(e,t,i,r,s){r();const a=e(163),o=e(175),c=e(196),n=e(197);class _ extends a.AxisView{}i.MercatorAxisView=_,_.__name__=\"MercatorAxisView\";class x extends o.LinearAxis{constructor(e){super(e)}static init_MercatorAxis(){this.prototype.default_view=_,this.override({ticker:()=>new n.MercatorTicker({dimension:\"lat\"}),formatter:()=>new c.MercatorTickFormatter({dimension:\"lat\"})})}}i.MercatorAxis=x,x.__name__=\"MercatorAxis\",x.init_MercatorAxis()},\n function _(r,t,e,o,n){o();const i=r(176),c=r(20),a=r(65);class s extends i.BasicTickFormatter{constructor(r){super(r)}static init_MercatorTickFormatter(){this.define((({Nullable:r})=>({dimension:[r(c.LatLon),null]})))}doFormat(r,t){if(null==this.dimension)throw new Error(\"MercatorTickFormatter.dimension not configured\");if(0==r.length)return[];const e=r.length,o=new Array(e);if(\"lon\"==this.dimension)for(let n=0;n<e;n++){const[e]=a.wgs84_mercator.invert(r[n],t.loc);o[n]=e}else for(let n=0;n<e;n++){const[,e]=a.wgs84_mercator.invert(t.loc,r[n]);o[n]=e}return super.doFormat(o,t)}}e.MercatorTickFormatter=s,s.__name__=\"MercatorTickFormatter\",s.init_MercatorTickFormatter()},\n function _(t,o,n,r,s){r();const i=t(177),e=t(20),c=t(65);class _ extends i.BasicTicker{constructor(t){super(t)}static init_MercatorTicker(){this.define((({Nullable:t})=>({dimension:[t(e.LatLon),null]})))}get_ticks_no_defaults(t,o,n,r){if(null==this.dimension)throw new Error(`${this}.dimension wasn't configured`);return[t,o]=c.clip_mercator(t,o,this.dimension),\"lon\"==this.dimension?this._get_ticks_lon(t,o,n,r):this._get_ticks_lat(t,o,n,r)}_get_ticks_lon(t,o,n,r){const[s]=c.wgs84_mercator.invert(t,n),[i,e]=c.wgs84_mercator.invert(o,n),_=super.get_ticks_no_defaults(s,i,n,r),a=[];for(const t of _.major)if(c.in_bounds(t,\"lon\")){const[o]=c.wgs84_mercator.compute(t,e);a.push(o)}const m=[];for(const t of _.minor)if(c.in_bounds(t,\"lon\")){const[o]=c.wgs84_mercator.compute(t,e);m.push(o)}return{major:a,minor:m}}_get_ticks_lat(t,o,n,r){const[,s]=c.wgs84_mercator.invert(n,t),[i,e]=c.wgs84_mercator.invert(n,o),_=super.get_ticks_no_defaults(s,e,n,r),a=[];for(const t of _.major)if(c.in_bounds(t,\"lat\")){const[,o]=c.wgs84_mercator.compute(i,t);a.push(o)}const m=[];for(const t of _.minor)if(c.in_bounds(t,\"lat\")){const[,o]=c.wgs84_mercator.compute(i,t);m.push(o)}return{major:a,minor:m}}}n.MercatorTicker=_,_.__name__=\"MercatorTicker\",_.init_MercatorTicker()},\n function _(e,i,r,c,k){c(),k(\"AdaptiveTicker\",e(178).AdaptiveTicker),k(\"BasicTicker\",e(177).BasicTicker),k(\"CategoricalTicker\",e(171).CategoricalTicker),k(\"CompositeTicker\",e(186).CompositeTicker),k(\"ContinuousTicker\",e(179).ContinuousTicker),k(\"DatetimeTicker\",e(185).DatetimeTicker),k(\"DaysTicker\",e(187).DaysTicker),k(\"FixedTicker\",e(199).FixedTicker),k(\"LogTicker\",e(194).LogTicker),k(\"MercatorTicker\",e(197).MercatorTicker),k(\"MonthsTicker\",e(190).MonthsTicker),k(\"SingleIntervalTicker\",e(188).SingleIntervalTicker),k(\"Ticker\",e(165).Ticker),k(\"YearsTicker\",e(191).YearsTicker),k(\"BinnedTicker\",e(200).BinnedTicker)},\n function _(i,t,e,r,n){r();const s=i(179);class _ extends s.ContinuousTicker{constructor(i){super(i)}static init_FixedTicker(){this.define((({Number:i,Array:t})=>({ticks:[t(i),[]],minor_ticks:[t(i),[]]})))}get_ticks_no_defaults(i,t,e,r){return{major:this.ticks,minor:this.minor_ticks}}get_interval(i,t,e){return 0}get_min_interval(){return 0}get_max_interval(){return 0}}e.FixedTicker=_,_.__name__=\"FixedTicker\",_.init_FixedTicker()},\n function _(e,n,t,i,r){i();const c=e(165),o=e(201),s=e(12);class a extends c.Ticker{constructor(e){super(e)}static init_BinnedTicker(){this.define((({Number:e,Ref:n,Or:t,Auto:i})=>({mapper:[n(o.ScanningColorMapper)],num_major_ticks:[t(e,i),8]})))}get_ticks(e,n,t,i){const{binning:r}=this.mapper.metrics,c=Math.max(0,s.left_edge_index(e,r)),o=Math.min(s.left_edge_index(n,r)+1,r.length-1),a=[];for(let e=c;e<=o;e++)a.push(r[e]);const{num_major_ticks:_}=this,m=[],h=\"auto\"==_?a.length:_,l=Math.max(1,Math.floor(a.length/h));for(let e=0;e<a.length;e+=l)m.push(a[e]);return{major:m,minor:[]}}}t.BinnedTicker=a,a.__name__=\"BinnedTicker\",a.init_BinnedTicker()},\n function _(n,e,i,r,o){r();const t=n(202),a=n(12);class c extends t.ContinuousColorMapper{constructor(n){super(n)}cmap(n,e,i,r,o){if(n<o.binning[0])return i;if(n>o.binning[o.binning.length-1])return r;return e[a.left_edge_index(n,o.binning)]}}i.ScanningColorMapper=c,c.__name__=\"ScanningColorMapper\"},\n function _(t,o,e,n,s){n();const l=t(203),i=t(61),c=t(9),a=t(8);class r extends l.ColorMapper{constructor(t){super(t),this._scan_data=null}static init_ContinuousColorMapper(){this.define((({Number:t,String:o,Ref:e,Color:n,Or:s,Tuple:l,Array:c,Nullable:a})=>({high:[a(t),null],low:[a(t),null],high_color:[a(n),null],low_color:[a(n),null],domain:[c(l(e(i.GlyphRenderer),s(o,c(o)))),[]]})))}connect_signals(){super.connect_signals();const t=()=>{for(const[t]of this.domain)this.connect(t.view.change,(()=>this.update_data())),this.connect(t.data_source.selected.change,(()=>this.update_data()))};this.connect(this.properties.domain.change,(()=>t())),t()}update_data(){const{domain:t,palette:o}=this,e=[...this._collect(t)];this._scan_data=this.scan(e,o.length),this.metrics_change.emit(),this.change.emit()}get metrics(){return null==this._scan_data&&this.update_data(),this._scan_data}*_collect(t){for(const[o,e]of t)for(const t of a.isArray(e)?e:[e]){let e=o.data_source.get_column(t);e=o.view.indices.select(e);const n=o.view.masked,s=o.data_source.selected.indices;let l;if(null!=n&&s.length>0?l=c.intersection([...n],s):null!=n?l=[...n]:s.length>0&&(l=s),null!=l&&(e=c.map(l,(t=>e[t]))),e.length>0&&!a.isNumber(e[0]))for(const t of e)yield*t;else yield*e}}_v_compute(t,o,e,n){const{nan_color:s}=n;let{low_color:l,high_color:i}=n;null==l&&(l=e[0]),null==i&&(i=e[e.length-1]);const{domain:a}=this,r=c.is_empty(a)?t:[...this._collect(a)];this._scan_data=this.scan(r,e.length),this.metrics_change.emit();for(let n=0,c=t.length;n<c;n++){const c=t[n];isNaN(c)?o[n]=s:o[n]=this.cmap(c,e,l,i,this._scan_data)}}_colors(t){return Object.assign(Object.assign({},super._colors(t)),{low_color:null!=this.low_color?t(this.low_color):void 0,high_color:null!=this.high_color?t(this.high_color):void 0})}}e.ContinuousColorMapper=r,r.__name__=\"ContinuousColorMapper\",r.init_ContinuousColorMapper()},\n function _(t,r,e,n,o){n();const i=t(204),a=t(15),c=t(24),_=t(22),l=t(27);function s(t){return _.encode_rgba(_.color2rgba(t))}function p(t){const r=new Uint32Array(t.length);for(let e=0,n=t.length;e<n;e++)r[e]=s(t[e]);return r}e._convert_color=s,e._convert_palette=p;class u extends i.Mapper{constructor(t){super(t)}initialize(){super.initialize(),this.metrics_change=new a.Signal0(this,\"metrics_change\")}static init_ColorMapper(){this.define((({Color:t,Array:r})=>({palette:[r(t)],nan_color:[t,\"gray\"]})))}v_compute(t){const r=new Array(t.length);return this._v_compute(t,r,this.palette,this._colors((t=>t))),r}get rgba_mapper(){const t=this,r=p(this.palette),e=this._colors(s);return{v_compute(n){const o=new c.ColorArray(n.length);return t._v_compute(n,o,r,e),new Uint8ClampedArray(l.to_big_endian(o).buffer)}}}_colors(t){return{nan_color:t(this.nan_color)}}}e.ColorMapper=u,u.__name__=\"ColorMapper\",u.init_ColorMapper()},\n function _(r,e,n,s,o){s();const p=r(149);class t extends p.Transform{constructor(r){super(r)}compute(r){throw new Error(\"mapping single values is not supported\")}}n.Mapper=t,t.__name__=\"Mapper\"},\n function _(t,r,a,e,c){e(),c(\"BasicTickFormatter\",t(176).BasicTickFormatter),c(\"CategoricalTickFormatter\",t(172).CategoricalTickFormatter),c(\"DatetimeTickFormatter\",t(180).DatetimeTickFormatter),c(\"FuncTickFormatter\",t(206).FuncTickFormatter),c(\"LogTickFormatter\",t(193).LogTickFormatter),c(\"MercatorTickFormatter\",t(196).MercatorTickFormatter),c(\"NumeralTickFormatter\",t(207).NumeralTickFormatter),c(\"PrintfTickFormatter\",t(208).PrintfTickFormatter),c(\"TickFormatter\",t(166).TickFormatter)},\n function _(t,n,e,s,i){s();const r=t(166),c=t(13),a=t(34);class u extends r.TickFormatter{constructor(t){super(t)}static init_FuncTickFormatter(){this.define((({Unknown:t,String:n,Dict:e})=>({args:[e(t),{}],code:[n,\"\"]})))}get names(){return c.keys(this.args)}get values(){return c.values(this.args)}_make_func(){const t=a.use_strict(this.code);return new Function(\"tick\",\"index\",\"ticks\",...this.names,t)}doFormat(t,n){const e=this._make_func().bind({});return t.map(((t,n,s)=>`${e(t,n,s,...this.values)}`))}}e.FuncTickFormatter=u,u.__name__=\"FuncTickFormatter\",u.init_FuncTickFormatter()},\n function _(r,t,n,e,a){e();const o=r(1).__importStar(r(183)),i=r(166),u=r(20);class c extends i.TickFormatter{constructor(r){super(r)}static init_NumeralTickFormatter(){this.define((({String:r})=>({format:[r,\"0,0\"],language:[r,\"en\"],rounding:[u.RoundingFunction,\"round\"]})))}get _rounding_fn(){switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}}doFormat(r,t){const{format:n,language:e,_rounding_fn:a}=this;return r.map((r=>o.format(r,n,e,a)))}}n.NumeralTickFormatter=c,c.__name__=\"NumeralTickFormatter\",c.init_NumeralTickFormatter()},\n function _(t,r,i,n,o){n();const a=t(166),e=t(182);class c extends a.TickFormatter{constructor(t){super(t)}static init_PrintfTickFormatter(){this.define((({String:t})=>({format:[t,\"%s\"]})))}doFormat(t,r){return t.map((t=>e.sprintf(this.format,t)))}}i.PrintfTickFormatter=c,c.__name__=\"PrintfTickFormatter\",c.init_PrintfTickFormatter()},\n function _(r,o,a,p,e){p(),e(\"CategoricalColorMapper\",r(210).CategoricalColorMapper),e(\"CategoricalMarkerMapper\",r(212).CategoricalMarkerMapper),e(\"CategoricalPatternMapper\",r(213).CategoricalPatternMapper),e(\"ContinuousColorMapper\",r(202).ContinuousColorMapper),e(\"ColorMapper\",r(203).ColorMapper),e(\"LinearColorMapper\",r(214).LinearColorMapper),e(\"LogColorMapper\",r(215).LogColorMapper),e(\"ScanningColorMapper\",r(201).ScanningColorMapper),e(\"EqHistColorMapper\",r(216).EqHistColorMapper)},\n function _(t,o,a,r,e){r();const c=t(211),l=t(203),i=t(104);class s extends l.ColorMapper{constructor(t){super(t)}static init_CategoricalColorMapper(){this.define((({Number:t,Nullable:o})=>({factors:[i.FactorSeq],start:[t,0],end:[o(t),null]})))}_v_compute(t,o,a,{nan_color:r}){c.cat_v_compute(t,this.factors,a,o,this.start,this.end,r)}}a.CategoricalColorMapper=s,s.__name__=\"CategoricalColorMapper\",s.init_CategoricalColorMapper()},\n function _(n,t,e,l,i){l();const c=n(12),u=n(8);function f(n,t){if(n.length!=t.length)return!1;for(let e=0,l=n.length;e<l;e++)if(n[e]!==t[e])return!1;return!0}e._cat_equals=f,e.cat_v_compute=function(n,t,e,l,i,o,r){const _=n.length;for(let g=0;g<_;g++){let _,s,h=n[g];u.isString(h)?_=c.index_of(t,h):(null!=i?h=null!=o?h.slice(i,o):h.slice(i):null!=o&&(h=h.slice(0,o)),_=1==h.length?c.index_of(t,h[0]):c.find_index(t,(n=>f(n,h)))),s=_<0||_>=e.length?r:e[_],l[g]=s}}},\n function _(r,e,a,t,s){t();const c=r(211),i=r(104),l=r(204),n=r(20);class p extends l.Mapper{constructor(r){super(r)}static init_CategoricalMarkerMapper(){this.define((({Number:r,Array:e,Nullable:a})=>({factors:[i.FactorSeq],markers:[e(n.MarkerType)],start:[r,0],end:[a(r),null],default_value:[n.MarkerType,\"circle\"]})))}v_compute(r){const e=new Array(r.length);return c.cat_v_compute(r,this.factors,this.markers,e,this.start,this.end,this.default_value),e}}a.CategoricalMarkerMapper=p,p.__name__=\"CategoricalMarkerMapper\",p.init_CategoricalMarkerMapper()},\n function _(t,a,e,r,n){r();const s=t(211),c=t(104),i=t(204),p=t(20);class l extends i.Mapper{constructor(t){super(t)}static init_CategoricalPatternMapper(){this.define((({Number:t,Array:a,Nullable:e})=>({factors:[c.FactorSeq],patterns:[a(p.HatchPatternType)],start:[t,0],end:[e(t),null],default_value:[p.HatchPatternType,\" \"]})))}v_compute(t){const a=new Array(t.length);return s.cat_v_compute(t,this.factors,this.patterns,a,this.start,this.end,this.default_value),a}}e.CategoricalPatternMapper=l,l.__name__=\"CategoricalPatternMapper\",l.init_CategoricalPatternMapper()},\n function _(n,r,o,t,a){t();const e=n(202),i=n(12);class s extends e.ContinuousColorMapper{constructor(n){super(n)}scan(n,r){const o=null!=this.low?this.low:i.min(n),t=null!=this.high?this.high:i.max(n);return{max:t,min:o,norm_factor:1/(t-o),normed_interval:1/r}}cmap(n,r,o,t,a){const e=r.length-1;if(n==a.max)return r[e];const i=(n-a.min)*a.norm_factor,s=Math.floor(i/a.normed_interval);return s<0?o:s>e?t:r[s]}}o.LinearColorMapper=s,s.__name__=\"LinearColorMapper\"},\n function _(o,t,n,r,l){r();const a=o(202),s=o(12);class e extends a.ContinuousColorMapper{constructor(o){super(o)}scan(o,t){const n=null!=this.low?this.low:s.min(o),r=null!=this.high?this.high:s.max(o);return{max:r,min:n,scale:t/(Math.log(r)-Math.log(n))}}cmap(o,t,n,r,l){const a=t.length-1;if(o>l.max)return r;if(o==l.max)return t[a];if(o<l.min)return n;const s=Math.log(o)-Math.log(l.min);let e=Math.floor(s*l.scale);return e>a&&(e=a),t[e]}}n.LogColorMapper=e,e.__name__=\"LogColorMapper\"},\n function _(n,t,i,e,o){e();const s=n(201),r=n(12),a=n(9),l=n(19);class c extends s.ScanningColorMapper{constructor(n){super(n)}static init_EqHistColorMapper(){this.define((({Int:n})=>({bins:[n,65536]})))}scan(n,t){const i=null!=this.low?this.low:r.min(n),e=null!=this.high?this.high:r.max(n),o=this.bins,s=a.linspace(i,e,o+1),c=r.bin_counts(n,s),h=new Array(o);for(let n=0,t=s.length;n<t-1;n++){const t=s[n],i=s[n+1];h[n]=(t+i)/2}const p=a.cumsum(c),g=p[p.length-1],u=r.map(p,(n=>n/g));let m=t-1,M=[],_=0,f=2*t;for(;m!=t&&_<4&&0!=m;){const n=f/m;if(n>1e3)break;f=Math.round(Math.max(t*n,t));const i=a.range(0,f),e=r.map(u,(n=>n*(f-1)));M=r.interpolate(i,e,h);m=a.uniq(M).length-1,_++}if(0==m){M=[i,e];for(let n=0;n<t-1;n++)M.push(e)}else M=M.slice(M.length-t-1),m!=t&&l.logger.warn(\"EqHistColorMapper warning: Histogram equalization did not converge.\");return M[0]=i,M[M.length-1]=e,{min:i,max:e,binning:M}}}i.EqHistColorMapper=c,c.__name__=\"EqHistColorMapper\",c.init_EqHistColorMapper()},\n function _(a,e,l,c,n){c(),n(\"CategoricalScale\",a(145).CategoricalScale),n(\"ContinuousScale\",a(158).ContinuousScale),n(\"LinearScale\",a(218).LinearScale),n(\"LinearInterpolationScale\",a(219).LinearInterpolationScale),n(\"LogScale\",a(157).LogScale),n(\"Scale\",a(146).Scale)},\n function _(e,t,n,r,_){r();const i=e(158);class u extends i.ContinuousScale{constructor(e){super(e)}get s_compute(){const[e,t]=this._linear_compute_state();return n=>e*n+t}compute(e){return this._linear_compute(e)}v_compute(e){return this._linear_v_compute(e)}invert(e){return this._linear_invert(e)}v_invert(e){return this._linear_v_invert(e)}}n.LinearScale=u,u.__name__=\"LinearScale\"},\n function _(n,t,e,r,i){r();const a=n(146),o=n(12);class c extends a.Scale{constructor(n){super(n)}static init_LinearInterpolationScale(){this.internal((({Arrayable:n})=>({binning:[n]})))}get s_compute(){throw new Error(\"not implemented\")}compute(n){return n}v_compute(n){const{binning:t}=this,{start:e,end:r}=this.source_range,i=e,a=r,c=t.length,l=(r-e)/(c-1),s=new Float64Array(c);for(let n=0;n<c;n++)s[n]=e+n*l;const u=o.map(n,(n=>{if(n<i)return i;if(n>a)return a;const e=o.left_edge_index(n,t);if(-1==e)return i;if(e>=c-1)return a;const r=t[e],l=(n-r)/(t[e+1]-r),u=s[e];return u+l*(s[e+1]-u)}));return this._linear_v_compute(u)}invert(n){return n}v_invert(n){return new Float64Array(n)}}e.LinearInterpolationScale=c,c.__name__=\"LinearInterpolationScale\",c.init_LinearInterpolationScale()},\n function _(a,n,e,g,R){g(),R(\"DataRange\",a(160).DataRange),R(\"DataRange1d\",a(159).DataRange1d),R(\"FactorRange\",a(104).FactorRange),R(\"Range\",a(105).Range),R(\"Range1d\",a(156).Range1d)},\n function _(a,o,i,t,e){t();var n=a(141);e(\"Sizeable\",n.Sizeable),e(\"SizingPolicy\",n.SizingPolicy);var c=a(142);e(\"Layoutable\",c.Layoutable),e(\"LayoutItem\",c.LayoutItem);var r=a(222);e(\"HStack\",r.HStack),e(\"VStack\",r.VStack);var l=a(223);e(\"Grid\",l.Grid),e(\"Row\",l.Row),e(\"Column\",l.Column);var S=a(224);e(\"ContentBox\",S.ContentBox),e(\"VariadicBox\",S.VariadicBox)},\n function _(t,e,h,i,r){i();const n=t(142),o=t(99);class s extends n.Layoutable{constructor(){super(...arguments),this.children=[]}*[Symbol.iterator](){yield*this.children}}h.Stack=s,s.__name__=\"Stack\";class c extends s{_measure(t){let e=0,h=0;for(const t of this.children){const i=t.measure({width:0,height:0});e+=i.width,h=Math.max(h,i.height)}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);const h=this.absolute?t.top:0;let i=this.absolute?t.left:0;const{height:r}=t;for(const t of this.children){const{width:e}=t.measure({width:0,height:0});t.set_geometry(new o.BBox({left:i,width:e,top:h,height:r})),i+=e}}}h.HStack=c,c.__name__=\"HStack\";class a extends s{_measure(t){let e=0,h=0;for(const t of this.children){const i=t.measure({width:0,height:0});e=Math.max(e,i.width),h+=i.height}return{width:e,height:h}}_set_geometry(t,e){super._set_geometry(t,e);const h=this.absolute?t.left:0;let i=this.absolute?t.top:0;const{width:r}=t;for(const t of this.children){const{height:e}=t.measure({width:0,height:0});t.set_geometry(new o.BBox({top:i,height:e,left:h,width:r})),i+=e}}}h.VStack=a,a.__name__=\"VStack\";class l extends n.Layoutable{constructor(){super(...arguments),this.children=[]}*[Symbol.iterator](){yield*this.children}_measure(t){const{width_policy:e,height_policy:h}=this.sizing,{min:i,max:r}=Math;let n=0,o=0;for(const e of this.children){const{width:h,height:i}=e.measure(t);n=r(n,h),o=r(o,i)}return{width:(()=>{const{width:h}=this.sizing;if(t.width==1/0)return\"fixed\"==e&&null!=h?h:n;switch(e){case\"fixed\":return null!=h?h:n;case\"min\":return n;case\"fit\":return null!=h?i(t.width,h):t.width;case\"max\":return null!=h?r(t.width,h):t.width}})(),height:(()=>{const{height:e}=this.sizing;if(t.height==1/0)return\"fixed\"==h&&null!=e?e:o;switch(h){case\"fixed\":return null!=e?e:o;case\"min\":return o;case\"fit\":return null!=e?i(t.height,e):t.height;case\"max\":return null!=e?r(t.height,e):t.height}})()}}_set_geometry(t,e){super._set_geometry(t,e);const h=this.absolute?t:t.relative(),{left:i,right:r,top:n,bottom:s}=h,c=Math.round(h.vcenter),a=Math.round(h.hcenter);for(const e of this.children){const{margin:h,halign:l,valign:d}=e.sizing,{width:u,height:g,inner:_}=e.measure(t),w=(()=>{switch(`${d}_${l}`){case\"start_start\":return new o.BBox({left:i+h.left,top:n+h.top,width:u,height:g});case\"start_center\":return new o.BBox({hcenter:a,top:n+h.top,width:u,height:g});case\"start_end\":return new o.BBox({right:r-h.right,top:n+h.top,width:u,height:g});case\"center_start\":return new o.BBox({left:i+h.left,vcenter:c,width:u,height:g});case\"center_center\":return new o.BBox({hcenter:a,vcenter:c,width:u,height:g});case\"center_end\":return new o.BBox({right:r-h.right,vcenter:c,width:u,height:g});case\"end_start\":return new o.BBox({left:i+h.left,bottom:s-h.bottom,width:u,height:g});case\"end_center\":return new o.BBox({hcenter:a,bottom:s-h.bottom,width:u,height:g});case\"end_end\":return new o.BBox({right:r-h.right,bottom:s-h.bottom,width:u,height:g})}})(),m=null==_?w:new o.BBox({left:w.left+_.left,top:w.top+_.top,right:w.right-_.right,bottom:w.bottom-_.bottom});e.set_geometry(w,m)}}}h.NodeLayout=l,l.__name__=\"NodeLayout\"},\n function _(t,i,s,e,o){e();const n=t(141),l=t(142),r=t(8),h=t(99),c=t(9),{max:a,round:g}=Math;class p{constructor(t){this.def=t,this._map=new Map}get(t){let i=this._map.get(t);return void 0===i&&(i=this.def(),this._map.set(t,i)),i}apply(t,i){const s=this.get(t);this._map.set(t,i(s))}}p.__name__=\"DefaultMap\";class f{constructor(){this._items=[],this._nrows=0,this._ncols=0}get nrows(){return this._nrows}get ncols(){return this._ncols}add(t,i){const{r1:s,c1:e}=t;this._nrows=a(this._nrows,s+1),this._ncols=a(this._ncols,e+1),this._items.push({span:t,data:i})}at(t,i){return this._items.filter((({span:s})=>s.r0<=t&&t<=s.r1&&s.c0<=i&&i<=s.c1)).map((({data:t})=>t))}row(t){return this._items.filter((({span:i})=>i.r0<=t&&t<=i.r1)).map((({data:t})=>t))}col(t){return this._items.filter((({span:i})=>i.c0<=t&&t<=i.c1)).map((({data:t})=>t))}foreach(t){for(const{span:i,data:s}of this._items)t(i,s)}map(t){const i=new f;for(const{span:s,data:e}of this._items)i.add(s,t(s,e));return i}}f.__name__=\"Container\";class _ extends l.Layoutable{constructor(t=[]){super(),this.items=t,this.rows=\"auto\",this.cols=\"auto\",this.spacing=0}*[Symbol.iterator](){for(const{layout:t}of this.items)yield t}is_width_expanding(){if(super.is_width_expanding())return!0;if(\"fixed\"==this.sizing.width_policy)return!1;const{cols:t}=this._state;return c.some(t,(t=>\"max\"==t.policy))}is_height_expanding(){if(super.is_height_expanding())return!0;if(\"fixed\"==this.sizing.height_policy)return!1;const{rows:t}=this._state;return c.some(t,(t=>\"max\"==t.policy))}_init(){var t,i,s,e;super._init();const o=new f;for(const{layout:t,row:i,col:s,row_span:e,col_span:n}of this.items)if(t.sizing.visible){const l=i,r=s,h=i+(null!=e?e:1)-1,c=s+(null!=n?n:1)-1;o.add({r0:l,c0:r,r1:h,c1:c},t)}const{nrows:n,ncols:l}=o,h=new Array(n);for(let s=0;s<n;s++){const e=(()=>{var t;const i=r.isPlainObject(this.rows)?null!==(t=this.rows[s])&&void 0!==t?t:this.rows[\"*\"]:this.rows;return null==i?{policy:\"auto\"}:r.isNumber(i)?{policy:\"fixed\",height:i}:r.isString(i)?{policy:i}:i})(),n=null!==(t=e.align)&&void 0!==t?t:\"auto\";if(\"fixed\"==e.policy)h[s]={policy:\"fixed\",height:e.height,align:n};else if(\"min\"==e.policy)h[s]={policy:\"min\",align:n};else if(\"fit\"==e.policy||\"max\"==e.policy)h[s]={policy:e.policy,flex:null!==(i=e.flex)&&void 0!==i?i:1,align:n};else{if(\"auto\"!=e.policy)throw new Error(\"unrechable\");c.some(o.row(s),(t=>t.is_height_expanding()))?h[s]={policy:\"max\",flex:1,align:n}:h[s]={policy:\"min\",align:n}}}const a=new Array(l);for(let t=0;t<l;t++){const i=(()=>{var i;const s=r.isPlainObject(this.cols)?null!==(i=this.cols[t])&&void 0!==i?i:this.cols[\"*\"]:this.cols;return null==s?{policy:\"auto\"}:r.isNumber(s)?{policy:\"fixed\",width:s}:r.isString(s)?{policy:s}:s})(),n=null!==(s=i.align)&&void 0!==s?s:\"auto\";if(\"fixed\"==i.policy)a[t]={policy:\"fixed\",width:i.width,align:n};else if(\"min\"==i.policy)a[t]={policy:\"min\",align:n};else if(\"fit\"==i.policy||\"max\"==i.policy)a[t]={policy:i.policy,flex:null!==(e=i.flex)&&void 0!==e?e:1,align:n};else{if(\"auto\"!=i.policy)throw new Error(\"unrechable\");c.some(o.col(t),(t=>t.is_width_expanding()))?a[t]={policy:\"max\",flex:1,align:n}:a[t]={policy:\"min\",align:n}}}const[g,p]=r.isNumber(this.spacing)?[this.spacing,this.spacing]:this.spacing;this._state={items:o,nrows:n,ncols:l,rows:h,cols:a,rspacing:g,cspacing:p}}_measure_totals(t,i){const{nrows:s,ncols:e,rspacing:o,cspacing:n}=this._state;return{height:c.sum(t)+(s-1)*o,width:c.sum(i)+(e-1)*n}}_measure_cells(t){const{items:i,nrows:s,ncols:e,rows:o,cols:l,rspacing:r,cspacing:h}=this._state,c=new Array(s);for(let t=0;t<s;t++){const i=o[t];c[t]=\"fixed\"==i.policy?i.height:0}const p=new Array(e);for(let t=0;t<e;t++){const i=l[t];p[t]=\"fixed\"==i.policy?i.width:0}const _=new f;i.foreach(((i,s)=>{const{r0:e,c0:f,r1:d,c1:u}=i,w=(d-e)*r,m=(u-f)*h;let y=0;for(let i=e;i<=d;i++)y+=t(i,f).height;y+=w;let x=0;for(let i=f;i<=u;i++)x+=t(e,i).width;x+=m;const b=s.measure({width:x,height:y});_.add(i,{layout:s,size_hint:b});const z=new n.Sizeable(b).grow_by(s.sizing.margin);z.height-=w,z.width-=m;const v=[];for(let t=e;t<=d;t++){const i=o[t];\"fixed\"==i.policy?z.height-=i.height:v.push(t)}if(z.height>0){const t=g(z.height/v.length);for(const i of v)c[i]=a(c[i],t)}const j=[];for(let t=f;t<=u;t++){const i=l[t];\"fixed\"==i.policy?z.width-=i.width:j.push(t)}if(z.width>0){const t=g(z.width/j.length);for(const i of j)p[i]=a(p[i],t)}}));return{size:this._measure_totals(c,p),row_heights:c,col_widths:p,size_hints:_}}_measure_grid(t){const{nrows:i,ncols:s,rows:e,cols:o,rspacing:n,cspacing:l}=this._state,r=this._measure_cells(((t,i)=>{const s=e[t],n=o[i];return{width:\"fixed\"==n.policy?n.width:1/0,height:\"fixed\"==s.policy?s.height:1/0}}));let h;h=\"fixed\"==this.sizing.height_policy&&null!=this.sizing.height?this.sizing.height:t.height!=1/0&&this.is_height_expanding()?t.height:r.size.height;let c,p=0;for(let t=0;t<i;t++){const i=e[t];\"fit\"==i.policy||\"max\"==i.policy?p+=i.flex:h-=r.row_heights[t]}if(h-=(i-1)*n,0!=p&&h>0)for(let t=0;t<i;t++){const i=e[t];if(\"fit\"==i.policy||\"max\"==i.policy){const s=g(h*(i.flex/p));h-=s,r.row_heights[t]=s,p-=i.flex}}else if(h<0){let t=0;for(let s=0;s<i;s++){\"fixed\"!=e[s].policy&&t++}let s=-h;for(let o=0;o<i;o++){if(\"fixed\"!=e[o].policy){const i=r.row_heights[o],e=g(s/t);r.row_heights[o]=a(i-e,0),s-=e>i?i:e,t--}}}c=\"fixed\"==this.sizing.width_policy&&null!=this.sizing.width?this.sizing.width:t.width!=1/0&&this.is_width_expanding()?t.width:r.size.width;let f=0;for(let t=0;t<s;t++){const i=o[t];\"fit\"==i.policy||\"max\"==i.policy?f+=i.flex:c-=r.col_widths[t]}if(c-=(s-1)*l,0!=f&&c>0)for(let t=0;t<s;t++){const i=o[t];if(\"fit\"==i.policy||\"max\"==i.policy){const s=g(c*(i.flex/f));c-=s,r.col_widths[t]=s,f-=i.flex}}else if(c<0){let t=0;for(let i=0;i<s;i++){\"fixed\"!=o[i].policy&&t++}let i=-c;for(let e=0;e<s;e++){if(\"fixed\"!=o[e].policy){const s=r.col_widths[e],o=g(i/t);r.col_widths[e]=a(s-o,0),i-=o>s?s:o,t--}}}const{row_heights:_,col_widths:d,size_hints:u}=this._measure_cells(((t,i)=>({width:r.col_widths[i],height:r.row_heights[t]})));return{size:this._measure_totals(_,d),row_heights:_,col_widths:d,size_hints:u}}_measure(t){const{size:i}=this._measure_grid(t);return i}_set_geometry(t,i){super._set_geometry(t,i);const{nrows:s,ncols:e,rspacing:o,cspacing:n}=this._state,{row_heights:l,col_widths:r,size_hints:c}=this._measure_grid(t),f=this._state.rows.map(((t,i)=>Object.assign(Object.assign({},t),{top:0,height:l[i],get bottom(){return this.top+this.height}}))),_=this._state.cols.map(((t,i)=>Object.assign(Object.assign({},t),{left:0,width:r[i],get right(){return this.left+this.width}}))),d=c.map(((t,i)=>Object.assign(Object.assign({},i),{outer:new h.BBox,inner:new h.BBox})));for(let i=0,e=this.absolute?t.top:0;i<s;i++){const t=f[i];t.top=e,e+=t.height+o}for(let i=0,s=this.absolute?t.left:0;i<e;i++){const t=_[i];t.left=s,s+=t.width+n}d.foreach((({r0:t,c0:i,r1:s,c1:e},l)=>{const{layout:r,size_hint:c}=l,{sizing:a}=r,{width:p,height:d}=c,u=function(t,i){let s=(i-t)*n;for(let e=t;e<=i;e++)s+=_[e].width;return s}(i,e),w=function(t,i){let s=(i-t)*o;for(let e=t;e<=i;e++)s+=f[e].height;return s}(t,s),m=i==e&&\"auto\"!=_[i].align?_[i].align:a.halign,y=t==s&&\"auto\"!=f[t].align?f[t].align:a.valign;let x=_[i].left;\"start\"==m?x+=a.margin.left:\"center\"==m?x+=g((u-p)/2):\"end\"==m&&(x+=u-a.margin.right-p);let b=f[t].top;\"start\"==y?b+=a.margin.top:\"center\"==y?b+=g((w-d)/2):\"end\"==y&&(b+=w-a.margin.bottom-d),l.outer=new h.BBox({left:x,top:b,width:p,height:d})}));const u=f.map((()=>({start:new p((()=>0)),end:new p((()=>0))}))),w=_.map((()=>({start:new p((()=>0)),end:new p((()=>0))})));d.foreach((({r0:t,c0:i,r1:s,c1:e},{size_hint:o,outer:n})=>{const{inner:l}=o;null!=l&&(u[t].start.apply(n.top,(t=>a(t,l.top))),u[s].end.apply(f[s].bottom-n.bottom,(t=>a(t,l.bottom))),w[i].start.apply(n.left,(t=>a(t,l.left))),w[e].end.apply(_[e].right-n.right,(t=>a(t,l.right))))})),d.foreach((({r0:t,c0:i,r1:s,c1:e},o)=>{const{size_hint:n,outer:l}=o,r=t=>{const i=this.absolute?l:l.relative(),s=i.left+t.left,e=i.top+t.top,o=i.right-t.right,n=i.bottom-t.bottom;return new h.BBox({left:s,top:e,right:o,bottom:n})};if(null!=n.inner){let h=r(n.inner);if(!1!==n.align){const o=u[t].start.get(l.top),n=u[s].end.get(f[s].bottom-l.bottom),c=w[i].start.get(l.left),a=w[e].end.get(_[e].right-l.right);try{h=r({top:o,bottom:n,left:c,right:a})}catch(t){}}o.inner=h}else o.inner=l})),d.foreach(((t,{layout:i,outer:s,inner:e})=>{i.set_geometry(s,e)}))}}s.Grid=_,_.__name__=\"Grid\";class d extends _{constructor(t){super(),this.items=t.map(((t,i)=>({layout:t,row:0,col:i}))),this.rows=\"fit\"}}s.Row=d,d.__name__=\"Row\";class u extends _{constructor(t){super(),this.items=t.map(((t,i)=>({layout:t,row:i,col:0}))),this.cols=\"fit\"}}s.Column=u,u.__name__=\"Column\"},\n function _(e,t,s,n,i){n();const a=e(142),c=e(141),o=e(43);class r extends a.ContentLayoutable{constructor(e){super(),this.content_size=o.unsized(e,(()=>new c.Sizeable(o.size(e))))}_content_size(){return this.content_size}}s.ContentBox=r,r.__name__=\"ContentBox\";class _ extends a.Layoutable{constructor(e){super(),this.el=e}_measure(e){const t=new c.Sizeable(e).bounded_to(this.sizing.size);return o.sized(this.el,t,(()=>{const e=new c.Sizeable(o.content_size(this.el)),{border:t,padding:s}=o.extents(this.el);return e.grow_by(t).grow_by(s).map(Math.ceil)}))}}s.VariadicBox=_,_.__name__=\"VariadicBox\";class h extends _{constructor(e){super(e),this._cache=new Map}_measure(e){const{width:t,height:s}=e,n=`${t},${s}`;let i=this._cache.get(n);return null==i&&(i=super._measure(e),this._cache.set(n,i)),i}invalidate_cache(){this._cache.clear()}}s.CachedVariadicBox=h,h.__name__=\"CachedVariadicBox\"},\n function _(t,e,i,h,o){h();const s=t(141),r=t(142),n=t(99);class g extends r.Layoutable{constructor(){super(...arguments),this.min_border={left:0,top:0,right:0,bottom:0},this.padding={left:0,top:0,right:0,bottom:0}}*[Symbol.iterator](){yield this.top_panel,yield this.bottom_panel,yield this.left_panel,yield this.right_panel,yield this.center_panel}_measure(t){t=new s.Sizeable({width:\"fixed\"==this.sizing.width_policy||t.width==1/0?this.sizing.width:t.width,height:\"fixed\"==this.sizing.height_policy||t.height==1/0?this.sizing.height:t.height});const e=this.left_panel.measure({width:0,height:t.height}),i=Math.max(e.width,this.min_border.left)+this.padding.left,h=this.right_panel.measure({width:0,height:t.height}),o=Math.max(h.width,this.min_border.right)+this.padding.right,r=this.top_panel.measure({width:t.width,height:0}),n=Math.max(r.height,this.min_border.top)+this.padding.top,g=this.bottom_panel.measure({width:t.width,height:0}),a=Math.max(g.height,this.min_border.bottom)+this.padding.bottom,d=new s.Sizeable(t).shrink_by({left:i,right:o,top:n,bottom:a}),l=this.center_panel.measure(d);return{width:i+l.width+o,height:n+l.height+a,inner:{left:i,right:o,top:n,bottom:a},align:(()=>{const{width_policy:t,height_policy:e}=this.center_panel.sizing;return\"fixed\"!=t&&\"fixed\"!=e})()}}_set_geometry(t,e){super._set_geometry(t,e),this.center_panel.set_geometry(e);const i=this.left_panel.measure({width:0,height:t.height}),h=this.right_panel.measure({width:0,height:t.height}),o=this.top_panel.measure({width:t.width,height:0}),s=this.bottom_panel.measure({width:t.width,height:0}),{left:r,top:g,right:a,bottom:d}=e;this.top_panel.set_geometry(new n.BBox({left:r,right:a,bottom:g,height:o.height})),this.bottom_panel.set_geometry(new n.BBox({left:r,right:a,top:d,height:s.height})),this.left_panel.set_geometry(new n.BBox({top:g,bottom:d,right:r,width:i.width})),this.right_panel.set_geometry(new n.BBox({top:g,bottom:d,left:a,width:h.width}))}}i.BorderLayout=g,g.__name__=\"BorderLayout\"},\n function _(t,e,i,s,n){s();const o=t(1),l=t(139),a=t(10),_=t(143),d=t(20),h=o.__importStar(t(48));class r extends l.TextAnnotationView{_get_size(){const{ctx:t}=this.layer;this.visuals.text.set_value(t);const{width:e}=t.measureText(this.model.text),{height:i}=_.font_metrics(t.font);return{width:e,height:i}}_render(){const{angle:t,angle_units:e}=this.model,i=a.resolve_angle(t,e),s=null!=this.layout?this.layout:this.plot_view.frame,n=this.coordinates.x_scale,o=this.coordinates.y_scale;let l=\"data\"==this.model.x_units?n.compute(this.model.x):s.bbox.xview.compute(this.model.x),_=\"data\"==this.model.y_units?o.compute(this.model.y):s.bbox.yview.compute(this.model.y);l+=this.model.x_offset,_-=this.model.y_offset;(\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this))(this.layer.ctx,this.model.text,l,_,i)}}i.LabelView=r,r.__name__=\"LabelView\";class c extends l.TextAnnotation{constructor(t){super(t)}static init_Label(){this.prototype.default_view=r,this.mixins([h.Text,[\"border_\",h.Line],[\"background_\",h.Fill]]),this.define((({Number:t,String:e,Angle:i})=>({x:[t],x_units:[d.SpatialUnits,\"data\"],y:[t],y_units:[d.SpatialUnits,\"data\"],text:[e,\"\"],angle:[i,0],angle_units:[d.AngleUnits,\"rad\"],x_offset:[t,0],y_offset:[t,0]}))),this.override({background_fill_color:null,border_line_color:null})}}i.Label=c,c.__name__=\"Label\",c.init_Label()},\n function _(t,e,s,i,o){i();const l=t(1),n=t(139),a=t(56),r=t(130),_=l.__importStar(t(48)),c=t(20),h=t(43),d=l.__importStar(t(18)),u=t(143);class x extends n.TextAnnotationView{set_data(t){a.DataAnnotationView.prototype.set_data.call(this,t)}initialize(){if(super.initialize(),this.set_data(this.model.source),\"css\"==this.model.render_mode)for(let t=0,e=this.text.length;t<e;t++){const t=h.div({style:{display:\"none\"}});this.el.appendChild(t)}}connect_signals(){super.connect_signals();const t=()=>{this.set_data(this.model.source),\"css\"==this.model.render_mode?this.render():this.request_render()};this.connect(this.model.change,t),this.connect(this.model.source.streaming,t),this.connect(this.model.source.patching,t),this.connect(this.model.source.change,t)}_calculate_text_dimensions(t,e){const{width:s}=t.measureText(e),{height:i}=u.font_metrics(this.visuals.text.font_value(0));return[s,i]}_map_data(){const t=this.coordinates.x_scale,e=this.coordinates.y_scale,s=null!=this.layout?this.layout:this.plot_view.frame;return[\"data\"==this.model.x_units?t.v_compute(this._x):s.bbox.xview.v_compute(this._x),\"data\"==this.model.y_units?e.v_compute(this._y):s.bbox.yview.v_compute(this._y)]}_render(){const t=\"canvas\"==this.model.render_mode?this._v_canvas_text.bind(this):this._v_css_text.bind(this),{ctx:e}=this.layer,[s,i]=this._map_data();for(let o=0,l=this.text.length;o<l;o++)t(e,o,this.text.get(o),s[o]+this.x_offset.get(o),i[o]-this.y_offset.get(o),this.angle.get(o))}_get_size(){const{ctx:t}=this.layer;this.visuals.text.set_vectorize(t,0);const{width:e}=t.measureText(this.text.get(0)),{height:s}=u.font_metrics(t.font);return{width:e,height:s}}_v_canvas_text(t,e,s,i,o,l){this.visuals.text.set_vectorize(t,e);const n=this._calculate_bounding_box_dimensions(t,s);t.save(),t.beginPath(),t.translate(i,o),t.rotate(l),t.rect(n[0],n[1],n[2],n[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_vectorize(t,e),t.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_vectorize(t,e),t.stroke()),this.visuals.text.doit&&(this.visuals.text.set_vectorize(t,e),t.fillText(s,0,0)),t.restore()}_v_css_text(t,e,s,i,o,l){const n=this.el.children[e];n.textContent=s,this.visuals.text.set_vectorize(t,e);const[a,r]=this._calculate_bounding_box_dimensions(t,s);n.style.position=\"absolute\",n.style.left=`${i+a}px`,n.style.top=`${o+r}px`,n.style.color=t.fillStyle,n.style.font=t.font,n.style.lineHeight=\"normal\",l&&(n.style.transform=`rotate(${l}rad)`),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_vectorize(t,e),n.style.backgroundColor=t.fillStyle),this.visuals.border_line.doit&&(this.visuals.border_line.set_vectorize(t,e),n.style.borderStyle=t.lineDash.length<2?\"solid\":\"dashed\",n.style.borderWidth=`${t.lineWidth}px`,n.style.borderColor=t.strokeStyle),h.display(n)}}s.LabelSetView=x,x.__name__=\"LabelSetView\";class v extends n.TextAnnotation{constructor(t){super(t)}static init_LabelSet(){this.prototype.default_view=x,this.mixins([_.TextVector,[\"border_\",_.LineVector],[\"background_\",_.FillVector]]),this.define((({Ref:t})=>({x:[d.XCoordinateSpec,{field:\"x\"}],y:[d.YCoordinateSpec,{field:\"y\"}],x_units:[c.SpatialUnits,\"data\"],y_units:[c.SpatialUnits,\"data\"],text:[d.StringSpec,{field:\"text\"}],angle:[d.AngleSpec,0],x_offset:[d.NumberSpec,{value:0}],y_offset:[d.NumberSpec,{value:0}],source:[t(r.ColumnDataSource),()=>new r.ColumnDataSource]}))),this.override({background_fill_color:null,border_line_color:null})}}s.LabelSet=v,v.__name__=\"LabelSet\",v.init_LabelSet()},\n function _(t,e,i,s,l){s();const n=t(1),h=t(40),o=t(229),a=t(20),_=n.__importStar(t(48)),r=t(15),d=t(140),c=t(143),g=t(99),m=t(9),b=t(8),f=t(11);class u extends h.AnnotationView{update_layout(){const{panel:t}=this;this.layout=null!=t?new d.SideLayout(t,(()=>this.get_size())):void 0}cursor(t,e){return\"none\"==this.model.click_policy?null:\"pointer\"}get legend_padding(){return null!=this.model.border_line_color?this.model.padding:0}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render())),this.connect(this.model.item_change,(()=>this.request_render()))}compute_legend_bbox(){const t=this.model.get_legend_names(),{glyph_height:e,glyph_width:i}=this.model,{label_height:s,label_width:l}=this.model;this.max_label_height=m.max([c.font_metrics(this.visuals.label_text.font_value()).height,s,e]);const{ctx:n}=this.layer;n.save(),this.visuals.label_text.set_value(n),this.text_widths=new Map;for(const e of t)this.text_widths.set(e,m.max([n.measureText(e).width,l]));this.visuals.title_text.set_value(n),this.title_height=this.model.title?c.font_metrics(this.visuals.title_text.font_value()).height+this.model.title_standoff:0,this.title_width=this.model.title?n.measureText(this.model.title).width:0,n.restore();const h=Math.max(m.max([...this.text_widths.values()]),0),o=this.model.margin,{legend_padding:a}=this,_=this.model.spacing,{label_standoff:r}=this.model;let d,u;if(\"vertical\"==this.model.orientation)d=t.length*this.max_label_height+Math.max(t.length-1,0)*_+2*a+this.title_height,u=m.max([h+i+r+2*a,this.title_width+2*a]);else{let e=2*a+Math.max(t.length-1,0)*_;for(const[,t]of this.text_widths)e+=m.max([t,l])+i+r;u=m.max([this.title_width+2*a,e]),d=this.max_label_height+this.title_height+2*a}const x=null!=this.layout?this.layout:this.plot_view.frame,[p,w]=x.bbox.ranges,{location:v}=this.model;let y,k;if(b.isString(v))switch(v){case\"top_left\":y=p.start+o,k=w.start+o;break;case\"top\":case\"top_center\":y=(p.end+p.start)/2-u/2,k=w.start+o;break;case\"top_right\":y=p.end-o-u,k=w.start+o;break;case\"bottom_right\":y=p.end-o-u,k=w.end-o-d;break;case\"bottom\":case\"bottom_center\":y=(p.end+p.start)/2-u/2,k=w.end-o-d;break;case\"bottom_left\":y=p.start+o,k=w.end-o-d;break;case\"left\":case\"center_left\":y=p.start+o,k=(w.end+w.start)/2-d/2;break;case\"center\":case\"center_center\":y=(p.end+p.start)/2-u/2,k=(w.end+w.start)/2-d/2;break;case\"right\":case\"center_right\":y=p.end-o-u,k=(w.end+w.start)/2-d/2}else if(b.isArray(v)&&2==v.length){const[t,e]=v;y=x.bbox.xview.compute(t),k=x.bbox.yview.compute(e)-d}else f.unreachable();return new g.BBox({left:y,top:k,width:u,height:d})}interactive_bbox(){return this.compute_legend_bbox()}interactive_hit(t,e){return this.interactive_bbox().contains(t,e)}on_hit(t,e){let i;const{glyph_width:s}=this.model,{legend_padding:l}=this,n=this.model.spacing,{label_standoff:h}=this.model;let o=i=l;const a=this.compute_legend_bbox(),_=\"vertical\"==this.model.orientation;for(const r of this.model.items){const d=r.get_labels_list_from_label_prop();for(const c of d){const d=a.x+o,m=a.y+i+this.title_height;let b,f;[b,f]=_?[a.width-2*l,this.max_label_height]:[this.text_widths.get(c)+s+h,this.max_label_height];if(new g.BBox({left:d,top:m,width:b,height:f}).contains(t,e)){switch(this.model.click_policy){case\"hide\":for(const t of r.renderers)t.visible=!t.visible;break;case\"mute\":for(const t of r.renderers)t.muted=!t.muted}return!0}_?i+=this.max_label_height+n:o+=this.text_widths.get(c)+s+h+n}}return!1}_render(){if(0==this.model.items.length)return;for(const t of this.model.items)t.legend=this.model;const{ctx:t}=this.layer,e=this.compute_legend_bbox();t.save(),this._draw_legend_box(t,e),this._draw_legend_items(t,e),this._draw_title(t,e),t.restore()}_draw_legend_box(t,e){t.beginPath(),t.rect(e.x,e.y,e.width,e.height),this.visuals.background_fill.set_value(t),t.fill(),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.stroke())}_draw_legend_items(t,e){const{glyph_width:i,glyph_height:s}=this.model,{legend_padding:l}=this,n=this.model.spacing,{label_standoff:h}=this.model;let o=l,a=l;const _=\"vertical\"==this.model.orientation;for(const r of this.model.items){const d=r.get_labels_list_from_label_prop(),c=r.get_field_from_label_prop();if(0==d.length)continue;const g=(()=>{switch(this.model.click_policy){case\"none\":return!0;case\"hide\":return m.every(r.renderers,(t=>t.visible));case\"mute\":return m.every(r.renderers,(t=>!t.muted))}})();for(const m of d){const d=e.x+o,b=e.y+a+this.title_height,f=d+i,u=b+s;_?a+=this.max_label_height+n:o+=this.text_widths.get(m)+i+h+n,this.visuals.label_text.set_value(t),t.fillText(m,f+h,b+this.max_label_height/2);for(const e of r.renderers){const i=this.plot_view.renderer_view(e);null==i||i.draw_legend(t,d,f,b,u,c,m,r.index)}if(!g){let s,n;[s,n]=_?[e.width-2*l,this.max_label_height]:[this.text_widths.get(m)+i+h,this.max_label_height],t.beginPath(),t.rect(d,b,s,n),this.visuals.inactive_fill.set_value(t),t.fill()}}}}_draw_title(t,e){const{title:i}=this.model;i&&this.visuals.title_text.doit&&(t.save(),t.translate(e.x0,e.y0+this.title_height),this.visuals.title_text.set_value(t),t.fillText(i,this.legend_padding,this.legend_padding-this.model.title_standoff),t.restore())}_get_size(){const{width:t,height:e}=this.compute_legend_bbox();return{width:t+2*this.model.margin,height:e+2*this.model.margin}}}i.LegendView=u,u.__name__=\"LegendView\";class x extends h.Annotation{constructor(t){super(t)}initialize(){super.initialize(),this.item_change=new r.Signal0(this,\"item_change\")}static init_Legend(){this.prototype.default_view=u,this.mixins([[\"label_\",_.Text],[\"title_\",_.Text],[\"inactive_\",_.Fill],[\"border_\",_.Line],[\"background_\",_.Fill]]),this.define((({Number:t,String:e,Array:i,Tuple:s,Or:l,Ref:n,Nullable:h})=>({orientation:[a.Orientation,\"vertical\"],location:[l(a.LegendLocation,s(t,t)),\"top_right\"],title:[h(e),null],title_standoff:[t,5],label_standoff:[t,5],glyph_height:[t,20],glyph_width:[t,20],label_height:[t,20],label_width:[t,20],margin:[t,10],padding:[t,10],spacing:[t,3],items:[i(n(o.LegendItem)),[]],click_policy:[a.LegendClickPolicy,\"none\"]}))),this.override({border_line_color:\"#e5e5e5\",border_line_alpha:.5,border_line_width:1,background_fill_color:\"#ffffff\",background_fill_alpha:.95,inactive_fill_color:\"white\",inactive_fill_alpha:.7,label_text_font_size:\"13px\",label_text_baseline:\"middle\",title_text_font_size:\"13px\",title_text_font_style:\"italic\"})}get_legend_names(){const t=[];for(const e of this.items){const i=e.get_labels_list_from_label_prop();t.push(...i)}return t}}i.Legend=x,x.__name__=\"Legend\",x.init_Legend()},\n function _(e,r,n,l,t){l();const i=e(1),s=e(53),o=e(61),_=e(57),a=e(230),u=i.__importStar(e(18)),d=e(19),c=e(9);class f extends s.Model{constructor(e){super(e)}static init_LegendItem(){this.define((({Int:e,Array:r,Ref:n,Nullable:l})=>({label:[u.NullStringSpec,null],renderers:[r(n(o.GlyphRenderer)),[]],index:[l(e),null]})))}_check_data_sources_on_renderers(){if(null!=this.get_field_from_label_prop()){if(this.renderers.length<1)return!1;const e=this.renderers[0].data_source;if(null!=e)for(const r of this.renderers)if(r.data_source!=e)return!1}return!0}_check_field_label_on_data_source(){const e=this.get_field_from_label_prop();if(null!=e){if(this.renderers.length<1)return!1;const r=this.renderers[0].data_source;if(null!=r&&!c.includes(r.columns(),e))return!1}return!0}initialize(){super.initialize(),this.legend=null,this.connect(this.change,(()=>{var e;return null===(e=this.legend)||void 0===e?void 0:e.item_change.emit()}));this._check_data_sources_on_renderers()||d.logger.error(\"Non matching data sources on legend item renderers\");this._check_field_label_on_data_source()||d.logger.error(`Bad column name on label: ${this.label}`)}get_field_from_label_prop(){const{label:e}=this;return a.isField(e)?e.field:null}get_labels_list_from_label_prop(){if(a.isValue(this.label)){const{value:e}=this.label;return null!=e?[e]:[]}const e=this.get_field_from_label_prop();if(null!=e){let r;if(!this.renderers[0]||null==this.renderers[0].data_source)return[\"No source found\"];if(r=this.renderers[0].data_source,r instanceof _.ColumnarDataSource){const n=r.get_column(e);return null!=n?c.uniq(Array.from(n)):[\"Invalid field\"]}}return[]}}n.LegendItem=f,f.__name__=\"LegendItem\",f.init_LegendItem()},\n function _(i,n,e,t,u){t();const c=i(8);e.isValue=function(i){return c.isPlainObject(i)&&\"value\"in i},e.isField=function(i){return c.isPlainObject(i)&&\"field\"in i},e.isExpr=function(i){return c.isPlainObject(i)&&\"expr\"in i}},\n function _(t,i,s,n,e){n();const o=t(1),l=t(40),a=o.__importStar(t(48)),c=t(20);class h extends l.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render()))}_render(){const{xs:t,ys:i}=this.model;if(t.length!=i.length)return;const s=t.length;if(s<3)return;const{frame:n}=this.plot_view,{ctx:e}=this.layer,o=this.coordinates.x_scale,l=this.coordinates.y_scale,{screen:a}=this.model;function c(t,i,s,n){return a?t:\"data\"==i?s.v_compute(t):n.v_compute(t)}const h=c(t,this.model.xs_units,o,n.bbox.xview),r=c(i,this.model.ys_units,l,n.bbox.yview);e.beginPath();for(let t=0;t<s;t++)e.lineTo(h[t],r[t]);e.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(e),e.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_value(e),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_value(e),e.stroke())}}s.PolyAnnotationView=h,h.__name__=\"PolyAnnotationView\";class r extends l.Annotation{constructor(t){super(t)}static init_PolyAnnotation(){this.prototype.default_view=h,this.mixins([a.Line,a.Fill,a.Hatch]),this.define((({Number:t,Array:i})=>({xs:[i(t),[]],xs_units:[c.SpatialUnits,\"data\"],ys:[i(t),[]],ys_units:[c.SpatialUnits,\"data\"]}))),this.internal((({Boolean:t})=>({screen:[t,!1]}))),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})}update({xs:t,ys:i}){this.setv({xs:t,ys:i,screen:!0},{check_eq:!1})}}s.PolyAnnotation=r,r.__name__=\"PolyAnnotation\",r.init_PolyAnnotation()},\n function _(e,t,i,n,o){n();const s=e(1),l=e(40),r=s.__importStar(e(48));class c extends l.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render()))}_render(){const{gradient:e,y_intercept:t}=this.model;if(null==e||null==t)return;const{frame:i}=this.plot_view,n=this.coordinates.x_scale,o=this.coordinates.y_scale;let s,l,r,c;if(0==e)s=o.compute(t),l=s,r=i.bbox.left,c=r+i.bbox.width;else{s=i.bbox.top,l=s+i.bbox.height;const a=(o.invert(s)-t)/e,_=(o.invert(l)-t)/e;r=n.compute(a),c=n.compute(_)}const{ctx:a}=this.layer;a.save(),a.beginPath(),this.visuals.line.set_value(a),a.moveTo(r,s),a.lineTo(c,l),a.stroke(),a.restore()}}i.SlopeView=c,c.__name__=\"SlopeView\";class a extends l.Annotation{constructor(e){super(e)}static init_Slope(){this.prototype.default_view=c,this.mixins(r.Line),this.define((({Number:e,Nullable:t})=>({gradient:[t(e),null],y_intercept:[t(e),null]}))),this.override({line_color:\"black\"})}}i.Slope=a,a.__name__=\"Slope\",a.init_Slope()},\n function _(e,i,t,n,o){n();const s=e(1),a=e(40),l=s.__importStar(e(48)),h=e(20);class c extends a.AnnotationView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.plot_view.request_paint(this)))}_render(){const{location:e}=this.model;if(null==e)return;const{frame:i}=this.plot_view,t=this.coordinates.x_scale,n=this.coordinates.y_scale,o=(i,t)=>\"data\"==this.model.location_units?i.compute(e):this.model.for_hover?e:t.compute(e);let s,a,l,h;\"width\"==this.model.dimension?(l=o(n,i.bbox.yview),a=i.bbox.left,h=i.bbox.width,s=this.model.line_width):(l=i.bbox.top,a=o(t,i.bbox.xview),h=this.model.line_width,s=i.bbox.height);const{ctx:c}=this.layer;c.save(),c.beginPath(),this.visuals.line.set_value(c),c.moveTo(a,l),\"width\"==this.model.dimension?c.lineTo(a+h,l):c.lineTo(a,l+s),c.stroke(),c.restore()}}t.SpanView=c,c.__name__=\"SpanView\";class d extends a.Annotation{constructor(e){super(e)}static init_Span(){this.prototype.default_view=c,this.mixins(l.Line),this.define((({Number:e,Nullable:i})=>({render_mode:[h.RenderMode,\"canvas\"],location:[i(e),null],location_units:[h.SpatialUnits,\"data\"],dimension:[h.Dimension,\"width\"]}))),this.internal((({Boolean:e})=>({for_hover:[e,!1]}))),this.override({line_color:\"black\"})}}t.Span=d,d.__name__=\"Span\",d.init_Span()},\n function _(i,e,t,o,l){o();const s=i(40),a=i(235),n=i(122),r=i(43),_=i(140),h=i(99);class b extends s.AnnotationView{constructor(){super(...arguments),this._invalidate_toolbar=!0,this._previous_bbox=new h.BBox}update_layout(){this.layout=new _.SideLayout(this.panel,(()=>this.get_size()),!0)}initialize(){super.initialize(),this.el=r.div(),this.plot_view.canvas_view.add_event(this.el)}async lazy_initialize(){await super.lazy_initialize(),this._toolbar_view=await n.build_view(this.model.toolbar,{parent:this}),this.plot_view.visibility_callbacks.push((i=>this._toolbar_view.set_visibility(i)))}remove(){this._toolbar_view.remove(),r.remove(this.el),super.remove()}render(){this.model.visible||r.undisplay(this.el),super.render()}_render(){const{bbox:i}=this.layout;this._previous_bbox.equals(i)||(r.position(this.el,i),this._previous_bbox=i),this._invalidate_toolbar&&(this.el.style.position=\"absolute\",this.el.style.overflow=\"hidden\",this._toolbar_view.render(),r.empty(this.el),this.el.appendChild(this._toolbar_view.el),this._invalidate_toolbar=!1),r.display(this.el)}_get_size(){const{tools:i,logo:e}=this.model.toolbar;return{width:30*i.length+(null!=e?25:0),height:30}}}t.ToolbarPanelView=b,b.__name__=\"ToolbarPanelView\";class d extends s.Annotation{constructor(i){super(i)}static init_ToolbarPanel(){this.prototype.default_view=b,this.define((({Ref:i})=>({toolbar:[i(a.Toolbar)]})))}}t.ToolbarPanel=d,d.__name__=\"ToolbarPanel\",d.init_ToolbarPanel()},\n function _(t,s,e,i,o){i();const c=t(8),n=t(9),a=t(13),l=t(236),r=t(237),_=t(247),p=t(248);e.Drag=l.Tool,e.Inspection=l.Tool,e.Scroll=l.Tool,e.Tap=l.Tool;const u=t=>{switch(t){case\"tap\":return\"active_tap\";case\"pan\":return\"active_drag\";case\"pinch\":case\"scroll\":return\"active_scroll\";case\"multi\":return\"active_multi\"}return null},h=t=>\"tap\"==t||\"pan\"==t;class v extends p.ToolbarBase{constructor(t){super(t)}static init_Toolbar(){this.prototype.default_view=p.ToolbarBaseView,this.define((({Or:t,Ref:s,Auto:i,Null:o,Nullable:c})=>({active_drag:[t(s(e.Drag),i,o),\"auto\"],active_inspect:[t(s(e.Inspection),i,o),\"auto\"],active_scroll:[t(s(e.Scroll),i,o),\"auto\"],active_tap:[t(s(e.Tap),i,o),\"auto\"],active_multi:[c(s(r.GestureTool)),null]})))}connect_signals(){super.connect_signals();const{tools:t,active_drag:s,active_inspect:e,active_scroll:i,active_tap:o,active_multi:c}=this.properties;this.on_change([t,s,e,i,o,c],(()=>this._init_tools()))}_init_tools(){if(super._init_tools(),\"auto\"==this.active_inspect);else if(this.active_inspect instanceof _.InspectTool){let t=!1;for(const s of this.inspectors)s!=this.active_inspect?s.active=!1:t=!0;t||(this.active_inspect=null)}else if(c.isArray(this.active_inspect)){const t=n.intersection(this.active_inspect,this.inspectors);t.length!=this.active_inspect.length&&(this.active_inspect=t);for(const t of this.inspectors)n.includes(this.active_inspect,t)||(t.active=!1)}else if(null==this.active_inspect)for(const t of this.inspectors)t.active=!1;const t=t=>{t.active?this._active_change(t):t.active=!0};for(const t of a.values(this.gestures)){t.tools=n.sort_by(t.tools,(t=>t.default_order));for(const s of t.tools)this.connect(s.properties.active.change,(()=>this._active_change(s)))}for(const[s,e]of a.entries(this.gestures)){const i=u(s);if(i){const o=this[i];\"auto\"==o?0!=e.tools.length&&h(s)&&t(e.tools[0]):null!=o&&(n.includes(this.tools,o)?t(o):this[i]=null)}}}}e.Toolbar=v,v.__name__=\"Toolbar\",v.init_Toolbar()},\n function _(t,e,n,i,o){i();const s=t(42),a=t(9),r=t(53);class l extends s.View{get plot_view(){return this.parent}get plot_model(){return this.parent.model}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,(()=>{this.model.active?this.activate():this.deactivate()}))}activate(){}deactivate(){}}n.ToolView=l,l.__name__=\"ToolView\";class _ extends r.Model{constructor(t){super(t)}static init_Tool(){this.prototype._known_aliases=new Map,this.define((({String:t,Nullable:e})=>({description:[e(t),null]}))),this.internal((({Boolean:t})=>({active:[t,!1]})))}get synthetic_renderers(){return[]}_get_dim_limits([t,e],[n,i],o,s){const r=o.bbox.h_range;let l;\"width\"==s||\"both\"==s?(l=[a.min([t,n]),a.max([t,n])],l=[a.max([l[0],r.start]),a.min([l[1],r.end])]):l=[r.start,r.end];const _=o.bbox.v_range;let c;return\"height\"==s||\"both\"==s?(c=[a.min([e,i]),a.max([e,i])],c=[a.max([c[0],_.start]),a.min([c[1],_.end])]):c=[_.start,_.end],[l,c]}static register_alias(t,e){this.prototype._known_aliases.set(t,e)}static from_string(t){const e=this.prototype._known_aliases.get(t);if(null!=e)return e();{const e=[...this.prototype._known_aliases.keys()];throw new Error(`unexpected tool name '${t}', possible tools are ${e.join(\", \")}`)}}}n.Tool=_,_.__name__=\"Tool\",_.init_Tool()},\n function _(e,o,t,s,n){s();const u=e(238),_=e(246);class l extends u.ButtonToolView{}t.GestureToolView=l,l.__name__=\"GestureToolView\";class i extends u.ButtonTool{constructor(e){super(e),this.button_view=_.OnOffButtonView}}t.GestureTool=i,i.__name__=\"GestureTool\"},\n function _(t,e,o,i,s){i();const n=t(1),l=n.__importDefault(t(239)),r=t(240),a=t(236),u=t(43),h=t(34),_=t(8),c=t(9),d=n.__importStar(t(241)),m=d,p=n.__importDefault(t(242)),g=n.__importDefault(t(243)),v=t(244);class f extends r.DOMView{initialize(){super.initialize();const t=this.model.menu;if(null!=t){const e=this.parent.model.toolbar_location,o=\"left\"==e||\"above\"==e,i=this.parent.model.horizontal?\"vertical\":\"horizontal\";this._menu=new v.ContextMenu(o?c.reversed(t):t,{orientation:i,prevent_hide:t=>t.target==this.el})}this._hammer=new l.default(this.el,{touchAction:\"auto\",inputClass:l.default.TouchMouseInput}),this.connect(this.model.change,(()=>this.render())),this._hammer.on(\"tap\",(t=>{var e;(null===(e=this._menu)||void 0===e?void 0:e.is_open)?this._menu.hide():t.target==this.el&&this._clicked()})),this._hammer.on(\"press\",(()=>this._pressed()))}remove(){var t;this._hammer.destroy(),null===(t=this._menu)||void 0===t||t.remove(),super.remove()}styles(){return[...super.styles(),d.default,p.default,g.default]}css_classes(){return super.css_classes().concat(m.toolbar_button)}render(){u.empty(this.el);const t=this.model.computed_icon;_.isString(t)&&(h.startsWith(t,\"data:image\")?this.el.style.backgroundImage=\"url('\"+t+\"')\":this.el.classList.add(t)),this.el.title=this.model.tooltip,null!=this._menu&&this.root.el.appendChild(this._menu.el)}_pressed(){var t;const{left:e,top:o,right:i,bottom:s}=this.el.getBoundingClientRect(),n=(()=>{switch(this.parent.model.toolbar_location){case\"right\":return{right:e,top:o};case\"left\":return{left:i,top:o};case\"above\":return{left:e,top:s};case\"below\":return{left:e,bottom:o}}})();null===(t=this._menu)||void 0===t||t.toggle(n)}}o.ButtonToolButtonView=f,f.__name__=\"ButtonToolButtonView\";class b extends a.ToolView{}o.ButtonToolView=b,b.__name__=\"ButtonToolView\";class B extends a.Tool{constructor(t){super(t)}static init_ButtonTool(){this.internal((({Boolean:t})=>({disabled:[t,!1]})))}_get_dim_tooltip(t){const{description:e,tool_name:o}=this;return null!=e?e:\"both\"==t?o:`${o} (${\"width\"==t?\"x\":\"y\"}-axis)`}get tooltip(){var t;return null!==(t=this.description)&&void 0!==t?t:this.tool_name}get computed_icon(){return this.icon}get menu(){return null}}o.ButtonTool=B,B.__name__=\"ButtonTool\",B.init_ButtonTool()},\n function _(t,e,i,n,r){\n /*! Hammer.JS - v2.0.7 - 2016-04-22\n * http://hammerjs.github.io/\n *\n * Copyright (c) 2016 Jorik Tangelder;\n * Licensed under the MIT license */\n !function(t,i,n,r){\"use strict\";var s,o=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],a=i.createElement(\"div\"),h=Math.round,u=Math.abs,c=Date.now;function l(t,e,i){return setTimeout(T(t,i),e)}function p(t,e,i){return!!Array.isArray(t)&&(f(t,i[e],i),!0)}function f(t,e,i){var n;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==r)for(n=0;n<t.length;)e.call(i,t[n],n,t),n++;else for(n in t)t.hasOwnProperty(n)&&e.call(i,t[n],n,t)}function v(e,i,n){var r=\"DEPRECATED METHOD: \"+i+\"\\n\"+n+\" AT \\n\";return function(){var i=new Error(\"get-stack-trace\"),n=i&&i.stack?i.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",s=t.console&&(t.console.warn||t.console.log);return s&&s.call(t.console,r,n),e.apply(this,arguments)}}s=\"function\"!=typeof Object.assign?function(t){if(t===r||null===t)throw new TypeError(\"Cannot convert undefined or null to object\");for(var e=Object(t),i=1;i<arguments.length;i++){var n=arguments[i];if(n!==r&&null!==n)for(var s in n)n.hasOwnProperty(s)&&(e[s]=n[s])}return e}:Object.assign;var d=v((function(t,e,i){for(var n=Object.keys(e),s=0;s<n.length;)(!i||i&&t[n[s]]===r)&&(t[n[s]]=e[n[s]]),s++;return t}),\"extend\",\"Use `assign`.\"),m=v((function(t,e){return d(t,e,!0)}),\"merge\",\"Use `assign`.\");function g(t,e,i){var n,r=e.prototype;(n=t.prototype=Object.create(r)).constructor=t,n._super=r,i&&s(n,i)}function T(t,e){return function(){return t.apply(e,arguments)}}function y(t,e){return\"function\"==typeof t?t.apply(e&&e[0]||r,e):t}function E(t,e){return t===r?e:t}function I(t,e,i){f(S(e),(function(e){t.addEventListener(e,i,!1)}))}function A(t,e,i){f(S(e),(function(e){t.removeEventListener(e,i,!1)}))}function _(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function C(t,e){return t.indexOf(e)>-1}function S(t){return t.trim().split(/\\s+/g)}function b(t,e,i){if(t.indexOf&&!i)return t.indexOf(e);for(var n=0;n<t.length;){if(i&&t[n][i]==e||!i&&t[n]===e)return n;n++}return-1}function P(t){return Array.prototype.slice.call(t,0)}function D(t,e,i){for(var n=[],r=[],s=0;s<t.length;){var o=e?t[s][e]:t[s];b(r,o)<0&&n.push(t[s]),r[s]=o,s++}return i&&(n=e?n.sort((function(t,i){return t[e]>i[e]})):n.sort()),n}function x(t,e){for(var i,n,s=e[0].toUpperCase()+e.slice(1),a=0;a<o.length;){if((n=(i=o[a])?i+s:e)in t)return n;a++}return r}var w=1;function O(e){var i=e.ownerDocument||e;return i.defaultView||i.parentWindow||t}var R=\"ontouchstart\"in t,M=x(t,\"PointerEvent\")!==r,z=R&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),N=\"touch\",X=\"mouse\",Y=24,F=[\"x\",\"y\"],W=[\"clientX\",\"clientY\"];function q(t,e){var i=this;this.manager=t,this.callback=e,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(e){y(t.options.enable,[t])&&i.handler(e)},this.init()}function k(t,e,i){var n=i.pointers.length,s=i.changedPointers.length,o=1&e&&n-s==0,a=12&e&&n-s==0;i.isFirst=!!o,i.isFinal=!!a,o&&(t.session={}),i.eventType=e,function(t,e){var i=t.session,n=e.pointers,s=n.length;i.firstInput||(i.firstInput=H(e));s>1&&!i.firstMultiple?i.firstMultiple=H(e):1===s&&(i.firstMultiple=!1);var o=i.firstInput,a=i.firstMultiple,h=a?a.center:o.center,l=e.center=L(n);e.timeStamp=c(),e.deltaTime=e.timeStamp-o.timeStamp,e.angle=G(h,l),e.distance=j(h,l),function(t,e){var i=e.center,n=t.offsetDelta||{},r=t.prevDelta||{},s=t.prevInput||{};1!==e.eventType&&4!==s.eventType||(r=t.prevDelta={x:s.deltaX||0,y:s.deltaY||0},n=t.offsetDelta={x:i.x,y:i.y});e.deltaX=r.x+(i.x-n.x),e.deltaY=r.y+(i.y-n.y)}(i,e),e.offsetDirection=V(e.deltaX,e.deltaY);var p=U(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=p.x,e.overallVelocityY=p.y,e.overallVelocity=u(p.x)>u(p.y)?p.x:p.y,e.scale=a?(f=a.pointers,v=n,j(v[0],v[1],W)/j(f[0],f[1],W)):1,e.rotation=a?function(t,e){return G(e[1],e[0],W)+G(t[1],t[0],W)}(a.pointers,n):0,e.maxPointers=i.prevInput?e.pointers.length>i.prevInput.maxPointers?e.pointers.length:i.prevInput.maxPointers:e.pointers.length,function(t,e){var i,n,s,o,a=t.lastInterval||e,h=e.timeStamp-a.timeStamp;if(8!=e.eventType&&(h>25||a.velocity===r)){var c=e.deltaX-a.deltaX,l=e.deltaY-a.deltaY,p=U(h,c,l);n=p.x,s=p.y,i=u(p.x)>u(p.y)?p.x:p.y,o=V(c,l),t.lastInterval=e}else i=a.velocity,n=a.velocityX,s=a.velocityY,o=a.direction;e.velocity=i,e.velocityX=n,e.velocityY=s,e.direction=o}(i,e);var f,v;var d=t.element;_(e.srcEvent.target,d)&&(d=e.srcEvent.target);e.target=d}(t,i),t.emit(\"hammer.input\",i),t.recognize(i),t.session.prevInput=i}function H(t){for(var e=[],i=0;i<t.pointers.length;)e[i]={clientX:h(t.pointers[i].clientX),clientY:h(t.pointers[i].clientY)},i++;return{timeStamp:c(),pointers:e,center:L(e),deltaX:t.deltaX,deltaY:t.deltaY}}function L(t){var e=t.length;if(1===e)return{x:h(t[0].clientX),y:h(t[0].clientY)};for(var i=0,n=0,r=0;r<e;)i+=t[r].clientX,n+=t[r].clientY,r++;return{x:h(i/e),y:h(n/e)}}function U(t,e,i){return{x:e/t||0,y:i/t||0}}function V(t,e){return t===e?1:u(t)>=u(e)?t<0?2:4:e<0?8:16}function j(t,e,i){i||(i=F);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return Math.sqrt(n*n+r*r)}function G(t,e,i){i||(i=F);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return 180*Math.atan2(r,n)/Math.PI}q.prototype={handler:function(){},init:function(){this.evEl&&I(this.element,this.evEl,this.domHandler),this.evTarget&&I(this.target,this.evTarget,this.domHandler),this.evWin&&I(O(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&A(this.element,this.evEl,this.domHandler),this.evTarget&&A(this.target,this.evTarget,this.domHandler),this.evWin&&A(O(this.element),this.evWin,this.domHandler)}};var Z={mousedown:1,mousemove:2,mouseup:4},B=\"mousedown\",$=\"mousemove mouseup\";function J(){this.evEl=B,this.evWin=$,this.pressed=!1,q.apply(this,arguments)}g(J,q,{handler:function(t){var e=Z[t.type];1&e&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=4),this.pressed&&(4&e&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:X,srcEvent:t}))}});var K={pointerdown:1,pointermove:2,pointerup:4,pointercancel:8,pointerout:8},Q={2:N,3:\"pen\",4:X,5:\"kinect\"},tt=\"pointerdown\",et=\"pointermove pointerup pointercancel\";function it(){this.evEl=tt,this.evWin=et,q.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}t.MSPointerEvent&&!t.PointerEvent&&(tt=\"MSPointerDown\",et=\"MSPointerMove MSPointerUp MSPointerCancel\"),g(it,q,{handler:function(t){var e=this.store,i=!1,n=t.type.toLowerCase().replace(\"ms\",\"\"),r=K[n],s=Q[t.pointerType]||t.pointerType,o=s==N,a=b(e,t.pointerId,\"pointerId\");1&r&&(0===t.button||o)?a<0&&(e.push(t),a=e.length-1):12&r&&(i=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:s,srcEvent:t}),i&&e.splice(a,1))}});var nt={touchstart:1,touchmove:2,touchend:4,touchcancel:8},rt=\"touchstart\",st=\"touchstart touchmove touchend touchcancel\";function ot(){this.evTarget=rt,this.evWin=st,this.started=!1,q.apply(this,arguments)}function at(t,e){var i=P(t.touches),n=P(t.changedTouches);return 12&e&&(i=D(i.concat(n),\"identifier\",!0)),[i,n]}g(ot,q,{handler:function(t){var e=nt[t.type];if(1===e&&(this.started=!0),this.started){var i=at.call(this,t,e);12&e&&i[0].length-i[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:N,srcEvent:t})}}});var ht={touchstart:1,touchmove:2,touchend:4,touchcancel:8},ut=\"touchstart touchmove touchend touchcancel\";function ct(){this.evTarget=ut,this.targetIds={},q.apply(this,arguments)}function lt(t,e){var i=P(t.touches),n=this.targetIds;if(3&e&&1===i.length)return n[i[0].identifier]=!0,[i,i];var r,s,o=P(t.changedTouches),a=[],h=this.target;if(s=i.filter((function(t){return _(t.target,h)})),1===e)for(r=0;r<s.length;)n[s[r].identifier]=!0,r++;for(r=0;r<o.length;)n[o[r].identifier]&&a.push(o[r]),12&e&&delete n[o[r].identifier],r++;return a.length?[D(s.concat(a),\"identifier\",!0),a]:void 0}g(ct,q,{handler:function(t){var e=ht[t.type],i=lt.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:N,srcEvent:t})}});function pt(){q.apply(this,arguments);var t=T(this.handler,this);this.touch=new ct(this.manager,t),this.mouse=new J(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function ft(t,e){1&t?(this.primaryTouch=e.changedPointers[0].identifier,vt.call(this,e)):12&t&&vt.call(this,e)}function vt(t){var e=t.changedPointers[0];if(e.identifier===this.primaryTouch){var i={x:e.clientX,y:e.clientY};this.lastTouches.push(i);var n=this.lastTouches;setTimeout((function(){var t=n.indexOf(i);t>-1&&n.splice(t,1)}),2500)}}function dt(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,n=0;n<this.lastTouches.length;n++){var r=this.lastTouches[n],s=Math.abs(e-r.x),o=Math.abs(i-r.y);if(s<=25&&o<=25)return!0}return!1}g(pt,q,{handler:function(t,e,i){var n=i.pointerType==N,r=i.pointerType==X;if(!(r&&i.sourceCapabilities&&i.sourceCapabilities.firesTouchEvents)){if(n)ft.call(this,e,i);else if(r&&dt.call(this,i))return;this.callback(t,e,i)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var mt=x(a.style,\"touchAction\"),gt=mt!==r,Tt=\"compute\",yt=\"auto\",Et=\"manipulation\",It=\"none\",At=\"pan-x\",_t=\"pan-y\",Ct=function(){if(!gt)return!1;var e={},i=t.CSS&&t.CSS.supports;return[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach((function(n){e[n]=!i||t.CSS.supports(\"touch-action\",n)})),e}();function St(t,e){this.manager=t,this.set(e)}St.prototype={set:function(t){t==Tt&&(t=this.compute()),gt&&this.manager.element.style&&Ct[t]&&(this.manager.element.style[mt]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return f(this.manager.recognizers,(function(e){y(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))})),function(t){if(C(t,It))return It;var e=C(t,At),i=C(t,_t);if(e&&i)return It;if(e||i)return e?At:_t;if(C(t,Et))return Et;return yt}(t.join(\" \"))},preventDefaults:function(t){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var n=this.actions,r=C(n,It)&&!Ct.none,s=C(n,_t)&&!Ct[\"pan-y\"],o=C(n,At)&&!Ct[\"pan-x\"];if(r){var a=1===t.pointers.length,h=t.distance<2,u=t.deltaTime<250;if(a&&h&&u)return}if(!o||!s)return r||s&&6&i||o&&i&Y?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var bt=32;function Pt(t){this.options=s({},this.defaults,t||{}),this.id=w++,this.manager=null,this.options.enable=E(this.options.enable,!0),this.state=1,this.simultaneous={},this.requireFail=[]}function Dt(t){return 16&t?\"cancel\":8&t?\"end\":4&t?\"move\":2&t?\"start\":\"\"}function xt(t){return 16==t?\"down\":8==t?\"up\":2==t?\"left\":4==t?\"right\":\"\"}function wt(t,e){var i=e.manager;return i?i.get(t):t}function Ot(){Pt.apply(this,arguments)}function Rt(){Ot.apply(this,arguments),this.pX=null,this.pY=null}function Mt(){Ot.apply(this,arguments)}function zt(){Pt.apply(this,arguments),this._timer=null,this._input=null}function Nt(){Ot.apply(this,arguments)}function Xt(){Ot.apply(this,arguments)}function Yt(){Pt.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Ft(t,e){return(e=e||{}).recognizers=E(e.recognizers,Ft.defaults.preset),new Wt(t,e)}Pt.prototype={defaults:{},set:function(t){return s(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(p(t,\"recognizeWith\",this))return this;var e=this.simultaneous;return e[(t=wt(t,this)).id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return p(t,\"dropRecognizeWith\",this)||(t=wt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(p(t,\"requireFailure\",this))return this;var e=this.requireFail;return-1===b(e,t=wt(t,this))&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(p(t,\"dropRequireFailure\",this))return this;t=wt(t,this);var e=b(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,i=this.state;function n(i){e.manager.emit(i,t)}i<8&&n(e.options.event+Dt(i)),n(e.options.event),t.additionalEvent&&n(t.additionalEvent),i>=8&&n(e.options.event+Dt(i))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=bt},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(33&this.requireFail[t].state))return!1;t++}return!0},recognize:function(t){var e=s({},t);if(!y(this.options.enable,[this,e]))return this.reset(),void(this.state=bt);56&this.state&&(this.state=1),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},g(Ot,Pt,{defaults:{pointers:1},attrTest:function(t){var e=this.options.pointers;return 0===e||t.pointers.length===e},process:function(t){var e=this.state,i=t.eventType,n=6&e,r=this.attrTest(t);return n&&(8&i||!r)?16|e:n||r?4&i?8|e:2&e?4|e:2:bt}}),g(Rt,Ot,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:30},getTouchAction:function(){var t=this.options.direction,e=[];return 6&t&&e.push(_t),t&Y&&e.push(At),e},directionTest:function(t){var e=this.options,i=!0,n=t.distance,r=t.direction,s=t.deltaX,o=t.deltaY;return r&e.direction||(6&e.direction?(r=0===s?1:s<0?2:4,i=s!=this.pX,n=Math.abs(t.deltaX)):(r=0===o?1:o<0?8:16,i=o!=this.pY,n=Math.abs(t.deltaY))),t.direction=r,i&&n>e.threshold&&r&e.direction},attrTest:function(t){return Ot.prototype.attrTest.call(this,t)&&(2&this.state||!(2&this.state)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=xt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),g(Mt,Ot,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[It]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||2&this.state)},emit:function(t){if(1!==t.scale){var e=t.scale<1?\"in\":\"out\";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),g(zt,Pt,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[yt]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,n=t.distance<e.threshold,r=t.deltaTime>e.time;if(this._input=t,!n||!i||12&t.eventType&&!r)this.reset();else if(1&t.eventType)this.reset(),this._timer=l((function(){this.state=8,this.tryEmit()}),e.time,this);else if(4&t.eventType)return 8;return bt},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&4&t.eventType?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=c(),this.manager.emit(this.options.event,this._input)))}}),g(Nt,Ot,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[It]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),g(Xt,Ot,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:30,pointers:1},getTouchAction:function(){return Rt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return 30&i?e=t.overallVelocity:6&i?e=t.overallVelocityX:i&Y&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&u(e)>this.options.velocity&&4&t.eventType},emit:function(t){var e=xt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),g(Yt,Pt,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[Et]},process:function(t){var e=this.options,i=t.pointers.length===e.pointers,n=t.distance<e.threshold,r=t.deltaTime<e.time;if(this.reset(),1&t.eventType&&0===this.count)return this.failTimeout();if(n&&r&&i){if(4!=t.eventType)return this.failTimeout();var s=!this.pTime||t.timeStamp-this.pTime<e.interval,o=!this.pCenter||j(this.pCenter,t.center)<e.posThreshold;if(this.pTime=t.timeStamp,this.pCenter=t.center,o&&s?this.count+=1:this.count=1,this._input=t,0===this.count%e.taps)return this.hasRequireFailures()?(this._timer=l((function(){this.state=8,this.tryEmit()}),e.interval,this),2):8}return bt},failTimeout:function(){return this._timer=l((function(){this.state=bt}),this.options.interval,this),bt},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Ft.VERSION=\"2.0.7\",Ft.defaults={domEvents:!1,touchAction:Tt,enable:!0,inputTarget:null,inputClass:null,preset:[[Nt,{enable:!1}],[Mt,{enable:!1},[\"rotate\"]],[Xt,{direction:6}],[Rt,{direction:6},[\"swipe\"]],[Yt],[Yt,{event:\"doubletap\",taps:2},[\"tap\"]],[zt]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}};function Wt(t,e){var i;this.options=s({},Ft.defaults,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=new((i=this).options.inputClass||(M?it:z?ct:R?pt:J))(i,k),this.touchAction=new St(this,this.options.touchAction),qt(this,!0),f(this.options.recognizers,(function(t){var e=this.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])}),this)}function qt(t,e){var i,n=t.element;n.style&&(f(t.options.cssProps,(function(r,s){i=x(n.style,s),e?(t.oldCssProps[i]=n.style[i],n.style[i]=r):n.style[i]=t.oldCssProps[i]||\"\"})),e||(t.oldCssProps={}))}Wt.prototype={set:function(t){return s(this.options,t),t.touchAction&&this.touchAction.update(),t.inputTarget&&(this.input.destroy(),this.input.target=t.inputTarget,this.input.init()),this},stop:function(t){this.session.stopped=t?2:1},recognize:function(t){var e=this.session;if(!e.stopped){var i;this.touchAction.preventDefaults(t);var n=this.recognizers,r=e.curRecognizer;(!r||r&&8&r.state)&&(r=e.curRecognizer=null);for(var s=0;s<n.length;)i=n[s],2===e.stopped||r&&i!=r&&!i.canRecognizeWith(r)?i.reset():i.recognize(t),!r&&14&i.state&&(r=e.curRecognizer=i),s++}},get:function(t){if(t instanceof Pt)return t;for(var e=this.recognizers,i=0;i<e.length;i++)if(e[i].options.event==t)return e[i];return null},add:function(t){if(p(t,\"add\",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),t.manager=this,this.touchAction.update(),t},remove:function(t){if(p(t,\"remove\",this))return this;if(t=this.get(t)){var e=this.recognizers,i=b(e,t);-1!==i&&(e.splice(i,1),this.touchAction.update())}return this},on:function(t,e){if(t!==r&&e!==r){var i=this.handlers;return f(S(t),(function(t){i[t]=i[t]||[],i[t].push(e)})),this}},off:function(t,e){if(t!==r){var i=this.handlers;return f(S(t),(function(t){e?i[t]&&i[t].splice(b(i[t],e),1):delete i[t]})),this}},emit:function(t,e){this.options.domEvents&&function(t,e){var n=i.createEvent(\"Event\");n.initEvent(t,!0,!0),n.gesture=e,e.target.dispatchEvent(n)}(t,e);var n=this.handlers[t]&&this.handlers[t].slice();if(n&&n.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var r=0;r<n.length;)n[r](e),r++}},destroy:function(){this.element&&qt(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},s(Ft,{INPUT_START:1,INPUT_MOVE:2,INPUT_END:4,INPUT_CANCEL:8,STATE_POSSIBLE:1,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:bt,DIRECTION_NONE:1,DIRECTION_LEFT:2,DIRECTION_RIGHT:4,DIRECTION_UP:8,DIRECTION_DOWN:16,DIRECTION_HORIZONTAL:6,DIRECTION_VERTICAL:Y,DIRECTION_ALL:30,Manager:Wt,Input:q,TouchAction:St,TouchInput:ct,MouseInput:J,PointerEventInput:it,TouchMouseInput:pt,SingleTouchInput:ot,Recognizer:Pt,AttrRecognizer:Ot,Tap:Yt,Pan:Rt,Swipe:Xt,Pinch:Mt,Rotate:Nt,Press:zt,on:I,off:A,each:f,merge:m,extend:d,assign:s,inherit:g,bindFn:T,prefixed:x}),(void 0!==t?t:\"undefined\"!=typeof self?self:{}).Hammer=Ft,\"function\"==typeof define&&define.amd?define((function(){return Ft})):void 0!==e&&e.exports?e.exports=Ft:t.Hammer=Ft}(window,document)},\n function _(e,s,t,i,r){i();const n=e(42),a=e(43);class l extends n.View{initialize(){super.initialize(),this.el=this._createElement()}remove(){a.remove(this.el),super.remove()}css_classes(){return[]}render(){}renderTo(e){e.appendChild(this.el),this.render()}_createElement(){return a.createElement(this.tagName,{class:this.css_classes()})}}t.DOMView=l,l.__name__=\"DOMView\",l.prototype.tagName=\"div\"},\n function _(o,b,t,r,e){r(),t.root=\"bk-root\",t.toolbar_hidden=\"bk-toolbar-hidden\",t.toolbar=\"bk-toolbar\",t.button_bar=\"bk-button-bar\",t.logo=\"bk-logo\",t.above=\"bk-above\",t.below=\"bk-below\",t.left=\"bk-left\",t.right=\"bk-right\",t.toolbar_button=\"bk-toolbar-button\",t.active=\"bk-active\",t.default='.bk-root .bk-toolbar-hidden{visibility:hidden;opacity:0;transition:visibility 0.3s linear, opacity 0.3s linear;}.bk-root .bk-toolbar,.bk-root .bk-button-bar{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;}.bk-root .bk-toolbar .bk-logo{flex-shrink:0;-webkit-flex-shrink:0;}.bk-root .bk-toolbar.bk-above,.bk-root .bk-toolbar.bk-below{flex-direction:row;-webkit-flex-direction:row;justify-content:flex-end;-webkit-justify-content:flex-end;}.bk-root .bk-toolbar.bk-above .bk-button-bar,.bk-root .bk-toolbar.bk-below .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-toolbar.bk-above .bk-logo,.bk-root .bk-toolbar.bk-below .bk-logo{order:1;-webkit-order:1;margin-left:5px;margin-right:0px;}.bk-root .bk-toolbar.bk-left,.bk-root .bk-toolbar.bk-right{flex-direction:column;-webkit-flex-direction:column;justify-content:flex-start;-webkit-justify-content:flex-start;}.bk-root .bk-toolbar.bk-left .bk-button-bar,.bk-root .bk-toolbar.bk-right .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column;}.bk-root .bk-toolbar.bk-left .bk-logo,.bk-root .bk-toolbar.bk-right .bk-logo{order:0;-webkit-order:0;margin-bottom:5px;margin-top:0px;}.bk-root .bk-toolbar-button{width:30px;height:30px;cursor:pointer;background-size:60% 60%;background-origin:border-box;background-color:transparent;background-repeat:no-repeat;background-position:center center;}.bk-root .bk-toolbar-button:hover{background-color:rgba(192, 192, 192, 0.15);}.bk-root .bk-toolbar-button:focus{outline:none;}.bk-root .bk-toolbar-button::-moz-focus-inner{border:0;}.bk-root .bk-toolbar.bk-above .bk-toolbar-button{border-bottom:2px solid transparent;}.bk-root .bk-toolbar.bk-above .bk-toolbar-button.bk-active{border-bottom-color:#26aae1;}.bk-root .bk-toolbar.bk-below .bk-toolbar-button{border-top:2px solid transparent;}.bk-root .bk-toolbar.bk-below .bk-toolbar-button.bk-active{border-top-color:#26aae1;}.bk-root .bk-toolbar.bk-right .bk-toolbar-button{border-left:2px solid transparent;}.bk-root .bk-toolbar.bk-right .bk-toolbar-button.bk-active{border-left-color:#26aae1;}.bk-root .bk-toolbar.bk-left .bk-toolbar-button{border-right:2px solid transparent;}.bk-root .bk-toolbar.bk-left .bk-toolbar-button.bk-active{border-right-color:#26aae1;}.bk-root .bk-button-bar + .bk-button-bar:before{content:\" \";display:inline-block;background-color:lightgray;}.bk-root .bk-toolbar.bk-above .bk-button-bar + .bk-button-bar:before,.bk-root .bk-toolbar.bk-below .bk-button-bar + .bk-button-bar:before{height:10px;width:1px;}.bk-root .bk-toolbar.bk-left .bk-button-bar + .bk-button-bar:before,.bk-root .bk-toolbar.bk-right .bk-button-bar + .bk-button-bar:before{height:1px;width:10px;}'},\n function _(A,g,o,C,l){C(),o.root=\"bk-root\",o.tool_icon_copy_to_clipboard=\"bk-tool-icon-copy-to-clipboard\",o.tool_icon_replace_mode=\"bk-tool-icon-replace-mode\",o.tool_icon_append_mode=\"bk-tool-icon-append-mode\",o.tool_icon_intersect_mode=\"bk-tool-icon-intersect-mode\",o.tool_icon_subtract_mode=\"bk-tool-icon-subtract-mode\",o.tool_icon_clear_selection=\"bk-tool-icon-clear-selection\",o.tool_icon_box_select=\"bk-tool-icon-box-select\",o.tool_icon_box_zoom=\"bk-tool-icon-box-zoom\",o.tool_icon_zoom_in=\"bk-tool-icon-zoom-in\",o.tool_icon_zoom_out=\"bk-tool-icon-zoom-out\",o.tool_icon_help=\"bk-tool-icon-help\",o.tool_icon_hover=\"bk-tool-icon-hover\",o.tool_icon_crosshair=\"bk-tool-icon-crosshair\",o.tool_icon_lasso_select=\"bk-tool-icon-lasso-select\",o.tool_icon_pan=\"bk-tool-icon-pan\",o.tool_icon_xpan=\"bk-tool-icon-xpan\",o.tool_icon_ypan=\"bk-tool-icon-ypan\",o.tool_icon_range=\"bk-tool-icon-range\",o.tool_icon_polygon_select=\"bk-tool-icon-polygon-select\",o.tool_icon_redo=\"bk-tool-icon-redo\",o.tool_icon_reset=\"bk-tool-icon-reset\",o.tool_icon_save=\"bk-tool-icon-save\",o.tool_icon_tap_select=\"bk-tool-icon-tap-select\",o.tool_icon_undo=\"bk-tool-icon-undo\",o.tool_icon_wheel_pan=\"bk-tool-icon-wheel-pan\",o.tool_icon_wheel_zoom=\"bk-tool-icon-wheel-zoom\",o.tool_icon_box_edit=\"bk-tool-icon-box-edit\",o.tool_icon_freehand_draw=\"bk-tool-icon-freehand-draw\",o.tool_icon_poly_draw=\"bk-tool-icon-poly-draw\",o.tool_icon_point_draw=\"bk-tool-icon-point-draw\",o.tool_icon_poly_edit=\"bk-tool-icon-poly-edit\",o.tool_icon_line_edit=\"bk-tool-icon-line-edit\",o.default='.bk-root .bk-tool-icon-copy-to-clipboard{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUSDBoBvcHQeQAAAG9JREFUWMNjXLhsJcNAAiaGAQYwB/xHwh/Q+ITEkfHQCwEWND4jmeb8H/JpgBwfI6cNBhLSEkqaGXRpgFRAcZoZsmlg1AGjDhh1wKgDRh0w6gCaVcf/R2wIkNqw+D9s0wADvUNiyIYA47BJAwPuAAAj/Cjd0TCN6wAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-replace-mode{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxokK3gniQAAAHpJREFUWMNjXLhsJcNAAiaGAQajDhhwB7DgEP+PxmeksvjgDwFcLmYkUh2hkBj8IcBIZXsYh1w2/I8v3sgAOM0bLYhGc8GgrwuICgldfQO88pcvXvg/aOuCUQeM5oLRuoCFCJcTbOMh5XOiW0JDNhdQS3y0IBp1ABwAAF8KGrhC1Eg6AAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-append-mode{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxkZWD04WwAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAAAoUlEQVRYw+1WQQ6AIAwrhO8Y/bIXEz9jIMSDr8ETCUEPQzA4pMeFLKNbu4l5WR0CDOMEALBGIzMuQIBEZQjPgP9JLjwTfBjY9sO9lZsFA9IafZng3BlIyVefgd8XQFZBAWe8jfNxwsDhir6rzoCiPiy1K+J8/FRQemv2XfAdFcQ9znU4Viqg9ta1qYJ+D1BnAIBrkgGVOrXNqUA9rbyZm/AEzFh4jEeY/soAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-intersect-mode{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxkrkOpp2wAAAPhJREFUWMPtV1EKwjAMTUavI3oawR/vtn5srJdREfzwMvHHQlcT2mpdMzFfWxiP5r2+JMN+mAiCOB72CABgR1cln4oOGocJnuMTSxWk8jMm7OggYkYXA9gPE3uyd8NXHONJ+eYMdE/NqCJmEZ5ZqlJJ4sUksKN7cYSaPoCZFWR1QI+Xm1fBACU63Cw22x0AAJxudwrffVwvZ+JmQdAHZkw0d4EpAMCw8k87pMdbnwtizQumJYv3nwV6XOA1qbUT/oQLUJgFRbsiNwFVucBIlyR3p0tdMp+XmFjfLKi1LatyAXtCRjPWBdL3Ke3VuACJKFfDr/xFN2fgAR/Go0qaLlmEAAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-subtract-mode{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUFFxgsF5XNOQAAAB1pVFh0Q29tbWVudAAAAAAAQ3JlYXRlZCB3aXRoIEdJTVBkLmUHAAABFUlEQVRYw9VWUQqDMAxNpWfxQxD1MoP97G7zQ5mH2RTZYLtM9lWoMbXtxLXNX4OG9r28l4hrd0PQoqxqAACYpxH25C/nkwCHyCBwSPoS09k1T5Fo+4EiExcC4v584xGFmyIXHBLRISAVZyZufUPVa4rcrwmPDgr93ylo+2GliLRUYHK6th/o/6r7nfLpqaCsagEA8Hh9FmcNKeRmgeYDC+SCq0B6FFi8/BcV6BdR9cL3gCv3ijPKOacsn3rBEcjmaVxpfGcg4wHxzgJJnc6241Hn23DERFRAu1bNcWa3Q0uXi62XR6sCaWoSejbtdLYmU3kTEunNgj0bUbQqYG/IcMaqwPS9jftoVCAQ0ZVDJwf0zQdH4AsyW6fpQu4YegAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-clear-selection{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH5AUGEhcuan3d3wAAAoRJREFUWMPtlzFP3EAQhd+b3TNSzg0N5TWXLkJQUUaKhIQ4fgP/g5ArrriE/I3opEgRrZtIVJR0FJQ010SioUmEZHtnUpwN9gWHGA5BJCy58MraffvmfZ41v3z9hqe8BE98vQh4cgG+Ydzmnrng8efvQJNi/uN7dznx/B3ggtfhf4ehNdUttRzBDIm/2VTiiWCG1HK0nc+3UWtq8BQIiEEakEQOADBIA4QCQmBqoHBhFNR27ikQSmGdYCdTqCpEHMDZmEKRWUBEv1gBDg5SzRJnpopILWICgWuRYflLamuzxB2BmtYqSRIka5VWU8QduXO+1hRc5YZu5GAwmP2ZJzND0IBu5HCV2+NQcAhAVRsnC2IbPzPdSjzd6to6VtfWkXi6YLaVWr7xoAwkfpb8MnC3SH7rKSMBe4M0jA/OTicFIbtCGRIyNbURhcf3ErCd6YwA1m0HgAxhw1NGQnlXBHG4kylVlSJuH0RfIP2CkL2I/qS1gIAAQiBl1QwFggIHtyxgrxK5PgyfC0JWKoT0HLh8LwoietB4TYKaIl7yeNURxB05UtMxDOcVQlZIrlRKdK6m47gjR/fuBRQihyLArtNeJD50Izcx2Eczu7iFkIug4VM3cpOr3MKDekFED0fWUHv9Zq0kpLnridjhY3XDg7NTN0jDrhO3X7O9Wg7wwyANu4mnayNg3gmbu0tCNoUyBNGv2l4rB9EXynA7082FOxAQLhU6rQVO9T2AvWowFToNCJcPORGxIRcnpjZSKATSU9NxvOQnAPArDSaQoUKnNI4iufkGtD4P3EHIcWZhz4HLceSOyrR3Izf5memPAL2cX3yhAkonysZVaWLBkd9dw1Ivv2a/AYPkK+ty1U1DAAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-box-select{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg0kduFrowAAAIdJREFUWMPtVtEKwCAI9KL//4e9DPZ3+wP3KgOjNZouFYI4C8q7s7DtB1lGIeMoRMRinCLXg/ML3EcFqpjjloOyZxRntxpwQ8HsgHYARKFAtSFrCg3TCdMFCE1BuuALEXJLjC4qENsFVXCESZw38/kWLOkC/K4PcOc/Hj03WkoDT3EaWW9egQul6CUbq90JTwAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-box-zoom{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg82t254aQAAAkBJREFUWMPN11+E1FEUB/DPTFn2qaeIpcSwr5NlUyJiKWVXWUqvlUh/iE3RY9mUekkPPURtLKNRrFJEeuphGfUUaVliiX1aVjGs6aG7+XX9ZnZ+d2fTl2vmnHvPPfeee/79Sk+may2/UQq/q7Qu+bAJoxjHIKqB/wlfUMcMVqI9bLZ+DGIKwzlzQ2GcxCx2xwvKOUKlaHTiX8bHNspjDONHkOmJBW5jIof/FvPh/06MZOb6cRc7cGn1AKUE5cdzlM/gAr5F/O24H3xkFRfxAbVygvK+cIsspjGWo1zgjeFpxL+BvnLw7laBA4xjIFJwrgu52DoVjKdY4HBEX8dSF3JLYe1fe6UcYCii3xWQjdfuSTnAtoheKCC7GNED5Zx4L4qt61jbTLHA94geKSC7P7ZeShQ0Inoi1IJuEOeORooFXkV0FZNdZs5qvFfKAeqYy7nZ6yg//HG0MBfffh71lFrQDCW2EvEP4mt4okZUDftz9rmGZkotmMxJRtlisy+MTniAWrty3AlXw0hFM2TD89l+oNsoOJXjbIs4EpqNtTCLXbiZ0g+M4mFObj8U3vsNjoZCVcmk60ZwthpepLZkB/AsivWfOJZxtpUQHfWib7KWDwzjeegBZJSdKFiE2qJTFFTwElsi/unQ/awXrU4WGMD7nOJxBY/1EO2iYConq93CHT1GOwucjdqnRyFz+VcHmMNefMY9nNkA3SWUOoXhQviSWQ4huLIRFlirFixnQq/XaKXUgg2xQNGv4V7x/RcW+AXPB3h7H1PaiQAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-zoom-in{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsUBmL8iQAAA2JJREFUWMO9l12IlFUYx3//MzPrLpSjkm5oN4FFIWVEl66IQlFYwtLOzozsjHdGRSCRF0sfBEXRVV0FQuQiLm5CZNBFgRRaRLVFhbJ2EdiN5gbK7toObTPn6eYdPTvNzPvOBz5Xh/ec5/n/n89zXtEHmZqeSXSuXBz/3zfdKvBWJHQrwZuRcP0El+QkbQXeBX6WZEgm6TtJk5lM5o4Lc+cV6qpf4Ga20Tm338zeATItVK9Ker6yvPzp4NDQ3+XieGsCU9MzTYumGbhz7m4ze9/MHgvBgItACrgfGAj2jgAvAYs3wlEujjc13kii8YyZrXXOfWhmo9GnFUlvOOemarVapVqtkslksmb2KjARqL62ecuWN9NxbRInzrldAXhV0uFSIfdew7G/gNLU9MwS8CwSmE3Oz88fcXG5blfpqVRq0Ix8VIAAX0XgrVL7HDCHGcCaWrV60LUBN8Dae58aQIxEqcA592I9M610JL0cpG/U9TIHJNKY3RV5z0R+7Nd4HZ0P1g/2RMBuegLAsRMnb4vT8d5vqKfMzOgtAlADrkmqGywmiMBTwfr3dC9j1Xv/r6Tvg/5/5ejxE6cO7M9faVbQZrYNOFSPmqQvVo9FKexvi5uWX58943aM7DwAfBDY+FbSCxP5sdkGx55GeguzrUEXPaSo2pFkAbiSZQCAzZJOmdkjwd6SpB/M7KykQTPbA2wDhoIzRzcNDx9MJwGNIXdJ0mEzmwbujL7dbma7gd03A7lKfnTOvf74nl0r6bonTUbujRSUCrm2d4L3/kvn3JPe+8+BDW2i9o+kT7z3kxP5sYsA6W47oE64TsR7P9tQL4vA2mh9WdIscKxUyJ0M7aR7acOGzikD65EQLEjaa2ZXzMwDFeB6qZBbbLTRE4EGeSaozNOZgYFf8qP7lmIvs354n0qlHpB0T7B9Ogl4IgJJrmjv/SiQjbrkD+BMUkfSbYATPdckrTOzkciWAXOlQu5cYgLdPEIapud9wMOR9zVJH3ViKx333mtHMJvNuoWFhZ3A+ojMcja77njXBEKwJJfTcqUyCIQ34Mf7nnh0paMnXacFuGoC1mr3AtuDfLzd8Zuyl+rfuGn4HLAD+Az4qZQf+61TAj0Noj8vX6oC35SL43u7teG6rf5+iXppwW7/JUL5D03qaFRvvUe+AAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-zoom-out{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgsHgty9VwAAA0FJREFUWMO9l09oXFUUxn/fmXlpItppi22k7UJBRSlVkCytSAuKUloIdjKT0El3FXVXdVFKRVAQV7qQohsNwdA0UFvBhYtqUVyIVlRaogtFQVq7qSTVjA3z3nHzBq/jvPmTN/Ss7rv3nvN99/y794kByMzcfE/7picn/jenmwWeRUI3E7wdCRskuCSTdDfwBvCtJEdySV9KOhpF0e0/LF5SqKtBgbv7ZjObcvfXgShD9Zqk5+orKx8Oj4z8NT05kU1gZm6+bdK0Azezu9z9hLs/HoIBvwAF4H5gKFh7B3gBWFY3460kWve4+3oze9fdx9OpVUmvmNlMHMf1RqNBFEUldz8OHAxUX9q6bduryut+Sfvc/Wz62ZD0fK1afjND9y3gGSRwv1GMojstTxUUCoVhdyopEYDzKXjWwZ4FFnEHWBc3Goet00m7lZlZYQixKw0FZnakGZksHUnHgvCN5/KARBH37enpOVg58H13HV0Kxg/kIuD/ngSA2ZMLt3bTSZJkUzNk7k4+D0AM/CGpaXCyBw/sC8Y/qZd2GpZiuL9YLN4Sx/HpoP5/c/exQ1OVq+1yyt13SLoArEsJnMjlgfOffvK3u58Kprab2QezJxfG2iTzUzI70wRPG9jbmpmb95SNB9mpzp7/j2yVdNbdx4K565K+cvfPJQ27+x5gBzAS7Hlvy+jo4WIvoC3kWpcvS3rR3eeAO9K529x9N7C7zX6AC2b28hN7Hl1Vt44niVq13LUjmtlYkiQfA5s6eO+GpDNJkhw9NFX5ueNt2ARodyF1IHIN2JiOl4H16fiKpK+B2Vq1vBAqFAf4IJkGNiIhWJK0192vunsC1IE/a9XycquNXARa5OnApeeioaHvKuP7r3dTGsiLqFAo7JR0T7B8rhfwXARa2us4UEqr5Ffgs151i/08oTNKdIO770ptObBYq5Yv5ibQq/sl3Qc8lJ4+lnSqH1vFfp9koZRKJVtaWnqkWXqSVkqlDe+vmUDWpZMlK/X6MBDegKf3P/nYaj8ErN9fqZBYEsf3Ag8G8Xit33BaniTcvGX0IvAw8BHwTa1y4Md+CeRqRL9fudwAvpienNi7Vhu21uwflOT+L+i1X2TJP57iUvUFtHWsAAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-help{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABltpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIKICAgICAgICAgICAgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiCiAgICAgICAgICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgICAgICAgICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIj4KICAgICAgICAgPHRpZmY6UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICAgICAgICAgPHRpZmY6Q29tcHJlc3Npb24+NTwvdGlmZjpDb21wcmVzc2lvbj4KICAgICAgICAgPHRpZmY6WFJlc29sdXRpb24+NzI8L3RpZmY6WFJlc29sdXRpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgICAgIDx0aWZmOllSZXNvbHV0aW9uPjcyPC90aWZmOllSZXNvbHV0aW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MzI8L2V4aWY6UGl4ZWxYRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPHhtcE1NOkluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMzIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06SW5zdGFuY2VJRD4KICAgICAgICAgPHhtcE1NOkRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDNDIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOkRlcml2ZWRGcm9tIHJkZjpwYXJzZVR5cGU9IlJlc291cmNlIj4KICAgICAgICAgICAgPHN0UmVmOmluc3RhbmNlSUQ+eG1wLmlpZDpBODVDNDBDMTIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6aW5zdGFuY2VJRD4KICAgICAgICAgICAgPHN0UmVmOmRvY3VtZW50SUQ+eG1wLmRpZDpBODVDNDBDMjIwQjMxMUU0ODREQUYzNzM5QTM2MjBCRTwvc3RSZWY6ZG9jdW1lbnRJRD4KICAgICAgICAgPC94bXBNTTpEZXJpdmVkRnJvbT4KICAgICAgICAgPGRjOnN1YmplY3Q+CiAgICAgICAgICAgIDxyZGY6U2VxLz4KICAgICAgICAgPC9kYzpzdWJqZWN0PgogICAgICAgICA8eG1wOk1vZGlmeURhdGU+MjAxNjoxMToyOCAxMToxMTo4MjwveG1wOk1vZGlmeURhdGU+CiAgICAgICAgIDx4bXA6Q3JlYXRvclRvb2w+UGl4ZWxtYXRvciAzLjY8L3htcDpDcmVhdG9yVG9vbD4KICAgICAgPC9yZGY6RGVzY3JpcHRpb24+CiAgIDwvcmRmOlJERj4KPC94OnhtcG1ldGE+Cphjt2AAAAT7SURBVFgJxRdbaFxFdGb2bhui227BWrsVKYgf2kJUbP9EUPuzEB803WTXJjH61Q/7Ya1+CMYKEVTsh4J/EpvY7BoabUiNiA8s1p+4KIhpoUUEselHqyS76TbZ3HuP58ydc3d2u4+IkQxczpz3mZkzZ86VYpXjvenpjZsLhUcliE4AuUuASAgptmt1EFdwPiclzIIUUwubNn17OJlcXo1p2UpodHRiux9xB1Eug1+slbzhFxGOKc851tu7/0oznYYBDA8Pt0U2tL8KQryIq2tvZqQhD0QJHRz3yqWhgYGBpXpydQMwqz6NCnurleCSADkJEfgKfOePqL80R/wV1ZaQyr1LenKfkPCkEPKeaj0xg7vxVL3duCmA0Vyuw/fl52hgBxsBED+h4Cv9z3R/zbRm8MTJTx7HQN7GQB6w5C4L4SX7M5lfLBpurjXMyvNIShiyi0l1pL8n9b7EDGPR8fHxzSsQ6XDB3618/xqo6Pk25V5MpVJllgHM1BO58RdQ612kOYZ+GXdij70TYQB05mpj+1kU5G2fB+l3PZtOf8NGx6ambnMXb3yAxg8wjSEG6OKKR9oicBQD+ZvpH2Wzj0lQpxCPG9qMv1x6hHNCsSAlHM7ZOa682vlI9tRDbvHGbD3nZAPpDoD/3JIrLpAs26UFkC3EMUA99hpfGtEBfJjNJnS2Gwnadnvl+Xw+iuc3DAJuNyIaSCHpilVldyDjjUxj3WDZIAhxhHHyRcdNuA7AAfUaXzVKODpzFiZ4/uLvh5G+m2no+C/pyIf7MqlEJB7bpqR6nXkEUfbeawuLaZsW2ISfNQ2vtaktQlGFQyIVGT0o2+2EC4iQNGwjBIN9qdQ5Qg4mk4X4rW3vCClLtowE2FOFUxKDfNmiZci3ovKKRFPh4FK9q4Zbdr+lKKJiA13TcHR2dmLBgdmQ0GAS2MZaEowY+XbAk09IvgtYZGp16SyvFhaHcIUh645t8T9DBCcnz5zZ4hZLu3DzK2QlL1QQa0Y+pHiJKPSuOGj3PmZTheM5w2TwqBxnvBZOTk7G5gvXJ5Aelms8wnJURL+olSWcfEhf6gDoUXPMq6ZlqbzWU2pE+3hi4s6F68tfIj9cBMlikr7Z0/P0b/X0yIcUXsDCF1WhtL4OROHaXk+xlkbV0Cu732Nmhc4peaWSg73pA8dq5RkvO37ldUTfXCKZv2q45MkhvG87WQEzpCCUSvV1d9GONBy3lMvgKSwrZig8gjAietWY0QriylO2jIo4yVbOSb7KB/qmI9BPKjHpSSXYauRyn92Nq9/Kcrj13x3s3v8D481glQ/0raiNYgX9njPSBOImbrHZePl+tfFmc9sH+Xaoh8NjOKSVdDMhjjYzQLy+dFceH5+IJQf9VYXX4tROg4ZFU8m31M3mfPEqUoJqCGJfvWpo2xnNfdrhC28n06SCeSzNZxlvBINGRXCtKS7EY1uV6V7HWAm38y1cXaXsMcOCvr9ySPj+af7A1U2HJXHzVNvUXVLIGyPf+jV0pf8GHoN+TLAyPkidTCi2RpPApmnR0Bd1zGRaB/B8Oj2HSw7LLbVR1MmskW8RdEWVXSJf3JbpAMgRtc4IZoxTh9qotQjCasm46M0YX9pV1VmbpvRH5OwwgdRtSg2vKaAz/1dNKVtb17Y8DCL4HVufHxMOYl1/zTgIgiYvBnFKfaNp3YjTdPz3n9Na8//X7/k/O1tdwopcZlcAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-hover{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4oVHp0SwAAAQJJREFUWMPtlsENgzAMRb8RQ5VJItFDOgaZAMaAA0iZpN3KPZSoEEHSQBCViI/G8pfNt/KAFFcPshPdoAGgZkYVVYjQAFCyFLN8tlAbXRwAxp61nc9XCkGERpZCxRDvBl0zoxp7K98GAACxxH29srNNmPsK2l7zHoHHXZDr+/9vwDfB3kgeSB5IHkgeOH0DmesJjSXi6pUvkYt5u9teVy6aWREDM0D0BRvmGRV5N6DsQkMzI64FidtI5t3AOKWaFhuioY8dlYf9TO1PREUh/9HVeAqzIThHgWZ6MuNmC1jiL1mK4pAzlKUojEmNsxcmL0J60tazWjLZFpClPbd9BMJfL95145YajN5RHQAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-crosshair{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADEUlEQVRYR81XXVIaQRCeHqug8CXmBNETaE4gniDwIgpVspxAbxC9ATkBkCpQ8gKeQDiB5AQxNyAvUlrldr7eHxyGXZi1rMJ5opbp7m++7un+htSGF204vsoMoNXrlzSpfWa1oxQfhAegCZGaEtPorHo8znIoJwCt6+td8uk7ApUQCIHTF4BNAWzImq8ap6cP68CsBdDp9i9ZqXM7ML79g/EnCWD+jgMKENKqWT+tXK0CkQqgNRjs0OxpQIqKhoMxaG6/6JeRnK7T6yO2UvVqhYSlLX+ryORfgKn9ORDFIy7ky41yGcwsr0QAQfDH5zucOswx819fs4egI9OFCcD8DjBF7VNbEX0JzdWEt3NHSSASAcCxBDqMgt/623kvyTgNgNjJIfTjk4D4FqaJR1715MjmYAmA5Bx3AwUXQL+t105KaTlcBSC26XRvhjEIoLiq1yqXpr8FAGG16/ug4IT27fxBWu7EiQuAiImJpEMKE6nYM30uAIDDttSUOPfJP7JzbjPhAiBIh9QE67vIvoOi9WJfCwDavf40ulpjbCqmUf+W753ezURuh7Dg1SqflwAEHU6pgfyBq9Y4qx0LG++2fnZ/eUzcstmdM2AWH+jfc+liWdBJfSENf8Lifi3GVwC9mybOfi5dzatWVrbbLIHNva8p5h/16gkaFiLGGxbufkoE6XguwePiXLF3XmMfCUCUAqtKXU7sumd1CowOuJEi3Pg1FBpjitIGhyvVSfvmjci6ZR+rFQfDiPVE2jFYeICQ+PoewwjC5h7CZld6DBdyu6nDSKgzOyIMhmhK5TTqXYbRorZYM46TmpKAAOrGWwSJJekSB1yqJNOzp1Gs7YJ0EDeySDIMtJbQHh6Kf/uFfNFZkolJICRmz0P8DKWZuIG2g1hpok+Mk0Qphs0h9lzMtWRoNvYLuVImUWrmPJDlBKeRBDfATGOpHkhw670QSHWGLLckmF1PTsMlYqMJpyUbiO0weiMMceqLVTcotnMCYAYJJbcuQrVgZFP0NOOJYpr62pf3AmrHfWUG4O7abefGAfwH7EXSMJafOlYAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-lasso-select{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgwlGP1qdAAABMBJREFUWMO9V1uIVVUY/r61z57ZMx4DnbzgkbQXL5iCJphlWdpIGY4jpFBkEiU9ZNaDRRcITcIwMwgxoQtU2IMXdAZfMjFvpERXYiSbysyBEXFmyuHMnLP32uvrwT2xnY5nxvHQ93Jg7fWv71/r//7L4a59TRgqJk+Z6v3a+sv0OI5nk5wu6VaSVZImAThHsgjgrKTvM5nMUWvtmf5n8HodCIKgOgzDhc65pSTrJQWDsSNpJX1ljHnDOfdT37oZLLHv+8OMMasKhcIJ59xHAJYMlhwAJGUAzJfUTHLFuFzOG5QDU6dNMyQfs9Yedc5tBpAD4IYYNQGoBrDtQnt7/b0LFrJsCHzfn2itfQfAnZLiazytA3AaQAuAiwDaEgeNpGkkswAWSBqRONB38b88z5uTKePt6iiKXkk8jq+iJC5LOmiMaTLGHLPWhmWeHr7vV0dRtATAapAzIVmSo51zyzIlbm2stesFPA6pKk0r6Ryg93y/ek8YFvPOOTg3cDSiKCoC2OP7/rEoirYm4rUkF12lAWNM1lr7lqQn0+QA8gI2jBg5cj6Aj8OwmB+KAKIoukhyp6SRJAUgl0ndPLDWPi9pJQCbuviXvu+/GIZhW1dnJ24UJFuTjCCA2ADA8sYGWmsXS3qmL94kDYAtkh4Nw7ANlQJ5U6INT1KrAYC9zQdykl7nFSj5fXp5Y8NWVBhy7mUAjqShMYdMXV2dJ2klyRwAJ8lIeuGWCRMP7N7frEqSG2OmAFhKshNAp5wrmO7u7jEAngPQm1S2z2pqapr+OPt7XEly0oxwzq2RdFmSD2AMgKKJouhhAL4kA+Cs53l7e3t7uytJHgRBreTWkXwkKVJnJD0B4GAGwIJE9R6AFufc6UqSZ7PZbD6ff5dkA4CQZEHSqwAOISmXtwGIE+F1SeqqIP8d+Xz+C0mLJYWSAODteXffczjdDQNJ0BWMCoLg5gqIbRTJNwHsljQhUb0luWPM2LE7Thw/9m/5NCT/TByxAOYWi8X6/gdWV1dnfN8fNRBxJpMZTXKdc+6IpFVJWAEgkvSJpA0X2tvtVTaSjgOYBCAEEADYSHK87/sfhmEYA9gShuEDkgzJHyWtB/B1irQ2juP7ADxkrX0wOUOpzmdpzEY590HJ7Ni1r2kSyZOSiv2+hSRjSTXp/QAukzySNJOJkmalyNIl10hqMcasdc61XDNcQRD8BnITgNp+36r6kfcNFMMlLQGwTNLMEuQGQBfJl2bdPru+HDkAZAqFQux53jZHEsC6aw0eg2gylNRBcqcx5v04ji999+03AwsWAOI4Lsy9a94WkisAnE5a5WCJYwCfA1g7LJudI2lTHMeXBm1faiQzxkyRtF3S5CTupeAB+KG2tnZFT0/P30NO2VKLzrmfAbwGMipjG5Oc0dPTc0Md05SZ5U4Q2FxChErtEYD7jTGNQ3UgM8Asv90Yc9I5LSKRlXSI5CxJa0jWSALJjKRnAewfkniT+vwf7N7fXHK9rq7O7+jo+BTA/NRrdBpjnnLOnUrvXd7YMPQXSBunneno6IhIHgYwW1JtkgmBpBkATlVMAwOk3nFJ+VSoqgCMr6gIy2FcLtdKspAedyQN/98caDt/3kpyabUmf8WvG/8A1vODTBVE/0MAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-pan{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4lKssI9gAAAOtJREFUWMPVll0KwyAMgNPgoc0JzDX2Mtgp3csKErSamGabIEUo/T6bHz0ezxdsjPJ5kvUDaROem7VJAp3gufkbtwtI+JYEOsHNEugIN0mgM1wtsVoF1MnyKtZHZBW4DVxoMh6jaAW0MTfnBAbALyUwCD6UwEB4VyJN4FXx4aqUAACgFLjzrsRP9AECAP4Cm88QtJeJrGivdeNdPpko+j1H7XzUB+6WYHmo4eDk4wj41XFMEfBZGXpK0F/eB+QhVcXslVo7i6eANjF5NYSojCN7wi05MJNgbfKiMaPZA75TBVKCrWWbnGrb3DPePZ9Bcbe/QecAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-xpan{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4X4hxZdgAAAMpJREFUWMPtlsEKwjAMhr/pwOOedINJe/PobWXCfAIvgo/nA4heOiilZQqN2yE5lpD/I38SWt3uD9aMHSuHAiiAAmwaYCqoM/0KMABtQYDW11wEaHyiEei28bWb8LGOkk5C4iEEgE11YBQWDyHGuAMD0CeS30IQPfACbC3o+Vd2bOIOWMCtoO1mC+ap3CfmoCokFs/SZd6E0ILjnzrhvFbyEJ2FIZzXyB6iZ3AkjITn8WOdSbbAoaD4NSW+tIZdQYBOPyQKoAAKkIsPv0se4A/1UC0AAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-ypan{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4anK0lywAAAMVJREFUWMPtlzEKwzAMRX/S7rlpIMXeOnaLaME36FLo8XqCdNFghGljyc4kgQi2Q/SUj0F/eL7eMMTKz6j9wNlYPGRrFcSoLH4XxQPvdQeYuPOlcLbw2dRTgqvoXEaolWM0aP4LYm0NkHYWzyFSSwlmzjw2sR6OvAXNwgEcwAEcwAEcwAEcoGYk20SiMCHlmVoCzACoojEqjHBmCeJOCOo1lgPA7Q8E8TvdjMmHuzsV3NFD4w+1t+Ai/gTx3qHuOFqdMQB8ASMwJX0IEHOeAAAAAElFTkSuQmCC\");}.bk-root .bk-tool-icon-range{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAAlwSFlzAAALEwAACxMBAJqcGAAABCJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDUuNC4wIj4KICAgPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4KICAgICAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgICAgICAgICAgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgICAgICAgICAgIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyI+CiAgICAgICAgIDx0aWZmOlJlc29sdXRpb25Vbml0PjI8L3RpZmY6UmVzb2x1dGlvblVuaXQ+CiAgICAgICAgIDx0aWZmOkNvbXByZXNzaW9uPjU8L3RpZmY6Q29tcHJlc3Npb24+CiAgICAgICAgIDx0aWZmOlhSZXNvbHV0aW9uPjcyPC90aWZmOlhSZXNvbHV0aW9uPgogICAgICAgICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9uPgogICAgICAgICA8dGlmZjpZUmVzb2x1dGlvbj43MjwvdGlmZjpZUmVzb2x1dGlvbj4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjMyPC9leGlmOlBpeGVsWERpbWVuc2lvbj4KICAgICAgICAgPGV4aWY6Q29sb3JTcGFjZT4xPC9leGlmOkNvbG9yU3BhY2U+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4zMjwvZXhpZjpQaXhlbFlEaW1lbnNpb24+CiAgICAgICAgIDxkYzpzdWJqZWN0PgogICAgICAgICAgICA8cmRmOkJhZy8+CiAgICAgICAgIDwvZGM6c3ViamVjdD4KICAgICAgICAgPHhtcDpNb2RpZnlEYXRlPjIwMTgtMDQtMjhUMTQ6MDQ6NDk8L3htcDpNb2RpZnlEYXRlPgogICAgICAgICA8eG1wOkNyZWF0b3JUb29sPlBpeGVsbWF0b3IgMy43PC94bXA6Q3JlYXRvclRvb2w+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgrsrWBhAAAD60lEQVRYCcVWv2scRxSemZ097SHbSeWkcYwwclDhzr1Q5T6QE1LghP6BGNIYJGRWNlaZItiFK1mr+JAu4HQu0kjpU8sgF3ITAsaFg0hOvt2Zyfvmdsa7a610Unx44Zgf773vvfneezPHNzrbhn3CT3xC3wPXYOC8LDzqdi8YY/gwh4BeknS/2th6dr2kf94AOp3OFyWgMyziOPbMDxV9FTtJnl1ut795Xd0/YQ0/vtYQwMT1KXWCfr2IjOWwtNehwN4xL9ykTrm6Pzl58yLn3J+mKh9mXbT3uRjGEDph+O8/TjfP5dBp7Ha7AX7O3o5nZeD/0E/OGyXntDgzA0X6qmCnrVutVlrUWV9f/3xo+pwhGDhvEPHOjoxnZjJggXmMHzBQ7NGNp9vxk61fr0HR7e/u7pZzCGHlc7qwBYYTT7tJYSx1AQzppyFPft5apta9w7SKcn0b7P7+/jCsDQ5mbc0dCmIJGDN0ehdcjsmkm6A6KUeKFOTE11PLxrC7Ukqh3ylL2fT0NAP9q6ur6rRCJJYsbKB0JsbCKMuy+xREePDyxQPCz+Crlw062QcA5wBOOt1l6vIl2WiI9F1fN6Q+BBqit6hEC4Hk08GQJMn4myjSP7RavVxgdaVUh/3U6HCMsPr9pYnJKRziHtWQ+un58+hGs6nsjQSjpuTyKGN3CX+FBwHXSiEVgjP+O8X6N12kIePES+GzTKAkGbNp8yJsGUMVzz8jPKReiyAQRimy5/cjye5RpF8utFp/+nwmT7d/NMzcFkS7yjJNGDaPURQxIQThEQy0SyF4l5WJYYhBa816vZ6dU7A6CAhbZVow/pDe0O9hVOoCi13r4BgBAvJHqMSQL2vE/iH6IAXEwgrRVUmBoRRwnwJQT98xEeVeSUyB4dJ5nwJBKdCFFGRmUCcu7rwIYypCTblaChuNBhWODrman5ub+4v0rMNBt8z6Ezh7GksJQpCbm79cMQE7QBFm/X6f0rjWnv8WRYg/QdbUpwDAEBy8vPyA8rNGzg3a8MiElwiM7dAtRqNoNptjGPM1laVxP9umWEMGLOKhKUOJDtBwDmzsw9fC/CzHr9SGuCTi2LbbKvVtmqXpCjMihBFa79Wrt5fGx9PDzc3fmu32Lf8qFliwU9emKhBSp+kRKn/hu9k1COEDbFdt/BoKWOAkuEbdVYyoIXv8+I/QK9dMHEb1Knb7MHOv8LFFOsjzCVHWOD7Ltn+MXCRF4729vWMDK+p8rLkvwjLg4N4v741m5YuwCI9CvHp1Ha8gFdBoPnQAkGsYYGxxcfEI7QQlFCTGUXwjAz4tWF+EpymOWu7fglE7qsOvrYE6g4+9/x/vhRbMdLOCFgAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-polygon-select{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjc1OfiVKAAAAe1JREFUWMPt1r9rU1EUB/DPK0XbqphFHETo4OCiFhwF0V1KHbRSROLqon+AUMVRRFBwEbRFMBiV+mMW/wIxi5OD1kERRVKRJHUwLvfBTZrU5OWBGXLgQu7Jfe98z/ec7z0vKa88b2q1BDtRHdAPBaylm1NzsxsOjPnPNt6WSWprbft+/c3I3zOAjhT1Y4+fvcjEQJIXnVECSa+AhqIHqlHH5lWCZoe+Gk4GRgDG86j9SAUdlDBSQaZhlOkuHyoVdJmsw98D1S5fM4NYM1LCpqM+Lwa240oLgmZzpVZvzKT75VLZcqksSZKWlQeAy/iORVwIvh31xvotvK7VG3Px4aWHj3Jl4C2uYSvq+Bn8v6LLbaVWb9zsBiKLCvbiNG7gLm7jAYqbPHMJMziZ9lsKoh8GtqCEVVzHftwJn+TFHp4/hg8BSCYVfMOZoPEv2NZGdy9WCGUr9toDR3E2/H4V6nwRe/BmgN65H1ZhvMuB3XiKIyFoGefwO6ysVkUlrNUNsyAK/jli533Q+Y8cJFvAeXyMS1CI/jiMr/gUtD2LQwMGr4R3p7bY3oQHQ5b38CT4D2AXXg6YcQXHpyYnlqKsi5iOAVSwL9zd7zJ09r+Cpwq72omFMazjT9Dnibym0dTkRDUKrrgwH7MwXVyYB38BstaGDfLUTsgAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-redo{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4itK+dVQAAAaFJREFUWMPt1L1rFFEUBfDfJDaBBSslIFjbaSFp1FJQFMVCHkzhKIqdUYOCoBgErVz8rCwiTDMwBCIKipDWyip/gxAIWAmBgBC0eYFh2Gx2l9lFcA5M8e59782Zc84dWrT435Hs1siLchqn43MS0zgW22vYxjesYjVLw3YjBPKinMUTBOwf8J5fKLGYpWFjJAJ5Uc7gIW6jM6Kim3iNZ1katgYmEL/6I+YasvY7Lg6iRpIX5VF8wuEe/XV8wGf8jN6LWTiAc7iEQ7ucPZ+lYW0vAtfwvlbfwCKW9gpXDOv1mJvZHiSO91MiyYsyiQSuxtpXXM7SsDmM5nlRdrCMMz3sOJWl4Xevc/vwBzdwAl+yNNwZxfRI+GxelK9ikHcwh8d4NNR/YFRES1ZwoTYdR7I0rNf3TzVNIGbmSvR/Bx08mIgCFSVu4l2ltIWD9WxNGR+W8KOynqnZ0rwCeVG+wa0hjrxtWoF5dAfc28V8Mib/n+Nev5dnabg/zgw87aNEN/bHOwVRiRe4Wym9zNKwMKkpgIWKEt24njxiJlq0aPFv4i9ZWXMSPPhE/QAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-reset{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4gWqH8eQAABLdJREFUWMPtlktsVGUUx3/nfvfOlLQaY2IiRRMQIRpI0PjamJhoVASDvNpCpYw1vJQYSVwZwIVQF6wwRHmkAUof9ElrI6VqDAXcID4TF0IiYQMkSlTokNCZ+b7jove2t+NMH7rQBWd3v+989/zP+Z8X3Jb/WGQySvUNTQBJESkNguAVYIWqzhaRhwBU9WcR+QXoymazn6jqzUQiMQSQzWZRVdal1vwzAI2tHQBPOuc2AbWTdOyQ53n7nHNfRwee51GzqoIQMCLDpr3x/tLQ0oZzrk5Vj0/BOEBt+KYuOlBVGlrahr0Wob27t3gEjnZ2AyQzmUwHsDgP6J/AYRE553neDwDOuUdU9QngNeCumK4TkRMhZUORcYC1qysLA6iuSQHIwkWLD6lqapQsuSmwTVV3h99I7EcAR462A2xR2Ilq6ehTaejvO1774kuLNALR33eclsaGsQDe3fYegHl43vyNwEeqGl1963mm2jl7YZRTQ82qlWP4HM6ZToC5ztkW4LHQoALru7s6Di5dvlIj/e6ujrEAWoZDn8hmMjXATMACGaAVuBjXTVVXFc/AxhaA+4zvn1DV+eHxVWPMAmvtb5GeMWZyZVhI2rt7qVy2pOh9U1snwIPW2vMi4oWJuBPYHkVAVScPoKmtkzVVK6cEMsyJraHhiCqJqJUwj/JRz7TW1iSSyR2rVyylqa0Ta+24Ic8vXaAEmDFc/l5Z2A/80OibuVyuz/f9ElUdHCmvw82t5HK5h6y1PYhsz2YyGw43t2KtBZHIGwB6+j4rCkBVUdV7gXrggnPuu8h4eP+xMeZS2D0rJYZ6AdAMzAt1b4nI26p6IFZOY8pugijcKSIHVLUK0LyST4vnrVfnWr3mjmP4QTATaERkXkypRFX3isjmuHdRJEK6Ckqquopp06bdKCkp2Sgi7XnGLcg7gzeutwNIiPYc8HixqIrIOlU9ONVIhHPEd851icgSVXUiskVV94gIqoonIt0i8gfQCfwae38e6BWRXuBZz5jZ8VbaOE4EIqlZVUEQBLlkMplS1QER2RwkEnsSyaREDUzyeNsvIhvCMqkH1kdIJ2o+k8iJB1LVVRfjZ6nqqlEAIbdVQGto8Lrv+/dbawcjAL7vc+6bs+zetetfLSHxniIFGofGGsU2oC7eOCbDfZ7nQawBOSAX74SF9oEPImOq+r7nmVmxb5raukZa8UReGmNmhbMkAwwBH467EYVZe49z7kdgenj8k7V2oTHm8kgdWcvrNdVFjR8cHkYzjDH9wLjDaEwEzpwa4MypgWvAjtjxfGNMj4jMiT+M+kFsZI/Q6Pv+HGNMT8w4wI7TAyevxXVPD5z8+zD64tRXAMHVK1eaVLUyVvuDqroV2BOnJF4ZIedviUidqt4Re9s+vbx8zZXLl7PR2+nl5Tz/zNOFp2FzxzGAklw22wUsLLaSKXwf8vhosZUM6PeDYEUum70VHfpBwKsVyyfeikOP6oBNwN1TrLbfgX3A1kKLzKeff8nLLzw38T5wZDgxn1LnNk5lLRfP26/OnR2hwfNYW2Atn9RCsrf+EECyrKysDFimqhXhyjY3VLkAXBKRDqA7nU6nS0tLhyIj6XSaN9bVclv+l/IXAmkwvZc+jNUAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-save{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4UexUIzAAAAIRJREFUWMNjXLhs5X+GAQRMDAMMWJDYjGhyf7CoIQf8x2H+f0KGM9M7BBio5FNcITo408CoA0YdQM1cwEhtB/ylgqMkCJmFLwrOQguj/xTg50hmkeyARAYGhlNUCIXjDAwM0eREwTUGBgbz0Ww46oBRB4w6YNQBow4YdcCIahP+H5EhAAAH2R8hH3Rg0QAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-tap-select{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA2hpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYxIDY0LjE0MDk0OSwgMjAxMC8xMi8wNy0xMDo1NzowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDo3NzIwRUFGMDYyMjE2ODExOTdBNUNBNjVEQTY5OTRDRSIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCOTJBQzE0RDQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCOTJBQzE0QzQ0RDUxMUU0QTE0ODk2NTE1M0M0MkZENCIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ1M1LjEgTWFjaW50b3NoIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6OTQ0QzIwMUM1RjIxNjgxMUE3QkFFMzhGRjc2NTI3MjgiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NzcyMEVBRjA2MjIxNjgxMTk3QTVDQTY1REE2OTk0Q0UiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz6eYZ88AAADLklEQVR42rSXf2TUYRzHv7tuGcfE6Vwb5zLSSjEj7Y9KWqfEmFZJP+yPMdKKmUrrn0iUfjhWlLFi6YfNrF+StBoTo39iYkTGco4xxxG59P7k/T2PT8/37nu3bx9ezvPj+zyf5/PreS78bGLS8SmrwE6yje3NHJsDBTALpknBz6JhH3NiYAB0gHqPOVv52wJ6QQ48BzdAttTioRJjdeA8mAHHS2xuk3p+M8M16ipVQE49Ds6CiFO9RLjGONf05QLx6wPQaBlbBlPgJVgkP0ETiIJ2sB/E1XfimjfgBOOlKDUqCGOcqBcQnw6BYW5YTo4wbvQhMmCfGRemC2rBiGXzWUb+kM/NRZ6CHWBM9ce5R61NgX6ayhSJ5EPlItlDRNkz4JbFHf06BkSzHjXxM+gDv1S/mPUo2AXWgt9UUHL/IVhS8yUV1/EbV3o4N+NaoE9Fu/i827K5pNYHnqAVJECShWmAaddpscYFFXwR7vnXBRGlnUN/L6kqKJlxnRUuDbaDBiL+vst5d4gpcpBrqk/2jIgCKVUolhntplzivHmwh4stGOPfwBWwl/2dpp8p7xjQZqFLiQJtauKkivYm+kzccpK57yXfOUe+P23JqAnVbhMFmlXntCWnxbT31am9ZJ4BJifsUmNTqt0cYhA5ypympPg7VkEKunPbVb8cIG+0kyHLJZNR7fUMooUKFHAPkfQo58VLK+RzwRDd4FdWG9mjpaAXzqkJa1R7kQttqEABWXMjOOxxVRfnhRm5URX1prk/0pQHwNcKlchZ+jdpC+hFdVqO0my9Hj5dkYgCn1Rfh/KdlNDHrJhPqlDih+IfBd6qwpOgEqYMsorJ2HtWxtagLJDn/W3KRfPOZhoeBJfZPgVeGKeKrkQBh5dLXl25Ny3pc4/1fkTdbvFqFQgbxWeYD0hXulhQ0pYiM1jG547fcbMQpVnHTZEn9W3ljsCzwHxCdVteNHIZvQa7/7cC7nV6zHIfyFP9EXjFa7YxKAVqPP4bxhhoLWW+z9JyCb6M/MREg59/RlmmXbmneIybB+YC/ay+yrffqEddDzwGvKxxDmzhc0tc80XVgblqFfgjwAAPubcGjAOl1wAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-undo{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4em8Dh0gAAAatJREFUWMPt1rFrFFEQBvDfGhACASshkL/ALpWVrSAKEQV5sIULWlgZNSgIFkGIVQ412gkBt1lYLERREFJqJRaW1oHAoZUQsDqwecWy7N3tbe6C4H2wxc682Zn3zTfvLXPM8b8j6RqYF+UCzsfnHBawGt3fMcAX7GEvS8NgKgXkRbmMxwg41TLsN0psZmnodyogL8pFPMIdLHUk7hA7eJKl4U/rAuKu3+HslFr/FZezNPSTFslX8QErDe4DvMVH/Iq9F7VwGpdwZUjsPtaSFjv/1vCBPjaxO0xcNbHejLpZrrlvJCMCT+JzA+2fcC1Lw+GE4l3CG1yIptfjCtiKoqtiJ0vD3aM0Py/K57iIMxgkQxat4EdN7e9xdRzlk+LEEPvDWvIDXJ928sYxjL36icWK+VaWhlezOIqbGFirJd/H7szugrwoX+D2BDEvszSsT5OBdfRaru/F9dPXQF6U27g/KnmWhgctxqyzBrZGMNGL/rHI0nDkKXiKexXTsywNGx0OnFbFNk3BRoWJXnw//j+ivCi32/S8CxPVNiWOAdUiJtXITIqYY45/Cn8B2D97FYW2H+IAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-wheel-pan{background-image:url(\"data:image/png;base64,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\");}.bk-root .bk-tool-icon-wheel-zoom{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgskILvMJQAABTtJREFUWMPdl1+MXVUVxn/fPvf2zrSFmUKnoBCUdjRoVaIxEpO2JhilMYBCtBQS2hejpg1Uo2NUrIFAoyGmtiE+GHwQGtvQJhqDmKYRBv+URFsFDNCSptH60DJTO3dKnX/33rM/H7rvsDu9M20fDMaVnGTvtb69z7fWXmvtc/TEzqd4OyXwNsv/FwFJQVI/sA14SZKRLOlPkr5TrVYXHz70quYkEEK4TtI2YAgYkrQthHDdhV5uuw+43/ZrwCbgRttgY/tjtrc0m83X3/f+D6ydnJhYcB4BSZcBA7aP2d4ELAGW2N5k+xgwkDB0IH19CGGH7R8B1aQeAf4KvAw0ku4K2zu7uru3ApdPEyiKohd4TNKjtjt5h6RHgccSNrddbvuHtm9Jqoak7xVF8WFgdavV+pSk5cCObNmXgK++85prCj3z28HKqZMnH7D9YAY4BvwujT8BvCuL1INX9vVt+dfwcCvNb7f9q2RuSfrGvWu/sL2Nf3LX7pzvj4ENSGBPVarVd4fRkZFltjdmoMGiKO4IIWwIIWwoiuIOYDDzeOPoyMiyFLkum7WJCMDztrcrTTrIRuAQZ6NcK1utL4dWq/VZoC8BhqvV6l1lWb4YYxyLMY6VZflitVq9CxhOmL60hhCKeYiV7WMKIXw9jT1HpXw3c+bOAKzOjJubzebJrKQCQLPZPClpc7bP6rMYKtjXth2OMf7tIkr11Wz8oQDc1Fb09vY+kQw1YAuwJY2nbUluAnCWpKkaFl6IQIzxivaR2SYA89sJVK/Xp2x32R6w/a30DNjuqtfrU0ArYecDCEqgLqm94T0dEm9mBG7PxkdDlkBnkhebgIezNQ8nHcCZPL9ijE1Jf/bZZoPtzbavmqNZLbf9tSxq+yoduuJ+SZ+zXSZyBXCqU+d8fvC5yRUrV+0G2j3g2hDCLyXd/+Su3QdnvP/zCuH72LWsgf2k0oHlH2c2odlkxcpVEdgr6aDtjyb8x20/J+mA7T9I6rL9SWA5dne2/GdXLl58qNJh398An85yTMA+4DOz8Dgu6Zu2dwJXJ91ltm8Gbp7Fgb+EEB4aHhpq5CEtACqVyr3AC0AlPS8k3TSmQ2YPhhBuS/1/LpmS9JTtNTHGfwBU2uUALARotVqniqJYH2Pck85pfavVaufAwnQvnHc0McaDKVptebN94QAnJB0EdtjekydyZXqjs/0ZgLIs/w6sy8bnYGYJ63pgERKC05JutT1kOwITwL9tvzlzUQUYB+Zjs2DBgu6xsbGJZHstByZbezregcBXeCsEz1bnzXt5anLyzLq71zDLxTRdVgemdx0fv2e2w5thO5DbiqL4oKT3ZKpnpyYnz+SY2ZpTAPZmJfdIrVZbNBNUq9UW2X4kU+2dcf53Aj1pj2PA7y/6m1DS00A9za9uNBq7iqJYBuoGdRdFsazRaOzKSqye1rTbaa/tlbYrqXQP2X4FIA9/J1l39xrC0v7+w5IeB8XkwS1lWe6TGJAYKMty31tfO4qSHl/a3384I3CDpI+kzC4lnRfrue6GytEjR8oQwlY73gC0L4qlth/q0M1/LYWtR48cKQF6enrC6dOnVwGLEpnxnp7en4+O1i/tszzGOCTpPmB7ahb57QUwBWyXdF+McWg6MScmuoA8OX8xOlpvXGz422XYTsB/SnpA0h7bX5R0WzI9HUL4qe2XbI+dk3xl+V7gxoztD5jRI+YK/zkEEokx2/uB/RdzIfUtueqVN04cXwF8G3iHY3z9Urw/j8ClyhsnjrcS2Vv/J/8NLxT+/zqBTkcxU/cfEkyEAu3kmjAAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-box-edit{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEg4QfHjM1QAAAGRJREFUWMNjXLhsJcNAAiaGAQYsDAwM/+lsJ+OgCwGsLqMB+D8o08CoA0YdMOqAUQewDFQdMBoFIyoN/B/U7YFRB7DQIc7xyo9GwbBMA4xDqhxgISH1klXbDYk0QOseEeOgDgEAIS0JQleje6IAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-freehand-draw{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADTElEQVRYCeWWTWwMYRjH/88721X1lZJIGxJxcEE4OOiBgzjXWh8TJKR76kWacOBGxdEJIdk4VChZI/phidRBHMRRIr7DSUiaSCRFRM3u88gz+o7Z6bBTdjmYZPf9eJ55fv/5zzvvDPC/H9QsA66Olo9Ga+/MdR+Ljm2/KQIULsz9FqItGdOfJKLhApLgVkiSCGODjWit7QpKWy+TNrFeXvzKVUT8NiTVaIgDcbiCFJ7GiT8WkARXAdYBK0Lbhi/CenArRNskuM7/tgNp4ArQ42dwjf3WY5gWTqC7O/NbNn2Xkfw/YwdSw/We14HP2IEZwX+y9cZ9SH0LmgFP7UCz4KkENBNeV0Cz4b8U8DfgKiDxMWwUXETqLvJpCQpXZfawbzS7t9v5pL19cHBwfja7YA0y/lyCM0+E5hv5+piZXwKYcF23as+37bTXsQVqgkL0p/34fHR7DcBtbetFsBmGDwMOJCggYG55yw7dMlk6DuC1Bdu2RsCU9TYWQq2IoGbsreZ5NzvEqfSBsIsIy8OTbcdgiRHeh4o8AFAEwDakbY2AaCCpH7V9aGhoUUUy3UyVbkPYFuYLDlUZH8XBpwxkK0Dbgxg5HcVi0ent7a0RULMIozaHBSMfF9b2SzdutFcFB2FkwMIJOG6qfteXOa1nHZ48tyefuwyfT9s6wtzZ3t7eZse2DR2I228TtHXzuWCx9g8MtK5cuHCZTH4tiHEOa4xFngvTyS8f35d6enomiCi4/foEXBkZaQuukChL4FYA2Whd7YcC4gEdW3CpdL3LtGAVCVYJywEyTpAuJKeMOKXZs/Bw947C50KhUFOG4cwz35cjWNBlHGeD53n3xsfHP/T19U1qciggar8Fa4I3PHobIotBWBtc2hSiChyZxVzM53Pv7FVH6Tp3uVy+g0r1ImD2GjIrQGYIxjnfuXTZGICS5k/bBwJoubwEFX4TLah9EXomJGMA3za+f9913Yl4TnzsDQ+vE6YTZOjHh4ngibstt1pzQwd04F0bPStEBpXqRoBeQ/AKghfBnOEKgS+Q7z91Xfdz/HGKg8Ox7z8iYD9z6wqTkZFgnvhMGP9VZ2or1XVkPM9z0mytSfVsHa1RLBZbLoyNzUnK+ydz3wC6I9x+lwbngwAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-poly-draw{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEjglo9eZgwAAAc5JREFUWMPt1zFrU1EUB/DfS4OmVTGDIChCP4BgnQXRxVHqIJUupp9AB8VBQcRBQUXIB9DWQoMRiXZzcnQSA34A7aAuHSJKkgo2LvfBrU3aJnlYkBy4vHcP557zP/9z3r33JdXa647N0kHSZd5Nn0rSxc8G3cXp85sMcnZZ8vge3osZ+l3vB8CWFA0iL14t79h210swAjACMAIwAjACkB90D/8/GchI9ve4nPwTBh5E9ws7OepzGWb9EddSn51Op9ZstadSg4VK1UKlKkmSDSMLALewiuNh/hVJq71Wxttmqz0dG88vPc+MgWP4grvYG3SLOBrZFFFrttqPe4HIDxh4GSei+98iSlusuYopXEAjBtEPA3tQwUpwluAbDm4TPJUz+BTW9l2Ce6G7L0X/Bw8D3T/7SKKIDzHg7QCcxjvcQAEtXAnrrg/RP0/DKPbqgcN4iVOR7gcO4dcQgRuoh7HSqwlP4n20m63jJu5n8MkWMYfP3UowhzdR8FU8w9iQwevBdyq3/27CMRzAE5yLuvsRLg+ZcR1nJ8YL81HWJUzGAPaFZwe/Q5MdyYDyNHgjzO90YyGHtVDncuiJchaHw8R4oREFV5qdiVmYLM3OgD9k5209/atmIAAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-point-draw{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEiERGWPELgAAA4RJREFUWMO1lr1uG1cQhb9ztdRSP7AF1QxgwKlcuZSqRC9gWUUUINWqTh5AnaFOnVPEteQmRuhCURqWsSqqc9IolREXdEvQBElxtdw7KURSFEVKu4w8wAKLxdw9Z+bMnRmZGXfZ29//II8th4WwGVNyIoQLYB5vxA9Caq04iUd9A+7ZlsNC2I7TdSd2hZXMJKlnTqp9jtl/GBaqoyQ0noFKpUIzBicYYc+DEFpxkglc4oVJa5gvDn8v1xV2irG3FM4NSVwjUKlUaMcpJhCGmSEJQ6QGD8M5WnHCd8+f3QCXpPLx8WNwv0j6Bm9FMK7FJ3WBE+R/2t7c/GBmFvSBrzRTCsyTDjXrxUgEMtpxynJYmJoBJ4VAybwVARgvL7Oik0okCodnKpVKX7P0leiVMb0VvbJT+upznK4vh0GIeQwwQStJkHQD3MwsCALTJRG7Qrdrj5m/djgYaIa0hlkRdJk26XEgC9txurccBtVW3IudBImmZuACUP+ZlIDBt9FKcubYNTcAH/X0RYM1E7utJPlqe+uZzPxUcEkiSS4sTT95n15Mud0xWC0o2PAWOCdK3KYZlFxfM+tHOcnMzNr1es18ug+cgsVjP4yBU/Ppfrter1m/+l0+zYygML1xRVHU7TSb1cSzBzoBzszsH+AMdJJ49jrNZjWKou6wBnwOzcyndBpNbuueURR1Dw8Pq35p9cc5p/Dy9Dypt7jXrtdGwQECS9NPhr6Gq6txUzNigE6zydLK6lTw12/KT4FGFEUfJX2YJNONq5tVs4ODA7sD/DnwJ/BoADZuE3tHFs12dna6d4C/BI6AlbyzI8ii2TTw12/KK33gb2cdXsNZoAntbZC2SeO4c9592k/5eNQbiwvFd1kJuFGwLJr1wSPg/SwpvyFBHufOeXcFeAlE97U/uCxOY+P3b+Bn4B3Q+L8EdJfD4a+/AbC4UBzPxiPg3wlHZquB28Cn2IuR9x3gr3uV4DbwfvSDOvi4uFA8BDZmIRHkjHpS9Ht9iRqd8+5G3g05mAGcQbsdiX5QJ428G7Kygo8XYdb1/K4NWVmjzkNge2sz84bs+ELmpDDLtqWsNZBXgvmw8CTtpWVMT7x5YWBjLARnwZfKQNYN2U2LPvrh+5nBt7c2M2/It9bArCTKR8eZN+SJ13AScPnoODeRdqNenH+wul5w2gUr2WUjMFAt8bZ/0axX/wNnv4H8vTFb1QAAAABJRU5ErkJggg==\");}.bk-root .bk-tool-icon-poly-edit{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gELFi46qJmxxAAABV9JREFUWMOdl19vFFUYxn9n9u9sCyylUIzWUoMQBAWCMdEEIt6xIRQSLIEKtvHe6AcA4yeQb7CAUNJy0daLeomJN8SEULAC2kBBapBKoLvbmdl/c14vdmY7u91tF95kknPOnHmf95znPc97Ro2OTeBbdjFDT3c32ZxVHUOE9kSMB0/m6ExuoJn1H+ur6Y+OTfD50SMN5168OgrAlyf7CfuD+z7+iDs3p8hkLUQ0iFQ/yFl5Nm/qonfHVva+s32Zw9GxCYILsZ08tpNfBhbs+1YN4OH9+7huGdECSBVfqUosbsllfmauBqiR+cCNwOr7AEo8pPHJnymXykhg5fUWjoQpl0vVvhZhbSzGoUOHqgBlt6B6uruj2Zy1E9jo0fhfeyL2x4Mnc8VErK0KUEOB64JSyptfG4RSytsJjUJVxw2lsFy3urL9nx1Qd25ObctkrVMi+jQivd7U2ZyV/3Hzpq7h3h1b/7p9Y0o8v8rwAbTWrGpSocN/FGDlbAI0Rl23PCBan0Ok158H9Ipwzi25A/Mzc9Gl/BYx/E4kYqC1NKRARNAaDCNUM27Z+Zr+ouXs0q4+LSLBHPYCFkTkC6uU39kwCdsS7WRKmaYUiAhdnZ3MPX2K4+QjQI+C94A93rMzm8ltMwyDeDzWjMZeEb2pYQDdW3vITU2jtUZ5QThOPgm8C7wP7J15OPsBsB3oWpGnVWisCeDS1VHj4vBI92+/3tgB7Ab2AruAXiDBK5oIOkhtkEYRNRuJhObrd8Dl9ewf4D5wG7hVLpen29vb5wzD+BrkbBMaL3d1dk5nsrnlFDTTFWAWmAZueWD3gCemGde2k2fw1Al1YXhEvjozoO49eczdqekrWmsc2zlrmvEKOGoW1GUjFLqSk2KpJrCLwyMCPAP+BO54QL8DM6YZX/ClsP9YnwKkXnIBP4jdIpJRpdJTCYdMwwi98KU0Hjc/dDILNyUcwTCWdOSMJ0TRmBktGRhLugu0xyLk7CIqVNm+0bGJptl1YXikD0grpY4Rjc4a8Fbgdab/6OGbAJeCUuyJnnHmZH9pbSyGuBXV8NUwlUpR1EWyixmSyTWEwqGlJ2Swbo2JXbAAfgDGgGQA9I1A9t1tlq0AxrXxn0ilUpw4fhQqYkH/sT41OTnJJwf2s6FjI5mshdYa7bqVR2uezr9MJmJt14FvGrh/O9D+e6UkM/xyCuCqEKCYnJyUTKFQrZDHjxzGshwWLQcRsOz8Hi85P23id0ug/XilAMLBmm4tPGdoaKjSH5+oAGrhwvBI9SjZTn4QSK9yenoD7dlrExPoJlXW8G8ytpNHxRKk02lGxsdRKFwXLNvx5yY94HQLGhGk4LFCYQSqaE0AwWM1eOoEbR0dKBSW7bC4mKuffxs4D/wCLKwQQPAUzIkslfp6cVomROWSolh0GjldAM4nzDi2k9/i5UAzC9aKfwNJ3zgJg9YEvN6+C7SHgKm69+sD7RfNnKTTaZRPQfAut4oFV//IS7gkcB34VlVo8kGzphlfB+DU+TfNGBpZtRastvrvARJmfMF28ge9sc2B9/PNnCilMIDwK6y8/ow/Ai4kvILTljAXvDvEvrqKSUs60KolzPjBxspavQD2tKqCAGF/Ba+xE/Wbilu54wZV8NEKF5fXzQHl/bh4hUsE0WAXSlDMYcQSrQXgCmsTseXHsJkNnjqBFGwKJaHsKlxtUHYVhbLCzr1kaOA4bcn1y1Swmb+iLpJKpVrfgdpfsiVVCYcgluwgnU7jEgJ4s5UkLFtWYyHyEg0/N1q1tmQH+YXnAMFr97Nmv3p+0QsHQRsF8qpBOE5+rb9Nkaj50tVQKjqh4OU3GNL/1/So3vuUgbAAAAAASUVORK5CYII=\");}.bk-root .bk-tool-icon-line-edit{background-image:url(\"data:image/png;base64,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\");}'},\n function _(o,r,e,t,b){t(),e.root=\"bk-root\",e.menu_icon=\"bk-menu-icon\",e.context_menu=\"bk-context-menu\",e.horizontal=\"bk-horizontal\",e.vertical=\"bk-vertical\",e.divider=\"bk-divider\",e.active=\"bk-active\",e.menu=\"bk-menu\",e.above=\"bk-above\",e.below=\"bk-below\",e.caret=\"bk-caret\",e.down=\"bk-down\",e.up=\"bk-up\",e.left=\"bk-left\",e.right=\"bk-right\",e.default=\".bk-root .bk-menu-icon{width:28px;height:28px;background-size:60%;background-color:transparent;background-repeat:no-repeat;background-position:center center;}.bk-root .bk-context-menu{position:absolute;display:inline-flex;display:-webkit-inline-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;width:auto;height:auto;z-index:100;cursor:pointer;font-size:12px;background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);}.bk-root .bk-context-menu.bk-horizontal{flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-context-menu.bk-vertical{flex-direction:column;-webkit-flex-direction:column;}.bk-root .bk-context-menu > .bk-divider{cursor:default;overflow:hidden;background-color:#e5e5e5;}.bk-root .bk-context-menu.bk-horizontal > .bk-divider{width:1px;margin:5px 0;}.bk-root .bk-context-menu.bk-vertical > .bk-divider{height:1px;margin:0 5px;}.bk-root .bk-context-menu > :not(.bk-divider){border:1px solid transparent;}.bk-root .bk-context-menu > :not(.bk-divider).bk-active{border-color:#26aae1;}.bk-root .bk-context-menu > :not(.bk-divider):hover{background-color:#f9f9f9;}.bk-root .bk-context-menu.bk-horizontal > :not(.bk-divider):first-child{border-top-left-radius:4px;border-bottom-left-radius:4px;}.bk-root .bk-context-menu.bk-horizontal > :not(.bk-divider):last-child{border-top-right-radius:4px;border-bottom-right-radius:4px;}.bk-root .bk-context-menu.bk-vertical > :not(.bk-divider):first-child{border-top-left-radius:4px;border-top-right-radius:4px;}.bk-root .bk-context-menu.bk-vertical > :not(.bk-divider):last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;}.bk-root .bk-menu{position:absolute;left:0;width:100%;z-index:100;cursor:pointer;font-size:12px;background-color:#fff;border:1px solid #ccc;border-radius:4px;box-shadow:0 6px 12px rgba(0, 0, 0, 0.175);}.bk-root .bk-menu.bk-above{bottom:100%;}.bk-root .bk-menu.bk-below{top:100%;}.bk-root .bk-menu > .bk-divider{height:1px;margin:7.5px 0;overflow:hidden;background-color:#e5e5e5;}.bk-root .bk-menu > :not(.bk-divider){padding:6px 12px;}.bk-root .bk-menu > :not(.bk-divider):hover,.bk-root .bk-menu > :not(.bk-divider).bk-active{background-color:#e6e6e6;}.bk-root .bk-caret{display:inline-block;vertical-align:middle;width:0;height:0;margin:0 5px;}.bk-root .bk-caret.bk-down{border-top:4px solid;}.bk-root .bk-caret.bk-up{border-bottom:4px solid;}.bk-root .bk-caret.bk-down,.bk-root .bk-caret.bk-up{border-right:4px solid transparent;border-left:4px solid transparent;}.bk-root .bk-caret.bk-left{border-right:4px solid;}.bk-root .bk-caret.bk-right{border-left:4px solid;}.bk-root .bk-caret.bk-left,.bk-root .bk-caret.bk-right{border-top:4px solid transparent;border-bottom:4px solid transparent;}\"},\n function _(t,e,i,n,s){n();const o=t(1),l=t(43),h=t(245),d=o.__importStar(t(243));class r{constructor(t,e={}){this.items=t,this.options=e,this.el=l.div(),this._open=!1,this._item_click=t=>{var e;null===(e=this.items[t])||void 0===e||e.handler(),this.hide()},this._on_mousedown=t=>{var e,i;const{target:n}=t;n instanceof Node&&this.el.contains(n)||(null===(i=(e=this.options).prevent_hide)||void 0===i?void 0:i.call(e,t))||this.hide()},this._on_keydown=t=>{t.keyCode==l.Keys.Esc&&this.hide()},this._on_blur=()=>{this.hide()},l.undisplay(this.el)}get is_open(){return this._open}get can_open(){return 0!=this.items.length}remove(){l.remove(this.el),this._unlisten()}_listen(){document.addEventListener(\"mousedown\",this._on_mousedown),document.addEventListener(\"keydown\",this._on_keydown),window.addEventListener(\"blur\",this._on_blur)}_unlisten(){document.removeEventListener(\"mousedown\",this._on_mousedown),document.removeEventListener(\"keydown\",this._on_keydown),window.removeEventListener(\"blur\",this._on_blur)}_position(t){const e=this.el.parentElement;if(null!=e){const i=e.getBoundingClientRect();this.el.style.left=null!=t.left?t.left-i.left+\"px\":\"\",this.el.style.top=null!=t.top?t.top-i.top+\"px\":\"\",this.el.style.right=null!=t.right?i.right-t.right+\"px\":\"\",this.el.style.bottom=null!=t.bottom?i.bottom-t.bottom+\"px\":\"\"}}render(){var t,e;l.empty(this.el,!0);const i=null!==(t=this.options.orientation)&&void 0!==t?t:\"vertical\";l.classes(this.el).add(\"bk-context-menu\",`bk-${i}`);for(const[t,i]of h.enumerate(this.items)){let n;if(null==t)n=l.div({class:d.divider});else{if(null!=t.if&&!t.if())continue;{const i=null!=t.icon?l.div({class:[\"bk-menu-icon\",t.icon]}):null;n=l.div({class:(null===(e=t.active)||void 0===e?void 0:e.call(t))?\"bk-active\":null,title:t.tooltip},i,t.label)}}n.addEventListener(\"click\",(()=>this._item_click(i))),this.el.appendChild(n)}}show(t){if(0!=this.items.length&&!this._open){if(this.render(),0==this.el.children.length)return;this._position(null!=t?t:{left:0,top:0}),l.display(this.el),this._listen(),this._open=!0}}hide(){this._open&&(this._open=!1,this._unlisten(),l.undisplay(this.el))}toggle(t){this._open?this.hide():this.show(t)}}i.ContextMenu=r,r.__name__=\"ContextMenu\"},\n function _(n,e,o,t,r){t();const f=n(9);function*i(n,e){const o=n.length;if(e>o)return;const t=f.range(e);for(yield t.map((e=>n[e]));;){let r;for(const n of f.reversed(f.range(e)))if(t[n]!=n+o-e){r=n;break}if(null==r)return;t[r]+=1;for(const n of f.range(r+1,e))t[n]=t[n-1]+1;yield t.map((e=>n[e]))}}o.enumerate=function*(n){let e=0;for(const o of n)yield[o,e++]},o.combinations=i,o.subsets=function*(n){for(const e of f.range(n.length+1))yield*i(n,e)}},\n function _(t,e,i,n,o){n();const s=t(1),c=t(238),l=s.__importStar(t(241)),a=t(43);class _ extends c.ButtonToolButtonView{render(){super.render(),a.classes(this.el).toggle(l.active,this.model.active)}_clicked(){const{active:t}=this.model;this.model.active=!t}}i.OnOffButtonView=_,_.__name__=\"OnOffButtonView\"},\n function _(t,e,o,n,s){n();const i=t(238),c=t(246);class l extends i.ButtonToolView{}o.InspectToolView=l,l.__name__=\"InspectToolView\";class _ extends i.ButtonTool{constructor(t){super(t),this.event_type=\"move\"}static init_InspectTool(){this.prototype.button_view=c.OnOffButtonView,this.define((({Boolean:t})=>({toggleable:[t,!0]}))),this.override({active:!0})}}o.InspectTool=_,_.__name__=\"InspectTool\",_.init_InspectTool()},\n function _(t,o,e,i,s){i();const l=t(1),n=t(19),a=t(43),r=t(122),c=t(240),_=t(20),u=t(9),h=t(13),v=t(8),p=t(249),d=t(99),b=t(53),g=t(236),f=t(237),m=t(251),w=t(252),y=t(247),T=l.__importStar(t(241)),z=T,B=l.__importStar(t(253)),x=B;class L extends b.Model{constructor(t){super(t)}static init_ToolbarViewModel(){this.define((({Boolean:t,Nullable:o})=>({_visible:[o(t),null],autohide:[t,!1]})))}get visible(){return!this.autohide||null!=this._visible&&this._visible}}e.ToolbarViewModel=L,L.__name__=\"ToolbarViewModel\",L.init_ToolbarViewModel();class M extends c.DOMView{constructor(){super(...arguments),this.layout={bbox:new d.BBox}}initialize(){super.initialize(),this._tool_button_views=new Map,this._toolbar_view_model=new L({autohide:this.model.autohide})}async lazy_initialize(){await super.lazy_initialize(),await this._build_tool_button_views()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.tools.change,(async()=>{await this._build_tool_button_views(),this.render()})),this.connect(this.model.properties.autohide.change,(()=>{this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change()})),this.connect(this._toolbar_view_model.properties._visible.change,(()=>this._on_visible_change()))}styles(){return[...super.styles(),T.default,B.default]}remove(){r.remove_views(this._tool_button_views),super.remove()}async _build_tool_button_views(){const t=null!=this.model._proxied_tools?this.model._proxied_tools:this.model.tools;await r.build_views(this._tool_button_views,t,{parent:this},(t=>t.button_view))}set_visibility(t){t!=this._toolbar_view_model._visible&&(this._toolbar_view_model._visible=t)}_on_visible_change(){const t=this._toolbar_view_model.visible,o=z.toolbar_hidden;this.el.classList.contains(o)&&t?this.el.classList.remove(o):t||this.el.classList.add(o)}render(){if(a.empty(this.el),this.el.classList.add(z.toolbar),this.el.classList.add(z[this.model.toolbar_location]),this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change(),null!=this.model.logo){const t=\"grey\"===this.model.logo?x.grey:null,o=a.a({href:\"https://bokeh.org/\",target:\"_blank\",class:[x.logo,x.logo_small,t]});this.el.appendChild(o)}for(const[,t]of this._tool_button_views)t.render();const t=[],o=t=>this._tool_button_views.get(t).el,{gestures:e}=this.model;for(const i of h.values(e))t.push(i.tools.map(o));t.push(this.model.actions.map(o)),t.push(this.model.inspectors.filter((t=>t.toggleable)).map(o));for(const o of t)if(0!==o.length){const t=a.div({class:z.button_bar},o);this.el.appendChild(t)}}update_layout(){}update_position(){}after_layout(){this._has_finished=!0}export(t,o=!0){const e=\"png\"==t?\"canvas\":\"svg\",i=new p.CanvasLayer(e,o);return i.resize(0,0),i}}function V(){return{pan:{tools:[],active:null},scroll:{tools:[],active:null},pinch:{tools:[],active:null},tap:{tools:[],active:null},doubletap:{tools:[],active:null},press:{tools:[],active:null},pressup:{tools:[],active:null},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}}}e.ToolbarBaseView=M,M.__name__=\"ToolbarBaseView\";class S extends b.Model{constructor(t){super(t)}static init_ToolbarBase(){this.prototype.default_view=M,this.define((({Boolean:t,Array:o,Ref:e,Nullable:i})=>({tools:[o(e(g.Tool)),[]],logo:[i(_.Logo),\"normal\"],autohide:[t,!1]}))),this.internal((({Array:t,Struct:o,Ref:e,Nullable:i})=>{const s=o({tools:t(e(f.GestureTool)),active:i(e(g.Tool))});return{gestures:[o({pan:s,scroll:s,pinch:s,tap:s,doubletap:s,press:s,pressup:s,rotate:s,move:s,multi:s}),V],actions:[t(e(m.ActionTool)),[]],inspectors:[t(e(y.InspectTool)),[]],help:[t(e(w.HelpTool)),[]],toolbar_location:[_.Location,\"right\"]}}))}initialize(){super.initialize(),this._init_tools()}_init_tools(){const t=function(t,o){if(t.length!=o.length)return!0;const e=new Set(o.map((t=>t.id)));return u.some(t,(t=>!e.has(t.id)))},o=this.tools.filter((t=>t instanceof y.InspectTool));t(this.inspectors,o)&&(this.inspectors=o);const e=this.tools.filter((t=>t instanceof w.HelpTool));t(this.help,e)&&(this.help=e);const i=this.tools.filter((t=>t instanceof m.ActionTool));t(this.actions,i)&&(this.actions=i);const s=(t,o)=>{t in this.gestures||n.logger.warn(`Toolbar: unknown event type '${t}' for tool: ${o}`)},l={pan:{tools:[],active:null},scroll:{tools:[],active:null},pinch:{tools:[],active:null},tap:{tools:[],active:null},doubletap:{tools:[],active:null},press:{tools:[],active:null},pressup:{tools:[],active:null},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}};for(const t of this.tools)if(t instanceof f.GestureTool&&t.event_type)if(v.isString(t.event_type))l[t.event_type].tools.push(t),s(t.event_type,t);else{l.multi.tools.push(t);for(const o of t.event_type)s(o,t)}for(const o of Object.keys(l)){const e=this.gestures[o];t(e.tools,l[o].tools)&&(e.tools=l[o].tools),e.active&&u.every(e.tools,(t=>t.id!=e.active.id))&&(e.active=null)}}get horizontal(){return\"above\"===this.toolbar_location||\"below\"===this.toolbar_location}get vertical(){return\"left\"===this.toolbar_location||\"right\"===this.toolbar_location}_active_change(t){const{event_type:o}=t;if(null==o)return;const e=v.isString(o)?[o]:o;for(const o of e)if(t.active){const e=this.gestures[o].active;null!=e&&t!=e&&(n.logger.debug(`Toolbar: deactivating tool: ${e} for event type '${o}'`),e.active=!1),this.gestures[o].active=t,n.logger.debug(`Toolbar: activating tool: ${t} for event type '${o}'`)}else this.gestures[o].active=null}}e.ToolbarBase=S,S.__name__=\"ToolbarBase\",S.init_ToolbarBase()},\n function _(e,t,i,n,s){n();const o=e(250),a=e(99),r=e(43);function h(e){!function(e){void 0===e.lineDash&&Object.defineProperty(e,\"lineDash\",{get:()=>e.getLineDash(),set:t=>e.setLineDash(t)})}(e),function(e){e.setImageSmoothingEnabled=t=>{e.imageSmoothingEnabled=t,e.mozImageSmoothingEnabled=t,e.oImageSmoothingEnabled=t,e.webkitImageSmoothingEnabled=t,e.msImageSmoothingEnabled=t},e.getImageSmoothingEnabled=()=>{const t=e.imageSmoothingEnabled;return null==t||t}}(e),function(e){e.ellipse||(e.ellipse=function(t,i,n,s,o,a,r,h=!1){const l=.551784;e.translate(t,i),e.rotate(o);let c=n,g=s;h&&(c=-n,g=-s),e.moveTo(-c,0),e.bezierCurveTo(-c,g*l,-c*l,g,0,g),e.bezierCurveTo(c*l,g,c,g*l,c,0),e.bezierCurveTo(c,-g*l,c*l,-g,0,-g),e.bezierCurveTo(-c*l,-g,-c,-g*l,-c,0),e.rotate(-o),e.translate(-t,-i)})}(e)}const l={position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"};class c{constructor(e,t){switch(this.backend=e,this.hidpi=t,this.pixel_ratio=1,this.bbox=new a.BBox,e){case\"webgl\":case\"canvas\":{this._el=this._canvas=r.canvas({style:l});const e=this.canvas.getContext(\"2d\");if(null==e)throw new Error(\"unable to obtain 2D rendering context\");this._ctx=e,t&&(this.pixel_ratio=devicePixelRatio);break}case\"svg\":{const e=new o.SVGRenderingContext2D;this._ctx=e,this._canvas=e.get_svg(),this._el=r.div({style:l},this._canvas);break}}h(this._ctx)}get canvas(){return this._canvas}get ctx(){return this._ctx}get el(){return this._el}resize(e,t){this.bbox=new a.BBox({left:0,top:0,width:e,height:t});const i=this._ctx instanceof o.SVGRenderingContext2D?this._ctx:this.canvas;i.width=e*this.pixel_ratio,i.height=t*this.pixel_ratio}prepare(){const{ctx:e,hidpi:t,pixel_ratio:i}=this;e.save(),t&&(e.scale(i,i),e.translate(.5,.5)),this.clear()}clear(){const{x:e,y:t,width:i,height:n}=this.bbox;this.ctx.clearRect(e,t,i,n)}finish(){this.ctx.restore()}to_blob(){const{_canvas:e}=this;if(e instanceof HTMLCanvasElement)return null!=e.msToBlob?Promise.resolve(e.msToBlob()):new Promise(((t,i)=>{e.toBlob((e=>null!=e?t(e):i()),\"image/png\")}));{const e=this._ctx.get_serialized_svg(!0),t=new Blob([e],{type:\"image/svg+xml\"});return Promise.resolve(t)}}}i.CanvasLayer=c,c.__name__=\"CanvasLayer\"},\n function _(t,e,i,s,n){s();const r=t(168),a=t(8),o=t(43);function l(t){if(!t)throw new Error(\"cannot create a random attribute name for an undefined object\");const e=\"ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz\";let i=\"\";do{i=\"\";for(let t=0;t<12;t++)i+=e[Math.floor(Math.random()*e.length)]}while(t[i]);return i}function h(t){var e;const i={left:\"start\",right:\"end\",center:\"middle\",start:\"start\",end:\"end\"};return null!==(e=i[t])&&void 0!==e?e:i.start}function c(t){var e;const i={alphabetic:\"alphabetic\",hanging:\"hanging\",top:\"text-before-edge\",bottom:\"text-after-edge\",middle:\"central\"};return null!==(e=i[t])&&void 0!==e?e:i.alphabetic}const _=function(t,e){const i=new Map,s=t.split(\",\");e=null!=e?e:10;for(let t=0;t<s.length;t+=2){const n=\"&\"+s[t+1]+\";\",r=parseInt(s[t],e);i.set(n,\"&#\"+r+\";\")}return i.set(\"\\\\xa0\",\" \"),i}(\"50,nbsp,51,iexcl,52,cent,53,pound,54,curren,55,yen,56,brvbar,57,sect,58,uml,59,copy,5a,ordf,5b,laquo,5c,not,5d,shy,5e,reg,5f,macr,5g,deg,5h,plusmn,5i,sup2,5j,sup3,5k,acute,5l,micro,5m,para,5n,middot,5o,cedil,5p,sup1,5q,ordm,5r,raquo,5s,frac14,5t,frac12,5u,frac34,5v,iquest,60,Agrave,61,Aacute,62,Acirc,63,Atilde,64,Auml,65,Aring,66,AElig,67,Ccedil,68,Egrave,69,Eacute,6a,Ecirc,6b,Euml,6c,Igrave,6d,Iacute,6e,Icirc,6f,Iuml,6g,ETH,6h,Ntilde,6i,Ograve,6j,Oacute,6k,Ocirc,6l,Otilde,6m,Ouml,6n,times,6o,Oslash,6p,Ugrave,6q,Uacute,6r,Ucirc,6s,Uuml,6t,Yacute,6u,THORN,6v,szlig,70,agrave,71,aacute,72,acirc,73,atilde,74,auml,75,aring,76,aelig,77,ccedil,78,egrave,79,eacute,7a,ecirc,7b,euml,7c,igrave,7d,iacute,7e,icirc,7f,iuml,7g,eth,7h,ntilde,7i,ograve,7j,oacute,7k,ocirc,7l,otilde,7m,ouml,7n,divide,7o,oslash,7p,ugrave,7q,uacute,7r,ucirc,7s,uuml,7t,yacute,7u,thorn,7v,yuml,ci,fnof,sh,Alpha,si,Beta,sj,Gamma,sk,Delta,sl,Epsilon,sm,Zeta,sn,Eta,so,Theta,sp,Iota,sq,Kappa,sr,Lambda,ss,Mu,st,Nu,su,Xi,sv,Omicron,t0,Pi,t1,Rho,t3,Sigma,t4,Tau,t5,Upsilon,t6,Phi,t7,Chi,t8,Psi,t9,Omega,th,alpha,ti,beta,tj,gamma,tk,delta,tl,epsilon,tm,zeta,tn,eta,to,theta,tp,iota,tq,kappa,tr,lambda,ts,mu,tt,nu,tu,xi,tv,omicron,u0,pi,u1,rho,u2,sigmaf,u3,sigma,u4,tau,u5,upsilon,u6,phi,u7,chi,u8,psi,u9,omega,uh,thetasym,ui,upsih,um,piv,812,bull,816,hellip,81i,prime,81j,Prime,81u,oline,824,frasl,88o,weierp,88h,image,88s,real,892,trade,89l,alefsym,8cg,larr,8ch,uarr,8ci,rarr,8cj,darr,8ck,harr,8dl,crarr,8eg,lArr,8eh,uArr,8ei,rArr,8ej,dArr,8ek,hArr,8g0,forall,8g2,part,8g3,exist,8g5,empty,8g7,nabla,8g8,isin,8g9,notin,8gb,ni,8gf,prod,8gh,sum,8gi,minus,8gn,lowast,8gq,radic,8gt,prop,8gu,infin,8h0,ang,8h7,and,8h8,or,8h9,cap,8ha,cup,8hb,int,8hk,there4,8hs,sim,8i5,cong,8i8,asymp,8j0,ne,8j1,equiv,8j4,le,8j5,ge,8k2,sub,8k3,sup,8k4,nsub,8k6,sube,8k7,supe,8kl,oplus,8kn,otimes,8l5,perp,8m5,sdot,8o8,lceil,8o9,rceil,8oa,lfloor,8ob,rfloor,8p9,lang,8pa,rang,9ea,loz,9j0,spades,9j3,clubs,9j5,hearts,9j6,diams,ai,OElig,aj,oelig,b0,Scaron,b1,scaron,bo,Yuml,m6,circ,ms,tilde,802,ensp,803,emsp,809,thinsp,80c,zwnj,80d,zwj,80e,lrm,80f,rlm,80j,ndash,80k,mdash,80o,lsquo,80p,rsquo,80q,sbquo,80s,ldquo,80t,rdquo,80u,bdquo,810,dagger,811,Dagger,81g,permil,81p,lsaquo,81q,rsaquo,85c,euro\",32),u={strokeStyle:{svgAttr:\"stroke\",canvas:\"#000000\",svg:\"none\",apply:\"stroke\"},fillStyle:{svgAttr:\"fill\",canvas:\"#000000\",svg:null,apply:\"fill\"},lineCap:{svgAttr:\"stroke-linecap\",canvas:\"butt\",svg:\"butt\",apply:\"stroke\"},lineJoin:{svgAttr:\"stroke-linejoin\",canvas:\"miter\",svg:\"miter\",apply:\"stroke\"},miterLimit:{svgAttr:\"stroke-miterlimit\",canvas:10,svg:4,apply:\"stroke\"},lineWidth:{svgAttr:\"stroke-width\",canvas:1,svg:1,apply:\"stroke\"},globalAlpha:{svgAttr:\"opacity\",canvas:1,svg:1,apply:\"fill stroke\"},font:{canvas:\"10px sans-serif\"},shadowColor:{canvas:\"#000000\"},shadowOffsetX:{canvas:0},shadowOffsetY:{canvas:0},shadowBlur:{canvas:0},textAlign:{canvas:\"start\"},textBaseline:{canvas:\"alphabetic\"},lineDash:{svgAttr:\"stroke-dasharray\",canvas:[],svg:null,apply:\"stroke\"}};class p{constructor(t,e){this.__root=t,this.__ctx=e}addColorStop(t,e){const i=this.__ctx.__createElement(\"stop\");if(i.setAttribute(\"offset\",`${t}`),-1!==e.indexOf(\"rgba\")){const t=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(e),[,s,n,r,a]=t;i.setAttribute(\"stop-color\",`rgb(${s},${n},${r})`),i.setAttribute(\"stop-opacity\",a)}else i.setAttribute(\"stop-color\",e);this.__root.appendChild(i)}}p.__name__=\"CanvasGradient\";class d{constructor(t,e){this.__root=t,this.__ctx=e}}d.__name__=\"CanvasPattern\";class m{constructor(t){var e,i,s;this.__currentPosition=null,this._transform=new r.AffineTransform,this._clip_path=null,this.__document=null!==(e=null==t?void 0:t.document)&&void 0!==e?e:document,(null==t?void 0:t.ctx)?this.__ctx=t.ctx:(this.__canvas=this.__document.createElement(\"canvas\"),this.__ctx=this.__canvas.getContext(\"2d\")),this.__setDefaultStyles(),this.__stack=[],this.__root=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"svg\"),this.__root.setAttribute(\"version\",\"1.1\"),this.__root.setAttribute(\"xmlns\",\"http://www.w3.org/2000/svg\"),this.__root.setAttributeNS(\"http://www.w3.org/2000/xmlns/\",\"xmlns:xlink\",\"http://www.w3.org/1999/xlink\"),this.width=null!==(i=null==t?void 0:t.width)&&void 0!==i?i:500,this.height=null!==(s=null==t?void 0:t.height)&&void 0!==s?s:500,this.__ids={},this.__defs=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this.__root.appendChild(this.__defs)}get canvas(){return this}get width(){return this._width}set width(t){this._width=t,this.__root.setAttribute(\"width\",`${t}`)}get height(){return this._height}set height(t){this._height=t,this.__root.setAttribute(\"height\",`${t}`)}__createElement(t,e={},i=!1){const s=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",t);i&&(s.setAttribute(\"fill\",\"none\"),s.setAttribute(\"stroke\",\"none\"));const n=Object.keys(e);for(const t of n)s.setAttribute(t,`${e[t]}`);return s}__setDefaultStyles(){const t=Object.keys(u),e=this;for(let i=0;i<t.length;i++){const s=t[i];e[s]=u[s].canvas}}__applyStyleState(t){const e=Object.keys(t),i=this;for(let s=0;s<e.length;s++){const n=e[s];i[n]=t[n]}}__getStyleState(){const t=Object.keys(u),e={};for(let i=0;i<t.length;i++){const s=t[i];e[s]=this[s]}return e}__applyStyleToCurrentElement(t){var e;const i=this.__currentElement,s=Object.keys(u);for(let n=0;n<s.length;n++){const r=u[s[n]],o=this[s[n]];if(null===(e=r.apply)||void 0===e?void 0:e.includes(t))if(o instanceof d){for(const t of[...o.__ctx.__defs.childNodes])if(t instanceof Element){const e=t.getAttribute(\"id\");this.__ids[e]=e,this.__defs.appendChild(t)}const t=o.__root.getAttribute(\"id\");i.setAttribute(r.apply,`url(#${t})`)}else if(o instanceof p){const t=o.__root.getAttribute(\"id\");i.setAttribute(r.apply,`url(#${t})`)}else if(r.svg!==o)if(\"stroke\"!==r.svgAttr&&\"fill\"!==r.svgAttr||!a.isString(o)||-1===o.indexOf(\"rgba\")){let e=r.svgAttr;if(\"globalAlpha\"===s[n]&&(e=t+\"-\"+r.svgAttr,i.getAttribute(e)))continue;i.setAttribute(e,`${o}`)}else{const t=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(o),[,e,s,n,a]=t;i.setAttribute(r.svgAttr,`rgb(${e},${s},${n})`);let l=parseFloat(a);const h=this.globalAlpha;null!=h&&(l*=h),i.setAttribute(r.svgAttr+\"-opacity\",`${l}`)}}}get_serialized_svg(t=!1){let e=(new XMLSerializer).serializeToString(this.__root);if(/xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg\".+xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg/gi.test(e)&&(e=e.replace('xmlns=\"http://www.w3.org/2000/svg','xmlns:xlink=\"http://www.w3.org/1999/xlink')),t)for(const[t,i]of _){const s=new RegExp(t,\"gi\");s.test(e)&&(e=e.replace(s,i))}return e}get_svg(){return this.__root}save(){this.__stack.push({transform:this._transform,clip_path:this._clip_path,attributes:this.__getStyleState()}),this._transform=this._transform.clone()}restore(){if(0==this.__stack.length)return;const{transform:t,clip_path:e,attributes:i}=this.__stack.pop();this._transform=t,this._clip_path=e,this.__applyStyleState(i)}_apply_transform(t,e=this._transform){e.is_identity||t.setAttribute(\"transform\",e.toString())}scale(t,e){isFinite(t)&&(null==e||isFinite(e))&&this._transform.scale(t,null!=e?e:t)}rotate(t){isFinite(t)&&this._transform.rotate(t)}translate(t,e){isFinite(t+e)&&this._transform.translate(t,e)}transform(t,e,i,s,n,r){isFinite(t+e+i+s+n+r)&&this._transform.transform(t,e,i,s,n,r)}beginPath(){this.__currentDefaultPath=\"\",this.__currentPosition=null;const t=this.__createElement(\"path\",{},!0);this.__root.appendChild(t),this.__currentElement=t}__applyCurrentDefaultPath(){const t=this.__currentElement;\"path\"===t.nodeName?t.setAttribute(\"d\",this.__currentDefaultPath):console.error(\"Attempted to apply path command to node\",t.nodeName)}__addPathCommand(t,e,i){const s=this.__currentDefaultPath?\" \":\"\";this.__currentDefaultPath+=s+i,this.__currentPosition={x:t,y:e}}get _hasCurrentDefaultPath(){return!!this.__currentDefaultPath}moveTo(t,e){if(!isFinite(t+e))return;\"path\"!==this.__currentElement.nodeName&&this.beginPath();const[i,s]=this._transform.apply(t,e);this.__addPathCommand(i,s,`M ${i} ${s}`)}closePath(){this._hasCurrentDefaultPath&&this.__addPathCommand(NaN,NaN,\"Z\")}lineTo(t,e){if(isFinite(t+e))if(this._hasCurrentDefaultPath){const[i,s]=this._transform.apply(t,e);this.__addPathCommand(i,s,`L ${i} ${s}`)}else this.moveTo(t,e)}bezierCurveTo(t,e,i,s,n,r){if(!isFinite(t+e+i+s+n+r))return;const[a,o]=this._transform.apply(n,r),[l,h]=this._transform.apply(t,e),[c,_]=this._transform.apply(i,s);this.__addPathCommand(a,o,`C ${l} ${h} ${c} ${_} ${a} ${o}`)}quadraticCurveTo(t,e,i,s){if(!isFinite(t+e+i+s))return;const[n,r]=this._transform.apply(i,s),[a,o]=this._transform.apply(t,e);this.__addPathCommand(n,r,`Q ${a} ${o} ${n} ${r}`)}arcTo(t,e,i,s,n){if(!isFinite(t+e+i+s+n))return;if(null==this.__currentPosition)return;const r=this.__currentPosition.x,a=this.__currentPosition.y;if(n<0)throw new Error(\"IndexSizeError: The radius provided (\"+n+\") is negative.\");if(r===t&&a===e||t===i&&e===s||0===n)return void this.lineTo(t,e);function o([t,e]){const i=Math.sqrt(t**2+e**2);return[t/i,e/i]}const l=o([r-t,a-e]),h=o([i-t,s-e]);if(l[0]*h[1]==l[1]*h[0])return void this.lineTo(t,e);const c=l[0]*h[0]+l[1]*h[1],_=Math.acos(Math.abs(c)),u=o([l[0]+h[0],l[1]+h[1]]),p=n/Math.sin(_/2),d=t+p*u[0],m=e+p*u[1],f=[-l[1],l[0]],g=[h[1],-h[0]];function v(t){const e=t[0];return t[1]>=0?Math.acos(e):-Math.acos(e)}const w=v(f),b=v(g);this.lineTo(d+f[0]*n,m+f[1]*n),this.arc(d,m,n,w,b)}stroke(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"fill\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"stroke\"),null!=this._clip_path&&this.__currentElement.setAttribute(\"clip-path\",this._clip_path)}fill(t){if(\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"stroke\"),\"none\"!=this.__currentElement.getAttribute(\"fill\")){const t=this.__currentElement.cloneNode(!0);this.__root.appendChild(t),this.__currentElement=t}this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"fill\"),null!=t&&this.__currentElement.setAttribute(\"fill-rule\",t),null!=this._clip_path&&this.__currentElement.setAttribute(\"clip-path\",this._clip_path)}rect(t,e,i,s){isFinite(t+e+i+s)&&(\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+s),this.lineTo(t,e+s),this.lineTo(t,e))}fillRect(t,e,i,s){isFinite(t+e+i+s)&&(this.beginPath(),this.rect(t,e,i,s),this.fill())}strokeRect(t,e,i,s){isFinite(t+e+i+s)&&(this.beginPath(),this.rect(t,e,i,s),this.stroke())}__clearCanvas(){o.empty(this.__defs),o.empty(this.__root),this.__root.appendChild(this.__defs),this.__currentElement=this.__root}clearRect(t,e,i,s){if(!isFinite(t+e+i+s))return;if(0===t&&0===e&&i===this.width&&s===this.height)return void this.__clearCanvas();const n=this.__createElement(\"rect\",{x:t,y:e,width:i,height:s,fill:\"#FFFFFF\"},!0);this._apply_transform(n),this.__root.appendChild(n)}createLinearGradient(t,e,i,s){if(!isFinite(t+e+i+s))throw new Error(\"The provided double value is non-finite\");const[n,r]=this._transform.apply(t,e),[a,o]=this._transform.apply(i,s),h=this.__createElement(\"linearGradient\",{id:l(this.__ids),x1:`${n}px`,x2:`${a}px`,y1:`${r}px`,y2:`${o}px`,gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(h),new p(h,this)}createRadialGradient(t,e,i,s,n,r){if(!isFinite(t+e+i+s+n+r))throw new Error(\"The provided double value is non-finite\");const[a,o]=this._transform.apply(t,e),[h,c]=this._transform.apply(s,n),_=this.__createElement(\"radialGradient\",{id:l(this.__ids),cx:`${h}px`,cy:`${c}px`,r:`${r}px`,fx:`${a}px`,fy:`${o}px`,gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(_),new p(_,this)}__parseFont(){var t,e,i,s,n;const r=/^\\s*(?=(?:(?:[-a-z]+\\s*){0,2}(italic|oblique))?)(?=(?:(?:[-a-z]+\\s*){0,2}(small-caps))?)(?=(?:(?:[-a-z]+\\s*){0,2}(bold(?:er)?|lighter|[1-9]00))?)(?:(?:normal|\\1|\\2|\\3)\\s*){0,3}((?:xx?-)?(?:small|large)|medium|smaller|larger|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx]))(?:\\s*\\/\\s*(normal|[.\\d]+(?:\\%|in|[cem]m|ex|p[ctx])))?\\s*([-,\\'\\\"\\sa-z0-9]+?)\\s*$/i.exec(this.font),a={style:null!==(t=r[1])&&void 0!==t?t:\"normal\",size:null!==(e=r[4])&&void 0!==e?e:\"10px\",family:null!==(i=r[6])&&void 0!==i?i:\"sans-serif\",weight:null!==(s=r[3])&&void 0!==s?s:\"normal\",decoration:null!==(n=r[2])&&void 0!==n?n:\"normal\"};return\"underline\"===this.__fontUnderline&&(a.decoration=\"underline\"),null!=this.__fontHref&&(a.href=this.__fontHref),a}__wrapTextLink(t,e){if(t.href){const i=this.__createElement(\"a\");return i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.href),i.appendChild(e),i}return e}__applyText(t,e,i,s){const n=this.__parseFont(),r=this.__createElement(\"text\",{\"font-family\":n.family,\"font-size\":n.size,\"font-style\":n.style,\"font-weight\":n.weight,\"text-decoration\":n.decoration,x:e,y:i,\"text-anchor\":h(this.textAlign),\"dominant-baseline\":c(this.textBaseline)},!0);r.appendChild(this.__document.createTextNode(t)),this._apply_transform(r),this.__currentElement=r,this.__applyStyleToCurrentElement(s),this.__root.appendChild(this.__wrapTextLink(n,r))}fillText(t,e,i){null!=t&&isFinite(e+i)&&this.__applyText(t,e,i,\"fill\")}strokeText(t,e,i){null!=t&&isFinite(e+i)&&this.__applyText(t,e,i,\"stroke\")}measureText(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)}arc(t,e,i,s,n,r=!1){if(!isFinite(t+e+i+s+n))return;if(s===n)return;(s%=2*Math.PI)===(n%=2*Math.PI)&&(n=(n+2*Math.PI-.001*(r?-1:1))%(2*Math.PI));const a=t+i*Math.cos(n),o=e+i*Math.sin(n),l=t+i*Math.cos(s),h=e+i*Math.sin(s),c=r?0:1;let _=0,u=n-s;u<0&&(u+=2*Math.PI),_=r?u>Math.PI?0:1:u>Math.PI?1:0,this.lineTo(l,h);const p=i,d=i,[m,f]=this._transform.apply(a,o);this.__addPathCommand(m,f,`A ${p} ${d} 0 ${_} ${c} ${m} ${f}`)}clip(){const t=this.__createElement(\"clipPath\"),e=l(this.__ids);this.__applyCurrentDefaultPath(),t.setAttribute(\"id\",e),t.appendChild(this.__currentElement),this.__defs.appendChild(t),this._clip_path=`url(#${e})`}drawImage(t,...e){let i,s,n,r,a,o,l,h;if(2==e.length){if([i,s]=e,!isFinite(i+s))return;a=0,o=0,l=t.width,h=t.height,n=l,r=h}else if(4==e.length){if([i,s,n,r]=e,!isFinite(i+s+n+r))return;a=0,o=0,l=t.width,h=t.height}else{if(8!==e.length)throw new Error(`Inavlid number of arguments passed to drawImage: ${arguments.length}`);if([a,o,l,h,i,s,n,r]=e,!isFinite(a+o+l+h+i+s+n+r))return}const c=this.__root,_=this._transform.clone().translate(i,s);if(t instanceof m||t instanceof SVGSVGElement){const e=(t instanceof SVGSVGElement?t:t.get_svg()).cloneNode(!0);let i;_.is_identity?i=c:(i=this.__createElement(\"g\"),this._apply_transform(i,_),c.appendChild(i));for(const t of[...e.childNodes])if(t instanceof SVGDefsElement){for(const e of[...t.childNodes])if(e instanceof Element){const t=e.getAttribute(\"id\");this.__ids[t]=t,this.__defs.appendChild(e)}}else i.appendChild(t)}else if(t instanceof HTMLImageElement||t instanceof SVGImageElement){const e=this.__createElement(\"image\");if(e.setAttribute(\"width\",`${n}`),e.setAttribute(\"height\",`${r}`),e.setAttribute(\"preserveAspectRatio\",\"none\"),a||o||l!==t.width||h!==t.height){const e=this.__document.createElement(\"canvas\");e.width=n,e.height=r;e.getContext(\"2d\").drawImage(t,a,o,l,h,0,0,n,r),t=e}this._apply_transform(e,_);const i=t instanceof HTMLCanvasElement?t.toDataURL():t.getAttribute(\"src\");e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",i),c.appendChild(e)}else if(t instanceof HTMLCanvasElement){const e=this.__createElement(\"image\");e.setAttribute(\"width\",`${n}`),e.setAttribute(\"height\",`${r}`),e.setAttribute(\"preserveAspectRatio\",\"none\");const i=this.__document.createElement(\"canvas\");i.width=n,i.height=r;const s=i.getContext(\"2d\");s.imageSmoothingEnabled=!1,s.drawImage(t,a,o,l,h,0,0,n,r),t=i,this._apply_transform(e,_),e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.toDataURL()),c.appendChild(e)}}createPattern(t,e){const i=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"pattern\"),s=l(this.__ids);if(i.setAttribute(\"id\",s),i.setAttribute(\"width\",`${this._to_number(t.width)}`),i.setAttribute(\"height\",`${this._to_number(t.height)}`),i.setAttribute(\"patternUnits\",\"userSpaceOnUse\"),t instanceof HTMLCanvasElement||t instanceof HTMLImageElement||t instanceof SVGImageElement){const e=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\"),s=t instanceof HTMLCanvasElement?t.toDataURL():t.getAttribute(\"src\");e.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",s),i.appendChild(e),this.__defs.appendChild(i)}else if(t instanceof m){for(const e of[...t.__root.childNodes])e instanceof SVGDefsElement||i.appendChild(e);this.__defs.appendChild(i)}else{if(!(t instanceof SVGSVGElement))throw new Error(\"unsupported\");for(const e of[...t.childNodes])e instanceof SVGDefsElement||i.appendChild(e);this.__defs.appendChild(i)}return new d(i,this)}setLineDash(t){t&&t.length>0?this.lineDash=t.join(\",\"):this.lineDash=null}_to_number(t){return a.isNumber(t)?t:t.baseVal.value}}i.SVGRenderingContext2D=m,m.__name__=\"SVGRenderingContext2D\"},\n function _(o,t,n,i,e){i();const s=o(238),c=o(15);class l extends s.ButtonToolButtonView{_clicked(){this.model.do.emit(void 0)}}n.ActionToolButtonView=l,l.__name__=\"ActionToolButtonView\";class _ extends s.ButtonToolView{connect_signals(){super.connect_signals(),this.connect(this.model.do,(o=>this.doit(o)))}}n.ActionToolView=_,_.__name__=\"ActionToolView\";class d extends s.ButtonTool{constructor(o){super(o),this.button_view=l,this.do=new c.Signal(this,\"do\")}}n.ActionTool=d,d.__name__=\"ActionTool\"},\n function _(o,e,t,i,l){i();const s=o(251),n=o(242);class r extends s.ActionToolView{doit(){window.open(this.model.redirect)}}t.HelpToolView=r,r.__name__=\"HelpToolView\";class c extends s.ActionTool{constructor(o){super(o),this.tool_name=\"Help\",this.icon=n.tool_icon_help}static init_HelpTool(){this.prototype.default_view=r,this.define((({String:o})=>({redirect:[o,\"https://docs.bokeh.org/en/latest/docs/user_guide/tools.html\"]}))),this.override({description:\"Click the question mark to learn more about Bokeh plot tools.\"}),this.register_alias(\"help\",(()=>new c))}}t.HelpTool=c,c.__name__=\"HelpTool\",c.init_HelpTool()},\n function _(o,l,g,A,r){A(),g.root=\"bk-root\",g.logo=\"bk-logo\",g.grey=\"bk-grey\",g.logo_small=\"bk-logo-small\",g.logo_notebook=\"bk-logo-notebook\",g.default=\".bk-root .bk-logo{margin:5px;position:relative;display:block;background-repeat:no-repeat;}.bk-root .bk-logo.bk-grey{filter:url(\\\"data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>#grayscale\\\");filter:gray;-webkit-filter:grayscale(100%);}.bk-root .bk-logo-small{width:20px;height:20px;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAALEgAACxIB0t1+/AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTNui8sowAAAOkSURBVDiNjZRtaJVlGMd/1/08zzln5zjP1LWcU9N0NkN8m2CYjpgQYQXqSs0I84OLIC0hkEKoPtiH3gmKoiJDU7QpLgoLjLIQCpEsNJ1vqUOdO7ppbuec5+V+rj4ctwzd8IIbbi6u+8f1539dt3A78eXC7QizUF7gyV1fD1Yqg4JWz84yffhm0qkFqBogB9rM8tZdtwVsPUhWhGcFJngGeWrPzHm5oaMmkfEg1usvLFyc8jLRqDOMru7AyC8saQr7GG7f5fvDeH7Ej8CM66nIF+8yngt6HWaKh7k49Soy9nXurCi1o3qUbS3zWfrYeQDTB/Qj6kX6Ybhw4B+bOYoLKCC9H3Nu/leUTZ1JdRWkkn2ldcCamzrcf47KKXdAJllSlxAOkRgyHsGC/zRday5Qld9DyoM4/q/rUoy/CXh3jzOu3bHUVZeU+DEn8FInkPBFlu3+nW3Nw0mk6vCDiWg8CeJaxEwuHS3+z5RgY+YBR6V1Z1nxSOfoaPa4LASWxxdNp+VWTk7+4vzaou8v8PN+xo+KY2xsw6une2frhw05CTYOmQvsEhjhWjn0bmXPjpE1+kplmmkP3suftwTubK9Vq22qKmrBhpY4jvd5afdRA3wGjFAgcnTK2s4hY0/GPNIb0nErGMCRxWOOX64Z8RAC4oCXdklmEvcL8o0BfkNK4lUg9HTl+oPlQxdNo3Mg4Nv175e/1LDGzZen30MEjRUtmXSfiTVu1kK8W4txyV6BMKlbgk3lMwYCiusNy9fVfvvwMxv8Ynl6vxoByANLTWplvuj/nF9m2+PDtt1eiHPBr1oIfhCChQMBw6Aw0UulqTKZdfVvfG7VcfIqLG9bcldL/+pdWTLxLUy8Qq38heUIjh4XlzZxzQm19lLFlr8vdQ97rjZVOLf8nclzckbcD4wxXMidpX30sFd37Fv/GtwwhzhxGVAprjbg0gCAEeIgwCZyTV2Z1REEW8O4py0wsjeloKoMr6iCY6dP92H6Vw/oTyICIthibxjm/DfN9lVz8IqtqKYLUXfoKVMVQVVJOElGjrnnUt9T9wbgp8AyYKaGlqingHZU/uG2NTZSVqwHQTWkx9hxjkpWDaCg6Ckj5qebgBVbT3V3NNXMSiWSDdGV3hrtzla7J+duwPOToIg42ChPQOQjspnSlp1V+Gjdged7+8UN5CRAV7a5EdFNwCjEaBR27b3W890TE7g24NAP/mMDXRWrGoFPQI9ls/MWO2dWFAar/xcOIImbbpA3zgAAAABJRU5ErkJggg==);}.bk-root .bk-logo-notebook{display:inline-block;vertical-align:middle;margin-right:5px;}\"},\n function _(t,e,i,s,l){s();const o=t(1),n=t(40),h=t(20),a=t(43),r=o.__importStar(t(255)),c=r;class d extends n.AnnotationView{initialize(){super.initialize(),this.el=a.div({class:c.tooltip}),a.undisplay(this.el),this.plot_view.canvas_view.add_overlay(this.el)}remove(){a.remove(this.el),super.remove()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.content.change,(()=>this.render())),this.connect(this.model.properties.position.change,(()=>this._reposition()))}styles(){return[...super.styles(),r.default]}render(){this.model.visible||a.undisplay(this.el),super.render()}_render(){const{content:t}=this.model;null!=t?(a.empty(this.el),a.classes(this.el).toggle(\"bk-tooltip-custom\",this.model.custom),this.el.appendChild(t),this.model.show_arrow&&this.el.classList.add(c.tooltip_arrow)):a.undisplay(this.el)}_reposition(){const{position:t}=this.model;if(null==t)return void a.undisplay(this.el);const[e,i]=t,s=(()=>{const t=this.parent.layout.bbox.relative(),{attachment:s}=this.model;switch(s){case\"horizontal\":return e<t.hcenter?\"right\":\"left\";case\"vertical\":return i<t.vcenter?\"below\":\"above\";default:return s}})();let l;this.el.classList.remove(c.right),this.el.classList.remove(c.left),this.el.classList.remove(c.above),this.el.classList.remove(c.below),a.display(this.el);let o=null,n=null;switch(s){case\"right\":this.el.classList.add(c.left),o=e+(this.el.offsetWidth-this.el.clientWidth)+10,l=i-this.el.offsetHeight/2;break;case\"left\":this.el.classList.add(c.right),n=this.plot_view.layout.bbox.width-e+10,l=i-this.el.offsetHeight/2;break;case\"below\":this.el.classList.add(c.above),l=i+(this.el.offsetHeight-this.el.clientHeight)+10,o=Math.round(e-this.el.offsetWidth/2);break;case\"above\":this.el.classList.add(c.below),l=i-this.el.offsetHeight-10,o=Math.round(e-this.el.offsetWidth/2)}this.el.style.top=`${l}px`,this.el.style.left=null!=o?`${o}px`:\"auto\",this.el.style.right=null!=n?`${n}px`:\"auto\"}}i.TooltipView=d,d.__name__=\"TooltipView\";class p extends n.Annotation{constructor(t){super(t)}static init_Tooltip(){this.prototype.default_view=d,this.define((({Boolean:t})=>({attachment:[h.TooltipAttachment,\"horizontal\"],inner_only:[t,!0],show_arrow:[t,!0]}))),this.internal((({Boolean:t,Number:e,Tuple:i,Ref:s,Nullable:l})=>({position:[l(i(e,e)),null],content:[s(HTMLElement),()=>a.div()],custom:[t]}))),this.override({level:\"overlay\"})}clear(){this.position=null}}i.Tooltip=p,p.__name__=\"Tooltip\",p.init_Tooltip()},\n function _(o,t,r,e,l){e(),r.root=\"bk-root\",r.tooltip=\"bk-tooltip\",r.left=\"bk-left\",r.tooltip_arrow=\"bk-tooltip-arrow\",r.right=\"bk-right\",r.above=\"bk-above\",r.below=\"bk-below\",r.tooltip_row_label=\"bk-tooltip-row-label\",r.tooltip_row_value=\"bk-tooltip-row-value\",r.tooltip_color_block=\"bk-tooltip-color-block\",r.default='.bk-root{}.bk-root .bk-tooltip{font-weight:300;font-size:12px;position:absolute;padding:5px;border:1px solid #e5e5e5;color:#2f2f2f;background-color:white;pointer-events:none;opacity:0.95;z-index:100;}.bk-root .bk-tooltip > div:not(:first-child){margin-top:5px;border-top:#e5e5e5 1px dashed;}.bk-root .bk-tooltip.bk-left.bk-tooltip-arrow::before{position:absolute;margin:-7px 0 0 0;top:50%;width:0;height:0;border-style:solid;border-width:7px 0 7px 0;border-color:transparent;content:\" \";display:block;left:-10px;border-right-width:10px;border-right-color:#909599;}.bk-root .bk-tooltip.bk-left::before{left:-10px;border-right-width:10px;border-right-color:#909599;}.bk-root .bk-tooltip.bk-right.bk-tooltip-arrow::after{position:absolute;margin:-7px 0 0 0;top:50%;width:0;height:0;border-style:solid;border-width:7px 0 7px 0;border-color:transparent;content:\" \";display:block;right:-10px;border-left-width:10px;border-left-color:#909599;}.bk-root .bk-tooltip.bk-right::after{right:-10px;border-left-width:10px;border-left-color:#909599;}.bk-root .bk-tooltip.bk-above::before{position:absolute;margin:0 0 0 -7px;left:50%;width:0;height:0;border-style:solid;border-width:0 7px 0 7px;border-color:transparent;content:\" \";display:block;top:-10px;border-bottom-width:10px;border-bottom-color:#909599;}.bk-root .bk-tooltip.bk-below::after{position:absolute;margin:0 0 0 -7px;left:50%;width:0;height:0;border-style:solid;border-width:0 7px 0 7px;border-color:transparent;content:\" \";display:block;bottom:-10px;border-top-width:10px;border-top-color:#909599;}.bk-root .bk-tooltip-row-label{text-align:right;color:#26aae1;}.bk-root .bk-tooltip-row-value{color:default;}.bk-root .bk-tooltip-color-block{width:12px;height:12px;margin-left:5px;margin-right:5px;outline:#dddddd solid 1px;display:inline-block;}'},\n function _(e,t,i,s,r){s();const a=e(135),h=e(133),_=e(122),l=e(48);class o extends a.UpperLowerView{async lazy_initialize(){await super.lazy_initialize();const{lower_head:e,upper_head:t}=this.model;null!=e&&(this.lower_head=await _.build_view(e,{parent:this})),null!=t&&(this.upper_head=await _.build_view(t,{parent:this}))}set_data(e){var t,i;super.set_data(e),null===(t=this.lower_head)||void 0===t||t.set_data(e),null===(i=this.upper_head)||void 0===i||i.set_data(e)}paint(e){if(this.visuals.line.doit)for(let t=0,i=this._lower_sx.length;t<i;t++)this.visuals.line.set_vectorize(e,t),e.beginPath(),e.moveTo(this._lower_sx[t],this._lower_sy[t]),e.lineTo(this._upper_sx[t],this._upper_sy[t]),e.stroke();const t=\"height\"==this.model.dimension?0:Math.PI/2;if(null!=this.lower_head)for(let i=0,s=this._lower_sx.length;i<s;i++)e.save(),e.translate(this._lower_sx[i],this._lower_sy[i]),e.rotate(t+Math.PI),this.lower_head.render(e,i),e.restore();if(null!=this.upper_head)for(let i=0,s=this._upper_sx.length;i<s;i++)e.save(),e.translate(this._upper_sx[i],this._upper_sy[i]),e.rotate(t),this.upper_head.render(e,i),e.restore()}}i.WhiskerView=o,o.__name__=\"WhiskerView\";class n extends a.UpperLower{constructor(e){super(e)}static init_Whisker(){this.prototype.default_view=o,this.mixins(l.LineVector),this.define((({Ref:e,Nullable:t})=>({lower_head:[t(e(h.ArrowHead)),()=>new h.TeeHead({size:10})],upper_head:[t(e(h.ArrowHead)),()=>new h.TeeHead({size:10})]}))),this.override({level:\"underlay\"})}}i.Whisker=n,n.__name__=\"Whisker\",n.init_Whisker()},\n function _(n,o,t,u,e){u(),e(\"CustomJS\",n(258).CustomJS),e(\"OpenURL\",n(260).OpenURL)},\n function _(t,s,e,n,c){n();const u=t(259),i=t(13),a=t(34);class r extends u.Callback{constructor(t){super(t)}static init_CustomJS(){this.define((({Unknown:t,String:s,Dict:e})=>({args:[e(t),{}],code:[s,\"\"]})))}get names(){return i.keys(this.args)}get values(){return i.values(this.args)}get func(){const t=a.use_strict(this.code);return new Function(...this.names,\"cb_obj\",\"cb_data\",t)}execute(t,s={}){return this.func.apply(t,this.values.concat(t,s))}}e.CustomJS=r,r.__name__=\"CustomJS\",r.init_CustomJS()},\n function _(c,a,l,n,s){n();const e=c(53);class o extends e.Model{constructor(c){super(c)}}l.Callback=o,o.__name__=\"Callback\"},\n function _(e,t,n,i,o){i();const s=e(259),c=e(182),r=e(8);class a extends s.Callback{constructor(e){super(e)}static init_OpenURL(){this.define((({Boolean:e,String:t})=>({url:[t,\"http://\"],same_tab:[e,!1]})))}navigate(e){this.same_tab?window.location.href=e:window.open(e)}execute(e,{source:t}){const n=e=>{const n=c.replace_placeholders(this.url,t,e,void 0,void 0,encodeURI);if(!r.isString(n))throw new Error(\"HTML output is not supported in this context\");this.navigate(n)},{selected:i}=t;for(const e of i.indices)n(e);for(const e of i.line_indices)n(e)}}n.OpenURL=a,a.__name__=\"OpenURL\",a.init_OpenURL()},\n function _(a,n,e,r,s){r(),s(\"Canvas\",a(262).Canvas),s(\"CartesianFrame\",a(144).CartesianFrame)},\n function _(e,t,s,i,a){i();const l=e(14),n=e(240),r=e(19),o=e(43),h=e(20),_=e(13),c=e(263),d=e(99),p=e(249),v=(()=>{const e=document.createElement(\"canvas\"),t=e.getContext(\"webgl\",{premultipliedAlpha:!0});return null!=t?{canvas:e,gl:t}:void r.logger.trace(\"WebGL is not supported\")})(),u={position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"};class b extends n.DOMView{constructor(){super(...arguments),this.bbox=new d.BBox}initialize(){super.initialize(),\"webgl\"==this.model.output_backend&&(this.webgl=v),this.underlays_el=o.div({style:u}),this.primary=this.create_layer(),this.overlays=this.create_layer(),this.overlays_el=o.div({style:u}),this.events_el=o.div({class:\"bk-canvas-events\",style:u});const e=[this.underlays_el,this.primary.el,this.overlays.el,this.overlays_el,this.events_el];_.extend(this.el.style,u),o.append(this.el,...e),this.ui_event_bus=new c.UIEventBus(this)}remove(){this.ui_event_bus.destroy(),super.remove()}add_underlay(e){this.underlays_el.appendChild(e)}add_overlay(e){this.overlays_el.appendChild(e)}add_event(e){this.events_el.appendChild(e)}get pixel_ratio(){return this.primary.pixel_ratio}resize(e,t){this.bbox=new d.BBox({left:0,top:0,width:e,height:t}),this.primary.resize(e,t),this.overlays.resize(e,t)}prepare_webgl(e){const{webgl:t}=this;if(null!=t){const{width:s,height:i}=this.bbox;t.canvas.width=this.pixel_ratio*s,t.canvas.height=this.pixel_ratio*i;const{gl:a}=t;a.enable(a.SCISSOR_TEST);const[l,n,r,o]=e,{xview:h,yview:_}=this.bbox,c=h.compute(l),d=_.compute(n+o),p=this.pixel_ratio;a.scissor(p*c,p*d,p*r,p*o),a.enable(a.BLEND),a.blendFuncSeparate(a.SRC_ALPHA,a.ONE_MINUS_SRC_ALPHA,a.ONE_MINUS_DST_ALPHA,a.ONE),this._clear_webgl()}}blit_webgl(e){const{webgl:t}=this;if(null!=t){if(r.logger.debug(\"Blitting WebGL canvas\"),e.restore(),e.drawImage(t.canvas,0,0),e.save(),this.model.hidpi){const t=this.pixel_ratio;e.scale(t,t),e.translate(.5,.5)}this._clear_webgl()}}_clear_webgl(){const{webgl:e}=this;if(null!=e){const{gl:t,canvas:s}=e;t.viewport(0,0,s.width,s.height),t.clearColor(0,0,0,0),t.clear(t.COLOR_BUFFER_BIT|t.DEPTH_BUFFER_BIT)}}compose(){const e=this.create_layer(),{width:t,height:s}=this.bbox;return e.resize(t,s),e.ctx.drawImage(this.primary.canvas,0,0),e.ctx.drawImage(this.overlays.canvas,0,0),e}create_layer(){const{output_backend:e,hidpi:t}=this.model;return new p.CanvasLayer(e,t)}to_blob(){return this.compose().to_blob()}}s.CanvasView=b,b.__name__=\"CanvasView\";class g extends l.HasProps{constructor(e){super(e)}static init_Canvas(){this.prototype.default_view=b,this.internal((({Boolean:e})=>({hidpi:[e,!0],output_backend:[h.OutputBackend,\"canvas\"]})))}}s.Canvas=g,g.__name__=\"Canvas\",g.init_Canvas()},\n function _(t,e,s,n,i){n();const r=t(1),a=r.__importDefault(t(239)),_=t(15),h=t(19),o=t(43),l=r.__importStar(t(264)),c=t(265),p=t(9),u=t(8),v=t(27),d=t(244);class g{constructor(t){this.canvas_view=t,this.pan_start=new _.Signal(this,\"pan:start\"),this.pan=new _.Signal(this,\"pan\"),this.pan_end=new _.Signal(this,\"pan:end\"),this.pinch_start=new _.Signal(this,\"pinch:start\"),this.pinch=new _.Signal(this,\"pinch\"),this.pinch_end=new _.Signal(this,\"pinch:end\"),this.rotate_start=new _.Signal(this,\"rotate:start\"),this.rotate=new _.Signal(this,\"rotate\"),this.rotate_end=new _.Signal(this,\"rotate:end\"),this.tap=new _.Signal(this,\"tap\"),this.doubletap=new _.Signal(this,\"doubletap\"),this.press=new _.Signal(this,\"press\"),this.pressup=new _.Signal(this,\"pressup\"),this.move_enter=new _.Signal(this,\"move:enter\"),this.move=new _.Signal(this,\"move\"),this.move_exit=new _.Signal(this,\"move:exit\"),this.scroll=new _.Signal(this,\"scroll\"),this.keydown=new _.Signal(this,\"keydown\"),this.keyup=new _.Signal(this,\"keyup\"),this.hammer=new a.default(this.hit_area,{touchAction:\"auto\",inputClass:a.default.TouchMouseInput}),this._prev_move=null,this._curr_pan=null,this._curr_pinch=null,this._curr_rotate=null,this._configure_hammerjs(),this.hit_area.addEventListener(\"mousemove\",(t=>this._mouse_move(t))),this.hit_area.addEventListener(\"mouseenter\",(t=>this._mouse_enter(t))),this.hit_area.addEventListener(\"mouseleave\",(t=>this._mouse_exit(t))),this.hit_area.addEventListener(\"contextmenu\",(t=>this._context_menu(t))),this.hit_area.addEventListener(\"wheel\",(t=>this._mouse_wheel(t))),document.addEventListener(\"keydown\",this),document.addEventListener(\"keyup\",this),this.menu=new d.ContextMenu([],{prevent_hide:t=>2==t.button&&t.target==this.hit_area}),this.hit_area.appendChild(this.menu.el)}get hit_area(){return this.canvas_view.events_el}destroy(){this.menu.remove(),this.hammer.destroy(),document.removeEventListener(\"keydown\",this),document.removeEventListener(\"keyup\",this)}handleEvent(t){\"keydown\"==t.type?this._key_down(t):\"keyup\"==t.type&&this._key_up(t)}_configure_hammerjs(){this.hammer.get(\"doubletap\").recognizeWith(\"tap\"),this.hammer.get(\"tap\").requireFailure(\"doubletap\"),this.hammer.get(\"doubletap\").dropRequireFailure(\"tap\"),this.hammer.on(\"doubletap\",(t=>this._doubletap(t))),this.hammer.on(\"tap\",(t=>this._tap(t))),this.hammer.on(\"press\",(t=>this._press(t))),this.hammer.on(\"pressup\",(t=>this._pressup(t))),this.hammer.get(\"pan\").set({direction:a.default.DIRECTION_ALL}),this.hammer.on(\"panstart\",(t=>this._pan_start(t))),this.hammer.on(\"pan\",(t=>this._pan(t))),this.hammer.on(\"panend\",(t=>this._pan_end(t))),this.hammer.get(\"pinch\").set({enable:!0}),this.hammer.on(\"pinchstart\",(t=>this._pinch_start(t))),this.hammer.on(\"pinch\",(t=>this._pinch(t))),this.hammer.on(\"pinchend\",(t=>this._pinch_end(t))),this.hammer.get(\"rotate\").set({enable:!0}),this.hammer.on(\"rotatestart\",(t=>this._rotate_start(t))),this.hammer.on(\"rotate\",(t=>this._rotate(t))),this.hammer.on(\"rotateend\",(t=>this._rotate_end(t)))}register_tool(t){const e=t.model.event_type;null!=e&&(u.isString(e)?this._register_tool(t,e):e.forEach(((e,s)=>this._register_tool(t,e,s<1))))}_register_tool(t,e,s=!0){const n=t,{id:i}=n.model,r=t=>e=>{e.id==i&&t(e.e)},a=t=>e=>{t(e.e)};switch(e){case\"pan\":null!=n._pan_start&&n.connect(this.pan_start,r(n._pan_start.bind(n))),null!=n._pan&&n.connect(this.pan,r(n._pan.bind(n))),null!=n._pan_end&&n.connect(this.pan_end,r(n._pan_end.bind(n)));break;case\"pinch\":null!=n._pinch_start&&n.connect(this.pinch_start,r(n._pinch_start.bind(n))),null!=n._pinch&&n.connect(this.pinch,r(n._pinch.bind(n))),null!=n._pinch_end&&n.connect(this.pinch_end,r(n._pinch_end.bind(n)));break;case\"rotate\":null!=n._rotate_start&&n.connect(this.rotate_start,r(n._rotate_start.bind(n))),null!=n._rotate&&n.connect(this.rotate,r(n._rotate.bind(n))),null!=n._rotate_end&&n.connect(this.rotate_end,r(n._rotate_end.bind(n)));break;case\"move\":null!=n._move_enter&&n.connect(this.move_enter,r(n._move_enter.bind(n))),null!=n._move&&n.connect(this.move,r(n._move.bind(n))),null!=n._move_exit&&n.connect(this.move_exit,r(n._move_exit.bind(n)));break;case\"tap\":null!=n._tap&&n.connect(this.tap,r(n._tap.bind(n))),null!=n._doubletap&&n.connect(this.doubletap,r(n._doubletap.bind(n)));break;case\"press\":null!=n._press&&n.connect(this.press,r(n._press.bind(n))),null!=n._pressup&&n.connect(this.pressup,r(n._pressup.bind(n)));break;case\"scroll\":null!=n._scroll&&n.connect(this.scroll,r(n._scroll.bind(n)));break;default:throw new Error(`unsupported event_type: ${e}`)}s&&(null!=n._keydown&&n.connect(this.keydown,a(n._keydown.bind(n))),null!=n._keyup&&n.connect(this.keyup,a(n._keyup.bind(n))),v.is_mobile&&null!=n._scroll&&\"pinch\"==e&&(h.logger.debug(\"Registering scroll on touch screen\"),n.connect(this.scroll,r(n._scroll.bind(n)))))}_hit_test_renderers(t,e,s){var n;const i=t.get_renderer_views();for(const t of p.reversed(i))if(null===(n=t.interactive_hit)||void 0===n?void 0:n.call(t,e,s))return t;return null}set_cursor(t=\"default\"){this.hit_area.style.cursor=t}_hit_test_frame(t,e,s){return t.frame.bbox.contains(e,s)}_hit_test_canvas(t,e,s){return t.layout.bbox.contains(e,s)}_hit_test_plot(t,e){for(const s of this.canvas_view.plot_views)if(s.layout.bbox.relative().contains(t,e))return s;return null}_trigger(t,e,s){var n;const{sx:i,sy:r}=e,a=this._hit_test_plot(i,r),_=t=>{const[s,n]=[i,r];return Object.assign(Object.assign({},e),{sx:s,sy:n})};if(\"panstart\"==e.type||\"pan\"==e.type||\"panend\"==e.type){let n;if(\"panstart\"==e.type&&null!=a?(this._curr_pan={plot_view:a},n=a):\"pan\"==e.type&&null!=this._curr_pan?n=this._curr_pan.plot_view:\"panend\"==e.type&&null!=this._curr_pan?(n=this._curr_pan.plot_view,this._curr_pan=null):n=null,null!=n){const e=_();this.__trigger(n,t,e,s)}}else if(\"pinchstart\"==e.type||\"pinch\"==e.type||\"pinchend\"==e.type){let n;if(\"pinchstart\"==e.type&&null!=a?(this._curr_pinch={plot_view:a},n=a):\"pinch\"==e.type&&null!=this._curr_pinch?n=this._curr_pinch.plot_view:\"pinchend\"==e.type&&null!=this._curr_pinch?(n=this._curr_pinch.plot_view,this._curr_pinch=null):n=null,null!=n){const e=_();this.__trigger(n,t,e,s)}}else if(\"rotatestart\"==e.type||\"rotate\"==e.type||\"rotateend\"==e.type){let n;if(\"rotatestart\"==e.type&&null!=a?(this._curr_rotate={plot_view:a},n=a):\"rotate\"==e.type&&null!=this._curr_rotate?n=this._curr_rotate.plot_view:\"rotateend\"==e.type&&null!=this._curr_rotate?(n=this._curr_rotate.plot_view,this._curr_rotate=null):n=null,null!=n){const e=_();this.__trigger(n,t,e,s)}}else if(\"mouseenter\"==e.type||\"mousemove\"==e.type||\"mouseleave\"==e.type){const h=null===(n=this._prev_move)||void 0===n?void 0:n.plot_view;if(null!=h&&(\"mouseleave\"==e.type||h!=a)){const{sx:t,sy:e}=_();this.__trigger(h,this.move_exit,{type:\"mouseleave\",sx:t,sy:e,shiftKey:!1,ctrlKey:!1},s)}if(null!=a&&(\"mouseenter\"==e.type||h!=a)){const{sx:t,sy:e}=_();this.__trigger(a,this.move_enter,{type:\"mouseenter\",sx:t,sy:e,shiftKey:!1,ctrlKey:!1},s)}if(null!=a&&\"mousemove\"==e.type){const e=_();this.__trigger(a,t,e,s)}this._prev_move={sx:i,sy:r,plot_view:a}}else if(null!=a){const e=_();this.__trigger(a,t,e,s)}}__trigger(t,e,s,n){var i,r;const a=t.model.toolbar.gestures,_=e.name.split(\":\")[0],h=this._hit_test_renderers(t,s.sx,s.sy),o=this._hit_test_canvas(t,s.sx,s.sy);switch(_){case\"move\":{const n=a[_].active;null!=n&&this.trigger(e,s,n.id);const r=t.model.toolbar.inspectors.filter((t=>t.active));let l=\"default\";null!=h?(l=null!==(i=h.cursor(s.sx,s.sy))&&void 0!==i?i:l,p.is_empty(r)||(e=this.move_exit)):this._hit_test_frame(t,s.sx,s.sy)&&(p.is_empty(r)||(l=\"crosshair\")),this.set_cursor(l),t.set_toolbar_visibility(o),r.map((t=>this.trigger(e,s,t.id)));break}case\"tap\":{const{target:t}=n;if(null!=t&&t!=this.hit_area)return;null!=h&&null!=h.on_hit&&h.on_hit(s.sx,s.sy);const i=a[_].active;null!=i&&this.trigger(e,s,i.id);break}case\"doubletap\":{const t=null!==(r=a.doubletap.active)&&void 0!==r?r:a.tap.active;null!=t&&this.trigger(e,s,t.id);break}case\"scroll\":{const t=a[v.is_mobile?\"pinch\":\"scroll\"].active;null!=t&&(n.preventDefault(),n.stopPropagation(),this.trigger(e,s,t.id));break}case\"pan\":{const t=a[_].active;null!=t&&(n.preventDefault(),this.trigger(e,s,t.id));break}default:{const t=a[_].active;null!=t&&this.trigger(e,s,t.id)}}this._trigger_bokeh_event(t,s)}trigger(t,e,s=null){t.emit({id:s,e})}_trigger_bokeh_event(t,e){const s=(()=>{const{sx:s,sy:n}=e,i=t.frame.x_scale.invert(s),r=t.frame.y_scale.invert(n);switch(e.type){case\"wheel\":return new l.MouseWheel(s,n,i,r,e.delta);case\"mousemove\":return new l.MouseMove(s,n,i,r);case\"mouseenter\":return new l.MouseEnter(s,n,i,r);case\"mouseleave\":return new l.MouseLeave(s,n,i,r);case\"tap\":return new l.Tap(s,n,i,r);case\"doubletap\":return new l.DoubleTap(s,n,i,r);case\"press\":return new l.Press(s,n,i,r);case\"pressup\":return new l.PressUp(s,n,i,r);case\"pan\":return new l.Pan(s,n,i,r,e.deltaX,e.deltaY);case\"panstart\":return new l.PanStart(s,n,i,r);case\"panend\":return new l.PanEnd(s,n,i,r);case\"pinch\":return new l.Pinch(s,n,i,r,e.scale);case\"pinchstart\":return new l.PinchStart(s,n,i,r);case\"pinchend\":return new l.PinchEnd(s,n,i,r);case\"rotate\":return new l.Rotate(s,n,i,r,e.rotation);case\"rotatestart\":return new l.RotateStart(s,n,i,r);case\"rotateend\":return new l.RotateEnd(s,n,i,r);default:return}})();null!=s&&t.model.trigger_event(s)}_get_sxy(t){const{pageX:e,pageY:s}=function(t){return\"undefined\"!=typeof TouchEvent&&t instanceof TouchEvent}(t)?(0!=t.touches.length?t.touches:t.changedTouches)[0]:t,{left:n,top:i}=o.offset(this.hit_area);return{sx:e-n,sy:s-i}}_pan_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{deltaX:t.deltaX,deltaY:t.deltaY,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_pinch_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{scale:t.scale,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_rotate_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{rotation:t.rotation,shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_tap_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t.srcEvent)),{shiftKey:t.srcEvent.shiftKey,ctrlKey:t.srcEvent.ctrlKey})}_move_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t)),{shiftKey:t.shiftKey,ctrlKey:t.ctrlKey})}_scroll_event(t){return Object.assign(Object.assign({type:t.type},this._get_sxy(t)),{delta:c.getDeltaY(t),shiftKey:t.shiftKey,ctrlKey:t.ctrlKey})}_key_event(t){return{type:t.type,keyCode:t.keyCode}}_pan_start(t){const e=this._pan_event(t);e.sx-=t.deltaX,e.sy-=t.deltaY,this._trigger(this.pan_start,e,t.srcEvent)}_pan(t){this._trigger(this.pan,this._pan_event(t),t.srcEvent)}_pan_end(t){this._trigger(this.pan_end,this._pan_event(t),t.srcEvent)}_pinch_start(t){this._trigger(this.pinch_start,this._pinch_event(t),t.srcEvent)}_pinch(t){this._trigger(this.pinch,this._pinch_event(t),t.srcEvent)}_pinch_end(t){this._trigger(this.pinch_end,this._pinch_event(t),t.srcEvent)}_rotate_start(t){this._trigger(this.rotate_start,this._rotate_event(t),t.srcEvent)}_rotate(t){this._trigger(this.rotate,this._rotate_event(t),t.srcEvent)}_rotate_end(t){this._trigger(this.rotate_end,this._rotate_event(t),t.srcEvent)}_tap(t){this._trigger(this.tap,this._tap_event(t),t.srcEvent)}_doubletap(t){this._trigger(this.doubletap,this._tap_event(t),t.srcEvent)}_press(t){this._trigger(this.press,this._tap_event(t),t.srcEvent)}_pressup(t){this._trigger(this.pressup,this._tap_event(t),t.srcEvent)}_mouse_enter(t){this._trigger(this.move_enter,this._move_event(t),t)}_mouse_move(t){this._trigger(this.move,this._move_event(t),t)}_mouse_exit(t){this._trigger(this.move_exit,this._move_event(t),t)}_mouse_wheel(t){this._trigger(this.scroll,this._scroll_event(t),t)}_context_menu(t){!this.menu.is_open&&this.menu.can_open&&t.preventDefault();const{sx:e,sy:s}=this._get_sxy(t);this.menu.toggle({left:e,top:s})}_key_down(t){this.trigger(this.keydown,this._key_event(t))}_key_up(t){this.trigger(this.keyup,this._key_event(t))}}s.UIEventBus=g,g.__name__=\"UIEventBus\"},\n function _(e,t,s,n,_){n();var a=this&&this.__decorate||function(e,t,s,n){var _,a=arguments.length,o=a<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,s):n;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)o=Reflect.decorate(e,t,s,n);else for(var c=e.length-1;c>=0;c--)(_=e[c])&&(o=(a<3?_(o):a>3?_(t,s,o):_(t,s))||o);return a>3&&o&&Object.defineProperty(t,s,o),o};function o(e){return function(t){t.prototype.event_name=e}}class c{to_json(){const{event_name:e}=this;return{event_name:e,event_values:this._to_json()}}}s.BokehEvent=c,c.__name__=\"BokehEvent\";class r extends c{constructor(){super(...arguments),this.origin=null}_to_json(){return{model:this.origin}}}s.ModelEvent=r,r.__name__=\"ModelEvent\";let l=class extends c{_to_json(){return{}}};s.DocumentReady=l,l.__name__=\"DocumentReady\",s.DocumentReady=l=a([o(\"document_ready\")],l);let i=class extends r{};s.ButtonClick=i,i.__name__=\"ButtonClick\",s.ButtonClick=i=a([o(\"button_click\")],i);let u=class extends r{constructor(e){super(),this.item=e}_to_json(){const{item:e}=this;return Object.assign(Object.assign({},super._to_json()),{item:e})}};s.MenuItemClick=u,u.__name__=\"MenuItemClick\",s.MenuItemClick=u=a([o(\"menu_item_click\")],u);class d extends r{}s.UIEvent=d,d.__name__=\"UIEvent\";let h=class extends d{};s.LODStart=h,h.__name__=\"LODStart\",s.LODStart=h=a([o(\"lodstart\")],h);let m=class extends d{};s.LODEnd=m,m.__name__=\"LODEnd\",s.LODEnd=m=a([o(\"lodend\")],m);let x=class extends d{constructor(e,t){super(),this.geometry=e,this.final=t}_to_json(){const{geometry:e,final:t}=this;return Object.assign(Object.assign({},super._to_json()),{geometry:e,final:t})}};s.SelectionGeometry=x,x.__name__=\"SelectionGeometry\",s.SelectionGeometry=x=a([o(\"selectiongeometry\")],x);let p=class extends d{};s.Reset=p,p.__name__=\"Reset\",s.Reset=p=a([o(\"reset\")],p);class j extends d{constructor(e,t,s,n){super(),this.sx=e,this.sy=t,this.x=s,this.y=n}_to_json(){const{sx:e,sy:t,x:s,y:n}=this;return Object.assign(Object.assign({},super._to_json()),{sx:e,sy:t,x:s,y:n})}}s.PointEvent=j,j.__name__=\"PointEvent\";let y=class extends j{constructor(e,t,s,n,_,a){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.delta_x=_,this.delta_y=a}_to_json(){const{delta_x:e,delta_y:t}=this;return Object.assign(Object.assign({},super._to_json()),{delta_x:e,delta_y:t})}};s.Pan=y,y.__name__=\"Pan\",s.Pan=y=a([o(\"pan\")],y);let P=class extends j{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.scale=_}_to_json(){const{scale:e}=this;return Object.assign(Object.assign({},super._to_json()),{scale:e})}};s.Pinch=P,P.__name__=\"Pinch\",s.Pinch=P=a([o(\"pinch\")],P);let v=class extends j{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.rotation=_}_to_json(){const{rotation:e}=this;return Object.assign(Object.assign({},super._to_json()),{rotation:e})}};s.Rotate=v,v.__name__=\"Rotate\",s.Rotate=v=a([o(\"rotate\")],v);let g=class extends j{constructor(e,t,s,n,_){super(e,t,s,n),this.sx=e,this.sy=t,this.x=s,this.y=n,this.delta=_}_to_json(){const{delta:e}=this;return Object.assign(Object.assign({},super._to_json()),{delta:e})}};s.MouseWheel=g,g.__name__=\"MouseWheel\",s.MouseWheel=g=a([o(\"wheel\")],g);let E=class extends j{};s.MouseMove=E,E.__name__=\"MouseMove\",s.MouseMove=E=a([o(\"mousemove\")],E);let O=class extends j{};s.MouseEnter=O,O.__name__=\"MouseEnter\",s.MouseEnter=O=a([o(\"mouseenter\")],O);let b=class extends j{};s.MouseLeave=b,b.__name__=\"MouseLeave\",s.MouseLeave=b=a([o(\"mouseleave\")],b);let M=class extends j{};s.Tap=M,M.__name__=\"Tap\",s.Tap=M=a([o(\"tap\")],M);let R=class extends j{};s.DoubleTap=R,R.__name__=\"DoubleTap\",s.DoubleTap=R=a([o(\"doubletap\")],R);let f=class extends j{};s.Press=f,f.__name__=\"Press\",s.Press=f=a([o(\"press\")],f);let S=class extends j{};s.PressUp=S,S.__name__=\"PressUp\",s.PressUp=S=a([o(\"pressup\")],S);let D=class extends j{};s.PanStart=D,D.__name__=\"PanStart\",s.PanStart=D=a([o(\"panstart\")],D);let k=class extends j{};s.PanEnd=k,k.__name__=\"PanEnd\",s.PanEnd=k=a([o(\"panend\")],k);let L=class extends j{};s.PinchStart=L,L.__name__=\"PinchStart\",s.PinchStart=L=a([o(\"pinchstart\")],L);let C=class extends j{};s.PinchEnd=C,C.__name__=\"PinchEnd\",s.PinchEnd=C=a([o(\"pinchend\")],C);let T=class extends j{};s.RotateStart=T,T.__name__=\"RotateStart\",s.RotateStart=T=a([o(\"rotatestart\")],T);let B=class extends j{};s.RotateEnd=B,B.__name__=\"RotateEnd\",s.RotateEnd=B=a([o(\"rotateend\")],B)},\n function _(t,e,n,l,o){\n /*!\n * jQuery Mousewheel 3.1.13\n *\n * Copyright jQuery Foundation and other contributors\n * Released under the MIT license\n * http://jquery.org/license\n */\n function u(t){const e=getComputedStyle(t).fontSize;return null!=e?parseInt(e,10):null}l(),n.getDeltaY=function(t){let e=-t.deltaY;if(t.target instanceof HTMLElement)switch(t.deltaMode){case t.DOM_DELTA_LINE:e*=(n=t.target,null!==(a=null!==(o=u(null!==(l=n.offsetParent)&&void 0!==l?l:document.body))&&void 0!==o?o:u(n))&&void 0!==a?a:16);break;case t.DOM_DELTA_PAGE:e*=function(t){return t.clientHeight}(t.target)}var n,l,o,a;return e}},\n function _(m,i,u,s,a){s(),a(\"Expression\",m(124).Expression),a(\"CustomJSExpr\",m(267).CustomJSExpr),a(\"Stack\",m(268).Stack),a(\"CumSum\",m(269).CumSum),a(\"ScalarExpression\",m(124).ScalarExpression),a(\"Minimum\",m(270).Minimum),a(\"Maximum\",m(271).Maximum)},\n function _(t,e,s,n,r){n();const i=t(14),o=t(124),a=t(24),c=t(9),u=t(13),l=t(34),h=t(8);class p extends o.Expression{constructor(t){super(t)}static init_CustomJSExpr(){this.define((({Unknown:t,String:e,Dict:s})=>({args:[s(t),{}],code:[e,\"\"]})))}connect_signals(){super.connect_signals();for(const t of u.values(this.args))t instanceof i.HasProps&&t.change.connect((()=>{this._result.clear(),this.change.emit()}))}get names(){return u.keys(this.args)}get values(){return u.values(this.args)}get func(){const t=l.use_strict(this.code);return new a.GeneratorFunction(...this.names,t)}_v_compute(t){const e=this.func.apply(t,this.values);let s=e.next();if(s.done&&void 0!==s.value){const{value:e}=s;return h.isArray(e)||h.isTypedArray(e)?e:h.isIterable(e)?[...e]:c.repeat(e,t.length)}{const t=[];do{t.push(s.value),s=e.next()}while(!s.done);return t}}}s.CustomJSExpr=p,p.__name__=\"CustomJSExpr\",p.init_CustomJSExpr()},\n function _(t,n,e,i,s){i();const a=t(124);class c extends a.Expression{constructor(t){super(t)}static init_Stack(){this.define((({String:t,Array:n})=>({fields:[n(t),[]]})))}_v_compute(t){var n;const e=null!==(n=t.get_length())&&void 0!==n?n:0,i=new Float64Array(e);for(const n of this.fields){const s=t.data[n];if(null!=s)for(let t=0,n=Math.min(e,s.length);t<n;t++)i[t]+=s[t]}return i}}e.Stack=c,c.__name__=\"Stack\",c.init_Stack()},\n function _(e,t,n,i,u){i();const o=e(124);class r extends o.Expression{constructor(e){super(e)}static init_CumSum(){this.define((({Boolean:e,String:t})=>({field:[t],include_zero:[e,!1]})))}_v_compute(e){var t;const n=new Float64Array(null!==(t=e.get_length())&&void 0!==t?t:0),i=e.data[this.field],u=this.include_zero?1:0;n[0]=this.include_zero?0:i[0];for(let e=1;e<n.length;e++)n[e]=n[e-1]+i[e-u];return n}}n.CumSum=r,r.__name__=\"CumSum\",r.init_CumSum()},\n function _(i,n,t,l,u){l();const e=i(124),m=i(9);class s extends e.ScalarExpression{constructor(i){super(i)}static init_Minimum(){this.define((({Number:i,String:n,Nullable:t})=>({field:[n],initial:[t(i),null]})))}_compute(i){var n,t;const l=null!==(n=i.data[this.field])&&void 0!==n?n:[];return Math.min(null!==(t=this.initial)&&void 0!==t?t:1/0,m.min(l))}}t.Minimum=s,s.__name__=\"Minimum\",s.init_Minimum()},\n function _(i,t,a,n,l){n();const u=i(124),e=i(9);class m extends u.ScalarExpression{constructor(i){super(i)}static init_Maximum(){this.define((({Number:i,String:t,Nullable:a})=>({field:[t],initial:[a(i),null]})))}_compute(i){var t,a;const n=null!==(t=i.data[this.field])&&void 0!==t?t:[];return Math.max(null!==(a=this.initial)&&void 0!==a?a:-1/0,e.max(n))}}a.Maximum=m,m.__name__=\"Maximum\",m.init_Maximum()},\n function _(e,t,l,r,i){r(),i(\"BooleanFilter\",e(273).BooleanFilter),i(\"CustomJSFilter\",e(274).CustomJSFilter),i(\"Filter\",e(121).Filter),i(\"GroupFilter\",e(275).GroupFilter),i(\"IndexFilter\",e(276).IndexFilter)},\n function _(e,n,l,o,t){o();const i=e(121),s=e(24);class a extends i.Filter{constructor(e){super(e)}static init_BooleanFilter(){this.define((({Boolean:e,Array:n,Nullable:l})=>({booleans:[l(n(e)),null]})))}compute_indices(e){const n=e.length,{booleans:l}=this;return null==l?s.Indices.all_set(n):s.Indices.from_booleans(n,l)}}l.BooleanFilter=a,a.__name__=\"BooleanFilter\",a.init_BooleanFilter()},\n function _(e,t,s,n,r){n();const i=e(121),o=e(24),u=e(13),c=e(8),a=e(34);class l extends i.Filter{constructor(e){super(e)}static init_CustomJSFilter(){this.define((({Unknown:e,String:t,Dict:s})=>({args:[s(e),{}],code:[t,\"\"]})))}get names(){return u.keys(this.args)}get values(){return u.values(this.args)}get func(){const e=a.use_strict(this.code);return new Function(...this.names,\"source\",e)}compute_indices(e){const t=e.length,s=this.func(...this.values,e);if(null==s)return o.Indices.all_set(t);if(c.isArrayOf(s,c.isInteger))return o.Indices.from_indices(t,s);if(c.isArrayOf(s,c.isBoolean))return o.Indices.from_booleans(t,s);throw new Error(`expect an array of integers or booleans, or null, got ${s}`)}}s.CustomJSFilter=l,l.__name__=\"CustomJSFilter\",l.init_CustomJSFilter()},\n function _(n,t,e,i,o){i();const r=n(121),u=n(24),s=n(19);class c extends r.Filter{constructor(n){super(n)}static init_GroupFilter(){this.define((({String:n})=>({column_name:[n],group:[n]})))}compute_indices(n){const t=n.get_column(this.column_name);if(null==t)return s.logger.warn(`${this}: groupby column '${this.column_name}' not found in the data source`),new u.Indices(n.length,1);{const e=new u.Indices(n.length);for(let n=0;n<e.size;n++)t[n]===this.group&&e.set(n);return e}}}e.GroupFilter=c,c.__name__=\"GroupFilter\",c.init_GroupFilter()},\n function _(e,n,i,t,s){t();const l=e(121),c=e(24);class r extends l.Filter{constructor(e){super(e)}static init_IndexFilter(){this.define((({Int:e,Array:n,Nullable:i})=>({indices:[i(n(e)),null]})))}compute_indices(e){const n=e.length,{indices:i}=this;return null==i?c.Indices.all_set(n):c.Indices.from_indices(n,i)}}i.IndexFilter=r,r.__name__=\"IndexFilter\",r.init_IndexFilter()},\n function _(e,a,l,i,t){i(),t(\"AnnularWedge\",e(278).AnnularWedge),t(\"Annulus\",e(279).Annulus),t(\"Arc\",e(280).Arc),t(\"Bezier\",e(281).Bezier),t(\"Circle\",e(282).Circle),t(\"Ellipse\",e(286).Ellipse),t(\"EllipseOval\",e(287).EllipseOval),t(\"Glyph\",e(98).Glyph),t(\"HArea\",e(117).HArea),t(\"HBar\",e(289).HBar),t(\"HexTile\",e(291).HexTile),t(\"Image\",e(292).Image),t(\"ImageRGBA\",e(294).ImageRGBA),t(\"ImageURL\",e(295).ImageURL),t(\"Line\",e(63).Line),t(\"MultiLine\",e(127).MultiLine),t(\"MultiPolygons\",e(297).MultiPolygons),t(\"Oval\",e(298).Oval),t(\"Patch\",e(116).Patch),t(\"Patches\",e(128).Patches),t(\"Quad\",e(299).Quad),t(\"Quadratic\",e(300).Quadratic),t(\"Ray\",e(301).Ray),t(\"Rect\",e(302).Rect),t(\"Scatter\",e(303).Scatter),t(\"Segment\",e(306).Segment),t(\"Spline\",e(307).Spline),t(\"Step\",e(309).Step),t(\"Text\",e(310).Text),t(\"VArea\",e(119).VArea),t(\"VBar\",e(311).VBar),t(\"Wedge\",e(312).Wedge)},\n function _(e,t,s,i,r){i();const n=e(1),a=e(64),o=e(106),_=e(48),d=e(24),u=e(20),h=n.__importStar(e(18)),l=e(10),c=e(59);class g extends a.XYGlyphView{_map_data(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this.inner_radius):this.sinner_radius=d.to_screen(this.inner_radius),\"data\"==this.model.properties.outer_radius.units?this.souter_radius=this.sdist(this.renderer.xscale,this._x,this.outer_radius):this.souter_radius=d.to_screen(this.outer_radius)}_render(e,t,s){const{sx:i,sy:r,start_angle:n,end_angle:a,sinner_radius:o,souter_radius:_}=null!=s?s:this,d=\"anticlock\"==this.model.direction;for(const s of t){const t=i[s],u=r[s],h=o[s],l=_[s],c=n.get(s),g=a.get(s);if(isNaN(t+u+h+l+c+g))continue;const x=g-c;e.translate(t,u),e.rotate(c),e.beginPath(),e.moveTo(l,0),e.arc(0,0,l,0,x,d),e.rotate(x),e.lineTo(h,0),e.arc(0,0,h,0,-x,!d),e.closePath(),e.rotate(-x-c),e.translate(-t,-u),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,s),e.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(e,s),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,s),e.stroke())}}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),r=this.renderer.yscale.invert(s);let n,a,o,_;if(\"data\"==this.model.properties.outer_radius.units)n=i-this.max_outer_radius,o=i+this.max_outer_radius,a=r-this.max_outer_radius,_=r+this.max_outer_radius;else{const e=t-this.max_outer_radius,i=t+this.max_outer_radius;[n,o]=this.renderer.xscale.r_invert(e,i);const r=s-this.max_outer_radius,d=s+this.max_outer_radius;[a,_]=this.renderer.yscale.r_invert(r,d)}const d=[];for(const e of this.index.indices({x0:n,x1:o,y0:a,y1:_})){const t=this.souter_radius[e]**2,s=this.sinner_radius[e]**2,[n,a]=this.renderer.xscale.r_compute(i,this._x[e]),[o,_]=this.renderer.yscale.r_compute(r,this._y[e]),u=(n-a)**2+(o-_)**2;u<=t&&u>=s&&d.push(e)}const u=\"anticlock\"==this.model.direction,h=[];for(const e of d){const i=Math.atan2(s-this.sy[e],t-this.sx[e]);l.angle_between(-i,-this.start_angle.get(e),-this.end_angle.get(e),u)&&h.push(e)}return new c.Selection({indices:h})}draw_legend_for_index(e,t,s){o.generic_area_vector_legend(this.visuals,e,t,s)}scenterxy(e){const t=(this.sinner_radius[e]+this.souter_radius[e])/2,s=(this.start_angle.get(e)+this.end_angle.get(e))/2;return[this.sx[e]+t*Math.cos(s),this.sy[e]+t*Math.sin(s)]}}s.AnnularWedgeView=g,g.__name__=\"AnnularWedgeView\";class x extends a.XYGlyph{constructor(e){super(e)}static init_AnnularWedge(){this.prototype.default_view=g,this.mixins([_.LineVector,_.FillVector,_.HatchVector]),this.define((({})=>({direction:[u.Direction,\"anticlock\"],inner_radius:[h.DistanceSpec,{field:\"inner_radius\"}],outer_radius:[h.DistanceSpec,{field:\"outer_radius\"}],start_angle:[h.AngleSpec,{field:\"start_angle\"}],end_angle:[h.AngleSpec,{field:\"end_angle\"}]})))}}s.AnnularWedge=x,x.__name__=\"AnnularWedge\",x.init_AnnularWedge()},\n function _(s,i,t,e,r){e();const n=s(1),a=s(64),u=s(24),_=s(48),o=n.__importStar(s(18)),h=s(27),d=s(59);class c extends a.XYGlyphView{_map_data(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this.inner_radius):this.sinner_radius=u.to_screen(this.inner_radius),\"data\"==this.model.properties.outer_radius.units?this.souter_radius=this.sdist(this.renderer.xscale,this._x,this.outer_radius):this.souter_radius=u.to_screen(this.outer_radius)}_render(s,i,t){const{sx:e,sy:r,sinner_radius:n,souter_radius:a}=null!=t?t:this;for(const t of i){const i=e[t],_=r[t],o=n[t],d=a[t];function u(){if(s.beginPath(),h.is_ie)for(const t of[!1,!0])s.arc(i,_,o,0,Math.PI,t),s.arc(i,_,d,Math.PI,0,!t);else s.arc(i,_,o,0,2*Math.PI,!0),s.arc(i,_,d,2*Math.PI,0,!1)}isNaN(i+_+o+d)||(this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(s,t),u(),s.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(s,t),u(),s.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(s,t),s.beginPath(),s.arc(i,_,o,0,2*Math.PI),s.moveTo(i+d,_),s.arc(i,_,d,0,2*Math.PI),s.stroke()))}}_hit_point(s){const{sx:i,sy:t}=s,e=this.renderer.xscale.invert(i),r=this.renderer.yscale.invert(t);let n,a,u,_;if(\"data\"==this.model.properties.outer_radius.units)n=e-this.max_outer_radius,u=e+this.max_outer_radius,a=r-this.max_outer_radius,_=r+this.max_outer_radius;else{const s=i-this.max_outer_radius,e=i+this.max_outer_radius;[n,u]=this.renderer.xscale.r_invert(s,e);const r=t-this.max_outer_radius,o=t+this.max_outer_radius;[a,_]=this.renderer.yscale.r_invert(r,o)}const o=[];for(const s of this.index.indices({x0:n,x1:u,y0:a,y1:_})){const i=this.souter_radius[s]**2,t=this.sinner_radius[s]**2,[n,a]=this.renderer.xscale.r_compute(e,this._x[s]),[u,_]=this.renderer.yscale.r_compute(r,this._y[s]),h=(n-a)**2+(u-_)**2;h<=i&&h>=t&&o.push(s)}return new d.Selection({indices:o})}draw_legend_for_index(s,{x0:i,y0:t,x1:e,y1:r},n){const a=n+1,u=new Array(a);u[n]=(i+e)/2;const _=new Array(a);_[n]=(t+r)/2;const o=.5*Math.min(Math.abs(e-i),Math.abs(r-t)),h=new Array(a);h[n]=.4*o;const d=new Array(a);d[n]=.8*o,this._render(s,[n],{sx:u,sy:_,sinner_radius:h,souter_radius:d})}}t.AnnulusView=c,c.__name__=\"AnnulusView\";class l extends a.XYGlyph{constructor(s){super(s)}static init_Annulus(){this.prototype.default_view=c,this.mixins([_.LineVector,_.FillVector,_.HatchVector]),this.define((({})=>({inner_radius:[o.DistanceSpec,{field:\"inner_radius\"}],outer_radius:[o.DistanceSpec,{field:\"outer_radius\"}]})))}}t.Annulus=l,l.__name__=\"Annulus\",l.init_Annulus()},\n function _(e,i,s,t,n){t();const r=e(1),a=e(64),c=e(106),d=e(48),_=e(24),l=e(20),o=r.__importStar(e(18));class h extends a.XYGlyphView{_map_data(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this.radius):this.sradius=_.to_screen(this.radius)}_render(e,i,s){if(this.visuals.line.doit){const{sx:t,sy:n,sradius:r,start_angle:a,end_angle:c}=null!=s?s:this,d=\"anticlock\"==this.model.direction;for(const s of i){const i=t[s],_=n[s],l=r[s],o=a.get(s),h=c.get(s);isNaN(i+_+l+o+h)||(e.beginPath(),e.arc(i,_,l,o,h,d),this.visuals.line.set_vectorize(e,s),e.stroke())}}}draw_legend_for_index(e,i,s){c.generic_line_vector_legend(this.visuals,e,i,s)}}s.ArcView=h,h.__name__=\"ArcView\";class u extends a.XYGlyph{constructor(e){super(e)}static init_Arc(){this.prototype.default_view=h,this.mixins(d.LineVector),this.define((({})=>({direction:[l.Direction,\"anticlock\"],radius:[o.DistanceSpec,{field:\"radius\"}],start_angle:[o.AngleSpec,{field:\"start_angle\"}],end_angle:[o.AngleSpec,{field:\"end_angle\"}]})))}}s.Arc=u,u.__name__=\"Arc\",u.init_Arc()},\n function _(e,t,i,s,n){s();const o=e(1),c=e(48),r=e(98),a=e(106),_=e(65),d=o.__importStar(e(18));function l(e,t,i,s,n,o,c,r){const a=[],_=[[],[]];for(let _=0;_<=2;_++){let d,l,x;if(0===_?(l=6*e-12*i+6*n,d=-3*e+9*i-9*n+3*c,x=3*i-3*e):(l=6*t-12*s+6*o,d=-3*t+9*s-9*o+3*r,x=3*s-3*t),Math.abs(d)<1e-12){if(Math.abs(l)<1e-12)continue;const e=-x/l;0<e&&e<1&&a.push(e);continue}const h=l*l-4*x*d,y=Math.sqrt(h);if(h<0)continue;const p=(-l+y)/(2*d);0<p&&p<1&&a.push(p);const f=(-l-y)/(2*d);0<f&&f<1&&a.push(f)}let d=a.length;const l=d;for(;d--;){const l=a[d],x=1-l,h=x*x*x*e+3*x*x*l*i+3*x*l*l*n+l*l*l*c;_[0][d]=h;const y=x*x*x*t+3*x*x*l*s+3*x*l*l*o+l*l*l*r;_[1][d]=y}return _[0][l]=e,_[1][l]=t,_[0][l+1]=c,_[1][l+1]=r,[Math.min(..._[0]),Math.max(..._[1]),Math.max(..._[0]),Math.min(..._[1])]}class x extends r.GlyphView{_project_data(){_.inplace.project_xy(this._x0,this._y0),_.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{data_size:t,_x0:i,_y0:s,_x1:n,_y1:o,_cx0:c,_cy0:r,_cx1:a,_cy1:_}=this;for(let d=0;d<t;d++){const t=i[d],x=s[d],h=n[d],y=o[d],p=c[d],f=r[d],u=a[d],m=_[d];if(isNaN(t+h+x+y+p+f+u+m))e.add_empty();else{const[i,s,n,o]=l(t,x,h,y,p,f,u,m);e.add(i,s,n,o)}}}_render(e,t,i){if(this.visuals.line.doit){const{sx0:s,sy0:n,sx1:o,sy1:c,scx0:r,scy0:a,scx1:_,scy1:d}=null!=i?i:this;for(const i of t){const t=s[i],l=n[i],x=o[i],h=c[i],y=r[i],p=a[i],f=_[i],u=d[i];isNaN(t+l+x+h+y+p+f+u)||(e.beginPath(),e.moveTo(t,l),e.bezierCurveTo(y,p,f,u,x,h),this.visuals.line.set_vectorize(e,i),e.stroke())}}}draw_legend_for_index(e,t,i){a.generic_line_vector_legend(this.visuals,e,t,i)}scenterxy(){throw new Error(`${this}.scenterxy() is not implemented`)}}i.BezierView=x,x.__name__=\"BezierView\";class h extends r.Glyph{constructor(e){super(e)}static init_Bezier(){this.prototype.default_view=x,this.define((({})=>({x0:[d.XCoordinateSpec,{field:\"x0\"}],y0:[d.YCoordinateSpec,{field:\"y0\"}],x1:[d.XCoordinateSpec,{field:\"x1\"}],y1:[d.YCoordinateSpec,{field:\"y1\"}],cx0:[d.XCoordinateSpec,{field:\"cx0\"}],cy0:[d.YCoordinateSpec,{field:\"cy0\"}],cx1:[d.XCoordinateSpec,{field:\"cx1\"}],cy1:[d.YCoordinateSpec,{field:\"cy1\"}]}))),this.mixins(c.LineVector)}}i.Bezier=h,h.__name__=\"Bezier\",h.init_Bezier()},\n function _(s,i,e,t,r){t();const a=s(1),n=s(64),h=s(283),d=s(48),l=s(24),c=s(20),_=a.__importStar(s(107)),u=a.__importStar(s(18)),o=s(9),x=s(12),m=s(59);class y extends n.XYGlyphView{initialize(){super.initialize();const{webgl:s}=this.renderer.plot_view.canvas_view;null!=s&&(this.glglyph=new h.MarkerGL(s.gl,this,\"circle\"))}get use_radius(){return!(this.radius.is_Scalar()&&isNaN(this.radius.value))}_map_data(){if(this.use_radius)if(\"data\"==this.model.properties.radius.units)switch(this.model.radius_dimension){case\"x\":this.sradius=this.sdist(this.renderer.xscale,this._x,this.radius);break;case\"y\":this.sradius=this.sdist(this.renderer.yscale,this._y,this.radius);break;case\"max\":{const s=this.sdist(this.renderer.xscale,this._x,this.radius),i=this.sdist(this.renderer.yscale,this._y,this.radius);this.sradius=x.map(s,((s,e)=>Math.max(s,i[e])));break}case\"min\":{const s=this.sdist(this.renderer.xscale,this._x,this.radius),i=this.sdist(this.renderer.yscale,this._y,this.radius);this.sradius=x.map(s,((s,e)=>Math.min(s,i[e])));break}}else this.sradius=l.to_screen(this.radius),this._configure(\"max_size\",{value:2*this.max_radius});else{const s=new l.ScreenArray(this.size);this.sradius=x.map(s,(s=>s/2))}}_mask_data(){const{frame:s}=this.renderer.plot_view,i=s.x_target,e=s.y_target;let t,r;return this.use_radius&&\"data\"==this.model.properties.radius.units?(t=i.map((s=>this.renderer.xscale.invert(s))).widen(this.max_radius),r=e.map((s=>this.renderer.yscale.invert(s))).widen(this.max_radius)):(t=i.widen(this.max_size).map((s=>this.renderer.xscale.invert(s))),r=e.widen(this.max_size).map((s=>this.renderer.yscale.invert(s)))),this.index.indices({x0:t.start,x1:t.end,y0:r.start,y1:r.end})}_render(s,i,e){const{sx:t,sy:r,sradius:a}=null!=e?e:this;for(const e of i){const i=t[e],n=r[e],h=a[e];isNaN(i+n+h)||(s.beginPath(),s.arc(i,n,h,0,2*Math.PI,!1),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(s,e),s.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(s,e),s.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(s,e),s.stroke()))}}_hit_point(s){const{sx:i,sy:e}=s,t=this.renderer.xscale.invert(i),r=this.renderer.yscale.invert(e),{hit_dilation:a}=this.model;let n,h,d,l;if(this.use_radius&&\"data\"==this.model.properties.radius.units)n=t-this.max_radius*a,h=t+this.max_radius*a,d=r-this.max_radius*a,l=r+this.max_radius*a;else{const s=i-this.max_size*a,t=i+this.max_size*a;[n,h]=this.renderer.xscale.r_invert(s,t);const r=e-this.max_size*a,c=e+this.max_size*a;[d,l]=this.renderer.yscale.r_invert(r,c)}const c=this.index.indices({x0:n,x1:h,y0:d,y1:l}),_=[];if(this.use_radius&&\"data\"==this.model.properties.radius.units)for(const s of c){const i=(this.sradius[s]*a)**2,[e,n]=this.renderer.xscale.r_compute(t,this._x[s]),[h,d]=this.renderer.yscale.r_compute(r,this._y[s]);(e-n)**2+(h-d)**2<=i&&_.push(s)}else for(const s of c){const t=(this.sradius[s]*a)**2;(this.sx[s]-i)**2+(this.sy[s]-e)**2<=t&&_.push(s)}return new m.Selection({indices:_})}_hit_span(s){const{sx:i,sy:e}=s,t=this.bounds();let r,a,n,h;if(\"h\"==s.direction){let s,e;if(n=t.y0,h=t.y1,this.use_radius&&\"data\"==this.model.properties.radius.units)s=i-this.max_radius,e=i+this.max_radius,[r,a]=this.renderer.xscale.r_invert(s,e);else{const t=this.max_size/2;s=i-t,e=i+t,[r,a]=this.renderer.xscale.r_invert(s,e)}}else{let s,i;if(r=t.x0,a=t.x1,this.use_radius&&\"data\"==this.model.properties.radius.units)s=e-this.max_radius,i=e+this.max_radius,[n,h]=this.renderer.yscale.r_invert(s,i);else{const t=this.max_size/2;s=e-t,i=e+t,[n,h]=this.renderer.yscale.r_invert(s,i)}}const d=[...this.index.indices({x0:r,x1:a,y0:n,y1:h})];return new m.Selection({indices:d})}_hit_rect(s){const{sx0:i,sx1:e,sy0:t,sy1:r}=s,[a,n]=this.renderer.xscale.r_invert(i,e),[h,d]=this.renderer.yscale.r_invert(t,r),l=[...this.index.indices({x0:a,x1:n,y0:h,y1:d})];return new m.Selection({indices:l})}_hit_poly(s){const{sx:i,sy:e}=s,t=o.range(0,this.sx.length),r=[];for(let s=0,a=t.length;s<a;s++){const a=t[s];_.point_in_poly(this.sx[s],this.sy[s],i,e)&&r.push(a)}return new m.Selection({indices:r})}draw_legend_for_index(s,{x0:i,y0:e,x1:t,y1:r},a){const n=a+1,h=new Array(n);h[a]=(i+t)/2;const d=new Array(n);d[a]=(e+r)/2;const l=new Array(n);l[a]=.2*Math.min(Math.abs(t-i),Math.abs(r-e)),this._render(s,[a],{sx:h,sy:d,sradius:l})}}e.CircleView=y,y.__name__=\"CircleView\";class p extends n.XYGlyph{constructor(s){super(s)}static init_Circle(){this.prototype.default_view=y,this.mixins([d.LineVector,d.FillVector,d.HatchVector]),this.define((({Number:s})=>({angle:[u.AngleSpec,0],size:[u.ScreenDistanceSpec,{value:4}],radius:[u.NullDistanceSpec,null],radius_dimension:[c.RadiusDimension,\"x\"],hit_dilation:[s,1]})))}}e.Circle=p,p.__name__=\"Circle\",p.init_Circle()},\n function _(t,e,s,i,a){i();const r=t(1),o=t(109),_=t(113),l=r.__importDefault(t(284)),h=r.__importDefault(t(285)),n=t(282),f=t(12),u=t(19),c=t(24),g=t(22),b=t(11);function d(t,e,s,i,a,r,o){if(a.doit)if(r.is_Scalar()&&o.is_Scalar()){e.used=!1;const[i,a,_,l]=g.color2rgba(r.value,o.value);t.set_attribute(s,\"vec4\",[i/255,a/255,_/255,l/255])}else{let a;if(e.used=!0,r.is_Vector()){const t=new c.ColorArray(r.array);if(a=new c.RGBAArray(t.buffer),!o.is_Scalar()||1!=o.value)for(let t=0;t<i;t++){const e=4*t+3;255==a[e]&&(a[e]=255*o.get(t))}}else if(r.is_Scalar()&&o.is_Vector()){const t=new c.ColorArray(i);t.fill(r.value),a=new c.RGBAArray(t.buffer);for(let t=0;t<i;t++)for(let t=0;t<i;t++){const e=4*t+3;255==a[e]&&(a[e]=255*o.get(t))}}else b.unreachable();e.set_size(4*i),e.set_data(0,a),t.set_attribute(s,\"vec4_uint8\",e,0,0,!0)}else e.used=!1,t.set_attribute(s,\"vec4\",[0,0,0,0])}class p extends _.BaseGLGlyph{constructor(t,e,s){super(t,e),this.glyph=e,this.marker_type=s;const i=[`#define USE_${s.toUpperCase()}`],a=l.default,r=`${i.join(\"\\n\")}\\n\\n${h.default}`;this.prog=new o.Program(t),this.prog.set_shaders(a,r),this.vbo_sx=new o.VertexBuffer(t),this.prog.set_attribute(\"a_sx\",\"float\",this.vbo_sx),this.vbo_sy=new o.VertexBuffer(t),this.prog.set_attribute(\"a_sy\",\"float\",this.vbo_sy),this.vbo_s=new o.VertexBuffer(t),this.prog.set_attribute(\"a_size\",\"float\",this.vbo_s),this.vbo_a=new o.VertexBuffer(t),this.prog.set_attribute(\"a_angle\",\"float\",this.vbo_a),this.vbo_linewidth=new o.VertexBuffer(t),this.vbo_fg_color=new o.VertexBuffer(t),this.vbo_bg_color=new o.VertexBuffer(t),this.index_buffer=new o.IndexBuffer(t)}static is_supported(t){switch(t){case\"asterisk\":case\"circle\":case\"circle_cross\":case\"circle_x\":case\"cross\":case\"diamond\":case\"diamond_cross\":case\"hex\":case\"inverted_triangle\":case\"square\":case\"square_cross\":case\"square_x\":case\"star\":case\"triangle\":case\"x\":return!0;default:return!1}}draw(t,e,s){const i=e.glglyph,{nvertices:a}=i;if(i.data_changed&&(i._set_data(a),this.glyph instanceof n.CircleView&&null!=this.glyph.radius&&this.vbo_s.set_data(0,f.map(this.glyph.sradius,(t=>2*t))),i.data_changed=!1),this.visuals_changed&&(this._set_visuals(a),this.visuals_changed=!1),this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[s.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[s.width,s.height]),this.prog.set_attribute(\"a_sx\",\"float\",i.vbo_sx),this.prog.set_attribute(\"a_sy\",\"float\",i.vbo_sy),this.prog.set_attribute(\"a_size\",\"float\",i.vbo_s),this.prog.set_attribute(\"a_angle\",\"float\",i.vbo_a),0!=t.length)if(t.length===a)this.prog.draw(this.gl.POINTS,[0,a]);else if(a<65535){const e=window.navigator.userAgent;e.indexOf(\"MSIE \")+e.indexOf(\"Trident/\")+e.indexOf(\"Edge/\")>0&&u.logger.warn(\"WebGL warning: IE is known to produce 1px sprites whith selections.\"),this.index_buffer.set_size(2*t.length),this.index_buffer.set_data(0,new Uint16Array(t)),this.prog.draw(this.gl.POINTS,this.index_buffer)}else{const e=64e3,s=[];for(let t=0,i=Math.ceil(a/e);t<i;t++)s.push([]);for(let i=0,a=t.length;i<a;i++){const a=t[i]%e;s[Math.floor(t[i]/e)].push(a)}for(let t=0,a=s.length;t<a;t++){const a=new Uint16Array(s[t]),r=t*e*4;0!==a.length&&(this.prog.set_attribute(\"a_sx\",\"float\",i.vbo_sx,0,r),this.prog.set_attribute(\"a_sy\",\"float\",i.vbo_sy,0,r),this.prog.set_attribute(\"a_size\",\"float\",i.vbo_s,0,r),this.prog.set_attribute(\"a_angle\",\"float\",i.vbo_a,0,r),this.vbo_linewidth.used&&this.prog.set_attribute(\"a_linewidth\",\"float\",this.vbo_linewidth,0,r),this.vbo_fg_color.used&&this.prog.set_attribute(\"a_fg_color\",\"vec4_uint8\",this.vbo_fg_color,0,4*r,!0),this.vbo_bg_color.used&&this.prog.set_attribute(\"a_bg_color\",\"vec4_uint8\",this.vbo_bg_color,0,4*r,!0),this.index_buffer.set_size(2*a.length),this.index_buffer.set_data(0,a),this.prog.draw(this.gl.POINTS,this.index_buffer))}}}_set_data(t){const e=4*t;this.vbo_sx.set_size(e),this.vbo_sy.set_size(e),this.vbo_a.set_size(e),this.vbo_s.set_size(e),this.vbo_sx.set_data(0,this.glyph.sx),this.vbo_sy.set_data(0,this.glyph.sy),null!=this.glyph.angle&&this.vbo_a.set_data(0,new Float32Array(this.glyph.angle)),this.glyph instanceof n.CircleView&&null!=this.glyph.radius?this.vbo_s.set_data(0,f.map(this.glyph.sradius,(t=>2*t))):this.vbo_s.set_data(0,new Float32Array(this.glyph.size))}_set_visuals(t){const{line:e,fill:s}=this.glyph.visuals;!function(t,e,s,i,a,r){if(a.doit){if(r.is_Scalar())e.used=!1,t.set_attribute(s,\"float\",[r.value]);else if(r.is_Vector()){e.used=!0;const a=new Float32Array(r.array);e.set_size(4*i),e.set_data(0,a),t.set_attribute(s,\"float\",e)}}else e.used=!1,t.set_attribute(s,\"float\",[0])}(this.prog,this.vbo_linewidth,\"a_linewidth\",t,e,e.line_width),d(this.prog,this.vbo_fg_color,\"a_fg_color\",t,e,e.line_color,e.line_alpha),d(this.prog,this.vbo_bg_color,\"a_bg_color\",t,s,s.fill_color,s.fill_alpha),this.prog.set_uniform(\"u_antialias\",\"float\",[.8])}}s.MarkerGL=p,p.__name__=\"MarkerGL\"},\n function _(n,i,a,o,_){o();a.default=\"\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\n//\\nuniform float u_pixel_ratio;\\nuniform vec2 u_canvas_size;\\nuniform vec2 u_offset;\\nuniform vec2 u_scale;\\nuniform float u_antialias;\\n//\\nattribute float a_sx;\\nattribute float a_sy;\\nattribute float a_size;\\nattribute float a_angle; // in radians\\nattribute float a_linewidth;\\nattribute vec4 a_fg_color;\\nattribute vec4 a_bg_color;\\n//\\nvarying float v_linewidth;\\nvarying float v_size;\\nvarying vec4 v_fg_color;\\nvarying vec4 v_bg_color;\\nvarying vec2 v_rotation;\\n\\nvoid main (void)\\n{\\n v_size = a_size * u_pixel_ratio;\\n v_linewidth = a_linewidth * u_pixel_ratio;\\n v_fg_color = a_fg_color;\\n v_bg_color = a_bg_color;\\n v_rotation = vec2(cos(-a_angle), sin(-a_angle));\\n vec2 pos = vec2(a_sx, a_sy); // in pixels\\n pos += 0.5; // make up for Bokeh's offset\\n pos /= u_canvas_size / u_pixel_ratio; // in 0..1\\n gl_Position = vec4(pos*2.0-1.0, 0.0, 1.0);\\n gl_Position.y *= -1.0;\\n gl_PointSize = SQRT_2 * v_size + 2.0 * (v_linewidth + 1.5*u_antialias);\\n}\\n\"},\n function _(n,a,s,e,t){e();s.default='\\nprecision mediump float;\\n\\nconst float SQRT_2 = 1.4142135623730951;\\nconst float PI = 3.14159265358979323846264;\\n\\nconst float IN_ANGLE = 0.6283185307179586; // PI/5. = 36 degrees (star of 5 pikes)\\n//const float OUT_ANGLE = PI/2. - IN_ANGLE; // External angle for regular stars\\nconst float COS_A = 0.8090169943749475; // cos(IN_ANGLE)\\nconst float SIN_A = 0.5877852522924731; // sin(IN_ANGLE)\\nconst float COS_B = 0.5877852522924731; // cos(OUT_ANGLE)\\nconst float SIN_B = 0.8090169943749475; // sin(OUT_ANGLE)\\n\\n//\\nuniform float u_antialias;\\n//\\nvarying vec4 v_fg_color;\\nvarying vec4 v_bg_color;\\nvarying float v_linewidth;\\nvarying float v_size;\\nvarying vec2 v_rotation;\\n\\n#ifdef USE_ASTERISK\\n// asterisk\\nfloat marker(vec2 P, float size)\\n{\\n // Masks\\n float diamond = max(abs(SQRT_2 / 2.0 * (P.x - P.y)), abs(SQRT_2 / 2.0 * (P.x + P.y))) - size / (2.0 * SQRT_2);\\n float square = max(abs(P.x), abs(P.y)) - size / (2.0 * SQRT_2);\\n // Shapes\\n float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0; // bit of \"width\" for aa\\n float cross = min(abs(P.x), abs(P.y)) - size / 100.0; // bit of \"width\" for aa\\n // Result is union of masked shapes\\n return min(max(X, diamond), max(cross, square));\\n}\\n#endif\\n\\n#ifdef USE_CIRCLE\\n// circle\\nfloat marker(vec2 P, float size)\\n{\\n return length(P) - size/2.0;\\n}\\n#endif\\n\\n#ifdef USE_SQUARE\\n// square\\nfloat marker(vec2 P, float size)\\n{\\n return max(abs(P.x), abs(P.y)) - size/2.0;\\n}\\n#endif\\n\\n#ifdef USE_DIAMOND\\n// diamond\\nfloat marker(vec2 P, float size)\\n{\\n float x = SQRT_2 / 2.0 * (P.x * 1.5 - P.y);\\n float y = SQRT_2 / 2.0 * (P.x * 1.5 + P.y);\\n float r1 = max(abs(x), abs(y)) - size / (2.0 * SQRT_2);\\n return r1 / SQRT_2;\\n}\\n#endif\\n\\n#ifdef USE_HEX\\n// hex\\nfloat marker(vec2 P, float size)\\n{\\n vec2 q = abs(P);\\n return max(q.y * 0.57735 + q.x - 1.0 * size/2.0, q.y - 0.866 * size/2.0);\\n}\\n#endif\\n\\n#ifdef USE_STAR\\n// star\\n// https://iquilezles.org/www/articles/distfunctions2d/distfunctions2d.htm\\nfloat marker(vec2 P, float size)\\n{\\n float bn = mod(atan(P.x, -P.y), 2.0*IN_ANGLE) - IN_ANGLE;\\n P = length(P)*vec2(cos(bn), abs(sin(bn)));\\n P -= size*vec2(COS_A, SIN_A)/2.;\\n P += vec2(COS_B, SIN_B)*clamp(-(P.x*COS_B + P.y*SIN_B), 0.0, size*SIN_A/SIN_B/2.);\\n\\n return length(P)*sign(P.x);\\n}\\n#endif\\n\\n#ifdef USE_TRIANGLE\\n// triangle\\nfloat marker(vec2 P, float size)\\n{\\n P.y -= size * 0.3;\\n float x = SQRT_2 / 2.0 * (P.x * 1.7 - P.y);\\n float y = SQRT_2 / 2.0 * (P.x * 1.7 + P.y);\\n float r1 = max(abs(x), abs(y)) - size / 1.6;\\n float r2 = P.y;\\n return max(r1 / SQRT_2, r2); // Intersect diamond with rectangle\\n}\\n#endif\\n\\n#ifdef USE_INVERTED_TRIANGLE\\n// inverted_triangle\\nfloat marker(vec2 P, float size)\\n{\\n P.y += size * 0.3;\\n float x = SQRT_2 / 2.0 * (P.x * 1.7 - P.y);\\n float y = SQRT_2 / 2.0 * (P.x * 1.7 + P.y);\\n float r1 = max(abs(x), abs(y)) - size / 1.6;\\n float r2 = - P.y;\\n return max(r1 / SQRT_2, r2); // Intersect diamond with rectangle\\n}\\n#endif\\n\\n#ifdef USE_CROSS\\n// cross\\nfloat marker(vec2 P, float size)\\n{\\n float square = max(abs(P.x), abs(P.y)) - size / 2.5; // 2.5 is a tweak\\n float cross = min(abs(P.x), abs(P.y)) - size / 100.0; // bit of \"width\" for aa\\n return max(square, cross);\\n}\\n#endif\\n\\n#ifdef USE_CIRCLE_CROSS\\n// circle_cross\\nfloat marker(vec2 P, float size)\\n{\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float circle = length(P) - size/2.0;\\n float c1 = max(circle, s1);\\n float c2 = max(circle, s2);\\n float c3 = max(circle, s3);\\n float c4 = max(circle, s4);\\n // Union\\n return min(min(min(c1, c2), c3), c4);\\n}\\n#endif\\n\\n#ifdef USE_SQUARE_CROSS\\n// square_cross\\nfloat marker(vec2 P, float size)\\n{\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float square = max(abs(P.x), abs(P.y)) - size/2.0;\\n float c1 = max(square, s1);\\n float c2 = max(square, s2);\\n float c3 = max(square, s3);\\n float c4 = max(square, s4);\\n // Union\\n return min(min(min(c1, c2), c3), c4);\\n}\\n#endif\\n\\n#ifdef USE_DIAMOND_CROSS\\n// diamond_cross\\nfloat marker(vec2 P, float size)\\n{\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(P.x - qs), abs(P.y - qs)) - qs;\\n float s2 = max(abs(P.x + qs), abs(P.y - qs)) - qs;\\n float s3 = max(abs(P.x - qs), abs(P.y + qs)) - qs;\\n float s4 = max(abs(P.x + qs), abs(P.y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float x = SQRT_2 / 2.0 * (P.x * 1.5 - P.y);\\n float y = SQRT_2 / 2.0 * (P.x * 1.5 + P.y);\\n float diamond = max(abs(x), abs(y)) - size / (2.0 * SQRT_2);\\n diamond /= SQRT_2;\\n float c1 = max(diamond, s1);\\n float c2 = max(diamond, s2);\\n float c3 = max(diamond, s3);\\n float c4 = max(diamond, s4);\\n // Union\\n return min(min(min(c1, c2), c3), c4);\\n}\\n#endif\\n\\n#ifdef USE_X\\n// x\\nfloat marker(vec2 P, float size)\\n{\\n float circle = length(P) - size / 1.6;\\n float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0; // bit of \"width\" for aa\\n return max(circle, X);\\n}\\n#endif\\n\\n#ifdef USE_CIRCLE_X\\n// circle_x\\nfloat marker(vec2 P, float size)\\n{\\n float x = P.x - P.y;\\n float y = P.x + P.y;\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(x - qs), abs(y - qs)) - qs;\\n float s2 = max(abs(x + qs), abs(y - qs)) - qs;\\n float s3 = max(abs(x - qs), abs(y + qs)) - qs;\\n float s4 = max(abs(x + qs), abs(y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float circle = length(P) - size/2.0;\\n float c1 = max(circle, s1);\\n float c2 = max(circle, s2);\\n float c3 = max(circle, s3);\\n float c4 = max(circle, s4);\\n // Union\\n float almost = min(min(min(c1, c2), c3), c4);\\n // In this case, the X is also outside of the main shape\\n float Xmask = length(P) - size / 1.6; // a circle\\n float X = min(abs(P.x - P.y), abs(P.x + P.y)) - size / 100.0; // bit of \"width\" for aa\\n return min(max(X, Xmask), almost);\\n}\\n#endif\\n\\n#ifdef USE_SQUARE_X\\n// square_x\\nfloat marker(vec2 P, float size)\\n{\\n float x = P.x - P.y;\\n float y = P.x + P.y;\\n // Define quadrants\\n float qs = size / 2.0; // quadrant size\\n float s1 = max(abs(x - qs), abs(y - qs)) - qs;\\n float s2 = max(abs(x + qs), abs(y - qs)) - qs;\\n float s3 = max(abs(x - qs), abs(y + qs)) - qs;\\n float s4 = max(abs(x + qs), abs(y + qs)) - qs;\\n // Intersect main shape with quadrants (to form cross)\\n float square = max(abs(P.x), abs(P.y)) - size/2.0;\\n float c1 = max(square, s1);\\n float c2 = max(square, s2);\\n float c3 = max(square, s3);\\n float c4 = max(square, s4);\\n // Union\\n return min(min(min(c1, c2), c3), c4);\\n}\\n#endif\\n\\nvec4 outline(float distance, float linewidth, float antialias, vec4 fg_color, vec4 bg_color)\\n{\\n vec4 frag_color;\\n float t = linewidth/2.0 - antialias;\\n float signed_distance = distance;\\n float border_distance = abs(signed_distance) - t;\\n float alpha = border_distance/antialias;\\n alpha = exp(-alpha*alpha);\\n\\n // If fg alpha is zero, it probably means no outline. To avoid a dark outline\\n // shining through due to aa, we set the fg color to the bg color. Avoid if (i.e. branching).\\n float select = float(bool(fg_color.a));\\n fg_color.rgb = select * fg_color.rgb + (1.0 - select) * bg_color.rgb;\\n // Similarly, if we want a transparent bg\\n select = float(bool(bg_color.a));\\n bg_color.rgb = select * bg_color.rgb + (1.0 - select) * fg_color.rgb;\\n\\n if( border_distance < 0.0)\\n frag_color = fg_color;\\n else if( signed_distance < 0.0 ) {\\n frag_color = mix(bg_color, fg_color, sqrt(alpha));\\n } else {\\n if( abs(signed_distance) < (linewidth/2.0 + antialias) ) {\\n frag_color = vec4(fg_color.rgb, fg_color.a * alpha);\\n } else {\\n discard;\\n }\\n }\\n return frag_color;\\n}\\n\\nvoid main()\\n{\\n vec2 P = gl_PointCoord.xy - vec2(0.5, 0.5);\\n P = vec2(v_rotation.x*P.x - v_rotation.y*P.y,\\n v_rotation.y*P.x + v_rotation.x*P.y);\\n float point_size = SQRT_2*v_size + 2.0 * (v_linewidth + 1.5*u_antialias);\\n float distance = marker(P*point_size, v_size);\\n gl_FragColor = outline(distance, v_linewidth, u_antialias, v_fg_color, v_bg_color);\\n}\\n'},\n function _(e,l,i,s,t){s();const _=e(287);class p extends _.EllipseOvalView{}i.EllipseView=p,p.__name__=\"EllipseView\";class n extends _.EllipseOval{constructor(e){super(e)}static init_Ellipse(){this.prototype.default_view=p}}i.Ellipse=n,n.__name__=\"Ellipse\",n.init_Ellipse()},\n function _(t,s,i,e,h){e();const r=t(1),a=t(288),n=r.__importStar(t(107)),l=t(24),o=t(59),_=r.__importStar(t(18));class d extends a.CenterRotatableView{_map_data(){\"data\"==this.model.properties.width.units?this.sw=this.sdist(this.renderer.xscale,this._x,this.width,\"center\"):this.sw=l.to_screen(this.width),\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this.height,\"center\"):this.sh=l.to_screen(this.height)}_render(t,s,i){const{sx:e,sy:h,sw:r,sh:a,angle:n}=null!=i?i:this;for(const i of s){const s=e[i],l=h[i],o=r[i],_=a[i],d=n.get(i);isNaN(s+l+o+_+d)||(t.beginPath(),t.ellipse(s,l,o/2,_/2,d,0,2*Math.PI),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,i),t.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(t,i),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,i),t.stroke()))}}_hit_point(t){let s,i,e,h,r,a,l,_,d;const{sx:c,sy:w}=t,x=this.renderer.xscale.invert(c),p=this.renderer.yscale.invert(w);\"data\"==this.model.properties.width.units?(s=x-this.max_width,i=x+this.max_width):(a=c-this.max_width,l=c+this.max_width,[s,i]=this.renderer.xscale.r_invert(a,l)),\"data\"==this.model.properties.height.units?(e=p-this.max_height,h=p+this.max_height):(_=w-this.max_height,d=w+this.max_height,[e,h]=this.renderer.yscale.r_invert(_,d));const m=this.index.indices({x0:s,x1:i,y0:e,y1:h}),v=[];for(const t of m)r=n.point_in_ellipse(c,w,this.angle.get(t),this.sh[t]/2,this.sw[t]/2,this.sx[t],this.sy[t]),r&&v.push(t);return new o.Selection({indices:v})}draw_legend_for_index(t,{x0:s,y0:i,x1:e,y1:h},r){const a=r+1,n=new Array(a);n[r]=(s+e)/2;const l=new Array(a);l[r]=(i+h)/2;const o=this.sw[r]/this.sh[r],d=.8*Math.min(Math.abs(e-s),Math.abs(h-i)),c=new Array(a),w=new Array(a);o>1?(c[r]=d,w[r]=d/o):(c[r]=d*o,w[r]=d);const x=new _.UniformScalar(0,a);this._render(t,[r],{sx:n,sy:l,sw:c,sh:w,angle:x})}}i.EllipseOvalView=d,d.__name__=\"EllipseOvalView\";class c extends a.CenterRotatable{constructor(t){super(t)}}i.EllipseOval=c,c.__name__=\"EllipseOval\"},\n function _(t,e,i,a,n){a();const s=t(1),h=t(64),r=t(48),o=s.__importStar(t(18));class _ extends h.XYGlyphView{get max_w2(){return\"data\"==this.model.properties.width.units?this.max_width/2:0}get max_h2(){return\"data\"==this.model.properties.height.units?this.max_height/2:0}_bounds({x0:t,x1:e,y0:i,y1:a}){const{max_w2:n,max_h2:s}=this;return{x0:t-n,x1:e+n,y0:i-s,y1:a+s}}}i.CenterRotatableView=_,_.__name__=\"CenterRotatableView\";class l extends h.XYGlyph{constructor(t){super(t)}static init_CenterRotatable(){this.mixins([r.LineVector,r.FillVector,r.HatchVector]),this.define((({})=>({angle:[o.AngleSpec,0],width:[o.DistanceSpec,{field:\"width\"}],height:[o.DistanceSpec,{field:\"height\"}]})))}}i.CenterRotatable=l,l.__name__=\"CenterRotatable\",l.init_CenterRotatable()},\n function _(t,e,s,i,h){i();const r=t(1),a=t(290),n=t(24),_=r.__importStar(t(18));class o extends a.BoxView{scenterxy(t){return[(this.sleft[t]+this.sright[t])/2,this.sy[t]]}_lrtb(t){const e=this._left[t],s=this._right[t],i=this._y[t],h=this.height.get(t)/2;return[Math.min(e,s),Math.max(e,s),i+h,i-h]}_map_data(){this.sy=this.renderer.yscale.v_compute(this._y),this.sh=this.sdist(this.renderer.yscale,this._y,this.height,\"center\"),this.sleft=this.renderer.xscale.v_compute(this._left),this.sright=this.renderer.xscale.v_compute(this._right);const t=this.sy.length;this.stop=new n.ScreenArray(t),this.sbottom=new n.ScreenArray(t);for(let e=0;e<t;e++)this.stop[e]=this.sy[e]-this.sh[e]/2,this.sbottom[e]=this.sy[e]+this.sh[e]/2;this._clamp_viewport()}}s.HBarView=o,o.__name__=\"HBarView\";class c extends a.Box{constructor(t){super(t)}static init_HBar(){this.prototype.default_view=o,this.define((({})=>({left:[_.XCoordinateSpec,{value:0}],y:[_.YCoordinateSpec,{field:\"y\"}],height:[_.NumberSpec,{value:1}],right:[_.XCoordinateSpec,{field:\"right\"}]})))}}s.HBar=c,c.__name__=\"HBar\",c.init_HBar()},\n function _(t,e,s,i,r){i();const n=t(48),o=t(98),a=t(106),h=t(59);class c extends o.GlyphView{get_anchor_point(t,e,s){const i=Math.min(this.sleft[e],this.sright[e]),r=Math.max(this.sright[e],this.sleft[e]),n=Math.min(this.stop[e],this.sbottom[e]),o=Math.max(this.sbottom[e],this.stop[e]);switch(t){case\"top_left\":return{x:i,y:n};case\"top\":case\"top_center\":return{x:(i+r)/2,y:n};case\"top_right\":return{x:r,y:n};case\"bottom_left\":return{x:i,y:o};case\"bottom\":case\"bottom_center\":return{x:(i+r)/2,y:o};case\"bottom_right\":return{x:r,y:o};case\"left\":case\"center_left\":return{x:i,y:(n+o)/2};case\"center\":case\"center_center\":return{x:(i+r)/2,y:(n+o)/2};case\"right\":case\"center_right\":return{x:r,y:(n+o)/2}}}_index_data(t){const{min:e,max:s}=Math,{data_size:i}=this;for(let r=0;r<i;r++){const[i,n,o,a]=this._lrtb(r);isNaN(i+n+o+a)||!isFinite(i+n+o+a)?t.add_empty():t.add(e(i,n),e(o,a),s(n,i),s(o,a))}}_render(t,e,s){const{sleft:i,sright:r,stop:n,sbottom:o}=null!=s?s:this;for(const s of e){const e=i[s],h=n[s],c=r[s],_=o[s];function a(){t.beginPath(),t.rect(e,h,c-e,_-h)}isNaN(e+h+c+_)||(this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,s),a(),t.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(t,s),a(),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,s),a(),t.stroke()))}}_clamp_viewport(){const t=this.renderer.plot_view.frame.bbox.h_range,e=this.renderer.plot_view.frame.bbox.v_range,s=this.stop.length;for(let i=0;i<s;i++)this.stop[i]=Math.max(this.stop[i],e.start),this.sbottom[i]=Math.min(this.sbottom[i],e.end),this.sleft[i]=Math.max(this.sleft[i],t.start),this.sright[i]=Math.min(this.sright[i],t.end)}_hit_rect(t){return this._hit_rect_against_index(t)}_hit_point(t){const{sx:e,sy:s}=t,i=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(s),n=[...this.index.indices({x0:i,y0:r,x1:i,y1:r})];return new h.Selection({indices:n})}_hit_span(t){const{sx:e,sy:s}=t;let i;if(\"v\"==t.direction){const t=this.renderer.yscale.invert(s),e=this.renderer.plot_view.frame.bbox.h_range,[r,n]=this.renderer.xscale.r_invert(e.start,e.end);i=[...this.index.indices({x0:r,y0:t,x1:n,y1:t})]}else{const t=this.renderer.xscale.invert(e),s=this.renderer.plot_view.frame.bbox.v_range,[r,n]=this.renderer.yscale.r_invert(s.start,s.end);i=[...this.index.indices({x0:t,y0:r,x1:t,y1:n})]}return new h.Selection({indices:i})}draw_legend_for_index(t,e,s){a.generic_area_vector_legend(this.visuals,t,e,s)}}s.BoxView=c,c.__name__=\"BoxView\";class _ extends o.Glyph{constructor(t){super(t)}static init_Box(){this.mixins([n.LineVector,n.FillVector,n.HatchVector])}}s.Box=_,_.__name__=\"Box\",_.init_Box()},\n function _(e,t,s,i,r){i();const n=e(1),o=e(98),a=n.__importStar(e(107)),c=n.__importStar(e(18)),l=e(48),h=e(20),_=e(65),d=e(106),x=e(59);class p extends o.GlyphView{scenterxy(e){return[this.sx[e],this.sy[e]]}_set_data(){const{orientation:e,size:t,aspect_scale:s}=this.model,{q:i,r}=this,n=this.q.length;this._x=new Float64Array(n),this._y=new Float64Array(n);const{_x:o,_y:a}=this,c=Math.sqrt(3);if(\"pointytop\"==e)for(let e=0;e<n;e++){const n=i.get(e),l=r.get(e)/2;o[e]=t*c*(n+l)/s,a[e]=-3*t*l}else for(let e=0;e<n;e++){const n=i.get(e)/2,l=r.get(e);o[e]=3*t*n,a[e]=-t*c*(l+n)*s}}_project_data(){_.inplace.project_xy(this._x,this._y)}_index_data(e){let t=this.model.size,s=Math.sqrt(3)*t/2;\"flattop\"==this.model.orientation?([s,t]=[t,s],t*=this.model.aspect_scale):s/=this.model.aspect_scale;const{data_size:i}=this;for(let r=0;r<i;r++){const i=this._x[r],n=this._y[r];isNaN(i+n)||!isFinite(i+n)?e.add_empty():e.add(i-s,n-t,i+s,n+t)}}map_data(){[this.sx,this.sy]=this.renderer.coordinates.map_to_screen(this._x,this._y),[this.svx,this.svy]=this._get_unscaled_vertices()}_get_unscaled_vertices(){const e=this.model.size,t=this.model.aspect_scale;if(\"pointytop\"==this.model.orientation){const s=this.renderer.yscale,i=this.renderer.xscale,r=Math.abs(s.compute(0)-s.compute(e)),n=Math.sqrt(3)/2*Math.abs(i.compute(0)-i.compute(e))/t,o=r/2;return[[0,-n,-n,0,n,n],[r,o,-o,-r,-o,o]]}{const s=this.renderer.xscale,i=this.renderer.yscale,r=Math.abs(s.compute(0)-s.compute(e)),n=Math.sqrt(3)/2*Math.abs(i.compute(0)-i.compute(e))*t,o=r/2;return[[r,o,-o,-r,-o,o],[0,-n,-n,0,n,n]]}}_render(e,t,s){const{sx:i,sy:r,svx:n,svy:o,scale:a}=null!=s?s:this;for(const s of t){const t=i[s],c=r[s],l=a.get(s);if(!isNaN(t+c+l)){e.translate(t,c),e.beginPath();for(let t=0;t<6;t++)e.lineTo(n[t]*l,o[t]*l);e.closePath(),e.translate(-t,-c),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,s),e.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(e,s),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,s),e.stroke())}}}_hit_point(e){const{sx:t,sy:s}=e,i=this.renderer.xscale.invert(t),r=this.renderer.yscale.invert(s),n=this.index.indices({x0:i,y0:r,x1:i,y1:r}),o=[];for(const e of n)a.point_in_poly(t-this.sx[e],s-this.sy[e],this.svx,this.svy)&&o.push(e);return new x.Selection({indices:o})}_hit_span(e){const{sx:t,sy:s}=e;let i;if(\"v\"==e.direction){const e=this.renderer.yscale.invert(s),t=this.renderer.plot_view.frame.bbox.h_range,[r,n]=this.renderer.xscale.r_invert(t.start,t.end);i=[...this.index.indices({x0:r,y0:e,x1:n,y1:e})]}else{const e=this.renderer.xscale.invert(t),s=this.renderer.plot_view.frame.bbox.v_range,[r,n]=this.renderer.yscale.r_invert(s.start,s.end);i=[...this.index.indices({x0:e,y0:r,x1:e,y1:n})]}return new x.Selection({indices:i})}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:r}=e,[n,o]=this.renderer.xscale.r_invert(t,s),[a,c]=this.renderer.yscale.r_invert(i,r),l=[...this.index.indices({x0:n,x1:o,y0:a,y1:c})];return new x.Selection({indices:l})}draw_legend_for_index(e,t,s){d.generic_area_vector_legend(this.visuals,e,t,s)}}s.HexTileView=p,p.__name__=\"HexTileView\";class y extends o.Glyph{constructor(e){super(e)}static init_HexTile(){this.prototype.default_view=p,this.mixins([l.LineVector,l.FillVector,l.HatchVector]),this.define((({Number:e})=>({r:[c.NumberSpec,{field:\"r\"}],q:[c.NumberSpec,{field:\"q\"}],scale:[c.NumberSpec,1],size:[e,1],aspect_scale:[e,1],orientation:[h.HexTileOrientation,\"pointytop\"]}))),this.override({line_color:null})}}s.HexTile=y,y.__name__=\"HexTile\",y.init_HexTile()},\n function _(e,a,t,_,s){_();const i=e(293),n=e(203),r=e(214);class o extends i.ImageBaseView{connect_signals(){super.connect_signals(),this.connect(this.model.color_mapper.change,(()=>this._update_image()))}_update_image(){null!=this.image_data&&(this._set_data(null),this.renderer.request_render())}_flat_img_to_buf8(e){return this.model.color_mapper.rgba_mapper.v_compute(e)}}t.ImageView=o,o.__name__=\"ImageView\";class m extends i.ImageBase{constructor(e){super(e)}static init_Image(){this.prototype.default_view=o,this.define((({Ref:e})=>({color_mapper:[e(n.ColorMapper),()=>new r.LinearColorMapper({palette:[\"#000000\",\"#252525\",\"#525252\",\"#737373\",\"#969696\",\"#bdbdbd\",\"#d9d9d9\",\"#f0f0f0\",\"#ffffff\"]})]})))}}t.Image=m,m.__name__=\"Image\",m.init_Image()},\n function _(e,t,i,s,a){s();const h=e(1),n=e(64),r=e(24),_=h.__importStar(e(18)),d=e(59),l=e(9),g=e(29),o=e(11);class c extends n.XYGlyphView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.global_alpha.change,(()=>this.renderer.request_render()))}_render(e,t,i){const{image_data:s,sx:a,sy:h,sw:n,sh:r}=null!=i?i:this,_=e.getImageSmoothingEnabled();e.setImageSmoothingEnabled(!1),e.globalAlpha=this.model.global_alpha;for(const i of t){const t=s[i],_=a[i],d=h[i],l=n[i],g=r[i];if(null==t||isNaN(_+d+l+g))continue;const o=d;e.translate(0,o),e.scale(1,-1),e.translate(0,-o),e.drawImage(t,0|_,0|d,l,g),e.translate(0,o),e.scale(1,-1),e.translate(0,-o)}e.setImageSmoothingEnabled(_)}_set_data(e){this._set_width_heigh_data();for(let t=0,i=this.image.length;t<i;t++){if(null!=e&&e.indexOf(t)<0)continue;const i=this.image.get(t);let s;g.is_NDArray(i)?(o.assert(2==i.dimension,\"expected a 2D array\"),s=i,this._height[t]=i.shape[0],this._width[t]=i.shape[1]):(s=l.concat(i),this._height[t]=i.length,this._width[t]=i[0].length);const a=this._flat_img_to_buf8(s);this._set_image_data_from_buffer(t,a)}}_index_data(e){const{data_size:t}=this;for(let i=0;i<t;i++){const[t,s,a,h]=this._lrtb(i);isNaN(t+s+a+h)||!isFinite(t+s+a+h)?e.add_empty():e.add(t,h,s,a)}}_lrtb(e){const t=this.dw.get(e),i=this.dh.get(e),s=this.renderer.xscale.source_range,a=this._x[e],h=s.is_reversed?a-t:a+t,n=this.renderer.yscale.source_range,r=this._y[e],_=n.is_reversed?r-i:r+i,[d,l]=a<h?[a,h]:[h,a],[g,o]=r<_?[r,_]:[_,r];return[d,l,o,g]}_set_width_heigh_data(){null!=this.image_data&&this.image_data.length==this.image.length||(this.image_data=new Array(this.image.length)),null!=this._width&&this._width.length==this.image.length||(this._width=new Uint32Array(this.image.length)),null!=this._height&&this._height.length==this.image.length||(this._height=new Uint32Array(this.image.length))}_get_or_create_canvas(e){const t=this.image_data[e];if(null!=t&&t.width==this._width[e]&&t.height==this._height[e])return t;{const t=document.createElement(\"canvas\");return t.width=this._width[e],t.height=this._height[e],t}}_set_image_data_from_buffer(e,t){const i=this._get_or_create_canvas(e),s=i.getContext(\"2d\"),a=s.getImageData(0,0,this._width[e],this._height[e]);a.data.set(t),s.putImageData(a,0,0),this.image_data[e]=i}_map_data(){\"data\"==this.model.properties.dw.units?this.sw=this.sdist(this.renderer.xscale,this._x,this.dw,\"edge\",this.model.dilate):this.sw=r.to_screen(this.dw),\"data\"==this.model.properties.dh.units?this.sh=this.sdist(this.renderer.yscale,this._y,this.dh,\"edge\",this.model.dilate):this.sh=r.to_screen(this.dh)}_image_index(e,t,i){const[s,a,h,n]=this._lrtb(e),r=this._width[e],_=this._height[e],d=(a-s)/r,l=(h-n)/_;let g=Math.floor((t-s)/d),o=Math.floor((i-n)/l);return this.renderer.xscale.source_range.is_reversed&&(g=r-g-1),this.renderer.yscale.source_range.is_reversed&&(o=_-o-1),{index:e,dim1:g,dim2:o,flat_index:o*r+g}}_hit_point(e){const{sx:t,sy:i}=e,s=this.renderer.xscale.invert(t),a=this.renderer.yscale.invert(i),h=this.index.indices({x0:s,x1:s,y0:a,y1:a}),n=new d.Selection;for(const e of h)t!=1/0&&i!=1/0&&n.image_indices.push(this._image_index(e,s,a));return n}}i.ImageBaseView=c,c.__name__=\"ImageBaseView\";class m extends n.XYGlyph{constructor(e){super(e)}static init_ImageBase(){this.define((({Boolean:e,Alpha:t})=>({image:[_.NDArraySpec,{field:\"image\"}],dw:[_.DistanceSpec,{field:\"dw\"}],dh:[_.DistanceSpec,{field:\"dh\"}],dilate:[e,!1],global_alpha:[t,1]})))}}i.ImageBase=m,m.__name__=\"ImageBase\",m.init_ImageBase()},\n function _(e,a,t,_,i){_();const n=e(293),s=e(8);class r extends n.ImageBaseView{_flat_img_to_buf8(e){let a;return a=s.isArray(e)?new Uint32Array(e):e,new Uint8ClampedArray(a.buffer)}}t.ImageRGBAView=r,r.__name__=\"ImageRGBAView\";class m extends n.ImageBase{constructor(e){super(e)}static init_ImageRGBA(){this.prototype.default_view=r}}t.ImageRGBA=m,m.__name__=\"ImageRGBA\",m.init_ImageRGBA()},\n function _(e,t,s,r,a){r();const i=e(1),n=e(64),o=e(24),c=e(20),_=i.__importStar(e(18)),h=e(12),l=e(296);class d extends n.XYGlyphView{constructor(){super(...arguments),this._images_rendered=!1,this._set_data_iteration=0}connect_signals(){super.connect_signals(),this.connect(this.model.properties.global_alpha.change,(()=>this.renderer.request_render()))}_index_data(e){const{data_size:t}=this;for(let s=0;s<t;s++)e.add_empty()}_set_data(){this._set_data_iteration++;const e=this.url.length;this.image=new Array(e);const{retry_attempts:t,retry_timeout:s}=this.model,{_set_data_iteration:r}=this;for(let a=0;a<e;a++){const e=this.url.get(a);e&&new l.ImageLoader(e,{loaded:e=>{this._set_data_iteration==r&&(this.image[a]=e,this.renderer.request_render())},attempts:t+1,timeout:s})}const a=\"data\"==this.model.properties.w.units,i=\"data\"==this.model.properties.h.units,n=this._x.length,c=new o.ScreenArray(a?2*n:n),_=new o.ScreenArray(i?2*n:n),{anchor:d}=this.model;function m(e,t){switch(d){case\"top_left\":case\"bottom_left\":case\"left\":case\"center_left\":return[e,e+t];case\"top\":case\"top_center\":case\"bottom\":case\"bottom_center\":case\"center\":case\"center_center\":return[e-t/2,e+t/2];case\"top_right\":case\"bottom_right\":case\"right\":case\"center_right\":return[e-t,e]}}function g(e,t){switch(d){case\"top_left\":case\"top\":case\"top_center\":case\"top_right\":return[e,e-t];case\"bottom_left\":case\"bottom\":case\"bottom_center\":case\"bottom_right\":return[e+t,e];case\"left\":case\"center_left\":case\"center\":case\"center_center\":case\"right\":case\"center_right\":return[e+t/2,e-t/2]}}if(a)for(let e=0;e<n;e++)[c[e],c[n+e]]=m(this._x[e],this.w.get(e));else c.set(this._x,0);if(i)for(let e=0;e<n;e++)[_[e],_[n+e]]=g(this._y[e],this.h.get(e));else _.set(this._y,0);const[u,p]=h.minmax(c),[f,b]=h.minmax(_);this._bounds_rect={x0:u,x1:p,y0:f,y1:b}}has_finished(){return super.has_finished()&&1==this._images_rendered}_map_data(){\"data\"==this.model.properties.w.units?this.sw=this.sdist(this.renderer.xscale,this._x,this.w,\"edge\",this.model.dilate):this.sw=o.to_screen(this.w),\"data\"==this.model.properties.h.units?this.sh=this.sdist(this.renderer.yscale,this._y,this.h,\"edge\",this.model.dilate):this.sh=o.to_screen(this.h)}_render(e,t,s){const{image:r,sx:a,sy:i,sw:n,sh:o,angle:c}=null!=s?s:this,{frame:_}=this.renderer.plot_view;e.rect(_.bbox.left+1,_.bbox.top+1,_.bbox.width-2,_.bbox.height-2),e.clip();let h=!0;for(const s of t){if(isNaN(a[s]+i[s]+c.get(s)))continue;const t=r[s];null!=t?this._render_image(e,s,t,a,i,n,o,c):h=!1}h&&!this._images_rendered&&(this._images_rendered=!0,this.notify_finished())}_final_sx_sy(e,t,s,r,a){switch(e){case\"top_left\":return[t,s];case\"top\":case\"top_center\":return[t-r/2,s];case\"top_right\":return[t-r,s];case\"right\":case\"center_right\":return[t-r,s-a/2];case\"bottom_right\":return[t-r,s-a];case\"bottom\":case\"bottom_center\":return[t-r/2,s-a];case\"bottom_left\":return[t,s-a];case\"left\":case\"center_left\":return[t,s-a/2];case\"center\":case\"center_center\":return[t-r/2,s-a/2]}}_render_image(e,t,s,r,a,i,n,o){isNaN(i[t])&&(i[t]=s.width),isNaN(n[t])&&(n[t]=s.height);const c=i[t],_=n[t],{anchor:h}=this.model,[l,d]=this._final_sx_sy(h,r[t],a[t],c,_),m=o.get(t);e.save(),e.globalAlpha=this.model.global_alpha;const g=c/2,u=_/2;m?(e.translate(l,d),e.translate(g,u),e.rotate(m),e.translate(-g,-u),e.drawImage(s,0,0,c,_),e.translate(g,u),e.rotate(-m),e.translate(-g,-u),e.translate(-l,-d)):e.drawImage(s,l,d,c,_),e.restore()}bounds(){return this._bounds_rect}}s.ImageURLView=d,d.__name__=\"ImageURLView\";class m extends n.XYGlyph{constructor(e){super(e)}static init_ImageURL(){this.prototype.default_view=d,this.define((({Boolean:e,Int:t,Alpha:s})=>({url:[_.StringSpec,{field:\"url\"}],anchor:[c.Anchor,\"top_left\"],global_alpha:[s,1],angle:[_.AngleSpec,0],w:[_.NullDistanceSpec,null],h:[_.NullDistanceSpec,null],dilate:[e,!1],retry_attempts:[t,0],retry_timeout:[t,0]})))}}s.ImageURL=m,m.__name__=\"ImageURL\",m.init_ImageURL()},\n function _(i,e,t,s,o){s();const a=i(19);class n{constructor(i,e={}){this._image=new Image,this._finished=!1;const{attempts:t=1,timeout:s=1}=e;this.promise=new Promise(((o,n)=>{this._image.crossOrigin=\"anonymous\";let r=0;this._image.onerror=()=>{if(++r==t){const s=`unable to load ${i} image after ${t} attempts`;if(a.logger.warn(s),null==this._image.crossOrigin)return void(null!=e.failed&&e.failed());a.logger.warn(`attempting to load ${i} without a cross origin policy`),this._image.crossOrigin=null,r=0}setTimeout((()=>this._image.src=i),s)},this._image.onload=()=>{this._finished=!0,null!=e.loaded&&e.loaded(this._image),o(this._image)},this._image.src=i}))}get finished(){return this._finished}get image(){if(this._finished)return this._image;throw new Error(\"not loaded yet\")}}t.ImageLoader=n,n.__name__=\"ImageLoader\"},\n function _(t,s,e,i,n){i();const o=t(1),l=t(101),r=t(98),h=t(106),_=t(12),a=t(12),c=t(48),d=o.__importStar(t(107)),x=o.__importStar(t(18)),y=t(59),f=t(11);class g extends r.GlyphView{_project_data(){}_index_data(t){const{min:s,max:e}=Math,{data_size:i}=this;for(let n=0;n<i;n++){const i=this._xs[n],o=this._ys[n];if(0==i.length||0==o.length){t.add_empty();continue}let l=1/0,r=-1/0,h=1/0,a=-1/0;for(let t=0,n=i.length;t<n;t++){const n=i[t][0],c=o[t][0];if(0!=n.length&&0!=c.length){const[t,i]=_.minmax(n),[o,d]=_.minmax(c);l=s(l,t),r=e(r,i),h=s(h,o),a=e(a,d)}}isFinite(l+r+h+a)?t.add(l,h,r,a):t.add_empty()}this._hole_index=this._index_hole_data()}_index_hole_data(){const{min:t,max:s}=Math,{data_size:e}=this,i=new l.SpatialIndex(e);for(let n=0;n<e;n++){const e=this._xs[n],o=this._ys[n];if(0==e.length||0==o.length){i.add_empty();continue}let l=1/0,r=-1/0,h=1/0,a=-1/0;for(let i=0,n=e.length;i<n;i++){const n=e[i],c=o[i];if(n.length>1&&c.length>1)for(let e=1,i=n.length;e<i;e++){const[i,o]=_.minmax(n[e]),[d,x]=_.minmax(c[e]);l=t(l,i),r=s(r,o),h=t(h,d),a=s(a,x)}}isFinite(l+r+h+a)?i.add(l,h,r,a):i.add_empty()}return i.finish(),i}_mask_data(){const{x_range:t,y_range:s}=this.renderer.plot_view.frame;return this.index.indices({x0:t.min,x1:t.max,y0:s.min,y1:s.max})}_inner_loop(t,s,e){t.beginPath();for(let i=0,n=s.length;i<n;i++)for(let n=0,o=s[i].length;n<o;n++){const o=s[i][n],l=e[i][n];for(let s=0,e=o.length;s<e;s++)0!=s?t.lineTo(o[s],l[s]):t.moveTo(o[s],l[s]);t.closePath()}}_render(t,s,e){if(this.visuals.fill.doit||this.visuals.line.doit){const{sxs:i,sys:n}=null!=e?e:this;for(const e of s){const s=i[e],o=n[e];this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._inner_loop(t,s,o),t.fill(\"evenodd\")),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(t,e),this._inner_loop(t,s,o),t.fill(\"evenodd\")),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._inner_loop(t,s,o),t.stroke())}}}_hit_rect(t){const{sx0:s,sx1:e,sy0:i,sy1:n}=t,o=[s,e,e,s],l=[i,i,n,n],[r,h]=this.renderer.xscale.r_invert(s,e),[_,a]=this.renderer.yscale.r_invert(i,n),c=this.index.indices({x0:r,x1:h,y0:_,y1:a}),x=[];for(const t of c){const s=this.sxs[t],e=this.sys[t];let i=!0;for(let t=0,n=s.length;t<n;t++){for(let n=0,r=s[t][0].length;n<r;n++){const r=s[t][0][n],h=e[t][0][n];if(!d.point_in_poly(r,h,o,l)){i=!1;break}}if(!i)break}i&&x.push(t)}return new y.Selection({indices:x})}_hit_point(t){const{sx:s,sy:e}=t,i=this.renderer.xscale.invert(s),n=this.renderer.yscale.invert(e),o=this.index.indices({x0:i,y0:n,x1:i,y1:n}),l=this._hole_index.indices({x0:i,y0:n,x1:i,y1:n}),r=[];for(const t of o){const i=this.sxs[t],n=this.sys[t];for(let o=0,h=i.length;o<h;o++){const h=i[o].length;if(d.point_in_poly(s,e,i[o][0],n[o][0]))if(1==h)r.push(t);else if(l.get(t)){if(h>1){let l=!1;for(let t=1;t<h;t++){const r=i[o][t],h=n[o][t];if(d.point_in_poly(s,e,r,h)){l=!0;break}}l||r.push(t)}}else r.push(t)}}return new y.Selection({indices:r})}_get_snap_coord(t){return a.sum(t)/t.length}scenterxy(t,s,e){if(1==this.sxs[t].length){return[this._get_snap_coord(this.sxs[t][0][0]),this._get_snap_coord(this.sys[t][0][0])]}{const i=this.sxs[t],n=this.sys[t];for(let t=0,o=i.length;t<o;t++)if(d.point_in_poly(s,e,i[t][0],n[t][0])){return[this._get_snap_coord(i[t][0]),this._get_snap_coord(n[t][0])]}}f.unreachable()}map_data(){const t=this._xs.length;this.sxs=new Array(t),this.sys=new Array(t);for(let s=0;s<t;s++){const t=this._xs[s].length;this.sxs[s]=new Array(t),this.sys[s]=new Array(t);for(let e=0;e<t;e++){const t=this._xs[s][e].length;this.sxs[s][e]=new Array(t),this.sys[s][e]=new Array(t);for(let i=0;i<t;i++){const[t,n]=this.renderer.coordinates.map_to_screen(this._xs[s][e][i],this._ys[s][e][i]);this.sxs[s][e][i]=t,this.sys[s][e][i]=n}}}}draw_legend_for_index(t,s,e){h.generic_area_vector_legend(this.visuals,t,s,e)}}e.MultiPolygonsView=g,g.__name__=\"MultiPolygonsView\";class p extends r.Glyph{constructor(t){super(t)}static init_MultiPolygons(){this.prototype.default_view=g,this.define((({})=>({xs:[x.XCoordinateSeqSeqSeqSpec,{field:\"xs\"}],ys:[x.YCoordinateSeqSeqSeqSpec,{field:\"ys\"}]}))),this.mixins([c.LineVector,c.FillVector,c.HatchVector])}}e.MultiPolygons=p,p.__name__=\"MultiPolygons\",p.init_MultiPolygons()},\n function _(a,t,e,l,s){l();const _=a(287),i=a(12);class n extends _.EllipseOvalView{_map_data(){super._map_data(),i.mul(this.sw,.75)}}e.OvalView=n,n.__name__=\"OvalView\";class v extends _.EllipseOval{constructor(a){super(a)}static init_Oval(){this.prototype.default_view=n}}e.Oval=v,v.__name__=\"Oval\",v.init_Oval()},\n function _(t,e,i,o,s){o();const r=t(1),_=t(290),d=r.__importStar(t(18));class n extends _.BoxView{scenterxy(t){return[this.sleft[t]/2+this.sright[t]/2,this.stop[t]/2+this.sbottom[t]/2]}_lrtb(t){return[this._left[t],this._right[t],this._top[t],this._bottom[t]]}}i.QuadView=n,n.__name__=\"QuadView\";class a extends _.Box{constructor(t){super(t)}static init_Quad(){this.prototype.default_view=n,this.define((({})=>({right:[d.XCoordinateSpec,{field:\"right\"}],bottom:[d.YCoordinateSpec,{field:\"bottom\"}],left:[d.XCoordinateSpec,{field:\"left\"}],top:[d.YCoordinateSpec,{field:\"top\"}]})))}}i.Quad=a,a.__name__=\"Quad\",a.init_Quad()},\n function _(e,t,i,s,n){s();const a=e(1),c=e(48),o=e(65),r=e(98),_=e(106),d=a.__importStar(e(18));function l(e,t,i){if(t==(e+i)/2)return[e,i];{const s=(e-t)/(e-2*t+i),n=e*(1-s)**2+2*t*(1-s)*s+i*s**2;return[Math.min(e,i,n),Math.max(e,i,n)]}}class x extends r.GlyphView{_project_data(){o.inplace.project_xy(this._x0,this._y0),o.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{_x0:t,_x1:i,_y0:s,_y1:n,_cx:a,_cy:c,data_size:o}=this;for(let r=0;r<o;r++){const o=t[r],_=i[r],d=s[r],x=n[r],y=a[r],h=c[r];if(isNaN(o+_+d+x+y+h))e.add_empty();else{const[t,i]=l(o,y,_),[s,n]=l(d,h,x);e.add(t,s,i,n)}}}_render(e,t,i){if(this.visuals.line.doit){const{sx0:s,sy0:n,sx1:a,sy1:c,scx:o,scy:r}=null!=i?i:this;for(const i of t){const t=s[i],_=n[i],d=a[i],l=c[i],x=o[i],y=r[i];isNaN(t+_+d+l+x+y)||(e.beginPath(),e.moveTo(t,_),e.quadraticCurveTo(x,y,d,l),this.visuals.line.set_vectorize(e,i),e.stroke())}}}draw_legend_for_index(e,t,i){_.generic_line_vector_legend(this.visuals,e,t,i)}scenterxy(){throw new Error(`${this}.scenterxy() is not implemented`)}}i.QuadraticView=x,x.__name__=\"QuadraticView\";class y extends r.Glyph{constructor(e){super(e)}static init_Quadratic(){this.prototype.default_view=x,this.define((({})=>({x0:[d.XCoordinateSpec,{field:\"x0\"}],y0:[d.YCoordinateSpec,{field:\"y0\"}],x1:[d.XCoordinateSpec,{field:\"x1\"}],y1:[d.YCoordinateSpec,{field:\"y1\"}],cx:[d.XCoordinateSpec,{field:\"cx\"}],cy:[d.YCoordinateSpec,{field:\"cy\"}]}))),this.mixins(c.LineVector)}}i.Quadratic=y,y.__name__=\"Quadratic\",y.init_Quadratic()},\n function _(e,t,s,i,n){i();const a=e(1),l=e(64),h=e(106),r=e(48),o=e(24),_=a.__importStar(e(18));class c extends l.XYGlyphView{_map_data(){\"data\"==this.model.properties.length.units?this.slength=this.sdist(this.renderer.xscale,this._x,this.length):this.slength=o.to_screen(this.length);const{width:e,height:t}=this.renderer.plot_view.frame.bbox,s=2*(e+t),{slength:i}=this;for(let e=0,t=i.length;e<t;e++)0==i[e]&&(i[e]=s)}_render(e,t,s){const{sx:i,sy:n,slength:a,angle:l}=null!=s?s:this;if(this.visuals.line.doit)for(const s of t){const t=i[s],h=n[s],r=l.get(s),o=a[s];isNaN(t+h+r+o)||(e.translate(t,h),e.rotate(r),e.beginPath(),e.moveTo(0,0),e.lineTo(o,0),this.visuals.line.set_vectorize(e,s),e.stroke(),e.rotate(-r),e.translate(-t,-h))}}draw_legend_for_index(e,t,s){h.generic_line_vector_legend(this.visuals,e,t,s)}}s.RayView=c,c.__name__=\"RayView\";class g extends l.XYGlyph{constructor(e){super(e)}static init_Ray(){this.prototype.default_view=c,this.mixins(r.LineVector),this.define((({})=>({length:[_.DistanceSpec,0],angle:[_.AngleSpec,0]})))}}s.Ray=g,g.__name__=\"Ray\",g.init_Ray()},\n function _(t,s,e,i,h){i();const r=t(288),n=t(106),a=t(24),o=t(12),l=t(59);class _ extends r.CenterRotatableView{_map_data(){if(\"data\"==this.model.properties.width.units)[this.sw,this.sx0]=this._map_dist_corner_for_data_side_length(this._x,this.width,this.renderer.xscale);else{this.sw=a.to_screen(this.width);const t=this.sx.length;this.sx0=new a.ScreenArray(t);for(let s=0;s<t;s++)this.sx0[s]=this.sx[s]-this.sw[s]/2}if(\"data\"==this.model.properties.height.units)[this.sh,this.sy1]=this._map_dist_corner_for_data_side_length(this._y,this.height,this.renderer.yscale);else{this.sh=a.to_screen(this.height);const t=this.sy.length;this.sy1=new a.ScreenArray(t);for(let s=0;s<t;s++)this.sy1[s]=this.sy[s]-this.sh[s]/2}const t=this.sw.length;this.ssemi_diag=new a.ScreenArray(t);for(let s=0;s<t;s++)this.ssemi_diag[s]=Math.sqrt(this.sw[s]/2*this.sw[s]/2+this.sh[s]/2*this.sh[s]/2)}_render(t,s,e){const{sx:i,sy:h,sx0:r,sy1:n,sw:a,sh:o,angle:l}=null!=e?e:this;for(const e of s){const s=i[e],_=h[e],c=r[e],d=n[e],f=a[e],y=o[e],g=l.get(e);isNaN(s+_+c+d+f+y+g)||0!=f&&0!=y&&(t.beginPath(),g?(t.translate(s,_),t.rotate(g),t.rect(-f/2,-y/2,f,y),t.rotate(-g),t.translate(-s,-_)):t.rect(c,d,f,y),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),t.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.stroke()))}}_hit_rect(t){return this._hit_rect_against_index(t)}_hit_point(t){let{sx:s,sy:e}=t;const i=this.renderer.xscale.invert(s),h=this.renderer.yscale.invert(e),r=this.sx0.length,n=new a.ScreenArray(r);for(let t=0;t<r;t++)n[t]=this.sx0[t]+this.sw[t]/2;const _=new a.ScreenArray(r);for(let t=0;t<r;t++)_[t]=this.sy1[t]+this.sh[t]/2;const c=o.max(this._ddist(0,n,this.ssemi_diag)),d=o.max(this._ddist(1,_,this.ssemi_diag)),f=i-c,y=i+c,g=h-d,w=h+d;let x,u;const v=[];for(const t of this.index.indices({x0:f,x1:y,y0:g,y1:w})){const i=this.angle.get(t);if(i){const h=Math.sin(-i),r=Math.cos(-i),n=r*(s-this.sx[t])-h*(e-this.sy[t])+this.sx[t],a=h*(s-this.sx[t])+r*(e-this.sy[t])+this.sy[t];s=n,e=a,x=Math.abs(this.sx[t]-s)<=this.sw[t]/2,u=Math.abs(this.sy[t]-e)<=this.sh[t]/2}else{const i=s-this.sx0[t],h=e-this.sy1[t];x=0<=i&&i<=this.sw[t],u=0<=h&&h<=this.sh[t]}x&&u&&v.push(t)}return new l.Selection({indices:v})}_map_dist_corner_for_data_side_length(t,s,e){const i=t.length,h=new Float64Array(i),r=new Float64Array(i);for(let e=0;e<i;e++){const i=t[e],n=s.get(e)/2;h[e]=i-n,r[e]=i+n}const n=e.v_compute(h),a=e.v_compute(r),o=this.sdist(e,h,s,\"edge\",this.model.dilate);let l=n;for(let t=0;t<i;t++){const s=n[t],e=a[t];if(!isNaN(s+e)&&s!=e){l=s<e?n:a;break}}return[o,l]}_ddist(t,s,e){const i=a.infer_type(s,e),h=0==t?this.renderer.xscale:this.renderer.yscale,r=s,n=r.length,o=new i(n);for(let t=0;t<n;t++)o[t]=r[t]+e[t];const l=h.v_invert(r),_=h.v_invert(o),c=l.length,d=new i(c);for(let t=0;t<c;t++)d[t]=Math.abs(_[t]-l[t]);return d}draw_legend_for_index(t,s,e){n.generic_area_vector_legend(this.visuals,t,s,e)}}e.RectView=_,_.__name__=\"RectView\";class c extends r.CenterRotatable{constructor(t){super(t)}static init_Rect(){this.prototype.default_view=_,this.define((({Boolean:t})=>({dilate:[t,!1]})))}}e.Rect=c,c.__name__=\"Rect\",c.init_Rect()},\n function _(e,t,r,s,i){s();const a=e(1),n=e(304),_=e(305),l=e(283),c=a.__importStar(e(18));class o extends n.MarkerView{_init_webgl(){const{webgl:e}=this.renderer.plot_view.canvas_view;if(null!=e){const t=new Set(this.marker);if(1==t.size){const[r]=[...t];if(l.MarkerGL.is_supported(r)){const{glglyph:t}=this;if(null==t||t.marker_type!=r)return void(this.glglyph=new l.MarkerGL(e.gl,this,r))}}}delete this.glglyph}_set_data(e){super._set_data(e),this._init_webgl()}_render(e,t,r){const{sx:s,sy:i,size:a,angle:n,marker:l}=null!=r?r:this;for(const r of t){const t=s[r],c=i[r],o=a.get(r),g=n.get(r),h=l.get(r);if(isNaN(t+c+o+g)||null==h)continue;const d=o/2;e.beginPath(),e.translate(t,c),g&&e.rotate(g),_.marker_funcs[h](e,r,d,this.visuals),g&&e.rotate(-g),e.translate(-t,-c)}}draw_legend_for_index(e,{x0:t,x1:r,y0:s,y1:i},a){const n=a+1,_=this.marker.get(a),l=Object.assign(Object.assign({},this._get_legend_args({x0:t,x1:r,y0:s,y1:i},a)),{marker:new c.UniformScalar(_,n)});this._render(e,[a],l)}}r.ScatterView=o,o.__name__=\"ScatterView\";class g extends n.Marker{constructor(e){super(e)}static init_Scatter(){this.prototype.default_view=o,this.define((()=>({marker:[c.MarkerSpec,{value:\"circle\"}]})))}}r.Scatter=g,g.__name__=\"Scatter\",g.init_Scatter()},\n function _(e,t,s,i,n){i();const r=e(1),a=e(64),c=e(48),_=r.__importStar(e(107)),o=r.__importStar(e(18)),h=e(9),l=e(59);class x extends a.XYGlyphView{_render(e,t,s){const{sx:i,sy:n,size:r,angle:a}=null!=s?s:this;for(const s of t){const t=i[s],c=n[s],_=r.get(s),o=a.get(s);if(isNaN(t+c+_+o))continue;const h=_/2;e.beginPath(),e.translate(t,c),o&&e.rotate(o),this._render_one(e,s,h,this.visuals),o&&e.rotate(-o),e.translate(-t,-c)}}_mask_data(){const{x_target:e,y_target:t}=this.renderer.plot_view.frame,s=e.widen(this.max_size).map((e=>this.renderer.xscale.invert(e))),i=t.widen(this.max_size).map((e=>this.renderer.yscale.invert(e)));return this.index.indices({x0:s.start,x1:s.end,y0:i.start,y1:i.end})}_hit_point(e){const{sx:t,sy:s}=e,{max_size:i}=this,{hit_dilation:n}=this.model,r=t-i*n,a=t+i*n,[c,_]=this.renderer.xscale.r_invert(r,a),o=s-i*n,h=s+i*n,[x,d]=this.renderer.yscale.r_invert(o,h),y=this.index.indices({x0:c,x1:_,y0:x,y1:d}),g=[];for(const e of y){const i=this.size.get(e)/2*n;Math.abs(this.sx[e]-t)<=i&&Math.abs(this.sy[e]-s)<=i&&g.push(e)}return new l.Selection({indices:g})}_hit_span(e){const{sx:t,sy:s}=e,i=this.bounds(),n=this.max_size/2;let r,a,c,_;if(\"h\"==e.direction){c=i.y0,_=i.y1;const e=t-n,s=t+n;[r,a]=this.renderer.xscale.r_invert(e,s)}else{r=i.x0,a=i.x1;const e=s-n,t=s+n;[c,_]=this.renderer.yscale.r_invert(e,t)}const o=[...this.index.indices({x0:r,x1:a,y0:c,y1:_})];return new l.Selection({indices:o})}_hit_rect(e){const{sx0:t,sx1:s,sy0:i,sy1:n}=e,[r,a]=this.renderer.xscale.r_invert(t,s),[c,_]=this.renderer.yscale.r_invert(i,n),o=[...this.index.indices({x0:r,x1:a,y0:c,y1:_})];return new l.Selection({indices:o})}_hit_poly(e){const{sx:t,sy:s}=e,i=h.range(0,this.sx.length),n=[];for(let e=0,r=i.length;e<r;e++){const r=i[e];_.point_in_poly(this.sx[e],this.sy[e],t,s)&&n.push(r)}return new l.Selection({indices:n})}_get_legend_args({x0:e,x1:t,y0:s,y1:i},n){const r=n+1,a=new Array(r),c=new Array(r);a[n]=(e+t)/2,c[n]=(s+i)/2;const _=.4*Math.min(Math.abs(t-e),Math.abs(i-s));return{sx:a,sy:c,size:new o.UniformScalar(_,r),angle:new o.UniformScalar(0,r)}}draw_legend_for_index(e,{x0:t,x1:s,y0:i,y1:n},r){const a=this._get_legend_args({x0:t,x1:s,y0:i,y1:n},r);this._render(e,[r],a)}}s.MarkerView=x,x.__name__=\"MarkerView\";class d extends a.XYGlyph{constructor(e){super(e)}static init_Marker(){this.mixins([c.LineVector,c.FillVector,c.HatchVector]),this.define((({Number:e})=>({size:[o.ScreenDistanceSpec,{value:4}],angle:[o.AngleSpec,0],hit_dilation:[e,1]})))}}s.Marker=d,d.__name__=\"Marker\",d.init_Marker()},\n function _(t,e,i,o,l){o();const n=Math.sqrt(3),c=Math.sqrt(5),r=(c+1)/4,s=Math.sqrt((5-c)/8),f=(c-1)/4,a=Math.sqrt((5+c)/8);function h(t,e){t.rotate(Math.PI/4),d(t,e),t.rotate(-Math.PI/4)}function v(t,e){const i=e*n,o=i/3;t.moveTo(-i/2,-o),t.lineTo(0,0),t.lineTo(i/2,-o),t.lineTo(0,0),t.lineTo(0,e)}function d(t,e){t.moveTo(0,e),t.lineTo(0,-e),t.moveTo(-e,0),t.lineTo(e,0)}function _(t,e){t.moveTo(0,e),t.lineTo(e/1.5,0),t.lineTo(0,-e),t.lineTo(-e/1.5,0),t.closePath()}function u(t,e){const i=e*n,o=i/3;t.moveTo(-e,o),t.lineTo(e,o),t.lineTo(0,o-i),t.closePath()}function z(t,e,i,o){t.arc(0,0,i,0,2*Math.PI,!1),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function T(t,e,i,o){_(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function k(t,e,i,o){!function(t,e){t.beginPath(),t.arc(0,0,e/4,0,2*Math.PI,!1),t.closePath()}(t,i),o.line.set_vectorize(t,e),t.fillStyle=t.strokeStyle,t.fill()}function P(t,e,i,o){!function(t,e){const i=e/2,o=n*i;t.moveTo(e,0),t.lineTo(i,-o),t.lineTo(-i,-o),t.lineTo(-e,0),t.lineTo(-i,o),t.lineTo(i,o),t.closePath()}(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function m(t,e,i,o){const l=2*i;t.rect(-i,-i,l,l),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function q(t,e,i,o){!function(t,e){const i=Math.sqrt(5-2*c)*e;t.moveTo(0,-e),t.lineTo(i*f,i*a-e),t.lineTo(i*(1+f),i*a-e),t.lineTo(i*(1+f-r),i*(a+s)-e),t.lineTo(i*(1+2*f-r),i*(2*a+s)-e),t.lineTo(0,2*i*a-e),t.lineTo(-i*(1+2*f-r),i*(2*a+s)-e),t.lineTo(-i*(1+f-r),i*(a+s)-e),t.lineTo(-i*(1+f),i*a-e),t.lineTo(-i*f,i*a-e),t.closePath()}(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}function M(t,e,i,o){u(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}i.marker_funcs={asterisk:function(t,e,i,o){d(t,i),h(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},circle:z,circle_cross:function(t,e,i,o){t.arc(0,0,i,0,2*Math.PI,!1),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),d(t,i),t.stroke())},circle_dot:function(t,e,i,o){z(t,e,i,o),k(t,e,i,o)},circle_y:function(t,e,i,o){t.arc(0,0,i,0,2*Math.PI,!1),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),v(t,i),t.stroke())},circle_x:function(t,e,i,o){t.arc(0,0,i,0,2*Math.PI,!1),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),h(t,i),t.stroke())},cross:function(t,e,i,o){d(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},diamond:T,diamond_dot:function(t,e,i,o){T(t,e,i,o),k(t,e,i,o)},diamond_cross:function(t,e,i,o){_(t,i),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.moveTo(0,i),t.lineTo(0,-i),t.moveTo(-i/1.5,0),t.lineTo(i/1.5,0),t.stroke())},dot:k,hex:P,hex_dot:function(t,e,i,o){P(t,e,i,o),k(t,e,i,o)},inverted_triangle:function(t,e,i,o){t.rotate(Math.PI),u(t,i),t.rotate(-Math.PI),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},plus:function(t,e,i,o){const l=3*i/8,n=[l,l,i,i,l,l,-l,-l,-i,-i,-l,-l],c=[i,l,l,-l,-l,-i,-i,-l,-l,l,l,i];t.beginPath();for(let e=0;e<12;e++)t.lineTo(n[e],c[e]);t.closePath(),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},square:m,square_cross:function(t,e,i,o){const l=2*i;t.rect(-i,-i,l,l),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),d(t,i),t.stroke())},square_dot:function(t,e,i,o){m(t,e,i,o),k(t,e,i,o)},square_pin:function(t,e,i,o){const l=3*i/8;t.moveTo(-i,-i),t.quadraticCurveTo(0,-l,i,-i),t.quadraticCurveTo(l,0,i,i),t.quadraticCurveTo(0,l,-i,i),t.quadraticCurveTo(-l,0,-i,-i),t.closePath(),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},square_x:function(t,e,i,o){const l=2*i;t.rect(-i,-i,l,l),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.moveTo(-i,i),t.lineTo(i,-i),t.moveTo(-i,-i),t.lineTo(i,i),t.stroke())},star:q,star_dot:function(t,e,i,o){q(t,e,i,o),k(t,e,i,o)},triangle:M,triangle_dot:function(t,e,i,o){M(t,e,i,o),k(t,e,i,o)},triangle_pin:function(t,e,i,o){const l=i*n,c=l/3,r=3*c/8;t.moveTo(-i,c),t.quadraticCurveTo(0,r,i,c),t.quadraticCurveTo(n*r/2,r/2,0,c-l),t.quadraticCurveTo(-n*r/2,r/2,-i,c),t.closePath(),o.fill.doit&&(o.fill.set_vectorize(t,e),t.fill()),o.hatch.doit&&(o.hatch.set_vectorize(t,e),t.fill()),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},dash:function(t,e,i,o){!function(t,e){t.moveTo(-e,0),t.lineTo(e,0)}(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},x:function(t,e,i,o){h(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())},y:function(t,e,i,o){v(t,i),o.line.doit&&(o.line.set_vectorize(t,e),t.stroke())}}},\n function _(e,t,s,i,n){i();const r=e(1),_=r.__importStar(e(107)),o=r.__importStar(e(18)),h=e(48),a=e(65),c=e(98),d=e(106),x=e(59);class y extends c.GlyphView{_project_data(){a.inplace.project_xy(this._x0,this._y0),a.inplace.project_xy(this._x1,this._y1)}_index_data(e){const{min:t,max:s}=Math,{_x0:i,_x1:n,_y0:r,_y1:_,data_size:o}=this;for(let h=0;h<o;h++){const o=i[h],a=n[h],c=r[h],d=_[h];isNaN(o+a+c+d)?e.add_empty():e.add(t(o,a),t(c,d),s(o,a),s(c,d))}}_render(e,t,s){if(this.visuals.line.doit){const{sx0:i,sy0:n,sx1:r,sy1:_}=null!=s?s:this;for(const s of t){const t=i[s],o=n[s],h=r[s],a=_[s];isNaN(t+o+h+a)||(e.beginPath(),e.moveTo(t,o),e.lineTo(h,a),this.visuals.line.set_vectorize(e,s),e.stroke())}}}_hit_point(e){const{sx:t,sy:s}=e,i={x:t,y:s},[n,r]=this.renderer.xscale.r_invert(t-2,t+2),[o,h]=this.renderer.yscale.r_invert(s-2,s+2),a=this.index.indices({x0:n,y0:o,x1:r,y1:h}),c=[];for(const e of a){const t=Math.max(2,this.line_width.get(e)/2)**2,s={x:this.sx0[e],y:this.sy0[e]},n={x:this.sx1[e],y:this.sy1[e]};_.dist_to_segment_squared(i,s,n)<t&&c.push(e)}return new x.Selection({indices:c})}_hit_span(e){const[t,s]=this.renderer.plot_view.frame.bbox.ranges,{sx:i,sy:n}=e;let r,_,o;\"v\"==e.direction?(o=this.renderer.yscale.invert(n),[r,_]=[this._y0,this._y1]):(o=this.renderer.xscale.invert(i),[r,_]=[this._x0,this._x1]);const h=[],[a,c]=this.renderer.xscale.r_invert(t.start,t.end),[d,y]=this.renderer.yscale.r_invert(s.start,s.end),l=this.index.indices({x0:a,y0:d,x1:c,y1:y});for(const t of l){(r[t]<=o&&o<=_[t]||_[t]<=o&&o<=r[t])&&h.push(t);const s=1.5+this.line_width.get(t)/2;r[t]==_[t]&&(\"h\"==e.direction?Math.abs(this.sx0[t]-i)<=s&&h.push(t):Math.abs(this.sy0[t]-n)<=s&&h.push(t))}return new x.Selection({indices:h})}scenterxy(e){return[this.sx0[e]/2+this.sx1[e]/2,this.sy0[e]/2+this.sy1[e]/2]}draw_legend_for_index(e,t,s){d.generic_line_vector_legend(this.visuals,e,t,s)}}s.SegmentView=y,y.__name__=\"SegmentView\";class l extends c.Glyph{constructor(e){super(e)}static init_Segment(){this.prototype.default_view=y,this.define((({})=>({x0:[o.XCoordinateSpec,{field:\"x0\"}],y0:[o.YCoordinateSpec,{field:\"y0\"}],x1:[o.XCoordinateSpec,{field:\"x1\"}],y1:[o.YCoordinateSpec,{field:\"y1\"}]}))),this.mixins(h.LineVector)}}s.Segment=l,l.__name__=\"Segment\",l.init_Segment()},\n function _(t,e,s,i,n){i();const _=t(1),l=t(64),o=_.__importStar(t(48)),a=t(308);class c extends l.XYGlyphView{_set_data(){const{tension:t,closed:e}=this.model;[this._xt,this._yt]=a.catmullrom_spline(this._x,this._y,20,t,e)}_map_data(){const{x_scale:t,y_scale:e}=this.renderer.coordinates;this.sxt=t.v_compute(this._xt),this.syt=e.v_compute(this._yt)}_render(t,e,s){const{sxt:i,syt:n}=null!=s?s:this;this.visuals.line.set_value(t);const _=i.length;for(let e=0;e<_;e++)0!=e?isNaN(i[e])||isNaN(n[e])?(t.stroke(),t.beginPath()):t.lineTo(i[e],n[e]):(t.beginPath(),t.moveTo(i[e],n[e]));t.stroke()}}s.SplineView=c,c.__name__=\"SplineView\";class h extends l.XYGlyph{constructor(t){super(t)}static init_Spline(){this.prototype.default_view=c,this.mixins(o.LineScalar),this.define((({Boolean:t,Number:e})=>({tension:[e,.5],closed:[t,!1]})))}}s.Spline=h,h.__name__=\"Spline\",h.init_Spline()},\n function _(n,t,e,o,s){o();const c=n(24),l=n(11);e.catmullrom_spline=function(n,t,e=10,o=.5,s=!1){l.assert(n.length==t.length);const r=n.length,f=s?r+1:r,w=c.infer_type(n,t),i=new w(f+2),u=new w(f+2);i.set(n,1),u.set(t,1),s?(i[0]=n[r-1],u[0]=t[r-1],i[f]=n[0],u[f]=t[0],i[f+1]=n[1],u[f+1]=t[1]):(i[0]=n[0],u[0]=t[0],i[f+1]=n[r-1],u[f+1]=t[r-1]);const g=new w(4*(e+1));for(let n=0,t=0;n<=e;n++){const o=n/e,s=o**2,c=o*s;g[t++]=2*c-3*s+1,g[t++]=-2*c+3*s,g[t++]=c-2*s+o,g[t++]=c-s}const h=new w((f-1)*(e+1)),_=new w((f-1)*(e+1));for(let n=1,t=0;n<f;n++){const s=(i[n+1]-i[n-1])*o,c=(u[n+1]-u[n-1])*o,l=(i[n+2]-i[n])*o,r=(u[n+2]-u[n])*o;for(let o=0;o<=4*e;t++){const e=g[o++],f=g[o++],w=g[o++],a=g[o++];h[t]=e*i[n]+f*i[n+1]+w*s+a*l,_[t]=e*u[n]+f*u[n+1]+w*c+a*r}}return[h,_]}},\n function _(e,t,i,n,s){n();const o=e(1),l=e(64),r=e(106),a=o.__importStar(e(48)),_=e(20);class c extends l.XYGlyphView{_render(e,t,i){const{sx:n,sy:s}=null!=i?i:this;let o=!1,l=null;this.visuals.line.set_value(e);const r=t.length;if(!(r<2)){e.beginPath(),e.moveTo(n[0],s[0]);for(const i of t){let t,r,a,_;switch(this.model.mode){case\"before\":[t,a]=[n[i-1],s[i]],[r,_]=[n[i],s[i]];break;case\"after\":[t,a]=[n[i],s[i-1]],[r,_]=[n[i],s[i]];break;case\"center\":{const e=(n[i-1]+n[i])/2;[t,a]=[e,s[i-1]],[r,_]=[e,s[i]];break}default:throw new Error(\"unexpected\")}if(o){if(!isFinite(n[i]+s[i])){e.stroke(),e.beginPath(),o=!1,l=i;continue}null!=l&&i-l>1&&(e.stroke(),o=!1)}o?(e.lineTo(t,a),e.lineTo(r,_)):(e.beginPath(),e.moveTo(n[i],s[i]),o=!0),l=i}e.lineTo(n[r-1],s[r-1]),e.stroke()}}draw_legend_for_index(e,t,i){r.generic_line_scalar_legend(this.visuals,e,t)}}i.StepView=c,c.__name__=\"StepView\";class d extends l.XYGlyph{constructor(e){super(e)}static init_Step(){this.prototype.default_view=c,this.mixins(a.LineScalar),this.define((()=>({mode:[_.StepMode,\"before\"]})))}}i.Step=d,d.__name__=\"Step\",d.init_Step()},\n function _(t,e,s,i,n){i();const o=t(1),_=t(64),h=t(48),l=o.__importStar(t(107)),r=o.__importStar(t(18)),a=t(143),c=t(11),x=t(59);class u extends _.XYGlyphView{_rotate_point(t,e,s,i,n){return[(t-s)*Math.cos(n)-(e-i)*Math.sin(n)+s,(t-s)*Math.sin(n)+(e-i)*Math.cos(n)+i]}_text_bounds(t,e,s,i){return[[t,t+s,t+s,t,t],[e,e,e-i,e-i,e]]}_render(t,e,s){const{sx:i,sy:n,x_offset:o,y_offset:_,angle:h,text:l}=null!=s?s:this;this._sys=[],this._sxs=[];for(const s of e){const e=this._sxs[s]=[],r=this._sys[s]=[],c=i[s],x=n[s],u=o.get(s),f=_.get(s),p=h.get(s),g=l.get(s);if(!isNaN(c+x+u+f+p)&&null!=g&&this.visuals.text.doit){const i=`${g}`;t.save(),t.translate(c+u,x+f),t.rotate(p),this.visuals.text.set_vectorize(t,s);const n=this.visuals.text.font_value(s),{height:o}=a.font_metrics(n),_=this.text_line_height.get(s)*o;if(-1==i.indexOf(\"\\n\")){t.fillText(i,0,0);const s=c+u,n=x+f,o=t.measureText(i).width,[h,l]=this._text_bounds(s,n,o,_);e.push(h),r.push(l)}else{const n=i.split(\"\\n\"),o=_*n.length,h=this.text_baseline.get(s);let l;switch(h){case\"top\":l=0;break;case\"middle\":l=-o/2+_/2;break;case\"bottom\":l=-o+_;break;default:l=0,console.warn(`'${h}' baseline not supported with multi line text`)}for(const s of n){t.fillText(s,0,l);const i=c+u,n=l+x+f,o=t.measureText(s).width,[h,a]=this._text_bounds(i,n,o,_);e.push(h),r.push(a),l+=_}}t.restore()}}}_hit_point(t){const{sx:e,sy:s}=t,i=[];for(let t=0;t<this._sxs.length;t++){const n=this._sxs[t],o=this._sys[t],_=n.length;for(let h=0,r=_;h<r;h++){const[r,a]=this._rotate_point(e,s,n[_-1][0],o[_-1][0],-this.angle.get(t));l.point_in_poly(r,a,n[h],o[h])&&i.push(t)}}return new x.Selection({indices:i})}scenterxy(t){const e=this._sxs[t],s=this._sys[t];c.assert(0!=e.length&&0!=s.length);const i=e[0][0],n=s[0][0],o=(e[0][2]+i)/2,_=(s[0][2]+n)/2,[h,l]=this._rotate_point(o,_,i,n,this.angle.get(t));return[h,l]}}s.TextView=u,u.__name__=\"TextView\";class f extends _.XYGlyph{constructor(t){super(t)}static init_Text(){this.prototype.default_view=u,this.mixins(h.TextVector),this.define((({})=>({text:[r.NullStringSpec,{field:\"text\"}],angle:[r.AngleSpec,0],x_offset:[r.NumberSpec,0],y_offset:[r.NumberSpec,0]})))}}s.Text=f,f.__name__=\"Text\",f.init_Text()},\n function _(t,s,e,i,r){i();const h=t(1),o=t(290),a=t(24),n=h.__importStar(t(18));class _ extends o.BoxView{scenterxy(t){return[this.sx[t],(this.stop[t]+this.sbottom[t])/2]}_lrtb(t){const s=this.width.get(t)/2,e=this._x[t],i=this._top[t],r=this._bottom[t];return[e-s,e+s,Math.max(i,r),Math.min(i,r)]}_map_data(){this.sx=this.renderer.xscale.v_compute(this._x),this.sw=this.sdist(this.renderer.xscale,this._x,this.width,\"center\"),this.stop=this.renderer.yscale.v_compute(this._top),this.sbottom=this.renderer.yscale.v_compute(this._bottom);const t=this.sx.length;this.sleft=new a.ScreenArray(t),this.sright=new a.ScreenArray(t);for(let s=0;s<t;s++)this.sleft[s]=this.sx[s]-this.sw[s]/2,this.sright[s]=this.sx[s]+this.sw[s]/2;this._clamp_viewport()}}e.VBarView=_,_.__name__=\"VBarView\";class c extends o.Box{constructor(t){super(t)}static init_VBar(){this.prototype.default_view=_,this.define((({})=>({x:[n.XCoordinateSpec,{field:\"x\"}],bottom:[n.YCoordinateSpec,{value:0}],width:[n.NumberSpec,{value:1}],top:[n.YCoordinateSpec,{field:\"top\"}]})))}}e.VBar=c,c.__name__=\"VBar\",c.init_VBar()},\n function _(e,t,s,i,n){i();const r=e(1),a=e(64),l=e(106),c=e(48),d=e(24),h=e(20),o=r.__importStar(e(18)),_=e(10),u=e(59);class g extends a.XYGlyphView{_map_data(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this.radius):this.sradius=d.to_screen(this.radius)}_render(e,t,s){const{sx:i,sy:n,sradius:r,start_angle:a,end_angle:l}=null!=s?s:this,c=\"anticlock\"==this.model.direction;for(const s of t){const t=i[s],d=n[s],h=r[s],o=a.get(s),_=l.get(s);isNaN(t+d+h+o+_)||(e.beginPath(),e.arc(t,d,h,o,_,c),e.lineTo(t,d),e.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(e,s),e.fill()),this.visuals.hatch.doit&&(this.visuals.hatch.set_vectorize(e,s),e.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(e,s),e.stroke()))}}_hit_point(e){let t,s,i,n,r,a,l,c,d;const{sx:h,sy:o}=e,g=this.renderer.xscale.invert(h),p=this.renderer.yscale.invert(o),x=2*this.max_radius;\"data\"===this.model.properties.radius.units?(a=g-x,l=g+x,c=p-x,d=p+x):(s=h-x,i=h+x,[a,l]=this.renderer.xscale.r_invert(s,i),n=o-x,r=o+x,[c,d]=this.renderer.yscale.r_invert(n,r));const f=[];for(const e of this.index.indices({x0:a,x1:l,y0:c,y1:d})){const a=this.sradius[e]**2;[s,i]=this.renderer.xscale.r_compute(g,this._x[e]),[n,r]=this.renderer.yscale.r_compute(p,this._y[e]),t=(s-i)**2+(n-r)**2,t<=a&&f.push(e)}const v=\"anticlock\"==this.model.direction,y=[];for(const e of f){const t=Math.atan2(o-this.sy[e],h-this.sx[e]);_.angle_between(-t,-this.start_angle.get(e),-this.end_angle.get(e),v)&&y.push(e)}return new u.Selection({indices:y})}draw_legend_for_index(e,t,s){l.generic_area_vector_legend(this.visuals,e,t,s)}scenterxy(e){const t=this.sradius[e]/2,s=(this.start_angle.get(e)+this.end_angle.get(e))/2;return[this.sx[e]+t*Math.cos(s),this.sy[e]+t*Math.sin(s)]}}s.WedgeView=g,g.__name__=\"WedgeView\";class p extends a.XYGlyph{constructor(e){super(e)}static init_Wedge(){this.prototype.default_view=g,this.mixins([c.LineVector,c.FillVector,c.HatchVector]),this.define((({})=>({direction:[h.Direction,\"anticlock\"],radius:[o.DistanceSpec,{field:\"radius\"}],start_angle:[o.AngleSpec,{field:\"start_angle\"}],end_angle:[o.AngleSpec,{field:\"end_angle\"}]})))}}s.Wedge=p,p.__name__=\"Wedge\",p.init_Wedge()},\n function _(t,_,r,o,a){o();const e=t(1);e.__exportStar(t(126),r),e.__exportStar(t(125),r),e.__exportStar(t(314),r)},\n function _(t,a,o,r,e){r();const n=t(125);class l extends n.LayoutProvider{constructor(t){super(t)}static init_StaticLayoutProvider(){this.define((({Number:t,Tuple:a,Dict:o})=>({graph_layout:[o(a(t,t)),{}]})))}get_node_coordinates(t){var a;const o=null!==(a=t.data.index)&&void 0!==a?a:[],r=o.length,e=new Float64Array(r),n=new Float64Array(r);for(let t=0;t<r;t++){const a=this.graph_layout[o[t]],[r,l]=null!=a?a:[NaN,NaN];e[t]=r,n[t]=l}return[e,n]}get_edge_coordinates(t){var a,o;const r=null!==(a=t.data.start)&&void 0!==a?a:[],e=null!==(o=t.data.end)&&void 0!==o?o:[],n=Math.min(r.length,e.length),l=[],i=[],u=null!=t.data.xs&&null!=t.data.ys;for(let a=0;a<n;a++){const o=null!=this.graph_layout[r[a]]&&null!=this.graph_layout[e[a]];if(u&&o)l.push(t.data.xs[a]),i.push(t.data.ys[a]);else{let t,n;o?(t=this.graph_layout[r[a]],n=this.graph_layout[e[a]]):(t=[NaN,NaN],n=[NaN,NaN]),l.push([t[0],n[0]]),i.push([t[1],n[1]])}}return[l,i]}}o.StaticLayoutProvider=l,l.__name__=\"StaticLayoutProvider\",l.init_StaticLayoutProvider()},\n function _(i,d,n,r,G){r(),G(\"Grid\",i(316).Grid)},\n function _(i,e,t,s,n){s();const r=i(1),o=i(162),d=i(164),l=i(165),_=r.__importStar(i(48)),a=i(8);class h extends d.GuideRendererView{_render(){const i=this.layer.ctx;i.save(),this._draw_regions(i),this._draw_minor_grids(i),this._draw_grids(i),i.restore()}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render()))}_draw_regions(i){if(!this.visuals.band_fill.doit&&!this.visuals.band_hatch.doit)return;const[e,t]=this.grid_coords(\"major\",!1);for(let s=0;s<e.length-1;s++){if(s%2!=1)continue;const[n,r]=this.coordinates.map_to_screen(e[s],t[s]),[o,d]=this.coordinates.map_to_screen(e[s+1],t[s+1]);i.beginPath(),i.rect(n[0],r[0],o[1]-n[0],d[1]-r[0]),this.visuals.band_fill.doit&&(this.visuals.band_fill.set_value(i),i.fill()),this.visuals.band_hatch.doit&&(this.visuals.band_hatch.set_value(i),i.fill())}}_draw_grids(i){if(!this.visuals.grid_line.doit)return;const[e,t]=this.grid_coords(\"major\");this._draw_grid_helper(i,this.visuals.grid_line,e,t)}_draw_minor_grids(i){if(!this.visuals.minor_grid_line.doit)return;const[e,t]=this.grid_coords(\"minor\");this._draw_grid_helper(i,this.visuals.minor_grid_line,e,t)}_draw_grid_helper(i,e,t,s){e.set_value(i),i.beginPath();for(let e=0;e<t.length;e++){const[n,r]=this.coordinates.map_to_screen(t[e],s[e]);i.moveTo(Math.round(n[0]),Math.round(r[0]));for(let e=1;e<n.length;e++)i.lineTo(Math.round(n[e]),Math.round(r[e]))}i.stroke()}ranges(){const i=this.model.dimension,e=(i+1)%2,{ranges:t}=this.coordinates;return[t[i],t[e]]}computed_bounds(){const[i]=this.ranges(),e=this.model.bounds,t=[i.min,i.max];let s,n;if(a.isArray(e))s=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]),s<t[0]&&(s=t[0]),n>t[1]&&(n=t[1]);else{[s,n]=t;for(const i of this.plot_view.axis_views)i.dimension==this.model.dimension&&i.model.x_range_name==this.model.x_range_name&&i.model.y_range_name==this.model.y_range_name&&([s,n]=i.computed_bounds)}return[s,n]}grid_coords(i,e=!0){const t=this.model.dimension,s=(t+1)%2,[n,r]=this.ranges();let[o,d]=this.computed_bounds();[o,d]=[Math.min(o,d),Math.max(o,d)];const l=[[],[]],_=this.model.get_ticker();if(null==_)return l;const a=_.get_ticks(o,d,n,r.min)[i],h=n.min,u=n.max,c=r.min,m=r.max;e||(a[0]!=h&&a.splice(0,0,h),a[a.length-1]!=u&&a.push(u));for(let i=0;i<a.length;i++){if((a[i]==h||a[i]==u)&&e)continue;const n=[],r=[],o=2;for(let e=0;e<o;e++){const t=c+(m-c)/(o-1)*e;n.push(a[i]),r.push(t)}l[t].push(n),l[s].push(r)}return l}}t.GridView=h,h.__name__=\"GridView\";class u extends d.GuideRenderer{constructor(i){super(i)}static init_Grid(){this.prototype.default_view=h,this.mixins([[\"grid_\",_.Line],[\"minor_grid_\",_.Line],[\"band_\",_.Fill],[\"band_\",_.Hatch]]),this.define((({Number:i,Auto:e,Enum:t,Ref:s,Tuple:n,Or:r,Nullable:d})=>({bounds:[r(n(i,i),e),\"auto\"],dimension:[t(0,1),0],axis:[d(s(o.Axis)),null],ticker:[d(s(l.Ticker)),null]}))),this.override({level:\"underlay\",band_fill_color:null,band_fill_alpha:0,grid_line_color:\"#e5e5e5\",minor_grid_line_color:null})}get_ticker(){return null!=this.ticker?this.ticker:null!=this.axis?this.axis.ticker:null}}t.Grid=u,u.__name__=\"Grid\",u.init_Grid()},\n function _(o,a,x,B,e){B(),e(\"Box\",o(318).Box),e(\"Column\",o(320).Column),e(\"GridBox\",o(321).GridBox),e(\"HTMLBox\",o(322).HTMLBox),e(\"LayoutDOM\",o(319).LayoutDOM),e(\"Panel\",o(323).Panel),e(\"Row\",o(324).Row),e(\"Spacer\",o(325).Spacer),e(\"Tabs\",o(326).Tabs),e(\"WidgetBox\",o(329).WidgetBox)},\n function _(e,n,i,t,s){t();const o=e(319);class c extends o.LayoutDOMView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.children.change,(()=>this.rebuild()))}get child_models(){return this.model.children}}i.BoxView=c,c.__name__=\"BoxView\";class r extends o.LayoutDOM{constructor(e){super(e)}static init_Box(){this.define((({Number:e,Array:n,Ref:i})=>({children:[n(i(o.LayoutDOM)),[]],spacing:[e,0]})))}}i.Box=r,r.__name__=\"Box\",r.init_Box()},\n function _(t,i,e,s,o){s();const l=t(53),n=t(20),h=t(43),a=t(19),r=t(8),_=t(22),d=t(143),c=t(122),u=t(240),m=t(221),p=t(44),g=t(249);class f extends u.DOMView{constructor(){super(...arguments),this._idle_notified=!1,this._offset_parent=null,this._viewport={}}get base_font_size(){const t=getComputedStyle(this.el).fontSize,i=d.parse_css_font_size(t);if(null!=i){const{value:t,unit:e}=i;if(\"px\"==e)return t}return 13}initialize(){super.initialize(),this.el.style.position=this.is_root?\"relative\":\"absolute\",this._child_views=new Map}async lazy_initialize(){await super.lazy_initialize(),await this.build_child_views()}remove(){for(const t of this.child_views)t.remove();this._child_views.clear(),super.remove()}connect_signals(){super.connect_signals(),this.is_root&&(this._on_resize=()=>this.resize_layout(),window.addEventListener(\"resize\",this._on_resize),this._parent_observer=setInterval((()=>{const t=this.el.offsetParent;this._offset_parent!=t&&(this._offset_parent=t,null!=t&&(this.compute_viewport(),this.invalidate_layout()))}),250));const t=this.model.properties;this.on_change([t.width,t.height,t.min_width,t.min_height,t.max_width,t.max_height,t.margin,t.width_policy,t.height_policy,t.sizing_mode,t.aspect_ratio,t.visible],(()=>this.invalidate_layout())),this.on_change([t.background,t.css_classes],(()=>this.invalidate_render()))}disconnect_signals(){null!=this._parent_observer&&clearTimeout(this._parent_observer),null!=this._on_resize&&window.removeEventListener(\"resize\",this._on_resize),super.disconnect_signals()}css_classes(){return super.css_classes().concat(this.model.css_classes)}get child_views(){return this.child_models.map((t=>this._child_views.get(t)))}async build_child_views(){await c.build_views(this._child_views,this.child_models,{parent:this})}render(){super.render(),h.empty(this.el);const{background:t}=this.model;this.el.style.backgroundColor=null!=t?_.color2css(t):\"\",h.classes(this.el).clear().add(...this.css_classes());for(const t of this.child_views)this.el.appendChild(t.el),t.render()}update_layout(){for(const t of this.child_views)t.update_layout();this._update_layout()}update_position(){this.el.style.display=this.model.visible?\"block\":\"none\";const t=this.is_root?this.layout.sizing.margin:void 0;h.position(this.el,this.layout.bbox,t);for(const t of this.child_views)t.update_position()}after_layout(){for(const t of this.child_views)t.after_layout();this._has_finished=!0}compute_viewport(){this._viewport=this._viewport_size()}renderTo(t){t.appendChild(this.el),this._offset_parent=this.el.offsetParent,this.compute_viewport(),this.build()}build(){return this.assert_root(),this.render(),this.update_layout(),this.compute_layout(),this}async rebuild(){await this.build_child_views(),this.invalidate_render()}compute_layout(){const t=Date.now();this.layout.compute(this._viewport),this.update_position(),this.after_layout(),a.logger.debug(`layout computed in ${Date.now()-t} ms`),this.notify_finished()}resize_layout(){this.root.compute_viewport(),this.root.compute_layout()}invalidate_layout(){this.root.update_layout(),this.root.compute_layout()}invalidate_render(){this.render(),this.invalidate_layout()}has_finished(){if(!super.has_finished())return!1;for(const t of this.child_views)if(!t.has_finished())return!1;return!0}notify_finished(){this.is_root?!this._idle_notified&&this.has_finished()&&null!=this.model.document&&(this._idle_notified=!0,this.model.document.notify_idle(this.model)):this.root.notify_finished()}_width_policy(){return null!=this.model.width?\"fixed\":\"fit\"}_height_policy(){return null!=this.model.height?\"fixed\":\"fit\"}box_sizing(){let{width_policy:t,height_policy:i,aspect_ratio:e}=this.model;\"auto\"==t&&(t=this._width_policy()),\"auto\"==i&&(i=this._height_policy());const{sizing_mode:s}=this.model;if(null!=s)if(\"fixed\"==s)t=i=\"fixed\";else if(\"stretch_both\"==s)t=i=\"max\";else if(\"stretch_width\"==s)t=\"max\";else if(\"stretch_height\"==s)i=\"max\";else switch(null==e&&(e=\"auto\"),s){case\"scale_width\":t=\"max\",i=\"min\";break;case\"scale_height\":t=\"min\",i=\"max\";break;case\"scale_both\":t=\"max\",i=\"max\"}const o={width_policy:t,height_policy:i},{min_width:l,min_height:n}=this.model;null!=l&&(o.min_width=l),null!=n&&(o.min_height=n);const{width:h,height:a}=this.model;null!=h&&(o.width=h),null!=a&&(o.height=a);const{max_width:_,max_height:d}=this.model;null!=_&&(o.max_width=_),null!=d&&(o.max_height=d),\"auto\"==e&&null!=h&&null!=a?o.aspect=h/a:r.isNumber(e)&&(o.aspect=e);const{margin:c}=this.model;if(null!=c)if(r.isNumber(c))o.margin={top:c,right:c,bottom:c,left:c};else if(2==c.length){const[t,i]=c;o.margin={top:t,right:i,bottom:t,left:i}}else{const[t,i,e,s]=c;o.margin={top:t,right:i,bottom:e,left:s}}o.visible=this.model.visible;const{align:u}=this.model;return r.isArray(u)?[o.halign,o.valign]=u:o.halign=o.valign=u,o}_viewport_size(){return h.undisplayed(this.el,(()=>{let t=this.el;for(;t=t.parentElement;){if(t.classList.contains(p.root))continue;if(t==document.body){const{margin:{left:t,right:i,top:e,bottom:s}}=h.extents(document.body);return{width:Math.ceil(document.documentElement.clientWidth-t-i),height:Math.ceil(document.documentElement.clientHeight-e-s)}}const{padding:{left:i,right:e,top:s,bottom:o}}=h.extents(t),{width:l,height:n}=t.getBoundingClientRect(),a=Math.ceil(l-i-e),r=Math.ceil(n-s-o);if(a>0||r>0)return{width:a>0?a:void 0,height:r>0?r:void 0}}return{}}))}export(t,i=!0){const e=\"png\"==t?\"canvas\":\"svg\",s=new g.CanvasLayer(e,i),{width:o,height:l}=this.layout.bbox;s.resize(o,l);for(const e of this.child_views){const o=e.export(t,i),{x:l,y:n}=e.layout.bbox;s.ctx.drawImage(o.canvas,l,n)}return s}serializable_state(){return Object.assign(Object.assign({},super.serializable_state()),{bbox:this.layout.bbox.box,children:this.child_views.map((t=>t.serializable_state()))})}}e.LayoutDOMView=f,f.__name__=\"LayoutDOMView\";class w extends l.Model{constructor(t){super(t)}static init_LayoutDOM(){this.define((t=>{const{Boolean:i,Number:e,String:s,Auto:o,Color:l,Array:h,Tuple:a,Or:r,Null:_,Nullable:d}=t,c=a(e,e),u=a(e,e,e,e);return{width:[d(e),null],height:[d(e),null],min_width:[d(e),null],min_height:[d(e),null],max_width:[d(e),null],max_height:[d(e),null],margin:[d(r(e,c,u)),[0,0,0,0]],width_policy:[r(m.SizingPolicy,o),\"auto\"],height_policy:[r(m.SizingPolicy,o),\"auto\"],aspect_ratio:[r(e,o,_),null],sizing_mode:[d(n.SizingMode),null],visible:[i,!0],disabled:[i,!1],align:[r(n.Align,a(n.Align,n.Align)),\"start\"],background:[d(l),null],css_classes:[h(s),[]]}}))}}e.LayoutDOM=w,w.__name__=\"LayoutDOM\",w.init_LayoutDOM()},\n function _(t,s,i,o,n){o();const e=t(318),l=t(223);class u extends e.BoxView{_update_layout(){const t=this.child_views.map((t=>t.layout));this.layout=new l.Column(t),this.layout.rows=this.model.rows,this.layout.spacing=[this.model.spacing,0],this.layout.set_sizing(this.box_sizing())}}i.ColumnView=u,u.__name__=\"ColumnView\";class a extends e.Box{constructor(t){super(t)}static init_Column(){this.prototype.default_view=u,this.define((({Any:t})=>({rows:[t,\"auto\"]})))}}i.Column=a,a.__name__=\"Column\",a.init_Column()},\n function _(t,s,i,o,e){o();const n=t(319),l=t(223);class a extends n.LayoutDOMView{connect_signals(){super.connect_signals();const{children:t,rows:s,cols:i,spacing:o}=this.model.properties;this.on_change([t,s,i,o],(()=>this.rebuild()))}get child_models(){return this.model.children.map((([t])=>t))}_update_layout(){this.layout=new l.Grid,this.layout.rows=this.model.rows,this.layout.cols=this.model.cols,this.layout.spacing=this.model.spacing;for(const[t,s,i,o,e]of this.model.children){const n=this._child_views.get(t);this.layout.items.push({layout:n.layout,row:s,col:i,row_span:o,col_span:e})}this.layout.set_sizing(this.box_sizing())}}i.GridBoxView=a,a.__name__=\"GridBoxView\";class r extends n.LayoutDOM{constructor(t){super(t)}static init_GridBox(){this.prototype.default_view=a,this.define((({Any:t,Int:s,Number:i,Tuple:o,Array:e,Ref:l,Or:a,Opt:r})=>({children:[e(o(l(n.LayoutDOM),s,s,r(s),r(s))),[]],rows:[t,\"auto\"],cols:[t,\"auto\"],spacing:[a(i,o(i,i)),0]})))}}i.GridBox=r,r.__name__=\"GridBox\",r.init_GridBox()},\n function _(t,e,o,s,n){s();const _=t(319),i=t(221);class a extends _.LayoutDOMView{get child_models(){return[]}_update_layout(){this.layout=new i.ContentBox(this.el),this.layout.set_sizing(this.box_sizing())}}o.HTMLBoxView=a,a.__name__=\"HTMLBoxView\";class u extends _.LayoutDOM{constructor(t){super(t)}}o.HTMLBox=u,u.__name__=\"HTMLBox\"},\n function _(e,n,t,i,l){i();const a=e(53),o=e(319);class s extends a.Model{constructor(e){super(e)}static init_Panel(){this.define((({Boolean:e,String:n,Ref:t})=>({title:[n,\"\"],child:[t(o.LayoutDOM)],closable:[e,!1]})))}}t.Panel=s,s.__name__=\"Panel\",s.init_Panel()},\n function _(t,s,i,o,e){o();const n=t(318),a=t(223);class _ extends n.BoxView{_update_layout(){const t=this.child_views.map((t=>t.layout));this.layout=new a.Row(t),this.layout.cols=this.model.cols,this.layout.spacing=[0,this.model.spacing],this.layout.set_sizing(this.box_sizing())}}i.RowView=_,_.__name__=\"RowView\";class l extends n.Box{constructor(t){super(t)}static init_Row(){this.prototype.default_view=_,this.define((({Any:t})=>({cols:[t,\"auto\"]})))}}i.Row=l,l.__name__=\"Row\",l.init_Row()},\n function _(t,e,a,i,s){i();const _=t(319),c=t(221);class n extends _.LayoutDOMView{get child_models(){return[]}_update_layout(){this.layout=new c.LayoutItem,this.layout.set_sizing(this.box_sizing())}}a.SpacerView=n,n.__name__=\"SpacerView\";class o extends _.LayoutDOM{constructor(t){super(t)}static init_Spacer(){this.prototype.default_view=n}}a.Spacer=o,o.__name__=\"Spacer\",o.init_Spacer()},\n function _(e,t,s,i,l){i();const h=e(1),a=e(221),o=e(43),r=e(9),c=e(10),d=e(20),n=e(319),_=e(323),p=h.__importStar(e(327)),b=p,u=h.__importStar(e(328)),m=u,g=h.__importStar(e(243)),v=g;class w extends n.LayoutDOMView{constructor(){super(...arguments),this._scroll_index=0}connect_signals(){super.connect_signals(),this.connect(this.model.properties.tabs.change,(()=>this.rebuild())),this.connect(this.model.properties.active.change,(()=>this.on_active_change()))}styles(){return[...super.styles(),u.default,g.default,p.default]}get child_models(){return this.model.tabs.map((e=>e.child))}_update_layout(){const e=this.model.tabs_location,t=\"above\"==e||\"below\"==e,{scroll_el:s,headers_el:i}=this;this.header=new class extends a.ContentBox{_measure(e){const l=o.size(s),h=o.children(i).slice(0,3).map((e=>o.size(e))),{width:a,height:c}=super._measure(e);if(t){const t=l.width+r.sum(h.map((e=>e.width)));return{width:e.width!=1/0?e.width:t,height:c}}{const t=l.height+r.sum(h.map((e=>e.height)));return{width:a,height:e.height!=1/0?e.height:t}}}}(this.header_el),t?this.header.set_sizing({width_policy:\"fit\",height_policy:\"fixed\"}):this.header.set_sizing({width_policy:\"fixed\",height_policy:\"fit\"});let l=1,h=1;switch(e){case\"above\":l-=1;break;case\"below\":l+=1;break;case\"left\":h-=1;break;case\"right\":h+=1}const c={layout:this.header,row:l,col:h},d=this.child_views.map((e=>({layout:e.layout,row:1,col:1})));this.layout=new a.Grid([c,...d]),this.layout.set_sizing(this.box_sizing())}update_position(){super.update_position(),this.header_el.style.position=\"absolute\",o.position(this.header_el,this.header.bbox);const e=this.model.tabs_location,t=\"above\"==e||\"below\"==e,s=o.size(this.scroll_el),i=o.scroll_size(this.headers_el);if(t){const{width:e}=this.header.bbox;i.width>e?(this.wrapper_el.style.maxWidth=e-s.width+\"px\",o.display(this.scroll_el),this.do_scroll(this.model.active)):(this.wrapper_el.style.maxWidth=\"\",o.undisplay(this.scroll_el))}else{const{height:e}=this.header.bbox;i.height>e?(this.wrapper_el.style.maxHeight=e-s.height+\"px\",o.display(this.scroll_el),this.do_scroll(this.model.active)):(this.wrapper_el.style.maxHeight=\"\",o.undisplay(this.scroll_el))}const{child_views:l}=this;for(const e of l)o.hide(e.el);const h=l[this.model.active];null!=h&&o.show(h.el)}render(){super.render();const{active:e}=this.model,t=this.model.tabs.map(((t,s)=>{const i=o.div({class:[b.tab,s==e?b.active:null]},t.title);if(i.addEventListener(\"click\",(e=>{e.target==e.currentTarget&&this.change_active(s)})),t.closable){const e=o.div({class:b.close});e.addEventListener(\"click\",(e=>{if(e.target==e.currentTarget){this.model.tabs=r.remove_at(this.model.tabs,s);const e=this.model.tabs.length;this.model.active>e-1&&(this.model.active=e-1)}})),i.appendChild(e)}return i}));this.headers_el=o.div({class:[b.headers]},t),this.wrapper_el=o.div({class:b.headers_wrapper},this.headers_el),this.left_el=o.div({class:[m.btn,m.btn_default],disabled:\"\"},o.div({class:[v.caret,b.left]})),this.right_el=o.div({class:[m.btn,m.btn_default]},o.div({class:[v.caret,b.right]})),this.left_el.addEventListener(\"click\",(()=>this.do_scroll(\"left\"))),this.right_el.addEventListener(\"click\",(()=>this.do_scroll(\"right\"))),this.scroll_el=o.div({class:m.btn_group},this.left_el,this.right_el);const s=this.model.tabs_location;this.header_el=o.div({class:[b.tabs_header,b[s]]},this.scroll_el,this.wrapper_el),this.el.appendChild(this.header_el)}do_scroll(e){const t=this.model.tabs.length;\"left\"==e?this._scroll_index-=1:\"right\"==e?this._scroll_index+=1:this._scroll_index=e,this._scroll_index=c.clamp(this._scroll_index,0,t-1),0==this._scroll_index?this.left_el.setAttribute(\"disabled\",\"\"):this.left_el.removeAttribute(\"disabled\"),this._scroll_index==t-1?this.right_el.setAttribute(\"disabled\",\"\"):this.right_el.removeAttribute(\"disabled\");const s=o.children(this.headers_el).slice(0,this._scroll_index).map((e=>e.getBoundingClientRect())),i=this.model.tabs_location;if(\"above\"==i||\"below\"==i){const e=-r.sum(s.map((e=>e.width)));this.headers_el.style.left=`${e}px`}else{const e=-r.sum(s.map((e=>e.height)));this.headers_el.style.top=`${e}px`}}change_active(e){e!=this.model.active&&(this.model.active=e)}on_active_change(){const e=this.model.active,t=o.children(this.headers_el);for(const e of t)e.classList.remove(b.active);t[e].classList.add(b.active);const{child_views:s}=this;for(const e of s)o.hide(e.el);o.show(s[e].el)}}s.TabsView=w,w.__name__=\"TabsView\";class f extends n.LayoutDOM{constructor(e){super(e)}static init_Tabs(){this.prototype.default_view=w,this.define((({Int:e,Array:t,Ref:s})=>({tabs:[t(s(_.Panel)),[]],tabs_location:[d.Location,\"above\"],active:[e,0]})))}}s.Tabs=f,f.__name__=\"Tabs\",f.init_Tabs()},\n function _(e,r,b,o,t){o(),b.root=\"bk-root\",b.tabs_header=\"bk-tabs-header\",b.btn_group=\"bk-btn-group\",b.btn=\"bk-btn\",b.headers_wrapper=\"bk-headers-wrapper\",b.above=\"bk-above\",b.right=\"bk-right\",b.below=\"bk-below\",b.left=\"bk-left\",b.headers=\"bk-headers\",b.tab=\"bk-tab\",b.active=\"bk-active\",b.close=\"bk-close\",b.default='.bk-root .bk-tabs-header{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;overflow:hidden;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;}.bk-root .bk-tabs-header .bk-btn-group{height:auto;margin-right:5px;}.bk-root .bk-tabs-header .bk-btn-group > .bk-btn{flex-grow:0;-webkit-flex-grow:0;height:auto;padding:4px 4px;}.bk-root .bk-tabs-header .bk-headers-wrapper{flex-grow:1;-webkit-flex-grow:1;overflow:hidden;color:#666666;}.bk-root .bk-tabs-header.bk-above .bk-headers-wrapper{border-bottom:1px solid #e6e6e6;}.bk-root .bk-tabs-header.bk-right .bk-headers-wrapper{border-left:1px solid #e6e6e6;}.bk-root .bk-tabs-header.bk-below .bk-headers-wrapper{border-top:1px solid #e6e6e6;}.bk-root .bk-tabs-header.bk-left .bk-headers-wrapper{border-right:1px solid #e6e6e6;}.bk-root .bk-tabs-header.bk-above,.bk-root .bk-tabs-header.bk-below{flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-tabs-header.bk-above .bk-headers,.bk-root .bk-tabs-header.bk-below .bk-headers{flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-tabs-header.bk-left,.bk-root .bk-tabs-header.bk-right{flex-direction:column;-webkit-flex-direction:column;}.bk-root .bk-tabs-header.bk-left .bk-headers,.bk-root .bk-tabs-header.bk-right .bk-headers{flex-direction:column;-webkit-flex-direction:column;}.bk-root .bk-tabs-header .bk-headers{position:relative;display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;}.bk-root .bk-tabs-header .bk-tab{padding:4px 8px;border:solid transparent;white-space:nowrap;cursor:pointer;}.bk-root .bk-tabs-header .bk-tab:hover{background-color:#f2f2f2;}.bk-root .bk-tabs-header .bk-tab.bk-active{color:#4d4d4d;background-color:white;border-color:#e6e6e6;}.bk-root .bk-tabs-header .bk-tab .bk-close{margin-left:10px;}.bk-root .bk-tabs-header.bk-above .bk-tab{border-width:3px 1px 0px 1px;border-radius:4px 4px 0 0;}.bk-root .bk-tabs-header.bk-right .bk-tab{border-width:1px 3px 1px 0px;border-radius:0 4px 4px 0;}.bk-root .bk-tabs-header.bk-below .bk-tab{border-width:0px 1px 3px 1px;border-radius:0 0 4px 4px;}.bk-root .bk-tabs-header.bk-left .bk-tab{border-width:1px 0px 1px 3px;border-radius:4px 0 0 4px;}.bk-root .bk-close{display:inline-block;width:10px;height:10px;vertical-align:middle;background-image:url(\\'data:image/svg+xml;utf8, <svg viewPort=\"0 0 10 10\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"> <line x1=\"1\" y1=\"9\" x2=\"9\" y2=\"1\" stroke=\"gray\" stroke-width=\"2\"/> <line x1=\"1\" y1=\"1\" x2=\"9\" y2=\"9\" stroke=\"gray\" stroke-width=\"2\"/> </svg>\\');}.bk-root .bk-close:hover{background-image:url(\\'data:image/svg+xml;utf8, <svg viewPort=\"0 0 10 10\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\"> <line x1=\"1\" y1=\"9\" x2=\"9\" y2=\"1\" stroke=\"red\" stroke-width=\"2\"/> <line x1=\"1\" y1=\"1\" x2=\"9\" y2=\"9\" stroke=\"red\" stroke-width=\"2\"/> </svg>\\');}'},\n function _(o,b,r,t,e){t(),r.root=\"bk-root\",r.btn=\"bk-btn\",r.active=\"bk-active\",r.btn_default=\"bk-btn-default\",r.btn_primary=\"bk-btn-primary\",r.btn_success=\"bk-btn-success\",r.btn_warning=\"bk-btn-warning\",r.btn_danger=\"bk-btn-danger\",r.btn_light=\"bk-btn-light\",r.btn_group=\"bk-btn-group\",r.dropdown_toggle=\"bk-dropdown-toggle\",r.default=\".bk-root .bk-btn{height:100%;display:inline-block;text-align:center;vertical-align:middle;white-space:nowrap;cursor:pointer;padding:6px 12px;font-size:12px;border:1px solid transparent;border-radius:4px;outline:0;user-select:none;-ms-user-select:none;-moz-user-select:none;-webkit-user-select:none;}.bk-root .bk-btn:hover,.bk-root .bk-btn:focus{text-decoration:none;}.bk-root .bk-btn:active,.bk-root .bk-btn.bk-active{background-image:none;box-shadow:inset 0 3px 5px rgba(0, 0, 0, 0.125);}.bk-root .bk-btn[disabled]{cursor:not-allowed;pointer-events:none;opacity:0.65;box-shadow:none;}.bk-root .bk-btn-default{color:#333;background-color:#fff;border-color:#ccc;}.bk-root .bk-btn-default:hover{background-color:#f5f5f5;border-color:#b8b8b8;}.bk-root .bk-btn-default.bk-active{background-color:#ebebeb;border-color:#adadad;}.bk-root .bk-btn-default[disabled],.bk-root .bk-btn-default[disabled]:hover,.bk-root .bk-btn-default[disabled]:focus,.bk-root .bk-btn-default[disabled]:active,.bk-root .bk-btn-default[disabled].bk-active{background-color:#e6e6e6;border-color:#ccc;}.bk-root .bk-btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd;}.bk-root .bk-btn-primary:hover{background-color:#3681c1;border-color:#2c699e;}.bk-root .bk-btn-primary.bk-active{background-color:#3276b1;border-color:#285e8e;}.bk-root .bk-btn-primary[disabled],.bk-root .bk-btn-primary[disabled]:hover,.bk-root .bk-btn-primary[disabled]:focus,.bk-root .bk-btn-primary[disabled]:active,.bk-root .bk-btn-primary[disabled].bk-active{background-color:#506f89;border-color:#357ebd;}.bk-root .bk-btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c;}.bk-root .bk-btn-success:hover{background-color:#4eb24e;border-color:#409240;}.bk-root .bk-btn-success.bk-active{background-color:#47a447;border-color:#398439;}.bk-root .bk-btn-success[disabled],.bk-root .bk-btn-success[disabled]:hover,.bk-root .bk-btn-success[disabled]:focus,.bk-root .bk-btn-success[disabled]:active,.bk-root .bk-btn-success[disabled].bk-active{background-color:#667b66;border-color:#4cae4c;}.bk-root .bk-btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236;}.bk-root .bk-btn-warning:hover{background-color:#eea43b;border-color:#e89014;}.bk-root .bk-btn-warning.bk-active{background-color:#ed9c28;border-color:#d58512;}.bk-root .bk-btn-warning[disabled],.bk-root .bk-btn-warning[disabled]:hover,.bk-root .bk-btn-warning[disabled]:focus,.bk-root .bk-btn-warning[disabled]:active,.bk-root .bk-btn-warning[disabled].bk-active{background-color:#c89143;border-color:#eea236;}.bk-root .bk-btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a;}.bk-root .bk-btn-danger:hover{background-color:#d5433e;border-color:#bd2d29;}.bk-root .bk-btn-danger.bk-active{background-color:#d2322d;border-color:#ac2925;}.bk-root .bk-btn-danger[disabled],.bk-root .bk-btn-danger[disabled]:hover,.bk-root .bk-btn-danger[disabled]:focus,.bk-root .bk-btn-danger[disabled]:active,.bk-root .bk-btn-danger[disabled].bk-active{background-color:#a55350;border-color:#d43f3a;}.bk-root .bk-btn-light{color:#333;background-color:#fff;border-color:#ccc;border-color:transparent;}.bk-root .bk-btn-light:hover{background-color:#f5f5f5;border-color:#b8b8b8;}.bk-root .bk-btn-light.bk-active{background-color:#ebebeb;border-color:#adadad;}.bk-root .bk-btn-light[disabled],.bk-root .bk-btn-light[disabled]:hover,.bk-root .bk-btn-light[disabled]:focus,.bk-root .bk-btn-light[disabled]:active,.bk-root .bk-btn-light[disabled].bk-active{background-color:#e6e6e6;border-color:#ccc;}.bk-root .bk-btn-group{height:100%;display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:center;-webkit-align-items:center;flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-btn-group > .bk-btn{flex-grow:1;-webkit-flex-grow:1;}.bk-root .bk-btn-group > .bk-btn + .bk-btn{margin-left:-1px;}.bk-root .bk-btn-group > .bk-btn:first-child:not(:last-child){border-bottom-right-radius:0;border-top-right-radius:0;}.bk-root .bk-btn-group > .bk-btn:not(:first-child):last-child{border-bottom-left-radius:0;border-top-left-radius:0;}.bk-root .bk-btn-group > .bk-btn:not(:first-child):not(:last-child){border-radius:0;}.bk-root .bk-btn-group .bk-dropdown-toggle{flex:0 0 0;-webkit-flex:0 0 0;padding:6px 6px;}\"},\n function _(t,e,i,o,n){o();const _=t(320);class s extends _.ColumnView{}i.WidgetBoxView=s,s.__name__=\"WidgetBoxView\";class d extends _.Column{constructor(t){super(t)}static init_WidgetBox(){this.prototype.default_view=s}}i.WidgetBox=d,d.__name__=\"WidgetBox\",d.init_WidgetBox()},\n function _(p,o,t,a,n){a(),n(\"MapOptions\",p(331).MapOptions),n(\"GMapOptions\",p(331).GMapOptions),n(\"GMapPlot\",p(331).GMapPlot),n(\"Plot\",p(332).Plot)},\n function _(t,i,n,e,a){e();const s=t(332),o=t(53),p=t(156),_=t(337);a(\"GMapPlotView\",_.GMapPlotView);class l extends o.Model{constructor(t){super(t)}static init_MapOptions(){this.define((({Int:t,Number:i})=>({lat:[i],lng:[i],zoom:[t,12]})))}}n.MapOptions=l,l.__name__=\"MapOptions\",l.init_MapOptions();class r extends l{constructor(t){super(t)}static init_GMapOptions(){this.define((({Boolean:t,Int:i,String:n})=>({map_type:[n,\"roadmap\"],scale_control:[t,!1],styles:[n],tilt:[i,45]})))}}n.GMapOptions=r,r.__name__=\"GMapOptions\",r.init_GMapOptions();class c extends s.Plot{constructor(t){super(t),this.use_map=!0}static init_GMapPlot(){this.prototype.default_view=_.GMapPlotView,this.define((({String:t,Ref:i})=>({map_options:[i(r)],api_key:[t],api_version:[t,\"3.43\"]}))),this.override({x_range:()=>new p.Range1d,y_range:()=>new p.Range1d})}}n.GMapPlot=c,c.__name__=\"GMapPlot\",c.init_GMapPlot()},\n function _(e,t,i,n,r){n();const o=e(1),a=o.__importStar(e(48)),s=o.__importStar(e(18)),l=e(15),_=e(20),h=e(9),c=e(13),d=e(8),u=e(319),g=e(163),p=e(316),f=e(40),b=e(138),w=e(218),m=e(235),y=e(105),v=e(146),x=e(130),A=e(41),R=e(62),S=e(61),P=e(159),D=e(333);r(\"PlotView\",D.PlotView);class L extends u.LayoutDOM{constructor(e){super(e),this.use_map=!1}static init_Plot(){this.prototype.default_view=D.PlotView,this.mixins([[\"outline_\",a.Line],[\"background_\",a.Fill],[\"border_\",a.Fill]]),this.define((({Boolean:e,Number:t,String:i,Array:n,Dict:r,Or:o,Ref:a,Null:l,Nullable:h})=>({toolbar:[a(m.Toolbar),()=>new m.Toolbar],toolbar_location:[h(_.Location),\"right\"],toolbar_sticky:[e,!0],plot_width:[s.Alias(\"width\")],plot_height:[s.Alias(\"height\")],frame_width:[h(t),null],frame_height:[h(t),null],title:[o(a(b.Title),i,l),()=>new b.Title({text:\"\"})],title_location:[h(_.Location),\"above\"],above:[n(o(a(f.Annotation),a(g.Axis))),[]],below:[n(o(a(f.Annotation),a(g.Axis))),[]],left:[n(o(a(f.Annotation),a(g.Axis))),[]],right:[n(o(a(f.Annotation),a(g.Axis))),[]],center:[n(o(a(f.Annotation),a(p.Grid))),[]],renderers:[n(a(A.Renderer)),[]],x_range:[a(y.Range),()=>new P.DataRange1d],extra_x_ranges:[r(a(y.Range)),{}],y_range:[a(y.Range),()=>new P.DataRange1d],extra_y_ranges:[r(a(y.Range)),{}],x_scale:[a(v.Scale),()=>new w.LinearScale],y_scale:[a(v.Scale),()=>new w.LinearScale],lod_factor:[t,10],lod_interval:[t,300],lod_threshold:[h(t),2e3],lod_timeout:[t,500],hidpi:[e,!0],output_backend:[_.OutputBackend,\"canvas\"],min_border:[h(t),5],min_border_top:[h(t),null],min_border_left:[h(t),null],min_border_bottom:[h(t),null],min_border_right:[h(t),null],inner_width:[t,0],inner_height:[t,0],outer_width:[t,0],outer_height:[t,0],match_aspect:[e,!1],aspect_scale:[t,1],reset_policy:[_.ResetPolicy,\"standard\"]}))),this.override({width:600,height:600,outline_line_color:\"#e5e5e5\",border_fill_color:\"#ffffff\",background_fill_color:\"#ffffff\"})}_doc_attached(){super._doc_attached(),this._push_changes([[this.properties.inner_height,null,this.inner_height],[this.properties.inner_width,null,this.inner_width]])}initialize(){super.initialize(),this.reset=new l.Signal0(this,\"reset\");for(const e of c.values(this.extra_x_ranges).concat(this.x_range)){let t=e.plots;d.isArray(t)&&(t=t.concat(this),e.setv({plots:t},{silent:!0}))}for(const e of c.values(this.extra_y_ranges).concat(this.y_range)){let t=e.plots;d.isArray(t)&&(t=t.concat(this),e.setv({plots:t},{silent:!0}))}}add_layout(e,t=\"center\"){const i=this.properties[t].get_value();this.setv({[t]:[...i,e]})}remove_layout(e){const t=t=>{h.remove_by(t,(t=>t==e))};t(this.left),t(this.right),t(this.above),t(this.below),t(this.center)}get data_renderers(){return this.renderers.filter((e=>e instanceof R.DataRenderer))}add_renderers(...e){this.renderers=this.renderers.concat(e)}add_glyph(e,t=new x.ColumnDataSource,i={}){const n=new S.GlyphRenderer(Object.assign(Object.assign({},i),{data_source:t,glyph:e}));return this.add_renderers(n),n}add_tools(...e){this.toolbar.tools=this.toolbar.tools.concat(e)}get panels(){return[...this.side_panels,...this.center]}get side_panels(){const{above:e,below:t,left:i,right:n}=this;return h.concat([e,t,i,n])}}i.Plot=L,L.__name__=\"Plot\",L.init_Plot()},\n function _(e,t,i,s,a){s();const n=e(1),o=e(144),l=e(262),r=e(319),_=e(40),h=e(138),d=e(163),u=e(234),c=e(264),p=e(122),v=e(45),b=e(19),g=e(334),m=e(8),w=e(9),y=e(249),f=e(222),x=e(225),z=e(223),k=e(140),q=e(99),M=e(335),V=e(336),P=e(28);class R extends r.LayoutDOMView{constructor(){super(...arguments),this._outer_bbox=new q.BBox,this._inner_bbox=new q.BBox,this._needs_paint=!0,this._needs_layout=!1,this._invalidated_painters=new Set,this._invalidate_all=!0}get canvas(){return this.canvas_view}get state(){return this._state_manager}set invalidate_dataranges(e){this._range_manager.invalidate_dataranges=e}renderer_view(e){const t=this.renderer_views.get(e);if(null==t)for(const[,t]of this.renderer_views){const i=t.renderer_view(e);if(null!=i)return i}return t}get is_paused(){return null!=this._is_paused&&0!==this._is_paused}get child_models(){return[]}pause(){null==this._is_paused?this._is_paused=1:this._is_paused+=1}unpause(e=!1){if(null==this._is_paused)throw new Error(\"wasn't paused\");this._is_paused-=1,0!=this._is_paused||e||this.request_paint(\"everything\")}request_render(){this.request_paint(\"everything\")}request_paint(e){this.invalidate_painters(e),this.schedule_paint()}invalidate_painters(e){if(\"everything\"==e)this._invalidate_all=!0;else if(m.isArray(e))for(const t of e)this._invalidated_painters.add(t);else this._invalidated_painters.add(e)}schedule_paint(){if(!this.is_paused){const e=this.throttled_paint();this._ready=this._ready.then((()=>e))}}request_layout(){this._needs_layout=!0,this.request_paint(\"everything\")}reset(){\"standard\"==this.model.reset_policy&&(this.state.clear(),this.reset_range(),this.reset_selection()),this.model.trigger_event(new c.Reset)}remove(){p.remove_views(this.renderer_views),p.remove_views(this.tool_views),this.canvas_view.remove(),super.remove()}render(){super.render(),this.el.appendChild(this.canvas_view.el),this.canvas_view.render()}initialize(){this.pause(),super.initialize(),this.lod_started=!1,this.visuals=new v.Visuals(this),this._initial_state={selection:new Map,dimensions:{width:0,height:0}},this.visibility_callbacks=[],this.renderer_views=new Map,this.tool_views=new Map,this.frame=new o.CartesianFrame(this.model.x_scale,this.model.y_scale,this.model.x_range,this.model.y_range,this.model.extra_x_ranges,this.model.extra_y_ranges),this._range_manager=new M.RangeManager(this),this._state_manager=new V.StateManager(this,this._initial_state),this.throttled_paint=g.throttle((()=>this.repaint()),1e3/60);const{title_location:e,title:t}=this.model;null!=e&&null!=t&&(this._title=t instanceof h.Title?t:new h.Title({text:t}));const{toolbar_location:i,toolbar:s}=this.model;null!=i&&null!=s&&(this._toolbar=new u.ToolbarPanel({toolbar:s}),s.toolbar_location=i)}async lazy_initialize(){await super.lazy_initialize();const{hidpi:e,output_backend:t}=this.model,i=new l.Canvas({hidpi:e,output_backend:t});this.canvas_view=await p.build_view(i,{parent:this}),this.canvas_view.plot_views=[this],await this.build_renderer_views(),await this.build_tool_views(),this._range_manager.update_dataranges(),this.unpause(!0),b.logger.debug(\"PlotView initialized\")}_width_policy(){return null==this.model.frame_width?super._width_policy():\"min\"}_height_policy(){return null==this.model.frame_height?super._height_policy():\"min\"}_update_layout(){var e,t,i,s,a;this.layout=new x.BorderLayout,this.layout.set_sizing(this.box_sizing());const n=w.copy(this.model.above),o=w.copy(this.model.below),l=w.copy(this.model.left),r=w.copy(this.model.right),d=e=>{switch(e){case\"above\":return n;case\"below\":return o;case\"left\":return l;case\"right\":return r}},{title_location:c,title:p}=this.model;null!=c&&null!=p&&d(c).push(this._title);const{toolbar_location:v,toolbar:b}=this.model;if(null!=v&&null!=b){const e=d(v);let t=!0;if(this.model.toolbar_sticky)for(let i=0;i<e.length;i++){const s=e[i];if(s instanceof h.Title){e[i]=\"above\"==v||\"below\"==v?[s,this._toolbar]:[this._toolbar,s],t=!1;break}}t&&e.push(this._toolbar)}const g=(e,t)=>{var i;const s=this.renderer_view(t);return s.panel=new k.Panel(e),null===(i=s.update_layout)||void 0===i||i.call(s),s.layout},y=(e,t)=>{const i=\"above\"==e||\"below\"==e,s=[];for(const a of t)if(m.isArray(a)){const t=a.map((t=>{const s=g(e,t);if(t instanceof u.ToolbarPanel){const e=i?\"width_policy\":\"height_policy\";s.set_sizing(Object.assign(Object.assign({},s.sizing),{[e]:\"min\"}))}return s}));let n;i?(n=new z.Row(t),n.set_sizing({width_policy:\"max\",height_policy:\"min\"})):(n=new z.Column(t),n.set_sizing({width_policy:\"min\",height_policy:\"max\"})),n.absolute=!0,s.push(n)}else s.push(g(e,a));return s},q=null!==(e=this.model.min_border)&&void 0!==e?e:0;this.layout.min_border={left:null!==(t=this.model.min_border_left)&&void 0!==t?t:q,top:null!==(i=this.model.min_border_top)&&void 0!==i?i:q,right:null!==(s=this.model.min_border_right)&&void 0!==s?s:q,bottom:null!==(a=this.model.min_border_bottom)&&void 0!==a?a:q};const M=new f.NodeLayout,V=new f.VStack,P=new f.VStack,R=new f.HStack,O=new f.HStack;M.absolute=!0,V.absolute=!0,P.absolute=!0,R.absolute=!0,O.absolute=!0,M.children=this.model.center.filter((e=>e instanceof _.Annotation)).map((e=>{var t;const i=this.renderer_view(e);return null===(t=i.update_layout)||void 0===t||t.call(i),i.layout})).filter((e=>null!=e));const{frame_width:S,frame_height:j}=this.model;M.set_sizing(Object.assign(Object.assign({},null!=S?{width_policy:\"fixed\",width:S}:{width_policy:\"fit\"}),null!=j?{height_policy:\"fixed\",height:j}:{height_policy:\"fit\"})),M.on_resize((e=>this.frame.set_geometry(e))),V.children=w.reversed(y(\"above\",n)),P.children=y(\"below\",o),R.children=w.reversed(y(\"left\",l)),O.children=y(\"right\",r),V.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),P.set_sizing({width_policy:\"fit\",height_policy:\"min\"}),R.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),O.set_sizing({width_policy:\"min\",height_policy:\"fit\"}),this.layout.center_panel=M,this.layout.top_panel=V,this.layout.bottom_panel=P,this.layout.left_panel=R,this.layout.right_panel=O}get axis_views(){const e=[];for(const[,t]of this.renderer_views)t instanceof d.AxisView&&e.push(t);return e}set_toolbar_visibility(e){for(const t of this.visibility_callbacks)t(e)}update_range(e,t){this.pause(),this._range_manager.update(e,t),this.unpause()}reset_range(){this.update_range(null)}get_selection(){const e=new Map;for(const t of this.model.data_renderers){const{selected:i}=t.selection_manager.source;e.set(t,i)}return e}update_selection(e){for(const t of this.model.data_renderers){const i=t.selection_manager.source;if(null!=e){const s=e.get(t);null!=s&&i.selected.update(s,!0)}else i.selection_manager.clear()}}reset_selection(){this.update_selection(null)}_invalidate_layout(){(()=>{var e;for(const t of this.model.side_panels){const i=this.renderer_views.get(t);if(null===(e=i.layout)||void 0===e?void 0:e.has_size_changed())return this.invalidate_painters(i),!0}return!1})()&&this.root.compute_layout()}get_renderer_views(){return this.computed_renderers.map((e=>this.renderer_views.get(e)))}*_compute_renderers(){const{above:e,below:t,left:i,right:s,center:a,renderers:n}=this.model;yield*n,yield*e,yield*t,yield*i,yield*s,yield*a,null!=this._title&&(yield this._title),null!=this._toolbar&&(yield this._toolbar);for(const e of this.model.toolbar.tools)null!=e.overlay&&(yield e.overlay),yield*e.synthetic_renderers}async build_renderer_views(){this.computed_renderers=[...this._compute_renderers()],await p.build_views(this.renderer_views,this.computed_renderers,{parent:this})}async build_tool_views(){const e=this.model.toolbar.tools;(await p.build_views(this.tool_views,e,{parent:this})).map((e=>this.canvas_view.ui_event_bus.register_tool(e)))}connect_signals(){super.connect_signals();const{x_ranges:e,y_ranges:t}=this.frame;for(const[,t]of e)this.connect(t.change,(()=>{this._needs_layout=!0,this.request_paint(\"everything\")}));for(const[,e]of t)this.connect(e.change,(()=>{this._needs_layout=!0,this.request_paint(\"everything\")}));const{above:i,below:s,left:a,right:n,center:o,renderers:l}=this.model.properties;this.on_change([i,s,a,n,o,l],(async()=>await this.build_renderer_views())),this.connect(this.model.toolbar.properties.tools.change,(async()=>{await this.build_renderer_views(),await this.build_tool_views()})),this.connect(this.model.change,(()=>this.request_paint(\"everything\"))),this.connect(this.model.reset,(()=>this.reset()))}has_finished(){if(!super.has_finished())return!1;if(this.model.visible)for(const[,e]of this.renderer_views)if(!e.has_finished())return!1;return!0}after_layout(){var e;super.after_layout();for(const[,t]of this.renderer_views)t instanceof _.AnnotationView&&(null===(e=t.after_layout)||void 0===e||e.call(t));if(this._needs_layout=!1,this.model.setv({inner_width:Math.round(this.frame.bbox.width),inner_height:Math.round(this.frame.bbox.height),outer_width:Math.round(this.layout.bbox.width),outer_height:Math.round(this.layout.bbox.height)},{no_change:!0}),!1!==this.model.match_aspect&&(this.pause(),this._range_manager.update_dataranges(),this.unpause(!0)),!this._outer_bbox.equals(this.layout.bbox)){const{width:e,height:t}=this.layout.bbox;this.canvas_view.resize(e,t),this._outer_bbox=this.layout.bbox,this._invalidate_all=!0,this._needs_paint=!0}const{inner_bbox:t}=this.layout;this._inner_bbox.equals(t)||(this._inner_bbox=t,this._needs_paint=!0),this._needs_paint&&this.paint()}repaint(){this._needs_layout&&this._invalidate_layout(),this.paint()}paint(){var e;if(this.is_paused||!this.model.visible)return;b.logger.trace(`PlotView.paint() for ${this.model.id}`);const{document:t}=this.model;if(null!=t){const e=t.interactive_duration();e>=0&&e<this.model.lod_interval?setTimeout((()=>{t.interactive_duration()>this.model.lod_timeout&&t.interactive_stop(),this.request_paint(\"everything\")}),this.model.lod_timeout):t.interactive_stop()}this._range_manager.invalidate_dataranges&&(this._range_manager.update_dataranges(),this._invalidate_layout());let i=!1,s=!1;if(this._invalidate_all)i=!0,s=!0;else for(const e of this._invalidated_painters){const{level:t}=e.model;if(\"overlay\"!=t?i=!0:s=!0,i&&s)break}this._invalidated_painters.clear(),this._invalidate_all=!1;const a=[this.frame.bbox.left,this.frame.bbox.top,this.frame.bbox.width,this.frame.bbox.height],{primary:n,overlays:o}=this.canvas_view;i&&(n.prepare(),this.canvas_view.prepare_webgl(a),this._map_hook(n.ctx,a),this._paint_empty(n.ctx,a),this._paint_outline(n.ctx,a),this._paint_levels(n.ctx,\"image\",a,!0),this._paint_levels(n.ctx,\"underlay\",a,!0),this._paint_levels(n.ctx,\"glyph\",a,!0),this._paint_levels(n.ctx,\"guide\",a,!1),this._paint_levels(n.ctx,\"annotation\",a,!1),n.finish()),(s||P.settings.wireframe)&&(o.prepare(),this._paint_levels(o.ctx,\"overlay\",a,!1),P.settings.wireframe&&this._paint_layout(o.ctx,this.layout),o.finish()),null==this._initial_state.range&&(this._initial_state.range=null!==(e=this._range_manager.compute_initial())&&void 0!==e?e:void 0),this._needs_paint=!1}_paint_levels(e,t,i,s){for(const a of this.computed_renderers){if(a.level!=t)continue;const n=this.renderer_views.get(a);e.save(),(s||n.needs_clip)&&(e.beginPath(),e.rect(...i),e.clip()),n.render(),e.restore(),n.has_webgl&&n.needs_webgl_blit&&this.canvas_view.blit_webgl(e)}}_paint_layout(e,t){const{x:i,y:s,width:a,height:n}=t.bbox;e.strokeStyle=\"blue\",e.strokeRect(i,s,a,n);for(const a of t)e.save(),t.absolute||e.translate(i,s),this._paint_layout(e,a),e.restore()}_map_hook(e,t){}_paint_empty(e,t){const[i,s,a,n]=[0,0,this.layout.bbox.width,this.layout.bbox.height],[o,l,r,_]=t;this.visuals.border_fill.doit&&(this.visuals.border_fill.set_value(e),e.fillRect(i,s,a,n),e.clearRect(o,l,r,_)),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(e),e.fillRect(o,l,r,_))}_paint_outline(e,t){if(this.visuals.outline_line.doit){e.save(),this.visuals.outline_line.set_value(e);let[i,s,a,n]=t;i+a==this.layout.bbox.width&&(a-=1),s+n==this.layout.bbox.height&&(n-=1),e.strokeRect(i,s,a,n),e.restore()}}to_blob(){return this.canvas_view.to_blob()}export(e,t=!0){const i=\"png\"==e?\"canvas\":\"svg\",s=new y.CanvasLayer(i,t),{width:a,height:n}=this.layout.bbox;s.resize(a,n);const{canvas:o}=this.canvas_view.compose();return s.ctx.drawImage(o,0,0),s}serializable_state(){const e=super.serializable_state(),{children:t}=e,i=n.__rest(e,[\"children\"]),s=this.get_renderer_views().map((e=>e.serializable_state())).filter((e=>null!=e.bbox));return Object.assign(Object.assign({},i),{children:[...null!=t?t:[],...s]})}}i.PlotView=R,R.__name__=\"PlotView\"},\n function _(t,n,e,o,u){o(),e.throttle=function(t,n){let e=null,o=0,u=!1;return function(){return new Promise(((r,i)=>{const l=function(){o=Date.now(),e=null,u=!1;try{t(),r()}catch(t){i(t)}},a=Date.now(),c=n-(a-o);c<=0&&!u?(null!=e&&clearTimeout(e),u=!0,requestAnimationFrame(l)):e||u?r():e=setTimeout((()=>requestAnimationFrame(l)),c)}))}}},\n function _(t,n,e,s,a){s();const o=t(159),r=t(19);class l{constructor(t){this.parent=t,this.invalidate_dataranges=!0}get frame(){return this.parent.frame}update(t,n){const{x_ranges:e,y_ranges:s}=this.frame;if(null==t){for(const[,t]of e)t.reset();for(const[,t]of s)t.reset();this.update_dataranges()}else{const a=[];for(const[n,s]of e)a.push([s,t.xrs.get(n)]);for(const[n,e]of s)a.push([e,t.yrs.get(n)]);(null==n?void 0:n.scrolling)&&this._update_ranges_together(a),this._update_ranges_individually(a,n)}}reset(){this.update(null)}update_dataranges(){const t=new Map,n=new Map;let e=!1;for(const[,t]of this.frame.x_ranges)t instanceof o.DataRange1d&&\"log\"==t.scale_hint&&(e=!0);for(const[,t]of this.frame.y_ranges)t instanceof o.DataRange1d&&\"log\"==t.scale_hint&&(e=!0);for(const s of this.parent.model.data_renderers){const a=this.parent.renderer_view(s);if(null==a)continue;const o=a.glyph_view.bounds();if(null!=o&&t.set(s,o),e){const t=a.glyph_view.log_bounds();null!=t&&n.set(s,t)}}let s=!1,a=!1;const{width:l,height:i}=this.frame.bbox;let d;!1!==this.parent.model.match_aspect&&0!=l&&0!=i&&(d=1/this.parent.model.aspect_scale*(l/i));for(const[,e]of this.frame.x_ranges){if(e instanceof o.DataRange1d){const a=\"log\"==e.scale_hint?n:t;e.update(a,0,this.parent.model,d),e.follow&&(s=!0)}null!=e.bounds&&(a=!0)}for(const[,e]of this.frame.y_ranges){if(e instanceof o.DataRange1d){const a=\"log\"==e.scale_hint?n:t;e.update(a,1,this.parent.model,d),e.follow&&(s=!0)}null!=e.bounds&&(a=!0)}if(s&&a){r.logger.warn(\"Follow enabled so bounds are unset.\");for(const[,t]of this.frame.x_ranges)t.bounds=null;for(const[,t]of this.frame.y_ranges)t.bounds=null}this.invalidate_dataranges=!1}compute_initial(){let t=!0;const{x_ranges:n,y_ranges:e}=this.frame,s=new Map,a=new Map;for(const[e,a]of n){const{start:n,end:o}=a;if(null==n||null==o||isNaN(n+o)){t=!1;break}s.set(e,{start:n,end:o})}if(t)for(const[n,s]of e){const{start:e,end:o}=s;if(null==e||null==o||isNaN(e+o)){t=!1;break}a.set(n,{start:e,end:o})}return t?{xrs:s,yrs:a}:(r.logger.warn(\"could not set initial ranges\"),null)}_update_ranges_together(t){let n=1;for(const[e,s]of t)n=Math.min(n,this._get_weight_to_constrain_interval(e,s));if(n<1)for(const[e,s]of t)s.start=n*s.start+(1-n)*e.start,s.end=n*s.end+(1-n)*e.end}_update_ranges_individually(t,n){const e=!!(null==n?void 0:n.panning),s=!!(null==n?void 0:n.scrolling);let a=!1;for(const[n,o]of t){if(!s){const t=this._get_weight_to_constrain_interval(n,o);t<1&&(o.start=t*o.start+(1-t)*n.start,o.end=t*o.end+(1-t)*n.end)}if(null!=n.bounds&&\"auto\"!=n.bounds){const[t,r]=n.bounds,l=Math.abs(o.end-o.start);n.is_reversed?(null!=t&&t>=o.end&&(a=!0,o.end=t,(e||s)&&(o.start=t+l)),null!=r&&r<=o.start&&(a=!0,o.start=r,(e||s)&&(o.end=r-l))):(null!=t&&t>=o.start&&(a=!0,o.start=t,(e||s)&&(o.end=t+l)),null!=r&&r<=o.end&&(a=!0,o.end=r,(e||s)&&(o.start=r-l)))}}if(!(s&&a&&(null==n?void 0:n.maintain_focus)))for(const[n,e]of t)n.have_updated_interactively=!0,n.start==e.start&&n.end==e.end||n.setv(e)}_get_weight_to_constrain_interval(t,n){const{min_interval:e}=t;let{max_interval:s}=t;if(null!=t.bounds&&\"auto\"!=t.bounds){const[n,e]=t.bounds;if(null!=n&&null!=e){const t=Math.abs(e-n);s=null!=s?Math.min(s,t):t}}let a=1;if(null!=e||null!=s){const o=Math.abs(t.end-t.start),r=Math.abs(n.end-n.start);null!=e&&e>0&&r<e&&(a=(o-e)/(o-r)),null!=s&&s>0&&r>s&&(a=(s-o)/(r-o)),a=Math.max(0,Math.min(1,a))}return a}}e.RangeManager=l,l.__name__=\"RangeManager\"},\n function _(t,i,s,e,n){e();const h=t(15);class a{constructor(t,i){this.parent=t,this.initial_state=i,this.changed=new h.Signal0(this.parent,\"state_changed\"),this.history=[],this.index=-1}_do_state_change(t){const i=null!=this.history[t]?this.history[t].state:this.initial_state;null!=i.range&&this.parent.update_range(i.range),null!=i.selection&&this.parent.update_selection(i.selection)}push(t,i){const{history:s,index:e}=this,n=null!=s[e]?s[e].state:{},h=Object.assign(Object.assign(Object.assign({},this.initial_state),n),i);this.history=this.history.slice(0,this.index+1),this.history.push({type:t,state:h}),this.index=this.history.length-1,this.changed.emit()}clear(){this.history=[],this.index=-1,this.changed.emit()}undo(){this.can_undo&&(this.index-=1,this._do_state_change(this.index),this.changed.emit())}redo(){this.can_redo&&(this.index+=1,this._do_state_change(this.index),this.changed.emit())}get can_undo(){return this.index>=0}get can_redo(){return this.index<this.history.length-1}}s.StateManager=a,a.__name__=\"StateManager\"},\n function _(t,e,s,o,i){o();const a=t(19),n=t(15),p=t(43),l=t(65),_=t(22),h=t(333),m=new n.Signal0({},\"gmaps_ready\");class d extends h.PlotView{initialize(){this.pause(),super.initialize(),this._tiles_loaded=!1,this.zoom_count=0;const{zoom:t,lat:e,lng:s}=this.model.map_options;if(this.initial_zoom=t,this.initial_lat=e,this.initial_lng=s,!this.model.api_key){const t=\"https://developers.google.com/maps/documentation/javascript/get-api-key\";a.logger.error(`api_key is required. See ${t} for more information on how to obtain your own.`)}if(\"undefined\"==typeof google||null==google.maps){if(void 0===window._bokeh_gmaps_callback){const{api_key:t,api_version:e}=this.model;!function(t,e){window._bokeh_gmaps_callback=()=>m.emit();const s=encodeURIComponent,o=document.createElement(\"script\");o.type=\"text/javascript\",o.src=`https://maps.googleapis.com/maps/api/js?v=${s(e)}&key=${s(t)}&callback=_bokeh_gmaps_callback`,document.body.appendChild(o)}(t,e)}m.connect((()=>this.request_paint(\"everything\")))}this.unpause()}remove(){p.remove(this.map_el),super.remove()}update_range(t,e){var s,o;if(null==t)this.map.setCenter({lat:this.initial_lat,lng:this.initial_lng}),this.map.setOptions({zoom:this.initial_zoom}),super.update_range(null,e);else if(null!=t.sdx||null!=t.sdy)this.map.panBy(null!==(s=t.sdx)&&void 0!==s?s:0,null!==(o=t.sdy)&&void 0!==o?o:0),super.update_range(t,e);else if(null!=t.factor){if(10!==this.zoom_count)return void(this.zoom_count+=1);this.zoom_count=0,this.pause(),super.update_range(t,e);const s=t.factor<0?-1:1,o=this.map.getZoom(),i=o+s;if(i>=2){this.map.setZoom(i);const[t,e,,]=this._get_projected_bounds();e-t<0&&this.map.setZoom(o)}this.unpause()}this._set_bokeh_ranges()}_build_map(){const{maps:t}=google;this.map_types={satellite:t.MapTypeId.SATELLITE,terrain:t.MapTypeId.TERRAIN,roadmap:t.MapTypeId.ROADMAP,hybrid:t.MapTypeId.HYBRID};const e=this.model.map_options,s={center:new t.LatLng(e.lat,e.lng),zoom:e.zoom,disableDefaultUI:!0,mapTypeId:this.map_types[e.map_type],scaleControl:e.scale_control,tilt:e.tilt};null!=e.styles&&(s.styles=JSON.parse(e.styles)),this.map_el=p.div({style:{position:\"absolute\"}}),this.canvas_view.add_underlay(this.map_el),this.map=new t.Map(this.map_el,s),t.event.addListener(this.map,\"idle\",(()=>this._set_bokeh_ranges())),t.event.addListener(this.map,\"bounds_changed\",(()=>this._set_bokeh_ranges())),t.event.addListenerOnce(this.map,\"tilesloaded\",(()=>this._render_finished())),this.connect(this.model.properties.map_options.change,(()=>this._update_options())),this.connect(this.model.map_options.properties.styles.change,(()=>this._update_styles())),this.connect(this.model.map_options.properties.lat.change,(()=>this._update_center(\"lat\"))),this.connect(this.model.map_options.properties.lng.change,(()=>this._update_center(\"lng\"))),this.connect(this.model.map_options.properties.zoom.change,(()=>this._update_zoom())),this.connect(this.model.map_options.properties.map_type.change,(()=>this._update_map_type())),this.connect(this.model.map_options.properties.scale_control.change,(()=>this._update_scale_control())),this.connect(this.model.map_options.properties.tilt.change,(()=>this._update_tilt()))}_render_finished(){this._tiles_loaded=!0,this.notify_finished()}has_finished(){return super.has_finished()&&!0===this._tiles_loaded}_get_latlon_bounds(){const t=this.map.getBounds(),e=t.getNorthEast(),s=t.getSouthWest();return[s.lng(),e.lng(),s.lat(),e.lat()]}_get_projected_bounds(){const[t,e,s,o]=this._get_latlon_bounds(),[i,a]=l.wgs84_mercator.compute(t,s),[n,p]=l.wgs84_mercator.compute(e,o);return[i,n,a,p]}_set_bokeh_ranges(){const[t,e,s,o]=this._get_projected_bounds();this.frame.x_range.setv({start:t,end:e}),this.frame.y_range.setv({start:s,end:o})}_update_center(t){const e=this.map.getCenter().toJSON();e[t]=this.model.map_options[t],this.map.setCenter(e),this._set_bokeh_ranges()}_update_map_type(){this.map.setOptions({mapTypeId:this.map_types[this.model.map_options.map_type]})}_update_scale_control(){this.map.setOptions({scaleControl:this.model.map_options.scale_control})}_update_tilt(){this.map.setOptions({tilt:this.model.map_options.tilt})}_update_options(){this._update_styles(),this._update_center(\"lat\"),this._update_center(\"lng\"),this._update_zoom(),this._update_map_type()}_update_styles(){this.map.setOptions({styles:JSON.parse(this.model.map_options.styles)})}_update_zoom(){this.map.setOptions({zoom:this.model.map_options.zoom}),this._set_bokeh_ranges()}_map_hook(t,e){if(null==this.map&&\"undefined\"!=typeof google&&null!=google.maps&&this._build_map(),null!=this.map_el){const[t,s,o,i]=e;this.map_el.style.top=`${s}px`,this.map_el.style.left=`${t}px`,this.map_el.style.width=`${o}px`,this.map_el.style.height=`${i}px`}}_paint_empty(t,e){const s=this.layout.bbox.width,o=this.layout.bbox.height,[i,a,n,p]=e;t.clearRect(0,0,s,o),t.beginPath(),t.moveTo(0,0),t.lineTo(0,o),t.lineTo(s,o),t.lineTo(s,0),t.lineTo(0,0),t.moveTo(i,a),t.lineTo(i+n,a),t.lineTo(i+n,a+p),t.lineTo(i,a+p),t.lineTo(i,a),t.closePath(),null!=this.model.border_fill_color&&(t.fillStyle=_.color2css(this.model.border_fill_color),t.fill())}}s.GMapPlotView=d,d.__name__=\"GMapPlotView\"},\n function _(t,_,n,o,r){o();t(1).__exportStar(t(169),n)},\n function _(e,r,d,n,R){n(),R(\"GlyphRenderer\",e(61).GlyphRenderer),R(\"GraphRenderer\",e(123).GraphRenderer),R(\"GuideRenderer\",e(164).GuideRenderer),R(\"Renderer\",e(41).Renderer)},\n function _(e,t,n,o,c){o();e(1).__exportStar(e(129),n),c(\"Selection\",e(59).Selection)},\n function _(a,e,S,o,r){o(),r(\"ServerSentDataSource\",a(342).ServerSentDataSource),r(\"AjaxDataSource\",a(344).AjaxDataSource),r(\"ColumnDataSource\",a(130).ColumnDataSource),r(\"ColumnarDataSource\",a(57).ColumnarDataSource),r(\"CDSView\",a(120).CDSView),r(\"DataSource\",a(58).DataSource),r(\"GeoJSONDataSource\",a(345).GeoJSONDataSource),r(\"WebDataSource\",a(343).WebDataSource)},\n function _(e,t,i,a,s){a();const n=e(343);class r extends n.WebDataSource{constructor(e){super(e),this.initialized=!1}setup(){if(!this.initialized){this.initialized=!0;new EventSource(this.data_url).onmessage=e=>{var t;this.load_data(JSON.parse(e.data),this.mode,null!==(t=this.max_size)&&void 0!==t?t:void 0)}}}}i.ServerSentDataSource=r,r.__name__=\"ServerSentDataSource\"},\n function _(t,e,a,n,s){n();const r=t(130),i=t(20);class l extends r.ColumnDataSource{constructor(t){super(t)}get_column(t){const e=this.data[t];return null!=e?e:[]}get_length(){var t;return null!==(t=super.get_length())&&void 0!==t?t:0}initialize(){super.initialize(),this.setup()}load_data(t,e,a){const{adapter:n}=this;let s;switch(s=null!=n?n.execute(this,{response:t}):t,e){case\"replace\":this.data=s;break;case\"append\":{const t=this.data;for(const e of this.columns()){const n=Array.from(t[e]),r=Array.from(s[e]),i=n.concat(r);s[e]=null!=a?i.slice(-a):i}this.data=s;break}}}static init_WebDataSource(){this.define((({Any:t,Int:e,String:a,Nullable:n})=>({max_size:[n(e),null],mode:[i.UpdateMode,\"replace\"],adapter:[n(t),null],data_url:[a]})))}}a.WebDataSource=l,l.__name__=\"WebDataSource\",l.init_WebDataSource()},\n function _(t,e,i,s,a){s();const n=t(343),r=t(20),o=t(19),l=t(13);class d extends n.WebDataSource{constructor(t){super(t),this.interval=null,this.initialized=!1}static init_AjaxDataSource(){this.define((({Boolean:t,Int:e,String:i,Dict:s,Nullable:a})=>({polling_interval:[a(e),null],content_type:[i,\"application/json\"],http_headers:[s(i),{}],method:[r.HTTPMethod,\"POST\"],if_modified:[t,!1]})))}destroy(){null!=this.interval&&clearInterval(this.interval),super.destroy()}setup(){if(!this.initialized&&(this.initialized=!0,this.get_data(this.mode),null!=this.polling_interval)){const t=()=>this.get_data(this.mode,this.max_size,this.if_modified);this.interval=setInterval(t,this.polling_interval)}}get_data(t,e=null,i=!1){const s=this.prepare_request();s.addEventListener(\"load\",(()=>this.do_load(s,t,null!=e?e:void 0))),s.addEventListener(\"error\",(()=>this.do_error(s))),s.send()}prepare_request(){const t=new XMLHttpRequest;t.open(this.method,this.data_url,!0),t.withCredentials=!1,t.setRequestHeader(\"Content-Type\",this.content_type);const e=this.http_headers;for(const[i,s]of l.entries(e))t.setRequestHeader(i,s);return t}do_load(t,e,i){if(200===t.status){const s=JSON.parse(t.responseText);this.load_data(s,e,i)}}do_error(t){o.logger.error(`Failed to fetch JSON from ${this.data_url} with code ${t.status}`)}}i.AjaxDataSource=d,d.__name__=\"AjaxDataSource\",d.init_AjaxDataSource()},\n function _(e,t,o,r,n){r();const s=e(57),a=e(19),i=e(9),l=e(13);function c(e){return null!=e?e:NaN}const{hasOwnProperty:_}=Object.prototype;class g extends s.ColumnarDataSource{constructor(e){super(e)}static init_GeoJSONDataSource(){this.define((({String:e})=>({geojson:[e]}))),this.internal((({Dict:e,Arrayable:t})=>({data:[e(t),{}]})))}initialize(){super.initialize(),this._update_data()}connect_signals(){super.connect_signals(),this.connect(this.properties.geojson.change,(()=>this._update_data()))}_update_data(){this.data=this.geojson_to_column_data()}_get_new_list_array(e){return i.range(0,e).map((e=>[]))}_get_new_nan_array(e){return i.range(0,e).map((e=>NaN))}_add_properties(e,t,o,r){var n;const s=null!==(n=e.properties)&&void 0!==n?n:{};for(const[e,n]of l.entries(s))_.call(t,e)||(t[e]=this._get_new_nan_array(r)),t[e][o]=c(n)}_add_geometry(e,t,o){function r(e,t){return e.concat([[NaN,NaN,NaN]]).concat(t)}switch(e.type){case\"Point\":{const[r,n,s]=e.coordinates;t.x[o]=r,t.y[o]=n,t.z[o]=c(s);break}case\"LineString\":{const{coordinates:r}=e;for(let e=0;e<r.length;e++){const[n,s,a]=r[e];t.xs[o][e]=n,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"Polygon\":{e.coordinates.length>1&&a.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\");const r=e.coordinates[0];for(let e=0;e<r.length;e++){const[n,s,a]=r[e];t.xs[o][e]=n,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"MultiPoint\":a.logger.warn(\"MultiPoint not supported in Bokeh\");break;case\"MultiLineString\":{const n=e.coordinates.reduce(r);for(let e=0;e<n.length;e++){const[r,s,a]=n[e];t.xs[o][e]=r,t.ys[o][e]=s,t.zs[o][e]=c(a)}break}case\"MultiPolygon\":{const n=[];for(const t of e.coordinates)t.length>1&&a.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\"),n.push(t[0]);const s=n.reduce(r);for(let e=0;e<s.length;e++){const[r,n,a]=s[e];t.xs[o][e]=r,t.ys[o][e]=n,t.zs[o][e]=c(a)}break}default:throw new Error(`Invalid GeoJSON geometry type: ${e.type}`)}}geojson_to_column_data(){const e=JSON.parse(this.geojson);let t;switch(e.type){case\"GeometryCollection\":if(null==e.geometries)throw new Error(\"No geometries found in GeometryCollection\");if(0===e.geometries.length)throw new Error(\"geojson.geometries must have one or more items\");t=e.geometries;break;case\"FeatureCollection\":if(null==e.features)throw new Error(\"No features found in FeaturesCollection\");if(0==e.features.length)throw new Error(\"geojson.features must have one or more items\");t=e.features;break;default:throw new Error(\"Bokeh only supports type GeometryCollection and FeatureCollection at top level\")}let o=0;for(const e of t){const t=\"Feature\"===e.type?e.geometry:e;\"GeometryCollection\"==t.type?o+=t.geometries.length:o+=1}const r={x:this._get_new_nan_array(o),y:this._get_new_nan_array(o),z:this._get_new_nan_array(o),xs:this._get_new_list_array(o),ys:this._get_new_list_array(o),zs:this._get_new_list_array(o)};let n=0;for(const e of t){const t=\"Feature\"==e.type?e.geometry:e;if(\"GeometryCollection\"==t.type)for(const s of t.geometries)this._add_geometry(s,r,n),\"Feature\"===e.type&&this._add_properties(e,r,n,o),n+=1;else this._add_geometry(t,r,n),\"Feature\"===e.type&&this._add_properties(e,r,n,o),n+=1}return r}}o.GeoJSONDataSource=g,g.__name__=\"GeoJSONDataSource\",g.init_GeoJSONDataSource()},\n function _(e,r,T,o,S){o(),S(\"BBoxTileSource\",e(347).BBoxTileSource),S(\"MercatorTileSource\",e(348).MercatorTileSource),S(\"QUADKEYTileSource\",e(351).QUADKEYTileSource),S(\"TileRenderer\",e(352).TileRenderer),S(\"TileSource\",e(349).TileSource),S(\"TMSTileSource\",e(355).TMSTileSource),S(\"WMTSTileSource\",e(353).WMTSTileSource)},\n function _(e,t,r,i,o){i();const l=e(348);class n extends l.MercatorTileSource{constructor(e){super(e)}static init_BBoxTileSource(){this.define((({Boolean:e})=>({use_latlon:[e,!1]})))}get_image_url(e,t,r){const i=this.string_lookup_replace(this.url,this.extra_url_vars);let o,l,n,s;return this.use_latlon?[l,s,o,n]=this.get_tile_geographic_bounds(e,t,r):[l,s,o,n]=this.get_tile_meter_bounds(e,t,r),i.replace(\"{XMIN}\",l.toString()).replace(\"{YMIN}\",s.toString()).replace(\"{XMAX}\",o.toString()).replace(\"{YMAX}\",n.toString())}}r.BBoxTileSource=n,n.__name__=\"BBoxTileSource\",n.init_BBoxTileSource()},\n function _(t,e,i,_,s){_();const r=t(349),o=t(9),n=t(350);class l extends r.TileSource{constructor(t){super(t)}static init_MercatorTileSource(){this.define((({Boolean:t})=>({snap_to_zoom:[t,!1],wrap_around:[t,!0]}))),this.override({x_origin_offset:20037508.34,y_origin_offset:20037508.34,initial_resolution:156543.03392804097})}initialize(){super.initialize(),this._resolutions=o.range(this.min_zoom,this.max_zoom+1).map((t=>this.get_resolution(t)))}_computed_initial_resolution(){return null!=this.initial_resolution?this.initial_resolution:2*Math.PI*6378137/this.tile_size}is_valid_tile(t,e,i){return!(!this.wrap_around&&(t<0||t>=2**i))&&!(e<0||e>=2**i)}parent_by_tile_xyz(t,e,i){const _=this.tile_xyz_to_quadkey(t,e,i),s=_.substring(0,_.length-1);return this.quadkey_to_tile_xyz(s)}get_resolution(t){return this._computed_initial_resolution()/2**t}get_resolution_by_extent(t,e,i){return[(t[2]-t[0])/i,(t[3]-t[1])/e]}get_level_by_extent(t,e,i){const _=(t[2]-t[0])/i,s=(t[3]-t[1])/e,r=Math.max(_,s);let o=0;for(const t of this._resolutions){if(r>t){if(0==o)return 0;if(o>0)return o-1}o+=1}return o-1}get_closest_level_by_extent(t,e,i){const _=(t[2]-t[0])/i,s=(t[3]-t[1])/e,r=Math.max(_,s),o=this._resolutions.reduce((function(t,e){return Math.abs(e-r)<Math.abs(t-r)?e:t}));return this._resolutions.indexOf(o)}snap_to_zoom_level(t,e,i,_){const[s,r,o,n]=t,l=this._resolutions[_];let u=i*l,a=e*l;if(!this.snap_to_zoom){const t=(o-s)/u,e=(n-r)/a;t>e?(u=o-s,a*=t):(u*=e,a=n-r)}const h=(u-(o-s))/2,c=(a-(n-r))/2;return[s-h,r-c,o+h,n+c]}tms_to_wmts(t,e,i){return[t,2**i-1-e,i]}wmts_to_tms(t,e,i){return[t,2**i-1-e,i]}pixels_to_meters(t,e,i){const _=this.get_resolution(i);return[t*_-this.x_origin_offset,e*_-this.y_origin_offset]}meters_to_pixels(t,e,i){const _=this.get_resolution(i);return[(t+this.x_origin_offset)/_,(e+this.y_origin_offset)/_]}pixels_to_tile(t,e){let i=Math.ceil(t/this.tile_size);i=0===i?i:i-1;return[i,Math.max(Math.ceil(e/this.tile_size)-1,0)]}pixels_to_raster(t,e,i){return[t,(this.tile_size<<i)-e]}meters_to_tile(t,e,i){const[_,s]=this.meters_to_pixels(t,e,i);return this.pixels_to_tile(_,s)}get_tile_meter_bounds(t,e,i){const[_,s]=this.pixels_to_meters(t*this.tile_size,e*this.tile_size,i),[r,o]=this.pixels_to_meters((t+1)*this.tile_size,(e+1)*this.tile_size,i);return[_,s,r,o]}get_tile_geographic_bounds(t,e,i){const _=this.get_tile_meter_bounds(t,e,i),[s,r,o,l]=n.meters_extent_to_geographic(_);return[s,r,o,l]}get_tiles_by_extent(t,e,i=1){const[_,s,r,o]=t;let[n,l]=this.meters_to_tile(_,s,e),[u,a]=this.meters_to_tile(r,o,e);n-=i,l-=i,u+=i,a+=i;const h=[];for(let t=a;t>=l;t--)for(let i=n;i<=u;i++)this.is_valid_tile(i,t,e)&&h.push([i,t,e,this.get_tile_meter_bounds(i,t,e)]);return this.sort_tiles_from_center(h,[n,l,u,a]),h}quadkey_to_tile_xyz(t){let e=0,i=0;const _=t.length;for(let s=_;s>0;s--){const r=1<<s-1;switch(t.charAt(_-s)){case\"0\":continue;case\"1\":e|=r;break;case\"2\":i|=r;break;case\"3\":e|=r,i|=r;break;default:throw new TypeError(`Invalid Quadkey: ${t}`)}}return[e,i,_]}tile_xyz_to_quadkey(t,e,i){let _=\"\";for(let s=i;s>0;s--){const i=1<<s-1;let r=0;0!=(t&i)&&(r+=1),0!=(e&i)&&(r+=2),_+=r.toString()}return _}children_by_tile_xyz(t,e,i){const _=this.tile_xyz_to_quadkey(t,e,i),s=[];for(let t=0;t<=3;t++){const[e,i,r]=this.quadkey_to_tile_xyz(_+t.toString()),o=this.get_tile_meter_bounds(e,i,r);s.push([e,i,r,o])}return s}get_closest_parent_by_tile_xyz(t,e,i){const _=this.calculate_world_x_by_tile_xyz(t,e,i);[t,e,i]=this.normalize_xyz(t,e,i);let s=this.tile_xyz_to_quadkey(t,e,i);for(;s.length>0;)if(s=s.substring(0,s.length-1),[t,e,i]=this.quadkey_to_tile_xyz(s),[t,e,i]=this.denormalize_xyz(t,e,i,_),this.tiles.has(this.tile_xyz_to_key(t,e,i)))return[t,e,i];return[0,0,0]}normalize_xyz(t,e,i){if(this.wrap_around){const _=2**i;return[(t%_+_)%_,e,i]}return[t,e,i]}denormalize_xyz(t,e,i,_){return[t+_*2**i,e,i]}denormalize_meters(t,e,i,_){return[t+2*_*Math.PI*6378137,e]}calculate_world_x_by_tile_xyz(t,e,i){return Math.floor(t/2**i)}}i.MercatorTileSource=l,l.__name__=\"MercatorTileSource\",l.init_MercatorTileSource()},\n function _(e,t,r,i,n){i();const l=e(53),s=e(13);class a extends l.Model{constructor(e){super(e)}static init_TileSource(){this.define((({Number:e,String:t,Dict:r,Nullable:i})=>({url:[t,\"\"],tile_size:[e,256],max_zoom:[e,30],min_zoom:[e,0],extra_url_vars:[r(t),{}],attribution:[t,\"\"],x_origin_offset:[e],y_origin_offset:[e],initial_resolution:[i(e),null]})))}initialize(){super.initialize(),this.tiles=new Map,this._normalize_case()}connect_signals(){super.connect_signals(),this.connect(this.change,(()=>this._clear_cache()))}string_lookup_replace(e,t){let r=e;for(const[e,i]of s.entries(t))r=r.replace(`{${e}}`,i);return r}_normalize_case(){const e=this.url.replace(\"{x}\",\"{X}\").replace(\"{y}\",\"{Y}\").replace(\"{z}\",\"{Z}\").replace(\"{q}\",\"{Q}\").replace(\"{xmin}\",\"{XMIN}\").replace(\"{ymin}\",\"{YMIN}\").replace(\"{xmax}\",\"{XMAX}\").replace(\"{ymax}\",\"{YMAX}\");this.url=e}_clear_cache(){this.tiles=new Map}tile_xyz_to_key(e,t,r){return`${e}:${t}:${r}`}key_to_tile_xyz(e){const[t,r,i]=e.split(\":\").map((e=>parseInt(e)));return[t,r,i]}sort_tiles_from_center(e,t){const[r,i,n,l]=t,s=(n-r)/2+r,a=(l-i)/2+i;e.sort((function(e,t){return Math.sqrt((s-e[0])**2+(a-e[1])**2)-Math.sqrt((s-t[0])**2+(a-t[1])**2)}))}get_image_url(e,t,r){return this.string_lookup_replace(this.url,this.extra_url_vars).replace(\"{X}\",e.toString()).replace(\"{Y}\",t.toString()).replace(\"{Z}\",r.toString())}}r.TileSource=a,a.__name__=\"TileSource\",a.init_TileSource()},\n function _(t,e,r,n,o){n();const c=t(65);function _(t,e){return c.wgs84_mercator.compute(t,e)}function g(t,e){return c.wgs84_mercator.invert(t,e)}r.geographic_to_meters=_,r.meters_to_geographic=g,r.geographic_extent_to_meters=function(t){const[e,r,n,o]=t,[c,g]=_(e,r),[i,u]=_(n,o);return[c,g,i,u]},r.meters_extent_to_geographic=function(t){const[e,r,n,o]=t,[c,_]=g(e,r),[i,u]=g(n,o);return[c,_,i,u]}},\n function _(e,t,r,s,_){s();const o=e(348);class c extends o.MercatorTileSource{constructor(e){super(e)}get_image_url(e,t,r){const s=this.string_lookup_replace(this.url,this.extra_url_vars),[_,o,c]=this.tms_to_wmts(e,t,r),i=this.tile_xyz_to_quadkey(_,o,c);return s.replace(\"{Q}\",i)}}r.QUADKEYTileSource=c,c.__name__=\"QUADKEYTileSource\"},\n function _(t,e,i,s,_){s();const n=t(1),a=t(349),h=t(353),r=t(41),o=t(156),l=t(43),d=t(296),m=t(9),c=t(8),p=n.__importStar(t(354));class g extends r.RendererView{initialize(){this._tiles=[],super.initialize()}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.request_render())),this.connect(this.model.tile_source.change,(()=>this.request_render()))}styles(){return[...super.styles(),p.default]}get_extent(){return[this.x_range.start,this.y_range.start,this.x_range.end,this.y_range.end]}get map_plot(){return this.plot_model}get map_canvas(){return this.layer.ctx}get map_frame(){return this.plot_view.frame}get x_range(){return this.map_plot.x_range}get y_range(){return this.map_plot.y_range}_set_data(){this.extent=this.get_extent(),this._last_height=void 0,this._last_width=void 0}_update_attribution(){null!=this.attribution_el&&l.removeElement(this.attribution_el);const{attribution:t}=this.model.tile_source;if(c.isString(t)&&t.length>0){const{layout:e,frame:i}=this.plot_view,s=e.bbox.width-i.bbox.right,_=e.bbox.height-i.bbox.bottom,n=i.bbox.width;this.attribution_el=l.div({class:p.tile_attribution,style:{position:\"absolute\",right:`${s}px`,bottom:`${_}px`,\"max-width\":n-4+\"px\",padding:\"2px\",\"background-color\":\"rgba(255,255,255,0.5)\",\"font-size\":\"9px\",\"line-height\":\"1.05\",\"white-space\":\"nowrap\",overflow:\"hidden\",\"text-overflow\":\"ellipsis\"}}),this.plot_view.canvas_view.add_event(this.attribution_el),this.attribution_el.innerHTML=t,this.attribution_el.title=this.attribution_el.textContent.replace(/\\s*\\n\\s*/g,\" \")}}_map_data(){this.initial_extent=this.get_extent();const t=this.model.tile_source.get_level_by_extent(this.initial_extent,this.map_frame.bbox.height,this.map_frame.bbox.width),e=this.model.tile_source.snap_to_zoom_level(this.initial_extent,this.map_frame.bbox.height,this.map_frame.bbox.width,t);this.x_range.start=e[0],this.y_range.start=e[1],this.x_range.end=e[2],this.y_range.end=e[3],this.x_range instanceof o.Range1d&&(this.x_range.reset_start=e[0],this.x_range.reset_end=e[2]),this.y_range instanceof o.Range1d&&(this.y_range.reset_start=e[1],this.y_range.reset_end=e[3]),this._update_attribution()}_create_tile(t,e,i,s,_=!1){const[n,a,h]=this.model.tile_source.normalize_xyz(t,e,i),r={img:void 0,tile_coords:[t,e,i],normalized_coords:[n,a,h],quadkey:this.model.tile_source.tile_xyz_to_quadkey(t,e,i),cache_key:this.model.tile_source.tile_xyz_to_key(t,e,i),bounds:s,loaded:!1,finished:!1,x_coord:s[0],y_coord:s[3]},o=this.model.tile_source.get_image_url(n,a,h);new d.ImageLoader(o,{loaded:t=>{Object.assign(r,{img:t,loaded:!0}),_?(r.finished=!0,this.notify_finished()):this.request_render()},failed(){r.finished=!0}}),this.model.tile_source.tiles.set(r.cache_key,r),this._tiles.push(r)}_enforce_aspect_ratio(){if(this._last_height!==this.map_frame.bbox.height||this._last_width!==this.map_frame.bbox.width){const t=this.get_extent(),e=this.model.tile_source.get_level_by_extent(t,this.map_frame.bbox.height,this.map_frame.bbox.width),i=this.model.tile_source.snap_to_zoom_level(t,this.map_frame.bbox.height,this.map_frame.bbox.width,e);this.x_range.setv({start:i[0],end:i[2]}),this.y_range.setv({start:i[1],end:i[3]}),this.extent=i,this._last_height=this.map_frame.bbox.height,this._last_width=this.map_frame.bbox.width}}has_finished(){if(!super.has_finished())return!1;if(0===this._tiles.length)return!1;for(const t of this._tiles)if(!t.finished)return!1;return!0}_render(){null==this.map_initialized&&(this._set_data(),this._map_data(),this.map_initialized=!0),this._enforce_aspect_ratio(),this._update(),null!=this.prefetch_timer&&clearTimeout(this.prefetch_timer),this.prefetch_timer=setTimeout(this._prefetch_tiles.bind(this),500),this.has_finished()&&this.notify_finished()}_draw_tile(t){const e=this.model.tile_source.tiles.get(t);if(null!=e&&e.loaded){const[[t],[i]]=this.coordinates.map_to_screen([e.bounds[0]],[e.bounds[3]]),[[s],[_]]=this.coordinates.map_to_screen([e.bounds[2]],[e.bounds[1]]),n=s-t,a=_-i,h=t,r=i,o=this.map_canvas.getImageSmoothingEnabled();this.map_canvas.setImageSmoothingEnabled(this.model.smoothing),this.map_canvas.drawImage(e.img,h,r,n,a),this.map_canvas.setImageSmoothingEnabled(o),e.finished=!0}}_set_rect(){const t=this.plot_model.outline_line_width,e=this.map_frame.bbox.left+t/2,i=this.map_frame.bbox.top+t/2,s=this.map_frame.bbox.width-t,_=this.map_frame.bbox.height-t;this.map_canvas.rect(e,i,s,_),this.map_canvas.clip()}_render_tiles(t){this.map_canvas.save(),this._set_rect(),this.map_canvas.globalAlpha=this.model.alpha;for(const e of t)this._draw_tile(e);this.map_canvas.restore()}_prefetch_tiles(){const{tile_source:t}=this.model,e=this.get_extent(),i=this.map_frame.bbox.height,s=this.map_frame.bbox.width,_=this.model.tile_source.get_level_by_extent(e,i,s),n=this.model.tile_source.get_tiles_by_extent(e,_);for(let e=0,i=Math.min(10,n.length);e<i;e++){const[i,s,_]=n[e],a=this.model.tile_source.children_by_tile_xyz(i,s,_);for(const e of a){const[i,s,_,n]=e;t.tiles.has(t.tile_xyz_to_key(i,s,_))||this._create_tile(i,s,_,n,!0)}}}_fetch_tiles(t){for(const e of t){const[t,i,s,_]=e;this._create_tile(t,i,s,_)}}_update(){const{tile_source:t}=this.model,{min_zoom:e}=t,{max_zoom:i}=t;let s=this.get_extent();const _=this.extent[2]-this.extent[0]<s[2]-s[0],n=this.map_frame.bbox.height,a=this.map_frame.bbox.width;let h=t.get_level_by_extent(s,n,a),r=!1;h<e?(s=this.extent,h=e,r=!0):h>i&&(s=this.extent,h=i,r=!0),r&&(this.x_range.setv({start:s[0],end:s[2]}),this.y_range.setv({start:s[1],end:s[3]})),this.extent=s;const o=t.get_tiles_by_extent(s,h),l=[],d=[],c=[],p=[];for(const e of o){const[i,s,n]=e,a=t.tile_xyz_to_key(i,s,n),h=t.tiles.get(a);if(null!=h&&h.loaded)d.push(a);else if(this.model.render_parents){const[e,a,h]=t.get_closest_parent_by_tile_xyz(i,s,n),r=t.tile_xyz_to_key(e,a,h),o=t.tiles.get(r);if(null!=o&&o.loaded&&!m.includes(c,r)&&c.push(r),_){const e=t.children_by_tile_xyz(i,s,n);for(const[i,s,_]of e){const e=t.tile_xyz_to_key(i,s,_);t.tiles.has(e)&&p.push(e)}}}null==h&&l.push(e)}this._render_tiles(c),this._render_tiles(p),this._render_tiles(d),null!=this.render_timer&&clearTimeout(this.render_timer),this.render_timer=setTimeout((()=>this._fetch_tiles(l)),65)}}i.TileRendererView=g,g.__name__=\"TileRendererView\";class u extends r.Renderer{constructor(t){super(t)}static init_TileRenderer(){this.prototype.default_view=g,this.define((({Boolean:t,Number:e,Ref:i})=>({alpha:[e,1],smoothing:[t,!0],tile_source:[i(a.TileSource),()=>new h.WMTSTileSource],render_parents:[t,!0]}))),this.override({level:\"image\"})}}i.TileRenderer=u,u.__name__=\"TileRenderer\",u.init_TileRenderer()},\n function _(t,e,r,o,s){o();const c=t(348);class i extends c.MercatorTileSource{constructor(t){super(t)}get_image_url(t,e,r){const o=this.string_lookup_replace(this.url,this.extra_url_vars),[s,c,i]=this.tms_to_wmts(t,e,r);return o.replace(\"{X}\",s.toString()).replace(\"{Y}\",c.toString()).replace(\"{Z}\",i.toString())}}r.WMTSTileSource=i,i.__name__=\"WMTSTileSource\"},\n function _(t,o,i,b,r){b(),i.root=\"bk-root\",i.tile_attribution=\"bk-tile-attribution\",i.default=\".bk-root .bk-tile-attribution a{color:black;}\"},\n function _(e,r,t,c,o){c();const i=e(348);class l extends i.MercatorTileSource{constructor(e){super(e)}get_image_url(e,r,t){return this.string_lookup_replace(this.url,this.extra_url_vars).replace(\"{X}\",e.toString()).replace(\"{Y}\",r.toString()).replace(\"{Z}\",t.toString())}}t.TMSTileSource=l,l.__name__=\"TMSTileSource\"},\n function _(e,t,u,a,r){a(),r(\"CanvasTexture\",e(357).CanvasTexture),r(\"ImageURLTexture\",e(359).ImageURLTexture),r(\"Texture\",e(358).Texture)},\n function _(t,e,n,c,s){c();const a=t(358),i=t(34);class r extends a.Texture{constructor(t){super(t)}static init_CanvasTexture(){this.define((({String:t})=>({code:[t]})))}get func(){const t=i.use_strict(this.code);return new Function(\"ctx\",\"color\",\"scale\",\"weight\",t)}get_pattern(t,e,n){const c=document.createElement(\"canvas\");c.width=e,c.height=e;const s=c.getContext(\"2d\");return this.func.call(this,s,t,e,n),c}}n.CanvasTexture=r,r.__name__=\"CanvasTexture\",r.init_CanvasTexture()},\n function _(e,t,i,n,r){n();const s=e(53),u=e(20);class o extends s.Model{constructor(e){super(e)}static init_Texture(){this.define((()=>({repetition:[u.TextureRepetition,\"repeat\"]})))}}i.Texture=o,o.__name__=\"Texture\",o.init_Texture()},\n function _(e,t,i,r,n){r();const a=e(358),s=e(296);class u extends a.Texture{constructor(e){super(e)}static init_ImageURLTexture(){this.define((({String:e})=>({url:[e]})))}initialize(){super.initialize(),this._loader=new s.ImageLoader(this.url)}get_pattern(e,t,i){const{_loader:r}=this;return this._loader.finished?r.image:r.promise}}i.ImageURLTexture=u,u.__name__=\"ImageURLTexture\",u.init_ImageURLTexture()},\n function _(o,l,T,e,t){e(),t(\"ActionTool\",o(251).ActionTool),t(\"CustomAction\",o(361).CustomAction),t(\"HelpTool\",o(252).HelpTool),t(\"RedoTool\",o(362).RedoTool),t(\"ResetTool\",o(363).ResetTool),t(\"SaveTool\",o(364).SaveTool),t(\"UndoTool\",o(365).UndoTool),t(\"ZoomInTool\",o(366).ZoomInTool),t(\"ZoomOutTool\",o(369).ZoomOutTool),t(\"ButtonTool\",o(238).ButtonTool),t(\"EditTool\",o(370).EditTool),t(\"BoxEditTool\",o(371).BoxEditTool),t(\"FreehandDrawTool\",o(372).FreehandDrawTool),t(\"PointDrawTool\",o(373).PointDrawTool),t(\"PolyDrawTool\",o(374).PolyDrawTool),t(\"PolyTool\",o(375).PolyTool),t(\"PolyEditTool\",o(376).PolyEditTool),t(\"BoxSelectTool\",o(377).BoxSelectTool),t(\"BoxZoomTool\",o(379).BoxZoomTool),t(\"GestureTool\",o(237).GestureTool),t(\"LassoSelectTool\",o(380).LassoSelectTool),t(\"LineEditTool\",o(382).LineEditTool),t(\"PanTool\",o(384).PanTool),t(\"PolySelectTool\",o(381).PolySelectTool),t(\"RangeTool\",o(385).RangeTool),t(\"SelectTool\",o(378).SelectTool),t(\"TapTool\",o(386).TapTool),t(\"WheelPanTool\",o(387).WheelPanTool),t(\"WheelZoomTool\",o(388).WheelZoomTool),t(\"CrosshairTool\",o(389).CrosshairTool),t(\"CustomJSHover\",o(390).CustomJSHover),t(\"HoverTool\",o(391).HoverTool),t(\"InspectTool\",o(247).InspectTool),t(\"Tool\",o(236).Tool),t(\"ToolProxy\",o(392).ToolProxy),t(\"Toolbar\",o(235).Toolbar),t(\"ToolbarBase\",o(248).ToolbarBase),t(\"ProxyToolbar\",o(393).ProxyToolbar),t(\"ToolbarBox\",o(393).ToolbarBox)},\n function _(t,o,i,s,n){s();const e=t(251);class c extends e.ActionToolButtonView{css_classes(){return super.css_classes().concat(\"bk-toolbar-button-custom-action\")}}i.CustomActionButtonView=c,c.__name__=\"CustomActionButtonView\";class u extends e.ActionToolView{doit(){var t;null===(t=this.model.callback)||void 0===t||t.execute(this.model)}}i.CustomActionView=u,u.__name__=\"CustomActionView\";class l extends e.ActionTool{constructor(t){super(t),this.tool_name=\"Custom Action\",this.button_view=c}static init_CustomAction(){this.prototype.default_view=u,this.define((({Any:t,String:o,Nullable:i})=>({callback:[i(t)],icon:[o]}))),this.override({description:\"Perform a Custom Action\"})}}i.CustomAction=l,l.__name__=\"CustomAction\",l.init_CustomAction()},\n function _(o,e,t,i,s){i();const n=o(251),d=o(242);class l extends n.ActionToolView{connect_signals(){super.connect_signals(),this.connect(this.plot_view.state.changed,(()=>this.model.disabled=!this.plot_view.state.can_redo))}doit(){this.plot_view.state.redo()}}t.RedoToolView=l,l.__name__=\"RedoToolView\";class _ extends n.ActionTool{constructor(o){super(o),this.tool_name=\"Redo\",this.icon=d.tool_icon_redo}static init_RedoTool(){this.prototype.default_view=l,this.override({disabled:!0}),this.register_alias(\"redo\",(()=>new _))}}t.RedoTool=_,_.__name__=\"RedoTool\",_.init_RedoTool()},\n function _(e,t,o,s,i){s();const _=e(251),n=e(242);class l extends _.ActionToolView{doit(){this.plot_view.reset()}}o.ResetToolView=l,l.__name__=\"ResetToolView\";class c extends _.ActionTool{constructor(e){super(e),this.tool_name=\"Reset\",this.icon=n.tool_icon_reset}static init_ResetTool(){this.prototype.default_view=l,this.register_alias(\"reset\",(()=>new c))}}o.ResetTool=c,c.__name__=\"ResetTool\",c.init_ResetTool()},\n function _(o,e,t,a,i){a();const n=o(251),s=o(242);class c extends n.ActionToolView{async copy(){const o=await this.plot_view.to_blob(),e=new ClipboardItem({[o.type]:o});await navigator.clipboard.write([e])}async save(o){const e=await this.plot_view.to_blob(),t=document.createElement(\"a\");t.href=URL.createObjectURL(e),t.download=o,t.target=\"_blank\",t.dispatchEvent(new MouseEvent(\"click\"))}doit(o=\"save\"){switch(o){case\"save\":this.save(\"bokeh_plot\");break;case\"copy\":this.copy()}}}t.SaveToolView=c,c.__name__=\"SaveToolView\";class l extends n.ActionTool{constructor(o){super(o),this.tool_name=\"Save\",this.icon=s.tool_icon_save}static init_SaveTool(){this.prototype.default_view=c,this.register_alias(\"save\",(()=>new l))}get menu(){return[{icon:\"bk-tool-icon-copy-to-clipboard\",tooltip:\"Copy image to clipboard\",if:()=>\"undefined\"!=typeof ClipboardItem,handler:()=>{this.do.emit(\"copy\")}}]}}t.SaveTool=l,l.__name__=\"SaveTool\",l.init_SaveTool()},\n function _(o,t,n,i,e){i();const s=o(251),d=o(242);class l extends s.ActionToolView{connect_signals(){super.connect_signals(),this.connect(this.plot_view.state.changed,(()=>this.model.disabled=!this.plot_view.state.can_undo))}doit(){this.plot_view.state.undo()}}n.UndoToolView=l,l.__name__=\"UndoToolView\";class _ extends s.ActionTool{constructor(o){super(o),this.tool_name=\"Undo\",this.icon=d.tool_icon_undo}static init_UndoTool(){this.prototype.default_view=l,this.override({disabled:!0}),this.register_alias(\"undo\",(()=>new _))}}n.UndoTool=_,_.__name__=\"UndoTool\",_.init_UndoTool()},\n function _(o,i,n,s,e){s();const t=o(367),_=o(242);class m extends t.ZoomBaseToolView{}n.ZoomInToolView=m,m.__name__=\"ZoomInToolView\";class l extends t.ZoomBaseTool{constructor(o){super(o),this.sign=1,this.tool_name=\"Zoom In\",this.icon=_.tool_icon_zoom_in}static init_ZoomInTool(){this.prototype.default_view=m,this.register_alias(\"zoom_in\",(()=>new l({dimensions:\"both\"}))),this.register_alias(\"xzoom_in\",(()=>new l({dimensions:\"width\"}))),this.register_alias(\"yzoom_in\",(()=>new l({dimensions:\"height\"})))}}n.ZoomInTool=l,l.__name__=\"ZoomInTool\",l.init_ZoomInTool()},\n function _(o,t,e,i,s){i();const n=o(251),l=o(20),a=o(368);class _ extends n.ActionToolView{doit(){var o;const t=this.plot_view.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,s=\"height\"==e||\"both\"==e,n=a.scale_range(t,this.model.sign*this.model.factor,i,s);this.plot_view.state.push(\"zoom_out\",{range:n}),this.plot_view.update_range(n,{scrolling:!0}),null===(o=this.model.document)||void 0===o||o.interactive_start(this.plot_model)}}e.ZoomBaseToolView=_,_.__name__=\"ZoomBaseToolView\";class m extends n.ActionTool{constructor(o){super(o)}static init_ZoomBaseTool(){this.define((({Percent:o})=>({factor:[o,.1],dimensions:[l.Dimensions,\"both\"]})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}e.ZoomBaseTool=m,m.__name__=\"ZoomBaseTool\",m.init_ZoomBaseTool()},\n function _(n,t,o,r,s){r();const c=n(10);function e(n,t,o){const[r,s]=[n.start,n.end],c=null!=o?o:(s+r)/2;return[r-(r-c)*t,s-(s-c)*t]}function a(n,[t,o]){const r=new Map;for(const[s,c]of n){const[n,e]=c.r_invert(t,o);r.set(s,{start:n,end:e})}return r}o.scale_highlow=e,o.get_info=a,o.scale_range=function(n,t,o=!0,r=!0,s){t=c.clamp(t,-.9,.9);const l=o?t:0,[u,i]=e(n.bbox.h_range,l,null!=s?s.x:void 0),_=a(n.x_scales,[u,i]),f=r?t:0,[g,x]=e(n.bbox.v_range,f,null!=s?s.y:void 0);return{xrs:_,yrs:a(n.y_scales,[g,x]),factor:t}}},\n function _(o,t,i,s,e){s();const n=o(367),_=o(242);class m extends n.ZoomBaseToolView{}i.ZoomOutToolView=m,m.__name__=\"ZoomOutToolView\";class l extends n.ZoomBaseTool{constructor(o){super(o),this.sign=-1,this.tool_name=\"Zoom Out\",this.icon=_.tool_icon_zoom_out}static init_ZoomOutTool(){this.prototype.default_view=m,this.register_alias(\"zoom_out\",(()=>new l({dimensions:\"both\"}))),this.register_alias(\"xzoom_out\",(()=>new l({dimensions:\"width\"}))),this.register_alias(\"yzoom_out\",(()=>new l({dimensions:\"height\"})))}}i.ZoomOutTool=l,l.__name__=\"ZoomOutTool\",l.init_ZoomOutTool()},\n function _(e,t,s,o,n){o();const i=e(9),r=e(8),c=e(11),a=e(61),_=e(237);class l extends _.GestureToolView{constructor(){super(...arguments),this._mouse_in_frame=!0}_select_mode(e){const{shiftKey:t,ctrlKey:s}=e;return t||s?t&&!s?\"append\":!t&&s?\"intersect\":t&&s?\"subtract\":void c.unreachable():\"replace\"}_move_enter(e){this._mouse_in_frame=!0}_move_exit(e){this._mouse_in_frame=!1}_map_drag(e,t,s){if(!this.plot_view.frame.bbox.contains(e,t))return null;const o=this.plot_view.renderer_view(s);if(null==o)return null;return[o.coordinates.x_scale.invert(e),o.coordinates.y_scale.invert(t)]}_delete_selected(e){const t=e.data_source,s=t.selected.indices;s.sort();for(const e of t.columns()){const o=t.get_array(e);for(let e=0;e<s.length;e++){const t=s[e];o.splice(t-e,1)}}this._emit_cds_changes(t)}_pop_glyphs(e,t){const s=e.columns();if(t&&s.length)for(const o of s){let s=e.get_array(o);const n=s.length-t+1;n<1||(r.isArray(s)||(s=Array.from(s),e.data[o]=s),s.splice(0,n))}}_emit_cds_changes(e,t=!0,s=!0,o=!0){s&&e.selection_manager.clear(),t&&e.change.emit(),o&&(e.data=e.data,e.properties.data.change.emit())}_drag_points(e,t,s=\"both\"){if(null==this._basepoint)return;const[o,n]=this._basepoint;for(const i of t){const t=this._map_drag(o,n,i),r=this._map_drag(e.sx,e.sy,i);if(null==r||null==t)continue;const[c,a]=r,[_,l]=t,[d,u]=[c-_,a-l],h=i.glyph,m=i.data_source,[p,f]=[h.x.field,h.y.field];for(const e of m.selected.indices)!p||\"width\"!=s&&\"both\"!=s||(m.data[p][e]+=d),!f||\"height\"!=s&&\"both\"!=s||(m.data[f][e]+=u);m.change.emit()}this._basepoint=[e.sx,e.sy]}_pad_empty_columns(e,t){for(const s of e.columns())i.includes(t,s)||e.get_array(s).push(this.model.empty_value)}_select_event(e,t,s){const o=this.plot_view.frame,{sx:n,sy:i}=e;if(!o.bbox.contains(n,i))return[];const r={type:\"point\",sx:n,sy:i},c=[];for(const e of s){const s=e.get_selection_manager(),o=e.data_source,n=this.plot_view.renderer_view(e);if(null!=n){s.select([n],r,!0,t)&&c.push(e),o.properties.selected.change.emit()}}return c}}s.EditToolView=l,l.__name__=\"EditToolView\";class d extends _.GestureTool{constructor(e){super(e)}static init_EditTool(){this.define((({Unknown:e,String:t,Array:s,Ref:o,Nullable:n})=>({custom_icon:[n(t),null],empty_value:[e],renderers:[s(o(a.GlyphRenderer)),[]]})))}get computed_icon(){var e;return null!==(e=this.custom_icon)&&void 0!==e?e:this.icon}}s.EditTool=d,d.__name__=\"EditTool\",d.init_EditTool()},\n function _(e,t,s,i,_){i();const o=e(43),n=e(20),a=e(370),d=e(242);class l extends a.EditToolView{_tap(e){null==this._draw_basepoint&&null==this._basepoint&&this._select_event(e,this._select_mode(e),this.model.renderers)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)if(e.keyCode===o.Keys.Backspace)this._delete_selected(t);else if(e.keyCode==o.Keys.Esc){t.data_source.selection_manager.clear()}}_set_extent([e,t],[s,i],_,o=!1){const n=this.model.renderers[0],a=this.plot_view.renderer_view(n);if(null==a)return;const d=n.glyph,l=n.data_source,[r,h]=a.coordinates.x_scale.r_invert(e,t),[p,u]=a.coordinates.y_scale.r_invert(s,i),[c,m]=[(r+h)/2,(p+u)/2],[f,b]=[h-r,u-p],[x,y]=[d.x.field,d.y.field],[w,v]=[d.width.field,d.height.field];if(_)this._pop_glyphs(l,this.model.num_objects),x&&l.get_array(x).push(c),y&&l.get_array(y).push(m),w&&l.get_array(w).push(f),v&&l.get_array(v).push(b),this._pad_empty_columns(l,[x,y,w,v]);else{const e=l.data[x].length-1;x&&(l.data[x][e]=c),y&&(l.data[y][e]=m),w&&(l.data[w][e]=f),v&&(l.data[v][e]=b)}this._emit_cds_changes(l,!0,!1,o)}_update_box(e,t=!1,s=!1){if(null==this._draw_basepoint)return;const i=[e.sx,e.sy],_=this.plot_view.frame,o=this.model.dimensions,n=this.model._get_dim_limits(this._draw_basepoint,i,_,o);if(null!=n){const[e,i]=n;this._set_extent(e,i,t,s)}}_doubletap(e){this.model.active&&(null!=this._draw_basepoint?(this._update_box(e,!1,!0),this._draw_basepoint=null):(this._draw_basepoint=[e.sx,e.sy],this._select_event(e,\"append\",this.model.renderers),this._update_box(e,!0,!1)))}_move(e){this._update_box(e,!1,!1)}_pan_start(e){if(e.shiftKey){if(null!=this._draw_basepoint)return;this._draw_basepoint=[e.sx,e.sy],this._update_box(e,!0,!1)}else{if(null!=this._basepoint)return;this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy]}}_pan(e,t=!1,s=!1){if(e.shiftKey){if(null==this._draw_basepoint)return;this._update_box(e,t,s)}else{if(null==this._basepoint)return;this._drag_points(e,this.model.renderers)}}_pan_end(e){if(this._pan(e,!1,!0),e.shiftKey)this._draw_basepoint=null;else{this._basepoint=null;for(const e of this.model.renderers)this._emit_cds_changes(e.data_source,!1,!0,!0)}}}s.BoxEditToolView=l,l.__name__=\"BoxEditToolView\";class r extends a.EditTool{constructor(e){super(e),this.tool_name=\"Box Edit Tool\",this.icon=d.tool_icon_box_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=1}static init_BoxEditTool(){this.prototype.default_view=l,this.define((({Int:e})=>({dimensions:[n.Dimensions,\"both\"],num_objects:[e,0]})))}}s.BoxEditTool=r,r.__name__=\"BoxEditTool\",r.init_BoxEditTool()},\n function _(e,t,a,s,r){s();const _=e(43),i=e(8),o=e(370),d=e(242);class n extends o.EditToolView{_draw(e,t,a=!1){if(!this.model.active)return;const s=this.model.renderers[0],r=this._map_drag(e.sx,e.sy,s);if(null==r)return;const[_,o]=r,d=s.data_source,n=s.glyph,[h,l]=[n.xs.field,n.ys.field];if(\"new\"==t)this._pop_glyphs(d,this.model.num_objects),h&&d.get_array(h).push([_]),l&&d.get_array(l).push([o]),this._pad_empty_columns(d,[h,l]);else if(\"add\"==t){if(h){const e=d.data[h].length-1;let t=d.get_array(h)[e];i.isArray(t)||(t=Array.from(t),d.data[h][e]=t),t.push(_)}if(l){const e=d.data[l].length-1;let t=d.get_array(l)[e];i.isArray(t)||(t=Array.from(t),d.data[l][e]=t),t.push(o)}}this._emit_cds_changes(d,!0,!0,a)}_pan_start(e){this._draw(e,\"new\")}_pan(e){this._draw(e,\"add\")}_pan_end(e){this._draw(e,\"add\",!0)}_tap(e){this._select_event(e,this._select_mode(e),this.model.renderers)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===_.Keys.Esc?t.data_source.selection_manager.clear():e.keyCode===_.Keys.Backspace&&this._delete_selected(t)}}a.FreehandDrawToolView=n,n.__name__=\"FreehandDrawToolView\";class h extends o.EditTool{constructor(e){super(e),this.tool_name=\"Freehand Draw Tool\",this.icon=d.tool_icon_freehand_draw,this.event_type=[\"pan\",\"tap\"],this.default_order=3}static init_FreehandDrawTool(){this.prototype.default_view=n,this.define((({Int:e})=>({num_objects:[e,0]}))),this.register_alias(\"freehand_draw\",(()=>new h))}}a.FreehandDrawTool=h,h.__name__=\"FreehandDrawTool\",h.init_FreehandDrawTool()},\n function _(e,t,s,o,i){o();const a=e(43),n=e(370),_=e(242);class r extends n.EditToolView{_tap(e){if(this._select_event(e,this._select_mode(e),this.model.renderers).length||!this.model.add)return;const t=this.model.renderers[0],s=this._map_drag(e.sx,e.sy,t);if(null==s)return;const o=t.glyph,i=t.data_source,[a,n]=[o.x.field,o.y.field],[_,r]=s;this._pop_glyphs(i,this.model.num_objects),a&&i.get_array(a).push(_),n&&i.get_array(n).push(r),this._pad_empty_columns(i,[a,n]),i.change.emit(),i.data=i.data,i.properties.data.change.emit()}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===a.Keys.Backspace?this._delete_selected(t):e.keyCode==a.Keys.Esc&&t.data_source.selection_manager.clear()}_pan_start(e){this.model.drag&&(this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy])}_pan(e){this.model.drag&&null!=this._basepoint&&this._drag_points(e,this.model.renderers)}_pan_end(e){if(this.model.drag){this._pan(e);for(const e of this.model.renderers)this._emit_cds_changes(e.data_source,!1,!0,!0);this._basepoint=null}}}s.PointDrawToolView=r,r.__name__=\"PointDrawToolView\";class d extends n.EditTool{constructor(e){super(e),this.tool_name=\"Point Draw Tool\",this.icon=_.tool_icon_point_draw,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=2}static init_PointDrawTool(){this.prototype.default_view=r,this.define((({Boolean:e,Int:t})=>({add:[e,!0],drag:[e,!0],num_objects:[t,0]})))}}s.PointDrawTool=d,d.__name__=\"PointDrawTool\",d.init_PointDrawTool()},\n function _(e,t,s,i,a){i();const o=e(43),r=e(8),n=e(375),_=e(242);class d extends n.PolyToolView{constructor(){super(...arguments),this._drawing=!1,this._initialized=!1}_tap(e){this._drawing?this._draw(e,\"add\",!0):this._select_event(e,this._select_mode(e),this.model.renderers)}_draw(e,t,s=!1){const i=this.model.renderers[0],a=this._map_drag(e.sx,e.sy,i);if(this._initialized||this.activate(),null==a)return;const[o,n]=this._snap_to_vertex(e,...a),_=i.data_source,d=i.glyph,[l,h]=[d.xs.field,d.ys.field];if(\"new\"==t)this._pop_glyphs(_,this.model.num_objects),l&&_.get_array(l).push([o,o]),h&&_.get_array(h).push([n,n]),this._pad_empty_columns(_,[l,h]);else if(\"edit\"==t){if(l){const e=_.data[l][_.data[l].length-1];e[e.length-1]=o}if(h){const e=_.data[h][_.data[h].length-1];e[e.length-1]=n}}else if(\"add\"==t){if(l){const e=_.data[l].length-1;let t=_.get_array(l)[e];const s=t[t.length-1];t[t.length-1]=o,r.isArray(t)||(t=Array.from(t),_.data[l][e]=t),t.push(s)}if(h){const e=_.data[h].length-1;let t=_.get_array(h)[e];const s=t[t.length-1];t[t.length-1]=n,r.isArray(t)||(t=Array.from(t),_.data[h][e]=t),t.push(s)}}this._emit_cds_changes(_,!0,!1,s)}_show_vertices(){if(!this.model.active)return;const e=[],t=[];for(let s=0;s<this.model.renderers.length;s++){const i=this.model.renderers[s],a=i.data_source,o=i.glyph,[r,n]=[o.xs.field,o.ys.field];if(r)for(const t of a.get_array(r))e.push(...t);if(n)for(const e of a.get_array(n))t.push(...e);this._drawing&&s==this.model.renderers.length-1&&(e.splice(e.length-1,1),t.splice(t.length-1,1))}this._set_vertices(e,t)}_doubletap(e){this.model.active&&(this._drawing?(this._drawing=!1,this._draw(e,\"edit\",!0)):(this._drawing=!0,this._draw(e,\"new\",!0)))}_move(e){this._drawing&&this._draw(e,\"edit\")}_remove(){const e=this.model.renderers[0],t=e.data_source,s=e.glyph,[i,a]=[s.xs.field,s.ys.field];if(i){const e=t.data[i].length-1,s=t.get_array(i)[e];s.splice(s.length-1,1)}if(a){const e=t.data[a].length-1,s=t.get_array(a)[e];s.splice(s.length-1,1)}this._emit_cds_changes(t)}_keyup(e){if(this.model.active&&this._mouse_in_frame)for(const t of this.model.renderers)e.keyCode===o.Keys.Backspace?this._delete_selected(t):e.keyCode==o.Keys.Esc&&(this._drawing&&(this._remove(),this._drawing=!1),t.data_source.selection_manager.clear())}_pan_start(e){this.model.drag&&(this._select_event(e,\"append\",this.model.renderers),this._basepoint=[e.sx,e.sy])}_pan(e){if(null==this._basepoint||!this.model.drag)return;const[t,s]=this._basepoint;for(const i of this.model.renderers){const a=this._map_drag(t,s,i),o=this._map_drag(e.sx,e.sy,i);if(null==o||null==a)continue;const r=i.data_source,n=i.glyph,[_,d]=[n.xs.field,n.ys.field];if(!_&&!d)continue;const[l,h]=o,[c,g]=a,[f,p]=[l-c,h-g];for(const e of r.selected.indices){let t,s,i;_&&(s=r.data[_][e]),d?(i=r.data[d][e],t=i.length):t=s.length;for(let e=0;e<t;e++)s&&(s[e]+=f),i&&(i[e]+=p)}r.change.emit()}this._basepoint=[e.sx,e.sy]}_pan_end(e){if(this.model.drag){this._pan(e);for(const e of this.model.renderers)this._emit_cds_changes(e.data_source);this._basepoint=null}}activate(){if(this.model.vertex_renderer&&this.model.active){if(this._show_vertices(),!this._initialized)for(const e of this.model.renderers){const t=e.data_source;t.connect(t.properties.data.change,(()=>this._show_vertices()))}this._initialized=!0}}deactivate(){this._drawing&&(this._remove(),this._drawing=!1),this.model.vertex_renderer&&this._hide_vertices()}}s.PolyDrawToolView=d,d.__name__=\"PolyDrawToolView\";class l extends n.PolyTool{constructor(e){super(e),this.tool_name=\"Polygon Draw Tool\",this.icon=_.tool_icon_poly_draw,this.event_type=[\"pan\",\"tap\",\"move\"],this.default_order=3}static init_PolyDrawTool(){this.prototype.default_view=d,this.define((({Boolean:e,Int:t})=>({drag:[e,!0],num_objects:[t,0]})))}}s.PolyDrawTool=l,l.__name__=\"PolyDrawTool\",l.init_PolyDrawTool()},\n function _(e,t,r,o,s){o();const i=e(8),l=e(370);class _ extends l.EditToolView{_set_vertices(e,t){const r=this.model.vertex_renderer.glyph,o=this.model.vertex_renderer.data_source,[s,l]=[r.x.field,r.y.field];s&&(i.isArray(e)?o.data[s]=e:r.x={value:e}),l&&(i.isArray(t)?o.data[l]=t:r.y={value:t}),this._emit_cds_changes(o,!0,!0,!1)}_hide_vertices(){this._set_vertices([],[])}_snap_to_vertex(e,t,r){if(this.model.vertex_renderer){const o=this._select_event(e,\"replace\",[this.model.vertex_renderer]),s=this.model.vertex_renderer.data_source,i=this.model.vertex_renderer.glyph,[l,_]=[i.x.field,i.y.field];if(o.length){const e=s.selected.indices[0];l&&(t=s.data[l][e]),_&&(r=s.data[_][e]),s.selection_manager.clear()}}return[t,r]}}r.PolyToolView=_,_.__name__=\"PolyToolView\";class d extends l.EditTool{constructor(e){super(e)}static init_PolyTool(){this.define((({AnyRef:e})=>({vertex_renderer:[e()]})))}}r.PolyTool=d,d.__name__=\"PolyTool\",d.init_PolyTool()},\n function _(e,t,s,r,i){r();const _=e(43),d=e(8),n=e(375),l=e(242);class a extends n.PolyToolView{constructor(){super(...arguments),this._drawing=!1,this._cur_index=null}_doubletap(e){if(!this.model.active)return;const t=this._map_drag(e.sx,e.sy,this.model.vertex_renderer);if(null==t)return;const[s,r]=t,i=this._select_event(e,\"replace\",[this.model.vertex_renderer]),_=this.model.vertex_renderer.data_source,d=this.model.vertex_renderer.glyph,[n,l]=[d.x.field,d.y.field];if(i.length&&null!=this._selected_renderer){const e=_.selected.indices[0];this._drawing?(this._drawing=!1,_.selection_manager.clear()):(_.selected.indices=[e+1],n&&_.get_array(n).splice(e+1,0,s),l&&_.get_array(l).splice(e+1,0,r),this._drawing=!0),_.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}else this._show_vertices(e)}_show_vertices(e){if(!this.model.active)return;const t=this.model.renderers[0],s=()=>this._update_vertices(t),r=null==t?void 0:t.data_source,i=this._select_event(e,\"replace\",this.model.renderers);if(!i.length)return this._set_vertices([],[]),this._selected_renderer=null,this._drawing=!1,this._cur_index=null,void(null!=r&&r.disconnect(r.properties.data.change,s));null!=r&&r.connect(r.properties.data.change,s),this._cur_index=i[0].data_source.selected.indices[0],this._update_vertices(i[0])}_update_vertices(e){const t=e.glyph,s=e.data_source,r=this._cur_index,[i,_]=[t.xs.field,t.ys.field];if(this._drawing)return;if(null==r&&(i||_))return;let n,l;i&&null!=r?(n=s.data[i][r],d.isArray(n)||(s.data[i][r]=n=Array.from(n))):n=t.xs.value,_&&null!=r?(l=s.data[_][r],d.isArray(l)||(s.data[_][r]=l=Array.from(l))):l=t.ys.value,this._selected_renderer=e,this._set_vertices(n,l)}_move(e){if(this._drawing&&null!=this._selected_renderer){const t=this.model.vertex_renderer,s=t.data_source,r=t.glyph,i=this._map_drag(e.sx,e.sy,t);if(null==i)return;let[_,d]=i;const n=s.selected.indices;[_,d]=this._snap_to_vertex(e,_,d),s.selected.indices=n;const[l,a]=[r.x.field,r.y.field],c=n[0];l&&(s.data[l][c]=_),a&&(s.data[a][c]=d),s.change.emit(),this._selected_renderer.data_source.change.emit()}}_tap(e){const t=this.model.vertex_renderer,s=this._map_drag(e.sx,e.sy,t);if(null==s)return;if(this._drawing&&this._selected_renderer){let[r,i]=s;const _=t.data_source,d=t.glyph,[n,l]=[d.x.field,d.y.field],a=_.selected.indices;[r,i]=this._snap_to_vertex(e,r,i);const c=a[0];if(_.selected.indices=[c+1],n){const e=_.get_array(n),t=e[c];e[c]=r,e.splice(c+1,0,t)}if(l){const e=_.get_array(l),t=e[c];e[c]=i,e.splice(c+1,0,t)}return _.change.emit(),void this._emit_cds_changes(this._selected_renderer.data_source,!0,!1,!0)}const r=this._select_mode(e);this._select_event(e,r,[t]),this._select_event(e,r,this.model.renderers)}_remove_vertex(){if(!this._drawing||!this._selected_renderer)return;const e=this.model.vertex_renderer,t=e.data_source,s=e.glyph,r=t.selected.indices[0],[i,_]=[s.x.field,s.y.field];i&&t.get_array(i).splice(r,1),_&&t.get_array(_).splice(r,1),t.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}_pan_start(e){this._select_event(e,\"append\",[this.model.vertex_renderer]),this._basepoint=[e.sx,e.sy]}_pan(e){null!=this._basepoint&&(this._drag_points(e,[this.model.vertex_renderer]),this._selected_renderer&&this._selected_renderer.data_source.change.emit())}_pan_end(e){null!=this._basepoint&&(this._drag_points(e,[this.model.vertex_renderer]),this._emit_cds_changes(this.model.vertex_renderer.data_source,!1,!0,!0),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source),this._basepoint=null)}_keyup(e){if(!this.model.active||!this._mouse_in_frame)return;let t;t=this._selected_renderer?[this.model.vertex_renderer]:this.model.renderers;for(const s of t)e.keyCode===_.Keys.Backspace?(this._delete_selected(s),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source)):e.keyCode==_.Keys.Esc&&(this._drawing?(this._remove_vertex(),this._drawing=!1):this._selected_renderer&&this._hide_vertices(),s.data_source.selection_manager.clear())}deactivate(){this._selected_renderer&&(this._drawing&&(this._remove_vertex(),this._drawing=!1),this._hide_vertices())}}s.PolyEditToolView=a,a.__name__=\"PolyEditToolView\";class c extends n.PolyTool{constructor(e){super(e),this.tool_name=\"Poly Edit Tool\",this.icon=l.tool_icon_poly_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=4}static init_PolyEditTool(){this.prototype.default_view=a}}s.PolyEditTool=c,c.__name__=\"PolyEditTool\",c.init_PolyEditTool()},\n function _(e,t,o,s,i){s();const l=e(378),n=e(136),_=e(20),c=e(242);class h extends l.SelectToolView{_compute_limits(e){const t=this.plot_view.frame,o=this.model.dimensions;let s=this._base_point;if(\"center\"==this.model.origin){const[t,o]=s,[i,l]=e;s=[t-(i-t),o-(l-o)]}return this.model._get_dim_limits(s,e,t,o)}_pan_start(e){const{sx:t,sy:o}=e;this._base_point=[t,o]}_pan(e){const{sx:t,sy:o}=e,s=[t,o],[i,l]=this._compute_limits(s);this.model.overlay.update({left:i[0],right:i[1],top:l[0],bottom:l[1]}),this.model.select_every_mousemove&&this._do_select(i,l,!1,this._select_mode(e))}_pan_end(e){const{sx:t,sy:o}=e,s=[t,o],[i,l]=this._compute_limits(s);this._do_select(i,l,!0,this._select_mode(e)),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null,this.plot_view.state.push(\"box_select\",{selection:this.plot_view.get_selection()})}_do_select([e,t],[o,s],i,l=\"replace\"){const n={type:\"rect\",sx0:e,sx1:t,sy0:o,sy1:s};this._select(n,i,l)}}o.BoxSelectToolView=h,h.__name__=\"BoxSelectToolView\";const r=()=>new n.BoxAnnotation({level:\"overlay\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class a extends l.SelectTool{constructor(e){super(e),this.tool_name=\"Box Select\",this.icon=c.tool_icon_box_select,this.event_type=\"pan\",this.default_order=30}static init_BoxSelectTool(){this.prototype.default_view=h,this.define((({Boolean:e,Ref:t})=>({dimensions:[_.Dimensions,\"both\"],select_every_mousemove:[e,!1],overlay:[t(n.BoxAnnotation),r],origin:[_.BoxOrigin,\"corner\"]}))),this.register_alias(\"box_select\",(()=>new a)),this.register_alias(\"xbox_select\",(()=>new a({dimensions:\"width\"}))),this.register_alias(\"ybox_select\",(()=>new a({dimensions:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}o.BoxSelectTool=a,a.__name__=\"BoxSelectTool\",a.init_BoxSelectTool()},\n function _(e,t,s,n,o){n();const r=e(237),c=e(61),i=e(123),l=e(62),a=e(161),_=e(20),d=e(43),h=e(264),p=e(15),u=e(11);class m extends r.GestureToolView{connect_signals(){super.connect_signals(),this.model.clear.connect((()=>this._clear()))}get computed_renderers(){const{renderers:e,names:t}=this.model,s=this.plot_model.data_renderers;return a.compute_renderers(e,s,t)}_computed_renderers_by_data_source(){var e;const t=new Map;for(const s of this.computed_renderers){let n;if(s instanceof c.GlyphRenderer)n=s.data_source;else{if(!(s instanceof i.GraphRenderer))continue;n=s.node_renderer.data_source}const o=null!==(e=t.get(n))&&void 0!==e?e:[];t.set(n,[...o,s])}return t}_select_mode(e){const{shiftKey:t,ctrlKey:s}=e;return t||s?t&&!s?\"append\":!t&&s?\"intersect\":t&&s?\"subtract\":void u.unreachable():this.model.mode}_keyup(e){e.keyCode==d.Keys.Esc&&this._clear()}_clear(){for(const e of this.computed_renderers)e.get_selection_manager().clear();const e=this.computed_renderers.map((e=>this.plot_view.renderer_view(e)));this.plot_view.request_paint(e)}_select(e,t,s){const n=this._computed_renderers_by_data_source();for(const[,o]of n){const n=o[0].get_selection_manager(),r=[];for(const e of o){const t=this.plot_view.renderer_view(e);null!=t&&r.push(t)}n.select(r,e,t,s)}null!=this.model.callback&&this._emit_callback(e),this._emit_selection_event(e,t)}_emit_selection_event(e,t=!0){const{x_scale:s,y_scale:n}=this.plot_view.frame;let o;switch(e.type){case\"point\":{const{sx:t,sy:r}=e,c=s.invert(t),i=n.invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}case\"span\":{const{sx:t,sy:r}=e,c=s.invert(t),i=n.invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}case\"rect\":{const{sx0:t,sx1:r,sy0:c,sy1:i}=e,[l,a]=s.r_invert(t,r),[_,d]=n.r_invert(c,i);o=Object.assign(Object.assign({},e),{x0:l,y0:_,x1:a,y1:d});break}case\"poly\":{const{sx:t,sy:r}=e,c=s.v_invert(t),i=n.v_invert(r);o=Object.assign(Object.assign({},e),{x:c,y:i});break}}this.plot_model.trigger_event(new h.SelectionGeometry(o,t))}}s.SelectToolView=m,m.__name__=\"SelectToolView\";class v extends r.GestureTool{constructor(e){super(e)}initialize(){super.initialize(),this.clear=new p.Signal0(this,\"clear\")}static init_SelectTool(){this.define((({String:e,Array:t,Ref:s,Or:n,Auto:o})=>({renderers:[n(t(s(l.DataRenderer)),o),\"auto\"],names:[t(e),[]],mode:[_.SelectionMode,\"replace\"]})))}get menu(){return[{icon:\"bk-tool-icon-replace-mode\",tooltip:\"Replace the current selection\",active:()=>\"replace\"==this.mode,handler:()=>{this.mode=\"replace\",this.active=!0}},{icon:\"bk-tool-icon-append-mode\",tooltip:\"Append to the current selection (Shift)\",active:()=>\"append\"==this.mode,handler:()=>{this.mode=\"append\",this.active=!0}},{icon:\"bk-tool-icon-intersect-mode\",tooltip:\"Intersect with the current selection (Ctrl)\",active:()=>\"intersect\"==this.mode,handler:()=>{this.mode=\"intersect\",this.active=!0}},{icon:\"bk-tool-icon-subtract-mode\",tooltip:\"Subtract from the current selection (Shift+Ctrl)\",active:()=>\"subtract\"==this.mode,handler:()=>{this.mode=\"subtract\",this.active=!0}},null,{icon:\"bk-tool-icon-clear-selection\",tooltip:\"Clear the current selection (Esc)\",handler:()=>{this.clear.emit()}}]}}s.SelectTool=v,v.__name__=\"SelectTool\",v.init_SelectTool()},\n function _(t,o,e,s,i){s();const n=t(237),_=t(136),a=t(20),l=t(242);class r extends n.GestureToolView{_match_aspect(t,o,e){const s=e.bbox.aspect,i=e.bbox.h_range.end,n=e.bbox.h_range.start,_=e.bbox.v_range.end,a=e.bbox.v_range.start;let l=Math.abs(t[0]-o[0]),r=Math.abs(t[1]-o[1]);const h=0==r?0:l/r,[c]=h>=s?[1,h/s]:[s/h,1];let m,p,d,b;return t[0]<=o[0]?(m=t[0],p=t[0]+l*c,p>i&&(p=i)):(p=t[0],m=t[0]-l*c,m<n&&(m=n)),l=Math.abs(p-m),t[1]<=o[1]?(b=t[1],d=t[1]+l/s,d>_&&(d=_)):(d=t[1],b=t[1]-l/s,b<a&&(b=a)),r=Math.abs(d-b),t[0]<=o[0]?p=t[0]+s*r:m=t[0]-s*r,[[m,p],[b,d]]}_compute_limits(t){const o=this.plot_view.frame,e=this.model.dimensions;let s,i,n=this._base_point;if(\"center\"==this.model.origin){const[o,e]=n,[s,i]=t;n=[o-(s-o),e-(i-e)]}return this.model.match_aspect&&\"both\"==e?[s,i]=this._match_aspect(n,t,o):[s,i]=this.model._get_dim_limits(n,t,o,e),[s,i]}_pan_start(t){this._base_point=[t.sx,t.sy]}_pan(t){const o=[t.sx,t.sy],[e,s]=this._compute_limits(o);this.model.overlay.update({left:e[0],right:e[1],top:s[0],bottom:s[1]})}_pan_end(t){const o=[t.sx,t.sy],[e,s]=this._compute_limits(o);this._update(e,s),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null}_update([t,o],[e,s]){if(Math.abs(o-t)<=5||Math.abs(s-e)<=5)return;const{x_scales:i,y_scales:n}=this.plot_view.frame,_=new Map;for(const[e,s]of i){const[i,n]=s.r_invert(t,o);_.set(e,{start:i,end:n})}const a=new Map;for(const[t,o]of n){const[i,n]=o.r_invert(e,s);a.set(t,{start:i,end:n})}const l={xrs:_,yrs:a};this.plot_view.state.push(\"box_zoom\",{range:l}),this.plot_view.update_range(l)}}e.BoxZoomToolView=r,r.__name__=\"BoxZoomToolView\";const h=()=>new _.BoxAnnotation({level:\"overlay\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class c extends n.GestureTool{constructor(t){super(t),this.tool_name=\"Box Zoom\",this.icon=l.tool_icon_box_zoom,this.event_type=\"pan\",this.default_order=20}static init_BoxZoomTool(){this.prototype.default_view=r,this.define((({Boolean:t,Ref:o})=>({dimensions:[a.Dimensions,\"both\"],overlay:[o(_.BoxAnnotation),h],match_aspect:[t,!1],origin:[a.BoxOrigin,\"corner\"]}))),this.register_alias(\"box_zoom\",(()=>new c({dimensions:\"both\"}))),this.register_alias(\"xbox_zoom\",(()=>new c({dimensions:\"width\"}))),this.register_alias(\"ybox_zoom\",(()=>new c({dimensions:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}e.BoxZoomTool=c,c.__name__=\"BoxZoomTool\",c.init_BoxZoomTool()},\n function _(s,e,t,o,i){o();const l=s(378),_=s(231),a=s(381),c=s(43),n=s(242);class h extends l.SelectToolView{constructor(){super(...arguments),this.sxs=[],this.sys=[]}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,(()=>this._active_change()))}_active_change(){this.model.active||this._clear_overlay()}_keyup(s){s.keyCode==c.Keys.Enter&&this._clear_overlay()}_pan_start(s){this.sxs=[],this.sys=[];const{sx:e,sy:t}=s;this._append_overlay(e,t)}_pan(s){const[e,t]=this.plot_view.frame.bbox.clip(s.sx,s.sy);this._append_overlay(e,t),this.model.select_every_mousemove&&this._do_select(this.sxs,this.sys,!1,this._select_mode(s))}_pan_end(s){const{sxs:e,sys:t}=this;this._clear_overlay(),this._do_select(e,t,!0,this._select_mode(s)),this.plot_view.state.push(\"lasso_select\",{selection:this.plot_view.get_selection()})}_append_overlay(s,e){const{sxs:t,sys:o}=this;t.push(s),o.push(e),this.model.overlay.update({xs:t,ys:o})}_clear_overlay(){this.sxs=[],this.sys=[],this.model.overlay.update({xs:this.sxs,ys:this.sys})}_do_select(s,e,t,o){const i={type:\"poly\",sx:s,sy:e};this._select(i,t,o)}}t.LassoSelectToolView=h,h.__name__=\"LassoSelectToolView\";class r extends l.SelectTool{constructor(s){super(s),this.tool_name=\"Lasso Select\",this.icon=n.tool_icon_lasso_select,this.event_type=\"pan\",this.default_order=12}static init_LassoSelectTool(){this.prototype.default_view=h,this.define((({Boolean:s,Ref:e})=>({select_every_mousemove:[s,!0],overlay:[e(_.PolyAnnotation),a.DEFAULT_POLY_OVERLAY]}))),this.register_alias(\"lasso_select\",(()=>new r))}}t.LassoSelectTool=r,r.__name__=\"LassoSelectTool\",r.init_LassoSelectTool()},\n function _(e,t,s,l,o){l();const i=e(378),a=e(231),_=e(43),c=e(9),n=e(242);class h extends i.SelectToolView{initialize(){super.initialize(),this.data={sx:[],sy:[]}}connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,(()=>this._active_change()))}_active_change(){this.model.active||this._clear_data()}_keyup(e){e.keyCode==_.Keys.Enter&&this._clear_data()}_doubletap(e){this._do_select(this.data.sx,this.data.sy,!0,this._select_mode(e)),this.plot_view.state.push(\"poly_select\",{selection:this.plot_view.get_selection()}),this._clear_data()}_clear_data(){this.data={sx:[],sy:[]},this.model.overlay.update({xs:[],ys:[]})}_tap(e){const{sx:t,sy:s}=e;this.plot_view.frame.bbox.contains(t,s)&&(this.data.sx.push(t),this.data.sy.push(s),this.model.overlay.update({xs:c.copy(this.data.sx),ys:c.copy(this.data.sy)}))}_do_select(e,t,s,l){const o={type:\"poly\",sx:e,sy:t};this._select(o,s,l)}}s.PolySelectToolView=h,h.__name__=\"PolySelectToolView\";s.DEFAULT_POLY_OVERLAY=()=>new a.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:2,line_dash:[4,4]});class y extends i.SelectTool{constructor(e){super(e),this.tool_name=\"Poly Select\",this.icon=n.tool_icon_polygon_select,this.event_type=\"tap\",this.default_order=11}static init_PolySelectTool(){this.prototype.default_view=h,this.define((({Ref:e})=>({overlay:[e(a.PolyAnnotation),s.DEFAULT_POLY_OVERLAY]}))),this.register_alias(\"poly_select\",(()=>new y))}}s.PolySelectTool=y,y.__name__=\"PolySelectTool\",y.init_PolySelectTool()},\n function _(e,t,i,s,n){s();const r=e(20),_=e(383),d=e(242);class o extends _.LineToolView{constructor(){super(...arguments),this._drawing=!1}_doubletap(e){if(!this.model.active)return;const t=this.model.renderers;for(const i of t){1==this._select_event(e,\"replace\",[i]).length&&(this._selected_renderer=i)}this._show_intersections(),this._update_line_cds()}_show_intersections(){if(!this.model.active)return;if(null==this._selected_renderer)return;if(!this.model.renderers.length)return this._set_intersection([],[]),this._selected_renderer=null,void(this._drawing=!1);const e=this._selected_renderer.data_source,t=this._selected_renderer.glyph,[i,s]=[t.x.field,t.y.field],n=e.get_array(i),r=e.get_array(s);this._set_intersection(n,r)}_tap(e){const t=this.model.intersection_renderer;if(null==this._map_drag(e.sx,e.sy,t))return;if(this._drawing&&this._selected_renderer){const i=this._select_mode(e);if(0==this._select_event(e,i,[t]).length)return}const i=this._select_mode(e);this._select_event(e,i,[t]),this._select_event(e,i,this.model.renderers)}_update_line_cds(){if(null==this._selected_renderer)return;const e=this.model.intersection_renderer.glyph,t=this.model.intersection_renderer.data_source,[i,s]=[e.x.field,e.y.field];if(i&&s){const e=t.data[i],n=t.data[s];this._selected_renderer.data_source.data[i]=e,this._selected_renderer.data_source.data[s]=n}this._emit_cds_changes(this._selected_renderer.data_source,!0,!0,!1)}_pan_start(e){this._select_event(e,\"append\",[this.model.intersection_renderer]),this._basepoint=[e.sx,e.sy]}_pan(e){null!=this._basepoint&&(this._drag_points(e,[this.model.intersection_renderer],this.model.dimensions),this._selected_renderer&&this._selected_renderer.data_source.change.emit())}_pan_end(e){null!=this._basepoint&&(this._drag_points(e,[this.model.intersection_renderer]),this._emit_cds_changes(this.model.intersection_renderer.data_source,!1,!0,!0),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source),this._basepoint=null)}activate(){this._drawing=!0}deactivate(){this._selected_renderer&&(this._drawing&&(this._drawing=!1),this._hide_intersections())}}i.LineEditToolView=o,o.__name__=\"LineEditToolView\";class l extends _.LineTool{constructor(e){super(e),this.tool_name=\"Line Edit Tool\",this.icon=d.tool_icon_line_edit,this.event_type=[\"tap\",\"pan\",\"move\"],this.default_order=4}static init_LineEditTool(){this.prototype.default_view=o,this.define((()=>({dimensions:[r.Dimensions,\"both\"]})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}i.LineEditTool=l,l.__name__=\"LineEditTool\",l.init_LineEditTool()},\n function _(e,i,t,n,o){n();const s=e(8),_=e(370);class r extends _.EditToolView{_set_intersection(e,i){const t=this.model.intersection_renderer.glyph,n=this.model.intersection_renderer.data_source,[o,_]=[t.x.field,t.y.field];o&&(s.isArray(e)?n.data[o]=e:t.x={value:e}),_&&(s.isArray(i)?n.data[_]=i:t.y={value:i}),this._emit_cds_changes(n,!0,!0,!1)}_hide_intersections(){this._set_intersection([],[])}}t.LineToolView=r,r.__name__=\"LineToolView\";class c extends _.EditTool{constructor(e){super(e)}static init_LineTool(){this.define((({AnyRef:e})=>({intersection_renderer:[e()]})))}}t.LineTool=c,c.__name__=\"LineTool\",c.init_LineTool()},\n function _(t,s,i,n,e){n();const o=t(1),a=t(237),_=t(20),h=o.__importStar(t(242));function l(t,s,i){const n=new Map;for(const[e,o]of t){const[t,a]=o.r_invert(s,i);n.set(e,{start:t,end:a})}return n}i.update_ranges=l;class r extends a.GestureToolView{_pan_start(t){var s;this.last_dx=0,this.last_dy=0;const{sx:i,sy:n}=t,e=this.plot_view.frame.bbox;if(!e.contains(i,n)){const t=e.h_range,s=e.v_range;(i<t.start||i>t.end)&&(this.v_axis_only=!0),(n<s.start||n>s.end)&&(this.h_axis_only=!0)}null===(s=this.model.document)||void 0===s||s.interactive_start(this.plot_model)}_pan(t){var s;this._update(t.deltaX,t.deltaY),null===(s=this.model.document)||void 0===s||s.interactive_start(this.plot_model)}_pan_end(t){this.h_axis_only=!1,this.v_axis_only=!1,null!=this.pan_info&&this.plot_view.state.push(\"pan\",{range:this.pan_info})}_update(t,s){const i=this.plot_view.frame,n=t-this.last_dx,e=s-this.last_dy,o=i.bbox.h_range,a=o.start-n,_=o.end-n,h=i.bbox.v_range,r=h.start-e,d=h.end-e,p=this.model.dimensions;let c,m,u,x,v,y;\"width\"!=p&&\"both\"!=p||this.v_axis_only?(c=o.start,m=o.end,u=0):(c=a,m=_,u=-n),\"height\"!=p&&\"both\"!=p||this.h_axis_only?(x=h.start,v=h.end,y=0):(x=r,v=d,y=-e),this.last_dx=t,this.last_dy=s;const{x_scales:g,y_scales:w}=i,f=l(g,c,m),b=l(w,x,v);this.pan_info={xrs:f,yrs:b,sdx:u,sdy:y},this.plot_view.update_range(this.pan_info,{panning:!0})}}i.PanToolView=r,r.__name__=\"PanToolView\";class d extends a.GestureTool{constructor(t){super(t),this.tool_name=\"Pan\",this.event_type=\"pan\",this.default_order=10}static init_PanTool(){this.prototype.default_view=r,this.define((()=>({dimensions:[_.Dimensions,\"both\",{on_update(t,s){switch(t){case\"both\":s.icon=h.tool_icon_pan;break;case\"width\":s.icon=h.tool_icon_xpan;break;case\"height\":s.icon=h.tool_icon_ypan}}}]}))),this.register_alias(\"pan\",(()=>new d({dimensions:\"both\"}))),this.register_alias(\"xpan\",(()=>new d({dimensions:\"width\"}))),this.register_alias(\"ypan\",(()=>new d({dimensions:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}i.PanTool=d,d.__name__=\"PanTool\",d.init_PanTool()},\n function _(t,e,i,s,n){s();const l=t(136),a=t(156),r=t(19),o=t(237),_=t(242);function h(t){switch(t){case 1:return 2;case 2:return 1;case 4:return 5;case 5:return 4;default:return t}}function d(t,e,i,s){if(null==e)return!1;const n=i.compute(e);return Math.abs(t-n)<s}function u(t,e,i,s,n){let l=!0;if(null!=n.left&&null!=n.right){const e=i.invert(t);(e<n.left||e>n.right)&&(l=!1)}if(null!=n.bottom&&null!=n.top){const t=s.invert(e);(t<n.bottom||t>n.top)&&(l=!1)}return l}function c(t,e,i){let s=0;return t>=i.start&&t<=i.end&&(s+=1),e>=i.start&&e<=i.end&&(s+=1),s}function g(t,e,i,s){const n=e.compute(t),l=e.invert(n+i);return l>=s.start&&l<=s.end?l:t}function y(t,e,i){return t>e.start?(e.end=t,i):(e.end=e.start,e.start=t,h(i))}function f(t,e,i){return t<e.end?(e.start=t,i):(e.start=e.end,e.end=t,h(i))}function m(t,e,i,s){const[n,l]=e.r_compute(t.start,t.end),[a,r]=e.r_invert(n+i,l+i),o=c(t.start,t.end,s);c(a,r,s)>=o&&(t.start=a,t.end=r)}i.flip_side=h,i.is_near=d,i.is_inside=u,i.sides_inside=c,i.compute_value=g,i.update_range_end_side=y,i.update_range_start_side=f,i.update_range=m;class v extends o.GestureToolView{initialize(){super.initialize(),this.side=0,this.model.update_overlay_from_ranges()}connect_signals(){super.connect_signals(),null!=this.model.x_range&&this.connect(this.model.x_range.change,(()=>this.model.update_overlay_from_ranges())),null!=this.model.y_range&&this.connect(this.model.y_range.change,(()=>this.model.update_overlay_from_ranges()))}_pan_start(t){this.last_dx=0,this.last_dy=0;const e=this.model.x_range,i=this.model.y_range,{frame:s}=this.plot_view,n=s.x_scale,a=s.y_scale,r=this.model.overlay,{left:o,right:_,top:h,bottom:c}=r,g=this.model.overlay.line_width+l.EDGE_TOLERANCE;null!=e&&this.model.x_interaction&&(d(t.sx,o,n,g)?this.side=1:d(t.sx,_,n,g)?this.side=2:u(t.sx,t.sy,n,a,r)&&(this.side=3)),null!=i&&this.model.y_interaction&&(0==this.side&&d(t.sy,c,a,g)&&(this.side=4),0==this.side&&d(t.sy,h,a,g)?this.side=5:u(t.sx,t.sy,n,a,this.model.overlay)&&(3==this.side?this.side=7:this.side=6))}_pan(t){const e=this.plot_view.frame,i=t.deltaX-this.last_dx,s=t.deltaY-this.last_dy,n=this.model.x_range,l=this.model.y_range,a=e.x_scale,r=e.y_scale;if(null!=n)if(3==this.side||7==this.side)m(n,a,i,e.x_range);else if(1==this.side){const t=g(n.start,a,i,e.x_range);this.side=f(t,n,this.side)}else if(2==this.side){const t=g(n.end,a,i,e.x_range);this.side=y(t,n,this.side)}if(null!=l)if(6==this.side||7==this.side)m(l,r,s,e.y_range);else if(4==this.side){const t=g(l.start,r,s,e.y_range);this.side=f(t,l,this.side)}else if(5==this.side){const t=g(l.end,r,s,e.y_range);this.side=y(t,l,this.side)}this.last_dx=t.deltaX,this.last_dy=t.deltaY}_pan_end(t){this.side=0}}i.RangeToolView=v,v.__name__=\"RangeToolView\";const p=()=>new l.BoxAnnotation({level:\"overlay\",fill_color:\"lightgrey\",fill_alpha:.5,line_color:\"black\",line_alpha:1,line_width:.5,line_dash:[2,2]});class x extends o.GestureTool{constructor(t){super(t),this.tool_name=\"Range Tool\",this.icon=_.tool_icon_range,this.event_type=\"pan\",this.default_order=1}static init_RangeTool(){this.prototype.default_view=v,this.define((({Boolean:t,Ref:e,Nullable:i})=>({x_range:[i(e(a.Range1d)),null],x_interaction:[t,!0],y_range:[i(e(a.Range1d)),null],y_interaction:[t,!0],overlay:[e(l.BoxAnnotation),p]})))}initialize(){super.initialize(),this.overlay.in_cursor=\"grab\",this.overlay.ew_cursor=null!=this.x_range&&this.x_interaction?\"ew-resize\":null,this.overlay.ns_cursor=null!=this.y_range&&this.y_interaction?\"ns-resize\":null}update_overlay_from_ranges(){null==this.x_range&&null==this.y_range&&(this.overlay.left=null,this.overlay.right=null,this.overlay.bottom=null,this.overlay.top=null,r.logger.warn(\"RangeTool not configured with any Ranges.\")),null==this.x_range?(this.overlay.left=null,this.overlay.right=null):(this.overlay.left=this.x_range.start,this.overlay.right=this.x_range.end),null==this.y_range?(this.overlay.bottom=null,this.overlay.top=null):(this.overlay.bottom=this.y_range.start,this.overlay.top=this.y_range.end)}}i.RangeTool=x,x.__name__=\"RangeTool\",x.init_RangeTool()},\n function _(e,t,s,o,i){o();const l=e(378),a=e(20),n=e(242);class c extends l.SelectToolView{_tap(e){\"tap\"==this.model.gesture&&this._handle_tap(e)}_doubletap(e){\"doubletap\"==this.model.gesture&&this._handle_tap(e)}_handle_tap(e){const{sx:t,sy:s}=e,o={type:\"point\",sx:t,sy:s};this._select(o,!0,this._select_mode(e))}_select(e,t,s){const{callback:o}=this.model;if(\"select\"==this.model.behavior){const i=this._computed_renderers_by_data_source();for(const[,l]of i){const i=l[0].get_selection_manager(),a=l.map((e=>this.plot_view.renderer_view(e))).filter((e=>null!=e));if(i.select(a,e,t,s)&&null!=o){const t=a[0].coordinates.x_scale.invert(e.sx),s=a[0].coordinates.y_scale.invert(e.sy),l={geometries:Object.assign(Object.assign({},e),{x:t,y:s}),source:i.source};o.execute(this.model,l)}}this._emit_selection_event(e),this.plot_view.state.push(\"tap\",{selection:this.plot_view.get_selection()})}else for(const t of this.computed_renderers){const s=this.plot_view.renderer_view(t);if(null==s)continue;const i=t.get_selection_manager();if(i.inspect(s,e)&&null!=o){const t=s.coordinates.x_scale.invert(e.sx),l=s.coordinates.y_scale.invert(e.sy),a={geometries:Object.assign(Object.assign({},e),{x:t,y:l}),source:i.source};o.execute(this.model,a)}}}}s.TapToolView=c,c.__name__=\"TapToolView\";class _ extends l.SelectTool{constructor(e){super(e),this.tool_name=\"Tap\",this.icon=n.tool_icon_tap_select,this.event_type=\"tap\",this.default_order=10}static init_TapTool(){this.prototype.default_view=c,this.define((({Any:e,Enum:t,Nullable:s})=>({behavior:[a.TapBehavior,\"select\"],gesture:[t(\"tap\",\"doubletap\"),\"tap\"],callback:[s(e)]}))),this.register_alias(\"click\",(()=>new _({behavior:\"inspect\"}))),this.register_alias(\"tap\",(()=>new _)),this.register_alias(\"doubletap\",(()=>new _({gesture:\"doubletap\"})))}}s.TapTool=_,_.__name__=\"TapTool\",_.init_TapTool()},\n function _(e,t,s,i,n){i();const o=e(237),a=e(20),l=e(242),_=e(384);class h extends o.GestureToolView{_scroll(e){let t=this.model.speed*e.delta;t>.9?t=.9:t<-.9&&(t=-.9),this._update_ranges(t)}_update_ranges(e){var t;const{frame:s}=this.plot_view,i=s.bbox.h_range,n=s.bbox.v_range,[o,a]=[i.start,i.end],[l,h]=[n.start,n.end];let r,d,c,p;switch(this.model.dimension){case\"height\":{const t=Math.abs(h-l);r=o,d=a,c=l-t*e,p=h-t*e;break}case\"width\":{const t=Math.abs(a-o);r=o-t*e,d=a-t*e,c=l,p=h;break}}const{x_scales:m,y_scales:u}=s,w={xrs:_.update_ranges(m,r,d),yrs:_.update_ranges(u,c,p),factor:e};this.plot_view.state.push(\"wheel_pan\",{range:w}),this.plot_view.update_range(w,{scrolling:!0}),null===(t=this.model.document)||void 0===t||t.interactive_start(this.plot_model)}}s.WheelPanToolView=h,h.__name__=\"WheelPanToolView\";class r extends o.GestureTool{constructor(e){super(e),this.tool_name=\"Wheel Pan\",this.icon=l.tool_icon_wheel_pan,this.event_type=\"scroll\",this.default_order=12}static init_WheelPanTool(){this.prototype.default_view=h,this.define((()=>({dimension:[a.Dimension,\"width\"]}))),this.internal((({Number:e})=>({speed:[e,.001]}))),this.register_alias(\"xwheel_pan\",(()=>new r({dimension:\"width\"}))),this.register_alias(\"ywheel_pan\",(()=>new r({dimension:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimension)}}s.WheelPanTool=r,r.__name__=\"WheelPanTool\",r.init_WheelPanTool()},\n function _(e,o,t,s,i){s();const l=e(237),n=e(368),h=e(20),_=e(27),a=e(242);class m extends l.GestureToolView{_pinch(e){const{sx:o,sy:t,scale:s,ctrlKey:i,shiftKey:l}=e;let n;n=s>=1?20*(s-1):-20/s,this._scroll({type:\"wheel\",sx:o,sy:t,delta:n,ctrlKey:i,shiftKey:l})}_scroll(e){var o;const{frame:t}=this.plot_view,s=t.bbox.h_range,i=t.bbox.v_range,{sx:l,sy:h}=e,_=this.model.dimensions,a=(\"width\"==_||\"both\"==_)&&s.start<l&&l<s.end,m=(\"height\"==_||\"both\"==_)&&i.start<h&&h<i.end;if(!(a&&m||this.model.zoom_on_axis))return;const r=this.model.speed*e.delta,d=n.scale_range(t,r,a,m,{x:l,y:h});this.plot_view.state.push(\"wheel_zoom\",{range:d});const{maintain_focus:c}=this.model;this.plot_view.update_range(d,{scrolling:!0,maintain_focus:c}),null===(o=this.model.document)||void 0===o||o.interactive_start(this.plot_model)}}t.WheelZoomToolView=m,m.__name__=\"WheelZoomToolView\";class r extends l.GestureTool{constructor(e){super(e),this.tool_name=\"Wheel Zoom\",this.icon=a.tool_icon_wheel_zoom,this.event_type=_.is_mobile?\"pinch\":\"scroll\",this.default_order=10}static init_WheelZoomTool(){this.prototype.default_view=m,this.define((({Boolean:e,Number:o})=>({dimensions:[h.Dimensions,\"both\"],maintain_focus:[e,!0],zoom_on_axis:[e,!0],speed:[o,1/600]}))),this.register_alias(\"wheel_zoom\",(()=>new r({dimensions:\"both\"}))),this.register_alias(\"xwheel_zoom\",(()=>new r({dimensions:\"width\"}))),this.register_alias(\"ywheel_zoom\",(()=>new r({dimensions:\"height\"})))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}}t.WheelZoomTool=r,r.__name__=\"WheelZoomTool\",r.init_WheelZoomTool()},\n function _(i,s,t,o,e){o();const n=i(247),l=i(233),h=i(20),a=i(13),r=i(242);class _ extends n.InspectToolView{_move(i){if(!this.model.active)return;const{sx:s,sy:t}=i;this.plot_view.frame.bbox.contains(s,t)?this._update_spans(s,t):this._update_spans(null,null)}_move_exit(i){this._update_spans(null,null)}_update_spans(i,s){const t=this.model.dimensions;\"width\"!=t&&\"both\"!=t||(this.model.spans.width.location=s),\"height\"!=t&&\"both\"!=t||(this.model.spans.height.location=i)}}t.CrosshairToolView=_,_.__name__=\"CrosshairToolView\";class c extends n.InspectTool{constructor(i){super(i),this.tool_name=\"Crosshair\",this.icon=r.tool_icon_crosshair}static init_CrosshairTool(){function i(i,s){return new l.Span({for_hover:!0,dimension:s,location_units:\"screen\",level:\"overlay\",line_color:i.line_color,line_width:i.line_width,line_alpha:i.line_alpha})}this.prototype.default_view=_,this.define((({Alpha:i,Number:s,Color:t})=>({dimensions:[h.Dimensions,\"both\"],line_color:[t,\"black\"],line_width:[s,1],line_alpha:[i,1]}))),this.internal((({Struct:s,Ref:t})=>({spans:[s({width:t(l.Span),height:t(l.Span)}),s=>({width:i(s,\"width\"),height:i(s,\"height\")})]}))),this.register_alias(\"crosshair\",(()=>new c))}get tooltip(){return this._get_dim_tooltip(this.dimensions)}get synthetic_renderers(){return a.values(this.spans)}}t.CrosshairTool=c,c.__name__=\"CrosshairTool\",c.init_CrosshairTool()},\n function _(t,e,s,o,r){o();const n=t(53),i=t(13),a=t(34);class u extends n.Model{constructor(t){super(t)}static init_CustomJSHover(){this.define((({Unknown:t,String:e,Dict:s})=>({args:[s(t),{}],code:[e,\"\"]})))}get values(){return i.values(this.args)}_make_code(t,e,s,o){return new Function(...i.keys(this.args),t,e,s,a.use_strict(o))}format(t,e,s){return this._make_code(\"value\",\"format\",\"special_vars\",this.code)(...this.values,t,e,s)}}s.CustomJSHover=u,u.__name__=\"CustomJSHover\",u.init_CustomJSHover()},\n function _(e,t,n,s,o){s();const i=e(1),r=e(247),l=e(390),a=e(254),c=e(61),_=e(123),d=e(62),p=e(63),h=e(127),u=i.__importStar(e(107)),m=e(182),y=e(43),f=e(22),x=e(13),v=e(245),w=e(8),g=e(122),b=e(20),k=e(242),C=e(15),S=e(161),T=i.__importStar(e(255));function $(e,t,n,s,o,i){const r={x:o[e],y:i[e]},l={x:o[e+1],y:i[e+1]};let a,c;if(\"span\"==t.type)\"h\"==t.direction?(a=Math.abs(r.x-n),c=Math.abs(l.x-n)):(a=Math.abs(r.y-s),c=Math.abs(l.y-s));else{const e={x:n,y:s};a=u.dist_2_pts(r,e),c=u.dist_2_pts(l,e)}return a<c?[[r.x,r.y],e]:[[l.x,l.y],e+1]}function R(e,t,n){return[[e[n],t[n]],n]}n._nearest_line_hit=$,n._line_hit=R;class H extends r.InspectToolView{initialize(){super.initialize(),this._ttmodels=new Map,this._ttviews=new Map}async lazy_initialize(){await super.lazy_initialize(),await this._update_ttmodels()}remove(){g.remove_views(this._ttviews),super.remove()}connect_signals(){super.connect_signals();const e=this.plot_model.properties.renderers,{renderers:t,tooltips:n}=this.model.properties;this.on_change(n,(()=>delete this._template_el)),this.on_change([e,t,n],(async()=>await this._update_ttmodels()))}async _update_ttmodels(){const{_ttmodels:e,computed_renderers:t}=this;e.clear();const{tooltips:n}=this.model;if(null!=n)for(const t of this.computed_renderers){const s=new a.Tooltip({custom:w.isString(n)||w.isFunction(n),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t instanceof c.GlyphRenderer?e.set(t,s):t instanceof _.GraphRenderer&&(e.set(t.node_renderer,s),e.set(t.edge_renderer,s))}const s=await g.build_views(this._ttviews,[...e.values()],{parent:this.plot_view});for(const e of s)e.render();const o=[...function*(){for(const e of t)e instanceof c.GlyphRenderer?yield e:e instanceof _.GraphRenderer&&(yield e.node_renderer,yield e.edge_renderer)}()],i=this._slots.get(this._update);if(null!=i){const e=new Set(o.map((e=>e.data_source)));C.Signal.disconnect_receiver(this,i,e)}for(const e of o)this.connect(e.data_source.inspect,this._update)}get computed_renderers(){const{renderers:e,names:t}=this.model,n=this.plot_model.data_renderers;return S.compute_renderers(e,n,t)}get ttmodels(){return this._ttmodels}_clear(){this._inspect(1/0,1/0);for(const[,e]of this.ttmodels)e.clear()}_move(e){if(!this.model.active)return;const{sx:t,sy:n}=e;this.plot_view.frame.bbox.contains(t,n)?this._inspect(t,n):this._clear()}_move_exit(){this._clear()}_inspect(e,t){let n;if(\"mouse\"==this.model.mode)n={type:\"point\",sx:e,sy:t};else{n={type:\"span\",direction:\"vline\"==this.model.mode?\"h\":\"v\",sx:e,sy:t}}for(const e of this.computed_renderers){const t=e.get_selection_manager(),s=this.plot_view.renderer_view(e);null!=s&&t.inspect(s,n)}this._emit_callback(n)}_update([e,{geometry:t}]){var n,s;if(!this.model.active)return;if(\"point\"!=t.type&&\"span\"!=t.type)return;if(!(e instanceof c.GlyphRenderer))return;if(\"ignore\"==this.model.muted_policy&&e.muted)return;const o=this.ttmodels.get(e);if(null==o)return;const i=e.get_selection_manager();let r=i.inspectors.get(e);if(r=e.view.convert_selection_to_subset(r),r.is_empty())return void o.clear();const l=i.source,a=this.plot_view.renderer_view(e);if(null==a)return;const{sx:_,sy:d}=t,u=a.coordinates.x_scale,m=a.coordinates.y_scale,f=u.invert(_),v=m.invert(d),{glyph:w}=a,g=[];if(w instanceof p.LineView)for(const n of r.line_indices){let s,o,i=w._x[n+1],a=w._y[n+1],c=n;switch(this.model.line_policy){case\"interp\":[i,a]=w.get_interpolation_hit(n,t),s=u.compute(i),o=m.compute(a);break;case\"prev\":[[s,o],c]=R(w.sx,w.sy,n);break;case\"next\":[[s,o],c]=R(w.sx,w.sy,n+1);break;case\"nearest\":[[s,o],c]=$(n,t,_,d,w.sx,w.sy),i=w._x[c],a=w._y[c];break;default:[s,o]=[_,d]}const p={index:c,x:f,y:v,sx:_,sy:d,data_x:i,data_y:a,rx:s,ry:o,indices:r.line_indices,name:e.name};g.push([s,o,this._render_tooltips(l,c,p)])}for(const t of r.image_indices){const n={index:t.index,x:f,y:v,sx:_,sy:d,name:e.name},s=this._render_tooltips(l,t,n);g.push([_,d,s])}for(const o of r.indices)if(w instanceof h.MultiLineView&&!x.isEmpty(r.multiline_indices))for(const n of r.multiline_indices[o.toString()]){let s,i,a,p=w._xs.get(o)[n],h=w._ys.get(o)[n],y=n;switch(this.model.line_policy){case\"interp\":[p,h]=w.get_interpolation_hit(o,n,t),s=u.compute(p),i=m.compute(h);break;case\"prev\":[[s,i],y]=R(w.sxs.get(o),w.sys.get(o),n);break;case\"next\":[[s,i],y]=R(w.sxs.get(o),w.sys.get(o),n+1);break;case\"nearest\":[[s,i],y]=$(n,t,_,d,w.sxs.get(o),w.sys.get(o)),p=w._xs.get(o)[y],h=w._ys.get(o)[y];break;default:throw new Error(\"shouldn't have happened\")}a=e instanceof c.GlyphRenderer?e.view.convert_indices_from_subset([o])[0]:o;const x={index:a,x:f,y:v,sx:_,sy:d,data_x:p,data_y:h,segment_index:y,indices:r.multiline_indices,name:e.name};g.push([s,i,this._render_tooltips(l,a,x)])}else{const t=null===(n=w._x)||void 0===n?void 0:n[o],i=null===(s=w._y)||void 0===s?void 0:s[o];let a,p,h;if(\"snap_to_data\"==this.model.point_policy){let e=w.get_anchor_point(this.model.anchor,o,[_,d]);if(null==e&&(e=w.get_anchor_point(\"center\",o,[_,d]),null==e))continue;a=e.x,p=e.y}else[a,p]=[_,d];h=e instanceof c.GlyphRenderer?e.view.convert_indices_from_subset([o])[0]:o;const u={index:h,x:f,y:v,sx:_,sy:d,data_x:t,data_y:i,indices:r.indices,name:e.name};g.push([a,p,this._render_tooltips(l,h,u)])}if(0==g.length)o.clear();else{const{content:e}=o;y.empty(o.content);for(const[,,t]of g)null!=t&&e.appendChild(t);const[t,n]=g[g.length-1];o.setv({position:[t,n]},{check_eq:!1})}}_emit_callback(e){const{callback:t}=this.model;if(null!=t)for(const n of this.computed_renderers){if(!(n instanceof c.GlyphRenderer))continue;const s=this.plot_view.renderer_view(n);if(null==s)continue;const{x_scale:o,y_scale:i}=s.coordinates,r=o.invert(e.sx),l=i.invert(e.sy),a=n.data_source.inspected;t.execute(this.model,{geometry:Object.assign({x:r,y:l},e),renderer:n,index:a})}}_create_template(e){const t=y.div({style:{display:\"table\",borderSpacing:\"2px\"}});for(const[n]of e){const e=y.div({style:{display:\"table-row\"}});t.appendChild(e);const s=y.div({style:{display:\"table-cell\"},class:T.tooltip_row_label},0!=n.length?`${n}: `:\"\");e.appendChild(s);const o=y.span();o.dataset.value=\"\";const i=y.span({class:T.tooltip_color_block},\" \");i.dataset.swatch=\"\",y.undisplay(i);const r=y.div({style:{display:\"table-cell\"},class:T.tooltip_row_value},o,i);e.appendChild(r)}return t}_render_template(e,t,n,s,o){const i=e.cloneNode(!0),r=i.querySelectorAll(\"[data-value]\"),l=i.querySelectorAll(\"[data-swatch]\"),a=/\\$color(\\[.*\\])?:(\\w*)/,c=/\\$swatch:(\\w*)/;for(const[[,e],i]of v.enumerate(t)){const t=e.match(c),_=e.match(a);if(null!=t||null!=_){if(null!=t){const[,e]=t,o=n.get_column(e);if(null==o)r[i].textContent=`${e} unknown`;else{const e=w.isNumber(s)?o[s]:null;null!=e&&(l[i].style.backgroundColor=f.color2css(e),y.display(l[i]))}}if(null!=_){const[,e=\"\",t]=_,o=n.get_column(t);if(null==o){r[i].textContent=`${t} unknown`;continue}const a=e.indexOf(\"hex\")>=0,c=e.indexOf(\"swatch\")>=0,d=w.isNumber(s)?o[s]:null;if(null==d){r[i].textContent=\"(null)\";continue}r[i].textContent=a?f.color2hex(d):f.color2css(d),c&&(l[i].style.backgroundColor=f.color2css(d),y.display(l[i]))}}else{const t=m.replace_placeholders(e.replace(\"$~\",\"$data_\"),n,s,this.model.formatters,o);if(w.isString(t))r[i].textContent=t;else for(const e of t)r[i].appendChild(e)}}return i}_render_tooltips(e,t,n){var s;const{tooltips:o}=this.model;if(w.isString(o)){const s=m.replace_placeholders({html:o},e,t,this.model.formatters,n);return y.div({},s)}if(w.isFunction(o))return o(e,n);if(null!=o){const i=null!==(s=this._template_el)&&void 0!==s?s:this._template_el=this._create_template(o);return this._render_template(i,o,e,t,n)}return null}}n.HoverToolView=H,H.__name__=\"HoverToolView\";class M extends r.InspectTool{constructor(e){super(e),this.tool_name=\"Hover\",this.icon=k.tool_icon_hover}static init_HoverTool(){this.prototype.default_view=H,this.define((({Any:e,Boolean:t,String:n,Array:s,Tuple:o,Dict:i,Or:r,Ref:a,Function:c,Auto:_,Nullable:p})=>({tooltips:[p(r(n,s(o(n,n)),c())),[[\"index\",\"$index\"],[\"data (x, y)\",\"($x, $y)\"],[\"screen (x, y)\",\"($sx, $sy)\"]]],formatters:[i(r(a(l.CustomJSHover),m.FormatterType)),{}],renderers:[r(s(a(d.DataRenderer)),_),\"auto\"],names:[s(n),[]],mode:[b.HoverMode,\"mouse\"],muted_policy:[b.MutedPolicy,\"show\"],point_policy:[b.PointPolicy,\"snap_to_data\"],line_policy:[b.LinePolicy,\"nearest\"],show_arrow:[t,!0],anchor:[b.Anchor,\"center\"],attachment:[b.TooltipAttachment,\"horizontal\"],callback:[p(e)]}))),this.register_alias(\"hover\",(()=>new M))}}n.HoverTool=M,M.__name__=\"HoverTool\",M.init_HoverTool()},\n function _(t,o,e,n,i){n();const s=t(15),l=t(53),c=t(238),r=t(247),a=t(245);class u extends l.Model{constructor(t){super(t)}static init_ToolProxy(){this.define((({Boolean:t,Array:o,Ref:e})=>({tools:[o(e(c.ButtonTool)),[]],active:[t,!1],disabled:[t,!1]})))}get button_view(){return this.tools[0].button_view}get event_type(){return this.tools[0].event_type}get tooltip(){return this.tools[0].tooltip}get tool_name(){return this.tools[0].tool_name}get icon(){return this.tools[0].computed_icon}get computed_icon(){return this.icon}get toggleable(){const t=this.tools[0];return t instanceof r.InspectTool&&t.toggleable}initialize(){super.initialize(),this.do=new s.Signal0(this,\"do\")}connect_signals(){super.connect_signals(),this.connect(this.do,(()=>this.doit())),this.connect(this.properties.active.change,(()=>this.set_active()));for(const t of this.tools)this.connect(t.properties.active.change,(()=>{this.active=t.active}))}doit(){for(const t of this.tools)t.do.emit()}set_active(){for(const t of this.tools)t.active=this.active}get menu(){const{menu:t}=this.tools[0];if(null==t)return null;const o=[];for(const[e,n]of a.enumerate(t))if(null==e)o.push(null);else{const t=()=>{var t,o;for(const e of this.tools)null===(o=null===(t=e.menu)||void 0===t?void 0:t[n])||void 0===o||o.handler()};o.push(Object.assign(Object.assign({},e),{handler:t}))}return o}}e.ToolProxy=u,u.__name__=\"ToolProxy\",u.init_ToolProxy()},\n function _(o,t,s,i,e){i();const n=o(20),r=o(9),l=o(13),c=o(248),h=o(235),a=o(392),_=o(319),p=o(221);class f extends c.ToolbarBase{constructor(o){super(o)}static init_ProxyToolbar(){this.define((({Array:o,Ref:t})=>({toolbars:[o(t(h.Toolbar)),[]]})))}initialize(){super.initialize(),this._merge_tools()}_merge_tools(){this._proxied_tools=[];const o={},t={},s={},i=[],e=[];for(const o of this.help)r.includes(e,o.redirect)||(i.push(o),e.push(o.redirect));this._proxied_tools.push(...i),this.help=i;for(const[o,t]of l.entries(this.gestures)){o in s||(s[o]={});for(const i of t.tools)i.type in s[o]||(s[o][i.type]=[]),s[o][i.type].push(i)}for(const t of this.inspectors)t.type in o||(o[t.type]=[]),o[t.type].push(t);for(const o of this.actions)o.type in t||(t[o.type]=[]),t[o.type].push(o);const n=(o,t=!1)=>{const s=new a.ToolProxy({tools:o,active:t});return this._proxied_tools.push(s),s};for(const o of l.keys(s)){const t=this.gestures[o];t.tools=[];for(const i of l.keys(s[o])){const e=s[o][i];if(e.length>0)if(\"multi\"==o)for(const o of e){const s=n([o]);t.tools.push(s),this.connect(s.properties.active.change,(()=>this._active_change(s)))}else{const o=n(e);t.tools.push(o),this.connect(o.properties.active.change,(()=>this._active_change(o)))}}}this.actions=[];for(const[o,s]of l.entries(t))if(\"CustomAction\"==o)for(const o of s)this.actions.push(n([o]));else s.length>0&&this.actions.push(n(s));this.inspectors=[];for(const t of l.values(o))t.length>0&&this.inspectors.push(n(t,!0));for(const[o,t]of l.entries(this.gestures))0!=t.tools.length&&(t.tools=r.sort_by(t.tools,(o=>o.default_order)),\"pinch\"!=o&&\"scroll\"!=o&&\"multi\"!=o&&(t.tools[0].active=!0))}}s.ProxyToolbar=f,f.__name__=\"ProxyToolbar\",f.init_ProxyToolbar();class u extends _.LayoutDOMView{initialize(){this.model.toolbar.toolbar_location=this.model.toolbar_location,super.initialize()}get child_models(){return[this.model.toolbar]}_update_layout(){this.layout=new p.ContentBox(this.child_views[0].el);const{toolbar:o}=this.model;o.horizontal?this.layout.set_sizing({width_policy:\"fit\",min_width:100,height_policy:\"fixed\"}):this.layout.set_sizing({width_policy:\"fixed\",height_policy:\"fit\",min_height:100})}}s.ToolbarBoxView=u,u.__name__=\"ToolbarBoxView\";class y extends _.LayoutDOM{constructor(o){super(o)}static init_ToolbarBox(){this.prototype.default_view=u,this.define((({Ref:o})=>({toolbar:[o(c.ToolbarBase)],toolbar_location:[n.Location,\"right\"]})))}}s.ToolbarBox=y,y.__name__=\"ToolbarBox\",y.init_ToolbarBox()},\n function _(e,n,r,t,o){t();const s=e(1),u=e(53),c=s.__importStar(e(21)),a=e(8),l=e(13);r.resolve_defs=function(e,n){var r,t,o,s;function i(e){return null!=e.module?`${e.module}.${e.name}`:e.name}function f(e){if(a.isString(e))switch(e){case\"Any\":return c.Any;case\"Unknown\":return c.Unknown;case\"Boolean\":return c.Boolean;case\"Number\":return c.Number;case\"Int\":return c.Int;case\"String\":return c.String;case\"Null\":return c.Null}else switch(e[0]){case\"Nullable\":{const[,n]=e;return c.Nullable(f(n))}case\"Or\":{const[,...n]=e;return c.Or(...n.map(f))}case\"Tuple\":{const[,n,...r]=e;return c.Tuple(f(n),...r.map(f))}case\"Array\":{const[,n]=e;return c.Array(f(n))}case\"Struct\":{const[,...n]=e,r=n.map((([e,n])=>[e,f(n)]));return c.Struct(l.to_object(r))}case\"Dict\":{const[,n]=e;return c.Dict(f(n))}case\"Map\":{const[,n,r]=e;return c.Map(f(n),f(r))}case\"Enum\":{const[,...n]=e;return c.Enum(...n)}case\"Ref\":{const[,r]=e,t=n.get(i(r));if(null!=t)return c.Ref(t);throw new Error(`${i(r)} wasn't defined before referencing it`)}case\"AnyRef\":return c.AnyRef()}}for(const c of e){const e=(()=>{if(null==c.extends)return u.Model;{const e=n.get(i(c.extends));if(null!=e)return e;throw new Error(`base model ${i(c.extends)} of ${i(c)} is not defined`)}})(),a=((s=class extends e{}).__name__=c.name,s.__module__=c.module,s);for(const e of null!==(r=c.properties)&&void 0!==r?r:[]){const n=f(null!==(t=e.kind)&&void 0!==t?t:\"Unknown\");a.define({[e.name]:[n,e.default]})}for(const e of null!==(o=c.overrides)&&void 0!==o?o:[])a.override({[e.name]:e.default});n.register(a)}}},\n function _(n,e,t,o,i){o();const d=n(5),c=n(240),s=n(122),a=n(43),l=n(396);t.index={},t.add_document_standalone=async function(n,e,o=[],i=!1){const u=new Map;async function f(i){let d;const f=n.roots().indexOf(i),r=o[f];null!=r?d=r:e.classList.contains(l.BOKEH_ROOT)?d=e:(d=a.div({class:l.BOKEH_ROOT}),e.appendChild(d));const w=await s.build_view(i,{parent:null});return w instanceof c.DOMView&&w.renderTo(d),u.set(i,w),t.index[i.id]=w,w}for(const e of n.roots())await f(e);return i&&(window.document.title=n.title()),n.on_change((n=>{n instanceof d.RootAddedEvent?f(n.model):n instanceof d.RootRemovedEvent?function(n){const e=u.get(n);null!=e&&(e.remove(),u.delete(n),delete t.index[n.id])}(n.model):i&&n instanceof d.TitleChangedEvent&&(window.document.title=n.title)})),[...u.values()]}},\n function _(o,e,n,t,r){t();const l=o(43),d=o(44);function u(o){let e=document.getElementById(o);if(null==e)throw new Error(`Error rendering Bokeh model: could not find #${o} HTML tag`);if(!document.body.contains(e))throw new Error(`Error rendering Bokeh model: element #${o} must be under <body>`);if(\"SCRIPT\"==e.tagName){const o=l.div({class:n.BOKEH_ROOT});l.replaceWith(e,o),e=o}return e}n.BOKEH_ROOT=d.root,n._resolve_element=function(o){const{elementid:e}=o;return null!=e?u(e):document.body},n._resolve_root_elements=function(o){const e=[];if(null!=o.root_ids&&null!=o.roots)for(const n of o.root_ids)e.push(u(o.roots[n]));return e}},\n function _(n,o,t,s,e){s();const c=n(398),r=n(19),a=n(395);t._get_ws_url=function(n,o){let t,s=\"ws:\";return\"https:\"==window.location.protocol&&(s=\"wss:\"),null!=o?(t=document.createElement(\"a\"),t.href=o):t=window.location,null!=n?\"/\"==n&&(n=\"\"):n=t.pathname.replace(/\\/+$/,\"\"),s+\"//\"+t.host+n+\"/ws\"};const i={};t.add_document_from_session=async function(n,o,t,s=[],e=!1){const l=window.location.search.substr(1);let d;try{d=await function(n,o,t){const s=c.parse_token(o).session_id;n in i||(i[n]={});const e=i[n];return s in e||(e[s]=c.pull_session(n,o,t)),e[s]}(n,o,l)}catch(n){const t=c.parse_token(o).session_id;throw r.logger.error(`Failed to load Bokeh session ${t}: ${n}`),n}return a.add_document_standalone(d.document,t,s,e)}},\n function _(e,s,n,t,o){t();const r=e(19),i=e(5),c=e(399),l=e(400),_=e(401);n.DEFAULT_SERVER_WEBSOCKET_URL=\"ws://localhost:5006/ws\",n.DEFAULT_TOKEN=\"eyJzZXNzaW9uX2lkIjogImRlZmF1bHQifQ\";let h=0;function a(e){let s=e.split(\".\")[0];const n=s.length%4;return 0!=n&&(s+=\"=\".repeat(4-n)),JSON.parse(atob(s.replace(/_/g,\"/\").replace(/-/g,\"+\")))}n.parse_token=a;class d{constructor(e=n.DEFAULT_SERVER_WEBSOCKET_URL,s=n.DEFAULT_TOKEN,t=null){this.url=e,this.token=s,this.args_string=t,this._number=h++,this.socket=null,this.session=null,this.closed_permanently=!1,this._current_handler=null,this._pending_replies=new Map,this._pending_messages=[],this._receiver=new l.Receiver,this.id=a(s).session_id.split(\".\")[0],r.logger.debug(`Creating websocket ${this._number} to '${this.url}' session '${this.id}'`)}async connect(){if(this.closed_permanently)throw new Error(\"Cannot connect() a closed ClientConnection\");if(null!=this.socket)throw new Error(\"Already connected\");this._current_handler=null,this._pending_replies.clear(),this._pending_messages=[];try{let e=`${this.url}`;return null!=this.args_string&&this.args_string.length>0&&(e+=`?${this.args_string}`),this.socket=new WebSocket(e,[\"bokeh\",this.token]),new Promise(((e,s)=>{this.socket.binaryType=\"arraybuffer\",this.socket.onopen=()=>this._on_open(e,s),this.socket.onmessage=e=>this._on_message(e),this.socket.onclose=e=>this._on_close(e,s),this.socket.onerror=()=>this._on_error(s)}))}catch(e){throw r.logger.error(`websocket creation failed to url: ${this.url}`),r.logger.error(` - ${e}`),e}}close(){this.closed_permanently||(r.logger.debug(`Permanently closing websocket connection ${this._number}`),this.closed_permanently=!0,null!=this.socket&&this.socket.close(1e3,`close method called on ClientConnection ${this._number}`),this.session._connection_closed())}_schedule_reconnect(e){setTimeout((()=>{this.closed_permanently||r.logger.info(`Websocket connection ${this._number} disconnected, will not attempt to reconnect`)}),e)}send(e){if(null==this.socket)throw new Error(`not connected so cannot send ${e}`);e.send(this.socket)}async send_with_reply(e){const s=await new Promise(((s,n)=>{this._pending_replies.set(e.msgid(),{resolve:s,reject:n}),this.send(e)}));if(\"ERROR\"===s.msgtype())throw new Error(`Error reply ${s.content.text}`);return s}async _pull_doc_json(){const e=c.Message.create(\"PULL-DOC-REQ\",{}),s=await this.send_with_reply(e);if(!(\"doc\"in s.content))throw new Error(\"No 'doc' field in PULL-DOC-REPLY\");return s.content.doc}async _repull_session_doc(e,s){var n;r.logger.debug(this.session?\"Repulling session\":\"Pulling session for first time\");try{const n=await this._pull_doc_json();if(null==this.session)if(this.closed_permanently)r.logger.debug(\"Got new document after connection was already closed\"),s(new Error(\"The connection has been closed\"));else{const s=i.Document.from_json(n),t=i.Document._compute_patch_since_json(n,s);if(t.events.length>0){r.logger.debug(`Sending ${t.events.length} changes from model construction back to server`);const e=c.Message.create(\"PATCH-DOC\",{},t);this.send(e)}this.session=new _.ClientSession(this,s,this.id);for(const e of this._pending_messages)this.session.handle(e);this._pending_messages=[],r.logger.debug(\"Created a new session from new pulled doc\"),e(this.session)}else this.session.document.replace_with_json(n),r.logger.debug(\"Updated existing session with new pulled doc\")}catch(e){null===(n=console.trace)||void 0===n||n.call(console,e),r.logger.error(`Failed to repull session ${e}`),s(e instanceof Error?e:`${e}`)}}_on_open(e,s){r.logger.info(`Websocket connection ${this._number} is now open`),this._current_handler=n=>{this._awaiting_ack_handler(n,e,s)}}_on_message(e){null==this._current_handler&&r.logger.error(\"Got a message with no current handler set\");try{this._receiver.consume(e.data)}catch(e){this._close_bad_protocol(`${e}`)}const s=this._receiver.message;if(null!=s){const e=s.problem();null!=e&&this._close_bad_protocol(e),this._current_handler(s)}}_on_close(e,s){r.logger.info(`Lost websocket ${this._number} connection, ${e.code} (${e.reason})`),this.socket=null,this._pending_replies.forEach((e=>e.reject(\"Disconnected\"))),this._pending_replies.clear(),this.closed_permanently||this._schedule_reconnect(2e3),s(new Error(`Lost websocket connection, ${e.code} (${e.reason})`))}_on_error(e){r.logger.debug(`Websocket error on socket ${this._number}`);const s=\"Could not open websocket\";r.logger.error(`Failed to connect to Bokeh server: ${s}`),e(new Error(s))}_close_bad_protocol(e){r.logger.error(`Closing connection: ${e}`),null!=this.socket&&this.socket.close(1002,e)}_awaiting_ack_handler(e,s,n){\"ACK\"===e.msgtype()?(this._current_handler=e=>this._steady_state_handler(e),this._repull_session_doc(s,n)):this._close_bad_protocol(\"First message was not an ACK\")}_steady_state_handler(e){const s=e.reqid(),n=this._pending_replies.get(s);n?(this._pending_replies.delete(s),n.resolve(e)):this.session?this.session.handle(e):\"PATCH-DOC\"!=e.msgtype()&&this._pending_messages.push(e)}}n.ClientConnection=d,d.__name__=\"ClientConnection\",n.pull_session=function(e,s,n){return new d(e,s,n).connect()}},\n function _(e,s,t,r,n){r();const i=e(34);class a{constructor(e,s,t){this.header=e,this.metadata=s,this.content=t,this.buffers=new Map}static assemble(e,s,t){const r=JSON.parse(e),n=JSON.parse(s),i=JSON.parse(t);return new a(r,n,i)}assemble_buffer(e,s){const t=null!=this.header.num_buffers?this.header.num_buffers:0;if(t<=this.buffers.size)throw new Error(`too many buffers received, expecting ${t}`);const{id:r}=JSON.parse(e);this.buffers.set(r,s)}static create(e,s,t={}){const r=a.create_header(e);return new a(r,s,t)}static create_header(e){return{msgid:i.uniqueId(),msgtype:e}}complete(){return null!=this.header&&null!=this.metadata&&null!=this.content&&(null==this.header.num_buffers||this.buffers.size==this.header.num_buffers)}send(e){if((null!=this.header.num_buffers?this.header.num_buffers:0)>0)throw new Error(\"BokehJS only supports receiving buffers, not sending\");const s=JSON.stringify(this.header),t=JSON.stringify(this.metadata),r=JSON.stringify(this.content);e.send(s),e.send(t),e.send(r)}msgid(){return this.header.msgid}msgtype(){return this.header.msgtype}reqid(){return this.header.reqid}problem(){return\"msgid\"in this.header?\"msgtype\"in this.header?null:\"No msgtype in header\":\"No msgid in header\"}}t.Message=a,a.__name__=\"Message\"},\n function _(e,t,s,_,r){_();const i=e(399),h=e(8);class a{constructor(){this.message=null,this._partial=null,this._fragments=[],this._buf_header=null,this._current_consumer=this._HEADER}consume(e){this._current_consumer(e)}_HEADER(e){this._assume_text(e),this.message=null,this._partial=null,this._fragments=[e],this._buf_header=null,this._current_consumer=this._METADATA}_METADATA(e){this._assume_text(e),this._fragments.push(e),this._current_consumer=this._CONTENT}_CONTENT(e){this._assume_text(e),this._fragments.push(e);const[t,s,_]=this._fragments.slice(0,3);this._partial=i.Message.assemble(t,s,_),this._check_complete()}_BUFFER_HEADER(e){this._assume_text(e),this._buf_header=e,this._current_consumer=this._BUFFER_PAYLOAD}_BUFFER_PAYLOAD(e){this._assume_binary(e),this._partial.assemble_buffer(this._buf_header,e),this._check_complete()}_assume_text(e){if(!h.isString(e))throw new Error(\"Expected text fragment but received binary fragment\")}_assume_binary(e){if(!(e instanceof ArrayBuffer))throw new Error(\"Expected binary fragment but received text fragment\")}_check_complete(){this._partial.complete()?(this.message=this._partial,this._current_consumer=this._HEADER):this._current_consumer=this._BUFFER_HEADER}}s.Receiver=a,a.__name__=\"Receiver\"},\n function _(e,t,n,s,o){s();const c=e(5),i=e(399),_=e(19);class r{constructor(e,t,n){this._connection=e,this.document=t,this.id=n,this._document_listener=e=>{this._document_changed(e)},this.document.on_change(this._document_listener,!0)}handle(e){const t=e.msgtype();\"PATCH-DOC\"===t?this._handle_patch(e):\"OK\"===t?this._handle_ok(e):\"ERROR\"===t?this._handle_error(e):_.logger.debug(`Doing nothing with message ${e.msgtype()}`)}close(){this._connection.close()}_connection_closed(){this.document.remove_on_change(this._document_listener)}async request_server_info(){const e=i.Message.create(\"SERVER-INFO-REQ\",{});return(await this._connection.send_with_reply(e)).content}async force_roundtrip(){await this.request_server_info()}_document_changed(e){if(e.setter_id===this.id)return;const t=e instanceof c.DocumentEventBatch?e.events:[e],n=this.document.create_json_patch(t),s=i.Message.create(\"PATCH-DOC\",{},n);this._connection.send(s)}_handle_patch(e){this.document.apply_json_patch(e.content,e.buffers,this.id)}_handle_ok(e){_.logger.trace(`Unhandled OK reply to ${e.reqid()}`)}_handle_error(e){_.logger.error(`Unhandled ERROR reply to ${e.reqid()}: ${e.content.text}`)}}n.ClientSession=r,r.__name__=\"ClientSession\"},\n function _(e,o,t,n,r){n();const s=e(1),l=e(5),i=e(400),a=e(19),c=e(43),g=e(13),f=e(395),u=e(396),m=s.__importDefault(e(44)),p=s.__importDefault(e(253)),d=s.__importDefault(e(403));function _(e,o){o.buffers.length>0?e.consume(o.buffers[0].buffer):e.consume(o.content.data);const t=e.message;null!=t&&this.apply_json_patch(t.content,t.buffers)}function b(e,o){if(\"undefined\"!=typeof Jupyter&&null!=Jupyter.notebook.kernel){a.logger.info(`Registering Jupyter comms for target ${e}`);const t=Jupyter.notebook.kernel.comm_manager;try{t.register_target(e,(t=>{a.logger.info(`Registering Jupyter comms for target ${e}`);const n=new i.Receiver;t.on_msg(_.bind(o,n))}))}catch(e){a.logger.warn(`Jupyter comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else if(o.roots()[0].id in t.kernels){a.logger.info(`Registering JupyterLab comms for target ${e}`);const n=t.kernels[o.roots()[0].id];try{n.registerCommTarget(e,(t=>{a.logger.info(`Registering JupyterLab comms for target ${e}`);const n=new i.Receiver;t.onMsg=_.bind(o,n)}))}catch(e){a.logger.warn(`Jupyter comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else if(\"undefined\"!=typeof google&&null!=google.colab.kernel){a.logger.info(`Registering Google Colab comms for target ${e}`);const t=google.colab.kernel.comms;try{t.registerTarget(e,(async t=>{var n,r,l;a.logger.info(`Registering Google Colab comms for target ${e}`);const c=new i.Receiver;try{for(var g,f=s.__asyncValues(t.messages);!(g=await f.next()).done;){const e=g.value,t={data:e.data},n=[];for(const o of null!==(l=e.buffers)&&void 0!==l?l:[])n.push(new DataView(o));const r={content:t,buffers:n};_.bind(o)(c,r)}}catch(e){n={error:e}}finally{try{g&&!g.done&&(r=f.return)&&await r.call(f)}finally{if(n)throw n.error}}}))}catch(e){a.logger.warn(`Google Colab comms failed to register. push_notebook() will not function. (exception reported: ${e})`)}}else console.warn(\"Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest @bokeh/jupyter_bokeh extension is installed. In an exported notebook this warning is expected.\")}c.stylesheet.append(m.default),c.stylesheet.append(p.default),c.stylesheet.append(d.default),t.kernels={},t.embed_items_notebook=function(e,o){if(1!=g.size(e))throw new Error(\"embed_items_notebook expects exactly one document in docs_json\");const t=l.Document.from_json(g.values(e)[0]);for(const e of o){null!=e.notebook_comms_target&&b(e.notebook_comms_target,t);const o=u._resolve_element(e),n=u._resolve_root_elements(e);f.add_document_standalone(t,o,n)}}},\n function _(t,o,r,e,d){e(),r.root=\"bk-root\",r.tooltip=\"bk-tooltip\",r.default=\".rendered_html .bk-root .bk-tooltip table,.rendered_html .bk-root .bk-tooltip tr,.rendered_html .bk-root .bk-tooltip th,.rendered_html .bk-root .bk-tooltip td{border:none;padding:1px;}\"},\n function _(t,_,o,r,n){r();const a=t(1);a.__exportStar(t(399),o),a.__exportStar(t(400),o)},\n function _(e,t,n,s,o){function l(){const e=document.getElementsByTagName(\"body\")[0],t=document.getElementsByClassName(\"bokeh-test-div\");1==t.length&&(e.removeChild(t[0]),delete t[0]);const n=document.createElement(\"div\");n.classList.add(\"bokeh-test-div\"),n.style.display=\"none\",e.insertBefore(n,e.firstChild)}s(),n.results={},n.init=function(){l()},n.record0=function(e,t){n.results[e]=t},n.record=function(e,t){n.results[e]=t,l()},n.count=function(e){null==n.results[e]&&(n.results[e]=0),n.results[e]+=1,l()}},\n function _(e,t,o,n,l){n(),o.safely=function(e,t=!1){try{return e()}catch(e){if(function(e){const t=document.createElement(\"div\");t.style.backgroundColor=\"#f2dede\",t.style.border=\"1px solid #a94442\",t.style.borderRadius=\"4px\",t.style.display=\"inline-block\",t.style.fontFamily=\"sans-serif\",t.style.marginTop=\"5px\",t.style.minWidth=\"200px\",t.style.padding=\"5px 5px 5px 10px\",t.classList.add(\"bokeh-error-box-into-flames\");const o=document.createElement(\"span\");o.style.backgroundColor=\"#a94442\",o.style.borderRadius=\"0px 4px 0px 0px\",o.style.color=\"white\",o.style.cursor=\"pointer\",o.style.cssFloat=\"right\",o.style.fontSize=\"0.8em\",o.style.margin=\"-6px -6px 0px 0px\",o.style.padding=\"2px 5px 4px 5px\",o.title=\"close\",o.setAttribute(\"aria-label\",\"close\"),o.appendChild(document.createTextNode(\"x\")),o.addEventListener(\"click\",(()=>s.removeChild(t)));const n=document.createElement(\"h3\");n.style.color=\"#a94442\",n.style.margin=\"8px 0px 0px 0px\",n.style.padding=\"0px\",n.appendChild(document.createTextNode(\"Bokeh Error\"));const l=document.createElement(\"pre\");l.style.whiteSpace=\"unset\",l.style.overflowX=\"auto\",l.appendChild(document.createTextNode(e)),t.appendChild(o),t.appendChild(n),t.appendChild(l);const s=document.getElementsByTagName(\"body\")[0];s.insertBefore(t,s.firstChild)}(e instanceof Error&&e.stack?e.stack:`${e}`),t)return;throw e}}},\n ], 0, {\"main\":0,\"tslib\":1,\"index\":2,\"version\":3,\"embed/index\":4,\"document/index\":5,\"document/document\":6,\"base\":7,\"core/util/types\":8,\"core/util/array\":9,\"core/util/math\":10,\"core/util/assert\":11,\"core/util/arrayable\":12,\"core/util/object\":13,\"core/has_props\":14,\"core/signaling\":15,\"core/util/defer\":16,\"core/util/refs\":17,\"core/properties\":18,\"core/logging\":19,\"core/enums\":20,\"core/kinds\":21,\"core/util/color\":22,\"core/util/svg_colors\":23,\"core/types\":24,\"core/util/bitset\":25,\"core/util/eq\":26,\"core/util/platform\":27,\"core/settings\":28,\"core/util/ndarray\":29,\"core/serializer\":30,\"core/util/serialization\":31,\"core/util/buffer\":32,\"core/uniforms\":33,\"core/util/string\":34,\"document/events\":35,\"core/util/pretty\":36,\"core/util/cloneable\":37,\"models/index\":38,\"models/annotations/index\":39,\"models/annotations/annotation\":40,\"models/renderers/renderer\":41,\"core/view\":42,\"core/dom\":43,\"styles/root.css\":44,\"core/visuals/index\":45,\"core/visuals/line\":46,\"core/visuals/visual\":47,\"core/property_mixins\":48,\"core/visuals/fill\":49,\"core/visuals/text\":50,\"core/visuals/hatch\":51,\"core/visuals/patterns\":52,\"model\":53,\"models/canvas/coordinates\":54,\"models/annotations/arrow\":55,\"models/annotations/data_annotation\":56,\"models/sources/columnar_data_source\":57,\"models/sources/data_source\":58,\"models/selections/selection\":59,\"core/selection_manager\":60,\"models/renderers/glyph_renderer\":61,\"models/renderers/data_renderer\":62,\"models/glyphs/line\":63,\"models/glyphs/xy_glyph\":64,\"core/util/projections\":65,\"models/glyphs/glyph\":98,\"core/util/bbox\":99,\"core/util/ragged_array\":100,\"core/util/spatial\":101,\"models/ranges/factor_range\":104,\"models/ranges/range\":105,\"models/glyphs/utils\":106,\"core/hittest\":107,\"models/glyphs/webgl/line\":108,\"models/glyphs/webgl/utils/index\":109,\"models/glyphs/webgl/utils/program\":110,\"models/glyphs/webgl/utils/buffer\":111,\"models/glyphs/webgl/utils/texture\":112,\"models/glyphs/webgl/base\":113,\"models/glyphs/webgl/line.vert\":114,\"models/glyphs/webgl/line.frag\":115,\"models/glyphs/patch\":116,\"models/glyphs/harea\":117,\"models/glyphs/area\":118,\"models/glyphs/varea\":119,\"models/sources/cds_view\":120,\"models/filters/filter\":121,\"core/build_views\":122,\"models/renderers/graph_renderer\":123,\"models/expressions/expression\":124,\"models/graphs/layout_provider\":125,\"models/graphs/graph_hit_test_policy\":126,\"models/glyphs/multi_line\":127,\"models/glyphs/patches\":128,\"models/selections/interaction_policy\":129,\"models/sources/column_data_source\":130,\"core/util/typed_array\":131,\"core/util/set\":132,\"models/annotations/arrow_head\":133,\"models/annotations/band\":134,\"models/annotations/upper_lower\":135,\"models/annotations/box_annotation\":136,\"models/annotations/color_bar\":137,\"models/annotations/title\":138,\"models/annotations/text_annotation\":139,\"core/layout/side_panel\":140,\"core/layout/types\":141,\"core/layout/layoutable\":142,\"core/util/text\":143,\"models/canvas/cartesian_frame\":144,\"models/scales/categorical_scale\":145,\"models/scales/scale\":146,\"models/transforms/index\":147,\"models/transforms/customjs_transform\":148,\"models/transforms/transform\":149,\"models/transforms/dodge\":150,\"models/transforms/range_transform\":151,\"models/transforms/interpolator\":152,\"models/transforms/jitter\":153,\"models/transforms/linear_interpolator\":154,\"models/transforms/step_interpolator\":155,\"models/ranges/range1d\":156,\"models/scales/log_scale\":157,\"models/scales/continuous_scale\":158,\"models/ranges/data_range1d\":159,\"models/ranges/data_range\":160,\"models/util\":161,\"models/axes/index\":162,\"models/axes/axis\":163,\"models/renderers/guide_renderer\":164,\"models/tickers/ticker\":165,\"models/formatters/tick_formatter\":166,\"core/graphics\":167,\"core/util/affine\":168,\"models/policies/labeling\":169,\"models/axes/categorical_axis\":170,\"models/tickers/categorical_ticker\":171,\"models/formatters/categorical_tick_formatter\":172,\"models/axes/continuous_axis\":173,\"models/axes/datetime_axis\":174,\"models/axes/linear_axis\":175,\"models/formatters/basic_tick_formatter\":176,\"models/tickers/basic_ticker\":177,\"models/tickers/adaptive_ticker\":178,\"models/tickers/continuous_ticker\":179,\"models/formatters/datetime_tick_formatter\":180,\"core/util/templating\":182,\"models/tickers/datetime_ticker\":185,\"models/tickers/composite_ticker\":186,\"models/tickers/days_ticker\":187,\"models/tickers/single_interval_ticker\":188,\"models/tickers/util\":189,\"models/tickers/months_ticker\":190,\"models/tickers/years_ticker\":191,\"models/axes/log_axis\":192,\"models/formatters/log_tick_formatter\":193,\"models/tickers/log_ticker\":194,\"models/axes/mercator_axis\":195,\"models/formatters/mercator_tick_formatter\":196,\"models/tickers/mercator_ticker\":197,\"models/tickers/index\":198,\"models/tickers/fixed_ticker\":199,\"models/tickers/binned_ticker\":200,\"models/mappers/scanning_color_mapper\":201,\"models/mappers/continuous_color_mapper\":202,\"models/mappers/color_mapper\":203,\"models/mappers/mapper\":204,\"models/formatters/index\":205,\"models/formatters/func_tick_formatter\":206,\"models/formatters/numeral_tick_formatter\":207,\"models/formatters/printf_tick_formatter\":208,\"models/mappers/index\":209,\"models/mappers/categorical_color_mapper\":210,\"models/mappers/categorical_mapper\":211,\"models/mappers/categorical_marker_mapper\":212,\"models/mappers/categorical_pattern_mapper\":213,\"models/mappers/linear_color_mapper\":214,\"models/mappers/log_color_mapper\":215,\"models/mappers/eqhist_color_mapper\":216,\"models/scales/index\":217,\"models/scales/linear_scale\":218,\"models/scales/linear_interpolation_scale\":219,\"models/ranges/index\":220,\"core/layout/index\":221,\"core/layout/alignments\":222,\"core/layout/grid\":223,\"core/layout/html\":224,\"core/layout/border\":225,\"models/annotations/label\":226,\"models/annotations/label_set\":227,\"models/annotations/legend\":228,\"models/annotations/legend_item\":229,\"core/vectorization\":230,\"models/annotations/poly_annotation\":231,\"models/annotations/slope\":232,\"models/annotations/span\":233,\"models/annotations/toolbar_panel\":234,\"models/tools/toolbar\":235,\"models/tools/tool\":236,\"models/tools/gestures/gesture_tool\":237,\"models/tools/button_tool\":238,\"core/dom_view\":240,\"styles/toolbar.css\":241,\"styles/icons.css\":242,\"styles/menus.css\":243,\"core/util/menus\":244,\"core/util/iterator\":245,\"models/tools/on_off_button\":246,\"models/tools/inspectors/inspect_tool\":247,\"models/tools/toolbar_base\":248,\"core/util/canvas\":249,\"core/util/svg\":250,\"models/tools/actions/action_tool\":251,\"models/tools/actions/help_tool\":252,\"styles/logo.css\":253,\"models/annotations/tooltip\":254,\"styles/tooltips.css\":255,\"models/annotations/whisker\":256,\"models/callbacks/index\":257,\"models/callbacks/customjs\":258,\"models/callbacks/callback\":259,\"models/callbacks/open_url\":260,\"models/canvas/index\":261,\"models/canvas/canvas\":262,\"core/ui_events\":263,\"core/bokeh_events\":264,\"core/util/wheel\":265,\"models/expressions/index\":266,\"models/expressions/customjs_expr\":267,\"models/expressions/stack\":268,\"models/expressions/cumsum\":269,\"models/expressions/minimum\":270,\"models/expressions/maximum\":271,\"models/filters/index\":272,\"models/filters/boolean_filter\":273,\"models/filters/customjs_filter\":274,\"models/filters/group_filter\":275,\"models/filters/index_filter\":276,\"models/glyphs/index\":277,\"models/glyphs/annular_wedge\":278,\"models/glyphs/annulus\":279,\"models/glyphs/arc\":280,\"models/glyphs/bezier\":281,\"models/glyphs/circle\":282,\"models/glyphs/webgl/markers\":283,\"models/glyphs/webgl/markers.vert\":284,\"models/glyphs/webgl/markers.frag\":285,\"models/glyphs/ellipse\":286,\"models/glyphs/ellipse_oval\":287,\"models/glyphs/center_rotatable\":288,\"models/glyphs/hbar\":289,\"models/glyphs/box\":290,\"models/glyphs/hex_tile\":291,\"models/glyphs/image\":292,\"models/glyphs/image_base\":293,\"models/glyphs/image_rgba\":294,\"models/glyphs/image_url\":295,\"core/util/image\":296,\"models/glyphs/multi_polygons\":297,\"models/glyphs/oval\":298,\"models/glyphs/quad\":299,\"models/glyphs/quadratic\":300,\"models/glyphs/ray\":301,\"models/glyphs/rect\":302,\"models/glyphs/scatter\":303,\"models/glyphs/marker\":304,\"models/glyphs/defs\":305,\"models/glyphs/segment\":306,\"models/glyphs/spline\":307,\"core/util/interpolation\":308,\"models/glyphs/step\":309,\"models/glyphs/text\":310,\"models/glyphs/vbar\":311,\"models/glyphs/wedge\":312,\"models/graphs/index\":313,\"models/graphs/static_layout_provider\":314,\"models/grids/index\":315,\"models/grids/grid\":316,\"models/layouts/index\":317,\"models/layouts/box\":318,\"models/layouts/layout_dom\":319,\"models/layouts/column\":320,\"models/layouts/grid_box\":321,\"models/layouts/html_box\":322,\"models/layouts/panel\":323,\"models/layouts/row\":324,\"models/layouts/spacer\":325,\"models/layouts/tabs\":326,\"styles/tabs.css\":327,\"styles/buttons.css\":328,\"models/layouts/widget_box\":329,\"models/plots/index\":330,\"models/plots/gmap_plot\":331,\"models/plots/plot\":332,\"models/plots/plot_canvas\":333,\"core/util/throttle\":334,\"models/plots/range_manager\":335,\"models/plots/state_manager\":336,\"models/plots/gmap_plot_canvas\":337,\"models/policies/index\":338,\"models/renderers/index\":339,\"models/selections/index\":340,\"models/sources/index\":341,\"models/sources/server_sent_data_source\":342,\"models/sources/web_data_source\":343,\"models/sources/ajax_data_source\":344,\"models/sources/geojson_data_source\":345,\"models/tiles/index\":346,\"models/tiles/bbox_tile_source\":347,\"models/tiles/mercator_tile_source\":348,\"models/tiles/tile_source\":349,\"models/tiles/tile_utils\":350,\"models/tiles/quadkey_tile_source\":351,\"models/tiles/tile_renderer\":352,\"models/tiles/wmts_tile_source\":353,\"styles/tiles.css\":354,\"models/tiles/tms_tile_source\":355,\"models/textures/index\":356,\"models/textures/canvas_texture\":357,\"models/textures/texture\":358,\"models/textures/image_url_texture\":359,\"models/tools/index\":360,\"models/tools/actions/custom_action\":361,\"models/tools/actions/redo_tool\":362,\"models/tools/actions/reset_tool\":363,\"models/tools/actions/save_tool\":364,\"models/tools/actions/undo_tool\":365,\"models/tools/actions/zoom_in_tool\":366,\"models/tools/actions/zoom_base_tool\":367,\"core/util/zoom\":368,\"models/tools/actions/zoom_out_tool\":369,\"models/tools/edit/edit_tool\":370,\"models/tools/edit/box_edit_tool\":371,\"models/tools/edit/freehand_draw_tool\":372,\"models/tools/edit/point_draw_tool\":373,\"models/tools/edit/poly_draw_tool\":374,\"models/tools/edit/poly_tool\":375,\"models/tools/edit/poly_edit_tool\":376,\"models/tools/gestures/box_select_tool\":377,\"models/tools/gestures/select_tool\":378,\"models/tools/gestures/box_zoom_tool\":379,\"models/tools/gestures/lasso_select_tool\":380,\"models/tools/gestures/poly_select_tool\":381,\"models/tools/edit/line_edit_tool\":382,\"models/tools/edit/line_tool\":383,\"models/tools/gestures/pan_tool\":384,\"models/tools/gestures/range_tool\":385,\"models/tools/gestures/tap_tool\":386,\"models/tools/gestures/wheel_pan_tool\":387,\"models/tools/gestures/wheel_zoom_tool\":388,\"models/tools/inspectors/crosshair_tool\":389,\"models/tools/inspectors/customjs_hover\":390,\"models/tools/inspectors/hover_tool\":391,\"models/tools/tool_proxy\":392,\"models/tools/toolbar_box\":393,\"document/defs\":394,\"embed/standalone\":395,\"embed/dom\":396,\"embed/server\":397,\"client/connection\":398,\"protocol/message\":399,\"protocol/receiver\":400,\"client/session\":401,\"embed/notebook\":402,\"styles/notebook.css\":403,\"protocol/index\":404,\"testing\":405,\"safely\":406}, {});});\n\n /* END bokeh.min.js */\n },\n \n function(Bokeh) {\n /* BEGIN bokeh-widgets.min.js */\n /*!\n * Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors\n * All rights reserved.\n * \n * Redistribution and use in source and binary forms, with or without modification,\n * are permitted provided that the following conditions are met:\n * \n * Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n * \n * Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n * \n * Neither the name of Anaconda nor the names of any contributors\n * may be used to endorse or promote products derived from this software\n * without specific prior written permission.\n * \n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n * THE POSSIBILITY OF SUCH DAMAGE.\n */\n (function(root, factory) {\n factory(root[\"Bokeh\"], \"2.3.3\");\n })(this, function(Bokeh, version) {\n var define;\n return (function(modules, entry, aliases, externals) {\n const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n if (bokeh != null) {\n return bokeh.register_plugin(modules, entry, aliases);\n } else {\n throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n }\n })\n ({\n 417: function _(t,e,i,o,r){o();const s=t(1).__importStar(t(418));i.Widgets=s;t(7).register_models(s)},\n 418: function _(t,e,o,r,u){r(),u(\"AbstractButton\",t(419).AbstractButton),u(\"AbstractIcon\",t(422).AbstractIcon),u(\"AutocompleteInput\",t(423).AutocompleteInput),u(\"Button\",t(428).Button),u(\"CheckboxButtonGroup\",t(429).CheckboxButtonGroup),u(\"CheckboxGroup\",t(431).CheckboxGroup),u(\"ColorPicker\",t(433).ColorPicker),u(\"DatePicker\",t(434).DatePicker),u(\"DateRangeSlider\",t(437).DateRangeSlider),u(\"DateSlider\",t(442).DateSlider),u(\"Div\",t(443).Div),u(\"Dropdown\",t(446).Dropdown),u(\"FileInput\",t(447).FileInput),u(\"InputWidget\",t(426).InputWidget),u(\"Markup\",t(444).Markup),u(\"MultiSelect\",t(448).MultiSelect),u(\"Paragraph\",t(449).Paragraph),u(\"PasswordInput\",t(450).PasswordInput),u(\"MultiChoice\",t(451).MultiChoice),u(\"NumericInput\",t(454).NumericInput),u(\"PreText\",t(455).PreText),u(\"RadioButtonGroup\",t(456).RadioButtonGroup),u(\"RadioGroup\",t(457).RadioGroup),u(\"RangeSlider\",t(458).RangeSlider),u(\"Select\",t(459).Select),u(\"Slider\",t(460).Slider),u(\"Spinner\",t(461).Spinner),u(\"TextInput\",t(424).TextInput),u(\"TextAreaInput\",t(462).TextAreaInput),u(\"Toggle\",t(463).Toggle),u(\"Widget\",t(488).Widget)},\n 419: function _(t,e,n,i,s){i();const l=t(1),o=t(20),r=t(43),c=t(122),u=t(420),_=t(422),a=l.__importStar(t(328)),b=a;class d extends u.ControlView{*controls(){yield this.button_el}async lazy_initialize(){await super.lazy_initialize();const{icon:t}=this.model;null!=t&&(this.icon_view=await c.build_view(t,{parent:this}))}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.render()))}remove(){null!=this.icon_view&&this.icon_view.remove(),super.remove()}styles(){return[...super.styles(),a.default]}_render_button(...t){return r.button({type:\"button\",disabled:this.model.disabled,class:[b.btn,b[`btn_${this.model.button_type}`]]},...t)}render(){super.render(),this.button_el=this._render_button(this.model.label),this.button_el.addEventListener(\"click\",(()=>this.click())),null!=this.icon_view&&(\"\"!=this.model.label?r.prepend(this.button_el,this.icon_view.el,r.nbsp()):r.prepend(this.button_el,this.icon_view.el),this.icon_view.render()),this.group_el=r.div({class:b.btn_group},this.button_el),this.el.appendChild(this.group_el)}click(){}}n.AbstractButtonView=d,d.__name__=\"AbstractButtonView\";class h extends u.Control{constructor(t){super(t)}static init_AbstractButton(){this.define((({String:t,Ref:e,Nullable:n})=>({label:[t,\"Button\"],icon:[n(e(_.AbstractIcon)),null],button_type:[o.ButtonType,\"default\"]})))}}n.AbstractButton=h,h.__name__=\"AbstractButton\",h.init_AbstractButton()},\n 420: function _(t,e,o,s,n){s();const i=t(488),l=t(43);class c extends i.WidgetView{connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.disabled,(()=>{for(const t of this.controls())l.toggle_attribute(t,\"disabled\",this.model.disabled)}))}}o.ControlView=c,c.__name__=\"ControlView\";class r extends i.Widget{constructor(t){super(t)}}o.Control=r,r.__name__=\"Control\"},\n 488: function _(i,t,e,o,n){o();const s=i(322),r=i(20);class d extends s.HTMLBoxView{_width_policy(){return\"horizontal\"==this.model.orientation?super._width_policy():\"fixed\"}_height_policy(){return\"horizontal\"==this.model.orientation?\"fixed\":super._height_policy()}box_sizing(){const i=super.box_sizing();return\"horizontal\"==this.model.orientation?null==i.width&&(i.width=this.model.default_size):null==i.height&&(i.height=this.model.default_size),i}}e.WidgetView=d,d.__name__=\"WidgetView\";class _ extends s.HTMLBox{constructor(i){super(i)}static init_Widget(){this.define((({Number:i})=>({orientation:[r.Orientation,\"horizontal\"],default_size:[i,300]}))),this.override({margin:[5,5,5,5]})}}e.Widget=_,_.__name__=\"Widget\",_.init_Widget()},\n 422: function _(c,t,s,n,e){n();const o=c(53),_=c(240);class a extends _.DOMView{}s.AbstractIconView=a,a.__name__=\"AbstractIconView\";class r extends o.Model{constructor(c){super(c)}}s.AbstractIcon=r,r.__name__=\"AbstractIcon\"},\n 423: function _(e,t,n,i,s){i();const h=e(1),o=e(424),_=e(43),u=e(10),r=h.__importStar(e(243)),c=r;class l extends o.TextInputView{constructor(){super(...arguments),this._open=!1,this._last_value=\"\",this._hover_index=0}styles(){return[...super.styles(),r.default]}render(){super.render(),this.input_el.addEventListener(\"keydown\",(e=>this._keydown(e))),this.input_el.addEventListener(\"keyup\",(e=>this._keyup(e))),this.menu=_.div({class:[c.menu,c.below]}),this.menu.addEventListener(\"click\",(e=>this._menu_click(e))),this.menu.addEventListener(\"mouseover\",(e=>this._menu_hover(e))),this.el.appendChild(this.menu),_.undisplay(this.menu)}change_input(){this._open&&this.menu.children.length>0&&(this.model.value=this.menu.children[this._hover_index].textContent,this.input_el.focus(),this._hide_menu()),this.model.restrict||super.change_input()}_update_completions(e){_.empty(this.menu);for(const t of e){const e=_.div({},t);this.menu.appendChild(e)}e.length>0&&this.menu.children[0].classList.add(c.active)}_show_menu(){if(!this._open){this._open=!0,this._hover_index=0,this._last_value=this.model.value,_.display(this.menu);const e=t=>{const{target:n}=t;n instanceof HTMLElement&&!this.el.contains(n)&&(document.removeEventListener(\"click\",e),this._hide_menu())};document.addEventListener(\"click\",e)}}_hide_menu(){this._open&&(this._open=!1,_.undisplay(this.menu))}_menu_click(e){e.target!=e.currentTarget&&e.target instanceof Element&&(this.model.value=e.target.textContent,this.input_el.focus(),this._hide_menu())}_menu_hover(e){if(e.target!=e.currentTarget&&e.target instanceof Element){let t=0;for(t=0;t<this.menu.children.length&&this.menu.children[t].textContent!=e.target.textContent;t++);this._bump_hover(t)}}_bump_hover(e){const t=this.menu.children.length;this._open&&t>0&&(this.menu.children[this._hover_index].classList.remove(c.active),this._hover_index=u.clamp(e,0,t-1),this.menu.children[this._hover_index].classList.add(c.active))}_keydown(e){}_keyup(e){switch(e.keyCode){case _.Keys.Enter:this.change_input();break;case _.Keys.Esc:this._hide_menu();break;case _.Keys.Up:this._bump_hover(this._hover_index-1);break;case _.Keys.Down:this._bump_hover(this._hover_index+1);break;default:{const e=this.input_el.value;if(e.length<this.model.min_characters)return void this._hide_menu();const t=[],{case_sensitive:n}=this.model;let i;i=n?e=>e:e=>e.toLowerCase();for(const n of this.model.completions)i(n).startsWith(i(e))&&t.push(n);this._update_completions(t),0==t.length?this._hide_menu():this._show_menu()}}}}n.AutocompleteInputView=l,l.__name__=\"AutocompleteInputView\";class a extends o.TextInput{constructor(e){super(e)}static init_AutocompleteInput(){this.prototype.default_view=l,this.define((({Boolean:e,Int:t,String:n,Array:i})=>({completions:[i(n),[]],min_characters:[t,2],case_sensitive:[e,!0],restrict:[e,!0]})))}}n.AutocompleteInput=a,a.__name__=\"AutocompleteInput\",a.init_AutocompleteInput()},\n 424: function _(t,e,n,i,p){i();const _=t(1),u=t(425),s=t(43),x=_.__importStar(t(427));class a extends u.TextLikeInputView{_render_input(){this.input_el=s.input({type:\"text\",class:x.input})}}n.TextInputView=a,a.__name__=\"TextInputView\";class c extends u.TextLikeInput{constructor(t){super(t)}static init_TextInput(){this.prototype.default_view=a}}n.TextInput=c,c.__name__=\"TextInput\",c.init_TextInput()},\n 425: function _(e,t,n,i,l){i();const s=e(426);class h extends s.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,(()=>{var e;return this.input_el.name=null!==(e=this.model.name)&&void 0!==e?e:\"\"})),this.connect(this.model.properties.value.change,(()=>this.input_el.value=this.model.value)),this.connect(this.model.properties.value_input.change,(()=>this.input_el.value=this.model.value_input)),this.connect(this.model.properties.disabled.change,(()=>this.input_el.disabled=this.model.disabled)),this.connect(this.model.properties.placeholder.change,(()=>this.input_el.placeholder=this.model.placeholder)),this.connect(this.model.properties.max_length.change,(()=>{const{max_length:e}=this.model;null!=e?this.input_el.maxLength=e:this.input_el.removeAttribute(\"maxLength\")}))}render(){var e;super.render(),this._render_input();const{input_el:t}=this;t.name=null!==(e=this.model.name)&&void 0!==e?e:\"\",t.value=this.model.value,t.disabled=this.model.disabled,t.placeholder=this.model.placeholder,null!=this.model.max_length&&(t.maxLength=this.model.max_length),t.addEventListener(\"change\",(()=>this.change_input())),t.addEventListener(\"input\",(()=>this.change_input_value())),this.group_el.appendChild(t)}change_input(){this.model.value=this.input_el.value,super.change_input()}change_input_value(){this.model.value_input=this.input_el.value,super.change_input()}}n.TextLikeInputView=h,h.__name__=\"TextLikeInputView\";class a extends s.InputWidget{constructor(e){super(e)}static init_TextLikeInput(){this.define((({Int:e,String:t,Nullable:n})=>({value:[t,\"\"],value_input:[t,\"\"],placeholder:[t,\"\"],max_length:[n(e),null]})))}}n.TextLikeInput=a,a.__name__=\"TextLikeInput\",a.init_TextLikeInput()},\n 426: function _(t,e,i,n,s){n();const l=t(1),o=t(420),r=t(43),_=l.__importStar(t(427)),p=_;class d extends o.ControlView{*controls(){yield this.input_el}connect_signals(){super.connect_signals(),this.connect(this.model.properties.title.change,(()=>{this.label_el.textContent=this.model.title}))}styles(){return[...super.styles(),_.default]}render(){super.render();const{title:t}=this.model;this.label_el=r.label({style:{display:0==t.length?\"none\":\"\"}},t),this.group_el=r.div({class:p.input_group},this.label_el),this.el.appendChild(this.group_el)}change_input(){}}i.InputWidgetView=d,d.__name__=\"InputWidgetView\";class u extends o.Control{constructor(t){super(t)}static init_InputWidget(){this.define((({String:t})=>({title:[t,\"\"]})))}}i.InputWidget=u,u.__name__=\"InputWidget\",u.init_InputWidget()},\n 427: function _(o,i,t,n,p){n(),t.root=\"bk-root\",t.input=\"bk-input\",t.input_group=\"bk-input-group\",t.inline=\"bk-inline\",t.spin_wrapper=\"bk-spin-wrapper\",t.spin_btn=\"bk-spin-btn\",t.spin_btn_up=\"bk-spin-btn-up\",t.spin_btn_down=\"bk-spin-btn-down\",t.default='.bk-root .bk-input{display:inline-block;width:100%;flex-grow:1;-webkit-flex-grow:1;min-height:31px;padding:0 12px;background-color:#fff;border:1px solid #ccc;border-radius:4px;}.bk-root .bk-input:focus{border-color:#66afe9;outline:0;box-shadow:inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);}.bk-root .bk-input::placeholder,.bk-root .bk-input:-ms-input-placeholder,.bk-root .bk-input::-moz-placeholder,.bk-root .bk-input::-webkit-input-placeholder{color:#999;opacity:1;}.bk-root .bk-input[disabled]{cursor:not-allowed;background-color:#eee;opacity:1;}.bk-root select:not([multiple]).bk-input,.bk-root select:not([size]).bk-input{height:auto;appearance:none;-webkit-appearance:none;background-image:url(\\'data:image/svg+xml;utf8,<svg version=\"1.1\" viewBox=\"0 0 25 20\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M 0,0 25,0 12.5,20 Z\" fill=\"black\" /></svg>\\');background-position:right 0.5em center;background-size:8px 6px;background-repeat:no-repeat;}.bk-root select[multiple].bk-input,.bk-root select[size].bk-input,.bk-root textarea.bk-input{height:auto;}.bk-root .bk-input-group{width:100%;height:100%;display:inline-flex;display:-webkit-inline-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap;align-items:start;-webkit-align-items:start;flex-direction:column;-webkit-flex-direction:column;white-space:nowrap;}.bk-root .bk-input-group.bk-inline{flex-direction:row;-webkit-flex-direction:row;}.bk-root .bk-input-group.bk-inline > *:not(:first-child){margin-left:5px;}.bk-root .bk-input-group input[type=\"checkbox\"] + span,.bk-root .bk-input-group input[type=\"radio\"] + span{position:relative;top:-2px;margin-left:3px;}.bk-root .bk-input-group > .bk-spin-wrapper{display:inherit;width:inherit;height:inherit;position:relative;overflow:hidden;padding:0;vertical-align:middle;}.bk-root .bk-input-group > .bk-spin-wrapper input{padding-right:20px;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn{position:absolute;display:block;height:50%;min-height:0;min-width:0;width:30px;padding:0;margin:0;right:0;border:none;background:none;cursor:pointer;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn:before{content:\"\";display:inline-block;transform:translateY(-50%);border-left:5px solid transparent;border-right:5px solid transparent;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up{top:0;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up:before{border-bottom:5px solid black;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-up:disabled:before{border-bottom-color:grey;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down{bottom:0;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down:before{border-top:5px solid black;}.bk-root .bk-input-group > .bk-spin-wrapper > .bk-spin-btn.bk-spin-btn-down:disabled:before{border-top-color:grey;}'},\n 428: function _(t,e,n,i,o){i();const s=t(419),u=t(264);class c extends s.AbstractButtonView{click(){this.model.trigger_event(new u.ButtonClick),super.click()}}n.ButtonView=c,c.__name__=\"ButtonView\";class _ extends s.AbstractButton{constructor(t){super(t)}static init_Button(){this.prototype.default_view=c,this.override({label:\"Button\"})}}n.Button=_,_.__name__=\"Button\",_.init_Button()},\n 429: function _(t,e,o,i,c){i();const n=t(1),s=t(430),a=t(43),u=n.__importStar(t(328));class r extends s.ButtonGroupView{get active(){return new Set(this.model.active)}change_active(t){const{active:e}=this;e.has(t)?e.delete(t):e.add(t),this.model.active=[...e].sort()}_update_active(){const{active:t}=this;this._buttons.forEach(((e,o)=>{a.classes(e).toggle(u.active,t.has(o))}))}}o.CheckboxButtonGroupView=r,r.__name__=\"CheckboxButtonGroupView\";class _ extends s.ButtonGroup{constructor(t){super(t)}static init_CheckboxButtonGroup(){this.prototype.default_view=r,this.define((({Int:t,Array:e})=>({active:[e(t),[]]})))}}o.CheckboxButtonGroup=_,_.__name__=\"CheckboxButtonGroup\",_.init_CheckboxButtonGroup()},\n 430: function _(t,e,n,s,i){s();const o=t(1),r=t(420),u=t(20),a=t(43),_=o.__importStar(t(328)),l=_;class c extends r.ControlView{*controls(){yield*this._buttons}connect_signals(){super.connect_signals();const t=this.model.properties;this.on_change(t.button_type,(()=>this.render())),this.on_change(t.labels,(()=>this.render())),this.on_change(t.active,(()=>this._update_active()))}styles(){return[...super.styles(),_.default]}render(){super.render(),this._buttons=this.model.labels.map(((t,e)=>{const n=a.div({class:[l.btn,l[`btn_${this.model.button_type}`]],disabled:this.model.disabled},t);return n.addEventListener(\"click\",(()=>this.change_active(e))),n})),this._update_active();const t=a.div({class:l.btn_group},this._buttons);this.el.appendChild(t)}}n.ButtonGroupView=c,c.__name__=\"ButtonGroupView\";class d extends r.Control{constructor(t){super(t)}static init_ButtonGroup(){this.define((({String:t,Array:e})=>({labels:[e(t),[]],button_type:[u.ButtonType,\"default\"]})))}}n.ButtonGroup=d,d.__name__=\"ButtonGroup\",d.init_ButtonGroup()},\n 431: function _(e,t,i,n,s){n();const o=e(1),c=e(432),a=e(43),l=e(9),d=o.__importStar(e(427));class h extends c.InputGroupView{render(){super.render();const e=a.div({class:[d.input_group,this.model.inline?d.inline:null]});this.el.appendChild(e);const{active:t,labels:i}=this.model;this._inputs=[];for(let n=0;n<i.length;n++){const s=a.input({type:\"checkbox\",value:`${n}`});s.addEventListener(\"change\",(()=>this.change_active(n))),this._inputs.push(s),this.model.disabled&&(s.disabled=!0),l.includes(t,n)&&(s.checked=!0);const o=a.label({},s,a.span({},i[n]));e.appendChild(o)}}change_active(e){const t=new Set(this.model.active);t.has(e)?t.delete(e):t.add(e),this.model.active=[...t].sort()}}i.CheckboxGroupView=h,h.__name__=\"CheckboxGroupView\";class p extends c.InputGroup{constructor(e){super(e)}static init_CheckboxGroup(){this.prototype.default_view=h,this.define((({Boolean:e,Int:t,String:i,Array:n})=>({active:[n(t),[]],labels:[n(i),[]],inline:[e,!1]})))}}i.CheckboxGroup=p,p.__name__=\"CheckboxGroup\",p.init_CheckboxGroup()},\n 432: function _(n,t,e,s,o){s();const r=n(1),u=n(420),c=r.__importDefault(n(427));class _ extends u.ControlView{*controls(){yield*this._inputs}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.render()))}styles(){return[...super.styles(),c.default]}}e.InputGroupView=_,_.__name__=\"InputGroupView\";class i extends u.Control{constructor(n){super(n)}}e.InputGroup=i,i.__name__=\"InputGroup\"},\n 433: function _(e,i,t,n,o){n();const s=e(1),l=e(426),r=e(43),c=e(22),a=s.__importStar(e(427));class d extends l.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,(()=>{var e;return this.input_el.name=null!==(e=this.model.name)&&void 0!==e?e:\"\"})),this.connect(this.model.properties.color.change,(()=>this.input_el.value=c.color2hexrgb(this.model.color))),this.connect(this.model.properties.disabled.change,(()=>this.input_el.disabled=this.model.disabled))}render(){super.render(),this.input_el=r.input({type:\"color\",class:a.input,name:this.model.name,value:this.model.color,disabled:this.model.disabled}),this.input_el.addEventListener(\"change\",(()=>this.change_input())),this.group_el.appendChild(this.input_el)}change_input(){this.model.color=this.input_el.value,super.change_input()}}t.ColorPickerView=d,d.__name__=\"ColorPickerView\";class h extends l.InputWidget{constructor(e){super(e)}static init_ColorPicker(){this.prototype.default_view=d,this.define((({Color:e})=>({color:[e,\"#000000\"]})))}}t.ColorPicker=h,h.__name__=\"ColorPicker\",h.init_ColorPicker()},\n 434: function _(e,t,i,n,s){n();const a=e(1),l=a.__importDefault(e(435)),o=e(426),d=e(43),r=e(20),c=e(8),h=a.__importStar(e(427)),u=a.__importDefault(e(436));function _(e){const t=[];for(const i of e)if(c.isString(i))t.push(i);else{const[e,n]=i;t.push({from:e,to:n})}return t}class p extends o.InputWidgetView{connect_signals(){super.connect_signals();const{value:e,min_date:t,max_date:i,disabled_dates:n,enabled_dates:s,position:a,inline:l}=this.model.properties;this.connect(e.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.setDate(this.model.value)})),this.connect(t.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"minDate\",this.model.min_date)})),this.connect(i.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"maxDate\",this.model.max_date)})),this.connect(n.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"disable\",this.model.disabled_dates)})),this.connect(s.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enable\",this.model.enabled_dates)})),this.connect(a.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"position\",this.model.position)})),this.connect(l.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"inline\",this.model.inline)}))}remove(){var e;null===(e=this._picker)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),u.default]}render(){var e,t;null==this._picker&&(super.render(),this.input_el=d.input({type:\"text\",class:h.input,disabled:this.model.disabled}),this.group_el.appendChild(this.input_el),this._picker=l.default(this.input_el,{defaultDate:this.model.value,minDate:null!==(e=this.model.min_date)&&void 0!==e?e:void 0,maxDate:null!==(t=this.model.max_date)&&void 0!==t?t:void 0,inline:this.model.inline,position:this.model.position,disable:_(this.model.disabled_dates),enable:_(this.model.enabled_dates),onChange:(e,t,i)=>this._on_change(e,t,i)}))}_on_change(e,t,i){this.model.value=t,this.change_input()}}i.DatePickerView=p,p.__name__=\"DatePickerView\";class m extends o.InputWidget{constructor(e){super(e)}static init_DatePicker(){this.prototype.default_view=p,this.define((({Boolean:e,String:t,Array:i,Tuple:n,Or:s,Nullable:a})=>{const l=i(s(t,n(t,t)));return{value:[t],min_date:[a(t),null],max_date:[a(t),null],disabled_dates:[l,[]],enabled_dates:[l,[]],position:[r.CalendarPosition,\"auto\"],inline:[e,!1]}}))}}i.DatePicker=m,m.__name__=\"DatePicker\",m.init_DatePicker()},\n 435: function _(e,n,t,a,i){\n /* flatpickr v4.6.6, @license MIT */var o,r;o=this,r=function(){\"use strict\";\n /*! *****************************************************************************\n Copyright (c) Microsoft Corporation.\n \n Permission to use, copy, modify, and/or distribute this software for any\n purpose with or without fee is hereby granted.\n \n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n PERFORMANCE OF THIS SOFTWARE.\n ***************************************************************************** */var e=function(){return(e=Object.assign||function(e){for(var n,t=1,a=arguments.length;t<a;t++)for(var i in n=arguments[t])Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i]);return e}).apply(this,arguments)};function n(){for(var e=0,n=0,t=arguments.length;n<t;n++)e+=arguments[n].length;var a=Array(e),i=0;for(n=0;n<t;n++)for(var o=arguments[n],r=0,l=o.length;r<l;r++,i++)a[i]=o[r];return a}var t=[\"onChange\",\"onClose\",\"onDayCreate\",\"onDestroy\",\"onKeyDown\",\"onMonthChange\",\"onOpen\",\"onParseConfig\",\"onReady\",\"onValueUpdate\",\"onYearChange\",\"onPreCalendarPosition\"],a={_disable:[],_enable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:\"F j, Y\",altInput:!1,altInputClass:\"form-control input\",animate:\"object\"==typeof window&&-1===window.navigator.userAgent.indexOf(\"MSIE\"),ariaDateFormat:\"F j, Y\",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:\", \",dateFormat:\"Y-m-d\",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enable:[],enableSeconds:!1,enableTime:!1,errorHandler:function(e){return\"undefined\"!=typeof console&&console.warn(e)},getWeek:function(e){var n=new Date(e.getTime());n.setHours(0,0,0,0),n.setDate(n.getDate()+3-(n.getDay()+6)%7);var t=new Date(n.getFullYear(),0,4);return 1+Math.round(((n.getTime()-t.getTime())/864e5-3+(t.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:\"default\",minuteIncrement:5,mode:\"single\",monthSelectorType:\"dropdown\",nextArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>\",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:\"auto\",positionElement:void 0,prevArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>\",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},i={weekdays:{shorthand:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longhand:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"]},months:{shorthand:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longhand:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(e){var n=e%100;if(n>3&&n<21)return\"th\";switch(n%10){case 1:return\"st\";case 2:return\"nd\";case 3:return\"rd\";default:return\"th\"}},rangeSeparator:\" to \",weekAbbreviation:\"Wk\",scrollTitle:\"Scroll to increment\",toggleTitle:\"Click to toggle\",amPM:[\"AM\",\"PM\"],yearAriaLabel:\"Year\",monthAriaLabel:\"Month\",hourAriaLabel:\"Hour\",minuteAriaLabel:\"Minute\",time_24hr:!1},o=function(e,n){return void 0===n&&(n=2),(\"000\"+e).slice(-1*n)},r=function(e){return!0===e?1:0};function l(e,n,t){var a;return void 0===t&&(t=!1),function(){var i=this,o=arguments;null!==a&&clearTimeout(a),a=window.setTimeout((function(){a=null,t||e.apply(i,o)}),n),t&&!a&&e.apply(i,o)}}var c=function(e){return e instanceof Array?e:[e]};function d(e,n,t){if(!0===t)return e.classList.add(n);e.classList.remove(n)}function s(e,n,t){var a=window.document.createElement(e);return n=n||\"\",t=t||\"\",a.className=n,void 0!==t&&(a.textContent=t),a}function u(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function f(e,n){return n(e)?e:e.parentNode?f(e.parentNode,n):void 0}function m(e,n){var t=s(\"div\",\"numInputWrapper\"),a=s(\"input\",\"numInput \"+e),i=s(\"span\",\"arrowUp\"),o=s(\"span\",\"arrowDown\");if(-1===navigator.userAgent.indexOf(\"MSIE 9.0\")?a.type=\"number\":(a.type=\"text\",a.pattern=\"\\\\d*\"),void 0!==n)for(var r in n)a.setAttribute(r,n[r]);return t.appendChild(a),t.appendChild(i),t.appendChild(o),t}function g(e){try{return\"function\"==typeof e.composedPath?e.composedPath()[0]:e.target}catch(n){return e.target}}var p=function(){},h=function(e,n,t){return t.months[n?\"shorthand\":\"longhand\"][e]},v={D:p,F:function(e,n,t){e.setMonth(t.months.longhand.indexOf(n))},G:function(e,n){e.setHours(parseFloat(n))},H:function(e,n){e.setHours(parseFloat(n))},J:function(e,n){e.setDate(parseFloat(n))},K:function(e,n,t){e.setHours(e.getHours()%12+12*r(new RegExp(t.amPM[1],\"i\").test(n)))},M:function(e,n,t){e.setMonth(t.months.shorthand.indexOf(n))},S:function(e,n){e.setSeconds(parseFloat(n))},U:function(e,n){return new Date(1e3*parseFloat(n))},W:function(e,n,t){var a=parseInt(n),i=new Date(e.getFullYear(),0,2+7*(a-1),0,0,0,0);return i.setDate(i.getDate()-i.getDay()+t.firstDayOfWeek),i},Y:function(e,n){e.setFullYear(parseFloat(n))},Z:function(e,n){return new Date(n)},d:function(e,n){e.setDate(parseFloat(n))},h:function(e,n){e.setHours(parseFloat(n))},i:function(e,n){e.setMinutes(parseFloat(n))},j:function(e,n){e.setDate(parseFloat(n))},l:p,m:function(e,n){e.setMonth(parseFloat(n)-1)},n:function(e,n){e.setMonth(parseFloat(n)-1)},s:function(e,n){e.setSeconds(parseFloat(n))},u:function(e,n){return new Date(parseFloat(n))},w:p,y:function(e,n){e.setFullYear(2e3+parseFloat(n))}},D={D:\"(\\\\w+)\",F:\"(\\\\w+)\",G:\"(\\\\d\\\\d|\\\\d)\",H:\"(\\\\d\\\\d|\\\\d)\",J:\"(\\\\d\\\\d|\\\\d)\\\\w+\",K:\"\",M:\"(\\\\w+)\",S:\"(\\\\d\\\\d|\\\\d)\",U:\"(.+)\",W:\"(\\\\d\\\\d|\\\\d)\",Y:\"(\\\\d{4})\",Z:\"(.+)\",d:\"(\\\\d\\\\d|\\\\d)\",h:\"(\\\\d\\\\d|\\\\d)\",i:\"(\\\\d\\\\d|\\\\d)\",j:\"(\\\\d\\\\d|\\\\d)\",l:\"(\\\\w+)\",m:\"(\\\\d\\\\d|\\\\d)\",n:\"(\\\\d\\\\d|\\\\d)\",s:\"(\\\\d\\\\d|\\\\d)\",u:\"(.+)\",w:\"(\\\\d\\\\d|\\\\d)\",y:\"(\\\\d{2})\"},w={Z:function(e){return e.toISOString()},D:function(e,n,t){return n.weekdays.shorthand[w.w(e,n,t)]},F:function(e,n,t){return h(w.n(e,n,t)-1,!1,n)},G:function(e,n,t){return o(w.h(e,n,t))},H:function(e){return o(e.getHours())},J:function(e,n){return void 0!==n.ordinal?e.getDate()+n.ordinal(e.getDate()):e.getDate()},K:function(e,n){return n.amPM[r(e.getHours()>11)]},M:function(e,n){return h(e.getMonth(),!0,n)},S:function(e){return o(e.getSeconds())},U:function(e){return e.getTime()/1e3},W:function(e,n,t){return t.getWeek(e)},Y:function(e){return o(e.getFullYear(),4)},d:function(e){return o(e.getDate())},h:function(e){return e.getHours()%12?e.getHours()%12:12},i:function(e){return o(e.getMinutes())},j:function(e){return e.getDate()},l:function(e,n){return n.weekdays.longhand[e.getDay()]},m:function(e){return o(e.getMonth()+1)},n:function(e){return e.getMonth()+1},s:function(e){return e.getSeconds()},u:function(e){return e.getTime()},w:function(e){return e.getDay()},y:function(e){return String(e.getFullYear()).substring(2)}},b=function(e){var n=e.config,t=void 0===n?a:n,o=e.l10n,r=void 0===o?i:o,l=e.isMobile,c=void 0!==l&&l;return function(e,n,a){var i=a||r;return void 0===t.formatDate||c?n.split(\"\").map((function(n,a,o){return w[n]&&\"\\\\\"!==o[a-1]?w[n](e,i,t):\"\\\\\"!==n?n:\"\"})).join(\"\"):t.formatDate(e,n,i)}},C=function(e){var n=e.config,t=void 0===n?a:n,o=e.l10n,r=void 0===o?i:o;return function(e,n,i,o){if(0===e||e){var l,c=o||r,d=e;if(e instanceof Date)l=new Date(e.getTime());else if(\"string\"!=typeof e&&void 0!==e.toFixed)l=new Date(e);else if(\"string\"==typeof e){var s=n||(t||a).dateFormat,u=String(e).trim();if(\"today\"===u)l=new Date,i=!0;else if(/Z$/.test(u)||/GMT$/.test(u))l=new Date(e);else if(t&&t.parseDate)l=t.parseDate(e,s);else{l=t&&t.noCalendar?new Date((new Date).setHours(0,0,0,0)):new Date((new Date).getFullYear(),0,1,0,0,0,0);for(var f=void 0,m=[],g=0,p=0,h=\"\";g<s.length;g++){var w=s[g],b=\"\\\\\"===w,C=\"\\\\\"===s[g-1]||b;if(D[w]&&!C){h+=D[w];var M=new RegExp(h).exec(e);M&&(f=!0)&&m[\"Y\"!==w?\"push\":\"unshift\"]({fn:v[w],val:M[++p]})}else b||(h+=\".\");m.forEach((function(e){var n=e.fn,t=e.val;return l=n(l,t,c)||l}))}l=f?l:void 0}}if(l instanceof Date&&!isNaN(l.getTime()))return!0===i&&l.setHours(0,0,0,0),l;t.errorHandler(new Error(\"Invalid date provided: \"+d))}}};function M(e,n,t){return void 0===t&&(t=!0),!1!==t?new Date(e.getTime()).setHours(0,0,0,0)-new Date(n.getTime()).setHours(0,0,0,0):e.getTime()-n.getTime()}var y=864e5;function x(p,v){var w={config:e(e({},a),k.defaultConfig),l10n:i};function x(e){return e.bind(w)}function E(){var e=w.config;!1===e.weekNumbers&&1===e.showMonths||!0!==e.noCalendar&&window.requestAnimationFrame((function(){if(void 0!==w.calendarContainer&&(w.calendarContainer.style.visibility=\"hidden\",w.calendarContainer.style.display=\"block\"),void 0!==w.daysContainer){var n=(w.days.offsetWidth+1)*e.showMonths;w.daysContainer.style.width=n+\"px\",w.calendarContainer.style.width=n+(void 0!==w.weekWrapper?w.weekWrapper.offsetWidth:0)+\"px\",w.calendarContainer.style.removeProperty(\"visibility\"),w.calendarContainer.style.removeProperty(\"display\")}}))}function T(e){if(0===w.selectedDates.length){var n=void 0!==w.config.minDate?new Date(w.config.minDate.getTime()):new Date,t=_(),a=t.hours,i=t.minutes,l=t.seconds;n.setHours(a,i,l,0),w.setDate(n,!1)}void 0!==e&&\"blur\"!==e.type&&function(e){e.preventDefault();var n=\"keydown\"===e.type,t=g(e),a=t;void 0!==w.amPM&&t===w.amPM&&(w.amPM.textContent=w.l10n.amPM[r(w.amPM.textContent===w.l10n.amPM[0])]);var i=parseFloat(a.getAttribute(\"min\")),l=parseFloat(a.getAttribute(\"max\")),c=parseFloat(a.getAttribute(\"step\")),d=parseInt(a.value,10),s=e.delta||(n?38===e.which?1:-1:0),u=d+c*s;if(void 0!==a.value&&2===a.value.length){var f=a===w.hourElement,m=a===w.minuteElement;u<i?(u=l+u+r(!f)+(r(f)&&r(!w.amPM)),m&&H(void 0,-1,w.hourElement)):u>l&&(u=a===w.hourElement?u-l-r(!w.amPM):i,m&&H(void 0,1,w.hourElement)),w.amPM&&f&&(1===c?u+d===23:Math.abs(u-d)>c)&&(w.amPM.textContent=w.l10n.amPM[r(w.amPM.textContent===w.l10n.amPM[0])]),a.value=o(u)}}(e);var c=w._input.value;I(),be(),w._input.value!==c&&w._debouncedChange()}function I(){if(void 0!==w.hourElement&&void 0!==w.minuteElement){var e,n,t=(parseInt(w.hourElement.value.slice(-2),10)||0)%24,a=(parseInt(w.minuteElement.value,10)||0)%60,i=void 0!==w.secondElement?(parseInt(w.secondElement.value,10)||0)%60:0;void 0!==w.amPM&&(e=t,n=w.amPM.textContent,t=e%12+12*r(n===w.l10n.amPM[1]));var o=void 0!==w.config.minTime||w.config.minDate&&w.minDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.minDate,!0);if(void 0!==w.config.maxTime||w.config.maxDate&&w.maxDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.maxDate,!0)){var l=void 0!==w.config.maxTime?w.config.maxTime:w.config.maxDate;(t=Math.min(t,l.getHours()))===l.getHours()&&(a=Math.min(a,l.getMinutes())),a===l.getMinutes()&&(i=Math.min(i,l.getSeconds()))}if(o){var c=void 0!==w.config.minTime?w.config.minTime:w.config.minDate;(t=Math.max(t,c.getHours()))===c.getHours()&&(a=Math.max(a,c.getMinutes())),a===c.getMinutes()&&(i=Math.max(i,c.getSeconds()))}O(t,a,i)}}function S(e){var n=e||w.latestSelectedDateObj;n&&O(n.getHours(),n.getMinutes(),n.getSeconds())}function _(){var e=w.config.defaultHour,n=w.config.defaultMinute,t=w.config.defaultSeconds;if(void 0!==w.config.minDate){var a=w.config.minDate.getHours(),i=w.config.minDate.getMinutes();(e=Math.max(e,a))===a&&(n=Math.max(i,n)),e===a&&n===i&&(t=w.config.minDate.getSeconds())}if(void 0!==w.config.maxDate){var o=w.config.maxDate.getHours(),r=w.config.maxDate.getMinutes();(e=Math.min(e,o))===o&&(n=Math.min(r,n)),e===o&&n===r&&(t=w.config.maxDate.getSeconds())}return{hours:e,minutes:n,seconds:t}}function O(e,n,t){void 0!==w.latestSelectedDateObj&&w.latestSelectedDateObj.setHours(e%24,n,t||0,0),w.hourElement&&w.minuteElement&&!w.isMobile&&(w.hourElement.value=o(w.config.time_24hr?e:(12+e)%12+12*r(e%12==0)),w.minuteElement.value=o(n),void 0!==w.amPM&&(w.amPM.textContent=w.l10n.amPM[r(e>=12)]),void 0!==w.secondElement&&(w.secondElement.value=o(t)))}function F(e){var n=g(e),t=parseInt(n.value)+(e.delta||0);(t/1e3>1||\"Enter\"===e.key&&!/[^\\d]/.test(t.toString()))&&Q(t)}function N(e,n,t,a){return n instanceof Array?n.forEach((function(n){return N(e,n,t,a)})):e instanceof Array?e.forEach((function(e){return N(e,n,t,a)})):(e.addEventListener(n,t,a),void w._handlers.push({element:e,event:n,handler:t,options:a}))}function A(){pe(\"onChange\")}function P(e,n){var t=void 0!==e?w.parseDate(e):w.latestSelectedDateObj||(w.config.minDate&&w.config.minDate>w.now?w.config.minDate:w.config.maxDate&&w.config.maxDate<w.now?w.config.maxDate:w.now),a=w.currentYear,i=w.currentMonth;try{void 0!==t&&(w.currentYear=t.getFullYear(),w.currentMonth=t.getMonth())}catch(e){e.message=\"Invalid date supplied: \"+t,w.config.errorHandler(e)}n&&w.currentYear!==a&&(pe(\"onYearChange\"),K()),!n||w.currentYear===a&&w.currentMonth===i||pe(\"onMonthChange\"),w.redraw()}function Y(e){var n=g(e);~n.className.indexOf(\"arrow\")&&H(e,n.classList.contains(\"arrowUp\")?1:-1)}function H(e,n,t){var a=e&&g(e),i=t||a&&a.parentNode&&a.parentNode.firstChild,o=he(\"increment\");o.delta=n,i&&i.dispatchEvent(o)}function j(e,n,t,a){var i=X(n,!0),o=s(\"span\",\"flatpickr-day \"+e,n.getDate().toString());return o.dateObj=n,o.$i=a,o.setAttribute(\"aria-label\",w.formatDate(n,w.config.ariaDateFormat)),-1===e.indexOf(\"hidden\")&&0===M(n,w.now)&&(w.todayDateElem=o,o.classList.add(\"today\"),o.setAttribute(\"aria-current\",\"date\")),i?(o.tabIndex=-1,ve(n)&&(o.classList.add(\"selected\"),w.selectedDateElem=o,\"range\"===w.config.mode&&(d(o,\"startRange\",w.selectedDates[0]&&0===M(n,w.selectedDates[0],!0)),d(o,\"endRange\",w.selectedDates[1]&&0===M(n,w.selectedDates[1],!0)),\"nextMonthDay\"===e&&o.classList.add(\"inRange\")))):o.classList.add(\"flatpickr-disabled\"),\"range\"===w.config.mode&&function(e){return!(\"range\"!==w.config.mode||w.selectedDates.length<2)&&M(e,w.selectedDates[0])>=0&&M(e,w.selectedDates[1])<=0}(n)&&!ve(n)&&o.classList.add(\"inRange\"),w.weekNumbers&&1===w.config.showMonths&&\"prevMonthDay\"!==e&&t%7==1&&w.weekNumbers.insertAdjacentHTML(\"beforeend\",\"<span class='flatpickr-day'>\"+w.config.getWeek(n)+\"</span>\"),pe(\"onDayCreate\",o),o}function L(e){e.focus(),\"range\"===w.config.mode&&ae(e)}function W(e){for(var n=e>0?0:w.config.showMonths-1,t=e>0?w.config.showMonths:-1,a=n;a!=t;a+=e)for(var i=w.daysContainer.children[a],o=e>0?0:i.children.length-1,r=e>0?i.children.length:-1,l=o;l!=r;l+=e){var c=i.children[l];if(-1===c.className.indexOf(\"hidden\")&&X(c.dateObj))return c}}function R(e,n){var t=ee(document.activeElement||document.body),a=void 0!==e?e:t?document.activeElement:void 0!==w.selectedDateElem&&ee(w.selectedDateElem)?w.selectedDateElem:void 0!==w.todayDateElem&&ee(w.todayDateElem)?w.todayDateElem:W(n>0?1:-1);void 0===a?w._input.focus():t?function(e,n){for(var t=-1===e.className.indexOf(\"Month\")?e.dateObj.getMonth():w.currentMonth,a=n>0?w.config.showMonths:-1,i=n>0?1:-1,o=t-w.currentMonth;o!=a;o+=i)for(var r=w.daysContainer.children[o],l=t-w.currentMonth===o?e.$i+n:n<0?r.children.length-1:0,c=r.children.length,d=l;d>=0&&d<c&&d!=(n>0?c:-1);d+=i){var s=r.children[d];if(-1===s.className.indexOf(\"hidden\")&&X(s.dateObj)&&Math.abs(e.$i-d)>=Math.abs(n))return L(s)}w.changeMonth(i),R(W(i),0)}(a,n):L(a)}function B(e,n){for(var t=(new Date(e,n,1).getDay()-w.l10n.firstDayOfWeek+7)%7,a=w.utils.getDaysInMonth((n-1+12)%12,e),i=w.utils.getDaysInMonth(n,e),o=window.document.createDocumentFragment(),r=w.config.showMonths>1,l=r?\"prevMonthDay hidden\":\"prevMonthDay\",c=r?\"nextMonthDay hidden\":\"nextMonthDay\",d=a+1-t,u=0;d<=a;d++,u++)o.appendChild(j(l,new Date(e,n-1,d),d,u));for(d=1;d<=i;d++,u++)o.appendChild(j(\"\",new Date(e,n,d),d,u));for(var f=i+1;f<=42-t&&(1===w.config.showMonths||u%7!=0);f++,u++)o.appendChild(j(c,new Date(e,n+1,f%i),f,u));var m=s(\"div\",\"dayContainer\");return m.appendChild(o),m}function J(){if(void 0!==w.daysContainer){u(w.daysContainer),w.weekNumbers&&u(w.weekNumbers);for(var e=document.createDocumentFragment(),n=0;n<w.config.showMonths;n++){var t=new Date(w.currentYear,w.currentMonth,1);t.setMonth(w.currentMonth+n),e.appendChild(B(t.getFullYear(),t.getMonth()))}w.daysContainer.appendChild(e),w.days=w.daysContainer.firstChild,\"range\"===w.config.mode&&1===w.selectedDates.length&&ae()}}function K(){if(!(w.config.showMonths>1||\"dropdown\"!==w.config.monthSelectorType)){var e=function(e){return!(void 0!==w.config.minDate&&w.currentYear===w.config.minDate.getFullYear()&&e<w.config.minDate.getMonth()||void 0!==w.config.maxDate&&w.currentYear===w.config.maxDate.getFullYear()&&e>w.config.maxDate.getMonth())};w.monthsDropdownContainer.tabIndex=-1,w.monthsDropdownContainer.innerHTML=\"\";for(var n=0;n<12;n++)if(e(n)){var t=s(\"option\",\"flatpickr-monthDropdown-month\");t.value=new Date(w.currentYear,n).getMonth().toString(),t.textContent=h(n,w.config.shorthandCurrentMonth,w.l10n),t.tabIndex=-1,w.currentMonth===n&&(t.selected=!0),w.monthsDropdownContainer.appendChild(t)}}}function U(){var e,n=s(\"div\",\"flatpickr-month\"),t=window.document.createDocumentFragment();w.config.showMonths>1||\"static\"===w.config.monthSelectorType?e=s(\"span\",\"cur-month\"):(w.monthsDropdownContainer=s(\"select\",\"flatpickr-monthDropdown-months\"),w.monthsDropdownContainer.setAttribute(\"aria-label\",w.l10n.monthAriaLabel),N(w.monthsDropdownContainer,\"change\",(function(e){var n=g(e),t=parseInt(n.value,10);w.changeMonth(t-w.currentMonth),pe(\"onMonthChange\")})),K(),e=w.monthsDropdownContainer);var a=m(\"cur-year\",{tabindex:\"-1\"}),i=a.getElementsByTagName(\"input\")[0];i.setAttribute(\"aria-label\",w.l10n.yearAriaLabel),w.config.minDate&&i.setAttribute(\"min\",w.config.minDate.getFullYear().toString()),w.config.maxDate&&(i.setAttribute(\"max\",w.config.maxDate.getFullYear().toString()),i.disabled=!!w.config.minDate&&w.config.minDate.getFullYear()===w.config.maxDate.getFullYear());var o=s(\"div\",\"flatpickr-current-month\");return o.appendChild(e),o.appendChild(a),t.appendChild(o),n.appendChild(t),{container:n,yearElement:i,monthElement:e}}function q(){u(w.monthNav),w.monthNav.appendChild(w.prevMonthNav),w.config.showMonths&&(w.yearElements=[],w.monthElements=[]);for(var e=w.config.showMonths;e--;){var n=U();w.yearElements.push(n.yearElement),w.monthElements.push(n.monthElement),w.monthNav.appendChild(n.container)}w.monthNav.appendChild(w.nextMonthNav)}function $(){w.weekdayContainer?u(w.weekdayContainer):w.weekdayContainer=s(\"div\",\"flatpickr-weekdays\");for(var e=w.config.showMonths;e--;){var n=s(\"div\",\"flatpickr-weekdaycontainer\");w.weekdayContainer.appendChild(n)}return z(),w.weekdayContainer}function z(){if(w.weekdayContainer){var e=w.l10n.firstDayOfWeek,t=n(w.l10n.weekdays.shorthand);e>0&&e<t.length&&(t=n(t.splice(e,t.length),t.splice(0,e)));for(var a=w.config.showMonths;a--;)w.weekdayContainer.children[a].innerHTML=\"\\n <span class='flatpickr-weekday'>\\n \"+t.join(\"</span><span class='flatpickr-weekday'>\")+\"\\n </span>\\n \"}}function G(e,n){void 0===n&&(n=!0);var t=n?e:e-w.currentMonth;t<0&&!0===w._hidePrevMonthArrow||t>0&&!0===w._hideNextMonthArrow||(w.currentMonth+=t,(w.currentMonth<0||w.currentMonth>11)&&(w.currentYear+=w.currentMonth>11?1:-1,w.currentMonth=(w.currentMonth+12)%12,pe(\"onYearChange\"),K()),J(),pe(\"onMonthChange\"),De())}function V(e){return!(!w.config.appendTo||!w.config.appendTo.contains(e))||w.calendarContainer.contains(e)}function Z(e){if(w.isOpen&&!w.config.inline){var n=g(e),t=V(n),a=n===w.input||n===w.altInput||w.element.contains(n)||e.path&&e.path.indexOf&&(~e.path.indexOf(w.input)||~e.path.indexOf(w.altInput)),i=\"blur\"===e.type?a&&e.relatedTarget&&!V(e.relatedTarget):!a&&!t&&!V(e.relatedTarget),o=!w.config.ignoredFocusElements.some((function(e){return e.contains(n)}));i&&o&&(void 0!==w.timeContainer&&void 0!==w.minuteElement&&void 0!==w.hourElement&&\"\"!==w.input.value&&void 0!==w.input.value&&T(),w.close(),w.config&&\"range\"===w.config.mode&&1===w.selectedDates.length&&(w.clear(!1),w.redraw()))}}function Q(e){if(!(!e||w.config.minDate&&e<w.config.minDate.getFullYear()||w.config.maxDate&&e>w.config.maxDate.getFullYear())){var n=e,t=w.currentYear!==n;w.currentYear=n||w.currentYear,w.config.maxDate&&w.currentYear===w.config.maxDate.getFullYear()?w.currentMonth=Math.min(w.config.maxDate.getMonth(),w.currentMonth):w.config.minDate&&w.currentYear===w.config.minDate.getFullYear()&&(w.currentMonth=Math.max(w.config.minDate.getMonth(),w.currentMonth)),t&&(w.redraw(),pe(\"onYearChange\"),K())}}function X(e,n){void 0===n&&(n=!0);var t=w.parseDate(e,void 0,n);if(w.config.minDate&&t&&M(t,w.config.minDate,void 0!==n?n:!w.minDateHasTime)<0||w.config.maxDate&&t&&M(t,w.config.maxDate,void 0!==n?n:!w.maxDateHasTime)>0)return!1;if(0===w.config.enable.length&&0===w.config.disable.length)return!0;if(void 0===t)return!1;for(var a=w.config.enable.length>0,i=a?w.config.enable:w.config.disable,o=0,r=void 0;o<i.length;o++){if(\"function\"==typeof(r=i[o])&&r(t))return a;if(r instanceof Date&&void 0!==t&&r.getTime()===t.getTime())return a;if(\"string\"==typeof r&&void 0!==t){var l=w.parseDate(r,void 0,!0);return l&&l.getTime()===t.getTime()?a:!a}if(\"object\"==typeof r&&void 0!==t&&r.from&&r.to&&t.getTime()>=r.from.getTime()&&t.getTime()<=r.to.getTime())return a}return!a}function ee(e){return void 0!==w.daysContainer&&-1===e.className.indexOf(\"hidden\")&&-1===e.className.indexOf(\"flatpickr-disabled\")&&w.daysContainer.contains(e)}function ne(e){e.target!==w._input||e.relatedTarget&&V(e.relatedTarget)||w.setDate(w._input.value,!0,e.target===w.altInput?w.config.altFormat:w.config.dateFormat)}function te(e){var n=g(e),t=w.config.wrap?p.contains(n):n===w._input,a=w.config.allowInput,i=w.isOpen&&(!a||!t),o=w.config.inline&&t&&!a;if(13===e.keyCode&&t){if(a)return w.setDate(w._input.value,!0,n===w.altInput?w.config.altFormat:w.config.dateFormat),n.blur();w.open()}else if(V(n)||i||o){var r=!!w.timeContainer&&w.timeContainer.contains(n);switch(e.keyCode){case 13:r?(e.preventDefault(),T(),se()):ue(e);break;case 27:e.preventDefault(),se();break;case 8:case 46:t&&!w.config.allowInput&&(e.preventDefault(),w.clear());break;case 37:case 39:if(r||t)w.hourElement&&w.hourElement.focus();else if(e.preventDefault(),void 0!==w.daysContainer&&(!1===a||document.activeElement&&ee(document.activeElement))){var l=39===e.keyCode?1:-1;e.ctrlKey?(e.stopPropagation(),G(l),R(W(1),0)):R(void 0,l)}break;case 38:case 40:e.preventDefault();var c=40===e.keyCode?1:-1;w.daysContainer&&void 0!==n.$i||n===w.input||n===w.altInput?e.ctrlKey?(e.stopPropagation(),Q(w.currentYear-c),R(W(1),0)):r||R(void 0,7*c):n===w.currentYearElement?Q(w.currentYear-c):w.config.enableTime&&(!r&&w.hourElement&&w.hourElement.focus(),T(e),w._debouncedChange());break;case 9:if(r){var d=[w.hourElement,w.minuteElement,w.secondElement,w.amPM].concat(w.pluginElements).filter((function(e){return e})),s=d.indexOf(n);if(-1!==s){var u=d[s+(e.shiftKey?-1:1)];e.preventDefault(),(u||w._input).focus()}}else!w.config.noCalendar&&w.daysContainer&&w.daysContainer.contains(n)&&e.shiftKey&&(e.preventDefault(),w._input.focus())}}if(void 0!==w.amPM&&n===w.amPM)switch(e.key){case w.l10n.amPM[0].charAt(0):case w.l10n.amPM[0].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[0],I(),be();break;case w.l10n.amPM[1].charAt(0):case w.l10n.amPM[1].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[1],I(),be()}(t||V(n))&&pe(\"onKeyDown\",e)}function ae(e){if(1===w.selectedDates.length&&(!e||e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\"))){for(var n=e?e.dateObj.getTime():w.days.firstElementChild.dateObj.getTime(),t=w.parseDate(w.selectedDates[0],void 0,!0).getTime(),a=Math.min(n,w.selectedDates[0].getTime()),i=Math.max(n,w.selectedDates[0].getTime()),o=!1,r=0,l=0,c=a;c<i;c+=y)X(new Date(c),!0)||(o=o||c>a&&c<i,c<t&&(!r||c>r)?r=c:c>t&&(!l||c<l)&&(l=c));for(var d=0;d<w.config.showMonths;d++)for(var s=w.daysContainer.children[d],u=function(a,i){var c,d,u,f=s.children[a],m=f.dateObj.getTime(),g=r>0&&m<r||l>0&&m>l;return g?(f.classList.add(\"notAllowed\"),[\"inRange\",\"startRange\",\"endRange\"].forEach((function(e){f.classList.remove(e)})),\"continue\"):o&&!g?\"continue\":([\"startRange\",\"inRange\",\"endRange\",\"notAllowed\"].forEach((function(e){f.classList.remove(e)})),void(void 0!==e&&(e.classList.add(n<=w.selectedDates[0].getTime()?\"startRange\":\"endRange\"),t<n&&m===t?f.classList.add(\"startRange\"):t>n&&m===t&&f.classList.add(\"endRange\"),m>=r&&(0===l||m<=l)&&(d=t,u=n,(c=m)>Math.min(d,u)&&c<Math.max(d,u))&&f.classList.add(\"inRange\"))))},f=0,m=s.children.length;f<m;f++)u(f)}}function ie(){!w.isOpen||w.config.static||w.config.inline||ce()}function oe(e){return function(n){var t=w.config[\"_\"+e+\"Date\"]=w.parseDate(n,w.config.dateFormat),a=w.config[\"_\"+(\"min\"===e?\"max\":\"min\")+\"Date\"];void 0!==t&&(w[\"min\"===e?\"minDateHasTime\":\"maxDateHasTime\"]=t.getHours()>0||t.getMinutes()>0||t.getSeconds()>0),w.selectedDates&&(w.selectedDates=w.selectedDates.filter((function(e){return X(e)})),w.selectedDates.length||\"min\"!==e||S(t),be()),w.daysContainer&&(de(),void 0!==t?w.currentYearElement[e]=t.getFullYear().toString():w.currentYearElement.removeAttribute(e),w.currentYearElement.disabled=!!a&&void 0!==t&&a.getFullYear()===t.getFullYear())}}function re(){return w.config.wrap?p.querySelector(\"[data-input]\"):p}function le(){\"object\"!=typeof w.config.locale&&void 0===k.l10ns[w.config.locale]&&w.config.errorHandler(new Error(\"flatpickr: invalid locale \"+w.config.locale)),w.l10n=e(e({},k.l10ns.default),\"object\"==typeof w.config.locale?w.config.locale:\"default\"!==w.config.locale?k.l10ns[w.config.locale]:void 0),D.K=\"(\"+w.l10n.amPM[0]+\"|\"+w.l10n.amPM[1]+\"|\"+w.l10n.amPM[0].toLowerCase()+\"|\"+w.l10n.amPM[1].toLowerCase()+\")\",void 0===e(e({},v),JSON.parse(JSON.stringify(p.dataset||{}))).time_24hr&&void 0===k.defaultConfig.time_24hr&&(w.config.time_24hr=w.l10n.time_24hr),w.formatDate=b(w),w.parseDate=C({config:w.config,l10n:w.l10n})}function ce(e){if(void 0!==w.calendarContainer){pe(\"onPreCalendarPosition\");var n=e||w._positionElement,t=Array.prototype.reduce.call(w.calendarContainer.children,(function(e,n){return e+n.offsetHeight}),0),a=w.calendarContainer.offsetWidth,i=w.config.position.split(\" \"),o=i[0],r=i.length>1?i[1]:null,l=n.getBoundingClientRect(),c=window.innerHeight-l.bottom,s=\"above\"===o||\"below\"!==o&&c<t&&l.top>t,u=window.pageYOffset+l.top+(s?-t-2:n.offsetHeight+2);if(d(w.calendarContainer,\"arrowTop\",!s),d(w.calendarContainer,\"arrowBottom\",s),!w.config.inline){var f=window.pageXOffset+l.left,m=!1,g=!1;\"center\"===r?(f-=(a-l.width)/2,m=!0):\"right\"===r&&(f-=a-l.width,g=!0),d(w.calendarContainer,\"arrowLeft\",!m&&!g),d(w.calendarContainer,\"arrowCenter\",m),d(w.calendarContainer,\"arrowRight\",g);var p=window.document.body.offsetWidth-(window.pageXOffset+l.right),h=f+a>window.document.body.offsetWidth,v=p+a>window.document.body.offsetWidth;if(d(w.calendarContainer,\"rightMost\",h),!w.config.static)if(w.calendarContainer.style.top=u+\"px\",h)if(v){var D=function(){for(var e=null,n=0;n<document.styleSheets.length;n++){var t=document.styleSheets[n];try{t.cssRules}catch(e){continue}e=t;break}return null!=e?e:(a=document.createElement(\"style\"),document.head.appendChild(a),a.sheet);var a}();if(void 0===D)return;var b=window.document.body.offsetWidth,C=Math.max(0,b/2-a/2),M=D.cssRules.length,y=\"{left:\"+l.left+\"px;right:auto;}\";d(w.calendarContainer,\"rightMost\",!1),d(w.calendarContainer,\"centerMost\",!0),D.insertRule(\".flatpickr-calendar.centerMost:before,.flatpickr-calendar.centerMost:after\"+y,M),w.calendarContainer.style.left=C+\"px\",w.calendarContainer.style.right=\"auto\"}else w.calendarContainer.style.left=\"auto\",w.calendarContainer.style.right=p+\"px\";else w.calendarContainer.style.left=f+\"px\",w.calendarContainer.style.right=\"auto\"}}}function de(){w.config.noCalendar||w.isMobile||(K(),De(),J())}function se(){w._input.focus(),-1!==window.navigator.userAgent.indexOf(\"MSIE\")||void 0!==navigator.msMaxTouchPoints?setTimeout(w.close,0):w.close()}function ue(e){e.preventDefault(),e.stopPropagation();var n=f(g(e),(function(e){return e.classList&&e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\")&&!e.classList.contains(\"notAllowed\")}));if(void 0!==n){var t=n,a=w.latestSelectedDateObj=new Date(t.dateObj.getTime()),i=(a.getMonth()<w.currentMonth||a.getMonth()>w.currentMonth+w.config.showMonths-1)&&\"range\"!==w.config.mode;if(w.selectedDateElem=t,\"single\"===w.config.mode)w.selectedDates=[a];else if(\"multiple\"===w.config.mode){var o=ve(a);o?w.selectedDates.splice(parseInt(o),1):w.selectedDates.push(a)}else\"range\"===w.config.mode&&(2===w.selectedDates.length&&w.clear(!1,!1),w.latestSelectedDateObj=a,w.selectedDates.push(a),0!==M(a,w.selectedDates[0],!0)&&w.selectedDates.sort((function(e,n){return e.getTime()-n.getTime()})));if(I(),i){var r=w.currentYear!==a.getFullYear();w.currentYear=a.getFullYear(),w.currentMonth=a.getMonth(),r&&(pe(\"onYearChange\"),K()),pe(\"onMonthChange\")}if(De(),J(),be(),i||\"range\"===w.config.mode||1!==w.config.showMonths?void 0!==w.selectedDateElem&&void 0===w.hourElement&&w.selectedDateElem&&w.selectedDateElem.focus():L(t),void 0!==w.hourElement&&void 0!==w.hourElement&&w.hourElement.focus(),w.config.closeOnSelect){var l=\"single\"===w.config.mode&&!w.config.enableTime,c=\"range\"===w.config.mode&&2===w.selectedDates.length&&!w.config.enableTime;(l||c)&&se()}A()}}w.parseDate=C({config:w.config,l10n:w.l10n}),w._handlers=[],w.pluginElements=[],w.loadedPlugins=[],w._bind=N,w._setHoursFromDate=S,w._positionCalendar=ce,w.changeMonth=G,w.changeYear=Q,w.clear=function(e,n){if(void 0===e&&(e=!0),void 0===n&&(n=!0),w.input.value=\"\",void 0!==w.altInput&&(w.altInput.value=\"\"),void 0!==w.mobileInput&&(w.mobileInput.value=\"\"),w.selectedDates=[],w.latestSelectedDateObj=void 0,!0===n&&(w.currentYear=w._initialDate.getFullYear(),w.currentMonth=w._initialDate.getMonth()),!0===w.config.enableTime){var t=_(),a=t.hours,i=t.minutes,o=t.seconds;O(a,i,o)}w.redraw(),e&&pe(\"onChange\")},w.close=function(){w.isOpen=!1,w.isMobile||(void 0!==w.calendarContainer&&w.calendarContainer.classList.remove(\"open\"),void 0!==w._input&&w._input.classList.remove(\"active\")),pe(\"onClose\")},w._createElement=s,w.destroy=function(){void 0!==w.config&&pe(\"onDestroy\");for(var e=w._handlers.length;e--;){var n=w._handlers[e];n.element.removeEventListener(n.event,n.handler,n.options)}if(w._handlers=[],w.mobileInput)w.mobileInput.parentNode&&w.mobileInput.parentNode.removeChild(w.mobileInput),w.mobileInput=void 0;else if(w.calendarContainer&&w.calendarContainer.parentNode)if(w.config.static&&w.calendarContainer.parentNode){var t=w.calendarContainer.parentNode;if(t.lastChild&&t.removeChild(t.lastChild),t.parentNode){for(;t.firstChild;)t.parentNode.insertBefore(t.firstChild,t);t.parentNode.removeChild(t)}}else w.calendarContainer.parentNode.removeChild(w.calendarContainer);w.altInput&&(w.input.type=\"text\",w.altInput.parentNode&&w.altInput.parentNode.removeChild(w.altInput),delete w.altInput),w.input&&(w.input.type=w.input._type,w.input.classList.remove(\"flatpickr-input\"),w.input.removeAttribute(\"readonly\")),[\"_showTimeInput\",\"latestSelectedDateObj\",\"_hideNextMonthArrow\",\"_hidePrevMonthArrow\",\"__hideNextMonthArrow\",\"__hidePrevMonthArrow\",\"isMobile\",\"isOpen\",\"selectedDateElem\",\"minDateHasTime\",\"maxDateHasTime\",\"days\",\"daysContainer\",\"_input\",\"_positionElement\",\"innerContainer\",\"rContainer\",\"monthNav\",\"todayDateElem\",\"calendarContainer\",\"weekdayContainer\",\"prevMonthNav\",\"nextMonthNav\",\"monthsDropdownContainer\",\"currentMonthElement\",\"currentYearElement\",\"navigationCurrentMonth\",\"selectedDateElem\",\"config\"].forEach((function(e){try{delete w[e]}catch(e){}}))},w.isEnabled=X,w.jumpToDate=P,w.open=function(e,n){if(void 0===n&&(n=w._positionElement),!0===w.isMobile){if(e){e.preventDefault();var t=g(e);t&&t.blur()}return void 0!==w.mobileInput&&(w.mobileInput.focus(),w.mobileInput.click()),void pe(\"onOpen\")}if(!w._input.disabled&&!w.config.inline){var a=w.isOpen;w.isOpen=!0,a||(w.calendarContainer.classList.add(\"open\"),w._input.classList.add(\"active\"),pe(\"onOpen\"),ce(n)),!0===w.config.enableTime&&!0===w.config.noCalendar&&(!1!==w.config.allowInput||void 0!==e&&w.timeContainer.contains(e.relatedTarget)||setTimeout((function(){return w.hourElement.select()}),50))}},w.redraw=de,w.set=function(e,n){if(null!==e&&\"object\"==typeof e)for(var a in Object.assign(w.config,e),e)void 0!==fe[a]&&fe[a].forEach((function(e){return e()}));else w.config[e]=n,void 0!==fe[e]?fe[e].forEach((function(e){return e()})):t.indexOf(e)>-1&&(w.config[e]=c(n));w.redraw(),be(!0)},w.setDate=function(e,n,t){if(void 0===n&&(n=!1),void 0===t&&(t=w.config.dateFormat),0!==e&&!e||e instanceof Array&&0===e.length)return w.clear(n);me(e,t),w.latestSelectedDateObj=w.selectedDates[w.selectedDates.length-1],w.redraw(),P(void 0,n),S(),0===w.selectedDates.length&&w.clear(!1),be(n),n&&pe(\"onChange\")},w.toggle=function(e){if(!0===w.isOpen)return w.close();w.open(e)};var fe={locale:[le,z],showMonths:[q,E,$],minDate:[P],maxDate:[P]};function me(e,n){var t=[];if(e instanceof Array)t=e.map((function(e){return w.parseDate(e,n)}));else if(e instanceof Date||\"number\"==typeof e)t=[w.parseDate(e,n)];else if(\"string\"==typeof e)switch(w.config.mode){case\"single\":case\"time\":t=[w.parseDate(e,n)];break;case\"multiple\":t=e.split(w.config.conjunction).map((function(e){return w.parseDate(e,n)}));break;case\"range\":t=e.split(w.l10n.rangeSeparator).map((function(e){return w.parseDate(e,n)}))}else w.config.errorHandler(new Error(\"Invalid date supplied: \"+JSON.stringify(e)));w.selectedDates=w.config.allowInvalidPreload?t:t.filter((function(e){return e instanceof Date&&X(e,!1)})),\"range\"===w.config.mode&&w.selectedDates.sort((function(e,n){return e.getTime()-n.getTime()}))}function ge(e){return e.slice().map((function(e){return\"string\"==typeof e||\"number\"==typeof e||e instanceof Date?w.parseDate(e,void 0,!0):e&&\"object\"==typeof e&&e.from&&e.to?{from:w.parseDate(e.from,void 0),to:w.parseDate(e.to,void 0)}:e})).filter((function(e){return e}))}function pe(e,n){if(void 0!==w.config){var t=w.config[e];if(void 0!==t&&t.length>0)for(var a=0;t[a]&&a<t.length;a++)t[a](w.selectedDates,w.input.value,w,n);\"onChange\"===e&&(w.input.dispatchEvent(he(\"change\")),w.input.dispatchEvent(he(\"input\")))}}function he(e){var n=document.createEvent(\"Event\");return n.initEvent(e,!0,!0),n}function ve(e){for(var n=0;n<w.selectedDates.length;n++)if(0===M(w.selectedDates[n],e))return\"\"+n;return!1}function De(){w.config.noCalendar||w.isMobile||!w.monthNav||(w.yearElements.forEach((function(e,n){var t=new Date(w.currentYear,w.currentMonth,1);t.setMonth(w.currentMonth+n),w.config.showMonths>1||\"static\"===w.config.monthSelectorType?w.monthElements[n].textContent=h(t.getMonth(),w.config.shorthandCurrentMonth,w.l10n)+\" \":w.monthsDropdownContainer.value=t.getMonth().toString(),e.value=t.getFullYear().toString()})),w._hidePrevMonthArrow=void 0!==w.config.minDate&&(w.currentYear===w.config.minDate.getFullYear()?w.currentMonth<=w.config.minDate.getMonth():w.currentYear<w.config.minDate.getFullYear()),w._hideNextMonthArrow=void 0!==w.config.maxDate&&(w.currentYear===w.config.maxDate.getFullYear()?w.currentMonth+1>w.config.maxDate.getMonth():w.currentYear>w.config.maxDate.getFullYear()))}function we(e){return w.selectedDates.map((function(n){return w.formatDate(n,e)})).filter((function(e,n,t){return\"range\"!==w.config.mode||w.config.enableTime||t.indexOf(e)===n})).join(\"range\"!==w.config.mode?w.config.conjunction:w.l10n.rangeSeparator)}function be(e){void 0===e&&(e=!0),void 0!==w.mobileInput&&w.mobileFormatStr&&(w.mobileInput.value=void 0!==w.latestSelectedDateObj?w.formatDate(w.latestSelectedDateObj,w.mobileFormatStr):\"\"),w.input.value=we(w.config.dateFormat),void 0!==w.altInput&&(w.altInput.value=we(w.config.altFormat)),!1!==e&&pe(\"onValueUpdate\")}function Ce(e){var n=g(e),t=w.prevMonthNav.contains(n),a=w.nextMonthNav.contains(n);t||a?G(t?-1:1):w.yearElements.indexOf(n)>=0?n.select():n.classList.contains(\"arrowUp\")?w.changeYear(w.currentYear+1):n.classList.contains(\"arrowDown\")&&w.changeYear(w.currentYear-1)}return function(){w.element=w.input=p,w.isOpen=!1,function(){var n=[\"wrap\",\"weekNumbers\",\"allowInput\",\"allowInvalidPreload\",\"clickOpens\",\"time_24hr\",\"enableTime\",\"noCalendar\",\"altInput\",\"shorthandCurrentMonth\",\"inline\",\"static\",\"enableSeconds\",\"disableMobile\"],i=e(e({},JSON.parse(JSON.stringify(p.dataset||{}))),v),o={};w.config.parseDate=i.parseDate,w.config.formatDate=i.formatDate,Object.defineProperty(w.config,\"enable\",{get:function(){return w.config._enable},set:function(e){w.config._enable=ge(e)}}),Object.defineProperty(w.config,\"disable\",{get:function(){return w.config._disable},set:function(e){w.config._disable=ge(e)}});var r=\"time\"===i.mode;if(!i.dateFormat&&(i.enableTime||r)){var l=k.defaultConfig.dateFormat||a.dateFormat;o.dateFormat=i.noCalendar||r?\"H:i\"+(i.enableSeconds?\":S\":\"\"):l+\" H:i\"+(i.enableSeconds?\":S\":\"\")}if(i.altInput&&(i.enableTime||r)&&!i.altFormat){var d=k.defaultConfig.altFormat||a.altFormat;o.altFormat=i.noCalendar||r?\"h:i\"+(i.enableSeconds?\":S K\":\" K\"):d+\" h:i\"+(i.enableSeconds?\":S\":\"\")+\" K\"}Object.defineProperty(w.config,\"minDate\",{get:function(){return w.config._minDate},set:oe(\"min\")}),Object.defineProperty(w.config,\"maxDate\",{get:function(){return w.config._maxDate},set:oe(\"max\")});var s=function(e){return function(n){w.config[\"min\"===e?\"_minTime\":\"_maxTime\"]=w.parseDate(n,\"H:i:S\")}};Object.defineProperty(w.config,\"minTime\",{get:function(){return w.config._minTime},set:s(\"min\")}),Object.defineProperty(w.config,\"maxTime\",{get:function(){return w.config._maxTime},set:s(\"max\")}),\"time\"===i.mode&&(w.config.noCalendar=!0,w.config.enableTime=!0),Object.assign(w.config,o,i);for(var u=0;u<n.length;u++)w.config[n[u]]=!0===w.config[n[u]]||\"true\"===w.config[n[u]];for(t.filter((function(e){return void 0!==w.config[e]})).forEach((function(e){w.config[e]=c(w.config[e]||[]).map(x)})),w.isMobile=!w.config.disableMobile&&!w.config.inline&&\"single\"===w.config.mode&&!w.config.disable.length&&!w.config.enable.length&&!w.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),u=0;u<w.config.plugins.length;u++){var f=w.config.plugins[u](w)||{};for(var m in f)t.indexOf(m)>-1?w.config[m]=c(f[m]).map(x).concat(w.config[m]):void 0===i[m]&&(w.config[m]=f[m])}i.altInputClass||(w.config.altInputClass=re().className+\" \"+w.config.altInputClass),pe(\"onParseConfig\")}(),le(),w.input=re(),w.input?(w.input._type=w.input.type,w.input.type=\"text\",w.input.classList.add(\"flatpickr-input\"),w._input=w.input,w.config.altInput&&(w.altInput=s(w.input.nodeName,w.config.altInputClass),w._input=w.altInput,w.altInput.placeholder=w.input.placeholder,w.altInput.disabled=w.input.disabled,w.altInput.required=w.input.required,w.altInput.tabIndex=w.input.tabIndex,w.altInput.type=\"text\",w.input.setAttribute(\"type\",\"hidden\"),!w.config.static&&w.input.parentNode&&w.input.parentNode.insertBefore(w.altInput,w.input.nextSibling)),w.config.allowInput||w._input.setAttribute(\"readonly\",\"readonly\"),w._positionElement=w.config.positionElement||w._input):w.config.errorHandler(new Error(\"Invalid input element specified\")),function(){w.selectedDates=[],w.now=w.parseDate(w.config.now)||new Date;var e=w.config.defaultDate||(\"INPUT\"!==w.input.nodeName&&\"TEXTAREA\"!==w.input.nodeName||!w.input.placeholder||w.input.value!==w.input.placeholder?w.input.value:null);e&&me(e,w.config.dateFormat),w._initialDate=w.selectedDates.length>0?w.selectedDates[0]:w.config.minDate&&w.config.minDate.getTime()>w.now.getTime()?w.config.minDate:w.config.maxDate&&w.config.maxDate.getTime()<w.now.getTime()?w.config.maxDate:w.now,w.currentYear=w._initialDate.getFullYear(),w.currentMonth=w._initialDate.getMonth(),w.selectedDates.length>0&&(w.latestSelectedDateObj=w.selectedDates[0]),void 0!==w.config.minTime&&(w.config.minTime=w.parseDate(w.config.minTime,\"H:i\")),void 0!==w.config.maxTime&&(w.config.maxTime=w.parseDate(w.config.maxTime,\"H:i\")),w.minDateHasTime=!!w.config.minDate&&(w.config.minDate.getHours()>0||w.config.minDate.getMinutes()>0||w.config.minDate.getSeconds()>0),w.maxDateHasTime=!!w.config.maxDate&&(w.config.maxDate.getHours()>0||w.config.maxDate.getMinutes()>0||w.config.maxDate.getSeconds()>0)}(),w.utils={getDaysInMonth:function(e,n){return void 0===e&&(e=w.currentMonth),void 0===n&&(n=w.currentYear),1===e&&(n%4==0&&n%100!=0||n%400==0)?29:w.l10n.daysInMonth[e]}},w.isMobile||function(){var e=window.document.createDocumentFragment();if(w.calendarContainer=s(\"div\",\"flatpickr-calendar\"),w.calendarContainer.tabIndex=-1,!w.config.noCalendar){if(e.appendChild((w.monthNav=s(\"div\",\"flatpickr-months\"),w.yearElements=[],w.monthElements=[],w.prevMonthNav=s(\"span\",\"flatpickr-prev-month\"),w.prevMonthNav.innerHTML=w.config.prevArrow,w.nextMonthNav=s(\"span\",\"flatpickr-next-month\"),w.nextMonthNav.innerHTML=w.config.nextArrow,q(),Object.defineProperty(w,\"_hidePrevMonthArrow\",{get:function(){return w.__hidePrevMonthArrow},set:function(e){w.__hidePrevMonthArrow!==e&&(d(w.prevMonthNav,\"flatpickr-disabled\",e),w.__hidePrevMonthArrow=e)}}),Object.defineProperty(w,\"_hideNextMonthArrow\",{get:function(){return w.__hideNextMonthArrow},set:function(e){w.__hideNextMonthArrow!==e&&(d(w.nextMonthNav,\"flatpickr-disabled\",e),w.__hideNextMonthArrow=e)}}),w.currentYearElement=w.yearElements[0],De(),w.monthNav)),w.innerContainer=s(\"div\",\"flatpickr-innerContainer\"),w.config.weekNumbers){var n=function(){w.calendarContainer.classList.add(\"hasWeeks\");var e=s(\"div\",\"flatpickr-weekwrapper\");e.appendChild(s(\"span\",\"flatpickr-weekday\",w.l10n.weekAbbreviation));var n=s(\"div\",\"flatpickr-weeks\");return e.appendChild(n),{weekWrapper:e,weekNumbers:n}}(),t=n.weekWrapper,a=n.weekNumbers;w.innerContainer.appendChild(t),w.weekNumbers=a,w.weekWrapper=t}w.rContainer=s(\"div\",\"flatpickr-rContainer\"),w.rContainer.appendChild($()),w.daysContainer||(w.daysContainer=s(\"div\",\"flatpickr-days\"),w.daysContainer.tabIndex=-1),J(),w.rContainer.appendChild(w.daysContainer),w.innerContainer.appendChild(w.rContainer),e.appendChild(w.innerContainer)}w.config.enableTime&&e.appendChild(function(){w.calendarContainer.classList.add(\"hasTime\"),w.config.noCalendar&&w.calendarContainer.classList.add(\"noCalendar\"),w.timeContainer=s(\"div\",\"flatpickr-time\"),w.timeContainer.tabIndex=-1;var e=s(\"span\",\"flatpickr-time-separator\",\":\"),n=m(\"flatpickr-hour\",{\"aria-label\":w.l10n.hourAriaLabel});w.hourElement=n.getElementsByTagName(\"input\")[0];var t=m(\"flatpickr-minute\",{\"aria-label\":w.l10n.minuteAriaLabel});if(w.minuteElement=t.getElementsByTagName(\"input\")[0],w.hourElement.tabIndex=w.minuteElement.tabIndex=-1,w.hourElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getHours():w.config.time_24hr?w.config.defaultHour:function(e){switch(e%24){case 0:case 12:return 12;default:return e%12}}(w.config.defaultHour)),w.minuteElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getMinutes():w.config.defaultMinute),w.hourElement.setAttribute(\"step\",w.config.hourIncrement.toString()),w.minuteElement.setAttribute(\"step\",w.config.minuteIncrement.toString()),w.hourElement.setAttribute(\"min\",w.config.time_24hr?\"0\":\"1\"),w.hourElement.setAttribute(\"max\",w.config.time_24hr?\"23\":\"12\"),w.minuteElement.setAttribute(\"min\",\"0\"),w.minuteElement.setAttribute(\"max\",\"59\"),w.timeContainer.appendChild(n),w.timeContainer.appendChild(e),w.timeContainer.appendChild(t),w.config.time_24hr&&w.timeContainer.classList.add(\"time24hr\"),w.config.enableSeconds){w.timeContainer.classList.add(\"hasSeconds\");var a=m(\"flatpickr-second\");w.secondElement=a.getElementsByTagName(\"input\")[0],w.secondElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getSeconds():w.config.defaultSeconds),w.secondElement.setAttribute(\"step\",w.minuteElement.getAttribute(\"step\")),w.secondElement.setAttribute(\"min\",\"0\"),w.secondElement.setAttribute(\"max\",\"59\"),w.timeContainer.appendChild(s(\"span\",\"flatpickr-time-separator\",\":\")),w.timeContainer.appendChild(a)}return w.config.time_24hr||(w.amPM=s(\"span\",\"flatpickr-am-pm\",w.l10n.amPM[r((w.latestSelectedDateObj?w.hourElement.value:w.config.defaultHour)>11)]),w.amPM.title=w.l10n.toggleTitle,w.amPM.tabIndex=-1,w.timeContainer.appendChild(w.amPM)),w.timeContainer}()),d(w.calendarContainer,\"rangeMode\",\"range\"===w.config.mode),d(w.calendarContainer,\"animate\",!0===w.config.animate),d(w.calendarContainer,\"multiMonth\",w.config.showMonths>1),w.calendarContainer.appendChild(e);var i=void 0!==w.config.appendTo&&void 0!==w.config.appendTo.nodeType;if((w.config.inline||w.config.static)&&(w.calendarContainer.classList.add(w.config.inline?\"inline\":\"static\"),w.config.inline&&(!i&&w.element.parentNode?w.element.parentNode.insertBefore(w.calendarContainer,w._input.nextSibling):void 0!==w.config.appendTo&&w.config.appendTo.appendChild(w.calendarContainer)),w.config.static)){var l=s(\"div\",\"flatpickr-wrapper\");w.element.parentNode&&w.element.parentNode.insertBefore(l,w.element),l.appendChild(w.element),w.altInput&&l.appendChild(w.altInput),l.appendChild(w.calendarContainer)}w.config.static||w.config.inline||(void 0!==w.config.appendTo?w.config.appendTo:window.document.body).appendChild(w.calendarContainer)}(),function(){if(w.config.wrap&&[\"open\",\"close\",\"toggle\",\"clear\"].forEach((function(e){Array.prototype.forEach.call(w.element.querySelectorAll(\"[data-\"+e+\"]\"),(function(n){return N(n,\"click\",w[e])}))})),w.isMobile)!function(){var e=w.config.enableTime?w.config.noCalendar?\"time\":\"datetime-local\":\"date\";w.mobileInput=s(\"input\",w.input.className+\" flatpickr-mobile\"),w.mobileInput.tabIndex=1,w.mobileInput.type=e,w.mobileInput.disabled=w.input.disabled,w.mobileInput.required=w.input.required,w.mobileInput.placeholder=w.input.placeholder,w.mobileFormatStr=\"datetime-local\"===e?\"Y-m-d\\\\TH:i:S\":\"date\"===e?\"Y-m-d\":\"H:i:S\",w.selectedDates.length>0&&(w.mobileInput.defaultValue=w.mobileInput.value=w.formatDate(w.selectedDates[0],w.mobileFormatStr)),w.config.minDate&&(w.mobileInput.min=w.formatDate(w.config.minDate,\"Y-m-d\")),w.config.maxDate&&(w.mobileInput.max=w.formatDate(w.config.maxDate,\"Y-m-d\")),w.input.getAttribute(\"step\")&&(w.mobileInput.step=String(w.input.getAttribute(\"step\"))),w.input.type=\"hidden\",void 0!==w.altInput&&(w.altInput.type=\"hidden\");try{w.input.parentNode&&w.input.parentNode.insertBefore(w.mobileInput,w.input.nextSibling)}catch(e){}N(w.mobileInput,\"change\",(function(e){w.setDate(g(e).value,!1,w.mobileFormatStr),pe(\"onChange\"),pe(\"onClose\")}))}();else{var e=l(ie,50);if(w._debouncedChange=l(A,300),w.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&N(w.daysContainer,\"mouseover\",(function(e){\"range\"===w.config.mode&&ae(g(e))})),N(window.document.body,\"keydown\",te),w.config.inline||w.config.static||N(window,\"resize\",e),void 0!==window.ontouchstart?N(window.document,\"touchstart\",Z):N(window.document,\"click\",Z),N(window.document,\"focus\",Z,{capture:!0}),!0===w.config.clickOpens&&(N(w._input,\"focus\",w.open),N(w._input,\"click\",w.open)),void 0!==w.daysContainer&&(N(w.monthNav,\"click\",Ce),N(w.monthNav,[\"keyup\",\"increment\"],F),N(w.daysContainer,\"click\",ue)),void 0!==w.timeContainer&&void 0!==w.minuteElement&&void 0!==w.hourElement){var n=function(e){return g(e).select()};N(w.timeContainer,[\"increment\"],T),N(w.timeContainer,\"blur\",T,{capture:!0}),N(w.timeContainer,\"click\",Y),N([w.hourElement,w.minuteElement],[\"focus\",\"click\"],n),void 0!==w.secondElement&&N(w.secondElement,\"focus\",(function(){return w.secondElement&&w.secondElement.select()})),void 0!==w.amPM&&N(w.amPM,\"click\",(function(e){T(e),A()}))}w.config.allowInput&&N(w._input,\"blur\",ne)}}(),(w.selectedDates.length||w.config.noCalendar)&&(w.config.enableTime&&S(w.config.noCalendar?w.latestSelectedDateObj||w.config.minDate:void 0),be(!1)),E();var n=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!w.isMobile&&n&&ce(),pe(\"onReady\")}(),w}function E(e,n){for(var t=Array.prototype.slice.call(e).filter((function(e){return e instanceof HTMLElement})),a=[],i=0;i<t.length;i++){var o=t[i];try{if(null!==o.getAttribute(\"data-fp-omit\"))continue;void 0!==o._flatpickr&&(o._flatpickr.destroy(),o._flatpickr=void 0),o._flatpickr=x(o,n||{}),a.push(o._flatpickr)}catch(e){console.error(e)}}return 1===a.length?a[0]:a}\"function\"!=typeof Object.assign&&(Object.assign=function(e){for(var n=[],t=1;t<arguments.length;t++)n[t-1]=arguments[t];if(!e)throw TypeError(\"Cannot convert undefined or null to object\");for(var a=function(n){n&&Object.keys(n).forEach((function(t){return e[t]=n[t]}))},i=0,o=n;i<o.length;i++){var r=o[i];a(r)}return e}),\"undefined\"!=typeof HTMLElement&&\"undefined\"!=typeof HTMLCollection&&\"undefined\"!=typeof NodeList&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(e){return E(this,e)},HTMLElement.prototype.flatpickr=function(e){return E([this],e)});var k=function(e,n){return\"string\"==typeof e?E(window.document.querySelectorAll(e),n):e instanceof Node?E([e],n):E(e,n)};return k.defaultConfig={},k.l10ns={en:e({},i),default:e({},i)},k.localize=function(n){k.l10ns.default=e(e({},k.l10ns.default),n)},k.setDefaults=function(n){k.defaultConfig=e(e({},k.defaultConfig),n)},k.parseDate=C({}),k.formatDate=b({}),k.compareDates=M,\"undefined\"!=typeof jQuery&&void 0!==jQuery.fn&&(jQuery.fn.flatpickr=function(e){return E(this,e)}),Date.prototype.fp_incr=function(e){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+(\"string\"==typeof e?parseInt(e,10):e))},\"undefined\"!=typeof window&&(window.flatpickr=k),k},\"object\"==typeof t&&void 0!==n?n.exports=r():\"function\"==typeof define&&define.amd?define(r):(o=o||self).flatpickr=r()},\n 436: function _(t,e,a,r,i){r(),a.default='.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;background:#fff;-webkit-box-shadow:1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);box-shadow:1px 0 0 #e6e6e6, -1px 0 0 #e6e6e6, 0 1px 0 #e6e6e6, 0 -1px 0 #e6e6e6, 0 3px 13px rgba(0, 0, 0, 0.08);}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible;}.flatpickr-calendar.open{display:inline-block;z-index:99999;}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);}.flatpickr-calendar.inline{display:block;position:relative;top:2px;}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px);}.flatpickr-calendar.static.open{z-index:999;display:block;}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none !important;box-shadow:none !important;}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0;}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0;}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #e6e6e6;}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto;}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:\\'\\';height:0;width:0;left:22px;}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px;}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%;}.flatpickr-calendar:before{border-width:5px;margin:0 -5px;}.flatpickr-calendar:after{border-width:4px;margin:0 -4px;}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%;}.flatpickr-calendar.arrowTop:before{border-bottom-color:#e6e6e6;}.flatpickr-calendar.arrowTop:after{border-bottom-color:#fff;}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%;}.flatpickr-calendar.arrowBottom:before{border-top-color:#e6e6e6;}.flatpickr-calendar.arrowBottom:after{border-top-color:#fff;}.flatpickr-calendar:focus{outline:0;}.flatpickr-wrapper{position:relative;display:inline-block;}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.flatpickr-months .flatpickr-month{background:transparent;color:rgba(0, 0, 0, 0.9);fill:rgba(0, 0, 0, 0.9);height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:rgba(0, 0, 0, 0.9);fill:rgba(0, 0, 0, 0.9);}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none;}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative;}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0;}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0;}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#959ea9;}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747;}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px;}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill 0.1s;transition:fill 0.1s;fill:inherit;}.numInputWrapper{position:relative;height:auto;}.numInputWrapper input,.numInputWrapper span{display:inline-block;}.numInputWrapper input{width:100%;}.numInputWrapper input::-ms-clear{display:none;}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none;}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(57, 57, 57, 0.15);-webkit-box-sizing:border-box;box-sizing:border-box;}.numInputWrapper span:hover{background:rgba(0, 0, 0, 0.1);}.numInputWrapper span:active{background:rgba(0, 0, 0, 0.2);}.numInputWrapper span:after{display:block;content:\"\";position:absolute;}.numInputWrapper span.arrowUp{top:0;border-bottom:0;}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(57, 57, 57, 0.6);top:26%;}.numInputWrapper span.arrowDown{top:50%;}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(57, 57, 57, 0.6);top:40%;}.numInputWrapper span svg{width:inherit;height:auto;}.numInputWrapper span svg path{fill:rgba(0, 0, 0, 0.5);}.numInputWrapper:hover{background:rgba(0, 0, 0, 0.05);}.numInputWrapper:hover span{opacity:1;}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px);}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:0.5ch;padding:0;}.flatpickr-current-month span.cur-month:hover{background:rgba(0, 0, 0, 0.05);}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch\\0;display:inline-block;}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:rgba(0, 0, 0, 0.9);}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:rgba(0, 0, 0, 0.9);}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 0.5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;}.flatpickr-current-month input.cur-year:focus{outline:0;}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(0, 0, 0, 0.5);background:transparent;pointer-events:none;}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:transparent;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:none;padding:0 0 0 0.5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto;}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none;}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0, 0, 0, 0.05);}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:transparent;outline:none;padding:0;}.flatpickr-weekdays{background:transparent;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px;}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;}span.flatpickr-weekday{cursor:default;font-size:90%;background:transparent;color:rgba(0, 0, 0, 0.54);line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder;}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0;}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;}.flatpickr-days:focus{outline:0;}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px);opacity:1;}.dayContainer + .dayContainer{-webkit-box-shadow:-1px 0 0 #e6e6e6;box-shadow:-1px 0 0 #e6e6e6;}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#393939;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center;}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e6e6e6;border-color:#e6e6e6;}.flatpickr-day.today{border-color:#959ea9;}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#959ea9;background:#959ea9;color:#fff;}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#569ff7;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#569ff7;}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px;}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0;}.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #569ff7;box-shadow:-10px 0 0 #569ff7;}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px;}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;box-shadow:-5px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:rgba(57, 57, 57, 0.3);background:transparent;border-color:transparent;cursor:default;}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(57, 57, 57, 0.1);}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #569ff7, 5px 0 0 #569ff7;box-shadow:-5px 0 0 #569ff7, 5px 0 0 #569ff7;}.flatpickr-day.hidden{visibility:hidden;}.rangeMode .flatpickr-day{margin-top:1px;}.flatpickr-weekwrapper{float:left;}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;-webkit-box-shadow:1px 0 0 #e6e6e6;box-shadow:1px 0 0 #e6e6e6;}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px;}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(57, 57, 57, 0.3);background:transparent;cursor:default;border:none;}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box;}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.flatpickr-time:after{content:\"\";display:table;clear:both;}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left;}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#393939;}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#393939;}.flatpickr-time.hasSeconds .numInputWrapper{width:26%;}.flatpickr-time.time24hr .numInputWrapper{width:49%;}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#393939;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;}.flatpickr-time input.flatpickr-hour{font-weight:bold;}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400;}.flatpickr-time input:focus{outline:0;border:0;}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#393939;font-weight:bold;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400;}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eee;}.flatpickr-input[readonly]{cursor:pointer;}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0);}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0);}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}}.flatpickr-calendar{background:transparent;opacity:0;display:none;text-align:center;visibility:hidden;padding:0;-webkit-animation:none;animation:none;direction:ltr;border:0;font-size:14px;line-height:24px;border-radius:5px;position:absolute;width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;-ms-touch-action:manipulation;touch-action:manipulation;-webkit-box-shadow:0 3px 13px rgba(0, 0, 0, 0.08);box-shadow:0 3px 13px rgba(0, 0, 0, 0.08);}.flatpickr-calendar.open,.flatpickr-calendar.inline{opacity:1;max-height:640px;visibility:visible;}.flatpickr-calendar.open{display:inline-block;z-index:99999;}.flatpickr-calendar.animate.open{-webkit-animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);animation:fpFadeInDown 300ms cubic-bezier(0.23, 1, 0.32, 1);}.flatpickr-calendar.inline{display:block;position:relative;top:2px;}.flatpickr-calendar.static{position:absolute;top:calc(100% + 2px);}.flatpickr-calendar.static.open{z-index:999;display:block;}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+1) .flatpickr-day.inRange:nth-child(7n+7){-webkit-box-shadow:none !important;box-shadow:none !important;}.flatpickr-calendar.multiMonth .flatpickr-days .dayContainer:nth-child(n+2) .flatpickr-day.inRange:nth-child(7n+1){-webkit-box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;box-shadow:-2px 0 0 #e6e6e6, 5px 0 0 #e6e6e6;}.flatpickr-calendar .hasWeeks .dayContainer,.flatpickr-calendar .hasTime .dayContainer{border-bottom:0;border-bottom-right-radius:0;border-bottom-left-radius:0;}.flatpickr-calendar .hasWeeks .dayContainer{border-left:0;}.flatpickr-calendar.hasTime .flatpickr-time{height:40px;border-top:1px solid #eceef1;}.flatpickr-calendar.hasTime .flatpickr-innerContainer{border-bottom:0;}.flatpickr-calendar.hasTime .flatpickr-time{border:1px solid #eceef1;}.flatpickr-calendar.noCalendar.hasTime .flatpickr-time{height:auto;}.flatpickr-calendar:before,.flatpickr-calendar:after{position:absolute;display:block;pointer-events:none;border:solid transparent;content:\\'\\';height:0;width:0;left:22px;}.flatpickr-calendar.rightMost:before,.flatpickr-calendar.arrowRight:before,.flatpickr-calendar.rightMost:after,.flatpickr-calendar.arrowRight:after{left:auto;right:22px;}.flatpickr-calendar.arrowCenter:before,.flatpickr-calendar.arrowCenter:after{left:50%;right:50%;}.flatpickr-calendar:before{border-width:5px;margin:0 -5px;}.flatpickr-calendar:after{border-width:4px;margin:0 -4px;}.flatpickr-calendar.arrowTop:before,.flatpickr-calendar.arrowTop:after{bottom:100%;}.flatpickr-calendar.arrowTop:before{border-bottom-color:#eceef1;}.flatpickr-calendar.arrowTop:after{border-bottom-color:#eceef1;}.flatpickr-calendar.arrowBottom:before,.flatpickr-calendar.arrowBottom:after{top:100%;}.flatpickr-calendar.arrowBottom:before{border-top-color:#eceef1;}.flatpickr-calendar.arrowBottom:after{border-top-color:#eceef1;}.flatpickr-calendar:focus{outline:0;}.flatpickr-wrapper{position:relative;display:inline-block;}.flatpickr-months{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}.flatpickr-months .flatpickr-month{border-radius:5px 5px 0 0;background:#eceef1;color:#5a6171;fill:#5a6171;height:34px;line-height:1;text-align:center;position:relative;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overflow:hidden;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;}.flatpickr-months .flatpickr-prev-month,.flatpickr-months .flatpickr-next-month{text-decoration:none;cursor:pointer;position:absolute;top:0;height:34px;padding:10px;z-index:3;color:#5a6171;fill:#5a6171;}.flatpickr-months .flatpickr-prev-month.flatpickr-disabled,.flatpickr-months .flatpickr-next-month.flatpickr-disabled{display:none;}.flatpickr-months .flatpickr-prev-month i,.flatpickr-months .flatpickr-next-month i{position:relative;}.flatpickr-months .flatpickr-prev-month.flatpickr-prev-month,.flatpickr-months .flatpickr-next-month.flatpickr-prev-month{left:0;}.flatpickr-months .flatpickr-prev-month.flatpickr-next-month,.flatpickr-months .flatpickr-next-month.flatpickr-next-month{right:0;}.flatpickr-months .flatpickr-prev-month:hover,.flatpickr-months .flatpickr-next-month:hover{color:#bbb;}.flatpickr-months .flatpickr-prev-month:hover svg,.flatpickr-months .flatpickr-next-month:hover svg{fill:#f64747;}.flatpickr-months .flatpickr-prev-month svg,.flatpickr-months .flatpickr-next-month svg{width:14px;height:14px;}.flatpickr-months .flatpickr-prev-month svg path,.flatpickr-months .flatpickr-next-month svg path{-webkit-transition:fill 0.1s;transition:fill 0.1s;fill:inherit;}.numInputWrapper{position:relative;height:auto;}.numInputWrapper input,.numInputWrapper span{display:inline-block;}.numInputWrapper input{width:100%;}.numInputWrapper input::-ms-clear{display:none;}.numInputWrapper input::-webkit-outer-spin-button,.numInputWrapper input::-webkit-inner-spin-button{margin:0;-webkit-appearance:none;}.numInputWrapper span{position:absolute;right:0;width:14px;padding:0 4px 0 2px;height:50%;line-height:50%;opacity:0;cursor:pointer;border:1px solid rgba(72, 72, 72, 0.15);-webkit-box-sizing:border-box;box-sizing:border-box;}.numInputWrapper span:hover{background:rgba(0, 0, 0, 0.1);}.numInputWrapper span:active{background:rgba(0, 0, 0, 0.2);}.numInputWrapper span:after{display:block;content:\"\";position:absolute;}.numInputWrapper span.arrowUp{top:0;border-bottom:0;}.numInputWrapper span.arrowUp:after{border-left:4px solid transparent;border-right:4px solid transparent;border-bottom:4px solid rgba(72, 72, 72, 0.6);top:26%;}.numInputWrapper span.arrowDown{top:50%;}.numInputWrapper span.arrowDown:after{border-left:4px solid transparent;border-right:4px solid transparent;border-top:4px solid rgba(72, 72, 72, 0.6);top:40%;}.numInputWrapper span svg{width:inherit;height:auto;}.numInputWrapper span svg path{fill:rgba(90, 97, 113, 0.5);}.numInputWrapper:hover{background:rgba(0, 0, 0, 0.05);}.numInputWrapper:hover span{opacity:1;}.flatpickr-current-month{font-size:135%;line-height:inherit;font-weight:300;color:inherit;position:absolute;width:75%;left:12.5%;padding:7.48px 0 0 0;line-height:1;height:34px;display:inline-block;text-align:center;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px);}.flatpickr-current-month span.cur-month{font-family:inherit;font-weight:700;color:inherit;display:inline-block;margin-left:0.5ch;padding:0;}.flatpickr-current-month span.cur-month:hover{background:rgba(0, 0, 0, 0.05);}.flatpickr-current-month .numInputWrapper{width:6ch;width:7ch\\0;display:inline-block;}.flatpickr-current-month .numInputWrapper span.arrowUp:after{border-bottom-color:#5a6171;}.flatpickr-current-month .numInputWrapper span.arrowDown:after{border-top-color:#5a6171;}.flatpickr-current-month input.cur-year{background:transparent;-webkit-box-sizing:border-box;box-sizing:border-box;color:inherit;cursor:text;padding:0 0 0 0.5ch;margin:0;display:inline-block;font-size:inherit;font-family:inherit;font-weight:300;line-height:inherit;height:auto;border:0;border-radius:0;vertical-align:initial;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;}.flatpickr-current-month input.cur-year:focus{outline:0;}.flatpickr-current-month input.cur-year[disabled],.flatpickr-current-month input.cur-year[disabled]:hover{font-size:100%;color:rgba(90, 97, 113, 0.5);background:transparent;pointer-events:none;}.flatpickr-current-month .flatpickr-monthDropdown-months{appearance:menulist;background:#eceef1;border:none;border-radius:0;box-sizing:border-box;color:inherit;cursor:pointer;font-size:inherit;font-family:inherit;font-weight:300;height:auto;line-height:inherit;margin:-1px 0 0 0;outline:none;padding:0 0 0 0.5ch;position:relative;vertical-align:initial;-webkit-box-sizing:border-box;-webkit-appearance:menulist;-moz-appearance:menulist;width:auto;}.flatpickr-current-month .flatpickr-monthDropdown-months:focus,.flatpickr-current-month .flatpickr-monthDropdown-months:active{outline:none;}.flatpickr-current-month .flatpickr-monthDropdown-months:hover{background:rgba(0, 0, 0, 0.05);}.flatpickr-current-month .flatpickr-monthDropdown-months .flatpickr-monthDropdown-month{background-color:#eceef1;outline:none;padding:0;}.flatpickr-weekdays{background:#eceef1;text-align:center;overflow:hidden;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:28px;}.flatpickr-weekdays .flatpickr-weekdaycontainer{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;}span.flatpickr-weekday{cursor:default;font-size:90%;background:#eceef1;color:#5a6171;line-height:1;margin:0;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;font-weight:bolder;}.dayContainer,.flatpickr-weeks{padding:1px 0 0 0;}.flatpickr-days{position:relative;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start;width:307.875px;border-left:1px solid #eceef1;border-right:1px solid #eceef1;}.flatpickr-days:focus{outline:0;}.dayContainer{padding:0;outline:0;text-align:left;width:307.875px;min-width:307.875px;max-width:307.875px;-webkit-box-sizing:border-box;box-sizing:border-box;display:inline-block;display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-webkit-flex-wrap:wrap;flex-wrap:wrap;-ms-flex-wrap:wrap;-ms-flex-pack:justify;-webkit-justify-content:space-around;justify-content:space-around;-webkit-transform:translate3d(0px, 0px, 0px);transform:translate3d(0px, 0px, 0px);opacity:1;}.dayContainer + .dayContainer{-webkit-box-shadow:-1px 0 0 #eceef1;box-shadow:-1px 0 0 #eceef1;}.flatpickr-day{background:none;border:1px solid transparent;border-radius:150px;-webkit-box-sizing:border-box;box-sizing:border-box;color:#484848;cursor:pointer;font-weight:400;width:14.2857143%;-webkit-flex-basis:14.2857143%;-ms-flex-preferred-size:14.2857143%;flex-basis:14.2857143%;max-width:39px;height:39px;line-height:39px;margin:0;display:inline-block;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;text-align:center;}.flatpickr-day.inRange,.flatpickr-day.prevMonthDay.inRange,.flatpickr-day.nextMonthDay.inRange,.flatpickr-day.today.inRange,.flatpickr-day.prevMonthDay.today.inRange,.flatpickr-day.nextMonthDay.today.inRange,.flatpickr-day:hover,.flatpickr-day.prevMonthDay:hover,.flatpickr-day.nextMonthDay:hover,.flatpickr-day:focus,.flatpickr-day.prevMonthDay:focus,.flatpickr-day.nextMonthDay:focus{cursor:pointer;outline:0;background:#e2e2e2;border-color:#e2e2e2;}.flatpickr-day.today{border-color:#bbb;}.flatpickr-day.today:hover,.flatpickr-day.today:focus{border-color:#bbb;background:#bbb;color:#fff;}.flatpickr-day.selected,.flatpickr-day.startRange,.flatpickr-day.endRange,.flatpickr-day.selected.inRange,.flatpickr-day.startRange.inRange,.flatpickr-day.endRange.inRange,.flatpickr-day.selected:focus,.flatpickr-day.startRange:focus,.flatpickr-day.endRange:focus,.flatpickr-day.selected:hover,.flatpickr-day.startRange:hover,.flatpickr-day.endRange:hover,.flatpickr-day.selected.prevMonthDay,.flatpickr-day.startRange.prevMonthDay,.flatpickr-day.endRange.prevMonthDay,.flatpickr-day.selected.nextMonthDay,.flatpickr-day.startRange.nextMonthDay,.flatpickr-day.endRange.nextMonthDay{background:#ff5a5f;-webkit-box-shadow:none;box-shadow:none;color:#fff;border-color:#ff5a5f;}.flatpickr-day.selected.startRange,.flatpickr-day.startRange.startRange,.flatpickr-day.endRange.startRange{border-radius:50px 0 0 50px;}.flatpickr-day.selected.endRange,.flatpickr-day.startRange.endRange,.flatpickr-day.endRange.endRange{border-radius:0 50px 50px 0;}.flatpickr-day.selected.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.startRange.startRange + .endRange:not(:nth-child(7n+1)),.flatpickr-day.endRange.startRange + .endRange:not(:nth-child(7n+1)){-webkit-box-shadow:-10px 0 0 #ff5a5f;box-shadow:-10px 0 0 #ff5a5f;}.flatpickr-day.selected.startRange.endRange,.flatpickr-day.startRange.startRange.endRange,.flatpickr-day.endRange.startRange.endRange{border-radius:50px;}.flatpickr-day.inRange{border-radius:0;-webkit-box-shadow:-5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;box-shadow:-5px 0 0 #e2e2e2, 5px 0 0 #e2e2e2;}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover,.flatpickr-day.prevMonthDay,.flatpickr-day.nextMonthDay,.flatpickr-day.notAllowed,.flatpickr-day.notAllowed.prevMonthDay,.flatpickr-day.notAllowed.nextMonthDay{color:rgba(72, 72, 72, 0.3);background:transparent;border-color:transparent;cursor:default;}.flatpickr-day.flatpickr-disabled,.flatpickr-day.flatpickr-disabled:hover{cursor:not-allowed;color:rgba(72, 72, 72, 0.1);}.flatpickr-day.week.selected{border-radius:0;-webkit-box-shadow:-5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f;box-shadow:-5px 0 0 #ff5a5f, 5px 0 0 #ff5a5f;}.flatpickr-day.hidden{visibility:hidden;}.rangeMode .flatpickr-day{margin-top:1px;}.flatpickr-weekwrapper{float:left;}.flatpickr-weekwrapper .flatpickr-weeks{padding:0 12px;border-left:1px solid #eceef1;}.flatpickr-weekwrapper .flatpickr-weekday{float:none;width:100%;line-height:28px;}.flatpickr-weekwrapper span.flatpickr-day,.flatpickr-weekwrapper span.flatpickr-day:hover{display:block;width:100%;max-width:none;color:rgba(72, 72, 72, 0.3);background:transparent;cursor:default;border:none;}.flatpickr-innerContainer{display:block;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;background:#fff;border-bottom:1px solid #eceef1;}.flatpickr-rContainer{display:inline-block;padding:0;-webkit-box-sizing:border-box;box-sizing:border-box;}.flatpickr-time{text-align:center;outline:0;display:block;height:0;line-height:40px;max-height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background:#fff;border-radius:0 0 5px 5px;}.flatpickr-time:after{content:\"\";display:table;clear:both;}.flatpickr-time .numInputWrapper{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:40%;height:40px;float:left;}.flatpickr-time .numInputWrapper span.arrowUp:after{border-bottom-color:#484848;}.flatpickr-time .numInputWrapper span.arrowDown:after{border-top-color:#484848;}.flatpickr-time.hasSeconds .numInputWrapper{width:26%;}.flatpickr-time.time24hr .numInputWrapper{width:49%;}.flatpickr-time input{background:transparent;-webkit-box-shadow:none;box-shadow:none;border:0;border-radius:0;text-align:center;margin:0;padding:0;height:inherit;line-height:inherit;color:#484848;font-size:14px;position:relative;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;}.flatpickr-time input.flatpickr-hour{font-weight:bold;}.flatpickr-time input.flatpickr-minute,.flatpickr-time input.flatpickr-second{font-weight:400;}.flatpickr-time input:focus{outline:0;border:0;}.flatpickr-time .flatpickr-time-separator,.flatpickr-time .flatpickr-am-pm{height:inherit;float:left;line-height:inherit;color:#484848;font-weight:bold;width:2%;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-align-self:center;-ms-flex-item-align:center;align-self:center;}.flatpickr-time .flatpickr-am-pm{outline:0;width:18%;cursor:pointer;text-align:center;font-weight:400;}.flatpickr-time input:hover,.flatpickr-time .flatpickr-am-pm:hover,.flatpickr-time input:focus,.flatpickr-time .flatpickr-am-pm:focus{background:#eaeaea;}.flatpickr-input[readonly]{cursor:pointer;}@-webkit-keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0);}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}}@keyframes fpFadeInDown{from{opacity:0;-webkit-transform:translate3d(0, -20px, 0);transform:translate3d(0, -20px, 0);}to{opacity:1;-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0);}}span.flatpickr-day.selected{font-weight:bold;}'},\n 437: function _(e,t,a,i,r){i();const n=e(1).__importDefault(e(181)),s=e(438),d=e(8);class _ extends s.AbstractRangeSliderView{}a.DateRangeSliderView=_,_.__name__=\"DateRangeSliderView\";class l extends s.AbstractSlider{constructor(e){super(e),this.behaviour=\"drag\",this.connected=[!1,!0,!1]}static init_DateRangeSlider(){this.prototype.default_view=_,this.override({format:\"%d %b %Y\"})}_formatter(e,t){return d.isString(t)?n.default(e,t):t.compute(e)}}a.DateRangeSlider=l,l.__name__=\"DateRangeSlider\",l.init_DateRangeSlider()},\n 438: function _(t,e,i,s,l){s();const r=t(1),o=r.__importStar(t(439)),n=t(43),a=t(9),d=t(22),_=t(420),h=t(166),c=r.__importStar(t(440)),m=c,u=r.__importDefault(t(441)),p=r.__importStar(t(427));class b extends _.ControlView{*controls(){yield this.slider_el}get noUiSlider(){return this.slider_el.noUiSlider}connect_signals(){super.connect_signals();const{direction:t,orientation:e,tooltips:i}=this.model.properties;this.on_change([t,e,i],(()=>this.render()));const{start:s,end:l,value:r,step:o,title:n}=this.model.properties;this.on_change([s,l,r,o],(()=>{const{start:t,end:e,value:i,step:s}=this._calc_to();this.noUiSlider.updateOptions({range:{min:t,max:e},start:i,step:s})}));const{bar_color:a}=this.model.properties;this.on_change(a,(()=>{this._set_bar_color()}));const{show_value:d}=this.model.properties;this.on_change([r,n,d],(()=>this._update_title()))}styles(){return[...super.styles(),u.default,c.default]}_update_title(){var t;n.empty(this.title_el);const e=null==this.model.title||0==this.model.title.length&&!this.model.show_value;if(this.title_el.style.display=e?\"none\":\"\",!e&&(0!=(null===(t=this.model.title)||void 0===t?void 0:t.length)&&(this.title_el.textContent=`${this.model.title}: `),this.model.show_value)){const{value:t}=this._calc_to(),e=t.map((t=>this.model.pretty(t))).join(\" .. \");this.title_el.appendChild(n.span({class:m.slider_value},e))}}_set_bar_color(){if(!this.model.disabled){this.slider_el.querySelector(\".noUi-connect\").style.backgroundColor=d.color2css(this.model.bar_color)}}render(){super.render();const{start:t,end:e,value:i,step:s}=this._calc_to();let l;if(this.model.tooltips){const t={to:t=>this.model.pretty(t)};l=a.repeat(t,i.length)}else l=!1;if(null==this.slider_el){this.slider_el=n.div(),o.create(this.slider_el,{range:{min:t,max:e},start:i,step:s,behaviour:this.model.behaviour,connect:this.model.connected,tooltips:l,orientation:this.model.orientation,direction:this.model.direction}),this.noUiSlider.on(\"slide\",((t,e,i)=>this._slide(i))),this.noUiSlider.on(\"change\",((t,e,i)=>this._change(i)));const r=(t,e)=>{if(!l)return;this.slider_el.querySelectorAll(\".noUi-handle\")[t].querySelector(\".noUi-tooltip\").style.display=e?\"block\":\"\"};this.noUiSlider.on(\"start\",((t,e)=>r(e,!0))),this.noUiSlider.on(\"end\",((t,e)=>r(e,!1)))}else this.noUiSlider.updateOptions({range:{min:t,max:e},start:i,step:s});this._set_bar_color(),this.model.disabled?this.slider_el.setAttribute(\"disabled\",\"true\"):this.slider_el.removeAttribute(\"disabled\"),this.title_el=n.div({class:m.slider_title}),this._update_title(),this.group_el=n.div({class:p.input_group},this.title_el,this.slider_el),this.el.appendChild(this.group_el)}_slide(t){this.model.value=this._calc_from(t)}_change(t){const e=this._calc_from(t);this.model.setv({value:e,value_throttled:e})}}b.__name__=\"AbstractBaseSliderView\";class v extends b{_calc_to(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}}_calc_from([t]){return Number.isInteger(this.model.start)&&Number.isInteger(this.model.end)&&Number.isInteger(this.model.step)?Math.round(t):t}}i.AbstractSliderView=v,v.__name__=\"AbstractSliderView\";class g extends b{_calc_to(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}}_calc_from(t){return t}}i.AbstractRangeSliderView=g,g.__name__=\"AbstractRangeSliderView\";class S extends _.Control{constructor(t){super(t),this.connected=!1}static init_AbstractSlider(){this.define((({Any:t,Boolean:e,Number:i,String:s,Color:l,Or:r,Enum:o,Ref:n,Nullable:a})=>({title:[a(s),\"\"],show_value:[e,!0],start:[t],end:[t],value:[t],value_throttled:[t],step:[i,1],format:[r(s,n(h.TickFormatter))],direction:[o(\"ltr\",\"rtl\"),\"ltr\"],tooltips:[e,!0],bar_color:[l,\"#e6e6e6\"]})))}pretty(t){return this._formatter(t,this.format)}}i.AbstractSlider=S,S.__name__=\"AbstractSlider\",S.init_AbstractSlider()},\n 439: function _(t,e,r,n,i){\n /*! nouislider - 14.6.3 - 11/19/2020 */\n var o;o=function(){\"use strict\";var t=\"14.6.3\";function e(t){t.parentElement.removeChild(t)}function r(t){return null!=t}function n(t){t.preventDefault()}function i(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function o(t,e,r){r>0&&(u(t,e),setTimeout((function(){c(t,e)}),r))}function s(t){return Math.max(Math.min(t,100),0)}function a(t){return Array.isArray(t)?t:[t]}function l(t){var e=(t=String(t)).split(\".\");return e.length>1?e[1].length:0}function u(t,e){t.classList&&!/\\s/.test(e)?t.classList.add(e):t.className+=\" \"+e}function c(t,e){t.classList&&!/\\s/.test(e)?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function p(t){var e=void 0!==window.pageXOffset,r=\"CSS1Compat\"===(t.compatMode||\"\");return{x:e?window.pageXOffset:r?t.documentElement.scrollLeft:t.body.scrollLeft,y:e?window.pageYOffset:r?t.documentElement.scrollTop:t.body.scrollTop}}function f(t,e){return 100/(e-t)}function d(t,e,r){return 100*e/(t[r+1]-t[r])}function h(t,e){for(var r=1;t>=e[r];)r+=1;return r}function m(t,e,r){if(r>=t.slice(-1)[0])return 100;var n=h(r,t),i=t[n-1],o=t[n],s=e[n-1],a=e[n];return s+function(t,e){return d(t,t[0]<0?e+Math.abs(t[0]):e-t[0],0)}([i,o],r)/f(s,a)}function g(t,e,r,n){if(100===n)return n;var i=h(n,t),o=t[i-1],s=t[i];return r?n-o>(s-o)/2?s:o:e[i-1]?t[i-1]+function(t,e){return Math.round(t/e)*e}(n-t[i-1],e[i-1]):n}function v(t,e,r){var n;if(\"number\"==typeof e&&(e=[e]),!Array.isArray(e))throw new Error(\"noUiSlider (14.6.3): 'range' contains invalid value.\");if(!i(n=\"min\"===t?0:\"max\"===t?100:parseFloat(t))||!i(e[0]))throw new Error(\"noUiSlider (14.6.3): 'range' value isn't numeric.\");r.xPct.push(n),r.xVal.push(e[0]),n?r.xSteps.push(!isNaN(e[1])&&e[1]):isNaN(e[1])||(r.xSteps[0]=e[1]),r.xHighestCompleteStep.push(0)}function b(t,e,r){if(e)if(r.xVal[t]!==r.xVal[t+1]){r.xSteps[t]=d([r.xVal[t],r.xVal[t+1]],e,0)/f(r.xPct[t],r.xPct[t+1]);var n=(r.xVal[t+1]-r.xVal[t])/r.xNumSteps[t],i=Math.ceil(Number(n.toFixed(3))-1),o=r.xVal[t]+r.xNumSteps[t]*i;r.xHighestCompleteStep[t]=o}else r.xSteps[t]=r.xHighestCompleteStep[t]=r.xVal[t]}function x(t,e,r){var n;this.xPct=[],this.xVal=[],this.xSteps=[r||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i=[];for(n in t)t.hasOwnProperty(n)&&i.push([t[n],n]);for(i.length&&\"object\"==typeof i[0][0]?i.sort((function(t,e){return t[0][0]-e[0][0]})):i.sort((function(t,e){return t[0]-e[0]})),n=0;n<i.length;n++)v(i[n][1],i[n][0],this);for(this.xNumSteps=this.xSteps.slice(0),n=0;n<this.xNumSteps.length;n++)b(n,this.xNumSteps[n],this)}x.prototype.getDistance=function(t){var e,r=[];for(e=0;e<this.xNumSteps.length-1;e++){var n=this.xNumSteps[e];if(n&&t/n%1!=0)throw new Error(\"noUiSlider (14.6.3): 'limit', 'margin' and 'padding' of \"+this.xPct[e]+\"% range must be divisible by step.\");r[e]=d(this.xVal,t,e)}return r},x.prototype.getAbsoluteDistance=function(t,e,r){var n,i=0;if(t<this.xPct[this.xPct.length-1])for(;t>this.xPct[i+1];)i++;else t===this.xPct[this.xPct.length-1]&&(i=this.xPct.length-2);r||t!==this.xPct[i+1]||i++;var o=1,s=e[i],a=0,l=0,u=0,c=0;for(n=r?(t-this.xPct[i])/(this.xPct[i+1]-this.xPct[i]):(this.xPct[i+1]-t)/(this.xPct[i+1]-this.xPct[i]);s>0;)a=this.xPct[i+1+c]-this.xPct[i+c],e[i+c]*o+100-100*n>100?(l=a*n,o=(s-100*n)/e[i+c],n=1):(l=e[i+c]*a/100*o,o=0),r?(u-=l,this.xPct.length+c>=1&&c--):(u+=l,this.xPct.length-c>=1&&c++),s=e[i+c]*o;return t+u},x.prototype.toStepping=function(t){return t=m(this.xVal,this.xPct,t)},x.prototype.fromStepping=function(t){return function(t,e,r){if(r>=100)return t.slice(-1)[0];var n=h(r,e),i=t[n-1],o=t[n],s=e[n-1];return function(t,e){return e*(t[1]-t[0])/100+t[0]}([i,o],(r-s)*f(s,e[n]))}(this.xVal,this.xPct,t)},x.prototype.getStep=function(t){return t=g(this.xPct,this.xSteps,this.snap,t)},x.prototype.getDefaultStep=function(t,e,r){var n=h(t,this.xPct);return(100===t||e&&t===this.xPct[n-1])&&(n=Math.max(n-1,1)),(this.xVal[n]-this.xVal[n-1])/r},x.prototype.getNearbySteps=function(t){var e=h(t,this.xPct);return{stepBefore:{startValue:this.xVal[e-2],step:this.xNumSteps[e-2],highestStep:this.xHighestCompleteStep[e-2]},thisStep:{startValue:this.xVal[e-1],step:this.xNumSteps[e-1],highestStep:this.xHighestCompleteStep[e-1]},stepAfter:{startValue:this.xVal[e],step:this.xNumSteps[e],highestStep:this.xHighestCompleteStep[e]}}},x.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(l);return Math.max.apply(null,t)},x.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var S={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number},w={target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",touchArea:\"touch-area\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",connects:\"connects\",ltr:\"ltr\",rtl:\"rtl\",textDirectionLtr:\"txt-dir-ltr\",textDirectionRtl:\"txt-dir-rtl\",draggable:\"draggable\",drag:\"state-drag\",tap:\"state-tap\",active:\"active\",tooltip:\"tooltip\",pips:\"pips\",pipsHorizontal:\"pips-horizontal\",pipsVertical:\"pips-vertical\",marker:\"marker\",markerHorizontal:\"marker-horizontal\",markerVertical:\"marker-vertical\",markerNormal:\"marker-normal\",markerLarge:\"marker-large\",markerSub:\"marker-sub\",value:\"value\",valueHorizontal:\"value-horizontal\",valueVertical:\"value-vertical\",valueNormal:\"value-normal\",valueLarge:\"value-large\",valueSub:\"value-sub\"},y=\".__tooltips\",E=\".__aria\";function C(t){if(function(t){return\"object\"==typeof t&&\"function\"==typeof t.to&&\"function\"==typeof t.from}(t))return!0;throw new Error(\"noUiSlider (14.6.3): 'format' requires 'to' and 'from' methods.\")}function P(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'step' is not numeric.\");t.singleStep=e}function N(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'keyboardPageMultiplier' is not numeric.\");t.keyboardPageMultiplier=e}function k(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'keyboardDefaultStep' is not numeric.\");t.keyboardDefaultStep=e}function U(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider (14.6.3): 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider (14.6.3): Missing 'min' or 'max' in 'range'.\");if(e.min===e.max)throw new Error(\"noUiSlider (14.6.3): 'range' 'min' and 'max' cannot be equal.\");t.spectrum=new x(e,t.snap,t.singleStep)}function A(t,e){if(e=a(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider (14.6.3): 'start' option is incorrect.\");t.handles=e.length,t.start=e}function V(t,e){if(t.snap=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'snap' option must be a boolean.\")}function D(t,e){if(t.animate=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'animate' option must be a boolean.\")}function M(t,e){if(t.animationDuration=e,\"number\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'animationDuration' option must be a number.\")}function O(t,e){var r,n=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(r=1;r<t.handles;r++)n.push(e);n.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider (14.6.3): 'connect' option doesn't match handle count.\");n=e}t.connect=n}function L(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider (14.6.3): 'orientation' option is invalid.\")}}function z(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'margin' option must be numeric.\");0!==e&&(t.margin=t.spectrum.getDistance(e))}function H(t,e){if(!i(e))throw new Error(\"noUiSlider (14.6.3): 'limit' option must be numeric.\");if(t.limit=t.spectrum.getDistance(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider (14.6.3): 'limit' option is only supported on linear sliders with 2 or more handles.\")}function j(t,e){var r;if(!i(e)&&!Array.isArray(e))throw new Error(\"noUiSlider (14.6.3): 'padding' option must be numeric or array of exactly 2 numbers.\");if(Array.isArray(e)&&2!==e.length&&!i(e[0])&&!i(e[1]))throw new Error(\"noUiSlider (14.6.3): 'padding' option must be numeric or array of exactly 2 numbers.\");if(0!==e){for(Array.isArray(e)||(e=[e,e]),t.padding=[t.spectrum.getDistance(e[0]),t.spectrum.getDistance(e[1])],r=0;r<t.spectrum.xNumSteps.length-1;r++)if(t.padding[0][r]<0||t.padding[1][r]<0)throw new Error(\"noUiSlider (14.6.3): 'padding' option must be a positive number(s).\");var n=e[0]+e[1],o=t.spectrum.xVal[0];if(n/(t.spectrum.xVal[t.spectrum.xVal.length-1]-o)>1)throw new Error(\"noUiSlider (14.6.3): 'padding' option must not exceed 100% of the range.\")}}function F(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider (14.6.3): 'direction' option was not recognized.\")}}function R(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'behaviour' must be a string containing options.\");var r=e.indexOf(\"tap\")>=0,n=e.indexOf(\"drag\")>=0,i=e.indexOf(\"fixed\")>=0,o=e.indexOf(\"snap\")>=0,s=e.indexOf(\"hover\")>=0,a=e.indexOf(\"unconstrained\")>=0;if(i){if(2!==t.handles)throw new Error(\"noUiSlider (14.6.3): 'fixed' behaviour must be used with 2 handles\");z(t,t.start[1]-t.start[0])}if(a&&(t.margin||t.limit))throw new Error(\"noUiSlider (14.6.3): 'unconstrained' behaviour cannot be used with margin or limit\");t.events={tap:r||o,drag:n,fixed:i,snap:o,hover:s,unconstrained:a}}function T(t,e){if(!1!==e)if(!0===e){t.tooltips=[];for(var r=0;r<t.handles;r++)t.tooltips.push(!0)}else{if(t.tooltips=a(e),t.tooltips.length!==t.handles)throw new Error(\"noUiSlider (14.6.3): must pass a formatter for all handles.\");t.tooltips.forEach((function(t){if(\"boolean\"!=typeof t&&(\"object\"!=typeof t||\"function\"!=typeof t.to))throw new Error(\"noUiSlider (14.6.3): 'tooltips' must be passed a formatter or 'false'.\")}))}}function _(t,e){t.ariaFormat=e,C(e)}function B(t,e){t.format=e,C(e)}function q(t,e){if(t.keyboardSupport=e,\"boolean\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'keyboardSupport' option must be a boolean.\")}function X(t,e){t.documentElement=e}function Y(t,e){if(\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider (14.6.3): 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function I(t,e){if(\"object\"!=typeof e)throw new Error(\"noUiSlider (14.6.3): 'cssClasses' must be an object.\");if(\"string\"==typeof t.cssPrefix)for(var r in t.cssClasses={},e)e.hasOwnProperty(r)&&(t.cssClasses[r]=t.cssPrefix+e[r]);else t.cssClasses=e}function W(t){var e={margin:0,limit:0,padding:0,animate:!0,animationDuration:300,ariaFormat:S,format:S},n={step:{r:!1,t:P},keyboardPageMultiplier:{r:!1,t:N},keyboardDefaultStep:{r:!1,t:k},start:{r:!0,t:A},connect:{r:!0,t:O},direction:{r:!0,t:F},snap:{r:!1,t:V},animate:{r:!1,t:D},animationDuration:{r:!1,t:M},range:{r:!0,t:U},orientation:{r:!1,t:L},margin:{r:!1,t:z},limit:{r:!1,t:H},padding:{r:!1,t:j},behaviour:{r:!0,t:R},ariaFormat:{r:!1,t:_},format:{r:!1,t:B},tooltips:{r:!1,t:T},keyboardSupport:{r:!0,t:q},documentElement:{r:!1,t:X},cssPrefix:{r:!0,t:Y},cssClasses:{r:!0,t:I}},i={connect:!1,direction:\"ltr\",behaviour:\"tap\",orientation:\"horizontal\",keyboardSupport:!0,cssPrefix:\"noUi-\",cssClasses:w,keyboardPageMultiplier:5,keyboardDefaultStep:10};t.format&&!t.ariaFormat&&(t.ariaFormat=t.format),Object.keys(n).forEach((function(o){if(!r(t[o])&&void 0===i[o]){if(n[o].r)throw new Error(\"noUiSlider (14.6.3): '\"+o+\"' is required.\");return!0}n[o].t(e,r(t[o])?t[o]:i[o])})),e.pips=t.pips;var o=document.createElement(\"div\"),s=void 0!==o.style.msTransform,a=void 0!==o.style.transform;return e.transformRule=a?\"transform\":s?\"msTransform\":\"webkitTransform\",e.style=[[\"left\",\"top\"],[\"right\",\"bottom\"]][e.dir][e.ort],e}function $(t,r,i){var l,f,d,h,m,g,v,b,x=window.navigator.pointerEnabled?{start:\"pointerdown\",move:\"pointermove\",end:\"pointerup\"}:window.navigator.msPointerEnabled?{start:\"MSPointerDown\",move:\"MSPointerMove\",end:\"MSPointerUp\"}:{start:\"mousedown touchstart\",move:\"mousemove touchmove\",end:\"mouseup touchend\"},S=window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\")&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}(),w=t,C=r.spectrum,P=[],N=[],k=[],U=0,A={},V=t.ownerDocument,D=r.documentElement||V.documentElement,M=V.body,O=\"rtl\"===V.dir||1===r.ort?0:100;function L(t,e){var r=V.createElement(\"div\");return e&&u(r,e),t.appendChild(r),r}function z(t,e){var n=L(t,r.cssClasses.origin),i=L(n,r.cssClasses.handle);return L(i,r.cssClasses.touchArea),i.setAttribute(\"data-handle\",e),r.keyboardSupport&&(i.setAttribute(\"tabindex\",\"0\"),i.addEventListener(\"keydown\",(function(t){return function(t,e){if(F()||R(e))return!1;var n=[\"Left\",\"Right\"],i=[\"Down\",\"Up\"],o=[\"PageDown\",\"PageUp\"],s=[\"Home\",\"End\"];r.dir&&!r.ort?n.reverse():r.ort&&!r.dir&&(i.reverse(),o.reverse());var a,l=t.key.replace(\"Arrow\",\"\"),u=l===o[0],c=l===o[1],p=l===i[0]||l===n[0]||u,f=l===i[1]||l===n[1]||c,d=l===s[0],h=l===s[1];if(!(p||f||d||h))return!0;if(t.preventDefault(),f||p){var m=r.keyboardPageMultiplier,g=p?0:1,v=ht(e)[g];if(null===v)return!1;!1===v&&(v=C.getDefaultStep(N[e],p,r.keyboardDefaultStep)),(c||u)&&(v*=m),v=Math.max(v,1e-7),v*=p?-1:1,a=P[e]+v}else a=h?r.spectrum.xVal[r.spectrum.xVal.length-1]:r.spectrum.xVal[0];return ut(e,C.toStepping(a),!0,!0),nt(\"slide\",e),nt(\"update\",e),nt(\"change\",e),nt(\"set\",e),!1}(t,e)}))),i.setAttribute(\"role\",\"slider\"),i.setAttribute(\"aria-orientation\",r.ort?\"vertical\":\"horizontal\"),0===e?u(i,r.cssClasses.handleLower):e===r.handles-1&&u(i,r.cssClasses.handleUpper),n}function H(t,e){return!!e&&L(t,r.cssClasses.connect)}function j(t,e){return!!r.tooltips[e]&&L(t.firstChild,r.cssClasses.tooltip)}function F(){return w.hasAttribute(\"disabled\")}function R(t){return f[t].hasAttribute(\"disabled\")}function T(){m&&(rt(\"update\"+y),m.forEach((function(t){t&&e(t)})),m=null)}function _(){T(),m=f.map(j),et(\"update\"+y,(function(t,e,n){if(m[e]){var i=t[e];!0!==r.tooltips[e]&&(i=r.tooltips[e].to(n[e])),m[e].innerHTML=i}}))}function B(t,e,n){var i=V.createElement(\"div\"),o=[];o[0]=r.cssClasses.valueNormal,o[1]=r.cssClasses.valueLarge,o[2]=r.cssClasses.valueSub;var s=[];s[0]=r.cssClasses.markerNormal,s[1]=r.cssClasses.markerLarge,s[2]=r.cssClasses.markerSub;var a=[r.cssClasses.valueHorizontal,r.cssClasses.valueVertical],l=[r.cssClasses.markerHorizontal,r.cssClasses.markerVertical];function c(t,e){var n=e===r.cssClasses.value,i=n?o:s;return e+\" \"+(n?a:l)[r.ort]+\" \"+i[t]}return u(i,r.cssClasses.pips),u(i,0===r.ort?r.cssClasses.pipsHorizontal:r.cssClasses.pipsVertical),Object.keys(t).forEach((function(o){!function(t,o,s){if(-1!==(s=e?e(o,s):s)){var a=L(i,!1);a.className=c(s,r.cssClasses.marker),a.style[r.style]=t+\"%\",s>0&&((a=L(i,!1)).className=c(s,r.cssClasses.value),a.setAttribute(\"data-value\",o),a.style[r.style]=t+\"%\",a.innerHTML=n.to(o))}}(o,t[o][0],t[o][1])})),i}function q(){h&&(e(h),h=null)}function X(t){q();var e=t.mode,r=t.density||1,n=t.filter||!1,i=function(t,e,r){if(\"range\"===t||\"steps\"===t)return C.xVal;if(\"count\"===t){if(e<2)throw new Error(\"noUiSlider (14.6.3): 'values' (>= 2) required for mode 'count'.\");var n=e-1,i=100/n;for(e=[];n--;)e[n]=n*i;e.push(100),t=\"positions\"}return\"positions\"===t?e.map((function(t){return C.fromStepping(r?C.getStep(t):t)})):\"values\"===t?r?e.map((function(t){return C.fromStepping(C.getStep(C.toStepping(t)))})):e:void 0}(e,t.values||!1,t.stepped||!1),o=function(t,e,r){var n,i={},o=C.xVal[0],s=C.xVal[C.xVal.length-1],a=!1,l=!1,u=0;return n=r.slice().sort((function(t,e){return t-e})),(r=n.filter((function(t){return!this[t]&&(this[t]=!0)}),{}))[0]!==o&&(r.unshift(o),a=!0),r[r.length-1]!==s&&(r.push(s),l=!0),r.forEach((function(n,o){var s,c,p,f,d,h,m,g,v,b,x=n,S=r[o+1],w=\"steps\"===e;if(w&&(s=C.xNumSteps[o]),s||(s=S-x),!1!==x)for(void 0===S&&(S=x),s=Math.max(s,1e-7),c=x;c<=S;c=(c+s).toFixed(7)/1){for(g=(d=(f=C.toStepping(c))-u)/t,b=d/(v=Math.round(g)),p=1;p<=v;p+=1)i[(h=u+p*b).toFixed(5)]=[C.fromStepping(h),0];m=r.indexOf(c)>-1?1:w?2:0,!o&&a&&c!==S&&(m=0),c===S&&l||(i[f.toFixed(5)]=[c,m]),u=f}})),i}(r,e,i),s=t.format||{to:Math.round};return h=w.appendChild(B(o,n,s))}function Y(){var t=l.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][r.ort];return 0===r.ort?t.width||l[e]:t.height||l[e]}function I(t,e,n,i){var o=function(o){return!!(o=function(t,e,r){var n,i,o=0===t.type.indexOf(\"touch\"),s=0===t.type.indexOf(\"mouse\"),a=0===t.type.indexOf(\"pointer\");if(0===t.type.indexOf(\"MSPointer\")&&(a=!0),\"mousedown\"===t.type&&!t.buttons&&!t.touches)return!1;if(o){var l=function(t){return t.target===r||r.contains(t.target)||t.target.shadowRoot&&t.target.shadowRoot.contains(r)};if(\"touchstart\"===t.type){var u=Array.prototype.filter.call(t.touches,l);if(u.length>1)return!1;n=u[0].pageX,i=u[0].pageY}else{var c=Array.prototype.find.call(t.changedTouches,l);if(!c)return!1;n=c.pageX,i=c.pageY}}return e=e||p(V),(s||a)&&(n=t.clientX+e.x,i=t.clientY+e.y),t.pageOffset=e,t.points=[n,i],t.cursor=s||a,t}(o,i.pageOffset,i.target||e))&&!(F()&&!i.doNotReject)&&(s=w,a=r.cssClasses.tap,!((s.classList?s.classList.contains(a):new RegExp(\"\\\\b\"+a+\"\\\\b\").test(s.className))&&!i.doNotReject)&&!(t===x.start&&void 0!==o.buttons&&o.buttons>1)&&(!i.hover||!o.buttons)&&(S||o.preventDefault(),o.calcPoint=o.points[r.ort],void n(o,i)));var s,a},s=[];return t.split(\" \").forEach((function(t){e.addEventListener(t,o,!!S&&{passive:!0}),s.push([t,o])})),s}function $(t){var e,n,i,o,a,u,c=100*(t-(e=l,n=r.ort,i=e.getBoundingClientRect(),o=e.ownerDocument,a=o.documentElement,u=p(o),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(u.x=0),n?i.top+u.y-a.clientTop:i.left+u.x-a.clientLeft))/Y();return c=s(c),r.dir?100-c:c}function G(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&K(t,e)}function J(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return K(t,e);var n=(r.dir?-1:1)*(t.calcPoint-e.startCalcPoint);st(n>0,100*n/e.baseSize,e.locations,e.handleNumbers)}function K(t,e){e.handle&&(c(e.handle,r.cssClasses.active),U-=1),e.listeners.forEach((function(t){D.removeEventListener(t[0],t[1])})),0===U&&(c(w,r.cssClasses.drag),lt(),t.cursor&&(M.style.cursor=\"\",M.removeEventListener(\"selectstart\",n))),e.handleNumbers.forEach((function(t){nt(\"change\",t),nt(\"set\",t),nt(\"end\",t)}))}function Q(t,e){if(e.handleNumbers.some(R))return!1;var i;1===e.handleNumbers.length&&(i=f[e.handleNumbers[0]].children[0],U+=1,u(i,r.cssClasses.active)),t.stopPropagation();var o=[],s=I(x.move,D,J,{target:t.target,handle:i,listeners:o,startCalcPoint:t.calcPoint,baseSize:Y(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:N.slice()}),a=I(x.end,D,K,{target:t.target,handle:i,listeners:o,doNotReject:!0,handleNumbers:e.handleNumbers}),l=I(\"mouseout\",D,G,{target:t.target,handle:i,listeners:o,doNotReject:!0,handleNumbers:e.handleNumbers});o.push.apply(o,s.concat(a,l)),t.cursor&&(M.style.cursor=getComputedStyle(t.target).cursor,f.length>1&&u(w,r.cssClasses.drag),M.addEventListener(\"selectstart\",n,!1)),e.handleNumbers.forEach((function(t){nt(\"start\",t)}))}function Z(t){t.stopPropagation();var e=$(t.calcPoint),n=function(t){var e=100,r=!1;return f.forEach((function(n,i){if(!R(i)){var o=N[i],s=Math.abs(o-t);(s<e||s<=e&&t>o||100===s&&100===e)&&(r=i,e=s)}})),r}(e);if(!1===n)return!1;r.events.snap||o(w,r.cssClasses.tap,r.animationDuration),ut(n,e,!0,!0),lt(),nt(\"slide\",n,!0),nt(\"update\",n,!0),nt(\"change\",n,!0),nt(\"set\",n,!0),r.events.snap&&Q(t,{handleNumbers:[n]})}function tt(t){var e=$(t.calcPoint),r=C.getStep(e),n=C.fromStepping(r);Object.keys(A).forEach((function(t){\"hover\"===t.split(\".\")[0]&&A[t].forEach((function(t){t.call(g,n)}))}))}function et(t,e){A[t]=A[t]||[],A[t].push(e),\"update\"===t.split(\".\")[0]&&f.forEach((function(t,e){nt(\"update\",e)}))}function rt(t){var e=t&&t.split(\".\")[0],r=e?t.substring(e.length):t;Object.keys(A).forEach((function(t){var n=t.split(\".\")[0],i=t.substring(n.length);e&&e!==n||r&&r!==i||function(t){return t===E||t===y}(i)&&r!==i||delete A[t]}))}function nt(t,e,n){Object.keys(A).forEach((function(i){var o=i.split(\".\")[0];t===o&&A[i].forEach((function(t){t.call(g,P.map(r.format.to),e,P.slice(),n||!1,N.slice(),g)}))}))}function it(t,e,n,i,o,a){var l;return f.length>1&&!r.events.unconstrained&&(i&&e>0&&(l=C.getAbsoluteDistance(t[e-1],r.margin,0),n=Math.max(n,l)),o&&e<f.length-1&&(l=C.getAbsoluteDistance(t[e+1],r.margin,1),n=Math.min(n,l))),f.length>1&&r.limit&&(i&&e>0&&(l=C.getAbsoluteDistance(t[e-1],r.limit,0),n=Math.min(n,l)),o&&e<f.length-1&&(l=C.getAbsoluteDistance(t[e+1],r.limit,1),n=Math.max(n,l))),r.padding&&(0===e&&(l=C.getAbsoluteDistance(0,r.padding[0],0),n=Math.max(n,l)),e===f.length-1&&(l=C.getAbsoluteDistance(100,r.padding[1],1),n=Math.min(n,l))),!((n=s(n=C.getStep(n)))===t[e]&&!a)&&n}function ot(t,e){var n=r.ort;return(n?e:t)+\", \"+(n?t:e)}function st(t,e,r,n){var i=r.slice(),o=[!t,t],s=[t,!t];n=n.slice(),t&&n.reverse(),n.length>1?n.forEach((function(t,r){var n=it(i,t,i[t]+e,o[r],s[r],!1);!1===n?e=0:(e=n-i[t],i[t]=n)})):o=s=[!0];var a=!1;n.forEach((function(t,n){a=ut(t,r[t]+e,o[n],s[n])||a})),a&&n.forEach((function(t){nt(\"update\",t),nt(\"slide\",t)}))}function at(t,e){return r.dir?100-t-e:t}function lt(){k.forEach((function(t){var e=N[t]>50?-1:1,r=3+(f.length+e*t);f[t].style.zIndex=r}))}function ut(t,e,n,i,o){return o||(e=it(N,t,e,n,i,!1)),!1!==e&&(function(t,e){N[t]=e,P[t]=C.fromStepping(e);var n=\"translate(\"+ot(10*(at(e,0)-O)+\"%\",\"0\")+\")\";f[t].style[r.transformRule]=n,ct(t),ct(t+1)}(t,e),!0)}function ct(t){if(d[t]){var e=0,n=100;0!==t&&(e=N[t-1]),t!==d.length-1&&(n=N[t]);var i=n-e,o=\"translate(\"+ot(at(e,i)+\"%\",\"0\")+\")\",s=\"scale(\"+ot(i/100,\"1\")+\")\";d[t].style[r.transformRule]=o+\" \"+s}}function pt(t,e){return null===t||!1===t||void 0===t?N[e]:(\"number\"==typeof t&&(t=String(t)),t=r.format.from(t),!1===(t=C.toStepping(t))||isNaN(t)?N[e]:t)}function ft(t,e,n){var i=a(t),s=void 0===N[0];e=void 0===e||!!e,r.animate&&!s&&o(w,r.cssClasses.tap,r.animationDuration),k.forEach((function(t){ut(t,pt(i[t],t),!0,!1,n)}));for(var l=1===k.length?0:1;l<k.length;++l)k.forEach((function(t){ut(t,N[t],!0,!0,n)}));lt(),k.forEach((function(t){nt(\"update\",t),null!==i[t]&&e&&nt(\"set\",t)}))}function dt(){var t=P.map(r.format.to);return 1===t.length?t[0]:t}function ht(t){var e=N[t],n=C.getNearbySteps(e),i=P[t],o=n.thisStep.step,s=null;if(r.snap)return[i-n.stepBefore.startValue||null,n.stepAfter.startValue-i||null];!1!==o&&i+o>n.stepAfter.startValue&&(o=n.stepAfter.startValue-i),s=i>n.thisStep.startValue?n.thisStep.step:!1!==n.stepBefore.step&&i-n.stepBefore.highestStep,100===e?o=null:0===e&&(s=null);var a=C.countStepDecimals();return null!==o&&!1!==o&&(o=Number(o.toFixed(a))),null!==s&&!1!==s&&(s=Number(s.toFixed(a))),[s,o]}return u(v=w,r.cssClasses.target),0===r.dir?u(v,r.cssClasses.ltr):u(v,r.cssClasses.rtl),0===r.ort?u(v,r.cssClasses.horizontal):u(v,r.cssClasses.vertical),u(v,\"rtl\"===getComputedStyle(v).direction?r.cssClasses.textDirectionRtl:r.cssClasses.textDirectionLtr),l=L(v,r.cssClasses.base),function(t,e){var n=L(e,r.cssClasses.connects);f=[],(d=[]).push(H(n,t[0]));for(var i=0;i<r.handles;i++)f.push(z(e,i)),k[i]=i,d.push(H(n,t[i+1]))}(r.connect,l),(b=r.events).fixed||f.forEach((function(t,e){I(x.start,t.children[0],Q,{handleNumbers:[e]})})),b.tap&&I(x.start,l,Z,{}),b.hover&&I(x.move,l,tt,{hover:!0}),b.drag&&d.forEach((function(t,e){if(!1!==t&&0!==e&&e!==d.length-1){var n=f[e-1],i=f[e],o=[t];u(t,r.cssClasses.draggable),b.fixed&&(o.push(n.children[0]),o.push(i.children[0])),o.forEach((function(t){I(x.start,t,Q,{handles:[n,i],handleNumbers:[e-1,e]})}))}})),ft(r.start),r.pips&&X(r.pips),r.tooltips&&_(),rt(\"update\"+E),et(\"update\"+E,(function(t,e,n,i,o){k.forEach((function(t){var e=f[t],i=it(N,t,0,!0,!0,!0),s=it(N,t,100,!0,!0,!0),a=o[t],l=r.ariaFormat.to(n[t]);i=C.fromStepping(i).toFixed(1),s=C.fromStepping(s).toFixed(1),a=C.fromStepping(a).toFixed(1),e.children[0].setAttribute(\"aria-valuemin\",i),e.children[0].setAttribute(\"aria-valuemax\",s),e.children[0].setAttribute(\"aria-valuenow\",a),e.children[0].setAttribute(\"aria-valuetext\",l)}))})),g={destroy:function(){for(var t in rt(E),rt(y),r.cssClasses)r.cssClasses.hasOwnProperty(t)&&c(w,r.cssClasses[t]);for(;w.firstChild;)w.removeChild(w.firstChild);delete w.noUiSlider},steps:function(){return k.map(ht)},on:et,off:rt,get:dt,set:ft,setHandle:function(t,e,r,n){if(!((t=Number(t))>=0&&t<k.length))throw new Error(\"noUiSlider (14.6.3): invalid handle number, got: \"+t);ut(t,pt(e,t),!0,!0,n),nt(\"update\",t),r&&nt(\"set\",t)},reset:function(t){ft(r.start,t)},__moveHandles:function(t,e,r){st(t,e,N,r)},options:i,updateOptions:function(t,e){var n=dt(),o=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\",\"pips\",\"tooltips\"];o.forEach((function(e){void 0!==t[e]&&(i[e]=t[e])}));var s=W(i);o.forEach((function(e){void 0!==t[e]&&(r[e]=s[e])})),C=s.spectrum,r.margin=s.margin,r.limit=s.limit,r.padding=s.padding,r.pips?X(r.pips):q(),r.tooltips?_():T(),N=[],ft(t.start||n,e)},target:w,removePips:q,removeTooltips:T,getTooltips:function(){return m},getOrigins:function(){return f},pips:X}}return{__spectrum:x,version:t,cssClasses:w,create:function(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider (14.6.3): create requires a single element, got: \"+t);if(t.noUiSlider)throw new Error(\"noUiSlider (14.6.3): Slider was already initialized.\");var r=$(t,W(e),e);return t.noUiSlider=r,r}}},\"function\"==typeof define&&define.amd?define([],o):\"object\"==typeof r?e.exports=o():window.noUiSlider=o()},\n 440: function _(e,t,l,i,o){i(),l.root=\"bk-root\",l.slider_title=\"bk-slider-title\",l.slider_value=\"bk-slider-value\",l.default=\".bk-root .bk-slider-title{white-space:nowrap;}.bk-root .bk-slider-value{font-weight:600;}\"},\n 441: function _(o,t,r,i,n){i(),r.root=\"bk-root\",r.default='.bk-root{}.bk-root .noUi-target,.bk-root .noUi-target *{-webkit-touch-callout:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);-webkit-user-select:none;-ms-touch-action:none;touch-action:none;-ms-user-select:none;-moz-user-select:none;user-select:none;-moz-box-sizing:border-box;box-sizing:border-box;}.bk-root .noUi-target{position:relative;}.bk-root .noUi-base,.bk-root .noUi-connects{width:100%;height:100%;position:relative;z-index:1;}.bk-root .noUi-connects{overflow:hidden;z-index:0;}.bk-root .noUi-connect,.bk-root .noUi-origin{will-change:transform;position:absolute;z-index:1;top:0;right:0;-ms-transform-origin:0 0;-webkit-transform-origin:0 0;-webkit-transform-style:preserve-3d;transform-origin:0 0;transform-style:flat;}.bk-root .noUi-connect{height:100%;width:100%;}.bk-root .noUi-origin{height:10%;width:10%;}.bk-root .noUi-txt-dir-rtl.noUi-horizontal .noUi-origin{left:0;right:auto;}.bk-root .noUi-vertical .noUi-origin{width:0;}.bk-root .noUi-horizontal .noUi-origin{height:0;}.bk-root .noUi-handle{-webkit-backface-visibility:hidden;backface-visibility:hidden;position:absolute;}.bk-root .noUi-touch-area{height:100%;width:100%;}.bk-root .noUi-state-tap .noUi-connect,.bk-root .noUi-state-tap .noUi-origin{-webkit-transition:transform 0.3s;transition:transform 0.3s;}.bk-root .noUi-state-drag *{cursor:inherit !important;}.bk-root .noUi-horizontal{height:18px;}.bk-root .noUi-horizontal .noUi-handle{width:34px;height:28px;right:-17px;top:-6px;}.bk-root .noUi-vertical{width:18px;}.bk-root .noUi-vertical .noUi-handle{width:28px;height:34px;right:-6px;top:-17px;}.bk-root .noUi-txt-dir-rtl.noUi-horizontal .noUi-handle{left:-17px;right:auto;}.bk-root .noUi-target{background:#FAFAFA;border-radius:4px;border:1px solid #D3D3D3;box-shadow:inset 0 1px 1px #F0F0F0, 0 3px 6px -5px #BBB;}.bk-root .noUi-connects{border-radius:3px;}.bk-root .noUi-connect{background:#3FB8AF;}.bk-root .noUi-draggable{cursor:ew-resize;}.bk-root .noUi-vertical .noUi-draggable{cursor:ns-resize;}.bk-root .noUi-handle{border:1px solid #D9D9D9;border-radius:3px;background:#FFF;cursor:default;box-shadow:inset 0 0 1px #FFF, inset 0 1px 7px #EBEBEB, 0 3px 6px -3px #BBB;}.bk-root .noUi-active{box-shadow:inset 0 0 1px #FFF, inset 0 1px 7px #DDD, 0 3px 6px -3px #BBB;}.bk-root .noUi-handle:before,.bk-root .noUi-handle:after{content:\"\";display:block;position:absolute;height:14px;width:1px;background:#E8E7E6;left:14px;top:6px;}.bk-root .noUi-handle:after{left:17px;}.bk-root .noUi-vertical .noUi-handle:before,.bk-root .noUi-vertical .noUi-handle:after{width:14px;height:1px;left:6px;top:14px;}.bk-root .noUi-vertical .noUi-handle:after{top:17px;}.bk-root [disabled] .noUi-connect{background:#B8B8B8;}.bk-root [disabled].noUi-target,.bk-root [disabled].noUi-handle,.bk-root [disabled] .noUi-handle{cursor:not-allowed;}.bk-root .noUi-pips,.bk-root .noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box;}.bk-root .noUi-pips{position:absolute;color:#999;}.bk-root .noUi-value{position:absolute;white-space:nowrap;text-align:center;}.bk-root .noUi-value-sub{color:#ccc;font-size:10px;}.bk-root .noUi-marker{position:absolute;background:#CCC;}.bk-root .noUi-marker-sub{background:#AAA;}.bk-root .noUi-marker-large{background:#AAA;}.bk-root .noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%;}.bk-root .noUi-value-horizontal{-webkit-transform:translate(-50%, 50%);transform:translate(-50%, 50%);}.bk-root .noUi-rtl .noUi-value-horizontal{-webkit-transform:translate(50%, 50%);transform:translate(50%, 50%);}.bk-root .noUi-marker-horizontal.noUi-marker{margin-left:-1px;width:2px;height:5px;}.bk-root .noUi-marker-horizontal.noUi-marker-sub{height:10px;}.bk-root .noUi-marker-horizontal.noUi-marker-large{height:15px;}.bk-root .noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%;}.bk-root .noUi-value-vertical{-webkit-transform:translate(0, -50%);transform:translate(0, -50%);padding-left:25px;}.bk-root .noUi-rtl .noUi-value-vertical{-webkit-transform:translate(0, 50%);transform:translate(0, 50%);}.bk-root .noUi-marker-vertical.noUi-marker{width:5px;height:2px;margin-top:-1px;}.bk-root .noUi-marker-vertical.noUi-marker-sub{width:10px;}.bk-root .noUi-marker-vertical.noUi-marker-large{width:15px;}.bk-root .noUi-tooltip{display:block;position:absolute;border:1px solid #D9D9D9;border-radius:3px;background:#fff;color:#000;padding:5px;text-align:center;white-space:nowrap;}.bk-root .noUi-horizontal .noUi-tooltip{-webkit-transform:translate(-50%, 0);transform:translate(-50%, 0);left:50%;bottom:120%;}.bk-root .noUi-vertical .noUi-tooltip{-webkit-transform:translate(0, -50%);transform:translate(0, -50%);top:50%;right:120%;}.bk-root .noUi-horizontal .noUi-origin > .noUi-tooltip{-webkit-transform:translate(50%, 0);transform:translate(50%, 0);left:auto;bottom:10px;}.bk-root .noUi-vertical .noUi-origin > .noUi-tooltip{-webkit-transform:translate(0, -18px);transform:translate(0, -18px);top:auto;right:28px;}.bk-root .noUi-handle{cursor:grab;cursor:-webkit-grab;}.bk-root .noUi-handle.noUi-active{cursor:grabbing;cursor:-webkit-grabbing;}.bk-root .noUi-handle:after,.bk-root .noUi-handle:before{display:none;}.bk-root .noUi-tooltip{display:none;white-space:nowrap;}.bk-root .noUi-handle:hover .noUi-tooltip{display:block;}.bk-root .noUi-horizontal{width:100%;height:10px;}.bk-root .noUi-vertical{width:10px;height:100%;}.bk-root .noUi-horizontal .noUi-handle{width:14px;height:18px;right:-7px;top:-5px;}.bk-root .noUi-vertical .noUi-handle{width:18px;height:14px;right:-5px;top:-7px;}.bk-root .noUi-target.noUi-horizontal{margin:5px 0px;}.bk-root .noUi-target.noUi-vertical{margin:0px 5px;}'},\n 442: function _(t,e,i,r,a){r();const s=t(1).__importDefault(t(181)),d=t(438),_=t(8);class n extends d.AbstractSliderView{}i.DateSliderView=n,n.__name__=\"DateSliderView\";class l extends d.AbstractSlider{constructor(t){super(t),this.behaviour=\"tap\",this.connected=[!0,!1]}static init_DateSlider(){this.prototype.default_view=n,this.override({format:\"%d %b %Y\"})}_formatter(t,e){return _.isString(e)?s.default(t,e):e.compute(t)}}i.DateSlider=l,l.__name__=\"DateSlider\",l.init_DateSlider()},\n 443: function _(e,t,i,n,s){n();const r=e(444);class _ extends r.MarkupView{render(){super.render(),this.model.render_as_text?this.markup_el.textContent=this.model.text:this.markup_el.innerHTML=this.model.text}}i.DivView=_,_.__name__=\"DivView\";class a extends r.Markup{constructor(e){super(e)}static init_Div(){this.prototype.default_view=_,this.define((({Boolean:e})=>({render_as_text:[e,!1]})))}}i.Div=a,a.__name__=\"Div\",a.init_Div()},\n 444: function _(t,e,s,i,a){i();const n=t(1),l=t(224),r=t(43),c=t(488),u=n.__importStar(t(445));class _ extends c.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>{this.layout.invalidate_cache(),this.render(),this.root.compute_layout()}))}styles(){return[...super.styles(),u.default]}_update_layout(){this.layout=new l.CachedVariadicBox(this.el),this.layout.set_sizing(this.box_sizing())}render(){super.render();const t=Object.assign(Object.assign({},this.model.style),{display:\"inline-block\"});this.markup_el=r.div({class:u.clearfix,style:t}),this.el.appendChild(this.markup_el)}}s.MarkupView=_,_.__name__=\"MarkupView\";class o extends c.Widget{constructor(t){super(t)}static init_Markup(){this.define((({String:t,Dict:e})=>({text:[t,\"\"],style:[e(t),{}]})))}}s.Markup=o,o.__name__=\"Markup\",o.init_Markup()},\n 445: function _(o,r,e,t,a){t(),e.root=\"bk-root\",e.clearfix=\"bk-clearfix\",e.default='.bk-root .bk-clearfix:before,.bk-root .bk-clearfix:after{content:\"\";display:table;}.bk-root .bk-clearfix:after{clear:both;}'},\n 446: function _(e,t,i,n,s){n();const o=e(1),r=e(419),l=e(264),d=e(43),_=e(8),u=o.__importStar(e(328)),c=o.__importStar(e(243)),h=c;class p extends r.AbstractButtonView{constructor(){super(...arguments),this._open=!1}styles(){return[...super.styles(),c.default]}render(){super.render();const e=d.div({class:[h.caret,h.down]});if(this.model.is_split){const t=this._render_button(e);t.classList.add(u.dropdown_toggle),t.addEventListener(\"click\",(()=>this._toggle_menu())),this.group_el.appendChild(t)}else this.button_el.appendChild(e);const t=this.model.menu.map(((e,t)=>{if(null==e)return d.div({class:h.divider});{const i=_.isString(e)?e:e[0],n=d.div({},i);return n.addEventListener(\"click\",(()=>this._item_click(t))),n}}));this.menu=d.div({class:[h.menu,h.below]},t),this.el.appendChild(this.menu),d.undisplay(this.menu)}_show_menu(){if(!this._open){this._open=!0,d.display(this.menu);const e=t=>{const{target:i}=t;i instanceof HTMLElement&&!this.el.contains(i)&&(document.removeEventListener(\"click\",e),this._hide_menu())};document.addEventListener(\"click\",e)}}_hide_menu(){this._open&&(this._open=!1,d.undisplay(this.menu))}_toggle_menu(){this._open?this._hide_menu():this._show_menu()}click(){this.model.is_split?(this._hide_menu(),this.model.trigger_event(new l.ButtonClick),super.click()):this._toggle_menu()}_item_click(e){this._hide_menu();const t=this.model.menu[e];if(null!=t){const i=_.isString(t)?t:t[1];_.isString(i)?this.model.trigger_event(new l.MenuItemClick(i)):i.execute(this.model,{index:e})}}}i.DropdownView=p,p.__name__=\"DropdownView\";class m extends r.AbstractButton{constructor(e){super(e)}static init_Dropdown(){this.prototype.default_view=p,this.define((({Null:e,Boolean:t,String:i,Array:n,Tuple:s,Or:o})=>({split:[t,!1],menu:[n(o(i,s(i,o(i)),e)),[]]}))),this.override({label:\"Dropdown\"})}get is_split(){return this.split}}i.Dropdown=m,m.__name__=\"Dropdown\",m.init_Dropdown()},\n 447: function _(e,i,l,t,s){t();const n=e(43),a=e(488);class o extends a.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.render()))}render(){const{multiple:e,accept:i,disabled:l,width:t}=this.model;null==this.dialog_el&&(this.dialog_el=n.input({type:\"file\",multiple:e}),this.dialog_el.onchange=()=>{const{files:e}=this.dialog_el;null!=e&&this.load_files(e)},this.el.appendChild(this.dialog_el)),null!=i&&\"\"!=i&&(this.dialog_el.accept=i),this.dialog_el.style.width=`${t}px`,this.dialog_el.disabled=l}async load_files(e){const i=[],l=[],t=[];for(const s of e){const e=await this._read_file(s),[,n=\"\",,a=\"\"]=e.split(/[:;,]/,4);i.push(a),l.push(s.name),t.push(n)}this.model.multiple?(this.model.value=i,this.model.filename=l,this.model.mime_type=t):(this.model.value=i[0],this.model.filename=l[0],this.model.mime_type=t[0])}_read_file(e){return new Promise(((i,l)=>{const t=new FileReader;t.onload=()=>{var s;const{result:n}=t;null!=n?i(n):l(null!==(s=t.error)&&void 0!==s?s:new Error(`unable to read '${e.name}'`))},t.readAsDataURL(e)}))}}l.FileInputView=o,o.__name__=\"FileInputView\";class d extends a.Widget{constructor(e){super(e)}static init_FileInput(){this.prototype.default_view=o,this.define((({Boolean:e,String:i,Array:l,Or:t})=>({value:[t(i,l(i)),\"\"],mime_type:[t(i,l(i)),\"\"],filename:[t(i,l(i)),\"\"],accept:[i,\"\"],multiple:[e,!1]})))}}l.FileInput=d,d.__name__=\"FileInput\",d.init_FileInput()},\n 448: function _(e,t,i,s,n){s();const l=e(1),o=e(43),r=e(8),c=e(426),h=l.__importStar(e(427));class p extends c.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.value.change,(()=>this.render_selection())),this.connect(this.model.properties.options.change,(()=>this.render())),this.connect(this.model.properties.name.change,(()=>this.render())),this.connect(this.model.properties.title.change,(()=>this.render())),this.connect(this.model.properties.size.change,(()=>this.render())),this.connect(this.model.properties.disabled.change,(()=>this.render()))}render(){super.render();const e=this.model.options.map((e=>{let t,i;return r.isString(e)?t=i=e:[t,i]=e,o.option({value:t},i)}));this.input_el=o.select({multiple:!0,class:h.input,name:this.model.name,disabled:this.model.disabled},e),this.input_el.addEventListener(\"change\",(()=>this.change_input())),this.group_el.appendChild(this.input_el),this.render_selection()}render_selection(){const e=new Set(this.model.value);for(const t of this.el.querySelectorAll(\"option\"))t.selected=e.has(t.value);this.input_el.size=this.model.size}change_input(){const e=null!=this.el.querySelector(\"select:focus\"),t=[];for(const e of this.el.querySelectorAll(\"option\"))e.selected&&t.push(e.value);this.model.value=t,super.change_input(),e&&this.input_el.focus()}}i.MultiSelectView=p,p.__name__=\"MultiSelectView\";class u extends c.InputWidget{constructor(e){super(e)}static init_MultiSelect(){this.prototype.default_view=p,this.define((({Int:e,String:t,Array:i,Tuple:s,Or:n})=>({value:[i(t),[]],options:[i(n(t,s(t,t))),[]],size:[e,4]})))}}i.MultiSelect=u,u.__name__=\"MultiSelect\",u.init_MultiSelect()},\n 449: function _(a,r,e,t,p){t();const s=a(444),i=a(43);class n extends s.MarkupView{render(){super.render();const a=i.p({style:{margin:0}},this.model.text);this.markup_el.appendChild(a)}}e.ParagraphView=n,n.__name__=\"ParagraphView\";class _ extends s.Markup{constructor(a){super(a)}static init_Paragraph(){this.prototype.default_view=n}}e.Paragraph=_,_.__name__=\"Paragraph\",_.init_Paragraph()},\n 450: function _(s,t,e,n,r){n();const p=s(424);class u extends p.TextInputView{render(){super.render(),this.input_el.type=\"password\"}}e.PasswordInputView=u,u.__name__=\"PasswordInputView\";class a extends p.TextInput{constructor(s){super(s)}static init_PasswordInput(){this.prototype.default_view=u}}e.PasswordInput=a,a.__name__=\"PasswordInput\",a.init_PasswordInput()},\n 451: function _(e,t,i,l,s){l();const o=e(1),n=o.__importDefault(e(452)),h=e(43),a=e(8),u=e(224),c=o.__importStar(e(427)),d=o.__importDefault(e(453)),_=e(426);class r extends _.InputWidgetView{constructor(){super(...arguments),this._last_height=null}connect_signals(){super.connect_signals(),this.connect(this.model.properties.disabled.change,(()=>this.set_disabled()));const{value:e,max_items:t,option_limit:i,delete_button:l,placeholder:s,options:o,name:n,title:h}=this.model.properties;this.on_change([e,t,i,l,s,o,n,h],(()=>this.render()))}styles(){return[...super.styles(),d.default]}_update_layout(){this.layout=new u.CachedVariadicBox(this.el),this.layout.set_sizing(this.box_sizing())}render(){super.render(),this.input_el=h.select({multiple:!0,class:c.input,name:this.model.name,disabled:this.model.disabled}),this.group_el.appendChild(this.input_el);const e=new Set(this.model.value),t=this.model.options.map((t=>{let i,l;return a.isString(t)?i=l=t:[i,l]=t,{value:i,label:l,selected:e.has(i)}})),i=this.model.solid?\"solid\":\"light\",l=`choices__item ${i}`,s=`choices__button ${i}`,o={choices:t,duplicateItemsAllowed:!1,removeItemButton:this.model.delete_button,classNames:{item:l,button:s}};null!=this.model.placeholder&&(o.placeholderValue=this.model.placeholder),null!=this.model.max_items&&(o.maxItemCount=this.model.max_items),null!=this.model.option_limit&&(o.renderChoiceLimit=this.model.option_limit),this.choice_el=new n.default(this.input_el,o);const u=()=>this.choice_el.containerOuter.element.getBoundingClientRect().height;null!=this._last_height&&this._last_height!=u()&&this.root.invalidate_layout(),this._last_height=u(),this.input_el.addEventListener(\"change\",(()=>this.change_input()))}set_disabled(){this.model.disabled?this.choice_el.disable():this.choice_el.enable()}change_input(){const e=null!=this.el.querySelector(\"select:focus\"),t=[];for(const e of this.el.querySelectorAll(\"option\"))e.selected&&t.push(e.value);this.model.value=t,super.change_input(),e&&this.input_el.focus()}}i.MultiChoiceView=r,r.__name__=\"MultiChoiceView\";class m extends _.InputWidget{constructor(e){super(e)}static init_MultiChoice(){this.prototype.default_view=r,this.define((({Boolean:e,Int:t,String:i,Array:l,Tuple:s,Or:o,Nullable:n})=>({value:[l(i),[]],options:[l(o(i,s(i,i))),[]],max_items:[n(t),null],delete_button:[e,!0],placeholder:[n(i),null],option_limit:[n(t),null],solid:[e,!0]})))}}i.MultiChoice=m,m.__name__=\"MultiChoice\",m.init_MultiChoice()},\n 452: function _(e,t,i,n,s){\n /*! choices.js v9.0.1 | © 2019 Josh Johnson | https://github.com/jshjohnson/Choices#readme */\n var r,o;r=window,o=function(){return function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,\"a\",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p=\"/public/assets/scripts/\",i(i.s=4)}([function(e,t,i){\"use strict\";var n=function(e){return function(e){return!!e&&\"object\"==typeof e}(e)&&!function(e){var t=Object.prototype.toString.call(e);return\"[object RegExp]\"===t||\"[object Date]\"===t||function(e){return e.$$typeof===s}(e)}(e)},s=\"function\"==typeof Symbol&&Symbol.for?Symbol.for(\"react.element\"):60103;function r(e,t){return!1!==t.clone&&t.isMergeableObject(e)?l((i=e,Array.isArray(i)?[]:{}),e,t):e;var i}function o(e,t,i){return e.concat(t).map((function(e){return r(e,i)}))}function a(e){return Object.keys(e).concat(function(e){return Object.getOwnPropertySymbols?Object.getOwnPropertySymbols(e).filter((function(t){return e.propertyIsEnumerable(t)})):[]}(e))}function c(e,t,i){var n={};return i.isMergeableObject(e)&&a(e).forEach((function(t){n[t]=r(e[t],i)})),a(t).forEach((function(s){(function(e,t){try{return t in e&&!(Object.hasOwnProperty.call(e,t)&&Object.propertyIsEnumerable.call(e,t))}catch(e){return!1}})(e,s)||(i.isMergeableObject(t[s])&&e[s]?n[s]=function(e,t){if(!t.customMerge)return l;var i=t.customMerge(e);return\"function\"==typeof i?i:l}(s,i)(e[s],t[s],i):n[s]=r(t[s],i))})),n}function l(e,t,i){(i=i||{}).arrayMerge=i.arrayMerge||o,i.isMergeableObject=i.isMergeableObject||n,i.cloneUnlessOtherwiseSpecified=r;var s=Array.isArray(t);return s===Array.isArray(e)?s?i.arrayMerge(e,t,i):c(e,t,i):r(t,i)}l.all=function(e,t){if(!Array.isArray(e))throw new Error(\"first argument should be an array\");return e.reduce((function(e,i){return l(e,i,t)}),{})};var h=l;e.exports=h},function(e,t,i){\"use strict\";(function(e,n){var s,r=i(3);s=\"undefined\"!=typeof self?self:\"undefined\"!=typeof window?window:void 0!==e?e:n;var o=Object(r.a)(s);t.a=o}).call(this,i(5),i(6)(e))},function(e,t,i){\n /*!\n * Fuse.js v3.4.5 - Lightweight fuzzy-search (http://fusejs.io)\n *\n * Copyright (c) 2012-2017 Kirollos Risk (http://kiro.me)\n * All Rights Reserved. Apache Software License 2.0\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n */\n e.exports=function(e){var t={};function i(n){if(t[n])return t[n].exports;var s=t[n]={i:n,l:!1,exports:{}};return e[n].call(s.exports,s,s.exports,i),s.l=!0,s.exports}return i.m=e,i.c=t,i.d=function(e,t,n){i.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},i.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},i.t=function(e,t){if(1&t&&(e=i(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(i.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var s in e)i.d(n,s,function(t){return e[t]}.bind(null,s));return n},i.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return i.d(t,\"a\",t),t},i.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},i.p=\"\",i(i.s=1)}([function(e,t){e.exports=function(e){return Array.isArray?Array.isArray(e):\"[object Array]\"===Object.prototype.toString.call(e)}},function(e,t,i){function n(e){return(n=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&\"function\"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?\"symbol\":typeof e})(e)}function s(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var r=i(2),o=i(8),a=i(0),c=function(){function e(t,i){var n=i.location,s=void 0===n?0:n,r=i.distance,a=void 0===r?100:r,c=i.threshold,l=void 0===c?.6:c,h=i.maxPatternLength,u=void 0===h?32:h,d=i.caseSensitive,p=void 0!==d&&d,m=i.tokenSeparator,f=void 0===m?/ +/g:m,v=i.findAllMatches,g=void 0!==v&&v,_=i.minMatchCharLength,b=void 0===_?1:_,y=i.id,E=void 0===y?null:y,I=i.keys,S=void 0===I?[]:I,w=i.shouldSort,O=void 0===w||w,C=i.getFn,A=void 0===C?o:C,L=i.sortFn,T=void 0===L?function(e,t){return e.score-t.score}:L,x=i.tokenize,k=void 0!==x&&x,P=i.matchAllTokens,D=void 0!==P&&P,M=i.includeMatches,N=void 0!==M&&M,F=i.includeScore,j=void 0!==F&&F,K=i.verbose,R=void 0!==K&&K;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.options={location:s,distance:a,threshold:l,maxPatternLength:u,isCaseSensitive:p,tokenSeparator:f,findAllMatches:g,minMatchCharLength:b,id:E,keys:S,includeMatches:N,includeScore:j,shouldSort:O,getFn:A,sortFn:T,verbose:R,tokenize:k,matchAllTokens:D},this.setCollection(t)}var t,i,c;return t=e,(i=[{key:\"setCollection\",value:function(e){return this.list=e,e}},{key:\"search\",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{limit:!1};this._log('---------\\nSearch pattern: \"'.concat(e,'\"'));var i=this._prepareSearchers(e),n=i.tokenSearchers,s=i.fullSearcher,r=this._search(n,s),o=r.weights,a=r.results;return this._computeScore(o,a),this.options.shouldSort&&this._sort(a),t.limit&&\"number\"==typeof t.limit&&(a=a.slice(0,t.limit)),this._format(a)}},{key:\"_prepareSearchers\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:\"\",t=[];if(this.options.tokenize)for(var i=e.split(this.options.tokenSeparator),n=0,s=i.length;n<s;n+=1)t.push(new r(i[n],this.options));return{tokenSearchers:t,fullSearcher:new r(e,this.options)}}},{key:\"_search\",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1?arguments[1]:void 0,i=this.list,n={},s=[];if(\"string\"==typeof i[0]){for(var r=0,o=i.length;r<o;r+=1)this._analyze({key:\"\",value:i[r],record:r,index:r},{resultMap:n,results:s,tokenSearchers:e,fullSearcher:t});return{weights:null,results:s}}for(var a={},c=0,l=i.length;c<l;c+=1)for(var h=i[c],u=0,d=this.options.keys.length;u<d;u+=1){var p=this.options.keys[u];if(\"string\"!=typeof p){if(a[p.name]={weight:1-p.weight||1},p.weight<=0||p.weight>1)throw new Error(\"Key weight has to be > 0 and <= 1\");p=p.name}else a[p]={weight:1};this._analyze({key:p,value:this.options.getFn(h,p),record:h,index:c},{resultMap:n,results:s,tokenSearchers:e,fullSearcher:t})}return{weights:a,results:s}}},{key:\"_analyze\",value:function(e,t){var i=e.key,n=e.arrayIndex,s=void 0===n?-1:n,r=e.value,o=e.record,c=e.index,l=t.tokenSearchers,h=void 0===l?[]:l,u=t.fullSearcher,d=void 0===u?[]:u,p=t.resultMap,m=void 0===p?{}:p,f=t.results,v=void 0===f?[]:f;if(null!=r){var g=!1,_=-1,b=0;if(\"string\"==typeof r){this._log(\"\\nKey: \".concat(\"\"===i?\"-\":i));var y=d.search(r);if(this._log('Full text: \"'.concat(r,'\", score: ').concat(y.score)),this.options.tokenize){for(var E=r.split(this.options.tokenSeparator),I=[],S=0;S<h.length;S+=1){var w=h[S];this._log('\\nPattern: \"'.concat(w.pattern,'\"'));for(var O=!1,C=0;C<E.length;C+=1){var A=E[C],L=w.search(A),T={};L.isMatch?(T[A]=L.score,g=!0,O=!0,I.push(L.score)):(T[A]=1,this.options.matchAllTokens||I.push(1)),this._log('Token: \"'.concat(A,'\", score: ').concat(T[A]))}O&&(b+=1)}_=I[0];for(var x=I.length,k=1;k<x;k+=1)_+=I[k];_/=x,this._log(\"Token score average:\",_)}var P=y.score;_>-1&&(P=(P+_)/2),this._log(\"Score average:\",P);var D=!this.options.tokenize||!this.options.matchAllTokens||b>=h.length;if(this._log(\"\\nCheck Matches: \".concat(D)),(g||y.isMatch)&&D){var M=m[c];M?M.output.push({key:i,arrayIndex:s,value:r,score:P,matchedIndices:y.matchedIndices}):(m[c]={item:o,output:[{key:i,arrayIndex:s,value:r,score:P,matchedIndices:y.matchedIndices}]},v.push(m[c]))}}else if(a(r))for(var N=0,F=r.length;N<F;N+=1)this._analyze({key:i,arrayIndex:N,value:r[N],record:o,index:c},{resultMap:m,results:v,tokenSearchers:h,fullSearcher:d})}}},{key:\"_computeScore\",value:function(e,t){this._log(\"\\n\\nComputing score:\\n\");for(var i=0,n=t.length;i<n;i+=1){for(var s=t[i].output,r=s.length,o=1,a=1,c=0;c<r;c+=1){var l=e?e[s[c].key].weight:1,h=(1===l?s[c].score:s[c].score||.001)*l;1!==l?a=Math.min(a,h):(s[c].nScore=h,o*=h)}t[i].score=1===a?o:a,this._log(t[i])}}},{key:\"_sort\",value:function(e){this._log(\"\\n\\nSorting....\"),e.sort(this.options.sortFn)}},{key:\"_format\",value:function(e){var t=[];if(this.options.verbose){var i=[];this._log(\"\\n\\nOutput:\\n\\n\",JSON.stringify(e,(function(e,t){if(\"object\"===n(t)&&null!==t){if(-1!==i.indexOf(t))return;i.push(t)}return t}))),i=null}var s=[];this.options.includeMatches&&s.push((function(e,t){var i=e.output;t.matches=[];for(var n=0,s=i.length;n<s;n+=1){var r=i[n];if(0!==r.matchedIndices.length){var o={indices:r.matchedIndices,value:r.value};r.key&&(o.key=r.key),r.hasOwnProperty(\"arrayIndex\")&&r.arrayIndex>-1&&(o.arrayIndex=r.arrayIndex),t.matches.push(o)}}})),this.options.includeScore&&s.push((function(e,t){t.score=e.score}));for(var r=0,o=e.length;r<o;r+=1){var a=e[r];if(this.options.id&&(a.item=this.options.getFn(a.item,this.options.id)[0]),s.length){for(var c={item:a.item},l=0,h=s.length;l<h;l+=1)s[l](a,c);t.push(c)}else t.push(a.item)}return t}},{key:\"_log\",value:function(){var e;this.options.verbose&&(e=console).log.apply(e,arguments)}}])&&s(t.prototype,i),c&&s(t,c),e}();e.exports=c},function(e,t,i){function n(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var s=i(3),r=i(4),o=i(7),a=function(){function e(t,i){var n=i.location,s=void 0===n?0:n,r=i.distance,a=void 0===r?100:r,c=i.threshold,l=void 0===c?.6:c,h=i.maxPatternLength,u=void 0===h?32:h,d=i.isCaseSensitive,p=void 0!==d&&d,m=i.tokenSeparator,f=void 0===m?/ +/g:m,v=i.findAllMatches,g=void 0!==v&&v,_=i.minMatchCharLength,b=void 0===_?1:_;!function(e,t){if(!(e instanceof t))throw new TypeError(\"Cannot call a class as a function\")}(this,e),this.options={location:s,distance:a,threshold:l,maxPatternLength:u,isCaseSensitive:p,tokenSeparator:f,findAllMatches:g,minMatchCharLength:b},this.pattern=this.options.isCaseSensitive?t:t.toLowerCase(),this.pattern.length<=u&&(this.patternAlphabet=o(this.pattern))}var t,i,a;return t=e,(i=[{key:\"search\",value:function(e){if(this.options.isCaseSensitive||(e=e.toLowerCase()),this.pattern===e)return{isMatch:!0,score:0,matchedIndices:[[0,e.length-1]]};var t=this.options,i=t.maxPatternLength,n=t.tokenSeparator;if(this.pattern.length>i)return s(e,this.pattern,n);var o=this.options,a=o.location,c=o.distance,l=o.threshold,h=o.findAllMatches,u=o.minMatchCharLength;return r(e,this.pattern,this.patternAlphabet,{location:a,distance:c,threshold:l,findAllMatches:h,minMatchCharLength:u})}}])&&n(t.prototype,i),a&&n(t,a),e}();e.exports=a},function(e,t){var i=/[\\-\\[\\]\\/\\{\\}\\(\\)\\*\\+\\?\\.\\\\\\^\\$\\|]/g;e.exports=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:/ +/g,s=new RegExp(t.replace(i,\"\\\\$&\").replace(n,\"|\")),r=e.match(s),o=!!r,a=[];if(o)for(var c=0,l=r.length;c<l;c+=1){var h=r[c];a.push([e.indexOf(h),h.length-1])}return{score:o?.5:1,isMatch:o,matchedIndices:a}}},function(e,t,i){var n=i(5),s=i(6);e.exports=function(e,t,i,r){for(var o=r.location,a=void 0===o?0:o,c=r.distance,l=void 0===c?100:c,h=r.threshold,u=void 0===h?.6:h,d=r.findAllMatches,p=void 0!==d&&d,m=r.minMatchCharLength,f=void 0===m?1:m,v=a,g=e.length,_=u,b=e.indexOf(t,v),y=t.length,E=[],I=0;I<g;I+=1)E[I]=0;if(-1!==b){var S=n(t,{errors:0,currentLocation:b,expectedLocation:v,distance:l});if(_=Math.min(S,_),-1!==(b=e.lastIndexOf(t,v+y))){var w=n(t,{errors:0,currentLocation:b,expectedLocation:v,distance:l});_=Math.min(w,_)}}b=-1;for(var O=[],C=1,A=y+g,L=1<<y-1,T=0;T<y;T+=1){for(var x=0,k=A;x<k;)n(t,{errors:T,currentLocation:v+k,expectedLocation:v,distance:l})<=_?x=k:A=k,k=Math.floor((A-x)/2+x);A=k;var P=Math.max(1,v-k+1),D=p?g:Math.min(v+k,g)+y,M=Array(D+2);M[D+1]=(1<<T)-1;for(var N=D;N>=P;N-=1){var F=N-1,j=i[e.charAt(F)];if(j&&(E[F]=1),M[N]=(M[N+1]<<1|1)&j,0!==T&&(M[N]|=(O[N+1]|O[N])<<1|1|O[N+1]),M[N]&L&&(C=n(t,{errors:T,currentLocation:F,expectedLocation:v,distance:l}))<=_){if(_=C,(b=F)<=v)break;P=Math.max(1,2*v-b)}}if(n(t,{errors:T+1,currentLocation:v,expectedLocation:v,distance:l})>_)break;O=M}return{isMatch:b>=0,score:0===C?.001:C,matchedIndices:s(E,f)}}},function(e,t){e.exports=function(e,t){var i=t.errors,n=void 0===i?0:i,s=t.currentLocation,r=void 0===s?0:s,o=t.expectedLocation,a=void 0===o?0:o,c=t.distance,l=void 0===c?100:c,h=n/e.length,u=Math.abs(a-r);return l?h+u/l:u?1:h}},function(e,t){e.exports=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,i=[],n=-1,s=-1,r=0,o=e.length;r<o;r+=1){var a=e[r];a&&-1===n?n=r:a||-1===n||((s=r-1)-n+1>=t&&i.push([n,s]),n=-1)}return e[r-1]&&r-n>=t&&i.push([n,r-1]),i}},function(e,t){e.exports=function(e){for(var t={},i=e.length,n=0;n<i;n+=1)t[e.charAt(n)]=0;for(var s=0;s<i;s+=1)t[e.charAt(s)]|=1<<i-s-1;return t}},function(e,t,i){var n=i(0);e.exports=function(e,t){return function e(t,i,s){if(i){var r=i.indexOf(\".\"),o=i,a=null;-1!==r&&(o=i.slice(0,r),a=i.slice(r+1));var c=t[o];if(null!=c)if(a||\"string\"!=typeof c&&\"number\"!=typeof c)if(n(c))for(var l=0,h=c.length;l<h;l+=1)e(c[l],a,s);else a&&e(c,a,s);else s.push(c.toString())}else s.push(t);return s}(e,t,[])}}])},function(e,t,i){\"use strict\";function n(e){var t,i=e.Symbol;return\"function\"==typeof i?i.observable?t=i.observable:(t=i(\"observable\"),i.observable=t):t=\"@@observable\",t}i.d(t,\"a\",(function(){return n}))},function(e,t,i){e.exports=i(7)},function(e,t){var i;i=function(){return this}();try{i=i||new Function(\"return this\")()}catch(e){\"object\"==typeof window&&(i=window)}e.exports=i},function(e,t){e.exports=function(e){if(!e.webpackPolyfill){var t=Object.create(e);t.children||(t.children=[]),Object.defineProperty(t,\"loaded\",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,\"id\",{enumerable:!0,get:function(){return t.i}}),Object.defineProperty(t,\"exports\",{enumerable:!0}),t.webpackPolyfill=1}return t}},function(e,t,i){\"use strict\";i.r(t);var n=i(2),s=i.n(n),r=i(0),o=i.n(r),a=i(1),c=function(){return Math.random().toString(36).substring(7).split(\"\").join(\".\")},l={INIT:\"@@redux/INIT\"+c(),REPLACE:\"@@redux/REPLACE\"+c(),PROBE_UNKNOWN_ACTION:function(){return\"@@redux/PROBE_UNKNOWN_ACTION\"+c()}};function h(e){if(\"object\"!=typeof e||null===e)return!1;for(var t=e;null!==Object.getPrototypeOf(t);)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t}function u(e,t,i){var n;if(\"function\"==typeof t&&\"function\"==typeof i||\"function\"==typeof i&&\"function\"==typeof arguments[3])throw new Error(\"It looks like you are passing several store enhancers to createStore(). This is not supported. Instead, compose them together to a single function.\");if(\"function\"==typeof t&&void 0===i&&(i=t,t=void 0),void 0!==i){if(\"function\"!=typeof i)throw new Error(\"Expected the enhancer to be a function.\");return i(u)(e,t)}if(\"function\"!=typeof e)throw new Error(\"Expected the reducer to be a function.\");var s=e,r=t,o=[],c=o,d=!1;function p(){c===o&&(c=o.slice())}function m(){if(d)throw new Error(\"You may not call store.getState() while the reducer is executing. The reducer has already received the state as an argument. Pass it down from the top reducer instead of reading it from the store.\");return r}function f(e){if(\"function\"!=typeof e)throw new Error(\"Expected the listener to be a function.\");if(d)throw new Error(\"You may not call store.subscribe() while the reducer is executing. If you would like to be notified after the store has been updated, subscribe from a component and invoke store.getState() in the callback to access the latest state. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.\");var t=!0;return p(),c.push(e),function(){if(t){if(d)throw new Error(\"You may not unsubscribe from a store listener while the reducer is executing. See https://redux.js.org/api-reference/store#subscribe(listener) for more details.\");t=!1,p();var i=c.indexOf(e);c.splice(i,1)}}}function v(e){if(!h(e))throw new Error(\"Actions must be plain objects. Use custom middleware for async actions.\");if(void 0===e.type)throw new Error('Actions may not have an undefined \"type\" property. Have you misspelled a constant?');if(d)throw new Error(\"Reducers may not dispatch actions.\");try{d=!0,r=s(r,e)}finally{d=!1}for(var t=o=c,i=0;i<t.length;i++)(0,t[i])();return e}function g(e){if(\"function\"!=typeof e)throw new Error(\"Expected the nextReducer to be a function.\");s=e,v({type:l.REPLACE})}function _(){var e,t=f;return(e={subscribe:function(e){if(\"object\"!=typeof e||null===e)throw new TypeError(\"Expected the observer to be an object.\");function i(){e.next&&e.next(m())}return i(),{unsubscribe:t(i)}}})[a.a]=function(){return this},e}return v({type:l.INIT}),(n={dispatch:v,subscribe:f,getState:m,replaceReducer:g})[a.a]=_,n}function d(e,t){var i=t&&t.type;return\"Given \"+(i&&'action \"'+String(i)+'\"'||\"an action\")+', reducer \"'+e+'\" returned undefined. To ignore an action, you must explicitly return the previous state. If you want this reducer to hold no value, you can return null instead of undefined.'}var p,m=[],f=[],v=[],g={loading:!1},_=function(e,t){switch(void 0===e&&(e=g),t.type){case\"SET_IS_LOADING\":return{loading:t.isLoading};default:return e}},b=function(e){return Array.from({length:e},(function(){return(e=0,t=36,Math.floor(Math.random()*(t-e)+e)).toString(36);var e,t})).join(\"\")},y=function(e){return Object.prototype.toString.call(e).slice(8,-1)},E=function(e,t){return null!=t&&y(t)===e},I=function(e){return\"string\"!=typeof e?e:e.replace(/&/g,\"&\").replace(/>/g,\"&rt;\").replace(/</g,\"<\").replace(/\"/g,\""\")},S=(p=document.createElement(\"div\"),function(e){var t=e.trim();p.innerHTML=t;for(var i=p.children[0];p.firstChild;)p.removeChild(p.firstChild);return i}),w=function(e,t){return e.score-t.score},O=function(e){return JSON.parse(JSON.stringify(e))},C=function(e){for(var t=Object.keys(e),i={},n=0;n<t.length;n++){var s=t[n];\"function\"==typeof e[s]&&(i[s]=e[s])}var r,o=Object.keys(i);try{!function(e){Object.keys(e).forEach((function(t){var i=e[t];if(void 0===i(void 0,{type:l.INIT}))throw new Error('Reducer \"'+t+\"\\\" returned undefined during initialization. If the state passed to the reducer is undefined, you must explicitly return the initial state. The initial state may not be undefined. If you don't want to set a value for this reducer, you can use null instead of undefined.\");if(void 0===i(void 0,{type:l.PROBE_UNKNOWN_ACTION()}))throw new Error('Reducer \"'+t+\"\\\" returned undefined when probed with a random type. Don't try to handle \"+l.INIT+' or other actions in \"redux/*\" namespace. They are considered private. Instead, you must return the current state for any unknown actions, unless it is undefined, in which case you must return the initial state, regardless of the action type. The initial state may not be undefined, but can be null.')}))}(i)}catch(e){r=e}return function(e,t){if(void 0===e&&(e={}),r)throw r;for(var n=!1,s={},a=0;a<o.length;a++){var c=o[a],l=i[c],h=e[c],u=l(h,t);if(void 0===u){var p=d(c,t);throw new Error(p)}s[c]=u,n=n||u!==h}return n?s:e}}({items:function(e,t){switch(void 0===e&&(e=m),t.type){case\"ADD_ITEM\":return[].concat(e,[{id:t.id,choiceId:t.choiceId,groupId:t.groupId,value:t.value,label:t.label,active:!0,highlighted:!1,customProperties:t.customProperties,placeholder:t.placeholder||!1,keyCode:null}]).map((function(e){var t=e;return t.highlighted=!1,t}));case\"REMOVE_ITEM\":return e.map((function(e){var i=e;return i.id===t.id&&(i.active=!1),i}));case\"HIGHLIGHT_ITEM\":return e.map((function(e){var i=e;return i.id===t.id&&(i.highlighted=t.highlighted),i}));default:return e}},groups:function(e,t){switch(void 0===e&&(e=f),t.type){case\"ADD_GROUP\":return[].concat(e,[{id:t.id,value:t.value,active:t.active,disabled:t.disabled}]);case\"CLEAR_CHOICES\":return[];default:return e}},choices:function(e,t){switch(void 0===e&&(e=v),t.type){case\"ADD_CHOICE\":return[].concat(e,[{id:t.id,elementId:t.elementId,groupId:t.groupId,value:t.value,label:t.label||t.value,disabled:t.disabled||!1,selected:!1,active:!0,score:9999,customProperties:t.customProperties,placeholder:t.placeholder||!1,keyCode:null}]);case\"ADD_ITEM\":return t.activateOptions?e.map((function(e){var i=e;return i.active=t.active,i})):t.choiceId>-1?e.map((function(e){var i=e;return i.id===parseInt(t.choiceId,10)&&(i.selected=!0),i})):e;case\"REMOVE_ITEM\":return t.choiceId>-1?e.map((function(e){var i=e;return i.id===parseInt(t.choiceId,10)&&(i.selected=!1),i})):e;case\"FILTER_CHOICES\":return e.map((function(e){var i=e;return i.active=t.results.some((function(e){var t=e.item,n=e.score;return t.id===i.id&&(i.score=n,!0)})),i}));case\"ACTIVATE_CHOICES\":return e.map((function(e){var i=e;return i.active=t.active,i}));case\"CLEAR_CHOICES\":return v;default:return e}},general:_}),A=function(e,t){var i=e;if(\"CLEAR_ALL\"===t.type)i=void 0;else if(\"RESET_TO\"===t.type)return O(t.state);return C(i,t)};function L(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var T=function(){function e(){this._store=u(A,window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__())}var t,i,n,s=e.prototype;return s.subscribe=function(e){this._store.subscribe(e)},s.dispatch=function(e){this._store.dispatch(e)},s.isLoading=function(){return this.state.general.loading},s.getChoiceById=function(e){return this.activeChoices.find((function(t){return t.id===parseInt(e,10)}))},s.getGroupById=function(e){return this.groups.find((function(t){return t.id===e}))},t=e,(i=[{key:\"state\",get:function(){return this._store.getState()}},{key:\"items\",get:function(){return this.state.items}},{key:\"activeItems\",get:function(){return this.items.filter((function(e){return!0===e.active}))}},{key:\"highlightedActiveItems\",get:function(){return this.items.filter((function(e){return e.active&&e.highlighted}))}},{key:\"choices\",get:function(){return this.state.choices}},{key:\"activeChoices\",get:function(){return this.choices.filter((function(e){return!0===e.active}))}},{key:\"selectableChoices\",get:function(){return this.choices.filter((function(e){return!0!==e.disabled}))}},{key:\"searchableChoices\",get:function(){return this.selectableChoices.filter((function(e){return!0!==e.placeholder}))}},{key:\"placeholderChoice\",get:function(){return[].concat(this.choices).reverse().find((function(e){return!0===e.placeholder}))}},{key:\"groups\",get:function(){return this.state.groups}},{key:\"activeGroups\",get:function(){var e=this.groups,t=this.choices;return e.filter((function(e){var i=!0===e.active&&!1===e.disabled,n=t.some((function(e){return!0===e.active&&!1===e.disabled}));return i&&n}),[])}}])&&L(t.prototype,i),n&&L(t,n),e}();function x(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var k=function(){function e(e){var t=e.element,i=e.type,n=e.classNames;this.element=t,this.classNames=n,this.type=i,this.isActive=!1}var t,i,n,s=e.prototype;return s.getChild=function(e){return this.element.querySelector(e)},s.show=function(){return this.element.classList.add(this.classNames.activeState),this.element.setAttribute(\"aria-expanded\",\"true\"),this.isActive=!0,this},s.hide=function(){return this.element.classList.remove(this.classNames.activeState),this.element.setAttribute(\"aria-expanded\",\"false\"),this.isActive=!1,this},t=e,(i=[{key:\"distanceFromTopWindow\",get:function(){return this.element.getBoundingClientRect().bottom}}])&&x(t.prototype,i),n&&x(t,n),e}(),P={items:[],choices:[],silent:!1,renderChoiceLimit:-1,maxItemCount:-1,addItems:!0,addItemFilter:null,removeItems:!0,removeItemButton:!1,editItems:!1,duplicateItemsAllowed:!0,delimiter:\",\",paste:!0,searchEnabled:!0,searchChoices:!0,searchFloor:1,searchResultLimit:4,searchFields:[\"label\",\"value\"],position:\"auto\",resetScrollPosition:!0,shouldSort:!0,shouldSortItems:!1,sorter:function(e,t){var i=e.value,n=e.label,s=void 0===n?i:n,r=t.value,o=t.label,a=void 0===o?r:o;return s.localeCompare(a,[],{sensitivity:\"base\",ignorePunctuation:!0,numeric:!0})},placeholder:!0,placeholderValue:null,searchPlaceholderValue:null,prependValue:null,appendValue:null,renderSelectedChoices:\"auto\",loadingText:\"Loading...\",noResultsText:\"No results found\",noChoicesText:\"No choices to choose from\",itemSelectText:\"Press to select\",uniqueItemText:\"Only unique values can be added\",customAddItemText:\"Only values matching specific conditions can be added\",addItemText:function(e){return'Press Enter to add <b>\"'+I(e)+'\"</b>'},maxItemText:function(e){return\"Only \"+e+\" values can be added\"},valueComparer:function(e,t){return e===t},fuseOptions:{includeScore:!0},callbackOnInit:null,callbackOnCreateTemplates:null,classNames:{containerOuter:\"choices\",containerInner:\"choices__inner\",input:\"choices__input\",inputCloned:\"choices__input--cloned\",list:\"choices__list\",listItems:\"choices__list--multiple\",listSingle:\"choices__list--single\",listDropdown:\"choices__list--dropdown\",item:\"choices__item\",itemSelectable:\"choices__item--selectable\",itemDisabled:\"choices__item--disabled\",itemChoice:\"choices__item--choice\",placeholder:\"choices__placeholder\",group:\"choices__group\",groupHeading:\"choices__heading\",button:\"choices__button\",activeState:\"is-active\",focusState:\"is-focused\",openState:\"is-open\",disabledState:\"is-disabled\",highlightedState:\"is-highlighted\",selectedState:\"is-selected\",flippedState:\"is-flipped\",loadingState:\"is-loading\",noResults:\"has-no-results\",noChoices:\"has-no-choices\"}},D=\"showDropdown\",M=\"hideDropdown\",N=\"change\",F=\"choice\",j=\"search\",K=\"addItem\",R=\"removeItem\",H=\"highlightItem\",B=\"highlightChoice\",V=\"ADD_CHOICE\",G=\"FILTER_CHOICES\",q=\"ACTIVATE_CHOICES\",U=\"CLEAR_CHOICES\",z=\"ADD_GROUP\",W=\"ADD_ITEM\",X=\"REMOVE_ITEM\",$=\"HIGHLIGHT_ITEM\",J=46,Y=8,Z=13,Q=65,ee=27,te=38,ie=40,ne=33,se=34,re=\"text\",oe=\"select-one\",ae=\"select-multiple\",ce=function(){function e(e){var t=e.element,i=e.type,n=e.classNames,s=e.position;this.element=t,this.classNames=n,this.type=i,this.position=s,this.isOpen=!1,this.isFlipped=!1,this.isFocussed=!1,this.isDisabled=!1,this.isLoading=!1,this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this)}var t=e.prototype;return t.addEventListeners=function(){this.element.addEventListener(\"focus\",this._onFocus),this.element.addEventListener(\"blur\",this._onBlur)},t.removeEventListeners=function(){this.element.removeEventListener(\"focus\",this._onFocus),this.element.removeEventListener(\"blur\",this._onBlur)},t.shouldFlip=function(e){if(\"number\"!=typeof e)return!1;var t=!1;return\"auto\"===this.position?t=!window.matchMedia(\"(min-height: \"+(e+1)+\"px)\").matches:\"top\"===this.position&&(t=!0),t},t.setActiveDescendant=function(e){this.element.setAttribute(\"aria-activedescendant\",e)},t.removeActiveDescendant=function(){this.element.removeAttribute(\"aria-activedescendant\")},t.open=function(e){this.element.classList.add(this.classNames.openState),this.element.setAttribute(\"aria-expanded\",\"true\"),this.isOpen=!0,this.shouldFlip(e)&&(this.element.classList.add(this.classNames.flippedState),this.isFlipped=!0)},t.close=function(){this.element.classList.remove(this.classNames.openState),this.element.setAttribute(\"aria-expanded\",\"false\"),this.removeActiveDescendant(),this.isOpen=!1,this.isFlipped&&(this.element.classList.remove(this.classNames.flippedState),this.isFlipped=!1)},t.focus=function(){this.isFocussed||this.element.focus()},t.addFocusState=function(){this.element.classList.add(this.classNames.focusState)},t.removeFocusState=function(){this.element.classList.remove(this.classNames.focusState)},t.enable=function(){this.element.classList.remove(this.classNames.disabledState),this.element.removeAttribute(\"aria-disabled\"),this.type===oe&&this.element.setAttribute(\"tabindex\",\"0\"),this.isDisabled=!1},t.disable=function(){this.element.classList.add(this.classNames.disabledState),this.element.setAttribute(\"aria-disabled\",\"true\"),this.type===oe&&this.element.setAttribute(\"tabindex\",\"-1\"),this.isDisabled=!0},t.wrap=function(e){!function(e,t){void 0===t&&(t=document.createElement(\"div\")),e.nextSibling?e.parentNode.insertBefore(t,e.nextSibling):e.parentNode.appendChild(t),t.appendChild(e)}(e,this.element)},t.unwrap=function(e){this.element.parentNode.insertBefore(e,this.element),this.element.parentNode.removeChild(this.element)},t.addLoadingState=function(){this.element.classList.add(this.classNames.loadingState),this.element.setAttribute(\"aria-busy\",\"true\"),this.isLoading=!0},t.removeLoadingState=function(){this.element.classList.remove(this.classNames.loadingState),this.element.removeAttribute(\"aria-busy\"),this.isLoading=!1},t._onFocus=function(){this.isFocussed=!0},t._onBlur=function(){this.isFocussed=!1},e}();function le(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var he=function(){function e(e){var t=e.element,i=e.type,n=e.classNames,s=e.preventPaste;this.element=t,this.type=i,this.classNames=n,this.preventPaste=s,this.isFocussed=this.element===document.activeElement,this.isDisabled=t.disabled,this._onPaste=this._onPaste.bind(this),this._onInput=this._onInput.bind(this),this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this)}var t,i,n,s=e.prototype;return s.addEventListeners=function(){this.element.addEventListener(\"paste\",this._onPaste),this.element.addEventListener(\"input\",this._onInput,{passive:!0}),this.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.element.addEventListener(\"blur\",this._onBlur,{passive:!0})},s.removeEventListeners=function(){this.element.removeEventListener(\"input\",this._onInput,{passive:!0}),this.element.removeEventListener(\"paste\",this._onPaste),this.element.removeEventListener(\"focus\",this._onFocus,{passive:!0}),this.element.removeEventListener(\"blur\",this._onBlur,{passive:!0})},s.enable=function(){this.element.removeAttribute(\"disabled\"),this.isDisabled=!1},s.disable=function(){this.element.setAttribute(\"disabled\",\"\"),this.isDisabled=!0},s.focus=function(){this.isFocussed||this.element.focus()},s.blur=function(){this.isFocussed&&this.element.blur()},s.clear=function(e){return void 0===e&&(e=!0),this.element.value&&(this.element.value=\"\"),e&&this.setWidth(),this},s.setWidth=function(){var e=this.element,t=e.style,i=e.value,n=e.placeholder;t.minWidth=n.length+1+\"ch\",t.width=i.length+1+\"ch\"},s.setActiveDescendant=function(e){this.element.setAttribute(\"aria-activedescendant\",e)},s.removeActiveDescendant=function(){this.element.removeAttribute(\"aria-activedescendant\")},s._onInput=function(){this.type!==oe&&this.setWidth()},s._onPaste=function(e){this.preventPaste&&e.preventDefault()},s._onFocus=function(){this.isFocussed=!0},s._onBlur=function(){this.isFocussed=!1},t=e,(i=[{key:\"placeholder\",set:function(e){this.element.placeholder=e}},{key:\"value\",get:function(){return I(this.element.value)},set:function(e){this.element.value=e}}])&&le(t.prototype,i),n&&le(t,n),e}(),ue=function(){function e(e){var t=e.element;this.element=t,this.scrollPos=this.element.scrollTop,this.height=this.element.offsetHeight}var t=e.prototype;return t.clear=function(){this.element.innerHTML=\"\"},t.append=function(e){this.element.appendChild(e)},t.getChild=function(e){return this.element.querySelector(e)},t.hasChildren=function(){return this.element.hasChildNodes()},t.scrollToTop=function(){this.element.scrollTop=0},t.scrollToChildElement=function(e,t){var i=this;if(e){var n=this.element.offsetHeight,s=this.element.scrollTop+n,r=e.offsetHeight,o=e.offsetTop+r,a=t>0?this.element.scrollTop+o-s:e.offsetTop;requestAnimationFrame((function(){i._animateScroll(a,t)}))}},t._scrollDown=function(e,t,i){var n=(i-e)/t,s=n>1?n:1;this.element.scrollTop=e+s},t._scrollUp=function(e,t,i){var n=(e-i)/t,s=n>1?n:1;this.element.scrollTop=e-s},t._animateScroll=function(e,t){var i=this,n=this.element.scrollTop,s=!1;t>0?(this._scrollDown(n,4,e),n<e&&(s=!0)):(this._scrollUp(n,4,e),n>e&&(s=!0)),s&&requestAnimationFrame((function(){i._animateScroll(e,t)}))},e}();function de(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var pe=function(){function e(e){var t=e.element,i=e.classNames;if(this.element=t,this.classNames=i,!(t instanceof HTMLInputElement||t instanceof HTMLSelectElement))throw new TypeError(\"Invalid element passed\");this.isDisabled=!1}var t,i,n,s=e.prototype;return s.conceal=function(){this.element.classList.add(this.classNames.input),this.element.hidden=!0,this.element.tabIndex=-1;var e=this.element.getAttribute(\"style\");e&&this.element.setAttribute(\"data-choice-orig-style\",e),this.element.setAttribute(\"data-choice\",\"active\")},s.reveal=function(){this.element.classList.remove(this.classNames.input),this.element.hidden=!1,this.element.removeAttribute(\"tabindex\");var e=this.element.getAttribute(\"data-choice-orig-style\");e?(this.element.removeAttribute(\"data-choice-orig-style\"),this.element.setAttribute(\"style\",e)):this.element.removeAttribute(\"style\"),this.element.removeAttribute(\"data-choice\"),this.element.value=this.element.value},s.enable=function(){this.element.removeAttribute(\"disabled\"),this.element.disabled=!1,this.isDisabled=!1},s.disable=function(){this.element.setAttribute(\"disabled\",\"\"),this.element.disabled=!0,this.isDisabled=!0},s.triggerEvent=function(e,t){!function(e,t,i){void 0===i&&(i=null);var n=new CustomEvent(t,{detail:i,bubbles:!0,cancelable:!0});e.dispatchEvent(n)}(this.element,e,t)},t=e,(i=[{key:\"isActive\",get:function(){return\"active\"===this.element.dataset.choice}},{key:\"dir\",get:function(){return this.element.dir}},{key:\"value\",get:function(){return this.element.value},set:function(e){this.element.value=e}}])&&de(t.prototype,i),n&&de(t,n),e}();function me(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var fe=function(e){var t,i,n,s,r;function o(t){var i,n=t.element,s=t.classNames,r=t.delimiter;return(i=e.call(this,{element:n,classNames:s})||this).delimiter=r,i}return i=e,(t=o).prototype=Object.create(i.prototype),t.prototype.constructor=t,t.__proto__=i,n=o,(s=[{key:\"value\",get:function(){return this.element.value},set:function(e){var t=e.map((function(e){return e.value})).join(this.delimiter);this.element.setAttribute(\"value\",t),this.element.value=t}}])&&me(n.prototype,s),r&&me(n,r),o}(pe);function ve(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var ge=function(e){var t,i,n,s,r;function o(t){var i,n=t.element,s=t.classNames,r=t.template;return(i=e.call(this,{element:n,classNames:s})||this).template=r,i}return i=e,(t=o).prototype=Object.create(i.prototype),t.prototype.constructor=t,t.__proto__=i,o.prototype.appendDocFragment=function(e){this.element.innerHTML=\"\",this.element.appendChild(e)},n=o,(s=[{key:\"placeholderOption\",get:function(){return this.element.querySelector('option[value=\"\"]')||this.element.querySelector(\"option[placeholder]\")}},{key:\"optionGroups\",get:function(){return Array.from(this.element.getElementsByTagName(\"OPTGROUP\"))}},{key:\"options\",get:function(){return Array.from(this.element.options)},set:function(e){var t=this,i=document.createDocumentFragment();e.forEach((function(e){return n=e,s=t.template(n),void i.appendChild(s);var n,s})),this.appendDocFragment(i)}}])&&ve(n.prototype,s),r&&ve(n,r),o}(pe),_e={containerOuter:function(e,t,i,n,s,r){var o=e.containerOuter,a=Object.assign(document.createElement(\"div\"),{className:o});return a.dataset.type=r,t&&(a.dir=t),n&&(a.tabIndex=0),i&&(a.setAttribute(\"role\",s?\"combobox\":\"listbox\"),s&&a.setAttribute(\"aria-autocomplete\",\"list\")),a.setAttribute(\"aria-haspopup\",\"true\"),a.setAttribute(\"aria-expanded\",\"false\"),a},containerInner:function(e){var t=e.containerInner;return Object.assign(document.createElement(\"div\"),{className:t})},itemList:function(e,t){var i=e.list,n=e.listSingle,s=e.listItems;return Object.assign(document.createElement(\"div\"),{className:i+\" \"+(t?n:s)})},placeholder:function(e,t){var i=e.placeholder;return Object.assign(document.createElement(\"div\"),{className:i,innerHTML:t})},item:function(e,t,i){var n=e.item,s=e.button,r=e.highlightedState,o=e.itemSelectable,a=e.placeholder,c=t.id,l=t.value,h=t.label,u=t.customProperties,d=t.active,p=t.disabled,m=t.highlighted,f=t.placeholder,v=Object.assign(document.createElement(\"div\"),{className:n,innerHTML:h});if(Object.assign(v.dataset,{item:\"\",id:c,value:l,customProperties:u}),d&&v.setAttribute(\"aria-selected\",\"true\"),p&&v.setAttribute(\"aria-disabled\",\"true\"),f&&v.classList.add(a),v.classList.add(m?r:o),i){p&&v.classList.remove(o),v.dataset.deletable=\"\";var g=\"Remove item\",_=Object.assign(document.createElement(\"button\"),{type:\"button\",className:s,innerHTML:g});_.setAttribute(\"aria-label\",\"Remove item: '\"+l+\"'\"),_.dataset.button=\"\",v.appendChild(_)}return v},choiceList:function(e,t){var i=e.list,n=Object.assign(document.createElement(\"div\"),{className:i});return t||n.setAttribute(\"aria-multiselectable\",\"true\"),n.setAttribute(\"role\",\"listbox\"),n},choiceGroup:function(e,t){var i=e.group,n=e.groupHeading,s=e.itemDisabled,r=t.id,o=t.value,a=t.disabled,c=Object.assign(document.createElement(\"div\"),{className:i+\" \"+(a?s:\"\")});return c.setAttribute(\"role\",\"group\"),Object.assign(c.dataset,{group:\"\",id:r,value:o}),a&&c.setAttribute(\"aria-disabled\",\"true\"),c.appendChild(Object.assign(document.createElement(\"div\"),{className:n,innerHTML:o})),c},choice:function(e,t,i){var n=e.item,s=e.itemChoice,r=e.itemSelectable,o=e.selectedState,a=e.itemDisabled,c=e.placeholder,l=t.id,h=t.value,u=t.label,d=t.groupId,p=t.elementId,m=t.disabled,f=t.selected,v=t.placeholder,g=Object.assign(document.createElement(\"div\"),{id:p,innerHTML:u,className:n+\" \"+s});return f&&g.classList.add(o),v&&g.classList.add(c),g.setAttribute(\"role\",d>0?\"treeitem\":\"option\"),Object.assign(g.dataset,{choice:\"\",id:l,value:h,selectText:i}),m?(g.classList.add(a),g.dataset.choiceDisabled=\"\",g.setAttribute(\"aria-disabled\",\"true\")):(g.classList.add(r),g.dataset.choiceSelectable=\"\"),g},input:function(e,t){var i=e.input,n=e.inputCloned,s=Object.assign(document.createElement(\"input\"),{type:\"text\",className:i+\" \"+n,autocomplete:\"off\",autocapitalize:\"off\",spellcheck:!1});return s.setAttribute(\"role\",\"textbox\"),s.setAttribute(\"aria-autocomplete\",\"list\"),s.setAttribute(\"aria-label\",t),s},dropdown:function(e){var t=e.list,i=e.listDropdown,n=document.createElement(\"div\");return n.classList.add(t,i),n.setAttribute(\"aria-expanded\",\"false\"),n},notice:function(e,t,i){var n=e.item,s=e.itemChoice,r=e.noResults,o=e.noChoices;void 0===i&&(i=\"\");var a=[n,s];return\"no-choices\"===i?a.push(o):\"no-results\"===i&&a.push(r),Object.assign(document.createElement(\"div\"),{innerHTML:t,className:a.join(\" \")})},option:function(e){var t=e.label,i=e.value,n=e.customProperties,s=e.active,r=e.disabled,o=new Option(t,i,!1,s);return n&&(o.dataset.customProperties=n),o.disabled=r,o}},be=function(e){return void 0===e&&(e=!0),{type:q,active:e}},ye=function(e,t){return{type:$,id:e,highlighted:t}},Ee=function(e){var t=e.value,i=e.id,n=e.active,s=e.disabled;return{type:z,value:t,id:i,active:n,disabled:s}},Ie=function(e){return{type:\"SET_IS_LOADING\",isLoading:e}};function Se(e,t){for(var i=0;i<t.length;i++){var n=t[i];n.enumerable=n.enumerable||!1,n.configurable=!0,\"value\"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}var we=\"-ms-scroll-limit\"in document.documentElement.style&&\"-ms-ime-align\"in document.documentElement.style,Oe={},Ce=function(){var e,t,i;function n(e,t){var i=this;void 0===e&&(e=\"[data-choice]\"),void 0===t&&(t={}),this.config=o.a.all([P,n.defaults.options,t],{arrayMerge:function(e,t){return[].concat(t)}});var s,r,a,c,l=(s=this.config,r=P,a=Object.keys(s).sort(),c=Object.keys(r).sort(),a.filter((function(e){return c.indexOf(e)<0})));l.length&&console.warn(\"Unknown config option(s) passed\",l.join(\", \"));var h=\"string\"==typeof e?document.querySelector(e):e;if(!(h instanceof HTMLInputElement||h instanceof HTMLSelectElement))throw TypeError(\"Expected one of the following types text|select-one|select-multiple\");if(this._isTextElement=h.type===re,this._isSelectOneElement=h.type===oe,this._isSelectMultipleElement=h.type===ae,this._isSelectElement=this._isSelectOneElement||this._isSelectMultipleElement,this.config.searchEnabled=this._isSelectMultipleElement||this.config.searchEnabled,[\"auto\",\"always\"].includes(this.config.renderSelectedChoices)||(this.config.renderSelectedChoices=\"auto\"),t.addItemFilter&&\"function\"!=typeof t.addItemFilter){var u=t.addItemFilter instanceof RegExp?t.addItemFilter:new RegExp(t.addItemFilter);this.config.addItemFilter=u.test.bind(u)}if(this._isTextElement?this.passedElement=new fe({element:h,classNames:this.config.classNames,delimiter:this.config.delimiter}):this.passedElement=new ge({element:h,classNames:this.config.classNames,template:function(e){return i._templates.option(e)}}),this.initialised=!1,this._store=new T,this._initialState={},this._currentState={},this._prevState={},this._currentValue=\"\",this._canSearch=this.config.searchEnabled,this._isScrollingOnIe=!1,this._highlightPosition=0,this._wasTap=!0,this._placeholderValue=this._generatePlaceholderValue(),this._baseId=function(e,t){var i=e.id||e.name&&e.name+\"-\"+b(2)||b(4);return t+\"-\"+i.replace(/(:|\\.|\\[|\\]|,)/g,\"\")}(this.passedElement.element,\"choices-\"),this._direction=this.passedElement.dir,!this._direction){var d=window.getComputedStyle(this.passedElement.element).direction;d!==window.getComputedStyle(document.documentElement).direction&&(this._direction=d)}if(this._idNames={itemChoice:\"item-choice\"},this._presetGroups=this.passedElement.optionGroups,this._presetOptions=this.passedElement.options,this._presetChoices=this.config.choices,this._presetItems=this.config.items,this.passedElement.value&&(this._presetItems=this._presetItems.concat(this.passedElement.value.split(this.config.delimiter))),this.passedElement.options&&this.passedElement.options.forEach((function(e){i._presetChoices.push({value:e.value,label:e.innerHTML,selected:e.selected,disabled:e.disabled||e.parentNode.disabled,placeholder:\"\"===e.value||e.hasAttribute(\"placeholder\"),customProperties:e.getAttribute(\"data-custom-properties\")})})),this._render=this._render.bind(this),this._onFocus=this._onFocus.bind(this),this._onBlur=this._onBlur.bind(this),this._onKeyUp=this._onKeyUp.bind(this),this._onKeyDown=this._onKeyDown.bind(this),this._onClick=this._onClick.bind(this),this._onTouchMove=this._onTouchMove.bind(this),this._onTouchEnd=this._onTouchEnd.bind(this),this._onMouseDown=this._onMouseDown.bind(this),this._onMouseOver=this._onMouseOver.bind(this),this._onFormReset=this._onFormReset.bind(this),this._onAKey=this._onAKey.bind(this),this._onEnterKey=this._onEnterKey.bind(this),this._onEscapeKey=this._onEscapeKey.bind(this),this._onDirectionKey=this._onDirectionKey.bind(this),this._onDeleteKey=this._onDeleteKey.bind(this),this.passedElement.isActive)return this.config.silent||console.warn(\"Trying to initialise Choices on element already initialised\"),void(this.initialised=!0);this.init()}e=n,i=[{key:\"defaults\",get:function(){return Object.preventExtensions({get options(){return Oe},get templates(){return _e}})}}],(t=null)&&Se(e.prototype,t),i&&Se(e,i);var r=n.prototype;return r.init=function(){if(!this.initialised){this._createTemplates(),this._createElements(),this._createStructure(),this._initialState=O(this._store.state),this._store.subscribe(this._render),this._render(),this._addEventListeners(),(!this.config.addItems||this.passedElement.element.hasAttribute(\"disabled\"))&&this.disable(),this.initialised=!0;var e=this.config.callbackOnInit;e&&\"function\"==typeof e&&e.call(this)}},r.destroy=function(){this.initialised&&(this._removeEventListeners(),this.passedElement.reveal(),this.containerOuter.unwrap(this.passedElement.element),this.clearStore(),this._isSelectElement&&(this.passedElement.options=this._presetOptions),this._templates=null,this.initialised=!1)},r.enable=function(){return this.passedElement.isDisabled&&this.passedElement.enable(),this.containerOuter.isDisabled&&(this._addEventListeners(),this.input.enable(),this.containerOuter.enable()),this},r.disable=function(){return this.passedElement.isDisabled||this.passedElement.disable(),this.containerOuter.isDisabled||(this._removeEventListeners(),this.input.disable(),this.containerOuter.disable()),this},r.highlightItem=function(e,t){if(void 0===t&&(t=!0),!e)return this;var i=e.id,n=e.groupId,s=void 0===n?-1:n,r=e.value,o=void 0===r?\"\":r,a=e.label,c=void 0===a?\"\":a,l=s>=0?this._store.getGroupById(s):null;return this._store.dispatch(ye(i,!0)),t&&this.passedElement.triggerEvent(H,{id:i,value:o,label:c,groupValue:l&&l.value?l.value:null}),this},r.unhighlightItem=function(e){if(!e)return this;var t=e.id,i=e.groupId,n=void 0===i?-1:i,s=e.value,r=void 0===s?\"\":s,o=e.label,a=void 0===o?\"\":o,c=n>=0?this._store.getGroupById(n):null;return this._store.dispatch(ye(t,!1)),this.passedElement.triggerEvent(H,{id:t,value:r,label:a,groupValue:c&&c.value?c.value:null}),this},r.highlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.highlightItem(t)})),this},r.unhighlightAll=function(){var e=this;return this._store.items.forEach((function(t){return e.unhighlightItem(t)})),this},r.removeActiveItemsByValue=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.value===e})).forEach((function(e){return t._removeItem(e)})),this},r.removeActiveItems=function(e){var t=this;return this._store.activeItems.filter((function(t){return t.id!==e})).forEach((function(e){return t._removeItem(e)})),this},r.removeHighlightedItems=function(e){var t=this;return void 0===e&&(e=!1),this._store.highlightedActiveItems.forEach((function(i){t._removeItem(i),e&&t._triggerChange(i.value)})),this},r.showDropdown=function(e){var t=this;return this.dropdown.isActive||requestAnimationFrame((function(){t.dropdown.show(),t.containerOuter.open(t.dropdown.distanceFromTopWindow),!e&&t._canSearch&&t.input.focus(),t.passedElement.triggerEvent(D,{})})),this},r.hideDropdown=function(e){var t=this;return this.dropdown.isActive?(requestAnimationFrame((function(){t.dropdown.hide(),t.containerOuter.close(),!e&&t._canSearch&&(t.input.removeActiveDescendant(),t.input.blur()),t.passedElement.triggerEvent(M,{})})),this):this},r.getValue=function(e){void 0===e&&(e=!1);var t=this._store.activeItems.reduce((function(t,i){var n=e?i.value:i;return t.push(n),t}),[]);return this._isSelectOneElement?t[0]:t},r.setValue=function(e){var t=this;return this.initialised?(e.forEach((function(e){return t._setChoiceOrItem(e)})),this):this},r.setChoiceByValue=function(e){var t=this;return!this.initialised||this._isTextElement||(Array.isArray(e)?e:[e]).forEach((function(e){return t._findAndSelectChoiceByValue(e)})),this},r.setChoices=function(e,t,i,n){var s=this;if(void 0===e&&(e=[]),void 0===t&&(t=\"value\"),void 0===i&&(i=\"label\"),void 0===n&&(n=!1),!this.initialised)throw new ReferenceError(\"setChoices was called on a non-initialized instance of Choices\");if(!this._isSelectElement)throw new TypeError(\"setChoices can't be used with INPUT based Choices\");if(\"string\"!=typeof t||!t)throw new TypeError(\"value parameter must be a name of 'value' field in passed objects\");if(n&&this.clearChoices(),\"function\"==typeof e){var r=e(this);if(\"function\"==typeof Promise&&r instanceof Promise)return new Promise((function(e){return requestAnimationFrame(e)})).then((function(){return s._handleLoadingState(!0)})).then((function(){return r})).then((function(e){return s.setChoices(e,t,i,n)})).catch((function(e){s.config.silent||console.error(e)})).then((function(){return s._handleLoadingState(!1)})).then((function(){return s}));if(!Array.isArray(r))throw new TypeError(\".setChoices first argument function must return either array of choices or Promise, got: \"+typeof r);return this.setChoices(r,t,i,!1)}if(!Array.isArray(e))throw new TypeError(\".setChoices must be called either with array of choices with a function resulting into Promise of array of choices\");return this.containerOuter.removeLoadingState(),this._startLoading(),e.forEach((function(e){e.choices?s._addGroup({id:parseInt(e.id,10)||null,group:e,valueKey:t,labelKey:i}):s._addChoice({value:e[t],label:e[i],isSelected:e.selected,isDisabled:e.disabled,customProperties:e.customProperties,placeholder:e.placeholder})})),this._stopLoading(),this},r.clearChoices=function(){return this._store.dispatch({type:U}),this},r.clearStore=function(){return this._store.dispatch({type:\"CLEAR_ALL\"}),this},r.clearInput=function(){var e=!this._isSelectOneElement;return this.input.clear(e),!this._isTextElement&&this._canSearch&&(this._isSearching=!1,this._store.dispatch(be(!0))),this},r._render=function(){if(!this._store.isLoading()){this._currentState=this._store.state;var e=this._currentState.choices!==this._prevState.choices||this._currentState.groups!==this._prevState.groups||this._currentState.items!==this._prevState.items,t=this._isSelectElement,i=this._currentState.items!==this._prevState.items;e&&(t&&this._renderChoices(),i&&this._renderItems(),this._prevState=this._currentState)}},r._renderChoices=function(){var e=this,t=this._store,i=t.activeGroups,n=t.activeChoices,s=document.createDocumentFragment();if(this.choiceList.clear(),this.config.resetScrollPosition&&requestAnimationFrame((function(){return e.choiceList.scrollToTop()})),i.length>=1&&!this._isSearching){var r=n.filter((function(e){return!0===e.placeholder&&-1===e.groupId}));r.length>=1&&(s=this._createChoicesFragment(r,s)),s=this._createGroupsFragment(i,n,s)}else n.length>=1&&(s=this._createChoicesFragment(n,s));if(s.childNodes&&s.childNodes.length>0){var o=this._store.activeItems,a=this._canAddItem(o,this.input.value);a.response?(this.choiceList.append(s),this._highlightChoice()):this.choiceList.append(this._getTemplate(\"notice\",a.notice))}else{var c,l;this._isSearching?(l=\"function\"==typeof this.config.noResultsText?this.config.noResultsText():this.config.noResultsText,c=this._getTemplate(\"notice\",l,\"no-results\")):(l=\"function\"==typeof this.config.noChoicesText?this.config.noChoicesText():this.config.noChoicesText,c=this._getTemplate(\"notice\",l,\"no-choices\")),this.choiceList.append(c)}},r._renderItems=function(){var e=this._store.activeItems||[];this.itemList.clear();var t=this._createItemsFragment(e);t.childNodes&&this.itemList.append(t)},r._createGroupsFragment=function(e,t,i){var n=this;return void 0===i&&(i=document.createDocumentFragment()),this.config.shouldSort&&e.sort(this.config.sorter),e.forEach((function(e){var s=function(e){return t.filter((function(t){return n._isSelectOneElement?t.groupId===e.id:t.groupId===e.id&&(\"always\"===n.config.renderSelectedChoices||!t.selected)}))}(e);if(s.length>=1){var r=n._getTemplate(\"choiceGroup\",e);i.appendChild(r),n._createChoicesFragment(s,i,!0)}})),i},r._createChoicesFragment=function(e,t,i){var n=this;void 0===t&&(t=document.createDocumentFragment()),void 0===i&&(i=!1);var s=this.config,r=s.renderSelectedChoices,o=s.searchResultLimit,a=s.renderChoiceLimit,c=this._isSearching?w:this.config.sorter,l=function(e){if(\"auto\"!==r||n._isSelectOneElement||!e.selected){var i=n._getTemplate(\"choice\",e,n.config.itemSelectText);t.appendChild(i)}},h=e;\"auto\"!==r||this._isSelectOneElement||(h=e.filter((function(e){return!e.selected})));var u=h.reduce((function(e,t){return t.placeholder?e.placeholderChoices.push(t):e.normalChoices.push(t),e}),{placeholderChoices:[],normalChoices:[]}),d=u.placeholderChoices,p=u.normalChoices;(this.config.shouldSort||this._isSearching)&&p.sort(c);var m=h.length,f=this._isSelectOneElement?[].concat(d,p):p;this._isSearching?m=o:a&&a>0&&!i&&(m=a);for(var v=0;v<m;v+=1)f[v]&&l(f[v]);return t},r._createItemsFragment=function(e,t){var i=this;void 0===t&&(t=document.createDocumentFragment());var n=this.config,s=n.shouldSortItems,r=n.sorter,o=n.removeItemButton;return s&&!this._isSelectOneElement&&e.sort(r),this._isTextElement?this.passedElement.value=e:this.passedElement.options=e,e.forEach((function(e){var n=i._getTemplate(\"item\",e,o);t.appendChild(n)})),t},r._triggerChange=function(e){null!=e&&this.passedElement.triggerEvent(N,{value:e})},r._selectPlaceholderChoice=function(){var e=this._store.placeholderChoice;e&&(this._addItem({value:e.value,label:e.label,choiceId:e.id,groupId:e.groupId,placeholder:e.placeholder}),this._triggerChange(e.value))},r._handleButtonAction=function(e,t){if(e&&t&&this.config.removeItems&&this.config.removeItemButton){var i=t.parentNode.getAttribute(\"data-id\"),n=e.find((function(e){return e.id===parseInt(i,10)}));this._removeItem(n),this._triggerChange(n.value),this._isSelectOneElement&&this._selectPlaceholderChoice()}},r._handleItemAction=function(e,t,i){var n=this;if(void 0===i&&(i=!1),e&&t&&this.config.removeItems&&!this._isSelectOneElement){var s=t.getAttribute(\"data-id\");e.forEach((function(e){e.id!==parseInt(s,10)||e.highlighted?!i&&e.highlighted&&n.unhighlightItem(e):n.highlightItem(e)})),this.input.focus()}},r._handleChoiceAction=function(e,t){if(e&&t){var i=t.dataset.id,n=this._store.getChoiceById(i);if(n){var s=e[0]&&e[0].keyCode?e[0].keyCode:null,r=this.dropdown.isActive;n.keyCode=s,this.passedElement.triggerEvent(F,{choice:n}),n.selected||n.disabled||this._canAddItem(e,n.value).response&&(this._addItem({value:n.value,label:n.label,choiceId:n.id,groupId:n.groupId,customProperties:n.customProperties,placeholder:n.placeholder,keyCode:n.keyCode}),this._triggerChange(n.value)),this.clearInput(),r&&this._isSelectOneElement&&(this.hideDropdown(!0),this.containerOuter.focus())}}},r._handleBackspace=function(e){if(this.config.removeItems&&e){var t=e[e.length-1],i=e.some((function(e){return e.highlighted}));this.config.editItems&&!i&&t?(this.input.value=t.value,this.input.setWidth(),this._removeItem(t),this._triggerChange(t.value)):(i||this.highlightItem(t,!1),this.removeHighlightedItems(!0))}},r._startLoading=function(){this._store.dispatch(Ie(!0))},r._stopLoading=function(){this._store.dispatch(Ie(!1))},r._handleLoadingState=function(e){void 0===e&&(e=!0);var t=this.itemList.getChild(\".\"+this.config.classNames.placeholder);e?(this.disable(),this.containerOuter.addLoadingState(),this._isSelectOneElement?t?t.innerHTML=this.config.loadingText:(t=this._getTemplate(\"placeholder\",this.config.loadingText),this.itemList.append(t)):this.input.placeholder=this.config.loadingText):(this.enable(),this.containerOuter.removeLoadingState(),this._isSelectOneElement?t.innerHTML=this._placeholderValue||\"\":this.input.placeholder=this._placeholderValue||\"\")},r._handleSearch=function(e){if(e&&this.input.isFocussed){var t=this._store.choices,i=this.config,n=i.searchFloor,s=i.searchChoices,r=t.some((function(e){return!e.active}));if(e&&e.length>=n){var o=s?this._searchChoices(e):0;this.passedElement.triggerEvent(j,{value:e,resultCount:o})}else r&&(this._isSearching=!1,this._store.dispatch(be(!0)))}},r._canAddItem=function(e,t){var i=!0,n=\"function\"==typeof this.config.addItemText?this.config.addItemText(t):this.config.addItemText;if(!this._isSelectOneElement){var s=function(e,t,i){return void 0===i&&(i=\"value\"),e.some((function(e){return\"string\"==typeof t?e[i]===t.trim():e[i]===t}))}(e,t);this.config.maxItemCount>0&&this.config.maxItemCount<=e.length&&(i=!1,n=\"function\"==typeof this.config.maxItemText?this.config.maxItemText(this.config.maxItemCount):this.config.maxItemText),!this.config.duplicateItemsAllowed&&s&&i&&(i=!1,n=\"function\"==typeof this.config.uniqueItemText?this.config.uniqueItemText(t):this.config.uniqueItemText),this._isTextElement&&this.config.addItems&&i&&\"function\"==typeof this.config.addItemFilter&&!this.config.addItemFilter(t)&&(i=!1,n=\"function\"==typeof this.config.customAddItemText?this.config.customAddItemText(t):this.config.customAddItemText)}return{response:i,notice:n}},r._searchChoices=function(e){var t=\"string\"==typeof e?e.trim():e,i=\"string\"==typeof this._currentValue?this._currentValue.trim():this._currentValue;if(t.length<1&&t===i+\" \")return 0;var n=this._store.searchableChoices,r=t,o=[].concat(this.config.searchFields),a=Object.assign(this.config.fuseOptions,{keys:o}),c=new s.a(n,a).search(r);return this._currentValue=t,this._highlightPosition=0,this._isSearching=!0,this._store.dispatch(function(e){return{type:G,results:e}}(c)),c.length},r._addEventListeners=function(){var e=document.documentElement;e.addEventListener(\"touchend\",this._onTouchEnd,!0),this.containerOuter.element.addEventListener(\"keydown\",this._onKeyDown,!0),this.containerOuter.element.addEventListener(\"mousedown\",this._onMouseDown,!0),e.addEventListener(\"click\",this._onClick,{passive:!0}),e.addEventListener(\"touchmove\",this._onTouchMove,{passive:!0}),this.dropdown.element.addEventListener(\"mouseover\",this._onMouseOver,{passive:!0}),this._isSelectOneElement&&(this.containerOuter.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.containerOuter.element.addEventListener(\"blur\",this._onBlur,{passive:!0})),this.input.element.addEventListener(\"keyup\",this._onKeyUp,{passive:!0}),this.input.element.addEventListener(\"focus\",this._onFocus,{passive:!0}),this.input.element.addEventListener(\"blur\",this._onBlur,{passive:!0}),this.input.element.form&&this.input.element.form.addEventListener(\"reset\",this._onFormReset,{passive:!0}),this.input.addEventListeners()},r._removeEventListeners=function(){var e=document.documentElement;e.removeEventListener(\"touchend\",this._onTouchEnd,!0),this.containerOuter.element.removeEventListener(\"keydown\",this._onKeyDown,!0),this.containerOuter.element.removeEventListener(\"mousedown\",this._onMouseDown,!0),e.removeEventListener(\"click\",this._onClick),e.removeEventListener(\"touchmove\",this._onTouchMove),this.dropdown.element.removeEventListener(\"mouseover\",this._onMouseOver),this._isSelectOneElement&&(this.containerOuter.element.removeEventListener(\"focus\",this._onFocus),this.containerOuter.element.removeEventListener(\"blur\",this._onBlur)),this.input.element.removeEventListener(\"keyup\",this._onKeyUp),this.input.element.removeEventListener(\"focus\",this._onFocus),this.input.element.removeEventListener(\"blur\",this._onBlur),this.input.element.form&&this.input.element.form.removeEventListener(\"reset\",this._onFormReset),this.input.removeEventListeners()},r._onKeyDown=function(e){var t,i=e.target,n=e.keyCode,s=e.ctrlKey,r=e.metaKey,o=this._store.activeItems,a=this.input.isFocussed,c=this.dropdown.isActive,l=this.itemList.hasChildren(),h=String.fromCharCode(n),u=J,d=Y,p=Z,m=Q,f=ee,v=te,g=ie,_=ne,b=se,y=s||r;!this._isTextElement&&/[a-zA-Z0-9-_ ]/.test(h)&&this.showDropdown();var E=((t={})[m]=this._onAKey,t[p]=this._onEnterKey,t[f]=this._onEscapeKey,t[v]=this._onDirectionKey,t[_]=this._onDirectionKey,t[g]=this._onDirectionKey,t[b]=this._onDirectionKey,t[d]=this._onDeleteKey,t[u]=this._onDeleteKey,t);E[n]&&E[n]({event:e,target:i,keyCode:n,metaKey:r,activeItems:o,hasFocusedInput:a,hasActiveDropdown:c,hasItems:l,hasCtrlDownKeyPressed:y})},r._onKeyUp=function(e){var t=e.target,i=e.keyCode,n=this.input.value,s=this._store.activeItems,r=this._canAddItem(s,n),o=J,a=Y;if(this._isTextElement)if(r.notice&&n){var c=this._getTemplate(\"notice\",r.notice);this.dropdown.element.innerHTML=c.outerHTML,this.showDropdown(!0)}else this.hideDropdown(!0);else{var l=(i===o||i===a)&&!t.value,h=!this._isTextElement&&this._isSearching,u=this._canSearch&&r.response;l&&h?(this._isSearching=!1,this._store.dispatch(be(!0))):u&&this._handleSearch(this.input.value)}this._canSearch=this.config.searchEnabled},r._onAKey=function(e){var t=e.hasItems;e.hasCtrlDownKeyPressed&&t&&(this._canSearch=!1,this.config.removeItems&&!this.input.value&&this.input.element===document.activeElement&&this.highlightAll())},r._onEnterKey=function(e){var t=e.event,i=e.target,n=e.activeItems,s=e.hasActiveDropdown,r=Z,o=i.hasAttribute(\"data-button\");if(this._isTextElement&&i.value){var a=this.input.value;this._canAddItem(n,a).response&&(this.hideDropdown(!0),this._addItem({value:a}),this._triggerChange(a),this.clearInput())}if(o&&(this._handleButtonAction(n,i),t.preventDefault()),s){var c=this.dropdown.getChild(\".\"+this.config.classNames.highlightedState);c&&(n[0]&&(n[0].keyCode=r),this._handleChoiceAction(n,c)),t.preventDefault()}else this._isSelectOneElement&&(this.showDropdown(),t.preventDefault())},r._onEscapeKey=function(e){e.hasActiveDropdown&&(this.hideDropdown(!0),this.containerOuter.focus())},r._onDirectionKey=function(e){var t,i,n,s=e.event,r=e.hasActiveDropdown,o=e.keyCode,a=e.metaKey,c=ie,l=ne,h=se;if(r||this._isSelectOneElement){this.showDropdown(),this._canSearch=!1;var u,d=o===c||o===h?1:-1,p=\"[data-choice-selectable]\";if(a||o===h||o===l)u=d>0?this.dropdown.element.querySelector(\"[data-choice-selectable]:last-of-type\"):this.dropdown.element.querySelector(p);else{var m=this.dropdown.element.querySelector(\".\"+this.config.classNames.highlightedState);u=m?function(e,t,i){if(void 0===i&&(i=1),e instanceof Element&&\"string\"==typeof t){for(var n=(i>0?\"next\":\"previous\")+\"ElementSibling\",s=e[n];s;){if(s.matches(t))return s;s=s[n]}return s}}(m,p,d):this.dropdown.element.querySelector(p)}u&&(t=u,i=this.choiceList.element,void 0===(n=d)&&(n=1),t&&(n>0?i.scrollTop+i.offsetHeight>=t.offsetTop+t.offsetHeight:t.offsetTop>=i.scrollTop)||this.choiceList.scrollToChildElement(u,d),this._highlightChoice(u)),s.preventDefault()}},r._onDeleteKey=function(e){var t=e.event,i=e.target,n=e.hasFocusedInput,s=e.activeItems;!n||i.value||this._isSelectOneElement||(this._handleBackspace(s),t.preventDefault())},r._onTouchMove=function(){this._wasTap&&(this._wasTap=!1)},r._onTouchEnd=function(e){var t=(e||e.touches[0]).target;this._wasTap&&this.containerOuter.element.contains(t)&&((t===this.containerOuter.element||t===this.containerInner.element)&&(this._isTextElement?this.input.focus():this._isSelectMultipleElement&&this.showDropdown()),e.stopPropagation()),this._wasTap=!0},r._onMouseDown=function(e){var t=e.target;if(t instanceof HTMLElement){if(we&&this.choiceList.element.contains(t)){var i=this.choiceList.element.firstElementChild,n=\"ltr\"===this._direction?e.offsetX>=i.offsetWidth:e.offsetX<i.offsetLeft;this._isScrollingOnIe=n}if(t!==this.input.element){var s=t.closest(\"[data-button],[data-item],[data-choice]\");if(s instanceof HTMLElement){var r=e.shiftKey,o=this._store.activeItems,a=s.dataset;\"button\"in a?this._handleButtonAction(o,s):\"item\"in a?this._handleItemAction(o,s,r):\"choice\"in a&&this._handleChoiceAction(o,s)}e.preventDefault()}}},r._onMouseOver=function(e){var t=e.target;t instanceof HTMLElement&&\"choice\"in t.dataset&&this._highlightChoice(t)},r._onClick=function(e){var t=e.target;this.containerOuter.element.contains(t)?this.dropdown.isActive||this.containerOuter.isDisabled?this._isSelectOneElement&&t!==this.input.element&&!this.dropdown.element.contains(t)&&this.hideDropdown():this._isTextElement?document.activeElement!==this.input.element&&this.input.focus():(this.showDropdown(),this.containerOuter.focus()):(this._store.highlightedActiveItems.length>0&&this.unhighlightAll(),this.containerOuter.removeFocusState(),this.hideDropdown(!0))},r._onFocus=function(e){var t,i=this,n=e.target;this.containerOuter.element.contains(n)&&((t={}).text=function(){n===i.input.element&&i.containerOuter.addFocusState()},t[\"select-one\"]=function(){i.containerOuter.addFocusState(),n===i.input.element&&i.showDropdown(!0)},t[\"select-multiple\"]=function(){n===i.input.element&&(i.showDropdown(!0),i.containerOuter.addFocusState())},t)[this.passedElement.element.type]()},r._onBlur=function(e){var t=this,i=e.target;if(this.containerOuter.element.contains(i)&&!this._isScrollingOnIe){var n,s=this._store.activeItems.some((function(e){return e.highlighted}));((n={}).text=function(){i===t.input.element&&(t.containerOuter.removeFocusState(),s&&t.unhighlightAll(),t.hideDropdown(!0))},n[\"select-one\"]=function(){t.containerOuter.removeFocusState(),(i===t.input.element||i===t.containerOuter.element&&!t._canSearch)&&t.hideDropdown(!0)},n[\"select-multiple\"]=function(){i===t.input.element&&(t.containerOuter.removeFocusState(),t.hideDropdown(!0),s&&t.unhighlightAll())},n)[this.passedElement.element.type]()}else this._isScrollingOnIe=!1,this.input.element.focus()},r._onFormReset=function(){this._store.dispatch({type:\"RESET_TO\",state:this._initialState})},r._highlightChoice=function(e){var t=this;void 0===e&&(e=null);var i=Array.from(this.dropdown.element.querySelectorAll(\"[data-choice-selectable]\"));if(i.length){var n=e;Array.from(this.dropdown.element.querySelectorAll(\".\"+this.config.classNames.highlightedState)).forEach((function(e){e.classList.remove(t.config.classNames.highlightedState),e.setAttribute(\"aria-selected\",\"false\")})),n?this._highlightPosition=i.indexOf(n):(n=i.length>this._highlightPosition?i[this._highlightPosition]:i[i.length-1])||(n=i[0]),n.classList.add(this.config.classNames.highlightedState),n.setAttribute(\"aria-selected\",\"true\"),this.passedElement.triggerEvent(B,{el:n}),this.dropdown.isActive&&(this.input.setActiveDescendant(n.id),this.containerOuter.setActiveDescendant(n.id))}},r._addItem=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,s=e.choiceId,r=void 0===s?-1:s,o=e.groupId,a=void 0===o?-1:o,c=e.customProperties,l=void 0===c?null:c,h=e.placeholder,u=void 0!==h&&h,d=e.keyCode,p=void 0===d?null:d,m=\"string\"==typeof t?t.trim():t,f=p,v=l,g=this._store.items,_=n||m,b=r||-1,y=a>=0?this._store.getGroupById(a):null,E=g?g.length+1:1;return this.config.prependValue&&(m=this.config.prependValue+m.toString()),this.config.appendValue&&(m+=this.config.appendValue.toString()),this._store.dispatch(function(e){var t=e.value,i=e.label,n=e.id,s=e.choiceId,r=e.groupId,o=e.customProperties,a=e.placeholder,c=e.keyCode;return{type:W,value:t,label:i,id:n,choiceId:s,groupId:r,customProperties:o,placeholder:a,keyCode:c}}({value:m,label:_,id:E,choiceId:b,groupId:a,customProperties:l,placeholder:u,keyCode:f})),this._isSelectOneElement&&this.removeActiveItems(E),this.passedElement.triggerEvent(K,{id:E,value:m,label:_,customProperties:v,groupValue:y&&y.value?y.value:void 0,keyCode:f}),this},r._removeItem=function(e){if(!e||!E(\"Object\",e))return this;var t=e.id,i=e.value,n=e.label,s=e.choiceId,r=e.groupId,o=r>=0?this._store.getGroupById(r):null;return this._store.dispatch(function(e,t){return{type:X,id:e,choiceId:t}}(t,s)),o&&o.value?this.passedElement.triggerEvent(R,{id:t,value:i,label:n,groupValue:o.value}):this.passedElement.triggerEvent(R,{id:t,value:i,label:n}),this},r._addChoice=function(e){var t=e.value,i=e.label,n=void 0===i?null:i,s=e.isSelected,r=void 0!==s&&s,o=e.isDisabled,a=void 0!==o&&o,c=e.groupId,l=void 0===c?-1:c,h=e.customProperties,u=void 0===h?null:h,d=e.placeholder,p=void 0!==d&&d,m=e.keyCode,f=void 0===m?null:m;if(null!=t){var v=this._store.choices,g=n||t,_=v?v.length+1:1,b=this._baseId+\"-\"+this._idNames.itemChoice+\"-\"+_;this._store.dispatch(function(e){var t=e.value,i=e.label,n=e.id,s=e.groupId,r=e.disabled,o=e.elementId,a=e.customProperties,c=e.placeholder,l=e.keyCode;return{type:V,value:t,label:i,id:n,groupId:s,disabled:r,elementId:o,customProperties:a,placeholder:c,keyCode:l}}({id:_,groupId:l,elementId:b,value:t,label:g,disabled:a,customProperties:u,placeholder:p,keyCode:f})),r&&this._addItem({value:t,label:g,choiceId:_,customProperties:u,placeholder:p,keyCode:f})}},r._addGroup=function(e){var t=this,i=e.group,n=e.id,s=e.valueKey,r=void 0===s?\"value\":s,o=e.labelKey,a=void 0===o?\"label\":o,c=E(\"Object\",i)?i.choices:Array.from(i.getElementsByTagName(\"OPTION\")),l=n||Math.floor((new Date).valueOf()*Math.random()),h=!!i.disabled&&i.disabled;c?(this._store.dispatch(Ee({value:i.label,id:l,active:!0,disabled:h})),c.forEach((function(e){var i=e.disabled||e.parentNode&&e.parentNode.disabled;t._addChoice({value:e[r],label:E(\"Object\",e)?e[a]:e.innerHTML,isSelected:e.selected,isDisabled:i,groupId:l,customProperties:e.customProperties,placeholder:e.placeholder})}))):this._store.dispatch(Ee({value:i.label,id:i.id,active:!1,disabled:i.disabled}))},r._getTemplate=function(e){var t;if(!e)return null;for(var i=this.config.classNames,n=arguments.length,s=new Array(n>1?n-1:0),r=1;r<n;r++)s[r-1]=arguments[r];return(t=this._templates[e]).call.apply(t,[this,i].concat(s))},r._createTemplates=function(){var e=this.config.callbackOnCreateTemplates,t={};e&&\"function\"==typeof e&&(t=e.call(this,S)),this._templates=o()(_e,t)},r._createElements=function(){this.containerOuter=new ce({element:this._getTemplate(\"containerOuter\",this._direction,this._isSelectElement,this._isSelectOneElement,this.config.searchEnabled,this.passedElement.element.type),classNames:this.config.classNames,type:this.passedElement.element.type,position:this.config.position}),this.containerInner=new ce({element:this._getTemplate(\"containerInner\"),classNames:this.config.classNames,type:this.passedElement.element.type,position:this.config.position}),this.input=new he({element:this._getTemplate(\"input\",this._placeholderValue),classNames:this.config.classNames,type:this.passedElement.element.type,preventPaste:!this.config.paste}),this.choiceList=new ue({element:this._getTemplate(\"choiceList\",this._isSelectOneElement)}),this.itemList=new ue({element:this._getTemplate(\"itemList\",this._isSelectOneElement)}),this.dropdown=new k({element:this._getTemplate(\"dropdown\"),classNames:this.config.classNames,type:this.passedElement.element.type})},r._createStructure=function(){this.passedElement.conceal(),this.containerInner.wrap(this.passedElement.element),this.containerOuter.wrap(this.containerInner.element),this._isSelectOneElement?this.input.placeholder=this.config.searchPlaceholderValue||\"\":this._placeholderValue&&(this.input.placeholder=this._placeholderValue,this.input.setWidth()),this.containerOuter.element.appendChild(this.containerInner.element),this.containerOuter.element.appendChild(this.dropdown.element),this.containerInner.element.appendChild(this.itemList.element),this._isTextElement||this.dropdown.element.appendChild(this.choiceList.element),this._isSelectOneElement?this.config.searchEnabled&&this.dropdown.element.insertBefore(this.input.element,this.dropdown.element.firstChild):this.containerInner.element.appendChild(this.input.element),this._isSelectElement&&(this._highlightPosition=0,this._isSearching=!1,this._startLoading(),this._presetGroups.length?this._addPredefinedGroups(this._presetGroups):this._addPredefinedChoices(this._presetChoices),this._stopLoading()),this._isTextElement&&this._addPredefinedItems(this._presetItems)},r._addPredefinedGroups=function(e){var t=this,i=this.passedElement.placeholderOption;i&&\"SELECT\"===i.parentNode.tagName&&this._addChoice({value:i.value,label:i.innerHTML,isSelected:i.selected,isDisabled:i.disabled,placeholder:!0}),e.forEach((function(e){return t._addGroup({group:e,id:e.id||null})}))},r._addPredefinedChoices=function(e){var t=this;this.config.shouldSort&&e.sort(this.config.sorter);var i=e.some((function(e){return e.selected})),n=e.findIndex((function(e){return void 0===e.disabled||!e.disabled}));e.forEach((function(e,s){var r=e.value,o=e.label,a=e.customProperties,c=e.placeholder;if(t._isSelectElement)if(e.choices)t._addGroup({group:e,id:e.id||null});else{var l=!(!t._isSelectOneElement||i||s!==n)||e.selected,h=e.disabled;t._addChoice({value:r,label:o,isSelected:l,isDisabled:h,customProperties:a,placeholder:c})}else t._addChoice({value:r,label:o,isSelected:e.selected,isDisabled:e.disabled,customProperties:a,placeholder:c})}))},r._addPredefinedItems=function(e){var t=this;e.forEach((function(e){\"object\"==typeof e&&e.value&&t._addItem({value:e.value,label:e.label,choiceId:e.id,customProperties:e.customProperties,placeholder:e.placeholder}),\"string\"==typeof e&&t._addItem({value:e})}))},r._setChoiceOrItem=function(e){var t=this;({object:function(){e.value&&(t._isTextElement?t._addItem({value:e.value,label:e.label,choiceId:e.id,customProperties:e.customProperties,placeholder:e.placeholder}):t._addChoice({value:e.value,label:e.label,isSelected:!0,isDisabled:!1,customProperties:e.customProperties,placeholder:e.placeholder}))},string:function(){t._isTextElement?t._addItem({value:e}):t._addChoice({value:e,label:e,isSelected:!0,isDisabled:!1})}})[y(e).toLowerCase()]()},r._findAndSelectChoiceByValue=function(e){var t=this,i=this._store.choices.find((function(i){return t.config.valueComparer(i.value,e)}));i&&!i.selected&&this._addItem({value:i.value,label:i.label,choiceId:i.id,groupId:i.groupId,customProperties:i.customProperties,placeholder:i.placeholder,keyCode:i.keyCode})},r._generatePlaceholderValue=function(){if(this._isSelectElement){var e=this.passedElement.placeholderOption;return!!e&&e.text}var t=this.config,i=t.placeholder,n=t.placeholderValue,s=this.passedElement.element.dataset;if(i){if(n)return n;if(s.placeholder)return s.placeholder}return!1},n}();t.default=Ce}]).default},\"object\"==typeof i&&\"object\"==typeof t?t.exports=o():\"function\"==typeof define&&define.amd?define([],o):\"object\"==typeof i?i.Choices=o():r.Choices=o()},\n 453: function _(o,e,i,t,r){t(),i.root=\"bk-root\",i.default=\".bk-root{}.bk-root .choices{position:relative;margin-bottom:24px;font-size:16px;}.bk-root .choices:focus{outline:none;}.bk-root .choices:last-child{margin-bottom:0;}.bk-root .choices.is-disabled .choices__inner,.bk-root .choices.is-disabled .choices__input{background-color:#eaeaea;cursor:not-allowed;-webkit-user-select:none;-ms-user-select:none;user-select:none;}.bk-root .choices.is-disabled .choices__item{cursor:not-allowed;}.bk-root .choices [hidden]{display:none !important;}.bk-root .choices[data-type*='select-one']{cursor:pointer;}.bk-root .choices[data-type*='select-one'] .choices__inner{padding-bottom:7.5px;}.bk-root .choices[data-type*='select-one'] .choices__input{display:block;width:100%;padding:10px;border-bottom:1px solid #dddddd;background-color:#ffffff;margin:0;}.bk-root .choices[data-type*='select-one'] .choices__button{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);padding:0;background-size:8px;position:absolute;top:50%;right:0;margin-top:-10px;margin-right:25px;height:20px;width:20px;border-radius:10em;opacity:0.5;}.bk-root .choices[data-type*='select-one'] .choices__button:hover,.bk-root .choices[data-type*='select-one'] .choices__button:focus{opacity:1;}.bk-root .choices[data-type*='select-one'] .choices__button:focus{box-shadow:0px 0px 0px 2px #00bcd4;}.bk-root .choices[data-type*='select-one'] .choices__item[data-value=''] .choices__button{display:none;}.bk-root .choices[data-type*='select-one']:after{content:'';height:0;width:0;border-style:solid;border-color:#333333 transparent transparent transparent;border-width:5px;position:absolute;right:11.5px;top:50%;margin-top:-2.5px;pointer-events:none;}.bk-root .choices[data-type*='select-one'].is-open:after{border-color:transparent transparent #333333 transparent;margin-top:-7.5px;}.bk-root .choices[data-type*='select-one'][dir='rtl']:after{left:11.5px;right:auto;}.bk-root .choices[data-type*='select-one'][dir='rtl'] .choices__button{right:auto;left:0;margin-left:25px;margin-right:0;}.bk-root .choices[data-type*='select-multiple'] .choices__inner,.bk-root .choices[data-type*='text'] .choices__inner{cursor:text;}.bk-root .choices[data-type*='select-multiple'] .choices__button,.bk-root .choices[data-type*='text'] .choices__button{position:relative;display:inline-block;margin-top:0;margin-right:-4px;margin-bottom:0;margin-left:8px;padding-left:16px;border-left:1px solid #008fa1;background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);background-size:8px;width:8px;line-height:1;opacity:0.75;border-radius:0;}.bk-root .choices[data-type*='select-multiple'] .choices__button:hover,.bk-root .choices[data-type*='select-multiple'] .choices__button:focus,.bk-root .choices[data-type*='text'] .choices__button:hover,.bk-root .choices[data-type*='text'] .choices__button:focus{opacity:1;}.bk-root .choices__inner{display:inline-block;vertical-align:top;width:100%;background-color:#f9f9f9;padding:7.5px 7.5px 3.75px;border:1px solid #dddddd;border-radius:2.5px;font-size:14px;min-height:44px;overflow:hidden;}.bk-root .is-focused .choices__inner,.bk-root .is-open .choices__inner{border-color:#b7b7b7;}.bk-root .is-open .choices__inner{border-radius:2.5px 2.5px 0 0;}.bk-root .is-flipped.is-open .choices__inner{border-radius:0 0 2.5px 2.5px;}.bk-root .choices__list{margin:0;padding-left:0;list-style:none;}.bk-root .choices__list--single{display:inline-block;padding:4px 16px 4px 4px;width:100%;}.bk-root [dir='rtl'] .choices__list--single{padding-right:4px;padding-left:16px;}.bk-root .choices__list--single .choices__item{width:100%;}.bk-root .choices__list--multiple{display:inline;}.bk-root .choices__list--multiple .choices__item{display:inline-block;vertical-align:middle;border-radius:20px;padding:4px 10px;font-size:12px;font-weight:500;margin-right:3.75px;margin-bottom:3.75px;background-color:#00bcd4;border:1px solid #00a5bb;color:#ffffff;word-break:break-all;box-sizing:border-box;}.bk-root .choices__list--multiple .choices__item[data-deletable]{padding-right:5px;}.bk-root [dir='rtl'] .choices__list--multiple .choices__item{margin-right:0;margin-left:3.75px;}.bk-root .choices__list--multiple .choices__item.is-highlighted{background-color:#00a5bb;border:1px solid #008fa1;}.bk-root .is-disabled .choices__list--multiple .choices__item{background-color:#aaaaaa;border:1px solid #919191;}.bk-root .choices__list--dropdown{visibility:hidden;z-index:1;position:absolute;width:100%;background-color:#ffffff;border:1px solid #dddddd;top:100%;margin-top:-1px;border-bottom-left-radius:2.5px;border-bottom-right-radius:2.5px;overflow:hidden;word-break:break-all;will-change:visibility;}.bk-root .choices__list--dropdown.is-active{visibility:visible;}.bk-root .is-open .choices__list--dropdown{border-color:#b7b7b7;}.bk-root .is-flipped .choices__list--dropdown{top:auto;bottom:100%;margin-top:0;margin-bottom:-1px;border-radius:0.25rem 0.25rem 0 0;}.bk-root .choices__list--dropdown .choices__list{position:relative;max-height:300px;overflow:auto;-webkit-overflow-scrolling:touch;will-change:scroll-position;}.bk-root .choices__list--dropdown .choices__item{position:relative;padding:10px;font-size:14px;}.bk-root [dir='rtl'] .choices__list--dropdown .choices__item{text-align:right;}@media (min-width: 640px){.bk-root .choices__list--dropdown .choices__item--selectable{padding-right:100px;}.bk-root .choices__list--dropdown .choices__item--selectable:after{content:attr(data-select-text);font-size:12px;opacity:0;position:absolute;right:10px;top:50%;transform:translateY(-50%);}.bk-root [dir='rtl'] .choices__list--dropdown .choices__item--selectable{text-align:right;padding-left:100px;padding-right:10px;}.bk-root [dir='rtl'] .choices__list--dropdown .choices__item--selectable:after{right:auto;left:10px;}}.bk-root .choices__list--dropdown .choices__item--selectable.is-highlighted{background-color:#f2f2f2;}.bk-root .choices__list--dropdown .choices__item--selectable.is-highlighted:after{opacity:0.5;}.bk-root .choices__item{cursor:default;}.bk-root .choices__item--selectable{cursor:pointer;}.bk-root .choices__item--disabled{cursor:not-allowed;-webkit-user-select:none;-ms-user-select:none;user-select:none;opacity:0.5;}.bk-root .choices__heading{font-weight:600;font-size:12px;padding:10px;border-bottom:1px solid #f7f7f7;color:gray;}.bk-root .choices__button{text-indent:-9999px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background-color:transparent;background-repeat:no-repeat;background-position:center;cursor:pointer;}.bk-root .choices__button:focus{outline:none;}.bk-root .choices__input{display:inline-block;vertical-align:baseline;background-color:#f9f9f9;font-size:14px;margin-bottom:5px;border:0;border-radius:0;max-width:100%;padding:4px 0 4px 2px;}.bk-root .choices__input:focus{outline:0;}.bk-root [dir='rtl'] .choices__input{padding-right:2px;padding-left:0;}.bk-root .choices__placeholder{opacity:0.5;}.bk-root .choices{width:100%;}.bk-root .choices{box-sizing:border-box;}.bk-root .choices *,.bk-root .choices *:before,.bk-root .choices *:after{box-sizing:inherit;}.bk-root .choices__inner .choices__item.light{background-color:rgba(0, 126, 255, 0.08);border-radius:5px;border:1px solid rgba(0, 126, 255, 0.24);color:#007eff;}.bk-root .choices__inner .choices__item.solid{background-color:#1f77b4;border:none;border-radius:5px;color:white;}.bk-root .choices__inner .choices__item.solid .is-highlighted{background-color:#1f77b4;border:none;}.bk-root .choices__input{background-color:transparent;}.bk-root .choices__inner{background:transparent;border:1px solid darkgray;border-radius:5px;min-height:unset;}.bk-root .choices__list{white-space:initial;}.bk-root .choices__list--dropdown{z-index:100;}.bk-root .choices[data-type*=select-multiple] .choices__button.light{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDA3ZWZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);}.bk-root .choices[data-type*=select-multiple] .choices__button.solid{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjZmZmZmZmIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==);border-left:1px solid white;opacity:1;}\"},\n 454: function _(e,t,l,i,n){i();const s=e(1),u=s.__importStar(e(183)),h=e(426),o=e(166),a=e(43),r=e(8),d=e(11),p=s.__importStar(e(427)),_=/^[-+]?\\d*$/,m=/^[-+]?\\d*\\.?\\d*(?:(?:\\d|\\d.)[eE][-+]?)*\\d*$/;class c extends h.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.name.change,(()=>{var e;return this.input_el.name=null!==(e=this.model.name)&&void 0!==e?e:\"\"})),this.connect(this.model.properties.value.change,(()=>{this.input_el.value=this.format_value,this.old_value=this.input_el.value})),this.connect(this.model.properties.low.change,(()=>{const{value:e,low:t,high:l}=this.model;null!=t&&null!=l&&d.assert(t<=l,\"Invalid bounds, low must be inferior to high\"),null!=e&&null!=t&&(this.model.value=Math.max(e,t))})),this.connect(this.model.properties.high.change,(()=>{const{value:e,low:t,high:l}=this.model;null!=t&&null!=l&&d.assert(l>=t,\"Invalid bounds, high must be superior to low\"),null!=e&&null!=l&&(this.model.value=Math.min(e,l))})),this.connect(this.model.properties.high.change,(()=>this.input_el.placeholder=this.model.placeholder)),this.connect(this.model.properties.disabled.change,(()=>this.input_el.disabled=this.model.disabled)),this.connect(this.model.properties.placeholder.change,(()=>this.input_el.placeholder=this.model.placeholder))}get format_value(){return null!=this.model.value?this.model.pretty(this.model.value):\"\"}_set_input_filter(e){this.input_el.addEventListener(\"input\",(()=>{const{selectionStart:t,selectionEnd:l}=this.input_el;if(e(this.input_el.value))this.old_value=this.input_el.value;else{const e=this.old_value.length-this.input_el.value.length;this.input_el.value=this.old_value,t&&l&&this.input_el.setSelectionRange(t-1,l+e)}}))}render(){super.render(),this.input_el=a.input({type:\"text\",class:p.input,name:this.model.name,value:this.format_value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.old_value=this.format_value,this.set_input_filter(),this.input_el.addEventListener(\"change\",(()=>this.change_input())),this.input_el.addEventListener(\"focusout\",(()=>this.input_el.value=this.format_value)),this.group_el.appendChild(this.input_el)}set_input_filter(){\"int\"==this.model.mode?this._set_input_filter((e=>_.test(e))):\"float\"==this.model.mode&&this._set_input_filter((e=>m.test(e)))}bound_value(e){let t=e;const{low:l,high:i}=this.model;return t=null!=l?Math.max(l,t):t,t=null!=i?Math.min(i,t):t,t}get value(){let e=\"\"!=this.input_el.value?Number(this.input_el.value):null;return null!=e&&(e=this.bound_value(e)),e}change_input(){null==this.value?this.model.value=null:Number.isNaN(this.value)||(this.model.value=this.value)}}l.NumericInputView=c,c.__name__=\"NumericInputView\";class v extends h.InputWidget{constructor(e){super(e)}static init_NumericInput(){this.prototype.default_view=c,this.define((({Number:e,String:t,Enum:l,Ref:i,Or:n,Nullable:s})=>({value:[s(e),null],placeholder:[t,\"\"],mode:[l(\"int\",\"float\"),\"int\"],format:[s(n(t,i(o.TickFormatter))),null],low:[s(e),null],high:[s(e),null]})))}_formatter(e,t){return r.isString(t)?u.format(e,t):t.doFormat([e],{loc:0})[0]}pretty(e){return null!=this.format?this._formatter(e,this.format):`${e}`}}l.NumericInput=v,v.__name__=\"NumericInput\",v.init_NumericInput()},\n 455: function _(e,t,r,s,i){s();const n=e(444),_=e(43);class a extends n.MarkupView{render(){super.render();const e=_.pre({style:{overflow:\"auto\"}},this.model.text);this.markup_el.appendChild(e)}}r.PreTextView=a,a.__name__=\"PreTextView\";class o extends n.Markup{constructor(e){super(e)}static init_PreText(){this.prototype.default_view=a}}r.PreText=o,o.__name__=\"PreText\",o.init_PreText()},\n 456: function _(t,o,i,e,a){e();const n=t(1),u=t(430),s=t(43),c=n.__importStar(t(328));class _ extends u.ButtonGroupView{change_active(t){this.model.active!==t&&(this.model.active=t)}_update_active(){const{active:t}=this.model;this._buttons.forEach(((o,i)=>{s.classes(o).toggle(c.active,t===i)}))}}i.RadioButtonGroupView=_,_.__name__=\"RadioButtonGroupView\";class r extends u.ButtonGroup{constructor(t){super(t)}static init_RadioButtonGroup(){this.prototype.default_view=_,this.define((({Int:t,Nullable:o})=>({active:[o(t),null]})))}}i.RadioButtonGroup=r,r.__name__=\"RadioButtonGroup\",r.init_RadioButtonGroup()},\n 457: function _(e,i,t,n,a){n();const s=e(1),o=e(43),l=e(34),d=e(432),p=s.__importStar(e(427));class u extends d.InputGroupView{render(){super.render();const e=o.div({class:[p.input_group,this.model.inline?p.inline:null]});this.el.appendChild(e);const i=l.uniqueId(),{active:t,labels:n}=this.model;this._inputs=[];for(let a=0;a<n.length;a++){const s=o.input({type:\"radio\",name:i,value:`${a}`});s.addEventListener(\"change\",(()=>this.change_active(a))),this._inputs.push(s),this.model.disabled&&(s.disabled=!0),a==t&&(s.checked=!0);const l=o.label({},s,o.span({},n[a]));e.appendChild(l)}}change_active(e){this.model.active=e}}t.RadioGroupView=u,u.__name__=\"RadioGroupView\";class r extends d.InputGroup{constructor(e){super(e)}static init_RadioGroup(){this.prototype.default_view=u,this.define((({Boolean:e,Int:i,String:t,Array:n,Nullable:a})=>({active:[a(i),null],labels:[n(t),[]],inline:[e,!1]})))}}t.RadioGroup=r,r.__name__=\"RadioGroup\",r.init_RadioGroup()},\n 458: function _(e,t,i,r,a){r();const n=e(1).__importStar(e(183)),s=e(438),_=e(8);class d extends s.AbstractRangeSliderView{}i.RangeSliderView=d,d.__name__=\"RangeSliderView\";class o extends s.AbstractSlider{constructor(e){super(e),this.behaviour=\"drag\",this.connected=[!1,!0,!1]}static init_RangeSlider(){this.prototype.default_view=d,this.override({format:\"0[.]00\"})}_formatter(e,t){return _.isString(t)?n.format(e,t):t.compute(e)}}i.RangeSlider=o,o.__name__=\"RangeSlider\",o.init_RangeSlider()},\n 459: function _(e,t,n,i,s){i();const l=e(1),u=e(43),a=e(8),o=e(13),_=e(426),p=l.__importStar(e(427));class r extends _.InputWidgetView{constructor(){super(...arguments),this._known_values=new Set}connect_signals(){super.connect_signals();const{value:e,options:t}=this.model.properties;this.on_change(e,(()=>{this._update_value()})),this.on_change(t,(()=>{u.empty(this.input_el),u.append(this.input_el,...this.options_el()),this._update_value()}))}options_el(){const{_known_values:e}=this;function t(t){return t.map((t=>{let n,i;return a.isString(t)?n=i=t:[n,i]=t,e.add(n),u.option({value:n},i)}))}e.clear();const{options:n}=this.model;return a.isArray(n)?t(n):o.entries(n).map((([e,n])=>u.optgroup({label:e},t(n))))}render(){super.render(),this.input_el=u.select({class:p.input,name:this.model.name,disabled:this.model.disabled},this.options_el()),this._update_value(),this.input_el.addEventListener(\"change\",(()=>this.change_input())),this.group_el.appendChild(this.input_el)}change_input(){const e=this.input_el.value;this.model.value=e,super.change_input()}_update_value(){const{value:e}=this.model;this._known_values.has(e)?this.input_el.value=e:this.input_el.removeAttribute(\"value\")}}n.SelectView=r,r.__name__=\"SelectView\";class c extends _.InputWidget{constructor(e){super(e)}static init_Select(){this.prototype.default_view=r,this.define((({String:e,Array:t,Tuple:n,Dict:i,Or:s})=>{const l=t(s(e,n(e,e)));return{value:[e,\"\"],options:[s(l,i(l)),[]]}}))}}n.Select=c,c.__name__=\"Select\",c.init_Select()},\n 460: function _(t,e,i,r,s){r();const _=t(1).__importStar(t(183)),a=t(438),n=t(8);class o extends a.AbstractSliderView{}i.SliderView=o,o.__name__=\"SliderView\";class d extends a.AbstractSlider{constructor(t){super(t),this.behaviour=\"tap\",this.connected=[!0,!1]}static init_Slider(){this.prototype.default_view=o,this.override({format:\"0[.]00\"})}_formatter(t,e){return n.isString(e)?_.format(t,e):e.compute(t)}}i.Slider=d,d.__name__=\"Slider\",d.init_Slider()},\n 461: function _(e,t,i,n,s){n();const l=e(454),o=e(43),{min:r,max:a,floor:h,abs:_}=Math;function u(e){return h(e)!==e?e.toFixed(16).replace(/0+$/,\"\").split(\".\")[1].length:0}class d extends l.NumericInputView{*buttons(){yield this.btn_up_el,yield this.btn_down_el}initialize(){super.initialize(),this._handles={interval:void 0,timeout:void 0},this._interval=200}connect_signals(){super.connect_signals();const e=this.model.properties;this.on_change(e.disabled,(()=>{for(const e of this.buttons())o.toggle_attribute(e,\"disabled\",this.model.disabled)}))}render(){super.render(),this.wrapper_el=o.div({class:\"bk-spin-wrapper\"}),this.group_el.replaceChild(this.wrapper_el,this.input_el),this.btn_up_el=o.button({class:\"bk-spin-btn bk-spin-btn-up\"}),this.btn_down_el=o.button({class:\"bk-spin-btn bk-spin-btn-down\"}),this.wrapper_el.appendChild(this.input_el),this.wrapper_el.appendChild(this.btn_up_el),this.wrapper_el.appendChild(this.btn_down_el);for(const e of this.buttons())o.toggle_attribute(e,\"disabled\",this.model.disabled),e.addEventListener(\"mousedown\",(e=>this._btn_mouse_down(e))),e.addEventListener(\"mouseup\",(()=>this._btn_mouse_up())),e.addEventListener(\"mouseleave\",(()=>this._btn_mouse_leave()));this.input_el.addEventListener(\"keydown\",(e=>this._input_key_down(e))),this.input_el.addEventListener(\"keyup\",(()=>this.model.value_throttled=this.model.value)),this.input_el.addEventListener(\"wheel\",(e=>this._input_mouse_wheel(e))),this.input_el.addEventListener(\"wheel\",function(e,t,i=!1){let n;return function(...s){const l=this,o=i&&void 0===n;void 0!==n&&clearTimeout(n),n=setTimeout((function(){n=void 0,i||e.apply(l,s)}),t),o&&e.apply(l,s)}}((()=>{this.model.value_throttled=this.model.value}),this.model.wheel_wait,!1))}get precision(){const{low:e,high:t,step:i}=this.model,n=u;return a(n(_(null!=e?e:0)),n(_(null!=t?t:0)),n(_(i)))}remove(){this._stop_incrementation(),super.remove()}_start_incrementation(e){clearInterval(this._handles.interval),this._counter=0;const{step:t}=this.model,i=e=>{if(this._counter+=1,this._counter%5==0){const t=Math.floor(this._counter/5);t<10?(clearInterval(this._handles.interval),this._handles.interval=setInterval((()=>i(e)),this._interval/(t+1))):t>=10&&t<=13&&(clearInterval(this._handles.interval),this._handles.interval=setInterval((()=>i(2*e)),this._interval/10))}this.increment(e)};this._handles.interval=setInterval((()=>i(e*t)),this._interval)}_stop_incrementation(){clearTimeout(this._handles.timeout),this._handles.timeout=void 0,clearInterval(this._handles.interval),this._handles.interval=void 0,this.model.value_throttled=this.model.value}_btn_mouse_down(e){e.preventDefault();const t=e.currentTarget===this.btn_up_el?1:-1;this.increment(t*this.model.step),this.input_el.focus(),this._handles.timeout=setTimeout((()=>this._start_incrementation(t)),this._interval)}_btn_mouse_up(){this._stop_incrementation()}_btn_mouse_leave(){this._stop_incrementation()}_input_mouse_wheel(e){if(document.activeElement===this.input_el){e.preventDefault();const t=e.deltaY>0?-1:1;this.increment(t*this.model.step)}}_input_key_down(e){switch(e.keyCode){case o.Keys.Up:return e.preventDefault(),this.increment(this.model.step);case o.Keys.Down:return e.preventDefault(),this.increment(-this.model.step);case o.Keys.PageUp:return e.preventDefault(),this.increment(this.model.page_step_multiplier*this.model.step);case o.Keys.PageDown:return e.preventDefault(),this.increment(-this.model.page_step_multiplier*this.model.step)}}adjust_to_precision(e){return this.bound_value(Number(e.toFixed(this.precision)))}increment(e){const{low:t,high:i}=this.model;null==this.model.value?e>0?this.model.value=null!=t?t:null!=i?r(0,i):0:e<0&&(this.model.value=null!=i?i:null!=t?a(t,0):0):this.model.value=this.adjust_to_precision(this.model.value+e)}change_input(){super.change_input(),this.model.value_throttled=this.model.value}}i.SpinnerView=d,d.__name__=\"SpinnerView\";class p extends l.NumericInput{constructor(e){super(e)}static init_Spinner(){this.prototype.default_view=d,this.define((({Number:e,Nullable:t})=>({value_throttled:[t(e),null],step:[e,1],page_step_multiplier:[e,10],wheel_wait:[e,100]}))),this.override({mode:\"float\"})}}i.Spinner=p,p.__name__=\"Spinner\",p.init_Spinner()},\n 462: function _(e,t,s,n,i){n();const r=e(1),o=e(425),p=e(43),c=r.__importStar(e(427));class l extends o.TextLikeInputView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.rows.change,(()=>this.input_el.rows=this.model.rows)),this.connect(this.model.properties.cols.change,(()=>this.input_el.cols=this.model.cols))}_render_input(){this.input_el=p.textarea({class:c.input})}render(){super.render(),this.input_el.cols=this.model.cols,this.input_el.rows=this.model.rows}}s.TextAreaInputView=l,l.__name__=\"TextAreaInputView\";class _ extends o.TextLikeInput{constructor(e){super(e)}static init_TextAreaInput(){this.prototype.default_view=l,this.define((({Int:e})=>({cols:[e,20],rows:[e,2]}))),this.override({max_length:500})}}s.TextAreaInput=_,_.__name__=\"TextAreaInput\",_.init_TextAreaInput()},\n 463: function _(e,t,i,s,c){s();const o=e(1),a=e(419),n=e(43),l=o.__importStar(e(328));class _ extends a.AbstractButtonView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.active.change,(()=>this._update_active()))}render(){super.render(),this._update_active()}click(){this.model.active=!this.model.active,super.click()}_update_active(){n.classes(this.button_el).toggle(l.active,this.model.active)}}i.ToggleView=_,_.__name__=\"ToggleView\";class g extends a.AbstractButton{constructor(e){super(e)}static init_Toggle(){this.prototype.default_view=_,this.define((({Boolean:e})=>({active:[e,!1]}))),this.override({label:\"Toggle\"})}}i.Toggle=g,g.__name__=\"Toggle\",g.init_Toggle()},\n }, 417, {\"models/widgets/main\":417,\"models/widgets/index\":418,\"models/widgets/abstract_button\":419,\"models/widgets/control\":420,\"models/widgets/widget\":488,\"models/widgets/abstract_icon\":422,\"models/widgets/autocomplete_input\":423,\"models/widgets/text_input\":424,\"models/widgets/text_like_input\":425,\"models/widgets/input_widget\":426,\"styles/widgets/inputs.css\":427,\"models/widgets/button\":428,\"models/widgets/checkbox_button_group\":429,\"models/widgets/button_group\":430,\"models/widgets/checkbox_group\":431,\"models/widgets/input_group\":432,\"models/widgets/color_picker\":433,\"models/widgets/date_picker\":434,\"styles/widgets/flatpickr.css\":436,\"models/widgets/date_range_slider\":437,\"models/widgets/abstract_slider\":438,\"styles/widgets/sliders.css\":440,\"styles/widgets/nouislider.css\":441,\"models/widgets/date_slider\":442,\"models/widgets/div\":443,\"models/widgets/markup\":444,\"styles/clearfix.css\":445,\"models/widgets/dropdown\":446,\"models/widgets/file_input\":447,\"models/widgets/multiselect\":448,\"models/widgets/paragraph\":449,\"models/widgets/password_input\":450,\"models/widgets/multichoice\":451,\"styles/widgets/choices.css\":453,\"models/widgets/numeric_input\":454,\"models/widgets/pretext\":455,\"models/widgets/radio_button_group\":456,\"models/widgets/radio_group\":457,\"models/widgets/range_slider\":458,\"models/widgets/selectbox\":459,\"models/widgets/slider\":460,\"models/widgets/spinner\":461,\"models/widgets/textarea_input\":462,\"models/widgets/toggle\":463}, {});});\n\n /* END bokeh-widgets.min.js */\n },\n \n function(Bokeh) {\n /* BEGIN bokeh-tables.min.js */\n /*!\n * Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors\n * All rights reserved.\n * \n * Redistribution and use in source and binary forms, with or without modification,\n * are permitted provided that the following conditions are met:\n * \n * Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n * \n * Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n * \n * Neither the name of Anaconda nor the names of any contributors\n * may be used to endorse or promote products derived from this software\n * without specific prior written permission.\n * \n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n * THE POSSIBILITY OF SUCH DAMAGE.\n */\n (function(root, factory) {\n factory(root[\"Bokeh\"], \"2.3.3\");\n })(this, function(Bokeh, version) {\n var define;\n return (function(modules, entry, aliases, externals) {\n const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n if (bokeh != null) {\n return bokeh.register_plugin(modules, entry, aliases);\n } else {\n throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n }\n })\n ({\n 464: function _(t,e,o,r,s){r();const _=t(1).__importStar(t(465));o.Tables=_;t(7).register_models(_)},\n 465: function _(g,a,r,e,t){e();const o=g(1);o.__exportStar(g(466),r),o.__exportStar(g(469),r),t(\"DataTable\",g(472).DataTable),t(\"TableColumn\",g(490).TableColumn),t(\"TableWidget\",g(489).TableWidget);var n=g(492);t(\"AvgAggregator\",n.AvgAggregator),t(\"MinAggregator\",n.MinAggregator),t(\"MaxAggregator\",n.MaxAggregator),t(\"SumAggregator\",n.SumAggregator);var A=g(493);t(\"GroupingInfo\",A.GroupingInfo),t(\"DataCube\",A.DataCube)},\n 466: function _(e,t,i,s,r){s();const a=e(1),n=e(43),l=e(240),u=e(53),d=e(467),o=a.__importStar(e(468));class _ extends l.DOMView{constructor(e){const{model:t,parent:i}=e.column;super(Object.assign({model:t,parent:i},e)),this.args=e,this.initialize(),this.render()}get emptyValue(){return null}initialize(){super.initialize(),this.inputEl=this._createInput(),this.defaultValue=null}async lazy_initialize(){throw new Error(\"unsupported\")}css_classes(){return super.css_classes().concat(o.cell_editor)}render(){super.render(),this.args.container.append(this.el),this.el.appendChild(this.inputEl),this.renderEditor(),this.disableNavigation()}renderEditor(){}disableNavigation(){this.inputEl.addEventListener(\"keydown\",(e=>{switch(e.keyCode){case n.Keys.Left:case n.Keys.Right:case n.Keys.Up:case n.Keys.Down:case n.Keys.PageUp:case n.Keys.PageDown:e.stopImmediatePropagation()}}))}destroy(){this.remove()}focus(){this.inputEl.focus()}show(){}hide(){}position(){}getValue(){return this.inputEl.value}setValue(e){this.inputEl.value=e}serializeValue(){return this.getValue()}isValueChanged(){return!(\"\"==this.getValue()&&null==this.defaultValue)&&this.getValue()!==this.defaultValue}applyValue(e,t){const i=this.args.grid.getData(),s=i.index.indexOf(e[d.DTINDEX_NAME]);i.setField(s,this.args.column.field,t)}loadValue(e){const t=e[this.args.column.field];this.defaultValue=null!=t?t:this.emptyValue,this.setValue(this.defaultValue)}validateValue(e){if(this.args.column.validator){const t=this.args.column.validator(e);if(!t.valid)return t}return{valid:!0,msg:null}}validate(){return this.validateValue(this.getValue())}}i.CellEditorView=_,_.__name__=\"CellEditorView\";class c extends u.Model{}i.CellEditor=c,c.__name__=\"CellEditor\";class p extends _{get emptyValue(){return\"\"}_createInput(){return n.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}}i.StringEditorView=p,p.__name__=\"StringEditorView\";class h extends c{static init_StringEditor(){this.prototype.default_view=p,this.define((({String:e,Array:t})=>({completions:[t(e),[]]})))}}i.StringEditor=h,h.__name__=\"StringEditor\",h.init_StringEditor();class E extends _{_createInput(){return n.textarea()}renderEditor(){this.inputEl.focus(),this.inputEl.select()}}i.TextEditorView=E,E.__name__=\"TextEditorView\";class V extends c{static init_TextEditor(){this.prototype.default_view=E}}i.TextEditor=V,V.__name__=\"TextEditor\",V.init_TextEditor();class m extends _{_createInput(){return n.select()}renderEditor(){for(const e of this.model.options)this.inputEl.appendChild(n.option({value:e},e));this.focus()}}i.SelectEditorView=m,m.__name__=\"SelectEditorView\";class f extends c{static init_SelectEditor(){this.prototype.default_view=m,this.define((({String:e,Array:t})=>({options:[t(e),[]]})))}}i.SelectEditor=f,f.__name__=\"SelectEditor\",f.init_SelectEditor();class x extends _{_createInput(){return n.input({type:\"text\"})}}i.PercentEditorView=x,x.__name__=\"PercentEditorView\";class g extends c{static init_PercentEditor(){this.prototype.default_view=x}}i.PercentEditor=g,g.__name__=\"PercentEditor\",g.init_PercentEditor();class w extends _{_createInput(){return n.input({type:\"checkbox\"})}renderEditor(){this.focus()}loadValue(e){this.defaultValue=!!e[this.args.column.field],this.inputEl.checked=this.defaultValue}serializeValue(){return this.inputEl.checked}}i.CheckboxEditorView=w,w.__name__=\"CheckboxEditorView\";class v extends c{static init_CheckboxEditor(){this.prototype.default_view=w}}i.CheckboxEditor=v,v.__name__=\"CheckboxEditor\",v.init_CheckboxEditor();class y extends _{_createInput(){return n.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}remove(){super.remove()}serializeValue(){var e;return null!==(e=parseInt(this.getValue(),10))&&void 0!==e?e:0}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}validateValue(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid integer\"}:super.validateValue(e)}}i.IntEditorView=y,y.__name__=\"IntEditorView\";class I extends c{static init_IntEditor(){this.prototype.default_view=y,this.define((({Int:e})=>({step:[e,1]})))}}i.IntEditor=I,I.__name__=\"IntEditor\",I.init_IntEditor();class b extends _{_createInput(){return n.input({type:\"text\"})}renderEditor(){this.inputEl.focus(),this.inputEl.select()}remove(){super.remove()}serializeValue(){var e;return null!==(e=parseFloat(this.getValue()))&&void 0!==e?e:0}loadValue(e){super.loadValue(e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()}validateValue(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid number\"}:super.validateValue(e)}}i.NumberEditorView=b,b.__name__=\"NumberEditorView\";class N extends c{static init_NumberEditor(){this.prototype.default_view=b,this.define((({Number:e})=>({step:[e,.01]})))}}i.NumberEditor=N,N.__name__=\"NumberEditor\",N.init_NumberEditor();class S extends _{_createInput(){return n.input({type:\"text\"})}}i.TimeEditorView=S,S.__name__=\"TimeEditorView\";class C extends c{static init_TimeEditor(){this.prototype.default_view=S}}i.TimeEditor=C,C.__name__=\"TimeEditor\",C.init_TimeEditor();class D extends _{_createInput(){return n.input({type:\"text\"})}get emptyValue(){return new Date}renderEditor(){this.inputEl.focus(),this.inputEl.select()}destroy(){super.destroy()}show(){super.show()}hide(){super.hide()}position(){return super.position()}getValue(){}setValue(e){}}i.DateEditorView=D,D.__name__=\"DateEditorView\";class T extends c{static init_DateEditor(){this.prototype.default_view=D}}i.DateEditor=T,T.__name__=\"DateEditor\",T.init_DateEditor()},\n 467: function _(_,n,i,t,d){t(),i.DTINDEX_NAME=\"__bkdt_internal_index__\"},\n 468: function _(e,l,o,t,r){t(),o.root=\"bk-root\",o.data_table=\"bk-data-table\",o.cell_special_defaults=\"bk-cell-special-defaults\",o.cell_select=\"bk-cell-select\",o.cell_index=\"bk-cell-index\",o.header_index=\"bk-header-index\",o.cell_editor=\"bk-cell-editor\",o.cell_editor_completion=\"bk-cell-editor-completion\",o.default='.bk-root .bk-data-table{box-sizing:content-box;font-size:11px;}.bk-root .bk-data-table input[type=\"checkbox\"]{margin-left:4px;margin-right:4px;}.bk-root .bk-cell-special-defaults{border-right-color:silver;border-right-style:solid;background:#f5f5f5;}.bk-root .bk-cell-select{border-right-color:silver;border-right-style:solid;background:#f5f5f5;}.bk-root .slick-cell.bk-cell-index{border-right-color:silver;border-right-style:solid;background:#f5f5f5;text-align:right;background:#f0f0f0;color:#909090;}.bk-root .bk-header-index .slick-column-name{float:right;}.bk-root .slick-row.selected .bk-cell-index{background-color:transparent;}.bk-root .slick-row.odd{background:#f0f0f0;}.bk-root .slick-cell{padding-left:4px;padding-right:4px;border-right-color:transparent;border:0.25px solid transparent;}.bk-root .slick-cell .bk{line-height:inherit;}.bk-root .slick-cell.active{border-style:dashed;}.bk-root .slick-cell.selected{background-color:#F0F8FF;}.bk-root .slick-cell.editable{padding-left:0;padding-right:0;}.bk-root .bk-cell-editor{display:contents;}.bk-root .bk-cell-editor input,.bk-root .bk-cell-editor select{width:100%;height:100%;border:0;margin:0;padding:0;outline:0;background:transparent;vertical-align:baseline;}.bk-root .bk-cell-editor input{padding-left:4px;padding-right:4px;}.bk-root .bk-cell-editor-completion{font-size:11px;}'},\n 469: function _(t,e,r,a,n){a();const i=t(1),o=i.__importDefault(t(181)),s=i.__importStar(t(183)),l=t(470),c=t(43),m=t(20),u=t(8),_=t(34),F=t(22),d=t(53);class f extends d.Model{constructor(t){super(t)}doFormat(t,e,r,a,n){return null==r?\"\":(r+\"\").replace(/&/g,\"&\").replace(/</g,\"<\").replace(/>/g,\">\")}}r.CellFormatter=f,f.__name__=\"CellFormatter\";class h extends f{constructor(t){super(t)}static init_StringFormatter(){this.define((({Color:t,Nullable:e})=>({font_style:[m.FontStyle,\"normal\"],text_align:[m.TextAlign,\"left\"],text_color:[e(t),null]})))}doFormat(t,e,r,a,n){const{font_style:i,text_align:o,text_color:s}=this,l=c.div({},null==r?\"\":`${r}`);switch(i){case\"bold\":l.style.fontWeight=\"bold\";break;case\"italic\":l.style.fontStyle=\"italic\"}return null!=o&&(l.style.textAlign=o),null!=s&&(l.style.color=F.color2css(s)),l.outerHTML}}r.StringFormatter=h,h.__name__=\"StringFormatter\",h.init_StringFormatter();class g extends h{constructor(t){super(t)}static init_ScientificFormatter(){this.define((({Number:t,String:e,Nullable:r})=>({nan_format:[r(e),null],precision:[t,10],power_limit_high:[t,5],power_limit_low:[t,-3]})))}get scientific_limit_low(){return 10**this.power_limit_low}get scientific_limit_high(){return 10**this.power_limit_high}doFormat(t,e,r,a,n){const i=Math.abs(r)<=this.scientific_limit_low||Math.abs(r)>=this.scientific_limit_high;let o=this.precision;return o<1&&(o=1),r=null!=r&&!isNaN(r)||null==this.nan_format?0==r?_.to_fixed(r,1):i?r.toExponential(o):_.to_fixed(r,o):this.nan_format,super.doFormat(t,e,r,a,n)}}r.ScientificFormatter=g,g.__name__=\"ScientificFormatter\",g.init_ScientificFormatter();class p extends h{constructor(t){super(t)}static init_NumberFormatter(){this.define((({String:t,Nullable:e})=>({format:[t,\"0,0\"],language:[t,\"en\"],rounding:[m.RoundingFunction,\"round\"],nan_format:[e(t),null]})))}doFormat(t,e,r,a,n){const{format:i,language:o,nan_format:l}=this,c=(()=>{switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}})();return r=null!=r&&!isNaN(r)||null==l?s.format(r,i,o,c):l,super.doFormat(t,e,r,a,n)}}r.NumberFormatter=p,p.__name__=\"NumberFormatter\",p.init_NumberFormatter();class S extends f{constructor(t){super(t)}static init_BooleanFormatter(){this.define((({String:t})=>({icon:[t,\"check\"]})))}doFormat(t,e,r,a,n){return r?c.i({class:this.icon}).outerHTML:\"\"}}r.BooleanFormatter=S,S.__name__=\"BooleanFormatter\",S.init_BooleanFormatter();class b extends h{constructor(t){super(t)}static init_DateFormatter(){this.define((({String:t,Nullable:e})=>({format:[t,\"ISO-8601\"],nan_format:[e(t),null]})))}getFormat(){switch(this.format){case\"ATOM\":case\"W3C\":case\"RFC-3339\":case\"ISO-8601\":return\"%Y-%m-%d\";case\"COOKIE\":return\"%a, %d %b %Y\";case\"RFC-850\":return\"%A, %d-%b-%y\";case\"RFC-1123\":case\"RFC-2822\":return\"%a, %e %b %Y\";case\"RSS\":case\"RFC-822\":case\"RFC-1036\":return\"%a, %e %b %y\";case\"TIMESTAMP\":return;default:return this.format}}doFormat(t,e,r,a,n){const{nan_format:i}=this;let s;return s=null!=(r=u.isString(r)?parseInt(r,10):r)&&!isNaN(r)&&-9223372036854776!==r||null==i?null==r?\"\":o.default(r,this.getFormat()):i,super.doFormat(t,e,s,a,n)}}r.DateFormatter=b,b.__name__=\"DateFormatter\",b.init_DateFormatter();class x extends f{constructor(t){super(t)}static init_HTMLTemplateFormatter(){this.define((({String:t})=>({template:[t,\"<%= value %>\"]})))}doFormat(t,e,r,a,n){const{template:i}=this;if(null==r)return\"\";return l._.template(i)(Object.assign(Object.assign({},n),{value:r}))}}r.HTMLTemplateFormatter=x,x.__name__=\"HTMLTemplateFormatter\",x.init_HTMLTemplateFormatter()},\n 470: function _(e,n,t,f,i){var o=e(471),d=o.template;function r(e,n,t){return d(e,n,t)}r._=o,n.exports=r,\"function\"==typeof define&&define.amd?define((function(){return r})):\"undefined\"==typeof window&&\"undefined\"==typeof navigator||(window.UnderscoreTemplate=r)},\n 471: function _(r,e,n,t,a){\n // (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n // Underscore may be freely distributed under the MIT license.\n var u={},c=Array.prototype,o=Object.prototype,l=c.slice,i=o.toString,f=o.hasOwnProperty,s=c.forEach,p=Object.keys,_=Array.isArray,h=function(){},v=h.each=h.forEach=function(r,e,n){if(null!=r)if(s&&r.forEach===s)r.forEach(e,n);else if(r.length===+r.length){for(var t=0,a=r.length;t<a;t++)if(e.call(n,r[t],t,r)===u)return}else{var c=h.keys(r);for(t=0,a=c.length;t<a;t++)if(e.call(n,r[c[t]],c[t],r)===u)return}};h.keys=p||function(r){if(r!==Object(r))throw new TypeError(\"Invalid object\");var e=[];for(var n in r)h.has(r,n)&&e.push(n);return e},h.defaults=function(r){return v(l.call(arguments,1),(function(e){if(e)for(var n in e)void 0===r[n]&&(r[n]=e[n])})),r},h.isArray=_||function(r){return\"[object Array]\"===i.call(r)},h.has=function(r,e){if(!h.isArray(e))return null!=r&&f.call(r,e);for(var n=e.length,t=0;t<n;t++){var a=e[t];if(null==r||!f.call(r,a))return!1;r=r[a]}return!!n};var g={escape:{\"&\":\"&\",\"<\":\"<\",\">\":\">\",'\"':\""\",\"'\":\"'\"}},y={escape:new RegExp(\"[\"+h.keys(g.escape).join(\"\")+\"]\",\"g\")};h.each([\"escape\"],(function(r){h[r]=function(e){return null==e?\"\":(\"\"+e).replace(y[r],(function(e){return g[r][e]}))}})),h.templateSettings={evaluate:/<%([\\s\\S]+?)%>/g,interpolate:/<%=([\\s\\S]+?)%>/g,escape:/<%-([\\s\\S]+?)%>/g};var j=/(.)^/,b={\"'\":\"'\",\"\\\\\":\"\\\\\",\"\\r\":\"r\",\"\\n\":\"n\",\"\\t\":\"t\",\"\\u2028\":\"u2028\",\"\\u2029\":\"u2029\"},w=/\\\\|'|\\r|\\n|\\t|\\u2028|\\u2029/g;h.template=function(r,e,n){var t;n=h.defaults({},n,h.templateSettings);var a=new RegExp([(n.escape||j).source,(n.interpolate||j).source,(n.evaluate||j).source].join(\"|\")+\"|$\",\"g\"),u=0,c=\"__p+='\";r.replace(a,(function(e,n,t,a,o){return c+=r.slice(u,o).replace(w,(function(r){return\"\\\\\"+b[r]})),n&&(c+=\"'+\\n((__t=(\"+n+\"))==null?'':_.escape(__t))+\\n'\"),t&&(c+=\"'+\\n((__t=(\"+t+\"))==null?'':__t)+\\n'\"),a&&(c+=\"';\\n\"+a+\"\\n__p+='\"),u=o+e.length,e})),c+=\"';\\n\",n.variable||(c=\"with(obj||{}){\\n\"+c+\"}\\n\"),c=\"var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\\n\"+c+\"return __p;\\n\";try{t=new Function(n.variable||\"obj\",\"_\",c)}catch(r){throw r.source=c,r}if(e)return t(e,h);var o=function(r){return t.call(this,r,h)};return o.source=\"function(\"+(n.variable||\"obj\")+\"){\\n\"+c+\"}\",o},e.exports=h},\n 472: function _(e,t,i,s,o){s();const n=e(1),l=e(473),r=e(477),d=e(478),a=e(479),h=e(34),u=e(8),c=e(9),_=e(13),m=e(19),g=e(488),p=e(467),f=e(489),b=e(490),w=n.__importStar(e(468)),x=w,C=n.__importDefault(e(491));i.AutosizeModes={fit_columns:\"FCV\",fit_viewport:\"FVC\",force_fit:\"LFF\",none:\"NOA\"};let z=!1;class v{constructor(e,t){this.init(e,t)}init(e,t){if(p.DTINDEX_NAME in e.data)throw new Error(`special name ${p.DTINDEX_NAME} cannot be used as a data table column`);this.source=e,this.view=t,this.index=[...this.view.indices]}getLength(){return this.index.length}getItem(e){const t={};for(const i of _.keys(this.source.data))t[i]=this.source.data[i][this.index[e]];return t[p.DTINDEX_NAME]=this.index[e],t}getField(e,t){return t==p.DTINDEX_NAME?this.index[e]:this.source.data[t][this.index[e]]}setField(e,t,i){const s=this.index[e];this.source.patch({[t]:[[s,i]]})}getRecords(){return c.range(0,this.getLength()).map((e=>this.getItem(e)))}getItems(){return this.getRecords()}slice(e,t,i){return e=null!=e?e:0,t=null!=t?t:this.getLength(),i=null!=i?i:1,c.range(e,t,i).map((e=>this.getItem(e)))}sort(e){let t=e.map((e=>[e.sortCol.field,e.sortAsc?1:-1]));0==t.length&&(t=[[p.DTINDEX_NAME,1]]);const i=this.getRecords(),s=this.index.slice();this.index.sort(((e,o)=>{for(const[n,l]of t){const t=i[s.indexOf(e)][n],r=i[s.indexOf(o)][n];if(t!==r)return u.isNumber(t)&&u.isNumber(r)?l*(t-r||+isNaN(t)-+isNaN(r)):`${t}`>`${r}`?l:-l}return 0}))}}i.TableDataProvider=v,v.__name__=\"TableDataProvider\";class A extends g.WidgetView{constructor(){super(...arguments),this._in_selection_update=!1,this._width=null}connect_signals(){super.connect_signals(),this.connect(this.model.change,(()=>this.render())),this.connect(this.model.source.streaming,(()=>this.updateGrid())),this.connect(this.model.source.patching,(()=>this.updateGrid())),this.connect(this.model.source.change,(()=>this.updateGrid())),this.connect(this.model.source.properties.data.change,(()=>this.updateGrid())),this.connect(this.model.source.selected.change,(()=>this.updateSelection())),this.connect(this.model.source.selected.properties.indices.change,(()=>this.updateSelection()))}remove(){var e;null===(e=this.grid)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),C.default,w.default]}update_position(){super.update_position(),this.grid.resizeCanvas()}after_layout(){super.after_layout(),this.updateLayout(!0,!1)}box_sizing(){const e=super.box_sizing();return\"fit_viewport\"===this.model.autosize_mode&&null!=this._width&&(e.width=this._width),e}updateLayout(e,t){const s=this.autosize;s===i.AutosizeModes.fit_columns||s===i.AutosizeModes.force_fit?(e||this.grid.resizeCanvas(),this.grid.autosizeColumns()):e&&t&&s===i.AutosizeModes.fit_viewport&&this.invalidate_layout()}updateGrid(){if(this.model.view.compute_indices(),this.data.init(this.model.source,this.model.view),this.model.sortable){const e=this.grid.getColumns(),t=this.grid.getSortColumns().map((t=>({sortCol:{field:e[this.grid.getColumnIndex(t.columnId)].field},sortAsc:t.sortAsc})));this.data.sort(t)}this.grid.invalidate(),this.updateLayout(!0,!0)}updateSelection(){if(this._in_selection_update)return;const{selected:e}=this.model.source,t=e.indices.map((e=>this.data.index.indexOf(e))).sort();this._in_selection_update=!0,this.grid.setSelectedRows(t),this._in_selection_update=!1;const i=this.grid.getViewport(),s=this.model.get_scroll_index(i,t);null!=s&&this.grid.scrollRowToTop(s)}newIndexColumn(){return{id:h.uniqueId(),name:this.model.index_header,field:p.DTINDEX_NAME,width:this.model.index_width,behavior:\"select\",cannotTriggerInsert:!0,resizable:!1,selectable:!1,sortable:!0,cssClass:x.cell_index,headerCssClass:x.header_index}}css_classes(){return super.css_classes().concat(x.data_table)}get autosize(){let e;return e=!0===this.model.fit_columns?i.AutosizeModes.force_fit:!1===this.model.fit_columns?i.AutosizeModes.none:i.AutosizeModes[this.model.autosize_mode],e}render(){var e;const t=this.model.columns.map((e=>Object.assign(Object.assign({},e.toColumn()),{parent:this})));let s=null;if(\"checkbox\"==this.model.selectable&&(s=new r.CheckboxSelectColumn({cssClass:x.cell_select}),t.unshift(s.getColumnDefinition())),null!=this.model.index_position){const e=this.model.index_position,i=this.newIndexColumn();-1==e?t.push(i):e<-1?t.splice(e+1,0,i):t.splice(e,0,i)}let{reorderable:o}=this.model;!o||\"undefined\"!=typeof $&&null!=$.fn&&null!=$.fn.sortable||(z||(m.logger.warn(\"jquery-ui is required to enable DataTable.reorderable\"),z=!0),o=!1);let n=-1,h=!1;const{frozen_rows:c,frozen_columns:_}=this.model,g=null==_?-1:_-1;null!=c&&(h=c<0,n=Math.abs(c));const p={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:o,autosizeColsMode:this.autosize,multiColumnSort:this.model.sortable,editable:this.model.editable,autoEdit:this.model.auto_edit,autoHeight:!1,rowHeight:this.model.row_height,frozenColumn:g,frozenRow:n,frozenBottom:h},f=null!=this.grid;if(this.data=new v(this.model.source,this.model.view),this.grid=new a.Grid(this.el,this.data,t,p),this.autosize==i.AutosizeModes.fit_viewport){this.grid.autosizeColumns();let i=0;for(const s of t)i+=null!==(e=s.width)&&void 0!==e?e:0;this._width=Math.ceil(i)}if(this.grid.onSort.subscribe(((e,t)=>{if(!this.model.sortable)return;const i=t.sortCols;null!=i&&(this.data.sort(i),this.grid.invalidate(),this.updateSelection(),this.grid.render(),this.model.header_row||this._hide_header(),this.model.update_sort_columns(i))})),!1!==this.model.selectable){this.grid.setSelectionModel(new l.RowSelectionModel({selectActiveRow:null==s})),null!=s&&this.grid.registerPlugin(s);const e={dataItemColumnValueExtractor(e,t){let i=e[t.field];return u.isString(i)&&(i=i.replace(/\\n/g,\"\\\\n\")),i},includeHeaderWhenCopying:!1};this.grid.registerPlugin(new d.CellExternalCopyManager(e)),this.grid.onSelectedRowsChanged.subscribe(((e,t)=>{this._in_selection_update||(this.model.source.selected.indices=t.rows.map((e=>this.data.index[e])))})),this.updateSelection(),this.model.header_row||this._hide_header()}f&&this.updateLayout(f,!1)}_hide_header(){for(const e of this.el.querySelectorAll(\".slick-header-columns\"))e.style.height=\"0px\";this.grid.resizeCanvas()}}i.DataTableView=A,A.__name__=\"DataTableView\";class D extends f.TableWidget{constructor(e){super(e),this._sort_columns=[]}get sort_columns(){return this._sort_columns}static init_DataTable(){this.prototype.default_view=A,this.define((({Array:e,Boolean:t,Int:i,Ref:s,String:o,Enum:n,Or:l,Nullable:r})=>({autosize_mode:[n(\"fit_columns\",\"fit_viewport\",\"none\",\"force_fit\"),\"force_fit\"],auto_edit:[t,!1],columns:[e(s(b.TableColumn)),[]],fit_columns:[r(t),null],frozen_columns:[r(i),null],frozen_rows:[r(i),null],sortable:[t,!0],reorderable:[t,!0],editable:[t,!1],selectable:[l(t,n(\"checkbox\")),!0],index_position:[r(i),0],index_header:[o,\"#\"],index_width:[i,40],scroll_to_selection:[t,!0],header_row:[t,!0],row_height:[i,25]}))),this.override({width:600,height:400})}update_sort_columns(e){this._sort_columns=e.map((({sortCol:e,sortAsc:t})=>({field:e.field,sortAsc:t})))}get_scroll_index(e,t){return this.scroll_to_selection&&0!=t.length?c.some(t,(t=>e.top<=t&&t<=e.bottom))?null:Math.max(0,Math.min(...t)-1):null}}i.DataTable=D,D.__name__=\"DataTable\",D.init_DataTable()},\n 473: function _(e,t,n,o,r){var l=e(474),i=e(476);t.exports={RowSelectionModel:function(e){var t,n,o,r=[],c=this,u=new i.EventHandler,s={selectActiveRow:!0};function a(e){return function(){n||(n=!0,e.apply(this,arguments),n=!1)}}function f(e){for(var t=[],n=0;n<e.length;n++)for(var o=e[n].fromRow;o<=e[n].toRow;o++)t.push(o);return t}function h(e){for(var n=[],o=t.getColumns().length-1,r=0;r<e.length;r++)n.push(new i.Range(e[r],0,e[r],o));return n}function w(){return f(r)}function g(e){(r&&0!==r.length||e&&0!==e.length)&&(r=e,c.onSelectedRangesChanged.notify(r))}function v(e,n){o.selectActiveRow&&null!=n.row&&g([new i.Range(n.row,0,n.row,t.getColumns().length-1)])}function p(e){var n=t.getActiveCell();if(t.getOptions().multiSelect&&n&&e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&(e.which==i.keyCode.UP||e.which==i.keyCode.DOWN)){var o=w();o.sort((function(e,t){return e-t})),o.length||(o=[n.row]);var r,l=o[0],c=o[o.length-1];if((r=e.which==i.keyCode.DOWN?n.row<c||l==c?++c:++l:n.row<c?--c:--l)>=0&&r<t.getDataLength())t.scrollRowIntoView(r),g(h(function(e,t){var n,o=[];for(n=e;n<=t;n++)o.push(n);for(n=t;n<e;n++)o.push(n);return o}(l,c)));e.preventDefault(),e.stopPropagation()}}function y(e){var n=t.getCellFromEvent(e);if(!n||!t.canCellBeActive(n.row,n.cell))return!1;if(!t.getOptions().multiSelect||!e.ctrlKey&&!e.shiftKey&&!e.metaKey)return!1;var o=f(r),i=l.inArray(n.row,o);if(-1===i&&(e.ctrlKey||e.metaKey))o.push(n.row),t.setActiveCell(n.row,n.cell);else if(-1!==i&&(e.ctrlKey||e.metaKey))o=l.grep(o,(function(e,t){return e!==n.row})),t.setActiveCell(n.row,n.cell);else if(o.length&&e.shiftKey){var c=o.pop(),u=Math.min(n.row,c),s=Math.max(n.row,c);o=[];for(var a=u;a<=s;a++)a!==c&&o.push(a);o.push(c),t.setActiveCell(n.row,n.cell)}return g(h(o)),e.stopImmediatePropagation(),!0}l.extend(this,{getSelectedRows:w,setSelectedRows:function(e){g(h(e))},getSelectedRanges:function(){return r},setSelectedRanges:g,init:function(n){o=l.extend(!0,{},s,e),t=n,u.subscribe(t.onActiveCellChanged,a(v)),u.subscribe(t.onKeyDown,a(p)),u.subscribe(t.onClick,a(y))},destroy:function(){u.unsubscribeAll()},pluginName:\"RowSelectionModel\",onSelectedRangesChanged:new i.Event})}}},\n 474: function _(e,n,f,o,t){n.exports=\"undefined\"!=typeof $?$:e(475)},\n 475: function _(e,t,n,r,i){\n /*!\n * jQuery JavaScript Library v3.5.1\n * https://jquery.com/\n *\n * Includes Sizzle.js\n * https://sizzlejs.com/\n *\n * Copyright JS Foundation and other contributors\n * Released under the MIT license\n * https://jquery.org/license\n *\n * Date: 2020-05-04T22:49Z\n */\n !function(e,n){\"use strict\";\"object\"==typeof t&&\"object\"==typeof t.exports?t.exports=e.document?n(e,!0):function(e){if(!e.document)throw new Error(\"jQuery requires a window with a document\");return n(e)}:n(e)}(\"undefined\"!=typeof window?window:this,(function(e,t){\"use strict\";var n=[],r=Object.getPrototypeOf,i=n.slice,o=n.flat?function(e){return n.flat.call(e)}:function(e){return n.concat.apply([],e)},a=n.push,s=n.indexOf,u={},l=u.toString,c=u.hasOwnProperty,f=c.toString,p=f.call(Object),d={},h=function(e){return\"function\"==typeof e&&\"number\"!=typeof e.nodeType},g=function(e){return null!=e&&e===e.window},v=e.document,y={type:!0,src:!0,nonce:!0,noModule:!0};function m(e,t,n){var r,i,o=(n=n||v).createElement(\"script\");if(o.text=e,t)for(r in y)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function x(e){return null==e?e+\"\":\"object\"==typeof e||\"function\"==typeof e?u[l.call(e)]||\"object\":typeof e}var b=\"3.5.1\",w=function(e,t){return new w.fn.init(e,t)};function T(e){var t=!!e&&\"length\"in e&&e.length,n=x(e);return!h(e)&&!g(e)&&(\"array\"===n||0===t||\"number\"==typeof t&&t>0&&t-1 in e)}w.fn=w.prototype={jquery:b,constructor:w,length:0,toArray:function(){return i.call(this)},get:function(e){return null==e?i.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=w.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return w.each(this,e)},map:function(e){return this.pushStack(w.map(this,(function(t,n){return e.call(t,n,t)})))},slice:function(){return this.pushStack(i.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(w.grep(this,(function(e,t){return(t+1)%2})))},odd:function(){return this.pushStack(w.grep(this,(function(e,t){return t%2})))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:n.sort,splice:n.splice},w.extend=w.fn.extend=function(){var e,t,n,r,i,o,a=arguments[0]||{},s=1,u=arguments.length,l=!1;for(\"boolean\"==typeof a&&(l=a,a=arguments[s]||{},s++),\"object\"==typeof a||h(a)||(a={}),s===u&&(a=this,s--);s<u;s++)if(null!=(e=arguments[s]))for(t in e)r=e[t],\"__proto__\"!==t&&a!==r&&(l&&r&&(w.isPlainObject(r)||(i=Array.isArray(r)))?(n=a[t],o=i&&!Array.isArray(n)?[]:i||w.isPlainObject(n)?n:{},i=!1,a[t]=w.extend(l,o,r)):void 0!==r&&(a[t]=r));return a},w.extend({expando:\"jQuery\"+(b+Math.random()).replace(/\\D/g,\"\"),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isPlainObject:function(e){var t,n;return!(!e||\"[object Object]\"!==l.call(e))&&(!(t=r(e))||\"function\"==typeof(n=c.call(t,\"constructor\")&&t.constructor)&&f.call(n)===p)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},globalEval:function(e,t,n){m(e,{nonce:t&&t.nonce},n)},each:function(e,t){var n,r=0;if(T(e))for(n=e.length;r<n&&!1!==t.call(e[r],r,e[r]);r++);else for(r in e)if(!1===t.call(e[r],r,e[r]))break;return e},makeArray:function(e,t){var n=t||[];return null!=e&&(T(Object(e))?w.merge(n,\"string\"==typeof e?[e]:e):a.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:s.call(t,e,n)},merge:function(e,t){for(var n=+t.length,r=0,i=e.length;r<n;r++)e[i++]=t[r];return e.length=i,e},grep:function(e,t,n){for(var r=[],i=0,o=e.length,a=!n;i<o;i++)!t(e[i],i)!==a&&r.push(e[i]);return r},map:function(e,t,n){var r,i,a=0,s=[];if(T(e))for(r=e.length;a<r;a++)null!=(i=t(e[a],a,n))&&s.push(i);else for(a in e)null!=(i=t(e[a],a,n))&&s.push(i);return o(s)},guid:1,support:d}),\"function\"==typeof Symbol&&(w.fn[Symbol.iterator]=n[Symbol.iterator]),w.each(\"Boolean Number String Function Array Date RegExp Object Error Symbol\".split(\" \"),(function(e,t){u[\"[object \"+t+\"]\"]=t.toLowerCase()}));var C=\n /*!\n * Sizzle CSS Selector Engine v2.3.5\n * https://sizzlejs.com/\n *\n * Copyright JS Foundation and other contributors\n * Released under the MIT license\n * https://js.foundation/\n *\n * Date: 2020-03-14\n */\n function(e){var t,n,r,i,o,a,s,u,l,c,f,p,d,h,g,v,y,m,x,b=\"sizzle\"+1*new Date,w=e.document,T=0,C=0,E=ue(),S=ue(),k=ue(),A=ue(),N=function(e,t){return e===t&&(f=!0),0},D={}.hasOwnProperty,j=[],q=j.pop,L=j.push,H=j.push,O=j.slice,P=function(e,t){for(var n=0,r=e.length;n<r;n++)if(e[n]===t)return n;return-1},R=\"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",M=\"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",I=\"(?:\\\\\\\\[\\\\da-fA-F]{1,6}[\\\\x20\\\\t\\\\r\\\\n\\\\f]?|\\\\\\\\[^\\\\r\\\\n\\\\f]|[\\\\w-]|[^\\0-\\\\x7f])+\",W=\"\\\\[[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(\"+I+\")(?:\"+M+\"*([*^$|!~]?=)\"+M+\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\"+I+\"))|)\"+M+\"*\\\\]\",F=\":(\"+I+\")(?:\\\\((('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\"+W+\")*)|.*)\\\\)|)\",B=new RegExp(M+\"+\",\"g\"),$=new RegExp(\"^[\\\\x20\\\\t\\\\r\\\\n\\\\f]+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)[\\\\x20\\\\t\\\\r\\\\n\\\\f]+$\",\"g\"),_=new RegExp(\"^[\\\\x20\\\\t\\\\r\\\\n\\\\f]*,[\\\\x20\\\\t\\\\r\\\\n\\\\f]*\"),z=new RegExp(\"^[\\\\x20\\\\t\\\\r\\\\n\\\\f]*([>+~]|[\\\\x20\\\\t\\\\r\\\\n\\\\f])[\\\\x20\\\\t\\\\r\\\\n\\\\f]*\"),U=new RegExp(M+\"|>\"),X=new RegExp(F),V=new RegExp(\"^\"+I+\"$\"),G={ID:new RegExp(\"^#(\"+I+\")\"),CLASS:new RegExp(\"^\\\\.(\"+I+\")\"),TAG:new RegExp(\"^(\"+I+\"|[*])\"),ATTR:new RegExp(\"^\"+W),PSEUDO:new RegExp(\"^\"+F),CHILD:new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\([\\\\x20\\\\t\\\\r\\\\n\\\\f]*(even|odd|(([+-]|)(\\\\d*)n|)[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(?:([+-]|)[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(\\\\d+)|))[\\\\x20\\\\t\\\\r\\\\n\\\\f]*\\\\)|)\",\"i\"),bool:new RegExp(\"^(?:\"+R+\")$\",\"i\"),needsContext:new RegExp(\"^[\\\\x20\\\\t\\\\r\\\\n\\\\f]*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\([\\\\x20\\\\t\\\\r\\\\n\\\\f]*((?:-\\\\d)?\\\\d*)[\\\\x20\\\\t\\\\r\\\\n\\\\f]*\\\\)|)(?=[^-]|$)\",\"i\")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\\d$/i,K=/^[^{]+\\{\\s*\\[native \\w/,Z=/^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,ee=/[+~]/,te=new RegExp(\"\\\\\\\\[\\\\da-fA-F]{1,6}[\\\\x20\\\\t\\\\r\\\\n\\\\f]?|\\\\\\\\([^\\\\r\\\\n\\\\f])\",\"g\"),ne=function(e,t){var n=\"0x\"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,ie=function(e,t){return t?\"\\0\"===e?\"�\":e.slice(0,-1)+\"\\\\\"+e.charCodeAt(e.length-1).toString(16)+\" \":\"\\\\\"+e},oe=function(){p()},ae=be((function(e){return!0===e.disabled&&\"fieldset\"===e.nodeName.toLowerCase()}),{dir:\"parentNode\",next:\"legend\"});try{H.apply(j=O.call(w.childNodes),w.childNodes),j[w.childNodes.length].nodeType}catch(e){H={apply:j.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){for(var n=e.length,r=0;e[n++]=t[r++];);e.length=n-1}}}function se(e,t,r,i){var o,s,l,c,f,h,y,m=t&&t.ownerDocument,w=t?t.nodeType:9;if(r=r||[],\"string\"!=typeof e||!e||1!==w&&9!==w&&11!==w)return r;if(!i&&(p(t),t=t||d,g)){if(11!==w&&(f=Z.exec(e)))if(o=f[1]){if(9===w){if(!(l=t.getElementById(o)))return r;if(l.id===o)return r.push(l),r}else if(m&&(l=m.getElementById(o))&&x(t,l)&&l.id===o)return r.push(l),r}else{if(f[2])return H.apply(r,t.getElementsByTagName(e)),r;if((o=f[3])&&n.getElementsByClassName&&t.getElementsByClassName)return H.apply(r,t.getElementsByClassName(o)),r}if(n.qsa&&!A[e+\" \"]&&(!v||!v.test(e))&&(1!==w||\"object\"!==t.nodeName.toLowerCase())){if(y=e,m=t,1===w&&(U.test(e)||z.test(e))){for((m=ee.test(e)&&ye(t.parentNode)||t)===t&&n.scope||((c=t.getAttribute(\"id\"))?c=c.replace(re,ie):t.setAttribute(\"id\",c=b)),s=(h=a(e)).length;s--;)h[s]=(c?\"#\"+c:\":scope\")+\" \"+xe(h[s]);y=h.join(\",\")}try{return H.apply(r,m.querySelectorAll(y)),r}catch(t){A(e,!0)}finally{c===b&&t.removeAttribute(\"id\")}}}return u(e.replace($,\"$1\"),t,r,i)}function ue(){var e=[];return function t(n,i){return e.push(n+\" \")>r.cacheLength&&delete t[e.shift()],t[n+\" \"]=i}}function le(e){return e[b]=!0,e}function ce(e){var t=d.createElement(\"fieldset\");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){for(var n=e.split(\"|\"),i=n.length;i--;)r.attrHandle[n[i]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(e){return function(t){return\"input\"===t.nodeName.toLowerCase()&&t.type===e}}function he(e){return function(t){var n=t.nodeName.toLowerCase();return(\"input\"===n||\"button\"===n)&&t.type===e}}function ge(e){return function(t){return\"form\"in t?t.parentNode&&!1===t.disabled?\"label\"in t?\"label\"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&ae(t)===e:t.disabled===e:\"label\"in t&&t.disabled===e}}function ve(e){return le((function(t){return t=+t,le((function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))}))}))}function ye(e){return e&&void 0!==e.getElementsByTagName&&e}for(t in n=se.support={},o=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||\"HTML\")},p=se.setDocument=function(e){var t,i,a=e?e.ownerDocument||e:w;return a!=d&&9===a.nodeType&&a.documentElement?(h=(d=a).documentElement,g=!o(d),w!=d&&(i=d.defaultView)&&i.top!==i&&(i.addEventListener?i.addEventListener(\"unload\",oe,!1):i.attachEvent&&i.attachEvent(\"onunload\",oe)),n.scope=ce((function(e){return h.appendChild(e).appendChild(d.createElement(\"div\")),void 0!==e.querySelectorAll&&!e.querySelectorAll(\":scope fieldset div\").length})),n.attributes=ce((function(e){return e.className=\"i\",!e.getAttribute(\"className\")})),n.getElementsByTagName=ce((function(e){return e.appendChild(d.createComment(\"\")),!e.getElementsByTagName(\"*\").length})),n.getElementsByClassName=K.test(d.getElementsByClassName),n.getById=ce((function(e){return h.appendChild(e).id=b,!d.getElementsByName||!d.getElementsByName(b).length})),n.getById?(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute(\"id\")===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n=t.getElementById(e);return n?[n]:[]}}):(r.filter.ID=function(e){var t=e.replace(te,ne);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode(\"id\");return n&&n.value===t}},r.find.ID=function(e,t){if(void 0!==t.getElementById&&g){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode(\"id\"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode(\"id\"))&&n.value===e)return[o]}return[]}}),r.find.TAG=n.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):n.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if(\"*\"===e){for(;n=o[i++];)1===n.nodeType&&r.push(n);return r}return o},r.find.CLASS=n.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&g)return t.getElementsByClassName(e)},y=[],v=[],(n.qsa=K.test(d.querySelectorAll))&&(ce((function(e){var t;h.appendChild(e).innerHTML=\"<a id='\"+b+\"'></a><select id='\"+b+\"-\\r\\\\' msallowcapture=''><option selected=''></option></select>\",e.querySelectorAll(\"[msallowcapture^='']\").length&&v.push(\"[*^$]=[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(?:''|\\\"\\\")\"),e.querySelectorAll(\"[selected]\").length||v.push(\"\\\\[[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(?:value|\"+R+\")\"),e.querySelectorAll(\"[id~=\"+b+\"-]\").length||v.push(\"~=\"),(t=d.createElement(\"input\")).setAttribute(\"name\",\"\"),e.appendChild(t),e.querySelectorAll(\"[name='']\").length||v.push(\"\\\\[[\\\\x20\\\\t\\\\r\\\\n\\\\f]*name[\\\\x20\\\\t\\\\r\\\\n\\\\f]*=[\\\\x20\\\\t\\\\r\\\\n\\\\f]*(?:''|\\\"\\\")\"),e.querySelectorAll(\":checked\").length||v.push(\":checked\"),e.querySelectorAll(\"a#\"+b+\"+*\").length||v.push(\".#.+[+~]\"),e.querySelectorAll(\"\\\\\\f\"),v.push(\"[\\\\r\\\\n\\\\f]\")})),ce((function(e){e.innerHTML=\"<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>\";var t=d.createElement(\"input\");t.setAttribute(\"type\",\"hidden\"),e.appendChild(t).setAttribute(\"name\",\"D\"),e.querySelectorAll(\"[name=d]\").length&&v.push(\"name[\\\\x20\\\\t\\\\r\\\\n\\\\f]*[*^$|!~]?=\"),2!==e.querySelectorAll(\":enabled\").length&&v.push(\":enabled\",\":disabled\"),h.appendChild(e).disabled=!0,2!==e.querySelectorAll(\":disabled\").length&&v.push(\":enabled\",\":disabled\"),e.querySelectorAll(\"*,:x\"),v.push(\",.*:\")}))),(n.matchesSelector=K.test(m=h.matches||h.webkitMatchesSelector||h.mozMatchesSelector||h.oMatchesSelector||h.msMatchesSelector))&&ce((function(e){n.disconnectedMatch=m.call(e,\"*\"),m.call(e,\"[s!='']:x\"),y.push(\"!=\",F)})),v=v.length&&new RegExp(v.join(\"|\")),y=y.length&&new RegExp(y.join(\"|\")),t=K.test(h.compareDocumentPosition),x=t||K.test(h.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},N=t?function(e,t){if(e===t)return f=!0,0;var r=!e.compareDocumentPosition-!t.compareDocumentPosition;return r||(1&(r=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!n.sortDetached&&t.compareDocumentPosition(e)===r?e==d||e.ownerDocument==w&&x(w,e)?-1:t==d||t.ownerDocument==w&&x(w,t)?1:c?P(c,e)-P(c,t):0:4&r?-1:1)}:function(e,t){if(e===t)return f=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==d?-1:t==d?1:i?-1:o?1:c?P(c,e)-P(c,t):0;if(i===o)return pe(e,t);for(n=e;n=n.parentNode;)a.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;a[r]===s[r];)r++;return r?pe(a[r],s[r]):a[r]==w?-1:s[r]==w?1:0},d):d},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(p(e),n.matchesSelector&&g&&!A[t+\" \"]&&(!y||!y.test(t))&&(!v||!v.test(t)))try{var r=m.call(e,t);if(r||n.disconnectedMatch||e.document&&11!==e.document.nodeType)return r}catch(e){A(t,!0)}return se(t,d,null,[e]).length>0},se.contains=function(e,t){return(e.ownerDocument||e)!=d&&p(e),x(e,t)},se.attr=function(e,t){(e.ownerDocument||e)!=d&&p(e);var i=r.attrHandle[t.toLowerCase()],o=i&&D.call(r.attrHandle,t.toLowerCase())?i(e,t,!g):void 0;return void 0!==o?o:n.attributes||!g?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},se.escape=function(e){return(e+\"\").replace(re,ie)},se.error=function(e){throw new Error(\"Syntax error, unrecognized expression: \"+e)},se.uniqueSort=function(e){var t,r=[],i=0,o=0;if(f=!n.detectDuplicates,c=!n.sortStable&&e.slice(0),e.sort(N),f){for(;t=e[o++];)t===e[o]&&(i=r.push(o));for(;i--;)e.splice(r[i],1)}return c=null,e},i=se.getText=function(e){var t,n=\"\",r=0,o=e.nodeType;if(o){if(1===o||9===o||11===o){if(\"string\"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===o||4===o)return e.nodeValue}else for(;t=e[r++];)n+=i(t);return n},(r=se.selectors={cacheLength:50,createPseudo:le,match:G,attrHandle:{},find:{},relative:{\">\":{dir:\"parentNode\",first:!0},\" \":{dir:\"parentNode\"},\"+\":{dir:\"previousSibling\",first:!0},\"~\":{dir:\"previousSibling\"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||\"\").replace(te,ne),\"~=\"===e[2]&&(e[3]=\" \"+e[3]+\" \"),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),\"nth\"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*(\"even\"===e[3]||\"odd\"===e[3])),e[5]=+(e[7]+e[8]||\"odd\"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||\"\":n&&X.test(n)&&(t=a(n,!0))&&(t=n.indexOf(\")\",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return\"*\"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=E[e+\" \"];return t||(t=new RegExp(\"(^|[\\\\x20\\\\t\\\\r\\\\n\\\\f])\"+e+\"(\"+M+\"|$)\"))&&E(e,(function(e){return t.test(\"string\"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute(\"class\")||\"\")}))},ATTR:function(e,t,n){return function(r){var i=se.attr(r,e);return null==i?\"!=\"===t:!t||(i+=\"\",\"=\"===t?i===n:\"!=\"===t?i!==n:\"^=\"===t?n&&0===i.indexOf(n):\"*=\"===t?n&&i.indexOf(n)>-1:\"$=\"===t?n&&i.slice(-n.length)===n:\"~=\"===t?(\" \"+i.replace(B,\" \")+\" \").indexOf(n)>-1:\"|=\"===t&&(i===n||i.slice(0,n.length+1)===n+\"-\"))}},CHILD:function(e,t,n,r,i){var o=\"nth\"!==e.slice(0,3),a=\"last\"!==e.slice(-4),s=\"of-type\"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,u){var l,c,f,p,d,h,g=o!==a?\"nextSibling\":\"previousSibling\",v=t.parentNode,y=s&&t.nodeName.toLowerCase(),m=!u&&!s,x=!1;if(v){if(o){for(;g;){for(p=t;p=p[g];)if(s?p.nodeName.toLowerCase()===y:1===p.nodeType)return!1;h=g=\"only\"===e&&!h&&\"nextSibling\"}return!0}if(h=[a?v.firstChild:v.lastChild],a&&m){for(x=(d=(l=(c=(f=(p=v)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1])&&l[2],p=d&&v.childNodes[d];p=++d&&p&&p[g]||(x=d=0)||h.pop();)if(1===p.nodeType&&++x&&p===t){c[e]=[T,d,x];break}}else if(m&&(x=d=(l=(c=(f=(p=t)[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]||[])[0]===T&&l[1]),!1===x)for(;(p=++d&&p&&p[g]||(x=d=0)||h.pop())&&((s?p.nodeName.toLowerCase()!==y:1!==p.nodeType)||!++x||(m&&((c=(f=p[b]||(p[b]={}))[p.uniqueID]||(f[p.uniqueID]={}))[e]=[T,x]),p!==t)););return(x-=i)===r||x%r==0&&x/r>=0}}},PSEUDO:function(e,t){var n,i=r.pseudos[e]||r.setFilters[e.toLowerCase()]||se.error(\"unsupported pseudo: \"+e);return i[b]?i(t):i.length>1?(n=[e,e,\"\",t],r.setFilters.hasOwnProperty(e.toLowerCase())?le((function(e,n){for(var r,o=i(e,t),a=o.length;a--;)e[r=P(e,o[a])]=!(n[r]=o[a])})):function(e){return i(e,0,n)}):i}},pseudos:{not:le((function(e){var t=[],n=[],r=s(e.replace($,\"$1\"));return r[b]?le((function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))})):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}})),has:le((function(e){return function(t){return se(e,t).length>0}})),contains:le((function(e){return e=e.replace(te,ne),function(t){return(t.textContent||i(t)).indexOf(e)>-1}})),lang:le((function(e){return V.test(e||\"\")||se.error(\"unsupported lang: \"+e),e=e.replace(te,ne).toLowerCase(),function(t){var n;do{if(n=g?t.lang:t.getAttribute(\"xml:lang\")||t.getAttribute(\"lang\"))return(n=n.toLowerCase())===e||0===n.indexOf(e+\"-\")}while((t=t.parentNode)&&1===t.nodeType);return!1}})),target:function(t){var n=e.location&&e.location.hash;return n&&n.slice(1)===t.id},root:function(e){return e===h},focus:function(e){return e===d.activeElement&&(!d.hasFocus||d.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:ge(!1),disabled:ge(!0),checked:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&!!e.checked||\"option\"===t&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!r.pseudos.empty(e)},header:function(e){return J.test(e.nodeName)},input:function(e){return Q.test(e.nodeName)},button:function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&\"button\"===e.type||\"button\"===t},text:function(e){var t;return\"input\"===e.nodeName.toLowerCase()&&\"text\"===e.type&&(null==(t=e.getAttribute(\"type\"))||\"text\"===t.toLowerCase())},first:ve((function(){return[0]})),last:ve((function(e,t){return[t-1]})),eq:ve((function(e,t,n){return[n<0?n+t:n]})),even:ve((function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e})),odd:ve((function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e})),lt:ve((function(e,t,n){for(var r=n<0?n+t:n>t?t:n;--r>=0;)e.push(r);return e})),gt:ve((function(e,t,n){for(var r=n<0?n+t:n;++r<t;)e.push(r);return e}))}}).pseudos.nth=r.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})r.pseudos[t]=de(t);for(t in{submit:!0,reset:!0})r.pseudos[t]=he(t);function me(){}function xe(e){for(var t=0,n=e.length,r=\"\";t<n;t++)r+=e[t].value;return r}function be(e,t,n){var r=t.dir,i=t.next,o=i||r,a=n&&\"parentNode\"===o,s=C++;return t.first?function(t,n,i){for(;t=t[r];)if(1===t.nodeType||a)return e(t,n,i);return!1}:function(t,n,u){var l,c,f,p=[T,s];if(u){for(;t=t[r];)if((1===t.nodeType||a)&&e(t,n,u))return!0}else for(;t=t[r];)if(1===t.nodeType||a)if(c=(f=t[b]||(t[b]={}))[t.uniqueID]||(f[t.uniqueID]={}),i&&i===t.nodeName.toLowerCase())t=t[r]||t;else{if((l=c[o])&&l[0]===T&&l[1]===s)return p[2]=l[2];if(c[o]=p,p[2]=e(t,n,u))return!0}return!1}}function we(e){return e.length>1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function Te(e,t,n,r,i){for(var o,a=[],s=0,u=e.length,l=null!=t;s<u;s++)(o=e[s])&&(n&&!n(o,r,i)||(a.push(o),l&&t.push(s)));return a}function Ce(e,t,n,r,i,o){return r&&!r[b]&&(r=Ce(r)),i&&!i[b]&&(i=Ce(i,o)),le((function(o,a,s,u){var l,c,f,p=[],d=[],h=a.length,g=o||function(e,t,n){for(var r=0,i=t.length;r<i;r++)se(e,t[r],n);return n}(t||\"*\",s.nodeType?[s]:s,[]),v=!e||!o&&t?g:Te(g,p,e,s,u),y=n?i||(o?e:h||r)?[]:a:v;if(n&&n(v,y,s,u),r)for(l=Te(y,d),r(l,[],s,u),c=l.length;c--;)(f=l[c])&&(y[d[c]]=!(v[d[c]]=f));if(o){if(i||e){if(i){for(l=[],c=y.length;c--;)(f=y[c])&&l.push(v[c]=f);i(null,y=[],l,u)}for(c=y.length;c--;)(f=y[c])&&(l=i?P(o,f):p[c])>-1&&(o[l]=!(a[l]=f))}}else y=Te(y===a?y.splice(h,y.length):y),i?i(null,a,y,u):H.apply(a,y)}))}function Ee(e){for(var t,n,i,o=e.length,a=r.relative[e[0].type],s=a||r.relative[\" \"],u=a?1:0,c=be((function(e){return e===t}),s,!0),f=be((function(e){return P(t,e)>-1}),s,!0),p=[function(e,n,r){var i=!a&&(r||n!==l)||((t=n).nodeType?c(e,n,r):f(e,n,r));return t=null,i}];u<o;u++)if(n=r.relative[e[u].type])p=[be(we(p),n)];else{if((n=r.filter[e[u].type].apply(null,e[u].matches))[b]){for(i=++u;i<o&&!r.relative[e[i].type];i++);return Ce(u>1&&we(p),u>1&&xe(e.slice(0,u-1).concat({value:\" \"===e[u-2].type?\"*\":\"\"})).replace($,\"$1\"),n,u<i&&Ee(e.slice(u,i)),i<o&&Ee(e=e.slice(i)),i<o&&xe(e))}p.push(n)}return we(p)}return me.prototype=r.filters=r.pseudos,r.setFilters=new me,a=se.tokenize=function(e,t){var n,i,o,a,s,u,l,c=S[e+\" \"];if(c)return t?0:c.slice(0);for(s=e,u=[],l=r.preFilter;s;){for(a in n&&!(i=_.exec(s))||(i&&(s=s.slice(i[0].length)||s),u.push(o=[])),n=!1,(i=z.exec(s))&&(n=i.shift(),o.push({value:n,type:i[0].replace($,\" \")}),s=s.slice(n.length)),r.filter)!(i=G[a].exec(s))||l[a]&&!(i=l[a](i))||(n=i.shift(),o.push({value:n,type:a,matches:i}),s=s.slice(n.length));if(!n)break}return t?s.length:s?se.error(e):S(e,u).slice(0)},s=se.compile=function(e,t){var n,i=[],o=[],s=k[e+\" \"];if(!s){for(t||(t=a(e)),n=t.length;n--;)(s=Ee(t[n]))[b]?i.push(s):o.push(s);(s=k(e,function(e,t){var n=t.length>0,i=e.length>0,o=function(o,a,s,u,c){var f,h,v,y=0,m=\"0\",x=o&&[],b=[],w=l,C=o||i&&r.find.TAG(\"*\",c),E=T+=null==w?1:Math.random()||.1,S=C.length;for(c&&(l=a==d||a||c);m!==S&&null!=(f=C[m]);m++){if(i&&f){for(h=0,a||f.ownerDocument==d||(p(f),s=!g);v=e[h++];)if(v(f,a||d,s)){u.push(f);break}c&&(T=E)}n&&((f=!v&&f)&&y--,o&&x.push(f))}if(y+=m,n&&m!==y){for(h=0;v=t[h++];)v(x,b,a,s);if(o){if(y>0)for(;m--;)x[m]||b[m]||(b[m]=q.call(u));b=Te(b)}H.apply(u,b),c&&!o&&b.length>0&&y+t.length>1&&se.uniqueSort(u)}return c&&(T=E,l=w),x};return n?le(o):o}(o,i))).selector=e}return s},u=se.select=function(e,t,n,i){var o,u,l,c,f,p=\"function\"==typeof e&&e,d=!i&&a(e=p.selector||e);if(n=n||[],1===d.length){if((u=d[0]=d[0].slice(0)).length>2&&\"ID\"===(l=u[0]).type&&9===t.nodeType&&g&&r.relative[u[1].type]){if(!(t=(r.find.ID(l.matches[0].replace(te,ne),t)||[])[0]))return n;p&&(t=t.parentNode),e=e.slice(u.shift().value.length)}for(o=G.needsContext.test(e)?0:u.length;o--&&(l=u[o],!r.relative[c=l.type]);)if((f=r.find[c])&&(i=f(l.matches[0].replace(te,ne),ee.test(u[0].type)&&ye(t.parentNode)||t))){if(u.splice(o,1),!(e=i.length&&xe(u)))return H.apply(n,i),n;break}}return(p||s(e,d))(i,t,!g,n,!t||ee.test(e)&&ye(t.parentNode)||t),n},n.sortStable=b.split(\"\").sort(N).join(\"\")===b,n.detectDuplicates=!!f,p(),n.sortDetached=ce((function(e){return 1&e.compareDocumentPosition(d.createElement(\"fieldset\"))})),ce((function(e){return e.innerHTML=\"<a href='#'></a>\",\"#\"===e.firstChild.getAttribute(\"href\")}))||fe(\"type|href|height|width\",(function(e,t,n){if(!n)return e.getAttribute(t,\"type\"===t.toLowerCase()?1:2)})),n.attributes&&ce((function(e){return e.innerHTML=\"<input/>\",e.firstChild.setAttribute(\"value\",\"\"),\"\"===e.firstChild.getAttribute(\"value\")}))||fe(\"value\",(function(e,t,n){if(!n&&\"input\"===e.nodeName.toLowerCase())return e.defaultValue})),ce((function(e){return null==e.getAttribute(\"disabled\")}))||fe(R,(function(e,t,n){var r;if(!n)return!0===e[t]?t.toLowerCase():(r=e.getAttributeNode(t))&&r.specified?r.value:null})),se}(e);w.find=C,w.expr=C.selectors,w.expr[\":\"]=w.expr.pseudos,w.uniqueSort=w.unique=C.uniqueSort,w.text=C.getText,w.isXMLDoc=C.isXML,w.contains=C.contains,w.escapeSelector=C.escape;var E=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&w(e).is(n))break;r.push(e)}return r},S=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},k=w.expr.match.needsContext;function A(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var N=/^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i;function D(e,t,n){return h(t)?w.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?w.grep(e,(function(e){return e===t!==n})):\"string\"!=typeof t?w.grep(e,(function(e){return s.call(t,e)>-1!==n})):w.filter(t,e,n)}w.filter=function(e,t,n){var r=t[0];return n&&(e=\":not(\"+e+\")\"),1===t.length&&1===r.nodeType?w.find.matchesSelector(r,e)?[r]:[]:w.find.matches(e,w.grep(t,(function(e){return 1===e.nodeType})))},w.fn.extend({find:function(e){var t,n,r=this.length,i=this;if(\"string\"!=typeof e)return this.pushStack(w(e).filter((function(){for(t=0;t<r;t++)if(w.contains(i[t],this))return!0})));for(n=this.pushStack([]),t=0;t<r;t++)w.find(e,i[t],n);return r>1?w.uniqueSort(n):n},filter:function(e){return this.pushStack(D(this,e||[],!1))},not:function(e){return this.pushStack(D(this,e||[],!0))},is:function(e){return!!D(this,\"string\"==typeof e&&k.test(e)?w(e):e||[],!1).length}});var j,q=/^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/;(w.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,\"string\"==typeof e){if(!(r=\"<\"===e[0]&&\">\"===e[e.length-1]&&e.length>=3?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof w?t[0]:t,w.merge(this,w.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:v,!0)),N.test(r[1])&&w.isPlainObject(t))for(r in t)h(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=v.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):h(e)?void 0!==n.ready?n.ready(e):e(w):w.makeArray(e,this)}).prototype=w.fn,j=w(v);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}w.fn.extend({has:function(e){var t=w(e,this),n=t.length;return this.filter((function(){for(var e=0;e<n;e++)if(w.contains(this,t[e]))return!0}))},closest:function(e,t){var n,r=0,i=this.length,o=[],a=\"string\"!=typeof e&&w(e);if(!k.test(e))for(;r<i;r++)for(n=this[r];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(a?a.index(n)>-1:1===n.nodeType&&w.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?w.uniqueSort(o):o)},index:function(e){return e?\"string\"==typeof e?s.call(w(e),this[0]):s.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(w.uniqueSort(w.merge(this.get(),w(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),w.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return E(e,\"parentNode\")},parentsUntil:function(e,t,n){return E(e,\"parentNode\",n)},next:function(e){return O(e,\"nextSibling\")},prev:function(e){return O(e,\"previousSibling\")},nextAll:function(e){return E(e,\"nextSibling\")},prevAll:function(e){return E(e,\"previousSibling\")},nextUntil:function(e,t,n){return E(e,\"nextSibling\",n)},prevUntil:function(e,t,n){return E(e,\"previousSibling\",n)},siblings:function(e){return S((e.parentNode||{}).firstChild,e)},children:function(e){return S(e.firstChild)},contents:function(e){return null!=e.contentDocument&&r(e.contentDocument)?e.contentDocument:(A(e,\"template\")&&(e=e.content||e),w.merge([],e.childNodes))}},(function(e,t){w.fn[e]=function(n,r){var i=w.map(this,t,n);return\"Until\"!==e.slice(-5)&&(r=n),r&&\"string\"==typeof r&&(i=w.filter(r,i)),this.length>1&&(H[e]||w.uniqueSort(i),L.test(e)&&i.reverse()),this.pushStack(i)}}));var P=/[^\\x20\\t\\r\\n\\f]+/g;function R(e){return e}function M(e){throw e}function I(e,t,n,r){var i;try{e&&h(i=e.promise)?i.call(e).done(t).fail(n):e&&h(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}w.Callbacks=function(e){e=\"string\"==typeof e?function(e){var t={};return w.each(e.match(P)||[],(function(e,n){t[n]=!0})),t}(e):w.extend({},e);var t,n,r,i,o=[],a=[],s=-1,u=function(){for(i=i||e.once,r=t=!0;a.length;s=-1)for(n=a.shift();++s<o.length;)!1===o[s].apply(n[0],n[1])&&e.stopOnFalse&&(s=o.length,n=!1);e.memory||(n=!1),t=!1,i&&(o=n?[]:\"\")},l={add:function(){return o&&(n&&!t&&(s=o.length-1,a.push(n)),function t(n){w.each(n,(function(n,r){h(r)?e.unique&&l.has(r)||o.push(r):r&&r.length&&\"string\"!==x(r)&&t(r)}))}(arguments),n&&!t&&u()),this},remove:function(){return w.each(arguments,(function(e,t){for(var n;(n=w.inArray(t,o,n))>-1;)o.splice(n,1),n<=s&&s--})),this},has:function(e){return e?w.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n=\"\",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=\"\"),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||u()),this},fire:function(){return l.fireWith(this,arguments),this},fired:function(){return!!r}};return l},w.extend({Deferred:function(t){var n=[[\"notify\",\"progress\",w.Callbacks(\"memory\"),w.Callbacks(\"memory\"),2],[\"resolve\",\"done\",w.Callbacks(\"once memory\"),w.Callbacks(\"once memory\"),0,\"resolved\"],[\"reject\",\"fail\",w.Callbacks(\"once memory\"),w.Callbacks(\"once memory\"),1,\"rejected\"]],r=\"pending\",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return w.Deferred((function(t){w.each(n,(function(n,r){var i=h(e[r[4]])&&e[r[4]];o[r[1]]((function(){var e=i&&i.apply(this,arguments);e&&h(e.promise)?e.promise().progress(t.notify).done(t.resolve).fail(t.reject):t[r[0]+\"With\"](this,i?[e]:arguments)}))})),e=null})).promise()},then:function(t,r,i){var o=0;function a(t,n,r,i){return function(){var s=this,u=arguments,l=function(){var e,l;if(!(t<o)){if((e=r.apply(s,u))===n.promise())throw new TypeError(\"Thenable self-resolution\");l=e&&(\"object\"==typeof e||\"function\"==typeof e)&&e.then,h(l)?i?l.call(e,a(o,n,R,i),a(o,n,M,i)):(o++,l.call(e,a(o,n,R,i),a(o,n,M,i),a(o,n,R,n.notifyWith))):(r!==R&&(s=void 0,u=[e]),(i||n.resolveWith)(s,u))}},c=i?l:function(){try{l()}catch(e){w.Deferred.exceptionHook&&w.Deferred.exceptionHook(e,c.stackTrace),t+1>=o&&(r!==M&&(s=void 0,u=[e]),n.rejectWith(s,u))}};t?c():(w.Deferred.getStackHook&&(c.stackTrace=w.Deferred.getStackHook()),e.setTimeout(c))}}return w.Deferred((function(e){n[0][3].add(a(0,e,h(i)?i:R,e.notifyWith)),n[1][3].add(a(0,e,h(t)?t:R)),n[2][3].add(a(0,e,h(r)?r:M))})).promise()},promise:function(e){return null!=e?w.extend(e,i):i}},o={};return w.each(n,(function(e,t){var a=t[2],s=t[5];i[t[1]]=a.add,s&&a.add((function(){r=s}),n[3-e][2].disable,n[3-e][3].disable,n[0][2].lock,n[0][3].lock),a.add(t[3].fire),o[t[0]]=function(){return o[t[0]+\"With\"](this===o?void 0:this,arguments),this},o[t[0]+\"With\"]=a.fireWith})),i.promise(o),t&&t.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),o=i.call(arguments),a=w.Deferred(),s=function(e){return function(n){r[e]=this,o[e]=arguments.length>1?i.call(arguments):n,--t||a.resolveWith(r,o)}};if(t<=1&&(I(e,a.done(s(n)).resolve,a.reject,!t),\"pending\"===a.state()||h(o[n]&&o[n].then)))return a.then();for(;n--;)I(o[n],s(n),a.reject);return a.promise()}});var W=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;w.Deferred.exceptionHook=function(t,n){e.console&&e.console.warn&&t&&W.test(t.name)&&e.console.warn(\"jQuery.Deferred exception: \"+t.message,t.stack,n)},w.readyException=function(t){e.setTimeout((function(){throw t}))};var F=w.Deferred();function B(){v.removeEventListener(\"DOMContentLoaded\",B),e.removeEventListener(\"load\",B),w.ready()}w.fn.ready=function(e){return F.then(e).catch((function(e){w.readyException(e)})),this},w.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--w.readyWait:w.isReady)||(w.isReady=!0,!0!==e&&--w.readyWait>0||F.resolveWith(v,[w]))}}),w.ready.then=F.then,\"complete\"===v.readyState||\"loading\"!==v.readyState&&!v.documentElement.doScroll?e.setTimeout(w.ready):(v.addEventListener(\"DOMContentLoaded\",B),e.addEventListener(\"load\",B));var $=function(e,t,n,r,i,o,a){var s=0,u=e.length,l=null==n;if(\"object\"===x(n))for(s in i=!0,n)$(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,h(r)||(a=!0),l&&(a?(t.call(e,r),t=null):(l=t,t=function(e,t,n){return l.call(w(e),n)})),t))for(;s<u;s++)t(e[s],n,a?r:r.call(e[s],s,t(e[s],n)));return i?e:l?t.call(e):u?t(e[0],n):o},_=/^-ms-/,z=/-([a-z])/g;function U(e,t){return t.toUpperCase()}function X(e){return e.replace(_,\"ms-\").replace(z,U)}var V=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function G(){this.expando=w.expando+G.uid++}G.uid=1,G.prototype={cache:function(e){var t=e[this.expando];return t||(t={},V(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var r,i=this.cache(e);if(\"string\"==typeof t)i[X(t)]=n;else for(r in t)i[X(r)]=t[r];return i},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][X(t)]},access:function(e,t,n){return void 0===t||t&&\"string\"==typeof t&&void 0===n?this.get(e,t):(this.set(e,t,n),void 0!==n?n:t)},remove:function(e,t){var n,r=e[this.expando];if(void 0!==r){if(void 0!==t){n=(t=Array.isArray(t)?t.map(X):(t=X(t))in r?[t]:t.match(P)||[]).length;for(;n--;)delete r[t[n]]}(void 0===t||w.isEmptyObject(r))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!w.isEmptyObject(t)}};var Y=new G,Q=new G,J=/^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,K=/[A-Z]/g;function Z(e,t,n){var r;if(void 0===n&&1===e.nodeType)if(r=\"data-\"+t.replace(K,\"-$&\").toLowerCase(),\"string\"==typeof(n=e.getAttribute(r))){try{n=function(e){return\"true\"===e||\"false\"!==e&&(\"null\"===e?null:e===+e+\"\"?+e:J.test(e)?JSON.parse(e):e)}(n)}catch(e){}Q.set(e,t,n)}else n=void 0;return n}w.extend({hasData:function(e){return Q.hasData(e)||Y.hasData(e)},data:function(e,t,n){return Q.access(e,t,n)},removeData:function(e,t){Q.remove(e,t)},_data:function(e,t,n){return Y.access(e,t,n)},_removeData:function(e,t){Y.remove(e,t)}}),w.fn.extend({data:function(e,t){var n,r,i,o=this[0],a=o&&o.attributes;if(void 0===e){if(this.length&&(i=Q.get(o),1===o.nodeType&&!Y.get(o,\"hasDataAttrs\"))){for(n=a.length;n--;)a[n]&&0===(r=a[n].name).indexOf(\"data-\")&&(r=X(r.slice(5)),Z(o,r,i[r]));Y.set(o,\"hasDataAttrs\",!0)}return i}return\"object\"==typeof e?this.each((function(){Q.set(this,e)})):$(this,(function(t){var n;if(o&&void 0===t)return void 0!==(n=Q.get(o,e))||void 0!==(n=Z(o,e))?n:void 0;this.each((function(){Q.set(this,e,t)}))}),null,t,arguments.length>1,null,!0)},removeData:function(e){return this.each((function(){Q.remove(this,e)}))}}),w.extend({queue:function(e,t,n){var r;if(e)return t=(t||\"fx\")+\"queue\",r=Y.get(e,t),n&&(!r||Array.isArray(n)?r=Y.access(e,t,w.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||\"fx\";var n=w.queue(e,t),r=n.length,i=n.shift(),o=w._queueHooks(e,t);\"inprogress\"===i&&(i=n.shift(),r--),i&&(\"fx\"===t&&n.unshift(\"inprogress\"),delete o.stop,i.call(e,(function(){w.dequeue(e,t)}),o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+\"queueHooks\";return Y.get(e,n)||Y.access(e,n,{empty:w.Callbacks(\"once memory\").add((function(){Y.remove(e,[t+\"queue\",n])}))})}}),w.fn.extend({queue:function(e,t){var n=2;return\"string\"!=typeof e&&(t=e,e=\"fx\",n--),arguments.length<n?w.queue(this[0],e):void 0===t?this:this.each((function(){var n=w.queue(this,e,t);w._queueHooks(this,e),\"fx\"===e&&\"inprogress\"!==n[0]&&w.dequeue(this,e)}))},dequeue:function(e){return this.each((function(){w.dequeue(this,e)}))},clearQueue:function(e){return this.queue(e||\"fx\",[])},promise:function(e,t){var n,r=1,i=w.Deferred(),o=this,a=this.length,s=function(){--r||i.resolveWith(o,[o])};for(\"string\"!=typeof e&&(t=e,e=void 0),e=e||\"fx\";a--;)(n=Y.get(o[a],e+\"queueHooks\"))&&n.empty&&(r++,n.empty.add(s));return s(),i.promise(t)}});var ee=/[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source,te=new RegExp(\"^(?:([+-])=|)(\"+ee+\")([a-z%]*)$\",\"i\"),ne=[\"Top\",\"Right\",\"Bottom\",\"Left\"],re=v.documentElement,ie=function(e){return w.contains(e.ownerDocument,e)},oe={composed:!0};re.getRootNode&&(ie=function(e){return w.contains(e.ownerDocument,e)||e.getRootNode(oe)===e.ownerDocument});var ae=function(e,t){return\"none\"===(e=t||e).style.display||\"\"===e.style.display&&ie(e)&&\"none\"===w.css(e,\"display\")};function se(e,t,n,r){var i,o,a=20,s=r?function(){return r.cur()}:function(){return w.css(e,t,\"\")},u=s(),l=n&&n[3]||(w.cssNumber[t]?\"\":\"px\"),c=e.nodeType&&(w.cssNumber[t]||\"px\"!==l&&+u)&&te.exec(w.css(e,t));if(c&&c[3]!==l){for(u/=2,l=l||c[3],c=+u||1;a--;)w.style(e,t,c+l),(1-o)*(1-(o=s()/u||.5))<=0&&(a=0),c/=o;c*=2,w.style(e,t,c+l),n=n||[]}return n&&(c=+c||+u||0,i=n[1]?c+(n[1]+1)*n[2]:+n[2],r&&(r.unit=l,r.start=c,r.end=i)),i}var ue={};function le(e){var t,n=e.ownerDocument,r=e.nodeName,i=ue[r];return i||(t=n.body.appendChild(n.createElement(r)),i=w.css(t,\"display\"),t.parentNode.removeChild(t),\"none\"===i&&(i=\"block\"),ue[r]=i,i)}function ce(e,t){for(var n,r,i=[],o=0,a=e.length;o<a;o++)(r=e[o]).style&&(n=r.style.display,t?(\"none\"===n&&(i[o]=Y.get(r,\"display\")||null,i[o]||(r.style.display=\"\")),\"\"===r.style.display&&ae(r)&&(i[o]=le(r))):\"none\"!==n&&(i[o]=\"none\",Y.set(r,\"display\",n)));for(o=0;o<a;o++)null!=i[o]&&(e[o].style.display=i[o]);return e}w.fn.extend({show:function(){return ce(this,!0)},hide:function(){return ce(this)},toggle:function(e){return\"boolean\"==typeof e?e?this.show():this.hide():this.each((function(){ae(this)?w(this).show():w(this).hide()}))}});var fe,pe,de=/^(?:checkbox|radio)$/i,he=/<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)/i,ge=/^$|^module$|\\/(?:java|ecma)script/i;fe=v.createDocumentFragment().appendChild(v.createElement(\"div\")),(pe=v.createElement(\"input\")).setAttribute(\"type\",\"radio\"),pe.setAttribute(\"checked\",\"checked\"),pe.setAttribute(\"name\",\"t\"),fe.appendChild(pe),d.checkClone=fe.cloneNode(!0).cloneNode(!0).lastChild.checked,fe.innerHTML=\"<textarea>x</textarea>\",d.noCloneChecked=!!fe.cloneNode(!0).lastChild.defaultValue,fe.innerHTML=\"<option></option>\",d.option=!!fe.lastChild;var ve={thead:[1,\"<table>\",\"</table>\"],col:[2,\"<table><colgroup>\",\"</colgroup></table>\"],tr:[2,\"<table><tbody>\",\"</tbody></table>\"],td:[3,\"<table><tbody><tr>\",\"</tr></tbody></table>\"],_default:[0,\"\",\"\"]};function ye(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||\"*\"):void 0!==e.querySelectorAll?e.querySelectorAll(t||\"*\"):[],void 0===t||t&&A(e,t)?w.merge([e],n):n}function me(e,t){for(var n=0,r=e.length;n<r;n++)Y.set(e[n],\"globalEval\",!t||Y.get(t[n],\"globalEval\"))}ve.tbody=ve.tfoot=ve.colgroup=ve.caption=ve.thead,ve.th=ve.td,d.option||(ve.optgroup=ve.option=[1,\"<select multiple='multiple'>\",\"</select>\"]);var xe=/<|&#?\\w+;/;function be(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d<h;d++)if((o=e[d])||0===o)if(\"object\"===x(o))w.merge(p,o.nodeType?[o]:o);else if(xe.test(o)){for(a=a||f.appendChild(t.createElement(\"div\")),s=(he.exec(o)||[\"\",\"\"])[1].toLowerCase(),u=ve[s]||ve._default,a.innerHTML=u[1]+w.htmlPrefilter(o)+u[2],c=u[0];c--;)a=a.lastChild;w.merge(p,a.childNodes),(a=f.firstChild).textContent=\"\"}else p.push(t.createTextNode(o));for(f.textContent=\"\",d=0;o=p[d++];)if(r&&w.inArray(o,r)>-1)i&&i.push(o);else if(l=ie(o),a=ye(f.appendChild(o),\"script\"),l&&me(a),n)for(c=0;o=a[c++];)ge.test(o.type||\"\")&&n.push(o);return f}var we=/^key/,Te=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\\.(.+)|)/;function Ee(){return!0}function Se(){return!1}function ke(e,t){return e===function(){try{return v.activeElement}catch(e){}}()==(\"focus\"===t)}function Ae(e,t,n,r,i,o){var a,s;if(\"object\"==typeof t){for(s in\"string\"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&(\"string\"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return w().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=w.guid++)),e.each((function(){w.event.add(this,t,i,r,n)}))}function Ne(e,t,n){n?(Y.set(e,t,!1),w.event.add(e,t,{namespace:!1,handler:function(e){var r,o,a=Y.get(this,t);if(1&e.isTrigger&&this[t]){if(a.length)(w.event.special[t]||{}).delegateType&&e.stopPropagation();else if(a=i.call(arguments),Y.set(this,t,a),r=n(this,t),this[t](),a!==(o=Y.get(this,t))||r?Y.set(this,t,!1):o={},a!==o)return e.stopImmediatePropagation(),e.preventDefault(),o.value}else a.length&&(Y.set(this,t,{value:w.event.trigger(w.extend(a[0],w.Event.prototype),a.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Y.get(e,t)&&w.event.add(e,t,Ee)}w.event={global:{},add:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.get(e);if(V(e))for(n.handler&&(n=(o=n).handler,i=o.selector),i&&w.find.matchesSelector(re,i),n.guid||(n.guid=w.guid++),(u=v.events)||(u=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(t){return void 0!==w&&w.event.triggered!==t.type?w.event.dispatch.apply(e,arguments):void 0}),l=(t=(t||\"\").match(P)||[\"\"]).length;l--;)d=g=(s=Ce.exec(t[l])||[])[1],h=(s[2]||\"\").split(\".\").sort(),d&&(f=w.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=w.event.special[d]||{},c=w.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&w.expr.match.needsContext.test(i),namespace:h.join(\".\")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(d,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),w.event.global[d]=!0)},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Y.hasData(e)&&Y.get(e);if(v&&(u=v.events)){for(l=(t=(t||\"\").match(P)||[\"\"]).length;l--;)if(d=g=(s=Ce.exec(t[l])||[])[1],h=(s[2]||\"\").split(\".\").sort(),d){for(f=w.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp(\"(^|\\\\.)\"+h.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"),a=o=p.length;o--;)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&(\"**\"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||w.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)w.event.remove(e,d+t[l],n,r,!0);w.isEmptyObject(u)&&Y.remove(e,\"handle events\")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),u=w.event.fix(e),l=(Y.get(this,\"events\")||Object.create(null))[u.type]||[],c=w.event.special[u.type]||{};for(s[0]=u,t=1;t<arguments.length;t++)s[t]=arguments[t];if(u.delegateTarget=this,!c.preDispatch||!1!==c.preDispatch.call(this,u)){for(a=w.event.handlers.call(this,u,l),t=0;(i=a[t++])&&!u.isPropagationStopped();)for(u.currentTarget=i.elem,n=0;(o=i.handlers[n++])&&!u.isImmediatePropagationStopped();)u.rnamespace&&!1!==o.namespace&&!u.rnamespace.test(o.namespace)||(u.handleObj=o,u.data=o.data,void 0!==(r=((w.event.special[o.origType]||{}).handle||o.handler).apply(i.elem,s))&&!1===(u.result=r)&&(u.preventDefault(),u.stopPropagation()));return c.postDispatch&&c.postDispatch.call(this,u),u.result}},handlers:function(e,t){var n,r,i,o,a,s=[],u=t.delegateCount,l=e.target;if(u&&l.nodeType&&!(\"click\"===e.type&&e.button>=1))for(;l!==this;l=l.parentNode||this)if(1===l.nodeType&&(\"click\"!==e.type||!0!==l.disabled)){for(o=[],a={},n=0;n<u;n++)void 0===a[i=(r=t[n]).selector+\" \"]&&(a[i]=r.needsContext?w(i,this).index(l)>-1:w.find(i,this,null,[l]).length),a[i]&&o.push(r);o.length&&s.push({elem:l,handlers:o})}return l=this,u<t.length&&s.push({elem:l,handlers:t.slice(u)}),s},addProp:function(e,t){Object.defineProperty(w.Event.prototype,e,{enumerable:!0,configurable:!0,get:h(t)?function(){if(this.originalEvent)return t(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[e]},set:function(t){Object.defineProperty(this,e,{enumerable:!0,configurable:!0,writable:!0,value:t})}})},fix:function(e){return e[w.expando]?e:new w.Event(e)},special:{load:{noBubble:!0},click:{setup:function(e){var t=this||e;return de.test(t.type)&&t.click&&A(t,\"input\")&&Ne(t,\"click\",Ee),!1},trigger:function(e){var t=this||e;return de.test(t.type)&&t.click&&A(t,\"input\")&&Ne(t,\"click\"),!0},_default:function(e){var t=e.target;return de.test(t.type)&&t.click&&A(t,\"input\")&&Y.get(t,\"click\")||A(t,\"a\")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},w.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},w.Event=function(e,t){if(!(this instanceof w.Event))return new w.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?Ee:Se,this.target=e.target&&3===e.target.nodeType?e.target.parentNode:e.target,this.currentTarget=e.currentTarget,this.relatedTarget=e.relatedTarget):this.type=e,t&&w.extend(this,t),this.timeStamp=e&&e.timeStamp||Date.now(),this[w.expando]=!0},w.Event.prototype={constructor:w.Event,isDefaultPrevented:Se,isPropagationStopped:Se,isImmediatePropagationStopped:Se,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=Ee,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=Ee,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=Ee,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},w.each({altKey:!0,bubbles:!0,cancelable:!0,changedTouches:!0,ctrlKey:!0,detail:!0,eventPhase:!0,metaKey:!0,pageX:!0,pageY:!0,shiftKey:!0,view:!0,char:!0,code:!0,charCode:!0,key:!0,keyCode:!0,button:!0,buttons:!0,clientX:!0,clientY:!0,offsetX:!0,offsetY:!0,pointerId:!0,pointerType:!0,screenX:!0,screenY:!0,targetTouches:!0,toElement:!0,touches:!0,which:function(e){var t=e.button;return null==e.which&&we.test(e.type)?null!=e.charCode?e.charCode:e.keyCode:!e.which&&void 0!==t&&Te.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},w.event.addProp),w.each({focus:\"focusin\",blur:\"focusout\"},(function(e,t){w.event.special[e]={setup:function(){return Ne(this,e,ke),!1},trigger:function(){return Ne(this,e),!0},delegateType:t}})),w.each({mouseenter:\"mouseover\",mouseleave:\"mouseout\",pointerenter:\"pointerover\",pointerleave:\"pointerout\"},(function(e,t){w.event.special[e]={delegateType:t,bindType:t,handle:function(e){var n,r=this,i=e.relatedTarget,o=e.handleObj;return i&&(i===r||w.contains(r,i))||(e.type=o.origType,n=o.handler.apply(this,arguments),e.type=t),n}}})),w.fn.extend({on:function(e,t,n,r){return Ae(this,e,t,n,r)},one:function(e,t,n,r){return Ae(this,e,t,n,r,1)},off:function(e,t,n){var r,i;if(e&&e.preventDefault&&e.handleObj)return r=e.handleObj,w(e.delegateTarget).off(r.namespace?r.origType+\".\"+r.namespace:r.origType,r.selector,r.handler),this;if(\"object\"==typeof e){for(i in e)this.off(i,t,e[i]);return this}return!1!==t&&\"function\"!=typeof t||(n=t,t=void 0),!1===n&&(n=Se),this.each((function(){w.event.remove(this,e,n,t)}))}});var De=/<script|<style|<link/i,je=/checked\\s*(?:[^=]|=\\s*.checked.)/i,qe=/^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g;function Le(e,t){return A(e,\"table\")&&A(11!==t.nodeType?t:t.firstChild,\"tr\")&&w(e).children(\"tbody\")[0]||e}function He(e){return e.type=(null!==e.getAttribute(\"type\"))+\"/\"+e.type,e}function Oe(e){return\"true/\"===(e.type||\"\").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute(\"type\"),e}function Pe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,\"handle events\"),s)for(n=0,r=s[i].length;n<r;n++)w.event.add(t,i,s[i][n]);Q.hasData(e)&&(o=Q.access(e),a=w.extend({},o),Q.set(t,a))}}function Re(e,t){var n=t.nodeName.toLowerCase();\"input\"===n&&de.test(e.type)?t.checked=e.checked:\"input\"!==n&&\"textarea\"!==n||(t.defaultValue=e.defaultValue)}function Me(e,t,n,r){t=o(t);var i,a,s,u,l,c,f=0,p=e.length,g=p-1,v=t[0],y=h(v);if(y||p>1&&\"string\"==typeof v&&!d.checkClone&&je.test(v))return e.each((function(i){var o=e.eq(i);y&&(t[0]=v.call(this,i,o.html())),Me(o,t,n,r)}));if(p&&(a=(i=be(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=a),a||r)){for(u=(s=w.map(ye(i,\"script\"),He)).length;f<p;f++)l=i,f!==g&&(l=w.clone(l,!0,!0),u&&w.merge(s,ye(l,\"script\"))),n.call(e[f],l,f);if(u)for(c=s[s.length-1].ownerDocument,w.map(s,Oe),f=0;f<u;f++)l=s[f],ge.test(l.type||\"\")&&!Y.access(l,\"globalEval\")&&w.contains(c,l)&&(l.src&&\"module\"!==(l.type||\"\").toLowerCase()?w._evalUrl&&!l.noModule&&w._evalUrl(l.src,{nonce:l.nonce||l.getAttribute(\"nonce\")},c):m(l.textContent.replace(qe,\"\"),l,c))}return e}function Ie(e,t,n){for(var r,i=t?w.filter(t,e):e,o=0;null!=(r=i[o]);o++)n||1!==r.nodeType||w.cleanData(ye(r)),r.parentNode&&(n&&ie(r)&&me(ye(r,\"script\")),r.parentNode.removeChild(r));return e}w.extend({htmlPrefilter:function(e){return e},clone:function(e,t,n){var r,i,o,a,s=e.cloneNode(!0),u=ie(e);if(!(d.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||w.isXMLDoc(e)))for(a=ye(s),r=0,i=(o=ye(e)).length;r<i;r++)Re(o[r],a[r]);if(t)if(n)for(o=o||ye(e),a=a||ye(s),r=0,i=o.length;r<i;r++)Pe(o[r],a[r]);else Pe(e,s);return(a=ye(s,\"script\")).length>0&&me(a,!u&&ye(e,\"script\")),s},cleanData:function(e){for(var t,n,r,i=w.event.special,o=0;void 0!==(n=e[o]);o++)if(V(n)){if(t=n[Y.expando]){if(t.events)for(r in t.events)i[r]?w.event.remove(n,r):w.removeEvent(n,r,t.handle);n[Y.expando]=void 0}n[Q.expando]&&(n[Q.expando]=void 0)}}}),w.fn.extend({detach:function(e){return Ie(this,e,!0)},remove:function(e){return Ie(this,e)},text:function(e){return $(this,(function(e){return void 0===e?w.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)}))}),null,e,arguments.length)},append:function(){return Me(this,arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||Le(this,e).appendChild(e)}))},prepend:function(){return Me(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Le(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return Me(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return Me(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)}))},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(w.cleanData(ye(e,!1)),e.textContent=\"\");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return w.clone(this,e,t)}))},html:function(e){return $(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(\"string\"==typeof e&&!De.test(e)&&!ve[(he.exec(e)||[\"\",\"\"])[1].toLowerCase()]){e=w.htmlPrefilter(e);try{for(;n<r;n++)1===(t=this[n]||{}).nodeType&&(w.cleanData(ye(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)}),null,e,arguments.length)},replaceWith:function(){var e=[];return Me(this,arguments,(function(t){var n=this.parentNode;w.inArray(this,e)<0&&(w.cleanData(ye(this)),n&&n.replaceChild(t,this))}),e)}}),w.each({appendTo:\"append\",prependTo:\"prepend\",insertBefore:\"before\",insertAfter:\"after\",replaceAll:\"replaceWith\"},(function(e,t){w.fn[e]=function(e){for(var n,r=[],i=w(e),o=i.length-1,s=0;s<=o;s++)n=s===o?this:this.clone(!0),w(i[s])[t](n),a.apply(r,n.get());return this.pushStack(r)}}));var We=new RegExp(\"^(\"+ee+\")(?!px)[a-z%]+$\",\"i\"),Fe=function(t){var n=t.ownerDocument.defaultView;return n&&n.opener||(n=e),n.getComputedStyle(t)},Be=function(e,t,n){var r,i,o={};for(i in t)o[i]=e.style[i],e.style[i]=t[i];for(i in r=n.call(e),t)e.style[i]=o[i];return r},$e=new RegExp(ne.join(\"|\"),\"i\");function _e(e,t,n){var r,i,o,a,s=e.style;return(n=n||Fe(e))&&(\"\"!==(a=n.getPropertyValue(t)||n[t])||ie(e)||(a=w.style(e,t)),!d.pixelBoxStyles()&&We.test(a)&&$e.test(t)&&(r=s.width,i=s.minWidth,o=s.maxWidth,s.minWidth=s.maxWidth=s.width=a,a=n.width,s.width=r,s.minWidth=i,s.maxWidth=o)),void 0!==a?a+\"\":a}function ze(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function t(){if(c){l.style.cssText=\"position:absolute;left:-11111px;width:60px;margin-top:1px;padding:0;border:0\",c.style.cssText=\"position:relative;display:block;box-sizing:border-box;overflow:scroll;margin:auto;border:1px;padding:1px;width:60%;top:1%\",re.appendChild(l).appendChild(c);var t=e.getComputedStyle(c);r=\"1%\"!==t.top,u=12===n(t.marginLeft),c.style.right=\"60%\",a=36===n(t.right),i=36===n(t.width),c.style.position=\"absolute\",o=12===n(c.offsetWidth/3),re.removeChild(l),c=null}}function n(e){return Math.round(parseFloat(e))}var r,i,o,a,s,u,l=v.createElement(\"div\"),c=v.createElement(\"div\");c.style&&(c.style.backgroundClip=\"content-box\",c.cloneNode(!0).style.backgroundClip=\"\",d.clearCloneStyle=\"content-box\"===c.style.backgroundClip,w.extend(d,{boxSizingReliable:function(){return t(),i},pixelBoxStyles:function(){return t(),a},pixelPosition:function(){return t(),r},reliableMarginLeft:function(){return t(),u},scrollboxSize:function(){return t(),o},reliableTrDimensions:function(){var t,n,r,i;return null==s&&(t=v.createElement(\"table\"),n=v.createElement(\"tr\"),r=v.createElement(\"div\"),t.style.cssText=\"position:absolute;left:-11111px\",n.style.height=\"1px\",r.style.height=\"9px\",re.appendChild(t).appendChild(n).appendChild(r),i=e.getComputedStyle(n),s=parseInt(i.height)>3,re.removeChild(t)),s}}))}();var Ue=[\"Webkit\",\"Moz\",\"ms\"],Xe=v.createElement(\"div\").style,Ve={};function Ge(e){var t=w.cssProps[e]||Ve[e];return t||(e in Xe?e:Ve[e]=function(e){for(var t=e[0].toUpperCase()+e.slice(1),n=Ue.length;n--;)if((e=Ue[n]+t)in Xe)return e}(e)||e)}var Ye=/^(none|table(?!-c[ea]).+)/,Qe=/^--/,Je={position:\"absolute\",visibility:\"hidden\",display:\"block\"},Ke={letterSpacing:\"0\",fontWeight:\"400\"};function Ze(e,t,n){var r=te.exec(t);return r?Math.max(0,r[2]-(n||0))+(r[3]||\"px\"):t}function et(e,t,n,r,i,o){var a=\"width\"===t?1:0,s=0,u=0;if(n===(r?\"border\":\"content\"))return 0;for(;a<4;a+=2)\"margin\"===n&&(u+=w.css(e,n+ne[a],!0,i)),r?(\"content\"===n&&(u-=w.css(e,\"padding\"+ne[a],!0,i)),\"margin\"!==n&&(u-=w.css(e,\"border\"+ne[a]+\"Width\",!0,i))):(u+=w.css(e,\"padding\"+ne[a],!0,i),\"padding\"!==n?u+=w.css(e,\"border\"+ne[a]+\"Width\",!0,i):s+=w.css(e,\"border\"+ne[a]+\"Width\",!0,i));return!r&&o>=0&&(u+=Math.max(0,Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-o-u-s-.5))||0),u}function tt(e,t,n){var r=Fe(e),i=(!d.boxSizingReliable()||n)&&\"border-box\"===w.css(e,\"boxSizing\",!1,r),o=i,a=_e(e,t,r),s=\"offset\"+t[0].toUpperCase()+t.slice(1);if(We.test(a)){if(!n)return a;a=\"auto\"}return(!d.boxSizingReliable()&&i||!d.reliableTrDimensions()&&A(e,\"tr\")||\"auto\"===a||!parseFloat(a)&&\"inline\"===w.css(e,\"display\",!1,r))&&e.getClientRects().length&&(i=\"border-box\"===w.css(e,\"boxSizing\",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+et(e,t,n||(i?\"border\":\"content\"),o,r,a)+\"px\"}function nt(e,t,n,r,i){return new nt.prototype.init(e,t,n,r,i)}w.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=_e(e,\"opacity\");return\"\"===n?\"1\":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=X(t),u=Qe.test(t),l=e.style;if(u||(t=Ge(s)),a=w.cssHooks[t]||w.cssHooks[s],void 0===n)return a&&\"get\"in a&&void 0!==(i=a.get(e,!1,r))?i:l[t];\"string\"===(o=typeof n)&&(i=te.exec(n))&&i[1]&&(n=se(e,t,i),o=\"number\"),null!=n&&n==n&&(\"number\"!==o||u||(n+=i&&i[3]||(w.cssNumber[s]?\"\":\"px\")),d.clearCloneStyle||\"\"!==n||0!==t.indexOf(\"background\")||(l[t]=\"inherit\"),a&&\"set\"in a&&void 0===(n=a.set(e,n,r))||(u?l.setProperty(t,n):l[t]=n))}},css:function(e,t,n,r){var i,o,a,s=X(t);return Qe.test(t)||(t=Ge(s)),(a=w.cssHooks[t]||w.cssHooks[s])&&\"get\"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=_e(e,t,r)),\"normal\"===i&&t in Ke&&(i=Ke[t]),\"\"===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),w.each([\"height\",\"width\"],(function(e,t){w.cssHooks[t]={get:function(e,n,r){if(n)return!Ye.test(w.css(e,\"display\"))||e.getClientRects().length&&e.getBoundingClientRect().width?tt(e,t,r):Be(e,Je,(function(){return tt(e,t,r)}))},set:function(e,n,r){var i,o=Fe(e),a=!d.scrollboxSize()&&\"absolute\"===o.position,s=(a||r)&&\"border-box\"===w.css(e,\"boxSizing\",!1,o),u=r?et(e,t,r,s,o):0;return s&&a&&(u-=Math.ceil(e[\"offset\"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-et(e,t,\"border\",!1,o)-.5)),u&&(i=te.exec(n))&&\"px\"!==(i[3]||\"px\")&&(e.style[t]=n,n=w.css(e,t)),Ze(0,n,u)}}})),w.cssHooks.marginLeft=ze(d.reliableMarginLeft,(function(e,t){if(t)return(parseFloat(_e(e,\"marginLeft\"))||e.getBoundingClientRect().left-Be(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+\"px\"})),w.each({margin:\"\",padding:\"\",border:\"Width\"},(function(e,t){w.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o=\"string\"==typeof n?n.split(\" \"):[n];r<4;r++)i[e+ne[r]+t]=o[r]||o[r-2]||o[0];return i}},\"margin\"!==e&&(w.cssHooks[e+t].set=Ze)})),w.fn.extend({css:function(e,t){return $(this,(function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Fe(e),i=t.length;a<i;a++)o[t[a]]=w.css(e,t[a],!1,r);return o}return void 0!==n?w.style(e,t,n):w.css(e,t)}),e,t,arguments.length>1)}}),w.Tween=nt,nt.prototype={constructor:nt,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||w.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(w.cssNumber[n]?\"\":\"px\")},cur:function(){var e=nt.propHooks[this.prop];return e&&e.get?e.get(this):nt.propHooks._default.get(this)},run:function(e){var t,n=nt.propHooks[this.prop];return this.options.duration?this.pos=t=w.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):nt.propHooks._default.set(this),this}},nt.prototype.init.prototype=nt.prototype,nt.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=w.css(e.elem,e.prop,\"\"))&&\"auto\"!==t?t:0},set:function(e){w.fx.step[e.prop]?w.fx.step[e.prop](e):1!==e.elem.nodeType||!w.cssHooks[e.prop]&&null==e.elem.style[Ge(e.prop)]?e.elem[e.prop]=e.now:w.style(e.elem,e.prop,e.now+e.unit)}}},nt.propHooks.scrollTop=nt.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},w.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:\"swing\"},w.fx=nt.prototype.init,w.fx.step={};var rt,it,ot=/^(?:toggle|show|hide)$/,at=/queueHooks$/;function st(){it&&(!1===v.hidden&&e.requestAnimationFrame?e.requestAnimationFrame(st):e.setTimeout(st,w.fx.interval),w.fx.tick())}function ut(){return e.setTimeout((function(){rt=void 0})),rt=Date.now()}function lt(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i[\"margin\"+(n=ne[r])]=i[\"padding\"+n]=e;return t&&(i.opacity=i.width=e),i}function ct(e,t,n){for(var r,i=(ft.tweeners[t]||[]).concat(ft.tweeners[\"*\"]),o=0,a=i.length;o<a;o++)if(r=i[o].call(n,t,e))return r}function ft(e,t,n){var r,i,o=0,a=ft.prefilters.length,s=w.Deferred().always((function(){delete u.elem})),u=function(){if(i)return!1;for(var t=rt||ut(),n=Math.max(0,l.startTime+l.duration-t),r=1-(n/l.duration||0),o=0,a=l.tweens.length;o<a;o++)l.tweens[o].run(r);return s.notifyWith(e,[l,r,n]),r<1&&a?n:(a||s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l]),!1)},l=s.promise({elem:e,props:w.extend({},t),opts:w.extend(!0,{specialEasing:{},easing:w.easing._default},n),originalProperties:t,originalOptions:n,startTime:rt||ut(),duration:n.duration,tweens:[],createTween:function(t,n){var r=w.Tween(e,l.opts,t,n,l.opts.specialEasing[t]||l.opts.easing);return l.tweens.push(r),r},stop:function(t){var n=0,r=t?l.tweens.length:0;if(i)return this;for(i=!0;n<r;n++)l.tweens[n].run(1);return t?(s.notifyWith(e,[l,1,0]),s.resolveWith(e,[l,t])):s.rejectWith(e,[l,t]),this}}),c=l.props;for(!function(e,t){var n,r,i,o,a;for(n in e)if(i=t[r=X(n)],o=e[n],Array.isArray(o)&&(i=o[1],o=e[n]=o[0]),n!==r&&(e[r]=o,delete e[n]),(a=w.cssHooks[r])&&\"expand\"in a)for(n in o=a.expand(o),delete e[r],o)n in e||(e[n]=o[n],t[n]=i);else t[r]=i}(c,l.opts.specialEasing);o<a;o++)if(r=ft.prefilters[o].call(l,e,c,l.opts))return h(r.stop)&&(w._queueHooks(l.elem,l.opts.queue).stop=r.stop.bind(r)),r;return w.map(c,ct,l),h(l.opts.start)&&l.opts.start.call(e,l),l.progress(l.opts.progress).done(l.opts.done,l.opts.complete).fail(l.opts.fail).always(l.opts.always),w.fx.timer(w.extend(u,{elem:e,anim:l,queue:l.opts.queue})),l}w.Animation=w.extend(ft,{tweeners:{\"*\":[function(e,t){var n=this.createTween(e,t);return se(n.elem,e,te.exec(t),n),n}]},tweener:function(e,t){h(e)?(t=e,e=[\"*\"]):e=e.match(P);for(var n,r=0,i=e.length;r<i;r++)n=e[r],ft.tweeners[n]=ft.tweeners[n]||[],ft.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var r,i,o,a,s,u,l,c,f=\"width\"in t||\"height\"in t,p=this,d={},h=e.style,g=e.nodeType&&ae(e),v=Y.get(e,\"fxshow\");for(r in n.queue||(null==(a=w._queueHooks(e,\"fx\")).unqueued&&(a.unqueued=0,s=a.empty.fire,a.empty.fire=function(){a.unqueued||s()}),a.unqueued++,p.always((function(){p.always((function(){a.unqueued--,w.queue(e,\"fx\").length||a.empty.fire()}))}))),t)if(i=t[r],ot.test(i)){if(delete t[r],o=o||\"toggle\"===i,i===(g?\"hide\":\"show\")){if(\"show\"!==i||!v||void 0===v[r])continue;g=!0}d[r]=v&&v[r]||w.style(e,r)}if((u=!w.isEmptyObject(t))||!w.isEmptyObject(d))for(r in f&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(l=v&&v.display)&&(l=Y.get(e,\"display\")),\"none\"===(c=w.css(e,\"display\"))&&(l?c=l:(ce([e],!0),l=e.style.display||l,c=w.css(e,\"display\"),ce([e]))),(\"inline\"===c||\"inline-block\"===c&&null!=l)&&\"none\"===w.css(e,\"float\")&&(u||(p.done((function(){h.display=l})),null==l&&(c=h.display,l=\"none\"===c?\"\":c)),h.display=\"inline-block\")),n.overflow&&(h.overflow=\"hidden\",p.always((function(){h.overflow=n.overflow[0],h.overflowX=n.overflow[1],h.overflowY=n.overflow[2]}))),u=!1,d)u||(v?\"hidden\"in v&&(g=v.hidden):v=Y.access(e,\"fxshow\",{display:l}),o&&(v.hidden=!g),g&&ce([e],!0),p.done((function(){for(r in g||ce([e]),Y.remove(e,\"fxshow\"),d)w.style(e,r,d[r])}))),u=ct(g?v[r]:0,r,p),r in v||(v[r]=u.start,g&&(u.end=u.start,u.start=0))}],prefilter:function(e,t){t?ft.prefilters.unshift(e):ft.prefilters.push(e)}}),w.speed=function(e,t,n){var r=e&&\"object\"==typeof e?w.extend({},e):{complete:n||!n&&t||h(e)&&e,duration:e,easing:n&&t||t&&!h(t)&&t};return w.fx.off?r.duration=0:\"number\"!=typeof r.duration&&(r.duration in w.fx.speeds?r.duration=w.fx.speeds[r.duration]:r.duration=w.fx.speeds._default),null!=r.queue&&!0!==r.queue||(r.queue=\"fx\"),r.old=r.complete,r.complete=function(){h(r.old)&&r.old.call(this),r.queue&&w.dequeue(this,r.queue)},r},w.fn.extend({fadeTo:function(e,t,n,r){return this.filter(ae).css(\"opacity\",0).show().end().animate({opacity:t},e,n,r)},animate:function(e,t,n,r){var i=w.isEmptyObject(e),o=w.speed(t,n,r),a=function(){var t=ft(this,w.extend({},e),o);(i||Y.get(this,\"finish\"))&&t.stop(!0)};return a.finish=a,i||!1===o.queue?this.each(a):this.queue(o.queue,a)},stop:function(e,t,n){var r=function(e){var t=e.stop;delete e.stop,t(n)};return\"string\"!=typeof e&&(n=t,t=e,e=void 0),t&&this.queue(e||\"fx\",[]),this.each((function(){var t=!0,i=null!=e&&e+\"queueHooks\",o=w.timers,a=Y.get(this);if(i)a[i]&&a[i].stop&&r(a[i]);else for(i in a)a[i]&&a[i].stop&&at.test(i)&&r(a[i]);for(i=o.length;i--;)o[i].elem!==this||null!=e&&o[i].queue!==e||(o[i].anim.stop(n),t=!1,o.splice(i,1));!t&&n||w.dequeue(this,e)}))},finish:function(e){return!1!==e&&(e=e||\"fx\"),this.each((function(){var t,n=Y.get(this),r=n[e+\"queue\"],i=n[e+\"queueHooks\"],o=w.timers,a=r?r.length:0;for(n.finish=!0,w.queue(this,e,[]),i&&i.stop&&i.stop.call(this,!0),t=o.length;t--;)o[t].elem===this&&o[t].queue===e&&(o[t].anim.stop(!0),o.splice(t,1));for(t=0;t<a;t++)r[t]&&r[t].finish&&r[t].finish.call(this);delete n.finish}))}}),w.each([\"toggle\",\"show\",\"hide\"],(function(e,t){var n=w.fn[t];w.fn[t]=function(e,r,i){return null==e||\"boolean\"==typeof e?n.apply(this,arguments):this.animate(lt(t,!0),e,r,i)}})),w.each({slideDown:lt(\"show\"),slideUp:lt(\"hide\"),slideToggle:lt(\"toggle\"),fadeIn:{opacity:\"show\"},fadeOut:{opacity:\"hide\"},fadeToggle:{opacity:\"toggle\"}},(function(e,t){w.fn[e]=function(e,n,r){return this.animate(t,e,n,r)}})),w.timers=[],w.fx.tick=function(){var e,t=0,n=w.timers;for(rt=Date.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||w.fx.stop(),rt=void 0},w.fx.timer=function(e){w.timers.push(e),w.fx.start()},w.fx.interval=13,w.fx.start=function(){it||(it=!0,st())},w.fx.stop=function(){it=null},w.fx.speeds={slow:600,fast:200,_default:400},w.fn.delay=function(t,n){return t=w.fx&&w.fx.speeds[t]||t,n=n||\"fx\",this.queue(n,(function(n,r){var i=e.setTimeout(n,t);r.stop=function(){e.clearTimeout(i)}}))},function(){var e=v.createElement(\"input\"),t=v.createElement(\"select\").appendChild(v.createElement(\"option\"));e.type=\"checkbox\",d.checkOn=\"\"!==e.value,d.optSelected=t.selected,(e=v.createElement(\"input\")).value=\"t\",e.type=\"radio\",d.radioValue=\"t\"===e.value}();var pt,dt=w.expr.attrHandle;w.fn.extend({attr:function(e,t){return $(this,w.attr,e,t,arguments.length>1)},removeAttr:function(e){return this.each((function(){w.removeAttr(this,e)}))}}),w.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?w.prop(e,t,n):(1===o&&w.isXMLDoc(e)||(i=w.attrHooks[t.toLowerCase()]||(w.expr.match.bool.test(t)?pt:void 0)),void 0!==n?null===n?void w.removeAttr(e,t):i&&\"set\"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+\"\"),n):i&&\"get\"in i&&null!==(r=i.get(e,t))?r:null==(r=w.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!d.radioValue&&\"radio\"===t&&A(e,\"input\")){var n=e.value;return e.setAttribute(\"type\",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(P);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),pt={set:function(e,t,n){return!1===t?w.removeAttr(e,n):e.setAttribute(n,n),n}},w.each(w.expr.match.bool.source.match(/\\w+/g),(function(e,t){var n=dt[t]||w.find.attr;dt[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=dt[a],dt[a]=i,i=null!=n(e,t,r)?a:null,dt[a]=o),i}}));var ht=/^(?:input|select|textarea|button)$/i,gt=/^(?:a|area)$/i;function vt(e){return(e.match(P)||[]).join(\" \")}function yt(e){return e.getAttribute&&e.getAttribute(\"class\")||\"\"}function mt(e){return Array.isArray(e)?e:\"string\"==typeof e&&e.match(P)||[]}w.fn.extend({prop:function(e,t){return $(this,w.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[w.propFix[e]||e]}))}}),w.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&w.isXMLDoc(e)||(t=w.propFix[t]||t,i=w.propHooks[t]),void 0!==n?i&&\"set\"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&\"get\"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=w.find.attr(e,\"tabindex\");return t?parseInt(t,10):ht.test(e.nodeName)||gt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:\"htmlFor\",class:\"className\"}}),d.optSelected||(w.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),w.each([\"tabIndex\",\"readOnly\",\"maxLength\",\"cellSpacing\",\"cellPadding\",\"rowSpan\",\"colSpan\",\"useMap\",\"frameBorder\",\"contentEditable\"],(function(){w.propFix[this.toLowerCase()]=this})),w.fn.extend({addClass:function(e){var t,n,r,i,o,a,s,u=0;if(h(e))return this.each((function(t){w(this).addClass(e.call(this,t,yt(this)))}));if((t=mt(e)).length)for(;n=this[u++];)if(i=yt(n),r=1===n.nodeType&&\" \"+vt(i)+\" \"){for(a=0;o=t[a++];)r.indexOf(\" \"+o+\" \")<0&&(r+=o+\" \");i!==(s=vt(r))&&n.setAttribute(\"class\",s)}return this},removeClass:function(e){var t,n,r,i,o,a,s,u=0;if(h(e))return this.each((function(t){w(this).removeClass(e.call(this,t,yt(this)))}));if(!arguments.length)return this.attr(\"class\",\"\");if((t=mt(e)).length)for(;n=this[u++];)if(i=yt(n),r=1===n.nodeType&&\" \"+vt(i)+\" \"){for(a=0;o=t[a++];)for(;r.indexOf(\" \"+o+\" \")>-1;)r=r.replace(\" \"+o+\" \",\" \");i!==(s=vt(r))&&n.setAttribute(\"class\",s)}return this},toggleClass:function(e,t){var n=typeof e,r=\"string\"===n||Array.isArray(e);return\"boolean\"==typeof t&&r?t?this.addClass(e):this.removeClass(e):h(e)?this.each((function(n){w(this).toggleClass(e.call(this,n,yt(this),t),t)})):this.each((function(){var t,i,o,a;if(r)for(i=0,o=w(this),a=mt(e);t=a[i++];)o.hasClass(t)?o.removeClass(t):o.addClass(t);else void 0!==e&&\"boolean\"!==n||((t=yt(this))&&Y.set(this,\"__className__\",t),this.setAttribute&&this.setAttribute(\"class\",t||!1===e?\"\":Y.get(this,\"__className__\")||\"\"))}))},hasClass:function(e){var t,n,r=0;for(t=\" \"+e+\" \";n=this[r++];)if(1===n.nodeType&&(\" \"+vt(yt(n))+\" \").indexOf(t)>-1)return!0;return!1}});var xt=/\\r/g;w.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=h(e),this.each((function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,w(this).val()):e)?i=\"\":\"number\"==typeof i?i+=\"\":Array.isArray(i)&&(i=w.map(i,(function(e){return null==e?\"\":e+\"\"}))),(t=w.valHooks[this.type]||w.valHooks[this.nodeName.toLowerCase()])&&\"set\"in t&&void 0!==t.set(this,i,\"value\")||(this.value=i))}))):i?(t=w.valHooks[i.type]||w.valHooks[i.nodeName.toLowerCase()])&&\"get\"in t&&void 0!==(n=t.get(i,\"value\"))?n:\"string\"==typeof(n=i.value)?n.replace(xt,\"\"):null==n?\"\":n:void 0}}),w.extend({valHooks:{option:{get:function(e){var t=w.find.attr(e,\"value\");return null!=t?t:vt(w.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a=\"select-one\"===e.type,s=a?null:[],u=a?o+1:i.length;for(r=o<0?u:a?o:0;r<u;r++)if(((n=i[r]).selected||r===o)&&!n.disabled&&(!n.parentNode.disabled||!A(n.parentNode,\"optgroup\"))){if(t=w(n).val(),a)return t;s.push(t)}return s},set:function(e,t){for(var n,r,i=e.options,o=w.makeArray(t),a=i.length;a--;)((r=i[a]).selected=w.inArray(w.valHooks.option.get(r),o)>-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),w.each([\"radio\",\"checkbox\"],(function(){w.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=w.inArray(w(e).val(),t)>-1}},d.checkOn||(w.valHooks[this].get=function(e){return null===e.getAttribute(\"value\")?\"on\":e.value})})),d.focusin=\"onfocusin\"in e;var bt=/^(?:focusinfocus|focusoutblur)$/,wt=function(e){e.stopPropagation()};w.extend(w.event,{trigger:function(t,n,r,i){var o,a,s,u,l,f,p,d,y=[r||v],m=c.call(t,\"type\")?t.type:t,x=c.call(t,\"namespace\")?t.namespace.split(\".\"):[];if(a=d=s=r=r||v,3!==r.nodeType&&8!==r.nodeType&&!bt.test(m+w.event.triggered)&&(m.indexOf(\".\")>-1&&(x=m.split(\".\"),m=x.shift(),x.sort()),l=m.indexOf(\":\")<0&&\"on\"+m,(t=t[w.expando]?t:new w.Event(m,\"object\"==typeof t&&t)).isTrigger=i?2:3,t.namespace=x.join(\".\"),t.rnamespace=t.namespace?new RegExp(\"(^|\\\\.)\"+x.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"):null,t.result=void 0,t.target||(t.target=r),n=null==n?[t]:w.makeArray(n,[t]),p=w.event.special[m]||{},i||!p.trigger||!1!==p.trigger.apply(r,n))){if(!i&&!p.noBubble&&!g(r)){for(u=p.delegateType||m,bt.test(u+m)||(a=a.parentNode);a;a=a.parentNode)y.push(a),s=a;s===(r.ownerDocument||v)&&y.push(s.defaultView||s.parentWindow||e)}for(o=0;(a=y[o++])&&!t.isPropagationStopped();)d=a,t.type=o>1?u:p.bindType||m,(f=(Y.get(a,\"events\")||Object.create(null))[t.type]&&Y.get(a,\"handle\"))&&f.apply(a,n),(f=l&&a[l])&&f.apply&&V(a)&&(t.result=f.apply(a,n),!1===t.result&&t.preventDefault());return t.type=m,i||t.isDefaultPrevented()||p._default&&!1!==p._default.apply(y.pop(),n)||!V(r)||l&&h(r[m])&&!g(r)&&((s=r[l])&&(r[l]=null),w.event.triggered=m,t.isPropagationStopped()&&d.addEventListener(m,wt),r[m](),t.isPropagationStopped()&&d.removeEventListener(m,wt),w.event.triggered=void 0,s&&(r[l]=s)),t.result}},simulate:function(e,t,n){var r=w.extend(new w.Event,n,{type:e,isSimulated:!0});w.event.trigger(r,null,t)}}),w.fn.extend({trigger:function(e,t){return this.each((function(){w.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return w.event.trigger(e,t,n,!0)}}),d.focusin||w.each({focus:\"focusin\",blur:\"focusout\"},(function(e,t){var n=function(e){w.event.simulate(t,e.target,w.event.fix(e))};w.event.special[t]={setup:function(){var r=this.ownerDocument||this.document||this,i=Y.access(r,t);i||r.addEventListener(e,n,!0),Y.access(r,t,(i||0)+1)},teardown:function(){var r=this.ownerDocument||this.document||this,i=Y.access(r,t)-1;i?Y.access(r,t,i):(r.removeEventListener(e,n,!0),Y.remove(r,t))}}}));var Tt=e.location,Ct={guid:Date.now()},Et=/\\?/;w.parseXML=function(t){var n;if(!t||\"string\"!=typeof t)return null;try{n=(new e.DOMParser).parseFromString(t,\"text/xml\")}catch(e){n=void 0}return n&&!n.getElementsByTagName(\"parsererror\").length||w.error(\"Invalid XML: \"+t),n};var St=/\\[\\]$/,kt=/\\r?\\n/g,At=/^(?:submit|button|image|reset|file)$/i,Nt=/^(?:input|select|textarea|keygen)/i;function Dt(e,t,n,r){var i;if(Array.isArray(t))w.each(t,(function(t,i){n||St.test(e)?r(e,i):Dt(e+\"[\"+(\"object\"==typeof i&&null!=i?t:\"\")+\"]\",i,n,r)}));else if(n||\"object\"!==x(t))r(e,t);else for(i in t)Dt(e+\"[\"+i+\"]\",t[i],n,r)}w.param=function(e,t){var n,r=[],i=function(e,t){var n=h(t)?t():t;r[r.length]=encodeURIComponent(e)+\"=\"+encodeURIComponent(null==n?\"\":n)};if(null==e)return\"\";if(Array.isArray(e)||e.jquery&&!w.isPlainObject(e))w.each(e,(function(){i(this.name,this.value)}));else for(n in e)Dt(n,e[n],t,i);return r.join(\"&\")},w.fn.extend({serialize:function(){return w.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=w.prop(this,\"elements\");return e?w.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!w(this).is(\":disabled\")&&Nt.test(this.nodeName)&&!At.test(e)&&(this.checked||!de.test(e))})).map((function(e,t){var n=w(this).val();return null==n?null:Array.isArray(n)?w.map(n,(function(e){return{name:t.name,value:e.replace(kt,\"\\r\\n\")}})):{name:t.name,value:n.replace(kt,\"\\r\\n\")}})).get()}});var jt=/%20/g,qt=/#.*$/,Lt=/([?&])_=[^&]*/,Ht=/^(.*?):[ \\t]*([^\\r\\n]*)$/gm,Ot=/^(?:GET|HEAD)$/,Pt=/^\\/\\//,Rt={},Mt={},It=\"*/\".concat(\"*\"),Wt=v.createElement(\"a\");function Ft(e){return function(t,n){\"string\"!=typeof t&&(n=t,t=\"*\");var r,i=0,o=t.toLowerCase().match(P)||[];if(h(n))for(;r=o[i++];)\"+\"===r[0]?(r=r.slice(1)||\"*\",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Bt(e,t,n,r){var i={},o=e===Mt;function a(s){var u;return i[s]=!0,w.each(e[s]||[],(function(e,s){var l=s(t,n,r);return\"string\"!=typeof l||o||i[l]?o?!(u=l):void 0:(t.dataTypes.unshift(l),a(l),!1)})),u}return a(t.dataTypes[0])||!i[\"*\"]&&a(\"*\")}function $t(e,t){var n,r,i=w.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&w.extend(!0,e,r),e}Wt.href=Tt.href,w.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Tt.href,type:\"GET\",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Tt.protocol),global:!0,processData:!0,async:!0,contentType:\"application/x-www-form-urlencoded; charset=UTF-8\",accepts:{\"*\":It,text:\"text/plain\",html:\"text/html\",xml:\"application/xml, text/xml\",json:\"application/json, text/javascript\"},contents:{xml:/\\bxml\\b/,html:/\\bhtml/,json:/\\bjson\\b/},responseFields:{xml:\"responseXML\",text:\"responseText\",json:\"responseJSON\"},converters:{\"* text\":String,\"text html\":!0,\"text json\":JSON.parse,\"text xml\":w.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?$t($t(e,w.ajaxSettings),t):$t(w.ajaxSettings,e)},ajaxPrefilter:Ft(Rt),ajaxTransport:Ft(Mt),ajax:function(t,n){\"object\"==typeof t&&(n=t,t=void 0),n=n||{};var r,i,o,a,s,u,l,c,f,p,d=w.ajaxSetup({},n),h=d.context||d,g=d.context&&(h.nodeType||h.jquery)?w(h):w.event,y=w.Deferred(),m=w.Callbacks(\"once memory\"),x=d.statusCode||{},b={},T={},C=\"canceled\",E={readyState:0,getResponseHeader:function(e){var t;if(l){if(!a)for(a={};t=Ht.exec(o);)a[t[1].toLowerCase()+\" \"]=(a[t[1].toLowerCase()+\" \"]||[]).concat(t[2]);t=a[e.toLowerCase()+\" \"]}return null==t?null:t.join(\", \")},getAllResponseHeaders:function(){return l?o:null},setRequestHeader:function(e,t){return null==l&&(e=T[e.toLowerCase()]=T[e.toLowerCase()]||e,b[e]=t),this},overrideMimeType:function(e){return null==l&&(d.mimeType=e),this},statusCode:function(e){var t;if(e)if(l)E.always(e[E.status]);else for(t in e)x[t]=[x[t],e[t]];return this},abort:function(e){var t=e||C;return r&&r.abort(t),S(0,t),this}};if(y.promise(E),d.url=((t||d.url||Tt.href)+\"\").replace(Pt,Tt.protocol+\"//\"),d.type=n.method||n.type||d.method||d.type,d.dataTypes=(d.dataType||\"*\").toLowerCase().match(P)||[\"\"],null==d.crossDomain){u=v.createElement(\"a\");try{u.href=d.url,u.href=u.href,d.crossDomain=Wt.protocol+\"//\"+Wt.host!=u.protocol+\"//\"+u.host}catch(e){d.crossDomain=!0}}if(d.data&&d.processData&&\"string\"!=typeof d.data&&(d.data=w.param(d.data,d.traditional)),Bt(Rt,d,n,E),l)return E;for(f in(c=w.event&&d.global)&&0==w.active++&&w.event.trigger(\"ajaxStart\"),d.type=d.type.toUpperCase(),d.hasContent=!Ot.test(d.type),i=d.url.replace(qt,\"\"),d.hasContent?d.data&&d.processData&&0===(d.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&(d.data=d.data.replace(jt,\"+\")):(p=d.url.slice(i.length),d.data&&(d.processData||\"string\"==typeof d.data)&&(i+=(Et.test(i)?\"&\":\"?\")+d.data,delete d.data),!1===d.cache&&(i=i.replace(Lt,\"$1\"),p=(Et.test(i)?\"&\":\"?\")+\"_=\"+Ct.guid+++p),d.url=i+p),d.ifModified&&(w.lastModified[i]&&E.setRequestHeader(\"If-Modified-Since\",w.lastModified[i]),w.etag[i]&&E.setRequestHeader(\"If-None-Match\",w.etag[i])),(d.data&&d.hasContent&&!1!==d.contentType||n.contentType)&&E.setRequestHeader(\"Content-Type\",d.contentType),E.setRequestHeader(\"Accept\",d.dataTypes[0]&&d.accepts[d.dataTypes[0]]?d.accepts[d.dataTypes[0]]+(\"*\"!==d.dataTypes[0]?\", \"+It+\"; q=0.01\":\"\"):d.accepts[\"*\"]),d.headers)E.setRequestHeader(f,d.headers[f]);if(d.beforeSend&&(!1===d.beforeSend.call(h,E,d)||l))return E.abort();if(C=\"abort\",m.add(d.complete),E.done(d.success),E.fail(d.error),r=Bt(Mt,d,n,E)){if(E.readyState=1,c&&g.trigger(\"ajaxSend\",[E,d]),l)return E;d.async&&d.timeout>0&&(s=e.setTimeout((function(){E.abort(\"timeout\")}),d.timeout));try{l=!1,r.send(b,S)}catch(e){if(l)throw e;S(-1,e)}}else S(-1,\"No Transport\");function S(t,n,a,u){var f,p,v,b,T,C=n;l||(l=!0,s&&e.clearTimeout(s),r=void 0,o=u||\"\",E.readyState=t>0?4:0,f=t>=200&&t<300||304===t,a&&(b=function(e,t,n){for(var r,i,o,a,s=e.contents,u=e.dataTypes;\"*\"===u[0];)u.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader(\"Content-Type\"));if(r)for(i in s)if(s[i]&&s[i].test(r)){u.unshift(i);break}if(u[0]in n)o=u[0];else{for(i in n){if(!u[0]||e.converters[i+\" \"+u[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==u[0]&&u.unshift(o),n[o]}(d,E,a)),!f&&w.inArray(\"script\",d.dataTypes)>-1&&(d.converters[\"text script\"]=function(){}),b=function(e,t,n,r){var i,o,a,s,u,l={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)l[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!u&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),u=o,o=c.shift())if(\"*\"===o)o=u;else if(\"*\"!==u&&u!==o){if(!(a=l[u+\" \"+o]||l[\"* \"+o]))for(i in l)if((s=i.split(\" \"))[1]===o&&(a=l[u+\" \"+s[0]]||l[\"* \"+s[0]])){!0===a?a=l[i]:!0!==l[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:\"parsererror\",error:a?e:\"No conversion from \"+u+\" to \"+o}}}return{state:\"success\",data:t}}(d,b,E,f),f?(d.ifModified&&((T=E.getResponseHeader(\"Last-Modified\"))&&(w.lastModified[i]=T),(T=E.getResponseHeader(\"etag\"))&&(w.etag[i]=T)),204===t||\"HEAD\"===d.type?C=\"nocontent\":304===t?C=\"notmodified\":(C=b.state,p=b.data,f=!(v=b.error))):(v=C,!t&&C||(C=\"error\",t<0&&(t=0))),E.status=t,E.statusText=(n||C)+\"\",f?y.resolveWith(h,[p,C,E]):y.rejectWith(h,[E,C,v]),E.statusCode(x),x=void 0,c&&g.trigger(f?\"ajaxSuccess\":\"ajaxError\",[E,d,f?p:v]),m.fireWith(h,[E,C]),c&&(g.trigger(\"ajaxComplete\",[E,d]),--w.active||w.event.trigger(\"ajaxStop\")))}return E},getJSON:function(e,t,n){return w.get(e,t,n,\"json\")},getScript:function(e,t){return w.get(e,void 0,t,\"script\")}}),w.each([\"get\",\"post\"],(function(e,t){w[t]=function(e,n,r,i){return h(n)&&(i=i||r,r=n,n=void 0),w.ajax(w.extend({url:e,type:t,dataType:i,data:n,success:r},w.isPlainObject(e)&&e))}})),w.ajaxPrefilter((function(e){var t;for(t in e.headers)\"content-type\"===t.toLowerCase()&&(e.contentType=e.headers[t]||\"\")})),w._evalUrl=function(e,t,n){return w.ajax({url:e,type:\"GET\",dataType:\"script\",cache:!0,async:!1,global:!1,converters:{\"text script\":function(){}},dataFilter:function(e){w.globalEval(e,t,n)}})},w.fn.extend({wrapAll:function(e){var t;return this[0]&&(h(e)&&(e=e.call(this[0])),t=w(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return h(e)?this.each((function(t){w(this).wrapInner(e.call(this,t))})):this.each((function(){var t=w(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=h(e);return this.each((function(n){w(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not(\"body\").each((function(){w(this).replaceWith(this.childNodes)})),this}}),w.expr.pseudos.hidden=function(e){return!w.expr.pseudos.visible(e)},w.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},w.ajaxSettings.xhr=function(){try{return new e.XMLHttpRequest}catch(e){}};var _t={0:200,1223:204},zt=w.ajaxSettings.xhr();d.cors=!!zt&&\"withCredentials\"in zt,d.ajax=zt=!!zt,w.ajaxTransport((function(t){var n,r;if(d.cors||zt&&!t.crossDomain)return{send:function(i,o){var a,s=t.xhr();if(s.open(t.type,t.url,t.async,t.username,t.password),t.xhrFields)for(a in t.xhrFields)s[a]=t.xhrFields[a];for(a in t.mimeType&&s.overrideMimeType&&s.overrideMimeType(t.mimeType),t.crossDomain||i[\"X-Requested-With\"]||(i[\"X-Requested-With\"]=\"XMLHttpRequest\"),i)s.setRequestHeader(a,i[a]);n=function(e){return function(){n&&(n=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,\"abort\"===e?s.abort():\"error\"===e?\"number\"!=typeof s.status?o(0,\"error\"):o(s.status,s.statusText):o(_t[s.status]||s.status,s.statusText,\"text\"!==(s.responseType||\"text\")||\"string\"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=n(),r=s.onerror=s.ontimeout=n(\"error\"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&e.setTimeout((function(){n&&r()}))},n=n(\"abort\");try{s.send(t.hasContent&&t.data||null)}catch(e){if(n)throw e}},abort:function(){n&&n()}}})),w.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),w.ajaxSetup({accepts:{script:\"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript\"},contents:{script:/\\b(?:java|ecma)script\\b/},converters:{\"text script\":function(e){return w.globalEval(e),e}}}),w.ajaxPrefilter(\"script\",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type=\"GET\")})),w.ajaxTransport(\"script\",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=w(\"<script>\").attr(e.scriptAttrs||{}).prop({charset:e.scriptCharset,src:e.url}).on(\"load error\",n=function(e){t.remove(),n=null,e&&i(\"error\"===e.type?404:200,e.type)}),v.head.appendChild(t[0])},abort:function(){n&&n()}}}));var Ut,Xt=[],Vt=/(=)\\?(?=&|$)|\\?\\?/;w.ajaxSetup({jsonp:\"callback\",jsonpCallback:function(){var e=Xt.pop()||w.expando+\"_\"+Ct.guid++;return this[e]=!0,e}}),w.ajaxPrefilter(\"json jsonp\",(function(t,n,r){var i,o,a,s=!1!==t.jsonp&&(Vt.test(t.url)?\"url\":\"string\"==typeof t.data&&0===(t.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&Vt.test(t.data)&&\"data\");if(s||\"jsonp\"===t.dataTypes[0])return i=t.jsonpCallback=h(t.jsonpCallback)?t.jsonpCallback():t.jsonpCallback,s?t[s]=t[s].replace(Vt,\"$1\"+i):!1!==t.jsonp&&(t.url+=(Et.test(t.url)?\"&\":\"?\")+t.jsonp+\"=\"+i),t.converters[\"script json\"]=function(){return a||w.error(i+\" was not called\"),a[0]},t.dataTypes[0]=\"json\",o=e[i],e[i]=function(){a=arguments},r.always((function(){void 0===o?w(e).removeProp(i):e[i]=o,t[i]&&(t.jsonpCallback=n.jsonpCallback,Xt.push(i)),a&&h(o)&&o(a[0]),a=o=void 0})),\"script\"})),d.createHTMLDocument=((Ut=v.implementation.createHTMLDocument(\"\").body).innerHTML=\"<form></form><form></form>\",2===Ut.childNodes.length),w.parseHTML=function(e,t,n){return\"string\"!=typeof e?[]:(\"boolean\"==typeof t&&(n=t,t=!1),t||(d.createHTMLDocument?((r=(t=v.implementation.createHTMLDocument(\"\")).createElement(\"base\")).href=v.location.href,t.head.appendChild(r)):t=v),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=be([e],t,o),o&&o.length&&w(o).remove(),w.merge([],i.childNodes)));var r,i,o},w.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(\" \");return s>-1&&(r=vt(e.slice(s)),e=e.slice(0,s)),h(t)?(n=t,t=void 0):t&&\"object\"==typeof t&&(i=\"POST\"),a.length>0&&w.ajax({url:e,type:i||\"GET\",dataType:\"html\",data:t}).done((function(e){o=arguments,a.html(r?w(\"<div>\").append(w.parseHTML(e)).find(r):e)})).always(n&&function(e,t){a.each((function(){n.apply(this,o||[e.responseText,t,e])}))}),this},w.expr.pseudos.animated=function(e){return w.grep(w.timers,(function(t){return e===t.elem})).length},w.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=w.css(e,\"position\"),c=w(e),f={};\"static\"===l&&(e.style.position=\"relative\"),s=c.offset(),o=w.css(e,\"top\"),u=w.css(e,\"left\"),(\"absolute\"===l||\"fixed\"===l)&&(o+u).indexOf(\"auto\")>-1?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),h(t)&&(t=t.call(e,n,w.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),\"using\"in t?t.using.call(e,f):(\"number\"==typeof f.top&&(f.top+=\"px\"),\"number\"==typeof f.left&&(f.left+=\"px\"),c.css(f))}},w.fn.extend({offset:function(e){if(arguments.length)return void 0===e?this:this.each((function(t){w.offset.setOffset(this,e,t)}));var t,n,r=this[0];return r?r.getClientRects().length?(t=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:t.top+n.pageYOffset,left:t.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if(\"fixed\"===w.css(r,\"position\"))t=r.getBoundingClientRect();else{for(t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;e&&(e===n.body||e===n.documentElement)&&\"static\"===w.css(e,\"position\");)e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=w(e).offset()).top+=w.css(e,\"borderTopWidth\",!0),i.left+=w.css(e,\"borderLeftWidth\",!0))}return{top:t.top-i.top-w.css(r,\"marginTop\",!0),left:t.left-i.left-w.css(r,\"marginLeft\",!0)}}},offsetParent:function(){return this.map((function(){for(var e=this.offsetParent;e&&\"static\"===w.css(e,\"position\");)e=e.offsetParent;return e||re}))}}),w.each({scrollLeft:\"pageXOffset\",scrollTop:\"pageYOffset\"},(function(e,t){var n=\"pageYOffset\"===t;w.fn[e]=function(r){return $(this,(function(e,r,i){var o;if(g(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===i)return o?o[t]:e[r];o?o.scrollTo(n?o.pageXOffset:i,n?i:o.pageYOffset):e[r]=i}),e,r,arguments.length)}})),w.each([\"top\",\"left\"],(function(e,t){w.cssHooks[t]=ze(d.pixelPosition,(function(e,n){if(n)return n=_e(e,t),We.test(n)?w(e).position()[t]+\"px\":n}))})),w.each({Height:\"height\",Width:\"width\"},(function(e,t){w.each({padding:\"inner\"+e,content:t,\"\":\"outer\"+e},(function(n,r){w.fn[r]=function(i,o){var a=arguments.length&&(n||\"boolean\"!=typeof i),s=n||(!0===i||!0===o?\"margin\":\"border\");return $(this,(function(t,n,i){var o;return g(t)?0===r.indexOf(\"outer\")?t[\"inner\"+e]:t.document.documentElement[\"client\"+e]:9===t.nodeType?(o=t.documentElement,Math.max(t.body[\"scroll\"+e],o[\"scroll\"+e],t.body[\"offset\"+e],o[\"offset\"+e],o[\"client\"+e])):void 0===i?w.css(t,n,s):w.style(t,n,i,s)}),t,a?i:void 0,a)}}))})),w.each([\"ajaxStart\",\"ajaxStop\",\"ajaxComplete\",\"ajaxError\",\"ajaxSuccess\",\"ajaxSend\"],(function(e,t){w.fn[t]=function(e){return this.on(t,e)}})),w.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,\"**\"):this.off(t,e||\"**\",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),w.each(\"blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu\".split(\" \"),(function(e,t){w.fn[t]=function(e,n){return arguments.length>0?this.on(t,null,e,n):this.trigger(t)}}));var Gt=/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g;w.proxy=function(e,t){var n,r,o;if(\"string\"==typeof t&&(n=e[t],t=e,e=n),h(e))return r=i.call(arguments,2),(o=function(){return e.apply(t||this,r.concat(i.call(arguments)))}).guid=e.guid=e.guid||w.guid++,o},w.holdReady=function(e){e?w.readyWait++:w.ready(!0)},w.isArray=Array.isArray,w.parseJSON=JSON.parse,w.nodeName=A,w.isFunction=h,w.isWindow=g,w.camelCase=X,w.type=x,w.now=Date.now,w.isNumeric=function(e){var t=w.type(e);return(\"number\"===t||\"string\"===t)&&!isNaN(e-parseFloat(e))},w.trim=function(e){return null==e?\"\":(e+\"\").replace(Gt,\"\")},\"function\"==typeof define&&define.amd&&define(\"jquery\",[],(function(){return w}));var Yt=e.jQuery,Qt=e.$;return w.noConflict=function(t){return e.$===w&&(e.$=Qt),t&&e.jQuery===w&&(e.jQuery=Yt),w},void 0===t&&(e.jQuery=e.$=w),w}))},\n 476: function _(t,n,i,o,e){var r=t(474);function u(){var t=!1,n=!1;this.stopPropagation=function(){t=!0},this.isPropagationStopped=function(){return t},this.stopImmediatePropagation=function(){n=!0},this.isImmediatePropagationStopped=function(){return n}}function s(){this.__nonDataRow=!0}function l(){this.__group=!0,this.level=0,this.count=0,this.value=null,this.title=null,this.collapsed=!1,this.selectChecked=!1,this.totals=null,this.rows=[],this.groups=null,this.groupingKey=null}function c(){this.__groupTotals=!0,this.group=null,this.initialized=!1}function h(){var t=null;this.isActive=function(n){return n?t===n:null!==t},this.activate=function(n){if(n!==t){if(null!==t)throw new Error(\"SlickGrid.EditorLock.activate: an editController is still active, can't activate another editController\");if(!n.commitCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .commitCurrentEdit()\");if(!n.cancelCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .cancelCurrentEdit()\");t=n}},this.deactivate=function(n){if(t!==n)throw new Error(\"SlickGrid.EditorLock.deactivate: specified editController is not the currently active one\");t=null},this.commitCurrentEdit=function(){return!t||t.commitCurrentEdit()},this.cancelCurrentEdit=function(){return!t||t.cancelCurrentEdit()}}l.prototype=new s,l.prototype.equals=function(t){return this.value===t.value&&this.count===t.count&&this.collapsed===t.collapsed&&this.title===t.title},c.prototype=new s,n.exports={Event:function(){var t=[];this.subscribe=function(n){t.push(n)},this.unsubscribe=function(n){for(var i=t.length-1;i>=0;i--)t[i]===n&&t.splice(i,1)},this.notify=function(n,i,o){var e;i=i||new u,o=o||this;for(var r=0;r<t.length&&!i.isPropagationStopped()&&!i.isImmediatePropagationStopped();r++)e=t[r].call(o,i,n);return e}},EventData:u,EventHandler:function(){var t=[];this.subscribe=function(n,i){return t.push({event:n,handler:i}),n.subscribe(i),this},this.unsubscribe=function(n,i){for(var o=t.length;o--;)if(t[o].event===n&&t[o].handler===i)return t.splice(o,1),void n.unsubscribe(i);return this},this.unsubscribeAll=function(){for(var n=t.length;n--;)t[n].event.unsubscribe(t[n].handler);return t=[],this}},Range:function(t,n,i,o){void 0===i&&void 0===o&&(i=t,o=n),this.fromRow=Math.min(t,i),this.fromCell=Math.min(n,o),this.toRow=Math.max(t,i),this.toCell=Math.max(n,o),this.isSingleRow=function(){return this.fromRow==this.toRow},this.isSingleCell=function(){return this.fromRow==this.toRow&&this.fromCell==this.toCell},this.contains=function(t,n){return t>=this.fromRow&&t<=this.toRow&&n>=this.fromCell&&n<=this.toCell},this.toString=function(){return this.isSingleCell()?\"(\"+this.fromRow+\":\"+this.fromCell+\")\":\"(\"+this.fromRow+\":\"+this.fromCell+\" - \"+this.toRow+\":\"+this.toCell+\")\"}},NonDataRow:s,Group:l,GroupTotals:c,EditorLock:h,GlobalEditorLock:new h,TreeColumns:function(t){var n={};function i(t){t.forEach((function(t){n[t.id]=t,t.columns&&i(t.columns)}))}function o(t,n){return t.filter((function(t){var i=n.call(t);return i&&t.columns&&(t.columns=o(t.columns,n)),i&&(!t.columns||t.columns.length)}))}function e(t,n){t.sort((function(t,i){return u(n.getColumnIndex(t.id))-u(n.getColumnIndex(i.id))})).forEach((function(t){t.columns&&e(t.columns,n)}))}function u(t){return void 0===t?-1:t}function s(t){if(!t.length)return t.columns?1+s(t.columns):1;for(var n in t)return s(t[n])}function l(t,n,i){var o=[];if(n==(i=i||0))return t.length&&t.forEach((function(t){t.columns&&(t.extractColumns=function(){return c(t)})})),t;for(var e in t)t[e].columns&&(o=o.concat(l(t[e].columns,n,i+1)));return o}function c(t){var n=[];if(t.hasOwnProperty(\"length\"))for(var i=0;i<t.length;i++)n=n.concat(c(t[i]));else{if(!t.hasOwnProperty(\"columns\"))return t;n=n.concat(c(t.columns))}return n}function h(){return r.extend(!0,[],t)}i(t),this.hasDepth=function(){for(var n in t)if(t[n].hasOwnProperty(\"columns\"))return!0;return!1},this.getTreeColumns=function(){return t},this.extractColumns=function(){return this.hasDepth()?c(t):t},this.getDepth=function(){return s(t)},this.getColumnsInDepth=function(n){return l(t,n)},this.getColumnsInGroup=function(t){return c(t)},this.visibleColumns=function(){return o(h(),(function(){return this.visible}))},this.filter=function(t){return o(h(),t)},this.reOrder=function(n){return e(t,n)},this.getById=function(t){return n[t]},this.getInIds=function(t){return t.map((function(t){return n[t]}))}},keyCode:{SPACE:8,BACKSPACE:8,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,ESC:27,HOME:36,INSERT:45,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,RIGHT:39,TAB:9,UP:38,A:65,C:67,V:86},preClickClassName:\"slick-edit-preclick\",GridAutosizeColsMode:{None:\"NOA\",LegacyOff:\"LOF\",LegacyForceFit:\"LFF\",IgnoreViewport:\"IGV\",FitColsToViewport:\"FCV\",FitViewportToCols:\"FVC\"},ColAutosizeMode:{Locked:\"LCK\",Guide:\"GUI\",Content:\"CON\",ContentIntelligent:\"CTI\"},RowSelectionMode:{FirstRow:\"FS1\",FirstNRows:\"FSN\",AllRows:\"ALL\",LastRow:\"LS1\"},ValueFilterMode:{None:\"NONE\",DeDuplicate:\"DEDP\",GetGreatestAndSub:\"GR8T\",GetLongestTextAndSub:\"LNSB\",GetLongestText:\"LNSC\"},WidthEvalMode:{CanvasTextSize:\"CANV\",HTML:\"HTML\"}}},\n 477: function _(e,t,o,l,n){var i=e(474),c=e(476);t.exports={CheckboxSelectColumn:function(e){var t,o=null,l=k(),n=new c.EventHandler,r={},d=!1,a=i.extend(!0,{},{columnId:\"_checkbox_selector\",cssClass:null,hideSelectAllCheckbox:!1,toolTip:\"Select/Deselect All\",width:30,hideInColumnTitleRow:!1,hideInFilterHeaderRow:!0},e);function s(){t.updateColumnHeader(a.columnId,\"\",\"\")}function u(){i(\"#filter-checkbox-selectall-container\").hide()}function h(e,n){var c,s,u,h=t.getSelectedRows(),f={},p=0;if(\"function\"==typeof o)for(u=0;u<t.getDataLength();u++){C(s,t.getDataItem(u),t)||p++}var b=[];for(s=0;s<h.length;s++){c=h[s],C(s,t.getDataItem(c),t)?(f[c]=!0,f[c]!==r[c]&&(t.invalidateRow(c),delete r[c])):b.push(c)}for(s in r)t.invalidateRow(s);(r=f,t.render(),d=h.length&&h.length+p>=t.getDataLength(),a.hideInColumnTitleRow||a.hideSelectAllCheckbox||R(d),a.hideInFilterHeaderRow)||i(\"#header-filter-selector\"+l).prop(\"checked\",d);if(b.length>0){for(s=0;s<b.length;s++){var m=h.indexOf(b[s]);h.splice(m,1)}t.setSelectedRows(h)}}function f(e,o){32==e.which&&t.getColumns()[o.cell].id===a.columnId&&(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit()||b(o.row),e.preventDefault(),e.stopImmediatePropagation())}function p(e,o){if(t.getColumns()[o.cell].id===a.columnId&&i(e.target).is(\":checkbox\")){if(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();b(o.row),e.stopPropagation(),e.stopImmediatePropagation()}}function b(e){var o=t.getDataItem(e);C(e,o,t)&&(r[e]?t.setSelectedRows(i.grep(t.getSelectedRows(),(function(t){return t!=e}))):t.setSelectedRows(t.getSelectedRows().concat(e)),t.setActiveCell(e,function(){if(null===g){g=0;for(var e=t.getColumns(),o=0;o<e.length;o++)e[o].id==a.columnId&&(g=o)}return g}()))}function m(e,o){if(o.column.id==a.columnId&&i(e.target).is(\":checkbox\")){if(t.getEditorLock().isActive()&&!t.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();if(i(e.target).is(\":checked\")){for(var l=[],n=0;n<t.getDataLength();n++){C(n,t.getDataItem(n),t)&&l.push(n)}t.setSelectedRows(l)}else t.setSelectedRows([]);e.stopPropagation(),e.stopImmediatePropagation()}}\"function\"==typeof a.selectableOverride&&v(a.selectableOverride);var g=null;function k(){return Math.round(1e7*Math.random())}function w(e,t,o,l,n,i){var c=k()+e;return n&&C(e,n,i)?r[e]?\"<input id='selector\"+c+\"' type='checkbox' checked='checked'><label for='selector\"+c+\"'></label>\":\"<input id='selector\"+c+\"' type='checkbox'><label for='selector\"+c+\"'></label>\":null}function C(e,t,l){return\"function\"!=typeof o||o(e,t,l)}function R(e){e?t.updateColumnHeader(a.columnId,\"<input id='header-selector\"+l+\"' type='checkbox' checked='checked'><label for='header-selector\"+l+\"'></label>\",a.toolTip):t.updateColumnHeader(a.columnId,\"<input id='header-selector\"+l+\"' type='checkbox'><label for='header-selector\"+l+\"'></label>\",a.toolTip)}function v(e){o=e}i.extend(this,{init:function(e){t=e,n.subscribe(t.onSelectedRowsChanged,h).subscribe(t.onClick,p).subscribe(t.onKeyDown,f),a.hideInFilterHeaderRow||function(e){e.onHeaderRowCellRendered.subscribe((function(e,t){\"sel\"===t.column.field&&(i(t.node).empty(),i(\"<span id='filter-checkbox-selectall-container'><input id='header-filter-selector\"+l+\"' type='checkbox'><label for='header-filter-selector\"+l+\"'></label></span>\").appendTo(t.node).on(\"click\",(function(e){m(e,t)})))}))}(e),a.hideInColumnTitleRow||n.subscribe(t.onHeaderClick,m)},destroy:function(){n.unsubscribeAll()},pluginName:\"CheckboxSelectColumn\",deSelectRows:function(e){var o,l=e.length,n=[];for(o=0;o<l;o++)r[e[o]]&&(n[n.length]=e[o]);t.setSelectedRows(i.grep(t.getSelectedRows(),(function(e){return n.indexOf(e)<0})))},selectRows:function(e){var o,l=e.length,n=[];for(o=0;o<l;o++)r[e[o]]||(n[n.length]=e[o]);t.setSelectedRows(t.getSelectedRows().concat(n))},getColumnDefinition:function(){return{id:a.columnId,name:a.hideSelectAllCheckbox||a.hideInColumnTitleRow?\"\":\"<input id='header-selector\"+l+\"' type='checkbox'><label for='header-selector\"+l+\"'></label>\",toolTip:a.hideSelectAllCheckbox||a.hideInColumnTitleRow?\"\":a.toolTip,field:\"sel\",width:a.width,resizable:!1,sortable:!1,cssClass:a.cssClass,hideSelectAllCheckbox:a.hideSelectAllCheckbox,formatter:w}},getOptions:function(){return a},selectableOverride:v,setOptions:function(e){if((a=i.extend(!0,{},a,e)).hideSelectAllCheckbox)s(),u();else if(a.hideInColumnTitleRow?s():(R(d),n.subscribe(t.onHeaderClick,m)),a.hideInFilterHeaderRow)u();else{var o=i(\"#filter-checkbox-selectall-container\");o.show(),o.find('input[type=\"checkbox\"]').prop(\"checked\",d)}}})}}},\n 478: function _(e,t,o,l,n){var a=e(474),r=e(476),i=r.keyCode;t.exports={CellExternalCopyManager:function(e){var t,o,l=this,n=e||{},s=n.copiedCellStyleLayerKey||\"copy-manager\",u=n.copiedCellStyle||\"copied\",c=0,d=n.bodyElement||document.body,f=n.onCopyInit||null,h=n.onCopySuccess||null;function C(e){if(n.headerColumnValueExtractor){var t=n.headerColumnValueExtractor(e);if(t)return t}return e.name}function m(e,o,l){if(n.dataItemColumnValueExtractor){var r=n.dataItemColumnValueExtractor(e,o);if(r)return r}var i=\"\";if(o.editor){var s={container:a(\"<p>\"),column:o,position:{top:0,left:0},grid:t,event:l},u=new o.editor(s);u.loadValue(e),i=u.serializeValue(),u.destroy()}else i=e[o.field];return i}function g(e,o,l){if(o.denyPaste)return null;if(n.dataItemColumnValueSetter)return n.dataItemColumnValueSetter(e,o,l);if(o.editor){var r={container:a(\"body\"),column:o,position:{top:0,left:0},grid:t},i=new o.editor(r);i.loadValue(e),i.applyValue(e,l),i.destroy()}else e[o.field]=l}function p(e){var t=document.createElement(\"textarea\");return t.style.position=\"absolute\",t.style.left=\"-1000px\",t.style.top=document.body.scrollTop+\"px\",t.value=e,d.appendChild(t),t.select(),t}function y(e,a){var r;if(!t.getEditorLock().isActive()||t.getOptions().autoEdit){if(e.which==i.ESC&&o&&(e.preventDefault(),w(),l.onCopyCancelled.notify({ranges:o}),o=null),(e.which===i.C||e.which===i.INSERT)&&(e.ctrlKey||e.metaKey)&&!e.shiftKey&&(f&&f.call(),0!==(r=t.getSelectionModel().getSelectedRanges()).length)){o=r,v(r),l.onCopyCells.notify({ranges:r});for(var s=t.getColumns(),u=\"\",c=0;c<r.length;c++){for(var y=r[c],D=[],S=y.fromRow;S<y.toRow+1;S++){var R=[],x=t.getDataItem(S);if(0===D.length&&n.includeHeaderWhenCopying){for(var E=[],V=y.fromCell;V<y.toCell+1;V++)s[V].name.length>0&&E.push(C(s[V]));D.push(E.join(\"\\t\"))}for(V=y.fromCell;V<y.toCell+1;V++)R.push(m(x,s[V],e));D.push(R.join(\"\\t\"))}u+=D.join(\"\\r\\n\")+\"\\r\\n\"}if(window.clipboardData)return window.clipboardData.setData(\"Text\",u),!0;var b=document.activeElement;if((M=p(u)).focus(),setTimeout((function(){d.removeChild(M),b?b.focus():console.log(\"Not element to restore focus to after copy?\")}),100),h){var I=0;I=1===r.length?r[0].toRow+1-r[0].fromRow:r.length,h.call(this,I)}return!1}if(!n.readOnlyMode&&(e.which===i.V&&(e.ctrlKey||e.metaKey)&&!e.shiftKey||e.which===i.INSERT&&e.shiftKey&&!e.ctrlKey)){var M=p(\"\");return setTimeout((function(){!function(e,t){var o=e.getColumns(),a=t.value.split(/[\\n\\f\\r]/);\"\"===a[a.length-1]&&a.pop();var r=[],i=0;d.removeChild(t);for(var s=0;s<a.length;s++)\"\"!==a[s]?r[i++]=a[s].split(\"\\t\"):r[i++]=[\"\"];var u=e.getActiveCell(),c=e.getSelectionModel().getSelectedRanges(),f=c&&c.length?c[0]:null,h=null,C=null;if(f)h=f.fromRow,C=f.fromCell;else{if(!u)return;h=u.row,C=u.cell}var m=!1,p=r.length,y=r.length?r[0].length:0;1==r.length&&1==r[0].length&&f&&(m=!0,p=f.toRow-f.fromRow+1,y=f.toCell-f.fromCell+1);var w=e.getData().length-h,D=0;if(w<p&&n.newRowCreator){var S=e.getData();for(D=1;D<=p-w;D++)S.push({});e.setData(S),e.render()}var R=h+p>e.getDataLength();if(n.newRowCreator&&R){var x=h+p-e.getDataLength();n.newRowCreator(x)}var E={isClipboardCommand:!0,clippedRange:r,oldValues:[],cellExternalCopyManager:l,_options:n,setDataItemValueForColumn:g,markCopySelection:v,oneCellToMultiple:m,activeRow:h,activeCell:C,destH:p,destW:y,maxDestY:e.getDataLength(),maxDestX:e.getColumns().length,h:0,w:0,execute:function(){this.h=0;for(var t=0;t<this.destH;t++){this.oldValues[t]=[],this.w=0,this.h++;for(var l=0;l<this.destW;l++){this.w++;var n=h+t,a=C+l;if(n<this.maxDestY&&a<this.maxDestX){e.getCellNode(n,a);var i=e.getDataItem(n);this.oldValues[t][l]=i[o[a].field],m?this.setDataItemValueForColumn(i,o[a],r[0][0]):this.setDataItemValueForColumn(i,o[a],r[t]?r[t][l]:\"\"),e.updateCell(n,a),e.onCellChange.notify({row:n,cell:a,item:i,grid:e})}}}var s={fromCell:C,fromRow:h,toCell:C+this.w-1,toRow:h+this.h-1};this.markCopySelection([s]),e.getSelectionModel().setSelectedRanges([s]),this.cellExternalCopyManager.onPasteCells.notify({ranges:[s]})},undo:function(){for(var t=0;t<this.destH;t++)for(var l=0;l<this.destW;l++){var n=h+t,a=C+l;if(n<this.maxDestY&&a<this.maxDestX){e.getCellNode(n,a);var r=e.getDataItem(n);m?this.setDataItemValueForColumn(r,o[a],this.oldValues[0][0]):this.setDataItemValueForColumn(r,o[a],this.oldValues[t][l]),e.updateCell(n,a),e.onCellChange.notify({row:n,cell:a,item:r,grid:e})}}var i={fromCell:C,fromRow:h,toCell:C+this.w-1,toRow:h+this.h-1};if(this.markCopySelection([i]),e.getSelectionModel().setSelectedRanges([i]),this.cellExternalCopyManager.onPasteCells.notify({ranges:[i]}),D>1){for(var s=e.getData();D>1;D--)s.splice(s.length-1,1);e.setData(s),e.render()}}};n.clipboardCommandHandler?n.clipboardCommandHandler(E):E.execute()}(t,M)}),100),!1}}}function v(e){w();for(var o=t.getColumns(),n={},a=0;a<e.length;a++)for(var r=e[a].fromRow;r<=e[a].toRow;r++){n[r]={};for(var i=e[a].fromCell;i<=e[a].toCell&&i<o.length;i++)n[r][o[i].id]=u}t.setCellCssStyles(s,n),clearTimeout(c),c=setTimeout((function(){l.clearCopySelection()}),2e3)}function w(){t.removeCellCssStyles(s)}a.extend(this,{init:function(e){(t=e).onKeyDown.subscribe(y);var o=e.getSelectionModel();if(!o)throw new Error(\"Selection model is mandatory for this plugin. Please set a selection model on the grid before adding this plugin: grid.setSelectionModel(new Slick.CellSelectionModel())\");o.onSelectedRangesChanged.subscribe((function(e,o){t.focus()}))},destroy:function(){t.onKeyDown.unsubscribe(y)},pluginName:\"CellExternalCopyManager\",clearCopySelection:w,handleKeyDown:y,onCopyCells:new r.Event,onCopyCancelled:new r.Event,onPasteCells:new r.Event,setIncludeHeaderWhenCopying:function(e){n.includeHeaderWhenCopying=e}})}}},\n 479: function _(r,t,o,_,e){var p=r(1);p.__exportStar(r(476),t.exports),p.__exportStar(r(480),t.exports),p.__exportStar(r(483),t.exports),p.__exportStar(r(484),t.exports),p.__exportStar(r(485),t.exports),p.__exportStar(r(486),t.exports),p.__exportStar(r(487),t.exports)},\n 480: function _(require,module,exports,__esModule,__esExport){\n /**\n * @license\n * (c) 2009-2016 Michael Leibman\n * michael{dot}leibman{at}gmail{dot}com\n * http://github.com/mleibman/slickgrid\n *\n * Distributed under MIT license.\n * All rights reserved.\n *\n * SlickGrid v2.4\n *\n * NOTES:\n * Cell/row DOM manipulations are done directly bypassing jQuery's DOM manipulation methods.\n * This increases the speed dramatically, but can only be done safely because there are no event handlers\n * or data associated with any cell/row DOM nodes. Cell editors must make sure they implement .destroy()\n * and do proper cleanup.\n */\n var $=require(474),Slick=require(476),scrollbarDimensions,maxSupportedCssHeight;function SlickGrid(container,data,columns,options){$.fn.drag||require(481),$.fn.drop||require(482);var defaults={alwaysShowVerticalScroll:!1,alwaysAllowHorizontalScroll:!1,explicitInitialization:!1,rowHeight:25,defaultColumnWidth:80,enableAddRow:!1,leaveSpaceForNewRows:!1,editable:!1,autoEdit:!0,suppressActiveCellChangeOnEdit:!1,enableCellNavigation:!0,enableColumnReorder:!0,asyncEditorLoading:!1,asyncEditorLoadDelay:100,forceFitColumns:!1,enableAsyncPostRender:!1,asyncPostRenderDelay:50,enableAsyncPostRenderCleanup:!1,asyncPostRenderCleanupDelay:40,autoHeight:!1,editorLock:Slick.GlobalEditorLock,showColumnHeader:!0,showHeaderRow:!1,headerRowHeight:25,createFooterRow:!1,showFooterRow:!1,footerRowHeight:25,createPreHeaderPanel:!1,showPreHeaderPanel:!1,preHeaderPanelHeight:25,showTopPanel:!1,topPanelHeight:25,formatterFactory:null,editorFactory:null,cellFlashingCssClass:\"flashing\",selectedCellCssClass:\"selected\",multiSelect:!0,enableTextSelectionOnCells:!1,dataItemColumnValueExtractor:null,frozenBottom:!1,frozenColumn:-1,frozenRow:-1,fullWidthRows:!1,multiColumnSort:!1,numberedMultiColumnSort:!1,tristateMultiColumnSort:!1,sortColNumberInSeparateSpan:!1,defaultFormatter,forceSyncScrolling:!1,addNewRowCssClass:\"new-row\",preserveCopiedSelectionOnPaste:!1,showCellSelection:!0,viewportClass:null,minRowBuffer:3,emulatePagingWhenScrolling:!0,editorCellNavOnLRKeys:!1,doPaging:!0,autosizeColsMode:Slick.GridAutosizeColsMode.LegacyOff,autosizeColPaddingPx:4,autosizeTextAvgToMWidthRatio:.75,viewportSwitchToScrollModeWidthPercent:void 0,viewportMinWidthPx:void 0,viewportMaxWidthPx:void 0},columnDefaults={name:\"\",resizable:!0,sortable:!1,minWidth:30,maxWidth:void 0,rerenderOnResize:!1,headerCssClass:null,defaultSortAsc:!0,focusable:!0,selectable:!0},columnAutosizeDefaults={ignoreHeaderText:!1,colValueArray:void 0,allowAddlPercent:void 0,formatterOverride:void 0,autosizeMode:Slick.ColAutosizeMode.ContentIntelligent,rowSelectionModeOnInit:void 0,rowSelectionMode:Slick.RowSelectionMode.FirstNRows,rowSelectionCount:100,valueFilterMode:Slick.ValueFilterMode.None,widthEvalMode:Slick.WidthEvalMode.CanvasTextSize,sizeToRemaining:void 0,widthPx:void 0,colDataTypeOf:void 0},th,h,ph,n,cj,page=0,offset=0,vScrollDir=1,initialized=!1,$container,uid=\"slickgrid_\"+Math.round(1e6*Math.random()),self=this,$focusSink,$focusSink2,$groupHeaders=$(),$headerScroller,$headers,$headerRow,$headerRowScroller,$headerRowSpacerL,$headerRowSpacerR,$footerRow,$footerRowScroller,$footerRowSpacerL,$footerRowSpacerR,$preHeaderPanel,$preHeaderPanelScroller,$preHeaderPanelSpacer,$preHeaderPanelR,$preHeaderPanelScrollerR,$preHeaderPanelSpacerR,$topPanelScroller,$topPanel,$viewport,$canvas,$style,$boundAncestors,treeColumns,stylesheet,columnCssRulesL,columnCssRulesR,viewportH,viewportW,canvasWidth,canvasWidthL,canvasWidthR,headersWidth,headersWidthL,headersWidthR,viewportHasHScroll,viewportHasVScroll,headerColumnWidthDiff=0,headerColumnHeightDiff=0,cellWidthDiff=0,cellHeightDiff=0,jQueryNewWidthBehaviour=!1,absoluteColumnMinWidth,hasFrozenRows=!1,frozenRowsHeight=0,actualFrozenRow=-1,paneTopH=0,paneBottomH=0,viewportTopH=0,viewportBottomH=0,topPanelH=0,headerRowH=0,footerRowH=0,tabbingDirection=1,$activeCanvasNode,$activeViewportNode,activePosX,activeRow,activeCell,activeCellNode=null,currentEditor=null,serializedEditorValue,editController,rowsCache={},renderedRows=0,numVisibleRows=0,prevScrollTop=0,scrollTop=0,lastRenderedScrollTop=0,lastRenderedScrollLeft=0,prevScrollLeft=0,scrollLeft=0,selectionModel,selectedRows=[],plugins=[],cellCssClasses={},columnsById={},sortColumns=[],columnPosLeft=[],columnPosRight=[],pagingActive=!1,pagingIsLastPage=!1,scrollThrottle=ActionThrottle(render,50),h_editorLoader=null,h_render=null,h_postrender=null,h_postrenderCleanup=null,postProcessedRows={},postProcessToRow=null,postProcessFromRow=null,postProcessedCleanupQueue=[],postProcessgroupId=0,counter_rows_rendered=0,counter_rows_removed=0,rowNodeFromLastMouseWheelEvent,zombieRowNodeFromLastMouseWheelEvent,zombieRowCacheFromLastMouseWheelEvent,zombieRowPostProcessedFromLastMouseWheelEvent,$paneHeaderL,$paneHeaderR,$paneTopL,$paneTopR,$paneBottomL,$paneBottomR,$headerScrollerL,$headerScrollerR,$headerL,$headerR,$groupHeadersL,$groupHeadersR,$headerRowScrollerL,$headerRowScrollerR,$footerRowScrollerL,$footerRowScrollerR,$headerRowL,$headerRowR,$footerRowL,$footerRowR,$topPanelScrollerL,$topPanelScrollerR,$topPanelL,$topPanelR,$viewportTopL,$viewportTopR,$viewportBottomL,$viewportBottomR,$canvasTopL,$canvasTopR,$canvasBottomL,$canvasBottomR,$viewportScrollContainerX,$viewportScrollContainerY,$headerScrollContainer,$headerRowScrollContainer,$footerRowScrollContainer,cssShow={position:\"absolute\",visibility:\"hidden\",display:\"block\"},$hiddenParents,oldProps=[],columnResizeDragging=!1;function init(){if(($container=container instanceof $?container:$(container)).length<1)throw new Error(\"SlickGrid requires a valid container, \"+container+\" does not exist in the DOM.\");if(cacheCssForHiddenInit(),maxSupportedCssHeight=maxSupportedCssHeight||getMaxSupportedCssHeight(),options=$.extend({},defaults,options),validateAndEnforceOptions(),columnDefaults.width=options.defaultColumnWidth,treeColumns=new Slick.TreeColumns(columns),columns=treeColumns.extractColumns(),updateColumnProps(),options.enableColumnReorder&&!$.fn.sortable)throw new Error(\"SlickGrid's 'enableColumnReorder = true' option requires jquery-ui.sortable module to be loaded\");if(editController={commitCurrentEdit,cancelCurrentEdit},$container.empty().css(\"overflow\",\"hidden\").css(\"outline\",0).addClass(uid).addClass(\"ui-widget\"),/relative|absolute|fixed/.test($container.css(\"position\"))||$container.css(\"position\",\"relative\"),$focusSink=$(\"<div tabIndex='0' hideFocus style='position:fixed;width:0;height:0;top:0;left:0;outline:0;'></div>\").appendTo($container),$paneHeaderL=$(\"<div class='slick-pane slick-pane-header slick-pane-left' tabIndex='0' />\").appendTo($container),$paneHeaderR=$(\"<div class='slick-pane slick-pane-header slick-pane-right' tabIndex='0' />\").appendTo($container),$paneTopL=$(\"<div class='slick-pane slick-pane-top slick-pane-left' tabIndex='0' />\").appendTo($container),$paneTopR=$(\"<div class='slick-pane slick-pane-top slick-pane-right' tabIndex='0' />\").appendTo($container),$paneBottomL=$(\"<div class='slick-pane slick-pane-bottom slick-pane-left' tabIndex='0' />\").appendTo($container),$paneBottomR=$(\"<div class='slick-pane slick-pane-bottom slick-pane-right' tabIndex='0' />\").appendTo($container),options.createPreHeaderPanel&&($preHeaderPanelScroller=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($paneHeaderL),$preHeaderPanel=$(\"<div />\").appendTo($preHeaderPanelScroller),$preHeaderPanelSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($preHeaderPanelScroller),$preHeaderPanelScrollerR=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($paneHeaderR),$preHeaderPanelR=$(\"<div />\").appendTo($preHeaderPanelScrollerR),$preHeaderPanelSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($preHeaderPanelScrollerR),options.showPreHeaderPanel||($preHeaderPanelScroller.hide(),$preHeaderPanelScrollerR.hide())),$headerScrollerL=$(\"<div class='slick-header ui-state-default slick-header-left' />\").appendTo($paneHeaderL),$headerScrollerR=$(\"<div class='slick-header ui-state-default slick-header-right' />\").appendTo($paneHeaderR),$headerScroller=$().add($headerScrollerL).add($headerScrollerR),treeColumns.hasDepth()){$groupHeadersL=[],$groupHeadersR=[];for(var e=0;e<treeColumns.getDepth()-1;e++)$groupHeadersL[e]=$(\"<div class='slick-group-header-columns slick-group-header-columns-left' style='left:-1000px' />\").appendTo($headerScrollerL),$groupHeadersR[e]=$(\"<div class='slick-group-header-columns slick-group-header-columns-right' style='left:-1000px' />\").appendTo($headerScrollerR);$groupHeaders=$().add($groupHeadersL).add($groupHeadersR)}$headerL=$(\"<div class='slick-header-columns slick-header-columns-left' style='left:-1000px' />\").appendTo($headerScrollerL),$headerR=$(\"<div class='slick-header-columns slick-header-columns-right' style='left:-1000px' />\").appendTo($headerScrollerR),$headers=$().add($headerL).add($headerR),$headerRowScrollerL=$(\"<div class='slick-headerrow ui-state-default' />\").appendTo($paneTopL),$headerRowScrollerR=$(\"<div class='slick-headerrow ui-state-default' />\").appendTo($paneTopR),$headerRowScroller=$().add($headerRowScrollerL).add($headerRowScrollerR),$headerRowSpacerL=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($headerRowScrollerL),$headerRowSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").appendTo($headerRowScrollerR),$headerRowL=$(\"<div class='slick-headerrow-columns slick-headerrow-columns-left' />\").appendTo($headerRowScrollerL),$headerRowR=$(\"<div class='slick-headerrow-columns slick-headerrow-columns-right' />\").appendTo($headerRowScrollerR),$headerRow=$().add($headerRowL).add($headerRowR),$topPanelScrollerL=$(\"<div class='slick-top-panel-scroller ui-state-default' />\").appendTo($paneTopL),$topPanelScrollerR=$(\"<div class='slick-top-panel-scroller ui-state-default' />\").appendTo($paneTopR),$topPanelScroller=$().add($topPanelScrollerL).add($topPanelScrollerR),$topPanelL=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScrollerL),$topPanelR=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScrollerR),$topPanel=$().add($topPanelL).add($topPanelR),options.showColumnHeader||$headerScroller.hide(),options.showTopPanel||$topPanelScroller.hide(),options.showHeaderRow||$headerRowScroller.hide(),$viewportTopL=$(\"<div class='slick-viewport slick-viewport-top slick-viewport-left' tabIndex='0' hideFocus />\").appendTo($paneTopL),$viewportTopR=$(\"<div class='slick-viewport slick-viewport-top slick-viewport-right' tabIndex='0' hideFocus />\").appendTo($paneTopR),$viewportBottomL=$(\"<div class='slick-viewport slick-viewport-bottom slick-viewport-left' tabIndex='0' hideFocus />\").appendTo($paneBottomL),$viewportBottomR=$(\"<div class='slick-viewport slick-viewport-bottom slick-viewport-right' tabIndex='0' hideFocus />\").appendTo($paneBottomR),$viewport=$().add($viewportTopL).add($viewportTopR).add($viewportBottomL).add($viewportBottomR),$activeViewportNode=$viewportTopL,$canvasTopL=$(\"<div class='grid-canvas grid-canvas-top grid-canvas-left' tabIndex='0' hideFocus />\").appendTo($viewportTopL),$canvasTopR=$(\"<div class='grid-canvas grid-canvas-top grid-canvas-right' tabIndex='0' hideFocus />\").appendTo($viewportTopR),$canvasBottomL=$(\"<div class='grid-canvas grid-canvas-bottom grid-canvas-left' tabIndex='0' hideFocus />\").appendTo($viewportBottomL),$canvasBottomR=$(\"<div class='grid-canvas grid-canvas-bottom grid-canvas-right' tabIndex='0' hideFocus />\").appendTo($viewportBottomR),options.viewportClass&&$viewport.toggleClass(options.viewportClass,!0),$canvas=$().add($canvasTopL).add($canvasTopR).add($canvasBottomL).add($canvasBottomR),scrollbarDimensions=scrollbarDimensions||measureScrollbar(),$activeCanvasNode=$canvasTopL,$preHeaderPanelSpacer&&$preHeaderPanelSpacer.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),$headers.width(getHeadersWidth()),$headerRowSpacerL.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),$headerRowSpacerR.css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\"),options.createFooterRow&&($footerRowScrollerR=$(\"<div class='slick-footerrow ui-state-default' />\").appendTo($paneTopR),$footerRowScrollerL=$(\"<div class='slick-footerrow ui-state-default' />\").appendTo($paneTopL),$footerRowScroller=$().add($footerRowScrollerL).add($footerRowScrollerR),$footerRowSpacerL=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScrollerL),$footerRowSpacerR=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScrollerR),$footerRowL=$(\"<div class='slick-footerrow-columns slick-footerrow-columns-left' />\").appendTo($footerRowScrollerL),$footerRowR=$(\"<div class='slick-footerrow-columns slick-footerrow-columns-right' />\").appendTo($footerRowScrollerR),$footerRow=$().add($footerRowL).add($footerRowR),options.showFooterRow||$footerRowScroller.hide()),$focusSink2=$focusSink.clone().appendTo($container),options.explicitInitialization||finishInitialization()}function finishInitialization(){initialized||(initialized=!0,getViewportWidth(),getViewportHeight(),measureCellPaddingAndBorder(),disableSelection($headers),options.enableTextSelectionOnCells||$viewport.on(\"selectstart.ui\",(function(e){return $(e.target).is(\"input,textarea\")})),setFrozenOptions(),setPaneVisibility(),setScroller(),setOverflow(),updateColumnCaches(),createColumnHeaders(),createColumnGroupHeaders(),createColumnFooter(),setupColumnSort(),createCssRules(),resizeCanvas(),bindAncestorScrollEvents(),$container.on(\"resize.slickgrid\",resizeCanvas),$viewport.on(\"scroll\",handleScroll),$.fn.mousewheel&&$viewport.on(\"mousewheel\",handleMouseWheel),$headerScroller.on(\"contextmenu\",handleHeaderContextMenu).on(\"click\",handleHeaderClick).on(\"mouseenter\",\".slick-header-column\",handleHeaderMouseEnter).on(\"mouseleave\",\".slick-header-column\",handleHeaderMouseLeave),$headerRowScroller.on(\"scroll\",handleHeaderRowScroll),options.createFooterRow&&($footerRow.on(\"contextmenu\",handleFooterContextMenu).on(\"click\",handleFooterClick),$footerRowScroller.on(\"scroll\",handleFooterRowScroll)),options.createPreHeaderPanel&&$preHeaderPanelScroller.on(\"scroll\",handlePreHeaderPanelScroll),$focusSink.add($focusSink2).on(\"keydown\",handleKeyDown),$canvas.on(\"keydown\",handleKeyDown).on(\"click\",handleClick).on(\"dblclick\",handleDblClick).on(\"contextmenu\",handleContextMenu).on(\"draginit\",handleDragInit).on(\"dragstart\",{distance:3},handleDragStart).on(\"drag\",handleDrag).on(\"dragend\",handleDragEnd).on(\"mouseenter\",\".slick-cell\",handleMouseEnter).on(\"mouseleave\",\".slick-cell\",handleMouseLeave),restoreCssFromHiddenInit())}function cacheCssForHiddenInit(){($hiddenParents=$container.parents().addBack().not(\":visible\")).each((function(){var e={};for(var o in cssShow)e[o]=this.style[o],this.style[o]=cssShow[o];oldProps.push(e)}))}function restoreCssFromHiddenInit(){$hiddenParents.each((function(e){var o=oldProps[e];for(var t in cssShow)this.style[t]=o[t]}))}function hasFrozenColumns(){return options.frozenColumn>-1}function registerPlugin(e){plugins.unshift(e),e.init(self)}function unregisterPlugin(e){for(var o=plugins.length;o>=0;o--)if(plugins[o]===e){plugins[o].destroy&&plugins[o].destroy(),plugins.splice(o,1);break}}function getPluginByName(e){for(var o=plugins.length-1;o>=0;o--)if(plugins[o].pluginName===e)return plugins[o]}function setSelectionModel(e){selectionModel&&(selectionModel.onSelectedRangesChanged.unsubscribe(handleSelectedRangesChanged),selectionModel.destroy&&selectionModel.destroy()),(selectionModel=e)&&(selectionModel.init(self),selectionModel.onSelectedRangesChanged.subscribe(handleSelectedRangesChanged))}function getSelectionModel(){return selectionModel}function getCanvasNode(e,o){e||(e=0),o||(o=0);var t=\"number\"==typeof e?e:getColumnIndex(e);return hasFrozenRows&&o>=actualFrozenRow+(options.frozenBottom?0:1)?hasFrozenColumns()&&t>options.frozenColumn?$canvasBottomR[0]:$canvasBottomL[0]:hasFrozenColumns()&&t>options.frozenColumn?$canvasTopR[0]:$canvasTopL[0]}function getActiveCanvasNode(e){return setActiveCanvasNode(e),$activeCanvasNode[0]}function getCanvases(){return $canvas}function setActiveCanvasNode(e){e&&($activeCanvasNode=$(e.target).closest(\".grid-canvas\"))}function getViewportNode(){return $viewport[0]}function getActiveViewportNode(e){return setActiveViewPortNode(e),$activeViewportNode[0]}function setActiveViewportNode(e){e&&($activeViewportNode=$(e.target).closest(\".slick-viewport\"))}function measureScrollbar(){var e=$('<div class=\"'+$viewport.className+'\" style=\"position:absolute; top:-10000px; left:-10000px; overflow:auto; width:100px; height:100px;\"></div>').appendTo(\"body\"),o=$('<div style=\"width:200px; height:200px; overflow:auto;\"></div>').appendTo(e),t={width:e[0].offsetWidth-e[0].clientWidth,height:e[0].offsetHeight-e[0].clientHeight};return o.remove(),e.remove(),t}function getHeadersWidth(){headersWidth=headersWidthL=headersWidthR=0;for(var e=!options.autoHeight,o=0,t=columns.length;o<t;o++){var n=columns[o].width;options.frozenColumn>-1&&o>options.frozenColumn?headersWidthR+=n:headersWidthL+=n}return e&&(options.frozenColumn>-1&&o>options.frozenColumn?headersWidthR+=scrollbarDimensions.width:headersWidthL+=scrollbarDimensions.width),hasFrozenColumns()?(headersWidthL+=1e3,headersWidthR=Math.max(headersWidthR,viewportW)+headersWidthL,headersWidthR+=scrollbarDimensions.width):(headersWidthL+=scrollbarDimensions.width,headersWidthL=Math.max(headersWidthL,viewportW)+1e3),headersWidth=headersWidthL+headersWidthR,Math.max(headersWidth,viewportW)+1e3}function getHeadersWidthL(){return headersWidthL=0,columns.forEach((function(e,o){options.frozenColumn>-1&&o>options.frozenColumn||(headersWidthL+=e.width)})),hasFrozenColumns()?headersWidthL+=1e3:(headersWidthL+=scrollbarDimensions.width,headersWidthL=Math.max(headersWidthL,viewportW)+1e3),headersWidthL}function getHeadersWidthR(){return headersWidthR=0,columns.forEach((function(e,o){options.frozenColumn>-1&&o>options.frozenColumn&&(headersWidthR+=e.width)})),hasFrozenColumns()&&(headersWidthR=Math.max(headersWidthR,viewportW)+getHeadersWidthL(),headersWidthR+=scrollbarDimensions.width),headersWidthR}function getCanvasWidth(){var e=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,o=columns.length;for(canvasWidthL=canvasWidthR=0;o--;)hasFrozenColumns()&&o>options.frozenColumn?canvasWidthR+=columns[o].width:canvasWidthL+=columns[o].width;var t=canvasWidthL+canvasWidthR;return options.fullWidthRows?Math.max(t,e):t}function updateCanvasWidth(e){var o,t=canvasWidth,n=canvasWidthL,l=canvasWidthR;((o=(canvasWidth=getCanvasWidth())!==t||canvasWidthL!==n||canvasWidthR!==l)||hasFrozenColumns()||hasFrozenRows)&&($canvasTopL.width(canvasWidthL),getHeadersWidth(),$headerL.width(headersWidthL),$headerR.width(headersWidthR),hasFrozenColumns()?($canvasTopR.width(canvasWidthR),$paneHeaderL.width(canvasWidthL),$paneHeaderR.css(\"left\",canvasWidthL),$paneHeaderR.css(\"width\",viewportW-canvasWidthL),$paneTopL.width(canvasWidthL),$paneTopR.css(\"left\",canvasWidthL),$paneTopR.css(\"width\",viewportW-canvasWidthL),$headerRowScrollerL.width(canvasWidthL),$headerRowScrollerR.width(viewportW-canvasWidthL),$headerRowL.width(canvasWidthL),$headerRowR.width(canvasWidthR),options.createFooterRow&&($footerRowScrollerL.width(canvasWidthL),$footerRowScrollerR.width(viewportW-canvasWidthL),$footerRowL.width(canvasWidthL),$footerRowR.width(canvasWidthR)),options.createPreHeaderPanel&&$preHeaderPanel.width(canvasWidth),$viewportTopL.width(canvasWidthL),$viewportTopR.width(viewportW-canvasWidthL),hasFrozenRows&&($paneBottomL.width(canvasWidthL),$paneBottomR.css(\"left\",canvasWidthL),$viewportBottomL.width(canvasWidthL),$viewportBottomR.width(viewportW-canvasWidthL),$canvasBottomL.width(canvasWidthL),$canvasBottomR.width(canvasWidthR))):($paneHeaderL.width(\"100%\"),$paneTopL.width(\"100%\"),$headerRowScrollerL.width(\"100%\"),$headerRowL.width(canvasWidth),options.createFooterRow&&($footerRowScrollerL.width(\"100%\"),$footerRowL.width(canvasWidth)),options.createPreHeaderPanel&&($preHeaderPanel.width(\"100%\"),$preHeaderPanel.width(canvasWidth)),$viewportTopL.width(\"100%\"),hasFrozenRows&&($viewportBottomL.width(\"100%\"),$canvasBottomL.width(canvasWidthL))),viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width),$headerRowSpacerL.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),$headerRowSpacerR.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),options.createFooterRow&&($footerRowSpacerL.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0)),$footerRowSpacerR.width(canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0))),(o||e)&&applyColumnWidths()}function disableSelection(e){e&&e.jquery&&e.attr(\"unselectable\",\"on\").css(\"MozUserSelect\",\"none\").on(\"selectstart.ui\",(function(){return!1}))}function getMaxSupportedCssHeight(){for(var e=1e6,o=navigator.userAgent.toLowerCase().match(/firefox/)?6e6:1e9,t=$(\"<div style='display:none' />\").appendTo(document.body);;){var n=2*e;if(t.css(\"height\",n),n>o||t.height()!==n)break;e=n}return t.remove(),e}function getUID(){return uid}function getHeaderColumnWidthDiff(){return headerColumnWidthDiff}function getScrollbarDimensions(){return scrollbarDimensions}function bindAncestorScrollEvents(){for(var e=hasFrozenRows&&!options.frozenBottom?$canvasBottomL[0]:$canvasTopL[0];(e=e.parentNode)!=document.body&&null!=e;)if(e==$viewportTopL[0]||e.scrollWidth!=e.clientWidth||e.scrollHeight!=e.clientHeight){var o=$(e);$boundAncestors=$boundAncestors?$boundAncestors.add(o):o,o.on(\"scroll.\"+uid,handleActiveCellPositionChange)}}function unbindAncestorScrollEvents(){$boundAncestors&&($boundAncestors.off(\"scroll.\"+uid),$boundAncestors=null)}function updateColumnHeader(e,o,t){if(initialized){var n=getColumnIndex(e);if(null!=n){var l=columns[n],r=$headers.children().eq(n);r&&(void 0!==o&&(columns[n].name=o),void 0!==t&&(columns[n].toolTip=t),trigger(self.onBeforeHeaderCellDestroy,{node:r[0],column:l,grid:self}),r.attr(\"title\",t||\"\").children().eq(0).html(o),trigger(self.onHeaderCellRendered,{node:r[0],column:l,grid:self}))}}}function getHeader(e){if(!e)return hasFrozenColumns()?$headers:$headerL;var o=getColumnIndex(e.id);return hasFrozenColumns()?o<=options.frozenColumn?$headerL:$headerR:$headerL}function getHeaderColumn(e){var o=\"number\"==typeof e?e:getColumnIndex(e),t=hasFrozenColumns()?o<=options.frozenColumn?$headerL:$headerR:$headerL,n=hasFrozenColumns()?o<=options.frozenColumn?o:o-options.frozenColumn-1:o,l=t.children().eq(n);return l&&l[0]}function getHeaderRow(){return hasFrozenColumns()?$headerRow:$headerRow[0]}function getFooterRow(){return hasFrozenColumns()?$footerRow:$footerRow[0]}function getPreHeaderPanel(){return $preHeaderPanel[0]}function getPreHeaderPanelRight(){return $preHeaderPanelR[0]}function getHeaderRowColumn(e){var o,t=\"number\"==typeof e?e:getColumnIndex(e);hasFrozenColumns()?t<=options.frozenColumn?o=$headerRowL:(o=$headerRowR,t-=options.frozenColumn+1):o=$headerRowL;var n=o.children().eq(t);return n&&n[0]}function getFooterRowColumn(e){var o,t=\"number\"==typeof e?e:getColumnIndex(e);hasFrozenColumns()?t<=options.frozenColumn?o=$footerRowL:(o=$footerRowR,t-=options.frozenColumn+1):o=$footerRowL;var n=o&&o.children().eq(t);return n&&n[0]}function createColumnFooter(){if(options.createFooterRow){$footerRow.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowL.empty(),$footerRowR.empty();for(var e=0;e<columns.length;e++){var o=columns[e],t=$(\"<div class='ui-state-default slick-footerrow-column l\"+e+\" r\"+e+\"'></div>\").data(\"column\",o).addClass(hasFrozenColumns()&&e<=options.frozenColumn?\"frozen\":\"\").appendTo(hasFrozenColumns()&&e>options.frozenColumn?$footerRowR:$footerRowL);trigger(self.onFooterRowCellRendered,{node:t[0],column:o,grid:self})}}}function createColumnGroupHeaders(){var e=0,o=!1;if(treeColumns.hasDepth()){for(var t=0;t<$groupHeadersL.length;t++){$groupHeadersL[t].empty(),$groupHeadersR[t].empty();var n=treeColumns.getColumnsInDepth(t);for(var l in n){var r=n[l];e+=r.extractColumns().length,hasFrozenColumns()&&0===t&&e-1===options.frozenColumn&&(o=!0),$(\"<div class='ui-state-default slick-group-header-column' />\").html(\"<span class='slick-column-name'>\"+r.name+\"</span>\").attr(\"id\",\"\"+uid+r.id).attr(\"title\",r.toolTip||\"\").data(\"column\",r).addClass(r.headerCssClass||\"\").addClass(hasFrozenColumns()&&e-1>options.frozenColumn?\"frozen\":\"\").appendTo(hasFrozenColumns()&&e-1>options.frozenColumn?$groupHeadersR[t]:$groupHeadersL[t])}if(hasFrozenColumns()&&0===t&&!o){$groupHeadersL[t].empty(),$groupHeadersR[t].empty(),alert(\"All columns of group should to be grouped!\");break}}applyColumnGroupHeaderWidths()}}function createColumnHeaders(){function e(){$(this).addClass(\"ui-state-hover\")}function o(){$(this).removeClass(\"ui-state-hover\")}$headers.find(\".slick-header-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderCellDestroy,{node:this,column:e,grid:self})})),$headerL.empty(),$headerR.empty(),getHeadersWidth(),$headerL.width(headersWidthL),$headerR.width(headersWidthR),$headerRow.find(\".slick-headerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderRowCellDestroy,{node:this,column:e,grid:self})})),$headerRowL.empty(),$headerRowR.empty(),options.createFooterRow&&($footerRowL.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowL.empty(),hasFrozenColumns()&&($footerRowR.find(\".slick-footerrow-column\").each((function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e,grid:self})})),$footerRowR.empty()));for(var t=0;t<columns.length;t++){var n=columns[t],l=hasFrozenColumns()?t<=options.frozenColumn?$headerL:$headerR:$headerL,r=hasFrozenColumns()?t<=options.frozenColumn?$headerRowL:$headerRowR:$headerRowL,i=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+n.name+\"</span>\").width(n.width-headerColumnWidthDiff).attr(\"id\",\"\"+uid+n.id).attr(\"title\",n.toolTip||\"\").data(\"column\",n).addClass(n.headerCssClass||\"\").addClass(hasFrozenColumns()&&t<=options.frozenColumn?\"frozen\":\"\").appendTo(l);if((options.enableColumnReorder||n.sortable)&&i.on(\"mouseenter\",e).on(\"mouseleave\",o),n.hasOwnProperty(\"headerCellAttrs\")&&n.headerCellAttrs instanceof Object)for(var a in n.headerCellAttrs)n.headerCellAttrs.hasOwnProperty(a)&&i.attr(a,n.headerCellAttrs[a]);if(n.sortable&&(i.addClass(\"slick-header-sortable\"),i.append(\"<span class='slick-sort-indicator\"+(options.numberedMultiColumnSort&&!options.sortColNumberInSeparateSpan?\" slick-sort-indicator-numbered\":\"\")+\"' />\"),options.numberedMultiColumnSort&&options.sortColNumberInSeparateSpan&&i.append(\"<span class='slick-sort-indicator-numbered' />\")),trigger(self.onHeaderCellRendered,{node:i[0],column:n,grid:self}),options.showHeaderRow){var s=$(\"<div class='ui-state-default slick-headerrow-column l\"+t+\" r\"+t+\"'></div>\").data(\"column\",n).addClass(hasFrozenColumns()&&t<=options.frozenColumn?\"frozen\":\"\").appendTo(r);trigger(self.onHeaderRowCellRendered,{node:s[0],column:n,grid:self})}if(options.createFooterRow&&options.showFooterRow){var d=$(\"<div class='ui-state-default slick-footerrow-column l\"+t+\" r\"+t+\"'></div>\").data(\"column\",n).appendTo($footerRow);trigger(self.onFooterRowCellRendered,{node:d[0],column:n,grid:self})}}setSortColumns(sortColumns),setupColumnResize(),options.enableColumnReorder&&(\"function\"==typeof options.enableColumnReorder?options.enableColumnReorder(self,$headers,headerColumnWidthDiff,setColumns,setupColumnResize,columns,getColumnIndex,uid,trigger):setupColumnReorder())}function setupColumnSort(){$headers.click((function(e){if(!columnResizeDragging&&(e.metaKey=e.metaKey||e.ctrlKey,!$(e.target).hasClass(\"slick-resizable-handle\"))){var o=$(e.target).closest(\".slick-header-column\");if(o.length){var t=o.data(\"column\");if(t.sortable){if(!getEditorLock().commitCurrentEdit())return;for(var n=null,l=0;l<sortColumns.length;l++)if(sortColumns[l].columnId==t.id){(n=sortColumns[l]).sortAsc=!n.sortAsc;break}var r=!!n;options.tristateMultiColumnSort?(n||(n={columnId:t.id,sortAsc:t.defaultSortAsc}),r&&n.sortAsc&&(sortColumns.splice(l,1),n=null),options.multiColumnSort||(sortColumns=[]),!n||r&&options.multiColumnSort||sortColumns.push(n)):e.metaKey&&options.multiColumnSort?n&&sortColumns.splice(l,1):((e.shiftKey||e.metaKey)&&options.multiColumnSort||(sortColumns=[]),n?0===sortColumns.length&&sortColumns.push(n):(n={columnId:t.id,sortAsc:t.defaultSortAsc},sortColumns.push(n))),setSortColumns(sortColumns),options.multiColumnSort?trigger(self.onSort,{multiColumnSort:!0,sortCols:$.map(sortColumns,(function(e){return{columnId:columns[getColumnIndex(e.columnId)].id,sortCol:columns[getColumnIndex(e.columnId)],sortAsc:e.sortAsc}}))},e):trigger(self.onSort,{multiColumnSort:!1,columnId:sortColumns.length>0?t.id:null,sortCol:sortColumns.length>0?t:null,sortAsc:!(sortColumns.length>0)||sortColumns[0].sortAsc},e)}}}}))}function currentPositionInHeader(e){var o=0;return $headers.find(\".slick-header-column\").each((function(t){if(this.id==e)return o=t,!1})),o}function limitPositionInGroup(e){var o,t=0,n=0;return treeColumns.getColumnsInDepth($groupHeadersL.length-1).some((function(l){return t=n,n+=l.columns.length,l.columns.some((function(t){return t.id===e&&(o=l),o})),o})),n--,{start:t,end:n,group:o}}function remove(e,o){var t=e.lastIndexOf(o);t>-1&&(e.splice(t,1),remove(e,o))}function columnPositionValidInGroup(e){var o=currentPositionInHeader(e[0].id),t=limitPositionInGroup(e.data(\"column\").id),n=t.start<=o&&o<=t.end;return{limit:t,valid:n,message:n?\"\":'Column \"'.concat(e.text(),'\" can be reordered only within the \"',t.group.name,'\" group!')}}function setupColumnReorder(){$headers.filter(\":ui-sortable\").sortable(\"destroy\");var e,o=null;function t(){$viewportScrollContainerX[0].scrollLeft=$viewportScrollContainerX[0].scrollLeft+10}function n(){$viewportScrollContainerX[0].scrollLeft=$viewportScrollContainerX[0].scrollLeft-10}$headers.sortable({containment:\"parent\",distance:3,axis:\"x\",cursor:\"default\",tolerance:\"intersection\",helper:\"clone\",placeholder:\"slick-sortable-placeholder ui-state-default slick-header-column\",start:function(o,t){t.placeholder.width(t.helper.outerWidth()-headerColumnWidthDiff),e=!hasFrozenColumns()||t.placeholder.offset().left+t.placeholder.width()>$viewportScrollContainerX.offset().left,$(t.helper).addClass(\"slick-header-column-active\")},beforeStop:function(e,o){$(o.helper).removeClass(\"slick-header-column-active\")},sort:function(l,r){e&&l.originalEvent.pageX>$container[0].clientWidth?o||(o=setInterval(t,100)):e&&l.originalEvent.pageX<$viewportScrollContainerX.offset().left?o||(o=setInterval(n,100)):(clearInterval(o),o=null)},stop:function(e,t){var n=!1;clearInterval(o),o=null;var l=null;if(treeColumns.hasDepth()){var r=columnPositionValidInGroup(t.item);l=r.limit,(n=!r.valid)&&alert(r.message)}if(!n&&getEditorLock().commitCurrentEdit()){var i=$headerL.sortable(\"toArray\");i=i.concat($headerR.sortable(\"toArray\"));for(var a=[],s=0;s<i.length;s++)a.push(columns[getColumnIndex(i[s].replace(uid,\"\"))]);setColumns(a),trigger(self.onColumnsReordered,{impactedColumns:getImpactedColumns(l)}),e.stopPropagation(),setupColumnResize()}else $(this).sortable(\"cancel\")}})}function getImpactedColumns(e){var o=[];if(e)for(var t=e.start;t<=e.end;t++)o.push(columns[t]);else o=columns;return o}function setupColumnResize(){var e,o,t,n,l,r,i,a,s;(l=$headers.children()).find(\".slick-resizable-handle\").remove(),l.each((function(e,o){e>=columns.length||columns[e].resizable&&(void 0===a&&(a=e),s=e)})),void 0!==a&&l.each((function(d,c){d>=columns.length||d<a||options.forceFitColumns&&d>=s||($(c),$(\"<div class='slick-resizable-handle' />\").appendTo(c).on(\"dragstart\",(function(o,a){if(!getEditorLock().commitCurrentEdit())return!1;n=o.pageX,$(this).parent().addClass(\"slick-header-column-active\");var s=null,c=null;if(l.each((function(e,o){e>=columns.length||(columns[e].previousWidth=$(o).outerWidth())})),options.forceFitColumns)for(s=0,c=0,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(null!==c&&(t.maxWidth?c+=t.maxWidth-t.previousWidth:c=null),s+=t.previousWidth-Math.max(t.minWidth||0,absoluteColumnMinWidth));var u=0,h=0;for(e=0;e<=d;e++)(t=columns[e]).resizable&&(null!==h&&(t.maxWidth?h+=t.maxWidth-t.previousWidth:h=null),u+=t.previousWidth-Math.max(t.minWidth||0,absoluteColumnMinWidth));null===s&&(s=1e5),null===u&&(u=1e5),null===c&&(c=1e5),null===h&&(h=1e5),i=n+Math.min(s,h),r=n-Math.min(u,c)})).on(\"drag\",(function(l,a){columnResizeDragging=!0;var s,c,u=Math.min(i,Math.max(r,l.pageX))-n,h=0;if(u<0){for(c=u,e=d;e>=0;e--)(t=columns[e]).resizable&&(s=Math.max(t.minWidth||0,absoluteColumnMinWidth),c&&t.previousWidth+c<s?(c+=t.previousWidth-s,t.width=s):(t.width=t.previousWidth+c,c=0));for(o=0;o<=d;o++)t=columns[o],hasFrozenColumns()&&o>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0),hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width);else for(e=d+1;e<columns.length;e++)t=columns[e],hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0))}else{for(c=u,h=0,0,e=d;e>=0;e--)(t=columns[e]).resizable&&(c&&t.maxWidth&&t.maxWidth-t.previousWidth<c?(c-=t.maxWidth-t.previousWidth,t.width=t.maxWidth):(t.width=t.previousWidth+c,c=0));for(o=0;o<=d;o++)t=columns[o],hasFrozenColumns()&&o>options.frozenColumn?t.width:h+=t.width;if(options.forceFitColumns)for(c=-u,e=d+1;e<columns.length;e++)(t=columns[e]).resizable&&(s=Math.max(t.minWidth||0,absoluteColumnMinWidth),c&&t.previousWidth+c<s?(c+=t.previousWidth-s,t.width=s):(t.width=t.previousWidth+c,c=0),hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width);else for(e=d+1;e<columns.length;e++)t=columns[e],hasFrozenColumns()&&e>options.frozenColumn?t.width:h+=t.width}hasFrozenColumns()&&h!=canvasWidthL&&($headerL.width(h+1e3),$paneHeaderR.css(\"left\",h)),applyColumnHeaderWidths(),applyColumnGroupHeaderWidths(),options.syncColumnCellResize&&applyColumnWidths(),trigger(self.onColumnsDrag,{triggeredByColumn:$(this).parent().attr(\"id\").replace(uid,\"\"),resizeHandle:$(this)})})).on(\"dragend\",(function(o,n){$(this).parent().removeClass(\"slick-header-column-active\");var r,i=$(this).parent().attr(\"id\").replace(uid,\"\");for(!0===trigger(self.onBeforeColumnsResize,{triggeredByColumn:i})&&(applyColumnHeaderWidths(),applyColumnGroupHeaderWidths()),e=0;e<columns.length;e++)t=columns[e],r=$(l[e]).outerWidth(),t.previousWidth!==r&&t.rerenderOnResize&&invalidateAllRows();updateCanvasWidth(!0),render(),trigger(self.onColumnsResized,{triggeredByColumn:i}),setTimeout((function(){columnResizeDragging=!1}),300)})))}))}function getVBoxDelta(e){var o=0;return e&&\"function\"==typeof e.css&&$.each([\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],(function(t,n){o+=parseFloat(e.css(n))||0})),o}function setFrozenOptions(){if(options.frozenColumn=options.frozenColumn>=0&&options.frozenColumn<columns.length?parseInt(options.frozenColumn):-1,options.frozenRow>-1){hasFrozenRows=!0,frozenRowsHeight=options.frozenRow*options.rowHeight;var e=getDataLength();actualFrozenRow=options.frozenBottom?e-options.frozenRow:options.frozenRow}else hasFrozenRows=!1}function setPaneVisibility(){hasFrozenColumns()?($paneHeaderR.show(),$paneTopR.show(),hasFrozenRows?($paneBottomL.show(),$paneBottomR.show()):($paneBottomR.hide(),$paneBottomL.hide())):($paneHeaderR.hide(),$paneTopR.hide(),$paneBottomR.hide(),hasFrozenRows?$paneBottomL.show():($paneBottomR.hide(),$paneBottomL.hide()))}function setOverflow(){$viewportTopL.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"scroll\":hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"auto\",\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":hasFrozenColumns()?\"hidden\":hasFrozenRows?\"scroll\":\"auto\"}),$viewportTopR.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"scroll\":hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"hidden\":\"auto\",\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":(hasFrozenColumns(),hasFrozenRows?\"scroll\":\"auto\")}),$viewportBottomL.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"scroll\":\"auto\":(hasFrozenRows&&options.alwaysAllowHorizontalScroll,\"auto\"),\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":hasFrozenColumns()?\"hidden\":hasFrozenRows?\"scroll\":\"auto\"}),$viewportBottomR.css({\"overflow-x\":hasFrozenColumns()?hasFrozenRows&&!options.alwaysAllowHorizontalScroll?\"scroll\":\"auto\":(hasFrozenRows&&options.alwaysAllowHorizontalScroll,\"auto\"),\"overflow-y\":options.alwaysShowVerticalScroll?\"scroll\":(hasFrozenColumns(),\"auto\")}),options.viewportClass&&($viewportTopL.toggleClass(options.viewportClass,!0),$viewportTopR.toggleClass(options.viewportClass,!0),$viewportBottomL.toggleClass(options.viewportClass,!0),$viewportBottomR.toggleClass(options.viewportClass,!0))}function setScroller(){hasFrozenColumns()?($headerScrollContainer=$headerScrollerR,$headerRowScrollContainer=$headerRowScrollerR,$footerRowScrollContainer=$footerRowScrollerR,hasFrozenRows?options.frozenBottom?($viewportScrollContainerX=$viewportBottomR,$viewportScrollContainerY=$viewportTopR):$viewportScrollContainerX=$viewportScrollContainerY=$viewportBottomR:$viewportScrollContainerX=$viewportScrollContainerY=$viewportTopR):($headerScrollContainer=$headerScrollerL,$headerRowScrollContainer=$headerRowScrollerL,$footerRowScrollContainer=$footerRowScrollerL,hasFrozenRows?options.frozenBottom?($viewportScrollContainerX=$viewportBottomL,$viewportScrollContainerY=$viewportTopL):$viewportScrollContainerX=$viewportScrollContainerY=$viewportBottomL:$viewportScrollContainerX=$viewportScrollContainerY=$viewportTopL)}function measureCellPaddingAndBorder(){var e,o=[\"borderLeftWidth\",\"borderRightWidth\",\"paddingLeft\",\"paddingRight\"],t=[\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],n=$.fn.jquery.split(\".\");jQueryNewWidthBehaviour=1==n[0]&&n[1]>=8||n[0]>=2,e=$(\"<div class='ui-state-default slick-header-column' style='visibility:hidden'>-</div>\").appendTo($headers),headerColumnWidthDiff=headerColumnHeightDiff=0,\"border-box\"!=e.css(\"box-sizing\")&&\"border-box\"!=e.css(\"-moz-box-sizing\")&&\"border-box\"!=e.css(\"-webkit-box-sizing\")&&($.each(o,(function(o,t){headerColumnWidthDiff+=parseFloat(e.css(t))||0})),$.each(t,(function(o,t){headerColumnHeightDiff+=parseFloat(e.css(t))||0}))),e.remove();var l=$(\"<div class='slick-row' />\").appendTo($canvas);e=$(\"<div class='slick-cell' id='' style='visibility:hidden'>-</div>\").appendTo(l),cellWidthDiff=cellHeightDiff=0,\"border-box\"!=e.css(\"box-sizing\")&&\"border-box\"!=e.css(\"-moz-box-sizing\")&&\"border-box\"!=e.css(\"-webkit-box-sizing\")&&($.each(o,(function(o,t){cellWidthDiff+=parseFloat(e.css(t))||0})),$.each(t,(function(o,t){cellHeightDiff+=parseFloat(e.css(t))||0}))),l.remove(),absoluteColumnMinWidth=Math.max(headerColumnWidthDiff,cellWidthDiff)}function createCssRules(){$style=$(\"<style type='text/css' rel='stylesheet' />\").appendTo($(\"head\"));for(var e=options.rowHeight-cellHeightDiff,o=[\".\"+uid+\" .slick-group-header-column { left: 1000px; }\",\".\"+uid+\" .slick-header-column { left: 1000px; }\",\".\"+uid+\" .slick-top-panel { height:\"+options.topPanelHeight+\"px; }\",\".\"+uid+\" .slick-preheader-panel { height:\"+options.preHeaderPanelHeight+\"px; }\",\".\"+uid+\" .slick-headerrow-columns { height:\"+options.headerRowHeight+\"px; }\",\".\"+uid+\" .slick-footerrow-columns { height:\"+options.footerRowHeight+\"px; }\",\".\"+uid+\" .slick-cell { height:\"+e+\"px; }\",\".\"+uid+\" .slick-row { height:\"+options.rowHeight+\"px; }\"],t=0;t<columns.length;t++)o.push(\".\"+uid+\" .l\"+t+\" { }\"),o.push(\".\"+uid+\" .r\"+t+\" { }\");$style[0].styleSheet?$style[0].styleSheet.cssText=o.join(\" \"):$style[0].appendChild(document.createTextNode(o.join(\" \")))}function getColumnCssRules(e){var o;if(!stylesheet){var t=document.styleSheets;for(o=0;o<t.length;o++)if((t[o].ownerNode||t[o].owningElement)==$style[0]){stylesheet=t[o];break}if(!stylesheet)throw new Error(\"Cannot find stylesheet.\");columnCssRulesL=[],columnCssRulesR=[];var n,l,r=stylesheet.cssRules||stylesheet.rules;for(o=0;o<r.length;o++){var i=r[o].selectorText;(n=/\\.l\\d+/.exec(i))?(l=parseInt(n[0].substr(2,n[0].length-2),10),columnCssRulesL[l]=r[o]):(n=/\\.r\\d+/.exec(i))&&(l=parseInt(n[0].substr(2,n[0].length-2),10),columnCssRulesR[l]=r[o])}}return{left:columnCssRulesL[e],right:columnCssRulesR[e]}}function removeCssRules(){$style.remove(),stylesheet=null}function destroy(){getEditorLock().cancelCurrentEdit(),trigger(self.onBeforeDestroy,{});for(var e=plugins.length;e--;)unregisterPlugin(plugins[e]);options.enableColumnReorder&&$headers.filter(\":ui-sortable\").sortable(\"destroy\"),unbindAncestorScrollEvents(),$container.off(\".slickgrid\"),removeCssRules(),$canvas.off(\"draginit dragstart dragend drag\"),$container.empty().removeClass(uid)}var canvas=null,canvas_context=null;function autosizeColumn(e,o){var t=e;if(\"number\"==typeof e)t=columns[e];else if(\"string\"==typeof e)for(var n=0;n<columns.length;n++)columns[n].Id===e&&(t=columns[n]);getColAutosizeWidth(t,$(getCanvasNode(0,0)),o)}function autosizeColumns(e,o){if((e=e||options.autosizeColsMode)!==Slick.GridAutosizeColsMode.LegacyForceFit&&e!==Slick.GridAutosizeColsMode.LegacyOff){if(e!==Slick.GridAutosizeColsMode.None){(canvas=document.createElement(\"canvas\"))&&canvas.getContext&&(canvas_context=canvas.getContext(\"2d\"));var t,n,l,r,i=$(getCanvasNode(0,0)),a=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,s=0,d=0,c=0,u=0,h=0;for(t=0;t<columns.length;t++)getColAutosizeWidth(n=columns[t],i,o),h+=n.autoSize.autosizeMode===Slick.ColAutosizeMode.Locked?n.width:0,u+=n.autoSize.autosizeMode===Slick.ColAutosizeMode.Locked?n.width:n.minWidth,s+=n.autoSize.widthPx,d+=n.autoSize.sizeToRemaining?0:n.autoSize.widthPx,c+=n.autoSize.sizeToRemaining&&n.minWidth||0;var p=s-d;if(e===Slick.GridAutosizeColsMode.FitViewportToCols){var m=s+scrollbarDimensions.width;e=Slick.GridAutosizeColsMode.IgnoreViewport,options.viewportMaxWidthPx&&m>options.viewportMaxWidthPx?(m=options.viewportMaxWidthPx,e=Slick.GridAutosizeColsMode.FitColsToViewport):options.viewportMinWidthPx&&m<options.viewportMinWidthPx&&(m=options.viewportMinWidthPx,e=Slick.GridAutosizeColsMode.FitColsToViewport),$container.width(m)}if(e===Slick.GridAutosizeColsMode.FitColsToViewport)if(p>0&&d<a-c)for(t=0;t<columns.length;t++){var w=a-d;l=(n=columns[t]).autoSize.sizeToRemaining?w*n.autoSize.widthPx/p:n.autoSize.widthPx,n.rerenderOnResize&&n.width!=l&&(r=!0),n.width=l}else if(options.viewportSwitchToScrollModeWidthPercent&&d+c>a*options.viewportSwitchToScrollModeWidthPercent/100||u>a)e=Slick.GridAutosizeColsMode.IgnoreViewport;else{var v=d-h,f=a-h-c;for(t=0;t<columns.length;t++)l=(n=columns[t]).width,n.autoSize.autosizeMode!==Slick.ColAutosizeMode.Locked&&(n.autoSize.sizeToRemaining?l=n.minWidth:((l=f/v*n.autoSize.widthPx)<n.minWidth&&(l=n.minWidth),v-=n.autoSize.widthPx,f-=l)),n.rerenderOnResize&&n.width!=l&&(r=!0),n.width=l}if(e===Slick.GridAutosizeColsMode.IgnoreViewport)for(t=0;t<columns.length;t++)l=columns[t].autoSize.widthPx,columns[t].rerenderOnResize&&columns[t].width!=l&&(r=!0),columns[t].width=l;reRenderColumns(r)}}else legacyAutosizeColumns()}function LogColWidths(){for(var e=\"Col Widths:\",o=0;o<columns.length;o++)e+=\" \"+columns[o].width;console.log(e)}function getColAutosizeWidth(e,o,t){var n=e.autoSize;if(n.widthPx=e.width,n.autosizeMode!==Slick.ColAutosizeMode.Locked&&n.autosizeMode!==Slick.ColAutosizeMode.Guide){var l=getDataLength();if(n.autosizeMode===Slick.ColAutosizeMode.ContentIntelligent){var r,i=n.colDataTypeOf;if(l>0){var a=getDataItem(0);a&&\"object\"===(i=typeof(r=a[e.field]))&&(r instanceof Date&&(i=\"date\"),\"undefined\"!=typeof moment&&r instanceof moment&&(i=\"moment\"))}\"boolean\"===i&&(n.colValueArray=[!0,!1]),\"number\"===i&&(n.valueFilterMode=Slick.ValueFilterMode.GetGreatestAndSub,n.rowSelectionMode=Slick.RowSelectionMode.AllRows),\"string\"===i&&(n.valueFilterMode=Slick.ValueFilterMode.GetLongestText,n.rowSelectionMode=Slick.RowSelectionMode.AllRows,n.allowAddlPercent=5),\"date\"===i&&(n.colValueArray=[new Date(2009,8,30,12,20,20)]),\"moment\"===i&&\"undefined\"!=typeof moment&&(n.colValueArray=[moment([2009,8,30,12,20,20])])}var s=getColContentSize(e,o,t);s=s*(n.allowAddlPercent?1+n.allowAddlPercent/100:1)+options.autosizeColPaddingPx,e.minWidth&&s<e.minWidth&&(s=e.minWidth),e.maxWidth&&s>e.maxWidth&&(s=e.maxWidth),n.widthPx=s}}function getColContentSize(e,o,t){var n,l=e.autoSize,r=1,i=0,a=0;if(l.ignoreHeaderText||(a=getColHeaderWidth(e)),l.colValueArray)return i=getColWidth(e,o,l.colValueArray),Math.max(a,i);var s=getData();s.getItems&&(s=s.getItems());var d=(t?l.rowSelectionModeOnInit:void 0)||l.rowSelectionMode;if(d===Slick.RowSelectionMode.FirstRow&&(s=s.slice(0,1)),d===Slick.RowSelectionMode.LastRow&&(s=s.slice(s.length-1,s.length)),d===Slick.RowSelectionMode.FirstNRows&&(s=s.slice(0,l.rowSelectionCount)),l.valueFilterMode===Slick.ValueFilterMode.DeDuplicate){var c={};for(u=0,n=s.length;u<n;u++)c[s[u][e.field]]=!0;if(Object.keys)s=Object.keys(c);else for(var u in s=[],c)s.push(u)}if(l.valueFilterMode===Slick.ValueFilterMode.GetGreatestAndSub){var h,p=0;for(u=0,n=s.length;u<n;u++)w=s[u][e.field],Math.abs(w)>p&&(h=w,p=Math.abs(w));h=\"\"+h,s=[h=+(h=Array(h.length+1).join(\"9\"))]}if(l.valueFilterMode===Slick.ValueFilterMode.GetLongestTextAndSub){var m=0;for(u=0,n=s.length;u<n;u++)((w=s[u][e.field])||\"\").length>m&&(m=w.length);w=Array(m+1).join(\"m\"),r=options.autosizeTextAvgToMWidthRatio,s=[w]}if(l.valueFilterMode===Slick.ValueFilterMode.GetLongestText){m=0;var w,v=0;for(u=0,n=s.length;u<n;u++)((w=s[u][e.field])||\"\").length>m&&(m=w.length,v=u);s=[w=s[v][e.field]]}return i=getColWidth(e,o,s)*r,Math.max(a,i)}function getColWidth(e,o,t){var n=getColumnIndex(e.id),l=$('<div class=\"slick-row ui-widget-content\"></div>'),r=$('<div class=\"slick-cell\"></div>');r.css({position:\"absolute\",visibility:\"hidden\",\"text-overflow\":\"initial\",\"white-space\":\"nowrap\"}),l.append(r),o.append(l);var i,a,s,d,c=0;return canvas_context&&e.autoSize.widthEvalMode===Slick.WidthEvalMode.CanvasTextSize?(canvas_context.font=r.css(\"font-size\")+\" \"+r.css(\"font-family\"),$(t).each((function(o,t){d=Array.isArray(t)?t[e.field]:t,(i=(a=\"\"+d)?canvas_context.measureText(a).width:0)>c&&(c=i,s=a)})),r.html(s),i=r.outerWidth(),l.remove(),i):($(t).each((function(o,t){d=Array.isArray(t)?t[e.field]:t,applyFormatResultToCellNode(e.formatterOverride?e.formatterOverride(o,n,d,e,t):e.formatter?e.formatter(o,n,d,e,t):\"\"+d,r[0]),(i=r.outerWidth())>c&&(c=i)})),l.remove(),c)}function getColHeaderWidth(e){var o=0,t=getUID()+e.id,n=document.getElementById(t),l=t+\"_\";if(n){var r=n.cloneNode(!0);r.id=l,r.style.cssText=\"position: absolute; visibility: hidden;right: auto;text-overflow: initial;white-space: nowrap;\",n.parentNode.insertBefore(r,n),o=r.offsetWidth,r.parentNode.removeChild(r)}else{var i=getHeader(e);o=(n=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+e.name+\"</span>\").attr(\"id\",l).css({position:\"absolute\",visibility:\"hidden\",right:\"auto\",\"text-overflow:\":\"initial\",\"white-space\":\"nowrap\"}).addClass(e.headerCssClass||\"\").appendTo(i))[0].offsetWidth,i[0].removeChild(n[0])}return o}function legacyAutosizeColumns(){var e,o,t,n=[],l=0,r=0,i=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW;for(e=0;e<columns.length;e++)o=columns[e],n.push(o.width),r+=o.width,o.resizable&&(l+=o.width-Math.max(o.minWidth,absoluteColumnMinWidth));for(t=r;r>i&&l;){var a=(r-i)/l;for(e=0;e<columns.length&&r>i;e++){o=columns[e];var s=n[e];if(!(!o.resizable||s<=o.minWidth||s<=absoluteColumnMinWidth)){var d=Math.max(o.minWidth,absoluteColumnMinWidth),c=Math.floor(a*(s-d))||1;r-=c=Math.min(c,s-d),l-=c,n[e]-=c}}if(t<=r)break;t=r}for(t=r;r<i;){var u=i/r;for(e=0;e<columns.length&&r<i;e++){o=columns[e];var h,p=n[e];r+=h=!o.resizable||o.maxWidth<=p?0:Math.min(Math.floor(u*p)-p,o.maxWidth-p||1e6)||1,n[e]+=r<=i?h:0}if(t>=r)break;t=r}var m=!1;for(e=0;e<columns.length;e++)columns[e].rerenderOnResize&&columns[e].width!=n[e]&&(m=!0),columns[e].width=n[e];reRenderColumns(m)}function reRenderColumns(e){applyColumnHeaderWidths(),applyColumnGroupHeaderWidths(),updateCanvasWidth(!0),trigger(self.onAutosizeColumns,{columns}),e&&(invalidateAllRows(),render())}function trigger(e,o,t){return t=t||new Slick.EventData,(o=o||{}).grid=self,e.notify(o,t,self)}function getEditorLock(){return options.editorLock}function getEditController(){return editController}function getColumnIndex(e){return columnsById[e]}function applyColumnGroupHeaderWidths(){if(treeColumns.hasDepth())for(var e=$groupHeadersL.length-1;e>=0;e--){treeColumns.getColumnsInDepth(e);$().add($groupHeadersL[e]).add($groupHeadersR[e]).each((function(e){var o=$(this),t=0;o.width(0===e?getHeadersWidthL():getHeadersWidthR()),o.children().each((function(){var e=$(this),n=$(this).data(\"column\");n.width=0,n.columns.forEach((function(){var e=o.next().children(\":eq(\"+t+++\")\");n.width+=e.outerWidth()})),e.width(n.width-headerColumnWidthDiff)}))}))}}function applyColumnHeaderWidths(){if(initialized){for(var e,o=0,t=$headers.children(),n=columns.length;o<n;o++)e=$(t[o]),jQueryNewWidthBehaviour?e.outerWidth()!==columns[o].width&&e.outerWidth(columns[o].width):e.width()!==columns[o].width-headerColumnWidthDiff&&e.width(columns[o].width-headerColumnWidthDiff);updateColumnCaches()}}function applyColumnWidths(){for(var e,o,t=0,n=0;n<columns.length;n++)e=columns[n].width,(o=getColumnCssRules(n)).left.style.left=t+\"px\",o.right.style.right=(-1!=options.frozenColumn&&n>options.frozenColumn?canvasWidthR:canvasWidthL)-t-e+\"px\",options.frozenColumn==n?t=0:t+=columns[n].width}function setSortColumn(e,o){setSortColumns([{columnId:e,sortAsc:o}])}function setSortColumns(e){sortColumns=e;var o=options.numberedMultiColumnSort&&sortColumns.length>1,t=$headers.children();t.removeClass(\"slick-header-column-sorted\").find(\".slick-sort-indicator\").removeClass(\"slick-sort-indicator-asc slick-sort-indicator-desc\"),t.find(\".slick-sort-indicator-numbered\").text(\"\"),$.each(sortColumns,(function(e,n){null==n.sortAsc&&(n.sortAsc=!0);var l=getColumnIndex(n.columnId);null!=l&&(t.eq(l).addClass(\"slick-header-column-sorted\").find(\".slick-sort-indicator\").addClass(n.sortAsc?\"slick-sort-indicator-asc\":\"slick-sort-indicator-desc\"),o&&t.eq(l).find(\".slick-sort-indicator-numbered\").text(e+1))}))}function getSortColumns(){return sortColumns}function handleSelectedRangesChanged(e,o){var t=selectedRows.slice(0);selectedRows=[];for(var n={},l=0;l<o.length;l++)for(var r=o[l].fromRow;r<=o[l].toRow;r++){n[r]||(selectedRows.push(r),n[r]={});for(var i=o[l].fromCell;i<=o[l].toCell;i++)canCellBeSelected(r,i)&&(n[r][columns[i].id]=options.selectedCellCssClass)}setCellCssStyles(options.selectedCellCssClass,n),simpleArrayEquals(t,selectedRows)&&trigger(self.onSelectedRowsChanged,{rows:getSelectedRows(),previousSelectedRows:t},e)}function simpleArrayEquals(e,o){return Array.isArray(e)&&Array.isArray(o)&&o.sort().toString()!==e.sort().toString()}function getColumns(){return columns}function updateColumnCaches(){columnPosLeft=[],columnPosRight=[];for(var e=0,o=0,t=columns.length;o<t;o++)columnPosLeft[o]=e,columnPosRight[o]=e+columns[o].width,options.frozenColumn==o?e=0:e+=columns[o].width}function updateColumnProps(){columnsById={};for(var e=0;e<columns.length;e++){columns[e].width&&(columns[e].widthRequest=columns[e].width);var o=columns[e]=$.extend({},columnDefaults,columns[e]);o.autoSize=$.extend({},columnAutosizeDefaults,o.autoSize),columnsById[o.id]=e,o.minWidth&&o.width<o.minWidth&&(o.width=o.minWidth),o.maxWidth&&o.width>o.maxWidth&&(o.width=o.maxWidth),o.resizable}}function setColumns(e){var o=new Slick.TreeColumns(e);columns=o.hasDepth()?(treeColumns=o).extractColumns():e,updateColumnProps(),updateColumnCaches(),initialized&&(setPaneVisibility(),setOverflow(),invalidateAllRows(),createColumnHeaders(),createColumnGroupHeaders(),createColumnFooter(),removeCssRules(),createCssRules(),resizeCanvas(),updateCanvasWidth(),applyColumnHeaderWidths(),applyColumnWidths(),handleScroll())}function getOptions(){return options}function setOptions(e,o){if(getEditorLock().commitCurrentEdit()){makeActiveCellNormal(),void 0!==e.showColumnHeader&&setColumnHeaderVisibility(e.showColumnHeader),options.enableAddRow!==e.enableAddRow&&invalidateRow(getDataLength());var t=$.extend(!0,{},options);options=$.extend(options,e),trigger(self.onSetOptions,{optionsBefore:t,optionsAfter:options}),validateAndEnforceOptions(),$viewport.css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),o||render(),setFrozenOptions(),setScroller(),zombieRowNodeFromLastMouseWheelEvent=null,setColumns(treeColumns.extractColumns())}}function validateAndEnforceOptions(){options.autoHeight&&(options.leaveSpaceForNewRows=!1),options.forceFitColumns&&(options.autosizeColsMode=Slick.GridAutosizeColsMode.LegacyForceFit,console.log(\"forceFitColumns option is deprecated - use autosizeColsMode\"))}function setData(e,o){data=e,invalidateAllRows(),updateRowCount(),o&&scrollTo(0)}function getData(){return data}function getDataLength(){return data.getLength?data.getLength():data&&data.length||0}function getDataLengthIncludingAddNew(){return getDataLength()+(options.enableAddRow&&(!pagingActive||pagingIsLastPage)?1:0)}function getDataItem(e){return data.getItem?data.getItem(e):data[e]}function getTopPanel(){return $topPanel[0]}function setTopPanelVisibility(e,o){var t=!1!==o;options.showTopPanel!=e&&(options.showTopPanel=e,e?t?$topPanelScroller.slideDown(\"fast\",resizeCanvas):($topPanelScroller.show(),resizeCanvas()):t?$topPanelScroller.slideUp(\"fast\",resizeCanvas):($topPanelScroller.hide(),resizeCanvas()))}function setHeaderRowVisibility(e,o){var t=!1!==o;options.showHeaderRow!=e&&(options.showHeaderRow=e,e?t?$headerRowScroller.slideDown(\"fast\",resizeCanvas):($headerRowScroller.show(),resizeCanvas()):t?$headerRowScroller.slideUp(\"fast\",resizeCanvas):($headerRowScroller.hide(),resizeCanvas()))}function setColumnHeaderVisibility(e,o){options.showColumnHeader!=e&&(options.showColumnHeader=e,e?o?$headerScroller.slideDown(\"fast\",resizeCanvas):($headerScroller.show(),resizeCanvas()):o?$headerScroller.slideUp(\"fast\",resizeCanvas):($headerScroller.hide(),resizeCanvas()))}function setFooterRowVisibility(e,o){var t=!1!==o;options.showFooterRow!=e&&(options.showFooterRow=e,e?t?$footerRowScroller.slideDown(\"fast\",resizeCanvas):($footerRowScroller.show(),resizeCanvas()):t?$footerRowScroller.slideUp(\"fast\",resizeCanvas):($footerRowScroller.hide(),resizeCanvas()))}function setPreHeaderPanelVisibility(e,o){var t=!1!==o;options.showPreHeaderPanel!=e&&(options.showPreHeaderPanel=e,e?t?$preHeaderPanelScroller.slideDown(\"fast\",resizeCanvas):($preHeaderPanelScroller.show(),resizeCanvas()):t?$preHeaderPanelScroller.slideUp(\"fast\",resizeCanvas):($preHeaderPanelScroller.hide(),resizeCanvas()))}function getContainerNode(){return $container.get(0)}function getRowTop(e){return options.rowHeight*e-offset}function getRowFromPosition(e){return Math.floor((e+offset)/options.rowHeight)}function scrollTo(e){e=Math.max(e,0),e=Math.min(e,th-$viewportScrollContainerY.height()+(viewportHasHScroll||hasFrozenColumns()?scrollbarDimensions.height:0));var o=offset;page=Math.min(n-1,Math.floor(e/ph));var t=e-(offset=Math.round(page*cj));offset!=o&&(cleanupRows(getVisibleRange(t)),updateRowPositions());prevScrollTop!=t&&(vScrollDir=prevScrollTop+o<t+offset?1:-1,lastRenderedScrollTop=scrollTop=prevScrollTop=t,hasFrozenColumns()&&($viewportTopL[0].scrollTop=t),hasFrozenRows&&($viewportBottomL[0].scrollTop=$viewportBottomR[0].scrollTop=t),$viewportScrollContainerY[0].scrollTop=t,trigger(self.onViewportChanged,{}))}function defaultFormatter(e,o,t,n,l,r){return null==t?\"\":(t+\"\").replace(/&/g,\"&\").replace(/</g,\"<\").replace(/>/g,\">\")}function getFormatter(e,o){var t=data.getItemMetadata&&data.getItemMetadata(e),n=t&&t.columns&&(t.columns[o.id]||t.columns[getColumnIndex(o.id)]);return n&&n.formatter||t&&t.formatter||o.formatter||options.formatterFactory&&options.formatterFactory.getFormatter(o)||options.defaultFormatter}function callFormatter(e,o,t,n,l,r){var i,a=data.getItemMetadata&&data.getItemMetadata(e);if(a=a&&a.columns){var s=a[n.id]||a[o];i=getFormatter(e,n)(e,o,t,n,l,s)}else i=getFormatter(e,n)(e,o,t,n,l);return i}function getEditor(e,o){var t=columns[o],n=data.getItemMetadata&&data.getItemMetadata(e),l=n&&n.columns;return l&&l[t.id]&&void 0!==l[t.id].editor?l[t.id].editor:l&&l[o]&&void 0!==l[o].editor?l[o].editor:t.editor||options.editorFactory&&options.editorFactory.getEditor(t)}function getDataItemValueForColumn(e,o){return options.dataItemColumnValueExtractor?options.dataItemColumnValueExtractor(e,o):e[o.field]}function appendRowHtml(e,o,t,n,l){var r=getDataItem(t),i=t<l&&!r,a=\"slick-row\"+(hasFrozenRows&&t<=options.frozenRow?\" frozen\":\"\")+(i?\" loading\":\"\")+(t===activeRow&&options.showCellSelection?\" active\":\"\")+(t%2==1?\" odd\":\" even\");r||(a+=\" \"+options.addNewRowCssClass);var s=data.getItemMetadata&&data.getItemMetadata(t);s&&s.cssClasses&&(a+=\" \"+s.cssClasses);var d,c,u=getFrozenRowOffset(t),h=\"<div class='ui-widget-content \"+a+\"' style='top:\"+(getRowTop(t)-u)+\"px'>\";e.push(h),hasFrozenColumns()&&o.push(h);for(var p=0,m=columns.length;p<m;p++){if(c=columns[p],d=1,s&&s.columns){var w=s.columns[c.id]||s.columns[p];\"*\"===(d=w&&w.colspan||1)&&(d=m-p)}if(columnPosRight[Math.min(m-1,p+d-1)]>n.leftPx){if(!c.alwaysRenderColumn&&columnPosLeft[p]>n.rightPx)break;hasFrozenColumns()&&p>options.frozenColumn?appendCellHtml(o,t,p,d,r):appendCellHtml(e,t,p,d,r)}else(c.alwaysRenderColumn||hasFrozenColumns()&&p<=options.frozenColumn)&&appendCellHtml(e,t,p,d,r);d>1&&(p+=d-1)}e.push(\"</div>\"),hasFrozenColumns()&&o.push(\"</div>\")}function appendCellHtml(e,o,t,n,l){var r=columns[t],i=\"slick-cell l\"+t+\" r\"+Math.min(columns.length-1,t+n-1)+(r.cssClass?\" \"+r.cssClass:\"\");for(var a in hasFrozenColumns()&&t<=options.frozenColumn&&(i+=\" frozen\"),o===activeRow&&t===activeCell&&options.showCellSelection&&(i+=\" active\"),cellCssClasses)cellCssClasses[a][o]&&cellCssClasses[a][o][r.id]&&(i+=\" \"+cellCssClasses[a][o][r.id]);var s=null,d=\"\";l&&(s=getDataItemValueForColumn(l,r),null==(d=getFormatter(o,r)(o,t,s,r,l,self))&&(d=\"\"));var c=trigger(self.onBeforeAppendCell,{row:o,cell:t,value:s,dataContext:l})||\"\";c+=d&&d.addClasses?(c?\" \":\"\")+d.addClasses:\"\";var u=d&&d.toolTip?\"title='\"+d.toolTip+\"'\":\"\",h=\"\";if(r.hasOwnProperty(\"cellAttrs\")&&r.cellAttrs instanceof Object)for(var a in r.cellAttrs)r.cellAttrs.hasOwnProperty(a)&&(h+=\" \"+a+'=\"'+r.cellAttrs[a]+'\" ');e.push(\"<div class='\"+i+(c?\" \"+c:\"\")+\"' \"+u+h+\">\"),l&&e.push(\"[object Object]\"!==Object.prototype.toString.call(d)?d:d.text),e.push(\"</div>\"),rowsCache[o].cellRenderQueue.push(t),rowsCache[o].cellColSpans[t]=n}function cleanupRows(e){for(var o in rowsCache){var t=!0;hasFrozenRows&&(options.frozenBottom&&o>=actualFrozenRow||!options.frozenBottom&&o<=actualFrozenRow)&&(t=!1),(o=parseInt(o,10))!==activeRow&&(o<e.top||o>e.bottom)&&t&&removeRowFromCache(o)}options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}function invalidate(){updateRowCount(),invalidateAllRows(),render()}function invalidateAllRows(){for(var e in currentEditor&&makeActiveCellNormal(),rowsCache)removeRowFromCache(e);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}function queuePostProcessedRowForCleanup(e,o,t){for(var n in postProcessgroupId++,o)o.hasOwnProperty(n)&&postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e.cellNodesByColumnIdx[0|n],columnIdx:0|n,rowIdx:t});postProcessedCleanupQueue.push({actionType:\"R\",groupId:postProcessgroupId,node:e.rowNode}),$(e.rowNode).detach()}function queuePostProcessedCellForCleanup(e,o,t){postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e,columnIdx:o,rowIdx:t}),$(e).detach()}function removeRowFromCache(e){var o=rowsCache[e];o&&(rowNodeFromLastMouseWheelEvent==o.rowNode[0]||hasFrozenColumns()&&rowNodeFromLastMouseWheelEvent==o.rowNode[1]?(o.rowNode.hide(),zombieRowNodeFromLastMouseWheelEvent=o.rowNode):o.rowNode.each((function(){this.parentElement.removeChild(this)})),delete rowsCache[e],delete postProcessedRows[e],renderedRows--,counter_rows_removed++)}function invalidateRows(e){var o,t;if(e&&e.length){for(vScrollDir=0,t=e.length,o=0;o<t;o++)currentEditor&&activeRow===e[o]&&makeActiveCellNormal(),rowsCache[e[o]]&&removeRowFromCache(e[o]);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}}function invalidateRow(e){(e||0===e)&&invalidateRows([e])}function applyFormatResultToCellNode(e,o,t){null==e&&(e=\"\"),\"[object Object]\"===Object.prototype.toString.call(e)?(o.innerHTML=e.text,e.removeClasses&&!t&&$(o).removeClass(e.removeClasses),e.addClasses&&$(o).addClass(e.addClasses),e.toolTip&&$(o).attr(\"title\",e.toolTip)):o.innerHTML=e}function updateCell(e,o){var t=getCellNode(e,o);if(t){var n=columns[o],l=getDataItem(e);if(currentEditor&&activeRow===e&&activeCell===o)currentEditor.loadValue(l);else applyFormatResultToCellNode(l?getFormatter(e,n)(e,o,getDataItemValueForColumn(l,n),n,l,self):\"\",t),invalidatePostProcessingResults(e)}}function updateRow(e){var o=rowsCache[e];if(o){ensureCellNodesInRowsCache(e);var t=getDataItem(e);for(var n in o.cellNodesByColumnIdx)if(o.cellNodesByColumnIdx.hasOwnProperty(n)){var l=columns[n|=0],r=o.cellNodesByColumnIdx[n][0];e===activeRow&&n===activeCell&¤tEditor?currentEditor.loadValue(t):t?applyFormatResultToCellNode(getFormatter(e,l)(e,n,getDataItemValueForColumn(t,l),l,t,self),r):r.innerHTML=\"\"}invalidatePostProcessingResults(e)}}function getViewportHeight(){if(options.autoHeight&&-1==options.frozenColumn||(topPanelH=options.showTopPanel?options.topPanelHeight+getVBoxDelta($topPanelScroller):0,headerRowH=options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0,footerRowH=options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0),options.autoHeight){var e=$paneHeaderL.outerHeight();e+=options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0,e+=options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0,e+=getCanvasWidth()>viewportW?scrollbarDimensions.height:0,viewportH=options.rowHeight*getDataLengthIncludingAddNew()+(-1==options.frozenColumn?e:0)}else{var o=options.showColumnHeader?parseFloat($.css($headerScroller[0],\"height\"))+getVBoxDelta($headerScroller):0,t=options.createPreHeaderPanel&&options.showPreHeaderPanel?options.preHeaderPanelHeight+getVBoxDelta($preHeaderPanelScroller):0;viewportH=parseFloat($.css($container[0],\"height\",!0))-parseFloat($.css($container[0],\"paddingTop\",!0))-parseFloat($.css($container[0],\"paddingBottom\",!0))-o-topPanelH-headerRowH-footerRowH-t}return numVisibleRows=Math.ceil(viewportH/options.rowHeight),viewportH}function getViewportWidth(){viewportW=parseFloat($container.width())}function resizeCanvas(){if(initialized){paneTopH=0,paneBottomH=0,viewportTopH=0,viewportBottomH=0,getViewportWidth(),getViewportHeight(),hasFrozenRows?options.frozenBottom?(paneTopH=viewportH-frozenRowsHeight-scrollbarDimensions.height,paneBottomH=frozenRowsHeight+scrollbarDimensions.height):(paneTopH=frozenRowsHeight,paneBottomH=viewportH-frozenRowsHeight):paneTopH=viewportH,paneTopH+=topPanelH+headerRowH+footerRowH,hasFrozenColumns()&&options.autoHeight&&(paneTopH+=scrollbarDimensions.height),viewportTopH=paneTopH-topPanelH-headerRowH-footerRowH,options.autoHeight&&(hasFrozenColumns()&&$container.height(paneTopH+parseFloat($.css($headerScrollerL[0],\"height\"))),$paneTopL.css(\"position\",\"relative\")),$paneTopL.css({top:$paneHeaderL.height(),height:paneTopH});var e=$paneTopL.position().top+paneTopH;options.autoHeight||$viewportTopL.height(viewportTopH),hasFrozenColumns()?($paneTopR.css({top:$paneHeaderL.height(),height:paneTopH}),$viewportTopR.height(viewportTopH),hasFrozenRows&&($paneBottomL.css({top:e,height:paneBottomH}),$paneBottomR.css({top:e,height:paneBottomH}),$viewportBottomR.height(paneBottomH))):hasFrozenRows&&($paneBottomL.css({width:\"100%\",height:paneBottomH}),$paneBottomL.css(\"top\",e)),hasFrozenRows?($viewportBottomL.height(paneBottomH),options.frozenBottom?($canvasBottomL.height(frozenRowsHeight),hasFrozenColumns()&&$canvasBottomR.height(frozenRowsHeight)):($canvasTopL.height(frozenRowsHeight),hasFrozenColumns()&&$canvasTopR.height(frozenRowsHeight))):$viewportTopR.height(viewportTopH),scrollbarDimensions&&scrollbarDimensions.width||(scrollbarDimensions=measureScrollbar()),options.autosizeColsMode===Slick.GridAutosizeColsMode.LegacyForceFit&&autosizeColumns(),updateRowCount(),handleScroll(),lastRenderedScrollLeft=-1,render()}}function updatePagingStatusFromView(e){pagingActive=0!==e.pageSize,pagingIsLastPage=e.pageNum==e.totalPages-1}function updateRowCount(){if(initialized){var e=getDataLength(),o=getDataLengthIncludingAddNew(),t=0,l=hasFrozenRows&&!options.frozenBottom?$canvasBottomL.height():$canvasTopL.height();if(hasFrozenRows)t=getDataLength()-options.frozenRow;else t=o+(options.leaveSpaceForNewRows?numVisibleRows-1:0);var r=$viewportScrollContainerY.height(),i=viewportHasVScroll;viewportHasVScroll=options.alwaysShowVerticalScroll||!options.autoHeight&&t*options.rowHeight>r,makeActiveCellNormal();var a=e-1;for(var s in rowsCache)s>a&&removeRowFromCache(s);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup(),activeCellNode&&activeRow>a&&resetActiveCell();l=h;options.autoHeight?h=options.rowHeight*t:(th=Math.max(options.rowHeight*t,r-scrollbarDimensions.height))<maxSupportedCssHeight?(h=ph=th,n=1,cj=0):(ph=(h=maxSupportedCssHeight)/100,n=Math.floor(th/ph),cj=(th-h)/(n-1)),h!==l&&(hasFrozenRows&&!options.frozenBottom?($canvasBottomL.css(\"height\",h),hasFrozenColumns()&&$canvasBottomR.css(\"height\",h)):($canvasTopL.css(\"height\",h),$canvasTopR.css(\"height\",h)),scrollTop=$viewportScrollContainerY[0].scrollTop);var d=scrollTop+offset<=th-r;0==th||0==scrollTop?page=offset=0:scrollTo(d?scrollTop+offset:th-r),h!=l&&options.autoHeight&&resizeCanvas(),options.autosizeColsMode===Slick.GridAutosizeColsMode.LegacyForceFit&&i!=viewportHasVScroll&&autosizeColumns(),updateCanvasWidth(!1)}}function getVisibleRange(e,o){return null==e&&(e=scrollTop),null==o&&(o=scrollLeft),{top:getRowFromPosition(e),bottom:getRowFromPosition(e+viewportH)+1,leftPx:o,rightPx:o+viewportW}}function getRenderedRange(e,o){var t=getVisibleRange(e,o),n=Math.round(viewportH/options.rowHeight),l=options.minRowBuffer;return-1==vScrollDir?(t.top-=n,t.bottom+=l):1==vScrollDir?(t.top-=l,t.bottom+=n):(t.top-=l,t.bottom+=l),t.top=Math.max(0,t.top),t.bottom=Math.min(getDataLengthIncludingAddNew()-1,t.bottom),t.leftPx-=viewportW,t.rightPx+=viewportW,t.leftPx=Math.max(0,t.leftPx),t.rightPx=Math.min(canvasWidth,t.rightPx),t}function ensureCellNodesInRowsCache(e){var o=rowsCache[e];if(o&&o.cellRenderQueue.length)for(var t=o.rowNode.children().last();o.cellRenderQueue.length;){var n=o.cellRenderQueue.pop();o.cellNodesByColumnIdx[n]=t,0===(t=t.prev()).length&&(t=$(o.rowNode[0]).children().last())}}function cleanUpCells(e,o){if(!hasFrozenRows||!(options.frozenBottom&&o>actualFrozenRow||o<=actualFrozenRow)){var t,n=rowsCache[o],l=[];for(var r in n.cellNodesByColumnIdx)if(n.cellNodesByColumnIdx.hasOwnProperty(r)&&!((r|=0)<=options.frozenColumn||Array.isArray(columns)&&columns[r]&&columns[r].alwaysRenderColumn)){var i=n.cellColSpans[r];(columnPosLeft[r]>e.rightPx||columnPosRight[Math.min(columns.length-1,r+i-1)]<e.leftPx)&&(o==activeRow&&r==activeCell||l.push(r))}for(;null!=(t=l.pop());)n.cellNodesByColumnIdx[t][0].parentElement.removeChild(n.cellNodesByColumnIdx[t][0]),delete n.cellColSpans[t],delete n.cellNodesByColumnIdx[t],postProcessedRows[o]&&delete postProcessedRows[o][t]}}function cleanUpAndRenderCells(e){for(var o,t,n,l=[],r=[],i=e.top,a=e.bottom;i<=a;i++)if(o=rowsCache[i]){ensureCellNodesInRowsCache(i),cleanUpCells(e,i),t=0;var s=data.getItemMetadata&&data.getItemMetadata(i);s=s&&s.columns;for(var d=getDataItem(i),c=0,u=columns.length;c<u&&!(columnPosLeft[c]>e.rightPx);c++)if(null==(n=o.cellColSpans[c])){if(n=1,s){var h=s[columns[c].id]||s[c];\"*\"===(n=h&&h.colspan||1)&&(n=u-c)}columnPosRight[Math.min(u-1,c+n-1)]>e.leftPx&&(appendCellHtml(l,i,c,n,d),t++),c+=n>1?n-1:0}else c+=n>1?n-1:0;t&&(t,r.push(i))}if(l.length){var p,m,w=document.createElement(\"div\");for(w.innerHTML=l.join(\"\");null!=(p=r.pop());){var v;for(o=rowsCache[p];null!=(v=o.cellRenderQueue.pop());)m=w.lastChild,hasFrozenColumns()&&v>options.frozenColumn?o.rowNode[1].appendChild(m):o.rowNode[0].appendChild(m),o.cellNodesByColumnIdx[v]=$(m)}}}function renderRows(e){for(var o=[],t=[],n=[],l=!1,r=getDataLength(),i=e.top,a=e.bottom;i<=a;i++)rowsCache[i]||hasFrozenRows&&options.frozenBottom&&i==getDataLength()||(renderedRows++,n.push(i),rowsCache[i]={rowNode:null,cellColSpans:[],cellNodesByColumnIdx:[],cellRenderQueue:[]},appendRowHtml(o,t,i,e,r),activeCellNode&&activeRow===i&&(l=!0),counter_rows_rendered++);if(n.length){var s=document.createElement(\"div\"),d=document.createElement(\"div\");s.innerHTML=o.join(\"\"),d.innerHTML=t.join(\"\");for(i=0,a=n.length;i<a;i++)hasFrozenRows&&n[i]>=actualFrozenRow?hasFrozenColumns()?rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasBottomL)).add($(d.firstChild).appendTo($canvasBottomR)):rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasBottomL)):hasFrozenColumns()?rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasTopL)).add($(d.firstChild).appendTo($canvasTopR)):rowsCache[n[i]].rowNode=$().add($(s.firstChild).appendTo($canvasTopL));l&&(activeCellNode=getCellNode(activeRow,activeCell))}}function startPostProcessing(){options.enableAsyncPostRender&&(clearTimeout(h_postrender),h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}function startPostProcessingCleanup(){options.enableAsyncPostRenderCleanup&&(clearTimeout(h_postrenderCleanup),h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay))}function invalidatePostProcessingResults(e){for(var o in postProcessedRows[e])postProcessedRows[e].hasOwnProperty(o)&&(postProcessedRows[e][o]=\"C\");postProcessFromRow=Math.min(postProcessFromRow,e),postProcessToRow=Math.max(postProcessToRow,e),startPostProcessing()}function updateRowPositions(){for(var e in rowsCache){var o=e?parseInt(e):0;rowsCache[o].rowNode[0].style.top=getRowTop(o)+\"px\"}}function render(){if(initialized){scrollThrottle.dequeue();var e=getVisibleRange(),o=getRenderedRange();if(cleanupRows(o),lastRenderedScrollLeft!=scrollLeft){if(hasFrozenRows){var t=$.extend(!0,{},o);options.frozenBottom?(t.top=actualFrozenRow,t.bottom=getDataLength()):(t.top=0,t.bottom=options.frozenRow),cleanUpAndRenderCells(t)}cleanUpAndRenderCells(o)}renderRows(o),hasFrozenRows&&(options.frozenBottom?renderRows({top:actualFrozenRow,bottom:getDataLength()-1,leftPx:o.leftPx,rightPx:o.rightPx}):renderRows({top:0,bottom:options.frozenRow-1,leftPx:o.leftPx,rightPx:o.rightPx})),postProcessFromRow=e.top,postProcessToRow=Math.min(getDataLengthIncludingAddNew()-1,e.bottom),startPostProcessing(),lastRenderedScrollTop=scrollTop,lastRenderedScrollLeft=scrollLeft,h_render=null,trigger(self.onRendered,{startRow:e.top,endRow:e.bottom,grid:self})}}function handleHeaderScroll(){handleElementScroll($headerScrollContainer[0])}function handleHeaderRowScroll(){var e=$headerRowScrollContainer[0].scrollLeft;e!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=e)}function handleFooterRowScroll(){var e=$footerRowScrollContainer[0].scrollLeft;e!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=e)}function handlePreHeaderPanelScroll(){handleElementScroll($preHeaderPanelScroller[0])}function handleElementScroll(e){var o=e.scrollLeft;o!=$viewportScrollContainerX[0].scrollLeft&&($viewportScrollContainerX[0].scrollLeft=o)}function handleScroll(){return scrollTop=$viewportScrollContainerY[0].scrollTop,scrollLeft=$viewportScrollContainerX[0].scrollLeft,_handleScroll(!1)}function _handleScroll(e){var o=$viewportScrollContainerY[0].scrollHeight-$viewportScrollContainerY[0].clientHeight,t=$viewportScrollContainerY[0].scrollWidth-$viewportScrollContainerY[0].clientWidth;o=Math.max(0,o),t=Math.max(0,t),scrollTop>o&&(scrollTop=o),scrollLeft>t&&(scrollLeft=t);var l=Math.abs(scrollTop-prevScrollTop),r=Math.abs(scrollLeft-prevScrollLeft);if(r&&(prevScrollLeft=scrollLeft,$viewportScrollContainerX[0].scrollLeft=scrollLeft,$headerScrollContainer[0].scrollLeft=scrollLeft,$topPanelScroller[0].scrollLeft=scrollLeft,$headerRowScrollContainer[0].scrollLeft=scrollLeft,options.createFooterRow&&($footerRowScrollContainer[0].scrollLeft=scrollLeft),options.createPreHeaderPanel&&(hasFrozenColumns()?$preHeaderPanelScrollerR[0].scrollLeft=scrollLeft:$preHeaderPanelScroller[0].scrollLeft=scrollLeft),hasFrozenColumns()?hasFrozenRows&&($viewportTopR[0].scrollLeft=scrollLeft):hasFrozenRows&&($viewportTopL[0].scrollLeft=scrollLeft)),l)if(vScrollDir=prevScrollTop<scrollTop?1:-1,prevScrollTop=scrollTop,e&&($viewportScrollContainerY[0].scrollTop=scrollTop),hasFrozenColumns()&&(hasFrozenRows&&!options.frozenBottom?$viewportBottomL[0].scrollTop=scrollTop:$viewportTopL[0].scrollTop=scrollTop),l<viewportH)scrollTo(scrollTop+offset);else{var i=offset;page=h==viewportH?0:Math.min(n-1,Math.floor(scrollTop*((th-viewportH)/(h-viewportH))*(1/ph))),i!=(offset=Math.round(page*cj))&&invalidateAllRows()}if(r||l){var a=Math.abs(lastRenderedScrollLeft-scrollLeft),s=Math.abs(lastRenderedScrollTop-scrollTop);(a>20||s>20)&&(options.forceSyncScrolling||s<viewportH&&a<viewportW?render():scrollThrottle.enqueue(),trigger(self.onViewportChanged,{}))}return trigger(self.onScroll,{scrollLeft,scrollTop}),!(!r&&!l)}function ActionThrottle(e,o){var t=!1,n=!1;function l(){n=!1}function r(){t=!0,setTimeout(i,o),e()}function i(){n?(l(),r()):t=!1}return{enqueue:function(){t?n=!0:r()},dequeue:l}}function asyncPostProcessRows(){for(var e=getDataLength();postProcessFromRow<=postProcessToRow;){var o=vScrollDir>=0?postProcessFromRow++:postProcessToRow--,t=rowsCache[o];if(t&&!(o>=e)){for(var n in postProcessedRows[o]||(postProcessedRows[o]={}),ensureCellNodesInRowsCache(o),t.cellNodesByColumnIdx)if(t.cellNodesByColumnIdx.hasOwnProperty(n)){var l=columns[n|=0],r=postProcessedRows[o][n];if(l.asyncPostRender&&\"R\"!==r){var i=t.cellNodesByColumnIdx[n];i&&l.asyncPostRender(i,o,getDataItem(o),l,\"C\"===r),postProcessedRows[o][n]=\"R\"}}return void(h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}}}function asyncPostProcessCleanupRows(){if(postProcessedCleanupQueue.length>0){for(var e=postProcessedCleanupQueue[0].groupId;postProcessedCleanupQueue.length>0&&postProcessedCleanupQueue[0].groupId==e;){var o=postProcessedCleanupQueue.shift();if(\"R\"==o.actionType&&$(o.node).remove(),\"C\"==o.actionType){var t=columns[o.columnIdx];t.asyncPostRenderCleanup&&o.node&&t.asyncPostRenderCleanup(o.node,o.rowIdx,t)}}h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay)}}function updateCellCssStylesOnRenderedRows(e,o){var t,n,l,r;for(var i in rowsCache){if(r=o&&o[i],l=e&&e[i],r)for(n in r)l&&r[n]==l[n]||(t=getCellNode(i,getColumnIndex(n)))&&$(t).removeClass(r[n]);if(l)for(n in l)r&&r[n]==l[n]||(t=getCellNode(i,getColumnIndex(n)))&&$(t).addClass(l[n])}}function addCellCssStyles(e,o){if(cellCssClasses[e])throw new Error(\"addCellCssStyles: cell CSS hash with key '\"+e+\"' already exists.\");cellCssClasses[e]=o,updateCellCssStylesOnRenderedRows(o,null),trigger(self.onCellCssStylesChanged,{key:e,hash:o,grid:self})}function removeCellCssStyles(e){cellCssClasses[e]&&(updateCellCssStylesOnRenderedRows(null,cellCssClasses[e]),delete cellCssClasses[e],trigger(self.onCellCssStylesChanged,{key:e,hash:null,grid:self}))}function setCellCssStyles(e,o){var t=cellCssClasses[e];cellCssClasses[e]=o,updateCellCssStylesOnRenderedRows(o,t),trigger(self.onCellCssStylesChanged,{key:e,hash:o,grid:self})}function getCellCssStyles(e){return cellCssClasses[e]}function flashCell(e,o,t){(t=t||100,rowsCache[e])&&function e(o,n){n&&setTimeout((function(){o.queue((function(){o.toggleClass(options.cellFlashingCssClass).dequeue(),e(o,n-1)}))}),t)}($(getCellNode(e,o)),4)}function handleMouseWheel(e,o,t,n){var l=$(e.target).closest(\".slick-row\"),r=l[0];if(r!=rowNodeFromLastMouseWheelEvent){var i=l.parents(\".grid-canvas\").hasClass(\"grid-canvas-left\");if(zombieRowNodeFromLastMouseWheelEvent&&zombieRowNodeFromLastMouseWheelEvent[i?0:1]!=r){var a=zombieRowNodeFromLastMouseWheelEvent[i||1==zombieRowNodeFromLastMouseWheelEvent.length?0:1];a.parentElement.removeChild(a),zombieRowNodeFromLastMouseWheelEvent=null}rowNodeFromLastMouseWheelEvent=r}scrollTop=Math.max(0,$viewportScrollContainerY[0].scrollTop-n*options.rowHeight),scrollLeft=$viewportScrollContainerX[0].scrollLeft+10*t,_handleScroll(!0)&&e.preventDefault()}function handleDragInit(e,o){var t=getCellFromEvent(e);if(!t||!cellExists(t.row,t.cell))return!1;var n=trigger(self.onDragInit,o,e);return!!e.isImmediatePropagationStopped()&&n}function handleDragStart(e,o){var t=getCellFromEvent(e);if(!t||!cellExists(t.row,t.cell))return!1;var n=trigger(self.onDragStart,o,e);return!!e.isImmediatePropagationStopped()&&n}function handleDrag(e,o){return trigger(self.onDrag,o,e)}function handleDragEnd(e,o){trigger(self.onDragEnd,o,e)}function handleKeyDown(e){trigger(self.onKeyDown,{row:activeRow,cell:activeCell},e);var o=e.isImmediatePropagationStopped(),t=Slick.keyCode;if(!o&&!e.shiftKey&&!e.altKey){if(options.editable&¤tEditor&¤tEditor.keyCaptureList&¤tEditor.keyCaptureList.indexOf(e.which)>-1)return;e.which==t.HOME?o=e.ctrlKey?navigateTop():navigateRowStart():e.which==t.END&&(o=e.ctrlKey?navigateBottom():navigateRowEnd())}if(!o)if(e.shiftKey||e.altKey||e.ctrlKey)e.which!=t.TAB||!e.shiftKey||e.ctrlKey||e.altKey||(o=navigatePrev());else{if(options.editable&¤tEditor&¤tEditor.keyCaptureList&¤tEditor.keyCaptureList.indexOf(e.which)>-1)return;if(e.which==t.ESCAPE){if(!getEditorLock().isActive())return;cancelEditAndSetFocus()}else e.which==t.PAGE_DOWN?(navigatePageDown(),o=!0):e.which==t.PAGE_UP?(navigatePageUp(),o=!0):e.which==t.LEFT?o=navigateLeft():e.which==t.RIGHT?o=navigateRight():e.which==t.UP?o=navigateUp():e.which==t.DOWN?o=navigateDown():e.which==t.TAB?o=navigateNext():e.which==t.ENTER&&(options.editable&&(currentEditor?activeRow===getDataLength()?navigateDown():commitEditAndSetFocus():getEditorLock().commitCurrentEdit()&&makeActiveCellEditable(void 0,void 0,e)),o=!0)}if(o){e.stopPropagation(),e.preventDefault();try{e.originalEvent.keyCode=0}catch(e){}}}function handleClick(e){currentEditor||(e.target!=document.activeElement||$(e.target).hasClass(\"slick-cell\"))&&setFocus();var o=getCellFromEvent(e);if(o&&(null===currentEditor||activeRow!=o.row||activeCell!=o.cell)&&(trigger(self.onClick,{row:o.row,cell:o.cell},e),!e.isImmediatePropagationStopped()&&canCellBeActive(o.row,o.cell)&&(!getEditorLock().isActive()||getEditorLock().commitCurrentEdit()))){scrollRowIntoView(o.row,!1);var t=e.target&&e.target.className===Slick.preClickClassName,n=columns[o.cell],l=!!(options.editable&&n&&n.editor&&options.suppressActiveCellChangeOnEdit);setActiveCellInternal(getCellNode(o.row,o.cell),null,t,l,e)}}function handleContextMenu(e){var o=$(e.target).closest(\".slick-cell\",$canvas);0!==o.length&&(activeCellNode===o[0]&&null!==currentEditor||trigger(self.onContextMenu,{},e))}function handleDblClick(e){var o=getCellFromEvent(e);!o||null!==currentEditor&&activeRow==o.row&&activeCell==o.cell||(trigger(self.onDblClick,{row:o.row,cell:o.cell},e),e.isImmediatePropagationStopped()||options.editable&&gotoCell(o.row,o.cell,!0,e))}function handleHeaderMouseEnter(e){trigger(self.onHeaderMouseEnter,{column:$(this).data(\"column\"),grid:self},e)}function handleHeaderMouseLeave(e){trigger(self.onHeaderMouseLeave,{column:$(this).data(\"column\"),grid:self},e)}function handleHeaderContextMenu(e){var o=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),t=o&&o.data(\"column\");trigger(self.onHeaderContextMenu,{column:t},e)}function handleHeaderClick(e){if(!columnResizeDragging){var o=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),t=o&&o.data(\"column\");t&&trigger(self.onHeaderClick,{column:t},e)}}function handleFooterContextMenu(e){var o=$(e.target).closest(\".slick-footerrow-column\",\".slick-footerrow-columns\"),t=o&&o.data(\"column\");trigger(self.onFooterContextMenu,{column:t},e)}function handleFooterClick(e){var o=$(e.target).closest(\".slick-footerrow-column\",\".slick-footerrow-columns\"),t=o&&o.data(\"column\");trigger(self.onFooterClick,{column:t},e)}function handleMouseEnter(e){trigger(self.onMouseEnter,{},e)}function handleMouseLeave(e){trigger(self.onMouseLeave,{},e)}function cellExists(e,o){return!(e<0||e>=getDataLength()||o<0||o>=columns.length)}function getCellFromPoint(e,o){for(var t=getRowFromPosition(o),n=0,l=0,r=0;r<columns.length&&l<e;r++)l+=columns[r].width,n++;return n<0&&(n=0),{row:t,cell:n-1}}function getCellFromNode(e){var o=/l\\d+/.exec(e.className);if(!o)throw new Error(\"getCellFromNode: cannot get cell - \"+e.className);return parseInt(o[0].substr(1,o[0].length-1),10)}function getRowFromNode(e){for(var o in rowsCache)for(var t in rowsCache[o].rowNode)if(rowsCache[o].rowNode[t]===e)return o?parseInt(o):0;return null}function getFrozenRowOffset(e){return hasFrozenRows?options.frozenBottom?e>=actualFrozenRow?h<viewportTopH?actualFrozenRow*options.rowHeight:h:0:e>=actualFrozenRow?frozenRowsHeight:0:0}function getCellFromEvent(e){var o,t,n=$(e.target).closest(\".slick-cell\",$canvas);if(!n.length)return null;if(o=getRowFromNode(n[0].parentNode),hasFrozenRows){var l=n.parents(\".grid-canvas\").offset(),r=0;n.parents(\".grid-canvas-bottom\").length&&(r=options.frozenBottom?$canvasTopL.height():frozenRowsHeight),o=getCellFromPoint(e.clientX-l.left,e.clientY-l.top+r+$(document).scrollTop()).row}return t=getCellFromNode(n[0]),null==o||null==t?null:{row:o,cell:t}}function getCellNodeBox(e,o){if(!cellExists(e,o))return null;for(var t=getFrozenRowOffset(e),n=getRowTop(e)-t,l=n+options.rowHeight-1,r=0,i=0;i<o;i++)r+=columns[i].width,options.frozenColumn==i&&(r=0);return{top:n,left:r,bottom:l,right:r+columns[o].width}}function resetActiveCell(){setActiveCellInternal(null,!1)}function setFocus(){-1==tabbingDirection?$focusSink[0].focus():$focusSink2[0].focus()}function scrollCellIntoView(e,o,t){if(scrollRowIntoView(e,t),!(o<=options.frozenColumn)){var n=getColspan(e,o);internalScrollColumnIntoView(columnPosLeft[o],columnPosRight[o+(n>1?n-1:0)])}}function internalScrollColumnIntoView(e,o){var t=scrollLeft+$viewportScrollContainerX.width();e<scrollLeft?($viewportScrollContainerX.scrollLeft(e),handleScroll(),render()):o>t&&($viewportScrollContainerX.scrollLeft(Math.min(e,o-$viewportScrollContainerX[0].clientWidth)),handleScroll(),render())}function scrollColumnIntoView(e){internalScrollColumnIntoView(columnPosLeft[e],columnPosRight[e])}function setActiveCellInternal(e,o,t,n,l){null!==activeCellNode&&(makeActiveCellNormal(),$(activeCellNode).removeClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).removeClass(\"active\"));if(null!=(activeCellNode=e)){var r=$(activeCellNode),i=r.offset(),a=Math.floor(r.parents(\".grid-canvas\").offset().top),s=r.parents(\".grid-canvas-bottom\").length;hasFrozenRows&&s&&(a-=options.frozenBottom?$canvasTopL.height():frozenRowsHeight);var d=getCellFromPoint(i.left,Math.ceil(i.top)-a);activeRow=d.row,activeCell=activePosX=activeCell=activePosX=getCellFromNode(activeCellNode),null==o&&(o=activeRow==getDataLength()||options.autoEdit),options.showCellSelection&&(r.addClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).addClass(\"active\")),options.editable&&o&&isCellPotentiallyEditable(activeRow,activeCell)&&(clearTimeout(h_editorLoader),options.asyncEditorLoading?h_editorLoader=setTimeout((function(){makeActiveCellEditable(void 0,t,l)}),options.asyncEditorLoadDelay):makeActiveCellEditable(void 0,t,l))}else activeRow=activeCell=null;n||trigger(self.onActiveCellChanged,getActiveCell())}function clearTextSelection(){if(document.selection&&document.selection.empty)try{document.selection.empty()}catch(e){}else if(window.getSelection){var e=window.getSelection();e&&e.removeAllRanges&&e.removeAllRanges()}}function isCellPotentiallyEditable(e,o){var t=getDataLength();return!(e<t&&!getDataItem(e))&&(!(columns[o].cannotTriggerInsert&&e>=t)&&!!getEditor(e,o))}function makeActiveCellNormal(){if(currentEditor){if(trigger(self.onBeforeCellEditorDestroy,{editor:currentEditor}),currentEditor.destroy(),currentEditor=null,activeCellNode){var e=getDataItem(activeRow);if($(activeCellNode).removeClass(\"editable invalid\"),e){var o=columns[activeCell];applyFormatResultToCellNode(getFormatter(activeRow,o)(activeRow,activeCell,getDataItemValueForColumn(e,o),o,e,self),activeCellNode),invalidatePostProcessingResults(activeRow)}}navigator.userAgent.toLowerCase().match(/msie/)&&clearTextSelection(),getEditorLock().deactivate(editController)}}function makeActiveCellEditable(e,o,t){if(activeCellNode){if(!options.editable)throw new Error(\"Grid : makeActiveCellEditable : should never get called when options.editable is false\");if(clearTimeout(h_editorLoader),isCellPotentiallyEditable(activeRow,activeCell)){var n=columns[activeCell],l=getDataItem(activeRow);if(!1!==trigger(self.onBeforeEditCell,{row:activeRow,cell:activeCell,item:l,column:n})){getEditorLock().activate(editController),$(activeCellNode).addClass(\"editable\");var r=e||getEditor(activeRow,activeCell);e||r.suppressClearOnEdit||(activeCellNode.innerHTML=\"\");var i=data.getItemMetadata&&data.getItemMetadata(activeRow),a=(i=i&&i.columns)&&(i[n.id]||i[activeCell]);currentEditor=new r({grid:self,gridPosition:absBox($container[0]),position:absBox(activeCellNode),container:activeCellNode,column:n,columnMetaData:a,item:l||{},event:t,commitChanges:commitEditAndSetFocus,cancelChanges:cancelEditAndSetFocus}),l&&(currentEditor.loadValue(l),o&¤tEditor.preClick&¤tEditor.preClick()),serializedEditorValue=currentEditor.serializeValue(),currentEditor.position&&handleActiveCellPositionChange()}else setFocus()}}}function commitEditAndSetFocus(){getEditorLock().commitCurrentEdit()&&(setFocus(),options.autoEdit&&navigateDown())}function cancelEditAndSetFocus(){getEditorLock().cancelCurrentEdit()&&setFocus()}function absBox(e){var o={top:e.offsetTop,left:e.offsetLeft,bottom:0,right:0,width:$(e).outerWidth(),height:$(e).outerHeight(),visible:!0};o.bottom=o.top+o.height,o.right=o.left+o.width;for(var t=e.offsetParent;(e=e.parentNode)!=document.body&&null!=e;)o.visible&&e.scrollHeight!=e.offsetHeight&&\"visible\"!=$(e).css(\"overflowY\")&&(o.visible=o.bottom>e.scrollTop&&o.top<e.scrollTop+e.clientHeight),o.visible&&e.scrollWidth!=e.offsetWidth&&\"visible\"!=$(e).css(\"overflowX\")&&(o.visible=o.right>e.scrollLeft&&o.left<e.scrollLeft+e.clientWidth),o.left-=e.scrollLeft,o.top-=e.scrollTop,e===t&&(o.left+=e.offsetLeft,o.top+=e.offsetTop,t=e.offsetParent),o.bottom=o.top+o.height,o.right=o.left+o.width;return o}function getActiveCellPosition(){return absBox(activeCellNode)}function getGridPosition(){return absBox($container[0])}function handleActiveCellPositionChange(){if(activeCellNode&&(trigger(self.onActiveCellPositionChanged,{}),currentEditor)){var e=getActiveCellPosition();currentEditor.show&¤tEditor.hide&&(e.visible?currentEditor.show():currentEditor.hide()),currentEditor.position&¤tEditor.position(e)}}function getCellEditor(){return currentEditor}function getActiveCell(){return activeCellNode?{row:activeRow,cell:activeCell}:null}function getActiveCellNode(){return activeCellNode}function scrollRowIntoView(e,o){if(!hasFrozenRows||!options.frozenBottom&&e>actualFrozenRow-1||options.frozenBottom&&e<actualFrozenRow-1){var t=$viewportScrollContainerY.height(),n=hasFrozenRows&&!options.frozenBottom?e-options.frozenRow:e,l=n*options.rowHeight,r=(n+1)*options.rowHeight-t+(viewportHasHScroll?scrollbarDimensions.height:0);(n+1)*options.rowHeight>scrollTop+t+offset?(scrollTo(o?l:r),render()):n*options.rowHeight<scrollTop+offset&&(scrollTo(o?r:l),render())}}function scrollRowToTop(e){scrollTo(e*options.rowHeight),render()}function scrollPage(e){var o=e*numVisibleRows;if(scrollTo((getRowFromPosition(scrollTop+options.rowHeight-1)+o)*options.rowHeight),render(),options.enableCellNavigation&&null!=activeRow){var t=activeRow+o,n=getDataLengthIncludingAddNew();t>=n&&(t=n-1),t<0&&(t=0);for(var l=0,r=null,i=activePosX;l<=activePosX;)canCellBeActive(t,l)&&(r=l),l+=getColspan(t,l);null!==r?(setActiveCellInternal(getCellNode(t,r)),activePosX=i):resetActiveCell()}}function navigatePageDown(){scrollPage(1)}function navigatePageUp(){scrollPage(-1)}function navigateTop(){navigateToRow(0)}function navigateBottom(){navigateToRow(getDataLength()-1)}function navigateToRow(e){var o=getDataLength();if(!o)return!0;if(e<0?e=0:e>=o&&(e=o-1),scrollCellIntoView(e,0,!0),options.enableCellNavigation&&null!=activeRow){for(var t=0,n=null,l=activePosX;t<=activePosX;)canCellBeActive(e,t)&&(n=t),t+=getColspan(e,t);null!==n?(setActiveCellInternal(getCellNode(e,n)),activePosX=l):resetActiveCell()}return!0}function getColspan(e,o){var t=data.getItemMetadata&&data.getItemMetadata(e);if(!t||!t.columns)return 1;var n=t.columns[columns[o].id]||t.columns[o],l=n&&n.colspan;return l=\"*\"===l?columns.length-o:l||1}function findFirstFocusableCell(e){for(var o=0;o<columns.length;){if(canCellBeActive(e,o))return o;o+=getColspan(e,o)}return null}function findLastFocusableCell(e){for(var o=0,t=null;o<columns.length;)canCellBeActive(e,o)&&(t=o),o+=getColspan(e,o);return t}function gotoRight(e,o,t){if(o>=columns.length)return null;do{o+=getColspan(e,o)}while(o<columns.length&&!canCellBeActive(e,o));return o<columns.length?{row:e,cell:o,posX:o}:null}function gotoLeft(e,o,t){if(o<=0)return null;var n=findFirstFocusableCell(e);if(null===n||n>=o)return null;for(var l,r={row:e,cell:n,posX:n};;){if(!(l=gotoRight(r.row,r.cell,r.posX)))return null;if(l.cell>=o)return r;r=l}}function gotoDown(e,o,t){for(var n,l=getDataLengthIncludingAddNew();;){if(++e>=l)return null;for(n=o=0;o<=t;)n=o,o+=getColspan(e,o);if(canCellBeActive(e,n))return{row:e,cell:n,posX:t}}}function gotoUp(e,o,t){for(var n;;){if(--e<0)return null;for(n=o=0;o<=t;)n=o,o+=getColspan(e,o);if(canCellBeActive(e,n))return{row:e,cell:n,posX:t}}}function gotoNext(e,o,t){if(null==e&&null==o&&canCellBeActive(e=o=t=0,o))return{row:e,cell:o,posX:o};var n=gotoRight(e,o,t);if(n)return n;var l=null,r=getDataLengthIncludingAddNew();for(e===r-1&&e--;++e<r;)if(null!==(l=findFirstFocusableCell(e)))return{row:e,cell:l,posX:l};return null}function gotoPrev(e,o,t){if(null==e&&null==o&&canCellBeActive(e=getDataLengthIncludingAddNew()-1,o=t=columns.length-1))return{row:e,cell:o,posX:o};for(var n,l;!n&&!(n=gotoLeft(e,o,t));){if(--e<0)return null;o=0,null!==(l=findLastFocusableCell(e))&&(n={row:e,cell:l,posX:l})}return n}function gotoRowStart(e,o,t){var n=findFirstFocusableCell(e);return null===n?null:{row:e,cell:n,posX:n}}function gotoRowEnd(e,o,t){var n=findLastFocusableCell(e);return null===n?null:{row:e,cell:n,posX:n}}function navigateRight(){return navigate(\"right\")}function navigateLeft(){return navigate(\"left\")}function navigateDown(){return navigate(\"down\")}function navigateUp(){return navigate(\"up\")}function navigateNext(){return navigate(\"next\")}function navigatePrev(){return navigate(\"prev\")}function navigateRowStart(){return navigate(\"home\")}function navigateRowEnd(){return navigate(\"end\")}function navigate(e){if(!options.enableCellNavigation)return!1;if(!activeCellNode&&\"prev\"!=e&&\"next\"!=e)return!1;if(!getEditorLock().commitCurrentEdit())return!0;setFocus();tabbingDirection={up:-1,down:1,left:-1,right:1,prev:-1,next:1,home:-1,end:1}[e];var o=(0,{up:gotoUp,down:gotoDown,left:gotoLeft,right:gotoRight,prev:gotoPrev,next:gotoNext,home:gotoRowStart,end:gotoRowEnd}[e])(activeRow,activeCell,activePosX);if(o){if(hasFrozenRows&&options.frozenBottom&o.row==getDataLength())return;var t=o.row==getDataLength();return(!options.frozenBottom&&o.row>=actualFrozenRow||options.frozenBottom&&o.row<actualFrozenRow)&&scrollCellIntoView(o.row,o.cell,!t&&options.emulatePagingWhenScrolling),setActiveCellInternal(getCellNode(o.row,o.cell)),activePosX=o.posX,!0}return setActiveCellInternal(getCellNode(activeRow,activeCell)),!1}function getCellNode(e,o){if(rowsCache[e]){ensureCellNodesInRowsCache(e);try{return rowsCache[e].cellNodesByColumnIdx.length>o?rowsCache[e].cellNodesByColumnIdx[o][0]:null}catch(t){return rowsCache[e].cellNodesByColumnIdx[o]}}return null}function setActiveCell(e,o,t,n,l){initialized&&(e>getDataLength()||e<0||o>=columns.length||o<0||options.enableCellNavigation&&(scrollCellIntoView(e,o,!1),setActiveCellInternal(getCellNode(e,o),t,n,l)))}function canCellBeActive(e,o){if(!options.enableCellNavigation||e>=getDataLengthIncludingAddNew()||e<0||o>=columns.length||o<0)return!1;var t=data.getItemMetadata&&data.getItemMetadata(e);if(t&&void 0!==t.focusable)return!!t.focusable;var n=t&&t.columns;return n&&n[columns[o].id]&&void 0!==n[columns[o].id].focusable?!!n[columns[o].id].focusable:n&&n[o]&&void 0!==n[o].focusable?!!n[o].focusable:!!columns[o].focusable}function canCellBeSelected(e,o){if(e>=getDataLength()||e<0||o>=columns.length||o<0)return!1;var t=data.getItemMetadata&&data.getItemMetadata(e);if(t&&void 0!==t.selectable)return!!t.selectable;var n=t&&t.columns&&(t.columns[columns[o].id]||t.columns[o]);return n&&void 0!==n.selectable?!!n.selectable:!!columns[o].selectable}function gotoCell(e,o,t,n){if(initialized&&canCellBeActive(e,o)&&getEditorLock().commitCurrentEdit()){scrollCellIntoView(e,o,!1);var l=getCellNode(e,o),r=columns[o],i=!!(options.editable&&r&&r.editor&&options.suppressActiveCellChangeOnEdit);setActiveCellInternal(l,t||e===getDataLength()||options.autoEdit,null,i,n),currentEditor||setFocus()}}function commitCurrentEdit(){var e=getDataItem(activeRow),o=columns[activeCell];if(currentEditor){if(currentEditor.isValueChanged()){var t=currentEditor.validate();if(t.valid){if(activeRow<getDataLength()){var n={row:activeRow,cell:activeCell,editor:currentEditor,serializedValue:currentEditor.serializeValue(),prevSerializedValue:serializedEditorValue,execute:function(){this.editor.applyValue(e,this.serializedValue),updateRow(this.row),trigger(self.onCellChange,{row:this.row,cell:this.cell,item:e})},undo:function(){this.editor.applyValue(e,this.prevSerializedValue),updateRow(this.row),trigger(self.onCellChange,{row:this.row,cell:this.cell,item:e})}};options.editCommandHandler?(makeActiveCellNormal(),options.editCommandHandler(e,o,n)):(n.execute(),makeActiveCellNormal())}else{var l={};currentEditor.applyValue(l,currentEditor.serializeValue()),makeActiveCellNormal(),trigger(self.onAddNewRow,{item:l,column:o})}return!getEditorLock().isActive()}return $(activeCellNode).removeClass(\"invalid\"),$(activeCellNode).width(),$(activeCellNode).addClass(\"invalid\"),trigger(self.onValidationError,{editor:currentEditor,cellNode:activeCellNode,validationResults:t,row:activeRow,cell:activeCell,column:o}),currentEditor.focus(),!1}makeActiveCellNormal()}return!0}function cancelCurrentEdit(){return makeActiveCellNormal(),!0}function rowsToRanges(e){for(var o=[],t=columns.length-1,n=0;n<e.length;n++)o.push(new Slick.Range(e[n],0,e[n],t));return o}function getSelectedRows(){if(!selectionModel)throw new Error(\"Selection model is not set\");return selectedRows.slice(0)}function setSelectedRows(e){if(!selectionModel)throw new Error(\"Selection model is not set\");self&&self.getEditorLock&&!self.getEditorLock().isActive()&&selectionModel.setSelectedRanges(rowsToRanges(e))}this.debug=function(){var e=\"\";e+=\"\\ncounter_rows_rendered: \"+counter_rows_rendered,e+=\"\\ncounter_rows_removed: \"+counter_rows_removed,e+=\"\\nrenderedRows: \"+renderedRows,e+=\"\\nnumVisibleRows: \"+numVisibleRows,e+=\"\\nmaxSupportedCssHeight: \"+maxSupportedCssHeight,e+=\"\\nn(umber of pages): \"+n,e+=\"\\n(current) page: \"+page,e+=\"\\npage height (ph): \"+ph,e+=\"\\nvScrollDir: \"+vScrollDir,alert(e)},this.eval=function(expr){return eval(expr)},$.extend(this,{slickGridVersion:\"2.4.27\",onScroll:new Slick.Event,onSort:new Slick.Event,onHeaderMouseEnter:new Slick.Event,onHeaderMouseLeave:new Slick.Event,onHeaderContextMenu:new Slick.Event,onHeaderClick:new Slick.Event,onHeaderCellRendered:new Slick.Event,onBeforeHeaderCellDestroy:new Slick.Event,onHeaderRowCellRendered:new Slick.Event,onFooterRowCellRendered:new Slick.Event,onFooterContextMenu:new Slick.Event,onFooterClick:new Slick.Event,onBeforeHeaderRowCellDestroy:new Slick.Event,onBeforeFooterRowCellDestroy:new Slick.Event,onMouseEnter:new Slick.Event,onMouseLeave:new Slick.Event,onClick:new Slick.Event,onDblClick:new Slick.Event,onContextMenu:new Slick.Event,onKeyDown:new Slick.Event,onAddNewRow:new Slick.Event,onBeforeAppendCell:new Slick.Event,onValidationError:new Slick.Event,onViewportChanged:new Slick.Event,onColumnsReordered:new Slick.Event,onColumnsDrag:new Slick.Event,onColumnsResized:new Slick.Event,onBeforeColumnsResize:new Slick.Event,onCellChange:new Slick.Event,onBeforeEditCell:new Slick.Event,onBeforeCellEditorDestroy:new Slick.Event,onBeforeDestroy:new Slick.Event,onActiveCellChanged:new Slick.Event,onActiveCellPositionChanged:new Slick.Event,onDragInit:new Slick.Event,onDragStart:new Slick.Event,onDrag:new Slick.Event,onDragEnd:new Slick.Event,onSelectedRowsChanged:new Slick.Event,onCellCssStylesChanged:new Slick.Event,onAutosizeColumns:new Slick.Event,onRendered:new Slick.Event,onSetOptions:new Slick.Event,registerPlugin,unregisterPlugin,getPluginByName,getColumns,setColumns,getColumnIndex,updateColumnHeader,setSortColumn,setSortColumns,getSortColumns,autosizeColumns,autosizeColumn,getOptions,setOptions,getData,getDataLength,getDataItem,setData,getSelectionModel,setSelectionModel,getSelectedRows,setSelectedRows,getContainerNode,updatePagingStatusFromView,applyFormatResultToCellNode,render,invalidate,invalidateRow,invalidateRows,invalidateAllRows,updateCell,updateRow,getViewport:getVisibleRange,getRenderedRange,resizeCanvas,updateRowCount,scrollRowIntoView,scrollRowToTop,scrollCellIntoView,scrollColumnIntoView,getCanvasNode,getUID,getHeaderColumnWidthDiff,getScrollbarDimensions,getHeadersWidth,getCanvasWidth,getCanvases,getActiveCanvasNode,setActiveCanvasNode,getViewportNode,getActiveViewportNode,setActiveViewportNode,focus:setFocus,scrollTo,getCellFromPoint,getCellFromEvent,getActiveCell,setActiveCell,getActiveCellNode,getActiveCellPosition,resetActiveCell,editActiveCell:makeActiveCellEditable,getCellEditor,getCellNode,getCellNodeBox,canCellBeSelected,canCellBeActive,navigatePrev,navigateNext,navigateUp,navigateDown,navigateLeft,navigateRight,navigatePageUp,navigatePageDown,navigateTop,navigateBottom,navigateRowStart,navigateRowEnd,gotoCell,getTopPanel,setTopPanelVisibility,getPreHeaderPanel,getPreHeaderPanelLeft:getPreHeaderPanel,getPreHeaderPanelRight,setPreHeaderPanelVisibility,getHeader,getHeaderColumn,setHeaderRowVisibility,getHeaderRow,getHeaderRowColumn,setFooterRowVisibility,getFooterRow,getFooterRowColumn,getGridPosition,flashCell,addCellCssStyles,setCellCssStyles,removeCellCssStyles,getCellCssStyles,getFrozenRowOffset,setColumnHeaderVisibility,init:finishInitialization,destroy,getEditorLock,getEditController}),init()}module.exports={Grid:SlickGrid}},\n 481: function _(t,e,a,n,r){\n /*!\n * jquery.event.drag - v 2.3.0\n * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n * Open Source MIT License - http://threedubmedia.com/code/license\n */\n var o=t(474);o.fn.drag=function(t,e,a){var n=\"string\"==typeof t?t:\"\",r=o.isFunction(t)?t:o.isFunction(e)?e:null;return 0!==n.indexOf(\"drag\")&&(n=\"drag\"+n),a=(t==r?e:a)||{},r?this.on(n,a,r):this.trigger(n)};var i=o.event,d=i.special,s=d.drag={defaults:{which:1,distance:0,not:\":input\",handle:null,relative:!1,drop:!0,click:!1},datakey:\"dragdata\",noBubble:!0,add:function(t){var e=o.data(this,s.datakey),a=t.data||{};e.related+=1,o.each(s.defaults,(function(t,n){void 0!==a[t]&&(e[t]=a[t])}))},remove:function(){o.data(this,s.datakey).related-=1},setup:function(){if(!o.data(this,s.datakey)){var t=o.extend({related:0},s.defaults);o.data(this,s.datakey,t),i.add(this,\"touchstart mousedown\",s.init,t),this.attachEvent&&this.attachEvent(\"ondragstart\",s.dontstart)}},teardown:function(){(o.data(this,s.datakey)||{}).related||(o.removeData(this,s.datakey),i.remove(this,\"touchstart mousedown\",s.init),s.textselect(!0),this.detachEvent&&this.detachEvent(\"ondragstart\",s.dontstart))},init:function(t){if(!s.touched){var e,a=t.data;if(!(0!=t.which&&a.which>0&&t.which!=a.which)){var n=o(t.target).attr(\"class\")||\"\";if(!o(t.target).is(a.not)&&n&&-1!==n.toString().indexOf(\"slick\")&&(!a.handle||o(t.target).closest(a.handle,t.currentTarget).length)&&(s.touched=\"touchstart\"==t.type?this:null,a.propagates=1,a.mousedown=this,a.interactions=[s.interaction(this,a)],a.target=t.target,a.pageX=t.pageX,a.pageY=t.pageY,a.dragging=null,e=s.hijack(t,\"draginit\",a),a.propagates))return(e=s.flatten(e))&&e.length&&(a.interactions=[],o.each(e,(function(){a.interactions.push(s.interaction(this,a))}))),a.propagates=a.interactions.length,!1!==a.drop&&d.drop&&d.drop.handler(t,a),s.textselect(!1),s.touched?i.add(s.touched,\"touchmove touchend\",s.handler,a):i.add(document,\"mousemove mouseup\",s.handler,a),!(!s.touched||a.live)&&void 0}}},interaction:function(t,e){var a=t&&t.ownerDocument&&o(t)[e.relative?\"position\":\"offset\"]()||{top:0,left:0};return{drag:t,callback:new s.callback,droppable:[],offset:a}},handler:function(t){var e=t.data;switch(t.type){case!e.dragging&&\"touchmove\":t.preventDefault();case!e.dragging&&\"mousemove\":if(Math.pow(t.pageX-e.pageX,2)+Math.pow(t.pageY-e.pageY,2)<Math.pow(e.distance,2))break;t.target=e.target,s.hijack(t,\"dragstart\",e),e.propagates&&(e.dragging=!0);case\"touchmove\":t.preventDefault();case\"mousemove\":if(e.dragging){if(s.hijack(t,\"drag\",e),e.propagates){!1!==e.drop&&d.drop&&d.drop.handler(t,e);break}t.type=\"mouseup\"}case\"touchend\":case\"mouseup\":default:s.touched?i.remove(s.touched,\"touchmove touchend\",s.handler):i.remove(document,\"mousemove mouseup\",s.handler),e.dragging&&(!1!==e.drop&&d.drop&&d.drop.handler(t,e),s.hijack(t,\"dragend\",e)),s.textselect(!0),!1===e.click&&e.dragging&&o.data(e.mousedown,\"suppress.click\",(new Date).getTime()+5),e.dragging=s.touched=!1}},hijack:function(t,e,a,n,r){if(a){var d,c,l,p={event:t.originalEvent,type:t.type},u=e.indexOf(\"drop\")?\"drag\":\"drop\",g=n||0,h=isNaN(n)?a.interactions.length:n;t.type=e;var f=function(){};t.originalEvent=new o.Event(p.event,{preventDefault:f,stopPropagation:f,stopImmediatePropagation:f}),a.results=[];do{if(c=a.interactions[g]){if(\"dragend\"!==e&&c.cancelled)continue;l=s.properties(t,a,c),c.results=[],o(r||c[u]||a.droppable).each((function(n,r){if(l.target=r,t.isPropagationStopped=function(){return!1},!1===(d=r?i.dispatch.call(r,t,l):null)?(\"drag\"==u&&(c.cancelled=!0,a.propagates-=1),\"drop\"==e&&(c[u][n]=null)):\"dropinit\"==e&&c.droppable.push(s.element(d)||r),\"dragstart\"==e&&(c.proxy=o(s.element(d)||c.drag)[0]),c.results.push(d),delete t.result,\"dropinit\"!==e)return d})),a.results[g]=s.flatten(c.results),\"dropinit\"==e&&(c.droppable=s.flatten(c.droppable)),\"dragstart\"!=e||c.cancelled||l.update()}}while(++g<h);return t.type=p.type,t.originalEvent=p.event,s.flatten(a.results)}},properties:function(t,e,a){var n=a.callback;return n.drag=a.drag,n.proxy=a.proxy||a.drag,n.startX=e.pageX,n.startY=e.pageY,n.deltaX=t.pageX-e.pageX,n.deltaY=t.pageY-e.pageY,n.originalX=a.offset.left,n.originalY=a.offset.top,n.offsetX=n.originalX+n.deltaX,n.offsetY=n.originalY+n.deltaY,n.drop=s.flatten((a.drop||[]).slice()),n.available=s.flatten((a.droppable||[]).slice()),n},element:function(t){if(t&&(t.jquery||1==t.nodeType))return t},flatten:function(t){return o.map(t,(function(t){return t&&t.jquery?o.makeArray(t):t&&t.length?s.flatten(t):t}))},textselect:function(t){o(document)[t?\"off\":\"on\"](\"selectstart\",s.dontstart).css(\"MozUserSelect\",t?\"\":\"none\"),document.unselectable=t?\"off\":\"on\"},dontstart:function(){return!1},callback:function(){}};s.callback.prototype={update:function(){d.drop&&this.available.length&&o.each(this.available,(function(t){d.drop.locate(this,t)}))}};var c=i.dispatch;i.dispatch=function(t){if(!(o.data(this,\"suppress.\"+t.type)-(new Date).getTime()>0))return c.apply(this,arguments);o.removeData(this,\"suppress.\"+t.type)},d.draginit=d.dragstart=d.dragend=s},\n 482: function _(t,e,a,n,i){\n /*!\n * jquery.event.drop - v 2.3.0\n * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n * Open Source MIT License - http://threedubmedia.com/code/license\n */\n var o=t(474);o.fn.drop=function(t,e,a){var n=\"string\"==typeof t?t:\"\",i=o.isFunction(t)?t:o.isFunction(e)?e:null;return 0!==n.indexOf(\"drop\")&&(n=\"drop\"+n),a=(t==i?e:a)||{},i?this.on(n,a,i):this.trigger(n)},o.drop=function(t){t=t||{},d.multi=!0===t.multi?1/0:!1===t.multi?1:isNaN(t.multi)?d.multi:t.multi,d.delay=t.delay||d.delay,d.tolerance=o.isFunction(t.tolerance)?t.tolerance:null===t.tolerance?null:d.tolerance,d.mode=t.mode||d.mode||\"intersect\"};var r=o.event.special,d=o.event.special.drop={multi:1,delay:20,mode:\"overlap\",targets:[],datakey:\"dropdata\",noBubble:!0,add:function(t){o.data(this,d.datakey).related+=1},remove:function(){o.data(this,d.datakey).related-=1},setup:function(){if(!o.data(this,d.datakey)){o.data(this,d.datakey,{related:0,active:[],anyactive:0,winner:0,location:{}}),d.targets.push(this)}},teardown:function(){if(!(o.data(this,d.datakey)||{}).related){o.removeData(this,d.datakey);var t=this;d.targets=o.grep(d.targets,(function(e){return e!==t}))}},handler:function(t,e){var a;if(e)switch(t.type){case\"mousedown\":case\"touchstart\":a=o(d.targets),\"string\"==typeof e.drop&&(a=a.filter(e.drop)),a.each((function(){var t=o.data(this,d.datakey);t.active=[],t.anyactive=0,t.winner=0})),e.droppable=a,r.drag.hijack(t,\"dropinit\",e);break;case\"mousemove\":case\"touchmove\":d.event=t,d.timer||d.tolerate(e);break;case\"mouseup\":case\"touchend\":d.timer=clearTimeout(d.timer),e.propagates&&(r.drag.hijack(t,\"drop\",e),r.drag.hijack(t,\"dropend\",e))}},locate:function(t,e){var a=o.data(t,d.datakey),n=o(t),i=n.length&&!n.is(document)?n.offset():{},r=n.outerHeight(),l=n.outerWidth(),c={elem:t,width:l,height:r,top:i.top,left:i.left,right:i.left+l,bottom:i.top+r};return a&&(a.location=c,a.index=e,a.elem=t),c},contains:function(t,e){return(e[0]||e.left)>=t.left&&(e[0]||e.right)<=t.right&&(e[1]||e.top)>=t.top&&(e[1]||e.bottom)<=t.bottom},modes:{intersect:function(t,e,a){return this.contains(a,[t.pageX,t.pageY])?1e9:this.modes.overlap.apply(this,arguments)},overlap:function(t,e,a){return Math.max(0,Math.min(a.bottom,e.bottom)-Math.max(a.top,e.top))*Math.max(0,Math.min(a.right,e.right)-Math.max(a.left,e.left))},fit:function(t,e,a){return this.contains(a,e)?1:0},middle:function(t,e,a){return this.contains(a,[e.left+.5*e.width,e.top+.5*e.height])?1:0}},sort:function(t,e){return e.winner-t.winner||t.index-e.index},tolerate:function(t){var e,a,n,i,l,c,s,u,p=0,h=t.interactions.length,m=[d.event.pageX,d.event.pageY],f=d.tolerance||d.modes[d.mode];do{if(u=t.interactions[p]){if(!u)return;u.drop=[],l=[],c=u.droppable.length,f&&(n=d.locate(u.proxy)),e=0;do{if(s=u.droppable[e]){if(!(a=(i=o.data(s,d.datakey)).location))continue;i.winner=f?f.call(d,d.event,n,a):d.contains(a,m)?1:0,l.push(i)}}while(++e<c);l.sort(d.sort),e=0;do{(i=l[e])&&(i.winner&&u.drop.length<d.multi?(i.active[p]||i.anyactive||(!1!==r.drag.hijack(d.event,\"dropstart\",t,p,i.elem)[0]?(i.active[p]=1,i.anyactive+=1):i.winner=0),i.winner&&u.drop.push(i.elem)):i.active[p]&&1==i.anyactive&&(r.drag.hijack(d.event,\"dropend\",t,p,i.elem),i.active[p]=0,i.anyactive-=1))}while(++e<c)}}while(++p<h);d.last&&m[0]==d.last.pageX&&m[1]==d.last.pageY?delete d.timer:d.timer=setTimeout((function(){d.tolerate(t)}),d.delay),d.last=d.event}};r.dropinit=r.dropstart=r.dropend=d},\n 483: function _(e,t,n,r,o){var i=e(474),l=e(476);var a={Avg:function(e){this.field_=e,this.init=function(){this.count_=0,this.nonNullCount_=0,this.sum_=0},this.accumulate=function(e){var t=e[this.field_];this.count_++,null==t||\"\"===t||isNaN(t)||(this.nonNullCount_++,this.sum_+=parseFloat(t))},this.storeResult=function(e){e.avg||(e.avg={}),0!==this.nonNullCount_&&(e.avg[this.field_]=this.sum_/this.nonNullCount_)}},Min:function(e){this.field_=e,this.init=function(){this.min_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(null==this.min_||t<this.min_)&&(this.min_=t)},this.storeResult=function(e){e.min||(e.min={}),e.min[this.field_]=this.min_}},Max:function(e){this.field_=e,this.init=function(){this.max_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(null==this.max_||t>this.max_)&&(this.max_=t)},this.storeResult=function(e){e.max||(e.max={}),e.max[this.field_]=this.max_}},Sum:function(e){this.field_=e,this.init=function(){this.sum_=null},this.accumulate=function(e){var t=e[this.field_];null==t||\"\"===t||isNaN(t)||(this.sum_+=parseFloat(t))},this.storeResult=function(e){e.sum||(e.sum={}),e.sum[this.field_]=this.sum_}},Count:function(e){this.field_=e,this.init=function(){},this.storeResult=function(e){e.count||(e.count={}),e.count[this.field_]=e.group.rows.length}}};t.exports={DataView:function(e){var t,n,r,o,a,u=this,s=\"id\",g=[],c=[],f={},h=null,p=null,d=null,m=!1,v=!0,_={},w={},y=[],$=[],C={getter:null,formatter:null,comparer:function(e,t){return e.value===t.value?0:e.value>t.value?1:-1},predefinedValues:[],aggregators:[],aggregateEmpty:!1,aggregateCollapsed:!1,aggregateChildGroups:!1,collapsed:!1,displayTotalsRow:!0,lazyTotalsCalculation:!1},I=[],R=[],x=[],E=\":|:\",M=0,S=0,b=0,F=new l.Event,A=new l.Event,N=new l.Event,G=new l.Event,T=new l.Event,O=new l.Event,P=new l.Event,D=new l.Event;function K(e){for(var t,n=e=e||0,r=g.length;n<r;n++){if(void 0===(t=g[n][s]))throw new Error(\"Each data element must implement a unique 'id' property\");f[t]=n}}function j(){var e=M?Math.max(1,Math.ceil(b/M)):1;return{pageSize:M,pageNum:S,totalRows:b,totalPages:e,dataView:u}}function B(e,r){v=r,n=e,t=null,!1===r&&g.reverse(),g.sort(e),!1===r&&g.reverse(),f={},K(),se()}function z(e,r){v=r,t=e,n=null;var o=Object.prototype.toString;Object.prototype.toString=\"function\"==typeof e?e:function(){return this[e]},!1===r&&g.reverse(),g.sort(),Object.prototype.toString=o,!1===r&&g.reverse(),f={},K(),se()}function V(t){e.groupItemMetadataProvider||(e.groupItemMetadataProvider=new l.Data.GroupItemMetadataProvider),R=[],x=[],I=(t=t||[])instanceof Array?t:[t];for(var n=0;n<I.length;n++){var r=I[n]=i.extend(!0,{},C,I[n]);r.getterIsAFn=\"function\"==typeof r.getter,r.compiledAccumulators=[];for(var o=r.aggregators.length;o--;)r.compiledAccumulators[o]=re(r.aggregators[o]);x[n]={}}se()}function q(){if(!h){h={};for(var e=0,t=c.length;e<t;e++)h[c[e][s]]=e}}function U(e){return g[f[e]]}function L(e,t){if(void 0===f[e])throw new Error(\"Invalid id\");if(e!==t[s]){var n=t[s];if(null==n)throw new Error(\"Cannot update item to associate with a null id\");if(void 0!==f[n])throw new Error(\"Cannot update item to associate with a non-unique id\");f[n]=f[e],delete f[e],d&&d[e]&&delete d[e],e=n}g[f[e]]=t,d||(d={}),d[e]=!0,se()}function k(e,t){g.splice(e,0,t),K(e),se()}function H(e){var t=f[e];if(void 0===t)throw new Error(\"Invalid id\");delete f[e],g.splice(t,1),K(t),se()}function W(e){if(!n)throw new Error(\"sortedAddItem() requires a sort comparer, use sort()\");k(function(e){var t=0,r=g.length;for(;t<r;){var o=t+r>>>1;-1===n(g[o],e)?t=o+1:r=o}return t}(e),e)}function J(e,t){if(null==e)for(var n=0;n<I.length;n++)x[n]={},I[n].collapsed=t,!0===t?D.notify({level:n,groupingKey:null}):P.notify({level:n,groupingKey:null});else x[e]={},I[e].collapsed=t,!0===t?D.notify({level:e,groupingKey:null}):P.notify({level:e,groupingKey:null});se()}function Q(e,t,n){x[e][t]=I[e].collapsed^n,se()}function X(e,t){for(var n,r,o,i=[],a={},u=t?t.level+1:0,s=I[u],g=0,c=s.predefinedValues.length;g<c;g++)(n=a[r=s.predefinedValues[g]])||((n=new l.Group).value=r,n.level=u,n.groupingKey=(t?t.groupingKey+E:\"\")+r,i[i.length]=n,a[r]=n);for(g=0,c=e.length;g<c;g++)o=e[g],(n=a[r=s.getterIsAFn?s.getter(o):o[s.getter]])||((n=new l.Group).value=r,n.level=u,n.groupingKey=(t?t.groupingKey+E:\"\")+r,i[i.length]=n,a[r]=n),n.rows[n.count++]=o;if(u<I.length-1)for(g=0;g<i.length;g++)(n=i[g]).groups=X(n.rows,n);return i.length&&ee(i,u),i.sort(I[u].comparer),i}function Y(e){var t,n=e.group,r=I[n.level],o=n.level==I.length,i=r.aggregators.length;if(!o&&r.aggregateChildGroups)for(var l=n.groups.length;l--;)n.groups[l].totals.initialized||Y(n.groups[l].totals);for(;i--;)(t=r.aggregators[i]).init(),!o&&r.aggregateChildGroups?r.compiledAccumulators[i].call(t,n.groups):r.compiledAccumulators[i].call(t,n.rows),t.storeResult(e);e.initialized=!0}function Z(e){var t=I[e.level],n=new l.GroupTotals;n.group=e,e.totals=n,t.lazyTotalsCalculation||Y(n)}function ee(e,t){for(var n,r=I[t=t||0],o=r.collapsed,i=x[t],l=e.length;l--;)(n=e[l]).collapsed&&!r.aggregateCollapsed||(n.groups&&ee(n.groups,t+1),r.aggregators.length&&(r.aggregateEmpty||n.rows.length||n.groups&&n.groups.length)&&Z(n),n.collapsed=o^i[n.groupingKey],n.title=r.formatter?r.formatter(n):n.value)}function te(e,t){for(var n,r,o=I[t=t||0],i=[],l=0,a=0,u=e.length;a<u;a++){if(r=e[a],i[l++]=r,!r.collapsed)for(var s=0,g=(n=r.groups?te(r.groups,t+1):r.rows).length;s<g;s++)i[l++]=n[s];r.totals&&o.displayTotalsRow&&(!r.collapsed||o.aggregateCollapsed)&&(i[l++]=r.totals)}return i}function ne(e){var t=e.toString().indexOf(\"function\")>=0?/^function[^(]*\\(([^)]*)\\)\\s*{([\\s\\S]*)}$/:/^[^(]*\\(([^)]*)\\)\\s*{([\\s\\S]*)}$/,n=e.toString().match(t);return{params:n[1].split(\",\"),body:n[2]}}function re(e){if(e.accumulate){var t=ne(e.accumulate),n=new Function(\"_items\",\"for (var \"+t.params[0]+\", _i=0, _il=_items.length; _i<_il; _i++) {\"+t.params[0]+\" = _items[_i]; \"+t.body+\"}\"),r=\"compiledAccumulatorLoop\";return n.displayName=r,n.name=oe(n,r),n}return function(){}}function oe(e,t){try{Object.defineProperty(e,\"name\",{writable:!0,value:t})}catch(n){e.name=t}}function ie(e,t){for(var n=[],r=0,o=0,i=e.length;o<i;o++)p(e[o],t)&&(n[r++]=e[o]);return n}function le(e,t,n){for(var r,o=[],i=0,l=0,a=e.length;l<a;l++)r=e[l],n[l]?o[i++]=r:p(r,t)&&(o[i++]=r,n[l]=!0);return o}function ae(t){if(p){var n=e.inlineFilters?o:ie,i=e.inlineFilters?a:le;_.isFilterNarrowing?y=n(y,r):_.isFilterExpanding?y=i(t,r,$):_.isFilterUnchanged||(y=n(t,r))}else y=M?t:t.concat();var l;return M?(y.length<=S*M&&(S=0===y.length?0:Math.floor((y.length-1)/M)),l=y.slice(M*S,M*S+M)):l=y,{totalRows:y.length,rows:l}}function ue(e){h=null,_.isFilterNarrowing==w.isFilterNarrowing&&_.isFilterExpanding==w.isFilterExpanding||($=[]);var t=ae(e);b=t.totalRows;var n=t.rows;R=[],I.length&&(R=X(n)).length&&(n=te(R));var r=function(e,t){var n,r,o,i=[],l=0,a=Math.max(t.length,e.length);_&&_.ignoreDiffsBefore&&(l=Math.max(0,Math.min(t.length,_.ignoreDiffsBefore))),_&&_.ignoreDiffsAfter&&(a=Math.min(t.length,Math.max(0,_.ignoreDiffsAfter)));for(var u=l,g=e.length;u<a;u++)u>=g?i[i.length]=u:(n=t[u],r=e[u],(!n||I.length&&(o=n.__nonDataRow||r.__nonDataRow)&&n.__group!==r.__group||n.__group&&!n.equals(r)||o&&(n.__groupTotals||r.__groupTotals)||n[s]!=r[s]||d&&d[n[s]])&&(i[i.length]=u));return i}(c,n);return c=n,r}function se(){if(!m){var e=i.extend(!0,{},j()),t=c.length,n=b,r=ue(g);M&&b<S*M&&(S=Math.max(0,Math.ceil(b/M)-1),r=ue(g)),d=null,w=_,_={},n!==b&&(T.notify(e,null,u),O.notify(j(),null,u)),t!==c.length&&A.notify({previous:t,current:c.length,dataView:u,callingOnRowsChanged:r.length>0},null,u),r.length>0&&N.notify({rows:r,dataView:u,calledOnRowCountChanged:t!==c.length},null,u),(t!==c.length||r.length>0)&&G.notify({rowsDiff:r,previousRowCount:t,currentRowCount:c.length,rowCountChanged:t!==c.length,rowsChanged:r.length>0,dataView:u},null,u)}}e=i.extend(!0,{},{groupItemMetadataProvider:null,inlineFilters:!1},e),i.extend(this,{beginUpdate:function(){m=!0},endUpdate:function(){m=!1,se()},setPagingOptions:function(e){T.notify(j(),null,u),null!=e.pageSize&&(M=e.pageSize,S=M?Math.min(S,Math.max(0,Math.ceil(b/M)-1)):0),null!=e.pageNum&&(S=Math.min(e.pageNum,Math.max(0,Math.ceil(b/M)-1))),O.notify(j(),null,u),se()},getPagingInfo:j,getIdPropertyName:function(){return s},getItems:function(){return g},setItems:function(e,t){void 0!==t&&(s=t),g=y=e,f={},K(),function(){for(var e,t=0,n=g.length;t<n;t++)if(void 0===(e=g[t][s])||f[e]!==t)throw new Error(\"Each data element must implement a unique 'id' property\")}(),se(),F.notify({idProperty:t},null,u)},setFilter:function(t){p=t,e.inlineFilters&&(o=function(){var e=ne(p),t=\"{ continue _coreloop; }$1\",n=\"{ _retval[_idx++] = $item$; continue _coreloop; }$1\",r=e.body.replace(/return false\\s*([;}]|\\}|$)/gi,t).replace(/return!1([;}]|\\}|$)/gi,t).replace(/return true\\s*([;}]|\\}|$)/gi,n).replace(/return!0([;}]|\\}|$)/gi,n).replace(/return ([^;}]+?)\\s*([;}]|$)/gi,\"{ if ($1) { _retval[_idx++] = $item$; }; continue _coreloop; }$2\"),o=[\"var _retval = [], _idx = 0; \",\"var $item$, $args$ = _args; \",\"_coreloop: \",\"for (var _i = 0, _il = _items.length; _i < _il; _i++) { \",\"$item$ = _items[_i]; \",\"$filter$; \",\"} \",\"return _retval; \"].join(\"\");o=(o=(o=o.replace(/\\$filter\\$/gi,r)).replace(/\\$item\\$/gi,e.params[0])).replace(/\\$args\\$/gi,e.params[1]);var i=new Function(\"_items,_args\",o),l=\"compiledFilter\";return i.displayName=l,i.name=oe(i,l),i}(),a=function(){var e=ne(p),t=\"{ continue _coreloop; }$1\",n=\"{ _cache[_i] = true;_retval[_idx++] = $item$; continue _coreloop; }$1\",r=e.body.replace(/return false\\s*([;}]|\\}|$)/gi,t).replace(/return!1([;}]|\\}|$)/gi,t).replace(/return true\\s*([;}]|\\}|$)/gi,n).replace(/return!0([;}]|\\}|$)/gi,n).replace(/return ([^;}]+?)\\s*([;}]|$)/gi,\"{ if ((_cache[_i] = $1)) { _retval[_idx++] = $item$; }; continue _coreloop; }$2\"),o=[\"var _retval = [], _idx = 0; \",\"var $item$, $args$ = _args; \",\"_coreloop: \",\"for (var _i = 0, _il = _items.length; _i < _il; _i++) { \",\"$item$ = _items[_i]; \",\"if (_cache[_i]) { \",\"_retval[_idx++] = $item$; \",\"continue _coreloop; \",\"} \",\"$filter$; \",\"} \",\"return _retval; \"].join(\"\");o=(o=(o=o.replace(/\\$filter\\$/gi,r)).replace(/\\$item\\$/gi,e.params[0])).replace(/\\$args\\$/gi,e.params[1]);var i=new Function(\"_items,_args,_cache\",o),l=\"compiledFilterWithCaching\";return i.displayName=l,i.name=oe(i,l),i}()),se()},getFilter:function(){return p},getFilteredItems:function(){return y},sort:B,fastSort:z,reSort:function(){n?B(n,v):t&&z(t,v)},setGrouping:V,getGrouping:function(){return I},groupBy:function(e,t,n){V(null!=e?{getter:e,formatter:t,comparer:n}:[])},setAggregators:function(e,t){if(!I.length)throw new Error(\"At least one grouping must be specified before calling setAggregators().\");I[0].aggregators=e,I[0].aggregateCollapsed=t,V(I)},collapseAllGroups:function(e){J(e,!0)},expandAllGroups:function(e){J(e,!1)},collapseGroup:function(e){var t,n,r=Array.prototype.slice.call(arguments),o=r[0];1===r.length&&-1!==o.indexOf(E)?(t=o,n=o.split(E).length-1):(t=r.join(E),n=r.length-1),Q(n,t,!0),D.notify({level:n,groupingKey:t})},expandGroup:function(e){var t,n,r=Array.prototype.slice.call(arguments),o=r[0];1===r.length&&-1!==o.indexOf(E)?(n=o.split(E).length-1,t=o):(n=r.length-1,t=r.join(E)),Q(n,t,!1),P.notify({level:n,groupingKey:t})},getGroups:function(){return R},getIdxById:function(e){return f[e]},getRowByItem:function(e){return q(),h[e[s]]},getRowById:function(e){return q(),h[e]},getItemById:U,getItemByIdx:function(e){return g[e]},mapItemsToRows:function(e){var t=[];q();for(var n=0,r=e.length;n<r;n++){var o=h[e[n][s]];null!=o&&(t[t.length]=o)}return t},mapRowsToIds:function(e){for(var t=[],n=0,r=e.length;n<r;n++)e[n]<c.length&&(t[t.length]=c[e[n]][s]);return t},mapIdsToRows:function(e){var t=[];q();for(var n=0,r=e.length;n<r;n++){var o=h[e[n]];null!=o&&(t[t.length]=o)}return t},setRefreshHints:function(e){_=e},setFilterArgs:function(e){r=e},refresh:se,updateItem:L,insertItem:k,addItem:function(e){g.push(e),K(g.length-1),se()},deleteItem:H,sortedAddItem:W,sortedUpdateItem:function(e,t){if(void 0===f[e]||e!==t[s])throw new Error(\"Invalid or non-matching id \"+f[e]);if(!n)throw new Error(\"sortedUpdateItem() requires a sort comparer, use sort()\");var r=U(e);0!==n(r,t)?(H(e),W(t)):L(e,t)},syncGridSelection:function(e,t,n){var r,o=this,a=o.mapRowsToIds(e.getSelectedRows()),u=new l.Event;function s(t){a.join(\",\")!=t.join(\",\")&&(a=t,u.notify({grid:e,ids:a,dataView:o},new l.EventData,o))}return e.onSelectedRowsChanged.subscribe((function(t,l){if(!r){var u=o.mapRowsToIds(e.getSelectedRows());if(n&&e.getOptions().multiSelect)s(i.grep(a,(function(e){return void 0===o.getRowById(e)})).concat(u));else s(u)}})),this.onRowsOrCountChanged.subscribe((function(){if(a.length>0){r=!0;var n=o.mapIdsToRows(a);t||s(o.mapRowsToIds(n)),e.setSelectedRows(n),r=!1}})),u},syncGridCellCssStyles:function(e,t){var n,r;function o(e){for(var t in n={},e){var r=c[t][s];n[r]=e[t]}}function i(){if(n){r=!0,q();var o={};for(var i in n){var l=h[i];null!=l&&(o[l]=n[i])}e.setCellCssStyles(t,o),r=!1}}o(e.getCellCssStyles(t)),e.onCellCssStylesChanged.subscribe((function(n,l){r||t==l.key&&(l.hash?o(l.hash):(e.onCellCssStylesChanged.unsubscribe(),u.onRowsOrCountChanged.unsubscribe(i)))})),this.onRowsOrCountChanged.subscribe(i)},getLength:function(){return c.length},getItem:function(e){var t=c[e];if(t&&t.__group&&t.totals&&!t.totals.initialized){var n=I[t.level];n.displayTotalsRow||(Y(t.totals),t.title=n.formatter?n.formatter(t):t.value)}else t&&t.__groupTotals&&!t.initialized&&Y(t);return t},getItemMetadata:function(t){var n=c[t];return void 0===n?null:n.__group?e.groupItemMetadataProvider.getGroupRowMetadata(n):n.__groupTotals?e.groupItemMetadataProvider.getTotalsRowMetadata(n):null},onSetItemsCalled:F,onRowCountChanged:A,onRowsChanged:N,onRowsOrCountChanged:G,onBeforePagingInfoChanged:T,onPagingInfoChanged:O,onGroupExpanded:P,onGroupCollapsed:D})},Aggregators:a,Data:{Aggregators:a}}},\n 484: function _(e,t,i,n,o){var l=e(474),a=e(476);function s(e){var t,i;function n(){var t=e.column.editorFixedDecimalPlaces;return void 0===t&&(t=s.DefaultDecimalPlaces),t||0===t?t:null}this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=l(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?u:c).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(o){i=o[e.column.field];var l=n();null!==l&&(i||0===i)&&i.toFixed&&(i=i.toFixed(l)),t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){var e=parseFloat(t.val());s.AllowEmptyValue?e||0===e||(e=\"\"):e=e||0;var i=n();return null!==i&&(e||0===e)&&e.toFixed&&(e=parseFloat(e.toFixed(i))),e},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(isNaN(t.val()))return{valid:!1,msg:\"Please enter a valid number\"};if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()}function u(e){var t=this.selectionStart,i=this.value.length;(e.keyCode===a.keyCode.LEFT&&t>0||e.keyCode===a.keyCode.RIGHT&&t<i-1)&&e.stopImmediatePropagation()}function c(e){e.keyCode!==a.keyCode.LEFT&&e.keyCode!==a.keyCode.RIGHT||e.stopImmediatePropagation()}s.DefaultDecimalPlaces=null,s.AllowEmptyValue=!1,t.exports={Editors:{Text:function(e){var t,i;this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=l(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?u:c).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.getValue=function(){return t.val()},this.setValue=function(e){t.val(e)},this.loadValue=function(n){i=n[e.column.field]||\"\",t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},Integer:function(e){var t,i;this.init=function(){var i=e.grid.getOptions().editorCellNavOnLRKeys;t=l(\"<INPUT type=text class='editor-text' />\").appendTo(e.container).on(\"keydown.nav\",i?u:c).focus().select()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field],t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return parseInt(t.val(),10)||0},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(isNaN(t.val()))return{valid:!1,msg:\"Please enter a valid integer\"};if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},Float:s,Date:function(e){var t,i,n=!1;this.init=function(){(t=l(\"<INPUT type=text class='editor-text' />\")).appendTo(e.container),t.focus().select(),t.datepicker({showOn:\"button\",buttonImageOnly:!0,beforeShow:function(){n=!0},onClose:function(){n=!1}}),t.width(t.width()-18)},this.destroy=function(){l.datepicker.dpDiv.stop(!0,!0),t.datepicker(\"hide\"),t.datepicker(\"destroy\"),t.remove()},this.show=function(){n&&l.datepicker.dpDiv.stop(!0,!0).show()},this.hide=function(){n&&l.datepicker.dpDiv.stop(!0,!0).hide()},this.position=function(e){n&&l.datepicker.dpDiv.css(\"top\",e.top+30).css(\"left\",e.left)},this.focus=function(){t.focus()},this.loadValue=function(n){i=n[e.column.field],t.val(i),t[0].defaultValue=i,t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==i)&&t.val()!=i},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()},YesNoSelect:function(e){var t,i;this.init=function(){(t=l(\"<SELECT tabIndex='0' class='editor-yesno'><OPTION value='yes'>Yes</OPTION><OPTION value='no'>No</OPTION></SELECT>\")).appendTo(e.container),t.focus()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){t.val((i=n[e.column.field])?\"yes\":\"no\"),t.select()},this.serializeValue=function(){return\"yes\"==t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return t.val()!=i},this.validate=function(){return{valid:!0,msg:null}},this.init()},Checkbox:function(e){var t,i;this.init=function(){(t=l(\"<INPUT type=checkbox value='true' class='editor-checkbox' hideFocus>\")).appendTo(e.container),t.focus()},this.destroy=function(){t.remove()},this.focus=function(){t.focus()},this.loadValue=function(n){(i=!!n[e.column.field])?t.prop(\"checked\",!0):t.prop(\"checked\",!1)},this.preClick=function(){t.prop(\"checked\",!t.prop(\"checked\"))},this.serializeValue=function(){return t.prop(\"checked\")},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return this.serializeValue()!==i},this.validate=function(){return{valid:!0,msg:null}},this.init()},PercentComplete:function(e){var t,i,n;this.init=function(){(t=l(\"<INPUT type=text class='editor-percentcomplete' />\")).width(l(e.container).innerWidth()-25),t.appendTo(e.container),(i=l(\"<div class='editor-percentcomplete-picker' />\").appendTo(e.container)).append(\"<div class='editor-percentcomplete-helper'><div class='editor-percentcomplete-wrapper'><div class='editor-percentcomplete-slider' /><div class='editor-percentcomplete-buttons' /></div></div>\"),i.find(\".editor-percentcomplete-buttons\").append(\"<button val=0>Not started</button><br/><button val=50>In Progress</button><br/><button val=100>Complete</button>\"),t.focus().select(),i.find(\".editor-percentcomplete-slider\").slider({orientation:\"vertical\",range:\"min\",value:n,slide:function(e,i){t.val(i.value)}}),i.find(\".editor-percentcomplete-buttons button\").on(\"click\",(function(e){t.val(l(this).attr(\"val\")),i.find(\".editor-percentcomplete-slider\").slider(\"value\",l(this).attr(\"val\"))}))},this.destroy=function(){t.remove(),i.remove()},this.focus=function(){t.focus()},this.loadValue=function(i){t.val(n=i[e.column.field]),t.select()},this.serializeValue=function(){return parseInt(t.val(),10)||0},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==n)&&(parseInt(t.val(),10)||0)!=n},this.validate=function(){return isNaN(parseInt(t.val(),10))?{valid:!1,msg:\"Please enter a valid positive number\"}:{valid:!0,msg:null}},this.init()},LongText:function(e){var t,i,n,o=this;this.init=function(){var n=l(\"body\");e.grid.getOptions().editorCellNavOnLRKeys;i=l(\"<DIV style='z-index:10000;position:absolute;background:white;padding:5px;border:3px solid gray; -moz-border-radius:10px; border-radius:10px;'/>\").appendTo(n),t=l(\"<TEXTAREA hidefocus rows=5 style='background:white;width:250px;height:80px;border:0;outline:0'>\").appendTo(i),l(\"<DIV style='text-align:right'><BUTTON>Save</BUTTON><BUTTON>Cancel</BUTTON></DIV>\").appendTo(i),i.find(\"button:first\").on(\"click\",this.save),i.find(\"button:last\").on(\"click\",this.cancel),t.on(\"keydown\",this.handleKeyDown),o.position(e.position),t.focus().select()},this.handleKeyDown=function(t){if(t.which==a.keyCode.ENTER&&t.ctrlKey)o.save();else if(t.which==a.keyCode.ESCAPE)t.preventDefault(),o.cancel();else if(t.which==a.keyCode.TAB&&t.shiftKey)t.preventDefault(),e.grid.navigatePrev();else if(t.which==a.keyCode.TAB)t.preventDefault(),e.grid.navigateNext();else if((t.which==a.keyCode.LEFT||t.which==a.keyCode.RIGHT)&&e.grid.getOptions().editorCellNavOnLRKeys){var i=this.selectionStart,n=this.value.length;t.keyCode===a.keyCode.LEFT&&0===i&&e.grid.navigatePrev(),t.keyCode===a.keyCode.RIGHT&&i>=n-1&&e.grid.navigateNext()}},this.save=function(){e.commitChanges()},this.cancel=function(){t.val(n),e.cancelChanges()},this.hide=function(){i.hide()},this.show=function(){i.show()},this.position=function(e){i.css(\"top\",e.top-5).css(\"left\",e.left-5)},this.destroy=function(){i.remove()},this.focus=function(){t.focus()},this.loadValue=function(i){t.val(n=i[e.column.field]),t.select()},this.serializeValue=function(){return t.val()},this.applyValue=function(t,i){t[e.column.field]=i},this.isValueChanged=function(){return!(\"\"===t.val()&&null==n)&&t.val()!=n},this.validate=function(){if(e.column.validator){var i=e.column.validator(t.val());if(!i.valid)return i}return{valid:!0,msg:null}},this.init()}}}},\n 485: function _(e,n,r,t,c){e(476);n.exports={Formatters:{PercentComplete:function(e,n,r,t,c){return null==r||\"\"===r?\"-\":r<50?\"<span style='color:red;font-weight:bold;'>\"+r+\"%</span>\":\"<span style='color:green'>\"+r+\"%</span>\"},PercentCompleteBar:function(e,n,r,t,c){return null==r||\"\"===r?\"\":\"<span class='percent-complete-bar' style='background:\"+(r<30?\"red\":r<70?\"silver\":\"green\")+\";width:\"+r+\"%'></span>\"},YesNo:function(e,n,r,t,c){return r?\"Yes\":\"No\"},Checkmark:function(e,n,r,t,c){return r?\"<img src='../images/tick.png'>\":\"\"},Checkbox:function(e,n,r,t,c){return'<img class=\"slick-edit-preclick\" src=\"../images/'+(r?\"CheckboxY\":\"CheckboxN\")+'.png\">'}}}},\n 486: function _(t,o,r,e,n){var a=t(474),l=t(476);o.exports={RemoteModel:function(){var t=50,o={length:0},r=\"\",e=null,n=1,i=null,s=null,u=new l.Event,f=new l.Event;function c(){for(var t in o)delete o[t];o.length=0}function h(l,c){if(s){s.abort();for(var h=s.fromPage;h<=s.toPage;h++)o[h*t]=void 0}l<0&&(l=0),o.length>0&&(c=Math.min(c,o.length-1));for(var v=Math.floor(l/t),m=Math.floor(c/t);void 0!==o[v*t]&&v<m;)v++;for(;void 0!==o[m*t]&&v<m;)m--;if(v>m||v==m&&void 0!==o[v*t])f.notify({from:l,to:c});else{var g=\"http://octopart.com/api/v3/parts/search?apikey=68b25f31&include[]=short_description&show[]=uid&show[]=manufacturer&show[]=mpn&show[]=brand&show[]=octopart_url&show[]=short_description&q=\"+r+\"&start=\"+v*t+\"&limit=\"+((m-v)*t+t);null!=e&&(g+=\"&sortby=\"+e+(n>0?\"+asc\":\"+desc\")),null!=i&&clearTimeout(i),i=setTimeout((function(){for(var r=v;r<=m;r++)o[r*t]=null;u.notify({from:l,to:c}),(s=a.jsonp({url:g,callbackParameter:\"callback\",cache:!0,success:d,error:function(){!function(t,o){alert(\"error loading pages \"+t+\" to \"+o)}(v,m)}})).fromPage=v,s.toPage=m}),50)}}function d(t){var r=t.request.start,e=r+t.results.length;o.length=Math.min(parseInt(t.hits),1e3);for(var n=0;n<t.results.length;n++){var a=t.results[n].item;o[r+n]=a,o[r+n].index=r+n}s=null,f.notify({from:r,to:e})}return{data:o,clear:c,isDataLoaded:function(t,r){for(var e=t;e<=r;e++)if(null==o[e]||null==o[e])return!1;return!0},ensureData:h,reloadData:function(t,r){for(var e=t;e<=r;e++)delete o[e];h(t,r)},setSort:function(t,o){e=t,n=o,c()},setSearch:function(t){r=t,c()},onDataLoading:u,onDataLoaded:f}}}},\n 487: function _(e,s,t,o,l){var a=e(474),r=e(476);s.exports={GroupItemMetadataProvider:function(e){var s,t={checkboxSelect:!1,checkboxSelectCssClass:\"slick-group-select-checkbox\",checkboxSelectPlugin:null,groupCssClass:\"slick-group\",groupTitleCssClass:\"slick-group-title\",totalsCssClass:\"slick-group-totals\",groupFocusable:!0,totalsFocusable:!1,toggleCssClass:\"slick-group-toggle\",toggleExpandedCssClass:\"expanded\",toggleCollapsedCssClass:\"collapsed\",enableExpandCollapse:!0,groupFormatter:function(e,s,t,l,a,r){if(!o.enableExpandCollapse)return a.title;var c=15*a.level+\"px\";return(o.checkboxSelect?'<span class=\"'+o.checkboxSelectCssClass+\" \"+(a.selectChecked?\"checked\":\"unchecked\")+'\"></span>':\"\")+\"<span class='\"+o.toggleCssClass+\" \"+(a.collapsed?o.toggleCollapsedCssClass:o.toggleExpandedCssClass)+\"' style='margin-left:\"+c+\"'></span><span class='\"+o.groupTitleCssClass+\"' level='\"+a.level+\"'>\"+a.title+\"</span>\"},totalsFormatter:function(e,s,t,o,l,a){return o.groupTotalsFormatter&&o.groupTotalsFormatter(l,o,a)||\"\"},includeHeaderTotals:!1},o=a.extend(!0,{},t,e);function l(e,t){var l=a(e.target),c=this.getDataItem(t.row);if(c&&c instanceof r.Group&&l.hasClass(o.toggleCssClass)){var n=s.getRenderedRange();this.getData().setRefreshHints({ignoreDiffsBefore:n.top,ignoreDiffsAfter:n.bottom+1}),c.collapsed?this.getData().expandGroup(c.groupingKey):this.getData().collapseGroup(c.groupingKey),e.stopImmediatePropagation(),e.preventDefault()}if(c&&c instanceof r.Group&&l.hasClass(o.checkboxSelectCssClass)){c.selectChecked=!c.selectChecked,l.removeClass(c.selectChecked?\"unchecked\":\"checked\"),l.addClass(c.selectChecked?\"checked\":\"unchecked\");var i=s.getData().mapItemsToRows(c.rows);(c.selectChecked?o.checkboxSelectPlugin.selectRows:o.checkboxSelectPlugin.deSelectRows)(i)}}function c(e,t){if(o.enableExpandCollapse&&e.which==r.keyCode.SPACE){var l=this.getActiveCell();if(l){var a=this.getDataItem(l.row);if(a&&a instanceof r.Group){var c=s.getRenderedRange();this.getData().setRefreshHints({ignoreDiffsBefore:c.top,ignoreDiffsAfter:c.bottom+1}),a.collapsed?this.getData().expandGroup(a.groupingKey):this.getData().collapseGroup(a.groupingKey),e.stopImmediatePropagation(),e.preventDefault()}}}}return{init:function(e){(s=e).onClick.subscribe(l),s.onKeyDown.subscribe(c)},destroy:function(){s&&(s.onClick.unsubscribe(l),s.onKeyDown.unsubscribe(c))},getGroupRowMetadata:function(e){var s=e&&e.level;return{selectable:!1,focusable:o.groupFocusable,cssClasses:o.groupCssClass+\" slick-group-level-\"+s,formatter:o.includeHeaderTotals&&o.totalsFormatter,columns:{0:{colspan:o.includeHeaderTotals?\"1\":\"*\",formatter:o.groupFormatter,editor:null}}}},getTotalsRowMetadata:function(e){var s=e&&e.group&&e.group.level;return{selectable:!1,focusable:o.totalsFocusable,cssClasses:o.totalsCssClass+\" slick-group-level-\"+s,formatter:o.totalsFormatter,editor:null}},getOptions:function(){return o},setOptions:function(e){a.extend(!0,o,e)}}}}},\n 488: function _(i,t,e,o,n){o();const s=i(322),r=i(20);class d extends s.HTMLBoxView{_width_policy(){return\"horizontal\"==this.model.orientation?super._width_policy():\"fixed\"}_height_policy(){return\"horizontal\"==this.model.orientation?\"fixed\":super._height_policy()}box_sizing(){const i=super.box_sizing();return\"horizontal\"==this.model.orientation?null==i.width&&(i.width=this.model.default_size):null==i.height&&(i.height=this.model.default_size),i}}e.WidgetView=d,d.__name__=\"WidgetView\";class _ extends s.HTMLBox{constructor(i){super(i)}static init_Widget(){this.define((({Number:i})=>({orientation:[r.Orientation,\"horizontal\"],default_size:[i,300]}))),this.override({margin:[5,5,5,5]})}}e.Widget=_,_.__name__=\"Widget\",_.init_Widget()},\n 489: function _(e,i,t,s,n){s();const c=e(488),u=e(130),a=e(120);class o extends c.Widget{constructor(e){super(e)}static init_TableWidget(){this.define((({Ref:e})=>({source:[e(u.ColumnDataSource),()=>new u.ColumnDataSource],view:[e(a.CDSView),()=>new a.CDSView]})))}initialize(){super.initialize(),null==this.view.source&&(this.view.source=this.source,this.view.compute_indices())}}t.TableWidget=o,o.__name__=\"TableWidget\",o.init_TableWidget()},\n 490: function _(t,e,i,r,o){r();const l=t(469),n=t(466),d=t(34),a=t(20),s=t(53);class u extends s.Model{constructor(t){super(t)}static init_TableColumn(){this.define((({Boolean:t,Number:e,String:i,Nullable:r,Ref:o})=>({field:[i],title:[r(i),null],width:[e,300],formatter:[o(l.StringFormatter),()=>new l.StringFormatter],editor:[o(n.StringEditor),()=>new n.StringEditor],sortable:[t,!0],default_sort:[a.Sort,\"ascending\"]})))}toColumn(){var t;return{id:d.uniqueId(),field:this.field,name:null!==(t=this.title)&&void 0!==t?t:this.field,width:this.width,formatter:null!=this.formatter?this.formatter.doFormat.bind(this.formatter):void 0,model:this.editor,editor:this.editor.default_view,sortable:this.sortable,defaultSortAsc:\"ascending\"==this.default_sort}}}i.TableColumn=u,u.__name__=\"TableColumn\",u.init_TableColumn()},\n 491: function _(A,o,e,r,i){r(),e.root=\"bk-root\",e.default='.bk-root{}.bk-root .slick-header.ui-state-default,.bk-root .slick-headerrow.ui-state-default,.bk-root .slick-footerrow.ui-state-default,.bk-root .slick-top-panel-scroller.ui-state-default,.bk-root .slick-group-header.ui-state-default{width:100%;overflow:auto;position:relative;border-left:0px !important;}.bk-root .slick-header.ui-state-default{overflow:inherit;}.bk-root .slick-header::-webkit-scrollbar,.bk-root .slick-headerrow::-webkit-scrollbar,.bk-root .slick-footerrow::-webkit-scrollbar{display:none;}.bk-root .slick-header-columns,.bk-root .slick-headerrow-columns,.bk-root .slick-footerrow-columns,.bk-root .slick-group-header-columns{position:relative;white-space:nowrap;cursor:default;overflow:hidden;}.bk-root .slick-header-column.ui-state-default,.bk-root .slick-group-header-column.ui-state-default{position:relative;display:inline-block;box-sizing:content-box !important;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;height:16px;line-height:16px;margin:0;padding:4px;border-right:1px solid silver;border-left:0px !important;border-top:0px !important;border-bottom:0px !important;float:left;}.bk-root .slick-footerrow-column.ui-state-default{-o-text-overflow:ellipsis;text-overflow:ellipsis;margin:0;padding:4px;border-right:1px solid silver;border-left:0px;border-top:0px;border-bottom:0px;float:left;line-height:20px;vertical-align:middle;}.bk-root .slick-headerrow-column.ui-state-default,.bk-root .slick-footerrow-column.ui-state-default{padding:4px;}.bk-root .slick-header-column-sorted{font-style:italic;}.bk-root .slick-sort-indicator{display:inline-block;width:8px;height:5px;margin-left:4px;margin-top:6px;float:left;}.bk-root .slick-sort-indicator-numbered{display:inline-block;width:8px;height:5px;margin-left:4px;margin-top:0;line-height:20px;float:left;font-family:Arial;font-style:normal;font-weight:bold;color:#6190CD;}.bk-root .slick-sort-indicator-desc{background:url(images/sort-desc.gif);}.bk-root .slick-sort-indicator-asc{background:url(images/sort-asc.gif);}.bk-root .slick-resizable-handle{position:absolute;font-size:0.1px;display:block;cursor:col-resize;width:9px;right:-5px;top:0;height:100%;z-index:1;}.bk-root .slick-sortable-placeholder{background:silver;}.bk-root .grid-canvas{position:relative;outline:0;}.bk-root .slick-row.ui-widget-content,.bk-root .slick-row.ui-state-active{position:absolute;border:0px;width:100%;}.bk-root .slick-cell,.bk-root .slick-headerrow-column,.bk-root .slick-footerrow-column{position:absolute;border:1px solid transparent;border-right:1px dotted silver;border-bottom-color:silver;overflow:hidden;-o-text-overflow:ellipsis;text-overflow:ellipsis;vertical-align:middle;z-index:1;padding:1px 2px 2px 1px;margin:0;white-space:nowrap;cursor:default;}.bk-root .slick-cell,.bk-root .slick-headerrow-column{border-bottom-color:silver;}.bk-root .slick-footerrow-column{border-top-color:silver;}.bk-root .slick-group-toggle{display:inline-block;}.bk-root .slick-cell.highlighted{background:lightskyblue;background:rgba(0, 0, 255, 0.2);-webkit-transition:all 0.5s;-moz-transition:all 0.5s;-o-transition:all 0.5s;transition:all 0.5s;}.bk-root .slick-cell.flashing{border:1px solid red !important;}.bk-root .slick-cell.editable{z-index:11;overflow:visible;background:white;border-color:black;border-style:solid;}.bk-root .slick-cell:focus{outline:none;}.bk-root .slick-reorder-proxy{display:inline-block;background:blue;opacity:0.15;cursor:move;}.bk-root .slick-reorder-guide{display:inline-block;height:2px;background:blue;opacity:0.7;}.bk-root .slick-selection{z-index:10;position:absolute;border:2px dashed black;}.bk-root .slick-pane{position:absolute;outline:0;overflow:hidden;width:100%;}.bk-root .slick-pane-header{display:block;}.bk-root .slick-header{overflow:hidden;position:relative;}.bk-root .slick-headerrow{overflow:hidden;position:relative;}.bk-root .slick-top-panel-scroller{overflow:hidden;position:relative;}.bk-root .slick-top-panel{width:10000px;}.bk-root .slick-viewport{position:relative;outline:0;width:100%;}.bk-root .slick-header-columns{background:url(\\'images/header-columns-bg.gif\\') repeat-x center bottom;border-bottom:1px solid silver;}.bk-root .slick-header-column{background:url(\\'images/header-columns-bg.gif\\') repeat-x center bottom;border-right:1px solid silver;}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background:white url(\\'images/header-columns-over-bg.gif\\') repeat-x center bottom;}.bk-root .slick-headerrow{background:#fafafa;}.bk-root .slick-headerrow-column{background:#fafafa;border-bottom:0;height:100%;}.bk-root .slick-row.ui-state-active{background:#F5F7D7;}.bk-root .slick-row{position:absolute;background:white;border:0px;line-height:20px;}.bk-root .slick-row.selected{z-index:10;background:#DFE8F6;}.bk-root .slick-cell{padding-left:4px;padding-right:4px;}.bk-root .slick-group{border-bottom:2px solid silver;}.bk-root .slick-group-toggle{width:9px;height:9px;margin-right:5px;}.bk-root .slick-group-toggle.expanded{background:url(images/collapse.gif) no-repeat center center;}.bk-root .slick-group-toggle.collapsed{background:url(images/expand.gif) no-repeat center center;}.bk-root .slick-group-totals{color:gray;background:white;}.bk-root .slick-group-select-checkbox{width:13px;height:13px;margin:3px 10px 0 0;display:inline-block;}.bk-root .slick-group-select-checkbox.checked{background:url(images/GrpCheckboxY.png) no-repeat center center;}.bk-root .slick-group-select-checkbox.unchecked{background:url(images/GrpCheckboxN.png) no-repeat center center;}.bk-root .slick-cell.selected{background-color:beige;}.bk-root .slick-cell.active{border-color:gray;border-style:solid;}.bk-root .slick-sortable-placeholder{background:silver !important;}.bk-root .slick-row.odd{background:#fafafa;}.bk-root .slick-row.ui-state-active{background:#F5F7D7;}.bk-root .slick-row.loading{opacity:0.5;}.bk-root .slick-cell.invalid{border-color:red;-moz-animation-duration:0.2s;-webkit-animation-duration:0.2s;-moz-animation-name:slickgrid-invalid-hilite;-webkit-animation-name:slickgrid-invalid-hilite;}@-moz-keyframes slickgrid-invalid-hilite{from{box-shadow:0 0 6px red;}to{box-shadow:none;}}@-webkit-keyframes slickgrid-invalid-hilite{from{box-shadow:0 0 6px red;}to{box-shadow:none;}}.bk-root .slick-column-name,.bk-root .slick-sort-indicator{display:inline-block;float:left;margin-bottom:100px;}.bk-root .slick-header-button{display:inline-block;float:right;vertical-align:top;margin:1px;margin-bottom:100px;height:15px;width:15px;background-repeat:no-repeat;background-position:center center;cursor:pointer;}.bk-root .slick-header-button-hidden{width:0;-webkit-transition:0.2s width;-ms-transition:0.2s width;transition:0.2s width;}.bk-root .slick-header-column:hover > .slick-header-button{width:15px;}.bk-root .slick-header-menubutton{position:absolute;right:0;top:0;bottom:0;width:14px;background-repeat:no-repeat;background-position:left center;background-image:url(../images/down.gif);cursor:pointer;display:none;border-left:thin ridge silver;}.bk-root .slick-header-column:hover > .slick-header-menubutton,.bk-root .slick-header-column-active .slick-header-menubutton{display:inline-block;}.bk-root .slick-header-menu{position:absolute;display:inline-block;margin:0;padding:2px;cursor:default;}.bk-root .slick-header-menuitem{list-style:none;margin:0;padding:0;cursor:pointer;}.bk-root .slick-header-menuicon{display:inline-block;width:16px;height:16px;vertical-align:middle;margin-right:4px;background-repeat:no-repeat;background-position:center center;}.bk-root .slick-header-menucontent{display:inline-block;vertical-align:middle;}.bk-root .slick-header-menuitem-disabled{color:silver;}.bk-root .slick-header-menuitem.slick-header-menuitem-divider{cursor:default;border:none;overflow:hidden;padding:0;height:1px;margin:8px 2px;background-color:#cecece;}.bk-root .slick-header-menuitem-divider.slick-header-menuitem:hover{background-color:#cecece;}.bk-root .slick-columnpicker{border:1px solid #718BB7;background:#f0f0f0;padding:6px;-moz-box-shadow:2px 2px 2px silver;-webkit-box-shadow:2px 2px 2px silver;box-shadow:2px 2px 2px silver;min-width:150px;cursor:default;position:absolute;z-index:20;overflow:auto;resize:both;}.bk-root .slick-columnpicker > .close{float:right;}.bk-root .slick-columnpicker .title{font-size:16px;width:60%;border-bottom:solid 1px #d6d6d6;margin-bottom:10px;}.bk-root .slick-columnpicker li{list-style:none;margin:0;padding:0;background:none;}.bk-root .slick-columnpicker input{margin:4px;}.bk-root .slick-columnpicker li a{display:block;padding:4px;font-weight:bold;}.bk-root .slick-columnpicker li a:hover{background:white;}.bk-root .slick-columnpicker-list li.hidden{display:none;}.bk-root .slick-pager{width:100%;height:26px;border:1px solid gray;border-top:0;background:url(\\'../images/header-columns-bg.gif\\') repeat-x center bottom;vertical-align:middle;}.bk-root .slick-pager .slick-pager-status{display:inline-block;padding:6px;}.bk-root .slick-pager .ui-icon-container{display:inline-block;margin:2px;border-color:gray;}.bk-root .slick-pager .slick-pager-nav{display:inline-block;float:left;padding:2px;}.bk-root .slick-pager .slick-pager-settings{display:block;float:right;padding:2px;}.bk-root .slick-pager .slick-pager-settings *{vertical-align:middle;}.bk-root .slick-pager .slick-pager-settings a{padding:2px;text-decoration:underline;cursor:pointer;}.bk-root .slick-header-columns{border-bottom:1px solid silver;background-image:none;}.bk-root .slick-header-column{border-right:1px solid transparent;background-image:none;}.bk-root .slick-header-column:last-of-type{border-right-color:transparent;}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background-color:#F0F8FF;background-image:none;}.bk-root .slick-group-toggle.expanded{background-image:url(\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIMwADCBxIUIDBgwIEChgwwECBAgQUFjBAkaJCABgxGlB4AGHCAAIQiBypEEECkScJqgwQEAA7\");}.bk-root .slick-group-toggle.collapsed{background-image:url(\"data:image/gif;base64,R0lGODlhCQAJAPcAAAFGeoCAgNXz/+v5/+v6/+z5/+36//L7//X8//j9/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAACQAJAAAIOAADCBxIUIDBgwIEChgwAECBAgQUFjAAQIABAwoBaNSIMYCAAwIqGlSIAEHFkiQTIBCgkqDLAAEBADs=\");}.bk-root .slick-group-select-checkbox.checked{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAAEcSURBVChTjdI9S8NQFAbg/raQXVwCRRFE7GK7OXTwD+ikk066VF3a0ja0hQTyQdJrwNq0zrYSQRLEXMSWSlCIb8glqRcFD+9yz3nugXwU4n9XQqMoGjj36uBJsTwuaNo3EwBG4Yy7pe7Gv8YcvhJCGFVsjxsjxujj6OTSGlHv+U2WZUZbPWKOv1ZjT5a7pbIoiptbO5b73mwrjHa1B27l8VlTEIS1damlTnEE+EEN9/P8WrfH81qdAIGeXvTTmzltdCy46sEhxpKUINReZR9NnqZbr9puugxV3NjWh/k74WmmEdWhmUNy2jNmWRc6fZTVADCqao52u+DGWTACYNT3fRxwtatPufTNR4yCIGAUn5hS+vJHhWGY/ANx/A3tvdv+1tZmuwAAAABJRU5ErkJggg==\");}.bk-root .slick-group-select-checkbox.unchecked{background-image:url(\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAA4AAAAOCAIAAACQKrqGAAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAOwQAADsEBuJFr7QAAABl0RVh0U29mdHdhcmUAcGFpbnQubmV0IDQuMC4xNkRpr/UAAACXSURBVChT1dIxC4MwEAXg/v8/VOhQVDBNakV0KA6pxS4JhWRSIYPEJxwdDi1de7wleR+3JIf486w0hKCKRpSvvOhZcCmvNQBRuKqdah03U7UjNNH81rOaBYDo8SQaPX8JANFEaLaGBeAPaaY61rGksiN6TmR5H1j9CSoAosYYHLA7vTxYMvVEZa0liif23r93xjm3/oEYF8PiDn/I2FHCAAAAAElFTkSuQmCC\");}.bk-root .slick-sort-indicator-desc{background-image:url(\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgeAAUAGEgQgIAACBEKLHgwYcKFBh1KFNhQosOKEgMCADs=\");}.bk-root .slick-sort-indicator-asc{background-image:url(\"data:image/gif;base64,R0lGODlhDQAFAIcAAGGQzUD/QOPu+wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAMAAAEALAAAAAANAAUAAAgbAAMIDABgoEGDABIeRJhQ4cKGEA8KmEiRosGAADs=\");}.bk-root .slick-header-menubutton{background-image:url(\"data:image/gif;base64,R0lGODlhDgAOAIABADtKYwAAACH5BAEAAAEALAAAAAAOAA4AAAISjI+py+0PHZgUsGobhTn6DxoFADs=\");}.bk-root .slick-pager{background-image:none;}'},\n 492: function _(t,e,s,r,a){r();const i=t(479),{Avg:g,Min:n,Max:o,Sum:u}=i.Data.Aggregators,c=t(53);class _ extends c.Model{constructor(t){super(t)}static init_RowAggregator(){this.define((({String:t})=>({field_:[t,\"\"]})))}}s.RowAggregator=_,_.__name__=\"RowAggregator\",_.init_RowAggregator();const l=new g;class m extends _{constructor(){super(...arguments),this.key=\"avg\",this.init=l.init,this.accumulate=l.accumulate,this.storeResult=l.storeResult}}s.AvgAggregator=m,m.__name__=\"AvgAggregator\";const h=new n;class A extends _{constructor(){super(...arguments),this.key=\"min\",this.init=h.init,this.accumulate=h.accumulate,this.storeResult=h.storeResult}}s.MinAggregator=A,A.__name__=\"MinAggregator\";const R=new o;class x extends _{constructor(){super(...arguments),this.key=\"max\",this.init=R.init,this.accumulate=R.accumulate,this.storeResult=R.storeResult}}s.MaxAggregator=x,x.__name__=\"MaxAggregator\";const d=new u;class w extends _{constructor(){super(...arguments),this.key=\"sum\",this.init=d.init,this.accumulate=d.accumulate,this.storeResult=d.storeResult}}s.SumAggregator=w,w.__name__=\"SumAggregator\"},\n 493: function _(t,e,s,o,r){o();const i=t(43),a=t(479),n=t(467),l=t(472),u=t(130),g=t(492),c=t(53);function p(t,e,s,o,r){const{collapsed:a,level:n,title:l}=r,u=i.span({class:\"slick-group-toggle \"+(a?\"collapsed\":\"expanded\"),style:{\"margin-left\":15*n+\"px\"}}),g=i.span({class:\"slick-group-title\",level:n},l);return`${u.outerHTML}${g.outerHTML}`}function h(t,e){const s=this.getDataItem(e.row);s instanceof a.Group&&t.target.classList.contains(\"slick-group-toggle\")&&(s.collapsed?this.getData().expandGroup(s.groupingKey):this.getData().collapseGroup(s.groupingKey),t.stopImmediatePropagation(),t.preventDefault(),this.invalidate(),this.render())}class d extends c.Model{constructor(t){super(t)}static init_GroupingInfo(){this.define((({Boolean:t,String:e,Array:s,Ref:o})=>({getter:[e,\"\"],aggregators:[s(o(g.RowAggregator)),[]],collapsed:[t,!1]})))}get comparer(){return(t,e)=>t.value===e.value?0:t.value>e.value?1:-1}}s.GroupingInfo=d,d.__name__=\"GroupingInfo\",d.init_GroupingInfo();class f extends l.TableDataProvider{constructor(t,e,s,o){super(t,e),this.columns=s,this.groupingInfos=[],this.groupingDelimiter=\":|:\",this.target=o}setGrouping(t){this.groupingInfos=t,this.toggledGroupsByLevel=t.map((()=>({}))),this.refresh()}extractGroups(t,e){const s=[],o=new Map,r=e?e.level+1:0,{comparer:i,getter:n}=this.groupingInfos[r];return t.forEach((t=>{const i=this.source.data[n][t];let l=o.get(i);if(!l){const t=e?`${e.groupingKey}${this.groupingDelimiter}${i}`:`${i}`;l=Object.assign(new a.Group,{value:i,level:r,groupingKey:t}),s.push(l),o.set(i,l)}l.rows.push(t)})),r<this.groupingInfos.length-1&&s.forEach((t=>{t.groups=this.extractGroups(t.rows,t)})),s.sort(i),s}calculateTotals(t,e){const s={avg:{},max:{},min:{},sum:{}},{source:{data:o}}=this,r=Object.keys(o),i=t.rows.map((t=>r.reduce(((e,s)=>Object.assign(Object.assign({},e),{[s]:o[s][t]})),{})));return e.forEach((t=>{t.init(),i.forEach((e=>t.accumulate(e))),t.storeResult(s)})),s}addTotals(t,e=0){const{aggregators:s,collapsed:o}=this.groupingInfos[e],r=this.toggledGroupsByLevel[e];t.forEach((t=>{t.groups&&this.addTotals(t.groups,e+1),s.length&&t.rows.length&&(t.totals=this.calculateTotals(t,s)),t.collapsed=o!==r[t.groupingKey],t.title=t.value?`${t.value}`:\"\"}))}flattenedGroupedRows(t,e=0){const s=[];return t.forEach((t=>{if(s.push(t),!t.collapsed){const o=t.groups?this.flattenedGroupedRows(t.groups,e+1):t.rows;s.push(...o)}})),s}refresh(){const t=this.extractGroups([...this.view.indices]),e=this.source.data[this.columns[0].field];t.length&&(this.addTotals(t),this.rows=this.flattenedGroupedRows(t),this.target.data={row_indices:this.rows.map((t=>t instanceof a.Group?t.rows:t)),labels:this.rows.map((t=>t instanceof a.Group?t.title:e[t]))})}getLength(){return this.rows.length}getItem(t){const e=this.rows[t],{source:{data:s}}=this;return e instanceof a.Group?e:Object.keys(s).reduce(((t,o)=>Object.assign(Object.assign({},t),{[o]:s[o][e]})),{[n.DTINDEX_NAME]:e})}getItemMetadata(t){const e=this.rows[t],s=this.columns.slice(1),o=e instanceof a.Group?this.groupingInfos[e.level].aggregators:[];return e instanceof a.Group?{selectable:!1,focusable:!1,cssClasses:\"slick-group\",columns:[{formatter:p},...s.map((function(t){const{field:e,formatter:s}=t,r=o.find((({field_:t})=>t===e));if(r){const{key:t}=r;return{formatter:(o,r,i,a,n)=>s?s(o,r,n.totals[t][e],a,n):\"\"}}return{}}))]}:{}}collapseGroup(t){const e=t.split(this.groupingDelimiter).length-1;this.toggledGroupsByLevel[e][t]=!this.groupingInfos[e].collapsed,this.refresh()}expandGroup(t){const e=t.split(this.groupingDelimiter).length-1;this.toggledGroupsByLevel[e][t]=this.groupingInfos[e].collapsed,this.refresh()}}s.DataCubeProvider=f,f.__name__=\"DataCubeProvider\";class m extends l.DataTableView{render(){const t={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:!1,autosizeColsMode:this.autosize,multiColumnSort:!1,editable:this.model.editable,autoEdit:this.model.auto_edit,rowHeight:this.model.row_height},e=this.model.columns.map((t=>t.toColumn()));var s,o;e[0].formatter=(s=e[0].formatter,o=this.model.grouping.length,(t,e,r,a,n)=>{const l=i.span({class:\"slick-group-toggle\",style:{\"margin-left\":15*(null!=o?o:0)+\"px\"}}),u=s?s(t,e,r,a,n):`${r}`;return`${l.outerHTML}${u&&u.replace(/^<div/,\"<span\").replace(/div>$/,\"span>\")}`}),delete e[0].editor,this.data=new f(this.model.source,this.model.view,e,this.model.target),this.data.setGrouping(this.model.grouping),this.el.style.width=`${this.model.width}px`,this.grid=new a.Grid(this.el,this.data,e,t),this.grid.onClick.subscribe(h)}}s.DataCubeView=m,m.__name__=\"DataCubeView\";class w extends l.DataTable{constructor(t){super(t)}static init_DataCube(){this.prototype.default_view=m,this.define((({Array:t,Ref:e})=>({grouping:[t(e(d)),[]],target:[e(u.ColumnDataSource)]})))}}s.DataCube=w,w.__name__=\"DataCube\",w.init_DataCube()},\n }, 464, {\"models/widgets/tables/main\":464,\"models/widgets/tables/index\":465,\"models/widgets/tables/cell_editors\":466,\"models/widgets/tables/definitions\":467,\"styles/widgets/tables.css\":468,\"models/widgets/tables/cell_formatters\":469,\"models/widgets/tables/data_table\":472,\"models/widgets/widget\":488,\"models/widgets/tables/table_widget\":489,\"models/widgets/tables/table_column\":490,\"styles/widgets/slickgrid.css\":491,\"models/widgets/tables/row_aggregators\":492,\"models/widgets/tables/data_cube\":493}, {});});\n\n /* END bokeh-tables.min.js */\n },\n \n function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\n \n function(Bokeh) {\n /* BEGIN panel.min.js */\n /*!\n * Copyright (c) 2012 - 2021, Anaconda, Inc., and Bokeh Contributors\n * All rights reserved.\n * \n * Redistribution and use in source and binary forms, with or without modification,\n * are permitted provided that the following conditions are met:\n * \n * Redistributions of source code must retain the above copyright notice,\n * this list of conditions and the following disclaimer.\n * \n * Redistributions in binary form must reproduce the above copyright notice,\n * this list of conditions and the following disclaimer in the documentation\n * and/or other materials provided with the distribution.\n * \n * Neither the name of Anaconda nor the names of any contributors\n * may be used to endorse or promote products derived from this software\n * without specific prior written permission.\n * \n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n * THE POSSIBILITY OF SUCH DAMAGE.\n */\n (function(root, factory) {\n factory(root[\"Bokeh\"], undefined);\n })(this, function(Bokeh, version) {\n var define;\n return (function(modules, entry, aliases, externals) {\n const bokeh = typeof Bokeh !== \"undefined\" && (version != null ? Bokeh[version] : Bokeh);\n if (bokeh != null) {\n return bokeh.register_plugin(modules, entry, aliases);\n } else {\n throw new Error(\"Cannot find Bokeh \" + version + \". You have to load it prior to loading plugins.\");\n }\n })\n ({\n \"4e90918c0a\": function _(e,s,t,o,i){o();const n=e(\"tslib\").__importStar(e(\"7898617fc4\"));t.Panel=n;e(\"@bokehjs/base\").register_models(n)},\n \"7898617fc4\": function _(e,a,t,o,c){o();const d=e(\"tslib\");c(\"AcePlot\",e(\"be520eff91\").AcePlot),c(\"Audio\",e(\"339f84d639\").Audio),c(\"Card\",e(\"c816112d20\").Card),c(\"CommManager\",e(\"e552778259\").CommManager),c(\"DataTabulator\",e(\"cd0a5e2f82\").DataTabulator),c(\"DatetimePicker\",e(\"6e11b2cfe2\").DatetimePicker),c(\"DeckGLPlot\",e(\"df2378664f\").DeckGLPlot),c(\"ECharts\",e(\"9d046c4720\").ECharts),c(\"HTML\",e(\"2839081043\").HTML),c(\"IDOM\",e(\"7d45bd3bc4\").IDOM),c(\"IPyWidget\",e(\"0eae77d68f\").IPyWidget),c(\"JSON\",e(\"0d30bea0c8\").JSON),c(\"FileDownload\",e(\"1767172ffa\").FileDownload),c(\"KaTeX\",e(\"7b859fb3cf\").KaTeX),c(\"Location\",e(\"642aa56b24\").Location),c(\"MathJax\",e(\"0c21036737\").MathJax),c(\"Perspective\",e(\"84a772681d\").Perspective),c(\"Player\",e(\"2e8044c920\").Player),c(\"PlotlyPlot\",e(\"c23bb1717d\").PlotlyPlot),c(\"Progress\",e(\"9f787650b9\").Progress),c(\"ReactiveHTML\",e(\"d536149aaa\").ReactiveHTML),c(\"SingleSelect\",e(\"3b85956787\").SingleSelect),c(\"SpeechToText\",e(\"aaa48703af\").SpeechToText),c(\"State\",e(\"bfa46a5f19\").State),c(\"Terminal\",e(\"91fe88c277\").Terminal),c(\"TextToSpeech\",e(\"33cd2c254e\").TextToSpeech),c(\"TrendIndicator\",e(\"ded3463d6c\").TrendIndicator),c(\"VegaPlot\",e(\"4feb5fa522\").VegaPlot),c(\"Video\",e(\"ffe54b53c3\").Video),c(\"VideoStream\",e(\"e3e9b8e495\").VideoStream),d.__exportStar(e(\"c51f25e2a7\"),t)},\n \"be520eff91\": function _(e,t,i,o,s){o();const n=e(\"@bokehjs/models/layouts/html_box\"),a=e(\"@bokehjs/core/dom\"),d=e(\"4c755983eb\");class h extends d.PanelHTMLBoxView{initialize(){super.initialize(),this._ace=window.ace,this._container=a.div({id:\"_\"+Math.random().toString(36).substr(2,9),style:{width:\"100%\",height:\"100%\",zIndex:0}})}connect_signals(){super.connect_signals(),this.connect(this.model.properties.code.change,(()=>this._update_code_from_model())),this.connect(this.model.properties.theme.change,(()=>this._update_theme())),this.connect(this.model.properties.language.change,(()=>this._update_language())),this.connect(this.model.properties.filename.change,(()=>this._update_filename())),this.connect(this.model.properties.print_margin.change,(()=>this._update_print_margin())),this.connect(this.model.properties.annotations.change,(()=>this._add_annotations())),this.connect(this.model.properties.readonly.change,(()=>{this._editor.setReadOnly(this.model.readonly)}))}render(){super.render(),this._container!==this.el.childNodes[0]&&this.el.appendChild(this._container),this._container.textContent=this.model.code,this._editor=this._ace.edit(this._container.id),this._langTools=this._ace.require(\"ace/ext/language_tools\"),this._modelist=this._ace.require(\"ace/ext/modelist\"),this._editor.setOptions({enableBasicAutocompletion:!0,enableSnippets:!0,fontFamily:\"monospace\"}),this._update_theme(),this._update_filename(),this._update_language(),this._editor.setReadOnly(this.model.readonly),this._editor.setShowPrintMargin(this.model.print_margin),this._editor.on(\"change\",(()=>this._update_code_from_editor()))}_update_code_from_model(){this._editor&&this._editor.getValue()!=this.model.code&&this._editor.setValue(this.model.code)}_update_print_margin(){this._editor.setShowPrintMargin(this.model.print_margin)}_update_code_from_editor(){this._editor.getValue()!=this.model.code&&(this.model.code=this._editor.getValue())}_update_theme(){this._editor.setTheme(`ace/theme/${this.model.theme}`)}_update_filename(){if(this.model.filename){const e=this._modelist.getModeForPath(this.model.filename).mode;this.model.language=e.slice(9)}}_update_language(){null!=this.model.language&&this._editor.session.setMode(`ace/mode/${this.model.language}`)}_add_annotations(){this._editor.session.setAnnotations(this.model.annotations)}after_layout(){super.after_layout(),this._editor.resize()}}i.AcePlotView=h,h.__name__=\"AcePlotView\";class _ extends n.HTMLBox{constructor(e){super(e)}static init_AcePlot(){this.prototype.default_view=h,this.define((({Any:e,Array:t,Boolean:i,String:o})=>({code:[o,\"\"],filename:[o],language:[o],theme:[o,\"chrome\"],annotations:[t(e),[]],readonly:[i,!1],print_margin:[i,!1]}))),this.override({height:300,width:300})}}i.AcePlot=_,_.__name__=\"AcePlot\",_.__module__=\"panel.models.ace\",_.init_AcePlot()},\n \"4c755983eb\": function _(e,i,t,s,h){s();const n=e(\"@bokehjs/core/layout/html\"),_=e(\"@bokehjs/core/layout/types\"),a=e(\"@bokehjs/core/dom\"),l=e(\"@bokehjs/models/widgets/markup\"),o=e(\"@bokehjs/models/layouts/html_box\");function d(e,i){let t=null!=i.width?\"fixed\":\"fit\",s=null!=i.height?\"fixed\":\"fit\";const{sizing_mode:h}=i;if(null!=h)if(\"fixed\"==h)t=s=\"fixed\";else if(\"stretch_both\"==h)t=s=\"max\";else if(\"stretch_width\"==h)t=\"max\";else if(\"stretch_height\"==h)s=\"max\";else switch(h){case\"scale_width\":t=\"max\",s=\"min\";break;case\"scale_height\":t=\"min\",s=\"max\";break;case\"scale_both\":t=\"max\",s=\"max\";break;default:throw new Error(\"unreachable\")}\"fixed\"==t&&i.width?e.style.width=i.width+\"px\":\"max\"==t&&(e.style.width=\"100%\"),null!=i.min_width&&(e.style.minWidth=i.min_width+\"px\"),null!=i.max_width&&(e.style.maxWidth=i.max_width+\"px\"),\"fixed\"==s&&i.height?e.style.height=i.height+\"px\":\"max\"==s&&(e.style.height=\"100%\"),null!=i.min_height&&(e.style.minHeight=i.min_height+\"px\"),null!=i.max_width&&(e.style.maxHeight=i.max_height+\"px\")}t.set_size=d;class m extends n.VariadicBox{constructor(e,i,t){super(e),this.el=e,this.sizing_mode=i,this.changed=t,this._cache=new Map,this._cache_count=new Map}_measure(e){const i=[e.width,e.height,this.sizing_mode].toString(),t=this.changed&&\"fixed\"!=this.sizing_mode&&null!=this.sizing_mode?1:0,s=this._cache.get(i),h=this._cache_count.get(i);if(null!=s&&null!=h&&h>=t)return this._cache_count.set(i,h+1),s;const n=new _.Sizeable(e).bounded_to(this.sizing.size),l=a.sized(this.el,n,(()=>{const e=new _.Sizeable(a.content_size(this.el)),{border:i,padding:t}=a.extents(this.el);return e.grow_by(i).grow_by(t).map(Math.ceil)}));return this._cache.set(i,l),this._cache_count.set(i,0),l}invalidate_cache(){}}t.CachedVariadicBox=m,m.__name__=\"CachedVariadicBox\";class c extends l.MarkupView{_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new m(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}render(){super.render(),d(this.markup_el,this.model)}}t.PanelMarkupView=c,c.__name__=\"PanelMarkupView\";class r extends o.HTMLBoxView{_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new m(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}render(){super.render(),d(this.el,this.model)}}t.PanelHTMLBoxView=r,r.__name__=\"PanelHTMLBoxView\"},\n \"339f84d639\": function _(e,t,i,o,s){o();const l=e(\"@bokehjs/models/layouts/html_box\"),d=e(\"4c755983eb\");class u extends d.PanelHTMLBoxView{initialize(){super.initialize(),this._blocked=!1,this._setting=!1,this._time=Date.now()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.loop.change,(()=>this.set_loop())),this.connect(this.model.properties.paused.change,(()=>this.set_paused())),this.connect(this.model.properties.time.change,(()=>this.set_time())),this.connect(this.model.properties.value.change,(()=>this.set_value())),this.connect(this.model.properties.volume.change,(()=>this.set_volume()))}render(){super.render(),this.audioEl=document.createElement(\"audio\"),this.audioEl.controls=!0,this.audioEl.src=this.model.value,this.audioEl.currentTime=this.model.time,this.audioEl.loop=this.model.loop,null!=this.model.volume?this.audioEl.volume=this.model.volume/100:this.model.volume=100*this.audioEl.volume,this.audioEl.onpause=()=>this.model.paused=!0,this.audioEl.onplay=()=>this.model.paused=!1,this.audioEl.ontimeupdate=()=>this.update_time(this),this.audioEl.onvolumechange=()=>this.update_volume(this),this.el.appendChild(this.audioEl),this.model.paused||this.audioEl.play()}update_time(e){e._setting?e._setting=!1:Date.now()-e._time<e.model.throttle||(e._blocked=!0,e.model.time=e.audioEl.currentTime,e._time=Date.now())}update_volume(e){e._setting?e._setting=!1:(e._blocked=!0,e.model.volume=100*e.audioEl.volume)}set_loop(){this.audioEl.loop=this.model.loop}set_paused(){!this.audioEl.paused&&this.model.paused&&this.audioEl.pause(),this.audioEl.paused&&!this.model.paused&&this.audioEl.play()}set_volume(){this._blocked?this._blocked=!1:(this._setting=!0,null!=this.model.volume&&(this.audioEl.volume=this.model.volume/100))}set_time(){this._blocked?this._blocked=!1:(this._setting=!0,this.audioEl.currentTime=this.model.time)}set_value(){this.audioEl.src=this.model.value}}i.AudioView=u,u.__name__=\"AudioView\";class h extends l.HTMLBox{constructor(e){super(e)}static init_Audio(){this.prototype.default_view=u,this.define((({Any:e,Boolean:t,Int:i,Number:o})=>({loop:[t,!1],paused:[t,!0],time:[o,0],throttle:[o,250],value:[e,\"\"],volume:[i]})))}}i.Audio=h,h.__name__=\"Audio\",h.__module__=\"panel.models.widgets\",h.init_Audio()},\n \"c816112d20\": function _(e,s,l,t,o){t();const i=e(\"tslib\"),a=e(\"@bokehjs/models/layouts/column\"),n=e(\"@bokehjs/core/util/bbox\"),c=i.__importStar(e(\"@bokehjs/core/dom\")),d=e(\"@bokehjs/core/dom\"),r=e(\"@bokehjs/core/layout/grid\"),h=e(\"@bokehjs/core/util/color\");class _ extends a.ColumnView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.collapsed.change,(()=>this._collapse()));const{active_header_background:e,header_background:s,header_color:l}=this.model.properties;this.on_change([e,s,l],(()=>this.render()))}_update_layout(){const e=(this.model.collapsed?this.child_views.slice(0,1):this.child_views).map((e=>e.layout));this.layout=new r.Column(e),this.layout.rows=this.model.rows,this.layout.spacing=[this.model.spacing,0],this.layout.set_sizing(this.box_sizing())}update_position(){if(this.model.collapsible){const e=this.child_views[0],s=e.layout.bbox,l=e.layout.inner_bbox;if(0!=s.x1){const t=getComputedStyle(this.button_el.children[0]),o=parseFloat(t.width)+parseFloat(t.marginLeft),i=new n.BBox({x0:s.x0,x1:s.x1-o,y0:s.y0,y1:s.y1}),a=new n.BBox({x0:l.x0,x1:l.x1-o,y0:l.y0,y1:l.y1});e.layout.set_geometry(i,a)}}super.update_position()}render(){d.empty(this.el);const{background:e,button_css_classes:s,header_color:l,header_tag:t,header_css_classes:o}=this.model;this.el.style.backgroundColor=null!=e?h.color2css(e):\"\",d.classes(this.el).clear().add(...this.css_classes());let i=this.model.header_background;!this.model.collapsed&&this.model.active_header_background&&(i=this.model.active_header_background);const a=this.child_views[0];let n;if(this.model.collapsible){this.button_el=c.createElement(\"button\",{type:\"button\",class:o});const e=c.createElement(\"div\",{class:s});e.innerHTML=this.model.collapsed?\"â–º\":\"â–¼\",this.button_el.appendChild(e),this.button_el.style.backgroundColor=null!=i?i:\"\",a.el.style.backgroundColor=null!=i?i:\"\",this.button_el.appendChild(a.el),this.button_el.onclick=()=>this._toggle_button(),n=this.button_el}else n=c.createElement(t,{class:o}),n.style.backgroundColor=null!=i?i:\"\",n.appendChild(a.el);n.style.color=null!=l?l:\"\",this.el.appendChild(n),a.render();for(const e of this.child_views.slice(1))this.model.collapsed||this.el.appendChild(e.el),e.render()}_toggle_button(){this.model.collapsed=!this.model.collapsed}_collapse(){this.invalidate_render()}_createElement(){return c.createElement(this.model.tag,{class:this.css_classes()})}}l.CardView=_,_.__name__=\"CardView\";class u extends a.Column{constructor(e){super(e)}static init_Card(){this.prototype.default_view=_,this.define((({Array:e,Boolean:s,Nullable:l,String:t})=>({active_header_background:[l(t),null],button_css_classes:[e(t),[]],collapsed:[s,!0],collapsible:[s,!0],header_background:[l(t),null],header_color:[l(t),null],header_css_classes:[e(t),[]],header_tag:[t,\"div\"],tag:[t,\"div\"]})))}}l.Card=u,u.__name__=\"Card\",u.__module__=\"panel.models.layout\",u.init_Card()},\n \"e552778259\": function _(e,t,n,o,i){o();const s=e(\"@bokehjs/document\"),c=e(\"@bokehjs/core/view\"),_=e(\"@bokehjs/model\"),l=e(\"@bokehjs/protocol/message\"),a=e(\"@bokehjs/protocol/receiver\");class h extends c.View{renderTo(){}}n.CommManagerView=h,h.__name__=\"CommManagerView\";class m extends _.Model{constructor(e){super(e),this._document_listener=e=>this._document_changed(e),this._receiver=new a.Receiver,this._event_buffer=[],this._blocked=!1,this._timeout=Date.now(),null!=window.PyViz&&window.PyViz.comm_manager?(this.ns=window.PyViz,this.ns.comm_manager.register_target(this.plot_id,this.comm_id,(e=>this.msg_handler(e))),this._client_comm=this.ns.comm_manager.get_client_comm(this.plot_id,this.client_comm_id,(e=>this.on_ack(e)))):console.log(\"Could not find comm manager on window.PyViz, ensure the extension is loaded.\")}_doc_attached(){super._doc_attached(),null!=this.document&&this.document.on_change(this._document_listener)}_document_changed(e){e.setter_id!==this.id&&(e instanceof s.ModelChangedEvent&&!(e.attr in e.model.serializable_attributes())||(this._event_buffer.push(e),(!this._blocked||Date.now()>this._timeout)&&(setTimeout((()=>this.process_events()),this.debounce),this._blocked=!0,this._timeout=Date.now()+this.timeout)))}process_events(){if(null==this.document||null==this._client_comm)return;const e=this.document.create_json_patch(this._event_buffer);this._event_buffer=[];const t=l.Message.create(\"PATCH-DOC\",{},e);this._client_comm.send(t)}on_ack(e){const t=e.metadata;this._event_buffer.length?(this._blocked=!0,this._timeout=Date.now()+this.timeout,this.process_events()):this._blocked=!1,\"Ready\"==t.msg_type&&t.content?console.log(\"Python callback returned following output:\",t.content):\"Error\"==t.msg_type&&console.log(\"Python failed with the following traceback:\",t.traceback)}msg_handler(e){const t=e.metadata,n=e.buffers,o=e.content.data,i=this.plot_id;if(\"Ready\"==t.msg_type)t.content?console.log(\"Python callback returned following output:\",t.content):\"Error\"==t.msg_type&&console.log(\"Python failed with the following traceback:\",t.traceback);else if(null!=i){let e=null;if(i in this.ns.plot_index&&null!=this.ns.plot_index[i]?e=this.ns.plot_index[i]:void 0!==window.Bokeh&&i in window.Bokeh.index&&(e=window.Bokeh.index[i]),null==e)return;null!=n&&n.length>0?this._receiver.consume(n[0].buffer):this._receiver.consume(o);const t=this._receiver.message;null!=t&&Object.keys(t.content).length>0&&null!=this.document&&this.document.apply_json_patch(t.content,t.buffers,this.id)}}static init_CommManager(){this.prototype.default_view=h,this.define((({Int:e,String:t})=>({plot_id:[t],comm_id:[t],client_comm_id:[t],timeout:[e,5e3],debounce:[e,50]})))}}n.CommManager=m,m.__name__=\"CommManager\",m.__module__=\"panel.models.comm_manager\",m.init_CommManager()},\n \"cd0a5e2f82\": function _(t,e,s,i,o){i();const l=t(\"@bokehjs/core/util/types\"),n=t(\"@bokehjs/models/layouts/html_box\"),a=t(\"@bokehjs/core/dom\"),r=t(\"@bokehjs/core/kinds\"),d=t(\"@bokehjs/models/sources/column_data_source\"),c=t(\"@bokehjs/models/widgets/tables\"),u=t(\"f1971f81bf\"),h=t(\"4c755983eb\");function m(t,e,s){for(const i of s)if(i[t]==e)return i;return null}function f(t,e,s,i=0){const o={};if(0==t.length)return o;const n=s[i];for(const a of t){const t=f(a._children,e,s,i+1);for(const e in t)l.isArray(t[e])?a[e]=t[e].reduce(((t,e)=>t+e),0)/t[e].length:a[e]=t[e];for(const t of e.slice(1)){const e=a[t.field];if(t.field in o){const s=o[t.field];\"min\"===n?o[t.field]=Math.min(e,s):\"max\"===n?o[t.field]=Math.max(e,s):\"sum\"===n?o[t.field]=e+s:\"mean\"===n&&(l.isArray(o[t.field])?o[t.field].push(e):o[t.field]=[s,e])}else o[t.field]=e}}return o}function _(t,e,s,i){const o=[],l=e[0].field;for(const i of t){const t=i[s[0]];let n=m(l,t,o);null==n&&(n={_children:[]},n[l]=t,o.push(n));let a=n;const r={};for(const t of s.slice(1)){a=m(l,i[t],a._children),null==a&&(a={_children:[]},a[l]=i[t],n._children.push(a)),r[t]=n;for(const t of e.slice(1))a[t.field]=i[t];n=a}for(const t of e.slice(1))a[t.field]=i[t.field]}const n=[];for(const t of s)n.push(t in i?i[t]:\"sum\");return f(o,e,n),o}class g extends h.PanelHTMLBoxView{constructor(){super(...arguments),this._tabulator_cell_updating=!1,this._selection_updating=!1,this._styled_cells=[]}connect_signals(){super.connect_signals();const{configuration:t,layout:e,columns:s,theme:i,groupby:o}=this.model.properties;this.on_change([t,e,s,o],(()=>this.render_and_resize())),this.on_change([i],(()=>this.setCSS())),this.connect(this.model.properties.download.change,(()=>{const t=this.model.filename.endsWith(\".json\")?\"json\":\"csv\";this.tabulator.download(t,this.model.filename)})),this.connect(this.model.properties.hidden_columns.change,(()=>{this.hideColumns()})),this.connect(this.model.properties.page_size.change,(()=>{this.setPageSize()})),this.connect(this.model.properties.page.change,(()=>{this.setPage()})),this.connect(this.model.properties.max_page.change,(()=>{this.setMaxPage()})),this.connect(this.model.properties.frozen_rows.change,(()=>{this.freezeRows()})),this.connect(this.model.properties.styles.change,(()=>{this.updateStyles()})),this.connect(this.model.source.properties.data.change,(()=>{this.setData()})),this.connect(this.model.source.streaming,(()=>this.addData())),this.connect(this.model.source.patching,(()=>this.updateOrAddData())),this.connect(this.model.source.selected.change,(()=>this.updateSelection())),this.connect(this.model.source.selected.properties.indices.change,(()=>this.updateSelection()))}render_and_resize(){this.render(),this.update_layout(),this.compute_layout(),this.root!==this&&this.invalidate_layout()}render(){super.render();if(this.setCSS())return;this._initializing=!0;const t=a.div({class:\"pnx-tabulator\"});h.set_size(t,this.model);let e=this.getConfiguration();this.tabulator=new Tabulator(t,e),\"remote\"===this.model.pagination&&(this.tabulator.options.pagination=this.model.pagination,this.tabulator.modules.page.mode=\"remote\"),this.setGroupBy(),this.hideColumns(),this.model.pagination?(this.setMaxPage(),this.tabulator.setPage(this.model.page),this.setData()):this.freezeRows(),this.el.appendChild(t)}tableInit(t,e){const s=e.modules.ajax;s.sendRequest=()=>t.requestPage(s.params.page,s.params.sorters),e.modules.page._parseRemoteData=()=>{}}requestPage(t,e){return new Promise(((s,i)=>{try{null!=t&&null!=e&&(this.model.page=t||1,this.model.sorters=e),s([])}catch(t){i(t)}}))}renderComplete(){this._initializing&&(this.updateStyles(),this.updateSelection()),this._initializing=!1}freezeRows(){for(const t of this.model.frozen_rows)this.tabulator.getRow(t).freeze()}getLayout(){switch(this.model.layout){case\"fit_data\":return\"fitData\";case\"fit_data_fill\":return\"fitDataFill\";case\"fit_data_stretch\":return\"fitDataStretch\";case\"fit_data_table\":return\"fitDataTable\";case\"fit_columns\":return\"fitColumns\"}}getConfiguration(){const t=\"remote\"==this.model.pagination?\"local\":this.model.pagination||!1;let e=!(\"boolean\"==typeof this.model.select_mode);const s=this;let i=Object.assign(Object.assign({},this.model.configuration),{index:\"_index\",nestedFieldSeparator:!1,selectable:e,tableBuilding:function(){s.tableInit(s,this)},renderComplete:()=>this.renderComplete(),rowSelectionChanged:(t,e)=>this.rowSelectionChanged(t,e),rowClick:(t,e)=>this.rowClicked(t,e),cellEdited:t=>this.cellEdited(t),columns:this.getColumns(),layout:this.getLayout(),pagination:t,paginationSize:this.model.page_size,paginationInitialPage:1,selectableCheck:t=>{const e=this.model.selectable_rows;return null==e||e.indexOf(t._row.data._index)>=0},tooltips:t=>t.getColumn().getField()+\": \"+t.getValue()});t&&(i.ajaxURL=\"http://panel.pyviz.org\",i.ajaxSorting=!0);const o=this.model.source;let l;return l=null===o||0===o.columns().length?[]:u.transform_cds_to_records(o,!0),i.dataTree&&(l=_(l,this.model.columns,this.model.indexes,this.model.aggregators)),Object.assign(Object.assign({},i),{data:l})}getColumns(){var t;const e=null===(t=this.model.configuration)||void 0===t?void 0:t.columns;let s=[];if(null!=e)for(const t of e)if(null!=t.columns){const e=[];for(const s of t.columns)e.push(Object.assign({},s));s.push(Object.assign(Object.assign({},t),{columns:e}))}else s.push(Object.assign({},t));for(const t of this.model.columns){let i=null;if(null!=e)for(const e of s)if(null!=e.columns){for(const s of e.columns)if(t.field===s.field){i=s;break}if(null!=i)break}else if(t.field===e.field){i=e;break}if(null==i&&(i={field:t.field}),null==i.title&&(i.title=t.title),null==i.width&&null!=t.width&&0!=t.width&&(i.width=t.width),null==i.formatter&&null!=t.formatter){const e=t.formatter.type;i.formatter=\"BooleanFormatter\"===e?\"tickCross\":e=>{const s=t.formatter.doFormat(e.getRow(),e,e.getValue(),null,null),i=a.div();return i.innerHTML=s,i.children[0].innerHTML}}const o=t.editor,l=o.type;null!=i.editor||(\"StringEditor\"===l?o.completions.length>0?(i.editor=\"autocomplete\",i.editorParams={values:o.completions}):i.editor=\"input\":\"TextEditor\"===l?i.editor=\"textarea\":\"IntEditor\"===l||\"NumberEditor\"===l?(i.editor=\"number\",i.editorParams={step:o.step}):\"CheckboxEditor\"===l?i.editor=\"tickCross\":\"SelectEditor\"===l?(i.editor=\"select\",i.editorParams={values:o.options}):null!=o&&null!=o.default_view&&(i.editor=(e,s,i,o)=>this.renderEditor(t,e,s,i,o))),i.editable=()=>this.model.editable&&null!=o.default_view,null==e&&s.push(i)}return s}renderEditor(t,e,s,i,o){const l=t.editor,n=new l.default_view({column:t,model:l,parent:this,container:e._cell.element});return n.initialize(),n.connect_signals(),s((()=>{n.setValue(e.getValue())})),n.inputEl.addEventListener(\"change\",(()=>{const t=n.serializeValue(),s=e.getValue(),l=n.validate();l.valid||o(l.msg),null!=s&&typeof t!=typeof s?o(\"Mismatching type\"):i(n.serializeValue())})),n.inputEl}after_layout(){super.after_layout(),null!=this.tabulator&&this.tabulator.redraw(!0),this.updateStyles()}setData(){let t=u.transform_cds_to_records(this.model.source,!0);this.model.configuration.dataTree&&(t=_(t,this.model.columns,this.model.indexes,this.model.aggregators)),null!=this.model.pagination?this.tabulator.rowManager.setData(t,!0,!1):this.tabulator.setData(t),this.freezeRows(),this.updateSelection()}setGroupBy(){if(0==this.model.groupby.length)return void this.tabulator.setGroupBy(!1);this.tabulator.setGroupBy((t=>{const e=[];for(const s of this.model.groupby){const i=s+\": \"+t[s];e.push(i)}return e.join(\", \")}))}setCSS(){let t;t=\"default\"==this.model.theme?\"tabulator\":\"tabulator_\"+this.model.theme;const e=this.model.theme_url+t+\".min.css\";let s=null;const i=document.getElementsByTagName(\"link\"),o=this.model.theme_url.indexOf(\"dist/\"),l=this.model.theme_url.slice(0,o);for(const t of i)if(t.href.indexOf(l)>=0){s=t;break}if(null!=s)return!s.href.endsWith(e)&&(s.href=e,setTimeout((()=>this.render_and_resize()),100),!0);let n=document.getElementsByTagName(\"head\")[0];const a=document.createElement(\"link\");return a.type=\"text/css\",a.rel=\"stylesheet\",a.media=\"screen\",a.href=e,a.onload=()=>{this.render_and_resize()},n.appendChild(a),!0}updateStyles(){for(const t of this._styled_cells)t.cssText=\"\";if(this._styled_cells=[],null!=this.model.styles&&null!=this.tabulator&&0!=this.tabulator.getDataCount()){for(const t in this.model.styles){const e=this.model.styles[t],s=this.tabulator.getRow(t);if(!s)continue;const i=s._row.cells;for(const t in e){const s=e[t],o=i[t];if(null==o||!s.length)continue;const n=o.element;this._styled_cells.push(n),n.cssText=\"\";for(const t of s){let e,s;if(l.isArray(t))[e,s]=t;else{if(!t.includes(\":\"))continue;[e,s]=t.split(\":\")}n.style.setProperty(e,s.trimLeft())}}}this.model.styles={}}}addData(){const t=this.tabulator.rowManager.getRows(),e=t[t.length-1];let s=u.transform_cds_to_records(this.model.source,!0);this.tabulator.setData(s),this.model.follow&&this.tabulator.scrollToRow(e.data._index||0,\"top\",!1),this.freezeRows(),this.updateSelection()}updateOrAddData(){if(this._tabulator_cell_updating)return;let t=u.transform_cds_to_records(this.model.source,!0);this.tabulator.setData(t),this.freezeRows(),this.updateSelection()}hideColumns(){for(const t of this.tabulator.getColumns())this.model.hidden_columns.indexOf(t._column.field)>-1?t.hide():t.show()}setMaxPage(){this.tabulator.setMaxPage(Math.max(this.model.page,this.model.max_page)),this.tabulator.modules.page._setPageButtons()}setPage(){this.tabulator.setPage(this.model.page)}setPageSize(){this.tabulator.setPageSize(this.model.page_size)}updateSelection(){if(null==this.tabulator||this._selection_updating)return;const t=this.model.source.selected.indices,e=this.tabulator.getSelectedData().map((t=>t._index));JSON.stringify(t)!=JSON.stringify(e)&&(this._selection_updating=!0,this.tabulator.deselectRow(),this.tabulator.selectRow(t),this.tabulator.scrollToRow(t[0],\"bottom\",!1),this._selection_updating=!1)}rowClicked(t,e){if(this._selection_updating||this._initializing||!0!==this.model.select_mode)return;let s=[];const i=this.model.source.selected,o=e._row.data._index;if(t.ctrlKey||t.metaKey)s=this.model.source.selected.indices;else if(t.shiftKey&&i.indices.length){const t=i.indices[i.indices.length-1];if(o>t)for(let e=t;e<o;e++)s.push(e);else for(let e=t;e>o;e--)s.push(e)}s.indexOf(o)<0?s.push(o):s.splice(s.indexOf(o),1);const l=this._filter_selected(s);this.tabulator.deselectRow(),this.tabulator.selectRow(l),this._selection_updating=!0,i.indices=l,this._selection_updating=!1}_filter_selected(t){const e=[];for(const s of t)(null==this.model.selectable_rows||this.model.selectable_rows.indexOf(s)>=0)&&e.push(s);return e}rowSelectionChanged(t,e){if(this._selection_updating||this._initializing||\"boolean\"==typeof this.model.select_mode)return;const s=t.map((t=>t._index)),i=this._filter_selected(s);this._selection_updating=s.length===i.length,this.model.source.selected.indices=i,this._selection_updating=!1}cellEdited(t){const e=t._cell.column.field,s=t._cell.row.data._index,i=t._cell.value;this._tabulator_cell_updating=!0,this.model.source.patch({[e]:[[s,i]]}),this._tabulator_cell_updating=!1}}s.DataTabulatorView=g,g.__name__=\"DataTabulatorView\",s.TableLayout=r.Enum(\"fit_data\",\"fit_data_fill\",\"fit_data_stretch\",\"fit_data_table\",\"fit_columns\");class p extends n.HTMLBox{constructor(t){super(t)}static init_DataTabulator(){this.prototype.default_view=g,this.define((({Any:t,Array:e,Boolean:i,Nullable:o,Number:l,Ref:n,String:a})=>({aggregators:[t,{}],configuration:[t,{}],columns:[e(n(c.TableColumn)),[]],download:[i,!0],editable:[i,!0],filename:[a,\"table.csv\"],follow:[i,!0],frozen_rows:[e(l),[]],groupby:[e(a),[]],hidden_columns:[e(a),[]],indexes:[e(a),[]],layout:[s.TableLayout,\"fit_data\"],max_page:[l,0],pagination:[o(a),null],page:[l,0],page_size:[l,0],select_mode:[t,!0],selectable_rows:[o(e(l)),null],source:[n(d.ColumnDataSource)],sorters:[e(t),[]],styles:[t,{}],theme:[a,\"simple\"],theme_url:[a,\"https://unpkg.com/tabulator-tables@4.9.3/dist/css/\"]})))}}s.DataTabulator=p,p.__name__=\"DataTabulator\",p.__module__=\"panel.models.tabulator\",p.init_DataTabulator()},\n \"f1971f81bf\": function _(n,t,e,o,r){o(),e.transform_cds_to_records=function(n,t=!1){const e=[],o=n.columns(),r=n.get_length();if(0===o.length||null===r)return[];for(let l=0;l<r;l++){const r={};for(const t of o){let e=n.get_array(t);const o=null==e[0].shape?null:e[0].shape;null!=o&&o.length>1&&\"number\"==typeof o[0]?r[t]=e.slice(l*o[1],l*o[1]+o[1]):r[t]=e[l]}t&&(r._index=l),e.push(r)}return e},e.dict_to_records=function(n,t=!0){for(let e=0;e<n.index.length;e++){const o={};for(const r of n)(t||\"index\"!==r)&&(o[r]=n[r][e])}return[]}},\n \"6e11b2cfe2\": function _(e,t,i,s,n){s();const o=e(\"tslib\"),l=o.__importDefault(e(\"50d3473f3f\")),d=e(\"@bokehjs/models/widgets/input_widget\"),a=e(\"@bokehjs/core/dom\"),r=e(\"@bokehjs/core/enums\"),c=e(\"@bokehjs/core/util/types\"),m=o.__importStar(e(\"@bokehjs/styles/widgets/inputs.css\")),h=o.__importDefault(e(\"@bokehjs/styles/widgets/flatpickr.css\"));function _(e){const t=[];for(const i of e)if(c.isString(i))t.push(i);else{const[e,s]=i;t.push({from:e,to:s})}return t}class u extends d.InputWidgetView{connect_signals(){super.connect_signals();const{value:e,min_date:t,max_date:i,disabled_dates:s,enabled_dates:n,position:o,inline:l,enable_time:d,enable_seconds:a,military_time:r,date_format:c,mode:m}=this.model.properties;this.connect(e.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.setDate(this.model.value)})),this.connect(t.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"minDate\",this.model.min_date)})),this.connect(i.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"maxDate\",this.model.max_date)})),this.connect(s.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"disable\",this.model.disabled_dates)})),this.connect(n.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enable\",this.model.enabled_dates)})),this.connect(o.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"position\",this.model.position)})),this.connect(l.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"inline\",this.model.inline)})),this.connect(d.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enableTime\",this.model.enable_time)})),this.connect(a.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"enableSeconds\",this.model.enable_seconds)})),this.connect(r.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"time_24hr\",this.model.military_time)})),this.connect(m.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"mode\",this.model.mode)})),this.connect(c.change,(()=>{var e;return null===(e=this._picker)||void 0===e?void 0:e.set(\"dateFormat\",this.model.date_format)}))}remove(){var e;null===(e=this._picker)||void 0===e||e.destroy(),super.remove()}styles(){return[...super.styles(),h.default]}render(){var e,t;null==this._picker&&(super.render(),this.input_el=a.input({type:\"text\",class:m.input,disabled:this.model.disabled}),this.group_el.appendChild(this.input_el),this._picker=l.default(this.input_el,{defaultDate:this.model.value,minDate:null!==(e=this.model.min_date)&&void 0!==e?e:void 0,maxDate:null!==(t=this.model.max_date)&&void 0!==t?t:void 0,inline:this.model.inline,position:this.model.position,disable:_(this.model.disabled_dates),enable:_(this.model.enabled_dates),enableTime:this.model.enable_time,enableSeconds:this.model.enable_seconds,time_24hr:this.model.military_time,dateFormat:this.model.date_format,mode:this.model.mode,onClose:(e,t,i)=>this._on_close(e,t,i)}))}_on_close(e,t,i){(\"range\"!=this.model.mode||t.includes(\"to\"))&&(this.model.value=t,this.change_input())}}i.DatetimePickerView=u,u.__name__=\"DatetimePickerView\";class p extends d.InputWidget{constructor(e){super(e)}static init_DatetimePicker(){this.prototype.default_view=u,this.define((({Boolean:e,String:t,Array:i,Tuple:s,Or:n,Nullable:o})=>{const l=i(n(t,s(t,t)));return{value:[t],min_date:[o(t),null],max_date:[o(t),null],disabled_dates:[l,[]],enabled_dates:[l,[]],position:[r.CalendarPosition,\"auto\"],inline:[e,!1],enable_time:[e,!0],enable_seconds:[e,!0],military_time:[e,!0],date_format:[t,\"Y-m-d H:i:S\"],mode:[t,\"single\"]}}))}}i.DatetimePicker=p,p.__name__=\"DatetimePicker\",p.__module__=\"panel.models.datetime_picker\",p.init_DatetimePicker()},\n \"50d3473f3f\": function _(e,n,t,a,i){\n /* flatpickr v4.6.6, @license MIT */var o,r;o=this,r=function(){\"use strict\";\n /*! *****************************************************************************\n Copyright (c) Microsoft Corporation.\n \n Permission to use, copy, modify, and/or distribute this software for any\n purpose with or without fee is hereby granted.\n \n THE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\n REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\n AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\n INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\n LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\n OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\n PERFORMANCE OF THIS SOFTWARE.\n ***************************************************************************** */var e=function(){return(e=Object.assign||function(e){for(var n,t=1,a=arguments.length;t<a;t++)for(var i in n=arguments[t])Object.prototype.hasOwnProperty.call(n,i)&&(e[i]=n[i]);return e}).apply(this,arguments)};function n(){for(var e=0,n=0,t=arguments.length;n<t;n++)e+=arguments[n].length;var a=Array(e),i=0;for(n=0;n<t;n++)for(var o=arguments[n],r=0,l=o.length;r<l;r++,i++)a[i]=o[r];return a}var t=[\"onChange\",\"onClose\",\"onDayCreate\",\"onDestroy\",\"onKeyDown\",\"onMonthChange\",\"onOpen\",\"onParseConfig\",\"onReady\",\"onValueUpdate\",\"onYearChange\",\"onPreCalendarPosition\"],a={_disable:[],_enable:[],allowInput:!1,allowInvalidPreload:!1,altFormat:\"F j, Y\",altInput:!1,altInputClass:\"form-control input\",animate:\"object\"==typeof window&&-1===window.navigator.userAgent.indexOf(\"MSIE\"),ariaDateFormat:\"F j, Y\",autoFillDefaultTime:!0,clickOpens:!0,closeOnSelect:!0,conjunction:\", \",dateFormat:\"Y-m-d\",defaultHour:12,defaultMinute:0,defaultSeconds:0,disable:[],disableMobile:!1,enable:[],enableSeconds:!1,enableTime:!1,errorHandler:function(e){return\"undefined\"!=typeof console&&console.warn(e)},getWeek:function(e){var n=new Date(e.getTime());n.setHours(0,0,0,0),n.setDate(n.getDate()+3-(n.getDay()+6)%7);var t=new Date(n.getFullYear(),0,4);return 1+Math.round(((n.getTime()-t.getTime())/864e5-3+(t.getDay()+6)%7)/7)},hourIncrement:1,ignoredFocusElements:[],inline:!1,locale:\"default\",minuteIncrement:5,mode:\"single\",monthSelectorType:\"dropdown\",nextArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M13.207 8.472l-7.854 7.854-0.707-0.707 7.146-7.146-7.146-7.148 0.707-0.707 7.854 7.854z' /></svg>\",noCalendar:!1,now:new Date,onChange:[],onClose:[],onDayCreate:[],onDestroy:[],onKeyDown:[],onMonthChange:[],onOpen:[],onParseConfig:[],onReady:[],onValueUpdate:[],onYearChange:[],onPreCalendarPosition:[],plugins:[],position:\"auto\",positionElement:void 0,prevArrow:\"<svg version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' viewBox='0 0 17 17'><g></g><path d='M5.207 8.471l7.146 7.147-0.707 0.707-7.853-7.854 7.854-7.853 0.707 0.707-7.147 7.146z' /></svg>\",shorthandCurrentMonth:!1,showMonths:1,static:!1,time_24hr:!1,weekNumbers:!1,wrap:!1},i={weekdays:{shorthand:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"],longhand:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"]},months:{shorthand:[\"Jan\",\"Feb\",\"Mar\",\"Apr\",\"May\",\"Jun\",\"Jul\",\"Aug\",\"Sep\",\"Oct\",\"Nov\",\"Dec\"],longhand:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"]},daysInMonth:[31,28,31,30,31,30,31,31,30,31,30,31],firstDayOfWeek:0,ordinal:function(e){var n=e%100;if(n>3&&n<21)return\"th\";switch(n%10){case 1:return\"st\";case 2:return\"nd\";case 3:return\"rd\";default:return\"th\"}},rangeSeparator:\" to \",weekAbbreviation:\"Wk\",scrollTitle:\"Scroll to increment\",toggleTitle:\"Click to toggle\",amPM:[\"AM\",\"PM\"],yearAriaLabel:\"Year\",monthAriaLabel:\"Month\",hourAriaLabel:\"Hour\",minuteAriaLabel:\"Minute\",time_24hr:!1},o=function(e,n){return void 0===n&&(n=2),(\"000\"+e).slice(-1*n)},r=function(e){return!0===e?1:0};function l(e,n,t){var a;return void 0===t&&(t=!1),function(){var i=this,o=arguments;null!==a&&clearTimeout(a),a=window.setTimeout((function(){a=null,t||e.apply(i,o)}),n),t&&!a&&e.apply(i,o)}}var c=function(e){return e instanceof Array?e:[e]};function d(e,n,t){if(!0===t)return e.classList.add(n);e.classList.remove(n)}function s(e,n,t){var a=window.document.createElement(e);return n=n||\"\",t=t||\"\",a.className=n,void 0!==t&&(a.textContent=t),a}function u(e){for(;e.firstChild;)e.removeChild(e.firstChild)}function f(e,n){return n(e)?e:e.parentNode?f(e.parentNode,n):void 0}function m(e,n){var t=s(\"div\",\"numInputWrapper\"),a=s(\"input\",\"numInput \"+e),i=s(\"span\",\"arrowUp\"),o=s(\"span\",\"arrowDown\");if(-1===navigator.userAgent.indexOf(\"MSIE 9.0\")?a.type=\"number\":(a.type=\"text\",a.pattern=\"\\\\d*\"),void 0!==n)for(var r in n)a.setAttribute(r,n[r]);return t.appendChild(a),t.appendChild(i),t.appendChild(o),t}function g(e){try{return\"function\"==typeof e.composedPath?e.composedPath()[0]:e.target}catch(n){return e.target}}var p=function(){},h=function(e,n,t){return t.months[n?\"shorthand\":\"longhand\"][e]},v={D:p,F:function(e,n,t){e.setMonth(t.months.longhand.indexOf(n))},G:function(e,n){e.setHours(parseFloat(n))},H:function(e,n){e.setHours(parseFloat(n))},J:function(e,n){e.setDate(parseFloat(n))},K:function(e,n,t){e.setHours(e.getHours()%12+12*r(new RegExp(t.amPM[1],\"i\").test(n)))},M:function(e,n,t){e.setMonth(t.months.shorthand.indexOf(n))},S:function(e,n){e.setSeconds(parseFloat(n))},U:function(e,n){return new Date(1e3*parseFloat(n))},W:function(e,n,t){var a=parseInt(n),i=new Date(e.getFullYear(),0,2+7*(a-1),0,0,0,0);return i.setDate(i.getDate()-i.getDay()+t.firstDayOfWeek),i},Y:function(e,n){e.setFullYear(parseFloat(n))},Z:function(e,n){return new Date(n)},d:function(e,n){e.setDate(parseFloat(n))},h:function(e,n){e.setHours(parseFloat(n))},i:function(e,n){e.setMinutes(parseFloat(n))},j:function(e,n){e.setDate(parseFloat(n))},l:p,m:function(e,n){e.setMonth(parseFloat(n)-1)},n:function(e,n){e.setMonth(parseFloat(n)-1)},s:function(e,n){e.setSeconds(parseFloat(n))},u:function(e,n){return new Date(parseFloat(n))},w:p,y:function(e,n){e.setFullYear(2e3+parseFloat(n))}},D={D:\"(\\\\w+)\",F:\"(\\\\w+)\",G:\"(\\\\d\\\\d|\\\\d)\",H:\"(\\\\d\\\\d|\\\\d)\",J:\"(\\\\d\\\\d|\\\\d)\\\\w+\",K:\"\",M:\"(\\\\w+)\",S:\"(\\\\d\\\\d|\\\\d)\",U:\"(.+)\",W:\"(\\\\d\\\\d|\\\\d)\",Y:\"(\\\\d{4})\",Z:\"(.+)\",d:\"(\\\\d\\\\d|\\\\d)\",h:\"(\\\\d\\\\d|\\\\d)\",i:\"(\\\\d\\\\d|\\\\d)\",j:\"(\\\\d\\\\d|\\\\d)\",l:\"(\\\\w+)\",m:\"(\\\\d\\\\d|\\\\d)\",n:\"(\\\\d\\\\d|\\\\d)\",s:\"(\\\\d\\\\d|\\\\d)\",u:\"(.+)\",w:\"(\\\\d\\\\d|\\\\d)\",y:\"(\\\\d{2})\"},w={Z:function(e){return e.toISOString()},D:function(e,n,t){return n.weekdays.shorthand[w.w(e,n,t)]},F:function(e,n,t){return h(w.n(e,n,t)-1,!1,n)},G:function(e,n,t){return o(w.h(e,n,t))},H:function(e){return o(e.getHours())},J:function(e,n){return void 0!==n.ordinal?e.getDate()+n.ordinal(e.getDate()):e.getDate()},K:function(e,n){return n.amPM[r(e.getHours()>11)]},M:function(e,n){return h(e.getMonth(),!0,n)},S:function(e){return o(e.getSeconds())},U:function(e){return e.getTime()/1e3},W:function(e,n,t){return t.getWeek(e)},Y:function(e){return o(e.getFullYear(),4)},d:function(e){return o(e.getDate())},h:function(e){return e.getHours()%12?e.getHours()%12:12},i:function(e){return o(e.getMinutes())},j:function(e){return e.getDate()},l:function(e,n){return n.weekdays.longhand[e.getDay()]},m:function(e){return o(e.getMonth()+1)},n:function(e){return e.getMonth()+1},s:function(e){return e.getSeconds()},u:function(e){return e.getTime()},w:function(e){return e.getDay()},y:function(e){return String(e.getFullYear()).substring(2)}},b=function(e){var n=e.config,t=void 0===n?a:n,o=e.l10n,r=void 0===o?i:o,l=e.isMobile,c=void 0!==l&&l;return function(e,n,a){var i=a||r;return void 0===t.formatDate||c?n.split(\"\").map((function(n,a,o){return w[n]&&\"\\\\\"!==o[a-1]?w[n](e,i,t):\"\\\\\"!==n?n:\"\"})).join(\"\"):t.formatDate(e,n,i)}},C=function(e){var n=e.config,t=void 0===n?a:n,o=e.l10n,r=void 0===o?i:o;return function(e,n,i,o){if(0===e||e){var l,c=o||r,d=e;if(e instanceof Date)l=new Date(e.getTime());else if(\"string\"!=typeof e&&void 0!==e.toFixed)l=new Date(e);else if(\"string\"==typeof e){var s=n||(t||a).dateFormat,u=String(e).trim();if(\"today\"===u)l=new Date,i=!0;else if(/Z$/.test(u)||/GMT$/.test(u))l=new Date(e);else if(t&&t.parseDate)l=t.parseDate(e,s);else{l=t&&t.noCalendar?new Date((new Date).setHours(0,0,0,0)):new Date((new Date).getFullYear(),0,1,0,0,0,0);for(var f=void 0,m=[],g=0,p=0,h=\"\";g<s.length;g++){var w=s[g],b=\"\\\\\"===w,C=\"\\\\\"===s[g-1]||b;if(D[w]&&!C){h+=D[w];var M=new RegExp(h).exec(e);M&&(f=!0)&&m[\"Y\"!==w?\"push\":\"unshift\"]({fn:v[w],val:M[++p]})}else b||(h+=\".\");m.forEach((function(e){var n=e.fn,t=e.val;return l=n(l,t,c)||l}))}l=f?l:void 0}}if(l instanceof Date&&!isNaN(l.getTime()))return!0===i&&l.setHours(0,0,0,0),l;t.errorHandler(new Error(\"Invalid date provided: \"+d))}}};function M(e,n,t){return void 0===t&&(t=!0),!1!==t?new Date(e.getTime()).setHours(0,0,0,0)-new Date(n.getTime()).setHours(0,0,0,0):e.getTime()-n.getTime()}var y=864e5;function x(p,v){var w={config:e(e({},a),k.defaultConfig),l10n:i};function x(e){return e.bind(w)}function E(){var e=w.config;!1===e.weekNumbers&&1===e.showMonths||!0!==e.noCalendar&&window.requestAnimationFrame((function(){if(void 0!==w.calendarContainer&&(w.calendarContainer.style.visibility=\"hidden\",w.calendarContainer.style.display=\"block\"),void 0!==w.daysContainer){var n=(w.days.offsetWidth+1)*e.showMonths;w.daysContainer.style.width=n+\"px\",w.calendarContainer.style.width=n+(void 0!==w.weekWrapper?w.weekWrapper.offsetWidth:0)+\"px\",w.calendarContainer.style.removeProperty(\"visibility\"),w.calendarContainer.style.removeProperty(\"display\")}}))}function T(e){if(0===w.selectedDates.length){var n=void 0!==w.config.minDate?new Date(w.config.minDate.getTime()):new Date,t=_(),a=t.hours,i=t.minutes,l=t.seconds;n.setHours(a,i,l,0),w.setDate(n,!1)}void 0!==e&&\"blur\"!==e.type&&function(e){e.preventDefault();var n=\"keydown\"===e.type,t=g(e),a=t;void 0!==w.amPM&&t===w.amPM&&(w.amPM.textContent=w.l10n.amPM[r(w.amPM.textContent===w.l10n.amPM[0])]);var i=parseFloat(a.getAttribute(\"min\")),l=parseFloat(a.getAttribute(\"max\")),c=parseFloat(a.getAttribute(\"step\")),d=parseInt(a.value,10),s=e.delta||(n?38===e.which?1:-1:0),u=d+c*s;if(void 0!==a.value&&2===a.value.length){var f=a===w.hourElement,m=a===w.minuteElement;u<i?(u=l+u+r(!f)+(r(f)&&r(!w.amPM)),m&&H(void 0,-1,w.hourElement)):u>l&&(u=a===w.hourElement?u-l-r(!w.amPM):i,m&&H(void 0,1,w.hourElement)),w.amPM&&f&&(1===c?u+d===23:Math.abs(u-d)>c)&&(w.amPM.textContent=w.l10n.amPM[r(w.amPM.textContent===w.l10n.amPM[0])]),a.value=o(u)}}(e);var c=w._input.value;I(),be(),w._input.value!==c&&w._debouncedChange()}function I(){if(void 0!==w.hourElement&&void 0!==w.minuteElement){var e,n,t=(parseInt(w.hourElement.value.slice(-2),10)||0)%24,a=(parseInt(w.minuteElement.value,10)||0)%60,i=void 0!==w.secondElement?(parseInt(w.secondElement.value,10)||0)%60:0;void 0!==w.amPM&&(e=t,n=w.amPM.textContent,t=e%12+12*r(n===w.l10n.amPM[1]));var o=void 0!==w.config.minTime||w.config.minDate&&w.minDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.minDate,!0);if(void 0!==w.config.maxTime||w.config.maxDate&&w.maxDateHasTime&&w.latestSelectedDateObj&&0===M(w.latestSelectedDateObj,w.config.maxDate,!0)){var l=void 0!==w.config.maxTime?w.config.maxTime:w.config.maxDate;(t=Math.min(t,l.getHours()))===l.getHours()&&(a=Math.min(a,l.getMinutes())),a===l.getMinutes()&&(i=Math.min(i,l.getSeconds()))}if(o){var c=void 0!==w.config.minTime?w.config.minTime:w.config.minDate;(t=Math.max(t,c.getHours()))===c.getHours()&&(a=Math.max(a,c.getMinutes())),a===c.getMinutes()&&(i=Math.max(i,c.getSeconds()))}O(t,a,i)}}function S(e){var n=e||w.latestSelectedDateObj;n&&O(n.getHours(),n.getMinutes(),n.getSeconds())}function _(){var e=w.config.defaultHour,n=w.config.defaultMinute,t=w.config.defaultSeconds;if(void 0!==w.config.minDate){var a=w.config.minDate.getHours(),i=w.config.minDate.getMinutes();(e=Math.max(e,a))===a&&(n=Math.max(i,n)),e===a&&n===i&&(t=w.config.minDate.getSeconds())}if(void 0!==w.config.maxDate){var o=w.config.maxDate.getHours(),r=w.config.maxDate.getMinutes();(e=Math.min(e,o))===o&&(n=Math.min(r,n)),e===o&&n===r&&(t=w.config.maxDate.getSeconds())}return{hours:e,minutes:n,seconds:t}}function O(e,n,t){void 0!==w.latestSelectedDateObj&&w.latestSelectedDateObj.setHours(e%24,n,t||0,0),w.hourElement&&w.minuteElement&&!w.isMobile&&(w.hourElement.value=o(w.config.time_24hr?e:(12+e)%12+12*r(e%12==0)),w.minuteElement.value=o(n),void 0!==w.amPM&&(w.amPM.textContent=w.l10n.amPM[r(e>=12)]),void 0!==w.secondElement&&(w.secondElement.value=o(t)))}function F(e){var n=g(e),t=parseInt(n.value)+(e.delta||0);(t/1e3>1||\"Enter\"===e.key&&!/[^\\d]/.test(t.toString()))&&Q(t)}function N(e,n,t,a){return n instanceof Array?n.forEach((function(n){return N(e,n,t,a)})):e instanceof Array?e.forEach((function(e){return N(e,n,t,a)})):(e.addEventListener(n,t,a),void w._handlers.push({element:e,event:n,handler:t,options:a}))}function A(){pe(\"onChange\")}function P(e,n){var t=void 0!==e?w.parseDate(e):w.latestSelectedDateObj||(w.config.minDate&&w.config.minDate>w.now?w.config.minDate:w.config.maxDate&&w.config.maxDate<w.now?w.config.maxDate:w.now),a=w.currentYear,i=w.currentMonth;try{void 0!==t&&(w.currentYear=t.getFullYear(),w.currentMonth=t.getMonth())}catch(e){e.message=\"Invalid date supplied: \"+t,w.config.errorHandler(e)}n&&w.currentYear!==a&&(pe(\"onYearChange\"),K()),!n||w.currentYear===a&&w.currentMonth===i||pe(\"onMonthChange\"),w.redraw()}function Y(e){var n=g(e);~n.className.indexOf(\"arrow\")&&H(e,n.classList.contains(\"arrowUp\")?1:-1)}function H(e,n,t){var a=e&&g(e),i=t||a&&a.parentNode&&a.parentNode.firstChild,o=he(\"increment\");o.delta=n,i&&i.dispatchEvent(o)}function j(e,n,t,a){var i=X(n,!0),o=s(\"span\",\"flatpickr-day \"+e,n.getDate().toString());return o.dateObj=n,o.$i=a,o.setAttribute(\"aria-label\",w.formatDate(n,w.config.ariaDateFormat)),-1===e.indexOf(\"hidden\")&&0===M(n,w.now)&&(w.todayDateElem=o,o.classList.add(\"today\"),o.setAttribute(\"aria-current\",\"date\")),i?(o.tabIndex=-1,ve(n)&&(o.classList.add(\"selected\"),w.selectedDateElem=o,\"range\"===w.config.mode&&(d(o,\"startRange\",w.selectedDates[0]&&0===M(n,w.selectedDates[0],!0)),d(o,\"endRange\",w.selectedDates[1]&&0===M(n,w.selectedDates[1],!0)),\"nextMonthDay\"===e&&o.classList.add(\"inRange\")))):o.classList.add(\"flatpickr-disabled\"),\"range\"===w.config.mode&&function(e){return!(\"range\"!==w.config.mode||w.selectedDates.length<2)&&M(e,w.selectedDates[0])>=0&&M(e,w.selectedDates[1])<=0}(n)&&!ve(n)&&o.classList.add(\"inRange\"),w.weekNumbers&&1===w.config.showMonths&&\"prevMonthDay\"!==e&&t%7==1&&w.weekNumbers.insertAdjacentHTML(\"beforeend\",\"<span class='flatpickr-day'>\"+w.config.getWeek(n)+\"</span>\"),pe(\"onDayCreate\",o),o}function L(e){e.focus(),\"range\"===w.config.mode&&ae(e)}function W(e){for(var n=e>0?0:w.config.showMonths-1,t=e>0?w.config.showMonths:-1,a=n;a!=t;a+=e)for(var i=w.daysContainer.children[a],o=e>0?0:i.children.length-1,r=e>0?i.children.length:-1,l=o;l!=r;l+=e){var c=i.children[l];if(-1===c.className.indexOf(\"hidden\")&&X(c.dateObj))return c}}function R(e,n){var t=ee(document.activeElement||document.body),a=void 0!==e?e:t?document.activeElement:void 0!==w.selectedDateElem&&ee(w.selectedDateElem)?w.selectedDateElem:void 0!==w.todayDateElem&&ee(w.todayDateElem)?w.todayDateElem:W(n>0?1:-1);void 0===a?w._input.focus():t?function(e,n){for(var t=-1===e.className.indexOf(\"Month\")?e.dateObj.getMonth():w.currentMonth,a=n>0?w.config.showMonths:-1,i=n>0?1:-1,o=t-w.currentMonth;o!=a;o+=i)for(var r=w.daysContainer.children[o],l=t-w.currentMonth===o?e.$i+n:n<0?r.children.length-1:0,c=r.children.length,d=l;d>=0&&d<c&&d!=(n>0?c:-1);d+=i){var s=r.children[d];if(-1===s.className.indexOf(\"hidden\")&&X(s.dateObj)&&Math.abs(e.$i-d)>=Math.abs(n))return L(s)}w.changeMonth(i),R(W(i),0)}(a,n):L(a)}function B(e,n){for(var t=(new Date(e,n,1).getDay()-w.l10n.firstDayOfWeek+7)%7,a=w.utils.getDaysInMonth((n-1+12)%12,e),i=w.utils.getDaysInMonth(n,e),o=window.document.createDocumentFragment(),r=w.config.showMonths>1,l=r?\"prevMonthDay hidden\":\"prevMonthDay\",c=r?\"nextMonthDay hidden\":\"nextMonthDay\",d=a+1-t,u=0;d<=a;d++,u++)o.appendChild(j(l,new Date(e,n-1,d),d,u));for(d=1;d<=i;d++,u++)o.appendChild(j(\"\",new Date(e,n,d),d,u));for(var f=i+1;f<=42-t&&(1===w.config.showMonths||u%7!=0);f++,u++)o.appendChild(j(c,new Date(e,n+1,f%i),f,u));var m=s(\"div\",\"dayContainer\");return m.appendChild(o),m}function J(){if(void 0!==w.daysContainer){u(w.daysContainer),w.weekNumbers&&u(w.weekNumbers);for(var e=document.createDocumentFragment(),n=0;n<w.config.showMonths;n++){var t=new Date(w.currentYear,w.currentMonth,1);t.setMonth(w.currentMonth+n),e.appendChild(B(t.getFullYear(),t.getMonth()))}w.daysContainer.appendChild(e),w.days=w.daysContainer.firstChild,\"range\"===w.config.mode&&1===w.selectedDates.length&&ae()}}function K(){if(!(w.config.showMonths>1||\"dropdown\"!==w.config.monthSelectorType)){var e=function(e){return!(void 0!==w.config.minDate&&w.currentYear===w.config.minDate.getFullYear()&&e<w.config.minDate.getMonth()||void 0!==w.config.maxDate&&w.currentYear===w.config.maxDate.getFullYear()&&e>w.config.maxDate.getMonth())};w.monthsDropdownContainer.tabIndex=-1,w.monthsDropdownContainer.innerHTML=\"\";for(var n=0;n<12;n++)if(e(n)){var t=s(\"option\",\"flatpickr-monthDropdown-month\");t.value=new Date(w.currentYear,n).getMonth().toString(),t.textContent=h(n,w.config.shorthandCurrentMonth,w.l10n),t.tabIndex=-1,w.currentMonth===n&&(t.selected=!0),w.monthsDropdownContainer.appendChild(t)}}}function U(){var e,n=s(\"div\",\"flatpickr-month\"),t=window.document.createDocumentFragment();w.config.showMonths>1||\"static\"===w.config.monthSelectorType?e=s(\"span\",\"cur-month\"):(w.monthsDropdownContainer=s(\"select\",\"flatpickr-monthDropdown-months\"),w.monthsDropdownContainer.setAttribute(\"aria-label\",w.l10n.monthAriaLabel),N(w.monthsDropdownContainer,\"change\",(function(e){var n=g(e),t=parseInt(n.value,10);w.changeMonth(t-w.currentMonth),pe(\"onMonthChange\")})),K(),e=w.monthsDropdownContainer);var a=m(\"cur-year\",{tabindex:\"-1\"}),i=a.getElementsByTagName(\"input\")[0];i.setAttribute(\"aria-label\",w.l10n.yearAriaLabel),w.config.minDate&&i.setAttribute(\"min\",w.config.minDate.getFullYear().toString()),w.config.maxDate&&(i.setAttribute(\"max\",w.config.maxDate.getFullYear().toString()),i.disabled=!!w.config.minDate&&w.config.minDate.getFullYear()===w.config.maxDate.getFullYear());var o=s(\"div\",\"flatpickr-current-month\");return o.appendChild(e),o.appendChild(a),t.appendChild(o),n.appendChild(t),{container:n,yearElement:i,monthElement:e}}function q(){u(w.monthNav),w.monthNav.appendChild(w.prevMonthNav),w.config.showMonths&&(w.yearElements=[],w.monthElements=[]);for(var e=w.config.showMonths;e--;){var n=U();w.yearElements.push(n.yearElement),w.monthElements.push(n.monthElement),w.monthNav.appendChild(n.container)}w.monthNav.appendChild(w.nextMonthNav)}function $(){w.weekdayContainer?u(w.weekdayContainer):w.weekdayContainer=s(\"div\",\"flatpickr-weekdays\");for(var e=w.config.showMonths;e--;){var n=s(\"div\",\"flatpickr-weekdaycontainer\");w.weekdayContainer.appendChild(n)}return z(),w.weekdayContainer}function z(){if(w.weekdayContainer){var e=w.l10n.firstDayOfWeek,t=n(w.l10n.weekdays.shorthand);e>0&&e<t.length&&(t=n(t.splice(e,t.length),t.splice(0,e)));for(var a=w.config.showMonths;a--;)w.weekdayContainer.children[a].innerHTML=\"\\n <span class='flatpickr-weekday'>\\n \"+t.join(\"</span><span class='flatpickr-weekday'>\")+\"\\n </span>\\n \"}}function G(e,n){void 0===n&&(n=!0);var t=n?e:e-w.currentMonth;t<0&&!0===w._hidePrevMonthArrow||t>0&&!0===w._hideNextMonthArrow||(w.currentMonth+=t,(w.currentMonth<0||w.currentMonth>11)&&(w.currentYear+=w.currentMonth>11?1:-1,w.currentMonth=(w.currentMonth+12)%12,pe(\"onYearChange\"),K()),J(),pe(\"onMonthChange\"),De())}function V(e){return!(!w.config.appendTo||!w.config.appendTo.contains(e))||w.calendarContainer.contains(e)}function Z(e){if(w.isOpen&&!w.config.inline){var n=g(e),t=V(n),a=n===w.input||n===w.altInput||w.element.contains(n)||e.path&&e.path.indexOf&&(~e.path.indexOf(w.input)||~e.path.indexOf(w.altInput)),i=\"blur\"===e.type?a&&e.relatedTarget&&!V(e.relatedTarget):!a&&!t&&!V(e.relatedTarget),o=!w.config.ignoredFocusElements.some((function(e){return e.contains(n)}));i&&o&&(void 0!==w.timeContainer&&void 0!==w.minuteElement&&void 0!==w.hourElement&&\"\"!==w.input.value&&void 0!==w.input.value&&T(),w.close(),w.config&&\"range\"===w.config.mode&&1===w.selectedDates.length&&(w.clear(!1),w.redraw()))}}function Q(e){if(!(!e||w.config.minDate&&e<w.config.minDate.getFullYear()||w.config.maxDate&&e>w.config.maxDate.getFullYear())){var n=e,t=w.currentYear!==n;w.currentYear=n||w.currentYear,w.config.maxDate&&w.currentYear===w.config.maxDate.getFullYear()?w.currentMonth=Math.min(w.config.maxDate.getMonth(),w.currentMonth):w.config.minDate&&w.currentYear===w.config.minDate.getFullYear()&&(w.currentMonth=Math.max(w.config.minDate.getMonth(),w.currentMonth)),t&&(w.redraw(),pe(\"onYearChange\"),K())}}function X(e,n){void 0===n&&(n=!0);var t=w.parseDate(e,void 0,n);if(w.config.minDate&&t&&M(t,w.config.minDate,void 0!==n?n:!w.minDateHasTime)<0||w.config.maxDate&&t&&M(t,w.config.maxDate,void 0!==n?n:!w.maxDateHasTime)>0)return!1;if(0===w.config.enable.length&&0===w.config.disable.length)return!0;if(void 0===t)return!1;for(var a=w.config.enable.length>0,i=a?w.config.enable:w.config.disable,o=0,r=void 0;o<i.length;o++){if(\"function\"==typeof(r=i[o])&&r(t))return a;if(r instanceof Date&&void 0!==t&&r.getTime()===t.getTime())return a;if(\"string\"==typeof r&&void 0!==t){var l=w.parseDate(r,void 0,!0);return l&&l.getTime()===t.getTime()?a:!a}if(\"object\"==typeof r&&void 0!==t&&r.from&&r.to&&t.getTime()>=r.from.getTime()&&t.getTime()<=r.to.getTime())return a}return!a}function ee(e){return void 0!==w.daysContainer&&-1===e.className.indexOf(\"hidden\")&&-1===e.className.indexOf(\"flatpickr-disabled\")&&w.daysContainer.contains(e)}function ne(e){e.target!==w._input||e.relatedTarget&&V(e.relatedTarget)||w.setDate(w._input.value,!0,e.target===w.altInput?w.config.altFormat:w.config.dateFormat)}function te(e){var n=g(e),t=w.config.wrap?p.contains(n):n===w._input,a=w.config.allowInput,i=w.isOpen&&(!a||!t),o=w.config.inline&&t&&!a;if(13===e.keyCode&&t){if(a)return w.setDate(w._input.value,!0,n===w.altInput?w.config.altFormat:w.config.dateFormat),n.blur();w.open()}else if(V(n)||i||o){var r=!!w.timeContainer&&w.timeContainer.contains(n);switch(e.keyCode){case 13:r?(e.preventDefault(),T(),se()):ue(e);break;case 27:e.preventDefault(),se();break;case 8:case 46:t&&!w.config.allowInput&&(e.preventDefault(),w.clear());break;case 37:case 39:if(r||t)w.hourElement&&w.hourElement.focus();else if(e.preventDefault(),void 0!==w.daysContainer&&(!1===a||document.activeElement&&ee(document.activeElement))){var l=39===e.keyCode?1:-1;e.ctrlKey?(e.stopPropagation(),G(l),R(W(1),0)):R(void 0,l)}break;case 38:case 40:e.preventDefault();var c=40===e.keyCode?1:-1;w.daysContainer&&void 0!==n.$i||n===w.input||n===w.altInput?e.ctrlKey?(e.stopPropagation(),Q(w.currentYear-c),R(W(1),0)):r||R(void 0,7*c):n===w.currentYearElement?Q(w.currentYear-c):w.config.enableTime&&(!r&&w.hourElement&&w.hourElement.focus(),T(e),w._debouncedChange());break;case 9:if(r){var d=[w.hourElement,w.minuteElement,w.secondElement,w.amPM].concat(w.pluginElements).filter((function(e){return e})),s=d.indexOf(n);if(-1!==s){var u=d[s+(e.shiftKey?-1:1)];e.preventDefault(),(u||w._input).focus()}}else!w.config.noCalendar&&w.daysContainer&&w.daysContainer.contains(n)&&e.shiftKey&&(e.preventDefault(),w._input.focus())}}if(void 0!==w.amPM&&n===w.amPM)switch(e.key){case w.l10n.amPM[0].charAt(0):case w.l10n.amPM[0].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[0],I(),be();break;case w.l10n.amPM[1].charAt(0):case w.l10n.amPM[1].charAt(0).toLowerCase():w.amPM.textContent=w.l10n.amPM[1],I(),be()}(t||V(n))&&pe(\"onKeyDown\",e)}function ae(e){if(1===w.selectedDates.length&&(!e||e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\"))){for(var n=e?e.dateObj.getTime():w.days.firstElementChild.dateObj.getTime(),t=w.parseDate(w.selectedDates[0],void 0,!0).getTime(),a=Math.min(n,w.selectedDates[0].getTime()),i=Math.max(n,w.selectedDates[0].getTime()),o=!1,r=0,l=0,c=a;c<i;c+=y)X(new Date(c),!0)||(o=o||c>a&&c<i,c<t&&(!r||c>r)?r=c:c>t&&(!l||c<l)&&(l=c));for(var d=0;d<w.config.showMonths;d++)for(var s=w.daysContainer.children[d],u=function(a,i){var c,d,u,f=s.children[a],m=f.dateObj.getTime(),g=r>0&&m<r||l>0&&m>l;return g?(f.classList.add(\"notAllowed\"),[\"inRange\",\"startRange\",\"endRange\"].forEach((function(e){f.classList.remove(e)})),\"continue\"):o&&!g?\"continue\":([\"startRange\",\"inRange\",\"endRange\",\"notAllowed\"].forEach((function(e){f.classList.remove(e)})),void(void 0!==e&&(e.classList.add(n<=w.selectedDates[0].getTime()?\"startRange\":\"endRange\"),t<n&&m===t?f.classList.add(\"startRange\"):t>n&&m===t&&f.classList.add(\"endRange\"),m>=r&&(0===l||m<=l)&&(d=t,u=n,(c=m)>Math.min(d,u)&&c<Math.max(d,u))&&f.classList.add(\"inRange\"))))},f=0,m=s.children.length;f<m;f++)u(f)}}function ie(){!w.isOpen||w.config.static||w.config.inline||ce()}function oe(e){return function(n){var t=w.config[\"_\"+e+\"Date\"]=w.parseDate(n,w.config.dateFormat),a=w.config[\"_\"+(\"min\"===e?\"max\":\"min\")+\"Date\"];void 0!==t&&(w[\"min\"===e?\"minDateHasTime\":\"maxDateHasTime\"]=t.getHours()>0||t.getMinutes()>0||t.getSeconds()>0),w.selectedDates&&(w.selectedDates=w.selectedDates.filter((function(e){return X(e)})),w.selectedDates.length||\"min\"!==e||S(t),be()),w.daysContainer&&(de(),void 0!==t?w.currentYearElement[e]=t.getFullYear().toString():w.currentYearElement.removeAttribute(e),w.currentYearElement.disabled=!!a&&void 0!==t&&a.getFullYear()===t.getFullYear())}}function re(){return w.config.wrap?p.querySelector(\"[data-input]\"):p}function le(){\"object\"!=typeof w.config.locale&&void 0===k.l10ns[w.config.locale]&&w.config.errorHandler(new Error(\"flatpickr: invalid locale \"+w.config.locale)),w.l10n=e(e({},k.l10ns.default),\"object\"==typeof w.config.locale?w.config.locale:\"default\"!==w.config.locale?k.l10ns[w.config.locale]:void 0),D.K=\"(\"+w.l10n.amPM[0]+\"|\"+w.l10n.amPM[1]+\"|\"+w.l10n.amPM[0].toLowerCase()+\"|\"+w.l10n.amPM[1].toLowerCase()+\")\",void 0===e(e({},v),JSON.parse(JSON.stringify(p.dataset||{}))).time_24hr&&void 0===k.defaultConfig.time_24hr&&(w.config.time_24hr=w.l10n.time_24hr),w.formatDate=b(w),w.parseDate=C({config:w.config,l10n:w.l10n})}function ce(e){if(void 0!==w.calendarContainer){pe(\"onPreCalendarPosition\");var n=e||w._positionElement,t=Array.prototype.reduce.call(w.calendarContainer.children,(function(e,n){return e+n.offsetHeight}),0),a=w.calendarContainer.offsetWidth,i=w.config.position.split(\" \"),o=i[0],r=i.length>1?i[1]:null,l=n.getBoundingClientRect(),c=window.innerHeight-l.bottom,s=\"above\"===o||\"below\"!==o&&c<t&&l.top>t,u=window.pageYOffset+l.top+(s?-t-2:n.offsetHeight+2);if(d(w.calendarContainer,\"arrowTop\",!s),d(w.calendarContainer,\"arrowBottom\",s),!w.config.inline){var f=window.pageXOffset+l.left,m=!1,g=!1;\"center\"===r?(f-=(a-l.width)/2,m=!0):\"right\"===r&&(f-=a-l.width,g=!0),d(w.calendarContainer,\"arrowLeft\",!m&&!g),d(w.calendarContainer,\"arrowCenter\",m),d(w.calendarContainer,\"arrowRight\",g);var p=window.document.body.offsetWidth-(window.pageXOffset+l.right),h=f+a>window.document.body.offsetWidth,v=p+a>window.document.body.offsetWidth;if(d(w.calendarContainer,\"rightMost\",h),!w.config.static)if(w.calendarContainer.style.top=u+\"px\",h)if(v){var D=function(){for(var e=null,n=0;n<document.styleSheets.length;n++){var t=document.styleSheets[n];try{t.cssRules}catch(e){continue}e=t;break}return null!=e?e:(a=document.createElement(\"style\"),document.head.appendChild(a),a.sheet);var a}();if(void 0===D)return;var b=window.document.body.offsetWidth,C=Math.max(0,b/2-a/2),M=D.cssRules.length,y=\"{left:\"+l.left+\"px;right:auto;}\";d(w.calendarContainer,\"rightMost\",!1),d(w.calendarContainer,\"centerMost\",!0),D.insertRule(\".flatpickr-calendar.centerMost:before,.flatpickr-calendar.centerMost:after\"+y,M),w.calendarContainer.style.left=C+\"px\",w.calendarContainer.style.right=\"auto\"}else w.calendarContainer.style.left=\"auto\",w.calendarContainer.style.right=p+\"px\";else w.calendarContainer.style.left=f+\"px\",w.calendarContainer.style.right=\"auto\"}}}function de(){w.config.noCalendar||w.isMobile||(K(),De(),J())}function se(){w._input.focus(),-1!==window.navigator.userAgent.indexOf(\"MSIE\")||void 0!==navigator.msMaxTouchPoints?setTimeout(w.close,0):w.close()}function ue(e){e.preventDefault(),e.stopPropagation();var n=f(g(e),(function(e){return e.classList&&e.classList.contains(\"flatpickr-day\")&&!e.classList.contains(\"flatpickr-disabled\")&&!e.classList.contains(\"notAllowed\")}));if(void 0!==n){var t=n,a=w.latestSelectedDateObj=new Date(t.dateObj.getTime()),i=(a.getMonth()<w.currentMonth||a.getMonth()>w.currentMonth+w.config.showMonths-1)&&\"range\"!==w.config.mode;if(w.selectedDateElem=t,\"single\"===w.config.mode)w.selectedDates=[a];else if(\"multiple\"===w.config.mode){var o=ve(a);o?w.selectedDates.splice(parseInt(o),1):w.selectedDates.push(a)}else\"range\"===w.config.mode&&(2===w.selectedDates.length&&w.clear(!1,!1),w.latestSelectedDateObj=a,w.selectedDates.push(a),0!==M(a,w.selectedDates[0],!0)&&w.selectedDates.sort((function(e,n){return e.getTime()-n.getTime()})));if(I(),i){var r=w.currentYear!==a.getFullYear();w.currentYear=a.getFullYear(),w.currentMonth=a.getMonth(),r&&(pe(\"onYearChange\"),K()),pe(\"onMonthChange\")}if(De(),J(),be(),i||\"range\"===w.config.mode||1!==w.config.showMonths?void 0!==w.selectedDateElem&&void 0===w.hourElement&&w.selectedDateElem&&w.selectedDateElem.focus():L(t),void 0!==w.hourElement&&void 0!==w.hourElement&&w.hourElement.focus(),w.config.closeOnSelect){var l=\"single\"===w.config.mode&&!w.config.enableTime,c=\"range\"===w.config.mode&&2===w.selectedDates.length&&!w.config.enableTime;(l||c)&&se()}A()}}w.parseDate=C({config:w.config,l10n:w.l10n}),w._handlers=[],w.pluginElements=[],w.loadedPlugins=[],w._bind=N,w._setHoursFromDate=S,w._positionCalendar=ce,w.changeMonth=G,w.changeYear=Q,w.clear=function(e,n){if(void 0===e&&(e=!0),void 0===n&&(n=!0),w.input.value=\"\",void 0!==w.altInput&&(w.altInput.value=\"\"),void 0!==w.mobileInput&&(w.mobileInput.value=\"\"),w.selectedDates=[],w.latestSelectedDateObj=void 0,!0===n&&(w.currentYear=w._initialDate.getFullYear(),w.currentMonth=w._initialDate.getMonth()),!0===w.config.enableTime){var t=_(),a=t.hours,i=t.minutes,o=t.seconds;O(a,i,o)}w.redraw(),e&&pe(\"onChange\")},w.close=function(){w.isOpen=!1,w.isMobile||(void 0!==w.calendarContainer&&w.calendarContainer.classList.remove(\"open\"),void 0!==w._input&&w._input.classList.remove(\"active\")),pe(\"onClose\")},w._createElement=s,w.destroy=function(){void 0!==w.config&&pe(\"onDestroy\");for(var e=w._handlers.length;e--;){var n=w._handlers[e];n.element.removeEventListener(n.event,n.handler,n.options)}if(w._handlers=[],w.mobileInput)w.mobileInput.parentNode&&w.mobileInput.parentNode.removeChild(w.mobileInput),w.mobileInput=void 0;else if(w.calendarContainer&&w.calendarContainer.parentNode)if(w.config.static&&w.calendarContainer.parentNode){var t=w.calendarContainer.parentNode;if(t.lastChild&&t.removeChild(t.lastChild),t.parentNode){for(;t.firstChild;)t.parentNode.insertBefore(t.firstChild,t);t.parentNode.removeChild(t)}}else w.calendarContainer.parentNode.removeChild(w.calendarContainer);w.altInput&&(w.input.type=\"text\",w.altInput.parentNode&&w.altInput.parentNode.removeChild(w.altInput),delete w.altInput),w.input&&(w.input.type=w.input._type,w.input.classList.remove(\"flatpickr-input\"),w.input.removeAttribute(\"readonly\")),[\"_showTimeInput\",\"latestSelectedDateObj\",\"_hideNextMonthArrow\",\"_hidePrevMonthArrow\",\"__hideNextMonthArrow\",\"__hidePrevMonthArrow\",\"isMobile\",\"isOpen\",\"selectedDateElem\",\"minDateHasTime\",\"maxDateHasTime\",\"days\",\"daysContainer\",\"_input\",\"_positionElement\",\"innerContainer\",\"rContainer\",\"monthNav\",\"todayDateElem\",\"calendarContainer\",\"weekdayContainer\",\"prevMonthNav\",\"nextMonthNav\",\"monthsDropdownContainer\",\"currentMonthElement\",\"currentYearElement\",\"navigationCurrentMonth\",\"selectedDateElem\",\"config\"].forEach((function(e){try{delete w[e]}catch(e){}}))},w.isEnabled=X,w.jumpToDate=P,w.open=function(e,n){if(void 0===n&&(n=w._positionElement),!0===w.isMobile){if(e){e.preventDefault();var t=g(e);t&&t.blur()}return void 0!==w.mobileInput&&(w.mobileInput.focus(),w.mobileInput.click()),void pe(\"onOpen\")}if(!w._input.disabled&&!w.config.inline){var a=w.isOpen;w.isOpen=!0,a||(w.calendarContainer.classList.add(\"open\"),w._input.classList.add(\"active\"),pe(\"onOpen\"),ce(n)),!0===w.config.enableTime&&!0===w.config.noCalendar&&(!1!==w.config.allowInput||void 0!==e&&w.timeContainer.contains(e.relatedTarget)||setTimeout((function(){return w.hourElement.select()}),50))}},w.redraw=de,w.set=function(e,n){if(null!==e&&\"object\"==typeof e)for(var a in Object.assign(w.config,e),e)void 0!==fe[a]&&fe[a].forEach((function(e){return e()}));else w.config[e]=n,void 0!==fe[e]?fe[e].forEach((function(e){return e()})):t.indexOf(e)>-1&&(w.config[e]=c(n));w.redraw(),be(!0)},w.setDate=function(e,n,t){if(void 0===n&&(n=!1),void 0===t&&(t=w.config.dateFormat),0!==e&&!e||e instanceof Array&&0===e.length)return w.clear(n);me(e,t),w.latestSelectedDateObj=w.selectedDates[w.selectedDates.length-1],w.redraw(),P(void 0,n),S(),0===w.selectedDates.length&&w.clear(!1),be(n),n&&pe(\"onChange\")},w.toggle=function(e){if(!0===w.isOpen)return w.close();w.open(e)};var fe={locale:[le,z],showMonths:[q,E,$],minDate:[P],maxDate:[P]};function me(e,n){var t=[];if(e instanceof Array)t=e.map((function(e){return w.parseDate(e,n)}));else if(e instanceof Date||\"number\"==typeof e)t=[w.parseDate(e,n)];else if(\"string\"==typeof e)switch(w.config.mode){case\"single\":case\"time\":t=[w.parseDate(e,n)];break;case\"multiple\":t=e.split(w.config.conjunction).map((function(e){return w.parseDate(e,n)}));break;case\"range\":t=e.split(w.l10n.rangeSeparator).map((function(e){return w.parseDate(e,n)}))}else w.config.errorHandler(new Error(\"Invalid date supplied: \"+JSON.stringify(e)));w.selectedDates=w.config.allowInvalidPreload?t:t.filter((function(e){return e instanceof Date&&X(e,!1)})),\"range\"===w.config.mode&&w.selectedDates.sort((function(e,n){return e.getTime()-n.getTime()}))}function ge(e){return e.slice().map((function(e){return\"string\"==typeof e||\"number\"==typeof e||e instanceof Date?w.parseDate(e,void 0,!0):e&&\"object\"==typeof e&&e.from&&e.to?{from:w.parseDate(e.from,void 0),to:w.parseDate(e.to,void 0)}:e})).filter((function(e){return e}))}function pe(e,n){if(void 0!==w.config){var t=w.config[e];if(void 0!==t&&t.length>0)for(var a=0;t[a]&&a<t.length;a++)t[a](w.selectedDates,w.input.value,w,n);\"onChange\"===e&&(w.input.dispatchEvent(he(\"change\")),w.input.dispatchEvent(he(\"input\")))}}function he(e){var n=document.createEvent(\"Event\");return n.initEvent(e,!0,!0),n}function ve(e){for(var n=0;n<w.selectedDates.length;n++)if(0===M(w.selectedDates[n],e))return\"\"+n;return!1}function De(){w.config.noCalendar||w.isMobile||!w.monthNav||(w.yearElements.forEach((function(e,n){var t=new Date(w.currentYear,w.currentMonth,1);t.setMonth(w.currentMonth+n),w.config.showMonths>1||\"static\"===w.config.monthSelectorType?w.monthElements[n].textContent=h(t.getMonth(),w.config.shorthandCurrentMonth,w.l10n)+\" \":w.monthsDropdownContainer.value=t.getMonth().toString(),e.value=t.getFullYear().toString()})),w._hidePrevMonthArrow=void 0!==w.config.minDate&&(w.currentYear===w.config.minDate.getFullYear()?w.currentMonth<=w.config.minDate.getMonth():w.currentYear<w.config.minDate.getFullYear()),w._hideNextMonthArrow=void 0!==w.config.maxDate&&(w.currentYear===w.config.maxDate.getFullYear()?w.currentMonth+1>w.config.maxDate.getMonth():w.currentYear>w.config.maxDate.getFullYear()))}function we(e){return w.selectedDates.map((function(n){return w.formatDate(n,e)})).filter((function(e,n,t){return\"range\"!==w.config.mode||w.config.enableTime||t.indexOf(e)===n})).join(\"range\"!==w.config.mode?w.config.conjunction:w.l10n.rangeSeparator)}function be(e){void 0===e&&(e=!0),void 0!==w.mobileInput&&w.mobileFormatStr&&(w.mobileInput.value=void 0!==w.latestSelectedDateObj?w.formatDate(w.latestSelectedDateObj,w.mobileFormatStr):\"\"),w.input.value=we(w.config.dateFormat),void 0!==w.altInput&&(w.altInput.value=we(w.config.altFormat)),!1!==e&&pe(\"onValueUpdate\")}function Ce(e){var n=g(e),t=w.prevMonthNav.contains(n),a=w.nextMonthNav.contains(n);t||a?G(t?-1:1):w.yearElements.indexOf(n)>=0?n.select():n.classList.contains(\"arrowUp\")?w.changeYear(w.currentYear+1):n.classList.contains(\"arrowDown\")&&w.changeYear(w.currentYear-1)}return function(){w.element=w.input=p,w.isOpen=!1,function(){var n=[\"wrap\",\"weekNumbers\",\"allowInput\",\"allowInvalidPreload\",\"clickOpens\",\"time_24hr\",\"enableTime\",\"noCalendar\",\"altInput\",\"shorthandCurrentMonth\",\"inline\",\"static\",\"enableSeconds\",\"disableMobile\"],i=e(e({},JSON.parse(JSON.stringify(p.dataset||{}))),v),o={};w.config.parseDate=i.parseDate,w.config.formatDate=i.formatDate,Object.defineProperty(w.config,\"enable\",{get:function(){return w.config._enable},set:function(e){w.config._enable=ge(e)}}),Object.defineProperty(w.config,\"disable\",{get:function(){return w.config._disable},set:function(e){w.config._disable=ge(e)}});var r=\"time\"===i.mode;if(!i.dateFormat&&(i.enableTime||r)){var l=k.defaultConfig.dateFormat||a.dateFormat;o.dateFormat=i.noCalendar||r?\"H:i\"+(i.enableSeconds?\":S\":\"\"):l+\" H:i\"+(i.enableSeconds?\":S\":\"\")}if(i.altInput&&(i.enableTime||r)&&!i.altFormat){var d=k.defaultConfig.altFormat||a.altFormat;o.altFormat=i.noCalendar||r?\"h:i\"+(i.enableSeconds?\":S K\":\" K\"):d+\" h:i\"+(i.enableSeconds?\":S\":\"\")+\" K\"}Object.defineProperty(w.config,\"minDate\",{get:function(){return w.config._minDate},set:oe(\"min\")}),Object.defineProperty(w.config,\"maxDate\",{get:function(){return w.config._maxDate},set:oe(\"max\")});var s=function(e){return function(n){w.config[\"min\"===e?\"_minTime\":\"_maxTime\"]=w.parseDate(n,\"H:i:S\")}};Object.defineProperty(w.config,\"minTime\",{get:function(){return w.config._minTime},set:s(\"min\")}),Object.defineProperty(w.config,\"maxTime\",{get:function(){return w.config._maxTime},set:s(\"max\")}),\"time\"===i.mode&&(w.config.noCalendar=!0,w.config.enableTime=!0),Object.assign(w.config,o,i);for(var u=0;u<n.length;u++)w.config[n[u]]=!0===w.config[n[u]]||\"true\"===w.config[n[u]];for(t.filter((function(e){return void 0!==w.config[e]})).forEach((function(e){w.config[e]=c(w.config[e]||[]).map(x)})),w.isMobile=!w.config.disableMobile&&!w.config.inline&&\"single\"===w.config.mode&&!w.config.disable.length&&!w.config.enable.length&&!w.config.weekNumbers&&/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),u=0;u<w.config.plugins.length;u++){var f=w.config.plugins[u](w)||{};for(var m in f)t.indexOf(m)>-1?w.config[m]=c(f[m]).map(x).concat(w.config[m]):void 0===i[m]&&(w.config[m]=f[m])}i.altInputClass||(w.config.altInputClass=re().className+\" \"+w.config.altInputClass),pe(\"onParseConfig\")}(),le(),w.input=re(),w.input?(w.input._type=w.input.type,w.input.type=\"text\",w.input.classList.add(\"flatpickr-input\"),w._input=w.input,w.config.altInput&&(w.altInput=s(w.input.nodeName,w.config.altInputClass),w._input=w.altInput,w.altInput.placeholder=w.input.placeholder,w.altInput.disabled=w.input.disabled,w.altInput.required=w.input.required,w.altInput.tabIndex=w.input.tabIndex,w.altInput.type=\"text\",w.input.setAttribute(\"type\",\"hidden\"),!w.config.static&&w.input.parentNode&&w.input.parentNode.insertBefore(w.altInput,w.input.nextSibling)),w.config.allowInput||w._input.setAttribute(\"readonly\",\"readonly\"),w._positionElement=w.config.positionElement||w._input):w.config.errorHandler(new Error(\"Invalid input element specified\")),function(){w.selectedDates=[],w.now=w.parseDate(w.config.now)||new Date;var e=w.config.defaultDate||(\"INPUT\"!==w.input.nodeName&&\"TEXTAREA\"!==w.input.nodeName||!w.input.placeholder||w.input.value!==w.input.placeholder?w.input.value:null);e&&me(e,w.config.dateFormat),w._initialDate=w.selectedDates.length>0?w.selectedDates[0]:w.config.minDate&&w.config.minDate.getTime()>w.now.getTime()?w.config.minDate:w.config.maxDate&&w.config.maxDate.getTime()<w.now.getTime()?w.config.maxDate:w.now,w.currentYear=w._initialDate.getFullYear(),w.currentMonth=w._initialDate.getMonth(),w.selectedDates.length>0&&(w.latestSelectedDateObj=w.selectedDates[0]),void 0!==w.config.minTime&&(w.config.minTime=w.parseDate(w.config.minTime,\"H:i\")),void 0!==w.config.maxTime&&(w.config.maxTime=w.parseDate(w.config.maxTime,\"H:i\")),w.minDateHasTime=!!w.config.minDate&&(w.config.minDate.getHours()>0||w.config.minDate.getMinutes()>0||w.config.minDate.getSeconds()>0),w.maxDateHasTime=!!w.config.maxDate&&(w.config.maxDate.getHours()>0||w.config.maxDate.getMinutes()>0||w.config.maxDate.getSeconds()>0)}(),w.utils={getDaysInMonth:function(e,n){return void 0===e&&(e=w.currentMonth),void 0===n&&(n=w.currentYear),1===e&&(n%4==0&&n%100!=0||n%400==0)?29:w.l10n.daysInMonth[e]}},w.isMobile||function(){var e=window.document.createDocumentFragment();if(w.calendarContainer=s(\"div\",\"flatpickr-calendar\"),w.calendarContainer.tabIndex=-1,!w.config.noCalendar){if(e.appendChild((w.monthNav=s(\"div\",\"flatpickr-months\"),w.yearElements=[],w.monthElements=[],w.prevMonthNav=s(\"span\",\"flatpickr-prev-month\"),w.prevMonthNav.innerHTML=w.config.prevArrow,w.nextMonthNav=s(\"span\",\"flatpickr-next-month\"),w.nextMonthNav.innerHTML=w.config.nextArrow,q(),Object.defineProperty(w,\"_hidePrevMonthArrow\",{get:function(){return w.__hidePrevMonthArrow},set:function(e){w.__hidePrevMonthArrow!==e&&(d(w.prevMonthNav,\"flatpickr-disabled\",e),w.__hidePrevMonthArrow=e)}}),Object.defineProperty(w,\"_hideNextMonthArrow\",{get:function(){return w.__hideNextMonthArrow},set:function(e){w.__hideNextMonthArrow!==e&&(d(w.nextMonthNav,\"flatpickr-disabled\",e),w.__hideNextMonthArrow=e)}}),w.currentYearElement=w.yearElements[0],De(),w.monthNav)),w.innerContainer=s(\"div\",\"flatpickr-innerContainer\"),w.config.weekNumbers){var n=function(){w.calendarContainer.classList.add(\"hasWeeks\");var e=s(\"div\",\"flatpickr-weekwrapper\");e.appendChild(s(\"span\",\"flatpickr-weekday\",w.l10n.weekAbbreviation));var n=s(\"div\",\"flatpickr-weeks\");return e.appendChild(n),{weekWrapper:e,weekNumbers:n}}(),t=n.weekWrapper,a=n.weekNumbers;w.innerContainer.appendChild(t),w.weekNumbers=a,w.weekWrapper=t}w.rContainer=s(\"div\",\"flatpickr-rContainer\"),w.rContainer.appendChild($()),w.daysContainer||(w.daysContainer=s(\"div\",\"flatpickr-days\"),w.daysContainer.tabIndex=-1),J(),w.rContainer.appendChild(w.daysContainer),w.innerContainer.appendChild(w.rContainer),e.appendChild(w.innerContainer)}w.config.enableTime&&e.appendChild(function(){w.calendarContainer.classList.add(\"hasTime\"),w.config.noCalendar&&w.calendarContainer.classList.add(\"noCalendar\"),w.timeContainer=s(\"div\",\"flatpickr-time\"),w.timeContainer.tabIndex=-1;var e=s(\"span\",\"flatpickr-time-separator\",\":\"),n=m(\"flatpickr-hour\",{\"aria-label\":w.l10n.hourAriaLabel});w.hourElement=n.getElementsByTagName(\"input\")[0];var t=m(\"flatpickr-minute\",{\"aria-label\":w.l10n.minuteAriaLabel});if(w.minuteElement=t.getElementsByTagName(\"input\")[0],w.hourElement.tabIndex=w.minuteElement.tabIndex=-1,w.hourElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getHours():w.config.time_24hr?w.config.defaultHour:function(e){switch(e%24){case 0:case 12:return 12;default:return e%12}}(w.config.defaultHour)),w.minuteElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getMinutes():w.config.defaultMinute),w.hourElement.setAttribute(\"step\",w.config.hourIncrement.toString()),w.minuteElement.setAttribute(\"step\",w.config.minuteIncrement.toString()),w.hourElement.setAttribute(\"min\",w.config.time_24hr?\"0\":\"1\"),w.hourElement.setAttribute(\"max\",w.config.time_24hr?\"23\":\"12\"),w.minuteElement.setAttribute(\"min\",\"0\"),w.minuteElement.setAttribute(\"max\",\"59\"),w.timeContainer.appendChild(n),w.timeContainer.appendChild(e),w.timeContainer.appendChild(t),w.config.time_24hr&&w.timeContainer.classList.add(\"time24hr\"),w.config.enableSeconds){w.timeContainer.classList.add(\"hasSeconds\");var a=m(\"flatpickr-second\");w.secondElement=a.getElementsByTagName(\"input\")[0],w.secondElement.value=o(w.latestSelectedDateObj?w.latestSelectedDateObj.getSeconds():w.config.defaultSeconds),w.secondElement.setAttribute(\"step\",w.minuteElement.getAttribute(\"step\")),w.secondElement.setAttribute(\"min\",\"0\"),w.secondElement.setAttribute(\"max\",\"59\"),w.timeContainer.appendChild(s(\"span\",\"flatpickr-time-separator\",\":\")),w.timeContainer.appendChild(a)}return w.config.time_24hr||(w.amPM=s(\"span\",\"flatpickr-am-pm\",w.l10n.amPM[r((w.latestSelectedDateObj?w.hourElement.value:w.config.defaultHour)>11)]),w.amPM.title=w.l10n.toggleTitle,w.amPM.tabIndex=-1,w.timeContainer.appendChild(w.amPM)),w.timeContainer}()),d(w.calendarContainer,\"rangeMode\",\"range\"===w.config.mode),d(w.calendarContainer,\"animate\",!0===w.config.animate),d(w.calendarContainer,\"multiMonth\",w.config.showMonths>1),w.calendarContainer.appendChild(e);var i=void 0!==w.config.appendTo&&void 0!==w.config.appendTo.nodeType;if((w.config.inline||w.config.static)&&(w.calendarContainer.classList.add(w.config.inline?\"inline\":\"static\"),w.config.inline&&(!i&&w.element.parentNode?w.element.parentNode.insertBefore(w.calendarContainer,w._input.nextSibling):void 0!==w.config.appendTo&&w.config.appendTo.appendChild(w.calendarContainer)),w.config.static)){var l=s(\"div\",\"flatpickr-wrapper\");w.element.parentNode&&w.element.parentNode.insertBefore(l,w.element),l.appendChild(w.element),w.altInput&&l.appendChild(w.altInput),l.appendChild(w.calendarContainer)}w.config.static||w.config.inline||(void 0!==w.config.appendTo?w.config.appendTo:window.document.body).appendChild(w.calendarContainer)}(),function(){if(w.config.wrap&&[\"open\",\"close\",\"toggle\",\"clear\"].forEach((function(e){Array.prototype.forEach.call(w.element.querySelectorAll(\"[data-\"+e+\"]\"),(function(n){return N(n,\"click\",w[e])}))})),w.isMobile)!function(){var e=w.config.enableTime?w.config.noCalendar?\"time\":\"datetime-local\":\"date\";w.mobileInput=s(\"input\",w.input.className+\" flatpickr-mobile\"),w.mobileInput.tabIndex=1,w.mobileInput.type=e,w.mobileInput.disabled=w.input.disabled,w.mobileInput.required=w.input.required,w.mobileInput.placeholder=w.input.placeholder,w.mobileFormatStr=\"datetime-local\"===e?\"Y-m-d\\\\TH:i:S\":\"date\"===e?\"Y-m-d\":\"H:i:S\",w.selectedDates.length>0&&(w.mobileInput.defaultValue=w.mobileInput.value=w.formatDate(w.selectedDates[0],w.mobileFormatStr)),w.config.minDate&&(w.mobileInput.min=w.formatDate(w.config.minDate,\"Y-m-d\")),w.config.maxDate&&(w.mobileInput.max=w.formatDate(w.config.maxDate,\"Y-m-d\")),w.input.getAttribute(\"step\")&&(w.mobileInput.step=String(w.input.getAttribute(\"step\"))),w.input.type=\"hidden\",void 0!==w.altInput&&(w.altInput.type=\"hidden\");try{w.input.parentNode&&w.input.parentNode.insertBefore(w.mobileInput,w.input.nextSibling)}catch(e){}N(w.mobileInput,\"change\",(function(e){w.setDate(g(e).value,!1,w.mobileFormatStr),pe(\"onChange\"),pe(\"onClose\")}))}();else{var e=l(ie,50);if(w._debouncedChange=l(A,300),w.daysContainer&&!/iPhone|iPad|iPod/i.test(navigator.userAgent)&&N(w.daysContainer,\"mouseover\",(function(e){\"range\"===w.config.mode&&ae(g(e))})),N(window.document.body,\"keydown\",te),w.config.inline||w.config.static||N(window,\"resize\",e),void 0!==window.ontouchstart?N(window.document,\"touchstart\",Z):N(window.document,\"click\",Z),N(window.document,\"focus\",Z,{capture:!0}),!0===w.config.clickOpens&&(N(w._input,\"focus\",w.open),N(w._input,\"click\",w.open)),void 0!==w.daysContainer&&(N(w.monthNav,\"click\",Ce),N(w.monthNav,[\"keyup\",\"increment\"],F),N(w.daysContainer,\"click\",ue)),void 0!==w.timeContainer&&void 0!==w.minuteElement&&void 0!==w.hourElement){var n=function(e){return g(e).select()};N(w.timeContainer,[\"increment\"],T),N(w.timeContainer,\"blur\",T,{capture:!0}),N(w.timeContainer,\"click\",Y),N([w.hourElement,w.minuteElement],[\"focus\",\"click\"],n),void 0!==w.secondElement&&N(w.secondElement,\"focus\",(function(){return w.secondElement&&w.secondElement.select()})),void 0!==w.amPM&&N(w.amPM,\"click\",(function(e){T(e),A()}))}w.config.allowInput&&N(w._input,\"blur\",ne)}}(),(w.selectedDates.length||w.config.noCalendar)&&(w.config.enableTime&&S(w.config.noCalendar?w.latestSelectedDateObj||w.config.minDate:void 0),be(!1)),E();var n=/^((?!chrome|android).)*safari/i.test(navigator.userAgent);!w.isMobile&&n&&ce(),pe(\"onReady\")}(),w}function E(e,n){for(var t=Array.prototype.slice.call(e).filter((function(e){return e instanceof HTMLElement})),a=[],i=0;i<t.length;i++){var o=t[i];try{if(null!==o.getAttribute(\"data-fp-omit\"))continue;void 0!==o._flatpickr&&(o._flatpickr.destroy(),o._flatpickr=void 0),o._flatpickr=x(o,n||{}),a.push(o._flatpickr)}catch(e){console.error(e)}}return 1===a.length?a[0]:a}\"function\"!=typeof Object.assign&&(Object.assign=function(e){for(var n=[],t=1;t<arguments.length;t++)n[t-1]=arguments[t];if(!e)throw TypeError(\"Cannot convert undefined or null to object\");for(var a=function(n){n&&Object.keys(n).forEach((function(t){return e[t]=n[t]}))},i=0,o=n;i<o.length;i++){var r=o[i];a(r)}return e}),\"undefined\"!=typeof HTMLElement&&\"undefined\"!=typeof HTMLCollection&&\"undefined\"!=typeof NodeList&&(HTMLCollection.prototype.flatpickr=NodeList.prototype.flatpickr=function(e){return E(this,e)},HTMLElement.prototype.flatpickr=function(e){return E([this],e)});var k=function(e,n){return\"string\"==typeof e?E(window.document.querySelectorAll(e),n):e instanceof Node?E([e],n):E(e,n)};return k.defaultConfig={},k.l10ns={en:e({},i),default:e({},i)},k.localize=function(n){k.l10ns.default=e(e({},k.l10ns.default),n)},k.setDefaults=function(n){k.defaultConfig=e(e({},k.defaultConfig),n)},k.parseDate=C({}),k.formatDate=b({}),k.compareDates=M,\"undefined\"!=typeof jQuery&&void 0!==jQuery.fn&&(jQuery.fn.flatpickr=function(e){return E(this,e)}),Date.prototype.fp_incr=function(e){return new Date(this.getFullYear(),this.getMonth(),this.getDate()+(\"string\"==typeof e?parseInt(e,10):e))},\"undefined\"!=typeof window&&(window.flatpickr=k),k},\"object\"==typeof t&&void 0!==n?n.exports=r():\"function\"==typeof define&&define.amd?define(r):(o=o||self).flatpickr=r()},\n \"df2378664f\": function _(e,t,o,i,a){i();const n=e(\"tslib\"),s=e(\"@bokehjs/core/dom\"),c=e(\"@bokehjs/models/layouts/html_box\"),r=e(\"@bokehjs/models/sources/column_data_source\"),d=e(\"f1971f81bf\"),l=e(\"4c755983eb\"),_=e(\"6e04fbe567\"),h=n.__importDefault(e(\"093eb75864\"));function p(){const e={},t=window.deck,o=Object.keys(t).filter((e=>e.charAt(0)===e.charAt(0).toUpperCase()));for(const i of o)e[i]=t[i];return e}class u extends l.PanelHTMLBoxView{connect_signals(){super.connect_signals();const{data:e,mapbox_api_key:t,tooltip:o,layers:i,initialViewState:a,data_sources:n}=this.model.properties;this.on_change([t,o],(()=>this.render())),this.on_change([e,a],(()=>this.updateDeck())),this.on_change([i],(()=>this._update_layers())),this.on_change([n],(()=>this._connect_sources(!0))),this._layer_map={},this._connected=[],this._connect_sources()}_update_layers(){this._layer_map={},this._update_data(!0)}_connect_sources(e=!1){for(const e of this.model.data_sources)this._connected.indexOf(e)<0&&(this.connect(e.properties.data.change,(()=>this._update_data(!0))),this._connected.push(e));this._update_data(e)}initialize(){if(super.initialize(),window.deck.JSONConverter){const{CSVLoader:e,Tile3DLoader:t}=window.loaders;window.loaders.registerLoaders([t,e]);const o={classes:p(),enumerations:{COORDINATE_SYSTEM:window.deck.COORDINATE_SYSTEM,GL:h.default},constants:{Tile3DLoader:t}};this.jsonConverter=new window.deck.JSONConverter({configuration:o})}}_update_data(e=!0){let t=0;for(const e of this.model.layers){let o;if(t+=1,t-1 in this._layer_map)o=this.model.data_sources[this._layer_map[t-1]];else{if(\"number\"!=typeof e.data)continue;this._layer_map[t-1]=e.data,o=this.model.data_sources[e.data]}e.data=d.transform_cds_to_records(o)}e&&this.updateDeck()}_on_click_event(e){const t={coordinate:e.coordinate,lngLat:e.lngLat,index:e.index};this.model.clickState=t}_on_hover_event(e){if(null==e.coordinate)return;const t={coordinate:e.coordinate,lngLat:e.lngLat,index:e.index};this.model.hoverState=t}_on_viewState_event(e){this.model.viewState=e.viewState}getData(){return Object.assign(Object.assign({},this.model.data),{layers:this.model.layers,initialViewState:this.model.initialViewState,onViewStateChange:e=>this._on_viewState_event(e),onClick:e=>this._on_click_event(e),onHover:e=>this._on_hover_event(e)})}updateDeck(){if(!this.deckGL)return void this.render();const e=this.getData();if(window.deck.updateDeck)window.deck.updateDeck(e,this.deckGL);else{const t=this.jsonConverter.convert(e);this.deckGL.setProps(t)}}createDeck({mapboxApiKey:e,container:t,jsonInput:o,tooltip:i}){let a;try{const n=this.jsonConverter.convert(o),s=_.makeTooltip(i,n.layers);a=new window.deck.DeckGL(Object.assign(Object.assign({},n),{map:window.mapboxgl,mapboxApiAccessToken:e,container:t,getTooltip:s}))}catch(e){console.error(e)}return a}render(){super.render();const e=s.div({class:\"deckgl\"});l.set_size(e,this.model);const t=this.model.mapbox_api_key,o=this.model.tooltip,i=this.getData();window.deck.createDeck?this.deckGL=window.deck.createDeck({mapboxApiKey:t,container:e,jsonInput:i,tooltip:o}):this.deckGL=this.createDeck({mapboxApiKey:t,container:e,jsonInput:i,tooltip:o}),this.el.appendChild(e)}}o.DeckGLPlotView=u,u.__name__=\"DeckGLPlotView\";class k extends c.HTMLBox{constructor(e){super(e)}static init_DeckGLPlot(){this.prototype.default_view=u,this.define((({Any:e,Array:t,String:o,Ref:i})=>({data:[e],data_sources:[t(i(r.ColumnDataSource)),[]],clickState:[e,{}],hoverState:[e,{}],initialViewState:[e,{}],layers:[t(e),[]],mapbox_api_key:[o,\"\"],tooltip:[e,{}],viewState:[e,{}]}))),this.override({height:400,width:600})}}o.DeckGLPlot=k,k.__name__=\"DeckGLPlot\",k.__module__=\"panel.models.deckgl\",k.init_DeckGLPlot()},\n \"6e04fbe567\": function _(t,e,n,i,l){\n /*\n This file was adapted from https://github.com/uber/deck.gl/ the LICENSE\n below is preserved to comply with the original license.\n \n Copyright (c) 2015 - 2017 Uber Technologies, Inc.\n \n Permission is hereby granted, free of charge, to any person obtaining a copy\n of this software and associated documentation files (the \"Software\"), to deal\n in the Software without restriction, including without limitation the rights\n to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n copies of the Software, and to permit persons to whom the Software is\n furnished to do so, subject to the following conditions:\n \n The above copyright notice and this permission notice shall be included in\n all copies or substantial portions of the Software.\n \n THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN\n THE SOFTWARE.\n */\n let o,r;i();const c={fontFamily:'\"Helvetica Neue\", Helvetica, Arial, sans-serif',display:\"flex\",flex:\"wrap\",maxWidth:\"500px\",flexDirection:\"column\",zIndex:2};function s(){return document.createElement(\"div\")}function a(t){if(!t.picked)return null;if(t.object===o)return r;const e={html:u(t.object),style:c};return r=e,o=t.object,e}n.getTooltipDefault=a;const f=new Set([\"position\",\"index\"]);function u(t){const e=s();for(const n in t){if(f.has(n))continue;const i=s();i.className=\"header\",i.textContent=n;const l=s();l.className=\"value\",l.textContent=h(t[n]);const o=s();p(o,i,l),o.appendChild(i),o.appendChild(l),e.appendChild(o)}return e.innerHTML}function p(t,e,n){Object.assign(e.style,{fontWeight:700,marginRight:\"10px\",flex:\"1 1 0%\"}),Object.assign(n.style,{flex:\"none\",maxWidth:\"250px\",overflow:\"hidden\",whiteSpace:\"nowrap\",textOverflow:\"ellipsis\"}),Object.assign(t.style,{display:\"flex\",flexDirection:\"row\",justifyContent:\"space-between\",alignItems:\"stretch\"})}function h(t){let e;if(Array.isArray(t)&&t.length>4)e=`Array<${t.length}>`;else if(\"string\"==typeof t)e=t;else if(\"number\"==typeof t)e=String(t);else try{e=JSON.stringify(t)}catch(t){e=\"<Non-Serializable Object>\"}return e.length>50&&(e=e.slice(0,50)),e}function d(t,e){let n=t;for(const t in e){if(\"object\"==typeof e[t])for(const i in e[t])n=n.replace(`{${t}.${i}}`,e[t][i]);n=n.replace(`{${t}}`,e[t])}return n}n.tabularize=u,n.toText=h,n.substituteIn=d,n.makeTooltip=function(t,e){if(!t)return null;let n=!1;const i={};for(let l=0;l<e.length;l++){const o=e[l].id;\"boolean\"!=typeof t&&(l.toString()in t||o in t)&&(i[o]=o in t?t[o]:t[l.toString()],n=!0)}return t.html||t.text||n?e=>{if(!e.picked)return null;const l=n?i[e.layer.id]:t;if(null==l)return;if(\"boolean\"==typeof l)return l?a(e):null;const o={style:l.style||c};return l.html?o.html=d(l.html,e.object):o.text=d(l.text,e.object),o}:a}},\n \"093eb75864\": function _(E,_,R,T,A){_.exports={DEPTH_BUFFER_BIT:256,STENCIL_BUFFER_BIT:1024,COLOR_BUFFER_BIT:16384,POINTS:0,LINES:1,LINE_LOOP:2,LINE_STRIP:3,TRIANGLES:4,TRIANGLE_STRIP:5,TRIANGLE_FAN:6,ZERO:0,ONE:1,SRC_COLOR:768,ONE_MINUS_SRC_COLOR:769,SRC_ALPHA:770,ONE_MINUS_SRC_ALPHA:771,DST_ALPHA:772,ONE_MINUS_DST_ALPHA:773,DST_COLOR:774,ONE_MINUS_DST_COLOR:775,SRC_ALPHA_SATURATE:776,CONSTANT_COLOR:32769,ONE_MINUS_CONSTANT_COLOR:32770,CONSTANT_ALPHA:32771,ONE_MINUS_CONSTANT_ALPHA:32772,FUNC_ADD:32774,FUNC_SUBTRACT:32778,FUNC_REVERSE_SUBTRACT:32779,BLEND_EQUATION:32777,BLEND_EQUATION_RGB:32777,BLEND_EQUATION_ALPHA:34877,BLEND_DST_RGB:32968,BLEND_SRC_RGB:32969,BLEND_DST_ALPHA:32970,BLEND_SRC_ALPHA:32971,BLEND_COLOR:32773,ARRAY_BUFFER_BINDING:34964,ELEMENT_ARRAY_BUFFER_BINDING:34965,LINE_WIDTH:2849,ALIASED_POINT_SIZE_RANGE:33901,ALIASED_LINE_WIDTH_RANGE:33902,CULL_FACE_MODE:2885,FRONT_FACE:2886,DEPTH_RANGE:2928,DEPTH_WRITEMASK:2930,DEPTH_CLEAR_VALUE:2931,DEPTH_FUNC:2932,STENCIL_CLEAR_VALUE:2961,STENCIL_FUNC:2962,STENCIL_FAIL:2964,STENCIL_PASS_DEPTH_FAIL:2965,STENCIL_PASS_DEPTH_PASS:2966,STENCIL_REF:2967,STENCIL_VALUE_MASK:2963,STENCIL_WRITEMASK:2968,STENCIL_BACK_FUNC:34816,STENCIL_BACK_FAIL:34817,STENCIL_BACK_PASS_DEPTH_FAIL:34818,STENCIL_BACK_PASS_DEPTH_PASS:34819,STENCIL_BACK_REF:36003,STENCIL_BACK_VALUE_MASK:36004,STENCIL_BACK_WRITEMASK:36005,VIEWPORT:2978,SCISSOR_BOX:3088,COLOR_CLEAR_VALUE:3106,COLOR_WRITEMASK:3107,UNPACK_ALIGNMENT:3317,PACK_ALIGNMENT:3333,MAX_TEXTURE_SIZE:3379,MAX_VIEWPORT_DIMS:3386,SUBPIXEL_BITS:3408,RED_BITS:3410,GREEN_BITS:3411,BLUE_BITS:3412,ALPHA_BITS:3413,DEPTH_BITS:3414,STENCIL_BITS:3415,POLYGON_OFFSET_UNITS:10752,POLYGON_OFFSET_FACTOR:32824,TEXTURE_BINDING_2D:32873,SAMPLE_BUFFERS:32936,SAMPLES:32937,SAMPLE_COVERAGE_VALUE:32938,SAMPLE_COVERAGE_INVERT:32939,COMPRESSED_TEXTURE_FORMATS:34467,VENDOR:7936,RENDERER:7937,VERSION:7938,IMPLEMENTATION_COLOR_READ_TYPE:35738,IMPLEMENTATION_COLOR_READ_FORMAT:35739,BROWSER_DEFAULT_WEBGL:37444,STATIC_DRAW:35044,STREAM_DRAW:35040,DYNAMIC_DRAW:35048,ARRAY_BUFFER:34962,ELEMENT_ARRAY_BUFFER:34963,BUFFER_SIZE:34660,BUFFER_USAGE:34661,CURRENT_VERTEX_ATTRIB:34342,VERTEX_ATTRIB_ARRAY_ENABLED:34338,VERTEX_ATTRIB_ARRAY_SIZE:34339,VERTEX_ATTRIB_ARRAY_STRIDE:34340,VERTEX_ATTRIB_ARRAY_TYPE:34341,VERTEX_ATTRIB_ARRAY_NORMALIZED:34922,VERTEX_ATTRIB_ARRAY_POINTER:34373,VERTEX_ATTRIB_ARRAY_BUFFER_BINDING:34975,CULL_FACE:2884,FRONT:1028,BACK:1029,FRONT_AND_BACK:1032,BLEND:3042,DEPTH_TEST:2929,DITHER:3024,POLYGON_OFFSET_FILL:32823,SAMPLE_ALPHA_TO_COVERAGE:32926,SAMPLE_COVERAGE:32928,SCISSOR_TEST:3089,STENCIL_TEST:2960,NO_ERROR:0,INVALID_ENUM:1280,INVALID_VALUE:1281,INVALID_OPERATION:1282,OUT_OF_MEMORY:1285,CONTEXT_LOST_WEBGL:37442,CW:2304,CCW:2305,DONT_CARE:4352,FASTEST:4353,NICEST:4354,GENERATE_MIPMAP_HINT:33170,BYTE:5120,UNSIGNED_BYTE:5121,SHORT:5122,UNSIGNED_SHORT:5123,INT:5124,UNSIGNED_INT:5125,FLOAT:5126,DOUBLE:5130,DEPTH_COMPONENT:6402,ALPHA:6406,RGB:6407,RGBA:6408,LUMINANCE:6409,LUMINANCE_ALPHA:6410,UNSIGNED_SHORT_4_4_4_4:32819,UNSIGNED_SHORT_5_5_5_1:32820,UNSIGNED_SHORT_5_6_5:33635,FRAGMENT_SHADER:35632,VERTEX_SHADER:35633,COMPILE_STATUS:35713,DELETE_STATUS:35712,LINK_STATUS:35714,VALIDATE_STATUS:35715,ATTACHED_SHADERS:35717,ACTIVE_ATTRIBUTES:35721,ACTIVE_UNIFORMS:35718,MAX_VERTEX_ATTRIBS:34921,MAX_VERTEX_UNIFORM_VECTORS:36347,MAX_VARYING_VECTORS:36348,MAX_COMBINED_TEXTURE_IMAGE_UNITS:35661,MAX_VERTEX_TEXTURE_IMAGE_UNITS:35660,MAX_TEXTURE_IMAGE_UNITS:34930,MAX_FRAGMENT_UNIFORM_VECTORS:36349,SHADER_TYPE:35663,SHADING_LANGUAGE_VERSION:35724,CURRENT_PROGRAM:35725,NEVER:512,ALWAYS:519,LESS:513,EQUAL:514,LEQUAL:515,GREATER:516,GEQUAL:518,NOTEQUAL:517,KEEP:7680,REPLACE:7681,INCR:7682,DECR:7683,INVERT:5386,INCR_WRAP:34055,DECR_WRAP:34056,NEAREST:9728,LINEAR:9729,NEAREST_MIPMAP_NEAREST:9984,LINEAR_MIPMAP_NEAREST:9985,NEAREST_MIPMAP_LINEAR:9986,LINEAR_MIPMAP_LINEAR:9987,TEXTURE_MAG_FILTER:10240,TEXTURE_MIN_FILTER:10241,TEXTURE_WRAP_S:10242,TEXTURE_WRAP_T:10243,TEXTURE_2D:3553,TEXTURE:5890,TEXTURE_CUBE_MAP:34067,TEXTURE_BINDING_CUBE_MAP:34068,TEXTURE_CUBE_MAP_POSITIVE_X:34069,TEXTURE_CUBE_MAP_NEGATIVE_X:34070,TEXTURE_CUBE_MAP_POSITIVE_Y:34071,TEXTURE_CUBE_MAP_NEGATIVE_Y:34072,TEXTURE_CUBE_MAP_POSITIVE_Z:34073,TEXTURE_CUBE_MAP_NEGATIVE_Z:34074,MAX_CUBE_MAP_TEXTURE_SIZE:34076,TEXTURE0:33984,ACTIVE_TEXTURE:34016,REPEAT:10497,CLAMP_TO_EDGE:33071,MIRRORED_REPEAT:33648,TEXTURE_WIDTH:4096,TEXTURE_HEIGHT:4097,FLOAT_VEC2:35664,FLOAT_VEC3:35665,FLOAT_VEC4:35666,INT_VEC2:35667,INT_VEC3:35668,INT_VEC4:35669,BOOL:35670,BOOL_VEC2:35671,BOOL_VEC3:35672,BOOL_VEC4:35673,FLOAT_MAT2:35674,FLOAT_MAT3:35675,FLOAT_MAT4:35676,SAMPLER_2D:35678,SAMPLER_CUBE:35680,LOW_FLOAT:36336,MEDIUM_FLOAT:36337,HIGH_FLOAT:36338,LOW_INT:36339,MEDIUM_INT:36340,HIGH_INT:36341,FRAMEBUFFER:36160,RENDERBUFFER:36161,RGBA4:32854,RGB5_A1:32855,RGB565:36194,DEPTH_COMPONENT16:33189,STENCIL_INDEX:6401,STENCIL_INDEX8:36168,DEPTH_STENCIL:34041,RENDERBUFFER_WIDTH:36162,RENDERBUFFER_HEIGHT:36163,RENDERBUFFER_INTERNAL_FORMAT:36164,RENDERBUFFER_RED_SIZE:36176,RENDERBUFFER_GREEN_SIZE:36177,RENDERBUFFER_BLUE_SIZE:36178,RENDERBUFFER_ALPHA_SIZE:36179,RENDERBUFFER_DEPTH_SIZE:36180,RENDERBUFFER_STENCIL_SIZE:36181,FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE:36048,FRAMEBUFFER_ATTACHMENT_OBJECT_NAME:36049,FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL:36050,FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE:36051,COLOR_ATTACHMENT0:36064,DEPTH_ATTACHMENT:36096,STENCIL_ATTACHMENT:36128,DEPTH_STENCIL_ATTACHMENT:33306,NONE:0,FRAMEBUFFER_COMPLETE:36053,FRAMEBUFFER_INCOMPLETE_ATTACHMENT:36054,FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:36055,FRAMEBUFFER_INCOMPLETE_DIMENSIONS:36057,FRAMEBUFFER_UNSUPPORTED:36061,FRAMEBUFFER_BINDING:36006,RENDERBUFFER_BINDING:36007,READ_FRAMEBUFFER:36008,DRAW_FRAMEBUFFER:36009,MAX_RENDERBUFFER_SIZE:34024,INVALID_FRAMEBUFFER_OPERATION:1286,UNPACK_FLIP_Y_WEBGL:37440,UNPACK_PREMULTIPLY_ALPHA_WEBGL:37441,UNPACK_COLORSPACE_CONVERSION_WEBGL:37443,READ_BUFFER:3074,UNPACK_ROW_LENGTH:3314,UNPACK_SKIP_ROWS:3315,UNPACK_SKIP_PIXELS:3316,PACK_ROW_LENGTH:3330,PACK_SKIP_ROWS:3331,PACK_SKIP_PIXELS:3332,TEXTURE_BINDING_3D:32874,UNPACK_SKIP_IMAGES:32877,UNPACK_IMAGE_HEIGHT:32878,MAX_3D_TEXTURE_SIZE:32883,MAX_ELEMENTS_VERTICES:33e3,MAX_ELEMENTS_INDICES:33001,MAX_TEXTURE_LOD_BIAS:34045,MAX_FRAGMENT_UNIFORM_COMPONENTS:35657,MAX_VERTEX_UNIFORM_COMPONENTS:35658,MAX_ARRAY_TEXTURE_LAYERS:35071,MIN_PROGRAM_TEXEL_OFFSET:35076,MAX_PROGRAM_TEXEL_OFFSET:35077,MAX_VARYING_COMPONENTS:35659,FRAGMENT_SHADER_DERIVATIVE_HINT:35723,RASTERIZER_DISCARD:35977,VERTEX_ARRAY_BINDING:34229,MAX_VERTEX_OUTPUT_COMPONENTS:37154,MAX_FRAGMENT_INPUT_COMPONENTS:37157,MAX_SERVER_WAIT_TIMEOUT:37137,MAX_ELEMENT_INDEX:36203,RED:6403,RGB8:32849,RGBA8:32856,RGB10_A2:32857,TEXTURE_3D:32879,TEXTURE_WRAP_R:32882,TEXTURE_MIN_LOD:33082,TEXTURE_MAX_LOD:33083,TEXTURE_BASE_LEVEL:33084,TEXTURE_MAX_LEVEL:33085,TEXTURE_COMPARE_MODE:34892,TEXTURE_COMPARE_FUNC:34893,SRGB:35904,SRGB8:35905,SRGB8_ALPHA8:35907,COMPARE_REF_TO_TEXTURE:34894,RGBA32F:34836,RGB32F:34837,RGBA16F:34842,RGB16F:34843,TEXTURE_2D_ARRAY:35866,TEXTURE_BINDING_2D_ARRAY:35869,R11F_G11F_B10F:35898,RGB9_E5:35901,RGBA32UI:36208,RGB32UI:36209,RGBA16UI:36214,RGB16UI:36215,RGBA8UI:36220,RGB8UI:36221,RGBA32I:36226,RGB32I:36227,RGBA16I:36232,RGB16I:36233,RGBA8I:36238,RGB8I:36239,RED_INTEGER:36244,RGB_INTEGER:36248,RGBA_INTEGER:36249,R8:33321,RG8:33323,R16F:33325,R32F:33326,RG16F:33327,RG32F:33328,R8I:33329,R8UI:33330,R16I:33331,R16UI:33332,R32I:33333,R32UI:33334,RG8I:33335,RG8UI:33336,RG16I:33337,RG16UI:33338,RG32I:33339,RG32UI:33340,R8_SNORM:36756,RG8_SNORM:36757,RGB8_SNORM:36758,RGBA8_SNORM:36759,RGB10_A2UI:36975,TEXTURE_IMMUTABLE_FORMAT:37167,TEXTURE_IMMUTABLE_LEVELS:33503,UNSIGNED_INT_2_10_10_10_REV:33640,UNSIGNED_INT_10F_11F_11F_REV:35899,UNSIGNED_INT_5_9_9_9_REV:35902,FLOAT_32_UNSIGNED_INT_24_8_REV:36269,UNSIGNED_INT_24_8:34042,HALF_FLOAT:5131,RG:33319,RG_INTEGER:33320,INT_2_10_10_10_REV:36255,CURRENT_QUERY:34917,QUERY_RESULT:34918,QUERY_RESULT_AVAILABLE:34919,ANY_SAMPLES_PASSED:35887,ANY_SAMPLES_PASSED_CONSERVATIVE:36202,MAX_DRAW_BUFFERS:34852,DRAW_BUFFER0:34853,DRAW_BUFFER1:34854,DRAW_BUFFER2:34855,DRAW_BUFFER3:34856,DRAW_BUFFER4:34857,DRAW_BUFFER5:34858,DRAW_BUFFER6:34859,DRAW_BUFFER7:34860,DRAW_BUFFER8:34861,DRAW_BUFFER9:34862,DRAW_BUFFER10:34863,DRAW_BUFFER11:34864,DRAW_BUFFER12:34865,DRAW_BUFFER13:34866,DRAW_BUFFER14:34867,DRAW_BUFFER15:34868,MAX_COLOR_ATTACHMENTS:36063,COLOR_ATTACHMENT1:36065,COLOR_ATTACHMENT2:36066,COLOR_ATTACHMENT3:36067,COLOR_ATTACHMENT4:36068,COLOR_ATTACHMENT5:36069,COLOR_ATTACHMENT6:36070,COLOR_ATTACHMENT7:36071,COLOR_ATTACHMENT8:36072,COLOR_ATTACHMENT9:36073,COLOR_ATTACHMENT10:36074,COLOR_ATTACHMENT11:36075,COLOR_ATTACHMENT12:36076,COLOR_ATTACHMENT13:36077,COLOR_ATTACHMENT14:36078,COLOR_ATTACHMENT15:36079,SAMPLER_3D:35679,SAMPLER_2D_SHADOW:35682,SAMPLER_2D_ARRAY:36289,SAMPLER_2D_ARRAY_SHADOW:36292,SAMPLER_CUBE_SHADOW:36293,INT_SAMPLER_2D:36298,INT_SAMPLER_3D:36299,INT_SAMPLER_CUBE:36300,INT_SAMPLER_2D_ARRAY:36303,UNSIGNED_INT_SAMPLER_2D:36306,UNSIGNED_INT_SAMPLER_3D:36307,UNSIGNED_INT_SAMPLER_CUBE:36308,UNSIGNED_INT_SAMPLER_2D_ARRAY:36311,MAX_SAMPLES:36183,SAMPLER_BINDING:35097,PIXEL_PACK_BUFFER:35051,PIXEL_UNPACK_BUFFER:35052,PIXEL_PACK_BUFFER_BINDING:35053,PIXEL_UNPACK_BUFFER_BINDING:35055,COPY_READ_BUFFER:36662,COPY_WRITE_BUFFER:36663,COPY_READ_BUFFER_BINDING:36662,COPY_WRITE_BUFFER_BINDING:36663,FLOAT_MAT2x3:35685,FLOAT_MAT2x4:35686,FLOAT_MAT3x2:35687,FLOAT_MAT3x4:35688,FLOAT_MAT4x2:35689,FLOAT_MAT4x3:35690,UNSIGNED_INT_VEC2:36294,UNSIGNED_INT_VEC3:36295,UNSIGNED_INT_VEC4:36296,UNSIGNED_NORMALIZED:35863,SIGNED_NORMALIZED:36764,VERTEX_ATTRIB_ARRAY_INTEGER:35069,VERTEX_ATTRIB_ARRAY_DIVISOR:35070,TRANSFORM_FEEDBACK_BUFFER_MODE:35967,MAX_TRANSFORM_FEEDBACK_SEPARATE_COMPONENTS:35968,TRANSFORM_FEEDBACK_VARYINGS:35971,TRANSFORM_FEEDBACK_BUFFER_START:35972,TRANSFORM_FEEDBACK_BUFFER_SIZE:35973,TRANSFORM_FEEDBACK_PRIMITIVES_WRITTEN:35976,MAX_TRANSFORM_FEEDBACK_INTERLEAVED_COMPONENTS:35978,MAX_TRANSFORM_FEEDBACK_SEPARATE_ATTRIBS:35979,INTERLEAVED_ATTRIBS:35980,SEPARATE_ATTRIBS:35981,TRANSFORM_FEEDBACK_BUFFER:35982,TRANSFORM_FEEDBACK_BUFFER_BINDING:35983,TRANSFORM_FEEDBACK:36386,TRANSFORM_FEEDBACK_PAUSED:36387,TRANSFORM_FEEDBACK_ACTIVE:36388,TRANSFORM_FEEDBACK_BINDING:36389,FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING:33296,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE:33297,FRAMEBUFFER_ATTACHMENT_RED_SIZE:33298,FRAMEBUFFER_ATTACHMENT_GREEN_SIZE:33299,FRAMEBUFFER_ATTACHMENT_BLUE_SIZE:33300,FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE:33301,FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE:33302,FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE:33303,FRAMEBUFFER_DEFAULT:33304,DEPTH24_STENCIL8:35056,DRAW_FRAMEBUFFER_BINDING:36006,READ_FRAMEBUFFER_BINDING:36010,RENDERBUFFER_SAMPLES:36011,FRAMEBUFFER_ATTACHMENT_TEXTURE_LAYER:36052,FRAMEBUFFER_INCOMPLETE_MULTISAMPLE:36182,UNIFORM_BUFFER:35345,UNIFORM_BUFFER_BINDING:35368,UNIFORM_BUFFER_START:35369,UNIFORM_BUFFER_SIZE:35370,MAX_VERTEX_UNIFORM_BLOCKS:35371,MAX_FRAGMENT_UNIFORM_BLOCKS:35373,MAX_COMBINED_UNIFORM_BLOCKS:35374,MAX_UNIFORM_BUFFER_BINDINGS:35375,MAX_UNIFORM_BLOCK_SIZE:35376,MAX_COMBINED_VERTEX_UNIFORM_COMPONENTS:35377,MAX_COMBINED_FRAGMENT_UNIFORM_COMPONENTS:35379,UNIFORM_BUFFER_OFFSET_ALIGNMENT:35380,ACTIVE_UNIFORM_BLOCKS:35382,UNIFORM_TYPE:35383,UNIFORM_SIZE:35384,UNIFORM_BLOCK_INDEX:35386,UNIFORM_OFFSET:35387,UNIFORM_ARRAY_STRIDE:35388,UNIFORM_MATRIX_STRIDE:35389,UNIFORM_IS_ROW_MAJOR:35390,UNIFORM_BLOCK_BINDING:35391,UNIFORM_BLOCK_DATA_SIZE:35392,UNIFORM_BLOCK_ACTIVE_UNIFORMS:35394,UNIFORM_BLOCK_ACTIVE_UNIFORM_INDICES:35395,UNIFORM_BLOCK_REFERENCED_BY_VERTEX_SHADER:35396,UNIFORM_BLOCK_REFERENCED_BY_FRAGMENT_SHADER:35398,OBJECT_TYPE:37138,SYNC_CONDITION:37139,SYNC_STATUS:37140,SYNC_FLAGS:37141,SYNC_FENCE:37142,SYNC_GPU_COMMANDS_COMPLETE:37143,UNSIGNALED:37144,SIGNALED:37145,ALREADY_SIGNALED:37146,TIMEOUT_EXPIRED:37147,CONDITION_SATISFIED:37148,WAIT_FAILED:37149,SYNC_FLUSH_COMMANDS_BIT:1,COLOR:6144,DEPTH:6145,STENCIL:6146,MIN:32775,MAX:32776,DEPTH_COMPONENT24:33190,STREAM_READ:35041,STREAM_COPY:35042,STATIC_READ:35045,STATIC_COPY:35046,DYNAMIC_READ:35049,DYNAMIC_COPY:35050,DEPTH_COMPONENT32F:36012,DEPTH32F_STENCIL8:36013,INVALID_INDEX:4294967295,TIMEOUT_IGNORED:-1,MAX_CLIENT_WAIT_TIMEOUT_WEBGL:37447,VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE:35070,UNMASKED_VENDOR_WEBGL:37445,UNMASKED_RENDERER_WEBGL:37446,MAX_TEXTURE_MAX_ANISOTROPY_EXT:34047,TEXTURE_MAX_ANISOTROPY_EXT:34046,COMPRESSED_RGB_S3TC_DXT1_EXT:33776,COMPRESSED_RGBA_S3TC_DXT1_EXT:33777,COMPRESSED_RGBA_S3TC_DXT3_EXT:33778,COMPRESSED_RGBA_S3TC_DXT5_EXT:33779,COMPRESSED_R11_EAC:37488,COMPRESSED_SIGNED_R11_EAC:37489,COMPRESSED_RG11_EAC:37490,COMPRESSED_SIGNED_RG11_EAC:37491,COMPRESSED_RGB8_ETC2:37492,COMPRESSED_RGBA8_ETC2_EAC:37493,COMPRESSED_SRGB8_ETC2:37494,COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:37495,COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:37496,COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:37497,COMPRESSED_RGB_PVRTC_4BPPV1_IMG:35840,COMPRESSED_RGBA_PVRTC_4BPPV1_IMG:35842,COMPRESSED_RGB_PVRTC_2BPPV1_IMG:35841,COMPRESSED_RGBA_PVRTC_2BPPV1_IMG:35843,COMPRESSED_RGB_ETC1_WEBGL:36196,COMPRESSED_RGB_ATC_WEBGL:35986,COMPRESSED_RGBA_ATC_EXPLICIT_ALPHA_WEBGL:35986,COMPRESSED_RGBA_ATC_INTERPOLATED_ALPHA_WEBGL:34798,UNSIGNED_INT_24_8_WEBGL:34042,HALF_FLOAT_OES:36193,RGBA32F_EXT:34836,RGB32F_EXT:34837,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT:33297,UNSIGNED_NORMALIZED_EXT:35863,MIN_EXT:32775,MAX_EXT:32776,SRGB_EXT:35904,SRGB_ALPHA_EXT:35906,SRGB8_ALPHA8_EXT:35907,FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT:33296,FRAGMENT_SHADER_DERIVATIVE_HINT_OES:35723,COLOR_ATTACHMENT0_WEBGL:36064,COLOR_ATTACHMENT1_WEBGL:36065,COLOR_ATTACHMENT2_WEBGL:36066,COLOR_ATTACHMENT3_WEBGL:36067,COLOR_ATTACHMENT4_WEBGL:36068,COLOR_ATTACHMENT5_WEBGL:36069,COLOR_ATTACHMENT6_WEBGL:36070,COLOR_ATTACHMENT7_WEBGL:36071,COLOR_ATTACHMENT8_WEBGL:36072,COLOR_ATTACHMENT9_WEBGL:36073,COLOR_ATTACHMENT10_WEBGL:36074,COLOR_ATTACHMENT11_WEBGL:36075,COLOR_ATTACHMENT12_WEBGL:36076,COLOR_ATTACHMENT13_WEBGL:36077,COLOR_ATTACHMENT14_WEBGL:36078,COLOR_ATTACHMENT15_WEBGL:36079,DRAW_BUFFER0_WEBGL:34853,DRAW_BUFFER1_WEBGL:34854,DRAW_BUFFER2_WEBGL:34855,DRAW_BUFFER3_WEBGL:34856,DRAW_BUFFER4_WEBGL:34857,DRAW_BUFFER5_WEBGL:34858,DRAW_BUFFER6_WEBGL:34859,DRAW_BUFFER7_WEBGL:34860,DRAW_BUFFER8_WEBGL:34861,DRAW_BUFFER9_WEBGL:34862,DRAW_BUFFER10_WEBGL:34863,DRAW_BUFFER11_WEBGL:34864,DRAW_BUFFER12_WEBGL:34865,DRAW_BUFFER13_WEBGL:34866,DRAW_BUFFER14_WEBGL:34867,DRAW_BUFFER15_WEBGL:34868,MAX_COLOR_ATTACHMENTS_WEBGL:36063,MAX_DRAW_BUFFERS_WEBGL:34852,VERTEX_ARRAY_BINDING_OES:34229,QUERY_COUNTER_BITS_EXT:34916,CURRENT_QUERY_EXT:34917,QUERY_RESULT_EXT:34918,QUERY_RESULT_AVAILABLE_EXT:34919,TIME_ELAPSED_EXT:35007,TIMESTAMP_EXT:36392,GPU_DISJOINT_EXT:36795}},\n \"9d046c4720\": function _(t,e,s,h,i){h();const r=t(\"@bokehjs/models/layouts/html_box\");class n extends r.HTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,(()=>this._plot()));const{width:t,height:e,renderer:s,theme:h}=this.model.properties;this.on_change([t,e],(()=>this._resize())),this.on_change([h,s],(()=>this.render()))}render(){super.render();const t={width:this.model.width,height:this.model.height,renderer:this.model.renderer};null!=this._chart&&window.echarts.dispose(this._chart),this._chart=window.echarts.init(this.el,this.model.theme,t),this._plot()}after_layout(){super.after_layout(),this._chart.resize()}_plot(){null!=window.echarts&&this._chart.setOption(this.model.data)}_resize(){this._chart.resize({width:this.model.width,height:this.model.height})}}s.EChartsView=n,n.__name__=\"EChartsView\";class a extends r.HTMLBox{constructor(t){super(t)}static init_ECharts(){this.prototype.default_view=n,this.define((({Any:t,String:e})=>({data:[t,{}],theme:[e,\"default\"],renderer:[e,\"canvas\"]})))}}s.ECharts=a,a.__name__=\"ECharts\",a.__module__=\"panel.models.echarts\",a.init_ECharts()},\n \"2839081043\": function _(e,t,n,s,r){s();const o=e(\"@bokehjs/models/widgets/markup\"),i=e(\"@bokehjs/core/bokeh_events\"),_=e(\"4c755983eb\"),l=e(\"3329d4aa5b\");class c extends i.ModelEvent{constructor(e,t){super(),this.node=e,this.data=t,this.event_name=\"dom_event\"}_to_json(){return{model:this.origin,node:this.node,data:this.data}}}function a(e){return(new DOMParser).parseFromString(e,\"text/html\").documentElement.textContent}function d(e){Array.from(e.querySelectorAll(\"script\")).forEach((e=>{const t=document.createElement(\"script\");Array.from(e.attributes).forEach((e=>t.setAttribute(e.name,e.value))),t.appendChild(document.createTextNode(e.innerHTML)),e.parentNode&&e.parentNode.replaceChild(t,e)}))}n.DOMEvent=c,c.__name__=\"DOMEvent\",n.htmlDecode=a,n.runScripts=d;class u extends _.PanelMarkupView{constructor(){super(...arguments),this._event_listeners={}}connect_signals(){super.connect_signals(),this.connect(this.model.properties.events.change,(()=>{this._remove_event_listeners(),this._setup_event_listeners()}))}render(){super.render();const e=a(this.model.text)||this.model.text;e?(this.markup_el.innerHTML=e,d(this.markup_el),this._setup_event_listeners()):this.markup_el.innerHTML=\"\"}_remove_event_listeners(){for(const e in this._event_listeners){const t=document.getElementById(e);if(null!=t)for(const n in this._event_listeners[e]){const s=this._event_listeners[e][n];t.removeEventListener(n,s)}else console.warn(`DOM node '${e}' could not be found. Cannot subscribe to DOM events.`)}this._event_listeners={}}_setup_event_listeners(){for(const e in this.model.events){const t=document.getElementById(e);if(null!=t)for(const n of this.model.events[e]){const s=t=>{this.model.trigger_event(new c(e,l.serializeEvent(t)))};t.addEventListener(n,s),e in this._event_listeners||(this._event_listeners[e]={}),this._event_listeners[e][n]=s}else console.warn(`DOM node '${e}' could not be found. Cannot subscribe to DOM events.`)}}}n.HTMLView=u,u.__name__=\"HTMLView\";class h extends o.Markup{constructor(e){super(e)}static init_HTML(){this.prototype.default_view=u,this.define((({Any:e})=>({events:[e,{}]})))}}n.HTML=h,h.__name__=\"HTML\",h.__module__=\"panel.models.markup\",h.init_HTML()},\n \"3329d4aa5b\": function _(e,t,o,a,i){function n(e){const t={type:e.type};return\"value\"in e.target&&(t.value=e.target.value),e.type in c&&Object.assign(t,c[e.type](e)),t}a(),o.serializeEvent=n;const r={clipboard:e=>({clipboardData:e.clipboardData}),composition:e=>({data:e.data}),keyboard:e=>({altKey:e.altKey,charCode:e.charCode,ctrlKey:e.ctrlKey,key:e.key,keyCode:e.keyCode,locale:e.locale||null,location:e.location,metaKey:e.metaKey,repeat:e.repeat,shiftKey:e.shiftKey,which:e.which}),mouse:e=>({altKey:e.altKey,button:e.button,buttons:e.buttons,clientX:e.clientX,clientY:e.clientY,ctrlKey:e.ctrlKey,metaKey:e.metaKey,pageX:e.pageX,pageY:e.pageY,screenX:e.screenX,screenY:e.screenY,shiftKey:e.shiftKey}),pointer:e=>({pointerId:e.pointerId,width:e.width,height:e.height,pressure:e.pressure,tiltX:e.tiltX,tiltY:e.tiltY,pointerType:e.pointerType,isPrimary:e.isPrimary}),touch:e=>({altKey:e.altKey,ctrlKey:e.ctrlKey,metaKey:e.metaKey,shiftKey:e.shiftKey}),ui:e=>({detail:e.detail}),wheel:e=>({deltaMode:e.deltaMode,deltaX:e.deltaX,deltaY:e.deltaY,deltaZ:e.deltaZ}),animation:e=>({animationName:e.animationName,pseudoElement:e.pseudoElement,elapsedTime:e.elapsedTime}),transition:e=>({propertyName:e.propertyName,pseudoElement:e.pseudoElement,elapsedTime:e.elapsedTime})},l={clipboard:[\"copy\",\"cut\",\"paste\"],composition:[\"compositionend\",\"compositionstart\",\"compositionupdate\"],keyboard:[\"keydown\",\"keypress\",\"keyup\"],mouse:[\"click\",\"contextmenu\",\"doubleclick\",\"drag\",\"dragend\",\"dragenter\",\"dragexit\",\"dragleave\",\"dragover\",\"dragstart\",\"drop\",\"mousedown\",\"mouseenter\",\"mouseleave\",\"mousemove\",\"mouseout\",\"mouseover\",\"mouseup\"],pointer:[\"pointerdown\",\"pointermove\",\"pointerup\",\"pointercancel\",\"gotpointercapture\",\"lostpointercapture\",\"pointerenter\",\"pointerleave\",\"pointerover\",\"pointerout\"],selection:[\"select\"],touch:[\"touchcancel\",\"touchend\",\"touchmove\",\"touchstart\"],ui:[\"scroll\"],wheel:[\"wheel\"],animation:[\"animationstart\",\"animationend\",\"animationiteration\"],transition:[\"transitionend\"]},c={};Object.keys(l).forEach((e=>{l[e].forEach((t=>{c[t]=r[e]}))})),o.default=n},\n \"7d45bd3bc4\": function _(require,module,exports,__esModule,__esExport){__esModule();const preact_1=require(\"6f11f2ef27\"),hooks_1=require(\"4c02a9b43f\"),preact_2=require(\"b3f51db71c\"),fast_json_patch_1=require(\"cbecfde9cd\"),html_box_1=require(\"@bokehjs/models/layouts/html_box\"),layout_1=require(\"4c755983eb\"),event_to_object_1=require(\"3329d4aa5b\"),LayoutConfigContext=preact_1.createContext({});function mountLayout(e,t,o,n){preact_1.render(preact_2.html`\n <${Layout}\n saveUpdateHook=${t}\n sendEvent=${o}\n importSourceUrl=${n}\n />\n `,e)}function Layout({saveUpdateHook:e,sendEvent:t,importSourceUrl:o}){const[n,r]=useInplaceJsonPatch({});return hooks_1.useEffect((()=>e(r)),[r]),n.tagName?preact_2.html`\n <${LayoutConfigContext.Provider}\n value=${{sendEvent:t,importSourceUrl:o}}\n >\n <${Element} model=${n} />\n <//>\n `:preact_2.html`<div />`}function Element({model:e}){return e.importSource?preact_2.html`<${ImportedElement} model=${e} />`:preact_2.html`<${StandardElement} model=${e} />`}function ImportedElement({model:e}){const t=hooks_1.useContext(LayoutConfigContext),o=useLazyModule(e.importSource.source,t.importSourceUrl);if(o){const n=getPathProperty(o,e.tagName),r=elementChildren(e),a=elementAttributes(e,t.sendEvent);return preact_2.html`<${n} ...${a}>${r}<//>`}{const t=e.importSource.fallback;if(!t)return preact_2.html`<div />`;switch(typeof t){case\"object\":return preact_2.html`<${Element} model=${t} />`;case\"string\":return preact_2.html`<div>${t}</div>`;default:return null}}}function StandardElement({model:e}){const t=hooks_1.useContext(LayoutConfigContext),o=elementChildren(e),n=elementAttributes(e,t.sendEvent);return e.children&&e.children.length?preact_2.html`<${e.tagName} ...${n}>${o}<//>`:preact_2.html`<${e.tagName} ...${n} />`}function elementChildren(e){return e.children?e.children.map((e=>{switch(typeof e){case\"object\":return preact_2.html`<${Element} model=${e} />`;case\"string\":return e;default:return null}})):[]}function elementAttributes(e,t){const o=Object.assign({},e.attributes);return e.eventHandlers&&Object.keys(e.eventHandlers).forEach((n=>{const r=e.eventHandlers[n];o[n]=eventHandler(t,r)})),o}function eventHandler(e,t){return function(){const o=Array.from(arguments).map((e=>\"object\"==typeof e?(t.preventDefault&&e.preventDefault(),t.stopPropagation&&e.stopPropagation(),event_to_object_1.serializeEvent(e)):e));return new Promise((n=>{const r={data:o,target:t.target};e(r),n(r)}))}}function useLazyModule(source,sourceUrlBase=\"\"){const[module,setModule]=hooks_1.useState(null);return module||eval(`import('${joinUrl(sourceUrlBase,source)}')`).then(setModule),module}function getPathProperty(e,t){const o=t.split(\".\");let n=e[o.shift()];for(let e=0;e<o.length;e++)n=n[o[e]];return n}function useInplaceJsonPatch(e){const t=hooks_1.useRef(e),o=useForceUpdate(),n=hooks_1.useCallback(((e,n)=>{applyPatchInplace(t.current,e,n),o()}),[t,o]);return[t.current,n]}function applyPatchInplace(e,t,o){t?fast_json_patch_1.applyPatch(e,[{op:\"replace\",path:t,value:fast_json_patch_1.applyPatch(fast_json_patch_1.getValueByPointer(e,t),o,!1,!1).newDocument}]):fast_json_patch_1.applyPatch(e,o)}function useForceUpdate(){const[,e]=hooks_1.useState({});return hooks_1.useCallback((()=>e({})),[])}function joinUrl(e,t){return t.startsWith(\"./\")?(e.endsWith(\"/\")?e.slice(0,-1):e)+t.slice(1):t}exports.mountLayout=mountLayout,exports.default=Layout;class IDOMView extends layout_1.PanelHTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.event.change,(()=>{this._update(...this.model.event),setTimeout((()=>{requestAnimationFrame((()=>this.fix_layout()))}))}))}fix_layout(){this.update_layout(),this.compute_layout(),this.invalidate_layout(),layout_1.set_size(this.el,this.model)}initialize(){super.initialize(),mountLayout(this.el,(e=>this._save_update(e)),(e=>this._send(e)),this.model.importSourceUrl)}async lazy_initialize(){await super.lazy_initialize(),await new Promise((e=>{const t=()=>{this._update?e(null):setTimeout(t,100)};t()}))}_save_update(e){this._update=e}async render(){super.render(),this._update(...this.model.event),await new Promise((e=>{const t=()=>{this.el.children.length?(this.fix_layout(),e(null)):setTimeout(t,50)};t()}))}_send(e){this.model.msg=e}}exports.IDOMView=IDOMView,IDOMView.__name__=\"IDOMView\";class IDOM extends html_box_1.HTMLBox{constructor(e){super(e)}static init_IDOM(){this.prototype.default_view=IDOMView,this.define((({Any:e,String:t})=>({event:[e,[]],importSourceUrl:[t,\"\"],msg:[e,{}]})))}}exports.IDOM=IDOM,IDOM.__name__=\"IDOM\",IDOM.__module__=\"panel.models.idom\",IDOM.init_IDOM()},\n \"6f11f2ef27\": function _(e,n,t,_,l){_();var o,r,i,u,s,c,f={},p=[],a=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i;function d(e,n){for(var t in n)e[t]=n[t];return e}function h(e){var n=e.parentNode;n&&n.removeChild(e)}function v(e,n,t){var _,l,o,r=arguments,i={};for(o in n)\"key\"==o?_=n[o]:\"ref\"==o?l=n[o]:i[o]=n[o];if(arguments.length>3)for(t=[t],o=3;o<arguments.length;o++)t.push(r[o]);if(null!=t&&(i.children=t),\"function\"==typeof e&&null!=e.defaultProps)for(o in e.defaultProps)void 0===i[o]&&(i[o]=e.defaultProps[o]);return y(e,i,_,l,null)}function y(e,n,t,_,l){var r={type:e,props:n,key:t,ref:_,__k:null,__:null,__b:0,__e:null,__d:void 0,__c:null,__h:null,constructor:void 0,__v:null==l?++o.__v:l};return null!=o.vnode&&o.vnode(r),r}function m(e){return e.children}function k(e,n){this.props=e,this.context=n}function g(e,n){if(null==n)return e.__?g(e.__,e.__.__k.indexOf(e)+1):null;for(var t;n<e.__k.length;n++)if(null!=(t=e.__k[n])&&null!=t.__e)return t.__e;return\"function\"==typeof e.type?g(e):null}function b(e){var n,t;if(null!=(e=e.__)&&null!=e.__c){for(e.__e=e.__c.base=null,n=0;n<e.__k.length;n++)if(null!=(t=e.__k[n])&&null!=t.__e){e.__e=e.__c.base=t.__e;break}return b(e)}}function C(e){(!e.__d&&(e.__d=!0)&&i.push(e)&&!x.__r++||s!==o.debounceRendering)&&((s=o.debounceRendering)||u)(x)}function x(){for(var e;x.__r=i.length;)e=i.sort((function(e,n){return e.__v.__b-n.__v.__b})),i=[],e.some((function(e){var n,t,_,l,o,r;e.__d&&(o=(l=(n=e).__v).__e,(r=n.__P)&&(t=[],(_=d({},l)).__v=l.__v+1,A(r,l,_,n.__n,void 0!==r.ownerSVGElement,null!=l.__h?[o]:null,t,null==o?g(l):o,l.__h),N(t,l),l.__e!=o&&b(l)))}))}function P(e,n,t,_,l,o,r,i,u,s){var c,a,d,h,v,k,b,C=_&&_.__k||p,x=C.length;for(t.__k=[],c=0;c<n.length;c++)if(null!=(h=t.__k[c]=null==(h=n[c])||\"boolean\"==typeof h?null:\"string\"==typeof h||\"number\"==typeof h?y(null,h,null,null,h):Array.isArray(h)?y(m,{children:h},null,null,null):h.__b>0?y(h.type,h.props,h.key,null,h.__v):h)){if(h.__=t,h.__b=t.__b+1,null===(d=C[c])||d&&h.key==d.key&&h.type===d.type)C[c]=void 0;else for(a=0;a<x;a++){if((d=C[a])&&h.key==d.key&&h.type===d.type){C[a]=void 0;break}d=null}A(e,h,d=d||f,l,o,r,i,u,s),v=h.__e,(a=h.ref)&&d.ref!=a&&(b||(b=[]),d.ref&&b.push(d.ref,null,h),b.push(a,h.__c||v,h)),null!=v?(null==k&&(k=v),\"function\"==typeof h.type&&null!=h.__k&&h.__k===d.__k?h.__d=u=S(h,u,e):u=E(e,h,d,C,v,u),s||\"option\"!==t.type?\"function\"==typeof t.type&&(t.__d=u):e.value=\"\"):u&&d.__e==u&&u.parentNode!=e&&(u=g(d))}for(t.__e=k,c=x;c--;)null!=C[c]&&(\"function\"==typeof t.type&&null!=C[c].__e&&C[c].__e==t.__d&&(t.__d=g(_,c+1)),M(C[c],C[c]));if(b)for(c=0;c<b.length;c++)L(b[c],b[++c],b[++c])}function S(e,n,t){var _,l;for(_=0;_<e.__k.length;_++)(l=e.__k[_])&&(l.__=e,n=\"function\"==typeof l.type?S(l,n,t):E(t,l,l,e.__k,l.__e,n));return n}function E(e,n,t,_,l,o){var r,i,u;if(void 0!==n.__d)r=n.__d,n.__d=void 0;else if(null==t||l!=o||null==l.parentNode)e:if(null==o||o.parentNode!==e)e.appendChild(l),r=null;else{for(i=o,u=0;(i=i.nextSibling)&&u<_.length;u+=2)if(i==l)break e;e.insertBefore(l,o),r=o}return void 0!==r?r:l.nextSibling}function w(e,n,t){\"-\"===n[0]?e.setProperty(n,t):e[n]=null==t?\"\":\"number\"!=typeof t||a.test(n)?t:t+\"px\"}function U(e,n,t,_,l){var o;e:if(\"style\"===n)if(\"string\"==typeof t)e.style.cssText=t;else{if(\"string\"==typeof _&&(e.style.cssText=_=\"\"),_)for(n in _)t&&n in t||w(e.style,n,\"\");if(t)for(n in t)_&&t[n]===_[n]||w(e.style,n,t[n])}else if(\"o\"===n[0]&&\"n\"===n[1])o=n!==(n=n.replace(/Capture$/,\"\")),n=n.toLowerCase()in e?n.toLowerCase().slice(2):n.slice(2),e.l||(e.l={}),e.l[n+o]=t,t?_||e.addEventListener(n,o?T:D,o):e.removeEventListener(n,o?T:D,o);else if(\"dangerouslySetInnerHTML\"!==n){if(l)n=n.replace(/xlink[H:h]/,\"h\").replace(/sName$/,\"s\");else if(\"href\"!==n&&\"list\"!==n&&\"form\"!==n&&\"download\"!==n&&n in e)try{e[n]=null==t?\"\":t;break e}catch(e){}\"function\"==typeof t||(null!=t&&(!1!==t||\"a\"===n[0]&&\"r\"===n[1])?e.setAttribute(n,t):e.removeAttribute(n))}}function D(e){this.l[e.type+!1](o.event?o.event(e):e)}function T(e){this.l[e.type+!0](o.event?o.event(e):e)}function A(e,n,t,_,l,r,i,u,s){var c,f,p,a,h,v,y,g,b,C,x,S=n.type;if(void 0!==n.constructor)return null;null!=t.__h&&(s=t.__h,u=n.__e=t.__e,n.__h=null,r=[u]),(c=o.__b)&&c(n);try{e:if(\"function\"==typeof S){if(g=n.props,b=(c=S.contextType)&&_[c.__c],C=c?b?b.props.value:c.__:_,t.__c?y=(f=n.__c=t.__c).__=f.__E:(\"prototype\"in S&&S.prototype.render?n.__c=f=new S(g,C):(n.__c=f=new k(g,C),f.constructor=S,f.render=F),b&&b.sub(f),f.props=g,f.state||(f.state={}),f.context=C,f.__n=_,p=f.__d=!0,f.__h=[]),null==f.__s&&(f.__s=f.state),null!=S.getDerivedStateFromProps&&(f.__s==f.state&&(f.__s=d({},f.__s)),d(f.__s,S.getDerivedStateFromProps(g,f.__s))),a=f.props,h=f.state,p)null==S.getDerivedStateFromProps&&null!=f.componentWillMount&&f.componentWillMount(),null!=f.componentDidMount&&f.__h.push(f.componentDidMount);else{if(null==S.getDerivedStateFromProps&&g!==a&&null!=f.componentWillReceiveProps&&f.componentWillReceiveProps(g,C),!f.__e&&null!=f.shouldComponentUpdate&&!1===f.shouldComponentUpdate(g,f.__s,C)||n.__v===t.__v){f.props=g,f.state=f.__s,n.__v!==t.__v&&(f.__d=!1),f.__v=n,n.__e=t.__e,n.__k=t.__k,f.__h.length&&i.push(f);break e}null!=f.componentWillUpdate&&f.componentWillUpdate(g,f.__s,C),null!=f.componentDidUpdate&&f.__h.push((function(){f.componentDidUpdate(a,h,v)}))}f.context=C,f.props=g,f.state=f.__s,(c=o.__r)&&c(n),f.__d=!1,f.__v=n,f.__P=e,c=f.render(f.props,f.state,f.context),f.state=f.__s,null!=f.getChildContext&&(_=d(d({},_),f.getChildContext())),p||null==f.getSnapshotBeforeUpdate||(v=f.getSnapshotBeforeUpdate(a,h)),x=null!=c&&c.type===m&&null==c.key?c.props.children:c,P(e,Array.isArray(x)?x:[x],n,t,_,l,r,i,u,s),f.base=n.__e,n.__h=null,f.__h.length&&i.push(f),y&&(f.__E=f.__=null),f.__e=!1}else null==r&&n.__v===t.__v?(n.__k=t.__k,n.__e=t.__e):n.__e=W(t.__e,n,t,_,l,r,i,s);(c=o.diffed)&&c(n)}catch(e){n.__v=null,(s||null!=r)&&(n.__e=u,n.__h=!!s,r[r.indexOf(u)]=null),o.__e(e,n,t)}}function N(e,n){o.__c&&o.__c(n,e),e.some((function(n){try{e=n.__h,n.__h=[],e.some((function(e){e.call(n)}))}catch(e){o.__e(e,n.__v)}}))}function W(e,n,t,_,l,o,r,i){var u,s,c,a,d=t.props,v=n.props,y=n.type,m=0;if(\"svg\"===y&&(l=!0),null!=o)for(;m<o.length;m++)if((u=o[m])&&(u===e||(y?u.localName==y:3==u.nodeType))){e=u,o[m]=null;break}if(null==e){if(null===y)return document.createTextNode(v);e=l?document.createElementNS(\"http://www.w3.org/2000/svg\",y):document.createElement(y,v.is&&v),o=null,i=!1}if(null===y)d===v||i&&e.data===v||(e.data=v);else{if(o=o&&p.slice.call(e.childNodes),s=(d=t.props||f).dangerouslySetInnerHTML,c=v.dangerouslySetInnerHTML,!i){if(null!=o)for(d={},a=0;a<e.attributes.length;a++)d[e.attributes[a].name]=e.attributes[a].value;(c||s)&&(c&&(s&&c.__html==s.__html||c.__html===e.innerHTML)||(e.innerHTML=c&&c.__html||\"\"))}if(function(e,n,t,_,l){var o;for(o in t)\"children\"===o||\"key\"===o||o in n||U(e,o,null,t[o],_);for(o in n)l&&\"function\"!=typeof n[o]||\"children\"===o||\"key\"===o||\"value\"===o||\"checked\"===o||t[o]===n[o]||U(e,o,n[o],t[o],_)}(e,v,d,l,i),c)n.__k=[];else if(m=n.props.children,P(e,Array.isArray(m)?m:[m],n,t,_,l&&\"foreignObject\"!==y,o,r,e.firstChild,i),null!=o)for(m=o.length;m--;)null!=o[m]&&h(o[m]);i||(\"value\"in v&&void 0!==(m=v.value)&&(m!==e.value||\"progress\"===y&&!m)&&U(e,\"value\",m,d.value,!1),\"checked\"in v&&void 0!==(m=v.checked)&&m!==e.checked&&U(e,\"checked\",m,d.checked,!1))}return e}function L(e,n,t){try{\"function\"==typeof e?e(n):e.current=n}catch(e){o.__e(e,t)}}function M(e,n,t){var _,l,r;if(o.unmount&&o.unmount(e),(_=e.ref)&&(_.current&&_.current!==e.__e||L(_,null,n)),t||\"function\"==typeof e.type||(t=null!=(l=e.__e)),e.__e=e.__d=void 0,null!=(_=e.__c)){if(_.componentWillUnmount)try{_.componentWillUnmount()}catch(e){o.__e(e,n)}_.base=_.__P=null}if(_=e.__k)for(r=0;r<_.length;r++)_[r]&&M(_[r],n,t);null!=l&&h(l)}function F(e,n,t){return this.constructor(e,t)}function H(e,n,t){var _,l,r;o.__&&o.__(e,n),l=(_=\"function\"==typeof t)?null:t&&t.__k||n.__k,r=[],A(n,e=(!_&&t||n).__k=v(m,null,[e]),l||f,f,void 0!==n.ownerSVGElement,!_&&t?[t]:l?null:n.firstChild?p.slice.call(n.childNodes):null,r,!_&&t?t:l?l.__e:n.firstChild,_),N(r,e)}t.options=o,t.isValidElement=r,t.createElement=v,t.h=v,t.createRef=function(){return{current:null}},t.Fragment=m,t.Component=k,t.toChildArray=function e(n,t){return t=t||[],null==n||\"boolean\"==typeof n||(Array.isArray(n)?n.some((function(n){e(n,t)})):t.push(n)),t},t.render=H,t.hydrate=function e(n,t){H(n,t,e)},t.cloneElement=function(e,n,t){var _,l,o,r=arguments,i=d({},e.props);for(o in n)\"key\"==o?_=n[o]:\"ref\"==o?l=n[o]:i[o]=n[o];if(arguments.length>3)for(t=[t],o=3;o<arguments.length;o++)t.push(r[o]);return null!=t&&(i.children=t),y(e.type,i,_||e.key,l||e.ref,null)},t.createContext=function(e,n){var t={__c:n=\"__cC\"+c++,__:e,Consumer:function(e,n){return e.children(n)},Provider:function(e){var t,_;return this.getChildContext||(t=[],(_={})[n]=this,this.getChildContext=function(){return _},this.shouldComponentUpdate=function(e){this.props.value!==e.value&&t.some(C)},this.sub=function(e){t.push(e);var n=e.componentWillUnmount;e.componentWillUnmount=function(){t.splice(t.indexOf(e),1),n&&n.call(e)}}),e.children}};return t.Provider.__=t.Consumer.contextType=t},t.options=o={__e:function(e,n){for(var t,_,l;n=n.__;)if((t=n.__c)&&!t.__)try{if((_=t.constructor)&&null!=_.getDerivedStateFromError&&(t.setState(_.getDerivedStateFromError(e)),l=t.__d),null!=t.componentDidCatch&&(t.componentDidCatch(e),l=t.__d),l)return t.__E=t}catch(n){e=n}throw e},__v:0},t.isValidElement=r=function(e){return null!=e&&void 0===e.constructor},k.prototype.setState=function(e,n){var t;t=null!=this.__s&&this.__s!==this.state?this.__s:this.__s=d({},this.state),\"function\"==typeof e&&(e=e(d({},t),this.props)),e&&d(t,e),null!=e&&this.__v&&(n&&this.__h.push(n),C(this))},k.prototype.forceUpdate=function(e){this.__v&&(this.__e=!0,e&&this.__h.push(e),C(this))},k.prototype.render=m,i=[],u=\"function\"==typeof Promise?Promise.prototype.then.bind(Promise.resolve()):setTimeout,x.__r=0,c=0},\n \"4c02a9b43f\": function _(_,n,t,o,u){o();const e=_(\"6f11f2ef27\");var i,c,r,f=0,a=[],s=e.options.__b,h=e.options.__r,p=e.options.diffed,v=e.options.__c,m=e.options.unmount;function l(_,n){e.options.__h&&e.options.__h(c,_,f||n),f=0;var t=c.__H||(c.__H={__:[],__h:[]});return _>=t.__.length&&t.__.push({}),t.__[_]}function H(_){return f=1,d(q,_)}function d(_,n,t){var o=l(i++,2);return o.t=_,o.__c||(o.__=[t?t(n):q(void 0,n),function(_){var n=o.t(o.__[0],_);o.__[0]!==n&&(o.__=[n,o.__[1]],o.__c.setState({}))}],o.__c=c),o.__}function E(_,n){var t=l(i++,4);!e.options.__s&&F(t.__H,n)&&(t.__=_,t.__H=n,c.__h.push(t))}function y(_,n){var t=l(i++,7);return F(t.__H,n)&&(t.__=_(),t.__H=n,t.__h=_),t.__}function b(){a.forEach((function(_){if(_.__P)try{_.__H.__h.forEach(A),_.__H.__h.forEach(D),_.__H.__h=[]}catch(n){_.__H.__h=[],e.options.__e(n,_.__v)}})),a=[]}t.useState=H,t.useReducer=d,t.useEffect=function(_,n){var t=l(i++,3);!e.options.__s&&F(t.__H,n)&&(t.__=_,t.__H=n,c.__H.__h.push(t))},t.useLayoutEffect=E,t.useRef=function(_){return f=5,y((function(){return{current:_}}),[])},t.useImperativeHandle=function(_,n,t){f=6,E((function(){\"function\"==typeof _?_(n()):_&&(_.current=n())}),null==t?t:t.concat(_))},t.useMemo=y,t.useCallback=function(_,n){return f=8,y((function(){return _}),n)},t.useContext=function(_){var n=c.context[_.__c],t=l(i++,9);return t.__c=_,n?(null==t.__&&(t.__=!0,n.sub(c)),n.props.value):_.__},t.useDebugValue=function(_,n){e.options.useDebugValue&&e.options.useDebugValue(n?n(_):_)},t.useErrorBoundary=function(_){var n=l(i++,10),t=H();return n.__=_,c.componentDidCatch||(c.componentDidCatch=function(_){n.__&&n.__(_),t[1](_)}),[t[0],function(){t[1](void 0)}]},e.options.__b=function(_){c=null,s&&s(_)},e.options.__r=function(_){h&&h(_),i=0;var n=(c=_.__c).__H;n&&(n.__h.forEach(A),n.__h.forEach(D),n.__h=[])},e.options.diffed=function(_){p&&p(_);var n=_.__c;n&&n.__H&&n.__H.__h.length&&(1!==a.push(n)&&r===e.options.requestAnimationFrame||((r=e.options.requestAnimationFrame)||function(_){var n,t=function(){clearTimeout(o),g&&cancelAnimationFrame(n),setTimeout(_)},o=setTimeout(t,100);g&&(n=requestAnimationFrame(t))})(b)),c=void 0},e.options.__c=function(_,n){n.some((function(_){try{_.__h.forEach(A),_.__h=_.__h.filter((function(_){return!_.__||D(_)}))}catch(t){n.some((function(_){_.__h&&(_.__h=[])})),n=[],e.options.__e(t,_.__v)}})),v&&v(_,n)},e.options.unmount=function(_){m&&m(_);var n=_.__c;if(n&&n.__H)try{n.__H.__.forEach(A)}catch(_){e.options.__e(_,n.__v)}};var g=\"function\"==typeof requestAnimationFrame;function A(_){var n=c;\"function\"==typeof _.__c&&_.__c(),c=n}function D(_){var n=c;_.__c=_.__(),c=n}function F(_,n){return!_||_.length!==n.length||n.some((function(n,t){return n!==_[t]}))}function q(_,n){return\"function\"==typeof n?n(_):n}},\n \"b3f51db71c\": function _(e,f,n,t,o){t();const r=e(\"tslib\"),d=e(\"6f11f2ef27\");var a=e(\"6f11f2ef27\");o(\"h\",a.h),o(\"render\",a.render),o(\"Component\",a.Component);var h=r.__importDefault(e(\"ab33dd3f38\")).default.bind(d.h);n.html=h},\n \"ab33dd3f38\": function _(n,t,s,u,r){u();var e=function(n,t,s,u){var r;t[0]=0;for(var h=1;h<t.length;h++){var p=t[h++],a=t[h]?(t[0]|=p?1:2,s[t[h++]]):t[++h];3===p?u[0]=a:4===p?u[1]=Object.assign(u[1]||{},a):5===p?(u[1]=u[1]||{})[t[++h]]=a:6===p?u[1][t[++h]]+=a+\"\":p?(r=n.apply(a,e(n,a,s,[\"\",null])),u.push(r),a[0]?t[0]|=2:(t[h-2]=0,t[h]=r)):u.push(a)}return u},h=new Map;s.default=function(n){var t=h.get(this);return t||(t=new Map,h.set(this,t)),(t=e(this,t.get(n)||(t.set(n,t=function(n){for(var t,s,u=1,r=\"\",e=\"\",h=[0],p=function(n){1===u&&(n||(r=r.replace(/^\\s*\\n\\s*|\\s*\\n\\s*$/g,\"\")))?h.push(0,n,r):3===u&&(n||r)?(h.push(3,n,r),u=2):2===u&&\"...\"===r&&n?h.push(4,n,0):2===u&&r&&!n?h.push(5,0,!0,r):u>=5&&((r||!n&&5===u)&&(h.push(u,0,r,s),u=6),n&&(h.push(u,n,0,s),u=6)),r=\"\"},a=0;a<n.length;a++){a&&(1===u&&p(),p(a));for(var f=0;f<n[a].length;f++)t=n[a][f],1===u?\"<\"===t?(p(),h=[h],u=3):r+=t:4===u?\"--\"===r&&\">\"===t?(u=1,r=\"\"):r=t+r[0]:e?t===e?e=\"\":r+=t:'\"'===t||\"'\"===t?e=t:\">\"===t?(p(),u=1):u&&(\"=\"===t?(u=5,s=r,r=\"\"):\"/\"===t&&(u<5||\">\"===n[a][f+1])?(p(),3===u&&(h=h[0]),u=h,(h=h[0]).push(2,0,u),u=0):\" \"===t||\"\\t\"===t||\"\\n\"===t||\"\\r\"===t?(p(),u=2):r+=t),3===u&&\"!--\"===r&&(u=4,h=h[0])}return p(),h}(n)),t),arguments,[])).length>1?t:t[0]}},\n \"cbecfde9cd\": function _(e,n,t,o,a){var r=this&&this.__assign||function(){return(r=Object.assign||function(e){for(var n,t=1,o=arguments.length;t<o;t++)for(var a in n=arguments[t])Object.prototype.hasOwnProperty.call(n,a)&&(e[a]=n[a]);return e}).apply(this,arguments)};o();\n /*!\n * https://github.com/Starcounter-Jack/JSON-Patch\n * (c) 2017 Joachim Wester\n * MIT license\n */\n var p=e(\"cb21060ee5\"),s=e(\"b2f693e532\"),c=e(\"b2f693e532\");t.applyOperation=c.applyOperation,t.applyPatch=c.applyPatch,t.applyReducer=c.applyReducer,t.getValueByPointer=c.getValueByPointer,t.validate=c.validate,t.validator=c.validator;var i=e(\"cb21060ee5\");t.JsonPatchError=i.PatchError,t.deepClone=i._deepClone,t.escapePathComponent=i.escapePathComponent,t.unescapePathComponent=i.unescapePathComponent;var u=new WeakMap,l=function(e){this.observers=new Map,this.obj=e},v=function(e,n){this.callback=e,this.observer=n};function h(e,n){n.unobserve()}function d(e,n){var t,o=function(e){return u.get(e)}(e);if(o){var a=function(e,n){return e.observers.get(n)}(o,n);t=a&&a.observer}else o=new l(e),u.set(e,o);if(t)return t;if(t={},o.value=p._deepClone(e),n){t.callback=n,t.next=null;var r=function(){f(t)},s=function(){clearTimeout(t.next),t.next=setTimeout(r)};\"undefined\"!=typeof window&&(window.addEventListener(\"mouseup\",s),window.addEventListener(\"keyup\",s),window.addEventListener(\"mousedown\",s),window.addEventListener(\"keydown\",s),window.addEventListener(\"change\",s))}return t.patches=[],t.object=e,t.unobserve=function(){f(t),clearTimeout(t.next),function(e,n){e.observers.delete(n.callback)}(o,t),\"undefined\"!=typeof window&&(window.removeEventListener(\"mouseup\",s),window.removeEventListener(\"keyup\",s),window.removeEventListener(\"mousedown\",s),window.removeEventListener(\"keydown\",s),window.removeEventListener(\"change\",s))},o.observers.set(n,new v(n,t)),t}function f(e,n){void 0===n&&(n=!1);var t=u.get(e.object);w(t.value,e.object,e.patches,\"\",n),e.patches.length&&s.applyPatch(t.value,e.patches);var o=e.patches;return o.length>0&&(e.patches=[],e.callback&&e.callback(o)),o}function w(e,n,t,o,a){if(n!==e){\"function\"==typeof n.toJSON&&(n=n.toJSON());for(var r=p._objectKeys(n),s=p._objectKeys(e),c=!1,i=s.length-1;i>=0;i--){var u=e[v=s[i]];if(!p.hasOwnProperty(n,v)||void 0===n[v]&&void 0!==u&&!1===Array.isArray(n))Array.isArray(e)===Array.isArray(n)?(a&&t.push({op:\"test\",path:o+\"/\"+p.escapePathComponent(v),value:p._deepClone(u)}),t.push({op:\"remove\",path:o+\"/\"+p.escapePathComponent(v)}),c=!0):(a&&t.push({op:\"test\",path:o,value:e}),t.push({op:\"replace\",path:o,value:n}),!0);else{var l=n[v];\"object\"==typeof u&&null!=u&&\"object\"==typeof l&&null!=l?w(u,l,t,o+\"/\"+p.escapePathComponent(v),a):u!==l&&(!0,a&&t.push({op:\"test\",path:o+\"/\"+p.escapePathComponent(v),value:p._deepClone(u)}),t.push({op:\"replace\",path:o+\"/\"+p.escapePathComponent(v),value:p._deepClone(l)}))}}if(c||r.length!=s.length)for(i=0;i<r.length;i++){var v=r[i];p.hasOwnProperty(e,v)||void 0===n[v]||t.push({op:\"add\",path:o+\"/\"+p.escapePathComponent(v),value:p._deepClone(n[v])})}}}function b(e,n,t){void 0===t&&(t=!1);var o=[];return w(e,n,o,\"\",t),o}t.unobserve=h,t.observe=d,t.generate=f,t.compare=b;var y=e(\"b2f693e532\"),m=e(\"cb21060ee5\");t.default=r({},y,{unobserve:h,observe:d,generate:f,compare:b,JsonPatchError:m.PatchError,deepClone:p._deepClone,escapePathComponent:p.escapePathComponent,unescapePathComponent:m.unescapePathComponent})},\n \"cb21060ee5\": function _(r,e,t,n,o){\n /*!\n * https://github.com/Starcounter-Jack/JSON-Patch\n * (c) 2017 Joachim Wester\n * MIT license\n */\n var i,f=this&&this.__extends||(i=function(r,e){return(i=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,e){r.__proto__=e}||function(r,e){for(var t in e)e.hasOwnProperty(t)&&(r[t]=e[t])})(r,e)},function(r,e){function t(){this.constructor=r}i(r,e),r.prototype=null===e?Object.create(e):(t.prototype=e.prototype,new t)});n();var u=Object.prototype.hasOwnProperty;function a(r,e){return u.call(r,e)}function c(r){if(Array.isArray(r)){for(var e=new Array(r.length),t=0;t<e.length;t++)e[t]=\"\"+t;return e}if(Object.keys)return Object.keys(r);e=[];for(var n in r)a(r,n)&&e.push(n);return e}function p(r){return-1===r.indexOf(\"/\")&&-1===r.indexOf(\"~\")?r:r.replace(/~/g,\"~0\").replace(/\\//g,\"~1\")}function s(r,e){var t;for(var n in r)if(a(r,n)){if(r[n]===e)return p(n)+\"/\";if(\"object\"==typeof r[n]&&\"\"!=(t=s(r[n],e)))return p(n)+\"/\"+t}return\"\"}function h(r,e){var t=[r];for(var n in e){var o=\"object\"==typeof e[n]?JSON.stringify(e[n],null,2):e[n];void 0!==o&&t.push(n+\": \"+o)}return t.join(\"\\n\")}t.hasOwnProperty=a,t._objectKeys=c,t._deepClone=function(r){switch(typeof r){case\"object\":return JSON.parse(JSON.stringify(r));case\"undefined\":return null;default:return r}},t.isInteger=function(r){for(var e,t=0,n=r.length;t<n;){if(!((e=r.charCodeAt(t))>=48&&e<=57))return!1;t++}return!0},t.escapePathComponent=p,t.unescapePathComponent=function(r){return r.replace(/~1/g,\"/\").replace(/~0/g,\"~\")},t._getPathRecursive=s,t.getPath=function(r,e){if(r===e)return\"/\";var t=s(r,e);if(\"\"===t)throw new Error(\"Object not found in root\");return\"/\"+t},t.hasUndefined=function r(e){if(void 0===e)return!0;if(e)if(Array.isArray(e)){for(var t=0,n=e.length;t<n;t++)if(r(e[t]))return!0}else if(\"object\"==typeof e){var o=c(e),i=o.length;for(t=0;t<i;t++)if(r(e[o[t]]))return!0}return!1};var y=function(r){function e(e,t,n,o,i){var f=this.constructor,u=r.call(this,h(e,{name:t,index:n,operation:o,tree:i}))||this;return u.name=t,u.index=n,u.operation=o,u.tree=i,Object.setPrototypeOf(u,f.prototype),u.message=h(e,{name:t,index:n,operation:o,tree:i}),u}return f(e,r),e}(Error);t.PatchError=y},\n \"b2f693e532\": function _(e,t,o,r,n){r();var a=e(\"0c8122087b\"),i=e(\"cb21060ee5\");o.JsonPatchError=i.PatchError,o.deepClone=i._deepClone;var p={add:function(e,t,o){return e[t]=this.value,{newDocument:o}},remove:function(e,t,o){var r=e[t];return delete e[t],{newDocument:o,removed:r}},replace:function(e,t,o){var r=e[t];return e[t]=this.value,{newDocument:o,removed:r}},move:function(e,t,o){var r=h(o,this.path);r&&(r=i._deepClone(r));var n=c(o,{op:\"remove\",path:this.from}).removed;return c(o,{op:\"add\",path:this.path,value:n}),{newDocument:o,removed:r}},copy:function(e,t,o){var r=h(o,this.from);return c(o,{op:\"add\",path:this.path,value:i._deepClone(r)}),{newDocument:o}},test:function(e,t,o){return{newDocument:o,test:a(e[t],this.value)}},_get:function(e,t,o){return this.value=e[t],{newDocument:o}}},s={add:function(e,t,o){return i.isInteger(t)?e.splice(t,0,this.value):e[t]=this.value,{newDocument:o,index:t}},remove:function(e,t,o){return{newDocument:o,removed:e.splice(t,1)[0]}},replace:function(e,t,o){var r=e[t];return e[t]=this.value,{newDocument:o,removed:r}},move:p.move,copy:p.copy,test:p.test,_get:p._get};function h(e,t){if(\"\"==t)return e;var o={op:\"_get\",path:t};return c(e,o),o.value}function c(e,t,r,n,c,u){if(void 0===r&&(r=!1),void 0===n&&(n=!0),void 0===c&&(c=!0),void 0===u&&(u=0),r&&(\"function\"==typeof r?r(t,0,e,t.path):d(t,0)),\"\"===t.path){var f={newDocument:e};if(\"add\"===t.op)return f.newDocument=t.value,f;if(\"replace\"===t.op)return f.newDocument=t.value,f.removed=e,f;if(\"move\"===t.op||\"copy\"===t.op)return f.newDocument=h(e,t.from),\"move\"===t.op&&(f.removed=e),f;if(\"test\"===t.op){if(f.test=a(e,t.value),!1===f.test)throw new o.JsonPatchError(\"Test operation failed\",\"TEST_OPERATION_FAILED\",u,t,e);return f.newDocument=e,f}if(\"remove\"===t.op)return f.removed=e,f.newDocument=null,f;if(\"_get\"===t.op)return t.value=e,f;if(r)throw new o.JsonPatchError(\"Operation `op` property is not one of operations defined in RFC-6902\",\"OPERATION_OP_INVALID\",u,t,e);return f}n||(e=i._deepClone(e));var l=(t.path||\"\").split(\"/\"),v=e,E=1,_=l.length,O=void 0,w=void 0,A=void 0;for(A=\"function\"==typeof r?r:d;;){if(w=l[E],c&&\"__proto__\"==w)throw new TypeError(\"JSON-Patch: modifying `__proto__` prop is banned for security reasons, if this was on purpose, please set `banPrototypeModifications` flag false and pass it to this function. More info in fast-json-patch README\");if(r&&void 0===O&&(void 0===v[w]?O=l.slice(0,E).join(\"/\"):E==_-1&&(O=t.path),void 0!==O&&A(t,0,e,O)),E++,Array.isArray(v)){if(\"-\"===w)w=v.length;else{if(r&&!i.isInteger(w))throw new o.JsonPatchError(\"Expected an unsigned base-10 integer value, making the new referenced value the array element with the zero-based index\",\"OPERATION_PATH_ILLEGAL_ARRAY_INDEX\",u,t,e);i.isInteger(w)&&(w=~~w)}if(E>=_){if(r&&\"add\"===t.op&&w>v.length)throw new o.JsonPatchError(\"The specified index MUST NOT be greater than the number of elements in the array\",\"OPERATION_VALUE_OUT_OF_BOUNDS\",u,t,e);if(!1===(f=s[t.op].call(t,v,w,e)).test)throw new o.JsonPatchError(\"Test operation failed\",\"TEST_OPERATION_FAILED\",u,t,e);return f}}else if(w&&-1!=w.indexOf(\"~\")&&(w=i.unescapePathComponent(w)),E>=_){if(!1===(f=p[t.op].call(t,v,w,e)).test)throw new o.JsonPatchError(\"Test operation failed\",\"TEST_OPERATION_FAILED\",u,t,e);return f}v=v[w]}}function u(e,t,r,n,a){if(void 0===n&&(n=!0),void 0===a&&(a=!0),r&&!Array.isArray(t))throw new o.JsonPatchError(\"Patch sequence must be an array\",\"SEQUENCE_NOT_AN_ARRAY\");n||(e=i._deepClone(e));for(var p=new Array(t.length),s=0,h=t.length;s<h;s++)p[s]=c(e,t[s],r,!0,a,s),e=p[s].newDocument;return p.newDocument=e,p}function f(e,t,r){var n=c(e,t);if(!1===n.test)throw new o.JsonPatchError(\"Test operation failed\",\"TEST_OPERATION_FAILED\",r,t,e);return n.newDocument}function d(e,t,r,n){if(\"object\"!=typeof e||null===e||Array.isArray(e))throw new o.JsonPatchError(\"Operation is not an object\",\"OPERATION_NOT_AN_OBJECT\",t,e,r);if(!p[e.op])throw new o.JsonPatchError(\"Operation `op` property is not one of operations defined in RFC-6902\",\"OPERATION_OP_INVALID\",t,e,r);if(\"string\"!=typeof e.path)throw new o.JsonPatchError(\"Operation `path` property is not a string\",\"OPERATION_PATH_INVALID\",t,e,r);if(0!==e.path.indexOf(\"/\")&&e.path.length>0)throw new o.JsonPatchError('Operation `path` property must start with \"/\"',\"OPERATION_PATH_INVALID\",t,e,r);if((\"move\"===e.op||\"copy\"===e.op)&&\"string\"!=typeof e.from)throw new o.JsonPatchError(\"Operation `from` property is not present (applicable in `move` and `copy` operations)\",\"OPERATION_FROM_REQUIRED\",t,e,r);if((\"add\"===e.op||\"replace\"===e.op||\"test\"===e.op)&&void 0===e.value)throw new o.JsonPatchError(\"Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)\",\"OPERATION_VALUE_REQUIRED\",t,e,r);if((\"add\"===e.op||\"replace\"===e.op||\"test\"===e.op)&&i.hasUndefined(e.value))throw new o.JsonPatchError(\"Operation `value` property is not present (applicable in `add`, `replace` and `test` operations)\",\"OPERATION_VALUE_CANNOT_CONTAIN_UNDEFINED\",t,e,r);if(r)if(\"add\"==e.op){var a=e.path.split(\"/\").length,s=n.split(\"/\").length;if(a!==s+1&&a!==s)throw new o.JsonPatchError(\"Cannot perform an `add` operation at the desired path\",\"OPERATION_PATH_CANNOT_ADD\",t,e,r)}else if(\"replace\"===e.op||\"remove\"===e.op||\"_get\"===e.op){if(e.path!==n)throw new o.JsonPatchError(\"Cannot perform the operation at a path that does not exist\",\"OPERATION_PATH_UNRESOLVABLE\",t,e,r)}else if(\"move\"===e.op||\"copy\"===e.op){var h=l([{op:\"_get\",path:e.from,value:void 0}],r);if(h&&\"OPERATION_PATH_UNRESOLVABLE\"===h.name)throw new o.JsonPatchError(\"Cannot perform the operation from a path that does not exist\",\"OPERATION_FROM_UNRESOLVABLE\",t,e,r)}}function l(e,t,r){try{if(!Array.isArray(e))throw new o.JsonPatchError(\"Patch sequence must be an array\",\"SEQUENCE_NOT_AN_ARRAY\");if(t)u(i._deepClone(t),i._deepClone(e),r||!0);else{r=r||d;for(var n=0;n<e.length;n++)r(e[n],n,t,void 0)}}catch(e){if(e instanceof o.JsonPatchError)return e;throw e}}o.getValueByPointer=h,o.applyOperation=c,o.applyPatch=u,o.applyReducer=f,o.validator=d,o.validate=l,o.default={JsonPatchError:o.JsonPatchError,deepClone:o.deepClone,getValueByPointer:h,applyOperation:c,applyPatch:u,applyReducer:f,validator:d,validate:l}},\n \"0c8122087b\": function _(r,t,e,n,f){var i=Array.isArray,o=Object.keys,u=Object.prototype.hasOwnProperty;t.exports=function r(t,e){if(t===e)return!0;if(t&&e&&\"object\"==typeof t&&\"object\"==typeof e){var n,f,a,c=i(t),g=i(e);if(c&&g){if((f=t.length)!=e.length)return!1;for(n=f;0!=n--;)if(!r(t[n],e[n]))return!1;return!0}if(c!=g)return!1;var p=t instanceof Date,s=e instanceof Date;if(p!=s)return!1;if(p&&s)return t.getTime()==e.getTime();var y=t instanceof RegExp,l=e instanceof RegExp;if(y!=l)return!1;if(y&&l)return t.toString()==e.toString();var h=o(t);if((f=h.length)!==o(e).length)return!1;for(n=f;0!=n--;)if(!u.call(e,h[n]))return!1;for(n=f;0!=n--;)if(!r(t[a=h[n]],e[a]))return!1;return!0}return t!=t&&e!=e}},\n \"0eae77d68f\": function _(e,i,t,n,d){n();const s=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"4c755983eb\"),o=window.Jupyter;class a extends l.PanelHTMLBoxView{constructor(){super(...arguments),this.rendered=!1}render(){super.render(),this._render().then((()=>{this.rendered=!0,this.invalidate_layout(),this.notify_finished()}))}has_finished(){return this.rendered&&super.has_finished()}async _render(){const{spec:e,state:i}=this.model.bundle;let t;if(null!=o&&null!=o.notebook?t=o.notebook.kernel.widget_manager:null!=window.PyViz.widget_manager&&(t=window.PyViz.widget_manager),t)if(null==this.ipyview){const n=(await t.set_state(i)).find((i=>i.model_id==e.model_id));if(null!=n){const e=await t.create_view(n,{el:this.el});if(this.ipyview=e,e.children_views)for(const i of e.children_views.views)await i;this.el.appendChild(e.el),e.trigger(\"displayed\",e)}}else this.el.appendChild(this.ipyview.el);else console.log(\"Panel IPyWidget model could not find a WidgetManager\")}}t.IPyWidgetView=a,a.__name__=\"IPyWidgetView\";class r extends s.HTMLBox{constructor(e){super(e)}static init_IPyWidget(){this.prototype.default_view=a,this.define((({Any:e})=>({bundle:[e,{}]})))}}t.IPyWidget=r,r.__name__=\"IPyWidget\",r.__module__=\"panel.models.ipywidget\",r.init_IPyWidget()},\n \"0d30bea0c8\": function _(e,t,r,s,n){s();const i=e(\"tslib\"),o=e(\"@bokehjs/core/kinds\"),d=e(\"@bokehjs/models/widgets/markup\"),l=i.__importDefault(e(\"18bba7b7e1\")),a=e(\"4c755983eb\");class h extends a.PanelMarkupView{connect_signals(){super.connect_signals();const{depth:e,hover_preview:t,theme:r}=this.model.properties;this.on_change([e,t,r],(()=>this.render()))}render(){super.render();const e=this.model.text.replace(/(\\r\\n|\\n|\\r)/gm,\"\");let t;try{t=window.JSON.parse(e)}catch(e){return void(this.markup_el.innerHTML=\"<b>Invalid JSON:</b> \"+e.toString())}const r={hoverPreviewEnabled:this.model.hover_preview,theme:this.model.theme},s=null==this.model.depth?1/0:this.model.depth,n=new l.default(t,s,r).render();let i=\"border-radius: 5px; padding: 10px;\";\"dark\"==this.model.theme?n.style.cssText=\"background-color: rgb(30, 30, 30);\"+i:n.style.cssText=i,this.markup_el.append(n)}}r.JSONView=h,h.__name__=\"JSONView\",r.JSONTheme=o.Enum(\"dark\",\"light\");class p extends d.Markup{constructor(e){super(e)}static init_JSON(){this.prototype.default_view=h,this.define((({Boolean:e,Int:t,Nullable:s})=>({depth:[s(t),1],hover_preview:[e,!1],theme:[r.JSONTheme,\"dark\"]})))}}r.JSON=p,p.__name__=\"JSON\",p.__module__=\"panel.models.markup\",p.init_JSON()},\n \"18bba7b7e1\": function _(t,e,r,n,o){function i(t){return null===t?\"null\":typeof t}function s(t){return!!t&&\"object\"==typeof t}function a(t){if(void 0===t)return\"\";if(null===t)return\"Object\";if(\"object\"==typeof t&&!t.constructor)return\"Object\";var e=/function ([^(]*)/.exec(t.constructor.toString());return e&&e.length>1?e[1]:\"\"}function f(t,e,r){return\"null\"===t||\"undefined\"===t?t:(\"string\"!==t&&\"stringifiable\"!==t||(r='\"'+r.replace(/\"/g,'\\\\\"')+'\"'),\"function\"===t?e.toString().replace(/[\\r\\n]/g,\"\").replace(/\\{.*\\}/,\"\")+\"{…}\":r)}function m(t){var e=\"\";return s(t)?(e=a(t),Array.isArray(t)&&(e+=\"[\"+t.length+\"]\")):e=f(i(t),t,t),e}function l(t){return\"json-formatter-\"+t}function d(t,e,r){var n=document.createElement(t);return e&&n.classList.add(l(e)),void 0!==r&&(r instanceof Node?n.appendChild(r):n.appendChild(document.createTextNode(String(r)))),n}n(),function(t){if(\"undefined\"!=typeof window){var e=document.createElement(\"style\");e.setAttribute(\"media\",\"screen\"),e.innerHTML=t,document.head.appendChild(e)}}('.json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-row,\\n.json-formatter-row a,\\n.json-formatter-row a:hover {\\n color: black;\\n text-decoration: none;\\n}\\n.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \"No properties\";\\n}\\n.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \"[]\";\\n}\\n.json-formatter-row .json-formatter-string,\\n.json-formatter-row .json-formatter-stringifiable {\\n color: green;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-row .json-formatter-number {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-boolean {\\n color: red;\\n}\\n.json-formatter-row .json-formatter-null {\\n color: #855A00;\\n}\\n.json-formatter-row .json-formatter-undefined {\\n color: #ca0b69;\\n}\\n.json-formatter-row .json-formatter-function {\\n color: #FF20ED;\\n}\\n.json-formatter-row .json-formatter-date {\\n background-color: rgba(0, 0, 0, 0.05);\\n}\\n.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: blue;\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-bracket {\\n color: blue;\\n}\\n.json-formatter-row .json-formatter-key {\\n color: #00008B;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \"â–º\";\\n}\\n.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n.json-formatter-dark.json-formatter-row {\\n font-family: monospace;\\n}\\n.json-formatter-dark.json-formatter-row,\\n.json-formatter-dark.json-formatter-row a,\\n.json-formatter-dark.json-formatter-row a:hover {\\n color: white;\\n text-decoration: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-row {\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty {\\n opacity: 0.5;\\n margin-left: 1rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty:after {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-object:after {\\n content: \"No properties\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-children.json-formatter-empty.json-formatter-array:after {\\n content: \"[]\";\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-string,\\n.json-formatter-dark.json-formatter-row .json-formatter-stringifiable {\\n color: #31F031;\\n white-space: pre;\\n word-wrap: break-word;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-number {\\n color: #66C2FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-boolean {\\n color: #EC4242;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-null {\\n color: #EEC97D;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-undefined {\\n color: #ef8fbe;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-function {\\n color: #FD48CB;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-date {\\n background-color: rgba(255, 255, 255, 0.05);\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-url {\\n text-decoration: underline;\\n color: #027BFF;\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-bracket {\\n color: #9494FF;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-key {\\n color: #23A0DB;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler-link {\\n cursor: pointer;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler {\\n line-height: 1.2rem;\\n font-size: 0.7rem;\\n vertical-align: middle;\\n opacity: 0.6;\\n cursor: pointer;\\n padding-right: 0.2rem;\\n}\\n.json-formatter-dark.json-formatter-row .json-formatter-toggler:after {\\n display: inline-block;\\n transition: transform 100ms ease-in;\\n content: \"â–º\";\\n}\\n.json-formatter-dark.json-formatter-row > a > .json-formatter-preview-text {\\n opacity: 0;\\n transition: opacity 0.15s ease-in;\\n font-style: italic;\\n}\\n.json-formatter-dark.json-formatter-row:hover > a > .json-formatter-preview-text {\\n opacity: 0.6;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-toggler-link .json-formatter-toggler:after {\\n transform: rotate(90deg);\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > .json-formatter-children:after {\\n display: inline-block;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open > a > .json-formatter-preview-text {\\n display: none;\\n}\\n.json-formatter-dark.json-formatter-row.json-formatter-open.json-formatter-empty:after {\\n display: block;\\n}\\n');var c=/(^\\d{1,4}[\\.|\\\\/|-]\\d{1,2}[\\.|\\\\/|-]\\d{1,4})(\\s*(?:0?[1-9]:[0-5]|1(?=[012])\\d:[0-5])\\d\\s*[ap]m)?$/,p=/\\d{2}:\\d{2}:\\d{2} GMT-\\d{4}/,j=/\\d{4}-\\d{2}-\\d{2}T\\d{2}:\\d{2}:\\d{2}.\\d{3}Z/,h=window.requestAnimationFrame||function(t){return t(),0},u={hoverPreviewEnabled:!1,hoverPreviewArrayCount:100,hoverPreviewFieldCount:5,animateOpen:!0,animateClose:!0,theme:null,useToJSON:!0,sortPropertiesBy:null},g=function(){function t(t,e,r,n){void 0===e&&(e=1),void 0===r&&(r=u),this.json=t,this.open=e,this.config=r,this.key=n,this._isOpen=null,void 0===this.config.hoverPreviewEnabled&&(this.config.hoverPreviewEnabled=u.hoverPreviewEnabled),void 0===this.config.hoverPreviewArrayCount&&(this.config.hoverPreviewArrayCount=u.hoverPreviewArrayCount),void 0===this.config.hoverPreviewFieldCount&&(this.config.hoverPreviewFieldCount=u.hoverPreviewFieldCount),void 0===this.config.useToJSON&&(this.config.useToJSON=u.useToJSON),\"\"===this.key&&(this.key='\"\"')}return Object.defineProperty(t.prototype,\"isOpen\",{get:function(){return null!==this._isOpen?this._isOpen:this.open>0},set:function(t){this._isOpen=t},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isDate\",{get:function(){return this.json instanceof Date||\"string\"===this.type&&(c.test(this.json)||j.test(this.json)||p.test(this.json))},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isUrl\",{get:function(){return\"string\"===this.type&&0===this.json.indexOf(\"http\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isArray\",{get:function(){return Array.isArray(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isObject\",{get:function(){return s(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isEmptyObject\",{get:function(){return!this.keys.length&&!this.isArray},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"isEmpty\",{get:function(){return this.isEmptyObject||this.keys&&!this.keys.length&&this.isArray},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"useToJSON\",{get:function(){return this.config.useToJSON&&\"stringifiable\"===this.type},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"hasKey\",{get:function(){return void 0!==this.key},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"constructorName\",{get:function(){return a(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"type\",{get:function(){return this.config.useToJSON&&this.json&&this.json.toJSON?\"stringifiable\":i(this.json)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"keys\",{get:function(){if(this.isObject){var t=Object.keys(this.json);return!this.isArray&&this.config.sortPropertiesBy?t.sort(this.config.sortPropertiesBy):t}return[]},enumerable:!0,configurable:!0}),t.prototype.toggleOpen=function(){this.isOpen=!this.isOpen,this.element&&(this.isOpen?this.appendChildren(this.config.animateOpen):this.removeChildren(this.config.animateClose),this.element.classList.toggle(l(\"open\")))},t.prototype.openAtDepth=function(t){void 0===t&&(t=1),t<0||(this.open=t,this.isOpen=0!==t,this.element&&(this.removeChildren(!1),0===t?this.element.classList.remove(l(\"open\")):(this.appendChildren(this.config.animateOpen),this.element.classList.add(l(\"open\")))))},t.prototype.getInlinepreview=function(){var t=this;if(this.isArray)return this.json.length>this.config.hoverPreviewArrayCount?\"Array[\"+this.json.length+\"]\":\"[\"+this.json.map(m).join(\", \")+\"]\";var e=this.keys,r=e.slice(0,this.config.hoverPreviewFieldCount).map((function(e){return e+\":\"+m(t.json[e])})),n=e.length>=this.config.hoverPreviewFieldCount?\"…\":\"\";return\"{\"+r.join(\", \")+n+\"}\"},t.prototype.render=function(){this.element=d(\"div\",\"row\");var t=this.isObject?d(\"a\",\"toggler-link\"):d(\"span\");if(this.isObject&&!this.useToJSON&&t.appendChild(d(\"span\",\"toggler\")),this.hasKey&&t.appendChild(d(\"span\",\"key\",this.key+\":\")),this.isObject&&!this.useToJSON){var e=d(\"span\",\"value\"),r=d(\"span\"),n=d(\"span\",\"constructor-name\",this.constructorName);if(r.appendChild(n),this.isArray){var o=d(\"span\");o.appendChild(d(\"span\",\"bracket\",\"[\")),o.appendChild(d(\"span\",\"number\",this.json.length)),o.appendChild(d(\"span\",\"bracket\",\"]\")),r.appendChild(o)}e.appendChild(r),t.appendChild(e)}else{(e=this.isUrl?d(\"a\"):d(\"span\")).classList.add(l(this.type)),this.isDate&&e.classList.add(l(\"date\")),this.isUrl&&(e.classList.add(l(\"url\")),e.setAttribute(\"href\",this.json));var i=f(this.type,this.json,this.useToJSON?this.json.toJSON():this.json);e.appendChild(document.createTextNode(i)),t.appendChild(e)}if(this.isObject&&this.config.hoverPreviewEnabled){var s=d(\"span\",\"preview-text\");s.appendChild(document.createTextNode(this.getInlinepreview())),t.appendChild(s)}var a=d(\"div\",\"children\");return this.isObject&&a.classList.add(l(\"object\")),this.isArray&&a.classList.add(l(\"array\")),this.isEmpty&&a.classList.add(l(\"empty\")),this.config&&this.config.theme&&this.element.classList.add(l(this.config.theme)),this.isOpen&&this.element.classList.add(l(\"open\")),this.element.appendChild(t),this.element.appendChild(a),this.isObject&&this.isOpen&&this.appendChildren(),this.isObject&&!this.useToJSON&&t.addEventListener(\"click\",this.toggleOpen.bind(this)),this.element},t.prototype.appendChildren=function(e){var r=this;void 0===e&&(e=!1);var n=this.element.querySelector(\"div.\"+l(\"children\"));if(n&&!this.isEmpty)if(e){var o=0,i=function(){var e=r.keys[o],s=new t(r.json[e],r.open-1,r.config,e);n.appendChild(s.render()),(o+=1)<r.keys.length&&(o>10?i():h(i))};h(i)}else this.keys.forEach((function(e){var o=new t(r.json[e],r.open-1,r.config,e);n.appendChild(o.render())}))},t.prototype.removeChildren=function(t){void 0===t&&(t=!1);var e=this.element.querySelector(\"div.\"+l(\"children\"));if(t){var r=0,n=function(){e&&e.children.length&&(e.removeChild(e.children[0]),(r+=1)>10?n():h(n))};h(n)}else e&&(e.innerHTML=\"\")},t}();r.default=g},\n \"1767172ffa\": function _(e,t,i,s,l){s();const n=e(\"tslib\"),o=e(\"@bokehjs/models/widgets/input_widget\"),a=n.__importStar(e(\"@bokehjs/styles/buttons.css\")),h=a,d=e(\"@bokehjs/core/dom\"),_=e(\"@bokehjs/core/enums\");class r extends o.InputWidgetView{constructor(){super(...arguments),this._downloadable=!1,this._embed=!1,this._prev_href=\"\",this._prev_download=\"\"}initialize(){super.initialize(),this.model.data&&this.model.filename&&(this._embed=!0)}connect_signals(){super.connect_signals(),this.connect(this.model.properties.button_type.change,(()=>this._update_button_style())),this.connect(this.model.properties.filename.change,(()=>this._update_download())),this.connect(this.model.properties._transfers.change,(()=>this._handle_click())),this.connect(this.model.properties.label.change,(()=>this._update_label())),this.connect(this.model.properties.disabled.change,(()=>this.set_disabled()))}render(){super.render(),this.group_el.style.display=\"flex\",this.group_el.style.alignItems=\"stretch\",this.anchor_el=document.createElement(\"a\"),this._update_button_style(),this._update_label(),this.model.disabled?(this.anchor_el.setAttribute(\"disabled\",\"\"),this._downloadable=!1):(this.anchor_el.removeAttribute(\"disabled\"),this._prev_download&&(this.anchor_el.download=this._prev_download),this._prev_href&&(this.anchor_el.href=this._prev_href),this.anchor_el.download&&this.anchor_el.download&&(this._downloadable=!0)),this._embed?this._make_link_downloadable():(this._click_listener=this._increment_clicks.bind(this),this.anchor_el.addEventListener(\"click\",this._click_listener)),this.group_el.appendChild(this.anchor_el),this.input_el=d.input({type:\"bk_btn, bk_btn_type\"}),this.input_el.addEventListener(\"change\",(()=>this.change_input()))}styles(){return[...super.styles(),a.default]}_increment_clicks(){this.model.clicks=this.model.clicks+1}_handle_click(){!this.model.auto&&this._downloadable||(this._make_link_downloadable(),!this._embed&&this.model.auto&&(this.anchor_el.removeEventListener(\"click\",this._click_listener),this.anchor_el.click(),this.anchor_el.removeAttribute(\"href\"),this.anchor_el.removeAttribute(\"download\"),this.anchor_el.addEventListener(\"click\",this._click_listener)),this._prev_href=this.anchor_el.getAttribute(\"href\"),this._prev_download=this.anchor_el.getAttribute(\"download\"))}_make_link_downloadable(){this._update_href(),this._update_download(),this.anchor_el.download&&this.anchor_el.href&&(this._downloadable=!0)}_update_href(){if(this.model.data){const e=function(e){const t=atob(e.split(\",\")[1]),i=e.split(\",\")[0].split(\":\")[1].split(\";\")[0],s=new ArrayBuffer(t.length),l=new Uint8Array(s);for(let e=0;e<t.length;e++)l[e]=t.charCodeAt(e);return new Blob([s],{type:i})}(this.model.data);this.anchor_el.href=URL.createObjectURL(e)}}_update_download(){this.model.filename&&(this.anchor_el.download=this.model.filename)}_update_label(){this.anchor_el.textContent=this.model.label}_update_button_style(){const e=h[`btn_${this.model.button_type}`];if(this.anchor_el.hasAttribute(\"class\")){const t=this.anchor_el.classList.item(1);t&&this.anchor_el.classList.replace(t,e)}else this.anchor_el.classList.add(h.btn),this.anchor_el.classList.add(e)}set_disabled(){this.model.disabled?this.anchor_el.setAttribute(\"disabled\",\"\"):this.anchor_el.removeAttribute(\"disabled\")}}i.FileDownloadView=r,r.__name__=\"FileDownloadView\";class c extends o.InputWidget{constructor(e){super(e)}static init_FileDownload(){this.prototype.default_view=r,this.define((({Boolean:e,Int:t,Nullable:i,String:s})=>({auto:[e,!1],clicks:[t,0],data:[i(s),null],label:[s,\"Download\"],filename:[i(s),null],button_type:[_.ButtonType,\"default\"],_transfers:[t,0]}))),this.override({title:\"\"})}}i.FileDownload=c,c.__name__=\"FileDownload\",c.__module__=\"panel.models.widgets\",c.init_FileDownload()},\n \"7b859fb3cf\": function _(e,t,i,a,n){a();const s=e(\"@bokehjs/models/widgets/markup\"),r=e(\"4c755983eb\");class l extends r.PanelMarkupView{render(){super.render(),this.markup_el.innerHTML=this.model.text,window.renderMathInElement&&window.renderMathInElement(this.el,{delimiters:[{left:\"$$\",right:\"$$\",display:!0},{left:\"\\\\[\",right:\"\\\\]\",display:!0},{left:\"$\",right:\"$\",display:!1},{left:\"\\\\(\",right:\"\\\\)\",display:!1}]})}}i.KaTeXView=l,l.__name__=\"KaTeXView\";class d extends s.Markup{constructor(e){super(e)}static init_KaTeX(){this.prototype.default_view=l}}i.KaTeX=d,d.__name__=\"KaTeX\",d.__module__=\"panel.models.katex\",d.init_KaTeX()},\n \"642aa56b24\": function _(o,e,t,i,a){i();const h=o(\"@bokehjs/core/view\"),n=o(\"@bokehjs/model\");class s extends h.View{initialize(){super.initialize(),this.model.pathname=window.location.pathname,this.model.search=window.location.search,this.model.hash=window.location.hash,this.model.href=window.location.href,this.model.hostname=window.location.hostname,this.model.protocol=window.location.protocol,this.model.port=window.location.port}connect_signals(){super.connect_signals(),this.connect(this.model.properties.pathname.change,(()=>this.update(\"pathname\"))),this.connect(this.model.properties.search.change,(()=>this.update(\"search\"))),this.connect(this.model.properties.hash.change,(()=>this.update(\"hash\"))),this.connect(this.model.properties.reload.change,(()=>this.update(\"reload\")))}update(o){this.model.reload&&\"reload\"!==o?(\"pathname\"==o&&(window.location.pathname=this.model.pathname),\"search\"==o&&(window.location.search=this.model.search),\"hash\"==o&&(window.location.hash=this.model.hash)):(window.history.pushState({},\"\",`${this.model.pathname}${this.model.search}${this.model.hash}`),this.model.href=window.location.href,\"reload\"===o&&window.location.reload())}}t.LocationView=s,s.__name__=\"LocationView\";class c extends n.Model{constructor(o){super(o)}static init_Location(){this.prototype.default_view=s,this.define((({Boolean:o,String:e})=>({href:[e,\"\"],hostname:[e,\"\"],pathname:[e,\"\"],protocol:[e,\"\"],port:[e,\"\"],search:[e,\"\"],hash:[e,\"\"],reload:[o,!1]})))}}t.Location=c,c.__name__=\"Location\",c.__module__=\"panel.models.location\",c.init_Location()},\n \"0c21036737\": function _(e,t,a,i,s){i();const h=e(\"@bokehjs/models/widgets/markup\"),_=e(\"4c755983eb\");class n extends _.PanelMarkupView{initialize(){super.initialize(),this._hub=window.MathJax.Hub,this._hub.Config({tex2jax:{inlineMath:[[\"$\",\"$\"],[\"\\\\(\",\"\\\\)\"]]}})}render(){super.render(),this._hub&&(this.markup_el.innerHTML=this.model.text,this._hub.Queue([\"Typeset\",this._hub,this.markup_el]))}}a.MathJaxView=n,n.__name__=\"MathJaxView\";class u extends h.Markup{constructor(e){super(e)}static init_MathJax(){this.prototype.default_view=n}}a.MathJax=u,u.__name__=\"MathJax\",u.__module__=\"panel.models.mathjax\",u.init_MathJax()},\n \"84a772681d\": function _(e,t,i,s,n){s();const o=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"@bokehjs/core/dom\"),r=e(\"@bokehjs/models/sources/column_data_source\"),c=e(\"4c755983eb\"),h=[\"perspective-viewer-material\",\"perspective-viewer-material-dark\",\"perspective-viewer-material-dense\",\"perspective-viewer-material-dense-dark\",\"perspective-viewer-vaporwave\"];function p(e){return!h.includes(e)}function a(e){return\"perspective-viewer-\"+e}class u extends c.PanelHTMLBoxView{constructor(){super(...arguments),this._updating=!1,this._config_listener=null,this._event_listener=null,this._loaded=!1}connect_signals(){super.connect_signals(),this.connect(this.model.source.properties.data.change,(()=>this.setData())),this.connect(this.model.properties.toggle_config.change,(()=>{this.perspective_element.toggleConfig(),this.fix_layout()})),this.connect(this.model.properties.columns.change,(()=>{this.updateAttribute(\"columns\",this.model.columns,!0)})),this.connect(this.model.properties.computed_columns.change,(()=>{this.updateAttribute(\"computed-columns\",this.model.computed_columns,!0)})),this.connect(this.model.properties.column_pivots.change,(()=>{this.updateAttribute(\"column-pivots\",this.model.column_pivots,!0)})),this.connect(this.model.properties.row_pivots.change,(()=>{this.updateAttribute(\"row-pivots\",this.model.row_pivots,!0)})),this.connect(this.model.properties.aggregates.change,(()=>{this.updateAttribute(\"aggregates\",this.model.aggregates,!0)})),this.connect(this.model.properties.filters.change,(()=>{this.updateAttribute(\"filters\",this.model.filters,!0)})),this.connect(this.model.properties.sort.change,(()=>{this.updateAttribute(\"sort\",this.model.sort,!0)})),this.connect(this.model.properties.plugin.change,(()=>{this.updateAttribute(\"plugin\",this.model.plugin,!1)})),this.connect(this.model.properties.selectable.change,(()=>{this.updateAttribute(\"selectable\",this.model.selectable,!0)})),this.connect(this.model.properties.editable.change,(()=>{this.updateAttribute(\"editable\",this.model.editable,!0)})),this.connect(this.model.properties.theme.change,(()=>this.updateTheme())),null!=this.model.document&&(this._event_listener=e=>this.on_event(e),this.model.document.on_change(this._event_listener))}disconnect_signals(){null!=this._config_listener&&this.perspective_element.removeEventListener(\"perspective-config-update\",this._config_listener),this._config_listener=null,null!=this.model.document&&null!=this._event_listener&&this.model.document.remove_on_change(this._event_listener),this._event_listener=null,super.disconnect_signals()}render(){super.render(),this.worker=window.perspective.worker(),this.table=this.worker.table(this.model.schema),this.table.update(this.data);const e=l.div({class:\"pnx-perspective-viewer\",style:{zIndex:0}});c.set_size(e,this.model),e.innerHTML=this.getInnerHTML(),this.perspective_element=e.children[0],c.set_size(this.perspective_element,this.model),this.el.appendChild(e),this.perspective_element.load(this.table).then((()=>{this.update_config(),this._config_listener=()=>this.sync_config(),this.model.toggle_config&&this.perspective_element.toggleConfig(),this.perspective_element.addEventListener(\"perspective-config-update\",this._config_listener),this._loaded=!0}))}fix_layout(){this.update_layout(),this.compute_layout(),this.invalidate_layout()}sync_config(){if(this._updating)return;const e=this.perspective_element.save(),t={};for(const i in e){const s=i.replace(\"-\",\"_\"),n=e[i];void 0===n||\"plugin\"==s&&\"debug\"===n||(t[s]=n)}this._updating=!0,this.model.setv(t),this._updating=!1}update_config(){if(this._updating)return;const e=this.perspective_element.save();for(const t in e){const i=t.replace(\"-\",\"_\");let s=this.model.property(i).get_value();e[t]!==s&&(this._updating=!0,\"plugin\"!==i&&(s=JSON.stringify(s)),this.perspective_element.setAttribute(t,s),this._updating=!1)}}on_event(e){null!=(e=e.hint)&&null!=e.column_source&&e.column_source.id==this.model.source.id&&(void 0!==e.rollover?this.stream(e.data,e.rollover):void 0!==e.patches&&this.patch(e.patches))}get data(){const e={};for(const t of this.model.source.columns())e[t]=this.model.source.get_array(t);return e}stream(e,t){this._loaded&&(null==t?this.table.update(e):this.table.replace(this.data))}patch(e){this.table.replace(this.data)}getInnerHTML(){let e=\"<perspective-viewer style='height:100%;width:100%;'\";var t,i;return e+=(t=\"class\",null==(i=a(this.model.theme))?\"\":(\"string\"!=typeof i&&(i=JSON.stringify(i)),\" \"+t+\"='\"+i+\"'\")),e+=\"></perspective-viewer>\",e}setData(){this._loaded&&this.table.load(this.data)}updateAttribute(e,t,i){if(this._updating)return;t!=this.perspective_element.save()[e]&&(i&&(t=JSON.stringify(t)),this._updating=!0,this.perspective_element.setAttribute(e,t),this._updating=!1)}updateTheme(){let e=this.perspective_element.getAttribute(\"class\"),t=this.toNewClassAttribute(e,this.model.theme);this.perspective_element.setAttribute(\"class\",t)}toNewClassAttribute(e,t){let i=[];return null!=e&&(i=e.split(\" \").filter(p)),i.push(a(t)),i.join(\" \")}}i.PerspectiveView=u,u.__name__=\"PerspectiveView\";class d extends o.HTMLBox{constructor(e){super(e)}static init_Perspective(){this.prototype.default_view=u,this.define((({Any:e,Array:t,Boolean:i,Ref:s,Nullable:n,String:o})=>({aggregates:[e],column_pivots:[n(t(o))],columns:[t(o)],computed_columns:[n(t(o))],editable:[n(i)],filters:[n(t(e))],plugin:[o],plugin_config:[e],row_pivots:[n(t(o))],selectable:[n(i)],schema:[e,{}],toggle_config:[i,!0],sort:[n(t(t(o)))],source:[s(r.ColumnDataSource)],theme:[o]})))}}i.Perspective=d,d.__name__=\"Perspective\",d.__module__=\"panel.models.perspective\",d.init_Perspective()},\n \"2e8044c920\": function _(e,t,i,s,o){s();const l=e(\"@bokehjs/core/kinds\"),n=e(\"@bokehjs/core/dom\"),a=e(\"@bokehjs/models/widgets/widget\");function r(e){e.forEach((e=>e.style.borderStyle=\"inset\"))}function d(e){e.forEach((e=>e.style.borderStyle=\"outset\"))}class h extends a.WidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.value.change,(()=>this.render())),this.connect(this.model.properties.loop_policy.change,(()=>this.set_loop_state(this.model.loop_policy))),this.connect(this.model.properties.disabled.change,(()=>this.toggle_disable())),this.connect(this.model.properties.show_loop_controls.change,(()=>{this.model.show_loop_controls&&this.loop_state.parentNode!=this.groupEl?this.groupEl.appendChild(this.loop_state):this.model.show_loop_controls||this.loop_state.parentNode!=this.groupEl||this.groupEl.removeChild(this.loop_state)}))}toggle_disable(){this.sliderEl.disabled=this.model.disabled;for(const e of this.buttonEl.children){e.disabled=this.model.disabled}for(const e of this.loop_state.children)if(\"input\"==e.tagName){e.disabled=this.model.disabled}}get_height(){return 250}render(){if(null!=this.sliderEl)return this.sliderEl.min=String(this.model.start),this.sliderEl.max=String(this.model.end),void(this.sliderEl.value=String(this.model.value));super.render(),this.groupEl=n.div(),this.groupEl.style.display=\"flex\",this.groupEl.style.flexDirection=\"column\",this.groupEl.style.alignItems=\"center\",this.sliderEl=document.createElement(\"input\"),this.sliderEl.style.width=\"100%\",this.sliderEl.setAttribute(\"type\",\"range\"),this.sliderEl.value=String(this.model.value),this.sliderEl.min=String(this.model.start),this.sliderEl.max=String(this.model.end),this.sliderEl.onchange=e=>this.set_frame(parseInt(e.target.value));const e=n.div();this.buttonEl=e,e.style.cssText=\"margin: 0 auto; display: flex; padding: 5px; align-items: stretch; width: 100%;\";const t=\"text-align: center; min-width: 20px; flex-grow: 1; margin: 2px\",i=\"text-align: center; min-width: 40px; flex-grow: 2; margin: 2px\",s=document.createElement(\"button\");s.style.cssText=t,s.appendChild(document.createTextNode(\"–\")),s.onclick=()=>this.slower(),e.appendChild(s);const o=document.createElement(\"button\");o.style.cssText=i,o.appendChild(document.createTextNode(\"âšâ—€â—€\")),o.onclick=()=>this.first_frame(),e.appendChild(o);const l=document.createElement(\"button\");l.style.cssText=i,l.appendChild(document.createTextNode(\"âšâ—€\")),l.onclick=()=>this.previous_frame(),e.appendChild(l);const a=document.createElement(\"button\");a.style.cssText=i,a.appendChild(document.createTextNode(\"â—€\")),a.onclick=()=>this.reverse_animation(),e.appendChild(a);const h=document.createElement(\"button\");h.style.cssText=i,h.appendChild(document.createTextNode(\"âšâš\")),h.onclick=()=>this.pause_animation(),e.appendChild(h);const c=document.createElement(\"button\");c.style.cssText=i,c.appendChild(document.createTextNode(\"â–¶\")),c.onclick=()=>this.play_animation(),e.appendChild(c);const p=document.createElement(\"button\");p.style.cssText=i,p.appendChild(document.createTextNode(\"â–¶âš\")),p.onclick=()=>this.next_frame(),e.appendChild(p);const m=document.createElement(\"button\");m.style.cssText=i,m.appendChild(document.createTextNode(\"▶▶âš\")),m.onclick=()=>this.last_frame(),e.appendChild(m);const _=document.createElement(\"button\");_.style.cssText=t,_.appendChild(document.createTextNode(\"+\")),_.onclick=()=>this.faster(),e.appendChild(_),this._toggle_reverse=()=>{d([h,c]),r([a])},this._toogle_pause=()=>{d([a,c]),r([h])},this._toggle_play=()=>{d([a,h]),r([c])},this.loop_state=document.createElement(\"form\"),this.loop_state.style.cssText=\"margin: 0 auto; display: table\";const u=document.createElement(\"input\");u.type=\"radio\",u.value=\"once\",u.name=\"state\";const g=document.createElement(\"label\");g.innerHTML=\"Once\",g.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\";const f=document.createElement(\"input\");f.setAttribute(\"type\",\"radio\"),f.setAttribute(\"value\",\"loop\"),f.setAttribute(\"name\",\"state\");const v=document.createElement(\"label\");v.innerHTML=\"Loop\",v.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\";const y=document.createElement(\"input\");y.setAttribute(\"type\",\"radio\"),y.setAttribute(\"value\",\"reflect\"),y.setAttribute(\"name\",\"state\");const x=document.createElement(\"label\");x.innerHTML=\"Reflect\",x.style.cssText=\"padding: 0 10px 0 5px; user-select:none;\",\"once\"==this.model.loop_policy?u.checked=!0:\"loop\"==this.model.loop_policy?f.checked=!0:y.checked=!0,this.loop_state.appendChild(u),this.loop_state.appendChild(g),this.loop_state.appendChild(f),this.loop_state.appendChild(v),this.loop_state.appendChild(y),this.loop_state.appendChild(x),this.groupEl.appendChild(this.sliderEl),this.groupEl.appendChild(e),this.model.show_loop_controls&&this.groupEl.appendChild(this.loop_state),this.toggle_disable(),this.el.appendChild(this.groupEl)}set_frame(e){this.model.value!=e&&(this.model.value=e),this.sliderEl.value!=String(e)&&(this.sliderEl.value=String(e))}get_loop_state(){for(var e=this.loop_state.state,t=0;t<e.length;t++){var i=e[t];if(i.checked)return i.value}return\"once\"}set_loop_state(e){for(var t=this.loop_state.state,i=0;i<t.length;i++){var s=t[i];s.value==e&&(s.checked=!0)}}next_frame(){this.set_frame(Math.min(this.model.end,this.model.value+this.model.step))}previous_frame(){this.set_frame(Math.max(this.model.start,this.model.value-this.model.step))}first_frame(){this.set_frame(this.model.start)}last_frame(){this.set_frame(this.model.end)}slower(){this.model.interval=Math.round(this.model.interval/.7),this.model.direction>0?this.play_animation():this.model.direction<0&&this.reverse_animation()}faster(){this.model.interval=Math.round(.7*this.model.interval),this.model.direction>0?this.play_animation():this.model.direction<0&&this.reverse_animation()}anim_step_forward(){if(this.model.value<this.model.end)this.next_frame();else{var e=this.get_loop_state();\"loop\"==e?this.first_frame():\"reflect\"==e?(this.last_frame(),this.reverse_animation()):(this.pause_animation(),this.last_frame())}}anim_step_reverse(){if(this.model.value>this.model.start)this.previous_frame();else{var e=this.get_loop_state();\"loop\"==e?this.last_frame():\"reflect\"==e?(this.first_frame(),this.play_animation()):(this.pause_animation(),this.first_frame())}}pause_animation(){this._toogle_pause(),this.model.direction=0,this.timer&&(clearInterval(this.timer),this.timer=null)}play_animation(){this.pause_animation(),this._toggle_play(),this.model.direction=1,this.timer||(this.timer=setInterval((()=>this.anim_step_forward()),this.model.interval))}reverse_animation(){this.pause_animation(),this._toggle_reverse(),this.model.direction=-1,this.timer||(this.timer=setInterval((()=>this.anim_step_reverse()),this.model.interval))}}i.PlayerView=h,h.__name__=\"PlayerView\",i.LoopPolicy=l.Enum(\"once\",\"loop\",\"reflect\");class c extends a.Widget{constructor(e){super(e)}static init_Player(){this.prototype.default_view=h,this.define((({Boolean:e,Int:t})=>({direction:[t,0],interval:[t,500],start:[t,0],end:[t,10],step:[t,1],loop_policy:[i.LoopPolicy,\"once\"],value:[t,0],show_loop_controls:[e,!0]}))),this.override({width:400})}}i.Player=c,c.__name__=\"Player\",c.__module__=\"panel.models.widgets\",c.init_Player()},\n \"c23bb1717d\": function _(t,e,o,r,l){r();const i=t(\"@bokehjs/core/dom\"),s=t(\"@bokehjs/core/util/object\"),a=t(\"@bokehjs/core/util/eq\"),n=t(\"@bokehjs/models/layouts/html_box\"),p=t(\"@bokehjs/models/sources/column_data_source\"),_=t(\"99a25e6992\"),h=t(\"990b5dd5c7\"),u=t(\"4c755983eb\"),d=(t,e,o)=>{let r=Array.isArray(e)?[]:{};if(\"click\"===o||\"hover\"===o||\"selected\"===o){const o=[];if(null==e)return null;const l=t.data;for(let t=0;t<e.points.length;t++){const r=e.points[t];let i={};for(let t in r){const e=r[t];!r.hasOwnProperty(t)||Array.isArray(e)||h.isPlainObject(e)||(i[t]=e)}null!=r&&(r.hasOwnProperty(\"curveNumber\")&&r.hasOwnProperty(\"pointNumber\")&&l[r.curveNumber].hasOwnProperty(\"customdata\")&&(i.customdata=l[r.curveNumber].customdata[r.pointNumber]),r.hasOwnProperty(\"pointNumbers\")&&(i.pointNumbers=r.pointNumbers)),o[t]=i}r.points=o}else if(\"relayout\"===o||\"restyle\"===o)for(let t in e)e.hasOwnProperty(t)&&(r[t]=e[t]);return e.hasOwnProperty(\"range\")&&(r.range=e.range),e.hasOwnProperty(\"lassoPoints\")&&(r.lassoPoints=e.lassoPoints),r};class c extends u.PanelHTMLBoxView{constructor(){super(...arguments),this._settingViewport=!1,this._plotInitialized=!1,this._reacting=!1,this._relayouting=!1,this._end_relayouting=_.debounce((()=>{this._relayouting=!1}),2e3,!1)}connect_signals(){super.connect_signals();const{data:t,data_sources:e,layout:o,relayout:r,restyle:l}=this.model.properties;this.on_change([t,e,o],(()=>{const t=this.model._render_count;setTimeout((()=>{this.model._render_count===t&&(this.model._render_count+=1)}),250)})),this.on_change([r],(()=>{null!=this.model.relayout&&(window.Plotly.relayout(this._layout_wrapper,this.model.relayout),this.model.relayout=null)})),this.on_change([l],(()=>{null!=this.model.restyle&&(window.Plotly.restyle(this._layout_wrapper,this.model.restyle.data,this.model.restyle.traces),this.model.restyle=null)})),this.connect(this.model.properties.viewport_update_policy.change,(()=>{this._updateSetViewportFunction()})),this.connect(this.model.properties.viewport_update_throttle.change,(()=>{this._updateSetViewportFunction()})),this.connect(this.model.properties._render_count.change,(()=>this.plot())),this.connect(this.model.properties.viewport.change,(()=>this._updateViewportFromProperty()))}render(){super.render(),this._layout_wrapper=i.div({style:\"height: 100%; width: 100%\"}),this.el.appendChild(this._layout_wrapper),window.Plotly&&this.plot()}_trace_data(){const t=[];for(let e=0;e<this.model.data.length;e++)t.push(this._get_trace(e,!1));return t}_layout_data(){const t=h.deepCopy(this.model.layout);if(this._relayouting){const{layout:e}=this._layout_wrapper;Object.keys(e).reduce(((e,o)=>{\"axis\"===o.slice(1,5)&&\"range\"in e&&(t[o].range=e.range)}),{})}return t}_install_callbacks(){this._layout_wrapper.on(\"plotly_relayout\",(t=>{!0!==t._update_from_property&&(this.model.relayout_data=d(this._layout_wrapper,t,\"relayout\"),this._updateViewportProperty(),this._end_relayouting())})),this._layout_wrapper.on(\"plotly_relayouting\",(()=>{\"mouseup\"!==this.model.viewport_update_policy&&(this._relayouting=!0,this._updateViewportProperty())})),this._layout_wrapper.on(\"plotly_restyle\",(t=>{this.model.restyle_data=d(this._layout_wrapper,t,\"restyle\"),this._updateViewportProperty()})),this._layout_wrapper.on(\"plotly_click\",(t=>{this.model.click_data=d(this._layout_wrapper,t,\"click\")})),this._layout_wrapper.on(\"plotly_hover\",(t=>{this.model.hover_data=d(this._layout_wrapper,t,\"hover\")})),this._layout_wrapper.on(\"plotly_selected\",(t=>{this.model.selected_data=d(this._layout_wrapper,t,\"selected\")})),this._layout_wrapper.on(\"plotly_clickannotation\",(t=>{delete t.event,delete t.fullAnnotation,this.model.clickannotation_data=t})),this._layout_wrapper.on(\"plotly_deselect\",(()=>{this.model.selected_data=null})),this._layout_wrapper.on(\"plotly_unhover\",(()=>{this.model.hover_data=null}))}plot(){if(!window.Plotly)return;const t=this._trace_data(),e=this._layout_data();this._reacting=!0,window.Plotly.react(this._layout_wrapper,t,e,this.model.config).then((()=>{var t,e;this._updateSetViewportFunction(),this._updateViewportProperty(),this._plotInitialized||this._install_callbacks(),this._plotInitialized=!0,this._reacting=!1,t=this._layout_wrapper,(e=window.getComputedStyle(t).display)&&\"none\"!==e&&window.Plotly.Plots.resize(this._layout_wrapper)}))}_get_trace(t,e){const o=s.clone(this.model.data[t]),r=this.model.data_sources[t];for(const t of r.columns()){let l=r.get_array(t)[0];if(null!=l.shape&&l.shape.length>1){const t=[],e=l.shape;for(let o=0;o<e[0];o++)t.push(l.slice(o*e[1],(o+1)*e[1]));l=t}let i=t.split(\".\"),s=i[i.length-1],a=o;for(let t of i.slice(0,-1))a=a[t];e&&1==i.length?a[s]=[l]:a[s]=l}return o}_updateViewportFromProperty(){if(!window.Plotly||this._settingViewport||this._reacting||!this.model.viewport)return;const t=this._layout_wrapper._fullLayout;Object.keys(this.model.viewport).reduce(((e,o)=>{if(a.isEqual(h.get(t,o),e))return!0;{let t=h.deepCopy(this.model.viewport);return t._update_from_property=!0,window.Plotly.relayout(this.el,t),!1}}),{})}_updateViewportProperty(){const t=this._layout_wrapper._fullLayout;let e={};for(let o in t){if(!t.hasOwnProperty(o))continue;let r=o.slice(0,5);\"xaxis\"!==r&&\"yaxis\"!==r||(e[o+\".range\"]=h.deepCopy(t[o].range))}a.isEqual(e,this.model.viewport)||this._setViewport(e)}_updateSetViewportFunction(){\"continuous\"===this.model.viewport_update_policy||\"mouseup\"===this.model.viewport_update_policy?this._setViewport=t=>{this._settingViewport||(this._settingViewport=!0,this.model.viewport=t,this._settingViewport=!1)}:this._setViewport=h.throttle((t=>{this._settingViewport||(this._settingViewport=!0,this.model.viewport=t,this._settingViewport=!1)}),this.model.viewport_update_throttle)}}o.PlotlyPlotView=c,c.__name__=\"PlotlyPlotView\";class y extends n.HTMLBox{constructor(t){super(t)}static init_PlotlyPlot(){this.prototype.default_view=c,this.define((({Array:t,Any:e,Ref:o,String:r,Nullable:l,Number:i})=>({data:[t(e),[]],layout:[e,{}],config:[e,{}],data_sources:[t(o(p.ColumnDataSource)),[]],relayout:[l(e),{}],restyle:[l(e),{}],relayout_data:[e,{}],restyle_data:[t(e),[]],click_data:[e,{}],hover_data:[e,{}],clickannotation_data:[e,{}],selected_data:[e,{}],viewport:[e,{}],viewport_update_policy:[r,\"mouseup\"],viewport_update_throttle:[i,200],_render_count:[i,0]})))}}o.PlotlyPlot=y,y.__name__=\"PlotlyPlot\",y.__module__=\"panel.models.plotly\",y.init_PlotlyPlot()},\n \"99a25e6992\": function _(n,l,u,t,e){function o(n,l,u){var t,e,o,a,r;function i(){var c=Date.now()-a;c<l&&c>=0?t=setTimeout(i,l-c):(t=null,u||(r=n.apply(o,e),o=e=null))}null==l&&(l=100);var c=function(){o=this,e=arguments,a=Date.now();var c=u&&!t;return t||(t=setTimeout(i,l)),c&&(r=n.apply(o,e),o=e=null),r};return c.clear=function(){t&&(clearTimeout(t),t=null)},c.flush=function(){t&&(r=n.apply(o,e),o=e=null,clearTimeout(t),t=null)},c}o.debounce=o,l.exports=o},\n \"990b5dd5c7\": function _(t,n,r,e,o){e();r.get=(t,n,r)=>{const e=r=>String.prototype.split.call(n,r).filter(Boolean).reduce(((t,n)=>null!=t?t[n]:t),t),o=e(/[,[\\]]+?/)||e(/[,[\\].]+?/);return void 0===o||o===t?r:o},r.throttle=function(t,n){var r=0;return function(){var e=Number(new Date);e-r>=n&&(t(),r=e)}},r.deepCopy=function t(n){var r;if(null==n||\"object\"!=typeof n)return n;if(n instanceof Array){r=[];for(var e=0,o=n.length;e<o;e++)r[e]=t(n[e]);return r}if(n instanceof Object){const r={};for(const e in n){const o=e;n.hasOwnProperty(o)&&(r[o]=t(n[o]))}return r}throw new Error(\"Unable to copy obj! Its type isn't supported.\")},r.isPlainObject=function(t){return\"[object Object]\"===Object.prototype.toString.call(t)}},\n \"9f787650b9\": function _(e,s,t,i,o){i();const r=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),h=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"4c755983eb\");class n extends h.HTMLBoxView{connect_signals(){super.connect_signals();const e=()=>{this.render(),this.root.compute_layout()};this.connect(this.model.properties.height.change,e),this.connect(this.model.properties.width.change,e),this.connect(this.model.properties.height_policy.change,e),this.connect(this.model.properties.width_policy.change,e),this.connect(this.model.properties.sizing_mode.change,e),this.connect(this.model.properties.active.change,(()=>this.setCSS())),this.connect(this.model.properties.bar_color.change,(()=>this.setCSS())),this.connect(this.model.properties.css_classes.change,(()=>this.setCSS())),this.connect(this.model.properties.value.change,(()=>this.setValue())),this.connect(this.model.properties.max.change,(()=>this.setMax()))}render(){super.render();const e=Object.assign(Object.assign({},this.model.style),{display:\"inline-block\"});this.progressEl=document.createElement(\"progress\"),this.setValue(),this.setMax(),l.set_size(this.progressEl,this.model),this.setCSS();for(const s in e)this.progressEl.style.setProperty(s,e[s]);this.el.appendChild(this.progressEl)}setCSS(){let e=this.model.css_classes.join(\" \")+\" \"+this.model.bar_color;this.model.active&&(e+=\" active\"),this.progressEl.className=e}setValue(){null!=this.model.value&&(this.progressEl.value=this.model.value)}setMax(){null!=this.model.max&&(this.progressEl.max=this.model.max)}_update_layout(){let e=void 0!==this._prev_sizing_mode&&this._prev_sizing_mode!==this.model.sizing_mode;this._prev_sizing_mode=this.model.sizing_mode,this.layout=new l.CachedVariadicBox(this.el,this.model.sizing_mode,e),this.layout.set_sizing(this.box_sizing())}}t.ProgressView=n,n.__name__=\"ProgressView\";class c extends h.HTMLBox{constructor(e){super(e)}static init_Progress(){this.prototype.default_view=n,this.define({active:[r.Boolean,!0],bar_color:[r.String,\"primary\"],style:[r.Any,{}],max:[r.Number,100],value:[r.Any,null]})}}t.Progress=c,c.__name__=\"Progress\",c.__module__=\"panel.models.widgets\",c.init_Progress()},\n \"d536149aaa\": function _(e,t,n,s,i){s();const o=e(\"6f11f2ef27\"),l=e(\"4c02a9b43f\"),r=e(\"b3f51db71c\"),c=e(\"@bokehjs/core/build_views\"),a=e(\"@bokehjs/core/util/types\"),h=e(\"@bokehjs/models/layouts/html_box\"),d=e(\"@bokehjs/core/dom\"),_=e(\"@bokehjs/core/util/color\"),u=e(\"f1971f81bf\"),m=e(\"3329d4aa5b\"),p=e(\"2839081043\"),f=e(\"4c755983eb\");function v(e,t,n){const s={};for(const e of n)s[`{${e}}`]=\"(.*)\";const i=[];let o=\"^\"+(e.replace(/[-\\/\\\\^$*+?.()|[\\]]/g,\"\\\\$&\")+\"$\");let l,r,c;for(const t in s)if(r=e.indexOf(t),r>-1){for(o=o.replace(t,s[t]),c={index:r,token:t},l=0;l<i.length&&i[l].index<r;l++);l<i.length?i.splice(l,0,c):i.push(c)}o=o.replace(/\\{[^{}]+\\}/g,\".*\");var a=new RegExp(o).exec(t);let h=null;if(a)for(h={},l=0;l<i.length;l++)h[i[l].token.slice(1,-1)]=a[l+1];return h}class g extends f.PanelHTMLBoxView{constructor(){super(...arguments),this._parent=null,this._changing=!1,this._event_listeners={},this._mutation_observers=[],this._script_fns={},this._state={}}initialize(){super.initialize(),this.html=p.htmlDecode(this.model.html)||this.model.html}_recursive_connect(e,t,n){for(const s in e.properties){let i;i=n.length?`${n}.${s}`:s;const o=e[s];null!=o.properties&&this._recursive_connect(o,!0,i),this.connect(e.properties[s].change,(()=>{if(t)for(const t in this.model.children)if(this.model.children[t]==s){let n=e[s];return a.isArray(n)||(n=[n]),this._render_node(t,n),void this.invalidate_layout()}this._changing||(this._update(i),this.invalidate_layout())}))}}connect_signals(){super.connect_signals(),this.connect(this.model.properties.children.change,(async()=>{this.html=p.htmlDecode(this.model.html)||this.model.html,await this.rebuild(),this.invalidate_layout()})),this._recursive_connect(this.model.data,!0,\"\"),this.connect(this.model.properties.events.change,(()=>{this._remove_event_listeners(),this._setup_event_listeners()})),this.connect_scripts()}connect_scripts(){const e=this.model.data.id;for(let t in this.model.scripts){const n=this.model.scripts[t];let s,i=this.model.data;if(t.indexOf(\".\")>=0){const e=t.split(\".\");s=e[e.length-1];for(const t of e.slice(0,-1))i=i[t]}else s=t;for(const o of n){const n=p.htmlDecode(o)||o,l=this._render_script(n,e);this._script_fns[t]=l;const r=i.properties[s];null!=r&&this.connect(r.change,(()=>{this._changing||this.run_script(t)}))}}}run_script(e,t=!1){const n=this._script_fns[e];if(void 0===n)return void(t||console.log(`Script '${e}' could not be found.`));const s={get_records:(e,t)=>this.get_records(e,t)};for(const e in this._script_fns)s[e]=()=>this.run_script(e);return n(this.model,this.model.data,this._state,this,(e=>this.run_script(e)),s)}get_records(e,t=!0){return u.dict_to_records(this.model.data[e],t)}disconnect_signals(){super.disconnect_signals(),this._remove_event_listeners(),this._remove_mutation_observers(),this.run_script(\"remove\",!0)}get child_models(){const e=[];for(const t in this.model.children)for(const n of this.model.children[t])\"string\"!=typeof n&&e.push(n);return e}async build_child_views(){await c.build_views(this._child_views,this.child_models,{parent:null})}compute_layout(){this.root!=this?super.compute_layout():(this.update_position(),this.after_layout(),this.notify_finished())}after_layout(){for(const e of this.child_views)e.after_layout();this.run_script(\"after_layout\",!0),this._has_finished=!0}update_layout(){for(const e of this.child_views)this._align_view(e),e.compute_viewport(),e.update_layout(),e.compute_layout();this.root!=this&&this._update_layout()}_align_view(e){const{align:t}=e.model;let n,s;a.isArray(t)?[n,s]=t:n=s=t,\"center\"===n?(e.el.style.marginLeft=\"auto\",e.el.style.marginRight=\"auto\"):\"end\"===n&&(e.el.style.marginLeft=\"auto\"),\"center\"===s?(e.el.style.marginTop=\"auto\",e.el.style.marginBottom=\"auto\"):\"end\"===s&&(e.el.style.marginTop=\"auto\")}render(){d.empty(this.el);const{background:e}=this.model;this.el.style.backgroundColor=null!=e?_.color2css(e):\"\",d.classes(this.el).clear().add(...this.css_classes()),this._update(),this._render_children(),this._setup_mutation_observers(),this._setup_event_listeners(),this.run_script(\"render\",!0)}_send_event(e,t,n){let s=m.serializeEvent(n);s.type=t,this.model.trigger_event(new p.DOMEvent(e,s))}_render_child(e,t){const n=this._child_views.get(e);null==n?t.innerHTML=e:(n._parent=this,n.renderTo(t))}resize_layout(){null!=this._parent&&this._parent.resize_layout(),this.root!=this&&super.resize_layout()}invalidate_layout(){null!=this._parent&&this._parent.invalidate_layout(),this.root!=this&&super.invalidate_layout()}update_position(){if(this.root!=this)return void super.update_position();this.el.style.display=this.model.visible?\"block\":\"none\",f.set_size(this.el,this.model);let{margin:e}=this.model,t=null;if(null==e)this.el.style.margin=\"\";else{if(a.isNumber(e))t={top:e,right:e,bottom:e,left:e};else if(2==e.length){const[n,s]=e;t={top:n,right:s,bottom:n,left:s}}else{const[n,s,i,o]=e;t={top:n,right:s,bottom:i,left:o}}const{top:n,right:s,bottom:i,left:o}=t;this.el.style.padding=`${n}px ${s}px ${i}px ${o}px`}for(const e of this.child_views)e.update_position()}_render_node(e,t){const n=this.model.data.id;if(this.model.looped.indexOf(e)>-1)for(let s=0;s<t.length;s++){let i=document.getElementById(`${e}-${s}-${n}`);null!=i?this._render_child(t[s],i):console.warn(`DOM node '${e}-${s}-${n}' could not be found. Cannot render children.`)}else{let s=document.getElementById(`${e}-${n}`);if(null==s)return void console.warn(`DOM node '${e}-${n}' could not be found. Cannot render children.`);for(const e of t)this._render_child(e,s)}}_render_children(){for(const e in this.model.children){let t=this.model.children[e];\"string\"==typeof t&&(t=this.model.data[t],a.isArray(t)||(t=[t])),this._render_node(e,t)}}_render_html(e,t={}){let n=e,s=\"\";const i=[];for(const e in this.model.callbacks)for(const t of this.model.callbacks[e]){const[o,l]=t;let r;if(n=n.replace(\"${\"+l,\"$--{\"+l),l.startsWith(\"script(\")){const e=l.replace(\"('\",\"_\").replace(\"')\",\"\").replace('(\"',\"_\").replace('\")',\"\").replace(\"-\",\"_\"),t=e.replace(\"script_\",\"\");n=n.replace(l,e),r=`\\n const ${e} = (event) => {\\n view._state.event = event\\n view.run_script(\"${t}\")\\n delete view._state.event\\n }\\n `}else r=`\\n const ${l} = (event) => {\\n view._send_event(\"${e}\", \"${o}\", event)\\n }\\n `;i.indexOf(l)>-1||(i.push(l),s+=r)}return n=n.replaceAll(\"${model.\",\"$-{model.\").replaceAll(\"${\",\"${data.\").replaceAll(\"$-{model.\",\"${model.\").replaceAll(\"$--{\",\"${\"),new Function(\"view, model, data, state, html, useCallback\",s+\"return html`\"+n+\"`;\")(this,this.model,this.model.data,t,r.html,l.useCallback)}_render_script(e,t){const n=[];for(const s of this.model.nodes){if(s in this.model.children&&\"string\"!=typeof this.model.children[s])continue;const i=s.replace(\"-\",\"_\");if(-1===e.indexOf(i))continue;const o=`\\n const ${i} = document.getElementById('${s}-${t}')\\n if (${i} == null) {\\n console.warn(\"DOM node '${s}' could not be found. Cannot execute callback.\")\\n return\\n }\\n `;n.push(o)}return n.push(\"\\n if (state.event !== undefined) {\\n const event = state.event\\n }\\n \"),n.push(e),new Function(\"model, data, state, view, script, self\",n.join(\"\\n\"))}_remove_mutation_observers(){for(const e of this._mutation_observers)e.disconnect();this._mutation_observers=[]}_setup_mutation_observers(){const e=this.model.data.id;for(const t in this.model.attrs){const n=document.getElementById(`${t}-${e}`);if(null==n){console.warn(`DOM node '${t}-${e}' could not be found. Cannot set up MutationObserver.`);continue}const s=new MutationObserver((()=>{this._update_model(n,t)}));s.observe(n,{attributes:!0}),this._mutation_observers.push(s)}}_remove_event_listeners(){const e=this.model.data.id;for(const t in this._event_listeners){const n=document.getElementById(`${t}-${e}`);if(null!=n)for(const e in this._event_listeners[t]){const s=this._event_listeners[t][e];n.removeEventListener(e,s)}}this._event_listeners={}}_setup_event_listeners(){const e=this.model.data.id;for(const t in this.model.events){const n=document.getElementById(`${t}-${e}`);if(null==n){console.warn(`DOM node '${t}-${e}' could not be found. Cannot subscribe to DOM events.`);continue}const s=this.model.events[t];for(const e in s){const i=i=>{this._send_event(t,e,i),t in this.model.attrs&&s[e]&&this._update_model(n,t)};n.addEventListener(e,i),t in this._event_listeners||(this._event_listeners[t]={}),this._event_listeners[t][e]=i}}}_update(e=null){if(null==e||this.html.indexOf(`\\${${e}}`)>-1){const e=this._render_html(this.html);try{this._changing=!0,o.render(e,this.el)}finally{this._changing=!1}}}_update_model(e,t){if(this._changing)return;const n={};for(const s of this.model.attrs[t]){const[i,o,l]=s;let r=\"children\"===i?e.innerHTML:e[i];if(1===o.length&&`{${o[0]}}`===l)n[o[0]]=r;else if(\"string\"==typeof r)if(r=v(l,r,o),null==r)console.warn(`Could not resolve parameters in ${t} element ${i} attribute value ${r}.`);else for(const e in r)void 0===r[e]?console.warn(`Could not resolve ${e} in ${t} element ${i} attribute value ${r}.`):n[e]=r[e]}try{this._changing=!0,this.model.data.setv(function(e){const t={};for(const n in e){let s=e[n];\"string\"!=typeof s?s=s:\"\"===s||\"NaN\"!==s&&isNaN(Number(s))?\"false\"!==s&&\"true\"!==s||(s=\"true\"===s):s=Number(s),t[n]=s}return t}(n))}catch(e){console.log(\"Could not serialize\",n)}finally{this._changing=!1}}}n.ReactiveHTMLView=g,g.__name__=\"ReactiveHTMLView\";class $ extends h.HTMLBox{constructor(e){super(e)}static init_ReactiveHTML(){this.prototype.default_view=g,this.define((({Array:e,Any:t,String:n})=>({attrs:[t,{}],callbacks:[t,{}],children:[t,{}],data:[t],events:[t,{}],html:[n,\"\"],looped:[e(n),[]],nodes:[e(n),[]],scripts:[t,{}]})))}}n.ReactiveHTML=$,$.__name__=\"ReactiveHTML\",$.__module__=\"panel.models.reactive_html\",$.init_ReactiveHTML()},\n \"3b85956787\": function _(e,t,s,i,n){i();const l=e(\"tslib\"),o=e(\"@bokehjs/core/dom\"),c=e(\"@bokehjs/core/util/types\"),r=e(\"@bokehjs/models/widgets/input_widget\"),h=l.__importStar(e(\"@bokehjs/styles/widgets/inputs.css\"));class d extends r.InputWidgetView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.value.change,(()=>this.render_selection())),this.connect(this.model.properties.options.change,(()=>this.render())),this.connect(this.model.properties.name.change,(()=>this.render())),this.connect(this.model.properties.title.change,(()=>this.render())),this.connect(this.model.properties.size.change,(()=>this.render())),this.connect(this.model.properties.disabled.change,(()=>this.render()))}render(){super.render();const e=this.model.options.map((e=>{let t,s;return c.isString(e)?t=s=e:[t,s]=e,o.option({value:t},s)}));this.select_el=o.select({multiple:!1,class:h.input,name:this.model.name,disabled:this.model.disabled},e),this.select_el.style.backgroundImage=\"none\",this.select_el.addEventListener(\"change\",(()=>this.change_input())),this.group_el.appendChild(this.select_el),this.render_selection()}render_selection(){const e=this.model.value;for(const t of this.el.querySelectorAll(\"option\"))t.value===e&&(t.selected=!0);this.select_el.size=this.model.size}change_input(){const e=null!=this.el.querySelector(\"select:focus\");let t=null;for(const e of this.el.querySelectorAll(\"option\"))if(e.selected){t=e.value;break}this.model.value=t,super.change_input(),e&&this.select_el.focus()}}s.SingleSelectView=d,d.__name__=\"SingleSelectView\";class a extends r.InputWidget{constructor(e){super(e)}static init_SingleSelect(){this.prototype.default_view=d,this.define((({Any:e,Array:t,Int:s,String:i})=>({value:[i,\"\"],options:[t(e),[]],size:[s,4]})))}}s.SingleSelect=a,a.__name__=\"SingleSelect\",a.__module__=\"panel.models.widgets\",a.init_SingleSelect()},\n \"aaa48703af\": function _(t,e,i,o,n){o();const s=t(\"tslib\").__importStar(t(\"@bokehjs/core/properties\")),r=t(\"@bokehjs/models/layouts/html_box\"),h=\"Click to START the speech recognition.\",{webkitSpeechRecognition:a}=window,{webkitSpeechGrammarList:l}=window;class c extends r.HTMLBoxView{initialize(){var t,e;super.initialize(),this.recognition=new a,this.recognition.lang=this.model.lang,this.recognition.continuous=this.model.continuous,this.recognition.interimResults=this.model.interim_results,this.recognition.maxAlternatives=this.model.max_alternatives,this.recognition.serviceURI=this.model.service_uri,this.setGrammars(),this.recognition.onresult=t=>{this.model.results=function(t){const e=[];for(let o of t){let t=[],n={is_final:o.isFinal,alternatives:t};for(let e=0;e<o.length;e++){let n={confidence:(i=o[e].confidence,Math.round(100*(i+Number.EPSILON))/100),transcript:o[e].transcript};t.push(n)}n.alternatives=t,e.push(n)}var i;return e}(t.results)},this.recognition.onerror=t=>{console.log(\"SpeechToText Error\"),console.log(t)},this.recognition.onnomatch=t=>{console.log(\"SpeechToText No Match\"),console.log(t)},this.recognition.onaudiostart=()=>this.model.audio_started=!0,this.recognition.onaudioend=()=>this.model.audio_started=!1,this.recognition.onsoundstart=()=>this.model.sound_started=!0,this.recognition.onsoundend=()=>this.model.sound_started=!1,this.recognition.onspeechstart=()=>this.model.speech_started=!0,this.recognition.onspeechend=()=>this.model.speech_started=!1,this.recognition.onstart=()=>{this.buttonEl.onclick=()=>{this.recognition.stop()},this.buttonEl.innerHTML=this.iconStarted(),this.buttonEl.setAttribute(\"title\",\"Click to STOP the speech recognition.\"),this.model.started=!0},this.recognition.onend=()=>{this.buttonEl.onclick=()=>{this.recognition.start()},this.buttonEl.innerHTML=this.iconNotStarted(),this.buttonEl.setAttribute(\"title\",h),this.model.started=!1},this.buttonEl=(t=`<button class=\"bk bk-btn bk-btn-${this.model.button_type}\" type=\"button\" title=\"${h}\"></button>`,e=document.createElement(\"template\"),t=t.trim(),e.innerHTML=t,e.content.firstChild),this.buttonEl.innerHTML=this.iconNotStarted(),this.buttonEl.onclick=()=>this.recognition.start()}iconStarted(){return\"\"!==this.model.button_started?this.model.button_started:'<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"22px\" style=\"vertical-align: middle;\" fill=\"currentColor\" class=\"bi bi-mic\" viewBox=\"0 0 16 16\">\\n <path fill-rule=\"evenodd\" d=\"M3.5 6.5A.5.5 0 0 1 4 7v1a4 4 0 0 0 8 0V7a.5.5 0 0 1 1 0v1a5 5 0 0 1-4.5 4.975V15h3a.5.5 0 0 1 0 1h-7a.5.5 0 0 1 0-1h3v-2.025A5 5 0 0 1 3 8V7a.5.5 0 0 1 .5-.5z\"/>\\n <path fill-rule=\"evenodd\" d=\"M10 8V3a2 2 0 1 0-4 0v5a2 2 0 1 0 4 0zM8 0a3 3 0 0 0-3 3v5a3 3 0 0 0 6 0V3a3 3 0 0 0-3-3z\"/>\\n</svg>'}iconNotStarted(){return\"\"!==this.model.button_not_started?this.model.button_not_started:'<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"22px\" style=\"vertical-align: middle;\" fill=\"currentColor\" class=\"bi bi-mic-mute\" viewBox=\"0 0 16 16\">\\n<path fill-rule=\"evenodd\" d=\"M12.734 9.613A4.995 4.995 0 0 0 13 8V7a.5.5 0 0 0-1 0v1c0 .274-.027.54-.08.799l.814.814zm-2.522 1.72A4 4 0 0 1 4 8V7a.5.5 0 0 0-1 0v1a5 5 0 0 0 4.5 4.975V15h-3a.5.5 0 0 0 0 1h7a.5.5 0 0 0 0-1h-3v-2.025a4.973 4.973 0 0 0 2.43-.923l-.718-.719zM11 7.88V3a3 3 0 0 0-5.842-.963l.845.845A2 2 0 0 1 10 3v3.879l1 1zM8.738 9.86l.748.748A3 3 0 0 1 5 8V6.121l1 1V8a2 2 0 0 0 2.738 1.86zm4.908 3.494l-12-12 .708-.708 12 12-.708.707z\"/>\\n</svg>'}setIcon(){this.model.started?this.buttonEl.innerHTML=this.iconStarted():this.buttonEl.innerHTML=this.iconNotStarted()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.start.change,(()=>{this.model.start=!1,this.recognition.start()})),this.connect(this.model.properties.stop.change,(()=>{this.model.stop=!1,this.recognition.stop()})),this.connect(this.model.properties.abort.change,(()=>{this.model.abort=!1,this.recognition.abort()})),this.connect(this.model.properties.grammars.change,(()=>this.setGrammars())),this.connect(this.model.properties.lang.change,(()=>this.recognition.lang=this.model.lang)),this.connect(this.model.properties.continuous.change,(()=>this.recognition.continuous=this.model.continuous)),this.connect(this.model.properties.interim_results.change,(()=>this.recognition.interimResults=this.model.interim_results)),this.connect(this.model.properties.max_alternatives.change,(()=>this.recognition.maxAlternatives=this.model.max_alternatives)),this.connect(this.model.properties.service_uri.change,(()=>this.recognition.serviceURI=this.model.service_uri)),this.connect(this.model.properties.button_type.change,(()=>this.buttonEl.className=`bk bk-btn bk-btn-${this.model.button_type}`)),this.connect(this.model.properties.button_hide.change,(()=>this.render()));const{button_not_started:t,button_started:e}=this.model.properties;this.on_change([t,e],(()=>this.setIcon()))}setGrammars(){this.recognition.grammars=function(t){if(t){var e=new l;for(let i of t)i.src?e.addFromString(i.src,i.weight):i.uri&&e.addFromURI(i.uri,i.weight);return e}return null}(this.model.grammars)}render(){super.render(),this.model.button_hide||this.el.appendChild(this.buttonEl)}}i.SpeechToTextView=c,c.__name__=\"SpeechToTextView\";class d extends r.HTMLBox{constructor(t){super(t)}static init_SpeechToText(){this.prototype.default_view=c,this.define({start:[s.Boolean,!1],stop:[s.Boolean,!1],abort:[s.Boolean,!1],grammars:[s.Array,[]],lang:[s.String,\"\"],continuous:[s.Boolean,!1],interim_results:[s.Boolean,!1],max_alternatives:[s.Number,1],service_uri:[s.String],started:[s.Boolean,!1],audio_started:[s.Boolean,!1],sound_started:[s.Boolean,!1],speech_started:[s.Boolean,!1],button_type:[s.String,\"light\"],button_hide:[s.Boolean,!1],button_not_started:[s.String,\"\"],button_started:[s.String,\"\"],results:[s.Array,[]]})}}i.SpeechToText=d,d.__name__=\"SpeechToText\",d.__module__=\"panel.models.speech_to_text\",d.init_SpeechToText()},\n \"bfa46a5f19\": function _(e,t,s,a,i){a();const o=e(\"@bokehjs/core/view\"),c=e(\"@bokehjs/core/util/array\"),n=e(\"@bokehjs/model\"),h=e(\"@bokehjs/protocol/receiver\");class _ extends o.View{renderTo(){}}s.StateView=_,_.__name__=\"StateView\";class r extends n.Model{constructor(e){super(e),this._receiver=new h.Receiver,this._cache={}}apply_state(e){this._receiver.consume(e.header),this._receiver.consume(e.metadata),this._receiver.consume(e.content),this._receiver.message&&this.document&&this.document.apply_json_patch(this._receiver.message.content)}_receive_json(e,t){const s=JSON.parse(e);this._cache[t]=s;let a=this.state;for(const e of this.values)a=a[e];a===t?this.apply_state(s):this._cache[a]&&this.apply_state(this._cache[a])}set_state(e,t){let s=c.copy(this.values);s[this.widgets[e.id]]=t;let a=this.state;for(const e of s)a=a[e];var i,o,n;this.values=s,this.json?this._cache[a]?this.apply_state(this._cache[a]):(i=a,o=e=>this._receive_json(e,a),(n=new XMLHttpRequest).overrideMimeType(\"application/json\"),n.open(\"GET\",i,!0),n.onreadystatechange=function(){4==n.readyState&&200==n.status&&o(n.responseText)},n.send(null)):this.apply_state(a)}static init_State(){this.prototype.default_view=_,this.define((({Any:e,Boolean:t})=>({json:[t,!1],state:[e,{}],widgets:[e,{}],values:[e,[]]})))}}s.State=r,r.__name__=\"State\",r.__module__=\"panel.models.state\",r.init_State()},\n \"91fe88c277\": function _(e,t,i,n,s){n();const r=e(\"@bokehjs/models/layouts/html_box\"),o=e(\"@bokehjs/core/dom\"),a=e(\"4c755983eb\");class l extends a.PanelHTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.output.change,this.write),this.connect(this.model.properties._clears.change,this.clear)}render(){super.render(),this.container=o.div({class:\"terminal-container\"}),a.set_size(this.container,this.model),this.term=this.getNewTerminal(),this.term.onData((e=>{this.handleOnData(e)})),this.webLinksAddon=this.getNewWebLinksAddon(),this.term.loadAddon(this.webLinksAddon),this.term.open(this.container),this.term.onRender((()=>{this._rendered||this.fit()})),this.write(),this.el.appendChild(this.container)}getNewTerminal(){const e=window;return e.Terminal?new e.Terminal(this.model.options):new e.xtermjs.Terminal(this.model.options)}getNewWebLinksAddon(){return new window.WebLinksAddon.WebLinksAddon}handleOnData(e){this.model.input===e?this.model._value_repeats+=1:this.model.input=e}write(){const e=this.model.output;if(null==e||!e.length)return;const t=e.replace(/\\r?\\n/g,\"\\r\\n\");this.term.write(t)}clear(){this.term.clear()}fit(){const e=this.layout.inner_bbox.width,t=this.layout.inner_bbox.height,i=this.term._core._renderService,n=i.dimensions.actualCellWidth,s=i.dimensions.actualCellHeight;if(0===n||0===s)return;const r=Math.max(2,Math.floor(e/n)),o=Math.max(1,Math.floor(t/s));this.term.rows===o&&this.term.cols===r||(i.clear(),this.term.resize(r,o)),this._rendered=!0}after_layout(){super.after_layout(),this.fit()}resize_layout(){super.resize_layout(),this.fit()}}i.TerminalView=l,l.__name__=\"TerminalView\";class h extends r.HTMLBox{constructor(e){super(e)}static init_Terminal(){this.prototype.default_view=l,this.define((({Any:e,Int:t,String:i})=>({options:[e,{}],output:[i],input:[i],_clears:[t,0],_value_repeats:[t,0]})))}}i.Terminal=h,h.__name__=\"Terminal\",h.__module__=\"panel.models.terminal\",h.init_Terminal()},\n \"33cd2c254e\": function _(e,s,i,t,n){t();const h=e(\"@bokehjs/models/layouts/html_box\");function o(e){var s=[];for(let t of e){var i={default:t.default,lang:t.lang,local_service:t.localService,name:t.name,voice_uri:t.voiceURI};s.push(i)}return s}class c extends h.HTMLBoxView{initialize(){super.initialize(),this.model.paused=speechSynthesis.paused,this.model.pending=speechSynthesis.pending,this.model.speaking=speechSynthesis.speaking,this._callback=window.setInterval((function(){!speechSynthesis.paused&&speechSynthesis.speaking&&window.speechSynthesis.resume()}),1e4);const e=()=>{\"undefined\"!=typeof speechSynthesis&&(this.voices=speechSynthesis.getVoices(),this.voices&&(this.model.voices=o(this.voices)))};e(),\"undefined\"!=typeof speechSynthesis&&void 0!==speechSynthesis.onvoiceschanged&&(speechSynthesis.onvoiceschanged=e)}remove(){null!=this._callback&&clearInterval(this._callback),speechSynthesis.cancel(),super.remove()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.speak.change,(()=>{this.speak()})),this.connect(this.model.properties.pause.change,(()=>{this.model.pause=!1,speechSynthesis.pause()})),this.connect(this.model.properties.resume.change,(()=>{this.model.resume=!1,speechSynthesis.resume()})),this.connect(this.model.properties.cancel.change,(()=>{this.model.cancel=!1,speechSynthesis.cancel()}))}speak(){let e=new SpeechSynthesisUtterance(this.model.speak.text);if(e.pitch=this.model.speak.pitch,e.volume=this.model.speak.volume,e.rate=this.model.speak.rate,this.model.voices)for(let s of this.voices)s.name===this.model.speak.voice&&(e.voice=s);e.onpause=()=>this.model.paused=!0,e.onstart=()=>{this.model.speaking=!0,this.model.paused=!1,this.model.pending=speechSynthesis.pending},e.onresume=()=>this.model.paused=!1,e.onend=()=>{this.model.speaking=!1,this.model.paused=!1,this.model.pending=speechSynthesis.pending},speechSynthesis.speak(e),this.model.paused=speechSynthesis.paused,this.model.pending=speechSynthesis.pending}render(){super.render(),this.model.voices||(this.model.voices=o(this.voices)),null!=this.model.speak&&this.model.speak.text&&this.speak()}}i.TextToSpeechView=c,c.__name__=\"TextToSpeechView\";class p extends h.HTMLBox{constructor(e){super(e)}static init_TextToSpeech(){this.prototype.default_view=c,this.define((({Any:e,Array:s,Boolean:i})=>({paused:[i,!1],pending:[i,!1],speaking:[i,!1],voices:[s(e),[]],cancel:[i,!1],pause:[i,!1],resume:[i,!1],speak:[e,{}]})))}}i.TextToSpeech=p,p.__name__=\"TextToSpeech\",p.__module__=\"panel.models.text_to_speech\",p.init_TextToSpeech()},\n \"ded3463d6c\": function _(t,e,i,l,o){l();const s=t(\"@bokehjs/models/layouts/html_box\"),h=t(\"@bokehjs/core/build_views\"),a=t(\"@bokehjs/models/plots\"),n=t(\"@bokehjs/models/glyphs\"),d=t(\"@bokehjs/core/dom\"),r=t(\"@bokehjs/models/sources/column_data_source\"),c=t(\"@bokehjs/models/formatters\");class p extends s.HTMLBoxView{initialize(){super.initialize(),this.containerDiv=d.div({style:\"height:100%; width:100%;\"}),this.titleDiv=d.div({style:\"font-size: 1em; word-wrap: break-word;\"}),this.valueDiv=d.div({style:\"font-size: 2em\"}),this.value2Div=d.div({style:\"font-size: 1em; opacity: 0.5; display: inline\"}),this.changeDiv=d.div({style:\"font-size: 1em; opacity: 0.5; display: inline\"}),this.textDiv=d.div({},this.titleDiv,this.valueDiv,d.div({},this.changeDiv,this.value2Div)),this.updateTitle(),this.updateValue(),this.updateValue2(),this.updateValueChange(),this.updateTextFontSize(),this.plotDiv=d.div({}),this.containerDiv=d.div({style:\"height:100%; width:100%\"},this.textDiv,this.plotDiv),this.updateLayout()}connect_signals(){super.connect_signals();const{pos_color:t,neg_color:e}=this.model.properties;this.on_change([t,e],(()=>this.updateValueChange()));const{plot_color:i,plot_type:l,width:o,height:s,sizing_mode:h}=this.model.properties;this.on_change([i,l,o,s,h],(()=>this.render())),this.connect(this.model.properties.title.change,(()=>this.updateTitle(!0))),this.connect(this.model.properties.value.change,(()=>this.updateValue(!0))),this.connect(this.model.properties.value_change.change,(()=>this.updateValue2(!0))),this.connect(this.model.properties.layout.change,(()=>this.updateLayout()))}async render(){super.render(),this.el.appendChild(this.containerDiv),await this.setPlot()}async setPlot(){this.plot=new a.Plot({background_fill_color:null,border_fill_color:null,outline_line_color:null,min_border:0,sizing_mode:\"stretch_both\",toolbar_location:null});var t=this.model.source;if(\"line\"===this.model.plot_type){var e=new n.Line({x:{field:this.model.plot_x},y:{field:this.model.plot_y},line_width:4,line_color:this.model.plot_color});this.plot.add_glyph(e,t)}else if(\"step\"===this.model.plot_type){var i=new n.Step({x:{field:this.model.plot_x},y:{field:this.model.plot_y},line_width:3,line_color:this.model.plot_color});this.plot.add_glyph(i,t)}else if(\"area\"===this.model.plot_type){var l=new n.VArea({x:{field:this.model.plot_x},y1:{field:this.model.plot_y},y2:0,fill_color:this.model.plot_color,fill_alpha:.5});this.plot.add_glyph(l,t);e=new n.Line({x:{field:this.model.plot_x},y:{field:this.model.plot_y},line_width:3,line_color:this.model.plot_color});this.plot.add_glyph(e,t)}else{var o=new n.VBar({x:{field:this.model.plot_x},top:{field:this.model.plot_y},width:.9,line_color:null,fill_color:this.model.plot_color});this.plot.add_glyph(o,t)}const s=await h.build_view(this.plot);this.plotDiv.innerHTML=\"\",s.renderTo(this.plotDiv)}after_layout(){super.after_layout(),this.updateTextFontSize()}updateTextFontSize(){this.updateTextFontSizeColumn()}updateTextFontSizeColumn(){let t=this.containerDiv.clientWidth,e=this.containerDiv.clientHeight;\"column\"===this.model.layout?e=Math.round(e/2):t=Math.round(t/2);const i=t/this.model.title.length*2,l=t/(2*this._value_format.length)*1.8,o=t/(this._value_change_format.length+1)*2,s=e/6,h=Math.min(i,l,o,s);this.textDiv.style.fontSize=Math.trunc(h)+\"px\",this.textDiv.style.lineHeight=\"1.3\"}updateTitle(t=!1){this.titleDiv.innerText=this.model.title,t&&this.updateTextFontSize()}updateValue(t=!1){this._value_format=this.model.formatter.doFormat([this.model.value],{loc:0})[0],this.valueDiv.innerText=this._value_format,t&&this.updateTextFontSize()}updateValue2(t=!1){this._value_change_format=this.model.change_formatter.doFormat([this.model.value_change],{loc:0})[0],this.value2Div.innerText=this._value_change_format,this.updateValueChange(),t&&this.updateTextFontSize()}updateValueChange(){this.model.value_change>0?(this.changeDiv.innerHTML=\"▲\",this.changeDiv.style.color=this.model.pos_color):this.model.value_change<0?(this.changeDiv.innerHTML=\"▼\",this.changeDiv.style.color=this.model.neg_color):(this.changeDiv.innerHTML=\" \",this.changeDiv.style.color=\"inherit\")}updateLayout(){\"column\"===this.model.layout?(this.containerDiv.style.display=\"block\",this.textDiv.style.height=\"50%\",this.textDiv.style.width=\"100%\",this.plotDiv.style.height=\"50%\",this.plotDiv.style.width=\"100%\"):(this.containerDiv.style.display=\"flex\",this.textDiv.style.height=\"100%\",this.textDiv.style.width=\"\",this.plotDiv.style.height=\"100%\",this.plotDiv.style.width=\"\",this.textDiv.style.flex=\"1\",this.plotDiv.style.flex=\"1\"),this.invalidate_layout()}}i.TrendIndicatorView=p,p.__name__=\"TrendIndicatorView\";class _ extends s.HTMLBox{constructor(t){super(t)}static init_TrendIndicator(){this.prototype.default_view=p,this.define((({Number:t,String:e,Ref:i})=>({description:[e,\"\"],formatter:[i(c.TickFormatter),()=>new c.BasicTickFormatter],change_formatter:[i(c.TickFormatter),()=>new c.NumeralTickFormatter],layout:[e,\"column\"],source:[i(r.ColumnDataSource)],plot_x:[e,\"x\"],plot_y:[e,\"y\"],plot_color:[e,\"#428bca\"],plot_type:[e,\"bar\"],pos_color:[e,\"#5cb85c\"],neg_color:[e,\"#d9534f\"],title:[e,\"\"],value:[t,0],value_change:[t,0]})))}}i.TrendIndicator=_,_.__name__=\"TrendIndicator\",_.__module__=\"panel.models.trend\",_.init_TrendIndicator()},\n \"4feb5fa522\": function _(t,e,s,o,a){o();const n=t(\"@bokehjs/core/util/types\"),c=t(\"@bokehjs/models/layouts/html_box\");class d extends c.HTMLBoxView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,this._plot),this.connect(this.model.properties.data_sources.change,(()=>this._connect_sources())),this._connected=[],this._connect_sources()}_connect_sources(){for(const t in this.model.data_sources){const e=this.model.data_sources[t];this._connected.indexOf(t)<0&&(this.connect(e.properties.data.change,this._plot),this._connected.push(t))}}_fetch_datasets(){const t={};for(const e in this.model.data_sources){const s=this.model.data_sources[e],o=[],a=s.columns();for(let t=0;t<s.get_length();t++){const e={};for(const o of a)e[o]=s.data[o][t];o.push(e)}t[e]=o}return t}render(){super.render(),this._plot()}_plot(){const t=this.model.data;if(null!=t&&window.vegaEmbed){if(this.model.data_sources&&Object.keys(this.model.data_sources).length>0){const e=this._fetch_datasets();if(\"data\"in e&&(t.data.values=e.data,delete e.data),null!=t.data){const s=n.isArray(t.data)?t.data:[t.data];for(const t of s)t.name in e&&(t.values=e[t.name],delete e[t.name])}this.model.data.datasets=e}window.vegaEmbed(this.el,this.model.data,{actions:!1})}}}s.VegaPlotView=d,d.__name__=\"VegaPlotView\";class i extends c.HTMLBox{constructor(t){super(t)}static init_VegaPlot(){this.prototype.default_view=d,this.define((({Any:t})=>({data:[t,{}],data_sources:[t,{}]})))}}s.VegaPlot=i,i.__name__=\"VegaPlot\",i.__module__=\"panel.models.vega\",i.init_VegaPlot()},\n \"ffe54b53c3\": function _(e,i,t,o,s){o();const l=e(\"@bokehjs/models/layouts/html_box\"),d=e(\"4c755983eb\");class h extends d.PanelHTMLBoxView{initialize(){super.initialize(),this._blocked=!1,this._setting=!1,this._time=Date.now()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.loop.change,(()=>this.set_loop())),this.connect(this.model.properties.paused.change,(()=>this.set_paused())),this.connect(this.model.properties.time.change,(()=>this.set_time())),this.connect(this.model.properties.value.change,(()=>this.set_value())),this.connect(this.model.properties.volume.change,(()=>this.set_volume()))}render(){super.render(),this.videoEl=document.createElement(\"video\"),this.model.sizing_mode&&\"fixed\"!==this.model.sizing_mode||(this.model.height&&(this.videoEl.height=this.model.height),this.model.width&&(this.videoEl.width=this.model.width)),this.videoEl.style.objectFit=\"fill\",this.videoEl.style.minWidth=\"100%\",this.videoEl.style.minHeight=\"100%\",this.videoEl.controls=!0,this.videoEl.src=this.model.value,this.videoEl.currentTime=this.model.time,this.videoEl.loop=this.model.loop,null!=this.model.volume?this.videoEl.volume=this.model.volume/100:this.model.volume=100*this.videoEl.volume,this.videoEl.onpause=()=>this.model.paused=!0,this.videoEl.onplay=()=>this.model.paused=!1,this.videoEl.ontimeupdate=()=>this.update_time(this),this.videoEl.onvolumechange=()=>this.update_volume(this),this.el.appendChild(this.videoEl),this.model.paused||this.videoEl.play()}update_time(e){e._setting?e._setting=!1:Date.now()-e._time<e.model.throttle||(e._blocked=!0,e.model.time=e.videoEl.currentTime,e._time=Date.now())}update_volume(e){e._setting?e._setting=!1:(e._blocked=!0,e.model.volume=100*e.videoEl.volume)}set_loop(){this.videoEl.loop=this.model.loop}set_paused(){!this.videoEl.paused&&this.model.paused&&this.videoEl.pause(),this.videoEl.paused&&!this.model.paused&&this.videoEl.play()}set_volume(){this._blocked?this._blocked=!1:(this._setting=!0,null!=this.model.volume&&(this.videoEl.volume=this.model.volume/100))}set_time(){this._blocked?this._blocked=!1:(this._setting=!0,this.videoEl.currentTime=this.model.time)}set_value(){this.videoEl.src=this.model.value}}t.VideoView=h,h.__name__=\"VideoView\";class m extends l.HTMLBox{constructor(e){super(e)}static init_Video(){this.prototype.default_view=h,this.define((({Any:e,Boolean:i,Int:t,Number:o})=>({loop:[i,!1],paused:[i,!0],time:[o,0],throttle:[t,250],value:[e,\"\"],volume:[t]})))}}t.Video=m,m.__name__=\"Video\",m.__module__=\"panel.models.widgets\",m.init_Video()},\n \"e3e9b8e495\": function _(e,t,i,s,o){s();const h=e(\"@bokehjs/models/layouts/html_box\"),l=e(\"4c755983eb\");class a extends l.PanelHTMLBoxView{constructor(){super(...arguments),this.constraints={audio:!1,video:!0}}initialize(){super.initialize(),null!==this.model.timeout&&this.set_timeout()}connect_signals(){super.connect_signals(),this.connect(this.model.properties.timeout.change,(()=>this.set_timeout())),this.connect(this.model.properties.snapshot.change,(()=>this.snapshot())),this.connect(this.model.properties.paused.change,(()=>this.pause()))}pause(){this.model.paused?(null!=this.timer&&(clearInterval(this.timer),this.timer=null),this.videoEl.pause()):this.videoEl.play(),this.set_timeout()}set_timeout(){this.timer&&(clearInterval(this.timer),this.timer=null),null!=this.model.timeout&&this.model.timeout>0&&(this.timer=setInterval((()=>this.snapshot()),this.model.timeout))}snapshot(){this.canvasEl.width=this.videoEl.videoWidth,this.canvasEl.height=this.videoEl.videoHeight;const e=this.canvasEl.getContext(\"2d\");e&&e.drawImage(this.videoEl,0,0,this.canvasEl.width,this.canvasEl.height),this.model.value=this.canvasEl.toDataURL(\"image/\"+this.model.format,.95)}remove(){super.remove(),this.timer&&(clearInterval(this.timer),this.timer=null)}render(){super.render(),this.videoEl||(this.videoEl=document.createElement(\"video\"),this.model.sizing_mode&&\"fixed\"!==this.model.sizing_mode||(this.model.height&&(this.videoEl.height=this.model.height),this.model.width&&(this.videoEl.width=this.model.width)),this.videoEl.style.objectFit=\"fill\",this.videoEl.style.minWidth=\"100%\",this.videoEl.style.minHeight=\"100%\",this.canvasEl=document.createElement(\"canvas\"),this.el.appendChild(this.videoEl),navigator.mediaDevices.getUserMedia&&navigator.mediaDevices.getUserMedia(this.constraints).then((e=>{this.videoEl.srcObject=e,this.model.paused||this.videoEl.play()})).catch(console.error))}}i.VideoStreamView=a,a.__name__=\"VideoStreamView\";class n extends h.HTMLBox{constructor(e){super(e)}static init_VideoStream(){this.prototype.default_view=a,this.define((({Any:e,Boolean:t,Int:i,Nullable:s,String:o})=>({format:[o,\"png\"],paused:[t,!1],snapshot:[t,!1],timeout:[s(i),null],value:[e]}))),this.override({height:240,width:320})}}i.VideoStream=n,n.__name__=\"VideoStream\",n.__module__=\"panel.models.widgets\",n.init_VideoStream()},\n \"c51f25e2a7\": function _(o,V,e,l,K){l(),K(\"VTKJSPlot\",o(\"34fc7779c7\").VTKJSPlot),K(\"VTKVolumePlot\",o(\"89262e43a1\").VTKVolumePlot),K(\"VTKAxes\",o(\"db7a0079c0\").VTKAxes),K(\"VTKSynchronizedPlot\",o(\"4baab0b7ce\").VTKSynchronizedPlot)},\n \"34fc7779c7\": function _(e,t,n,i,s){i();const a=e(\"46fdad9667\"),r=e(\"4eb45e35aa\");class _ extends a.AbstractVTKView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,(()=>{this.invalidate_render()}))}render(){super.render(),this._create_orientation_widget(),this._set_axes()}invalidate_render(){this._vtk_renwin=null,super.invalidate_render()}init_vtk_renwin(){this._vtk_renwin=r.vtkns.FullScreenRenderWindow.newInstance({rootContainer:this.el,container:this._vtk_container})}plot(){if(!this.model.data)return void this._vtk_renwin.getRenderWindow().render();const e=r.vtkns.DataAccessHelper.get(\"zip\",{zipContent:atob(this.model.data),callback:t=>{const n=r.vtkns.HttpSceneLoader.newInstance({renderer:this._vtk_renwin.getRenderer(),dataAccessHelper:e}),i=r.vtk.macro.debounce((()=>setTimeout((()=>{null==this._axes&&this.model.axes&&this._set_axes(),this._set_camera_state(),this._get_camera_state()}),100)),100);n.setUrl(\"index.json\"),n.onReady(i)}})}}n.VTKJSPlotView=_,_.__name__=\"VTKJSPlotView\";class o extends a.AbstractVTKPlot{static init_VTKJSPlot(){this.prototype.default_view=_,this.define((({Boolean:e,Nullable:t,String:n})=>({data:[t(n)],enable_keybindings:[e,!1]})))}}n.VTKJSPlot=o,o.__name__=\"VTKJSPlot\",o.init_VTKJSPlot()},\n \"46fdad9667\": function _(e,t,i,n,s){n();const a=e(\"@bokehjs/core/dom\"),o=e(\"@bokehjs/models/layouts/html_box\"),r=e(\"@bokehjs/core/util/object\"),_=e(\"@bokehjs/models/mappers/color_mapper\"),d=e(\"@bokehjs/core/kinds\"),h=e(\"4c755983eb\"),c=e(\"4eb45e35aa\"),l=e(\"c010237f8b\"),g=e(\"db7a0079c0\"),p={padding:\"0px 2px 0px 2px\",maxHeight:\"150px\",height:\"auto\",backgroundColor:\"rgba(255, 255, 255, 0.4)\",borderRadius:\"10px\",margin:\"2px\",boxSizing:\"border-box\",overflow:\"hidden\",overflowY:\"auto\",transition:\"width 0.1s linear\",bottom:\"0px\",position:\"absolute\"},m=d.Enum(\"LowerLeft\",\"LowerRight\",\"UpperLeft\",\"UpperRight\",\"LowerEdge\",\"RightEdge\",\"LeftEdge\",\"UpperEdge\");class v extends h.PanelHTMLBoxView{initialize(){super.initialize(),this._camera_callbacks=[],this._renderable=!0,this._setting_camera=!1}_add_colorbars(){const e=this.el.querySelector(\".vtk_info\");if(e&&this.el.removeChild(e),this.model.color_mappers.length<1)return;const t=document.createElement(\"div\"),i=\"350px\",n=\"30px\";t.classList.add(\"vtk_info\"),c.applyStyle(t,p),c.applyStyle(t,{width:i}),this.el.appendChild(t);const s=[];this.model.color_mappers.forEach((e=>{const i=new l.VTKColorBar(t,e);s.push(i)}));const a=document.createElement(\"div\");c.applyStyle(a,{textAlign:\"center\",fontSize:\"20px\"}),a.innerText=\"...\",t.addEventListener(\"click\",(()=>{t.style.width===n?(t.removeChild(a),c.applyStyle(t,{height:\"auto\",width:i}),s.forEach((e=>t.appendChild(e.canvas)))):(s.forEach((e=>t.removeChild(e.canvas))),c.applyStyle(t,{height:n,width:n}),t.appendChild(a))})),t.click()}_init_annotations_container(){this._annotations_container||(this._annotations_container=document.createElement(\"div\"),this._annotations_container.style.position=\"absolute\",this._annotations_container.style.width=\"100%\",this._annotations_container.style.height=\"100%\",this._annotations_container.style.top=\"0\",this._annotations_container.style.left=\"0\",this._annotations_container.style.pointerEvents=\"none\")}_clean_annotations(){if(this._annotations_container)for(;this._annotations_container.firstElementChild;)this._annotations_container.firstElementChild.remove()}_add_annotations(){this._clean_annotations();const{annotations:e}=this.model;if(null!=e)for(let t of e){const{viewport:e,color:i,fontSize:n,fontFamily:s}=t;m.values.forEach((a=>{const o=t[a];if(o){const t=document.createElement(\"div\");t.textContent=o;const{style:r}=t;r.position=\"absolute\",r.color=`rgb(${i.map((e=>255*e)).join(\",\")})`,r.fontSize=`${n}px`,r.padding=\"5px\",r.fontFamily=s,r.width=\"fit-content\",\"UpperLeft\"==a&&(r.top=100*(1-e[3])+\"%\",r.left=100*e[0]+\"%\"),\"UpperRight\"==a&&(r.top=100*(1-e[3])+\"%\",r.right=100*(1-e[2])+\"%\"),\"LowerLeft\"==a&&(r.bottom=100*e[1]+\"%\",r.left=100*e[0]+\"%\"),\"LowerRight\"==a&&(r.bottom=100*e[1]+\"%\",r.right=100*(1-e[2])+\"%\"),\"UpperEdge\"==a&&(r.top=100*(1-e[3])+\"%\",r.left=100*(e[0]+(e[2]-e[0])/2)+\"%\",r.transform=\"translateX(-50%)\"),\"LowerEdge\"==a&&(r.bottom=100*e[1]+\"%\",r.left=100*(e[0]+(e[2]-e[0])/2)+\"%\",r.transform=\"translateX(-50%)\"),\"LeftEdge\"==a&&(r.left=100*e[0]+\"%\",r.top=100*(1-e[3]+(e[3]-e[1])/2)+\"%\",r.transform=\"translateY(-50%)\"),\"RightEdge\"==a&&(r.right=100*(1-e[2])+\"%\",r.top=100*(1-e[3]+(e[3]-e[1])/2)+\"%\",r.transform=\"translateY(-50%)\"),this._annotations_container.appendChild(t)}}))}console.log(this.model.annotations)}connect_signals(){super.connect_signals(),this.on_change(this.model.properties.orientation_widget,(()=>{this._orientation_widget_visibility(this.model.orientation_widget)})),this.on_change(this.model.properties.camera,(()=>this._set_camera_state())),this.on_change(this.model.properties.axes,(()=>{this._delete_axes(),this.model.axes&&this._set_axes(),this._vtk_render()})),this.on_change(this.model.properties.color_mappers,(()=>this._add_colorbars())),this.on_change(this.model.properties.annotations,(()=>this._add_annotations()))}render(){super.render(),this._vtk_renwin&&this._vtk_container?(h.set_size(this._vtk_container,this.model),this.el.appendChild(this._vtk_container)):(this._orientationWidget=null,this._axes=null,this._vtk_container=a.div(),this.init_vtk_renwin(),this._init_annotations_container(),h.set_size(this._vtk_container,this.model),this.el.appendChild(this._vtk_container),this._vtk_renwin.getInteractor().onEndAnimation((()=>this._get_camera_state())),this._remove_default_key_binding(),this._bind_key_events(),this.plot(),this._add_colorbars(),this._add_annotations(),this.model.renderer_el=this._vtk_renwin),this.el.appendChild(this._annotations_container)}after_layout(){super.after_layout(),this._renderable&&this._vtk_renwin.resize(),this._vtk_render()}invalidate_render(){this._unsubscribe_camera_cb(),super.invalidate_render()}resize_layout(){this.layout&&super.resize_layout()}remove(){this._unsubscribe_camera_cb(),window.removeEventListener(\"resize\",this._vtk_renwin.resize),this._vtk_renwin.delete(),super.remove()}get _vtk_camera_state(){const e=this._vtk_renwin.getRenderer().getActiveCamera();let t;return e&&(t=r.clone(e.get()),delete t.classHierarchy,delete t.vtkObject,delete t.vtkCamera,delete t.viewPlaneNormal,delete t.flattenedDepIds,delete t.managedInstanceId,delete t.directionOfProjection),t}get _axes_canvas(){let e=this._vtk_container.querySelector(\".axes-canvas\");return e||(e=a.canvas({style:{position:\"absolute\",top:\"0\",left:\"0\",width:\"100%\",height:\"100%\"}}),e.classList.add(\"axes-canvas\"),this._vtk_container.appendChild(e),this._vtk_renwin.setResizeCallback((()=>{if(this._axes_canvas){const e=this._vtk_container.getBoundingClientRect(),t=Math.floor(e.width*window.devicePixelRatio),i=Math.floor(e.height*window.devicePixelRatio);this._axes_canvas.setAttribute(\"width\",t.toFixed()),this._axes_canvas.setAttribute(\"height\",i.toFixed())}}))),e}_bind_key_events(){this.el.addEventListener(\"mouseenter\",(()=>{const e=this._vtk_renwin.getInteractor();this.model.enable_keybindings&&(document.querySelector(\"body\").addEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").addEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").addEventListener(\"keyup\",e.handleKeyUp))})),this.el.addEventListener(\"mouseleave\",(()=>{const e=this._vtk_renwin.getInteractor();document.querySelector(\"body\").removeEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").removeEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").removeEventListener(\"keyup\",e.handleKeyUp)}))}_create_orientation_widget(){const e=c.vtkns.AxesActor.newInstance();this._orientationWidget=c.vtkns.OrientationMarkerWidget.newInstance({actor:e,interactor:this._vtk_renwin.getInteractor()}),this._orientationWidget.setEnabled(!0),this._orientationWidget.setViewportCorner(c.vtkns.OrientationMarkerWidget.Corners.BOTTOM_RIGHT),this._orientationWidget.setViewportSize(.15),this._orientationWidget.setMinPixelSize(75),this._orientationWidget.setMaxPixelSize(300),this.model.interactive_orientation_widget&&this._make_orientation_widget_interactive(),this._orientation_widget_visibility(this.model.orientation_widget)}_make_orientation_widget_interactive(){this._widgetManager=c.vtkns.WidgetManager.newInstance(),this._widgetManager.setRenderer(this._orientationWidget.getRenderer());const e=this._orientationWidget.getActor(),t=c.vtkns.InteractiveOrientationWidget.newInstance();t.placeWidget(e.getBounds()),t.setBounds(e.getBounds()),t.setPlaceFactor(1);this._widgetManager.addWidget(t).onOrientationChange((({direction:e})=>{const t=this._vtk_renwin.getRenderer().getActiveCamera(),i=t.getFocalPoint(),n=t.getPosition(),s=t.getViewUp(),a=Math.sqrt(Math.pow(n[0]-i[0],2)+Math.pow(n[1]-i[1],2)+Math.pow(n[2]-i[2],2));t.setPosition(i[0]+e[0]*a,i[1]+e[1]*a,i[2]+e[2]*a),e[0]&&t.setViewUp(c.majorAxis(s,1,2)),e[1]&&t.setViewUp(c.majorAxis(s,0,2)),e[2]&&t.setViewUp(c.majorAxis(s,0,1)),this._vtk_renwin.getRenderer().resetCameraClippingRange(),this._vtk_render(),this._get_camera_state()}))}_delete_axes(){if(this._axes){Object.keys(this._axes).forEach((e=>this._vtk_renwin.getRenderer().removeActor(this._axes[e]))),this._axes=null;const e=this._axes_canvas.getContext(\"2d\");e&&e.clearRect(0,0,this._axes_canvas.clientWidth*window.devicePixelRatio,this._axes_canvas.clientHeight*window.devicePixelRatio)}}_get_camera_state(){this._setting_camera||(this._setting_camera=!0,this.model.camera=this._vtk_camera_state,this._setting_camera=!1)}_orientation_widget_visibility(e){this._orientationWidget.setEnabled(e),null!=this._widgetManager&&(e?this._widgetManager.enablePicking():this._widgetManager.disablePicking()),this._vtk_render()}_remove_default_key_binding(){const e=this._vtk_renwin.getInteractor();document.querySelector(\"body\").removeEventListener(\"keypress\",e.handleKeyPress),document.querySelector(\"body\").removeEventListener(\"keydown\",e.handleKeyDown),document.querySelector(\"body\").removeEventListener(\"keyup\",e.handleKeyUp)}_set_axes(){if(this.model.axes&&this._vtk_renwin.getRenderer()){const{psActor:e,axesActor:t,gridActor:i}=this.model.axes.create_axes(this._axes_canvas);this._axes={psActor:e,axesActor:t,gridActor:i},e&&this._vtk_renwin.getRenderer().addActor(e),t&&this._vtk_renwin.getRenderer().addActor(t),i&&this._vtk_renwin.getRenderer().addActor(i)}}_set_camera_state(){this._setting_camera||void 0===this._vtk_renwin.getRenderer()||(this._setting_camera=!0,this.model.camera&&JSON.stringify(this.model.camera)!=JSON.stringify(this._vtk_camera_state)&&this._vtk_renwin.getRenderer().getActiveCamera().set(this.model.camera),this._vtk_renwin.getRenderer().resetCameraClippingRange(),this._vtk_render(),this._setting_camera=!1)}_unsubscribe_camera_cb(){this._camera_callbacks.splice(0,this._camera_callbacks.length).map((e=>e.unsubscribe()))}_vtk_render(){this._renderable&&(this._orientationWidget&&this._orientationWidget.updateMarkerOrientation(),this._vtk_renwin.getRenderWindow().render())}}i.AbstractVTKView=v,v.__name__=\"AbstractVTKView\";class w extends o.HTMLBox{constructor(e){super(e)}getActors(){return this.renderer_el.getRenderer().getActors()}static init_AbstractVTKPlot(){this.define((({Any:e,Ref:t,Array:i,Boolean:n,Nullable:s})=>({axes:[s(t(g.VTKAxes)),null],camera:[e],color_mappers:[i(t(_.ColorMapper)),[]],orientation_widget:[n,!1],interactive_orientation_widget:[n,!1],annotations:[s(i(e)),null]}))),this.override({height:300,width:300})}}i.AbstractVTKPlot=w,w.__name__=\"AbstractVTKPlot\",w.__module__=\"panel.models.vtk\",w.init_AbstractVTKPlot()},\n \"4eb45e35aa\": function _(e,t,n,r,a){r();const o=e(\"@bokehjs/core/util/array\"),k=e(\"@bokehjs/core/kinds\");if(n.ARRAY_TYPES={uint8:Uint8Array,int8:Int8Array,uint16:Uint16Array,int16:Int16Array,uint32:Uint32Array,int32:Int32Array,float32:Float32Array,float64:Float64Array},n.vtk=window.vtk,n.vtkns={},n.vtk){n.vtkns.Actor=n.vtk.Rendering.Core.vtkActor,n.vtkns.AxesActor=n.vtk.Rendering.Core.vtkAxesActor,n.vtkns.Base64=n.vtk.Common.Core.vtkBase64,n.vtkns.BoundingBox=n.vtk.Common.DataModel.vtkBoundingBox,n.vtkns.Camera=n.vtk.Rendering.Core.vtkCamera,n.vtkns.ColorTransferFunction=n.vtk.Rendering.Core.vtkColorTransferFunction,n.vtkns.CubeSource=n.vtk.Filters.Sources.vtkCubeSource,n.vtkns.DataAccessHelper=n.vtk.IO.Core.DataAccessHelper,n.vtkns.DataArray=n.vtk.Common.Core.vtkDataArray,n.vtkns.Follower=n.vtk.Rendering.Core.vtkFollower,n.vtkns.FullScreenRenderWindow=n.vtk.Rendering.Misc.vtkFullScreenRenderWindow,n.vtkns.Glyph3DMapper=n.vtk.Rendering.Core.vtkGlyph3DMapper,n.vtkns.HttpSceneLoader=n.vtk.IO.Core.vtkHttpSceneLoader,n.vtkns.ImageData=n.vtk.Common.DataModel.vtkImageData,n.vtkns.ImageMapper=n.vtk.Rendering.Core.vtkImageMapper,n.vtkns.ImageProperty=n.vtk.Rendering.Core.vtkImageProperty,n.vtkns.ImageSlice=n.vtk.Rendering.Core.vtkImageSlice,n.vtkns.InteractiveOrientationWidget=n.vtk.Widgets.Widgets3D.vtkInteractiveOrientationWidget,n.vtkns.InteractorStyleTrackballCamera=n.vtk.Interaction.Style.vtkInteractorStyleTrackballCamera,n.vtkns.Light=n.vtk.Rendering.Core.vtkLight,n.vtkns.LineSource=n.vtk.Filters.Sources.vtkLineSource,n.vtkns.LookupTable=n.vtk.Common.Core.vtkLookupTable,n.vtkns.macro=n.vtk.macro,n.vtkns.Mapper=n.vtk.Rendering.Core.vtkMapper,n.vtkns.OpenGLRenderWindow=n.vtk.Rendering.OpenGL.vtkRenderWindow,n.vtkns.OrientationMarkerWidget=n.vtk.Interaction.Widgets.vtkOrientationMarkerWidget,n.vtkns.OutlineFilter=n.vtk.Filters.General.vtkOutlineFilter,n.vtkns.PiecewiseFunction=n.vtk.Common.DataModel.vtkPiecewiseFunction,n.vtkns.PixelSpaceCallbackMapper=n.vtk.Rendering.Core.vtkPixelSpaceCallbackMapper,n.vtkns.PlaneSource=n.vtk.Filters.Sources.vtkPlaneSource,n.vtkns.PointSource=n.vtk.Filters.Sources.vtkPointSource,n.vtkns.PolyData=n.vtk.Common.DataModel.vtkPolyData,n.vtkns.Property=n.vtk.Rendering.Core.vtkProperty,n.vtkns.Renderer=n.vtk.Rendering.Core.vtkRenderer,n.vtkns.RenderWindow=n.vtk.Rendering.Core.vtkRenderWindow,n.vtkns.RenderWindowInteractor=n.vtk.Rendering.Core.vtkRenderWindowInteractor,n.vtkns.SphereMapper=n.vtk.Rendering.Core.vtkSphereMapper,n.vtkns.SynchronizableRenderWindow=n.vtk.Rendering.Misc.vtkSynchronizableRenderWindow,n.vtkns.ThirdParty=n.vtk.ThirdParty,n.vtkns.Texture=n.vtk.Rendering.Core.vtkTexture,n.vtkns.Volume=n.vtk.Rendering.Core.vtkVolume,n.vtkns.VolumeController=n.vtk.Interaction.UI.vtkVolumeController,n.vtkns.VolumeMapper=n.vtk.Rendering.Core.vtkVolumeMapper,n.vtkns.VolumeProperty=n.vtk.Rendering.Core.vtkVolumeProperty,n.vtkns.WidgetManager=n.vtk.Widgets.Core.vtkWidgetManager;const{vtkObjectManager:e}=n.vtkns.SynchronizableRenderWindow;e.setTypeMapping(\"vtkVolumeMapper\",n.vtkns.VolumeMapper.newInstance,e.oneTimeGenericUpdater),e.setTypeMapping(\"vtkSmartVolumeMapper\",n.vtkns.VolumeMapper.newInstance,e.oneTimeGenericUpdater),e.setTypeMapping(\"vtkFollower\",n.vtkns.Follower.newInstance,e.genericUpdater),e.setTypeMapping(\"vtkOpenGLGlyph3DMapper\",n.vtkns.Glyph3DMapper.newInstance,e.genericUpdater)}function i(e){const t=Math.min(Math.max(Math.round(e),0),255).toString(16);return 2==t.length?t:\"0\"+t}function v(e,t,n){return\"#\"+i(e)+i(t)+i(n)}function s(e){for(var t=new ArrayBuffer(e.length),n=new Uint8Array(t),r=0,a=e.length;r<a;r++)n[r]=e.charCodeAt(r);return t}n.Interpolation=k.Enum(\"fast_linear\",\"linear\",\"nearest\"),n.applyStyle=function(e,t){Object.keys(t).forEach((n=>{e.style[n]=t[n]}))},n.hexToRGB=function(e){return[parseInt(e.slice(1,3),16)/255,parseInt(e.slice(3,5),16)/255,parseInt(e.slice(5,7),16)/255]},n.rgbToHex=v,n.vtkLutToMapper=function(e){const{scale:t,nodes:r}=e.get(\"scale\",\"nodes\");if(t!==n.vtkns.ColorTransferFunction.Scale.LINEAR)throw\"Error transfer function scale not handle\";const a=r.map((e=>e.x)),k=Math.min(...a),i=Math.max(...a),s=o.linspace(k,i,255),c=[0,0,0];return{low:k,high:i,palette:s.map((t=>(e.getColor(t,c),v(255*c[0],255*c[1],255*c[2]))))}},n.data2VTKImageData=function(e){const t=n.vtkns.ImageData.newInstance({spacing:e.spacing});t.setDimensions(e.dims),t.setOrigin(null!=e.origin?e.origin:e.dims.map((e=>e/2)));const r=n.vtkns.DataArray.newInstance({name:\"scalars\",numberOfComponents:1,values:new n.ARRAY_TYPES[e.dtype](s(atob(e.buffer)))});return t.getPointData().setScalars(r),t},n.majorAxis=function(e,t,n){const r=[0,0,0],a=Math.abs(e[t])>Math.abs(e[n])?t:n,o=e[a]>0?1:-1;return r[a]=o,r},n.cartesian_product=function(...e){return e.reduce(((e,t)=>e.flatMap((e=>t.map((t=>[].concat(e,t)))))))}},\n \"c010237f8b\": function _(t,i,e,s,h){s();const a=t(\"@bokehjs/models/mappers\"),n=t(\"@bokehjs/core/util/array\");class c{constructor(t,i,e={}){this.parent=t,this.mapper=i,this.options=e,e.ticksNum||(e.ticksNum=5),e.fontFamily||(e.fontFamily=\"Arial\"),e.fontSize||(e.fontSize=\"12px\"),e.ticksSize||(e.ticksSize=2),this.canvas=document.createElement(\"canvas\"),this.canvas.style.width=\"100%\",this.parent.appendChild(this.canvas),this.ctx=this.canvas.getContext(\"2d\"),this.ctx.font=`${this.options.fontSize} ${this.options.fontFamily}`,this.ctx.lineWidth=e.ticksSize,e.height||(e.height=4*(this.font_height+1)+\"px\"),this.canvas.style.height=e.height,this.draw_colorbar()}get values(){const{min:t,max:i}=this.mapper.metrics;return n.linspace(t,i,this.options.ticksNum)}get ticks(){return this.values.map((t=>t.toExponential(3)))}get title(){return this.mapper.name?this.mapper.name:\"scalars\"}get font_height(){let t=0;return this.values.forEach((i=>{const{actualBoundingBoxAscent:e,actualBoundingBoxDescent:s}=this.ctx.measureText(`${i}`),h=e+s;t<h&&(t=h)})),t}draw_colorbar(){this.canvas.width=this.canvas.clientWidth,this.canvas.height=this.canvas.clientHeight;const{palette:t}=this.mapper;this.ctx.font=`${this.options.fontSize} ${this.options.fontFamily}`;const i=this.font_height;this.ctx.save();const e=document.createElement(\"canvas\"),s=t.length;e.width=s,e.height=1;const h=e.getContext(\"2d\"),c=h.getImageData(0,0,s,1),o=new a.LinearColorMapper({palette:t}).rgba_mapper.v_compute(n.range(0,t.length));c.data.set(o),h.putImageData(c,0,0),this.ctx.drawImage(e,0,2*(this.font_height+1)+1,this.canvas.width,this.canvas.height),this.ctx.restore(),this.ctx.save(),this.ctx.textAlign=\"center\",this.ctx.fillText(this.title,this.canvas.width/2,i+1),this.ctx.restore(),this.ctx.save();const r=n.linspace(0,this.canvas.width,5);r.forEach(((t,e)=>{let s=t;0==e?(s=t+Math.ceil(this.ctx.lineWidth/2),this.ctx.textAlign=\"left\"):e==r.length-1?(s=t-Math.ceil(this.ctx.lineWidth/2),this.ctx.textAlign=\"right\"):this.ctx.textAlign=\"center\",this.ctx.moveTo(s,2*(i+1)),this.ctx.lineTo(s,2*(i+1)+5),this.ctx.stroke(),this.ctx.fillText(`${this.ticks[e]}`,t,2*(i+1))})),this.ctx.restore()}}e.VTKColorBar=c,c.__name__=\"VTKColorBar\"},\n \"db7a0079c0\": function _(t,s,i,e,n){e();const a=t(\"tslib\").__importStar(t(\"@bokehjs/core/properties\")),r=t(\"@bokehjs/model\"),c=t(\"2f3fd5db07\"),h=t(\"4eb45e35aa\");class l extends r.Model{constructor(t){super(t)}static init_VTKAxes(){this.define({origin:[a.Array],xticker:[a.Instance],yticker:[a.Instance],zticker:[a.Instance],digits:[a.Number,1],show_grid:[a.Boolean,!0],grid_opacity:[a.Number,.1],axes_opacity:[a.Number,1],fontsize:[a.Number,12]})}get xticks(){return this.xticker?this.xticker.ticks:[]}get yticks(){return this.yticker?this.yticker.ticks:[]}get zticks(){return this.zticker?this.zticker.ticks:[]}get xlabels(){return this.xticker.labels?this.xticker.labels:this.xticks.map((t=>t.toFixed(this.digits)))}get ylabels(){return this.yticker.labels?this.yticker.labels:this.yticks.map((t=>t.toFixed(this.digits)))}get zlabels(){return this.zticker.labels?this.zticker.labels:this.zticks.map((t=>t.toFixed(this.digits)))}_make_grid_lines(t,s,i){const e=[];for(let n=0;n<t-1;n++)for(let t=0;t<s-1;t++){const a=n*s+t+i,r=[5,a,n*s+t+1+i,(n+1)*s+t+1+i,(n+1)*s+t+i,a];e.push(r)}return e}_create_grid_axes(){const t=[];t.push(h.cartesian_product(this.xticks,this.yticks,[this.origin[2]])),t.push(h.cartesian_product([this.origin[0]],this.yticks,this.zticks)),t.push(h.cartesian_product(this.xticks,[this.origin[1]],this.zticks));const s=[];let i=0;s.push(this._make_grid_lines(this.xticks.length,this.yticks.length,i)),i+=this.xticks.length*this.yticks.length,s.push(this._make_grid_lines(this.yticks.length,this.zticks.length,i)),i+=this.yticks.length*this.zticks.length,s.push(this._make_grid_lines(this.xticks.length,this.zticks.length,i));const e=h.vtk({vtkClass:\"vtkPolyData\",points:{vtkClass:\"vtkPoints\",dataType:\"Float32Array\",numberOfComponents:3,values:t.flat(2)},lines:{vtkClass:\"vtkCellArray\",dataType:\"Uint32Array\",values:s.flat(2)}}),n=h.vtkns.Mapper.newInstance(),a=h.vtkns.Actor.newInstance();return n.setInputData(e),a.setMapper(n),a.getProperty().setOpacity(this.grid_opacity),a.setVisibility(this.show_grid),a}create_axes(t){if(null==this.origin)return{psActor:null,axesActor:null,gridActor:null};const s=[this.xticks,this.yticks,this.zticks].map(((t,s)=>{let i=null;switch(s){case 0:i=h.cartesian_product(t,[this.origin[1]],[this.origin[2]]);break;case 1:i=h.cartesian_product([this.origin[0]],t,[this.origin[2]]);break;case 2:i=h.cartesian_product([this.origin[0]],[this.origin[1]],t)}return i})).flat(2),i=h.vtk({vtkClass:\"vtkPolyData\",points:{vtkClass:\"vtkPoints\",dataType:\"Float32Array\",numberOfComponents:3,values:s},lines:{vtkClass:\"vtkCellArray\",dataType:\"Uint32Array\",values:[2,0,this.xticks.length-1,2,this.xticks.length,this.xticks.length+this.yticks.length-1,2,this.xticks.length+this.yticks.length,this.xticks.length+this.yticks.length+this.zticks.length-1]}}),e=h.vtkns.PixelSpaceCallbackMapper.newInstance();e.setInputData(i),e.setUseZValues(!0),e.setCallback(((s,i,n)=>{const a=t.getContext(\"2d\");if(a){const r={height:t.clientHeight*window.devicePixelRatio,width:t.clientWidth*window.devicePixelRatio},h=e.getInputData().getPoints(),l=i.getViewMatrix();c.mat4.transpose(l,l);const o=i.getProjectionMatrix(n,-1,1);c.mat4.transpose(o,o),a.clearRect(0,0,r.width,r.height),s.forEach(((t,s)=>{const i=h.getPoint(s),e=c.vec3.fromValues(i[0],i[1],i[2]);if(c.vec3.transformMat4(e,e,l),e[2]+=.05,c.vec3.transformMat4(e,e,o),e[2]-.001<t[3]){let i;a.font=\"30px serif\",a.textAlign=\"center\",a.textBaseline=\"alphabetic\",a.fillText(\".\",t[0],r.height-t[1]+2),a.font=this.fontsize*window.devicePixelRatio+\"px serif\",a.textAlign=\"right\",a.textBaseline=\"top\",i=s<this.xticks.length?this.xlabels[s]:s>=this.xticks.length&&s<this.xticks.length+this.yticks.length?this.ylabels[s-this.xticks.length]:this.zlabels[s-(this.xticks.length+this.yticks.length)],a.fillText(`${i}`,t[0],r.height-t[1])}}))}}));const n=h.vtkns.Actor.newInstance();n.setMapper(e);const a=h.vtkns.Mapper.newInstance();a.setInputData(i);const r=h.vtkns.Actor.newInstance();r.setMapper(a),r.getProperty().setOpacity(this.axes_opacity);return{psActor:n,axesActor:r,gridActor:this._create_grid_axes()}}}i.VTKAxes=l,l.__name__=\"VTKAxes\",l.__module__=\"panel.models.vtk\",l.init_VTKAxes()},\n \"2f3fd5db07\": function _(t,c,a,o,r){o();const _=t(\"tslib\"),m=_.__importStar(t(\"68ca94c15c\"));a.glMatrix=m;const i=_.__importStar(t(\"7c0b8e6048\"));a.mat2=i;const n=_.__importStar(t(\"dc03f0a621\"));a.mat2d=n;const s=_.__importStar(t(\"0285c50a7e\"));a.mat3=s;const p=_.__importStar(t(\"a427635f32\"));a.mat4=p;const S=_.__importStar(t(\"eb06fc032a\"));a.quat=S;const e=_.__importStar(t(\"277615c682\"));a.quat2=e;const f=_.__importStar(t(\"c56d9ff837\"));a.vec2=f;const b=_.__importStar(t(\"2c5eb22089\"));a.vec3=b;const d=_.__importStar(t(\"c1aa33d719\"));a.vec4=d},\n \"68ca94c15c\": function _(t,a,r,n,o){n(),r.EPSILON=1e-6,r.ARRAY_TYPE=\"undefined\"!=typeof Float32Array?Float32Array:Array,r.RANDOM=Math.random,r.setMatrixArrayType=function(t){r.ARRAY_TYPE=t};var h=Math.PI/180;r.toRadian=function(t){return t*h},r.equals=function(t,a){return Math.abs(t-a)<=r.EPSILON*Math.max(1,Math.abs(t),Math.abs(a))},Math.hypot||(Math.hypot=function(){for(var t=0,a=arguments.length;a--;)t+=arguments[a]*arguments[a];return Math.sqrt(t)})},\n \"7c0b8e6048\": function _(t,n,r,a,u){a();const e=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function o(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=r[0],i=r[1],f=r[2],s=r[3];return t[0]=a*c+e*i,t[1]=u*c+o*i,t[2]=a*f+e*s,t[3]=u*f+o*s,t}function c(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}r.create=function(){var t=new e.ARRAY_TYPE(4);return e.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0),t[0]=1,t[3]=1,t},r.clone=function(t){var n=new e.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},r.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t},r.fromValues=function(t,n,r,a){var u=new e.ARRAY_TYPE(4);return u[0]=t,u[1]=n,u[2]=r,u[3]=a,u},r.set=function(t,n,r,a,u){return t[0]=n,t[1]=r,t[2]=a,t[3]=u,t},r.transpose=function(t,n){if(t===n){var r=n[1];t[1]=n[2],t[2]=r}else t[0]=n[0],t[1]=n[2],t[2]=n[1],t[3]=n[3];return t},r.invert=function(t,n){var r=n[0],a=n[1],u=n[2],e=n[3],o=r*e-u*a;return o?(o=1/o,t[0]=e*o,t[1]=-a*o,t[2]=-u*o,t[3]=r*o,t):null},r.adjoint=function(t,n){var r=n[0];return t[0]=n[3],t[1]=-n[1],t[2]=-n[2],t[3]=r,t},r.determinant=function(t){return t[0]*t[3]-t[2]*t[1]},r.multiply=o,r.rotate=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=Math.sin(r),i=Math.cos(r);return t[0]=a*i+e*c,t[1]=u*i+o*c,t[2]=a*-c+e*i,t[3]=u*-c+o*i,t},r.scale=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3],c=r[0],i=r[1];return t[0]=a*c,t[1]=u*c,t[2]=e*i,t[3]=o*i,t},r.fromRotation=function(t,n){var r=Math.sin(n),a=Math.cos(n);return t[0]=a,t[1]=r,t[2]=-r,t[3]=a,t},r.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t},r.str=function(t){return\"mat2(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3])},r.LDU=function(t,n,r,a){return t[2]=a[2]/a[0],r[0]=a[0],r[1]=a[1],r[3]=a[3]-t[2]*r[1],[t,n,r]},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},r.subtract=c,r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},r.equals=function(t,n){var r=t[0],a=t[1],u=t[2],o=t[3],c=n[0],i=n[1],f=n[2],s=n[3];return Math.abs(r-c)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(c))&&Math.abs(a-i)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(i))&&Math.abs(u-f)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(f))&&Math.abs(o-s)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(s))},r.multiplyScalar=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t},r.multiplyScalarAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t[3]=n[3]+r[3]*a,t},r.mul=o,r.sub=c},\n \"dc03f0a621\": function _(t,n,a,r,u){r();const o=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function e(t,n,a){var r=n[0],u=n[1],o=n[2],e=n[3],c=n[4],i=n[5],s=a[0],h=a[1],f=a[2],M=a[3],b=a[4],l=a[5];return t[0]=r*s+o*h,t[1]=u*s+e*h,t[2]=r*f+o*M,t[3]=u*f+e*M,t[4]=r*b+o*l+c,t[5]=u*b+e*l+i,t}function c(t,n,a){return t[0]=n[0]-a[0],t[1]=n[1]-a[1],t[2]=n[2]-a[2],t[3]=n[3]-a[3],t[4]=n[4]-a[4],t[5]=n[5]-a[5],t}a.create=function(){var t=new o.ARRAY_TYPE(6);return o.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[4]=0,t[5]=0),t[0]=1,t[3]=1,t},a.clone=function(t){var n=new o.ARRAY_TYPE(6);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n[4]=t[4],n[5]=t[5],n},a.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t[4]=n[4],t[5]=n[5],t},a.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t},a.fromValues=function(t,n,a,r,u,e){var c=new o.ARRAY_TYPE(6);return c[0]=t,c[1]=n,c[2]=a,c[3]=r,c[4]=u,c[5]=e,c},a.set=function(t,n,a,r,u,o,e){return t[0]=n,t[1]=a,t[2]=r,t[3]=u,t[4]=o,t[5]=e,t},a.invert=function(t,n){var a=n[0],r=n[1],u=n[2],o=n[3],e=n[4],c=n[5],i=a*o-r*u;return i?(i=1/i,t[0]=o*i,t[1]=-r*i,t[2]=-u*i,t[3]=a*i,t[4]=(u*c-o*e)*i,t[5]=(r*e-a*c)*i,t):null},a.determinant=function(t){return t[0]*t[3]-t[1]*t[2]},a.multiply=e,a.rotate=function(t,n,a){var r=n[0],u=n[1],o=n[2],e=n[3],c=n[4],i=n[5],s=Math.sin(a),h=Math.cos(a);return t[0]=r*h+o*s,t[1]=u*h+e*s,t[2]=r*-s+o*h,t[3]=u*-s+e*h,t[4]=c,t[5]=i,t},a.scale=function(t,n,a){var r=n[0],u=n[1],o=n[2],e=n[3],c=n[4],i=n[5],s=a[0],h=a[1];return t[0]=r*s,t[1]=u*s,t[2]=o*h,t[3]=e*h,t[4]=c,t[5]=i,t},a.translate=function(t,n,a){var r=n[0],u=n[1],o=n[2],e=n[3],c=n[4],i=n[5],s=a[0],h=a[1];return t[0]=r,t[1]=u,t[2]=o,t[3]=e,t[4]=r*s+o*h+c,t[5]=u*s+e*h+i,t},a.fromRotation=function(t,n){var a=Math.sin(n),r=Math.cos(n);return t[0]=r,t[1]=a,t[2]=-a,t[3]=r,t[4]=0,t[5]=0,t},a.fromScaling=function(t,n){return t[0]=n[0],t[1]=0,t[2]=0,t[3]=n[1],t[4]=0,t[5]=0,t},a.fromTranslation=function(t,n){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=n[0],t[5]=n[1],t},a.str=function(t){return\"mat2d(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\")\"},a.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],1)},a.add=function(t,n,a){return t[0]=n[0]+a[0],t[1]=n[1]+a[1],t[2]=n[2]+a[2],t[3]=n[3]+a[3],t[4]=n[4]+a[4],t[5]=n[5]+a[5],t},a.subtract=c,a.multiplyScalar=function(t,n,a){return t[0]=n[0]*a,t[1]=n[1]*a,t[2]=n[2]*a,t[3]=n[3]*a,t[4]=n[4]*a,t[5]=n[5]*a,t},a.multiplyScalarAndAdd=function(t,n,a,r){return t[0]=n[0]+a[0]*r,t[1]=n[1]+a[1]*r,t[2]=n[2]+a[2]*r,t[3]=n[3]+a[3]*r,t[4]=n[4]+a[4]*r,t[5]=n[5]+a[5]*r,t},a.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]&&t[4]===n[4]&&t[5]===n[5]},a.equals=function(t,n){var a=t[0],r=t[1],u=t[2],e=t[3],c=t[4],i=t[5],s=n[0],h=n[1],f=n[2],M=n[3],b=n[4],l=n[5];return Math.abs(a-s)<=o.EPSILON*Math.max(1,Math.abs(a),Math.abs(s))&&Math.abs(r-h)<=o.EPSILON*Math.max(1,Math.abs(r),Math.abs(h))&&Math.abs(u-f)<=o.EPSILON*Math.max(1,Math.abs(u),Math.abs(f))&&Math.abs(e-M)<=o.EPSILON*Math.max(1,Math.abs(e),Math.abs(M))&&Math.abs(c-b)<=o.EPSILON*Math.max(1,Math.abs(c),Math.abs(b))&&Math.abs(i-l)<=o.EPSILON*Math.max(1,Math.abs(i),Math.abs(l))},a.mul=e,a.sub=c},\n \"0285c50a7e\": function _(t,a,n,r,u){r();const o=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function e(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=n[0],b=n[1],l=n[2],m=n[3],v=n[4],E=n[5],P=n[6],S=n[7],A=n[8];return t[0]=f*r+b*e+l*s,t[1]=f*u+b*i+l*M,t[2]=f*o+b*c+l*h,t[3]=m*r+v*e+E*s,t[4]=m*u+v*i+E*M,t[5]=m*o+v*c+E*h,t[6]=P*r+S*e+A*s,t[7]=P*u+S*i+A*M,t[8]=P*o+S*c+A*h,t}function i(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t[6]=a[6]-n[6],t[7]=a[7]-n[7],t[8]=a[8]-n[8],t}n.create=function(){var t=new o.ARRAY_TYPE(9);return o.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[5]=0,t[6]=0,t[7]=0),t[0]=1,t[4]=1,t[8]=1,t},n.fromMat4=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[4],t[4]=a[5],t[5]=a[6],t[6]=a[8],t[7]=a[9],t[8]=a[10],t},n.clone=function(t){var a=new o.ARRAY_TYPE(9);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a[8]=t[8],a},n.copy=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t},n.fromValues=function(t,a,n,r,u,e,i,c,s){var M=new o.ARRAY_TYPE(9);return M[0]=t,M[1]=a,M[2]=n,M[3]=r,M[4]=u,M[5]=e,M[6]=i,M[7]=c,M[8]=s,M},n.set=function(t,a,n,r,u,o,e,i,c,s){return t[0]=a,t[1]=n,t[2]=r,t[3]=u,t[4]=o,t[5]=e,t[6]=i,t[7]=c,t[8]=s,t},n.identity=function(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.transpose=function(t,a){if(t===a){var n=a[1],r=a[2],u=a[5];t[1]=a[3],t[2]=a[6],t[3]=n,t[5]=a[7],t[6]=r,t[7]=u}else t[0]=a[0],t[1]=a[3],t[2]=a[6],t[3]=a[1],t[4]=a[4],t[5]=a[7],t[6]=a[2],t[7]=a[5],t[8]=a[8];return t},n.invert=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8],h=M*e-i*s,f=-M*o+i*c,b=s*o-e*c,l=n*h+r*f+u*b;return l?(l=1/l,t[0]=h*l,t[1]=(-M*r+u*s)*l,t[2]=(i*r-u*e)*l,t[3]=f*l,t[4]=(M*n-u*c)*l,t[5]=(-i*n+u*o)*l,t[6]=b*l,t[7]=(-s*n+r*c)*l,t[8]=(e*n-r*o)*l,t):null},n.adjoint=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8];return t[0]=e*M-i*s,t[1]=u*s-r*M,t[2]=r*i-u*e,t[3]=i*c-o*M,t[4]=n*M-u*c,t[5]=u*o-n*i,t[6]=o*s-e*c,t[7]=r*c-n*s,t[8]=n*e-r*o,t},n.determinant=function(t){var a=t[0],n=t[1],r=t[2],u=t[3],o=t[4],e=t[5],i=t[6],c=t[7],s=t[8];return a*(s*o-e*c)+n*(-s*u+e*i)+r*(c*u-o*i)},n.multiply=e,n.translate=function(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=n[0],b=n[1];return t[0]=r,t[1]=u,t[2]=o,t[3]=e,t[4]=i,t[5]=c,t[6]=f*r+b*e+s,t[7]=f*u+b*i+M,t[8]=f*o+b*c+h,t},n.rotate=function(t,a,n){var r=a[0],u=a[1],o=a[2],e=a[3],i=a[4],c=a[5],s=a[6],M=a[7],h=a[8],f=Math.sin(n),b=Math.cos(n);return t[0]=b*r+f*e,t[1]=b*u+f*i,t[2]=b*o+f*c,t[3]=b*e-f*r,t[4]=b*i-f*u,t[5]=b*c-f*o,t[6]=s,t[7]=M,t[8]=h,t},n.scale=function(t,a,n){var r=n[0],u=n[1];return t[0]=r*a[0],t[1]=r*a[1],t[2]=r*a[2],t[3]=u*a[3],t[4]=u*a[4],t[5]=u*a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t},n.fromTranslation=function(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=1,t[5]=0,t[6]=a[0],t[7]=a[1],t[8]=1,t},n.fromRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=n,t[2]=0,t[3]=-n,t[4]=r,t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromScaling=function(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=0,t[4]=a[1],t[5]=0,t[6]=0,t[7]=0,t[8]=1,t},n.fromMat2d=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=0,t[3]=a[2],t[4]=a[3],t[5]=0,t[6]=a[4],t[7]=a[5],t[8]=1,t},n.fromQuat=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=n+n,i=r+r,c=u+u,s=n*e,M=r*e,h=r*i,f=u*e,b=u*i,l=u*c,m=o*e,v=o*i,E=o*c;return t[0]=1-h-l,t[3]=M-E,t[6]=f+v,t[1]=M+E,t[4]=1-s-l,t[7]=b-m,t[2]=f-v,t[5]=b+m,t[8]=1-s-h,t},n.normalFromMat4=function(t,a){var n=a[0],r=a[1],u=a[2],o=a[3],e=a[4],i=a[5],c=a[6],s=a[7],M=a[8],h=a[9],f=a[10],b=a[11],l=a[12],m=a[13],v=a[14],E=a[15],P=n*i-r*e,S=n*c-u*e,A=n*s-o*e,x=r*c-u*i,d=r*s-o*i,I=u*s-o*c,L=M*m-h*l,N=M*v-f*l,O=M*E-b*l,R=h*v-f*m,p=h*E-b*m,Y=f*E-b*v,y=P*Y-S*p+A*R+x*O-d*N+I*L;return y?(y=1/y,t[0]=(i*Y-c*p+s*R)*y,t[1]=(c*O-e*Y-s*N)*y,t[2]=(e*p-i*O+s*L)*y,t[3]=(u*p-r*Y-o*R)*y,t[4]=(n*Y-u*O+o*N)*y,t[5]=(r*O-n*p-o*L)*y,t[6]=(m*I-v*d+E*x)*y,t[7]=(v*A-l*I-E*S)*y,t[8]=(l*d-m*A+E*P)*y,t):null},n.projection=function(t,a,n){return t[0]=2/a,t[1]=0,t[2]=0,t[3]=0,t[4]=-2/n,t[5]=0,t[6]=-1,t[7]=1,t[8]=1,t},n.str=function(t){return\"mat3(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\", \"+t[8]+\")\"},n.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8])},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t[8]=a[8]+n[8],t},n.subtract=i,n.multiplyScalar=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t[8]=a[8]*n,t},n.multiplyScalarAndAdd=function(t,a,n,r){return t[0]=a[0]+n[0]*r,t[1]=a[1]+n[1]*r,t[2]=a[2]+n[2]*r,t[3]=a[3]+n[3]*r,t[4]=a[4]+n[4]*r,t[5]=a[5]+n[5]*r,t[6]=a[6]+n[6]*r,t[7]=a[7]+n[7]*r,t[8]=a[8]+n[8]*r,t},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]&&t[8]===a[8]},n.equals=function(t,a){var n=t[0],r=t[1],u=t[2],e=t[3],i=t[4],c=t[5],s=t[6],M=t[7],h=t[8],f=a[0],b=a[1],l=a[2],m=a[3],v=a[4],E=a[5],P=a[6],S=a[7],A=a[8];return Math.abs(n-f)<=o.EPSILON*Math.max(1,Math.abs(n),Math.abs(f))&&Math.abs(r-b)<=o.EPSILON*Math.max(1,Math.abs(r),Math.abs(b))&&Math.abs(u-l)<=o.EPSILON*Math.max(1,Math.abs(u),Math.abs(l))&&Math.abs(e-m)<=o.EPSILON*Math.max(1,Math.abs(e),Math.abs(m))&&Math.abs(i-v)<=o.EPSILON*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(c-E)<=o.EPSILON*Math.max(1,Math.abs(c),Math.abs(E))&&Math.abs(s-P)<=o.EPSILON*Math.max(1,Math.abs(s),Math.abs(P))&&Math.abs(M-S)<=o.EPSILON*Math.max(1,Math.abs(M),Math.abs(S))&&Math.abs(h-A)<=o.EPSILON*Math.max(1,Math.abs(h),Math.abs(A))},n.mul=e,n.sub=i},\n \"a427635f32\": function _(t,a,n,r,h){r();const o=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function u(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t}function M(t,a,n){var r=a[0],h=a[1],o=a[2],u=a[3],M=a[4],s=a[5],e=a[6],i=a[7],c=a[8],f=a[9],b=a[10],l=a[11],m=a[12],v=a[13],P=a[14],E=a[15],S=n[0],I=n[1],O=n[2],L=n[3];return t[0]=S*r+I*M+O*c+L*m,t[1]=S*h+I*s+O*f+L*v,t[2]=S*o+I*e+O*b+L*P,t[3]=S*u+I*i+O*l+L*E,S=n[4],I=n[5],O=n[6],L=n[7],t[4]=S*r+I*M+O*c+L*m,t[5]=S*h+I*s+O*f+L*v,t[6]=S*o+I*e+O*b+L*P,t[7]=S*u+I*i+O*l+L*E,S=n[8],I=n[9],O=n[10],L=n[11],t[8]=S*r+I*M+O*c+L*m,t[9]=S*h+I*s+O*f+L*v,t[10]=S*o+I*e+O*b+L*P,t[11]=S*u+I*i+O*l+L*E,S=n[12],I=n[13],O=n[14],L=n[15],t[12]=S*r+I*M+O*c+L*m,t[13]=S*h+I*s+O*f+L*v,t[14]=S*o+I*e+O*b+L*P,t[15]=S*u+I*i+O*l+L*E,t}function s(t,a,n){var r=a[0],h=a[1],o=a[2],u=a[3],M=r+r,s=h+h,e=o+o,i=r*M,c=r*s,f=r*e,b=h*s,l=h*e,m=o*e,v=u*M,P=u*s,E=u*e;return t[0]=1-(b+m),t[1]=c+E,t[2]=f-P,t[3]=0,t[4]=c-E,t[5]=1-(i+m),t[6]=l+v,t[7]=0,t[8]=f+P,t[9]=l-v,t[10]=1-(i+b),t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t}function e(t,a){var n=a[0],r=a[1],h=a[2],o=a[4],u=a[5],M=a[6],s=a[8],e=a[9],i=a[10];return t[0]=Math.hypot(n,r,h),t[1]=Math.hypot(o,u,M),t[2]=Math.hypot(s,e,i),t}function i(t,a,n){return t[0]=a[0]-n[0],t[1]=a[1]-n[1],t[2]=a[2]-n[2],t[3]=a[3]-n[3],t[4]=a[4]-n[4],t[5]=a[5]-n[5],t[6]=a[6]-n[6],t[7]=a[7]-n[7],t[8]=a[8]-n[8],t[9]=a[9]-n[9],t[10]=a[10]-n[10],t[11]=a[11]-n[11],t[12]=a[12]-n[12],t[13]=a[13]-n[13],t[14]=a[14]-n[14],t[15]=a[15]-n[15],t}n.create=function(){var t=new o.ARRAY_TYPE(16);return o.ARRAY_TYPE!=Float32Array&&(t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=0,t[12]=0,t[13]=0,t[14]=0),t[0]=1,t[5]=1,t[10]=1,t[15]=1,t},n.clone=function(t){var a=new o.ARRAY_TYPE(16);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a[8]=t[8],a[9]=t[9],a[10]=t[10],a[11]=t[11],a[12]=t[12],a[13]=t[13],a[14]=t[14],a[15]=t[15],a},n.copy=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[8]=a[8],t[9]=a[9],t[10]=a[10],t[11]=a[11],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15],t},n.fromValues=function(t,a,n,r,h,u,M,s,e,i,c,f,b,l,m,v){var P=new o.ARRAY_TYPE(16);return P[0]=t,P[1]=a,P[2]=n,P[3]=r,P[4]=h,P[5]=u,P[6]=M,P[7]=s,P[8]=e,P[9]=i,P[10]=c,P[11]=f,P[12]=b,P[13]=l,P[14]=m,P[15]=v,P},n.set=function(t,a,n,r,h,o,u,M,s,e,i,c,f,b,l,m,v){return t[0]=a,t[1]=n,t[2]=r,t[3]=h,t[4]=o,t[5]=u,t[6]=M,t[7]=s,t[8]=e,t[9]=i,t[10]=c,t[11]=f,t[12]=b,t[13]=l,t[14]=m,t[15]=v,t},n.identity=u,n.transpose=function(t,a){if(t===a){var n=a[1],r=a[2],h=a[3],o=a[6],u=a[7],M=a[11];t[1]=a[4],t[2]=a[8],t[3]=a[12],t[4]=n,t[6]=a[9],t[7]=a[13],t[8]=r,t[9]=o,t[11]=a[14],t[12]=h,t[13]=u,t[14]=M}else t[0]=a[0],t[1]=a[4],t[2]=a[8],t[3]=a[12],t[4]=a[1],t[5]=a[5],t[6]=a[9],t[7]=a[13],t[8]=a[2],t[9]=a[6],t[10]=a[10],t[11]=a[14],t[12]=a[3],t[13]=a[7],t[14]=a[11],t[15]=a[15];return t},n.invert=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=a[4],M=a[5],s=a[6],e=a[7],i=a[8],c=a[9],f=a[10],b=a[11],l=a[12],m=a[13],v=a[14],P=a[15],E=n*M-r*u,S=n*s-h*u,I=n*e-o*u,O=r*s-h*M,L=r*e-o*M,N=h*e-o*s,p=i*m-c*l,R=i*v-f*l,x=i*P-b*l,A=c*v-f*m,y=c*P-b*m,Y=f*P-b*v,g=E*Y-S*y+I*A+O*x-L*R+N*p;return g?(g=1/g,t[0]=(M*Y-s*y+e*A)*g,t[1]=(h*y-r*Y-o*A)*g,t[2]=(m*N-v*L+P*O)*g,t[3]=(f*L-c*N-b*O)*g,t[4]=(s*x-u*Y-e*R)*g,t[5]=(n*Y-h*x+o*R)*g,t[6]=(v*I-l*N-P*S)*g,t[7]=(i*N-f*I+b*S)*g,t[8]=(u*y-M*x+e*p)*g,t[9]=(r*x-n*y-o*p)*g,t[10]=(l*L-m*I+P*E)*g,t[11]=(c*I-i*L-b*E)*g,t[12]=(M*R-u*A-s*p)*g,t[13]=(n*A-r*R+h*p)*g,t[14]=(m*S-l*O-v*E)*g,t[15]=(i*O-c*S+f*E)*g,t):null},n.adjoint=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=a[4],M=a[5],s=a[6],e=a[7],i=a[8],c=a[9],f=a[10],b=a[11],l=a[12],m=a[13],v=a[14],P=a[15];return t[0]=M*(f*P-b*v)-c*(s*P-e*v)+m*(s*b-e*f),t[1]=-(r*(f*P-b*v)-c*(h*P-o*v)+m*(h*b-o*f)),t[2]=r*(s*P-e*v)-M*(h*P-o*v)+m*(h*e-o*s),t[3]=-(r*(s*b-e*f)-M*(h*b-o*f)+c*(h*e-o*s)),t[4]=-(u*(f*P-b*v)-i*(s*P-e*v)+l*(s*b-e*f)),t[5]=n*(f*P-b*v)-i*(h*P-o*v)+l*(h*b-o*f),t[6]=-(n*(s*P-e*v)-u*(h*P-o*v)+l*(h*e-o*s)),t[7]=n*(s*b-e*f)-u*(h*b-o*f)+i*(h*e-o*s),t[8]=u*(c*P-b*m)-i*(M*P-e*m)+l*(M*b-e*c),t[9]=-(n*(c*P-b*m)-i*(r*P-o*m)+l*(r*b-o*c)),t[10]=n*(M*P-e*m)-u*(r*P-o*m)+l*(r*e-o*M),t[11]=-(n*(M*b-e*c)-u*(r*b-o*c)+i*(r*e-o*M)),t[12]=-(u*(c*v-f*m)-i*(M*v-s*m)+l*(M*f-s*c)),t[13]=n*(c*v-f*m)-i*(r*v-h*m)+l*(r*f-h*c),t[14]=-(n*(M*v-s*m)-u*(r*v-h*m)+l*(r*s-h*M)),t[15]=n*(M*f-s*c)-u*(r*f-h*c)+i*(r*s-h*M),t},n.determinant=function(t){var a=t[0],n=t[1],r=t[2],h=t[3],o=t[4],u=t[5],M=t[6],s=t[7],e=t[8],i=t[9],c=t[10],f=t[11],b=t[12],l=t[13],m=t[14],v=t[15];return(a*u-n*o)*(c*v-f*m)-(a*M-r*o)*(i*v-f*l)+(a*s-h*o)*(i*m-c*l)+(n*M-r*u)*(e*v-f*b)-(n*s-h*u)*(e*m-c*b)+(r*s-h*M)*(e*l-i*b)},n.multiply=M,n.translate=function(t,a,n){var r,h,o,u,M,s,e,i,c,f,b,l,m=n[0],v=n[1],P=n[2];return a===t?(t[12]=a[0]*m+a[4]*v+a[8]*P+a[12],t[13]=a[1]*m+a[5]*v+a[9]*P+a[13],t[14]=a[2]*m+a[6]*v+a[10]*P+a[14],t[15]=a[3]*m+a[7]*v+a[11]*P+a[15]):(r=a[0],h=a[1],o=a[2],u=a[3],M=a[4],s=a[5],e=a[6],i=a[7],c=a[8],f=a[9],b=a[10],l=a[11],t[0]=r,t[1]=h,t[2]=o,t[3]=u,t[4]=M,t[5]=s,t[6]=e,t[7]=i,t[8]=c,t[9]=f,t[10]=b,t[11]=l,t[12]=r*m+M*v+c*P+a[12],t[13]=h*m+s*v+f*P+a[13],t[14]=o*m+e*v+b*P+a[14],t[15]=u*m+i*v+l*P+a[15]),t},n.scale=function(t,a,n){var r=n[0],h=n[1],o=n[2];return t[0]=a[0]*r,t[1]=a[1]*r,t[2]=a[2]*r,t[3]=a[3]*r,t[4]=a[4]*h,t[5]=a[5]*h,t[6]=a[6]*h,t[7]=a[7]*h,t[8]=a[8]*o,t[9]=a[9]*o,t[10]=a[10]*o,t[11]=a[11]*o,t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15],t},n.rotate=function(t,a,n,r){var h,u,M,s,e,i,c,f,b,l,m,v,P,E,S,I,O,L,N,p,R,x,A,y,Y=r[0],g=r[1],T=r[2],d=Math.hypot(Y,g,T);return d<o.EPSILON?null:(Y*=d=1/d,g*=d,T*=d,h=Math.sin(n),M=1-(u=Math.cos(n)),s=a[0],e=a[1],i=a[2],c=a[3],f=a[4],b=a[5],l=a[6],m=a[7],v=a[8],P=a[9],E=a[10],S=a[11],I=Y*Y*M+u,O=g*Y*M+T*h,L=T*Y*M-g*h,N=Y*g*M-T*h,p=g*g*M+u,R=T*g*M+Y*h,x=Y*T*M+g*h,A=g*T*M-Y*h,y=T*T*M+u,t[0]=s*I+f*O+v*L,t[1]=e*I+b*O+P*L,t[2]=i*I+l*O+E*L,t[3]=c*I+m*O+S*L,t[4]=s*N+f*p+v*R,t[5]=e*N+b*p+P*R,t[6]=i*N+l*p+E*R,t[7]=c*N+m*p+S*R,t[8]=s*x+f*A+v*y,t[9]=e*x+b*A+P*y,t[10]=i*x+l*A+E*y,t[11]=c*x+m*A+S*y,a!==t&&(t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t)},n.rotateX=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[4],u=a[5],M=a[6],s=a[7],e=a[8],i=a[9],c=a[10],f=a[11];return a!==t&&(t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[4]=o*h+e*r,t[5]=u*h+i*r,t[6]=M*h+c*r,t[7]=s*h+f*r,t[8]=e*h-o*r,t[9]=i*h-u*r,t[10]=c*h-M*r,t[11]=f*h-s*r,t},n.rotateY=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[0],u=a[1],M=a[2],s=a[3],e=a[8],i=a[9],c=a[10],f=a[11];return a!==t&&(t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[0]=o*h-e*r,t[1]=u*h-i*r,t[2]=M*h-c*r,t[3]=s*h-f*r,t[8]=o*r+e*h,t[9]=u*r+i*h,t[10]=M*r+c*h,t[11]=s*r+f*h,t},n.rotateZ=function(t,a,n){var r=Math.sin(n),h=Math.cos(n),o=a[0],u=a[1],M=a[2],s=a[3],e=a[4],i=a[5],c=a[6],f=a[7];return a!==t&&(t[8]=a[8],t[9]=a[9],t[10]=a[10],t[11]=a[11],t[12]=a[12],t[13]=a[13],t[14]=a[14],t[15]=a[15]),t[0]=o*h+e*r,t[1]=u*h+i*r,t[2]=M*h+c*r,t[3]=s*h+f*r,t[4]=e*h-o*r,t[5]=i*h-u*r,t[6]=c*h-M*r,t[7]=f*h-s*r,t},n.fromTranslation=function(t,a){return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=a[0],t[13]=a[1],t[14]=a[2],t[15]=1,t},n.fromScaling=function(t,a){return t[0]=a[0],t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=a[1],t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=a[2],t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotation=function(t,a,n){var r,h,u,M=n[0],s=n[1],e=n[2],i=Math.hypot(M,s,e);return i<o.EPSILON?null:(M*=i=1/i,s*=i,e*=i,r=Math.sin(a),u=1-(h=Math.cos(a)),t[0]=M*M*u+h,t[1]=s*M*u+e*r,t[2]=e*M*u-s*r,t[3]=0,t[4]=M*s*u-e*r,t[5]=s*s*u+h,t[6]=e*s*u+M*r,t[7]=0,t[8]=M*e*u+s*r,t[9]=s*e*u-M*r,t[10]=e*e*u+h,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t)},n.fromXRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=1,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=r,t[6]=n,t[7]=0,t[8]=0,t[9]=-n,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromYRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=0,t[2]=-n,t[3]=0,t[4]=0,t[5]=1,t[6]=0,t[7]=0,t[8]=n,t[9]=0,t[10]=r,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromZRotation=function(t,a){var n=Math.sin(a),r=Math.cos(a);return t[0]=r,t[1]=n,t[2]=0,t[3]=0,t[4]=-n,t[5]=r,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=1,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.fromRotationTranslation=s,n.fromQuat2=function(t,a){var n=new o.ARRAY_TYPE(3),r=-a[0],h=-a[1],u=-a[2],M=a[3],e=a[4],i=a[5],c=a[6],f=a[7],b=r*r+h*h+u*u+M*M;return b>0?(n[0]=2*(e*M+f*r+i*u-c*h)/b,n[1]=2*(i*M+f*h+c*r-e*u)/b,n[2]=2*(c*M+f*u+e*h-i*r)/b):(n[0]=2*(e*M+f*r+i*u-c*h),n[1]=2*(i*M+f*h+c*r-e*u),n[2]=2*(c*M+f*u+e*h-i*r)),s(t,a,n),t},n.getTranslation=function(t,a){return t[0]=a[12],t[1]=a[13],t[2]=a[14],t},n.getScaling=e,n.getRotation=function(t,a){var n=new o.ARRAY_TYPE(3);e(n,a);var r=1/n[0],h=1/n[1],u=1/n[2],M=a[0]*r,s=a[1]*h,i=a[2]*u,c=a[4]*r,f=a[5]*h,b=a[6]*u,l=a[8]*r,m=a[9]*h,v=a[10]*u,P=M+f+v,E=0;return P>0?(E=2*Math.sqrt(P+1),t[3]=.25*E,t[0]=(b-m)/E,t[1]=(l-i)/E,t[2]=(s-c)/E):M>f&&M>v?(E=2*Math.sqrt(1+M-f-v),t[3]=(b-m)/E,t[0]=.25*E,t[1]=(s+c)/E,t[2]=(l+i)/E):f>v?(E=2*Math.sqrt(1+f-M-v),t[3]=(l-i)/E,t[0]=(s+c)/E,t[1]=.25*E,t[2]=(b+m)/E):(E=2*Math.sqrt(1+v-M-f),t[3]=(s-c)/E,t[0]=(l+i)/E,t[1]=(b+m)/E,t[2]=.25*E),t},n.fromRotationTranslationScale=function(t,a,n,r){var h=a[0],o=a[1],u=a[2],M=a[3],s=h+h,e=o+o,i=u+u,c=h*s,f=h*e,b=h*i,l=o*e,m=o*i,v=u*i,P=M*s,E=M*e,S=M*i,I=r[0],O=r[1],L=r[2];return t[0]=(1-(l+v))*I,t[1]=(f+S)*I,t[2]=(b-E)*I,t[3]=0,t[4]=(f-S)*O,t[5]=(1-(c+v))*O,t[6]=(m+P)*O,t[7]=0,t[8]=(b+E)*L,t[9]=(m-P)*L,t[10]=(1-(c+l))*L,t[11]=0,t[12]=n[0],t[13]=n[1],t[14]=n[2],t[15]=1,t},n.fromRotationTranslationScaleOrigin=function(t,a,n,r,h){var o=a[0],u=a[1],M=a[2],s=a[3],e=o+o,i=u+u,c=M+M,f=o*e,b=o*i,l=o*c,m=u*i,v=u*c,P=M*c,E=s*e,S=s*i,I=s*c,O=r[0],L=r[1],N=r[2],p=h[0],R=h[1],x=h[2],A=(1-(m+P))*O,y=(b+I)*O,Y=(l-S)*O,g=(b-I)*L,T=(1-(f+P))*L,d=(v+E)*L,_=(l+S)*N,q=(v-E)*N,w=(1-(f+m))*N;return t[0]=A,t[1]=y,t[2]=Y,t[3]=0,t[4]=g,t[5]=T,t[6]=d,t[7]=0,t[8]=_,t[9]=q,t[10]=w,t[11]=0,t[12]=n[0]+p-(A*p+g*R+_*x),t[13]=n[1]+R-(y*p+T*R+q*x),t[14]=n[2]+x-(Y*p+d*R+w*x),t[15]=1,t},n.fromQuat=function(t,a){var n=a[0],r=a[1],h=a[2],o=a[3],u=n+n,M=r+r,s=h+h,e=n*u,i=r*u,c=r*M,f=h*u,b=h*M,l=h*s,m=o*u,v=o*M,P=o*s;return t[0]=1-c-l,t[1]=i+P,t[2]=f-v,t[3]=0,t[4]=i-P,t[5]=1-e-l,t[6]=b+m,t[7]=0,t[8]=f+v,t[9]=b-m,t[10]=1-e-c,t[11]=0,t[12]=0,t[13]=0,t[14]=0,t[15]=1,t},n.frustum=function(t,a,n,r,h,o,u){var M=1/(n-a),s=1/(h-r),e=1/(o-u);return t[0]=2*o*M,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=2*o*s,t[6]=0,t[7]=0,t[8]=(n+a)*M,t[9]=(h+r)*s,t[10]=(u+o)*e,t[11]=-1,t[12]=0,t[13]=0,t[14]=u*o*2*e,t[15]=0,t},n.perspective=function(t,a,n,r,h){var o,u=1/Math.tan(a/2);return t[0]=u/n,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=u,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[11]=-1,t[12]=0,t[13]=0,t[15]=0,null!=h&&h!==1/0?(o=1/(r-h),t[10]=(h+r)*o,t[14]=2*h*r*o):(t[10]=-1,t[14]=-2*r),t},n.perspectiveFromFieldOfView=function(t,a,n,r){var h=Math.tan(a.upDegrees*Math.PI/180),o=Math.tan(a.downDegrees*Math.PI/180),u=Math.tan(a.leftDegrees*Math.PI/180),M=Math.tan(a.rightDegrees*Math.PI/180),s=2/(u+M),e=2/(h+o);return t[0]=s,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=e,t[6]=0,t[7]=0,t[8]=-(u-M)*s*.5,t[9]=(h-o)*e*.5,t[10]=r/(n-r),t[11]=-1,t[12]=0,t[13]=0,t[14]=r*n/(n-r),t[15]=0,t},n.ortho=function(t,a,n,r,h,o,u){var M=1/(a-n),s=1/(r-h),e=1/(o-u);return t[0]=-2*M,t[1]=0,t[2]=0,t[3]=0,t[4]=0,t[5]=-2*s,t[6]=0,t[7]=0,t[8]=0,t[9]=0,t[10]=2*e,t[11]=0,t[12]=(a+n)*M,t[13]=(h+r)*s,t[14]=(u+o)*e,t[15]=1,t},n.lookAt=function(t,a,n,r){var h,M,s,e,i,c,f,b,l,m,v=a[0],P=a[1],E=a[2],S=r[0],I=r[1],O=r[2],L=n[0],N=n[1],p=n[2];return Math.abs(v-L)<o.EPSILON&&Math.abs(P-N)<o.EPSILON&&Math.abs(E-p)<o.EPSILON?u(t):(f=v-L,b=P-N,l=E-p,h=I*(l*=m=1/Math.hypot(f,b,l))-O*(b*=m),M=O*(f*=m)-S*l,s=S*b-I*f,(m=Math.hypot(h,M,s))?(h*=m=1/m,M*=m,s*=m):(h=0,M=0,s=0),e=b*s-l*M,i=l*h-f*s,c=f*M-b*h,(m=Math.hypot(e,i,c))?(e*=m=1/m,i*=m,c*=m):(e=0,i=0,c=0),t[0]=h,t[1]=e,t[2]=f,t[3]=0,t[4]=M,t[5]=i,t[6]=b,t[7]=0,t[8]=s,t[9]=c,t[10]=l,t[11]=0,t[12]=-(h*v+M*P+s*E),t[13]=-(e*v+i*P+c*E),t[14]=-(f*v+b*P+l*E),t[15]=1,t)},n.targetTo=function(t,a,n,r){var h=a[0],o=a[1],u=a[2],M=r[0],s=r[1],e=r[2],i=h-n[0],c=o-n[1],f=u-n[2],b=i*i+c*c+f*f;b>0&&(i*=b=1/Math.sqrt(b),c*=b,f*=b);var l=s*f-e*c,m=e*i-M*f,v=M*c-s*i;return(b=l*l+m*m+v*v)>0&&(l*=b=1/Math.sqrt(b),m*=b,v*=b),t[0]=l,t[1]=m,t[2]=v,t[3]=0,t[4]=c*v-f*m,t[5]=f*l-i*v,t[6]=i*m-c*l,t[7]=0,t[8]=i,t[9]=c,t[10]=f,t[11]=0,t[12]=h,t[13]=o,t[14]=u,t[15]=1,t},n.str=function(t){return\"mat4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\", \"+t[8]+\", \"+t[9]+\", \"+t[10]+\", \"+t[11]+\", \"+t[12]+\", \"+t[13]+\", \"+t[14]+\", \"+t[15]+\")\"},n.frob=function(t){return Math.hypot(t[0],t[1],t[2],t[3],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14],t[15])},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t[8]=a[8]+n[8],t[9]=a[9]+n[9],t[10]=a[10]+n[10],t[11]=a[11]+n[11],t[12]=a[12]+n[12],t[13]=a[13]+n[13],t[14]=a[14]+n[14],t[15]=a[15]+n[15],t},n.subtract=i,n.multiplyScalar=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t[8]=a[8]*n,t[9]=a[9]*n,t[10]=a[10]*n,t[11]=a[11]*n,t[12]=a[12]*n,t[13]=a[13]*n,t[14]=a[14]*n,t[15]=a[15]*n,t},n.multiplyScalarAndAdd=function(t,a,n,r){return t[0]=a[0]+n[0]*r,t[1]=a[1]+n[1]*r,t[2]=a[2]+n[2]*r,t[3]=a[3]+n[3]*r,t[4]=a[4]+n[4]*r,t[5]=a[5]+n[5]*r,t[6]=a[6]+n[6]*r,t[7]=a[7]+n[7]*r,t[8]=a[8]+n[8]*r,t[9]=a[9]+n[9]*r,t[10]=a[10]+n[10]*r,t[11]=a[11]+n[11]*r,t[12]=a[12]+n[12]*r,t[13]=a[13]+n[13]*r,t[14]=a[14]+n[14]*r,t[15]=a[15]+n[15]*r,t},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]&&t[8]===a[8]&&t[9]===a[9]&&t[10]===a[10]&&t[11]===a[11]&&t[12]===a[12]&&t[13]===a[13]&&t[14]===a[14]&&t[15]===a[15]},n.equals=function(t,a){var n=t[0],r=t[1],h=t[2],u=t[3],M=t[4],s=t[5],e=t[6],i=t[7],c=t[8],f=t[9],b=t[10],l=t[11],m=t[12],v=t[13],P=t[14],E=t[15],S=a[0],I=a[1],O=a[2],L=a[3],N=a[4],p=a[5],R=a[6],x=a[7],A=a[8],y=a[9],Y=a[10],g=a[11],T=a[12],d=a[13],_=a[14],q=a[15];return Math.abs(n-S)<=o.EPSILON*Math.max(1,Math.abs(n),Math.abs(S))&&Math.abs(r-I)<=o.EPSILON*Math.max(1,Math.abs(r),Math.abs(I))&&Math.abs(h-O)<=o.EPSILON*Math.max(1,Math.abs(h),Math.abs(O))&&Math.abs(u-L)<=o.EPSILON*Math.max(1,Math.abs(u),Math.abs(L))&&Math.abs(M-N)<=o.EPSILON*Math.max(1,Math.abs(M),Math.abs(N))&&Math.abs(s-p)<=o.EPSILON*Math.max(1,Math.abs(s),Math.abs(p))&&Math.abs(e-R)<=o.EPSILON*Math.max(1,Math.abs(e),Math.abs(R))&&Math.abs(i-x)<=o.EPSILON*Math.max(1,Math.abs(i),Math.abs(x))&&Math.abs(c-A)<=o.EPSILON*Math.max(1,Math.abs(c),Math.abs(A))&&Math.abs(f-y)<=o.EPSILON*Math.max(1,Math.abs(f),Math.abs(y))&&Math.abs(b-Y)<=o.EPSILON*Math.max(1,Math.abs(b),Math.abs(Y))&&Math.abs(l-g)<=o.EPSILON*Math.max(1,Math.abs(l),Math.abs(g))&&Math.abs(m-T)<=o.EPSILON*Math.max(1,Math.abs(m),Math.abs(T))&&Math.abs(v-d)<=o.EPSILON*Math.max(1,Math.abs(v),Math.abs(d))&&Math.abs(P-_)<=o.EPSILON*Math.max(1,Math.abs(P),Math.abs(_))&&Math.abs(E-q)<=o.EPSILON*Math.max(1,Math.abs(E),Math.abs(q))},n.mul=M,n.sub=i},\n \"eb06fc032a\": function _(t,a,r,n,e){n();const o=t(\"tslib\"),s=o.__importStar(t(\"68ca94c15c\")),u=o.__importStar(t(\"0285c50a7e\")),c=o.__importStar(t(\"2c5eb22089\")),i=o.__importStar(t(\"c1aa33d719\"));function h(){var t=new s.ARRAY_TYPE(4);return s.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t[3]=1,t}function M(t,a,r){r*=.5;var n=Math.sin(r);return t[0]=n*a[0],t[1]=n*a[1],t[2]=n*a[2],t[3]=Math.cos(r),t}function l(t,a,r){var n=a[0],e=a[1],o=a[2],s=a[3],u=r[0],c=r[1],i=r[2],h=r[3];return t[0]=n*h+s*u+e*i-o*c,t[1]=e*h+s*c+o*u-n*i,t[2]=o*h+s*i+n*c-e*u,t[3]=s*h-n*u-e*c-o*i,t}function f(t,a){var r=a[0],n=a[1],e=a[2],o=a[3],s=Math.sqrt(r*r+n*n+e*e),u=Math.exp(o),c=s>0?u*Math.sin(s)/s:0;return t[0]=r*c,t[1]=n*c,t[2]=e*c,t[3]=u*Math.cos(s),t}function v(t,a){var r=a[0],n=a[1],e=a[2],o=a[3],s=Math.sqrt(r*r+n*n+e*e),u=s>0?Math.atan2(s,o)/s:0;return t[0]=r*u,t[1]=n*u,t[2]=e*u,t[3]=.5*Math.log(r*r+n*n+e*e+o*o),t}function m(t,a,r,n){var e,o,u,c,i,h=a[0],M=a[1],l=a[2],f=a[3],v=r[0],m=r[1],q=r[2],d=r[3];return(o=h*v+M*m+l*q+f*d)<0&&(o=-o,v=-v,m=-m,q=-q,d=-d),1-o>s.EPSILON?(e=Math.acos(o),u=Math.sin(e),c=Math.sin((1-n)*e)/u,i=Math.sin(n*e)/u):(c=1-n,i=n),t[0]=c*h+i*v,t[1]=c*M+i*m,t[2]=c*l+i*q,t[3]=c*f+i*d,t}function q(t,a){var r,n=a[0]+a[4]+a[8];if(n>0)r=Math.sqrt(n+1),t[3]=.5*r,r=.5/r,t[0]=(a[5]-a[7])*r,t[1]=(a[6]-a[2])*r,t[2]=(a[1]-a[3])*r;else{var e=0;a[4]>a[0]&&(e=1),a[8]>a[3*e+e]&&(e=2);var o=(e+1)%3,s=(e+2)%3;r=Math.sqrt(a[3*e+e]-a[3*o+o]-a[3*s+s]+1),t[e]=.5*r,r=.5/r,t[3]=(a[3*o+s]-a[3*s+o])*r,t[o]=(a[3*o+e]+a[3*e+o])*r,t[s]=(a[3*s+e]+a[3*e+s])*r}return t}var d,p,A,g,_,P;r.create=h,r.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t},r.setAxisAngle=M,r.getAxisAngle=function(t,a){var r=2*Math.acos(a[3]),n=Math.sin(r/2);return n>s.EPSILON?(t[0]=a[0]/n,t[1]=a[1]/n,t[2]=a[2]/n):(t[0]=1,t[1]=0,t[2]=0),r},r.getAngle=function(t,a){var n=r.dot(t,a);return Math.acos(2*n*n-1)},r.multiply=l,r.rotateX=function(t,a,r){r*=.5;var n=a[0],e=a[1],o=a[2],s=a[3],u=Math.sin(r),c=Math.cos(r);return t[0]=n*c+s*u,t[1]=e*c+o*u,t[2]=o*c-e*u,t[3]=s*c-n*u,t},r.rotateY=function(t,a,r){r*=.5;var n=a[0],e=a[1],o=a[2],s=a[3],u=Math.sin(r),c=Math.cos(r);return t[0]=n*c-o*u,t[1]=e*c+s*u,t[2]=o*c+n*u,t[3]=s*c-e*u,t},r.rotateZ=function(t,a,r){r*=.5;var n=a[0],e=a[1],o=a[2],s=a[3],u=Math.sin(r),c=Math.cos(r);return t[0]=n*c+e*u,t[1]=e*c-n*u,t[2]=o*c+s*u,t[3]=s*c-o*u,t},r.calculateW=function(t,a){var r=a[0],n=a[1],e=a[2];return t[0]=r,t[1]=n,t[2]=e,t[3]=Math.sqrt(Math.abs(1-r*r-n*n-e*e)),t},r.exp=f,r.ln=v,r.pow=function(t,a,n){return v(t,a),r.scale(t,t,n),f(t,t),t},r.slerp=m,r.random=function(t){var a=s.RANDOM(),r=s.RANDOM(),n=s.RANDOM(),e=Math.sqrt(1-a),o=Math.sqrt(a);return t[0]=e*Math.sin(2*Math.PI*r),t[1]=e*Math.cos(2*Math.PI*r),t[2]=o*Math.sin(2*Math.PI*n),t[3]=o*Math.cos(2*Math.PI*n),t},r.invert=function(t,a){var r=a[0],n=a[1],e=a[2],o=a[3],s=r*r+n*n+e*e+o*o,u=s?1/s:0;return t[0]=-r*u,t[1]=-n*u,t[2]=-e*u,t[3]=o*u,t},r.conjugate=function(t,a){return t[0]=-a[0],t[1]=-a[1],t[2]=-a[2],t[3]=a[3],t},r.fromMat3=q,r.fromEuler=function(t,a,r,n){var e=.5*Math.PI/180;a*=e,r*=e,n*=e;var o=Math.sin(a),s=Math.cos(a),u=Math.sin(r),c=Math.cos(r),i=Math.sin(n),h=Math.cos(n);return t[0]=o*c*h-s*u*i,t[1]=s*u*h+o*c*i,t[2]=s*c*i-o*u*h,t[3]=s*c*h+o*u*i,t},r.str=function(t){return\"quat(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.clone=i.clone,r.fromValues=i.fromValues,r.copy=i.copy,r.set=i.set,r.add=i.add,r.mul=l,r.scale=i.scale,r.dot=i.dot,r.lerp=i.lerp,r.length=i.length,r.len=r.length,r.squaredLength=i.squaredLength,r.sqrLen=r.squaredLength,r.normalize=i.normalize,r.exactEquals=i.exactEquals,r.equals=i.equals,r.rotationTo=(d=c.create(),p=c.fromValues(1,0,0),A=c.fromValues(0,1,0),function(t,a,n){var e=c.dot(a,n);return e<-.999999?(c.cross(d,p,a),c.len(d)<1e-6&&c.cross(d,A,a),c.normalize(d,d),M(t,d,Math.PI),t):e>.999999?(t[0]=0,t[1]=0,t[2]=0,t[3]=1,t):(c.cross(d,a,n),t[0]=d[0],t[1]=d[1],t[2]=d[2],t[3]=1+e,r.normalize(t,t))}),r.sqlerp=(g=h(),_=h(),function(t,a,r,n,e,o){return m(g,a,e,o),m(_,r,n,o),m(t,g,_,2*o*(1-o)),t}),r.setAxes=(P=u.create(),function(t,a,n,e){return P[0]=n[0],P[3]=n[1],P[6]=n[2],P[1]=e[0],P[4]=e[1],P[7]=e[2],P[2]=-a[0],P[5]=-a[1],P[8]=-a[2],r.normalize(t,q(t,P))})},\n \"2c5eb22089\": function _(t,n,r,a,u){a();const e=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function o(){var t=new e.ARRAY_TYPE(3);return e.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0),t}function i(t){var n=t[0],r=t[1],a=t[2];return Math.hypot(n,r,a)}function c(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t}function h(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t}function M(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t}function s(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2];return Math.hypot(r,a,u)}function f(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2];return r*r+a*a+u*u}function v(t){var n=t[0],r=t[1],a=t[2];return n*n+r*r+a*a}function l(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}var m;r.create=o,r.clone=function(t){var n=new e.ARRAY_TYPE(3);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n},r.length=i,r.fromValues=function(t,n,r){var a=new e.ARRAY_TYPE(3);return a[0]=t,a[1]=n,a[2]=r,a},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t},r.set=function(t,n,r,a){return t[0]=n,t[1]=r,t[2]=a,t},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t},r.subtract=c,r.multiply=h,r.divide=M,r.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t},r.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t},r.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t},r.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t},r.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t},r.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t},r.scaleAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t},r.distance=s,r.squaredDistance=f,r.squaredLength=v,r.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t},r.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t},r.normalize=function(t,n){var r=n[0],a=n[1],u=n[2],e=r*r+a*a+u*u;return e>0&&(e=1/Math.sqrt(e)),t[0]=n[0]*e,t[1]=n[1]*e,t[2]=n[2]*e,t},r.dot=l,r.cross=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[0],i=r[1],c=r[2];return t[0]=u*c-e*i,t[1]=e*o-a*c,t[2]=a*i-u*o,t},r.lerp=function(t,n,r,a){var u=n[0],e=n[1],o=n[2];return t[0]=u+a*(r[0]-u),t[1]=e+a*(r[1]-e),t[2]=o+a*(r[2]-o),t},r.hermite=function(t,n,r,a,u,e){var o=e*e,i=o*(2*e-3)+1,c=o*(e-2)+e,h=o*(e-1),M=o*(3-2*e);return t[0]=n[0]*i+r[0]*c+a[0]*h+u[0]*M,t[1]=n[1]*i+r[1]*c+a[1]*h+u[1]*M,t[2]=n[2]*i+r[2]*c+a[2]*h+u[2]*M,t},r.bezier=function(t,n,r,a,u,e){var o=1-e,i=o*o,c=e*e,h=i*o,M=3*e*i,s=3*c*o,f=c*e;return t[0]=n[0]*h+r[0]*M+a[0]*s+u[0]*f,t[1]=n[1]*h+r[1]*M+a[1]*s+u[1]*f,t[2]=n[2]*h+r[2]*M+a[2]*s+u[2]*f,t},r.random=function(t,n){n=n||1;var r=2*e.RANDOM()*Math.PI,a=2*e.RANDOM()-1,u=Math.sqrt(1-a*a)*n;return t[0]=Math.cos(r)*u,t[1]=Math.sin(r)*u,t[2]=a*n,t},r.transformMat4=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[3]*a+r[7]*u+r[11]*e+r[15];return o=o||1,t[0]=(r[0]*a+r[4]*u+r[8]*e+r[12])/o,t[1]=(r[1]*a+r[5]*u+r[9]*e+r[13])/o,t[2]=(r[2]*a+r[6]*u+r[10]*e+r[14])/o,t},r.transformMat3=function(t,n,r){var a=n[0],u=n[1],e=n[2];return t[0]=a*r[0]+u*r[3]+e*r[6],t[1]=a*r[1]+u*r[4]+e*r[7],t[2]=a*r[2]+u*r[5]+e*r[8],t},r.transformQuat=function(t,n,r){var a=r[0],u=r[1],e=r[2],o=r[3],i=n[0],c=n[1],h=n[2],M=u*h-e*c,s=e*i-a*h,f=a*c-u*i,v=u*f-e*s,l=e*M-a*f,m=a*s-u*M,d=2*o;return M*=d,s*=d,f*=d,v*=2,l*=2,m*=2,t[0]=i+M+v,t[1]=c+s+l,t[2]=h+f+m,t},r.rotateX=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[0],e[1]=u[1]*Math.cos(a)-u[2]*Math.sin(a),e[2]=u[1]*Math.sin(a)+u[2]*Math.cos(a),t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.rotateY=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[2]*Math.sin(a)+u[0]*Math.cos(a),e[1]=u[1],e[2]=u[2]*Math.cos(a)-u[0]*Math.sin(a),t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.rotateZ=function(t,n,r,a){var u=[],e=[];return u[0]=n[0]-r[0],u[1]=n[1]-r[1],u[2]=n[2]-r[2],e[0]=u[0]*Math.cos(a)-u[1]*Math.sin(a),e[1]=u[0]*Math.sin(a)+u[1]*Math.cos(a),e[2]=u[2],t[0]=e[0]+r[0],t[1]=e[1]+r[1],t[2]=e[2]+r[2],t},r.angle=function(t,n){var r=t[0],a=t[1],u=t[2],e=n[0],o=n[1],i=n[2],c=Math.sqrt(r*r+a*a+u*u)*Math.sqrt(e*e+o*o+i*i),h=c&&l(t,n)/c;return Math.acos(Math.min(Math.max(h,-1),1))},r.zero=function(t){return t[0]=0,t[1]=0,t[2]=0,t},r.str=function(t){return\"vec3(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\")\"},r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]},r.equals=function(t,n){var r=t[0],a=t[1],u=t[2],o=n[0],i=n[1],c=n[2];return Math.abs(r-o)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(o))&&Math.abs(a-i)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(i))&&Math.abs(u-c)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(c))},r.sub=c,r.mul=h,r.div=M,r.dist=s,r.sqrDist=f,r.len=i,r.sqrLen=v,r.forEach=(m=o(),function(t,n,r,a,u,e){var o,i;for(n||(n=3),r||(r=0),i=a?Math.min(a*n+r,t.length):t.length,o=r;o<i;o+=n)m[0]=t[o],m[1]=t[o+1],m[2]=t[o+2],u(m,m,e),t[o]=m[0],t[o+1]=m[1],t[o+2]=m[2];return t})},\n \"c1aa33d719\": function _(t,n,r,a,u){a();const e=t(\"tslib\").__importStar(t(\"68ca94c15c\"));function o(){var t=new e.ARRAY_TYPE(4);return e.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[3]=0),t}function i(t,n,r){return t[0]=n[0]-r[0],t[1]=n[1]-r[1],t[2]=n[2]-r[2],t[3]=n[3]-r[3],t}function c(t,n,r){return t[0]=n[0]*r[0],t[1]=n[1]*r[1],t[2]=n[2]*r[2],t[3]=n[3]*r[3],t}function h(t,n,r){return t[0]=n[0]/r[0],t[1]=n[1]/r[1],t[2]=n[2]/r[2],t[3]=n[3]/r[3],t}function M(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2],e=n[3]-t[3];return Math.hypot(r,a,u,e)}function f(t,n){var r=n[0]-t[0],a=n[1]-t[1],u=n[2]-t[2],e=n[3]-t[3];return r*r+a*a+u*u+e*e}function s(t){var n=t[0],r=t[1],a=t[2],u=t[3];return Math.hypot(n,r,a,u)}function l(t){var n=t[0],r=t[1],a=t[2],u=t[3];return n*n+r*r+a*a+u*u}var m;r.create=o,r.clone=function(t){var n=new e.ARRAY_TYPE(4);return n[0]=t[0],n[1]=t[1],n[2]=t[2],n[3]=t[3],n},r.fromValues=function(t,n,r,a){var u=new e.ARRAY_TYPE(4);return u[0]=t,u[1]=n,u[2]=r,u[3]=a,u},r.copy=function(t,n){return t[0]=n[0],t[1]=n[1],t[2]=n[2],t[3]=n[3],t},r.set=function(t,n,r,a,u){return t[0]=n,t[1]=r,t[2]=a,t[3]=u,t},r.add=function(t,n,r){return t[0]=n[0]+r[0],t[1]=n[1]+r[1],t[2]=n[2]+r[2],t[3]=n[3]+r[3],t},r.subtract=i,r.multiply=c,r.divide=h,r.ceil=function(t,n){return t[0]=Math.ceil(n[0]),t[1]=Math.ceil(n[1]),t[2]=Math.ceil(n[2]),t[3]=Math.ceil(n[3]),t},r.floor=function(t,n){return t[0]=Math.floor(n[0]),t[1]=Math.floor(n[1]),t[2]=Math.floor(n[2]),t[3]=Math.floor(n[3]),t},r.min=function(t,n,r){return t[0]=Math.min(n[0],r[0]),t[1]=Math.min(n[1],r[1]),t[2]=Math.min(n[2],r[2]),t[3]=Math.min(n[3],r[3]),t},r.max=function(t,n,r){return t[0]=Math.max(n[0],r[0]),t[1]=Math.max(n[1],r[1]),t[2]=Math.max(n[2],r[2]),t[3]=Math.max(n[3],r[3]),t},r.round=function(t,n){return t[0]=Math.round(n[0]),t[1]=Math.round(n[1]),t[2]=Math.round(n[2]),t[3]=Math.round(n[3]),t},r.scale=function(t,n,r){return t[0]=n[0]*r,t[1]=n[1]*r,t[2]=n[2]*r,t[3]=n[3]*r,t},r.scaleAndAdd=function(t,n,r,a){return t[0]=n[0]+r[0]*a,t[1]=n[1]+r[1]*a,t[2]=n[2]+r[2]*a,t[3]=n[3]+r[3]*a,t},r.distance=M,r.squaredDistance=f,r.length=s,r.squaredLength=l,r.negate=function(t,n){return t[0]=-n[0],t[1]=-n[1],t[2]=-n[2],t[3]=-n[3],t},r.inverse=function(t,n){return t[0]=1/n[0],t[1]=1/n[1],t[2]=1/n[2],t[3]=1/n[3],t},r.normalize=function(t,n){var r=n[0],a=n[1],u=n[2],e=n[3],o=r*r+a*a+u*u+e*e;return o>0&&(o=1/Math.sqrt(o)),t[0]=r*o,t[1]=a*o,t[2]=u*o,t[3]=e*o,t},r.dot=function(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]+t[3]*n[3]},r.cross=function(t,n,r,a){var u=r[0]*a[1]-r[1]*a[0],e=r[0]*a[2]-r[2]*a[0],o=r[0]*a[3]-r[3]*a[0],i=r[1]*a[2]-r[2]*a[1],c=r[1]*a[3]-r[3]*a[1],h=r[2]*a[3]-r[3]*a[2],M=n[0],f=n[1],s=n[2],l=n[3];return t[0]=f*h-s*c+l*i,t[1]=-M*h+s*o-l*e,t[2]=M*c-f*o+l*u,t[3]=-M*i+f*e-s*u,t},r.lerp=function(t,n,r,a){var u=n[0],e=n[1],o=n[2],i=n[3];return t[0]=u+a*(r[0]-u),t[1]=e+a*(r[1]-e),t[2]=o+a*(r[2]-o),t[3]=i+a*(r[3]-i),t},r.random=function(t,n){var r,a,u,o,i,c;n=n||1;do{i=(r=2*e.RANDOM()-1)*r+(a=2*e.RANDOM()-1)*a}while(i>=1);do{c=(u=2*e.RANDOM()-1)*u+(o=2*e.RANDOM()-1)*o}while(c>=1);var h=Math.sqrt((1-i)/c);return t[0]=n*r,t[1]=n*a,t[2]=n*u*h,t[3]=n*o*h,t},r.transformMat4=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=n[3];return t[0]=r[0]*a+r[4]*u+r[8]*e+r[12]*o,t[1]=r[1]*a+r[5]*u+r[9]*e+r[13]*o,t[2]=r[2]*a+r[6]*u+r[10]*e+r[14]*o,t[3]=r[3]*a+r[7]*u+r[11]*e+r[15]*o,t},r.transformQuat=function(t,n,r){var a=n[0],u=n[1],e=n[2],o=r[0],i=r[1],c=r[2],h=r[3],M=h*a+i*e-c*u,f=h*u+c*a-o*e,s=h*e+o*u-i*a,l=-o*a-i*u-c*e;return t[0]=M*h+l*-o+f*-c-s*-i,t[1]=f*h+l*-i+s*-o-M*-c,t[2]=s*h+l*-c+M*-i-f*-o,t[3]=n[3],t},r.zero=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=0,t},r.str=function(t){return\"vec4(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\")\"},r.exactEquals=function(t,n){return t[0]===n[0]&&t[1]===n[1]&&t[2]===n[2]&&t[3]===n[3]},r.equals=function(t,n){var r=t[0],a=t[1],u=t[2],o=t[3],i=n[0],c=n[1],h=n[2],M=n[3];return Math.abs(r-i)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(i))&&Math.abs(a-c)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(c))&&Math.abs(u-h)<=e.EPSILON*Math.max(1,Math.abs(u),Math.abs(h))&&Math.abs(o-M)<=e.EPSILON*Math.max(1,Math.abs(o),Math.abs(M))},r.sub=i,r.mul=c,r.div=h,r.dist=M,r.sqrDist=f,r.len=s,r.sqrLen=l,r.forEach=(m=o(),function(t,n,r,a,u,e){var o,i;for(n||(n=4),r||(r=0),i=a?Math.min(a*n+r,t.length):t.length,o=r;o<i;o+=n)m[0]=t[o],m[1]=t[o+1],m[2]=t[o+2],m[3]=t[o+3],u(m,m,e),t[o]=m[0],t[o+1]=m[1],t[o+2]=m[2],t[o+3]=m[3];return t})},\n \"277615c682\": function _(t,a,n,r,e){r();const u=t(\"tslib\"),o=u.__importStar(t(\"68ca94c15c\")),i=u.__importStar(t(\"eb06fc032a\")),s=u.__importStar(t(\"a427635f32\"));function c(t,a,n){var r=.5*n[0],e=.5*n[1],u=.5*n[2],o=a[0],i=a[1],s=a[2],c=a[3];return t[0]=o,t[1]=i,t[2]=s,t[3]=c,t[4]=r*c+e*s-u*i,t[5]=e*c+u*o-r*s,t[6]=u*c+r*i-e*o,t[7]=-r*o-e*i-u*s,t}function h(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=a[4],t[5]=a[5],t[6]=a[6],t[7]=a[7],t}function f(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=n[4],s=n[5],c=n[6],h=n[7],f=a[4],M=a[5],b=a[6],l=a[7],v=n[0],m=n[1],R=n[2],A=n[3];return t[0]=r*A+o*v+e*R-u*m,t[1]=e*A+o*m+u*v-r*R,t[2]=u*A+o*R+r*m-e*v,t[3]=o*A-r*v-e*m-u*R,t[4]=r*h+o*i+e*c-u*s+f*A+l*v+M*R-b*m,t[5]=e*h+o*s+u*i-r*c+M*A+l*m+b*v-f*R,t[6]=u*h+o*c+r*s-e*i+b*A+l*R+f*m-M*v,t[7]=o*h-r*i-e*s-u*c+l*A-f*v-M*m-b*R,t}n.create=function(){var t=new o.ARRAY_TYPE(8);return o.ARRAY_TYPE!=Float32Array&&(t[0]=0,t[1]=0,t[2]=0,t[4]=0,t[5]=0,t[6]=0,t[7]=0),t[3]=1,t},n.clone=function(t){var a=new o.ARRAY_TYPE(8);return a[0]=t[0],a[1]=t[1],a[2]=t[2],a[3]=t[3],a[4]=t[4],a[5]=t[5],a[6]=t[6],a[7]=t[7],a},n.fromValues=function(t,a,n,r,e,u,i,s){var c=new o.ARRAY_TYPE(8);return c[0]=t,c[1]=a,c[2]=n,c[3]=r,c[4]=e,c[5]=u,c[6]=i,c[7]=s,c},n.fromRotationTranslationValues=function(t,a,n,r,e,u,i){var s=new o.ARRAY_TYPE(8);s[0]=t,s[1]=a,s[2]=n,s[3]=r;var c=.5*e,h=.5*u,f=.5*i;return s[4]=c*r+h*n-f*a,s[5]=h*r+f*t-c*n,s[6]=f*r+c*a-h*t,s[7]=-c*t-h*a-f*n,s},n.fromRotationTranslation=c,n.fromTranslation=function(t,a){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=.5*a[0],t[5]=.5*a[1],t[6]=.5*a[2],t[7]=0,t},n.fromRotation=function(t,a){return t[0]=a[0],t[1]=a[1],t[2]=a[2],t[3]=a[3],t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.fromMat4=function(t,a){var n=i.create();s.getRotation(n,a);var r=new o.ARRAY_TYPE(3);return s.getTranslation(r,a),c(t,n,r),t},n.copy=h,n.identity=function(t){return t[0]=0,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t[6]=0,t[7]=0,t},n.set=function(t,a,n,r,e,u,o,i,s){return t[0]=a,t[1]=n,t[2]=r,t[3]=e,t[4]=u,t[5]=o,t[6]=i,t[7]=s,t},n.getReal=i.copy,n.getDual=function(t,a){return t[0]=a[4],t[1]=a[5],t[2]=a[6],t[3]=a[7],t},n.setReal=i.copy,n.setDual=function(t,a){return t[4]=a[0],t[5]=a[1],t[6]=a[2],t[7]=a[3],t},n.getTranslation=function(t,a){var n=a[4],r=a[5],e=a[6],u=a[7],o=-a[0],i=-a[1],s=-a[2],c=a[3];return t[0]=2*(n*c+u*o+r*s-e*i),t[1]=2*(r*c+u*i+e*o-n*s),t[2]=2*(e*c+u*s+n*i-r*o),t},n.translate=function(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=.5*n[0],s=.5*n[1],c=.5*n[2],h=a[4],f=a[5],M=a[6],b=a[7];return t[0]=r,t[1]=e,t[2]=u,t[3]=o,t[4]=o*i+e*c-u*s+h,t[5]=o*s+u*i-r*c+f,t[6]=o*c+r*s-e*i+M,t[7]=-r*i-e*s-u*c+b,t},n.rotateX=function(t,a,n){var r=-a[0],e=-a[1],u=-a[2],o=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*o+f*r+c*u-h*e,b=c*o+f*e+h*r-s*u,l=h*o+f*u+s*e-c*r,v=f*o-s*r-c*e-h*u;return i.rotateX(t,a,n),r=t[0],e=t[1],u=t[2],o=t[3],t[4]=M*o+v*r+b*u-l*e,t[5]=b*o+v*e+l*r-M*u,t[6]=l*o+v*u+M*e-b*r,t[7]=v*o-M*r-b*e-l*u,t},n.rotateY=function(t,a,n){var r=-a[0],e=-a[1],u=-a[2],o=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*o+f*r+c*u-h*e,b=c*o+f*e+h*r-s*u,l=h*o+f*u+s*e-c*r,v=f*o-s*r-c*e-h*u;return i.rotateY(t,a,n),r=t[0],e=t[1],u=t[2],o=t[3],t[4]=M*o+v*r+b*u-l*e,t[5]=b*o+v*e+l*r-M*u,t[6]=l*o+v*u+M*e-b*r,t[7]=v*o-M*r-b*e-l*u,t},n.rotateZ=function(t,a,n){var r=-a[0],e=-a[1],u=-a[2],o=a[3],s=a[4],c=a[5],h=a[6],f=a[7],M=s*o+f*r+c*u-h*e,b=c*o+f*e+h*r-s*u,l=h*o+f*u+s*e-c*r,v=f*o-s*r-c*e-h*u;return i.rotateZ(t,a,n),r=t[0],e=t[1],u=t[2],o=t[3],t[4]=M*o+v*r+b*u-l*e,t[5]=b*o+v*e+l*r-M*u,t[6]=l*o+v*u+M*e-b*r,t[7]=v*o-M*r-b*e-l*u,t},n.rotateByQuatAppend=function(t,a,n){var r=n[0],e=n[1],u=n[2],o=n[3],i=a[0],s=a[1],c=a[2],h=a[3];return t[0]=i*o+h*r+s*u-c*e,t[1]=s*o+h*e+c*r-i*u,t[2]=c*o+h*u+i*e-s*r,t[3]=h*o-i*r-s*e-c*u,i=a[4],s=a[5],c=a[6],h=a[7],t[4]=i*o+h*r+s*u-c*e,t[5]=s*o+h*e+c*r-i*u,t[6]=c*o+h*u+i*e-s*r,t[7]=h*o-i*r-s*e-c*u,t},n.rotateByQuatPrepend=function(t,a,n){var r=a[0],e=a[1],u=a[2],o=a[3],i=n[0],s=n[1],c=n[2],h=n[3];return t[0]=r*h+o*i+e*c-u*s,t[1]=e*h+o*s+u*i-r*c,t[2]=u*h+o*c+r*s-e*i,t[3]=o*h-r*i-e*s-u*c,i=n[4],s=n[5],c=n[6],h=n[7],t[4]=r*h+o*i+e*c-u*s,t[5]=e*h+o*s+u*i-r*c,t[6]=u*h+o*c+r*s-e*i,t[7]=o*h-r*i-e*s-u*c,t},n.rotateAroundAxis=function(t,a,n,r){if(Math.abs(r)<o.EPSILON)return h(t,a);var e=Math.hypot(n[0],n[1],n[2]);r*=.5;var u=Math.sin(r),i=u*n[0]/e,s=u*n[1]/e,c=u*n[2]/e,f=Math.cos(r),M=a[0],b=a[1],l=a[2],v=a[3];t[0]=M*f+v*i+b*c-l*s,t[1]=b*f+v*s+l*i-M*c,t[2]=l*f+v*c+M*s-b*i,t[3]=v*f-M*i-b*s-l*c;var m=a[4],R=a[5],A=a[6],E=a[7];return t[4]=m*f+E*i+R*c-A*s,t[5]=R*f+E*s+A*i-m*c,t[6]=A*f+E*c+m*s-R*i,t[7]=E*f-m*i-R*s-A*c,t},n.add=function(t,a,n){return t[0]=a[0]+n[0],t[1]=a[1]+n[1],t[2]=a[2]+n[2],t[3]=a[3]+n[3],t[4]=a[4]+n[4],t[5]=a[5]+n[5],t[6]=a[6]+n[6],t[7]=a[7]+n[7],t},n.multiply=f,n.mul=f,n.scale=function(t,a,n){return t[0]=a[0]*n,t[1]=a[1]*n,t[2]=a[2]*n,t[3]=a[3]*n,t[4]=a[4]*n,t[5]=a[5]*n,t[6]=a[6]*n,t[7]=a[7]*n,t},n.dot=i.dot,n.lerp=function(t,a,r,e){var u=1-e;return n.dot(a,r)<0&&(e=-e),t[0]=a[0]*u+r[0]*e,t[1]=a[1]*u+r[1]*e,t[2]=a[2]*u+r[2]*e,t[3]=a[3]*u+r[3]*e,t[4]=a[4]*u+r[4]*e,t[5]=a[5]*u+r[5]*e,t[6]=a[6]*u+r[6]*e,t[7]=a[7]*u+r[7]*e,t},n.invert=function(t,a){var r=n.squaredLength(a);return t[0]=-a[0]/r,t[1]=-a[1]/r,t[2]=-a[2]/r,t[3]=a[3]/r,t[4]=-a[4]/r,t[5]=-a[5]/r,t[6]=-a[6]/r,t[7]=a[7]/r,t},n.conjugate=function(t,a){return t[0]=-a[0],t[1]=-a[1],t[2]=-a[2],t[3]=a[3],t[4]=-a[4],t[5]=-a[5],t[6]=-a[6],t[7]=a[7],t},n.length=i.length,n.len=n.length,n.squaredLength=i.squaredLength,n.sqrLen=n.squaredLength,n.normalize=function(t,a){var r=n.squaredLength(a);if(r>0){r=Math.sqrt(r);var e=a[0]/r,u=a[1]/r,o=a[2]/r,i=a[3]/r,s=a[4],c=a[5],h=a[6],f=a[7],M=e*s+u*c+o*h+i*f;t[0]=e,t[1]=u,t[2]=o,t[3]=i,t[4]=(s-e*M)/r,t[5]=(c-u*M)/r,t[6]=(h-o*M)/r,t[7]=(f-i*M)/r}return t},n.str=function(t){return\"quat2(\"+t[0]+\", \"+t[1]+\", \"+t[2]+\", \"+t[3]+\", \"+t[4]+\", \"+t[5]+\", \"+t[6]+\", \"+t[7]+\")\"},n.exactEquals=function(t,a){return t[0]===a[0]&&t[1]===a[1]&&t[2]===a[2]&&t[3]===a[3]&&t[4]===a[4]&&t[5]===a[5]&&t[6]===a[6]&&t[7]===a[7]},n.equals=function(t,a){var n=t[0],r=t[1],e=t[2],u=t[3],i=t[4],s=t[5],c=t[6],h=t[7],f=a[0],M=a[1],b=a[2],l=a[3],v=a[4],m=a[5],R=a[6],A=a[7];return Math.abs(n-f)<=o.EPSILON*Math.max(1,Math.abs(n),Math.abs(f))&&Math.abs(r-M)<=o.EPSILON*Math.max(1,Math.abs(r),Math.abs(M))&&Math.abs(e-b)<=o.EPSILON*Math.max(1,Math.abs(e),Math.abs(b))&&Math.abs(u-l)<=o.EPSILON*Math.max(1,Math.abs(u),Math.abs(l))&&Math.abs(i-v)<=o.EPSILON*Math.max(1,Math.abs(i),Math.abs(v))&&Math.abs(s-m)<=o.EPSILON*Math.max(1,Math.abs(s),Math.abs(m))&&Math.abs(c-R)<=o.EPSILON*Math.max(1,Math.abs(c),Math.abs(R))&&Math.abs(h-A)<=o.EPSILON*Math.max(1,Math.abs(h),Math.abs(A))}},\n \"c56d9ff837\": function _(n,t,r,a,u){a();const e=n(\"tslib\").__importStar(n(\"68ca94c15c\"));function o(){var n=new e.ARRAY_TYPE(2);return e.ARRAY_TYPE!=Float32Array&&(n[0]=0,n[1]=0),n}function c(n,t,r){return n[0]=t[0]-r[0],n[1]=t[1]-r[1],n}function i(n,t,r){return n[0]=t[0]*r[0],n[1]=t[1]*r[1],n}function f(n,t,r){return n[0]=t[0]/r[0],n[1]=t[1]/r[1],n}function s(n,t){var r=t[0]-n[0],a=t[1]-n[1];return Math.hypot(r,a)}function h(n,t){var r=t[0]-n[0],a=t[1]-n[1];return r*r+a*a}function M(n){var t=n[0],r=n[1];return Math.hypot(t,r)}function l(n){var t=n[0],r=n[1];return t*t+r*r}var v;r.create=o,r.clone=function(n){var t=new e.ARRAY_TYPE(2);return t[0]=n[0],t[1]=n[1],t},r.fromValues=function(n,t){var r=new e.ARRAY_TYPE(2);return r[0]=n,r[1]=t,r},r.copy=function(n,t){return n[0]=t[0],n[1]=t[1],n},r.set=function(n,t,r){return n[0]=t,n[1]=r,n},r.add=function(n,t,r){return n[0]=t[0]+r[0],n[1]=t[1]+r[1],n},r.subtract=c,r.multiply=i,r.divide=f,r.ceil=function(n,t){return n[0]=Math.ceil(t[0]),n[1]=Math.ceil(t[1]),n},r.floor=function(n,t){return n[0]=Math.floor(t[0]),n[1]=Math.floor(t[1]),n},r.min=function(n,t,r){return n[0]=Math.min(t[0],r[0]),n[1]=Math.min(t[1],r[1]),n},r.max=function(n,t,r){return n[0]=Math.max(t[0],r[0]),n[1]=Math.max(t[1],r[1]),n},r.round=function(n,t){return n[0]=Math.round(t[0]),n[1]=Math.round(t[1]),n},r.scale=function(n,t,r){return n[0]=t[0]*r,n[1]=t[1]*r,n},r.scaleAndAdd=function(n,t,r,a){return n[0]=t[0]+r[0]*a,n[1]=t[1]+r[1]*a,n},r.distance=s,r.squaredDistance=h,r.length=M,r.squaredLength=l,r.negate=function(n,t){return n[0]=-t[0],n[1]=-t[1],n},r.inverse=function(n,t){return n[0]=1/t[0],n[1]=1/t[1],n},r.normalize=function(n,t){var r=t[0],a=t[1],u=r*r+a*a;return u>0&&(u=1/Math.sqrt(u)),n[0]=t[0]*u,n[1]=t[1]*u,n},r.dot=function(n,t){return n[0]*t[0]+n[1]*t[1]},r.cross=function(n,t,r){var a=t[0]*r[1]-t[1]*r[0];return n[0]=n[1]=0,n[2]=a,n},r.lerp=function(n,t,r,a){var u=t[0],e=t[1];return n[0]=u+a*(r[0]-u),n[1]=e+a*(r[1]-e),n},r.random=function(n,t){t=t||1;var r=2*e.RANDOM()*Math.PI;return n[0]=Math.cos(r)*t,n[1]=Math.sin(r)*t,n},r.transformMat2=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[2]*u,n[1]=r[1]*a+r[3]*u,n},r.transformMat2d=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[2]*u+r[4],n[1]=r[1]*a+r[3]*u+r[5],n},r.transformMat3=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[3]*u+r[6],n[1]=r[1]*a+r[4]*u+r[7],n},r.transformMat4=function(n,t,r){var a=t[0],u=t[1];return n[0]=r[0]*a+r[4]*u+r[12],n[1]=r[1]*a+r[5]*u+r[13],n},r.rotate=function(n,t,r,a){var u=t[0]-r[0],e=t[1]-r[1],o=Math.sin(a),c=Math.cos(a);return n[0]=u*c-e*o+r[0],n[1]=u*o+e*c+r[1],n},r.angle=function(n,t){var r=n[0],a=n[1],u=t[0],e=t[1],o=Math.sqrt(r*r+a*a)*Math.sqrt(u*u+e*e),c=o&&(r*u+a*e)/o;return Math.acos(Math.min(Math.max(c,-1),1))},r.zero=function(n){return n[0]=0,n[1]=0,n},r.str=function(n){return\"vec2(\"+n[0]+\", \"+n[1]+\")\"},r.exactEquals=function(n,t){return n[0]===t[0]&&n[1]===t[1]},r.equals=function(n,t){var r=n[0],a=n[1],u=t[0],o=t[1];return Math.abs(r-u)<=e.EPSILON*Math.max(1,Math.abs(r),Math.abs(u))&&Math.abs(a-o)<=e.EPSILON*Math.max(1,Math.abs(a),Math.abs(o))},r.len=M,r.sub=c,r.mul=i,r.div=f,r.dist=s,r.sqrDist=h,r.sqrLen=l,r.forEach=(v=o(),function(n,t,r,a,u,e){var o,c;for(t||(t=2),r||(r=0),c=a?Math.min(a*t+r,n.length):n.length,o=r;o<c;o+=t)v[0]=n[o],v[1]=n[o+1],u(v,v,e),n[o]=v[0],n[o+1]=v[1];return n})},\n \"89262e43a1\": function _(e,t,i,s,n){s();const r=e(\"46fdad9667\"),o=e(\"4eb45e35aa\");class a extends r.AbstractVTKView{connect_signals(){super.connect_signals(),this.connect(this.model.properties.data.change,(()=>{this._vtk_image_data=o.data2VTKImageData(this.model.data),this.invalidate_render()})),this.connect(this.model.properties.colormap.change,(()=>{this.colormap_selector.value=this.model.colormap;const e=new Event(\"change\");this.colormap_selector.dispatchEvent(e)})),this.connect(this.model.properties.shadow.change,(()=>{this.shadow_selector.value=this.model.shadow?\"1\":\"0\";const e=new Event(\"change\");this.shadow_selector.dispatchEvent(e)})),this.connect(this.model.properties.sampling.change,(()=>{this.sampling_slider.value=this.model.sampling.toFixed(2);const e=new Event(\"input\");this.sampling_slider.dispatchEvent(e)})),this.connect(this.model.properties.edge_gradient.change,(()=>{this.edge_gradient_slider.value=this.model.edge_gradient.toFixed(2);const e=new Event(\"input\");this.edge_gradient_slider.dispatchEvent(e)})),this.connect(this.model.properties.rescale.change,(()=>{this._controllerWidget.setRescaleColorMap(this.model.rescale),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.ambient.change,(()=>{this.volume.getProperty().setAmbient(this.model.ambient),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.diffuse.change,(()=>{this.volume.getProperty().setDiffuse(this.model.diffuse),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.specular.change,(()=>{this.volume.getProperty().setSpecular(this.model.specular),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.specular_power.change,(()=>{this.volume.getProperty().setSpecularPower(this.model.specular_power),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.display_volume.change,(()=>{this._set_volume_visibility(this.model.display_volume),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.display_slices.change,(()=>{this._set_slices_visibility(this.model.display_slices),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.slice_i.change,(()=>{void 0!==this.image_actor_i&&(this.image_actor_i.getMapper().setISlice(this.model.slice_i),this._vtk_renwin.getRenderWindow().render())})),this.connect(this.model.properties.slice_j.change,(()=>{void 0!==this.image_actor_j&&(this.image_actor_j.getMapper().setJSlice(this.model.slice_j),this._vtk_renwin.getRenderWindow().render())})),this.connect(this.model.properties.slice_k.change,(()=>{void 0!==this.image_actor_k&&(this.image_actor_k.getMapper().setKSlice(this.model.slice_k),this._vtk_renwin.getRenderWindow().render())})),this.connect(this.model.properties.render_background.change,(()=>{this._vtk_renwin.getRenderer().setBackground(...o.hexToRGB(this.model.render_background)),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.interpolation.change,(()=>{this._set_interpolation(this.model.interpolation),this._vtk_renwin.getRenderWindow().render()})),this.connect(this.model.properties.controller_expanded.change,(()=>{null!=this._controllerWidget&&this._controllerWidget.setExpanded(this.model.controller_expanded)}))}render(){this._vtk_renwin=null,this._orientationWidget=null,this._axes=null,super.render(),this._create_orientation_widget(),this._set_axes(),this.model.camera?this._set_camera_state():this._vtk_renwin.getRenderer().resetCamera(),this._get_camera_state()}invalidate_render(){this._vtk_renwin=null,super.invalidate_render()}init_vtk_renwin(){this._vtk_renwin=o.vtkns.FullScreenRenderWindow.newInstance({rootContainer:this.el,container:this._vtk_container})}plot(){this._controllerWidget=o.vtkns.VolumeController.newInstance({size:[400,150],rescaleColorMap:this.model.rescale}),this._plot_volume(),this._plot_slices(),this._controllerWidget.setupContent(this._vtk_renwin.getRenderWindow(),this.volume,!0),this._controllerWidget.setContainer(this.el),this._controllerWidget.setExpanded(this.model.controller_expanded),this._connect_js_controls(),this._vtk_renwin.getRenderWindow().getInteractor(),this._vtk_renwin.getRenderWindow().getInteractor().setDesiredUpdateRate(45),this._set_volume_visibility(this.model.display_volume),this._set_slices_visibility(this.model.display_slices),this._vtk_renwin.getRenderer().setBackground(...o.hexToRGB(this.model.render_background)),this._set_interpolation(this.model.interpolation),this._set_camera_state()}get vtk_image_data(){return this._vtk_image_data||(this._vtk_image_data=o.data2VTKImageData(this.model.data)),this._vtk_image_data}get volume(){return this._vtk_renwin.getRenderer().getVolumes()[0]}get image_actor_i(){return this._vtk_renwin.getRenderer().getActors()[0]}get image_actor_j(){return this._vtk_renwin.getRenderer().getActors()[1]}get image_actor_k(){return this._vtk_renwin.getRenderer().getActors()[2]}get shadow_selector(){return this.el.querySelector(\".js-shadow\")}get edge_gradient_slider(){return this.el.querySelector(\".js-edge\")}get sampling_slider(){return this.el.querySelector(\".js-spacing\")}get colormap_selector(){return this.el.querySelector(\".js-color-preset\")}_connect_js_controls(){const{el:e}=this._controllerWidget.get(\"el\");if(void 0!==e){e.querySelector(\".js-button\").addEventListener(\"click\",(()=>this.model.controller_expanded=this._controllerWidget.getExpanded()))}this.colormap_selector.addEventListener(\"change\",(()=>{this.model.colormap=this.colormap_selector.value})),this.model.colormap?this.model.properties.colormap.change.emit():this.model.colormap=this.colormap_selector.value,this.shadow_selector.addEventListener(\"change\",(()=>{this.model.shadow=!!Number(this.shadow_selector.value)})),(this.model.shadow=!!Number(this.shadow_selector.value))&&this.model.properties.shadow.change.emit(),this.sampling_slider.addEventListener(\"input\",(()=>{const e=Number(this.sampling_slider.value);Math.abs(this.model.sampling-e)>=.005&&(this.model.sampling=e)})),Math.abs(this.model.sampling-Number(this.shadow_selector.value))>=.005&&this.model.properties.sampling.change.emit(),this.edge_gradient_slider.addEventListener(\"input\",(()=>{const e=Number(this.edge_gradient_slider.value);Math.abs(this.model.edge_gradient-e)>=.005&&(this.model.edge_gradient=e)})),Math.abs(this.model.edge_gradient-Number(this.edge_gradient_slider.value))>=.005&&this.model.properties.edge_gradient.change.emit()}_plot_slices(){const e=this._vtk_image_data,t=o.vtkns.ImageSlice.newInstance(),i=o.vtkns.ImageSlice.newInstance(),s=o.vtkns.ImageSlice.newInstance(),n=o.vtkns.ImageMapper.newInstance(),r=o.vtkns.ImageMapper.newInstance(),a=o.vtkns.ImageMapper.newInstance();n.setInputData(e),n.setISlice(this.model.slice_i),t.setMapper(n),r.setInputData(e),r.setJSlice(this.model.slice_j),i.setMapper(r),a.setInputData(e),a.setKSlice(this.model.slice_k),s.setMapper(a);const l=o.vtkns.PiecewiseFunction.newInstance();l.removeAllPoints(),l.addPoint(0,1);const d=this.volume.getProperty().getRGBTransferFunction(0),c=t.getProperty();i.setProperty(c),s.setProperty(c),c.setRGBTransferFunction(d),c.setScalarOpacity(l);const _=this._vtk_renwin.getRenderer();_.addActor(t),_.addActor(i),_.addActor(s)}_plot_volume(){const e=this.vtk_image_data,t=o.vtkns.Volume.newInstance(),i=o.vtkns.VolumeMapper.newInstance();t.setMapper(i),i.setInputData(e);const s=(e.getPointData().getScalars()||e.getPointData().getArrays()[0]).getRange(),n=o.vtkns.ColorTransferFunction.newInstance();n.onModified((()=>this.model.mapper=o.vtkLutToMapper(n)));const r=o.vtkns.PiecewiseFunction.newInstance(),a=.7*Math.sqrt(e.getSpacing().map((e=>e*e)).reduce(((e,t)=>e+t),0));i.setSampleDistance(a),t.getProperty().setRGBTransferFunction(0,n),t.getProperty().setScalarOpacity(0,r),t.getProperty().setInterpolationTypeToFastLinear(),t.getProperty().setScalarOpacityUnitDistance(0,o.vtkns.BoundingBox.getDiagonalLength(e.getBounds())/Math.max(...e.getDimensions())),t.getProperty().setGradientOpacityMinimumValue(0,0),t.getProperty().setGradientOpacityMaximumValue(0,.05*(s[1]-s[0])),t.getProperty().setShade(this.model.shadow),t.getProperty().setUseGradientOpacity(0,!0),t.getProperty().setGradientOpacityMinimumOpacity(0,0),t.getProperty().setGradientOpacityMaximumOpacity(0,1),t.getProperty().setAmbient(this.model.ambient),t.getProperty().setDiffuse(this.model.diffuse),t.getProperty().setSpecular(this.model.specular),t.getProperty().setSpecularPower(this.model.specular_power),this._vtk_renwin.getRenderer().addVolume(t)}_set_interpolation(e){\"fast_linear\"==e?(this.volume.getProperty().setInterpolationTypeToFastLinear(),this.image_actor_i.getProperty().setInterpolationTypeToLinear()):\"linear\"==e?(this.volume.getProperty().setInterpolationTypeToLinear(),this.image_actor_i.getProperty().setInterpolationTypeToLinear()):(this.volume.getProperty().setInterpolationTypeToNearest(),this.image_actor_i.getProperty().setInterpolationTypeToNearest())}_set_slices_visibility(e){this._vtk_renwin.getRenderer().getActors().map((t=>t.setVisibility(e)))}_set_volume_visibility(e){this.volume.setVisibility(e)}}i.VTKVolumePlotView=a,a.__name__=\"VTKVolumePlotView\";class l extends r.AbstractVTKPlot{constructor(e){super(e)}static init_VTKVolumePlot(){this.prototype.default_view=a,this.define((({Any:e,Array:t,Boolean:i,Int:s,Number:n,String:r,Struct:a})=>({ambient:[n,.2],colormap:[r],data:[e],diffuse:[n,.7],display_slices:[i,!1],display_volume:[i,!0],edge_gradient:[n,.2],interpolation:[o.Interpolation,\"fast_linear\"],mapper:[a({palette:t(r),low:n,high:n})],render_background:[r,\"#52576e\"],rescale:[i,!1],sampling:[n,.4],shadow:[i,!0],slice_i:[s,0],slice_j:[s,0],slice_k:[s,0],specular:[n,.3],specular_power:[n,8],controller_expanded:[i,!0]})))}}i.VTKVolumePlot=l,l.__name__=\"VTKVolumePlot\",l.init_VTKVolumePlot()},\n \"4baab0b7ce\": function _(e,t,n,s,r){s();const i=e(\"tslib\").__importStar(e(\"@bokehjs/core/properties\")),o=e(\"@bokehjs/core/util/object\"),_=e(\"46fdad9667\"),a=e(\"4eb45e35aa\"),h=e(\"11e0707a8f\"),c=\"panel\";class d extends _.AbstractVTKView{initialize(){super.initialize(),this._promises=[],this._renderable=!1,this._arrays={},this._decoded_arrays={},this._pending_arrays={},this.getArray=e=>this._arrays[e]?Promise.resolve(this._arrays[e]):new Promise(((t,n)=>{this._pending_arrays[e]={resolve:t,reject:n}})),this.registerArray=(e,t)=>(this._arrays[e]=t,this._pending_arrays[e]&&this._pending_arrays[e].resolve(t),!0),this._synchronizer_context=a.vtkns.SynchronizableRenderWindow.getSynchronizerContext(c)}connect_signals(){super.connect_signals(),this.connect(this.model.properties.arrays.change,(()=>this._decode_arrays())),this.connect(this.model.properties.scene.change,(()=>{if(this.model.rebuild)this._vtk_renwin=null,this.invalidate_render();else{const e=o.clone(this.model.scene);Promise.all(this._promises).then((()=>{this._sync_plot(e,(()=>{this._on_scene_ready()}))}))}})),this.connect(this.model.properties.one_time_reset.change,(()=>{this._vtk_renwin.getRenderWindow().clearOneTimeUpdaters()}))}init_vtk_renwin(){this._vtk_renwin=h.FullScreenRenderWindowSynchronized.newInstance({rootContainer:this.el,container:this._vtk_container,synchronizerContext:this._synchronizer_context})}plot(){this._vtk_renwin.getRenderWindow().clearOneTimeUpdaters(),this._decode_arrays();const e=o.clone(this.model.scene);Promise.all(this._promises).then((()=>{this._sync_plot(e,(()=>this._on_scene_ready())).then((()=>{this._set_camera_state(),this._get_camera_state()}))}))}_decode_arrays(){const e=new a.vtkns.ThirdParty.JSZip,t=this.model.arrays,n=this.registerArray,s=this.model.arrays_processed,r=this.model;Object.keys(t).forEach((i=>{this._decoded_arrays[i]||(this._decoded_arrays[i]=!0,this._promises.push(function(i){return e.loadAsync(atob(t[i])).then((e=>e.file(\"data/\"+i))).then((e=>e.async(\"arraybuffer\"))).then((e=>n(i,e))).then((()=>{s.push(i),r.properties.arrays_processed.change.emit()}))}(i)))}))}_on_scene_ready(){this._promises.length>0||(this._renderable=!0,this._camera_callbacks.push(this._vtk_renwin.getRenderer().getActiveCamera().onModified((()=>this._vtk_render()))),this._orientationWidget||this._create_orientation_widget(),this._axes||this._set_axes(),this._vtk_renwin.resize(),this._vtk_render())}_sync_plot(e,t){this._renderable=!1,this._promises=[],this._unsubscribe_camera_cb(),this._synchronizer_context.setFetchArrayFunction((e=>Promise.resolve(this._arrays[e])));const n=this._synchronizer_context.getInstance(this.model.scene.dependencies[0].id);return n&&!this._vtk_renwin.getRenderer()&&this._vtk_renwin.getRenderWindow().addRenderer(n),this._vtk_renwin.getRenderWindow().synchronize(e).then(t)}}n.VTKSynchronizedPlotView=d,d.__name__=\"VTKSynchronizedPlotView\";class l extends _.AbstractVTKPlot{constructor(e){super(e),this.outline=a.vtkns.OutlineFilter.newInstance();const t=a.vtkns.Mapper.newInstance();t.setInputConnection(this.outline.getOutputPort()),this.outline_actor=a.vtkns.Actor.newInstance(),this.outline_actor.setMapper(t)}getActors(e){let t=this.renderer_el.getRenderer().getActors();if(e){const n=this.renderer_el.getSynchronizerContext(c);t=t.filter((t=>{const s=n.getInstanceId(t);return!!s&&s.slice(-16)==e.slice(1,17)}))}return t}static init_VTKSynchronizedPlot(){this.prototype.default_view=d,this.define({arrays:[i.Any,{}],arrays_processed:[i.Array,[]],enable_keybindings:[i.Boolean,!1],one_time_reset:[i.Boolean],rebuild:[i.Boolean,!1],scene:[i.Any,{}]}),this.override({height:300,width:300})}}n.VTKSynchronizedPlot=l,l.__name__=\"VTKSynchronizedPlot\",l.__module__=\"panel.models.vtk\",l.init_VTKSynchronizedPlot()},\n \"11e0707a8f\": function _(e,n,o,t,r){t();const i=e(\"4eb45e35aa\");if(i.vtk){const e={containerStyle:null,controlPanelStyle:null,listenWindowResize:!0,resizeCallback:null,controllerVisibility:!0,synchronizerContextName:\"default\"},n={position:\"absolute\",left:\"25px\",top:\"25px\",backgroundColor:\"white\",borderRadius:\"5px\",listStyle:\"none\",padding:\"5px 10px\",margin:\"0\",display:\"block\",border:\"solid 1px black\",maxWidth:\"calc(100vw - 70px)\",maxHeight:\"calc(100vh - 60px)\",overflow:\"auto\"};o.FullScreenRenderWindowSynchronized={newInstance:i.vtk.macro.newInstance(((o,t,r={})=>{Object.assign(t,e,r),i.vtk.macro.obj(o,t),i.vtk.macro.get(o,t,[\"renderWindow\",\"openGLRenderWindow\",\"interactor\",\"rootContainer\",\"container\",\"controlContainer\",\"synchronizerContext\"]),function(e,o){o.renderWindow=i.vtkns.SynchronizableRenderWindow.newInstance({synchronizerContext:o.synchronizerContext}),o.openGLRenderWindow=i.vtkns.OpenGLRenderWindow.newInstance(),o.openGLRenderWindow.setContainer(o.container),o.renderWindow.addView(o.openGLRenderWindow),o.interactor=i.vtkns.RenderWindowInteractor.newInstance(),o.interactor.setInteractorStyle(i.vtkns.InteractorStyleTrackballCamera.newInstance()),o.interactor.setView(o.openGLRenderWindow),o.interactor.initialize(),o.interactor.bindEvents(o.container),e.getRenderer=()=>o.renderWindow.getRenderers()[0],e.removeController=()=>{const e=o.controlContainer;e&&e.parentNode.removeChild(e)},e.setControllerVisibility=e=>{o.controllerVisibility=e,o.controlContainer&&(o.controlContainer.style.display=e?\"block\":\"none\")},e.toggleControllerVisibility=()=>{e.setControllerVisibility(!o.controllerVisibility)},e.addController=t=>{o.controlContainer=document.createElement(\"div\"),i.applyStyle(o.controlContainer,o.controlPanelStyle||n),o.rootContainer.appendChild(o.controlContainer),o.controlContainer.innerHTML=t,e.setControllerVisibility(o.controllerVisibility),o.rootContainer.addEventListener(\"keypress\",(n=>{\"c\"===String.fromCharCode(n.charCode)&&e.toggleControllerVisibility()}))},e.delete=i.vtk.macro.chain(e.setContainer,o.openGLRenderWindow.delete,e.delete),e.resize=()=>{const e=o.container.getBoundingClientRect(),n=window.devicePixelRatio||1;o.openGLRenderWindow.setSize(Math.floor(e.width*n),Math.floor(e.height*n)),o.resizeCallback&&o.resizeCallback(e),o.renderWindow.render()},e.setResizeCallback=n=>{o.resizeCallback=n,e.resize()},o.listenWindowResize&&window.addEventListener(\"resize\",e.resize),e.resize()}(o,t)}))}}},\n }, \"4e90918c0a\", {\"index\":\"4e90918c0a\",\"models/index\":\"7898617fc4\",\"models/ace\":\"be520eff91\",\"models/layout\":\"4c755983eb\",\"models/audio\":\"339f84d639\",\"models/card\":\"c816112d20\",\"models/comm_manager\":\"e552778259\",\"models/tabulator\":\"cd0a5e2f82\",\"models/data\":\"f1971f81bf\",\"models/datetime_picker\":\"6e11b2cfe2\",\"models/deckgl\":\"df2378664f\",\"models/tooltips\":\"6e04fbe567\",\"models/echarts\":\"9d046c4720\",\"models/html\":\"2839081043\",\"models/event-to-object\":\"3329d4aa5b\",\"models/idom\":\"7d45bd3bc4\",\"models/ipywidget\":\"0eae77d68f\",\"models/json\":\"0d30bea0c8\",\"models/file_download\":\"1767172ffa\",\"models/katex\":\"7b859fb3cf\",\"models/location\":\"642aa56b24\",\"models/mathjax\":\"0c21036737\",\"models/perspective\":\"84a772681d\",\"models/player\":\"2e8044c920\",\"models/plotly\":\"c23bb1717d\",\"models/util\":\"990b5dd5c7\",\"models/progress\":\"9f787650b9\",\"models/reactive_html\":\"d536149aaa\",\"models/singleselect\":\"3b85956787\",\"models/speech_to_text\":\"aaa48703af\",\"models/state\":\"bfa46a5f19\",\"models/terminal\":\"91fe88c277\",\"models/text_to_speech\":\"33cd2c254e\",\"models/trend\":\"ded3463d6c\",\"models/vega\":\"4feb5fa522\",\"models/video\":\"ffe54b53c3\",\"models/videostream\":\"e3e9b8e495\",\"models/vtk/index\":\"c51f25e2a7\",\"models/vtk/vtkjs\":\"34fc7779c7\",\"models/vtk/vtklayout\":\"46fdad9667\",\"models/vtk/util\":\"4eb45e35aa\",\"models/vtk/vtkcolorbar\":\"c010237f8b\",\"models/vtk/vtkaxes\":\"db7a0079c0\",\"models/vtk/vtkvolume\":\"89262e43a1\",\"models/vtk/vtksynchronized\":\"4baab0b7ce\",\"models/vtk/panel_fullscreen_renwin_sync\":\"11e0707a8f\"}, {});});\n\n /* END panel.min.js */\n },\n function(Bokeh) {} // ensure no trailing comma for IE\n ];\n\n function run_inline_js() {\n if ((root.Bokeh !== undefined) || (force === true)) {\n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\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 }\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, js_modules, function() {\n console.debug(\"Bokeh: BokehJS plotting callback run at\", now());\n run_inline_js();\n });\n }\n}(window));" }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "\n", "if ((window.PyViz === undefined) || (window.PyViz instanceof HTMLElement)) {\n", " window.PyViz = {comms: {}, comm_status:{}, kernels:{}, receivers: {}, plot_index: []}\n", "}\n", "\n", "\n", " function JupyterCommManager() {\n", " }\n", "\n", " JupyterCommManager.prototype.register_target = function(plot_id, comm_id, msg_handler) {\n", " if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n", " var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n", " comm_manager.register_target(comm_id, function(comm) {\n", " comm.on_msg(msg_handler);\n", " });\n", " } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n", " window.PyViz.kernels[plot_id].registerCommTarget(comm_id, function(comm) {\n", " comm.onMsg = msg_handler;\n", " });\n", " } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n", " google.colab.kernel.comms.registerTarget(comm_id, (comm) => {\n", " var messages = comm.messages[Symbol.asyncIterator]();\n", " function processIteratorResult(result) {\n", " var message = result.value;\n", " console.log(message)\n", " var content = {data: message.data, comm_id};\n", " var buffers = []\n", " for (var buffer of message.buffers || []) {\n", " buffers.push(new DataView(buffer))\n", " }\n", " var metadata = message.metadata || {};\n", " var msg = {content, buffers, metadata}\n", " msg_handler(msg);\n", " return messages.next().then(processIteratorResult);\n", " }\n", " return messages.next().then(processIteratorResult);\n", " })\n", " }\n", " }\n", "\n", " JupyterCommManager.prototype.get_client_comm = function(plot_id, comm_id, msg_handler) {\n", " if (comm_id in window.PyViz.comms) {\n", " return window.PyViz.comms[comm_id];\n", " } else if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n", " var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n", " var comm = comm_manager.new_comm(comm_id, {}, {}, {}, comm_id);\n", " if (msg_handler) {\n", " comm.on_msg(msg_handler);\n", " }\n", " } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n", " var comm = window.PyViz.kernels[plot_id].connectToComm(comm_id);\n", " comm.open();\n", " if (msg_handler) {\n", " comm.onMsg = msg_handler;\n", " }\n", " } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n", " var comm_promise = google.colab.kernel.comms.open(comm_id)\n", " comm_promise.then((comm) => {\n", " window.PyViz.comms[comm_id] = comm;\n", " if (msg_handler) {\n", " var messages = comm.messages[Symbol.asyncIterator]();\n", " function processIteratorResult(result) {\n", " var message = result.value;\n", " var content = {data: message.data};\n", " var metadata = message.metadata || {comm_id};\n", " var msg = {content, metadata}\n", " msg_handler(msg);\n", " return messages.next().then(processIteratorResult);\n", " }\n", " return messages.next().then(processIteratorResult);\n", " }\n", " }) \n", " var sendClosure = (data, metadata, buffers, disposeOnDone) => {\n", " return comm_promise.then((comm) => {\n", " comm.send(data, metadata, buffers, disposeOnDone);\n", " });\n", " };\n", " var comm = {\n", " send: sendClosure\n", " };\n", " }\n", " window.PyViz.comms[comm_id] = comm;\n", " return comm;\n", " }\n", " window.PyViz.comm_manager = new JupyterCommManager();\n", " \n", "\n", "\n", "var JS_MIME_TYPE = 'application/javascript';\n", "var HTML_MIME_TYPE = 'text/html';\n", "var EXEC_MIME_TYPE = 'application/vnd.holoviews_exec.v0+json';\n", "var CLASS_NAME = 'output';\n", "\n", "/**\n", " * Render data to the DOM node\n", " */\n", "function render(props, node) {\n", " var div = document.createElement(\"div\");\n", " var script = document.createElement(\"script\");\n", " node.appendChild(div);\n", " node.appendChild(script);\n", "}\n", "\n", "/**\n", " * Handle when a new output is added\n", " */\n", "function handle_add_output(event, handle) {\n", " var output_area = handle.output_area;\n", " var output = handle.output;\n", " if ((output.data == undefined) || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n", " return\n", " }\n", " var id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n", " var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n", " if (id !== undefined) {\n", " var nchildren = toinsert.length;\n", " var html_node = toinsert[nchildren-1].children[0];\n", " html_node.innerHTML = output.data[HTML_MIME_TYPE];\n", " var scripts = [];\n", " var nodelist = html_node.querySelectorAll(\"script\");\n", " for (var i in nodelist) {\n", " if (nodelist.hasOwnProperty(i)) {\n", " scripts.push(nodelist[i])\n", " }\n", " }\n", "\n", " scripts.forEach( function (oldScript) {\n", " var newScript = document.createElement(\"script\");\n", " var attrs = [];\n", " var nodemap = oldScript.attributes;\n", " for (var j in nodemap) {\n", " if (nodemap.hasOwnProperty(j)) {\n", " attrs.push(nodemap[j])\n", " }\n", " }\n", " attrs.forEach(function(attr) { newScript.setAttribute(attr.name, attr.value) });\n", " newScript.appendChild(document.createTextNode(oldScript.innerHTML));\n", " oldScript.parentNode.replaceChild(newScript, oldScript);\n", " });\n", " if (JS_MIME_TYPE in output.data) {\n", " toinsert[nchildren-1].children[1].textContent = output.data[JS_MIME_TYPE];\n", " }\n", " output_area._hv_plot_id = id;\n", " if ((window.Bokeh !== undefined) && (id in Bokeh.index)) {\n", " window.PyViz.plot_index[id] = Bokeh.index[id];\n", " } else {\n", " window.PyViz.plot_index[id] = null;\n", " }\n", " } else if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n", " var bk_div = document.createElement(\"div\");\n", " bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n", " var script_attrs = bk_div.children[0].attributes;\n", " for (var i = 0; i < script_attrs.length; i++) {\n", " toinsert[toinsert.length - 1].childNodes[1].setAttribute(script_attrs[i].name, script_attrs[i].value);\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", "/**\n", " * Handle when an output is cleared or removed\n", " */\n", "function handle_clear_output(event, handle) {\n", " var id = handle.cell.output_area._hv_plot_id;\n", " var server_id = handle.cell.output_area._bokeh_server_id;\n", " if (((id === undefined) || !(id in PyViz.plot_index)) && (server_id !== undefined)) { return; }\n", " var comm = window.PyViz.comm_manager.get_client_comm(\"hv-extension-comm\", \"hv-extension-comm\", function () {});\n", " if (server_id !== null) {\n", " comm.send({event_type: 'server_delete', 'id': server_id});\n", " return;\n", " } else if (comm !== null) {\n", " comm.send({event_type: 'delete', 'id': id});\n", " }\n", " delete PyViz.plot_index[id];\n", " if ((window.Bokeh !== undefined) & (id in window.Bokeh.index)) {\n", " var doc = window.Bokeh.index[id].model.document\n", " doc.clear();\n", " const i = window.Bokeh.documents.indexOf(doc);\n", " if (i > -1) {\n", " window.Bokeh.documents.splice(i, 1);\n", " }\n", " }\n", "}\n", "\n", "/**\n", " * Handle kernel restart event\n", " */\n", "function handle_kernel_cleanup(event, handle) {\n", " delete PyViz.comms[\"hv-extension-comm\"];\n", " window.PyViz.plot_index = {}\n", "}\n", "\n", "/**\n", " * Handle update_display_data messages\n", " */\n", "function handle_update_output(event, handle) {\n", " handle_clear_output(event, {cell: {output_area: handle.output_area}})\n", " handle_add_output(event, handle)\n", "}\n", "\n", "function register_renderer(events, OutputArea) {\n", " function append_mime(data, metadata, element) {\n", " // create a DOM node to render to\n", " var 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", " var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n", " render(props, toinsert[0]);\n", " element.append(toinsert);\n", " return toinsert\n", " }\n", "\n", " events.on('output_added.OutputArea', handle_add_output);\n", " events.on('output_updated.OutputArea', handle_update_output);\n", " events.on('clear_output.CodeCell', handle_clear_output);\n", " events.on('delete.Cell', handle_clear_output);\n", " events.on('kernel_ready.Kernel', handle_kernel_cleanup);\n", "\n", " OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n", " safe: true,\n", " index: 0\n", " });\n", "}\n", "\n", "if (window.Jupyter !== undefined) {\n", " try {\n", " var events = require('base/js/events');\n", " var OutputArea = require('notebook/js/outputarea').OutputArea;\n", " if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n", " register_renderer(events, OutputArea);\n", " }\n", " } catch(err) {\n", " }\n", "}\n" ], "application/vnd.holoviews_load.v0+json": "\nif ((window.PyViz === undefined) || (window.PyViz instanceof HTMLElement)) {\n window.PyViz = {comms: {}, comm_status:{}, kernels:{}, receivers: {}, plot_index: []}\n}\n\n\n function JupyterCommManager() {\n }\n\n JupyterCommManager.prototype.register_target = function(plot_id, comm_id, msg_handler) {\n if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n comm_manager.register_target(comm_id, function(comm) {\n comm.on_msg(msg_handler);\n });\n } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n window.PyViz.kernels[plot_id].registerCommTarget(comm_id, function(comm) {\n comm.onMsg = msg_handler;\n });\n } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n google.colab.kernel.comms.registerTarget(comm_id, (comm) => {\n var messages = comm.messages[Symbol.asyncIterator]();\n function processIteratorResult(result) {\n var message = result.value;\n console.log(message)\n var content = {data: message.data, comm_id};\n var buffers = []\n for (var buffer of message.buffers || []) {\n buffers.push(new DataView(buffer))\n }\n var metadata = message.metadata || {};\n var msg = {content, buffers, metadata}\n msg_handler(msg);\n return messages.next().then(processIteratorResult);\n }\n return messages.next().then(processIteratorResult);\n })\n }\n }\n\n JupyterCommManager.prototype.get_client_comm = function(plot_id, comm_id, msg_handler) {\n if (comm_id in window.PyViz.comms) {\n return window.PyViz.comms[comm_id];\n } else if (window.comm_manager || ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null))) {\n var comm_manager = window.comm_manager || Jupyter.notebook.kernel.comm_manager;\n var comm = comm_manager.new_comm(comm_id, {}, {}, {}, comm_id);\n if (msg_handler) {\n comm.on_msg(msg_handler);\n }\n } else if ((plot_id in window.PyViz.kernels) && (window.PyViz.kernels[plot_id])) {\n var comm = window.PyViz.kernels[plot_id].connectToComm(comm_id);\n comm.open();\n if (msg_handler) {\n comm.onMsg = msg_handler;\n }\n } else if (typeof google != 'undefined' && google.colab.kernel != null) {\n var comm_promise = google.colab.kernel.comms.open(comm_id)\n comm_promise.then((comm) => {\n window.PyViz.comms[comm_id] = comm;\n if (msg_handler) {\n var messages = comm.messages[Symbol.asyncIterator]();\n function processIteratorResult(result) {\n var message = result.value;\n var content = {data: message.data};\n var metadata = message.metadata || {comm_id};\n var msg = {content, metadata}\n msg_handler(msg);\n return messages.next().then(processIteratorResult);\n }\n return messages.next().then(processIteratorResult);\n }\n }) \n var sendClosure = (data, metadata, buffers, disposeOnDone) => {\n return comm_promise.then((comm) => {\n comm.send(data, metadata, buffers, disposeOnDone);\n });\n };\n var comm = {\n send: sendClosure\n };\n }\n window.PyViz.comms[comm_id] = comm;\n return comm;\n }\n window.PyViz.comm_manager = new JupyterCommManager();\n \n\n\nvar JS_MIME_TYPE = 'application/javascript';\nvar HTML_MIME_TYPE = 'text/html';\nvar EXEC_MIME_TYPE = 'application/vnd.holoviews_exec.v0+json';\nvar CLASS_NAME = 'output';\n\n/**\n * Render data to the DOM node\n */\nfunction render(props, node) {\n var div = document.createElement(\"div\");\n var script = document.createElement(\"script\");\n node.appendChild(div);\n node.appendChild(script);\n}\n\n/**\n * Handle when a new output is added\n */\nfunction handle_add_output(event, handle) {\n var output_area = handle.output_area;\n var output = handle.output;\n if ((output.data == undefined) || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n return\n }\n var id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n if (id !== undefined) {\n var nchildren = toinsert.length;\n var html_node = toinsert[nchildren-1].children[0];\n html_node.innerHTML = output.data[HTML_MIME_TYPE];\n var scripts = [];\n var nodelist = html_node.querySelectorAll(\"script\");\n for (var i in nodelist) {\n if (nodelist.hasOwnProperty(i)) {\n scripts.push(nodelist[i])\n }\n }\n\n scripts.forEach( function (oldScript) {\n var newScript = document.createElement(\"script\");\n var attrs = [];\n var nodemap = oldScript.attributes;\n for (var j in nodemap) {\n if (nodemap.hasOwnProperty(j)) {\n attrs.push(nodemap[j])\n }\n }\n attrs.forEach(function(attr) { newScript.setAttribute(attr.name, attr.value) });\n newScript.appendChild(document.createTextNode(oldScript.innerHTML));\n oldScript.parentNode.replaceChild(newScript, oldScript);\n });\n if (JS_MIME_TYPE in output.data) {\n toinsert[nchildren-1].children[1].textContent = output.data[JS_MIME_TYPE];\n }\n output_area._hv_plot_id = id;\n if ((window.Bokeh !== undefined) && (id in Bokeh.index)) {\n window.PyViz.plot_index[id] = Bokeh.index[id];\n } else {\n window.PyViz.plot_index[id] = null;\n }\n } else if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n var bk_div = document.createElement(\"div\");\n bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n var script_attrs = bk_div.children[0].attributes;\n for (var i = 0; i < script_attrs.length; i++) {\n toinsert[toinsert.length - 1].childNodes[1].setAttribute(script_attrs[i].name, script_attrs[i].value);\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/**\n * Handle when an output is cleared or removed\n */\nfunction handle_clear_output(event, handle) {\n var id = handle.cell.output_area._hv_plot_id;\n var server_id = handle.cell.output_area._bokeh_server_id;\n if (((id === undefined) || !(id in PyViz.plot_index)) && (server_id !== undefined)) { return; }\n var comm = window.PyViz.comm_manager.get_client_comm(\"hv-extension-comm\", \"hv-extension-comm\", function () {});\n if (server_id !== null) {\n comm.send({event_type: 'server_delete', 'id': server_id});\n return;\n } else if (comm !== null) {\n comm.send({event_type: 'delete', 'id': id});\n }\n delete PyViz.plot_index[id];\n if ((window.Bokeh !== undefined) & (id in window.Bokeh.index)) {\n var doc = window.Bokeh.index[id].model.document\n doc.clear();\n const i = window.Bokeh.documents.indexOf(doc);\n if (i > -1) {\n window.Bokeh.documents.splice(i, 1);\n }\n }\n}\n\n/**\n * Handle kernel restart event\n */\nfunction handle_kernel_cleanup(event, handle) {\n delete PyViz.comms[\"hv-extension-comm\"];\n window.PyViz.plot_index = {}\n}\n\n/**\n * Handle update_display_data messages\n */\nfunction handle_update_output(event, handle) {\n handle_clear_output(event, {cell: {output_area: handle.output_area}})\n handle_add_output(event, handle)\n}\n\nfunction register_renderer(events, OutputArea) {\n function append_mime(data, metadata, element) {\n // create a DOM node to render to\n var 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 var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n render(props, toinsert[0]);\n element.append(toinsert);\n return toinsert\n }\n\n events.on('output_added.OutputArea', handle_add_output);\n events.on('output_updated.OutputArea', handle_update_output);\n events.on('clear_output.CodeCell', handle_clear_output);\n events.on('delete.Cell', handle_clear_output);\n events.on('kernel_ready.Kernel', handle_kernel_cleanup);\n\n OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n safe: true,\n index: 0\n });\n}\n\nif (window.Jupyter !== undefined) {\n try {\n var events = require('base/js/events');\n var OutputArea = require('notebook/js/outputarea').OutputArea;\n if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n register_renderer(events, OutputArea);\n }\n } catch(err) {\n }\n}\n" }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", "<div class=\"logo-block\">\n", "<img src='data:image/png;base64,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\n", "roTBs2RqAAAAAElFTkSuQmCC'\n", " style='height:25px; border-radius:12px; display: inline-block; float: left; vertical-align: middle'></img>\n", "\n", "\n", " <img src='data:image/png;base64,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'\n", " style='height:15px; border-radius:12px; display: inline-block; float: left'></img>\n", " \n", "\n", "\n", "\n", "\n", "</div>\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "text/html": [ "\n", " <div class=\"bk-root\">\n", " <a href=\"https://bokeh.org\" target=\"_blank\" class=\"bk-logo bk-logo-small bk-logo-notebook\"></a>\n", " <span id=\"1002\">Loading BokehJS ...</span>\n", " </div>" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "\n", "(function(root) {\n", " function now() {\n", " return new Date();\n", " }\n", "\n", " var 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", " var JS_MIME_TYPE = 'application/javascript';\n", " var HTML_MIME_TYPE = 'text/html';\n", " var EXEC_MIME_TYPE = 'application/vnd.bokehjs_exec.v0+json';\n", " var CLASS_NAME = 'output_bokeh rendered_html';\n", "\n", " /**\n", " * Render data to the DOM node\n", " */\n", " function render(props, node) {\n", " var 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", " var cell = handle.cell;\n", "\n", " var id = cell.output_area._bokeh_element_id;\n", " var server_id = cell.output_area._bokeh_server_id;\n", " // Clean up Bokeh references\n", " if (id != null && id in Bokeh.index) {\n", " Bokeh.index[id].model.document.clear();\n", " delete Bokeh.index[id];\n", " }\n", "\n", " if (server_id !== undefined) {\n", " // Clean up Bokeh references\n", " var cmd = \"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, {\n", " iopub: {\n", " output: function(msg) {\n", " var id = msg.content.text.trim();\n", " if (id in Bokeh.index) {\n", " Bokeh.index[id].model.document.clear();\n", " delete Bokeh.index[id];\n", " }\n", " }\n", " }\n", " });\n", " // Destroy server and session\n", " var cmd = \"import bokeh.io.notebook as ion; ion.destroy_server('\" + server_id + \"')\";\n", " cell.notebook.kernel.execute(cmd);\n", " }\n", " }\n", "\n", " /**\n", " * Handle when a new output is added\n", " */\n", " function handleAddOutput(event, handle) {\n", " var output_area = handle.output_area;\n", " var 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", " var 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", " var bk_div = document.createElement(\"div\");\n", " bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n", " var script_attrs = bk_div.children[0].attributes;\n", " for (var 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", " var 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", " var 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", " var events = require('base/js/events');\n", " var 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", "\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", " var NB_LOAD_WARNING = {'data': {'text/html':\n", " \"<div style='background-color: #fdd'>\\n\"+\n", " \"<p>\\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", " \"</p>\\n\"+\n", " \"<ul>\\n\"+\n", " \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n", " \"<li>use INLINE resources instead, as so:</li>\\n\"+\n", " \"</ul>\\n\"+\n", " \"<code>\\n\"+\n", " \"from bokeh.resources import INLINE\\n\"+\n", " \"output_notebook(resources=INLINE)\\n\"+\n", " \"</code>\\n\"+\n", " \"</div>\"}};\n", "\n", " function display_loaded() {\n", " var el = document.getElementById(\"1002\");\n", " if (el != null) {\n", " el.textContent = \"BokehJS is loading...\";\n", " }\n", " if (root.Bokeh !== undefined) {\n", " if (el != null) {\n", " el.textContent = \"BokehJS \" + root.Bokeh.version + \" successfully loaded.\";\n", " }\n", " } else if (Date.now() < root._bokeh_timeout) {\n", " setTimeout(display_loaded, 100)\n", " }\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", " const hashes = {\"https://cdn.bokeh.org/bokeh/release/bokeh-2.3.3.min.js\": \"dM3QQsP+wXdHg42wTqW85BjZQdLNNIXqlPw/BgKoExPmTG7ZLML4EGqLMfqHT6ON\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.3.3.min.js\": \"8x57I4YuIfu8XyZfFo0XVr2WAT8EK4rh/uDe3wF7YuW2FNUSNEpJbsPaB1nJ2fz2\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.3.3.min.js\": \"3QTqdz9LyAm2i0sG5XTePsHec3UHWwVsrOL68SYRoAXsafvfAyqtQ+h440+qIBhS\"};\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", " if (url in hashes) {\n", " element.crossOrigin = \"anonymous\";\n", " element.integrity = \"sha384-\" + hashes[url];\n", " }\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", " \n", " var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.3.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.3.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.3.3.min.js\", \"https://unpkg.com/@holoviz/panel@0.12.1/dist/panel.min.js\"];\n", " var css_urls = [];\n", " \n", "\n", " var inline_js = [\n", " function(Bokeh) {\n", " Bokeh.set_log_level(\"info\");\n", " },\n", " function(Bokeh) {\n", " \n", " \n", " }\n", " ];\n", "\n", " function run_inline_js() {\n", " \n", " if (root.Bokeh !== undefined || force === true) {\n", " \n", " for (var i = 0; i < inline_js.length; i++) {\n", " inline_js[i].call(root, root.Bokeh);\n", " }\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", " var cell = $(document.getElementById(\"1002\")).parents('.cell').data().cell;\n", " cell.output_area.append_execute_result(NB_LOAD_WARNING)\n", " }\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": "\n(function(root) {\n function now() {\n return new Date();\n }\n\n var 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\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 var NB_LOAD_WARNING = {'data': {'text/html':\n \"<div style='background-color: #fdd'>\\n\"+\n \"<p>\\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 \"</p>\\n\"+\n \"<ul>\\n\"+\n \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n \"<li>use INLINE resources instead, as so:</li>\\n\"+\n \"</ul>\\n\"+\n \"<code>\\n\"+\n \"from bokeh.resources import INLINE\\n\"+\n \"output_notebook(resources=INLINE)\\n\"+\n \"</code>\\n\"+\n \"</div>\"}};\n\n function display_loaded() {\n var el = document.getElementById(\"1002\");\n if (el != null) {\n el.textContent = \"BokehJS is loading...\";\n }\n if (root.Bokeh !== undefined) {\n if (el != null) {\n el.textContent = \"BokehJS \" + root.Bokeh.version + \" successfully loaded.\";\n }\n } else if (Date.now() < root._bokeh_timeout) {\n setTimeout(display_loaded, 100)\n }\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 const hashes = {\"https://cdn.bokeh.org/bokeh/release/bokeh-2.3.3.min.js\": \"dM3QQsP+wXdHg42wTqW85BjZQdLNNIXqlPw/BgKoExPmTG7ZLML4EGqLMfqHT6ON\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.3.3.min.js\": \"8x57I4YuIfu8XyZfFo0XVr2WAT8EK4rh/uDe3wF7YuW2FNUSNEpJbsPaB1nJ2fz2\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.3.3.min.js\": \"3QTqdz9LyAm2i0sG5XTePsHec3UHWwVsrOL68SYRoAXsafvfAyqtQ+h440+qIBhS\"};\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 if (url in hashes) {\n element.crossOrigin = \"anonymous\";\n element.integrity = \"sha384-\" + hashes[url];\n }\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 \n var js_urls = [\"https://cdn.bokeh.org/bokeh/release/bokeh-2.3.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-widgets-2.3.3.min.js\", \"https://cdn.bokeh.org/bokeh/release/bokeh-tables-2.3.3.min.js\", \"https://unpkg.com/@holoviz/panel@0.12.1/dist/panel.min.js\"];\n var css_urls = [];\n \n\n var inline_js = [\n function(Bokeh) {\n Bokeh.set_log_level(\"info\");\n },\n function(Bokeh) {\n \n \n }\n ];\n\n function run_inline_js() {\n \n if (root.Bokeh !== undefined || force === true) {\n \n for (var i = 0; i < inline_js.length; i++) {\n inline_js[i].call(root, root.Bokeh);\n }\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 var cell = $(document.getElementById(\"1002\")).parents('.cell').data().cell;\n cell.output_area.append_execute_result(NB_LOAD_WARNING)\n }\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" } ], "source": [ "import numpy as np\n", "\n", "import cmdstanpy\n", "import arviz as az\n", "\n", "import bebi103\n", "\n", "import iqplot\n", "\n", "import bokeh\n", "colors = bokeh.palettes.d3['Category10'][10]\n", "bokeh.io.output_notebook()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "<hr>\n", "\n", "We will do MCMC on the hierarchical posterior for worm reversal data. As a reminder, the model is\n", "\n", "\\begin{align}\n", "&\\phi \\sim \\text{Beta}(1.1, 1.1), \\\\[1em]\n", "&\\kappa \\sim \\text{HalfNorm}(0, 10), \\\\[1em]\n", "&\\alpha = \\phi \\kappa, \\\\[1em]\n", "&\\beta = (1-\\phi)\\kappa,\\\\[1em]\n", "&\\theta_i \\sim \\text{Beta}(\\alpha, \\beta) \\;\\;\\forall i,\\\\[1em]\n", "&n_i \\sim \\text{Binom}(N_i, \\theta_i)\\;\\;\\forall i. \n", "\\end{align}\n", "\n", "To demonstrate how the hierarchical model works, we will consider the data sets from 2015, 2016, and 2017, and an additional three synthetic experiments that have 14/40, 5/34, and 110/660 reversals, respectively. These three experiments were not actually performed; I am using them here to demonstrate some effects we see in hierarchical models. In particular, the last experiment has many more trials and would dominate pooled data if we were not using a hierarchical model.\n", "\n", "We will not perform prior predictive checks or other diagnostics, but simply demonstrate how a hierarchical model is built using Stan and investigate some of the resulting inferences." ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [], "source": [ "# Data\n", "n = np.array([9, 12, 18, 14, 5, 110])\n", "N = np.array([35, 35, 54, 40, 34, 660])" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Next, as usual, we define our model using Stan.\n", "\n", "```stan\n", "data {\n", " // Number of separate experiments\n", " int K;\n", " \n", " int N[K];\n", " int n[K];\n", "}\n", "\n", "\n", "parameters {\n", " // Hyperparameters\n", " real<lower=0, upper=1> phi;\n", " real<lower=0> kappa;\n", "\n", " // Parameters\n", " real<lower=0, upper=1> theta[K];\n", "}\n", "\n", "\n", "transformed parameters {\n", " // Transformed hyperparameters\n", " real<lower=0> alpha = phi * kappa;\n", " real<lower=0> beta_ = (1 - phi) * kappa;\n", "}\n", "\n", "\n", "model {\n", " // Hyperpriors\n", " phi ~ beta(1.1, 1.1);\n", " kappa ~ normal(0, 10.0);\n", " \n", " // Prior\n", " theta ~ beta(alpha, beta_);\n", " \n", " // Likelihood\n", " n ~ binomial(N, theta);\n", "}\n", "```\n", "\n", "We can compile it and draw samples." ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "name": "stderr", "output_type": "stream", "text": [ "INFO:cmdstanpy:compiling stan file /Users/bois/Dropbox/git/bebi103_course/2022/b/content/lessons/20/worm_hier.stan to exe file /Users/bois/Dropbox/git/bebi103_course/2022/b/content/lessons/20/worm_hier\n", "INFO:cmdstanpy:compiled model executable: /Users/bois/Dropbox/git/bebi103_course/2022/b/content/lessons/20/worm_hier\n", "INFO:cmdstanpy:CmdStan start procesing\n" ] }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "8dc346f80b9c476a9fe00fe53939e7c2", "version_major": 2, "version_minor": 0 }, "text/plain": [ "chain 1 | | 00:00 Status" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "32f2f08a5c2d4b8387fd1ebda8ee0689", "version_major": 2, "version_minor": 0 }, "text/plain": [ "chain 2 | | 00:00 Status" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "93f7519742a04c3ebc946c5eec92dd39", "version_major": 2, "version_minor": 0 }, "text/plain": [ "chain 3 | | 00:00 Status" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/vnd.jupyter.widget-view+json": { "model_id": "c203d5be9ece4d36b9a9995c0160c482", "version_major": 2, "version_minor": 0 }, "text/plain": [ "chain 4 | | 00:00 Status" ] }, "metadata": {}, "output_type": "display_data" }, { "name": "stdout", "output_type": "stream", "text": [ " " ] }, { "name": "stderr", "output_type": "stream", "text": [ "INFO:cmdstanpy:CmdStan done processing.\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ "\n", "Effective sample size looks reasonable for all parameters.\n", "\n", "Rhat looks reasonable for all parameters.\n", "\n", "0 of 4000 (0.0%) iterations ended with a divergence.\n", "\n", "0 of 4000 (0.0%) iterations saturated the maximum tree depth of 10.\n", "\n", "E-BFMI indicated no pathological behavior.\n" ] }, { "data": { "text/plain": [ "0" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "sm = cmdstanpy.CmdStanModel(stan_file='worm_hier.stan')\n", "\n", "data = dict(K=len(n), n=n, N=N)\n", "\n", "samples = sm.sample(data=data)\n", "samples = az.from_cmdstanpy(posterior=samples)\n", "\n", "bebi103.stan.check_all_diagnostics(samples)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Now, let's look a corner plot to see how we did with the sampling." ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", " <div class=\"bk-root\" id=\"4bf0f903-1abb-4c77-9d02-a1a085cf088d\" data-root-id=\"1828\"></div>\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "(function(root) {\n", " function embed_document(root) {\n", " \n", " var docs_json = {\"02f0c31c-c824-494f-8eca-af21c5c781c9\":{\"defs\":[{\"extends\":null,\"module\":null,\"name\":\"ReactiveHTML1\",\"overrides\":[],\"properties\":[]},{\"extends\":null,\"module\":null,\"name\":\"FlexBox1\",\"overrides\":[],\"properties\":[{\"default\":\"flex-start\",\"kind\":null,\"name\":\"align_content\"},{\"default\":\"flex-start\",\"kind\":null,\"name\":\"align_items\"},{\"default\":\"row\",\"kind\":null,\"name\":\"flex_direction\"},{\"default\":\"wrap\",\"kind\":null,\"name\":\"flex_wrap\"},{\"default\":\"flex-start\",\"kind\":null,\"name\":\"justify_content\"}]},{\"extends\":null,\"module\":null,\"name\":\"TemplateActions1\",\"overrides\":[],\"properties\":[{\"default\":0,\"kind\":null,\"name\":\"open_modal\"},{\"default\":0,\"kind\":null,\"name\":\"close_modal\"}]},{\"extends\":null,\"module\":null,\"name\":\"MaterialTemplateActions1\",\"overrides\":[],\"properties\":[{\"default\":0,\"kind\":null,\"name\":\"open_modal\"},{\"default\":0,\"kind\":null,\"name\":\"close_modal\"}]}],\"roots\":{\"references\":[{\"attributes\":{\"children\":[{\"id\":\"1827\"},{\"id\":\"1825\"}]},\"id\":\"1828\",\"type\":\"Row\"},{\"attributes\":{},\"id\":\"1645\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1647\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1648\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1650\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1654\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1655\",\"type\":\"Selection\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1448\",\"type\":\"Circle\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1449\",\"type\":\"Circle\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1448\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1449\"},\"view\":{\"id\":\"1451\"}},\"id\":\"1450\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1658\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1634\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"syncable\":false,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"1601\",\"type\":\"PolyAnnotation\"},{\"attributes\":{},\"id\":\"1672\",\"type\":\"Title\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1388\"},{\"id\":\"1389\"},{\"id\":\"1390\"},{\"id\":\"1391\"},{\"id\":\"1392\"},{\"id\":\"1393\"},{\"id\":\"1394\"}]},\"id\":\"1398\",\"type\":\"Toolbar\"},{\"attributes\":{\"start\":0.0},\"id\":\"1371\",\"type\":\"DataRange1d\"},{\"attributes\":{\"data\":{\"chain__\":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3],\"diverging__\":[false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false,false],\"draw__\":[0,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,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,0,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,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,0,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,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,0,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,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999],\"index\":[0,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,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144,145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,384,385,386,387,388,389,390,391,392,393,394,395,396,397,398,399,400,401,402,403,404,405,406,407,408,409,410,411,412,413,414,415,416,417,418,419,420,421,422,423,424,425,426,427,428,429,430,431,432,433,434,435,436,437,438,439,440,441,442,443,444,445,446,447,448,449,450,451,452,453,454,455,456,457,458,459,460,461,462,463,464,465,466,467,468,469,470,471,472,473,474,475,476,477,478,479,480,481,482,483,484,485,486,487,488,489,490,491,492,493,494,495,496,497,498,499,500,501,502,503,504,505,506,507,508,509,510,511,512,513,514,515,516,517,518,519,520,521,522,523,524,525,526,527,528,529,530,531,532,533,534,535,536,537,538,539,540,541,542,543,544,545,546,547,548,549,550,551,552,553,554,555,556,557,558,559,560,561,562,563,564,565,566,567,568,569,570,571,572,573,574,575,576,577,578,579,580,581,582,583,584,585,586,587,588,589,590,591,592,593,594,595,596,597,598,599,600,601,602,603,604,605,606,607,608,609,610,611,612,613,614,615,616,617,618,619,620,621,622,623,624,625,626,627,628,629,630,631,632,633,634,635,636,637,638,639,640,641,642,643,644,645,646,647,648,649,650,651,652,653,654,655,656,657,658,659,660,661,662,663,664,665,666,667,668,669,670,671,672,673,674,675,676,677,678,679,680,681,682,683,684,685,686,687,688,689,690,691,692,693,694,695,696,697,698,699,700,701,702,703,704,705,706,707,708,709,710,711,712,713,714,715,716,717,718,719,720,721,722,723,724,725,726,727,728,729,730,731,732,733,734,735,736,737,738,739,740,741,742,743,744,745,746,747,748,749,750,751,752,753,754,755,756,757,758,759,760,761,762,763,764,765,766,767,768,769,770,771,772,773,774,775,776,777,778,779,780,781,782,783,784,785,786,787,788,789,790,791,792,793,794,795,796,797,798,799,800,801,802,803,804,805,806,807,808,809,810,811,812,813,814,815,816,817,818,819,820,821,822,823,824,825,826,827,828,829,830,831,832,833,834,835,836,837,838,839,840,841,842,843,844,845,846,847,848,849,850,851,852,853,854,855,856,857,858,859,860,861,862,863,864,865,866,867,868,869,870,871,872,873,874,875,876,877,878,879,880,881,882,883,884,885,886,887,888,889,890,891,892,893,894,895,896,897,898,899,900,901,902,903,904,905,906,907,908,909,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,930,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,975,976,977,978,979,980,981,982,983,984,985,986,987,988,989,990,991,992,993,994,995,996,997,998,999,1000,1001,1002,1003,1004,1005,1006,1007,1008,1009,1010,1011,1012,1013,1014,1015,1016,1017,1018,1019,1020,1021,1022,1023,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1120,1121,1122,1123,1124,1125,1126,1127,1128,1129,1130,1131,1132,1133,1134,1135,1136,1137,1138,1139,1140,1141,1142,1143,1144,1145,1146,1147,1148,1149,1150,1151,1152,1153,1154,1155,1156,1157,1158,1159,1160,1161,1162,1163,1164,1165,1166,1167,1168,1169,1170,1171,1172,1173,1174,1175,1176,1177,1178,1179,1180,1181,1182,1183,1184,1185,1186,1187,1188,1189,1190,1191,1192,1193,1194,1195,1196,1197,1198,1199,1200,1201,1202,1203,1204,1205,1206,1207,1208,1209,1210,1211,1212,1213,1214,1215,1216,1217,1218,1219,1220,1221,1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237,1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1251,1252,1253,1254,1255,1256,1257,1258,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269,1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1280,1281,1282,1283,1284,1285,1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301,1302,1303,1304,1305,1306,1307,1308,1309,1310,1311,1312,1313,1314,1315,1316,1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332,1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348,1349,1350,1351,1352,1353,1354,1355,1356,1357,1358,1359,1360,1361,1362,1363,1364,1365,1366,1367,1368,1369,1370,1371,1372,1373,1374,1375,1376,1377,1378,1379,1380,1381,1382,1383,1384,1385,1386,1387,1388,1389,1390,1391,1392,1393,1394,1395,1396,1397,1398,1399,1400,1401,1402,1403,1404,1405,1406,1407,1408,1409,1410,1411,1412,1413,1414,1415,1416,1417,1418,1419,1420,1421,1422,1423,1424,1425,1426,1427,1428,1429,1430,1431,1432,1433,1434,1435,1436,1437,1438,1439,1440,1441,1442,1443,1444,1445,1446,1447,1448,1449,1450,1451,1452,1453,1454,1455,1456,1457,1458,1459,1460,1461,1462,1463,1464,1465,1466,1467,1468,1469,1470,1471,1472,1473,1474,1475,1476,1477,1478,1479,1480,1481,1482,1483,1484,1485,1486,1487,1488,1489,1490,1491,1492,1493,1494,1495,1496,1497,1498,1499,1500,1501,1502,1503,1504,1505,1506,1507,1508,1509,1510,1511,1512,1513,1514,1515,1516,1517,1518,1519,1520,1521,1522,1523,1524,1525,1526,1527,1528,1529,1530,1531,1532,1533,1534,1535,1536,1537,1538,1539,1540,1541,1542,1543,1544,1545,1546,1547,1548,1549,1550,1551,1552,1553,1554,1555,1556,1557,1558,1559,1560,1561,1562,1563,1564,1565,1566,1567,1568,1569,1570,1571,1572,1573,1574,1575,1576,1577,1578,1579,1580,1581,1582,1583,1584,1585,1586,1587,1588,1589,1590,1591,1592,1593,1594,1595,1596,1597,1598,1599,1600,1601,1602,1603,1604,1605,1606,1607,1608,1609,1610,1611,1612,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623,1624,1625,1626,1627,1628,1629,1630,1631,1632,1633,1634,1635,1636,1637,1638,1639,1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655,1656,1657,1658,1659,1660,1661,1662,1663,1664,1665,1666,1667,1668,1669,1670,1671,1672,1673,1674,1675,1676,1677,1678,1679,1680,1681,1682,1683,1684,1685,1686,1687,1688,1689,1690,1691,1692,1693,1694,1695,1696,1697,1698,1699,1700,1701,1702,1703,1704,1705,1706,1707,1708,1709,1710,1711,1712,1713,1714,1715,1716,1717,1718,1719,1720,1721,1722,1723,1724,1725,1726,1727,1728,1729,1730,1731,1732,1733,1734,1735,1736,1737,1738,1739,1740,1741,1742,1743,1744,1745,1746,1747,1748,1749,1750,1751,1752,1753,1754,1755,1756,1757,1758,1759,1760,1761,1762,1763,1764,1765,1766,1767,1768,1769,1770,1771,1772,1773,1774,1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786,1787,1788,1789,1790,1791,1792,1793,1794,1795,1796,1797,1798,1799,1800,1801,1802,1803,1804,1805,1806,1807,1808,1809,1810,1811,1812,1813,1814,1815,1816,1817,1818,1819,1820,1821,1822,1823,1824,1825,1826,1827,1828,1829,1830,1831,1832,1833,1834,1835,1836,1837,1838,1839,1840,1841,1842,1843,1844,1845,1846,1847,1848,1849,1850,1851,1852,1853,1854,1855,1856,1857,1858,1859,1860,1861,1862,1863,1864,1865,1866,1867,1868,1869,1870,1871,1872,1873,1874,1875,1876,1877,1878,1879,1880,1881,1882,1883,1884,1885,1886,1887,1888,1889,1890,1891,1892,1893,1894,1895,1896,1897,1898,1899,1900,1901,1902,1903,1904,1905,1906,1907,1908,1909,1910,1911,1912,1913,1914,1915,1916,1917,1918,1919,1920,1921,1922,1923,1924,1925,1926,1927,1928,1929,1930,1931,1932,1933,1934,1935,1936,1937,1938,1939,1940,1941,1942,1943,1944,1945,1946,1947,1948,1949,1950,1951,1952,1953,1954,1955,1956,1957,1958,1959,1960,1961,1962,1963,1964,1965,1966,1967,1968,1969,1970,1971,1972,1973,1974,1975,1976,1977,1978,1979,1980,1981,1982,1983,1984,1985,1986,1987,1988,1989,1990,1991,1992,1993,1994,1995,1996,1997,1998,1999,2000,2001,2002,2003,2004,2005,2006,2007,2008,2009,2010,2011,2012,2013,2014,2015,2016,2017,2018,2019,2020,2021,2022,2023,2024,2025,2026,2027,2028,2029,2030,2031,2032,2033,2034,2035,2036,2037,2038,2039,2040,2041,2042,2043,2044,2045,2046,2047,2048,2049,2050,2051,2052,2053,2054,2055,2056,2057,2058,2059,2060,2061,2062,2063,2064,2065,2066,2067,2068,2069,2070,2071,2072,2073,2074,2075,2076,2077,2078,2079,2080,2081,2082,2083,2084,2085,2086,2087,2088,2089,2090,2091,2092,2093,2094,2095,2096,2097,2098,2099,2100,2101,2102,2103,2104,2105,2106,2107,2108,2109,2110,2111,2112,2113,2114,2115,2116,2117,2118,2119,2120,2121,2122,2123,2124,2125,2126,2127,2128,2129,2130,2131,2132,2133,2134,2135,2136,2137,2138,2139,2140,2141,2142,2143,2144,2145,2146,2147,2148,2149,2150,2151,2152,2153,2154,2155,2156,2157,2158,2159,2160,2161,2162,2163,2164,2165,2166,2167,2168,2169,2170,2171,2172,2173,2174,2175,2176,2177,2178,2179,2180,2181,2182,2183,2184,2185,2186,2187,2188,2189,2190,2191,2192,2193,2194,2195,2196,2197,2198,2199,2200,2201,2202,2203,2204,2205,2206,2207,2208,2209,2210,2211,2212,2213,2214,2215,2216,2217,2218,2219,2220,2221,2222,2223,2224,2225,2226,2227,2228,2229,2230,2231,2232,2233,2234,2235,2236,2237,2238,2239,2240,2241,2242,2243,2244,2245,2246,2247,2248,2249,2250,2251,2252,2253,2254,2255,2256,2257,2258,2259,2260,2261,2262,2263,2264,2265,2266,2267,2268,2269,2270,2271,2272,2273,2274,2275,2276,2277,2278,2279,2280,2281,2282,2283,2284,2285,2286,2287,2288,2289,2290,2291,2292,2293,2294,2295,2296,2297,2298,2299,2300,2301,2302,2303,2304,2305,2306,2307,2308,2309,2310,2311,2312,2313,2314,2315,2316,2317,2318,2319,2320,2321,2322,2323,2324,2325,2326,2327,2328,2329,2330,2331,2332,2333,2334,2335,2336,2337,2338,2339,2340,2341,2342,2343,2344,2345,2346,2347,2348,2349,2350,2351,2352,2353,2354,2355,2356,2357,2358,2359,2360,2361,2362,2363,2364,2365,2366,2367,2368,2369,2370,2371,2372,2373,2374,2375,2376,2377,2378,2379,2380,2381,2382,2383,2384,2385,2386,2387,2388,2389,2390,2391,2392,2393,2394,2395,2396,2397,2398,2399,2400,2401,2402,2403,2404,2405,2406,2407,2408,2409,2410,2411,2412,2413,2414,2415,2416,2417,2418,2419,2420,2421,2422,2423,2424,2425,2426,2427,2428,2429,2430,2431,2432,2433,2434,2435,2436,2437,2438,2439,2440,2441,2442,2443,2444,2445,2446,2447,2448,2449,2450,2451,2452,2453,2454,2455,2456,2457,2458,2459,2460,2461,2462,2463,2464,2465,2466,2467,2468,2469,2470,2471,2472,2473,2474,2475,2476,2477,2478,2479,2480,2481,2482,2483,2484,2485,2486,2487,2488,2489,2490,2491,2492,2493,2494,2495,2496,2497,2498,2499,2500,2501,2502,2503,2504,2505,2506,2507,2508,2509,2510,2511,2512,2513,2514,2515,2516,2517,2518,2519,2520,2521,2522,2523,2524,2525,2526,2527,2528,2529,2530,2531,2532,2533,2534,2535,2536,2537,2538,2539,2540,2541,2542,2543,2544,2545,2546,2547,2548,2549,2550,2551,2552,2553,2554,2555,2556,2557,2558,2559,2560,2561,2562,2563,2564,2565,2566,2567,2568,2569,2570,2571,2572,2573,2574,2575,2576,2577,2578,2579,2580,2581,2582,2583,2584,2585,2586,2587,2588,2589,2590,2591,2592,2593,2594,2595,2596,2597,2598,2599,2600,2601,2602,2603,2604,2605,2606,2607,2608,2609,2610,2611,2612,2613,2614,2615,2616,2617,2618,2619,2620,2621,2622,2623,2624,2625,2626,2627,2628,2629,2630,2631,2632,2633,2634,2635,2636,2637,2638,2639,2640,2641,2642,2643,2644,2645,2646,2647,2648,2649,2650,2651,2652,2653,2654,2655,2656,2657,2658,2659,2660,2661,2662,2663,2664,2665,2666,2667,2668,2669,2670,2671,2672,2673,2674,2675,2676,2677,2678,2679,2680,2681,2682,2683,2684,2685,2686,2687,2688,2689,2690,2691,2692,2693,2694,2695,2696,2697,2698,2699,2700,2701,2702,2703,2704,2705,2706,2707,2708,2709,2710,2711,2712,2713,2714,2715,2716,2717,2718,2719,2720,2721,2722,2723,2724,2725,2726,2727,2728,2729,2730,2731,2732,2733,2734,2735,2736,2737,2738,2739,2740,2741,2742,2743,2744,2745,2746,2747,2748,2749,2750,2751,2752,2753,2754,2755,2756,2757,2758,2759,2760,2761,2762,2763,2764,2765,2766,2767,2768,2769,2770,2771,2772,2773,2774,2775,2776,2777,2778,2779,2780,2781,2782,2783,2784,2785,2786,2787,2788,2789,2790,2791,2792,2793,2794,2795,2796,2797,2798,2799,2800,2801,2802,2803,2804,2805,2806,2807,2808,2809,2810,2811,2812,2813,2814,2815,2816,2817,2818,2819,2820,2821,2822,2823,2824,2825,2826,2827,2828,2829,2830,2831,2832,2833,2834,2835,2836,2837,2838,2839,2840,2841,2842,2843,2844,2845,2846,2847,2848,2849,2850,2851,2852,2853,2854,2855,2856,2857,2858,2859,2860,2861,2862,2863,2864,2865,2866,2867,2868,2869,2870,2871,2872,2873,2874,2875,2876,2877,2878,2879,2880,2881,2882,2883,2884,2885,2886,2887,2888,2889,2890,2891,2892,2893,2894,2895,2896,2897,2898,2899,2900,2901,2902,2903,2904,2905,2906,2907,2908,2909,2910,2911,2912,2913,2914,2915,2916,2917,2918,2919,2920,2921,2922,2923,2924,2925,2926,2927,2928,2929,2930,2931,2932,2933,2934,2935,2936,2937,2938,2939,2940,2941,2942,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953,2954,2955,2956,2957,2958,2959,2960,2961,2962,2963,2964,2965,2966,2967,2968,2969,2970,2971,2972,2973,2974,2975,2976,2977,2978,2979,2980,2981,2982,2983,2984,2985,2986,2987,2988,2989,2990,2991,2992,2993,2994,2995,2996,2997,2998,2999,3000,3001,3002,3003,3004,3005,3006,3007,3008,3009,3010,3011,3012,3013,3014,3015,3016,3017,3018,3019,3020,3021,3022,3023,3024,3025,3026,3027,3028,3029,3030,3031,3032,3033,3034,3035,3036,3037,3038,3039,3040,3041,3042,3043,3044,3045,3046,3047,3048,3049,3050,3051,3052,3053,3054,3055,3056,3057,3058,3059,3060,3061,3062,3063,3064,3065,3066,3067,3068,3069,3070,3071,3072,3073,3074,3075,3076,3077,3078,3079,3080,3081,3082,3083,3084,3085,3086,3087,3088,3089,3090,3091,3092,3093,3094,3095,3096,3097,3098,3099,3100,3101,3102,3103,3104,3105,3106,3107,3108,3109,3110,3111,3112,3113,3114,3115,3116,3117,3118,3119,3120,3121,3122,3123,3124,3125,3126,3127,3128,3129,3130,3131,3132,3133,3134,3135,3136,3137,3138,3139,3140,3141,3142,3143,3144,3145,3146,3147,3148,3149,3150,3151,3152,3153,3154,3155,3156,3157,3158,3159,3160,3161,3162,3163,3164,3165,3166,3167,3168,3169,3170,3171,3172,3173,3174,3175,3176,3177,3178,3179,3180,3181,3182,3183,3184,3185,3186,3187,3188,3189,3190,3191,3192,3193,3194,3195,3196,3197,3198,3199,3200,3201,3202,3203,3204,3205,3206,3207,3208,3209,3210,3211,3212,3213,3214,3215,3216,3217,3218,3219,3220,3221,3222,3223,3224,3225,3226,3227,3228,3229,3230,3231,3232,3233,3234,3235,3236,3237,3238,3239,3240,3241,3242,3243,3244,3245,3246,3247,3248,3249,3250,3251,3252,3253,3254,3255,3256,3257,3258,3259,3260,3261,3262,3263,3264,3265,3266,3267,3268,3269,3270,3271,3272,3273,3274,3275,3276,3277,3278,3279,3280,3281,3282,3283,3284,3285,3286,3287,3288,3289,3290,3291,3292,3293,3294,3295,3296,3297,3298,3299,3300,3301,3302,3303,3304,3305,3306,3307,3308,3309,3310,3311,3312,3313,3314,3315,3316,3317,3318,3319,3320,3321,3322,3323,3324,3325,3326,3327,3328,3329,3330,3331,3332,3333,3334,3335,3336,3337,3338,3339,3340,3341,3342,3343,3344,3345,3346,3347,3348,3349,3350,3351,3352,3353,3354,3355,3356,3357,3358,3359,3360,3361,3362,3363,3364,3365,3366,3367,3368,3369,3370,3371,3372,3373,3374,3375,3376,3377,3378,3379,3380,3381,3382,3383,3384,3385,3386,3387,3388,3389,3390,3391,3392,3393,3394,3395,3396,3397,3398,3399,3400,3401,3402,3403,3404,3405,3406,3407,3408,3409,3410,3411,3412,3413,3414,3415,3416,3417,3418,3419,3420,3421,3422,3423,3424,3425,3426,3427,3428,3429,3430,3431,3432,3433,3434,3435,3436,3437,3438,3439,3440,3441,3442,3443,3444,3445,3446,3447,3448,3449,3450,3451,3452,3453,3454,3455,3456,3457,3458,3459,3460,3461,3462,3463,3464,3465,3466,3467,3468,3469,3470,3471,3472,3473,3474,3475,3476,3477,3478,3479,3480,3481,3482,3483,3484,3485,3486,3487,3488,3489,3490,3491,3492,3493,3494,3495,3496,3497,3498,3499,3500,3501,3502,3503,3504,3505,3506,3507,3508,3509,3510,3511,3512,3513,3514,3515,3516,3517,3518,3519,3520,3521,3522,3523,3524,3525,3526,3527,3528,3529,3530,3531,3532,3533,3534,3535,3536,3537,3538,3539,3540,3541,3542,3543,3544,3545,3546,3547,3548,3549,3550,3551,3552,3553,3554,3555,3556,3557,3558,3559,3560,3561,3562,3563,3564,3565,3566,3567,3568,3569,3570,3571,3572,3573,3574,3575,3576,3577,3578,3579,3580,3581,3582,3583,3584,3585,3586,3587,3588,3589,3590,3591,3592,3593,3594,3595,3596,3597,3598,3599,3600,3601,3602,3603,3604,3605,3606,3607,3608,3609,3610,3611,3612,3613,3614,3615,3616,3617,3618,3619,3620,3621,3622,3623,3624,3625,3626,3627,3628,3629,3630,3631,3632,3633,3634,3635,3636,3637,3638,3639,3640,3641,3642,3643,3644,3645,3646,3647,3648,3649,3650,3651,3652,3653,3654,3655,3656,3657,3658,3659,3660,3661,3662,3663,3664,3665,3666,3667,3668,3669,3670,3671,3672,3673,3674,3675,3676,3677,3678,3679,3680,3681,3682,3683,3684,3685,3686,3687,3688,3689,3690,3691,3692,3693,3694,3695,3696,3697,3698,3699,3700,3701,3702,3703,3704,3705,3706,3707,3708,3709,3710,3711,3712,3713,3714,3715,3716,3717,3718,3719,3720,3721,3722,3723,3724,3725,3726,3727,3728,3729,3730,3731,3732,3733,3734,3735,3736,3737,3738,3739,3740,3741,3742,3743,3744,3745,3746,3747,3748,3749,3750,3751,3752,3753,3754,3755,3756,3757,3758,3759,3760,3761,3762,3763,3764,3765,3766,3767,3768,3769,3770,3771,3772,3773,3774,3775,3776,3777,3778,3779,3780,3781,3782,3783,3784,3785,3786,3787,3788,3789,3790,3791,3792,3793,3794,3795,3796,3797,3798,3799,3800,3801,3802,3803,3804,3805,3806,3807,3808,3809,3810,3811,3812,3813,3814,3815,3816,3817,3818,3819,3820,3821,3822,3823,3824,3825,3826,3827,3828,3829,3830,3831,3832,3833,3834,3835,3836,3837,3838,3839,3840,3841,3842,3843,3844,3845,3846,3847,3848,3849,3850,3851,3852,3853,3854,3855,3856,3857,3858,3859,3860,3861,3862,3863,3864,3865,3866,3867,3868,3869,3870,3871,3872,3873,3874,3875,3876,3877,3878,3879,3880,3881,3882,3883,3884,3885,3886,3887,3888,3889,3890,3891,3892,3893,3894,3895,3896,3897,3898,3899,3900,3901,3902,3903,3904,3905,3906,3907,3908,3909,3910,3911,3912,3913,3914,3915,3916,3917,3918,3919,3920,3921,3922,3923,3924,3925,3926,3927,3928,3929,3930,3931,3932,3933,3934,3935,3936,3937,3938,3939,3940,3941,3942,3943,3944,3945,3946,3947,3948,3949,3950,3951,3952,3953,3954,3955,3956,3957,3958,3959,3960,3961,3962,3963,3964,3965,3966,3967,3968,3969,3970,3971,3972,3973,3974,3975,3976,3977,3978,3979,3980,3981,3982,3983,3984,3985,3986,3987,3988,3989,3990,3991,3992,3993,3994,3995,3996,3997,3998,3999],\"kappa\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[4000]},\"phi\":{\"__ndarray__\":\"9KRMamgDyj/LoUW28/3KPzc10HzO3dU/ZkzBGmfTzz+4eHjPgeXMP15nQ/6ZQc4/aVa2D3nL0j/dtYR80LPLPz+PUZ55OdU/Fmu4yD1d0D9LXMe44uLMP+Olm8QgsM4/Htydtdsu1T/2X+emzTjJP2zQl97+XNY/HccPlUbM0D+6h4Tv/Q3QPz56w33k1sw/QZqxaDo71j+lFHR7SWPUP/hrskY9RNM/W9HmOLcJzT+i8UQQ5+HUPw6Cjla1pNE/n8ppT8k50T8Bv0aSIFzNPwAeUaG6uco/Ksdkcf+R2j+4V+atug7LP71vfO2ZJdE/sTTwoxr2zT8+zjRh+8nRP6kR+pl63co/aM9lahK81D/fNehLb3/TPwezCTAsf9U/6nqi68IP0j9WYTPABdnOP0fIQJ5dvtM/AALWql0T1D8FptO6DWrLP04mbhXEQNU/Z7eWyXA8zz+mK9hGPNnLP6aYg6CjVcM/Z4F2hxQDyj+3Xz5ZMVzVP4OluoCXGdE/oUrNHmgF0j+sjbETXoLSPzZ2ieqtgdI/j1GeeTns1D9z2lNyTuzQP/58W7BUF84/oUs49BYP0z/jVdY2xePWP1PnUfF/R9Q/6WLTSiGQ1T8knYGRlzXSPzy858ByhNY/vTYbKzHP1D8Htd/aiZLRP0RssHCS5s8/5EnSNZNv0T8tYAK37ubRP533/3HChNE/WkqWk1D6zD/ou1tZorPSP0BNLVvri9o/PnWsUnqmzz8z4Cwly0nOPxx8YTJVMMw/YHZPHhZq0D9dGr/wSpLLP/64/fLJitM/DTUKSWb1xj/OwwlMp3XFP1LTLqaZ7s8/A3gLJCh+0D9yGqIKf4bRPx1xyAbSxdU/FTduMT833j8hVn+EYcDhP+PFwhA5/eA/saiI00m21T8z/RLx1vnNP0HV6NUApdE/JQSr6uV31T8BUMWNW8zLPwUabOo8Ksw/w0ZZv5mYzD8GnnsPlxzTPwaeew+XHNM/TkcAN4sX0D9JLv8h/fbWP0wYzcr2Idk/74/3qpUJ0T8N5NnlWx/RP3svvmiPF9A/Uu3T8ZiB0j8D6WLTSiHMP9jTDn9N1s4/nGuYofFE0D9yGqIKf4bRP+tztRX7y9E/f05BfjZy0D9PyqSGNgDQPybD8XwG1NE/gQhx5eydzz8yqgzjbhDQP+Upq+l6otI//tMNFHgn1D/U0twKYTXUPzZc5J6u7tA/mrSpukc21D/OFhBaD1/OP5OrWPymsNU/6ndha7by0T+XqUnwhjTSP3v6CPzh59E//G8lOzYC2T8i/fZ14JzFP8NmgAuyZc8/UPwYc9cS0j8q4J7nTxvQP5V87C5QUtU/XWqEfqZe0z9HkiBcAYXaPxcplIWvr94/0lW6u86GzD9TQrCqXn7RP3KkMzDystE/nnjOFhBa0z/9pNqn4zHRP9I3aRoUzdA/b2OzI9V3zD/sEtVbA1vBP8GNlC2SdtQ/TIi5pGq7zz9qpnud1JfRP3swKT4+IcE/3o/bL5+s2T//HydMGM3OP84Xey++aNM/JjlgV5On1D+/Y3jsZ7HQPytu3GJ+btI/JjlgV5On0T8Sg8DKoUXRP76h8Nk6ONA/q0AtBg/T0j/ohNBBl3DKP6USntDrT9c/Bi6PNSODyj+OIJViR+PTP+9wOzQsRtM/Wn7gKk8g1D/o2EElrmPGP6rukc1V89Q/wRpn0xHAzz+TjJyFPe3VP4VefxKfO80/E9bG2Akv0j99WG/UCtPQP+hn6nWLwNU/Qgby7PKt0j8BomDGFKzQP1uYhXZOs9I/YFYo0v2czD+fd2NBYVDRP2tHcY46OtM/XRYTm49ryz/HKTqSy3/OPxb7y+7Jw9I/Fr6+1qVG1D9ngXaHFAPSP87/q44c6cw/fZdSl4xj0D/Ad5s3TgraP8SWHk31ZNI/l3FTA83nzj8mNh/XhorSPxJnRdREn9I/5NcPscHC0j+g4GJFDabNP3XmHhK+99Y/NGjon+Bi0j9SJjW0AdjSPwmkxK7t7dI/y9jQzf5A0z+8AtGTMqnNP2+D2m/tRNI/Num2RC441T/JPV3dsdjTPxDs+C8QBNM/C2Kga19Azz9GCI82jljQP8GopE5AE9E/+5Y5XRYT1D8SaLCp86jTPzliLT4FwNQ//iYUIuAQ0j+8s3bbhebTP+kN95Fbk84/mKJcGr/w0T8S+MPPfw/OP7HfE+tU+dE/FXE6yVaX0D9+ycaDLXbUP3zSiQRTzdE/ldbfEoB/yD+Jeyx96ILWP9AOuK6YEdU/5zV2ieqtzT9OtRZmoZ3YP/qcu10vTdM/ml5iLNMv0j+Pq5FdaRnSP/GEXn8Sn9A/LnQlAtU/0D9cIEHxY8zWP845eCY0Scw/svFgi90+2z9PAptz8EzGP4Yhcvp6vtY/l1eut81Uyj8nT1lN1xPUP3/6z5off88/XiwMkdPX0D/QZP88DRjSP3QoQ1VMpdI/7nn+tFGd1T83p5IBoIrUP0P+mUF8YMM/H/ZCAdvB1j+gwDv59NjOPwg9m1Wfq8k/pDSbx2Ew1j+fdCLBVDPRP8hgxanWwtI/CkrRyr3AzD/a/wBr1a7RP2kAb4EExcs/bOo8Kv7v0z9fQ3Bcxk3PP/jB+dSxStQ/flTDfk+s0z/93NCUnX7OP9HpeTcWFNA/aEKTxJJy1z8nS633G+3KP7MHWoEhq9I/pDmy8stg0j+XOsjrwaTTPwL1ZtR8ldA/l/4lqUwx1D9ahGIraFrSP662Yn/ZPdk/A3y3eeOk1T+mQjwSL0/JP1yq0hbX+NU/UDV6NUBpyD9eukkMAivTP20eh8H8FdU/2qhOB7Ke0D9IUz2Zf/TJPwRz9Pi9Tdc/36P+eoUF1z8GLo81I4PUPzGYv0Lmysw/dA0zNJ4I2T+VKeYg6GjHP3JNgczOotc/SutvCcA/yT9JEK6AQj3QPz2bVZ+rrdA/z0iERrBxzT97Mv/omzTVP9/hdmhYjM4/EFmkiXeAyz8yrOKNzCPHP0fIQJ5dvto/voV1492R1z+fkQiNYOPUP7sp5bUSutA/7xzKUBVTzT+hTKPJxRjRPzZ1HhX/d9M/gJwwYTQr1D/Azk2bcRrTP87Cnnb4a9E/j3IwmwDD1D8U56ij42rTPzgxJCcTt9Q/GD4ipkQS1T+g/N07akzSP4aPiCmRRM0/cD51rFJ61D9sW5TZIJPSPwyvJHmu79E/gVoMHqZ9yT/RCDauf9fJP2H9n8N8edU/2JyDZ0KT0z+Rm+EGfH7TP2Q+INCZtNI/RzoDIy9rzj9Hj9/b9GfRP86MfjScMtU/9KeN6nQgxz9fRNsxdVfaP5peYizTL9c/yTmxh/axzD/JObGH9rHMPxJpG3+issk/tOTxtPzA0T/99+C1SxvXPztWKT3TS9U/eNMtO8Q/3D8Y6UXtfhXaP3jRV5BmLMo/AWvVrglp0T/sh9hg4STQP2YucHmsGdI/KCob1lQW1D+vesA8ZMrTPw7cgTrl0c8/5IV0eAjjyT8zGCMShZbSP2R47GexFNE/WqDdIcUA0D9UOe0pOSfEP/xyZrtCH84/ONpxw++m1j+yvoHJjSLNP0890uC2tts/P1bw2xDj0D9EatrFNNPNP4Jy275H/do/8piByvj3zz+YMQVrnE3PPxNDcjJxq8g/6E1FKowt2D9QGf8+48LTPxLYnINnQtM/WHGqtTAL1D8PYJFfP8TOPwCQEyaMZtA/pfeNrz2zzj9X7ZqQ1hjOP4SB597DJc8/dvwXCAJk0D8Kur2kMVrPP9VamIV2TtA/0CfyJOma0j99XBsqxvnVPyjWqfI9I9E/6KT3ja89yT/BVDNrKSDWP9j0oKAUrc4/soS1MXbC0j+Fl+DUB5LQPx7ec2A5QtM/KCuGqwMg0T8lyt5SzhfUP1M/bypSYdE/R3GOOjqu1D8Tm49rQ8XTP5M5lnfVA9Q/YtaLoZxoyT9xVG6ilubSP5bpl4i3zs0/YHR5c7hWyT/rkJvhBnzGP/Ik6ZrJN80/8S+CxkyiyD9ViEfi5enQPySYamYtBdI/YHe688Rz1z+VLZJ2o4/NP+Db9Gc/UtI/vHfUmBBz0j8npaDbSxrRPyzYRjzZzdI/nx9GCI820j/c14FzRpTSPwCo4sYt5sk/wTkjSnuD2D9hG/FkNzPGP+G2tvC8VNk/gGJkyRzL2z+5b7VOXI7DP1NCsKpeftA/1elA1lOr0z9K7rCJzFzEP8x5xr5k49E/QrCqXn6n0j9+xoUDIVnYPwETuHU3T9E/eouH9xxY0D+gjPFh9rLSP6FJYkm5+9E/BTHQtS+g0D8TRrOyfcjVPyBdbFopBNM/9rNYiuQr2T91cobijjfPP7qj/+VatNY/ayv2l92T0D8BofXwZaLOP057Ss6JPdg//FWA7zZv0j+YiSKkbmfSP3NjesISD9A/J/im6bMD1j9D4bN1cLDPP1OT4A1pVNA/2CrB4nDm1j81Jy8yAb/OP4asbvWc9NU/oib6fJQRzz8iNe1imunQP7qe6Lrwg9I/G7luSnmt1j8lP+JXrOHYP1YRbjKqDNI/BkZe1sQC0T9+Ab1w58LRP30IqkavBtQ/YFYo0v2c0j+fkJ23sdnVP8aLhSFy+tY/1A/qIoWyyj9ENLqD2JnTP/3a+uk/a9E/5BWInpRJ2D88bCIzF7jUPzOMu0G0VtI/MiHmkqrtzD/ggJauYBvSP+IftvRoqtM/JVryeFp+0D+k4CnkSj3PP4HptG6D2tE/W5nwS/280T/wwWuXNhzVP8Tt0LAYdck/rG9gcqPI0z93FOeoo+PKP1Fmg0wyctY/Dp4JTRJLzD8ZVYZxN4jRP9B8zt2ul9Q/dnEbDeAt0j8OaOkKthHRPwN3oE55dNM/1o7iHHV0yj9eKjbmdcTHP5l+iXjr/Mc/MUROX8/X0j/kht9Nt+zUPxnkLsIU5cg/68VQTrSr0D+QwYpTrYXTP2l0B7Ezhco/uAVLdQEv2T+LGkzD8BHXP2lznNuEe9E/KPT6k/jc1D9uiPGaV3XOP6tefqfJjNA/lumXiLfOyT+PF9LhIYzPP2Hj+nd95tA/cOzZc5ma0D/FjVvMzw3NP93NUx1yM9M/x5xn7Es20D8tCVBTy9bTP1DhCFIpdtI/hQX3Ax4Y1D8sgCkDB7TTP5i/QubKoMg/XalnQSjv1T+NQpJZvcPSP/G76ZYd4s0/gLirV5HR0D/1SlmGONbNP1CnPLoRFtE/mRJJ9DKKxz9mZmZmZmbKP1cKgVziyNA/qaW5FcJq1z+KVu4FZoXXP4eMR6mEJ84/dLM/UG7bzT+U+rK0U3PTP0Os/gjDgNQ/iWLyBpj50T8VcqWeBaHRP8EcPX5v09E//bypSIWxzz8YXknyXN/UP9wvn6wYrsw/8tO4N79h0j94gCctXFbSP6PnFroSgdE/BAKdSZuq0j/ACBoziXrQP1nBb0OM19Q/YDlCBvLs0z9iMepae5/GPyHmkqrtJtU/5s5MMJxr0D85Qgby7PLTP0loy7kUV88/FEGchxOY1T9Ge7yQDg/QP6sJou4DkNQ/Psvz4O6s0z9HyhZJu9HUP0eNCTGXVNE/ayxhbYyd0D+FQZlGk4vRP+kKthFPdtE/0At3Loz00j95kJ4ih4jTP9uIJ7uZ0dM/Vb38TpMZ0z9sCmR2Fr3SP/63kh0bgdE/EVK3s6881D82zNB4IojNP7hZvFgYIs8/yVnY0w5/1j8eNpGZC1zSP9bJGYo73sY/JqyNsRNeyj9Lkuf6PhzTP+3ShsPSwNI/KQge39410T8HB3sTQ3LQPy+H3XcMj88/7tCwGHWt0D/84HzqWKXUP0PHDipxHdE/3Xh3ZKw20D9YAimxa3vTPwXeyafHttI/ueNNfotO1T+MSX8vhQfVPylauReYFdE/+rmhKTv90j95WRMLfEXSPyqRRC+jWNA/MzLIXYQp0T8Yl6q0xTXSP67TSEvl7dI//S0B+KdUyz8fLc4Y5gTXPxhA+FCiJdI/4q3zb5f90T8vwakPJO/SP3hHxmrz/9E/sfz5tmCpzj+hhQSMLm/TP453R8Zq89I/uHaiJCTS1z9F2safqGzOPwOYMnBAS9M/mN9pMuNtzz+6aTNOQ1TRP4qUZvM4DNM/oYSZtn9l1D8BhuXPtwXSP96tLNFZZtA/Iv5hS4+mzj+xi6IHPgbJP6CH2jaMgtQ/lfQwtDo51D/4ONOE7SfQP98YAoBjz9A/2pHqO78o1j+ie9Y1Wg7QP9vDXihgO9Y/5q+QuTKozD/Sb18HzhnJP3A+daxSetQ/0vwxrU1j1j8lAtU/iGTIP9E96xotB9E/D18mipC6zz9A3xYs1QXSP4L+Qo8YPc0/4xbzc0NTzj+m7zUEx2XRP6vP1VbsL9A/T8sPXOUJ1D/jF15J8lzLP6hV9IdmntA/uVUQA1371D8AHlGhurnRP6nCn+HNGtc/FcWrrG2Kzz/aHr3hPnLVP4RHG0esxdE//S/XogVo1D8Ni1HX2vvRP/s+HCRE+dM/b/QxHxDozj+P/MHAc+/NP6BrX0Av3M8/mYHK+PcZ0j/v/nivWpnQPzJ1V3bB4NM/xvoGJjeK1D8ls3qH26HNP+Ep5Eo9C8Y/m42VmGcl1z8GZK93f7zLP/ikEwmmmtM/DK1OzlDc0z9DHsGNlC3OPwFqatlaX84/eomxTL9E2j8uU5PgDWnVP9v3qL9eYc8/u9OdJ56z0D8kl/+QfvvSPwtioGtfQNE/vyfWqfI9zz9+4ZUkz/XTP0Yjn1c89cI/mzkktVAyxz+AYfnzbcHWP4Bh+fNtwdY/rRVtjnObzD9UkJ+NXDfNP2YTYFj+fM0/4/+OqFDd0z9nYU87/DXTP1cHQNzVq84/3PC76ZYd0D/l1TkGZK/TPyeFeY8zTcQ/4EkLl1XYyj/ZCpqWWBnQPwABa9WuCc0/+fVDbLBw1D/5oGez6nPVP9+mP/uRItU/1NaIYBxc1z92xvfFpSrPP93rpL4s7dM/B5W4jnHF0j+w52uWy0bSP+wxkdJsHtA/Df0TXKyo0T9k5ZfBGJHKP1t4Xio25tI/4UVfQZqx1T9476gxIebGP3mT36KTpdw/BqBRuvQv0z/udygK9InOP9qrj4e+u9Q/d0gxQKIJzj9RFOgTeZLQP3hCrz+Jz80/KGVSQxuA1D9olgSoqWXLP2b5ugz/6co/Rx0dVyO71j/ohTsXRnrLPzvfT42XbtE/GR9mL9tOyz/xSLw8nSvMPwN9Ik+SrtE/HXOesS/Z2D9I4XoUrkfXP+AO1CmPbtM/hzHp76Xw0z/ajxSRYRXNP7X66qpALcw/F9S3zOmy1D8TglX18jvUP69amfBL/c4/HNKowMk21z/FPZY+dEHLP6oLeJlho9M/HeT1YFJ80D/2tS41Qj/SP0JD/wQXK9I/PSr+74gK0T907KAS1zHTP6YNh6WBH9M/Dmd+NQcI0D/ieD4D6s3QPzuqmiDqPtQ/Fy1A22rWyz+Rup195UHSP2O2ZFWEm9E/3SbcK/NWxz9PsP86N23SPzqWd9UD5tc/UitM32sI0j9iZTTyecXSP5xPHauUnss/mRBzSdV21D9NofMau0TTP1Ev+DQnL8o/1xcJbTmX1j842QbuQJ3SP8QLIlLTLso/5lsf1hu10T+Cb5o+O+DVP9CaH39pUck/MUCiCRSx1D+zQLtDigHVP/WgoBSt3M0/JqYLsfoj0j+Ssdr8v+rKPwNckC3L19c/vJUlOssszD+ZZOQs7GnSP9ejcD0K188/WOTXD7HB2z8dBYiCGVPMP49yMJsAw9E/1qiHaHQH0T+zsn3IW67QP4ld29stydQ/ArnEkQci0j/aVrPO+L7VPyxJnuv7cNI/XB/WG7XC1D+eCyO9qN3RPyl5dY4B2dM/PUUOETenyj/gZ1w4EJLUPzqt26D2W8s/vtnmxvSEzz95Wn7gKk/RPzVgkPRpFdE/Dw9h/DTu1z/WjuIcdXTSP6yQ8pNqn8w/4PdvXpz40T+VtyOcFrzQP8aIRKFl3cs/203wTdNn0D9sW5TZIJPQP/ZFQlvOpdM/ym37HvXXyz8bSBebVgrRPzhIiPIFLdU/t+9Rf73CxD+/KEF/oUfVPylZTkLpC88/ZY16iEZ31T8ldQKaCBvTP6d5xyk6ks8/XYlA9Q8i1z9DxTh/EwrSP9vC81KxMcs/fQVpxqLp1D+uYYbGE0HVP0PGo1TCE9A/Ka+V0F0S0z8x7Zv7q8fPPwN4CyQoftU/csCuJk9Z2T/Qtpp1xvfQPymXxi+8ktI/QGmoUUgy0D9EozuInSnSP6K0N/jCZNM/6PnTRnU62D/JPsiyYOLHPyKnr+drltI/iNhg4STN1j/hsgqbAS7WPw5JLZRMTs0/aeTziqce1T8fEOhM2lTcPxPzrKQV38o/ZXH/kenQ1j8qq+l6ouvOP5l/9E2aBtc/GHyakxeZyD9f7SjOUUfQP6BwdmuZDNQ/0NIVbCOewj8r3PKRlPTOP10z+WabG9I/Sb2nctpTzj8TnWUWodjUP+McdXRcjcg/dxA7U+i8zj/EmV/NAYLSP0M50a5CytI/tDnObcK90z85YcJoVrbQP+SfGcQHdtM/4WHaN/dX0T8WbCOe7GbVP5/pJcYy/dI/C+wxkdJszj8DP6phvyfTPwk4hCo1e9A/UwYOaOkK1j+e7GZGPxrMPxTObi2T4dE/Wf0RhgFL0z+j6lc6H57VP5TZIJOMnNI/IPDAAMKH1D88F0Z6UbvPP/q3y37d6dY/uhXCaixh1j8MW7OVl/zLPyv52F2gpMw/qpz2lJwT1T88MevFUE7IP91bkZightQ/jLlrCfmgzT8KaY1BJ4TTP0V/aObJNdI/nvASnPpA1j/n4QSm07rLP+fhBKbTuss/Mjz2s1iK0D+OHr+36c/RP/NXyFwZVNE/ol2FlJ9Uyz/II7iRskXTP+p3YWu28tA/HyxjQzf7yT/ECUyndRvQP/FKkuf6Ps4/yH2rdeJy0D/dlzPbFfrOP0qWk1D6QtQ/rabria4L1T/5S4v6JHfTP1wC8E+pEs0//g3aq4+H0j/pYWh1cobSP7w/3qtWJtE/8rbSa7Ox1D8/qIsUysLQP3Qprir7rs4/2e4eoPty0j9gP8QGCyfRPzRpU3WPbNM/o3kAi/z6zz+QgqeQK/XSP9JWJZF9kNM/kNeDSfHx0T+jdyrgnufXPyqLwi6KHtc/NKFJYkm5wz+qY5XSM73OP+NtpddmY9A/G0esxacA2j9m2ZPA5hzAP7/wSpLn+s4/NBDLZg5J1D85l+Kqsu/TP7qgvmVOl9I/hLndy31y0z9W8UbmkT/GPyE+sOO/QLw/prT+lgD8yz+/DwcJUb7VPyxmhLcHIdE/t0JYjSWszT/aPA6D+SvbPyNli6Td6M0/TmIQWDm00D8hj+BGyhbJP5yMKsO4G9g/O/4LBAEy0D+m0k84u7XUP/5EZcOays4/qyLcZFQZ1T/swg/Op47UP7g6AOKuXtA/3/lFCfoL0D8e/MQB9PvSPx2wq8lTVtM/RSv3ArNC0z/mlICYhAvUP8zs8xjlmc0/sr6ByY0i1z9iga/o1mvUP1OWIY51cc8/ppnudVJf0D8jS+ZY3lXNPxcP7zmwHNw/gUHSp1X0xT+HakqyDkfWP26GG/D5YdA/3EqvzcZK0T/c8Sa/RSfUP03zjlN0JNU/6/1GO274xz+2os1xbhPXP8keoWZIFdI/3gIJih9j1j/eAgmKH2PWP0zeADPfwdM/qvHSTWIQ0D/VkSOdgZHaP2zRArStZtA/CAQ6kzZV0T+Ns+kI4GbQP/7w89+D18o/kMGKU62F0j/wwADChxLQP7k0fuGVJMk/uCBblq/L1T+RSNv4E5XJP8MoCB7f3tY/lZo90AoMyT8Rp5NsdTnQP/w07s1vmNM/ogp/hjdr0z/E7dCwGHXJPzKuuDgqN8k/ZCDPLt/62D9vgJnv4CfTP3VY4ZaPpNk/32xzY3rC1j9uFFlrKLXPP/66050nntM/rgyqDU5E0D+SeHk6V5TQP74yb9V1qNQ/uynltRK61j9e2nBYGvjJP4Dyd++oMdM/GJXUCWgi2D8+d4L917nSP6g65Ga4Ac0/H9lcNc8R0D+Eg72JITnLP2X7kLdc/dk/HjUmxFxSyT9fe2ZJgJrVP9+KxAQ1fNg/D18mipC61z/n4JnQJLHKP3FzKhkAqtQ/e5+qQgOxzD+iJCTSNv7UPyNrDaX2Isg/RDaQLjat0j/fwU8cQL/RP5D0aRX9oc0/yf/k795Rzz/qA8k7hzLVP+LqAIi7es0/Fy6rsBngxj+HNCpwsg3XPyhDVUyln9Q/K4TVWMLa0z+MLm8O12rNPxCv6xfshtM/bHcP0H05zT9HkiBcAYXUPz7KiAtAo9I/MT83NGWn0T8psWt7uyXSP77Z5sb0hNc/Hw4SonxB1z8w9fOmIhXQP2TrGcIxy9Q/ArwFEhQ/zD/hCFIpdjTSP4Y5QZscPtM/cjJxqyAG0D9HyECeXb7QP5q2f2WlSdQ/TvG4qBYRyz88aeGyCpvQP9Ye9kIB288/vVZCd0mc1T+lLEMc6+LMP3AH6pRHN84/DwwgfCjR1D87Un3nFyXTP/UOt0PDYtU/jspN1NLc1T+fVWZK62/PP8X+snvysNI/FmwjnuxmzD+PwvUoXI/QP/VHGAYsudM/5gXYR6eu1D+MZ9DQP8HNPzkPJzCd1to/HClbJO1G0D8kQ46tZwjTPy4cCMkCJtQ/GePD7GXb1D8qApzexfvHP7sLlBRYANU/SKeufJbn1j9xPQrXo3DYP9e/6zNnfcY/Y15HHLKB0z/5Eb9iDRfTP/gb7bjhd9U/6wCIu3oV0z+oN6Pmq+TQP211OSUgJtA/I9dNKa+V1j+I1oo2x7nNP4LHt3cN+tQ/EarU7IFW0D+a7+AnDqDUPwcpeAq5UtA/0EcZcQFo0j8cmNwostbMP0P+mUF8YNE/QIhkyLH10j/eyhKdZRbYP1Cm0eRiDNU/msx4W+m1yz8uU5PgDWnKP9xlv+5059A/QNr/AGvV0T9ksU0qGmvFPypz843ontg/QrCqXn6n0T8G2bJ8XYbPPwABa9WuCdM/gdB6+DJR0T/d66S+LO3KP58CYDyDhtM/vFgYIqev1T+qZtZSQNrNP7B2FOeoo9g/6MHdWbvt0T/owd1Zu+3RP4RGsHH9u9E/ritmhLcH0z9Rn+QOm8jTP6VmD7QCQ9A/1HyVfOwuzj/zkCkfgqrPP1T9SufDs8g/e/gyUYTUxz9G0QMfgxXWP7ngDP5+Mc0/mUnUCz7N2D8+sU6V7xnDP18lH7sLlMg/hEvHnGfs2T8TDOcaZmjZPyKKyRtg5s0/hCo1e6AV1j+TG0XWGkrNPyzTLxFvnc8/LzArFOl+1T+jIHh8e9fRP1rXaDnQQ9c/j+TyH9Jv0j87/3bZrzvTP6+XpghwetI/e/gyUYTU1T/o9/2bFyfQP9AOuK6YEdE/F/Ayw0ZZyT+7Q4oBEk3TP/xR1Jl7SNM/Jm+Ame/g0T9a8nhafuDTP+P+I9Oh08k/5j+k374O1T98gO7Lme3SP9icg2dCk84/fLlPjgJEzz+Qn41cN6XTP/jhICHKF9E/z4HlCBnI0D+a0Y+GU+bOPwEydOygEtA/4PPDCOHR0z9xHk5gOq3UP6lKW1zjM9A/Wf0RhgFL1j9DxqNUwhPYPy9szVZe8tM/E7ngDP5+0j/fbHNjesLRP2fTEcDN4tE/0UGXcOgt0T9/hGHAkqvKP+ELk6mCUdY/p1t2iH/Y0z/g2R694T7MP2L3HcNjP9E/1o13R8Zq0T+F7LyNzY7OPwOzQpHu59Q/8L+V7NgI0z9qpRDIJY7SP+9wOzQsRtg/CmR2Fr1T1T9qGD4ipkTRP/hwyXGndNE/6NoX0At3yj8suB/wwADKPyvCTUaVYdE/r1sExvoG0D/sNNJSeTvWPzHvcaYJ280/ZOYCl8ea1z+U3czoR8PUP2stzEI7p9Y/FMstrYbEzT/qeMxAZfzQP9yDEJAvoc4/MgOV8e8z2j8xX16AfXTRP+W5vg8HCdQ/A0Lr4ctEzT/bbRea6zTVP0jElEiil8k/mFDB4QUR1j+JRQw7jEnJPyNOJ9nqctM/0GG+vAD71z9IbHcP0H3SP2DLK9fbZtE/6J/gYkUN0T/8yK1JtyXVP5xTyQBQxck/JTs2AvG63T9IizOGOUHRP7kZbsDnh9I/BK+WOzPB0T/XvoBeuHPPP/rwLEFGQNE/Uz9vKlJh0T8E5iFTPgTUPzF72XbaGtc/YqJBCp5CzD+3Xz5ZMVzTP3pQUIpW7s0/TwXc8/xpzz8tIorJG2DTP2lU4GQbuNI/Tn6LTpZazz97TQ8KStHQP6pDboYb8NE/oMVSJF8J0D8Sg8DKoUXOP6LuA5DaxNM/saayKOyi0z+AtWrXhLTQPy7iOzHrxc4/O8eA7PXuyT9tWFNZFHbNP5cBZylZTtE/SkIibeNP0j+imLwBZr7TP5X0MLQ6OdY/jlph+l5D0j85XoHoSZnTPzTW/s726NU/AtiACHHl0j/Z0M3+QLnTP+NxUS0iitE/LPTBMjZ00z8R4srZO6PUP6oM424QrdQ/uU+OAkTB1T9GYRdFD3zMPw3k2eVbH9M/VVG8ytqm0j907+GS407WP7ow0ova/dI/Rgw7jEl/zz8a/Wg4ZW7UP8Kht3h4z9M/FkuRfCWQyD/RPesaLQfOP88Qjln2JNY/oDiAft+/zz8iUP2DSIbUP8TsZdtpa84/JAot6/6xzD9SDmYTYFjRP4SbjCrDuNc/qbwd4bTg1D8Iym37HvXWPwWKWMSww8w/X3mQniKHyD9V98jmqnnTPyl1yThGss0/opxoVyHl0T99Bz9xAP3TP4Ek7NtJRNQ/MxXikXh52D9z1xLyQc/GPzepaKz9ndA/WvJ4Wn7g0T/FyJI5lnfVP0HxY8xdS9M/DqMgeHx70T/RdeEH51PVP6hxb37DRNU/Iy4AjdKlzz8uOIO/X8zRPzo7GRwlr84/9DEfEOhM1D8hOgSOBBrRP3eiJCTSNtI/6E6w/zo30T8OvcXDew7TP9TzbiwoDNE/YoOFkzR/0j9BRGraxTTUP/ymsFJBRdY/6ITQQZdwyj/TFWwjnuzUP2ZK628JwNI/63B0le6u0j8wTKYKRiXPP4523PC76dI/wJfCg2bX3D9sdw/QfTnTPw7Y1eQpq8c//kRlw5rKyD/PaRZod0jVPzpAMEeP38s/NL+aAwRz1T8G1QYnol/WP6+UZYhjXdo/5Eo9C0J51j8xXYjVH2HIPwpI+x9grdI/UMO3sG68xz83ixcLQ+TVPxjuXBjpRc0/ZHWr56T30j/7yoP0FDnRP9PYXgt6b9Y/DDuMSX8v1D94t7JEZ5nSPxE0ZhL1gs0/ilbuBWaF2D/N6EfDKXPZP0xsPq4NFc0/x7sjY7X5zT+v6UFBKVrVP0sBaf8DrNA/jpWYZyWt0D+4zOmymNjRPwys4/ih0tM/SE4mbhXE0T9G7X4V4LvSP8wHBDqTNss/Im5OJQNA1z9D5PT1fM3TPzBGJAot69Q/MEYkCi3r1D8FptO6DWrVP7qhKTv9oNA/6USCqWbW1T97SWO0jqrOP/w2xHjNq8g/oWr0aoDSyj8MOiF00CXRPz8cJET5gtI/DXGsi9to1D+1GhL3WPrIP5ilnZrLDc4/hEiGHFvPyD+XV663zVTSP34AUps4udQ/Nez3xDpV0D8H7dXHQ9/PPy3saYe/JtA/e8GnOXmR0z8vpS4Zx0jQP0T4F0FjJtI/16VG6Gfqzz8G9phIaTbPP4MWEjC6vNM/vRqgNNQo0z9+O4kI/yLTP9+I7lnXaMs/vXFSmPc42D+gi4aMR6nIP/cDHhhA+NE/RgckYd9O3z+huU4jLZXFP34YITzaOMo/+Um1T8dj0j/S30vhQbPUP93u5T45Csw/vwzGiEShzz/EeM2rOqvSP8Zun1VmSs0/q7GEtTF21T8i+yDLgonNP3hjQWFQpsk/gIEgQIaO0T+vfJbnwd3TPxkdkIR9O88/xw2/m27Z0T9dM/lmmxvXP3+jHTf8btI/0sQ7wJMW0z9CQSlauRfOP8E4uHTMedY/AB+8dmnD0z/Xo3A9CtfTP7GIYYcx6dE/OX09X7Nc0j/Obi2T4XjMP9uIJ7uZ0dY/p60RwTi41T+D3EWYolzOPyxjQzf7A9U/ZY9QM6SK0j9upddmYyXQP1Q57Sk5J9I/IlD9g0iG0j/4xaUqbXHNPybhQh7BjdI/xQPKplzh0D+2nbZGBOPRP7L2d7ZHb84/NGQ8SiU8zz9oz2VqErzVPxKhEWxc/8Y/nZs24zRE3z+H26FhMerMPzij5qvkY88/PulEgqlm2D9NhA1Pr5TSP5m36jpUU9U/dLSqJR3l0T8WFtwPeGDTP0QZqmIq/cw/Xi13ZoLh0j+BWgwepn3PP0n0MorlltQ/PgYrTrUW1T/UCz7NyYvTP6Et51JcVcY/cXUAxF291D86WtWSjnLOP32W58HdWdY/liNkIM8u0j8mOPWB5J3QP25RZoNMMtA/0sPQ6uQMzz9xAz4/jBDMP5gYy/RLxNM/lsyxvKsezj/20akrn+XWP5G1hlJ7Ec0/KV/QQgJG0z9WC+wxkdLTP4ekFkomp84/ZePBFrt91D/5gas8gbDPPzljmBO0ydU/gjl6/N6mxz+9GqA01CjRP61LjdDP1NE/WkdVE0Td0z8KSzygbMrSP3Sy1Hq/0dM/Vd6OcFrw0T8T1PAtrBvNP4bj+QyoN9Q/4c/wZg3e2z87p1mg3SHQP2CUoL/QI84/V0Chnj4Czz+yKsJNRpXTP1or2hznNtA/Gm8rvTYb1T/II7iRskXRPzc3pics8dg/gQhx5eyd0j+8PJ0rSgnTPwxXB0Dc1dE/bJT1m4np0D/us8pMaf3QP9ZwkXu6utA/ZhNgWP58zT9EUgslk1PJPyqMLQQ5KNA/dc3km21uzj+05zI1Cd7OP+XQItv5ftU/iCtn74y20z/CaixhbYzQP+EKKNTTR9Q/3uhjPiDQ0D8PDvYmhuTOPxAGnnsPl8g/m1d1Vgvs0T+/RSdLrffSP0/Pu7GgMNM/eQWiJ2VS1T+jPV5Ih4fMP2xB740hANU/r5gR3h6EzD//Qo8YPbfKP4UKDi+ISM8/AmN9A5MbwT9GJuDXSBLEP9eIYBxcOsI/KQXdXtIY1T+xbVFmg0zRP+0seqcC7tA/H9rHCn4b2D9tq1lnfF/IP9CzWfW52tI/zxJkBFQ40T8GuYswRbnIPzUpBd1e0tQ/davnpPeNzT9VpS2u8ZnRP5dSl4xjJNE/+MYQABx71D86eZEJ+DXYP2qiz0cZcdg/UwjkEkceyj/bhlEQPL7VP312wHXFjNE/P3PWpxyTxz8robskzorTP9cxrrg4Ks8/zH9Iv30d0j/w94vZklXWPy6rsBnggso/007N5QZDyz/UfJV87C7XP4LHt3cN+s4/ChNGs7J90T8V4/xNKETSPwJ/+Pnvwc8/wW9DjNe80T9LyXISSl/KP64P641aYcg/FajF4GHaxz8BFY4glWLTPzJaR1UTRNI/KPG5E+y/0T8vMZbpl4jTP+Y7+IkD6M0/hXzQs1n11D9sByP2CaDTP8wIbw9CQNM/nn5QFymU0j81mIbhI2LOPztSfecXJdE/gNO7eD9u0T+A07t4P27RP9+oFabvNdM/7Q+U2/Y90z+21hcJbTnSP49yMJsAw9E/fA4sR8hA0j9lARO4dTfRP7JIE+8AT9E/m/9XHTnS1j9uwygIHt/MPxbdek0PCtY/OPjCZKpgxj/Yg0nx8QnWP2VwlLw6x9A/FCLgEKrU1D8pJm+Ame/MP3GuYYbGE9E/aVVLOsrBzD86sBwhA3nUP4dQpWYPtNI/Z5qw/WSM0T8Hms+52/XTP6kwthDkoNM/D0jCvp1E3D+houpXOh/RP88u3/qw3tU/pn7eVKTCzD/GMCdok8PNP6x0d50N+dc/W+ogrweT1z/bwvNSsTHTP8Tt0LAYddE/IlFoWfeP0D/eHRmrzf/UP76jxoSYS9c/VvKxu0BJ3D9gkV8/xAbNPxQF+kSeJNc/4J18emzLyj/RI0bPLXTVP65i8ZvCStE/PkLNkCqK1T9QOSaL+4/WPxHjNa/qrNA/93ghHR7CyD+ZuFUQA13XP+FfBI2ZRM8/4V8EjZlEyT/vj/eqlQnRPzCeQUP/BNY/h4xHqYQn1z9pw2Fp4EfSP9xGA3gLJNQ/6s4Tz9kC0D98Q+GzdXDVP1xXzAhvD8w/OsyXF2Af2D8rhqsDIO7SP4KQLGACt8o/OGVuvhHd1T/J6ev5muXVP8nogCTs288/tqFinL8J2z8STDWzlgLXP1h06zU9KNA/RL+2fvrP1j/B4nDmV3PXP+oFn+bkRdA/mntI+N7fzj8O95Fbk27PP+dWCKuxhNY/YHe688Rz0z++g584gH7UP6UTCaaaWc0/liU6yyxC1D9voMA7+fTGP0JClC9oIc8/7KAS1zGu0j/hKHl1jgHQP1G7XwX4btA/QrEVNC2x0T/hmjv6X67NP07TZwdcV9s/YWwhyEEJzz+T/fM0YJDQP43sSstIvc8/6rEtA85SzD/Tvrm/etzFP2PRdHYyONM/H4Kq0asB0T/Z7bPKTGnNPxZruMg9XdU/M8UcBB2t0D9Eh8CRQIPJP5on1xTI7NM/SMX/HVGh0D8tJ6H0hZDLPyC3Xz5ZMdY/aXBbW3he0j9A3UCBd/LNP2WMD7OXbdA/hleSPNf30T//QLlt36PUPyIa3UHsTNI/TYdOz7ux0D/rAfOQKR/RPyGP4EbKFtQ/G76FdePd1T/ggQGEDyXMP66f/rPmx88/cf+R6dDp0j+WtOIbCp/NP7ml1ZC4x84/JIEGmzqP0z8J/yJozCTRP3b51of1RtA/BJDaxMn90j/EQq1p3nHOPw8KStHKvdA/VtXL7zSZ1T/zdoTTghfQPw72JobkZMo/+ie4WFGD0j9fz9csl43TP3vdIjDWN9Q/tTLhl/p50j8gRZ25h4TSP5nZ5zHKM9M//+cwX16Azz8XZwxzgjbRPxfVIqKYvNY/a0qyDkdXzT//eRowSPrRP1g7inPU0dM/EheARunS0j8ZWMfxQ6XRP0rvG197ZtE/K2ub4nFR1D/M1CR4QxrSP0IIyJdQwdM/QS0GD9O+yz8xthDkoITLPyrkSj0LQtM/5E7pYP2f0T+SdqOP+YDOP+ilYmNeR9A/NNWT+Uff0j/erMH7qlzRP7XFNT6T/dI/sMbZdARw1j8vFRvzOuLMP+qRBre1hdA/fjoeM1AZ1D/FNxQ+WwfQPzmYTYBh+dQ/ERssnKT5xz8iOZm4VRDHP8Qj8fJ0rtU/I9dNKa+Vyj8dHVcju9LVP634hsJn69A/39+gvfp40D+QaW0a22vTP4at2cpL/tE//HH75ZMVzT/BGfz9YrbRP5M5lnfVA9I/nuxmRj8a0j/wTdNnB1zNP56ZYDjXMNM/vVErTN9r0T/rjsU2qWjXP4yeW+hKBMo/KQmJtI0/0z/AXIsWoG3PP8/0EmOZftA/Tz3S4La21T9QGmoUkszaP87Cnnb4a8w/WtjTDn9N1D9prP2d7dHUP+F9VS5U/ss/HcwmwLD81T+g+geRDDnGP8k7hzJUxco/0jb+RGXD1j/9gt2wbVHRP4enV8oyxNA/VhFuMqoMyT8UmE7rNqjWP1e1pKMczM4/4L4OnDOizD9B1H0AUpvRP4wv2uOFdMo/kdYYdELo2D9u2ozTEFXZP8hfWtQnucs/9fV8zXLZ0z9J2SJpN/rRP5bP8jy4O9Q/hNVYwtoY0z+wOnKkMzDQP9ejcD0K19g/++jUlc/y0D9XfEPhs3XVP2RZMPFHUdU/tmYrL/mf2D8b9KW3PxfQP4ih1ckZitM/RfXWwFYJyj8hOgSOBBrSPzsZHCWvzsk/dAmH3uLhzz/yBwPPvYfJP+W2fY/6688/ahSSzOod0T+7KlCLwcPSP7gE4J9SJcw/iGTIsfUM0z+Xi/hOzHrJP8Q/bOnRVNA/Urr0L0ll0T+x3NJqSNzQP12o/Gt55cw/SG5Nui2R2D+ut81UiEfYPy4EOShhps0/UTI5tTNM1D8ttHOaBdrPP/Lrh9hg4cw/bOun/6z50D9Z+tAF9S3PPyqLwi6KHtA/duCcEaW90z/B5hw8E5rOPwHcLF4sDNM/dZKtLqcE0T9VpMLYQpDUPz2CGylbJNc/5+CZ0CSx1z8X1/hM9s/QPzrKwWwCDMc/Lv62J0hs0T+/9PbnoiHUP3JO7KF9rNQ/ByRh304i0j/wiXWqfM/MPy0kYHR5c9c/3QphNZawyj/ulXmrrkPTP3juPVxy3NQ/MEYkCi3rzj9mFqHYCprQPw5ORL+2ftM/68N6o1aYzj/DZKpgVFLTP9u+R/31CtA/AhHiytk70j+JtfgUAOPPP9Ei2/l+atY//Bu0Vx8P0T8lrmNccXHUP/jDz38PXtQ/kNsvn6wY2D/xSLw8nSvWP90nRwGiYNM/TODW3TzV0z+Cc0aU9gbQP4JzRpT2BtA/oZ4+An/40z+SrwRSYtfSP0SGVbyRedk/Fk7S/DGtyz9QbXAi+rXSP+7PRUPGo8w/J6Wg20sa1D8XYYpyafzKP87drpemCNI/QPhQoiWPyz+MTSuFQC7VP8fVyK60jMo/cD/ggQGEzT+p2JjXEYfRP9b/OcyXF9E/qu6RzVXz0j98tDhjmBPSP+NPVDasqdA/14aKcf4m0z8aGHlZEwvVP8y4qYHmc9w/eNFXkGYs0D8jgnFw6ZjLP7lQ+dfyytc/0uP3Nv3Z0D/qPCr+74jTP4Uks3qH28s/VU57Ss6J0j/l7QinBS/RP/CjGvZ7YtM/dO0L6IU70z/5Zpsb0xPSP5oIG55eKdM/Ijgu46YG1j+w5ZXrbTPNPzygbMoV3tc/CDpa1ZKO0j+MTMCvkSTRP/ay7bQ1ItA/Z+22C8110T8r3sg88gfRP/GAsilXeNk//kXQmEnUyz8bn8n+eRrTPy0JUFPL1tU/aLEUyVcCyz+mRX2SO2zIP1eYvtcQHNA/S6yMRj6v0D8zb9V1qKbWP5euYBvxZNE/Sdi3k4jw0T95AfbRqSvQPyeEDrqEQ9k/0ZFc/kP6yT8XKv9aXrnUP7fu5qkOuck/rgyqDU5E0z//HydMGM3GPzj1geSdQ8s/rrZif9k9zz8nwLD8+bbRP+MYyR6hZso/k6zD0VW6wz/3V4/7VuvQP7zOhvwzg9Q/h/pd2Jqt0D+3tvC8VGzTP103pbxWQtE/4/4j06HT0z/6Qsh5/x/SP+27IvjfStE/mSuDaoMT0z+alIJuL2nWP0SoUrMHWtQ/eXb51of10z/5TPbP04DJP+KuXkVGB9U/tvXTf9b81z/WyRmKO97QP0Qy5Nh6htE/otEdxM4U0j9sBOJ1/YLVP0TecvVjk9M/B5s6j4r/1T/OpiOAm8XQP/J8BtSbUdE/Tn0geedQzD/iP91AgXfOP8/ZAkLr4dA/V1wclZuo1T/UgEHSp1XIP12mJsEb0tU/D0bsE0Ax0T/kMJi/QubOP0XXhR+cT9k/p804DVGFxz9R9SudD8/IP26HhsWoa80/RdrGn6hszD+ln3B2a5nKP8LDtG/ur9M/LQq7KHrg1D+SWiiZnNrNP5xOstXllNs/d78K8N3myz+Qos7cQ8LUPwjKbfse9dE/EFmkiXeA1j/QZP88DRjaPz/+0qI+yc8/W0HTEiuj2j8raFpiZTTeP4GU2LW93c4/4e6s3Xah1D+p2QOtwJDNPzcWFAZlGtA/bvdynxwF0z/nU8cqpWfOPxJosKnzqNM/XB5rRga50T9cHmtGBrnRP0ksKXef49A/wktw6gPJ1D8U61T5npHOP2jNj7+0qNw/NJ2dDI6SwT9EM0+uKZDUP/So+L8jKtI/6L0xBADH1D/MXyFzZVDQP/jCZKpgVNI/SPje36C9wj/LZ3ke3J3XP52ed2NBYdA/RfKVQErs0z9N+KV+3lTOP+SfGcQHdtE/W7G/7J480D+4O2u3XWjSP5JYUu4+x80/uJBHcCNl0T+hurn4257RPzpZar3faM8/lwLS/gdY0z8ZVvFG5pHJP9tSB3k9mMY/jNe8qrNayj+QMAxYchXXP2a/7nTnidE/9N2tLNFZ0j99z0iERrDSPw8KStHKvc4/dLLUer/R0T8sRfKVQErUP49yMJsAw8Y/qYQn9PqT2D874/viUpXTP26kbJG0G9Q/qiheZW1T1D9MFvcfmQ7UP11vm6kQj9I/kiQIV0Ch0z/XFMjsLHrUPyY49YHkndM/djQO9buw0D8HDJI+raLVPz7NyYtMwNI//tXjvtU6zz+dLouJzcfVP4gvE0VI3c4/jdDP1OsW0T+XrIpwk1HLP88SZARUOMw/aFiMutbe1D/IztvY7EjLP2XG20qvzdA/mdNlMbH50z/oL/SI0XPSP69cb5upEM0/Vd/5RQn61j+zJEBNLVvPP4AqbtxiftM/fGRz1TxH0D9OtKuQ8pPQP1DDt7BuvNE/5xpmaDwR0j+r6Xqi68LUPw8r3PKRlNY/IQVPIVfq0D9qMuNtpdfWPyDxK9ZwkdA/LhwIyQIm0z9CI9i4/l3QP/kSKji8IMw/yTuHMlTF0T83qP3WTpTVP0ZgrG9gcs0/rYVZaOc0yz/ZlZaRek/TPygNNQpJZsU/HLKBdLFp0z8mAP+UKlHQP0/KpIY2AM0/6nsNwXEZ0j+gw3x5AfbPPw2NJ4I4D9Q/skeoGVJF1D++Ly5VaYvQPzEjvD0IAc8/Er2MYrml0z+pFDsah/rTP0AxsmSO5cs/t+7mqQ651j+rWz0nvW/VP8gjuJGyRdc/42vPLAlQ0j8ce/ZcpibUPwa7YduizNA/iX5t/fSfzz9Yc4Bgjh7QP9RIS+XtCNU/Z0Rpb/CFzT/yttJrs7HMP2LWi6GcaM0/YvVHGAYsyT+AuRYtQNvXP9Ei2/l+atE/944aE2Iu0j8TfT7KiAvRP40pWONsOso/wf9WsmMj1j8X8ghupGzTP6DFUiRfCdM/RbsKKT+p0z/fiy/a44XTP21Wfa62YtA/9Ik8Sbpm0j+YMJqV7UPVP0C9GTVfJdQ/lpaRek/l0j/FPCtpxTfQP/Xx0He3ss4/g9xFmKJc0T+M1lHVBFHTP5hokIKnkM8/88tgjEgU1T98ZHPVPEfVP3l3ZKw2/9I/5Pc2/dmP0T+OeLKbGf3SP6Im+nyUEdA/9L9cixag0z9zgjY5fNLSPyB6UiY1tNM//IwLB0Ky0j/ImSZsPxnNPwH20akrn9M/JXmu78NB1D+fru5YbJPRP204LA38qNM/6peIt86/zz+/02TG20rPP7/WpUboZ9A/pMFtbeF50z8aFqOutffPP0YnS633G9M/Z/D3i9mS1T/ZtFII5BLRP8SZX80BgtI/AaYMHNDS1T/m6zL8pxvOP7GnHf6arNM/yJi7lpAP0z8CRpc3h2vXP7RZ9bnais8/hnDMsieB0T89gEV+/RDQP2GqmbUUkNQ/n+klxjL90D/wiXWqfM/RPwk2rn/XZ84/BDv+CwQB0j/+17lpM07cP665o//lWtU/+5EiMqzi0D/5vrhUpS3UP9o4Yi0+BdU/odgKmpZY0T+oj8Affv7NP9TuVwG+29E/P3CVJxB21T99XvHUIw3OP6weMA+Z8tE/S5S9pZwv1T8gf2lRn+TOP+se2Vw1z9A/sB9ig4WT1j8uy9dl+E/RPy7JAbuaPM8/fJi9bDtt0j+ZEd4ehIDUP2A+WTFcHdA/Yk7QJodP1D94feasTznXPyv7rgj+t9Y/91llprT+zD/4bvPGSWHTP2NGeHsQAtM//nxbsFQX0j8tQrEVNC3SPzFe86rOatc/5e/eUWNC0D+ki00rhUDUP0oIVtXL79I/CvfKvFXX0z8OvFruzATSP7hAguLHmM0/gPEMGvonyD81Qj9Tr1vMP2qkpfJ2hM8/SPq0iv7Qyj+RgTy7fOvNPy7HKxA9Kdg/Bi/6CtKM0j/q501FKozQP6YmwRvSqNI/Z5jaUgd51D8j9DP1ukXOP8kcy7vqAc0/cSGP4EbK0j+jHTf8brrNP0w0SMFTyM0/jQkxl1Rt0j84EmiwqfPQP0637BD/sNM/m3Eaogp/0j8jLCridJLNPyHJrN7hdtM/v56vWS4b0T8kKlQ3F3/WPwlrY+yEl9U/Arfu5qkOzz9jZMkcy7vMPzfiyW5m9NE/9ifxuRPs1z+wWMNF7unKPyo25nXEIdM/GXYYk/5e0T/TTs3lBkPSP5VkHY6u0s0/r7X3qSo00j+oUx7dCIvOP/vL7snDQtM/AHFXryKj0j9NTYI3pFHJPzcXf9sTJNU/7WXbaWtE1T/eHK7VHvbYPwZLdQEvM9c/bAiOy7ipzz9AaD18mSjRP6SLTSuFQNA/6WD9n8N8zz98KTxodt3RPzPd66S+LM0/U3WPbK6a0z9+VS5U/rXSPyaMZmX7kMk//gqZK4Nqyz92btqM0xDQPxMNUvAUctM/jIUhcvp61T9716Avvf3UP0jhehSuR9E/7YFWYMjqyD9I/fUKC+7SP3y3eeOkMNc/7+TTY1sGyj9bRBSTN8DSP76fGi/dJMo/CtejcD0K0z+IodXJGYrQP/orZK4MqtQ/NbVsrS8S0z+iYweVuI7NPw7ZQLrYtNA/gXueP21U0T+jztxDwvfTP1YpPdNLjNI/kfEolfCEzD84ukp319nZP9JWJZF9kMs/gzXOpiOAyz8I6L6c2a7RP00QdR+A1NE/dcx5xr5k1D8BMQkX8gjQPzaRmQtcHtE/HjNQGf8+0T+ELuHQWzzMPx78xAH0+9A/Sx3k9WBSxj/uBWaFIt3JPz1jX7LxYNE/d/NUh9wMzT9eukkMAivVPzS/mgMEc9E/VwirsYS10T9Ce/Xx0HfRP9JWJZF9kNE/j6m7sgsG1T979fHQd7fIP0Av3Lkw0tM/HCWvzjEgxz9SnQ5kPbXMP9i61Aj9TNg/XtpwWBr41D+k/Q+wVu3VPyHlJ9U+HdM/oTGTqBd80j/+0qI+yR3SP1W/0vnwLM0/ZHPVPEfkzT+JC0CjdOnLP12pZ0Eo79Q/E/OspBXf0T/WAntMpDTVP3ZvRWKCGtM/eEXwv5Xs0z8QlrGhm/3QP8zxCkRPytc/M6fLYmLz0T874SU49YHRP5pgONcwQ9E/z/boDfeR0j/lfoeiQJ/QPwStwJDVrdE/krOwpx3+0D9eaK7TSEvUPyy5isVvCtI//rj98smK1T/Eew4sR8jUP6UWSiandtM/VW03wTdN0z/+7bJfd7rJP1VoIJbNHNc/qvQTzm4t1D/7y+7Jw0LXPziie9Y1WtE/KZKvBFJi2D/z6EZYVMTYP2a+g584gMg/r5P6srRT0z+chqjCn+HXP0rToGgewNM/Nq5/12fO0D8V5dL4hVfMP667eapDbsQ/yRzLu+oB0D/Ki0zAr5HIP3Ms76oHzMs/ibX4FADj0D+XyXA8nwHWPzVB1H0AUs8/VmZK628Jyj+BPpEnSdfKP/qzHykiw9E/elORCmML0j9i9NxCVyLQP6d0sP7PYc4/rDyBsFOs0z82lNqLaDvKP3cSEf5F0NA/5gZDHVa4zz+/fLJiuDrQP6/NxkrMs8w/8X7cfvlkyT8mUS/4NCfUP6UV31D4bNU/IQVPIVfq0T/U8C2sG+/TP5G1hlJ7EdY/eJYgI6DC0T8Zc9cS8kHQPwlQU8vW+tE/aqD5nLtd0T93nQ35ZwbVP2whyEEJM80/8ZvCSgUV0T8S9u0kIvzVP78OnDOitMk/SKeufJbn1T+Iad/cXz3WP6sGYW73ctc/dmwE4nX9zj9HdqVlpN7RP5AWZwxzgtM/RIoBEk2g0j/83qY/+5HQP5DcmnRbItI/ouwt5XyxzT87xhUXR+XRP5f/kH77OtU/TUhrDDohyD9bttYXCW3PP3o2qz5XW9E/IZT3cTRH0T+vlGWIY13RP/ORlPQwtNI/l+MViJ6U1T/tEWqGVFHTP3JPV3csttA/NbOWAtL+0T+VYkfjUL/XP3jwEwfQ788/P5C8cyhD2D88oGzKFd7YPz1GeeblsNA/gEqVKHtL0T9PXfksz4PRP6M+yR02kdc/hXr6CPzhyT+EKjV7oBXEPwbaHVIMkMY/ymyQSUbO1D+CcAUU6unVP7KC34YYr88/AyLElbN3zj9pVrYPecvLP7MJMCx/vtI/sU0qGmt/0j9Rg2kYPiLOP+9YbJOKxtU/SrVPx2MGyj/Zd0Xwv5XVP91B7Eyh89Q/yhXe5SK+1T8dPulEgqnTP0rUCz7NydM/tVGdDmQ90D9rDaX2ItrMP9oEGJY/38o/jxfS4SGMyT/CacGLvoLXP7YTJSGRttM/ZhAf2PFfyD++ZrlsdM7SP8Gtu3mqQ9g/fm/Tn/1IyT/034PXLm3VP89OBkfJq9E/yy2thsQ91D+poKLqVzrSP9WT+UffpMs/Nq0UArnE0j8Z48PsZdvNP+6Yuiu7YNI/mSoYldQJyj98mL1sO23XP2mNQSeEDtc/A7aDEfsEyj+8W1mis8zTP9RjWwacpdM/miMrvwzG0T/NctnonJ/QP46R7BFqhs4/UdzxJr9Fzz+xi6IHPgbPP5nWprG9FtI//BnerMH71j++T1WhgVjOP1DgnXx6bNA/lYCYhAt50D+Q2Vn0TgXRPwTKplzhXdI/G9mVlpF60z+pTZzc71DQP/z7jAsHQtc/5LuUumQc0T8dVyO70jLOP591jZYDPdA/k1FlGHeD1T/4/3HChNHMP8PX17rUCNU/dLUV+8vu1T/3r6w0KQXSP6G+ZU6XxdE/3uUivhOz1T//CS5W1GDXPzT4+8VsydA/JsXHJ2Tn0T9BZ9Km6h7QPzMyyF2EKdE/QNr/AGvV1T8Qyvs4miPVPxL3WPrQBdQ/Uu4+x0eL0j+sx32rdeLWPwx4mWGjrMs/4IJsWb4uzT9yUpj3ONPTP7vtQnOdRtQ/INPaNLbX0T+y8WCL3T7NP1SNXg1QGtI/Z5qw/WSM0D/zyB8MPPfTP4XNABdky9M/coxkj1Az1T/M7V7uk6PVP6oLeJlho8g/6StIMxZN0j80LhwIyQLMP9AOuK6YEdE/Y2LzcW2o2D87iQj/ImjKP0hTPZl/9NE/E0VI3c6+0j/aBBiWP9/QPy+Lic3HtdE/CHWRQln40T/niedsAaHTP08iwr8IGtM/qBq9GqA0zj9RM6SK4lXXP4za/SrAd9I/746M1eb/1j8hyhe0kIDLP6pm1lJA2tU/p3nHKTqSzz9sdqT6zi/ZP77BFyZTBck/jE0rhUAuzz+Gdk6zQLvQPzeo/dZOlNI/2GFM+nspzD++ZrlsdM7WP5PgDWlU4NI/Xi7iOzHr1D+NRj6veOrXPyOCcXDpmNA/22tB740h0T8LRiV1AprSP5+RCI1g484/F5zB3y9mzz/ncK32sBfQP/j/ccKE0c4/fsNEgxQ82D++Ly5VaYvNPxMteTwtP9M/acNhaeBH1T/H9lrQe2PZP3pVZ7XAHtM/1NfzNctl0z+8Azxp4bLUPwc/cQD9vs0/7kEIyJdQ1T83iqw1lNrNP1SsGoS53dA/8tO4N79h0j8Tu7a3W5LNP4XtJ2N8mNY/vk7qy9JOyz8fveE+cmvXP00tW+uLhNE/yO2XT1YM0T9q96sA323OP169iowOSM4/5dTOMLWl1T9jl6jeGtjVPz9wlScQdso/dqkR+pl61j/qQqz+CMPTP77ArFCk+9Q/pwhwehfv1T/g2LPnMjXQP71w58JIL9k/JvvnacAg3z+r7Sb4punNP6jlB67yBNU/eJyiI7n8zT/7eVORCmPVP0X11sBWCdE/kuhlFMstzz9OKa+V0F3SP0qWk1D6Qsw/qpuLv+0Jzj9enPhqR3HWP8CV7NgIxMs/Nh/Xhopx0T+DM/j7xWzQPzgteNFXkNU/5WIMrOP40T/Y9KCgFK3IPx7htOBF3+A/Mlncf2Q6yj/GUiRfCaTRP6dB0TyARdI/1nH8UGnE0T/Co40j1uLRPxjNyvYhb9A/1jibjgBu0j/f+UUJ+gvVP1DhCFIpdtc/OWOYE7TJyT+ZnrDEA8rQPyF1O/vKg8w/zAwbZf1m2D88vVKWIY7FP2g9fJkoQsY/0O6QYoBE1D9QUmABTBnQPyNMUS6NX9A/C+wxkdJs1D/UY1sGnKXKP6vRqwFKQ8s/5nYv98lR0D/5akdxjjrTP0BLV7CNeNM/BBvXv+sz0z9H5SZqaW7RP2/0MR8Q6NE/jh8qjZjZ0D9PyTmxh/bPPwgGED6UaNM/ya60jNR71T9znrEv2XjQP2pLHeT1YNE/eLZHb7iPzj/x8QnZeRvPP7KDSlzHuNU/i98UViqoyj9/FkuRfCXOPwxcHmtGBtU/09ufi4aMzT8uAfinVInVPzGUE+0qpNM/Zf7RN2ka0z9zvW2mQjzTP6QAUTBjCs4/hsjp6/mazz++wKxQpPvSP3QMyF7v/tY/mzqPiv87zD8riIGufQHUP/5jIToEjtA/t+9Rf73C0D8VONkG7kDLP/8HWKt2Tdo/1/fhICHKzz+EDyVa8njRPwr19BH4w8k/u7VMhuP5yj8a+bziqUfUP7VrQlpj0NA/LPLrh9hg1z/RQZdw6C3ZPwNAFTduMdM/hv90AwXe0z/OiNLe4AvTPzm2niEcs8w/4IRCBBxC0z9wlpLlJJTRP6zI6IAk7NA/QPZ698d71D8eboeGxajXP7ZoAdpWs9A/L8GpDyTvyj9X0LTEymjZP51Hxf8dUdA/TrSrkPKT1D9Ru18F+G7WP9JSeTvCadA/jgHZ690f0z8D7Q4pBkjRP+AvZktWRdU/pDZxcr9D0T8s1QW8zLDPPypWDcLc7s8/uU+OAkTBvD8yqgzjbhDSPzQuHAjJAtM/PSr+74gK1T/12QHXFTPMP+pCrP4Iw84/9N2tLNFZ0j8m4xjJHqHUPxbcD3hgANU//1nz4y8tzD/9hR4xem7LP4nqrYGtEts/T85Q3PEm3j9CWmPQCaHJP50tILQevtU/OiF00CUc1D9D5zV2ierHP62jqgmi7tc/+BbWjXdH0D96q65DNSXYP3SaBdodUs4/MC5VaYtrzj8hj+BGyhbJP5T6srRTc9E/4iL3dHXH0D9vRWKCGr7PPy7FVWXfFdI/7IZtizIb1D9DjUKSWb3UPzPC24MQkNA//5O/e0eN0j9TBDi9i/fXP+ntz0VDxtQ/9OFZgoyA0D/bwB2oUx7RPx+8dmnDYc8/UTBjCtY40T/E0sCPatjSP1CJ6xhXXNE/PfAxWHGqyz/saYe/JmvYP/wdigJ9ItQ/uvlGdM+60z+XUpeMYyTRP+I8nMB0Ws8/wJSBA1q60j8y422l12bRP2y0HOihts8/XkiHhzB+0D/43XTLDvHTP83IIHcRptQ/l8lwPJ8B0D8NcayL22jOPyJRaFn3j9Q/8bxUbMzr0T/04VmCjIDGP+knnN1aJtE/U+v9Rjtu1j8nbD8Z48PTP527XS9NEdE/twiM9Q1M0T8JceXsndHSP4bI6ev5mss/SzygbMoVzD8j9gmgGFnVP+G1SxsOS9A/1J6Sc2IP0T+sHcU56ujUP9czhGOWPdU/mggbnl4p1T/Sw9Dq5AzLPy4fSUkPQ88/aomV0cjn0D+WBn5Uw37TP0AS9u0kItM/LEoJwap61T/n4JnQJLHWPzPeVnptNtA/LGNDN/sD1D8ZdhiT/l7UP7JLVG8NbNU//aNv0jQo2T+B7PXuj/fQP0qWk1D6QtA/LJ/leXB30z/f/fFetTLVP7sM/+kGCtA/KzHPSlrxzT8I46dxb37WP1iP+1brxNE/58jKL4Mx1D/JOEayR6jSP9dNKa+V0M0/PC6qRUQx1T9SRIZVvJHJP+SG30237NM/76gxIeaSzD+m07oNar/UP1ewjXiym8k/203wTdNn0j/SNv5EZcPSP0vnw7MEGdk/hEcbR6zF1D+ZK4NqgxPVP8+Du7N2288/ZMkcy7vq0T9JgQUwZeDIP58561OOydQ/8IgK1c3F0z+CHmrbMArTP1JgAUwZONE/F2TL8nUZzj/s2t5uSQ7IPxRCB13CodE/yO2XT1YM0D8aTS7GwDrIPxl2GJP+Xso/aQBvgQTFxz9aL4Zyol3RP9/+XDRkPNM/bRtGQfD42T8+r3jqkQbPP8Tr+gW7YdM/+Db92Y8Uzz8cmrLTD+rUP3iXi/hOzNA/J/bQPlbw0j/IYTB/hczNP3GOOjquRtU/1sbYCS/Bzz8+y/Pg7qzTPy7KbJBJRtA/skrpmV5i0D+Kd4AnLVzVP6/NxkrMs9c/TwRxHk5gxj/mrboO1ZTEP/Cnxks3idM/vHZpw2Fp3T+c+dUcIJjXPwH4p1SJst0/b4Jvmj471D+haB7AIr/MP4T0FDlE3NA/d7rzxHO20D86W0BoPXzUP4nRcwtdidE/DW0ANiBC0D/9oC5SKAvVP+QvLeqT3Mk/QDGyZI7l1j+HTzqRYKrYP1q8WBgip8U/5V/LK9fbzj/7y+7Jw0LNP13AywwbZdM/wXRat0Ht1D8Kvf4kPnfMPxN80/TZAc8/ZyeDo+TVzz/Jj/gVa7jWP1YRbjKqDM0/xf8dUaG60T/SNv5EZcPOP7AdjNgngNE/Ups4ud+h0T8AHlGhurnSP0fp0r8klcc/qHAEqRQ72T9cyvli78XVP1kyx/Kues4/vRsLCoMy1z8Rqz/CMGDPP1dCd0mcFdw/K2wGuCBb1z8y5q4l5IPVP+HP8GYN3s0/Jo48EFmkyz+5jQbwFkjMP7U2je21oNI/3PEmv0UnzT8Whsjp6/nXP1q77UJzncw/gnFw6Zjzyj+V1AloImzYP4FaDB6mfdI/xXb3AN2X0T8CucSRByLRPwYsuYrFb9I/2spL/id/0z+pUN1c/G3TP4MVp1oLs9Q/6C6JsyJq0j/NyYtMwK/LP25MT1jiAdE/okPgSKDBzD+OrWcIxyzPP+S9amXCL9I/20yFeCRe1j+pFhHF5A3RP/5hS4+metA/H2Yv205b0j+wVYLF4czLP8PUljrI69Q/Hk/LD1zlzz+Qv7SoT3LTP8eDLXb7rM4/A7aDEfsEzD+FlJ9U+3TQP8aoa+19qtQ/lj0JbM7B0D/gE+tU+Z7VP6j8a3nletI/lnoWhPI+0j+uSiL7IMvUP87HtaFinNQ/knnkDwaezT8fniXICKjTP7hX5q26DtQ/2lazzvi+0T/C+j+H+fLRP89pFmh3SM8/vqHw2To40D/0+/7NixPSPwsm/ijqzNI/uW3fo/560D/zPLg7a7fUP+vHJvkRv8g/SMK+nUSEzz9OX8/XLJfTP8/5KY4Dr9I/D39N1qiH0z9eRxyygXTPP9wr81Zdh8Q/tyVywRn80z8aGHlZEwvSPyS1UDI5tdA/z9csl43OzT/GM2jon+DWP1yPwvUoXNQ/C5dV2Axwxz++LViqC3jTP0jA6PLmcM0/WvPjLy3q1z9YOEnzx7TMPyQMA5Zcxco/FJUNayqL0D/T9UTXhR/RPww/OJ86VtA/ntFWJZF91D/TodPzbizSPxbfUPhsHdM/VVG8ytqm1D+eJcgIqHDSPzpXlBKCVc0/GAYsuYrF1D/axTTTvU7WP/J6MCk+Ps0/J8Eb0qjAzT/eIFor2hzLP79EvHX+7dQ/pUqUvaWc0j81XU90XfjSPzf7A+W2fdE/IJxPHauU0z/qJFtdTgnXPyBig4WTNNM/vK/Khcq/0z/TUKOQZFbHP9LlzeFa7c8/I/WeymlPwz/t8q0P643CP7yzdtuF5sg/Zan1fqMd0T/nU8cqpWfRP7WJk/sdis4/0O0ljdE60T+BJVex+E3SP76FdePdkdM/1UFeDybF0T9aZ3xfXKrSP3WtvU9VodA/nG7ZIf5h0T+jAifbwB3SP96swfuqXMo/Wtk+5C1X0T8z+tFwytzXP2GqmbUUkNM/f6Dctu9R0D8CDwwgfCjRP/oLPWL03Mw/pWq7Cb5p1T98REyJJHrQPz7t8NdkjdA/2AsFbAcjzj/Bb0OM17zUPybirfNvl9Q/iEZ3EDtTzj9YchWL3xTZP+UJhJ1i1dw/GXYYk/5e3z/IDFTGv8/OP8ZNDTSfc9M/TTJyFva00j+5wVCHFW7LPwlwehfvx88/pWjlXmBW0D/t2AjE6/rQP4hKI2b2edc/Ql2kUBa+zD/ltKfknNjUP9S4N79hotI/YCFzZVBtzj+7Cb5p+uzUP//nMF9egNU/FJUNayqL0D+uug7VlGTWP7WJk/sditM/chdhinJp0D8P0egOYmfTPyrG+ZtQiNQ/z0iERrBx0z+UhhqFJLPQPzHSi9r9Ktc/16TbErng0T9Zw0Xu6erTPzPC24MQkNI/TMXGvI44zD9Ck8SScvfPP/D7Ny9OfNA/4ugq3V1n1j8Xf9sTJLbJP1jJx+4CJdQ/EDy+vWvQyT92Ul+WdmrVP6VmD7QCQ8g/X3089N2t0z/PSlrxDYXJP+xtMxXikco/ucFQhxVuzz8F4Qoo1NPDP47lXfWAedA/KZSFr6911T+zP1Bu2/fUP+vhy0QRUtE/TvIjfsUa0j+FPljGhm7OP/CICtXNxc8/HzAPmfIhzD9S76mc9pTOPzdQ4J18etc/o1cDlIYazz/3PeqvV1jQP99TOe0pOdg/GESkpl1M0T/dCmE1lrDRP+ykvizt1M4/176AXrhzxz+fOetTjsnWPzRKl/4lqdQ/a0YGuYsw1j9MGqN1VDXTPyh8tg4O9tA/b/YHym37yD/APjp15bPVP1Wi7C3lfNQ/z6Chf4KL0T8QPpRoyePQPyJVFK+yts0/u7ThsDTw1D/IPzOID+zOP7Hh6ZWyDNU/CTauf9dnzj/4im69pgfQPzj1geSdQ9Q/121Q+62d1T8hAaPLm8PVP7ddaK7TSNE/5q+QuTKo0D9GmngHeNLUP7k16bZELtY/h6QWSian0j/0/GmjOh3IPzRo6J/gYs0/4QuTqYJRzz9ZEwt8RbfSP4bijjf5LdI/Vz82yY/41z9Q/YNIhhzZPxMqOLwgItM/WK1M+KV+1D9qM05DVOHRP0lm9Q63Q9I/mus00lJ51j9V9l0R/G/SP5nWprG9Fsg/Qx1WuOUjyz+gNxWpMLbEPxsv3SQGgdM/bt44Kcx70j9BgXfy6bHRP9ArnnqkwdM/5xvRPesa0D/VsrW+SGjSP+/IWG3+X9I/ppiDoKNV0T81Cklm9Q7WP5DdBUoKLNE/NnUeFf931T9rgNJQo5DcP/uQt1z92NQ/wocSLXk80T83b5wU5j3RP2b2eYzyzNA/J/p8lBEX1T8ai6azk8HQP9uJkpBI28w/LZljeVc90z+q8Gd4swbPPyWS6GUUy80/X3tmSYCa0T95IR0ewvjQPwoTRrOyfdA/ixcLQ+T00T8TDOcaZmjSP/gaguMybs4/yO9t+rMf1j/so1NXPsvJP4lCy7p/LM4/TIxl+iXizT+gjVw3pbzQP0RRoE/kSdI/LPLrh9hg0D+qDyTvHMrSPyI5mbhVENE/dlCJ6xhX0z/yfAbUm1HPP1nd6jnpfc0/P6phvyfWzT9HcvkP6bfTP5krg2qDE9g/M05DVOHP0D8xmpXtQ97ZPzUmxFxStdg/PWTKh6BqzD+Q9dTqq6vUP9kj1AypotQ/nuv7cJAQ0j9wW1t4XirVPw+0AkNWt9U/Khprf2d72T/zBS0kYHTXP8O8x5kmbMs/3szoR8Mp0j+sjbETXoLSP6bVkLjH0tY/6Etvfy4a0j9aDvRQ24bQP1n4+lqXGtI/vK/Khcq/zj/oaFVLOsrRPw+3Q8Ni1M0/ZOdtbHak0j/chHtl3qrWP9TvwtZs5cs/TRWMSuoEzj+pS8Yxkj3VP+oDyTuHMtI/gLVq14S00T8ewY2ULZLIP55flKC/0NQ/vayJBb6iyT/RlQhU/yDGP6vtJvim6dM/v5zZrtAH0T88Mlab/1fPP2U08nnFU88/iZXRyOcV1D8xB0FHq1rOP1ezzvi+uMw/gsR29wDd0T9aL4Zyol3RPxmRKLSs+8s/0H05s12h0z+QSxx5ILLOP27gDtQpj9Q/Upj3ONOEzz9L58OzBBnQP1N1j2yumtM/aDwRxHk40D9TdvpBXaTRPzmbjgBuFs0/gxjo2hfQxT/HuU24V+bRP93R/3ItWtA/DB8RUyKJyD8+CWzOwTPNP5FI2/gTldM/WriswmaA2D+6oL5lTpfHP/dY+tAF9ds/O8JpwYu+2T9y+nq+ZrnaP8rAAS1dwcw/q7TFNT6T0D+l3H2OjxbYP3yBWaFI98k/++sVFtwPzj8iN8MN+PzMP/rS25+Lhtg/qb2ItmPqzD/sLlBSYAHTP4/k8h/Sb88/XhPSGoNO1T/uzATDuYbQP3va4a/JGtU/Tn0geedQ0j/d6jnpfePTP24VxEDXvtM/5dL4hVeSzD8G8YEd/wXOP4li8gaY+dM/miLA6V28zT8+6Nms+lzUP1UuVP61vNA/4PPDCOHR0T/zr+WV623SPwyUFFgAU9U/rOC3IcZrzj/ThVj9EYbWP7kYA+s4fsw/PSe9b3zt0j/RAx+DFafTP/H2IATkS9U/9goL7gc80D/LK9fbZirQPwaBlUOLbNA/utkfKLft0D91dFyN7ErQP3E8nwH1ZtI/6pWyDHGs1D/V0AZgAyLRP2vVrglpjdE/yHxAoDNp1D+ln3B2a5nOP71TAfc8f9I/BcQkXMgjzj8yIlFoWffYPzVdT3Rd+M8/7mDEPgEUzz9vgm+aPjvMPy8Zx0j2CNU/pcACmDJw0T/AlIEDWrrRP3Bh3Xh3ZMw/nwQ25+CZyD9vnuqQm+HIPxjshm2LMtY/k+S5vg8HxT8Qd/UqMjrVPwJLrmLxm8o/l6jeGtgq0D+4yD1d3bHMP9JSeTvCac0/N3Fyv0NR2T96/N6mP/vcP17acFga+Nc/zt4ZbVUS0D/mCBnIs8vQP9rhr8ka9dA/M4tQbAVNzz/0Nctlo3PQP/6eWKfK98w/wCDp0yr61D/KMVncf2TSPz9wlScQdtE/nn3lQXqK0j8X1o13R8bQP4kMq3gj88Y/mtGPhlNm4T8uO8Q/bOnZP+vFUE60q8g/+FROe0rOyT9lxXB1AMTQP8X/HVGhutI/bvjddMsO0j/HDipxHePRP1QfSN45lMs/7IhDNpAu0z+hE0IHXcLUP/ZGrTB9r9A/44i1+BQA0D9V3/lFCfrRPz9XW7G/7N0/QnqKHCJu2j900vvG157JP1Z9rrZif8s/9nr3x3vV0j8Qyvs4miPNP2+6ZYf4h8k/EFt6NNWT0z+MaDum7srWP68+HvruVtY/H/et1onL3j/21OqrqwLgPyuGqwMg7r4/HO+OjNXm0D+4BOCfUiXQPyXrcHSV7tU/rdo1Ia0x0j/Jdr6fGi/WP7XBiejX1sk/fhzNkZVf0j8TRN0HILXNPzIFa5xNR9M/U1vqIK8H0j8XZwxzgjbUP6lsWFNZFNU/uATgn1Ilzj/MuKmB5nPZP8uAs5QsJ8c/YhHDDmPS1D/QJodPOpHWP5W3I5wWvNA/Yygn2lVIzz8t0O6QYoDVP0s8oGzKFdw/rfnxlxb10j8Lt3wkJT3XPy4gtB6+TM4/cLN4sTBE0D/Sim8ofLbMP26Kx0W1iNA/hSaJJeXuzz8iGt1B7EzJPzdwB+qUR9A/3pOHhVrT1j8lOzYC8brMP+28jc2OVNM/RNycSgaA0j+Eud3LfXLOP+RqZFdaRtA/EAUzpmCN1D8AVdy4xfzYP0onEkw1s9c/yjFZ3H9k0z+ZSGk2j8PUP4U+WMaGbs4/mODUB5J31T/mIOhoVUvMP/WEJR5QNs0/Ck0SS8rd0z9RMc7fhELKP+ELk6mCUdE/g/krZK4Mzj/HuyNjtfnQPywsuB/wwNA/NJwyN9+Iyj/le0YiNILRP55BQ/8EF9M/dNGQ8SiV0z+tE5fjFYjSP1ggelImNdA/kjtsIjMX2j+Vmj3QCgzPP/M5d7temtI/G2MnvASn0j9b0eY4twnRP8yaWOArus8/dovAWN/A0j9E+BdBYybYP/talxqhn88/HxK+9zdo0j9V203wTdPUPweVuI5xxdQ/071O6svS1z9hTzv8NVnUPypvRzgteNQ/e9l22hoRzj9XPzbJj/jPP3uCxHb3AMs/8fW1LjVCyz8UQDGyZI7NP6J9rOC3IdM/9yLajqm71z/JIHcRpijQPwys4/ih0s4/7E53nnjO0T9uGXCWkuXTP/J376gxIdQ/x2eyf54G2j+jdOlfksreP2vXhLTGoNU/vRk1XyUfzT+BXrhzYaTRP5f/kH77OtI/xxLWxtgJ0z8q/1peud7OPw38qIb9nso/3q8CfLd51j+chqjCn+HJPzCeQUP/BM8/aCWt+IbC0j8glzjyQGTQPz4l58Qe2tE/y9b6IqEtzz/f4uE9B5bRPzjaccPvps8/YDyDhv4J2T9RZ+4h4XvUP+Kt82+X/dg/9l0R/G8lyT8qO/2gLlLKP0hwI2WLpNE/zQGCOXr80j8T1zGuuDjRP9zykZT0MM4/MIDwoURL1T+bxvZa0HvQP/mGwmfr4NI/z6RN1T2y0z9qa0QwDi7WP8MrSZ7r+9Q/n5JzYg/tyz9fYizTLxHYP1a45SMp6cs/RzoDIy9r0T8PRYE+kSfYP0Ltt3aiJNE/VS+/02TGxz9diqvKvivRP79EvHX+7cw/mBWKdD+n0z82yY/4FWvXP5Ln+j4cJMg/ZY9QM6SK0z+3lzRG66jKPyjU00fgD80/HXbfMTz22D9crn5skh/SP6iLFMrC18M/7lutE5fj0z8YP4178xvRP8Bd9utOd9M/LzTXaaSl2D+D/GzkuinWP73/jxMmjMY/fHvXoC+90j+PGhNiLqnRP05jey3ovc8/V19dFajF0D95Bg39E1zQP2TNyCB3EdU/+yKhLedS0T9DjUKSWb3LP+ygEtcxrs4/AWvVrglp0j9uh4bFqGvRPwFO7+L9uN8/MQxYchWL2T99WG/UCtPNPxFtx9Rd2c8/lwLS/gdY0j9+GYwRiULQP07RkVz+Q9I/aoe/JmvU0D8KLev+sRDTPypSYWwhyNY/ufyH9NvX1D8Lz0vFxrzIP5Jc/kP67c0/IGPuWkI+zD/y7PKtD+vQP2bZk8DmHM4/V12Hakqy1D+/8bVnlgTVP+wvuycPC8s/cqYJ20/Gxj+7uI0G8BbMP+D2BInt7tM/e/ZcpibB0D9aDvRQ24bRP/j+Bu3Vx9E/t5vgm6bP0T++ofDZOjjIP86KqIk+H9A/tfl/1ZEjzz/XFp6Xio3QP5T6srRTc9I/n5PeN7720j+t2jUhrTHRP1cju9IyUtA/1IIXfQVp1z/oMF9egH3IP+WZl8PuO9A/uAchIF9Czz9LzR5oBYbZP6AVGLK61dM/rMlTVtP1zj8CgGPPnsvVP8+kTdU9ssk/H0dzZOWX0T/Lun8sRIfSP4ogzsMJTNA/VU57Ss6J1j+g+Zy7XS/QP1LRWPs7290/ZvSj4ZS51j+tiQW+olvSPzeOWItPAdI/aRmp91ROxT9KYHMOngnaP6D/Hrx2ac0/DECjdOlf1T9kV1pG6j3QP8xEEVK3s8s/smfPZWoS0z8uU5PgDWnRPylZTkLpC9E/d9mvO915zD8G2h1SDJDUP/UQje4gdtQ/zvv/OGHC0j+bO/pfrkXVP7iwbrw7Msw/lIPZBBiW1j+gG5qy0w/QP3QLXYlA9do/p60RwTi40z+fymlPyTnWP9xnlZnS+tE/6X+5Fi1A0D/Q7Lq3IjHVP3MrhNVYwso/dcsO8Q9b0T9PdjOjHw3NP5NS0O0ljdA/hjyCGylb0T+NmUS94NPOP9xmKsQj8dA/MPZefNEe1D88vVKWIY7NPykIHt/eNcg/d9zwu+mW2D+aXmIs0y/QPyRiSiTRy9M/hSUeUDbl0D8TQ3IycavUP9L/ci1agMo/svZ3tkdv1j+j6exkcJTRP8DpXbwft8k/Jqd2hqktzz8+ldOeknPSPy9uowG8Bcw/ICkiwyrezj+CVfXyO03OPxtkkpGzsMs/nDV4X5UL2T8FajF4mPbYP3UDBd7Jp8c/BKp/EMmQzT9UAmISLuTRP6xXkdEBSc4/wCUA/5Qq0z+t+lxtxf7QP0YkCi3r/s8/VObmG9E92T/dYROZucDNP9HrT+JzJ9I/TOFBs+ve1j8VU+knnN3OPxdH5SZqadc/hEvHnGfs0z8OT6+UZYjSP31AoDNpU9E/DRe5p6s71T9WYp6VtOLPP9Ju9DEfENM/zok9tI8V0T/Karqe6LrTP55EhH8RNMg/6xuY3Ciyzj+zlgLS/gfRPxJsXP+uz9A/ZD21+uqq0T+SWFLuPsfQPynN5nEYzM0/IR6Jl6dz1T+gT+RJ0jXPPzMyyF2EKdI/FXE6yVaX0j+0OGOYE7TQPy6thsQ9ltQ/GhajrrX3zz+g3SHFAInKPxCzl22nrck/UTOkiuJV0D98SPje36DUP8pwPJ8B9dc/eAq5Us+Czj/FBDV8C+vWPzrnpzgOvNI/n1bRH5p50z9TdY9srprSPzL/6Js0DdI/YWwhyEEJ0z+1pKMczCbOP1W/0vnwLNM/EOZ2L/fJ0z9m2v6VlSbQP5JdaRmp99I/s3ixMEROzz8Nb9bgfVXTPzcclgZ+VM0/c56xL9l40T9Ui4hi8gbSP6QbYVERp8k/kJ+NXDel1j9SX5Z2ai7PP0VHcvkP6dA/G4S53ct91D+Ky/EKRE/QPxMoYhHDDtQ/cJaS5SSU0j9pHOp3YWvRP7H7juGxn9U/RfEqa5vi0z+LqfQTzm7PP9r/AGvVrs0/3Qn2X+em1T/JA5FFmnjLP+f+6nHfatE/e4MvTKYK1D9jm1Q01v7TP/WAeciUD9E/RPmCFhIw0z/cY+lDF9TLPzfCoiJOJ9I/d78K8N3mzT/SAUnYt5PVP8iyYOKPotM/DB8RUyKJ0z+yKy0j9Z7SP0KvP4nPndI/7ZxmgXaH0T/PEfkupS7QP7snDwu1ptA/QgjIl1DB0z+pL0s7NZfXP+CCbFm+LtA/jxt+N92y1z+nzM03onvMP19E2zF1V9o//KpcqPxr1T89uDtrt13TP+PFwhA5fc8/HXV0XI3s0T8cQSrFjsbLP46QgTy7fNE/Kv7viArV1D9qMA3DR8TSP1LTLqaZ7tU/JgD/lCpR0D80ETY8vVLSP51/u+zXndQ/QG1UpwNZ1D+8WYP3VbnQP/RtwVJdwNM/5QzFHW/yzz/2Kcdkcf/LP0I/U69bBMg/S+SCM/j70D8w2XiwxW7NP/jhICHKF9g/BcWPMXctzT8zN9+I7lnSP1lMbD6uDc0/NgadEDro0z/jGTT0T3DVP+LkfoeiQNE/uVLPglDe1T9PyqSGNgDWPyYd5WA2AdM/gCpu3GJ+wD+ASL99HTjTP5Er9SwI5c0/ru/DQUKUzT+qtwa2SrDQP3CaPjvgutI/0Lnb9dIU0z/3AUht4uTOP0vNHmgFhtE/GuCCbFm+0T/KUuv9RjvMP6c/+5EiMtU//fSfNT/+zD+LNse5TbjVPzGzz2OUZ9E/lPYGX5hM0D9RhqqYSj/WP+y+Y3jsZ9I/TYV4JF6e0D8VrHE2HQHSP9BCAkaXN9U/+igjLgCN1z8wLH++LVjKPyZw626e6tI/sg5HV+nu0z8vppnudVLUP1QAjGfQ0NQ/xvfFpSptzT9qoWRyamfVPxLds67RctE/F7g81owM1D/3x3vVyoTPP+tXOh+eJdw/OGqF6XsN0D9Z3eo56X3UP6rSFtf4TMw/c/bOaKuS0z8wRiQKLevOPy9NEeD0Lsw/46jcRC3N0T9Kl/4lqUzQP9pTck7sodY/nuqQm+EG0T8/x0eLM4bQP528yAT8GtQ/WFcFajF40D/mApfHmpHTP3tntFVJZNI/vviiPV5I0j+YpDLFHATQPxFtx9Rd2c0/SG+4j9ya1D/RQZdw6C3SP5YgI6DCEdE/7xtfe2ZJ0D+UFcPVARDSP8FxGTc10Ng/j+OHSiNm0T8MWHIVi9/TPyDsFKsGYdQ/P6vMlNbf1D80vcRYpl/WPxFXzt4Zbcs/3EqvzcZK0D/53An2X+fKP205l+Kqstc/kdRCyeTUyD9NMJxrmKHNPzkOvFruzNM/+rfLft3pzj/RlJ1+UBfYP8O68e7IWNE/RzzZzYx+0T9aoN0hxQDSPxxcOuY8Y88/w33k1qTb1T9R3Vz8bU/GPxZruMg9Xc0/WI6QgTy7xj+Osn4zMV3OPxVYAFMGDtQ/pP0PsFbt0T8fhetRuB7QP5lho6zfTNM/HLYtymyQyT/Y8zXLZaPLP+KsiJro89k/JNBgU+dRzT9gPe5brRPRP8HHYMWp1tA/eLXcmQmGyz+xbVFmg0zSP9oaEYyDS9I/vRqgNNQo1T8zpfW3BODSP9l22hoRjNA/2/rpP2t+2j8978aCwqDWP41hTtAmh9c/78ftl09W1j+ughjo2hfUP3RgOUIG8tE/ILb0aKon0z8B++jUlc/GPyWWlLvP8cc/jPLMy2H32j84LXjRV5DUP97kt+hkqdQ/ox03/G660D8AkX77OnDOP0IhAg6hStA/nRN7aB8r0z+45SMp6WHQP9v3qL9eYdM/UG1wIvq1zT9GCfoLPWLOPxxhURGnk9A/Sz/h7NYyxT9k6xnCMcvVP0oNbQA2INI/eJs3TgrzyD/UfQBSmzjYP1kzMshdhNM/rkUL0Laa0T8xfhr35jfQP7JjIxCv69Q/+glnt5bJ0j/tRElIpG3RPzlDcceb/M4/SDKrd7gdxj8/cmvSbYnUPzDw3Hu45NU/XFZhM8AF0z/68gLso1PRPwIrhxbZztE/flcE/1vJzj86sBwhA3nXP1Yo0v2cgtU/JCu/DMaI1T+gTnl0IyzTPxpqFJLM6tM/EVK3s6880j9Jvady2lPMP2hAvRk1X88/oS5SKAtfzz9NTu0MU1vXP2R0QBL27cw/hEvHnGfszT+dTNwqiIHYPyiAYmTJHNU/u9QI/Uy91D/lDTDzHfzKP68+HvruVtA/0xHAzeLF1T8f963WicvPPx8vpMNDGNA/2BAcl3FTzz+63ct9chTMP6t4I/PIH8g/yt5Szhd7zT9/2T15WKjPP6RxqN+FrdU/WU+tvroq0T+qgeZz7nbNP++P96qVCdE/R60wfa8h1D+x3xPrVPnTPy7GwDqOH8Y/i8OZX80Bxj8yyjMvh93TP8nIWdjTDsc//BnerMH71j/1vBsLCoPTP77aUZyjjtU/Ns07TtGR1j9+jSRBuALKP9dMvtnmxtQ/IO7qVWR00D9mh/iHLT3SP+gVTz3S4NE/PNujN9xHzj+LjXkdccjRP1w+kpIehs4/5ulcUUoIzj8nS633G+3ZPy7GwDqOH9I/caq1MAvt0D92cRsN4C3TP0/qy9JOzdU/26SisfZ3zj9SfHxCdt7OPxU2A1yQLdY/6X5OQX421D/l1M4wtaXKP2vylNV0PdU/chjMXyFz0z+SIFwBhXrQP+PfZ1w4ENQ/JnMs76oH0z/qQNZTq6/RP13AywwbZdQ/npeKjXkd1D90DMhe7/7OP38yxofZy9M/Mq1NY3st0D+Hb2HdeHfSP73/jxMmjNA/nKIjufyH0T9fDOVEuwrPP8HicOZXc9E//IwLB0Ky0T+t3AvMCkXWP0Yjn1c89dQ/ndmu0AfL1T/FxryOOGTVPybICKhwBNM/4BCq1OyB0j+63ct9chTGPxwG81fIXMc/BHCzeLEw3T/lgF1NnrLIP0IHXcKht8g/A7LXuz/e0T9DkIMSZtrUP9i5aTNOQ8o/tYe9UMB22D/TLxFvnX/RP2/zxklh3sc/73Tnieds2z8aNV8lH7vHPy16pwLued0/WFUvv9Nk0z8B2lazzvjGP+dR8X9HVNg/OQ1RhT/Dyz+i0LLuHwvTPzYjg9xFmNM/98d71cqE1j8k7rH0oQvOPwWm07oNas0/E/OspBXf0D/LS/4nf/fUP1Xf+UUJ+sc/kgVM4Nbd0j8XnwJgPIPSPxDM0eP3Ns0/MA+Z8iGo0j/warkzEwzNPy3Pg7uzds8//5QqUfaW0D8AH7x2acPTP0sDP6phv9A/s+veisQEzT/QDU3Z6QfVP9+kaVA0D9M/qG4u/rYn2D/tYprpXifUP6A01Cgkmc8/0zJS76mc0D+sxhLWxtjbP8Xm49pQMdE/5IV0eAjjyT9Lkuf6PhzSP+pCrP4Iw9U/VOV7RiI0xj/ScqCH2jbMP9Cc9SnHZNM/2Ne61Aj91j9wC5bqAl7QPyAkC5jArc8/I9dNKa+V1D8/HvruVpbKP9mTwOYcPM0/ixcLQ+T01z+8OzJWm//QP1somZzaGcw/ZARUOIJU0D+Rf2YQH9jQP528yAT8Gs0/EhH+RdCYzT80vFmD91XRP5oiwOldvNU/WK63zVSIzT8tXcE24snKP+OncW9+w9E/m+jzUUZc1D/CacGLvoLOP+nVAKWhRtM/s++K4H8r0j8MyF7v/njRP9P3GoLjMs4/izIbZJKR1T/2l92Th4XCP62nVl9dFdQ/nQ35ZwbxyT95y9WPTfLSPyB8KNGSx80/SWk2j8Ng0D+POc/Yl2zQP02G4/kMqNI/rroO1ZRk0T/9+EuL+iTUP5uRQe4iTNA/4PPDCOHR1D/Nd/ATB9DPPxgjEoWWddI/hIQoX9BCzD/2CgvuBzzMP3WTGARWDtM/vlDAdjBi2T/3WtB7YwjUP+zeisQENdU/jj17LlOTzj/JObGH9rHVPyLi5lQyANg/85L/yd+91j8HmPkOfuLYPxa9UwH3PNY/D2JnCp3XyD+VRWEXRQ/MP28Sg8DKoc8/WOGWj6Sk0D9dpibBG9LSP3XpX5LKFNI/MQkX8ghuzj8FbXL4pBPTP5sff2lRn9E/ic+dYP910z8WFtwPeGDRP6t14nK8Ass/PRBZpIl30D+sjhzpDIzUPyl64GOw4sw/QndJnBVR0T/Ygt4bQwDUPxxfe2ZJgNA/GjGzz2OU0z8oSddMvtnRP135LM+Du8s/VwVqMXiY2z+YMQVrnE3LP6Dctu9Rf9A/Ft7lIr4T0j8QyZBj6xnRP8/zp43qdNE/LAyR09fz0T+PG3433bLYPwqA8Qwa+sU/Dwnf+xu00z8AqOLGLebTP9B+pIgMq8g/nznrU47J2D8jTifZ6nLIP5fmVgirsco/q1yo/Gt50z8E5iFTPgTUP/GD86ljlc4/BvcDHhhA1T/84ee/B6/QP90/FqJD4Mo/DeAtkKD41j/iyAORRZrOP/6ZQXxgx9g//cBVnkDYyz9Z2qm53GDXP++NIQA49tQ/cyuE1VjC0j+c+dUcIJjNPxtivOZVndQ/hSaJJeXu0D+p3hrYKsHTP+BMTBdi9dI/kBK7trdb0T8W+fVDbLDbP/1s5Lop5ck/CI82jliL0z8viEhNu5jRPz/+0qI+ydM/KA8LtaZ5zz+H/Z5Yp8rQPzv/dtmvO88/UG1wIvq1yz8g7upVZHTIP0TEzalkANM/IqrwZ3iz0j8EO/4LBAHTPxb4im69ptI/WJBmLJrO1D8ddt8xPPbNPykEcokjD84/68N6o1aY0T/7PEZ55uXOP00s8BXdes8/LPTBMjZ01D+OBvAWSFDMP2YUyy2thtY/BVH3AUhtxj9f8GlOXmTYP+oj8Ief/9M/hqktdZDX0D/lRpG1hlLRP3f1KjI6INQ/dGIP7WMF1T+EKjV7oBXQP35yFCAKZtQ/B7e1heelzj8PmfIhqBrPP1VOe0rOidQ/aJPDJ51Iyj8zG2SSkbPSPzy9UpYhjs8/ZK93f7xXzT+U2/Y96q/TP65i8ZvCStM/G2MnvASn1T/Bbti2KLPNP7a8cr1tptE/OdOE7Sdjzj/sL7snDwvQPwZJn1bRH84/m42VmGclzz9324XmOo3TP4VE2safqMg/XKs97IUC0D8f9dcrLLjRPwpNEkvK3cc/oBhZMsfy0z+Crn0BvXDTP5QVw9UBENU/aFiMutbeyz+UE+0qpPzOP+VDUDV6NdM/FeC7zRsn0j+4IjFBDd/IPxIxJZLoZdY/Kxa/KaxUzj/JxoMtdvvSP75p+uyA69M/tmeWBKipzz/QDyOERxvSP5FFmngHeNY/sK2f/rPm0D+rzmqBPSbQP4JzRpT2BtA/Sdv4E5UN0j948umxLQPKPzgQkgVM4NM/1/hM9s/Tyj/DgCVXsfjUPxcs1QW8zMY/mzdOCvMe0z9iZTTyecXTP7e3W5IDds8/ibZj6q7s1D8U61T5npHGP1VLOsrBbNU/y4P0FDlEzj8DtoMR+wTSPwQ3UrZI2tA/tfzAVZ5A1D/9EBssnKTRPyKnr+drltI/Rpc3h2u10D/0wMdgxanMP1oNiXssfdI/UiY1tAHY3D8JbM7BM6HaP2vSbYlccMg/FeC7zRsn1j+VtyOcFrzKP6g65Ga4AdI/kC3L12X40T/MCG8PQkDWP9z0Zz9SRNE/COi+nNmu1z/NAu0OKQbMP2jsSzYebNM/R60wfa8h0j8NjpJX5xjSP+NUa2EW2tI/t9CVCFT/0D92pPrOL0rRP4OmJVZGI8s/shGI1/UL0T9eLXdmguHIP5wVURN9PtM/jKAxk6gXzD+XVkPiHkvLP5iFdk6zQNM/fA+XHHdK0T+4yagyjLvSP8MMjSeCONU//kY7bvjd0z94liAjoMLcP3E6yVaXU9U/idS0i2mmzz8EcR5OYDrPP0PLun8sRNM/IJbNHJJazj8=\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[4000]},\"theta[0]\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[4000]},\"theta[1]\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[4000]},\"theta[5]\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[4000]}},\"selected\":{\"id\":\"1639\"},\"selection_policy\":{\"id\":\"1638\"}},\"id\":\"1003\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[1]\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1572\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1673\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1675\",\"type\":\"AllLabels\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1396\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1638\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1050\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1626\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"overlay\":{\"id\":\"1397\"}},\"id\":\"1392\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1600\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1627\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1676\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1639\",\"type\":\"Selection\"},{\"attributes\":{\"overlay\":{\"id\":\"1395\"}},\"id\":\"1391\",\"type\":\"BoxSelectTool\"},{\"attributes\":{},\"id\":\"1678\",\"type\":\"AllLabels\"},{\"attributes\":{\"start\":0.0},\"id\":\"1086\",\"type\":\"DataRange1d\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1095\"}],\"center\":[{\"id\":\"1098\"},{\"id\":\"1102\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1099\"}],\"renderers\":[{\"id\":\"1124\"}],\"title\":{\"id\":\"1644\"},\"toolbar\":{\"id\":\"1113\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1088\"},\"x_scale\":{\"id\":\"1091\"},\"y_range\":{\"id\":\"1086\"},\"y_scale\":{\"id\":\"1093\"}},\"id\":\"1087\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"1728\",\"type\":\"Title\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1599\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"axis\":{\"id\":\"1384\"},\"dimension\":1,\"ticker\":null},\"id\":\"1387\",\"type\":\"Grid\"},{\"attributes\":{\"formatter\":{\"id\":\"1746\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1748\"},\"ticker\":{\"id\":\"1381\"},\"visible\":false},\"id\":\"1380\",\"type\":\"LinearAxis\"},{\"attributes\":{\"overlay\":{\"id\":\"1396\"}},\"id\":\"1389\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1574\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1378\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1388\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1390\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1394\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1393\",\"type\":\"SaveTool\"},{\"attributes\":{\"data\":{\"chain__\":[],\"diverging__\":[],\"draw__\":[],\"index\":[],\"kappa\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[0]},\"phi\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[0]},\"theta[0]\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[0]},\"theta[1]\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[0]},\"theta[5]\":{\"__ndarray__\":\"\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[0]}},\"selected\":{\"id\":\"1641\"},\"selection_policy\":{\"id\":\"1640\"}},\"id\":\"1004\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1729\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1731\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1385\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1376\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1640\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1641\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1381\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"1380\"},\"ticker\":null},\"id\":\"1383\",\"type\":\"Grid\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1380\"}],\"center\":[{\"id\":\"1383\"},{\"id\":\"1387\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1384\"}],\"renderers\":[{\"id\":\"1409\"}],\"title\":{\"id\":\"1742\"},\"toolbar\":{\"id\":\"1398\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1373\"},\"x_scale\":{\"id\":\"1376\"},\"y_range\":{\"id\":\"1371\"},\"y_scale\":{\"id\":\"1378\"}},\"id\":\"1372\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"HeOKi6Nyvz8d44qLo3K/P07w9WFnNcE/TvD1YWc1wT8Obyb+fLHCPw5vJv58scI/zu1WmpItxD/O7Vaaki3EP45shzaoqcU/jmyHNqipxT9O67fSvSXHP07rt9K9Jcc/DmrobtOhyD8Oauhu06HIP87oGAvpHco/zugYC+kdyj+OZ0mn/pnLP45nSaf+mcs/TuZ5QxQWzT9O5nlDFBbNPw5lqt8pks4/DmWq3ymSzj/nce29HwfQP+dx7b0fB9A/R7EFjCrF0D9HsQWMKsXQP6fwHVo1g9E/p/AdWjWD0T8HMDYoQEHSPwcwNihAQdI/Z29O9kr/0j9nb072Sv/SP8euZsRVvdM/x65mxFW90z8n7n6SYHvUPyfufpJge9Q/hy2XYGs51T+HLZdgaznVP+dsry5299U/52yvLnb31T9HrMf8gLXWP0esx/yAtdY/p+vfyotz1z+n69/Ki3PXPwYr+JiWMdg/Biv4mJYx2D9mahBnoe/YP2ZqEGeh79g/xqkoNayt2T/GqSg1rK3ZPybpQAO3a9o/JulAA7dr2j+GKFnRwSnbP4YoWdHBKds/5mdxn8zn2z/mZ3GfzOfbP0aniW3Xpdw/RqeJbdel3D+m5qE74mPdP6bmoTviY90/Bia6Ce0h3j8GJroJ7SHeP2Zl0tf3394/ZmXS1/ff3j/GpOqlAp7fP8ak6qUCnt8/E3IBugYu4D8TcgG6Bi7gP8ORDSEMjeA/w5ENIQyN4D9zsRmIEezgP3OxGYgR7OA/I9El7xZL4T8j0SXvFkvhP9PwMVYcquE/0/AxVhyq4T+DED69IQniP4MQPr0hCeI/MzBKJCdo4j8zMEokJ2jiP+NPVossx+I/409WiyzH4j+Tb2LyMSbjP5NvYvIxJuM/Q49uWTeF4z9Dj25ZN4XjP/OuesA85OM/8656wDzk4z8=\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[88]},\"y\":{\"__ndarray__\":\"AAAAAAAAAADHXUiEBBKWP8ddSIQEEpY/B1K/88NPwz8HUr/zw0/DP79dSIQEEsY/v11IhAQSxj8HUr/zw0/DPwdSv/PDT8M/Cvue7aX33D8K+57tpffcP3dp0RRF1Og/d2nRFEXU6D9BMjiB9eXqP0EyOIH15eo/49cDPOSw9D/j1wM85LD0P3A7cqJ/wgFAcDtyon/CAUC/XUiEBBIGQL9dSIQEEgZA31KEwwBHB0DfUoTDAEcHQPk9wRE2qA1A+T3BETaoDUBFpQe52TASQEWlB7nZMBJAhY9/N9KaFECFj3830poUQHTSoVtiSxVAdNKhW2JLFUAK6e6sptgWQArp7qym2BZAT1jmo4KsFkBPWOajgqwWQPIPYp9wlhZA8g9in3CWFkC0vBnaWrUXQLS8GdpatRdAGg+dzzOfEkAaD53PM58SQF1+lMYPcxJAXX6Uxg9zEkAQGmGQN2oRQBAaYZA3ahFAk9mN212fDECT2Y3bXZ8MQOoFY66pwgtA6gVjrqnCC0ADzT974OUFQAPNP3vg5QVA49cDPOSwBEDj1wM85LAEQCTCe7rcGvc/JMJ7utwa9z+i7Yu960byP6Lti73rRvI/Gg+dzzOf8j8aD53PM5/yP8dnR3XL5fA/x2dHdcvl8D8aD53PM5/iPxoPnc8zn+I/U+8VXWU12j9T7xVdZTXaPwdSv/PDT9M/B1K/88NP0z8vdVqlhZbLPy91WqWFlss/B1K/88NPwz8HUr/zw0/DP09GNmODjcA/T0Y2Y4ONwD9PRjZjg42wP09GNmODjbA/v11IhAQSlj+/XUiEBBKWP79dSIQEEqY/v11IhAQSpj+/XUiEBBKWP79dSIQEEpY/AAAAAAAAAAAAAAAAAAAAAL9dSIQEEpY/v11IhAQSlj+/XUiEBBKWP79dSIQEEpY/AAAAAAAAAAA=\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[88]}},\"selected\":{\"id\":\"1753\"},\"selection_policy\":{\"id\":\"1752\"}},\"id\":\"1406\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"formatter\":{\"id\":\"1743\"},\"major_label_policy\":{\"id\":\"1745\"},\"ticker\":{\"id\":\"1385\"},\"visible\":false},\"id\":\"1384\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1732\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1734\",\"type\":\"AllLabels\"},{\"attributes\":{\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1407\",\"type\":\"Line\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[1]\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1571\",\"type\":\"Circle\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1395\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1367\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1368\"},\"view\":{\"id\":\"1370\"}},\"id\":\"1369\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1566\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1567\"},\"view\":{\"id\":\"1569\"}},\"id\":\"1568\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1630\",\"type\":\"Title\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[0]\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1368\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1370\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1571\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1572\"},\"view\":{\"id\":\"1574\"}},\"id\":\"1573\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[0]\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1367\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1569\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1365\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1631\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1633\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1644\",\"type\":\"Title\"},{\"attributes\":{\"end\":0.63158636,\"start\":0.11286763999999999},\"id\":\"1373\",\"type\":\"Range1d\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1362\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1363\"},\"view\":{\"id\":\"1365\"}},\"id\":\"1364\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis\":{\"id\":\"1176\"},\"ticker\":null},\"id\":\"1179\",\"type\":\"Grid\"},{\"attributes\":{\"formatter\":{\"id\":\"1673\"},\"major_label_policy\":{\"id\":\"1675\"},\"ticker\":{\"id\":\"1181\"},\"visible\":false},\"id\":\"1180\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1816\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1189\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"1818\",\"type\":\"AllLabels\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1485\",\"type\":\"Circle\"},{\"attributes\":{\"axis\":{\"id\":\"1180\"},\"dimension\":1,\"ticker\":null},\"id\":\"1183\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1181\",\"type\":\"BasicTicker\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[0]\"}},\"id\":\"1200\",\"type\":\"Circle\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1029\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1185\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1184\",\"type\":\"PanTool\"},{\"attributes\":{\"overlay\":{\"id\":\"1190\"}},\"id\":\"1186\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1187\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1188\",\"type\":\"ResetTool\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1233\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"axis_label\":\"kappa\",\"formatter\":{\"id\":\"1774\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1776\"},\"ticker\":{\"id\":\"1462\"}},\"id\":\"1461\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"syncable\":false,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"1234\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1204\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1205\"},\"view\":{\"id\":\"1207\"}},\"id\":\"1206\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[0]\"}},\"id\":\"1204\",\"type\":\"Circle\"},{\"attributes\":{\"end\":0.5048171100000001,\"start\":0.06785539},\"id\":\"1210\",\"type\":\"Range1d\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[0]\"}},\"id\":\"1205\",\"type\":\"Circle\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1199\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1200\"},\"view\":{\"id\":\"1202\"}},\"id\":\"1201\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1232\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1190\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1202\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1822\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1823\",\"type\":\"Selection\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1184\"},{\"id\":\"1185\"},{\"id\":\"1186\"},{\"id\":\"1187\"},{\"id\":\"1188\"},{\"id\":\"1189\"}]},\"id\":\"1191\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1459\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1457\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1462\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1770\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1784\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1771\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1773\",\"type\":\"AllLabels\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1207\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1785\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"start\":0.0},\"id\":\"1208\",\"type\":\"DataRange1d\"},{\"attributes\":{},\"id\":\"1787\",\"type\":\"AllLabels\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"kMGKU62Fsz+QwYpTrYWzP+GmKl5KWrY/4aYqXkpatj8yjMpo5y65PzKMymjnLrk/g3Fqc4QDvD+DcWpzhAO8P9RWCn4h2L4/1FYKfiHYvj8SHlVEX9bAPxIeVURf1sA/uxClya1Awj+7EKXJrUDCP2QD9U78qsM/ZAP1Tvyqwz8M9kTUShXFPwz2RNRKFcU/tOiUWZl/xj+06JRZmX/GP13b5N7n6cc/Xdvk3ufpxz8GzjRkNlTJPwbONGQ2VMk/rsCE6YS+yj+uwITphL7KP1az1G7TKMw/VrPUbtMozD//pST0IZPNP/+lJPQhk80/qJh0eXD9zj+omHR5cP3OP6hFYn/fM9A/qEVif98z0D/8PgrCBunQP/w+CsIG6dA/UDiyBC6e0T9QOLIELp7RP6UxWkdVU9I/pTFaR1VT0j/5KgKKfAjTP/kqAop8CNM/TSSqzKO90z9NJKrMo73TP6IdUg/LctQ/oh1SD8ty1D/2FvpR8ifVP/YW+lHyJ9U/ShCilBnd1T9KEKKUGd3VP54JStdAktY/nglK10CS1j/yAvIZaEfXP/IC8hloR9c/R/yZXI/81z9H/Jlcj/zXP5v1QZ+2sdg/m/VBn7ax2D/v7unh3WbZP+/u6eHdZtk/ROiRJAUc2j9E6JEkBRzaP5jhOWcs0do/mOE5ZyzR2j/s2uGpU4bbP+za4alThts/QNSJ7Ho73D9A1InsejvcP5TNMS+i8Nw/lM0xL6Lw3D/pxtlxyaXdP+nG2XHJpd0/PcCBtPBa3j89wIG08FreP5G5KfcXEN8/kbkp9xcQ3z/mstE5P8XfP+ay0Tk/xd8/\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[78]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAuY77MQCeXPy5jvsxAJ5c/YsqOmXBdsT9iyo6ZcF2xP5awWqbkz9I/lrBapuTP0j+TL1bmKAzaP5MvVuYoDNo/aMqOmXBd0T9oyo6ZcF3RPyZjvsxAJ+c/JmO+zEAn5z/BliazWEL0P8GWJrNYQvQ/asiFGfnV/z9qyIUZ+dX/PzZjvsxAJwdANmO+zEAnB0CyXPHP3YMHQLJc8c/dgwdAW2UgizY1DkBbZSCLNjUOQPbDwZwNuhFA9sPBnA26EUDpiYy5kvsUQOmJjLmS+xRAohTxE6L3F0CiFPETovcXQGaDv7wvWBVAZoO/vC9YFUCjzPBXZmsYQKPM8FdmaxhABou9mI2CGEAGi72YjYIYQLmxi4XfVhZAubGLhd9WFkC6QYz9Vm8VQLpBjP1WbxVAZju/APTLFUBmO78A9MsVQBlije1FoBNAGWKN7UWgE0D+U8IUhdIQQP5TwhSF0hBAcWUgizY1DkBxZSCLNjUOQBfTvVTJDghAF9O9VMkOCECWE8A0p3AEQJYTwDSncARA9sPBnA26AUD2w8GcDboBQF888N/uUvk/Xzzw3+5S+T/PliazWEL0P8+WJrNYQvQ/gzzw3+5S6T+DPPDf7lLpP8yJjLmS++Q/zImMuZL75D9pSYrZtJnYP2lJitm0mdg/nLBapuTP0j+csFqm5M/SP2jKjplwXcE/aMqOmXBdwT82Y77MQCfHPzZjvsxAJ8c/FmO+zEAnpz8WY77MQCenP2jKjplwXbE/aMqOmXBdsT82Y77MQCeXPzZjvsxAJ5c/UMqOmXBdsT9Qyo6ZcF2xPwAAAAAAAAAA\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[78]}},\"selected\":{\"id\":\"1697\"},\"selection_policy\":{\"id\":\"1696\"}},\"id\":\"1243\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1217\"}],\"center\":[{\"id\":\"1220\"},{\"id\":\"1224\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1221\"}],\"renderers\":[{\"id\":\"1246\"}],\"title\":{\"id\":\"1686\"},\"toolbar\":{\"id\":\"1235\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1210\"},\"x_scale\":{\"id\":\"1213\"},\"y_range\":{\"id\":\"1208\"},\"y_scale\":{\"id\":\"1215\"}},\"id\":\"1209\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"formatter\":{\"id\":\"1687\"},\"major_label_policy\":{\"id\":\"1689\"},\"ticker\":{\"id\":\"1222\"},\"visible\":false},\"id\":\"1221\",\"type\":\"LinearAxis\"},{\"attributes\":{\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1244\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1215\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1213\",\"type\":\"LinearScale\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1030\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1774\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1218\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1776\",\"type\":\"AllLabels\"},{\"attributes\":{\"axis\":{\"id\":\"1217\"},\"ticker\":null},\"id\":\"1220\",\"type\":\"Grid\"},{\"attributes\":{\"formatter\":{\"id\":\"1690\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1692\"},\"ticker\":{\"id\":\"1218\"},\"visible\":false},\"id\":\"1217\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"syncable\":false,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"1031\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"line_alpha\":0.1,\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1245\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1788\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1790\",\"type\":\"AllLabels\"},{\"attributes\":{\"axis\":{\"id\":\"1221\"},\"dimension\":1,\"ticker\":null},\"id\":\"1224\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1222\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1225\",\"type\":\"PanTool\"},{\"attributes\":{\"overlay\":{\"id\":\"1233\"}},\"id\":\"1226\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1231\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1230\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1227\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"overlay\":{\"id\":\"1232\"}},\"id\":\"1228\",\"type\":\"BoxSelectTool\"},{\"attributes\":{},\"id\":\"1636\",\"type\":\"AllLabels\"},{\"attributes\":{\"overlay\":{\"id\":\"1234\"}},\"id\":\"1229\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"source\":{\"id\":\"1243\"}},\"id\":\"1247\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1326\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1324\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1322\",\"type\":\"Circle\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1321\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1322\"},\"view\":{\"id\":\"1324\"}},\"id\":\"1323\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1327\",\"type\":\"Circle\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1420\"}],\"center\":[{\"id\":\"1423\"},{\"id\":\"1427\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1424\"}],\"renderers\":[{\"id\":\"1445\"},{\"id\":\"1450\"}],\"title\":{\"id\":\"1756\"},\"toolbar\":{\"id\":\"1435\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1007\"},\"x_scale\":{\"id\":\"1416\"},\"y_range\":{\"id\":\"1577\"},\"y_scale\":{\"id\":\"1418\"}},\"id\":\"1411\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1329\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"Vd6OcFrwvj9V3o5wWvC+Pytaja5okr8/K1qNrmiSvz8B60V2OxrAPwHrRXY7GsA/7ChFlUJrwD/sKEWVQmvAP9dmRLRJvMA/12ZEtEm8wD/CpEPTUA3BP8KkQ9NQDcE/reJC8ldewT+t4kLyV17BP5ggQhFfr8E/mCBCEV+vwT+DXkEwZgDCP4NeQTBmAMI/bpxAT21Rwj9unEBPbVHCP1naP250osI/Wdo/bnSiwj9EGD+Ne/PCP0QYP41788I/L1Y+rIJEwz8vVj6sgkTDPxqUPcuJlcM/GpQ9y4mVwz8F0jzqkObDPwXSPOqQ5sM/8A88CZg3xD/wDzwJmDfEP9tNOyifiMQ/2007KJ+IxD/GizpHptnEP8aLOkem2cQ/sck5Zq0qxT+xyTlmrSrFP5wHOYW0e8U/nAc5hbR7xT+HRTiku8zFP4dFOKS7zMU/coM3w8Idxj9ygzfDwh3GP13BNuLJbsY/XcE24sluxj9I/zUB0b/GP0j/NQHRv8Y/Mz01INgQxz8zPTUg2BDHPx57ND/fYcc/Hns0P99hxz8KuTNe5rLHPwq5M17mssc/9PYyfe0DyD/09jJ97QPIP+A0Mpz0VMg/4DQynPRUyD/KcjG7+6XIP8pyMbv7pcg/trAw2gL3yD+2sDDaAvfIP6DuL/kJSMk/oO4v+QlIyT+MLC8YEZnJP4wsLxgRmck/dmouNxjqyT92ai43GOrJP2KoLVYfO8o/YqgtVh87yj9M5ix1JozKP0zmLHUmjMo/OCQslC3dyj84JCyULd3KPyJiK7M0Lss/ImIrszQuyz8OoCrSO3/LPw6gKtI7f8s/+N0p8ULQyz/43SnxQtDLP+QbKRBKIcw/5BspEEohzD/PWSgvUXLMP89ZKC9Rcsw/upcnTljDzD+6lydOWMPMP6XVJm1fFM0/pdUmbV8UzT+QEyaMZmXNP5ATJoxmZc0/\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[90]},\"y\":{\"__ndarray__\":\"AAAAAAAAAACdJcqzwuHJP50lyrPC4ck/dCXKs8LhuT90JcqzwuG5P50lyrPC4ck/nSXKs8LhyT+CV16wGS3gP4JXXrAZLeA/gldesBkt4D+CV16wGS3gP4JXXrAZLQBAgldesBktAEA1nNcGUmkDQDWc1wZSaQNA9scG395/C0D2xwbf3n8LQBmALbuglBBAGYAtu6CUEEAzTpm+SUkaQDNOmb5JSRpACEs58UOaIkAISznxQ5oiQCVAxBjx3ihAJUDEGPHeKEAyJ3qaRbktQDIneppFuS1A8o5a1LrqM0DyjlrUuuozQMU9vL6sGzNAxT28vqwbM0A0dbjiTdk2QDR1uOJN2TZAaE1BS4hdOEBoTUFLiF04QGCfN9RXGDtAYJ831FcYO0BRkWIu/605QFGRYi7/rTlAKqCPRxkEPUAqoI9HGQQ9QFGRYi7/rTlAUZFiLv+tOUA7/KI1eo43QDv8ojV6jjdA2atcky2rOEDZq1yTLas4QMU9vL6sGzNAxT28vqwbM0Buhu1VrPIvQG6G7VWs8i9AdCESc/tGMEB0IRJz+0YwQKORYi7/rSlAo5FiLv+tKUDiZuM89W4lQOJm4zz1biVAOl4eSyWLH0A6Xh5LJYsfQOBNmb5JSRpA4E2ZvklJGkBznNcGUmkTQHOc1wZSaRNAc10eSyWLD0BzXR5LJYsPQHOc1wZSaQNAc5zXBlJpA0D0aUMK+x39P/RpQwr7Hf0/MOFQXYql5j8w4VBdiqXmP0slyrPC4ek/SyXKs8Lh6T+1V16wGS3gP7VXXrAZLeA/SyXKs8Lh2T9LJcqzwuHZP7VXXrAZLeA/tVdesBkt4D9LJcqzwuHJP0slyrPC4ck/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAnSXKs8LhyT+dJcqzwuHJPwAAAAAAAAAA\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[90]}},\"selected\":{\"id\":\"1823\"},\"selection_policy\":{\"id\":\"1822\"}},\"id\":\"1610\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1326\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1327\"},\"view\":{\"id\":\"1329\"}},\"id\":\"1328\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis\":{\"id\":\"1588\"},\"dimension\":1,\"ticker\":null},\"id\":\"1591\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1269\",\"type\":\"ResetTool\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1487\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1498\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1268\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1592\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1507\",\"type\":\"BasicTicker\"},{\"attributes\":{\"overlay\":{\"id\":\"1271\"}},\"id\":\"1267\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"end\":0.5636214199999999,\"start\":0.10147558000000001},\"id\":\"1007\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"1265\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1266\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1265\"},{\"id\":\"1266\"},{\"id\":\"1267\"},{\"id\":\"1268\"},{\"id\":\"1269\"},{\"id\":\"1270\"}]},\"id\":\"1272\",\"type\":\"Toolbar\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[0]\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1525\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1473\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1262\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1472\",\"type\":\"SaveTool\"},{\"attributes\":{\"axis\":{\"id\":\"1261\"},\"dimension\":1,\"ticker\":null},\"id\":\"1264\",\"type\":\"Grid\"},{\"attributes\":{\"overlay\":{\"id\":\"1475\"}},\"id\":\"1471\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1484\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1485\"},\"view\":{\"id\":\"1487\"}},\"id\":\"1486\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis\":{\"id\":\"1257\"},\"ticker\":null},\"id\":\"1260\",\"type\":\"Grid\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1584\"}],\"center\":[{\"id\":\"1587\"},{\"id\":\"1591\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1588\"}],\"renderers\":[{\"id\":\"1613\"}],\"title\":{\"id\":\"1812\"},\"toolbar\":{\"id\":\"1602\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1577\"},\"x_scale\":{\"id\":\"1580\"},\"y_range\":{\"id\":\"1575\"},\"y_scale\":{\"id\":\"1582\"}},\"id\":\"1576\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"data_source\":{\"id\":\"1243\"},\"glyph\":{\"id\":\"1244\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1245\"},\"view\":{\"id\":\"1247\"}},\"id\":\"1246\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"IT6w479AvD8hPrDjv0C8P0VqkgkVk74/RWqSCRWTvj81S7oXtXLAPzVLuhe1csA/R2Grqt+bwT9HYauq35vBP1l3nD0KxcI/WXecPQrFwj9rjY3QNO7DP2uNjdA07sM/faN+Y18XxT99o35jXxfFP4+5b/aJQMY/j7lv9olAxj+hz2CJtGnHP6HPYIm0acc/s+VRHN+SyD+z5VEc35LIP8X7Qq8JvMk/xftCrwm8yT/XETRCNOXKP9cRNEI05co/6icl1V4OzD/qJyXVXg7MP/w9FmiJN80//D0WaIk3zT8OVAf7s2DOPw5UB/uzYM4/IGr4jd6Jzz8gaviN3onPPxnAdJCEWdA/GcB0kIRZ0D8iS+3ZGe7QPyJL7dkZ7tA/K9ZlI6+C0T8r1mUjr4LRPzRh3mxEF9I/NGHebEQX0j897Fa22avSPz3sVrbZq9I/RnfP/25A0z9Gd8//bkDTP08CSEkE1dM/TwJISQTV0z9YjcCSmWnUP1iNwJKZadQ/YRg53C7+1D9hGDncLv7UP2qjsSXEktU/aqOxJcSS1T9zLipvWSfWP3MuKm9ZJ9Y/fLmiuO671j98uaK47rvWP4VEGwKEUNc/hUQbAoRQ1z+Oz5NLGeXXP47Pk0sZ5dc/l1oMla552D+XWgyVrnnYP6DlhN5DDtk/oOWE3kMO2T+pcP0n2aLZP6lw/SfZotk/svt1cW432j+y+3VxbjfaP7uG7roDzNo/u4buugPM2j/EEWcEmWDbP8QRZwSZYNs/zZzfTS712z/NnN9NLvXbP9YnWJfDidw/1idYl8OJ3D/fstDgWB7dP9+y0OBYHt0/6D1JKu6y3T/oPUkq7rLdP/HIwXODR94/8cjBc4NH3j/6Uzq9GNzeP/pTOr0Y3N4/A9+yBq5w3z8D37IGrnDfPwa1FaihAuA/BrUVqKEC4D+L+tFM7EzgP4v60UzsTOA/D0CO8TaX4D8PQI7xNpfgP5SFSpaB4eA/lIVKloHh4D8YywY7zCvhPxjLBjvMK+E/nRDD3xZ24T+dEMPfFnbhPyFWf4RhwOE/IVZ/hGHA4T8=\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[100]},\"y\":{\"__ndarray__\":\"AAAAAAAAAAAiS4XGiTqsPyJLhcaJOqw/FkuFxok6rD8WS4XGiTqsP/VOExyWpME/9U4THJakwT/1ThMclqTBP/VOExyWpME/9U4THJak0T/1ThMclqTRP6eje7g+aNM/p6N7uD5o0z8Azq8GE0rkPwDOrwYTSuQ/p6N7uD5o8z+no3u4PmjzP8kgUXi1WPs/ySBReLVY+z/D7VZBcvMEQMPtVkFy8wRAU6xBoa3rCEBTrEGhresIQFj2HCrhdgpAWPYcKuF2CkDkg9R9374SQOSD1H3fvhJAv8eFZ1XTFkC/x4VnVdMWQNnrjxZsPhpA2euPFmw+GkC3VRLa/nIcQLdVEtr+chxAySBReLVYG0DJIFF4tVgbQD2VYE+9xR1APZVgT73FHUDJIFF4tVgbQMkgUXi1WBtAi0D4shQCHECLQPiyFAIcQI1myYwxIhpAjWbJjDEiGkDJIFF4tVgbQMkgUXi1WBtAS1N2kE1mFEBLU3aQTWYUQDqIN/KWgBVAOog38paAFUCZ/g30pKISQJn+DfSkohJAgMFbyJdcCUCAwVvIl1wJQFn441TnKwVAWfjjVOcrBUBOeUdqaoYCQE55R2pqhgJAcPYcKuF2+j9w9hwq4Xb6P3D2HCrhdvo/cPYcKuF2+j8iZC1DgBXyPyJkLUOAFfI/cPYcKuF26j9w9hwq4XbqP5wk383BwuA/nCTfzcHC4D9w9hwq4XbaP3D2HCrhdto/9U4THJak0T/1ThMclqTRP/VOExyWpNE/9U4THJak0T/1ThMclqTRP/VOExyWpNE/IkuFxok6zD8iS4XGiTrMPyJLhcaJOrw/IkuFxok6vD9Z+ONU5yvFP1n441TnK8U/WfjjVOcrtT9Z+ONU5yu1PyJLhcaJOrw/IkuFxok6vD8iS4XGiTqcPyJLhcaJOpw/8UqFxok6nD/xSoXGiTqcPwAAAAAAAAAAAAAAAAAAAADxSoXGiTqcP/FKhcaJOpw/UkuFxok6nD9SS4XGiTqcP/FKhcaJOpw/8UqFxok6nD9SS4XGiTqcP1JLhcaJOpw/AAAAAAAAAAA=\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[100]}},\"selected\":{\"id\":\"1627\"},\"selection_policy\":{\"id\":\"1626\"}},\"id\":\"1040\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1257\"}],\"center\":[{\"id\":\"1260\"},{\"id\":\"1264\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1261\"}],\"renderers\":[{\"id\":\"1282\"},{\"id\":\"1287\"}],\"title\":{\"id\":\"1700\"},\"toolbar\":{\"id\":\"1272\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1007\"},\"x_scale\":{\"id\":\"1253\"},\"y_range\":{\"id\":\"1373\"},\"y_scale\":{\"id\":\"1255\"}},\"id\":\"1248\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"toolbars\":[{\"id\":\"1032\"},{\"id\":\"1069\"},{\"id\":\"1113\"},{\"id\":\"1150\"},{\"id\":\"1191\"},{\"id\":\"1235\"},{\"id\":\"1272\"},{\"id\":\"1313\"},{\"id\":\"1354\"},{\"id\":\"1398\"},{\"id\":\"1435\"},{\"id\":\"1476\"},{\"id\":\"1517\"},{\"id\":\"1558\"},{\"id\":\"1602\"}],\"tools\":[{\"id\":\"1022\"},{\"id\":\"1023\"},{\"id\":\"1024\"},{\"id\":\"1025\"},{\"id\":\"1026\"},{\"id\":\"1027\"},{\"id\":\"1028\"},{\"id\":\"1062\"},{\"id\":\"1063\"},{\"id\":\"1064\"},{\"id\":\"1065\"},{\"id\":\"1066\"},{\"id\":\"1067\"},{\"id\":\"1103\"},{\"id\":\"1104\"},{\"id\":\"1105\"},{\"id\":\"1106\"},{\"id\":\"1107\"},{\"id\":\"1108\"},{\"id\":\"1109\"},{\"id\":\"1143\"},{\"id\":\"1144\"},{\"id\":\"1145\"},{\"id\":\"1146\"},{\"id\":\"1147\"},{\"id\":\"1148\"},{\"id\":\"1184\"},{\"id\":\"1185\"},{\"id\":\"1186\"},{\"id\":\"1187\"},{\"id\":\"1188\"},{\"id\":\"1189\"},{\"id\":\"1225\"},{\"id\":\"1226\"},{\"id\":\"1227\"},{\"id\":\"1228\"},{\"id\":\"1229\"},{\"id\":\"1230\"},{\"id\":\"1231\"},{\"id\":\"1265\"},{\"id\":\"1266\"},{\"id\":\"1267\"},{\"id\":\"1268\"},{\"id\":\"1269\"},{\"id\":\"1270\"},{\"id\":\"1306\"},{\"id\":\"1307\"},{\"id\":\"1308\"},{\"id\":\"1309\"},{\"id\":\"1310\"},{\"id\":\"1311\"},{\"id\":\"1347\"},{\"id\":\"1348\"},{\"id\":\"1349\"},{\"id\":\"1350\"},{\"id\":\"1351\"},{\"id\":\"1352\"},{\"id\":\"1388\"},{\"id\":\"1389\"},{\"id\":\"1390\"},{\"id\":\"1391\"},{\"id\":\"1392\"},{\"id\":\"1393\"},{\"id\":\"1394\"},{\"id\":\"1428\"},{\"id\":\"1429\"},{\"id\":\"1430\"},{\"id\":\"1431\"},{\"id\":\"1432\"},{\"id\":\"1433\"},{\"id\":\"1469\"},{\"id\":\"1470\"},{\"id\":\"1471\"},{\"id\":\"1472\"},{\"id\":\"1473\"},{\"id\":\"1474\"},{\"id\":\"1510\"},{\"id\":\"1511\"},{\"id\":\"1512\"},{\"id\":\"1513\"},{\"id\":\"1514\"},{\"id\":\"1515\"},{\"id\":\"1551\"},{\"id\":\"1552\"},{\"id\":\"1553\"},{\"id\":\"1554\"},{\"id\":\"1555\"},{\"id\":\"1556\"},{\"id\":\"1592\"},{\"id\":\"1593\"},{\"id\":\"1594\"},{\"id\":\"1595\"},{\"id\":\"1596\"},{\"id\":\"1597\"},{\"id\":\"1598\"}]},\"id\":\"1826\",\"type\":\"ProxyToolbar\"},{\"attributes\":{},\"id\":\"1582\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1258\",\"type\":\"BasicTicker\"},{\"attributes\":{\"formatter\":{\"id\":\"1704\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1706\"},\"ticker\":{\"id\":\"1258\"},\"visible\":false},\"id\":\"1257\",\"type\":\"LinearAxis\"},{\"attributes\":{\"axis\":{\"id\":\"1506\"},\"dimension\":1,\"ticker\":null},\"id\":\"1509\",\"type\":\"Grid\"},{\"attributes\":{\"axis_label\":\"theta[1]\",\"formatter\":{\"id\":\"1701\"},\"major_label_policy\":{\"id\":\"1703\"},\"ticker\":{\"id\":\"1262\"}},\"id\":\"1261\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1500\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1270\",\"type\":\"HelpTool\"},{\"attributes\":{\"axis\":{\"id\":\"1584\"},\"ticker\":null},\"id\":\"1587\",\"type\":\"Grid\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[0]\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1526\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1255\",\"type\":\"LinearScale\"},{\"attributes\":{\"data_source\":{\"id\":\"1610\"},\"glyph\":{\"id\":\"1611\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1612\"},\"view\":{\"id\":\"1614\"}},\"id\":\"1613\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"toolbar\":{\"id\":\"1826\"},\"toolbar_location\":\"left\"},\"id\":\"1827\",\"type\":\"ToolbarBox\"},{\"attributes\":{},\"id\":\"1253\",\"type\":\"LinearScale\"},{\"attributes\":{\"line_alpha\":0.1,\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1612\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1470\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1580\",\"type\":\"LinearScale\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1281\",\"type\":\"Circle\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1502\"}],\"center\":[{\"id\":\"1505\"},{\"id\":\"1509\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1506\"}],\"renderers\":[{\"id\":\"1527\"},{\"id\":\"1532\"}],\"title\":{\"id\":\"1784\"},\"toolbar\":{\"id\":\"1517\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1210\"},\"x_scale\":{\"id\":\"1498\"},\"y_range\":{\"id\":\"1577\"},\"y_scale\":{\"id\":\"1500\"}},\"id\":\"1493\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"start\":0.0},\"id\":\"1005\",\"type\":\"DataRange1d\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1516\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"axis\":{\"id\":\"1465\"},\"dimension\":1,\"ticker\":null},\"id\":\"1468\",\"type\":\"Grid\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1280\",\"type\":\"Circle\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[0]\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1362\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1466\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1474\",\"type\":\"HelpTool\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1557\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1306\"},{\"id\":\"1307\"},{\"id\":\"1308\"},{\"id\":\"1309\"},{\"id\":\"1310\"},{\"id\":\"1311\"}]},\"id\":\"1313\",\"type\":\"Toolbar\"},{\"attributes\":{\"formatter\":{\"id\":\"1785\"},\"major_label_policy\":{\"id\":\"1787\"},\"ticker\":{\"id\":\"1507\"},\"visible\":false},\"id\":\"1506\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1321\",\"type\":\"Circle\"},{\"attributes\":{\"end\":0.23183304,\"start\":0.11867896},\"id\":\"1577\",\"type\":\"Range1d\"},{\"attributes\":{\"start\":0.0},\"id\":\"1575\",\"type\":\"DataRange1d\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1528\",\"type\":\"CDSView\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1271\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1611\",\"type\":\"Line\"},{\"attributes\":{\"axis\":{\"id\":\"1502\"},\"ticker\":null},\"id\":\"1505\",\"type\":\"Grid\"},{\"attributes\":{\"axis_label\":\"theta[5]\",\"formatter\":{\"id\":\"1816\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1818\"},\"ticker\":{\"id\":\"1585\"}},\"id\":\"1584\",\"type\":\"LinearAxis\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1525\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1526\"},\"view\":{\"id\":\"1528\"}},\"id\":\"1527\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1469\",\"type\":\"PanTool\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[0]\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1530\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"1610\"}},\"id\":\"1614\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1585\",\"type\":\"BasicTicker\"},{\"attributes\":{\"data_source\":{\"id\":\"1406\"},\"glyph\":{\"id\":\"1407\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1408\"},\"view\":{\"id\":\"1410\"}},\"id\":\"1409\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1347\"},{\"id\":\"1348\"},{\"id\":\"1349\"},{\"id\":\"1350\"},{\"id\":\"1351\"},{\"id\":\"1352\"}]},\"id\":\"1354\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1350\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1351\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1348\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1347\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1294\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1340\",\"type\":\"BasicTicker\"},{\"attributes\":{\"formatter\":{\"id\":\"1732\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1734\"},\"ticker\":{\"id\":\"1340\"},\"visible\":false},\"id\":\"1339\",\"type\":\"LinearAxis\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1283\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[0]\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1363\",\"type\":\"Circle\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1280\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1281\"},\"view\":{\"id\":\"1283\"}},\"id\":\"1282\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1622\",\"type\":\"AllLabels\"},{\"attributes\":{\"axis\":{\"id\":\"1343\"},\"dimension\":1,\"ticker\":null},\"id\":\"1346\",\"type\":\"Grid\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1286\",\"type\":\"Circle\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1085\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[1]\"}},\"id\":\"1285\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1344\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1620\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1285\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1286\"},\"view\":{\"id\":\"1288\"}},\"id\":\"1287\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis\":{\"id\":\"1339\"},\"ticker\":null},\"id\":\"1342\",\"type\":\"Grid\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1288\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1617\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"axis\":{\"id\":\"1095\"},\"ticker\":null},\"id\":\"1098\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1335\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1337\",\"type\":\"LinearScale\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1298\"}],\"center\":[{\"id\":\"1301\"},{\"id\":\"1305\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1302\"}],\"renderers\":[{\"id\":\"1323\"},{\"id\":\"1328\"}],\"title\":{\"id\":\"1714\"},\"toolbar\":{\"id\":\"1313\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1088\"},\"x_scale\":{\"id\":\"1294\"},\"y_range\":{\"id\":\"1373\"},\"y_scale\":{\"id\":\"1296\"}},\"id\":\"1289\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"1352\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"1093\",\"type\":\"LinearScale\"},{\"attributes\":{\"formatter\":{\"id\":\"1729\"},\"major_label_policy\":{\"id\":\"1731\"},\"ticker\":{\"id\":\"1344\"},\"visible\":false},\"id\":\"1343\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1619\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1096\",\"type\":\"BasicTicker\"},{\"attributes\":{\"formatter\":{\"id\":\"1648\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1650\"},\"ticker\":{\"id\":\"1096\"},\"visible\":false},\"id\":\"1095\",\"type\":\"LinearAxis\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1339\"}],\"center\":[{\"id\":\"1342\"},{\"id\":\"1346\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1343\"}],\"renderers\":[{\"id\":\"1364\"},{\"id\":\"1369\"}],\"title\":{\"id\":\"1728\"},\"toolbar\":{\"id\":\"1354\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1210\"},\"x_scale\":{\"id\":\"1335\"},\"y_range\":{\"id\":\"1373\"},\"y_scale\":{\"id\":\"1337\"}},\"id\":\"1330\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"formatter\":{\"id\":\"1645\"},\"major_label_policy\":{\"id\":\"1647\"},\"ticker\":{\"id\":\"1100\"},\"visible\":false},\"id\":\"1099\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1108\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1296\",\"type\":\"LinearScale\"},{\"attributes\":{\"axis\":{\"id\":\"1461\"},\"ticker\":null},\"id\":\"1464\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1311\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"1714\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1052\",\"type\":\"LinearScale\"},{\"attributes\":{\"formatter\":{\"id\":\"1715\"},\"major_label_policy\":{\"id\":\"1717\"},\"ticker\":{\"id\":\"1303\"},\"visible\":false},\"id\":\"1302\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1067\",\"type\":\"HelpTool\"},{\"attributes\":{\"formatter\":{\"id\":\"1718\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1720\"},\"ticker\":{\"id\":\"1299\"},\"visible\":false},\"id\":\"1298\",\"type\":\"LinearAxis\"},{\"attributes\":{\"axis\":{\"id\":\"1099\"},\"dimension\":1,\"ticker\":null},\"id\":\"1102\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1299\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"1298\"},\"ticker\":null},\"id\":\"1301\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1100\",\"type\":\"BasicTicker\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1353\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1122\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1024\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1109\",\"type\":\"ResetTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1443\",\"type\":\"Circle\"},{\"attributes\":{\"overlay\":{\"id\":\"1111\"}},\"id\":\"1104\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1103\",\"type\":\"PanTool\"},{\"attributes\":{\"axis\":{\"id\":\"1302\"},\"dimension\":1,\"ticker\":null},\"id\":\"1305\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1105\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"overlay\":{\"id\":\"1353\"}},\"id\":\"1349\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1303\",\"type\":\"BasicTicker\"},{\"attributes\":{\"overlay\":{\"id\":\"1110\"}},\"id\":\"1106\",\"type\":\"BoxSelectTool\"},{\"attributes\":{},\"id\":\"1715\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"overlay\":{\"id\":\"1112\"}},\"id\":\"1107\",\"type\":\"LassoSelectTool\"},{\"attributes\":{},\"id\":\"1717\",\"type\":\"AllLabels\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1103\"},{\"id\":\"1104\"},{\"id\":\"1105\"},{\"id\":\"1106\"},{\"id\":\"1107\"},{\"id\":\"1108\"},{\"id\":\"1109\"}]},\"id\":\"1113\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1307\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1306\",\"type\":\"PanTool\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1111\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"overlay\":{\"id\":\"1312\"}},\"id\":\"1308\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1309\",\"type\":\"SaveTool\"},{\"attributes\":{\"source\":{\"id\":\"1040\"}},\"id\":\"1044\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1310\",\"type\":\"ResetTool\"},{\"attributes\":{\"axis\":{\"id\":\"1018\"},\"dimension\":1,\"ticker\":null},\"id\":\"1021\",\"type\":\"Grid\"},{\"attributes\":{\"source\":{\"id\":\"1406\"}},\"id\":\"1410\",\"type\":\"CDSView\"},{\"attributes\":{\"formatter\":{\"id\":\"1771\"},\"major_label_policy\":{\"id\":\"1773\"},\"ticker\":{\"id\":\"1466\"},\"visible\":false},\"id\":\"1465\",\"type\":\"LinearAxis\"},{\"attributes\":{\"line_alpha\":0.1,\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1408\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1718\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"formatter\":{\"id\":\"1634\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1636\"},\"ticker\":{\"id\":\"1055\"},\"visible\":false},\"id\":\"1054\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1720\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1055\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"1054\"},\"ticker\":null},\"id\":\"1057\",\"type\":\"Grid\"},{\"attributes\":{\"axis_label\":\"kappa\",\"formatter\":{\"id\":\"1631\"},\"major_label_policy\":{\"id\":\"1633\"},\"ticker\":{\"id\":\"1059\"}},\"id\":\"1058\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1022\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1028\",\"type\":\"ResetTool\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1143\"},{\"id\":\"1144\"},{\"id\":\"1145\"},{\"id\":\"1146\"},{\"id\":\"1147\"},{\"id\":\"1148\"}]},\"id\":\"1150\",\"type\":\"Toolbar\"},{\"attributes\":{\"axis\":{\"id\":\"1058\"},\"dimension\":1,\"ticker\":null},\"id\":\"1061\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1027\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1059\",\"type\":\"BasicTicker\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"kappa\"}},\"id\":\"1077\",\"type\":\"Circle\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1062\"},{\"id\":\"1063\"},{\"id\":\"1064\"},{\"id\":\"1065\"},{\"id\":\"1066\"},{\"id\":\"1067\"}]},\"id\":\"1069\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1063\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"overlay\":{\"id\":\"1029\"}},\"id\":\"1025\",\"type\":\"BoxSelectTool\"},{\"attributes\":{},\"id\":\"1062\",\"type\":\"PanTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[0]\"}},\"id\":\"1158\",\"type\":\"Circle\"},{\"attributes\":{\"overlay\":{\"id\":\"1068\"}},\"id\":\"1064\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1065\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1066\",\"type\":\"ResetTool\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1312\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1019\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1091\",\"type\":\"LinearScale\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"syncable\":false,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"1112\",\"type\":\"PolyAnnotation\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"kappa\"}},\"id\":\"1083\",\"type\":\"Circle\"},{\"attributes\":{\"axis\":{\"id\":\"1014\"},\"ticker\":null},\"id\":\"1017\",\"type\":\"Grid\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1082\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1083\"},\"view\":{\"id\":\"1085\"}},\"id\":\"1084\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1110\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"PQytTs7Q7z89DK1OztDvP+Aqd9Qxof8/4Cp31DGh/z/Q58tA/qwHQNDny0D+rAdAMTpcl2OJD0AxOlyXY4kPQElG9nbkshNASUb2duSyE0B5bz4iF6EXQHlvPiIXoRdAqpiGzUmPG0CqmIbNSY8bQNrBznh8fR9A2sHOeHx9H0CFdQuS17UhQIV1C5LXtSFAHYqv5/CsI0Adiq/n8KwjQLWeUz0KpCVAtZ5TPQqkJUBNs/eSI5snQE2z95IjmydA5seb6DySKUDmx5voPJIpQH7cPz5WiStAftw/PlaJK0AW8eOTb4AtQBbx45NvgC1ArgWI6Yh3L0CuBYjpiHcvQCMNlh9RtzBAIw2WH1G3MEBvF2jK3bIxQG8XaMrdsjFAuyE6dWquMkC7ITp1aq4yQAcsDCD3qTNABywMIPepM0BTNt7Kg6U0QFM23sqDpTRAn0CwdRChNUCfQLB1EKE1QOtKgiCdnDZA60qCIJ2cNkA3VVTLKZg3QDdVVMspmDdAhF8mdraTOECEXyZ2tpM4QNBp+CBDjzlA0Gn4IEOPOUAcdMrLz4o6QBx0ysvPijpAaH6cdlyGO0Bofpx2XIY7QLSIbiHpgTxAtIhuIemBPEAAk0DMdX09QACTQMx1fT1ATJ0SdwJ5PkBMnRJ3Ank+QJin5CGPdD9AmKfkIY90P0DyWFvmDThAQPJYW+YNOEBAGF7EO9S1QEAYXsQ71LVAQD5jLZGaM0FAPmMtkZozQUBkaJbmYLFBQGRoluZgsUFAim3/OycvQkCKbf87Jy9CQLByaJHtrEJAsHJoke2sQkA=\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[76]},\"y\":{\"__ndarray__\":\"AAAAAAAAAABmaxiko9dUP2ZrGKSj11Q/kz2z0mvidT+TPbPSa+J1P0PXU/U075A/Q9dT9TTvkD/9SjZHYH2YP/1KNkdgfZg/tQPCKVYboj+1A8IpVhuiP6jF66n8+KQ/qMXrqfz4pD/F/O4Y5S2tP8X87hjlLa0/d2RFkzLqrz93ZEWTMuqvP4oxJ/uNELE/ijEn+40QsT/tr56HgKevP+2vnoeAp68/5fRHGEu3sT/l9EcYS7exP3Ttio9FhbE/dO2Kj0WFsT/yOOSDk0KxP/I45IOTQrE/MgpyjdnIrz8yCnKN2civPwY4114Rvq4/BjjXXhG+rj9cDldkHSSpP1wOV2QdJKk/SsT0DOYvpz9KxPQM5i+nP9V4mxiYcqc/1XibGJhypz/l9EcYS7ehP+X0RxhLt6E//3yA79vNoD//fIDv282gP+rh6C/895c/6uHoL/z3lz88mX1128yTPzyZfXXbzJM/bli5u1QYiz9uWLm7VBiLP9Lh6C/894c/0uHoL/z3hz+/D04BNO2GP78PTgE07YY/UgLLjD9ShD9SAsuMP1KEPxDH4kYTwnI/EMfiRhPCcj9uWLm7VBhrP25YubtUGGs/bli5u1QYaz9uWLm7VBhrP5M9s9Jr4nU/kz2z0mvidT+5Iq3pgqxgP7kiremCrGA/aGsYpKPXVD9oaxiko9dUP7kiremCrFA/uSKt6YKsUD+5Iq3pgqxAP7kiremCrEA/uSKt6YKsQD+5Iq3pgqxAP7kiremCrDA/uSKt6YKsMD8XtINexAJJPxe0g17EAkk/AAAAAAAAAAA=\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[76]}},\"selected\":{\"id\":\"1655\"},\"selection_policy\":{\"id\":\"1654\"}},\"id\":\"1121\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"kappa\"}},\"id\":\"1082\",\"type\":\"Circle\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1054\"}],\"center\":[{\"id\":\"1057\"},{\"id\":\"1061\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1058\"}],\"renderers\":[{\"id\":\"1079\"},{\"id\":\"1084\"}],\"title\":{\"id\":\"1630\"},\"toolbar\":{\"id\":\"1069\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1007\"},\"x_scale\":{\"id\":\"1050\"},\"y_range\":{\"id\":\"1088\"},\"y_scale\":{\"id\":\"1052\"}},\"id\":\"1045\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"overlay\":{\"id\":\"1030\"}},\"id\":\"1023\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"end\":38.07813522,\"start\":0.26710378},\"id\":\"1088\",\"type\":\"Range1d\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1022\"},{\"id\":\"1023\"},{\"id\":\"1024\"},{\"id\":\"1025\"},{\"id\":\"1026\"},{\"id\":\"1027\"},{\"id\":\"1028\"}]},\"id\":\"1032\",\"type\":\"Toolbar\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1080\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"kappa\"}},\"id\":\"1078\",\"type\":\"Circle\"},{\"attributes\":{\"overlay\":{\"id\":\"1031\"}},\"id\":\"1026\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"data_source\":{\"id\":\"1040\"},\"glyph\":{\"id\":\"1041\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1042\"},\"view\":{\"id\":\"1044\"}},\"id\":\"1043\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"formatter\":{\"id\":\"1617\"},\"major_label_policy\":{\"id\":\"1619\"},\"ticker\":{\"id\":\"1019\"},\"visible\":false},\"id\":\"1018\",\"type\":\"LinearAxis\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1077\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1078\"},\"view\":{\"id\":\"1080\"}},\"id\":\"1079\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1068\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1804\",\"type\":\"AllLabels\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1428\"},{\"id\":\"1429\"},{\"id\":\"1430\"},{\"id\":\"1431\"},{\"id\":\"1432\"},{\"id\":\"1433\"}]},\"id\":\"1435\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1010\",\"type\":\"LinearScale\"},{\"attributes\":{\"source\":{\"id\":\"1121\"}},\"id\":\"1125\",\"type\":\"CDSView\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1135\"}],\"center\":[{\"id\":\"1138\"},{\"id\":\"1142\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1139\"}],\"renderers\":[{\"id\":\"1160\"},{\"id\":\"1165\"}],\"title\":{\"id\":\"1658\"},\"toolbar\":{\"id\":\"1150\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1007\"},\"x_scale\":{\"id\":\"1131\"},\"y_range\":{\"id\":\"1210\"},\"y_scale\":{\"id\":\"1133\"}},\"id\":\"1126\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"data_source\":{\"id\":\"1121\"},\"glyph\":{\"id\":\"1122\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1123\"},\"view\":{\"id\":\"1125\"}},\"id\":\"1124\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":0.1,\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1123\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1752\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1753\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1594\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[0]\"}},\"id\":\"1159\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1131\",\"type\":\"LinearScale\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1461\"}],\"center\":[{\"id\":\"1464\"},{\"id\":\"1468\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1465\"}],\"renderers\":[{\"id\":\"1486\"},{\"id\":\"1491\"}],\"title\":{\"id\":\"1770\"},\"toolbar\":{\"id\":\"1476\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1088\"},\"x_scale\":{\"id\":\"1457\"},\"y_range\":{\"id\":\"1577\"},\"y_scale\":{\"id\":\"1459\"}},\"id\":\"1452\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"1133\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1148\",\"type\":\"HelpTool\"},{\"attributes\":{\"axis\":{\"id\":\"1420\"},\"ticker\":null},\"id\":\"1423\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1433\",\"type\":\"HelpTool\"},{\"attributes\":{\"axis_label\":\"theta[0]\",\"formatter\":{\"id\":\"1659\"},\"major_label_policy\":{\"id\":\"1661\"},\"ticker\":{\"id\":\"1140\"}},\"id\":\"1139\",\"type\":\"LinearAxis\"},{\"attributes\":{\"formatter\":{\"id\":\"1662\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1664\"},\"ticker\":{\"id\":\"1136\"},\"visible\":false},\"id\":\"1135\",\"type\":\"LinearAxis\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1446\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1136\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"1135\"},\"ticker\":null},\"id\":\"1138\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1515\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"1510\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1429\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"axis\":{\"id\":\"1139\"},\"dimension\":1,\"ticker\":null},\"id\":\"1142\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1428\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1140\",\"type\":\"BasicTicker\"},{\"attributes\":{\"overlay\":{\"id\":\"1434\"}},\"id\":\"1430\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1163\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1164\"},\"view\":{\"id\":\"1166\"}},\"id\":\"1165\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis\":{\"id\":\"1424\"},\"dimension\":1,\"ticker\":null},\"id\":\"1427\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1144\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1425\",\"type\":\"BasicTicker\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1510\"},{\"id\":\"1511\"},{\"id\":\"1512\"},{\"id\":\"1513\"},{\"id\":\"1514\"},{\"id\":\"1515\"}]},\"id\":\"1517\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1143\",\"type\":\"PanTool\"},{\"attributes\":{\"overlay\":{\"id\":\"1149\"}},\"id\":\"1145\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1443\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1444\"},\"view\":{\"id\":\"1446\"}},\"id\":\"1445\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1146\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1147\",\"type\":\"ResetTool\"},{\"attributes\":{\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1041\",\"type\":\"Line\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1149\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"line_alpha\":0.1,\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1042\",\"type\":\"Line\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[0]\"}},\"id\":\"1163\",\"type\":\"Circle\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1484\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1513\",\"type\":\"SaveTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[0]\"}},\"id\":\"1164\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1756\",\"type\":\"Title\"},{\"attributes\":{\"overlay\":{\"id\":\"1600\"}},\"id\":\"1593\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1598\",\"type\":\"ResetTool\"},{\"attributes\":{\"data_source\":{\"id\":\"1003\"},\"glyph\":{\"id\":\"1158\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1159\"},\"view\":{\"id\":\"1161\"}},\"id\":\"1160\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"overlay\":{\"id\":\"1601\"}},\"id\":\"1596\",\"type\":\"LassoSelectTool\"},{\"attributes\":{\"source\":{\"id\":\"1003\"}},\"id\":\"1161\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1597\",\"type\":\"SaveTool\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1592\"},{\"id\":\"1593\"},{\"id\":\"1594\"},{\"id\":\"1595\"},{\"id\":\"1596\"},{\"id\":\"1597\"},{\"id\":\"1598\"}]},\"id\":\"1602\",\"type\":\"Toolbar\"},{\"attributes\":{\"formatter\":{\"id\":\"1676\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1678\"},\"ticker\":{\"id\":\"1177\"},\"visible\":false},\"id\":\"1176\",\"type\":\"LinearAxis\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1451\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1418\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1416\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1757\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1432\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1759\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1511\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"overlay\":{\"id\":\"1516\"}},\"id\":\"1512\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1812\",\"type\":\"Title\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1434\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"phi\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1444\",\"type\":\"Circle\"},{\"attributes\":{\"axis_label\":\"theta[5]\",\"formatter\":{\"id\":\"1757\"},\"major_label_policy\":{\"id\":\"1759\"},\"ticker\":{\"id\":\"1425\"}},\"id\":\"1424\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"syncable\":false,\"xs_units\":\"screen\",\"ys_units\":\"screen\"},\"id\":\"1397\",\"type\":\"PolyAnnotation\"},{\"attributes\":{},\"id\":\"1760\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"overlay\":{\"id\":\"1599\"}},\"id\":\"1595\",\"type\":\"BoxSelectTool\"},{\"attributes\":{},\"id\":\"1762\",\"type\":\"AllLabels\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1166\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[0]\"}},\"id\":\"1199\",\"type\":\"Circle\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1014\"}],\"center\":[{\"id\":\"1017\"},{\"id\":\"1021\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1018\"}],\"renderers\":[{\"id\":\"1043\"}],\"title\":{\"id\":\"1616\"},\"toolbar\":{\"id\":\"1032\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1007\"},\"x_scale\":{\"id\":\"1010\"},\"y_range\":{\"id\":\"1005\"},\"y_scale\":{\"id\":\"1012\"}},\"id\":\"1006\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"1616\",\"type\":\"Title\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1176\"}],\"center\":[{\"id\":\"1179\"},{\"id\":\"1183\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1180\"}],\"renderers\":[{\"id\":\"1201\"},{\"id\":\"1206\"}],\"title\":{\"id\":\"1672\"},\"toolbar\":{\"id\":\"1191\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1088\"},\"x_scale\":{\"id\":\"1172\"},\"y_range\":{\"id\":\"1210\"},\"y_scale\":{\"id\":\"1174\"}},\"id\":\"1167\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"1431\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1813\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1225\"},{\"id\":\"1226\"},{\"id\":\"1227\"},{\"id\":\"1228\"},{\"id\":\"1229\"},{\"id\":\"1230\"},{\"id\":\"1231\"}]},\"id\":\"1235\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1815\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1012\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1174\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1514\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1177\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1421\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis_label\":\"phi\",\"formatter\":{\"id\":\"1760\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1762\"},\"ticker\":{\"id\":\"1421\"}},\"id\":\"1420\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1172\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1659\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1661\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1700\",\"type\":\"Title\"},{\"attributes\":{\"fill_color\":{\"value\":\"orange\"},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1489\",\"type\":\"Circle\"},{\"attributes\":{\"formatter\":{\"id\":\"1620\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1622\"},\"ticker\":{\"id\":\"1015\"},\"visible\":false},\"id\":\"1014\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"kappa\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1490\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1662\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1664\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1701\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1703\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1015\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1704\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"1475\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1706\",\"type\":\"AllLabels\"},{\"attributes\":{\"axis_label\":\"theta[0]\",\"formatter\":{\"id\":\"1788\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1790\"},\"ticker\":{\"id\":\"1503\"}},\"id\":\"1502\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1503\",\"type\":\"BasicTicker\"},{\"attributes\":{\"children\":[[{\"id\":\"1006\"},0,0],[{\"id\":\"1045\"},1,0],[{\"id\":\"1087\"},1,1],[{\"id\":\"1126\"},2,0],[{\"id\":\"1167\"},2,1],[{\"id\":\"1209\"},2,2],[{\"id\":\"1248\"},3,0],[{\"id\":\"1289\"},3,1],[{\"id\":\"1330\"},3,2],[{\"id\":\"1372\"},3,3],[{\"id\":\"1411\"},4,0],[{\"id\":\"1452\"},4,1],[{\"id\":\"1493\"},4,2],[{\"id\":\"1534\"},4,3],[{\"id\":\"1576\"},4,4]]},\"id\":\"1825\",\"type\":\"GridBox\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1489\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1490\"},\"view\":{\"id\":\"1492\"}},\"id\":\"1491\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1492\",\"type\":\"CDSView\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1469\"},{\"id\":\"1470\"},{\"id\":\"1471\"},{\"id\":\"1472\"},{\"id\":\"1473\"},{\"id\":\"1474\"}]},\"id\":\"1476\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1556\",\"type\":\"HelpTool\"},{\"attributes\":{},\"id\":\"1686\",\"type\":\"Title\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.04355861524272302},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.04355861524272302},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[1]\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1566\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1548\",\"type\":\"BasicTicker\"},{\"attributes\":{\"data_source\":{\"id\":\"1004\"},\"glyph\":{\"id\":\"1530\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1531\"},\"view\":{\"id\":\"1533\"}},\"id\":\"1532\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1541\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1687\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1689\",\"type\":\"AllLabels\"},{\"attributes\":{\"formatter\":{\"id\":\"1799\"},\"major_label_policy\":{\"id\":\"1801\"},\"ticker\":{\"id\":\"1548\"},\"visible\":false},\"id\":\"1547\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1551\",\"type\":\"PanTool\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"orange\"},\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"orange\"},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[0]\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1531\",\"type\":\"Circle\"},{\"attributes\":{\"fill_alpha\":{\"value\":0},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0},\"size\":{\"value\":2},\"x\":{\"field\":\"theta[1]\"},\"y\":{\"field\":\"theta[5]\"}},\"id\":\"1567\",\"type\":\"Circle\"},{\"attributes\":{},\"id\":\"1554\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1690\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1692\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1589\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"1547\"},\"dimension\":1,\"ticker\":null},\"id\":\"1550\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1742\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1539\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1555\",\"type\":\"ResetTool\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"1551\"},{\"id\":\"1552\"},{\"id\":\"1553\"},{\"id\":\"1554\"},{\"id\":\"1555\"},{\"id\":\"1556\"}]},\"id\":\"1558\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1552\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"source\":{\"id\":\"1004\"}},\"id\":\"1533\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1743\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"align\":\"end\",\"below\":[{\"id\":\"1543\"}],\"center\":[{\"id\":\"1546\"},{\"id\":\"1550\"}],\"frame_height\":100,\"frame_width\":100,\"left\":[{\"id\":\"1547\"}],\"renderers\":[{\"id\":\"1568\"},{\"id\":\"1573\"}],\"title\":{\"id\":\"1798\"},\"toolbar\":{\"id\":\"1558\"},\"toolbar_location\":null,\"x_range\":{\"id\":\"1373\"},\"x_scale\":{\"id\":\"1539\"},\"y_range\":{\"id\":\"1577\"},\"y_scale\":{\"id\":\"1541\"}},\"id\":\"1534\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"1745\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1544\",\"type\":\"BasicTicker\"},{\"attributes\":{\"formatter\":{\"id\":\"1813\"},\"major_label_policy\":{\"id\":\"1815\"},\"ticker\":{\"id\":\"1589\"},\"visible\":false},\"id\":\"1588\",\"type\":\"LinearAxis\"},{\"attributes\":{\"overlay\":{\"id\":\"1557\"}},\"id\":\"1553\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1746\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1748\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1798\",\"type\":\"Title\"},{\"attributes\":{\"axis_label\":\"theta[1]\",\"formatter\":{\"id\":\"1802\"},\"major_label_orientation\":0.7853981633974483,\"major_label_policy\":{\"id\":\"1804\"},\"ticker\":{\"id\":\"1544\"}},\"id\":\"1543\",\"type\":\"LinearAxis\"},{\"attributes\":{\"axis\":{\"id\":\"1543\"},\"ticker\":null},\"id\":\"1546\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1799\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1801\",\"type\":\"AllLabels\"},{\"attributes\":{},\"id\":\"1696\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1697\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1802\",\"type\":\"BasicTickFormatter\"}],\"root_ids\":[\"1828\"]},\"title\":\"Bokeh Application\",\"version\":\"2.3.3\"}};\n", " var render_items = [{\"docid\":\"02f0c31c-c824-494f-8eca-af21c5c781c9\",\"root_ids\":[\"1828\"],\"roots\":{\"1828\":\"4bf0f903-1abb-4c77-9d02-a1a085cf088d\"}}];\n", " root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n", "\n", " }\n", " if (root.Bokeh !== undefined) {\n", " embed_document(root);\n", " } else {\n", " var attempts = 0;\n", " var 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": "1828" } }, "output_type": "display_data" } ], "source": [ "g = bebi103.viz.corner(\n", " samples,\n", " parameters=[\"phi\", \"kappa\", \"theta[0]\", \"theta[1]\", \"theta[5]\"],\n", " xtick_label_orientation=np.pi / 4,\n", ")\n", "\n", "bokeh.io.show(g)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can see the results more clearly if we plot the marginalized distributions on top of each other. This also allows us to see how the respective experiments serve to determine $\\phi$, the master reversal probability. I will also plot the most probable value of $\\theta_i$ in the independent experiment model (i.e., all experiments are independent) as a diamond. We also plot the most probable reversal probability of the pooled model (all experiments pooled together) as a black diamond, again with a Uniform prior." ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", " <div class=\"bk-root\" id=\"459c3d4c-6af3-4996-8188-8e25e0fde5f2\" data-root-id=\"2783\"></div>\n" ] }, "metadata": {}, "output_type": "display_data" }, { "data": { "application/javascript": [ "(function(root) {\n", " function embed_document(root) {\n", " \n", " var docs_json = {\"4968babd-cfa5-4984-bbcd-a914d080c513\":{\"defs\":[{\"extends\":null,\"module\":null,\"name\":\"ReactiveHTML1\",\"overrides\":[],\"properties\":[]},{\"extends\":null,\"module\":null,\"name\":\"FlexBox1\",\"overrides\":[],\"properties\":[{\"default\":\"flex-start\",\"kind\":null,\"name\":\"align_content\"},{\"default\":\"flex-start\",\"kind\":null,\"name\":\"align_items\"},{\"default\":\"row\",\"kind\":null,\"name\":\"flex_direction\"},{\"default\":\"wrap\",\"kind\":null,\"name\":\"flex_wrap\"},{\"default\":\"flex-start\",\"kind\":null,\"name\":\"justify_content\"}]},{\"extends\":null,\"module\":null,\"name\":\"TemplateActions1\",\"overrides\":[],\"properties\":[{\"default\":0,\"kind\":null,\"name\":\"open_modal\"},{\"default\":0,\"kind\":null,\"name\":\"close_modal\"}]},{\"extends\":null,\"module\":null,\"name\":\"MaterialTemplateActions1\",\"overrides\":[],\"properties\":[{\"default\":0,\"kind\":null,\"name\":\"open_modal\"},{\"default\":0,\"kind\":null,\"name\":\"close_modal\"}]}],\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"2792\"}],\"center\":[{\"id\":\"2795\"},{\"id\":\"2799\"}],\"frame_height\":275,\"frame_width\":650,\"left\":[{\"id\":\"2796\"}],\"renderers\":[{\"id\":\"2817\"},{\"id\":\"2822\"},{\"id\":\"2827\"},{\"id\":\"2834\"},{\"id\":\"2839\"},{\"id\":\"2844\"},{\"id\":\"2850\"},{\"id\":\"2855\"},{\"id\":\"2860\"},{\"id\":\"2866\"},{\"id\":\"2871\"},{\"id\":\"2876\"},{\"id\":\"2882\"},{\"id\":\"2887\"},{\"id\":\"2892\"},{\"id\":\"2898\"},{\"id\":\"2903\"},{\"id\":\"2908\"},{\"id\":\"2914\"},{\"id\":\"2919\"},{\"id\":\"2924\"},{\"id\":\"2930\"},{\"id\":\"2935\"},{\"id\":\"2940\"},{\"id\":\"2945\"},{\"id\":\"2950\"},{\"id\":\"2955\"},{\"id\":\"2960\"}],\"right\":[{\"id\":\"2829\"}],\"title\":{\"id\":\"3122\"},\"toolbar\":{\"id\":\"2807\"},\"toolbar_location\":\"above\",\"x_range\":{\"id\":\"2784\"},\"x_scale\":{\"id\":\"2788\"},\"y_range\":{\"id\":\"2786\"},\"y_scale\":{\"id\":\"2790\"}},\"id\":\"2783\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{},\"id\":\"3176\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"3125\",\"type\":\"AllLabels\"},{\"attributes\":{\"line_color\":{\"value\":\"#2ca02c\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.533919},\"y\":{\"value\":1}},\"id\":\"2874\",\"type\":\"Ray\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#2ca02c\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.138119},\"y\":{\"value\":0}},\"id\":\"2870\",\"type\":\"Ray\"},{\"attributes\":{\"label\":{\"value\":\"\\u03b81\"},\"renderers\":[{\"id\":\"2850\"}]},\"id\":\"2862\",\"type\":\"LegendItem\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3151\"},\"selection_policy\":{\"id\":\"3150\"}},\"id\":\"2868\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"2873\"}},\"id\":\"2877\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3156\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"2868\"}},\"id\":\"2872\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3179\"},\"selection_policy\":{\"id\":\"3178\"}},\"id\":\"2942\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"2942\"},\"glyph\":{\"id\":\"2943\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2944\"},\"view\":{\"id\":\"2946\"}},\"id\":\"2945\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3153\"},\"selection_policy\":{\"id\":\"3152\"}},\"id\":\"2873\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"2868\"},\"glyph\":{\"id\":\"2869\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2870\"},\"view\":{\"id\":\"2872\"}},\"id\":\"2871\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"2937\"}},\"id\":\"2941\",\"type\":\"CDSView\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#2ca02c\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.533919},\"y\":{\"value\":1}},\"id\":\"2875\",\"type\":\"Ray\"},{\"attributes\":{\"data_source\":{\"id\":\"2873\"},\"glyph\":{\"id\":\"2874\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2875\"},\"view\":{\"id\":\"2877\"}},\"id\":\"2876\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"2942\"}},\"id\":\"2946\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3157\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"3122\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"3128\",\"type\":\"AllLabels\"},{\"attributes\":{\"fill_color\":{\"value\":\"#9467bd\"},\"line_color\":{\"value\":\"#9467bd\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.14912280701754382},\"y\":{\"value\":0.5}},\"id\":\"2948\",\"type\":\"Scatter\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_color\":{\"value\":\"#d62728\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.130793},\"y\":{\"value\":0}},\"id\":\"2885\",\"type\":\"Ray\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#2ca02c\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#2ca02c\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.33394833948339486},\"y\":{\"value\":0.5}},\"id\":\"2939\",\"type\":\"Scatter\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#d62728\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#d62728\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.3507462686567164},\"y\":{\"value\":0.5}},\"id\":\"2944\",\"type\":\"Scatter\"},{\"attributes\":{},\"id\":\"3178\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"3179\",\"type\":\"Selection\"},{\"attributes\":{\"line_color\":\"#d62728\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2880\",\"type\":\"Line\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]}},\"selected\":{\"id\":\"3155\"},\"selection_policy\":{\"id\":\"3154\"}},\"id\":\"2879\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"fill_color\":{\"value\":\"#2ca02c\"},\"line_color\":{\"value\":\"#2ca02c\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.33394833948339486},\"y\":{\"value\":0.5}},\"id\":\"2938\",\"type\":\"Scatter\"},{\"attributes\":{\"source\":{\"id\":\"2879\"}},\"id\":\"2883\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3157\"},\"selection_policy\":{\"id\":\"3156\"}},\"id\":\"2884\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":{\"value\":\"#d62728\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.584078},\"y\":{\"value\":1}},\"id\":\"2890\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"3158\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2797\",\"type\":\"BasicTicker\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#d62728\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.130793},\"y\":{\"value\":0}},\"id\":\"2886\",\"type\":\"Ray\"},{\"attributes\":{\"axis_label\":\"marginal posterior CDF\",\"formatter\":{\"id\":\"3123\"},\"major_label_policy\":{\"id\":\"3125\"},\"ticker\":{\"id\":\"2797\"}},\"id\":\"2796\",\"type\":\"LinearAxis\"},{\"attributes\":{\"data_source\":{\"id\":\"2879\"},\"glyph\":{\"id\":\"2880\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2881\"},\"view\":{\"id\":\"2883\"}},\"id\":\"2882\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"3159\",\"type\":\"Selection\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#d62728\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2881\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"2889\"}},\"id\":\"2893\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"2884\"}},\"id\":\"2888\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3159\"},\"selection_policy\":{\"id\":\"3158\"}},\"id\":\"2889\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"2884\"},\"glyph\":{\"id\":\"2885\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2886\"},\"view\":{\"id\":\"2888\"}},\"id\":\"2887\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#d62728\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.584078},\"y\":{\"value\":1}},\"id\":\"2891\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"3180\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"2889\"},\"glyph\":{\"id\":\"2890\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2891\"},\"view\":{\"id\":\"2893\"}},\"id\":\"2892\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"3181\",\"type\":\"Selection\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_color\":{\"value\":\"#9467bd\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.0303198},\"y\":{\"value\":0}},\"id\":\"2901\",\"type\":\"Ray\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#1f77b4\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.25852272727272724},\"y\":{\"value\":0.5}},\"id\":\"2929\",\"type\":\"Scatter\"},{\"attributes\":{},\"id\":\"3160\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2805\",\"type\":\"HelpTool\"},{\"attributes\":{\"line_color\":\"#9467bd\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2896\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"3161\",\"type\":\"Selection\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]}},\"selected\":{\"id\":\"3161\"},\"selection_policy\":{\"id\":\"3160\"}},\"id\":\"2895\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"2895\"}},\"id\":\"2899\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3163\"},\"selection_policy\":{\"id\":\"3162\"}},\"id\":\"2900\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":{\"value\":\"#9467bd\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.451511},\"y\":{\"value\":1}},\"id\":\"2906\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"2800\",\"type\":\"PanTool\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#9467bd\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.0303198},\"y\":{\"value\":0}},\"id\":\"2902\",\"type\":\"Ray\"},{\"attributes\":{\"data_source\":{\"id\":\"2895\"},\"glyph\":{\"id\":\"2896\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2897\"},\"view\":{\"id\":\"2899\"}},\"id\":\"2898\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"2801\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#9467bd\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2897\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"3162\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"2905\"}},\"id\":\"2909\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3182\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"3183\",\"type\":\"Selection\"},{\"attributes\":{\"source\":{\"id\":\"2900\"}},\"id\":\"2904\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3165\"},\"selection_policy\":{\"id\":\"3164\"}},\"id\":\"2905\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"2900\"},\"glyph\":{\"id\":\"2901\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2902\"},\"view\":{\"id\":\"2904\"}},\"id\":\"2903\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"2803\",\"type\":\"SaveTool\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#9467bd\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.451511},\"y\":{\"value\":1}},\"id\":\"2907\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"3163\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"2905\"},\"glyph\":{\"id\":\"2906\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2907\"},\"view\":{\"id\":\"2909\"}},\"id\":\"2908\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":0.1,\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2816\",\"type\":\"Line\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_color\":{\"value\":\"#8c564b\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.120855},\"y\":{\"value\":0}},\"id\":\"2917\",\"type\":\"Ray\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3173\"},\"selection_policy\":{\"id\":\"3172\"}},\"id\":\"2927\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":\"#8c564b\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2912\",\"type\":\"Line\"},{\"attributes\":{\"data_source\":{\"id\":\"2927\"},\"glyph\":{\"id\":\"2928\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2929\"},\"view\":{\"id\":\"2931\"}},\"id\":\"2930\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]}},\"selected\":{\"id\":\"3167\"},\"selection_policy\":{\"id\":\"3166\"}},\"id\":\"2911\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"active_multi\":null,\"tools\":[{\"id\":\"2800\"},{\"id\":\"2801\"},{\"id\":\"2802\"},{\"id\":\"2803\"},{\"id\":\"2804\"},{\"id\":\"2805\"}]},\"id\":\"2807\",\"type\":\"Toolbar\"},{\"attributes\":{\"overlay\":{\"id\":\"2806\"}},\"id\":\"2802\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"3184\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"2911\"}},\"id\":\"2915\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3185\",\"type\":\"Selection\"},{\"attributes\":{\"label\":{\"value\":\"\\u03b82\"},\"renderers\":[{\"id\":\"2866\"}]},\"id\":\"2878\",\"type\":\"LegendItem\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3169\"},\"selection_policy\":{\"id\":\"3168\"}},\"id\":\"2916\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"3164\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"2804\",\"type\":\"ResetTool\"},{\"attributes\":{\"line_color\":{\"value\":\"#8c564b\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.229657},\"y\":{\"value\":1}},\"id\":\"2922\",\"type\":\"Ray\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#8c564b\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.120855},\"y\":{\"value\":0}},\"id\":\"2918\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"3165\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"2911\"},\"glyph\":{\"id\":\"2912\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2913\"},\"view\":{\"id\":\"2915\"}},\"id\":\"2914\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]}},\"selected\":{\"id\":\"3131\"},\"selection_policy\":{\"id\":\"3130\"}},\"id\":\"2814\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#8c564b\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2913\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"2921\"}},\"id\":\"2925\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_color\":{\"value\":\"black\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.19587508739221626},\"y\":{\"value\":0.5}},\"id\":\"2958\",\"type\":\"Scatter\"},{\"attributes\":{\"source\":{\"id\":\"2916\"}},\"id\":\"2920\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3171\"},\"selection_policy\":{\"id\":\"3170\"}},\"id\":\"2921\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"2916\"},\"glyph\":{\"id\":\"2917\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2918\"},\"view\":{\"id\":\"2920\"}},\"id\":\"2919\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#8c564b\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.229657},\"y\":{\"value\":1}},\"id\":\"2923\",\"type\":\"Ray\"},{\"attributes\":{\"data_source\":{\"id\":\"2921\"},\"glyph\":{\"id\":\"2922\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2923\"},\"view\":{\"id\":\"2925\"}},\"id\":\"2924\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":0.5,\"fill_color\":\"lightgrey\",\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":1.0,\"line_color\":\"black\",\"line_dash\":[4,4],\"line_width\":2,\"right_units\":\"screen\",\"syncable\":false,\"top_units\":\"screen\"},\"id\":\"2806\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3181\"},\"selection_policy\":{\"id\":\"3180\"}},\"id\":\"2947\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"fill_color\":{\"value\":\"#d62728\"},\"line_color\":{\"value\":\"#d62728\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.3507462686567164},\"y\":{\"value\":0.5}},\"id\":\"2943\",\"type\":\"Scatter\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3177\"},\"selection_policy\":{\"id\":\"3176\"}},\"id\":\"2937\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"3123\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"data_source\":{\"id\":\"2937\"},\"glyph\":{\"id\":\"2938\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2939\"},\"view\":{\"id\":\"2941\"}},\"id\":\"2940\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"fill_color\":{\"value\":\"#1f77b4\"},\"line_color\":{\"value\":\"#1f77b4\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.25852272727272724},\"y\":{\"value\":0.5}},\"id\":\"2928\",\"type\":\"Scatter\"},{\"attributes\":{\"axis_label\":\"parameter value\",\"formatter\":{\"id\":\"3126\"},\"major_label_policy\":{\"id\":\"3128\"},\"ticker\":{\"id\":\"2793\"}},\"id\":\"2792\",\"type\":\"LinearAxis\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#ff7f0e\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#ff7f0e\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.34374999999999994},\"y\":{\"value\":0.5}},\"id\":\"2934\",\"type\":\"Scatter\"},{\"attributes\":{},\"id\":\"3144\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"3166\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"3167\",\"type\":\"Selection\"},{\"attributes\":{\"label\":{\"value\":\"\\u03b80\"},\"renderers\":[{\"id\":\"2834\"}]},\"id\":\"2846\",\"type\":\"LegendItem\"},{\"attributes\":{},\"id\":\"2784\",\"type\":\"DataRange1d\"},{\"attributes\":{\"data_source\":{\"id\":\"2863\"},\"glyph\":{\"id\":\"2864\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2865\"},\"view\":{\"id\":\"2867\"}},\"id\":\"2866\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"2814\"}},\"id\":\"2818\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3135\"},\"selection_policy\":{\"id\":\"3134\"}},\"id\":\"2824\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"3145\",\"type\":\"Selection\"},{\"attributes\":{\"label\":{\"value\":\"\\u03d5\"},\"renderers\":[{\"id\":\"2817\"}]},\"id\":\"2830\",\"type\":\"LegendItem\"},{\"attributes\":{\"line_width\":{\"value\":2},\"x\":{\"value\":0.554734},\"y\":{\"value\":1}},\"id\":\"2825\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"2786\",\"type\":\"DataRange1d\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3145\"},\"selection_policy\":{\"id\":\"3144\"}},\"id\":\"2852\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":{\"value\":\"#ff7f0e\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.621611},\"y\":{\"value\":1}},\"id\":\"2858\",\"type\":\"Ray\"},{\"attributes\":{\"source\":{\"id\":\"2847\"}},\"id\":\"2851\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_color\":{\"value\":\"#ff7f0e\"},\"line_color\":{\"value\":\"#ff7f0e\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.34374999999999994},\"y\":{\"value\":0.5}},\"id\":\"2933\",\"type\":\"Scatter\"},{\"attributes\":{},\"id\":\"3126\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"label\":{\"value\":\"\\u03b85\"},\"renderers\":[{\"id\":\"2914\"}]},\"id\":\"2926\",\"type\":\"LegendItem\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#ff7f0e\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2849\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"2863\"}},\"id\":\"2867\",\"type\":\"CDSView\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_width\":{\"value\":2},\"x\":{\"value\":0.110363},\"y\":{\"value\":0}},\"id\":\"2821\",\"type\":\"Ray\"},{\"attributes\":{\"source\":{\"id\":\"2927\"}},\"id\":\"2931\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3185\"},\"selection_policy\":{\"id\":\"3184\"}},\"id\":\"2957\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3133\"},\"selection_policy\":{\"id\":\"3132\"}},\"id\":\"2819\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"3134\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"3168\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"2932\"},\"glyph\":{\"id\":\"2933\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2934\"},\"view\":{\"id\":\"2936\"}},\"id\":\"2935\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"2819\"}},\"id\":\"2823\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3135\",\"type\":\"Selection\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3175\"},\"selection_policy\":{\"id\":\"3174\"}},\"id\":\"2932\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"2814\"},\"glyph\":{\"id\":\"2815\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2816\"},\"view\":{\"id\":\"2818\"}},\"id\":\"2817\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#ff7f0e\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.122843},\"y\":{\"value\":0}},\"id\":\"2854\",\"type\":\"Ray\"},{\"attributes\":{\"source\":{\"id\":\"2932\"}},\"id\":\"2936\",\"type\":\"CDSView\"},{\"attributes\":{\"label\":{\"value\":\"\\u03b84\"},\"renderers\":[{\"id\":\"2898\"}]},\"id\":\"2910\",\"type\":\"LegendItem\"},{\"attributes\":{\"source\":{\"id\":\"2852\"}},\"id\":\"2856\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3169\",\"type\":\"Selection\"},{\"attributes\":{\"click_policy\":\"hide\",\"items\":[{\"id\":\"2830\"},{\"id\":\"2846\"},{\"id\":\"2862\"},{\"id\":\"2878\"},{\"id\":\"2894\"},{\"id\":\"2910\"},{\"id\":\"2926\"}],\"location\":\"bottom_right\"},\"id\":\"2829\",\"type\":\"Legend\"},{\"attributes\":{},\"id\":\"3146\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"3147\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"2847\"},\"glyph\":{\"id\":\"2848\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2849\"},\"view\":{\"id\":\"2851\"}},\"id\":\"2850\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"2819\"},\"glyph\":{\"id\":\"2820\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2821\"},\"view\":{\"id\":\"2823\"}},\"id\":\"2822\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"2852\"},\"glyph\":{\"id\":\"2853\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2854\"},\"view\":{\"id\":\"2856\"}},\"id\":\"2855\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_width\":{\"value\":2},\"x\":{\"value\":0.554734},\"y\":{\"value\":1}},\"id\":\"2826\",\"type\":\"Ray\"},{\"attributes\":{\"data_source\":{\"id\":\"2824\"},\"glyph\":{\"id\":\"2825\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2826\"},\"view\":{\"id\":\"2828\"}},\"id\":\"2827\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"label\":{\"value\":\"\\u03b83\"},\"renderers\":[{\"id\":\"2882\"}]},\"id\":\"2894\",\"type\":\"LegendItem\"},{\"attributes\":{},\"id\":\"3136\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"2952\"}},\"id\":\"2956\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3137\",\"type\":\"Selection\"},{\"attributes\":{\"source\":{\"id\":\"2824\"}},\"id\":\"2828\",\"type\":\"CDSView\"},{\"attributes\":{\"source\":{\"id\":\"2857\"}},\"id\":\"2861\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3170\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"line_color\":\"#2ca02c\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2864\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"2947\"}},\"id\":\"2951\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3171\",\"type\":\"Selection\"},{\"attributes\":{\"line_color\":\"#ff7f0e\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2848\",\"type\":\"Line\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3147\"},\"selection_policy\":{\"id\":\"3146\"}},\"id\":\"2857\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"3148\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#8c564b\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#8c564b\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.1667676461678279},\"y\":{\"value\":0.5}},\"id\":\"2954\",\"type\":\"Scatter\"},{\"attributes\":{},\"id\":\"3149\",\"type\":\"Selection\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]}},\"selected\":{\"id\":\"3143\"},\"selection_policy\":{\"id\":\"3142\"}},\"id\":\"2847\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"2841\"},\"glyph\":{\"id\":\"2842\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2843\"},\"view\":{\"id\":\"2845\"}},\"id\":\"2844\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"3138\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"2957\"}},\"id\":\"2961\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_color\":{\"value\":\"#8c564b\"},\"line_color\":{\"value\":\"#8c564b\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.1667676461678279},\"y\":{\"value\":0.5}},\"id\":\"2953\",\"type\":\"Scatter\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_color\":{\"value\":\"#ff7f0e\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.122843},\"y\":{\"value\":0}},\"id\":\"2853\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"2790\",\"type\":\"LinearScale\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.496414},\"y\":{\"value\":1}},\"id\":\"2843\",\"type\":\"Ray\"},{\"attributes\":{\"data_source\":{\"id\":\"2836\"},\"glyph\":{\"id\":\"2837\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2838\"},\"view\":{\"id\":\"2840\"}},\"id\":\"2839\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3141\"},\"selection_policy\":{\"id\":\"3140\"}},\"id\":\"2841\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"3139\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"3150\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"source\":{\"id\":\"2836\"}},\"id\":\"2840\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"2788\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"3172\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"3151\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"3173\",\"type\":\"Selection\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]}},\"selected\":{\"id\":\"3149\"},\"selection_policy\":{\"id\":\"3148\"}},\"id\":\"2863\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"2793\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis\":{\"id\":\"2792\"},\"ticker\":null},\"id\":\"2795\",\"type\":\"Grid\"},{\"attributes\":{\"axis\":{\"id\":\"2796\"},\"dimension\":1,\"ticker\":null},\"id\":\"2799\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"3140\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3183\"},\"selection_policy\":{\"id\":\"3182\"}},\"id\":\"2952\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"2952\"},\"glyph\":{\"id\":\"2953\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2954\"},\"view\":{\"id\":\"2956\"}},\"id\":\"2955\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"3141\",\"type\":\"Selection\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"black\"},\"line_alpha\":{\"value\":0.1},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.19587508739221626},\"y\":{\"value\":0.5}},\"id\":\"2959\",\"type\":\"Scatter\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_color\":{\"value\":\"#1f77b4\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.0762585},\"y\":{\"value\":0}},\"id\":\"2837\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"3152\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"2957\"},\"glyph\":{\"id\":\"2958\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2959\"},\"view\":{\"id\":\"2961\"}},\"id\":\"2960\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#2ca02c\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2865\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"3153\",\"type\":\"Selection\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_width\":{\"value\":2},\"x\":{\"value\":0.110363},\"y\":{\"value\":0}},\"id\":\"2820\",\"type\":\"Ray\"},{\"attributes\":{\"line_color\":\"#1f77b4\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2832\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"3174\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data\":{\"x\":{\"__ndarray__\":\"kMGKU62Fsz+QwYpTrYWzPyFgCJSocrc/IWAIlKhytz8w1AbM6Oy3PzDUBszo7Lc/5Bgk2BO4uD/kGCTYE7i4P8JR8uocA7o/wlHy6hwDuj9oke18PzW6P2iR7Xw/Nbo/TiUDQBU3uj9OJQNAFTe6P43vi0tV2ro/je+LS1Xauj+ci7/tCRK7P5yLv+0JErs/1QYnol9buz/VBieiX1u7Py/dJAaBlbs/L90kBoGVuz/xY8xdS8i7P/FjzF1LyLs/bsST3czouz9uxJPdzOi7PyNli6Td6Ls/I2WLpN3ouz9dqWdBKO+7P12pZ0Eo77s/qOMxA5Xxuz+o4zEDlfG7PybHndLB+rs/Jsed0sH6uz/MQdDRqpa8P8xB0NGqlrw/Yocx6e+lvD9ihzHp76W8P/CJdap8z7w/8Il1qnzPvD/goSjQJ/K8P+ChKNAn8rw/zNB4IojzvD/M0HgiiPO8P090XfjB+bw/T3Rd+MH5vD+6Mqg2OBG9P7oyqDY4Eb0/7pV5q65DvT/ulXmrrkO9P+QViJ6USb0/5BWInpRJvT+GcMyyJ4G9P4ZwzLIngb0/626e6pCbvT/rbp7qkJu9PyQLmMCtu70/JAuYwK27vT8pz7wcdt+9PynPvBx2370/BW7dzVMdvj8Fbt3NUx2+P3KKjuTyH74/coqO5PIfvj/Xv+szZ32+P9e/6zNnfb4/RbsKKT+pvj9FuwopP6m+P4o5CDpa1b4/ijkIOlrVvj8Z5C7CFOW+PxnkLsIU5b4/FsH/VrJjvz8Wwf9WsmO/P/GAsilXeL8/8YCyKVd4vz/iAtAoXfq/P+IC0Chd+r8/sOJUa2EWwD+w4lRrYRbAP8gjuJGyRcA/yCO4kbJFwD/b+uk/a37AP9v66T9rfsA/VU0QdR+AwD9VTRB1H4DAPzLohNBBl8A/MuiE0EGXwD8K9Ik8SbrAPwr0iTxJusA/FqdaC7PQwD8Wp1oLs9DAPy9pjNZR1cA/L2mM1lHVwD8gf2lRn+TAPyB/aVGf5MA/hKCjVS3pwD+EoKNVLenAPwjJAiZw68A/CMkCJnDrwD88+fTYlgHBPzz59NiWAcE/kQvO4O8XwT+RC87g7xfBP9GWcymuKsE/0ZZzKa4qwT9UOlj/5zDBP1Q6WP/nMME/toDQevgywT+2gNB6+DLBP6BP5EnSNcE/oE/kSdI1wT8ps0EmGTnBPymzQSYZOcE/yqmdYWpLwT/KqZ1hakvBPxsrMc9KWsE/Gysxz0pawT88iJ0pdF7BPzyInSl0XsE/hLhy9s5owT+EuHL2zmjBP+I+cmvSbcE/4j5ya9JtwT8CnN7F+3HBPwKc3sX7ccE/ADyiQnVzwT8APKJCdXPBPwpoImx4esE/CmgibHh6wT++hXXj3ZHBP76FdePdkcE/saVHUz2ZwT+xpUdTPZnBP2BXk6espsE/YFeTp6ymwT/AP6VKlL3BP8A/pUqUvcE/XCBB8WPMwT9cIEHxY8zBP1dgyOpWz8E/V2DI6lbPwT/752nAIOnBP/vnacAg6cE/HcwmwLD8wT8dzCbAsPzBP5DZWfROBcI/kNlZ9E4Fwj/Ver/RjhvCP9V6v9GOG8I/nkKu1LMgwj+eQq7UsyDCP6BOeXQjLMI/oE55dCMswj+1+uqqQC3CP7X66qpALcI/w7ewbrw7wj/Dt7BuvDvCPwRyiSMPRMI/BHKJIw9Ewj+kN9xHbk3CP6Q33EduTcI/nBcnvtpRwj+cFye+2lHCP5wZ/Wg4ZcI/nBn9aDhlwj/zWgndJXHCP/NaCd0lccI/MISc9/9xwj8whJz3/3HCP/Q1y2Wjc8I/9DXLZaNzwj9GC9C2mnXCP0YL0LaadcI/VBwHXi13wj9UHAdeLXfCP02BzM6id8I/TYHMzqJ3wj9tWb4uw3/CP21Zvi7Df8I/sB2M2CeAwj+wHYzYJ4DCP1w+kpIehsI/XD6Skh6Gwj/nASzy64fCP+cBLPLrh8I/k6espuuJwj+Tp6ym64nCP+UoQBTMmMI/5ShAFMyYwj+Ok8K8x5nCP46TwrzHmcI/MGMK1jibwj8wYwrWOJvCP6TGhJhLqsI/pMaEmEuqwj8q/YSzW8vCPyr9hLNby8I/HccPlUbMwj8dxw+VRszCPyjzj75J08I/KPOPvknTwj/RXRJnRdTCP9FdEmdF1MI/zXhb6bXZwj/NeFvptdnCPwMHtHQF28I/Awe0dAXbwj8O3ewPlNvCPw7d7A+U28I/pwcFpWjlwj+nBwWlaOXCP3GqtTAL7cI/caq1MAvtwj/OVfMcke/CP85V8xyR78I/Sl6dY0D2wj9KXp1jQPbCP9HmOLcJ98I/0eY4twn3wj/HZkeq7/zCP8dmR6rv/MI/LA38qIb9wj8sDfyohv3CPwVrnE1HAMM/BWucTUcAwz/ymeyfpwHDP/KZ7J+nAcM/Yp0q3zMSwz9inSrfMxLDPz6zJEBNLcM/PrMkQE0twz9ZUBiUaTTDP1lQGJRpNMM/gEi/fR04wz+ASL99HTjDP5xqLcxCO8M/nGotzEI7wz8QIhlybD3DPxAiGXJsPcM/inQ/pyA/wz+KdD+nID/DP8dJYd7jTMM/x0lh3uNMwz/gMNEgBU/DP+Aw0SAFT8M/ggAZOnZQwz+CABk6dlDDPwLwT6kSZcM/AvBPqRJlwz+cxCCwcmjDP5zEILByaMM/N/sD5bZ9wz83+wPltn3DP6/t7ZbkgMM/r+3tluSAwz+s4/ih0ojDP6zj+KHSiMM/WYl5VtKKwz9ZiXlW0orDP4YcW88QjsM/hhxbzxCOwz+R8pNqn47DP5Hyk2qfjsM/Y7X5f9WRwz9jtfl/1ZHDP53Ul6WdmsM/ndSXpZ2awz9w7URJSKTDP3DtRElIpMM/NPW6RWCswz809bpFYKzDP3JPV3cstsM/ck9Xdyy2wz93ZRcMrrnDP3dlFwyuucM/uynltRK6wz+7KeW1ErrDPyKrWz0nvcM/IqtbPSe9wz/5LTpZar3DP/ktOllqvcM/ysFsAgzLwz/KwWwCDMvDP9ZyZyYYzsM/1nJnJhjOwz8MVwdA3NXDPwxXB0Dc1cM/6Gor9pfdwz/oaiv2l93DP5dw6C0e3sM/l3DoLR7ewz/9bOS6KeXDP/1s5Lop5cM/jUY+r3jqwz+NRj6veOrDP4eGxahr7cM/h4bFqGvtwz/X+4123PDDP9f7jXbc8MM/XoQpyqXxwz9ehCnKpfHDP21wIvq19cM/bXAi+rX1wz/qIoWy8PXDP+oihbLw9cM/uwopP6n2wz+7Cik/qfbDP8obYOY7+MM/yhtg5jv4wz8NOEvJchLEPw04S8lyEsQ/GOlF7X4VxD8Y6UXtfhXEPxaJCWr4FsQ/FokJavgWxD9inpW04hvEP2KelbTiG8Q/pmJjXkccxD+mYmNeRxzEP+888ZwtIMQ/7zzxnC0gxD+vsyH/zCDEP6+zIf/MIMQ/uYlamlshxD+5iVqaWyHEP2Dq501FKsQ/YOrnTUUqxD+BeF2/YDfEP4F4Xb9gN8Q/i06WWu83xD+LTpZa7zfEP2JM+nspPMQ/Ykz6eyk8xD/YYyKl2TzEP9hjIqXZPMQ/LO+qB8xDxD8s76oHzEPEP3GOOjquRsQ/cY46Oq5GxD9JERlW8UbEP0kRGVbxRsQ/TUwXYvVHxD9NTBdi9UfEP5iG4SNiSsQ/mIbhI2JKxD/Vr3Q+PEvEP9WvdD48S8Q/8icqG9ZUxD/yJyob1lTEPwoPml33VsQ/Cg+aXfdWxD+V0jO9xFjEP5XSM73EWMQ/6+I2GsBbxD/r4jYawFvEP6Je8GlOXsQ/ol7waU5exD/Owp52+GvEP87Cnnb4a8Q/6glLPKBsxD/qCUs8oGzEPx04Z0Rpb8Q/HThnRGlvxD+0AkNWt3rEP7QCQ1a3esQ/tAJDVrd6xD+0AkNWt3rEP+GVJM/1fcQ/4ZUkz/V9xD8BGM+goX/EPwEYz6Chf8Q/VU0QdR+AxD9VTRB1H4DEPy0mNh/XhsQ/LSY2H9eGxD/jxi3m54bEP+PGLebnhsQ/4GbxYmGIxD/gZvFiYYjEPy18fa1LjcQ/LXx9rUuNxD84g79fzJbEPziDv1/MlsQ/HhfVIqKYxD8eF9UiopjEP3nnUIaqmMQ/eedQhqqYxD/x2To42JvEP/HZOjjYm8Q/A3y3eeOkxD8DfLd546TEP0+RQ8TNqcQ/T5FDxM2pxD9gWP58W7DEP2BY/nxbsMQ/JuXuc3y0xD8m5e5zfLTEP4iBrn0BvcQ/iIGufQG9xD87wmnBi77EPzvCacGLvsQ/UyRfCaTExD9TJF8JpMTEP2E1lrA2xsQ/YTWWsDbGxD/G20qvzcbEP8bbSq/NxsQ/XiuhuyTOxD9eK6G7JM7EP5F++zpwzsQ/kX77OnDOxD8OMV7zqs7EPw4xXvOqzsQ/IH2TpkHRxD8gfZOmQdHEP5UPQdXo1cQ/lQ9B1ejVxD/20D5W8NvEP/bQPlbw28Q/ptb7jXbcxD+m1vuNdtzEPxgJbTmX4sQ/GAltOZfixD9VMgBUcePEP1UyAFRx48Q/lBEXgEbpxD+UEReARunEP7bz/dR46cQ/tvP91HjpxD/PMLWlDvLEP88wtaUO8sQ/RUjdzr7yxD9FSN3OvvLEP4JxcOmY88Q/gnFw6ZjzxD8QlUbM7PPEPxCVRszs88Q/5DJuaqD5xD/kMm5qoPnEP8KmzqPi/8Q/wqbOo+L/xD/pnnWNlgPFP+medY2WA8U/H4MVp1oLxT8fgxWnWgvFP28p54u9F8U/bynni70XxT/mllZD4h7FP+aWVkPiHsU/M4ekFkomxT8zh6QWSibFPwIPDCB8KMU/Ag8MIHwoxT9r8L4qFyrFP2vwvioXKsU/nx7bMuAsxT+fHtsy4CzFPxcRxeQNMMU/FxHF5A0wxT8e3QiLijjFPx7dCIuKOMU/BHEeTmA6xT8EcR5OYDrFP168H7dfPsU/Xrwft18+xT/2tS41Qj/FP/a1LjVCP8U/nyCx3T1AxT+fILHdPUDFP9NOzeUGQ8U/007N5QZDxT8cKVsk7UbFPxwpWyTtRsU/64uEtpxLxT/ri4S2nEvFPyi1F9F2TMU/KLUX0XZMxT8Ec/T4vU3FPwRz9Pi9TcU/svM2NjtSxT+y8zY2O1LFP58ih4ibU8U/nyKHiJtTxT+OB1vs9lnFP44HW+z2WcU/xJWzd0ZbxT/ElbN3RlvFP+MXXknyXMU/4xdeSfJcxT/03hgCgGPFP/TeGAKAY8U/73TniedsxT/vdOeJ52zFPyUDQBU3bsU/JQNAFTduxT9znUZaKm/FP3OdRloqb8U/BfwaSYJwxT8F/BpJgnDFP11sWikEcsU/XWxaKQRyxT+hMCjTaHLFP6EwKNNocsU/rrzkf/J3xT+uvOR/8nfFP8kDkUWaeMU/yQORRZp4xT//kenQ6XnFP/+R6dDpecU/LEoJwap6xT8sSgnBqnrFPwWoqWVrfcU/BaipZWt9xT/eBUoKLIDFP94FSgosgMU/WriswmaAxT9auKzCZoDFP3A/4IEBhMU/cD/ggQGExT988NqlDYfFP3zw2qUNh8U/6WLTSiGQxT/pYtNKIZDFP5yjjo6rkcU/nKOOjquRxT/MlqyKcJPFP8yWrIpwk8U/J2co7niTxT8nZyjueJPFP4Zyol2FlMU/hnKiXYWUxT/1aRX9oZnFP/VpFf2hmcU/TdpU3SObxT9N2lTdI5vFP0ga3NYWnsU/SBrc1haexT+j6lc6H57FP6PqVzofnsU/TTCca5ihxT9NMJxrmKHFP9wuNNdppMU/3C4012mkxT+l9iLajqnFP6X2ItqOqcU/x9gJL8GpxT/H2AkvwanFPwQCnUmbqsU/BAKdSZuqxT8T7pV5q67FPxPulXmrrsU/4nX9gt2wxT/idf2C3bDFP2rZWl8ktMU/atlaXyS0xT9pVOBkG7jFP2lU4GQbuMU/b0Vighq+xT9vRWKCGr7FPzkNUYU/w8U/OQ1RhT/DxT/gSKDBps7FP+BIoMGmzsU/3uhjPiDQxT/e6GM+INDFP43uIHam0MU/je4gdqbQxT/Kbfse9dfFP8pt+x7118U/BDdStkjaxT8EN1K2SNrFP1lsk4rG2sU/WWyTisbaxT/Tvrm/etzFP9O+ub963MU/tRfRdkzdxT+1F9F2TN3FP5HVrZ6T3sU/kdWtnpPexT8OiBBXzt7FPw6IEFfO3sU/HJlH/mDgxT8cmUf+YODFP/bRqSuf5cU/9tGpK5/lxT/FWRE10efFP8VZETXR58U/O8eA7PXuxT87x4Ds9e7FP/wYc9cS8sU//Bhz1xLyxT/lDMUdb/LFP+UMxR1v8sU/hXzQs1n1xT+FfNCzWfXFP9mxEYjX9cU/2bERiNf1xT+WQ4ts5/vFP5ZDi2zn+8U/0AziAzv+xT/QDOIDO/7FP0Z6UbtfBcY/RnpRu18Fxj9yMnGrIAbGP3IycasgBsY/oiWPp+UHxj+iJY+n5QfGP9V46SYxCMY/1XjpJjEIxj8rieyDLAvGPyuJ7IMsC8Y/75BigEQTxj/vkGKARBPGP7u4jQbwFsY/u7iNBvAWxj+SO2wiMxfGP5I7bCIzF8Y/1Xq/0Y4bxj/Ver/RjhvGPygrhqsDIMY/KCuGqwMgxj+sU+V7RiLGP6xT5XtGIsY/Zi/bTlsjxj9mL9tOWyPGP8YVF0flJsY/xhUXR+Umxj/9o2/SNCjGP/2jb9I0KMY/ITzaOGItxj8hPNo4Yi3GP01KQbeXNMY/TUpBt5c0xj+VSQ1tADbGP5VJDW0ANsY/fT1fs1w2xj99PV+zXDbGP/rvwWuXNsY/+u/Ba5c2xj8kSKXY0TjGPyRIpdjROMY/2GMipdk8xj/YYyKl2TzGP8FXdOs1PcY/wVd06zU9xj/u6lVkdEDGP+7qVWR0QMY/nvASnPpAxj+e8BKc+kDGP/J7m/7sR8Y/8nub/uxHxj/U1LK1vkjGP9TUsrW+SMY/BMjQsYNKxj8EyNCxg0rGP0HxY8xdS8Y/QfFjzF1Lxj9Mx5xn7EvGP0zHnGfsS8Y/zLT9KytNxj/MtP0rK03GP9eKNse5TcY/14o2x7lNxj8oYDsYsU/GPyhgOxixT8Y/T1jiAWVTxj9PWOIBZVPGP0IibeNPVMY/QiJt409Uxj9UxOkkW13GP1TE6SRbXcY/2exI9Z1fxj/Z7Ej1nV/GP9Qs0O6QYsY/1CzQ7pBixj+0AG2rWWfGP7QAbatZZ8Y/xXHg1XJnxj/FceDVcmfGP1OVtrjGZ8Y/U5W2uMZnxj8TYi6p2m7GPxNiLqnabsY//FWA7zZvxj/8VYDvNm/GP5llTwKbc8Y/mWVPAptzxj+jO4idKXTGP6M7iJ0pdMY/CeI8nMB0xj8J4jycwHTGPw0dO6jEdcY/DR07qMR1xj8sn+V5cHfGPyyf5Xlwd8Y/MNrjhXR4xj8w2uOFdHjGP6ORzyueesY/o5HPK556xj/RJLGk3H3GP9EksaTcfcY/WmPQCaGDxj9aY9AJoYPGP9rLttPWiMY/2su209aIxj/ZIf5hS4/GP9kh/mFLj8Y/6DI1Cd6Qxj/oMjUJ3pDGPwAapUv/ksY/ABqlS/+Sxj+YE7TJ4ZPGP5gTtMnhk8Y/MA3DR8SUxj8wDcNHxJTGP1plprT+lsY/WmWmtP6Wxj/OHJJaKJnGP84ckloomcY/beLkfoeixj9t4uR+h6LGPwe3tYXnpcY/B7e1heelxj9jYvNxbajGP2Ni83FtqMY/I9kj1Aypxj8j2SPUDKnGP0+RQ8TNqcY/T5FDxM2pxj8ZWTLH8q7GPxlZMsfyrsY/zJntCn2wxj/Mme0KfbDGP5lIaTaPw8Y/mUhpNo/Dxj/TZwdcV8zGP9NnB1xXzMY/o8ow7gbRxj+jyjDuBtHGP2d8X1yq0sY/Z3xfXKrSxj/ek4eFWtPGP96Th4Va08Y/sKw0KQXdxj+wrDQpBd3GP1J8fEJ23sY/Unx8Qnbexj/PLt/6sN7GP88u3/qw3sY/IQTkS6jgxj8hBORLqODGPzxLkBFQ4cY/PEuQEVDhxj/Kbmb0o+HGP8puZvSj4cY/OGbZk8Dmxj84ZtmTwObGP1nDRe7p6sY/WcNF7unqxj8rhqsDIO7GPyuGqwMg7sY/tklFY+3vxj+2SUVj7e/GP+mcn+I48MY/6Zyf4jjwxj9IqBlSRfHGP0ioGVJF8cY/Y+/FF+3xxj9j78UX7fHGP3Pbvkf99cY/c9u+R/31xj8bRkHw+PbGPxtGQfD49sY/iWLyBpj5xj+JYvIGmPnGP5hO6zao/cY/mE7rNqj9xj+tUKT7OQXHP61QpPs5Bcc/hNOCF30Fxz+E04IXfQXHP4gOgSOBBsc/iA6BI4EGxz+uga0SLA7HP66BrRIsDsc/3nTLDvEPxz/edMsO8Q/HP5krg2qDE8c/mSuDaoMTxz8W3uUivhPHPxbe5SK+E8c/+IxEaAQbxz/4jERoBBvHP3Lfap24HMc/ct9qnbgcxz8AA0GADB3HPwADQYAMHcc/G0rtRbQdxz8bSu1FtB3HPxtK7UW0Hcc/G0rtRbQdxz/p0VRP5h/HP+nRVE/mH8c/8UdRZ+4hxz/xR1Fn7iHHP2X/PA0YJMc/Zf88DRgkxz8TgH9KlSjHPxOAf0qVKMc/fLd546Qwxz98t3njpDDHPwhW1cvvNMc/CFbVy+80xz+4W5IDdjXHP7hbkgN2Ncc/2xg74SU4xz/bGDvhJTjHPyIYB5eOOcc/IhgHl445xz/i5H6HokDHP+LkfoeiQMc/fLlPjgJExz98uU+OAkTHP1M8LqpFRMc/UzwuqkVExz/UKY9uhEXHP9Qpj26ERcc/QMHFihpMxz9AwcWKGkzHP2KjrN9MTMc/YqOs30xMxz8fuqC+ZU7HPx+6oL5lTsc/Z7lsdM5Pxz9nuWx0zk/HP0+tvroqUMc/T62+uipQxz+I8ZpXdVbHP4jxmld1Vsc/yVUsflNYxz/JVSx+U1jHP3lb6bXZWMc/eVvptdlYxz82ct2U8lrHPzZy3ZTyWsc/pu7KLhhcxz+m7souGFzHP2DKwAEtXcc/YMrAAS1dxz/yKJXwhF7HP/IolfCEXsc/BtUGJ6Jfxz8G1QYnol/HP9i8qrNaYMc/2Lyqs1pgxz8KEAUzpmDHPwoQBTOmYMc/G4F4Xb9gxz8bgXhdv2DHPx3jioujcsc/HeOKi6Nyxz+fq63YX3bHP5+rrdhfdsc/9ODurN12xz/04O6s3XbHPwzIXu/+eMc/DMhe7/54xz/erwJ8t3nHP96vAny3ecc/m8b2WtB7xz+bxvZa0HvHP3LEWnwKgMc/csRafAqAxz/G+ZtQiIDHP8b5m1CIgMc/iEuOO6WDxz+IS447pYPHP+GWj6Skh8c/4ZaPpKSHxz+V10roLonHP5XXSuguicc/pki+EkiJxz+mSL4SSInHP1LuPsdHi8c/Uu4+x0eLxz9MUwQ4vYvHP0xTBDi9i8c/Keyi6IGPxz8p7KLogY/HP6hUibK3lMc/qFSJsreUxz+SI52BkZfHP5IjnYGRl8c/rWpJRzmYxz+taklHOZjHP2xc/67PnMc/bFz/rs+cxz9fJoqQup3HP18mipC6ncc/UvAUcqWexz9S8BRypZ7HP1zGTQ00n8c/XMZNDTSfxz8a3UHsTKHHPxrdQexMocc/2c73U+Olxz/ZzvdT46XHP1aBWgwepsc/VoFaDB6mxz+DFDyFXKnHP4MUPIVcqcc/aahRSDKrxz9pqFFIMqvHP8R4zas6q8c/xHjNqzqrxz8SE9TwLazHPxIT1PAtrMc/xanWwiy0xz/FqdbCLLTHP+UrgZTYtcc/5SuBlNi1xz+YbDzYYrfHP5hsPNhit8c//I123PC7xz/8jXbc8LvHP6X4+ITsvMc/pfj4hOy8xz/XS1MEOL3HP9dLUwQ4vcc/Q41Cklm9xz9DjUKSWb3HP3obmx2pvsc/ehubHam+xz/QK556pMHHP9Arnnqkwcc/fzFbsirCxz9/MVuyKsLHPw6GOqxwy8c/DoY6rHDLxz9A2ZQrvMvHP0DZlCu8y8c/GFxzR//Lxz8YXHNH/8vHP7EwRE5fz8c/sTBETl/Pxz/XTSmvldDHP9dNKa+V0Mc/YLGGi9zTxz9gsYaL3NPHPxtoPudu18c/G2g+527Xxz+ESfHxCdnHP4RJ8fEJ2cc/2ln0TgXcxz/aWfROBdzHP8e5TbhX5sc/x7lNuFfmxz/IlA9B1ejHP8iUD0HV6Mc/ZylZTkLpxz9nKVlOQunHPzJ2wktw6sc/MnbCS3Dqxz95dY4B2evHP3l1jgHZ68c/fCsSE9Twxz98KxIT1PDHP9mxEYjX9cc/2bERiNf1xz8l7NtJRPjHPyXs20lE+Mc/lx5N9WT+xz+XHk31ZP7HP32yYrg6AMg/fbJiuDoAyD+flEkNbQDIP5+USQ1tAMg/CVG+oIUEyD8JUb6ghQTIP6ZgjbPpCMg/pmCNs+kIyD/QuHAgJAvIP9C4cCAkC8g/ER0CRwINyD8RHQJHAg3IP43PZP88Dcg/jc9k/zwNyD8E54wo7Q3IPwTnjCjtDcg/ut3LfXIUyD+63ct9chTIP87fhEIEHMg/zt+EQgQcyD/pJjEIrBzIP+kmMQisHMg/f8ADAwgfyD9/wAMDCB/IP76fGi/dJMg/vp8aL90kyD8MOiF00CXIPww6IXTQJcg/cuDVcmcmyD9y4NVyZybIPzdtxmmIKsg/N23GaYgqyD/+fjFbsirIP/5+MVuyKsg/cxHfiVkvyD9zEd+JWS/IPymy1lBqL8g/KbLWUGovyD+N0xBV+DPIP43TEFX4M8g/hjjWxW00yD+GONbFbTTIP/J5xVOPNMg/8nnFU480yD8eMuVDUDXIPx4y5UNQNcg/m+RH/Io1yD+b5Ef8ijXIP2zM64hDNsg/bMzriEM2yD9x4qsdxTnIP3Hiqx3FOcg/W7G/7J48yD9bsb/snjzIP9hjIqXZPMg/2GMipdk8yD9ZUYNpGD7IP1lRg2kYPsg/TBsOSwM/yD9MGw5LAz/IP65hhsYTQcg/rmGGxhNByD+XVdgMcEHIP5dV2AxwQcg/SIyeW+hKyD9IjJ5b6ErIP/4sliL5Ssg//iyWIvlKyD+cwd8vZkvIP5zB3y9mS8g/I0p7gy9MyD8jSnuDL0zIP9Qq+kMzT8g/1Cr6QzNPyD8oYDsYsU/IPyhgOxixT8g/SkIibeNPyD9KQiJt40/IP9hl+E83UMg/2GX4TzdQyD+1/pYA/FPIP7X+lgD8U8g/MbH5uDZUyD8xsfm4NlTIP7YvoBfuXMg/ti+gF+5cyD/OFhBaD1/IP84WEFoPX8g/weCaO/pfyD/B4Jo7+l/IP7SqJR3lYMg/tKolHeVgyD/KMVncf2TIP8oxWdx/ZMg/uDtrt11oyD+4O2u3XWjIP3PyIhPwa8g/c/IiE/BryD93LSEf9GzIP3ctIR/0bMg/2nOZmgRvyD/ac5maBG/IPzYf14aKccg/Nh/XhopxyD+R71LqknHIP5HvUuqSccg/R5BKsaNxyD9HkEqxo3HIPzMV4pF4ecg/MxXikXh5yD/UX6+w4H7IP9Rfr7Dgfsg/LdDukGKAyD8t0O6QYoDIP7UzTG2pg8g/tTNMbamDyD9HkiBcAYXIP0eSIFwBhcg/m8dhMH+FyD+bx2Ewf4XIP6admssNhsg/pp2ayw2GyD8zwXCuYYbIPzPBcK5hhsg/C0RPyqSGyD8LRE/KpIbIP5FHcCNli8g/kUdwI2WLyD+4PxcNGY/IP7g/Fw0Zj8g/04bD0sCPyD/ThsPSwI/IP+T3Nv3Zj8g/5Pc2/dmPyD/uzW+YaJDIP+7Nb5hokMg/6DI1Cd6QyD/oMjUJ3pDIPzxodt1bkcg/PGh23VuRyD8NUBpqFJLIPw1QGmoUksg/gQcGED6UyD+BBwYQPpTIP7iVXpuNlcg/uJVem42VyD8nEkw1s5bIPycSTDWzlsg/GtzWFp6XyD8a3NYWnpfIP4CCixU1mMg/gIKLFTWYyD+R8/4/TpjIP5Hz/j9OmMg/thDkoISZyD+2EOSghJnIP2O2ZFWEm8g/Y7ZkVYSbyD8ebRyxFp/IPx5tHLEWn8g/B2Fu93KfyD8HYW73cp/IPzMZjuczoMg/MxmO5zOgyD9jDKzj+KHIP2MMrOP4ocg/LzTXaaSlyD8vNNdppKXIP7U3+MJkqsg/tTf4wmSqyD8buW5Kea3IPxu5bkp5rcg/ZJP8iF+xyD9kk/yIX7HIP2qEfqZet8g/aoR+pl63yD9D4h5LH7rIP0PiHksfusg/k1fnGJC9yD+TV+cYkL3IPyjxuRPsv8g/KPG5E+y/yD8BT1q4rMLIPwFPWriswsg/nYNnQpPEyD+dg2dCk8TIP3x8Qnbexsg/fHxCdt7GyD86kzZV98jIPzqTNlX3yMg/4/24/fLJyD/j/bj98snIPwXgn1Ilysg/BeCfUiXKyD9xIY/gRsrIP3Ehj+BGysg/jh6/t+nPyD+OHr+36c/IP5Q0f0xr08g/lDR/TGvTyD9zLVqAttXIP3MtWoC21cg/EsKjjSPWyD8SwqONI9bIP0QV/gxv1sg/RBX+DG/WyD/XTpSERNrIP9dOlIRE2sg/r9FyoIfayD+v0XKgh9rIP8BC5sqg2sg/wELmyqDayD8l6ZrJN9vIPyXpmsk328g/1O5XAb7byD/U7lcBvtvIP68nui784Mg/rye6LvzgyD/D0ytlGeLIP8PTK2UZ4sg/mPbN/dXjyD+Y9s391ePIP0M8Ei9P58g/QzwSL0/nyD/MejGUE+3IP8x6MZQT7cg/GhU42QbuyD8aFTjZBu7IPxFwCFVq9sg/EXAIVWr2yD9p4Ec17PfIP2ngRzXs98g/Kld4l4v4yD8qV3iXi/jIP36MuWsJ+cg/foy5awn5yD9GeeblsPvIP0Z55uWw+8g/aFvNOuP7yD9oW8064/vIP5uuJ7ou/Mg/m64nui78yD/EBgsnaf7IP8QGCydp/sg/eqcC7nn+yD96pwLuef7IP0G5bd+j/sg/Qblt36P+yD86HjNQGf/IPzoeM1AZ/8g/DeGYZU8CyT8N4ZhlTwLJPy/Df7qBAsk/L8N/uoECyT+l2qfjMQPJP6Xap+MxA8k/3GgAb4EEyT/caABvgQTJP8iXUMHhBck/yJdQweEFyT8tPgXAeAbJPy0+BcB4Bsk/U1vqIK8HyT9TW+ogrwfJP4eJBil4Csk/h4kGKXgKyT/BUl3AywzJP8FSXcDLDMk/3ZkJhnMNyT/dmQmGcw3JP2q932jHDck/ar3faMcNyT9qEyf3OxTJP2oTJ/c7FMk/bynni70XyT9vKeeLvRfJPw6+MJkqGMk/Dr4wmSoYyT8NObaeIRzJPw05tp4hHMk/MPZefNEeyT8w9l580R7JP1wExvoGJsk/XATG+gYmyT9tdTklICbJP211OSUgJsk/6Sec3VomyT/pJ5zdWibJP3uGcMyyJ8k/e4ZwzLInyT+N0qV/SSrJP43SpX9JKsk/c2a7Qh8syT9zZrtCHyzJP2JLj6Z6Msk/YkuPpnoyyT/WAntMpDTJP9YCe0ykNMk/feiC+pY5yT996IL6ljnJP2bc1EDzOck/ZtzUQPM5yT8yBADHnj3JPzIEAMeePck/VObmG9E9yT9U5uYb0T3JP+EJvf4kPsk/4Qm9/iQ+yT86evzepj/JPzp6/N6mP8k/PDCA8KFEyT88MIDwoUTJP4/gRsoWSck/j+BGyhZJyT9yFCAKZkzJP3IUIApmTMk/TU2CN6RRyT9NTYI3pFHJP16+9WG9Uck/Xr71Yb1RyT81QdR9AFLJPzVB1H0AUsk/5iFTPgRVyT/mIVM+BFXJPyNL5ljeVck/I0vmWN5VyT97uyU5YFfJP3u7JTlgV8k/NZcbDHVYyT81lxsMdVjJP7q/ety3Wsk/ur963LdayT8xsmSO5V3JPzGyZI7lXck/nfNTHAdeyT+d81McB17JP07U0twKYck/TtTS3AphyT9z8bc9QWLJP3Pxtz1BYsk/UmUYd4NoyT9SZRh3g2jJP22sxDwrack/bazEPCtpyT8csoF0sWnJPxyygXSxack/FhdH5SZqyT8WF0flJmrJP1yRmKCGb8k/XJGYoIZvyT+NX3glyXPJP41feCXJc8k/1xTI7Cx6yT/XFMjsLHrJP9wqiIGufck/3CqIga59yT+dobjjTX7JP52huONNfsk/LKBQTx+ByT8soFBPH4HJP+FASBYwgck/4UBIFjCByT9YWHA/4IHJP1hYcD/ggck/1ArT9xqCyT/UCtP3GoLJP61oc5zbhMk/rWhznNuEyT9VTntKzonJP1VOe0rOick/JjYf14aKyT8mNh/XhorJP48X0uEhjMk/jxfS4SGMyT9bP/1nzY/JP1s//WfNj8k/ZhU2A1yQyT9mFTYDXJDJP3Drbp7qkMk/cOtunuqQyT/FILByaJHJP8UgsHJokck/voV1492RyT++hXXj3ZHJP/uuCP63ksk/+64I/reSyT8LmwEuyJbJPwubAS7Ilsk/NPPkmgKZyT808+SaApnJPzxp4bIKm8k/PGnhsgqbyT9RFVPpJ5zJP1EVU+knnMk/LNMvEW+dyT8s0y8Rb53JP8JsAgzLn8k/wmwCDMufyT8FMdC1L6DJPwUx0LUvoMk/tTaN7bWgyT+1No3ttaDJPytOtRZmock/K061FmahyT+xUdZvJqbJP7FR1m8mpsk/ETgSaLCpyT8ROBJosKnJP89OBkfJq8k/z04GR8mryT+qDONuEK3JP6oM424Qrck/Xk2espquyT9eTZ6ymq7JP7gdGhajrsk/uB0aFqOuyT9hiJy+nq/JP2GInL6er8k/3jr/dtmvyT/eOv922a/JP8NJmj+mtck/w0maP6a1yT8Acy1agLbJPwBzLVqAtsk/2PULdsO2yT/Y9Qt2w7bJP+hmf6Dctsk/6GZ/oNy2yT8sK01KQbfJPywrTUpBt8k/Ukgyq3e4yT9SSDKrd7jJP2O5pdWQuMk/Y7ml1ZC4yT/4UnjQ7LrJP/hSeNDsusk/Ru1+FeC7yT9G7X4V4LvJP85Q3PEmv8k/zlDc8Sa/yT810lJ5O8LJPzXSUnk7wsk/9UiD29rCyT/1SIPb2sLJP1RU/Urnw8k/VFT9SufDyT9tO22NCMbJP207bY0Ixsk/oWmJldHIyT+haYmV0cjJP8JLcOoDyck/wktw6gPJyT89npYfuMrJPz2elh+4ysk/cqd0sP7PyT9yp3Sw/s/JP5IE4Qoo1Mk/kgThCijUyT/cuTDSi9rJP9y5MNKL2sk/dLM/UG7byT90sz9QbtvJP07soX2s4Mk/TuyhfazgyT9IUWfuIeHJP0hRZ+4h4ck/oyHjUSrhyT+jIeNRKuHJP0yMZfol4sk/TIxl+iXiyT9xqUpbXOPJP3GpSltc48k/5WA2AYblyT/lYDYBhuXJP588LNSa5sk/nzws1JrmyT8IHt/eNejJPwge39416Mk/hdBBl3DoyT+F0EGXcOjJP8iUD0HV6Mk/yJQPQdXoyT+xiGGHMenJP7GIYYcx6ck/02pI3GPpyT/TakjcY+nJPwfvq3Kh8sk/B++rcqHyyT+UEoJV9fLJP5QSglX18sk/veXqxyb5yT+95erHJvnJPwqA8Qwa+sk/CoDxDBr6yT+z6nO1FfvJP7Pqc7UV+8k/H4Kq0asByj8fgqrRqwHKP/SkTGpoA8o/9KRMamgDyj/AzHfwEwfKP8DMd/ATB8o/BJFFmngHyj8EkUWaeAfKP75sO22NCMo/vmw7bY0Iyj86H54lyAjKPzofniXICMo/S5ARUOEIyj9LkBFQ4QjKPxbdek0PCso/Ft16TQ8Kyj/d7uU+OQrKP93u5T45Cso/oaAUrdwLyj+hoBSt3AvKPzTaqiSyD8o/NNqqJLIPyj+Gr691qRHKP4avr3WpEco/kIXoEDgSyj+QhegQOBLKP3y0OGOYE8o/fLQ4Y5gTyj84a/C+KhfKPzhr8L4qF8o/iUD1DyIZyj+JQPUPIhnKP6si3GRUGco/qyLcZFQZyj9rmQzH8xnKP2uZDMfzGco/jPZ4IR0eyj+M9nghHR7KP9XQBmADIso/1dAGYAMiyj92G9R+ayfKP3Yb1H5rJ8o/ud+hKNAnyj+536Eo0CfKP9hhTPp7Kco/2GFM+nspyj9EozuInSnKP0SjO4idKco/2xfQC3cuyj/bF9ALdy7KP3MR34lZL8o/cxHfiVkvyj/HRiBe1y/KP8dGIF7XL8o/+3Q8ZqAyyj/7dDxmoDLKP3gnnx7bMso/eCefHtsyyj/DYWngRzXKP8NhaeBHNco/o1pEFJM3yj+jWkQUkzfKP+YeEr73N8o/5h4Svvc3yj+J7lnXaDnKP4nuWddoOco/pDUGnRA6yj+kNQadEDrKPwrcupunOso/Cty6m6c6yj+OBBps6jzKP44EGmzqPMo/u5f75ChAyj+7l/vkKEDKP2/YtiizQco/b9i2KLNByj/8+4wLB0LKP/z7jAsHQso/3lSkwthCyj/eVKTC2ELKP9EeL6TDQ8o/0R4vpMNDyj+1UgjkEkfKP7VSCOQSR8o/Hw99dytLyj8fD313K0vKP5cBZylZTso/lwFnKVlOyj95Wn7gKk/KP3lafuAqT8o/zY+/tKhPyj/Nj7+0qE/KP7Do1mt6UMo/sOjWa3pQyj8IWRZM/FHKPwhZFkz8Uco/eNUD5iFTyj941QPmIVPKPzyHMlTFVMo/PIcyVMVUyj908ExokljKP3TwTGiSWMo/HVvPEI5Zyj8dW88QjlnKP78qFyr/Wso/vyoXKv9ayj+hgy7h0FvKP6GDLuHQW8o/ti+gF+5cyj+2L6AX7lzKP4F8CRUcXso/gXwJFRxeyj9Y/+cwX17KP1j/5zBfXso/kGgCRSxiyj+QaAJFLGLKPzI4Sl6dY8o/MjhKXp1jyj9H5LuUumTKP0fku5S6ZMo/1IIXfQVpyj/Ughd9BWnKPxdH5SZqaco/F0flJmppyj/XvRWJCWrKP9e9FYkJaso/qaW5FcJqyj+ppbkVwmrKP5xvRPesa8o/nG9E96xryj/ac5maBG/KP9pzmZoEb8o/W2H6XkNwyj9bYfpeQ3DKP7Bx/bs+c8o/sHH9uz5zyj/jxFc7inPKP+PEVzuKc8o/AkcCDTZ1yj8CRwINNnXKP10XfnA+dco/XRd+cD51yj/knxnEB3bKP+SfGcQHdso//+bFia92yj//5sWJr3bKP6osCrsoeso/qiwKuyh6yj9IwVPIlXrKP0jBU8iVeso/4LpiRnh7yj/gumJGeHvKP/mh0oiZfco/+aHSiJl9yj/UX6+w4H7KP9Rfr7Dgfso/E2QEVDiCyj8TZARUOILKP2H+Cpkrg8o/Yf4KmSuDyj/59xkXDoTKP/n3GRcOhMo/pp2ayw2Gyj+mnZrLDYbKP5pC5zV2ico/mkLnNXaJyj8m4UIewY3KPybhQh7Bjco/IEYIjzaOyj8gRgiPNo7KP+ZXc4Bgjso/5ldzgGCOyj+F7LyNzY7KP4XsvI3Njso/whVQqKePyj/CFVCop4/KP9OGw9LAj8o/04bD0sCPyj/ThsPSwI/KP9OGw9LAj8o/nE6y1eWUyj+cTrLV5ZTKPyJS0y6mmco/IlLTLqaZyj9ENLqD2JnKP0Q0uoPYmco/RDS6g9iZyj9ENLqD2JnKPywoDMo0mso/LCgMyjSayj+Krgs/OJ/KP4quCz84n8o/YjHqWnufyj9iMepae5/KPzm0yHa+n8o/ObTIdr6fyj/iHksfuqDKP+IeSx+6oMo/AaH18GWiyj8BofXwZaLKPyzUmuYdp8o/LNSa5h2nyj9YjLrW3qfKP1iMutbep8o/H54lyAioyj8fniXICKjKPx+eJcgIqMo/H54lyAioyj9avcPt0LDKP1q9w+3QsMo/ETl9PV+zyj8ROX09X7PKPzJxqyAGuso/MnGrIAa6yj+i7Zi6K7vKP6LtmLoru8o/k1fnGJC9yj+TV+cYkL3KP1Bu2/eov8o/UG7b96i/yj+aIyu/DMbKP5ojK78Mxso/swqbAS7Iyj+zCpsBLsjKPwKAY8+ey8o/AoBjz57Lyj+K48Cr5c7KP4rjwKvlzso/+P9xwoTRyj/4/3HChNHKPzvEP2zp0co/O8Q/bOnRyj9rt11ortPKP2u3XWiu08o/H/gYrDjVyj8f+BisONXKP5UPQdXo1co/lQ9B1ejVyj9m9+RhodbKP2b35GGh1so/ZvfkYaHWyj9m9+RhodbKP3doWIy61so/d2hYjLrWyj+qu7ILBtfKP6q7sgsG18o/cM0d/S/Xyj9wzR39L9fKP4m0jT9R2co/ibSNP1HZyj+Tisba39nKP5OKxtrf2co/9tA+VvDbyj/20D5W8NvKP4T0FDlE3Mo/hPQUOUTcyj8LfbCMDd3KPwt9sIwN3co/YY2z6Qjgyj9hjbPpCODKP3PZ6Jyf4so/c9nonJ/iyj9z2eicn+LKP3PZ6Jyf4so/W8064/viyj9bzTrj++LKP8np6/ma5co/yenr+Zrlyj9WDcLc7uXKP1YNwtzu5co/pKfIIeLmyj+kp8gh4ubKP4YA4Niz58o/hgDg2LPnyj+5UzpY/+fKP7lTOlj/58o/d2ouNxjqyj93ai43GOrKPx5QNuUK78o/HlA25Qrvyj8pJm+Ame/KPykmb4CZ78o/Ios08Q7wyj8iizTxDvDKPz3S4La28Mo/PdLgtrbwyj9SflLt0/HKP1J+Uu3T8co/hdGsbB/yyj+F0axsH/LKPztypDMw8so/O3KkMzDyyj8ChA8lWvLKPwKEDyVa8so/gnFw6Zjzyj+CcXDpmPPKP+F86lil9Mo/4XzqWKX0yj/vjSEAOPbKP++NIQA49so/o87cQ8L3yj+jztxDwvfKP7M/UG7b98o/sz9Qbtv3yj/h0jHnGfvKP+HSMecZ+8o/mE7rNqj9yj+YTus2qP3KP9wSueAM/so/3BK54Az+yj/P3EPC9/7KP8/cQ8L3/so/DAbX3NH/yj8MBtfc0f/KP67VHvZCAcs/rtUe9kIByz9KCiyAKQPLP0oKLIApA8s/nj9tVKcDyz+eP21UpwPLP+zZc5maBMs/7NlzmZoEyz9SgCiYMQXLP1KAKJgxBcs/FjJXBtUGyz8WMlcG1QbLPyh+jLlrCcs/KH6MuWsJyz+NJEG4AgrLP40kQbgCCss/kV8/xAYLyz+RXz/EBgvLP9leC3pvDMs/2V4Lem8Myz+qRq8GKA3LP6pGrwYoDcs/ij+KOnMPyz+KP4o6cw/LP5QVw9UBEMs/lBXD1QEQyz/v5T45ChDLP+/lPjkKEMs/9dbAVgkWyz/11sBWCRbLP7zoK0gzFss/vOgrSDMWyz/s20lE+BfLP+zbSUT4F8s/cQSpFDsayz9xBKkUOxrLPyeloNtLGss/J6Wg20sayz8K2Xkbmx3LPwrZeRubHcs/aeTziqceyz9p5POKpx7LP/pCyHn/H8s/+kLIef8fyz+hTQ6fdCLLP6FNDp90Iss/06BoHsAiyz/ToGgewCLLP8QKt3wkJcs/xAq3fCQlyz++Sj52FyjLP75KPnYXKMs/0/avrDQpyz/T9q+sNCnLP3h8e9egL8s/eHx716Avyz98t3njpDDLP3y3eeOkMMs/b4EExY8xyz9vgQTFjzHLP2+BBMWPMcs/b4EExY8xyz+2gNB6+DLLP7aA0Hr4Mss/wVYJFoczyz/BVgkWhzPLP3I3iNaKNss/cjeI1oo2yz8cfcwHBDrLPxx9zAcEOss/hjlBmxw+yz+GOUGbHD7LP2iSWFLuPss/aJJYUu4+yz/U00fgDz/LP9TTR+APP8s/2A5G7BNAyz/YDkbsE0DLPwtioGtfQMs/C2Kga19Ayz/BApgycEDLP8ECmDJwQMs/MH+FzJVByz8wf4XMlUHLP9npB3WRQss/2ekHdZFCyz9nDd5X5ULLP2cN3lflQss/28TJ/Q5Fyz/bxMn9DkXLP9Qpj26ERcs/1CmPboRFyz8QzqeOVUrLPxDOp45VSss/64uEtpxLyz/ri4S2nEvLP0DBxYoaTMs/QMHFihpMyz8RqWkX00zLPxGpaRfTTMs/IhrdQexMyz8iGt1B7EzLP7EYda29T8s/sRh1rb1Pyz+vk/qytFPLP6+T+rK0U8s/ZTTyecVTyz9lNPJ5xVPLP1+Zt+o6VMs/X5m36jpUyz9wCisVVFTLP3AKKxVUVMs/wt8vZktWyz/C3y9mS1bLPyeG5GTiVss/J4bkZOJWyz/dJtwr81bLP90m3CvzVss/8tJNYhBYyz/y0k1iEFjLP3lb6bXZWMs/eVvptdlYyz+OB1vs9lnLP44HW+z2Wcs/H2Yv205byz8fZi/bTlvLPzDXogVoW8s/MNeiBWhbyz+uZMdGIF7LP65kx0YgXss/g4dp39xfyz+Dh2nf3F/LP+vjoe9uZcs/6+Oh725lyz8S3EjZImnLPxLcSNkiacs/2sh1U8pryz/ayHVTymvLP9MtO8Q/bMs/0y07xD9syz/KMsSxLm7LP8oyxLEubss/Z5jaUgd5yz9nmNpSB3nLP1gCKbFre8s/WAIpsWt7yz9pc5zbhHvLP2lznNuEe8s/Wd3qOel9yz9Z3eo56X3LPyDvVSsTfss/IO9VKxN+yz+xTSoaa3/LP7FNKhprf8s/PBHEeTiByz88EcR5OIHLP/2H9NvXgcs//Yf029eByz/le0YiNILLP+V7RiI0gss/TP28qUiFyz9M/bypSIXLP69DNSVZh8s/r0M1JVmHyz9HPUSjO4jLP0c9RKM7iMs/QKIJFLGIyz9AogkUsYjLPw8qcR3jiss/DypxHeOKyz9A+FCiJY/LP0D4UKIlj8s/6WLTSiGQyz/pYtNKIZDLP4syG2SSkcs/izIbZJKRyz8uAmN9A5PLPy4CY30Dk8s//InKhjWVyz/8icqGNZXLP5SD2QQYlss/lIPZBBiWyz8RNjy9UpbLPxE2PL1Slss/X9BCAkaXyz9f0EICRpfLP5IjnYGRl8s/kiOdgZGXyz9qpnud1JfLP2qme53Ul8s/ehfvx+2Xyz96F+/H7ZfLPx3nNuFemcs/Hec24V6Zyz+JKCZvgJnLP4koJm+Amcs/uRtEa0Wbyz+5G0RrRZvLP8TMPo9Rnss/xMw+j1Geyz8SZ0XURJ/LPxJnRdREn8s/f4P26uOhyz9/g/bq46HLP9wuNNdppMs/3C4012mkyz8ZWMfxQ6XLPxlYx/FDpcs/BYcXRKSmyz8FhxdEpKbLP6KW5lYIq8s/opbmVgiryz9SnKOOjqvLP1Kco46Oq8s/vt2SHLCryz++3ZIcsKvLP8IYkSi0rMs/whiRKLSsyz/UZMbbSq/LP9RkxttKr8s/LzVCP1Ovyz8vNUI/U6/LP5gW9UnusMs/mBb1Se6wyz9stBzoobbLP2y0HOihtss/vokhOZm4yz++iSE5mbjLPzShSWJJucs/NKFJYkm5yz/qQUEpWrnLP+pBQSlaucs/HJWbqKW5yz8clZuopbnLPw9fJoqQuss/D18mipC6yz/s98Q6Vb7LP+z3xDpVvss/7PfEOlW+yz/s98Q6Vb7LP0ijAifbwMs/SKMCJ9vAyz/FVWXfFcHLP8VVZd8Vwcs/bsDnhxHCyz9uwOeHEcLLPyEBo8ubw8s/IQGjy5vDyz/RBmADIsTLP9EGYAMixMs/1UFeDybFyz/VQV4PJsXLP5xTyQBQxcs/nFPJAFDFyz+nBMQkXMjLP6cExCRcyMs/oWmJldHIyz+haYmV0cjLPwsm/ijqzMs/Cyb+KOrMyz+UiVsFMdDLP5SJWwUx0Ms/YhHDDmPSyz9iEcMOY9LLP3OCNjl80ss/c4I2OXzSyz+jdVQ1QdTLP6N1VDVB1Ms/BrzMsFHWyz8GvMywUdbLP/3AVZ5A2Ms//cBVnkDYyz/CTUaVYdzLP8JNRpVh3Ms/vY3NjlTfyz+9jc2OVN/LP2ozTkNU4cs/ajNOQ1Thyz+Xxi+8kuTLP5fGL7yS5Ms/ERlW8Ubmyz8RGVbxRubLP+Cgvfp46Ms/4KC9+njoyz+Ppnoy/+jLP4+mejL/6Ms/VrjlIynpyz9WuOUjKenLPwxZ3eo56cs/DFnd6jnpyz8GvqJbr+nLPwa+oluv6cs/n5JzYg/tyz+fknNiD+3LP1Ou8C4X8cs/U67wLhfxyz+Xcr7Ye/HLP5dyvth78cs/wcqhRbbzyz/ByqFFtvPLP01p/S0B+Ms/TWn9LQH4yz/HuyNjtfnLP8e7I2O1+cs/9E4F3PP8yz/0TgXc8/zLP3l3ZKw2/8s/eXdkrDb/yz8vGFxzR//LPy8YXHNH/8s/N45Yi08BzD83jliLTwHMP5Je1O5XAcw/kl7U7lcBzD+FKF/QQgLMP4UoX9BCAsw/SrVPx2MGzD9KtU/HYwbMP8GnOXmRCcw/wac5eZEJzD/Bpzl5kQnMP8GnOXmRCcw/QpWaPdAKzD9ClZo90ArMP1dBDHTtC8w/V0EMdO0LzD8sZK4Mqg3MPyxkrgyqDcw/xF29iowOzD/EXb2KjA7MP5VFYRdFD8w/lUVhF0UPzD+Gr691qRHMP4avr3WpEcw/kIXoEDgSzD+QhegQOBLMPxFzSdV2E8w/EXNJ1XYTzD+A7zZvnBTMP4DvNm+cFMw//aGZJ9cUzD/9oZkn1xTMP1ytE5fjFcw/XK0Tl+MVzD/Azk2bcRrMP8DOTZtxGsw/5usy/KcbzD/m6zL8pxvMP0uS5/o+HMw/S5Ln+j4czD+mYmNeRxzMP6ZiY15HHMw/YD5ZMVwdzD9gPlkxXB3MP8XkDTDzHcw/xeQNMPMdzD9zZVBtcCLMP3NlUG1wIsw/priq7LsizD+muKrsuyLMP46s/DIYI8w/jqz8MhgjzD8xfERMiSTMPzF8REyJJMw/Q8h5/x8nzD9DyHn/HyfMP4DxDBr6J8w/gPEMGvonzD+VnX5QFynMP5WdflAXKcw/+kMzT64pzD/6QzNPrinMP/So+L8jKsw/9Kj4vyMqzD+SPULNkCrMP5I9Qs2QKsw/ycuaWOArzD/Jy5pY4CvMP5MYBFYOLcw/kxgEVg4tzD8OayqLwi7MPw5rKovCLsw/CKuxhLUxzD8Iq7GEtTHMPxkcJa/OMcw/GRwlr84xzD9ntiv0wTLMP2e2K/TBMsw/Q3QIHAk0zD9DdAgcCTTMPxr35jdMNMw/GvfmN0w0zD/K/KNv0jTMP8r8o2/SNMw/nL8JhQg4zD+cvwmFCDjMP3UdqinJOsw/dR2qKck6zD9vgm+aPjvMP2+Cb5o+O8w/72/QXn08zD/vb9BefTzMP6UQyCWOPMw/pRDIJY48zD97M2q+Sj7MP3szar5KPsw/DJI+raI/zD8Mkj6toj/MP9OjqZ7MP8w/06Opnsw/zD8QzTy5pkDMPxDNPLmmQMw/fA4sR8hAzD98DixHyEDMP1ORCmMLQcw/U5EKYwtBzD8Dl8eakUHMPwOXx5qRQcw/3lSkwthCzD/eVKTC2ELMPxke+1ksRcw/GR77WSxFzD8Sg8DKoUXMPxKDwMqhRcw/gv+tZMdGzD+C/61kx0bMPzigpSvYRsw/OKClK9hGzD9T51Hxf0fMP1PnUfF/R8w/qByTxf1HzD+oHJPF/UfMP3rf+NozS8w/et/42jNLzD87Vik900vMPztWKT3TS8w/6lvmdFlMzD/qW+Z0WUzMP4drtYe9UMw/h2u1h71QzD+m7V9ZaVLMP6btX1lpUsw/06V/SSpTzD/TpX9JKlPMP2AfnbryWcw/YB+duvJZzD+Tcvc5PlrMP5Ny9zk+Wsw/OX09X7NczD85fT1fs1zMP4cXRKSmXcw/hxdEpKZdzD89uDtrt13MPz24O2u3Xcw/euHOhZFezD964c6FkV7MP0vJchJKX8w/S8lyEkpfzD+XAz3UtmHMP5cDPdS2Ycw/I6KYvAFmzD8jopi8AWbMPxZsI57sZsw/FmwjnuxmzD8apyGq8GfMPxqnIarwZ8w/VHB4QURqzD9UcHhBRGrMP5GZC1wea8w/kZkLXB5rzD8YIqev52vMPxgip6/na8w/Pj+MEB5tzD8+P4wQHm3MP51KBoAqbsw/nUoGgCpuzD86WtWSjnLMPzpa1ZKOcsw/u0c2V81zzD+7RzZXzXPMPxfzc0NTdsw/F/NzQ1N2zD/G+DB72XbMP8b4MHvZdsw/MxXikXh5zD8zFeKReHnMP9Rfr7Dgfsw/1F+vsOB+zD8plfCEXn/MPymV8IRef8w/uJOI8C+CzD+4k4jwL4LMP7H4TWGlgsw/sfhNYaWCzD/yXN+Hg4TMP/Jc34eDhMw/hLuzdtuFzD+Eu7N224XMP2fvjLYqicw/Z++MtiqJzD9JSKRt/InMP0lIpG38icw/hnE3iNaKzD+GcTeI1orMPzZ39L9ci8w/Nnf0v1yLzD+EEfsEUIzMP4QR+wRQjMw/up9TkJ+NzD+6n1OQn43MPzdStkjajcw/N1K2SNqNzD9qpRDIJY7MP2qlEMgljsw/td/aiZKQzD+139qJkpDMP2uA0lCjkMw/a4DSUKOQzD/QJodPOpHMP9Amh086kcw/XkpdMo6RzD9eSl0yjpHMPxGLGHYYk8w/EYsYdhiTzD8EVaNXA5TMPwRVo1cDlMw/Y2Adxw+VzD9jYB3HD5XMPzvj++JSlcw/O+P74lKVzD8UQZyHE5jMPxRBnIcTmMw//DTuzW+YzD/8NO7Nb5jMP+Boxw2/m8w/4GjHDb+bzD+g3/dvXpzMP6Df929enMw/qrUwC+2czD+qtTAL7ZzMPxb3H5kOncw/FvcfmQ6dzD/4TzdQ4J3MP/hPN1Dgncw/AyZw626ezD8DJnDrbp7MP0jF/x1Rocw/SMX/HVGhzD/qlEc3wqLMP+qURzfCosw/YKxvYHKjzD9grG9gcqPMP6irOxbbpMw/qKs7FtukzD9/LhoyHqXMP38uGjIepcw/0QMfgxWnzD/RAx+DFafMP+J0kq0up8w/4nSSrS6nzD+FRNrGn6jMP4VE2safqMw/jxoTYi6pzD+PGhNiLqnMP16iemtgq8w/XqJ6a2CrzD/UuaKUEKzMP9S5opQQrMw/lDDT9q+szD+UMNP2r6zMP+8AT1q4rMw/7wBPWriszD+mfAiqRq/MP6Z8CKpGr8w/e5+qQgOxzD97n6pCA7HMP6G8j6M5ssw/obyPozmyzD+6o//lWrTMP7qj/+VatMw/Yw6Cjla1zD9jDoKOVrXMPy1b64uEtsw/LVvri4S2zD9uv3yyYrjMP26/fLJiuMw/HsU56ui4zD8exTnq6LjMPw4viEhNu8w/Di+ISE27zD/0wp0LI73MP/TCnQsjvcw/Ql2kUBa+zD9CXaRQFr7MPzUnLzIBv8w/NScvMgG/zD+azeMwmL/MP5rN4zCYv8w/ngjiPJzAzD+eCOI8nMDMP/0TXKyowcw//RNcrKjBzD9MiSR6GcXMP0yJJHoZxcw/E5uPa0PFzD8Tm49rQ8XMP6G+ZU6Xxcw/ob5lTpfFzD9ypgnbT8bMP3KmCdtPxsw/EDtT6LzGzD8QO1PovMbMPzIdOj3vxsw/Mh06Pe/GzD+RKLSs+8fMP5EotKz7x8w/hPI+jubIzD+E8j6O5sjMP7Q7pBgg0cw/tDukGCDRzD/CTNu/stLMP8JM27+y0sw/BhGpaRfTzD8GEalpF9PMP6Sl8naE08w/pKXydoTTzD9lHCPZI9TMP2UcI9kj1Mw/TRB1H4DUzD9NEHUfgNTMPzo/xXHg1cw/Oj/FceDVzD99A5MbRdbMP30DkxtF1sw/+gs9YvTczD/6Cz1i9NzMPxzuI7cm3cw/HO4jtybdzD9M4UGz697MP0zhQbPr3sw/DTM0ngjizD8NMzSeCOLMPy213m+048w/LbXeb7TjzD9Zbf5fdeTMP1lt/l915Mw/pKfIIeLmzD+kp8gh4ubMP2yU9ZuJ6cw/bJT1m4npzD/pRlhUxOnMP+lGWFTE6cw/n+dPG9XpzD+f508b1enMP4V7Zd6q68w/hXtl3qrrzD8SnzvB/uvMPxKfO8H+68w/UwPN59ztzD9TA83n3O3MP7CuCtRi8Mw/sK4K1GLwzD9wJTs2AvHMP3AlOzYC8cw/xFp8CoDxzD/EWnwKgPHMP2gFhqxu9cw/aAWGrG71zD9iaksd5PXMP2JqSx3k9cw/lL2lnC/2zD+UvaWcL/bMPw4QzNHj98w/DhDM0eP3zD/VITfDDfjMP9UhN8MN+Mw/QWMmUS/4zD9BYyZRL/jMP0s5X+y9+Mw/Szlf7L34zD/ZXDXPEfnMP9lcNc8R+cw/HSEDeXb5zD8dIQN5dvnMP8nGgy12+8w/ycaDLXb7zD+LGHYYk/7MP4sYdhiT/sw/j1N0JJf/zD+PU3Qkl//MP9MXQs77/8w/0xdCzvv/zD/DgZAsYALNP8OBkCxgAs0/onprYKsEzT+iemtgqwTNP9XNxd/2BM0/1c3F3/YEzT9xAtNp3QbNP3EC02ndBs0/VDasqSwKzT9UNqypLArNPwQ8aeGyCs0/BDxp4bIKzT80L4fddwzNPzQvh913DM0/7gp9sIwNzT/uCn2wjA3NP/578NqlDc0//nvw2qUNzT9ZTGw+rg3NP1lMbD6uDc0/f2lRn+QOzT9/aVGf5A7NPzUKSWb1Ds0/NQpJZvUOzT+hSzj0Fg/NP6FLOPQWD80/eqnYmNcRzT96qdiY1xHNP71tpkI8Es0/vW2mQjwSzT9zDp4JTRLNP3MOnglNEs0/2bRSCOQSzT/ZtFII5BLNP8GopE5AE80/waikTkATzT8t6pPcYRPNPy3qk9xhE80/v0hoy7kUzT+/SGjLuRTNP4mV0cjnFc0/iZXRyOcVzT/XL9gN2xbNP9cv2A3bFs0/22rWGd8XzT/batYZ3xfNP6J8QQsJGM0/onxBCwkYzT8S+S6lLhnNPxL5LqUuGc0/KIBiZMkczT8ogGJkyRzNP5TBUfLqHM0/lMFR8uoczT92GmmpvB3NP3Yaaam8Hc0/vRk1XyUfzT+9GTVfJR/NPzrMlxdgH80/OsyXF2AfzT9X7gVmhSLNP1fuBWaFIs0/V+4FZoUizT9X7gVmhSLNPwVvSKMCJ80/BW9IowInzT9jesISDyjNP2N6whIPKM0/E4B/SpUozT8TgH9KlSjNP8kgdxGmKM0/ySB3EaYozT9HrptSXivNP0eum1JeK80/kuhlFMstzT+S6GUUyy3NP7TKTGn9Lc0/tMpMaf0tzT/dIjDWNzDNP90iMNY3MM0/PC6qRUQxzT88LqpFRDHNP9/98V61Ms0/3/3xXrUyzT+BzTl4JjTNP4HNOXgmNM0/z2dAvRk1zT/PZ0C9GTXNPzbptkQuOM0/Num2RC44zT8TglX18jvNPxOCVfXyO80/k2+2uTE9zT+Tb7a5MT3NP4Y5QZscPs0/hjlBmxw+zT8vpMNDGD/NPy+kw0MYP80/UAEwnkFDzT9QATCeQUPNP/YLdsO2Rc0/9gt2w7ZFzT9iTWVR2EXNP2JNZVHYRc0/2GSNeohGzT/YZI16iEbNP0WBPpEnSc0/RYE+kSdJzT8hPxu5bkrNPyE/G7luSs0/L1BSYAFMzT8vUFJgAUzNP7bY7bPKTM0/ttjts8pMzT8LDi+ISE3NPwsOL4hITc0/8wGBzqRNzT/zAYHOpE3NPwRz9Pi9Tc0/BHP0+L1NzT+ZDMfzGVDNP5kMx/MZUM0/M+GX+nlTzT8z4Zf6eVPNP60zvi8uVc0/rTO+Ly5VzT+1qbpHNlfNP7Wpukc2V80/MVwdAHFXzT8xXB0AcVfNP64OgLirV80/rg6AuKtXzT9SuYlamlvNP1K5iVqaW80/2UElrmNczT/ZQSWuY1zNP2hAvRk1X80/aEC9GTVfzT8vUigLX1/NPy9SKAtfX80/F0Z6UbtfzT8XRnpRu1/NP/MDV3kCYc0/8wNXeQJhzT86AyMva2LNPzoDIy9rYs0/Lc2tEFZjzT8tza0QVmPNP7vwg/OpY80/u/CD86ljzT9Zhc0AF2TNP1mFzQAXZM0/hj3t8NdkzT+GPe3w12TNPxU8hVypZ80/FTyFXKlnzT8VPIVcqWfNPxU8hVypZ80/34juWddozT/fiO5Z12jNP5lk5Czsac0/mWTkLOxpzT82dLM/UG7NPzZ0sz9Qbs0/648wDFhyzT/rjzAMWHLNP3IYzF8hc80/chjMXyFzzT/eWbvtQnPNP95Zu+1Cc80/M2q+Sj52zT8zar5KPnbNP8JoVrYPec0/wmhWtg95zT9HkbWGUnvNP0eRtYZSe80/BaipZWt9zT8FqKlla33NP76DnziAfs0/voOfOIB+zT9ljuVd9YDNP2WO5V31gM0/l+E/3UCBzT+X4T/dQIHNP6hSswdagc0/qFKzB1qBzT8ipdk8DoPNPyKl2TwOg80/O4xJfy+FzT87jEl/L4XNPwEZOnZQic0/ARk6dlCJzT9IGAYsuYrNP0gYBiy5is0/SfPHtDaNzT9J88e0No3NP0NYjSWsjc0/Q1iNJayNzT+sOUAwR4/NP6w5QDBHj80/rDlAMEePzT+sOUAwR4/NP0rOiT20j80/Ss6JPbSPzT9ssHCS5o/NP2ywcJLmj80/7niT36KTzT/ueJPfopPNP7nF/NzQlM0/ucX83NCUzT/f4uE9B5bNP9/i4T0Hls0/vtu8cVKYzT++27xxUpjNP4Atr1xvm80/gC2vXG+bzT/q6SPwh5/NP+rpI/CHn80/IXh8e9egzT8heHx716DNPwlszsEzoc0/CWzOwTOhzT8YfQVpxqLNPxh9BWnGos0/thFPdjOjzT+2EU92M6PNP1WmmIOgo80/VaaYg6CjzT8wZHWr56TNPzBkdavnpM0/iq92FOeozT+Kr3YU56jNP5sg6j4Aqc0/myDqPgCpzT898DFYcarNPz3wMVhxqs0/FXMQdLSqzT8VcxB0tKrNP4G0/wHWqs0/gbT/AdaqzT8Zrg6AuKvNPxmuDoC4q80/mZtvRPeszT+Zm29E96zNP6oM424Qrc0/qgzjbhCtzT8DfSJPkq7NPwN9Ik+Srs0/pUxqaAOwzT+lTGpoA7DNPz4hO29js80/PiE7b2OzzT+rPeyFArbNP6s97IUCts0/thMlIZG2zT+2EyUhkbbNP+LLRBFSt80/4stEEVK3zT+6TiMtlbfNP7pOIy2Vt80/cyoZAKq4zT9zKhkAqrjNPzjcR25Nus0/ONxHbk26zT+8BKc+kLzNP7wEpz6QvM0/cqWeBaG8zT9ypZ4FobzNP3OAYI4ev80/c4Bgjh6/zT8RkC+hgsPNPxGQL6GCw80/cXZrmQzHzT9xdmuZDMfNP7fwvFRszM0/t/C8VGzMzT9d+wJ64c7NP137Anrhzs0/DAHAsWfPzT8MAcCxZ8/NP5fEWRE10c0/l8RZETXRzT9YO4pz1NHNP1g7inPU0c0/bef7qfHSzT9t5/up8dLNPybD8XwG1M0/JsPxfAbUzT+K5CuBlNjNP4rkK4GU2M0/Lo81I4PczT8ujzUjg9zNP6tBmNu93M0/q0GY273czT+5Us+CUN7NP7lSz4JQ3s0/91YkJqjhzT/3ViQmqOHNP8KjjSPW4s0/wqONI9bizT/cZb/udOfNP9xlv+50580/6nb2lQfpzT/qdvaVB+nNP705XKs97M0/vTlcqz3szT+cMjffiO7NP5wyN9+I7s0/7gc8MIDwzT/uBzwwgPDNP+hsAaH18M0/6GwBofXwzT+yD7IsmPjNP7IPsiyY+M0/nN7F+3H7zT+c3sX7cfvNP0vkgjP4+80/S+SCM/j7zT/rU47J4v7NP+tTjsni/s0/H4Kq0asBzj8fgqrRqwHOP74W9N4YAs4/vhb03hgCzj+yu0BJgQXOP7K7QEmBBc4/YcH9gAcGzj9hwf2ABwbOP95zYDlCBs4/3nNgOUIGzj85RNycSgbOPzlE3JxKBs4/8x/Sb18Hzj/zH9JvXwfOP637x0J0CM4/rfvHQnQIzj/ymld1VgvOP/KaV3VWC84/CoLHt3cNzj8Kgse3dw3OP3EDPj+MEM4/cQM+P4wQzj+4Agr19BHOP7gCCvX0Ec4/eXk6V5QSzj95eTpXlBLOP+j1J/G5E84/6PUn8bkTzj/bv7LSpBTOP9u/stKkFM4/kjtsIjMXzj+SO2wiMxfOP12I1R9hGM4/XYjVH2EYzj9l/tE3aRrOP2X+0TdpGs4/FASPb+8azj8UBI9v7xrOP4BFfv0QG84/gEV+/RAbzj9BvK5fsBvOP0G8rl+wG84/US0iiskbzj9RLSKKyRvOP87fhEIEHM4/zt+EQgQczj/nxvSEJR7OP+fG9IQlHs4/uK6YEd4ezj+4rpgR3h7OP3KKjuTyH84/coqO5PIfzj/ONczQeCLOP841zNB4Is4/XFmis8wizj9cWaKzzCLOPxL6mXrdIs4/EvqZet0izj9kz57L1CTOP2TPnsvUJM4/9S1zuiwmzj/1LXO6LCbOPxWL3xRWKs4/FYvfFFYqzj/FkJxM3CrOP8WQnEzcKs4/HQHcLF4szj8dAdwsXizOP9Oh0/NuLM4/06HT824szj8H0O/7Ny/OPwfQ7/s3L84/RE/KpIY2zj9ET8qkhjbOP7TLtz6sN84/tMu3Pqw3zj8eiCzSxDvOPx6ILNLEO84/B3x+GCE8zj8HfH4YITzOPwDhQ4mWPM4/AOFDiZY8zj/ZPuQtVz/OP9k+5C1XP84/WixF8pVAzj9aLEXylUDOPyIZcmw9Q84/IhlybD1Dzj9O0ZFc/kPOP07RkVz+Q84/1VktsMdEzj/VWS2wx0TOP5NwIY/gRs4/k3Ahj+BGzj8YmYBfI0nOPxiZgF8jSc4/AI3SpX9Jzj8AjdKlf0nOPwtjC0EOSs4/C2MLQQ5Kzj9PAptz8EzOP08Cm3PwTM4/Ieo+AKlNzj8h6j4AqU3OP2SuDKoNTs4/ZK4Mqg1Ozj+XAWcpWU7OP5cBZylZTs4/UrgehetRzj9SuB6F61HOP23/ykqTUs4/bf/KSpNSzj9gyVUsflPOP2DJVSx+U84/v9TPm4pUzj+/1M+bilTOP5kNMsnIWc4/mQ0yychZzj9PrimQ2VnOP0+uKZDZWc4/VyQmqOFbzj9XJCao4VvOP04pr5XQXc4/TimvldBdzj82HQHcLF7OPzYdAdwsXs4/ke18PzVezj+R7Xw/NV7OP3rhzoWRXs4/euHOhZFezj8IBaVo5V7OPwgFpWjlXs4/OPjCZKpgzj84+MJkqmDOP0lpNo/DYM4/SWk2j8Ngzj8A5e/eUWPOPwDl795RY84/bCbfbHNjzj9sJt9sc2POP9/dyhKdZc4/393KEp1lzj8TDOcaZmjOPxMM5xpmaM4/Rl9BmrFozj9GX0GasWjOPxGsqpffac4/Eayql99pzj+POc/Yl2zOP485z9iXbM4/DycwndZtzj8PJzCd1m3OP5AUkWEVb84/kBSRYRVvzj/1ukVgrG/OP/W6RWCsb84/2e4eoPtyzj/Z7h6g+3LOP46PFmcMc84/jo8WZwxzzj97vma5bHTOP3u+ZrlsdM4/6zpUU5J1zj/rOlRTknXOP3LD76Zbds4/csPvplt2zj/1ZtR8lXzOP/Vm1HyVfM4/KLou/OB8zj8oui784HzOP5txGqIKf84/m3Eaogp/zj8C85ApH4LOPwLzkCkfgs4/2nVvRWKCzj/adW9FYoLOP2eZRSi2gs4/Z5lFKLaCzj8R34lZL4bOPxHfiVkvhs4/Ksb5m1CIzj8qxvmbUIjOP5sdqb7zi84/mx2pvvOLzj+Vgm4vaYzOP5WCbi9pjM4/hey8jc2Ozj+F7LyNzY7OP2dF1ESfj84/Z0XURJ+Pzj+yf54GDJLOP7J/ngYMks4/xysQPSmTzj/HKxA9KZPOP4vdPqvMlM4/i90+q8yUzj9nmxvTE5bOP2ebG9MTls4/WmWmtP6Wzj9aZaa0/pbOP1tAaD18mc4/W0BoPXyZzj/iyAORRZrOP+LIA5FFms4/NJ4I4jyczj80ngjiPJzOP1KbOLnfoc4/Ups4ud+hzj+F7pI4K6LOP4Xukjgros4/+wW7Yduizj/7Bbth26LOP+tvCcA/pc4/628JwD+lzj9RFr6+1qXOP1EWvr7Wpc4/djOjHw2nzj92M6MfDafOP4ekFkomp84/h6QWSianzj8EV3kCYafOPwRXeQJhp84/ouvCD86nzj+i68IPzqfOP7eXNEbrqM4/t5c0Ruuozj8j2SPUDKnOPyPZI9QMqc4/9MDHYMWpzj/0wMdgxanOP0n2CDVDqs4/SfYINUOqzj+vd3+8V63OP693f7xXrc4/S6yMRj6vzj9LrIxGPq/OP7FSQUXVr84/sVJBRdWvzj+u8gTCTrHOP67yBMJOsc4/4UVfQZqxzj/hRV9BmrHOP+i7W1mis84/6LtbWaKzzj9z1TxH5LvOP3PVPEfku84/FqWEYFW9zj8WpYRgVb3OP/j9mxcnvs4/+P2bFye+zj9MM93rpL7OP0wz3eukvs4/JLa7B+i+zj8ktrsH6L7OP6s+V1uxv84/qz5XW7G/zj9cH9YbtcLOP1wf1hu1ws4/mUhpNo/Dzj+ZSGk2j8POP1MkXwmkxM4/UyRfCaTEzj8Ayt+9o8bOPwDK372jxs4/b0bNV8nHzj9vRs1XycfOP1g6H54lyM4/WDofniXIzj/rc7UV+8vOP+tztRX7y84/jUP9LmzNzj+NQ/0ubM3OP41D/S5szc4/jUP9LmzNzj+HqMKf4c3OP4eowp/hzc4/T5XvGYnQzj9Ple8ZidDOP4y+gjRj0c4/jL6CNGPRzj87xD9s6dHOPzvEP2zp0c4/TDWzlgLSzj9MNbOWAtLOPzyfAfVm1M4/PJ8B9WbUzj/+8PPfg9fOP/7w89+D184/Mh8Q6Ezazj8yHxDoTNrOP8BC5sqg2s4/wELmyqDazj889UiD29rOPzz1SIPb2s4/YhIu5BHczj9iEi7kEdzOPwTidf2C3c4/BOJ1/YLdzj+gFoOHad/OP6AWg4dp384/gm+aPjvgzj+Cb5o+O+DOP9REn48y4s4/1ESfjzLizj/S5GIMrOPOP9LkYgys484/mPbN/dXjzj+Y9s391ePOPwhzu5f75M4/CHO7l/vkzj/oa5bLRufOP+hrlstG584/PKHXn8Tnzj88odefxOfOP1fog2Vs6M4/V+iDZWzozj/UmuYdp+jOP9Sa5h2n6M4/B+5AnfLozj8H7kCd8ujOP5QRF4BG6c4/lBEXgEbpzj9ViEfi5enOP1WIR+Ll6c4/gLvs153uzj+Au+zXne7OPxi1+1WA784/GLX7VYDvzj9wJTs2AvHOP3AlOzYC8c4/xFp8CoDxzj/EWnwKgPHOP/ESnPpA8s4/8RKc+kDyzj8S9YJPc/LOPxL1gk9z8s4/DFpIwOjyzj8MWkjA6PLOP8L6P4f58s4/wvo/h/nyzj/GNT6T/fPOP8Y1PpP9884/xjU+k/3zzj/GNT6T/fPOPx6mfXN/9c4/HqZ9c3/1zj8vF/GdmPXOPy8X8Z2Y9c4/iudsAaH1zj+K52wBofXOPzeN7bWg984/N43ttaD3zj8fgT/8/PfOPx+BP/z8984/lphnJa34zj+WmGclrfjOP090XfjB+c4/T3Rd+MH5zj/P3EPC9/7OP8/cQ8L3/s4/uoYZGk8Ezz+6hhkaTwTPP0EPtW0YBc8/QQ+1bRgFzz/ZCMTr+gXPP9kIxOv6Bc8/qJAr9SwIzz+okCv1LAjPPx6oUx7dCM8/HqhTHt0Izz+cNXhflQvPP5w1eF+VC88/j/8CQYAMzz+P/wJBgAzPPwyyZfm6DM8/DLJl+boMzz/h1AeSdw7PP+HUB5J3Ds8/oUs49BYPzz+hSzj0Fg/PP+/lPjkKEM8/7+U+OQoQzz99CRUcXhDPP30JFRxeEM8/ujKoNjgRzz+6Mqg2OBHPPzSFzmvsEs8/NIXOa+wSzz8LCK2HLxPPPwsIrYcvE88/Ft7lIr4Tzz8W3uUivhPPP1MHeT2YFM8/Uwd5PZgUzz+QMAxYchXPP5AwDFhyFc8/V0J3SZwVzz9XQndJnBXPPyxlGeJYF88/LGUZ4lgXzz9Rgv5CjxjPP1GC/kKPGM8/rFJ6ppcYzz+sUnqmlxjPP6xSeqaXGM8/rFJ6ppcYzz+7Y7FNKhrPP7tjsU0qGs8/tMh2vp8azz+0yHa+nxrPP/UsCOV9HM8/9SwI5X0czz98taM4Rx3PP3y1ozhHHc8/Mlab/1cdzz8yVpv/Vx3PPwyP/SyWIs8/DI/9LJYizz+DpiVWRiPPP4OmJVZGI88/pIgMq3gjzz+kiAyreCPPP4fhI2JKJM8/h+EjYkokzz8UBfpEniTPPxQF+kSeJM8/oijQJ/Ikzz+iKNAn8iTPPzv9oC5SKM8/O/2gLlIozz9MbhRZayjPP0xuFFlrKM8/6wJeZtgozz/rAl5m2CjPP1TkEHFzKs8/VOQQcXMqzz8xfa8hOC7PPzF9ryE4Ls8/A0AVN24xzz8DQBU3bjHPP8FWCRaHM88/wVYJFoczzz+n6h7ZXDXPP6fqHtlcNc8/06I+yR02zz/Toj7JHTbPP3wNwXEZN88/fA3BcRk3zz+wO9154jnPP7A73XniOc8/D0dX6e46zz8PR1fp7jrPP4mZfR6jPM8/iZl9HqM8zz98YwgAjj3PP3xjCACOPc8/fGMIAI49zz98YwgAjj3PPwcnol9bP88/ByeiX1s/zz/fqYB7nj/PP9+pgHueP88/Im5OJQNAzz8ibk4lA0DPPyJuTiUDQM8/Im5OJQNAzz/PE8/ZAkLPP88Tz9kCQs8/bagY529Czz9tqBjnb0LPP7Fs5pDUQs8/sWzmkNRCzz+Txf1HpkPPP5PF/UemQ88/rgyqDU5Ezz+uDKoNTkTPP9Qpj26ERc8/1CmPboRFzz/UKY9uhEXPP9Qpj26ERc8/vR3htOBFzz+9HeG04EXPPwu45/nTRs8/C7jn+dNGzz9wXpz4akfPP3BenPhqR88/bf5fdeRIzz9t/l915EjPPxDOp45VSs8/EM6njlVKzz9rniPyXUrPP2ueI/JdSs8/GqTgKeRKzz8apOAp5ErPP3V0XI3sSs8/dXRcjexKzz9bCHJQwkzPP1sIclDCTM8/DkktlExOzz8OSS2UTE7PP8TpJFtdTs8/xOkkW11Ozz/mywuwj07PP+bLC7CPTs8/sRh1rb1Pzz+xGHWtvU/PP+NrzywJUM8/42vPLAlQzz+/KaxUUFHPP78prFRQUc8/ppiDoKNVzz+mmIOgo1XPP/YNTG4UWc8/9g1MbhRZzz9R3sfRHFnPP1Hex9EcWc8/W7QAbatZzz9btABtq1nPP/2DSIYcW88//YNIhhxbzz/VBieiX1vPP9UGJ6JfW88/MNeiBWhbzz8w16IFaFvPP776eOi7W88/vvp46Ltbzz/I0LGDSlzPP8jQsYNKXM8/8iiV8IRezz/yKJXwhF7PP5GYoIZvYc8/kZighm9hzz8wLeqT3GHPPzAt6pPcYc8/FsH/VrJjzz8Wwf9WsmPPP1clkX2QZc8/VyWRfZBlzz8wgzEiUWjPPzCDMSJRaM8/YtaLoZxozz9i1ouhnGjPP9JSeTvCac8/0lJ5O8Jpzz8FptO6DWrPPwWm07oNas8/cefCSC9qzz9x58JIL2rPPy7+tidIbM8/Lv62J0hszz9UG5yIfm3PP1QbnIh+bc8/zm3CvTJvzz/ObcK9Mm/PP9/eNehLb88/39416Etvzz8SMpBnl2/PPxIykGeXb88/n1VmSutvzz+fVWZK62/PP2t9kdCWc88/a32R0JZzzz96jsh3KXXPP3qOyHcpdc8/1V5E2zF1zz/VXkTbMXXPP4S6SKEsfM8/hLpIoSx8zz/G+ZtQiIDPP8b5m1CIgM8/VfgzvFmDzz9V+DO8WYPPP9OFWP0Rhs8/04VY/RGGzz/wp8ZLN4nPP/Cnxks3ic8/cJUnEHaKzz9wlScQdorPPzenkgGgis8/N6eSAaCKzz9S7j7HR4vPP1LuPsdHi88/yQVn8PeLzz/JBWfw94vPP48X0uEhjM8/jxfS4SGMzz9h/3Vu2ozPP2H/dW7ajM8/MucZ+5KNzz8y5xn7ko3PP3NLqyFxj88/c0urIXGPzz8CSkONQpLPPwJKQ41Cks8/oN6Mmq+Szz+g3oyar5LPP90HILWJk88/3QcgtYmTzz8v3SQGgZXPPy/dJAaBlc8/0qxsH/KWzz/SrGwf8pbPP9Xnaiv2l88/1edqK/aXzz8CoIobt5jPPwKgihu3mM8/rkUL0Laazz+uRQvQtprPP65FC9C2ms8/rkUL0Laazz+5G0RrRZvPP7kbRGtFm88/3jgpzHuczz/eOCnMe5zPPyY49YHknc8/Jjj1geSdzz8mOPWB5J3PPyY49YHknc8/z6J3KuCezz/Poncq4J7PP8xCO6dZoM8/zEI7p1mgzz9IcCNli6TPP0hwI2WLpM8/l+XrMvynzz+X5esy/KfPP25oyk4/qM8/bmjKTj+ozz8ROBJosKnPPxE4Emiwqc8/yLPLtz6szz/Is8u3PqzPP2uDE9Gvrc8/a4MT0a+tzz8xlX7C2a3PPzGVfsLZrc8/5dU5BmSvzz/l1TkGZK/PP/28qUiFsc8//bypSIWxzz+zXaEPlrHPP7NdoQ+Wsc8/9yFvufqxzz/3IW+5+rHPP74z2qokss8/vjPaqiSyzz8JbqRskbTPPwlupGyRtM8/E0TdByC1zz8TRN0HILXPP9dLUwQ4vc8/10tTBDi9zz+imLwBZr7PP6KYvAFmvs8/zPCfbqDAzz/M8J9uoMDPP6ETQgddws8/oRNCB13Czz9y++WTFcPPP3L75ZMVw88/u9Vz0vvGzz+71XPS+8bPP0j5SbVPx88/SPlJtU/Hzz89npYfuMrPPz2elh+4ys8/mG4Sg8DKzz+YbhKDwMrPPxb8NsR4zc8/Fvw2xHjNzz9ZwARu3c3PP1nABG7dzc8/INJvXwfOzz8g0m9fB87PP9ZyZyYYzs8/1nJnJhjOzz9klj0JbM7PP2SWPQlszs8/z9csl43Ozz/P1yyXjc7PP6KakqzD0c8/opqSrMPRzz+E86ljldLPP4TzqWOV0s8/vFzEd2LWzz+8XMR3YtbPPxCSBUzg1s8/EJIFTODWzz/7O9ujN9zPP/s726M33M8/+zvbozfczz/7O9ujN9zPP2Hij6LO3M8/YeKPos7czz9h4o+iztzPP2Hij6LO3M8/jZqvko/dzz+Nmq+Sj93PP9I5P8Vx4M8/0jk/xXHgzz+BP/z89+DPP4E//Pz34M8/MUW5NH7hzz8xRbk0fuHPP1392CQ/4s8/Xf3YJD/izz8GaFvNOuPPPwZoW806488/Q5Hu5xTkzz9Dke7nFOTPP9gqweJw5s8/2CrB4nDmzz9EbLBwkubPP0RssHCS5s8/BOPg0jHnzz8E4+DSMefPP4GVQ4ts588/gZVDi2znzz//ImjMJOrPP/8iaMwk6s8/Q+c1donqzz9D5zV2ierPP/mHLT2a6s8/+YctPZrqzz+syOiAJOzPP6zI6IAk7M8/wXRat0Htzz/BdFq3Qe3PP9UgzO1e7s8/1SDM7V7uzz/PhZFe1O7PP8+FkV7U7s8/FoVdFD3wzz8WhV0UPfDPP9s2jILg8c8/2zaMguDxzz8vbM1WXvLPPy9szVZe8s8/4ExMF2L1zz/gTEwXYvXPP+BMTBdi9c8/4ExMF2L1zz8SoKaWrfXPPxKgppat9c8/tW/urx73zz+1b+6vHvfPP1MEOL2L988/UwQ4vYv3zz915h4SvvfPP3XmHhK+988/4gLQKF36zz/iAtAoXfrPP/ATB9Dv+88/8BMH0O/7zz+IDRZO0vzPP4gNFk7S/M8/EXFzKhkA0D8RcXMqGQDQP9iC3htDANA/2ILeG0MA0D9fC3pvDAHQP18Lem8MAdA/WHA/4IEB0D9YcD/ggQHQPwh2/BcIAtA/CHb8FwgC0D8N4ZhlTwLQPw3hmGVPAtA/OslWl1MC0D86yVaXUwLQP0A08+SaAtA/QDTz5JoC0D+D+MCO/wLQP4P4wI7/AtA/ePLpsS0D0D948umxLQPQP1t7n6pCA9A/W3ufqkID0D+IY13cRgPQP4hjXdxGA9A/hzO/mgME0D+HM7+aAwTQP+IDO/4LBNA/4gM7/gsE0D+RCfg1kgTQP5EJ+DWSBNA/PKQYINEE0D88pBgg0QTQP23H1F3ZBdA/bcfUXdkF0D/irl5FRgfQP+KuXkVGB9A/4q5eRUYH0D/irl5FRgfQP1qhSPdzCtA/WqFI93MK0D/AIr9+iA3QP8Aiv36IDdA/dsO2RZkN0D92w7ZFmQ3QPzY656c4DtA/NjrnpzgO0D/OM/YlGw/QP84z9iUbD9A/UFH1K50P0D9QUfUrnQ/QPyV0l8RZEdA/JXSXxFkR0D/m6scm+RHQP+bqxyb5EdA/fxR15h4S0D9/FHXmHhLQP0Ym4NdIEtA/Ribg10gS0D/1K50PzxLQP/UrnQ/PEtA/fuTWpNsS0D9+5Nak2xLQP94f71UrE9A/3h/vVSsT0D9ZorPMIhTQP1mis8wiFNA/rtf0oKAU0D+u1/SgoBTQP0xsPq4NFdA/TGw+rg0V0D/11sBWCRbQP/XWwFYJFtA/C7PQzmkW0D8Ls9DOaRbQP4UF9wMeGNA/hQX3Ax4Y0D9MF2L1RxjQP0wXYvVHGNA/BvNXyFwZ0D8G81fIXBnQP5YhjnVxG9A/liGOdXEb0D9zDwnf+xvQP3MPCd/7G9A/6SYxCKwc0D/pJjEIrBzQP5/HKM+8HNA/n8coz7wc0D9R2EXRAx/QP1HYRdEDH9A/9dcrLLgf0D/11yssuB/QPxe6EoHqH9A/F7oSgeof0D9kJHuEmiHQP2Qke4SaIdA/UFPL1voi0D9QU8vW+iLQPyrhCb3+JNA/KuEJvf4k0D9m2v6VlSbQP2ba/pWVJtA/xeV4BaIn0D/F5XgFoifQP3uGcMyyJ9A/e4ZwzLIn0D8+CAH5EirQPz4IAfkSKtA/gczOoncq0D+BzM6idyrQP0eum1JeK9A/R66bUl4r0D+gTnl0IyzQP6BOeXQjLNA//ilVouwt0D/+KVWi7C3QPzyDhv4JLtA/PIOG/gku0D826Etvfy7QPzboS29/LtA/eawZGeQu0D95rBkZ5C7QP9R8lXzsLtA/1HyVfOwu0D/C24MQkC/QP8LbgxCQL9A/Ihecwd8v0D8iF5zB3y/QP2FwzR39L9A/YXDNHf0v0D8XEcXkDTDQPxcRxeQNMNA/K702Gysx0D8rvTYbKzHQPyC3Xz5ZMdA/ILdfPlkx0D+zRdJu9DHQP7NF0m70MdA/O/4LBAEy0D87/gsEATLQP+WYLO4/MtA/5Zgs7j8y0D+pSltc4zPQP6lKW1zjM9A/jdMQVfgz0D+N0xBV+DPQPyBig4WTNNA/IGKDhZM00D/bbRea6zTQP9ttF5rrNNA/s/D1tS410D+z8PW1LjXQPw3BcRk3NdA/DcFxGTc10D9zZyYYzjXQP3NnJhjONdA/LnO6LCY20D8uc7osJjbQPyJt409UNtA/Im3jT1Q20D+8lpAPejbQP7yWkA96NtA/EMzR4/c20D8QzNHj9zbQPx7dCIuKONA/Ht0Ii4o40D+nlUIglzjQP6eVQiCXONA/L058taM40D8vTny1ozjQPx2taklHOdA/Ha1qSUc50D9KlSh7SznQP0qVKHtLOdA/ttYXCW050D+21hcJbTnQP9i4/l2fOdA/2Lj+XZ850D+RZFbvcDvQP5FkVu9wO9A/9goL7gc80D/2CgvuBzzQPyPzyB8MPNA/I/PIHww80D8pXmVtUzzQPyleZW1TPNA/pRDIJY480D+lEMgljjzQP6UQyCWOPNA/pRDIJY480D+JmX0eozzQP4mZfR6jPNA/x/KuesA80D/H8q56wDzQP6TgKeRKPdA/pOAp5Eo90D9qwvaTMT7QP2rC9pMxPtA/Yye8BKc+0D9jJ7wEpz7QP2L3HcNjP9A/Yvcdw2M/0D84Sl6dY0DQPzhKXp1jQNA/TiZuFcRA0D9OJm4VxEDQP1+X4T/dQNA/X5fhP91A0D+uYYbGE0HQP65hhsYTQdA/NxrAWyBB0D83GsBbIEHQP2QCfo0kQdA/ZAJ+jSRB0D9XzAhvD0LQP1fMCG8PQtA/V8wIbw9C0D9XzAhvD0LQP4W0xqATQtA/hbTGoBNC0D9tqBjnb0LQP22oGOdvQtA/wa27eapD0D/Brbt5qkPQP+KPos7cQ9A/4o+iztxD0D+UoL/QI0bQP5Sgv9AjRtA/sOdrlstG0D+w52uWy0bQP/OrOUAwR9A/86s5QDBH0D91yThGskfQP3XJOEayR9A/l6sfm+RH0D+Xqx+b5EfQP28u/rYnSNA/by7+tidI0D/U1LK1vkjQP9TUsrW+SNA/DJOpglFJ0D8Mk6mCUUnQP6on84++SdA/qifzj75J0D9EUaBP5EnQP0RRoE/kSdA/J9pVSPlJ0D8n2lVI+UnQPzhLyXISStA/OEvJchJK0D8e39416EvQPx7f3jXoS9A/twiM9Q1M0D+3CIz1DUzQP3h/vFetTNA/eH+8V61M0D9fQ3Bcxk3QP19DcFzGTdA/9zx/2qhO0D/3PH/aqE7QP8O5hhkaT9A/w7mGGRpP0D/UKvpDM0/QP9Qq+kMzT9A/9gzhmGVP0D/2DOGYZU/QP3K/Q1GgT9A/cr9DUaBP0D850a5Cyk/QPznRrkLKT9A/T62+uipQ0D9Prb66KlDQP6p9Oh4zUNA/qn06HjNQ0D8k0GBT51HQPyTQYFPnUdA/RrJHqBlS0D9GskeoGVLQP4Pb2sLzUtA/g9vawvNS0D9EUgslk1PQP0RSCyWTU9A//S0B+KdU0D/9LQH4p1TQP6aYg6CjVdA/ppiDoKNV0D8jS+ZY3lXQPyNL5ljeVdA/uhRXlX1X0D+6FFeVfVfQP52dDI6SV9A/nZ0MjpJX0D9gH5268lnQP2AfnbryWdA/0csollta0D/RyyiWW1rQP3o2qz5XW9A/ejarPldb0D8z4gLQKF3QPzPiAtAoXdA/xEDXvoBe0D/EQNe+gF7QP8RA176AXtA/xEDXvoBe0D8wgsZMol7QPzCCxkyiXtA/QfM5d7te0D9B8zl3u17QP0YJ+gs9YtA/Rgn6Cz1i0D8pkq8EUmLQPymSrwRSYtA/+3lTkQpj0D/7eVORCmPQP5SjAFEwY9A/lKMAUTBj0D8tza0QVmPQPy3NrRBWY9A/IsfWM4Rj0D8ix9YzhGPQP32XUpeMY9A/fZdSl4xj0D/MYfcdw2PQP8xh9x3DY9A/SRRa1v1j0D9JFFrW/WPQPx43/G66ZdA/Hjf8brpl0D8eN/xuumXQPx43/G66ZdA/bNECtK1m0D9s0QK0rWbQP39N1qiHaNA/f03WqIdo0D8csoF0sWnQPxyygXSxadA/x0yiXvBp0D/HTKJe8GnQPxuC4zJuatA/G4LjMm5q0D8s81Zdh2rQPyzzVl2HatA/+G9enPhq0D/4b16c+GrQPyVYHM78atA/JVgczvxq0D9Yq3ZNSGvQP1irdk1Ia9A/rOC3IcZr0D+s4LchxmvQP5BpbRrba9A/kGltGttr0D/TLTvEP2zQP9MtO8Q/bNA/jznP2Jds0D+POc/Yl2zQP809JHzvb9A/zT0kfO9v0D+D3htDAHDQP4PeG0MAcNA/MuTYeoZw0D8y5Nh6hnDQP8VyS6shcdA/xXJLqyFx0D/EQq1p3nHQP8RCrWnecdA/Ew1S8BRy0D8TDVLwFHLQP/wApDZxctA//ACkNnFy0D/oL/SI0XPQP+gv9IjRc9A/r0Ffevtz0D+vQV96+3PQPyVZh6OrdNA/JVmHo6t00D82yvrNxHTQPzbK+s3EdNA/AkcCDTZ10D8CRwINNnXQP4EExY8xd9A/gQTFjzF30D8xCoLHt3fQPzEKgse3d9A/rrzkf/J30D+uvOR/8nfQP/2GiQYpeNA//YaJBil40D+sjEY+r3jQP6yMRj6veNA//5Hp0Ol50D//kenQ6XnQP54mM95WetA/niYz3lZ60D+eJjPeVnrQP54mM95WetA/Ja/OMSB70D8lr84xIHvQPwoTRrOyfdA/ChNGs7J90D8YJH1aRX/QPxgkfVpFf9A/5KCEmbZ/0D/koISZtn/QP4ZwzLIngdA/hnDMsieB0D82donqrYHQPzZ2ieqtgdA/R+f8FMeB0D9H5/wUx4HQP/tXVpqUgtA/+1dWmpSC0D8GLo81I4PQPwYujzUjg9A/OIHptG6D0D84gem0boPQP1pj0Amhg9A/WmPQCaGD0D+sONVamIXQP6w41VqYhdA/S80eaAWG0D9LzR5oBYbQP9JVurvOhtA/0lW6u86G0D988NqlDYfQP3zw2qUNh9A/dCUC1T+I0D90JQLVP4jQP3mQniKHiNA/eZCeIoeI0D8X9UnusInQPxf1Se6widA/xvoGJjeK0D/G+gYmN4rQP3CVJxB2itA/cJUnEHaK0D+M3NPVHYvQP4zc09Udi9A/iXyXUpeM0D+JfJdSl4zQPz2YFB+fkNA/PZgUH5+Q0D/zOAzmr5DQP/M4DOavkNA/hZfg1AeS0D+Fl+DUB5LQP+1I9Z1flNA/7Uj1nV+U0D900ZDxKJXQP3TRkPEoldA/L90kBoGV0D8v3SQGgZXQP424ADRKl9A/jbgANEqX0D/h7UEIyJfQP+HtQQjIl9A/MLjmjv6X0D8wuOaO/pfQP1KazeMwmNA/UprN4zCY0D9XBWoxeJjQP1cFajF4mNA/TP+SVKaY0D9M/5JUppjQP2yx22eVmdA/bLHbZ5WZ0D/vqZz2lJzQP++pnPaUnNA/FceBV8ud0D8Vx4FXy53QP1mLTwEwntA/WYtPATCe0D96bTZWYp7QP3ptNlZintA/pyVWRiOf0D+nJVZGI5/QPzRJLCl3n9A/NEksKXef0D8bDeAtkKDQPxsN4C2QoNA/Pe/GgsKg0D8978aCwqDQPz2a6sn8o9A/PZrqyfyj0D9Y4ZaPpKTQP1jhlo+kpNA/JAnCFVCo0D8kCcIVUKjQP2jNj7+0qNA/aM2Pv7So0D9hMlUwKqnQP2EyVTAqqdA/hh+cTx2r0D+GH5xPHavQPzzAkxYuq9A/PMCTFi6r0D+hZkgVxavQP6FmSBXFq9A/YK3aNSGt0D9grdo1Ia3QP1JHx9XIrtA/UkfH1ciu0D+2vd2SHLDQP7a93ZIcsNA/Fvn1Q2yw0D8W+fVDbLDQP//sR4rIsNA//+xHisiw0D8fn5Cdt7HQPx+fkJ23sdA/bmk1JO6x0D9uaTUk7rHQPxkEVg4tstA/GQRWDi2y0D/8jAsHQrLQP/yMCwdCstA/bTmX4qqy0D9tOZfiqrLQP9hK6C6Js9A/2EroLomz0D/YSuguibPQP9hK6C6Js9A/4fCCiNS00D/h8IKI1LTQP+P74lKVttA/4/viUpW20D8R5KCEmbbQPxHkoISZttA/cR+5Nem20D9xH7k16bbQPywrTUpBt9A/LCtNSkG30D+AYI4ev7fQP4Bgjh6/t9A/MGZLVkW40D8wZktWRbjQP76JITmZuNA/vokhOZm40D/rcd9qnbjQP+tx32qduNA/9UcYBiy50D/1RxgGLLnQP6DiOPBqudA/oOI48Gq50D+g4jjwarnQP6DiOPBqudA/46YGms+50D/jpgaaz7nQP5lH/mDgudA/mUf+YOC50D/msWZkkLvQP+axZmSQu9A/yLWhYpy/0D/ItaFinL/QP5QyqaENwNA/lDKpoQ3A0D8WUKinj8DQPxZQqKePwNA/ODKP/MHA0D84Mo/8wcDQP5/jo8UZw9A/n+OjxRnD0D8ychb2tMPQPzJyFva0w9A/bmsLz0vF0D9uawvPS8XQP/XzpiIVxtA/9fOmIhXG0D+PHVTiOsbQP48dVOI6xtA/KEcBomDG0D8oRwGiYMbQP+0ozlFHx9A/7SjOUUfH0D9I+Um1T8fQP0j5SbVPx9A/qDRiZp/H0D+oNGJmn8fQP0fJq3MMyNA/R8mrcwzI0D+imSfXFMjQP6KZJ9cUyNA/XaW762zI0D9dpbvrbMjQP5v+7EeKyNA/m/7sR4rI0D/zPo7myMrQP/M+jubIytA/3j1A9+XM0D/ePUD35czQP2XG20qvzdA/ZcbbSq/N0D+HqMKf4c3QP4eowp/hzdA/MUPjiSDO0D8xQ+OJIM7QP/hUTntKztA/+FROe0rO0D9R9SudD8/QP1H1K50Pz9A/wXEZNzXQ0D/BcRk3NdDQP9Ydi21S0dA/1h2LbVLR0D+5pkBmZ9HQP7mmQGZn0dA/uHaiJCTS0D+4dqIkJNLQP0Rq2sU009A/RGraxTTT0D9J1XYTfNPQP0nVdhN809A/YLGGi9zT0D9gsYaL3NPQP+UJhJ1i1dA/5QmEnWLV0D/ltKfknNjQP+W0p+Sc2NA/2q7QB8vY0D/artAHy9jQP5JaKJmc2tA/kloomZza0D8PDYtR19rQPw8Ni1HX2tA/IH7+e/Da0D8gfv578NrQP5EqildZ29A/kSqKV1nb0D/Pg7uzdtvQP8+Du7N229A/WDz1SIPb0D9YPPVIg9vQP2mtaHOc29A/aa1oc5zb0D9/iXjr/NvQP3+JeOv829A/Z33KMVnc0D9nfcoxWdzQP0sGgCpu3NA/SwaAKm7c0D9J1uHoKt3QP0nW4egq3dA/SKZDp+fd0D9IpkOn593QP/EQxk/j3tA/8RDGT+Pe0D+bq+Y5It/QP5ur5jki39A/mntI+N7f0D+ae0j43t/QP/q2YKku4NA/+rZgqS7g0D/zGyYapODQP/MbJhqk4NA/+YbCZ+vg0D/5hsJn6+DQP7SSVnxD4dA/tJJWfEPh0D9Btixfl+HQP0G2LF+X4dA/RyHJrN7h0D9HIcms3uHQP2fTEcDN4tA/Z9MRwM3i0D9n0xHAzeLQP2fTEcDN4tA/BmhbzTrj0D8GaFvNOuPQP3x/g/bq49A/fH+D9urj0D/LSSh9IeTQP8tJKH0h5NA/Vz1gHjLl0D9XPWAeMuXQPyklBKvq5dA/KSUEq+rl0D/CTrFqEObQP8JOsWoQ5tA/BhN/FHXm0D8GE38UdebQP6SnyCHi5tA/pKfIIeLm0D8tYAK37ubQPy1gArfu5tA/krHa/L/q0D+Ssdr8v+rQPzaxwFd069A/NrHAV3Tr0D/xvFRszOvQP/G8VGzM69A/yD8ziA/s0D/IPzOID+zQP86qz9VW7NA/zqrP1Vbs0D9gOUIG8uzQP2A5Qgby7NA/Wp4Hd2ft0D9angd3Z+3QP+jB3Vm77dA/6MHdWbvt0D+eYtUgzO3QP55i1SDM7dA/xK9Yw0Xu0D/Er1jDRe7QP8SvWMNF7tA/xK9Yw0Xu0D/vN9pxw+/QP+832nHD79A/mKJcGr/w0D+Yolwav/DQP5ZCIJc48tA/lkIglzjy0D8S9YJPc/LQPxL1gk9z8tA/b6DAO/n00D9voMA7+fTQPyVBuAIK9dA/JUG4Agr10D/rUiP0M/XQP+tSI/Qz9dA/GAtD5PT10D8YC0Pk9PXQP0ku/yH99tA/SS7/If320D/R5ji3CffQP9HmOLcJ99A/OGivPh760D84aK8+HvrQP/NzQ1N2+tA/83NDU3b60D/t2AjE6/rQP+3YCMTr+tA/dZFCWfj60D91kUJZ+PrQP4ttUtFY+9A/i21S0Vj70D9cVfZdEfzQP1xV9l0R/NA/YJD0aRX90D9gkPRpFf3QPxYx7DAm/dA/FjHsMCb90D8r3V1nQ/7QPyvdXWdD/tA/UfpCyHn/0D9R+kLIef/QP37iAPp9/9A/fuIA+n3/0D8HmzqPiv/QPwebOo+K/9A/g02dR8X/0D+DTZ1Hxf/QP+JYF7fRANE/4lgXt9EA0T+eP21UpwPRP54/bVSnA9E/66nVV1cF0T/rqdVXVwXRPzp0et6NBdE/OnR63o0F0T/DLLRzmgXRP8MstHOaBdE/AFZHjnQG0T8AVkeOdAbRPzOpoQ3ABtE/M6mhDcAG0T8KLIApAwfRPwosgCkDB9E/rfvHQnQI0T+t+8dCdAjRPxcNGY9SCdE/Fw0Zj1IJ0T/7lc6HZwnRP/uVzodnCdE/HHi13JkJ0T8ceLXcmQnRPwyyZfm6DNE/DLJl+boM0T9mguFcwwzRP2aC4VzDDNE/wVJdwMsM0T/BUl3AywzRP+if4GJFDdE/6J/gYkUN0T+pFhHF5A3RP6kWEcXkDdE/CVIpdjQO0T8JUil2NA7RP9kJL8GpD9E/2QkvwakP0T8LXYlA9Q/RPwtdiUD1D9E/k+UklL4Q0T+T5SSUvhDRP8U4fxMKEdE/xTh/EwoR0T8VAySaQBHRPxUDJJpAEdE/5urHJvkR0T/m6scm+RHRP0G7Q4oBEtE/QbtDigES0T9LkXwlkBLRP0uRfCWQEtE/ct7/xwkT0T9y3v/HCRPRP25OJQNAFdE/bk4lA0AV0T8Y6UXtfhXRPxjpRe1+FdE/oaF/gosV0T+hoX+CixXRP8ODZte9FdE/w4Nm170V0T8eVOI6xhXRPx5U4jrGFdE/IY/gRsoW0T8hj+BGyhbRP7u4jQbwFtE/u7iNBvAW0T8lyt5SzhfRPyXK3lLOF9E//Uy9bhEY0T/9TL1uERjRPxMpzeZxGNE/EynN5nEY0T/v5qkOuRnRP+/mqQ65GdE/o1cDlIYa0T+jVwOUhhrRP6nCn+HNGtE/qcKf4c0a0T/QDyOERxvRP9API4RHG9E/hbAaS1gb0T+FsBpLWBvRP37lQXqKHNE/fuVBeooc0T+fxyjPvBzRP5/HKM+8HNE/3PC76ZYd0T/c8Lvplh3RP67YX3ZPHtE/rthfdk8e0T9afuAqTyDRP1p+4CpPINE/CVT/IJIh0T8JVP8gkiHRPzUMHxFTItE/NQwfEVMi0T/wF7MlqyLRP/AXsyWrItE/XATG+gYm0T9cBMb6BibRP7fUQV4PJtE/t9RBXg8m0T9JY7SOqibRP0ljtI6qJtE/9gg1Q6oo0T/2CDVDqijRP9/8hokGKdE/3/yGiQYp0T8SUOEIUinRPxJQ4QhSKdE/fZHQlnMp0T99kdCWcynRP5I9Qs2QKtE/kj1CzZAq0T/hB+dTxyrRP+EH51PHKtE/ezGUE+0q0T97MZQT7SrRPyo3UUtzK9E/KjdRS3Mr0T8S+wRQjCzRPxL7BFCMLNE/kuhlFMst0T+S6GUUyy3RP/4pVaLsLdE//ilVouwt0T/WrDO+Ly7RP9asM74vLtE/ezL/6Js00T97Mv/omzTRP3sy/+ibNNE/ezL/6Js00T8Ai/z6ITbRPwCL/PohNtE/3Xh3ZKw20T/deHdkrDbRP/36ITZYONE//fohNlg40T9zEkpfCDnRP3MSSl8IOdE/+8qD9BQ50T/7yoP0FDnRP45Z9iSwOdE/jln2JLA50T9x4qsdxTnRP3Hiqx3FOdE/k8SScvc50T+TxJJy9znRP9DtJY3ROtE/0O0ljdE60T+sqwK1GDzRP6yrArUYPNE/RdWvdD480T9F1a90PjzRP4Qu4dBbPNE/hC7h0Fs80T8dWI6QgTzRPx1YjpCBPNE/ECIZcmw90T8QIhlybD3RP8bCEDl9PdE/xsIQOX090T/QmEnUCz7RP9CYSdQLPtE/lnoWhPI+0T+WehaE8j7RP6fria4LP9E/p+uJrgs/0T9bXOMz2T/RP1tc4zPZP9E/jq89syRA0T+Orz2zJEDRP8ZtNIC3QNE/xm00gLdA0T/turciMUHRP+26tyIxQdE/xT2WPnRB0T/FPZY+dEHRPyIZcmw9Q9E/IhlybD1D0T/pKt1dZ0PRP+kq3V1nQ9E/7pV5q65D0T/ulXmrrkPRPzJaR1UTRNE/MlpHVRNE0T+6EoHqH0TRP7oSgeofRNE/gSTs20lE0T+BJOzbSUTRPzRlpx/URdE/NGWnH9RF0T/kamRXWkbRP+RqZFdaRtE/9dvXgXNG0T/129eBc0bRP5AQ5QtaSNE/kBDlC1pI0T9szsEzoUnRP2zOwTOhSdE//Pz34LVL0T/8/PfgtUvRPy9QUmABTNE/L1BSYAFM0T907+GS407RP3Tv4ZLjTtE//KcbKPBO0T/8pxso8E7RPzihEAGHUNE/OKEQAYdQ0T/r4ctEEVLRP+vhy0QRUtE/7xzKUBVT0T/vHMpQFVPRPzPhl/p5U9E/M+GX+nlT0T/ABG7dzVPRP8AEbt3NU9E/kLxzKENV0T+QvHMoQ1XRPwFp/wOsVdE/AWn/A6xV0T+MLJljeVfRP4wsmWN5V9E/+G2I8ZpX0T/4bYjxmlfRP14UPfAxWNE/XhQ98DFY0T8ZINEEiljRPxkg0QSKWNE/HottUtFY0T8ei21S0VjRP+I8nMB0WtE/4jycwHRa0T+XrfVFQlvRP5et9UVCW9E/Xb9gN2xb0T9dv2A3bFvRPyk8aHbdW9E/KTxodt1b0T8kfO9v0F7RPyR872/QXtE/iiKkbmdf0T+KIqRuZ1/RP4+NQLyuX9E/j41AvK5f0T9mEB/Y8V/RP2YQH9jxX9E/D3uhgO1g0T8Pe6GA7WDRP+bN4VrtYdE/5s3hWu1h0T+cbtkh/mHRP5xu2SH+YdE/f/eOGhNi0T9/944aE2LRP6uvrgrUYtE/q6+uCtRi0T/03hgCgGPRP/TeGAKAY9E/qn8QyZBj0T+qfxDJkGPRP/lJtU/HY9E/+Um1T8dj0T8Kuyh64GPRPwq7KHrgY9E/7x6g+3Jm0T/vHqD7cmbRP3fX2ZB/ZtE/d9fZkH9m0T8WbCOe7GbRPxZsI57sZtE/gq0SLA5n0T+CrRIsDmfRP9F3t7JEZ9E/0Xe3skRn0T/w+WGE8GjRP/D5YYTwaNE/1IIXfQVp0T/Ughd9BWnRP83n3O16adE/zefc7Xpp0T8hHR7C+GnRPyEdHsL4adE/uRYtQNtq0T+5Fi1A22rRP4aTNH9Ma9E/hpM0f0xr0T/eA3RfzmzRP94DdF/ObNE/8E+pEmVv0T/wT6kSZW/RP0NVTKWfcNE/Q1VMpZ9w0T91eAjjp3HRP3V4COOncdE/sqGb/YFy0T+yoZv9gXLRP8ZNDTSfc9E/xk0NNJ9z0T/0Nctlo3PRP/Q1y2Wjc9E/Wdx/ZDp00T9Z3H9kOnTRP7Ss+8dCdNE/tKz7x0J00T+opiTrcHTRP6imJOtwdNE/uReYFYp00T+5F5gVinTRP6d2hqktddE/p3aGqS110T+yTL9EvHXRP7JMv0S8ddE/MjogCft20T8yOiAJ+3bRP/2GiQYpeNE//YaJBil40T/gDz//PXjRP+APP/89eNE/2nQEcLN40T/adARws3jRPzMV4pF4edE/MxXikXh50T/NPo9RnnnRP80+j1GeedE/C5jArbt50T8LmMCtu3nRPwPN59ztetE/A83n3O160T/N6bKY2HzRP83pspjYfNE/ZhNgWP580T9mE2BY/nzRP0MB28GIfdE/QwHbwYh90T+BWgwepn3RP4FaDB6mfdE/A3gLJCh+0T8DeAskKH7RP/HW+bfLftE/8db5t8t+0T8djxmojH/RPx2PGaiMf9E/vCNjtfl/0T+8I2O1+X/RPyygUE8fgdE/LKBQTx+B0T8lBRbAlIHRPyUFFsCUgdE/kBZnDHOC0T+QFmcMc4LRP7H4TWGlgtE/sfhNYaWC0T/T2jS214LRP9PaNLbXgtE/nieeswWE0T+eJ56zBYTRPzuMSX8vhdE/O4xJfy+F0T/SVbq7zobRP9JVurvOhtE/FRqIZTOH0T8VGohlM4fRPwN5dvnWh9E/A3l2+daH0T/x12SNeojRP/HXZI16iNE/RQ2mYfiI0T9FDaZh+IjRP2fvjLYqidE/Z++MtiqJ0T9LeEKvP4nRP0t4Qq8/idE/csXFUbmJ0T9yxcVRuYnRP/BS6pJxjNE/8FLqknGM0T/GpSptcY3RP8alKm1xjdE/K0zfawiO0T8rTN9rCI7RP5vIzAUuj9E/m8jMBS6P0T/SViWRfZDRP9JWJZF9kNE/GVbxRuaR0T8ZVvFG5pHRP8/26A33kdE/z/boDfeR0T9z9s5oq5LRP3P2zmirktE/xysQPSmT0T/HKxA9KZPRPxxhURGnk9E/HGFREaeT0T8QW3o01ZPRPxBbejTVk9E/IcztXu6T0T8hzO1e7pPRP/lOzHoxlNE/+U7MejGU0T9UH0jeOZTRP1QfSN45lNE/4BKAf0qV0T/gEoB/SpXRP4qtoGmJldE/iq2gaYmV0T9OX8/XLJfRP05fz9csl9E/vtu8cVKY0T++27xxUpjRPyntDb4wmdE/Ke0NvjCZ0T8WTPxR1JnRPxZM/FHUmdE/pG/SNCia0T+kb9I0KJrRP7+2fvrPmtE/v7Z++s+a0T9OtRZmoZ3RP061FmahndE/+E83UOCd0T/4TzdQ4J3RPwDGM2jon9E/AMYzaOif0T/uJCL8i6DRP+4kIvyLoNE/fEj43t+g0T98SPje36DRP9yDEJAvodE/3IMQkC+h0T/cgxCQL6HRP9yDEJAvodE/CWzOwTOh0T8JbM7BM6HRP9Xo1QClodE/1ejVAKWh0T8UQgddwqHRPxRCB13CodE/1Lg3v2Gi0T/UuDe/YaLRP9S4N79hotE/1Lg3v2Gi0T+3Qe23dqLRP7dB7bd2otE/2SPUDKmi0T/ZI9QMqaLRPwtHkEqxo9E/C0eQSrGj0T/RAx+DFafRP9EDH4MVp9E/hUTaxp+o0T+FRNrGn6jRP5SFr691qdE/lIWvr3Wp0T923sZmR6rRP3bexmZHqtE/K08g7BSr0T8rTyDsFKvRP46VmGclrdE/jpWYZyWt0T8Og/krZK7RPw6D+StkrtE/lQuVfy2v0T+VC5V/La/RP52BkZc1sdE/nYGRlzWx0T/4UQ37PbHRP/hRDfs9sdE/iIBDqFKz0T+IgEOoUrPRP0OM17yqs9E/Q4zXvKqz0T88wf7r3LTRPzzB/uvctNE/aam8HeG00T9pqbwd4bTRP2mpvB3htNE/aam8HeG00T+nAu55/rTRP6cC7nn+tNE/NSbEXFK10T81JsRcUrXRPxZPPdLgttE/Fk890uC20T9TeNDsurfRP1N40Oy6t9E/fzDw3Hu40T9/MPDce7jRP8hfWtQnudE/yF9a1Ce50T/Z0M3+QLnRP9nQzf5AudE/ZvSj4ZS50T9m9KPhlLnRP0PiHksfutE/Q+IeSx+60T8xQQ3fwrrRPzFBDd/CutE/YASNmUS90T9gBI2ZRL3RP43sSstIvdE/jexKy0i90T/5LTpZar3RP/ktOllqvdE/85L/yd+90T/zkv/J373RP24VxEDXvtE/bhXEQNe+0T/fwU8cQL/RP9/BTxxAv9E/AaQ2cXK/0T8BpDZxcr/RPyOGHcakv9E/I4YdxqS/0T/A6siRzsDRP8DqyJHOwNE/QdgpVg3C0T9B2ClWDcLRP99sc2N6wtE/32xzY3rC0T8SwM3ixcLRPxLAzeLFwtE/lN3M6EfD0T+U3czoR8PRP56zBYTWw9E/nrMFhNbD0T9qMA3DR8TRP2owDcNHxNE/7E0MycnE0T/sTQzJycTRP7jKEwg7xdE/uMoTCDvF0T+JsreU88XRP4myt5TzxdE/+l5DcFzG0T/6XkNwXMbRPyhHAaJgxtE/KEcBomDG0T9VL7/TZMbRP1Uvv9NkxtE/tmrXhLTG0T+2ateEtMbRP5JYUu4+x9E/klhS7j7H0T+At0CC4sfRP4C3QILix9E/ZED2evfH0T9kQPZ698fRP1g6H54lyNE/WDofniXI0T/TvOMUHcnRP9O84xQdydE/I4eIm1PJ0T8jh4ibU8nRPwOwARHiytE/A7ABEeLK0T+MaDum7srRP4xoO6buytE/MGghAaPL0T8waCEBo8vRP6Z/SSpTzNE/pn9JKlPM0T+qukc2V83RP6q6RzZXzdE/YFs//WfN0T9gWz/9Z83RP4E9JlKazdE/gT0mUprN0T9IT5FDxM3RP0hPkUPEzdE/TbotkQvO0T9Nui2RC87RP+fj2lAxztE/5+PaUDHO0T+dhNIXQs7RP52E0hdCztE/2q1lMhzP0T/arWUyHM/RP8bctYR80NE/xty1hHzQ0T/ovpzZrtDRP+i+nNmu0NE/gehJmdTQ0T+B6EmZ1NDRPzvEP2zp0dE/O8Q/bOnR0T+3RgTj4NLRP7dGBOPg0tE/5C7CFOXS0T/kLsIU5dLRP47J4v4j09E/jsni/iPT0T8tXiwMkdPRPy1eLAyR09E/JsPxfAbU0T8mw/F8BtTRPywujspN1NE/LC6Oyk3U0T96yJQPQdXRP3rIlA9B1dE/uCHGa17V0T+4IcZrXtXRP5PfopOl1tE/k9+ik6XW0T+ADvPlBdjRP4AO8+UF2NE/yT1d3bHY0T/JPV3dsdjRP8KiIk4n2dE/wqIiTifZ0T8EN1K2SNrRPwQ3UrZI2tE/NloO9FDb0T82Wg70UNvRP/1reeV629E//Wt55Xrb0T/9a3nletvRP/1reeV629E/aa1oc5zb0T9prWhznNvRP12nkZbK29E/XaeRlsrb0T/pmsk329zRP+mayTfb3NE/Zk0s8BXd0T9mTSzwFd3RP+3Vx0Pf3dE/7dXHQ9/d0T9FRgckYd/RP0VGByRh39E/Vrd6Tnrf0T9Wt3pOet/RPy46WWq939E/LjpZar3f0T+ZS6q2m+DRP5lLqrab4NE/+mGE8Gjj0T/6YYTwaOPRP5OLMbCO49E/k4sxsI7j0T/uW60Tl+PRP+5brROX49E/i8BY38Dk0T+LwFjfwOTRP8oZijve5NE/yhmKO97k0T/L9EvEW+fRP8v0S8Rb59E/e/oI/OHn0T97+gj84efRP3MvMCsU6dE/cy8wKxTp0T+gF+5cGOnRP6AX7lwY6dE/LQsm/ijq0T8tCyb+KOrRP9elRuhn6tE/16VG6Gfq0T87HF2lu+vRPzscXaW769E/YmngRzXs0T9iaeBHNezRP98bQwBw7NE/3xtDAHDs0T8zUYTU7ezRPzNRhNTt7NE/tD7lmCzu0T+0PuWYLO7RP74UHjS77tE/vhQeNLvu0T9+i06WWu/RP36LTpZa79E/7ded7jzx0T/t153uPPHRPx8r+G2I8dE/Hyv4bYjx0T8ChA8lWvLRPwKEDyVa8tE/n+i68IPz0T+f6Lrwg/PRP1NZFHZR9NE/U1kUdlH00T8aa39ne/TRPxprf2d79NE/oyO5/If00T+jI7n8h/TRP3B7gsR299E/cHuCxHb30T+dY0D2evfRP51jQPZ699E/QDOID+z40T9AM4gP7PjRP7CvdakR+tE/sK91qRH60T+TOCuiJvrRP5M4K6Im+tE/uVUQA1370T+5VRADXfvRP4+oUN1c/NE/j6hQ3Vz80T8nol9bP/3RPyeiX1s//dE/MXiY9s390T8xeJj2zf3RP3U8ZqAy/tE/dTxmoDL+0T+GrdnKS/7RP4at2cpL/tE/kIMSZtr+0T+QgxJm2v7RP5CDEmba/tE/kIMSZtr+0T/8xAH0+/7RP/zEAfT7/tE/M1Naf0sA0j8zU1p/SwDSP/PJiuHqANI/88mK4eoA0j+62/XSFAHSP7rb9dIUAdI/l8lwPJ8B0j+XyXA8nwHSPxN80/TZAdI/E3zT9NkB0j8B28GIfQLSPwHbwYh9AtI/zVfJx+4C0j/NV8nH7gLSP/JEEOfhBNI/8kQQ5+EE0j+7YduizAbSP7th26LMBtI/VIuIYvIG0j9Ui4hi8gbSP7XGoBNCB9I/tcagE0IH0j99s82N6QnSP32zzY3pCdI/Ek2giEUM0j8STaCIRQzSP4yfxr35DdI/jJ/GvfkN0j91kxgEVg7SP3WTGARWDtI/sryrHjAP0j+yvKseMA/SPxzO/GoOENI/HM78ag4Q0j+7YkZ4exDSP7tiRnh7ENI/eqnYmNcR0j96qdiY1xHSP9V5VPzfEdI/1XlU/N8R0j8CYhIu5BHSPwJiEi7kEdI//MbXnlkS0j/8xteeWRLSP0gxQKIJFNI/SDFAogkU0j8pWrkXmBXSPylauReYFdI/8GskCcIV0j/wayQJwhXSP4P6ljldFtI/g/qWOV0W0j91lIPZBBjSP3WUg9kEGNI/uFhRg2kY0j+4WFGDaRjSP5mByvj3GdI/mYHK+PcZ0j+ARX79EBvSP4BFfv0QG9I/mPxP/u4d0j+Y/E/+7h3SPyTwh5//HtI/JPCHn/8e0j9zuiwmNh/SP3O6LCY2H9I/oaLqVzof0j+houpXOh/SP6J9rOC3IdI/on2s4Lch0j8qNuZ1xCHSPyo25nXEIdI/i3H+JhQi0j+Lcf4mFCLSP9OgaB7AItI/06BoHsAi0j9QU8vW+iLSP1BTy9b6ItI/h+EjYkok0j+H4SNiSiTSPwOUhhqFJNI/A5SGGoUk0j8wTKYKRiXSPzBMpgpGJdI/S5NS0O0l0j9Lk1LQ7SXSP7fUQV4PJtI/t9RBXg8m0j/R60/icyfSP9HrT+JzJ9I/Qpjbvdwn0j9CmNu93CfSP/g404TtJ9I/+DjThO0n0j9r8L4qFyrSP2vwvioXKtI/qknwhjQq0j+qSfCGNCrSPwUabOo8KtI/BRps6jwq0j8Vi98UVirSPxWL3xRWKtI/uFonLscr0j+4WicuxyvSP+QSRx6ILNI/5BJHHogs0j93oblOIy3SP3ehuU4jLdI/RSkhWFUv0j9FKSFYVS/SPyIXnMHfL9I/Ihecwd8v0j8+XkiHhzDSPz5eSIeHMNI/jzNN2H4y0j+PM03YfjLSP/BuZYnOMtI/8G5lic4y0j/6RJ4kXTPSP/pEniRdM9I/qUpbXOMz0j+pSltc4zPSPwQb17/rM9I/BBvXv+sz0j9NSkG3lzTSP01KQbeXNNI/CFbVy+800j8IVtXL7zTSPxiXqrTFNdI/GJeqtMU10j8pCB7f3jXSPykIHt/eNdI/2A3bFmU20j/YDdsWZTbSP3I3iNaKNtI/cjeI1oo20j8+tI8V/DbSPz60jxX8NtI/NxlVhnE30j83GVWGcTfSP5Lp0Ol5N9I/kunQ6Xk30j+G4/kMqDfSP4bj+QyoN9I/9l/nps040j/2X+emzTjSP0UqjC0EOdI/RSqMLQQ50j+yRj1EozvSP7JGPUSjO9I/uLHZkeo70j+4sdmR6jvSP+Rp+YGrPNI/5Gn5gas80j9vLZPheD7SP28tk+F4PtI/scHCSZo/0j+xwcJJmj/SP1n8prBSQdI/WfymsFJB0j88hVypZ0HSPzyFXKlnQdI/qMZLN4lB0j+oxks3iUHSP4ofY+5aQtI/ih9j7lpC0j9Bmxw+6UTSP0GbHD7pRNI/THFV2XdF0j9McVXZd0XSPzM1Cd6QRtI/MzUJ3pBG0j/nUIaqmErSP+dQhqqYStI//7J78rBQ0j//snvysFDSP28vaYzWUdI/by9pjNZR0j8SL0/nilLSPxIvT+eKUtI/cmpnmNpS0j9yameY2lLSP2DJVSx+U9I/YMlVLH5T0j/i5lQyAFTSP+LmVDIAVNI/uTmVDABV0j+5OZUMAFXSP27ajNMQVdI/btqM0xBV0j95sMVun1XSP3mwxW6fVdI/odgKmpZY0j+h2AqalljSP8/AyMuaWNI/z8DIy5pY0j+DMSJRaFnSP4MxIlFoWdI/gdHlzeFa0j+B0eXN4VrSP3kGDf0TXNI/eQYN/RNc0j84TZ8dcF3SPzhNnx1wXdI/dqbQeY1d0j92ptB5jV3SP7g6AOKuXtI/uDoA4q5e0j8p54u9F1/SPynni70XX9I/SpnU0AZg0j9KmdTQBmDSP8y209aIYNI/zLbT1ohg0j9Yqgt4mWHSP1iqC3iZYdI/lwM91LZh0j+XAz3UtmHSP+s4fqg0YtI/6zh+qDRi0j9btWtCWmPSP1u1a0JaY9I/ZFsGnKVk0j9kWwacpWTSP8ehfhe2ZtI/x6F+F7Zm0j9da+9TVWjSP11r71NVaNI/NL4vLlVp0j80vi8uVWnSP9v4E5UNa9I/2/gTlQ1r0j/iPnJr0m3SP+I+cmvSbdI/TFDDt7Bu0j9MUMO3sG7SP+q0boPab9I/6rRug9pv0j8b2CrB4nDSPxvYKsHicNI/G9gqweJw0j8b2CrB4nDSPz26ERYVcdI/PboRFhVx0j89uhEWFXHSPz26ERYVcdI/TPvm/upx0j9M++b+6nHSP5qV7UPectI/mpXtQ95y0j/GTQ00n3PSP8ZNDTSfc9I/SGsMOiF00j9Iaww6IXTSPxToE3mSdNI/FOgTeZJ00j+s4SL3dHXSP6zhIvd0ddI/WrdB7bd20j9at0Htt3bSP1q3Qe23dtI/WrdB7bd20j+zJ4HNOXjSP7Mngc05eNI/oYZvYd140j+hhm9h3XjSP6bxC68kedI/pvELryR50j9V98jmqnnSP1X3yOaqedI/LXqnAu550j8teqcC7nnSPyF00CUcetI/IXTQJRx60j+Ntb+zPXrSP421v7M9etI/uW3fo/560j+5bd+j/nrSP5qWWBmNfNI/mpZYGY180j/6fJQRF4DSP/p8lBEXgNI/SUc5mE2A0j9JRzmYTYDSP4ZwzLIngdI/hnDMsieB0j9ATMKFPILSP0BMwoU8gtI/pMLYQpCD0j+kwthCkIPSP9KqlnSUg9I/0qqWdJSD0j9nRGlv8IXSP2dEaW/whdI/gosVNZiG0j+CixU1mIbSP2YUyy2thtI/ZhTLLa2G0j/B5EaRtYbSP8HkRpG1htI/EK/rF+yG0j8Qr+sX7IbSPxCv6xfshtI/EK/rF+yG0j9rf2d79IbSP2t/Z3v0htI/qdiY1xGH0j+p2JjXEYfSP60Tl+MViNI/rROX4xWI0j+zfjMxXYjSP7N+MzFdiNI/2su209aI0j/ay7bT1ojSPymWW1oNidI/KZZbWg2J0j+xTpXvGYnSP7FOle8ZidI/dQDEXb2K0j91AMRdvYrSP1hZ2xSPi9I/WFnbFI+L0j/T25+LhozSP9Pbn4uGjNI/AMRdvYqM0j8AxF29iozSP0NYjSWsjdI/Q1iNJayN0j+byMwFLo/SP5vIzAUuj9I/RWPt72yP0j9FY+3vbI/SPxZLkXwlkNI/FkuRfCWQ0j+fA8sRMpDSP58DyxEykNI/VHQkl/+Q0j9UdCSX/5DSP60UArnEkdI/rRQCucSR0j++hXXj3ZHSP76FdePdkdI/3ze+9syS0j/fN772zJLSP8crED0pk9I/xysQPSmT0j842JsYkpPSPzjYmxiSk9I/WYrkK4GU0j9ZiuQrgZTSPw8r3PKRlNI/Dyvc8pGU0j9jYB3HD5XSP2NgHccPldI/E2ba/pWV0j8TZtr+lZXSPwzLn28LltI/DMufbwuW0j+wyoXKv5bSP7DKhcq/ltI/OIO/X8yW0j84g79fzJbSPx4X1SKimNI/HhfVIqKY0j+fBDbn4JnSP58ENufgmdI/d4cUAySa0j93hxQDJJrSP1ngK7r1mtI/WeAruvWa0j/mAwKdSZvSP+YDAp1Jm9I/OzlDcceb0j87OUNxx5vSP5YJv9TPm9I/lgm/1M+b0j/1FDlE3JzSP/UUOUTcnNI/cceb/Bad0j9xx5v8Fp3SP9dtUPutndI/121Q+62d0j8EVg4tsp3SPwRWDi2yndI/FceBV8ud0j8Vx4FXy53SP+AT61T5ntI/4BPrVPme0j/e40wTtp/SP97jTBO2n9I/JuMYyR6h0j8m4xjJHqHSPzdUjPM3odI/N1SM8zeh0j/M7V7uk6PSP8ztXu6To9I//0C5bd+j0j//QLlt36PSPzGUE+0qpNI/MZQT7Sqk0j8NUvAUcqXSPw1S8BRypdI/0zO9xFim0j/TM73EWKbSP0lL5e0Ip9I/SUvl7Qin0j8xPzc0ZafSPzE/NzRlp9I/1T4djxmo0j/VPh2PGajSP63B+6pcqNI/rcH7qlyo0j/ICKhwBKnSP8gIqHAEqdI/iH/Y0qOp0j+If9jSo6nSP7U3+MJkqtI/tTf4wmSq0j9wQ4zXvKrSP3BDjNe8qtI/gbT/Adaq0j+BtP8B1qrSP2moUUgyq9I/aahRSDKr0j8eGavN/6vSPx4Zq83/q9I/j8U2qWis0j+PxTapaKzSP2UYd4NordI/ZRh3g2it0j8omgewyK/SPyiaB7DIr9I/NXugFRiy0j81e6AVGLLSPy/gZYaNstI/L+Blho2y0j/ICRNGs7LSP8gJE0azstI/41C/C1uz0j/jUL8LW7PSPxakGYums9I/FqQZi6az0j8EAwgfSrTSPwQDCB9KtNI/jLtBtFa00j+Mu0G0VrTSPxV0e0ljtNI/FXR7SWO00j8TRN0HILXSPxNE3QcgtdI/w0maP6a10j/DSZo/prXSP3nqkQa3tdI/eeqRBre10j8r+64I/rfSPyv7rgj+t9I/DoRkARO40j8OhGQBE7jSPxhanZyhuNI/GFqdnKG40j9hiQeUTbnSP2GJB5RNudI/Sn1Z2qm50j9KfVnaqbnSP3CaPjvgutI/cJo+O+C60j91BduIJ7vSP3UF24gnu9I/PBdGelG70j88F0Z6UbvSP2NkyRzLu9I/Y2TJHMu70j+ERrBx/bvSP4RGsHH9u9I/EmqGVFG80j8SaoZUUbzSP7ZpbK8FvdI/tmlsrwW90j/XS1MEOL3SP9dLUwQ4vdI/JeZZSSu+0j8l5llJK77SP+Hx7V2DvtI/4fHtXYO+0j8O2quPh77SPw7aq4+HvtI//DiaIyu/0j/8OJojK7/SP/WdX5Sgv9I/9Z1flKC/0j+8r8qFyr/SP7yvyoXKv9I/W0QUkzfA0j9bRBSTN8DSPwSvljszwdI/BK+WOzPB0j+AYfnzbcHSP4Bh+fNtwdI/FytqMA3D0j8XK2owDcPSP83LYfcdw9I/zcth9x3D0j8+eO3ShsPSPz547dKGw9I/9BjlmZfD0j/0GOWZl8PSP0PjiSDOw9I/Q+OJIM7D0j+SrS6nBMTSP5KtLqcExNI/SE4mbhXE0j9ITiZuFcTSP+BHNez3xNI/4Ec17PfE0j+jycUYWMfSP6PJxRhYx9I/0bGDSlzH0j/RsYNKXMfSP7h1N091yNI/uHU3T3XI0j+94NOcvMjSP73g05y8yNI/cSGP4EbK0j9xIY/gRsrSP0d0z7pGy9I/R3TPukbL0j+WPnRBfcvSP5Y+dEF9y9I/JGJKJNHL0j8kYkok0cvSPzo+WpwxzNI/Oj5anDHM0j/k2HqGcMzSP+TYeoZwzNI/q+rld5rM0j+r6uV3mszSP+WzPA/uztI/5bM8D+7O0j9G71TAPc/SP0bvVMA9z9I/fa1LjdDP0j99rUuN0M/SPz4kfO9v0NI/PiR872/Q0j/fwyXHndLSP9/DJced0tI/XoHoSZnU0j9egehJmdTSPxPyQc9m1dI/E/JBz2bV0j811CgkmdXSPzXUKCSZ1dI/eJj2zf3V0j94mPbN/dXSP6vrUE1J1tI/q+tQTUnW0j//IJIhx9bSP/8gkiHH1tI/8IrgfyvZ0j/wiuB/K9nSP5+Qnbex2dI/n5Cdt7HZ0j9weEFEatrSP3B4QURq2tI/kloomZza0j+SWiiZnNrSP7yyCwbX3NI/vLILBtfc0j+c24R7Zd7SP5zbhHtl3tI/2NR5VPzf0j/Y1HlU/N/SPy0Kuyh64NI/LQq7KHrg0j9SJ6CJsOHSP1InoImw4dI/hEpcx7ji0j+ESlzHuOLSP2w+rg0V49I/bD6uDRXj0j9NZyeDo+TSP01nJ4Oj5NI/4PWZsz7l0j/g9ZmzPuXSP8np6/ma5dI/yenr+Zrl0j80K9uHvOXSPzQr24e85dI/EOm3rwPn0j8Q6bevA+fSPzLLngQ259I/MsueBDbn0j+28/3UeOnSP7bz/dR46dI/PXyZKELq0j89fJkoQurSPyEFTyFX6tI/IQVPIVfq0j82scBXdOvSPzaxwFd069I/RiI0go3r0j9GIjSCjevSP5+Sc2IP7dI/n5JzYg/t0j9IqBlSRfHSP0ioGVJF8dI/0GBT51Hx0j/QYFPnUfHSPx77WSxF8tI/HvtZLEXy0j9TWRR2UfTSP1NZFHZR9NI/m1jgK7r10j+bWOAruvXSP1ZkdEAS9tI/VmR0QBL20j//zvboDffSP//O9ugN99I/MiJRaFn30j8yIlFoWffSPzQtsTIa+dI/NC2xMhr50j84aK8+HvrSPzhorz4e+tI/WkqWk1D60j9aSpaTUPrSP9XMWgpI+9I/1cxaCkj70j9nKy/5n/zSP2crL/mf/NI/jniymxn90j+OeLKbGf3SP7XFNT6T/dI/tcU1PpP90j+FfTuJCP/SP4V9O4kI/9I/DAbX3NH/0j8MBtfc0f/SP4eIm1PJANM/h4ibU8kA0z/G4cyv5gDTP8bhzK/mANM/f73CgvsB0z9/vcKC+wHTPypY42w6AtM/KljjbDoC0z8ijQqcbAPTPyKNCpxsA9M/fV2G/3QD0z99XYb/dAPTP8WM8PYgBNM/xYzw9iAE0z9j8ZvCSgXTP2Pxm8JKBdM/kNlZ9E4F0z+Q2Vn0TgXTPzlE3JxKBtM/OUTcnEoG0z8zqaENwAbTPzOpoQ3ABtM/K97IPPIH0z8r3sg88gfTPzxPPGcLCNM/PE88ZwsI0z8prir7rgjTPymuKvuuCNM/8L+V7NgI0z/wv5Xs2AjTP1ZmSutvCdM/VmZK628J0z/3BfTCnQvTP/cF9MKdC9M/OsrBbAIM0z86ysFsAgzTP6YLsfojDNM/pgux+iMM0z+3fCQlPQzTP7d8JCU9DNM/wCK/fogN0z/AIr9+iA3TPxvzOuKQDdM/G/M64pAN0z/baWtEMA7TP9tpa0QwDtM//UtSmWIO0z/9S1KZYg7TPwK37uapDtM/Arfu5qkO0z+8kuS5vg/TP7yS5Lm+D9M/fuTWpNsS0z9+5Nak2xLTPxx5ILJIE9M/HHkgskgT0z+elh+4yhPTP56WH7jKE9M/xeOiWkQU0z/F46JaRBTTPzElkuhlFNM/MSWS6GUU0z+LxW8KKxXTP4vFbworFdM/hCo1e6AV0z+EKjV7oBXTP0jcY+lDF9M/SNxj6UMX0z/3sYLfhhjTP/exgt+GGNM/6Etvfy4a0z/oS29/LhrTPzcWFAZlGtM/NxYUBmUa0z9l/tE3aRrTP2X+0TdpGtM/Wfj6Wpca0z9Z+PpalxrTPz2BsFOsGtM/PYGwU6wa0z9BvK5fsBvTP0G8rl+wG9M/fxXgu80b0z9/FeC7zRvTP5pcjIF1HNM/mlyMgXUc0z9hbvdynxzTP2Fu93KfHNM/jSYXY2Ad0z+NJhdjYB3TPyC1iZP7HdM/ILWJk/sd0z8k8Ief/x7TPyTwh5//HtM/gctjzcgg0z+By2PNyCDTP3swKT4+IdM/ezApPj4h0z9i9NxCVyLTP2L03EJXItM/Qx1WuOUj0z9DHVa45SPTP1n5ZTBGJNM/WfllMEYk0z/KpfELryTTP8ql8QuvJNM/fxZLkXwl0z9/FkuRfCXTPwfPhCaJJdM/B8+EJokl0z+9b3ztmSXTP71vfO2ZJdM/wtoYO+El0z/C2hg74SXTP33mrE85JtM/feasTzkm0z8fhlYnZyjTPx+GVidnKNM/Xd+Hg4Qo0z9d34eDhCjTPwHfbd44KdM/Ad9t3jgp0z+aCBueXinTP5oIG55eKdM/IZG28Scq0z8hkbbxJyrTP771Yb1RK9M/vvVhvVEr0z/PZtXnaivTP89m1edqK9M/HzF6bqEr0z8fMXpuoSvTP9o8DoP5K9M/2jwOg/kr0z8Ylj/fFizTPxiWP98WLNM/UFQ2rKks0z9QVDasqSzTP1oqb0c4LdM/WipvRzgt0z9IiV3b2y3TP0iJXdvbLdM/0hxZ+WUw0z/SHFn5ZTDTP5Fj6xnCMdM/kWPrGcIx0z86zm3CvTLTPzrObcK9MtM/UKp9Oh4z0z9Qqn06HjPTPwhW1cvvNNM/CFbVy+800z+z8PW1LjXTP7Pw9bUuNdM/8BmJ0Ag20z/wGYnQCDbTP4lDNpAuNtM/iUM2kC420z8aogp/hjfTPxqiCn+GN9M/4IPXLm040z/gg9cubTjTP7gGtkqwONM/uAa2SrA40z8kSKXY0TjTPyRIpdjRONM/fhghPNo40z9+GCE82jjTP1sGnKVkOdM/WwacpWQ50z9bBpylZDnTP1sGnKVkOdM/ZKw2/6860z9krDb/rzrTP5KU9DC0OtM/kpT0MLQ60z9BmrFoOjvTP0GasWg6O9M/GR2QhH070z8ZHZCEfTvTPxAiGXJsPdM/ECIZcmw90z8TLXk8LT/TPxMteTwtP9M/P+WYLO4/0z8/5Zgs7j/TPwb3Ax4YQNM/BvcDHhhA0z8fDhKifEHTPx8OEqJ8QdM/lKC/0CNG0z+UoL/QI0bTPzM1Cd6QRtM/MzUJ3pBG0z9EpnwIqkbTP0SmfAiqRtM/X+0ozlFH0z9f7SjOUUfTP9yfi4aMR9M/3J+LhoxH0z/lRSbg10jTP+VFJuDXSNM/Z2Ml5llJ0z9nYyXmWUnTP916TQ8KStM/3XpNDwpK0z9AwcWKGkzTP0DBxYoaTNM/RSxi2GFM0z9FLGLYYUzTPzj27LlMTdM/OPbsuUxN0z8rwHebN07TPyvAd5s3TtM/QZyHE5hO0z9BnIcTmE7TP3Tv4ZLjTtM/dO/hkuNO0z+DMLd7uU/TP4Mwt3u5T9M/fnA+daxS0z9+cD51rFLTP/sioS3nUtM/+yKhLedS0z9Uw35PrFPTP1TDfk+sU9M/rmNccXFU0z+uY1xxcVTTP6jIIeLmVNM/qMgh4uZU0z80vFmD91XTPzS8WYP3VdM/3SbcK/NW0z/dJtwr81bTP2XfFcH/VtM/Zd8Vwf9W0z+HwfwVMlfTP4fB/BUyV9M/N8e5TbhX0z83x7lNuFfTP0tzK4TVWNM/S3MrhNVY0z8X8DLDRlnTPxfwMsNGWdM/oKhsWFNZ0z+gqGxYU1nTP0+uKZDZWdM/T64pkNlZ0z8Bv0aSIFzTPwG/RpIgXNM/LEfIQJ5d0z8sR8hAnl3TPwTKplzhXdM/BMqmXOFd0z8OoN/3b17TPw6g3/dvXtM/nMO12sNe0z+cw7Xaw17TP/8JLlbUYNM//wkuVtRg0z9Bnl2+9WHTP0GeXb71YdM/L/1LUpli0z8v/UtSmWLTP8oxWdx/ZNM/yjFZ3H9k0z/9hLNby2TTP/2Es1vLZNM/kBMmjGZl0z+QEyaMZmXTP+MYyR6hZtM/4xjJHqFm0z9PWriswmbTP09auKzCZtM/CmZMwRpn0z8KZkzBGmfTPw6hSs0eaNM/DqFKzR5o0z9/Tdaoh2jTP39N1qiHaNM/twvNdRpp0z+3C811GmnTP6D/Hrx2adM/oP8evHZp0z+22y4012nTP7bbLjTXadM/bVfog2Vs0z9tV+iDZWzTPwvsMZHSbNM/C+wxkdJs0z+13JkJhnPTP7XcmQmGc9M/xk0NNJ9z0z/GTQ00n3PTP8ZNDTSfc9M/xk0NNJ9z0z/mz7cFS3XTP+bPtwVLddM/2sngKHl10z/ayeAoeXXTP/UQje4gdtM/9RCN7iB20z8j+UogJXbTPyP5SiAldtM/jjo6rkZ20z+OOjquRnbTP+kKthFPdtM/6Qq2EU920z8b2ZWWkXrTPxvZlZaRetM/U5eMYyR70z9Tl4xjJHvTPwk4hCo1e9M/CTiEKjV70z9Uck7soX3TP1RyTuyhfdM/dy/3yVGA0z93L/fJUYDTP4qryr4rgtM/iqvKviuC0z8HXi13ZoLTPwdeLXdmgtM/AcPy59uC0z8Bw/Ln24LTPy17Eticg9M/LXsS2JyD0z9wP+CBAYTTP3A/4IEBhNM/YwlrY+yE0z9jCWtj7ITTPwKetHBZhdM/Ap60cFmF0z9hqS7gZYbTP2GpLuBlhtM/B7R0BduI0z8HtHQF24jTP5pC5zV2idM/mkLnNXaJ0z/LZaNzforTP8tlo3N+itM/PBIvT+eK0z88Ei9P54rTP8o1BTI7i9M/yjUFMjuL0z+l8+FZgozTP6Xz4VmCjNM/fXbAdcWM0z99dsB1xYzTPy+H3XcMj9M/L4fddwyP0z9QOSaL+4/TP1A5Jov7j9M/oz7JHTaR0z+jPskdNpHTP9icg2dCk9M/2JyDZ0KT0z900ZDxKJXTP3TRkPEoldM/O+P74lKV0z874/viUpXTP8ObNXhfldM/w5s1eF+V0z+gibDh6ZXTP6CJsOHpldM/lIPZBBiW0z+Ug9kEGJbTPwubAS7IltM/C5sBLsiW0z+14EVfQZrTP7XgRV9BmtM/soAJ3Lqb0z+ygAncupvTP7r2BfTCndM/uvYF9MKd0z/o3sMlx53TP+jewyXHndM/AfbRqSuf0z8B9tGpK5/TPyKoGr0aoNM/IqgavRqg0z/yXyAIkKHTP/JfIAiQodM/f4P26uOh0z9/g/bq46HTP3nou1tZotM/eei7W1mi0z8jg9xFmKLTPyOD3EWYotM/BwySPq2i0z8HDJI+raLTP/RqgNJQo9M/9GqA0lCj0z9grG9gcqPTP2Csb2Byo9M/nwWhvI+j0z+fBaG8j6PTP9FY+zvbo9M/0Vj7O9uj0z9jt88qM6XTP2O3zyozpdM/fv578Nql0z9+/nvw2qXTP9DTgEHSp9M/0NOAQdKn0z9p/S0B+KfTP2n9LQH4p9M/PiDQmbSp0z8+INCZtKnTP6bR5GIMrNM/ptHkYgys0z+orKbria7TP6ispuuJrtM/rRdDOdGu0z+tF0M50a7TP0CmtWlsr9M/QKa1aWyv0z9hiJy+nq/TP2GInL6er9M/sVJBRdWv0z+xUkFF1a/TP9ifxOdOsNM/2J/E506w0z+6+NueILHTP7r4254gsdM/mfG20muz0z+Z8bbSa7PTP0+Srpl8s9M/T5KumXyz0z+kx+9t+rPTP6TH7236s9M/jLtBtFa00z+Mu0G0VrTTP3Wvk/qytNM/da+T+rK00z9zf/W4b7XTP3N/9bhvtdM/2SWqtwa20z/ZJaq3BrbTP5QxPsxettM/lDE+zF620z8R5KCEmbbTPxHkoISZttM/yY/4FWu40z/Jj/gVa7jTP5UMAFXcuNM/lQwAVdy40z+xU6wahLnTP7FTrBqEudM/MnGrIAa60z8ycasgBrrTPzJxqyAGutM/MnGrIAa60z9xytx8I7rTP3HK3HwjutM/e6AVGLK60z97oBUYsrrTP6dYNQhzu9M/p1g1CHO70z98e9egL73TP3x716AvvdM/VwkWhzO/0z9XCRaHM7/TP2h6ibFMv9M/aHqJsUy/0z8c6+I2GsDTPxzr4jYawNM/YK+w4H7A0z9gr7DgfsDTPw6Fz9bBwdM/DoXP1sHB0z8tB3qobcPTPy0Heqhtw9M/N92yQ/zD0z833bJD/MPTPxJr8SkAxtM/EmvxKQDG0z/+mUF8YMfTP/6ZQXxgx9M/68iRzsDI0z/ryJHOwMjTP/w5BfnZyNM//DkF+dnI0z/52ch1U8rTP/nZyHVTytM/5zi3CffK0z/nOLcJ98rTPyWS6GUUy9M/JZLoZRTL0z/EJjJzgcvTP8QmMnOBy9M/AVDFjVvM0z8BUMWNW8zTPwWLw5lfzdM/BYvDmV/N0z8K9l/nps3TPwr2X+emzdM/TIqPT8jO0z9Mio9PyM7TPyyDaoMT0dM/LINqgxPR0z8yychZ2NPTPzLJyFnY09M/o3VUNUHU0z+jdVQ1QdTTP7Tmx19a1NM/tObHX1rU0z8Oh6WBH9XTPw6HpYEf1dM/zv3V477V0z/O/dXjvtXTP450BkZe1tM/jnQGRl7W0z93aFiMutbTP3doWIy61tM/lxqhn6nX0z+XGqGfqdfTP14sDJHT19M/XiwMkdPX0z8kDtlAutjTPyQO2UC62NM/HXOesS/Z0z8dc56xL9nTPwQ3UrZI2tM/BDdStkja0z8+0AoMWd3TPz7QCgxZ3dM/QQsJGF3e0z9BCwkYXd7TPynPvBx239M/Kc+8HHbf0z/6tmCpLuDTP/q2YKku4NM/EJNwIY/g0z8Qk3Ahj+DTPwNd+wJ64dM/A137Anrh0z8peuBjsOLTPyl64GOw4tM/pPyk2qfj0z+k/KTap+PTP/PGSWHe49M/88ZJYd7j0z+v0t11NuTTP6/S3XU25NM/i8BY38Dk0z+LwFjfwOTTP+Y7+IkD6NM/5jv4iQPo0z8UJLa7B+jTPxQktrsH6NM/L2tiga/o0z8va2KBr+jTP14u4jsx69M/Xi7iOzHr0z8W2jnNAu3TPxbaOc0C7dM/UtMuppnu0z9S0y6mme7TP9TwLawb79M/1PAtrBvv0z80LEZda+/TPzQsRl1r79M/ePATB9Dv0z948BMH0O/TP3FV2XdF8NM/cVXZd0Xw0z890uC2tvDTPz3S4La28NM/SrN5HAbz0z9Ks3kcBvPTP0QYP41789M/RBg/jXvz0z/qIoWy8PXTP+oihbLw9dM/jiJrDaX20z+OImsNpfbTP2sQ5nYv99M/axDmdi/30z+GV5I81/fTP4ZXkjzX99M/3sfRHFn50z/ex9EcWfnTP3r83qY/+9M/evzepj/70z+5VRADXfvTP7lVEANd+9M/oUliSbn70z+hSWJJufvTPzlDcceb/NM/OUNxx5v80z/cErngDP7TP9wSueAM/tM/hq3Zykv+0z+GrdnKS/7TPwjL2NDN/tM/CMvY0M3+0z9jm1Q01v7TP2ObVDTW/tM/w9Zs5SX/0z/D1mzlJf/TPx13Sgfr/9M/HXdKB+v/0z8fgqrRqwHUPx+CqtGrAdQ/uatXkdEB1D+5q1eR0QHUPwyx+iMMA9Q/DLH6IwwD1D+l2qfjMQPUP6Xap+MxA9Q/0sJlFTYD1D/SwmUVNgPUPwqBXOLIA9Q/CoFc4sgD1D/rqdVXVwXUP+up1VdXBdQ/1J0nnrMF1D/UnSeeswXUP1D7rZ0oCdQ/UPutnSgJ1D/eHoSAfAnUP94ehIB8CdQ/6PS8GwsK1D/o9LwbCwrUP1t8CoDxDNQ/W3wKgPEM1D+Nz2T/PA3UP43PZP88DdQ/6J/gYkUN1D/on+BiRQ3UP0JAvoQKDtQ/QkC+hAoO1D+hSzj0Fg/UP6FLOPQWD9Q/KQRyiSMP1D8pBHKJIw/UPyI5mbhVENQ/IjmZuFUQ1D+e6/twkBDUP57r+3CQENQ/Uwd5PZgU1D9TB3k9mBTUP+AqTyDsFNQ/4CpPIOwU1D8WiQlq+BbUPxaJCWr4FtQ/r7K2KR4X1D+vsrYpHhfUP1ftmpDWGNQ/V+2akNYY1D+rItxkVBnUP6si3GRUGdQ/PYGwU6wa1D89gbBTrBrUP6nCn+HNGtQ/qcKf4c0a1D9inpW04hvUP2KelbTiG9Q/KbAApgwc1D8psACmDBzUP0uS5/o+HNQ/S5Ln+j4c1D9PzeUGQx3UP0/N5QZDHdQ/h4vc09Ud1D+Hi9zT1R3UP+JbWDfeHdQ/4ltYN94d1D8xJv29FB7UPzEm/b0UHtQ/4Cu69Zoe1D/gK7r1mh7UP5WcE3toH9Q/lZwTe2gf1D/oTNpU3SPUP+hM2lTdI9Q/OiLfpdQl1D86It+l1CXUPzfCoiJOJ9Q/N8KiIk4n1D9WRE30+SjUP1ZETfT5KNQ/kN0FSgos1D+Q3QVKCizUP7yVJTrLLNQ/vJUlOsss1D+6ZYf4hy3UP7plh/iHLdQ/Jqd2hqkt1D8mp3aGqS3UP+GyCpsBLtQ/4bIKmwEu1D8ogjgPJzDUPyiCOA8nMNQ/X0Av3Lkw1D9fQC/cuTDUP9/98V61MtQ/3/3xXrUy1D882c2MfjTUPzzZzYx+NNQ/s/D1tS411D+z8PW1LjXUP3NnJhjONdQ/c2cmGM411D90QuigSzjUP3RC6KBLONQ/KuPfZ1w41D8q499nXDjUP1jLnZlgONQ/WMudmWA41D+WJM/1fTjUP5Ykz/V9ONQ/JEil2NE41D8kSKXY0TjUP4SDvYkhOdQ/hIO9iSE51D+Eg72JITnUP4SDvYkhOdQ/3SObq+Y51D/dI5ur5jnUP0pATMKFPNQ/SkBMwoU81D9sIjMXuDzUP2wiMxe4PNQ/ECIZcmw91D8QIhlybD3UP3xjCACOPdQ/fGMIAI491D86evzepj/UPzp6/N6mP9Q/RFA1ejVA1D9EUDV6NUDUP4F5yJQPQdQ/gXnIlA9B1D9Z/KawUkHUP1n8prBSQdQ/D52ed2NB1D8PnZ53Y0HUP9WuCWmNQdQ/1a4JaY1B1D/DDfj8MELUP8MN+PwwQtQ/2LlpM05D1D/YuWkzTkPUP9DukGKARNQ/0O6QYoBE1D9sI57sZkbUP2wjnuxmRtQ/dvnWh/VG1D92+daH9UbUP6fs9IO6SNQ/p+z0g7pI1D/U1LK1vkjUP9TUsrW+SNQ/fepYpfRM1D996lil9EzUPxB5y9WPTdQ/EHnL1Y9N1D/c9dIUAU7UP9z10hQBTtQ/4WBvYkhO1D/hYG9iSE7UP02iXvBpTtQ/TaJe8GlO1D/Pv132607UP8+/XfbrTtQ/4DDRIAVP1D/gMNEgBU/UPw0Zj1IJT9Q/DRmPUglP1D+77q1ITFDUP7vurUhMUNQ/dvpBXaRQ1D92+kFdpFDUP1/uk6MAUdQ/X+6TowBR1D80ETY8vVLUPzQRNjy9UtQ/RFILJZNT1D9EUgslk1PUP8AEbt3NU9Q/wARu3c1T1D9N+KV+3lTUP034pX7eVNQ/UTOkiuJV1D9RM6SK4lXUP9EgBU8hV9Q/0SAFTyFX1D+QZ5dvfVjUP5Bnl299WNQ/VklkH2RZ1D9WSWQfZFnUP9yhYTHqWtQ/3KFhMepa1D/DZRU2A1zUP8NlFTYDXNQ/q1lnfF9c1D+rWWd8X1zUPxvWVBaFXdQ/G9ZUFoVd1D9aL4Zyol3UP1ovhnKiXdQ/Olj/5zBf1D86WP/nMF/UPyIcs+xJYNQ/Ihyz7Elg1D9MpDSbx2HUP0ykNJvHYdQ/yjFZ3H9k1D/KMVncf2TUP4B9dOrKZ9Q/gH106spn1D/xKQDGM2jUP/EpAMYzaNQ/vHZpw2Fp1D+8dmnDYWnUP+f+6nHfatQ/5/7qcd9q1D8kKH6MuWvUPyQofoy5a9Q/ucFQhxVu1D+5wVCHFW7UP8SXiSKkbtQ/xJeJIqRu1D8WbY5zm3DUPxZtjnObcNQ/VMa/z7hw1D9Uxr/PuHDUP5UqUfaWctQ/lSpR9pZy1D8d44qLo3LUPx3jioujctQ/FOgTeZJ01D8U6BN5knTUP5twr8xbddQ/m3CvzFt11D/OwwlMp3XUP87DCUynddQ/CY1g4/p31D8JjWDj+nfUP3TOT3EceNQ/dM5PcRx41D+kwW1t4XnUP6TBbW3hedQ/Pbt868N61D89u3zrw3rUP8mutIzUe9Q/ya60jNR71D9trprniHzUP22umueIfNQ/xk54CU591D/GTngJTn3UP9Rfr7DgftQ/1F+vsOB+1D8gmnlyTYHUPyCaeXJNgdQ/26UNh6WB1D/bpQ2HpYHUP3+l8+FZgtQ/f6Xz4VmC1D9LIvsgy4LUP0si+yDLgtQ/jbYqieyD1D+NtiqJ7IPUP/0yGCMShdQ//TIYIxKF1D+gMv59xoXUP6Ay/n3GhdQ/ZeQs7GmH1D9l5CzsaYfUP9v7VBUaiNQ/2/tUFRqI1D+bcoV3uYjUP5tyhXe5iNQ/o+iBj8GK1D+j6IGPwYrUP/KyJhb4itQ/8rImFviK1D+RR3AjZYvUP5FHcCNli9Q/09ufi4aM1D/T25+LhozUPz7t8NdkjdQ/Pu3w12SN1D+eKAmJtI3UP54oCYm0jdQ/1ub/VUeO1D/W5v9VR47UPwPPvYdLjtQ/A8+9h0uO1D9i2jf3V4/UP2LaN/dXj9Q/gjekUYGT1D+CN6RRgZPUPz1DOGbZk9Q/PUM4ZtmT1D9NhA1Pr5TUP02EDU+vlNQ/d9zwu+mW1D933PC76ZbUP0jElEiil9Q/SMSUSKKX1D/ZImk3+pjUP9kiaTf6mNQ/6WM+INCZ1D/pYz4g0JnUP4KN69/1mdQ/go3r3/WZ1D/uztptF5rUP+7O2m0XmtQ/Iv32deCc1D8i/fZ14JzUP44+5gMCndQ/jj7mAwKd1D/rGcIxy57UP+sZwjHLntQ/xqcAGM+g1D/GpwAYz6DUP6kwthDkoNQ/qTC2EOSg1D+GHjF6bqHUP4YeMXpuodQ/H0jeOZSh1D8fSN45lKHUPxCyLJj4o9Q/ELIsmPij1D8aiGUzh6TUPxqIZTOHpNQ/0Chd+pek1D/QKF36l6TUP/DapQ2HpdQ/8NqlDYel1D9fJ/VlaafUP18n9WVpp9Q/WIy61t6n1D9YjLrW3qfUP0n2CDVDqtQ/SfYINUOq1D+dK0oJwarUP50rSgnBqtQ/N1X3yOaq1D83VffI5qrUP8/5KY4Dr9Q/z/kpjgOv1D+kHMwmwLDUP6QczCbAsNQ/8+Zwrfaw1D/z5nCt9rDUP4Z1492RsdQ/hnXj3ZGx1D9LV7CNeLLUP0tXsI14stQ/uqP/5Vq01D+6o//lWrTUP8sUcxB0tNQ/yxRzEHS01D9uFFlrKLXUP24UWWsotdQ/msx4W+m11D+azHhb6bXUPwx5BDdSttQ/DHkEN1K21D//Qo8YPbfUP/9Cjxg9t9Q/br98smK41D9uv3yyYrjUP3ugFRiyutQ/e6AVGLK61D/4UnjQ7LrUP/hSeNDsutQ/hnZOs0C71D+Gdk6zQLvUP700RYDTu9Q/vTRFgNO71D8yHM9nQL3UPzIcz2dAvdQ/LIGU2LW91D8sgZTYtb3UP61u9Zz0vtQ/rW71nPS+1D8BpDZxcr/UPwGkNnFyv9Q/vYqMDkjC1D+9iowOSMLUP3dmguFcw9Q/d2aC4VzD1D980R4vpMPUP3zRHi+kw9Q/MnIW9rTD1D8ychb2tMPUP73g05y8yNQ/veDTnLzI1D8hAg6hSs3UPyECDqFKzdQ/PUm6ZvLN1D89Sbpm8s3UP52E0hdCztQ/nYTSF0LO1D/4VE57Ss7UP/hUTntKztQ/cqd0sP7P1D9yp3Sw/s/UP3tNDwpK0dQ/e00PCkrR1D+KjuTyH9LUP4qO5PIf0tQ/h/4JLlbU1D+H/gkuVtTUPyAot+171NQ/ICi37XvU1D8H7GrylNXUPwfsavKU1dQ/xjL9EvHW1D/GMv0S8dbUPx1znrEv2dQ/HXOesS/Z1D/HDb+bbtnUP8cNv5tu2dQ/Mh8Q6Eza1D8yHxDoTNrUP+hqK/aX3dQ/6Gor9pfd1D9qiCr8Gd7UP2qIKvwZ3tQ/TRHg9C7e1D9NEeD0Lt7UPwr4NZIE4dQ/Cvg1kgTh1D/QCaGDLuHUP9AJoYMu4dQ/0Amhgy7h1D/QCaGDLuHUP2ajc36K49Q/ZqNzforj1D+SW5NuS+TUP5Jbk25L5NQ/FHmSdM3k1D8UeZJ0zeTUP3e/CvDd5tQ/d78K8N3m1D+pEmVvKefUP6kSZW8p59Q/1/oioS3n1D/X+iKhLefUP2hZ94+F6NQ/aFn3j4Xo1D/ZBYNr7ujUP9kFg2vu6NQ/iQtAo3Tp1D+JC0CjdOnUPwa+oluv6dQ/Br6iW6/p1D/SOqqaIOrUP9I6qpog6tQ/ZqTeUznt1D9mpN5TOe3UP9lbyvli79Q/2VvK+WLv1D8YtftVgO/UPxi1+1WA79Q/0ZDxKJXw1D/RkPEolfDUP0M9fQT+8NQ/Qz19BP7w1D+Pp+UHrvLUP4+n5Qeu8tQ/hXzQs1n11D+FfNCzWfXUP9qM0xBV+NQ/2ozTEFX41D/qzaj5KvnUP+rNqPkq+dQ/iWLyBpj51D+JYvIGmPnUPxmRKLSs+9Q/GZEotKz71D87cw8J3/vUPztzDwnf+9Q/zNHj9zb91D/M0eP3Nv3UP2tmLQWk/dQ/a2YtBaT91D8qrb8lAP/UPyqtvyUA/9Q/eEfGavP/1D94R8Zq8//UP44j1uJTANU/jiPW4lMA1T/WUkDa/wDVP9ZSQNr/ANU//G8lOzYC1T/8byU7NgLVP54/bVSnA9U/nj9tVKcD1T+o5Qeu8gTVP6jlB67yBNU/tybdlsgF1T+3Jt2WyAXVP0q1T8djBtU/SrVPx2MG1T/dQ8L3/gbVP91Dwvf+BtU/QbrYtFII1T9Buti0UgjVP8lyEkpfCNU/yXISSl8I1T8jE/BrJAnVPyMT8GskCdU/6iRbXU4J1T/qJFtdTgnVP+OJIM7DCdU/44kgzsMJ1T8FbAcj9gnVPwVsByP2CdU/ahK8IY0K1T9qErwhjQrVP6t2TUhrDNU/q3ZNSGsM1T/ZXgt6bwzVP9leC3pvDNU/2V4Lem8M1T/ZXgt6bwzVP5zgm6bPDtU/nOCbps8O1T85RUdy+Q/VPzlFR3L5D9U/lBXD1QEQ1T+UFcPVARDVP9Ju9DEfENU/0m70MR8Q1T8gtB6+TBTVPyC0Hr5MFNU/JR+7C5QU1T8lH7sLlBTVP+RlTSzwFdU/5GVNLPAV1T/I7gIlBRbVP8juAiUFFtU/+IxEaAQb1T/4jERoBBvVPyMVxhaCHNU/IxXGFoIc1T8JqdvZVx7VPwmp29lXHtU/aeTziqce1T9p5POKpx7VPylbJO1GH9U/KVsk7UYf1T9tH/KWqx/VP20f8parH9U/22tB740h1T/ba0HvjSHVP4UGYtnMIdU/hQZi2cwh1T9L6C6JsyLVP0voLomzItU/nx1wXTEj1T+fHXBdMSPVP8Zq8/+qI9U/xmrz/6oj1T+H4SNiSiTVP4fhI2JKJNU/rP4Iw4Al1T+s/gjDgCXVPy4cCMkCJtU/LhwIyQIm1T9uUPutnSjVP25Q+62dKNU/mzi536Eo1T+bOLnfoSjVP3O7l/vkKNU/c7uX++Qo1T9tIF1sWinVP20gXWxaKdU/m+PcJtwr1T+b49wm3CvVP2HFqdbCLNU/YcWp1sIs1T/u6H+5Fi3VP+7of7kWLdU/RSkhWFUv1T9FKSFYVS/VP5peYizTL9U/ml5iLNMv1T/LgR5q2zDVP8uBHmrbMNU/D0bsE0Ax1T8PRuwTQDHVP7QglPdxNNU/tCCU93E01T/PZ0C9GTXVP89nQL0ZNdU/GJeqtMU11T8Yl6q0xTXVP9OiPskdNtU/06I+yR021T8G9phIaTbVPwb2mEhpNtU/yqfHtgw41T/Kp8e2DDjVP0T67evAOdU/RPrt68A51T8A4UOJljzVPwDhQ4mWPNU/MNRhhVs+1T8w1GGFWz7VP+VEuwopP9U/5US7Cik/1T9nYroQqz/VP2diuhCrP9U/eNMtO8Q/1T940y07xD/VP4lEoWXdP9U/iUShZd0/1T8LYqBrX0DVPwtioGtfQNU/liU6yyxC1T+WJTrLLELVP1Exzt+EQtU/UTHO34RC1T8uH0lJD0PVPy4fSUkPQ9U/9TC0OjlD1T/1MLQ6OUPVPw9Iwr6dRNU/D0jCvp1E1T/CiH0CKEbVP8KIfQIoRtU/Tfc6qS9L1T9N9zqpL0vVPzXrjO+LS9U/NeuM74tL1T+sArUYPEzVP6wCtRg8TNU/pDfcR25N1T+kN9xHbk3VP0g3wqIiTtU/SDfCoiJO1T9Nol7waU7VP02iXvBpTtU/V3iXi/hO1T9XeJeL+E7VP+5BCMiXUNU/7kEIyJdQ1T8Vj4tqEVHVPxWPi2oRUdU/Ab7bvHFS1T8Bvtu8cVLVP0RSCyWTU9U/RFILJZNT1T8QzxJkBFTVPxDPEmQEVNU/WP58W7BU1T9Y/nxbsFTVP0HyzqEMVdU/QfLOoQxV1T/PFaWEYFXVP88VpYRgVdU/Uz4EVaNX1T9TPgRVo1fVPzwyVpv/V9U/PDJWm/9X1T9gH5268lnVP2AfnbryWdU/ur963Lda1T+6v3rct1rVP+VH/Io1XNU/5Uf8ijVc1T8KZeHra13VPwpl4etrXdU/v9U6cTle1T+/1TpxOV7VP2hAvRk1X9U/aEC9GTVf1T/B4Jo7+l/VP8Hgmjv6X9U/HLEWnwJg1T8csRafAmDVP8gm+RG/YtU/yCb5Eb9i1T9Q3zKny2LVP1DfMqfLYtU/8656wDxk1T/zrnrAPGTVP8kBu5o8ZdU/yQG7mjxl1T9SuvQvSWXVP1K69C9JZdU/vMtFfCdm1T+8y0V8J2bVP/skd9hEZtU/+yR32ERm1T+Ns+kI4GbVP42z6QjgZtU/48PsZdtp1T/jw+xl22nVP4aTNH9Ma9U/hpM0f0xr1T/DvMeZJmzVP8O8x5kmbNU/F/IIbqRs1T8X8ghupGzVP96ul6YIcNU/3q6Xpghw1T9lNzP60XDVP2U3M/rRcNU/exNDcjJx1T97E0NyMnHVP0qbqntkc9U/Spuqe2Rz1T/+tidIbHfVP/62J0hsd9U/OrAcIQN51T86sBwhA3nVP4hKI2b2edU/iEojZvZ51T/cf2Q6dHrVP9x/ZDp0etU/D9O+ub961T8P0765v3rVP9+KxAQ1fNU/34rEBDV81T86W0BoPXzVPzpbQGg9fNU/ak5eZAJ+1T9qTl5kAn7VP0Chnj4Cf9U/QKGePgJ/1T83pics8YDVPzemJyzxgNU/3+ALk6mC1T/f4AuTqYLVP6tdE9Iag9U/q10T0hqD1T9i2cwhqYXVP2LZzCGphdU/LlbUYBqG1T8uVtRgGobVP2YUyy2thtU/ZhTLLa2G1T+bcoV3uYjVP5tyhXe5iNU/yVpDqb2I1T/JWkOpvYjVP2ZqErwhjdU/ZmoSvCGN1T8AGqVL/5LVPwAapUv/ktU/x4FXy52Z1T/HgVfLnZnVP5t0WyIXnNU/m3RbIhec1T9IGtzWFp7VP0ga3NYWntU/b2dfeZCe1T9vZ195kJ7VP5BJRs7CntU/kElGzsKe1T8ZraOqCaLVPxmto6oJotU/UkZcABql1T9SRlwAGqXVP5YKKqp+pdU/lgoqqn6l1T/9uz5z1qfVP/27PnPWp9U/XvdWJCao1T9e91YkJqjVP61sH/KWq9U/rWwf8par1T8o7+NojqzVPyjv42iOrNU/whiRKLSs1T/CGJEotKzVPxZO0vwxrdU/Fk7S/DGt1T83ABsQIa7VPzcAGxAhrtU/voi2Y+qu1T++iLZj6q7VP22Oc5twr9U/bY5zm3Cv1T84hgDg2LPVPziGAODYs9U//RLx1vm31T/9EvHW+bfVP3Y1ecpqutU/djV5ymq61T8GZK93f7zVPwZkr3d/vNU/10tTBDi91T/XS1MEOL3VP3bgnBGlvdU/duCcEaW91T9ZaVIKur3VP1lpUgq6vdU/EsDN4sXC1T8SwM3ixcLVP+pCrP4Iw9U/6kKs/gjD1T+QTfIjfsXVP5BN8iN+xdU/NE3YfjLG1T80Tdh+MsbVP6g0Ymafx9U/qDRiZp/H1T9pq5LIPsjVP2mrksg+yNU/8Il1qnzP1T/wiXWqfM/VPzz03a0s0dU/PPTdrSzR1T/YKOs3E9PVP9go6zcT09U/d700RYDT1T93vTRFgNPVP1FLcyuE1dU/UUtzK4TV1T+r61BNSdbVP6vrUE1J1tU/T+s2qP3W1T9P6zao/dbVP0hQ/Bhz19U/SFD8GHPX1T9UAfc8f9rVP1QB9zx/2tU/9wDdlzPb1T/3AN2XM9vVP6cGms+529U/pwaaz7nb1T+VZYhjXdzVP5VliGNd3NU/XoJTH0je1T9eglMfSN7VP3nJ/+Tv3tU/ecn/5O/e1T8Cgjl6/N7VPwKCOXr83tU/kYDR5c3h1T+RgNHlzeHVPxoUzQNY5NU/GhTNA1jk1T9uGXCWkuXVP24ZcJaS5dU/38X7cfvl1T/fxftx++XVP1pIwOjy5tU/WkjA6PLm1T9HdxA7U+jVP0d3EDtT6NU/BWnGouns1T8Facai6ezVP/xtT5DY7tU//G1PkNju1T/qzD0kfO/VP+rMPSR879U/08CPatjv1T/TwI9q2O/VPxhgH5268tU/GGAfnbry1T/3WPrQBfXVP/dY+tAF9dU/2uGvyRr11T/a4a/JGvXVPzWyKy0j9dU/NbIrLSP11T9gOq3boPbVP2A6rdug9tU/uwopP6n21T+7Cik/qfbVP8B1xYzw9tU/wHXFjPD21T9S1Jl7SPjVP1LUmXtI+NU/EcZP49781T8Rxk/j3vzVP+Kt82+X/dU/4q3zb5f91T+pv15hwf3VP6m/XmHB/dU/1Xd+UYL+1T/Vd35Rgv7VP38SnzvB/tU/fxKfO8H+1T+flEkNbQDWP5+USQ1tANY/dhcoKbAA1j92FygpsADWPw4RN6eSAdY/DhE3p5IB1j/ymeyfpwHWP/KZ7J+nAdY/x7yOOGQD1j/HvI44ZAPWP+UOm8jMBdY/5Q6byMwF1j8tPgXAeAbWPy0+BcB4BtY/91rQe2MI1j/3WtB7YwjWPz0q/u+ICtY/PSr+74gK1j8Bh1ClZg/WPwGHUKVmD9Y/TyFX6lkQ1j9PIVfqWRDWP8PYQpCDEtY/w9hCkIMS1j8/i6VIvhLWPz+LpUi+EtY/tqLNcW4T1j+2os1xbhPWPw4TDVLwFNY/DhMNUvAU1j96VPzfERXWP3pU/N8RFdY/nRGlvcEX1j+dEaW9wRfWP0q3JXLBGdY/SrclcsEZ1j/dRZiiXBrWP91FmKJcGtY/G5/J/nka1j8bn8n+eRrWP/g3aK8+HtY/+Ddorz4e1j8LX1/rUiPWPwtfX+tSI9Y/2xZlNsgk1j/bFmU2yCTWP5uNlZhnJdY/m42VmGcl1j8zh6QWSibWPzOHpBZKJtY/IGEYsOQq1j8gYRiw5CrWP4bijjf5LdY/huKON/kt1j+AR1Sobi7WP4BHVKhuLtY/L00R4PQu1j8vTRHg9C7WP8KGp1fKMtY/woanV8oy1j+fdCLBVDPWP590IsFUM9Y/s/D1tS411j+z8PW1LjXWP04lA0AVN9Y/TiUDQBU31j/kvtU6cTnWP+S+1TpxOdY/UADFyJI51j9QAMXIkjnWP1XBqKROQNY/VcGopE5A1j83GsBbIEHWPzcawFsgQdY/lnuBWaFI1j+We4FZoUjWP09Xdyy2SdY/T1d3LLZJ1j+uYvGbwkrWP65i8ZvCStY/0O/7Ny9O1j/Q7/s3L07WP7X+lgD8U9Y/tf6WAPxT1j+6aTNOQ1TWP7ppM05DVNY/95LGaB1V1j/3ksZoHVXWP6aYg6CjVdY/ppiDoKNV1j+KzFzg8ljWP4rMXODyWNY/sRnggmxZ1j+xGeCCbFnWPxr7ko0HW9Y/GvuSjQdb1j+oHmlwW1vWP6geaXBbW9Y/hxdEpKZd1j+HF0Skpl3WP5zDtdrDXtY/nMO12sNe1j8KEAUzpmDWPwoQBTOmYNY/HFw65jxj1j8cXDrmPGPWPyLH1jOEY9Y/IsfWM4Rj1j8VkWEVb2TWPxWRYRVvZNY/K21xjc9k1j8rbXGNz2TWPxjMXyFzZdY/GMxfIXNl1j9FhH8RNGbWP0WEfxE0ZtY/W2CPiZRm1j9bYI+JlGbWP1OVtrjGZ9Y/U5W2uMZn1j9FL6NYbmnWP0Uvo1huadY/KZMa2gBs1j8pkxraAGzWP0J6ihwibtY/QnqKHCJu1j/36uOh727WP/fq46HvbtY/EjKQZ5dv1j8SMpBnl2/WP7ucEhCTcNY/u5wSEJNw1j9OK4VALnHWP04rhUAucdY/ke9S6pJx1j+R71LqknHWP0vLSL2nctY/S8tIvady1j9VoYFYNnPWP1WhgVg2c9Y/ksoUcxB01j+SyhRzEHTWP+bPtwVLddY/5s+3BUt11j9IFjCBW3fWP0gWMIFbd9Y/dM5PcRx41j90zk9xHHjWPy5VaYtrfNY/LlVpi2t81j+op4/AH37WP6inj8AfftY/s33IW65+1j+zfchbrn7WP9L/ci1agNY/0v9yLVqA1j98mpMXmYDWP3yakxeZgNY/avmBqzyB1j9q+YGrPIHWP29kHvmDgdY/b2Qe+YOB1j9iLqnaboLWP2IuqdpugtY/SfJc34eD1j9J8lzfh4PWPzYhrTHohNY/NiGtMeiE1j/qPCr+74jWP+o8Kv7viNY/iEz5EFSN1j+ITPkQVI3WP4Fc4sgDkdY/gVziyAOR1j96bMuAs5TWP3psy4CzlNY/rI+HvruV1j+sj4e+u5XWP9wtyQG7mtY/3C3JAbua1j+nejL/6JvWP6d6Mv/om9Y/GCe+2lGc1j8YJ77aUZzWP3P3OT5anNY/c/c5Plqc1j9iMepae5/WP2Ix6lp7n9Y/5E7pYP2f1j/kTulg/Z/WP78MxohEodY/vwzGiESh1j+/DMaIRKHWP78MxohEodY/WTZzSGqh1j9ZNnNIaqHWP3VY4ZaPpNY/dVjhlo+k1j+qYb8n1qnWP6phvyfWqdY/2El9Wdqp1j/YSX1Z2qnWP6/MW3UdqtY/r8xbdR2q1j9oeLMG76vWP2h4swbvq9Y/9Gvrp/+s1j/0a+un/6zWP/ZGrTB9r9Y/9katMH2v1j9+/+bFia/WP37/5sWJr9Y/XyhgOxix1j9fKGA7GLHWP7eYnxuastY/t5ifG5qy1j/ICRNGs7LWP8gJE0azstY/+PwwQni01j/4/DBCeLTWPw2poniVtdY/DamieJW11j+MZmX7kLfWP4xmZfuQt9Y/uk4jLZW31j+6TiMtlbfWP7Oz6J0KuNY/s7PonQq41j+hEtcxrrjWP6ES1zGuuNY/enB31m671j96cHfWbrvWP0tZhjjWxdY/S1mGONbF1j/4/gbt1cfWP/j+Bu3Vx9Y/7PgvEATI1j/s+C8QBMjWP7h1N091yNY/uHU3T3XI1j+1FfvL7snWP7UV+8vuydY/cvxQacTM1j9y/FBpxMzWP2ms/Z3t0dY/aaz9ne3R1j+94T5ya9LWP73hPnJr0tY/EOfhBKbT1j8Q5+EEptPWPybD8XwG1NY/JsPxfAbU1j+etdsuNNfWP5612y4019Y/hqktdZDX1j+GqS11kNfWP+sfRDLk2NY/6x9EMuTY1j+N74tLVdrWP43vi0tV2tY/hSSzeofb1j+FJLN6h9vWP12nkZbK29Y/XaeRlsrb1j+05zI1Cd7WP7TnMjUJ3tY/R3alZaTe1j9HdqVlpN7WP1vNOuP74tY/W8064/vi1j+nBwWlaOXWP6cHBaVo5dY/wvnUsUrp1j/C+dSxSunWPxHEeTiB6dY/EcR5OIHp1j/xvFRszOvWP/G8VGzM69Y/Ai7IluXr1j8CLsiW5evWP4vBw7Rv7tY/i8HDtG/u1j/mkT8YeO7WP+aRPxh47tY/08CPatjv1j/TwI9q2O/WP7UZpyGq8NY/tRmnIarw1j/lDMUdb/LWP+UMxR1v8tY/QN1AgXfy1j9A3UCBd/LWPxHF5A0w89Y/EcXkDTDz1j834sluZvTWPzfiyW5m9NY/rfnxlxb11j+t+fGXFvXWP8PVARB39dY/w9UBEHf11j8Hms+52/XWPweaz7nb9dY/4ScOoN/31j/hJw6g3/fWP/Fo44i1+NY/8WjjiLX41j8B2lazzvjWPwHaVrPO+NY/HvzEAfT71j8e/MQB9PvWP6t14nK8Atc/q3XicrwC1z96/Ul87gTXP3r9SXzuBNc/NNk/TwMG1z802T9PAwbXP5tattYXCdc/m1q21hcJ1z+qm4u/7QnXP6qbi7/tCdc/prbUQV4P1z+mttRBXg/XP5G1hlJ7Edc/kbWGUnsR1z8tlbcjnBbXPy2VtyOcFtc/onxBCwkY1z+ifEELCRjXP+Pg0jHnGdc/4+DSMecZ1z8QyZBj6xnXPxDJkGPrGdc/bvqzHyki1z9u+rMfKSLXP3jQ7Lq3Itc/eNDsurci1z+muKrsuyLXP6a4quy7Itc/tykeF9Ui1z+3KR4X1SLXP+l8eJYgI9c/6Xx4liAj1z+emPViKCfXP56Y9WIoJ9c/b4CZ7+An1z9vgJnv4CfXP+dyg6EOK9c/53KDoQ4r1z/l7QinBS/XP+XtCKcFL9c/pmQ5CaUv1z+mZDkJpS/XP/5/nDBhNNc//n+cMGE01z9up60RwTjXP26nrRHBONc/V3bB4Jo71z9XdsHgmjvXP9k+5C1XP9c/2T7kLVc/1z+gUE8fgT/XP6BQTx+BP9c/TiZuFcRA1z9OJm4VxEDXP22oGOdvQtc/bagY529C1z/ij6LO3EPXP+KPos7cQ9c/AOKuXkVG1z8A4q5eRUbXP/z9YrZkVdc//P1itmRV1z86V5QSglXXPzpXlBKCVdc/L1G9NbBV1z8vUb01sFXXP3crS3SWWdc/dytLdJZZ1z+XrfVFQlvXP5et9UVCW9c/UmStodRe1z9SZK2h1F7XP5C93v3xXtc/kL3e/fFe1z8XRnpRu1/XPxdGelG7X9c/usDlsWZk1z+6wOWxZmTXPx9nmrD9ZNc/H2easP1k1z+0AG2rWWfXP7QAbatZZ9c/v9alRuhn1z+/1qVG6GfXP2snSkIibdc/aydKQiJt1z9ZhjjWxW3XP1mGONbFbdc/PQ/uztpt1z89D+7O2m3XP9L+B1irdtc/0v4HWKt21z+oqPqVzofXP6io+pXOh9c/1pC4x9KH1z/WkLjH0ofXP0c9RKM7iNc/Rz1EozuI1z/jHHV0XI3XP+McdXRcjdc/KhxBKsWO1z8qHEEqxY7XPzuNtFTejtc/O420VN6O1z/ZIf5hS4/XP9kh/mFLj9c/Wz/9Z82P1z9bP/1nzY/XPymXxi+8ktc/KZfGL7yS1z9VT+YffZPXP1VP5h99k9c/9b7xtWeW1z/1vvG1Z5bXP0rP9BJjmdc/Ss/0EmOZ1z8hIjXtYprXPyEiNe1imtc/9kTXhR+c1z/2RNeFH5zXPzI+zF62ndc/Mj7MXrad1z9nnIaowp/XP2echqjCn9c/xqcAGM+g1z/GpwAYz6DXPy1agLbVrNc/LVqAttWs1z9PPGcLCK3XP088ZwsIrdc/gV8jSRCu1z+BXyNJEK7XP0HWU6uvrtc/QdZTq6+u1z/9Z82Pv7TXP/1nzY+/tNc/thMlIZG21z+2EyUhkbbXP19+p8mMt9c/X36nyYy31z+/ZOPBFrvXP79k48EWu9c/s14M5US71z+zXgzlRLvXPxalhGBVvdc/FqWEYFW91z/zPSMRGsHXP/M9IxEawdc/jGfQ0D/B1z+MZ9DQP8HXP6Z+3lSkwtc/pn7eVKTC1z8LJZNTO8PXPwslk1M7w9c/EZAvoYLD1z8RkC+hgsPXP90MN+Dzw9c/3Qw34PPD1z+JsreU88XXP4myt5Tzxdc/escpOpLL1z96xyk6ksvXPx1yM9yAz9c/HXIz3IDP1z/XTSmvldDXP9dNKa+V0Nc/CqGDLuHQ1z8KoYMu4dDXPy1eLAyR09c/LV4sDJHT1z/HYptUNNbXP8dim1Q01tc/IjMXuDzW1z8iMxe4PNbXP2+df7vs19c/b51/u+zX1z+bVZ+rrdjXP5tVn6ut2Nc/EOhM2lTd1z8Q6EzaVN3XP+ogrweT4tc/6iCvB5Pi1z+eYWpLHeTXP55haksd5Nc/GhTNA1jk1z8aFM0DWOTXP6RS7Ggc6tc/pFLsaBzq1z9a8+MvLerXP1rz4y8t6tc/UfhsHRzs1z9R+GwdHOzXP8/b2OxI9dc/z9vY7Ej11z9KXp1jQPbXP0penWNA9tc/MiJRaFn31z8yIlFoWffXP+rNqPkq+dc/6s2o+Sr51z8WMewwJv3XPxYx7DAm/dc//yQ+d4L91z//JD53gv3XP4FCPX0E/tc/gUI9fQT+1z+BQj19BP7XP4FCPX0E/tc/3/jaM0sC2D/f+NozSwLYP0uQEVDhCNg/S5ARUOEI2D9gPIOG/gnYP2A8g4b+Cdg/4zREFf4M2D/jNEQV/gzYP7u5+NueINg/u7n4254g2D9U46WbxCDYP1TjpZvEINg/qBjnb0Ih2D+oGOdvQiHYP5Ln+j4cJNg/kuf6Phwk2D96q65DNSXYP3qrrkM1Jdg/ILb0aKon2D8gtvRoqifYPz/jwoGQLNg/P+PCgZAs2D+jWdk+5C3YP6NZ2T7kLdg/Xru04bA02D9eu7ThsDTYP/rvwWuXNtg/+u/Ba5c22D8LYTWWsDbYPwthNZawNtg/JqjhW1g32D8mqOFbWDfYPyRIpdjRONg/JEil2NE42D+sAN9t3jjYP6wA323eONg/J4Oj5NU52D8ng6Pk1TnYP3dNSGsMOtg/d01Iaww62D9jfJi9bDvYP2N8mL1sO9g/ADeLFwtD2D8AN4sXC0PYPygK9Ik8Sdg/KAr0iTxJ2D+fzD/6Jk3YP5/MP/omTdg/k3GMZI9Q2D+TcYxkj1DYP4cW2c73U9g/hxbZzvdT2D964GOw4lTYP3rgY7DiVNg/48EWu31W2D/jwRa7fVbYP+8dNSbEXNg/7x01JsRc2D+L/WX35GHYP4v9ZffkYdg/avZAKzBk2D9q9kArMGTYP78rgv+tZNg/vyuC/61k2D/TLTvEP2zYP9MtO8Q/bNg/LJ56pMFt2D8snnqkwW3YP/0wQni0cdg//TBCeLRx2D8cs+xJYHPYPxyz7Elgc9g/g9+GGK952D+D34YYr3nYP77Ye/FFe9g/vth78UV72D+QwB9+/nvYP5DAH37+e9g/+BxYjpCB2D/4HFiOkIHYPx06Pe/Ggtg/HTo978aC2D+XjGMke4TYP5eMYyR7hNg/hey8jc2O2D+F7LyNzY7YP3Qmbarukdg/dCZtqu6R2D9mwFlKlpPYP2bAWUqWk9g/7iO3Jt2W2D/uI7cm3ZbYP5P+XgoPmtg/k/5eCg+a2D/LvFXXoZrYP8u8Vdehmtg/8rT8wFWe2D/ytPzAVZ7YP0W7Cik/qdg/RbsKKT+p2D/puvCD86nYP+m68IPzqdg/Yw0Xuaer2D9jDRe5p6vYP3HK3Hwjutg/ccrcfCO62D+hvmVOl8XYP6G+ZU6Xxdg/RpkNMsnI2D9GmQ0yycjYPw9h/DTuzdg/D2H8NO7N2D/S4oxhTtDYP9LijGFO0Ng/Hch6avXV2D8dyHpq9dXYPxOdZRah2Ng/E51lFqHY2D/yQGSRJt7YP/JAZJEm3tg/Br03hgDg2D8GvTeGAODYPzCbAMPy59g/MJsAw/Ln2D+NRj6veOrYP41GPq946tg/qI3qdCDr2D+ojep0IOvYP4sWoG0169g/ixagbTXr2D915bM8D+7YP3XlszwP7tg/HSCYo8fv2D8dIJijx+/YP3l2+daH9dg/eXb51of12D/MJyuGqwPZP8wnK4arA9k/NuSfGcQH2T825J8ZxAfZP68GKA01Ctk/rwYoDTUK2T+GWWjnNAvZP4ZZaOc0C9k/pKt0d50N2T+kq3R3nQ3ZPyUfuwuUFNk/JR+7C5QU2T/iW1g33h3ZP+JbWDfeHdk/DeTZ5Vsf2T8N5NnlWx/ZPwyP/SyWItk/DI/9LJYi2T+3KonsgyzZP7cqieyDLNk/6lil9Ewv2T/qWKX0TC/ZP3SXxFkRNdk/dJfEWRE12T/MsieBzTnZP8yyJ4HNOdk/dJgvL8A+2T90mC8vwD7ZP7/Uz5uKVNk/v9TPm4pU2T89YvTcQlfZPz1i9NxCV9k/5iK+E7Ne2T/mIr4Ts17ZP8gm+RG/Ytk/yCb5Eb9i2T/erSzRWWbZP96tLNFZZtk/2h1SDJBo2T/aHVIMkGjZP/Vk/tE3adk/9WT+0Tdp2T8FptO6DWrZPwWm07oNatk/DqMgeHx72T8OoyB4fHvZPwKetHBZhdk/Ap60cFmF2T8xYTQr24fZPzFhNCvbh9k/93KfHAWI2T/3cp8cBYjZP/Voqifzj9k/9WiqJ/OP2T/ZImk3+pjZP9kiaTf6mNk/cR3jiouj2T9xHeOKi6PZP0gbR6zFp9k/SBtHrMWn2T80oN6Mmq/ZPzSg3oyar9k/02achqjC2T/TZpyGqMLZP9I2/kRlw9k/0jb+RGXD2T9z1qcck8XZP3PWpxyTxdk/uaXVkLjH2T+5pdWQuMfZP75muWx0ztk/vma5bHTO2T/ovpzZrtDZP+i+nNmu0Nk/JLiRskXS2T8kuJGyRdLZP2u3XWiu09k/a7ddaK7T2T90CBwJNNjZP3QIHAk02Nk/rBxaZDvf2T+sHFpkO9/ZP1GjkGRW79k/UaOQZFbv2T9oBvGBHf/ZP2gG8YEd/9k/yEEJM23/2T/IQQkzbf/ZP9kIxOv6Bdo/2QjE6/oF2j/v5NNjWwbaP+/k02NbBto/VryReeQP2j9WvJF55A/aPzTbFfpgGdo/NNsV+mAZ2j/9ogT9hR7aP/2iBP2FHto/PzifOlYp2j8/OJ86VinaP/vKg/QUOdo/+8qD9BQ52j9TlEvjF17aP1OUS+MXXto/mpMXmYBf2j+akxeZgF/aP/yqXKj8a9o//KpcqPxr2j8PJzCd1m3aPw8nMJ3Wbdo/kBSRYRVv2j+QFJFhFW/aP0vMs5JWfNo/S8yzklZ82j/4cTRHVn7aP/hxNEdWfto/84++SdOg2j/zj75J06DaP+NPVDasqdo/409UNqyp2j9qhel7DcHaP2qF6XsNwdo/p658lufB2j+nrnyW58HaPwMF3smnx9o/AwXeyafH2j+ZSdQLPs3aP5lJ1As+zdo/G2fTEcDN2j8bZ9MRwM3aPwGmDBzQ0to/AaYMHNDS2j/yP/m7d9TaP/I/+bt31No/zlSIR+Ll2j/OVIhH4uXaP07v4v24/do/Tu/i/bj92j9GJuDXSBLbP0Ym4NdIEts/E9TwLawb2z8T1PAtrBvbPy7GwDqOH9s/LsbAOo4f2z+astMP6iLbP5qy0w/qIts/pg9dUN8y2z+mD11Q3zLbP/0tAfinVNs//S0B+KdU2z9FLc2tEFbbP0Utza0QVts/PbmmQGZn2z89uaZAZmfbP9+I7lnXaNs/34juWddo2z900CUceovbP3TQJRx6i9s/34yar5KP2z/fjJqvko/bP/uw3qgVpts/+7DeqBWm2z/J6IAk7NvbP8nogCTs29s/kdYYdELo2z+R1hh0QujbP+EoeXWOAdw/4Sh5dY4B3D95A8x8Bz/cP3kDzHwHP9w/M+AsJctJ3D8z4Cwly0ncP/OtD+uNWtw/860P641a3D8kfsUaLnLcPyR+xRouctw/J4kl5e5z3D8niSXl7nPcP1Wi7C3lfNw/VaLsLeV83D8zxLEubqPcPzPEsS5uo9w/mBb1Se6w3D+YFvVJ7rDcPysYldQJaN0/KxiV1Alo3T9PXI5XIHrdP09cjlcget0/Wmd8X1yq3T9aZ3xfXKrdP4rIsIo3Mt4/isiwijcy3j+pTgeynlreP6lOB7KeWt4/g/bq46Hv3j+D9urjoe/eP8sO8Q9bet8/yw7xD1t63z99y5wui4nfP33LnC6Lid8/5rLROT/F3z/mstE5P8XfPw==\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]},\"y\":{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"order\":\"little\",\"shape\":[8000]}},\"selected\":{\"id\":\"3137\"},\"selection_policy\":{\"id\":\"3136\"}},\"id\":\"2831\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#ff7f0e\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.621611},\"y\":{\"value\":1}},\"id\":\"2859\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"3130\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_color\":{\"value\":\"#2ca02c\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.138119},\"y\":{\"value\":0}},\"id\":\"2869\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"3131\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"3175\",\"type\":\"Selection\"},{\"attributes\":{\"source\":{\"id\":\"2831\"}},\"id\":\"2835\",\"type\":\"CDSView\"},{\"attributes\":{\"data\":{},\"selected\":{\"id\":\"3139\"},\"selection_policy\":{\"id\":\"3138\"}},\"id\":\"2836\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"line_color\":{\"value\":\"#1f77b4\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.496414},\"y\":{\"value\":1}},\"id\":\"2842\",\"type\":\"Ray\"},{\"attributes\":{\"angle\":{\"value\":3.141592653589793},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#1f77b4\"},\"line_width\":{\"value\":2},\"x\":{\"value\":0.0762585},\"y\":{\"value\":0}},\"id\":\"2838\",\"type\":\"Ray\"},{\"attributes\":{},\"id\":\"3142\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"data_source\":{\"id\":\"2831\"},\"glyph\":{\"id\":\"2832\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2833\"},\"view\":{\"id\":\"2835\"}},\"id\":\"2834\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"3143\",\"type\":\"Selection\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#1f77b4\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2833\",\"type\":\"Line\"},{\"attributes\":{\"source\":{\"id\":\"2841\"}},\"id\":\"2845\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"3132\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"2815\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"3154\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#9467bd\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#9467bd\"},\"marker\":{\"value\":\"diamond\"},\"size\":{\"value\":20},\"x\":{\"value\":0.14912280701754382},\"y\":{\"value\":0.5}},\"id\":\"2949\",\"type\":\"Scatter\"},{\"attributes\":{},\"id\":\"3155\",\"type\":\"Selection\"},{\"attributes\":{\"data_source\":{\"id\":\"2947\"},\"glyph\":{\"id\":\"2948\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2949\"},\"view\":{\"id\":\"2951\"}},\"id\":\"2950\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"data_source\":{\"id\":\"2857\"},\"glyph\":{\"id\":\"2858\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"2859\"},\"view\":{\"id\":\"2861\"}},\"id\":\"2860\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"3133\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"3177\",\"type\":\"Selection\"}],\"root_ids\":[\"2783\"]},\"title\":\"Bokeh Application\",\"version\":\"2.3.3\"}};\n", " var render_items = [{\"docid\":\"4968babd-cfa5-4984-bbcd-a914d080c513\",\"root_ids\":[\"2783\"],\"roots\":{\"2783\":\"459c3d4c-6af3-4996-8188-8e25e0fde5f2\"}}];\n", " root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n", "\n", " }\n", " if (root.Bokeh !== undefined) {\n", " embed_document(root);\n", " } else {\n", " var attempts = 0;\n", " var 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": "2783" } }, "output_type": "display_data" } ], "source": [ "# Plot ECDF of phi samples\n", "p = iqplot.ecdf(\n", " samples.posterior.phi.values.flatten(),\n", " frame_width=650,\n", " style=\"staircase\",\n", " line_kwargs=dict(line_color=\"black\"),\n", " y_axis_label=\"marginal posterior CDF\",\n", " x_axis_label=\"parameter value\",\n", " legend_label=\"ϕ\",\n", ")\n", "\n", "# Plot the ECDFs for each theta_i\n", "for i in range(len(n)):\n", " p = iqplot.ecdf(\n", " samples.posterior.theta.sel(theta_dim_0=i).values.flatten(),\n", " style=\"staircase\",\n", " line_kwargs=dict(line_color=colors[i]),\n", " p=p,\n", " legend_label=f\"θ{i}\"\n", " )\n", "\n", "# MAP of individuals (given by (n + α - 1) / (N + α + β - 2))\n", "for i in range(len(n)):\n", " theta_map = (n[i] + 0.1) / (N[i] + 0.2)\n", " p.diamond(theta_map, 0.5, color=colors[i], size=20)\n", "\n", "# Pooled MAP\n", "theta_map = (n.sum() + 0.1) / (N.sum() + 0.2)\n", "p.diamond(theta_map, 0.5, color=\"black\", size=20)\n", "\n", "p.legend.visible = True\n", "p.legend.location = \"bottom_right\"\n", "bokeh.io.show(p)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We see that the individual parameter values tend to \"shrink\" toward the hyperparameter value. The hyperparameter value, in turn, is different than if we pooled all the data together. Notably, the black diamond, which represents the MAP estimate of the reversal probability if we pooled all of the data together, is significantly different than under the hierarchical model. This is because the data set with many more measurements overwhelms the other data sets if we pool the results.\n", "\n", "We are probably most interested in the hyperparameter $\\phi$, so let's compute its median and 80% credible interval." ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\n", "ϕ = [0.213, 0.278, 0.352]\n", "\n" ] } ], "source": [ "print(\n", " \"\"\"\n", "ϕ = [{0:.3f}, {1:.3f}, {2:.3f}]\n", "\"\"\".format(\n", " *np.percentile(samples.posterior.phi.values.flatten(), [10, 50, 90])\n", " )\n", ")" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "bebi103.stan.clean_cmdstan()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Computing environment" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "Python implementation: CPython\n", "Python version : 3.9.7\n", "IPython version : 7.29.0\n", "\n", "numpy : 1.20.3\n", "cmdstanpy : 1.0.0\n", "arviz : 0.11.4\n", "iqplot : 0.2.4\n", "bebi103 : 0.1.11\n", "bokeh : 2.3.3\n", "jupyterlab: 3.2.1\n", "\n" ] } ], "source": [ "%load_ext watermark\n", "%watermark -v -p numpy,cmdstanpy,arviz,iqplot,bebi103,bokeh,jupyterlab" ] } ], "metadata": { "anaconda-cloud": {}, "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.9.7" } }, "nbformat": 4, "nbformat_minor": 4 }