Browse code

Add draft post on adaptive sampling

Joseph Weston authored on 29/03/2021 05:41:52
Showing 5 changed files
1 1
new file mode 100644
2 2
Binary files /dev/null and b/content/posts/coding/adaptive-sampling/battle_for_majoranas.png differ
3 3
new file mode 100644
... ...
@@ -0,0 +1,233 @@
1
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+<svg
5
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
6
+   xmlns:cc="http://creativecommons.org/ns#"
7
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8
+   xmlns:svg="http://www.w3.org/2000/svg"
9
+   xmlns="http://www.w3.org/2000/svg"
10
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+   width="232.79803mm"
13
+   height="113.12664mm"
14
+   viewBox="0 0 232.79803 113.12664"
15
+   version="1.1"
16
+   id="svg8"
17
+   inkscape:version="0.92.3 (2405546, 2018-03-11)"
18
+   sodipodi:docname="default-loss.svg">
19
+  <defs
20
+     id="defs2">
21
+    <marker
22
+       inkscape:stockid="TriangleOutL"
23
+       orient="auto"
24
+       refY="0"
25
+       refX="0"
26
+       id="marker1492"
27
+       style="overflow:visible"
28
+       inkscape:isstock="true">
29
+      <path
30
+         inkscape:connector-curvature="0"
31
+         id="path1490"
32
+         d="M 5.77,0 -2.88,5 V -5 Z"
33
+         style="fill:#808080;fill-opacity:1;fill-rule:evenodd;stroke:#808080;stroke-width:1.00000003pt;stroke-opacity:1"
34
+         transform="scale(0.8)" />
35
+    </marker>
36
+    <marker
37
+       inkscape:stockid="TriangleOutL"
38
+       orient="auto"
39
+       refY="0"
40
+       refX="0"
41
+       id="TriangleOutL-3"
42
+       style="overflow:visible"
43
+       inkscape:isstock="true"
44
+       inkscape:collect="always">
45
+      <path
46
+         id="path1052-6"
47
+         d="M 5.77,0 -2.88,5 V -5 Z"
48
+         style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:#333333;stroke-width:1.00000003pt;stroke-opacity:1"
49
+         transform="scale(0.8)"
50
+         inkscape:connector-curvature="0" />
51
+    </marker>
52
+    <marker
53
+       inkscape:isstock="true"
54
+       style="overflow:visible"
55
+       id="marker1222-7"
56
+       refX="0"
57
+       refY="0"
58
+       orient="auto"
59
+       inkscape:stockid="TriangleOutL"
60
+       inkscape:collect="always">
61
+      <path
62
+         transform="scale(0.8)"
63
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
64
+         d="M 5.77,0 -2.88,5 V -5 Z"
65
+         id="path1220-5"
66
+         inkscape:connector-curvature="0" />
67
+    </marker>
68
+  </defs>
69
+  <sodipodi:namedview
70
+     id="base"
71
+     pagecolor="#ffffff"
72
+     bordercolor="#666666"
73
+     borderopacity="1.0"
74
+     inkscape:pageopacity="0.0"
75
+     inkscape:pageshadow="2"
76
+     inkscape:zoom="0.35"
77
+     inkscape:cx="536.33434"
78
+     inkscape:cy="679.72674"
79
+     inkscape:document-units="mm"
80
+     inkscape:current-layer="layer1"
81
+     showgrid="false"
82
+     inkscape:window-width="1888"
83
+     inkscape:window-height="1025"
84
+     inkscape:window-x="14"
85
+     inkscape:window-y="37"
86
+     inkscape:window-maximized="0"
87
+     fit-margin-top="0"
88
+     fit-margin-left="0"
89
+     fit-margin-right="0"
90
+     fit-margin-bottom="0" />
91
+  <metadata
92
+     id="metadata5">
93
+    <rdf:RDF>
94
+      <cc:Work
95
+         rdf:about="">
96
+        <dc:format>image/svg+xml</dc:format>
97
+        <dc:type
98
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
99
+        <dc:title></dc:title>
100
+      </cc:Work>
101
+    </rdf:RDF>
102
+  </metadata>
103
+  <g
104
+     inkscape:label="Layer 1"
105
+     inkscape:groupmode="layer"
106
+     id="layer1"
107
+     transform="translate(25.684729,108.81332)">
108
+    <path
109
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
110
+       d="M 125.45597,-54.379047 195.85628,-70.79662"
111
+       id="path833-3"
112
+       inkscape:connector-curvature="0"
113
+       sodipodi:nodetypes="cc" />
114
+    <path
115
+       style="fill:none;fill-rule:evenodd;stroke:#ff2a2a;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
116
+       d="m 48.914875,-81.029012 76.541095,26.649965"
117
+       id="path829-5"
118
+       inkscape:connector-curvature="0"
119
+       sodipodi:nodetypes="cc" />
120
+    <path
121
+       sodipodi:nodetypes="cc"
122
+       inkscape:connector-curvature="0"
123
+       id="path831-6"
124
+       d="M 48.914875,-81.029012 5.4830452,-24.238084"
125
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
126
+    <path
127
+       style="opacity:1;fill:#333333;fill-opacity:1;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
128
+       id="path819-2"
129
+       sodipodi:type="arc"
130
+       sodipodi:cx="5.4152489"
131
+       sodipodi:cy="-24.320929"
132
+       sodipodi:rx="2.2678571"
133
+       sodipodi:ry="2.2678571"
134
+       sodipodi:start="0.6422864"
135
+       sodipodi:end="0.6203319"
136
+       sodipodi:open="true"
137
+       d="m 7.2311861,-22.962419 a 2.2678571,2.2678571 0 0 1 -3.1644592,0.464857 2.2678571,2.2678571 0 0 1 -0.4822182,-3.161861 2.2678571,2.2678571 0 0 1 3.1591658,-0.499565 2.2678571,2.2678571 0 0 1 0.5168969,3.156377" />
138
+    <path
139
+       d="m 50.698452,-79.658847 a 2.2678571,2.2678571 0 0 1 -3.164459,0.464856 2.2678571,2.2678571 0 0 1 -0.482218,-3.16186 2.2678571,2.2678571 0 0 1 3.159166,-0.499565 2.2678571,2.2678571 0 0 1 0.516897,3.156376"
140
+       sodipodi:open="true"
141
+       sodipodi:end="0.6203319"
142
+       sodipodi:start="0.6422864"
143
+       sodipodi:ry="2.2678571"
144
+       sodipodi:rx="2.2678571"
145
+       sodipodi:cy="-81.017357"
146
+       sodipodi:cx="48.882515"
147
+       sodipodi:type="arc"
148
+       id="path821-9"
149
+       style="opacity:1;fill:#ff2a2a;fill-opacity:1;stroke:#ff2a2a;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
150
+    <path
151
+       style="opacity:1;fill:#ff2a2a;fill-opacity:1;stroke:#ff2a2a;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
152
+       id="path823-1"
153
+       sodipodi:type="arc"
154
+       sodipodi:cx="-136.48068"
155
+       sodipodi:cy="-8.5696716"
156
+       sodipodi:rx="2.2678571"
157
+       sodipodi:ry="2.2678571"
158
+       sodipodi:start="0.6422864"
159
+       sodipodi:end="0.61669274"
160
+       sodipodi:open="true"
161
+       d="m -134.66475,-7.2111622 a 2.2678571,2.2678571 0 0 1 -3.16279,0.4660828 2.2678571,2.2678571 0 0 1 -0.48632,-3.1597528 2.2678571,2.2678571 0 0 1 3.15658,-0.5065178 2.2678571,2.2678571 0 0 1 0.52671,3.1532715"
162
+       transform="rotate(153.02268)" />
163
+    <path
164
+       d="m 197.73119,-69.453487 a 2.2678571,2.2678571 0 0 1 -3.16446,0.464857 2.2678571,2.2678571 0 0 1 -0.48222,-3.16186 2.2678571,2.2678571 0 0 1 3.15917,-0.499566 2.2678571,2.2678571 0 0 1 0.5169,3.156377"
165
+       sodipodi:open="true"
166
+       sodipodi:end="0.6203319"
167
+       sodipodi:start="0.6422864"
168
+       sodipodi:ry="2.2678571"
169
+       sodipodi:rx="2.2678571"
170
+       sodipodi:cy="-70.811996"
171
+       sodipodi:cx="195.91525"
172
+       sodipodi:type="arc"
173
+       id="path825-2"
174
+       style="opacity:1;fill:#333333;fill-opacity:1;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
175
+    <path
176
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1222-7)"
177
+       d="M -5.9240378,-0.47538117 V -103.1316"
178
+       id="path906-7"
179
+       inkscape:connector-curvature="0"
180
+       sodipodi:nodetypes="cc" />
181
+    <path
182
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleOutL-3)"
183
+       d="M -11.971657,-6.1780712 H 201.43158"
184
+       id="path908-0"
185
+       inkscape:connector-curvature="0"
186
+       sodipodi:nodetypes="cc" />
187
+    <text
188
+       xml:space="preserve"
189
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:6.61458349px;font-family:sans-serif;-inkscape-font-specification:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
190
+       x="-25.927608"
191
+       y="-52.429157"
192
+       id="text1458-9"><tspan
193
+         sodipodi:role="line"
194
+         id="tspan1456-3"
195
+         x="-25.927608"
196
+         y="-52.429157"
197
+         style="font-size:10.58333302px;line-height:6.61458349px;stroke-width:0.26458332px">f(x)</tspan></text>
198
+    <text
199
+       xml:space="preserve"
200
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:6.61458349px;font-family:sans-serif;-inkscape-font-specification:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
201
+       x="95.496857"
202
+       y="4.3133192"
203
+       id="text1462-6"><tspan
204
+         sodipodi:role="line"
205
+         id="tspan1460-0"
206
+         x="95.496857"
207
+         y="4.3133192"
208
+         style="font-size:10.58333302px;line-height:6.61458349px;stroke-width:0.26458332px">x</tspan></text>
209
+    <text
210
+       xml:space="preserve"
211
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:6.61458349px;font-family:sans-serif;-inkscape-font-specification:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#808080;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
212
+       x="65.413887"
213
+       y="-45.077839"
214
+       id="text1610"><tspan
215
+         sodipodi:role="line"
216
+         id="tspan1608"
217
+         x="65.413887"
218
+         y="-45.077839"
219
+         style="font-size:10.58333302px;fill:#808080;stroke-width:0.26458332px">loss</tspan></text>
220
+    <g
221
+       aria-label="{"
222
+       transform="rotate(-71.117828)"
223
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.11111069px;line-height:6.61458302px;font-family:sans-serif;-inkscape-font-specification:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#808080;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
224
+       id="text3725">
225
+      <path
226
+         d="m 82.603977,95.451328 0,0.992187 h -0.427192 c -1.143772,0 -1.91088,-0.169958 -2.301324,-0.509874 -0.385851,-0.339916 -0.600092,-1.017676 -0.578776,-2.032606 l 0.702586,-33.453124 c 0.01456,-0.693459 -0.124023,-1.173628 -0.37207,-1.440049 -0.248047,-0.266421 -0.699399,-0.360205 -1.350478,-0.399632 l -0.420301,0 v -0.985297 h 0.420301 c 0.656866,0 1.107025,-0.130914 1.350478,-0.392741 0.248047,-0.266421 0.308214,-0.744829 0.37207,-1.426269 L 82.976006,24.0377 c 0.09471,-1.010726 0.192925,-1.690393 0.578776,-2.025716 0.390444,-0.339916 1.157552,-0.509874 2.301324,-0.509874 h 0.427192 l 0,0.985297 -0.468533,0 c -0.647678,0 -1.070277,0.101056 -1.267796,0.303168 -0.197519,0.202113 -0.235954,0.629824 -0.296278,1.274686 l -2.976735,31.821344 c -0.06717,0.718038 -0.105649,1.244828 -0.316949,1.570964 -0.206705,0.326135 -0.562698,0.546621 -1.067979,0.661458 0.509874,0.124023 0.868164,0.349103 1.07487,0.675239 0.206706,0.326135 0.325077,0.84765 0.310058,1.564073 L 80.57137,93.873474 c -0.01358,0.647535 0.09876,1.072573 0.296278,1.274686 0.197519,0.202112 0.620118,0.303168 1.267796,0.303168 z"
227
+         style="font-size:14.11111069px;fill:#808080;stroke-width:0.26458332px"
228
+         id="path3727"
229
+         inkscape:connector-curvature="0"
230
+         sodipodi:nodetypes="ccscssssccscsscsccscssccssscsc" />
231
+    </g>
232
+  </g>
233
+</svg>
0 234
new file mode 100644
... ...
@@ -0,0 +1,3563 @@
1
+{
2
+ "cells": [
3
+  {
4
+   "cell_type": "raw",
5
+   "metadata": {},
6
+   "source": [
7
+    "---\n",
8
+    "title: Adaptive Sampling\n",
9
+    "date: 2018-10-01\n",
10
+    "tags:\n",
11
+    "    - coding\n",
12
+    "    - python\n",
13
+    "draft: true\n",
14
+    "---"
15
+   ]
16
+  },
17
+  {
18
+   "cell_type": "markdown",
19
+   "metadata": {},
20
+   "source": [
21
+    "##### Let's set the scene"
22
+   ]
23
+  },
24
+  {
25
+   "cell_type": "markdown",
26
+   "metadata": {},
27
+   "source": [
28
+    "You're a researcher doing numerical modelling. You're an old hand. You use Python (and therefore are awesome).\n",
29
+    "\n",
30
+    "Your days are spent constructing mathematical models, implementing them in code, and exploring the models as you change different parameters. You realize that simplicity is key, so you make sure to write your models as pure functions of the parameters, maybe a little something like this:\n",
31
+    "\n",
32
+    "```python\n",
33
+    "def complicated_model(x, y):\n",
34
+    "    ...\n",
35
+    "    return result\n",
36
+    "```\n",
37
+    "\n",
38
+    "Beautiful; now it's time to do some science! Of course, you'll want to plot your model as a function of the parameters. Python makes this super simple but, as we'll see, this simplicity has a price."
39
+   ]
40
+  },
41
+  {
42
+   "cell_type": "markdown",
43
+   "metadata": {},
44
+   "source": [
45
+    "<script src=\"https://cdnjs.cloudflare.com/ajax/libs/require.js/2.1.10/require.min.js\"></script>\n",
46
+    "<script src=\"https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js\"></script>\n",
47
+    "\n",
48
+    "<script>\n",
49
+    "    // RequireJS is a pretty cool guy who never throws errors and doesn't afraid of anything\n",
50
+    "    require.onError = function () {}\n",
51
+    "</script>"
52
+   ]
53
+  },
54
+  {
55
+   "cell_type": "markdown",
56
+   "metadata": {},
57
+   "source": [
58
+    "You start off the same way you have a million times before: gridding your parameter space and mapping `complicated_model` over it:"
59
+   ]
60
+  },
61
+  {
62
+   "cell_type": "code",
63
+   "execution_count": 1,
64
+   "metadata": {
65
+    "tags": [
66
+     "hide"
67
+    ]
68
+   },
69
+   "outputs": [],
70
+   "source": [
71
+    "import math\n",
72
+    "import itertools\n",
73
+    "\n",
74
+    "import numpy as np\n",
75
+    "np.seterr('ignore')  # ignore divide by zero\n",
76
+    "\n",
77
+    "def complicated_model(x, y):\n",
78
+    "    a = 0.2\n",
79
+    "    return x + math.exp(-(x**2 + y**2 - 0.6**2)**2 / a**4)"
80
+   ]
81
+  },
82
+  {
83
+   "cell_type": "code",
84
+   "execution_count": 2,
85
+   "metadata": {},
86
+   "outputs": [],
87
+   "source": [
88
+    "N = 25\n",
89
+    "xs = np.linspace(-1, 1, N)\n",
90
+    "ys = np.linspace(-1, 1, N)\n",
91
+    "\n",
92
+    "answers = [complicated_model(x, y) for x, y in itertools.product(xs, ys)]"
93
+   ]
94
+  },
95
+  {
96
+   "cell_type": "code",
97
+   "execution_count": 3,
98
+   "metadata": {
99
+    "tags": [
100
+     "hide-input"
101
+    ]
102
+   },
103
+   "outputs": [
104
+    {
105
+     "data": {
106
+      "application/javascript": [
107
+       "\n",
108
+       "(function(root) {\n",
109
+       "  function now() {\n",
110
+       "    return new Date();\n",
111
+       "  }\n",
112
+       "\n",
113
+       "  var force = true;\n",
114
+       "\n",
115
+       "  if (typeof (root._bokeh_onload_callbacks) === \"undefined\" || force === true) {\n",
116
+       "    root._bokeh_onload_callbacks = [];\n",
117
+       "    root._bokeh_is_loading = undefined;\n",
118
+       "  }\n",
119
+       "\n",
120
+       "  var JS_MIME_TYPE = 'application/javascript';\n",
121
+       "  var HTML_MIME_TYPE = 'text/html';\n",
122
+       "  var EXEC_MIME_TYPE = 'application/vnd.bokehjs_exec.v0+json';\n",
123
+       "  var CLASS_NAME = 'output_bokeh rendered_html';\n",
124
+       "\n",
125
+       "  /**\n",
126
+       "   * Render data to the DOM node\n",
127
+       "   */\n",
128
+       "  function render(props, node) {\n",
129
+       "    var script = document.createElement(\"script\");\n",
130
+       "    node.appendChild(script);\n",
131
+       "  }\n",
132
+       "\n",
133
+       "  /**\n",
134
+       "   * Handle when an output is cleared or removed\n",
135
+       "   */\n",
136
+       "  function handleClearOutput(event, handle) {\n",
137
+       "    var cell = handle.cell;\n",
138
+       "\n",
139
+       "    var id = cell.output_area._bokeh_element_id;\n",
140
+       "    var server_id = cell.output_area._bokeh_server_id;\n",
141
+       "    // Clean up Bokeh references\n",
142
+       "    if (id != null && id in Bokeh.index) {\n",
143
+       "      Bokeh.index[id].model.document.clear();\n",
144
+       "      delete Bokeh.index[id];\n",
145
+       "    }\n",
146
+       "\n",
147
+       "    if (server_id !== undefined) {\n",
148
+       "      // Clean up Bokeh references\n",
149
+       "      var cmd = \"from bokeh.io.state import curstate; print(curstate().uuid_to_server['\" + server_id + \"'].get_sessions()[0].document.roots[0]._id)\";\n",
150
+       "      cell.notebook.kernel.execute(cmd, {\n",
151
+       "        iopub: {\n",
152
+       "          output: function(msg) {\n",
153
+       "            var id = msg.content.text.trim();\n",
154
+       "            if (id in Bokeh.index) {\n",
155
+       "              Bokeh.index[id].model.document.clear();\n",
156
+       "              delete Bokeh.index[id];\n",
157
+       "            }\n",
158
+       "          }\n",
159
+       "        }\n",
160
+       "      });\n",
161
+       "      // Destroy server and session\n",
162
+       "      var cmd = \"import bokeh.io.notebook as ion; ion.destroy_server('\" + server_id + \"')\";\n",
163
+       "      cell.notebook.kernel.execute(cmd);\n",
164
+       "    }\n",
165
+       "  }\n",
166
+       "\n",
167
+       "  /**\n",
168
+       "   * Handle when a new output is added\n",
169
+       "   */\n",
170
+       "  function handleAddOutput(event, handle) {\n",
171
+       "    var output_area = handle.output_area;\n",
172
+       "    var output = handle.output;\n",
173
+       "\n",
174
+       "    // limit handleAddOutput to display_data with EXEC_MIME_TYPE content only\n",
175
+       "    if ((output.output_type != \"display_data\") || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n",
176
+       "      return\n",
177
+       "    }\n",
178
+       "\n",
179
+       "    var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n",
180
+       "\n",
181
+       "    if (output.metadata[EXEC_MIME_TYPE][\"id\"] !== undefined) {\n",
182
+       "      toinsert[toinsert.length - 1].firstChild.textContent = output.data[JS_MIME_TYPE];\n",
183
+       "      // store reference to embed id on output_area\n",
184
+       "      output_area._bokeh_element_id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n",
185
+       "    }\n",
186
+       "    if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n",
187
+       "      var bk_div = document.createElement(\"div\");\n",
188
+       "      bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n",
189
+       "      var script_attrs = bk_div.children[0].attributes;\n",
190
+       "      for (var i = 0; i < script_attrs.length; i++) {\n",
191
+       "        toinsert[toinsert.length - 1].firstChild.setAttribute(script_attrs[i].name, script_attrs[i].value);\n",
192
+       "      }\n",
193
+       "      // store reference to server id on output_area\n",
194
+       "      output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n",
195
+       "    }\n",
196
+       "  }\n",
197
+       "\n",
198
+       "  function register_renderer(events, OutputArea) {\n",
199
+       "\n",
200
+       "    function append_mime(data, metadata, element) {\n",
201
+       "      // create a DOM node to render to\n",
202
+       "      var toinsert = this.create_output_subarea(\n",
203
+       "        metadata,\n",
204
+       "        CLASS_NAME,\n",
205
+       "        EXEC_MIME_TYPE\n",
206
+       "      );\n",
207
+       "      this.keyboard_manager.register_events(toinsert);\n",
208
+       "      // Render to node\n",
209
+       "      var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n",
210
+       "      render(props, toinsert[toinsert.length - 1]);\n",
211
+       "      element.append(toinsert);\n",
212
+       "      return toinsert\n",
213
+       "    }\n",
214
+       "\n",
215
+       "    /* Handle when an output is cleared or removed */\n",
216
+       "    events.on('clear_output.CodeCell', handleClearOutput);\n",
217
+       "    events.on('delete.Cell', handleClearOutput);\n",
218
+       "\n",
219
+       "    /* Handle when a new output is added */\n",
220
+       "    events.on('output_added.OutputArea', handleAddOutput);\n",
221
+       "\n",
222
+       "    /**\n",
223
+       "     * Register the mime type and append_mime function with output_area\n",
224
+       "     */\n",
225
+       "    OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n",
226
+       "      /* Is output safe? */\n",
227
+       "      safe: true,\n",
228
+       "      /* Index of renderer in `output_area.display_order` */\n",
229
+       "      index: 0\n",
230
+       "    });\n",
231
+       "  }\n",
232
+       "\n",
233
+       "  // register the mime type if in Jupyter Notebook environment and previously unregistered\n",
234
+       "  if (root.Jupyter !== undefined) {\n",
235
+       "    var events = require('base/js/events');\n",
236
+       "    var OutputArea = require('notebook/js/outputarea').OutputArea;\n",
237
+       "\n",
238
+       "    if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n",
239
+       "      register_renderer(events, OutputArea);\n",
240
+       "    }\n",
241
+       "  }\n",
242
+       "\n",
243
+       "  \n",
244
+       "  if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n",
245
+       "    root._bokeh_timeout = Date.now() + 5000;\n",
246
+       "    root._bokeh_failed_load = false;\n",
247
+       "  }\n",
248
+       "\n",
249
+       "  var NB_LOAD_WARNING = {'data': {'text/html':\n",
250
+       "     \"<div style='background-color: #fdd'>\\n\"+\n",
251
+       "     \"<p>\\n\"+\n",
252
+       "     \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n",
253
+       "     \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n",
254
+       "     \"</p>\\n\"+\n",
255
+       "     \"<ul>\\n\"+\n",
256
+       "     \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n",
257
+       "     \"<li>use INLINE resources instead, as so:</li>\\n\"+\n",
258
+       "     \"</ul>\\n\"+\n",
259
+       "     \"<code>\\n\"+\n",
260
+       "     \"from bokeh.resources import INLINE\\n\"+\n",
261
+       "     \"output_notebook(resources=INLINE)\\n\"+\n",
262
+       "     \"</code>\\n\"+\n",
263
+       "     \"</div>\"}};\n",
264
+       "\n",
265
+       "  function display_loaded() {\n",
266
+       "    var el = document.getElementById(null);\n",
267
+       "    if (el != null) {\n",
268
+       "      el.textContent = \"BokehJS is loading...\";\n",
269
+       "    }\n",
270
+       "    if (root.Bokeh !== undefined) {\n",
271
+       "      if (el != null) {\n",
272
+       "        el.textContent = \"BokehJS \" + root.Bokeh.version + \" successfully loaded.\";\n",
273
+       "      }\n",
274
+       "    } else if (Date.now() < root._bokeh_timeout) {\n",
275
+       "      setTimeout(display_loaded, 100)\n",
276
+       "    }\n",
277
+       "  }\n",
278
+       "\n",
279
+       "\n",
280
+       "  function run_callbacks() {\n",
281
+       "    try {\n",
282
+       "      root._bokeh_onload_callbacks.forEach(function(callback) { callback() });\n",
283
+       "    }\n",
284
+       "    finally {\n",
285
+       "      delete root._bokeh_onload_callbacks\n",
286
+       "    }\n",
287
+       "    console.info(\"Bokeh: all callbacks have finished\");\n",
288
+       "  }\n",
289
+       "\n",
290
+       "  function load_libs(js_urls, callback) {\n",
291
+       "    root._bokeh_onload_callbacks.push(callback);\n",
292
+       "    if (root._bokeh_is_loading > 0) {\n",
293
+       "      console.log(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n",
294
+       "      return null;\n",
295
+       "    }\n",
296
+       "    if (js_urls == null || js_urls.length === 0) {\n",
297
+       "      run_callbacks();\n",
298
+       "      return null;\n",
299
+       "    }\n",
300
+       "    console.log(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
301
+       "    root._bokeh_is_loading = js_urls.length;\n",
302
+       "    for (var i = 0; i < js_urls.length; i++) {\n",
303
+       "      var url = js_urls[i];\n",
304
+       "      var s = document.createElement('script');\n",
305
+       "      s.src = url;\n",
306
+       "      s.async = false;\n",
307
+       "      s.onreadystatechange = s.onload = function() {\n",
308
+       "        root._bokeh_is_loading--;\n",
309
+       "        if (root._bokeh_is_loading === 0) {\n",
310
+       "          console.log(\"Bokeh: all BokehJS libraries loaded\");\n",
311
+       "          run_callbacks()\n",
312
+       "        }\n",
313
+       "      };\n",
314
+       "      s.onerror = function() {\n",
315
+       "        console.warn(\"failed to load library \" + url);\n",
316
+       "      };\n",
317
+       "      console.log(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
318
+       "      document.getElementsByTagName(\"head\")[0].appendChild(s);\n",
319
+       "    }\n",
320
+       "  };\n",
321
+       "\n",
322
+       "  var js_urls = [];\n",
323
+       "\n",
324
+       "  var inline_js = [\n",
325
+       "    function(Bokeh) {\n",
326
+       "      /* BEGIN bokeh.min.js */\n",
327
+       "      /*!\n",
328
+       "       * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n",
329
+       "       * All rights reserved.\n",
330
+       "       * \n",
331
+       "       * Redistribution and use in source and binary forms, with or without modification,\n",
332
+       "       * are permitted provided that the following conditions are met:\n",
333
+       "       * \n",
334
+       "       * Redistributions of source code must retain the above copyright notice,\n",
335
+       "       * this list of conditions and the following disclaimer.\n",
336
+       "       * \n",
337
+       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
338
+       "       * this list of conditions and the following disclaimer in the documentation\n",
339
+       "       * and/or other materials provided with the distribution.\n",
340
+       "       * \n",
341
+       "       * Neither the name of Anaconda nor the names of any contributors\n",
342
+       "       * may be used to endorse or promote products derived from this software\n",
343
+       "       * without specific prior written permission.\n",
344
+       "       * \n",
345
+       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
346
+       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
347
+       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
348
+       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
349
+       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
350
+       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
351
+       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
352
+       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
353
+       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
354
+       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
355
+       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
356
+       "       */\n",
357
+       "      !function(t,e){var o,s,r,a,l;t.Bokeh=(o=[function(t,e,i){var n=t(153),r=t(32);i.overrides={};var o=r.clone(n);i.Models=function(t){var e=i.overrides[t]||o[t];if(null==e)throw new Error(\"Model '\"+t+\"' does not exist. This could be due to a widget\\n                     or a custom model not being registered before first usage.\");return e},i.Models.register=function(t,e){i.overrides[t]=e},i.Models.unregister=function(t){delete i.overrides[t]},i.Models.register_models=function(t,e,i){if(void 0===e&&(e=!1),null!=t)for(var n in t){var r=t[n];e||!o.hasOwnProperty(n)?o[n]=r:null!=i?i(n):console.warn(\"Model '\"+n+\"' was already registered\")}},i.register_models=i.Models.register_models,i.Models.registered_names=function(){return Object.keys(o)},i.index={}},function(t,e,o){var s=t(336),a=t(14),l=t(52),h=t(282),u=t(283),c=t(2);o.DEFAULT_SERVER_WEBSOCKET_URL=\"ws://localhost:5006/ws\",o.DEFAULT_SESSION_ID=\"default\";var _=0,p=function(){function t(t,e,i,n,r){void 0===t&&(t=o.DEFAULT_SERVER_WEBSOCKET_URL),void 0===e&&(e=o.DEFAULT_SESSION_ID),void 0===i&&(i=null),void 0===n&&(n=null),void 0===r&&(r=null),this.url=t,this.id=e,this.args_string=i,this._on_have_session_hook=n,this._on_closed_permanently_hook=r,this._number=_++,this.socket=null,this.session=null,this.closed_permanently=!1,this._current_handler=null,this._pending_ack=null,this._pending_replies={},this._receiver=new u.Receiver,a.logger.debug(\"Creating websocket \"+this._number+\" to '\"+this.url+\"' session '\"+this.id+\"'\")}return t.prototype.connect=function(){var i=this;if(this.closed_permanently)return s.Promise.reject(new Error(\"Cannot connect() a closed ClientConnection\"));if(null!=this.socket)return s.Promise.reject(new Error(\"Already connected\"));this._pending_replies={},this._current_handler=null;try{var t=this.url+\"?bokeh-protocol-version=1.0&bokeh-session-id=\"+this.id;return null!=this.args_string&&0<this.args_string.length&&(t+=\"&\"+this.args_string),this.socket=new WebSocket(t),new s.Promise(function(t,e){i.socket.binaryType=\"arraybuffer\",i.socket.onopen=function(){return i._on_open(t,e)},i.socket.onmessage=function(t){return i._on_message(t)},i.socket.onclose=function(t){return i._on_close(t)},i.socket.onerror=function(){return i._on_error(e)}})}catch(t){return a.logger.error(\"websocket creation failed to url: \"+this.url),a.logger.error(\" - \"+t),s.Promise.reject(t)}},t.prototype.close=function(){this.closed_permanently||(a.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(),null!=this._on_closed_permanently_hook&&(this._on_closed_permanently_hook(),this._on_closed_permanently_hook=null))},t.prototype._schedule_reconnect=function(t){var e=this;setTimeout(function(){e.closed_permanently||a.logger.info(\"Websocket connection \"+e._number+\" disconnected, will not attempt to reconnect\")},t)},t.prototype.send=function(t){if(null==this.socket)throw new Error(\"not connected so cannot send \"+t);t.send(this.socket)},t.prototype.send_with_reply=function(i){var n=this,t=new s.Promise(function(t,e){n._pending_replies[i.msgid()]=[t,e],n.send(i)});return t.then(function(t){if(\"ERROR\"===t.msgtype())throw new Error(\"Error reply \"+t.content.text);return t},function(t){throw t})},t.prototype._pull_doc_json=function(){var t=h.Message.create(\"PULL-DOC-REQ\",{}),e=this.send_with_reply(t);return e.then(function(t){if(!(\"doc\"in t.content))throw new Error(\"No 'doc' field in PULL-DOC-REPLY\");return t.content.doc},function(t){throw t})},t.prototype._repull_session_doc=function(){var r=this;null==this.session?a.logger.debug(\"Pulling session for first time\"):a.logger.debug(\"Repulling session\"),this._pull_doc_json().then(function(t){if(null==r.session)if(r.closed_permanently)a.logger.debug(\"Got new document after connection was already closed\");else{var e=l.Document.from_json(t),i=l.Document._compute_patch_since_json(t,e);if(0<i.events.length){a.logger.debug(\"Sending \"+i.events.length+\" changes from model construction back to server\");var n=h.Message.create(\"PATCH-DOC\",{},i);r.send(n)}r.session=new c.ClientSession(r,e,r.id),a.logger.debug(\"Created a new session from new pulled doc\"),null!=r._on_have_session_hook&&(r._on_have_session_hook(r.session),r._on_have_session_hook=null)}else r.session.document.replace_with_json(t),a.logger.debug(\"Updated existing session with new pulled doc\")},function(t){throw t}).catch(function(t){null!=console.trace&&console.trace(t),a.logger.error(\"Failed to repull session \"+t)})},t.prototype._on_open=function(t,e){var i=this;a.logger.info(\"Websocket connection \"+this._number+\" is now open\"),this._pending_ack=[t,e],this._current_handler=function(t){i._awaiting_ack_handler(t)}},t.prototype._on_message=function(t){null==this._current_handler&&a.logger.error(\"Got a message with no current handler set\");try{this._receiver.consume(t.data)}catch(t){this._close_bad_protocol(t.toString())}if(null!=this._receiver.message){var e=this._receiver.message,i=e.problem();null!=i&&this._close_bad_protocol(i),this._current_handler(e)}},t.prototype._on_close=function(t){var i=this;a.logger.info(\"Lost websocket \"+this._number+\" connection, \"+t.code+\" (\"+t.reason+\")\"),(this.socket=null)!=this._pending_ack&&(this._pending_ack[1](new Error(\"Lost websocket connection, \"+t.code+\" (\"+t.reason+\")\")),this._pending_ack=null);for(var e=function(){for(var t in i._pending_replies){var e=i._pending_replies[t];return delete i._pending_replies[t],e}return null},n=e();null!=n;)n[1](\"Disconnected\"),n=e();this.closed_permanently||this._schedule_reconnect(2e3)},t.prototype._on_error=function(t){a.logger.debug(\"Websocket error on socket \"+this._number),t(new Error(\"Could not open websocket\"))},t.prototype._close_bad_protocol=function(t){a.logger.error(\"Closing connection: \"+t),null!=this.socket&&this.socket.close(1002,t)},t.prototype._awaiting_ack_handler=function(t){var e=this;\"ACK\"===t.msgtype()?(this._current_handler=function(t){return e._steady_state_handler(t)},this._repull_session_doc(),null!=this._pending_ack&&(this._pending_ack[0](this),this._pending_ack=null)):this._close_bad_protocol(\"First message was not an ACK\")},t.prototype._steady_state_handler=function(t){if(t.reqid()in this._pending_replies){var e=this._pending_replies[t.reqid()];delete this._pending_replies[t.reqid()],e[0](t)}else this.session.handle(t)},t}();o.ClientConnection=p,o.pull_session=function(i,n,r){return new s.Promise(function(t,e){return new p(i,n,r,function(e){try{t(e)}catch(t){throw a.logger.error(\"Promise handler threw an error, closing session \"+t),e.close(),t}},function(){e(new Error(\"Connection was closed before we successfully pulled a session\"))}).connect().then(function(t){},function(t){throw a.logger.error(\"Failed to connect to Bokeh server \"+t),t})})}},function(t,e,i){var n=t(14),r=t(52),o=t(282),s=function(){function t(t,e,i){var n=this;this._connection=t,this.document=e,this.id=i,this._document_listener=function(t){return n._document_changed(t)},this.document.on_change(this._document_listener),this.event_manager=this.document.event_manager,this.event_manager.session=this}return t.prototype.handle=function(t){var e=t.msgtype();\"PATCH-DOC\"===e?this._handle_patch(t):\"OK\"===e?this._handle_ok(t):\"ERROR\"===e?this._handle_error(t):n.logger.debug(\"Doing nothing with message \"+t.msgtype())},t.prototype.close=function(){this._connection.close()},t.prototype.send_event=function(t){var e=o.Message.create(\"EVENT\",{},JSON.stringify(t));this._connection.send(e)},t.prototype._connection_closed=function(){this.document.remove_on_change(this._document_listener)},t.prototype.request_server_info=function(){var t=o.Message.create(\"SERVER-INFO-REQ\",{}),e=this._connection.send_with_reply(t);return e.then(function(t){return t.content})},t.prototype.force_roundtrip=function(){return this.request_server_info().then(function(t){})},t.prototype._document_changed=function(t){if(t.setter_id!==this.id&&(!(t instanceof r.ModelChangedEvent)||t.attr in t.model.serializable_attributes())){var e=o.Message.create(\"PATCH-DOC\",{},this.document.create_json_patch([t]));this._connection.send(e)}},t.prototype._handle_patch=function(t){this.document.apply_json_patch(t.content,t.buffers,this.id)},t.prototype._handle_ok=function(t){n.logger.trace(\"Unhandled OK reply to \"+t.reqid())},t.prototype._handle_error=function(t){n.logger.error(\"Unhandled ERROR reply to \"+t.reqid()+\": \"+t.content.text)},t}();i.ClientSession=s},function(t,e,i){var n=t(391),r=t(14),o=t(32),s={};function a(e){return function(t){t.prototype.event_name=e,s[e]=t}}i.register_event_class=a,i.register_with_event=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=t.prototype.applicable_models.concat(e);t.prototype.applicable_models=n};var l=function(){function t(t){void 0===t&&(t={}),this.model_id=null,(this._options=t).model_id&&(this.model_id=t.model_id)}return t.prototype.set_model_id=function(t){return this._options.model_id=t,this.model_id=t,this},t.prototype.is_applicable_to=function(e){return this.applicable_models.some(function(t){return e instanceof t})},t.event_class=function(t){if(t.type)return s[t.type];r.logger.warn(\"BokehEvent.event_class required events with a string type attribute\")},t.prototype.toJSON=function(){return{event_name:this.event_name,event_values:o.clone(this._options)}},t.prototype._customize_event=function(t){return this},t}();(i.BokehEvent=l).prototype.applicable_models=[];var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"button_click\")],e)}(l);i.ButtonClick=h;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(l),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"lodstart\")],e)}(i.UIEvent=u);i.LODStart=c;var _=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"lodend\")],e)}(u);i.LODEnd=_;var p=function(i){function t(t){var e=i.call(this,t)||this;return e.geometry=t.geometry,e.final=t.final,e}return n.__extends(t,i),t=n.__decorate([a(\"selectiongeometry\")],t)}(u);i.SelectionGeometry=p;var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"reset\")],e)}(u);i.Reset=d;var f=function(i){function t(t){var e=i.call(this,t)||this;return e.sx=t.sx,e.sy=t.sy,e.x=null,e.y=null,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,model_id:e})},t.prototype._customize_event=function(t){var e=t.plot_canvas.frame.xscales.default,i=t.plot_canvas.frame.yscales.default;return this.x=e.invert(this.sx),this.y=i.invert(this.sy),this._options.x=this.x,this._options.y=this.y,this},t}(u),v=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.delta_x=t.delta_x,e.delta_y=t.delta_y,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,delta_x:t.deltaX,delta_y:t.deltaY,direction:t.direction,model_id:e})},t=n.__decorate([a(\"pan\")],t)}(i.PointEvent=f);i.Pan=v;var m=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.scale=t.scale,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,scale:t.scale,model_id:e})},t=n.__decorate([a(\"pinch\")],t)}(f);i.Pinch=m;var g=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.delta=t.delta,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,delta:t.delta,model_id:e})},t=n.__decorate([a(\"wheel\")],t)}(f);i.MouseWheel=g;var y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mousemove\")],e)}(f);i.MouseMove=y;var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mouseenter\")],e)}(f);i.MouseEnter=b;var x=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mouseleave\")],e)}(f);i.MouseLeave=x;var w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"tap\")],e)}(f);i.Tap=w;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"doubletap\")],e)}(f);i.DoubleTap=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"press\")],e)}(f);i.Press=S;var C=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"panstart\")],e)}(f);i.PanStart=C;var T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"panend\")],e)}(f);i.PanEnd=T;var A=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"pinchstart\")],e)}(f);i.PinchStart=A;var E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"pinchend\")],e)}(f);i.PinchEnd=E},function(t,e,i){var g=t(391),y=t(21);i.build_views=function(e,t,i,n){void 0===n&&(n=function(t){return t.default_view});for(var r=y.difference(Object.keys(e),t.map(function(t){return t.id})),o=0,s=r;o<s.length;o++){var a=s[o];e[a].remove(),delete e[a]}for(var l=[],h=t.filter(function(t){return null==e[t.id]}),u=0,c=h;u<c.length;u++){var _=c[u],p=n(_),d=g.__assign({},i,{model:_,connect_signals:!1}),f=new p(d);e[_.id]=f,l.push(f)}for(var v=0,m=l;v<m.length;v++){var f=m[v];f.connect_signals()}return l},i.remove_views=function(t){for(var e in t)t[e].remove(),delete t[e]}},function(t,e,i){var n,y=t(44),r=function(g){return function(t){void 0===t&&(t={});for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=document.createElement(g);for(var r in t){var o=t[r];if(null!=o&&(!y.isBoolean(o)||o))if(\"class\"===r&&y.isArray(o))for(var s=0,a=o;s<a.length;s++){var l=a[s];null!=l&&n.classList.add(l)}else if(\"style\"===r&&y.isPlainObject(o))for(var h in o)n.style[h]=o[h];else if(\"data\"===r&&y.isPlainObject(o))for(var u in o)n.dataset[u]=o[u];else n.setAttribute(r,o)}function c(t){if(t instanceof HTMLElement)n.appendChild(t);else if(y.isString(t))n.appendChild(document.createTextNode(t));else if(null!=t&&!1!==t)throw new Error(\"expected an HTMLElement, string, false or null, got \"+JSON.stringify(t))}for(var _=0,p=e;_<p.length;_++){var d=p[_];if(y.isArray(d))for(var f=0,v=d;f<v.length;f++){var m=v[f];c(m)}else c(d)}return n}};function o(t,e){var i=Element.prototype,n=i.matches||i.webkitMatchesSelector||i.mozMatchesSelector||i.msMatchesSelector;return n.call(t,e)}i.createElement=function(t,e){for(var i=[],n=2;n<arguments.length;n++)i[n-2]=arguments[n];return r(t).apply(void 0,[e].concat(i))},i.div=r(\"div\"),i.span=r(\"span\"),i.link=r(\"link\"),i.style=r(\"style\"),i.a=r(\"a\"),i.p=r(\"p\"),i.i=r(\"i\"),i.pre=r(\"pre\"),i.button=r(\"button\"),i.label=r(\"label\"),i.input=r(\"input\"),i.select=r(\"select\"),i.option=r(\"option\"),i.optgroup=r(\"optgroup\"),i.textarea=r(\"textarea\"),i.canvas=r(\"canvas\"),i.ul=r(\"ul\"),i.ol=r(\"ol\"),i.li=r(\"li\"),i.nbsp=document.createTextNode(\" \"),i.removeElement=function(t){var e=t.parentNode;null!=e&&e.removeChild(t)},i.replaceWith=function(t,e){var i=t.parentNode;null!=i&&i.replaceChild(e,t)},i.prepend=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];for(var n=t.firstChild,r=0,o=e;r<o.length;r++){var s=o[r];t.insertBefore(s,n)}},i.empty=function(t){for(var e;e=t.firstChild;)t.removeChild(e)},i.show=function(t){t.style.display=\"\"},i.hide=function(t){t.style.display=\"none\"},i.position=function(t){return{top:t.offsetTop,left:t.offsetLeft}},i.offset=function(t){var e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset-document.documentElement.clientTop,left:e.left+window.pageXOffset-document.documentElement.clientLeft}},i.matches=o,i.parent=function(t,e){for(var i=t;i=i.parentElement;)if(o(i,e))return i;return null},i.margin=function(t){var e=getComputedStyle(t);return{top:parseFloat(e.marginTop)||0,bottom:parseFloat(e.marginBottom)||0,left:parseFloat(e.marginLeft)||0,right:parseFloat(e.marginRight)||0}},i.padding=function(t){var e=getComputedStyle(t);return{top:parseFloat(e.paddingTop)||0,bottom:parseFloat(e.paddingBottom)||0,left:parseFloat(e.paddingLeft)||0,right:parseFloat(e.paddingRight)||0}},(n=i.Keys||(i.Keys={}))[n.Backspace=8]=\"Backspace\",n[n.Tab=9]=\"Tab\",n[n.Enter=13]=\"Enter\",n[n.Esc=27]=\"Esc\",n[n.PageUp=33]=\"PageUp\",n[n.PageDown=34]=\"PageDown\",n[n.Left=37]=\"Left\",n[n.Up=38]=\"Up\",n[n.Right=39]=\"Right\",n[n.Down=40]=\"Down\",n[n.Delete=46]=\"Delete\"},function(t,e,i){var n=t(391),r=t(48),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._has_finished=!1,this.el=this._createElement()},t.prototype.remove=function(){o.removeElement(this.el),e.prototype.remove.call(this)},t.prototype.css_classes=function(){return[]},t.prototype.cursor=function(t,e){return null},t.prototype.layout=function(){},t.prototype.render=function(){},t.prototype.renderTo=function(t){t.appendChild(this.el),this.layout()},t.prototype.has_finished=function(){return this._has_finished},Object.defineProperty(t.prototype,\"_root_element\",{get:function(){return o.parent(this.el,\".bk-root\")||document.body},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"solver\",{get:function(){return this.is_root?this._solver:this.parent.solver},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_idle\",{get:function(){return this.has_finished()},enumerable:!0,configurable:!0}),t.prototype._createElement=function(){return o.createElement(this.tagName,{id:this.id,class:this.css_classes()})},t}(r.View);(i.DOMView=s).prototype.tagName=\"div\"},function(t,e,i){i.AngleUnits=[\"deg\",\"rad\"],i.Dimension=[\"width\",\"height\"],i.Dimensions=[\"width\",\"height\",\"both\"],i.Direction=[\"clock\",\"anticlock\"],i.FontStyle=[\"normal\",\"italic\",\"bold\",\"bold italic\"],i.LatLon=[\"lat\",\"lon\"],i.LineCap=[\"butt\",\"round\",\"square\"],i.LineJoin=[\"miter\",\"round\",\"bevel\"],i.Location=[\"above\",\"below\",\"left\",\"right\"],i.LegendClickPolicy=[\"none\",\"hide\",\"mute\"],i.LegendLocation=[\"top_left\",\"top_center\",\"top_right\",\"center_left\",\"center\",\"center_right\",\"bottom_left\",\"bottom_center\",\"bottom_right\"],i.Anchor=i.LegendLocation,i.Orientation=[\"vertical\",\"horizontal\"],i.OutputBackend=[\"canvas\",\"svg\",\"webgl\"],i.RenderLevel=[\"image\",\"underlay\",\"glyph\",\"annotation\",\"overlay\"],i.RenderMode=[\"canvas\",\"css\"],i.Side=[\"above\",\"below\",\"left\",\"right\"],i.Place=[\"above\",\"below\",\"left\",\"right\",\"center\"],i.SpatialUnits=[\"screen\",\"data\"],i.StartEnd=[\"start\",\"end\"],i.VerticalAlign=[\"top\",\"middle\",\"bottom\"],i.TextAlign=[\"left\",\"right\",\"center\"],i.TextBaseline=[\"top\",\"middle\",\"bottom\",\"alphabetic\",\"hanging\",\"ideographic\"],i.TickLabelOrientation=[\"vertical\",\"horizontal\",\"parallel\",\"normal\"],i.TooltipAttachment=[\"horizontal\",\"vertical\",\"left\",\"right\",\"above\",\"below\"],i.Distribution=[\"uniform\",\"normal\"],i.StepMode=[\"after\",\"before\",\"center\"],i.SizingMode=[\"stretch_both\",\"scale_width\",\"scale_height\",\"scale_both\",\"fixed\"],i.PaddingUnits=[\"percent\",\"absolute\"],i.SliderCallbackPolicy=[\"continuous\",\"throttle\",\"mouseup\"],i.RoundingFunction=[\"round\",\"nearest\",\"floor\",\"rounddown\",\"ceil\",\"roundup\"],i.UpdateMode=[\"replace\",\"append\"],i.HTTPMethod=[\"POST\",\"GET\"],i.Logo=[\"normal\",\"grey\"]},function(t,e,i){var o=t(391),l=t(19),n=t(16),h=t(34),r=t(15),u=t(38),s=t(21),_=t(32),p=t(44),d=t(30),a=function(a){function c(t){void 0===t&&(t={});var e=a.call(this)||this;for(var i in e._subtype=void 0,e.document=null,e.destroyed=new l.Signal0(e,\"destroyed\"),e.change=new l.Signal0(e,\"change\"),e.transformchange=new l.Signal0(e,\"transformchange\"),e.attributes={},e.properties={},e._set_after_defaults={},e._pending=!1,e._changing=!1,e.props){var n=e.props[i],r=n.type,o=n.default_value;if(null==r)throw new Error(\"undefined property type for \"+e.type+\".\"+i);e.properties[i]=new r(e,i,o)}null==t.id&&e.setv({id:u.uniqueId()},{silent:!0});var s=t.__deferred__||!1;return s&&delete(t=_.clone(t)).__deferred__,e.setv(t,{silent:!0}),s||e.finalize(),e}return o.__extends(c,a),c.initClass=function(){this.prototype.type=\"HasProps\",this.prototype.props={},this.prototype.mixins=[],this.define({id:[r.Any]})},c._fix_default=function(t,e){return void 0===t?void 0:p.isFunction(t)?t:p.isObject(t)?p.isArray(t)?function(){return s.copy(t)}:function(){return _.clone(t)}:function(){return t}},c.define=function(a){var t=function(i){var t=a[i];if(null!=l.prototype.props[i])throw new Error(\"attempted to redefine property '\"+l.prototype.type+\".\"+i+\"'\");if(null!=l.prototype[i])throw new Error(\"attempted to redefine attribute '\"+l.prototype.type+\".\"+i+\"'\");Object.defineProperty(l.prototype,i,{get:function(){var t=this.getv(i);return t},set:function(t){var e;return this.setv(((e={})[i]=t,e)),this},configurable:!1,enumerable:!0});var e=t[0],n=t[1],r=t[2],o={type:e,default_value:l._fix_default(n,i),internal:r||!1},s=_.clone(l.prototype.props);s[i]=o,l.prototype.props=s},l=this;for(var e in a)t(e)},c.internal=function(t){var e={};for(var i in t){var n=t[i],r=n[0],o=n[1];e[i]=[r,o,!0]}this.define(e)},c.mixin=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];this.define(n.create(t));var i=this.prototype.mixins.concat(t);this.prototype.mixins=i},c.mixins=function(t){this.mixin.apply(this,t)},c.override=function(t){for(var e in t){var i=this._fix_default(t[e],e),n=this.prototype.props[e];if(null==n)throw new Error(\"attempted to override nonexistent '\"+this.prototype.type+\".\"+e+\"'\");var r=_.clone(this.prototype.props);r[e]=o.__assign({},n,{default_value:i}),this.prototype.props=r}},c.prototype.toString=function(){return this.type+\"(\"+this.id+\")\"},c.prototype.finalize=function(){var t=this;for(var e in this.properties){var i=this.properties[e];i.update(),null!=i.spec.transform&&this.connect(i.spec.transform.change,function(){return t.transformchange.emit()})}this.initialize(),this.connect_signals()},c.prototype.initialize=function(){},c.prototype.connect_signals=function(){},c.prototype.disconnect_signals=function(){l.Signal.disconnectReceiver(this)},c.prototype.destroy=function(){this.disconnect_signals(),this.destroyed.emit()},c.prototype.clone=function(){return new this.constructor(this.attributes)},c.prototype._setv=function(t,e){var i=e.check_eq,n=e.silent,r=[],o=this._changing;this._changing=!0;var s=this.attributes;for(var a in t){var l=t[a];!1!==i&&d.isEqual(s[a],l)||r.push(a),s[a]=l}if(!n){0<r.length&&(this._pending=!0);for(var h=0;h<r.length;h++)this.properties[r[h]].change.emit()}if(!o){if(!n&&!e.no_change)for(;this._pending;)this._pending=!1,this.change.emit();this._pending=!1,this._changing=!1}},c.prototype.setv=function(t,e){for(var i in void 0===e&&(e={}),t)if(t.hasOwnProperty(i)){var n=i;if(null==this.props[n])throw new Error(\"property \"+this.type+\".\"+n+\" wasn't declared\");null!=e&&e.defaults||(this._set_after_defaults[i]=!0)}if(!_.isEmpty(t)){var r={};for(var i in t)r[i]=this.getv(i);this._setv(t,e);var o=e.silent;if(null==o||!o)for(var i in t)this._tell_document_about_change(i,r[i],this.getv(i),e)}},c.prototype.getv=function(t){if(null==this.props[t])throw new Error(\"property \"+this.type+\".\"+t+\" wasn't declared\");return this.attributes[t]},c.prototype.ref=function(){return h.create_ref(this)},c.prototype.set_subtype=function(t){this._subtype=t},c.prototype.attribute_is_serializable=function(t){var e=this.props[t];if(null==e)throw new Error(this.type+\".attribute_is_serializable('\"+t+\"'): \"+t+\" wasn't declared\");return!e.internal},c.prototype.serializable_attributes=function(){var t={};for(var e in this.attributes){var i=this.attributes[e];this.attribute_is_serializable(e)&&(t[e]=i)}return t},c._value_to_json=function(t,e,i){if(e instanceof c)return e.ref();if(p.isArray(e)){for(var n=[],r=0;r<e.length;r++){var o=e[r];n.push(c._value_to_json(r.toString(),o,e))}return n}if(p.isPlainObject(e)){var s={};for(var a in e)e.hasOwnProperty(a)&&(s[a]=c._value_to_json(a,e[a],e));return s}return e},c.prototype.attributes_as_json=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=c._value_to_json);var i=this.serializable_attributes(),n={};for(var r in i)if(i.hasOwnProperty(r)){var o=i[r];t?n[r]=o:r in this._set_after_defaults&&(n[r]=o)}return e(\"attributes\",n,this)},c._json_record_references=function(t,e,i,n){if(null==e);else if(h.is_ref(e)){if(!(e.id in i)){var r=t.get_model_by_id(e.id);c._value_record_references(r,i,n)}}else if(p.isArray(e))for(var o=0,s=e;o<s.length;o++){var a=s[o];c._json_record_references(t,a,i,n)}else if(p.isPlainObject(e))for(var l in e)if(e.hasOwnProperty(l)){var a=e[l];c._json_record_references(t,a,i,n)}},c._value_record_references=function(t,e,i){if(null==t);else if(t instanceof c){if(!(t.id in e)&&(e[t.id]=t,i))for(var n=t._immediate_references(),r=0,o=n;r<o.length;r++){var s=o[r];c._value_record_references(s,e,!0)}}else if(t.buffer instanceof ArrayBuffer);else if(p.isArray(t))for(var a=0,l=t;a<l.length;a++){var h=l[a];c._value_record_references(h,e,i)}else if(p.isPlainObject(t))for(var u in t)if(t.hasOwnProperty(u)){var h=t[u];c._value_record_references(h,e,i)}},c.prototype._immediate_references=function(){var t={},e=this.serializable_attributes();for(var i in e){var n=e[i];c._value_record_references(n,t,!1)}return _.values(t)},c.prototype.references=function(){var t={};return c._value_record_references(this,t,!0),_.values(t)},c.prototype._doc_attached=function(){},c.prototype.attach_document=function(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()},c.prototype.detach_document=function(){this.document=null},c.prototype._tell_document_about_change=function(t,e,i,n){if(this.attribute_is_serializable(t)&&null!=this.document){var r={};c._value_record_references(i,r,!1);var o={};c._value_record_references(e,o,!1);var s=!1;for(var a in r)if(!(a in o)){s=!0;break}if(!s)for(var l in o)if(!(l in r)){s=!0;break}s&&this.document._invalidate_all_models(),this.document._notify_change(this,t,e,i,n)}},c.prototype.materialize_dataspecs=function(t){var e={};for(var i in this.properties){var n=this.properties[i];n.dataspec&&(!n.optional||null!=n.spec.value||i in this._set_after_defaults)&&(e[\"_\"+i]=n.array(t),null!=n.spec.field&&n.spec.field in t._shapes&&(e[\"_\"+i+\"_shape\"]=t._shapes[n.spec.field]),n instanceof r.DistanceSpec&&(e[\"max_\"+i]=s.max(e[\"_\"+i])))}return e},c}(l.Signalable());(i.HasProps=a).initClass()},function(t,e,i){var n=t(21),r=t(197);function o(t){return t*t}function s(t,e){return o(t.x-e.x)+o(t.y-e.y)}function a(t,e,i){var n=s(e,i);if(0==n)return s(t,e);var r=((t.x-e.x)*(i.x-e.x)+(t.y-e.y)*(i.y-e.y))/n;if(r<0)return s(t,e);if(1<r)return s(t,i);var o={x:e.x+r*(i.x-e.x),y:e.y+r*(i.y-e.y)};return s(t,o)}i.point_in_poly=function(t,e,i,n){for(var r=!1,o=i[i.length-1],s=n[n.length-1],a=0;a<i.length;a++){var l=i[a],h=n[a];s<e!=h<e&&o+(e-s)/(h-s)*(l-o)<t&&(r=!r),o=l,s=h}return r},i.point_in_ellipse=function(t,e,i,n,r,o,s){var a=Math.pow(Math.cos(i)/r,2)+Math.pow(Math.sin(i)/n,2),l=2*Math.cos(i)*Math.sin(i)*(Math.pow(1/r,2)-Math.pow(1/n,2)),h=Math.pow(Math.cos(i)/n,2)+Math.pow(Math.sin(i)/r,2);return a*Math.pow(t-o,2)+l*(t-o)*(e-s)+h*Math.pow(e-s,2)<=1},i.create_empty_hit_test_result=function(){return new r.Selection},i.create_hit_test_result_from_hits=function(t){var e=new r.Selection;return e.indices=n.sortBy(t,function(t){return t[0],t[1]}).map(function(t){var e=t[0];return t[1],e}),e},i.validate_bbox_coords=function(t,e){var i,n,r=t[0],o=t[1],s=e[0],a=e[1];return o<r&&(r=(i=[o,r])[0],o=i[1]),a<s&&(s=(n=[a,s])[0],a=n[1]),{minX:r,minY:s,maxX:o,maxY:a}},i.dist_2_pts=s,i.dist_to_segment_squared=a,i.dist_to_segment=function(t,e,i){return Math.sqrt(a(t,e,i))},i.check_2_segments_intersect=function(t,e,i,n,r,o,s,a){var l=(a-o)*(i-t)-(s-r)*(n-e);if(0==l)return{hit:!1,x:null,y:null};var h=e-o,u=t-r,c=(s-r)*h-(a-o)*u,_=(i-t)*h-(n-e)*u;u=_/l;var p=t+(h=c/l)*(i-t),d=e+h*(n-e);return{hit:0<h&&h<1&&0<u&&u<1,x:p,y:d}}},function(t,e,i){var s=t(13),a=t(21);i.vstack=function(t,e){var i=[];if(0<e.length){i.push(s.EQ(a.head(e)._bottom,[-1,t._bottom])),i.push(s.EQ(a.tail(e)._top,[-1,t._top])),i.push.apply(i,a.pairwise(e,function(t,e){return s.EQ(t._top,[-1,e._bottom])}));for(var n=0,r=e;n<r.length;n++){var o=r[n];i.push(s.EQ(o._left,[-1,t._left])),i.push(s.EQ(o._right,[-1,t._right]))}}return i},i.hstack=function(t,e){var i=[];if(0<e.length){i.push(s.EQ(a.head(e)._right,[-1,t._right])),i.push(s.EQ(a.tail(e)._left,[-1,t._left])),i.push.apply(i,a.pairwise(e,function(t,e){return s.EQ(t._left,[-1,e._right])}));for(var n=0,r=e;n<r.length;n++){var o=r[n];i.push(s.EQ(o._top,[-1,t._top])),i.push(s.EQ(o._bottom,[-1,t._bottom]))}}return i}},function(t,e,i){var n=t(391),r=t(13),o=t(8),s=t(24),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutCanvas\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._top=new r.Variable(this.toString()+\".top\"),this._left=new r.Variable(this.toString()+\".left\"),this._width=new r.Variable(this.toString()+\".width\"),this._height=new r.Variable(this.toString()+\".height\"),this._right=new r.Variable(this.toString()+\".right\"),this._bottom=new r.Variable(this.toString()+\".bottom\");var t=this;this._hcenter={get value(){return(t._left.value+t._right.value)/2}},this._vcenter={get value(){return(t._top.value+t._bottom.value)/2}}},t.prototype.get_editables=function(){return[]},t.prototype.get_constraints=function(){return[r.GE(this._top),r.GE(this._bottom),r.GE(this._left),r.GE(this._right),r.GE(this._width),r.GE(this._height),r.EQ(this._left,this._width,[-1,this._right]),r.EQ(this._top,this._height,[-1,this._bottom])]},t.prototype.get_layoutable_children=function(){return[]},Object.defineProperty(t.prototype,\"bbox\",{get:function(){return new s.BBox({x0:this._left.value,y0:this._top.value,x1:this._right.value,y1:this._bottom.value})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"layout_bbox\",{get:function(){return{top:this._top.value,left:this._left.value,width:this._width.value,height:this._height.value,right:this._right.value,bottom:this._bottom.value}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"xview\",{get:function(){var r=this;return{compute:function(t){return r._left.value+t},v_compute:function(t){for(var e=new Float64Array(t.length),i=r._left.value,n=0;n<t.length;n++)e[n]=i+t[n];return e}}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"yview\",{get:function(){var r=this;return{compute:function(t){return r._bottom.value-t},v_compute:function(t){for(var e=new Float64Array(t.length),i=r._bottom.value,n=0;n<t.length;n++)e[n]=i-t[n];return e}}},enumerable:!0,configurable:!0}),t}(o.HasProps);(i.LayoutCanvas=a).initClass()},function(t,e,r){var i=t(391),o=t(13),n=t(11),s=t(15),a=t(14),l=t(44),h=Math.PI/2,u=\"alphabetic\",c=\"middle\",_=\"hanging\",p=\"left\",d=\"right\",f=\"center\",v={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}},m={above:{justified:\"top\",parallel:u,normal:c,horizontal:u,vertical:c},below:{justified:\"bottom\",parallel:_,normal:c,horizontal:_,vertical:c},left:{justified:\"top\",parallel:u,normal:c,horizontal:c,vertical:u},right:{justified:\"top\",parallel:u,normal:c,horizontal:c,vertical:u}},g={above:{justified:f,parallel:f,normal:p,horizontal:f,vertical:p},below:{justified:f,parallel:f,normal:p,horizontal:f,vertical:p},left:{justified:f,parallel:f,normal:d,horizontal:d,vertical:f},right:{justified:f,parallel:f,normal:p,horizontal:p,vertical:f}},y={above:d,below:p,left:d,right:p},b={above:p,below:d,left:d,right:p};function x(t){return\"panel\"in t}r.isSizeable=x,r.isSizeableView=function(t){return x(t.model)&&\"get_size\"in t},r._view_sizes=new WeakMap,r._view_constraints=new WeakMap,r.update_panel_constraints=function(t){var e=t.solver,i=t.get_size(),n=r._view_constraints.get(t);if(null!=n&&e.has_constraint(n)){if(r._view_sizes.get(t)===i)return;e.remove_constraint(n)}n=o.GE(t.model.panel._size,-i),e.add_constraint(n),r._view_sizes.set(t,i),r._view_constraints.set(t,n)};var w=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"SidePanel\",this.internal({side:[s.String]})},t.prototype.toString=function(){return this.type+\"(\"+this.id+\", \"+this.side+\")\"},t.prototype.initialize=function(){switch(e.prototype.initialize.call(this),this.side){case\"above\":this._dim=0,this._normals=[0,-1],this._size=this._height;break;case\"below\":this._dim=0,this._normals=[0,1],this._size=this._height;break;case\"left\":this._dim=1,this._normals=[-1,0],this._size=this._width;break;case\"right\":this._dim=1,this._normals=[1,0],this._size=this._width;break;default:a.logger.error(\"unrecognized side: '\"+this.side+\"'\")}},Object.defineProperty(t.prototype,\"dimension\",{get:function(){return this._dim},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"normals\",{get:function(){return this._normals},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_horizontal\",{get:function(){return\"above\"==this.side||\"below\"==this.side},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_vertical\",{get:function(){return\"left\"==this.side||\"right\"==this.side},enumerable:!0,configurable:!0}),t.prototype.apply_label_text_heuristics=function(t,e){var i,n,r=this.side;l.isString(e)?(i=m[r][e],n=g[r][e]):0===e?n=i=\"whatever\":e<0?(i=\"middle\",n=y[r]):(i=\"middle\",n=b[r]),t.textBaseline=i,t.textAlign=n},t.prototype.get_label_angle_heuristic=function(t){return v[this.side][t]},t}(n.LayoutCanvas);(r.SidePanel=w).initClass()},function(t,e,i){var n=t(350);function r(i){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new n.Constraint(new(n.Expression.bind.apply(n.Expression,[void 0].concat(t))),i)}}function o(i){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new n.Constraint(new(n.Expression.bind.apply(n.Expression,[void 0].concat(t))),i,n.Strength.weak)}}i.Variable=n.Variable,i.Expression=n.Expression,i.Constraint=n.Constraint,i.Operator=n.Operator,i.Strength=n.Strength,i.EQ=r(n.Operator.Eq),i.LE=r(n.Operator.Le),i.GE=r(n.Operator.Ge),i.WEAK_EQ=o(n.Operator.Eq),i.WEAK_LE=o(n.Operator.Le),i.WEAK_GE=o(n.Operator.Ge);var s=function(){function t(){this.solver=new n.Solver}return t.prototype.clear=function(){this.solver=new n.Solver},t.prototype.toString=function(){return\"Solver(num_constraints=\"+this.num_constraints+\", num_editables=\"+this.num_editables+\")\"},Object.defineProperty(t.prototype,\"num_constraints\",{get:function(){return this.solver.numConstraints},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"num_editables\",{get:function(){return this.solver.numEditVariables},enumerable:!0,configurable:!0}),t.prototype.get_constraints=function(){return this.solver.getConstraints()},t.prototype.update_variables=function(){this.solver.updateVariables()},t.prototype.has_constraint=function(t){return this.solver.hasConstraint(t)},t.prototype.add_constraint=function(e){try{this.solver.addConstraint(e)}catch(t){throw new Error(t.message+\": \"+e.toString())}},t.prototype.remove_constraint=function(t){this.solver.removeConstraint(t)},t.prototype.add_edit_variable=function(t,e){this.solver.addEditVariable(t,e)},t.prototype.remove_edit_variable=function(t){this.solver.removeEditVariable(t)},t.prototype.suggest_value=function(t,e){this.solver.suggestValue(t,e)},t}();i.Solver=s},function(t,e,i){var o=t(44),n={},s=function(t,e){this.name=t,this.level=e};i.LogLevel=s;var r=function(){function r(t,e){void 0===e&&(e=r.INFO),this._name=t,this.set_level(e)}return Object.defineProperty(r,\"levels\",{get:function(){return Object.keys(r.log_levels)},enumerable:!0,configurable:!0}),r.get=function(t,e){if(void 0===e&&(e=r.INFO),0<t.length){var i=n[t];return null==i&&(n[t]=i=new r(t,e)),i}throw new TypeError(\"Logger.get() expects a non-empty string name and an optional log-level\")},Object.defineProperty(r.prototype,\"level\",{get:function(){return this.get_level()},enumerable:!0,configurable:!0}),r.prototype.get_level=function(){return this._log_level},r.prototype.set_level=function(t){if(t instanceof s)this._log_level=t;else{if(!o.isString(t)||null==r.log_levels[t])throw new Error(\"Logger.set_level() expects a log-level object or a string name of a log-level\");this._log_level=r.log_levels[t]}var e=\"[\"+this._name+\"]\";for(var i in r.log_levels){var n=r.log_levels[i];n.level<this._log_level.level||this._log_level.level===r.OFF.level?this[i]=function(){}:this[i]=a(i,e)}},r.prototype.trace=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.debug=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.info=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.warn=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.error=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.TRACE=new s(\"trace\",0),r.DEBUG=new s(\"debug\",1),r.INFO=new s(\"info\",2),r.WARN=new s(\"warn\",6),r.ERROR=new s(\"error\",7),r.FATAL=new s(\"fatal\",8),r.OFF=new s(\"off\",9),r.log_levels={trace:r.TRACE,debug:r.DEBUG,info:r.INFO,warn:r.WARN,error:r.ERROR,fatal:r.FATAL,off:r.OFF},r}();function a(t,e){return null!=console[t]?console[t].bind(console,e):null!=console.log?console.log.bind(console,e):function(){}}i.Logger=r,i.logger=r.get(\"bokeh\"),i.set_log_level=function(t){null==r.log_levels[t]?(console.log(\"[bokeh] unrecognized logging level '\"+t+\"' passed to Bokeh.set_log_level(), ignoring\"),console.log(\"[bokeh] valid log levels are: \"+r.levels.join(\", \"))):(console.log(\"[bokeh] setting log level to: '\"+t+\"'\"),i.logger.set_level(t))}},function(t,e,i){var o=t(391),s=t(19),n=t(7),r=t(39),a=t(27),l=t(21),h=t(22),u=t(44);function c(e){try{return JSON.stringify(e)}catch(t){return e.toString()}}function _(t){return u.isPlainObject(t)&&(void 0===t.value?0:1)+(void 0===t.field?0:1)+(void 0===t.expr?0:1)==1}s.Signal,i.isSpec=_;var p=function(r){function t(t,e,i){var n=r.call(this)||this;return n.obj=t,n.attr=e,n.default_value=i,n.optional=!1,n.obj=t,n.attr=e,n.default_value=i,n.change=new s.Signal0(n.obj,\"change\"),n._init(),n.connect(n.change,function(){return n._init()}),n}return o.__extends(t,r),t.prototype.update=function(){this._init()},t.prototype.init=function(){},t.prototype.transform=function(t){return t},t.prototype.validate=function(t){},t.prototype.value=function(t){if(void 0===t&&(t=!0),void 0===this.spec.value)throw new Error(\"attempted to retrieve property value for property without value specification\");var e=this.transform([this.spec.value])[0];return null!=this.spec.transform&&t&&(e=this.spec.transform.compute(e)),e},t.prototype.array=function(t){if(!this.dataspec)throw new Error(\"attempted to retrieve property array for non-dataspec property\");var e;if(null!=this.spec.field){if(null==(e=this.transform(t.get_column(this.spec.field))))throw new Error(\"attempted to retrieve property array for nonexistent field '\"+this.spec.field+\"'\")}else if(null!=this.spec.expr)e=this.transform(this.spec.expr.v_compute(t));else{var i=t.get_length();null==i&&(i=1);var n=this.value(!1);e=l.repeat(n,i)}return null!=this.spec.transform&&(e=this.spec.transform.v_compute(e)),e},t.prototype._init=function(){var t,e=this.obj,i=this.attr,n=e.getv(i);if(void 0===n){var r=this.default_value;n=void 0!==r?r(e):null,e.setv(((t={})[i]=n,t),{silent:!0,defaults:!0})}if(u.isArray(n)?this.spec={value:n}:_(n)?this.spec=n:this.spec={value:n},this.dataspec&&null!=this.spec.field&&!u.isString(this.spec.field))throw new Error(\"field value for property '\"+i+\"' is not a string\");null!=this.spec.value&&this.validate(this.spec.value),this.init()},t.prototype.toString=function(){return\"Prop(\"+this.obj+\".\"+this.attr+\", spec: \"+c(this.spec)+\")\"},t}(s.Signalable());function d(i,n){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.validate=function(t){if(!n(t))throw new Error(i+\" property '\"+this.attr+\"' given invalid value: \"+c(t))},e}(p)}(i.Property=p).prototype.dataspec=!1;var f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}((i.simple_prop=d)(\"Any\",function(t){return!0}));i.Any=f;var v=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Array\",function(t){return u.isArray(t)||t instanceof Float64Array}));i.Array=v;var m=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Bool\",u.isBoolean));i.Bool=m,i.Boolean=m;var g=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Color\",function(t){return u.isString(t)&&(r.is_svg_color(t.toLowerCase())||\"#\"==t.substring(0,1)||a.valid_rgb(t))}));i.Color=g;var y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Instance\",function(t){return null!=t.properties}));i.Instance=y;var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Number\",function(t){return u.isNumber(t)||u.isBoolean(t)}));i.Number=b;var x=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(i.Int=b);i.Angle=x;var w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Number\",function(t){return(u.isNumber(t)||u.isBoolean(t))&&0<=t&&t<=1}));i.Percent=w;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"String\",u.isString));i.String=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(i.FontSize=k);function C(t,e){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(t,function(t){return l.includes(e,t)}))}i.Font=S;var T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}((i.enum_prop=C)(\"Anchor\",n.LegendLocation));i.Anchor=T;var A=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"AngleUnits\",n.AngleUnits));i.AngleUnits=A;var E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.transform=function(t){for(var e=new Uint8Array(t.length),i=0;i<t.length;i++)switch(t[i]){case\"clock\":e[i]=0;break;case\"anticlock\":e[i]=1}return e},e}(C(\"Direction\",n.Direction));i.Direction=E;var M=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Dimension\",n.Dimension));i.Dimension=M;var O=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Dimensions\",n.Dimensions));i.Dimensions=O;var z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"FontStyle\",n.FontStyle));i.FontStyle=z;var P=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LatLon\",n.LatLon));i.LatLon=P;var j=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LineCap\",n.LineCap));i.LineCap=j;var N=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LineJoin\",n.LineJoin));i.LineJoin=N;var F=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LegendLocation\",n.LegendLocation));i.LegendLocation=F;var D=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Location\",n.Location));i.Location=D;var I=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"OutputBackend\",n.OutputBackend));i.OutputBackend=I;var R=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Orientation\",n.Orientation));i.Orientation=R;var B=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"VerticalAlign\",n.VerticalAlign));i.VerticalAlign=B;var L=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"TextAlign\",n.TextAlign));i.TextAlign=L;var V=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"TextBaseline\",n.TextBaseline));i.TextBaseline=V;var G=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"RenderLevel\",n.RenderLevel));i.RenderLevel=G;var U=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"RenderMode\",n.RenderMode));i.RenderMode=U;var q=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"SizingMode\",n.SizingMode));i.SizingMode=q;var Y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"SpatialUnits\",n.SpatialUnits));i.SpatialUnits=Y;var X=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Distribution\",n.Distribution));i.Distribution=X;var H=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"StepMode\",n.StepMode));i.StepMode=H;var W=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"PaddingUnits\",n.PaddingUnits));i.PaddingUnits=W;var J=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"StartEnd\",n.StartEnd));function Q(i,n,r){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.init=function(){null==this.spec.units&&(this.spec.units=r);var t=this.spec.units;if(!l.includes(n,t))throw new Error(i+\" units must be one of \"+n+\", given invalid value: \"+t)},Object.defineProperty(e.prototype,\"units\",{get:function(){return this.spec.units},set:function(t){this.spec.units=t},enumerable:!0,configurable:!0}),e}(b)}i.StartEnd=J;var $=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.transform=function(t){return\"deg\"==this.spec.units&&(t=h.map(t,function(t){return t*Math.PI/180})),t=h.map(t,function(t){return-t}),e.prototype.transform.call(this,t)},t}((i.units_prop=Q)(\"AngleSpec\",n.AngleUnits,\"rad\"));(i.AngleSpec=$).prototype.dataspec=!0;var K=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(g);(i.ColorSpec=K).prototype.dataspec=!0;var Z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(Q(\"DistanceSpec\",n.SpatialUnits,\"data\"));(i.DistanceSpec=Z).prototype.dataspec=!0;var tt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.FontSizeSpec=tt).prototype.dataspec=!0;var et=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.MarkerSpec=et).prototype.dataspec=!0;var it=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(b);(i.NumberSpec=it).prototype.dataspec=!0;var nt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.StringSpec=nt).prototype.dataspec=!0},function(t,e,h){var i=t(15),u=t(32);function n(t,e){var i={};for(var n in t){var r=t[n];i[e+n]=r}return i}var r={line_color:[i.ColorSpec,\"black\"],line_width:[i.NumberSpec,1],line_alpha:[i.NumberSpec,1],line_join:[i.LineJoin,\"bevel\"],line_cap:[i.LineCap,\"butt\"],line_dash:[i.Array,[]],line_dash_offset:[i.Number,0]};h.line=function(t){return void 0===t&&(t=\"\"),n(r,t)};var o={fill_color:[i.ColorSpec,\"gray\"],fill_alpha:[i.NumberSpec,1]};h.fill=function(t){return void 0===t&&(t=\"\"),n(o,t)};var s={text_font:[i.Font,\"helvetica\"],text_font_size:[i.FontSizeSpec,\"12pt\"],text_font_style:[i.FontStyle,\"normal\"],text_color:[i.ColorSpec,\"#444444\"],text_alpha:[i.NumberSpec,1],text_align:[i.TextAlign,\"left\"],text_baseline:[i.TextBaseline,\"bottom\"],text_line_height:[i.Number,1.2]};h.text=function(t){return void 0===t&&(t=\"\"),n(s,t)},h.create=function(t){for(var e={},i=0,n=t;i<n.length;i++){var r=n[i],o=r.split(\":\"),s=o[0],a=o[1],l=void 0;switch(s){case\"line\":l=h.line;break;case\"fill\":l=h.fill;break;case\"text\":l=h.text;break;default:throw new Error(\"Unknown property mixin kind '\"+s+\"'\")}u.extend(e,l(a))}return e}},function(t,e,i){var n=t(391),r=t(8),o=t(197),p=t(185),d=t(186),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"SelectionManager\",this.internal({source:[s.Any]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),this.inspectors={}},e.prototype.select=function(t,e,i,n){void 0===n&&(n=!1);for(var r=[],o=[],s=0,a=t;s<a.length;s++){var l=a[s];l instanceof p.GlyphRendererView?r.push(l):l instanceof d.GraphRendererView&&o.push(l)}for(var h=!1,u=0,c=o;u<c.length;u++){var l=c[u],_=l.model.selection_policy.hit_test(e,l);h=h||l.model.selection_policy.do_selection(_,l.model,i,n)}if(0<r.length){var _=this.source.selection_policy.hit_test(e,r);h=h||this.source.selection_policy.do_selection(_,this.source,i,n)}return h},e.prototype.inspect=function(t,e){var i=!1;if(t instanceof p.GlyphRendererView){var n=t.hit_test(e);if(null!=n){i=!n.is_empty();var r=this.get_or_create_inspector(t.model);r.update(n,!0,!1),this.source.setv({inspected:r},{silent:!0}),this.source.inspect.emit([t,{geometry:e}])}}else if(t instanceof d.GraphRendererView){var n=t.model.inspection_policy.hit_test(e,t);i=i||t.model.inspection_policy.do_inspection(n,e,t,!1,!1)}return i},e.prototype.clear=function(t){this.source.selected.clear(),null!=t&&this.get_or_create_inspector(t.model).clear()},e.prototype.get_or_create_inspector=function(t){return null==this.inspectors[t.id]&&(this.inspectors[t.id]=new o.Selection),this.inspectors[t.id]},e}(r.HasProps);(i.SelectionManager=a).initClass()},function(t,e,i){var n=function(){function t(){this._dev=!1}return Object.defineProperty(t.prototype,\"dev\",{get:function(){return this._dev},set:function(t){this._dev=t},enumerable:!0,configurable:!0}),t}();i.Settings=n,i.settings=new n},function(t,e,i){var n,r=t(391),o=t(29),s=t(25),a=t(21),l=function(){function t(t,e){this.sender=t,this.name=e}return t.prototype.connect=function(t,e){void 0===e&&(e=null),u.has(this.sender)||u.set(this.sender,[]);var i=u.get(this.sender);if(null!=_(i,this,t,e))return!1;var n=e||t;c.has(n)||c.set(n,[]);var r=c.get(n),o={signal:this,slot:t,context:e};return i.push(o),r.push(o),!0},t.prototype.disconnect=function(t,e){void 0===e&&(e=null);var i=u.get(this.sender);if(null==i||0===i.length)return!1;var n=_(i,this,t,e);if(null==n)return!1;var r=e||t,o=c.get(r);return n.signal=null,d(i),d(o),!0},t.prototype.emit=function(t){for(var e=u.get(this.sender)||[],i=0,n=e;i<n.length;i++){var r=n[i],o=r.signal,s=r.slot,a=r.context;o===this&&s.call(a,t,this.sender)}},t}(),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r.__extends(e,t),e.prototype.emit=function(){t.prototype.emit.call(this,void 0)},e}(i.Signal=l);i.Signal0=h,(n=l=i.Signal||(i.Signal={})).disconnectBetween=function(t,e){var i=u.get(t);if(null!=i&&0!==i.length){var n=c.get(e);if(null!=n&&0!==n.length){for(var r=0,o=n;r<o.length;r++){var s=o[r];if(null==s.signal)return;s.signal.sender===t&&(s.signal=null)}d(i),d(n)}}},n.disconnectSender=function(t){var e=u.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null==r.signal)return;var o=r.context||r.slot;r.signal=null,d(c.get(o))}d(e)}},n.disconnectReceiver=function(t){var e=c.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null==r.signal)return;var o=r.signal.sender;r.signal=null,d(u.get(o))}d(e)}},n.disconnectAll=function(t){var e=u.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];r.signal=null}d(e)}var o=c.get(t);if(null!=o&&0!==o.length){for(var s=0,a=o;s<a.length;s++){var r=a[s];r.signal=null}d(o)}},i.Signal=l,i.Signalable=function(t){return null!=t?function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r.__extends(e,t),e.prototype.connect=function(t,e){return t.connect(e,this)},e}(t):function(){function t(){}return t.prototype.connect=function(t,e){return t.connect(e,this)},t}()},(i._Signalable||(i._Signalable={})).connect=function(t,e){return t.connect(e,this)};var u=new WeakMap,c=new WeakMap;function _(t,e,i,n){return a.find(t,function(t){return t.signal===e&&t.slot===i&&t.context===n})}var p=new o.Set;function d(t){0===p.size&&s.defer(f),p.add(t)}function f(){p.forEach(function(t){a.removeBy(t,function(t){return null==t.signal})}),p.clear()}},function(t,e,d){var i=t(391),o=t(347),s=t(19),a=t(14),l=t(5),n=t(45),h=t(21),f=t(32),r=t(44),u=t(3);d.is_mobile=\"ontouchstart\"in window||0<navigator.maxTouchPoints;var c=function(){function t(t,e,i,n){var r=this;this.plot_view=t,this.toolbar=e,this.hit_area=i,this.plot=n,this.pan_start=new s.Signal(this,\"pan:start\"),this.pan=new s.Signal(this,\"pan\"),this.pan_end=new s.Signal(this,\"pan:end\"),this.pinch_start=new s.Signal(this,\"pinch:start\"),this.pinch=new s.Signal(this,\"pinch\"),this.pinch_end=new s.Signal(this,\"pinch:end\"),this.rotate_start=new s.Signal(this,\"rotate:start\"),this.rotate=new s.Signal(this,\"rotate\"),this.rotate_end=new s.Signal(this,\"rotate:end\"),this.tap=new s.Signal(this,\"tap\"),this.doubletap=new s.Signal(this,\"doubletap\"),this.press=new s.Signal(this,\"press\"),this.move_enter=new s.Signal(this,\"move:enter\"),this.move=new s.Signal(this,\"move\"),this.move_exit=new s.Signal(this,\"move:exit\"),this.scroll=new s.Signal(this,\"scroll\"),this.keydown=new s.Signal(this,\"keydown\"),this.keyup=new s.Signal(this,\"keyup\"),this.hammer=new o(this.hit_area),this._configure_hammerjs(),this.hit_area.addEventListener(\"mousemove\",function(t){return r._mouse_move(t)}),this.hit_area.addEventListener(\"mouseenter\",function(t){return r._mouse_enter(t)}),this.hit_area.addEventListener(\"mouseleave\",function(t){return r._mouse_exit(t)}),this.hit_area.addEventListener(\"wheel\",function(t){return r._mouse_wheel(t)}),document.addEventListener(\"keydown\",this),document.addEventListener(\"keyup\",this)}return t.prototype.destroy=function(){this.hammer.destroy(),document.removeEventListener(\"keydown\",this),document.removeEventListener(\"keyup\",this)},t.prototype.handleEvent=function(t){\"keydown\"==t.type?this._key_down(t):\"keyup\"==t.type&&this._key_up(t)},t.prototype._configure_hammerjs=function(){var e=this;this.hammer.get(\"doubletap\").recognizeWith(\"tap\"),this.hammer.get(\"tap\").requireFailure(\"doubletap\"),this.hammer.get(\"doubletap\").dropRequireFailure(\"tap\"),this.hammer.on(\"doubletap\",function(t){return e._doubletap(t)}),this.hammer.on(\"tap\",function(t){return e._tap(t)}),this.hammer.on(\"press\",function(t){return e._press(t)}),this.hammer.get(\"pan\").set({direction:o.DIRECTION_ALL}),this.hammer.on(\"panstart\",function(t){return e._pan_start(t)}),this.hammer.on(\"pan\",function(t){return e._pan(t)}),this.hammer.on(\"panend\",function(t){return e._pan_end(t)}),this.hammer.get(\"pinch\").set({enable:!0}),this.hammer.on(\"pinchstart\",function(t){return e._pinch_start(t)}),this.hammer.on(\"pinch\",function(t){return e._pinch(t)}),this.hammer.on(\"pinchend\",function(t){return e._pinch_end(t)}),this.hammer.get(\"rotate\").set({enable:!0}),this.hammer.on(\"rotatestart\",function(t){return e._rotate_start(t)}),this.hammer.on(\"rotate\",function(t){return e._rotate(t)}),this.hammer.on(\"rotateend\",function(t){return e._rotate_end(t)})},t.prototype.register_tool=function(i){var n=this,t=i.model.event_type;null!=t&&(r.isString(t)?this._register_tool(i,t):t.forEach(function(t,e){return n._register_tool(i,t,e<1)}))},t.prototype._register_tool=function(t,e,i){void 0===i&&(i=!0);var n=t,r=n.model.id,o=function(e){return function(t){t.id==r&&e(t.e)}},s=function(e){return function(t){e(t.e)}};switch(e){case\"pan\":null!=n._pan_start&&n.connect(this.pan_start,o(n._pan_start.bind(n))),null!=n._pan&&n.connect(this.pan,o(n._pan.bind(n))),null!=n._pan_end&&n.connect(this.pan_end,o(n._pan_end.bind(n)));break;case\"pinch\":null!=n._pinch_start&&n.connect(this.pinch_start,o(n._pinch_start.bind(n))),null!=n._pinch&&n.connect(this.pinch,o(n._pinch.bind(n))),null!=n._pinch_end&&n.connect(this.pinch_end,o(n._pinch_end.bind(n)));break;case\"rotate\":null!=n._rotate_start&&n.connect(this.rotate_start,o(n._rotate_start.bind(n))),null!=n._rotate&&n.connect(this.rotate,o(n._rotate.bind(n))),null!=n._rotate_end&&n.connect(this.rotate_end,o(n._rotate_end.bind(n)));break;case\"move\":null!=n._move_enter&&n.connect(this.move_enter,o(n._move_enter.bind(n))),null!=n._move&&n.connect(this.move,o(n._move.bind(n))),null!=n._move_exit&&n.connect(this.move_exit,o(n._move_exit.bind(n)));break;case\"tap\":null!=n._tap&&n.connect(this.tap,o(n._tap.bind(n)));break;case\"press\":null!=n._press&&n.connect(this.press,o(n._press.bind(n)));break;case\"scroll\":null!=n._scroll&&n.connect(this.scroll,o(n._scroll.bind(n)));break;default:throw new Error(\"unsupported event_type: \"+e)}i&&(null!=n._doubletap&&n.connect(this.doubletap,s(n._doubletap.bind(n))),null!=n._keydown&&n.connect(this.keydown,s(n._keydown.bind(n))),null!=n._keyup&&n.connect(this.keyup,s(n._keyup.bind(n))),d.is_mobile&&null!=n._scroll&&\"pinch\"==e&&(a.logger.debug(\"Registering scroll on touch screen\"),n.connect(this.scroll,o(n._scroll.bind(n)))))},t.prototype._hit_test_renderers=function(t,e){for(var i=this.plot_view.get_renderer_views(),n=0,r=h.reversed(i);n<r.length;n++){var o=r[n],s=o.model.level;if((\"annotation\"==s||\"overlay\"==s)&&null!=o.interactive_hit&&o.interactive_hit(t,e))return o}return null},t.prototype._hit_test_frame=function(t,e){return this.plot_view.frame.bbox.contains(t,e)},t.prototype._hit_test_canvas=function(t,e){return this.plot_view.canvas.bbox.contains(t,e)},t.prototype._trigger=function(e,i,t){var n=this,r=this.toolbar.gestures,o=e.name,s=o.split(\":\")[0],a=this._hit_test_renderers(i.sx,i.sy),l=this._hit_test_canvas(i.sx,i.sy);switch(s){case\"move\":var h=r[s].active;null!=h&&this.trigger(e,i,h.id);var u=this.toolbar.inspectors.filter(function(t){return t.active}),c=\"default\";null!=a?(c=a.cursor(i.sx,i.sy)||c,f.isEmpty(u)||(e=this.move_exit,o=e.name)):this._hit_test_frame(i.sx,i.sy)&&(f.isEmpty(u)||(c=\"crosshair\")),this.plot_view.set_cursor(c),this.plot_view.set_toolbar_visibility(l),u.map(function(t){return n.trigger(e,i,t.id)});break;case\"tap\":var _=t.target;if(null!=_&&_!=this.hit_area)return;null!=a&&null!=a.on_hit&&a.on_hit(i.sx,i.sy);var h=r[s].active;null!=h&&this.trigger(e,i,h.id);break;case\"scroll\":var p=d.is_mobile?\"pinch\":\"scroll\",h=r[p].active;null!=h&&(t.preventDefault(),t.stopPropagation(),this.trigger(e,i,h.id));break;default:var h=r[s].active;null!=h&&this.trigger(e,i,h.id)}this._trigger_bokeh_event(i)},t.prototype.trigger=function(t,e,i){void 0===i&&(i=null),t.emit({id:i,e:e})},t.prototype._trigger_bokeh_event=function(t){var e=u.BokehEvent.event_class(t);null!=e?this.plot.trigger_event(e.from_event(t)):a.logger.debug(\"Unhandled event of type \"+t.type)},t.prototype._get_sxy=function(t){var e,i=(e=t,\"undefined\"!=typeof TouchEvent&&e instanceof TouchEvent?(0!=t.touches.length?t.touches:t.changedTouches)[0]:t),n=i.pageX,r=i.pageY,o=l.offset(this.hit_area),s=o.left,a=o.top;return{sx:n-s,sy:r-a}},t.prototype._gesture_event=function(t){return i.__assign({type:t.type},this._get_sxy(t.srcEvent),{deltaX:t.deltaX,deltaY:t.deltaY,scale:t.scale,shiftKey:t.srcEvent.shiftKey})},t.prototype._tap_event=function(t){return i.__assign({type:t.type},this._get_sxy(t.srcEvent),{shiftKey:t.srcEvent.shiftKey})},t.prototype._move_event=function(t){return i.__assign({type:t.type},this._get_sxy(t))},t.prototype._scroll_event=function(t){return i.__assign({type:t.type},this._get_sxy(t),{delta:n.getDeltaY(t)})},t.prototype._key_event=function(t){return{type:t.type,keyCode:t.keyCode}},t.prototype._pan_start=function(t){var e=this._gesture_event(t);e.sx-=t.deltaX,e.sy-=t.deltaY,this._trigger(this.pan_start,e,t.srcEvent)},t.prototype._pan=function(t){this._trigger(this.pan,this._gesture_event(t),t.srcEvent)},t.prototype._pan_end=function(t){this._trigger(this.pan_end,this._gesture_event(t),t.srcEvent)},t.prototype._pinch_start=function(t){this._trigger(this.pinch_start,this._gesture_event(t),t.srcEvent)},t.prototype._pinch=function(t){this._trigger(this.pinch,this._gesture_event(t),t.srcEvent)},t.prototype._pinch_end=function(t){this._trigger(this.pinch_end,this._gesture_event(t),t.srcEvent)},t.prototype._rotate_start=function(t){this._trigger(this.rotate_start,this._gesture_event(t),t.srcEvent)},t.prototype._rotate=function(t){this._trigger(this.rotate,this._gesture_event(t),t.srcEvent)},t.prototype._rotate_end=function(t){this._trigger(this.rotate_end,this._gesture_event(t),t.srcEvent)},t.prototype._tap=function(t){this._trigger(this.tap,this._tap_event(t),t.srcEvent)},t.prototype._doubletap=function(t){var e=this._tap_event(t);this._trigger_bokeh_event(e),this.trigger(this.doubletap,e)},t.prototype._press=function(t){this._trigger(this.press,this._tap_event(t),t.srcEvent)},t.prototype._mouse_enter=function(t){this._trigger(this.move_enter,this._move_event(t),t)},t.prototype._mouse_move=function(t){this._trigger(this.move,this._move_event(t),t)},t.prototype._mouse_exit=function(t){this._trigger(this.move_exit,this._move_event(t),t)},t.prototype._mouse_wheel=function(t){this._trigger(this.scroll,this._scroll_event(t),t)},t.prototype._key_down=function(t){this.trigger(this.keydown,this._key_event(t))},t.prototype._key_up=function(t){this.trigger(this.keyup,this._key_event(t))},t}();d.UIEvents=c},function(t,e,n){var o=t(31),u=t(23),i=t(22);n.min=i.min,n.minBy=i.minBy,n.max=i.max,n.maxBy=i.maxBy,n.sum=i.sum;var r=Array.prototype.slice;function s(t){var e;return(e=[]).concat.apply(e,t)}function c(t,e){return-1!==t.indexOf(e)}function a(t,e,i){void 0===i&&(i=1),u.assert(0<i,\"'step' must be a positive number\"),null==e&&(e=t,t=0);for(var n=Math.max,r=Math.ceil,o=Math.abs,s=t<=e?i:-i,a=n(r(o(e-t)/i),0),l=Array(a),h=0;h<a;h++,t+=s)l[h]=t;return l}function l(r){return function(t,e){for(var i=t.length,n=0<r?0:i-1;0<=n&&n<i;n+=r)if(e(t[n]))return n;return-1}}function h(t){for(var e=[],i=0,n=t;i<n.length;i++){var r=n[i];c(e,r)||e.push(r)}return e}n.head=function(t){return t[0]},n.tail=function(t){return t[t.length-1]},n.last=function(t){return t[t.length-1]},n.copy=function(t){return r.call(t)},n.concat=s,n.includes=c,n.contains=c,n.nth=function(t,e){return t[0<=e?e:t.length+e]},n.zip=function(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=0;r<i;r++)n[r]=[t[r],e[r]];return n},n.unzip=function(t){for(var e,i=t.length,n=new Array(i),r=new Array(i),o=0;o<i;o++)e=t[o],n[o]=e[0],r[o]=e[1];return[n,r]},n.range=a,n.linspace=function(t,e,i){void 0===i&&(i=100);for(var n=(e-t)/(i-1),r=new Array(i),o=0;o<i;o++)r[o]=t+n*o;return r},n.transpose=function(t){for(var e=t.length,i=t[0].length,n=[],r=0;r<i;r++){n[r]=[];for(var o=0;o<e;o++)n[r][o]=t[o][r]}return n},n.cumsum=function(t){var n=[];return t.reduce(function(t,e,i){return n[i]=t+e},0),n},n.argmin=function(e){return i.minBy(a(e.length),function(t){return e[t]})},n.argmax=function(e){return i.maxBy(a(e.length),function(t){return e[t]})},n.all=function(t,e){for(var i=0,n=t;i<n.length;i++){var r=n[i];if(!e(r))return!1}return!0},n.any=function(t,e){for(var i=0,n=t;i<n.length;i++){var r=n[i];if(e(r))return!0}return!1},n.findIndex=l(1),n.findLastIndex=l(-1),n.find=function(t,e){var i=n.findIndex(t,e);return-1==i?void 0:t[i]},n.findLast=function(t,e){var i=n.findLastIndex(t,e);return-1==i?void 0:t[i]},n.sortedIndex=function(t,e){for(var i=0,n=t.length;i<n;){var r=Math.floor((i+n)/2);t[r]<e?i=r+1:n=r}return i},n.sortBy=function(t,i){var e=t.map(function(t,e){return{value:t,index:e,key:i(t)}});return e.sort(function(t,e){var i=t.key,n=e.key;if(i!==n){if(n<i||void 0===i)return 1;if(i<n||void 0===n)return-1}return t.index-e.index}),e.map(function(t){return t.value})},n.uniq=h,n.uniqBy=function(t,e){for(var i=[],n=[],r=0,o=t;r<o.length;r++){var s=o[r],a=e(s);c(n,a)||(n.push(a),i.push(s))}return i},n.union=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return h(s(t))},n.intersection=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=[];t:for(var r=0,o=t;r<o.length;r++){var s=o[r];if(!c(n,s)){for(var a=0,l=e;a<l.length;a++){var h=l[a];if(!c(h,s))continue t}n.push(s)}}return n},n.difference=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=s(e);return t.filter(function(t){return!c(n,t)})},n.removeBy=function(t,e){for(var i=0;i<t.length;)e(t[i])?t.splice(i,1):i++},n.shuffle=function(t){for(var e=t.length,i=new Array(e),n=0;n<e;n++){var r=o.randomIn(0,n);r!==n&&(i[n]=i[r]),i[r]=t[n]}return i},n.pairwise=function(t,e){for(var i=t.length,n=new Array(i-1),r=0;r<i-1;r++)n[r]=e(t[r],t[r+1]);return n},n.reversed=function(t){for(var e=t.length,i=new Array(e),n=0;n<e;n++)i[e-n-1]=t[n];return i},n.repeat=function(t,e){for(var i=new Array(e),n=0;n<e;n++)i[n]=t;return i}},function(t,e,i){function n(t,e,i){for(var n=[],r=3;r<arguments.length;r++)n[r-3]=arguments[r];var o=t.length;e<0&&(e+=o),e<0?e=0:o<e&&(e=o),null==i||o-e<i?i=o-e:i<0&&(i=0);for(var s=o-i+n.length,a=new t.constructor(s),l=0;l<e;l++)a[l]=t[l];for(var h=0,u=n;h<u.length;h++){var c=u[h];a[l++]=c}for(var _=e+i;_<o;_++)a[l++]=t[_];return a}i.splice=n,i.insert=function(t,e,i){return n(t,i,0,e)},i.append=function(t,e){return n(t,t.length,0,e)},i.prepend=function(t,e){return n(t,0,0,e)},i.indexOf=function(t,e){for(var i=0,n=t.length;i<n;i++)if(t[i]===e)return i;return-1},i.map=function(t,e){for(var i=t.length,n=new t.constructor(i),r=0;r<i;r++)n[r]=e(t[r],r,t);return n},i.min=function(t){for(var e,i=1/0,n=0,r=t.length;n<r;n++)(e=t[n])<i&&(i=e);return i},i.minBy=function(t,e){if(0==t.length)throw new Error(\"minBy() called with an empty array\");for(var i=t[0],n=e(i),r=1,o=t.length;r<o;r++){var s=t[r],a=e(s);a<n&&(i=s,n=a)}return i},i.max=function(t){for(var e,i=-1/0,n=0,r=t.length;n<r;n++)e=t[n],i<e&&(i=e);return i},i.maxBy=function(t,e){if(0==t.length)throw new Error(\"maxBy() called with an empty array\");for(var i=t[0],n=e(i),r=1,o=t.length;r<o;r++){var s=t[r],a=e(s);n<a&&(i=s,n=a)}return i},i.sum=function(t){for(var e=0,i=0,n=t.length;i<n;i++)e+=t[i];return e}},function(t,e,i){var n=t(391),r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(Error);i.AssertionError=r,i.assert=function(t,e){if(!(!0===t||!1!==t&&t()))throw new r(e||\"Assertion failed\")}},function(t,e,i){var n=Math.min,r=Math.max;i.empty=function(){return{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}},i.positive_x=function(){return{minX:Number.MIN_VALUE,minY:-1/0,maxX:1/0,maxY:1/0}},i.positive_y=function(){return{minX:-1/0,minY:Number.MIN_VALUE,maxX:1/0,maxY:1/0}},i.union=function(t,e){return{minX:n(t.minX,e.minX),maxX:r(t.maxX,e.maxX),minY:n(t.minY,e.minY),maxY:r(t.maxY,e.maxY)}};var o=function(){function e(t){if(\"x0\"in t&&\"y0\"in t&&\"x1\"in t&&\"y1\"in t){var e=t,i=e.x0,n=e.y0,r=e.x1,o=e.y1;if(!(i<=r&&n<=o))throw new Error(\"invalid bbox {x0: \"+i+\", y0: \"+n+\", x1: \"+r+\", y1: \"+o+\"}\");this.x0=i,this.y0=n,this.x1=r,this.y1=o}else{var s=t,a=s.x,l=s.y,h=s.width,u=s.height;if(!(0<=h&&0<=u))throw new Error(\"invalid bbox {x: \"+a+\", y: \"+l+\", width: \"+h+\", height: \"+u+\"}\");this.x0=a,this.y0=l,this.x1=a+h,this.y1=l+u}}return Object.defineProperty(e.prototype,\"minX\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"minY\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"maxX\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"maxY\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"left\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"top\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"right\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"bottom\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"p0\",{get:function(){return[this.x0,this.y0]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"p1\",{get:function(){return[this.x1,this.y1]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"x\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"y\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"width\",{get:function(){return this.x1-this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this.y1-this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"rect\",{get:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"h_range\",{get:function(){return{start:this.x0,end:this.x1}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"v_range\",{get:function(){return{start:this.y0,end:this.y1}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"ranges\",{get:function(){return[this.h_range,this.v_range]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"aspect\",{get:function(){return this.width/this.height},enumerable:!0,configurable:!0}),e.prototype.contains=function(t,e){return t>=this.x0&&t<=this.x1&&e>=this.y0&&e<=this.y1},e.prototype.clip=function(t,e){return t<this.x0?t=this.x0:t>this.x1&&(t=this.x1),e<this.y0?e=this.y0:e>this.y1&&(e=this.y1),[t,e]},e.prototype.union=function(t){return new e({x0:n(this.x0,t.x0),y0:n(this.y0,t.y0),x1:r(this.x1,t.x1),y1:r(this.y1,t.y1)})},e}();i.BBox=o},function(t,e,i){i.delay=function(t,e){return setTimeout(t,e)};var n=\"function\"==typeof requestAnimationFrame?requestAnimationFrame:setImmediate;i.defer=function(t){return n(t)},i.throttle=function(i,n,r){void 0===r&&(r={});var o,s,a,l=null,h=0,u=function(){h=!1===r.leading?0:Date.now(),l=null,a=i.apply(o,s),l||(o=s=null)};return function(){var t=Date.now();h||!1!==r.leading||(h=t);var e=n-(t-h);return o=this,s=arguments,e<=0||n<e?(l&&(clearTimeout(l),l=null),h=t,a=i.apply(o,s),l||(o=s=null)):l||!1===r.trailing||(l=setTimeout(u,e)),a}},i.once=function(t){var e,i=!1;return function(){return i||(i=!0,e=t()),e}}},function(t,e,i){var n=t(287);i.SVGRenderingContext2D=n,i.fixup_ctx=function(t){var e,c,i,n,r;(e=t).setLineDash||(e.setLineDash=function(t){e.mozDash=t,e.webkitLineDash=t}),e.getLineDash||(e.getLineDash=function(){return e.mozDash}),(r=t).setLineDashOffset=function(t){r.lineDashOffset=t,r.mozDashOffset=t,r.webkitLineDashOffset=t},r.getLineDashOffset=function(){return r.mozDashOffset},(n=t).setImageSmoothingEnabled=function(t){n.imageSmoothingEnabled=t,n.mozImageSmoothingEnabled=t,n.oImageSmoothingEnabled=t,n.webkitImageSmoothingEnabled=t,n.msImageSmoothingEnabled=t},n.getImageSmoothingEnabled=function(){var t=n.imageSmoothingEnabled;return null==t||t},(i=t).measureText&&null==i.html5MeasureText&&(i.html5MeasureText=i.measureText,i.measureText=function(t){var e=i.html5MeasureText(t);return e.ascent=1.6*i.html5MeasureText(\"m\").width,e}),(c=t).ellipse||(c.ellipse=function(t,e,i,n,r,o,s,a){void 0===a&&(a=!1);var l=.551784;c.translate(t,e),c.rotate(r);var h=i,u=n;a&&(h=-i,u=-n),c.moveTo(-h,0),c.bezierCurveTo(-h,u*l,-h*l,u,0,u),c.bezierCurveTo(h*l,u,h,u*l,h,0),c.bezierCurveTo(h,-u*l,h*l,-u,0,-u),c.bezierCurveTo(-h*l,-u,-h,-u*l,-h,0),c.rotate(-r),c.translate(-t,-e)})},i.get_scale_ratio=function(t,e,i){if(\"svg\"==i)return 1;if(e){var n=window.devicePixelRatio||1,r=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return n/r}return 1}},function(t,e,i){var n=t(39),r=t(21);function o(t){var e=Number(t).toString(16);return 1==e.length?\"0\"+e:e}function s(t){if(0==(t+=\"\").indexOf(\"#\"))return t;if(n.is_svg_color(t))return n.svg_colors[t];if(0==t.indexOf(\"rgb\")){var e=t.replace(/^rgba?\\(|\\s+|\\)$/g,\"\").split(\",\"),i=e.slice(0,3).map(o).join(\"\");return 4==e.length&&(i+=o(Math.floor(255*parseFloat(e[3])))),\"#\"+i.slice(0,8)}return t}i.color2hex=s,i.color2rgba=function(t,e){if(void 0===e&&(e=1),!t)return[0,0,0,0];var i=s(t);(i=i.replace(/ |#/g,\"\")).length<=4&&(i=i.replace(/(.)/g,\"$1$1\"));for(var n=i.match(/../g).map(function(t){return parseInt(t,16)/255});n.length<3;)n.push(0);return n.length<4&&n.push(e),n.slice(0,4)},i.valid_rgb=function(t){var e;switch(t.substring(0,4)){case\"rgba\":e={start:\"rgba(\",len:4,alpha:!0};break;case\"rgb(\":e={start:\"rgb(\",len:3,alpha:!1};break;default:return!1}if(new RegExp(\".*?(\\\\.).*(,)\").test(t))throw new Error(\"color expects integers for rgb in rgb/rgba tuple, received \"+t);var i=t.replace(e.start,\"\").replace(\")\",\"\").split(\",\").map(parseFloat);if(i.length!=e.len)throw new Error(\"color expects rgba \"+e.len+\"-tuple, received \"+t);if(e.alpha&&!(0<=i[3]&&i[3]<=1))throw new Error(\"color expects rgba 4-tuple to have alpha value between 0 and 1\");if(r.includes(i.slice(0,3).map(function(t){return 0<=t&&t<=255}),!1))throw new Error(\"color expects rgb to have value between 0 and 255\");return!0}},function(t,e,i){i.is_ie=0<=navigator.userAgent.indexOf(\"MSIE\")||0<navigator.userAgent.indexOf(\"Trident\")||0<navigator.userAgent.indexOf(\"Edge\"),i.is_little_endian=function(){var t=new ArrayBuffer(4),e=new Uint8Array(t),i=new Uint32Array(t);i[1]=168496141;var n=!0;return 10==e[4]&&11==e[5]&&12==e[6]&&13==e[7]&&(n=!1),n}()},function(t,e,i){var r=t(21),o=t(30),s=t(44),n=function(){function t(){this._dict={}}return t.prototype._existing=function(t){return t in this._dict?this._dict[t]:null},t.prototype.add_value=function(t,e){var i=this._existing(t);null==i?this._dict[t]=e:s.isArray(i)?i.push(e):this._dict[t]=[i,e]},t.prototype.remove_value=function(t,e){var i=this._existing(t);if(s.isArray(i)){var n=r.difference(i,[e]);0<n.length?this._dict[t]=n:delete this._dict[t]}else o.isEqual(i,e)&&delete this._dict[t]},t.prototype.get_one=function(t,e){var i=this._existing(t);if(s.isArray(i)){if(1===i.length)return i[0];throw new Error(e)}return i},t}();i.MultiDict=n;var a=function(){function o(t){if(null==t)this._values=[];else if(t instanceof o)this._values=r.copy(t._values);else{this._values=[];for(var e=0,i=t;e<i.length;e++){var n=i[e];this.add(n)}}}return Object.defineProperty(o.prototype,\"values\",{get:function(){return r.copy(this._values).sort()},enumerable:!0,configurable:!0}),o.prototype.toString=function(){return\"Set([\"+this.values.join(\",\")+\"])\"},Object.defineProperty(o.prototype,\"size\",{get:function(){return this._values.length},enumerable:!0,configurable:!0}),o.prototype.has=function(t){return-1!==this._values.indexOf(t)},o.prototype.add=function(t){this.has(t)||this._values.push(t)},o.prototype.remove=function(t){var e=this._values.indexOf(t);-1!==e&&this._values.splice(e,1)},o.prototype.toggle=function(t){var e=this._values.indexOf(t);-1===e?this._values.push(t):this._values.splice(e,1)},o.prototype.clear=function(){this._values=[]},o.prototype.union=function(t){return t=new o(t),new o(this._values.concat(t._values))},o.prototype.intersect=function(t){t=new o(t);for(var e=new o,i=0,n=t._values;i<n.length;i++){var r=n[i];this.has(r)&&t.has(r)&&e.add(r)}return e},o.prototype.diff=function(t){t=new o(t);for(var e=new o,i=0,n=this._values;i<n.length;i++){var r=n[i];t.has(r)||e.add(r)}return e},o.prototype.forEach=function(t,e){for(var i=0,n=this._values;i<n.length;i++){var r=n[i];t.call(e||this,r,r,this)}},o}();i.Set=a},function(t,e,i){var _=t(44),p=Object.prototype.toString;i.isEqual=function(t,e){return function t(e,i,n,r){if(e===i)return 0!==e||1/e==1/i;if(null==e||null==i)return e===i;var o=p.call(e);if(o!==p.call(i))return!1;switch(o){case\"[object RegExp]\":case\"[object String]\":return\"\"+e==\"\"+i;case\"[object Number]\":return+e!=+e?+i!=+i:0==+e?1/+e==1/i:+e==+i;case\"[object Date]\":case\"[object Boolean]\":return+e==+i}var s=\"[object Array]\"===o;if(!s){if(\"object\"!=typeof e||\"object\"!=typeof i)return!1;var a=e.constructor,l=i.constructor;if(a!==l&&!(_.isFunction(a)&&a instanceof a&&_.isFunction(l)&&l instanceof l)&&\"constructor\"in e&&\"constructor\"in i)return!1}r=r||[];for(var h=(n=n||[]).length;h--;)if(n[h]===e)return r[h]===i;if(n.push(e),r.push(i),s){if((h=e.length)!==i.length)return!1;for(;h--;)if(!t(e[h],i[h],n,r))return!1}else{var u=Object.keys(e),c=void 0;if(h=u.length,Object.keys(i).length!==h)return!1;for(;h--;)if(c=u[h],!i.hasOwnProperty(c)||!t(e[c],i[c],n,r))return!1}return n.pop(),r.pop(),!0}(t,e)}},function(t,e,i){function a(t){for(;t<0;)t+=2*Math.PI;for(;t>2*Math.PI;)t-=2*Math.PI;return t}function l(t,e){return Math.abs(a(t-e))}function o(){return Math.random()}i.angle_norm=a,i.angle_dist=l,i.angle_between=function(t,e,i,n){var r=a(t),o=l(e,i),s=l(e,r)<=o&&l(r,i)<=o;return 1==n?!s:s},i.random=o,i.randomIn=function(t,e){return null==e&&(e=t,t=0),t+Math.floor(Math.random()*(e-t+1))},i.atan2=function(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])},i.rnorm=function(t,e){for(var i,n;i=o(),n=(2*(n=o())-1)*Math.sqrt(1/Math.E*2),!(-4*i*i*Math.log(i)>=n*n););var r=n/i;return r=t+e*r},i.clamp=function(t,e,i){return i<t?i:t<e?e:t}},function(t,e,i){var n=t(391),h=t(21);function r(t,e){return n.__assign(t,e)}function o(t){return Object.keys(t).length}i.keys=Object.keys,i.values=function(t){for(var e=Object.keys(t),i=e.length,n=new Array(i),r=0;r<i;r++)n[r]=t[e[r]];return n},i.extend=r,i.clone=function(t){return r({},t)},i.merge=function(t,e){for(var i=Object.create(Object.prototype),n=h.concat([Object.keys(t),Object.keys(e)]),r=0,o=n;r<o.length;r++){var s=o[r],a=t.hasOwnProperty(s)?t[s]:[],l=e.hasOwnProperty(s)?e[s]:[];i[s]=h.union(a,l)}return i},i.size=o,i.isEmpty=function(t){return 0===o(t)}},function(t,e,h){var i=t(374),n=t(362),r=new n(\"GOOGLE\"),o=new n(\"WGS84\");h.wgs84_mercator=i(o,r);var s={lon:[-20026376.39,20026376.39],lat:[-20048966.1,20048966.1]},a={lon:[-180,180],lat:[-85.06,85.06]};function u(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=new Array(i),o=0;o<i;o++){var s=h.wgs84_mercator.forward([t[o],e[o]]),a=s[0],l=s[1];n[o]=a,r[o]=l}return[n,r]}h.clip_mercator=function(t,e,i){var n=s[i],r=n[0],o=n[1];return[Math.max(t,r),Math.min(e,o)]},h.in_bounds=function(t,e){return t>a[e][0]&&t<a[e][1]},h.project_xy=u,h.project_xsys=function(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=new Array(i),o=0;o<i;o++){var s=u(t[o],e[o]),a=s[0],l=s[1];n[o]=a,r[o]=l}return[n,r]}},function(t,e,i){var n=t(44);i.create_ref=function(t){var e={type:t.type,id:t.id};return null!=t._subtype&&(e.subtype=t._subtype),e},i.is_ref=function(t){if(n.isObject(t)){var e=Object.keys(t).sort();if(2==e.length)return\"id\"==e[0]&&\"type\"==e[1];if(3==e.length)return\"id\"==e[0]&&\"subtype\"==e[1]&&\"type\"==e[2]}return!1}},function(t,e,i){i.get_indices=function(t){var e=t.selected;return e[\"0d\"].glyph?e[\"0d\"].indices:0<e[\"1d\"].indices.length?e[\"1d\"].indices:0<e[\"2d\"].indices.length?e[\"2d\"].indices:[]}},function(t,e,u){var _=t(44),i=t(28);function c(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,2*t.length),i=0,n=e.length;i<n;i+=2){var r=e[i];e[i]=e[i+1],e[i+1]=r}}function p(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,4*t.length),i=0,n=e.length;i<n;i+=4){var r=e[i];e[i]=e[i+3],e[i+3]=r,r=e[i+1],e[i+1]=e[i+2],e[i+2]=r}}function d(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,8*t.length),i=0,n=e.length;i<n;i+=8){var r=e[i];e[i]=e[i+7],e[i+7]=r,r=e[i+1],e[i+1]=e[i+6],e[i+6]=r,r=e[i+2],e[i+2]=e[i+5],e[i+5]=r,r=e[i+3],e[i+3]=e[i+4],e[i+4]=r}}function n(t,e){for(var i=t.order!==u.BYTE_ORDER,n=t.shape,r=null,o=0,s=e;o<s.length;o++){var a=s[o],l=JSON.parse(a[0]);if(l.id===t.__buffer__){r=a[1];break}}var h=new u.ARRAY_TYPES[t.dtype](r);return i&&(2===h.BYTES_PER_ELEMENT?c(h):4===h.BYTES_PER_ELEMENT?p(h):8===h.BYTES_PER_ELEMENT&&d(h)),[h,n]}function f(t,e){return _.isObject(t)&&\"__ndarray__\"in t?o(t):_.isObject(t)&&\"__buffer__\"in t?n(t,e):_.isArray(t)||_.isTypedArray(t)?[t,[]]:void 0}function s(t){var e=new Uint8Array(t),i=Array.from(e).map(function(t){return String.fromCharCode(t)});return btoa(i.join(\"\"))}function r(t){for(var e=atob(t),i=e.length,n=new Uint8Array(i),r=0,o=i;r<o;r++)n[r]=e.charCodeAt(r);return n.buffer}function o(t){var e=r(t.__ndarray__),i=t.dtype,n=t.shape;if(!(i in u.ARRAY_TYPES))throw new Error(\"unknown dtype: \"+i);return[new u.ARRAY_TYPES[i](e),n]}function a(t,e){var i,n=s(t.buffer),r=function(t){if(\"name\"in t.constructor)return t.constructor.name;switch(!0){case t instanceof Uint8Array:return\"Uint8Array\";case t instanceof Int8Array:return\"Int8Array\";case t instanceof Uint16Array:return\"Uint16Array\";case t instanceof Int16Array:return\"Int16Array\";case t instanceof Uint32Array:return\"Uint32Array\";case t instanceof Int32Array:return\"Int32Array\";case t instanceof Float32Array:return\"Float32Array\";case t instanceof Float64Array:return\"Float64Array\";default:throw new Error(\"unsupported typed array\")}}(t);if(!(r in u.DTYPES))throw new Error(\"unknown array type: \"+r);i=u.DTYPES[r];var o={__ndarray__:n,shape:e,dtype:i};return o}function v(t,e){if(0==t.length||!_.isObject(t[0])&&!_.isArray(t[0]))return[t,[]];for(var i=[],n=[],r=0,o=t;r<o.length;r++){var s=o[r],a=_.isArray(s)?v(s,e):f(s,e),l=a[0],h=a[1];i.push(l),n.push(h)}var u=n.map(function(t){return t.filter(function(t){return 0!=t.length})});return[i,u]}function l(t,e){for(var i=[],n=0,r=t.length;n<r;n++){var o=t[n];if(_.isTypedArray(o)){var s=e[n]?e[n]:void 0;i.push(a(o,s))}else _.isArray(o)?i.push(l(o,e?e[n]:[])):i.push(o)}return i}u.ARRAY_TYPES={uint8:Uint8Array,int8:Int8Array,uint16:Uint16Array,int16:Int16Array,uint32:Uint32Array,int32:Int32Array,float32:Float32Array,float64:Float64Array},u.DTYPES={Uint8Array:\"uint8\",Int8Array:\"int8\",Uint16Array:\"uint16\",Int16Array:\"int16\",Uint32Array:\"uint32\",Int32Array:\"int32\",Float32Array:\"float32\",Float64Array:\"float64\"},u.BYTE_ORDER=i.is_little_endian?\"little\":\"big\",u.swap16=c,u.swap32=p,u.swap64=d,u.process_buffer=n,u.process_array=f,u.arrayBufferToBase64=s,u.base64ToArrayBuffer=r,u.decode_base64=o,u.encode_base64=a,u.decode_column_data=function(t,e){void 0===e&&(e=[]);var i={},n={};for(var r in t){var o=t[r];if(_.isArray(o)){if(0==o.length||!_.isObject(o[0])&&!_.isArray(o[0])){i[r]=o;continue}var s=v(o,e),a=s[0],l=s[1];i[r]=a,n[r]=l}else{var h=f(o,e),u=h[0],c=h[1];i[r]=u,n[r]=c}}return[i,n]},u.encode_column_data=function(t,e){var i={};for(var n in t){var r=t[n],o=null!=e?e[n]:void 0,s=void 0;s=_.isTypedArray(r)?a(r,o):_.isArray(r)?l(r,o||[]):r,i[n]=s}return i}},function(t,e,i){var l=t(346),o=t(24),n=function(){function t(t){if(this.points=t,this.index=null,0<t.length){this.index=new l(t.length);for(var e=0,i=t;e<i.length;e++){var n=i[e],r=n.minX,o=n.minY,s=n.maxX,a=n.maxY;this.index.add(r,o,s,a)}this.index.finish()}}return Object.defineProperty(t.prototype,\"bbox\",{get:function(){if(null==this.index)return o.empty();var t=this.index,e=t.minX,i=t.minY,n=t.maxX,r=t.maxY;return{minX:e,minY:i,maxX:n,maxY:r}},enumerable:!0,configurable:!0}),t.prototype.search=function(t){var e=this;if(null==this.index)return[];var i=t.minX,n=t.minY,r=t.maxX,o=t.maxY,s=this.index.search(i,n,r,o);return s.map(function(t){return e.points[t]})},t.prototype.indices=function(t){return this.search(t).map(function(t){var e=t.i;return e})},t}();i.SpatialIndex=n},function(t,e,i){var n=t(18);function r(){for(var t=new Array(32),e=\"0123456789ABCDEF\",i=0;i<32;i++)t[i]=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(\"\")}i.startsWith=function(t,e,i){return void 0===i&&(i=0),t.substr(i,e.length)==e},i.uuid4=r;var o=1e3;i.uniqueId=function(t){var e=n.settings.dev?\"j\"+o++:r();return null!=t?t+\"-\"+e:e},i.escape=function(t){return t.replace(/(?:[&<>\"'`])/g,function(t){switch(t){case\"&\":return\"&amp;\";case\"<\":return\"&lt;\";case\">\":return\"&gt;\";case'\"':return\"&quot;\";case\"'\":return\"&#x27;\";case\"`\":return\"&#x60;\";default:return t}})},i.unescape=function(t){return t.replace(/&(amp|lt|gt|quot|#x27|#x60);/g,function(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}})},i.use_strict=function(t){return\"'use strict';\\n\"+t}},function(t,e,i){i.svg_colors={indianred:\"#CD5C5C\",lightcoral:\"#F08080\",salmon:\"#FA8072\",darksalmon:\"#E9967A\",lightsalmon:\"#FFA07A\",crimson:\"#DC143C\",red:\"#FF0000\",firebrick:\"#B22222\",darkred:\"#8B0000\",pink:\"#FFC0CB\",lightpink:\"#FFB6C1\",hotpink:\"#FF69B4\",deeppink:\"#FF1493\",mediumvioletred:\"#C71585\",palevioletred:\"#DB7093\",coral:\"#FF7F50\",tomato:\"#FF6347\",orangered:\"#FF4500\",darkorange:\"#FF8C00\",orange:\"#FFA500\",gold:\"#FFD700\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",lemonchiffon:\"#FFFACD\",lightgoldenrodyellow:\"#FAFAD2\",papayawhip:\"#FFEFD5\",moccasin:\"#FFE4B5\",peachpuff:\"#FFDAB9\",palegoldenrod:\"#EEE8AA\",khaki:\"#F0E68C\",darkkhaki:\"#BDB76B\",lavender:\"#E6E6FA\",thistle:\"#D8BFD8\",plum:\"#DDA0DD\",violet:\"#EE82EE\",orchid:\"#DA70D6\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",mediumorchid:\"#BA55D3\",mediumpurple:\"#9370DB\",blueviolet:\"#8A2BE2\",darkviolet:\"#9400D3\",darkorchid:\"#9932CC\",darkmagenta:\"#8B008B\",purple:\"#800080\",indigo:\"#4B0082\",slateblue:\"#6A5ACD\",darkslateblue:\"#483D8B\",mediumslateblue:\"#7B68EE\",greenyellow:\"#ADFF2F\",chartreuse:\"#7FFF00\",lawngreen:\"#7CFC00\",lime:\"#00FF00\",limegreen:\"#32CD32\",palegreen:\"#98FB98\",lightgreen:\"#90EE90\",mediumspringgreen:\"#00FA9A\",springgreen:\"#00FF7F\",mediumseagreen:\"#3CB371\",seagreen:\"#2E8B57\",forestgreen:\"#228B22\",green:\"#008000\",darkgreen:\"#006400\",yellowgreen:\"#9ACD32\",olivedrab:\"#6B8E23\",olive:\"#808000\",darkolivegreen:\"#556B2F\",mediumaquamarine:\"#66CDAA\",darkseagreen:\"#8FBC8F\",lightseagreen:\"#20B2AA\",darkcyan:\"#008B8B\",teal:\"#008080\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",lightcyan:\"#E0FFFF\",paleturquoise:\"#AFEEEE\",aquamarine:\"#7FFFD4\",turquoise:\"#40E0D0\",mediumturquoise:\"#48D1CC\",darkturquoise:\"#00CED1\",cadetblue:\"#5F9EA0\",steelblue:\"#4682B4\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",lightblue:\"#ADD8E6\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",deepskyblue:\"#00BFFF\",dodgerblue:\"#1E90FF\",cornflowerblue:\"#6495ED\",royalblue:\"#4169E1\",blue:\"#0000FF\",mediumblue:\"#0000CD\",darkblue:\"#00008B\",navy:\"#000080\",midnightblue:\"#191970\",cornsilk:\"#FFF8DC\",blanchedalmond:\"#FFEBCD\",bisque:\"#FFE4C4\",navajowhite:\"#FFDEAD\",wheat:\"#F5DEB3\",burlywood:\"#DEB887\",tan:\"#D2B48C\",rosybrown:\"#BC8F8F\",sandybrown:\"#F4A460\",goldenrod:\"#DAA520\",darkgoldenrod:\"#B8860B\",peru:\"#CD853F\",chocolate:\"#D2691E\",saddlebrown:\"#8B4513\",sienna:\"#A0522D\",brown:\"#A52A2A\",maroon:\"#800000\",white:\"#FFFFFF\",snow:\"#FFFAFA\",honeydew:\"#F0FFF0\",mintcream:\"#F5FFFA\",azure:\"#F0FFFF\",aliceblue:\"#F0F8FF\",ghostwhite:\"#F8F8FF\",whitesmoke:\"#F5F5F5\",seashell:\"#FFF5EE\",beige:\"#F5F5DC\",oldlace:\"#FDF5E6\",floralwhite:\"#FFFAF0\",ivory:\"#FFFFF0\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lavenderblush:\"#FFF0F5\",mistyrose:\"#FFE4E1\",gainsboro:\"#DCDCDC\",lightgray:\"#D3D3D3\",lightgrey:\"#D3D3D3\",silver:\"#C0C0C0\",darkgray:\"#A9A9A9\",darkgrey:\"#A9A9A9\",gray:\"#808080\",grey:\"#808080\",dimgray:\"#696969\",dimgrey:\"#696969\",lightslategray:\"#778899\",lightslategrey:\"#778899\",slategray:\"#708090\",slategrey:\"#708090\",darkslategray:\"#2F4F4F\",darkslategrey:\"#2F4F4F\",black:\"#000000\"},i.is_svg_color=function(t){return t in i.svg_colors}},function(t,e,s){var r=t(389),n=t(361),o=t(390),_=t(38),a=t(44);function l(t,e,i){if(a.isNumber(t)){var n=function(){switch(!1){case Math.floor(t)!=t:return\"%d\";case!(.1<Math.abs(t)&&Math.abs(t)<1e3):return\"%0.3f\";default:return\"%0.3e\"}}();return r.sprintf(n,t)}return\"\"+t}function p(t,e,i,n){if(null==i)return l;if(null!=n&&(t in n||e in n)){var r=e in n?e:t,o=n[r];if(a.isString(o)){if(o in s.DEFAULT_FORMATTERS)return s.DEFAULT_FORMATTERS[o];throw new Error(\"Unknown tooltip field formatter type '\"+o+\"'\")}return function(t,e,i){return o.format(t,e,i)}}return s.DEFAULT_FORMATTERS.numeral}function d(t,e,i,n){if(\"$\"==t[0]){if(t.substring(1)in n)return n[t.substring(1)];throw new Error(\"Unknown special variable '\"+t+\"'\")}var r=e.get_column(t);if(null==r)return null;if(a.isNumber(i))return r[i];var o=r[i.index];if(a.isTypedArray(o)||a.isArray(o)){if(a.isArray(o[0])){var s=o[i.dim2];return s[i.dim1]}return o[i.flat_index]}return o}s.DEFAULT_FORMATTERS={numeral:function(t,e,i){return n.format(t,e)},datetime:function(t,e,i){return o(t,e)},printf:function(t,e,i){return r.sprintf(e,t)}},s.basic_formatter=l,s.get_formatter=p,s.get_value=d,s.replace_placeholders=function(t,a,l,h,u){void 0===u&&(u={});var c=t.replace(/(?:^|[^@])([@|\\$](?:\\w+|{[^{}]+}))(?:{[^{}]+})?/g,function(t,e,i){return\"\"+e});return t=(t=(t=t.replace(/@\\$name/g,function(t){return\"@{\"+u.name+\"}\"})).replace(/(^|[^\\$])\\$(\\w+)/g,function(t,e,i){return e+\"@$\"+i})).replace(/(^|[^@])@(?:(\\$?\\w+)|{([^{}]+)})(?:{([^{}]+)})?/g,function(t,e,i,n,r){var o=d(i=null!=n?n:i,a,l,u);if(null==o)return\"\"+e+_.escape(\"???\");if(\"safe\"==r)return\"\"+e+o;var s=p(i,c,r,h);return\"\"+e+_.escape(s(o,r,u))})}},function(t,e,i){var a=t(5),l={};i.get_text_height=function(t){if(null!=l[t])return l[t];var e=a.span({style:{font:t}},\"Hg\"),i=a.div({style:{display:\"inline-block\",width:\"1px\",height:\"0px\"}}),n=a.div({},e,i);document.body.appendChild(n);try{i.style.verticalAlign=\"baseline\";var r=a.offset(i).top-a.offset(e).top;i.style.verticalAlign=\"bottom\";var o=a.offset(i).top-a.offset(e).top,s={height:o,ascent:r,descent:o-r};return l[t]=s}finally{document.body.removeChild(n)}}},function(t,e,i){var a=(\"undefined\"!=typeof window?window.requestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.webkitRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.mozRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.msRequestAnimationFrame:void 0)||function(t){return t(Date.now()),-1};i.throttle=function(t,i){var n=null,r=0,o=!1,s=function(){r=Date.now(),n=null,o=!1,t()};return function(){var t=Date.now(),e=i-(t-r);e<=0&&!o?(null!=n&&clearTimeout(n),o=!0,a(s)):n||o||(n=setTimeout(function(){return a(s)},e))}}},function(t,e,i){i.concat=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];for(var n=t.length,r=0,o=e;r<o.length;r++){var s=o[r];n+=s.length}var a=new t.constructor(n);a.set(t,0);for(var l=t.length,h=0,u=e;h<u.length;h++){var s=u[h];a.set(s,l),l+=s.length}return a}},function(t,e,i){var n=t(21),r=Object.prototype.toString;function o(t){return\"[object Number]\"===r.call(t)}function s(t){var e=typeof t;return\"function\"===e||\"object\"===e&&!!t}i.isBoolean=function(t){return!0===t||!1===t||\"[object Boolean]\"===r.call(t)},i.isNumber=o,i.isInteger=function(t){return o(t)&&isFinite(t)&&Math.floor(t)===t},i.isString=function(t){return\"[object String]\"===r.call(t)},i.isStrictNaN=function(t){return o(t)&&t!==+t},i.isFunction=function(t){return\"[object Function]\"===r.call(t)},i.isArray=function(t){return Array.isArray(t)},i.isArrayOf=function(t,e){return n.all(t,e)},i.isArrayableOf=function(t,e){for(var i=0,n=t.length;i<n;i++)if(!e(t[i]))return!1;return!0},i.isTypedArray=function(t){return null!=t&&null!=t.buffer&&t.buffer instanceof ArrayBuffer},i.isObject=s,i.isPlainObject=function(t){return s(t)&&(null==t.constructor||t.constructor===Object)}},function(t,e,i){function n(t){var e=getComputedStyle(t).fontSize;return null!=e?parseInt(e,10):null}i.getDeltaY=function(t){var e,i=-t.deltaY;if(t.target instanceof HTMLElement)switch(t.deltaMode){case t.DOM_DELTA_LINE:i*=n((e=t.target).offsetParent||document.body)||n(e)||16;break;case t.DOM_DELTA_PAGE:i*=t.target.clientHeight}return i}},function(t,e,i){var f=t(31);function v(t,e,i){var n=[t.start,t.end],r=n[0],o=n[1],s=null!=i?i:(o+r)/2,a=r-(r-s)*e,l=o-(o-s)*e;return[a,l]}function m(t,e){var i=e[0],n=e[1],r={};for(var o in t){var s=t[o],a=s.r_invert(i,n),l=a[0],h=a[1];r[o]={start:l,end:h}}return r}i.scale_highlow=v,i.get_info=m,i.scale_range=function(t,e,i,n,r){void 0===i&&(i=!0),void 0===n&&(n=!0),e=f.clamp(e,-.9,.9);var o=i?e:0,s=v(t.bbox.h_range,o,null!=r?r.x:void 0),a=s[0],l=s[1],h=m(t.xscales,[a,l]),u=n?e:0,c=v(t.bbox.v_range,u,null!=r?r.y:void 0),_=c[0],p=c[1],d=m(t.yscales,[_,p]);return{xrs:h,yrs:d,factor:e}}},function(t,e,i){var n=t(44);i.isValue=function(t){return n.isObject(t)&&\"value\"in t},i.isField=function(t){return n.isObject(t)&&\"field\"in t}},function(t,e,i){var n=t(391),r=t(19),o=t(38),s=function(i){function t(t){var e=i.call(this)||this;if(e.removed=new r.Signal0(e,\"removed\"),null==t.model)throw new Error(\"model of a view wasn't configured\");return e.model=t.model,e._parent=t.parent,e.id=t.id||o.uniqueId(),e.initialize(t),!1!==t.connect_signals&&e.connect_signals(),e}return n.__extends(t,i),t.prototype.initialize=function(t){},t.prototype.remove=function(){this._parent=void 0,this.disconnect_signals(),this.removed.emit()},t.prototype.toString=function(){return this.model.type+\"View(\"+this.id+\")\"},Object.defineProperty(t.prototype,\"parent\",{get:function(){if(void 0!==this._parent)return this._parent;throw new Error(\"parent of a view wasn't configured\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_root\",{get:function(){return null===this.parent},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"root\",{get:function(){return this.is_root?this:this.parent.root},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){},t.prototype.disconnect_signals=function(){r.Signal.disconnectReceiver(this)},t.prototype.notify_finished=function(){this.root.notify_finished()},t}(r.Signalable());i.View=s},function(t,e,i){var n=t(391),r=t(16),o=t(27),s=function(){function t(t,e){void 0===e&&(e=\"\"),this.obj=t,this.prefix=e,this.cache={};var i=t.properties[e+this.do_attr].spec;this.doit=null!==i.value;for(var n=0,r=this.attrs;n<r.length;n++){var o=r[n];this[o]=t.properties[e+o]}}return t.prototype.warm_cache=function(t){for(var e=0,i=this.attrs;e<i.length;e++){var n=i[e],r=this.obj.properties[this.prefix+n];if(void 0!==r.spec.value)this.cache[n]=r.spec.value;else{if(null==t)throw new Error(\"source is required with a vectorized visual property\");this.cache[n+\"_array\"]=r.array(t)}}},t.prototype.cache_select=function(t,e){var i,n=this.obj.properties[this.prefix+t];return void 0!==n.spec.value?this.cache[t]=i=n.spec.value:this.cache[t]=i=this.cache[t+\"_array\"][e],i},t.prototype.set_vectorize=function(t,e){null!=this.all_indices?this._set_vectorize(t,this.all_indices[e]):this._set_vectorize(t,e)},t}(),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.set_value=function(t){t.strokeStyle=this.line_color.value(),t.globalAlpha=this.line_alpha.value(),t.lineWidth=this.line_width.value(),t.lineJoin=this.line_join.value(),t.lineCap=this.line_cap.value(),t.setLineDash(this.line_dash.value()),t.setLineDashOffset(this.line_dash_offset.value())},e.prototype._set_vectorize=function(t,e){this.cache_select(\"line_color\",e),t.strokeStyle!==this.cache.line_color&&(t.strokeStyle=this.cache.line_color),this.cache_select(\"line_alpha\",e),t.globalAlpha!==this.cache.line_alpha&&(t.globalAlpha=this.cache.line_alpha),this.cache_select(\"line_width\",e),t.lineWidth!==this.cache.line_width&&(t.lineWidth=this.cache.line_width),this.cache_select(\"line_join\",e),t.lineJoin!==this.cache.line_join&&(t.lineJoin=this.cache.line_join),this.cache_select(\"line_cap\",e),t.lineCap!==this.cache.line_cap&&(t.lineCap=this.cache.line_cap),this.cache_select(\"line_dash\",e),t.getLineDash()!==this.cache.line_dash&&t.setLineDash(this.cache.line_dash),this.cache_select(\"line_dash_offset\",e),t.getLineDashOffset()!==this.cache.line_dash_offset&&t.setLineDashOffset(this.cache.line_dash_offset)},e.prototype.color_value=function(){var t=o.color2rgba(this.line_color.value(),this.line_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},e}(i.ContextProperties=s);(i.Line=h).prototype.attrs=Object.keys(r.line()),h.prototype.do_attr=\"line_color\";var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.set_value=function(t){t.fillStyle=this.fill_color.value(),t.globalAlpha=this.fill_alpha.value()},e.prototype._set_vectorize=function(t,e){this.cache_select(\"fill_color\",e),t.fillStyle!==this.cache.fill_color&&(t.fillStyle=this.cache.fill_color),this.cache_select(\"fill_alpha\",e),t.globalAlpha!==this.cache.fill_alpha&&(t.globalAlpha=this.cache.fill_alpha)},e.prototype.color_value=function(){var t=o.color2rgba(this.fill_color.value(),this.fill_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},e}(s);(i.Fill=u).prototype.attrs=Object.keys(r.fill()),u.prototype.do_attr=\"fill_color\";var c=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.cache_select=function(t,e){var i;if(\"font\"==t){a.prototype.cache_select.call(this,\"text_font_style\",e),a.prototype.cache_select.call(this,\"text_font_size\",e),a.prototype.cache_select.call(this,\"text_font\",e);var n=this.cache,r=n.text_font_style,o=n.text_font_size,s=n.text_font;this.cache.font=i=r+\" \"+o+\" \"+s}else i=a.prototype.cache_select.call(this,t,e);return i},t.prototype.font_value=function(){var t=this.text_font.value(),e=this.text_font_size.value(),i=this.text_font_style.value();return i+\" \"+e+\" \"+t},t.prototype.color_value=function(){var t=o.color2rgba(this.text_color.value(),this.text_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},t.prototype.set_value=function(t){t.font=this.font_value(),t.fillStyle=this.text_color.value(),t.globalAlpha=this.text_alpha.value(),t.textAlign=this.text_align.value(),t.textBaseline=this.text_baseline.value()},t.prototype._set_vectorize=function(t,e){this.cache_select(\"font\",e),t.font!==this.cache.font&&(t.font=this.cache.font),this.cache_select(\"text_color\",e),t.fillStyle!==this.cache.text_color&&(t.fillStyle=this.cache.text_color),this.cache_select(\"text_alpha\",e),t.globalAlpha!==this.cache.text_alpha&&(t.globalAlpha=this.cache.text_alpha),this.cache_select(\"text_align\",e),t.textAlign!==this.cache.text_align&&(t.textAlign=this.cache.text_align),this.cache_select(\"text_baseline\",e),t.textBaseline!==this.cache.text_baseline&&(t.textBaseline=this.cache.text_baseline)},t}(s);(i.Text=c).prototype.attrs=Object.keys(r.text()),c.prototype.do_attr=\"text_color\";var a=function(){function t(t){for(var e=0,i=t.mixins;e<i.length;e++){var n=i[e],r=n.split(\":\"),o=r[0],s=r[1],a=void 0===s?\"\":s,l=void 0;switch(o){case\"line\":l=h;break;case\"fill\":l=u;break;case\"text\":l=c;break;default:throw new Error(\"unknown visual: \"+o)}this[a+o]=new l(t,a)}}return t.prototype.warm_cache=function(t){for(var e in this)if(this.hasOwnProperty(e)){var i=this[e];i instanceof s&&i.warm_cache(t)}},t.prototype.set_all_indices=function(t){for(var e in this)if(this.hasOwnProperty(e)){var i=this[e];i instanceof s&&(i.all_indices=t)}},t}();i.Visuals=a},function(t,e,i){var o=t(391),s=t(0),_=t(286),j=t(14),n=t(3),p=t(8),r=t(19),a=t(34),N=t(36),m=t(29),y=t(21),b=t(32),x=t(30),d=t(44),l=t(157),F=t(200),g=t(59),h=t(51),u=function(){function t(t){this.document=t,this.session=null,this.subscribed_models=new m.Set}return t.prototype.send_event=function(t){null!=this.session&&this.session.send_event(t)},t.prototype.trigger=function(t){for(var e=0,i=this.subscribed_models.values;e<i.length;e++){var n=i[e];if(null==t.model_id||t.model_id===n){var r=this.document._all_models[n];null!=r&&r._process_event(t)}}},t}();i.EventManager=u,i.documents=[],i.DEFAULT_TITLE=\"Bokeh Application\";var c=function(){function P(){i.documents.push(this),this._init_timestamp=Date.now(),this._title=i.DEFAULT_TITLE,this._roots=[],this._all_models={},this._all_models_by_name=new m.MultiDict,this._all_models_freeze_count=0,this._callbacks=[],this.event_manager=new u(this),this.idle=new r.Signal0(this,\"idle\"),this._idle_roots=new WeakMap,this._interactive_timestamp=null,this._interactive_plot=null}return Object.defineProperty(P.prototype,\"layoutables\",{get:function(){return this._roots.filter(function(t){return t instanceof l.LayoutDOM})},enumerable:!0,configurable:!0}),Object.defineProperty(P.prototype,\"is_idle\",{get:function(){for(var t=0,e=this.layoutables;t<e.length;t++){var i=e[t];if(!this._idle_roots.has(i))return!1}return!0},enumerable:!0,configurable:!0}),P.prototype.notify_idle=function(t){this._idle_roots.set(t,!0),this.is_idle&&(j.logger.info(\"document idle at \"+(Date.now()-this._init_timestamp)+\" ms\"),this.idle.emit())},P.prototype.clear=function(){this._push_all_models_freeze();try{for(;0<this._roots.length;)this.remove_root(this._roots[0])}finally{this._pop_all_models_freeze()}},P.prototype.interactive_start=function(t){null==this._interactive_plot&&(this._interactive_plot=t,this._interactive_plot.trigger_event(new n.LODStart({}))),this._interactive_timestamp=Date.now()},P.prototype.interactive_stop=function(t){null!=this._interactive_plot&&this._interactive_plot.id===t.id&&this._interactive_plot.trigger_event(new n.LODEnd({})),this._interactive_plot=null,this._interactive_timestamp=null},P.prototype.interactive_duration=function(){return null==this._interactive_timestamp?-1:Date.now()-this._interactive_timestamp},P.prototype.destructively_move=function(t){if(t===this)throw new Error(\"Attempted to overwrite a document with itself\");t.clear();var e=y.copy(this._roots);this.clear();for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null!=r.document)throw new Error(\"Somehow we didn't detach \"+r)}if(0!==Object.keys(this._all_models).length)throw new Error(\"this._all_models still had stuff in it: \"+this._all_models);for(var o=0,s=e;o<s.length;o++){var r=s[o];t.add_root(r)}t.set_title(this._title)},P.prototype._push_all_models_freeze=function(){this._all_models_freeze_count+=1},P.prototype._pop_all_models_freeze=function(){this._all_models_freeze_count-=1,0===this._all_models_freeze_count&&this._recompute_all_models()},P.prototype._invalidate_all_models=function(){j.logger.debug(\"invalidating document models\"),0===this._all_models_freeze_count&&this._recompute_all_models()},P.prototype._recompute_all_models=function(){for(var t=new m.Set,e=0,i=this._roots;e<i.length;e++){var n=i[e];t=t.union(n.references())}for(var r=new m.Set(b.values(this._all_models)),o=r.diff(t),s=t.diff(r),a={},l=0,h=t.values;l<h.length;l++){var u=h[l];a[u.id]=u}for(var c=0,_=o.values;c<_.length;c++){var p=_[c];p.detach_document(),p instanceof g.Model&&null!=p.name&&this._all_models_by_name.remove_value(p.name,p)}for(var d=0,f=s.values;d<f.length;d++){var v=f[d];v.attach_document(this),v instanceof g.Model&&null!=v.name&&this._all_models_by_name.add_value(v.name,v)}this._all_models=a},P.prototype.roots=function(){return this._roots},P.prototype.add_root=function(t,e){if(j.logger.debug(\"Adding root: \"+t),!y.includes(this._roots,t)){this._push_all_models_freeze();try{this._roots.push(t)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new h.RootAddedEvent(this,t,e))}},P.prototype.remove_root=function(t,e){var i=this._roots.indexOf(t);if(!(i<0)){this._push_all_models_freeze();try{this._roots.splice(i,1)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new h.RootRemovedEvent(this,t,e))}},P.prototype.title=function(){return this._title},P.prototype.set_title=function(t,e){t!==this._title&&(this._title=t,this._trigger_on_change(new h.TitleChangedEvent(this,t,e)))},P.prototype.get_model_by_id=function(t){return t in this._all_models?this._all_models[t]:null},P.prototype.get_model_by_name=function(t){return this._all_models_by_name.get_one(t,\"Multiple models are named '\"+t+\"'\")},P.prototype.on_change=function(t){y.includes(this._callbacks,t)||this._callbacks.push(t)},P.prototype.remove_on_change=function(t){var e=this._callbacks.indexOf(t);0<=e&&this._callbacks.splice(e,1)},P.prototype._trigger_on_change=function(t){for(var e=0,i=this._callbacks;e<i.length;e++){var n=i[e];n(t)}},P.prototype._notify_change=function(t,e,i,n,r){\"name\"===e&&(this._all_models_by_name.remove_value(i,t),null!=n&&this._all_models_by_name.add_value(n,t));var o=null!=r?r.setter_id:void 0,s=null!=r?r.hint:void 0;this._trigger_on_change(new h.ModelChangedEvent(this,t,e,i,n,o,s))},P._references_json=function(t,e){void 0===e&&(e=!0);for(var i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o.ref();s.attributes=o.attributes_as_json(e),delete s.attributes.id,i.push(s)}return i},P._instantiate_object=function(t,e,i){var n=o.__assign({},i,{id:t,__deferred__:!0}),r=s.Models(e);return new r(n)},P._instantiate_references_json=function(t,e){for(var i={},n=0,r=t;n<r.length;n++){var o=r[n],s=o.id,a=o.type,l=o.attributes||{},h=void 0;s in e?h=e[s]:(h=P._instantiate_object(s,a,l),null!=o.subtype&&h.set_subtype(o.subtype)),i[h.id]=h}return i},P._resolve_refs=function(t,e,i){function o(t){if(a.is_ref(t)){if(t.id in e)return e[t.id];if(t.id in i)return i[t.id];throw new Error(\"reference \"+JSON.stringify(t)+\" isn't known (not in Document?)\")}return d.isArray(t)?function(t){for(var e=[],i=0,n=t;i<n.length;i++){var r=n[i];e.push(o(r))}return e}(t):d.isPlainObject(t)?function(t){var e={};for(var i in t){var n=t[i];e[i]=o(n)}return e}(t):t}return o(t)},P._initialize_references_json=function(t,e,i){for(var n={},r=0,o=t;r<o.length;r++){var s=o[r],a=s.id,l=s.attributes,h=!(a in e),u=h?i[a]:e[a],c=P._resolve_refs(l,e,i);n[u.id]=[u,c,h]}function _(h,u){var c={};function _(t){if(t instanceof p.HasProps){if(!(t.id in c)&&t.id in h){c[t.id]=!0;var e=h[t.id],i=e[1],n=e[2];for(var r in i){var o=i[r];_(o)}u(t,i,n)}}else if(d.isArray(t))for(var s=0,a=t;s<a.length;s++){var o=a[s];_(o)}else if(d.isPlainObject(t))for(var l in t){var o=t[l];_(o)}}for(var t in h){var e=h[t],i=e[0];_(i)}}_(n,function(t,e,i){i&&t.setv(e,{silent:!0})}),_(n,function(t,e,i){i&&t.finalize()})},P._event_for_attribute_change=function(t,e,i,n,r){var o=n.get_model_by_id(t.id);if(o.attribute_is_serializable(e)){var s={kind:\"ModelChanged\",model:{id:t.id,type:t.type},attr:e,new:i};return p.HasProps._json_record_references(n,i,r,!0),s}return null},P._events_to_sync_objects=function(t,e,i,n){for(var r=Object.keys(t.attributes),o=Object.keys(e.attributes),s=y.difference(r,o),a=y.difference(o,r),l=y.intersection(r,o),h=[],u=0,c=s;u<c.length;u++){var _=c[u];j.logger.warn(\"Server sent key \"+_+\" but we don't seem to have it in our JSON\")}for(var p=0,d=a;p<d.length;p++){var _=d[p],f=e.attributes[_];h.push(P._event_for_attribute_change(t,_,f,i,n))}for(var v=0,m=l;v<m.length;v++){var _=m[v],g=t.attributes[_],f=e.attributes[_];null==g&&null==f||(null==g||null==f?h.push(P._event_for_attribute_change(t,_,f,i,n)):x.isEqual(g,f)||h.push(P._event_for_attribute_change(t,_,f,i,n)))}return h.filter(function(t){return null!=t})},P._compute_patch_since_json=function(t,e){var i=e.to_json(!1);function n(t){for(var e={},i=0,n=t.roots.references;i<n.length;i++){var r=n[i];e[r.id]=r}return e}for(var r=n(t),o={},s=[],a=0,l=t.roots.root_ids;a<l.length;a++){var h=l[a];o[h]=r[h],s.push(h)}for(var u=n(i),c={},_=[],p=0,d=i.roots.root_ids;p<d.length;p++){var h=d[p];c[h]=u[h],_.push(h)}if(s.sort(),_.sort(),0<y.difference(s,_).length||0<y.difference(_,s).length)throw new Error(\"Not implemented: computing add/remove of document roots\");var f={},v=[];for(var m in e._all_models)if(m in r){var g=P._events_to_sync_objects(r[m],u[m],e,f);v=v.concat(g)}return{references:P._references_json(b.values(f),!1),events:v}},P.prototype.to_json_string=function(t){return void 0===t&&(t=!0),JSON.stringify(this.to_json(t))},P.prototype.to_json=function(t){void 0===t&&(t=!0);var e=this._roots.map(function(t){return t.id}),i=b.values(this._all_models);return{version:_.version,title:this._title,roots:{root_ids:e,references:P._references_json(i,t)}}},P.from_json_string=function(t){var e=JSON.parse(t);return P.from_json(e)},P.from_json=function(t){j.logger.debug(\"Creating Document from JSON\");var e=t.version,i=-1!==e.indexOf(\"+\")||-1!==e.indexOf(\"-\"),n=\"Library versions: JS (\"+_.version+\") / Python (\"+e+\")\";i||_.version===e?j.logger.debug(n):(j.logger.warn(\"JS/Python version mismatch\"),j.logger.warn(n));var r=t.roots,o=r.root_ids,s=r.references,a=P._instantiate_references_json(s,{});P._initialize_references_json(s,{},a);for(var l=new P,h=0,u=o;h<u.length;h++){var c=u[h];l.add_root(a[c])}return l.set_title(t.title),l},P.prototype.replace_with_json=function(t){var e=P.from_json(t);e.destructively_move(this)},P.prototype.create_json_patch_string=function(t){return JSON.stringify(this.create_json_patch(t))},P.prototype.create_json_patch=function(t){for(var e={},i=[],n=0,r=t;n<r.length;n++){var o=r[n];if(o.document!==this)throw j.logger.warn(\"Cannot create a patch using events from a different document, event had \",o.document,\" we are \",this),new Error(\"Cannot create a patch using events from a different document\");i.push(o.json(e))}return{events:i,references:P._references_json(b.values(e))}},P.prototype.apply_json_patch=function(t,e,i){for(var n,r=t.references,o=t.events,s=P._instantiate_references_json(r,this._all_models),a=0,l=o;a<l.length;a++){var h=l[a];switch(h.kind){case\"RootAdded\":case\"RootRemoved\":case\"ModelChanged\":var u=h.model.id;if(u in this._all_models)s[u]=this._all_models[u];else if(!(u in s))throw j.logger.warn(\"Got an event for unknown model \",h.model),new Error(\"event model wasn't known\")}}var c={},_={};for(var p in s){var d=s[p];p in this._all_models?c[p]=d:_[p]=d}P._initialize_references_json(r,c,_);for(var f=0,v=o;f<v.length;f++){var h=v[f];switch(h.kind){case\"ModelChanged\":var m=h.model.id;if(!(m in this._all_models))throw new Error(\"Cannot apply patch to \"+m+\" which is not in the document\");var g=this._all_models[m],y=h.attr,b=h.model.type;if(\"data\"===y&&\"ColumnDataSource\"===b){var x=N.decode_column_data(h.new,e),w=x[0],k=x[1];g.setv({_shapes:k,data:w},{setter_id:i})}else{var d=P._resolve_refs(h.new,c,_);g.setv(((n={})[y]=d,n),{setter_id:i})}break;case\"ColumnDataChanged\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot stream to \"+S+\" which is not in the document\");var C=this._all_models[S],T=N.decode_column_data(h.new,e),w=T[0],k=T[1];if(null!=h.cols){for(var A in C.data)A in w||(w[A]=C.data[A]);for(var A in C._shapes)A in k||(k[A]=C._shapes[A])}C.setv({_shapes:k,data:w},{setter_id:i,check_eq:!1});break;case\"ColumnsStreamed\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot stream to \"+S+\" which is not in the document\");var C=this._all_models[S];if(!(C instanceof F.ColumnDataSource))throw new Error(\"Cannot stream to non-ColumnDataSource\");var w=h.data,E=h.rollover;C.stream(w,E,i);break;case\"ColumnsPatched\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot patch \"+S+\" which is not in the document\");var C=this._all_models[S];if(!(C instanceof F.ColumnDataSource))throw new Error(\"Cannot patch non-ColumnDataSource\");var M=h.patches;C.patch(M,i);break;case\"RootAdded\":var O=h.model.id,z=s[O];this.add_root(z,i);break;case\"RootRemoved\":var O=h.model.id,z=s[O];this.remove_root(z,i);break;case\"TitleChanged\":this.set_title(h.title,i);break;default:throw new Error(\"Unknown patch event \"+JSON.stringify(h))}}},P}();i.Document=c},function(t,e,i){var n=t(391),o=t(8),r=function(t){this.document=t},s=function(l){function t(t,e,i,n,r,o,s){var a=l.call(this,t)||this;return a.model=e,a.attr=i,a.old=n,a.new_=r,a.setter_id=o,a.hint=s,a}return n.__extends(t,l),t.prototype.json=function(t){if(\"id\"===this.attr)throw new Error(\"'id' field should never change, whatever code just set it is wrong\");if(null!=this.hint)return this.hint.json(t);var e=this.new_,i=o.HasProps._value_to_json(this.attr,e,this.model),n={};for(var r in o.HasProps._value_record_references(e,n,!0),this.model.id in n&&this.model!==e&&delete n[this.model.id],n)t[r]=n[r];return{kind:\"ModelChanged\",model:this.model.ref(),attr:this.attr,new:i}},t}(i.DocumentChangedEvent=r);i.ModelChangedEvent=s;var a=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.column_source=e,n.patches=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"ColumnsPatched\",column_source:this.column_source,patches:this.patches}},t}(r);i.ColumnsPatchedEvent=a;var l=function(o){function t(t,e,i,n){var r=o.call(this,t)||this;return r.column_source=e,r.data=i,r.rollover=n,r}return n.__extends(t,o),t.prototype.json=function(t){return{kind:\"ColumnsStreamed\",column_source:this.column_source,data:this.data,rollover:this.rollover}},t}(r);i.ColumnsStreamedEvent=l;var h=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.title=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"TitleChanged\",title:this.title}},t}(r);i.TitleChangedEvent=h;var u=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.model=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return o.HasProps._value_record_references(this.model,t,!0),{kind:\"RootAdded\",model:this.model.ref()}},t}(r);i.RootAddedEvent=u;var c=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.model=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"RootRemoved\",model:this.model.ref()}},t}(r);i.RootRemovedEvent=c},function(t,e,i){var n=t(391);n.__exportStar(t(50),i),n.__exportStar(t(51),i)},function(t,e,n){var r=t(5);function o(t){var e=document.getElementById(t);if(null==e)throw new Error(\"Error rendering Bokeh model: could not find #\"+t+\" HTML tag\");if(!document.body.contains(e))throw new Error(\"Error rendering Bokeh model: element #\"+t+\" must be under <body>\");if(\"SCRIPT\"==e.tagName){var i=r.div({class:n.BOKEH_ROOT});r.replaceWith(e,i),e=i}return e}n.BOKEH_ROOT=\"bk-root\",n.inject_css=function(t){var e=r.link({href:t,rel:\"stylesheet\",type:\"text/css\"});document.body.appendChild(e)},n.inject_raw_css=function(t){var e=r.style({},t);document.body.appendChild(e)},n._resolve_element=function(t){var e=t.elementid;return null!=e?o(e):document.body},n._resolve_root_elements=function(t){var e={};if(null!=t.roots)for(var i in t.roots)e[i]=o(t.roots[i]);return e}},function(t,e,i){var d=t(52),f=t(14),a=t(25),v=t(38),m=t(44),g=t(57),y=t(56),b=t(53),n=t(57);i.add_document_standalone=n.add_document_standalone;var r=t(56);i.add_document_from_session=r.add_document_from_session;var o=t(55);i.embed_items_notebook=o.embed_items_notebook,i.kernels=o.kernels;var s=t(53);function l(t,e,i,n){m.isString(t)&&(t=JSON.parse(v.unescape(t)));var r={};for(var o in t){var s=t[o];r[o]=d.Document.from_json(s)}for(var a=0,l=e;a<l.length;a++){var h=l[a],u=b._resolve_element(h),c=b._resolve_root_elements(h);if(null!=h.docid)g.add_document_standalone(r[h.docid],u,c,h.use_for_title);else{if(null==h.sessionid)throw new Error(\"Error rendering Bokeh items: either 'docid' or 'sessionid' was expected.\");var _=y._get_ws_url(i,n);f.logger.debug(\"embed: computed ws url: \"+_);var p=y.add_document_from_session(_,h.sessionid,u,c,h.use_for_title);p.then(function(){console.log(\"Bokeh items were rendered successfully\")},function(t){console.log(\"Error rendering Bokeh items:\",t)})}}}i.BOKEH_ROOT=s.BOKEH_ROOT,i.inject_css=s.inject_css,i.inject_raw_css=s.inject_raw_css,i.embed_item=function(t,e){var i,n={},r=v.uuid4();n[r]=t.doc,null==e&&(e=t.target_id);var o=document.getElementById(e);null!=o&&o.classList.add(b.BOKEH_ROOT);var s={roots:((i={})[t.root_id]=e,i),docid:r};a.defer(function(){return l(n,[s])})},i.embed_items=function(t,e,i,n){a.defer(function(){return l(t,e,i,n)})}},function(t,e,r){var l=t(52),o=t(283),s=t(14),h=t(32),u=t(57),c=t(53);function a(t,e){0<e.buffers.length?t.consume(e.buffers[0].buffer):t.consume(e.content.data);var i=t.message;null!=i&&this.apply_json_patch(i.content,i.buffers)}function _(i,n){if(\"undefined\"!=typeof Jupyter&&null!=Jupyter.notebook.kernel){s.logger.info(\"Registering Jupyter comms for target \"+i);var t=Jupyter.notebook.kernel.comm_manager;try{t.register_target(i,function(t){s.logger.info(\"Registering Jupyter comms for target \"+i);var e=new o.Receiver;t.on_msg(a.bind(n,e))})}catch(t){s.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else if(n.roots()[0].id in r.kernels){s.logger.info(\"Registering JupyterLab comms for target \"+i);var e=r.kernels[n.roots()[0].id];try{e.registerCommTarget(i,function(t){s.logger.info(\"Registering JupyterLab comms for target \"+i);var e=new o.Receiver;t.onMsg=a.bind(n,e)})}catch(t){s.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else console.warn(\"Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest jupyterlab_bokeh extension is installed. In an exported notebook this warning is expected.\")}r.kernels={},r.embed_items_notebook=function(t,e){if(1!=h.size(t))throw new Error(\"embed_items_notebook expects exactly one document in docs_json\");for(var i=l.Document.from_json(h.values(t)[0]),n=0,r=e;n<r.length;n++){var o=r[n];null!=o.notebook_comms_target&&_(o.notebook_comms_target,i);var s=c._resolve_element(o),a=c._resolve_root_elements(o);u.add_document_standalone(i,s,a)}}},function(t,e,i){var s=t(1),a=t(14),l=t(57);i._get_ws_url=function(t,e){var i,n=\"ws:\";return\"https:\"==window.location.protocol&&(n=\"wss:\"),null!=e?(i=document.createElement(\"a\")).href=e:i=window.location,null!=t?\"/\"==t&&(t=\"\"):t=i.pathname.replace(/\\/+$/,\"\"),n+\"//\"+i.host+t+\"/ws\"};var h={};i.add_document_from_session=function(t,e,i,n,r){void 0===n&&(n={}),void 0===r&&(r=!1);var o=window.location.search.substr(1);return function(t,e,i){t in h||(h[t]={});var n=h[t];return e in n||(n[e]=s.pull_session(t,e,i)),n[e]}(t,e,o).then(function(t){return l.add_document_standalone(t.document,i,n,r)},function(t){throw a.logger.error(\"Failed to load Bokeh session \"+e+\": \"+t),t})}},function(t,e,i){var h=t(52),u=t(5),c=t(0),_=t(53);i.add_document_standalone=function(t,o,s,e){void 0===s&&(s={}),void 0===e&&(e=!1);var a={};function i(t){var e;t.id in s?e=s[t.id]:o.classList.contains(_.BOKEH_ROOT)?e=o:(e=u.div({class:_.BOKEH_ROOT}),o.appendChild(e));var i,n,r=(n=new(i=t).default_view({model:i,parent:null}),c.index[i.id]=n);r.renderTo(e),a[t.id]=r}for(var n=0,r=t.roots();n<r.length;n++){var l=r[n];i(l)}return e&&(window.document.title=t.title()),t.on_change(function(t){t instanceof h.RootAddedEvent?i(t.model):t instanceof h.RootRemovedEvent?function(t){var e=t.id;if(e in a){var i=a[e];i.remove(),delete a[e],delete c.index[e]}}(t.model):e&&t instanceof h.TitleChangedEvent&&(window.document.title=t.title)}),a}},function(t,e,i){t(280);var n=t(286);i.version=n.version;var r=t(54);i.embed=r;var o=t(281);i.protocol=o;var s=t(285);i._testing=s;var a=t(14);i.logger=a.logger,i.set_log_level=a.set_log_level;var l=t(18);i.settings=l.settings;var h=t(0);i.Models=h.Models,i.index=h.index;var u=t(52);i.documents=u.documents;var c=t(284);i.safely=c.safely},function(t,e,i){var n=t(391),r=t(8),o=t(15),s=t(44),a=t(32),l=t(14),h=function(_){function i(t){return _.call(this,t)||this}return n.__extends(i,_),i.initClass=function(){this.prototype.type=\"Model\",this.define({tags:[o.Array,[]],name:[o.String],js_property_callbacks:[o.Any,{}],js_event_callbacks:[o.Any,{}],subscribed_events:[o.Array,[]]})},i.prototype.connect_signals=function(){var i=this;for(var t in _.prototype.connect_signals.call(this),this.js_property_callbacks)for(var e=this.js_property_callbacks[t],n=t.split(\":\"),r=n[0],o=n[1],s=void 0===o?null:o,a=function(t){var e=null!=s?l.properties[s][r]:l[r];l.connect(e,function(){return t.execute(i,{})})},l=this,h=0,u=e;h<u.length;h++){var c=u[h];a(c)}this.connect(this.properties.js_event_callbacks.change,function(){return i._update_event_callbacks}),this.connect(this.properties.subscribed_events.change,function(){return i._update_event_callbacks})},i.prototype._process_event=function(e){if(e.is_applicable_to(this)){e=e._customize_event(this);for(var t=0,i=this.js_event_callbacks[e.event_name]||[];t<i.length;t++){var n=i[t];n.execute(e,{})}null!=this.document&&this.subscribed_events.some(function(t){return t==e.event_name})&&this.document.event_manager.send_event(e)}},i.prototype.trigger_event=function(t){null!=this.document&&this.document.event_manager.trigger(t.set_model_id(this.id))},i.prototype._update_event_callbacks=function(){null!=this.document?this.document.event_manager.subscribed_models.add(this.id):l.logger.warn(\"WARNING: Document not defined for updating event callbacks\")},i.prototype._doc_attached=function(){a.isEmpty(this.js_event_callbacks)&&a.isEmpty(this.subscribed_events)||this._update_event_callbacks()},i.prototype.select=function(e){if(s.isString(e))return this.references().filter(function(t){return t instanceof i&&t.name===e});if(e.prototype instanceof r.HasProps)return this.references().filter(function(t){return t instanceof e});throw new Error(\"invalid selector\")},i.prototype.select_one=function(t){var e=this.select(t);switch(e.length){case 0:return null;case 1:return e[0];default:throw new Error(\"found more than one object matching given selector\")}},i}(r.HasProps);(i.Model=h).initClass()},function(t,e,i){var n=t(391),r=t(12),o=t(15),s=t(33),a=t(32),l=t(189),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._get_size=function(){throw new Error(\"not implemented\")},e.prototype.get_size=function(){return this.model.visible?Math.round(this._get_size()):0},e.prototype.set_data=function(t){var e,i,n=this.model.materialize_dataspecs(t);if(a.extend(this,n),this.plot_model.use_map){var r=this;null!=r._x&&(e=s.project_xy(r._x,r._y),r._x=e[0],r._y=e[1]),null!=r._xs&&(i=s.project_xsys(r._xs,r._ys),r._xs=i[0],r._ys=i[1])}},e}(l.RendererView);i.AnnotationView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Annotation\",this.define({plot:[o.Instance]}),this.override({level:\"annotation\"})},t.prototype.add_panel=function(t){if(null==this.panel||t!==this.panel.side){var e=new r.SidePanel({side:t});e.attach_document(this.document),this.set_panel(e)}},t.prototype.set_panel=function(t){this.panel=t,this.level=\"overlay\"},t}(l.Renderer);(i.Annotation=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(62),s=t(200),a=t(15),l=t(31),h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),null==this.model.source&&(this.model.source=new s.ColumnDataSource),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n,r=this.plot_view.frame;return\"data\"==this.model.start_units?(t=r.xscales[this.model.x_range_name].v_compute(this._x_start),e=r.yscales[this.model.y_range_name].v_compute(this._y_start)):(t=r.xview.v_compute(this._x_start),e=r.yview.v_compute(this._y_start)),\"data\"==this.model.end_units?(i=r.xscales[this.model.x_range_name].v_compute(this._x_end),n=r.yscales[this.model.y_range_name].v_compute(this._y_end)):(i=r.xview.v_compute(this._x_end),n=r.yview.v_compute(this._y_end)),[[t,e],[i,n]]},t.prototype.render=function(){if(this.model.visible){var t=this.plot_view.canvas_view.ctx;t.save();var e=this._map_data(),i=e[0],n=e[1];null!=this.model.end&&this._arrow_head(t,\"render\",this.model.end,i,n),null!=this.model.start&&this._arrow_head(t,\"render\",this.model.start,n,i),t.beginPath();var r=this.plot_model.canvas.bbox.rect,o=r.x,s=r.y,a=r.width,l=r.height;t.rect(o,s,a,l),null!=this.model.end&&this._arrow_head(t,\"clip\",this.model.end,i,n),null!=this.model.start&&this._arrow_head(t,\"clip\",this.model.start,n,i),t.closePath(),t.clip(),this._arrow_body(t,i,n),t.restore()}},t.prototype._arrow_head=function(t,e,i,n,r){for(var o=0,s=this._x_start.length;o<s;o++){var a=Math.PI/2+l.atan2([n[0][o],n[1][o]],[r[0][o],r[1][o]]);t.save(),t.translate(r[0][o],r[1][o]),t.rotate(a),\"render\"==e?i.render(t,o):\"clip\"==e&&i.clip(t,o),t.restore()}},t.prototype._arrow_body=function(t,e,i){if(this.visuals.line.doit)for(var n=0,r=this._x_start.length;n<r;n++)this.visuals.line.set_vectorize(t,n),t.beginPath(),t.moveTo(e[0][n],e[1][n]),t.lineTo(i[0][n],i[1][n]),t.stroke()},t}(r.AnnotationView);i.ArrowView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Arrow\",this.prototype.default_view=h,this.mixins([\"line\"]),this.define({x_start:[a.NumberSpec],y_start:[a.NumberSpec],start_units:[a.String,\"data\"],start:[a.Instance,null],x_end:[a.NumberSpec],y_end:[a.NumberSpec],end_units:[a.String,\"data\"],end:[a.Instance,function(){return new o.OpenHead({})}],source:[a.Instance],x_range_name:[a.String,\"default\"],y_range_name:[a.String,\"default\"]})},t}(r.Annotation);(i.Arrow=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(49),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ArrowHead\",this.define({size:[s.Number,25]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.visuals=new o.Visuals(this)},t}(r.Annotation);(i.ArrowHead=a).initClass();var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"OpenHead\",this.mixins([\"line\"])},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(0,0),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.stroke())},t}(a);(i.OpenHead=l).initClass();var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NormalHead\",this.mixins([\"line\",\"fill\"]),this.override({fill_color:\"black\"})},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._normal(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._normal(t,e),t.stroke())},t.prototype._normal=function(t,e){t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.closePath()},t}(a);(i.NormalHead=h).initClass();var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"VeeHead\",this.mixins([\"line\",\"fill\"]),this.override({fill_color:\"black\"})},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(0,.5*this.size),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._vee(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._vee(t,e),t.stroke())},t.prototype._vee=function(t,e){t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.lineTo(0,.5*this.size),t.closePath()},t}(a);(i.VeeHead=u).initClass();var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TeeHead\",this.mixins([\"line\"])},t.prototype.render=function(t,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(.5*this.size,0),t.lineTo(-.5*this.size,0),t.stroke())},t.prototype.clip=function(t,e){},t}(a);(i.TeeHead=c).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(200),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n=this.plot_view.frame,r=this.model.dimension,o=n.xscales[this.model.x_range_name],s=n.yscales[this.model.y_range_name],a=\"height\"==r?s:o,l=\"height\"==r?o:s,h=\"height\"==r?n.yview:n.xview,u=\"height\"==r?n.xview:n.yview;t=\"data\"==this.model.lower.units?a.v_compute(this._lower):h.v_compute(this._lower),e=\"data\"==this.model.upper.units?a.v_compute(this._upper):h.v_compute(this._upper),i=\"data\"==this.model.base.units?l.v_compute(this._base):u.v_compute(this._base);var c=\"height\"==r?[1,0]:[0,1],_=c[0],p=c[1],d=[t,i],f=[e,i];this._lower_sx=d[_],this._lower_sy=d[p],this._upper_sx=f[_],this._upper_sy=f[p]},t.prototype.render=function(){if(this.model.visible){this._map_data();var t=this.plot_view.canvas_view.ctx;t.beginPath(),t.moveTo(this._lower_sx[0],this._lower_sy[0]);for(var e=0,i=this._lower_sx.length;e<i;e++)t.lineTo(this._lower_sx[e],this._lower_sy[e]);for(var n=this._upper_sx.length-1,e=n;0<=e;e--)t.lineTo(this._upper_sx[e],this._upper_sy[e]);t.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(t),t.fill()),t.beginPath(),t.moveTo(this._lower_sx[0],this._lower_sy[0]);for(var e=0,i=this._lower_sx.length;e<i;e++)t.lineTo(this._lower_sx[e],this._lower_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke()),t.beginPath(),t.moveTo(this._upper_sx[0],this._upper_sy[0]);for(var e=0,i=this._upper_sx.length;e<i;e++)t.lineTo(this._upper_sx[e],this._upper_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke())}},t}(r.AnnotationView);i.BandView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Band\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({lower:[s.DistanceSpec],upper:[s.DistanceSpec],base:[s.DistanceSpec],dimension:[s.Dimension,\"height\"],source:[s.Instance,function(){return new o.ColumnDataSource}],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t}(r.Annotation);(i.Band=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(19),l=t(5),s=t(15),a=t(24);i.EDGE_TOLERANCE=2.5;var h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),this.el.classList.add(\"bk-shading\"),l.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?(this.connect(this.model.change,function(){return t.render()}),this.connect(this.model.data_update,function(){return t.render()})):(this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.data_update,function(){return t.plot_view.request_render()}))},t.prototype.render=function(){var o=this;if(this.model.visible||\"css\"!=this.model.render_mode||l.hide(this.el),this.model.visible)if(null!=this.model.left||null!=this.model.right||null!=this.model.top||null!=this.model.bottom){var t=this.plot_model.frame,e=t.xscales[this.model.x_range_name],i=t.yscales[this.model.y_range_name],n=function(t,e,i,n,r){return null!=t?o.model.screen?t:\"data\"==e?i.compute(t):n.compute(t):r};this.sleft=n(this.model.left,this.model.left_units,e,t.xview,t._left.value),this.sright=n(this.model.right,this.model.right_units,e,t.xview,t._right.value),this.stop=n(this.model.top,this.model.top_units,i,t.yview,t._top.value),this.sbottom=n(this.model.bottom,this.model.bottom_units,i,t.yview,t._bottom.value);var r=\"css\"==this.model.render_mode?this._css_box.bind(this):this._canvas_box.bind(this);r(this.sleft,this.sright,this.sbottom,this.stop)}else l.hide(this.el)},t.prototype._css_box=function(t,e,i,n){var r=this.model.properties.line_width.value(),o=Math.floor(e-t)-r,s=Math.floor(i-n)-r;this.el.style.left=t+\"px\",this.el.style.width=o+\"px\",this.el.style.top=n+\"px\",this.el.style.height=s+\"px\",this.el.style.borderWidth=r+\"px\",this.el.style.borderColor=this.model.properties.line_color.value(),this.el.style.backgroundColor=this.model.properties.fill_color.value(),this.el.style.opacity=this.model.properties.fill_alpha.value();var a=this.model.properties.line_dash.value().length<2?\"solid\":\"dashed\";this.el.style.borderStyle=a,l.show(this.el)},t.prototype._canvas_box=function(t,e,i,n){var r=this.plot_view.canvas_view.ctx;r.save(),r.beginPath(),r.rect(t,n,e-t,i-n),this.visuals.fill.set_value(r),r.fill(),this.visuals.line.set_value(r),r.stroke(),r.restore()},t.prototype.interactive_bbox=function(){var t=this.model.properties.line_width.value()+i.EDGE_TOLERANCE;return new a.BBox({x0:this.sleft-t,y0:this.stop-t,x1:this.sright+t,y1:this.sbottom+t})},t.prototype.interactive_hit=function(t,e){if(null==this.model.in_cursor)return!1;var i=this.interactive_bbox();return i.contains(t,e)},t.prototype.cursor=function(t,e){return Math.abs(t-this.sleft)<3||Math.abs(t-this.sright)<3?this.model.ew_cursor:Math.abs(e-this.sbottom)<3||Math.abs(e-this.stop)<3?this.model.ns_cursor:t>this.sleft&&t<this.sright&&e>this.stop&&e<this.sbottom?this.model.in_cursor:null},t}(r.AnnotationView);i.BoxAnnotationView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BoxAnnotation\",this.prototype.default_view=h,this.mixins([\"line\",\"fill\"]),this.define({render_mode:[s.RenderMode,\"canvas\"],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],top:[s.Number,null],top_units:[s.SpatialUnits,\"data\"],bottom:[s.Number,null],bottom_units:[s.SpatialUnits,\"data\"],left:[s.Number,null],left_units:[s.SpatialUnits,\"data\"],right:[s.Number,null],right_units:[s.SpatialUnits,\"data\"]}),this.internal({screen:[s.Boolean,!1],ew_cursor:[s.String,null],ns_cursor:[s.String,null],in_cursor:[s.String,null]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.data_update=new o.Signal0(this,\"data_update\")},t.prototype.update=function(t){var e=t.left,i=t.right,n=t.top,r=t.bottom;this.setv({left:e,right:i,top:n,bottom:r,screen:!0},{silent:!0}),this.data_update.emit()},t}(r.Annotation);(i.BoxAnnotation=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(207),s=t(104),u=t(167),a=t(192),l=t(193),h=t(184),c=t(15),_=t(41),p=t(21),g=t(22),d=t(32),f=t(44),v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._set_canvas_image()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.visible.change,function(){return t.plot_view.request_render()}),this.connect(this.model.ticker.change,function(){return t.plot_view.request_render()}),this.connect(this.model.formatter.change,function(){return t.plot_view.request_render()}),null!=this.model.color_mapper&&this.connect(this.model.color_mapper.change,function(){t._set_canvas_image(),t.plot_view.request_render()})},t.prototype._get_size=function(){if(null==this.model.color_mapper)return 0;var t=this.compute_legend_dimensions(),e=this.model.panel.side;switch(e){case\"above\":case\"below\":return t.height;case\"left\":case\"right\":return t.width;default:throw new Error(\"unreachable code\")}},t.prototype._set_canvas_image=function(){var t,e;if(null!=this.model.color_mapper){var i,n,r=this.model.color_mapper.palette;switch(\"vertical\"==this.model.orientation&&(r=p.reversed(r)),this.model.orientation){case\"vertical\":t=[1,r.length],i=t[0],n=t[1];break;case\"horizontal\":e=[r.length,1],i=e[0],n=e[1];break;default:throw new Error(\"unreachable code\")}var o=document.createElement(\"canvas\");o.width=i,o.height=n;var s=o.getContext(\"2d\"),a=s.getImageData(0,0,i,n),l=new u.LinearColorMapper({palette:r}).rgba_mapper,h=l.v_compute(p.range(0,r.length));a.data.set(h),s.putImageData(a,0,0),this.image=o}},t.prototype.compute_legend_dimensions=function(){var t,e,i=this.model._computed_image_dimensions(),n=[i.height,i.width],r=n[0],o=n[1],s=this._get_label_extent(),a=this.model._title_extent(),l=this.model._tick_extent(),h=this.model.padding;switch(this.model.orientation){case\"vertical\":t=r+a+2*h,e=o+l+s+2*h;break;case\"horizontal\":t=r+a+l+s+2*h,e=o+2*h;break;default:throw new Error(\"unreachable code\")}return{width:e,height:t}},t.prototype.compute_legend_location=function(){var t,e,i=this.compute_legend_dimensions(),n=[i.height,i.width],r=n[0],o=n[1],s=this.model.margin,a=null!=this.model.panel?this.model.panel:this.plot_view.frame,l=a.bbox.ranges,h=l[0],u=l[1],c=this.model.location;if(f.isString(c))switch(c){case\"top_left\":t=h.start+s,e=u.start+s;break;case\"top_center\":t=(h.end+h.start)/2-o/2,e=u.start+s;break;case\"top_right\":t=h.end-s-o,e=u.start+s;break;case\"bottom_right\":t=h.end-s-o,e=u.end-s-r;break;case\"bottom_center\":t=(h.end+h.start)/2-o/2,e=u.end-s-r;break;case\"bottom_left\":t=h.start+s,e=u.end-s-r;break;case\"center_left\":t=h.start+s,e=(u.end+u.start)/2-r/2;break;case\"center\":t=(h.end+h.start)/2-o/2,e=(u.end+u.start)/2-r/2;break;case\"center_right\":t=h.end-s-o,e=(u.end+u.start)/2-r/2;break;default:throw new Error(\"unreachable code\")}else{if(!f.isArray(c)||2!=c.length)throw new Error(\"unreachable code\");var _=c[0],p=c[1];t=a.xview.compute(_),e=a.yview.compute(p)-r}return{sx:t,sy:e}},t.prototype.render=function(){if(this.model.visible&&null!=this.model.color_mapper){var t=this.plot_view.canvas_view.ctx;t.save();var e=this.compute_legend_location(),i=e.sx,n=e.sy;t.translate(i,n),this._draw_bbox(t);var r=this._get_image_offset();if(t.translate(r.x,r.y),this._draw_image(t),null!=this.model.color_mapper.low&&null!=this.model.color_mapper.high){var o=this.model.tick_info();this._draw_major_ticks(t,o),this._draw_minor_ticks(t,o),this._draw_major_labels(t,o)}this.model.title&&this._draw_title(t),t.restore()}},t.prototype._draw_bbox=function(t){var e=this.compute_legend_dimensions();t.save(),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(0,0,e.width,e.height)),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()},t.prototype._draw_image=function(t){var e=this.model._computed_image_dimensions();t.save(),t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.scale_alpha,t.drawImage(this.image,0,0,e.width,e.height),this.visuals.bar_line.doit&&(this.visuals.bar_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()},t.prototype._draw_major_ticks=function(t,e){if(this.visuals.major_tick_line.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=e.coords.major,u=h[0],c=h[1],_=this.model.major_tick_in,p=this.model.major_tick_out;t.save(),t.translate(a,l),this.visuals.major_tick_line.set_value(t);for(var d=0,f=u.length;d<f;d++)t.beginPath(),t.moveTo(Math.round(u[d]+n*p),Math.round(c[d]+r*p)),t.lineTo(Math.round(u[d]-n*_),Math.round(c[d]-r*_)),t.stroke();t.restore()}},t.prototype._draw_minor_ticks=function(t,e){if(this.visuals.minor_tick_line.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=e.coords.minor,u=h[0],c=h[1],_=this.model.minor_tick_in,p=this.model.minor_tick_out;t.save(),t.translate(a,l),this.visuals.minor_tick_line.set_value(t);for(var d=0,f=u.length;d<f;d++)t.beginPath(),t.moveTo(Math.round(u[d]+n*p),Math.round(c[d]+r*p)),t.lineTo(Math.round(u[d]-n*_),Math.round(c[d]-r*_)),t.stroke();t.restore()}},t.prototype._draw_major_labels=function(t,e){if(this.visuals.major_label_text.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=this.model.label_standoff+this.model._tick_extent(),u=[h*n,h*r],c=u[0],_=u[1],p=e.coords.major,d=p[0],f=p[1],v=e.labels.major;this.visuals.major_label_text.set_value(t),t.save(),t.translate(a+c,l+_);for(var m=0,g=d.length;m<g;m++)t.fillText(v[m],Math.round(d[m]+n*this.model.label_standoff),Math.round(f[m]+r*this.model.label_standoff));t.restore()}},t.prototype._draw_title=function(t){this.visuals.title_text.doit&&(t.save(),this.visuals.title_text.set_value(t),t.fillText(this.model.title,0,-this.model.title_standoff),t.restore())},t.prototype._get_label_extent=function(){var t,e=this.model.tick_info().labels.major;if(null==this.model.color_mapper.low||null==this.model.color_mapper.high||d.isEmpty(e))t=0;else{var i=this.plot_view.canvas_view.ctx;switch(i.save(),this.visuals.major_label_text.set_value(i),this.model.orientation){case\"vertical\":t=p.max(e.map(function(t){return i.measureText(t.toString()).width}));break;case\"horizontal\":t=_.get_text_height(this.visuals.major_label_text.font_value()).height;break;default:throw new Error(\"unreachable code\")}t+=this.model.label_standoff,i.restore()}return t},t.prototype._get_image_offset=function(){var t=this.model.padding,e=this.model.padding+this.model._title_extent();return{x:t,y:e}},t}(r.AnnotationView);i.ColorBarView=v;var m=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ColorBar\",this.prototype.default_view=v,this.mixins([\"text:major_label_\",\"text:title_\",\"line:major_tick_\",\"line:minor_tick_\",\"line:border_\",\"line:bar_\",\"fill:background_\"]),this.define({location:[c.Any,\"top_right\"],orientation:[c.Orientation,\"vertical\"],title:[c.String],title_standoff:[c.Number,2],width:[c.Any,\"auto\"],height:[c.Any,\"auto\"],scale_alpha:[c.Number,1],ticker:[c.Instance,function(){return new o.BasicTicker}],formatter:[c.Instance,function(){return new s.BasicTickFormatter}],major_label_overrides:[c.Any,{}],color_mapper:[c.Instance],label_standoff:[c.Number,5],margin:[c.Number,30],padding:[c.Number,10],major_tick_in:[c.Number,5],major_tick_out:[c.Number,0],minor_tick_in:[c.Number,0],minor_tick_out:[c.Number,0]}),this.override({background_fill_color:\"#ffffff\",background_fill_alpha:.95,bar_line_color:null,border_line_color:null,major_label_text_align:\"center\",major_label_text_baseline:\"middle\",major_label_text_font_size:\"8pt\",major_tick_line_color:\"#ffffff\",minor_tick_line_color:null,title_text_font_size:\"10pt\",title_text_font_style:\"italic\"})},t.prototype._normals=function(){return\"vertical\"==this.orientation?[1,0]:[0,1]},t.prototype._title_extent=function(){var t=this.title_text_font+\" \"+this.title_text_font_size+\" \"+this.title_text_font_style,e=this.title?_.get_text_height(t).height+this.title_standoff:0;return e},t.prototype._tick_extent=function(){return null!=this.color_mapper.low&&null!=this.color_mapper.high?p.max([this.major_tick_out,this.minor_tick_out]):0},t.prototype._computed_image_dimensions=function(){var t,e,i=this.plot.plot_canvas.frame._height.value,n=this.plot.plot_canvas.frame._width.value,r=this._title_extent();switch(this.orientation){case\"vertical\":\"auto\"==this.height?null!=this.panel?t=i-2*this.padding-r:(t=p.max([25*this.color_mapper.palette.length,.3*i]),t=p.min([t,.8*i-2*this.padding-r])):t=this.height,e=\"auto\"==this.width?25:this.width;break;case\"horizontal\":t=\"auto\"==this.height?25:this.height,\"auto\"==this.width?null!=this.panel?e=n-2*this.padding:(e=p.max([25*this.color_mapper.palette.length,.3*n]),e=p.min([e,.8*n-2*this.padding])):e=this.width;break;default:throw new Error(\"unreachable code\")}return{width:e,height:t}},t.prototype._tick_coordinate_scale=function(t){var e={source_range:new h.Range1d({start:this.color_mapper.low,end:this.color_mapper.high}),target_range:new h.Range1d({start:0,end:t})};switch(this.color_mapper.type){case\"LinearColorMapper\":return new a.LinearScale(e);case\"LogColorMapper\":return new l.LogScale(e);default:throw new Error(\"unreachable code\")}},t.prototype._format_major_labels=function(t,e){for(var i=this.formatter.doFormat(t,null),n=0,r=e.length;n<r;n++)e[n]in this.major_label_overrides&&(i[n]=this.major_label_overrides[e[n]]);return i},t.prototype.tick_info=function(){var e,t=this._computed_image_dimensions();switch(this.orientation){case\"vertical\":e=t.height;break;case\"horizontal\":e=t.width;break;default:throw new Error(\"unreachable code\")}for(var i=this._tick_coordinate_scale(e),n=this._normals(),r=n[0],o=n[1],s=[this.color_mapper.low,this.color_mapper.high],a=s[0],l=s[1],h=this.ticker.get_ticks(a,l,null,null,this.ticker.desired_num_ticks),u=h.major,c=h.minor,_=[[],[]],p=[[],[]],d=0,f=u.length;d<f;d++)u[d]<a||u[d]>l||(_[r].push(u[d]),_[o].push(0));for(var d=0,f=c.length;d<f;d++)c[d]<a||c[d]>l||(p[r].push(c[d]),p[o].push(0));var v={major:this._format_major_labels(_[r],u)},m={major:[[],[]],minor:[[],[]]};return m.major[r]=i.v_compute(_[r]),m.minor[r]=i.v_compute(p[r]),m.major[o]=_[o],m.minor[o]=p[o],\"vertical\"==this.orientation&&(m.major[r]=g.map(m.major[r],function(t){return e-t}),m.minor[r]=g.map(m.minor[r],function(t){return e-t})),{coords:m,labels:v}},t}(r.Annotation);(i.ColorBar=m).initClass()},function(t,e,i){var n=t(60);i.Annotation=n.Annotation;var r=t(61);i.Arrow=r.Arrow;var o=t(62);i.ArrowHead=o.ArrowHead;var s=t(62);i.OpenHead=s.OpenHead;var a=t(62);i.NormalHead=a.NormalHead;var l=t(62);i.TeeHead=l.TeeHead;var h=t(62);i.VeeHead=h.VeeHead;var u=t(63);i.Band=u.Band;var c=t(64);i.BoxAnnotation=c.BoxAnnotation;var _=t(65);i.ColorBar=_.ColorBar;var p=t(67);i.Label=p.Label;var d=t(68);i.LabelSet=d.LabelSet;var f=t(69);i.Legend=f.Legend;var v=t(70);i.LegendItem=v.LegendItem;var m=t(71);i.PolyAnnotation=m.PolyAnnotation;var g=t(72);i.Slope=g.Slope;var y=t(73);i.Span=y.Span;var b=t(74);i.TextAnnotation=b.TextAnnotation;var x=t(75);i.Title=x.Title;var w=t(76);i.ToolbarPanel=w.ToolbarPanel;var k=t(77);i.Tooltip=k.Tooltip;var S=t(78);i.Whisker=S.Whisker},function(t,e,i){var n=t(391),r=t(74),a=t(5),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.visuals.warm_cache()},t.prototype._get_size=function(){var t=this.plot_view.canvas_view.ctx;if(this.visuals.text.set_value(t),this.model.panel.is_horizontal){var e=t.measureText(this.model.text).ascent;return e}var i=t.measureText(this.model.text).width;return i},t.prototype.render=function(){if(this.model.visible||\"css\"!=this.model.render_mode||a.hide(this.el),this.model.visible){var t;switch(this.model.angle_units){case\"rad\":t=-this.model.angle;break;case\"deg\":t=-this.model.angle*Math.PI/180;break;default:throw new Error(\"unreachable code\")}var e=null!=this.model.panel?this.model.panel:this.plot_view.frame,i=this.plot_view.frame.xscales[this.model.x_range_name],n=this.plot_view.frame.yscales[this.model.y_range_name],r=\"data\"==this.model.x_units?i.compute(this.model.x):e.xview.compute(this.model.x),o=\"data\"==this.model.y_units?n.compute(this.model.y):e.yview.compute(this.model.y);r+=this.model.x_offset,o-=this.model.y_offset;var s=\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this);s(this.plot_view.canvas_view.ctx,this.model.text,r,o,t)}},t}(r.TextAnnotationView);i.LabelView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Label\",this.prototype.default_view=s,this.mixins([\"text\",\"line:border_\",\"fill:background_\"]),this.define({x:[o.Number],x_units:[o.SpatialUnits,\"data\"],y:[o.Number],y_units:[o.SpatialUnits,\"data\"],text:[o.String],angle:[o.Angle,0],angle_units:[o.AngleUnits,\"rad\"],x_offset:[o.Number,0],y_offset:[o.Number,0],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({background_fill_color:null,border_line_color:null})},t}(r.TextAnnotation);(i.Label=l).initClass()},function(t,e,i){var n=t(391),r=t(74),o=t(200),u=t(5),s=t(15),a=function(r){function t(){return null!==r&&r.apply(this,arguments)||this}return n.__extends(t,r),t.prototype.initialize=function(t){if(r.prototype.initialize.call(this,t),this.set_data(this.model.source),\"css\"==this.model.render_mode)for(var e=0,i=this._text.length;e<i;e++){var n=u.div({class:\"bk-annotation-child\",style:{display:\"none\"}});this.el.appendChild(n)}},t.prototype.connect_signals=function(){var t=this;r.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?(this.connect(this.model.change,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.streaming,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.patching,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.change,function(){t.set_data(t.model.source),t.render()})):(this.connect(this.model.change,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.streaming,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.patching,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.change,function(){t.set_data(t.model.source),t.plot_view.request_render()}))},t.prototype.set_data=function(t){r.prototype.set_data.call(this,t),this.visuals.warm_cache(t)},t.prototype._map_data=function(){var t=this.plot_view.frame.xscales[this.model.x_range_name],e=this.plot_view.frame.yscales[this.model.y_range_name],i=null!=this.model.panel?this.model.panel:this.plot_view.frame,n=\"data\"==this.model.x_units?t.v_compute(this._x):i.xview.v_compute(this._x),r=\"data\"==this.model.y_units?e.v_compute(this._y):i.yview.v_compute(this._y);return[n,r]},t.prototype.render=function(){if(this.model.visible||\"css\"!=this.model.render_mode||u.hide(this.el),this.model.visible)for(var t=\"canvas\"==this.model.render_mode?this._v_canvas_text.bind(this):this._v_css_text.bind(this),e=this.plot_view.canvas_view.ctx,i=this._map_data(),n=i[0],r=i[1],o=0,s=this._text.length;o<s;o++)t(e,o,this._text[o],n[o]+this._x_offset[o],r[o]-this._y_offset[o],this._angle[o])},t.prototype._get_size=function(){var t=this.plot_view.canvas_view.ctx;switch(this.visuals.text.set_value(t),this.model.panel.side){case\"above\":case\"below\":var e=t.measureText(this._text[0]).ascent;return e;case\"left\":case\"right\":var i=t.measureText(this._text[0]).width;return i;default:throw new Error(\"unreachable code\")}},t.prototype._v_canvas_text=function(t,e,i,n,r,o){this.visuals.text.set_vectorize(t,e);var s=this._calculate_bounding_box_dimensions(t,i);t.save(),t.beginPath(),t.translate(n,r),t.rotate(o),t.rect(s[0],s[1],s[2],s[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(i,0,0)),t.restore()},t.prototype._v_css_text=function(t,e,i,n,r,o){var s=this.el.children[e];s.textContent=i,this.visuals.text.set_vectorize(t,e);var a=this._calculate_bounding_box_dimensions(t,i),l=this.visuals.border_line.line_dash.value(),h=l.length<2?\"solid\":\"dashed\";this.visuals.border_line.set_vectorize(t,e),this.visuals.background_fill.set_vectorize(t,e),s.style.position=\"absolute\",s.style.left=n+a[0]+\"px\",s.style.top=r+a[1]+\"px\",s.style.color=\"\"+this.visuals.text.text_color.value(),s.style.opacity=\"\"+this.visuals.text.text_alpha.value(),s.style.font=\"\"+this.visuals.text.font_value(),s.style.lineHeight=\"normal\",o&&(s.style.transform=\"rotate(\"+o+\"rad)\"),this.visuals.background_fill.doit&&(s.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(s.style.borderStyle=\"\"+h,s.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",s.style.borderColor=\"\"+this.visuals.border_line.color_value()),u.show(s)},t}(r.TextAnnotationView);i.LabelSetView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LabelSet\",this.prototype.default_view=a,this.mixins([\"text\",\"line:border_\",\"fill:background_\"]),this.define({x:[s.NumberSpec],y:[s.NumberSpec],x_units:[s.SpatialUnits,\"data\"],y_units:[s.SpatialUnits,\"data\"],text:[s.StringSpec,{field:\"text\"}],angle:[s.AngleSpec,0],x_offset:[s.NumberSpec,{value:0}],y_offset:[s.NumberSpec,{value:0}],source:[s.Instance,function(){return new o.ColumnDataSource}],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.override({background_fill_color:null,border_line_color:null})},t}(r.TextAnnotation);(i.LabelSet=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(15),s=t(19),M=t(41),O=t(24),z=t(21),P=t(32),j=t(44),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.cursor=function(t,e){return\"none\"==this.model.click_policy?null:\"pointer\"},Object.defineProperty(t.prototype,\"legend_padding\",{get:function(){return null!=this.visuals.border_line.line_color.value()?this.model.padding:0},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.item_change,function(){return t.plot_view.request_render()})},t.prototype.compute_legend_bbox=function(){var t=this.model.get_legend_names(),e=this.model,i=e.glyph_height,n=e.glyph_width,r=this.model,o=r.label_height,s=r.label_width;this.max_label_height=z.max([M.get_text_height(this.visuals.label_text.font_value()).height,o,i]);var a=this.plot_view.canvas_view.ctx;a.save(),this.visuals.label_text.set_value(a),this.text_widths={};for(var l=0,h=t;l<h.length;l++){var u=h[l];this.text_widths[u]=z.max([a.measureText(u).width,s])}a.restore();var c,_,p=Math.max(z.max(P.values(this.text_widths)),0),d=this.model.margin,f=this.legend_padding,v=this.model.spacing,m=this.model.label_standoff;if(\"vertical\"==this.model.orientation)c=t.length*this.max_label_height+Math.max(t.length-1,0)*v+2*f,_=p+n+m+2*f;else{for(var g in _=2*f+Math.max(t.length-1,0)*v,this.text_widths){var y=this.text_widths[g];_+=z.max([y,s])+n+m}c=this.max_label_height+2*f}var b,x,w=null!=this.model.panel?this.model.panel:this.plot_view.frame,k=w.bbox.ranges,S=k[0],C=k[1],T=this.model.location;if(j.isString(T))switch(T){case\"top_left\":b=S.start+d,x=C.start+d;break;case\"top_center\":b=(S.end+S.start)/2-_/2,x=C.start+d;break;case\"top_right\":b=S.end-d-_,x=C.start+d;break;case\"bottom_right\":b=S.end-d-_,x=C.end-d-c;break;case\"bottom_center\":b=(S.end+S.start)/2-_/2,x=C.end-d-c;break;case\"bottom_left\":b=S.start+d,x=C.end-d-c;break;case\"center_left\":b=S.start+d,x=(C.end+C.start)/2-c/2;break;case\"center\":b=(S.end+S.start)/2-_/2,x=(C.end+C.start)/2-c/2;break;case\"center_right\":b=S.end-d-_,x=(C.end+C.start)/2-c/2;break;default:throw new Error(\"unreachable code\")}else{if(!j.isArray(T)||2!=T.length)throw new Error(\"unreachable code\");var A=T[0],E=T[1];b=w.xview.compute(A),x=w.yview.compute(E)-c}return{x:b,y:x,width:_,height:c}},t.prototype.interactive_bbox=function(){var t=this.compute_legend_bbox(),e=t.x,i=t.y,n=t.width,r=t.height;return new O.BBox({x:e,y:i,width:n,height:r})},t.prototype.interactive_hit=function(t,e){var i=this.interactive_bbox();return i.contains(t,e)},t.prototype.on_hit=function(t,e){for(var i,n,r,o=this.model.glyph_width,s=this.legend_padding,a=this.model.spacing,l=this.model.label_standoff,h=r=s,u=this.compute_legend_bbox(),c=\"vertical\"==this.model.orientation,_=0,p=this.model.items;_<p.length;_++)for(var d=p[_],f=d.get_labels_list_from_label_prop(),v=0,m=f;v<m.length;v++){var g=m[v],y=u.x+h,b=u.y+r,x=void 0,w=void 0;c?(i=[u.width-2*s,this.max_label_height],x=i[0],w=i[1]):(n=[this.text_widths[g]+o+l,this.max_label_height],x=n[0],w=n[1]);var k=new O.BBox({x:y,y:b,width:x,height:w});if(k.contains(t,e)){switch(this.model.click_policy){case\"hide\":for(var S=0,C=d.renderers;S<C.length;S++){var T=C[S];T.visible=!T.visible}break;case\"mute\":for(var A=0,E=d.renderers;A<E.length;A++){var T=E[A];T.muted=!T.muted}}return!0}c?r+=this.max_label_height+a:h+=this.text_widths[g]+o+l+a}return!1},t.prototype.render=function(){if(this.model.visible&&0!=this.model.items.length){for(var t=0,e=this.model.items;t<e.length;t++){var i=e[t];i.legend=this.model}var n=this.plot_view.canvas_view.ctx,r=this.compute_legend_bbox();n.save(),this._draw_legend_box(n,r),this._draw_legend_items(n,r),n.restore()}},t.prototype._draw_legend_box=function(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())},t.prototype._draw_legend_items=function(y,b){for(var x=this,t=this.model,w=t.glyph_width,k=t.glyph_height,S=this.legend_padding,C=this.model.spacing,T=this.model.label_standoff,A=S,E=S,M=\"vertical\"==this.model.orientation,e=function(t){var e,i,n=t.get_labels_list_from_label_prop(),r=t.get_field_from_label_prop();if(0==n.length)return\"continue\";for(var o=function(){switch(x.model.click_policy){case\"none\":return!0;case\"hide\":return z.all(t.renderers,function(t){return t.visible});case\"mute\":return z.all(t.renderers,function(t){return!t.muted})}}(),s=0,a=n;s<a.length;s++){var l=a[s],h=b.x+A,u=b.y+E,c=h+w,_=u+k;M?E+=O.max_label_height+C:A+=O.text_widths[l]+w+T+C,O.visuals.label_text.set_value(y),y.fillText(l,c+T,u+O.max_label_height/2);for(var p=0,d=t.renderers;p<d.length;p++){var f=d[p],v=O.plot_view.renderer_views[f.id];v.draw_legend(y,h,c,u,_,r,l,t.index)}if(!o){var m=void 0,g=void 0;M?(e=[b.width-2*S,O.max_label_height],m=e[0],g=e[1]):(i=[O.text_widths[l]+w+T,O.max_label_height],m=i[0],g=i[1]),y.beginPath(),y.rect(h,u,m,g),O.visuals.inactive_fill.set_value(y),y.fill()}}},O=this,i=0,n=this.model.items;i<n.length;i++){var r=n[i];e(r)}},t.prototype._get_size=function(){var t=this.compute_legend_bbox();switch(this.model.panel.side){case\"above\":case\"below\":return t.height+2*this.model.margin;case\"left\":case\"right\":return t.width+2*this.model.margin}},t}(r.AnnotationView);i.LegendView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.initialize=function(){e.prototype.initialize.call(this),this.item_change=new s.Signal0(this,\"item_change\")},t.initClass=function(){this.prototype.type=\"Legend\",this.prototype.default_view=a,this.mixins([\"text:label_\",\"fill:inactive_\",\"line:border_\",\"fill:background_\"]),this.define({orientation:[o.Orientation,\"vertical\"],location:[o.Any,\"top_right\"],label_standoff:[o.Number,5],glyph_height:[o.Number,20],glyph_width:[o.Number,20],label_height:[o.Number,20],label_width:[o.Number,20],margin:[o.Number,10],padding:[o.Number,10],spacing:[o.Number,3],items:[o.Array,[]],click_policy:[o.Any,\"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:\"10pt\",label_text_baseline:\"middle\"})},t.prototype.get_legend_names=function(){for(var t=[],e=0,i=this.items;e<i.length;e++){var n=i[e],r=n.get_labels_list_from_label_prop();t.push.apply(t,r)}return t},t}(r.Annotation);(i.Legend=l).initClass()},function(t,e,i){var r=t(391),n=t(59),o=t(201),s=t(47),a=t(15),l=t(14),h=t(21),u=function(n){function t(t){return n.call(this,t)||this}return r.__extends(t,n),t.initClass=function(){this.prototype.type=\"LegendItem\",this.define({label:[a.StringSpec,null],renderers:[a.Array,[]],index:[a.Number,null]})},t.prototype._check_data_sources_on_renderers=function(){var t=this.get_field_from_label_prop();if(null!=t){if(this.renderers.length<1)return!1;var e=this.renderers[0].data_source;if(null!=e)for(var i=0,n=this.renderers;i<n.length;i++){var r=n[i];if(r.data_source!=e)return!1}}return!0},t.prototype._check_field_label_on_data_source=function(){var t=this.get_field_from_label_prop();if(null!=t){if(this.renderers.length<1)return!1;var e=this.renderers[0].data_source;if(null!=e&&!h.includes(e.columns(),t))return!1}return!0},t.prototype.initialize=function(){var t=this;n.prototype.initialize.call(this),this.legend=null,this.connect(this.change,function(){null!=t.legend&&t.legend.item_change.emit()});var e=this._check_data_sources_on_renderers();e||l.logger.error(\"Non matching data sources on legend item renderers\");var i=this._check_field_label_on_data_source();i||l.logger.error(\"Bad column name on label: \"+this.label)},t.prototype.get_field_from_label_prop=function(){var t=this.label;return s.isField(t)?t.field:null},t.prototype.get_labels_list_from_label_prop=function(){if(s.isValue(this.label))return[this.label.value];var t=this.get_field_from_label_prop();if(null!=t){var e=void 0;if(!this.renderers[0]||null==this.renderers[0].data_source)return[\"No source found\"];if((e=this.renderers[0].data_source)instanceof o.ColumnarDataSource){var i=e.get_column(t);return null!=i?h.uniq(Array.from(i)):[\"Invalid field\"]}}return[]},t}(n.Model);(i.LegendItem=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(19),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.data_update,function(){return t.plot_view.request_render()})},t.prototype.render=function(){if(this.model.visible){var t=this.model,e=t.xs,i=t.ys;if(e.length==i.length&&!(e.length<3||i.length<3)){for(var n=this.plot_view.frame,r=this.plot_view.canvas_view.ctx,o=0,s=e.length;o<s;o++){var a=void 0;if(\"screen\"!=this.model.xs_units)throw new Error(\"not implemented\");a=this.model.screen?e[o]:n.xview.compute(e[o]);var l=void 0;if(\"screen\"!=this.model.ys_units)throw new Error(\"not implemented\");l=this.model.screen?i[o]:n.yview.compute(i[o]),0==o?(r.beginPath(),r.moveTo(a,l)):r.lineTo(a,l)}r.closePath(),this.visuals.line.doit&&(this.visuals.line.set_value(r),r.stroke()),this.visuals.fill.doit&&(this.visuals.fill.set_value(r),r.fill())}}},t}(r.AnnotationView);i.PolyAnnotationView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PolyAnnotation\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({xs:[s.Array,[]],xs_units:[s.SpatialUnits,\"data\"],ys:[s.Array,[]],ys_units:[s.SpatialUnits,\"data\"],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.internal({screen:[s.Boolean,!1]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.data_update=new o.Signal0(this,\"data_update\")},t.prototype.update=function(t){var e=t.xs,i=t.ys;this.setv({xs:e,ys:i,screen:!0},{silent:!0}),this.data_update.emit()},t}(r.Annotation);(i.PolyAnnotation=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype.render=function(){this.model.visible&&this._draw_slope()},t.prototype._draw_slope=function(){var t=this.model.gradient,e=this.model.y_intercept;if(null!=t&&null!=e){var i=this.plot_view.frame,n=i.xscales[this.model.x_range_name],r=i.yscales[this.model.y_range_name],o=i._top.value,s=o+i._height.value,a=r.invert(o),l=r.invert(s),h=(a-e)/t,u=(l-e)/t,c=n.compute(h),_=n.compute(u),p=this.plot_view.canvas_view.ctx;p.save(),p.beginPath(),this.visuals.line.set_value(p),p.moveTo(c,o),p.lineTo(_,s),p.stroke(),p.restore()}},t}(r.AnnotationView);i.SlopeView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Slope\",this.prototype.default_view=s,this.mixins([\"line\"]),this.define({gradient:[o.Number,null],y_intercept:[o.Number,null],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({line_color:\"black\"})},t}(r.Annotation);(i.Slope=a).initClass()},function(t,e,i){var n=t(391),r=t(60),c=t(5),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),this.el.style.position=\"absolute\",c.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.model.for_hover?this.connect(this.model.properties.computed_location.change,function(){return t._draw_span()}):\"canvas\"==this.model.render_mode?(this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.properties.location.change,function(){return t.plot_view.request_render()})):(this.connect(this.model.change,function(){return t.render()}),this.connect(this.model.properties.location.change,function(){return t._draw_span()}))},t.prototype.render=function(){this.model.visible||\"css\"!=this.model.render_mode||c.hide(this.el),this.model.visible&&this._draw_span()},t.prototype._draw_span=function(){var i=this,n=this.model.for_hover?this.model.computed_location:this.model.location;if(null!=n){var t,e,r,o,s=this.plot_view.frame,a=s.xscales[this.model.x_range_name],l=s.yscales[this.model.y_range_name],h=function(t,e){return i.model.for_hover?i.model.computed_location:\"data\"==i.model.location_units?t.compute(n):e.compute(n)};if(\"width\"==this.model.dimension?(r=h(l,s.yview),e=s._left.value,o=s._width.value,t=this.model.properties.line_width.value()):(r=s._top.value,e=h(a,s.xview),o=this.model.properties.line_width.value(),t=s._height.value),\"css\"==this.model.render_mode)this.el.style.top=r+\"px\",this.el.style.left=e+\"px\",this.el.style.width=o+\"px\",this.el.style.height=t+\"px\",this.el.style.backgroundColor=this.model.properties.line_color.value(),this.el.style.opacity=this.model.properties.line_alpha.value(),c.show(this.el);else if(\"canvas\"==this.model.render_mode){var u=this.plot_view.canvas_view.ctx;u.save(),u.beginPath(),this.visuals.line.set_value(u),u.moveTo(e,r),\"width\"==this.model.dimension?u.lineTo(e+o,r):u.lineTo(e,r+t),u.stroke(),u.restore()}}else c.hide(this.el)},t}(r.AnnotationView);i.SpanView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Span\",this.prototype.default_view=s,this.mixins([\"line\"]),this.define({render_mode:[o.RenderMode,\"canvas\"],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"],location:[o.Number,null],location_units:[o.SpatialUnits,\"data\"],dimension:[o.Dimension,\"width\"]}),this.override({line_color:\"black\"}),this.internal({for_hover:[o.Boolean,!1],computed_location:[o.Number,null]})},t}(r.Annotation);(i.Span=a).initClass()},function(t,e,i){var n=t(391),r=t(60),l=t(5),o=t(15),s=t(41),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),\"css\"==this.model.render_mode&&(this.el.classList.add(\"bk-annotation\"),this.plot_view.canvas_overlays.appendChild(this.el))},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?this.connect(this.model.change,function(){return t.render()}):this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype._calculate_text_dimensions=function(t,e){var i=t.measureText(e).width,n=s.get_text_height(this.visuals.text.font_value()).height;return[i,n]},t.prototype._calculate_bounding_box_dimensions=function(t,e){var i,n,r=this._calculate_text_dimensions(t,e),o=r[0],s=r[1];switch(t.textAlign){case\"left\":i=0;break;case\"center\":i=-o/2;break;case\"right\":i=-o;break;default:throw new Error(\"unreachable code\")}switch(t.textBaseline){case\"top\":n=0;break;case\"middle\":n=-.5*s;break;case\"bottom\":n=-1*s;break;case\"alphabetic\":n=-.8*s;break;case\"hanging\":n=-.17*s;break;case\"ideographic\":n=-.83*s;break;default:throw new Error(\"unreachable code\")}return[i,n,o,s]},t.prototype._canvas_text=function(t,e,i,n,r){this.visuals.text.set_value(t);var o=this._calculate_bounding_box_dimensions(t,e);t.save(),t.beginPath(),t.translate(i,n),r&&t.rotate(r),t.rect(o[0],o[1],o[2],o[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.stroke()),this.visuals.text.doit&&(this.visuals.text.set_value(t),t.fillText(e,0,0)),t.restore()},t.prototype._css_text=function(t,e,i,n,r){l.hide(this.el),this.visuals.text.set_value(t);var o=this._calculate_bounding_box_dimensions(t,e),s=this.visuals.border_line.line_dash.value(),a=s.length<2?\"solid\":\"dashed\";this.visuals.border_line.set_value(t),this.visuals.background_fill.set_value(t),this.el.style.position=\"absolute\",this.el.style.left=i+o[0]+\"px\",this.el.style.top=n+o[1]+\"px\",this.el.style.color=\"\"+this.visuals.text.text_color.value(),this.el.style.opacity=\"\"+this.visuals.text.text_alpha.value(),this.el.style.font=\"\"+this.visuals.text.font_value(),this.el.style.lineHeight=\"normal\",r&&(this.el.style.transform=\"rotate(\"+r+\"rad)\"),this.visuals.background_fill.doit&&(this.el.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(this.el.style.borderStyle=\"\"+a,this.el.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",this.el.style.borderColor=\"\"+this.visuals.border_line.color_value()),this.el.textContent=e,l.show(this.el)},t}(r.AnnotationView);i.TextAnnotationView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextAnnotation\",this.define({render_mode:[o.RenderMode,\"canvas\"]})},t}(r.Annotation);(i.TextAnnotation=h).initClass()},function(t,e,i){var n=t(391),r=t(74),s=t(5),o=t(15),a=t(49),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.visuals.text=new a.Text(this.model)},t.prototype._get_location=function(){var t,e,i=this.model.panel,n=this.model.offset;switch(i.side){case\"above\":case\"below\":switch(this.model.vertical_align){case\"top\":e=i._top.value+5;break;case\"middle\":e=i._vcenter.value;break;case\"bottom\":e=i._bottom.value-5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":t=i._left.value+n;break;case\"center\":t=i._hcenter.value;break;case\"right\":t=i._right.value-n;break;default:throw new Error(\"unreachable code\")}break;case\"left\":switch(this.model.vertical_align){case\"top\":t=i._left.value-5;break;case\"middle\":t=i._hcenter.value;break;case\"bottom\":t=i._right.value+5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":e=i._bottom.value-n;break;case\"center\":e=i._vcenter.value;break;case\"right\":e=i._top.value+n;break;default:throw new Error(\"unreachable code\")}break;case\"right\":switch(this.model.vertical_align){case\"top\":t=i._right.value-5;break;case\"middle\":t=i._hcenter.value;break;case\"bottom\":t=i._left.value+5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":e=i._top.value+n;break;case\"center\":e=i._vcenter.value;break;case\"right\":e=i._bottom.value-n;break;default:throw new Error(\"unreachable code\")}break;default:throw new Error(\"unreachable code\")}return[t,e]},t.prototype.render=function(){if(this.model.visible){var t=this.model.text;if(null!=t&&0!=t.length){this.model.text_baseline=this.model.vertical_align,this.model.text_align=this.model.align;var e=this._get_location(),i=e[0],n=e[1],r=this.model.panel.get_label_angle_heuristic(\"parallel\"),o=\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this);o(this.plot_view.canvas_view.ctx,t,i,n,r)}}else\"css\"==this.model.render_mode&&s.hide(this.el)},t.prototype._get_size=function(){var t=this.model.text;if(null==t||0==t.length)return 0;var e=this.plot_view.canvas_view.ctx;return this.visuals.text.set_value(e),e.measureText(t).ascent+10},t}(r.TextAnnotationView);i.TitleView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Title\",this.prototype.default_view=l,this.mixins([\"line:border_\",\"fill:background_\"]),this.define({text:[o.String],text_font:[o.Font,\"helvetica\"],text_font_size:[o.FontSizeSpec,\"10pt\"],text_font_style:[o.FontStyle,\"bold\"],text_color:[o.ColorSpec,\"#444444\"],text_alpha:[o.NumberSpec,1],vertical_align:[o.VerticalAlign,\"bottom\"],align:[o.TextAlign,\"left\"],offset:[o.Number,0]}),this.override({background_fill_color:null,border_line_color:null}),this.internal({text_align:[o.TextAlign,\"left\"],text_baseline:[o.TextBaseline,\"bottom\"]})},t}(r.TextAnnotation);(i.Title=h).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(4),s=t(5),a=t(15),l=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){i.prototype.initialize.call(this,t),this.plot_view.canvas_events.appendChild(this.el),this._toolbar_views={},o.build_views(this._toolbar_views,[this.model.toolbar],{parent:this});var e=this._toolbar_views[this.model.toolbar.id];this.plot_view.visibility_callbacks.push(function(t){return e.set_visibility(t)})},t.prototype.remove=function(){o.remove_views(this._toolbar_views),i.prototype.remove.call(this)},t.prototype.render=function(){if(i.prototype.render.call(this),this.model.visible){var t=this.model.panel;this.el.style.position=\"absolute\",this.el.style.left=t._left.value+\"px\",this.el.style.top=t._top.value+\"px\",this.el.style.width=t._width.value+\"px\",this.el.style.height=t._height.value+\"px\",this.el.style.overflow=\"hidden\";var e=this._toolbar_views[this.model.toolbar.id];e.render(),s.empty(this.el),this.el.appendChild(e.el),s.show(this.el)}else s.hide(this.el)},t.prototype._get_size=function(){return 30},t}(r.AnnotationView);i.ToolbarPanelView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarPanel\",this.prototype.default_view=l,this.define({toolbar:[a.Instance]})},t}(r.Annotation);(i.ToolbarPanel=h).initClass()},function(t,e,i){var n=t(391),r=t(60),f=t(5),o=t(15);function v(t,e,i,n,r){var o;switch(t){case\"horizontal\":o=e<n?\"right\":\"left\";break;case\"vertical\":o=i<r?\"below\":\"above\";break;default:o=t}return o}i.compute_side=v;var s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),f.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.data.change,function(){return t._draw_tips()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-tooltip\")},t.prototype.render=function(){this.model.visible&&this._draw_tips()},t.prototype._draw_tips=function(){var t=this.model.data;if(f.empty(this.el),f.hide(this.el),this.model.custom?this.el.classList.add(\"bk-tooltip-custom\"):this.el.classList.remove(\"bk-tooltip-custom\"),0!=t.length){for(var e=this.plot_view.frame,i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[1],a=r[2];if(!this.model.inner_only||e.bbox.contains(o,s)){var l=f.div({},a);this.el.appendChild(l)}}var h,u,c=t[t.length-1],_=c[0],p=c[1],d=v(this.model.attachment,_,p,e._hcenter.value,e._vcenter.value);switch(this.el.classList.remove(\"bk-right\"),this.el.classList.remove(\"bk-left\"),this.el.classList.remove(\"bk-above\"),this.el.classList.remove(\"bk-below\"),f.show(this.el),d){case\"right\":this.el.classList.add(\"bk-left\"),h=_+(this.el.offsetWidth-this.el.clientWidth)+10,u=p-this.el.offsetHeight/2;break;case\"left\":this.el.classList.add(\"bk-right\"),h=_-this.el.offsetWidth-10,u=p-this.el.offsetHeight/2;break;case\"below\":this.el.classList.add(\"bk-above\"),u=p+(this.el.offsetHeight-this.el.clientHeight)+10,h=Math.round(_-this.el.offsetWidth/2);break;case\"above\":this.el.classList.add(\"bk-below\"),u=p-this.el.offsetHeight-10,h=Math.round(_-this.el.offsetWidth/2);break;default:throw new Error(\"unreachable code\")}this.model.show_arrow&&this.el.classList.add(\"bk-tooltip-arrow\"),0<this.el.childNodes.length?(this.el.style.top=u+\"px\",this.el.style.left=h+\"px\"):f.hide(this.el)}},t}(r.AnnotationView);i.TooltipView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tooltip\",this.prototype.default_view=s,this.define({attachment:[o.String,\"horizontal\"],inner_only:[o.Bool,!0],show_arrow:[o.Bool,!0]}),this.override({level:\"overlay\"}),this.internal({data:[o.Any,[]],custom:[o.Any]})},t.prototype.clear=function(){this.data=[]},t.prototype.add=function(t,e,i){this.data=this.data.concat([[t,e,i]])},t}(r.Annotation);(i.Tooltip=a).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(200),s=t(62),a=t(15),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n=this.plot_model.frame,r=this.model.dimension,o=n.xscales[this.model.x_range_name],s=n.yscales[this.model.y_range_name],a=\"height\"==r?s:o,l=\"height\"==r?o:s,h=\"height\"==r?n.yview:n.xview,u=\"height\"==r?n.xview:n.yview;t=\"data\"==this.model.lower.units?a.v_compute(this._lower):h.v_compute(this._lower),e=\"data\"==this.model.upper.units?a.v_compute(this._upper):h.v_compute(this._upper),i=\"data\"==this.model.base.units?l.v_compute(this._base):u.v_compute(this._base);var c=\"height\"==r?[1,0]:[0,1],_=c[0],p=c[1],d=[t,i],f=[e,i];this._lower_sx=d[_],this._lower_sy=d[p],this._upper_sx=f[_],this._upper_sy=f[p]},t.prototype.render=function(){if(this.model.visible){this._map_data();var t=this.plot_view.canvas_view.ctx;if(this.visuals.line.doit)for(var e=0,i=this._lower_sx.length;e<i;e++)this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(this._lower_sx[e],this._lower_sy[e]),t.lineTo(this._upper_sx[e],this._upper_sy[e]),t.stroke();var n=\"height\"==this.model.dimension?0:Math.PI/2;if(null!=this.model.lower_head)for(var e=0,i=this._lower_sx.length;e<i;e++)t.save(),t.translate(this._lower_sx[e],this._lower_sy[e]),t.rotate(n+Math.PI),this.model.lower_head.render(t,e),t.restore();if(null!=this.model.upper_head)for(var e=0,i=this._upper_sx.length;e<i;e++)t.save(),t.translate(this._upper_sx[e],this._upper_sy[e]),t.rotate(n),this.model.upper_head.render(t,e),t.restore()}},t}(r.AnnotationView);i.WhiskerView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Whisker\",this.prototype.default_view=l,this.mixins([\"line\"]),this.define({lower:[a.DistanceSpec],lower_head:[a.Instance,function(){return new s.TeeHead({level:\"underlay\",size:10})}],upper:[a.DistanceSpec],upper_head:[a.Instance,function(){return new s.TeeHead({level:\"underlay\",size:10})}],base:[a.DistanceSpec],dimension:[a.Dimension,\"height\"],source:[a.Instance,function(){return new o.ColumnDataSource}],x_range_name:[a.String,\"default\"],y_range_name:[a.String,\"default\"]}),this.override({level:\"underlay\"})},t}(r.Annotation);(i.Whisker=h).initClass()},function(t,e,i){var n=t(391),r=t(187),o=t(15),s=t(12),l=t(21),T=t(44),a=t(181),h=Math.abs,u=Math.min,c=Math.max,_=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.render=function(){if(this.model.visible){var t={tick:this._tick_extent(),tick_label:this._tick_label_extents(),axis_label:this._axis_label_extent()},e=this.model.tick_coords,i=this.plot_view.canvas_view.ctx;i.save(),this._draw_rule(i,t),this._draw_major_ticks(i,t,e),this._draw_minor_ticks(i,t,e),this._draw_major_labels(i,t,e),this._draw_axis_label(i,t,e),null!=this._render&&this._render(i,t,e),i.restore()}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype.get_size=function(){return this.model.visible?Math.round(this._get_size()):0},t.prototype._get_size=function(){return null!=this.model.fixed_location?0:this._tick_extent()+this._tick_label_extent()+this._axis_label_extent()},Object.defineProperty(t.prototype,\"needs_clip\",{get:function(){return null!=this.model.fixed_location},enumerable:!0,configurable:!0}),t.prototype._draw_rule=function(t,e){if(this.visuals.axis_line.doit){var i=this.model.rule_coords,n=i[0],r=i[1],o=this.plot_view.map_to_screen(n,r,this.model.x_range_name,this.model.y_range_name),s=o[0],a=o[1],l=this.model.normals,h=l[0],u=l[1],c=this.model.offsets,_=c[0],p=c[1];this.visuals.axis_line.set_value(t),t.beginPath(),t.moveTo(Math.round(s[0]+h*_),Math.round(a[0]+u*p));for(var d=1;d<s.length;d++){var f=Math.round(s[d]+h*_),v=Math.round(a[d]+u*p);t.lineTo(f,v)}t.stroke()}},t.prototype._draw_major_ticks=function(t,e,i){var n=this.model.major_tick_in,r=this.model.major_tick_out,o=this.visuals.major_tick_line;this._draw_ticks(t,i.major,n,r,o)},t.prototype._draw_minor_ticks=function(t,e,i){var n=this.model.minor_tick_in,r=this.model.minor_tick_out,o=this.visuals.minor_tick_line;this._draw_ticks(t,i.minor,n,r,o)},t.prototype._draw_major_labels=function(t,e,i){var n=i.major,r=this.model.compute_labels(n[this.model.dimension]),o=this.model.major_label_orientation,s=e.tick+this.model.major_label_standoff,a=this.visuals.major_label_text;this._draw_oriented_labels(t,r,n,o,this.model.panel.side,s,a)},t.prototype._draw_axis_label=function(t,e,i){if(null!=this.model.axis_label&&0!=this.model.axis_label.length&&null==this.model.fixed_location){var n,r;switch(this.model.panel.side){case\"above\":n=this.model.panel._hcenter.value,r=this.model.panel._bottom.value;break;case\"below\":n=this.model.panel._hcenter.value,r=this.model.panel._top.value;break;case\"left\":n=this.model.panel._right.value,r=this.model.panel._vcenter.value;break;case\"right\":n=this.model.panel._left.value,r=this.model.panel._vcenter.value;break;default:throw new Error(\"unknown side: \"+this.model.panel.side)}var o=[[n],[r]],s=e.tick+l.sum(e.tick_label)+this.model.axis_label_standoff,a=this.visuals.axis_label_text;this._draw_oriented_labels(t,[this.model.axis_label],o,\"parallel\",this.model.panel.side,s,a,\"screen\")}},t.prototype._draw_ticks=function(t,e,i,n,r){if(r.doit){var o=e[0],s=e[1],a=this.plot_view.map_to_screen(o,s,this.model.x_range_name,this.model.y_range_name),l=a[0],h=a[1],u=this.model.normals,c=u[0],_=u[1],p=this.model.offsets,d=p[0],f=p[1],v=[c*(d-i),_*(f-i)],m=v[0],g=v[1],y=[c*(d+n),_*(f+n)],b=y[0],x=y[1];r.set_value(t);for(var w=0;w<l.length;w++){var k=Math.round(l[w]+b),S=Math.round(h[w]+x),C=Math.round(l[w]+m),T=Math.round(h[w]+g);t.beginPath(),t.moveTo(k,S),t.lineTo(C,T),t.stroke()}}},t.prototype._draw_oriented_labels=function(t,e,i,n,r,o,s,a){var l,h,u;if(void 0===a&&(a=\"data\"),s.doit&&0!=e.length){var c,_,p,d;if(\"screen\"==a)c=i[0],_=i[1],p=(l=[0,0])[0],d=l[1];else{var f=i[0],v=i[1];h=this.plot_view.map_to_screen(f,v,this.model.x_range_name,this.model.y_range_name),c=h[0],_=h[1],u=this.model.offsets,p=u[0],d=u[1]}var m,g=this.model.normals,y=g[0],b=g[1],x=y*(p+o),w=b*(d+o);s.set_value(t),this.model.panel.apply_label_text_heuristics(t,n),m=T.isString(n)?this.model.panel.get_label_angle_heuristic(n):-n;for(var k=0;k<c.length;k++){var S=Math.round(c[k]+x),C=Math.round(_[k]+w);t.translate(S,C),t.rotate(m),t.fillText(e[k],0,0),t.rotate(-m),t.translate(-S,-C)}}},t.prototype._axis_label_extent=function(){if(null==this.model.axis_label||\"\"==this.model.axis_label)return 0;var t=this.model.axis_label_standoff,e=this.visuals.axis_label_text;return this._oriented_labels_extent([this.model.axis_label],\"parallel\",this.model.panel.side,t,e)},t.prototype._tick_extent=function(){return this.model.major_tick_out},t.prototype._tick_label_extent=function(){return l.sum(this._tick_label_extents())},t.prototype._tick_label_extents=function(){var t=this.model.tick_coords.major,e=this.model.compute_labels(t[this.model.dimension]),i=this.model.major_label_orientation,n=this.model.major_label_standoff,r=this.visuals.major_label_text;return[this._oriented_labels_extent(e,i,this.model.panel.side,n,r)]},t.prototype._oriented_labels_extent=function(t,e,i,n,r){if(0==t.length)return 0;var o,s,a=this.plot_view.canvas_view.ctx;r.set_value(a),T.isString(e)?(o=1,s=this.model.panel.get_label_angle_heuristic(e)):(o=2,s=-e),s=Math.abs(s);for(var l=Math.cos(s),h=Math.sin(s),u=0,c=0;c<t.length;c++){var _=1.1*a.measureText(t[c]).width,p=.9*a.measureText(t[c]).ascent,d=void 0;u<(d=\"above\"==i||\"below\"==i?_*h+p/o*l:_*l+p/o*h)&&(u=d)}return 0<u&&(u+=n),u},t}(r.GuideRendererView);i.AxisView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Axis\",this.prototype.default_view=_,this.mixins([\"line:axis_\",\"line:major_tick_\",\"line:minor_tick_\",\"text:major_label_\",\"text:axis_label_\"]),this.define({bounds:[o.Any,\"auto\"],ticker:[o.Instance,null],formatter:[o.Instance,null],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"],axis_label:[o.String,\"\"],axis_label_standoff:[o.Int,5],major_label_standoff:[o.Int,5],major_label_orientation:[o.Any,\"horizontal\"],major_label_overrides:[o.Any,{}],major_tick_in:[o.Number,2],major_tick_out:[o.Number,6],minor_tick_in:[o.Number,0],minor_tick_out:[o.Number,4],fixed_location:[o.Any,null]}),this.override({axis_line_color:\"black\",major_tick_line_color:\"black\",minor_tick_line_color:\"black\",major_label_text_font_size:\"8pt\",major_label_text_align:\"center\",major_label_text_baseline:\"alphabetic\",axis_label_text_font_size:\"10pt\",axis_label_text_font_style:\"italic\"})},t.prototype.add_panel=function(t){this.panel=new s.SidePanel({side:t}),this.panel.attach_document(this.document)},Object.defineProperty(t.prototype,\"normals\",{get:function(){return this.panel.normals},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"dimension\",{get:function(){return this.panel.dimension},enumerable:!0,configurable:!0}),t.prototype.compute_labels=function(t){for(var e=this.formatter.doFormat(t,this),i=0;i<t.length;i++)t[i]in this.major_label_overrides&&(e[i]=this.major_label_overrides[t[i]]);return e},Object.defineProperty(t.prototype,\"offsets\",{get:function(){var t=this.plot.plot_canvas.frame,e=[0,0],i=e[0],n=e[1];switch(this.panel.side){case\"below\":n=h(this.panel._top.value-t._bottom.value);break;case\"above\":n=h(this.panel._bottom.value-t._top.value);break;case\"right\":i=h(this.panel._left.value-t._right.value);break;case\"left\":i=h(this.panel._right.value-t._left.value)}return[i,n]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"ranges\",{get:function(){var t=this.dimension,e=(t+1)%2,i=this.plot.plot_canvas.frame,n=[i.x_ranges[this.x_range_name],i.y_ranges[this.y_range_name]];return[n[t],n[e]]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_bounds\",{get:function(){var t=this.ranges[0],e=this.bounds,i=[t.min,t.max];if(\"auto\"==e)return[t.min,t.max];if(T.isArray(e)){var n=void 0,r=void 0,o=e[0],s=e[1],a=i[0],l=i[1];return h(o-s)>h(a-l)?(n=c(u(o,s),a),r=u(c(o,s),l)):(n=u(o,s),r=c(o,s)),[n,r]}throw new Error(\"user bounds '\"+e+\"' not understood\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"rule_coords\",{get:function(){var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=new Array(2),a=new Array(2),l=[s,a];return l[t][0]=Math.max(r,i.min),l[t][1]=Math.min(o,i.max),l[t][0]>l[t][1]&&(l[t][0]=l[t][1]=NaN),l[e][0]=this.loc,l[e][1]=this.loc,l},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tick_coords\",{get:function(){for(var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=this.ticker.get_ticks(r,o,i,this.loc,{}),a=s.major,l=s.minor,h=[[],[]],u=[[],[]],c=[i.min,i.max],_=c[0],p=c[1],d=0;d<a.length;d++)a[d]<_||a[d]>p||(h[t].push(a[d]),h[e].push(this.loc));for(var d=0;d<l.length;d++)l[d]<_||l[d]>p||(u[t].push(l[d]),u[e].push(this.loc));return{major:h,minor:u}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"loc\",{get:function(){if(null!=this.fixed_location){if(T.isNumber(this.fixed_location))return this.fixed_location;var t=this.ranges,e=t[1];if(e instanceof a.FactorRange)return e.synthetic(this.fixed_location);throw new Error(\"unexpected\")}var i=this.ranges,n=i[1];switch(this.panel.side){case\"left\":case\"below\":return n.start;case\"right\":case\"above\":return n.end}},enumerable:!0,configurable:!0}),t}(r.GuideRenderer);(i.Axis=p).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(208),s=t(105),a=t(15),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){this._draw_group_separators(t,e,i)},e.prototype._draw_group_separators=function(t,e,i){var n,r=this.model.ranges[0],o=this.model.computed_bounds,s=o[0],a=o[1];if(r.tops&&!(r.tops.length<2)&&this.visuals.separator_line.doit){for(var l=this.model.dimension,h=(l+1)%2,u=[[],[]],c=0,_=0;_<r.tops.length-1;_++){for(var p=void 0,d=void 0,f=c;f<r.factors.length;f++)if(r.factors[f][0]==r.tops[_+1]){n=[r.factors[f-1],r.factors[f]],p=n[0],d=n[1],c=f;break}var v=(r.synthetic(p)+r.synthetic(d))/2;s<v&&v<a&&(u[l].push(v),u[h].push(this.model.loc))}var m=this._tick_label_extent();this._draw_ticks(t,u,-3,m-6,this.visuals.separator_line)}},e.prototype._draw_major_labels=function(t,e,i){for(var n=this._get_factor_info(),r=e.tick+this.model.major_label_standoff,o=0;o<n.length;o++){var s=n[o],a=s[0],l=s[1],h=s[2],u=s[3];this._draw_oriented_labels(t,a,l,h,this.model.panel.side,r,u),r+=e.tick_label[o]}},e.prototype._tick_label_extents=function(){for(var t=this._get_factor_info(),e=[],i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[2],a=r[3],l=this._oriented_labels_extent(o,s,this.model.panel.side,this.model.major_label_standoff,a);e.push(l)}return e},e.prototype._get_factor_info=function(){var t=this.model.ranges[0],e=this.model.computed_bounds,i=e[0],n=e[1],r=this.model.loc,o=this.model.ticker.get_ticks(i,n,t,r,{}),s=this.model.tick_coords,a=[];if(1==t.levels){var l=this.model.formatter.doFormat(o.major,this.model);a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text])}else if(2==t.levels){var l=this.model.formatter.doFormat(o.major.map(function(t){return t[1]}),this.model);a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([o.tops,s.tops,this.model.group_label_orientation,this.visuals.group_text])}else if(3==t.levels){var l=this.model.formatter.doFormat(o.major.map(function(t){return t[2]}),this.model),h=o.mids.map(function(t){return t[1]});a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([h,s.mids,this.model.subgroup_label_orientation,this.visuals.subgroup_text]),a.push([o.tops,s.tops,this.model.group_label_orientation,this.visuals.group_text])}return a},e}(r.AxisView);i.CategoricalAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalAxis\",this.prototype.default_view=l,this.mixins([\"line:separator_\",\"text:group_\",\"text:subgroup_\"]),this.define({group_label_orientation:[a.Any,\"parallel\"],subgroup_label_orientation:[a.Any,\"parallel\"]}),this.override({ticker:function(){return new o.CategoricalTicker},formatter:function(){return new s.CategoricalTickFormatter},separator_line_color:\"lightgrey\",separator_line_width:2,group_text_font_style:\"bold\",group_text_font_size:\"8pt\",group_text_color:\"grey\",subgroup_text_font_style:\"bold\",subgroup_text_font_size:\"8pt\"})},Object.defineProperty(t.prototype,\"tick_coords\",{get:function(){var e=this,t=this.dimension,i=(t+1)%2,n=this.ranges[0],r=this.computed_bounds,o=r[0],s=r[1],a=this.ticker.get_ticks(o,s,n,this.loc,{}),l={major:[[],[]],mids:[[],[]],tops:[[],[]],minor:[[],[]]};return l.major[t]=a.major,l.major[i]=a.major.map(function(t){return e.loc}),3==n.levels&&(l.mids[t]=a.mids),l.mids[i]=a.mids.map(function(t){return e.loc}),1<n.levels&&(l.tops[t]=a.tops),l.tops[i]=a.tops.map(function(t){return e.loc}),l},enumerable:!0,configurable:!0}),t}(r.Axis);(i.CategoricalAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousAxis\"},t}(r.Axis);(i.ContinuousAxis=o).initClass()},function(t,e,i){var n=t(391),r=t(84),o=t(106),s=t(211),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.LinearAxisView);i.DatetimeAxisView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatetimeAxis\",this.prototype.default_view=a,this.override({ticker:function(){return new s.DatetimeTicker},formatter:function(){return new o.DatetimeTickFormatter}})},t}(r.LinearAxis);(i.DatetimeAxis=l).initClass()},function(t,e,i){var n=t(79);i.Axis=n.Axis;var r=t(80);i.CategoricalAxis=r.CategoricalAxis;var o=t(81);i.ContinuousAxis=o.ContinuousAxis;var s=t(82);i.DatetimeAxis=s.DatetimeAxis;var a=t(84);i.LinearAxis=a.LinearAxis;var l=t(85);i.LogAxis=l.LogAxis;var h=t(86);i.MercatorAxis=h.MercatorAxis},function(t,e,i){var n=t(391),r=t(79),o=t(81),s=t(104),a=t(207),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LinearAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.BasicTicker},formatter:function(){return new s.BasicTickFormatter}})},t}(o.ContinuousAxis);(i.LinearAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(81),s=t(109),a=t(215),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LogAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.LogTicker},formatter:function(){return new s.LogTickFormatter}})},t}(o.ContinuousAxis);(i.LogAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(84),s=t(110),a=t(216),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.MercatorAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MercatorAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.MercatorTicker({dimension:\"lat\"})},formatter:function(){return new s.MercatorTickFormatter({dimension:\"lat\"})}})},t}(o.LinearAxis);(i.MercatorAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Callback\"},t}(r.Model);(i.Callback=o).initClass()},function(i,t,e){var n=i(391),r=i(87),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJS\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"cb_obj\",\"cb_data\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),t.prototype.execute=function(t,e){return this.func.apply(t,this.values.concat(t,e,i,{}))},t}(r.Callback);(e.CustomJS=l).initClass()},function(t,e,i){var n=t(88);i.CustomJS=n.CustomJS;var r=t(90);i.OpenURL=r.OpenURL},function(t,e,i){var n=t(391),r=t(87),o=t(15),s=t(35),a=t(40),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"OpenURL\",this.define({url:[o.String,\"http://\"]})},t.prototype.execute=function(t,e){for(var i=0,n=s.get_indices(e.source);i<n.length;i++){var r=n[i],o=a.replace_placeholders(this.url,e.source,r);window.open(o)}return null},t}(r.Callback);(i.OpenURL=l).initClass()},function(t,e,i){var n=t(391),r=t(11),o=t(6),s=t(13),a=t(14),l=t(15),h=t(5),u=t(26);null!=window.CanvasPixelArray&&(window.CanvasPixelArray.prototype.set=function(t){for(var e=0;e<this.length;e++)this[e]=t[e]});var c=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),Object.defineProperty(t.prototype,\"ctx\",{get:function(){return this._ctx},enumerable:!0,configurable:!0}),t.prototype.initialize=function(t){switch(i.prototype.initialize.call(this,t),this.map_el=this.model.map?this.el.appendChild(h.div({class:\"bk-canvas-map\"})):null,this.model.output_backend){case\"canvas\":case\"webgl\":this.canvas_el=this.el.appendChild(h.canvas({class:\"bk-canvas\"}));var e=this.canvas_el.getContext(\"2d\");if(null==e)throw new Error(\"unable to obtain 2D rendering context\");this._ctx=e;break;case\"svg\":var e=new u.SVGRenderingContext2D;this._ctx=e,this.canvas_el=this.el.appendChild(e.getSvg())}this.overlays_el=this.el.appendChild(h.div({class:\"bk-canvas-overlays\"})),this.events_el=this.el.appendChild(h.div({class:\"bk-canvas-events\"})),u.fixup_ctx(this._ctx),a.logger.debug(\"CanvasView initialized\")},t.prototype.css_classes=function(){return i.prototype.css_classes.call(this).concat(\"bk-canvas-wrapper\")},t.prototype.get_canvas_element=function(){return this.canvas_el},t.prototype.prepare_canvas=function(){var t=this.model._width.value,e=this.model._height.value;this.el.style.width=t+\"px\",this.el.style.height=e+\"px\";var i=u.get_scale_ratio(this.ctx,this.model.use_hidpi,this.model.output_backend);this.model.pixel_ratio=i,this.canvas_el.style.width=t+\"px\",this.canvas_el.style.height=e+\"px\",this.canvas_el.setAttribute(\"width\",\"\"+t*i),this.canvas_el.setAttribute(\"height\",\"\"+e*i),a.logger.debug(\"Rendering CanvasView with width: \"+t+\", height: \"+e+\", pixel ratio: \"+i)},t.prototype.set_dims=function(t){var e=t[0],i=t[1];e<=0||i<=0||(e!=this.model._width.value&&(null!=this._width_constraint&&this.solver.has_constraint(this._width_constraint)&&this.solver.remove_constraint(this._width_constraint),this._width_constraint=s.EQ(this.model._width,-e),this.solver.add_constraint(this._width_constraint)),i!=this.model._height.value&&(null!=this._height_constraint&&this.solver.has_constraint(this._height_constraint)&&this.solver.remove_constraint(this._height_constraint),this._height_constraint=s.EQ(this.model._height,-i),this.solver.add_constraint(this._height_constraint)),this.solver.update_variables())},t}(o.DOMView);i.CanvasView=c;var _=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Canvas\",this.prototype.default_view=c,this.internal({map:[l.Boolean,!1],use_hidpi:[l.Boolean,!0],pixel_ratio:[l.Number,1],output_backend:[l.OutputBackend,\"canvas\"]})},Object.defineProperty(t.prototype,\"panel\",{get:function(){return this},enumerable:!0,configurable:!0}),t}(r.LayoutCanvas);(i.Canvas=_).initClass()},function(t,e,i){var n=t(391),a=t(190),l=t(192),h=t(193),u=t(184),c=t(180),_=t(181),r=t(11),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CartesianFrame\",this.internal({extra_x_ranges:[o.Any,{}],extra_y_ranges:[o.Any,{}],x_range:[o.Instance],y_range:[o.Instance],x_scale:[o.Instance],y_scale:[o.Instance]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._configure_scales()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._configure_scales()})},Object.defineProperty(t.prototype,\"panel\",{get:function(){return this},enumerable:!0,configurable:!0}),t.prototype.get_editables=function(){return e.prototype.get_editables.call(this).concat([this._width,this._height])},t.prototype.map_to_screen=function(t,e,i,n){void 0===i&&(i=\"default\"),void 0===n&&(n=\"default\");var r=this.xscales[i].v_compute(t),o=this.yscales[n].v_compute(e);return[r,o]},t.prototype._get_ranges=function(t,e){var i={};if(i.default=t,null!=e)for(var n in e)i[n]=e[n];return i},t.prototype._get_scales=function(t,e,i){var n={};for(var r in e){var o=e[r];if(o instanceof c.DataRange1d||o instanceof u.Range1d){if(!(t instanceof h.LogScale||t instanceof l.LinearScale))throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type);if(t instanceof a.CategoricalScale)throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type)}if(o instanceof _.FactorRange&&!(t instanceof a.CategoricalScale))throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type);t instanceof h.LogScale&&o instanceof c.DataRange1d&&(o.scale_hint=\"log\");var s=t.clone();s.setv({source_range:o,target_range:i}),n[r]=s}return n},t.prototype._configure_frame_ranges=function(){this._h_target=new u.Range1d({start:this._left.value,end:this._right.value}),this._v_target=new u.Range1d({start:this._bottom.value,end:this._top.value})},t.prototype._configure_scales=function(){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._xscales=this._get_scales(this.x_scale,this._x_ranges,this._h_target),this._yscales=this._get_scales(this.y_scale,this._y_ranges,this._v_target)},t.prototype.update_scales=function(){for(var t in this._configure_frame_ranges(),this._xscales){var e=this._xscales[t];e.target_range=this._h_target}for(var i in this._yscales){var e=this._yscales[i];e.target_range=this._v_target}},Object.defineProperty(t.prototype,\"x_ranges\",{get:function(){return this._x_ranges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"y_ranges\",{get:function(){return this._y_ranges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"xscales\",{get:function(){return this._xscales},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"yscales\",{get:function(){return this._yscales},enumerable:!0,configurable:!0}),t}(r.LayoutCanvas);(i.CartesianFrame=s).initClass()},function(t,e,i){var n=t(91);i.Canvas=n.Canvas;var r=t(92);i.CartesianFrame=r.CartesianFrame},function(t,e,i){var n=t(391),r=t(95),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CumSum\",this.define({field:[o.String],include_zero:[o.Boolean,!1]})},t.prototype._v_compute=function(t){var e=new Float64Array(t.get_length()||0),i=t.data[this.field],n=this.include_zero?1:0;e[0]=this.include_zero?0:i[0];for(var r=1;r<e.length;r++)e[r]=e[r-1]+i[r-n];return e},t}(r.Expression);(i.CumSum=s).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(i){function t(t){var e=i.call(this,t)||this;return e._connected={},e._result={},e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Expression\"},t.prototype.initialize=function(){i.prototype.initialize.call(this),this._connected={},this._result={}},t.prototype.v_compute=function(t){var e=this;null==this._connected[t.id]&&(this.connect(t.change,function(){return delete e._result[t.id]}),this.connect(t.patching,function(){return delete e._result[t.id]}),this.connect(t.streaming,function(){return delete e._result[t.id]}),this._connected[t.id]=!0);var i=this._result[t.id];return null==i&&(this._result[t.id]=i=this._v_compute(t)),i},t}(r.Model);(i.Expression=o).initClass()},function(t,e,i){var n=t(95);i.Expression=n.Expression;var r=t(97);i.Stack=r.Stack;var o=t(94);i.CumSum=o.CumSum},function(t,e,i){var n=t(391),r=t(95),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Stack\",this.define({fields:[o.Array,[]]})},t.prototype._v_compute=function(t){for(var e=new Float64Array(t.get_length()||0),i=0,n=this.fields;i<n.length;i++)for(var r=n[i],o=0;o<t.data[r].length;o++){var s=t.data[r][o];e[o]+=s}return e},t}(r.Expression);(i.Stack=s).initClass()},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(21),l=t(44),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BooleanFilter\",this.define({booleans:[o.Array,null]})},t.prototype.compute_indices=function(t){var e=this.booleans;return null!=e&&0<e.length?a.all(e,l.isBoolean)?(e.length!==t.get_length()&&s.logger.warn(\"BooleanFilter \"+this.id+\": length of booleans doesn't match data source\"),a.range(0,e.length).filter(function(t){return!0===e[t]})):(s.logger.warn(\"BooleanFilter \"+this.id+\": booleans should be array of booleans, defaulting to no filtering\"),null):(null!=e&&0==e.length?s.logger.warn(\"BooleanFilter \"+this.id+\": booleans is empty, defaulting to no filtering\"):s.logger.warn(\"BooleanFilter \"+this.id+\": booleans was not set, defaulting to no filtering\"),null)},t}(r.Filter);(i.BooleanFilter=h).initClass()},function(i,t,e){var n=i(391),r=i(100),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSFilter\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"source\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),t.prototype.compute_indices=function(t){return this.filter=this.func.apply(this,this.values.concat([t,i,{}])),e.prototype.compute_indices.call(this,t)},t}(r.Filter);(e.CustomJSFilter=l).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=t(21),l=t(14),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Filter\",this.define({filter:[o.Array,null]})},t.prototype.compute_indices=function(t){var e=this.filter;return null!=e&&0<=e.length?s.isArrayOf(e,s.isBoolean)?a.range(0,e.length).filter(function(t){return!0===e[t]}):s.isArrayOf(e,s.isInteger)?e:(l.logger.warn(\"Filter \"+this.id+\": filter should either be array of only booleans or only integers, defaulting to no filtering\"),null):(l.logger.warn(\"Filter \"+this.id+\": filter was not set to be an array, defaulting to no filtering\"),null)},t}(r.Model);(i.Filter=h).initClass()},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(21),l=function(i){function t(t){var e=i.call(this,t)||this;return e.indices=null,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"GroupFilter\",this.define({column_name:[o.String],group:[o.String]})},t.prototype.compute_indices=function(t){var e=this,i=t.get_column(this.column_name);return null==i?(s.logger.warn(\"group filter: groupby column not found in data source\"),null):(this.indices=a.range(0,t.get_length()||0).filter(function(t){return i[t]===e.group}),0===this.indices.length&&s.logger.warn(\"group filter: group '\"+this.group+\"' did not match any values in column '\"+this.column_name+\"'\"),this.indices)},t}(r.Filter);(i.GroupFilter=l).initClass()},function(t,e,i){var n=t(98);i.BooleanFilter=n.BooleanFilter;var r=t(99);i.CustomJSFilter=r.CustomJSFilter;var o=t(100);i.Filter=o.Filter;var s=t(101);i.GroupFilter=s.GroupFilter;var a=t(103);i.IndexFilter=a.IndexFilter},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(44),l=t(21),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"IndexFilter\",this.define({indices:[o.Array,null]})},t.prototype.compute_indices=function(t){return null!=this.indices&&0<=this.indices.length?l.all(this.indices,a.isInteger)?this.indices:(s.logger.warn(\"IndexFilter \"+this.id+\": indices should be array of integers, defaulting to no filtering\"),null):(s.logger.warn(\"IndexFilter \"+this.id+\": indices was not set, defaulting to no filtering\"),null)},t}(r.Filter);(i.IndexFilter=h).initClass()},function(t,e,i){var n=t(391),r=t(113),o=t(15),f=t(44),s=function(i){function t(t){var e=i.call(this,t)||this;return e.last_precision=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BasicTickFormatter\",this.define({precision:[o.Any,\"auto\"],use_scientific:[o.Bool,!0],power_limit_high:[o.Number,5],power_limit_low:[o.Number,-3]})},Object.defineProperty(t.prototype,\"scientific_limit_low\",{get:function(){return Math.pow(10,this.power_limit_low)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"scientific_limit_high\",{get:function(){return Math.pow(10,this.power_limit_high)},enumerable:!0,configurable:!0}),t.prototype.doFormat=function(t,e){if(0==t.length)return[];var i=0;2<=t.length&&(i=Math.abs(t[1]-t[0])/1e4);var n=!1;if(this.use_scientific)for(var r=0,o=t;r<o.length;r++){var s=o[r],a=Math.abs(s);if(i<a&&(a>=this.scientific_limit_high||a<=this.scientific_limit_low)){n=!0;break}}var l=new Array(t.length),h=this.precision;if(null==h||f.isNumber(h))if(n)for(var u=0,c=t.length;u<c;u++)l[u]=t[u].toExponential(h||void 0);else for(var u=0,c=t.length;u<c;u++)l[u]=t[u].toFixed(h||void 0).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\");else for(var _=this.last_precision,p=this.last_precision<=15;p?_<=15:15<=_;p?_++:_--){var d=!0;if(n){for(var u=0,c=t.length;u<c;u++)if(l[u]=t[u].toExponential(_),0<u&&l[u]===l[u-1]){d=!1;break}if(d)break}else{for(var u=0,c=t.length;u<c;u++)if(l[u]=t[u].toFixed(_).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\"),0<u&&l[u]==l[u-1]){d=!1;break}if(d)break}if(d){this.last_precision=_;break}}return l},t}(r.TickFormatter);(i.BasicTickFormatter=s).initClass()},function(t,e,i){var n=t(391),r=t(113),o=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalTickFormatter\"},t.prototype.doFormat=function(t,e){return o.copy(t)},t}(r.TickFormatter);(i.CategoricalTickFormatter=s).initClass()},function(t,e,i){var n=t(391),r=t(389),w=t(390),o=t(113),k=t(14),s=t(15),a=t(21),l=t(44);function S(t,e){if(l.isFunction(e))return e(t);var i,n=r.sprintf(\"$1%06d\",(i=t,Math.round(i/1e3%1*1e6)));return-1==(e=e.replace(/((^|[^%])(%%)*)%f/,n)).indexOf(\"%\")?e:w(t,e)}var C=[\"microseconds\",\"milliseconds\",\"seconds\",\"minsec\",\"minutes\",\"hourmin\",\"hours\",\"days\",\"months\",\"years\"],h=function(i){function t(t){var e=i.call(this,t)||this;return e.strip_leading_zeros=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DatetimeTickFormatter\",this.define({microseconds:[s.Array,[\"%fus\"]],milliseconds:[s.Array,[\"%3Nms\",\"%S.%3Ns\"]],seconds:[s.Array,[\"%Ss\"]],minsec:[s.Array,[\":%M:%S\"]],minutes:[s.Array,[\":%M\",\"%Mm\"]],hourmin:[s.Array,[\"%H:%M\"]],hours:[s.Array,[\"%Hh\",\"%H:%M\"]],days:[s.Array,[\"%m/%d\",\"%a%d\"]],months:[s.Array,[\"%m/%Y\",\"%b %Y\"]],years:[s.Array,[\"%Y\"]]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),this._update_width_formats()},t.prototype._update_width_formats=function(){var n=+w(new Date),t=function(t){var e=t.map(function(t){return S(n,t).length}),i=a.sortBy(a.zip(e,t),function(t){var e=t[0];return e});return a.unzip(i)};this._width_formats={microseconds:t(this.microseconds),milliseconds:t(this.milliseconds),seconds:t(this.seconds),minsec:t(this.minsec),minutes:t(this.minutes),hourmin:t(this.hourmin),hours:t(this.hours),days:t(this.days),months:t(this.months),years:t(this.years)}},t.prototype._get_resolution_str=function(t,e){var i=1.1*t;switch(!1){case!(i<.001):return\"microseconds\";case!(i<1):return\"milliseconds\";case!(i<60):return 60<=e?\"minsec\":\"seconds\";case!(i<3600):return 3600<=e?\"hourmin\":\"minutes\";case!(i<86400):return\"hours\";case!(i<2678400):return\"days\";case!(i<31536e3):return\"months\";default:return\"years\"}},t.prototype.doFormat=function(t,e){if(0==t.length)return[];for(var i=Math.abs(t[t.length-1]-t[0])/1e3,n=i/(t.length-1),r=this._get_resolution_str(n,i),o=this._width_formats[r],s=o[1][0],a=[],l=C.indexOf(r),h={},u=0,c=C;u<c.length;u++){var _=c[u];h[_]=0}h.seconds=5,h.minsec=4,h.minutes=4,h.hourmin=3,h.hours=3;for(var p=0,d=t;p<d.length;p++){var f=d[p],v=void 0,m=void 0;try{m=w(f,\"%Y %m %d %H %M %S\").split(/\\s+/).map(function(t){return parseInt(t,10)}),v=S(f,s)}catch(t){k.logger.warn(\"unable to format tick for timestamp value \"+f),k.logger.warn(\" - \"+t),a.push(\"ERR\");continue}for(var g=!1,y=l;0==m[h[C[y]]];){var b=void 0;if((y+=1)==C.length)break;if((\"minsec\"==r||\"hourmin\"==r)&&!g){if(\"minsec\"==r&&0==m[4]&&0!=m[5]||\"hourmin\"==r&&0==m[3]&&0!=m[4]){b=this._width_formats[C[l-1]][1][0],v=S(f,b);break}g=!0}b=this._width_formats[C[y]][1][0],v=S(f,b)}if(this.strip_leading_zeros){var x=v.replace(/^0+/g,\"\");x!=v&&isNaN(parseInt(x))&&(x=\"0\"+x),a.push(x)}else a.push(v)}return a},t}(o.TickFormatter);(i.DatetimeTickFormatter=h).initClass()},function(o,t,e){var i=o(391),n=o(113),r=o(15),s=o(32),a=o(38),l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"FuncTickFormatter\",this.define({args:[r.Any,{}],code:[r.String,\"\"],use_strict:[r.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_func=function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0,\"tick\",\"index\",\"ticks\"].concat(this.names,[\"require\",\"exports\",t])))},t.prototype.doFormat=function(t,e){var n=this,r=this._make_func().bind({});return t.map(function(t,e,i){return r.apply(void 0,[t,e,i].concat(n.values,[o,{}]))})},t}(n.TickFormatter);(e.FuncTickFormatter=l).initClass()},function(t,e,i){var n=t(104);i.BasicTickFormatter=n.BasicTickFormatter;var r=t(105);i.CategoricalTickFormatter=r.CategoricalTickFormatter;var o=t(106);i.DatetimeTickFormatter=o.DatetimeTickFormatter;var s=t(107);i.FuncTickFormatter=s.FuncTickFormatter;var a=t(109);i.LogTickFormatter=a.LogTickFormatter;var l=t(110);i.MercatorTickFormatter=l.MercatorTickFormatter;var h=t(111);i.NumeralTickFormatter=h.NumeralTickFormatter;var u=t(112);i.PrintfTickFormatter=u.PrintfTickFormatter;var c=t(113);i.TickFormatter=c.TickFormatter},function(t,e,i){var n=t(391),r=t(113),o=t(104),s=t(14),a=t(15),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogTickFormatter\",this.define({ticker:[a.Instance,null]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.basic_formatter=new o.BasicTickFormatter,null==this.ticker&&s.logger.warn(\"LogTickFormatter not configured with a ticker, using default base of 10 (labels will be incorrect if ticker base is not 10)\")},t.prototype.doFormat=function(t,e){if(0==t.length)return[];for(var i=null!=this.ticker?this.ticker.base:10,n=!1,r=new Array(t.length),o=0,s=t.length;o<s;o++)if(r[o]=i+\"^\"+Math.round(Math.log(t[o])/Math.log(i)),0<o&&r[o]==r[o-1]){n=!0;break}return n?this.basic_formatter.doFormat(t,e):r},t}(r.TickFormatter);(i.LogTickFormatter=l).initClass()},function(t,e,i){var n=t(391),r=t(104),o=t(15),h=t(33),s=function(l){function t(t){return l.call(this,t)||this}return n.__extends(t,l),t.initClass=function(){this.prototype.type=\"MercatorTickFormatter\",this.define({dimension:[o.LatLon]})},t.prototype.doFormat=function(t,e){if(null==this.dimension)throw new Error(\"MercatorTickFormatter.dimension not configured\");if(0==t.length)return[];var i=t.length,n=new Array(i);if(\"lon\"==this.dimension)for(var r=0;r<i;r++){var o=h.wgs84_mercator.inverse([t[r],e.loc])[0];n[r]=o}else for(var r=0;r<i;r++){var s=h.wgs84_mercator.inverse([e.loc,t[r]]),a=s[1];n[r]=a}return l.prototype.doFormat.call(this,n,e)},t}(r.BasicTickFormatter);(i.MercatorTickFormatter=s).initClass()},function(t,e,i){var n=t(391),o=t(361),r=t(113),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NumeralTickFormatter\",this.define({format:[s.String,\"0,0\"],language:[s.String,\"en\"],rounding:[s.String,\"round\"]})},Object.defineProperty(t.prototype,\"_rounding_fn\",{get:function(){switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}},enumerable:!0,configurable:!0}),t.prototype.doFormat=function(t,e){var i=this.format,n=this.language,r=this._rounding_fn;return t.map(function(t){return o.format(t,i,n,r)})},t}(r.TickFormatter);(i.NumeralTickFormatter=a).initClass()},function(t,e,i){var n=t(391),r=t(389),o=t(113),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PrintfTickFormatter\",this.define({format:[s.String,\"%s\"]})},t.prototype.doFormat=function(t,e){var i=this;return t.map(function(t){return r.sprintf(i.format,t)})},t}(o.TickFormatter);(i.PrintfTickFormatter=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TickFormatter\"},t}(r.Model);(i.TickFormatter=o).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),z=t(9),s=t(15),P=t(31),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=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=this._outer_radius,this._angle=new Float32Array(this._start_angle.length);for(var t=0,e=this._start_angle.length;t<e;t++)this._angle[t]=this._end_angle[t]-this._start_angle[t]},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._start_angle,s=i._angle,a=i.sinner_radius,l=i.souter_radius,h=this.model.properties.direction.value(),u=0,c=e;u<c.length;u++){var _=c[u];isNaN(n[_]+r[_]+a[_]+l[_]+o[_]+s[_])||(t.translate(n[_],r[_]),t.rotate(o[_]),t.moveTo(l[_],0),t.beginPath(),t.arc(0,0,l[_],0,s[_],h),t.rotate(s[_]),t.lineTo(a[_],0),t.arc(0,0,a[_],0,-s[_],!h),t.closePath(),t.rotate(-s[_]-o[_]),t.translate(-n[_],-r[_]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,_),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,_),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.renderer.xscale.invert(a),u=this.renderer.yscale.invert(l);if(\"data\"==this.model.properties.outer_radius.units)n=h-this.max_outer_radius,o=h+this.max_outer_radius,r=u-this.max_outer_radius,s=u+this.max_outer_radius;else{var c=a-this.max_outer_radius,_=a+this.max_outer_radius;e=this.renderer.xscale.r_invert(c,_),n=e[0],o=e[1];var p=l-this.max_outer_radius,d=l+this.max_outer_radius;i=this.renderer.yscale.r_invert(p,d),r=i[0],s=i[1]}for(var f=[],v=z.validate_bbox_coords([n,o],[r,s]),m=0,g=this.index.indices(v);m<g.length;m++){var y=g[m],b=Math.pow(this.souter_radius[y],2),x=Math.pow(this.sinner_radius[y],2),w=this.renderer.xscale.r_compute(h,this._x[y]),c=w[0],_=w[1],k=this.renderer.yscale.r_compute(u,this._y[y]),p=k[0],d=k[1],S=Math.pow(c-_,2)+Math.pow(p-d,2);S<=b&&x<=S&&f.push([y,S])}for(var C=this.model.properties.direction.value(),T=[],A=0,E=f;A<E.length;A++){var M=E[A],y=M[0],S=M[1],O=Math.atan2(l-this.sy[y],a-this.sx[y]);P.angle_between(-O,-this._start_angle[y],-this._end_angle[y],C)&&T.push([y,S])}return z.create_hit_test_result_from_hits(T)},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._scenterxy=function(t){var e=(this.sinner_radius[t]+this.souter_radius[t])/2,i=(this._start_angle[t]+this._end_angle[t])/2;return{x:this.sx[t]+e*Math.cos(i),y:this.sy[t]+e*Math.sin(i)}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.AnnularWedgeView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"AnnularWedge\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({direction:[s.Direction,\"anticlock\"],inner_radius:[s.DistanceSpec],outer_radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.AnnularWedge=l).initClass()},function(t,e,i){var n=t(391),r=t(146),C=t(9),o=t(15),p=t(28),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=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=this._outer_radius},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sinner_radius,s=i.souter_radius,a=0,l=e;a<l.length;a++){var h=l[a];if(!isNaN(n[h]+r[h]+o[h]+s[h])){if(this.visuals.fill.doit){if(this.visuals.fill.set_vectorize(t,h),t.beginPath(),p.is_ie)for(var u=0,c=[!1,!0];u<c.length;u++){var _=c[u];t.arc(n[h],r[h],o[h],0,Math.PI,_),t.arc(n[h],r[h],s[h],Math.PI,0,!_)}else t.arc(n[h],r[h],o[h],0,2*Math.PI,!0),t.arc(n[h],r[h],s[h],2*Math.PI,0,!1);t.fill()}this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,h),t.beginPath(),t.arc(n[h],r[h],o[h],0,2*Math.PI),t.moveTo(n[h]+s[h],r[h]),t.arc(n[h],r[h],s[h],0,2*Math.PI),t.stroke())}}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.renderer.xscale.invert(a),u=this.renderer.yscale.invert(l);if(\"data\"==this.model.properties.outer_radius.units)n=h-this.max_outer_radius,o=h+this.max_outer_radius,r=u-this.max_outer_radius,s=u+this.max_outer_radius;else{var c=a-this.max_outer_radius,_=a+this.max_outer_radius;e=this.renderer.xscale.r_invert(c,_),n=e[0],o=e[1];var p=l-this.max_outer_radius,d=l+this.max_outer_radius;i=this.renderer.yscale.r_invert(p,d),r=i[0],s=i[1]}for(var f=[],v=C.validate_bbox_coords([n,o],[r,s]),m=0,g=this.index.indices(v);m<g.length;m++){var y=g[m],b=Math.pow(this.souter_radius[y],2),x=Math.pow(this.sinner_radius[y],2),w=this.renderer.xscale.r_compute(h,this._x[y]),c=w[0],_=w[1],k=this.renderer.yscale.r_compute(u,this._y[y]),p=k[0],d=k[1],S=Math.pow(c-_,2)+Math.pow(p-d,2);S<=b&&x<=S&&f.push([y,S])}return C.create_hit_test_result_from_hits(f)},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=.5*Math.min(Math.abs(o-n),Math.abs(s-r)),c=new Array(a);c[i]=.4*u;var _=new Array(a);_[i]=.8*u,this._render(t,[i],{sx:l,sy:h,sinner_radius:c,souter_radius:_})},e}(r.XYGlyphView);i.AnnulusView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Annulus\",this.prototype.default_view=s,this.mixins([\"line\",\"fill\"]),this.define({inner_radius:[o.DistanceSpec],outer_radius:[o.DistanceSpec]})},t}(r.XYGlyph);(i.Annulus=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.sradius,s=i._start_angle,a=i._end_angle;if(this.visuals.line.doit)for(var l=this.model.properties.direction.value(),h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c])||(t.beginPath(),t.arc(n[c],r[c],o[c],s[c],a[c],l),this.visuals.line.set_vectorize(t,c),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.ArcView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Arc\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({direction:[s.Direction,\"anticlock\"],radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Arc=l).initClass()},function(t,e,i){var n=t(391),l=t(37),r=t(123),o=t(143);function h(t,e,i,n,r,o,s,a){for(var l=[],h=[[],[]],u=0;u<=2;u++){var c=void 0,_=void 0,p=void 0;if(0===u?(_=6*t-12*i+6*r,c=-3*t+9*i-9*r+3*s,p=3*i-3*t):(_=6*e-12*n+6*o,c=-3*e+9*n-9*o+3*a,p=3*n-3*e),Math.abs(c)<1e-12){if(Math.abs(_)<1e-12)continue;var d=-p/_;0<d&&d<1&&l.push(d)}else{var f=_*_-4*p*c,v=Math.sqrt(f);if(!(f<0)){var m=(-_+v)/(2*c);0<m&&m<1&&l.push(m);var g=(-_-v)/(2*c);0<g&&g<1&&l.push(g)}}}for(var y=l.length,b=y;y--;){var d=l[y],x=1-d,w=x*x*x*t+3*x*x*d*i+3*x*d*d*r+d*d*d*s;h[0][y]=w;var k=x*x*x*e+3*x*x*d*n+3*x*d*d*o+d*d*d*a;h[1][y]=k}return h[0][b]=t,h[1][b]=e,h[0][b+1]=s,h[1][b+1]=a,[Math.min.apply(Math,h[0]),Math.max.apply(Math,h[1]),Math.max.apply(Math,h[0]),Math.min.apply(Math,h[1])]}var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++)if(!isNaN(this._x0[e]+this._x1[e]+this._y0[e]+this._y1[e]+this._cx0[e]+this._cy0[e]+this._cx1[e]+this._cy1[e])){var n=h(this._x0[e],this._y0[e],this._x1[e],this._y1[e],this._cx0[e],this._cy0[e],this._cx1[e],this._cy1[e]),r=n[0],o=n[1],s=n[2],a=n[3];t.push({minX:r,minY:o,maxX:s,maxY:a,i:e})}return new l.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1,a=i.scx0,l=i.scy0,h=i.scx1,u=i.scy1;if(this.visuals.line.doit)for(var c=0,_=e;c<_.length;c++){var p=_[c];isNaN(n[p]+r[p]+o[p]+s[p]+a[p]+l[p]+h[p]+u[p])||(t.beginPath(),t.moveTo(n[p],r[p]),t.bezierCurveTo(a[p],l[p],h[p],u[p],o[p],s[p]),this.visuals.line.set_vectorize(t,p),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.BezierView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Bezier\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"],[\"cx0\",\"cy0\"],[\"cx1\",\"cy1\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Bezier=a).initClass()},function(t,e,i){var n=t(391),l=t(37),r=t(123),o=t(143),f=t(9),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_box=function(t){for(var e=[],i=0;i<t;i++){var n=this._lrtb(i),r=n[0],o=n[1],s=n[2],a=n[3];!isNaN(r+o+s+a)&&isFinite(r+o+s+a)&&e.push({minX:Math.min(r,o),minY:Math.min(s,a),maxX:Math.max(o,r),maxY:Math.max(s,a),i:i})}return new l.SpatialIndex(e)},e.prototype._render=function(t,e,i){for(var n=i.sleft,r=i.sright,o=i.stop,s=i.sbottom,a=0,l=e;a<l.length;a++){var h=l[a];isNaN(n[h]+o[h]+r[h]+s[h])||(this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,h),t.fillRect(n[h],o[h],r[h]-n[h],s[h]-o[h])),this.visuals.line.doit&&(t.beginPath(),t.rect(n[h],o[h],r[h]-n[h],s[h]-o[h]),this.visuals.line.set_vectorize(t,h),t.stroke()))}},e.prototype._clamp_viewport=function(){for(var t=this.renderer.plot_view.frame.bbox.h_range,e=this.renderer.plot_view.frame.bbox.v_range,i=this.stop.length,n=0;n<i;n++)this.stop[n]=Math.max(this.stop[n],e.start),this.sbottom[n]=Math.min(this.sbottom[n],e.end),this.sleft[n]=Math.max(this.sleft[n],t.start),this.sright[n]=Math.min(this.sright[n],t.end)},e.prototype._hit_rect=function(t){return this._hit_rect_against_index(t)},e.prototype._hit_point=function(t){var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=f.create_empty_hit_test_result();return s.indices=o,s},e.prototype._hit_span=function(t){var e,i=t.sx,n=t.sy;if(\"v\"==t.direction){var r=this.renderer.yscale.invert(n),o=this.renderer.plot_view.frame.bbox.h_range,s=this.renderer.xscale.r_invert(o.start,o.end),a=s[0],l=s[1];e=this.index.indices({minX:a,minY:r,maxX:l,maxY:r})}else{var h=this.renderer.xscale.invert(i),u=this.renderer.plot_view.frame.bbox.v_range,c=this.renderer.yscale.r_invert(u.start,u.end),_=c[0],p=c[1];e=this.index.indices({minX:h,minY:_,maxX:h,maxY:p})}var d=f.create_empty_hit_test_result();return d.indices=e,d},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.BoxView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Box\",this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.Box=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.XYGlyphView);i.CenterRotatableView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CenterRotatable\",this.mixins([\"line\",\"fill\"]),this.define({angle:[o.AngleSpec,0],width:[o.DistanceSpec],height:[o.DistanceSpec]})},t}(r.XYGlyph);(i.CenterRotatable=a).initClass()},function(t,e,i){var n=t(391),r=t(146),M=t(9),o=t(15),h=t(21),s=t(22),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){if(null!=this._radius)if(\"data\"==this.model.properties.radius.spec.units){var t=this.model.properties.radius_dimension.spec.value;switch(t){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\":var e=this.sdist(this.renderer.xscale,this._x,this._radius),i=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=s.map(e,function(t,e){return Math.max(t,i[e])});break;case\"min\":var e=this.sdist(this.renderer.xscale,this._x,this._radius),n=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=s.map(e,function(t,e){return Math.min(t,n[e])})}}else this.sradius=this._radius,this.max_size=2*this.max_radius;else this.sradius=s.map(this._size,function(t){return t/2})},e.prototype._mask_data=function(){var t,e,i,n,r,o,s,a,l=this.renderer.plot_view.frame.bbox.ranges,h=l[0],u=l[1];if(null!=this._radius&&\"data\"==this.model.properties.radius.units){var c=h.start,_=h.end;t=this.renderer.xscale.r_invert(c,_),r=t[0],s=t[1],r-=this.max_radius,s+=this.max_radius;var p=u.start,d=u.end;e=this.renderer.yscale.r_invert(p,d),o=e[0],a=e[1],o-=this.max_radius,a+=this.max_radius}else{var c=h.start-this.max_size,_=h.end+this.max_size;i=this.renderer.xscale.r_invert(c,_),r=i[0],s=i[1];var p=u.start-this.max_size,d=u.end+this.max_size;n=this.renderer.yscale.r_invert(p,d),o=n[0],a=n[1]}var f=M.validate_bbox_coords([r,s],[o,a]);return this.index.indices(f)},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sradius,s=0,a=e;s<a.length;s++){var l=a[s];isNaN(n[l]+r[l]+o[l])||(t.beginPath(),t.arc(n[l],r[l],o[l],0,2*Math.PI,!1),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,l),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,l),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d,f,v,m=t.sx,g=t.sy,y=this.renderer.xscale.invert(m),b=this.renderer.yscale.invert(g);null!=this._radius&&\"data\"==this.model.properties.radius.units?(p=y-this.max_radius,d=y+this.max_radius,f=b-this.max_radius,v=b+this.max_radius):(h=m-this.max_size,u=m+this.max_size,e=this.renderer.xscale.r_invert(h,u),p=e[0],d=e[1],i=[Math.min(p,d),Math.max(p,d)],p=i[0],d=i[1],c=g-this.max_size,_=g+this.max_size,n=this.renderer.yscale.r_invert(c,_),f=n[0],v=n[1],r=[Math.min(f,v),Math.max(f,v)],f=r[0],v=r[1]);var x=M.validate_bbox_coords([p,d],[f,v]),w=this.index.indices(x),k=[];if(null!=this._radius&&\"data\"==this.model.properties.radius.units)for(var S=0,C=w;S<C.length;S++){var T=C[S];l=Math.pow(this.sradius[T],2),o=this.renderer.xscale.r_compute(y,this._x[T]),h=o[0],u=o[1],s=this.renderer.yscale.r_compute(b,this._y[T]),c=s[0],_=s[1],(a=Math.pow(h-u,2)+Math.pow(c-_,2))<=l&&k.push([T,a])}else for(var A=0,E=w;A<E.length;A++){var T=E[A];l=Math.pow(this.sradius[T],2),(a=Math.pow(this.sx[T]-m,2)+Math.pow(this.sy[T]-g,2))<=l&&k.push([T,a])}return M.create_hit_test_result_from_hits(k)},e.prototype._hit_span=function(t){var e,i,n,r,o,s,a,l,h,u=t.sx,c=t.sy,_=this.bounds(),p=_.minX,d=_.minY,f=_.maxX,v=_.maxY,m=M.create_empty_hit_test_result();if(\"h\"==t.direction){var g=void 0,y=void 0;l=d,h=v,null!=this._radius&&\"data\"==this.model.properties.radius.units?(g=u-this.max_radius,y=u+this.max_radius,e=this.renderer.xscale.r_invert(g,y),s=e[0],a=e[1]):(o=this.max_size/2,g=u-o,y=u+o,i=this.renderer.xscale.r_invert(g,y),s=i[0],a=i[1])}else{var b=void 0,x=void 0;s=p,a=f,null!=this._radius&&\"data\"==this.model.properties.radius.units?(b=c-this.max_radius,x=c+this.max_radius,n=this.renderer.yscale.r_invert(b,x),l=n[0],h=n[1]):(o=this.max_size/2,b=c-o,x=c+o,r=this.renderer.yscale.r_invert(b,x),l=r[0],h=r[1])}var w=M.validate_bbox_coords([s,a],[l,h]),k=this.index.indices(w);return m.indices=k,m},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=M.validate_bbox_coords([s,a],[h,u]),_=M.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype._hit_poly=function(t){for(var e=t.sx,i=t.sy,n=h.range(0,this.sx.length),r=[],o=0,s=n.length;o<s;o++){var a=n[o];M.point_in_poly(this.sx[o],this.sy[o],e,i)&&r.push(a)}var l=M.create_empty_hit_test_result();return l.indices=r,l},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=new Array(a);u[i]=.2*Math.min(Math.abs(o-n),Math.abs(s-r)),this._render(t,[i],{sx:l,sy:h,sradius:u})},e}(r.XYGlyphView);i.CircleView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Circle\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({angle:[o.AngleSpec,0],size:[o.DistanceSpec,{units:\"screen\",value:4}],radius:[o.DistanceSpec,null],radius_dimension:[o.String,\"x\"]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.properties.radius.optional=!0},t}(r.XYGlyph);(i.Circle=l).initClass()},function(t,e,i){var n=t(391),r=t(122),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.EllipseOvalView);i.EllipseView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ellipse\",this.prototype.default_view=o},t}(r.EllipseOval);(i.Ellipse=s).initClass()},function(t,e,i){var n=t(391),r=t(119),S=t(9),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_data=function(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)},e.prototype._map_data=function(){\"data\"==this.model.properties.width.units?this.sw=this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this.sw=this._width,\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sw,s=i.sh,a=i._angle,l=0,h=e;l<h.length;l++){var u=h[l];isNaN(n[u]+r[u]+o[u]+s[u]+a[u])||(t.beginPath(),t.ellipse(n[u],r[u],o[u]/2,s[u]/2,a[u],0,2*Math.PI),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,u),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,u),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d=t.sx,f=t.sy,v=this.renderer.xscale.invert(d),m=this.renderer.yscale.invert(f);\"data\"==this.model.properties.width.units?(o=v-this.max_width,s=v+this.max_width):(u=d-this.max_width,c=d+this.max_width,e=this.renderer.xscale.r_invert(u,c),o=e[0],s=e[1]),\"data\"==this.model.properties.height.units?(a=m-this.max_height,l=m+this.max_height):(_=f-this.max_height,p=f+this.max_height,i=this.renderer.yscale.r_invert(_,p),a=i[0],l=i[1]);for(var g=S.validate_bbox_coords([o,s],[a,l]),y=this.index.indices(g),b=[],x=0,w=y;x<w.length;x++){var k=w[x];S.point_in_ellipse(d,f,this._angle[k],this.sh[k]/2,this.sw[k]/2,this.sx[k],this.sy[k])&&(n=this.renderer.xscale.r_compute(v,this._x[k]),u=n[0],c=n[1],r=this.renderer.yscale.r_compute(m,this._y[k]),_=r[0],p=r[1],h=Math.pow(u-c,2)+Math.pow(_-p,2),b.push([k,h]))}return S.create_hit_test_result_from_hits(b)},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=this.sw[i]/this.sh[i],c=.8*Math.min(Math.abs(o-n),Math.abs(s-r)),_=new Array(a),p=new Array(a);1<u?(_[i]=c,p[i]=c/u):(_[i]=c*u,p[i]=c),this._render(t,[i],{sx:l,sy:h,sw:_,sh:p,_angle:[0]})},e.prototype._bounds=function(t){var e=t.minX,i=t.maxX,n=t.minY,r=t.maxY;return{minX:e-this.max_w2,maxX:i+this.max_w2,minY:n-this.max_h2,maxY:r+this.max_h2}},e}(r.CenterRotatableView);i.EllipseOvalView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EllipseOval\"},t}(r.CenterRotatable);(i.EllipseOval=s).initClass()},function(o,t,e){var i=o(391),p=o(9),l=o(15),h=o(24),y=o(33),s=o(49),n=o(48),r=o(59),a=o(14),b=o(22),x=o(32),d=o(44),w=o(130),k=o(181),u=function(r){function t(){var t=null!==r&&r.apply(this,arguments)||this;return t._nohit_warned={},t}return i.__extends(t,r),t.prototype.initialize=function(t){r.prototype.initialize.call(this,t),this._nohit_warned={},this.renderer=t.renderer,this.visuals=new s.Visuals(this.model);var e=this.renderer.plot_view.gl;if(null!=e){var i=null;try{i=o(452)}catch(t){if(\"MODULE_NOT_FOUND\"!==t.code)throw t;a.logger.warn(\"WebGL was requested and is supported, but bokeh-gl(.min).js is not available, falling back to 2D rendering.\")}if(null!=i){var n=i[this.model.type+\"GLGlyph\"];null!=n&&(this.glglyph=new n(e.ctx,this))}}},t.prototype.set_visuals=function(t){this.visuals.warm_cache(t),null!=this.glglyph&&this.glglyph.set_visuals_changed()},t.prototype.render=function(t,e,i){t.beginPath(),null!=this.glglyph&&this.glglyph.render(t,e,i)||this._render(t,e,i)},t.prototype.has_finished=function(){return!0},t.prototype.notify_finished=function(){this.renderer.notify_finished()},t.prototype._bounds=function(t){return t},t.prototype.bounds=function(){return this._bounds(this.index.bbox)},t.prototype.log_bounds=function(){for(var t=h.empty(),e=this.index.search(h.positive_x()),i=0,n=e;i<n.length;i++){var r=n[i];r.minX<t.minX&&(t.minX=r.minX),r.maxX>t.maxX&&(t.maxX=r.maxX)}for(var o=this.index.search(h.positive_y()),s=0,a=o;s<a.length;s++){var l=a[s];l.minY<t.minY&&(t.minY=l.minY),l.maxY>t.maxY&&(t.maxY=l.maxY)}return this._bounds(t)},t.prototype.get_anchor_point=function(t,e,i){var n=i[0],r=i[1];switch(t){case\"center\":return{x:this.scenterx(e,n,r),y:this.scentery(e,n,r)};default:return null}},t.prototype.sdist=function(t,e,i,n,r){var o,s;void 0===n&&(n=\"edge\"),void 0===r&&(r=!1);var a=e.length;if(\"center\"==n){var l=b.map(i,function(t){return t/2});o=new Float64Array(a);for(var h=0;h<a;h++)o[h]=e[h]-l[h];s=new Float64Array(a);for(var h=0;h<a;h++)s[h]=e[h]+l[h]}else{o=e,s=new Float64Array(a);for(var h=0;h<a;h++)s[h]=o[h]+i[h]}var u=t.v_compute(o),c=t.v_compute(s);return r?b.map(u,function(t,e){return Math.ceil(Math.abs(c[e]-u[e]))}):b.map(u,function(t,e){return Math.abs(c[e]-u[e])})},t.prototype.draw_legend_for_index=function(t,e,i){},t.prototype.hit_test=function(t){var e=null,i=\"_hit_\"+t.type;return null!=this[i]?e=this[i](t):null==this._nohit_warned[t.type]&&(a.logger.debug(\"'\"+t.type+\"' selection not available for \"+this.model.type),this._nohit_warned[t.type]=!0),e},t.prototype._hit_rect_against_index=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=p.validate_bbox_coords([s,a],[h,u]),_=p.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},t.prototype.set_data=function(t,i,e){var n,r,o,s,a=this.model.materialize_dataspecs(t);if(this.visuals.set_all_indices(i),i&&!(this instanceof w.LineView)){var l={},h=function(t){var e=a[t];\"_\"===t.charAt(0)?l[t]=i.map(function(t){return e[t]}):l[t]=e};for(var u in a)h(u);a=l}var c=this;if(x.extend(c,a),this.renderer.plot_view.model.use_map&&(null!=c._x&&(n=y.project_xy(c._x,c._y),c._x=n[0],c._y=n[1]),null!=c._xs&&(r=y.project_xsys(c._xs,c._ys),c._xs=r[0],c._ys=r[1]),null!=c._x0&&(o=y.project_xy(c._x0,c._y0),c._x0=o[0],c._y0=o[1]),null!=c._x1&&(s=y.project_xy(c._x1,c._y1),c._x1=s[0],c._y1=s[1])),null!=this.renderer.plot_view.frame.x_ranges)for(var _=this.renderer.plot_view.frame.x_ranges[this.model.x_range_name],p=this.renderer.plot_view.frame.y_ranges[this.model.y_range_name],d=0,f=this.model._coords;d<f.length;d++){var v=f[d],m=v[0],g=v[1];m=\"_\"+m,g=\"_\"+g,null!=c._xs?(_ instanceof k.FactorRange&&(c[m]=b.map(c[m],function(t){return _.v_synthetic(t)})),p instanceof k.FactorRange&&(c[g]=b.map(c[g],function(t){return p.v_synthetic(t)}))):(_ instanceof k.FactorRange&&(c[m]=_.v_synthetic(c[m])),p instanceof k.FactorRange&&(c[g]=p.v_synthetic(c[g])))}null!=this.glglyph&&this.glglyph.set_data_changed(c._x.length),this._set_data(e),this.index_data()},t.prototype._set_data=function(t){},t.prototype.index_data=function(){this.index=this._index_data()},t.prototype.mask_data=function(t){return null!=this.glglyph||null==this._mask_data?t:this._mask_data()},t.prototype.map_data=function(){for(var t,e=this,i=0,n=this.model._coords;i<n.length;i++){var r=n[i],o=r[0],s=r[1],a=\"s\"+o,l=\"s\"+s;if(s=\"_\"+s,null!=e[o=\"_\"+o]&&(d.isArray(e[o][0])||d.isTypedArray(e[o][0]))){var h=e[o].length;e[a]=new Array(h),e[l]=new Array(h);for(var u=0;u<h;u++){var c=this.map_to_screen(e[o][u],e[s][u]),_=c[0],p=c[1];e[a][u]=_,e[l][u]=p}}else t=this.map_to_screen(e[o],e[s]),e[a]=t[0],e[l]=t[1]}this._map_data()},t.prototype._map_data=function(){},t.prototype.map_to_screen=function(t,e){return this.renderer.plot_view.map_to_screen(t,e,this.model.x_range_name,this.model.y_range_name)},t}(n.View);e.GlyphView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Glyph\",this.prototype._coords=[],this.internal({x_range_name:[l.String,\"default\"],y_range_name:[l.String,\"default\"]})},t.coords=function(t){var e=this.prototype._coords.concat(t);this.prototype._coords=e;for(var i={},n=0,r=t;n<r.length;n++){var o=r[n],s=o[0],a=o[1];i[s]=[l.NumberSpec],i[a]=[l.NumberSpec]}this.define(i)},t}(r.Model);(e.Glyph=c).initClass()},function(t,e,i){var n=t(391),r=t(118),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return(this.sleft[t]+this.sright[t])/2},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._index_data=function(){return this._index_box(this._y.length)},e.prototype._lrtb=function(t){var e=Math.min(this._left[t],this._right[t]),i=Math.max(this._left[t],this._right[t]),n=this._y[t]+.5*this._height[t],r=this._y[t]-.5*this._height[t];return[e,i,n,r]},e.prototype._map_data=function(){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);var t=this.sy.length;this.stop=new Float64Array(t),this.sbottom=new Float64Array(t);for(var 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()},e}(r.BoxView);i.HBarView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"HBar\",this.prototype.default_view=s,this.coords([[\"left\",\"y\"]]),this.define({height:[o.DistanceSpec],right:[o.NumberSpec]}),this.override({left:0})},t}(r.Box);(i.HBar=a).initClass()},function(t,e,i){var n=t(391),r=t(123),f=t(9),o=t(15),a=t(37),s=t(143),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._set_data=function(){var t=this._q.length,e=this.model.size,i=this.model.aspect_scale;if(this._x=new Float64Array(t),this._y=new Float64Array(t),\"pointytop\"==this.model.orientation)for(var n=0;n<t;n++)this._x[n]=e*Math.sqrt(3)*(this._q[n]+this._r[n]/2)/i,this._y[n]=3*-e/2*this._r[n];else for(var n=0;n<t;n++)this._x[n]=3*e/2*this._q[n],this._y[n]=-e*Math.sqrt(3)*(this._r[n]+this._q[n]/2)*i},e.prototype._index_data=function(){var t,e=this.model.size,i=Math.sqrt(3)*e/2;\"flattop\"==this.model.orientation?(i=(t=[e,i])[0],e=t[1],e*=this.model.aspect_scale):i/=this.model.aspect_scale;for(var n=[],r=0;r<this._x.length;r++){var o=this._x[r],s=this._y[r];!isNaN(o+s)&&isFinite(o+s)&&n.push({minX:o-i,minY:s-e,maxX:o+i,maxY:s+e,i:r})}return new a.SpatialIndex(n)},e.prototype.map_data=function(){var t,e;t=this.map_to_screen(this._x,this._y),this.sx=t[0],this.sy=t[1],e=this._get_unscaled_vertices(),this.svx=e[0],this.svy=e[1]},e.prototype._get_unscaled_vertices=function(){var t=this.model.size,e=this.model.aspect_scale;if(\"pointytop\"==this.model.orientation){var i=this.renderer.yscale,n=this.renderer.xscale,r=Math.abs(i.compute(0)-i.compute(t)),o=Math.sqrt(3)/2*Math.abs(n.compute(0)-n.compute(t))/e,s=r/2,a=[0,-o,-o,0,o,o],l=[r,s,-s,-r,-s,s];return[a,l]}var i=this.renderer.xscale,n=this.renderer.yscale,r=Math.abs(i.compute(0)-i.compute(t)),o=Math.sqrt(3)/2*Math.abs(n.compute(0)-n.compute(t))*e,s=r/2,a=[r,s,-s,-r,-s,s],l=[0,-o,-o,0,o,o];return[a,l]},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.svx,s=i.svy,a=i._scale,l=0,h=e;l<h.length;l++){var u=h[l];if(!isNaN(n[u]+r[u]+a[u])){t.translate(n[u],r[u]),t.beginPath();for(var c=0;c<6;c++)t.lineTo(o[c]*a[u],s[c]*a[u]);t.closePath(),t.translate(-n[u],-r[u]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,u),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,u),t.stroke())}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=[],a=0,l=o;a<l.length;a++){var h=l[a];f.point_in_poly(e-this.sx[h],i-this.sy[h],this.svx,this.svy)&&s.push(h)}var u=f.create_empty_hit_test_result();return u.indices=s,u},e.prototype._hit_span=function(t){var e,i=t.sx,n=t.sy;if(\"v\"==t.direction){var r=this.renderer.yscale.invert(n),o=this.renderer.plot_view.frame.bbox.h_range,s=this.renderer.xscale.r_invert(o.start,o.end),a=s[0],l=s[1];e=this.index.indices({minX:a,minY:r,maxX:l,maxY:r})}else{var h=this.renderer.xscale.invert(i),u=this.renderer.plot_view.frame.bbox.v_range,c=this.renderer.yscale.r_invert(u.start,u.end),_=c[0],p=c[1];e=this.index.indices({minX:h,minY:_,maxX:h,maxY:p})}var d=f.create_empty_hit_test_result();return d.indices=e,d},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=f.validate_bbox_coords([s,a],[h,u]),_=f.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype.draw_legend_for_index=function(t,e,i){s.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.HexTileView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"HexTile\",this.prototype.default_view=l,this.coords([[\"r\",\"q\"]]),this.mixins([\"line\",\"fill\"]),this.define({size:[o.Number,1],aspect_scale:[o.Number,1],scale:[o.NumberSpec,1],orientation:[o.String,\"pointytop\"]}),this.override({line_color:null})},t}(r.Glyph);(i.HexTile=h).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(167),s=t(15),c=t(21),l=t(37),_=t(9),a=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.color_mapper.change,function(){return e._update_image()}),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._update_image=function(){null!=this.image_data&&(this._set_data(),this.renderer.plot_view.request_render())},t.prototype._index_data=function(){for(var t=[],e=0,i=this._x.length;e<i;e++){var n=this._lrtb(e),r=n[0],o=n[1],s=n[2],a=n[3];!isNaN(r+o+s+a)&&isFinite(r+o+s+a)&&t.push({minX:r,minY:a,maxX:o,maxY:s,i:e})}return new l.SpatialIndex(t)},t.prototype._lrtb=function(t){var e=this.renderer.xscale.source_range,i=this._x[t],n=e.is_reversed?i-this._dw[t]:i+this._dw[t],r=this.renderer.yscale.source_range,o=this._y[t],s=r.is_reversed?o-this._dh[t]:o+this._dh[t],a=i<n?[i,n]:[n,i],l=a[0],h=a[1],u=o<s?[o,s]:[s,o],c=u[0],_=u[1];return[l,h,_,c]},t.prototype._image_index=function(t,e,i){var n=this._lrtb(t),r=n[0],o=n[1],s=n[2],a=n[3],l=this._width[t],h=this._height[t],u=(o-r)/l,c=(s-a)/h,_=Math.floor((e-r)/u),p=Math.floor((i-a)/c);return{index:t,dim1:_,dim2:p,flat_index:p*l+_}},t.prototype._hit_point=function(t){var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=_.validate_bbox_coords([n,n],[r,r]),s=this.index.indices(o),a=_.create_empty_hit_test_result();a.image_indices=[];for(var l=0,h=s;l<h.length;l++){var u=h[l];e!=1/0&&i!=1/0&&a.image_indices.push(this._image_index(u,n,r))}return a},t.prototype._set_data=function(){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 Array(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new Array(this._image.length));for(var t=this.model.color_mapper.rgba_mapper,e=0,i=this._image.length;e<i;e++){var n=void 0;if(null!=this._image_shape&&0<this._image_shape[e].length){n=this._image[e];var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var o=this._image[e];n=c.concat(o),this._height[e]=o.length,this._width[e]=o[0].length}var s=this.image_data[e],a=void 0;null!=s&&s.width==this._width[e]&&s.height==this._height[e]?a=s:((a=document.createElement(\"canvas\")).width=this._width[e],a.height=this._height[e]);var l=a.getContext(\"2d\"),h=l.getImageData(0,0,this._width[e],this._height[e]),u=t.v_compute(n);h.data.set(u),l.putImageData(h,0,0),this.image_data[e]=a,this.max_dw=0,\"data\"==this.model.properties.dw.units&&(this.max_dw=c.max(this._dw)),this.max_dh=0,\"data\"==this.model.properties.dh.units&&(this.max_dh=c.max(this._dh))}},t.prototype._map_data=function(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}},t.prototype._render=function(t,e,i){var n=i.image_data,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=t.getImageSmoothingEnabled();t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.global_alpha;for(var h=0,u=e;h<u.length;h++){var c=u[h];if(null!=n[c]&&!isNaN(r[c]+o[c]+s[c]+a[c])){var _=o[c];t.translate(0,_),t.scale(1,-1),t.translate(0,-_),t.drawImage(n[c],0|r[c],0|o[c],s[c],a[c]),t.translate(0,_),t.scale(1,-1),t.translate(0,-_)}}t.setImageSmoothingEnabled(l)},t.prototype.bounds=function(){var t=this.index.bbox;return t.maxX+=this.max_dw,t.maxY+=this.max_dh,t},t}(r.XYGlyphView);i.ImageView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Image\",this.prototype.default_view=a,this.define({image:[s.NumberSpec],dw:[s.DistanceSpec],dh:[s.DistanceSpec],dilate:[s.Bool,!1],global_alpha:[s.Number,1],color_mapper:[s.Instance,function(){return new o.LinearColorMapper({palette:[\"#000000\",\"#252525\",\"#525252\",\"#737373\",\"#969696\",\"#bdbdbd\",\"#d9d9d9\",\"#f0f0f0\",\"#ffffff\"]})}]})},t}(r.XYGlyph);(i.Image=h).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(15),f=t(21),s=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._set_data=function(t){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 Array(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new Array(this._image.length));for(var e=0,i=this._image.length;e<i;e++)if(!(null!=t&&t.indexOf(e)<0)){var n=void 0;if(null!=this._image_shape&&0<this._image_shape[e].length){n=this._image[e].buffer;var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var o=this._image[e],s=f.concat(o);n=new ArrayBuffer(4*s.length);for(var a=new Uint32Array(n),l=0,h=s.length;l<h;l++)a[l]=s[l];this._height[e]=o.length,this._width[e]=o[0].length}var u=this.image_data[e],c=void 0;null!=u&&u.width==this._width[e]&&u.height==this._height[e]?c=u:((c=document.createElement(\"canvas\")).width=this._width[e],c.height=this._height[e]);var _=c.getContext(\"2d\"),p=_.getImageData(0,0,this._width[e],this._height[e]),d=new Uint8Array(n);p.data.set(d),_.putImageData(p,0,0),this.image_data[e]=c,this.max_dw=0,\"data\"==this.model.properties.dw.units&&(this.max_dw=f.max(this._dw)),this.max_dh=0,\"data\"==this.model.properties.dh.units&&(this.max_dh=f.max(this._dh))}},t.prototype._map_data=function(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}},t.prototype._render=function(t,e,i){var n=i.image_data,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=t.getImageSmoothingEnabled();t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.global_alpha;for(var h=0,u=e;h<u.length;h++){var c=u[h];if(!isNaN(r[c]+o[c]+s[c]+a[c])){var _=o[c];t.translate(0,_),t.scale(1,-1),t.translate(0,-_),t.drawImage(n[c],0|r[c],0|o[c],s[c],a[c]),t.translate(0,_),t.scale(1,-1),t.translate(0,-_)}}t.setImageSmoothingEnabled(l)},t.prototype.bounds=function(){var t=this.index.bbox;return t.maxX+=this.max_dw,t.maxY+=this.max_dh,t},t}(r.XYGlyphView);i.ImageRGBAView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ImageRGBA\",this.prototype.default_view=s,this.define({image:[o.NumberSpec],dw:[o.DistanceSpec],dh:[o.DistanceSpec],global_alpha:[o.Number,1],dilate:[o.Bool,!1]})},t}(r.XYGlyph);(i.ImageRGBA=a).initClass()},function(t,e,m){var n=t(391),i=t(146),g=t(14),r=t(15),y=t(22),o=t(37);m.CanvasImage=Image;var s=function(i){function t(){var t=null!==i&&i.apply(this,arguments)||this;return t._images_rendered=!1,t}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._index_data=function(){return new o.SpatialIndex([])},t.prototype._set_data=function(){var n=this;null!=this.image&&this.image.length==this._url.length||(this.image=y.map(this._url,function(){return null}));var t=this.model,r=t.retry_attempts,o=t.retry_timeout;this.retries=y.map(this._url,function(){return r});for(var e=function(t,e){if(null==s._url[t])return\"continue\";var i=new m.CanvasImage;i.onerror=function(){0<n.retries[t]?(g.logger.trace(\"ImageURL failed to load \"+n._url[t]+\" image, retrying in \"+o+\" ms\"),setTimeout(function(){return i.src=n._url[t]},o)):g.logger.warn(\"ImageURL unable to load \"+n._url[t]+\" image after \"+r+\" retries\"),n.retries[t]-=1},i.onload=function(){n.image[t]=i,n.renderer.request_render()},i.src=s._url[t]},s=this,i=0,a=this._url.length;i<a;i++)e(i,a);for(var l=\"data\"==this.model.properties.w.units,h=\"data\"==this.model.properties.h.units,u=this._x.length,c=new Array(l?2*u:u),_=new Array(h?2*u:u),i=0;i<u;i++)c[i]=this._x[i],_[i]=this._y[i];if(l)for(var i=0;i<u;i++)c[u+i]=this._x[i]+this._w[i];if(h)for(var i=0;i<u;i++)_[u+i]=this._y[i]+this._h[i];var p=y.min(c),d=y.max(c),f=y.min(_),v=y.max(_);this._bounds_rect={minX:p,maxX:d,minY:f,maxY:v}},t.prototype.has_finished=function(){return i.prototype.has_finished.call(this)&&1==this._images_rendered},t.prototype._map_data=function(){var t=null!=this.model.w?this._w:y.map(this._x,function(){return NaN}),e=null!=this.model.h?this._h:y.map(this._x,function(){return NaN});switch(this.model.properties.w.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,t,\"edge\",this.model.dilate);break;case\"screen\":this.sw=t}switch(this.model.properties.h.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,e,\"edge\",this.model.dilate);break;case\"screen\":this.sh=e}},t.prototype._render=function(t,e,i){var n=i.image,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=i._angle,h=this.renderer.plot_view.frame;t.rect(h._left.value+1,h._top.value+1,h._width.value-2,h._height.value-2),t.clip();for(var u=!0,c=0,_=e;c<_.length;c++){var p=_[c];if(!isNaN(r[p]+o[p]+l[p])&&-1!=this.retries[p]){var d=n[p];null!=d?this._render_image(t,p,d,r,o,s,a,l):u=!1}}u&&!this._images_rendered&&(this._images_rendered=!0,this.notify_finished())},t.prototype._final_sx_sy=function(t,e,i,n,r){switch(t){case\"top_left\":return[e,i];case\"top_center\":return[e-n/2,i];case\"top_right\":return[e-n,i];case\"center_right\":return[e-n,i-r/2];case\"bottom_right\":return[e-n,i-r];case\"bottom_center\":return[e-n/2,i-r];case\"bottom_left\":return[e,i-r];case\"center_left\":return[e,i-r/2];case\"center\":return[e-n/2,i-r/2]}},t.prototype._render_image=function(t,e,i,n,r,o,s,a){isNaN(o[e])&&(o[e]=i.width),isNaN(s[e])&&(s[e]=i.height);var l=this.model.anchor,h=this._final_sx_sy(l,n[e],r[e],o[e],s[e]),u=h[0],c=h[1];t.save(),t.globalAlpha=this.model.global_alpha,a[e]?(t.translate(u,c),t.rotate(a[e]),t.drawImage(i,0,0,o[e],s[e]),t.rotate(-a[e]),t.translate(-u,-c)):t.drawImage(i,u,c,o[e],s[e]),t.restore()},t.prototype.bounds=function(){return this._bounds_rect},t}(i.XYGlyphView);m.ImageURLView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ImageURL\",this.prototype.default_view=s,this.define({url:[r.StringSpec],anchor:[r.Anchor,\"top_left\"],global_alpha:[r.Number,1],angle:[r.AngleSpec,0],w:[r.DistanceSpec],h:[r.DistanceSpec],dilate:[r.Bool,!1],retry_attempts:[r.Number,0],retry_timeout:[r.Number,0]})},t}(i.XYGlyph);(m.ImageURL=a).initClass()},function(t,e,i){var n=t(114);i.AnnularWedge=n.AnnularWedge;var r=t(115);i.Annulus=r.Annulus;var o=t(116);i.Arc=o.Arc;var s=t(117);i.Bezier=s.Bezier;var a=t(120);i.Circle=a.Circle;var l=t(119);i.CenterRotatable=l.CenterRotatable;var h=t(121);i.Ellipse=h.Ellipse;var u=t(122);i.EllipseOval=u.EllipseOval;var c=t(123);i.Glyph=c.Glyph;var _=t(124);i.HBar=_.HBar;var p=t(125);i.HexTile=p.HexTile;var d=t(126);i.Image=d.Image;var f=t(127);i.ImageRGBA=f.ImageRGBA;var v=t(128);i.ImageURL=v.ImageURL;var m=t(130);i.Line=m.Line;var g=t(131);i.MultiLine=g.MultiLine;var y=t(132);i.MultiPolygons=y.MultiPolygons;var b=t(133);i.Oval=b.Oval;var x=t(134);i.Patch=x.Patch;var w=t(135);i.Patches=w.Patches;var k=t(136);i.Quad=k.Quad;var S=t(137);i.Quadratic=S.Quadratic;var C=t(138);i.Ray=C.Ray;var T=t(139);i.Rect=T.Rect;var A=t(140);i.Segment=A.Segment;var E=t(141);i.Step=E.Step;var M=t(142);i.Text=M.Text;var O=t(144);i.VBar=O.VBar;var z=t(145);i.Wedge=z.Wedge;var P=t(146);i.XYGlyph=P.XYGlyph},function(t,e,i){var n=t(391),r=t(146),a=t(143),c=t(9),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=!1,s=null;this.visuals.line.set_value(t);for(var a=0,l=e;a<l.length;a++){var h=l[a];if(o){if(!isFinite(n[h]+r[h])){t.stroke(),t.beginPath(),o=!1,s=h;continue}null!=s&&1<h-s&&(t.stroke(),o=!1)}o?t.lineTo(n[h],r[h]):(t.beginPath(),t.moveTo(n[h],r[h]),o=!0),s=h}o&&t.stroke()},e.prototype._hit_point=function(t){for(var e=this,i=c.create_empty_hit_test_result(),n={x:t.sx,y:t.sy},r=9999,o=Math.max(2,this.visuals.line.line_width.value()/2),s=0,a=this.sx.length-1;s<a;s++){var l={x:this.sx[s],y:this.sy[s]},h={x:this.sx[s+1],y:this.sy[s+1]},u=c.dist_to_segment(n,l,h);u<o&&u<r&&(r=u,i.add_to_selected_glyphs(this.model),i.get_view=function(){return e},i.line_indices=[s])}return i},e.prototype._hit_span=function(t){var e,i,n=this,r=t.sx,o=t.sy,s=c.create_empty_hit_test_result();\"v\"==t.direction?(e=this.renderer.yscale.invert(o),i=this._y):(e=this.renderer.xscale.invert(r),i=this._x);for(var a=0,l=i.length-1;a<l;a++)(i[a]<=e&&e<=i[a+1]||i[a+1]<=e&&e<=i[a])&&(s.add_to_selected_glyphs(this.model),s.get_view=function(){return n},s.line_indices.push(a));return s},e.prototype.get_interpolation_hit=function(t,e){var i=[this._x[t],this._y[t],this._x[t+1],this._y[t+1]],n=i[0],r=i[1],o=i[2],s=i[3];return a.line_interpolation(this.renderer,e,n,r,o,s)},e.prototype.draw_legend_for_index=function(t,e,i){a.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.LineView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Line\",this.prototype.default_view=o,this.mixins([\"line\"])},t}(r.XYGlyph);(i.Line=s).initClass()},function(t,e,i){var n=t(391),m=t(37),d=t(9),f=t(32),g=t(21),y=t(44),r=t(123),l=t(143),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)if(null!=this._xs[e]&&0!==this._xs[e].length){for(var n=this._xs[e],r=[],o=0,s=n.length;o<s;o++){var a=n[o];y.isStrictNaN(a)||r.push(a)}for(var l=this._ys[e],h=[],o=0,s=l.length;o<s;o++){var u=l[o];y.isStrictNaN(u)||h.push(u)}var c=[g.min(r),g.max(r)],_=c[0],p=c[1],d=[g.min(h),g.max(h)],f=d[0],v=d[1];t.push({minX:_,minY:f,maxX:p,maxY:v,i:e})}return new m.SpatialIndex(t)},e.prototype._render=function(t,e,i){for(var n=i.sxs,r=i.sys,o=0,s=e;o<s.length;o++){var a=s[o],l=[n[a],r[a]],h=l[0],u=l[1];this.visuals.line.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c])||isNaN(u[c])?(t.stroke(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.stroke()}},e.prototype._hit_point=function(t){for(var e=d.create_empty_hit_test_result(),i={x:t.sx,y:t.sy},n=9999,r={},o=0,s=this.sxs.length;o<s;o++){for(var a=Math.max(2,this.visuals.line.cache_select(\"line_width\",o)/2),l=null,h=0,u=this.sxs[o].length-1;h<u;h++){var c={x:this.sxs[o][h],y:this.sys[o][h]},_={x:this.sxs[o][h+1],y:this.sys[o][h+1]},p=d.dist_to_segment(i,c,_);p<a&&p<n&&(n=p,l=[h])}l&&(r[o]=l)}return e.indices=f.keys(r).map(function(t){return parseInt(t,10)}),e.multiline_indices=r,e},e.prototype._hit_span=function(t){var e,i,n=t.sx,r=t.sy,o=d.create_empty_hit_test_result();\"v\"===t.direction?(e=this.renderer.yscale.invert(r),i=this._ys):(e=this.renderer.xscale.invert(n),i=this._xs);for(var s={},a=0,l=i.length;a<l;a++){for(var h=[],u=0,c=i[a].length-1;u<c;u++)i[a][u]<=e&&e<=i[a][u+1]&&h.push(u);0<h.length&&(s[a]=h)}return o.indices=f.keys(s).map(function(t){return parseInt(t,10)}),o.multiline_indices=s,o},e.prototype.get_interpolation_hit=function(t,e,i){var n=[this._xs[t][e],this._ys[t][e],this._xs[t][e+1],this._ys[t][e+1]],r=n[0],o=n[1],s=n[2],a=n[3];return l.line_interpolation(this.renderer,i,r,o,s,a)},e.prototype.draw_legend_for_index=function(t,e,i){l.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.MultiLineView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiLine\",this.prototype.default_view=o,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.MultiLine=s).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143),u=t(21),s=t(22),x=t(9),m=t(44),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)for(var n=0,r=this._xs[e].length;n<r;n++){var o=this._xs[e][n][0],s=this._ys[e][n][0];0!=o.length&&t.push({minX:u.min(o),minY:u.min(s),maxX:u.max(o),maxY:u.max(s),i:e})}return this.hole_index=this._index_hole_data(),new h.SpatialIndex(t)},e.prototype._index_hole_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)for(var n=0,r=this._xs[e].length;n<r;n++)if(1<this._xs[e][n].length)for(var o=1,s=this._xs[e][n].length;o<s;o++){var a=this._xs[e][n][o],l=this._ys[e][n][o];0!=a.length&&t.push({minX:u.min(a),minY:u.min(l),maxX:u.max(a),maxY:u.max(l),i:e})}return new h.SpatialIndex(t)},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.x_ranges.default,e=[t.min,t.max],i=e[0],n=e[1],r=this.renderer.plot_view.frame.y_ranges.default,o=[r.min,r.max],s=o[0],a=o[1],l=x.validate_bbox_coords([i,n],[s,a]),h=this.index.indices(l);return h.sort(function(t,e){return t-e}).filter(function(t,e,i){return 0===e||t!==i[e-1]})},e.prototype._render=function(t,e,i){var n=i.sxs,r=i.sys;if(this.visuals.fill.doit||this.visuals.line.doit)for(var o=0,s=e;o<s.length;o++){var a=s[o];t.beginPath();for(var l=0,h=n[a].length;l<h;l++)for(var u=0,c=n[a][l].length;u<c;u++){for(var _=n[a][l][u],p=r[a][l][u],d=0,f=_.length;d<f;d++)0!=d?t.lineTo(_[d],p[d]):t.moveTo(_[d],p[d]);t.closePath()}this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,a),t.fill(\"evenodd\")),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,a),t.stroke())}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=this.hole_index.indices({minX:n,minY:r,maxX:n,maxY:r}),a=[],l=0,h=o.length;l<h;l++)for(var u=o[l],c=this.sxs[u],_=this.sys[u],p=0,d=c.length;p<d;p++){var f=c[p].length;if(x.point_in_poly(e,i,c[p][0],_[p][0]))if(1==f)a.push(u);else if(-1==s.indexOf(u))a.push(u);else if(1<f){for(var v=!1,m=1;m<f;m++){var g=c[p][m],y=_[p][m];if(x.point_in_poly(e,i,g,y)){v=!0;break}}v||a.push(u)}}var b=x.create_empty_hit_test_result();return b.indices=a,b},e.prototype._get_snap_coord=function(t){return s.sum(t)/t.length},e.prototype.scenterx=function(t,e,i){if(1==this.sxs[t].length)return this._get_snap_coord(this.sxs[t][0][0]);for(var n=this.sxs[t],r=this.sys[t],o=0,s=n.length;o<s;o++)if(x.point_in_poly(e,i,n[o][0],r[o][0]))return this._get_snap_coord(n[o][0]);throw new Error(\"unreachable code\")},e.prototype.scentery=function(t,e,i){if(1==this.sys[t].length)return this._get_snap_coord(this.sys[t][0][0]);for(var n=this.sxs[t],r=this.sys[t],o=0,s=n.length;o<s;o++)if(x.point_in_poly(e,i,n[o][0],r[o][0]))return this._get_snap_coord(r[o][0]);throw new Error(\"unreachable code\")},e.prototype.map_data=function(){for(var t=this,e=0,i=this.model._coords;e<i.length;e++){var n=i[e],r=n[0],o=n[1],s=\"s\"+r,a=\"s\"+o;if(o=\"_\"+o,null!=t[r=\"_\"+r]&&(m.isArray(t[r][0])||m.isTypedArray(t[r][0]))){var l=t[r].length;t[s]=new Array(l),t[a]=new Array(l);for(var h=0;h<l;h++){var u=t[r][h].length;t[s][h]=new Array(u),t[a][h]=new Array(u);for(var c=0;c<u;c++){var _=t[r][h][c].length;t[s][h][c]=new Array(_),t[a][h][c]=new Array(_);for(var p=0;p<_;p++){var d=this.map_to_screen(t[r][h][c][p],t[o][h][c][p]),f=d[0],v=d[1];t[s][h][c][p]=f,t[a][h][c][p]=v}}}}}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.MultiPolygonsView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiPolygons\",this.prototype.default_view=a,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.MultiPolygons=l).initClass()},function(t,e,i){var n=t(391),r=t(122),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){var t,e=this._x.length;this.sw=new Float64Array(e),t=\"data\"==this.model.properties.width.units?this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this._width;for(var i=0;i<e;i++)this.sw[i]=.75*t[i];\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height},e}(r.EllipseOvalView);i.OvalView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Oval\",this.prototype.default_view=o},t}(r.EllipseOval);(i.Oval=s).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy;if(this.visuals.fill.doit){this.visuals.fill.set_value(t);for(var o=0,s=e;o<s.length;o++){var a=s[o];0!=a?isNaN(n[a]+r[a])?(t.closePath(),t.fill(),t.beginPath()):t.lineTo(n[a],r[a]):(t.beginPath(),t.moveTo(n[a],r[a]))}t.closePath(),t.fill()}if(this.visuals.line.doit){this.visuals.line.set_value(t);for(var l=0,h=e;l<h.length;l++){var a=h[l];0!=a?isNaN(n[a]+r[a])?(t.closePath(),t.stroke(),t.beginPath()):t.lineTo(n[a],r[a]):(t.beginPath(),t.moveTo(n[a],r[a]))}return t.closePath(),t.stroke()}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.PatchView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Patch\",this.prototype.default_view=s,this.mixins([\"line\",\"fill\"])},t}(r.XYGlyph);(i.Patch=a).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143),u=t(21),s=t(22),l=t(44),f=t(9),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._build_discontinuous_object=function(t){for(var e=[],i=0,n=t.length;i<n;i++){e[i]=[];for(var r=u.copy(t[i]);0<r.length;){var o=u.findLastIndex(r,function(t){return l.isStrictNaN(t)}),s=void 0;0<=o?s=r.splice(o):(s=r,r=[]);var a=s.filter(function(t){return!l.isStrictNaN(t)});e[i].push(a)}}return e},e.prototype._index_data=function(){for(var t=this._build_discontinuous_object(this._xs),e=this._build_discontinuous_object(this._ys),i=[],n=0,r=this._xs.length;n<r;n++)for(var o=0,s=t[n].length;o<s;o++){var a=t[n][o],l=e[n][o];0!=a.length&&i.push({minX:u.min(a),minY:u.min(l),maxX:u.max(a),maxY:u.max(l),i:n})}return new h.SpatialIndex(i)},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.x_ranges.default,e=[t.min,t.max],i=e[0],n=e[1],r=this.renderer.plot_view.frame.y_ranges.default,o=[r.min,r.max],s=o[0],a=o[1],l=f.validate_bbox_coords([i,n],[s,a]),h=this.index.indices(l);return h.sort(function(t,e){return t-e})},e.prototype._render=function(t,e,i){var n=i.sxs,r=i.sys;this.sxss=this._build_discontinuous_object(n),this.syss=this._build_discontinuous_object(r);for(var o=0,s=e;o<s.length;o++){var a=s[o],l=[n[a],r[a]],h=l[0],u=l[1];if(this.visuals.fill.doit){this.visuals.fill.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c]+u[c])?(t.closePath(),t.fill(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.closePath(),t.fill()}if(this.visuals.line.doit){this.visuals.line.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c]+u[c])?(t.closePath(),t.stroke(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.closePath(),t.stroke()}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=[],a=0,l=o.length;a<l;a++)for(var h=o[a],u=this.sxss[h],c=this.syss[h],_=0,p=u.length;_<p;_++)f.point_in_poly(e,i,u[_],c[_])&&s.push(h);var d=f.create_empty_hit_test_result();return d.indices=s,d},e.prototype._get_snap_coord=function(t){return s.sum(t)/t.length},e.prototype.scenterx=function(t,e,i){if(1==this.sxss[t].length)return this._get_snap_coord(this.sxs[t]);for(var n=this.sxss[t],r=this.syss[t],o=0,s=n.length;o<s;o++)if(f.point_in_poly(e,i,n[o],r[o]))return this._get_snap_coord(n[o]);throw new Error(\"unreachable code\")},e.prototype.scentery=function(t,e,i){if(1==this.syss[t].length)return this._get_snap_coord(this.sys[t]);for(var n=this.sxss[t],r=this.syss[t],o=0,s=n.length;o<s;o++)if(f.point_in_poly(e,i,n[o],r[o]))return this._get_snap_coord(r[o]);throw new Error(\"unreachable code\")},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.PatchesView=a;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Patches\",this.prototype.default_view=a,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.Patches=c).initClass()},function(t,e,i){var n=t(391),r=t(118),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.get_anchor_point=function(t,e,i){var n=Math.min(this.sleft[e],this.sright[e]),r=Math.max(this.sright[e],this.sleft[e]),o=Math.min(this.stop[e],this.sbottom[e]),s=Math.max(this.sbottom[e],this.stop[e]);switch(t){case\"top_left\":return{x:n,y:o};case\"top_center\":return{x:(n+r)/2,y:o};case\"top_right\":return{x:r,y:o};case\"center_right\":return{x:r,y:(o+s)/2};case\"bottom_right\":return{x:r,y:s};case\"bottom_center\":return{x:(n+r)/2,y:s};case\"bottom_left\":return{x:n,y:s};case\"center_left\":return{x:n,y:(o+s)/2};case\"center\":return{x:(n+r)/2,y:(o+s)/2};default:return null}},e.prototype.scenterx=function(t){return(this.sleft[t]+this.sright[t])/2},e.prototype.scentery=function(t){return(this.stop[t]+this.sbottom[t])/2},e.prototype._index_data=function(){return this._index_box(this._right.length)},e.prototype._lrtb=function(t){var e=this._left[t],i=this._right[t],n=this._top[t],r=this._bottom[t];return[e,i,n,r]},e}(r.BoxView);i.QuadView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Quad\",this.prototype.default_view=o,this.coords([[\"right\",\"bottom\"],[\"left\",\"top\"]])},t}(r.Box);(i.Quad=s).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143);function u(t,e,i){if(e==(t+i)/2)return[t,i];var n=(t-e)/(t-2*e+i),r=t*Math.pow(1-n,2)+2*e*(1-n)*n+i*Math.pow(n,2);return[Math.min(t,i,r),Math.max(t,i,r)]}var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++)if(!isNaN(this._x0[e]+this._x1[e]+this._y0[e]+this._y1[e]+this._cx[e]+this._cy[e])){var n=u(this._x0[e],this._cx[e],this._x1[e]),r=n[0],o=n[1],s=u(this._y0[e],this._cy[e],this._y1[e]),a=s[0],l=s[1];t.push({minX:r,minY:a,maxX:o,maxY:l,i:e})}return new h.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1,a=i.scx,l=i.scy;if(this.visuals.line.doit)for(var h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c]+l[c])||(t.beginPath(),t.moveTo(n[c],r[c]),t.quadraticCurveTo(a[c],l[c],o[c],s[c]),this.visuals.line.set_vectorize(t,c),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.QuadraticView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Quadratic\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"],[\"cx\",\"cy\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Quadratic=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.length.units?this.slength=this.sdist(this.renderer.xscale,this._x,this._length):this.slength=this._length},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.slength,s=i._angle;if(this.visuals.line.doit){for(var a=this.renderer.plot_view.frame._width.value,l=this.renderer.plot_view.frame._height.value,h=2*(a+l),u=0,c=o.length;u<c;u++)0==o[u]&&(o[u]=h);for(var _=0,p=e;_<p.length;_++){var u=p[_];isNaN(n[u]+r[u]+s[u]+o[u])||(t.translate(n[u],r[u]),t.rotate(s[u]),t.beginPath(),t.moveTo(0,0),t.lineTo(o[u],0),this.visuals.line.set_vectorize(t,u),t.stroke(),t.rotate(-s[u]),t.translate(-n[u],-r[u]))}}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.RayView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ray\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({length:[s.DistanceSpec],angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Ray=l).initClass()},function(t,e,i){var n=t(391),r=t(119),o=t(143),T=t(9),s=t(15),A=t(22),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_data=function(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)},e.prototype._map_data=function(){var t,e;if(\"data\"==this.model.properties.width.units)t=this._map_dist_corner_for_data_side_length(this._x,this._width,this.renderer.xscale),this.sw=t[0],this.sx0=t[1];else{this.sw=this._width;var i=this.sx.length;this.sx0=new Float64Array(i);for(var n=0;n<i;n++)this.sx0[n]=this.sx[n]-this.sw[n]/2}if(\"data\"==this.model.properties.height.units)e=this._map_dist_corner_for_data_side_length(this._y,this._height,this.renderer.yscale),this.sh=e[0],this.sy1=e[1];else{this.sh=this._height;var r=this.sy.length;this.sy1=new Float64Array(r);for(var n=0;n<r;n++)this.sy1[n]=this.sy[n]-this.sh[n]/2}var o=this.sw.length;this.ssemi_diag=new Float64Array(o);for(var n=0;n<o;n++)this.ssemi_diag[n]=Math.sqrt(this.sw[n]/2*this.sw[n]/2+this.sh[n]/2*this.sh[n]/2)},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.sx0,s=i.sy1,a=i.sw,l=i.sh,h=i._angle;if(this.visuals.fill.doit)for(var u=0,c=e;u<c.length;u++){var _=c[u];isNaN(n[_]+r[_]+o[_]+s[_]+a[_]+l[_]+h[_])||(this.visuals.fill.set_vectorize(t,_),h[_]?(t.translate(n[_],r[_]),t.rotate(h[_]),t.fillRect(-a[_]/2,-l[_]/2,a[_],l[_]),t.rotate(-h[_]),t.translate(-n[_],-r[_])):t.fillRect(o[_],s[_],a[_],l[_]))}if(this.visuals.line.doit){t.beginPath();for(var p=0,d=e;p<d.length;p++){var _=d[p];isNaN(n[_]+r[_]+o[_]+s[_]+a[_]+l[_]+h[_])||0!=a[_]&&0!=l[_]&&(h[_]?(t.translate(n[_],r[_]),t.rotate(h[_]),t.rect(-a[_]/2,-l[_]/2,a[_],l[_]),t.rotate(-h[_]),t.translate(-n[_],-r[_])):t.rect(o[_],s[_],a[_],l[_]),this.visuals.line.set_vectorize(t,_),t.stroke(),t.beginPath())}t.stroke()}},e.prototype._hit_rect=function(t){return this._hit_rect_against_index(t)},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=[],s=0,a=this.sx0.length;s<a;s++)o.push(this.sx0[s]+this.sw[s]/2);for(var l=[],s=0,a=this.sy1.length;s<a;s++)l.push(this.sy1[s]+this.sh[s]/2);for(var h=A.max(this._ddist(0,o,this.ssemi_diag)),u=A.max(this._ddist(1,l,this.ssemi_diag)),c=n-h,_=n+h,p=r-u,d=r+u,f=[],v=T.validate_bbox_coords([c,_],[p,d]),m=0,g=this.index.indices(v);m<g.length;m++){var s=g[m],y=void 0,b=void 0;if(this._angle[s]){var x=Math.sin(-this._angle[s]),w=Math.cos(-this._angle[s]),k=w*(e-this.sx[s])-x*(i-this.sy[s])+this.sx[s],S=x*(e-this.sx[s])+w*(i-this.sy[s])+this.sy[s];e=k,i=S,b=Math.abs(this.sx[s]-e)<=this.sw[s]/2,y=Math.abs(this.sy[s]-i)<=this.sh[s]/2}else b=e-this.sx0[s]<=this.sw[s]&&0<=e-this.sx0[s],y=i-this.sy1[s]<=this.sh[s]&&0<=i-this.sy1[s];y&&b&&f.push(s)}var C=T.create_empty_hit_test_result();return C.indices=f,C},e.prototype._map_dist_corner_for_data_side_length=function(t,e,i){for(var n=t.length,r=new Float64Array(n),o=new Float64Array(n),s=0;s<n;s++)r[s]=Number(t[s])-e[s]/2,o[s]=Number(t[s])+e[s]/2;for(var a=i.v_compute(r),l=i.v_compute(o),h=this.sdist(i,r,e,\"edge\",this.model.dilate),u=a,s=0,c=a.length;s<c;s++)if(a[s]!=l[s]){u=a[s]<l[s]?a:l;break}return[h,u]},e.prototype._ddist=function(t,e,i){for(var n=0==t?this.renderer.xscale:this.renderer.yscale,r=e,o=r.length,s=new Float64Array(o),a=0;a<o;a++)s[a]=r[a]+i[a];for(var l=n.v_invert(r),h=n.v_invert(s),u=l.length,c=new Float64Array(u),a=0;a<u;a++)c[a]=Math.abs(h[a]-l[a]);return c},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._bounds=function(t){var e=t.minX,i=t.maxX,n=t.minY,r=t.maxY;return{minX:e-this.max_w2,maxX:i+this.max_w2,minY:n-this.max_h2,maxY:r+this.max_h2}},e}(r.CenterRotatableView);i.RectView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Rect\",this.prototype.default_view=a,this.define({dilate:[s.Bool,!1]})},t}(r.CenterRotatable);(i.Rect=l).initClass()},function(t,e,i){var n=t(391),k=t(9),a=t(37),r=t(123),o=t(143),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++){var n=this._x0[e],r=this._x1[e],o=this._y0[e],s=this._y1[e];isNaN(n+r+o+s)||t.push({minX:Math.min(n,r),minY:Math.min(o,s),maxX:Math.max(n,r),maxY:Math.max(o,s),i:e})}return new a.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1;if(this.visuals.line.doit)for(var a=0,l=e;a<l.length;a++){var h=l[a];isNaN(n[h]+r[h]+o[h]+s[h])||(t.beginPath(),t.moveTo(n[h],r[h]),t.lineTo(o[h],s[h]),this.visuals.line.set_vectorize(t,h),t.stroke())}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n={x:e,y:i},r=[],o=this.renderer.xscale.r_invert(e-2,e+2),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(i-2,i+2),h=l[0],u=l[1],c=this.index.indices({minX:s,minY:h,maxX:a,maxY:u}),_=0,p=c;_<p.length;_++){var d=p[_],f=Math.pow(Math.max(2,this.visuals.line.cache_select(\"line_width\",d)/2),2),v={x:this.sx0[d],y:this.sy0[d]},m={x:this.sx1[d],y:this.sy1[d]},g=k.dist_to_segment_squared(n,v,m);g<f&&r.push(d)}var y=k.create_empty_hit_test_result();return y.indices=r,y},e.prototype._hit_span=function(t){var e,i,n,r,o,s=this.renderer.plot_view.frame.bbox.ranges,a=s[0],l=s[1],h=t.sx,u=t.sy;\"v\"==t.direction?(o=this.renderer.yscale.invert(u),e=[this._y0,this._y1],n=e[0],r=e[1]):(o=this.renderer.xscale.invert(h),i=[this._x0,this._x1],n=i[0],r=i[1]);for(var c=[],_=this.renderer.xscale.r_invert(a.start,a.end),p=_[0],d=_[1],f=this.renderer.yscale.r_invert(l.start,l.end),v=f[0],m=f[1],g=this.index.indices({minX:p,minY:v,maxX:d,maxY:m}),y=0,b=g;y<b.length;y++){var x=b[y];(n[x]<=o&&o<=r[x]||r[x]<=o&&o<=n[x])&&c.push(x)}var w=k.create_empty_hit_test_result();return w.indices=c,w},e.prototype.scenterx=function(t){return(this.sx0[t]+this.sx1[t])/2},e.prototype.scentery=function(t){return(this.sy0[t]+this.sy1[t])/2},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.SegmentView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Segment\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Segment=l).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n,r,o,s,a,l,h=i.sx,u=i.sy,c=!1,_=null;this.visuals.line.set_value(t);var p=e.length;if(!(p<2)){t.beginPath(),t.moveTo(h[0],u[0]);for(var d=0,f=e;d<f.length;d++){var v=f[d],m=void 0,g=void 0,y=void 0,b=void 0;switch(this.model.mode){case\"before\":n=[h[v-1],u[v]],m=n[0],y=n[1],r=[h[v],u[v]],g=r[0],b=r[1];break;case\"after\":o=[h[v],u[v-1]],m=o[0],y=o[1],s=[h[v],u[v]],g=s[0],b=s[1];break;case\"center\":var x=(h[v-1]+h[v])/2;a=[x,u[v-1]],m=a[0],y=a[1],l=[x,u[v]],g=l[0],b=l[1];break;default:throw new Error(\"unexpected\")}if(c){if(!isFinite(h[v]+u[v])){t.stroke(),t.beginPath(),c=!1,_=v;continue}null!=_&&1<v-_&&(t.stroke(),c=!1)}c?(t.lineTo(m,y),t.lineTo(g,b)):(t.beginPath(),t.moveTo(h[v],u[v]),c=!0),_=v}t.lineTo(h[p-1],u[p-1]),t.stroke()}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.StepView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Step\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({mode:[s.StepMode,\"before\"]})},t}(r.XYGlyph);(i.Step=l).initClass()},function(t,e,i){var n=t(391),r=t(146),d=t(9),o=t(15),O=t(41),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._rotate_point=function(t,e,i,n,r){var o=(t-i)*Math.cos(r)-(e-n)*Math.sin(r)+i,s=(t-i)*Math.sin(r)+(e-n)*Math.cos(r)+n;return[o,s]},e.prototype._text_bounds=function(t,e,i,n){var r=[t,t+i,t+i,t,t],o=[e,e,e-n,e-n,e];return[r,o]},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i._x_offset,s=i._y_offset,a=i._angle,l=i._text;this._sys=[],this._sxs=[];for(var h=0,u=e;h<u.length;h++){var c=u[h];if(!isNaN(n[c]+r[c]+o[c]+s[c]+a[c])&&null!=l[c]&&(this._sxs[c]=[],this._sys[c]=[],this.visuals.text.doit)){var _=\"\"+l[c];t.save(),t.translate(n[c]+o[c],r[c]+s[c]),t.rotate(a[c]),this.visuals.text.set_vectorize(t,c);var p=this.visuals.text.cache_select(\"font\",c),d=O.get_text_height(p).height,f=this.visuals.text.text_line_height.value()*d;if(-1==_.indexOf(\"\\n\")){t.fillText(_,0,0);var v=n[c]+o[c],m=r[c]+s[c],g=t.measureText(_).width,y=this._text_bounds(v,m,g,f),b=y[0],x=y[1];this._sxs[c].push(b),this._sys[c].push(x)}else{var w=_.split(\"\\n\"),k=f*w.length,S=this.visuals.text.cache_select(\"text_baseline\",c),C=void 0;switch(S){case\"top\":C=0;break;case\"middle\":C=-k/2+f/2;break;case\"bottom\":C=-k+f;break;default:C=0,console.warn(\"'\"+S+\"' baseline not supported with multi line text\")}for(var T=0,A=w;T<A.length;T++){var E=A[T];t.fillText(E,0,C);var v=n[c]+o[c],m=C+r[c]+s[c],g=t.measureText(E).width,M=this._text_bounds(v,m,g,f),b=M[0],x=M[1];this._sxs[c].push(b),this._sys[c].push(x),C+=f}}t.restore()}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=[],r=0;r<this._sxs.length;r++)for(var o=this._sxs[r],s=this._sys[r],a=o.length,l=0,h=a;l<h;l++){var u=this._rotate_point(e,i,o[a-1][0],s[a-1][0],-this._angle[r]),c=u[0],_=u[1];d.point_in_poly(c,_,o[l],s[l])&&n.push(r)}var p=d.create_empty_hit_test_result();return p.indices=n,p},e.prototype._scenterxy=function(t){var e=this._sxs[t][0][0],i=this._sys[t][0][0],n=(this._sxs[t][0][2]+e)/2,r=(this._sys[t][0][2]+i)/2,o=this._rotate_point(n,r,e,i,this._angle[t]),s=o[0],a=o[1];return{x:s,y:a}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.TextView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Text\",this.prototype.default_view=s,this.mixins([\"text\"]),this.define({text:[o.StringSpec,{field:\"text\"}],angle:[o.AngleSpec,0],x_offset:[o.NumberSpec,0],y_offset:[o.NumberSpec,0]})},t}(r.XYGlyph);(i.Text=a).initClass()},function(t,e,i){var x=t(9);i.generic_line_legend=function(t,e,i,n){var r=i.x0,o=i.x1,s=i.y0,a=i.y1;e.save(),e.beginPath(),e.moveTo(r,(s+a)/2),e.lineTo(o,(s+a)/2),t.line.doit&&(t.line.set_vectorize(e,n),e.stroke()),e.restore()},i.generic_area_legend=function(t,e,i,n){var r=i.x0,o=i.x1,s=i.y0,a=i.y1,l=.1*Math.abs(o-r),h=.1*Math.abs(a-s),u=r+l,c=o-l,_=s+h,p=a-h;t.fill.doit&&(t.fill.set_vectorize(e,n),e.fillRect(u,_,c-u,p-_)),t.line.doit&&(e.beginPath(),e.rect(u,_,c-u,p-_),t.line.set_vectorize(e,n),e.stroke())},i.line_interpolation=function(t,e,i,n,r,o){var s,a,l,h,u,c,_,p,d,f,v=e.sx,m=e.sy;\"point\"==e.type?(s=t.yscale.r_invert(m-1,m+1),d=s[0],f=s[1],a=t.xscale.r_invert(v-1,v+1),_=a[0],p=a[1]):\"v\"==e.direction?(l=t.yscale.r_invert(m,m),d=l[0],f=l[1],h=[Math.min(i-1,r-1),Math.max(i+1,r+1)],_=h[0],p=h[1]):(u=t.xscale.r_invert(v,v),_=u[0],p=u[1],c=[Math.min(n-1,o-1),Math.max(n+1,o+1)],d=c[0],f=c[1]);var g=x.check_2_segments_intersect(_,d,p,f,i,n,r,o),y=g.x,b=g.y;return[y,b]}},function(t,e,i){var n=t(391),r=t(118),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return(this.stop[t]+this.sbottom[t])/2},e.prototype._index_data=function(){return this._index_box(this._x.length)},e.prototype._lrtb=function(t){var e=this._x[t]-this._width[t]/2,i=this._x[t]+this._width[t]/2,n=Math.max(this._top[t],this._bottom[t]),r=Math.min(this._top[t],this._bottom[t]);return[e,i,n,r]},e.prototype._map_data=function(){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);var t=this.sx.length;this.sleft=new Float64Array(t),this.sright=new Float64Array(t);for(var e=0;e<t;e++)this.sleft[e]=this.sx[e]-this.sw[e]/2,this.sright[e]=this.sx[e]+this.sw[e]/2;this._clamp_viewport()},e}(r.BoxView);i.VBarView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"VBar\",this.prototype.default_view=s,this.coords([[\"x\",\"bottom\"]]),this.define({width:[o.DistanceSpec],top:[o.NumberSpec]}),this.override({bottom:0})},t}(r.Box);(i.VBar=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),P=t(9),s=t(15),j=t(31),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sradius,s=i._start_angle,a=i._end_angle,l=this.model.properties.direction.value(),h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c])||(t.beginPath(),t.arc(n[c],r[c],o[c],s[c],a[c],l),t.lineTo(n[c],r[c]),t.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,c),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,c),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d=t.sx,f=t.sy,v=this.renderer.xscale.invert(d),m=this.renderer.yscale.invert(f),g=2*this.max_radius;\"data\"===this.model.properties.radius.units?(u=v-g,c=v+g,_=m-g,p=m+g):(s=d-g,a=d+g,e=this.renderer.xscale.r_invert(s,a),u=e[0],c=e[1],l=f-g,h=f+g,i=this.renderer.yscale.r_invert(l,h),_=i[0],p=i[1]);for(var y=[],b=P.validate_bbox_coords([u,c],[_,p]),x=0,w=this.index.indices(b);x<w.length;x++){var k=w[x],S=Math.pow(this.sradius[k],2);n=this.renderer.xscale.r_compute(v,this._x[k]),s=n[0],a=n[1],r=this.renderer.yscale.r_compute(m,this._y[k]),l=r[0],h=r[1],(o=Math.pow(s-a,2)+Math.pow(l-h,2))<=S&&y.push([k,o])}for(var C=this.model.properties.direction.value(),T=[],A=0,E=y;A<E.length;A++){var M=E[A],k=M[0],O=M[1],z=Math.atan2(f-this.sy[k],d-this.sx[k]);j.angle_between(-z,-this._start_angle[k],-this._end_angle[k],C)&&T.push([k,O])}return P.create_hit_test_result_from_hits(T)},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._scenterxy=function(t){var e=this.sradius[t]/2,i=(this._start_angle[t]+this._end_angle[t])/2;return{x:this.sx[t]+e*Math.cos(i),y:this.sy[t]+e*Math.sin(i)}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.WedgeView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Wedge\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({direction:[s.Direction,\"anticlock\"],radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Wedge=l).initClass()},function(t,e,i){var n=t(391),o=t(37),r=t(123),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x.length;e<i;e++){var n=this._x[e],r=this._y[e];!isNaN(n+r)&&isFinite(n+r)&&t.push({minX:n,minY:r,maxX:n,maxY:r,i:e})}return new o.SpatialIndex(t)},e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return this.sy[t]},e}(r.GlyphView);i.XYGlyphView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"XYGlyph\",this.coords([[\"x\",\"y\"]])},t}(r.Glyph);(i.XYGlyph=a).initClass()},function(t,e,i){var n=t(391),r=t(59),u=t(22),c=t(21),_=t(9),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GraphHitTestPolicy\"},t.prototype._hit_test_nodes=function(t,e){if(!e.model.visible)return null;var i=e.node_view.glyph.hit_test(t);return null==i?null:e.node_view.model.view.convert_selection_from_subset(i)},t.prototype._hit_test_edges=function(t,e){if(!e.model.visible)return null;var i=e.edge_view.glyph.hit_test(t);return null==i?null:e.edge_view.model.view.convert_selection_from_subset(i)},t}(r.Model),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NodesOnly\"},t.prototype.hit_test=function(t,e){return this._hit_test_nodes(t,e)},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.node_renderer.data_source.selected;return r.update(t,i,n),e.node_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.model.get_selection_manager().get_or_create_inspector(i.node_view.model);return o.update(t,n,r),i.node_view.model.data_source.setv({inspected:o},{silent:!0}),i.node_view.model.data_source.inspect.emit([i.node_view,{geometry:e}]),!o.is_empty()},t}(i.GraphHitTestPolicy=o);(i.NodesOnly=s).initClass();var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NodesAndLinkedEdges\"},t.prototype.hit_test=function(t,e){return this._hit_test_nodes(t,e)},t.prototype.get_linked_edges=function(e,t,i){var n=[];\"selection\"==i?n=e.selected.indices.map(function(t){return e.data.index[t]}):\"inspection\"==i&&(n=e.inspected.indices.map(function(t){return e.data.index[t]}));for(var r=[],o=0;o<t.data.start.length;o++)(c.contains(n,t.data.start[o])||c.contains(n,t.data.end[o]))&&r.push(o);for(var s=_.create_empty_hit_test_result(),a=0,l=r;a<l.length;a++){var o=l[a];s.multiline_indices[o]=[0]}return s.indices=r,s},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.node_renderer.data_source.selected;r.update(t,i,n);var o=e.edge_renderer.data_source.selected,s=this.get_linked_edges(e.node_renderer.data_source,e.edge_renderer.data_source,\"selection\");return o.update(s,i,n),e.node_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.node_view.model.data_source.selection_manager.get_or_create_inspector(i.node_view.model);o.update(t,n,r),i.node_view.model.data_source.setv({inspected:o},{silent:!0});var s=i.edge_view.model.data_source.selection_manager.get_or_create_inspector(i.edge_view.model),a=this.get_linked_edges(i.node_view.model.data_source,i.edge_view.model.data_source,\"inspection\");return s.update(a,n,r),i.edge_view.model.data_source.setv({inspected:s},{silent:!0}),i.node_view.model.data_source.inspect.emit([i.node_view,{geometry:e}]),!o.is_empty()},t}(o);(i.NodesAndLinkedEdges=a).initClass();var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EdgesAndLinkedNodes\"},t.prototype.hit_test=function(t,e){return this._hit_test_edges(t,e)},t.prototype.get_linked_nodes=function(e,t,i){var n=[];\"selection\"==i?n=t.selected.indices:\"inspection\"==i&&(n=t.inspected.indices);for(var r=[],o=0,s=n;o<s.length;o++){var a=s[o];r.push(t.data.start[a]),r.push(t.data.end[a])}var l=c.uniq(r).map(function(t){return u.indexOf(e.data.index,t)}),h=_.create_empty_hit_test_result();return h.indices=l,h},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.edge_renderer.data_source.selected;r.update(t,i,n);var o=e.node_renderer.data_source.selected,s=this.get_linked_nodes(e.node_renderer.data_source,e.edge_renderer.data_source,\"selection\");return o.update(s,i,n),e.edge_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.edge_view.model.data_source.selection_manager.get_or_create_inspector(i.edge_view.model);o.update(t,n,r),i.edge_view.model.data_source.setv({inspected:o},{silent:!0});var s=i.node_view.model.data_source.selection_manager.get_or_create_inspector(i.node_view.model),a=this.get_linked_nodes(i.node_view.model.data_source,i.edge_view.model.data_source,\"inspection\");return s.update(a,n,r),i.node_view.model.data_source.setv({inspected:s},{silent:!0}),i.edge_view.model.data_source.inspect.emit([i.edge_view,{geometry:e}]),!o.is_empty()},t}(o);(i.EdgesAndLinkedNodes=l).initClass()},function(t,e,i){var n=t(391);n.__exportStar(t(147),i),n.__exportStar(t(149),i),n.__exportStar(t(150),i)},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutProvider\"},t}(r.Model);(i.LayoutProvider=o).initClass()},function(t,e,i){var n=t(391),r=t(149),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"StaticLayoutProvider\",this.define({graph_layout:[o.Any,{}]})},t.prototype.get_node_coordinates=function(t){for(var e=[],i=[],n=t.data.index,r=0,o=n.length;r<o;r++){var s=this.graph_layout[n[r]],a=null!=s?s:[NaN,NaN],l=a[0],h=a[1];e.push(l),i.push(h)}return[e,i]},t.prototype.get_edge_coordinates=function(t){for(var e,i,n=[],r=[],o=t.data.start,s=t.data.end,a=null!=t.data.xs&&null!=t.data.ys,l=0,h=o.length;l<h;l++){var u=null!=this.graph_layout[o[l]]&&null!=this.graph_layout[s[l]];if(a&&u)n.push(t.data.xs[l]),r.push(t.data.ys[l]);else{var c=void 0,_=void 0;u?(e=[this.graph_layout[o[l]],this.graph_layout[s[l]]],_=e[0],c=e[1]):(_=(i=[[NaN,NaN],[NaN,NaN]])[0],c=i[1]),n.push([_[0],c[0]]),r.push([_[1],c[1]])}}return[n,r]},t}(r.LayoutProvider);(i.StaticLayoutProvider=s).initClass()},function(t,e,i){var n=t(391),h=t(79),r=t(187),o=t(15),u=t(44),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),Object.defineProperty(t.prototype,\"_x_range_name\",{get:function(){return this.model.x_range_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"_y_range_name\",{get:function(){return this.model.y_range_name},enumerable:!0,configurable:!0}),t.prototype.render=function(){if(this.model.visible){var t=this.plot_view.canvas_view.ctx;t.save(),this._draw_regions(t),this._draw_minor_grids(t),this._draw_grids(t),t.restore()}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.request_render()})},t.prototype._draw_regions=function(t){if(this.visuals.band_fill.doit){var e=this.model.grid_coords(\"major\",!1),i=e[0],n=e[1];this.visuals.band_fill.set_value(t);for(var r=0;r<i.length-1;r++)if(r%2==1){var o=this.plot_view.map_to_screen(i[r],n[r],this._x_range_name,this._y_range_name),s=o[0],a=o[1],l=this.plot_view.map_to_screen(i[r+1],n[r+1],this._x_range_name,this._y_range_name),h=l[0],u=l[1];t.fillRect(s[0],a[0],h[1]-s[0],u[1]-a[0]),t.fill()}}},t.prototype._draw_grids=function(t){if(this.visuals.grid_line.doit){var e=this.model.grid_coords(\"major\"),i=e[0],n=e[1];this._draw_grid_helper(t,this.visuals.grid_line,i,n)}},t.prototype._draw_minor_grids=function(t){if(this.visuals.minor_grid_line.doit){var e=this.model.grid_coords(\"minor\"),i=e[0],n=e[1];this._draw_grid_helper(t,this.visuals.minor_grid_line,i,n)}},t.prototype._draw_grid_helper=function(t,e,i,n){e.set_value(t);for(var r=0;r<i.length;r++){var o=this.plot_view.map_to_screen(i[r],n[r],this._x_range_name,this._y_range_name),s=o[0],a=o[1];t.beginPath(),t.moveTo(Math.round(s[0]),Math.round(a[0]));for(var l=1;l<s.length;l++)t.lineTo(Math.round(s[l]),Math.round(a[l]));t.stroke()}},t}(r.GuideRendererView);i.GridView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Grid\",this.prototype.default_view=s,this.mixins([\"line:grid_\",\"line:minor_grid_\",\"fill:band_\"]),this.define({bounds:[o.Any,\"auto\"],dimension:[o.Number,0],ticker:[o.Instance],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({level:\"underlay\",band_fill_color:null,band_fill_alpha:0,grid_line_color:\"#e5e5e5\",minor_grid_line_color:null})},t.prototype.ranges=function(){var t=this.dimension,e=(t+1)%2,i=this.plot.plot_canvas.frame,n=[i.x_ranges[this.x_range_name],i.y_ranges[this.y_range_name]];return[n[t],n[e]]},t.prototype.computed_bounds=function(){var t,e,i,n=this.ranges()[0],r=this.bounds,o=[n.min,n.max];if(u.isArray(r))e=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]),e<o[0]&&(e=o[0]),o[1]<i&&(i=o[1]);else{e=o[0],i=o[1];for(var s=0,a=this.plot.select(h.Axis);s<a.length;s++){var l=a[s];l.dimension==this.dimension&&l.x_range_name==this.x_range_name&&l.y_range_name==this.y_range_name&&(t=l.computed_bounds,e=t[0],i=t[1])}}return[e,i]},t.prototype.grid_coords=function(t,e){var i;void 0===e&&(e=!0);var n=this.dimension,r=(n+1)%2,o=this.ranges(),s=o[0],a=o[1],l=this.computed_bounds(),h=l[0],u=l[1];i=[Math.min(h,u),Math.max(h,u)],h=i[0],u=i[1];var c=this.ticker.get_ticks(h,u,s,a.min,{})[t],_=s.min,p=s.max,d=a.min,f=a.max,v=[[],[]];e||(c[0]!=_&&c.splice(0,0,_),c[c.length-1]!=p&&c.push(p));for(var m=0;m<c.length;m++)if(c[m]!=_&&c[m]!=p||!e){for(var g=[],y=[],b=0;b<2;b++){var x=d+(f-d)/1*b;g.push(c[m]),y.push(x)}v[n].push(g),v[r].push(y)}return v},t}(r.GuideRenderer);(i.Grid=a).initClass()},function(t,e,i){var n=t(151);i.Grid=n.Grid},function(t,e,i){var n=t(391);n.__exportStar(t(66),i),n.__exportStar(t(83),i),n.__exportStar(t(89),i),n.__exportStar(t(93),i),n.__exportStar(t(96),i),n.__exportStar(t(102),i),n.__exportStar(t(108),i),n.__exportStar(t(129),i),n.__exportStar(t(148),i),n.__exportStar(t(152),i),n.__exportStar(t(156),i),n.__exportStar(t(166),i),n.__exportStar(t(274),i),n.__exportStar(t(171),i),n.__exportStar(t(176),i),n.__exportStar(t(182),i),n.__exportStar(t(188),i),n.__exportStar(t(191),i),n.__exportStar(t(195),i),n.__exportStar(t(204),i),n.__exportStar(t(214),i),n.__exportStar(t(224),i),n.__exportStar(t(260),i)},function(t,e,i){var n=t(391),p=t(13),r=t(15),s=t(21),o=t(157),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.children.change,function(){return t.rebuild_child_views()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-grid\")},t.prototype.get_height=function(){var t=this.model.get_layoutable_children(),e=t.map(function(t){return t._height.value});return this.model._horizontal?s.max(e):s.sum(e)},t.prototype.get_width=function(){var t=this.model.get_layoutable_children(),e=t.map(function(t){return t._width.value});return this.model._horizontal?s.sum(e):s.max(e)},t}(o.LayoutDOMView);i.BoxView=a;var l=function(_){function w(t){return _.call(this,t)||this}return n.__extends(w,_),w.initClass=function(){this.prototype.type=\"Box\",this.prototype.default_view=a,this.define({children:[r.Array,[]]}),this.internal({spacing:[r.Number,6]})},w.prototype.initialize=function(){_.prototype.initialize.call(this),this._child_equal_size_width=new p.Variable(this.toString()+\".child_equal_size_width\"),this._child_equal_size_height=new p.Variable(this.toString()+\".child_equal_size_height\"),this._box_equal_size_top=new p.Variable(this.toString()+\".box_equal_size_top\"),this._box_equal_size_bottom=new p.Variable(this.toString()+\".box_equal_size_bottom\"),this._box_equal_size_left=new p.Variable(this.toString()+\".box_equal_size_left\"),this._box_equal_size_right=new p.Variable(this.toString()+\".box_equal_size_right\"),this._box_cell_align_top=new p.Variable(this.toString()+\".box_cell_align_top\"),this._box_cell_align_bottom=new p.Variable(this.toString()+\".box_cell_align_bottom\"),this._box_cell_align_left=new p.Variable(this.toString()+\".box_cell_align_left\"),this._box_cell_align_right=new p.Variable(this.toString()+\".box_cell_align_right\")},w.prototype.get_layoutable_children=function(){return this.children},w.prototype.get_constrained_variables=function(){return n.__assign({},_.prototype.get_constrained_variables.call(this),{box_equal_size_top:this._box_equal_size_top,box_equal_size_bottom:this._box_equal_size_bottom,box_equal_size_left:this._box_equal_size_left,box_equal_size_right:this._box_equal_size_right,box_cell_align_top:this._box_cell_align_top,box_cell_align_bottom:this._box_cell_align_bottom,box_cell_align_left:this._box_cell_align_left,box_cell_align_right:this._box_cell_align_right})},w.prototype.get_constraints=function(){var i=_.prototype.get_constraints.call(this),t=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];i.push.apply(i,t)},e=this.get_layoutable_children();if(0==e.length)return i;for(var n=0,r=e;n<r.length;n++){var o=r[n],s=o.get_constrained_variables(),a=this._child_rect(s);this._horizontal?null!=s.height&&t(p.EQ(a.height,[-1,this._height])):null!=s.width&&t(p.EQ(a.width,[-1,this._width])),this._horizontal?null!=s.box_equal_size_left&&null!=s.box_equal_size_right&&null!=s.width&&t(p.EQ([-1,s.box_equal_size_left],[-1,s.box_equal_size_right],s.width,this._child_equal_size_width)):null!=s.box_equal_size_top&&null!=s.box_equal_size_bottom&&null!=s.height&&t(p.EQ([-1,s.box_equal_size_top],[-1,s.box_equal_size_bottom],s.height,this._child_equal_size_height))}var l=this._info(e[0].get_constrained_variables());t(p.EQ(l.span.start,0));for(var h=1;h<e.length;h++){var u=this._info(e[h].get_constrained_variables());l.span.size&&t(p.EQ(l.span.start,l.span.size,[-1,u.span.start])),t(p.WEAK_EQ(l.whitespace.after,u.whitespace.before,0-this.spacing)),t(p.GE(l.whitespace.after,u.whitespace.before,0-this.spacing)),l=u}var c=e[e.length-1].get_constrained_variables();return this._horizontal?null!=c.width&&t(p.EQ(l.span.start,l.span.size,[-1,this._width])):null!=c.height&&t(p.EQ(l.span.start,l.span.size,[-1,this._height])),i=i.concat(this._align_outer_edges_constraints(!0),this._align_outer_edges_constraints(!1),this._align_inner_cell_edges_constraints(),this._box_equal_size_bounds(!0),this._box_equal_size_bounds(!1),this._box_cell_align_bounds(!0),this._box_cell_align_bounds(!1),this._box_whitespace(!0),this._box_whitespace(!1))},w.prototype._child_rect=function(t){return{x:t.origin_x,y:t.origin_y,width:t.width,height:t.height}},w.prototype._span=function(t){return this._horizontal?{start:t.x,size:t.width}:{start:t.y,size:t.height}},w.prototype._info=function(t){var e;e=this._horizontal?{before:t.whitespace_left,after:t.whitespace_right}:{before:t.whitespace_top,after:t.whitespace_bottom};var i=this._span(this._child_rect(t));return{span:i,whitespace:e}},w.prototype._flatten_cell_edge_variables=function(t){var e;e=t?w._top_bottom_inner_cell_edge_variables:w._left_right_inner_cell_edge_variables;for(var i=t!=this._horizontal,n=this.get_layoutable_children(),r=n.length,o={},s=0,a=0,l=n;a<l.length;a++){var h=l[a],u=void 0;u=h instanceof w?h._flatten_cell_edge_variables(t):{};for(var c=h.get_constrained_variables(),_=0,p=e;_<p.length;_++){var d=p[_];d in c&&(u[d]=[c[d]])}for(var f in u){var v=u[f],m=void 0;if(i){var g=f.split(\" \"),y=g[0],b=1<g.length?g[1]:\"\",x=this._horizontal?\"row\":\"col\";m=y+\" \"+x+\"-\"+r+\"-\"+s+\"-\"+b}else m=f;o[m]=m in o?o[m].concat(v):v}s++}return o},w.prototype._align_inner_cell_edges_constraints=function(){var t=[];if(null!=this.document&&s.includes(this.document.roots(),this)){var e=this._flatten_cell_edge_variables(this._horizontal);for(var i in e){var n=e[i];if(1<n.length)for(var r=n[0],o=1;o<n.length;o++)t.push(p.EQ(n[o],[-1,r]))}}return t},w.prototype._find_edge_leaves=function(t){var e=this.get_layoutable_children(),i=[[],[]];if(0<e.length)if(this._horizontal==t){var n=e[0],r=e[e.length-1];n instanceof w?i[0]=i[0].concat(n._find_edge_leaves(t)[0]):i[0].push(n),r instanceof w?i[1]=i[1].concat(r._find_edge_leaves(t)[1]):i[1].push(r)}else for(var o=0,s=e;o<s.length;o++){var a=s[o];if(a instanceof w){var l=a._find_edge_leaves(t);i[0]=i[0].concat(l[0]),i[1]=i[1].concat(l[1])}else i[0].push(a),i[1].push(a)}return i},w.prototype._align_outer_edges_constraints=function(t){var e,i,n=this._find_edge_leaves(t),r=n[0],o=n[1];t?(e=\"on_edge_align_left\",i=\"on_edge_align_right\"):(e=\"on_edge_align_top\",i=\"on_edge_align_bottom\");var s=function(t,e){for(var i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o.get_constrained_variables();e in s&&i.push(s[e])}return i},a=s(r,e),l=s(o,i),h=[],u=function(t){if(1<t.length)for(var e=t[0],i=1;i<t.length;i++){var n=t[i];h.push(p.EQ([-1,e],n))}};return u(a),u(l),h},w.prototype._box_insets_from_child_insets=function(t,e,i,a){var n,r,o,s,l=this._find_edge_leaves(t),h=l[0],u=l[1];t?(n=e+\"_left\",r=e+\"_right\",o=this[i+\"_left\"],s=this[i+\"_right\"]):(n=e+\"_top\",r=e+\"_bottom\",o=this[i+\"_top\"],s=this[i+\"_bottom\"]);var c=[],_=function(t,e,i){for(var n=0,r=e;n<r.length;n++){var o=r[n],s=o.get_constrained_variables();i in s&&(a?c.push(p.GE([-1,t],s[i])):c.push(p.EQ([-1,t],s[i])))}};return _(o,h,n),_(s,u,r),c},w.prototype._box_equal_size_bounds=function(t){return this._box_insets_from_child_insets(t,\"box_equal_size\",\"_box_equal_size\",!1)},w.prototype._box_cell_align_bounds=function(t){return this._box_insets_from_child_insets(t,\"box_cell_align\",\"_box_cell_align\",!1)},w.prototype._box_whitespace=function(t){return this._box_insets_from_child_insets(t,\"whitespace\",\"_whitespace\",!0)},w._left_right_inner_cell_edge_variables=[\"box_cell_align_left\",\"box_cell_align_right\"],w._top_bottom_inner_cell_edge_variables=[\"box_cell_align_top\",\"box_cell_align_bottom\"],w}(o.LayoutDOM);(i.Box=l).initClass()},function(t,e,i){var n=t(391),r=t(154),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-grid-column\")},e}(r.BoxView);i.ColumnView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e._horizontal=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Column\",this.prototype.default_view=o},t}(r.Box);(i.Column=s).initClass()},function(t,e,i){var n=t(154);i.Box=n.Box;var r=t(155);i.Column=r.Column;var o=t(157);i.LayoutDOM=o.LayoutDOM;var s=t(158);i.Row=s.Row;var a=t(159);i.Spacer=a.Spacer;var l=t(160);i.WidgetBox=l.WidgetBox},function(t,e,i){var n=t(391),r=t(59),g=t(5),o=t(15),s=t(11),h=t(13),a=t(4),l=t(6),u=function(i){function t(){var t=null!==i&&i.apply(this,arguments)||this;return t._solver_inited=!1,t._idle_notified=!1,t}return n.__extends(t,i),t.prototype.initialize=function(t){i.prototype.initialize.call(this,t),this.is_root&&(this._solver=new h.Solver),this.child_views={},this.build_child_views()},t.prototype.remove=function(){for(var t in this.child_views){var e=this.child_views[t];e.remove()}this.child_views={},i.prototype.remove.call(this)},t.prototype.has_finished=function(){if(!i.prototype.has_finished.call(this))return!1;for(var t in this.child_views){var e=this.child_views[t];if(!e.has_finished())return!1}return!0},t.prototype.notify_finished=function(){this.is_root?!this._idle_notified&&this.has_finished()&&null!=this.model.document&&(this._idle_notified=!0,this.model.document.notify_idle(this.model)):i.prototype.notify_finished.call(this)},t.prototype._calc_width_height=function(){for(var t=this.el;t=t.parentElement;)if(!t.classList.contains(\"bk-root\")){if(t==document.body){var e=g.margin(document.body),i=e.left,n=e.right,r=e.top,o=e.bottom,s=document.documentElement.clientWidth-i-n,a=document.documentElement.clientHeight-r-o;return[s,a]}var l=g.padding(t),h=l.left,u=l.right,c=l.top,_=l.bottom,p=t.getBoundingClientRect(),d=p.width,f=p.height,v=d-h-u,m=f-c-_;switch(this.model.sizing_mode){case\"scale_width\":if(0<v)return[v,0<m?m:null];break;case\"scale_height\":if(0<m)return[0<v?v:null,m];break;case\"scale_both\":case\"stretch_both\":if(0<v||0<m)return[0<v?v:null,0<m?m:null];break;default:throw new Error(\"unreachable\")}}return[null,null]},t.prototype._init_solver=function(){this._root_width=new h.Variable(this.toString()+\".root_width\"),this._root_height=new h.Variable(this.toString()+\".root_height\"),this._solver.add_edit_variable(this._root_width,NaN),this._solver.add_edit_variable(this._root_height,NaN);for(var t=this.model.get_all_editables(),e=0,i=t;e<i.length;e++){var n=i[e];this._solver.add_edit_variable(n,h.Strength.strong)}for(var r=this.model.get_all_constraints(),o=0,s=r;o<s.length;o++){var a=s[o];this._solver.add_constraint(a)}var l=this.model.get_constrained_variables();null!=l.width&&this._solver.add_constraint(h.EQ(l.width,this._root_width)),null!=l.height&&this._solver.add_constraint(h.EQ(l.height,this._root_height)),this._solver.update_variables(),this._solver_inited=!0},t.prototype._suggest_dims=function(t,e){var i,n=this.model.get_constrained_variables();null==n.width&&null==n.height||(null!=t&&null!=e||(i=this._calc_width_height(),t=i[0],e=i[1]),null!=n.width&&null!=t&&this._solver.suggest_value(this._root_width,t),null!=n.height&&null!=e&&this._solver.suggest_value(this._root_height,e),this._solver.update_variables())},t.prototype.resize=function(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this.is_root?this._do_layout(!1,t,e):this.root.resize(t,e)},t.prototype.partial_layout=function(){this.is_root?this._do_layout(!1):this.root.partial_layout()},t.prototype.layout=function(){this.is_root?this._do_layout(!0):this.root.layout()},t.prototype._do_layout=function(t,e,i){void 0===e&&(e=null),void 0===i&&(i=null),this._solver_inited&&!t||(this._solver.clear(),this._init_solver()),this._suggest_dims(e,i),this._layout(),this._layout(),this._layout(!0),this.notify_finished()},t.prototype._layout=function(t){void 0===t&&(t=!1);for(var e=0,i=this.model.get_layoutable_children();e<i.length;e++){var n=i[e],r=this.child_views[n.id];null!=r._layout&&r._layout(t)}this.render(),t&&(this._has_finished=!0)},t.prototype.rebuild_child_views=function(){this.solver.clear(),this.build_child_views(),this.layout()},t.prototype.build_child_views=function(){var t=this.model.get_layoutable_children();a.build_views(this.child_views,t,{parent:this}),g.empty(this.el);for(var e=0,i=t;e<i.length;e++){var n=i[e],r=this.child_views[n.id];this.el.appendChild(r.el)}},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.is_root&&window.addEventListener(\"resize\",this),this.connect(this.model.properties.sizing_mode.change,function(){return t.layout()})},t.prototype.handleEvent=function(){this.resize()},t.prototype.disconnect_signals=function(){window.removeEventListener(\"resize\",this),i.prototype.disconnect_signals.call(this)},t.prototype._render_classes=function(){this.el.className=\"\";for(var t=0,e=this.css_classes();t<e.length;t++){var i=e[t];this.el.classList.add(i)}this.el.classList.add(\"bk-layout-\"+this.model.sizing_mode);for(var n=0,r=this.model.css_classes;n<r.length;n++){var o=r[n];this.el.classList.add(o)}},t.prototype.render=function(){switch(this._render_classes(),this.model.sizing_mode){case\"fixed\":var t=void 0;t=null!=this.model.width?this.model.width:this.get_width(),this.model.setv({width:t},{silent:!0});var e=void 0;e=null!=this.model.height?this.model.height:this.get_height(),this.model.setv({height:e},{silent:!0}),this.solver.suggest_value(this.model._width,t),this.solver.suggest_value(this.model._height,e);break;case\"scale_width\":var e=this.get_height();this.solver.suggest_value(this.model._height,e);break;case\"scale_height\":var t=this.get_width();this.solver.suggest_value(this.model._width,t);break;case\"scale_both\":var i=this.get_width_height(),t=i[0],e=i[1];this.solver.suggest_value(this.model._width,t),this.solver.suggest_value(this.model._height,e)}this.solver.update_variables(),this.position()},t.prototype.position=function(){switch(this.model.sizing_mode){case\"fixed\":case\"scale_width\":case\"scale_height\":this.el.style.position=\"relative\",this.el.style.left=\"\",this.el.style.top=\"\";break;case\"scale_both\":case\"stretch_both\":this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\"}this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\"},t.prototype.get_width_height=function(){var t=this._calc_width_height(),e=t[0],i=t[1];if(null==e&&null==i)throw new Error(\"detached element\");var n=this.model.get_aspect_ratio();if(null!=e&&null==i)return[e,e/n];if(null==e&&null!=i)return[i*n,i];var r,o,s=e,a=e/n,l=i*n,h=i;return s<l?(r=s,o=a):(r=l,o=h),[r,o]},t}(l.DOMView);i.LayoutDOMView=u;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutDOM\",this.define({height:[o.Number],width:[o.Number],disabled:[o.Bool,!1],sizing_mode:[o.SizingMode,\"fixed\"],css_classes:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._width=new h.Variable(this.toString()+\".width\"),this._height=new h.Variable(this.toString()+\".height\"),this._left=new h.Variable(this.toString()+\".left\"),this._right=new h.Variable(this.toString()+\".right\"),this._top=new h.Variable(this.toString()+\".top\"),this._bottom=new h.Variable(this.toString()+\".bottom\"),this._dom_top=new h.Variable(this.toString()+\".dom_top\"),this._dom_left=new h.Variable(this.toString()+\".dom_left\"),this._width_minus_right=new h.Variable(this.toString()+\".width_minus_right\"),this._height_minus_bottom=new h.Variable(this.toString()+\".height_minus_bottom\"),this._whitespace_top=new h.Variable(this.toString()+\".whitespace_top\"),this._whitespace_bottom=new h.Variable(this.toString()+\".whitespace_bottom\"),this._whitespace_left=new h.Variable(this.toString()+\".whitespace_left\"),this._whitespace_right=new h.Variable(this.toString()+\".whitespace_right\")},Object.defineProperty(t.prototype,\"layout_bbox\",{get:function(){return{top:this._top.value,left:this._left.value,width:this._width.value,height:this._height.value,right:this._right.value,bottom:this._bottom.value,dom_top:this._dom_top.value,dom_left:this._dom_left.value}},enumerable:!0,configurable:!0}),t.prototype.dump_layout=function(){for(var t,e={},i=[this];t=i.shift();)i.push.apply(i,t.get_layoutable_children()),e[t.toString()]=t.layout_bbox;console.table(e)},t.prototype.get_all_constraints=function(){for(var t=this.get_constraints(),e=0,i=this.get_layoutable_children();e<i.length;e++){var n=i[e];t=n instanceof s.LayoutCanvas?t.concat(n.get_constraints()):t.concat(n.get_all_constraints())}return t},t.prototype.get_all_editables=function(){for(var t=this.get_editables(),e=0,i=this.get_layoutable_children();e<i.length;e++){var n=i[e];t=n instanceof s.LayoutCanvas?t.concat(n.get_editables()):t.concat(n.get_all_editables())}return t},t.prototype.get_constraints=function(){return[h.GE(this._dom_left),h.GE(this._dom_top),h.GE(this._left),h.GE(this._width,[-1,this._right]),h.GE(this._top),h.GE(this._height,[-1,this._bottom]),h.EQ(this._width_minus_right,[-1,this._width],this._right),h.EQ(this._height_minus_bottom,[-1,this._height],this._bottom)]},t.prototype.get_layoutable_children=function(){return[]},t.prototype.get_editables=function(){switch(this.sizing_mode){case\"fixed\":return[this._height,this._width];case\"scale_width\":return[this._height];case\"scale_height\":return[this._width];case\"scale_both\":return[this._width,this._height];default:return[]}},t.prototype.get_constrained_variables=function(){var t={origin_x:this._dom_left,origin_y:this._dom_top,whitespace_top:this._whitespace_top,whitespace_bottom:this._whitespace_bottom,whitespace_left:this._whitespace_left,whitespace_right:this._whitespace_right};switch(this.sizing_mode){case\"stretch_both\":t.width=this._width,t.height=this._height;break;case\"scale_width\":t.width=this._width;break;case\"scale_height\":t.height=this._height}return t},t.prototype.get_aspect_ratio=function(){return this.width/this.height},t}(r.Model);(i.LayoutDOM=c).initClass()},function(t,e,i){var n=t(391),r=t(154),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-grid-row\")},e}(r.BoxView);i.RowView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e._horizontal=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Row\",this.prototype.default_view=o},t}(r.Box);(i.Row=s).initClass()},function(t,e,i){var n=t(391),r=t(157),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),\"fixed\"==this.model.sizing_mode&&(this.el.style.width=this.model.width+\"px\",this.el.style.height=this.model.height+\"px\")},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-spacer-box\")},e.prototype.get_width=function(){return 1},e.prototype.get_height=function(){return 1},e}(r.LayoutDOMView);i.SpacerView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Spacer\",this.prototype.default_view=o},t.prototype.get_constrained_variables=function(){return n.__assign({},e.prototype.get_constrained_variables.call(this),{on_edge_align_top:this._top,on_edge_align_bottom:this._height_minus_bottom,on_edge_align_left:this._left,on_edge_align_right:this._width_minus_right,box_cell_align_top:this._top,box_cell_align_bottom:this._height_minus_bottom,box_cell_align_left:this._left,box_cell_align_right:this._width_minus_right,box_equal_size_top:this._top,box_equal_size_bottom:this._height_minus_bottom,box_equal_size_left:this._left,box_equal_size_right:this._width_minus_right})},t}(r.LayoutDOM);(i.Spacer=s).initClass()},function(t,e,i){var n=t(391),r=t(14),o=t(15),s=t(157),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.children.change,function(){return t.rebuild_child_views()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-widget-box\")},t.prototype.render=function(){if(this._render_classes(),\"fixed\"==this.model.sizing_mode||\"scale_height\"==this.model.sizing_mode){var t=this.get_width();this.model._width.value!=t&&this.solver.suggest_value(this.model._width,t)}if(\"fixed\"==this.model.sizing_mode||\"scale_width\"==this.model.sizing_mode){var e=this.get_height();this.model._height.value!=e&&this.solver.suggest_value(this.model._height,e)}if(this.solver.update_variables(),\"stretch_both\"==this.model.sizing_mode)this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\",this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\";else{var i=void 0;i=0<this.model._width.value-20?this.model._width.value-20+\"px\":\"100%\",this.el.style.width=i}},t.prototype.get_height=function(){var t=0;for(var e in this.child_views){var i=this.child_views[e],n=i.el,r=getComputedStyle(n),o=parseInt(r.marginTop)||0,s=parseInt(r.marginBottom)||0;t+=n.offsetHeight+o+s}return t+20},t.prototype.get_width=function(){if(null!=this.model.width)return this.model.width;var t=this.el.scrollWidth+20;for(var e in this.child_views){var i=this.child_views[e],n=i.el.scrollWidth;t<n&&(t=n)}return t},t}(s.LayoutDOMView);i.WidgetBoxView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"WidgetBox\",this.prototype.default_view=a,this.define({children:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),\"fixed\"==this.sizing_mode&&null==this.width&&(this.width=300,r.logger.info(\"WidgetBox mode is fixed, but no width specified. Using default of 300.\"))},t.prototype.get_constrained_variables=function(){var t=n.__assign({},e.prototype.get_constrained_variables.call(this),{on_edge_align_top:this._top,on_edge_align_bottom:this._height_minus_bottom,on_edge_align_left:this._left,on_edge_align_right:this._width_minus_right,box_cell_align_top:this._top,box_cell_align_bottom:this._height_minus_bottom,box_cell_align_left:this._left,box_cell_align_right:this._width_minus_right,box_equal_size_top:this._top,box_equal_size_bottom:this._height_minus_bottom});return\"fixed\"!=this.sizing_mode&&(t.box_equal_size_left=this._left,t.box_equal_size_right=this._width_minus_right),t},t.prototype.get_layoutable_children=function(){return this.children},t}(s.LayoutDOM);(i.WidgetBox=l).initClass()},function(t,e,i){var n=t(391),o=t(162),r=t(164),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalColorMapper\",this.define({factors:[s.Array],start:[s.Number,0],end:[s.Number]})},t.prototype._v_compute=function(t,e,i,n){var r=n.nan_color;o.cat_v_compute(t,this.factors,i,e,this.start,this.end,r)},t}(r.ColorMapper);(i.CategoricalColorMapper=a).initClass()},function(t,e,i){var _=t(21),p=t(44);function d(t,e){if(t.length!=e.length)return!1;for(var i=0,n=t.length;i<n;i++)if(t[i]!==e[i])return!1;return!0}i._cat_equals=d,i.cat_v_compute=function(o,s,a,l,h,u,c){for(var t=function(t,e){var i=o[t],n=void 0;p.isString(i)?n=s.indexOf(i):(null!=h?i=null!=u?i.slice(h,u):i.slice(h):null!=u&&(i=i.slice(0,u)),n=1==i.length?s.indexOf(i[0]):_.findIndex(s,function(t){return d(t,i)}));var r=void 0;r=n<0||n>=a.length?c:a[n],l[t]=r},e=0,i=o.length;e<i;e++)t(e,i)}},function(t,e,i){var n=t(391),r=t(162),o=t(169),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalMarkerMapper\",this.define({factors:[s.Array],markers:[s.Array],start:[s.Number,0],end:[s.Number],default_value:[s.String,\"circle\"]})},t.prototype.v_compute=function(t){var e=new Array(t.length);return r.cat_v_compute(t,this.factors,this.markers,e,this.start,this.end,this.default_value),e},t}(o.Mapper);(i.CategoricalMarkerMapper=a).initClass()},function(t,e,i){var n=t(391),r=t(169),o=t(15),s=t(27),a=t(28);function l(t){return\"#\"!=t[0]&&(t=s.color2hex(t)),9!=t.length&&(t+=\"ff\"),parseInt(t.slice(1),16)}function h(t){for(var e=new Uint32Array(t.length),i=0,n=t.length;i<n;i++)e[i]=l(t[i]);return e}function u(t){if(a.is_little_endian)for(var e=new DataView(t.buffer),i=0,n=t.length;i<n;i++)e.setUint32(4*i,t[i]);return new Uint8Array(t.buffer)}i._convert_color=l,i._convert_palette=h,i._uint32_to_rgba=u;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ColorMapper\",this.define({palette:[o.Any],nan_color:[o.Color,\"gray\"]})},t.prototype.v_compute=function(t){var e=new Array(t.length);return this._v_compute(t,e,this.palette,this._colors(function(t){return t})),e},Object.defineProperty(t.prototype,\"rgba_mapper\",{get:function(){var i=this,n=h(this.palette),r=this._colors(l);return{v_compute:function(t){var e=new Uint32Array(t.length);return i._v_compute(t,e,n,r),u(e)}}},enumerable:!0,configurable:!0}),t.prototype._colors=function(t){return{nan_color:t(this.nan_color)}},t}(r.Mapper);(i.ColorMapper=c).initClass()},function(t,e,i){var n=t(391),r=t(164),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousColorMapper\",this.define({high:[o.Number],low:[o.Number],high_color:[o.Color],low_color:[o.Color]})},t.prototype._colors=function(t){return n.__assign({},e.prototype._colors.call(this,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})},t}(r.ColorMapper);(i.ContinuousColorMapper=s).initClass()},function(t,e,i){var n=t(161);i.CategoricalColorMapper=n.CategoricalColorMapper;var r=t(163);i.CategoricalMarkerMapper=r.CategoricalMarkerMapper;var o=t(165);i.ContinuousColorMapper=o.ContinuousColorMapper;var s=t(164);i.ColorMapper=s.ColorMapper;var a=t(167);i.LinearColorMapper=a.LinearColorMapper;var l=t(168);i.LogColorMapper=l.LogColorMapper},function(t,e,i){var n=t(391),r=t(165),m=t(22),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearColorMapper\"},t.prototype._v_compute=function(t,e,i,n){for(var r=n.nan_color,o=n.low_color,s=n.high_color,a=null!=this.low?this.low:m.min(t),l=null!=this.high?this.high:m.max(t),h=i.length-1,u=1/(l-a),c=1/i.length,_=0,p=t.length;_<p;_++){var d=t[_];if(isNaN(d))e[_]=r;else if(d!=l){var f=(d-a)*u,v=Math.floor(f/c);e[_]=v<0?null!=o?o:i[0]:h<v?null!=s?s:i[h]:i[v]}else e[_]=i[h]}},t}(r.ContinuousColorMapper);(i.LinearColorMapper=o).initClass()},function(t,e,i){var n=t(391),r=t(165),m=t(22),g=null!=Math.log1p?Math.log1p:function(t){return Math.log(1+t)},o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogColorMapper\"},t.prototype._v_compute=function(t,e,i,n){for(var r=n.nan_color,o=n.low_color,s=n.high_color,a=i.length,l=null!=this.low?this.low:m.min(t),h=null!=this.high?this.high:m.max(t),u=a/(g(h)-g(l)),c=i.length-1,_=0,p=t.length;_<p;_++){var d=t[_];if(isNaN(d))e[_]=r;else if(h<d)e[_]=null!=s?s:i[c];else if(d!=h)if(d<l)e[_]=null!=o?o:i[0];else{var f=g(d)-g(l),v=Math.floor(f*u);c<v&&(v=c),e[_]=i[v]}else e[_]=i[c]}},t}(r.ContinuousColorMapper);(i.LogColorMapper=o).initClass()},function(t,e,i){var n=t(391),r=t(279),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Mapper\"},t.prototype.compute=function(t){throw new Error(\"mapping single values is not supported\")},t}(r.Transform);(i.Mapper=o).initClass()},function(t,e,i){var o=t(391),s=t(172),h=Math.sqrt(3);function a(t,e){t.moveTo(-e,e),t.lineTo(e,-e),t.moveTo(-e,-e),t.lineTo(e,e)}function l(t,e){t.moveTo(0,e),t.lineTo(0,-e),t.moveTo(-e,0),t.lineTo(e,0)}function u(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 c(t,e){var i=e*h,n=i/3;t.moveTo(-e,n),t.lineTo(e,n),t.lineTo(0,n-i),t.closePath()}function n(t,e,i,n,r){var o=.65*i;l(t,i),a(t,o),n.doit&&(n.set_vectorize(t,e),t.stroke())}function r(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function _(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function p(t,e,i,n,r){l(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function d(t,e,i,n,r){u(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function f(t,e,i,n,r){u(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function v(t,e,i,n,r){var o,s,a,l;l=h*(a=(s=i)/2),(o=t).moveTo(s,0),o.lineTo(a,-l),o.lineTo(-a,-l),o.lineTo(-s,0),o.lineTo(-a,l),o.lineTo(a,l),o.closePath(),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function m(t,e,i,n,r){t.rotate(Math.PI),c(t,i),t.rotate(-Math.PI),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function g(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function y(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function b(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function x(t,e,i,n,r){c(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function w(t,e,i,n,r){var o,s;s=i,(o=t).moveTo(-s,0),o.lineTo(s,0),n.doit&&(n.set_vectorize(t,e),t.stroke())}function k(t,e,i,n,r){a(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function S(i,n){var r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.initClass=function(){this.prototype._render_one=n},e}(s.MarkerView);r.initClass();var t=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.default_view=r,this.prototype.type=i},e}(s.Marker);return t.initClass(),t}i.Asterisk=S(\"Asterisk\",n),i.CircleCross=S(\"CircleCross\",r),i.CircleX=S(\"CircleX\",_),i.Cross=S(\"Cross\",p),i.Diamond=S(\"Diamond\",d),i.DiamondCross=S(\"DiamondCross\",f),i.Hex=S(\"Hex\",v),i.InvertedTriangle=S(\"InvertedTriangle\",m),i.Square=S(\"Square\",g),i.SquareCross=S(\"SquareCross\",y),i.SquareX=S(\"SquareX\",b),i.Triangle=S(\"Triangle\",x),i.Dash=S(\"Dash\",w),i.X=S(\"X\",k),i.marker_funcs={asterisk:n,circle:function(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())},circle_cross:r,circle_x:_,cross:p,diamond:d,diamond_cross:f,hex:v,inverted_triangle:m,square:g,square_cross:y,square_x:b,triangle:x,dash:w,x:k}},function(t,e,i){var n=t(391);n.__exportStar(t(170),i);var r=t(173);i.Scatter=r.Scatter},function(t,e,i){var n=t(391),r=t(146),w=t(9),o=t(15),h=t(21),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._size,s=i._angle,a=0,l=e;a<l.length;a++){var h=l[a];if(!isNaN(n[h]+r[h]+o[h]+s[h])){var u=o[h]/2;t.beginPath(),t.translate(n[h],r[h]),s[h]&&t.rotate(s[h]),this._render_one(t,h,u,this.visuals.line,this.visuals.fill),s[h]&&t.rotate(-s[h]),t.translate(-n[h],-r[h])}}},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.bbox.h_range,e=t.start-this.max_size,i=t.end+this.max_size,n=this.renderer.xscale.r_invert(e,i),r=n[0],o=n[1],s=this.renderer.plot_view.frame.bbox.v_range,a=s.start-this.max_size,l=s.end+this.max_size,h=this.renderer.yscale.r_invert(a,l),u=h[0],c=h[1],_=w.validate_bbox_coords([r,o],[u,c]);return this.index.indices(_)},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=e-this.max_size,r=e+this.max_size,o=this.renderer.xscale.r_invert(n,r),s=o[0],a=o[1],l=i-this.max_size,h=i+this.max_size,u=this.renderer.yscale.r_invert(l,h),c=u[0],_=u[1],p=w.validate_bbox_coords([s,a],[c,_]),d=this.index.indices(p),f=[],v=0,m=d;v<m.length;v++){var g=m[v],y=this._size[g]/2,b=Math.abs(this.sx[g]-e)+Math.abs(this.sy[g]-i);Math.abs(this.sx[g]-e)<=y&&Math.abs(this.sy[g]-i)<=y&&f.push([g,b])}return w.create_hit_test_result_from_hits(f)},e.prototype._hit_span=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.bounds(),u=h.minX,c=h.minY,_=h.maxX,p=h.maxY,d=w.create_empty_hit_test_result();if(\"h\"==t.direction){o=c,s=p;var f=this.max_size/2,v=a-f,m=a+f;e=this.renderer.xscale.r_invert(v,m),n=e[0],r=e[1]}else{n=u,r=_;var f=this.max_size/2,g=l-f,y=l+f;i=this.renderer.yscale.r_invert(g,y),o=i[0],s=i[1]}var b=w.validate_bbox_coords([n,r],[o,s]),x=this.index.indices(b);return d.indices=x,d},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=w.validate_bbox_coords([s,a],[h,u]),_=w.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype._hit_poly=function(t){for(var e=t.sx,i=t.sy,n=h.range(0,this.sx.length),r=[],o=0,s=n.length;o<s;o++){var a=n[o];w.point_in_poly(this.sx[o],this.sy[o],e,i)&&r.push(a)}var l=w.create_empty_hit_test_result();return l.indices=r,l},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.x1,o=e.y0,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+r)/2;var h=new Array(a);h[i]=(o+s)/2;var u=new Array(a);u[i]=.4*Math.min(Math.abs(r-n),Math.abs(s-o));var c=new Array(a);c[i]=0,this._render(t,[i],{sx:l,sy:h,_size:u,_angle:c})},e}(r.XYGlyphView);i.MarkerView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.mixins([\"line\",\"fill\"]),this.define({size:[o.DistanceSpec,{units:\"screen\",value:4}],angle:[o.AngleSpec,0]})},t}(r.XYGlyph);(i.Marker=a).initClass()},function(t,e,i){var n=t(391),r=t(172),_=t(170),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._size,s=i._angle,a=i._marker,l=0,h=e;l<h.length;l++){var u=h[l];if(!isNaN(n[u]+r[u]+o[u]+s[u])&&null!=a[u]){var c=o[u]/2;t.beginPath(),t.translate(n[u],r[u]),s[u]&&t.rotate(s[u]),_.marker_funcs[a[u]](t,u,c,this.visuals.line,this.visuals.fill),s[u]&&t.rotate(-s[u]),t.translate(-n[u],-r[u])}}},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.x1,o=e.y0,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+r)/2;var h=new Array(a);h[i]=(o+s)/2;var u=new Array(a);u[i]=.4*Math.min(Math.abs(r-n),Math.abs(s-o));var c=new Array(a);c[i]=0;var _=new Array(a);_[i]=this._marker[i],this._render(t,[i],{sx:l,sy:h,_size:u,_angle:c,_marker:_})},e}(r.MarkerView);i.ScatterView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Scatter\",this.prototype.default_view=s,this.define({marker:[o.MarkerSpec,{value:\"circle\"}]})},t}(r.Marker);(i.Scatter=a).initClass()},function(t,e,i){var n=t(391),r=t(14),o=t(175),s=t(177),a=t(15),l=t(59),h=t(184),u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MapOptions\",this.define({lat:[a.Number],lng:[a.Number],zoom:[a.Number,12]})},t}(l.Model);(i.MapOptions=u).initClass();var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapOptions\",this.define({map_type:[a.String,\"roadmap\"],scale_control:[a.Bool,!1],styles:[a.String],tilt:[a.Int,45]})},t}(u);(i.GMapOptions=c).initClass();var _=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(s.PlotView);i.GMapPlotView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapPlot\",this.prototype.default_view=_,this.define({map_options:[a.Instance],api_key:[a.String]}),this.override({x_range:function(){return new h.Range1d},y_range:function(){return new h.Range1d}})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.api_key||r.logger.error(\"api_key is required. See https://developers.google.com/maps/documentation/javascript/get-api-key for more information on how to obtain your own.\")},t.prototype._init_plot_canvas=function(){return new o.GMapPlotCanvas({plot:this})},t}(s.Plot);(i.GMapPlot=p).initClass()},function(t,e,i){var n=t(391),r=t(19),c=t(33),o=t(178),s=new r.Signal0({},\"gmaps_ready\"),a=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.initialize=function(t){var e=this;this.pause(),a.prototype.initialize.call(this,t),this._tiles_loaded=!1,this.zoom_count=0;var i=this.model.plot.map_options,n=i.zoom,r=i.lat,o=i.lng;this.initial_zoom=n,this.initial_lat=r,this.initial_lng=o,this.canvas_view.map_el.style.position=\"absolute\",\"undefined\"!=typeof google&&null!=google.maps||(\"undefined\"==typeof _bokeh_gmaps_callback&&function(t){_bokeh_gmaps_callback=function(){return s.emit()};var e=document.createElement(\"script\");e.type=\"text/javascript\",e.src=\"https://maps.googleapis.com/maps/api/js?key=\"+t+\"&callback=_bokeh_gmaps_callback\",document.body.appendChild(e)}(this.model.plot.api_key),s.connect(function(){return e.request_render()})),this.unpause()},t.prototype.update_range=function(t){if(null==t)this.map.setCenter({lat:this.initial_lat,lng:this.initial_lng}),this.map.setOptions({zoom:this.initial_zoom}),a.prototype.update_range.call(this,null);else if(null!=t.sdx||null!=t.sdy)this.map.panBy(t.sdx||0,t.sdy||0),a.prototype.update_range.call(this,t);else if(null!=t.factor){var e=void 0;if(10!==this.zoom_count)return void(this.zoom_count+=1);this.zoom_count=0,this.pause(),a.prototype.update_range.call(this,t),e=t.factor<0?-1:1;var i=this.map.getZoom(),n=i+e;if(2<=n){this.map.setZoom(n);var r=this._get_projected_bounds(),o=r[0],s=r[1];s-o<0&&this.map.setZoom(i)}this.unpause()}this._set_bokeh_ranges()},t.prototype._build_map=function(){var t=this,e=google.maps;this.map_types={satellite:e.MapTypeId.SATELLITE,terrain:e.MapTypeId.TERRAIN,roadmap:e.MapTypeId.ROADMAP,hybrid:e.MapTypeId.HYBRID};var i=this.model.plot.map_options,n={center:new e.LatLng(i.lat,i.lng),zoom:i.zoom,disableDefaultUI:!0,mapTypeId:this.map_types[i.map_type],scaleControl:i.scale_control,tilt:i.tilt};null!=i.styles&&(n.styles=JSON.parse(i.styles)),this.map=new e.Map(this.canvas_view.map_el,n),e.event.addListener(this.map,\"idle\",function(){return t._set_bokeh_ranges()}),e.event.addListener(this.map,\"bounds_changed\",function(){return t._set_bokeh_ranges()}),e.event.addListenerOnce(this.map,\"tilesloaded\",function(){return t._render_finished()}),this.connect(this.model.plot.properties.map_options.change,function(){return t._update_options()}),this.connect(this.model.plot.map_options.properties.styles.change,function(){return t._update_styles()}),this.connect(this.model.plot.map_options.properties.lat.change,function(){return t._update_center(\"lat\")}),this.connect(this.model.plot.map_options.properties.lng.change,function(){return t._update_center(\"lng\")}),this.connect(this.model.plot.map_options.properties.zoom.change,function(){return t._update_zoom()}),this.connect(this.model.plot.map_options.properties.map_type.change,function(){return t._update_map_type()}),this.connect(this.model.plot.map_options.properties.scale_control.change,function(){return t._update_scale_control()}),this.connect(this.model.plot.map_options.properties.tilt.change,function(){return t._update_tilt()})},t.prototype._render_finished=function(){this._tiles_loaded=!0,this.notify_finished()},t.prototype.has_finished=function(){return a.prototype.has_finished.call(this)&&!0===this._tiles_loaded},t.prototype._get_latlon_bounds=function(){var t=this.map.getBounds(),e=t.getNorthEast(),i=t.getSouthWest(),n=i.lng(),r=e.lng(),o=i.lat(),s=e.lat();return[n,r,o,s]},t.prototype._get_projected_bounds=function(){var t=this._get_latlon_bounds(),e=t[0],i=t[1],n=t[2],r=t[3],o=c.wgs84_mercator.forward([e,n]),s=o[0],a=o[1],l=c.wgs84_mercator.forward([i,r]),h=l[0],u=l[1];return[s,h,a,u]},t.prototype._set_bokeh_ranges=function(){var t=this._get_projected_bounds(),e=t[0],i=t[1],n=t[2],r=t[3];this.frame.x_range.setv({start:e,end:i}),this.frame.y_range.setv({start:n,end:r})},t.prototype._update_center=function(t){var e=this.map.getCenter().toJSON();e[t]=this.model.plot.map_options[t],this.map.setCenter(e),this._set_bokeh_ranges()},t.prototype._update_map_type=function(){this.map.setOptions({mapTypeId:this.map_types[this.model.plot.map_options.map_type]})},t.prototype._update_scale_control=function(){this.map.setOptions({scaleControl:this.model.plot.map_options.scale_control})},t.prototype._update_tilt=function(){this.map.setOptions({tilt:this.model.plot.map_options.tilt})},t.prototype._update_options=function(){this._update_styles(),this._update_center(\"lat\"),this._update_center(\"lng\"),this._update_zoom(),this._update_map_type()},t.prototype._update_styles=function(){this.map.setOptions({styles:JSON.parse(this.model.plot.map_options.styles)})},t.prototype._update_zoom=function(){this.map.setOptions({zoom:this.model.plot.map_options.zoom}),this._set_bokeh_ranges()},t.prototype._map_hook=function(t,e){var i=e[0],n=e[1],r=e[2],o=e[3];this.canvas_view.map_el.style.top=n+\"px\",this.canvas_view.map_el.style.left=i+\"px\",this.canvas_view.map_el.style.width=r+\"px\",this.canvas_view.map_el.style.height=o+\"px\",null==this.map&&\"undefined\"!=typeof google&&null!=google.maps&&this._build_map()},t.prototype._paint_empty=function(t,e){var i=this.canvas._width.value,n=this.canvas._height.value,r=e[0],o=e[1],s=e[2],a=e[3];t.clearRect(0,0,i,n),t.beginPath(),t.moveTo(0,0),t.lineTo(0,n),t.lineTo(i,n),t.lineTo(i,0),t.lineTo(0,0),t.moveTo(r,o),t.lineTo(r+s,o),t.lineTo(r+s,o+a),t.lineTo(r,o+a),t.lineTo(r,o),t.closePath(),t.fillStyle=this.model.plot.border_fill_color,t.fill()},t}(o.PlotCanvasView);i.GMapPlotCanvasView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapPlotCanvas\",this.prototype.default_view=a},t.prototype.initialize=function(){this.use_map=!0,e.prototype.initialize.call(this)},t}(o.PlotCanvas);(i.GMapPlotCanvas=l).initClass()},function(t,e,i){var n=t(174);i.MapOptions=n.MapOptions;var r=t(174);i.GMapOptions=r.GMapOptions;var o=t(174);i.GMapPlot=o.GMapPlot;var s=t(175);i.GMapPlotCanvas=s.GMapPlotCanvas;var a=t(177);i.Plot=a.Plot;var l=t(178);i.PlotCanvas=l.PlotCanvas},function(t,e,i){var o=t(391),n=t(13),r=t(14),s=t(15),f=t(19),a=t(21),v=t(32),m=t(44),l=t(157),h=t(75),u=t(192),c=t(268),_=t(76),p=t(178),g=t(200),y=t(185),b=t(3),x=t(180),w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.connect_signals=function(){t.prototype.connect_signals.call(this),this.connect(this.model.properties.title.change,function(){return r.logger.warn(\"Title object cannot be replaced. Try changing properties on title to update it after initialization.\")})},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-plot-layout\")},e.prototype.get_height=function(){return this.model._width.value/this.model.get_aspect_ratio()},e.prototype.get_width=function(){return this.model._height.value*this.model.get_aspect_ratio()},e.prototype.save=function(t){this.plot_canvas_view.save(t)},Object.defineProperty(e.prototype,\"plot_canvas_view\",{get:function(){return this.child_views[this.model.plot_canvas.id]},enumerable:!0,configurable:!0}),e}(l.LayoutDOMView);i.PlotView=w;var d=function(d){function t(t){return d.call(this,t)||this}return o.__extends(t,d),t.initClass=function(){this.prototype.type=\"Plot\",this.prototype.default_view=w,this.mixins([\"line:outline_\",\"fill:background_\",\"fill:border_\"]),this.define({toolbar:[s.Instance,function(){return new c.Toolbar}],toolbar_location:[s.Location,\"right\"],toolbar_sticky:[s.Boolean,!0],plot_width:[s.Number,600],plot_height:[s.Number,600],title:[s.Any,function(){return new h.Title({text:\"\"})}],title_location:[s.Location,\"above\"],h_symmetry:[s.Bool,!0],v_symmetry:[s.Bool,!1],above:[s.Array,[]],below:[s.Array,[]],left:[s.Array,[]],right:[s.Array,[]],renderers:[s.Array,[]],x_range:[s.Instance,function(){return new x.DataRange1d}],extra_x_ranges:[s.Any,{}],y_range:[s.Instance,function(){return new x.DataRange1d}],extra_y_ranges:[s.Any,{}],x_scale:[s.Instance,function(){return new u.LinearScale}],y_scale:[s.Instance,function(){return new u.LinearScale}],lod_factor:[s.Number,10],lod_interval:[s.Number,300],lod_threshold:[s.Number,2e3],lod_timeout:[s.Number,500],hidpi:[s.Bool,!0],output_backend:[s.OutputBackend,\"canvas\"],min_border:[s.Number,5],min_border_top:[s.Number,null],min_border_left:[s.Number,null],min_border_bottom:[s.Number,null],min_border_right:[s.Number,null],inner_width:[s.Number],inner_height:[s.Number],layout_width:[s.Number],layout_height:[s.Number],match_aspect:[s.Bool,!1],aspect_scale:[s.Number,1]}),this.override({outline_line_color:\"#e5e5e5\",border_fill_color:\"#ffffff\",background_fill_color:\"#ffffff\"}),b.register_with_event(b.UIEvent,this)},t.prototype.initialize=function(){d.prototype.initialize.call(this),this.reset=new f.Signal0(this,\"reset\");for(var t=0,e=v.values(this.extra_x_ranges).concat(this.x_range);t<e.length;t++){var i=e[t],n=i.plots;m.isArray(n)&&(n=n.concat(this),i.setv({plots:n},{silent:!0}))}for(var r=0,o=v.values(this.extra_y_ranges).concat(this.y_range);r<o.length;r++){var s=o[r],n=s.plots;m.isArray(n)&&(n=n.concat(this),s.setv({plots:n},{silent:!0}))}null!=this.min_border&&(null==this.min_border_top&&(this.min_border_top=this.min_border),null==this.min_border_bottom&&(this.min_border_bottom=this.min_border),null==this.min_border_left&&(this.min_border_left=this.min_border),null==this.min_border_right&&(this.min_border_right=this.min_border));for(var a=0,l=[\"above\",\"below\",\"left\",\"right\"];a<l.length;a++)for(var h=l[a],u=this.getv(h),c=0,_=u;c<_.length;c++){var p=_[c];p.add_panel(h)}this._init_title_panel(),this._init_toolbar_panel(),this._plot_canvas=this._init_plot_canvas(),this.plot_canvas.toolbar=this.toolbar,null==this.width&&(this.width=this.plot_width),null==this.height&&(this.height=this.plot_height)},t.prototype._init_plot_canvas=function(){return new p.PlotCanvas({plot:this})},t.prototype._init_title_panel=function(){if(null!=this.title){var t=m.isString(this.title)?new h.Title({text:this.title}):this.title;this.add_layout(t,this.title_location)}},t.prototype._init_toolbar_panel=function(){var e=this,t=a.find(this.renderers,function(t){return t instanceof _.ToolbarPanel&&a.includes(t.tags,e.id)});switch(null!=t&&this.remove_layout(t),this.toolbar_location){case\"left\":case\"right\":case\"above\":case\"below\":if(t=new _.ToolbarPanel({toolbar:this.toolbar,tags:[this.id]}),this.toolbar.toolbar_location=this.toolbar_location,this.toolbar_sticky){var i=this.getv(this.toolbar_location),n=a.find(i,function(t){return t instanceof h.Title});if(null!=n)return t.set_panel(n.panel),void this.add_renderers(t)}this.add_layout(t,this.toolbar_location)}},t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),this.connect(this.properties.toolbar_location.change,function(){return t._init_toolbar_panel()})},Object.defineProperty(t.prototype,\"plot_canvas\",{get:function(){return this._plot_canvas},enumerable:!0,configurable:!0}),t.prototype._doc_attached=function(){this.plot_canvas.attach_document(this.document),d.prototype._doc_attached.call(this)},t.prototype.add_renderers=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var i=this.renderers;i=i.concat(t),this.renderers=i},t.prototype.add_layout=function(t,e){if(void 0===e&&(e=\"center\"),null!=t.props.plot&&(t.plot=this),\"center\"!=e){var i=this.getv(e);i.push(t),t.add_panel(e)}this.add_renderers(t)},t.prototype.remove_layout=function(e){var t=function(t){a.removeBy(t,function(t){return t==e})};t(this.left),t(this.right),t(this.above),t(this.below),t(this.renderers)},t.prototype.add_glyph=function(t,e,i){void 0===e&&(e=new g.ColumnDataSource),void 0===i&&(i={});var n=o.__assign({},i,{data_source:e,glyph:t}),r=new y.GlyphRenderer(n);return this.add_renderers(r),r},t.prototype.add_tools=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var i=0,n=t;i<n.length;i++){var r=n[i];null!=r.overlay&&this.add_renderers(r.overlay)}this.toolbar.tools=this.toolbar.tools.concat(t)},t.prototype.get_layoutable_children=function(){return[this.plot_canvas]},t.prototype.get_constraints=function(){var t=d.prototype.get_constraints.call(this);return t.push(n.EQ(this._width,[-1,this.plot_canvas._width])),t.push(n.EQ(this._height,[-1,this.plot_canvas._height])),t},t.prototype.get_constrained_variables=function(){var t=o.__assign({},d.prototype.get_constrained_variables.call(this),{on_edge_align_top:this.plot_canvas._top,on_edge_align_bottom:this.plot_canvas._height_minus_bottom,on_edge_align_left:this.plot_canvas._left,on_edge_align_right:this.plot_canvas._width_minus_right,box_cell_align_top:this.plot_canvas._top,box_cell_align_bottom:this.plot_canvas._height_minus_bottom,box_cell_align_left:this.plot_canvas._left,box_cell_align_right:this.plot_canvas._width_minus_right,box_equal_size_top:this.plot_canvas._top,box_equal_size_bottom:this.plot_canvas._height_minus_bottom});return\"fixed\"!=this.sizing_mode&&(t.box_equal_size_left=this.plot_canvas._left,t.box_equal_size_right=this.plot_canvas._width_minus_right),t},Object.defineProperty(t.prototype,\"all_renderers\",{get:function(){for(var t=this.renderers,e=0,i=this.toolbar.tools;e<i.length;e++){var n=i[e];t=t.concat(n.synthetic_renderers)}return t},enumerable:!0,configurable:!0}),t}(l.LayoutDOM);(i.Plot=d).initClass()},function(t,e,i){var l=t(391),n=t(91),r=t(92),C=t(180),T=t(185),o=t(157),s=t(3),h=t(19),c=t(4),u=t(20),_=t(49),a=t(6),p=t(11),d=t(10),f=t(13),A=t(14),v=t(7),m=t(15),g=t(42),y=t(44),b=t(21),E=t(32),x=t(12),w=null,k=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return l.__extends(t,a),Object.defineProperty(t.prototype,\"frame\",{get:function(){return this.model.frame},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas\",{get:function(){return this.model.canvas},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas_overlays\",{get:function(){return this.canvas_view.overlays_el},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas_events\",{get:function(){return this.canvas_view.events_el},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_paused\",{get:function(){return null!=this._is_paused&&0!==this._is_paused},enumerable:!0,configurable:!0}),t.prototype.view_options=function(){return{plot_view:this,parent:this}},t.prototype.pause=function(){null==this._is_paused?this._is_paused=1:this._is_paused+=1},t.prototype.unpause=function(t){if(void 0===t&&(t=!1),null==this._is_paused)throw new Error(\"wasn't paused\");this._is_paused-=1,0!=this._is_paused||t||this.request_render()},t.prototype.request_render=function(){this.request_paint()},t.prototype.request_paint=function(){this.is_paused||this.throttled_paint()},t.prototype.reset=function(){this.clear_state(),this.reset_range(),this.reset_selection(),this.model.plot.trigger_event(new s.Reset)},t.prototype.remove=function(){this.ui_event_bus.destroy(),c.remove_views(this.renderer_views),c.remove_views(this.tool_views),this.canvas_view.remove(),a.prototype.remove.call(this)},t.prototype.css_classes=function(){return a.prototype.css_classes.call(this).concat(\"bk-plot-wrapper\")},t.prototype.initialize=function(t){var e=this;this.pause(),a.prototype.initialize.call(this,t),this.force_paint=new h.Signal0(this,\"force_paint\"),this.state_changed=new h.Signal0(this,\"state_changed\"),this.lod_started=!1,this.visuals=new _.Visuals(this.model.plot),this._initial_state_info={selection:{},dimensions:{width:this.model.canvas._width.value,height:this.model.canvas._height.value}},this.visibility_callbacks=[],this.state={history:[],index:-1},this.canvas_view=new this.canvas.default_view({model:this.canvas,parent:this}),this.el.appendChild(this.canvas_view.el),this.canvas_view.render(),\"webgl\"==this.model.plot.output_backend&&this.init_webgl(),this.throttled_paint=g.throttle(function(){return e.force_paint.emit()},15),this.ui_event_bus=new u.UIEvents(this,this.model.toolbar,this.canvas_view.events_el,this.model.plot),this.levels={};for(var i=0,n=v.RenderLevel;i<n.length;i++){var r=n[i];this.levels[r]={}}this.renderer_views={},this.tool_views={},this.build_levels(),this.build_tools(),this.update_dataranges(),this.unpause(!0),A.logger.debug(\"PlotView initialized\")},t.prototype.set_cursor=function(t){void 0===t&&(t=\"default\"),this.canvas_view.el.style.cursor=t},t.prototype.set_toolbar_visibility=function(e){void 0===e&&(e=!0),this.visibility_callbacks.forEach(function(t){return t(e)})},t.prototype.init_webgl=function(){if(null==w){var t=document.createElement(\"canvas\"),e={premultipliedAlpha:!0},i=t.getContext(\"webgl\",e)||t.getContext(\"experimental-webgl\",e);null!=i&&(w={canvas:t,ctx:i})}null!=w?this.gl=w:A.logger.warn(\"WebGL is not supported, falling back to 2D canvas.\")},t.prototype.prepare_webgl=function(t,e){if(null!=this.gl){var i=this.canvas_view.get_canvas_element();this.gl.canvas.width=i.width,this.gl.canvas.height=i.height;var n=this.gl.ctx;n.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height),n.clearColor(0,0,0,0),n.clear(n.COLOR_BUFFER_BIT||n.DEPTH_BUFFER_BIT),n.enable(n.SCISSOR_TEST);var r=e[0],o=e[1],s=e[2],a=e[3],l=this.model.canvas,h=l.xview,u=l.yview,c=h.compute(r),_=u.compute(o+a);n.scissor(t*c,t*_,t*s,t*a),n.enable(n.BLEND),n.blendFuncSeparate(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA,n.ONE_MINUS_DST_ALPHA,n.ONE)}},t.prototype.blit_webgl=function(t){var e=this.canvas_view.ctx;null!=this.gl&&(A.logger.debug(\"drawing with WebGL\"),e.restore(),e.drawImage(this.gl.canvas,0,0),e.save(),e.scale(t,t),e.translate(.5,.5))},t.prototype.update_dataranges=function(){for(var t=this.model.frame,e={},i={},n=!1,r=0,o=E.values(t.x_ranges).concat(E.values(t.y_ranges));r<o.length;r++){var s=o[r];s instanceof C.DataRange1d&&\"log\"==s.scale_hint&&(n=!0)}for(var a in this.renderer_views){var l=this.renderer_views[a];if(l instanceof T.GlyphRendererView){var h=l.glyph.bounds();if(null!=h&&(e[a]=h),n){var u=l.glyph.log_bounds();null!=u&&(i[a]=u)}}}var c,_=!1,p=!1;!1!==this.model.plot.match_aspect&&0!=this.frame._width.value&&0!=this.frame._height.value&&(c=1/this.model.plot.aspect_scale*(this.frame._width.value/this.frame._height.value));for(var d=0,f=E.values(t.x_ranges);d<f.length;d++){var v=f[d];if(v instanceof C.DataRange1d){var m=\"log\"==v.scale_hint?i:e;v.update(m,0,this.model.id,c),v.follow&&(_=!0)}null!=v.bounds&&(p=!0)}for(var g=0,y=E.values(t.y_ranges);g<y.length;g++){var b=y[g];if(b instanceof C.DataRange1d){var m=\"log\"==b.scale_hint?i:e;b.update(m,1,this.model.id,c),b.follow&&(_=!0)}null!=b.bounds&&(p=!0)}if(_&&p){A.logger.warn(\"Follow enabled so bounds are unset.\");for(var x=0,w=E.values(t.x_ranges);x<w.length;x++){var v=w[x];v.bounds=null}for(var k=0,S=E.values(t.y_ranges);k<S.length;k++){var b=S[k];b.bounds=null}}this.range_update_timestamp=Date.now()},t.prototype.map_to_screen=function(t,e,i,n){return void 0===i&&(i=\"default\"),void 0===n&&(n=\"default\"),this.frame.map_to_screen(t,e,i,n)},t.prototype.push_state=function(t,e){var i=this.state,n=i.history,r=i.index,o=null!=n[r]?n[r].info:{},s=l.__assign({},this._initial_state_info,o,e);this.state.history=this.state.history.slice(0,this.state.index+1),this.state.history.push({type:t,info:s}),this.state.index=this.state.history.length-1,this.state_changed.emit()},t.prototype.clear_state=function(){this.state={history:[],index:-1},this.state_changed.emit()},t.prototype.can_undo=function(){return 0<=this.state.index},t.prototype.can_redo=function(){return this.state.index<this.state.history.length-1},t.prototype.undo=function(){this.can_undo()&&(this.state.index-=1,this._do_state_change(this.state.index),this.state_changed.emit())},t.prototype.redo=function(){this.can_redo()&&(this.state.index+=1,this._do_state_change(this.state.index),this.state_changed.emit())},t.prototype._do_state_change=function(t){var e=null!=this.state.history[t]?this.state.history[t].info:this._initial_state_info;null!=e.range&&this.update_range(e.range),null!=e.selection&&this.update_selection(e.selection)},t.prototype.get_selection=function(){for(var t={},e=0,i=this.model.plot.renderers;e<i.length;e++){var n=i[e];if(n instanceof T.GlyphRenderer){var r=n.data_source.selected;t[n.id]=r}}return t},t.prototype.update_selection=function(t){for(var e=0,i=this.model.plot.renderers;e<i.length;e++){var n=i[e];if(n instanceof T.GlyphRenderer){var r=n.data_source;null!=t?null!=t[n.id]&&r.selected.update(t[n.id],!0,!1):r.selection_manager.clear()}}},t.prototype.reset_selection=function(){this.update_selection(null)},t.prototype._update_ranges_together=function(t){for(var e=1,i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[1];e=Math.min(e,this._get_weight_to_constrain_interval(o,s))}if(e<1)for(var a=0,l=t;a<l.length;a++){var h=l[a],o=h[0],s=h[1];s.start=e*s.start+(1-e)*o.start,s.end=e*s.end+(1-e)*o.end}},t.prototype._update_ranges_individually=function(t,e,i,n){for(var r=!1,o=0,s=t;o<s.length;o++){var a=s[o],l=a[0],h=a[1];if(!i){var u=this._get_weight_to_constrain_interval(l,h);u<1&&(h.start=u*h.start+(1-u)*l.start,h.end=u*h.end+(1-u)*l.end)}if(null!=l.bounds&&\"auto\"!=l.bounds){var c=l.bounds,_=c[0],p=c[1],d=Math.abs(h.end-h.start);l.is_reversed?(null!=_&&_>=h.end&&(r=!0,h.end=_,(e||i)&&(h.start=_+d)),null!=p&&p<=h.start&&(r=!0,h.start=p,(e||i)&&(h.end=p-d))):(null!=_&&_>=h.start&&(r=!0,h.start=_,(e||i)&&(h.end=_+d)),null!=p&&p<=h.end&&(r=!0,h.end=p,(e||i)&&(h.start=p-d)))}}if(!(i&&r&&n))for(var f=0,v=t;f<v.length;f++){var m=v[f],l=m[0],h=m[1];l.have_updated_interactively=!0,l.start==h.start&&l.end==h.end||l.setv(h)}},t.prototype._get_weight_to_constrain_interval=function(t,e){var i=t.min_interval,n=t.max_interval;if(null!=t.bounds&&\"auto\"!=t.bounds){var r=t.bounds,o=r[0],s=r[1];if(null!=o&&null!=s){var a=Math.abs(s-o);n=null!=n?Math.min(n,a):a}}var l=1;if(null!=i||null!=n){var h=Math.abs(t.end-t.start),u=Math.abs(e.end-e.start);0<i&&u<i&&(l=(h-i)/(h-u)),0<n&&n<u&&(l=(n-h)/(u-h)),l=Math.max(0,Math.min(1,l))}return l},t.prototype.update_range=function(t,e,i,n){void 0===e&&(e=!1),void 0===i&&(i=!1),void 0===n&&(n=!0),this.pause();var r=this.frame,o=r.x_ranges,s=r.y_ranges;if(null==t){for(var a in o){var l=o[a];l.reset()}for(var h in s){var l=s[h];l.reset()}this.update_dataranges()}else{var u=[];for(var c in o){var l=o[c];u.push([l,t.xrs[c]])}for(var _ in s){var l=s[_];u.push([l,t.yrs[_]])}i&&this._update_ranges_together(u),this._update_ranges_individually(u,e,i,n)}this.unpause()},t.prototype.reset_range=function(){this.update_range(null)},t.prototype.build_levels=function(){var t=this.model.plot.all_renderers,e=E.keys(this.renderer_views),i=c.build_views(this.renderer_views,t,this.view_options()),n=b.difference(e,t.map(function(t){return t.id}));for(var r in this.levels)for(var o=0,s=n;o<s.length;o++){var a=s[o];delete this.levels[r][a]}for(var l=0,h=i;l<h.length;l++){var u=h[l];this.levels[u.model.level][u.model.id]=u}},t.prototype.get_renderer_views=function(){var e=this;return this.model.plot.renderers.map(function(t){return e.levels[t.level][t.id]})},t.prototype.build_tools=function(){var e=this,t=this.model.plot.toolbar.tools,i=c.build_views(this.tool_views,t,this.view_options());i.map(function(t){return e.ui_event_bus.register_tool(t)})},t.prototype.connect_signals=function(){var t=this;a.prototype.connect_signals.call(this),this.connect(this.force_paint,function(){return t.repaint()});var e=this.model.frame,i=e.x_ranges,n=e.y_ranges;for(var r in i){var o=i[r];this.connect(o.change,function(){return t.request_render()})}for(var s in n){var o=n[s];this.connect(o.change,function(){return t.request_render()})}this.connect(this.model.plot.properties.renderers.change,function(){return t.build_levels()}),this.connect(this.model.plot.toolbar.properties.tools.change,function(){t.build_levels(),t.build_tools()}),this.connect(this.model.plot.change,function(){return t.request_render()}),this.connect(this.model.plot.reset,function(){return t.reset()})},t.prototype.set_initial_range=function(){var t=!0,e=this.frame,i=e.x_ranges,n=e.y_ranges,r={},o={};for(var s in i){var a=i[s],l=a.start,h=a.end;if(null==l||null==h||y.isStrictNaN(l+h)){t=!1;break}r[s]={start:l,end:h}}if(t)for(var u in n){var c=n[u],l=c.start,h=c.end;if(null==l||null==h||y.isStrictNaN(l+h)){t=!1;break}o[u]={start:l,end:h}}t?(this._initial_state_info.range={xrs:r,yrs:o},A.logger.debug(\"initial ranges set\")):A.logger.warn(\"could not set initial ranges\")},t.prototype.update_constraints=function(){for(var t in this.solver.suggest_value(this.frame._width,this.canvas._width.value),this.solver.suggest_value(this.frame._height,this.canvas._height.value),this.renderer_views){var e=this.renderer_views[t];x.isSizeableView(e)&&null!=e.model.panel&&x.update_panel_constraints(e)}this.solver.update_variables()},t.prototype._layout=function(t){void 0===t&&(t=!1),this.render(),t&&(this.model.plot.setv({inner_width:Math.round(this.frame._width.value),inner_height:Math.round(this.frame._height.value),layout_width:Math.round(this.canvas._width.value),layout_height:Math.round(this.canvas._height.value)},{no_change:!0}),this.paint())},t.prototype.has_finished=function(){if(!a.prototype.has_finished.call(this))return!1;for(var t in this.levels){var e=this.levels[t];for(var i in e){var n=e[i];if(!n.has_finished())return!1}}return!0},t.prototype.render=function(){var t=this.model._width.value,e=this.model._height.value;this.canvas_view.set_dims([t,e]),this.update_constraints(),!1!==this.model.plot.match_aspect&&0!=this.frame._width.value&&0!=this.frame._height.value&&this.update_dataranges(),this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\",this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\"},t.prototype._needs_layout=function(){for(var t in this.renderer_views){var e=this.renderer_views[t];if(x.isSizeableView(e)&&null!=e.model.panel&&x._view_sizes.get(e)!=e.get_size())return!0}return!1},t.prototype.repaint=function(){this._needs_layout()?this.parent.partial_layout():this.paint()},t.prototype.paint=function(){var t=this;if(!this.is_paused){A.logger.trace(\"PlotCanvas.render() for \"+this.model.id),this.canvas_view.prepare_canvas();var e=this.model.document;if(null!=e){var i=e.interactive_duration(),n=this.model.plot;0<=i&&i<n.lod_interval?setTimeout(function(){e.interactive_duration()>n.lod_timeout&&e.interactive_stop(n),t.request_render()},n.lod_timeout):e.interactive_stop(n)}for(var r in this.renderer_views){var o=this.renderer_views[r];if(null==this.range_update_timestamp||o instanceof T.GlyphRendererView&&o.set_data_timestamp>this.range_update_timestamp){this.update_dataranges();break}}this.model.frame.update_scales();var s=this.canvas_view.ctx,a=this.canvas.pixel_ratio;s.save(),s.scale(a,a),s.translate(.5,.5);var l=[this.frame._left.value,this.frame._top.value,this.frame._width.value,this.frame._height.value];if(this._map_hook(s,l),this._paint_empty(s,l),this.prepare_webgl(a,l),s.save(),this.visuals.outline_line.doit){this.visuals.outline_line.set_value(s);var h=l[0],u=l[1],c=l[2],_=l[3];h+c==this.canvas._width.value&&(c-=1),u+_==this.canvas._height.value&&(_-=1),s.strokeRect(h,u,c,_)}s.restore(),this._paint_levels(s,[\"image\",\"underlay\",\"glyph\"],l,!0),this.blit_webgl(a),this._paint_levels(s,[\"annotation\"],l,!0),this._paint_levels(s,[\"overlay\"],l,!1),null==this._initial_state_info.range&&this.set_initial_range(),s.restore(),this._has_finished||(this._has_finished=!0,this.notify_finished())}},t.prototype._paint_levels=function(t,e,i,n){t.save(),n&&(t.beginPath(),t.rect.apply(t,i),t.clip());for(var r={},o=0;o<this.model.plot.renderers.length;o++){var s=this.model.plot.renderers[o];r[s.id]=o}for(var a=function(t){return r[t.model.id]},l=0,h=e;l<h.length;l++)for(var u=h[l],c=b.sortBy(E.values(this.levels[u]),a),_=0,p=c;_<p.length;_++){var d=p[_];!n&&d.needs_clip&&(t.save(),t.beginPath(),t.rect.apply(t,i),t.clip()),d.render(),!n&&d.needs_clip&&t.restore()}t.restore()},t.prototype._map_hook=function(t,e){},t.prototype._paint_empty=function(t,e){var i=[0,0,this.canvas_view.model._width.value,this.canvas_view.model._height.value],n=i[0],r=i[1],o=i[2],s=i[3],a=e[0],l=e[1],h=e[2],u=e[3];t.clearRect(n,r,o,s),this.visuals.border_fill.doit&&(this.visuals.border_fill.set_value(t),t.fillRect(n,r,o,s),t.clearRect(a,l,h,u)),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(a,l,h,u))},t.prototype.save=function(t){switch(this.model.plot.output_backend){case\"canvas\":case\"webgl\":var e=this.canvas_view.get_canvas_element();if(null!=e.msToBlob){var i=e.msToBlob();window.navigator.msSaveBlob(i,t)}else{var n=document.createElement(\"a\");n.href=e.toDataURL(\"image/png\"),n.download=t+\".png\",n.target=\"_blank\",n.dispatchEvent(new MouseEvent(\"click\"))}break;case\"svg\":var r=this.canvas_view._ctx,o=r.getSerializedSvg(!0),s=new Blob([o],{type:\"text/plain\"}),a=document.createElement(\"a\");a.download=t+\".svg\",a.innerHTML=\"Download svg\",a.href=window.URL.createObjectURL(s),a.onclick=function(t){return document.body.removeChild(t.target)},a.style.display=\"none\",document.body.appendChild(a),a.click()}},t}(a.DOMView);i.PlotCanvasView=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"AbovePanel\"},e}(p.LayoutCanvas);(i.AbovePanel=S).initClass();var M=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"BelowPanel\"},e}(p.LayoutCanvas);(i.BelowPanel=M).initClass();var O=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"LeftPanel\"},e}(p.LayoutCanvas);(i.LeftPanel=O).initClass();var z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"RightPanel\"},e}(p.LayoutCanvas);(i.RightPanel=z).initClass();var P=function(e){function t(t){return e.call(this,t)||this}return l.__extends(t,e),t.initClass=function(){this.prototype.type=\"PlotCanvas\",this.prototype.default_view=k,this.internal({plot:[m.Instance],toolbar:[m.Instance],canvas:[m.Instance],frame:[m.Instance]}),this.override({sizing_mode:\"stretch_both\"})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.canvas=new n.Canvas({map:null!=this.use_map&&this.use_map,use_hidpi:this.plot.hidpi,output_backend:this.plot.output_backend}),this.frame=new r.CartesianFrame({x_range:this.plot.x_range,extra_x_ranges:this.plot.extra_x_ranges,x_scale:this.plot.x_scale,y_range:this.plot.y_range,extra_y_ranges:this.plot.extra_y_ranges,y_scale:this.plot.y_scale}),this.above_panel=new S,this.below_panel=new M,this.left_panel=new O,this.right_panel=new z,A.logger.debug(\"PlotCanvas initialized\")},t.prototype._doc_attached=function(){this.canvas.attach_document(this.document),this.frame.attach_document(this.document),this.above_panel.attach_document(this.document),this.below_panel.attach_document(this.document),this.left_panel.attach_document(this.document),this.right_panel.attach_document(this.document),e.prototype._doc_attached.call(this),A.logger.debug(\"PlotCanvas attached to document\")},t.prototype.get_layoutable_children=function(){var r=[this.above_panel,this.below_panel,this.left_panel,this.right_panel,this.canvas,this.frame],t=function(t){for(var e=0,i=t;e<i.length;e++){var n=i[e];x.isSizeable(n)&&null!=n.panel&&r.push(n.panel)}};return t(this.plot.above),t(this.plot.below),t(this.plot.left),t(this.plot.right),r},t.prototype.get_constraints=function(){return e.prototype.get_constraints.call(this).concat(this._get_constant_constraints(),this._get_side_constraints())},t.prototype._get_constant_constraints=function(){return[f.EQ(this.canvas._left,0),f.EQ(this.canvas._top,0),f.GE(this.above_panel._top,[-1,this.canvas._top]),f.EQ(this.above_panel._bottom,[-1,this.frame._top]),f.EQ(this.above_panel._left,[-1,this.left_panel._right]),f.EQ(this.above_panel._right,[-1,this.right_panel._left]),f.EQ(this.below_panel._top,[-1,this.frame._bottom]),f.LE(this.below_panel._bottom,[-1,this.canvas._bottom]),f.EQ(this.below_panel._left,[-1,this.left_panel._right]),f.EQ(this.below_panel._right,[-1,this.right_panel._left]),f.EQ(this.left_panel._top,[-1,this.above_panel._bottom]),f.EQ(this.left_panel._bottom,[-1,this.below_panel._top]),f.GE(this.left_panel._left,[-1,this.canvas._left]),f.EQ(this.left_panel._right,[-1,this.frame._left]),f.EQ(this.right_panel._top,[-1,this.above_panel._bottom]),f.EQ(this.right_panel._bottom,[-1,this.below_panel._top]),f.EQ(this.right_panel._left,[-1,this.frame._right]),f.LE(this.right_panel._right,[-1,this.canvas._right]),f.EQ(this._top,[-1,this.above_panel._bottom]),f.EQ(this._left,[-1,this.left_panel._right]),f.EQ(this._height,[-1,this._bottom],[-1,this.canvas._bottom],this.below_panel._top),f.EQ(this._width,[-1,this._right],[-1,this.canvas._right],this.right_panel._left),f.GE(this._top,-this.plot.min_border_top),f.GE(this._left,-this.plot.min_border_left),f.GE(this._height,[-1,this._bottom],-this.plot.min_border_bottom),f.GE(this._width,[-1,this._right],-this.plot.min_border_right)]},t.prototype._get_side_constraints=function(){var t=function(t){return t.map(function(t){return t.panel})},e=d.vstack(this.above_panel,t(this.plot.above)),i=d.vstack(this.below_panel,b.reversed(t(this.plot.below))),n=d.hstack(this.left_panel,t(this.plot.left)),r=d.hstack(this.right_panel,b.reversed(t(this.plot.right)));return b.concat([e,i,n,r])},t}(o.LayoutDOM);(i.PlotCanvas=P).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DataRange\",this.define({names:[o.Array,[]],renderers:[o.Array,[]]})},t}(r.Range);(i.DataRange=s).initClass()},function(t,e,i){var n=t(391),r=t(179),h=t(185),_=t(14),o=t(15),u=t(24),c=t(21),s=function(i){function t(t){var e=i.call(this,t)||this;return e._plot_bounds={},e.have_updated_interactively=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DataRange1d\",this.define({start:[o.Number],end:[o.Number],range_padding:[o.Number,.1],range_padding_units:[o.PaddingUnits,\"percent\"],flipped:[o.Bool,!1],follow:[o.StartEnd],follow_interval:[o.Number],default_span:[o.Number,2]}),this.internal({scale_hint:[o.String,\"auto\"]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),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},Object.defineProperty(t.prototype,\"min\",{get:function(){return Math.min(this.start,this.end)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return Math.max(this.start,this.end)},enumerable:!0,configurable:!0}),t.prototype.computed_renderers=function(){var e=this.names,t=this.renderers;if(0==t.length)for(var i=0,n=this.plots;i<n.length;i++){var r=n[i],o=r.renderers.filter(function(t){return t instanceof h.GlyphRenderer});t=t.concat(o)}0<e.length&&(t=t.filter(function(t){return c.includes(e,t.name)})),_.logger.debug(\"computed \"+t.length+\" renderers for DataRange1d \"+this.id);for(var s=0,a=t;s<a.length;s++){var l=a[s];_.logger.trace(\" - \"+l.type+\" \"+l.id)}return t},t.prototype._compute_plot_bounds=function(t,e){for(var i=u.empty(),n=0,r=t;n<r.length;n++){var o=r[n];null!=e[o.id]&&(i=u.union(i,e[o.id]))}return i},t.prototype.adjust_bounds_for_aspect=function(t,e){var i=u.empty(),n=t.maxX-t.minX;n<=0&&(n=1);var r=t.maxY-t.minY;r<=0&&(r=1);var o=.5*(t.maxX+t.minX),s=.5*(t.maxY+t.minY);return n<e*r?n=e*r:r=n/e,i.maxX=o+.5*n,i.minX=o-.5*n,i.maxY=s+.5*r,i.minY=s-.5*r,i},t.prototype._compute_min_max=function(t,e){var i,n,r,o,s=u.empty();for(var a in t){var l=t[a];s=u.union(s,l)}return 0==e?(i=[s.minX,s.maxX],r=i[0],o=i[1]):(n=[s.minY,s.maxY],r=n[0],o=n[1]),[r,o]},t.prototype._compute_range=function(t,e){var i,n,r,o=this.range_padding;if(\"log\"==this.scale_hint){(isNaN(t)||!isFinite(t)||t<=0)&&(t=isNaN(e)||!isFinite(e)||e<=0?.1:e/100,_.logger.warn(\"could not determine minimum data value for log axis, DataRange1d using value \"+t)),(isNaN(e)||!isFinite(e)||e<=0)&&(e=isNaN(t)||!isFinite(t)||t<=0?10:100*t,_.logger.warn(\"could not determine maximum data value for log axis, DataRange1d using value \"+e));var s=void 0,a=void 0;if(e==t)a=this.default_span+.001,s=Math.log(t)/Math.log(10);else{var l=void 0,h=void 0;\"percent\"==this.range_padding_units?(l=Math.log(t)/Math.log(10),h=Math.log(e)/Math.log(10),a=(h-l)*(1+o)):(l=Math.log(t-o)/Math.log(10),h=Math.log(e+o)/Math.log(10),a=h-l),s=(l+h)/2}n=Math.pow(10,s-a/2),r=Math.pow(10,s+a/2)}else{var a=void 0;a=e==t?this.default_span:\"percent\"==this.range_padding_units?(e-t)*(1+o):e-t+2*o;var s=(e+t)/2;n=s-a/2,r=s+a/2}var u=1;this.flipped&&(n=(i=[r,n])[0],r=i[1],u=-1);var c=this.follow_interval;return null!=c&&Math.abs(n-r)>c&&(\"start\"==this.follow?r=n+u*c:\"end\"==this.follow&&(n=r-u*c)),[n,r]},t.prototype.update=function(t,e,i,n){if(!this.have_updated_interactively){var r=this.computed_renderers(),o=this._compute_plot_bounds(r,t);null!=n&&(o=this.adjust_bounds_for_aspect(o,n)),this._plot_bounds[i]=o;var s=this._compute_min_max(this._plot_bounds,e),a=s[0],l=s[1],h=this._compute_range(a,l),u=h[0],c=h[1];null!=this._initial_start&&(\"log\"==this.scale_hint?0<this._initial_start&&(u=this._initial_start):u=this._initial_start),null!=this._initial_end&&(\"log\"==this.scale_hint?0<this._initial_end&&(c=this._initial_end):c=this._initial_end);var _=[this.start,this.end],p=_[0],d=_[1];if(u!=p||c!=d){var f={};u!=p&&(f.start=u),c!=d&&(f.end=c),this.setv(f)}\"auto\"==this.bounds&&this.setv({bounds:[u,c]},{silent:!0}),this.change.emit()}},t.prototype.reset=function(){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()},t}(r.DataRange);(i.DataRange1d=s).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=t(22),b=t(21),h=t(44);function m(t,e,i){void 0===i&&(i=0);for(var n={},r=0;r<t.length;r++){var o=t[r];if(o in n)throw new Error(\"duplicate factor or subfactor: \"+o);n[o]={value:.5+r*(1+e)+i}}return[n,(t.length-1)*e]}function x(t,s,a,e){void 0===e&&(e=0);for(var l={},h={},i=[],n=0,r=t;n<r.length;n++){var o=r[n],u=o[0],c=o[1];u in h||(h[u]=[],i.push(u)),h[u].push(c)}for(var _=e,p=0,d=function(t){var e=h[t].length,i=m(h[t],a,_),n=i[0],r=i[1];p+=r;var o=b.sum(h[t].map(function(t){return n[t].value}));l[t]={value:o/e,mapping:n},_+=e+s+r},f=0,v=i;f<v.length;f++){var u=v[f];d(u)}return[l,i,(i.length-1)*s+p]}function u(t,u,c,_,e){void 0===e&&(e=0);for(var p={},d={},i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o[0],a=o[1],l=o[2];s in d||(d[s]=[],i.push(s)),d[s].push([a,l])}for(var f=[],v=e,m=0,h=function(t){for(var e=d[t].length,i=x(d[t],c,_,v),n=i[0],r=i[1],o=i[2],s=0,a=r;s<a.length;s++){var l=a[s];f.push([t,l])}m+=o;var h=b.sum(d[t].map(function(t){var e=t[0];return n[e].value}));p[t]={value:h/e,mapping:n},v+=e+u+o},g=0,y=i;g<y.length;g++){var s=y[g];h(s)}return[p,i,f,(i.length-1)*u+m]}i.map_one_level=m,i.map_two_levels=x,i.map_three_levels=u;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"FactorRange\",this.define({factors:[o.Array,[]],factor_padding:[o.Number,0],subgroup_padding:[o.Number,.8],group_padding:[o.Number,1.4],range_padding:[o.Number,0],range_padding_units:[o.PaddingUnits,\"percent\"],start:[o.Number],end:[o.Number]}),this.internal({levels:[o.Number],mids:[o.Array],tops:[o.Array],tops_groups:[o.Array]})},Object.defineProperty(t.prototype,\"min\",{get:function(){return this.start},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return this.end},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init(!0)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.factors.change,function(){return t.reset()}),this.connect(this.properties.factor_padding.change,function(){return t.reset()}),this.connect(this.properties.group_padding.change,function(){return t.reset()}),this.connect(this.properties.subgroup_padding.change,function(){return t.reset()}),this.connect(this.properties.range_padding.change,function(){return t.reset()}),this.connect(this.properties.range_padding_units.change,function(){return t.reset()})},t.prototype.reset=function(){this._init(!1),this.change.emit()},t.prototype._lookup=function(t){if(1==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])?e[t[0]].value:NaN}if(2==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])&&e[t[0]].mapping.hasOwnProperty(t[1])?e[t[0]].mapping[t[1]].value:NaN}if(3==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])&&e[t[0]].mapping.hasOwnProperty(t[1])&&e[t[0]].mapping[t[1]].mapping.hasOwnProperty(t[2])?e[t[0]].mapping[t[1]].mapping[t[2]].value:NaN}throw new Error(\"unreachable code\")},t.prototype.synthetic=function(t){if(h.isNumber(t))return t;if(h.isString(t))return this._lookup([t]);var e=0,i=t[t.length-1];return h.isNumber(i)&&(e=i,t=t.slice(0,-1)),this._lookup(t)+e},t.prototype.v_synthetic=function(t){var e=this;return s.map(t,function(t){return e.synthetic(t)})},t.prototype._init=function(t){var e,i,n,r,o;if(b.all(this.factors,h.isString))r=1,e=m(this.factors,this.factor_padding),this._mapping=e[0],o=e[1];else if(b.all(this.factors,function(t){return h.isArray(t)&&2==t.length&&h.isString(t[0])&&h.isString(t[1])}))r=2,i=x(this.factors,this.group_padding,this.factor_padding),this._mapping=i[0],this.tops=i[1],o=i[2];else{if(!b.all(this.factors,function(t){return h.isArray(t)&&3==t.length&&h.isString(t[0])&&h.isString(t[1])&&h.isString(t[2])}))throw new Error(\"???\");r=3,n=u(this.factors,this.group_padding,this.subgroup_padding,this.factor_padding),this._mapping=n[0],this.tops=n[1],this.mids=n[2],o=n[3]}var s=0,a=this.factors.length+o;if(\"percent\"==this.range_padding_units){var l=(a-s)*this.range_padding/2;s-=l,a+=l}else s-=this.range_padding,a+=this.range_padding;this.setv({start:s,end:a,levels:r},{silent:t}),\"auto\"==this.bounds&&this.setv({bounds:[s,a]},{silent:!0})},t}(r.Range);(i.FactorRange=a).initClass()},function(t,e,i){var n=t(179);i.DataRange=n.DataRange;var r=t(180);i.DataRange1d=r.DataRange1d;var o=t(181);i.FactorRange=o.FactorRange;var s=t(183);i.Range=s.Range;var a=t(184);i.Range1d=a.Range1d},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=function(i){function t(t){var e=i.call(this,t)||this;return e.have_updated_interactively=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Range\",this.define({callback:[o.Any],bounds:[o.Any],min_interval:[o.Any],max_interval:[o.Any]}),this.internal({plots:[o.Array,[]]})},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._emit_callback()})},t.prototype.reset=function(){this.change.emit()},t.prototype._emit_callback=function(){null!=this.callback&&(s.isFunction(this.callback)?this.callback(this):this.callback.execute(this,{}))},Object.defineProperty(t.prototype,\"is_reversed\",{get:function(){return this.start>this.end},enumerable:!0,configurable:!0}),t}(r.Model);(i.Range=a).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Range1d\",this.define({start:[o.Number,0],end:[o.Number,1],reset_start:[o.Number],reset_end:[o.Number]})},t.prototype._set_auto_bounds=function(){if(\"auto\"==this.bounds){var 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})}},t.prototype.initialize=function(){e.prototype.initialize.call(this),null==this.reset_start&&(this.reset_start=this.start),null==this.reset_end&&(this.reset_end=this.end),this._set_auto_bounds()},Object.defineProperty(t.prototype,\"min\",{get:function(){return Math.min(this.start,this.end)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return Math.max(this.start,this.end)},enumerable:!0,configurable:!0}),t.prototype.reset=function(){this._set_auto_bounds(),this.start!=this.reset_start||this.end!=this.reset_end?this.setv({start:this.reset_start,end:this.reset_end}):this.change.emit()},t}(r.Range);(i.Range1d=s).initClass()},function(t,e,i){var n=t(391),r=t(189),P=t(130),o=t(199),j=t(14),s=t(15),a=t(22),N=t(21),_=t(32),l=t(181),p={fill:{},line:{}},d={fill:{fill_alpha:.3,fill_color:\"grey\"},line:{line_alpha:.3,line_color:\"grey\"}},f={fill:{fill_alpha:.2},line:{}},h=function(c){function t(){return null!==c&&c.apply(this,arguments)||this}return n.__extends(t,c),t.prototype.initialize=function(t){c.prototype.initialize.call(this,t);var i=this.model.glyph,n=N.includes(i.mixins,\"fill\"),r=N.includes(i.mixins,\"line\"),o=_.clone(i.attributes);function e(t){var e=_.clone(o);return n&&_.extend(e,t.fill),r&&_.extend(e,t.line),new i.constructor(e)}delete o.id,this.glyph=this.build_glyph_view(i);var s=this.model.selection_glyph;null==s?s=e({fill:{},line:{}}):\"auto\"===s&&(s=e(p)),this.selection_glyph=this.build_glyph_view(s);var a=this.model.nonselection_glyph;null==a?a=e({fill:{},line:{}}):\"auto\"===a&&(a=e(f)),this.nonselection_glyph=this.build_glyph_view(a);var l=this.model.hover_glyph;null!=l&&(this.hover_glyph=this.build_glyph_view(l));var h=this.model.muted_glyph;null!=h&&(this.muted_glyph=this.build_glyph_view(h));var u=e(d);this.decimated_glyph=this.build_glyph_view(u),this.xscale=this.plot_view.frame.xscales[this.model.x_range_name],this.yscale=this.plot_view.frame.yscales[this.model.y_range_name],this.set_data(!1)},t.prototype.build_glyph_view=function(t){return new t.default_view({model:t,renderer:this,plot_view:this.plot_view,parent:this})},t.prototype.connect_signals=function(){var e=this;c.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.request_render()}),this.connect(this.model.glyph.change,function(){return e.set_data()}),this.connect(this.model.data_source.change,function(){return e.set_data()}),this.connect(this.model.data_source.streaming,function(){return e.set_data()}),this.connect(this.model.data_source.patching,function(t){return e.set_data(!0,t)}),this.connect(this.model.data_source.selected.change,function(){return e.request_render()}),this.connect(this.model.data_source._select,function(){return e.request_render()}),null!=this.hover_glyph&&this.connect(this.model.data_source.inspect,function(){return e.request_render()}),this.connect(this.model.properties.view.change,function(){return e.set_data()}),this.connect(this.model.view.change,function(){return e.set_data()});var t=this.plot_model.frame,i=t.x_ranges,n=t.y_ranges;for(var r in i){var o=i[r];o instanceof l.FactorRange&&this.connect(o.change,function(){return e.set_data()})}for(var s in n){var o=n[s];o instanceof l.FactorRange&&this.connect(o.change,function(){return e.set_data()})}this.connect(this.model.glyph.transformchange,function(){return e.set_data()})},t.prototype.have_selection_glyphs=function(){return null!=this.selection_glyph&&null!=this.nonselection_glyph},t.prototype.set_data=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=null);var i=Date.now(),n=this.model.data_source;this.all_indices=this.model.view.indices,this.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0}),this.glyph.set_data(n,this.all_indices,e),this.glyph.set_visuals(n),this.decimated_glyph.set_visuals(n),this.have_selection_glyphs()&&(this.selection_glyph.set_visuals(n),this.nonselection_glyph.set_visuals(n)),null!=this.hover_glyph&&this.hover_glyph.set_visuals(n),null!=this.muted_glyph&&this.muted_glyph.set_visuals(n);var r=this.plot_model.plot.lod_factor;this.decimated=[];for(var o=0,s=Math.floor(this.all_indices.length/r);o<s;o++)this.decimated.push(o*r);var a=Date.now()-i;j.logger.debug(this.glyph.model.type+\" GlyphRenderer (\"+this.model.id+\"): set_data finished in \"+a+\"ms\"),this.set_data_timestamp=Date.now(),t&&this.request_render()},t.prototype.render=function(){var r=this;if(this.model.visible){var t=Date.now(),e=this.glyph.glglyph;this.glyph.map_data();var i=Date.now()-t,n=Date.now(),o=this.glyph.mask_data(this.all_indices);o.length===this.all_indices.length&&(o=N.range(0,this.all_indices.length));var s=Date.now()-n,a=this.plot_view.canvas_view.ctx;a.save();var l,h=this.model.data_source.selected;l=!h||h.is_empty()?[]:this.glyph instanceof P.LineView&&h.selected_glyph===this.glyph.model?this.model.view.convert_indices_from_subset(o):h.indices;var u,c=this.model.data_source.inspected;u=c&&0!==c.length?c[\"0d\"].glyph?this.model.view.convert_indices_from_subset(o):0<c[\"1d\"].indices.length?c[\"1d\"].indices:function(){for(var t=[],e=0,i=Object.keys(c[\"2d\"].indices);e<i.length;e++){var n=i[e];t.push(parseInt(n))}return t}():[];var _,p,d,f=function(){for(var t=[],e=0,i=o;e<i.length;e++){var n=i[e];N.includes(u,r.all_indices[n])&&t.push(n)}return t}(),v=this.plot_model.plot.lod_threshold;null!=this.model.document&&0<this.model.document.interactive_duration()&&!e&&null!=v&&this.all_indices.length>v?(o=this.decimated,_=this.decimated_glyph,p=this.decimated_glyph):(_=this.model.muted&&null!=this.muted_glyph?this.muted_glyph:this.glyph,p=this.nonselection_glyph),d=this.selection_glyph,null!=this.hover_glyph&&f.length&&(o=N.difference(o,f));var m,g=null;if(l.length&&this.have_selection_glyphs()){for(var y=Date.now(),b={},x=0,w=l;x<w.length;x++){var k=w[x];b[k]=!0}var S=new Array,C=new Array;if(this.glyph instanceof P.LineView)for(var T=0,A=this.all_indices;T<A.length;T++){var k=A[T];null!=b[k]?S.push(k):C.push(k)}else for(var E=0,M=o;E<M.length;E++){var k=M[E];null!=b[this.all_indices[k]]?S.push(k):C.push(k)}g=Date.now()-y,m=Date.now(),p.render(a,C,this.glyph),d.render(a,S,this.glyph),null!=this.hover_glyph&&(this.glyph instanceof P.LineView?this.hover_glyph.render(a,this.model.view.convert_indices_from_subset(f),this.glyph):this.hover_glyph.render(a,f,this.glyph))}else m=Date.now(),this.glyph instanceof P.LineView?this.hover_glyph&&f.length?this.hover_glyph.render(a,this.model.view.convert_indices_from_subset(f),this.glyph):_.render(a,this.all_indices,this.glyph):(_.render(a,o,this.glyph),this.hover_glyph&&f.length&&this.hover_glyph.render(a,f,this.glyph));var O=Date.now()-m;this.last_dtrender=O;var z=Date.now()-t;return j.logger.debug(this.glyph.model.type+\" GlyphRenderer (\"+this.model.id+\"): render finished in \"+z+\"ms\"),j.logger.trace(\" - map_data finished in       : \"+i+\"ms\"),j.logger.trace(\" - mask_data finished in      : \"+s+\"ms\"),null!=g&&j.logger.trace(\" - selection mask finished in : \"+g+\"ms\"),j.logger.trace(\" - glyph renders finished in  : \"+O+\"ms\"),a.restore()}},t.prototype.draw_legend=function(t,e,i,n,r,o,s,a){null==a&&(a=this.model.get_reference_point(o,s)),this.glyph.draw_legend_for_index(t,{x0:e,x1:i,y0:n,y1:r},a)},t.prototype.hit_test=function(t){if(!this.model.visible)return null;var e=this.glyph.hit_test(t);return null==e?null:this.model.view.convert_selection_from_subset(e)},t}(r.RendererView);i.GlyphRendererView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GlyphRenderer\",this.prototype.default_view=h,this.define({x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],data_source:[s.Instance],view:[s.Instance,function(){return new o.CDSView}],glyph:[s.Instance],hover_glyph:[s.Instance],nonselection_glyph:[s.Any,\"auto\"],selection_glyph:[s.Any,\"auto\"],muted_glyph:[s.Instance],muted:[s.Bool,!1]}),this.override({level:\"glyph\"})},t.prototype.initialize=function(){e.prototype.initialize.call(this),null==this.view.source&&(this.view.source=this.data_source,this.view.compute_indices())},t.prototype.get_reference_point=function(t,e){var i=0;if(null!=t){var n=this.data_source.get_column(t);if(null!=n){var r=a.indexOf(n,e);-1!=r&&(i=r)}}return i},t.prototype.get_selection_manager=function(){return this.data_source.selection_manager},t}(r.Renderer);(i.GlyphRenderer=u).initClass()},function(t,e,i){var n=t(391),r=t(189),o=t(147),s=t(15),l=t(4),a=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.initialize=function(t){var e;a.prototype.initialize.call(this,t),this.xscale=this.plot_view.frame.xscales.default,this.yscale=this.plot_view.frame.yscales.default,this._renderer_views={},e=l.build_views(this._renderer_views,[this.model.node_renderer,this.model.edge_renderer],this.plot_view.view_options()),this.node_view=e[0],this.edge_view=e[1],this.set_data()},t.prototype.connect_signals=function(){var t=this;a.prototype.connect_signals.call(this),this.connect(this.model.layout_provider.change,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source._select,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source.inspect,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source.change,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source._select,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source.inspect,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source.change,function(){return t.set_data()});var e=this.plot_model.frame,i=e.x_ranges,n=e.y_ranges;for(var r in i){var o=i[r];this.connect(o.change,function(){return t.set_data()})}for(var s in n){var o=n[s];this.connect(o.change,function(){return t.set_data()})}},t.prototype.set_data=function(t){var e,i;void 0===t&&(t=!0),this.node_view.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0}),this.edge_view.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0});var n=this.node_view.glyph;e=this.model.layout_provider.get_node_coordinates(this.model.node_renderer.data_source),n._x=e[0],n._y=e[1];var r=this.edge_view.glyph;i=this.model.layout_provider.get_edge_coordinates(this.model.edge_renderer.data_source),r._xs=i[0],r._ys=i[1],n.index_data(),r.index_data(),t&&this.request_render()},t.prototype.render=function(){this.edge_view.render(),this.node_view.render()},t}(r.RendererView);i.GraphRendererView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GraphRenderer\",this.prototype.default_view=a,this.define({x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],layout_provider:[s.Instance],node_renderer:[s.Instance],edge_renderer:[s.Instance],selection_policy:[s.Instance,function(){return new o.NodesOnly}],inspection_policy:[s.Instance,function(){return new o.NodesOnly}]}),this.override({level:\"glyph\"})},t.prototype.get_selection_manager=function(){return this.node_renderer.data_source.selection_manager},t}(r.Renderer);(i.GraphRenderer=h).initClass()},function(t,e,i){var n=t(391),r=t(189),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.RendererView);i.GuideRendererView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GuideRenderer\",this.define({plot:[o.Instance]}),this.override({level:\"overlay\"})},t}(r.Renderer);(i.GuideRenderer=a).initClass()},function(t,e,i){var n=t(185);i.GlyphRenderer=n.GlyphRenderer;var r=t(186);i.GraphRenderer=r.GraphRenderer;var o=t(187);i.GuideRenderer=o.GuideRenderer;var s=t(189);i.Renderer=s.Renderer},function(t,e,i){var n=t(391),r=t(6),o=t(49),s=t(15),a=t(59),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view=t.plot_view,this.visuals=new o.Visuals(this.model),this._has_finished=!0},Object.defineProperty(t.prototype,\"plot_model\",{get:function(){return this.plot_view.model},enumerable:!0,configurable:!0}),t.prototype.request_render=function(){this.plot_view.request_render()},t.prototype.map_to_screen=function(t,e){return this.plot_view.map_to_screen(t,e,this.model.x_range_name,this.model.y_range_name)},Object.defineProperty(t.prototype,\"needs_clip\",{get:function(){return!1},enumerable:!0,configurable:!0}),t}(r.DOMView);i.RendererView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Renderer\",this.define({level:[s.RenderLevel],visible:[s.Bool,!0]})},t}(a.Model);(i.Renderer=h).initClass()},function(t,e,i){var n=t(391),r=t(192),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalScale\"},t.prototype.compute=function(t){return e.prototype.compute.call(this,this.source_range.synthetic(t))},t.prototype.v_compute=function(t){return e.prototype.v_compute.call(this,this.source_range.v_synthetic(t))},t}(r.LinearScale);(i.CategoricalScale=o).initClass()},function(t,e,i){var n=t(190);i.CategoricalScale=n.CategoricalScale;var r=t(192);i.LinearScale=r.LinearScale;var o=t(193);i.LogScale=o.LogScale;var s=t(194);i.Scale=s.Scale},function(t,e,i){var n=t(391),r=t(194),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearScale\"},t.prototype.compute=function(t){var e=this._compute_state(),i=e[0],n=e[1];return i*t+n},t.prototype.v_compute=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=new Float64Array(t.length),o=0;o<t.length;o++)r[o]=i*t[o]+n;return r},t.prototype.invert=function(t){var e=this._compute_state(),i=e[0],n=e[1];return(t-n)/i},t.prototype.v_invert=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=new Float64Array(t.length),o=0;o<t.length;o++)r[o]=(t[o]-n)/i;return r},t.prototype._compute_state=function(){var t=this.source_range.start,e=this.source_range.end,i=this.target_range.start,n=this.target_range.end,r=(n-i)/(e-t),o=-r*t+i;return[r,o]},t}(r.Scale);(i.LinearScale=o).initClass()},function(t,e,i){var n=t(391),r=t(194),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogScale\"},t.prototype.compute=function(t){var e,i=this._compute_state(),n=i[0],r=i[1],o=i[2],s=i[3];if(0==o)e=0;else{var a=(Math.log(t)-s)/o;e=isFinite(a)?a*n+r:NaN}return e},t.prototype.v_compute=function(t){var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=new Float64Array(t.length);if(0==r)for(var a=0;a<t.length;a++)s[a]=0;else for(var a=0;a<t.length;a++){var l=(Math.log(t[a])-o)/r,h=void 0;h=isFinite(l)?l*i+n:NaN,s[a]=h}return s},t.prototype.invert=function(t){var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=(t-n)/i;return Math.exp(r*s+o)},t.prototype.v_invert=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=new Float64Array(t.length),a=0;a<t.length;a++){var l=(t[a]-n)/i;s[a]=Math.exp(r*l+o)}return s},t.prototype._get_safe_factor=function(t,e){var i,n=t<0?0:t,r=e<0?0:e;if(n==r)if(0==n)n=(i=[1,10])[0],r=i[1];else{var o=Math.log(n)/Math.log(10);n=Math.pow(10,Math.floor(o)),r=Math.ceil(o)!=Math.floor(o)?Math.pow(10,Math.ceil(o)):Math.pow(10,Math.ceil(o)+1)}return[n,r]},t.prototype._compute_state=function(){var t,e,i=this.source_range.start,n=this.source_range.end,r=this.target_range.start,o=this.target_range.end,s=o-r,a=this._get_safe_factor(i,n),l=a[0],h=a[1];0==l?(t=Math.log(h),e=0):(t=Math.log(h)-Math.log(l),e=Math.log(l));var u=s,c=r;return[u,c,t,e]},t}(r.Scale);(i.LogScale=o).initClass()},function(t,e,i){var n=t(391),r=t(274),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Scale\",this.internal({source_range:[o.Any],target_range:[o.Any]})},t.prototype.r_compute=function(t,e){return this.target_range.is_reversed?[this.compute(e),this.compute(t)]:[this.compute(t),this.compute(e)]},t.prototype.r_invert=function(t,e){return this.target_range.is_reversed?[this.invert(e),this.invert(t)]:[this.invert(t),this.invert(e)]},t}(r.Transform);(i.Scale=s).initClass()},function(t,e,i){var n=t(391);n.__exportStar(t(196),i);var r=t(197);i.Selection=r.Selection},function(t,e,i){var n=t(391),r=t(59),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.do_selection=function(t,e,i,n){return null!==t&&(e.selected.update(t,i,n),e._select.emit(),!e.selected.is_empty())},e}(r.Model);(i.SelectionPolicy=o).prototype.type=\"SelectionPolicy\";var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.hit_test=function(t,e){for(var i=[],n=0,r=e;n<r.length;n++){var o=r[n],s=o.hit_test(t);null!==s&&i.push(s)}if(0<i.length){for(var a=i[0],l=0,h=i;l<h.length;l++){var u=h[l];a.update_through_intersection(u)}return a}return null},e}(o);(i.IntersectRenderers=s).prototype.type=\"IntersectRenderers\";var a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.hit_test=function(t,e){for(var i=[],n=0,r=e;n<r.length;n++){var o=r[n],s=o.hit_test(t);null!==s&&i.push(s)}if(0<i.length){for(var a=i[0],l=0,h=i;l<h.length;l++){var u=h[l];a.update_through_union(u)}return a}return null},e}(o);(i.UnionRenderers=a).prototype.type=\"UnionRenderers\"},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(21),a=t(32),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Selection\",this.define({indices:[o.Array,[]],line_indices:[o.Array,[]],multiline_indices:[o.Any,{}]}),this.internal({final:[o.Boolean],selected_glyphs:[o.Array,[]],get_view:[o.Any],image_indices:[o.Array,[]]})},t.prototype.initialize=function(){var t=this;e.prototype.initialize.call(this),this[\"0d\"]={glyph:null,indices:[],flag:!1,get_view:function(){return null}},this[\"2d\"]={indices:{}},this[\"1d\"]={indices:this.indices},this.get_view=function(){return null},this.connect(this.properties.indices.change,function(){return t[\"1d\"].indices=t.indices}),this.connect(this.properties.line_indices.change,function(){t[\"0d\"].indices=t.line_indices,0==t.line_indices.length?t[\"0d\"].flag=!1:t[\"0d\"].flag=!0}),this.connect(this.properties.selected_glyphs.change,function(){return t[\"0d\"].glyph=t.selected_glyph}),this.connect(this.properties.get_view.change,function(){return t[\"0d\"].get_view=t.get_view}),this.connect(this.properties.multiline_indices.change,function(){return t[\"2d\"].indices=t.multiline_indices})},Object.defineProperty(t.prototype,\"selected_glyph\",{get:function(){return 0<this.selected_glyphs.length?this.selected_glyphs[0]:null},enumerable:!0,configurable:!0}),t.prototype.add_to_selected_glyphs=function(t){this.selected_glyphs.push(t)},t.prototype.update=function(t,e,i){this.final=e,i?this.update_through_union(t):(this.indices=t.indices,this.line_indices=t.line_indices,this.selected_glyphs=t.selected_glyphs,this.get_view=t.get_view,this.multiline_indices=t.multiline_indices,this.image_indices=t.image_indices)},t.prototype.clear=function(){this.final=!0,this.indices=[],this.line_indices=[],this.multiline_indices={},this.get_view=function(){return null},this.selected_glyphs=[]},t.prototype.is_empty=function(){return 0==this.indices.length&&0==this.line_indices.length&&0==this.image_indices.length},t.prototype.update_through_union=function(t){this.indices=s.union(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},t.prototype.update_through_intersection=function(t){this.indices=s.intersection(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},t}(r.Model);(i.Selection=l).initClass()},function(t,e,i){var n=t(391),r=t(205),o=t(14),_=t(44),s=t(15),a=function(i){function t(t){var e=i.call(this,t)||this;return e.initialized=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"AjaxDataSource\",this.define({mode:[s.String,\"replace\"],content_type:[s.String,\"application/json\"],adapter:[s.Any],http_headers:[s.Any,{}],max_size:[s.Number],method:[s.String,\"POST\"],if_modified:[s.Bool,!1]})},t.prototype.destroy=function(){null!=this.interval&&clearInterval(this.interval),i.prototype.destroy.call(this)},t.prototype.setup=function(){var t=this;!this.initialized&&(this.initialized=!0,this.get_data(this.mode),this.polling_interval)&&(this.interval=setInterval(function(){return t.get_data(t.mode,t.max_size,t.if_modified)},this.polling_interval))},t.prototype.get_data=function(t,e,i){var n=this;void 0===e&&(e=0),void 0===i&&(i=!1);var r=this.prepare_request();r.addEventListener(\"load\",function(){return n.do_load(r,t,e)}),r.addEventListener(\"error\",function(){return n.do_error(r)}),r.send()},t.prototype.prepare_request=function(){var t=new XMLHttpRequest;t.open(this.method,this.data_url,!0),t.withCredentials=!1,t.setRequestHeader(\"Content-Type\",this.content_type);var e=this.http_headers;for(var i in e){var n=e[i];t.setRequestHeader(i,n)}return t},t.prototype.do_load=function(t,e,i){if(200===t.status){var n=JSON.parse(t.responseText),r=this.adapter,o={};switch(o=null!=r?_.isFunction(r)?r(this,{response:n}):r.execute(this,{response:n}):n,e){case\"replace\":this.data=o;break;case\"append\":for(var s=this.data,a=0,l=this.columns();a<l.length;a++){var h=l[a],u=Array.from(s[h]),c=Array.from(o[h]);o[h]=u.concat(c).slice(-i)}this.data=o}}},t.prototype.do_error=function(t){o.logger.error(\"Failed to fetch JSON from \"+this.data_url+\" with code \"+t.status)},t}(r.RemoteDataSource);(i.AjaxDataSource=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(197),a=t(21),l=t(201),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CDSView\",this.define({filters:[o.Array,[]],source:[o.Instance]}),this.internal({indices:[o.Array,[]],indices_map:[o.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.compute_indices()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.filters.change,function(){t.compute_indices(),t.change.emit()}),null!=this.source&&(null!=this.source.change&&this.connect(this.source.change,function(){return t.compute_indices()}),null!=this.source.streaming&&this.connect(this.source.streaming,function(){return t.compute_indices()}),null!=this.source.patching&&this.connect(this.source.patching,function(){return t.compute_indices()}))},t.prototype.compute_indices=function(){var e=this,r=this.filters.map(function(t){return t.compute_indices(e.source)});0<(r=function(){for(var t=[],e=0,i=r;e<i.length;e++){var n=i[e];null!=n&&t.push(n)}return t}()).length?this.indices=a.intersection.apply(this,r):this.source instanceof l.ColumnarDataSource&&(this.indices=this.source.get_indices()),this.indices_map_to_subset()},t.prototype.indices_map_to_subset=function(){this.indices_map={};for(var t=0;t<this.indices.length;t++)this.indices_map[this.indices[t]]=t},t.prototype.convert_selection_from_subset=function(t){var e=this,i=new s.Selection;i.update_through_union(t);var n=t.indices.map(function(t){return e.indices[t]});return i.indices=n,i.image_indices=t.image_indices,i},t.prototype.convert_selection_to_subset=function(t){var e=this,i=new s.Selection;i.update_through_union(t);var n=t.indices.map(function(t){return e.indices_map[t]});return i.indices=n,i.image_indices=t.image_indices,i},t.prototype.convert_indices_from_subset=function(t){var e=this;return t.map(function(t){return e.indices[t]})},t}(r.Model);(i.CDSView=h).initClass()},function(t,e,i){var n=t(391),r=t(201),o=t(8),s=t(15),k=t(29),h=t(36),S=t(44),u=t(43),c=t(32),a=t(51);function _(t,e,i){if(S.isArray(t)){var n=t.concat(e);return null!=i&&n.length>i?n.slice(-i):n}if(S.isTypedArray(t)){var r=t.length+e.length;if(null!=i&&i<r){var o=r-i,s=t.length,n=void 0;t.length<i?(n=new t.constructor(i)).set(t,0):n=t;for(var a=o,l=s;a<l;a++)n[a-o]=n[a];for(var a=0,l=e.length;a<l;a++)n[a+(s-o)]=e[a];return n}var h=new t.constructor(e);return u.concat(t,h)}throw new Error(\"unsupported array types\")}function C(t,e){var i,n,r;return S.isNumber(t)?(r=(i=t)+1,n=1):(i=null!=t.start?t.start:0,r=null!=t.stop?t.stop:e,n=null!=t.step?t.step:1),[i,r,n]}function p(t,e,i){for(var n=new k.Set,r=!1,o=0,s=e;o<s.length;o++){var a=s[o],l=a[0],h=a[1],u=void 0,c=void 0;if(S.isArray(l)){var _=l[0];n.add(_),c=i[_],u=t[_]}else S.isNumber(l)?(h=[h],n.add(l)):r=!0,l=[0,0,l],c=[1,t.length],u=t;2===l.length&&(c=[1,c[0]],l=[l[0],0,l[1]]);for(var p=0,d=C(l[1],c[0]),f=d[0],v=d[1],m=d[2],g=C(l[2],c[1]),y=g[0],b=g[1],x=g[2],_=f;_<v;_+=m)for(var w=y;w<b;w+=x)r&&n.add(w),u[_*c[1]+w]=h[p],p++}return n}i.stream_to_column=_,i.slice=C,i.patch_to_column=p;var l=function(e){function l(t){return e.call(this,t)||this}return n.__extends(l,e),l.initClass=function(){this.prototype.type=\"ColumnDataSource\",this.define({data:[s.Any,{}]})},l.prototype.initialize=function(){var t;e.prototype.initialize.call(this),t=h.decode_column_data(this.data),this.data=t[0],this._shapes=t[1]},l.prototype.attributes_as_json=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=l._value_to_json);for(var i={},n=this.serializable_attributes(),r=0,o=c.keys(n);r<o.length;r++){var s=o[r],a=n[s];\"data\"===s&&(a=h.encode_column_data(a,this._shapes)),t?i[s]=a:s in this._set_after_defaults&&(i[s]=a)}return e(\"attributes\",i,this)},l._value_to_json=function(t,e,i){return S.isPlainObject(e)&&\"data\"===t?h.encode_column_data(e,i._shapes):o.HasProps._value_to_json(t,e,i)},l.prototype.stream=function(t,e,i){var n=this.data;for(var r in t)n[r]=_(n[r],t[r],e);if(this.setv({data:n},{silent:!0}),this.streaming.emit(),null!=this.document){var o=new a.ColumnsStreamedEvent(this.document,this.ref(),t,e);this.document._notify_change(this,\"data\",null,null,{setter_id:i,hint:o})}},l.prototype.patch=function(t,e){var i=this.data,n=new k.Set;for(var r in t){var o=t[r];n=n.union(p(i[r],o,this._shapes[r]))}if(this.setv({data:i},{silent:!0}),this.patching.emit(n.values),null!=this.document){var s=new a.ColumnsPatchedEvent(this.document,this.ref(),t);this.document._notify_change(this,\"data\",null,null,{setter_id:e,hint:s})}},l}(r.ColumnarDataSource);(i.ColumnDataSource=l).initClass()},function(t,e,i){var n=t(391),r=t(202),o=t(19),s=t(14),a=t(17),l=t(15),h=t(44),u=t(21),c=t(32),_=t(197),p=t(196),d=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.get_array=function(t){var e=this.data[t];return null==e?this.data[t]=e=[]:h.isArray(e)||(this.data[t]=e=Array.from(e)),e},t.initClass=function(){this.prototype.type=\"ColumnarDataSource\",this.define({selection_policy:[l.Instance,function(){return new p.UnionRenderers}]}),this.internal({selection_manager:[l.Instance,function(t){return new a.SelectionManager({source:t})}],inspected:[l.Instance,function(){return new _.Selection}],_shapes:[l.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._select=new o.Signal0(this,\"select\"),this.inspect=new o.Signal(this,\"inspect\"),this.streaming=new o.Signal0(this,\"streaming\"),this.patching=new o.Signal(this,\"patching\")},t.prototype.get_column=function(t){var e=this.data[t];return null!=e?e:null},t.prototype.columns=function(){return c.keys(this.data)},t.prototype.get_length=function(t){void 0===t&&(t=!0);var e=u.uniq(c.values(this.data).map(function(t){return t.length}));switch(e.length){case 0:return null;case 1:return e[0];default:var i=\"data source has columns of inconsistent lengths\";if(t)return s.logger.warn(i),e.sort()[0];throw new Error(i)}},t.prototype.get_indices=function(){var t=this.get_length();return u.range(0,null!=t?t:1)},t.prototype.clear=function(){for(var t={},e=0,i=this.columns();e<i.length;e++){var n=i[e];t[n]=new this.data[n].constructor}this.data=t},t}(r.DataSource);(i.ColumnarDataSource=d).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=t(197),l=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DataSource\",this.define({selected:[o.Instance,function(){return new a.Selection}],callback:[o.Any]})},t.prototype.connect_signals=function(){var e=this;i.prototype.connect_signals.call(this),this.connect(this.properties.selected.change,function(){var t=e.callback;null!=t&&(s.isFunction(t)?t(e):t.execute(e))})},t}(r.Model);(i.DataSource=l).initClass()},function(t,e,i){var n=t(391),r=t(201),b=t(14),o=t(15),s=t(21),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GeoJSONDataSource\",this.define({geojson:[o.Any]}),this.internal({data:[o.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._update_data()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.geojson.change,function(){return t._update_data()})},t.prototype._update_data=function(){this.data=this.geojson_to_column_data()},t.prototype._get_new_list_array=function(t){return s.range(0,t).map(function(t){return[]})},t.prototype._get_new_nan_array=function(t){return s.range(0,t).map(function(t){return NaN})},t.prototype._add_properties=function(t,e,i,n){var r=t.properties||{};for(var o in r)e.hasOwnProperty(o)||(e[o]=this._get_new_nan_array(n)),e[o][i]=r[o]},t.prototype._add_geometry=function(t,e,i){function n(t){return null!=t?t:NaN}function r(t,e){return t.concat([[NaN,NaN,NaN]]).concat(e)}switch(t.type){case\"Point\":var o=t.coordinates,s=o[0],a=o[1],l=o[2];e.x[i]=s,e.y[i]=a,e.z[i]=n(l);break;case\"LineString\":for(var h=t.coordinates,u=0;u<h.length;u++){var c=h[u],s=c[0],a=c[1],l=c[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"Polygon\":1<t.coordinates.length&&b.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\");for(var _=t.coordinates[0],u=0;u<_.length;u++){var p=_[u],s=p[0],a=p[1],l=p[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"MultiPoint\":b.logger.warn(\"MultiPoint not supported in Bokeh\");break;case\"MultiLineString\":for(var h=t.coordinates.reduce(r),u=0;u<h.length;u++){var d=h[u],s=d[0],a=d[1],l=d[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"MultiPolygon\":for(var f=[],v=0,m=t.coordinates;v<m.length;v++){var g=m[v];1<g.length&&b.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\"),f.push(g[0])}for(var h=f.reduce(r),u=0;u<h.length;u++){var y=h[u],s=y[0],a=y[1],l=y[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;default:throw new Error(\"Invalid GeoJSON geometry type: \"+t.type)}},t.prototype.geojson_to_column_data=function(){var t,e=JSON.parse(this.geojson);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\")}for(var i=0,n=0,r=t;n<r.length;n++){var o=r[n],s=\"Feature\"===o.type?o.geometry:o;\"GeometryCollection\"==s.type?i+=s.geometries.length:i+=1}for(var a={x:this._get_new_nan_array(i),y:this._get_new_nan_array(i),z:this._get_new_nan_array(i),xs:this._get_new_list_array(i),ys:this._get_new_list_array(i),zs:this._get_new_list_array(i)},l=0,h=0,u=t;h<u.length;h++){var o=u[h],s=\"Feature\"==o.type?o.geometry:o;if(\"GeometryCollection\"==s.type)for(var c=0,_=s.geometries;c<_.length;c++){var p=_[c];this._add_geometry(p,a,l),\"Feature\"===o.type&&this._add_properties(o,a,l,i),l+=1}else this._add_geometry(s,a,l),\"Feature\"===o.type&&this._add_properties(o,a,l,i),l+=1}return a},t}(r.ColumnarDataSource);(i.GeoJSONDataSource=a).initClass()},function(t,e,i){var n=t(198);i.AjaxDataSource=n.AjaxDataSource;var r=t(200);i.ColumnDataSource=r.ColumnDataSource;var o=t(201);i.ColumnarDataSource=o.ColumnarDataSource;var s=t(199);i.CDSView=s.CDSView;var a=t(202);i.DataSource=a.DataSource;var l=t(203);i.GeoJSONDataSource=l.GeoJSONDataSource;var h=t(205);i.RemoteDataSource=h.RemoteDataSource},function(t,e,i){var n=t(391),r=t(200),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.get_column=function(t){var e=this.data[t];return null!=e?e:[]},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.setup()},t.initClass=function(){this.prototype.type=\"RemoteDataSource\",this.define({data_url:[o.String],polling_interval:[o.Number]})},t}(r.ColumnDataSource);(i.RemoteDataSource=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),v=t(21),s=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"AdaptiveTicker\",this.define({base:[o.Number,10],mantissas:[o.Array,[1,2,5]],min_interval:[o.Number,0],max_interval:[o.Number]})},t.prototype.initialize=function(){i.prototype.initialize.call(this);var t=v.nth(this.mantissas,-1)/this.base,e=v.nth(this.mantissas,0)*this.base;this.extended_mantissas=[t].concat(this.mantissas,[e]),this.base_factor=0===this.get_min_interval()?1:this.get_min_interval()},t.prototype.get_interval=function(t,e,i){var n,r,o,s,a,l=e-t,h=this.get_ideal_interval(t,e,i),u=Math.floor((s=h/this.base_factor,void 0===(a=this.base)&&(a=Math.E),Math.log(s)/Math.log(a))),c=Math.pow(this.base,u)*this.base_factor,_=this.extended_mantissas,p=_.map(function(t){return Math.abs(i-l/(t*c))}),d=_[v.argmin(p)],f=d*c;return n=f,r=this.get_min_interval(),o=this.get_max_interval(),Math.max(r,Math.min(o,n))},t}(r.ContinuousTicker);(i.AdaptiveTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(206),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BasicTicker\"},t}(r.AdaptiveTicker);(i.BasicTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(219),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalTicker\"},t.prototype.get_ticks=function(t,e,i,n,r){var o=this._collect(i.factors,i,t,e),s=this._collect(i.tops||[],i,t,e),a=this._collect(i.mids||[],i,t,e);return{major:o,minor:[],tops:s,mids:a}},t.prototype._collect=function(t,e,i,n){for(var r=[],o=0,s=t;o<s.length;o++){var a=s[o],l=e.synthetic(a);i<l&&l<n&&r.push(a)}return r},t}(r.Ticker);(i.CategoricalTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),c=t(21),_=t(32),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CompositeTicker\",this.define({tickers:[o.Array,[]]})},Object.defineProperty(t.prototype,\"min_intervals\",{get:function(){return this.tickers.map(function(t){return t.get_min_interval()})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_intervals\",{get:function(){return this.tickers.map(function(t){return t.get_max_interval()})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"min_interval\",{get:function(){return this.min_intervals[0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_interval\",{get:function(){return this.max_intervals[0]},enumerable:!0,configurable:!0}),t.prototype.get_best_ticker=function(t,e,i){var n,r=e-t,o=this.get_ideal_interval(t,e,i),s=[c.sortedIndex(this.min_intervals,o)-1,c.sortedIndex(this.max_intervals,o)],a=[this.min_intervals[s[0]],this.max_intervals[s[1]]],l=a.map(function(t){return Math.abs(i-r/t)});if(_.isEmpty(l.filter(function(t){return!isNaN(t)})))n=this.tickers[0];else{var h=c.argmin(l),u=s[h];n=this.tickers[u]}return n},t.prototype.get_interval=function(t,e,i){var n=this.get_best_ticker(t,e,i);return n.get_interval(t,e,i)},t.prototype.get_ticks_no_defaults=function(t,e,i,n){var r=this.get_best_ticker(t,e,n);return r.get_ticks_no_defaults(t,e,i,n)},t}(r.ContinuousTicker);(i.CompositeTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(219),o=t(15),x=t(21),w=t(44),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousTicker\",this.define({num_minor_ticks:[o.Number,5],desired_num_ticks:[o.Number,6]})},t.prototype.get_ticks=function(t,e,i,n,r){return this.get_ticks_no_defaults(t,e,n,this.desired_num_ticks)},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=this.get_interval(e,i,n),o=Math.floor(e/r),s=Math.ceil(i/r),a=(w.isStrictNaN(o)||w.isStrictNaN(s)?[]:x.range(o,s+1)).map(function(t){return t*r}).filter(function(t){return e<=t&&t<=i}),l=this.num_minor_ticks,h=[];if(0<l&&0<a.length){for(var u=r/l,c=x.range(0,l).map(function(t){return t*u}),_=0,p=c.slice(1);_<p.length;_++){var d=p[_],f=a[0]-d;e<=f&&f<=i&&h.push(f)}for(var v=0,m=a;v<m.length;v++)for(var g=m[v],y=0,b=c;y<b.length;y++){var d=b[y],f=g+d;e<=f&&f<=i&&h.push(f)}}return{major:a,minor:h}},t.prototype.get_min_interval=function(){return this.min_interval},t.prototype.get_max_interval=function(){return null!=this.max_interval?this.max_interval:1/0},t.prototype.get_ideal_interval=function(t,e,i){var n=e-t;return n/i},t}(r.Ticker);(i.ContinuousTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(21),o=t(206),s=t(209),a=t(212),l=t(217),h=t(221),u=t(220),c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatetimeTicker\",this.override({num_minor_ticks:0,tickers:function(){return[new o.AdaptiveTicker({mantissas:[1,2,5],base:10,min_interval:0,max_interval:500*u.ONE_MILLI,num_minor_ticks:0}),new o.AdaptiveTicker({mantissas:[1,2,5,10,15,20,30],base:60,min_interval:u.ONE_SECOND,max_interval:30*u.ONE_MINUTE,num_minor_ticks:0}),new o.AdaptiveTicker({mantissas:[1,2,4,6,8,12],base:24,min_interval:u.ONE_HOUR,max_interval:12*u.ONE_HOUR,num_minor_ticks:0}),new a.DaysTicker({days:r.range(1,32)}),new a.DaysTicker({days:r.range(1,31,3)}),new a.DaysTicker({days:[1,8,15,22]}),new a.DaysTicker({days:[1,15]}),new l.MonthsTicker({months:r.range(0,12,1)}),new l.MonthsTicker({months:r.range(0,12,2)}),new l.MonthsTicker({months:r.range(0,12,4)}),new l.MonthsTicker({months:r.range(0,12,6)}),new h.YearsTicker({})]}})},t}(s.CompositeTicker);(i.DatetimeTicker=c).initClass()},function(t,e,i){var n=t(391),r=t(218),u=t(220),o=t(15),c=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DaysTicker\",this.define({days:[o.Array,[]]}),this.override({num_minor_ticks:0})},t.prototype.initialize=function(){e.prototype.initialize.call(this);var t=this.days;1<t.length?this.interval=(t[1]-t[0])*u.ONE_DAY:this.interval=31*u.ONE_DAY},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=function(t,e){var i=u.last_month_no_later_than(new Date(t)),n=u.last_month_no_later_than(new Date(e));n.setUTCMonth(n.getUTCMonth()+1);for(var r=[],o=i;r.push(u.copy_date(o)),o.setUTCMonth(o.getUTCMonth()+1),!(n<o););return r}(e,i),h=this.days,o=this.interval,s=c.concat(r.map(function(t){return function(t,e){for(var i=t.getUTCMonth(),n=[],r=0,o=h;r<o.length;r++){var s=o[r],a=u.copy_date(t);a.setUTCDate(s);var l=new Date(a.getTime()+e/2);l.getUTCMonth()==i&&n.push(a)}return n}(t,o)})),a=s.map(function(t){return t.getTime()}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(r.SingleIntervalTicker);(i.DaysTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),s=function(i){function t(t){var e=i.call(this,t)||this;return e.min_interval=0,e.max_interval=0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"FixedTicker\",this.define({ticks:[o.Array,[]],minor_ticks:[o.Array,[]]})},t.prototype.get_ticks_no_defaults=function(t,e,i,n){return{major:this.ticks,minor:this.minor_ticks}},t.prototype.get_interval=function(t,e,i){return 0},t}(r.ContinuousTicker);(i.FixedTicker=s).initClass()},function(t,e,i){var n=t(206);i.AdaptiveTicker=n.AdaptiveTicker;var r=t(207);i.BasicTicker=r.BasicTicker;var o=t(208);i.CategoricalTicker=o.CategoricalTicker;var s=t(209);i.CompositeTicker=s.CompositeTicker;var a=t(210);i.ContinuousTicker=a.ContinuousTicker;var l=t(211);i.DatetimeTicker=l.DatetimeTicker;var h=t(212);i.DaysTicker=h.DaysTicker;var u=t(213);i.FixedTicker=u.FixedTicker;var c=t(215);i.LogTicker=c.LogTicker;var _=t(216);i.MercatorTicker=_.MercatorTicker;var p=t(217);i.MonthsTicker=p.MonthsTicker;var d=t(218);i.SingleIntervalTicker=d.SingleIntervalTicker;var f=t(219);i.Ticker=f.Ticker;var v=t(221);i.YearsTicker=v.YearsTicker},function(t,e,i){var n=t(391),r=t(206),N=t(21),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogTicker\",this.override({mantissas:[1,5]})},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r,o=this.num_minor_ticks,s=[],a=this.base,l=Math.log(e)/Math.log(a),h=Math.log(i)/Math.log(a),u=h-l;if(isFinite(u))if(u<2){var c=this.get_interval(e,i,n),_=Math.floor(e/c),p=Math.ceil(i/c);if(r=N.range(_,p+1).filter(function(t){return 0!=t}).map(function(t){return t*c}).filter(function(t){return e<=t&&t<=i}),0<o&&0<r.length){for(var d=c/o,f=N.range(0,o).map(function(t){return t*d}),v=0,m=f.slice(1);v<m.length;v++){var g=m[v];s.push(r[0]-g)}for(var y=0,b=r;y<b.length;y++)for(var x=b[y],w=0,k=f;w<k.length;w++){var g=k[w];s.push(x+g)}}}else{var S=Math.ceil(.999999*l),C=Math.floor(1.000001*h),T=Math.ceil((C-S)/9);if(r=N.range(S-1,C+1,T).map(function(t){return Math.pow(a,t)}),0<o&&0<r.length){for(var A=Math.pow(a,T)/o,f=N.range(1,o+1).map(function(t){return t*A}),E=0,M=f;E<M.length;E++){var g=M[E];s.push(r[0]/g)}s.push(r[0]);for(var O=0,z=r;O<z.length;O++)for(var x=z[O],P=0,j=f;P<j.length;P++){var g=j[P];s.push(x*g)}}}else r=[];return{major:r.filter(function(t){return e<=t&&t<=i}),minor:s.filter(function(t){return e<=t&&t<=i})}},t}(r.AdaptiveTicker);(i.LogTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(207),o=t(15),M=t(33),s=function(E){function t(t){return E.call(this,t)||this}return n.__extends(t,E),t.initClass=function(){this.prototype.type=\"MercatorTicker\",this.define({dimension:[o.LatLon]})},t.prototype.get_ticks_no_defaults=function(t,e,i,n){var r,o,s,a,l,h,u,c;if(null==this.dimension)throw new Error(\"MercatorTicker.dimension not configured\");r=M.clip_mercator(t,e,this.dimension),t=r[0],e=r[1],\"lon\"===this.dimension?(o=M.wgs84_mercator.inverse([t,i]),h=o[0],c=o[1],s=M.wgs84_mercator.inverse([e,i]),u=s[0],c=s[1]):(a=M.wgs84_mercator.inverse([i,t]),c=a[0],h=a[1],l=M.wgs84_mercator.inverse([i,e]),c=l[0],u=l[1]);var _=E.prototype.get_ticks_no_defaults.call(this,h,u,i,n),p=[],d=[];if(\"lon\"===this.dimension){for(var f=0,v=_.major;f<v.length;f++){var m=v[f];if(M.in_bounds(m,\"lon\")){var g=M.wgs84_mercator.forward([m,c])[0];p.push(g)}}for(var y=0,b=_.minor;y<b.length;y++){var m=b[y];if(M.in_bounds(m,\"lon\")){var g=M.wgs84_mercator.forward([m,c])[0];d.push(g)}}}else{for(var x=0,w=_.major;x<w.length;x++){var m=w[x];if(M.in_bounds(m,\"lat\")){var k=M.wgs84_mercator.forward([c,m]),S=k[1];p.push(S)}}for(var C=0,T=_.minor;C<T.length;C++){var m=T[C];if(M.in_bounds(m,\"lat\")){var A=M.wgs84_mercator.forward([c,m]),S=A[1];d.push(S)}}}return{major:p,minor:d}},t}(r.BasicTicker);(i.MercatorTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(218),h=t(220),o=t(15),u=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MonthsTicker\",this.define({months:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this);var t=this.months;1<t.length?this.interval=(t[1]-t[0])*h.ONE_MONTH:this.interval=12*h.ONE_MONTH},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=function(t,e){var i=h.last_year_no_later_than(new Date(t)),n=h.last_year_no_later_than(new Date(e));n.setUTCFullYear(n.getUTCFullYear()+1);for(var r=[],o=i;r.push(h.copy_date(o)),o.setUTCFullYear(o.getUTCFullYear()+1),!(n<o););return r}(e,i),o=this.months,s=u.concat(r.map(function(i){return o.map(function(t){var e=h.copy_date(i);return e.setUTCMonth(t),e})})),a=s.map(function(t){return t.getTime()}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(r.SingleIntervalTicker);(i.MonthsTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"SingleIntervalTicker\",this.define({interval:[o.Number]})},t.prototype.get_interval=function(t,e,i){return this.interval},Object.defineProperty(t.prototype,\"min_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),t}(r.ContinuousTicker);(i.SingleIntervalTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ticker\"},t}(r.Model);(i.Ticker=o).initClass()},function(t,e,i){function n(t){return new Date(t.getTime())}function r(t){var e=n(t);return e.setUTCDate(1),e.setUTCHours(0),e.setUTCMinutes(0),e.setUTCSeconds(0),e.setUTCMilliseconds(0),e}i.ONE_MILLI=1,i.ONE_SECOND=1e3,i.ONE_MINUTE=60*i.ONE_SECOND,i.ONE_HOUR=60*i.ONE_MINUTE,i.ONE_DAY=24*i.ONE_HOUR,i.ONE_MONTH=30*i.ONE_DAY,i.ONE_YEAR=365*i.ONE_DAY,i.copy_date=n,i.last_month_no_later_than=r,i.last_year_no_later_than=function(t){var e=r(t);return e.setUTCMonth(0),e}},function(t,e,i){var n=t(391),r=t(207),o=t(218),h=t(220),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"YearsTicker\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.interval=h.ONE_YEAR,this.basic_ticker=new r.BasicTicker({num_minor_ticks:0})},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=h.last_year_no_later_than(new Date(e)).getUTCFullYear(),o=h.last_year_no_later_than(new Date(i)).getUTCFullYear(),s=this.basic_ticker.get_ticks_no_defaults(r,o,t,n).major,a=s.map(function(t){return Date.UTC(t,0,1)}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(o.SingleIntervalTicker);(i.YearsTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(225),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BBoxTileSource\",this.define({use_latlon:[o.Bool,!1]})},t.prototype.get_image_url=function(t,e,i){var n,r,o,s,a,l,h=this.string_lookup_replace(this.url,this.extra_url_vars);return this.use_latlon?(n=this.get_tile_geographic_bounds(t,e,i),s=n[0],l=n[1],o=n[2],a=n[3]):(r=this.get_tile_meter_bounds(t,e,i),s=r[0],l=r[1],o=r[2],a=r[3]),h.replace(\"{XMIN}\",s.toString()).replace(\"{YMIN}\",l.toString()).replace(\"{XMAX}\",o.toString()).replace(\"{YMAX}\",a.toString())},t}(r.MercatorTileSource);(i.BBoxTileSource=s).initClass()},function(t,e,i){var n=t(44),r=function(){function t(){this.images=[]}return t.prototype.pop=function(){var t=this.images.pop();return null!=t?t:new Image},t.prototype.push=function(t){var e;50<this.images.length||(n.isArray(t)?(e=this.images).push.apply(e,t):this.images.push(t))},t}();i.ImagePool=r},function(t,e,i){var n=t(222);i.BBoxTileSource=n.BBoxTileSource;var r=t(225);i.MercatorTileSource=r.MercatorTileSource;var o=t(226);i.QUADKEYTileSource=o.QUADKEYTileSource;var s=t(227);i.TileRenderer=s.TileRenderer;var a=t(228);i.TileSource=a.TileSource;var l=t(230);i.TMSTileSource=l.TMSTileSource;var h=t(231);i.WMTSTileSource=h.WMTSTileSource},function(t,e,i){var n=t(391),r=t(228),o=t(15),s=t(21),h=t(229),a=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"MercatorTileSource\",this.define({snap_to_zoom:[o.Bool,!1],wrap_around:[o.Bool,!0]}),this.override({x_origin_offset:20037508.34,y_origin_offset:20037508.34,initial_resolution:156543.03392804097})},t.prototype.initialize=function(){var e=this;i.prototype.initialize.call(this),this._resolutions=s.range(this.min_zoom,this.max_zoom+1).map(function(t){return e.get_resolution(t)})},t.prototype._computed_initial_resolution=function(){return null!=this.initial_resolution?this.initial_resolution:2*Math.PI*6378137/this.tile_size},t.prototype.is_valid_tile=function(t,e,i){return!(!this.wrap_around&&(t<0||t>=Math.pow(2,i))||e<0||e>=Math.pow(2,i))},t.prototype.parent_by_tile_xyz=function(t,e,i){var n=this.tile_xyz_to_quadkey(t,e,i),r=n.substring(0,n.length-1);return this.quadkey_to_tile_xyz(r)},t.prototype.get_resolution=function(t){return this._computed_initial_resolution()/Math.pow(2,t)},t.prototype.get_resolution_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e;return[n,r]},t.prototype.get_level_by_extent=function(t,e,i){for(var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=0,a=0,l=this._resolutions;a<l.length;a++){var h=l[a];if(h<o){if(0==s)return 0;if(0<s)return s-1}s+=1}return s-1},t.prototype.get_closest_level_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=this._resolutions.reduce(function(t,e){return Math.abs(e-o)<Math.abs(t-o)?e:t});return this._resolutions.indexOf(s)},t.prototype.snap_to_zoom_level=function(t,e,i,n){var r=t[0],o=t[1],s=t[2],a=t[3],l=this._resolutions[n],h=i*l,u=e*l;if(!this.snap_to_zoom){var c=(s-r)/h,_=(a-o)/u;_<c?(h=s-r,u*=c):(h*=_,u=a-o)}var p=(h-(s-r))/2,d=(u-(a-o))/2;return[r-p,o-d,s+p,a+d]},t.prototype.tms_to_wmts=function(t,e,i){\"Note this works both ways\";return[t,Math.pow(2,i)-1-e,i]},t.prototype.wmts_to_tms=function(t,e,i){\"Note this works both ways\";return[t,Math.pow(2,i)-1-e,i]},t.prototype.pixels_to_meters=function(t,e,i){var n=this.get_resolution(i),r=t*n-this.x_origin_offset,o=e*n-this.y_origin_offset;return[r,o]},t.prototype.meters_to_pixels=function(t,e,i){var n=this.get_resolution(i),r=(t+this.x_origin_offset)/n,o=(e+this.y_origin_offset)/n;return[r,o]},t.prototype.pixels_to_tile=function(t,e){var i=Math.ceil(t/this.tile_size);i=0===i?i:i-1;var n=Math.max(Math.ceil(e/this.tile_size)-1,0);return[i,n]},t.prototype.pixels_to_raster=function(t,e,i){var n=this.tile_size<<i;return[t,n-e]},t.prototype.meters_to_tile=function(t,e,i){var n=this.meters_to_pixels(t,e,i),r=n[0],o=n[1];return this.pixels_to_tile(r,o)},t.prototype.get_tile_meter_bounds=function(t,e,i){var n=this.pixels_to_meters(t*this.tile_size,e*this.tile_size,i),r=n[0],o=n[1],s=this.pixels_to_meters((t+1)*this.tile_size,(e+1)*this.tile_size,i),a=s[0],l=s[1];return[r,o,a,l]},t.prototype.get_tile_geographic_bounds=function(t,e,i){var n=this.get_tile_meter_bounds(t,e,i),r=h.meters_extent_to_geographic(n),o=r[0],s=r[1],a=r[2],l=r[3];return[o,s,a,l]},t.prototype.get_tiles_by_extent=function(t,e,i){void 0===i&&(i=1);var n=t[0],r=t[1],o=t[2],s=t[3],a=this.meters_to_tile(n,r,e),l=a[0],h=a[1],u=this.meters_to_tile(o,s,e),c=u[0],_=u[1];l-=i,h-=i,c+=i;for(var p=[],d=_+=i;h<=d;d--)for(var f=l;f<=c;f++)this.is_valid_tile(f,d,e)&&p.push([f,d,e,this.get_tile_meter_bounds(f,d,e)]);return this.sort_tiles_from_center(p,[l,h,c,_]),p},t.prototype.quadkey_to_tile_xyz=function(t){for(var e=0,i=0,n=t.length,r=n;0<r;r--){var o=t.charAt(n-r),s=1<<r-1;switch(o){case\"0\":continue;case\"1\":e|=s;break;case\"2\":i|=s;break;case\"3\":e|=s,i|=s;break;default:throw new TypeError(\"Invalid Quadkey: \"+t)}}return[e,i,n]},t.prototype.tile_xyz_to_quadkey=function(t,e,i){for(var n=\"\",r=i;0<r;r--){var o=1<<r-1,s=0;0!=(t&o)&&(s+=1),0!=(e&o)&&(s+=2),n+=s.toString()}return n},t.prototype.children_by_tile_xyz=function(t,e,i){for(var n=this.tile_xyz_to_quadkey(t,e,i),r=[],o=0;o<=3;o++){var s=this.quadkey_to_tile_xyz(n+o.toString()),a=s[0],l=s[1],h=s[2],u=this.get_tile_meter_bounds(a,l,h);r.push([a,l,h,u])}return r},t.prototype.get_closest_parent_by_tile_xyz=function(t,e,i){var n,r,o,s=this.calculate_world_x_by_tile_xyz(t,e,i);n=this.normalize_xyz(t,e,i),t=n[0],e=n[1],i=n[2];for(var a=this.tile_xyz_to_quadkey(t,e,i);0<a.length;)if(a=a.substring(0,a.length-1),r=this.quadkey_to_tile_xyz(a),t=r[0],e=r[1],i=r[2],o=this.denormalize_xyz(t,e,i,s),t=o[0],e=o[1],i=o[2],this.tile_xyz_to_key(t,e,i)in this.tiles)return[t,e,i];return[0,0,0]},t.prototype.normalize_xyz=function(t,e,i){if(this.wrap_around){var n=Math.pow(2,i);return[(t%n+n)%n,e,i]}return[t,e,i]},t.prototype.denormalize_xyz=function(t,e,i,n){return[t+n*Math.pow(2,i),e,i]},t.prototype.denormalize_meters=function(t,e,i,n){return[t+2*n*Math.PI*6378137,e]},t.prototype.calculate_world_x_by_tile_xyz=function(t,e,i){return Math.floor(t/Math.pow(2,i))},t}(r.TileSource);(i.MercatorTileSource=a).initClass()},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"QUADKEYTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars),r=this.tms_to_wmts(t,e,i),o=r[0],s=r[1],a=r[2],l=this.tile_xyz_to_quadkey(o,s,a);return n.replace(\"{Q}\",l)},t}(r.MercatorTileSource);(i.QUADKEYTileSource=o).initClass()},function(t,e,i){var r=t(391),o=t(223),n=t(231),s=t(189),a=t(184),l=t(5),h=t(15),I=t(21),u=t(44),c=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return r.__extends(t,n),t.prototype.initialize=function(t){this.attributionEl=null,this._tiles=[],n.prototype.initialize.call(this,t)},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.request_render()})},t.prototype.get_extent=function(){return[this.x_range.start,this.y_range.start,this.x_range.end,this.y_range.end]},Object.defineProperty(t.prototype,\"map_plot\",{get:function(){return this.plot_model.plot},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"map_canvas\",{get:function(){return this.plot_view.canvas_view.ctx},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"map_frame\",{get:function(){return this.plot_model.frame},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"x_range\",{get:function(){return this.map_plot.x_range},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"y_range\",{get:function(){return this.map_plot.y_range},enumerable:!0,configurable:!0}),t.prototype._set_data=function(){this.pool=new o.ImagePool,this.extent=this.get_extent(),this._last_height=void 0,this._last_width=void 0},t.prototype._add_attribution=function(){var t=this.model.tile_source.attribution;if(u.isString(t)&&0<t.length){if(null==this.attributionEl){var e=this.plot_model.canvas._right.value-this.plot_model.frame._right.value,i=this.plot_model.canvas._bottom.value-this.plot_model.frame._bottom.value,n=this.map_frame._width.value;this.attributionEl=l.div({class:\"bk-tile-attribution\",style:{position:\"absolute\",bottom:i+\"px\",right:e+\"px\",\"max-width\":n-4+\"px\",padding:\"2px\",\"background-color\":\"rgba(255,255,255,0.5)\",\"font-size\":\"7pt\",\"font-family\":\"sans-serif\",\"line-height\":\"1.05\",\"white-space\":\"nowrap\",overflow:\"hidden\",\"text-overflow\":\"ellipsis\"}});var r=this.plot_view.canvas_view.events_el;r.appendChild(this.attributionEl)}this.attributionEl.innerHTML=t,this.attributionEl.title=this.attributionEl.textContent.replace(/\\s*\\n\\s*/g,\" \")}},t.prototype._map_data=function(){this.initial_extent=this.get_extent();var t=this.model.tile_source.get_level_by_extent(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value),e=this.model.tile_source.snap_to_zoom_level(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value,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 a.Range1d&&(this.x_range.reset_start=e[0],this.x_range.reset_end=e[2]),this.y_range instanceof a.Range1d&&(this.y_range.reset_start=e[1],this.y_range.reset_end=e[3]),this._add_attribution()},t.prototype._on_tile_load=function(t,e){t.img=e.target,t.loaded=!0,this.request_render()},t.prototype._on_tile_cache_load=function(t,e){t.img=e.target,t.loaded=!0,t.finished=!0,this.notify_finished()},t.prototype._on_tile_error=function(t){t.finished=!0},t.prototype._create_tile=function(t,e,i,n,r){void 0===r&&(r=!1);var o=this.model.tile_source.normalize_xyz(t,e,i),s=o[0],a=o[1],l=o[2],h=this.pool.pop(),u={img:h,tile_coords:[t,e,i],normalized_coords:[s,a,l],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:n,loaded:!1,finished:!1,x_coord:n[0],y_coord:n[3]};h.onload=r?this._on_tile_cache_load.bind(this,u):this._on_tile_load.bind(this,u),h.onerror=this._on_tile_error.bind(this,u),h.alt=\"\",h.src=this.model.tile_source.get_image_url(s,a,l),this.model.tile_source.tiles[u.cache_key]=u,this._tiles.push(u)},t.prototype._enforce_aspect_ratio=function(){if(this._last_height!==this.map_frame._height.value||this._last_width!==this.map_frame._width.value){var t=this.get_extent(),e=this.model.tile_source.get_level_by_extent(t,this.map_frame._height.value,this.map_frame._width.value),i=this.model.tile_source.snap_to_zoom_level(t,this.map_frame._height.value,this.map_frame._width.value,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._height.value,this._last_width=this.map_frame._width.value}},t.prototype.has_finished=function(){if(!n.prototype.has_finished.call(this))return!1;if(0===this._tiles.length)return!1;for(var t=0,e=this._tiles;t<e.length;t++){var i=e[t];if(!i.finished)return!1}return!0},t.prototype.render=function(){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()},t.prototype._draw_tile=function(t){var e=this.model.tile_source.tiles[t];if(null!=e){var i=this.plot_view.map_to_screen([e.bounds[0]],[e.bounds[3]]),n=i[0][0],r=i[1][0],o=this.plot_view.map_to_screen([e.bounds[2]],[e.bounds[1]]),s=o[0][0],a=o[1][0],l=s-n,h=a-r,u=n,c=r,_=this.map_canvas.getImageSmoothingEnabled();this.map_canvas.setImageSmoothingEnabled(this.model.smoothing),this.map_canvas.drawImage(e.img,u,c,l,h),this.map_canvas.setImageSmoothingEnabled(_),e.finished=!0}},t.prototype._set_rect=function(){var t=this.plot_model.plot.properties.outline_line_width.value(),e=this.map_frame._left.value+t/2,i=this.map_frame._top.value+t/2,n=this.map_frame._width.value-t,r=this.map_frame._height.value-t;this.map_canvas.rect(e,i,n,r),this.map_canvas.clip()},t.prototype._render_tiles=function(t){this.map_canvas.save(),this._set_rect(),this.map_canvas.globalAlpha=this.model.alpha;for(var e=0,i=t;e<i.length;e++){var n=i[e];this._draw_tile(n)}this.map_canvas.restore()},t.prototype._prefetch_tiles=function(){for(var t=this.model.tile_source,e=this.get_extent(),i=this.map_frame._height.value,n=this.map_frame._width.value,r=this.model.tile_source.get_level_by_extent(e,i,n),o=this.model.tile_source.get_tiles_by_extent(e,r),s=0,a=Math.min(10,o.length);s<a;s++)for(var l=o[s],h=l[0],u=l[1],c=l[2],_=this.model.tile_source.children_by_tile_xyz(h,u,c),p=0,d=_;p<d.length;p++){var f=d[p],v=f[0],m=f[1],g=f[2],y=f[3];t.tile_xyz_to_key(v,m,g)in t.tiles||this._create_tile(v,m,g,y,!0)}},t.prototype._fetch_tiles=function(t){for(var e=0,i=t;e<i.length;e++){var n=i[e],r=n[0],o=n[1],s=n[2],a=n[3];this._create_tile(r,o,s,a)}},t.prototype._update=function(){var t=this,e=this.model.tile_source,i=e.min_zoom,n=e.max_zoom,r=this.get_extent(),o=this.extent[2]-this.extent[0]<r[2]-r[0],s=this.map_frame._height.value,a=this.map_frame._width.value,l=e.get_level_by_extent(r,s,a),h=!1;l<i?(r=this.extent,l=i,h=!0):n<l&&(r=this.extent,l=n,h=!0),h&&(this.x_range.setv({x_range:{start:r[0],end:r[2]}}),this.y_range.setv({start:r[1],end:r[3]}),this.extent=r),this.extent=r;for(var u=e.get_tiles_by_extent(r,l),c=[],_=[],p=[],d=[],f=0,v=u;f<v.length;f++){var m=v[f],g=m[0],y=m[1],b=m[2],x=e.tile_xyz_to_key(g,y,b),w=e.tiles[x];if(null!=w&&w.loaded)_.push(x);else if(this.model.render_parents){var k=e.get_closest_parent_by_tile_xyz(g,y,b),S=k[0],C=k[1],T=k[2],A=e.tile_xyz_to_key(S,C,T),E=e.tiles[A];if(null!=E&&E.loaded&&!I.includes(p,A)&&p.push(A),o)for(var M=e.children_by_tile_xyz(g,y,b),O=0,z=M;O<z.length;O++){var P=z[O],j=P[0],N=P[1],F=P[2],D=e.tile_xyz_to_key(j,N,F);D in e.tiles&&d.push(D)}}null==w&&c.push(m)}this._render_tiles(p),this._render_tiles(d),this._render_tiles(_),null!=this.render_timer&&clearTimeout(this.render_timer),this.render_timer=setTimeout(function(){return t._fetch_tiles(c)},65)},t}(s.RendererView);i.TileRendererView=c;var _=function(e){function t(t){return e.call(this,t)||this}return r.__extends(t,e),t.initClass=function(){this.prototype.type=\"TileRenderer\",this.prototype.default_view=c,this.define({alpha:[h.Number,1],x_range_name:[h.String,\"default\"],y_range_name:[h.String,\"default\"],smoothing:[h.Bool,!0],tile_source:[h.Instance,function(){return new n.WMTSTileSource}],render_parents:[h.Bool,!0]}),this.override({level:\"underlay\"})},t}(s.Renderer);(i.TileRenderer=_).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(223),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TileSource\",this.define({url:[s.String,\"\"],tile_size:[s.Number,256],max_zoom:[s.Number,30],min_zoom:[s.Number,0],extra_url_vars:[s.Any,{}],attribution:[s.String,\"\"],x_origin_offset:[s.Number],y_origin_offset:[s.Number],initial_resolution:[s.Number]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.tiles={},this.pool=new o.ImagePool,this._normalize_case()},t.prototype.string_lookup_replace=function(t,e){var i=t;for(var n in e){var r=e[n];i=i.replace(\"{\"+n+\"}\",r)}return i},t.prototype._normalize_case=function(){var t=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=t},t.prototype.tile_xyz_to_key=function(t,e,i){return t+\":\"+e+\":\"+i},t.prototype.key_to_tile_xyz=function(t){var e=t.split(\":\").map(function(t){return parseInt(t)}),i=e[0],n=e[1],r=e[2];return[i,n,r]},t.prototype.sort_tiles_from_center=function(t,e){var i=e[0],n=e[1],r=e[2],o=e[3],s=(r-i)/2+i,a=(o-n)/2+n;t.sort(function(t,e){var i=Math.sqrt(Math.pow(s-t[0],2)+Math.pow(a-t[1],2)),n=Math.sqrt(Math.pow(s-e[0],2)+Math.pow(a-e[1],2));return i-n})},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars);return n.replace(\"{X}\",t.toString()).replace(\"{Y}\",e.toString()).replace(\"{Z}\",i.toString())},t}(r.Model);(i.TileSource=a).initClass()},function(t,e,i){var n=t(33);function c(t,e){return n.wgs84_mercator.forward([t,e])}function _(t,e){return n.wgs84_mercator.inverse([t,e])}i.geographic_to_meters=c,i.meters_to_geographic=_,i.geographic_extent_to_meters=function(t){var e=t[0],i=t[1],n=t[2],r=t[3],o=c(e,i),s=o[0],a=o[1],l=c(n,r),h=l[0],u=l[1];return[s,a,h,u]},i.meters_extent_to_geographic=function(t){var e=t[0],i=t[1],n=t[2],r=t[3],o=_(e,i),s=o[0],a=o[1],l=_(n,r),h=l[0],u=l[1];return[s,a,h,u]}},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TMSTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars);return n.replace(\"{X}\",t.toString()).replace(\"{Y}\",e.toString()).replace(\"{Z}\",i.toString())},t}(r.MercatorTileSource);(i.TMSTileSource=o).initClass()},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"WMTSTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars),r=this.tms_to_wmts(t,e,i),o=r[0],s=r[1],a=r[2];return n.replace(\"{X}\",o.toString()).replace(\"{Y}\",s.toString()).replace(\"{Z}\",a.toString())},t}(r.MercatorTileSource);(i.WMTSTileSource=o).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(19),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._clicked=function(){this.model.do.emit()},e}(r.ButtonToolButtonView);i.ActionToolButtonView=s;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.do,function(){return t.doit()})},t}(r.ButtonToolView);i.ActionToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.button_view=s,e.do=new o.Signal0(e,\"do\"),e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ActionTool\"},t}(r.ButtonTool);(i.ActionTool=l).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(15),s=t(44),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-toolbar-button-custom-action\")},e}(r.ActionToolButtonView);i.CustomActionButtonView=a;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.model.callback;s.isFunction(t)?t(this,{}):t.execute(this,{})},e}(r.ActionToolView);i.CustomActionView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Custom Action\",e.button_view=a,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"CustomAction\",this.prototype.default_view=l,this.define({action_tooltip:[o.String,\"Perform a Custom Action\"],callback:[o.Any],icon:[o.String]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.action_tooltip},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.CustomAction=h).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){window.open(this.model.redirect)},e}(r.ActionToolView);i.HelpToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Help\",e.icon=\"bk-tool-icon-help\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"HelpTool\",this.prototype.default_view=s,this.define({help_tooltip:[o.String,\"Click the question mark to learn more about Bokeh plot tools.\"],redirect:[o.String,\"https://bokeh.pydata.org/en/latest/docs/user_guide/tools.html#built-in-tools\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.help_tooltip},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.HelpTool=a).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.plot_view.state_changed,function(){return t.model.disabled=!t.plot_view.can_redo()})},t.prototype.doit=function(){this.plot_view.redo()},t}(r.ActionToolView);i.RedoToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Redo\",e.icon=\"bk-tool-icon-redo\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"RedoTool\",this.prototype.default_view=o,this.override({disabled:!0})},t}(r.ActionTool);(i.RedoTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){this.plot_view.reset()},e}(r.ActionToolView);i.ResetToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Reset\",e.icon=\"bk-tool-icon-reset\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ResetTool\",this.prototype.default_view=o},t}(r.ActionTool);(i.ResetTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){this.plot_view.save(\"bokeh_plot\")},e}(r.ActionToolView);i.SaveToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Save\",e.icon=\"bk-tool-icon-save\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"SaveTool\",this.prototype.default_view=o},t}(r.ActionTool);(i.SaveTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.plot_view.state_changed,function(){return t.model.disabled=!t.plot_view.can_undo()})},t.prototype.doit=function(){this.plot_view.undo()},t}(r.ActionToolView);i.UndoToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Undo\",e.icon=\"bk-tool-icon-undo\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"UndoTool\",this.prototype.default_view=o,this.override({disabled:!0})},t}(r.ActionTool);(i.UndoTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(46),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.plot_model.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,n=\"height\"==e||\"both\"==e,r=o.scale_range(t,this.model.factor,i,n);this.plot_view.push_state(\"zoom_out\",{range:r}),this.plot_view.update_range(r,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.ActionToolView);i.ZoomInToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Zoom In\",e.icon=\"bk-tool-icon-zoom-in\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ZoomInTool\",this.prototype.default_view=a,this.define({factor:[s.Percent,.1],dimensions:[s.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.ZoomInTool=l).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(46),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.plot_model.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,n=\"height\"==e||\"both\"==e,r=o.scale_range(t,-this.model.factor,i,n);this.plot_view.push_state(\"zoom_out\",{range:r}),this.plot_view.update_range(r,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.ActionToolView);i.ZoomOutToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Zoom Out\",e.icon=\"bk-tool-icon-zoom-out\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ZoomOutTool\",this.prototype.default_view=a,this.define({factor:[s.Percent,.1],dimensions:[s.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.ZoomOutTool=l).initClass()},function(t,e,i){var n=t(391),r=t(6),o=t(266),s=t(5),a=t(15),l=t(38),h=t(44),u=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.change,function(){return e.render()}),this.el.addEventListener(\"click\",function(){return e._clicked()}),this.render()},t.prototype.css_classes=function(){return i.prototype.css_classes.call(this).concat(\"bk-toolbar-button\")},t.prototype.render=function(){s.empty(this.el);var t=this.model.computed_icon;h.isString(t)&&(l.startsWith(t,\"data:image\")?this.el.style.backgroundImage=\"url('\"+t+\"')\":this.el.classList.add(t)),this.el.title=this.model.tooltip},t}(r.DOMView);i.ButtonToolButtonView=u;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(o.ToolView);i.ButtonToolView=c;var _=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ButtonTool\",this.internal({disabled:[a.Boolean,!1]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.icon},enumerable:!0,configurable:!0}),t}(o.Tool);(i.ButtonTool=_).initClass()},function(t,e,i){var n=t(391),o=t(5),r=t(15),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._tap=function(t){if(null==this._draw_basepoint&&null==this._basepoint){var e=t.shiftKey;this._select_event(t,e,this.model.renderers)}},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];if(t.keyCode===o.Keys.Backspace)this._delete_selected(n);else if(t.keyCode==o.Keys.Esc){var r=n.data_source;r.selection_manager.clear()}}},e.prototype._set_extent=function(t,e,i,n){var r=t[0],o=t[1],s=e[0],a=e[1];void 0===n&&(n=!1);var l=this.model.renderers[0],h=this.plot_model.frame,u=l.glyph,c=l.data_source,_=h.xscales[l.x_range_name],p=h.yscales[l.y_range_name],d=_.r_invert(r,o),f=d[0],v=d[1],m=p.r_invert(s,a),g=m[0],y=m[1],b=[(f+v)/2,(g+y)/2],x=b[0],w=b[1],k=[v-f,y-g],S=k[0],C=k[1],T=[u.x.field,u.y.field],A=T[0],E=T[1],M=[u.width.field,u.height.field],O=M[0],z=M[1];if(i)this._pop_glyphs(c,this.model.num_objects),A&&c.get_array(A).push(x),E&&c.get_array(E).push(w),O&&c.get_array(O).push(S),z&&c.get_array(z).push(C),this._pad_empty_columns(c,[A,E,O,z]);else{var P=c.data[A].length-1;A&&(c.data[A][P]=x),E&&(c.data[E][P]=w),O&&(c.data[O][P]=S),z&&(c.data[z][P]=C)}this._emit_cds_changes(c,!0,!1,n)},e.prototype._update_box=function(t,e,i){if(void 0===e&&(e=!1),void 0===i&&(i=!1),null!=this._draw_basepoint){var n=[t.sx,t.sy],r=this.plot_model.frame,o=this.model.dimensions,s=this.model._get_dim_limits(this._draw_basepoint,n,r,o);if(null!=s){var a=s[0],l=s[1];this._set_extent(a,l,e,i)}}},e.prototype._doubletap=function(t){this.model.active&&(null!=this._draw_basepoint?(this._update_box(t,!1,!0),this._draw_basepoint=null):(this._draw_basepoint=[t.sx,t.sy],this._select_event(t,!0,this.model.renderers),this._update_box(t,!0,!1)))},e.prototype._move=function(t){this._update_box(t,!1,!1)},e.prototype._pan_start=function(t){if(t.shiftKey){if(null!=this._draw_basepoint)return;this._draw_basepoint=[t.sx,t.sy],this._update_box(t,!0,!1)}else{if(null!=this._basepoint)return;this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy]}},e.prototype._pan=function(t,e,i){if(void 0===e&&(e=!1),void 0===i&&(i=!1),t.shiftKey){if(null==this._draw_basepoint)return;this._update_box(t,e,i)}else{if(null==this._basepoint)return;this._drag_points(t,this.model.renderers)}},e.prototype._pan_end=function(t){if(this._pan(t,!1,!0),t.shiftKey)this._draw_basepoint=null;else{this._basepoint=null;for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source,!1,!0,!0)}}},e}(s.EditToolView);i.BoxEditToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Edit Tool\",e.icon=\"bk-tool-icon-box-edit\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxEditTool\",this.prototype.default_view=a,this.define({dimensions:[r.Dimensions,\"both\"],num_objects:[r.Int,0]})},t}(s.EditTool);(i.BoxEditTool=l).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(21),l=t(44),s=t(251),a=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._mouse_in_frame=!0,t}return n.__extends(t,e),t.prototype._move_enter=function(t){this._mouse_in_frame=!0},t.prototype._move_exit=function(t){this._mouse_in_frame=!1},t.prototype._map_drag=function(t,e,i){var n=this.plot_model.frame;if(!n.bbox.contains(t,e))return null;var r=n.xscales[i.x_range_name].invert(t),o=n.yscales[i.y_range_name].invert(e);return[r,o]},t.prototype._delete_selected=function(t){var e=t.data_source,i=e.selected.indices;i.sort();for(var n=0,r=e.columns();n<r.length;n++)for(var o=r[n],s=e.get_array(o),a=0;a<i.length;a++){var l=i[a];s.splice(l-a,1)}this._emit_cds_changes(e)},t.prototype._pop_glyphs=function(t,e){var i=t.columns();if(e&&i.length)for(var n=0,r=i;n<r.length;n++){var o=r[n],s=t.get_array(o),a=s.length-e+1;a<1||(l.isArray(s)||(s=Array.from(s),t.data[o]=s),s.splice(0,a))}},t.prototype._emit_cds_changes=function(t,e,i,n){void 0===e&&(e=!0),void 0===i&&(i=!0),void 0===n&&(n=!0),i&&t.selection_manager.clear(),e&&t.change.emit(),n&&(t.data=t.data,t.properties.data.change.emit())},t.prototype._drag_points=function(t,e){if(null!=this._basepoint){for(var i=this._basepoint,n=i[0],r=i[1],o=0,s=e;o<s.length;o++){var a=s[o],l=this._map_drag(n,r,a),h=this._map_drag(t.sx,t.sy,a);if(null!=h&&null!=l){for(var u=h[0],c=h[1],_=l[0],p=l[1],d=[u-_,c-p],f=d[0],v=d[1],m=a.glyph,g=a.data_source,y=[m.x.field,m.y.field],b=y[0],x=y[1],w=0,k=g.selected.indices;w<k.length;w++){var S=k[w];b&&(g.data[b][S]+=f),x&&(g.data[x][S]+=v)}g.change.emit()}}this._basepoint=[t.sx,t.sy]}},t.prototype._pad_empty_columns=function(t,e){for(var i=0,n=t.columns();i<n.length;i++){var r=n[i];o.includes(e,r)||t.get_array(r).push(this.model.empty_value)}},t.prototype._select_event=function(t,e,i){var n=this.plot_model.frame,r=t.sx,o=t.sy;if(!n.bbox.contains(r,o))return[];for(var s={type:\"point\",sx:r,sy:o},a=[],l=0,h=i;l<h.length;l++){var u=h[l],c=u.get_selection_manager(),_=u.data_source,p=[this.plot_view.renderer_views[u.id]],d=c.select(p,s,!0,e);d&&a.push(u),_.properties.selected.change.emit()}return a},t}(s.GestureToolView);i.EditToolView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EditTool\",this.define({custom_icon:[r.String],custom_tooltip:[r.String],empty_value:[r.Any],renderers:[r.Array,[]]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.custom_tooltip||this.tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.custom_icon||this.icon},enumerable:!0,configurable:!0}),t}(s.GestureTool);(i.EditTool=h).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),v=t(44),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._draw=function(t,e,i){if(void 0===i&&(i=!1),this.model.active){var n=this.model.renderers[0],r=this._map_drag(t.sx,t.sy,n);if(null!=r){var o=r[0],s=r[1],a=n.data_source,l=n.glyph,h=[l.xs.field,l.ys.field],u=h[0],c=h[1];if(\"new\"==e)this._pop_glyphs(a,this.model.num_objects),u&&a.get_array(u).push([o]),c&&a.get_array(c).push([s]),this._pad_empty_columns(a,[u,c]);else if(\"add\"==e){if(u){var _=a.data[u].length-1,p=a.get_array(u)[_];v.isArray(p)||(p=Array.from(p),a.data[u][_]=p),p.push(o)}if(c){var d=a.data[c].length-1,f=a.get_array(c)[d];v.isArray(f)||(f=Array.from(f),a.data[c][d]=f),f.push(s)}}this._emit_cds_changes(a,!0,!0,i)}}},e.prototype._pan_start=function(t){this._draw(t,\"new\")},e.prototype._pan=function(t){this._draw(t,\"add\")},e.prototype._pan_end=function(t){this._draw(t,\"add\",!0)},e.prototype._tap=function(t){this._select_event(t,t.shiftKey,this.model.renderers)},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Esc?n.data_source.selection_manager.clear():t.keyCode===r.Keys.Backspace&&this._delete_selected(n)}},e}(s.EditToolView);i.FreehandDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Freehand Draw Tool\",e.icon=\"bk-tool-icon-freehand-draw\",e.event_type=[\"pan\",\"tap\"],e.default_order=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"FreehandDrawTool\",this.prototype.default_view=a,this.define({num_objects:[o.Int,0]})},t}(s.EditTool);(i.FreehandDrawTool=l).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._tap=function(t){var e=t.shiftKey,i=this._select_event(t,e,this.model.renderers);if(!i.length&&this.model.add){var n=this.model.renderers[0],r=this._map_drag(t.sx,t.sy,n);if(null!=r){var o=n.glyph,s=n.data_source,a=[o.x.field,o.y.field],l=a[0],h=a[1],u=r[0],c=r[1];this._pop_glyphs(s,this.model.num_objects),l&&s.get_array(l).push(u),h&&s.get_array(h).push(c),this._pad_empty_columns(s,[l,h]),s.change.emit(),s.data=s.data,s.properties.data.change.emit()}}},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Backspace?this._delete_selected(n):t.keyCode==r.Keys.Esc&&n.data_source.selection_manager.clear()}},e.prototype._pan_start=function(t){this.model.drag&&(this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy])},e.prototype._pan=function(t){this.model.drag&&null!=this._basepoint&&this._drag_points(t,this.model.renderers)},e.prototype._pan_end=function(t){if(this.model.drag){this._pan(t);for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source,!1,!0,!0)}this._basepoint=null}},e}(s.EditToolView);i.PointDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Point Draw Tool\",e.icon=\"bk-tool-icon-point-draw\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=2,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PointDrawTool\",this.prototype.default_view=a,this.define({add:[o.Bool,!0],drag:[o.Bool,!0],num_objects:[o.Int,0]})},t}(s.EditTool);(i.PointDrawTool=l).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),y=t(44),s=t(248),a=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._drawing=!1,t._initialized=!1,t}return n.__extends(t,e),t.prototype._tap=function(t){this._drawing?this._draw(t,\"add\",!0):this._select_event(t,t.shiftKey,this.model.renderers)},t.prototype._draw=function(t,e,i){var n;void 0===i&&(i=!1);var r=this.model.renderers[0],o=this._map_drag(t.sx,t.sy,r);if(this._initialized||this.activate(),null!=o){var s=o[0],a=o[1];n=this._snap_to_vertex(t,s,a),s=n[0],a=n[1];var l=r.data_source,h=r.glyph,u=[h.xs.field,h.ys.field],c=u[0],_=u[1];if(\"new\"==e)this._pop_glyphs(l,this.model.num_objects),c&&l.get_array(c).push([s,s]),_&&l.get_array(_).push([a,a]),this._pad_empty_columns(l,[c,_]);else if(\"edit\"==e){if(c){var p=l.data[c][l.data[c].length-1];p[p.length-1]=s}if(_){var d=l.data[_][l.data[_].length-1];d[d.length-1]=a}}else if(\"add\"==e){if(c){var f=l.data[c].length-1,p=l.get_array(c)[f],v=p[p.length-1];p[p.length-1]=s,y.isArray(p)||(p=Array.from(p),l.data[c][f]=p),p.push(v)}if(_){var m=l.data[_].length-1,d=l.get_array(_)[m],g=d[d.length-1];d[d.length-1]=a,y.isArray(d)||(d=Array.from(d),l.data[_][m]=d),d.push(g)}}this._emit_cds_changes(l,!0,!1,i)}},t.prototype._show_vertices=function(){for(var t=[],e=[],i=0;i<this.model.renderers.length;i++){var n=this.model.renderers[i],r=n.data_source,o=n.glyph,s=[o.xs.field,o.ys.field],a=s[0],l=s[1];if(a)for(var h=0,u=r.get_array(a);h<u.length;h++){var c=u[h];Array.prototype.push.apply(t,c)}if(l)for(var _=0,p=r.get_array(l);_<p.length;_++){var c=p[_];Array.prototype.push.apply(e,c)}this._drawing&&i==this.model.renderers.length-1&&(t.splice(t.length-1,1),e.splice(e.length-1,1))}this._set_vertices(t,e)},t.prototype._doubletap=function(t){this.model.active&&(this._drawing?(this._drawing=!1,this._draw(t,\"edit\",!0)):(this._drawing=!0,this._draw(t,\"new\",!0)))},t.prototype._move=function(t){this._drawing&&this._draw(t,\"edit\")},t.prototype._remove=function(){var t=this.model.renderers[0],e=t.data_source,i=t.glyph,n=[i.xs.field,i.ys.field],r=n[0],o=n[1];if(r){var s=e.data[r].length-1,a=e.get_array(r)[s];a.splice(a.length-1,1)}if(o){var l=e.data[o].length-1,h=e.get_array(o)[l];h.splice(h.length-1,1)}this._emit_cds_changes(e)},t.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Backspace?this._delete_selected(n):t.keyCode==r.Keys.Esc&&(this._drawing&&(this._remove(),this._drawing=!1),n.data_source.selection_manager.clear())}},t.prototype._pan_start=function(t){this.model.drag&&(this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy])},t.prototype._pan=function(t){if(null!=this._basepoint&&this.model.drag){for(var e=this._basepoint,i=e[0],n=e[1],r=0,o=this.model.renderers;r<o.length;r++){var s=o[r],a=this._map_drag(i,n,s),l=this._map_drag(t.sx,t.sy,s);if(null!=l&&null!=a){var h=s.data_source,u=s.glyph,c=[u.xs.field,u.ys.field],_=c[0],p=c[1];if(_||p){for(var d=l[0],f=l[1],v=a[0],m=a[1],g=[d-v,f-m],y=g[0],b=g[1],x=0,w=h.selected.indices;x<w.length;x++){var k=w[x],S=void 0,C=void 0,T=void 0;_&&(C=h.data[_][k]),p?(T=h.data[p][k],S=T.length):S=C.length;for(var A=0;A<S;A++)C&&(C[A]+=y),T&&(T[A]+=b)}h.change.emit()}}}this._basepoint=[t.sx,t.sy]}},t.prototype._pan_end=function(t){if(this.model.drag){this._pan(t);for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source)}this._basepoint=null}},t.prototype.activate=function(){var t=this;if(this.model.vertex_renderer&&this.model.active){if(this._show_vertices(),!this._initialized)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e],r=n.data_source;r.connect(r.properties.data.change,function(){return t._show_vertices()})}this._initialized=!0}},t.prototype.deactivate=function(){this._drawing&&(this._remove(),this._drawing=!1),this.model.vertex_renderer&&this._hide_vertices()},t}(s.PolyToolView);i.PolyDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Polygon Draw Tool\",e.icon=\"bk-tool-icon-poly-draw\",e.event_type=[\"pan\",\"tap\",\"move\"],e.default_order=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolyDrawTool\",this.prototype.default_view=a,this.define({drag:[o.Bool,!0],num_objects:[o.Int,0]})},t}(s.PolyTool);(i.PolyDrawTool=l).initClass()},function(t,e,i){var n=t(391),o=t(5),c=t(44),r=t(248),s=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._drawing=!1,t}return n.__extends(t,e),t.prototype._doubletap=function(t){if(this.model.active){var e=this._map_drag(t.sx,t.sy,this.model.vertex_renderer);if(null!=e){var i=e[0],n=e[1],r=this._select_event(t,!1,[this.model.vertex_renderer]),o=this.model.vertex_renderer.data_source,s=this.model.vertex_renderer.glyph,a=[s.x.field,s.y.field],l=a[0],h=a[1];if(r.length&&null!=this._selected_renderer){var u=o.selected.indices[0];this._drawing?(this._drawing=!1,o.selection_manager.clear()):(o.selected.indices=[u+1],l&&o.get_array(l).splice(u+1,0,i),h&&o.get_array(h).splice(u+1,0,n),this._drawing=!0),o.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}else this._show_vertices(t)}}},t.prototype._show_vertices=function(t){if(this.model.active){var e=this._select_event(t,!1,this.model.renderers);if(!e.length)return this._set_vertices([],[]),this._selected_renderer=null,void(this._drawing=!1);var i,n,r=e[0],o=r.glyph,s=r.data_source,a=s.selected.indices[0],l=[o.xs.field,o.ys.field],h=l[0],u=l[1];h?(i=s.data[h][a],c.isArray(i)||(s.data[h][a]=i=Array.from(i))):i=o.xs.value,u?(n=s.data[u][a],c.isArray(n)||(s.data[u][a]=n=Array.from(n))):n=o.ys.value,this._selected_renderer=r,this._set_vertices(i,n)}},t.prototype._move=function(t){var e;if(this._drawing&&null!=this._selected_renderer){var i=this.model.vertex_renderer,n=i.data_source,r=i.glyph,o=this._map_drag(t.sx,t.sy,i);if(null==o)return;var s=o[0],a=o[1],l=n.selected.indices;e=this._snap_to_vertex(t,s,a),s=e[0],a=e[1],n.selected.indices=l;var h=[r.x.field,r.y.field],u=h[0],c=h[1],_=l[0];u&&(n.data[u][_]=s),c&&(n.data[c][_]=a),n.change.emit(),this._selected_renderer.data_source.change.emit()}},t.prototype._tap=function(t){var e,i=this.model.vertex_renderer,n=this._map_drag(t.sx,t.sy,i);if(null!=n){if(this._drawing&&this._selected_renderer){var r=n[0],o=n[1],s=i.data_source,a=i.glyph,l=[a.x.field,a.y.field],h=l[0],u=l[1],c=s.selected.indices;e=this._snap_to_vertex(t,r,o),r=e[0],o=e[1];var _=c[0];if(s.selected.indices=[_+1],h){var p=s.get_array(h),d=p[_];p[_]=r,p.splice(_+1,0,d)}if(u){var f=s.get_array(u),v=f[_];f[_]=o,f.splice(_+1,0,v)}return s.change.emit(),void this._emit_cds_changes(this._selected_renderer.data_source,!0,!1,!0)}var m=t.shiftKey;this._select_event(t,m,[i]),this._select_event(t,m,this.model.renderers)}},t.prototype._remove_vertex=function(){if(this._drawing&&this._selected_renderer){var t=this.model.vertex_renderer,e=t.data_source,i=t.glyph,n=e.selected.indices[0],r=[i.x.field,i.y.field],o=r[0],s=r[1];o&&e.get_array(o).splice(n,1),s&&e.get_array(s).splice(n,1),e.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}},t.prototype._pan_start=function(t){this._select_event(t,!0,[this.model.vertex_renderer]),this._basepoint=[t.sx,t.sy]},t.prototype._pan=function(t){null!=this._basepoint&&(this._drag_points(t,[this.model.vertex_renderer]),this._selected_renderer&&this._selected_renderer.data_source.change.emit())},t.prototype._pan_end=function(t){null!=this._basepoint&&(this._drag_points(t,[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)},t.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame){var e;e=this._selected_renderer?[this.model.vertex_renderer]:this.model.renderers;for(var i=0,n=e;i<n.length;i++){var r=n[i];t.keyCode===o.Keys.Backspace?(this._delete_selected(r),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source)):t.keyCode==o.Keys.Esc&&(this._drawing?(this._remove_vertex(),this._drawing=!1):this._selected_renderer&&this._hide_vertices(),r.data_source.selection_manager.clear())}}},t.prototype.deactivate=function(){this._selected_renderer&&(this._drawing&&(this._remove_vertex(),this._drawing=!1),this._hide_vertices())},t}(r.PolyToolView);i.PolyEditToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Poly Edit Tool\",e.icon=\"bk-tool-icon-poly-edit\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=4,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolyEditTool\",this.prototype.default_view=s},t}(r.PolyTool);(i.PolyEditTool=a).initClass()},function(t,e,i){var n=t(391),r=t(15),a=t(44),o=t(243),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_vertices=function(t,e){var i=this.model.vertex_renderer.glyph,n=this.model.vertex_renderer.data_source,r=[i.x.field,i.y.field],o=r[0],s=r[1];o&&(a.isArray(t)?n.data[o]=t:i.x={value:t}),s&&(a.isArray(e)?n.data[s]=e:i.y={value:e}),this._emit_cds_changes(n,!0,!0,!1)},e.prototype._hide_vertices=function(){this._set_vertices([],[])},e.prototype._snap_to_vertex=function(t,e,i){if(this.model.vertex_renderer){var n=this._select_event(t,!1,[this.model.vertex_renderer]),r=this.model.vertex_renderer.data_source,o=this.model.vertex_renderer.glyph,s=[o.x.field,o.y.field],a=s[0],l=s[1];if(n.length){var h=r.selected.indices[0];a&&(e=r.data[a][h]),l&&(i=r.data[l][h]),r.selection_manager.clear()}}return[e,i]},e}(o.EditToolView);i.PolyToolView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PolyTool\",this.prototype.default_view=s,this.define({vertex_renderer:[r.Instance]})},t}(o.EditTool);(i.PolyTool=l).initClass()},function(t,e,i){var v=t(391),n=t(256),r=t(64),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return v.__extends(e,t),e.prototype._compute_limits=function(t){var e=this.plot_model.frame,i=this.model.dimensions,n=this._base_point;if(\"center\"==this.model.origin){var r=n[0],o=n[1],s=t[0],a=t[1];n=[r-(s-r),o-(a-o)]}return this.model._get_dim_limits(n,t,e,i)},e.prototype._pan_start=function(t){var e=t.sx,i=t.sy;this._base_point=[e,i]},e.prototype._pan=function(t){var e=t.sx,i=t.sy,n=[e,i],r=this._compute_limits(n),o=r[0],s=r[1];if(this.model.overlay.update({left:o[0],right:o[1],top:s[0],bottom:s[1]}),this.model.select_every_mousemove){var a=t.shiftKey;this._do_select(o,s,!1,a)}},e.prototype._pan_end=function(t){var e=t.sx,i=t.sy,n=[e,i],r=this._compute_limits(n),o=r[0],s=r[1],a=t.shiftKey;this._do_select(o,s,!0,a),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null,this.plot_view.push_state(\"box_select\",{selection:this.plot_view.get_selection()})},e.prototype._do_select=function(t,e,i,n){var r=t[0],o=t[1],s=e[0],a=e[1];void 0===n&&(n=!1);var l={type:\"rect\",sx0:r,sx1:o,sy0:s,sy1:a};this._select(l,i,n)},e.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=t.sx0,s=t.sx1,a=t.sy0,l=t.sy1,h=n.r_invert(o,s),u=h[0],c=h[1],_=r.r_invert(a,l),p=_[0],d=_[1],f=v.__assign({x0:u,y0:p,x1:c,y1:d},t);this.model.callback.execute(this.model,{geometry:f})},e}(n.SelectToolView);i.BoxSelectToolView=s;var a=function(){return new r.BoxAnnotation({level:\"overlay\",render_mode:\"css\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Select\",e.icon=\"bk-tool-icon-box-select\",e.event_type=\"pan\",e.default_order=30,e}return v.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxSelectTool\",this.prototype.default_view=s,this.define({dimensions:[o.Dimensions,\"both\"],select_every_mousemove:[o.Bool,!1],callback:[o.Instance],overlay:[o.Instance,a],origin:[o.String,\"corner\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(n.SelectTool);(i.BoxSelectTool=l).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(64),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._match_aspect=function(t,e,i){var n,r,o,s,a=i.bbox.aspect,l=i.bbox.h_range.end,h=i.bbox.h_range.start,u=i.bbox.v_range.end,c=i.bbox.v_range.start,_=Math.abs(t[0]-e[0]),p=Math.abs(t[1]-e[1]),d=0==p?0:_/p,f=(a<=d?[1,d/a]:[a/d,1])[0];return t[0]<=e[0]?(n=t[0],r=t[0]+_*f,l<r&&(r=l)):(r=t[0],(n=t[0]-_*f)<h&&(n=h)),_=Math.abs(r-n),t[1]<=e[1]?(s=t[1],o=t[1]+_/a,u<o&&(o=u)):(o=t[1],(s=t[1]-_/a)<c&&(s=c)),p=Math.abs(o-s),t[0]<=e[0]?r=t[0]+a*p:n=t[0]-a*p,[[n,r],[s,o]]},e.prototype._compute_limits=function(t){var e,i,n,r,o=this.plot_model.frame,s=this.model.dimensions,a=this._base_point;if(\"center\"==this.model.origin){var l=a[0],h=a[1],u=t[0],c=t[1];a=[l-(u-l),h-(c-h)]}return this.model.match_aspect&&\"both\"==s?(e=this._match_aspect(a,t,o),n=e[0],r=e[1]):(i=this.model._get_dim_limits(a,t,o,s),n=i[0],r=i[1]),[n,r]},e.prototype._pan_start=function(t){this._base_point=[t.sx,t.sy]},e.prototype._pan=function(t){var e=[t.sx,t.sy],i=this._compute_limits(e),n=i[0],r=i[1];this.model.overlay.update({left:n[0],right:n[1],top:r[0],bottom:r[1]})},e.prototype._pan_end=function(t){var e=[t.sx,t.sy],i=this._compute_limits(e),n=i[0],r=i[1];this._update(n,r),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null},e.prototype._update=function(t,e){var i=t[0],n=t[1],r=e[0],o=e[1];if(!(Math.abs(n-i)<=5||Math.abs(o-r)<=5)){var s=this.plot_model.frame,a=s.xscales,l=s.yscales,h={};for(var u in a){var c=a[u],_=c.r_invert(i,n),p=_[0],d=_[1];h[u]={start:p,end:d}}var f={};for(var v in l){var c=l[v],m=c.r_invert(r,o),p=m[0],d=m[1];f[v]={start:p,end:d}}var g={xrs:h,yrs:f};this.plot_view.push_state(\"box_zoom\",{range:g}),this.plot_view.update_range(g)}},e}(r.GestureToolView);i.BoxZoomToolView=a;var l=function(){return new o.BoxAnnotation({level:\"overlay\",render_mode:\"css\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Zoom\",e.icon=\"bk-tool-icon-box-zoom\",e.event_type=\"pan\",e.default_order=20,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxZoomTool\",this.prototype.default_view=a,this.define({dimensions:[s.Dimensions,\"both\"],overlay:[s.Instance,l],match_aspect:[s.Bool,!1],origin:[s.String,\"corner\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.BoxZoomTool=h).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(265),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.ButtonToolView);i.GestureToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.button_view=o.OnOffButtonView,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"GestureTool\"},t}(r.ButtonTool);(i.GestureTool=a).initClass()},function(t,e,i){var l=t(391),n=t(256),r=t(71),o=t(5),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return l.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.data=null},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){return t._active_change()})},t.prototype._active_change=function(){this.model.active||this._clear_overlay()},t.prototype._keyup=function(t){t.keyCode==o.Keys.Enter&&this._clear_overlay()},t.prototype._pan_start=function(t){var e=t.sx,i=t.sy;this.data={sx:[e],sy:[i]}},t.prototype._pan=function(t){var e=t.sx,i=t.sy,n=this.plot_model.frame.bbox.clip(e,i),r=n[0],o=n[1];this.data.sx.push(r),this.data.sy.push(o);var s=this.model.overlay;if(s.update({xs:this.data.sx,ys:this.data.sy}),this.model.select_every_mousemove){var a=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!1,a)}},t.prototype._pan_end=function(t){this._clear_overlay();var e=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!0,e),this.plot_view.push_state(\"lasso_select\",{selection:this.plot_view.get_selection()})},t.prototype._clear_overlay=function(){this.model.overlay.update({xs:[],ys:[]})},t.prototype._do_select=function(t,e,i,n){var r={type:\"poly\",sx:t,sy:e};this._select(r,i,n)},t.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=n.v_invert(t.sx),s=r.v_invert(t.sy),a=l.__assign({x:o,y:s},t);this.model.callback.execute(this.model,{geometry:a})},t}(n.SelectToolView);i.LassoSelectToolView=a;var h=function(){return new r.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},u=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Lasso Select\",e.icon=\"bk-tool-icon-lasso-select\",e.event_type=\"pan\",e.default_order=12,e}return l.__extends(t,i),t.initClass=function(){this.prototype.type=\"LassoSelectTool\",this.prototype.default_view=a,this.define({select_every_mousemove:[s.Bool,!0],callback:[s.Instance],overlay:[s.Instance,h]})},t}(n.SelectTool);(i.LassoSelectTool=u).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._pan_start=function(t){this.last_dx=0,this.last_dy=0;var e=t.sx,i=t.sy,n=this.plot_model.frame.bbox;if(!n.contains(e,i)){var r=n.h_range,o=n.v_range;(e<r.start||e>r.end)&&(this.v_axis_only=!0),(i<o.start||i>o.end)&&(this.h_axis_only=!0)}null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e.prototype._pan=function(t){this._update(t.deltaX,t.deltaY),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e.prototype._pan_end=function(t){this.h_axis_only=!1,this.v_axis_only=!1,null!=this.pan_info&&this.plot_view.push_state(\"pan\",{range:this.pan_info})},e.prototype._update=function(t,e){var i,n,r,o,s,a,l=this.plot_model.frame,h=t-this.last_dx,u=e-this.last_dy,c=l.bbox.h_range,_=c.start-h,p=c.end-h,d=l.bbox.v_range,f=d.start-u,v=d.end-u,m=this.model.dimensions;\"width\"!=m&&\"both\"!=m||this.v_axis_only?(i=c.start,n=c.end,r=0):(i=_,n=p,r=-h),\"height\"!=m&&\"both\"!=m||this.h_axis_only?(o=d.start,s=d.end,a=0):(o=f,s=v,a=-u),this.last_dx=t,this.last_dy=e;var g=l.xscales,y=l.yscales,b={};for(var x in g){var w=g[x],k=w.r_invert(i,n),S=k[0],C=k[1];b[x]={start:S,end:C}}var T={};for(var A in y){var w=y[A],E=w.r_invert(o,s),S=E[0],C=E[1];T[A]={start:S,end:C}}this.pan_info={xrs:b,yrs:T,sdx:r,sdy:a},this.plot_view.update_range(this.pan_info,!0)},e}(r.GestureToolView);i.PanToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Pan\",e.event_type=\"pan\",e.default_order=10,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PanTool\",this.prototype.default_view=s,this.define({dimensions:[o.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(\"Pan\",this.dimensions)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"icon\",{get:function(){switch(this.dimensions){case\"both\":return\"bk-tool-icon-pan\";case\"width\":return\"bk-tool-icon-xpan\";case\"height\":return\"bk-tool-icon-ypan\"}},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.PanTool=a).initClass()},function(t,e,i){var l=t(391),n=t(256),r=t(71),o=t(5),s=t(15),a=t(21),h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return l.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.data={sx:[],sy:[]}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){return t._active_change()})},t.prototype._active_change=function(){this.model.active||this._clear_data()},t.prototype._keyup=function(t){t.keyCode==o.Keys.Enter&&this._clear_data()},t.prototype._doubletap=function(t){var e=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!0,e),this.plot_view.push_state(\"poly_select\",{selection:this.plot_view.get_selection()}),this._clear_data()},t.prototype._clear_data=function(){this.data={sx:[],sy:[]},this.model.overlay.update({xs:[],ys:[]})},t.prototype._tap=function(t){var e=t.sx,i=t.sy,n=this.plot_model.frame;n.bbox.contains(e,i)&&(this.data.sx.push(e),this.data.sy.push(i),this.model.overlay.update({xs:a.copy(this.data.sx),ys:a.copy(this.data.sy)}))},t.prototype._do_select=function(t,e,i,n){var r={type:\"poly\",sx:t,sy:e};this._select(r,i,n)},t.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=n.v_invert(t.sx),s=r.v_invert(t.sy),a=l.__assign({x:o,y:s},t);this.model.callback.execute(this.model,{geometry:a})},t}(n.SelectToolView);i.PolySelectToolView=h;var u=function(){return new r.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},c=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Poly Select\",e.icon=\"bk-tool-icon-polygon-select\",e.event_type=\"tap\",e.default_order=11,e}return l.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolySelectTool\",this.prototype.default_view=h,this.define({callback:[s.Instance],overlay:[s.Instance,u]})},t}(n.SelectTool);(i.PolySelectTool=c).initClass()},function(t,e,i){var n=t(391),_=t(64),r=t(14),o=t(15),s=t(251);function p(t,e,i,n){if(null==e)return!1;var r=i.compute(e);return Math.abs(t-r)<n}function d(t,e,i,n,r){var o=!0;if(null!=r.left&&null!=r.right){var s=i.invert(t);(s<r.left||s>r.right)&&(o=!1)}if(null!=r.bottom&&null!=r.top){var a=n.invert(e);(a<r.bottom||a>r.top)&&(o=!1)}return o}function l(t,e,i,n){var r=e.compute(t),o=e.invert(r+i);return o>=n.start&&o<=n.end?o:t}function h(t,e,i,n){var r=e.r_compute(t.start,t.end),o=r[0],s=r[1],a=e.r_invert(o+i,s+i),l=a[0],h=a[1];l>=n.start&&l<=n.end&&h>=n.start&&h<=n.end&&(t.start=l,t.end=h)}i.is_near=p,i.is_inside=d,i.compute_value=l,i.update_range=h;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.side=0,this.model.update_overlay_from_ranges()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),null!=this.model.x_range&&this.connect(this.model.x_range.change,function(){return t.model.update_overlay_from_ranges()}),null!=this.model.y_range&&this.connect(this.model.y_range.change,function(){return t.model.update_overlay_from_ranges()})},t.prototype._pan_start=function(t){this.last_dx=0,this.last_dy=0;var e=this.model.x_range,i=this.model.y_range,n=this.plot_model.frame,r=n.xscales.default,o=n.yscales.default,s=this.model.overlay,a=s.left,l=s.right,h=s.top,u=s.bottom,c=this.model.overlay.properties.line_width.value()+_.EDGE_TOLERANCE;null!=e&&this.model.x_interaction&&(p(t.sx,a,r,c)?this.side=1:p(t.sx,l,r,c)?this.side=2:d(t.sx,t.sy,r,o,s)&&(this.side=3)),null!=i&&this.model.y_interaction&&(0==this.side&&p(t.sy,u,o,c)&&(this.side=4),0==this.side&&p(t.sy,h,o,c)?this.side=5:d(t.sx,t.sy,r,o,this.model.overlay)&&(3==this.side?this.side=7:this.side=6))},t.prototype._pan=function(t){var e=this.plot_model.frame,i=t.deltaX-this.last_dx,n=t.deltaY-this.last_dy,r=this.model.x_range,o=this.model.y_range,s=e.xscales.default,a=e.yscales.default;null!=r&&(3==this.side||7==this.side?h(r,s,i,e.x_range):1==this.side?r.start=l(r.start,s,i,e.x_range):2==this.side&&(r.end=l(r.end,s,i,e.x_range))),null!=o&&(6==this.side||7==this.side?h(o,a,n,e.y_range):4==this.side?o.start=l(o.start,a,n,e.y_range):5==this.side&&(o.end=l(o.end,a,n,e.y_range))),this.last_dx=t.deltaX,this.last_dy=t.deltaY},t.prototype._pan_end=function(t){this.side=0},t}(s.GestureToolView);i.RangeToolView=a;var u=function(){return new _.BoxAnnotation({level:\"overlay\",render_mode:\"css\",fill_color:\"lightgrey\",fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:.5},line_dash:[2,2]})},c=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Range Tool\",e.icon=\"bk-tool-icon-range\",e.event_type=\"pan\",e.default_order=1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"RangeTool\",this.prototype.default_view=a,this.define({x_range:[o.Instance,null],x_interaction:[o.Bool,!0],y_range:[o.Instance,null],y_interaction:[o.Bool,!0],overlay:[o.Instance,u]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),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},t.prototype.update_overlay_from_ranges=function(){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)},t}(s.GestureTool);(i.RangeTool=c).initClass()},function(t,e,i){var y=t(391),n=t(251),o=t(186),r=t(271),s=t(15),a=t(5),b=t(3),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return y.__extends(e,t),Object.defineProperty(e.prototype,\"computed_renderers\",{get:function(){var t=this.model.renderers,e=this.plot_model.plot.renderers,i=this.model.names;return r.compute_renderers(t,e,i)},enumerable:!0,configurable:!0}),e.prototype._computed_renderers_by_data_source=function(){for(var t={},e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=void 0;(r=n instanceof o.GraphRenderer?n.node_renderer.data_source.id:n.data_source.id)in t||(t[r]=[]),t[r].push(n)}return t},e.prototype._keyup=function(t){if(t.keyCode==a.Keys.Esc){for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=n.data_source,o=r.selection_manager;o.clear()}this.plot_view.request_render()}},e.prototype._select=function(t,e,i){var n=this._computed_renderers_by_data_source();for(var r in n){for(var o=n[r],s=o[0].get_selection_manager(),a=[],l=0,h=o;l<h.length;l++){var u=h[l];u.id in this.plot_view.renderer_views&&a.push(this.plot_view.renderer_views[u.id])}s.select(a,t,e,i)}null!=this.model.callback&&this._emit_callback(t),this._emit_selection_event(t,e)},e.prototype._emit_selection_event=function(t,e){void 0===e&&(e=!0);var i,n=this.plot_model.frame.xscales.default,r=this.plot_model.frame.yscales.default;switch(t.type){case\"point\":var o=t.sx,s=t.sy,a=n.invert(o),l=r.invert(s);i=y.__assign({},t,{x:a,y:l});break;case\"rect\":var h=t.sx0,u=t.sx1,c=t.sy0,_=t.sy1,p=n.r_invert(h,u),d=p[0],f=p[1],v=r.r_invert(c,_),m=v[0],g=v[1];i=y.__assign({},t,{x0:d,y0:m,x1:f,y1:g});break;case\"poly\":var o=t.sx,s=t.sy,a=n.v_invert(o),l=r.v_invert(s);i=y.__assign({},t,{x:a,y:l});break;default:throw new Error(\"Unrecognized selection geometry type: '\"+t.type+\"'\")}this.plot_model.plot.trigger_event(new b.SelectionGeometry({geometry:i,final:e}))},e}(n.GestureToolView);i.SelectToolView=l;var h=function(e){function t(t){return e.call(this,t)||this}return y.__extends(t,e),t.initClass=function(){this.prototype.type=\"SelectTool\",this.define({renderers:[s.Any,\"auto\"],names:[s.Array,[]]})},t}(n.GestureTool);(i.SelectTool=h).initClass()},function(t,e,i){var x=t(391),n=t(256),r=t(15),w=t(44),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return x.__extends(e,t),e.prototype._tap=function(t){var e=t.sx,i=t.sy,n={type:\"point\",sx:e,sy:i},r=t.shiftKey;this._select(n,!0,r)},e.prototype._select=function(t,e,i){var n=this,r=this.model.callback;if(\"select\"==this.model.behavior){var o=this._computed_renderers_by_data_source();for(var s in o){var a=o[s],l=a[0].get_selection_manager(),h=a.map(function(t){return n.plot_view.renderer_views[t.id]}),u=l.select(h,t,e,i);if(u&&null!=r){var c=this.plot_model.frame,_=c.xscales[a[0].x_range_name],p=c.yscales[a[0].y_range_name],d=_.invert(t.sx),f=p.invert(t.sy),v=x.__assign({},t,{x:d,y:f}),m={geometries:v,source:l.source};w.isFunction(r)?r(this,m):r.execute(this,m)}}this._emit_selection_event(t),this.plot_view.push_state(\"tap\",{selection:this.plot_view.get_selection()})}else for(var g=0,y=this.computed_renderers;g<y.length;g++){var b=y[g],l=b.get_selection_manager(),u=l.inspect(this.plot_view.renderer_views[b.id],t);if(u&&null!=r){var c=this.plot_model.frame,_=c.xscales[b.x_range_name],p=c.yscales[b.y_range_name],d=_.invert(t.sx),f=p.invert(t.sy),v=x.__assign({},t,{x:d,y:f}),m={geometries:v,source:l.source};w.isFunction(r)?r(this,m):r.execute(this,m)}}},e}(n.SelectToolView);i.TapToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Tap\",e.icon=\"bk-tool-icon-tap-select\",e.event_type=\"tap\",e.default_order=10,e}return x.__extends(t,i),t.initClass=function(){this.prototype.type=\"TapTool\",this.prototype.default_view=o,this.define({behavior:[r.String,\"select\"],callback:[r.Any]})},t}(n.SelectTool);(i.TapTool=s).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._scroll=function(t){var e=this.model.speed*t.delta;.9<e?e=.9:e<-.9&&(e=-.9),this._update_ranges(e)},e.prototype._update_ranges=function(t){var e,i,n,r,o=this.plot_model.frame,s=o.bbox.h_range,a=o.bbox.v_range,l=[s.start,s.end],h=l[0],u=l[1],c=[a.start,a.end],_=c[0],p=c[1];switch(this.model.dimension){case\"height\":var d=Math.abs(p-_);e=h,i=u,n=_-d*t,r=p-d*t;break;case\"width\":var f=Math.abs(u-h);e=h-f*t,i=u-f*t,n=_,r=p;break;default:throw new Error(\"this shouldn't have happened\")}var v=o.xscales,m=o.yscales,g={};for(var y in v){var b=v[y],x=b.r_invert(e,i),w=x[0],k=x[1];g[y]={start:w,end:k}}var S={};for(var C in m){var b=m[C],T=b.r_invert(n,r),w=T[0],k=T[1];S[C]={start:w,end:k}}var A={xrs:g,yrs:S,factor:t};this.plot_view.push_state(\"wheel_pan\",{range:A}),this.plot_view.update_range(A,!1,!0),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.GestureToolView);i.WheelPanToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Wheel Pan\",e.icon=\"bk-tool-icon-wheel-pan\",e.event_type=\"scroll\",e.default_order=12,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"WheelPanTool\",this.prototype.default_view=s,this.define({dimension:[o.Dimension,\"width\"]}),this.internal({speed:[o.Number,.001]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimension)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.WheelPanTool=a).initClass()},function(t,e,i){var n=t(391),r=t(251),c=t(46),o=t(15),s=t(20),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._pinch=function(t){var e,i=t.sx,n=t.sy,r=t.scale;e=1<=r?20*(r-1):-20/r,this._scroll({type:\"mousewheel\",sx:i,sy:n,delta:e})},e.prototype._scroll=function(t){var e=this.plot_model.frame,i=e.bbox.h_range,n=e.bbox.v_range,r=t.sx,o=t.sy,s=this.model.dimensions,a=(\"width\"==s||\"both\"==s)&&i.start<r&&r<i.end,l=(\"height\"==s||\"both\"==s)&&n.start<o&&o<n.end;if(a&&l||this.model.zoom_on_axis){var h=this.model.speed*t.delta,u=c.scale_range(e,h,a,l,{x:r,y:o});this.plot_view.push_state(\"wheel_zoom\",{range:u}),this.plot_view.update_range(u,!1,!0,this.model.maintain_focus),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)}},e}(r.GestureToolView);i.WheelZoomToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Wheel Zoom\",e.icon=\"bk-tool-icon-wheel-zoom\",e.event_type=s.is_mobile?\"pinch\":\"scroll\",e.default_order=10,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"WheelZoomTool\",this.prototype.default_view=a,this.define({dimensions:[o.Dimensions,\"both\"],maintain_focus:[o.Boolean,!0],zoom_on_axis:[o.Boolean,!0],speed:[o.Number,1/600]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.WheelZoomTool=l).initClass()},function(t,e,i){var n=t(232);i.ActionTool=n.ActionTool;var r=t(233);i.CustomAction=r.CustomAction;var o=t(234);i.HelpTool=o.HelpTool;var s=t(235);i.RedoTool=s.RedoTool;var a=t(236);i.ResetTool=a.ResetTool;var l=t(237);i.SaveTool=l.SaveTool;var h=t(238);i.UndoTool=h.UndoTool;var u=t(239);i.ZoomInTool=u.ZoomInTool;var c=t(240);i.ZoomOutTool=c.ZoomOutTool;var _=t(241);i.ButtonTool=_.ButtonTool;var p=t(243);i.EditTool=p.EditTool;var d=t(242);i.BoxEditTool=d.BoxEditTool;var f=t(244);i.FreehandDrawTool=f.FreehandDrawTool;var v=t(245);i.PointDrawTool=v.PointDrawTool;var m=t(246);i.PolyDrawTool=m.PolyDrawTool;var g=t(248);i.PolyTool=g.PolyTool;var y=t(247);i.PolyEditTool=y.PolyEditTool;var b=t(249);i.BoxSelectTool=b.BoxSelectTool;var x=t(250);i.BoxZoomTool=x.BoxZoomTool;var w=t(251);i.GestureTool=w.GestureTool;var k=t(252);i.LassoSelectTool=k.LassoSelectTool;var S=t(253);i.PanTool=S.PanTool;var C=t(254);i.PolySelectTool=C.PolySelectTool;var T=t(255);i.RangeTool=T.RangeTool;var A=t(256);i.SelectTool=A.SelectTool;var E=t(257);i.TapTool=E.TapTool;var M=t(258);i.WheelPanTool=M.WheelPanTool;var O=t(259);i.WheelZoomTool=O.WheelZoomTool;var z=t(261);i.CrosshairTool=z.CrosshairTool;var P=t(262);i.CustomJSHover=P.CustomJSHover;var j=t(263);i.HoverTool=j.HoverTool;var N=t(264);i.InspectTool=N.InspectTool;var F=t(266);i.Tool=F.Tool;var D=t(267);i.ToolProxy=D.ToolProxy;var I=t(268);i.Toolbar=I.Toolbar;var R=t(269);i.ToolbarBase=R.ToolbarBase;var B=t(270);i.ProxyToolbar=B.ProxyToolbar;var L=t(270);i.ToolbarBox=L.ToolbarBox},function(t,e,i){var n=t(391),r=t(264),o=t(73),s=t(15),a=t(32),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._move=function(t){if(this.model.active){var e=t.sx,i=t.sy;this.plot_model.frame.bbox.contains(e,i)?this._update_spans(e,i):this._update_spans(null,null)}},e.prototype._move_exit=function(t){this._update_spans(null,null)},e.prototype._update_spans=function(t,e){var i=this.model.dimensions;\"width\"!=i&&\"both\"!=i||(this.model.spans.width.computed_location=e),\"height\"!=i&&\"both\"!=i||(this.model.spans.height.computed_location=t)},e}(r.InspectToolView);i.CrosshairToolView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Crosshair\",e.icon=\"bk-tool-icon-crosshair\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"CrosshairTool\",this.prototype.default_view=l,this.define({dimensions:[s.Dimensions,\"both\"],line_color:[s.Color,\"black\"],line_width:[s.Number,1],line_alpha:[s.Number,1]}),this.internal({location_units:[s.SpatialUnits,\"screen\"],render_mode:[s.RenderMode,\"css\"],spans:[s.Any]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(\"Crosshair\",this.dimensions)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"synthetic_renderers\",{get:function(){return a.values(this.spans)},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){i.prototype.initialize.call(this),this.spans={width:new o.Span({for_hover:!0,dimension:\"width\",render_mode:this.render_mode,location_units:this.location_units,line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha}),height:new o.Span({for_hover:!0,dimension:\"height\",render_mode:this.render_mode,location_units:this.location_units,line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha})}},t}(r.InspectTool);(i.CrosshairTool=h).initClass()},function(r,t,o){var i=r(391),e=r(59),n=r(15),s=r(32),a=r(38),l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSHover\",this.define({args:[n.Any,{}],code:[n.String,\"\"]})},Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_code=function(t,e,i,n){return new(Function.bind.apply(Function,[void 0].concat(s.keys(this.args),[t,e,i,\"require\",\"exports\",a.use_strict(n)])))},t.prototype.format=function(t,e,i){var n=this._make_code(\"value\",\"format\",\"special_vars\",this.code);return n.apply(void 0,this.values.concat([t,e,i,r,o]))},t}(e.Model);(o.CustomJSHover=l).initClass()},function(t,e,i){var f=t(391),n=t(264),s=t(77),Z=t(185),tt=t(186),o=t(271),c=t(9),k=t(40),S=t(5),r=t(15),C=t(27),et=t(32),T=t(44),a=t(4);function it(t,e,i,n,r,o){var s,a,l={x:r[t],y:o[t]},h={x:r[t+1],y:o[t+1]};if(\"span\"==e.type)\"h\"==e.direction?(s=Math.abs(l.x-i),a=Math.abs(h.x-i)):(s=Math.abs(l.y-n),a=Math.abs(h.y-n));else{var u={x:i,y:n};s=c.dist_2_pts(l,u),a=c.dist_2_pts(h,u)}return s<a?[[l.x,l.y],t]:[[h.x,h.y],t+1]}function nt(t,e,i){return[[t[i],e[i]],i]}i._nearest_line_hit=it,i._line_hit=nt;var l=function(r){function t(){return null!==r&&r.apply(this,arguments)||this}return f.__extends(t,r),t.prototype.initialize=function(t){r.prototype.initialize.call(this,t),this.ttviews={}},t.prototype.remove=function(){a.remove_views(this.ttviews),r.prototype.remove.call(this)},t.prototype.connect_signals=function(){var t=this;r.prototype.connect_signals.call(this);for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e];n instanceof Z.GlyphRenderer?this.connect(n.data_source.inspect,this._update):(this.connect(n.node_renderer.data_source.inspect,this._update),this.connect(n.edge_renderer.data_source.inspect,this._update))}this.connect(this.model.properties.renderers.change,function(){return t._computed_renderers=t._ttmodels=null}),this.connect(this.model.properties.names.change,function(){return t._computed_renderers=t._ttmodels=null}),this.connect(this.model.properties.tooltips.change,function(){return t._ttmodels=null})},t.prototype._compute_ttmodels=function(){var t={},e=this.model.tooltips;if(null!=e)for(var i=0,n=this.computed_renderers;i<n.length;i++){var r=n[i];if(r instanceof Z.GlyphRenderer){var o=new s.Tooltip({custom:T.isString(e)||T.isFunction(e),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t[r.id]=o}else{var o=new s.Tooltip({custom:T.isString(e)||T.isFunction(e),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t[r.node_renderer.id]=o,t[r.edge_renderer.id]=o}}return a.build_views(this.ttviews,et.values(t),{parent:this,plot_view:this.plot_view}),t},Object.defineProperty(t.prototype,\"computed_renderers\",{get:function(){if(null==this._computed_renderers){var t=this.model.renderers,e=this.plot_model.plot.renderers,i=this.model.names;this._computed_renderers=o.compute_renderers(t,e,i)}return this._computed_renderers},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"ttmodels\",{get:function(){return null==this._ttmodels&&(this._ttmodels=this._compute_ttmodels()),this._ttmodels},enumerable:!0,configurable:!0}),t.prototype._clear=function(){for(var t in this._inspect(1/0,1/0),this.ttmodels){var e=this.ttmodels[t];e.clear()}},t.prototype._move=function(t){if(this.model.active){var e=t.sx,i=t.sy;this.plot_model.frame.bbox.contains(e,i)?this._inspect(e,i):this._clear()}},t.prototype._move_exit=function(){this._clear()},t.prototype._inspect=function(t,e){var i;if(\"mouse\"==this.model.mode)i={type:\"point\",sx:t,sy:e};else{var n=\"vline\"==this.model.mode?\"h\":\"v\";i={type:\"span\",direction:n,sx:t,sy:e}}for(var r=0,o=this.computed_renderers;r<o.length;r++){var s=o[r],a=s.get_selection_manager();a.inspect(this.plot_view.renderer_views[s.id],i)}null!=this.model.callback&&this._emit_callback(i)},t.prototype._update=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d,f,v,m=t[0],g=t[1].geometry;if(this.model.active&&(m instanceof Z.GlyphRendererView||m instanceof tt.GraphRendererView)){var y=m.model,b=this.ttmodels[y.id];if(null!=b){b.clear();var x=y.get_selection_manager(),w=x.inspectors[y.id];if(y instanceof Z.GlyphRenderer&&(w=y.view.convert_selection_to_subset(w)),!w.is_empty()){for(var k=x.source,S=this.plot_model.frame,C=g.sx,T=g.sy,A=S.xscales[y.x_range_name],E=S.yscales[y.y_range_name],M=A.invert(C),O=E.invert(T),z=m.glyph,P=0,j=w.line_indices;P<j.length;P++){var N=j[P],F=z._x[N+1],D=z._y[N+1],I=N,R=void 0,B=void 0;switch(this.model.line_policy){case\"interp\":e=z.get_interpolation_hit(N,g),F=e[0],D=e[1],R=A.compute(F),B=E.compute(D);break;case\"prev\":i=nt(z.sx,z.sy,N),n=i[0],R=n[0],B=n[1],I=i[1];break;case\"next\":r=nt(z.sx,z.sy,N+1),o=r[0],R=o[0],B=o[1],I=r[1];break;case\"nearest\":s=it(N,g,C,T,z.sx,z.sy),a=s[0],R=a[0],B=a[1],I=s[1],F=z._x[I],D=z._y[I];break;default:R=(l=[C,T])[0],B=l[1]}var L={index:I,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,rx:R,ry:B,indices:w.line_indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,I,L))}for(var V=0,G=w.image_indices;V<G.length;V++){var U=G[V],L={index:U.index,x:M,y:O,sx:C,sy:T},q=this._render_tooltips(k,U,L);b.add(C,T,q)}for(var Y=0,X=w.indices;Y<X.length;Y++){var N=X[Y];if(et.isEmpty(w.multiline_indices)){var F=null!=z._x?z._x[N]:void 0,D=null!=z._y?z._y[N]:void 0,R=void 0,B=void 0;if(\"snap_to_data\"==this.model.point_policy){var H=z.get_anchor_point(this.model.anchor,N,[C,T]);null==H&&(H=z.get_anchor_point(\"center\",N,[C,T])),R=H.x,B=H.y}else R=(v=[C,T])[0],B=v[1];var W=void 0,L={index:W=y instanceof Z.GlyphRenderer?y.view.convert_indices_from_subset([N])[0]:N,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,indices:w.indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,W,L))}else for(var J=0,Q=w.multiline_indices[N.toString()];J<Q.length;J++){var $=Q[J],F=z._xs[N][$],D=z._ys[N][$],K=$,R=void 0,B=void 0;switch(this.model.line_policy){case\"interp\":h=z.get_interpolation_hit(N,$,g),F=h[0],D=h[1],R=A.compute(F),B=E.compute(D);break;case\"prev\":u=nt(z.sxs[N],z.sys[N],$),c=u[0],R=c[0],B=c[1],K=u[1];break;case\"next\":_=nt(z.sxs[N],z.sys[N],$+1),p=_[0],R=p[0],B=p[1],K=_[1];break;case\"nearest\":d=it($,g,C,T,z.sxs[N],z.sys[N]),f=d[0],R=f[0],B=f[1],K=d[1],F=z._xs[N][K],D=z._ys[N][K];break;default:throw new Error(\"should't have happened\")}var W=void 0,L={index:W=y instanceof Z.GlyphRenderer?y.view.convert_indices_from_subset([N])[0]:N,segment_index:K,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,indices:w.multiline_indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,W,L))}}}}}},t.prototype._emit_callback=function(t){for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=n.data_source.inspected,o=this.plot_model.frame,s=o.xscales[n.x_range_name],a=o.yscales[n.y_range_name],l=s.invert(t.sx),h=a.invert(t.sy),u=f.__assign({x:l,y:h},t),c=this.model.callback,_=[c,{index:r,geometry:u,renderer:n}],p=_[0],d=_[1];T.isFunction(c)?c(p,d):c.execute(p,d)}},t.prototype._render_tooltips=function(t,e,i){var n=this.model.tooltips;if(T.isString(n)){var r=S.div();return r.innerHTML=k.replace_placeholders(n,t,e,this.model.formatters,i),r}if(T.isFunction(n))return n(t,i);for(var o=S.div({style:{display:\"table\",borderSpacing:\"2px\"}}),s=0,a=n;s<a.length;s++){var l=a[s],h=l[0],u=l[1],c=S.div({style:{display:\"table-row\"}});o.appendChild(c);var _=void 0;if(_=S.div({style:{display:\"table-cell\"},class:\"bk-tooltip-row-label\"},0!=h.length?h+\": \":\"\"),c.appendChild(_),_=S.div({style:{display:\"table-cell\"},class:\"bk-tooltip-row-value\"}),c.appendChild(_),0<=u.indexOf(\"$color\")){var p=u.match(/\\$color(\\[.*\\])?:(\\w*)/),d=p[1],f=void 0===d?\"\":d,v=p[2],m=t.get_column(v);if(null==m){var g=S.span({},v+\" unknown\");_.appendChild(g);continue}var y=0<=f.indexOf(\"hex\"),b=0<=f.indexOf(\"swatch\"),x=T.isNumber(e)?m[e]:null;if(null==x){var w=S.span({},\"(null)\");_.appendChild(w);continue}y&&(x=C.color2hex(x));var r=S.span({},x);_.appendChild(r),b&&(r=S.span({class:\"bk-tooltip-color-block\",style:{backgroundColor:x}},\" \"),_.appendChild(r))}else{var r=S.span();r.innerHTML=k.replace_placeholders(u.replace(\"$~\",\"$data_\"),t,e,this.model.formatters,i),_.appendChild(r)}}return o},t}(n.InspectToolView);i.HoverToolView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Hover\",e.icon=\"bk-tool-icon-hover\",e}return f.__extends(t,i),t.initClass=function(){this.prototype.type=\"HoverTool\",this.prototype.default_view=l,this.define({tooltips:[r.Any,[[\"index\",\"$index\"],[\"data (x, y)\",\"($x, $y)\"],[\"screen (x, y)\",\"($sx, $sy)\"]]],formatters:[r.Any,{}],renderers:[r.Any,\"auto\"],names:[r.Array,[]],mode:[r.String,\"mouse\"],point_policy:[r.String,\"snap_to_data\"],line_policy:[r.String,\"nearest\"],show_arrow:[r.Boolean,!0],anchor:[r.String,\"center\"],attachment:[r.String,\"horizontal\"],callback:[r.Any]})},t}(n.InspectTool);(i.HoverTool=h).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(265),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.ButtonToolView);i.InspectToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.event_type=\"move\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"InspectTool\",this.prototype.button_view=o.OnOffButtonView,this.define({toggleable:[s.Bool,!0]}),this.override({active:!0})},t}(r.ButtonTool);(i.InspectTool=l).initClass()},function(t,e,i){var n=t(391),r=t(241),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.active?this.el.classList.add(\"bk-active\"):this.el.classList.remove(\"bk-active\")},e.prototype._clicked=function(){var t=this.model.active;this.model.active=!t},e}(r.ButtonToolButtonView);i.OnOffButtonView=o},function(t,e,i){var n=t(391),r=t(15),o=t(48),_=t(21),s=t(59),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view=t.plot_view},Object.defineProperty(t.prototype,\"plot_model\",{get:function(){return this.plot_view.model},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){t.model.active?t.activate():t.deactivate()})},t.prototype.activate=function(){},t.prototype.deactivate=function(){},t}(o.View);i.ToolView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tool\",this.internal({active:[r.Boolean,!1]})},Object.defineProperty(t.prototype,\"synthetic_renderers\",{get:function(){return[]},enumerable:!0,configurable:!0}),t.prototype._get_dim_tooltip=function(t,e){switch(e){case\"width\":return t+\" (x-axis)\";case\"height\":return t+\" (y-axis)\";case\"both\":return t}},t.prototype._get_dim_limits=function(t,e,i,n){var r,o=t[0],s=t[1],a=e[0],l=e[1],h=i.bbox.h_range;\"width\"==n||\"both\"==n?(r=[_.min([o,a]),_.max([o,a])],r=[_.max([r[0],h.start]),_.min([r[1],h.end])]):r=[h.start,h.end];var u,c=i.bbox.v_range;return\"height\"==n||\"both\"==n?(u=[_.min([s,l]),_.max([s,l])],u=[_.max([u[0],c.start]),_.min([u[1],c.end])]):u=[c.start,c.end],[r,u]},t}(s.Model);(i.Tool=l).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(19),s=t(59),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolProxy\",this.define({tools:[r.Array,[]],active:[r.Bool,!1],disabled:[r.Bool,!1]})},Object.defineProperty(t.prototype,\"button_view\",{get:function(){return this.tools[0].button_view},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"event_type\",{get:function(){return this.tools[0].event_type},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.tools[0].tooltip},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tool_name\",{get:function(){return this.tools[0].tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"icon\",{get:function(){return this.tools[0].computed_icon},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.icon},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){e.prototype.initialize.call(this),this.do=new o.Signal0(this,\"do\")},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.do,function(){return t.doit()}),this.connect(this.properties.active.change,function(){return t.set_active()})},t.prototype.doit=function(){for(var t=0,e=this.tools;t<e.length;t++){var i=e[t];i.do.emit()}},t.prototype.set_active=function(){for(var t=0,e=this.tools;t<e.length;t++){var i=e[t];i.active=this.active}},t}(s.Model);(i.ToolProxy=a).initClass()},function(t,e,i){var n=t(391),r=t(15),v=t(14),m=t(44),g=t(21),y=t(232),b=t(234),x=t(251),w=t(264),o=t(269),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Toolbar\",this.prototype.default_view=o.ToolbarBaseView,this.define({active_drag:[r.Any,\"auto\"],active_inspect:[r.Any,\"auto\"],active_scroll:[r.Any,\"auto\"],active_tap:[r.Any,\"auto\"],active_multi:[r.Any,null]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init_tools()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.tools.change,function(){return t._init_tools()})},t.prototype._init_tools=function(){for(var e=this,t=function(e){if(e instanceof w.InspectTool)g.any(s.inspectors,function(t){return t.id==e.id})||(s.inspectors=s.inspectors.concat([e]));else if(e instanceof b.HelpTool)g.any(s.help,function(t){return t.id==e.id})||(s.help=s.help.concat([e]));else if(e instanceof y.ActionTool)g.any(s.actions,function(t){return t.id==e.id})||(s.actions=s.actions.concat([e]));else if(e instanceof x.GestureTool){var t=void 0,i=void 0;m.isString(e.event_type)?(t=[e.event_type],i=!1):(t=e.event_type||[],i=!0);for(var n=0,r=t;n<r.length;n++){var o=r[n];o in s.gestures?(i&&(o=\"multi\"),g.any(s.gestures[o].tools,function(t){return t.id==e.id})||(s.gestures[o].tools=s.gestures[o].tools.concat([e])),s.connect(e.properties.active.change,s._active_change.bind(s,e))):v.logger.warn(\"Toolbar: unknown event type '\"+o+\"' for tool: \"+e.type+\" (\"+e.id+\")\")}}},s=this,i=0,n=this.tools;i<n.length;i++){var r=n[i];t(r)}if(\"auto\"==this.active_inspect);else if(this.active_inspect instanceof w.InspectTool)for(var o=0,a=this.inspectors;o<a.length;o++){var l=a[o];l!=this.active_inspect&&(l.active=!1)}else if(m.isArray(this.active_inspect))for(var h=0,u=this.inspectors;h<u.length;h++){var l=u[h];g.includes(this.active_inspect,l)||(l.active=!1)}else if(null==this.active_inspect)for(var c=0,_=this.inspectors;c<_.length;c++){var l=_[c];l.active=!1}var p=function(t){t.active?e._active_change(t):t.active=!0};for(var d in this.gestures){var f=this.gestures[d];if(0!=f.tools.length){if(f.tools=g.sortBy(f.tools,function(t){return t.default_order}),\"tap\"==d){if(null==this.active_tap)continue;\"auto\"==this.active_tap?p(f.tools[0]):p(this.active_tap)}if(\"pan\"==d){if(null==this.active_drag)continue;\"auto\"==this.active_drag?p(f.tools[0]):p(this.active_drag)}if(\"pinch\"==d||\"scroll\"==d){if(null==this.active_scroll||\"auto\"==this.active_scroll)continue;p(this.active_scroll)}null!=this.active_multi&&p(this.active_multi)}}},t}(o.ToolbarBase);(i.Toolbar=s).initClass()},function(t,e,i){var n=t(391),a=t(14),c=t(5),r=t(4),o=t(15),s=t(6),l=t(44),h=t(59),u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBase\",this.define({_visible:[o.Bool,null],autohide:[o.Bool,!1]})},Object.defineProperty(t.prototype,\"visible\",{get:function(){return!this.autohide||null!=this._visible&&this._visible},enumerable:!0,configurable:!0}),t}(h.Model);(i.ToolbarViewModel=u).initClass();var _=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._tool_button_views={},this._build_tool_button_views(),this._toolbar_view_model=new u({autohide:this.model.autohide})},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.tools.change,function(){return t._build_tool_button_views()}),this.connect(this.model.properties.autohide.change,function(){t._toolbar_view_model.autohide=t.model.autohide,t._on_visible_change()}),this.connect(this._toolbar_view_model.properties._visible.change,function(){return t._on_visible_change()})},t.prototype.remove=function(){r.remove_views(this._tool_button_views),e.prototype.remove.call(this)},t.prototype._build_tool_button_views=function(){var t=null!=this.model._proxied_tools?this.model._proxied_tools:this.model.tools;r.build_views(this._tool_button_views,t,{parent:this},function(t){return t.button_view})},t.prototype.set_visibility=function(t){t!=this._toolbar_view_model._visible&&(this._toolbar_view_model._visible=t)},t.prototype._on_visible_change=function(){var t=this._toolbar_view_model.visible,e=\"bk-toolbar-hidden\";this.el.classList.contains(e)&&t?this.el.classList.remove(e):t||this.el.classList.add(e)},t.prototype.render=function(){var e=this;if(c.empty(this.el),this.el.classList.add(\"bk-toolbar\"),this.el.classList.add(\"bk-toolbar-\"+this.model.toolbar_location),this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change(),null!=this.model.logo){var t=\"grey\"===this.model.logo?\"bk-grey\":null,i=c.a({href:\"https://bokeh.pydata.org/\",target:\"_blank\",class:[\"bk-logo\",\"bk-logo-small\",t]});this.el.appendChild(i)}var n=[],r=function(t){return e._tool_button_views[t.id].el},o=this.model.gestures;for(var s in o)n.push(o[s].tools.map(r));n.push(this.model.actions.map(r)),n.push(this.model.inspectors.filter(function(t){return t.toggleable}).map(r)),n.push(this.model.help.map(r));for(var a=0,l=n;a<l.length;a++){var h=l[a];if(0!==h.length){var u=c.div({class:\"bk-button-bar\"},h);this.el.appendChild(u)}}},t}(s.DOMView);i.ToolbarBaseView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBase\",this.prototype.default_view=_,this.define({tools:[o.Array,[]],logo:[o.String,\"normal\"],autohide:[o.Bool,!1]}),this.internal({gestures:[o.Any,function(){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},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}}}],actions:[o.Array,[]],inspectors:[o.Array,[]],help:[o.Array,[]],toolbar_location:[o.Location,\"right\"]})},Object.defineProperty(t.prototype,\"horizontal\",{get:function(){return\"above\"===this.toolbar_location||\"below\"===this.toolbar_location},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"vertical\",{get:function(){return\"left\"===this.toolbar_location||\"right\"===this.toolbar_location},enumerable:!0,configurable:!0}),t.prototype._active_change=function(t){var e=t.event_type;if(null!=e)for(var i=l.isString(e)?[e]:e,n=0,r=i;n<r.length;n++){var o=r[n];if(t.active){var s=this.gestures[o].active;null!=s&&t!=s&&(a.logger.debug(\"Toolbar: deactivating tool: \"+s.type+\" (\"+s.id+\") for event type '\"+o+\"'\"),s.active=!1),this.gestures[o].active=t,a.logger.debug(\"Toolbar: activating tool: \"+t.type+\" (\"+t.id+\") for event type '\"+o+\"'\")}else this.gestures[o].active=null}},t}(h.Model);(i.ToolbarBase=p).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(5),a=t(14),l=t(44),E=t(21),h=t(232),u=t(234),c=t(251),_=t(264),s=t(269),M=t(267),p=t(157),d=t(4),f=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ProxyToolbar\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init_tools(),this._merge_tools()},t.prototype._init_tools=function(){for(var t=function(e){if(e instanceof _.InspectTool)E.any(s.inspectors,function(t){return t.id==e.id})||(s.inspectors=s.inspectors.concat([e]));else if(e instanceof u.HelpTool)E.any(s.help,function(t){return t.id==e.id})||(s.help=s.help.concat([e]));else if(e instanceof h.ActionTool)E.any(s.actions,function(t){return t.id==e.id})||(s.actions=s.actions.concat([e]));else if(e instanceof c.GestureTool){var t=void 0,i=void 0;l.isString(e.event_type)?(t=[e.event_type],i=!1):(t=e.event_type||[],i=!0);for(var n=0,r=t;n<r.length;n++){var o=r[n];o in s.gestures?(i&&(o=\"multi\"),E.any(s.gestures[o].tools,function(t){return t.id==e.id})||(s.gestures[o].tools=s.gestures[o].tools.concat([e]))):a.logger.warn(\"Toolbar: unknown event type '\"+o+\"' for tool: \"+e.type+\" (\"+e.id+\")\")}}},s=this,e=0,i=this.tools;e<i.length;e++){var n=i[e];t(n)}},t.prototype._merge_tools=function(){var t,n=this;this._proxied_tools=[];for(var e={},i={},r={},o=[],s=[],a=0,l=this.help;a<l.length;a++){var h=l[a];E.includes(s,h.redirect)||(o.push(h),s.push(h.redirect))}for(var u in(t=this._proxied_tools).push.apply(t,o),this.help=o,this.gestures){var c=this.gestures[u];u in r||(r[u]={});for(var _=0,p=c.tools;_<p.length;_++){var d=p[_];d.type in r[u]||(r[u][d.type]=[]),r[u][d.type].push(d)}}for(var f=0,v=this.inspectors;f<v.length;f++){var d=v[f];d.type in e||(e[d.type]=[]),e[d.type].push(d)}for(var m=0,g=this.actions;m<g.length;m++){var d=g[m];d.type in i||(i[d.type]=[]),i[d.type].push(d)}var y=function(t,e){void 0===e&&(e=!1);var i=new M.ToolProxy({tools:t,active:e});return n._proxied_tools.push(i),i};for(var u in r){var c=this.gestures[u];for(var b in c.tools=[],r[u]){var x=r[u][b];if(0<x.length)if(\"multi\"==u)for(var w=0,k=x;w<k.length;w++){var d=k[w],S=y([d]);c.tools.push(S),this.connect(S.properties.active.change,this._active_change.bind(this,S))}else{var S=y(x);c.tools.push(S),this.connect(S.properties.active.change,this._active_change.bind(this,S))}}}for(var b in this.actions=[],i){var x=i[b];if(\"CustomAction\"==b)for(var C=0,T=x;C<T.length;C++){var d=T[C];this.actions.push(y([d]))}else 0<x.length&&this.actions.push(y(x))}for(var b in this.inspectors=[],e){var x=e[b];0<x.length&&this.inspectors.push(y(x,!0))}for(var A in this.gestures){var c=this.gestures[A];0!=c.tools.length&&(c.tools=E.sortBy(c.tools,function(t){return t.default_order}),\"pinch\"!=A&&\"scroll\"!=A&&\"multi\"!=A&&(c.tools[0].active=!0))}},t}(s.ToolbarBase);(i.ProxyToolbar=f).initClass();var v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.model.toolbar.toolbar_location=this.model.toolbar_location,this._toolbar_views={},d.build_views(this._toolbar_views,[this.model.toolbar],{parent:this})},t.prototype.remove=function(){d.remove_views(this._toolbar_views),e.prototype.remove.call(this)},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-toolbar-box\")},t.prototype.render=function(){e.prototype.render.call(this);var t=this._toolbar_views[this.model.toolbar.id];t.render(),o.empty(this.el),this.el.appendChild(t.el)},t.prototype.get_width=function(){return this.model.toolbar.vertical?30:null},t.prototype.get_height=function(){return this.model.toolbar.horizontal?30:null},t}(p.LayoutDOMView);i.ToolbarBoxView=v;var m=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBox\",this.prototype.default_view=v,this.define({toolbar:[r.Instance],toolbar_location:[r.Location,\"right\"]})},Object.defineProperty(t.prototype,\"sizing_mode\",{get:function(){switch(this.toolbar_location){case\"above\":case\"below\":return\"scale_width\";case\"left\":case\"right\":return\"scale_height\"}},enumerable:!0,configurable:!0}),t}(p.LayoutDOM);(i.ToolbarBox=m).initClass()},function(t,e,i){var r=t(21),o=t(185),s=t(186);i.compute_renderers=function(t,e,i){return null==t?[]:(n=\"auto\"==t?e.filter(function(t){return t instanceof o.GlyphRenderer||t instanceof s.GraphRenderer}):t,0<i.length&&(n=n.filter(function(t){return r.includes(i,t.name)})),n);var n}},function(i,t,e){var n=i(391),r=i(279),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSTransform\",this.define({args:[o.Any,{}],func:[o.String,\"\"],v_func:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_transform=function(t,e){var i=this.use_strict?a.use_strict(e):e;return new(Function.bind.apply(Function,[void 0].concat(this.names,[t,\"require\",\"exports\",i])))},Object.defineProperty(t.prototype,\"scalar_transform\",{get:function(){return this._make_transform(\"x\",this.func)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"vector_transform\",{get:function(){return this._make_transform(\"xs\",this.v_func)},enumerable:!0,configurable:!0}),t.prototype.compute=function(t){return this.scalar_transform.apply(this,this.values.concat([t,i,{}]))},t.prototype.v_compute=function(t){return this.vector_transform.apply(this,this.values.concat([t,i,{}]))},t}(r.Transform);(e.CustomJSTransform=l).initClass()},function(t,e,i){var n=t(391),r=t(279),o=t(181),s=t(15),a=t(44),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Dodge\",this.define({value:[s.Number,0],range:[s.Instance]})},t.prototype.v_compute=function(t){var e;if(this.range instanceof o.FactorRange)e=this.range.v_synthetic(t);else{if(!a.isArrayableOf(t,a.isNumber))throw new Error(\"unexpected\");e=t}for(var i=new Float64Array(e.length),n=0;n<e.length;n++){var r=e[n];i[n]=this._compute(r)}return i},t.prototype.compute=function(t){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(t));if(a.isNumber(t))return this._compute(t);throw new Error(\"unexpected\")},t.prototype._compute=function(t){return t+this.value},t}(r.Transform);(i.Dodge=l).initClass()},function(t,e,i){var n=t(272);i.CustomJSTransform=n.CustomJSTransform;var r=t(273);i.Dodge=r.Dodge;var o=t(275);i.Interpolator=o.Interpolator;var s=t(276);i.Jitter=s.Jitter;var a=t(277);i.LinearInterpolator=a.LinearInterpolator;var l=t(278);i.StepInterpolator=l.StepInterpolator;var h=t(279);i.Transform=h.Transform},function(t,e,i){var n=t(391),r=t(279),o=t(15),c=t(21),_=t(44),s=function(i){function t(t){var e=i.call(this,t)||this;return e._sorted_dirty=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Interpolator\",this.define({x:[o.Any],y:[o.Any],data:[o.Any],clip:[o.Bool,!0]})},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._sorted_dirty=!0})},t.prototype.v_compute=function(t){for(var e=new Float64Array(t.length),i=0;i<t.length;i++){var n=t[i];e[i]=this.compute(n)}return e},t.prototype.sort=function(t){if(void 0===t&&(t=!1),this._sorted_dirty){var e,i;if(_.isString(this.x)&&_.isString(this.y)&&null!=this.data){var n=this.data.columns();if(!c.includes(n,this.x))throw new Error(\"The x parameter does not correspond to a valid column name defined in the data parameter\");if(!c.includes(n,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),i=this.data.get_column(this.y)}else{if(!_.isArray(this.x)||!_.isArray(this.y))throw new Error(\"parameters 'x' and 'y' must be both either string fields or arrays\");e=this.x,i=this.y}if(e.length!==i.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\");var r=[];for(var o in e)r.push({x:e[o],y:i[o]});t?r.sort(function(t,e){return t.x>e.x?-1:t.x==e.x?0:1}):r.sort(function(t,e){return t.x<e.x?-1:t.x==e.x?0:1}),this._x_sorted=[],this._y_sorted=[];for(var s=0,a=r;s<a.length;s++){var l=a[s],h=l.x,u=l.y;this._x_sorted.push(h),this._y_sorted.push(u)}this._sorted_dirty=!1}},t}(r.Transform);(i.Interpolator=s).initClass()},function(t,e,i){var n=t(391),r=t(279),o=t(181),s=t(44),a=t(15),l=t(31),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Jitter\",this.define({mean:[a.Number,0],width:[a.Number,1],distribution:[a.Distribution,\"uniform\"],range:[a.Instance]}),this.internal({previous_values:[a.Array]})},t.prototype.v_compute=function(t){if(null!=this.previous_values&&this.previous_values.length==t.length)return this.previous_values;var e;if(this.range instanceof o.FactorRange)e=this.range.v_synthetic(t);else{if(!s.isArrayableOf(t,s.isNumber))throw new Error(\"unexpected\");e=t}for(var i=new Float64Array(e.length),n=0;n<e.length;n++){var r=e[n];i[n]=this._compute(r)}return this.previous_values=i},t.prototype.compute=function(t){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(t));if(s.isNumber(t))return this._compute(t);throw new Error(\"unexpected\")},t.prototype._compute=function(t){switch(this.distribution){case\"uniform\":return t+this.mean+(l.random()-.5)*this.width;case\"normal\":return t+l.rnorm(this.mean,this.width)}},t}(r.Transform);(i.Jitter=h).initClass()},function(t,e,i){var n=t(391),s=t(21),r=t(275),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearInterpolator\"},t.prototype.compute=function(e){if(this.sort(!1),this.clip){if(e<this._x_sorted[0]||e>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(e<this._x_sorted[0])return this._y_sorted[0];if(e>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}if(e==this._x_sorted[0])return this._y_sorted[0];var t=s.findLastIndex(this._x_sorted,function(t){return t<e}),i=this._x_sorted[t],n=this._x_sorted[t+1],r=this._y_sorted[t],o=this._y_sorted[t+1];return r+(e-i)/(n-i)*(o-r)},t}(r.Interpolator);(i.LinearInterpolator=o).initClass()},function(t,e,i){var n=t(391),r=t(275),o=t(15),s=t(21),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"StepInterpolator\",this.define({mode:[o.StepMode,\"after\"]})},t.prototype.compute=function(e){if(this.sort(!1),this.clip){if(e<this._x_sorted[0]||e>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(e<this._x_sorted[0])return this._y_sorted[0];if(e>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}var t;switch(this.mode){case\"after\":t=s.findLastIndex(this._x_sorted,function(t){return t<=e});break;case\"before\":t=s.findIndex(this._x_sorted,function(t){return e<=t});break;case\"center\":var i=this._x_sorted.map(function(t){return Math.abs(t-e)}),n=s.min(i);t=s.findIndex(i,function(t){return n===t});break;default:throw new Error(\"unknown mode: \"+this.mode)}return-1!=t?this._y_sorted[t]:NaN},t}(r.Interpolator);(i.StepInterpolator=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Transform\"},t}(r.Model);(i.Transform=o).initClass()},function(t,e,i){\"function\"!=typeof WeakMap&&t(342),Number.isInteger||(Number.isInteger=function(t){return\"number\"==typeof t&&isFinite(t)&&Math.floor(t)===t});var n,l,r,h,o=String.prototype;o.repeat||(o.repeat=function(t){if(null==this)throw new TypeError(\"can't convert \"+this+\" to object\");var e=\"\"+this;if((t=+t)!=t&&(t=0),t<0)throw new RangeError(\"repeat count must be non-negative\");if(t==1/0)throw new RangeError(\"repeat count must be less than infinity\");if(t=Math.floor(t),0==e.length||0==t)return\"\";if(e.length*t>=1<<28)throw new RangeError(\"repeat count must not overflow maximum string size\");for(var i=\"\";1==(1&t)&&(i+=e),0!=(t>>>=1);)e+=e;return i}),Array.from||(Array.from=(n=Object.prototype.toString,l=function(t){return\"function\"==typeof t||\"[object Function]\"===n.call(t)},r=Math.pow(2,53)-1,h=function(t){var e,i=(e=Number(t),isNaN(e)?0:0!==e&&isFinite(e)?(0<e?1:-1)*Math.floor(Math.abs(e)):e);return Math.min(Math.max(i,0),r)},function(t){var e=Object(t);if(null==t)throw new TypeError(\"Array.from requires an array-like object - not null or undefined\");var i,n=1<arguments.length?arguments[1]:void 0;if(void 0!==n){if(!l(n))throw new TypeError(\"Array.from: when provided, the second argument must be a function\");2<arguments.length&&(i=arguments[2])}for(var r=h(e.length),o=l(this)?Object(new this(r)):new Array(r),s=0\n",
358
+       "      // 13. If IsConstructor(C) is true, then\n",
359
+       "      ;s<r;){var a=e[s];o[s]=n?void 0===i?n(a,s):n.call(i,a,s):a,s+=1}return o.length=r,o}))},function(t,e,i){var n=t(391);n.__exportStar(t(282),i),n.__exportStar(t(283),i)},function(t,e,i){var n=t(38),r=function(){function s(t,e,i){this.header=t,this.metadata=e,this.content=i,this.buffers=[]}return s.assemble=function(t,e,i){var n=JSON.parse(t),r=JSON.parse(e),o=JSON.parse(i);return new s(n,r,o)},s.prototype.assemble_buffer=function(t,e){var i=null!=this.header.num_buffers?this.header.num_buffers:0;if(i<=this.buffers.length)throw new Error(\"too many buffers received, expecting #{nb}\");this.buffers.push([t,e])},s.create=function(t,e,i){void 0===i&&(i={});var n=s.create_header(t);return new s(n,e,i)},s.create_header=function(t){return{msgid:n.uniqueId(),msgtype:t}},s.prototype.complete=function(){return!(null==this.header||null==this.metadata||null==this.content||\"num_buffers\"in this.header&&this.buffers.length!==this.header.num_buffers)},s.prototype.send=function(t){var e=null!=this.header.num_buffers?this.header.num_buffers:0;if(0<e)throw new Error(\"BokehJS only supports receiving buffers, not sending\");var i=JSON.stringify(this.header),n=JSON.stringify(this.metadata),r=JSON.stringify(this.content);t.send(i),t.send(n),t.send(r)},s.prototype.msgid=function(){return this.header.msgid},s.prototype.msgtype=function(){return this.header.msgtype},s.prototype.reqid=function(){return this.header.reqid},s.prototype.problem=function(){return\"msgid\"in this.header?\"msgtype\"in this.header?null:\"No msgtype in header\":\"No msgid in header\"},s}();i.Message=r},function(t,e,i){var o=t(282),n=function(){function t(){this.message=null,this._partial=null,this._fragments=[],this._buf_header=null,this._current_consumer=this._HEADER}return t.prototype.consume=function(t){this._current_consumer(t)},t.prototype._HEADER=function(t){this._assume_text(t),this.message=null,this._partial=null,this._fragments=[t],this._buf_header=null,this._current_consumer=this._METADATA},t.prototype._METADATA=function(t){this._assume_text(t),this._fragments.push(t),this._current_consumer=this._CONTENT},t.prototype._CONTENT=function(t){this._assume_text(t),this._fragments.push(t);var e=this._fragments.slice(0,3),i=e[0],n=e[1],r=e[2];this._partial=o.Message.assemble(i,n,r),this._check_complete()},t.prototype._BUFFER_HEADER=function(t){this._assume_text(t),this._buf_header=t,this._current_consumer=this._BUFFER_PAYLOAD},t.prototype._BUFFER_PAYLOAD=function(t){this._assume_binary(t),this._partial.assemble_buffer(this._buf_header,t),this._check_complete()},t.prototype._assume_text=function(t){if(t instanceof ArrayBuffer)throw new Error(\"Expected text fragment but received binary fragment\")},t.prototype._assume_binary=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Expected binary fragment but received text fragment\")},t.prototype._check_complete=function(){this._partial.complete()?(this.message=this._partial,this._current_consumer=this._HEADER):this._current_consumer=this._BUFFER_HEADER},t}();i.Receiver=n},function(t,e,i){i.safely=function(t,e){void 0===e&&(e=!1);try{return t()}catch(t){if(function(t){var e=document.createElement(\"div\");e.style.backgroundColor=\"#f2dede\",e.style.border=\"1px solid #a94442\",e.style.borderRadius=\"4px\",e.style.display=\"inline-block\",e.style.fontFamily=\"sans-serif\",e.style.marginTop=\"5px\",e.style.minWidth=\"200px\",e.style.padding=\"5px 5px 5px 10px\",e.classList.add(\"bokeh-error-box-into-flames\");var i=document.createElement(\"span\");i.style.backgroundColor=\"#a94442\",i.style.borderRadius=\"0px 4px 0px 0px\",i.style.color=\"white\",i.style.cursor=\"pointer\",i.style.cssFloat=\"right\",i.style.fontSize=\"0.8em\",i.style.margin=\"-6px -6px 0px 0px\",i.style.padding=\"2px 5px 4px 5px\",i.title=\"close\",i.setAttribute(\"aria-label\",\"close\"),i.appendChild(document.createTextNode(\"x\")),i.addEventListener(\"click\",function(){return s.removeChild(e)});var 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\"));var r=document.createElement(\"pre\");r.style.whiteSpace=\"unset\",r.style.overflowX=\"auto\";var o=t instanceof Error?t.message:t;r.appendChild(document.createTextNode(o)),e.appendChild(i),e.appendChild(n),e.appendChild(r);var s=document.getElementsByTagName(\"body\")[0];s.insertBefore(e,s.firstChild)}(t),e)return;throw t}}},function(t,e,n){function r(){var t=document.getElementsByTagName(\"body\")[0],e=document.getElementsByClassName(\"bokeh-test-div\");1==e.length&&(t.removeChild(e[0]),delete e[0]);var i=document.createElement(\"div\");i.classList.add(\"bokeh-test-div\"),i.style.display=\"none\",t.insertBefore(i,t.firstChild)}n.results={},n.init=function(){r()},n.record=function(t,e){n.results[t]=e,r()},n.count=function(t){null==n.results[t]&&(n.results[t]=0),n.results[t]+=1,r()},n.clear=function(){for(var t=0,e=Object.keys(n.results);t<e.length;t++){var i=e[t];delete n.results[i]}r()}},function(t,e,i){i.version=\"1.0.2\"},function(t,e,i){!function(){\"use strict\";var _,x,p,d,a;function f(t,e){var i,n=Object.keys(e);for(i=0;i<n.length;i++)t=t.replace(new RegExp(\"\\\\{\"+n[i]+\"\\\\}\",\"gi\"),e[n[i]]);return t}function l(t){var e,i,n;if(!t)throw new Error(\"cannot create a random attribute name for an undefined object\");e=\"ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz\",i=\"\";do{for(i=\"\",n=0;n<12;n++)i+=e[Math.floor(Math.random()*e.length)]}while(t[i]);return i}a=function(t,e){var i,n,r,o={};for(t=t.split(\",\"),e=e||10,i=0;i<t.length;i+=2)n=\"&\"+t[i+1]+\";\",r=parseInt(t[i],e),o[n]=\"&#\"+r+\";\";return o[\"\\\\xa0\"]=\"&#160;\",o}(\"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),_={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\"}},(p=function(t,e){this.__root=t,this.__ctx=e}).prototype.addColorStop=function(t,e){var i,n=this.__ctx.__createElement(\"stop\");n.setAttribute(\"offset\",t),-1!==e.indexOf(\"rgba\")?(i=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(e),n.setAttribute(\"stop-color\",f(\"rgb({r},{g},{b})\",{r:i[1],g:i[2],b:i[3]})),n.setAttribute(\"stop-opacity\",i[4])):n.setAttribute(\"stop-color\",e),this.__root.appendChild(n)},d=function(t,e){this.__root=t,this.__ctx=e},(x=function(t){var e,i={width:500,height:500,enableMirroring:!1};if(1<arguments.length?((e=i).width=t,e.height=arguments[1]):e=t||i,!(this instanceof x))return new x(e);this.width=e.width||i.width,this.height=e.height||i.height,this.enableMirroring=void 0!==e.enableMirroring?e.enableMirroring:i.enableMirroring,(this.canvas=this).__document=e.document||document,e.ctx?this.__ctx=e.ctx:(this.__canvas=this.__document.createElement(\"canvas\"),this.__ctx=this.__canvas.getContext(\"2d\")),this.__setDefaultStyles(),this.__stack=[this.__getStyleState()],this.__groupStack=[],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.__root.setAttribute(\"width\",this.width),this.__root.setAttribute(\"height\",this.height),this.__ids={},this.__defs=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this.__root.appendChild(this.__defs),this.__currentElement=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"),this.__root.appendChild(this.__currentElement)}).prototype.__createElement=function(t,e,i){void 0===e&&(e={});var n,r,o=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",t),s=Object.keys(e);for(i&&(o.setAttribute(\"fill\",\"none\"),o.setAttribute(\"stroke\",\"none\")),n=0;n<s.length;n++)r=s[n],o.setAttribute(r,e[r]);return o},x.prototype.__setDefaultStyles=function(){var t,e,i=Object.keys(_);for(t=0;t<i.length;t++)this[e=i[t]]=_[e].canvas},x.prototype.__applyStyleState=function(t){var e,i,n=Object.keys(t);for(e=0;e<n.length;e++)this[i=n[e]]=t[i]},x.prototype.__getStyleState=function(){var t,e,i={},n=Object.keys(_);for(t=0;t<n.length;t++)e=n[t],i[e]=this[e];return i},x.prototype.__applyStyleToCurrentElement=function(e){var t=this.__currentElement,i=this.__currentElementsToStyle;i&&(t.setAttribute(e,\"\"),t=i.element,i.children.forEach(function(t){t.setAttribute(e,\"\")}));var n,r,o,s,a,l=Object.keys(_);for(n=0;n<l.length;n++)if(r=_[l[n]],o=this[l[n]],r.apply)if(o instanceof d){if(o.__ctx)for(;o.__ctx.__defs.childNodes.length;)s=o.__ctx.__defs.childNodes[0].getAttribute(\"id\"),this.__ids[s]=s,this.__defs.appendChild(o.__ctx.__defs.childNodes[0]);t.setAttribute(r.apply,f(\"url(#{id})\",{id:o.__root.getAttribute(\"id\")}))}else if(o instanceof p)t.setAttribute(r.apply,f(\"url(#{id})\",{id:o.__root.getAttribute(\"id\")}));else if(-1!==r.apply.indexOf(e)&&r.svg!==o)if(\"stroke\"!==r.svgAttr&&\"fill\"!==r.svgAttr||-1===o.indexOf(\"rgba\")){var h=r.svgAttr;if(\"globalAlpha\"===l[n]&&(h=e+\"-\"+r.svgAttr,t.getAttribute(h)))continue;t.setAttribute(h,o)}else{a=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(o),t.setAttribute(r.svgAttr,f(\"rgb({r},{g},{b})\",{r:a[1],g:a[2],b:a[3]}));var u=a[4],c=this.globalAlpha;null!=c&&(u*=c),t.setAttribute(r.svgAttr+\"-opacity\",u)}},x.prototype.__closestGroupOrSvg=function(t){return\"g\"===(t=t||this.__currentElement).nodeName||\"svg\"===t.nodeName?t:this.__closestGroupOrSvg(t.parentNode)},x.prototype.getSerializedSvg=function(t){var e,i,n,r,o,s=(new XMLSerializer).serializeToString(this.__root);if(/xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg\".+xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg/gi.test(s)&&(s=s.replace('xmlns=\"http://www.w3.org/2000/svg','xmlns:xlink=\"http://www.w3.org/1999/xlink')),t)for(e=Object.keys(a),i=0;i<e.length;i++)n=e[i],r=a[n],(o=new RegExp(n,\"gi\")).test(s)&&(s=s.replace(o,r));return s},x.prototype.getSvg=function(){return this.__root},x.prototype.save=function(){var t=this.__createElement(\"g\"),e=this.__closestGroupOrSvg();this.__groupStack.push(e),e.appendChild(t),this.__currentElement=t,this.__stack.push(this.__getStyleState())},x.prototype.restore=function(){this.__currentElement=this.__groupStack.pop(),this.__currentElementsToStyle=null,this.__currentElement||(this.__currentElement=this.__root.childNodes[1]);var t=this.__stack.pop();this.__applyStyleState(t)},x.prototype.__addTransform=function(t){var e=this.__closestGroupOrSvg();if(0<e.childNodes.length){\"path\"===this.__currentElement.nodeName&&(this.__currentElementsToStyle||(this.__currentElementsToStyle={element:e,children:[]}),this.__currentElementsToStyle.children.push(this.__currentElement),this.__applyCurrentDefaultPath());var i=this.__createElement(\"g\");e.appendChild(i),this.__currentElement=i}var n=this.__currentElement.getAttribute(\"transform\");n?n+=\" \":n=\"\",n+=t,this.__currentElement.setAttribute(\"transform\",n)},x.prototype.scale=function(t,e){void 0===e&&(e=t),this.__addTransform(f(\"scale({x},{y})\",{x:t,y:e}))},x.prototype.rotate=function(t){var e=180*t/Math.PI;this.__addTransform(f(\"rotate({angle},{cx},{cy})\",{angle:e,cx:0,cy:0}))},x.prototype.translate=function(t,e){this.__addTransform(f(\"translate({x},{y})\",{x:t,y:e}))},x.prototype.transform=function(t,e,i,n,r,o){this.__addTransform(f(\"matrix({a},{b},{c},{d},{e},{f})\",{a:t,b:e,c:i,d:n,e:r,f:o}))},x.prototype.beginPath=function(){var t;this.__currentDefaultPath=\"\",this.__currentPosition={},t=this.__createElement(\"path\",{},!0),this.__closestGroupOrSvg().appendChild(t),this.__currentElement=t},x.prototype.__applyCurrentDefaultPath=function(){var t=this.__currentElement;\"path\"===t.nodeName?t.setAttribute(\"d\",this.__currentDefaultPath):console.error(\"Attempted to apply path command to node\",t.nodeName)},x.prototype.__addPathCommand=function(t){this.__currentDefaultPath+=\" \",this.__currentDefaultPath+=t},x.prototype.moveTo=function(t,e){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.__currentPosition={x:t,y:e},this.__addPathCommand(f(\"M {x} {y}\",{x:t,y:e}))},x.prototype.closePath=function(){this.__currentDefaultPath&&this.__addPathCommand(\"Z\")},x.prototype.lineTo=function(t,e){this.__currentPosition={x:t,y:e},-1<this.__currentDefaultPath.indexOf(\"M\")?this.__addPathCommand(f(\"L {x} {y}\",{x:t,y:e})):this.__addPathCommand(f(\"M {x} {y}\",{x:t,y:e}))},x.prototype.bezierCurveTo=function(t,e,i,n,r,o){this.__currentPosition={x:r,y:o},this.__addPathCommand(f(\"C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}\",{cp1x:t,cp1y:e,cp2x:i,cp2y:n,x:r,y:o}))},x.prototype.quadraticCurveTo=function(t,e,i,n){this.__currentPosition={x:i,y:n},this.__addPathCommand(f(\"Q {cpx} {cpy} {x} {y}\",{cpx:t,cpy:e,x:i,y:n}))};var b=function(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]};x.prototype.arcTo=function(t,e,i,n,r){var o=this.__currentPosition&&this.__currentPosition.x,s=this.__currentPosition&&this.__currentPosition.y;if(void 0!==o&&void 0!==s){if(r<0)throw new Error(\"IndexSizeError: The radius provided (\"+r+\") is negative.\");if(o===t&&s===e||t===i&&e===n||0===r)this.lineTo(t,e);else{var a=b([o-t,s-e]),l=b([i-t,n-e]);if(a[0]*l[1]!=a[1]*l[0]){var h=a[0]*l[0]+a[1]*l[1],u=Math.acos(Math.abs(h)),c=b([a[0]+l[0],a[1]+l[1]]),_=r/Math.sin(u/2),p=t+_*c[0],d=e+_*c[1],f=[-a[1],a[0]],v=[l[1],-l[0]],m=function(t){var e=t[0],i=t[1];return 0<=i?Math.acos(e):-Math.acos(e)},g=m(f),y=m(v);this.lineTo(p+f[0]*r,d+f[1]*r),this.arc(p,d,r,g,y)}else this.lineTo(t,e)}}},x.prototype.stroke=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"fill stroke markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"stroke\")},x.prototype.fill=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"stroke fill markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"fill\")},x.prototype.rect=function(t,e,i,n){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+n),this.lineTo(t,e+n),this.lineTo(t,e),this.closePath()},x.prototype.fillRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"fill\")},x.prototype.strokeRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"stroke\")},x.prototype.__clearCanvas=function(){for(var t=this.__closestGroupOrSvg(),e=t.getAttribute(\"transform\"),i=this.__root.childNodes[1],n=i.childNodes,r=n.length-1;0<=r;r--)n[r]&&i.removeChild(n[r]);this.__currentElement=i,this.__groupStack=[],e&&this.__addTransform(e)},x.prototype.clearRect=function(t,e,i,n){if(0!==t||0!==e||i!==this.width||n!==this.height){var r,o=this.__closestGroupOrSvg();r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n,fill:\"#FFFFFF\"},!0),o.appendChild(r)}else this.__clearCanvas()},x.prototype.createLinearGradient=function(t,e,i,n){var r=this.__createElement(\"linearGradient\",{id:l(this.__ids),x1:t+\"px\",x2:i+\"px\",y1:e+\"px\",y2:n+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(r),new p(r,this)},x.prototype.createRadialGradient=function(t,e,i,n,r,o){var s=this.__createElement(\"radialGradient\",{id:l(this.__ids),cx:n+\"px\",cy:r+\"px\",r:o+\"px\",fx:t+\"px\",fy:e+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(s),new p(s,this)},x.prototype.__parseFont=function(){var t=/^\\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),e={style:t[1]||\"normal\",size:t[4]||\"10px\",family:t[6]||\"sans-serif\",weight:t[3]||\"normal\",decoration:t[2]||\"normal\",href:null};return\"underline\"===this.__fontUnderline&&(e.decoration=\"underline\"),this.__fontHref&&(e.href=this.__fontHref),e},x.prototype.__wrapTextLink=function(t,e){if(t.href){var i=this.__createElement(\"a\");return i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.href),i.appendChild(e),i}return e},x.prototype.__applyText=function(t,e,i,n){var r,o,s,a,l=this.__parseFont(),h=this.__closestGroupOrSvg(),u=this.__createElement(\"text\",{\"font-family\":l.family,\"font-size\":l.size,\"font-style\":l.style,\"font-weight\":l.weight,\"text-decoration\":l.decoration,x:e,y:i,\"text-anchor\":(s=this.textAlign,a={left:\"start\",right:\"end\",center:\"middle\",start:\"start\",end:\"end\"},a[s]||a.start),\"dominant-baseline\":(r=this.textBaseline,o={alphabetic:\"alphabetic\",hanging:\"hanging\",top:\"text-before-edge\",bottom:\"text-after-edge\",middle:\"central\"},o[r]||o.alphabetic)},!0);u.appendChild(this.__document.createTextNode(t)),this.__currentElement=u,this.__applyStyleToCurrentElement(n),h.appendChild(this.__wrapTextLink(l,u))},x.prototype.fillText=function(t,e,i){this.__applyText(t,e,i,\"fill\")},x.prototype.strokeText=function(t,e,i){this.__applyText(t,e,i,\"stroke\")},x.prototype.measureText=function(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)},x.prototype.arc=function(t,e,i,n,r,o){if(n!==r){n%=2*Math.PI,r%=2*Math.PI,n===r&&(r=(r+2*Math.PI-.001*(o?-1:1))%(2*Math.PI));var s=t+i*Math.cos(r),a=e+i*Math.sin(r),l=t+i*Math.cos(n),h=e+i*Math.sin(n),u=o?0:1,c=0,_=r-n;_<0&&(_+=2*Math.PI),c=o?_>Math.PI?0:1:_>Math.PI?1:0,this.lineTo(l,h),this.__addPathCommand(f(\"A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}\",{rx:i,ry:i,xAxisRotation:0,largeArcFlag:c,sweepFlag:u,endX:s,endY:a})),this.__currentPosition={x:s,y:a}}},x.prototype.clip=function(){var t=this.__closestGroupOrSvg(),e=this.__createElement(\"clipPath\"),i=l(this.__ids),n=this.__createElement(\"g\");this.__applyCurrentDefaultPath(),t.removeChild(this.__currentElement),e.setAttribute(\"id\",i),e.appendChild(this.__currentElement),this.__defs.appendChild(e),t.setAttribute(\"clip-path\",f(\"url(#{id})\",{id:i})),t.appendChild(n),this.__currentElement=n},x.prototype.drawImage=function(){var t,e,i,n,r,o,s,a,l,h,u,c,_,p,d=Array.prototype.slice.call(arguments),f=d[0],v=0,m=0;if(3===d.length)t=d[1],e=d[2],r=f.width,o=f.height,i=r,n=o;else if(5===d.length)t=d[1],e=d[2],i=d[3],n=d[4],r=f.width,o=f.height;else{if(9!==d.length)throw new Error(\"Inavlid number of arguments passed to drawImage: \"+arguments.length);v=d[1],m=d[2],r=d[3],o=d[4],t=d[5],e=d[6],i=d[7],n=d[8]}s=this.__closestGroupOrSvg(),this.__currentElement;var g=\"translate(\"+t+\", \"+e+\")\";if(f instanceof x){if((a=f.getSvg().cloneNode(!0)).childNodes&&1<a.childNodes.length){for(l=a.childNodes[0];l.childNodes.length;)p=l.childNodes[0].getAttribute(\"id\"),this.__ids[p]=p,this.__defs.appendChild(l.childNodes[0]);if(h=a.childNodes[1]){var y,b=h.getAttribute(\"transform\");y=b?b+\" \"+g:g,h.setAttribute(\"transform\",y),s.appendChild(h)}}}else\"IMG\"===f.nodeName?((u=this.__createElement(\"image\")).setAttribute(\"width\",i),u.setAttribute(\"height\",n),u.setAttribute(\"preserveAspectRatio\",\"none\"),(v||m||r!==f.width||o!==f.height)&&((c=this.__document.createElement(\"canvas\")).width=i,c.height=n,(_=c.getContext(\"2d\")).drawImage(f,v,m,r,o,0,0,i,n),f=c),u.setAttribute(\"transform\",g),u.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===f.nodeName?f.toDataURL():f.getAttribute(\"src\")),s.appendChild(u)):\"CANVAS\"===f.nodeName&&((u=this.__createElement(\"image\")).setAttribute(\"width\",i),u.setAttribute(\"height\",n),u.setAttribute(\"preserveAspectRatio\",\"none\"),(c=this.__document.createElement(\"canvas\")).width=i,c.height=n,(_=c.getContext(\"2d\")).imageSmoothingEnabled=!1,_.mozImageSmoothingEnabled=!1,_.oImageSmoothingEnabled=!1,_.webkitImageSmoothingEnabled=!1,_.drawImage(f,v,m,r,o,0,0,i,n),f=c,u.setAttribute(\"transform\",g),u.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",f.toDataURL()),s.appendChild(u))},x.prototype.createPattern=function(t,e){var i,n=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"pattern\"),r=l(this.__ids);return n.setAttribute(\"id\",r),n.setAttribute(\"width\",t.width),n.setAttribute(\"height\",t.height),\"CANVAS\"===t.nodeName||\"IMG\"===t.nodeName?((i=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\")).setAttribute(\"width\",t.width),i.setAttribute(\"height\",t.height),i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===t.nodeName?t.toDataURL():t.getAttribute(\"src\")),n.appendChild(i),this.__defs.appendChild(n)):t instanceof x&&(n.appendChild(t.__root.childNodes[1]),this.__defs.appendChild(n)),new d(n,this)},x.prototype.setLineDash=function(t){t&&0<t.length?this.lineDash=t.join(\",\"):this.lineDash=null},x.prototype.drawFocusRing=function(){},x.prototype.createImageData=function(){},x.prototype.getImageData=function(){},x.prototype.putImageData=function(){},x.prototype.globalCompositeOperation=function(){},x.prototype.setTransform=function(){},\"object\"==typeof window&&(window.C2S=x),\"object\"==typeof e&&\"object\"==typeof e.exports&&(e.exports=x)}()},function(t,e,i){var n,o=t(307),r=t(317),s=t(321),a=t(316),l=t(321),h=t(323),u=Function.prototype.bind,c=Object.defineProperty,_=Object.prototype.hasOwnProperty;n=function(t,e,i){var n,r=h(e)&&l(e.value);return delete(n=o(e)).writable,delete n.value,n.get=function(){return!i.overwriteDefinition&&_.call(this,t)?r:(e.value=u.call(r,i.resolveContext?i.resolveContext(this):this),c(this,t,e),this[t])},n},e.exports=function(t){var i=r(arguments[1]);return null!=i.resolveContext&&s(i.resolveContext),a(t,function(t,e){return n(e,t,i)})}},function(t,e,i){var a=t(304),l=t(317),h=t(310),u=t(324);(e.exports=function(t,e){var i,n,r,o,s;return arguments.length<2||\"string\"!=typeof t?(o=e,e=t,t=null):o=arguments[2],null==t?(i=r=!0,n=!1):(i=u.call(t,\"c\"),n=u.call(t,\"e\"),r=u.call(t,\"w\")),s={value:e,configurable:i,enumerable:n,writable:r},o?a(l(o),s):s}).gs=function(t,e,i){var n,r,o,s;return\"string\"!=typeof t?(o=i,i=e,e=t,t=null):o=arguments[3],null==e?e=void 0:h(e)?null==i?i=void 0:h(i)||(o=i,i=void 0):(o=e,e=i=void 0),null==t?r=!(n=!0):(n=u.call(t,\"c\"),r=u.call(t,\"e\")),s={get:e,set:i,configurable:n,enumerable:r},o?a(l(o),s):s}},function(t,e,i){var n=t(323);e.exports=function(){return n(this).length=0,this}},function(t,e,i){e.exports=t(292)()?Array.from:t(293)},function(t,e,i){e.exports=function(){var t,e,i=Array.from;return\"function\"==typeof i&&(e=i(t=[\"raz\",\"dwa\"]),Boolean(e&&e!==t&&\"dwa\"===e[1]))}},function(t,e,i){var p=t(337).iterator,d=t(294),f=t(295),v=t(302),m=t(321),g=t(323),y=t(312),b=t(327),x=Array.isArray,w=Function.prototype.call,k={configurable:!0,enumerable:!0,writable:!0,value:null},S=Object.defineProperty;e.exports=function(t){var e,i,n,r,o,s,a,l,h,u,c=arguments[1],_=arguments[2];if(t=Object(g(t)),y(c)&&m(c),this&&this!==Array&&f(this))e=this;else{if(!c){if(d(t))return 1!==(o=t.length)?Array.apply(null,t):((r=new Array(1))[0]=t[0],r);if(x(t)){for(r=new Array(o=t.length),i=0;i<o;++i)r[i]=t[i];return r}}r=[]}if(!x(t))if(void 0!==(h=t[p])){for(a=m(h).call(t),e&&(r=new e),l=a.next(),i=0;!l.done;)u=c?w.call(c,_,l.value,i):l.value,e?(k.value=u,S(r,i,k)):r[i]=u,l=a.next(),++i;o=i}else if(b(t)){for(o=t.length,e&&(r=new e),n=i=0;i<o;++i)u=t[i],i+1<o&&55296<=(s=u.charCodeAt(0))&&s<=56319&&(u+=t[++i]),u=c?w.call(c,_,u,n):u,e?(k.value=u,S(r,n,k)):r[n]=u,++n;o=n}if(void 0===o)for(o=v(t.length),e&&(r=new e(o)),i=0;i<o;++i)u=c?w.call(c,_,t[i],i):t[i],e?(k.value=u,S(r,i,k)):r[i]=u;return e&&(k.value=null,r.length=o),r}},function(t,e,i){var n=Object.prototype.toString,r=n.call(function(){return arguments}());e.exports=function(t){return n.call(t)===r}},function(t,e,i){var n=Object.prototype.toString,r=n.call(t(296));e.exports=function(t){return\"function\"==typeof t&&n.call(t)===r}},function(t,e,i){e.exports=function(){}},function(t,e,i){e.exports=function(){return this}()},function(t,e,i){e.exports=t(299)()?Math.sign:t(300)},function(t,e,i){e.exports=function(){var t=Math.sign;return\"function\"==typeof t&&1===t(10)&&-1===t(-20)}},function(t,e,i){e.exports=function(t){return t=Number(t),isNaN(t)||0===t?t:0<t?1:-1}},function(t,e,i){var n=t(298),r=Math.abs,o=Math.floor;e.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?n(t)*o(r(t)):t}},function(t,e,i){var n=t(301),r=Math.max;e.exports=function(t){return r(0,n(t))}},function(t,e,i){var a=t(321),l=t(323),h=Function.prototype.bind,u=Function.prototype.call,c=Object.keys,_=Object.prototype.propertyIsEnumerable;e.exports=function(o,s){return function(i,n){var t,r=arguments[2],e=arguments[3];return i=Object(l(i)),a(n),t=c(i),e&&t.sort(\"function\"==typeof e?h.call(e,i):void 0),\"function\"!=typeof o&&(o=t[o]),u.call(o,t,function(t,e){return _.call(i,t)?u.call(n,r,i[t],t,i,e):s})}}},function(t,e,i){e.exports=t(305)()?Object.assign:t(306)},function(t,e,i){e.exports=function(){var t,e=Object.assign;return\"function\"==typeof e&&(e(t={foo:\"raz\"},{bar:\"dwa\"},{trzy:\"trzy\"}),t.foo+t.bar+t.trzy===\"razdwatrzy\")}},function(t,e,i){var s=t(313),a=t(323),l=Math.max;e.exports=function(e,i){var n,t,r,o=l(arguments.length,2);for(e=Object(a(e)),r=function(t){try{e[t]=i[t]}catch(t){n||(n=t)}},t=1;t<o;++t)i=arguments[t],s(i).forEach(r);if(void 0!==n)throw n;return e}},function(t,e,i){var o=t(291),s=t(304),a=t(323);e.exports=function(e){var t=Object(a(e)),i=arguments[1],n=Object(arguments[2]);if(t!==e&&!i)return t;var r={};return i?o(i,function(t){(n.ensure||t in e)&&(r[t]=e[t])}):s(r,e),r}},function(t,e,i){var n,r,o,s,a=Object.create;t(319)()||(n=t(320)),e.exports=n?1!==n.level?a:(s={configurable:(o={},!1),enumerable:(r={},!1),writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(t){o[t]=\"__proto__\"!==t?s:{configurable:!0,enumerable:!1,writable:!0,value:void 0}}),Object.defineProperties(r,o),Object.defineProperty(n,\"nullPolyfill\",{configurable:!1,enumerable:!1,writable:!1,value:r}),function(t,e){return a(null===t?r:t,e)}):a},function(t,e,i){e.exports=t(303)(\"forEach\")},function(t,e,i){e.exports=function(t){return\"function\"==typeof t}},function(t,e,i){var n=t(312),r={function:!0,object:!0};e.exports=function(t){return n(t)&&r[typeof t]||!1}},function(t,e,i){var n=t(296)();e.exports=function(t){return t!==n&&null!==t}},function(t,e,i){e.exports=t(314)()?Object.keys:t(315)},function(t,e,i){e.exports=function(){try{return Object.keys(\"primitive\"),!0}catch(t){return!1}}},function(t,e,i){var n=t(312),r=Object.keys;e.exports=function(t){return r(n(t)?Object(t):t)}},function(t,e,i){var n=t(321),a=t(309),l=Function.prototype.call;e.exports=function(t,r){var o={},s=arguments[2];return n(r),a(t,function(t,e,i,n){o[e]=l.call(r,s,t,e,i,n)}),o}},function(t,e,i){var n=t(312),r=Array.prototype.forEach,o=Object.create;e.exports=function(t){var e=o(null);return r.call(arguments,function(t){n(t)&&function(t,e){var i;for(i in t)e[i]=t[i]}(Object(t),e)}),e}},function(t,e,i){e.exports=t(319)()?Object.setPrototypeOf:t(320)},function(t,e,i){var n=Object.create,r=Object.getPrototypeOf,o={};e.exports=function(){var t=Object.setPrototypeOf,e=arguments[0]||n;return\"function\"==typeof t&&r(t(e(null),o))===o}},function(t,e,i){var r,n,o,s,a=t(311),l=t(323),h=Object.prototype.isPrototypeOf,u=Object.defineProperty,c={configurable:!0,enumerable:!1,writable:!0,value:void 0};r=function(t,e){if(l(t),null===e||a(e))return t;throw new TypeError(\"Prototype must be null or an object\")},e.exports=(n=function(){var t,e=Object.create(null),i={},n=Object.getOwnPropertyDescriptor(Object.prototype,\"__proto__\");if(n){try{(t=n.set).call(e,i)}catch(t){}if(Object.getPrototypeOf(e)===i)return{set:t,level:2}}return e.__proto__=i,Object.getPrototypeOf(e)===i?{level:2}:((e={}).__proto__=i,Object.getPrototypeOf(e)===i&&{level:1})}())?(2===n.level?n.set?(s=n.set,o=function(t,e){return s.call(r(t,e),e),t}):o=function(t,e){return r(t,e).__proto__=e,t}:o=function t(e,i){var n;return r(e,i),(n=h.call(t.nullPolyfill,e))&&delete t.nullPolyfill.__proto__,null===i&&(i=t.nullPolyfill),e.__proto__=i,n&&u(t.nullPolyfill,\"__proto__\",c),e},Object.defineProperty(o,\"level\",{configurable:!1,enumerable:!1,writable:!1,value:n.level})):null,t(308)},function(t,e,i){e.exports=function(t){if(\"function\"!=typeof t)throw new TypeError(t+\" is not a function\");return t}},function(t,e,i){var n=t(311);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not an Object\");return t}},function(t,e,i){var n=t(312);e.exports=function(t){if(!n(t))throw new TypeError(\"Cannot use null or undefined\");return t}},function(t,e,i){e.exports=t(325)()?String.prototype.contains:t(326)},function(t,e,i){var n=\"razdwatrzy\";e.exports=function(){return\"function\"==typeof n.contains&&!0===n.contains(\"dwa\")&&!1===n.contains(\"foo\")}},function(t,e,i){var n=String.prototype.indexOf;e.exports=function(t){return-1<n.call(this,t,arguments[1])}},function(t,e,i){var n=Object.prototype.toString,r=n.call(\"\");e.exports=function(t){return\"string\"==typeof t||t&&\"object\"==typeof t&&(t instanceof String||n.call(t)===r)||!1}},function(t,e,i){var n=Object.create(null),r=Math.random;e.exports=function(){for(var t;t=r().toString(36).slice(2),n[t];);return t}},function(t,e,i){var n,r=t(318),o=t(324),s=t(289),a=t(337),l=t(332),h=Object.defineProperty;n=e.exports=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");l.call(this,t),e=e?o.call(e,\"key+value\")?\"key+value\":o.call(e,\"key\")?\"key\":\"value\":\"value\",h(this,\"__kind__\",s(\"\",e))},r&&r(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:s(function(t){return\"value\"===this.__kind__?this.__list__[t]:\"key+value\"===this.__kind__?[t,this.__list__[t]]:t})}),h(n.prototype,a.toStringTag,s(\"c\",\"Array Iterator\"))},function(t,e,i){var c=t(294),_=t(321),p=t(327),d=t(331),f=Array.isArray,v=Function.prototype.call,m=Array.prototype.some;e.exports=function(t,e){var i,n,r,o,s,a,l,h,u=arguments[2];if(f(t)||c(t)?i=\"array\":p(t)?i=\"string\":t=d(t),_(e),r=function(){o=!0},\"array\"!==i)if(\"string\"!==i)for(n=t.next();!n.done;){if(v.call(e,u,n.value,r),o)return;n=t.next()}else for(a=t.length,s=0;s<a&&(l=t[s],s+1<a&&55296<=(h=l.charCodeAt(0))&&h<=56319&&(l+=t[++s]),v.call(e,u,l,r),!o);++s);else m.call(t,function(t){return v.call(e,u,t,r),o})}},function(t,e,i){var n=t(294),r=t(327),o=t(329),s=t(334),a=t(335),l=t(337).iterator;e.exports=function(t){return\"function\"==typeof a(t)[l]?t[l]():n(t)?new o(t):r(t)?new s(t):new o(t)}},function(t,e,i){var n,r=t(290),o=t(304),s=t(321),a=t(323),l=t(289),h=t(288),u=t(337),c=Object.defineProperty,_=Object.defineProperties;e.exports=n=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");_(this,{__list__:l(\"w\",a(t)),__context__:l(\"w\",e),__nextIndex__:l(\"w\",0)}),e&&(s(e.on),e.on(\"_add\",this._onAdd),e.on(\"_delete\",this._onDelete),e.on(\"_clear\",this._onClear))},delete n.prototype.constructor,_(n.prototype,o({_next:l(function(){var t;if(this.__list__)return this.__redo__&&void 0!==(t=this.__redo__.shift())?t:this.__nextIndex__<this.__list__.length?this.__nextIndex__++:void this._unBind()}),next:l(function(){return this._createResult(this._next())}),_createResult:l(function(t){return void 0===t?{done:!0,value:void 0}:{done:!1,value:this._resolve(t)}}),_resolve:l(function(t){return this.__list__[t]}),_unBind:l(function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off(\"_add\",this._onAdd),this.__context__.off(\"_delete\",this._onDelete),this.__context__.off(\"_clear\",this._onClear),this.__context__=null)}),toString:l(function(){return\"[object \"+(this[u.toStringTag]||\"Object\")+\"]\"})},h({_onAdd:l(function(i){i>=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach(function(t,e){i<=t&&(this.__redo__[e]=++t)},this),this.__redo__.push(i)):c(this,\"__redo__\",l(\"c\",[i])))}),_onDelete:l(function(i){var t;i>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(t=this.__redo__.indexOf(i))&&this.__redo__.splice(t,1),this.__redo__.forEach(function(t,e){i<t&&(this.__redo__[e]=--t)},this)))}),_onClear:l(function(){this.__redo__&&r.call(this.__redo__),this.__nextIndex__=0})}))),c(n.prototype,u.iterator,l(function(){return this}))},function(t,e,i){var n=t(294),r=t(312),o=t(327),s=t(337).iterator,a=Array.isArray;e.exports=function(t){return!(!r(t)||!a(t)&&!o(t)&&!n(t)&&\"function\"!=typeof t[s])}},function(t,e,i){var n,r=t(318),o=t(289),s=t(337),a=t(332),l=Object.defineProperty;n=e.exports=function(t){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");t=String(t),a.call(this,t),l(this,\"__length__\",o(\"\",t.length))},r&&r(n,a),delete n.prototype.constructor,n.prototype=Object.create(a.prototype,{_next:o(function(){if(this.__list__)return this.__nextIndex__<this.__length__?this.__nextIndex__++:void this._unBind()}),_resolve:o(function(t){var e,i=this.__list__[t];return this.__nextIndex__===this.__length__?i:55296<=(e=i.charCodeAt(0))&&e<=56319?i+this.__list__[this.__nextIndex__++]:i})}),l(n.prototype,s.toStringTag,o(\"c\",\"String Iterator\"))},function(t,e,i){var n=t(333);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not iterable\");return t}},function(L,t,e){\n",
360
+       "      /*!\n",
361
+       "           * @overview es6-promise - a tiny implementation of Promises/A+.\n",
362
+       "           * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)\n",
363
+       "           * @license   Licensed under MIT license\n",
364
+       "           *            See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE\n",
365
+       "           * @version   v4.2.4+314e4831\n",
366
+       "           */var i,n;i=this,n=function(){\"use strict\";function h(t){return\"function\"==typeof t}var i=Array.isArray?Array.isArray:function(t){return\"[object Array]\"===Object.prototype.toString.call(t)},n=0,e=void 0,r=void 0,a=function(t,e){_[n]=t,_[n+1]=e,2===(n+=2)&&(r?r(p):g())},t=\"undefined\"!=typeof window?window:void 0,o=t||{},s=o.MutationObserver||o.WebKitMutationObserver,l=\"undefined\"==typeof self&&\"undefined\"!=typeof process&&\"[object process]\"==={}.toString.call(process),u=\"undefined\"!=typeof Uint8ClampedArray&&\"undefined\"!=typeof importScripts&&\"undefined\"!=typeof MessageChannel;function c(){var t=setTimeout;return function(){return t(p,1)}}var _=new Array(1e3);function p(){for(var t=0;t<n;t+=2){var e=_[t],i=_[t+1];e(i),_[t]=void 0,_[t+1]=void 0}n=0}var d,f,v,m,g=void 0;function y(t,e){var i=this,n=new this.constructor(w);void 0===n[x]&&I(n);var r=i._state;if(r){var o=arguments[r-1];a(function(){return F(r,n,o,i._result)})}else j(i,n,t,e);return n}function b(t){if(t&&\"object\"==typeof t&&t.constructor===this)return t;var e=new this(w);return M(e,t),e}l?g=function(){return process.nextTick(p)}:s?(f=0,v=new s(p),m=document.createTextNode(\"\"),v.observe(m,{characterData:!0}),g=function(){m.data=f=++f%2}):u?((d=new MessageChannel).port1.onmessage=p,g=function(){return d.port2.postMessage(0)}):g=void 0===t&&\"function\"==typeof L?function(){try{var t=Function(\"return this\")().require(\"vertx\");return void 0!==(e=t.runOnLoop||t.runOnContext)?function(){e(p)}:c()}catch(t){return c()}}():c();var x=Math.random().toString(36).substring(2);function w(){}var k=void 0,S=1,C=2,T={error:null};function A(t){try{return t.then}catch(t){return T.error=t,T}}function E(t,e,i){var n,r,o,s;e.constructor===t.constructor&&i===y&&e.constructor.resolve===b?(o=t,(s=e)._state===S?z(o,s._result):s._state===C?P(o,s._result):j(s,void 0,function(t){return M(o,t)},function(t){return P(o,t)})):i===T?(P(t,T.error),T.error=null):void 0===i?z(t,e):h(i)?(n=e,r=i,a(function(e){var i=!1,t=function(t,e,i,n){try{t.call(e,i,n)}catch(t){return t}}(r,n,function(t){i||(i=!0,n!==t?M(e,t):z(e,t))},function(t){i||(i=!0,P(e,t))},e._label);!i&&t&&(i=!0,P(e,t))},t)):z(t,e)}function M(t,e){var i,n;t===e?P(t,new TypeError(\"You cannot resolve a promise with itself\")):(n=typeof(i=e),null===i||\"object\"!==n&&\"function\"!==n?z(t,e):E(t,e,A(e)))}function O(t){t._onerror&&t._onerror(t._result),N(t)}function z(t,e){t._state===k&&(t._result=e,t._state=S,0!==t._subscribers.length&&a(N,t))}function P(t,e){t._state===k&&(t._state=C,t._result=e,a(O,t))}function j(t,e,i,n){var r=t._subscribers,o=r.length;t._onerror=null,r[o]=e,r[o+S]=i,r[o+C]=n,0===o&&t._state&&a(N,t)}function N(t){var e=t._subscribers,i=t._state;if(0!==e.length){for(var n=void 0,r=void 0,o=t._result,s=0;s<e.length;s+=3)n=e[s],r=e[s+i],n?F(i,n,r,o):r(o);t._subscribers.length=0}}function F(t,e,i,n){var r=h(i),o=void 0,s=void 0,a=void 0,l=void 0;if(r){if((o=function(t,e){try{return t(e)}catch(t){return T.error=t,T}}(i,n))===T?(l=!0,s=o.error,o.error=null):a=!0,e===o)return void P(e,new TypeError(\"A promises callback cannot return that same promise.\"))}else o=n,a=!0;e._state!==k||(r&&a?M(e,o):l?P(e,s):t===S?z(e,o):t===C&&P(e,o))}var D=0;function I(t){t[x]=D++,t._state=void 0,t._result=void 0,t._subscribers=[]}var R=function(){function t(t,e){this._instanceConstructor=t,this.promise=new t(w),this.promise[x]||I(this.promise),i(e)?(this.length=e.length,this._remaining=e.length,this._result=new Array(this.length),0===this.length?z(this.promise,this._result):(this.length=this.length||0,this._enumerate(e),0===this._remaining&&z(this.promise,this._result))):P(this.promise,new Error(\"Array Methods must be provided an Array\"))}return t.prototype._enumerate=function(t){for(var e=0;this._state===k&&e<t.length;e++)this._eachEntry(t[e],e)},t.prototype._eachEntry=function(e,t){var i=this._instanceConstructor,n=i.resolve;if(n===b){var r=A(e);if(r===y&&e._state!==k)this._settledAt(e._state,t,e._result);else if(\"function\"!=typeof r)this._remaining--,this._result[t]=e;else if(i===B){var o=new i(w);E(o,e,r),this._willSettleAt(o,t)}else this._willSettleAt(new i(function(t){return t(e)}),t)}else this._willSettleAt(n(e),t)},t.prototype._settledAt=function(t,e,i){var n=this.promise;n._state===k&&(this._remaining--,t===C?P(n,i):this._result[e]=i),0===this._remaining&&z(n,this._result)},t.prototype._willSettleAt=function(t,e){var i=this;j(t,void 0,function(t){return i._settledAt(S,e,t)},function(t){return i._settledAt(C,e,t)})},t}(),B=function(){function e(t){this[x]=D++,this._result=this._state=void 0,this._subscribers=[],w!==t&&(\"function\"!=typeof t&&function(){throw new TypeError(\"You must pass a resolver function as the first argument to the promise constructor\")}(),this instanceof e?function(e,t){try{t(function(t){M(e,t)},function(t){P(e,t)})}catch(t){P(e,t)}}(this,t):function(){throw new TypeError(\"Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.\")}())}return e.prototype.catch=function(t){return this.then(null,t)},e.prototype.finally=function(e){var i=this.constructor;return this.then(function(t){return i.resolve(e()).then(function(){return t})},function(t){return i.resolve(e()).then(function(){throw t})})},e}();return B.prototype.then=y,B.all=function(t){return new R(this,t).promise},B.race=function(r){var o=this;return i(r)?new o(function(t,e){for(var i=r.length,n=0;n<i;n++)o.resolve(r[n]).then(t,e)}):new o(function(t,e){return e(new TypeError(\"You must pass an array to race.\"))})},B.resolve=b,B.reject=function(t){var e=new this(w);return P(e,t),e},B._setScheduler=function(t){r=t},B._setAsap=function(t){a=t},B._asap=a,B.polyfill=function(){var t=void 0;if(\"undefined\"!=typeof global)t=global;else if(\"undefined\"!=typeof self)t=self;else try{t=Function(\"return this\")()}catch(t){throw new Error(\"polyfill failed because global object is unavailable in this environment\")}var e=t.Promise;if(e){var i=null;try{i=Object.prototype.toString.call(e.resolve())}catch(t){}if(\"[object Promise]\"===i&&!e.cast)return}t.Promise=B},B.Promise=B},\"object\"==typeof e&&void 0!==t?t.exports=n():i.ES6Promise=n()},function(t,e,i){e.exports=t(338)()?Symbol:t(340)},function(t,e,i){var n={object:!0,symbol:!0};e.exports=function(){var t;if(\"function\"!=typeof Symbol)return!1;t=Symbol(\"test symbol\");try{String(t)}catch(t){return!1}return!!n[typeof Symbol.iterator]&&!!n[typeof Symbol.toPrimitive]&&!!n[typeof Symbol.toStringTag]}},function(t,e,i){e.exports=function(t){return!!t&&(\"symbol\"==typeof t||!!t.constructor&&\"Symbol\"===t.constructor.name&&\"Symbol\"===t[t.constructor.toStringTag])}},function(t,e,i){var n,r,o,s,a=t(289),l=t(341),h=Object.create,u=Object.defineProperties,c=Object.defineProperty,_=Object.prototype,p=h(null);if(\"function\"==typeof Symbol){n=Symbol;try{String(n()),s=!0}catch(t){}}var d,f=(d=h(null),function(t){for(var e,i,n=0;d[t+(n||\"\")];)++n;return d[t+=n||\"\"]=!0,c(_,e=\"@@\"+t,a.gs(null,function(t){i||(i=!0,c(this,e,a(t)),i=!1)})),e});o=function(t){if(this instanceof o)throw new TypeError(\"Symbol is not a constructor\");return r(t)},e.exports=r=function t(e){var i;if(this instanceof t)throw new TypeError(\"Symbol is not a constructor\");return s?n(e):(i=h(o.prototype),e=void 0===e?\"\":String(e),u(i,{__description__:a(\"\",e),__name__:a(\"\",f(e))}))},u(r,{for:a(function(t){return p[t]?p[t]:p[t]=r(String(t))}),keyFor:a(function(t){var e;for(e in l(t),p)if(p[e]===t)return e}),hasInstance:a(\"\",n&&n.hasInstance||r(\"hasInstance\")),isConcatSpreadable:a(\"\",n&&n.isConcatSpreadable||r(\"isConcatSpreadable\")),iterator:a(\"\",n&&n.iterator||r(\"iterator\")),match:a(\"\",n&&n.match||r(\"match\")),replace:a(\"\",n&&n.replace||r(\"replace\")),search:a(\"\",n&&n.search||r(\"search\")),species:a(\"\",n&&n.species||r(\"species\")),split:a(\"\",n&&n.split||r(\"split\")),toPrimitive:a(\"\",n&&n.toPrimitive||r(\"toPrimitive\")),toStringTag:a(\"\",n&&n.toStringTag||r(\"toStringTag\")),unscopables:a(\"\",n&&n.unscopables||r(\"unscopables\"))}),u(o.prototype,{constructor:a(r),toString:a(\"\",function(){return this.__name__})}),u(r.prototype,{toString:a(function(){return\"Symbol (\"+l(this).__description__+\")\"}),valueOf:a(function(){return l(this)})}),c(r.prototype,r.toPrimitive,a(\"\",function(){var t=l(this);return\"symbol\"==typeof t?t:t.toString()})),c(r.prototype,r.toStringTag,a(\"c\",\"Symbol\")),c(o.prototype,r.toStringTag,a(\"c\",r.prototype[r.toStringTag])),c(o.prototype,r.toPrimitive,a(\"c\",r.prototype[r.toPrimitive]))},function(t,e,i){var n=t(339);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not a symbol\");return t}},function(t,e,i){t(343)()||Object.defineProperty(t(297),\"WeakMap\",{value:t(345),configurable:!0,enumerable:!1,writable:!0})},function(t,e,i){e.exports=function(){var t,e;if(\"function\"!=typeof WeakMap)return!1;try{t=new WeakMap([[e={},\"one\"],[{},\"two\"],[{},\"three\"]])}catch(t){return!1}return\"[object WeakMap]\"===String(t)&&\"function\"==typeof t.set&&t.set({},1)===t&&\"function\"==typeof t.delete&&\"function\"==typeof t.has&&\"one\"===t.get(e)}},function(t,e,i){e.exports=\"function\"==typeof WeakMap&&\"[object WeakMap]\"===Object.prototype.toString.call(new WeakMap)},function(t,e,i){var n,r=t(318),o=t(322),s=t(323),a=t(328),l=t(289),h=t(331),u=t(330),c=t(337).toStringTag,_=t(344),p=Array.isArray,d=Object.defineProperty,f=Object.prototype.hasOwnProperty,v=Object.getPrototypeOf;e.exports=n=function(){var e,t=arguments[0];if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");return e=_&&r&&WeakMap!==n?r(new WeakMap,v(this)):this,null!=t&&(p(t)||(t=h(t))),d(e,\"__weakMapData__\",l(\"c\",\"$weakMap$\"+a())),t&&u(t,function(t){s(t),e.set(t[0],t[1])}),e},_&&(r&&r(n,WeakMap),n.prototype=Object.create(WeakMap.prototype,{constructor:l(n)})),Object.defineProperties(n.prototype,{delete:l(function(t){return!!f.call(o(t),this.__weakMapData__)&&(delete t[this.__weakMapData__],!0)}),get:l(function(t){if(f.call(o(t),this.__weakMapData__))return t[this.__weakMapData__]}),has:l(function(t){return f.call(o(t),this.__weakMapData__)}),set:l(function(t,e){return d(o(t),this.__weakMapData__,l(\"c\",e)),this}),toString:l(function(){return\"[object WeakMap]\"})}),d(n.prototype,c,l(\"c\",\"WeakMap\"))},function(t,e,i){var n,r;n=this,r=function(){\"use strict\";var l=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],h=function(t,e,i,n){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(+e||16,2),65535);var r=t,o=r;for(this._levelBounds=[4*r];r=Math.ceil(r/this.nodeSize),o+=r,this._levelBounds.push(4*o),1!==r;);this.ArrayType=i||Float64Array,this.IndexArrayType=o<16384?Uint16Array:Uint32Array;var s=l.indexOf(this.ArrayType),a=4*o*this.ArrayType.BYTES_PER_ELEMENT;if(s<0)throw new Error(\"Unexpected typed array class: \"+i+\".\");n&&n instanceof ArrayBuffer?(this.data=n,this._boxes=new this.ArrayType(this.data,8,4*o),this._indices=new this.IndexArrayType(this.data,8+a,o),this._pos=4*o,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+a+o*this.IndexArrayType.BYTES_PER_ELEMENT),this._boxes=new this.ArrayType(this.data,8,4*o),this._indices=new this.IndexArrayType(this.data,8+a,o),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+s]),new Uint16Array(this.data,2,1)[0]=e,new Uint32Array(this.data,4,1)[0]=t)};function C(t,e,i,n,r){var o=t[n];t[n]=t[r],t[r]=o;var s=4*n,a=4*r,l=e[s],h=e[s+1],u=e[s+2],c=e[s+3];e[s]=e[a],e[s+1]=e[a+1],e[s+2]=e[a+2],e[s+3]=e[a+3],e[a]=l,e[a+1]=h,e[a+2]=u,e[a+3]=c;var _=i[n];i[n]=i[r],i[r]=_}function T(t,e){var i=t^e,n=65535^i,r=65535^(t|e),o=t&(65535^e),s=i|n>>1,a=i>>1^i,l=r>>1^n&o>>1^r,h=i&r>>1^o>>1^o;a=(i=s)&(n=a)>>2^n&(i^n)>>2,l^=i&(r=l)>>2^n&(o=h)>>2,h^=n&r>>2^(i^n)&o>>2,a=(i=s=i&i>>2^n&n>>2)&(n=a)>>4^n&(i^n)>>4,l^=i&(r=l)>>4^n&(o=h)>>4,h^=n&r>>4^(i^n)&o>>4,l^=(i=s=i&i>>4^n&n>>4)&(r=l)>>8^(n=a)&(o=h)>>8;var u=t^e,c=(n=(h^=n&r>>8^(i^n)&o>>8)^h>>1)|65535^(u|(i=l^l>>1));return((c=1431655765&((c=858993459&((c=252645135&((c=16711935&(c|c<<8))|c<<4))|c<<2))|c<<1))<<1|(u=1431655765&((u=858993459&((u=252645135&((u=16711935&(u|u<<8))|u<<4))|u<<2))|u<<1)))>>>0}return h.from=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");var e=new Uint8Array(t,0,2),i=e[0],n=e[1];if(251!==i)throw new Error(\"Data does not appear to be in a Flatbush format.\");if(n>>4!=3)throw new Error(\"Got v\"+(n>>4)+\" data when expected v3.\");var r=new Uint16Array(t,2,1),o=r[0],s=new Uint32Array(t,4,1),a=s[0];return new h(a,o,l[15&n],t)},h.prototype.add=function(t,e,i,n){var r=this._pos>>2;this._indices[r]=r,this._boxes[this._pos++]=t,this._boxes[this._pos++]=e,this._boxes[this._pos++]=i,this._boxes[this._pos++]=n,t<this.minX&&(this.minX=t),e<this.minY&&(this.minY=e),i>this.maxX&&(this.maxX=i),n>this.maxY&&(this.maxY=n)},h.prototype.finish=function(){var t=this;if(this._pos>>2!==this.numItems)throw new Error(\"Added \"+(this._pos>>2)+\" items when expected \"+this.numItems+\".\");for(var e=this.maxX-this.minX,i=this.maxY-this.minY,n=new Uint32Array(this.numItems),r=0;r<this.numItems;r++){var o=4*r,s=t._boxes[o++],a=t._boxes[o++],l=t._boxes[o++],h=t._boxes[o++],u=Math.floor(65535*((s+l)/2-t.minX)/e),c=Math.floor(65535*((a+h)/2-t.minY)/i);n[r]=T(u,c)}!function t(e,i,n,r,o){if(!(o<=r)){for(var s=e[r+o>>1],a=r-1,l=o+1;;){for(;e[++a]<s;);for(;e[--l]>s;);if(l<=a)break;C(e,i,n,a,l)}t(e,i,n,r,l),t(e,i,n,l+1,o)}}(n,this._boxes,this._indices,0,this.numItems-1);for(var _=0,p=0;_<this._levelBounds.length-1;_++)for(var d=t._levelBounds[_];p<d;){for(var f=1/0,v=1/0,m=-1/0,g=-1/0,y=p,b=0;b<this.nodeSize&&p<d;b++){var x=t._boxes[p++],w=t._boxes[p++],k=t._boxes[p++],S=t._boxes[p++];x<f&&(f=x),w<v&&(v=w),m<k&&(m=k),g<S&&(g=S)}t._indices[t._pos>>2]=y,t._boxes[t._pos++]=f,t._boxes[t._pos++]=v,t._boxes[t._pos++]=m,t._boxes[t._pos++]=g}},h.prototype.search=function(t,e,i,n,r){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");for(var o=this._boxes.length-4,s=this._levelBounds.length-1,a=[],l=[];void 0!==o;){for(var h=Math.min(o+4*this.nodeSize,this._levelBounds[s]),u=o;u<h;u+=4){var c=this._indices[u>>2];i<this._boxes[u]||n<this._boxes[u+1]||t>this._boxes[u+2]||e>this._boxes[u+3]||(o<4*this.numItems?(void 0===r||r(c))&&l.push(c):(a.push(c),a.push(s-1)))}s=a.pop(),o=a.pop()}return l},h},\"object\"==typeof i&&void 0!==e?e.exports=r():n.Flatbush=r()},function(t,Yt,e){\n",
367
+       "      /*! Hammer.JS - v2.0.7 - 2016-04-22\n",
368
+       "           * http://hammerjs.github.io/\n",
369
+       "           *\n",
370
+       "           * Copyright (c) 2016 Jorik Tangelder;\n",
371
+       "           * Licensed under the MIT license */\n",
372
+       "      !function(o,a,t,x){\"use strict\";var s,l=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],e=a.createElement(\"div\"),i=\"function\",h=Math.round,w=Math.abs,k=Date.now;function u(t,e,i){return setTimeout(f(t,i),e)}function n(t,e,i){return!!Array.isArray(t)&&(c(t,i[e],i),!0)}function c(t,e,i){var n;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==x)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 r(n,t,e){var r=\"DEPRECATED METHOD: \"+t+\"\\n\"+e+\" AT \\n\";return function(){var t=new Error(\"get-stack-trace\"),e=t&&t.stack?t.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",i=o.console&&(o.console.warn||o.console.log);return i&&i.call(o.console,r,e),n.apply(this,arguments)}}s=\"function\"!=typeof Object.assign?function(t){if(t===x||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!==x&&null!==n)for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}return e}:Object.assign;var _=r(function(t,e,i){for(var n=Object.keys(e),r=0;r<n.length;)(!i||i&&t[n[r]]===x)&&(t[n[r]]=e[n[r]]),r++;return t},\"extend\",\"Use `assign`.\"),p=r(function(t,e){return _(t,e,!0)},\"merge\",\"Use `assign`.\");function d(t,e,i){var n,r=e.prototype;(n=t.prototype=Object.create(r)).constructor=t,n._super=r,i&&s(n,i)}function f(t,e){return function(){return t.apply(e,arguments)}}function v(t,e){return typeof t==i?t.apply(e&&e[0]||x,e):t}function m(t,e){return t===x?e:t}function g(e,t,i){c(C(t),function(t){e.addEventListener(t,i,!1)})}function y(e,t,i){c(C(t),function(t){e.removeEventListener(t,i,!1)})}function S(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function b(t,e){return-1<t.indexOf(e)}function C(t){return t.trim().split(/\\s+/g)}function T(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 A(t){return Array.prototype.slice.call(t,0)}function E(t,i,e){for(var n=[],r=[],o=0;o<t.length;){var s=i?t[o][i]:t[o];T(r,s)<0&&n.push(t[o]),r[o]=s,o++}return e&&(n=i?n.sort(function(t,e){return t[i]>e[i]}):n.sort()),n}function M(t,e){for(var i,n,r=e[0].toUpperCase()+e.slice(1),o=0;o<l.length;){if(i=l[o],(n=i?i+r:e)in t)return n;o++}return x}var O=1;function z(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||o}var P=\"ontouchstart\"in o,j=M(o,\"PointerEvent\")!==x,N=P&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),F=\"touch\",D=25,I=1,R=4,B=8,L=1,V=2,G=4,U=8,q=16,Y=V|G,X=U|q,H=Y|X,W=[\"x\",\"y\"],J=[\"clientX\",\"clientY\"];function Q(e,t){var i=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){v(e.options.enable,[e])&&i.handler(t)},this.init()}function $(t,e,i){var n=i.pointers.length,r=i.changedPointers.length,o=e&I&&n-r==0,s=e&(R|B)&&n-r==0;i.isFirst=!!o,i.isFinal=!!s,o&&(t.session={}),i.eventType=e,function(t,e){var i=t.session,n=e.pointers,r=n.length;i.firstInput||(i.firstInput=K(e)),1<r&&!i.firstMultiple?i.firstMultiple=K(e):1===r&&(i.firstMultiple=!1);var o,s,a,l,h,u,c=i.firstInput,_=i.firstMultiple,p=_?_.center:c.center,d=e.center=Z(n);e.timeStamp=k(),e.deltaTime=e.timeStamp-c.timeStamp,e.angle=nt(p,d),e.distance=it(p,d),o=i,a=(s=e).center,l=o.offsetDelta||{},h=o.prevDelta||{},u=o.prevInput||{},s.eventType!==I&&u.eventType!==R||(h=o.prevDelta={x:u.deltaX||0,y:u.deltaY||0},l=o.offsetDelta={x:a.x,y:a.y}),s.deltaX=h.x+(a.x-l.x),s.deltaY=h.y+(a.y-l.y),e.offsetDirection=et(e.deltaX,e.deltaY);var f,v,m,g,y=tt(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=y.x,e.overallVelocityY=y.y,e.overallVelocity=w(y.x)>w(y.y)?y.x:y.y,e.scale=_?(m=_.pointers,it((g=n)[0],g[1],J)/it(m[0],m[1],J)):1,e.rotation=_?(f=_.pointers,nt((v=n)[1],v[0],J)+nt(f[1],f[0],J)):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,r,o,s=t.lastInterval||e,a=e.timeStamp-s.timeStamp;if(e.eventType!=B&&(D<a||s.velocity===x)){var l=e.deltaX-s.deltaX,h=e.deltaY-s.deltaY,u=tt(a,l,h);n=u.x,r=u.y,i=w(u.x)>w(u.y)?u.x:u.y,o=et(l,h),t.lastInterval=e}else i=s.velocity,n=s.velocityX,r=s.velocityY,o=s.direction;e.velocity=i,e.velocityX=n,e.velocityY=r,e.direction=o}(i,e);var b=t.element;S(e.srcEvent.target,b)&&(b=e.srcEvent.target),e.target=b}(t,i),t.emit(\"hammer.input\",i),t.recognize(i),t.session.prevInput=i}function K(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:k(),pointers:e,center:Z(e),deltaX:t.deltaX,deltaY:t.deltaY}}function Z(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 tt(t,e,i){return{x:e/t||0,y:i/t||0}}function et(t,e){return t===e?L:w(t)>=w(e)?t<0?V:G:e<0?U:q}function it(t,e,i){i||(i=W);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return Math.sqrt(n*n+r*r)}function nt(t,e,i){i||(i=W);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&&g(this.element,this.evEl,this.domHandler),this.evTarget&&g(this.target,this.evTarget,this.domHandler),this.evWin&&g(z(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&y(this.element,this.evEl,this.domHandler),this.evTarget&&y(this.target,this.evTarget,this.domHandler),this.evWin&&y(z(this.element),this.evWin,this.domHandler)}};var rt={mousedown:I,mousemove:2,mouseup:R},ot=\"mousedown\",st=\"mousemove mouseup\";function at(){this.evEl=ot,this.evWin=st,this.pressed=!1,Q.apply(this,arguments)}d(at,Q,{handler:function(t){var e=rt[t.type];e&I&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=R),this.pressed&&(e&R&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:\"mouse\",srcEvent:t}))}});var lt={pointerdown:I,pointermove:2,pointerup:R,pointercancel:B,pointerout:B},ht={2:F,3:\"pen\",4:\"mouse\",5:\"kinect\"},ut=\"pointerdown\",ct=\"pointermove pointerup pointercancel\";function _t(){this.evEl=ut,this.evWin=ct,Q.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}o.MSPointerEvent&&!o.PointerEvent&&(ut=\"MSPointerDown\",ct=\"MSPointerMove MSPointerUp MSPointerCancel\"),d(_t,Q,{handler:function(t){var e=this.store,i=!1,n=t.type.toLowerCase().replace(\"ms\",\"\"),r=lt[n],o=ht[t.pointerType]||t.pointerType,s=o==F,a=T(e,t.pointerId,\"pointerId\");r&I&&(0===t.button||s)?a<0&&(e.push(t),a=e.length-1):r&(R|B)&&(i=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:o,srcEvent:t}),i&&e.splice(a,1))}});var pt={touchstart:I,touchmove:2,touchend:R,touchcancel:B};function dt(){this.evTarget=\"touchstart\",this.evWin=\"touchstart touchmove touchend touchcancel\",this.started=!1,Q.apply(this,arguments)}d(dt,Q,{handler:function(t){var e=pt[t.type];if(e===I&&(this.started=!0),this.started){var i=function(t,e){var i=A(t.touches),n=A(t.changedTouches);return e&(R|B)&&(i=E(i.concat(n),\"identifier\",!0)),[i,n]}.call(this,t,e);e&(R|B)&&i[0].length-i[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:F,srcEvent:t})}}});var ft={touchstart:I,touchmove:2,touchend:R,touchcancel:B},vt=\"touchstart touchmove touchend touchcancel\";function mt(){this.evTarget=vt,this.targetIds={},Q.apply(this,arguments)}d(mt,Q,{handler:function(t){var e=ft[t.type],i=function(t,e){var i=A(t.touches),n=this.targetIds;if(e&(2|I)&&1===i.length)return n[i[0].identifier]=!0,[i,i];var r,o,s=A(t.changedTouches),a=[],l=this.target;if(o=i.filter(function(t){return S(t.target,l)}),e===I)for(r=0;r<o.length;)n[o[r].identifier]=!0,r++;for(r=0;r<s.length;)n[s[r].identifier]&&a.push(s[r]),e&(R|B)&&delete n[s[r].identifier],r++;return a.length?[E(o.concat(a),\"identifier\",!0),a]:void 0}.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:F,srcEvent:t})}});var gt=2500;function yt(){Q.apply(this,arguments);var t=f(this.handler,this);this.touch=new mt(this.manager,t),this.mouse=new at(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function bt(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);-1<t&&n.splice(t,1)},gt)}}d(yt,Q,{handler:function(t,e,i){var n=i.pointerType==F,r=\"mouse\"==i.pointerType;if(!(r&&i.sourceCapabilities&&i.sourceCapabilities.firesTouchEvents)){if(n)(function(t,e){t&I?(this.primaryTouch=e.changedPointers[0].identifier,bt.call(this,e)):t&(R|B)&&bt.call(this,e)}).call(this,e,i);else if(r&&function(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,n=0;n<this.lastTouches.length;n++){var r=this.lastTouches[n],o=Math.abs(e-r.x),s=Math.abs(i-r.y);if(o<=25&&s<=25)return!0}return!1}.call(this,i))return;this.callback(t,e,i)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var xt=M(e.style,\"touchAction\"),wt=xt!==x,kt=\"manipulation\",St=\"none\",Ct=\"pan-x\",Tt=\"pan-y\",At=function(){if(!wt)return!1;var e={},i=o.CSS&&o.CSS.supports;return[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach(function(t){e[t]=!i||o.CSS.supports(\"touch-action\",t)}),e}();function Et(t,e){this.manager=t,this.set(e)}Et.prototype={set:function(t){\"compute\"==t&&(t=this.compute()),wt&&this.manager.element.style&&At[t]&&(this.manager.element.style[xt]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return c(this.manager.recognizers,function(t){v(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),function(t){if(b(t,St))return St;var e=b(t,Ct),i=b(t,Tt);return e&&i?St:e||i?e?Ct:Tt:b(t,kt)?kt:\"auto\"}(e.join(\" \"))},preventDefaults:function(t){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var n=this.actions,r=b(n,St)&&!At.none,o=b(n,Tt)&&!At[Tt],s=b(n,Ct)&&!At[Ct];if(r){var a=1===t.pointers.length,l=t.distance<2,h=t.deltaTime<250;if(a&&l&&h)return}if(!s||!o)return r||o&&i&Y||s&&i&X?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var Mt=1;function Ot(t){this.options=s({},this.defaults,t||{}),this.id=O++,this.manager=null,this.options.enable=m(this.options.enable,!0),this.state=Mt,this.simultaneous={},this.requireFail=[]}function zt(t){return 16&t?\"cancel\":8&t?\"end\":4&t?\"move\":2&t?\"start\":\"\"}function Pt(t){return t==q?\"down\":t==U?\"up\":t==V?\"left\":t==G?\"right\":\"\"}function jt(t,e){var i=e.manager;return i?i.get(t):t}function Nt(){Ot.apply(this,arguments)}function Ft(){Nt.apply(this,arguments),this.pX=null,this.pY=null}function Dt(){Nt.apply(this,arguments)}function It(){Ot.apply(this,arguments),this._timer=null,this._input=null}function Rt(){Nt.apply(this,arguments)}function Bt(){Nt.apply(this,arguments)}function Lt(){Ot.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Vt(t,e){return(e=e||{}).recognizers=m(e.recognizers,Vt.defaults.preset),new Gt(t,e)}function Gt(t,e){var i;this.options=s({},Vt.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||(j?_t:N?mt:P?yt:at))(i,$),this.touchAction=new Et(this,this.options.touchAction),Ut(this,!0),c(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 Ut(i,n){var r,o=i.element;o.style&&(c(i.options.cssProps,function(t,e){r=M(o.style,e),n?(i.oldCssProps[r]=o.style[r],o.style[r]=t):o.style[r]=i.oldCssProps[r]||\"\"}),n||(i.oldCssProps={}))}Ot.prototype={defaults:{},set:function(t){return s(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(n(t,\"recognizeWith\",this))return this;var e=this.simultaneous;return t=jt(t,this),e[t.id]||(e[t.id]=t).recognizeWith(this),this},dropRecognizeWith:function(t){return n(t,\"dropRecognizeWith\",this)||(t=jt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(n(t,\"requireFailure\",this))return this;var e=this.requireFail;return t=jt(t,this),-1===T(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(n(t,\"dropRequireFailure\",this))return this;t=jt(t,this);var e=T(this.requireFail,t);return-1<e&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return 0<this.requireFail.length},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(e){var i=this,t=this.state;function n(t){i.manager.emit(t,e)}t<8&&n(i.options.event+zt(t)),n(i.options.event),e.additionalEvent&&n(e.additionalEvent),8<=t&&n(i.options.event+zt(t))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(this.requireFail[t].state&(32|Mt)))return!1;t++}return!0},recognize:function(t){var e=s({},t);if(!v(this.options.enable,[this,e]))return this.reset(),void(this.state=32);56&this.state&&(this.state=Mt),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},d(Nt,Ot,{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&&(i&B||!r)?16|e:n||r?i&R?8|e:2&e?4|e:2:32}}),d(Ft,Nt,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:H},getTouchAction:function(){var t=this.options.direction,e=[];return t&Y&&e.push(Tt),t&X&&e.push(Ct),e},directionTest:function(t){var e=this.options,i=!0,n=t.distance,r=t.direction,o=t.deltaX,s=t.deltaY;return r&e.direction||(e.direction&Y?(r=0===o?L:o<0?V:G,i=o!=this.pX,n=Math.abs(t.deltaX)):(r=0===s?L:s<0?U:q,i=s!=this.pY,n=Math.abs(t.deltaY))),t.direction=r,i&&n>e.threshold&&r&e.direction},attrTest:function(t){return Nt.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=Pt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),d(Dt,Nt,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[St]},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)}}),d(It,Ot,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[\"auto\"]},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||t.eventType&(R|B)&&!r)this.reset();else if(t.eventType&I)this.reset(),this._timer=u(function(){this.state=8,this.tryEmit()},e.time,this);else if(t.eventType&R)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&t.eventType&R?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=k(),this.manager.emit(this.options.event,this._input)))}}),d(Rt,Nt,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[St]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),d(Bt,Nt,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:Y|X,pointers:1},getTouchAction:function(){return Ft.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Y|X)?e=t.overallVelocity:i&Y?e=t.overallVelocityX:i&X&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&w(e)>this.options.velocity&&t.eventType&R},emit:function(t){var e=Pt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),d(Lt,Ot,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[kt]},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(),t.eventType&I&&0===this.count)return this.failTimeout();if(n&&r&&i){if(t.eventType!=R)return this.failTimeout();var o=!this.pTime||t.timeStamp-this.pTime<e.interval,s=!this.pCenter||it(this.pCenter,t.center)<e.posThreshold;this.pTime=t.timeStamp,this.pCenter=t.center,s&&o?this.count+=1:this.count=1,this._input=t;var a=this.count%e.taps;if(0===a)return this.hasRequireFailures()?(this._timer=u(function(){this.state=8,this.tryEmit()},e.interval,this),2):8}return 32},failTimeout:function(){return this._timer=u(function(){this.state=32},this.options.interval,this),32},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Vt.VERSION=\"2.0.7\",Vt.defaults={domEvents:!1,touchAction:\"compute\",enable:!0,inputTarget:null,inputClass:null,preset:[[Rt,{enable:!1}],[Dt,{enable:!1},[\"rotate\"]],[Bt,{direction:Y}],[Ft,{direction:Y},[\"swipe\"]],[Lt],[Lt,{event:\"doubletap\",taps:2},[\"tap\"]],[It]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}},Gt.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 o=0;o<n.length;)i=n[o],2===e.stopped||r&&i!=r&&!i.canRecognizeWith(r)?i.reset():i.recognize(t),!r&&14&i.state&&(r=e.curRecognizer=i),o++}},get:function(t){if(t instanceof Ot)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(n(t,\"add\",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),(t.manager=this).touchAction.update(),t},remove:function(t){if(n(t,\"remove\",this))return this;if(t=this.get(t)){var e=this.recognizers,i=T(e,t);-1!==i&&(e.splice(i,1),this.touchAction.update())}return this},on:function(t,e){if(t!==x&&e!==x){var i=this.handlers;return c(C(t),function(t){i[t]=i[t]||[],i[t].push(e)}),this}},off:function(t,e){if(t!==x){var i=this.handlers;return c(C(t),function(t){e?i[t]&&i[t].splice(T(i[t],e),1):delete i[t]}),this}},emit:function(t,e){var i,n,r;this.options.domEvents&&(i=t,n=e,(r=a.createEvent(\"Event\")).initEvent(i,!0,!0),(r.gesture=n).target.dispatchEvent(r));var o=this.handlers[t]&&this.handlers[t].slice();if(o&&o.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var s=0;s<o.length;)o[s](e),s++}},destroy:function(){this.element&&Ut(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},s(Vt,{INPUT_START:I,INPUT_MOVE:2,INPUT_END:R,INPUT_CANCEL:B,STATE_POSSIBLE:Mt,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:32,DIRECTION_NONE:L,DIRECTION_LEFT:V,DIRECTION_RIGHT:G,DIRECTION_UP:U,DIRECTION_DOWN:q,DIRECTION_HORIZONTAL:Y,DIRECTION_VERTICAL:X,DIRECTION_ALL:H,Manager:Gt,Input:Q,TouchAction:Et,TouchInput:mt,MouseInput:at,PointerEventInput:_t,TouchMouseInput:yt,SingleTouchInput:dt,Recognizer:Ot,AttrRecognizer:Nt,Tap:Lt,Pan:Ft,Swipe:Bt,Pinch:Dt,Rotate:Rt,Press:It,on:g,off:y,each:c,merge:p,extend:_,assign:s,inherit:d,bindFn:f,prefixed:M});var qt=void 0!==o?o:\"undefined\"!=typeof self?self:{};qt.Hammer=Vt,void 0!==Yt&&Yt.exports?Yt.exports=Vt:o.Hammer=Vt}(window,document)},function(t,e,i){var n,r,o=t(353);(r=n=i.Operator||(i.Operator={}))[r.Le=0]=\"Le\",r[r.Ge=1]=\"Ge\",r[r.Eq=2]=\"Eq\";var s=function(){function t(t,e,i){void 0===i&&(i=o.Strength.required),this._id=a++,this._operator=e,this._expression=t,this._strength=o.Strength.clip(i)}return t.Compare=function(t,e){return t.id-e.id},t.prototype.toString=function(){var t=this;return this._expression+\" \"+function(){switch(t._operator){case n.Le:return\"<=\";case n.Ge:return\">=\";case n.Eq:return\"==\"}}()+\" 0\"},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"expression\",{get:function(){return this._expression},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"op\",{get:function(){return this._operator},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"strength\",{get:function(){return this._strength},enumerable:!0,configurable:!0}),t}();i.Constraint=s;var a=0},function(t,e,i){var h=t(357),u=t(360),c=t(351),n=function(){function t(){var t=function(t){for(var e=0,i=function(){return 0},n=c.createMap(u.Variable.Compare),r=0,o=t.length;r<o;++r){var s=t[r];if(\"number\"==typeof s)e+=s;else if(s instanceof u.Variable)n.setDefault(s,i).second+=1;else{if(!(s instanceof Array))throw new Error(\"invalid Expression argument: \"+JSON.stringify(s));if(2!==s.length)throw new Error(\"array must have length 2\");var a=s[0],l=s[1];if(\"number\"!=typeof a)throw new Error(\"array item 0 must be a number\");if(!(l instanceof u.Variable))throw new Error(\"array item 1 must be a variable\");n.setDefault(l,i).second+=a}}return{terms:n,constant:e}}(arguments);this._terms=t.terms,this._constant=t.constant}return t.prototype.toString=function(){var e=[];h.forEach(this._terms,function(t){e.push([t.first,t.second])});for(var t=!0,i=\"\",n=0,r=e;n<r.length;n++){var o=r[n],s=o[0],a=o[1];t?(t=!1,i+=1==a?\"\"+s:-1==a?\"-\"+s:a+\"*\"+s):i+=1==a?\" + \"+s:-1==a?\" - \"+s:0<=a?\" + \"+a+s:\" - \"+-a+s}var l=this.constant;return l<0?i+=\" - \"+-l:0<l&&(i+=\" + \"+l),i},Object.defineProperty(t.prototype,\"terms\",{get:function(){return this._terms},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"constant\",{get:function(){return this._constant},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"value\",{get:function(){var e=this._constant;return h.forEach(this._terms,function(t){e+=t.first.value*t.second}),e},enumerable:!0,configurable:!0}),t}();i.Expression=n},function(t,e,i){\n",
373
+       "      /*-----------------------------------------------------------------------------\n",
374
+       "          | Copyright (c) 2014, Nucleic Development Team.\n",
375
+       "          |\n",
376
+       "          | Distributed under the terms of the Modified BSD License.\n",
377
+       "          |\n",
378
+       "          | The full license is in the file COPYING.txt, distributed with this software.\n",
379
+       "          |----------------------------------------------------------------------------*/\n",
380
+       "      function n(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}n(t(360)),n(t(349)),n(t(348)),n(t(353)),n(t(352))},function(t,e,i){var n=t(357);i.createMap=function(t){return new n.AssociativeArray(t)}},function(t,e,i){var g,n,r=t(360),a=t(349),y=t(348),b=t(353),o=t(351),s=t(357),l=function(){function t(){this._cnMap=o.createMap(y.Constraint.Compare),this._rowMap=o.createMap(h.Compare),this._varMap=o.createMap(r.Variable.Compare),this._editMap=o.createMap(r.Variable.Compare),this._infeasibleRows=[],this._objective=new k,this._artificial=null,this._idTick=0}return t.prototype.addConstraint=function(t){var e=this._cnMap.find(t);if(void 0!==e)throw new Error(\"duplicate constraint\");var i=this._createRow(t),n=i.row,r=i.tag,o=this._chooseSubject(n,r);if(o.type()===g.Invalid&&n.allDummies()){if(!x(n.constant())){for(var s=[],a=0,l=t.expression.terms._array;a<l.length;a++){var h=l[a];s.push(h.first.name)}var u=[\"LE\",\"GE\",\"EQ\"][t.op];throw new Error(\"unsatisfiable constraint [\"+s.join(\",\")+\"] operator: \"+u)}o=r.marker}if(o.type()===g.Invalid){if(!this._addWithArtificialVariable(n))throw new Error(\"unsatisfiable constraint\")}else n.solveFor(o),this._substitute(o,n),this._rowMap.insert(o,n);this._cnMap.insert(t,r),this._optimize(this._objective)},t.prototype.removeConstraint=function(t,e){void 0===e&&(e=!1);var i=this._cnMap.erase(t);if(void 0===i){if(e)return;throw new Error(\"unknown constraint\")}this._removeConstraintEffects(t,i.second);var n=i.second.marker,r=this._rowMap.erase(n);if(void 0===r){var o=this._getMarkerLeavingSymbol(n);if(o.type()===g.Invalid)throw new Error(\"failed to find leaving row\");(r=this._rowMap.erase(o)).second.solveForEx(o,n),this._substitute(n,r.second)}this._optimize(this._objective)},t.prototype.hasConstraint=function(t){return this._cnMap.contains(t)},t.prototype.addEditVariable=function(t,e){var i=this._editMap.find(t);if(void 0!==i)throw new Error(\"duplicate edit variable: \"+t.name);if((e=b.Strength.clip(e))===b.Strength.required)throw new Error(\"bad required strength\");var n=new a.Expression(t),r=new y.Constraint(n,y.Operator.Eq,e);this.addConstraint(r);var o=this._cnMap.find(r).second,s={tag:o,constraint:r,constant:0};this._editMap.insert(t,s)},t.prototype.removeEditVariable=function(t,e){void 0===e&&(e=!1);var i=this._editMap.erase(t);if(void 0===i){if(e)return;throw new Error(\"unknown edit variable: \"+t.name)}this.removeConstraint(i.second.constraint,e)},t.prototype.hasEditVariable=function(t){return this._editMap.contains(t)},t.prototype.suggestValue=function(t,e){var i=this._editMap.find(t);if(void 0===i)throw new Error(\"unknown edit variable: \"+t.name);var n=this._rowMap,r=i.second,o=e-r.constant;r.constant=e;var s=r.tag.marker,a=n.find(s);if(void 0!==a)return a.second.add(-o)<0&&this._infeasibleRows.push(s),void this._dualOptimize();var l=r.tag.other;if(void 0!==(a=n.find(l)))return a.second.add(o)<0&&this._infeasibleRows.push(l),void this._dualOptimize();for(var h=0,u=n.size();h<u;++h){var c=n.itemAt(h),_=c.second,p=_.coefficientFor(s);0!==p&&_.add(o*p)<0&&c.first.type()!==g.External&&this._infeasibleRows.push(c.first)}this._dualOptimize()},t.prototype.updateVariables=function(){for(var t=this._varMap,e=this._rowMap,i=0,n=t.size();i<n;++i){var r=t.itemAt(i),o=e.find(r.second),s=0;void 0!==o&&-0===(s=o.second.constant())&&(s=0),r.first.setValue(s)}},t.prototype.getConstraints=function(){var e=[];return s.forEach(this._cnMap,function(t){e.push(t.first)}),e},Object.defineProperty(t.prototype,\"numConstraints\",{get:function(){return this._cnMap.size()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"numEditVariables\",{get:function(){return this._editMap.size()},enumerable:!0,configurable:!0}),t.prototype._getVarSymbol=function(t){var e=this;return this._varMap.setDefault(t,function(){return e._makeSymbol(g.External)}).second},t.prototype._createRow=function(t){for(var e=t.expression,i=new k(e.constant),n=e.terms,r=0,o=n.size();r<o;++r){var s=n.itemAt(r);if(!x(s.second)){var a=this._getVarSymbol(s.first),l=this._rowMap.find(a);void 0!==l?i.insertRow(l.second,s.second):i.insertSymbol(a,s.second)}}var h=this._objective,u=t.strength,c={marker:w,other:w};switch(t.op){case y.Operator.Le:case y.Operator.Ge:var _=t.op===y.Operator.Le?1:-1,p=this._makeSymbol(g.Slack);if(c.marker=p,i.insertSymbol(p,_),u<b.Strength.required){var d=this._makeSymbol(g.Error);c.other=d,i.insertSymbol(d,-_),h.insertSymbol(d,u)}break;case y.Operator.Eq:if(u<b.Strength.required){var f=this._makeSymbol(g.Error),v=this._makeSymbol(g.Error);c.marker=f,c.other=v,i.insertSymbol(f,-1),i.insertSymbol(v,1),h.insertSymbol(f,u),h.insertSymbol(v,u)}else{var m=this._makeSymbol(g.Dummy);c.marker=m,i.insertSymbol(m)}}return i.constant()<0&&i.reverseSign(),{row:i,tag:c}},t.prototype._chooseSubject=function(t,e){for(var i=t.cells(),n=0,r=i.size();n<r;++n){var o=i.itemAt(n);if(o.first.type()===g.External)return o.first}var s=e.marker.type();return(s===g.Slack||s===g.Error)&&t.coefficientFor(e.marker)<0?e.marker:((s=e.other.type())===g.Slack||s===g.Error)&&t.coefficientFor(e.other)<0?e.other:w},t.prototype._addWithArtificialVariable=function(t){var e=this._makeSymbol(g.Slack);this._rowMap.insert(e,t.copy()),this._artificial=t.copy(),this._optimize(this._artificial);var i=x(this._artificial.constant());this._artificial=null;var n=this._rowMap.erase(e);if(void 0!==n){var r=n.second;if(r.isConstant())return i;var o=this._anyPivotableSymbol(r);if(o.type()===g.Invalid)return!1;r.solveForEx(e,o),this._substitute(o,r),this._rowMap.insert(o,r)}for(var s=this._rowMap,a=0,l=s.size();a<l;++a)s.itemAt(a).second.removeSymbol(e);return this._objective.removeSymbol(e),i},t.prototype._substitute=function(t,e){for(var i=this._rowMap,n=0,r=i.size();n<r;++n){var o=i.itemAt(n);o.second.substitute(t,e),o.second.constant()<0&&o.first.type()!==g.External&&this._infeasibleRows.push(o.first)}this._objective.substitute(t,e),this._artificial&&this._artificial.substitute(t,e)},t.prototype._optimize=function(t){for(;;){var e=this._getEnteringSymbol(t);if(e.type()===g.Invalid)return;var i=this._getLeavingSymbol(e);if(i.type()===g.Invalid)throw new Error(\"the objective is unbounded\");var n=this._rowMap.erase(i).second;n.solveForEx(i,e),this._substitute(e,n),this._rowMap.insert(e,n)}},t.prototype._dualOptimize=function(){for(var t=this._rowMap,e=this._infeasibleRows;0!==e.length;){var i=e.pop(),n=t.find(i);if(void 0!==n&&n.second.constant()<0){var r=this._getDualEnteringSymbol(n.second);if(r.type()===g.Invalid)throw new Error(\"dual optimize failed\");var o=n.second;t.erase(i),o.solveForEx(i,r),this._substitute(r,o),t.insert(r,o)}}},t.prototype._getEnteringSymbol=function(t){for(var e=t.cells(),i=0,n=e.size();i<n;++i){var r=e.itemAt(i),o=r.first;if(r.second<0&&o.type()!==g.Dummy)return o}return w},t.prototype._getDualEnteringSymbol=function(t){for(var e=Number.MAX_VALUE,i=w,n=t.cells(),r=0,o=n.size();r<o;++r){var s=n.itemAt(r),a=s.first,l=s.second;if(0<l&&a.type()!==g.Dummy){var h=this._objective.coefficientFor(a),u=h/l;u<e&&(e=u,i=a)}}return i},t.prototype._getLeavingSymbol=function(t){for(var e=Number.MAX_VALUE,i=w,n=this._rowMap,r=0,o=n.size();r<o;++r){var s=n.itemAt(r),a=s.first;if(a.type()!==g.External){var l=s.second,h=l.coefficientFor(t);if(h<0){var u=-l.constant()/h;u<e&&(e=u,i=a)}}}return i},t.prototype._getMarkerLeavingSymbol=function(t){for(var e=Number.MAX_VALUE,i=e,n=e,r=w,o=r,s=r,a=r,l=this._rowMap,h=0,u=l.size();h<u;++h){var c=l.itemAt(h),_=c.second,p=_.coefficientFor(t);if(0!==p){var d=c.first;if(d.type()===g.External)a=d;else if(p<0){var f=-_.constant()/p;f<i&&(i=f,o=d)}else{var f=_.constant()/p;f<n&&(n=f,s=d)}}}return o!==r?o:s!==r?s:a},t.prototype._removeConstraintEffects=function(t,e){e.marker.type()===g.Error&&this._removeMarkerEffects(e.marker,t.strength),e.other.type()===g.Error&&this._removeMarkerEffects(e.other,t.strength)},t.prototype._removeMarkerEffects=function(t,e){var i=this._rowMap.find(t);void 0!==i?this._objective.insertRow(i.second,-e):this._objective.insertSymbol(t,-e)},t.prototype._anyPivotableSymbol=function(t){for(var e=t.cells(),i=0,n=e.size();i<n;++i){var r=e.itemAt(i),o=r.first.type();if(o===g.Slack||o===g.Error)return r.first}return w},t.prototype._makeSymbol=function(t){return new h(t,this._idTick++)},t}();function x(t){return t<0?-t<1e-8:t<1e-8}i.Solver=l,(n=g||(g={}))[n.Invalid=0]=\"Invalid\",n[n.External=1]=\"External\",n[n.Slack=2]=\"Slack\",n[n.Error=3]=\"Error\",n[n.Dummy=4]=\"Dummy\";var h=function(){function t(t,e){this._id=e,this._type=t}return t.Compare=function(t,e){return t.id()-e.id()},t.prototype.id=function(){return this._id},t.prototype.type=function(){return this._type},t}(),w=new h(g.Invalid,-1),k=function(){function e(t){void 0===t&&(t=0),this._cellMap=o.createMap(h.Compare),this._constant=t}return e.prototype.cells=function(){return this._cellMap},e.prototype.constant=function(){return this._constant},e.prototype.isConstant=function(){return this._cellMap.empty()},e.prototype.allDummies=function(){for(var t=this._cellMap,e=0,i=t.size();e<i;++e){var n=t.itemAt(e);if(n.first.type()!==g.Dummy)return!1}return!0},e.prototype.copy=function(){var t=new e(this._constant);return t._cellMap=this._cellMap.copy(),t},e.prototype.add=function(t){return this._constant+=t},e.prototype.insertSymbol=function(t,e){void 0===e&&(e=1);var i=this._cellMap.setDefault(t,function(){return 0});x(i.second+=e)&&this._cellMap.erase(t)},e.prototype.insertRow=function(t,e){void 0===e&&(e=1),this._constant+=t._constant*e;for(var i=t._cellMap,n=0,r=i.size();n<r;++n){var o=i.itemAt(n);this.insertSymbol(o.first,o.second*e)}},e.prototype.removeSymbol=function(t){this._cellMap.erase(t)},e.prototype.reverseSign=function(){this._constant=-this._constant;for(var t=this._cellMap,e=0,i=t.size();e<i;++e){var n=t.itemAt(e);n.second=-n.second}},e.prototype.solveFor=function(t){var e=this._cellMap,i=e.erase(t),n=-1/i.second;this._constant*=n;for(var r=0,o=e.size();r<o;++r)e.itemAt(r).second*=n},e.prototype.solveForEx=function(t,e){this.insertSymbol(t,-1),this.solveFor(e)},e.prototype.coefficientFor=function(t){var e=this._cellMap.find(t);return void 0!==e?e.second:0},e.prototype.substitute=function(t,e){var i=this._cellMap.erase(t);void 0!==i&&this.insertRow(e,i.second)},e}()},function(t,e,i){!function(e){function t(t,e,i,n){void 0===n&&(n=1);var r=0;return r+=1e6*Math.max(0,Math.min(1e3,t*n)),r+=1e3*Math.max(0,Math.min(1e3,e*n)),r+=Math.max(0,Math.min(1e3,i*n))}e.create=t,e.required=t(1e3,1e3,1e3),e.strong=t(1,0,0),e.medium=t(0,1,0),e.weak=t(0,0,1),e.clip=function(t){return Math.max(0,Math.min(e.required,t))}}(i.Strength||(i.Strength={}))},function(t,e,i){var l=t(358);function o(t,e,i){for(var n,r,o=0,s=t.length;0<s;)i(t[r=o+(n=s>>1)],e)<0?(o=r+1,s-=n+1):s=n;return o}i.lowerBound=o,i.binarySearch=function(t,e,i){var n=o(t,e,i);if(n===t.length)return-1;var r=t[n];return 0!==i(r,e)?-1:n},i.binaryFind=function(t,e,i){var n=o(t,e,i);if(n!==t.length){var r=t[n];if(0===i(r,e))return r}},i.asSet=function(t,e){var i=l.asArray(t),n=i.length;if(n<=1)return i;i.sort(e);for(var r=[i[0]],o=1,s=0;o<n;++o){var a=i[o];0!==e(r[s],a)&&(r.push(a),++s)}return r},i.setIsDisjoint=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length;n<o&&r<s;){var a=i(t[n],e[r]);if(a<0)++n;else{if(!(0<a))return!1;++r}}return!0},i.setIsSubset=function(t,e,i){var n=t.length,r=e.length;if(r<n)return!1;for(var o=0,s=0;o<n&&s<r;){var a=i(t[o],e[s]);if(a<0)return!1;0<a||++o,++s}return!(o<n)},i.setUnion=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u?a.push(h):(a.push(l),++n),++r)}for(;n<o;)a.push(t[n]),++n;for(;r<s;)a.push(e[r]),++r;return a},i.setIntersection=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?++n:(0<u||(a.push(l),++n),++r)}return a},i.setDifference=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u||++n,++r)}for(;n<o;)a.push(t[n]),++n;return a},i.setSymmetricDifference=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u?a.push(h):++n,++r)}for(;n<o;)a.push(t[n]),++n;for(;r<s;)a.push(e[r]),++r;return a}},function(t,e,i){var n=t(358),r=function(){function t(){this._array=[]}return t.prototype.size=function(){return this._array.length},t.prototype.empty=function(){return 0===this._array.length},t.prototype.itemAt=function(t){return this._array[t]},t.prototype.takeAt=function(t){return this._array.splice(t,1)[0]},t.prototype.clear=function(){this._array=[]},t.prototype.swap=function(t){var e=this._array;this._array=t._array,t._array=e},t.prototype.__iter__=function(){return n.iter(this._array)},t.prototype.__reversed__=function(){return n.reversed(this._array)},t}();i.ArrayBase=r},function(t,e,i){\n",
381
+       "      /*-----------------------------------------------------------------------------\n",
382
+       "          | Copyright (c) 2014, Nucleic Development Team.\n",
383
+       "          |\n",
384
+       "          | Distributed under the terms of the Modified BSD License.\n",
385
+       "          |\n",
386
+       "          | The full license is in the file COPYING.txt, distributed with this software.\n",
387
+       "          |----------------------------------------------------------------------------*/\n",
388
+       "      var n,r=this&&this.__extends||(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),s=t(359),o=t(355),a=t(354),l=t(358),h=function(n){function o(t){var i,e=n.call(this)||this;return e._compare=t,e._wrapped=(i=t,function(t,e){return i(t.first,e)}),e}return r(o,n),o.prototype.comparitor=function(){return this._compare},o.prototype.indexOf=function(t){return a.binarySearch(this._array,t,this._wrapped)},o.prototype.contains=function(t){return 0<=a.binarySearch(this._array,t,this._wrapped)},o.prototype.find=function(t){return a.binaryFind(this._array,t,this._wrapped)},o.prototype.setDefault=function(t,e){var i=this._array,n=a.lowerBound(i,t,this._wrapped);if(n===i.length){var r=new s.Pair(t,e());return i.push(r),r}var o=i[n];if(0!==this._compare(o.first,t)){var r=new s.Pair(t,e());return i.splice(n,0,r),r}return o},o.prototype.insert=function(t,e){var i=this._array,n=a.lowerBound(i,t,this._wrapped);if(n===i.length){var r=new s.Pair(t,e);return i.push(r),r}var o=i[n];if(0!==this._compare(o.first,t)){var r=new s.Pair(t,e);return i.splice(n,0,r),r}return o.second=e,o},o.prototype.update=function(t){var e=this;t instanceof o?this._array=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l.first,h.first);u<0?(a.push(l.copy()),++n):(0<u?a.push(h.copy()):(a.push(h.copy()),++n),++r)}for(;n<o;)a.push(t[n].copy()),++n;for(;r<s;)a.push(e[r].copy()),++r;return a}(this._array,t._array,this._compare):l.forEach(t,function(t){e.insert(t.first,t.second)})},o.prototype.erase=function(t){var e=this._array,i=a.binarySearch(e,t,this._wrapped);if(!(i<0))return e.splice(i,1)[0]},o.prototype.copy=function(){for(var t=new o(this._compare),e=t._array,i=this._array,n=0,r=i.length;n<r;++n)e.push(i[n].copy());return t},o}(o.ArrayBase);i.AssociativeArray=h},function(t,e,i){function n(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}n(t(354)),n(t(355)),n(t(356)),n(t(358)),n(t(359))},function(t,e,i){var n=function(){function t(t,e){void 0===e&&(e=0),this._array=t,this._index=Math.max(0,Math.min(e,t.length))}return t.prototype.__next__=function(){return this._array[this._index++]},t.prototype.__iter__=function(){return this},t}();i.ArrayIterator=n;var r=function(){function t(t,e){void 0===e&&(e=t.length),this._array=t,this._index=Math.max(0,Math.min(e,t.length))}return t.prototype.__next__=function(){return this._array[--this._index]},t.prototype.__iter__=function(){return this},t}();i.ReverseArrayIterator=r,i.iter=function(t){return t instanceof Array?new n(t):t.__iter__()},i.reversed=function(t){return t instanceof Array?new r(t):t.__reversed__()},i.next=function(t){return t.__next__()},i.asArray=function(t){if(t instanceof Array)return t.slice();for(var e,i=[],n=t.__iter__();void 0!==(e=n.__next__());)i.push(e);return i},i.forEach=function(t,e){if(t instanceof Array){for(var i=0,n=t.length;i<n;++i)if(!1===e(t[i]))return}else for(var r,o=t.__iter__();void 0!==(r=o.__next__());)if(!1===e(r))return},i.map=function(t,e){var i=[];if(t instanceof Array)for(var n=0,r=t.length;n<r;++n)i.push(e(t[n]));else for(var o,s=t.__iter__();void 0!==(o=s.__next__());)i.push(e(o));return i},i.filter=function(t,e){var i,n=[];if(t instanceof Array)for(var r=0,o=t.length;r<o;++r)i=t[r],e(i)&&n.push(i);else for(var s=t.__iter__();void 0!==(i=s.__next__());)e(i)&&n.push(i);return n}},function(t,e,i){var n=function(){function t(t,e){this.first=t,this.second=e}return t.prototype.copy=function(){return new t(this.first,this.second)},t}();i.Pair=n},function(t,e,i){var n=function(){function t(t){void 0===t&&(t=\"\"),this._value=0,this._context=null,this._id=r++,this._name=t}return t.Compare=function(t,e){return t.id-e.id},t.prototype.toString=function(){return this._name},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"name\",{get:function(){return this._name},enumerable:!0,configurable:!0}),t.prototype.setName=function(t){this._name=t},Object.defineProperty(t.prototype,\"context\",{get:function(){return this._context},enumerable:!0,configurable:!0}),t.prototype.setContext=function(t){this._context=t},Object.defineProperty(t.prototype,\"value\",{get:function(){return this._value},enumerable:!0,configurable:!0}),t.prototype.setValue=function(t){this._value=t},t}();i.Variable=n;var r=0},function(t,e,i){\n",
389
+       "      /*!\n",
390
+       "           * numbro.js\n",
391
+       "           * version : 1.6.2\n",
392
+       "           * author : Företagsplatsen AB\n",
393
+       "           * license : MIT\n",
394
+       "           * http://www.foretagsplatsen.se\n",
395
+       "           */\n",
396
+       "      var u,U={},o=U,q=\"en-US\",Y=null,r=\"0,0\";function n(t){this._value=t}function p(t){var e,i=\"\";for(e=0;e<t;e++)i+=\"0\";return i}function X(t,e,i,n){var r,o,s,a,l,h,u,c,_=Math.pow(10,e);return o=-1<t.toFixed(0).search(\"e\")?(s=e,c=t.toString(),a=c.split(\"e\")[0],u=c.split(\"e\")[1],l=a.split(\".\")[0],h=a.split(\".\")[1]||\"\",c=l+h+p(u-h.length),0<s&&(c+=\".\"+p(s)),c):(i(t*_)/_).toFixed(e),n&&(r=new RegExp(\"0{1,\"+n+\"}$\"),o=o.replace(r,\"\")),o}function s(t,e,i){var n,r,o,s,a,l,h,u,c,_;return-1<e.indexOf(\"$\")?n=function(t,e,i){var n,r,o=e,s=o.indexOf(\"$\"),a=o.indexOf(\"(\"),l=o.indexOf(\"+\"),h=o.indexOf(\"-\"),u=\"\",c=\"\";if(-1===o.indexOf(\"$\")?\"infix\"===U[q].currency.position?(c=U[q].currency.symbol,U[q].currency.spaceSeparated&&(c=\" \"+c+\" \")):U[q].currency.spaceSeparated&&(u=\" \"):-1<o.indexOf(\" $\")?(u=\" \",o=o.replace(\" $\",\"\")):-1<o.indexOf(\"$ \")?(u=\" \",o=o.replace(\"$ \",\"\")):o=o.replace(\"$\",\"\"),r=d(t,o,i,c),-1===e.indexOf(\"$\"))switch(U[q].currency.position){case\"postfix\":-1<r.indexOf(\")\")?((r=r.split(\"\")).splice(-1,0,u+U[q].currency.symbol),r=r.join(\"\")):r=r+u+U[q].currency.symbol;break;case\"infix\":break;case\"prefix\":-1<r.indexOf(\"(\")||-1<r.indexOf(\"-\")?(r=r.split(\"\"),n=Math.max(a,h)+1,r.splice(n,0,U[q].currency.symbol+u),r=r.join(\"\")):r=U[q].currency.symbol+u+r;break;default:throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]')}else s<=1?-1<r.indexOf(\"(\")||-1<r.indexOf(\"+\")||-1<r.indexOf(\"-\")?(r=r.split(\"\"),n=1,(s<a||s<l||s<h)&&(n=0),r.splice(n,0,U[q].currency.symbol+u),r=r.join(\"\")):r=U[q].currency.symbol+u+r:-1<r.indexOf(\")\")?((r=r.split(\"\")).splice(-1,0,u+U[q].currency.symbol),r=r.join(\"\")):r=r+u+U[q].currency.symbol;return r}(t,e,i):-1<e.indexOf(\"%\")?(l=t,u=i,_=\"\",l*=100,-1<(h=e).indexOf(\" %\")?(_=\" \",h=h.replace(\" %\",\"\")):h=h.replace(\"%\",\"\"),-1<(c=d(l,h,u)).indexOf(\")\")?((c=c.split(\"\")).splice(-1,0,_+\"%\"),c=c.join(\"\")):c=c+_+\"%\",n=c):-1<e.indexOf(\":\")?(r=t,o=Math.floor(r/60/60),s=Math.floor((r-60*o*60)/60),a=Math.round(r-60*o*60-60*s),n=o+\":\"+(s<10?\"0\"+s:s)+\":\"+(a<10?\"0\"+a:a)):n=d(t,e,i),n}function d(t,e,i,n){var r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x,w,k=!1,S=!1,C=!1,T=\"\",A=!1,E=!1,M=!1,O=!1,z=!1,P=\"\",j=\"\",N=Math.abs(t),F=[\"B\",\"KiB\",\"MiB\",\"GiB\",\"TiB\",\"PiB\",\"EiB\",\"ZiB\",\"YiB\"],D=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\",\"ZB\",\"YB\"],I=\"\",R=!1,B=!1;if(0===t&&null!==Y)return Y;if(!isFinite(t))return\"\"+t;if(0===e.indexOf(\"{\")){var L=e.indexOf(\"}\");if(-1===L)throw Error('Format should also contain a \"}\"');f=e.slice(1,L),e=e.slice(L+1)}else f=\"\";if(e.indexOf(\"}\")===e.length-1){var V=e.indexOf(\"{\");if(-1===V)throw Error('Format should also contain a \"{\"');v=e.slice(V+1,-1),e=e.slice(0,V+1)}else v=\"\";if(w=-1===e.indexOf(\".\")?e.match(/([0-9]+).*/):e.match(/([0-9]+)\\..*/),x=null===w?-1:w[1].length,-1!==e.indexOf(\"-\")&&(R=!0),-1<e.indexOf(\"(\")?(k=!0,e=e.slice(1,-1)):-1<e.indexOf(\"+\")&&(S=!0,e=e.replace(/\\+/g,\"\")),-1<e.indexOf(\"a\")){if(p=e.split(\".\")[0].match(/[0-9]+/g)||[\"0\"],p=parseInt(p[0],10),A=0<=e.indexOf(\"aK\"),E=0<=e.indexOf(\"aM\"),M=0<=e.indexOf(\"aB\"),O=0<=e.indexOf(\"aT\"),z=A||E||M||O,-1<e.indexOf(\" a\")?(T=\" \",e=e.replace(\" a\",\"\")):e=e.replace(\"a\",\"\"),l=Math.floor(Math.log(N)/Math.LN10)+1,u=0==(u=l%3)?3:u,p&&0!==N&&(h=Math.floor(Math.log(N)/Math.LN10)+1-p,c=3*~~((Math.min(p,l)-u)/3),N/=Math.pow(10,c),-1===e.indexOf(\".\")&&3<p))for(e+=\"[.]\",y=(y=0===h?0:3*~~(h/3)-h)<0?y+3:y,r=0;r<y;r++)e+=\"0\";Math.floor(Math.log(Math.abs(t))/Math.LN10)+1!==p&&(N>=Math.pow(10,12)&&!z||O?(T+=U[q].abbreviations.trillion,t/=Math.pow(10,12)):N<Math.pow(10,12)&&N>=Math.pow(10,9)&&!z||M?(T+=U[q].abbreviations.billion,t/=Math.pow(10,9)):N<Math.pow(10,9)&&N>=Math.pow(10,6)&&!z||E?(T+=U[q].abbreviations.million,t/=Math.pow(10,6)):(N<Math.pow(10,6)&&N>=Math.pow(10,3)&&!z||A)&&(T+=U[q].abbreviations.thousand,t/=Math.pow(10,3)))}if(-1<e.indexOf(\"b\"))for(-1<e.indexOf(\" b\")?(P=\" \",e=e.replace(\" b\",\"\")):e=e.replace(\"b\",\"\"),a=0;a<=F.length;a++)if(o=Math.pow(1024,a),s=Math.pow(1024,a+1),o<=t&&t<s){P+=F[a],0<o&&(t/=o);break}if(-1<e.indexOf(\"d\"))for(-1<e.indexOf(\" d\")?(P=\" \",e=e.replace(\" d\",\"\")):e=e.replace(\"d\",\"\"),a=0;a<=D.length;a++)if(o=Math.pow(1e3,a),s=Math.pow(1e3,a+1),o<=t&&t<s){P+=D[a],0<o&&(t/=o);break}if(-1<e.indexOf(\"o\")&&(-1<e.indexOf(\" o\")?(j=\" \",e=e.replace(\" o\",\"\")):e=e.replace(\"o\",\"\"),U[q].ordinal&&(j+=U[q].ordinal(t))),-1<e.indexOf(\"[.]\")&&(C=!0,e=e.replace(\"[.]\",\".\")),_=t.toString().split(\".\")[0],d=e.split(\".\")[1],m=e.indexOf(\",\"),d){if(-1!==d.indexOf(\"*\")?I=X(t,t.toString().split(\".\")[1].length,i):-1<d.indexOf(\"[\")?(d=(d=d.replace(\"]\",\"\")).split(\"[\"),I=X(t,d[0].length+d[1].length,i,d[1].length)):I=X(t,d.length,i),_=I.split(\".\")[0],I.split(\".\")[1].length){var G=n?T+n:U[q].delimiters.decimal;I=G+I.split(\".\")[1]}else I=\"\";C&&0===Number(I.slice(1))&&(I=\"\")}else _=X(t,null,i);return-1<_.indexOf(\"-\")&&(_=_.slice(1),B=!0),_.length<x&&(_=new Array(x-_.length+1).join(\"0\")+_),-1<m&&(_=_.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g,\"$1\"+U[q].delimiters.thousands)),0===e.indexOf(\".\")&&(_=\"\"),g=e.indexOf(\"(\"),b=e.indexOf(\"-\"),f+(g<b?(k&&B?\"(\":\"\")+(R&&B||!k&&B?\"-\":\"\"):(R&&B||!k&&B?\"-\":\"\")+(k&&B?\"(\":\"\"))+(!B&&S&&0!==t?\"+\":\"\")+_+I+(j||\"\")+(T&&!n?T:\"\")+(P||\"\")+(k&&B?\")\":\"\")+v}function a(t,e){U[t]=e}function l(t){var e=U[q=t].defaults;e&&e.format&&u.defaultFormat(e.format),e&&e.currencyFormat&&u.defaultCurrencyFormat(e.currencyFormat)}void 0!==e&&e.exports,(u=function(t){return u.isNumbro(t)?t=t.value():0===t||void 0===t?t=0:Number(t)||(t=u.fn.unformat(t)),new n(Number(t))}).version=\"1.6.2\",u.isNumbro=function(t){return t instanceof n},u.setLanguage=function(t,e){console.warn(\"`setLanguage` is deprecated since version 1.6.0. Use `setCulture` instead\");var i=t,n=t.split(\"-\")[0],r=null;o[i]||(Object.keys(o).forEach(function(t){r||t.split(\"-\")[0]!==n||(r=t)}),i=r||e||\"en-US\"),l(i)},u.setCulture=function(t,e){var i=t,n=t.split(\"-\")[1],r=null;U[i]||(n&&Object.keys(U).forEach(function(t){r||t.split(\"-\")[1]!==n||(r=t)}),i=r||e||\"en-US\"),l(i)},u.language=function(t,e){if(console.warn(\"`language` is deprecated since version 1.6.0. Use `culture` instead\"),!t)return q;if(t&&!e){if(!o[t])throw new Error(\"Unknown language : \"+t);l(t)}return!e&&o[t]||a(t,e),u},u.culture=function(t,e){if(!t)return q;if(t&&!e){if(!U[t])throw new Error(\"Unknown culture : \"+t);l(t)}return!e&&U[t]||a(t,e),u},u.languageData=function(t){if(console.warn(\"`languageData` is deprecated since version 1.6.0. Use `cultureData` instead\"),!t)return o[q];if(!o[t])throw new Error(\"Unknown language : \"+t);return o[t]},u.cultureData=function(t){if(!t)return U[q];if(!U[t])throw new Error(\"Unknown culture : \"+t);return U[t]},u.culture(\"en-US\",{delimiters:{thousands:\",\",decimal:\".\"},abbreviations:{thousand:\"k\",million:\"m\",billion:\"b\",trillion:\"t\"},ordinal:function(t){var e=t%10;return 1==~~(t%100/10)?\"th\":1===e?\"st\":2===e?\"nd\":3===e?\"rd\":\"th\"},currency:{symbol:\"$\",position:\"prefix\"},defaults:{currencyFormat:\",0000 a\"},formats:{fourDigits:\"0000 a\",fullWithTwoDecimals:\"$ ,0.00\",fullWithTwoDecimalsNoCurrency:\",0.00\"}}),u.languages=function(){return console.warn(\"`languages` is deprecated since version 1.6.0. Use `cultures` instead\"),o},u.cultures=function(){return U},u.zeroFormat=function(t){Y=\"string\"==typeof t?t:null},u.defaultFormat=function(t){r=\"string\"==typeof t?t:\"0.0\"},u.defaultCurrencyFormat=function(t){},u.validate=function(t,e){var i,n,r,o,s,a,l,h;if(\"string\"!=typeof t&&(t+=\"\",console.warn&&console.warn(\"Numbro.js: Value is not string. It has been co-erced to: \",t)),(t=t.trim()).match(/^\\d+$/))return!0;if(\"\"===t)return!1;try{l=u.cultureData(e)}catch(t){l=u.cultureData(u.culture())}return r=l.currency.symbol,s=l.abbreviations,i=l.delimiters.decimal,n=\".\"===l.delimiters.thousands?\"\\\\.\":l.delimiters.thousands,!(null!==(h=t.match(/^[^\\d]+/))&&(t=t.substr(1),h[0]!==r)||null!==(h=t.match(/[^\\d]+$/))&&(t=t.slice(0,-1),h[0]!==s.thousand&&h[0]!==s.million&&h[0]!==s.billion&&h[0]!==s.trillion)||(a=new RegExp(n+\"{2}\"),t.match(/[^\\d.,]/g)||2<(o=t.split(i)).length||(o.length<2?!o[0].match(/^\\d+.*\\d$/)||o[0].match(a):1===o[0].length?!o[0].match(/^\\d+$/)||o[0].match(a)||!o[1].match(/^\\d+$/):!o[0].match(/^\\d+.*\\d$/)||o[0].match(a)||!o[1].match(/^\\d+$/))))},e.exports={format:function(t,e,i,n){return null!=i&&i!==u.culture()&&u.setCulture(i),s(Number(t),null!=e?e:r,null==n?Math.round:n)}}},function(t,e,i){var l=t(382),h=t(380),n=t(384),u=t(379),c=t(370),_=t(375);function p(t,e){if(!(this instanceof p))return new p(t);e=e||function(t){if(t)throw t};var i=l(t);if(\"object\"==typeof i){var n=p.projections.get(i.projName);if(n){if(i.datumCode&&\"none\"!==i.datumCode){var r=c[i.datumCode];r&&(i.datum_params=r.towgs84?r.towgs84.split(\",\"):null,i.ellps=r.ellipse,i.datumName=r.datumName?r.datumName:i.datumCode)}i.k0=i.k0||1,i.axis=i.axis||\"enu\";var o=u.sphere(i.a,i.b,i.rf,i.ellps,i.sphere),s=u.eccentricity(o.a,o.b,o.rf,i.R_A),a=i.datum||_(i.datumCode,i.datum_params,o.a,o.b,s.es,s.ep2);h(this,i),h(this,n),this.a=o.a,this.b=o.b,this.rf=o.rf,this.sphere=o.sphere,this.es=s.es,this.e=s.e,this.ep2=s.ep2,this.datum=a,this.init(),e(null,this)}else e(t)}else e(t)}(p.projections=n).start(),e.exports=p},function(t,e,i){e.exports=function(t,e,i){var n,r,o,s=i.x,a=i.y,l=i.z||0,h={};for(o=0;o<3;o++)if(!e||2!==o||void 0!==i.z)switch(0===o?(n=s,r=\"x\"):1===o?(n=a,r=\"y\"):(n=l,r=\"z\"),t.axis[o]){case\"e\":h[r]=n;break;case\"w\":h[r]=-n;break;case\"n\":h[r]=n;break;case\"s\":h[r]=-n;break;case\"u\":void 0!==i[r]&&(h.z=n);break;case\"d\":void 0!==i[r]&&(h.z=-n);break;default:return null}return h}},function(t,e,i){var n=2*Math.PI,r=t(367);e.exports=function(t){return Math.abs(t)<=3.14159265359?t:t-r(t)*n}},function(t,e,i){e.exports=function(t,e,i){var n=t*e;return i/Math.sqrt(1-n*n)}},function(t,e,i){var a=Math.PI/2;e.exports=function(t,e){for(var i,n,r=.5*t,o=a-2*Math.atan(e),s=0;s<=15;s++)if(i=t*Math.sin(o),n=a-2*Math.atan(e*Math.pow((1-i)/(1+i),r))-o,o+=n,Math.abs(n)<=1e-10)return o;return-9999}},function(t,e,i){e.exports=function(t){return t<0?-1:1}},function(t,e,i){e.exports=function(t){var e={x:t[0],y:t[1]};return 2<t.length&&(e.z=t[2]),3<t.length&&(e.m=t[3]),e}},function(t,e,i){var o=Math.PI/2;e.exports=function(t,e,i){var n=t*i,r=.5*t;return n=Math.pow((1-n)/(1+n),r),Math.tan(.5*(o-e))/n}},function(t,e,i){i.wgs84={towgs84:\"0,0,0\",ellipse:\"WGS84\",datumName:\"WGS84\"},i.ch1903={towgs84:\"674.374,15.056,405.346\",ellipse:\"bessel\",datumName:\"swiss\"},i.ggrs87={towgs84:\"-199.87,74.79,246.62\",ellipse:\"GRS80\",datumName:\"Greek_Geodetic_Reference_System_1987\"},i.nad83={towgs84:\"0,0,0\",ellipse:\"GRS80\",datumName:\"North_American_Datum_1983\"},i.nad27={nadgrids:\"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat\",ellipse:\"clrk66\",datumName:\"North_American_Datum_1927\"},i.potsdam={towgs84:\"606.0,23.0,413.0\",ellipse:\"bessel\",datumName:\"Potsdam Rauenberg 1950 DHDN\"},i.carthage={towgs84:\"-263.0,6.0,431.0\",ellipse:\"clark80\",datumName:\"Carthage 1934 Tunisia\"},i.hermannskogel={towgs84:\"653.0,-212.0,449.0\",ellipse:\"bessel\",datumName:\"Hermannskogel\"},i.ire65={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"mod_airy\",datumName:\"Ireland 1965\"},i.rassadiran={towgs84:\"-133.63,-157.5,-158.62\",ellipse:\"intl\",datumName:\"Rassadiran\"},i.nzgd49={towgs84:\"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993\",ellipse:\"intl\",datumName:\"New Zealand Geodetic Datum 1949\"},i.osgb36={towgs84:\"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894\",ellipse:\"airy\",datumName:\"Airy 1830\"},i.s_jtsk={towgs84:\"589,76,480\",ellipse:\"bessel\",datumName:\"S-JTSK (Ferro)\"},i.beduaram={towgs84:\"-106,-87,188\",ellipse:\"clrk80\",datumName:\"Beduaram\"},i.gunung_segara={towgs84:\"-403,684,41\",ellipse:\"bessel\",datumName:\"Gunung Segara Jakarta\"},i.rnb72={towgs84:\"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1\",ellipse:\"intl\",datumName:\"Reseau National Belge 1972\"}},function(t,e,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\"},i.WGS84={a:6378137,rf:298.257223563,ellipseName:\"WGS 84\"},i.sphere={a:6370997,b:6370997,ellipseName:\"Normal Sphere (r=6370997)\"}},function(t,e,i){i.greenwich=0,i.lisbon=-9.131906111111,i.paris=2.337229166667,i.bogota=-74.080916666667,i.madrid=-3.687938888889,i.rome=12.452333333333,i.bern=7.439583333333,i.jakarta=106.807719444444,i.ferro=-17.666666666667,i.brussels=4.367975,i.stockholm=18.058277777778,i.athens=23.7163375,i.oslo=10.722916666667},function(t,e,i){i.ft={to_meter:.3048},i[\"us-ft\"]={to_meter:1200/3937}},function(t,e,i){var n=t(362),r=t(387),o=n(\"WGS84\");function s(t,e,i){var n;return Array.isArray(i)?(n=r(t,e,i),3===i.length?[n.x,n.y,n.z]:[n.x,n.y]):r(t,e,i)}function a(t){return t instanceof n?t:t.oProj?t.oProj:n(t)}e.exports=function(e,i,t){e=a(e);var n,r=!1;return void 0===i?(i=e,e=o,r=!0):(void 0!==i.x||Array.isArray(i))&&(t=i,i=e,e=o,r=!0),i=a(i),t?s(e,i,t):(n={forward:function(t){return s(e,i,t)},inverse:function(t){return s(i,e,t)}},r&&(n.oProj=i),n)}},function(t,e,i){var a=484813681109536e-20;e.exports=function(t,e,i,n,r,o){var s={datum_type:4};return t&&\"none\"===t&&(s.datum_type=5),e&&(s.datum_params=e.map(parseFloat),0===s.datum_params[0]&&0===s.datum_params[1]&&0===s.datum_params[2]||(s.datum_type=1),3<s.datum_params.length&&(0===s.datum_params[3]&&0===s.datum_params[4]&&0===s.datum_params[5]&&0===s.datum_params[6]||(s.datum_type=2,s.datum_params[3]*=a,s.datum_params[4]*=a,s.datum_params[5]*=a,s.datum_params[6]=s.datum_params[6]/1e6+1))),s.a=i,s.b=n,s.es=r,s.ep2=o,s}},function(t,e,i){var k=Math.PI/2;i.compareDatums=function(t,e){return t.datum_type===e.datum_type&&!(t.a!==e.a||5e-11<Math.abs(this.es-e.es))&&(1===t.datum_type?this.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]:2!==t.datum_type||t.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]&&t.datum_params[3]===e.datum_params[3]&&t.datum_params[4]===e.datum_params[4]&&t.datum_params[5]===e.datum_params[5]&&t.datum_params[6]===e.datum_params[6])},i.geodeticToGeocentric=function(t,e,i){var n,r,o,s,a=t.x,l=t.y,h=t.z?t.z:0;if(l<-k&&-1.001*k<l)l=-k;else if(k<l&&l<1.001*k)l=k;else if(l<-k||k<l)return null;return a>Math.PI&&(a-=2*Math.PI),r=Math.sin(l),s=Math.cos(l),o=r*r,{x:((n=i/Math.sqrt(1-e*o))+h)*s*Math.cos(a),y:(n+h)*s*Math.sin(a),z:(n*(1-e)+h)*r}},i.geocentricToGeodetic=function(t,e,i,n){var r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b=t.x,x=t.y,w=t.z?t.z:0;if(r=Math.sqrt(b*b+x*x),o=Math.sqrt(b*b+x*x+w*w),r/i<1e-12){if(m=0,o/i<1e-12)return g=k,y=-n,{x:t.x,y:t.y,z:t.z}}else m=Math.atan2(x,b);for(s=w/o,a=r/o,l=1/Math.sqrt(1-e*(2-e)*a*a),c=a*(1-e)*l,_=s*l,v=0;v++,u=i/Math.sqrt(1-e*_*_),h=e*u/(u+(y=r*c+w*_-u*(1-e*_*_))),l=1/Math.sqrt(1-h*(2-h)*a*a),f=(d=s*l)*c-(p=a*(1-h)*l)*_,c=p,_=d,1e-24<f*f&&v<30;);return g=Math.atan(d/Math.abs(p)),{x:m,y:g,z:y}},i.geocentricToWgs84=function(t,e,i){if(1===e)return{x:t.x+i[0],y:t.y+i[1],z:t.z+i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6];return{x:h*(t.x-l*t.y+a*t.z)+n,y:h*(l*t.x+t.y-s*t.z)+r,z:h*(-a*t.x+s*t.y+t.z)+o}}},i.geocentricFromWgs84=function(t,e,i){if(1===e)return{x:t.x-i[0],y:t.y-i[1],z:t.z-i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6],u=(t.x-n)/h,c=(t.y-r)/h,_=(t.z-o)/h;return{x:u+l*c-a*_,y:-l*u+c+s*_,z:a*u-s*c+_}}}},function(t,e,i){var n=t(376);function r(t){return 1===t||2===t}e.exports=function(t,e,i){return n.compareDatums(t,e)?i:5===t.datum_type||5===e.datum_type?i:t.es!==e.es||t.a!==e.a||r(t.datum_type)||r(e.datum_type)?(i=n.geodeticToGeocentric(i,t.es,t.a),r(t.datum_type)&&(i=n.geocentricToWgs84(i,t.datum_type,t.datum_params)),r(e.datum_type)&&(i=n.geocentricFromWgs84(i,e.datum_type,e.datum_params)),n.geocentricToGeodetic(i,e.es,e.a,e.b)):i}},function(t,e,i){var n=t(381),r=t(383),o=t(388);function s(t){var e=this;if(2===arguments.length){var i=arguments[1];s[t]=\"string\"==typeof i?\"+\"===i.charAt(0)?r(arguments[1]):o(arguments[1]):i}else if(1===arguments.length){if(Array.isArray(t))return t.map(function(t){Array.isArray(t)?s.apply(e,t):s(t)});if(\"string\"==typeof t){if(t in s)return s[t]}else\"EPSG\"in t?s[\"EPSG:\"+t.EPSG]=t:\"ESRI\"in t?s[\"ESRI:\"+t.ESRI]=t:\"IAU2000\"in t?s[\"IAU2000:\"+t.IAU2000]=t:console.log(t);return}}n(s),e.exports=s},function(t,e,i){var s=t(371);i.eccentricity=function(t,e,i,n){var r=t*t,o=e*e,s=(r-o)/r,a=0;n?(r=(t*=1-s*(.16666666666666666+s*(.04722222222222222+.022156084656084655*s)))*t,s=0):a=Math.sqrt(s);var l=(r-o)/o;return{es:s,e:a,ep2:l}},i.sphere=function(t,e,i,n,r){if(!t){var o=s[n];o||(o=s.WGS84),t=o.a,e=o.b,i=o.rf}return i&&!e&&(e=(1-1/i)*t),(0===i||Math.abs(t-e)<1e-10)&&(r=!0,e=t),{a:t,b:e,rf:i,sphere:r}}},function(t,e,i){e.exports=function(t,e){var i,n;if(t=t||{},!e)return t;for(n in e)void 0!==(i=e[n])&&(t[n]=i);return t}},function(t,e,i){e.exports=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\"]}},function(t,e,i){var n=t(378),r=t(388),o=t(383),s=[\"GEOGCS\",\"GEOCCS\",\"PROJCS\",\"LOCAL_CS\"];e.exports=function(t){return\"string\"!=typeof t?t:t in n?n[t]:(e=t,s.some(function(t){return-1<e.indexOf(t)})?r(t):\"+\"===t[0]?o(t):void 0);var e}},function(t,e,i){var a=.017453292519943295,l=t(372),h=t(373);e.exports=function(t){var e,i,n,r={},o=t.split(\"+\").map(function(t){return t.trim()}).filter(function(t){return t}).reduce(function(t,e){var i=e.split(\"=\");return i.push(!0),t[i[0].toLowerCase()]=i[1],t},{}),s={proj:\"projName\",datum:\"datumCode\",rf:function(t){r.rf=parseFloat(t)},lat_0:function(t){r.lat0=t*a},lat_1:function(t){r.lat1=t*a},lat_2:function(t){r.lat2=t*a},lat_ts:function(t){r.lat_ts=t*a},lon_0:function(t){r.long0=t*a},lon_1:function(t){r.long1=t*a},lon_2:function(t){r.long2=t*a},alpha:function(t){r.alpha=parseFloat(t)*a},lonc:function(t){r.longc=t*a},x_0:function(t){r.x0=parseFloat(t)},y_0:function(t){r.y0=parseFloat(t)},k_0:function(t){r.k0=parseFloat(t)},k:function(t){r.k0=parseFloat(t)},a:function(t){r.a=parseFloat(t)},b:function(t){r.b=parseFloat(t)},r_a:function(){r.R_A=!0},zone:function(t){r.zone=parseInt(t,10)},south:function(){r.utmSouth=!0},towgs84:function(t){r.datum_params=t.split(\",\").map(function(t){return parseFloat(t)})},to_meter:function(t){r.to_meter=parseFloat(t)},units:function(t){r.units=t,h[t]&&(r.to_meter=h[t].to_meter)},from_greenwich:function(t){r.from_greenwich=t*a},pm:function(t){r.from_greenwich=(l[t]?l[t]:parseFloat(t))*a},nadgrids:function(t){\"@null\"===t?r.datumCode=\"none\":r.nadgrids=t},axis:function(t){var e=\"ewnsud\";3===t.length&&-1!==e.indexOf(t.substr(0,1))&&-1!==e.indexOf(t.substr(1,1))&&-1!==e.indexOf(t.substr(2,1))&&(r.axis=t)}};for(e in o)i=o[e],e in s?\"function\"==typeof(n=s[e])?n(i):r[n]=i:r[e]=i;return\"string\"==typeof r.datumCode&&\"WGS84\"!==r.datumCode&&(r.datumCode=r.datumCode.toLowerCase()),r}},function(t,e,i){var n=[t(386),t(385)],r={},o=[];function s(t,e){var i=o.length;return t.names?((o[i]=t).names.forEach(function(t){r[t.toLowerCase()]=i}),this):(console.log(e),!0)}i.add=s,i.get=function(t){if(!t)return!1;var e=t.toLowerCase();return void 0!==r[e]&&o[r[e]]?o[r[e]]:void 0},i.start=function(){n.forEach(s)}},function(t,e,i){function n(t){return t}i.init=function(){},i.forward=n,i.inverse=n,i.names=[\"longlat\",\"identity\"]},function(t,e,i){var n=t(365),a=Math.PI/2,l=57.29577951308232,h=t(364),u=Math.PI/4,c=t(369),s=t(366);i.init=function(){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=n(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)},i.forward=function(t){var e,i,n=t.x,r=t.y;if(90<r*l&&r*l<-90&&180<n*l&&n*l<-180)return null;if(Math.abs(Math.abs(r)-a)<=1e-10)return null;if(this.sphere)e=this.x0+this.a*this.k0*h(n-this.long0),i=this.y0+this.a*this.k0*Math.log(Math.tan(u+.5*r));else{var o=Math.sin(r),s=c(this.e,r,o);e=this.x0+this.a*this.k0*h(n-this.long0),i=this.y0-this.a*this.k0*Math.log(s)}return t.x=e,t.y=i,t},i.inverse=function(t){var e,i,n=t.x-this.x0,r=t.y-this.y0;if(this.sphere)i=a-2*Math.atan(Math.exp(-r/(this.a*this.k0)));else{var o=Math.exp(-r/(this.a*this.k0));if(-9999===(i=s(this.e,o)))return null}return e=h(this.long0+n/(this.a*this.k0)),t.x=e,t.y=i,t},i.names=[\"Mercator\",\"Popular Visualisation Pseudo Mercator\",\"Mercator_1SP\",\"Mercator_Auxiliary_Sphere\",\"merc\"]},function(t,e,i){var a=.017453292519943295,l=57.29577951308232,h=t(377),u=t(363),c=t(362),_=t(368);e.exports=function t(e,i,n){var r,o,s;return Array.isArray(n)&&(n=_(n)),e.datum&&i.datum&&(s=i,(1===(o=e).datum.datum_type||2===o.datum.datum_type)&&\"WGS84\"!==s.datumCode||(1===s.datum.datum_type||2===s.datum.datum_type)&&\"WGS84\"!==o.datumCode)&&(r=new c(\"WGS84\"),n=t(e,r,n),e=r),\"enu\"!==e.axis&&(n=u(e,!1,n)),\"longlat\"===e.projName?n={x:n.x*a,y:n.y*a}:(e.to_meter&&(n={x:n.x*e.to_meter,y:n.y*e.to_meter}),n=e.inverse(n)),e.from_greenwich&&(n.x+=e.from_greenwich),n=h(e.datum,i.datum,n),i.from_greenwich&&(n={x:n.x-i.grom_greenwich,y:n.y}),\"longlat\"===i.projName?n={x:n.x*l,y:n.y*l}:(n=i.forward(n),i.to_meter&&(n={x:n.x/i.to_meter,y:n.y/i.to_meter})),\"enu\"!==i.axis?u(i,!0,n):n}},function(t,e,i){var n=.017453292519943295,s=t(380);function r(t,e,i){t[e]=i.map(function(t){var e={};return a(t,e),e}).reduce(function(t,e){return s(t,e)},{})}function a(t,e){var i;Array.isArray(t)?(\"PARAMETER\"===(i=t.shift())&&(i=t.shift()),1===t.length?Array.isArray(t[0])?(e[i]={},a(t[0],e[i])):e[i]=t[0]:t.length?\"TOWGS84\"===i?e[i]=t:(e[i]={},-1<[\"UNIT\",\"PRIMEM\",\"VERT_DATUM\"].indexOf(i)?(e[i]={name:t[0].toLowerCase(),convert:t[1]},3===t.length&&(e[i].auth=t[2])):\"SPHEROID\"===i?(e[i]={name:t[0],a:t[1],rf:t[2]},4===t.length&&(e[i].auth=t[3])):-1<[\"GEOGCS\",\"GEOCCS\",\"DATUM\",\"VERT_CS\",\"COMPD_CS\",\"LOCAL_CS\",\"FITTED_CS\",\"LOCAL_DATUM\"].indexOf(i)?(t[0]=[\"name\",t[0]],r(e,i,t)):t.every(function(t){return Array.isArray(t)})?r(e,i,t):a(t,e[i])):e[i]=!0):e[t]=!0}function l(t){return t*n}e.exports=function(t,e){var i=JSON.parse((\",\"+t).replace(/\\s*\\,\\s*([A-Z_0-9]+?)(\\[)/g,',[\"$1\",').slice(1).replace(/\\s*\\,\\s*([A-Z_0-9]+?)\\]/g,',\"$1\"]').replace(/,\\[\"VERTCS\".+/,\"\")),n=i.shift(),r=i.shift();i.unshift([\"name\",r]),i.unshift([\"type\",n]),i.unshift(\"output\");var o={};return a(i,o),function(o){function t(t){var e=o.to_meter||1;return parseFloat(t,10)*e}\"GEOGCS\"===o.type?o.projName=\"longlat\":\"LOCAL_CS\"===o.type?(o.projName=\"identity\",o.local=!0):\"object\"==typeof o.PROJECTION?o.projName=Object.keys(o.PROJECTION)[0]:o.projName=o.PROJECTION,o.UNIT&&(o.units=o.UNIT.name.toLowerCase(),\"metre\"===o.units&&(o.units=\"meter\"),o.UNIT.convert&&(\"GEOGCS\"===o.type?o.DATUM&&o.DATUM.SPHEROID&&(o.to_meter=parseFloat(o.UNIT.convert,10)*o.DATUM.SPHEROID.a):o.to_meter=parseFloat(o.UNIT.convert,10))),o.GEOGCS&&(o.GEOGCS.DATUM?o.datumCode=o.GEOGCS.DATUM.name.toLowerCase():o.datumCode=o.GEOGCS.name.toLowerCase(),\"d_\"===o.datumCode.slice(0,2)&&(o.datumCode=o.datumCode.slice(2)),\"new_zealand_geodetic_datum_1949\"!==o.datumCode&&\"new_zealand_1949\"!==o.datumCode||(o.datumCode=\"nzgd49\"),\"wgs_1984\"===o.datumCode&&(\"Mercator_Auxiliary_Sphere\"===o.PROJECTION&&(o.sphere=!0),o.datumCode=\"wgs84\"),\"_ferro\"===o.datumCode.slice(-6)&&(o.datumCode=o.datumCode.slice(0,-6)),\"_jakarta\"===o.datumCode.slice(-8)&&(o.datumCode=o.datumCode.slice(0,-8)),~o.datumCode.indexOf(\"belge\")&&(o.datumCode=\"rnb72\"),o.GEOGCS.DATUM&&o.GEOGCS.DATUM.SPHEROID&&(o.ellps=o.GEOGCS.DATUM.SPHEROID.name.replace(\"_19\",\"\").replace(/[Cc]larke\\_18/,\"clrk\"),\"international\"===o.ellps.toLowerCase().slice(0,13)&&(o.ellps=\"intl\"),o.a=o.GEOGCS.DATUM.SPHEROID.a,o.rf=parseFloat(o.GEOGCS.DATUM.SPHEROID.rf,10)),~o.datumCode.indexOf(\"osgb_1936\")&&(o.datumCode=\"osgb36\")),o.b&&!isFinite(o.b)&&(o.b=o.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\"],[\"lat0\",\"latitude_of_center\",l],[\"longitude_of_center\",\"Longitude_Of_Center\"],[\"longc\",\"longitude_of_center\",l],[\"x0\",\"false_easting\",t],[\"y0\",\"false_northing\",t],[\"long0\",\"central_meridian\",l],[\"lat0\",\"latitude_of_origin\",l],[\"lat0\",\"standard_parallel_1\",l],[\"lat1\",\"standard_parallel_1\",l],[\"lat2\",\"standard_parallel_2\",l],[\"alpha\",\"azimuth\",l],[\"srsCode\",\"name\"]].forEach(function(t){return e=o,n=(i=t)[0],r=i[1],void(!(n in e)&&r in e&&(e[n]=e[r],3===i.length&&(e[n]=i[2](e[n]))));var e,i,n,r}),o.long0||!o.longc||\"Albers_Conic_Equal_Area\"!==o.projName&&\"Lambert_Azimuthal_Equal_Area\"!==o.projName||(o.long0=o.longc),o.lat_ts||!o.lat1||\"Stereographic_South_Pole\"!==o.projName&&\"Polar Stereographic (variant B)\"!==o.projName||(o.lat0=l(0<o.lat1?90:-90),o.lat_ts=o.lat1)}(o.output),s(e,o.output)}},function(t,e,i){!function(){\"use strict\";var d={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 f(t){return function(t,e){var i,n,r,o,s,a,l,h,u,c=1,_=t.length,p=\"\";for(n=0;n<_;n++)if(\"string\"==typeof t[n])p+=t[n];else if(Array.isArray(t[n])){if((o=t[n])[2])for(i=e[c],r=0;r<o[2].length;r++){if(!i.hasOwnProperty(o[2][r]))throw new Error(f('[sprintf] property \"%s\" does not exist',o[2][r]));i=i[o[2][r]]}else i=o[1]?e[o[1]]:e[c++];if(d.not_type.test(o[8])&&d.not_primitive.test(o[8])&&i instanceof Function&&(i=i()),d.numeric_arg.test(o[8])&&\"number\"!=typeof i&&isNaN(i))throw new TypeError(f(\"[sprintf] expecting number but found %T\",i));switch(d.number.test(o[8])&&(h=0<=i),o[8]){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[6]?parseInt(o[6]):0);break;case\"e\":i=o[7]?parseFloat(i).toExponential(o[7]):parseFloat(i).toExponential();break;case\"f\":i=o[7]?parseFloat(i).toFixed(o[7]):parseFloat(i);break;case\"g\":i=o[7]?String(Number(i.toPrecision(o[7]))):parseFloat(i);break;case\"o\":i=(parseInt(i,10)>>>0).toString(8);break;case\"s\":i=String(i),i=o[7]?i.substring(0,o[7]):i;break;case\"t\":i=String(!!i),i=o[7]?i.substring(0,o[7]):i;break;case\"T\":i=Object.prototype.toString.call(i).slice(8,-1).toLowerCase(),i=o[7]?i.substring(0,o[7]):i;break;case\"u\":i=parseInt(i,10)>>>0;break;case\"v\":i=i.valueOf(),i=o[7]?i.substring(0,o[7]):i;break;case\"x\":i=(parseInt(i,10)>>>0).toString(16);break;case\"X\":i=(parseInt(i,10)>>>0).toString(16).toUpperCase()}d.json.test(o[8])?p+=i:(!d.number.test(o[8])||h&&!o[3]?u=\"\":(u=h?\"+\":\"-\",i=i.toString().replace(d.sign,\"\")),a=o[4]?\"0\"===o[4]?\"0\":o[4].charAt(1):\" \",l=o[6]-(u+i).length,s=o[6]&&0<l?a.repeat(l):\"\",p+=o[5]?u+i+s:\"0\"===a?u+s+i:s+u+i)}return p}(function(t){if(l[t])return l[t];for(var e,i=t,n=[],r=0;i;){if(null!==(e=d.text.exec(i)))n.push(e[0]);else if(null!==(e=d.modulo.exec(i)))n.push(\"%\");else{if(null===(e=d.placeholder.exec(i)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(e[2]){r|=1;var o=[],s=e[2],a=[];if(null===(a=d.key.exec(s)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o.push(a[1]);\"\"!==(s=s.substring(a[0].length));)if(null!==(a=d.key_access.exec(s)))o.push(a[1]);else{if(null===(a=d.index_access.exec(s)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o.push(a[1])}e[2]=o}else r|=2;if(3===r)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");n.push(e)}i=i.substring(e[0].length)}return l[t]=n}(t),arguments)}function t(t,e){return f.apply(null,[t].concat(e||[]))}var l=Object.create(null);void 0!==i&&(i.sprintf=f,i.vsprintf=t),\"undefined\"!=typeof window&&(window.sprintf=f,window.vsprintf=t)}()},function(t,e,i){!function(t){\"object\"==typeof e&&e.exports?e.exports=t():this.tz=t()}(function(){function d(t,e,i){for(var n,r=e.day[1];n=new Date(Date.UTC(i,e.month,Math.abs(r++))),e.day[0]<7&&n.getUTCDay()!=e.day[0];);return(n={clock:e.clock,sort:n.getTime(),rule:e,save:6e4*e.save,offset:t.offset})[n.clock]=n.sort+6e4*e.time,n.posix?n.wallclock=n[n.clock]+(t.offset+e.saved):n.posix=n[n.clock]-(t.offset+e.saved),n}function r(t,e,i){var n,r,o,s,a,l,h,u=t[t.zone],c=[],_=new Date(i).getUTCFullYear(),p=1;for(n=1,r=u.length;n<r&&!(u[n][e]<=i);n++);if((o=u[n]).rules){for(l=t[o.rules],h=_+1;_-p<=h;--h)for(n=0,r=l.length;n<r;n++)l[n].from<=h&&h<=l[n].to?c.push(d(o,l[n],h)):l[n].to<h&&1==p&&(p=h-l[n].to);for(c.sort(function(t,e){return t.sort-e.sort}),n=0,r=c.length;n<r;n++)i>=c[n][e]&&c[n][c[n].clock]>o[c[n].clock]&&(s=c[n])}return s&&((a=/^(.*)\\/(.*)$/.exec(o.format))?s.abbrev=a[s.save?2:1]:s.abbrev=o.format.replace(/%s/,s.rule.letter)),s||o}function a(t,e){return\"UTC\"==t.zone?e:(t.entry=r(t,\"posix\",e),e+t.entry.offset+t.entry.save)}function c(t,e){return\"UTC\"==t.zone?e:(t.entry=i=r(t,\"wallclock\",e),0<(n=e-i.wallclock)&&n<i.save?null:e-i.offset-i.save);var i,n}function o(t,e,i){var n,r=+(i[1]+1),o=i[2]*r,s=l.indexOf(i[3].toLowerCase());if(9<s)e+=o*h[s-10];else{if(n=new Date(a(t,e)),s<7)for(;o;)n.setUTCDate(n.getUTCDate()+r),n.getUTCDay()==s&&(o-=r);else 7==s?n.setUTCFullYear(n.getUTCFullYear()+o):8==s?n.setUTCMonth(n.getUTCMonth()+o):n.setUTCDate(n.getUTCDate()+o);null==(e=c(t,n.getTime()))&&(e=c(t,n.getTime()+864e5*r)-864e5*r)}return e}var e={clock:function(){return+new Date},zone:\"UTC\",entry:{abbrev:\"UTC\",offset:0,save:0},UTC:1,z:function(t,e,i,n){var r,o,s=this.entry.offset+this.entry.save,a=Math.abs(s/1e3),l=[],h=3600;for(r=0;r<3;r++)l.push((\"0\"+Math.floor(a/h)).slice(-2)),a%=h,h/=60;return\"^\"!=i||s?(\"^\"==i&&(n=3),3==n?(o=(o=l.join(\":\")).replace(/:00$/,\"\"),\"^\"!=i&&(o=o.replace(/:00$/,\"\"))):n?(o=l.slice(0,n+1).join(\":\"),\"^\"==i&&(o=o.replace(/:00$/,\"\"))):o=l.slice(0,2).join(\"\"),o=(o=(s<0?\"-\":\"+\")+o).replace(/([-+])(0)/,{_:\" $1\",\"-\":\"$1\"}[i]||\"$1$2\")):\"Z\"},\"%\":function(t){return\"%\"},n:function(t){return\"\\n\"},t:function(t){return\"\\t\"},U:function(t){return u(t,0)},W:function(t){return u(t,1)},V:function(t){return i(t)[0]},G:function(t){return i(t)[1]},g:function(t){return i(t)[1]%100},j:function(t){return Math.floor((t.getTime()-Date.UTC(t.getUTCFullYear(),0))/864e5)+1},s:function(t){return Math.floor(t.getTime()/1e3)},C:function(t){return Math.floor(t.getUTCFullYear()/100)},N:function(t){return t.getTime()%1e3*1e6},m:function(t){return t.getUTCMonth()+1},Y:function(t){return t.getUTCFullYear()},y:function(t){return t.getUTCFullYear()%100},H:function(t){return t.getUTCHours()},M:function(t){return t.getUTCMinutes()},S:function(t){return t.getUTCSeconds()},e:function(t){return t.getUTCDate()},d:function(t){return t.getUTCDate()},u:function(t){return t.getUTCDay()||7},w:function(t){return t.getUTCDay()},l:function(t){return t.getUTCHours()%12||12},I:function(t){return t.getUTCHours()%12||12},k:function(t){return t.getUTCHours()},Z:function(t){return this.entry.abbrev},a:function(t){return this[this.locale].day.abbrev[t.getUTCDay()]},A:function(t){return this[this.locale].day.full[t.getUTCDay()]},h:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},b:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},B:function(t){return this[this.locale].month.full[t.getUTCMonth()]},P:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)].toLowerCase()},p:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)]},R:function(t,e){return this.convert([e,\"%H:%M\"])},T:function(t,e){return this.convert([e,\"%H:%M:%S\"])},D:function(t,e){return this.convert([e,\"%m/%d/%y\"])},F:function(t,e){return this.convert([e,\"%Y-%m-%d\"])},x:function(t,e){return this.convert([e,this[this.locale].date])},r:function(t,e){return this.convert([e,this[this.locale].time12||\"%I:%M:%S\"])},X:function(t,e){return this.convert([e,this[this.locale].time24])},c:function(t,e){return this.convert([e,this[this.locale].dateTime])},convert:function(t){if(!t.length)return\"1.0.13\";var e,i,l,n,h,u=Object.create(this),r=[];for(e=0;e<t.length;e++)if(n=t[e],Array.isArray(n))e||isNaN(n[1])?n.splice.apply(t,[e--,1].concat(n)):h=n;else if(isNaN(n)){if(\"string\"==(l=typeof n))~n.indexOf(\"%\")?u.format=n:e||\"*\"!=n?!e&&(l=/^(\\d{4})-(\\d{2})-(\\d{2})(?:[T\\s](\\d{2}):(\\d{2})(?::(\\d{2})(?:\\.(\\d+))?)?(Z|(([+-])(\\d{2}(:\\d{2}){0,2})))?)?$/.exec(n))?((h=[]).push.apply(h,l.slice(1,8)),l[9]?(h.push(l[10]+1),h.push.apply(h,l[11].split(/:/))):l[8]&&h.push(1)):/^\\w{2,3}_\\w{2}$/.test(n)?u.locale=n:(l=s.exec(n))?r.push(l):u.zone=n:h=n;else if(\"function\"==l){if(l=n.call(u))return l}else if(/^\\w{2,3}_\\w{2}$/.test(n.name))u[n.name]=n;else if(n.zones){for(l in n.zones)u[l]=n.zones[l];for(l in n.rules)u[l]=n.rules[l]}}else e||(h=n);if(u[u.locale]||delete u.locale,u[u.zone]||delete u.zone,null!=h){if(\"*\"==h)h=u.clock();else if(Array.isArray(h)){for(l=[],i=!h[7],e=0;e<11;e++)l[e]=+(h[e]||0);--l[1],h=Date.UTC.apply(Date.UTC,l)+-l[7]*(36e5*l[8]+6e4*l[9]+1e3*l[10])}else h=Math.floor(h);if(!isNaN(h)){if(i&&(h=c(u,h)),null==h)return h;for(e=0,i=r.length;e<i;e++)h=o(u,h,r[e]);return u.format?(l=new Date(a(u,h)),u.format.replace(/%([-0_^]?)(:{0,3})(\\d*)(.)/g,function(t,e,i,n,r){var o,s,a=\"0\";if(o=u[r]){for(t=String(o.call(u,l,h,e,i.length)),\"_\"==(e||o.style)&&(a=\" \"),s=\"-\"==e?0:o.pad||0;t.length<s;)t=a+t;for(s=\"-\"==e?0:n||o.pad;t.length<s;)t=a+t;\"N\"==r&&s<t.length&&(t=t.slice(0,s)),\"^\"==e&&(t=t.toUpperCase())}return t})):h}}return function(){return u.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(\"|\")}}},l=\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|year|month|day|hour|minute|second|millisecond\",s=new RegExp(\"^\\\\s*([+-])(\\\\d+)\\\\s+(\"+l+\")s?\\\\s*$\",\"i\"),h=[36e5,6e4,1e3,1];function u(t,e){var i,n,r;return n=new Date(Date.UTC(t.getUTCFullYear(),0)),i=Math.floor((t.getTime()-n.getTime())/864e5),n.getUTCDay()==e?r=0:8==(r=7-n.getUTCDay()+e)&&(r=1),r<=i?Math.floor((i-r)/7)+1:0}function i(t){var e,i,n;return i=t.getUTCFullYear(),e=new Date(Date.UTC(i,0)).getUTCDay(),(n=u(t,1)+(1<e&&e<=4?1:0))?53!=n||4==e||3==e&&29==new Date(i,1,29).getDate()?[n,t.getUTCFullYear()]:[1,t.getUTCFullYear()+1]:(i=t.getUTCFullYear()-1,e=new Date(Date.UTC(i,0)).getUTCDay(),[n=4==e||3==e&&29==new Date(i,1,29).getDate()?53:52,t.getUTCFullYear()-1])}return l=l.toLowerCase().split(\"|\"),\"delmHMSUWVgCIky\".replace(/./g,function(t){e[t].pad=2}),e.N.pad=9,e.j.pad=3,e.k.style=\"_\",e.l.style=\"_\",e.e.style=\"_\",function(){return e.convert(arguments)}})},function(t,n,e){\n",
397
+       "      /*! *****************************************************************************\n",
398
+       "          Copyright (c) Microsoft Corporation. All rights reserved.\n",
399
+       "          Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use\n",
400
+       "          this file except in compliance with the License. You may obtain a copy of the\n",
401
+       "          License at http://www.apache.org/licenses/LICENSE-2.0\n",
402
+       "          \n",
403
+       "          THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n",
404
+       "          KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\n",
405
+       "          WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\n",
406
+       "          MERCHANTABLITY OR NON-INFRINGEMENT.\n",
407
+       "          \n",
408
+       "          See the Apache Version 2.0 License for specific language governing permissions\n",
409
+       "          and limitations under the License.\n",
410
+       "          ***************************************************************************** */\n",
411
+       "      var i,r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x;!function(t){var e=\"object\"==typeof global?global:\"object\"==typeof self?self:\"object\"==typeof this?this:{};function i(i,n){return i!==e&&(\"function\"==typeof Object.create?Object.defineProperty(i,\"__esModule\",{value:!0}):i.__esModule=!0),function(t,e){return i[t]=n?n(t,e):e}}\"object\"==typeof n&&\"object\"==typeof n.exports?t(i(e,i(n.exports))):t(i(e))}(function(t){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])};i=function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t},o=function(t,e){var i={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols)for(var r=0,n=Object.getOwnPropertySymbols(t);r<n.length;r++)e.indexOf(n[r])<0&&(i[n[r]]=t[n[r]]);return i},s=function(t,e,i,n){var r,o=arguments.length,s=o<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,n);else for(var a=t.length-1;0<=a;a--)(r=t[a])&&(s=(o<3?r(s):3<o?r(e,i,s):r(e,i))||s);return 3<o&&s&&Object.defineProperty(e,i,s),s},a=function(i,n){return function(t,e){n(t,e,i)}},l=function(t,e){if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.metadata)return Reflect.metadata(t,e)},h=function(o,s,a,l){return new(a||(a=Promise))(function(t,e){function i(t){try{r(l.next(t))}catch(t){e(t)}}function n(t){try{r(l.throw(t))}catch(t){e(t)}}function r(e){e.done?t(e.value):new a(function(t){t(e.value)}).then(i,n)}r((l=l.apply(o,s||[])).next())})},u=function(i,n){var r,o,s,t,a={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return t={next:e(0),throw:e(1),return:e(2)},\"function\"==typeof Symbol&&(t[Symbol.iterator]=function(){return this}),t;function e(e){return function(t){return function(e){if(r)throw new TypeError(\"Generator is already executing.\");for(;a;)try{if(r=1,o&&(s=2&e[0]?o.return:e[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,e[1])).done)return s;switch(o=0,s&&(e=[2&e[0],s.value]),e[0]){case 0:case 1:s=e;break;case 4:return a.label++,{value:e[1],done:!1};case 5:a.label++,o=e[1],e=[0];continue;case 7:e=a.ops.pop(),a.trys.pop();continue;default:if(!(s=0<(s=a.trys).length&&s[s.length-1])&&(6===e[0]||2===e[0])){a=0;continue}if(3===e[0]&&(!s||e[1]>s[0]&&e[1]<s[3])){a.label=e[1];break}if(6===e[0]&&a.label<s[1]){a.label=s[1],s=e;break}if(s&&a.label<s[2]){a.label=s[2],a.ops.push(e);break}s[2]&&a.ops.pop(),a.trys.pop();continue}e=n.call(i,a)}catch(t){e=[6,t],o=0}finally{r=s=0}if(5&e[0])throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}([e,t])}}},c=function(t,e){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])},_=function(t){var e=\"function\"==typeof Symbol&&t[Symbol.iterator],i=0;return e?e.call(t):{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}}},p=function(t,e){var i=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,r,o=i.call(t),s=[];try{for(;(void 0===e||0<e--)&&!(n=o.next()).done;)s.push(n.value)}catch(t){r={error:t}}finally{try{n&&!n.done&&(i=o.return)&&i.call(o)}finally{if(r)throw r.error}}return s},d=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(p(arguments[e]));return t},f=function(t){return this instanceof f?(this.v=t,this):new f(t)},v=function(t,e,i){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var r,o=i.apply(t,e||[]),s=[];return r={},n(\"next\"),n(\"throw\"),n(\"return\"),r[Symbol.asyncIterator]=function(){return this},r;function n(n){o[n]&&(r[n]=function(i){return new Promise(function(t,e){1<s.push([n,i,t,e])||a(n,i)})})}function a(t,e){try{(i=o[t](e)).value instanceof f?Promise.resolve(i.value.v).then(l,h):u(s[0][2],i)}catch(t){u(s[0][3],t)}var i}function l(t){a(\"next\",t)}function h(t){a(\"throw\",t)}function u(t,e){t(e),s.shift(),s.length&&a(s[0][0],s[0][1])}},m=function(n){var t,r;return t={},e(\"next\"),e(\"throw\",function(t){throw t}),e(\"return\"),t[Symbol.iterator]=function(){return this},t;function e(e,i){t[e]=n[e]?function(t){return(r=!r)?{value:f(n[e](t)),done:\"return\"===e}:i?i(t):t}:i}},g=function(l){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var t,e=l[Symbol.asyncIterator];return e?e.call(l):(l=_(l),t={},i(\"next\"),i(\"throw\"),i(\"return\"),t[Symbol.asyncIterator]=function(){return this},t);function i(a){t[a]=l[a]&&function(s){return new Promise(function(t,e){var i,n,r,o;s=l[a](s),i=t,n=e,r=s.done,o=s.value,Promise.resolve(o).then(function(t){i({value:t,done:r})},n)})}}},y=function(t,e){return Object.defineProperty?Object.defineProperty(t,\"raw\",{value:e}):t.raw=e,t},b=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e},x=function(t){return t&&t.__esModule?t:{default:t}},t(\"__extends\",i),t(\"__assign\",r),t(\"__rest\",o),t(\"__decorate\",s),t(\"__param\",a),t(\"__metadata\",l),t(\"__awaiter\",h),t(\"__generator\",u),t(\"__exportStar\",c),t(\"__values\",_),t(\"__read\",p),t(\"__spread\",d),t(\"__await\",f),t(\"__asyncGenerator\",v),t(\"__asyncDelegator\",m),t(\"__asyncValues\",g),t(\"__makeTemplateObject\",y),t(\"__importStar\",b),t(\"__importDefault\",x)})}],s={base:0,\"client/connection\":1,\"client/session\":2,\"core/bokeh_events\":3,\"core/build_views\":4,\"core/dom\":5,\"core/dom_view\":6,\"core/enums\":7,\"core/has_props\":8,\"core/hittest\":9,\"core/layout/alignments\":10,\"core/layout/layout_canvas\":11,\"core/layout/side_panel\":12,\"core/layout/solver\":13,\"core/logging\":14,\"core/properties\":15,\"core/property_mixins\":16,\"core/selection_manager\":17,\"core/settings\":18,\"core/signaling\":19,\"core/ui_events\":20,\"core/util/array\":21,\"core/util/arrayable\":22,\"core/util/assert\":23,\"core/util/bbox\":24,\"core/util/callback\":25,\"core/util/canvas\":26,\"core/util/color\":27,\"core/util/compat\":28,\"core/util/data_structures\":29,\"core/util/eq\":30,\"core/util/math\":31,\"core/util/object\":32,\"core/util/projections\":33,\"core/util/refs\":34,\"core/util/selection\":35,\"core/util/serialization\":36,\"core/util/spatial\":37,\"core/util/string\":38,\"core/util/svg_colors\":39,\"core/util/templating\":40,\"core/util/text\":41,\"core/util/throttle\":42,\"core/util/typed_array\":43,\"core/util/types\":44,\"core/util/wheel\":45,\"core/util/zoom\":46,\"core/vectorization\":47,\"core/view\":48,\"core/visuals\":49,\"document/document\":50,\"document/events\":51,\"document/index\":52,\"embed/dom\":53,\"embed/index\":54,\"embed/notebook\":55,\"embed/server\":56,\"embed/standalone\":57,main:58,model:59,\"models/annotations/annotation\":60,\"models/annotations/arrow\":61,\"models/annotations/arrow_head\":62,\"models/annotations/band\":63,\"models/annotations/box_annotation\":64,\"models/annotations/color_bar\":65,\"models/annotations/index\":66,\"models/annotations/label\":67,\"models/annotations/label_set\":68,\"models/annotations/legend\":69,\"models/annotations/legend_item\":70,\"models/annotations/poly_annotation\":71,\"models/annotations/slope\":72,\"models/annotations/span\":73,\"models/annotations/text_annotation\":74,\"models/annotations/title\":75,\"models/annotations/toolbar_panel\":76,\"models/annotations/tooltip\":77,\"models/annotations/whisker\":78,\"models/axes/axis\":79,\"models/axes/categorical_axis\":80,\"models/axes/continuous_axis\":81,\"models/axes/datetime_axis\":82,\"models/axes/index\":83,\"models/axes/linear_axis\":84,\"models/axes/log_axis\":85,\"models/axes/mercator_axis\":86,\"models/callbacks/callback\":87,\"models/callbacks/customjs\":88,\"models/callbacks/index\":89,\"models/callbacks/open_url\":90,\"models/canvas/canvas\":91,\"models/canvas/cartesian_frame\":92,\"models/canvas/index\":93,\"models/expressions/cumsum\":94,\"models/expressions/expression\":95,\"models/expressions/index\":96,\"models/expressions/stack\":97,\"models/filters/boolean_filter\":98,\"models/filters/customjs_filter\":99,\"models/filters/filter\":100,\"models/filters/group_filter\":101,\"models/filters/index\":102,\"models/filters/index_filter\":103,\"models/formatters/basic_tick_formatter\":104,\"models/formatters/categorical_tick_formatter\":105,\"models/formatters/datetime_tick_formatter\":106,\"models/formatters/func_tick_formatter\":107,\"models/formatters/index\":108,\"models/formatters/log_tick_formatter\":109,\"models/formatters/mercator_tick_formatter\":110,\"models/formatters/numeral_tick_formatter\":111,\"models/formatters/printf_tick_formatter\":112,\"models/formatters/tick_formatter\":113,\"models/glyphs/annular_wedge\":114,\"models/glyphs/annulus\":115,\"models/glyphs/arc\":116,\"models/glyphs/bezier\":117,\"models/glyphs/box\":118,\"models/glyphs/center_rotatable\":119,\"models/glyphs/circle\":120,\"models/glyphs/ellipse\":121,\"models/glyphs/ellipse_oval\":122,\"models/glyphs/glyph\":123,\"models/glyphs/hbar\":124,\"models/glyphs/hex_tile\":125,\"models/glyphs/image\":126,\"models/glyphs/image_rgba\":127,\"models/glyphs/image_url\":128,\"models/glyphs/index\":129,\"models/glyphs/line\":130,\"models/glyphs/multi_line\":131,\"models/glyphs/multi_polygons\":132,\"models/glyphs/oval\":133,\"models/glyphs/patch\":134,\"models/glyphs/patches\":135,\"models/glyphs/quad\":136,\"models/glyphs/quadratic\":137,\"models/glyphs/ray\":138,\"models/glyphs/rect\":139,\"models/glyphs/segment\":140,\"models/glyphs/step\":141,\"models/glyphs/text\":142,\"models/glyphs/utils\":143,\"models/glyphs/vbar\":144,\"models/glyphs/wedge\":145,\"models/glyphs/xy_glyph\":146,\"models/graphs/graph_hit_test_policy\":147,\"models/graphs/index\":148,\"models/graphs/layout_provider\":149,\"models/graphs/static_layout_provider\":150,\"models/grids/grid\":151,\"models/grids/index\":152,\"models/index\":153,\"models/layouts/box\":154,\"models/layouts/column\":155,\"models/layouts/index\":156,\"models/layouts/layout_dom\":157,\"models/layouts/row\":158,\"models/layouts/spacer\":159,\"models/layouts/widget_box\":160,\"models/mappers/categorical_color_mapper\":161,\"models/mappers/categorical_mapper\":162,\"models/mappers/categorical_marker_mapper\":163,\"models/mappers/color_mapper\":164,\"models/mappers/continuous_color_mapper\":165,\"models/mappers/index\":166,\"models/mappers/linear_color_mapper\":167,\"models/mappers/log_color_mapper\":168,\"models/mappers/mapper\":169,\"models/markers/defs\":170,\"models/markers/index\":171,\"models/markers/marker\":172,\"models/markers/scatter\":173,\"models/plots/gmap_plot\":174,\"models/plots/gmap_plot_canvas\":175,\"models/plots/index\":176,\"models/plots/plot\":177,\"models/plots/plot_canvas\":178,\"models/ranges/data_range\":179,\"models/ranges/data_range1d\":180,\"models/ranges/factor_range\":181,\"models/ranges/index\":182,\"models/ranges/range\":183,\"models/ranges/range1d\":184,\"models/renderers/glyph_renderer\":185,\"models/renderers/graph_renderer\":186,\"models/renderers/guide_renderer\":187,\"models/renderers/index\":188,\"models/renderers/renderer\":189,\"models/scales/categorical_scale\":190,\"models/scales/index\":191,\"models/scales/linear_scale\":192,\"models/scales/log_scale\":193,\"models/scales/scale\":194,\"models/selections/index\":195,\"models/selections/interaction_policy\":196,\"models/selections/selection\":197,\"models/sources/ajax_data_source\":198,\"models/sources/cds_view\":199,\"models/sources/column_data_source\":200,\"models/sources/columnar_data_source\":201,\"models/sources/data_source\":202,\"models/sources/geojson_data_source\":203,\"models/sources/index\":204,\"models/sources/remote_data_source\":205,\"models/tickers/adaptive_ticker\":206,\"models/tickers/basic_ticker\":207,\"models/tickers/categorical_ticker\":208,\"models/tickers/composite_ticker\":209,\"models/tickers/continuous_ticker\":210,\"models/tickers/datetime_ticker\":211,\"models/tickers/days_ticker\":212,\"models/tickers/fixed_ticker\":213,\"models/tickers/index\":214,\"models/tickers/log_ticker\":215,\"models/tickers/mercator_ticker\":216,\"models/tickers/months_ticker\":217,\"models/tickers/single_interval_ticker\":218,\"models/tickers/ticker\":219,\"models/tickers/util\":220,\"models/tickers/years_ticker\":221,\"models/tiles/bbox_tile_source\":222,\"models/tiles/image_pool\":223,\"models/tiles/index\":224,\"models/tiles/mercator_tile_source\":225,\"models/tiles/quadkey_tile_source\":226,\"models/tiles/tile_renderer\":227,\"models/tiles/tile_source\":228,\"models/tiles/tile_utils\":229,\"models/tiles/tms_tile_source\":230,\"models/tiles/wmts_tile_source\":231,\"models/tools/actions/action_tool\":232,\"models/tools/actions/custom_action\":233,\"models/tools/actions/help_tool\":234,\"models/tools/actions/redo_tool\":235,\"models/tools/actions/reset_tool\":236,\"models/tools/actions/save_tool\":237,\"models/tools/actions/undo_tool\":238,\"models/tools/actions/zoom_in_tool\":239,\"models/tools/actions/zoom_out_tool\":240,\"models/tools/button_tool\":241,\"models/tools/edit/box_edit_tool\":242,\"models/tools/edit/edit_tool\":243,\"models/tools/edit/freehand_draw_tool\":244,\"models/tools/edit/point_draw_tool\":245,\"models/tools/edit/poly_draw_tool\":246,\"models/tools/edit/poly_edit_tool\":247,\"models/tools/edit/poly_tool\":248,\"models/tools/gestures/box_select_tool\":249,\"models/tools/gestures/box_zoom_tool\":250,\"models/tools/gestures/gesture_tool\":251,\"models/tools/gestures/lasso_select_tool\":252,\"models/tools/gestures/pan_tool\":253,\"models/tools/gestures/poly_select_tool\":254,\"models/tools/gestures/range_tool\":255,\"models/tools/gestures/select_tool\":256,\"models/tools/gestures/tap_tool\":257,\"models/tools/gestures/wheel_pan_tool\":258,\"models/tools/gestures/wheel_zoom_tool\":259,\"models/tools/index\":260,\"models/tools/inspectors/crosshair_tool\":261,\"models/tools/inspectors/customjs_hover\":262,\"models/tools/inspectors/hover_tool\":263,\"models/tools/inspectors/inspect_tool\":264,\"models/tools/on_off_button\":265,\"models/tools/tool\":266,\"models/tools/tool_proxy\":267,\"models/tools/toolbar\":268,\"models/tools/toolbar_base\":269,\"models/tools/toolbar_box\":270,\"models/tools/util\":271,\"models/transforms/customjs_transform\":272,\"models/transforms/dodge\":273,\"models/transforms/index\":274,\"models/transforms/interpolator\":275,\"models/transforms/jitter\":276,\"models/transforms/linear_interpolator\":277,\"models/transforms/step_interpolator\":278,\"models/transforms/transform\":279,polyfill:280,\"protocol/index\":281,\"protocol/message\":282,\"protocol/receiver\":283,safely:284,testing:285,version:286},r={},(l=(a=function(t){var e=null!=s[t]?s[t]:t;if(!r[e]){if(!o[e]){var i=new Error(\"Cannot find module '\"+t+\"'\");throw i.code=\"MODULE_NOT_FOUND\",i}var n=r[e]={exports:{}};o[e].call(n.exports,a,n,n.exports)}return r[e].exports})(58)).require=a,l.register_plugin=function(t,e,i){for(var n in t)o[n]=t[n];for(var n in e)s[n]=e[n];var r=a(i);for(var n in r)l[n]=r[n];return r},l)}(this);\n",
412
+       "      //# sourceMappingURL=bokeh.min.js.map\n",
413
+       "      /* END bokeh.min.js */\n",
414
+       "    },\n",
415
+       "    \n",
416
+       "    function(Bokeh) {\n",
417
+       "      /* BEGIN bokeh-widgets.min.js */\n",
418
+       "      /*!\n",
419
+       "       * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n",
420
+       "       * All rights reserved.\n",
421
+       "       * \n",
422
+       "       * Redistribution and use in source and binary forms, with or without modification,\n",
423
+       "       * are permitted provided that the following conditions are met:\n",
424
+       "       * \n",
425
+       "       * Redistributions of source code must retain the above copyright notice,\n",
426
+       "       * this list of conditions and the following disclaimer.\n",
427
+       "       * \n",
428
+       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
429
+       "       * this list of conditions and the following disclaimer in the documentation\n",
430
+       "       * and/or other materials provided with the distribution.\n",
431
+       "       * \n",
432
+       "       * Neither the name of Anaconda nor the names of any contributors\n",
433
+       "       * may be used to endorse or promote products derived from this software\n",
434
+       "       * without specific prior written permission.\n",
435
+       "       * \n",
436
+       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
437
+       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
438
+       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
439
+       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
440
+       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
441
+       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
442
+       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
443
+       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
444
+       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
445
+       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
446
+       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
447
+       "       */\n",
448
+       "      !function(t,e){var i;i=t.Bokeh,function(t,e,n){if(null!=i)return i.register_plugin(t,{\"core/menus\":400,\"models/widgets/abstract_button\":401,\"models/widgets/abstract_icon\":402,\"models/widgets/abstract_slider\":403,\"models/widgets/autocomplete_input\":404,\"models/widgets/button\":405,\"models/widgets/checkbox_button_group\":406,\"models/widgets/checkbox_group\":407,\"models/widgets/date_picker\":408,\"models/widgets/date_range_slider\":409,\"models/widgets/date_slider\":410,\"models/widgets/div\":411,\"models/widgets/dropdown\":412,\"models/widgets/index\":413,\"models/widgets/input_widget\":414,\"models/widgets/main\":415,\"models/widgets/markup\":416,\"models/widgets/multiselect\":417,\"models/widgets/panel\":418,\"models/widgets/paragraph\":419,\"models/widgets/password_input\":420,\"models/widgets/pretext\":421,\"models/widgets/radio_button_group\":422,\"models/widgets/radio_group\":423,\"models/widgets/range_slider\":424,\"models/widgets/selectbox\":425,\"models/widgets/slider\":426,\"models/widgets/tabs\":427,\"models/widgets/text_input\":428,\"models/widgets/toggle\":429,\"models/widgets/widget\":440},415);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")}({400:function(t,e,n){var i=t(19);n.clear_menus=new i.Signal0({},\"clear_menus\"),document.addEventListener(\"click\",function(){return n.clear_menus.emit()})},401:function(t,e,n){var i=t(391),r=t(15),o=t(5),s=t(4),a=t(440),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.icon_views={},this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.remove=function(){s.remove_views(this.icon_views),n.prototype.remove.call(this)},t.prototype._render_button=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return o.button.apply(void 0,[{type:\"button\",disabled:this.model.disabled,class:[\"bk-bs-btn\",\"bk-bs-btn-\"+this.model.button_type]}].concat(t))},t.prototype.render=function(){var e=this;n.prototype.render.call(this),o.empty(this.el),this.buttonEl=this._render_button(this.model.label),this.buttonEl.addEventListener(\"click\",function(t){return e._button_click(t)}),this.el.appendChild(this.buttonEl);var t=this.model.icon;null!=t&&(s.build_views(this.icon_views,[t],{parent:this}),o.prepend(this.buttonEl,this.icon_views[t.id].el,o.nbsp))},t.prototype._button_click=function(t){t.preventDefault(),this.change_input()},t.prototype.change_input=function(){null!=this.model.callback&&this.model.callback.execute(this.model)},t}(a.WidgetView);n.AbstractButtonView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AbstractButton\",this.define({label:[r.String,\"Button\"],icon:[r.Instance],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(a.Widget);(n.AbstractButton=u).initClass()},402:function(t,e,n){var i=t(391),r=t(440),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e}(r.WidgetView);n.AbstractIconView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AbstractIcon\"},t}(r.Widget);(n.AbstractIcon=s).initClass()},403:function(t,e,n){var i=t(391),f=t(431),r=t(15),m=t(5),v=t(14),g=t(21),y=t(25),o=t(440),s=function(p){function t(){return null!==p&&p.apply(this,arguments)||this}return i.__extends(t,p),t.prototype.initialize=function(t){p.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;p.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var r=this;if(null==this.sliderEl&&p.prototype.render.call(this),null!=this.model.callback){var t=function(){return r.model.callback.execute(r.model)};switch(this.model.callback_policy){case\"continuous\":this.callback_wrapper=t;break;case\"throttle\":this.callback_wrapper=y.throttle(t,this.model.callback_throttle)}}var e,o=\"bk-noUi-\",n=this._calc_to(),i=n.start,s=n.end,a=n.value,l=n.step;if(this.model.tooltips){var u={to:function(t){return r.model.pretty(t)}};e=g.repeat(u,a.length)}else e=!1;if(this.el.classList.add(\"bk-slider\"),null==this.sliderEl){this.sliderEl=m.div(),this.el.appendChild(this.sliderEl),f.create(this.sliderEl,{cssPrefix:o,range:{min:i,max:s},start:a,step:l,behaviour:this.model.behaviour,connect:this.model.connected,tooltips:e,orientation:this.model.orientation,direction:this.model.direction}),this.sliderEl.noUiSlider.on(\"slide\",function(t,e,n){return r._slide(n)}),this.sliderEl.noUiSlider.on(\"change\",function(t,e,n){return r._change(n)});var c=this.sliderEl.querySelector(\".\"+o+\"handle\");c.setAttribute(\"tabindex\",\"0\"),c.addEventListener(\"keydown\",function(t){var e=r._calc_to().value[0];switch(t.which){case 37:e=Math.max(e-l,i);break;case 39:e=Math.min(e+l,s);break;default:return}var n=r.model.pretty(e);v.logger.debug(\"[slider keypress] value = \"+n),r.model.value=e,r.sliderEl.noUiSlider.set(e),null!=r.valueEl&&(r.valueEl.textContent=n),null!=r.callback_wrapper&&r.callback_wrapper()});var d=function(t,e){var n=r.sliderEl.querySelectorAll(\".\"+o+\"handle\")[t],i=n.querySelector(\".\"+o+\"tooltip\");i.style.display=e?\"block\":\"\"};this.sliderEl.noUiSlider.on(\"start\",function(t,e){return d(e,!0)}),this.sliderEl.noUiSlider.on(\"end\",function(t,e){return d(e,!1)})}else this.sliderEl.noUiSlider.updateOptions({range:{min:i,max:s},start:a,step:l});if(null!=this.titleEl&&this.el.removeChild(this.titleEl),null!=this.valueEl&&this.el.removeChild(this.valueEl),null!=this.model.title&&(0!=this.model.title.length&&(this.titleEl=m.label({},this.model.title+\":\"),this.el.insertBefore(this.titleEl,this.sliderEl)),this.model.show_value)){var h=a.map(function(t){return r.model.pretty(t)}).join(\" .. \");this.valueEl=m.div({class:\"bk-slider-value\"},h),this.el.insertBefore(this.valueEl,this.sliderEl)}this.model.disabled||(this.sliderEl.querySelector(\".\"+o+\"connect\").style.backgroundColor=this.model.bar_color),this.model.disabled?this.sliderEl.setAttribute(\"disabled\",\"true\"):this.sliderEl.removeAttribute(\"disabled\")},t.prototype._slide=function(t){var e=this,n=this._calc_from(t),i=t.map(function(t){return e.model.pretty(t)}).join(\" .. \");v.logger.debug(\"[slider slide] value = \"+i),null!=this.valueEl&&(this.valueEl.textContent=i),this.model.value=n,null!=this.callback_wrapper&&this.callback_wrapper()},t.prototype._change=function(t){var e=this,n=this._calc_from(t),i=t.map(function(t){return e.model.pretty(t)}).join(\" .. \");switch(v.logger.debug(\"[slider change] value = \"+i),null!=this.valueEl&&(this.valueEl.dataset.value=i),this.model.value=n,this.model.callback_policy){case\"mouseup\":case\"throttle\":null!=this.model.callback&&this.model.callback.execute(this.model)}},t}(o.WidgetView);n.AbstractSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.connected=!1,e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"AbstractSlider\",this.define({title:[r.String,\"\"],show_value:[r.Bool,!0],start:[r.Any],end:[r.Any],value:[r.Any],step:[r.Number,1],format:[r.String],orientation:[r.Orientation,\"horizontal\"],direction:[r.Any,\"ltr\"],tooltips:[r.Boolean,!0],callback:[r.Instance],callback_throttle:[r.Number,200],callback_policy:[r.String,\"throttle\"],bar_color:[r.Color,\"#e6e6e6\"]})},t.prototype._formatter=function(t,e){return\"\"+t},t.prototype.pretty=function(t){return this._formatter(t,this.format)},t}(o.Widget);(n.AbstractSlider=a).initClass()},404:function(t,e,n){var i=t(391),r=t(428),s=t(5),o=t(400),a=t(15),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),o.clear_menus.connect(function(){return t._clear_menu()})},t.prototype.render=function(){var e=this;n.prototype.render.call(this),this.inputEl.classList.add(\"bk-autocomplete-input\"),this.inputEl.addEventListener(\"keydown\",function(t){return e._keydown(t)}),this.inputEl.addEventListener(\"keyup\",function(t){return e._keyup(t)}),this.menuEl=s.ul({class:\"bk-bs-dropdown-menu\"}),this.menuEl.addEventListener(\"click\",function(t){return e._item_click(t)}),this.el.appendChild(this.menuEl)},t.prototype._render_items=function(t){s.empty(this.menuEl);for(var e=0,n=t;e<n.length;e++){var i=n[e],r=s.li({},s.a({data:{text:i}},i));this.menuEl.appendChild(r)}},t.prototype._open_menu=function(){this.el.classList.add(\"bk-bs-open\")},t.prototype._clear_menu=function(){this.el.classList.remove(\"bk-bs-open\")},t.prototype._item_click=function(t){if(t.preventDefault(),t.target!=t.currentTarget){var e=t.target,n=e.dataset.text;this.model.value=n}},t.prototype._keydown=function(t){},t.prototype._keyup=function(t){switch(t.keyCode){case s.Keys.Enter:console.log(\"enter\");break;case s.Keys.Esc:this._clear_menu();break;case s.Keys.Up:case s.Keys.Down:console.log(\"up/down\");break;default:var e=this.inputEl.value;if(e.length<=1)return void this._clear_menu();for(var n=[],i=0,r=this.model.completions;i<r.length;i++){var o=r[i];-1!=o.indexOf(e)&&n.push(o)}0==n.length?this._clear_menu():(this._render_items(n),this._open_menu())}},t}(r.TextInputView);n.AutocompleteInputView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AutocompleteInput\",this.prototype.default_view=l,this.define({completions:[a.Array,[]]}),this.internal({active:[a.Boolean,!0]})},t}(r.TextInput);(n.AutocompleteInput=u).initClass()},405:function(t,e,n){var i=t(391),r=t(15),o=t(3),s=t(401),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.change_input=function(){this.model.trigger_event(new o.ButtonClick({})),this.model.clicks=this.model.clicks+1,t.prototype.change_input.call(this)},e}(s.AbstractButtonView);n.ButtonView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Button\",this.prototype.default_view=a,this.define({clicks:[r.Number,0]}),o.register_with_event(o.ButtonClick,this)},t}(s.AbstractButton);(n.Button=l).initClass()},406:function(t,e,n){var i=t(391),l=t(5),r=t(15),u=t(21),o=t(440),s=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var i=this;n.prototype.render.call(this),l.empty(this.el);var r=l.div({class:\"bk-bs-btn-group\"});this.el.appendChild(r);for(var o=this.model.active,s=this.model.labels,t=function(t){var e=l.input({type:\"checkbox\",value:\"\"+t,checked:t in o});e.addEventListener(\"change\",function(){return i.model.change_input(t)});var n=l.label({class:[\"bk-bs-btn\",\"bk-bs-btn-\"+a.model.button_type]},e,s[t]);u.includes(o,t)&&n.classList.add(\"bk-bs-active\"),r.appendChild(n)},a=this,e=0;e<s.length;e++)t(e)},t}(o.WidgetView);n.CheckboxButtonGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.prototype.change_input=function(e){var t=u.copy(this.active);u.includes(t,e)?u.removeBy(t,function(t){return e==t}):t.push(e),t.sort(),this.active=t,null!=this.callback&&this.callback.execute(this)},t.initClass=function(){this.prototype.type=\"CheckboxButtonGroup\",this.prototype.default_view=s,this.define({active:[r.Array,[]],labels:[r.Array,[]],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(o.Widget);(n.CheckboxButtonGroup=a).initClass()},407:function(t,e,n){var i=t(391),u=t(5),r=t(15),c=t(21),o=t(440),s=function(l){function t(){return null!==l&&l.apply(this,arguments)||this}return i.__extends(t,l),t.prototype.initialize=function(t){l.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;l.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;l.prototype.render.call(this),u.empty(this.el);for(var e=this.model.active,n=this.model.labels,i=0;i<n.length;i++){var r=n[i],o=u.input({type:\"checkbox\",value:\"\"+i});o.addEventListener(\"change\",function(){return t.change_input()}),this.model.disabled&&(o.disabled=!0),c.includes(e,i)&&(o.checked=!0);var s=u.label({},o,r);if(this.model.inline)s.classList.add(\"bk-bs-checkbox-inline\"),this.el.appendChild(s);else{var a=u.div({class:\"bk-bs-checkbox\"},s);this.el.appendChild(a)}}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e,null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.CheckboxGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"CheckboxGroup\",this.prototype.default_view=s,this.define({active:[r.Array,[]],labels:[r.Array,[]],inline:[r.Bool,!1],callback:[r.Instance]})},t}(o.Widget);(n.CheckboxGroup=a).initClass()},408:function(t,e,n){var i=t(391),r=t(414),o=t(5),s=t(15),a=t(432);a.prototype.adjustPosition=function(){if(!this._o.container){this.el.style.position=\"absolute\";var t=this._o.trigger,e=this.el.offsetWidth,n=this.el.offsetHeight,i=window.innerWidth||document.documentElement.clientWidth,r=window.innerHeight||document.documentElement.clientHeight,o=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop,s=t.getBoundingClientRect(),a=s.left+window.pageXOffset,l=s.bottom+window.pageYOffset;a-=this.el.parentElement.offsetLeft,l-=this.el.parentElement.offsetTop,(this._o.reposition&&i<a+e||-1<this._o.position.indexOf(\"right\")&&0<a-e+t.offsetWidth)&&(a=a-e+t.offsetWidth),(this._o.reposition&&r+o<l+n||-1<this._o.position.indexOf(\"top\")&&0<l-n-t.offsetHeight)&&(l=l-n-t.offsetHeight),this.el.style.left=a+\"px\",this.el.style.top=l+\"px\"}};var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-widget-form-group\")},e.prototype.render=function(){var e=this;t.prototype.render.call(this),null!=this._picker&&this._picker.destroy(),o.empty(this.el),this.labelEl=o.label({},this.model.title),this.el.appendChild(this.labelEl),this.inputEl=o.input({type:\"text\",class:\"bk-widget-form-input\",disabled:this.model.disabled}),this.el.appendChild(this.inputEl),this._picker=new a({field:this.inputEl,defaultDate:new Date(this.model.value),setDefaultDate:!0,minDate:null!=this.model.min_date?new Date(this.model.min_date):void 0,maxDate:null!=this.model.max_date?new Date(this.model.max_date):void 0,onSelect:function(t){return e._on_select(t)}}),this._root_element.appendChild(this._picker.el)},e.prototype._on_select=function(t){this.model.value=t.toDateString(),this.change_input()},e}(r.InputWidgetView);n.DatePickerView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatePicker\",this.prototype.default_view=l,this.define({value:[s.Any,(new Date).toDateString()],min_date:[s.Any],max_date:[s.Any]})},t}(r.InputWidget);(n.DatePicker=u).initClass()},409:function(t,e,n){var i=t(391),r=t(390),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}},e.prototype._calc_from=function(t){return t},e}(o.AbstractSliderView);n.DateRangeSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"drag\",e.connected=[!1,!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"DateRangeSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},t.prototype._formatter=function(t,e){return r(t,e)},t}(o.AbstractSlider);(n.DateRangeSlider=a).initClass()},410:function(t,e,n){var i=t(391),r=t(390),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}},e.prototype._calc_from=function(t){var e=t[0];return e},e}(o.AbstractSliderView);n.DateSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"tap\",e.connected=[!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"DateSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},t.prototype._formatter=function(t,e){return r(t,e)},t}(o.AbstractSlider);(n.DateSlider=a).initClass()},411:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.div();this.model.render_as_text?t.textContent=this.model.text:t.innerHTML=this.model.text,this.markupEl.appendChild(t)},t}(r.MarkupView);n.DivView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Div\",this.prototype.default_view=a,this.define({render_as_text:[s.Bool,!1]})},t}(r.Markup);(n.Div=l).initClass()},412:function(t,e,n){var i=t(391),h=t(5),r=t(400),o=t(15),s=t(401),a=function(d){function t(){return null!==d&&d.apply(this,arguments)||this}return i.__extends(t,d),t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),r.clear_menus.connect(function(){return t._clear_menu()})},t.prototype.render=function(){var e=this;if(d.prototype.render.call(this),this.model.is_split_button){this.el.classList.add(\"bk-bs-btn-group\");var t=this._render_button(h.span({class:\"bk-bs-caret\"}));t.classList.add(\"bk-bs-dropdown-toggle\"),t.addEventListener(\"click\",function(t){return e._caret_click(t)}),this.el.appendChild(t)}else this.el.classList.add(\"bk-bs-dropdown\"),this.buttonEl.classList.add(\"bk-bs-dropdown-toggle\"),this.buttonEl.appendChild(h.span({class:\"bk-bs-caret\"}));this.model.active&&this.el.classList.add(\"bk-bs-open\");for(var n=[],i=0,r=this.model.menu;i<r.length;i++){var o=r[i],s=void 0;if(null!=o){var a=o[0],l=o[1],u=h.a({},a);u.dataset.value=l,u.addEventListener(\"click\",function(t){return e._item_click(t)}),s=h.li({},u)}else s=h.li({class:\"bk-bs-divider\"});n.push(s)}var c=h.ul({class:\"bk-bs-dropdown-menu\"},n);this.el.appendChild(c)},t.prototype._clear_menu=function(){this.model.active=!1},t.prototype._toggle_menu=function(){var t=this.model.active;r.clear_menus.emit(),t||(this.model.active=!0)},t.prototype._button_click=function(t){t.preventDefault(),t.stopPropagation(),this.model.is_split_button?(this._clear_menu(),this.set_value(this.model.default_value)):this._toggle_menu()},t.prototype._caret_click=function(t){t.preventDefault(),t.stopPropagation(),this._toggle_menu()},t.prototype._item_click=function(t){t.preventDefault(),this._clear_menu(),this.set_value(t.currentTarget.dataset.value)},t.prototype.set_value=function(t){this.buttonEl.value=this.model.value=t,this.change_input()},t}(s.AbstractButtonView);n.DropdownView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Dropdown\",this.prototype.default_view=a,this.define({value:[o.String],default_value:[o.String],menu:[o.Array,[]]}),this.override({label:\"Dropdown\"}),this.internal({active:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"is_split_button\",{get:function(){return null!=this.default_value},enumerable:!0,configurable:!0}),t}(s.AbstractButton);(n.Dropdown=l).initClass()},413:function(t,e,n){var i=t(401);n.AbstractButton=i.AbstractButton;var r=t(402);n.AbstractIcon=r.AbstractIcon;var o=t(404);n.AutocompleteInput=o.AutocompleteInput;var s=t(405);n.Button=s.Button;var a=t(406);n.CheckboxButtonGroup=a.CheckboxButtonGroup;var l=t(407);n.CheckboxGroup=l.CheckboxGroup;var u=t(408);n.DatePicker=u.DatePicker;var c=t(409);n.DateRangeSlider=c.DateRangeSlider;var d=t(410);n.DateSlider=d.DateSlider;var h=t(411);n.Div=h.Div;var p=t(412);n.Dropdown=p.Dropdown;var f=t(414);n.InputWidget=f.InputWidget;var m=t(416);n.Markup=m.Markup;var v=t(417);n.MultiSelect=v.MultiSelect;var g=t(418);n.Panel=g.Panel;var y=t(419);n.Paragraph=y.Paragraph;var b=t(420);n.PasswordInput=b.PasswordInput;var _=t(421);n.PreText=_.PreText;var w=t(422);n.RadioButtonGroup=w.RadioButtonGroup;var x=t(423);n.RadioGroup=x.RadioGroup;var k=t(424);n.RangeSlider=k.RangeSlider;var S=t(425);n.Select=S.Select;var C=t(426);n.Slider=C.Slider;var E=t(427);n.Tabs=E.Tabs;var D=t(428);n.TextInput=D.TextInput;var M=t(429);n.Toggle=M.Toggle;var A=t(440);n.Widget=A.Widget},414:function(t,e,n){var i=t(391),r=t(440),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.change_input=function(){null!=this.model.callback&&this.model.callback.execute(this.model)},e}(r.WidgetView);n.InputWidgetView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"InputWidget\",this.prototype.default_view=s,this.define({title:[o.String,\"\"],callback:[o.Instance]})},t}(r.Widget);(n.InputWidget=a).initClass()},415:function(t,e,n){var i=t(413);n.Widgets=i;var r=t(0);r.register_models(i)},416:function(t,e,n){var i=t(391),r=t(15),o=t(5),s=t(440),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){e.prototype.render.call(this),o.empty(this.el);var t=i.__assign({width:this.model.width+\"px\",height:this.model.height+\"px\"},this.model.style);this.markupEl=o.div({style:t}),this.el.appendChild(this.markupEl)},t}(s.WidgetView);n.MarkupView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Markup\",this.define({text:[r.String,\"\"],style:[r.Any,{}]})},t}(s.Widget);(n.Markup=l).initClass()},417:function(t,e,n){var i=t(391),r=t(5),s=t(44),a=t(29),o=t(15),l=t(414),u=function(o){function t(){return null!==o&&o.apply(this,arguments)||this}return i.__extends(t,o),t.prototype.initialize=function(t){o.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;o.prototype.connect_signals.call(this),this.connect(this.model.properties.value.change,function(){return t.render_selection()}),this.connect(this.model.properties.options.change,function(){return t.render()}),this.connect(this.model.properties.name.change,function(){return t.render()}),this.connect(this.model.properties.title.change,function(){return t.render()}),this.connect(this.model.properties.size.change,function(){return t.render()}),this.connect(this.model.properties.disabled.change,function(){return t.render()})},t.prototype.render=function(){var t=this;o.prototype.render.call(this),r.empty(this.el);var e=r.label({for:this.model.id},this.model.title);this.el.appendChild(e);var n=this.model.options.map(function(t){var e,n;return s.isString(t)?e=n=t:(e=t[0],n=t[1]),r.option({value:e},n)});this.selectEl=r.select({multiple:!0,class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,disabled:this.model.disabled},n),this.selectEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.selectEl),this.render_selection()},t.prototype.render_selection=function(){for(var t=new a.Set(this.model.value),e=0,n=Array.from(this.el.querySelectorAll(\"option\"));e<n.length;e++){var i=n[e];i.selected=t.has(i.value)}this.selectEl.size=this.model.size},t.prototype.change_input=function(){for(var t=null!=this.el.querySelector(\"select:focus\"),e=[],n=0,i=Array.from(this.el.querySelectorAll(\"option\"));n<i.length;n++){var r=i[n];r.selected&&e.push(r.value)}this.model.value=e,o.prototype.change_input.call(this),t&&this.selectEl.focus()},t}(l.InputWidgetView);n.MultiSelectView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiSelect\",this.prototype.default_view=u,this.define({value:[o.Array,[]],options:[o.Array,[]],size:[o.Number,4]})},t}(l.InputWidget);(n.MultiSelect=c).initClass()},418:function(t,e,n){var i=t(391),r=t(440),o=t(15),s=t(5),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),s.empty(this.el)},e}(r.WidgetView);n.PanelView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Panel\",this.prototype.default_view=a,this.define({title:[o.String,\"\"],child:[o.Instance],closable:[o.Bool,!1]})},t}(r.Widget);(n.Panel=l).initClass()},419:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.p({style:{margin:0}},this.model.text);this.markupEl.appendChild(t)},t}(r.MarkupView);n.ParagraphView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Paragraph\",this.prototype.default_view=s},t}(r.Markup);(n.Paragraph=a).initClass()},420:function(t,e,n){var i=t(391),r=t(428),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.inputEl.type=\"password\"},e}(r.TextInputView);n.PasswordInputView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"PasswordInput\",this.prototype.default_view=o},t}(r.TextInput);(n.PasswordInput=s).initClass()},421:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.pre({style:{overflow:\"auto\"}},this.model.text);this.markupEl.appendChild(t)},t}(r.MarkupView);n.PreTextView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"PreText\",this.prototype.default_view=s},t}(r.Markup);(n.PreText=a).initClass()},422:function(t,e,n){var i=t(391),c=t(5),d=t(38),r=t(15),o=t(440),s=function(u){function t(){return null!==u&&u.apply(this,arguments)||this}return i.__extends(t,u),t.prototype.initialize=function(t){u.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;u.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;u.prototype.render.call(this),c.empty(this.el);var e=c.div({class:\"bk-bs-btn-group\"});this.el.appendChild(e);for(var n=d.uniqueId(),i=this.model.active,r=this.model.labels,o=0;o<r.length;o++){var s=r[o],a=c.input({type:\"radio\",name:n,value:\"\"+o,checked:o==i});a.addEventListener(\"change\",function(){return t.change_input()});var l=c.label({class:[\"bk-bs-btn\",\"bk-bs-btn-\"+this.model.button_type]},a,s);o==i&&l.classList.add(\"bk-bs-active\"),e.appendChild(l)}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e[0],null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.RadioButtonGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"RadioButtonGroup\",this.prototype.default_view=s,this.define({active:[r.Any,null],labels:[r.Array,[]],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(o.Widget);(n.RadioButtonGroup=a).initClass()},423:function(t,e,n){var i=t(391),c=t(5),d=t(38),r=t(15),o=t(440),s=function(u){function t(){return null!==u&&u.apply(this,arguments)||this}return i.__extends(t,u),t.prototype.initialize=function(t){u.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;u.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;u.prototype.render.call(this),c.empty(this.el);for(var e=d.uniqueId(),n=this.model.active,i=this.model.labels,r=0;r<i.length;r++){var o=i[r],s=c.input({type:\"radio\",name:e,value:\"\"+r});s.addEventListener(\"change\",function(){return t.change_input()}),this.model.disabled&&(s.disabled=!0),r==n&&(s.checked=!0);var a=c.label({},s,o);if(this.model.inline)a.classList.add(\"bk-bs-radio-inline\"),this.el.appendChild(a);else{var l=c.div({class:\"bk-bs-radio\"},a);this.el.appendChild(l)}}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e[0],null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.RadioGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"RadioGroup\",this.prototype.default_view=s,this.define({active:[r.Any,null],labels:[r.Array,[]],inline:[r.Bool,!1],callback:[r.Instance]})},t}(o.Widget);(n.RadioGroup=a).initClass()},424:function(t,e,n){var i=t(391),r=t(361),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}},e.prototype._calc_from=function(t){return t},e}(o.AbstractSliderView);n.RangeSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"drag\",e.connected=[!1,!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"RangeSlider\",this.prototype.default_view=s,this.override({format:\"0[.]00\"})},t.prototype._formatter=function(t,e){return r.format(t,e)},t}(o.AbstractSlider);(n.RangeSlider=a).initClass()},425:function(t,e,n){var i=t(391),a=t(5),l=t(44),r=t(14),o=t(15),s=t(414),u=function(s){function t(){return null!==s&&s.apply(this,arguments)||this}return i.__extends(t,s),t.prototype.initialize=function(t){s.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;s.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.build_options=function(t){var r=this;return t.map(function(t){var e,n;l.isString(t)?e=n=t:(e=t[0],n=t[1]);var i=r.model.value==e;return a.option({selected:i,value:e},n)})},t.prototype.render=function(){var t=this;s.prototype.render.call(this),a.empty(this.el);var e,n=a.label({for:this.model.id},this.model.title);if(this.el.appendChild(n),l.isArray(this.model.options))e=this.build_options(this.model.options);else{e=[];var i=this.model.options;for(var r in i){var o=i[r];e.push(a.optgroup({label:r},this.build_options(o)))}}this.selectEl=a.select({class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,disabled:this.model.disabled},e),this.selectEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.selectEl)},t.prototype.change_input=function(){var t=this.selectEl.value;r.logger.debug(\"selectbox: value = \"+t),this.model.value=t,s.prototype.change_input.call(this)},t}(s.InputWidgetView);n.SelectView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Select\",this.prototype.default_view=u,this.define({value:[o.String,\"\"],options:[o.Any,[]]})},t}(s.InputWidget);(n.Select=c).initClass()},426:function(t,e,n){var i=t(391),r=t(361),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}},e.prototype._calc_from=function(t){var e=t[0];return Number.isInteger(this.model.start)&&Number.isInteger(this.model.end)&&Number.isInteger(this.model.step)?Math.round(e):e},e}(o.AbstractSliderView);n.SliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"tap\",e.connected=[!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"Slider\",this.prototype.default_view=s,this.override({format:\"0[.]00\"})},t.prototype._formatter=function(t,e){return r.format(t,e)},t}(o.AbstractSlider);(n.Slider=a).initClass()},427:function(t,e,n){var i=t(391),h=t(5),p=t(21),r=t(15),o=t(440),s=function(d){function t(){return null!==d&&d.apply(this,arguments)||this}return i.__extends(t,d),t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),this.connect(this.model.properties.tabs.change,function(){return t.rebuild_child_views()}),this.connect(this.model.properties.active.change,function(){return t.render()})},t.prototype.render=function(){var r=this;d.prototype.render.call(this),h.empty(this.el);var t=this.model.tabs.length;if(0!=t){this.model.active>=t&&(this.model.active=t-1);var o=this.model.tabs.map(function(t,e){return h.li({},h.span({data:{index:e}},t.title))});o[this.model.active].classList.add(\"bk-bs-active\");var e=h.ul({class:[\"bk-bs-nav\",\"bk-bs-nav-tabs\"]},o);this.el.appendChild(e);var s=this.model.tabs.map(function(t){return h.div({class:\"bk-bs-tab-pane\"})});s[this.model.active].classList.add(\"bk-bs-active\");var n=h.div({class:\"bk-bs-tab-content\"},s);this.el.appendChild(n),e.addEventListener(\"click\",function(t){if(t.preventDefault(),t.target!=t.currentTarget){var e=t.target,n=r.model.active,i=parseInt(e.dataset.index);n!=i&&(o[n].classList.remove(\"bk-bs-active\"),s[n].classList.remove(\"bk-bs-active\"),o[i].classList.add(\"bk-bs-active\"),s[i].classList.add(\"bk-bs-active\"),r.model.active=i,null!=r.model.callback&&r.model.callback.execute(r.model))}});for(var i=0,a=p.zip(this.model.children,s);i<a.length;i++){var l=a[i],u=l[0],c=l[1];c.appendChild(this.child_views[u.id].el)}}},t}(o.WidgetView);n.TabsView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tabs\",this.prototype.default_view=s,this.define({tabs:[r.Array,[]],active:[r.Number,0],callback:[r.Instance]})},t.prototype.get_layoutable_children=function(){return this.children},Object.defineProperty(t.prototype,\"children\",{get:function(){return this.tabs.map(function(t){return t.child})},enumerable:!0,configurable:!0}),t}(o.Widget);(n.Tabs=a).initClass()},428:function(t,e,n){var i=t(391),r=t(14),o=t(15),s=t(5),a=t(414),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.css_classes=function(){return n.prototype.css_classes.call(this).concat(\"bk-widget-form-group\")},t.prototype.render=function(){var t=this;n.prototype.render.call(this),s.empty(this.el);var e=s.label({for:this.model.id},this.model.title);this.el.appendChild(e),this.inputEl=s.input({type:\"text\",class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,value:this.model.value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.inputEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.inputEl),this.model.height&&(this.inputEl.style.height=this.model.height-35+\"px\")},t.prototype.change_input=function(){var t=this.inputEl.value;r.logger.debug(\"widget/text_input: value = \"+t),this.model.value=t,n.prototype.change_input.call(this)},t}(a.InputWidgetView);n.TextInputView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextInput\",this.prototype.default_view=l,this.define({value:[o.String,\"\"],placeholder:[o.String,\"\"]})},t}(a.InputWidget);(n.TextInput=u).initClass()},429:function(t,e,n){var i=t(391),r=t(401),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.active&&this.buttonEl.classList.add(\"bk-bs-active\")},e.prototype.change_input=function(){this.model.active=!this.model.active,t.prototype.change_input.call(this)},e}(r.AbstractButtonView);n.ToggleView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Toggle\",this.prototype.default_view=s,this.define({active:[o.Bool,!1]}),this.override({label:\"Toggle\"})},t}(r.AbstractButton);(n.Toggle=a).initClass()},440:function(t,e,n){var i=t(391),r=t(157),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-widget\")},e.prototype.render=function(){this._render_classes(),null!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),null!=this.model.width&&(this.el.style.width=this.model.width+\"px\")},e.prototype.get_width=function(){throw new Error(\"unused\")},e.prototype.get_height=function(){throw new Error(\"unused\")},e}(r.LayoutDOMView);n.WidgetView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Widget\"},t}(r.LayoutDOM);(n.Widget=s).initClass()},431:function(t,e,n){\n",
449
+       "      /*! nouislider - 10.1.0 - 2017-07-28 17:11:18 */var i;i=function(){\"use strict\";var $=\"10.1.0\";function Q(t){t.preventDefault()}function r(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function Z(t,e,n){0<n&&(et(t,e),setTimeout(function(){nt(t,e)},n))}function tt(t){return Array.isArray(t)?t:[t]}function e(t){var e=(t=String(t)).split(\".\");return 1<e.length?e[1].length:0}function et(t,e){t.classList?t.classList.add(e):t.className+=\" \"+e}function nt(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function it(t){var e=void 0!==window.pageXOffset,n=\"CSS1Compat\"===(t.compatMode||\"\"),i=e?window.pageXOffset:n?t.documentElement.scrollLeft:t.body.scrollLeft,r=e?window.pageYOffset:n?t.documentElement.scrollTop:t.body.scrollTop;return{x:i,y:r}}function c(t,e){return 100/(e-t)}function d(t,e){return 100*e/(t[1]-t[0])}function h(t,e){for(var n=1;t>=e[n];)n+=1;return n}function n(t,e,n){if(n>=t.slice(-1)[0])return 100;var i,r,o,s,a,l,u=h(n,t);return i=t[u-1],r=t[u],o=e[u-1],s=e[u],o+(l=n,d(a=[i,r],a[0]<0?l+Math.abs(a[0]):l-a[0])/c(o,s))}function i(t,e,n,i){if(100===i)return i;var r,o,s,a,l=h(i,t);return n?(r=t[l-1],((o=t[l])-r)/2<i-r?o:r):e[l-1]?t[l-1]+(s=i-t[l-1],a=e[l-1],Math.round(s/a)*a):i}function o(t,e,n){var i;if(\"number\"==typeof e&&(e=[e]),\"[object Array]\"!==Object.prototype.toString.call(e))throw new Error(\"noUiSlider (\"+$+\"): 'range' contains invalid value.\");if(!r(i=\"min\"===t?0:\"max\"===t?100:parseFloat(t))||!r(e[0]))throw new Error(\"noUiSlider (\"+$+\"): 'range' value isn't numeric.\");n.xPct.push(i),n.xVal.push(e[0]),i?n.xSteps.push(!isNaN(e[1])&&e[1]):isNaN(e[1])||(n.xSteps[0]=e[1]),n.xHighestCompleteStep.push(0)}function s(t,e,n){if(!e)return!0;n.xSteps[t]=d([n.xVal[t],n.xVal[t+1]],e)/c(n.xPct[t],n.xPct[t+1]);var i=(n.xVal[t+1]-n.xVal[t])/n.xNumSteps[t],r=Math.ceil(Number(i.toFixed(3))-1),o=n.xVal[t]+n.xNumSteps[t]*r;n.xHighestCompleteStep[t]=o}function a(t,e,n){this.xPct=[],this.xVal=[],this.xSteps=[n||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i,r=[];for(i in t)t.hasOwnProperty(i)&&r.push([t[i],i]);for(r.length&&\"object\"==typeof r[0][0]?r.sort(function(t,e){return t[0][0]-e[0][0]}):r.sort(function(t,e){return t[0]-e[0]}),i=0;i<r.length;i++)o(r[i][1],r[i][0],this);for(this.xNumSteps=this.xSteps.slice(0),i=0;i<this.xNumSteps.length;i++)s(i,this.xNumSteps[i],this)}a.prototype.getMargin=function(t){var e=this.xNumSteps[0];if(e&&t/e%1!=0)throw new Error(\"noUiSlider (\"+$+\"): 'limit', 'margin' and 'padding' must be divisible by step.\");return 2===this.xPct.length&&d(this.xVal,t)},a.prototype.toStepping=function(t){return t=n(this.xVal,this.xPct,t)},a.prototype.fromStepping=function(t){return function(t,e,n){if(100<=n)return t.slice(-1)[0];var i,r,o,s,a,l=h(n,e);return i=t[l-1],r=t[l],o=e[l-1],s=e[l],a=[i,r],(n-o)*c(o,s)*(a[1]-a[0])/100+a[0]}(this.xVal,this.xPct,t)},a.prototype.getStep=function(t){return t=i(this.xPct,this.xSteps,this.snap,t)},a.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-0],step:this.xNumSteps[e-0],highestStep:this.xHighestCompleteStep[e-0]}}},a.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(e);return Math.max.apply(null,t)},a.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var l={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number};function u(t){if(\"object\"==typeof(e=t)&&\"function\"==typeof e.to&&\"function\"==typeof e.from)return!0;var e;throw new Error(\"noUiSlider (\"+$+\"): 'format' requires 'to' and 'from' methods.\")}function p(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'step' is not numeric.\");t.singleStep=e}function f(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider (\"+$+\"): 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider (\"+$+\"): Missing 'min' or 'max' in 'range'.\");if(e.min===e.max)throw new Error(\"noUiSlider (\"+$+\"): 'range' 'min' and 'max' cannot be equal.\");t.spectrum=new a(e,t.snap,t.singleStep)}function m(t,e){if(e=tt(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider (\"+$+\"): 'start' option is incorrect.\");t.handles=e.length,t.start=e}function v(t,e){if(\"boolean\"!=typeof(t.snap=e))throw new Error(\"noUiSlider (\"+$+\"): 'snap' option must be a boolean.\")}function g(t,e){if(\"boolean\"!=typeof(t.animate=e))throw new Error(\"noUiSlider (\"+$+\"): 'animate' option must be a boolean.\")}function y(t,e){if(\"number\"!=typeof(t.animationDuration=e))throw new Error(\"noUiSlider (\"+$+\"): 'animationDuration' option must be a number.\")}function b(t,e){var n,i=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(n=1;n<t.handles;n++)i.push(e);i.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider (\"+$+\"): 'connect' option doesn't match handle count.\");i=e}t.connect=i}function _(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider (\"+$+\"): 'orientation' option is invalid.\")}}function w(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'margin' option must be numeric.\");if(0!==e&&(t.margin=t.spectrum.getMargin(e),!t.margin))throw new Error(\"noUiSlider (\"+$+\"): 'margin' option is only supported on linear sliders.\")}function x(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'limit' option must be numeric.\");if(t.limit=t.spectrum.getMargin(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider (\"+$+\"): 'limit' option is only supported on linear sliders with 2 or more handles.\")}function k(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be numeric.\");if(0!==e){if(t.padding=t.spectrum.getMargin(e),!t.padding)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option is only supported on linear sliders.\");if(t.padding<0)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be a positive number.\");if(50<=t.padding)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be less than half the range.\")}}function S(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider (\"+$+\"): 'direction' option was not recognized.\")}}function C(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider (\"+$+\"): 'behaviour' must be a string containing options.\");var n=0<=e.indexOf(\"tap\"),i=0<=e.indexOf(\"drag\"),r=0<=e.indexOf(\"fixed\"),o=0<=e.indexOf(\"snap\"),s=0<=e.indexOf(\"hover\");if(r){if(2!==t.handles)throw new Error(\"noUiSlider (\"+$+\"): 'fixed' behaviour must be used with 2 handles\");w(t,t.start[1]-t.start[0])}t.events={tap:n||o,drag:i,fixed:r,snap:o,hover:s}}function E(t,e){if(\"boolean\"!=typeof(t.multitouch=e))throw new Error(\"noUiSlider (\"+$+\"): 'multitouch' option must be a boolean.\")}function D(t,e){if(!1!==e)if(!0===e){t.tooltips=[];for(var n=0;n<t.handles;n++)t.tooltips.push(!0)}else{if(t.tooltips=tt(e),t.tooltips.length!==t.handles)throw new Error(\"noUiSlider (\"+$+\"): 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 (\"+$+\"): 'tooltips' must be passed a formatter or 'false'.\")})}}function M(t,e){u(t.ariaFormat=e)}function A(t,e){u(t.format=e)}function N(t,e){if(void 0!==e&&\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider (\"+$+\"): 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function V(t,e){if(void 0!==e&&\"object\"!=typeof e)throw new Error(\"noUiSlider (\"+$+\"): 'cssClasses' must be an object.\");if(\"string\"==typeof t.cssPrefix)for(var n in t.cssClasses={},e)e.hasOwnProperty(n)&&(t.cssClasses[n]=t.cssPrefix+e[n]);else t.cssClasses=e}function I(t,e){if(!0!==e&&!1!==e)throw new Error(\"noUiSlider (\"+$+\"): 'useRequestAnimationFrame' option should be true (default) or false.\");t.useRequestAnimationFrame=e}function rt(e){var n={margin:0,limit:0,padding:0,animate:!0,animationDuration:300,ariaFormat:l,format:l},i={step:{r:!1,t:p},start:{r:!0,t:m},connect:{r:!0,t:b},direction:{r:!0,t:S},snap:{r:!1,t:v},animate:{r:!1,t:g},animationDuration:{r:!1,t:y},range:{r:!0,t:f},orientation:{r:!1,t:_},margin:{r:!1,t:w},limit:{r:!1,t:x},padding:{r:!1,t:k},behaviour:{r:!0,t:C},multitouch:{r:!0,t:E},ariaFormat:{r:!1,t:M},format:{r:!1,t:A},tooltips:{r:!1,t:D},cssPrefix:{r:!1,t:N},cssClasses:{r:!1,t:V},useRequestAnimationFrame:{r:!1,t:I}},r={connect:!1,direction:\"ltr\",behaviour:\"tap\",multitouch:!1,orientation:\"horizontal\",cssPrefix:\"noUi-\",cssClasses:{target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",ltr:\"ltr\",rtl:\"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\"},useRequestAnimationFrame:!0};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(i).forEach(function(t){if(void 0===e[t]&&void 0===r[t]){if(i[t].r)throw new Error(\"noUiSlider (\"+$+\"): '\"+t+\"' is required.\");return!0}i[t].t(n,void 0===e[t]?r[t]:e[t])}),n.pips=e.pips;var t=[[\"left\",\"top\"],[\"right\",\"bottom\"]];return n.style=t[n.dir][n.ort],n.styleOposite=t[n.dir?0:1][n.ort],n}function P(t,d,o){var u,l,s,a,h,r,c,e,p=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\"},n=window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\"),f=n&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}(),_=t,m=[],v=[],g=0,w=d.spectrum,y=[],b={},x=t.ownerDocument,k=x.documentElement,S=x.body;function C(t,e){var n=x.createElement(\"div\");return e&&et(n,e),t.appendChild(n),n}function i(t,e){var n=C(t,d.cssClasses.origin),i=C(n,d.cssClasses.handle);return i.setAttribute(\"data-handle\",e),i.setAttribute(\"tabindex\",\"0\"),i.setAttribute(\"role\",\"slider\"),i.setAttribute(\"aria-orientation\",d.ort?\"vertical\":\"horizontal\"),0===e?et(i,d.cssClasses.handleLower):e===d.handles-1&&et(i,d.cssClasses.handleUpper),n}function E(t,e){return!!e&&C(t,d.cssClasses.connect)}function D(t,e){return!!d.tooltips[e]&&C(t.firstChild,d.cssClasses.tooltip)}function M(e,i,r){var o=x.createElement(\"div\"),s=[d.cssClasses.valueNormal,d.cssClasses.valueLarge,d.cssClasses.valueSub],a=[d.cssClasses.markerNormal,d.cssClasses.markerLarge,d.cssClasses.markerSub],l=[d.cssClasses.valueHorizontal,d.cssClasses.valueVertical],u=[d.cssClasses.markerHorizontal,d.cssClasses.markerVertical];function c(t,e){var n=e===d.cssClasses.value,i=n?l:u,r=n?s:a;return e+\" \"+i[d.ort]+\" \"+r[t]}return et(o,d.cssClasses.pips),et(o,0===d.ort?d.cssClasses.pipsHorizontal:d.cssClasses.pipsVertical),Object.keys(e).forEach(function(t){!function(t,e){e[1]=e[1]&&i?i(e[0],e[1]):e[1];var n=C(o,!1);n.className=c(e[1],d.cssClasses.marker),n.style[d.style]=t+\"%\",e[1]&&((n=C(o,!1)).className=c(e[1],d.cssClasses.value),n.style[d.style]=t+\"%\",n.innerText=r.to(e[0]))}(t,e[t])}),o}function A(){var t;h&&((t=h).parentElement.removeChild(t),h=null)}function N(t){A();var p,f,m,e,v,n,i,g,y,b,r=t.mode,o=t.density||1,s=t.filter||!1,a=t.values||!1,l=t.stepped||!1,u=function(t,e,n){if(\"range\"===t||\"steps\"===t)return w.xVal;if(\"count\"===t){if(!e)throw new Error(\"noUiSlider (\"+$+\"): 'values' required for mode 'count'.\");var i,r=100/(e-1),o=0;for(e=[];(i=o++*r)<=100;)e.push(i);t=\"positions\"}return\"positions\"===t?e.map(function(t){return w.fromStepping(n?w.getStep(t):t)}):\"values\"===t?n?e.map(function(t){return w.fromStepping(w.getStep(w.toStepping(t)))}):e:void 0}(r,a,l),c=(p=o,f=r,m=u,v={},n=w.xVal[0],i=w.xVal[w.xVal.length-1],y=g=!1,b=0,(e=m.slice().sort(function(t,e){return t-e}),m=e.filter(function(t){return!this[t]&&(this[t]=!0)},{}))[0]!==n&&(m.unshift(n),g=!0),m[m.length-1]!==i&&(m.push(i),y=!0),m.forEach(function(t,e){var n,i,r,o,s,a,l,u,c,d=t,h=m[e+1];if(\"steps\"===f&&(n=w.xNumSteps[e]),n||(n=h-d),!1!==d&&void 0!==h)for(n=Math.max(n,1e-7),i=d;i<=h;i=(i+n).toFixed(7)/1){for(l=(s=(o=w.toStepping(i))-b)/p,c=s/(u=Math.round(l)),r=1;r<=u;r+=1)v[(b+r*c).toFixed(5)]=[\"x\",0];a=-1<m.indexOf(i)?1:\"steps\"===f?2:0,!e&&g&&(a=0),i===h&&y||(v[o.toFixed(5)]=[i,a]),b=o}}),v),d=t.format||{to:Math.round};return h=_.appendChild(M(c,s,d))}function V(){var t=u.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][d.ort];return 0===d.ort?t.width||u[e]:t.height||u[e]}function I(i,r,o,s){var e=function(t){return!_.hasAttribute(\"disabled\")&&(e=_,n=d.cssClasses.tap,(e.classList?!e.classList.contains(n):!new RegExp(\"\\\\b\"+n+\"\\\\b\").test(e.className))&&!!(t=function(t,e,n){var i,r,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),o&&d.multitouch){var l=function(t){return t.target===n||n.contains(t.target)};if(\"touchstart\"===t.type){var u=Array.prototype.filter.call(t.touches,l);if(1<u.length)return!1;i=u[0].pageX,r=u[0].pageY}else{var c=Array.prototype.find.call(t.changedTouches,l);if(!c)return!1;i=c.pageX,r=c.pageY}}else if(o){if(1<t.touches.length)return!1;i=t.changedTouches[0].pageX,r=t.changedTouches[0].pageY}return e=e||it(x),(s||a)&&(i=t.clientX+e.x,r=t.clientY+e.y),t.pageOffset=e,t.points=[i,r],t.cursor=s||a,t}(t,s.pageOffset,s.target||r))&&!(i===p.start&&void 0!==t.buttons&&1<t.buttons)&&(!s.hover||!t.buttons)&&(f||t.preventDefault(),t.calcPoint=t.points[d.ort],void o(t,s)));var e,n},n=[];return i.split(\" \").forEach(function(t){r.addEventListener(t,e,!!f&&{passive:!0}),n.push([t,e])}),n}function P(t){var e,n,i,r,o,s,a=t-(e=u,n=d.ort,i=e.getBoundingClientRect(),r=e.ownerDocument,o=r.documentElement,s=it(r),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(s.x=0),n?i.top+s.y-o.clientTop:i.left+s.x-o.clientLeft),l=100*a/V();return d.dir?100-l:l}function R(t,i,n,e){var r=n.slice(),o=[!t,t],s=[t,!t];e=e.slice(),t&&e.reverse(),1<e.length?e.forEach(function(t,e){var n=z(r,t,r[t]+i,o[e],s[e],!1);!1===n?i=0:(i=n-r[t],r[t]=n)}):o=s=[!0];var a=!1;e.forEach(function(t,e){a=H(t,n[t]+i,o[e],s[e])||a}),a&&e.forEach(function(t){L(\"update\",t),L(\"slide\",t)})}function L(n,i,r){Object.keys(b).forEach(function(t){var e=t.split(\".\")[0];n===e&&b[t].forEach(function(t){t.call(a,y.map(d.format.to),i,y.slice(),r||!1,m.slice())})})}function T(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&W(t,e)}function O(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return W(t,e);var n=(d.dir?-1:1)*(t.calcPoint-e.startCalcPoint),i=100*n/e.baseSize;R(0<n,i,e.locations,e.handleNumbers)}function W(t,e){e.handle&&(nt(e.handle,d.cssClasses.active),g-=1),e.listeners.forEach(function(t){k.removeEventListener(t[0],t[1])}),0===g&&(nt(_,d.cssClasses.drag),Y(),t.cursor&&(S.style.cursor=\"\",S.removeEventListener(\"selectstart\",Q))),e.handleNumbers.forEach(function(t){L(\"change\",t),L(\"set\",t),L(\"end\",t)})}function B(t,e){var n;if(1===e.handleNumbers.length){var i=l[e.handleNumbers[0]];if(i.hasAttribute(\"disabled\"))return!1;n=i.children[0],g+=1,et(n,d.cssClasses.active)}t.stopPropagation();var r=[],o=I(p.move,k,O,{target:t.target,handle:n,listeners:r,startCalcPoint:t.calcPoint,baseSize:V(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:m.slice()}),s=I(p.end,k,W,{target:t.target,handle:n,listeners:r,handleNumbers:e.handleNumbers}),a=I(\"mouseout\",k,T,{target:t.target,handle:n,listeners:r,handleNumbers:e.handleNumbers});r.push.apply(r,o.concat(s,a)),t.cursor&&(S.style.cursor=getComputedStyle(t.target).cursor,1<l.length&&et(_,d.cssClasses.drag),S.addEventListener(\"selectstart\",Q,!1)),e.handleNumbers.forEach(function(t){L(\"start\",t)})}function U(t){t.stopPropagation();var i,r,o,e=P(t.calcPoint),n=(i=e,o=!(r=100),l.forEach(function(t,e){if(!t.hasAttribute(\"disabled\")){var n=Math.abs(m[e]-i);n<r&&(o=e,r=n)}}),o);if(!1===n)return!1;d.events.snap||Z(_,d.cssClasses.tap,d.animationDuration),H(n,e,!0,!0),Y(),L(\"slide\",n,!0),L(\"update\",n,!0),L(\"change\",n,!0),L(\"set\",n,!0),d.events.snap&&B(t,{handleNumbers:[n]})}function j(t){var e=P(t.calcPoint),n=w.getStep(e),i=w.fromStepping(n);Object.keys(b).forEach(function(t){\"hover\"===t.split(\".\")[0]&&b[t].forEach(function(t){t.call(a,i)})})}function z(t,e,n,i,r,o){var s;return 1<l.length&&(i&&0<e&&(n=Math.max(n,t[e-1]+d.margin)),r&&e<l.length-1&&(n=Math.min(n,t[e+1]-d.margin))),1<l.length&&d.limit&&(i&&0<e&&(n=Math.min(n,t[e-1]+d.limit)),r&&e<l.length-1&&(n=Math.max(n,t[e+1]-d.limit))),d.padding&&(0===e&&(n=Math.max(n,d.padding)),e===l.length-1&&(n=Math.min(n,100-d.padding))),n=w.getStep(n),s=n,!((n=Math.max(Math.min(s,100),0))===t[e]&&!o)&&n}function F(t){return t+\"%\"}function Y(){v.forEach(function(t){var e=50<m[t]?-1:1,n=3+(l.length+e*t);l[t].childNodes[0].style.zIndex=n})}function H(t,e,n,i){return!1!==(e=z(m,t,e,n,i,!1))&&(function(t,e){m[t]=e,y[t]=w.fromStepping(e);var n=function(){l[t].style[d.style]=F(e),q(t),q(t+1)};window.requestAnimationFrame&&d.useRequestAnimationFrame?window.requestAnimationFrame(n):n()}(t,e),!0)}function q(t){if(s[t]){var e=0,n=100;0!==t&&(e=m[t-1]),t!==s.length-1&&(n=m[t]),s[t].style[d.style]=F(e),s[t].style[d.styleOposite]=F(100-n)}}function G(t,e){null!==t&&!1!==t&&(\"number\"==typeof t&&(t=String(t)),!1===(t=d.format.from(t))||isNaN(t)||H(e,w.toStepping(t),!1,!1))}function X(t,e){var n=tt(t),i=void 0===m[0];e=void 0===e||!!e,n.forEach(G),d.animate&&!i&&Z(_,d.cssClasses.tap,d.animationDuration),v.forEach(function(t){H(t,m[t],!0,!1)}),Y(),v.forEach(function(t){L(\"update\",t),null!==n[t]&&e&&L(\"set\",t)})}function K(){var t=y.map(d.format.to);return 1===t.length?t[0]:t}function J(t,e){b[t]=b[t]||[],b[t].push(e),\"update\"===t.split(\".\")[0]&&l.forEach(function(t,e){L(\"update\",e)})}if(_.noUiSlider)throw new Error(\"noUiSlider (\"+$+\"): Slider was already initialized.\");return et(e=_,d.cssClasses.target),0===d.dir?et(e,d.cssClasses.ltr):et(e,d.cssClasses.rtl),0===d.ort?et(e,d.cssClasses.horizontal):et(e,d.cssClasses.vertical),u=C(e,d.cssClasses.base),function(t,e){l=[],(s=[]).push(E(e,t[0]));for(var n=0;n<d.handles;n++)l.push(i(e,n)),v[n]=n,s.push(E(e,t[n+1]))}(d.connect,u),a={destroy:function(){for(var t in d.cssClasses)d.cssClasses.hasOwnProperty(t)&&nt(_,d.cssClasses[t]);for(;_.firstChild;)_.removeChild(_.firstChild);delete _.noUiSlider},steps:function(){return m.map(function(t,e){var n=w.getNearbySteps(t),i=y[e],r=n.thisStep.step,o=null;!1!==r&&i+r>n.stepAfter.startValue&&(r=n.stepAfter.startValue-i),o=i>n.thisStep.startValue?n.thisStep.step:!1!==n.stepBefore.step&&i-n.stepBefore.highestStep,100===t?r=null:0===t&&(o=null);var s=w.countStepDecimals();return null!==r&&!1!==r&&(r=Number(r.toFixed(s))),null!==o&&!1!==o&&(o=Number(o.toFixed(s))),[o,r]})},on:J,off:function(t){var i=t&&t.split(\".\")[0],r=i&&t.substring(i.length);Object.keys(b).forEach(function(t){var e=t.split(\".\")[0],n=t.substring(e.length);i&&i!==e||r&&r!==n||delete b[t]})},get:K,set:X,reset:function(t){X(d.start,t)},__moveHandles:function(t,e,n){R(t,e,m,n)},options:o,updateOptions:function(e,t){var n=K(),i=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\"];i.forEach(function(t){void 0!==e[t]&&(o[t]=e[t])});var r=rt(o);i.forEach(function(t){void 0!==e[t]&&(d[t]=r[t])}),w=r.spectrum,d.margin=r.margin,d.limit=r.limit,d.padding=r.padding,d.pips&&N(d.pips),m=[],X(e.start||n,t)},target:_,removePips:A,pips:N},(c=d.events).fixed||l.forEach(function(t,e){I(p.start,t.children[0],B,{handleNumbers:[e]})}),c.tap&&I(p.start,u,U,{}),c.hover&&I(p.move,u,j,{hover:!0}),c.drag&&s.forEach(function(t,e){if(!1!==t&&0!==e&&e!==s.length-1){var n=l[e-1],i=l[e],r=[t];et(t,d.cssClasses.draggable),c.fixed&&(r.push(n.children[0]),r.push(i.children[0])),r.forEach(function(t){I(p.start,t,B,{handles:[n,i],handleNumbers:[e-1,e]})})}}),X(d.start),d.pips&&N(d.pips),d.tooltips&&(r=l.map(D),J(\"update\",function(t,e,n){if(r[e]){var i=t[e];!0!==d.tooltips[e]&&(i=d.tooltips[e].to(n[e])),r[e].innerHTML=i}})),J(\"update\",function(t,e,s,n,a){v.forEach(function(t){var e=l[t],n=z(m,t,0,!0,!0,!0),i=z(m,t,100,!0,!0,!0),r=a[t],o=d.ariaFormat.to(s[t]);e.children[0].setAttribute(\"aria-valuemin\",n.toFixed(1)),e.children[0].setAttribute(\"aria-valuemax\",i.toFixed(1)),e.children[0].setAttribute(\"aria-valuenow\",r.toFixed(1)),e.children[0].setAttribute(\"aria-valuetext\",o)})}),a}return{version:$,create:function(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider (\"+$+\"): create requires a single element, got: \"+t);var n=rt(e),i=P(t,n,e);return t.noUiSlider=i}}},\"object\"==typeof n?e.exports=i():window.noUiSlider=i()},432:function(i,r,o){\n",
450
+       "      /*!\n",
451
+       "           * Pikaday\n",
452
+       "           *\n",
453
+       "           * Copyright © 2014 David Bushell | BSD & MIT license | https://github.com/dbushell/Pikaday\n",
454
+       "           */\n",
455
+       "      !function(t,e){\"use strict\";var n;if(\"object\"==typeof o){try{n=i(\"moment\")}catch(t){}r.exports=e(n)}else t.Pikaday=e(t.moment)}(this,function(n){\"use strict\";var o=\"function\"==typeof n,s=!!window.addEventListener,c=window.document,u=window.setTimeout,a=function(t,e,n,i){s?t.addEventListener(e,n,!!i):t.attachEvent(\"on\"+e,n)},i=function(t,e,n,i){s?t.removeEventListener(e,n,!!i):t.detachEvent(\"on\"+e,n)},l=function(t,e){return-1!==(\" \"+t.className+\" \").indexOf(\" \"+e+\" \")},g=function(t){return/Array/.test(Object.prototype.toString.call(t))},B=function(t){return/Date/.test(Object.prototype.toString.call(t))&&!isNaN(t.getTime())},U=function(t,e){return[31,(n=t,n%4==0&&n%100!=0||n%400==0?29:28),31,30,31,30,31,31,30,31,30,31][e];var n},j=function(t){B(t)&&t.setHours(0,0,0,0)},z=function(t,e){return t.getTime()===e.getTime()},d=function(t,e,n){var i,r;for(i in e)(r=void 0!==t[i])&&\"object\"==typeof e[i]&&null!==e[i]&&void 0===e[i].nodeName?B(e[i])?n&&(t[i]=new Date(e[i].getTime())):g(e[i])?n&&(t[i]=e[i].slice(0)):t[i]=d({},e[i],n):!n&&r||(t[i]=e[i]);return t},r=function(t,e,n){var i;c.createEvent?((i=c.createEvent(\"HTMLEvents\")).initEvent(e,!0,!1),i=d(i,n),t.dispatchEvent(i)):c.createEventObject&&(i=c.createEventObject(),i=d(i,n),t.fireEvent(\"on\"+e,i))},e=function(t){return t.month<0&&(t.year-=Math.ceil(Math.abs(t.month)/12),t.month+=12),11<t.month&&(t.year+=Math.floor(Math.abs(t.month)/12),t.month-=12),t},h={field:null,bound:void 0,position:\"bottom left\",reposition:!0,format:\"YYYY-MM-DD\",toString:null,parse:null,defaultDate:null,setDefaultDate:!1,firstDay:0,formatStrict:!1,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,pickWholeWeek:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:\"\",showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,enableSelectionDaysInNextAndPreviousMonths:!1,numberOfMonths:1,mainCalendar:\"left\",container:void 0,blurFieldOnSelect:!0,i18n:{previousMonth:\"Previous Month\",nextMonth:\"Next Month\",months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],weekdays:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],weekdaysShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"]},theme:null,events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null,keyboardInput:!0},p=function(t,e,n){for(e+=t.firstDay;7<=e;)e-=7;return n?t.i18n.weekdaysShort[e]:t.i18n.weekdays[e]},F=function(t){var e=[],n=\"false\";if(t.isEmpty){if(!t.showDaysInNextAndPreviousMonths)return'<td class=\"is-empty\"></td>';e.push(\"is-outside-current-month\"),t.enableSelectionDaysInNextAndPreviousMonths||e.push(\"is-selection-disabled\")}return t.isDisabled&&e.push(\"is-disabled\"),t.isToday&&e.push(\"is-today\"),t.isSelected&&(e.push(\"is-selected\"),n=\"true\"),t.hasEvent&&e.push(\"has-event\"),t.isInRange&&e.push(\"is-inrange\"),t.isStartRange&&e.push(\"is-startrange\"),t.isEndRange&&e.push(\"is-endrange\"),'<td data-day=\"'+t.day+'\" class=\"'+e.join(\" \")+'\" aria-selected=\"'+n+'\"><button class=\"pika-button pika-day\" type=\"button\" data-pika-year=\"'+t.year+'\" data-pika-month=\"'+t.month+'\" data-pika-day=\"'+t.day+'\">'+t.day+\"</button></td>\"},f=function(t,e,n,i,r,o){var s,a,l,u,c,d=t._o,h=n===d.minYear,p=n===d.maxYear,f='<div id=\"'+o+'\" class=\"pika-title\" role=\"heading\" aria-live=\"assertive\">',m=!0,v=!0;for(l=[],s=0;s<12;s++)l.push('<option value=\"'+(n===r?s-e:12+s-e)+'\"'+(s===i?' selected=\"selected\"':\"\")+(h&&s<d.minMonth||p&&s>d.maxMonth?'disabled=\"disabled\"':\"\")+\">\"+d.i18n.months[s]+\"</option>\");for(u='<div class=\"pika-label\">'+d.i18n.months[i]+'<select class=\"pika-select pika-select-month\" tabindex=\"-1\">'+l.join(\"\")+\"</select></div>\",g(d.yearRange)?(s=d.yearRange[0],a=d.yearRange[1]+1):(s=n-d.yearRange,a=1+n+d.yearRange),l=[];s<a&&s<=d.maxYear;s++)s>=d.minYear&&l.push('<option value=\"'+s+'\"'+(s===n?' selected=\"selected\"':\"\")+\">\"+s+\"</option>\");return c='<div class=\"pika-label\">'+n+d.yearSuffix+'<select class=\"pika-select pika-select-year\" tabindex=\"-1\">'+l.join(\"\")+\"</select></div>\",d.showMonthAfterYear?f+=c+u:f+=u+c,h&&(0===i||d.minMonth>=i)&&(m=!1),p&&(11===i||d.maxMonth<=i)&&(v=!1),0===e&&(f+='<button class=\"pika-prev'+(m?\"\":\" is-disabled\")+'\" type=\"button\">'+d.i18n.previousMonth+\"</button>\"),e===t._o.numberOfMonths-1&&(f+='<button class=\"pika-next'+(v?\"\":\" is-disabled\")+'\" type=\"button\">'+d.i18n.nextMonth+\"</button>\"),f+=\"</div>\"},Y=function(t,e,n){return'<table cellpadding=\"0\" cellspacing=\"0\" class=\"pika-table\" role=\"grid\" aria-labelledby=\"'+n+'\">'+function(t){var e,n=[];for(t.showWeekNumber&&n.push(\"<th></th>\"),e=0;e<7;e++)n.push('<th scope=\"col\"><abbr title=\"'+p(t,e)+'\">'+p(t,e,!0)+\"</abbr></th>\");return\"<thead><tr>\"+(t.isRTL?n.reverse():n).join(\"\")+\"</tr></thead>\"}(t)+\"<tbody>\"+e.join(\"\")+\"</tbody></table>\"},t=function(t){var i=this,r=i.config(t);i._onMouseDown=function(t){if(i._v){var e=(t=t||window.event).target||t.srcElement;if(e)if(l(e,\"is-disabled\")||(!l(e,\"pika-button\")||l(e,\"is-empty\")||l(e.parentNode,\"is-disabled\")?l(e,\"pika-prev\")?i.prevMonth():l(e,\"pika-next\")&&i.nextMonth():(i.setDate(new Date(e.getAttribute(\"data-pika-year\"),e.getAttribute(\"data-pika-month\"),e.getAttribute(\"data-pika-day\"))),r.bound&&u(function(){i.hide(),r.blurFieldOnSelect&&r.field&&r.field.blur()},100))),l(e,\"pika-select\"))i._c=!0;else{if(!t.preventDefault)return t.returnValue=!1;t.preventDefault()}}},i._onChange=function(t){var e=(t=t||window.event).target||t.srcElement;e&&(l(e,\"pika-select-month\")?i.gotoMonth(e.value):l(e,\"pika-select-year\")&&i.gotoYear(e.value))},i._onKeyChange=function(t){if(t=t||window.event,i.isVisible())switch(t.keyCode){case 13:case 27:r.field&&r.field.blur();break;case 37:t.preventDefault(),i.adjustDate(\"subtract\",1);break;case 38:i.adjustDate(\"subtract\",7);break;case 39:i.adjustDate(\"add\",1);break;case 40:i.adjustDate(\"add\",7)}},i._onInputChange=function(t){var e;t.firedBy!==i&&(e=r.parse?r.parse(r.field.value,r.format):o?(e=n(r.field.value,r.format,r.formatStrict))&&e.isValid()?e.toDate():null:new Date(Date.parse(r.field.value)),B(e)&&i.setDate(e),i._v||i.show())},i._onInputFocus=function(){i.show()},i._onInputClick=function(){i.show()},i._onInputBlur=function(){var t=c.activeElement;do{if(l(t,\"pika-single\"))return}while(t=t.parentNode);i._c||(i._b=u(function(){i.hide()},50)),i._c=!1},i._onClick=function(t){var e=(t=t||window.event).target||t.srcElement,n=e;if(e){!s&&l(e,\"pika-select\")&&(e.onchange||(e.setAttribute(\"onchange\",\"return;\"),a(e,\"change\",i._onChange)));do{if(l(n,\"pika-single\")||n===r.trigger)return}while(n=n.parentNode);i._v&&e!==r.trigger&&n!==r.trigger&&i.hide()}},i.el=c.createElement(\"div\"),i.el.className=\"pika-single\"+(r.isRTL?\" is-rtl\":\"\")+(r.theme?\" \"+r.theme:\"\"),a(i.el,\"mousedown\",i._onMouseDown,!0),a(i.el,\"touchend\",i._onMouseDown,!0),a(i.el,\"change\",i._onChange),r.keyboardInput&&a(c,\"keydown\",i._onKeyChange),r.field&&(r.container?r.container.appendChild(i.el):r.bound?c.body.appendChild(i.el):r.field.parentNode.insertBefore(i.el,r.field.nextSibling),a(r.field,\"change\",i._onInputChange),r.defaultDate||(o&&r.field.value?r.defaultDate=n(r.field.value,r.format).toDate():r.defaultDate=new Date(Date.parse(r.field.value)),r.setDefaultDate=!0));var e=r.defaultDate;B(e)?r.setDefaultDate?i.setDate(e,!0):i.gotoDate(e):i.gotoDate(new Date),r.bound?(this.hide(),i.el.className+=\" is-bound\",a(r.trigger,\"click\",i._onInputClick),a(r.trigger,\"focus\",i._onInputFocus),a(r.trigger,\"blur\",i._onInputBlur)):this.show()};return t.prototype={config:function(t){this._o||(this._o=d({},h,!0));var e=d(this._o,t,!0);e.isRTL=!!e.isRTL,e.field=e.field&&e.field.nodeName?e.field:null,e.theme=\"string\"==typeof e.theme&&e.theme?e.theme:null,e.bound=!!(void 0!==e.bound?e.field&&e.bound:e.field),e.trigger=e.trigger&&e.trigger.nodeName?e.trigger:e.field,e.disableWeekends=!!e.disableWeekends,e.disableDayFn=\"function\"==typeof e.disableDayFn?e.disableDayFn:null;var n=parseInt(e.numberOfMonths,10)||1;if(e.numberOfMonths=4<n?4:n,B(e.minDate)||(e.minDate=!1),B(e.maxDate)||(e.maxDate=!1),e.minDate&&e.maxDate&&e.maxDate<e.minDate&&(e.maxDate=e.minDate=!1),e.minDate&&this.setMinDate(e.minDate),e.maxDate&&this.setMaxDate(e.maxDate),g(e.yearRange)){var i=(new Date).getFullYear()-10;e.yearRange[0]=parseInt(e.yearRange[0],10)||i,e.yearRange[1]=parseInt(e.yearRange[1],10)||i}else e.yearRange=Math.abs(parseInt(e.yearRange,10))||h.yearRange,100<e.yearRange&&(e.yearRange=100);return e},toString:function(t){return t=t||this._o.format,B(this._d)?this._o.toString?this._o.toString(this._d,t):o?n(this._d).format(t):this._d.toDateString():\"\"},getMoment:function(){return o?n(this._d):null},setMoment:function(t,e){o&&n.isMoment(t)&&this.setDate(t.toDate(),e)},getDate:function(){return B(this._d)?new Date(this._d.getTime()):null},setDate:function(t,e){if(!t)return this._d=null,this._o.field&&(this._o.field.value=\"\",r(this._o.field,\"change\",{firedBy:this})),this.draw();if(\"string\"==typeof t&&(t=new Date(Date.parse(t))),B(t)){var n=this._o.minDate,i=this._o.maxDate;B(n)&&t<n?t=n:B(i)&&i<t&&(t=i),this._d=new Date(t.getTime()),j(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),r(this._o.field,\"change\",{firedBy:this})),e||\"function\"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},gotoDate:function(t){var e=!0;if(B(t)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),i=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),r=t.getTime();i.setMonth(i.getMonth()+1),i.setDate(i.getDate()-1),e=r<n.getTime()||i.getTime()<r}e&&(this.calendars=[{month:t.getMonth(),year:t.getFullYear()}],\"right\"===this._o.mainCalendar&&(this.calendars[0].month+=1-this._o.numberOfMonths)),this.adjustCalendars()}},adjustDate:function(t,e){var n,i=this.getDate()||new Date,r=24*parseInt(e)*60*60*1e3;\"add\"===t?n=new Date(i.valueOf()+r):\"subtract\"===t&&(n=new Date(i.valueOf()-r)),this.setDate(n)},adjustCalendars:function(){this.calendars[0]=e(this.calendars[0]);for(var t=1;t<this._o.numberOfMonths;t++)this.calendars[t]=e({month:this.calendars[0].month+t,year:this.calendars[0].year});this.draw()},gotoToday:function(){this.gotoDate(new Date)},gotoMonth:function(t){isNaN(t)||(this.calendars[0].month=parseInt(t,10),this.adjustCalendars())},nextMonth:function(){this.calendars[0].month++,this.adjustCalendars()},prevMonth:function(){this.calendars[0].month--,this.adjustCalendars()},gotoYear:function(t){isNaN(t)||(this.calendars[0].year=parseInt(t,10),this.adjustCalendars())},setMinDate:function(t){t instanceof Date?(j(t),this._o.minDate=t,this._o.minYear=t.getFullYear(),this._o.minMonth=t.getMonth()):(this._o.minDate=h.minDate,this._o.minYear=h.minYear,this._o.minMonth=h.minMonth,this._o.startRange=h.startRange),this.draw()},setMaxDate:function(t){t instanceof Date?(j(t),this._o.maxDate=t,this._o.maxYear=t.getFullYear(),this._o.maxMonth=t.getMonth()):(this._o.maxDate=h.maxDate,this._o.maxYear=h.maxYear,this._o.maxMonth=h.maxMonth,this._o.endRange=h.endRange),this.draw()},setStartRange:function(t){this._o.startRange=t},setEndRange:function(t){this._o.endRange=t},draw:function(t){if(this._v||t){var e,n=this._o,i=n.minYear,r=n.maxYear,o=n.minMonth,s=n.maxMonth,a=\"\";this._y<=i&&(this._y=i,!isNaN(o)&&this._m<o&&(this._m=o)),this._y>=r&&(this._y=r,!isNaN(s)&&this._m>s&&(this._m=s)),e=\"pika-title-\"+Math.random().toString(36).replace(/[^a-z]+/g,\"\").substr(0,2);for(var l=0;l<n.numberOfMonths;l++)a+='<div class=\"pika-lendar\">'+f(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year,e)+this.render(this.calendars[l].year,this.calendars[l].month,e)+\"</div>\";this.el.innerHTML=a,n.bound&&\"hidden\"!==n.field.type&&u(function(){n.trigger.focus()},1),\"function\"==typeof this._o.onDraw&&this._o.onDraw(this),n.bound&&n.field.setAttribute(\"aria-label\",\"Use the arrow keys to pick a date\")}},adjustPosition:function(){var t,e,n,i,r,o,s,a,l,u;if(!this._o.container){if(this.el.style.position=\"absolute\",t=this._o.trigger,e=t,n=this.el.offsetWidth,i=this.el.offsetHeight,r=window.innerWidth||c.documentElement.clientWidth,o=window.innerHeight||c.documentElement.clientHeight,s=window.pageYOffset||c.body.scrollTop||c.documentElement.scrollTop,\"function\"==typeof t.getBoundingClientRect)u=t.getBoundingClientRect(),a=u.left+window.pageXOffset,l=u.bottom+window.pageYOffset;else for(a=e.offsetLeft,l=e.offsetTop+e.offsetHeight;e=e.offsetParent;)a+=e.offsetLeft,l+=e.offsetTop;(this._o.reposition&&r<a+n||-1<this._o.position.indexOf(\"right\")&&0<a-n+t.offsetWidth)&&(a=a-n+t.offsetWidth),(this._o.reposition&&o+s<l+i||-1<this._o.position.indexOf(\"top\")&&0<l-i-t.offsetHeight)&&(l=l-i-t.offsetHeight),this.el.style.left=a+\"px\",this.el.style.top=l+\"px\"}},render:function(t,e,n){var i=this._o,r=new Date,o=U(t,e),s=new Date(t,e,1).getDay(),a=[],l=[];j(r),0<i.firstDay&&(s-=i.firstDay)<0&&(s+=7);for(var u=0===e?11:e-1,c=11===e?0:e+1,d=0===e?t-1:t,h=11===e?t+1:t,p=U(d,u),f=o+s,m=f;7<m;)m-=7;f+=7-m;for(var v,g,y,b,_,w,x,k=!1,S=0,C=0;S<f;S++){var E=new Date(t,e,S-s+1),D=!!B(this._d)&&z(E,this._d),M=z(E,r),A=-1!==i.events.indexOf(E.toDateString()),N=S<s||o+s<=S,V=S-s+1,I=e,P=t,R=i.startRange&&z(i.startRange,E),L=i.endRange&&z(i.endRange,E),T=i.startRange&&i.endRange&&i.startRange<E&&E<i.endRange,O=i.minDate&&E<i.minDate||i.maxDate&&E>i.maxDate||i.disableWeekends&&(0===(x=E.getDay())||6===x)||i.disableDayFn&&i.disableDayFn(E);N&&(S<s?(V=p+V,I=u,P=d):(V-=o,I=c,P=h));var W={day:V,month:I,year:P,hasEvent:A,isSelected:D,isToday:M,isDisabled:O,isEmpty:N,isStartRange:R,isEndRange:L,isInRange:T,showDaysInNextAndPreviousMonths:i.showDaysInNextAndPreviousMonths,enableSelectionDaysInNextAndPreviousMonths:i.enableSelectionDaysInNextAndPreviousMonths};i.pickWholeWeek&&D&&(k=!0),l.push(F(W)),7==++C&&(i.showWeekNumber&&l.unshift((y=S-s,b=e,_=t,w=void 0,w=new Date(_,0,1),'<td class=\"pika-week\">'+Math.ceil(((new Date(_,b,y)-w)/864e5+w.getDay()+1)/7)+\"</td>\")),a.push((v=l,g=i.isRTL,'<tr class=\"pika-row'+(i.pickWholeWeek?\" pick-whole-week\":\"\")+(k?\" is-selected\":\"\")+'\">'+(g?v.reverse():v).join(\"\")+\"</tr>\")),C=0,k=!(l=[]))}return Y(i,a,n)},isVisible:function(){return this._v},show:function(){var t,e,n;this.isVisible()||(this._v=!0,this.draw(),t=this.el,e=\"is-hidden\",t.className=(n=(\" \"+t.className+\" \").replace(\" \"+e+\" \",\" \")).trim?n.trim():n.replace(/^\\s+|\\s+$/g,\"\"),this._o.bound&&(a(c,\"click\",this._onClick),this.adjustPosition()),\"function\"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var t,e,n=this._v;!1!==n&&(this._o.bound&&i(c,\"click\",this._onClick),this.el.style.position=\"static\",this.el.style.left=\"auto\",this.el.style.top=\"auto\",t=this.el,l(t,e=\"is-hidden\")||(t.className=\"\"===t.className?e:t.className+\" \"+e),this._v=!1,void 0!==n&&\"function\"==typeof this._o.onClose&&this._o.onClose.call(this))},destroy:function(){var t=this._o;this.hide(),i(this.el,\"mousedown\",this._onMouseDown,!0),i(this.el,\"touchend\",this._onMouseDown,!0),i(this.el,\"change\",this._onChange),t.keyboardInput&&i(c,\"keydown\",this._onKeyChange),t.field&&(i(t.field,\"change\",this._onInputChange),t.bound&&(i(t.trigger,\"click\",this._onInputClick),i(t.trigger,\"focus\",this._onInputFocus),i(t.trigger,\"blur\",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},t})}})}(this);\n",
456
+       "      //# sourceMappingURL=bokeh-widgets.min.js.map\n",
457
+       "      /* END bokeh-widgets.min.js */\n",
458
+       "    },\n",
459
+       "    \n",
460
+       "    function(Bokeh) {\n",
461
+       "      /* BEGIN bokeh-tables.min.js */\n",
462
+       "      /*!\n",
463
+       "       * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n",
464
+       "       * All rights reserved.\n",
465
+       "       * \n",
466
+       "       * Redistribution and use in source and binary forms, with or without modification,\n",
467
+       "       * are permitted provided that the following conditions are met:\n",
468
+       "       * \n",
469
+       "       * Redistributions of source code must retain the above copyright notice,\n",
470
+       "       * this list of conditions and the following disclaimer.\n",
471
+       "       * \n",
472
+       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
473
+       "       * this list of conditions and the following disclaimer in the documentation\n",
474
+       "       * and/or other materials provided with the distribution.\n",
475
+       "       * \n",
476
+       "       * Neither the name of Anaconda nor the names of any contributors\n",
477
+       "       * may be used to endorse or promote products derived from this software\n",
478
+       "       * without specific prior written permission.\n",
479
+       "       * \n",
480
+       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
481
+       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
482
+       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
483
+       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
484
+       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
485
+       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
486
+       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
487
+       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
488
+       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
489
+       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
490
+       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
491
+       "       */\n",
492
+       "      !function(a,b){!function(Bokeh){var define;(function(e,t,n){if(null!=Bokeh)return Bokeh.register_plugin(e,{\"models/widgets/tables/cell_editors\":433,\"models/widgets/tables/cell_formatters\":434,\"models/widgets/tables/data_table\":435,\"models/widgets/tables/index\":436,\"models/widgets/tables/main\":437,\"models/widgets/tables/table_column\":438,\"models/widgets/tables/table_widget\":439,\"models/widgets/widget\":440},437);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")})({433:function(e,t,n){var o=e(391),r=e(15),i=e(5),l=e(6),s=e(59),a=e(435),c=function(t){function e(e){return t.call(this,o.__assign({model:e.column.model},e))||this}return o.__extends(e,t),Object.defineProperty(e.prototype,\"emptyValue\",{get:function(){return null},enumerable:!0,configurable:!0}),e.prototype.initialize=function(e){t.prototype.initialize.call(this,e),this.inputEl=this._createInput(),this.defaultValue=null,this.args=e,this.render()},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-cell-editor\")},e.prototype.render=function(){t.prototype.render.call(this),this.args.container.appendChild(this.el),this.el.appendChild(this.inputEl),this.renderEditor(),this.disableNavigation()},e.prototype.renderEditor=function(){},e.prototype.disableNavigation=function(){this.inputEl.addEventListener(\"keydown\",function(e){switch(e.keyCode){case i.Keys.Left:case i.Keys.Right:case i.Keys.Up:case i.Keys.Down:case i.Keys.PageUp:case i.Keys.PageDown:e.stopImmediatePropagation()}})},e.prototype.destroy=function(){this.remove()},e.prototype.focus=function(){this.inputEl.focus()},e.prototype.show=function(){},e.prototype.hide=function(){},e.prototype.position=function(){},e.prototype.getValue=function(){return this.inputEl.value},e.prototype.setValue=function(e){this.inputEl.value=e},e.prototype.serializeValue=function(){return this.getValue()},e.prototype.isValueChanged=function(){return!(\"\"==this.getValue()&&null==this.defaultValue)&&this.getValue()!==this.defaultValue},e.prototype.applyValue=function(e,t){var n=this.args.grid.getData(),o=n.index.indexOf(e[a.DTINDEX_NAME]);n.setField(o,this.args.column.field,t)},e.prototype.loadValue=function(e){var t=e[this.args.column.field];this.defaultValue=null!=t?t:this.emptyValue,this.setValue(this.defaultValue)},e.prototype.validateValue=function(e){if(this.args.column.validator){var t=this.args.column.validator(e);if(!t.valid)return t}return{valid:!0,msg:null}},e.prototype.validate=function(){return this.validateValue(this.getValue())},e}(l.DOMView);n.CellEditorView=c;var u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"CellEditor\"},t}(s.Model);(n.CellEditor=u).initClass();var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),Object.defineProperty(e.prototype,\"emptyValue\",{get:function(){return\"\"},enumerable:!0,configurable:!0}),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e}(c);n.StringEditorView=d;var p=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"StringEditor\",this.prototype.default_view=d,this.define({completions:[r.Array,[]]})},t}(u);(n.StringEditor=p).initClass();var f=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.textarea()},t}(c);n.TextEditorView=f;var h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextEditor\",this.prototype.default_view=f},t}(u);(n.TextEditor=h).initClass();var g=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.select()},t.prototype.renderEditor=function(){for(var e=0,t=this.model.options;e<t.length;e++){var n=t[e];this.inputEl.appendChild(i.option({value:n},n))}this.focus()},t}(c);n.SelectEditorView=g;var m=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"SelectEditor\",this.prototype.default_view=g,this.define({options:[r.Array,[]]})},t}(u);(n.SelectEditor=m).initClass();var v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},t}(c);n.PercentEditorView=v;var w=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"PercentEditor\",this.prototype.default_view=v},t}(u);(n.PercentEditor=w).initClass();var y=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"checkbox\",value:\"true\"})},t.prototype.renderEditor=function(){this.focus()},t.prototype.loadValue=function(e){this.defaultValue=!!e[this.args.column.field],this.inputEl.checked=this.defaultValue},t.prototype.serializeValue=function(){return this.inputEl.checked},t}(c);n.CheckboxEditorView=y;var C=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"CheckboxEditor\",this.prototype.default_view=y},t}(u);(n.CheckboxEditor=C).initClass();var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.remove=function(){t.prototype.remove.call(this)},e.prototype.serializeValue=function(){return parseInt(this.getValue(),10)||0},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e.prototype.validateValue=function(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid integer\"}:t.prototype.validateValue.call(this,e)},e}(c);n.IntEditorView=b;var x=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"IntEditor\",this.prototype.default_view=b,this.define({step:[r.Number,1]})},t}(u);(n.IntEditor=x).initClass();var R=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.remove=function(){t.prototype.remove.call(this)},e.prototype.serializeValue=function(){return parseFloat(this.getValue())||0},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e.prototype.validateValue=function(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid number\"}:t.prototype.validateValue.call(this,e)},e}(c);n.NumberEditorView=R;var S=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"NumberEditor\",this.prototype.default_view=R,this.define({step:[r.Number,.01]})},t}(u);(n.NumberEditor=S).initClass();var E=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},t}(c);n.TimeEditorView=E;var k=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"TimeEditor\",this.prototype.default_view=E},t}(u);(n.TimeEditor=k).initClass();var T=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},Object.defineProperty(t.prototype,\"emptyValue\",{get:function(){return new Date},enumerable:!0,configurable:!0}),t.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},t.prototype.destroy=function(){e.prototype.destroy.call(this)},t.prototype.show=function(){e.prototype.show.call(this)},t.prototype.hide=function(){e.prototype.hide.call(this)},t.prototype.position=function(){return e.prototype.position.call(this)},t.prototype.getValue=function(){},t.prototype.setValue=function(e){},t}(c);n.DateEditorView=T;var P=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"DateEditor\",this.prototype.default_view=T},t}(u);(n.DateEditor=P).initClass()},434:function(e,t,n){var a=e(391),u=e(361),c=e(449),s=e(390),o=e(15),d=e(5),p=e(44),r=e(59),i=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.prototype.doFormat=function(e,t,n,o,r){return null==n?\"\":(n+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")},e}(r.Model),l=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"StringFormatter\",this.define({font_style:[o.FontStyle,\"normal\"],text_align:[o.TextAlign,\"left\"],text_color:[o.Color]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this.font_style,l=this.text_align,s=this.text_color,a=d.div({},null==n?\"\":\"\"+n);switch(i){case\"bold\":a.style.fontWeight=\"bold\";break;case\"italic\":a.style.fontStyle=\"italic\"}return null!=l&&(a.style.textAlign=l),null!=s&&(a.style.color=s),a.outerHTML},e}(n.CellFormatter=i);(n.StringFormatter=l).initClass();var f=function(c){function e(e){return c.call(this,e)||this}return a.__extends(e,c),e.initClass=function(){this.prototype.type=\"NumberFormatter\",this.define({format:[o.String,\"0,0\"],language:[o.String,\"en\"],rounding:[o.String,\"round\"]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this,l=this.format,s=this.language,a=function(){switch(i.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}}();return n=u.format(n,l,s,a),c.prototype.doFormat.call(this,e,t,n,o,r)},e}(l);(n.NumberFormatter=f).initClass();var h=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"BooleanFormatter\",this.define({icon:[o.String,\"check\"]})},e.prototype.doFormat=function(e,t,n,o,r){return n?d.i({class:this.icon}).outerHTML:\"\"},e}(i);(n.BooleanFormatter=h).initClass();var g=function(l){function e(e){return l.call(this,e)||this}return a.__extends(e,l),e.initClass=function(){this.prototype.type=\"DateFormatter\",this.define({format:[o.String,\"ISO-8601\"]})},e.prototype.getFormat=function(){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}},e.prototype.doFormat=function(e,t,n,o,r){n=p.isString(n)?parseInt(n,10):n;var i=s(n,this.getFormat());return l.prototype.doFormat.call(this,e,t,i,o,r)},e}(i);(n.DateFormatter=g).initClass();var m=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"HTMLTemplateFormatter\",this.define({template:[o.String,\"<%= value %>\"]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this.template;if(null==n)return\"\";var l=c(i),s=a.__assign({},r,{value:n});return l(s)},e}(i);(n.HTMLTemplateFormatter=m).initClass()},435:function(e,t,i){var o=e(391),s=e(447).Grid,a=e(445).RowSelectionModel,c=e(444).CheckboxSelectColumn,r=e(15),n=e(38),l=e(21),u=e(32),d=e(14),p=e(439),f=e(440);i.DTINDEX_NAME=\"__bkdt_internal_index__\";var h=function(){function e(e,t){if(this.source=e,this.view=t,i.DTINDEX_NAME in this.source.data)throw new Error(\"special name \"+i.DTINDEX_NAME+\" cannot be used as a data table column\");this.index=this.view.indices}return e.prototype.getLength=function(){return this.index.length},e.prototype.getItem=function(e){for(var t={},n=0,o=u.keys(this.source.data);n<o.length;n++){var r=o[n];t[r]=this.source.data[r][this.index[e]]}return t[i.DTINDEX_NAME]=this.index[e],t},e.prototype.getField=function(e,t){return t==i.DTINDEX_NAME?this.index[e]:this.source.data[t][this.index[e]]},e.prototype.setField=function(e,t,n){var o={},r=this.index[e];o[t]=[[r,n]],this.source.patch(o)},e.prototype.getItemMetadata=function(e){return null},e.prototype.getRecords=function(){var t=this;return l.range(0,this.getLength()).map(function(e){return t.getItem(e)})},e.prototype.sort=function(e){var u=e.map(function(e){return[e.sortCol.field,e.sortAsc?1:-1]});0==u.length&&(u=[[i.DTINDEX_NAME,1]]);var d=this.getRecords(),p=this.index.slice();this.index.sort(function(e,t){for(var n=0,o=u;n<o.length;n++){var r=o[n],i=r[0],l=r[1],s=d[p.indexOf(e)][i],a=d[p.indexOf(t)][i],c=s==a?0:a<s?l:-l;if(0!=c)return c}return 0})},e}();i.DataProvider=h;var g=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._in_selection_update=!1,e._warned_not_reorderable=!1,e}return o.__extends(e,t),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.render()}),this.connect(this.model.source.streaming,function(){return e.updateGrid()}),this.connect(this.model.source.patching,function(){return e.updateGrid()}),this.connect(this.model.source.change,function(){return e.updateGrid()}),this.connect(this.model.source.properties.data.change,function(){return e.updateGrid()}),this.connect(this.model.source.selected.change,function(){return e.updateSelection()}),this.connect(this.model.source.selected.properties.indices.change,function(){return e.updateSelection()})},e.prototype.updateGrid=function(){var t=this;this.model.view.compute_indices(),this.data.constructor(this.model.source,this.model.view);var n=this.grid.getColumns(),e=this.grid.getSortColumns().map(function(e){return{sortCol:{field:n[t.grid.getColumnIndex(e.columnId)].field},sortAsc:e.sortAsc}});this.data.sort(e),this.grid.invalidate(),this.grid.render()},e.prototype.updateSelection=function(){var t=this;if(!this._in_selection_update){var e=this.model.source.selected,n=e.indices.map(function(e){return t.data.index.indexOf(e)});this._in_selection_update=!0,this.grid.setSelectedRows(n),this._in_selection_update=!1;var o=this.grid.getViewport(),r=this.model.get_scroll_index(o,n);null!=r&&this.grid.scrollRowToTop(r)}},e.prototype.newIndexColumn=function(){return{id:n.uniqueId(),name:this.model.index_header,field:i.DTINDEX_NAME,width:this.model.index_width,behavior:\"select\",cannotTriggerInsert:!0,resizable:!1,selectable:!1,sortable:!0,cssClass:\"bk-cell-index\",headerCssClass:\"bk-header-index\"}},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-data-table\")},e.prototype.render=function(){var e,n=this,o=this.model.columns.map(function(e){return e.toColumn()});if(\"checkbox\"==this.model.selectable&&(e=new c({cssClass:\"bk-cell-select\"}),o.unshift(e.getColumnDefinition())),null!=this.model.index_position){var t=this.model.index_position,r=this.newIndexColumn();-1==t?o.push(r):t<-1?o.splice(t+1,0,r):o.splice(t,0,r)}var i=this.model.reorderable;!i||\"undefined\"!=typeof $&&null!=$.fn&&null!=$.fn.sortable||(this._warned_not_reorderable||(d.logger.warn(\"jquery-ui is required to enable DataTable.reorderable\"),this._warned_not_reorderable=!0),i=!1);var l={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:i,forceFitColumns:this.model.fit_columns,autoHeight:\"auto\"==this.model.height,multiColumnSort:this.model.sortable,editable:this.model.editable,autoEdit:!1,rowHeight:this.model.row_height};null!=this.model.width?this.el.style.width=this.model.width+\"px\":this.el.style.width=this.model.default_width+\"px\",null!=this.model.height&&\"auto\"!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),this.data=new h(this.model.source,this.model.view),this.grid=new s(this.el,this.data,o,l),this.grid.onSort.subscribe(function(e,t){o=t.sortCols,n.data.sort(o),n.grid.invalidate(),n.updateSelection(),n.grid.render(),n.model.header_row||n._hide_header()}),!1!==this.model.selectable&&(this.grid.setSelectionModel(new a({selectActiveRow:null==e})),null!=e&&this.grid.registerPlugin(e),this.grid.onSelectedRowsChanged.subscribe(function(e,t){n._in_selection_update||(n.model.source.selected.indices=t.rows.map(function(e){return n.data.index[e]}))}),this.updateSelection(),this.model.header_row||this._hide_header())},e.prototype._hide_header=function(){for(var e=0,t=Array.from(this.el.querySelectorAll(\".slick-header-columns\"));e<t.length;e++){var n=t[e];n.style.height=\"0px\"}this.grid.resizeCanvas()},e}(f.WidgetView);i.DataTableView=g;var m=function(n){function e(e){var t=n.call(this,e)||this;return t.default_width=600,t}return o.__extends(e,n),e.initClass=function(){this.prototype.type=\"DataTable\",this.prototype.default_view=g,this.define({columns:[r.Array,[]],fit_columns:[r.Bool,!0],sortable:[r.Bool,!0],reorderable:[r.Bool,!0],editable:[r.Bool,!1],selectable:[r.Any,!0],index_position:[r.Int,0],index_header:[r.String,\"#\"],index_width:[r.Int,40],scroll_to_selection:[r.Bool,!0],header_row:[r.Bool,!0],row_height:[r.Int,25]}),this.override({height:400})},e.prototype.get_scroll_index=function(t,e){return this.scroll_to_selection&&0!=e.length?l.any(e,function(e){return t.top<=e&&e<=t.bottom})?null:Math.max(0,Math.min.apply(Math,e)-1):null},e}(p.TableWidget);(i.DataTable=m).initClass()},436:function(e,t,n){var o=e(391);o.__exportStar(e(433),n),o.__exportStar(e(434),n);var r=e(435);n.DataTable=r.DataTable;var i=e(438);n.TableColumn=i.TableColumn;var l=e(439);n.TableWidget=l.TableWidget},437:function(e,t,n){var o=e(436);n.Tables=o;var r=e(0);r.register_models(o)},438:function(e,t,n){var o=e(391),r=e(434),i=e(433),l=e(15),s=e(38),a=e(59),c=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"TableColumn\",this.define({field:[l.String],title:[l.String],width:[l.Number,300],formatter:[l.Instance,function(){return new r.StringFormatter}],editor:[l.Instance,function(){return new i.StringEditor}],sortable:[l.Bool,!0],default_sort:[l.String,\"ascending\"]})},e.prototype.toColumn=function(){return{id:s.uniqueId(),field:this.field,name:this.title,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}},e}(a.Model);(n.TableColumn=c).initClass()},439:function(e,t,n){var o=e(391),r=e(440),i=e(199),l=e(15),s=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"TableWidget\",this.define({source:[l.Instance],view:[l.Instance,function(){return new i.CDSView}]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),null==this.view.source&&(this.view.source=this.source,this.view.compute_indices())},e}(r.Widget);(n.TableWidget=s).initClass()},440:function(e,t,n){var o=e(391),r=e(157),i=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-widget\")},t.prototype.render=function(){this._render_classes(),null!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),null!=this.model.width&&(this.el.style.width=this.model.width+\"px\")},t.prototype.get_width=function(){throw new Error(\"unused\")},t.prototype.get_height=function(){throw new Error(\"unused\")},t}(r.LayoutDOMView);n.WidgetView=i;var l=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"Widget\"},e}(r.LayoutDOM);(n.Widget=l).initClass()},441:function(e,n,t){\n",
493
+       "      /*!\n",
494
+       "           * jQuery JavaScript Library v3.2.1\n",
495
+       "           * https://jquery.com/\n",
496
+       "           *\n",
497
+       "           * Includes Sizzle.js\n",
498
+       "           * https://sizzlejs.com/\n",
499
+       "           *\n",
500
+       "           * Copyright JS Foundation and other contributors\n",
501
+       "           * Released under the MIT license\n",
502
+       "           * https://jquery.org/license\n",
503
+       "           *\n",
504
+       "           * Date: 2017-03-20T18:59Z\n",
505
+       "           */\n",
506
+       "      !function(e,t){\"use strict\";\"object\"==typeof n&&\"object\"==typeof n.exports?n.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error(\"jQuery requires a window with a document\");return t(e)}:t(e)}(\"undefined\"!=typeof window?window:this,function(R,e){\"use strict\";var t=[],S=R.document,o=Object.getPrototypeOf,s=t.slice,g=t.concat,a=t.push,r=t.indexOf,n={},i=n.toString,h=n.hasOwnProperty,l=h.toString,c=l.call(Object),m={};function v(e,t){var n=(t=t||S).createElement(\"script\");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}var E=function(e,t){return new E.fn.init(e,t)},u=/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g,d=/^-ms-/,p=/-([a-z])/g,f=function(e,t){return t.toUpperCase()};function w(e){var t=!!e&&\"length\"in e&&e.length,n=E.type(e);return\"function\"!==n&&!E.isWindow(e)&&(\"array\"===n||0===t||\"number\"==typeof t&&0<t&&t-1 in e)}E.fn=E.prototype={jquery:\"3.2.1\",constructor:E,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=E.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return E.each(this,e)},map:function(n){return this.pushStack(E.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:t.sort,splice:t.splice},E.extend=E.fn.extend=function(){var e,t,n,o,r,i,l=arguments[0]||{},s=1,a=arguments.length,c=!1;for(\"boolean\"==typeof l&&(c=l,l=arguments[s]||{},s++),\"object\"==typeof l||E.isFunction(l)||(l={}),s===a&&(l=this,s--);s<a;s++)if(null!=(e=arguments[s]))for(t in e)n=l[t],o=e[t],l!==o&&(c&&o&&(E.isPlainObject(o)||(r=Array.isArray(o)))?(r?(r=!1,i=n&&Array.isArray(n)?n:[]):i=n&&E.isPlainObject(n)?n:{},l[t]=E.extend(c,i,o)):void 0!==o&&(l[t]=o));return l},E.extend({expando:\"jQuery\"+(\"3.2.1\"+Math.random()).replace(/\\D/g,\"\"),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return\"function\"===E.type(e)},isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=E.type(e);return(\"number\"===t||\"string\"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return!(!e||\"[object Object]\"!==i.call(e))&&(!(t=o(e))||\"function\"==typeof(n=h.call(t,\"constructor\")&&t.constructor)&&l.call(n)===c)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+\"\":\"object\"==typeof e||\"function\"==typeof e?n[i.call(e)]||\"object\":typeof e},globalEval:function(e){v(e)},camelCase:function(e){return e.replace(d,\"ms-\").replace(p,f)},each:function(e,t){var n,o=0;if(w(e))for(n=e.length;o<n&&!1!==t.call(e[o],o,e[o]);o++);else for(o in e)if(!1===t.call(e[o],o,e[o]))break;return e},trim:function(e){return null==e?\"\":(e+\"\").replace(u,\"\")},makeArray:function(e,t){var n=t||[];return null!=e&&(w(Object(e))?E.merge(n,\"string\"==typeof e?[e]:e):a.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:r.call(t,e,n)},merge:function(e,t){for(var n=+t.length,o=0,r=e.length;o<n;o++)e[r++]=t[o];return e.length=r,e},grep:function(e,t,n){for(var o=[],r=0,i=e.length,l=!n;r<i;r++)!t(e[r],r)!==l&&o.push(e[r]);return o},map:function(e,t,n){var o,r,i=0,l=[];if(w(e))for(o=e.length;i<o;i++)null!=(r=t(e[i],i,n))&&l.push(r);else for(i in e)null!=(r=t(e[i],i,n))&&l.push(r);return g.apply([],l)},guid:1,proxy:function(e,t){var n,o,r;if(\"string\"==typeof t&&(n=e[t],t=e,e=n),E.isFunction(e))return o=s.call(arguments,2),(r=function(){return e.apply(t||this,o.concat(s.call(arguments)))}).guid=e.guid=e.guid||E.guid++,r},now:Date.now,support:m}),\"function\"==typeof Symbol&&(E.fn[Symbol.iterator]=t[Symbol.iterator]),E.each(\"Boolean Number String Function Array Date RegExp Object Error Symbol\".split(\" \"),function(e,t){n[\"[object \"+t+\"]\"]=t.toLowerCase()});var y=\n",
507
+       "      /*!\n",
508
+       "               * Sizzle CSS Selector Engine v2.3.3\n",
509
+       "               * https://sizzlejs.com/\n",
510
+       "               *\n",
511
+       "               * Copyright jQuery Foundation and other contributors\n",
512
+       "               * Released under the MIT license\n",
513
+       "               * http://jquery.org/license\n",
514
+       "               *\n",
515
+       "               * Date: 2016-08-08\n",
516
+       "               */\n",
517
+       "      function(n){var e,f,C,i,r,h,d,g,b,a,c,x,R,l,S,m,s,u,v,E=\"sizzle\"+1*new Date,w=n.document,k=0,o=0,p=le(),y=le(),T=le(),P=function(e,t){return e===t&&(c=!0),0},D={}.hasOwnProperty,t=[],A=t.pop,N=t.push,$=t.push,H=t.slice,L=function(e,t){for(var n=0,o=e.length;n<o;n++)if(e[n]===t)return n;return-1},_=\"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",F=\"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",I=\"(?:\\\\\\\\.|[\\\\w-]|[^\\0-\\\\xa0])+\",M=\"\\\\[\"+F+\"*(\"+I+\")(?:\"+F+\"*([*^$|!~]?=)\"+F+\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\"+I+\"))|)\"+F+\"*\\\\]\",W=\":(\"+I+\")(?:\\\\((('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\"+M+\")*)|.*)\\\\)|)\",j=new RegExp(F+\"+\",\"g\"),V=new RegExp(\"^\"+F+\"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\"+F+\"+$\",\"g\"),B=new RegExp(\"^\"+F+\"*,\"+F+\"*\"),q=new RegExp(\"^\"+F+\"*([>+~]|\"+F+\")\"+F+\"*\"),O=new RegExp(\"=\"+F+\"*([^\\\\]'\\\"]*?)\"+F+\"*\\\\]\",\"g\"),z=new RegExp(W),X=new RegExp(\"^\"+I+\"$\"),U={ID:new RegExp(\"^#(\"+I+\")\"),CLASS:new RegExp(\"^\\\\.(\"+I+\")\"),TAG:new RegExp(\"^(\"+I+\"|[*])\"),ATTR:new RegExp(\"^\"+M),PSEUDO:new RegExp(\"^\"+W),CHILD:new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\"+F+\"*(even|odd|(([+-]|)(\\\\d*)n|)\"+F+\"*(?:([+-]|)\"+F+\"*(\\\\d+)|))\"+F+\"*\\\\)|)\",\"i\"),bool:new RegExp(\"^(?:\"+_+\")$\",\"i\"),needsContext:new RegExp(\"^\"+F+\"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\"+F+\"*((?:-\\\\d)?\\\\d*)\"+F+\"*\\\\)|)(?=[^-]|$)\",\"i\")},K=/^(?:input|select|textarea|button)$/i,G=/^h\\d$/i,Y=/^[^{]+\\{\\s*\\[native \\w/,Q=/^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,J=/[+~]/,Z=new RegExp(\"\\\\\\\\([\\\\da-f]{1,6}\"+F+\"?|(\"+F+\")|.)\",\"ig\"),ee=function(e,t,n){var o=\"0x\"+t-65536;return o!=o||n?t:o<0?String.fromCharCode(o+65536):String.fromCharCode(o>>10|55296,1023&o|56320)},te=/([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,ne=function(e,t){return t?\"\\0\"===e?\"�\":e.slice(0,-1)+\"\\\\\"+e.charCodeAt(e.length-1).toString(16)+\" \":\"\\\\\"+e},oe=function(){x()},re=we(function(e){return!0===e.disabled&&(\"form\"in e||\"label\"in e)},{dir:\"parentNode\",next:\"legend\"});try{$.apply(t=H.call(w.childNodes),w.childNodes),t[w.childNodes.length].nodeType}catch(e){$={apply:t.length?function(e,t){N.apply(e,H.call(t))}:function(e,t){for(var n=e.length,o=0;e[n++]=t[o++];);e.length=n-1}}}function ie(e,t,n,o){var r,i,l,s,a,c,u,d=t&&t.ownerDocument,p=t?t.nodeType:9;if(n=n||[],\"string\"!=typeof e||!e||1!==p&&9!==p&&11!==p)return n;if(!o&&((t?t.ownerDocument||t:w)!==R&&x(t),t=t||R,S)){if(11!==p&&(a=Q.exec(e)))if(r=a[1]){if(9===p){if(!(l=t.getElementById(r)))return n;if(l.id===r)return n.push(l),n}else if(d&&(l=d.getElementById(r))&&v(t,l)&&l.id===r)return n.push(l),n}else{if(a[2])return $.apply(n,t.getElementsByTagName(e)),n;if((r=a[3])&&f.getElementsByClassName&&t.getElementsByClassName)return $.apply(n,t.getElementsByClassName(r)),n}if(f.qsa&&!T[e+\" \"]&&(!m||!m.test(e))){if(1!==p)d=t,u=e;else if(\"object\"!==t.nodeName.toLowerCase()){for((s=t.getAttribute(\"id\"))?s=s.replace(te,ne):t.setAttribute(\"id\",s=E),c=h(e),i=c.length;i--;)c[i]=\"#\"+s+\" \"+ve(c[i]);u=c.join(\",\"),d=J.test(e)&&ge(t.parentNode)||t}if(u)try{return $.apply(n,d.querySelectorAll(u)),n}catch(e){}finally{s===E&&t.removeAttribute(\"id\")}}}return g(e.replace(V,\"$1\"),t,n,o)}function le(){var o=[];return function e(t,n){o.push(t+\" \")>C.cacheLength&&delete e[o.shift()];return e[t+\" \"]=n}}function se(e){return e[E]=!0,e}function ae(e){var t=R.createElement(\"fieldset\");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ce(e,t){for(var n=e.split(\"|\"),o=n.length;o--;)C.attrHandle[n[o]]=t}function ue(e,t){var n=t&&e,o=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(o)return o;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(n){return function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&e.type===n}}function pe(n){return function(e){var t=e.nodeName.toLowerCase();return(\"input\"===t||\"button\"===t)&&e.type===n}}function fe(t){return function(e){return\"form\"in e?e.parentNode&&!1===e.disabled?\"label\"in e?\"label\"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&re(e)===t:e.disabled===t:\"label\"in e&&e.disabled===t}}function he(l){return se(function(i){return i=+i,se(function(e,t){for(var n,o=l([],e.length,i),r=o.length;r--;)e[n=o[r]]&&(e[n]=!(t[n]=e[n]))})})}function ge(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in f=ie.support={},r=ie.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&\"HTML\"!==t.nodeName},x=ie.setDocument=function(e){var t,n,o=e?e.ownerDocument||e:w;return o!==R&&9===o.nodeType&&o.documentElement&&(l=(R=o).documentElement,S=!r(R),w!==R&&(n=R.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener(\"unload\",oe,!1):n.attachEvent&&n.attachEvent(\"onunload\",oe)),f.attributes=ae(function(e){return e.className=\"i\",!e.getAttribute(\"className\")}),f.getElementsByTagName=ae(function(e){return e.appendChild(R.createComment(\"\")),!e.getElementsByTagName(\"*\").length}),f.getElementsByClassName=Y.test(R.getElementsByClassName),f.getById=ae(function(e){return l.appendChild(e).id=E,!R.getElementsByName||!R.getElementsByName(E).length}),f.getById?(C.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute(\"id\")===t}},C.find.ID=function(e,t){if(void 0!==t.getElementById&&S){var n=t.getElementById(e);return n?[n]:[]}}):(C.filter.ID=function(e){var n=e.replace(Z,ee);return function(e){var t=void 0!==e.getAttributeNode&&e.getAttributeNode(\"id\");return t&&t.value===n}},C.find.ID=function(e,t){if(void 0!==t.getElementById&&S){var n,o,r,i=t.getElementById(e);if(i){if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i];for(r=t.getElementsByName(e),o=0;i=r[o++];)if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i]}return[]}}),C.find.TAG=f.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):f.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,o=[],r=0,i=t.getElementsByTagName(e);if(\"*\"===e){for(;n=i[r++];)1===n.nodeType&&o.push(n);return o}return i},C.find.CLASS=f.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&S)return t.getElementsByClassName(e)},s=[],m=[],(f.qsa=Y.test(R.querySelectorAll))&&(ae(function(e){l.appendChild(e).innerHTML=\"<a id='\"+E+\"'></a><select id='\"+E+\"-\\r\\\\' msallowcapture=''><option selected=''></option></select>\",e.querySelectorAll(\"[msallowcapture^='']\").length&&m.push(\"[*^$]=\"+F+\"*(?:''|\\\"\\\")\"),e.querySelectorAll(\"[selected]\").length||m.push(\"\\\\[\"+F+\"*(?:value|\"+_+\")\"),e.querySelectorAll(\"[id~=\"+E+\"-]\").length||m.push(\"~=\"),e.querySelectorAll(\":checked\").length||m.push(\":checked\"),e.querySelectorAll(\"a#\"+E+\"+*\").length||m.push(\".#.+[+~]\")}),ae(function(e){e.innerHTML=\"<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>\";var t=R.createElement(\"input\");t.setAttribute(\"type\",\"hidden\"),e.appendChild(t).setAttribute(\"name\",\"D\"),e.querySelectorAll(\"[name=d]\").length&&m.push(\"name\"+F+\"*[*^$|!~]?=\"),2!==e.querySelectorAll(\":enabled\").length&&m.push(\":enabled\",\":disabled\"),l.appendChild(e).disabled=!0,2!==e.querySelectorAll(\":disabled\").length&&m.push(\":enabled\",\":disabled\"),e.querySelectorAll(\"*,:x\"),m.push(\",.*:\")})),(f.matchesSelector=Y.test(u=l.matches||l.webkitMatchesSelector||l.mozMatchesSelector||l.oMatchesSelector||l.msMatchesSelector))&&ae(function(e){f.disconnectedMatch=u.call(e,\"*\"),u.call(e,\"[s!='']:x\"),s.push(\"!=\",W)}),m=m.length&&new RegExp(m.join(\"|\")),s=s.length&&new RegExp(s.join(\"|\")),t=Y.test(l.compareDocumentPosition),v=t||Y.test(l.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,o=t&&t.parentNode;return e===o||!(!o||1!==o.nodeType||!(n.contains?n.contains(o):e.compareDocumentPosition&&16&e.compareDocumentPosition(o)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},P=t?function(e,t){if(e===t)return c=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!f.sortDetached&&t.compareDocumentPosition(e)===n?e===R||e.ownerDocument===w&&v(w,e)?-1:t===R||t.ownerDocument===w&&v(w,t)?1:a?L(a,e)-L(a,t):0:4&n?-1:1)}:function(e,t){if(e===t)return c=!0,0;var n,o=0,r=e.parentNode,i=t.parentNode,l=[e],s=[t];if(!r||!i)return e===R?-1:t===R?1:r?-1:i?1:a?L(a,e)-L(a,t):0;if(r===i)return ue(e,t);for(n=e;n=n.parentNode;)l.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;l[o]===s[o];)o++;return o?ue(l[o],s[o]):l[o]===w?-1:s[o]===w?1:0}),R},ie.matches=function(e,t){return ie(e,null,null,t)},ie.matchesSelector=function(e,t){if((e.ownerDocument||e)!==R&&x(e),t=t.replace(O,\"='$1']\"),f.matchesSelector&&S&&!T[t+\" \"]&&(!s||!s.test(t))&&(!m||!m.test(t)))try{var n=u.call(e,t);if(n||f.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){}return 0<ie(t,R,null,[e]).length},ie.contains=function(e,t){return(e.ownerDocument||e)!==R&&x(e),v(e,t)},ie.attr=function(e,t){(e.ownerDocument||e)!==R&&x(e);var n=C.attrHandle[t.toLowerCase()],o=n&&D.call(C.attrHandle,t.toLowerCase())?n(e,t,!S):void 0;return void 0!==o?o:f.attributes||!S?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},ie.escape=function(e){return(e+\"\").replace(te,ne)},ie.error=function(e){throw new Error(\"Syntax error, unrecognized expression: \"+e)},ie.uniqueSort=function(e){var t,n=[],o=0,r=0;if(c=!f.detectDuplicates,a=!f.sortStable&&e.slice(0),e.sort(P),c){for(;t=e[r++];)t===e[r]&&(o=n.push(r));for(;o--;)e.splice(n[o],1)}return a=null,e},i=ie.getText=function(e){var t,n=\"\",o=0,r=e.nodeType;if(r){if(1===r||9===r||11===r){if(\"string\"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===r||4===r)return e.nodeValue}else for(;t=e[o++];)n+=i(t);return n},(C=ie.selectors={cacheLength:50,createPseudo:se,match:U,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(Z,ee),e[3]=(e[3]||e[4]||e[5]||\"\").replace(Z,ee),\"~=\"===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]||ie.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]&&ie.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return U.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||\"\":n&&z.test(n)&&(t=h(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(Z,ee).toLowerCase();return\"*\"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+\" \"];return t||(t=new RegExp(\"(^|\"+F+\")\"+e+\"(\"+F+\"|$)\"))&&p(e,function(e){return t.test(\"string\"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute(\"class\")||\"\")})},ATTR:function(n,o,r){return function(e){var t=ie.attr(e,n);return null==t?\"!=\"===o:!o||(t+=\"\",\"=\"===o?t===r:\"!=\"===o?t!==r:\"^=\"===o?r&&0===t.indexOf(r):\"*=\"===o?r&&-1<t.indexOf(r):\"$=\"===o?r&&t.slice(-r.length)===r:\"~=\"===o?-1<(\" \"+t.replace(j,\" \")+\" \").indexOf(r):\"|=\"===o&&(t===r||t.slice(0,r.length+1)===r+\"-\"))}},CHILD:function(h,e,t,g,m){var v=\"nth\"!==h.slice(0,3),w=\"last\"!==h.slice(-4),y=\"of-type\"===e;return 1===g&&0===m?function(e){return!!e.parentNode}:function(e,t,n){var o,r,i,l,s,a,c=v!==w?\"nextSibling\":\"previousSibling\",u=e.parentNode,d=y&&e.nodeName.toLowerCase(),p=!n&&!y,f=!1;if(u){if(v){for(;c;){for(l=e;l=l[c];)if(y?l.nodeName.toLowerCase()===d:1===l.nodeType)return!1;a=c=\"only\"===h&&!a&&\"nextSibling\"}return!0}if(a=[w?u.firstChild:u.lastChild],w&&p){for(i=(l=u)[E]||(l[E]={}),r=i[l.uniqueID]||(i[l.uniqueID]={}),o=r[h]||[],s=o[0]===k&&o[1],f=s&&o[2],l=s&&u.childNodes[s];l=++s&&l&&l[c]||(f=s=0)||a.pop();)if(1===l.nodeType&&++f&&l===e){r[h]=[k,s,f];break}}else if(p&&(i=(l=e)[E]||(l[E]={}),r=i[l.uniqueID]||(i[l.uniqueID]={}),o=r[h]||[],s=o[0]===k&&o[1],f=s),!1===f)for(;(l=++s&&l&&l[c]||(f=s=0)||a.pop())&&((y?l.nodeName.toLowerCase()!==d:1!==l.nodeType)||!++f||(p&&(i=l[E]||(l[E]={}),(r=i[l.uniqueID]||(i[l.uniqueID]={}))[h]=[k,f]),l!==e)););return(f-=m)===g||f%g==0&&0<=f/g}}},PSEUDO:function(e,i){var t,l=C.pseudos[e]||C.setFilters[e.toLowerCase()]||ie.error(\"unsupported pseudo: \"+e);return l[E]?l(i):1<l.length?(t=[e,e,\"\",i],C.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,t){for(var n,o=l(e,i),r=o.length;r--;)n=L(e,o[r]),e[n]=!(t[n]=o[r])}):function(e){return l(e,0,t)}):l}},pseudos:{not:se(function(e){var o=[],r=[],s=d(e.replace(V,\"$1\"));return s[E]?se(function(e,t,n,o){for(var r,i=s(e,null,o,[]),l=e.length;l--;)(r=i[l])&&(e[l]=!(t[l]=r))}):function(e,t,n){return o[0]=e,s(o,null,n,r),o[0]=null,!r.pop()}}),has:se(function(t){return function(e){return 0<ie(t,e).length}}),contains:se(function(t){return t=t.replace(Z,ee),function(e){return-1<(e.textContent||e.innerText||i(e)).indexOf(t)}}),lang:se(function(n){return X.test(n||\"\")||ie.error(\"unsupported lang: \"+n),n=n.replace(Z,ee).toLowerCase(),function(e){var t;do{if(t=S?e.lang:e.getAttribute(\"xml:lang\")||e.getAttribute(\"lang\"))return(t=t.toLowerCase())===n||0===t.indexOf(n+\"-\")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===l},focus:function(e){return e===R.activeElement&&(!R.hasFocus||R.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:fe(!1),disabled:fe(!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!C.pseudos.empty(e)},header:function(e){return G.test(e.nodeName)},input:function(e){return K.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:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:he(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:he(function(e,t,n){for(var o=n<0?n+t:n;0<=--o;)e.push(o);return e}),gt:he(function(e,t,n){for(var o=n<0?n+t:n;++o<t;)e.push(o);return e})}}).pseudos.nth=C.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})C.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})C.pseudos[e]=pe(e);function me(){}function ve(e){for(var t=0,n=e.length,o=\"\";t<n;t++)o+=e[t].value;return o}function we(s,e,t){var a=e.dir,c=e.next,u=c||a,d=t&&\"parentNode\"===u,p=o++;return e.first?function(e,t,n){for(;e=e[a];)if(1===e.nodeType||d)return s(e,t,n);return!1}:function(e,t,n){var o,r,i,l=[k,p];if(n){for(;e=e[a];)if((1===e.nodeType||d)&&s(e,t,n))return!0}else for(;e=e[a];)if(1===e.nodeType||d)if(i=e[E]||(e[E]={}),r=i[e.uniqueID]||(i[e.uniqueID]={}),c&&c===e.nodeName.toLowerCase())e=e[a]||e;else{if((o=r[u])&&o[0]===k&&o[1]===p)return l[2]=o[2];if((r[u]=l)[2]=s(e,t,n))return!0}return!1}}function ye(r){return 1<r.length?function(e,t,n){for(var o=r.length;o--;)if(!r[o](e,t,n))return!1;return!0}:r[0]}function Ce(e,t,n,o,r){for(var i,l=[],s=0,a=e.length,c=null!=t;s<a;s++)(i=e[s])&&(n&&!n(i,o,r)||(l.push(i),c&&t.push(s)));return l}function be(f,h,g,m,v,e){return m&&!m[E]&&(m=be(m)),v&&!v[E]&&(v=be(v,e)),se(function(e,t,n,o){var r,i,l,s=[],a=[],c=t.length,u=e||function(e,t,n){for(var o=0,r=t.length;o<r;o++)ie(e,t[o],n);return n}(h||\"*\",n.nodeType?[n]:n,[]),d=!f||!e&&h?u:Ce(u,s,f,n,o),p=g?v||(e?f:c||m)?[]:t:d;if(g&&g(d,p,n,o),m)for(r=Ce(p,a),m(r,[],n,o),i=r.length;i--;)(l=r[i])&&(p[a[i]]=!(d[a[i]]=l));if(e){if(v||f){if(v){for(r=[],i=p.length;i--;)(l=p[i])&&r.push(d[i]=l);v(null,p=[],r,o)}for(i=p.length;i--;)(l=p[i])&&-1<(r=v?L(e,l):s[i])&&(e[r]=!(t[r]=l))}}else p=Ce(p===t?p.splice(c,p.length):p),v?v(null,t,p,o):$.apply(t,p)})}function xe(e){for(var r,t,n,o=e.length,i=C.relative[e[0].type],l=i||C.relative[\" \"],s=i?1:0,a=we(function(e){return e===r},l,!0),c=we(function(e){return-1<L(r,e)},l,!0),u=[function(e,t,n){var o=!i&&(n||t!==b)||((r=t).nodeType?a(e,t,n):c(e,t,n));return r=null,o}];s<o;s++)if(t=C.relative[e[s].type])u=[we(ye(u),t)];else{if((t=C.filter[e[s].type].apply(null,e[s].matches))[E]){for(n=++s;n<o&&!C.relative[e[n].type];n++);return be(1<s&&ye(u),1<s&&ve(e.slice(0,s-1).concat({value:\" \"===e[s-2].type?\"*\":\"\"})).replace(V,\"$1\"),t,s<n&&xe(e.slice(s,n)),n<o&&xe(e=e.slice(n)),n<o&&ve(e))}u.push(t)}return ye(u)}return me.prototype=C.filters=C.pseudos,C.setFilters=new me,h=ie.tokenize=function(e,t){var n,o,r,i,l,s,a,c=y[e+\" \"];if(c)return t?0:c.slice(0);for(l=e,s=[],a=C.preFilter;l;){for(i in n&&!(o=B.exec(l))||(o&&(l=l.slice(o[0].length)||l),s.push(r=[])),n=!1,(o=q.exec(l))&&(n=o.shift(),r.push({value:n,type:o[0].replace(V,\" \")}),l=l.slice(n.length)),C.filter)!(o=U[i].exec(l))||a[i]&&!(o=a[i](o))||(n=o.shift(),r.push({value:n,type:i,matches:o}),l=l.slice(n.length));if(!n)break}return t?l.length:l?ie.error(e):y(e,s).slice(0)},d=ie.compile=function(e,t){var n,m,v,w,y,o,r=[],i=[],l=T[e+\" \"];if(!l){for(t||(t=h(e)),n=t.length;n--;)(l=xe(t[n]))[E]?r.push(l):i.push(l);(l=T(e,(m=i,w=0<(v=r).length,y=0<m.length,o=function(e,t,n,o,r){var i,l,s,a=0,c=\"0\",u=e&&[],d=[],p=b,f=e||y&&C.find.TAG(\"*\",r),h=k+=null==p?1:Math.random()||.1,g=f.length;for(r&&(b=t===R||t||r);c!==g&&null!=(i=f[c]);c++){if(y&&i){for(l=0,t||i.ownerDocument===R||(x(i),n=!S);s=m[l++];)if(s(i,t||R,n)){o.push(i);break}r&&(k=h)}w&&((i=!s&&i)&&a--,e&&u.push(i))}if(a+=c,w&&c!==a){for(l=0;s=v[l++];)s(u,d,t,n);if(e){if(0<a)for(;c--;)u[c]||d[c]||(d[c]=A.call(o));d=Ce(d)}$.apply(o,d),r&&!e&&0<d.length&&1<a+v.length&&ie.uniqueSort(o)}return r&&(k=h,b=p),u},w?se(o):o))).selector=e}return l},g=ie.select=function(e,t,n,o){var r,i,l,s,a,c=\"function\"==typeof e&&e,u=!o&&h(e=c.selector||e);if(n=n||[],1===u.length){if(2<(i=u[0]=u[0].slice(0)).length&&\"ID\"===(l=i[0]).type&&9===t.nodeType&&S&&C.relative[i[1].type]){if(!(t=(C.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;c&&(t=t.parentNode),e=e.slice(i.shift().value.length)}for(r=U.needsContext.test(e)?0:i.length;r--&&(l=i[r],!C.relative[s=l.type]);)if((a=C.find[s])&&(o=a(l.matches[0].replace(Z,ee),J.test(i[0].type)&&ge(t.parentNode)||t))){if(i.splice(r,1),!(e=o.length&&ve(i)))return $.apply(n,o),n;break}}return(c||d(e,u))(o,t,!S,n,!t||J.test(e)&&ge(t.parentNode)||t),n},f.sortStable=E.split(\"\").sort(P).join(\"\")===E,f.detectDuplicates=!!c,x(),f.sortDetached=ae(function(e){return 1&e.compareDocumentPosition(R.createElement(\"fieldset\"))}),ae(function(e){return e.innerHTML=\"<a href='#'></a>\",\"#\"===e.firstChild.getAttribute(\"href\")})||ce(\"type|href|height|width\",function(e,t,n){if(!n)return e.getAttribute(t,\"type\"===t.toLowerCase()?1:2)}),f.attributes&&ae(function(e){return e.innerHTML=\"<input/>\",e.firstChild.setAttribute(\"value\",\"\"),\"\"===e.firstChild.getAttribute(\"value\")})||ce(\"value\",function(e,t,n){if(!n&&\"input\"===e.nodeName.toLowerCase())return e.defaultValue}),ae(function(e){return null==e.getAttribute(\"disabled\")})||ce(_,function(e,t,n){var o;if(!n)return!0===e[t]?t.toLowerCase():(o=e.getAttributeNode(t))&&o.specified?o.value:null}),ie}(R);E.find=y,E.expr=y.selectors,E.expr[\":\"]=E.expr.pseudos,E.uniqueSort=E.unique=y.uniqueSort,E.text=y.getText,E.isXMLDoc=y.isXML,E.contains=y.contains,E.escapeSelector=y.escape;var C=function(e,t,n){for(var o=[],r=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(r&&E(e).is(n))break;o.push(e)}return o},b=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},x=E.expr.match.needsContext;function k(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var T=/^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i,P=/^.[^:#\\[\\.,]*$/;function D(e,n,o){return E.isFunction(n)?E.grep(e,function(e,t){return!!n.call(e,t,e)!==o}):n.nodeType?E.grep(e,function(e){return e===n!==o}):\"string\"!=typeof n?E.grep(e,function(e){return-1<r.call(n,e)!==o}):P.test(n)?E.filter(n,e,o):(n=E.filter(n,e),E.grep(e,function(e){return-1<r.call(n,e)!==o&&1===e.nodeType}))}E.filter=function(e,t,n){var o=t[0];return n&&(e=\":not(\"+e+\")\"),1===t.length&&1===o.nodeType?E.find.matchesSelector(o,e)?[o]:[]:E.find.matches(e,E.grep(t,function(e){return 1===e.nodeType}))},E.fn.extend({find:function(e){var t,n,o=this.length,r=this;if(\"string\"!=typeof e)return this.pushStack(E(e).filter(function(){for(t=0;t<o;t++)if(E.contains(r[t],this))return!0}));for(n=this.pushStack([]),t=0;t<o;t++)E.find(e,r[t],n);return 1<o?E.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&&x.test(e)?E(e):e||[],!1).length}});var A,N=/^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/,$=E.fn.init=function(e,t,n){var o,r;if(!e)return this;if(n=n||A,\"string\"==typeof e){if(!(o=\"<\"===e[0]&&\">\"===e[e.length-1]&&3<=e.length?[null,e,null]:N.exec(e))||!o[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(o[1]){if(t=t instanceof E?t[0]:t,E.merge(this,E.parseHTML(o[1],t&&t.nodeType?t.ownerDocument||t:S,!0)),T.test(o[1])&&E.isPlainObject(t))for(o in t)E.isFunction(this[o])?this[o](t[o]):this.attr(o,t[o]);return this}return(r=S.getElementById(o[2]))&&(this[0]=r,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):E.isFunction(e)?void 0!==n.ready?n.ready(e):e(E):E.makeArray(e,this)};$.prototype=E.fn,A=E(S);var H=/^(?:parents|prev(?:Until|All))/,L={children:!0,contents:!0,next:!0,prev:!0};function _(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}E.fn.extend({has:function(e){var t=E(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(E.contains(this,t[e]))return!0})},closest:function(e,t){var n,o=0,r=this.length,i=[],l=\"string\"!=typeof e&&E(e);if(!x.test(e))for(;o<r;o++)for(n=this[o];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(l?-1<l.index(n):1===n.nodeType&&E.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(1<i.length?E.uniqueSort(i):i)},index:function(e){return e?\"string\"==typeof e?r.call(E(e),this[0]):r.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(E.uniqueSort(E.merge(this.get(),E(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),E.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return C(e,\"parentNode\")},parentsUntil:function(e,t,n){return C(e,\"parentNode\",n)},next:function(e){return _(e,\"nextSibling\")},prev:function(e){return _(e,\"previousSibling\")},nextAll:function(e){return C(e,\"nextSibling\")},prevAll:function(e){return C(e,\"previousSibling\")},nextUntil:function(e,t,n){return C(e,\"nextSibling\",n)},prevUntil:function(e,t,n){return C(e,\"previousSibling\",n)},siblings:function(e){return b((e.parentNode||{}).firstChild,e)},children:function(e){return b(e.firstChild)},contents:function(e){return k(e,\"iframe\")?e.contentDocument:(k(e,\"template\")&&(e=e.content||e),E.merge([],e.childNodes))}},function(o,r){E.fn[o]=function(e,t){var n=E.map(this,r,e);return\"Until\"!==o.slice(-5)&&(t=e),t&&\"string\"==typeof t&&(n=E.filter(t,n)),1<this.length&&(L[o]||E.uniqueSort(n),H.test(o)&&n.reverse()),this.pushStack(n)}});var F=/[^\\x20\\t\\r\\n\\f]+/g;function I(e){return e}function M(e){throw e}function W(e,t,n,o){var r;try{e&&E.isFunction(r=e.promise)?r.call(e).done(t).fail(n):e&&E.isFunction(r=e.then)?r.call(e,t,n):t.apply(void 0,[e].slice(o))}catch(e){n.apply(void 0,[e])}}E.Callbacks=function(o){var e,n;o=\"string\"==typeof o?(e=o,n={},E.each(e.match(F)||[],function(e,t){n[t]=!0}),n):E.extend({},o);var r,t,i,l,s=[],a=[],c=-1,u=function(){for(l=l||o.once,i=r=!0;a.length;c=-1)for(t=a.shift();++c<s.length;)!1===s[c].apply(t[0],t[1])&&o.stopOnFalse&&(c=s.length,t=!1);o.memory||(t=!1),r=!1,l&&(s=t?[]:\"\")},d={add:function(){return s&&(t&&!r&&(c=s.length-1,a.push(t)),function n(e){E.each(e,function(e,t){E.isFunction(t)?o.unique&&d.has(t)||s.push(t):t&&t.length&&\"string\"!==E.type(t)&&n(t)})}(arguments),t&&!r&&u()),this},remove:function(){return E.each(arguments,function(e,t){for(var n;-1<(n=E.inArray(t,s,n));)s.splice(n,1),n<=c&&c--}),this},has:function(e){return e?-1<E.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return l=a=[],s=t=\"\",this},disabled:function(){return!s},lock:function(){return l=a=[],t||r||(s=t=\"\"),this},locked:function(){return!!l},fireWith:function(e,t){return l||(t=[e,(t=t||[]).slice?t.slice():t],a.push(t),r||u()),this},fire:function(){return d.fireWith(this,arguments),this},fired:function(){return!!i}};return d},E.extend({Deferred:function(e){var i=[[\"notify\",\"progress\",E.Callbacks(\"memory\"),E.Callbacks(\"memory\"),2],[\"resolve\",\"done\",E.Callbacks(\"once memory\"),E.Callbacks(\"once memory\"),0,\"resolved\"],[\"reject\",\"fail\",E.Callbacks(\"once memory\"),E.Callbacks(\"once memory\"),1,\"rejected\"]],r=\"pending\",l={state:function(){return r},always:function(){return s.done(arguments).fail(arguments),this},catch:function(e){return l.then(null,e)},pipe:function(){var r=arguments;return E.Deferred(function(o){E.each(i,function(e,t){var n=E.isFunction(r[t[4]])&&r[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&E.isFunction(e.promise)?e.promise().progress(o.notify).done(o.resolve).fail(o.reject):o[t[0]+\"With\"](this,n?[e]:arguments)})}),r=null}).promise()},then:function(t,n,o){var a=0;function c(r,i,l,s){return function(){var n=this,o=arguments,e=function(){var e,t;if(!(r<a)){if((e=l.apply(n,o))===i.promise())throw new TypeError(\"Thenable self-resolution\");t=e&&(\"object\"==typeof e||\"function\"==typeof e)&&e.then,E.isFunction(t)?s?t.call(e,c(a,i,I,s),c(a,i,M,s)):(a++,t.call(e,c(a,i,I,s),c(a,i,M,s),c(a,i,I,i.notifyWith))):(l!==I&&(n=void 0,o=[e]),(s||i.resolveWith)(n,o))}},t=s?e:function(){try{e()}catch(e){E.Deferred.exceptionHook&&E.Deferred.exceptionHook(e,t.stackTrace),a<=r+1&&(l!==M&&(n=void 0,o=[e]),i.rejectWith(n,o))}};r?t():(E.Deferred.getStackHook&&(t.stackTrace=E.Deferred.getStackHook()),R.setTimeout(t))}}return E.Deferred(function(e){i[0][3].add(c(0,e,E.isFunction(o)?o:I,e.notifyWith)),i[1][3].add(c(0,e,E.isFunction(t)?t:I)),i[2][3].add(c(0,e,E.isFunction(n)?n:M))}).promise()},promise:function(e){return null!=e?E.extend(e,l):l}},s={};return E.each(i,function(e,t){var n=t[2],o=t[5];l[t[1]]=n.add,o&&n.add(function(){r=o},i[3-e][2].disable,i[0][2].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+\"With\"](this===s?void 0:this,arguments),this},s[t[0]+\"With\"]=n.fireWith}),l.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,o=Array(t),r=s.call(arguments),i=E.Deferred(),l=function(t){return function(e){o[t]=this,r[t]=1<arguments.length?s.call(arguments):e,--n||i.resolveWith(o,r)}};if(n<=1&&(W(e,i.done(l(t)).resolve,i.reject,!n),\"pending\"===i.state()||E.isFunction(r[t]&&r[t].then)))return i.then();for(;t--;)W(r[t],l(t),i.reject);return i.promise()}});var j=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;E.Deferred.exceptionHook=function(e,t){R.console&&R.console.warn&&e&&j.test(e.name)&&R.console.warn(\"jQuery.Deferred exception: \"+e.message,e.stack,t)},E.readyException=function(e){R.setTimeout(function(){throw e})};var V=E.Deferred();function B(){S.removeEventListener(\"DOMContentLoaded\",B),R.removeEventListener(\"load\",B),E.ready()}E.fn.ready=function(e){return V.then(e).catch(function(e){E.readyException(e)}),this},E.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--E.readyWait:E.isReady)||(E.isReady=!0)!==e&&0<--E.readyWait||V.resolveWith(S,[E])}}),E.ready.then=V.then,\"complete\"===S.readyState||\"loading\"!==S.readyState&&!S.documentElement.doScroll?R.setTimeout(E.ready):(S.addEventListener(\"DOMContentLoaded\",B),R.addEventListener(\"load\",B));var q=function(e,t,n,o,r,i,l){var s=0,a=e.length,c=null==n;if(\"object\"===E.type(n))for(s in r=!0,n)q(e,t,s,n[s],!0,i,l);else if(void 0!==o&&(r=!0,E.isFunction(o)||(l=!0),c&&(l?(t.call(e,o),t=null):(c=t,t=function(e,t,n){return c.call(E(e),n)})),t))for(;s<a;s++)t(e[s],n,l?o:o.call(e[s],s,t(e[s],n)));return r?e:c?t.call(e):a?t(e[0],n):i},O=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function z(){this.expando=E.expando+z.uid++}z.uid=1,z.prototype={cache:function(e){var t=e[this.expando];return t||(t={},O(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var o,r=this.cache(e);if(\"string\"==typeof t)r[E.camelCase(t)]=n;else for(o in t)r[E.camelCase(o)]=t[o];return r},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][E.camelCase(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,o=e[this.expando];if(void 0!==o){if(void 0!==t){t=Array.isArray(t)?t.map(E.camelCase):(t=E.camelCase(t))in o?[t]:t.match(F)||[],n=t.length;for(;n--;)delete o[t[n]]}(void 0===t||E.isEmptyObject(o))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!E.isEmptyObject(t)}};var X=new z,U=new z,K=/^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,G=/[A-Z]/g;function Y(e,t,n){var o;if(void 0===n&&1===e.nodeType)if(o=\"data-\"+t.replace(G,\"-$&\").toLowerCase(),\"string\"==typeof(n=e.getAttribute(o))){try{n=function(e){if(\"true\"===e)return!0;if(\"false\"===e)return!1;if(\"null\"===e)return null;if(e===+e+\"\")return+e;if(K.test(e))return JSON.parse(e);return e}(n)}catch(e){}U.set(e,t,n)}else n=void 0;return n}E.extend({hasData:function(e){return U.hasData(e)||X.hasData(e)},data:function(e,t,n){return U.access(e,t,n)},removeData:function(e,t){U.remove(e,t)},_data:function(e,t,n){return X.access(e,t,n)},_removeData:function(e,t){X.remove(e,t)}}),E.fn.extend({data:function(n,e){var t,o,r,i=this[0],l=i&&i.attributes;if(void 0===n){if(this.length&&(r=U.get(i),1===i.nodeType&&!X.get(i,\"hasDataAttrs\"))){for(t=l.length;t--;)l[t]&&0===(o=l[t].name).indexOf(\"data-\")&&(o=E.camelCase(o.slice(5)),Y(i,o,r[o]));X.set(i,\"hasDataAttrs\",!0)}return r}return\"object\"==typeof n?this.each(function(){U.set(this,n)}):q(this,function(e){var t;if(i&&void 0===e)return void 0!==(t=U.get(i,n))?t:void 0!==(t=Y(i,n))?t:void 0;this.each(function(){U.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){U.remove(this,e)})}}),E.extend({queue:function(e,t,n){var o;if(e)return t=(t||\"fx\")+\"queue\",o=X.get(e,t),n&&(!o||Array.isArray(n)?o=X.access(e,t,E.makeArray(n)):o.push(n)),o||[]},dequeue:function(e,t){t=t||\"fx\";var n=E.queue(e,t),o=n.length,r=n.shift(),i=E._queueHooks(e,t);\"inprogress\"===r&&(r=n.shift(),o--),r&&(\"fx\"===t&&n.unshift(\"inprogress\"),delete i.stop,r.call(e,function(){E.dequeue(e,t)},i)),!o&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+\"queueHooks\";return X.get(e,n)||X.access(e,n,{empty:E.Callbacks(\"once memory\").add(function(){X.remove(e,[t+\"queue\",n])})})}}),E.fn.extend({queue:function(t,n){var e=2;return\"string\"!=typeof t&&(n=t,t=\"fx\",e--),arguments.length<e?E.queue(this[0],t):void 0===n?this:this.each(function(){var e=E.queue(this,t,n);E._queueHooks(this,t),\"fx\"===t&&\"inprogress\"!==e[0]&&E.dequeue(this,t)})},dequeue:function(e){return this.each(function(){E.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||\"fx\",[])},promise:function(e,t){var n,o=1,r=E.Deferred(),i=this,l=this.length,s=function(){--o||r.resolveWith(i,[i])};for(\"string\"!=typeof e&&(t=e,e=void 0),e=e||\"fx\";l--;)(n=X.get(i[l],e+\"queueHooks\"))&&n.empty&&(o++,n.empty.add(s));return s(),r.promise(t)}});var Q=/[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source,J=new RegExp(\"^(?:([+-])=|)(\"+Q+\")([a-z%]*)$\",\"i\"),Z=[\"Top\",\"Right\",\"Bottom\",\"Left\"],ee=function(e,t){return\"none\"===(e=t||e).style.display||\"\"===e.style.display&&E.contains(e.ownerDocument,e)&&\"none\"===E.css(e,\"display\")},te=function(e,t,n,o){var r,i,l={};for(i in t)l[i]=e.style[i],e.style[i]=t[i];for(i in r=n.apply(e,o||[]),t)e.style[i]=l[i];return r};function ne(e,t,n,o){var r,i=1,l=20,s=o?function(){return o.cur()}:function(){return E.css(e,t,\"\")},a=s(),c=n&&n[3]||(E.cssNumber[t]?\"\":\"px\"),u=(E.cssNumber[t]||\"px\"!==c&&+a)&&J.exec(E.css(e,t));if(u&&u[3]!==c)for(c=c||u[3],n=n||[],u=+a||1;u/=i=i||\".5\",E.style(e,t,u+c),i!==(i=s()/a)&&1!==i&&--l;);return n&&(u=+u||+a||0,r=n[1]?u+(n[1]+1)*n[2]:+n[2],o&&(o.unit=c,o.start=u,o.end=r)),r}var oe={};function re(e){var t,n=e.ownerDocument,o=e.nodeName,r=oe[o];return r||(t=n.body.appendChild(n.createElement(o)),r=E.css(t,\"display\"),t.parentNode.removeChild(t),\"none\"===r&&(r=\"block\"),oe[o]=r)}function ie(e,t){for(var n,o,r=[],i=0,l=e.length;i<l;i++)(o=e[i]).style&&(n=o.style.display,t?(\"none\"===n&&(r[i]=X.get(o,\"display\")||null,r[i]||(o.style.display=\"\")),\"\"===o.style.display&&ee(o)&&(r[i]=re(o))):\"none\"!==n&&(r[i]=\"none\",X.set(o,\"display\",n)));for(i=0;i<l;i++)null!=r[i]&&(e[i].style.display=r[i]);return e}E.fn.extend({show:function(){return ie(this,!0)},hide:function(){return ie(this)},toggle:function(e){return\"boolean\"==typeof e?e?this.show():this.hide():this.each(function(){ee(this)?E(this).show():E(this).hide()})}});var le=/^(?:checkbox|radio)$/i,se=/<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]+)/i,ae=/^$|\\/(?:java|ecma)script/i,ce={option:[1,\"<select multiple='multiple'>\",\"</select>\"],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 ue(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||\"*\"):void 0!==e.querySelectorAll?e.querySelectorAll(t||\"*\"):[],void 0===t||t&&k(e,t)?E.merge([e],n):n}function de(e,t){for(var n=0,o=e.length;n<o;n++)X.set(e[n],\"globalEval\",!t||X.get(t[n],\"globalEval\"))}ce.optgroup=ce.option,ce.tbody=ce.tfoot=ce.colgroup=ce.caption=ce.thead,ce.th=ce.td;var pe,fe,he,ge=/<|&#?\\w+;/;function me(e,t,n,o,r){for(var i,l,s,a,c,u,d=t.createDocumentFragment(),p=[],f=0,h=e.length;f<h;f++)if((i=e[f])||0===i)if(\"object\"===E.type(i))E.merge(p,i.nodeType?[i]:i);else if(ge.test(i)){for(l=l||d.appendChild(t.createElement(\"div\")),s=(se.exec(i)||[\"\",\"\"])[1].toLowerCase(),a=ce[s]||ce._default,l.innerHTML=a[1]+E.htmlPrefilter(i)+a[2],u=a[0];u--;)l=l.lastChild;E.merge(p,l.childNodes),(l=d.firstChild).textContent=\"\"}else p.push(t.createTextNode(i));for(d.textContent=\"\",f=0;i=p[f++];)if(o&&-1<E.inArray(i,o))r&&r.push(i);else if(c=E.contains(i.ownerDocument,i),l=ue(d.appendChild(i),\"script\"),c&&de(l),n)for(u=0;i=l[u++];)ae.test(i.type||\"\")&&n.push(i);return d}pe=S.createDocumentFragment(),fe=pe.appendChild(S.createElement(\"div\")),(he=S.createElement(\"input\")).setAttribute(\"type\",\"radio\"),he.setAttribute(\"checked\",\"checked\"),he.setAttribute(\"name\",\"t\"),fe.appendChild(he),m.checkClone=fe.cloneNode(!0).cloneNode(!0).lastChild.checked,fe.innerHTML=\"<textarea>x</textarea>\",m.noCloneChecked=!!fe.cloneNode(!0).lastChild.defaultValue;var ve=S.documentElement,we=/^key/,ye=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\\.(.+)|)/;function be(){return!0}function xe(){return!1}function Re(){try{return S.activeElement}catch(e){}}function Se(e,t,n,o,r,i){var l,s;if(\"object\"==typeof t){for(s in\"string\"!=typeof n&&(o=o||n,n=void 0),t)Se(e,s,n,o,t[s],i);return e}if(null==o&&null==r?(r=n,o=n=void 0):null==r&&(\"string\"==typeof n?(r=o,o=void 0):(r=o,o=n,n=void 0)),!1===r)r=xe;else if(!r)return e;return 1===i&&(l=r,(r=function(e){return E().off(e),l.apply(this,arguments)}).guid=l.guid||(l.guid=E.guid++)),e.each(function(){E.event.add(this,t,r,o,n)})}E.event={global:{},add:function(t,e,n,o,r){var i,l,s,a,c,u,d,p,f,h,g,m=X.get(t);if(m)for(n.handler&&(n=(i=n).handler,r=i.selector),r&&E.find.matchesSelector(ve,r),n.guid||(n.guid=E.guid++),(a=m.events)||(a=m.events={}),(l=m.handle)||(l=m.handle=function(e){return void 0!==E&&E.event.triggered!==e.type?E.event.dispatch.apply(t,arguments):void 0}),e=(e||\"\").match(F)||[\"\"],c=e.length;c--;)s=Ce.exec(e[c])||[],f=g=s[1],h=(s[2]||\"\").split(\".\").sort(),f&&(d=E.event.special[f]||{},f=(r?d.delegateType:d.bindType)||f,d=E.event.special[f]||{},u=E.extend({type:f,origType:g,data:o,handler:n,guid:n.guid,selector:r,needsContext:r&&E.expr.match.needsContext.test(r),namespace:h.join(\".\")},i),(p=a[f])||((p=a[f]=[]).delegateCount=0,d.setup&&!1!==d.setup.call(t,o,h,l)||t.addEventListener&&t.addEventListener(f,l)),d.add&&(d.add.call(t,u),u.handler.guid||(u.handler.guid=n.guid)),r?p.splice(p.delegateCount++,0,u):p.push(u),E.event.global[f]=!0)},remove:function(e,t,n,o,r){var i,l,s,a,c,u,d,p,f,h,g,m=X.hasData(e)&&X.get(e);if(m&&(a=m.events)){for(t=(t||\"\").match(F)||[\"\"],c=t.length;c--;)if(s=Ce.exec(t[c])||[],f=g=s[1],h=(s[2]||\"\").split(\".\").sort(),f){for(d=E.event.special[f]||{},f=(o?d.delegateType:d.bindType)||f,p=a[f]||[],s=s[2]&&new RegExp(\"(^|\\\\.)\"+h.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"),l=i=p.length;i--;)u=p[i],!r&&g!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||o&&o!==u.selector&&(\"**\"!==o||!u.selector)||(p.splice(i,1),u.selector&&p.delegateCount--,d.remove&&d.remove.call(e,u));l&&!p.length&&(d.teardown&&!1!==d.teardown.call(e,h,m.handle)||E.removeEvent(e,f,m.handle),delete a[f])}else for(f in a)E.event.remove(e,f+t[c],n,o,!0);E.isEmptyObject(a)&&X.remove(e,\"handle events\")}},dispatch:function(e){var t,n,o,r,i,l,s=E.event.fix(e),a=new Array(arguments.length),c=(X.get(this,\"events\")||{})[s.type]||[],u=E.event.special[s.type]||{};for(a[0]=s,t=1;t<arguments.length;t++)a[t]=arguments[t];if(s.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,s)){for(l=E.event.handlers.call(this,s,c),t=0;(r=l[t++])&&!s.isPropagationStopped();)for(s.currentTarget=r.elem,n=0;(i=r.handlers[n++])&&!s.isImmediatePropagationStopped();)s.rnamespace&&!s.rnamespace.test(i.namespace)||(s.handleObj=i,s.data=i.data,void 0!==(o=((E.event.special[i.origType]||{}).handle||i.handler).apply(r.elem,a))&&!1===(s.result=o)&&(s.preventDefault(),s.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,o,r,i,l,s=[],a=t.delegateCount,c=e.target;if(a&&c.nodeType&&!(\"click\"===e.type&&1<=e.button))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&(\"click\"!==e.type||!0!==c.disabled)){for(i=[],l={},n=0;n<a;n++)o=t[n],r=o.selector+\" \",void 0===l[r]&&(l[r]=o.needsContext?-1<E(r,this).index(c):E.find(r,this,null,[c]).length),l[r]&&i.push(o);i.length&&s.push({elem:c,handlers:i})}return c=this,a<t.length&&s.push({elem:c,handlers:t.slice(a)}),s},addProp:function(t,e){Object.defineProperty(E.Event.prototype,t,{enumerable:!0,configurable:!0,get:E.isFunction(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[E.expando]?e:new E.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==Re()&&this.focus)return this.focus(),!1},delegateType:\"focusin\"},blur:{trigger:function(){if(this===Re()&&this.blur)return this.blur(),!1},delegateType:\"focusout\"},click:{trigger:function(){if(\"checkbox\"===this.type&&this.click&&k(this,\"input\"))return this.click(),!1},_default:function(e){return k(e.target,\"a\")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},E.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},E.Event=function(e,t){if(!(this instanceof E.Event))return new E.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?be:xe,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&&E.extend(this,t),this.timeStamp=e&&e.timeStamp||E.now(),this[E.expando]=!0},E.Event.prototype={constructor:E.Event,isDefaultPrevented:xe,isPropagationStopped:xe,isImmediatePropagationStopped:xe,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=be,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=be,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=be,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},E.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,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&&ye.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},E.event.addProp),E.each({mouseenter:\"mouseover\",mouseleave:\"mouseout\",pointerenter:\"pointerover\",pointerleave:\"pointerout\"},function(e,r){E.event.special[e]={delegateType:r,bindType:r,handle:function(e){var t,n=e.relatedTarget,o=e.handleObj;return n&&(n===this||E.contains(this,n))||(e.type=o.origType,t=o.handler.apply(this,arguments),e.type=r),t}}}),E.fn.extend({on:function(e,t,n,o){return Se(this,e,t,n,o)},one:function(e,t,n,o){return Se(this,e,t,n,o,1)},off:function(e,t,n){var o,r;if(e&&e.preventDefault&&e.handleObj)return o=e.handleObj,E(e.delegateTarget).off(o.namespace?o.origType+\".\"+o.namespace:o.origType,o.selector,o.handler),this;if(\"object\"==typeof e){for(r in e)this.off(r,t,e[r]);return this}return!1!==t&&\"function\"!=typeof t||(n=t,t=void 0),!1===n&&(n=xe),this.each(function(){E.event.remove(this,e,n,t)})}});var Ee=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)[^>]*)\\/>/gi,ke=/<script|<style|<link/i,Te=/checked\\s*(?:[^=]|=\\s*.checked.)/i,Pe=/^true\\/(.*)/,De=/^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g;function Ae(e,t){return k(e,\"table\")&&k(11!==t.nodeType?t:t.firstChild,\"tr\")&&E(\">tbody\",e)[0]||e}function Ne(e){return e.type=(null!==e.getAttribute(\"type\"))+\"/\"+e.type,e}function $e(e){var t=Pe.exec(e.type);return t?e.type=t[1]:e.removeAttribute(\"type\"),e}function He(e,t){var n,o,r,i,l,s,a,c;if(1===t.nodeType){if(X.hasData(e)&&(i=X.access(e),l=X.set(t,i),c=i.events))for(r in delete l.handle,l.events={},c)for(n=0,o=c[r].length;n<o;n++)E.event.add(t,r,c[r][n]);U.hasData(e)&&(s=U.access(e),a=E.extend({},s),U.set(t,a))}}function Le(e,t){var n=t.nodeName.toLowerCase();\"input\"===n&&le.test(e.type)?t.checked=e.checked:\"input\"!==n&&\"textarea\"!==n||(t.defaultValue=e.defaultValue)}function _e(n,o,r,i){o=g.apply([],o);var e,t,l,s,a,c,u=0,d=n.length,p=d-1,f=o[0],h=E.isFunction(f);if(h||1<d&&\"string\"==typeof f&&!m.checkClone&&Te.test(f))return n.each(function(e){var t=n.eq(e);h&&(o[0]=f.call(this,e,t.html())),_e(t,o,r,i)});if(d&&(e=me(o,n[0].ownerDocument,!1,n,i),t=e.firstChild,1===e.childNodes.length&&(e=t),t||i)){for(l=E.map(ue(e,\"script\"),Ne),s=l.length;u<d;u++)a=e,u!==p&&(a=E.clone(a,!0,!0),s&&E.merge(l,ue(a,\"script\"))),r.call(n[u],a,u);if(s)for(c=l[l.length-1].ownerDocument,E.map(l,$e),u=0;u<s;u++)a=l[u],ae.test(a.type||\"\")&&!X.access(a,\"globalEval\")&&E.contains(c,a)&&(a.src?E._evalUrl&&E._evalUrl(a.src):v(a.textContent.replace(De,\"\"),c))}return n}function Fe(e,t,n){for(var o,r=t?E.filter(t,e):e,i=0;null!=(o=r[i]);i++)n||1!==o.nodeType||E.cleanData(ue(o)),o.parentNode&&(n&&E.contains(o.ownerDocument,o)&&de(ue(o,\"script\")),o.parentNode.removeChild(o));return e}E.extend({htmlPrefilter:function(e){return e.replace(Ee,\"<$1></$2>\")},clone:function(e,t,n){var o,r,i,l,s=e.cloneNode(!0),a=E.contains(e.ownerDocument,e);if(!(m.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||E.isXMLDoc(e)))for(l=ue(s),i=ue(e),o=0,r=i.length;o<r;o++)Le(i[o],l[o]);if(t)if(n)for(i=i||ue(e),l=l||ue(s),o=0,r=i.length;o<r;o++)He(i[o],l[o]);else He(e,s);return 0<(l=ue(s,\"script\")).length&&de(l,!a&&ue(e,\"script\")),s},cleanData:function(e){for(var t,n,o,r=E.event.special,i=0;void 0!==(n=e[i]);i++)if(O(n)){if(t=n[X.expando]){if(t.events)for(o in t.events)r[o]?E.event.remove(n,o):E.removeEvent(n,o,t.handle);n[X.expando]=void 0}n[U.expando]&&(n[U.expando]=void 0)}}}),E.fn.extend({detach:function(e){return Fe(this,e,!0)},remove:function(e){return Fe(this,e)},text:function(e){return q(this,function(e){return void 0===e?E.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 _e(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ae(this,e);t.appendChild(e)}})},prepend:function(){return _e(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ae(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return _e(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return _e(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&&(E.cleanData(ue(e,!1)),e.textContent=\"\");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return E.clone(this,e,t)})},html:function(e){return q(this,function(e){var t=this[0]||{},n=0,o=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(\"string\"==typeof e&&!ke.test(e)&&!ce[(se.exec(e)||[\"\",\"\"])[1].toLowerCase()]){e=E.htmlPrefilter(e);try{for(;n<o;n++)1===(t=this[n]||{}).nodeType&&(E.cleanData(ue(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return _e(this,arguments,function(e){var t=this.parentNode;E.inArray(this,n)<0&&(E.cleanData(ue(this)),t&&t.replaceChild(e,this))},n)}}),E.each({appendTo:\"append\",prependTo:\"prepend\",insertBefore:\"before\",insertAfter:\"after\",replaceAll:\"replaceWith\"},function(e,l){E.fn[e]=function(e){for(var t,n=[],o=E(e),r=o.length-1,i=0;i<=r;i++)t=i===r?this:this.clone(!0),E(o[i])[l](t),a.apply(n,t.get());return this.pushStack(n)}});var Ie=/^margin/,Me=new RegExp(\"^(\"+Q+\")(?!px)[a-z%]+$\",\"i\"),We=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=R),t.getComputedStyle(e)};function je(e,t,n){var o,r,i,l,s=e.style;return(n=n||We(e))&&(\"\"!==(l=n.getPropertyValue(t)||n[t])||E.contains(e.ownerDocument,e)||(l=E.style(e,t)),!m.pixelMarginRight()&&Me.test(l)&&Ie.test(t)&&(o=s.width,r=s.minWidth,i=s.maxWidth,s.minWidth=s.maxWidth=s.width=l,l=n.width,s.width=o,s.minWidth=r,s.maxWidth=i)),void 0!==l?l+\"\":l}function Ve(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){l.style.cssText=\"box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%\",l.innerHTML=\"\",ve.appendChild(i);var e=R.getComputedStyle(l);t=\"1%\"!==e.top,r=\"2px\"===e.marginLeft,n=\"4px\"===e.width,l.style.marginRight=\"50%\",o=\"4px\"===e.marginRight,ve.removeChild(i),l=null}}var t,n,o,r,i=S.createElement(\"div\"),l=S.createElement(\"div\");l.style&&(l.style.backgroundClip=\"content-box\",l.cloneNode(!0).style.backgroundClip=\"\",m.clearCloneStyle=\"content-box\"===l.style.backgroundClip,i.style.cssText=\"border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute\",i.appendChild(l),E.extend(m,{pixelPosition:function(){return e(),t},boxSizingReliable:function(){return e(),n},pixelMarginRight:function(){return e(),o},reliableMarginLeft:function(){return e(),r}}))}();var Be=/^(none|table(?!-c[ea]).+)/,qe=/^--/,Oe={position:\"absolute\",visibility:\"hidden\",display:\"block\"},ze={letterSpacing:\"0\",fontWeight:\"400\"},Xe=[\"Webkit\",\"Moz\",\"ms\"],Ue=S.createElement(\"div\").style;function Ke(e){var t=E.cssProps[e];return t||(t=E.cssProps[e]=function(e){if(e in Ue)return e;var t=e[0].toUpperCase()+e.slice(1),n=Xe.length;for(;n--;)if((e=Xe[n]+t)in Ue)return e}(e)||e),t}function Ge(e,t,n){var o=J.exec(t);return o?Math.max(0,o[2]-(n||0))+(o[3]||\"px\"):t}function Ye(e,t,n,o,r){var i,l=0;for(i=n===(o?\"border\":\"content\")?4:\"width\"===t?1:0;i<4;i+=2)\"margin\"===n&&(l+=E.css(e,n+Z[i],!0,r)),o?(\"content\"===n&&(l-=E.css(e,\"padding\"+Z[i],!0,r)),\"margin\"!==n&&(l-=E.css(e,\"border\"+Z[i]+\"Width\",!0,r))):(l+=E.css(e,\"padding\"+Z[i],!0,r),\"padding\"!==n&&(l+=E.css(e,\"border\"+Z[i]+\"Width\",!0,r)));return l}function Qe(e,t,n){var o,r=We(e),i=je(e,t,r),l=\"border-box\"===E.css(e,\"boxSizing\",!1,r);return Me.test(i)?i:(o=l&&(m.boxSizingReliable()||i===e.style[t]),\"auto\"===i&&(i=e[\"offset\"+t[0].toUpperCase()+t.slice(1)]),(i=parseFloat(i)||0)+Ye(e,t,n||(l?\"border\":\"content\"),o,r)+\"px\")}function Je(e,t,n,o,r){return new Je.prototype.init(e,t,n,o,r)}E.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=je(e,\"opacity\");return\"\"===n?\"1\":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:\"cssFloat\"},style:function(e,t,n,o){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var r,i,l,s=E.camelCase(t),a=qe.test(t),c=e.style;if(a||(t=Ke(s)),l=E.cssHooks[t]||E.cssHooks[s],void 0===n)return l&&\"get\"in l&&void 0!==(r=l.get(e,!1,o))?r:c[t];\"string\"===(i=typeof n)&&(r=J.exec(n))&&r[1]&&(n=ne(e,t,r),i=\"number\"),null!=n&&n==n&&(\"number\"===i&&(n+=r&&r[3]||(E.cssNumber[s]?\"\":\"px\")),m.clearCloneStyle||\"\"!==n||0!==t.indexOf(\"background\")||(c[t]=\"inherit\"),l&&\"set\"in l&&void 0===(n=l.set(e,n,o))||(a?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,o){var r,i,l,s=E.camelCase(t),a=qe.test(t);return a||(t=Ke(s)),(l=E.cssHooks[t]||E.cssHooks[s])&&\"get\"in l&&(r=l.get(e,!0,n)),void 0===r&&(r=je(e,t,o)),\"normal\"===r&&t in ze&&(r=ze[t]),\"\"===n||n?(i=parseFloat(r),!0===n||isFinite(i)?i||0:r):r}}),E.each([\"height\",\"width\"],function(e,l){E.cssHooks[l]={get:function(e,t,n){if(t)return!Be.test(E.css(e,\"display\"))||e.getClientRects().length&&e.getBoundingClientRect().width?Qe(e,l,n):te(e,Oe,function(){return Qe(e,l,n)})},set:function(e,t,n){var o,r=n&&We(e),i=n&&Ye(e,l,n,\"border-box\"===E.css(e,\"boxSizing\",!1,r),r);return i&&(o=J.exec(t))&&\"px\"!==(o[3]||\"px\")&&(e.style[l]=t,t=E.css(e,l)),Ge(e,t,i)}}}),E.cssHooks.marginLeft=Ve(m.reliableMarginLeft,function(e,t){if(t)return(parseFloat(je(e,\"marginLeft\"))||e.getBoundingClientRect().left-te(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+\"px\"}),E.each({margin:\"\",padding:\"\",border:\"Width\"},function(r,i){E.cssHooks[r+i]={expand:function(e){for(var t=0,n={},o=\"string\"==typeof e?e.split(\" \"):[e];t<4;t++)n[r+Z[t]+i]=o[t]||o[t-2]||o[0];return n}},Ie.test(r)||(E.cssHooks[r+i].set=Ge)}),E.fn.extend({css:function(e,t){return q(this,function(e,t,n){var o,r,i={},l=0;if(Array.isArray(t)){for(o=We(e),r=t.length;l<r;l++)i[t[l]]=E.css(e,t[l],!1,o);return i}return void 0!==n?E.style(e,t,n):E.css(e,t)},e,t,1<arguments.length)}}),((E.Tween=Je).prototype={constructor:Je,init:function(e,t,n,o,r,i){this.elem=e,this.prop=n,this.easing=r||E.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=o,this.unit=i||(E.cssNumber[n]?\"\":\"px\")},cur:function(){var e=Je.propHooks[this.prop];return e&&e.get?e.get(this):Je.propHooks._default.get(this)},run:function(e){var t,n=Je.propHooks[this.prop];return this.options.duration?this.pos=t=E.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):Je.propHooks._default.set(this),this}}).init.prototype=Je.prototype,(Je.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=E.css(e.elem,e.prop,\"\"))&&\"auto\"!==t?t:0},set:function(e){E.fx.step[e.prop]?E.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[E.cssProps[e.prop]]&&!E.cssHooks[e.prop]?e.elem[e.prop]=e.now:E.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Je.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},E.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:\"swing\"},E.fx=Je.prototype.init,E.fx.step={};var Ze,et,tt,nt,ot,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function lt(){et&&(!1===S.hidden&&R.requestAnimationFrame?R.requestAnimationFrame(lt):R.setTimeout(lt,E.fx.interval),E.fx.tick())}function st(){return R.setTimeout(function(){Ze=void 0}),Ze=E.now()}function at(e,t){var n,o=0,r={height:e};for(t=t?1:0;o<4;o+=2-t)n=Z[o],r[\"margin\"+n]=r[\"padding\"+n]=e;return t&&(r.opacity=r.width=e),r}function ct(e,t,n){for(var o,r=(ut.tweeners[t]||[]).concat(ut.tweeners[\"*\"]),i=0,l=r.length;i<l;i++)if(o=r[i].call(n,t,e))return o}function ut(l,e,t){var n,s,o=0,r=ut.prefilters.length,a=E.Deferred().always(function(){delete i.elem}),i=function(){if(s)return!1;for(var e=Ze||st(),t=Math.max(0,c.startTime+c.duration-e),n=t/c.duration||0,o=1-n,r=0,i=c.tweens.length;r<i;r++)c.tweens[r].run(o);return a.notifyWith(l,[c,o,t]),o<1&&i?t:(i||a.notifyWith(l,[c,1,0]),a.resolveWith(l,[c]),!1)},c=a.promise({elem:l,props:E.extend({},e),opts:E.extend(!0,{specialEasing:{},easing:E.easing._default},t),originalProperties:e,originalOptions:t,startTime:Ze||st(),duration:t.duration,tweens:[],createTween:function(e,t){var n=E.Tween(l,c.opts,e,t,c.opts.specialEasing[e]||c.opts.easing);return c.tweens.push(n),n},stop:function(e){var t=0,n=e?c.tweens.length:0;if(s)return this;for(s=!0;t<n;t++)c.tweens[t].run(1);return e?(a.notifyWith(l,[c,1,0]),a.resolveWith(l,[c,e])):a.rejectWith(l,[c,e]),this}}),u=c.props;for(!function(e,t){var n,o,r,i,l;for(n in e)if(o=E.camelCase(n),r=t[o],i=e[n],Array.isArray(i)&&(r=i[1],i=e[n]=i[0]),n!==o&&(e[o]=i,delete e[n]),(l=E.cssHooks[o])&&\"expand\"in l)for(n in i=l.expand(i),delete e[o],i)n in e||(e[n]=i[n],t[n]=r);else t[o]=r}(u,c.opts.specialEasing);o<r;o++)if(n=ut.prefilters[o].call(c,l,u,c.opts))return E.isFunction(n.stop)&&(E._queueHooks(c.elem,c.opts.queue).stop=E.proxy(n.stop,n)),n;return E.map(u,ct,c),E.isFunction(c.opts.start)&&c.opts.start.call(l,c),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always),E.fx.timer(E.extend(i,{elem:l,anim:c,queue:c.opts.queue})),c}E.Animation=E.extend(ut,{tweeners:{\"*\":[function(e,t){var n=this.createTween(e,t);return ne(n.elem,e,J.exec(t),n),n}]},tweener:function(e,t){E.isFunction(e)?(t=e,e=[\"*\"]):e=e.match(F);for(var n,o=0,r=e.length;o<r;o++)n=e[o],ut.tweeners[n]=ut.tweeners[n]||[],ut.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var o,r,i,l,s,a,c,u,d=\"width\"in t||\"height\"in t,p=this,f={},h=e.style,g=e.nodeType&&ee(e),m=X.get(e,\"fxshow\");n.queue||(null==(l=E._queueHooks(e,\"fx\")).unqueued&&(l.unqueued=0,s=l.empty.fire,l.empty.fire=function(){l.unqueued||s()}),l.unqueued++,p.always(function(){p.always(function(){l.unqueued--,E.queue(e,\"fx\").length||l.empty.fire()})}));for(o in t)if(r=t[o],rt.test(r)){if(delete t[o],i=i||\"toggle\"===r,r===(g?\"hide\":\"show\")){if(\"show\"!==r||!m||void 0===m[o])continue;g=!0}f[o]=m&&m[o]||E.style(e,o)}if(!(a=!E.isEmptyObject(t))&&E.isEmptyObject(f))return;d&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(c=m&&m.display)&&(c=X.get(e,\"display\")),\"none\"===(u=E.css(e,\"display\"))&&(c?u=c:(ie([e],!0),c=e.style.display||c,u=E.css(e,\"display\"),ie([e]))),(\"inline\"===u||\"inline-block\"===u&&null!=c)&&\"none\"===E.css(e,\"float\")&&(a||(p.done(function(){h.display=c}),null==c&&(u=h.display,c=\"none\"===u?\"\":u)),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]}));for(o in a=!1,f)a||(m?\"hidden\"in m&&(g=m.hidden):m=X.access(e,\"fxshow\",{display:c}),i&&(m.hidden=!g),g&&ie([e],!0),p.done(function(){for(o in g||ie([e]),X.remove(e,\"fxshow\"),f)E.style(e,o,f[o])})),a=ct(g?m[o]:0,o,p),o in m||(m[o]=a.start,g&&(a.end=a.start,a.start=0))}],prefilter:function(e,t){t?ut.prefilters.unshift(e):ut.prefilters.push(e)}}),E.speed=function(e,t,n){var o=e&&\"object\"==typeof e?E.extend({},e):{complete:n||!n&&t||E.isFunction(e)&&e,duration:e,easing:n&&t||t&&!E.isFunction(t)&&t};return E.fx.off?o.duration=0:\"number\"!=typeof o.duration&&(o.duration in E.fx.speeds?o.duration=E.fx.speeds[o.duration]:o.duration=E.fx.speeds._default),null!=o.queue&&!0!==o.queue||(o.queue=\"fx\"),o.old=o.complete,o.complete=function(){E.isFunction(o.old)&&o.old.call(this),o.queue&&E.dequeue(this,o.queue)},o},E.fn.extend({fadeTo:function(e,t,n,o){return this.filter(ee).css(\"opacity\",0).show().end().animate({opacity:t},e,n,o)},animate:function(t,e,n,o){var r=E.isEmptyObject(t),i=E.speed(e,n,o),l=function(){var e=ut(this,E.extend({},t),i);(r||X.get(this,\"finish\"))&&e.stop(!0)};return l.finish=l,r||!1===i.queue?this.each(l):this.queue(i.queue,l)},stop:function(r,e,i){var l=function(e){var t=e.stop;delete e.stop,t(i)};return\"string\"!=typeof r&&(i=e,e=r,r=void 0),e&&!1!==r&&this.queue(r||\"fx\",[]),this.each(function(){var e=!0,t=null!=r&&r+\"queueHooks\",n=E.timers,o=X.get(this);if(t)o[t]&&o[t].stop&&l(o[t]);else for(t in o)o[t]&&o[t].stop&&it.test(t)&&l(o[t]);for(t=n.length;t--;)n[t].elem!==this||null!=r&&n[t].queue!==r||(n[t].anim.stop(i),e=!1,n.splice(t,1));!e&&i||E.dequeue(this,r)})},finish:function(l){return!1!==l&&(l=l||\"fx\"),this.each(function(){var e,t=X.get(this),n=t[l+\"queue\"],o=t[l+\"queueHooks\"],r=E.timers,i=n?n.length:0;for(t.finish=!0,E.queue(this,l,[]),o&&o.stop&&o.stop.call(this,!0),e=r.length;e--;)r[e].elem===this&&r[e].queue===l&&(r[e].anim.stop(!0),r.splice(e,1));for(e=0;e<i;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),E.each([\"toggle\",\"show\",\"hide\"],function(e,o){var r=E.fn[o];E.fn[o]=function(e,t,n){return null==e||\"boolean\"==typeof e?r.apply(this,arguments):this.animate(at(o,!0),e,t,n)}}),E.each({slideDown:at(\"show\"),slideUp:at(\"hide\"),slideToggle:at(\"toggle\"),fadeIn:{opacity:\"show\"},fadeOut:{opacity:\"hide\"},fadeToggle:{opacity:\"toggle\"}},function(e,o){E.fn[e]=function(e,t,n){return this.animate(o,e,t,n)}}),E.timers=[],E.fx.tick=function(){var e,t=0,n=E.timers;for(Ze=E.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||E.fx.stop(),Ze=void 0},E.fx.timer=function(e){E.timers.push(e),E.fx.start()},E.fx.interval=13,E.fx.start=function(){et||(et=!0,lt())},E.fx.stop=function(){et=null},E.fx.speeds={slow:600,fast:200,_default:400},E.fn.delay=function(o,e){return o=E.fx&&E.fx.speeds[o]||o,e=e||\"fx\",this.queue(e,function(e,t){var n=R.setTimeout(e,o);t.stop=function(){R.clearTimeout(n)}})},tt=S.createElement(\"input\"),nt=S.createElement(\"select\"),ot=nt.appendChild(S.createElement(\"option\")),tt.type=\"checkbox\",m.checkOn=\"\"!==tt.value,m.optSelected=ot.selected,(tt=S.createElement(\"input\")).value=\"t\",tt.type=\"radio\",m.radioValue=\"t\"===tt.value;var dt,pt=E.expr.attrHandle;E.fn.extend({attr:function(e,t){return q(this,E.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){E.removeAttr(this,e)})}}),E.extend({attr:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return void 0===e.getAttribute?E.prop(e,t,n):(1===i&&E.isXMLDoc(e)||(r=E.attrHooks[t.toLowerCase()]||(E.expr.match.bool.test(t)?dt:void 0)),void 0!==n?null===n?void E.removeAttr(e,t):r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:(e.setAttribute(t,n+\"\"),n):r&&\"get\"in r&&null!==(o=r.get(e,t))?o:null==(o=E.find.attr(e,t))?void 0:o)},attrHooks:{type:{set:function(e,t){if(!m.radioValue&&\"radio\"===t&&k(e,\"input\")){var n=e.value;return e.setAttribute(\"type\",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,o=0,r=t&&t.match(F);if(r&&1===e.nodeType)for(;n=r[o++];)e.removeAttribute(n)}}),dt={set:function(e,t,n){return!1===t?E.removeAttr(e,n):e.setAttribute(n,n),n}},E.each(E.expr.match.bool.source.match(/\\w+/g),function(e,t){var l=pt[t]||E.find.attr;pt[t]=function(e,t,n){var o,r,i=t.toLowerCase();return n||(r=pt[i],pt[i]=o,o=null!=l(e,t,n)?i:null,pt[i]=r),o}});var ft=/^(?:input|select|textarea|button)$/i,ht=/^(?:a|area)$/i;function gt(e){var t=e.match(F)||[];return t.join(\" \")}function mt(e){return e.getAttribute&&e.getAttribute(\"class\")||\"\"}E.fn.extend({prop:function(e,t){return q(this,E.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[E.propFix[e]||e]})}}),E.extend({prop:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&E.isXMLDoc(e)||(t=E.propFix[t]||t,r=E.propHooks[t]),void 0!==n?r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:e[t]=n:r&&\"get\"in r&&null!==(o=r.get(e,t))?o:e[t]},propHooks:{tabIndex:{get:function(e){var t=E.find.attr(e,\"tabindex\");return t?parseInt(t,10):ft.test(e.nodeName)||ht.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:\"htmlFor\",class:\"className\"}}),m.optSelected||(E.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)}}),E.each([\"tabIndex\",\"readOnly\",\"maxLength\",\"cellSpacing\",\"cellPadding\",\"rowSpan\",\"colSpan\",\"useMap\",\"frameBorder\",\"contentEditable\"],function(){E.propFix[this.toLowerCase()]=this}),E.fn.extend({addClass:function(t){var e,n,o,r,i,l,s,a=0;if(E.isFunction(t))return this.each(function(e){E(this).addClass(t.call(this,e,mt(this)))});if(\"string\"==typeof t&&t)for(e=t.match(F)||[];n=this[a++];)if(r=mt(n),o=1===n.nodeType&&\" \"+gt(r)+\" \"){for(l=0;i=e[l++];)o.indexOf(\" \"+i+\" \")<0&&(o+=i+\" \");s=gt(o),r!==s&&n.setAttribute(\"class\",s)}return this},removeClass:function(t){var e,n,o,r,i,l,s,a=0;if(E.isFunction(t))return this.each(function(e){E(this).removeClass(t.call(this,e,mt(this)))});if(!arguments.length)return this.attr(\"class\",\"\");if(\"string\"==typeof t&&t)for(e=t.match(F)||[];n=this[a++];)if(r=mt(n),o=1===n.nodeType&&\" \"+gt(r)+\" \"){for(l=0;i=e[l++];)for(;-1<o.indexOf(\" \"+i+\" \");)o=o.replace(\" \"+i+\" \",\" \");s=gt(o),r!==s&&n.setAttribute(\"class\",s)}return this},toggleClass:function(r,t){var i=typeof r;return\"boolean\"==typeof t&&\"string\"===i?t?this.addClass(r):this.removeClass(r):E.isFunction(r)?this.each(function(e){E(this).toggleClass(r.call(this,e,mt(this),t),t)}):this.each(function(){var e,t,n,o;if(\"string\"===i)for(t=0,n=E(this),o=r.match(F)||[];e=o[t++];)n.hasClass(e)?n.removeClass(e):n.addClass(e);else void 0!==r&&\"boolean\"!==i||((e=mt(this))&&X.set(this,\"__className__\",e),this.setAttribute&&this.setAttribute(\"class\",e||!1===r?\"\":X.get(this,\"__className__\")||\"\"))})},hasClass:function(e){var t,n,o=0;for(t=\" \"+e+\" \";n=this[o++];)if(1===n.nodeType&&-1<(\" \"+gt(mt(n))+\" \").indexOf(t))return!0;return!1}});var vt=/\\r/g;E.fn.extend({val:function(n){var o,e,r,t=this[0];return arguments.length?(r=E.isFunction(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=r?n.call(this,e,E(this).val()):n)?t=\"\":\"number\"==typeof t?t+=\"\":Array.isArray(t)&&(t=E.map(t,function(e){return null==e?\"\":e+\"\"})),(o=E.valHooks[this.type]||E.valHooks[this.nodeName.toLowerCase()])&&\"set\"in o&&void 0!==o.set(this,t,\"value\")||(this.value=t))})):t?(o=E.valHooks[t.type]||E.valHooks[t.nodeName.toLowerCase()])&&\"get\"in o&&void 0!==(e=o.get(t,\"value\"))?e:\"string\"==typeof(e=t.value)?e.replace(vt,\"\"):null==e?\"\":e:void 0}}),E.extend({valHooks:{option:{get:function(e){var t=E.find.attr(e,\"value\");return null!=t?t:gt(E.text(e))}},select:{get:function(e){var t,n,o,r=e.options,i=e.selectedIndex,l=\"select-one\"===e.type,s=l?null:[],a=l?i+1:r.length;for(o=i<0?a:l?i:0;o<a;o++)if(((n=r[o]).selected||o===i)&&!n.disabled&&(!n.parentNode.disabled||!k(n.parentNode,\"optgroup\"))){if(t=E(n).val(),l)return t;s.push(t)}return s},set:function(e,t){for(var n,o,r=e.options,i=E.makeArray(t),l=r.length;l--;)((o=r[l]).selected=-1<E.inArray(E.valHooks.option.get(o),i))&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),E.each([\"radio\",\"checkbox\"],function(){E.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<E.inArray(E(e).val(),t)}},m.checkOn||(E.valHooks[this].get=function(e){return null===e.getAttribute(\"value\")?\"on\":e.value})});var wt=/^(?:focusinfocus|focusoutblur)$/;E.extend(E.event,{trigger:function(e,t,n,o){var r,i,l,s,a,c,u,d=[n||S],p=h.call(e,\"type\")?e.type:e,f=h.call(e,\"namespace\")?e.namespace.split(\".\"):[];if(i=l=n=n||S,3!==n.nodeType&&8!==n.nodeType&&!wt.test(p+E.event.triggered)&&(-1<p.indexOf(\".\")&&(p=(f=p.split(\".\")).shift(),f.sort()),a=p.indexOf(\":\")<0&&\"on\"+p,(e=e[E.expando]?e:new E.Event(p,\"object\"==typeof e&&e)).isTrigger=o?2:3,e.namespace=f.join(\".\"),e.rnamespace=e.namespace?new RegExp(\"(^|\\\\.)\"+f.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:E.makeArray(t,[e]),u=E.event.special[p]||{},o||!u.trigger||!1!==u.trigger.apply(n,t))){if(!o&&!u.noBubble&&!E.isWindow(n)){for(s=u.delegateType||p,wt.test(s+p)||(i=i.parentNode);i;i=i.parentNode)d.push(i),l=i;l===(n.ownerDocument||S)&&d.push(l.defaultView||l.parentWindow||R)}for(r=0;(i=d[r++])&&!e.isPropagationStopped();)e.type=1<r?s:u.bindType||p,(c=(X.get(i,\"events\")||{})[e.type]&&X.get(i,\"handle\"))&&c.apply(i,t),(c=a&&i[a])&&c.apply&&O(i)&&(e.result=c.apply(i,t),!1===e.result&&e.preventDefault());return e.type=p,o||e.isDefaultPrevented()||u._default&&!1!==u._default.apply(d.pop(),t)||!O(n)||a&&E.isFunction(n[p])&&!E.isWindow(n)&&((l=n[a])&&(n[a]=null),E.event.triggered=p,n[p](),E.event.triggered=void 0,l&&(n[a]=l)),e.result}},simulate:function(e,t,n){var o=E.extend(new E.Event,n,{type:e,isSimulated:!0});E.event.trigger(o,null,t)}}),E.fn.extend({trigger:function(e,t){return this.each(function(){E.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return E.event.trigger(e,t,n,!0)}}),E.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,n){E.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}}),E.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),m.focusin=\"onfocusin\"in R,m.focusin||E.each({focus:\"focusin\",blur:\"focusout\"},function(n,o){var r=function(e){E.event.simulate(o,e.target,E.event.fix(e))};E.event.special[o]={setup:function(){var e=this.ownerDocument||this,t=X.access(e,o);t||e.addEventListener(n,r,!0),X.access(e,o,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this,t=X.access(e,o)-1;t?X.access(e,o,t):(e.removeEventListener(n,r,!0),X.remove(e,o))}}});var yt=R.location,Ct=E.now(),bt=/\\?/;E.parseXML=function(e){var t;if(!e||\"string\"!=typeof e)return null;try{t=(new R.DOMParser).parseFromString(e,\"text/xml\")}catch(e){t=void 0}return t&&!t.getElementsByTagName(\"parsererror\").length||E.error(\"Invalid XML: \"+e),t};var xt=/\\[\\]$/,Rt=/\\r?\\n/g,St=/^(?:submit|button|image|reset|file)$/i,Et=/^(?:input|select|textarea|keygen)/i;function kt(n,e,o,r){var t;if(Array.isArray(e))E.each(e,function(e,t){o||xt.test(n)?r(n,t):kt(n+\"[\"+(\"object\"==typeof t&&null!=t?e:\"\")+\"]\",t,o,r)});else if(o||\"object\"!==E.type(e))r(n,e);else for(t in e)kt(n+\"[\"+t+\"]\",e[t],o,r)}E.param=function(e,t){var n,o=[],r=function(e,t){var n=E.isFunction(t)?t():t;o[o.length]=encodeURIComponent(e)+\"=\"+encodeURIComponent(null==n?\"\":n)};if(Array.isArray(e)||e.jquery&&!E.isPlainObject(e))E.each(e,function(){r(this.name,this.value)});else for(n in e)kt(n,e[n],t,r);return o.join(\"&\")},E.fn.extend({serialize:function(){return E.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=E.prop(this,\"elements\");return e?E.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!E(this).is(\":disabled\")&&Et.test(this.nodeName)&&!St.test(e)&&(this.checked||!le.test(e))}).map(function(e,t){var n=E(this).val();return null==n?null:Array.isArray(n)?E.map(n,function(e){return{name:t.name,value:e.replace(Rt,\"\\r\\n\")}}):{name:t.name,value:n.replace(Rt,\"\\r\\n\")}}).get()}});var Tt=/%20/g,Pt=/#.*$/,Dt=/([?&])_=[^&]*/,At=/^(.*?):[ \\t]*([^\\r\\n]*)$/gm,Nt=/^(?:GET|HEAD)$/,$t=/^\\/\\//,Ht={},Lt={},_t=\"*/\".concat(\"*\"),Ft=S.createElement(\"a\");function It(i){return function(e,t){\"string\"!=typeof e&&(t=e,e=\"*\");var n,o=0,r=e.toLowerCase().match(F)||[];if(E.isFunction(t))for(;n=r[o++];)\"+\"===n[0]?(n=n.slice(1)||\"*\",(i[n]=i[n]||[]).unshift(t)):(i[n]=i[n]||[]).push(t)}}function Mt(t,r,i,l){var s={},a=t===Lt;function c(e){var o;return s[e]=!0,E.each(t[e]||[],function(e,t){var n=t(r,i,l);return\"string\"!=typeof n||a||s[n]?a?!(o=n):void 0:(r.dataTypes.unshift(n),c(n),!1)}),o}return c(r.dataTypes[0])||!s[\"*\"]&&c(\"*\")}function Wt(e,t){var n,o,r=E.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((r[n]?e:o||(o={}))[n]=t[n]);return o&&E.extend(!0,e,o),e}Ft.href=yt.href,E.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yt.href,type:\"GET\",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(yt.protocol),global:!0,processData:!0,async:!0,contentType:\"application/x-www-form-urlencoded; charset=UTF-8\",accepts:{\"*\":_t,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\":E.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Wt(Wt(e,E.ajaxSettings),t):Wt(E.ajaxSettings,e)},ajaxPrefilter:It(Ht),ajaxTransport:It(Lt),ajax:function(e,t){\"object\"==typeof e&&(t=e,e=void 0),t=t||{};var u,d,p,n,f,o,h,g,r,i,m=E.ajaxSetup({},t),v=m.context||m,w=m.context&&(v.nodeType||v.jquery)?E(v):E.event,y=E.Deferred(),C=E.Callbacks(\"once memory\"),b=m.statusCode||{},l={},s={},a=\"canceled\",x={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n)for(n={};t=At.exec(p);)n[t[1].toLowerCase()]=t[2];t=n[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,l[e]=t),this},overrideMimeType:function(e){return null==h&&(m.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)x.always(e[x.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||a;return u&&u.abort(t),c(0,t),this}};if(y.promise(x),m.url=((e||m.url||yt.href)+\"\").replace($t,yt.protocol+\"//\"),m.type=t.method||t.type||m.method||m.type,m.dataTypes=(m.dataType||\"*\").toLowerCase().match(F)||[\"\"],null==m.crossDomain){o=S.createElement(\"a\");try{o.href=m.url,o.href=o.href,m.crossDomain=Ft.protocol+\"//\"+Ft.host!=o.protocol+\"//\"+o.host}catch(e){m.crossDomain=!0}}if(m.data&&m.processData&&\"string\"!=typeof m.data&&(m.data=E.param(m.data,m.traditional)),Mt(Ht,m,t,x),h)return x;for(r in(g=E.event&&m.global)&&0==E.active++&&E.event.trigger(\"ajaxStart\"),m.type=m.type.toUpperCase(),m.hasContent=!Nt.test(m.type),d=m.url.replace(Pt,\"\"),m.hasContent?m.data&&m.processData&&0===(m.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&(m.data=m.data.replace(Tt,\"+\")):(i=m.url.slice(d.length),m.data&&(d+=(bt.test(d)?\"&\":\"?\")+m.data,delete m.data),!1===m.cache&&(d=d.replace(Dt,\"$1\"),i=(bt.test(d)?\"&\":\"?\")+\"_=\"+Ct+++i),m.url=d+i),m.ifModified&&(E.lastModified[d]&&x.setRequestHeader(\"If-Modified-Since\",E.lastModified[d]),E.etag[d]&&x.setRequestHeader(\"If-None-Match\",E.etag[d])),(m.data&&m.hasContent&&!1!==m.contentType||t.contentType)&&x.setRequestHeader(\"Content-Type\",m.contentType),x.setRequestHeader(\"Accept\",m.dataTypes[0]&&m.accepts[m.dataTypes[0]]?m.accepts[m.dataTypes[0]]+(\"*\"!==m.dataTypes[0]?\", \"+_t+\"; q=0.01\":\"\"):m.accepts[\"*\"]),m.headers)x.setRequestHeader(r,m.headers[r]);if(m.beforeSend&&(!1===m.beforeSend.call(v,x,m)||h))return x.abort();if(a=\"abort\",C.add(m.complete),x.done(m.success),x.fail(m.error),u=Mt(Lt,m,t,x)){if(x.readyState=1,g&&w.trigger(\"ajaxSend\",[x,m]),h)return x;m.async&&0<m.timeout&&(f=R.setTimeout(function(){x.abort(\"timeout\")},m.timeout));try{h=!1,u.send(l,c)}catch(e){if(h)throw e;c(-1,e)}}else c(-1,\"No Transport\");function c(e,t,n,o){var r,i,l,s,a,c=t;h||(h=!0,f&&R.clearTimeout(f),u=void 0,p=o||\"\",x.readyState=0<e?4:0,r=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var o,r,i,l,s=e.contents,a=e.dataTypes;for(;\"*\"===a[0];)a.shift(),void 0===o&&(o=e.mimeType||t.getResponseHeader(\"Content-Type\"));if(o)for(r in s)if(s[r]&&s[r].test(o)){a.unshift(r);break}if(a[0]in n)i=a[0];else{for(r in n){if(!a[0]||e.converters[r+\" \"+a[0]]){i=r;break}l||(l=r)}i=i||l}if(i)return i!==a[0]&&a.unshift(i),n[i]}(m,x,n)),s=function(e,t,n,o){var r,i,l,s,a,c={},u=e.dataTypes.slice();if(u[1])for(l in e.converters)c[l.toLowerCase()]=e.converters[l];i=u.shift();for(;i;)if(e.responseFields[i]&&(n[e.responseFields[i]]=t),!a&&o&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),a=i,i=u.shift())if(\"*\"===i)i=a;else if(\"*\"!==a&&a!==i){if(!(l=c[a+\" \"+i]||c[\"* \"+i]))for(r in c)if((s=r.split(\" \"))[1]===i&&(l=c[a+\" \"+s[0]]||c[\"* \"+s[0]])){!0===l?l=c[r]:!0!==c[r]&&(i=s[0],u.unshift(s[1]));break}if(!0!==l)if(l&&e.throws)t=l(t);else try{t=l(t)}catch(e){return{state:\"parsererror\",error:l?e:\"No conversion from \"+a+\" to \"+i}}}return{state:\"success\",data:t}}(m,s,x,r),r?(m.ifModified&&((a=x.getResponseHeader(\"Last-Modified\"))&&(E.lastModified[d]=a),(a=x.getResponseHeader(\"etag\"))&&(E.etag[d]=a)),204===e||\"HEAD\"===m.type?c=\"nocontent\":304===e?c=\"notmodified\":(c=s.state,i=s.data,l=s.error,r=!l)):(l=c,!e&&c||(c=\"error\",e<0&&(e=0))),x.status=e,x.statusText=(t||c)+\"\",r?y.resolveWith(v,[i,c,x]):y.rejectWith(v,[x,c,l]),x.statusCode(b),b=void 0,g&&w.trigger(r?\"ajaxSuccess\":\"ajaxError\",[x,m,r?i:l]),C.fireWith(v,[x,c]),g&&(w.trigger(\"ajaxComplete\",[x,m]),--E.active||E.event.trigger(\"ajaxStop\")))}return x},getJSON:function(e,t,n){return E.get(e,t,n,\"json\")},getScript:function(e,t){return E.get(e,void 0,t,\"script\")}}),E.each([\"get\",\"post\"],function(e,r){E[r]=function(e,t,n,o){return E.isFunction(t)&&(o=o||n,n=t,t=void 0),E.ajax(E.extend({url:e,type:r,dataType:o,data:t,success:n},E.isPlainObject(e)&&e))}}),E._evalUrl=function(e){return E.ajax({url:e,type:\"GET\",dataType:\"script\",cache:!0,async:!1,global:!1,throws:!0})},E.fn.extend({wrapAll:function(e){var t;return this[0]&&(E.isFunction(e)&&(e=e.call(this[0])),t=E(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(n){return E.isFunction(n)?this.each(function(e){E(this).wrapInner(n.call(this,e))}):this.each(function(){var e=E(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=E.isFunction(t);return this.each(function(e){E(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not(\"body\").each(function(){E(this).replaceWith(this.childNodes)}),this}}),E.expr.pseudos.hidden=function(e){return!E.expr.pseudos.visible(e)},E.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},E.ajaxSettings.xhr=function(){try{return new R.XMLHttpRequest}catch(e){}};var jt={0:200,1223:204},Vt=E.ajaxSettings.xhr();m.cors=!!Vt&&\"withCredentials\"in Vt,m.ajax=Vt=!!Vt,E.ajaxTransport(function(r){var i,l;if(m.cors||Vt&&!r.crossDomain)return{send:function(e,t){var n,o=r.xhr();if(o.open(r.type,r.url,r.async,r.username,r.password),r.xhrFields)for(n in r.xhrFields)o[n]=r.xhrFields[n];for(n in r.mimeType&&o.overrideMimeType&&o.overrideMimeType(r.mimeType),r.crossDomain||e[\"X-Requested-With\"]||(e[\"X-Requested-With\"]=\"XMLHttpRequest\"),e)o.setRequestHeader(n,e[n]);i=function(e){return function(){i&&(i=l=o.onload=o.onerror=o.onabort=o.onreadystatechange=null,\"abort\"===e?o.abort():\"error\"===e?\"number\"!=typeof o.status?t(0,\"error\"):t(o.status,o.statusText):t(jt[o.status]||o.status,o.statusText,\"text\"!==(o.responseType||\"text\")||\"string\"!=typeof o.responseText?{binary:o.response}:{text:o.responseText},o.getAllResponseHeaders()))}},o.onload=i(),l=o.onerror=i(\"error\"),void 0!==o.onabort?o.onabort=l:o.onreadystatechange=function(){4===o.readyState&&R.setTimeout(function(){i&&l()})},i=i(\"abort\");try{o.send(r.hasContent&&r.data||null)}catch(e){if(i)throw e}},abort:function(){i&&i()}}}),E.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),E.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 E.globalEval(e),e}}}),E.ajaxPrefilter(\"script\",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type=\"GET\")}),E.ajaxTransport(\"script\",function(n){var o,r;if(n.crossDomain)return{send:function(e,t){o=E(\"<script>\").prop({charset:n.scriptCharset,src:n.url}).on(\"load error\",r=function(e){o.remove(),r=null,e&&t(\"error\"===e.type?404:200,e.type)}),S.head.appendChild(o[0])},abort:function(){r&&r()}}});var Bt,qt=[],Ot=/(=)\\?(?=&|$)|\\?\\?/;E.ajaxSetup({jsonp:\"callback\",jsonpCallback:function(){var e=qt.pop()||E.expando+\"_\"+Ct++;return this[e]=!0,e}}),E.ajaxPrefilter(\"json jsonp\",function(e,t,n){var o,r,i,l=!1!==e.jsonp&&(Ot.test(e.url)?\"url\":\"string\"==typeof e.data&&0===(e.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&Ot.test(e.data)&&\"data\");if(l||\"jsonp\"===e.dataTypes[0])return o=e.jsonpCallback=E.isFunction(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,l?e[l]=e[l].replace(Ot,\"$1\"+o):!1!==e.jsonp&&(e.url+=(bt.test(e.url)?\"&\":\"?\")+e.jsonp+\"=\"+o),e.converters[\"script json\"]=function(){return i||E.error(o+\" was not called\"),i[0]},e.dataTypes[0]=\"json\",r=R[o],R[o]=function(){i=arguments},n.always(function(){void 0===r?E(R).removeProp(o):R[o]=r,e[o]&&(e.jsonpCallback=t.jsonpCallback,qt.push(o)),i&&E.isFunction(r)&&r(i[0]),i=r=void 0}),\"script\"}),m.createHTMLDocument=((Bt=S.implementation.createHTMLDocument(\"\").body).innerHTML=\"<form></form><form></form>\",2===Bt.childNodes.length),E.parseHTML=function(e,t,n){return\"string\"!=typeof e?[]:(\"boolean\"==typeof t&&(n=t,t=!1),t||(m.createHTMLDocument?(t=S.implementation.createHTMLDocument(\"\"),(o=t.createElement(\"base\")).href=S.location.href,t.head.appendChild(o)):t=S),r=T.exec(e),i=!n&&[],r?[t.createElement(r[1])]:(r=me([e],t,i),i&&i.length&&E(i).remove(),E.merge([],r.childNodes)));var o,r,i},E.fn.load=function(e,t,n){var o,r,i,l=this,s=e.indexOf(\" \");return-1<s&&(o=gt(e.slice(s)),e=e.slice(0,s)),E.isFunction(t)?(n=t,t=void 0):t&&\"object\"==typeof t&&(r=\"POST\"),0<l.length&&E.ajax({url:e,type:r||\"GET\",dataType:\"html\",data:t}).done(function(e){i=arguments,l.html(o?E(\"<div>\").append(E.parseHTML(e)).find(o):e)}).always(n&&function(e,t){l.each(function(){n.apply(this,i||[e.responseText,t,e])})}),this},E.each([\"ajaxStart\",\"ajaxStop\",\"ajaxComplete\",\"ajaxError\",\"ajaxSuccess\",\"ajaxSend\"],function(e,t){E.fn[t]=function(e){return this.on(t,e)}}),E.expr.pseudos.animated=function(t){return E.grep(E.timers,function(e){return t===e.elem}).length},E.offset={setOffset:function(e,t,n){var o,r,i,l,s,a,c=E.css(e,\"position\"),u=E(e),d={};\"static\"===c&&(e.style.position=\"relative\"),s=u.offset(),i=E.css(e,\"top\"),a=E.css(e,\"left\"),(\"absolute\"===c||\"fixed\"===c)&&-1<(i+a).indexOf(\"auto\")?(o=u.position(),l=o.top,r=o.left):(l=parseFloat(i)||0,r=parseFloat(a)||0),E.isFunction(t)&&(t=t.call(e,n,E.extend({},s))),null!=t.top&&(d.top=t.top-s.top+l),null!=t.left&&(d.left=t.left-s.left+r),\"using\"in t?t.using.call(e,d):u.css(d)}},E.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){E.offset.setOffset(this,t,e)});var e,n,o,r,i=this[0];return i?i.getClientRects().length?(o=i.getBoundingClientRect(),e=i.ownerDocument,n=e.documentElement,r=e.defaultView,{top:o.top+r.pageYOffset-n.clientTop,left:o.left+r.pageXOffset-n.clientLeft}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n=this[0],o={top:0,left:0};return\"fixed\"===E.css(n,\"position\")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),k(e[0],\"html\")||(o=e.offset()),o={top:o.top+E.css(e[0],\"borderTopWidth\",!0),left:o.left+E.css(e[0],\"borderLeftWidth\",!0)}),{top:t.top-o.top-E.css(n,\"marginTop\",!0),left:t.left-o.left-E.css(n,\"marginLeft\",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&\"static\"===E.css(e,\"position\");)e=e.offsetParent;return e||ve})}}),E.each({scrollLeft:\"pageXOffset\",scrollTop:\"pageYOffset\"},function(t,r){var i=\"pageYOffset\"===r;E.fn[t]=function(e){return q(this,function(e,t,n){var o;if(E.isWindow(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===n)return o?o[r]:e[t];o?o.scrollTo(i?o.pageXOffset:n,i?n:o.pageYOffset):e[t]=n},t,e,arguments.length)}}),E.each([\"top\",\"left\"],function(e,n){E.cssHooks[n]=Ve(m.pixelPosition,function(e,t){if(t)return t=je(e,n),Me.test(t)?E(e).position()[n]+\"px\":t})}),E.each({Height:\"height\",Width:\"width\"},function(l,s){E.each({padding:\"inner\"+l,content:s,\"\":\"outer\"+l},function(o,i){E.fn[i]=function(e,t){var n=arguments.length&&(o||\"boolean\"!=typeof e),r=o||(!0===e||!0===t?\"margin\":\"border\");return q(this,function(e,t,n){var o;return E.isWindow(e)?0===i.indexOf(\"outer\")?e[\"inner\"+l]:e.document.documentElement[\"client\"+l]:9===e.nodeType?(o=e.documentElement,Math.max(e.body[\"scroll\"+l],o[\"scroll\"+l],e.body[\"offset\"+l],o[\"offset\"+l],o[\"client\"+l])):void 0===n?E.css(e,t,r):E.style(e,t,n,r)},s,n?e:void 0,n)}})}),E.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,o){return this.on(t,e,n,o)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,\"**\"):this.off(t,e||\"**\",n)}}),E.holdReady=function(e){e?E.readyWait++:E.ready(!0)},E.isArray=Array.isArray,E.parseJSON=JSON.parse,E.nodeName=k,\"function\"==typeof define&&define.amd&&define(\"jquery\",[],function(){return E});var zt=R.jQuery,Xt=R.$;return E.noConflict=function(e){return R.$===E&&(R.$=Xt),e&&R.jQuery===E&&(R.jQuery=zt),E},e||(R.jQuery=R.$=E),E})},442:function(e,t,n){\n",
518
+       "      /*!\n",
519
+       "           * jquery.event.drag - v 2.3.0\n",
520
+       "           * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n",
521
+       "           * Open Source MIT License - http://threedubmedia.com/code/license\n",
522
+       "           */\n",
523
+       "      var f=e(448);f.fn.drag=function(e,t,n){var o=\"string\"==typeof e?e:\"\",r=f.isFunction(e)?e:f.isFunction(t)?t:null;return 0!==o.indexOf(\"drag\")&&(o=\"drag\"+o),n=(e==r?t:n)||{},r?this.on(o,n,r):this.trigger(o)};var h=f.event,o=h.special,g=o.drag={defaults:{which:1,distance:0,not:\":input\",handle:null,relative:!1,drop:!0,click:!1},datakey:\"dragdata\",noBubble:!0,add:function(e){var n=f.data(this,g.datakey),o=e.data||{};n.related+=1,f.each(g.defaults,function(e,t){void 0!==o[e]&&(n[e]=o[e])})},remove:function(){f.data(this,g.datakey).related-=1},setup:function(){if(!f.data(this,g.datakey)){var e=f.extend({related:0},g.defaults);f.data(this,g.datakey,e),h.add(this,\"touchstart mousedown\",g.init,e),this.attachEvent&&this.attachEvent(\"ondragstart\",g.dontstart)}},teardown:function(){var e=f.data(this,g.datakey)||{};e.related||(f.removeData(this,g.datakey),h.remove(this,\"touchstart mousedown\",g.init),g.textselect(!0),this.detachEvent&&this.detachEvent(\"ondragstart\",g.dontstart))},init:function(e){if(!g.touched){var t,n=e.data;if(!(0!=e.which&&0<n.which&&e.which!=n.which)&&!f(e.target).is(n.not)&&(!n.handle||f(e.target).closest(n.handle,e.currentTarget).length)&&(g.touched=\"touchstart\"==e.type?this:null,n.propagates=1,n.mousedown=this,n.interactions=[g.interaction(this,n)],n.target=e.target,n.pageX=e.pageX,n.pageY=e.pageY,n.dragging=null,t=g.hijack(e,\"draginit\",n),n.propagates))return(t=g.flatten(t))&&t.length&&(n.interactions=[],f.each(t,function(){n.interactions.push(g.interaction(this,n))})),n.propagates=n.interactions.length,!1!==n.drop&&o.drop&&o.drop.handler(e,n),g.textselect(!1),g.touched?h.add(g.touched,\"touchmove touchend\",g.handler,n):h.add(document,\"mousemove mouseup\",g.handler,n),!(!g.touched||n.live)&&void 0}},interaction:function(e,t){var n=e&&e.ownerDocument&&f(e)[t.relative?\"position\":\"offset\"]()||{top:0,left:0};return{drag:e,callback:new g.callback,droppable:[],offset:n}},handler:function(e){var t=e.data;switch(e.type){case!t.dragging&&\"touchmove\":e.preventDefault();case!t.dragging&&\"mousemove\":if(Math.pow(e.pageX-t.pageX,2)+Math.pow(e.pageY-t.pageY,2)<Math.pow(t.distance,2))break;e.target=t.target,g.hijack(e,\"dragstart\",t),t.propagates&&(t.dragging=!0);case\"touchmove\":e.preventDefault();case\"mousemove\":if(t.dragging){if(g.hijack(e,\"drag\",t),t.propagates){!1!==t.drop&&o.drop&&o.drop.handler(e,t);break}e.type=\"mouseup\"}case\"touchend\":case\"mouseup\":default:g.touched?h.remove(g.touched,\"touchmove touchend\",g.handler):h.remove(document,\"mousemove mouseup\",g.handler),t.dragging&&(!1!==t.drop&&o.drop&&o.drop.handler(e,t),g.hijack(e,\"dragend\",t)),g.textselect(!0),!1===t.click&&t.dragging&&f.data(t.mousedown,\"suppress.click\",(new Date).getTime()+5),t.dragging=g.touched=!1}},hijack:function(n,o,r,e,t){if(r){var i,l,s,a={event:n.originalEvent,type:n.type},c=o.indexOf(\"drop\")?\"drag\":\"drop\",u=e||0,d=isNaN(e)?r.interactions.length:e;n.type=o;var p=function(){};n.originalEvent=new f.Event(a.event,{preventDefault:p,stopPropagation:p,stopImmediatePropagation:p}),r.results=[];do{if(l=r.interactions[u]){if(\"dragend\"!==o&&l.cancelled)continue;s=g.properties(n,r,l),l.results=[],f(t||l[c]||r.droppable).each(function(e,t){if(s.target=t,!(n.isPropagationStopped=function(){return!1})===(i=t?h.dispatch.call(t,n,s):null)?(\"drag\"==c&&(l.cancelled=!0,r.propagates-=1),\"drop\"==o&&(l[c][e]=null)):\"dropinit\"==o&&l.droppable.push(g.element(i)||t),\"dragstart\"==o&&(l.proxy=f(g.element(i)||l.drag)[0]),l.results.push(i),delete n.result,\"dropinit\"!==o)return i}),r.results[u]=g.flatten(l.results),\"dropinit\"==o&&(l.droppable=g.flatten(l.droppable)),\"dragstart\"!=o||l.cancelled||s.update()}}while(++u<d);return n.type=a.type,n.originalEvent=a.event,g.flatten(r.results)}},properties:function(e,t,n){var o=n.callback;return o.drag=n.drag,o.proxy=n.proxy||n.drag,o.startX=t.pageX,o.startY=t.pageY,o.deltaX=e.pageX-t.pageX,o.deltaY=e.pageY-t.pageY,o.originalX=n.offset.left,o.originalY=n.offset.top,o.offsetX=o.originalX+o.deltaX,o.offsetY=o.originalY+o.deltaY,o.drop=g.flatten((n.drop||[]).slice()),o.available=g.flatten((n.droppable||[]).slice()),o},element:function(e){if(e&&(e.jquery||1==e.nodeType))return e},flatten:function(e){return f.map(e,function(e){return e&&e.jquery?f.makeArray(e):e&&e.length?g.flatten(e):e})},textselect:function(e){f(document)[e?\"off\":\"on\"](\"selectstart\",g.dontstart).css(\"MozUserSelect\",e?\"\":\"none\"),document.unselectable=e?\"off\":\"on\"},dontstart:function(){return!1},callback:function(){}};g.callback.prototype={update:function(){o.drop&&this.available.length&&f.each(this.available,function(e){o.drop.locate(this,e)})}};var r=h.dispatch;h.dispatch=function(e){if(!(0<f.data(this,\"suppress.\"+e.type)-(new Date).getTime()))return r.apply(this,arguments);f.removeData(this,\"suppress.\"+e.type)},o.draginit=o.dragstart=o.dragend=g},443:function(e,t,n){\n",
524
+       "      /*!\n",
525
+       "           * jquery.event.drop - v 2.3.0\n",
526
+       "           * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n",
527
+       "           * Open Source MIT License - http://threedubmedia.com/code/license\n",
528
+       "           */\n",
529
+       "      var f=e(448);f.fn.drop=function(e,t,n){var o=\"string\"==typeof e?e:\"\",r=f.isFunction(e)?e:f.isFunction(t)?t:null;return 0!==o.indexOf(\"drop\")&&(o=\"drop\"+o),n=(e==r?t:n)||{},r?this.on(o,n,r):this.trigger(o)},f.drop=function(e){e=e||{},g.multi=!0===e.multi?1/0:!1===e.multi?1:isNaN(e.multi)?g.multi:e.multi,g.delay=e.delay||g.delay,g.tolerance=f.isFunction(e.tolerance)?e.tolerance:null===e.tolerance?null:g.tolerance,g.mode=e.mode||g.mode||\"intersect\"};var o=f.event,h=o.special,g=f.event.special.drop={multi:1,delay:20,mode:\"overlap\",targets:[],datakey:\"dropdata\",noBubble:!0,add:function(e){var t=f.data(this,g.datakey);t.related+=1},remove:function(){f.data(this,g.datakey).related-=1},setup:function(){if(!f.data(this,g.datakey)){f.data(this,g.datakey,{related:0,active:[],anyactive:0,winner:0,location:{}}),g.targets.push(this)}},teardown:function(){var e=f.data(this,g.datakey)||{};if(!e.related){f.removeData(this,g.datakey);var t=this;g.targets=f.grep(g.targets,function(e){return e!==t})}},handler:function(e,t){var n;if(t)switch(e.type){case\"mousedown\":case\"touchstart\":n=f(g.targets),\"string\"==typeof t.drop&&(n=n.filter(t.drop)),n.each(function(){var e=f.data(this,g.datakey);e.active=[],e.anyactive=0,e.winner=0}),t.droppable=n,h.drag.hijack(e,\"dropinit\",t);break;case\"mousemove\":case\"touchmove\":g.event=e,g.timer||g.tolerate(t);break;case\"mouseup\":case\"touchend\":g.timer=clearTimeout(g.timer),t.propagates&&(h.drag.hijack(e,\"drop\",t),h.drag.hijack(e,\"dropend\",t))}},locate:function(e,t){var n=f.data(e,g.datakey),o=f(e),r=o.offset()||{},i=o.outerHeight(),l=o.outerWidth(),s={elem:e,width:l,height:i,top:r.top,left:r.left,right:r.left+l,bottom:r.top+i};return n&&(n.location=s,n.index=t,n.elem=e),s},contains:function(e,t){return(t[0]||t.left)>=e.left&&(t[0]||t.right)<=e.right&&(t[1]||t.top)>=e.top&&(t[1]||t.bottom)<=e.bottom},modes:{intersect:function(e,t,n){return this.contains(n,[e.pageX,e.pageY])?1e9:this.modes.overlap.apply(this,arguments)},overlap:function(e,t,n){return Math.max(0,Math.min(n.bottom,t.bottom)-Math.max(n.top,t.top))*Math.max(0,Math.min(n.right,t.right)-Math.max(n.left,t.left))},fit:function(e,t,n){return this.contains(n,t)?1:0},middle:function(e,t,n){return this.contains(n,[t.left+.5*t.width,t.top+.5*t.height])?1:0}},sort:function(e,t){return t.winner-e.winner||e.index-t.index},tolerate:function(e){var t,n,o,r,i,l,s,a,c=0,u=e.interactions.length,d=[g.event.pageX,g.event.pageY],p=g.tolerance||g.modes[g.mode];do{if(a=e.interactions[c]){if(!a)return;a.drop=[],i=[],l=a.droppable.length,p&&(o=g.locate(a.proxy)),t=0;do{if(s=a.droppable[t]){if(r=f.data(s,g.datakey),!(n=r.location))continue;r.winner=p?p.call(g,g.event,o,n):g.contains(n,d)?1:0,i.push(r)}}while(++t<l);for(i.sort(g.sort),t=0;(r=i[t])&&(r.winner&&a.drop.length<g.multi?(r.active[c]||r.anyactive||(!1!==h.drag.hijack(g.event,\"dropstart\",e,c,r.elem)[0]?(r.active[c]=1,r.anyactive+=1):r.winner=0),r.winner&&a.drop.push(r.elem)):r.active[c]&&1==r.anyactive&&(h.drag.hijack(g.event,\"dropend\",e,c,r.elem),r.active[c]=0,r.anyactive-=1)),++t<l;);}}while(++c<u);g.last&&d[0]==g.last.pageX&&d[1]==g.last.pageY?delete g.timer:g.timer=setTimeout(function(){g.tolerate(e)},g.delay),g.last=g.event}};h.dropinit=h.dropstart=h.dropend=g},444:function(e,t,n){var d=e(448),p=e(446);t.exports={CheckboxSelectColumn:function(e){var l,t=new p.EventHandler,s={},a=d.extend(!0,{},{columnId:\"_checkbox_selector\",cssClass:null,toolTip:\"Select/Deselect All\",width:30},e);function n(e,t){var n,o,r=l.getSelectedRows(),i={};for(o=0;o<r.length;o++)n=r[o],i[n]=!0,i[n]!==s[n]&&(l.invalidateRow(n),delete s[n]);for(o in s)l.invalidateRow(o);s=i,l.render(),r.length&&r.length==l.getDataLength()?l.updateColumnHeader(a.columnId,\"<input type='checkbox' checked='checked'>\",a.toolTip):l.updateColumnHeader(a.columnId,\"<input type='checkbox'>\",a.toolTip)}function o(e,t){32==e.which&&l.getColumns()[t.cell].id===a.columnId&&(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit()||i(t.row),e.preventDefault(),e.stopImmediatePropagation())}function r(e,t){if(l.getColumns()[t.cell].id===a.columnId&&d(e.target).is(\":checkbox\")){if(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();i(t.row),e.stopPropagation(),e.stopImmediatePropagation()}}function i(t){s[t]?l.setSelectedRows(d.grep(l.getSelectedRows(),function(e){return e!=t})):l.setSelectedRows(l.getSelectedRows().concat(t))}function c(e,t){if(t.column.id==a.columnId&&d(e.target).is(\":checkbox\")){if(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();if(d(e.target).is(\":checked\")){for(var n=[],o=0;o<l.getDataLength();o++)n.push(o);l.setSelectedRows(n)}else l.setSelectedRows([]);e.stopPropagation(),e.stopImmediatePropagation()}}function u(e,t,n,o,r){return r?s[e]?\"<input type='checkbox' checked='checked'>\":\"<input type='checkbox'>\":null}d.extend(this,{init:function(e){l=e,t.subscribe(l.onSelectedRowsChanged,n).subscribe(l.onClick,r).subscribe(l.onHeaderClick,c).subscribe(l.onKeyDown,o)},destroy:function(){t.unsubscribeAll()},deSelectRows:function(e){var t,n=e.length,o=[];for(t=0;t<n;t++)s[e[t]]&&(o[o.length]=e[t]);l.setSelectedRows(d.grep(l.getSelectedRows(),function(e){return o.indexOf(e)<0}))},selectRows:function(e){var t,n=e.length,o=[];for(t=0;t<n;t++)s[e[t]]||(o[o.length]=e[t]);l.setSelectedRows(l.getSelectedRows().concat(o))},getColumnDefinition:function(){return{id:a.columnId,name:\"<input type='checkbox'>\",toolTip:a.toolTip,field:\"sel\",width:a.width,resizable:!1,sortable:!1,cssClass:a.cssClass,formatter:u}}})}}},445:function(e,t,n){var v=e(448),w=e(446);t.exports={RowSelectionModel:function(t){var c,n,o,u=[],r=this,i=new w.EventHandler,l={selectActiveRow:!0};function s(e){return function(){n||(n=!0,e.apply(this,arguments),n=!1)}}function d(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 p(e){for(var t=[],n=c.getColumns().length-1,o=0;o<e.length;o++)t.push(new w.Range(e[o],0,e[o],n));return t}function a(){return d(u)}function f(e){(u&&0!==u.length||e&&0!==e.length)&&(u=e,r.onSelectedRangesChanged.notify(u))}function h(e,t){o.selectActiveRow&&null!=t.row&&f([new w.Range(t.row,0,t.row,c.getColumns().length-1)])}function g(e){var t=c.getActiveCell();if(t&&e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&(38==e.which||40==e.which)){var n=a();n.sort(function(e,t){return e-t}),n.length||(n=[t.row]);var o,r=n[0],i=n[n.length-1];if(0<=(o=40==e.which?t.row<i||r==i?++i:++r:t.row<i?--i:--r)&&o<c.getDataLength()){c.scrollRowIntoView(o);var l=p(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}(r,i));f(l)}e.preventDefault(),e.stopPropagation()}}function m(e){var n=c.getCellFromEvent(e);if(!n||!c.canCellBeActive(n.row,n.cell))return!1;if(!c.getOptions().multiSelect||!e.ctrlKey&&!e.shiftKey&&!e.metaKey)return!1;var t=d(u),o=v.inArray(n.row,t);if(-1===o&&(e.ctrlKey||e.metaKey))t.push(n.row),c.setActiveCell(n.row,n.cell);else if(-1!==o&&(e.ctrlKey||e.metaKey))t=v.grep(t,function(e,t){return e!==n.row}),c.setActiveCell(n.row,n.cell);else if(t.length&&e.shiftKey){var r=t.pop(),i=Math.min(n.row,r),l=Math.max(n.row,r);t=[];for(var s=i;s<=l;s++)s!==r&&t.push(s);t.push(r),c.setActiveCell(n.row,n.cell)}var a=p(t);return f(a),e.stopImmediatePropagation(),!0}v.extend(this,{getSelectedRows:a,setSelectedRows:function(e){f(p(e))},getSelectedRanges:function(){return u},setSelectedRanges:f,init:function(e){o=v.extend(!0,{},l,t),c=e,i.subscribe(c.onActiveCellChanged,s(h)),i.subscribe(c.onKeyDown,s(g)),i.subscribe(c.onClick,s(m))},destroy:function(){i.unsubscribeAll()},onSelectedRangesChanged:new w.Event})}}},446:function(e,t,n){function l(){var e=!1,t=!1;this.stopPropagation=function(){e=!0},this.isPropagationStopped=function(){return e},this.stopImmediatePropagation=function(){t=!0},this.isImmediatePropagationStopped=function(){return t}}function o(){this.__nonDataRow=!0}function r(){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 i(){this.__groupTotals=!0,this.group=null,this.initialized=!1}function s(){var t=null;this.isActive=function(e){return e?t===e:null!==t},this.activate=function(e){if(e!==t){if(null!==t)throw new Error(\"SlickGrid.EditorLock.activate: an editController is still active, can't activate another editController\");if(!e.commitCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .commitCurrentEdit()\");if(!e.cancelCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .cancelCurrentEdit()\");t=e}},this.deactivate=function(e){if(t!==e)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()}}(r.prototype=new o).equals=function(e){return this.value===e.value&&this.count===e.count&&this.collapsed===e.collapsed&&this.title===e.title},i.prototype=new o,t.exports={Event:function(){var i=[];this.subscribe=function(e){i.push(e)},this.unsubscribe=function(e){for(var t=i.length-1;0<=t;t--)i[t]===e&&i.splice(t,1)},this.notify=function(e,t,n){var o;t=t||new l,n=n||this;for(var r=0;r<i.length&&!t.isPropagationStopped()&&!t.isImmediatePropagationStopped();r++)o=i[r].call(n,t,e);return o}},EventData:l,EventHandler:function(){var o=[];this.subscribe=function(e,t){return o.push({event:e,handler:t}),e.subscribe(t),this},this.unsubscribe=function(e,t){for(var n=o.length;n--;)if(o[n].event===e&&o[n].handler===t)return o.splice(n,1),void e.unsubscribe(t);return this},this.unsubscribeAll=function(){for(var e=o.length;e--;)o[e].event.unsubscribe(o[e].handler);return o=[],this}},Range:function(e,t,n,o){void 0===n&&void 0===o&&(n=e,o=t);this.fromRow=Math.min(e,n),this.fromCell=Math.min(t,o),this.toRow=Math.max(e,n),this.toCell=Math.max(t,o),this.isSingleRow=function(){return this.fromRow==this.toRow},this.isSingleCell=function(){return this.fromRow==this.toRow&&this.fromCell==this.toCell},this.contains=function(e,t){return e>=this.fromRow&&e<=this.toRow&&t>=this.fromCell&&t<=this.toCell},this.toString=function(){return this.isSingleCell()?\"(\"+this.fromRow+\":\"+this.fromCell+\")\":\"(\"+this.fromRow+\":\"+this.fromCell+\" - \"+this.toRow+\":\"+this.toCell+\")\"}},NonDataRow:o,Group:r,GroupTotals:i,EditorLock:s,GlobalEditorLock:new s,keyCode:{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,C:67,V:86},preClickClassName:\"slick-edit-preclick\"}},447:function _(require,module,exports){\n",
530
+       "      /**\n",
531
+       "           * @license\n",
532
+       "           * (c) 2009-2016 Michael Leibman\n",
533
+       "           * michael{dot}leibman{at}gmail{dot}com\n",
534
+       "           * http://github.com/mleibman/slickgrid\n",
535
+       "           *\n",
536
+       "           * Distributed under MIT license.\n",
537
+       "           * All rights reserved.\n",
538
+       "           *\n",
539
+       "           * SlickGrid v2.3\n",
540
+       "           *\n",
541
+       "           * NOTES:\n",
542
+       "           *     Cell/row DOM manipulations are done directly bypassing jQuery's DOM manipulation methods.\n",
543
+       "           *     This increases the speed dramatically, but can only be done safely because there are no event handlers\n",
544
+       "           *     or data associated with any cell/row DOM nodes.  Cell editors must make sure they implement .destroy()\n",
545
+       "           *     and do proper cleanup.\n",
546
+       "           */\n",
547
+       "      var $=require(448),Slick=require(446),scrollbarDimensions,maxSupportedCssHeight;function SlickGrid(container,data,columns,options){$.fn.drag||require(442),$.fn.drop||require(443);var defaults={explicitInitialization:!1,rowHeight:25,defaultColumnWidth:80,enableAddRow:!1,leaveSpaceForNewRows:!1,editable:!1,autoEdit:!0,enableCellNavigation:!0,enableColumnReorder:!0,asyncEditorLoading:!1,asyncEditorLoadDelay:100,forceFitColumns:!1,enableAsyncPostRender:!1,asyncPostRenderDelay:50,enableAsyncPostRenderCleanup:!1,asyncPostRenderCleanupDelay:40,autoHeight:!1,editorLock:Slick.GlobalEditorLock,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,fullWidthRows:!1,multiColumnSort:!1,numberedMultiColumnSort:!1,tristateMultiColumnSort:!1,defaultFormatter:defaultFormatter,forceSyncScrolling:!1,addNewRowCssClass:\"new-row\",preserveCopiedSelectionOnPaste:!1,showCellSelection:!0},columnDefaults={name:\"\",resizable:!0,sortable:!1,minWidth:30,rerenderOnResize:!1,headerCssClass:null,defaultSortAsc:!0,focusable:!0,selectable:!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,$headerScroller,$headers,$headerRow,$headerRowScroller,$headerRowSpacer,$footerRow,$footerRowScroller,$footerRowSpacer,$preHeaderPanel,$preHeaderPanelScroller,$preHeaderPanelSpacer,$topPanelScroller,$topPanel,$viewport,$canvas,$style,$boundAncestors,stylesheet,columnCssRulesL,columnCssRulesR,viewportH,viewportW,canvasWidth,viewportHasHScroll,viewportHasVScroll,headerColumnWidthDiff=0,headerColumnHeightDiff=0,cellWidthDiff=0,cellHeightDiff=0,jQueryNewWidthBehaviour=!1,absoluteColumnMinWidth,sortIndicatorCssClass=\"slick-sort-indicator\",tabbingDirection=1,activePosX,activeRow,activeCell,activeCellNode=null,currentEditor=null,serializedEditorValue,editController,rowsCache={},renderedRows=0,numVisibleRows,prevScrollTop=0,scrollTop=0,lastRenderedScrollTop=0,lastRenderedScrollLeft=0,prevScrollLeft=0,scrollLeft=0,selectionModel,selectedRows=[],plugins=[],cellCssClasses={},columnsById={},sortColumns=[],columnPosLeft=[],columnPosRight=[],pagingActive=!1,pagingIsLastPage=!1,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,cssShow={position:\"absolute\",visibility:\"hidden\",display:\"block\"},$hiddenParents,oldProps=[];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.\");cacheCssForHiddenInit(),maxSupportedCssHeight=maxSupportedCssHeight||getMaxSupportedCssHeight(),scrollbarDimensions=scrollbarDimensions||measureScrollbar(),options=$.extend({},defaults,options),validateAndEnforceOptions(),columnDefaults.width=options.defaultColumnWidth,columnsById={};for(var e=0;e<columns.length;e++){var t=columns[e]=$.extend({},columnDefaults,columns[e]);columnsById[t.id]=e,t.minWidth&&t.width<t.minWidth&&(t.width=t.minWidth),t.maxWidth&&t.width>t.maxWidth&&(t.width=t.maxWidth)}if(options.enableColumnReorder&&!$.fn.sortable)throw new Error(\"SlickGrid's 'enableColumnReorder = true' option requires jquery-ui.sortable module to be loaded\");editController={commitCurrentEdit:commitCurrentEdit,cancelCurrentEdit: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),options.createPreHeaderPanel&&($preHeaderPanelScroller=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$preHeaderPanel=$(\"<div />\").appendTo($preHeaderPanelScroller),$preHeaderPanelSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($preHeaderPanelScroller),options.showPreHeaderPanel||$preHeaderPanelScroller.hide()),$headerScroller=$(\"<div class='slick-header ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),($headers=$(\"<div class='slick-header-columns' style='left:-1000px' />\").appendTo($headerScroller)).width(getHeadersWidth()),$headerRowScroller=$(\"<div class='slick-headerrow ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$headerRow=$(\"<div class='slick-headerrow-columns' />\").appendTo($headerRowScroller),$headerRowSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($headerRowScroller),$topPanelScroller=$(\"<div class='slick-top-panel-scroller ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$topPanel=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScroller),options.showTopPanel||$topPanelScroller.hide(),options.showHeaderRow||$headerRowScroller.hide(),($viewport=$(\"<div class='slick-viewport' style='width:100%;overflow:auto;outline:0;position:relative;;'>\").appendTo($container)).css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),$canvas=$(\"<div class='grid-canvas' />\").appendTo($viewport),options.createFooterRow&&($footerRowScroller=$(\"<div class='slick-footerrow ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$footerRow=$(\"<div class='slick-footerrow-columns' />\").appendTo($footerRowScroller),$footerRowSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScroller),options.showFooterRow||$footerRowScroller.hide()),options.numberedMultiColumnSort&&(sortIndicatorCssClass=\"slick-sort-indicator-numbered\"),$focusSink2=$focusSink.clone().appendTo($container),options.explicitInitialization||finishInitialization()}function finishInitialization(){initialized||(initialized=!0,viewportW=parseFloat($.css($container[0],\"width\",!0)),measureCellPaddingAndBorder(),disableSelection($headers),options.enableTextSelectionOnCells||$viewport.on(\"selectstart.ui\",function(e){return $(e.target).is(\"input,textarea\")}),updateColumnCaches(),createColumnHeaders(),setupColumnSort(),createCssRules(),resizeCanvas(),bindAncestorScrollEvents(),$container.on(\"resize.slickgrid\",resizeCanvas),$viewport.on(\"scroll\",handleScroll),$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&&$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),navigator.userAgent.toLowerCase().match(/webkit/)&&navigator.userAgent.toLowerCase().match(/macintosh/)&&$canvas.on(\"mousewheel\",handleMouseWheel),restoreCssFromHiddenInit())}function cacheCssForHiddenInit(){($hiddenParents=$container.parents().addBack().not(\":visible\")).each(function(){var e={};for(var t in cssShow)e[t]=this.style[t],this.style[t]=cssShow[t];oldProps.push(e)})}function restoreCssFromHiddenInit(){$hiddenParents.each(function(e){var t=oldProps[e];for(var n in cssShow)this.style[n]=t[n]})}function registerPlugin(e){plugins.unshift(e),e.init(self)}function unregisterPlugin(e){for(var t=plugins.length;0<=t;t--)if(plugins[t]===e){plugins[t].destroy&&plugins[t].destroy(),plugins.splice(t,1);break}}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(){return $canvas[0]}function measureScrollbar(){var e=$(\"<div style='position:absolute; top:-10000px; left:-10000px; width:100px; height:100px; overflow:scroll;'></div>\").appendTo(\"body\"),t={width:e.width()-e[0].clientWidth,height:e.height()-e[0].clientHeight};return e.remove(),t}function getColumnTotalWidth(e){for(var t=0,n=0,o=columns.length;n<o;n++){var r=columns[n].width;t+=r}return e&&(t+=scrollbarDimensions.width),t}function getHeadersWidth(){var e=getColumnTotalWidth(!0);return Math.max(e,viewportW)+1e3}function getCanvasWidth(){for(var e=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,t=0,n=columns.length;n--;)t+=columns[n].width;return options.fullWidthRows?Math.max(t,e):t}function updateCanvasWidth(e){var t=canvasWidth;(canvasWidth=getCanvasWidth())!=t&&($canvas.width(canvasWidth),$headerRow.width(canvasWidth),options.createFooterRow&&$footerRow.width(canvasWidth),options.createPreHeaderPanel&&$preHeaderPanel.width(canvasWidth),$headers.width(getHeadersWidth()),viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width);var n=canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0);$headerRowSpacer.width(n),options.createFooterRow&&$footerRowSpacer.width(n),options.createPreHeaderPanel&&$preHeaderPanelSpacer.width(n),(canvasWidth!=t||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,t=navigator.userAgent.toLowerCase().match(/firefox/)?6e6:1e9,n=$(\"<div style='display:none' />\").appendTo(document.body);;){var o=2*e;if(n.css(\"height\",o),t<o||n.height()!==o)break;e=o}return n.remove(),e}function getUID(){return uid}function getHeaderColumnWidthDiff(){return headerColumnWidthDiff}function getScrollbarDimensions(){return scrollbarDimensions}function bindAncestorScrollEvents(){for(var e=$canvas[0];(e=e.parentNode)!=document.body&&null!=e;)if(e==$viewport[0]||e.scrollWidth!=e.clientWidth||e.scrollHeight!=e.clientHeight){var t=$(e);$boundAncestors=$boundAncestors?$boundAncestors.add(t):t,t.on(\"scroll.\"+uid,handleActiveCellPositionChange)}}function unbindAncestorScrollEvents(){$boundAncestors&&($boundAncestors.off(\"scroll.\"+uid),$boundAncestors=null)}function updateColumnHeader(e,t,n){if(initialized){var o=getColumnIndex(e);if(null!=o){var r=columns[o],i=$headers.children().eq(o);i&&(void 0!==t&&(columns[o].name=t),void 0!==n&&(columns[o].toolTip=n),trigger(self.onBeforeHeaderCellDestroy,{node:i[0],column:r,grid:self}),i.attr(\"title\",n||\"\").children().eq(0).html(t),trigger(self.onHeaderCellRendered,{node:i[0],column:r,grid:self}))}}}function getHeaderRow(){return $headerRow[0]}function getFooterRow(){return $footerRow[0]}function getPreHeaderPanel(){return $preHeaderPanel[0]}function getHeaderRowColumn(e){var t=getColumnIndex(e),n=$headerRow.children().eq(t);return n&&n[0]}function getFooterRowColumn(e){var t=getColumnIndex(e),n=$footerRow.children().eq(t);return n&&n[0]}function createColumnHeaders(){function e(){$(this).addClass(\"ui-state-hover\")}function t(){$(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})}),$headers.empty(),$headers.width(getHeadersWidth()),$headerRow.find(\".slick-headerrow-column\").each(function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderRowCellDestroy,{node:this,column:e,grid:self})}),$headerRow.empty(),options.createFooterRow&&($footerRow.find(\".slick-footerrow-column\").each(function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e})}),$footerRow.empty());for(var n=0;n<columns.length;n++){var o=columns[n],r=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+o.name+\"</span>\").width(o.width-headerColumnWidthDiff).attr(\"id\",\"\"+uid+o.id).attr(\"title\",o.toolTip||\"\").data(\"column\",o).addClass(o.headerCssClass||\"\").appendTo($headers);if((options.enableColumnReorder||o.sortable)&&r.on(\"mouseenter\",e).on(\"mouseleave\",t),o.sortable&&(r.addClass(\"slick-header-sortable\"),r.append(\"<span class='\"+sortIndicatorCssClass+\"' />\")),trigger(self.onHeaderCellRendered,{node:r[0],column:o,grid:self}),options.showHeaderRow){var i=$(\"<div class='ui-state-default slick-headerrow-column l\"+n+\" r\"+n+\"'></div>\").data(\"column\",o).appendTo($headerRow);trigger(self.onHeaderRowCellRendered,{node:i[0],column:o,grid:self})}if(options.createFooterRow&&options.showFooterRow){var l=$(\"<div class='ui-state-default slick-footerrow-column l\"+n+\" r\"+n+\"'></div>\").data(\"column\",o).appendTo($footerRow);trigger(self.onFooterRowCellRendered,{node:l[0],column:o})}}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(e.metaKey=e.metaKey||e.ctrlKey,!$(e.target).hasClass(\"slick-resizable-handle\")){var t=$(e.target).closest(\".slick-header-column\");if(t.length){var n=t.data(\"column\");if(n.sortable){if(!getEditorLock().commitCurrentEdit())return;for(var o=null,r=0;r<sortColumns.length;r++)if(sortColumns[r].columnId==n.id){(o=sortColumns[r]).sortAsc=!o.sortAsc;break}var i=!!o;options.tristateMultiColumnSort?(o||(o={columnId:n.id,sortAsc:n.defaultSortAsc}),i&&o.sortAsc&&(sortColumns.splice(r,1),o=null),options.multiColumnSort||(sortColumns=[]),!o||i&&options.multiColumnSort||sortColumns.push(o)):e.metaKey&&options.multiColumnSort?o&&sortColumns.splice(r,1):((e.shiftKey||e.metaKey)&&options.multiColumnSort||(sortColumns=[]),o?0==sortColumns.length&&sortColumns.push(o):(o={columnId:n.id,sortAsc:n.defaultSortAsc},sortColumns.push(o))),setSortColumns(sortColumns),0<sortColumns.length&&(options.multiColumnSort?trigger(self.onSort,{multiColumnSort:!0,sortCols:$.map(sortColumns,function(e){return{sortCol:columns[getColumnIndex(e.columnId)],sortAsc:e.sortAsc}}),grid:self},e):trigger(self.onSort,{multiColumnSort:!1,sortCol:n,sortAsc:sortColumns[0].sortAsc,grid:self},e))}}}})}function setupColumnReorder(){$headers.filter(\":ui-sortable\").sortable(\"destroy\"),$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(e,t){t.placeholder.width(t.helper.outerWidth()-headerColumnWidthDiff),$(t.helper).addClass(\"slick-header-column-active\")},beforeStop:function(e,t){$(t.helper).removeClass(\"slick-header-column-active\")},stop:function(e){if(getEditorLock().commitCurrentEdit()){for(var t=$headers.sortable(\"toArray\"),n=[],o=0;o<t.length;o++)n.push(columns[getColumnIndex(t[o].replace(uid,\"\"))]);setColumns(n),trigger(self.onColumnsReordered,{grid:self}),e.stopPropagation(),setupColumnResize()}else $(this).sortable(\"cancel\")}})}function setupColumnResize(){var s,a,c,u,d,p,n,o;(u=$headers.children()).find(\".slick-resizable-handle\").remove(),u.each(function(e,t){e>=columns.length||columns[e].resizable&&(void 0===n&&(n=e),o=e)}),void 0!==n&&u.each(function(l,e){l>=columns.length||l<n||options.forceFitColumns&&o<=l||($(e),$(\"<div class='slick-resizable-handle' />\").appendTo(e).on(\"dragstart\",function(e,t){if(!getEditorLock().commitCurrentEdit())return!1;c=e.pageX,$(this).parent().addClass(\"slick-header-column-active\");var n=null,o=null;if(u.each(function(e,t){e>=columns.length||(columns[e].previousWidth=$(t).outerWidth())}),options.forceFitColumns)for(o=n=0,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(null!==o&&(a.maxWidth?o+=a.maxWidth-a.previousWidth:o=null),n+=a.previousWidth-Math.max(a.minWidth||0,absoluteColumnMinWidth));var r=0,i=0;for(s=0;s<=l;s++)(a=columns[s]).resizable&&(null!==i&&(a.maxWidth?i+=a.maxWidth-a.previousWidth:i=null),r+=a.previousWidth-Math.max(a.minWidth||0,absoluteColumnMinWidth));null===n&&(n=1e5),null===r&&(r=1e5),null===o&&(o=1e5),null===i&&(i=1e5),p=c+Math.min(n,i),d=c-Math.min(r,o)}).on(\"drag\",function(e,t){var n,o,r=Math.min(p,Math.max(d,e.pageX))-c;if(r<0){for(o=r,s=l;0<=s;s--)(a=columns[s]).resizable&&(n=Math.max(a.minWidth||0,absoluteColumnMinWidth),o&&a.previousWidth+o<n?(o+=a.previousWidth-n,a.width=n):(a.width=a.previousWidth+o,o=0));if(options.forceFitColumns)for(o=-r,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(o&&a.maxWidth&&a.maxWidth-a.previousWidth<o?(o-=a.maxWidth-a.previousWidth,a.width=a.maxWidth):(a.width=a.previousWidth+o,o=0))}else{for(o=r,s=l;0<=s;s--)(a=columns[s]).resizable&&(o&&a.maxWidth&&a.maxWidth-a.previousWidth<o?(o-=a.maxWidth-a.previousWidth,a.width=a.maxWidth):(a.width=a.previousWidth+o,o=0));if(options.forceFitColumns)for(o=-r,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(n=Math.max(a.minWidth||0,absoluteColumnMinWidth),o&&a.previousWidth+o<n?(o+=a.previousWidth-n,a.width=n):(a.width=a.previousWidth+o,o=0))}applyColumnHeaderWidths(),options.syncColumnCellResize&&applyColumnWidths()}).on(\"dragend\",function(e,t){var n;for($(this).parent().removeClass(\"slick-header-column-active\"),s=0;s<columns.length;s++)a=columns[s],n=$(u[s]).outerWidth(),a.previousWidth!==n&&a.rerenderOnResize&&invalidateAllRows();updateCanvasWidth(!0),render(),trigger(self.onColumnsResized,{grid:self})}))})}function getVBoxDelta(n){var o=0;return $.each([\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],function(e,t){o+=parseFloat(n.css(t))||0}),o}function measureCellPaddingAndBorder(){var n,e=[\"borderLeftWidth\",\"borderRightWidth\",\"paddingLeft\",\"paddingRight\"],t=[\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],o=$.fn.jquery.split(\".\");jQueryNewWidthBehaviour=1==o[0]&&8<=o[1]||2<=o[0],n=$(\"<div class='ui-state-default slick-header-column' style='visibility:hidden'>-</div>\").appendTo($headers),headerColumnWidthDiff=headerColumnHeightDiff=0,\"border-box\"!=n.css(\"box-sizing\")&&\"border-box\"!=n.css(\"-moz-box-sizing\")&&\"border-box\"!=n.css(\"-webkit-box-sizing\")&&($.each(e,function(e,t){headerColumnWidthDiff+=parseFloat(n.css(t))||0}),$.each(t,function(e,t){headerColumnHeightDiff+=parseFloat(n.css(t))||0})),n.remove();var r=$(\"<div class='slick-row' />\").appendTo($canvas);n=$(\"<div class='slick-cell' id='' style='visibility:hidden'>-</div>\").appendTo(r),cellWidthDiff=cellHeightDiff=0,\"border-box\"!=n.css(\"box-sizing\")&&\"border-box\"!=n.css(\"-moz-box-sizing\")&&\"border-box\"!=n.css(\"-webkit-box-sizing\")&&($.each(e,function(e,t){cellWidthDiff+=parseFloat(n.css(t))||0}),$.each(t,function(e,t){cellHeightDiff+=parseFloat(n.css(t))||0})),r.remove(),absoluteColumnMinWidth=Math.max(headerColumnWidthDiff,cellWidthDiff)}function createCssRules(){$style=$(\"<style type='text/css' rel='stylesheet' />\").appendTo($(\"head\"));for(var e=options.rowHeight-cellHeightDiff,t=[\".\"+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; }\"],n=0;n<columns.length;n++)t.push(\".\"+uid+\" .l\"+n+\" { }\"),t.push(\".\"+uid+\" .r\"+n+\" { }\");$style[0].styleSheet?$style[0].styleSheet.cssText=t.join(\" \"):$style[0].appendChild(document.createTextNode(t.join(\" \")))}function getColumnCssRules(e){var t;if(!stylesheet){var n=document.styleSheets;for(t=0;t<n.length;t++)if((n[t].ownerNode||n[t].owningElement)==$style[0]){stylesheet=n[t];break}if(!stylesheet)throw new Error(\"Cannot find stylesheet.\");columnCssRulesL=[],columnCssRulesR=[];var o,r,i=stylesheet.cssRules||stylesheet.rules;for(t=0;t<i.length;t++){var l=i[t].selectorText;(o=/\\.l\\d+/.exec(l))?(r=parseInt(o[0].substr(2,o[0].length-2),10),columnCssRulesL[r]=i[t]):(o=/\\.r\\d+/.exec(l))&&(r=parseInt(o[0].substr(2,o[0].length-2),10),columnCssRulesR[r]=i[t])}}return{left:columnCssRulesL[e],right:columnCssRulesR[e]}}function removeCssRules(){$style.remove(),stylesheet=null}function destroy(){getEditorLock().cancelCurrentEdit(),trigger(self.onBeforeDestroy,{grid:self});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)}function trigger(e,t,n){return n=n||new Slick.EventData,(t=t||{}).grid=self,e.notify(t,n,self)}function getEditorLock(){return options.editorLock}function getEditController(){return editController}function getColumnIndex(e){return columnsById[e]}function autosizeColumns(){var e,t,n,o=[],r=0,i=0,l=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW;for(e=0;e<columns.length;e++)t=columns[e],o.push(t.width),i+=t.width,t.resizable&&(r+=t.width-Math.max(t.minWidth,absoluteColumnMinWidth));for(n=i;l<i&&r;){var s=(i-l)/r;for(e=0;e<columns.length&&l<i;e++){t=columns[e];var a=o[e];if(!(!t.resizable||a<=t.minWidth||a<=absoluteColumnMinWidth)){var c=Math.max(t.minWidth,absoluteColumnMinWidth),u=Math.floor(s*(a-c))||1;u=Math.min(u,a-c),i-=u,r-=u,o[e]-=u}}if(n<=i)break;n=i}for(n=i;i<l;){var d=l/i;for(e=0;e<columns.length&&i<l;e++){t=columns[e];var p,f=o[e];p=!t.resizable||t.maxWidth<=f?0:Math.min(Math.floor(d*f)-f,t.maxWidth-f||1e6)||1,i+=p,o[e]+=i<=l?p:0}if(i<=n)break;n=i}var h=!1;for(e=0;e<columns.length;e++)columns[e].rerenderOnResize&&columns[e].width!=o[e]&&(h=!0),columns[e].width=o[e];applyColumnHeaderWidths(),updateCanvasWidth(!0),h&&(invalidateAllRows(),render())}function applyColumnHeaderWidths(){if(initialized){for(var e,t=0,n=$headers.children(),o=columns.length;t<o;t++)e=$(n[t]),jQueryNewWidthBehaviour?e.outerWidth()!==columns[t].width&&e.outerWidth(columns[t].width):e.width()!==columns[t].width-headerColumnWidthDiff&&e.width(columns[t].width-headerColumnWidthDiff);updateColumnCaches()}}function applyColumnWidths(){for(var e,t,n=0,o=0;o<columns.length;o++)e=columns[o].width,(t=getColumnCssRules(o)).left.style.left=n+\"px\",t.right.style.right=canvasWidth-n-e+\"px\",n+=columns[o].width}function setSortColumn(e,t){setSortColumns([{columnId:e,sortAsc:t}])}function setSortColumns(e){sortColumns=e;var o=options.numberedMultiColumnSort&&1<sortColumns.length,r=$headers.children(),i=r.removeClass(\"slick-header-column-sorted\").find(\".\"+sortIndicatorCssClass).removeClass(\"slick-sort-indicator-asc slick-sort-indicator-desc\");o&&i.text(\"\"),$.each(sortColumns,function(e,t){null==t.sortAsc&&(t.sortAsc=!0);var n=getColumnIndex(t.columnId);null!=n&&(i=r.eq(n).addClass(\"slick-header-column-sorted\").find(\".\"+sortIndicatorCssClass).addClass(t.sortAsc?\"slick-sort-indicator-asc\":\"slick-sort-indicator-desc\"),o&&i.text(e+1))})}function getSortColumns(){return sortColumns}function handleSelectedRangesChanged(e,t){selectedRows=[];for(var n={},o=0;o<t.length;o++)for(var r=t[o].fromRow;r<=t[o].toRow;r++){n[r]||(selectedRows.push(r),n[r]={});for(var i=t[o].fromCell;i<=t[o].toCell;i++)canCellBeSelected(r,i)&&(n[r][columns[i].id]=options.selectedCellCssClass)}setCellCssStyles(options.selectedCellCssClass,n),trigger(self.onSelectedRowsChanged,{rows:getSelectedRows(),grid:self},e)}function getColumns(){return columns}function updateColumnCaches(){columnPosLeft=[],columnPosRight=[];for(var e=0,t=0,n=columns.length;t<n;t++)columnPosLeft[t]=e,columnPosRight[t]=e+columns[t].width,e+=columns[t].width}function setColumns(e){columns=e,columnsById={};for(var t=0;t<columns.length;t++){var n=columns[t]=$.extend({},columnDefaults,columns[t]);columnsById[n.id]=t,n.minWidth&&n.width<n.minWidth&&(n.width=n.minWidth),n.maxWidth&&n.width>n.maxWidth&&(n.width=n.maxWidth)}updateColumnCaches(),initialized&&(invalidateAllRows(),createColumnHeaders(),removeCssRules(),createCssRules(),resizeCanvas(),applyColumnWidths(),handleScroll())}function getOptions(){return options}function setOptions(e,t){getEditorLock().commitCurrentEdit()&&(makeActiveCellNormal(),options.enableAddRow!==e.enableAddRow&&invalidateRow(getDataLength()),options=$.extend(options,e),validateAndEnforceOptions(),$viewport.css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),t||render())}function validateAndEnforceOptions(){options.autoHeight&&(options.leaveSpaceForNewRows=!1)}function setData(e,t){data=e,invalidateAllRows(),updateRowCount(),t&&scrollTo(0)}function getData(){return data}function getDataLength(){return data.getLength?data.getLength():data.length}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){options.showTopPanel!=e&&((options.showTopPanel=e)?$topPanelScroller.slideDown(\"fast\",resizeCanvas):$topPanelScroller.slideUp(\"fast\",resizeCanvas))}function setHeaderRowVisibility(e){options.showHeaderRow!=e&&((options.showHeaderRow=e)?$headerRowScroller.slideDown(\"fast\",resizeCanvas):$headerRowScroller.slideUp(\"fast\",resizeCanvas))}function setFooterRowVisibility(e){options.showFooterRow!=e&&((options.showFooterRow=e)?$footerRowScroller.slideDown(\"fast\",resizeCanvas):$footerRowScroller.slideUp(\"fast\",resizeCanvas))}function setPreHeaderPanelVisibility(e){options.showPreHeaderPanel!=e&&((options.showPreHeaderPanel=e)?$preHeaderPanelScroller.slideDown(\"fast\",resizeCanvas):$preHeaderPanelScroller.slideUp(\"fast\",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-viewportH+(viewportHasHScroll?scrollbarDimensions.height:0));var t=offset;page=Math.min(n-1,Math.floor(e/ph)),offset=Math.round(page*cj);var o=e-offset;if(offset!=t){var r=getVisibleRange(o);cleanupRows(r),updateRowPositions()}prevScrollTop!=o&&(vScrollDir=prevScrollTop+t<o+offset?1:-1,$viewport[0].scrollTop=lastRenderedScrollTop=scrollTop=prevScrollTop=o,trigger(self.onViewportChanged,{grid:self}))}function defaultFormatter(e,t,n,o,r){return null==n?\"\":(n+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}function getFormatter(e,t){var n=data.getItemMetadata&&data.getItemMetadata(e),o=n&&n.columns&&(n.columns[t.id]||n.columns[getColumnIndex(t.id)]);return o&&o.formatter||n&&n.formatter||t.formatter||options.formatterFactory&&options.formatterFactory.getFormatter(t)||options.defaultFormatter}function getEditor(e,t){var n=columns[t],o=data.getItemMetadata&&data.getItemMetadata(e),r=o&&o.columns;return r&&r[n.id]&&void 0!==r[n.id].editor?r[n.id].editor:r&&r[t]&&void 0!==r[t].editor?r[t].editor:n.editor||options.editorFactory&&options.editorFactory.getEditor(n)}function getDataItemValueForColumn(e,t){return options.dataItemColumnValueExtractor?options.dataItemColumnValueExtractor(e,t):e[t.field]}function appendRowHtml(e,t,n,o){var r=getDataItem(t),i=t<o&&!r,l=\"slick-row\"+(i?\" loading\":\"\")+(t===activeRow?\" active\":\"\")+(t%2==1?\" odd\":\" even\");r||(l+=\" \"+options.addNewRowCssClass);var s,a,c=data.getItemMetadata&&data.getItemMetadata(t);c&&c.cssClasses&&(l+=\" \"+c.cssClasses),e.push(\"<div class='ui-widget-content \"+l+\"' style='top:\"+getRowTop(t)+\"px'>\");for(var u=0,d=columns.length;u<d;u++){if(a=columns[u],s=1,c&&c.columns){var p=c.columns[a.id]||c.columns[u];\"*\"===(s=p&&p.colspan||1)&&(s=d-u)}if(columnPosRight[Math.min(d-1,u+s-1)]>n.leftPx){if(columnPosLeft[u]>n.rightPx)break;appendCellHtml(e,t,u,s,r)}1<s&&(u+=s-1)}e.push(\"</div>\")}function appendCellHtml(e,t,n,o,r){var i=columns[n],l=\"slick-cell l\"+n+\" r\"+Math.min(columns.length-1,n+o-1)+(i.cssClass?\" \"+i.cssClass:\"\");for(var s in t===activeRow&&n===activeCell&&(l+=\" active\"),cellCssClasses)cellCssClasses[s][t]&&cellCssClasses[s][t][i.id]&&(l+=\" \"+cellCssClasses[s][t][i.id]);var a=null;r&&(a=getDataItemValueForColumn(r,i));var c=getFormatter(t,i)(t,n,a,i,r),u=trigger(self.onBeforeAppendCell,{row:t,cell:n,grid:self,value:a,dataContext:r})||\"\";u+=c.addClasses?(u?\" \":\"\")+c.addClasses:\"\",e.push(\"<div class='\"+l+(u?\" \"+u:\"\")+\"'>\"),r&&e.push(\"object\"!=typeof c?c:c.text),e.push(\"</div>\"),rowsCache[t].cellRenderQueue.push(n),rowsCache[t].cellColSpans[n]=o}function cleanupRows(e){for(var t in rowsCache)(t=parseInt(t,10))!==activeRow&&(t<e.top||t>e.bottom)&&removeRowFromCache(t);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,t,n){for(var o in postProcessgroupId++,t)t.hasOwnProperty(o)&&postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e.cellNodesByColumnIdx[0|o],columnIdx:0|o,rowIdx:n});postProcessedCleanupQueue.push({actionType:\"R\",groupId:postProcessgroupId,node:e.rowNode}),$(e.rowNode).detach()}function queuePostProcessedCellForCleanup(e,t,n){postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e,columnIdx:t,rowIdx:n}),$(e).detach()}function removeRowFromCache(e){var t=rowsCache[e];t&&(rowNodeFromLastMouseWheelEvent===t.rowNode?(t.rowNode.style.display=\"none\",zombieRowNodeFromLastMouseWheelEvent=rowNodeFromLastMouseWheelEvent,zombieRowCacheFromLastMouseWheelEvent=t,zombieRowPostProcessedFromLastMouseWheelEvent=postProcessedRows[e]):options.enableAsyncPostRenderCleanup&&postProcessedRows[e]?queuePostProcessedRowForCleanup(t,postProcessedRows[e],e):$canvas[0].removeChild(t.rowNode),delete rowsCache[e],delete postProcessedRows[e],renderedRows--,counter_rows_removed++)}function invalidateRows(e){var t,n;if(e&&e.length){for(vScrollDir=0,n=e.length,t=0;t<n;t++)currentEditor&&activeRow===e[t]&&makeActiveCellNormal(),rowsCache[e[t]]&&removeRowFromCache(e[t]);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}}function invalidateRow(e){invalidateRows([e])}function applyFormatResultToCellNode(e,t,n){\"object\"==typeof e?(t.innerHTML=e.text,e.removeClasses&&!n&&t.removeClass(e.removeClasses),e.addClasses&&t.addClass(e.addClasses)):t.innerHTML=e}function updateCell(e,t){var n=getCellNode(e,t);if(n){var o=columns[t],r=getDataItem(e);if(currentEditor&&activeRow===e&&activeCell===t)currentEditor.loadValue(r);else{var i=r?getFormatter(e,o)(e,t,getDataItemValueForColumn(r,o),o,r):\"\";applyFormatResultToCellNode(i,n),invalidatePostProcessingResults(e)}}}function updateRow(e){var t=rowsCache[e];if(t){ensureCellNodesInRowsCache(e);var n=getDataItem(e);for(var o in t.cellNodesByColumnIdx)if(t.cellNodesByColumnIdx.hasOwnProperty(o)){var r=columns[o|=0],i=t.cellNodesByColumnIdx[o];e===activeRow&&o===activeCell&&currentEditor?currentEditor.loadValue(n):n?applyFormatResultToCellNode(getFormatter(e,r)(e,o,getDataItemValueForColumn(n,r),r,n),i):i.innerHTML=\"\"}invalidatePostProcessingResults(e)}}function getViewportHeight(){return parseFloat($.css($container[0],\"height\",!0))-parseFloat($.css($container[0],\"paddingTop\",!0))-parseFloat($.css($container[0],\"paddingBottom\",!0))-parseFloat($.css($headerScroller[0],\"height\"))-getVBoxDelta($headerScroller)-(options.showTopPanel?options.topPanelHeight+getVBoxDelta($topPanelScroller):0)-(options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0)-(options.createFooterRow&&options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0)-(options.createPreHeaderPanel&&options.showPreHeaderPanel?options.preHeaderPanelHeight+getVBoxDelta($preHeaderPanelScroller):0)}function resizeCanvas(){initialized&&(viewportH=options.autoHeight?options.rowHeight*getDataLengthIncludingAddNew():getViewportHeight(),numVisibleRows=Math.ceil(viewportH/options.rowHeight),viewportW=parseFloat($.css($container[0],\"width\",!0)),options.autoHeight||$viewport.height(viewportH),options.forceFitColumns&&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(),t=getDataLengthIncludingAddNew(),o=t+(options.leaveSpaceForNewRows?numVisibleRows-1:0),r=viewportHasVScroll;viewportHasVScroll=!options.autoHeight&&o*options.rowHeight>viewportH,viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width,makeActiveCellNormal();var i=e-1;for(var l in rowsCache)i<l&&removeRowFromCache(l);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup(),activeCellNode&&i<activeRow&&resetActiveCell();var s=h;(th=Math.max(options.rowHeight*o,viewportH-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!==s&&($canvas.css(\"height\",h),scrollTop=$viewport[0].scrollTop);var a=scrollTop+offset<=th-viewportH;0==th||0==scrollTop?page=offset=0:scrollTo(a?scrollTop+offset:th-viewportH),h!=s&&options.autoHeight&&resizeCanvas(),options.forceFitColumns&&r!=viewportHasVScroll&&autosizeColumns(),updateCanvasWidth(!1)}}function getVisibleRange(e,t){return null==e&&(e=scrollTop),null==t&&(t=scrollLeft),{top:getRowFromPosition(e),bottom:getRowFromPosition(e+viewportH)+1,leftPx:t,rightPx:t+viewportW}}function getRenderedRange(e,t){var n=getVisibleRange(e,t),o=Math.round(viewportH/options.rowHeight);return-1==vScrollDir?(n.top-=o,n.bottom+=3):1==vScrollDir?(n.top-=3,n.bottom+=o):(n.top-=3,n.bottom+=3),n.top=Math.max(0,n.top),n.bottom=Math.min(getDataLengthIncludingAddNew()-1,n.bottom),n.leftPx-=viewportW,n.rightPx+=viewportW,n.leftPx=Math.max(0,n.leftPx),n.rightPx=Math.min(canvasWidth,n.rightPx),n}function ensureCellNodesInRowsCache(e){var t=rowsCache[e];if(t&&t.cellRenderQueue.length)for(var n=t.rowNode.lastChild;t.cellRenderQueue.length;){var o=t.cellRenderQueue.pop();n=(t.cellNodesByColumnIdx[o]=n).previousSibling}}function cleanUpCells(e,t){var n,o,r=rowsCache[t],i=[];for(var l in r.cellNodesByColumnIdx)if(r.cellNodesByColumnIdx.hasOwnProperty(l)){l|=0;var s=r.cellColSpans[l];(columnPosLeft[l]>e.rightPx||columnPosRight[Math.min(columns.length-1,l+s-1)]<e.leftPx)&&(t==activeRow&&l==activeCell||i.push(l))}for(postProcessgroupId++;null!=(n=i.pop());)o=r.cellNodesByColumnIdx[n],options.enableAsyncPostRenderCleanup&&postProcessedRows[t]&&postProcessedRows[t][n]?queuePostProcessedCellForCleanup(o,n,t):r.rowNode.removeChild(o),delete r.cellColSpans[n],delete r.cellNodesByColumnIdx[n],postProcessedRows[t]&&delete postProcessedRows[t][n],0}function cleanUpAndRenderCells(e){for(var t,n,o,r=[],i=[],l=e.top,s=e.bottom;l<=s;l++)if(t=rowsCache[l]){ensureCellNodesInRowsCache(l),cleanUpCells(e,l),n=0;var a=data.getItemMetadata&&data.getItemMetadata(l);a=a&&a.columns;for(var c=getDataItem(l),u=0,d=columns.length;u<d&&!(columnPosLeft[u]>e.rightPx);u++)if(null==(o=t.cellColSpans[u])){if(o=1,a){var p=a[columns[u].id]||a[u];\"*\"===(o=p&&p.colspan||1)&&(o=d-u)}columnPosRight[Math.min(d-1,u+o-1)]>e.leftPx&&(appendCellHtml(r,l,u,o,c),n++),u+=1<o?o-1:0}else u+=1<o?o-1:0;n&&(n,i.push(l))}if(r.length){var f,h,g=document.createElement(\"div\");for(g.innerHTML=r.join(\"\");null!=(f=i.pop());){var m;for(t=rowsCache[f];null!=(m=t.cellRenderQueue.pop());)h=g.lastChild,t.rowNode.appendChild(h),t.cellNodesByColumnIdx[m]=h}}}function renderRows(e){for(var t=$canvas[0],n=[],o=[],r=!1,i=getDataLength(),l=e.top,s=e.bottom;l<=s;l++)rowsCache[l]||(renderedRows++,o.push(l),rowsCache[l]={rowNode:null,cellColSpans:[],cellNodesByColumnIdx:[],cellRenderQueue:[]},appendRowHtml(n,l,e,i),activeCellNode&&activeRow===l&&(r=!0),counter_rows_rendered++);if(o.length){var a=document.createElement(\"div\");a.innerHTML=n.join(\"\");for(var l=0,s=o.length;l<s;l++)rowsCache[o[l]].rowNode=t.appendChild(a.firstChild);r&&(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 t in postProcessedRows[e])postProcessedRows[e].hasOwnProperty(t)&&(postProcessedRows[e][t]=\"C\");postProcessFromRow=Math.min(postProcessFromRow,e),postProcessToRow=Math.max(postProcessToRow,e),startPostProcessing()}function updateRowPositions(){for(var e in rowsCache)rowsCache[e].rowNode.style.top=getRowTop(e)+\"px\"}function render(){if(initialized){var e=getVisibleRange(),t=getRenderedRange();cleanupRows(t),lastRenderedScrollLeft!=scrollLeft&&cleanUpAndRenderCells(t),renderRows(t),postProcessFromRow=e.top,postProcessToRow=Math.min(getDataLengthIncludingAddNew()-1,e.bottom),startPostProcessing(),lastRenderedScrollTop=scrollTop,lastRenderedScrollLeft=scrollLeft,h_render=null}}function handleHeaderRowScroll(){var e=$headerRowScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handleFooterRowScroll(){var e=$footerRowScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handlePreHeaderPanelScroll(){var e=$preHeaderPanelScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handleScroll(){scrollTop=$viewport[0].scrollTop,scrollLeft=$viewport[0].scrollLeft;var e=Math.abs(scrollTop-prevScrollTop),t=Math.abs(scrollLeft-prevScrollLeft);if(t&&(prevScrollLeft=scrollLeft,$headerScroller[0].scrollLeft=scrollLeft,$topPanelScroller[0].scrollLeft=scrollLeft,$headerRowScroller[0].scrollLeft=scrollLeft,options.createFooterRow&&($footerRowScroller[0].scrollLeft=scrollLeft),options.createPreHeaderPanel&&($preHeaderPanelScroller[0].scrollLeft=scrollLeft)),e)if(vScrollDir=prevScrollTop<scrollTop?1:-1,prevScrollTop=scrollTop,e<viewportH)scrollTo(scrollTop+offset);else{var o=offset;page=h==viewportH?0:Math.min(n-1,Math.floor(scrollTop*((th-viewportH)/(h-viewportH))*(1/ph))),offset=Math.round(page*cj),o!=offset&&invalidateAllRows()}(t||e)&&(h_render&&clearTimeout(h_render),(20<Math.abs(lastRenderedScrollTop-scrollTop)||20<Math.abs(lastRenderedScrollLeft-scrollLeft))&&(options.forceSyncScrolling||Math.abs(lastRenderedScrollTop-scrollTop)<viewportH&&Math.abs(lastRenderedScrollLeft-scrollLeft)<viewportW?render():h_render=setTimeout(render,50),trigger(self.onViewportChanged,{grid:self}))),trigger(self.onScroll,{scrollLeft:scrollLeft,scrollTop:scrollTop,grid:self})}function asyncPostProcessRows(){for(var e=getDataLength();postProcessFromRow<=postProcessToRow;){var t=0<=vScrollDir?postProcessFromRow++:postProcessToRow--,n=rowsCache[t];if(n&&!(e<=t)){for(var o in postProcessedRows[t]||(postProcessedRows[t]={}),ensureCellNodesInRowsCache(t),n.cellNodesByColumnIdx)if(n.cellNodesByColumnIdx.hasOwnProperty(o)){var r=columns[o|=0],i=postProcessedRows[t][o];if(r.asyncPostRender&&\"R\"!==i){var l=n.cellNodesByColumnIdx[o];l&&r.asyncPostRender(l,t,getDataItem(t),r,\"C\"===i),postProcessedRows[t][o]=\"R\"}}return void(h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}}}function asyncPostProcessCleanupRows(){if(0<postProcessedCleanupQueue.length){for(var e=postProcessedCleanupQueue[0].groupId;0<postProcessedCleanupQueue.length&&postProcessedCleanupQueue[0].groupId==e;){var t=postProcessedCleanupQueue.shift();if(\"R\"==t.actionType&&$(t.node).remove(),\"C\"==t.actionType){var n=columns[t.columnIdx];n.asyncPostRenderCleanup&&t.node&&n.asyncPostRenderCleanup(t.node,t.rowIdx,n)}}h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay)}}function updateCellCssStylesOnRenderedRows(e,t){var n,o,r,i;for(var l in rowsCache){if(i=t&&t[l],r=e&&e[l],i)for(o in i)r&&i[o]==r[o]||(n=getCellNode(l,getColumnIndex(o)))&&$(n).removeClass(i[o]);if(r)for(o in r)i&&i[o]==r[o]||(n=getCellNode(l,getColumnIndex(o)))&&$(n).addClass(r[o])}}function addCellCssStyles(e,t){if(cellCssClasses[e])throw new Error(\"addCellCssStyles: cell CSS hash with key '\"+e+\"' already exists.\");updateCellCssStylesOnRenderedRows(cellCssClasses[e]=t,null),trigger(self.onCellCssStylesChanged,{key:e,hash:t,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,t){var n=cellCssClasses[e];updateCellCssStylesOnRenderedRows(cellCssClasses[e]=t,n),trigger(self.onCellCssStylesChanged,{key:e,hash:t,grid:self})}function getCellCssStyles(e){return cellCssClasses[e]}function flashCell(e,t,n){if(n=n||100,rowsCache[e]){var o=$(getCellNode(e,t)),r=function(e){e&&setTimeout(function(){o.queue(function(){o.toggleClass(options.cellFlashingCssClass).dequeue(),r(e-1)})},n)};r(4)}}function handleMouseWheel(e){var t=$(e.target).closest(\".slick-row\")[0];t!=rowNodeFromLastMouseWheelEvent&&(zombieRowNodeFromLastMouseWheelEvent&&zombieRowNodeFromLastMouseWheelEvent!=t&&(options.enableAsyncPostRenderCleanup&&zombieRowPostProcessedFromLastMouseWheelEvent?queuePostProcessedRowForCleanup(zombieRowCacheFromLastMouseWheelEvent,zombieRowPostProcessedFromLastMouseWheelEvent):$canvas[0].removeChild(zombieRowNodeFromLastMouseWheelEvent),zombieRowPostProcessedFromLastMouseWheelEvent=zombieRowCacheFromLastMouseWheelEvent=zombieRowNodeFromLastMouseWheelEvent=null,options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()),rowNodeFromLastMouseWheelEvent=t)}function handleDragInit(e,t){var n=getCellFromEvent(e);if(!n||!cellExists(n.row,n.cell))return!1;var o=trigger(self.onDragInit,t,e);return!!e.isImmediatePropagationStopped()&&o}function handleDragStart(e,t){var n=getCellFromEvent(e);if(!n||!cellExists(n.row,n.cell))return!1;var o=trigger(self.onDragStart,t,e);return!!e.isImmediatePropagationStopped()&&o}function handleDrag(e,t){return trigger(self.onDrag,t,e)}function handleDragEnd(e,t){trigger(self.onDragEnd,t,e)}function handleKeyDown(e){trigger(self.onKeyDown,{row:activeRow,cell:activeCell,grid:self},e);var t=e.isImmediatePropagationStopped(),n=Slick.keyCode;if(!t)if(e.shiftKey||e.altKey||e.ctrlKey)e.which!=n.TAB||!e.shiftKey||e.ctrlKey||e.altKey||(t=navigatePrev());else{if(options.editable&&currentEditor&&currentEditor.keyCaptureList&&-1<currentEditor.keyCaptureList.indexOf(e.which))return;if(e.which==n.ESCAPE){if(!getEditorLock().isActive())return;cancelEditAndSetFocus()}else e.which==n.PAGE_DOWN?(navigatePageDown(),t=!0):e.which==n.PAGE_UP?(navigatePageUp(),t=!0):e.which==n.LEFT?t=navigateLeft():e.which==n.RIGHT?t=navigateRight():e.which==n.UP?t=navigateUp():e.which==n.DOWN?t=navigateDown():e.which==n.TAB?t=navigateNext():e.which==n.ENTER&&(options.editable&&(currentEditor?activeRow===getDataLength()?navigateDown():commitEditAndSetFocus():getEditorLock().commitCurrentEdit()&&makeActiveCellEditable()),t=!0)}if(t){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 t=getCellFromEvent(e);if(t&&(null===currentEditor||activeRow!=t.row||activeCell!=t.cell)&&(trigger(self.onClick,{row:t.row,cell:t.cell,grid:self},e),!e.isImmediatePropagationStopped()&&canCellBeActive(t.row,t.cell)&&(!getEditorLock().isActive()||getEditorLock().commitCurrentEdit()))){scrollRowIntoView(t.row,!1);var n=e.target&&e.target.className===Slick.preClickClassName;setActiveCellInternal(getCellNode(t.row,t.cell),null,n)}}function handleContextMenu(e){var t=$(e.target).closest(\".slick-cell\",$canvas);0!==t.length&&(activeCellNode===t[0]&&null!==currentEditor||trigger(self.onContextMenu,{grid:self},e))}function handleDblClick(e){var t=getCellFromEvent(e);!t||null!==currentEditor&&activeRow==t.row&&activeCell==t.cell||(trigger(self.onDblClick,{row:t.row,cell:t.cell,grid:self},e),e.isImmediatePropagationStopped()||options.editable&&gotoCell(t.row,t.cell,!0))}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 t=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),n=t&&t.data(\"column\");trigger(self.onHeaderContextMenu,{column:n,grid:self},e)}function handleHeaderClick(e){var t=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),n=t&&t.data(\"column\");n&&trigger(self.onHeaderClick,{column:n,grid:self},e)}function handleMouseEnter(e){trigger(self.onMouseEnter,{grid:self},e)}function handleMouseLeave(e){trigger(self.onMouseLeave,{grid:self},e)}function cellExists(e,t){return!(e<0||e>=getDataLength()||t<0||t>=columns.length)}function getCellFromPoint(e,t){for(var n=getRowFromPosition(t),o=0,r=0,i=0;i<columns.length&&r<e;i++)r+=columns[i].width,o++;return o<0&&(o=0),{row:n,cell:o-1}}function getCellFromNode(e){var t=/l\\d+/.exec(e.className);if(!t)throw new Error(\"getCellFromNode: cannot get cell - \"+e.className);return parseInt(t[0].substr(1,t[0].length-1),10)}function getRowFromNode(e){for(var t in rowsCache)if(rowsCache[t].rowNode===e)return 0|t;return null}function getCellFromEvent(e){var t=$(e.target).closest(\".slick-cell\",$canvas);if(!t.length)return null;var n=getRowFromNode(t[0].parentNode),o=getCellFromNode(t[0]);return null==n||null==o?null:{row:n,cell:o}}function getCellNodeBox(e,t){if(!cellExists(e,t))return null;for(var n=getRowTop(e),o=n+options.rowHeight-1,r=0,i=0;i<t;i++)r+=columns[i].width;var l=r+columns[t].width;return{top:n,left:r,bottom:o,right:l}}function resetActiveCell(){setActiveCellInternal(null,!1)}function setFocus(){-1==tabbingDirection?$focusSink[0].focus():$focusSink2[0].focus()}function scrollCellIntoView(e,t,n){scrollRowIntoView(e,n);var o=getColspan(e,t);internalScrollColumnIntoView(columnPosLeft[t],columnPosRight[t+(1<o?o-1:0)])}function internalScrollColumnIntoView(e,t){var n=scrollLeft+viewportW;e<scrollLeft?($viewport.scrollLeft(e),handleScroll(),render()):n<t&&($viewport.scrollLeft(Math.min(e,t-$viewport[0].clientWidth)),handleScroll(),render())}function scrollColumnIntoView(e){internalScrollColumnIntoView(columnPosLeft[e],columnPosRight[e])}function setActiveCellInternal(e,t,n,o){null!==activeCellNode&&(makeActiveCellNormal(),$(activeCellNode).removeClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).removeClass(\"active\"));null!=(activeCellNode=e)?(activeRow=getRowFromNode(activeCellNode.parentNode),activeCell=activePosX=getCellFromNode(activeCellNode),null==t&&(t=activeRow==getDataLength()||options.autoEdit),options.showCellSelection&&($(activeCellNode).addClass(\"active\"),$(rowsCache[activeRow].rowNode).addClass(\"active\")),options.editable&&t&&isCellPotentiallyEditable(activeRow,activeCell)&&(clearTimeout(h_editorLoader),options.asyncEditorLoading?h_editorLoader=setTimeout(function(){makeActiveCellEditable(void 0,n)},options.asyncEditorLoadDelay):makeActiveCellEditable(void 0,n))):activeRow=activeCell=null,o||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,t){var n=getDataLength();return!(e<n&&!getDataItem(e))&&(!(columns[t].cannotTriggerInsert&&n<=e)&&!!getEditor(e,t))}function makeActiveCellNormal(){if(currentEditor){if(trigger(self.onBeforeCellEditorDestroy,{editor:currentEditor,grid:self}),currentEditor.destroy(),currentEditor=null,activeCellNode){var e=getDataItem(activeRow);if($(activeCellNode).removeClass(\"editable invalid\"),e){var t=columns[activeCell],n=getFormatter(activeRow,t),o=n(activeRow,activeCell,getDataItemValueForColumn(e,t),t,e,self);applyFormatResultToCellNode(o,activeCellNode),invalidatePostProcessingResults(activeRow)}}navigator.userAgent.toLowerCase().match(/msie/)&&clearTextSelection(),getEditorLock().deactivate(editController)}}function makeActiveCellEditable(e,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],o=getDataItem(activeRow);if(!1!==trigger(self.onBeforeEditCell,{row:activeRow,cell:activeCell,item:o,column:n,grid:self})){getEditorLock().activate(editController),$(activeCellNode).addClass(\"editable\");var r=e||getEditor(activeRow,activeCell);e||r.suppressClearOnEdit||(activeCellNode.innerHTML=\"\"),currentEditor=new r({grid:self,gridPosition:absBox($container[0]),position:absBox(activeCellNode),container:activeCellNode,column:n,item:o||{},commitChanges:commitEditAndSetFocus,cancelChanges:cancelEditAndSetFocus}),o&&(currentEditor.loadValue(o),t&&currentEditor.preClick&&currentEditor.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 t={top:e.offsetTop,left:e.offsetLeft,bottom:0,right:0,width:$(e).outerWidth(),height:$(e).outerHeight(),visible:!0};t.bottom=t.top+t.height,t.right=t.left+t.width;for(var n=e.offsetParent;(e=e.parentNode)!=document.body&&null!=e;)t.visible&&e.scrollHeight!=e.offsetHeight&&\"visible\"!=$(e).css(\"overflowY\")&&(t.visible=t.bottom>e.scrollTop&&t.top<e.scrollTop+e.clientHeight),t.visible&&e.scrollWidth!=e.offsetWidth&&\"visible\"!=$(e).css(\"overflowX\")&&(t.visible=t.right>e.scrollLeft&&t.left<e.scrollLeft+e.clientWidth),t.left-=e.scrollLeft,t.top-=e.scrollTop,e===n&&(t.left+=e.offsetLeft,t.top+=e.offsetTop,n=e.offsetParent),t.bottom=t.top+t.height,t.right=t.left+t.width;return t}function getActiveCellPosition(){return absBox(activeCellNode)}function getGridPosition(){return absBox($container[0])}function handleActiveCellPositionChange(){if(activeCellNode&&(trigger(self.onActiveCellPositionChanged,{grid:self}),currentEditor)){var e=getActiveCellPosition();currentEditor.show&&currentEditor.hide&&(e.visible?currentEditor.show():currentEditor.hide()),currentEditor.position&&currentEditor.position(e)}}function getCellEditor(){return currentEditor}function getActiveCell(){return activeCellNode?{row:activeRow,cell:activeCell,grid:self}:null}function getActiveCellNode(){return activeCellNode}function scrollRowIntoView(e,t){var n=e*options.rowHeight,o=(e+1)*options.rowHeight-viewportH+(viewportHasHScroll?scrollbarDimensions.height:0);(e+1)*options.rowHeight>scrollTop+viewportH+offset?(scrollTo(t?n:o),render()):e*options.rowHeight<scrollTop+offset&&(scrollTo(t?o:n),render())}function scrollRowToTop(e){scrollTo(e*options.rowHeight),render()}function scrollPage(e){var t=e*numVisibleRows;if(scrollTo((getRowFromPosition(scrollTop)+t)*options.rowHeight),render(),options.enableCellNavigation&&null!=activeRow){var n=activeRow+t,o=getDataLengthIncludingAddNew();o<=n&&(n=o-1),n<0&&(n=0);for(var r=0,i=null,l=activePosX;r<=activePosX;)canCellBeActive(n,r)&&(i=r),r+=getColspan(n,r);null!==i?(setActiveCellInternal(getCellNode(n,i)),activePosX=l):resetActiveCell()}}function navigatePageDown(){scrollPage(1)}function navigatePageUp(){scrollPage(-1)}function getColspan(e,t){var n=data.getItemMetadata&&data.getItemMetadata(e);if(!n||!n.columns)return 1;var o=n.columns[columns[t].id]||n.columns[t],r=o&&o.colspan;return r=\"*\"===r?columns.length-t:r||1}function findFirstFocusableCell(e){for(var t=0;t<columns.length;){if(canCellBeActive(e,t))return t;t+=getColspan(e,t)}return null}function findLastFocusableCell(e){for(var t=0,n=null;t<columns.length;)canCellBeActive(e,t)&&(n=t),t+=getColspan(e,t);return n}function gotoRight(e,t,n){if(t>=columns.length)return null;for(;(t+=getColspan(e,t))<columns.length&&!canCellBeActive(e,t););return t<columns.length?{row:e,cell:t,posX:t}:null}function gotoLeft(e,t,n){if(t<=0)return null;var o=findFirstFocusableCell(e);if(null===o||t<=o)return null;for(var r,i={row:e,cell:o,posX:o};;){if(!(r=gotoRight(i.row,i.cell,i.posX)))return null;if(r.cell>=t)return i;i=r}}function gotoDown(e,t,n){for(var o,r=getDataLengthIncludingAddNew();;){if(++e>=r)return null;for(o=t=0;t<=n;)t+=getColspan(e,o=t);if(canCellBeActive(e,o))return{row:e,cell:o,posX:n}}}function gotoUp(e,t,n){for(var o;;){if(--e<0)return null;for(o=t=0;t<=n;)t+=getColspan(e,o=t);if(canCellBeActive(e,o))return{row:e,cell:o,posX:n}}}function gotoNext(e,t,n){if(null==e&&null==t&&canCellBeActive(e=t=n=0,t))return{row:e,cell:t,posX:t};var o=gotoRight(e,t,n);if(o)return o;var r=null,i=getDataLengthIncludingAddNew();for(e===i-1&&e--;++e<i;)if(null!==(r=findFirstFocusableCell(e)))return{row:e,cell:r,posX:r};return null}function gotoPrev(e,t,n){if(null==e&&null==t&&(e=getDataLengthIncludingAddNew()-1,t=n=columns.length-1,canCellBeActive(e,t)))return{row:e,cell:t,posX:t};for(var o,r;!o&&!(o=gotoLeft(e,t,n));){if(--e<0)return null;t=0,null!==(r=findLastFocusableCell(e))&&(o={row:e,cell:r,posX:r})}return o}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 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}[e];var t={up:gotoUp,down:gotoDown,left:gotoLeft,right:gotoRight,prev:gotoPrev,next:gotoNext},n=t[e],o=n(activeRow,activeCell,activePosX);if(o){var r=o.row==getDataLength();return scrollCellIntoView(o.row,o.cell,!r),setActiveCellInternal(getCellNode(o.row,o.cell)),activePosX=o.posX,!0}return setActiveCellInternal(getCellNode(activeRow,activeCell)),!1}function getCellNode(e,t){return rowsCache[e]?(ensureCellNodesInRowsCache(e),rowsCache[e].cellNodesByColumnIdx[t]):null}function setActiveCell(e,t,n,o,r){initialized&&(e>getDataLength()||e<0||t>=columns.length||t<0||options.enableCellNavigation&&(scrollCellIntoView(e,t,!1),setActiveCellInternal(getCellNode(e,t),n,o,r)))}function canCellBeActive(e,t){if(!options.enableCellNavigation||e>=getDataLengthIncludingAddNew()||e<0||t>=columns.length||t<0)return!1;var n=data.getItemMetadata&&data.getItemMetadata(e);if(n&&\"boolean\"==typeof n.focusable)return n.focusable;var o=n&&n.columns;return o&&o[columns[t].id]&&\"boolean\"==typeof o[columns[t].id].focusable?o[columns[t].id].focusable:o&&o[t]&&\"boolean\"==typeof o[t].focusable?o[t].focusable:columns[t].focusable}function canCellBeSelected(e,t){if(e>=getDataLength()||e<0||t>=columns.length||t<0)return!1;var n=data.getItemMetadata&&data.getItemMetadata(e);if(n&&\"boolean\"==typeof n.selectable)return n.selectable;var o=n&&n.columns&&(n.columns[columns[t].id]||n.columns[t]);return o&&\"boolean\"==typeof o.selectable?o.selectable:columns[t].selectable}function gotoCell(e,t,n){if(initialized&&canCellBeActive(e,t)&&getEditorLock().commitCurrentEdit()){scrollCellIntoView(e,t,!1);var o=getCellNode(e,t);setActiveCellInternal(o,n||e===getDataLength()||options.autoEdit),currentEditor||setFocus()}}function commitCurrentEdit(){var e=getDataItem(activeRow),t=columns[activeCell];if(currentEditor){if(currentEditor.isValueChanged()){var n=currentEditor.validate();if(n.valid){if(activeRow<getDataLength()){var o={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:activeRow,cell:activeCell,item:e,grid:self})},undo:function(){this.editor.applyValue(e,this.prevSerializedValue),updateRow(this.row),trigger(self.onCellChange,{row:activeRow,cell:activeCell,item:e,grid:self})}};options.editCommandHandler?(makeActiveCellNormal(),options.editCommandHandler(e,t,o)):(o.execute(),makeActiveCellNormal())}else{var r={};currentEditor.applyValue(r,currentEditor.serializeValue()),makeActiveCellNormal(),trigger(self.onAddNewRow,{item:r,column:t,grid:self})}return!getEditorLock().isActive()}return $(activeCellNode).removeClass(\"invalid\"),$(activeCellNode).width(),$(activeCellNode).addClass(\"invalid\"),trigger(self.onValidationError,{editor:currentEditor,cellNode:activeCellNode,validationResults:n,row:activeRow,cell:activeCell,column:t,grid:self}),currentEditor.focus(),!1}makeActiveCellNormal()}return!0}function cancelCurrentEdit(){return makeActiveCellNormal(),!0}function rowsToRanges(e){for(var t=[],n=columns.length-1,o=0;o<e.length;o++)t.push(new Slick.Range(e[o],0,e[o],n));return t}function getSelectedRows(){if(!selectionModel)throw new Error(\"Selection model is not set\");return selectedRows}function setSelectedRows(e){if(!selectionModel)throw new Error(\"Selection model is not set\");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.3.4\",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,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,onColumnsResized: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,registerPlugin:registerPlugin,unregisterPlugin:unregisterPlugin,getColumns:getColumns,setColumns:setColumns,getColumnIndex:getColumnIndex,updateColumnHeader:updateColumnHeader,setSortColumn:setSortColumn,setSortColumns:setSortColumns,getSortColumns:getSortColumns,autosizeColumns:autosizeColumns,getOptions:getOptions,setOptions:setOptions,getData:getData,getDataLength:getDataLength,getDataItem:getDataItem,setData:setData,getSelectionModel:getSelectionModel,setSelectionModel:setSelectionModel,getSelectedRows:getSelectedRows,setSelectedRows:setSelectedRows,getContainerNode:getContainerNode,updatePagingStatusFromView:updatePagingStatusFromView,render:render,invalidate:invalidate,invalidateRow:invalidateRow,invalidateRows:invalidateRows,invalidateAllRows:invalidateAllRows,updateCell:updateCell,updateRow:updateRow,getViewport:getVisibleRange,getRenderedRange:getRenderedRange,resizeCanvas:resizeCanvas,updateRowCount:updateRowCount,scrollRowIntoView:scrollRowIntoView,scrollRowToTop:scrollRowToTop,scrollCellIntoView:scrollCellIntoView,scrollColumnIntoView:scrollColumnIntoView,getCanvasNode:getCanvasNode,getUID:getUID,getHeaderColumnWidthDiff:getHeaderColumnWidthDiff,getScrollbarDimensions:getScrollbarDimensions,getHeadersWidth:getHeadersWidth,getCanvasWidth:getCanvasWidth,focus:setFocus,getCellFromPoint:getCellFromPoint,getCellFromEvent:getCellFromEvent,getActiveCell:getActiveCell,setActiveCell:setActiveCell,getActiveCellNode:getActiveCellNode,getActiveCellPosition:getActiveCellPosition,resetActiveCell:resetActiveCell,editActiveCell:makeActiveCellEditable,getCellEditor:getCellEditor,getCellNode:getCellNode,getCellNodeBox:getCellNodeBox,canCellBeSelected:canCellBeSelected,canCellBeActive:canCellBeActive,navigatePrev:navigatePrev,navigateNext:navigateNext,navigateUp:navigateUp,navigateDown:navigateDown,navigateLeft:navigateLeft,navigateRight:navigateRight,navigatePageUp:navigatePageUp,navigatePageDown:navigatePageDown,gotoCell:gotoCell,getTopPanel:getTopPanel,setTopPanelVisibility:setTopPanelVisibility,getPreHeaderPanel:getPreHeaderPanel,setPreHeaderPanelVisibility:setPreHeaderPanelVisibility,setHeaderRowVisibility:setHeaderRowVisibility,getHeaderRow:getHeaderRow,getHeaderRowColumn:getHeaderRowColumn,setFooterRowVisibility:setFooterRowVisibility,getFooterRow:getFooterRow,getFooterRowColumn:getFooterRowColumn,getGridPosition:getGridPosition,flashCell:flashCell,addCellCssStyles:addCellCssStyles,setCellCssStyles:setCellCssStyles,removeCellCssStyles:removeCellCssStyles,getCellCssStyles:getCellCssStyles,init:finishInitialization,destroy:destroy,getEditorLock:getEditorLock,getEditController:getEditController}),init()}module.exports={Grid:SlickGrid}},448:function(e,t,n){t.exports=\"undefined\"!=typeof $?$:e(441)},449:function(e,t,n){var o=e(450),r=o.template;function i(e,t,n){return r(e,t,n)}i._=o,t.exports=i,\"function\"==typeof define&&define.amd?define(function(){return i}):\"undefined\"==typeof window&&\"undefined\"==typeof navigator||(window.UnderscoreTemplate=i)},450:function(e,t,n){\n",
548
+       "      //     (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n",
549
+       "      //     Underscore may be freely distributed under the MIT license.\n",
550
+       "      var l={},o=Array.prototype,r=Object.prototype,i=o.slice,s=r.toString,a=r.hasOwnProperty,c=o.forEach,u=Object.keys,d=Array.isArray,p=function(){},f=p.each=p.forEach=function(e,t,n){if(null!=e)if(c&&e.forEach===c)e.forEach(t,n);else if(e.length===+e.length){for(var o=0,r=e.length;o<r;o++)if(t.call(n,e[o],o,e)===l)return}else for(var i=p.keys(e),o=0,r=i.length;o<r;o++)if(t.call(n,e[i[o]],i[o],e)===l)return};p.keys=u||function(e){if(e!==Object(e))throw new TypeError(\"Invalid object\");var t=[];for(var n in e)p.has(e,n)&&t.push(n);return t},p.defaults=function(n){return f(i.call(arguments,1),function(e){if(e)for(var t in e)void 0===n[t]&&(n[t]=e[t])}),n},p.isArray=d||function(e){return\"[object Array]\"===s.call(e)},p.has=function(e,t){if(!p.isArray(t))return null!=e&&a.call(e,t);for(var n=t.length,o=0;o<n;o++){var r=t[o];if(null==e||!a.call(e,r))return!1;e=e[r]}return!!n};var h={escape:{\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#x27;\"}},g={escape:new RegExp(\"[\"+p.keys(h.escape).join(\"\")+\"]\",\"g\")};p.each([\"escape\"],function(t){p[t]=function(e){return null==e?\"\":(\"\"+e).replace(g[t],function(e){return h[t][e]})}}),p.templateSettings={evaluate:/<%([\\s\\S]+?)%>/g,interpolate:/<%=([\\s\\S]+?)%>/g,escape:/<%-([\\s\\S]+?)%>/g};var m=/(.)^/,v={\"'\":\"'\",\"\\\\\":\"\\\\\",\"\\r\":\"r\",\"\\n\":\"n\",\"\\t\":\"t\",\"\\u2028\":\"u2028\",\"\\u2029\":\"u2029\"},w=/\\\\|'|\\r|\\n|\\t|\\u2028|\\u2029/g;p.template=function(i,e,t){var n;t=p.defaults({},t,p.templateSettings);var o=new RegExp([(t.escape||m).source,(t.interpolate||m).source,(t.evaluate||m).source].join(\"|\")+\"|$\",\"g\"),l=0,s=\"__p+='\";i.replace(o,function(e,t,n,o,r){return s+=i.slice(l,r).replace(w,function(e){return\"\\\\\"+v[e]}),t&&(s+=\"'+\\n((__t=(\"+t+\"))==null?'':_.escape(__t))+\\n'\"),n&&(s+=\"'+\\n((__t=(\"+n+\"))==null?'':__t)+\\n'\"),o&&(s+=\"';\\n\"+o+\"\\n__p+='\"),l=r+e.length,e}),s+=\"';\\n\",t.variable||(s=\"with(obj||{}){\\n\"+s+\"}\\n\"),s=\"var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\\n\"+s+\"return __p;\\n\";try{n=new Function(t.variable||\"obj\",\"_\",s)}catch(e){throw e.source=s,e}if(e)return n(e,p);var r=function(e){return n.call(this,e,p)};return r.source=\"function(\"+(t.variable||\"obj\")+\"){\\n\"+s+\"}\",r},t.exports=p}},0,0)}(a.Bokeh)}(this);\n",
551
+       "      //# sourceMappingURL=bokeh-tables.min.js.map\n",
552
+       "      /* END bokeh-tables.min.js */\n",
553
+       "    },\n",
554
+       "    \n",
555
+       "    function(Bokeh) {\n",
556
+       "      /* BEGIN bokeh-gl.min.js */\n",
557
+       "      /*!\n",
558
+       "       * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n",
559
+       "       * All rights reserved.\n",
560
+       "       * \n",
561
+       "       * Redistribution and use in source and binary forms, with or without modification,\n",
562
+       "       * are permitted provided that the following conditions are met:\n",
563
+       "       * \n",
564
+       "       * Redistributions of source code must retain the above copyright notice,\n",
565
+       "       * this list of conditions and the following disclaimer.\n",
566
+       "       * \n",
567
+       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
568
+       "       * this list of conditions and the following disclaimer in the documentation\n",
569
+       "       * and/or other materials provided with the distribution.\n",
570
+       "       * \n",
571
+       "       * Neither the name of Anaconda nor the names of any contributors\n",
572
+       "       * may be used to endorse or promote products derived from this software\n",
573
+       "       * without specific prior written permission.\n",
574
+       "       * \n",
575
+       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
576
+       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
577
+       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
578
+       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
579
+       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
580
+       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
581
+       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
582
+       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
583
+       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
584
+       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
585
+       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
586
+       "       */\n",
587
+       "      !function(t,e){var a;a=t.Bokeh,function(t,e,n){if(null!=a)return a.register_plugin(t,{\"models/glyphs/webgl/base\":451,\"models/glyphs/webgl/index\":452,\"models/glyphs/webgl/line.frag\":453,\"models/glyphs/webgl/line\":454,\"models/glyphs/webgl/line.vert\":455,\"models/glyphs/webgl/main\":456,\"models/glyphs/webgl/markers.frag\":457,\"models/glyphs/webgl/markers\":458,\"models/glyphs/webgl/markers.vert\":459},456);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")}({451:function(t,e,n){var g=t(27),y=t(14),a=function(){function t(t,e){this.gl=t,this.glyph=e,this.nvertices=0,this.size_changed=!1,this.data_changed=!1,this.visuals_changed=!1,this.init()}return t.prototype.set_data_changed=function(t){t!=this.nvertices&&(this.nvertices=t,this.size_changed=!0),this.data_changed=!0},t.prototype.set_visuals_changed=function(){this.visuals_changed=!0},t.prototype.render=function(t,e,n){var a,s=[0,1,2],i=s[0],r=s[1],o=s[2],l=1,_=1,h=this.glyph.renderer.map_to_screen([i*l,r*l,o*l],[i*_,r*_,o*_]),c=h[0],f=h[1];if(isNaN(c[0]+c[1]+c[2]+f[0]+f[1]+f[2]))return y.logger.warn(\"WebGL backend (\"+this.glyph.model.type+\"): falling back to canvas rendering\"),!1;if(l=100/Math.min(Math.max(Math.abs(c[1]-c[0]),1e-12),1e12),_=100/Math.min(Math.max(Math.abs(f[1]-f[0]),1e-12),1e12),a=this.glyph.renderer.map_to_screen([i*l,r*l,o*l],[i*_,r*_,o*_]),c=a[0],f=a[1],1e-6<Math.abs(c[1]-c[0]-(c[2]-c[1]))||1e-6<Math.abs(f[1]-f[0]-(f[2]-f[1])))return y.logger.warn(\"WebGL backend (\"+this.glyph.model.type+\"): falling back to canvas rendering\"),!1;var d=[(c[1]-c[0])/l,(f[1]-f[0])/_],u=d[0],g=d[1],p=this.glyph.renderer.plot_view.gl.canvas,v=p.width,m=p.height,x={pixel_ratio:this.glyph.renderer.plot_view.canvas.pixel_ratio,width:v,height:m,dx:c[0]/u,dy:f[0]/g,sx:u,sy:g};return this.draw(e,n,x),!0},t}();function p(t,e){for(var n=new Float32Array(t),a=0,s=t;a<s;a++)n[a]=e;return n}function v(t,e){return void 0!==t[e].spec.value}n.BaseGLGlyph=a,n.line_width=function(t){return t<2&&(t=Math.sqrt(2*t)),t},n.fill_array_with_float=p,n.fill_array_with_vec=function(t,e,n){for(var a=new Float32Array(t*e),s=0;s<t;s++)for(var i=0;i<e;i++)a[s*e+i]=n[i];return a},n.visual_prop_is_singular=v,n.attach_float=function(t,e,n,a,s,i){if(s.doit)if(v(s,i))e.used=!1,t.set_attribute(n,\"float\",s[i].value());else{e.used=!0;var r=new Float32Array(s.cache[i+\"_array\"]);e.set_size(4*a),e.set_data(0,r),t.set_attribute(n,\"float\",e)}else e.used=!1,t.set_attribute(n,\"float\",[0])},n.attach_color=function(t,e,n,a,s,i){var r,o=i+\"_color\",l=i+\"_alpha\";if(s.doit)if(v(s,o)&&v(s,l))e.used=!1,r=g.color2rgba(s[o].value(),s[l].value()),t.set_attribute(n,\"vec4\",r);else{var _=void 0,h=void 0;e.used=!0,h=v(s,o)?function(){for(var t=[],e=0,n=a;e<n;e++)t.push(s[o].value());return t}():s.cache[o+\"_array\"],_=v(s,l)?p(a,s[l].value()):s.cache[l+\"_array\"];for(var c=new Float32Array(4*a),f=0,d=a;f<d;f++){r=g.color2rgba(h[f],_[f]);for(var u=0;u<4;u++)c[4*f+u]=r[u]}e.set_size(4*a*4),e.set_data(0,c),t.set_attribute(n,\"vec4\",e)}else e.used=!1,t.set_attribute(n,\"vec4\",[0,0,0,0])}},452:function(t,e,n){var a=t(391);a.__exportStar(t(454),n),a.__exportStar(t(458),n)},453:function(t,e,n){n.fragment_shader=\"\\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\"},454:function(t,e,n){var a=t(391),s=t(460),i=t(451),r=t(455),o=t(453),l=t(27),_=function(){function t(t){this._atlas={},this._index=0,this._width=256,this._height=256,this.tex=new s.Texture2D(t),this.tex.set_wrapping(t.REPEAT,t.REPEAT),this.tex.set_interpolation(t.NEAREST,t.NEAREST),this.tex.set_size([this._height,this._width],t.RGBA),this.tex.set_data([0,0],[this._height,this._width],new Uint8Array(this._height*this._width*4)),this.get_atlas_data([1])}return t.prototype.get_atlas_data=function(t){var e=t.join(\"-\"),n=this._atlas[e];if(void 0===n){var a=this.make_pattern(t),s=a[0],i=a[1];this.tex.set_data([this._index,0],[1,this._width],new Uint8Array(s.map(function(t){return t+10}))),this._atlas[e]=[this._index/this._height,i],this._index+=1}return this._atlas[e]},t.prototype.make_pattern=function(t){1<t.length&&t.length%2&&(t=t.concat(t));for(var e=0,n=0,a=t;n<a.length;n++){var s=a[n];e+=s}for(var i=[],r=0,o=0,l=t.length+2;o<l;o+=2){var _=Math.max(1e-4,t[o%t.length]),h=Math.max(1e-4,t[(o+1)%t.length]);i.push(r,r+_),r+=_+h}for(var c=this._width,f=new Float32Array(4*c),o=0,l=c;o<l;o++){for(var d=void 0,u=void 0,g=void 0,p=e*o/(c-1),v=0,m=1e16,x=0,y=i.length;x<y;x++){var b=Math.abs(i[x]-p);b<m&&(v=x,m=b)}v%2==0?(g=p<=i[v]?1:0,u=i[v],d=i[v+1]):(g=p>i[v]?-1:0,u=i[v-1],d=i[v]),f[4*o+0]=i[v],f[4*o+1]=g,f[4*o+2]=u,f[4*o+3]=d}return[f,e]},t}(),h={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},f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),e.prototype.init=function(){var t=this.gl;this._scale_aspect=0;var e=r.vertex_shader,n=o.fragment_shader;this.prog=new s.Program(t),this.prog.set_shaders(e,n),this.index_buffer=new s.IndexBuffer(t),this.vbo_position=new s.VertexBuffer(t),this.vbo_tangents=new s.VertexBuffer(t),this.vbo_segment=new s.VertexBuffer(t),this.vbo_angles=new s.VertexBuffer(t),this.vbo_texcoord=new s.VertexBuffer(t),this.dash_atlas=new _(t)},e.prototype.draw=function(t,e,n){var a=e.glglyph;if(a.data_changed){if(!isFinite(n.dx)||!isFinite(n.dy))return;a._baked_offset=[n.dx,n.dy],a._set_data(),a.data_changed=!1}this.visuals_changed&&(this._set_visuals(),this.visuals_changed=!1);var s=n.sx,i=n.sy,r=Math.sqrt(s*s+i*i);s/=r,i/=r,Math.abs(this._scale_aspect-i/s)>Math.abs(.001*this._scale_aspect)&&(a._update_scale(s,i),this._scale_aspect=i/s),this.prog.set_attribute(\"a_position\",\"vec2\",a.vbo_position),this.prog.set_attribute(\"a_tangents\",\"vec4\",a.vbo_tangents),this.prog.set_attribute(\"a_segment\",\"vec2\",a.vbo_segment),this.prog.set_attribute(\"a_angles\",\"vec2\",a.vbo_angles),this.prog.set_attribute(\"a_texcoord\",\"vec2\",a.vbo_texcoord),this.prog.set_uniform(\"u_length\",\"float\",[a.cumsum]),this.prog.set_texture(\"u_dash_atlas\",this.dash_atlas.tex);var o=a._baked_offset;if(this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[n.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[n.width,n.height]),this.prog.set_uniform(\"u_offset\",\"vec2\",[n.dx-o[0],n.dy-o[1]]),this.prog.set_uniform(\"u_scale_aspect\",\"vec2\",[s,i]),this.prog.set_uniform(\"u_scale_length\",\"float\",[r]),this.I_triangles=a.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);for(var l=this.I_triangles.length,_=64008,h=[],c=0,f=Math.ceil(l/_);c<f;c++)h.push([]);for(var c=0,f=t.length;c<f;c++){var d=t[c]%_,u=Math.floor(t[c]/_);h[u].push(d)}for(var u=0,f=h.length;u<f;u++){var g=new Uint16Array(h[u]),p=u*_*4;0!==g.length&&(this.prog.set_attribute(\"a_position\",\"vec2\",a.vbo_position,0,2*p),this.prog.set_attribute(\"a_tangents\",\"vec4\",a.vbo_tangents,0,4*p),this.prog.set_attribute(\"a_segment\",\"vec2\",a.vbo_segment,0,2*p),this.prog.set_attribute(\"a_angles\",\"vec2\",a.vbo_angles,0,2*p),this.prog.set_attribute(\"a_texcoord\",\"vec2\",a.vbo_texcoord,0,2*p),this.index_buffer.set_size(2*g.length),this.index_buffer.set_data(0,g),this.prog.draw(this.gl.TRIANGLES,this.index_buffer))}}},e.prototype._set_data=function(){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)},e.prototype._set_visuals=function(){var t,e=l.color2rgba(this.glyph.visuals.line.line_color.value(),this.glyph.visuals.line.line_alpha.value()),n=c[this.glyph.visuals.line.line_cap.value()],a=h[this.glyph.visuals.line.line_join.value()];this.prog.set_uniform(\"u_color\",\"vec4\",e),this.prog.set_uniform(\"u_linewidth\",\"float\",[this.glyph.visuals.line.line_width.value()]),this.prog.set_uniform(\"u_antialias\",\"float\",[.9]),this.prog.set_uniform(\"u_linecaps\",\"vec2\",[n,n]),this.prog.set_uniform(\"u_linejoin\",\"float\",[a]),this.prog.set_uniform(\"u_miter_limit\",\"float\",[10]);var s=this.glyph.visuals.line.line_dash.value(),i=0,r=1;s.length&&(t=this.dash_atlas.get_atlas_data(s),i=t[0],r=t[1]),this.prog.set_uniform(\"u_dash_index\",\"float\",[i]),this.prog.set_uniform(\"u_dash_phase\",\"float\",[this.glyph.visuals.line.line_dash_offset.value()]),this.prog.set_uniform(\"u_dash_period\",\"float\",[r]),this.prog.set_uniform(\"u_dash_caps\",\"vec2\",[n,n]),this.prog.set_uniform(\"u_closed\",\"float\",[0])},e.prototype._bake=function(){for(var t,e,n,a,s,i,r,o,l=this.nvertices,_=new Float64Array(this.glyph._x),h=new Float64Array(this.glyph._y),c=r=new Float32Array(2*l),f=new Float32Array(2*l),d=o=new Float32Array(4*l),u=0,g=l;u<g;u++)c[2*u+0]=_[u]+this._baked_offset[0],c[2*u+1]=h[u]+this._baked_offset[1];this.tangents=e=new Float32Array(2*l-2);for(var u=0,g=l-1;u<g;u++)e[2*u+0]=r[2*(u+1)+0]-r[2*u+0],e[2*u+1]=r[2*(u+1)+1]-r[2*u+1];for(var u=0,g=l-1;u<g;u++)d[4*(u+1)+0]=e[2*u+0],d[4*(u+1)+1]=e[2*u+1],d[4*u+2]=e[2*u+0],d[4*u+3]=e[2*u+1];d[0]=e[0],d[1]=e[1],d[4*(l-1)+2]=e[2*(l-2)+0],d[4*(l-1)+3]=e[2*(l-2)+1];for(var p=new Float32Array(l),u=0,g=l;u<g;u++)p[u]=Math.atan2(o[4*u+0]*o[4*u+3]-o[4*u+1]*o[4*u+2],o[4*u+0]*o[4*u+2]+o[4*u+1]*o[4*u+3]);for(var u=0,g=l-1;u<g;u++)f[2*u+0]=p[u],f[2*u+1]=p[u+1];var v=4*l-4;this.V_position=a=new Float32Array(2*v),this.V_angles=n=new Float32Array(2*v),this.V_tangents=s=new Float32Array(4*v),this.V_texcoord=i=new Float32Array(2*v);for(var u=0,g=l;u<g;u++)for(var m=0;m<4;m++){for(var x=0;x<2;x++)a[2*(4*u+m-2)+x]=c[2*u+x],n[2*(4*u+m)+x]=f[2*u+x];for(var x=0;x<4;x++)s[4*(4*u+m-2)+x]=d[4*u+x]}for(var u=0,g=l;u<g;u++)i[2*(4*u+0)+0]=-1,i[2*(4*u+1)+0]=-1,i[2*(4*u+2)+0]=1,i[2*(4*u+3)+0]=1,i[2*(4*u+0)+1]=-1,i[2*(4*u+1)+1]=1,i[2*(4*u+2)+1]=-1,i[2*(4*u+3)+1]=1;var y=6*(l-1);this.I_triangles=t=new Uint32Array(y);for(var u=0,g=l;u<g;u++)t[6*u+0]=0+4*u,t[6*u+1]=1+4*u,t[6*u+2]=3+4*u,t[6*u+3]=2+4*u,t[6*u+4]=0+4*u,t[6*u+5]=3+4*u},e.prototype._update_scale=function(t,e){var n,a=this.nvertices,s=4*a-4,i=this.tangents,r=new Float32Array(a-1),o=new Float32Array(2*a);this.V_segment=n=new Float32Array(2*s);for(var l=0,_=a-1;l<_;l++)r[l]=Math.sqrt(Math.pow(i[2*l+0]*t,2)+Math.pow(i[2*l+1]*e,2));for(var h=0,l=0,_=a-1;l<_;l++)h+=r[l],o[2*(l+1)+0]=h,o[2*l+1]=h;for(var l=0,_=a;l<_;l++)for(var c=0;c<4;c++)for(var f=0;f<2;f++)n[2*(4*l+c)+f]=o[2*l+f];this.cumsum=h,this.vbo_segment.set_size(4*this.V_segment.length),this.vbo_segment.set_data(0,this.V_segment)},e}(i.BaseGLGlyph);n.LineGLGlyph=f},455:function(t,e,n){n.vertex_shader=\"\\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 + u_offset) * abs_scale;\\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\"},456:function(t,e,n){t(452)},457:function(t,e,n){n.fragment_shader=function(t){return\"\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\nconst float PI = 3.14159265358979323846264;\\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\"+t+\"\\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    //gl_FragColor.rgb *= gl_FragColor.a;  // pre-multiply alpha\\n}\\n\"},n.circle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return length(P) - size/2.0;\\n}\\n\",n.square=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return max(abs(P.x), abs(P.y)) - size/2.0;\\n}\\n\",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\",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\",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\",n.invertedtriangle=\"\\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\",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',n.circlecross=\"\\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\",n.squarecross=\"\\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\",n.diamondcross=\"\\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\",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',n.circlex='\\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',n.squarex=\"\\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\",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'},458:function(t,e,n){var a=t(391),s=t(460),i=t(451),r=t(459),o=t(457),u=t(120),g=t(22),p=t(14),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),e.prototype.init=function(){var t=this.gl,e=r.vertex_shader,n=o.fragment_shader(this._marker_code);this.prog=new s.Program(t),this.prog.set_shaders(e,n),this.vbo_x=new s.VertexBuffer(t),this.prog.set_attribute(\"a_x\",\"float\",this.vbo_x),this.vbo_y=new s.VertexBuffer(t),this.prog.set_attribute(\"a_y\",\"float\",this.vbo_y),this.vbo_s=new s.VertexBuffer(t),this.prog.set_attribute(\"a_size\",\"float\",this.vbo_s),this.vbo_a=new s.VertexBuffer(t),this.prog.set_attribute(\"a_angle\",\"float\",this.vbo_a),this.vbo_linewidth=new s.VertexBuffer(t),this.vbo_fg_color=new s.VertexBuffer(t),this.vbo_bg_color=new s.VertexBuffer(t),this.index_buffer=new s.IndexBuffer(t)},e.prototype.draw=function(t,e,n){var a=e.glglyph,s=a.nvertices;if(a.data_changed){if(!isFinite(n.dx)||!isFinite(n.dy))return;a._baked_offset=[n.dx,n.dy],a._set_data(s),a.data_changed=!1}else this.glyph instanceof u.CircleView&&null!=this.glyph._radius&&(null==this.last_trans||n.sx!=this.last_trans.sx||n.sy!=this.last_trans.sy)&&(this.last_trans=n,this.vbo_s.set_data(0,new Float32Array(g.map(this.glyph.sradius,function(t){return 2*t}))));this.visuals_changed&&(this._set_visuals(s),this.visuals_changed=!1);var i=a._baked_offset;if(this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[n.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[n.width,n.height]),this.prog.set_uniform(\"u_offset\",\"vec2\",[n.dx-i[0],n.dy-i[1]]),this.prog.set_uniform(\"u_scale\",\"vec2\",[n.sx,n.sy]),this.prog.set_attribute(\"a_x\",\"float\",a.vbo_x),this.prog.set_attribute(\"a_y\",\"float\",a.vbo_y),this.prog.set_attribute(\"a_size\",\"float\",a.vbo_s),this.prog.set_attribute(\"a_angle\",\"float\",a.vbo_a),0!=t.length)if(t.length===s)this.prog.draw(this.gl.POINTS,[0,s]);else if(s<65535){var r=window.navigator.userAgent;0<r.indexOf(\"MSIE \")+r.indexOf(\"Trident/\")+r.indexOf(\"Edge/\")&&p.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{for(var o=[],l=0,_=Math.ceil(s/64e3);l<_;l++)o.push([]);for(var l=0,_=t.length;l<_;l++){var h=t[l]%64e3,c=Math.floor(t[l]/64e3);o[c].push(h)}for(var c=0,_=o.length;c<_;c++){var f=new Uint16Array(o[c]),d=64e3*c*4;0!==f.length&&(this.prog.set_attribute(\"a_x\",\"float\",a.vbo_x,0,d),this.prog.set_attribute(\"a_y\",\"float\",a.vbo_y,0,d),this.prog.set_attribute(\"a_size\",\"float\",a.vbo_s,0,d),this.prog.set_attribute(\"a_angle\",\"float\",a.vbo_a,0,d),this.vbo_linewidth.used&&this.prog.set_attribute(\"a_linewidth\",\"float\",this.vbo_linewidth,0,d),this.vbo_fg_color.used&&this.prog.set_attribute(\"a_fg_color\",\"vec4\",this.vbo_fg_color,0,4*d),this.vbo_bg_color.used&&this.prog.set_attribute(\"a_bg_color\",\"vec4\",this.vbo_bg_color,0,4*d),this.index_buffer.set_size(2*f.length),this.index_buffer.set_data(0,f),this.prog.draw(this.gl.POINTS,this.index_buffer))}}},e.prototype._set_data=function(t){var e=4*t;this.vbo_x.set_size(e),this.vbo_y.set_size(e),this.vbo_a.set_size(e),this.vbo_s.set_size(e);for(var n=new Float64Array(this.glyph._x),a=new Float64Array(this.glyph._y),s=0,i=t;s<i;s++)n[s]+=this._baked_offset[0],a[s]+=this._baked_offset[1];this.vbo_x.set_data(0,new Float32Array(n)),this.vbo_y.set_data(0,new Float32Array(a)),null!=this.glyph._angle&&this.vbo_a.set_data(0,new Float32Array(this.glyph._angle)),this.glyph instanceof u.CircleView&&null!=this.glyph._radius?this.vbo_s.set_data(0,new Float32Array(g.map(this.glyph.sradius,function(t){return 2*t}))):this.vbo_s.set_data(0,new Float32Array(this.glyph._size))},e.prototype._set_visuals=function(t){i.attach_float(this.prog,this.vbo_linewidth,\"a_linewidth\",t,this.glyph.visuals.line,\"line_width\"),i.attach_color(this.prog,this.vbo_fg_color,\"a_fg_color\",t,this.glyph.visuals.line,\"line\"),i.attach_color(this.prog,this.vbo_bg_color,\"a_bg_color\",t,this.glyph.visuals.fill,\"fill\"),this.prog.set_uniform(\"u_antialias\",\"float\",[.8])},e}(i.BaseGLGlyph);function _(n){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),Object.defineProperty(e.prototype,\"_marker_code\",{get:function(){return n},enumerable:!0,configurable:!0}),e}(l)}n.MarkerGLGlyph=l;var h=t(457);n.CircleGLGlyph=_(h.circle),n.SquareGLGlyph=_(h.square),n.DiamondGLGlyph=_(h.diamond),n.TriangleGLGlyph=_(h.triangle),n.InvertedTriangleGLGlyph=_(h.invertedtriangle),n.HexGLGlyph=_(h.hex),n.CrossGLGlyph=_(h.cross),n.CircleCrossGLGlyph=_(h.circlecross),n.SquareCrossGLGlyph=_(h.squarecross),n.DiamondCrossGLGlyph=_(h.diamondcross),n.XGLGlyph=_(h.x),n.CircleXGLGlyph=_(h.circlex),n.SquareXGLGlyph=_(h.squarex),n.AsteriskGLGlyph=_(h.asterisk)},459:function(t,e,n){n.vertex_shader=\"\\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_x;\\nattribute float a_y;\\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    // Calculate position - the -0.5 is to correct for canvas origin\\n    vec2 pos = (vec2(a_x, a_y) + u_offset) * u_scale; // 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\"},460:function(t,e,n){var a,s,o,i,r,p,d,l,u,x=function(t,e){return Array.isArray(t)&&Array.isArray(e)?t.concat(e):t+e},g=function(t,e){if(null==e);else{if(Array.isArray(e)){for(var n=0;n<e.length;n++)if(v(t,e[n]))return!0;return!1}if(e.constructor===Object){for(var a in e)if(t==a)return!0;return!1}if(e.constructor==String)return 0<=e.indexOf(t)}var s=Error(\"Not a container: \"+e);throw s.name=\"TypeError\",s},v=function t(e,n){if(null==e||null==n);else{if(Array.isArray(e)&&Array.isArray(n)){for(var a=0,s=e.length==n.length;s&&a<e.length;)s=t(e[a],n[a]),a+=1;return s}if(e.constructor===Object&&n.constructor===Object){var i=Object.keys(e),r=Object.keys(n);i.sort(),r.sort();for(var o,a=0,s=t(i,r);s&&a<i.length;)o=i[a],s=t(e[o],n[o]),a+=1;return s}}return e==n},_=function(t,e){if(void 0===t||\"undefined\"!=typeof window&&window===t||\"undefined\"!=typeof global&&global===t)throw\"Class constructor is called as a function.\";for(var n in t)void 0!==Object[n]||\"function\"!=typeof t[n]||t[n].nobind||(t[n]=t[n].bind(t));t.__init__&&t.__init__.apply(t,e)},m=function(t,e){if((\"number\"==typeof t)+(\"number\"==typeof e)===1){if(t.constructor===String)return h.call(t,e);if(e.constructor===String)return h.call(e,t);if(Array.isArray(e)){var n=t;t=e,e=n}if(Array.isArray(t)){for(var a=[],s=0;s<e;s++)a=a.concat(t);return a}}return t*e},y=function(t){return null===t||\"object\"!=typeof t?t:void 0!==t.length?!!t.length&&t:void 0!==t.byteLength?!!t.byteLength&&t:t.constructor!==Object||!!Object.getOwnPropertyNames(t).length&&t},b=function(t){if(!Array.isArray(this))return this.append.apply(this,arguments);this.push(t)},w=function(t,e){return this.constructor!==Object?this.get.apply(this,arguments):void 0!==this[t]?this[t]:void 0!==e?e:null},P=function(t){if(!Array.isArray(this))return this.remove.apply(this,arguments);for(var e=0;e<this.length;e++)if(v(this[e],t))return void this.splice(e,1);var n=Error(t);throw n.name=\"ValueError\",n},h=function(t){if(this.repeat)return this.repeat(t);if(t<1)return\"\";for(var e=\"\",n=this.valueOf();1<t;)1&t&&(e+=n),t>>=1,n+=n;return e+n},c=function(t){return this.constructor!==String?this.startswith.apply(this,arguments):0==this.indexOf(t)};u=window.console,l=function(t,e){var n,a,s,i,r,o,l;for(e=void 0===e?\"periodic check\":e,i=[];a=t.getError(),!(v(a,t.NO_ERROR)||y(i)&&v(a,i[i.length-1]));)b.call(i,a);if(i.length){for(r=\"\",\"object\"!=typeof(o=i)||Array.isArray(o)||(o=Object.keys(o)),l=0;l<o.length;l+=1)n=o[l],r=x(r,n);throw(s=new Error(\"RuntimeError:OpenGL got errors (\"+e+\"): \"+r)).name=\"RuntimeError\",s}return null},(s=function(){_(this,arguments)}).prototype._base_class=Object,s.prototype._class_name=\"GlooObject\",s.prototype.__init__=function(t){if(this._gl=t,this.handle=null,this._create(),null===this.handle)throw\"AssertionError: this.handle !== null\";return null},s.prototype._create=function(){var t;throw(t=new Error(\"NotImplementedError:\")).name=\"NotImplementedError\",t},((i=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,i.prototype._class_name=\"Program\",i.prototype.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\"},i.prototype.ATYPEMAP={float:\"vertexAttrib1f\",vec2:\"vertexAttrib2f\",vec3:\"vertexAttrib3f\",vec4:\"vertexAttrib4f\"},i.prototype.ATYPEINFO={float:[1,5126],vec2:[2,5126],vec3:[3,5126],vec4:[4,5126]},i.prototype._create=function(){return this.handle=this._gl.createProgram(),this.locations={},this._unset_variables=[],this._validated=!1,this._samplers={},this._attributes={},this._known_invalid=[],null},i.prototype.delete=function(){return this._gl.deleteProgram(this.handle),null},i.prototype.activate=function(){return this._gl.useProgram(this.handle),null},i.prototype.deactivate=function(){return this._gl.useProgram(0),null},i.prototype.set_shaders=function(t,e){var n,a,s,i,r,o,l,_,h,c,f,d,u;for(o=this._gl,this._linked=!1,u=o.createShader(o.VERTEX_SHADER),r=o.createShader(o.FRAGMENT_SHADER),f=[[t,u,\"vertex\"],[e,r,\"fragment\"]],_=0;_<2;_+=1)if(n=(c=f[_])[0],l=c[1],d=c[2],o.shaderSource(l,n),o.compileShader(l),h=o.getShaderParameter(l,o.COMPILE_STATUS),!y(h))throw i=o.getShaderInfoLog(l),(s=new Error(\"RuntimeError:\"+x(\"errors in \"+d+\" shader:\\n\",i))).name=\"RuntimeError\",s;if(o.attachShader(this.handle,u),o.attachShader(this.handle,r),o.linkProgram(this.handle),!y(o.getProgramParameter(this.handle,o.LINK_STATUS)))throw(a=new Error(\"RuntimeError:Program link error:\\n\"+o.getProgramInfoLog(this.handle))).name=\"RuntimeError\",a;return this._unset_variables=this._get_active_attributes_and_uniforms(),o.detachShader(this.handle,u),o.detachShader(this.handle,r),o.deleteShader(u),o.deleteShader(r),this._known_invalid=[],this._linked=!0,null},i.prototype._get_active_attributes_and_uniforms=function(){var s,t,e,n,a,i,r,o,l,_,h,c,f,d,u,g,p,v,m;for(o=this._gl,this.locations={},d=new window.RegExp(\"(\\\\w+)\\\\s*(\\\\[(\\\\d+)\\\\])\\\\s*\"),a=o.getProgramParameter(this.handle,o.ACTIVE_UNIFORMS),t=o.getProgramParameter(this.handle,o.ACTIVE_ATTRIBUTES),v=[],\"object\"!=typeof(g=[[s=[],t,o.getActiveAttrib,o.getAttribLocation],[v,a,o.getActiveUniform,o.getUniformLocation]])||Array.isArray(g)||(g=Object.keys(g)),p=0;p<g.length;p+=1)for(m=g[p],e=(u=m)[0],n=u[1],i=u[2],r=u[3],l=0;l<n;l+=1){if(_=i.call(o,this.handle,l),f=_.name,c=f.match(d),y(c))for(f=c[1],h=0;h<_.size;h+=1)b.call(e,[f+\"[\"+h+\"]\",_.type]);else b.call(e,[f,_.type]);this.locations[f]=r.call(o,this.handle,f)}return x(function(){var t,e,n,a=[];for(\"object\"!=typeof(e=s)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(t[0]);return a}.apply(this),function(){var t,e,n,a=[];for(\"object\"!=typeof(e=v)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(t[0]);return a}.apply(this))},i.prototype.set_texture=function(t,e){var n,a,s;if(!y(this._linked))throw(n=new Error(\"RuntimeError:Cannot set uniform when program has no code\")).name=\"RuntimeError\",n;return a=w.call(this.locations,t,-1),y(a<0)?g(t,this._known_invalid)||(b.call(this._known_invalid,t),u.log(\"Variable \"+t+\" is not an active texture\")):(g(t,this._unset_variables)&&P.call(this._unset_variables,t),this.activate(),s=function(){return\"function\"==typeof this.keys?this.keys.apply(this,arguments):Object.keys(this)}.call(this._samplers).length,g(t,this._samplers)&&(s=this._samplers[t][this._samplers[t].length-1]),this._samplers[t]=[e._target,e.handle,s],this._gl.uniform1i(a,s)),null},i.prototype.set_uniform=function(t,e,n){var a,s,i,r,o,l,_;if(!y(this._linked))throw(i=new Error(\"RuntimeError:Cannot set uniform when program has no code\")).name=\"RuntimeError\",i;if(o=w.call(this.locations,t,-1),y(o<0))return g(t,this._known_invalid)||(b.call(this._known_invalid,t),u.log(\"Variable \"+t+\" is not an active uniform\")),null;if(g(t,this._unset_variables)&&P.call(this._unset_variables,t),s=1,c.call(e,\"mat\")||(a=w.call({int:\"float\",bool:\"float\"},e,function(t){if(this.constructor!==String)return this.lstrip.apply(this,arguments);t=void 0===t?\" \\t\\r\\n\":t;for(var e=0;e<this.length;e++)if(t.indexOf(this[e])<0)return this.slice(e);return\"\"}.call(e,\"ib\")),s=Math.floor(n.length/this.ATYPEINFO[a][0])),y(1<s))for(l=0;l<s;l+=1)g(t+\"[\"+l+\"]\",this._unset_variables)&&g(_=t+\"[\"+l+\"]\",this._unset_variables)&&P.call(this._unset_variables,_);return r=this.UTYPEMAP[e],this.activate(),c.call(e,\"mat\")?this._gl[r](o,!1,n):this._gl[r](o,n),null},i.prototype.set_attribute=function(t,e,n,a,s){var i,r,o,l,_,h,c,f;if(a=void 0===a?0:a,s=void 0===s?0:s,!y(this._linked))throw(r=new Error(\"RuntimeError:Cannot set attribute when program has no code\")).name=\"RuntimeError\",r;return h=n instanceof d,_=w.call(this.locations,t,-1),y(_<0)?g(t,this._known_invalid)||(b.call(this._known_invalid,t),y(h)&&y(0<s)||u.log(\"Variable \"+t+\" is not an active attribute\")):(g(t,this._unset_variables)&&P.call(this._unset_variables,t),this.activate(),y(h)?(f=this.ATYPEINFO[e],c=f[0],l=f[1],o=\"vertexAttribPointer\",i=[c,l,this._gl.FALSE,a,s],this._attributes[t]=[n.handle,_,o,i]):(o=this.ATYPEMAP[e],this._attributes[t]=[0,_,o,n])),null},i.prototype._pre_draw=function(){var t,e,n,a,s,i,r,o,l,_,h,c;for(c in this.activate(),r=this._samplers)r.hasOwnProperty(c)&&(c=r[c],l=(i=c)[0],o=i[1],_=i[2],this._gl.activeTexture(x(this._gl.TEXTURE0,_)),this._gl.bindTexture(l,o));for(c in s=this._attributes)s.hasOwnProperty(c)&&(c=s[c],h=(a=c)[0],e=a[1],n=a[2],t=a[3],y(h)?(this._gl.bindBuffer(this._gl.ARRAY_BUFFER,h),this._gl.enableVertexAttribArray(e)):(this._gl.bindBuffer(this._gl.ARRAY_BUFFER,null),this._gl.disableVertexAttribArray(e)),this._gl[n].apply(this._gl,[].concat([e],t)));return y(this._validated)||(this._validated=!0,this._validate()),null},i.prototype._validate=function(){var t;if(this._unset_variables.length&&u.log(\"Program has unset variables: \"+this._unset_variables),this._gl.validateProgram(this.handle),!y(this._gl.getProgramParameter(this.handle,this._gl.VALIDATE_STATUS)))throw u.log(this._gl.getProgramInfoLog(this.handle)),(t=new Error(\"RuntimeError:Program validation error\")).name=\"RuntimeError\",t;return null},i.prototype.draw=function(t,e){var n,a,s,i,r;if(!y(this._linked))throw(a=new Error(\"RuntimeError:Cannot draw program if code has not been set\")).name=\"RuntimeError\",a;return l(this._gl,\"before draw\"),y(e instanceof o)?(this._pre_draw(),e.activate(),n=e._buffer_size/2,i=this._gl.UNSIGNED_SHORT,this._gl.drawElements(t,n,i,0),e.deactivate()):(s=(r=e)[0],n=r[1],y(n)&&(this._pre_draw(),this._gl.drawArrays(t,s,n))),l(this._gl,\"after draw\"),null},((a=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,a.prototype._class_name=\"Buffer\",a.prototype._target=null,a.prototype._usage=35048,a.prototype._create=function(){return this.handle=this._gl.createBuffer(),this._buffer_size=0,null},a.prototype.delete=function(){return this._gl.deleteBuffer(this.handle),null},a.prototype.activate=function(){return this._gl.bindBuffer(this._target,this.handle),null},a.prototype.deactivate=function(){return this._gl.bindBuffer(this._target,null),null},a.prototype.set_size=function(t){return v(t,this._buffer_size)||(this.activate(),this._gl.bufferData(this._target,t,this._usage),this._buffer_size=t),null},a.prototype.set_data=function(t,e){return this.activate(),this._gl.bufferSubData(this._target,t,e),null},(d=function(){_(this,arguments)}).prototype=Object.create(a.prototype),d.prototype._base_class=a.prototype,d.prototype._class_name=\"VertexBuffer\",d.prototype._target=34962,(o=function(){_(this,arguments)}).prototype=Object.create(a.prototype),o.prototype._base_class=a.prototype,o.prototype._class_name=\"IndexBuffer\",o.prototype._target=34963,((r=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,r.prototype._class_name=\"Texture2D\",r.prototype._target=3553,r.prototype._types={Int8Array:5120,Uint8Array:5121,Int16Array:5122,Uint16Array:5123,Int32Array:5124,Uint32Array:5125,Float32Array:5126},r.prototype._create=function(){return this.handle=this._gl.createTexture(),this._shape_format=null},r.prototype.delete=function(){return this._gl.deleteTexture(this.handle),null},r.prototype.activate=function(){return this._gl.bindTexture(this._target,this.handle),null},r.prototype.deactivate=function(){return this._gl.bindTexture(this._target,0),null},r.prototype._get_alignment=function(t){var e,n,a;for(\"object\"!=typeof(n=[4,8,2,1])||Array.isArray(n)||(n=Object.keys(n)),a=0;a<n.length;a+=1)if(e=n[a],v(t%e,0))return e;return null},r.prototype.set_wrapping=function(t,e){return this.activate(),this._gl.texParameterf(this._target,this._gl.TEXTURE_WRAP_S,t),this._gl.texParameterf(this._target,this._gl.TEXTURE_WRAP_T,e),null},r.prototype.set_interpolation=function(t,e){return this.activate(),this._gl.texParameterf(this._target,this._gl.TEXTURE_MIN_FILTER,t),this._gl.texParameterf(this._target,this._gl.TEXTURE_MAG_FILTER,e),null},r.prototype.set_size=function(t,e){var n,a,s;return n=(a=t)[0],s=a[1],v([n,s,e],this._shape_format)||(this._shape_format=[n,s,e],this.activate(),this._gl.texImage2D(this._target,0,e,s,n,0,e,this._gl.UNSIGNED_BYTE,null)),this.u_shape=[n,s],null},r.prototype.set_data=function(t,e,n){var a,s,i,r,o,l,_,h,c,f;if(v(e.length,2)&&(e=[e[0],e[1],1]),this.activate(),i=this._shape_format[2],o=(l=e)[0],h=l[1],l[2],f=(_=t)[0],c=_[1],null===(r=w.call(this._types,n.constructor.name,null)))throw(s=new Error(\"ValueError:Type \"+n.constructor.name+\" not allowed for texture\")).name=\"ValueError\",s;return a=this._get_alignment(m(e[e.length-2],e[e.length-1])),v(a,4)||this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,a),this._gl.texSubImage2D(this._target,0,c,f,h,o,i,r,n),v(a,4)||this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,4),null},((p=function(){_(this,arguments)}).prototype=Object.create(r.prototype))._base_class=r.prototype,p.prototype._class_name=\"Texture3DLike\",p.prototype.GLSL_SAMPLE_NEAREST=\"\\n        vec4 sample3D(sampler2D tex, vec3 texcoord, vec3 shape, vec2 tiles) {\\n            shape.xyz = shape.zyx;  // silly row-major convention\\n            float nrows = tiles.y, ncols = tiles.x;\\n            // Don't let adjacent frames be interpolated into this one\\n            texcoord.x = min(texcoord.x * shape.x, shape.x - 0.5);\\n            texcoord.x = max(0.5, texcoord.x) / shape.x;\\n            texcoord.y = min(texcoord.y * shape.y, shape.y - 0.5);\\n            texcoord.y = max(0.5, texcoord.y) / shape.y;\\n\\n            float zindex = floor(texcoord.z * shape.z);\\n\\n            // Do a lookup in the 2D texture\\n            float u = (mod(zindex, ncols) + texcoord.x) / ncols;\\n            float v = (floor(zindex / ncols) + texcoord.y) / nrows;\\n\\n            return texture2D(tex, vec2(u,v));\\n        }\\n    \",p.prototype.GLSL_SAMPLE_LINEAR=\"\\n        vec4 sample3D(sampler2D tex, vec3 texcoord, vec3 shape, vec2 tiles) {\\n            shape.xyz = shape.zyx;  // silly row-major convention\\n            float nrows = tiles.y, ncols = tiles.x;\\n            // Don't let adjacent frames be interpolated into this one\\n            texcoord.x = min(texcoord.x * shape.x, shape.x - 0.5);\\n            texcoord.x = max(0.5, texcoord.x) / shape.x;\\n            texcoord.y = min(texcoord.y * shape.y, shape.y - 0.5);\\n            texcoord.y = max(0.5, texcoord.y) / shape.y;\\n\\n            float z = texcoord.z * shape.z;\\n            float zindex1 = floor(z);\\n            float u1 = (mod(zindex1, ncols) + texcoord.x) / ncols;\\n            float v1 = (floor(zindex1 / ncols) + texcoord.y) / nrows;\\n\\n            float zindex2 = zindex1 + 1.0;\\n            float u2 = (mod(zindex2, ncols) + texcoord.x) / ncols;\\n            float v2 = (floor(zindex2 / ncols) + texcoord.y) / nrows;\\n\\n            vec4 s1 = texture2D(tex, vec2(u1, v1));\\n            vec4 s2 = texture2D(tex, vec2(u2, v2));\\n\\n            return s1 * (zindex2 - z) + s2 * (z - zindex1);\\n        }\\n    \",p.prototype._get_tile_info=function(t){var e,n,a,s;if(n=this._gl.getParameter(this._gl.MAX_TEXTURE_SIZE),s=Math.floor(n/t[1]),s=Math.min(s,t[0]),a=window.Math.ceil(t[0]/s),y(m(a,t[2])>n))throw(e=new Error(\"RuntimeError:Cannot fit 3D data with shape \"+t+\" onto simulated 2D texture.\")).name=\"RuntimeError\",e;return[s,a]},p.prototype.set_size=function(t,e){var n,a,s,i;return i=this._get_tile_info(t),a=i[0],n=i[1],s=[m(t[1],a),m(t[2],n)],p.prototype._base_class.set_size.call(this,s,e),this.u_shape=[t[0],t[1],t[2]],this.u_tiles=[n,a],null},p.prototype.set_data=function(s,t,e){var n,a,i,r,o,l,_,h,c,f,d,u,g;if(v(t.length,3)&&(t=[t[0],t[1],t[2],1]),!function(t){for(var e=0;e<t.length;e++)if(!y(t[e]))return!1;return!0}(function(){var t,e,n,a=[];for(\"object\"!=typeof(e=s)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(v(t,0));return a}.apply(this)))throw(r=new Error(\"ValueError:Texture3DLike does not support nonzero offset (for now)\")).name=\"ValueError\",r;if(c=this._get_tile_info(t),l=c[0],o=c[1],h=[m(t[1],l),m(t[2],o),t[3]],v(o,1))p.prototype._base_class.set_data.call(this,[0,0],h,e);else for(n=e.constructor,g=new n(m(m(h[0],h[1]),h[2])),p.prototype._base_class.set_data.call(this,[0,0],h,g),u=0;u<t[0];u+=1)f=[Math.floor(u/o),u%o],_=f[0],a=f[1],i=Math.floor(e.length/t[0]),d=e.slice(m(u,i),m(u+1,i)),p.prototype._base_class.set_data.call(this,[m(_,t[1]),m(a,t[2])],t.slice(1),d);return null},e.exports={Buffer:a,GlooObject:s,IndexBuffer:o,Program:i,Texture2D:r,Texture3DLike:p,VertexBuffer:d,check_error:l,console:u}}})}(this);\n",
588
+       "      //# sourceMappingURL=bokeh-gl.min.js.map\n",
589
+       "      /* END bokeh-gl.min.js */\n",
590
+       "    },\n",
591
+       "    \n",
592
+       "    function(Bokeh) {\n",
593
+       "      Bokeh.set_log_level(\"info\");\n",
594
+       "    },\n",
595
+       "    \n",
596
+       "    function(Bokeh) {\n",
597
+       "      \n",
598
+       "    },\n",
599
+       "    function(Bokeh) {\n",
600
+       "      console.log(\"Bokeh: injecting raw CSS\");\n",
601
+       "      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh.min.css */\\n.bk-root{font-family:\\\"Helvetica Neue\\\",Helvetica,Arial,sans-serif;font-size:10pt;position:relative;width:auto;height:auto}.bk-root .bk-shading{position:absolute;display:block;border:1px dashed green}.bk-root .bk-tile-attribution a{color:black}.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-grid-row,.bk-root .bk-grid-column{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap}.bk-root .bk-grid-row>*,.bk-root .bk-grid-column>*{flex-shrink:0;-webkit-flex-shrink:0}.bk-root .bk-grid-row{flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-grid-column{flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-canvas-wrapper{position:relative;font-size:12pt}.bk-root .bk-canvas,.bk-root .bk-canvas-overlays,.bk-root .bk-canvas-events{position:absolute;top:0;left:0;width:100%;height:100%}.bk-root .bk-canvas-map{position:absolute;border:0}.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-notebook{display:inline-block;vertical-align:middle;margin-right:5px}.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-toolbar,.bk-root .bk-toolbar *{box-sizing:border-box;margin:0;padding:0}.bk-root .bk-toolbar-hidden{visibility:hidden;opacity:0;transition:visibility .3s linear,opacity .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;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.bk-root .bk-toolbar .bk-logo{flex-shrink:0;-webkit-flex-shrink:0}.bk-root .bk-toolbar-above,.bk-root .bk-toolbar-below{flex-direction:row;-webkit-flex-direction:row;justify-content:flex-end;-webkit-justify-content:flex-end}.bk-root .bk-toolbar-above .bk-button-bar,.bk-root .bk-toolbar-below .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-toolbar-above .bk-logo,.bk-root .bk-toolbar-below .bk-logo{order:1;-webkit-order:1;margin-left:5px}.bk-root .bk-toolbar-left,.bk-root .bk-toolbar-right{flex-direction:column;-webkit-flex-direction:column;justify-content:flex-start;-webkit-justify-content:flex-start}.bk-root .bk-toolbar-left .bk-button-bar,.bk-root .bk-toolbar-right .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-toolbar-left .bk-logo,.bk-root .bk-toolbar-right .bk-logo{order:0;-webkit-order:0;margin-bottom:5px}.bk-root .bk-toolbar-button{width:30px;height:30px;background-size:60%;background-color:transparent;background-repeat:no-repeat;background-position:center center}.bk-root .bk-toolbar-button:hover{background-color:#f9f9f9}.bk-root .bk-toolbar-button:focus{outline:0}.bk-root .bk-toolbar-button::-moz-focus-inner{border:0}.bk-root .bk-toolbar-above .bk-toolbar-button{border-bottom:2px solid transparent}.bk-root .bk-toolbar-above .bk-toolbar-button.bk-active{border-bottom-color:#26aae1}.bk-root .bk-toolbar-below .bk-toolbar-button{border-top:2px solid transparent}.bk-root .bk-toolbar-below .bk-toolbar-button.bk-active{border-top-color:#26aae1}.bk-root .bk-toolbar-right .bk-toolbar-button{border-left:2px solid transparent}.bk-root .bk-toolbar-right .bk-toolbar-button.bk-active{border-left-color:#26aae1}.bk-root .bk-toolbar-left .bk-toolbar-button{border-right:2px solid transparent}.bk-root .bk-toolbar-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-above .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-below .bk-button-bar+.bk-button-bar:before{height:10px;width:1px}.bk-root .bk-toolbar-left .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-right .bk-button-bar+.bk-button-bar:before{height:1px;width:10px}.bk-root .bk-tooltip{font-family:\\\"HelveticaNeue-Light\\\",\\\"Helvetica Neue Light\\\",\\\"Helvetica Neue\\\",Helvetica,Arial,\\\"Lucida Grande\\\",sans-serif;font-weight:300;font-size:12px;position:absolute;padding:5px;border:1px solid #e5e5e5;color:#2f2f2f;background-color:white;pointer-events:none;opacity:.95}.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:#ddd solid 1px;display:inline-block}.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:0;padding:1px}\\n/* END bokeh.min.css */\");\n",
602
+       "      console.log(\"Bokeh: injecting raw CSS\");\n",
603
+       "      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh-widgets.min.css */\\n@charset \\\"UTF-8\\\";.bk-root{/*!\\n * Pikaday\\n * Copyright \\u00a9 2014 David Bushell | BSD & MIT license | http://dbushell.com/\\n */}.bk-root .bk-noUi-target,.bk-root .bk-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 .bk-noUi-target{position:relative;direction:ltr}.bk-root .bk-noUi-base{width:100%;height:100%;position:relative;z-index:1}.bk-root .bk-noUi-connect{position:absolute;right:0;top:0;left:0;bottom:0}.bk-root .bk-noUi-origin{position:absolute;height:0;width:0}.bk-root .bk-noUi-handle{position:relative;z-index:1}.bk-root .bk-noUi-state-tap .bk-noUi-connect,.bk-root .bk-noUi-state-tap .bk-noUi-origin{-webkit-transition:top .3s,right .3s,bottom .3s,left .3s;transition:top .3s,right .3s,bottom .3s,left .3s}.bk-root .bk-noUi-state-drag *{cursor:inherit !important}.bk-root .bk-noUi-base,.bk-root .bk-noUi-handle{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.bk-root .bk-noUi-horizontal{height:18px}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:34px;height:28px;left:-17px;top:-6px}.bk-root .bk-noUi-vertical{width:18px}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:28px;height:34px;left:-6px;top:-17px}.bk-root .bk-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 .bk-noUi-connect{background:#3fb8af;border-radius:4px;box-shadow:inset 0 0 3px rgba(51,51,51,0.45);-webkit-transition:background 450ms;transition:background 450ms}.bk-root .bk-noUi-draggable{cursor:ew-resize}.bk-root .bk-noUi-vertical .bk-noUi-draggable{cursor:ns-resize}.bk-root .bk-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 .bk-noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.bk-root .bk-noUi-handle:before,.bk-root .bk-noUi-handle:after{content:\\\"\\\";display:block;position:absolute;height:14px;width:1px;background:#e8e7e6;left:14px;top:6px}.bk-root .bk-noUi-handle:after{left:17px}.bk-root .bk-noUi-vertical .bk-noUi-handle:before,.bk-root .bk-noUi-vertical .bk-noUi-handle:after{width:14px;height:1px;left:6px;top:14px}.bk-root .bk-noUi-vertical .bk-noUi-handle:after{top:17px}.bk-root [disabled] .bk-noUi-connect{background:#b8b8b8}.bk-root [disabled].bk-noUi-target,.bk-root [disabled].bk-noUi-handle,.bk-root [disabled] .bk-noUi-handle{cursor:not-allowed}.bk-root .bk-noUi-pips,.bk-root .bk-noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box}.bk-root .bk-noUi-pips{position:absolute;color:#999}.bk-root .bk-noUi-value{position:absolute;white-space:nowrap;text-align:center}.bk-root .bk-noUi-value-sub{color:#ccc;font-size:10px}.bk-root .bk-noUi-marker{position:absolute;background:#CCC}.bk-root .bk-noUi-marker-sub{background:#AAA}.bk-root .bk-noUi-marker-large{background:#AAA}.bk-root .bk-noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.bk-root .bk-noUi-value-horizontal{-webkit-transform:translate3d(-50%,50%,0);transform:translate3d(-50%,50%,0)}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker{margin-left:-1px;width:2px;height:5px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-sub{height:10px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-large{height:15px}.bk-root .bk-noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.bk-root .bk-noUi-value-vertical{-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0);padding-left:25px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker{width:5px;height:2px;margin-top:-1px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-sub{width:10px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-large{width:15px}.bk-root .bk-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 .bk-noUi-horizontal .bk-noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.bk-root .bk-noUi-vertical .bk-noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}.bk-root .bk-noUi-handle{cursor:grab;cursor:-webkit-grab}.bk-root .bk-noUi-handle.bk-noUi-active{cursor:grabbing;cursor:-webkit-grabbing}.bk-root .bk-noUi-tooltip{display:none;white-space:nowrap}.bk-root .bk-noUi-handle:hover .bk-noUi-tooltip{display:block}.bk-root .bk-noUi-horizontal{width:100%;height:10px}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:14px;height:18px;left:-7px;top:-5px}.bk-root .bk-noUi-vertical{width:10px;height:100%}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:18px;height:14px;left:-5px;top:-7px}.bk-root .bk-noUi-handle:after,.bk-root .bk-noUi-handle:before{display:none}.bk-root .bk-noUi-connect{box-shadow:none}.bk-root fieldset{padding:0;margin:0;border:0;min-width:0}.bk-root legend{display:block;width:100%;padding:0;margin-bottom:17px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}.bk-root label{display:inline-block;margin-bottom:5px}.bk-root input[type=\\\"search\\\"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bk-root input[type=\\\"radio\\\"],.bk-root input[type=\\\"checkbox\\\"]{margin:4px 0 0;margin-top:1px \\\\9;line-height:normal}.bk-root input[type=\\\"file\\\"]{display:block}.bk-root input[type=\\\"range\\\"]{display:block;width:100%}.bk-root select[multiple],.bk-root select[size]{height:auto}.bk-root input[type=\\\"file\\\"]:focus,.bk-root input[type=\\\"radio\\\"]:focus,.bk-root input[type=\\\"checkbox\\\"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.bk-root output{display:block;padding-top:7px;line-height:1.42857143;color:#555}.bk-root .bk-bs-form-control{display:block;height:31px;padding:0 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px}.bk-root .bk-bs-form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6)}.bk-root .bk-bs-form-control::-moz-placeholder{color:#999;opacity:1}.bk-root .bk-bs-form-control:-ms-input-placeholder{color:#999}.bk-root .bk-bs-form-control::-webkit-input-placeholder{color:#999}.bk-root .bk-bs-form-control[disabled],.bk-root .bk-bs-form-control[readonly],fieldset[disabled] .bk-root .bk-bs-form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.bk-root .bk-bs-form-control{height:auto}.bk-root input[type=\\\"search\\\"]{-webkit-appearance:none}.bk-root input[type=\\\"date\\\"]{line-height:31px}.bk-root .bk-bs-form-group{margin-bottom:15px}.bk-root .bk-bs-radio,.bk-root .bk-bs-checkbox{display:block;min-height:17px;margin-top:10px;margin-bottom:10px;padding-left:20px}.bk-root .bk-bs-radio label,.bk-root .bk-bs-checkbox label{display:inline;font-weight:normal;cursor:pointer}.bk-root .bk-bs-radio input[type=\\\"radio\\\"],.bk-root .bk-bs-radio-inline input[type=\\\"radio\\\"],.bk-root .bk-bs-checkbox input[type=\\\"checkbox\\\"],.bk-root .bk-bs-checkbox-inline input[type=\\\"checkbox\\\"]{float:left;margin-left:-20px}.bk-root .bk-bs-radio+.bk-bs-radio,.bk-root .bk-bs-checkbox+.bk-bs-checkbox{margin-top:-5px}.bk-root .bk-bs-radio-inline,.bk-root .bk-bs-checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.bk-root .bk-bs-radio-inline+.bk-bs-radio-inline,.bk-root .bk-bs-checkbox-inline+.bk-bs-checkbox-inline{margin-top:0;margin-left:10px}.bk-root input[type=\\\"radio\\\"][disabled],.bk-root input[type=\\\"checkbox\\\"][disabled],.bk-root .bk-bs-radio[disabled],.bk-root .bk-bs-radio-inline[disabled],.bk-root .bk-bs-checkbox[disabled],.bk-root .bk-bs-checkbox-inline[disabled],fieldset[disabled] .bk-root input[type=\\\"radio\\\"],fieldset[disabled] .bk-root input[type=\\\"checkbox\\\"],fieldset[disabled] .bk-root .bk-bs-radio,fieldset[disabled] .bk-root .bk-bs-radio-inline,fieldset[disabled] .bk-root .bk-bs-checkbox,fieldset[disabled] .bk-root .bk-bs-checkbox-inline{cursor:not-allowed}.bk-root .bk-bs-input-sm{height:28px;padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}select.bk-root .bk-bs-input-sm{height:28px;line-height:28px}textarea.bk-root .bk-bs-input-sm,select[multiple].bk-root .bk-bs-input-sm{height:auto}.bk-root .bk-bs-input-lg{height:42px;padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}select.bk-root .bk-bs-input-lg{height:42px;line-height:42px}textarea.bk-root .bk-bs-input-lg,select[multiple].bk-root .bk-bs-input-lg{height:auto}.bk-root .bk-bs-has-feedback{position:relative}.bk-root .bk-bs-has-feedback .bk-bs-form-control{padding-right:38.75px}.bk-root .bk-bs-has-feedback .bk-bs-form-control-feedback{position:absolute;top:22px;right:0;display:block;width:31px;height:31px;line-height:31px;text-align:center}.bk-root .bk-bs-has-success .bk-bs-help-block,.bk-root .bk-bs-has-success .bk-bs-control-label,.bk-root .bk-bs-has-success .bk-bs-radio,.bk-root .bk-bs-has-success .bk-bs-checkbox,.bk-root .bk-bs-has-success .bk-bs-radio-inline,.bk-root .bk-bs-has-success .bk-bs-checkbox-inline{color:#3c763d}.bk-root .bk-bs-has-success .bk-bs-form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-success .bk-bs-form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.bk-root .bk-bs-has-success .bk-bs-input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.bk-root .bk-bs-has-success .bk-bs-form-control-feedback{color:#3c763d}.bk-root .bk-bs-has-warning .bk-bs-help-block,.bk-root .bk-bs-has-warning .bk-bs-control-label,.bk-root .bk-bs-has-warning .bk-bs-radio,.bk-root .bk-bs-has-warning .bk-bs-checkbox,.bk-root .bk-bs-has-warning .bk-bs-radio-inline,.bk-root .bk-bs-has-warning .bk-bs-checkbox-inline{color:#8a6d3b}.bk-root .bk-bs-has-warning .bk-bs-form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-warning .bk-bs-form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.bk-root .bk-bs-has-warning .bk-bs-input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.bk-root .bk-bs-has-warning .bk-bs-form-control-feedback{color:#8a6d3b}.bk-root .bk-bs-has-error .bk-bs-help-block,.bk-root .bk-bs-has-error .bk-bs-control-label,.bk-root .bk-bs-has-error .bk-bs-radio,.bk-root .bk-bs-has-error .bk-bs-checkbox,.bk-root .bk-bs-has-error .bk-bs-radio-inline,.bk-root .bk-bs-has-error .bk-bs-checkbox-inline{color:#a94442}.bk-root .bk-bs-has-error .bk-bs-form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-error .bk-bs-form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.bk-root .bk-bs-has-error .bk-bs-input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.bk-root .bk-bs-has-error .bk-bs-form-control-feedback{color:#a94442}.bk-root .bk-bs-form-control-static{margin-bottom:0}.bk-root .bk-bs-help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.bk-root .bk-bs-form-inline .bk-bs-form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-form-control{display:inline-block;width:auto;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-input-group>.bk-bs-form-control{width:100%}.bk-root .bk-bs-form-inline .bk-bs-control-label{margin-bottom:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-radio,.bk-root .bk-bs-form-inline .bk-bs-checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-radio input[type=\\\"radio\\\"],.bk-root .bk-bs-form-inline .bk-bs-checkbox input[type=\\\"checkbox\\\"]{float:none;margin-left:0}.bk-root .bk-bs-form-inline .bk-bs-has-feedback .bk-bs-form-control-feedback{top:0}}.bk-root .bk-bs-form-horizontal .bk-bs-control-label,.bk-root .bk-bs-form-horizontal .bk-bs-radio,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox,.bk-root .bk-bs-form-horizontal .bk-bs-radio-inline,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.bk-root .bk-bs-form-horizontal .bk-bs-radio,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox{min-height:24px}.bk-root .bk-bs-form-horizontal .bk-bs-form-group{margin-left:-15px;margin-right:-15px}.bk-root .bk-bs-form-horizontal .bk-bs-form-control-static{padding-top:7px}@media(min-width:768px){.bk-root .bk-bs-form-horizontal .bk-bs-control-label{text-align:right}}.bk-root .bk-bs-form-horizontal .bk-bs-has-feedback .bk-bs-form-control-feedback{top:0;right:15px}.bk-root .bk-bs-btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:12px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bk-root .bk-bs-btn:focus,.bk-root .bk-bs-btn:active:focus,.bk-root .bk-bs-btn.bk-bs-active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.bk-root .bk-bs-btn:hover,.bk-root .bk-bs-btn:focus{color:#333;text-decoration:none}.bk-root .bk-bs-btn:active,.bk-root .bk-bs-btn.bk-bs-active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.bk-root .bk-bs-btn.bk-bs-disabled,.bk-root .bk-bs-btn[disabled],fieldset[disabled] .bk-root .bk-bs-btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn-default{color:#333;background-color:#fff;border-color:#ccc}.bk-root .bk-bs-btn-default:hover,.bk-root .bk-bs-btn-default:focus,.bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-default{background-image:none}.bk-root .bk-bs-btn-default.bk-bs-disabled,.bk-root .bk-bs-btn-default[disabled],fieldset[disabled] .bk-root .bk-bs-btn-default,.bk-root .bk-bs-btn-default.bk-bs-disabled:hover,.bk-root .bk-bs-btn-default[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-default:hover,.bk-root .bk-bs-btn-default.bk-bs-disabled:focus,.bk-root .bk-bs-btn-default[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-default:focus,.bk-root .bk-bs-btn-default.bk-bs-disabled:active,.bk-root .bk-bs-btn-default[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-default[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-default.bk-bs-active{background-color:#fff;border-color:#ccc}.bk-root .bk-bs-btn-default .bk-bs-badge{color:#fff;background-color:#333}.bk-root .bk-bs-btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.bk-root .bk-bs-btn-primary:hover,.bk-root .bk-bs-btn-primary:focus,.bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-primary{background-image:none}.bk-root .bk-bs-btn-primary.bk-bs-disabled,.bk-root .bk-bs-btn-primary[disabled],fieldset[disabled] .bk-root .bk-bs-btn-primary,.bk-root .bk-bs-btn-primary.bk-bs-disabled:hover,.bk-root .bk-bs-btn-primary[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-primary:hover,.bk-root .bk-bs-btn-primary.bk-bs-disabled:focus,.bk-root .bk-bs-btn-primary[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-primary:focus,.bk-root .bk-bs-btn-primary.bk-bs-disabled:active,.bk-root .bk-bs-btn-primary[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-primary[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-primary.bk-bs-active{background-color:#428bca;border-color:#357ebd}.bk-root .bk-bs-btn-primary .bk-bs-badge{color:#428bca;background-color:#fff}.bk-root .bk-bs-btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.bk-root .bk-bs-btn-success:hover,.bk-root .bk-bs-btn-success:focus,.bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-success{color:#fff;background-color:#47a447;border-color:#398439}.bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-success{background-image:none}.bk-root .bk-bs-btn-success.bk-bs-disabled,.bk-root .bk-bs-btn-success[disabled],fieldset[disabled] .bk-root .bk-bs-btn-success,.bk-root .bk-bs-btn-success.bk-bs-disabled:hover,.bk-root .bk-bs-btn-success[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-success:hover,.bk-root .bk-bs-btn-success.bk-bs-disabled:focus,.bk-root .bk-bs-btn-success[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-success:focus,.bk-root .bk-bs-btn-success.bk-bs-disabled:active,.bk-root .bk-bs-btn-success[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-success[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-success.bk-bs-active{background-color:#5cb85c;border-color:#4cae4c}.bk-root .bk-bs-btn-success .bk-bs-badge{color:#5cb85c;background-color:#fff}.bk-root .bk-bs-btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.bk-root .bk-bs-btn-info:hover,.bk-root .bk-bs-btn-info:focus,.bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-info{background-image:none}.bk-root .bk-bs-btn-info.bk-bs-disabled,.bk-root .bk-bs-btn-info[disabled],fieldset[disabled] .bk-root .bk-bs-btn-info,.bk-root .bk-bs-btn-info.bk-bs-disabled:hover,.bk-root .bk-bs-btn-info[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-info:hover,.bk-root .bk-bs-btn-info.bk-bs-disabled:focus,.bk-root .bk-bs-btn-info[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-info:focus,.bk-root .bk-bs-btn-info.bk-bs-disabled:active,.bk-root .bk-bs-btn-info[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-info[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-info.bk-bs-active{background-color:#5bc0de;border-color:#46b8da}.bk-root .bk-bs-btn-info .bk-bs-badge{color:#5bc0de;background-color:#fff}.bk-root .bk-bs-btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.bk-root .bk-bs-btn-warning:hover,.bk-root .bk-bs-btn-warning:focus,.bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-warning{background-image:none}.bk-root .bk-bs-btn-warning.bk-bs-disabled,.bk-root .bk-bs-btn-warning[disabled],fieldset[disabled] .bk-root .bk-bs-btn-warning,.bk-root .bk-bs-btn-warning.bk-bs-disabled:hover,.bk-root .bk-bs-btn-warning[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-warning:hover,.bk-root .bk-bs-btn-warning.bk-bs-disabled:focus,.bk-root .bk-bs-btn-warning[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-warning:focus,.bk-root .bk-bs-btn-warning.bk-bs-disabled:active,.bk-root .bk-bs-btn-warning[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-warning[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-warning.bk-bs-active{background-color:#f0ad4e;border-color:#eea236}.bk-root .bk-bs-btn-warning .bk-bs-badge{color:#f0ad4e;background-color:#fff}.bk-root .bk-bs-btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.bk-root .bk-bs-btn-danger:hover,.bk-root .bk-bs-btn-danger:focus,.bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-danger{background-image:none}.bk-root .bk-bs-btn-danger.bk-bs-disabled,.bk-root .bk-bs-btn-danger[disabled],fieldset[disabled] .bk-root .bk-bs-btn-danger,.bk-root .bk-bs-btn-danger.bk-bs-disabled:hover,.bk-root .bk-bs-btn-danger[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-danger:hover,.bk-root .bk-bs-btn-danger.bk-bs-disabled:focus,.bk-root .bk-bs-btn-danger[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-danger:focus,.bk-root .bk-bs-btn-danger.bk-bs-disabled:active,.bk-root .bk-bs-btn-danger[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-danger[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-danger.bk-bs-active{background-color:#d9534f;border-color:#d43f3a}.bk-root .bk-bs-btn-danger .bk-bs-badge{color:#d9534f;background-color:#fff}.bk-root .bk-bs-btn-link{color:#428bca;font-weight:normal;cursor:pointer;border-radius:0}.bk-root .bk-bs-btn-link,.bk-root .bk-bs-btn-link:active,.bk-root .bk-bs-btn-link[disabled],fieldset[disabled] .bk-root .bk-bs-btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn-link,.bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link:focus,.bk-root .bk-bs-btn-link:active{border-color:transparent}.bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.bk-root .bk-bs-btn-link[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-link:focus{color:#999;text-decoration:none}.bk-root .bk-bs-btn-lg{padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}.bk-root .bk-bs-btn-sm{padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}.bk-root .bk-bs-btn-xs{padding:1px 5px;font-size:11px;line-height:1.5;border-radius:3px}.bk-root .bk-bs-btn-block{display:block;width:100%;padding-left:0;padding-right:0}.bk-root .bk-bs-btn-block+.bk-bs-btn-block{margin-top:5px}.bk-root input[type=\\\"submit\\\"].bk-bs-btn-block,.bk-root input[type=\\\"reset\\\"].bk-bs-btn-block,.bk-root input[type=\\\"button\\\"].bk-bs-btn-block{width:100%}.bk-root .bk-bs-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.bk-root .bk-bs-dropdown{position:relative}.bk-root .bk-bs-dropdown-toggle:focus{outline:0}.bk-root .bk-bs-dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:12px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.bk-root .bk-bs-dropdown-menu.bk-bs-pull-right{right:0;left:auto}.bk-root .bk-bs-dropdown-menu .bk-bs-divider{height:1px;margin:7.5px 0;overflow:hidden;background-color:#e5e5e5}.bk-root .bk-bs-dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.42857143;color:#333;white-space:nowrap}.bk-root .bk-bs-dropdown-menu>li>a:hover,.bk-root .bk-bs-dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a,.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#428bca}.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:focus{color:#999}.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.bk-bs-Microsoft.bk-bs-gradient(enabled = false);cursor:not-allowed}.bk-root .bk-bs-open>.bk-bs-dropdown-menu{display:block}.bk-root .bk-bs-open>a{outline:0}.bk-root .bk-bs-dropdown-menu-right{left:auto;right:0}.bk-root .bk-bs-dropdown-menu-left{left:0;right:auto}.bk-root .bk-bs-dropdown-header{display:block;padding:3px 20px;font-size:11px;line-height:1.42857143;color:#999}.bk-root .bk-bs-dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.bk-root .bk-bs-pull-right>.bk-bs-dropdown-menu{right:0;left:auto}.bk-root .bk-bs-dropup .bk-bs-caret,.bk-root .bk-bs-navbar-fixed-bottom .bk-bs-dropdown .bk-bs-caret{border-top:0;border-bottom:4px solid;content:\\\"\\\"}.bk-root .bk-bs-dropup .bk-bs-dropdown-menu,.bk-root .bk-bs-navbar-fixed-bottom .bk-bs-dropdown .bk-bs-dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.bk-root .bk-bs-navbar-right .bk-bs-dropdown-menu{left:auto;right:0}.bk-root .bk-bs-navbar-right .bk-bs-dropdown-menu-left{left:0;right:auto}}.bk-root .bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.bk-root .bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn{position:relative;float:left}.bk-root .bk-bs-btn-group>.bk-bs-btn:hover,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:hover,.bk-root .bk-bs-btn-group>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group>.bk-bs-btn:active,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:active,.bk-root .bk-bs-btn-group>.bk-bs-btn.bk-bs-active,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn.bk-bs-active{z-index:2}.bk-root .bk-bs-btn-group>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:focus{outline:0}.bk-root .bk-bs-btn-group .bk-bs-btn+.bk-bs-btn,.bk-root .bk-bs-btn-group .bk-bs-btn+.bk-bs-btn-group,.bk-root .bk-bs-btn-group .bk-bs-btn-group+.bk-bs-btn,.bk-root .bk-bs-btn-group .bk-bs-btn-group+.bk-bs-btn-group{margin-left:-1px}.bk-root .bk-bs-btn-toolbar{margin-left:-5px}.bk-root .bk-bs-btn-toolbar .bk-bs-btn-group,.bk-root .bk-bs-btn-toolbar .bk-bs-input-group{float:left}.bk-root .bk-bs-btn-toolbar>.bk-bs-btn,.bk-root .bk-bs-btn-toolbar>.bk-bs-btn-group,.bk-root .bk-bs-btn-toolbar>.bk-bs-input-group{margin-left:5px}.bk-root .bk-bs-btn-group>.bk-bs-btn:not(:first-child):not(:last-child):not(.bk-bs-dropdown-toggle){border-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:first-child{margin-left:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:first-child:not(:last-child):not(.bk-bs-dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:last-child:not(:first-child),.bk-root .bk-bs-btn-group>.bk-bs-dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group{float:left}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:not(:first-child):not(:last-child)>.bk-bs-btn{border-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:first-child>.bk-bs-btn:last-child,.bk-root .bk-bs-btn-group>.bk-bs-btn-group:first-child>.bk-bs-dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:last-child>.bk-bs-btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group .bk-bs-dropdown-toggle:active,.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle{outline:0}.bk-root .bk-bs-btn-group>.bk-bs-btn+.bk-bs-dropdown-toggle{padding-left:8px;padding-right:8px}.bk-root .bk-bs-btn-group>.bk-bs-btn-lg+.bk-bs-dropdown-toggle{padding-left:12px;padding-right:12px}.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle.bk-bs-btn-link{-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn .bk-bs-caret{margin-left:0}.bk-root .bk-bs-btn-lg .bk-bs-caret{border-width:5px 5px 0;border-bottom-width:0}.bk-root .bk-bs-dropup .bk-bs-btn-lg .bk-bs-caret{border-width:0 5px 5px}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group>.bk-bs-btn{display:block;float:none;width:100%;max-width:100%}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group>.bk-bs-btn{float:none}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn+.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn+.bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group+.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group+.bk-bs-btn-group{margin-top:-1px;margin-left:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:not(:first-child):not(:last-child){border-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:not(:first-child):not(:last-child)>.bk-bs-btn{border-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:first-child:not(:last-child)>.bk-bs-btn:last-child,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:first-child:not(:last-child)>.bk-bs-dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:last-child:not(:first-child)>.bk-bs-btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.bk-root .bk-bs-btn-group-justified>.bk-bs-btn,.bk-root .bk-bs-btn-group-justified>.bk-bs-btn-group{float:none;display:table-cell;width:1%}.bk-root .bk-bs-btn-group-justified>.bk-bs-btn-group .bk-bs-btn{width:100%}.bk-root .bk-bs-btn-group>.bk-bs-btn>input[type=\\\"radio\\\"],.bk-root .bk-bs-btn-group>.bk-bs-btn>input[type=\\\"checkbox\\\"]{display:none}.bk-root .bk-bs-input-group{position:relative;display:table;border-collapse:separate}.bk-root .bk-bs-input-group[class*=\\\"col-\\\"]{float:none;padding-left:0;padding-right:0}.bk-root .bk-bs-input-group .bk-bs-form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:42px;padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}select.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,select.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,select.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:42px;line-height:42px}textarea.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,textarea.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,textarea.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-form-control,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:auto}.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:28px;padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}select.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,select.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,select.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:28px;line-height:28px}textarea.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,textarea.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,textarea.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-form-control,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:auto}.bk-root .bk-bs-input-group-addon,.bk-root .bk-bs-input-group-btn,.bk-root .bk-bs-input-group .bk-bs-form-control{display:table-cell}.bk-root .bk-bs-input-group-addon:not(:first-child):not(:last-child),.bk-root .bk-bs-input-group-btn:not(:first-child):not(:last-child),.bk-root .bk-bs-input-group .bk-bs-form-control:not(:first-child):not(:last-child){border-radius:0}.bk-root .bk-bs-input-group-addon,.bk-root .bk-bs-input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.bk-root .bk-bs-input-group-addon{padding:6px 12px;font-size:12px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.bk-root .bk-bs-input-group-addon.bk-bs-input-sm{padding:5px 10px;font-size:11px;border-radius:3px}.bk-root .bk-bs-input-group-addon.bk-bs-input-lg{padding:10px 16px;font-size:15px;border-radius:6px}.bk-root .bk-bs-input-group-addon input[type=\\\"radio\\\"],.bk-root .bk-bs-input-group-addon input[type=\\\"checkbox\\\"]{margin-top:0}.bk-root .bk-bs-input-group .bk-bs-form-control:first-child,.bk-root .bk-bs-input-group-addon:first-child,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-dropdown-toggle,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn:not(:last-child):not(.bk-bs-dropdown-toggle),.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group:not(:last-child)>.bk-bs-btn{border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-input-group-addon:first-child{border-right:0}.bk-root .bk-bs-input-group .bk-bs-form-control:last-child,.bk-root .bk-bs-input-group-addon:last-child,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-dropdown-toggle,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn:not(:first-child),.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group:not(:first-child)>.bk-bs-btn{border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-input-group-addon:last-child{border-left:0}.bk-root .bk-bs-input-group-btn{position:relative;font-size:0;white-space:nowrap}.bk-root .bk-bs-input-group-btn>.bk-bs-btn{position:relative}.bk-root .bk-bs-input-group-btn>.bk-bs-btn+.bk-bs-btn{margin-left:-1px}.bk-root .bk-bs-input-group-btn>.bk-bs-btn:hover,.bk-root .bk-bs-input-group-btn>.bk-bs-btn:focus,.bk-root .bk-bs-input-group-btn>.bk-bs-btn:active{z-index:2}.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group{margin-right:-1px}.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group{margin-left:-1px}.bk-root .bk-bs-nav{margin-bottom:0;padding-left:0;list-style:none}.bk-root .bk-bs-nav>li{position:relative;display:block}.bk-root .bk-bs-nav>li>span{position:relative;display:block;padding:10px 15px}.bk-root .bk-bs-nav>li>span:hover,.bk-root .bk-bs-nav>li>span:focus{text-decoration:none;background-color:#eee}.bk-root .bk-bs-nav>li.bk-bs-disabled>span{color:#999}.bk-root .bk-bs-nav>li.bk-bs-disabled>span:hover,.bk-root .bk-bs-nav>li.bk-bs-disabled>span:focus{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.bk-root .bk-bs-nav-tabs{border-bottom:1px solid #ddd}.bk-root .bk-bs-nav-tabs>li{float:left;margin-bottom:-1px}.bk-root .bk-bs-nav-tabs>li>span{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.bk-root .bk-bs-nav-tabs>li>span:hover{border-color:#eee #eee #ddd;cursor:pointer}.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span,.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span:hover,.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.bk-root .bk-bs-tab-content>.bk-bs-tab-pane{display:none}.bk-root .bk-bs-tab-content>.bk-bs-active{display:block}.bk-root .pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:\\\"Helvetica Neue\\\",Helvetica,Arial,sans-serif}.bk-root .pika-single:before,.bk-root .pika-single:after{content:\\\" \\\";display:table}.bk-root .pika-single:after{clear:both}.bk-root .pika-single{*zoom:1}.bk-root .pika-single.is-hidden{display:none}.bk-root .pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,0.5)}.bk-root .pika-lendar{float:left;width:240px;margin:8px}.bk-root .pika-title{position:relative;text-align:center}.bk-root .pika-label{display:inline-block;*display:inline;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:bold;background-color:#fff}.bk-root .pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;filter:alpha(opacity=0);opacity:0}.bk-root .pika-prev,.bk-root .pika-next{display:block;cursor:pointer;position:relative;outline:0;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5;*position:absolute;*top:0}.bk-root .pika-prev:hover,.bk-root .pika-next:hover{opacity:1}.bk-root .pika-prev,.bk-root .is-rtl .pika-next{float:left;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');*left:0}.bk-root .pika-next,.bk-root .is-rtl .pika-prev{float:right;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');*right:0}.bk-root .pika-prev.is-disabled,.bk-root .pika-next.is-disabled{cursor:default;opacity:.2}.bk-root .pika-select{display:inline-block;*display:inline}.bk-root .pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.bk-root .pika-table th,.bk-root .pika-table td{width:14.285714285714286%;padding:0}.bk-root .pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:bold;text-align:center}.bk-root .pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:0;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:right;background:#f5f5f5}.bk-root .pika-week{font-size:11px;color:#999}.bk-root .is-today .pika-button{color:#3af;font-weight:bold}.bk-root .is-selected .pika-button,.bk-root .has-event .pika-button{color:#fff;font-weight:bold;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.bk-root .has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.bk-root .is-disabled .pika-button,.bk-root .is-inrange .pika-button{background:#d5e9f7}.bk-root .is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.bk-root .is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.bk-root .is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.bk-root .is-outside-current-month .pika-button{color:#999;opacity:.3}.bk-root .is-selection-disabled{pointer-events:none;cursor:default}.bk-root .pika-button:hover,.bk-root .pika-row.pick-whole-week:hover .pika-button{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.bk-root .pika-table abbr{border-bottom:0;cursor:help}.bk-root .bk-widget-box{overflow:visible;padding:5px 10px}.bk-root .bk-widget label{margin-bottom:2px}.bk-root .bk-widget{margin-top:10px}.bk-root .bk-widget h1:first-child,.bk-root .bk-widget h2:first-child,.bk-root .bk-widget h3:first-child,.bk-root .bk-widget h4:first-child,.bk-root .bk-widget h5:first-child,.bk-root .bk-widget h6:first-child,.bk-root .bk-widget p:first-child{margin-top:0}.bk-root .bk-widget-form-input{display:block;height:31px;padding:0 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px}.bk-root .bk-widget-form-input:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6)}.bk-root .bk-widget-form-input::-moz-placeholder{color:#999;opacity:1}.bk-root .bk-widget-form-input:-ms-input-placeholder{color:#999}.bk-root .bk-widget-form-input::-webkit-input-placeholder{color:#999}.bk-root .bk-widget-form-input[disabled],.bk-root .bk-widget-form-input[readonly],fieldset[disabled] .bk-root .bk-widget-form-input{cursor:not-allowed;background-color:#eee;opacity:1}textarea.bk-root .bk-widget-form-input{height:auto}.bk-root .bk-widget button{min-width:100%}.bk-root .bk-widget input[type=\\\"text\\\"]{min-width:90%}.bk-root .bk-widget select{min-width:97%}.bk-root .bk-bs-dropdown-toggle .bk-bs-caret{margin-left:5px}.bk-root .bk-bs-dropdown-menu{width:100%}.bk-root .bk-bs-nav-tabs{overflow:hidden}.bk-root .bk-slider label{margin-right:5px}.bk-root .bk-slider .bk-slider-value{display:inline-block;font-weight:600}.bk-root .bk-slider input,.bk-root .bk-slider .bk-slider-value{margin-bottom:5px}\\n/* END bokeh-widgets.min.css */\");\n",
604
+       "      console.log(\"Bokeh: injecting raw CSS\");\n",
605
+       "      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh-tables.min.css */\\n.bk-root .slick-header.ui-state-default,.bk-root .slick-headerrow.ui-state-default,.bk-root .slick-footerrow.ui-state-default{width:100%;overflow:hidden;border-left:0 !important}.bk-root .slick-header-columns,.bk-root .slick-headerrow-columns,.bk-root .slick-footerrow-columns{position:relative;white-space:nowrap;cursor:default;overflow:hidden}.bk-root .slick-header-column.ui-state-default{position:relative;display:inline-block;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:0 !important;border-top:0 !important;border-bottom:0 !important;float:left}.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;padding-left:1px;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:.1px;display:block;cursor:col-resize;width:4px;right:0;top:0;height:100%}.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:0;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 .5s;-moz-transition:all .5s;-o-transition:all .5s;transition:all .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:0}.bk-root .slick-reorder-proxy{display:inline-block;background:blue;opacity:.15;cursor:move}.bk-root .slick-reorder-guide{display:inline-block;height:2px;background:blue;opacity:.7}.bk-root .slick-selection{z-index:10;position:absolute;border:2px dashed black}.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:0;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:.5}.bk-root .slick-cell.invalid{border-color:red;-moz-animation-duration:.2s;-webkit-animation-duration:.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:.2s width;-ms-transition:.2s width;transition:.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-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:100px;cursor:default}.bk-root .slick-columnpicker li{list-style:none;margin:0;padding:0;background:0}.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-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{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAWAIcAAKrM9tno++vz/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABYAAAgUAAUIHEiwoIAACBMqXMhwIQAAAQEAOw==\\\")}.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:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .bk-data-table{font-size:11px}.bk-root .bk-data-table input[type=\\\"checkbox\\\"]{margin-left:4px;margin-right:4px}.bk-root .bk-data-table *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.bk-root .bk-data-table *:before,.bk-root .bk-data-table *:after{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.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 .bk-cell-index{border-right-color:silver;border-right-style:solid;background:#f5f5f5;text-align:right;color:gray}.bk-root .bk-header-index .slick-column-name{float:right}.bk-root .slick-row.selected .bk-cell-index{background-color:transparent}.bk-root .slick-cell{padding-left:4px;padding-right:4px}.bk-root .slick-cell.active{border-style:dashed}.bk-root .slick-cell.editable{padding-left:0;padding-right:0}.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/* END bokeh-tables.min.css */\");\n",
606
+       "    }\n",
607
+       "  ];\n",
608
+       "\n",
609
+       "  function run_inline_js() {\n",
610
+       "    \n",
611
+       "    if ((root.Bokeh !== undefined) || (force === true)) {\n",
612
+       "      for (var i = 0; i < inline_js.length; i++) {\n",
613
+       "        inline_js[i].call(root, root.Bokeh);\n",
614
+       "      }} else if (Date.now() < root._bokeh_timeout) {\n",
615
+       "      setTimeout(run_inline_js, 100);\n",
616
+       "    } else if (!root._bokeh_failed_load) {\n",
617
+       "      console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
618
+       "      root._bokeh_failed_load = true;\n",
619
+       "    } else if (force !== true) {\n",
620
+       "      var cell = $(document.getElementById(null)).parents('.cell').data().cell;\n",
621
+       "      cell.output_area.append_execute_result(NB_LOAD_WARNING)\n",
622
+       "    }\n",
623
+       "\n",
624
+       "  }\n",
625
+       "\n",
626
+       "  if (root._bokeh_is_loading === 0) {\n",
627
+       "    console.log(\"Bokeh: BokehJS loaded, going straight to plotting\");\n",
628
+       "    run_inline_js();\n",
629
+       "  } else {\n",
630
+       "    load_libs(js_urls, function() {\n",
631
+       "      console.log(\"Bokeh: BokehJS plotting callback run at\", now());\n",
632
+       "      run_inline_js();\n",
633
+       "    });\n",
634
+       "  }\n",
635
+       "}(window));"
636
+      ],
637
+      "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(null);\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) { callback() });\n    }\n    finally {\n      delete root._bokeh_onload_callbacks\n    }\n    console.info(\"Bokeh: all callbacks have finished\");\n  }\n\n  function load_libs(js_urls, callback) {\n    root._bokeh_onload_callbacks.push(callback);\n    if (root._bokeh_is_loading > 0) {\n      console.log(\"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.log(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n    root._bokeh_is_loading = js_urls.length;\n    for (var i = 0; i < js_urls.length; i++) {\n      var url = js_urls[i];\n      var s = document.createElement('script');\n      s.src = url;\n      s.async = false;\n      s.onreadystatechange = s.onload = function() {\n        root._bokeh_is_loading--;\n        if (root._bokeh_is_loading === 0) {\n          console.log(\"Bokeh: all BokehJS libraries loaded\");\n          run_callbacks()\n        }\n      };\n      s.onerror = function() {\n        console.warn(\"failed to load library \" + url);\n      };\n      console.log(\"Bokeh: injecting script tag for BokehJS library: \", url);\n      document.getElementsByTagName(\"head\")[0].appendChild(s);\n    }\n  };\n\n  var js_urls = [];\n\n  var inline_js = [\n    function(Bokeh) {\n      /* BEGIN bokeh.min.js */\n      /*!\n       * Copyright (c) 2012 - 2018, 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(t,e){var o,s,r,a,l;t.Bokeh=(o=[function(t,e,i){var n=t(153),r=t(32);i.overrides={};var o=r.clone(n);i.Models=function(t){var e=i.overrides[t]||o[t];if(null==e)throw new Error(\"Model '\"+t+\"' does not exist. This could be due to a widget\\n                     or a custom model not being registered before first usage.\");return e},i.Models.register=function(t,e){i.overrides[t]=e},i.Models.unregister=function(t){delete i.overrides[t]},i.Models.register_models=function(t,e,i){if(void 0===e&&(e=!1),null!=t)for(var n in t){var r=t[n];e||!o.hasOwnProperty(n)?o[n]=r:null!=i?i(n):console.warn(\"Model '\"+n+\"' was already registered\")}},i.register_models=i.Models.register_models,i.Models.registered_names=function(){return Object.keys(o)},i.index={}},function(t,e,o){var s=t(336),a=t(14),l=t(52),h=t(282),u=t(283),c=t(2);o.DEFAULT_SERVER_WEBSOCKET_URL=\"ws://localhost:5006/ws\",o.DEFAULT_SESSION_ID=\"default\";var _=0,p=function(){function t(t,e,i,n,r){void 0===t&&(t=o.DEFAULT_SERVER_WEBSOCKET_URL),void 0===e&&(e=o.DEFAULT_SESSION_ID),void 0===i&&(i=null),void 0===n&&(n=null),void 0===r&&(r=null),this.url=t,this.id=e,this.args_string=i,this._on_have_session_hook=n,this._on_closed_permanently_hook=r,this._number=_++,this.socket=null,this.session=null,this.closed_permanently=!1,this._current_handler=null,this._pending_ack=null,this._pending_replies={},this._receiver=new u.Receiver,a.logger.debug(\"Creating websocket \"+this._number+\" to '\"+this.url+\"' session '\"+this.id+\"'\")}return t.prototype.connect=function(){var i=this;if(this.closed_permanently)return s.Promise.reject(new Error(\"Cannot connect() a closed ClientConnection\"));if(null!=this.socket)return s.Promise.reject(new Error(\"Already connected\"));this._pending_replies={},this._current_handler=null;try{var t=this.url+\"?bokeh-protocol-version=1.0&bokeh-session-id=\"+this.id;return null!=this.args_string&&0<this.args_string.length&&(t+=\"&\"+this.args_string),this.socket=new WebSocket(t),new s.Promise(function(t,e){i.socket.binaryType=\"arraybuffer\",i.socket.onopen=function(){return i._on_open(t,e)},i.socket.onmessage=function(t){return i._on_message(t)},i.socket.onclose=function(t){return i._on_close(t)},i.socket.onerror=function(){return i._on_error(e)}})}catch(t){return a.logger.error(\"websocket creation failed to url: \"+this.url),a.logger.error(\" - \"+t),s.Promise.reject(t)}},t.prototype.close=function(){this.closed_permanently||(a.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(),null!=this._on_closed_permanently_hook&&(this._on_closed_permanently_hook(),this._on_closed_permanently_hook=null))},t.prototype._schedule_reconnect=function(t){var e=this;setTimeout(function(){e.closed_permanently||a.logger.info(\"Websocket connection \"+e._number+\" disconnected, will not attempt to reconnect\")},t)},t.prototype.send=function(t){if(null==this.socket)throw new Error(\"not connected so cannot send \"+t);t.send(this.socket)},t.prototype.send_with_reply=function(i){var n=this,t=new s.Promise(function(t,e){n._pending_replies[i.msgid()]=[t,e],n.send(i)});return t.then(function(t){if(\"ERROR\"===t.msgtype())throw new Error(\"Error reply \"+t.content.text);return t},function(t){throw t})},t.prototype._pull_doc_json=function(){var t=h.Message.create(\"PULL-DOC-REQ\",{}),e=this.send_with_reply(t);return e.then(function(t){if(!(\"doc\"in t.content))throw new Error(\"No 'doc' field in PULL-DOC-REPLY\");return t.content.doc},function(t){throw t})},t.prototype._repull_session_doc=function(){var r=this;null==this.session?a.logger.debug(\"Pulling session for first time\"):a.logger.debug(\"Repulling session\"),this._pull_doc_json().then(function(t){if(null==r.session)if(r.closed_permanently)a.logger.debug(\"Got new document after connection was already closed\");else{var e=l.Document.from_json(t),i=l.Document._compute_patch_since_json(t,e);if(0<i.events.length){a.logger.debug(\"Sending \"+i.events.length+\" changes from model construction back to server\");var n=h.Message.create(\"PATCH-DOC\",{},i);r.send(n)}r.session=new c.ClientSession(r,e,r.id),a.logger.debug(\"Created a new session from new pulled doc\"),null!=r._on_have_session_hook&&(r._on_have_session_hook(r.session),r._on_have_session_hook=null)}else r.session.document.replace_with_json(t),a.logger.debug(\"Updated existing session with new pulled doc\")},function(t){throw t}).catch(function(t){null!=console.trace&&console.trace(t),a.logger.error(\"Failed to repull session \"+t)})},t.prototype._on_open=function(t,e){var i=this;a.logger.info(\"Websocket connection \"+this._number+\" is now open\"),this._pending_ack=[t,e],this._current_handler=function(t){i._awaiting_ack_handler(t)}},t.prototype._on_message=function(t){null==this._current_handler&&a.logger.error(\"Got a message with no current handler set\");try{this._receiver.consume(t.data)}catch(t){this._close_bad_protocol(t.toString())}if(null!=this._receiver.message){var e=this._receiver.message,i=e.problem();null!=i&&this._close_bad_protocol(i),this._current_handler(e)}},t.prototype._on_close=function(t){var i=this;a.logger.info(\"Lost websocket \"+this._number+\" connection, \"+t.code+\" (\"+t.reason+\")\"),(this.socket=null)!=this._pending_ack&&(this._pending_ack[1](new Error(\"Lost websocket connection, \"+t.code+\" (\"+t.reason+\")\")),this._pending_ack=null);for(var e=function(){for(var t in i._pending_replies){var e=i._pending_replies[t];return delete i._pending_replies[t],e}return null},n=e();null!=n;)n[1](\"Disconnected\"),n=e();this.closed_permanently||this._schedule_reconnect(2e3)},t.prototype._on_error=function(t){a.logger.debug(\"Websocket error on socket \"+this._number),t(new Error(\"Could not open websocket\"))},t.prototype._close_bad_protocol=function(t){a.logger.error(\"Closing connection: \"+t),null!=this.socket&&this.socket.close(1002,t)},t.prototype._awaiting_ack_handler=function(t){var e=this;\"ACK\"===t.msgtype()?(this._current_handler=function(t){return e._steady_state_handler(t)},this._repull_session_doc(),null!=this._pending_ack&&(this._pending_ack[0](this),this._pending_ack=null)):this._close_bad_protocol(\"First message was not an ACK\")},t.prototype._steady_state_handler=function(t){if(t.reqid()in this._pending_replies){var e=this._pending_replies[t.reqid()];delete this._pending_replies[t.reqid()],e[0](t)}else this.session.handle(t)},t}();o.ClientConnection=p,o.pull_session=function(i,n,r){return new s.Promise(function(t,e){return new p(i,n,r,function(e){try{t(e)}catch(t){throw a.logger.error(\"Promise handler threw an error, closing session \"+t),e.close(),t}},function(){e(new Error(\"Connection was closed before we successfully pulled a session\"))}).connect().then(function(t){},function(t){throw a.logger.error(\"Failed to connect to Bokeh server \"+t),t})})}},function(t,e,i){var n=t(14),r=t(52),o=t(282),s=function(){function t(t,e,i){var n=this;this._connection=t,this.document=e,this.id=i,this._document_listener=function(t){return n._document_changed(t)},this.document.on_change(this._document_listener),this.event_manager=this.document.event_manager,this.event_manager.session=this}return t.prototype.handle=function(t){var e=t.msgtype();\"PATCH-DOC\"===e?this._handle_patch(t):\"OK\"===e?this._handle_ok(t):\"ERROR\"===e?this._handle_error(t):n.logger.debug(\"Doing nothing with message \"+t.msgtype())},t.prototype.close=function(){this._connection.close()},t.prototype.send_event=function(t){var e=o.Message.create(\"EVENT\",{},JSON.stringify(t));this._connection.send(e)},t.prototype._connection_closed=function(){this.document.remove_on_change(this._document_listener)},t.prototype.request_server_info=function(){var t=o.Message.create(\"SERVER-INFO-REQ\",{}),e=this._connection.send_with_reply(t);return e.then(function(t){return t.content})},t.prototype.force_roundtrip=function(){return this.request_server_info().then(function(t){})},t.prototype._document_changed=function(t){if(t.setter_id!==this.id&&(!(t instanceof r.ModelChangedEvent)||t.attr in t.model.serializable_attributes())){var e=o.Message.create(\"PATCH-DOC\",{},this.document.create_json_patch([t]));this._connection.send(e)}},t.prototype._handle_patch=function(t){this.document.apply_json_patch(t.content,t.buffers,this.id)},t.prototype._handle_ok=function(t){n.logger.trace(\"Unhandled OK reply to \"+t.reqid())},t.prototype._handle_error=function(t){n.logger.error(\"Unhandled ERROR reply to \"+t.reqid()+\": \"+t.content.text)},t}();i.ClientSession=s},function(t,e,i){var n=t(391),r=t(14),o=t(32),s={};function a(e){return function(t){t.prototype.event_name=e,s[e]=t}}i.register_event_class=a,i.register_with_event=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=t.prototype.applicable_models.concat(e);t.prototype.applicable_models=n};var l=function(){function t(t){void 0===t&&(t={}),this.model_id=null,(this._options=t).model_id&&(this.model_id=t.model_id)}return t.prototype.set_model_id=function(t){return this._options.model_id=t,this.model_id=t,this},t.prototype.is_applicable_to=function(e){return this.applicable_models.some(function(t){return e instanceof t})},t.event_class=function(t){if(t.type)return s[t.type];r.logger.warn(\"BokehEvent.event_class required events with a string type attribute\")},t.prototype.toJSON=function(){return{event_name:this.event_name,event_values:o.clone(this._options)}},t.prototype._customize_event=function(t){return this},t}();(i.BokehEvent=l).prototype.applicable_models=[];var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"button_click\")],e)}(l);i.ButtonClick=h;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(l),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"lodstart\")],e)}(i.UIEvent=u);i.LODStart=c;var _=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"lodend\")],e)}(u);i.LODEnd=_;var p=function(i){function t(t){var e=i.call(this,t)||this;return e.geometry=t.geometry,e.final=t.final,e}return n.__extends(t,i),t=n.__decorate([a(\"selectiongeometry\")],t)}(u);i.SelectionGeometry=p;var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"reset\")],e)}(u);i.Reset=d;var f=function(i){function t(t){var e=i.call(this,t)||this;return e.sx=t.sx,e.sy=t.sy,e.x=null,e.y=null,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,model_id:e})},t.prototype._customize_event=function(t){var e=t.plot_canvas.frame.xscales.default,i=t.plot_canvas.frame.yscales.default;return this.x=e.invert(this.sx),this.y=i.invert(this.sy),this._options.x=this.x,this._options.y=this.y,this},t}(u),v=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.delta_x=t.delta_x,e.delta_y=t.delta_y,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,delta_x:t.deltaX,delta_y:t.deltaY,direction:t.direction,model_id:e})},t=n.__decorate([a(\"pan\")],t)}(i.PointEvent=f);i.Pan=v;var m=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.scale=t.scale,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,scale:t.scale,model_id:e})},t=n.__decorate([a(\"pinch\")],t)}(f);i.Pinch=m;var g=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.delta=t.delta,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,delta:t.delta,model_id:e})},t=n.__decorate([a(\"wheel\")],t)}(f);i.MouseWheel=g;var y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mousemove\")],e)}(f);i.MouseMove=y;var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mouseenter\")],e)}(f);i.MouseEnter=b;var x=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mouseleave\")],e)}(f);i.MouseLeave=x;var w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"tap\")],e)}(f);i.Tap=w;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"doubletap\")],e)}(f);i.DoubleTap=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"press\")],e)}(f);i.Press=S;var C=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"panstart\")],e)}(f);i.PanStart=C;var T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"panend\")],e)}(f);i.PanEnd=T;var A=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"pinchstart\")],e)}(f);i.PinchStart=A;var E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"pinchend\")],e)}(f);i.PinchEnd=E},function(t,e,i){var g=t(391),y=t(21);i.build_views=function(e,t,i,n){void 0===n&&(n=function(t){return t.default_view});for(var r=y.difference(Object.keys(e),t.map(function(t){return t.id})),o=0,s=r;o<s.length;o++){var a=s[o];e[a].remove(),delete e[a]}for(var l=[],h=t.filter(function(t){return null==e[t.id]}),u=0,c=h;u<c.length;u++){var _=c[u],p=n(_),d=g.__assign({},i,{model:_,connect_signals:!1}),f=new p(d);e[_.id]=f,l.push(f)}for(var v=0,m=l;v<m.length;v++){var f=m[v];f.connect_signals()}return l},i.remove_views=function(t){for(var e in t)t[e].remove(),delete t[e]}},function(t,e,i){var n,y=t(44),r=function(g){return function(t){void 0===t&&(t={});for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=document.createElement(g);for(var r in t){var o=t[r];if(null!=o&&(!y.isBoolean(o)||o))if(\"class\"===r&&y.isArray(o))for(var s=0,a=o;s<a.length;s++){var l=a[s];null!=l&&n.classList.add(l)}else if(\"style\"===r&&y.isPlainObject(o))for(var h in o)n.style[h]=o[h];else if(\"data\"===r&&y.isPlainObject(o))for(var u in o)n.dataset[u]=o[u];else n.setAttribute(r,o)}function c(t){if(t instanceof HTMLElement)n.appendChild(t);else if(y.isString(t))n.appendChild(document.createTextNode(t));else if(null!=t&&!1!==t)throw new Error(\"expected an HTMLElement, string, false or null, got \"+JSON.stringify(t))}for(var _=0,p=e;_<p.length;_++){var d=p[_];if(y.isArray(d))for(var f=0,v=d;f<v.length;f++){var m=v[f];c(m)}else c(d)}return n}};function o(t,e){var i=Element.prototype,n=i.matches||i.webkitMatchesSelector||i.mozMatchesSelector||i.msMatchesSelector;return n.call(t,e)}i.createElement=function(t,e){for(var i=[],n=2;n<arguments.length;n++)i[n-2]=arguments[n];return r(t).apply(void 0,[e].concat(i))},i.div=r(\"div\"),i.span=r(\"span\"),i.link=r(\"link\"),i.style=r(\"style\"),i.a=r(\"a\"),i.p=r(\"p\"),i.i=r(\"i\"),i.pre=r(\"pre\"),i.button=r(\"button\"),i.label=r(\"label\"),i.input=r(\"input\"),i.select=r(\"select\"),i.option=r(\"option\"),i.optgroup=r(\"optgroup\"),i.textarea=r(\"textarea\"),i.canvas=r(\"canvas\"),i.ul=r(\"ul\"),i.ol=r(\"ol\"),i.li=r(\"li\"),i.nbsp=document.createTextNode(\" \"),i.removeElement=function(t){var e=t.parentNode;null!=e&&e.removeChild(t)},i.replaceWith=function(t,e){var i=t.parentNode;null!=i&&i.replaceChild(e,t)},i.prepend=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];for(var n=t.firstChild,r=0,o=e;r<o.length;r++){var s=o[r];t.insertBefore(s,n)}},i.empty=function(t){for(var e;e=t.firstChild;)t.removeChild(e)},i.show=function(t){t.style.display=\"\"},i.hide=function(t){t.style.display=\"none\"},i.position=function(t){return{top:t.offsetTop,left:t.offsetLeft}},i.offset=function(t){var e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset-document.documentElement.clientTop,left:e.left+window.pageXOffset-document.documentElement.clientLeft}},i.matches=o,i.parent=function(t,e){for(var i=t;i=i.parentElement;)if(o(i,e))return i;return null},i.margin=function(t){var e=getComputedStyle(t);return{top:parseFloat(e.marginTop)||0,bottom:parseFloat(e.marginBottom)||0,left:parseFloat(e.marginLeft)||0,right:parseFloat(e.marginRight)||0}},i.padding=function(t){var e=getComputedStyle(t);return{top:parseFloat(e.paddingTop)||0,bottom:parseFloat(e.paddingBottom)||0,left:parseFloat(e.paddingLeft)||0,right:parseFloat(e.paddingRight)||0}},(n=i.Keys||(i.Keys={}))[n.Backspace=8]=\"Backspace\",n[n.Tab=9]=\"Tab\",n[n.Enter=13]=\"Enter\",n[n.Esc=27]=\"Esc\",n[n.PageUp=33]=\"PageUp\",n[n.PageDown=34]=\"PageDown\",n[n.Left=37]=\"Left\",n[n.Up=38]=\"Up\",n[n.Right=39]=\"Right\",n[n.Down=40]=\"Down\",n[n.Delete=46]=\"Delete\"},function(t,e,i){var n=t(391),r=t(48),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._has_finished=!1,this.el=this._createElement()},t.prototype.remove=function(){o.removeElement(this.el),e.prototype.remove.call(this)},t.prototype.css_classes=function(){return[]},t.prototype.cursor=function(t,e){return null},t.prototype.layout=function(){},t.prototype.render=function(){},t.prototype.renderTo=function(t){t.appendChild(this.el),this.layout()},t.prototype.has_finished=function(){return this._has_finished},Object.defineProperty(t.prototype,\"_root_element\",{get:function(){return o.parent(this.el,\".bk-root\")||document.body},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"solver\",{get:function(){return this.is_root?this._solver:this.parent.solver},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_idle\",{get:function(){return this.has_finished()},enumerable:!0,configurable:!0}),t.prototype._createElement=function(){return o.createElement(this.tagName,{id:this.id,class:this.css_classes()})},t}(r.View);(i.DOMView=s).prototype.tagName=\"div\"},function(t,e,i){i.AngleUnits=[\"deg\",\"rad\"],i.Dimension=[\"width\",\"height\"],i.Dimensions=[\"width\",\"height\",\"both\"],i.Direction=[\"clock\",\"anticlock\"],i.FontStyle=[\"normal\",\"italic\",\"bold\",\"bold italic\"],i.LatLon=[\"lat\",\"lon\"],i.LineCap=[\"butt\",\"round\",\"square\"],i.LineJoin=[\"miter\",\"round\",\"bevel\"],i.Location=[\"above\",\"below\",\"left\",\"right\"],i.LegendClickPolicy=[\"none\",\"hide\",\"mute\"],i.LegendLocation=[\"top_left\",\"top_center\",\"top_right\",\"center_left\",\"center\",\"center_right\",\"bottom_left\",\"bottom_center\",\"bottom_right\"],i.Anchor=i.LegendLocation,i.Orientation=[\"vertical\",\"horizontal\"],i.OutputBackend=[\"canvas\",\"svg\",\"webgl\"],i.RenderLevel=[\"image\",\"underlay\",\"glyph\",\"annotation\",\"overlay\"],i.RenderMode=[\"canvas\",\"css\"],i.Side=[\"above\",\"below\",\"left\",\"right\"],i.Place=[\"above\",\"below\",\"left\",\"right\",\"center\"],i.SpatialUnits=[\"screen\",\"data\"],i.StartEnd=[\"start\",\"end\"],i.VerticalAlign=[\"top\",\"middle\",\"bottom\"],i.TextAlign=[\"left\",\"right\",\"center\"],i.TextBaseline=[\"top\",\"middle\",\"bottom\",\"alphabetic\",\"hanging\",\"ideographic\"],i.TickLabelOrientation=[\"vertical\",\"horizontal\",\"parallel\",\"normal\"],i.TooltipAttachment=[\"horizontal\",\"vertical\",\"left\",\"right\",\"above\",\"below\"],i.Distribution=[\"uniform\",\"normal\"],i.StepMode=[\"after\",\"before\",\"center\"],i.SizingMode=[\"stretch_both\",\"scale_width\",\"scale_height\",\"scale_both\",\"fixed\"],i.PaddingUnits=[\"percent\",\"absolute\"],i.SliderCallbackPolicy=[\"continuous\",\"throttle\",\"mouseup\"],i.RoundingFunction=[\"round\",\"nearest\",\"floor\",\"rounddown\",\"ceil\",\"roundup\"],i.UpdateMode=[\"replace\",\"append\"],i.HTTPMethod=[\"POST\",\"GET\"],i.Logo=[\"normal\",\"grey\"]},function(t,e,i){var o=t(391),l=t(19),n=t(16),h=t(34),r=t(15),u=t(38),s=t(21),_=t(32),p=t(44),d=t(30),a=function(a){function c(t){void 0===t&&(t={});var e=a.call(this)||this;for(var i in e._subtype=void 0,e.document=null,e.destroyed=new l.Signal0(e,\"destroyed\"),e.change=new l.Signal0(e,\"change\"),e.transformchange=new l.Signal0(e,\"transformchange\"),e.attributes={},e.properties={},e._set_after_defaults={},e._pending=!1,e._changing=!1,e.props){var n=e.props[i],r=n.type,o=n.default_value;if(null==r)throw new Error(\"undefined property type for \"+e.type+\".\"+i);e.properties[i]=new r(e,i,o)}null==t.id&&e.setv({id:u.uniqueId()},{silent:!0});var s=t.__deferred__||!1;return s&&delete(t=_.clone(t)).__deferred__,e.setv(t,{silent:!0}),s||e.finalize(),e}return o.__extends(c,a),c.initClass=function(){this.prototype.type=\"HasProps\",this.prototype.props={},this.prototype.mixins=[],this.define({id:[r.Any]})},c._fix_default=function(t,e){return void 0===t?void 0:p.isFunction(t)?t:p.isObject(t)?p.isArray(t)?function(){return s.copy(t)}:function(){return _.clone(t)}:function(){return t}},c.define=function(a){var t=function(i){var t=a[i];if(null!=l.prototype.props[i])throw new Error(\"attempted to redefine property '\"+l.prototype.type+\".\"+i+\"'\");if(null!=l.prototype[i])throw new Error(\"attempted to redefine attribute '\"+l.prototype.type+\".\"+i+\"'\");Object.defineProperty(l.prototype,i,{get:function(){var t=this.getv(i);return t},set:function(t){var e;return this.setv(((e={})[i]=t,e)),this},configurable:!1,enumerable:!0});var e=t[0],n=t[1],r=t[2],o={type:e,default_value:l._fix_default(n,i),internal:r||!1},s=_.clone(l.prototype.props);s[i]=o,l.prototype.props=s},l=this;for(var e in a)t(e)},c.internal=function(t){var e={};for(var i in t){var n=t[i],r=n[0],o=n[1];e[i]=[r,o,!0]}this.define(e)},c.mixin=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];this.define(n.create(t));var i=this.prototype.mixins.concat(t);this.prototype.mixins=i},c.mixins=function(t){this.mixin.apply(this,t)},c.override=function(t){for(var e in t){var i=this._fix_default(t[e],e),n=this.prototype.props[e];if(null==n)throw new Error(\"attempted to override nonexistent '\"+this.prototype.type+\".\"+e+\"'\");var r=_.clone(this.prototype.props);r[e]=o.__assign({},n,{default_value:i}),this.prototype.props=r}},c.prototype.toString=function(){return this.type+\"(\"+this.id+\")\"},c.prototype.finalize=function(){var t=this;for(var e in this.properties){var i=this.properties[e];i.update(),null!=i.spec.transform&&this.connect(i.spec.transform.change,function(){return t.transformchange.emit()})}this.initialize(),this.connect_signals()},c.prototype.initialize=function(){},c.prototype.connect_signals=function(){},c.prototype.disconnect_signals=function(){l.Signal.disconnectReceiver(this)},c.prototype.destroy=function(){this.disconnect_signals(),this.destroyed.emit()},c.prototype.clone=function(){return new this.constructor(this.attributes)},c.prototype._setv=function(t,e){var i=e.check_eq,n=e.silent,r=[],o=this._changing;this._changing=!0;var s=this.attributes;for(var a in t){var l=t[a];!1!==i&&d.isEqual(s[a],l)||r.push(a),s[a]=l}if(!n){0<r.length&&(this._pending=!0);for(var h=0;h<r.length;h++)this.properties[r[h]].change.emit()}if(!o){if(!n&&!e.no_change)for(;this._pending;)this._pending=!1,this.change.emit();this._pending=!1,this._changing=!1}},c.prototype.setv=function(t,e){for(var i in void 0===e&&(e={}),t)if(t.hasOwnProperty(i)){var n=i;if(null==this.props[n])throw new Error(\"property \"+this.type+\".\"+n+\" wasn't declared\");null!=e&&e.defaults||(this._set_after_defaults[i]=!0)}if(!_.isEmpty(t)){var r={};for(var i in t)r[i]=this.getv(i);this._setv(t,e);var o=e.silent;if(null==o||!o)for(var i in t)this._tell_document_about_change(i,r[i],this.getv(i),e)}},c.prototype.getv=function(t){if(null==this.props[t])throw new Error(\"property \"+this.type+\".\"+t+\" wasn't declared\");return this.attributes[t]},c.prototype.ref=function(){return h.create_ref(this)},c.prototype.set_subtype=function(t){this._subtype=t},c.prototype.attribute_is_serializable=function(t){var e=this.props[t];if(null==e)throw new Error(this.type+\".attribute_is_serializable('\"+t+\"'): \"+t+\" wasn't declared\");return!e.internal},c.prototype.serializable_attributes=function(){var t={};for(var e in this.attributes){var i=this.attributes[e];this.attribute_is_serializable(e)&&(t[e]=i)}return t},c._value_to_json=function(t,e,i){if(e instanceof c)return e.ref();if(p.isArray(e)){for(var n=[],r=0;r<e.length;r++){var o=e[r];n.push(c._value_to_json(r.toString(),o,e))}return n}if(p.isPlainObject(e)){var s={};for(var a in e)e.hasOwnProperty(a)&&(s[a]=c._value_to_json(a,e[a],e));return s}return e},c.prototype.attributes_as_json=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=c._value_to_json);var i=this.serializable_attributes(),n={};for(var r in i)if(i.hasOwnProperty(r)){var o=i[r];t?n[r]=o:r in this._set_after_defaults&&(n[r]=o)}return e(\"attributes\",n,this)},c._json_record_references=function(t,e,i,n){if(null==e);else if(h.is_ref(e)){if(!(e.id in i)){var r=t.get_model_by_id(e.id);c._value_record_references(r,i,n)}}else if(p.isArray(e))for(var o=0,s=e;o<s.length;o++){var a=s[o];c._json_record_references(t,a,i,n)}else if(p.isPlainObject(e))for(var l in e)if(e.hasOwnProperty(l)){var a=e[l];c._json_record_references(t,a,i,n)}},c._value_record_references=function(t,e,i){if(null==t);else if(t instanceof c){if(!(t.id in e)&&(e[t.id]=t,i))for(var n=t._immediate_references(),r=0,o=n;r<o.length;r++){var s=o[r];c._value_record_references(s,e,!0)}}else if(t.buffer instanceof ArrayBuffer);else if(p.isArray(t))for(var a=0,l=t;a<l.length;a++){var h=l[a];c._value_record_references(h,e,i)}else if(p.isPlainObject(t))for(var u in t)if(t.hasOwnProperty(u)){var h=t[u];c._value_record_references(h,e,i)}},c.prototype._immediate_references=function(){var t={},e=this.serializable_attributes();for(var i in e){var n=e[i];c._value_record_references(n,t,!1)}return _.values(t)},c.prototype.references=function(){var t={};return c._value_record_references(this,t,!0),_.values(t)},c.prototype._doc_attached=function(){},c.prototype.attach_document=function(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()},c.prototype.detach_document=function(){this.document=null},c.prototype._tell_document_about_change=function(t,e,i,n){if(this.attribute_is_serializable(t)&&null!=this.document){var r={};c._value_record_references(i,r,!1);var o={};c._value_record_references(e,o,!1);var s=!1;for(var a in r)if(!(a in o)){s=!0;break}if(!s)for(var l in o)if(!(l in r)){s=!0;break}s&&this.document._invalidate_all_models(),this.document._notify_change(this,t,e,i,n)}},c.prototype.materialize_dataspecs=function(t){var e={};for(var i in this.properties){var n=this.properties[i];n.dataspec&&(!n.optional||null!=n.spec.value||i in this._set_after_defaults)&&(e[\"_\"+i]=n.array(t),null!=n.spec.field&&n.spec.field in t._shapes&&(e[\"_\"+i+\"_shape\"]=t._shapes[n.spec.field]),n instanceof r.DistanceSpec&&(e[\"max_\"+i]=s.max(e[\"_\"+i])))}return e},c}(l.Signalable());(i.HasProps=a).initClass()},function(t,e,i){var n=t(21),r=t(197);function o(t){return t*t}function s(t,e){return o(t.x-e.x)+o(t.y-e.y)}function a(t,e,i){var n=s(e,i);if(0==n)return s(t,e);var r=((t.x-e.x)*(i.x-e.x)+(t.y-e.y)*(i.y-e.y))/n;if(r<0)return s(t,e);if(1<r)return s(t,i);var o={x:e.x+r*(i.x-e.x),y:e.y+r*(i.y-e.y)};return s(t,o)}i.point_in_poly=function(t,e,i,n){for(var r=!1,o=i[i.length-1],s=n[n.length-1],a=0;a<i.length;a++){var l=i[a],h=n[a];s<e!=h<e&&o+(e-s)/(h-s)*(l-o)<t&&(r=!r),o=l,s=h}return r},i.point_in_ellipse=function(t,e,i,n,r,o,s){var a=Math.pow(Math.cos(i)/r,2)+Math.pow(Math.sin(i)/n,2),l=2*Math.cos(i)*Math.sin(i)*(Math.pow(1/r,2)-Math.pow(1/n,2)),h=Math.pow(Math.cos(i)/n,2)+Math.pow(Math.sin(i)/r,2);return a*Math.pow(t-o,2)+l*(t-o)*(e-s)+h*Math.pow(e-s,2)<=1},i.create_empty_hit_test_result=function(){return new r.Selection},i.create_hit_test_result_from_hits=function(t){var e=new r.Selection;return e.indices=n.sortBy(t,function(t){return t[0],t[1]}).map(function(t){var e=t[0];return t[1],e}),e},i.validate_bbox_coords=function(t,e){var i,n,r=t[0],o=t[1],s=e[0],a=e[1];return o<r&&(r=(i=[o,r])[0],o=i[1]),a<s&&(s=(n=[a,s])[0],a=n[1]),{minX:r,minY:s,maxX:o,maxY:a}},i.dist_2_pts=s,i.dist_to_segment_squared=a,i.dist_to_segment=function(t,e,i){return Math.sqrt(a(t,e,i))},i.check_2_segments_intersect=function(t,e,i,n,r,o,s,a){var l=(a-o)*(i-t)-(s-r)*(n-e);if(0==l)return{hit:!1,x:null,y:null};var h=e-o,u=t-r,c=(s-r)*h-(a-o)*u,_=(i-t)*h-(n-e)*u;u=_/l;var p=t+(h=c/l)*(i-t),d=e+h*(n-e);return{hit:0<h&&h<1&&0<u&&u<1,x:p,y:d}}},function(t,e,i){var s=t(13),a=t(21);i.vstack=function(t,e){var i=[];if(0<e.length){i.push(s.EQ(a.head(e)._bottom,[-1,t._bottom])),i.push(s.EQ(a.tail(e)._top,[-1,t._top])),i.push.apply(i,a.pairwise(e,function(t,e){return s.EQ(t._top,[-1,e._bottom])}));for(var n=0,r=e;n<r.length;n++){var o=r[n];i.push(s.EQ(o._left,[-1,t._left])),i.push(s.EQ(o._right,[-1,t._right]))}}return i},i.hstack=function(t,e){var i=[];if(0<e.length){i.push(s.EQ(a.head(e)._right,[-1,t._right])),i.push(s.EQ(a.tail(e)._left,[-1,t._left])),i.push.apply(i,a.pairwise(e,function(t,e){return s.EQ(t._left,[-1,e._right])}));for(var n=0,r=e;n<r.length;n++){var o=r[n];i.push(s.EQ(o._top,[-1,t._top])),i.push(s.EQ(o._bottom,[-1,t._bottom]))}}return i}},function(t,e,i){var n=t(391),r=t(13),o=t(8),s=t(24),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutCanvas\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._top=new r.Variable(this.toString()+\".top\"),this._left=new r.Variable(this.toString()+\".left\"),this._width=new r.Variable(this.toString()+\".width\"),this._height=new r.Variable(this.toString()+\".height\"),this._right=new r.Variable(this.toString()+\".right\"),this._bottom=new r.Variable(this.toString()+\".bottom\");var t=this;this._hcenter={get value(){return(t._left.value+t._right.value)/2}},this._vcenter={get value(){return(t._top.value+t._bottom.value)/2}}},t.prototype.get_editables=function(){return[]},t.prototype.get_constraints=function(){return[r.GE(this._top),r.GE(this._bottom),r.GE(this._left),r.GE(this._right),r.GE(this._width),r.GE(this._height),r.EQ(this._left,this._width,[-1,this._right]),r.EQ(this._top,this._height,[-1,this._bottom])]},t.prototype.get_layoutable_children=function(){return[]},Object.defineProperty(t.prototype,\"bbox\",{get:function(){return new s.BBox({x0:this._left.value,y0:this._top.value,x1:this._right.value,y1:this._bottom.value})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"layout_bbox\",{get:function(){return{top:this._top.value,left:this._left.value,width:this._width.value,height:this._height.value,right:this._right.value,bottom:this._bottom.value}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"xview\",{get:function(){var r=this;return{compute:function(t){return r._left.value+t},v_compute:function(t){for(var e=new Float64Array(t.length),i=r._left.value,n=0;n<t.length;n++)e[n]=i+t[n];return e}}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"yview\",{get:function(){var r=this;return{compute:function(t){return r._bottom.value-t},v_compute:function(t){for(var e=new Float64Array(t.length),i=r._bottom.value,n=0;n<t.length;n++)e[n]=i-t[n];return e}}},enumerable:!0,configurable:!0}),t}(o.HasProps);(i.LayoutCanvas=a).initClass()},function(t,e,r){var i=t(391),o=t(13),n=t(11),s=t(15),a=t(14),l=t(44),h=Math.PI/2,u=\"alphabetic\",c=\"middle\",_=\"hanging\",p=\"left\",d=\"right\",f=\"center\",v={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}},m={above:{justified:\"top\",parallel:u,normal:c,horizontal:u,vertical:c},below:{justified:\"bottom\",parallel:_,normal:c,horizontal:_,vertical:c},left:{justified:\"top\",parallel:u,normal:c,horizontal:c,vertical:u},right:{justified:\"top\",parallel:u,normal:c,horizontal:c,vertical:u}},g={above:{justified:f,parallel:f,normal:p,horizontal:f,vertical:p},below:{justified:f,parallel:f,normal:p,horizontal:f,vertical:p},left:{justified:f,parallel:f,normal:d,horizontal:d,vertical:f},right:{justified:f,parallel:f,normal:p,horizontal:p,vertical:f}},y={above:d,below:p,left:d,right:p},b={above:p,below:d,left:d,right:p};function x(t){return\"panel\"in t}r.isSizeable=x,r.isSizeableView=function(t){return x(t.model)&&\"get_size\"in t},r._view_sizes=new WeakMap,r._view_constraints=new WeakMap,r.update_panel_constraints=function(t){var e=t.solver,i=t.get_size(),n=r._view_constraints.get(t);if(null!=n&&e.has_constraint(n)){if(r._view_sizes.get(t)===i)return;e.remove_constraint(n)}n=o.GE(t.model.panel._size,-i),e.add_constraint(n),r._view_sizes.set(t,i),r._view_constraints.set(t,n)};var w=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"SidePanel\",this.internal({side:[s.String]})},t.prototype.toString=function(){return this.type+\"(\"+this.id+\", \"+this.side+\")\"},t.prototype.initialize=function(){switch(e.prototype.initialize.call(this),this.side){case\"above\":this._dim=0,this._normals=[0,-1],this._size=this._height;break;case\"below\":this._dim=0,this._normals=[0,1],this._size=this._height;break;case\"left\":this._dim=1,this._normals=[-1,0],this._size=this._width;break;case\"right\":this._dim=1,this._normals=[1,0],this._size=this._width;break;default:a.logger.error(\"unrecognized side: '\"+this.side+\"'\")}},Object.defineProperty(t.prototype,\"dimension\",{get:function(){return this._dim},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"normals\",{get:function(){return this._normals},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_horizontal\",{get:function(){return\"above\"==this.side||\"below\"==this.side},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_vertical\",{get:function(){return\"left\"==this.side||\"right\"==this.side},enumerable:!0,configurable:!0}),t.prototype.apply_label_text_heuristics=function(t,e){var i,n,r=this.side;l.isString(e)?(i=m[r][e],n=g[r][e]):0===e?n=i=\"whatever\":e<0?(i=\"middle\",n=y[r]):(i=\"middle\",n=b[r]),t.textBaseline=i,t.textAlign=n},t.prototype.get_label_angle_heuristic=function(t){return v[this.side][t]},t}(n.LayoutCanvas);(r.SidePanel=w).initClass()},function(t,e,i){var n=t(350);function r(i){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new n.Constraint(new(n.Expression.bind.apply(n.Expression,[void 0].concat(t))),i)}}function o(i){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new n.Constraint(new(n.Expression.bind.apply(n.Expression,[void 0].concat(t))),i,n.Strength.weak)}}i.Variable=n.Variable,i.Expression=n.Expression,i.Constraint=n.Constraint,i.Operator=n.Operator,i.Strength=n.Strength,i.EQ=r(n.Operator.Eq),i.LE=r(n.Operator.Le),i.GE=r(n.Operator.Ge),i.WEAK_EQ=o(n.Operator.Eq),i.WEAK_LE=o(n.Operator.Le),i.WEAK_GE=o(n.Operator.Ge);var s=function(){function t(){this.solver=new n.Solver}return t.prototype.clear=function(){this.solver=new n.Solver},t.prototype.toString=function(){return\"Solver(num_constraints=\"+this.num_constraints+\", num_editables=\"+this.num_editables+\")\"},Object.defineProperty(t.prototype,\"num_constraints\",{get:function(){return this.solver.numConstraints},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"num_editables\",{get:function(){return this.solver.numEditVariables},enumerable:!0,configurable:!0}),t.prototype.get_constraints=function(){return this.solver.getConstraints()},t.prototype.update_variables=function(){this.solver.updateVariables()},t.prototype.has_constraint=function(t){return this.solver.hasConstraint(t)},t.prototype.add_constraint=function(e){try{this.solver.addConstraint(e)}catch(t){throw new Error(t.message+\": \"+e.toString())}},t.prototype.remove_constraint=function(t){this.solver.removeConstraint(t)},t.prototype.add_edit_variable=function(t,e){this.solver.addEditVariable(t,e)},t.prototype.remove_edit_variable=function(t){this.solver.removeEditVariable(t)},t.prototype.suggest_value=function(t,e){this.solver.suggestValue(t,e)},t}();i.Solver=s},function(t,e,i){var o=t(44),n={},s=function(t,e){this.name=t,this.level=e};i.LogLevel=s;var r=function(){function r(t,e){void 0===e&&(e=r.INFO),this._name=t,this.set_level(e)}return Object.defineProperty(r,\"levels\",{get:function(){return Object.keys(r.log_levels)},enumerable:!0,configurable:!0}),r.get=function(t,e){if(void 0===e&&(e=r.INFO),0<t.length){var i=n[t];return null==i&&(n[t]=i=new r(t,e)),i}throw new TypeError(\"Logger.get() expects a non-empty string name and an optional log-level\")},Object.defineProperty(r.prototype,\"level\",{get:function(){return this.get_level()},enumerable:!0,configurable:!0}),r.prototype.get_level=function(){return this._log_level},r.prototype.set_level=function(t){if(t instanceof s)this._log_level=t;else{if(!o.isString(t)||null==r.log_levels[t])throw new Error(\"Logger.set_level() expects a log-level object or a string name of a log-level\");this._log_level=r.log_levels[t]}var e=\"[\"+this._name+\"]\";for(var i in r.log_levels){var n=r.log_levels[i];n.level<this._log_level.level||this._log_level.level===r.OFF.level?this[i]=function(){}:this[i]=a(i,e)}},r.prototype.trace=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.debug=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.info=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.warn=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.error=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.TRACE=new s(\"trace\",0),r.DEBUG=new s(\"debug\",1),r.INFO=new s(\"info\",2),r.WARN=new s(\"warn\",6),r.ERROR=new s(\"error\",7),r.FATAL=new s(\"fatal\",8),r.OFF=new s(\"off\",9),r.log_levels={trace:r.TRACE,debug:r.DEBUG,info:r.INFO,warn:r.WARN,error:r.ERROR,fatal:r.FATAL,off:r.OFF},r}();function a(t,e){return null!=console[t]?console[t].bind(console,e):null!=console.log?console.log.bind(console,e):function(){}}i.Logger=r,i.logger=r.get(\"bokeh\"),i.set_log_level=function(t){null==r.log_levels[t]?(console.log(\"[bokeh] unrecognized logging level '\"+t+\"' passed to Bokeh.set_log_level(), ignoring\"),console.log(\"[bokeh] valid log levels are: \"+r.levels.join(\", \"))):(console.log(\"[bokeh] setting log level to: '\"+t+\"'\"),i.logger.set_level(t))}},function(t,e,i){var o=t(391),s=t(19),n=t(7),r=t(39),a=t(27),l=t(21),h=t(22),u=t(44);function c(e){try{return JSON.stringify(e)}catch(t){return e.toString()}}function _(t){return u.isPlainObject(t)&&(void 0===t.value?0:1)+(void 0===t.field?0:1)+(void 0===t.expr?0:1)==1}s.Signal,i.isSpec=_;var p=function(r){function t(t,e,i){var n=r.call(this)||this;return n.obj=t,n.attr=e,n.default_value=i,n.optional=!1,n.obj=t,n.attr=e,n.default_value=i,n.change=new s.Signal0(n.obj,\"change\"),n._init(),n.connect(n.change,function(){return n._init()}),n}return o.__extends(t,r),t.prototype.update=function(){this._init()},t.prototype.init=function(){},t.prototype.transform=function(t){return t},t.prototype.validate=function(t){},t.prototype.value=function(t){if(void 0===t&&(t=!0),void 0===this.spec.value)throw new Error(\"attempted to retrieve property value for property without value specification\");var e=this.transform([this.spec.value])[0];return null!=this.spec.transform&&t&&(e=this.spec.transform.compute(e)),e},t.prototype.array=function(t){if(!this.dataspec)throw new Error(\"attempted to retrieve property array for non-dataspec property\");var e;if(null!=this.spec.field){if(null==(e=this.transform(t.get_column(this.spec.field))))throw new Error(\"attempted to retrieve property array for nonexistent field '\"+this.spec.field+\"'\")}else if(null!=this.spec.expr)e=this.transform(this.spec.expr.v_compute(t));else{var i=t.get_length();null==i&&(i=1);var n=this.value(!1);e=l.repeat(n,i)}return null!=this.spec.transform&&(e=this.spec.transform.v_compute(e)),e},t.prototype._init=function(){var t,e=this.obj,i=this.attr,n=e.getv(i);if(void 0===n){var r=this.default_value;n=void 0!==r?r(e):null,e.setv(((t={})[i]=n,t),{silent:!0,defaults:!0})}if(u.isArray(n)?this.spec={value:n}:_(n)?this.spec=n:this.spec={value:n},this.dataspec&&null!=this.spec.field&&!u.isString(this.spec.field))throw new Error(\"field value for property '\"+i+\"' is not a string\");null!=this.spec.value&&this.validate(this.spec.value),this.init()},t.prototype.toString=function(){return\"Prop(\"+this.obj+\".\"+this.attr+\", spec: \"+c(this.spec)+\")\"},t}(s.Signalable());function d(i,n){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.validate=function(t){if(!n(t))throw new Error(i+\" property '\"+this.attr+\"' given invalid value: \"+c(t))},e}(p)}(i.Property=p).prototype.dataspec=!1;var f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}((i.simple_prop=d)(\"Any\",function(t){return!0}));i.Any=f;var v=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Array\",function(t){return u.isArray(t)||t instanceof Float64Array}));i.Array=v;var m=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Bool\",u.isBoolean));i.Bool=m,i.Boolean=m;var g=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Color\",function(t){return u.isString(t)&&(r.is_svg_color(t.toLowerCase())||\"#\"==t.substring(0,1)||a.valid_rgb(t))}));i.Color=g;var y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Instance\",function(t){return null!=t.properties}));i.Instance=y;var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Number\",function(t){return u.isNumber(t)||u.isBoolean(t)}));i.Number=b;var x=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(i.Int=b);i.Angle=x;var w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Number\",function(t){return(u.isNumber(t)||u.isBoolean(t))&&0<=t&&t<=1}));i.Percent=w;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"String\",u.isString));i.String=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(i.FontSize=k);function C(t,e){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(t,function(t){return l.includes(e,t)}))}i.Font=S;var T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}((i.enum_prop=C)(\"Anchor\",n.LegendLocation));i.Anchor=T;var A=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"AngleUnits\",n.AngleUnits));i.AngleUnits=A;var E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.transform=function(t){for(var e=new Uint8Array(t.length),i=0;i<t.length;i++)switch(t[i]){case\"clock\":e[i]=0;break;case\"anticlock\":e[i]=1}return e},e}(C(\"Direction\",n.Direction));i.Direction=E;var M=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Dimension\",n.Dimension));i.Dimension=M;var O=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Dimensions\",n.Dimensions));i.Dimensions=O;var z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"FontStyle\",n.FontStyle));i.FontStyle=z;var P=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LatLon\",n.LatLon));i.LatLon=P;var j=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LineCap\",n.LineCap));i.LineCap=j;var N=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LineJoin\",n.LineJoin));i.LineJoin=N;var F=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LegendLocation\",n.LegendLocation));i.LegendLocation=F;var D=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Location\",n.Location));i.Location=D;var I=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"OutputBackend\",n.OutputBackend));i.OutputBackend=I;var R=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Orientation\",n.Orientation));i.Orientation=R;var B=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"VerticalAlign\",n.VerticalAlign));i.VerticalAlign=B;var L=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"TextAlign\",n.TextAlign));i.TextAlign=L;var V=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"TextBaseline\",n.TextBaseline));i.TextBaseline=V;var G=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"RenderLevel\",n.RenderLevel));i.RenderLevel=G;var U=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"RenderMode\",n.RenderMode));i.RenderMode=U;var q=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"SizingMode\",n.SizingMode));i.SizingMode=q;var Y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"SpatialUnits\",n.SpatialUnits));i.SpatialUnits=Y;var X=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Distribution\",n.Distribution));i.Distribution=X;var H=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"StepMode\",n.StepMode));i.StepMode=H;var W=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"PaddingUnits\",n.PaddingUnits));i.PaddingUnits=W;var J=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"StartEnd\",n.StartEnd));function Q(i,n,r){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.init=function(){null==this.spec.units&&(this.spec.units=r);var t=this.spec.units;if(!l.includes(n,t))throw new Error(i+\" units must be one of \"+n+\", given invalid value: \"+t)},Object.defineProperty(e.prototype,\"units\",{get:function(){return this.spec.units},set:function(t){this.spec.units=t},enumerable:!0,configurable:!0}),e}(b)}i.StartEnd=J;var $=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.transform=function(t){return\"deg\"==this.spec.units&&(t=h.map(t,function(t){return t*Math.PI/180})),t=h.map(t,function(t){return-t}),e.prototype.transform.call(this,t)},t}((i.units_prop=Q)(\"AngleSpec\",n.AngleUnits,\"rad\"));(i.AngleSpec=$).prototype.dataspec=!0;var K=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(g);(i.ColorSpec=K).prototype.dataspec=!0;var Z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(Q(\"DistanceSpec\",n.SpatialUnits,\"data\"));(i.DistanceSpec=Z).prototype.dataspec=!0;var tt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.FontSizeSpec=tt).prototype.dataspec=!0;var et=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.MarkerSpec=et).prototype.dataspec=!0;var it=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(b);(i.NumberSpec=it).prototype.dataspec=!0;var nt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.StringSpec=nt).prototype.dataspec=!0},function(t,e,h){var i=t(15),u=t(32);function n(t,e){var i={};for(var n in t){var r=t[n];i[e+n]=r}return i}var r={line_color:[i.ColorSpec,\"black\"],line_width:[i.NumberSpec,1],line_alpha:[i.NumberSpec,1],line_join:[i.LineJoin,\"bevel\"],line_cap:[i.LineCap,\"butt\"],line_dash:[i.Array,[]],line_dash_offset:[i.Number,0]};h.line=function(t){return void 0===t&&(t=\"\"),n(r,t)};var o={fill_color:[i.ColorSpec,\"gray\"],fill_alpha:[i.NumberSpec,1]};h.fill=function(t){return void 0===t&&(t=\"\"),n(o,t)};var s={text_font:[i.Font,\"helvetica\"],text_font_size:[i.FontSizeSpec,\"12pt\"],text_font_style:[i.FontStyle,\"normal\"],text_color:[i.ColorSpec,\"#444444\"],text_alpha:[i.NumberSpec,1],text_align:[i.TextAlign,\"left\"],text_baseline:[i.TextBaseline,\"bottom\"],text_line_height:[i.Number,1.2]};h.text=function(t){return void 0===t&&(t=\"\"),n(s,t)},h.create=function(t){for(var e={},i=0,n=t;i<n.length;i++){var r=n[i],o=r.split(\":\"),s=o[0],a=o[1],l=void 0;switch(s){case\"line\":l=h.line;break;case\"fill\":l=h.fill;break;case\"text\":l=h.text;break;default:throw new Error(\"Unknown property mixin kind '\"+s+\"'\")}u.extend(e,l(a))}return e}},function(t,e,i){var n=t(391),r=t(8),o=t(197),p=t(185),d=t(186),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"SelectionManager\",this.internal({source:[s.Any]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),this.inspectors={}},e.prototype.select=function(t,e,i,n){void 0===n&&(n=!1);for(var r=[],o=[],s=0,a=t;s<a.length;s++){var l=a[s];l instanceof p.GlyphRendererView?r.push(l):l instanceof d.GraphRendererView&&o.push(l)}for(var h=!1,u=0,c=o;u<c.length;u++){var l=c[u],_=l.model.selection_policy.hit_test(e,l);h=h||l.model.selection_policy.do_selection(_,l.model,i,n)}if(0<r.length){var _=this.source.selection_policy.hit_test(e,r);h=h||this.source.selection_policy.do_selection(_,this.source,i,n)}return h},e.prototype.inspect=function(t,e){var i=!1;if(t instanceof p.GlyphRendererView){var n=t.hit_test(e);if(null!=n){i=!n.is_empty();var r=this.get_or_create_inspector(t.model);r.update(n,!0,!1),this.source.setv({inspected:r},{silent:!0}),this.source.inspect.emit([t,{geometry:e}])}}else if(t instanceof d.GraphRendererView){var n=t.model.inspection_policy.hit_test(e,t);i=i||t.model.inspection_policy.do_inspection(n,e,t,!1,!1)}return i},e.prototype.clear=function(t){this.source.selected.clear(),null!=t&&this.get_or_create_inspector(t.model).clear()},e.prototype.get_or_create_inspector=function(t){return null==this.inspectors[t.id]&&(this.inspectors[t.id]=new o.Selection),this.inspectors[t.id]},e}(r.HasProps);(i.SelectionManager=a).initClass()},function(t,e,i){var n=function(){function t(){this._dev=!1}return Object.defineProperty(t.prototype,\"dev\",{get:function(){return this._dev},set:function(t){this._dev=t},enumerable:!0,configurable:!0}),t}();i.Settings=n,i.settings=new n},function(t,e,i){var n,r=t(391),o=t(29),s=t(25),a=t(21),l=function(){function t(t,e){this.sender=t,this.name=e}return t.prototype.connect=function(t,e){void 0===e&&(e=null),u.has(this.sender)||u.set(this.sender,[]);var i=u.get(this.sender);if(null!=_(i,this,t,e))return!1;var n=e||t;c.has(n)||c.set(n,[]);var r=c.get(n),o={signal:this,slot:t,context:e};return i.push(o),r.push(o),!0},t.prototype.disconnect=function(t,e){void 0===e&&(e=null);var i=u.get(this.sender);if(null==i||0===i.length)return!1;var n=_(i,this,t,e);if(null==n)return!1;var r=e||t,o=c.get(r);return n.signal=null,d(i),d(o),!0},t.prototype.emit=function(t){for(var e=u.get(this.sender)||[],i=0,n=e;i<n.length;i++){var r=n[i],o=r.signal,s=r.slot,a=r.context;o===this&&s.call(a,t,this.sender)}},t}(),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r.__extends(e,t),e.prototype.emit=function(){t.prototype.emit.call(this,void 0)},e}(i.Signal=l);i.Signal0=h,(n=l=i.Signal||(i.Signal={})).disconnectBetween=function(t,e){var i=u.get(t);if(null!=i&&0!==i.length){var n=c.get(e);if(null!=n&&0!==n.length){for(var r=0,o=n;r<o.length;r++){var s=o[r];if(null==s.signal)return;s.signal.sender===t&&(s.signal=null)}d(i),d(n)}}},n.disconnectSender=function(t){var e=u.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null==r.signal)return;var o=r.context||r.slot;r.signal=null,d(c.get(o))}d(e)}},n.disconnectReceiver=function(t){var e=c.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null==r.signal)return;var o=r.signal.sender;r.signal=null,d(u.get(o))}d(e)}},n.disconnectAll=function(t){var e=u.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];r.signal=null}d(e)}var o=c.get(t);if(null!=o&&0!==o.length){for(var s=0,a=o;s<a.length;s++){var r=a[s];r.signal=null}d(o)}},i.Signal=l,i.Signalable=function(t){return null!=t?function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r.__extends(e,t),e.prototype.connect=function(t,e){return t.connect(e,this)},e}(t):function(){function t(){}return t.prototype.connect=function(t,e){return t.connect(e,this)},t}()},(i._Signalable||(i._Signalable={})).connect=function(t,e){return t.connect(e,this)};var u=new WeakMap,c=new WeakMap;function _(t,e,i,n){return a.find(t,function(t){return t.signal===e&&t.slot===i&&t.context===n})}var p=new o.Set;function d(t){0===p.size&&s.defer(f),p.add(t)}function f(){p.forEach(function(t){a.removeBy(t,function(t){return null==t.signal})}),p.clear()}},function(t,e,d){var i=t(391),o=t(347),s=t(19),a=t(14),l=t(5),n=t(45),h=t(21),f=t(32),r=t(44),u=t(3);d.is_mobile=\"ontouchstart\"in window||0<navigator.maxTouchPoints;var c=function(){function t(t,e,i,n){var r=this;this.plot_view=t,this.toolbar=e,this.hit_area=i,this.plot=n,this.pan_start=new s.Signal(this,\"pan:start\"),this.pan=new s.Signal(this,\"pan\"),this.pan_end=new s.Signal(this,\"pan:end\"),this.pinch_start=new s.Signal(this,\"pinch:start\"),this.pinch=new s.Signal(this,\"pinch\"),this.pinch_end=new s.Signal(this,\"pinch:end\"),this.rotate_start=new s.Signal(this,\"rotate:start\"),this.rotate=new s.Signal(this,\"rotate\"),this.rotate_end=new s.Signal(this,\"rotate:end\"),this.tap=new s.Signal(this,\"tap\"),this.doubletap=new s.Signal(this,\"doubletap\"),this.press=new s.Signal(this,\"press\"),this.move_enter=new s.Signal(this,\"move:enter\"),this.move=new s.Signal(this,\"move\"),this.move_exit=new s.Signal(this,\"move:exit\"),this.scroll=new s.Signal(this,\"scroll\"),this.keydown=new s.Signal(this,\"keydown\"),this.keyup=new s.Signal(this,\"keyup\"),this.hammer=new o(this.hit_area),this._configure_hammerjs(),this.hit_area.addEventListener(\"mousemove\",function(t){return r._mouse_move(t)}),this.hit_area.addEventListener(\"mouseenter\",function(t){return r._mouse_enter(t)}),this.hit_area.addEventListener(\"mouseleave\",function(t){return r._mouse_exit(t)}),this.hit_area.addEventListener(\"wheel\",function(t){return r._mouse_wheel(t)}),document.addEventListener(\"keydown\",this),document.addEventListener(\"keyup\",this)}return t.prototype.destroy=function(){this.hammer.destroy(),document.removeEventListener(\"keydown\",this),document.removeEventListener(\"keyup\",this)},t.prototype.handleEvent=function(t){\"keydown\"==t.type?this._key_down(t):\"keyup\"==t.type&&this._key_up(t)},t.prototype._configure_hammerjs=function(){var e=this;this.hammer.get(\"doubletap\").recognizeWith(\"tap\"),this.hammer.get(\"tap\").requireFailure(\"doubletap\"),this.hammer.get(\"doubletap\").dropRequireFailure(\"tap\"),this.hammer.on(\"doubletap\",function(t){return e._doubletap(t)}),this.hammer.on(\"tap\",function(t){return e._tap(t)}),this.hammer.on(\"press\",function(t){return e._press(t)}),this.hammer.get(\"pan\").set({direction:o.DIRECTION_ALL}),this.hammer.on(\"panstart\",function(t){return e._pan_start(t)}),this.hammer.on(\"pan\",function(t){return e._pan(t)}),this.hammer.on(\"panend\",function(t){return e._pan_end(t)}),this.hammer.get(\"pinch\").set({enable:!0}),this.hammer.on(\"pinchstart\",function(t){return e._pinch_start(t)}),this.hammer.on(\"pinch\",function(t){return e._pinch(t)}),this.hammer.on(\"pinchend\",function(t){return e._pinch_end(t)}),this.hammer.get(\"rotate\").set({enable:!0}),this.hammer.on(\"rotatestart\",function(t){return e._rotate_start(t)}),this.hammer.on(\"rotate\",function(t){return e._rotate(t)}),this.hammer.on(\"rotateend\",function(t){return e._rotate_end(t)})},t.prototype.register_tool=function(i){var n=this,t=i.model.event_type;null!=t&&(r.isString(t)?this._register_tool(i,t):t.forEach(function(t,e){return n._register_tool(i,t,e<1)}))},t.prototype._register_tool=function(t,e,i){void 0===i&&(i=!0);var n=t,r=n.model.id,o=function(e){return function(t){t.id==r&&e(t.e)}},s=function(e){return function(t){e(t.e)}};switch(e){case\"pan\":null!=n._pan_start&&n.connect(this.pan_start,o(n._pan_start.bind(n))),null!=n._pan&&n.connect(this.pan,o(n._pan.bind(n))),null!=n._pan_end&&n.connect(this.pan_end,o(n._pan_end.bind(n)));break;case\"pinch\":null!=n._pinch_start&&n.connect(this.pinch_start,o(n._pinch_start.bind(n))),null!=n._pinch&&n.connect(this.pinch,o(n._pinch.bind(n))),null!=n._pinch_end&&n.connect(this.pinch_end,o(n._pinch_end.bind(n)));break;case\"rotate\":null!=n._rotate_start&&n.connect(this.rotate_start,o(n._rotate_start.bind(n))),null!=n._rotate&&n.connect(this.rotate,o(n._rotate.bind(n))),null!=n._rotate_end&&n.connect(this.rotate_end,o(n._rotate_end.bind(n)));break;case\"move\":null!=n._move_enter&&n.connect(this.move_enter,o(n._move_enter.bind(n))),null!=n._move&&n.connect(this.move,o(n._move.bind(n))),null!=n._move_exit&&n.connect(this.move_exit,o(n._move_exit.bind(n)));break;case\"tap\":null!=n._tap&&n.connect(this.tap,o(n._tap.bind(n)));break;case\"press\":null!=n._press&&n.connect(this.press,o(n._press.bind(n)));break;case\"scroll\":null!=n._scroll&&n.connect(this.scroll,o(n._scroll.bind(n)));break;default:throw new Error(\"unsupported event_type: \"+e)}i&&(null!=n._doubletap&&n.connect(this.doubletap,s(n._doubletap.bind(n))),null!=n._keydown&&n.connect(this.keydown,s(n._keydown.bind(n))),null!=n._keyup&&n.connect(this.keyup,s(n._keyup.bind(n))),d.is_mobile&&null!=n._scroll&&\"pinch\"==e&&(a.logger.debug(\"Registering scroll on touch screen\"),n.connect(this.scroll,o(n._scroll.bind(n)))))},t.prototype._hit_test_renderers=function(t,e){for(var i=this.plot_view.get_renderer_views(),n=0,r=h.reversed(i);n<r.length;n++){var o=r[n],s=o.model.level;if((\"annotation\"==s||\"overlay\"==s)&&null!=o.interactive_hit&&o.interactive_hit(t,e))return o}return null},t.prototype._hit_test_frame=function(t,e){return this.plot_view.frame.bbox.contains(t,e)},t.prototype._hit_test_canvas=function(t,e){return this.plot_view.canvas.bbox.contains(t,e)},t.prototype._trigger=function(e,i,t){var n=this,r=this.toolbar.gestures,o=e.name,s=o.split(\":\")[0],a=this._hit_test_renderers(i.sx,i.sy),l=this._hit_test_canvas(i.sx,i.sy);switch(s){case\"move\":var h=r[s].active;null!=h&&this.trigger(e,i,h.id);var u=this.toolbar.inspectors.filter(function(t){return t.active}),c=\"default\";null!=a?(c=a.cursor(i.sx,i.sy)||c,f.isEmpty(u)||(e=this.move_exit,o=e.name)):this._hit_test_frame(i.sx,i.sy)&&(f.isEmpty(u)||(c=\"crosshair\")),this.plot_view.set_cursor(c),this.plot_view.set_toolbar_visibility(l),u.map(function(t){return n.trigger(e,i,t.id)});break;case\"tap\":var _=t.target;if(null!=_&&_!=this.hit_area)return;null!=a&&null!=a.on_hit&&a.on_hit(i.sx,i.sy);var h=r[s].active;null!=h&&this.trigger(e,i,h.id);break;case\"scroll\":var p=d.is_mobile?\"pinch\":\"scroll\",h=r[p].active;null!=h&&(t.preventDefault(),t.stopPropagation(),this.trigger(e,i,h.id));break;default:var h=r[s].active;null!=h&&this.trigger(e,i,h.id)}this._trigger_bokeh_event(i)},t.prototype.trigger=function(t,e,i){void 0===i&&(i=null),t.emit({id:i,e:e})},t.prototype._trigger_bokeh_event=function(t){var e=u.BokehEvent.event_class(t);null!=e?this.plot.trigger_event(e.from_event(t)):a.logger.debug(\"Unhandled event of type \"+t.type)},t.prototype._get_sxy=function(t){var e,i=(e=t,\"undefined\"!=typeof TouchEvent&&e instanceof TouchEvent?(0!=t.touches.length?t.touches:t.changedTouches)[0]:t),n=i.pageX,r=i.pageY,o=l.offset(this.hit_area),s=o.left,a=o.top;return{sx:n-s,sy:r-a}},t.prototype._gesture_event=function(t){return i.__assign({type:t.type},this._get_sxy(t.srcEvent),{deltaX:t.deltaX,deltaY:t.deltaY,scale:t.scale,shiftKey:t.srcEvent.shiftKey})},t.prototype._tap_event=function(t){return i.__assign({type:t.type},this._get_sxy(t.srcEvent),{shiftKey:t.srcEvent.shiftKey})},t.prototype._move_event=function(t){return i.__assign({type:t.type},this._get_sxy(t))},t.prototype._scroll_event=function(t){return i.__assign({type:t.type},this._get_sxy(t),{delta:n.getDeltaY(t)})},t.prototype._key_event=function(t){return{type:t.type,keyCode:t.keyCode}},t.prototype._pan_start=function(t){var e=this._gesture_event(t);e.sx-=t.deltaX,e.sy-=t.deltaY,this._trigger(this.pan_start,e,t.srcEvent)},t.prototype._pan=function(t){this._trigger(this.pan,this._gesture_event(t),t.srcEvent)},t.prototype._pan_end=function(t){this._trigger(this.pan_end,this._gesture_event(t),t.srcEvent)},t.prototype._pinch_start=function(t){this._trigger(this.pinch_start,this._gesture_event(t),t.srcEvent)},t.prototype._pinch=function(t){this._trigger(this.pinch,this._gesture_event(t),t.srcEvent)},t.prototype._pinch_end=function(t){this._trigger(this.pinch_end,this._gesture_event(t),t.srcEvent)},t.prototype._rotate_start=function(t){this._trigger(this.rotate_start,this._gesture_event(t),t.srcEvent)},t.prototype._rotate=function(t){this._trigger(this.rotate,this._gesture_event(t),t.srcEvent)},t.prototype._rotate_end=function(t){this._trigger(this.rotate_end,this._gesture_event(t),t.srcEvent)},t.prototype._tap=function(t){this._trigger(this.tap,this._tap_event(t),t.srcEvent)},t.prototype._doubletap=function(t){var e=this._tap_event(t);this._trigger_bokeh_event(e),this.trigger(this.doubletap,e)},t.prototype._press=function(t){this._trigger(this.press,this._tap_event(t),t.srcEvent)},t.prototype._mouse_enter=function(t){this._trigger(this.move_enter,this._move_event(t),t)},t.prototype._mouse_move=function(t){this._trigger(this.move,this._move_event(t),t)},t.prototype._mouse_exit=function(t){this._trigger(this.move_exit,this._move_event(t),t)},t.prototype._mouse_wheel=function(t){this._trigger(this.scroll,this._scroll_event(t),t)},t.prototype._key_down=function(t){this.trigger(this.keydown,this._key_event(t))},t.prototype._key_up=function(t){this.trigger(this.keyup,this._key_event(t))},t}();d.UIEvents=c},function(t,e,n){var o=t(31),u=t(23),i=t(22);n.min=i.min,n.minBy=i.minBy,n.max=i.max,n.maxBy=i.maxBy,n.sum=i.sum;var r=Array.prototype.slice;function s(t){var e;return(e=[]).concat.apply(e,t)}function c(t,e){return-1!==t.indexOf(e)}function a(t,e,i){void 0===i&&(i=1),u.assert(0<i,\"'step' must be a positive number\"),null==e&&(e=t,t=0);for(var n=Math.max,r=Math.ceil,o=Math.abs,s=t<=e?i:-i,a=n(r(o(e-t)/i),0),l=Array(a),h=0;h<a;h++,t+=s)l[h]=t;return l}function l(r){return function(t,e){for(var i=t.length,n=0<r?0:i-1;0<=n&&n<i;n+=r)if(e(t[n]))return n;return-1}}function h(t){for(var e=[],i=0,n=t;i<n.length;i++){var r=n[i];c(e,r)||e.push(r)}return e}n.head=function(t){return t[0]},n.tail=function(t){return t[t.length-1]},n.last=function(t){return t[t.length-1]},n.copy=function(t){return r.call(t)},n.concat=s,n.includes=c,n.contains=c,n.nth=function(t,e){return t[0<=e?e:t.length+e]},n.zip=function(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=0;r<i;r++)n[r]=[t[r],e[r]];return n},n.unzip=function(t){for(var e,i=t.length,n=new Array(i),r=new Array(i),o=0;o<i;o++)e=t[o],n[o]=e[0],r[o]=e[1];return[n,r]},n.range=a,n.linspace=function(t,e,i){void 0===i&&(i=100);for(var n=(e-t)/(i-1),r=new Array(i),o=0;o<i;o++)r[o]=t+n*o;return r},n.transpose=function(t){for(var e=t.length,i=t[0].length,n=[],r=0;r<i;r++){n[r]=[];for(var o=0;o<e;o++)n[r][o]=t[o][r]}return n},n.cumsum=function(t){var n=[];return t.reduce(function(t,e,i){return n[i]=t+e},0),n},n.argmin=function(e){return i.minBy(a(e.length),function(t){return e[t]})},n.argmax=function(e){return i.maxBy(a(e.length),function(t){return e[t]})},n.all=function(t,e){for(var i=0,n=t;i<n.length;i++){var r=n[i];if(!e(r))return!1}return!0},n.any=function(t,e){for(var i=0,n=t;i<n.length;i++){var r=n[i];if(e(r))return!0}return!1},n.findIndex=l(1),n.findLastIndex=l(-1),n.find=function(t,e){var i=n.findIndex(t,e);return-1==i?void 0:t[i]},n.findLast=function(t,e){var i=n.findLastIndex(t,e);return-1==i?void 0:t[i]},n.sortedIndex=function(t,e){for(var i=0,n=t.length;i<n;){var r=Math.floor((i+n)/2);t[r]<e?i=r+1:n=r}return i},n.sortBy=function(t,i){var e=t.map(function(t,e){return{value:t,index:e,key:i(t)}});return e.sort(function(t,e){var i=t.key,n=e.key;if(i!==n){if(n<i||void 0===i)return 1;if(i<n||void 0===n)return-1}return t.index-e.index}),e.map(function(t){return t.value})},n.uniq=h,n.uniqBy=function(t,e){for(var i=[],n=[],r=0,o=t;r<o.length;r++){var s=o[r],a=e(s);c(n,a)||(n.push(a),i.push(s))}return i},n.union=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return h(s(t))},n.intersection=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=[];t:for(var r=0,o=t;r<o.length;r++){var s=o[r];if(!c(n,s)){for(var a=0,l=e;a<l.length;a++){var h=l[a];if(!c(h,s))continue t}n.push(s)}}return n},n.difference=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=s(e);return t.filter(function(t){return!c(n,t)})},n.removeBy=function(t,e){for(var i=0;i<t.length;)e(t[i])?t.splice(i,1):i++},n.shuffle=function(t){for(var e=t.length,i=new Array(e),n=0;n<e;n++){var r=o.randomIn(0,n);r!==n&&(i[n]=i[r]),i[r]=t[n]}return i},n.pairwise=function(t,e){for(var i=t.length,n=new Array(i-1),r=0;r<i-1;r++)n[r]=e(t[r],t[r+1]);return n},n.reversed=function(t){for(var e=t.length,i=new Array(e),n=0;n<e;n++)i[e-n-1]=t[n];return i},n.repeat=function(t,e){for(var i=new Array(e),n=0;n<e;n++)i[n]=t;return i}},function(t,e,i){function n(t,e,i){for(var n=[],r=3;r<arguments.length;r++)n[r-3]=arguments[r];var o=t.length;e<0&&(e+=o),e<0?e=0:o<e&&(e=o),null==i||o-e<i?i=o-e:i<0&&(i=0);for(var s=o-i+n.length,a=new t.constructor(s),l=0;l<e;l++)a[l]=t[l];for(var h=0,u=n;h<u.length;h++){var c=u[h];a[l++]=c}for(var _=e+i;_<o;_++)a[l++]=t[_];return a}i.splice=n,i.insert=function(t,e,i){return n(t,i,0,e)},i.append=function(t,e){return n(t,t.length,0,e)},i.prepend=function(t,e){return n(t,0,0,e)},i.indexOf=function(t,e){for(var i=0,n=t.length;i<n;i++)if(t[i]===e)return i;return-1},i.map=function(t,e){for(var i=t.length,n=new t.constructor(i),r=0;r<i;r++)n[r]=e(t[r],r,t);return n},i.min=function(t){for(var e,i=1/0,n=0,r=t.length;n<r;n++)(e=t[n])<i&&(i=e);return i},i.minBy=function(t,e){if(0==t.length)throw new Error(\"minBy() called with an empty array\");for(var i=t[0],n=e(i),r=1,o=t.length;r<o;r++){var s=t[r],a=e(s);a<n&&(i=s,n=a)}return i},i.max=function(t){for(var e,i=-1/0,n=0,r=t.length;n<r;n++)e=t[n],i<e&&(i=e);return i},i.maxBy=function(t,e){if(0==t.length)throw new Error(\"maxBy() called with an empty array\");for(var i=t[0],n=e(i),r=1,o=t.length;r<o;r++){var s=t[r],a=e(s);n<a&&(i=s,n=a)}return i},i.sum=function(t){for(var e=0,i=0,n=t.length;i<n;i++)e+=t[i];return e}},function(t,e,i){var n=t(391),r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(Error);i.AssertionError=r,i.assert=function(t,e){if(!(!0===t||!1!==t&&t()))throw new r(e||\"Assertion failed\")}},function(t,e,i){var n=Math.min,r=Math.max;i.empty=function(){return{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}},i.positive_x=function(){return{minX:Number.MIN_VALUE,minY:-1/0,maxX:1/0,maxY:1/0}},i.positive_y=function(){return{minX:-1/0,minY:Number.MIN_VALUE,maxX:1/0,maxY:1/0}},i.union=function(t,e){return{minX:n(t.minX,e.minX),maxX:r(t.maxX,e.maxX),minY:n(t.minY,e.minY),maxY:r(t.maxY,e.maxY)}};var o=function(){function e(t){if(\"x0\"in t&&\"y0\"in t&&\"x1\"in t&&\"y1\"in t){var e=t,i=e.x0,n=e.y0,r=e.x1,o=e.y1;if(!(i<=r&&n<=o))throw new Error(\"invalid bbox {x0: \"+i+\", y0: \"+n+\", x1: \"+r+\", y1: \"+o+\"}\");this.x0=i,this.y0=n,this.x1=r,this.y1=o}else{var s=t,a=s.x,l=s.y,h=s.width,u=s.height;if(!(0<=h&&0<=u))throw new Error(\"invalid bbox {x: \"+a+\", y: \"+l+\", width: \"+h+\", height: \"+u+\"}\");this.x0=a,this.y0=l,this.x1=a+h,this.y1=l+u}}return Object.defineProperty(e.prototype,\"minX\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"minY\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"maxX\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"maxY\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"left\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"top\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"right\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"bottom\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"p0\",{get:function(){return[this.x0,this.y0]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"p1\",{get:function(){return[this.x1,this.y1]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"x\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"y\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"width\",{get:function(){return this.x1-this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this.y1-this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"rect\",{get:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"h_range\",{get:function(){return{start:this.x0,end:this.x1}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"v_range\",{get:function(){return{start:this.y0,end:this.y1}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"ranges\",{get:function(){return[this.h_range,this.v_range]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"aspect\",{get:function(){return this.width/this.height},enumerable:!0,configurable:!0}),e.prototype.contains=function(t,e){return t>=this.x0&&t<=this.x1&&e>=this.y0&&e<=this.y1},e.prototype.clip=function(t,e){return t<this.x0?t=this.x0:t>this.x1&&(t=this.x1),e<this.y0?e=this.y0:e>this.y1&&(e=this.y1),[t,e]},e.prototype.union=function(t){return new e({x0:n(this.x0,t.x0),y0:n(this.y0,t.y0),x1:r(this.x1,t.x1),y1:r(this.y1,t.y1)})},e}();i.BBox=o},function(t,e,i){i.delay=function(t,e){return setTimeout(t,e)};var n=\"function\"==typeof requestAnimationFrame?requestAnimationFrame:setImmediate;i.defer=function(t){return n(t)},i.throttle=function(i,n,r){void 0===r&&(r={});var o,s,a,l=null,h=0,u=function(){h=!1===r.leading?0:Date.now(),l=null,a=i.apply(o,s),l||(o=s=null)};return function(){var t=Date.now();h||!1!==r.leading||(h=t);var e=n-(t-h);return o=this,s=arguments,e<=0||n<e?(l&&(clearTimeout(l),l=null),h=t,a=i.apply(o,s),l||(o=s=null)):l||!1===r.trailing||(l=setTimeout(u,e)),a}},i.once=function(t){var e,i=!1;return function(){return i||(i=!0,e=t()),e}}},function(t,e,i){var n=t(287);i.SVGRenderingContext2D=n,i.fixup_ctx=function(t){var e,c,i,n,r;(e=t).setLineDash||(e.setLineDash=function(t){e.mozDash=t,e.webkitLineDash=t}),e.getLineDash||(e.getLineDash=function(){return e.mozDash}),(r=t).setLineDashOffset=function(t){r.lineDashOffset=t,r.mozDashOffset=t,r.webkitLineDashOffset=t},r.getLineDashOffset=function(){return r.mozDashOffset},(n=t).setImageSmoothingEnabled=function(t){n.imageSmoothingEnabled=t,n.mozImageSmoothingEnabled=t,n.oImageSmoothingEnabled=t,n.webkitImageSmoothingEnabled=t,n.msImageSmoothingEnabled=t},n.getImageSmoothingEnabled=function(){var t=n.imageSmoothingEnabled;return null==t||t},(i=t).measureText&&null==i.html5MeasureText&&(i.html5MeasureText=i.measureText,i.measureText=function(t){var e=i.html5MeasureText(t);return e.ascent=1.6*i.html5MeasureText(\"m\").width,e}),(c=t).ellipse||(c.ellipse=function(t,e,i,n,r,o,s,a){void 0===a&&(a=!1);var l=.551784;c.translate(t,e),c.rotate(r);var h=i,u=n;a&&(h=-i,u=-n),c.moveTo(-h,0),c.bezierCurveTo(-h,u*l,-h*l,u,0,u),c.bezierCurveTo(h*l,u,h,u*l,h,0),c.bezierCurveTo(h,-u*l,h*l,-u,0,-u),c.bezierCurveTo(-h*l,-u,-h,-u*l,-h,0),c.rotate(-r),c.translate(-t,-e)})},i.get_scale_ratio=function(t,e,i){if(\"svg\"==i)return 1;if(e){var n=window.devicePixelRatio||1,r=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return n/r}return 1}},function(t,e,i){var n=t(39),r=t(21);function o(t){var e=Number(t).toString(16);return 1==e.length?\"0\"+e:e}function s(t){if(0==(t+=\"\").indexOf(\"#\"))return t;if(n.is_svg_color(t))return n.svg_colors[t];if(0==t.indexOf(\"rgb\")){var e=t.replace(/^rgba?\\(|\\s+|\\)$/g,\"\").split(\",\"),i=e.slice(0,3).map(o).join(\"\");return 4==e.length&&(i+=o(Math.floor(255*parseFloat(e[3])))),\"#\"+i.slice(0,8)}return t}i.color2hex=s,i.color2rgba=function(t,e){if(void 0===e&&(e=1),!t)return[0,0,0,0];var i=s(t);(i=i.replace(/ |#/g,\"\")).length<=4&&(i=i.replace(/(.)/g,\"$1$1\"));for(var n=i.match(/../g).map(function(t){return parseInt(t,16)/255});n.length<3;)n.push(0);return n.length<4&&n.push(e),n.slice(0,4)},i.valid_rgb=function(t){var e;switch(t.substring(0,4)){case\"rgba\":e={start:\"rgba(\",len:4,alpha:!0};break;case\"rgb(\":e={start:\"rgb(\",len:3,alpha:!1};break;default:return!1}if(new RegExp(\".*?(\\\\.).*(,)\").test(t))throw new Error(\"color expects integers for rgb in rgb/rgba tuple, received \"+t);var i=t.replace(e.start,\"\").replace(\")\",\"\").split(\",\").map(parseFloat);if(i.length!=e.len)throw new Error(\"color expects rgba \"+e.len+\"-tuple, received \"+t);if(e.alpha&&!(0<=i[3]&&i[3]<=1))throw new Error(\"color expects rgba 4-tuple to have alpha value between 0 and 1\");if(r.includes(i.slice(0,3).map(function(t){return 0<=t&&t<=255}),!1))throw new Error(\"color expects rgb to have value between 0 and 255\");return!0}},function(t,e,i){i.is_ie=0<=navigator.userAgent.indexOf(\"MSIE\")||0<navigator.userAgent.indexOf(\"Trident\")||0<navigator.userAgent.indexOf(\"Edge\"),i.is_little_endian=function(){var t=new ArrayBuffer(4),e=new Uint8Array(t),i=new Uint32Array(t);i[1]=168496141;var n=!0;return 10==e[4]&&11==e[5]&&12==e[6]&&13==e[7]&&(n=!1),n}()},function(t,e,i){var r=t(21),o=t(30),s=t(44),n=function(){function t(){this._dict={}}return t.prototype._existing=function(t){return t in this._dict?this._dict[t]:null},t.prototype.add_value=function(t,e){var i=this._existing(t);null==i?this._dict[t]=e:s.isArray(i)?i.push(e):this._dict[t]=[i,e]},t.prototype.remove_value=function(t,e){var i=this._existing(t);if(s.isArray(i)){var n=r.difference(i,[e]);0<n.length?this._dict[t]=n:delete this._dict[t]}else o.isEqual(i,e)&&delete this._dict[t]},t.prototype.get_one=function(t,e){var i=this._existing(t);if(s.isArray(i)){if(1===i.length)return i[0];throw new Error(e)}return i},t}();i.MultiDict=n;var a=function(){function o(t){if(null==t)this._values=[];else if(t instanceof o)this._values=r.copy(t._values);else{this._values=[];for(var e=0,i=t;e<i.length;e++){var n=i[e];this.add(n)}}}return Object.defineProperty(o.prototype,\"values\",{get:function(){return r.copy(this._values).sort()},enumerable:!0,configurable:!0}),o.prototype.toString=function(){return\"Set([\"+this.values.join(\",\")+\"])\"},Object.defineProperty(o.prototype,\"size\",{get:function(){return this._values.length},enumerable:!0,configurable:!0}),o.prototype.has=function(t){return-1!==this._values.indexOf(t)},o.prototype.add=function(t){this.has(t)||this._values.push(t)},o.prototype.remove=function(t){var e=this._values.indexOf(t);-1!==e&&this._values.splice(e,1)},o.prototype.toggle=function(t){var e=this._values.indexOf(t);-1===e?this._values.push(t):this._values.splice(e,1)},o.prototype.clear=function(){this._values=[]},o.prototype.union=function(t){return t=new o(t),new o(this._values.concat(t._values))},o.prototype.intersect=function(t){t=new o(t);for(var e=new o,i=0,n=t._values;i<n.length;i++){var r=n[i];this.has(r)&&t.has(r)&&e.add(r)}return e},o.prototype.diff=function(t){t=new o(t);for(var e=new o,i=0,n=this._values;i<n.length;i++){var r=n[i];t.has(r)||e.add(r)}return e},o.prototype.forEach=function(t,e){for(var i=0,n=this._values;i<n.length;i++){var r=n[i];t.call(e||this,r,r,this)}},o}();i.Set=a},function(t,e,i){var _=t(44),p=Object.prototype.toString;i.isEqual=function(t,e){return function t(e,i,n,r){if(e===i)return 0!==e||1/e==1/i;if(null==e||null==i)return e===i;var o=p.call(e);if(o!==p.call(i))return!1;switch(o){case\"[object RegExp]\":case\"[object String]\":return\"\"+e==\"\"+i;case\"[object Number]\":return+e!=+e?+i!=+i:0==+e?1/+e==1/i:+e==+i;case\"[object Date]\":case\"[object Boolean]\":return+e==+i}var s=\"[object Array]\"===o;if(!s){if(\"object\"!=typeof e||\"object\"!=typeof i)return!1;var a=e.constructor,l=i.constructor;if(a!==l&&!(_.isFunction(a)&&a instanceof a&&_.isFunction(l)&&l instanceof l)&&\"constructor\"in e&&\"constructor\"in i)return!1}r=r||[];for(var h=(n=n||[]).length;h--;)if(n[h]===e)return r[h]===i;if(n.push(e),r.push(i),s){if((h=e.length)!==i.length)return!1;for(;h--;)if(!t(e[h],i[h],n,r))return!1}else{var u=Object.keys(e),c=void 0;if(h=u.length,Object.keys(i).length!==h)return!1;for(;h--;)if(c=u[h],!i.hasOwnProperty(c)||!t(e[c],i[c],n,r))return!1}return n.pop(),r.pop(),!0}(t,e)}},function(t,e,i){function a(t){for(;t<0;)t+=2*Math.PI;for(;t>2*Math.PI;)t-=2*Math.PI;return t}function l(t,e){return Math.abs(a(t-e))}function o(){return Math.random()}i.angle_norm=a,i.angle_dist=l,i.angle_between=function(t,e,i,n){var r=a(t),o=l(e,i),s=l(e,r)<=o&&l(r,i)<=o;return 1==n?!s:s},i.random=o,i.randomIn=function(t,e){return null==e&&(e=t,t=0),t+Math.floor(Math.random()*(e-t+1))},i.atan2=function(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])},i.rnorm=function(t,e){for(var i,n;i=o(),n=(2*(n=o())-1)*Math.sqrt(1/Math.E*2),!(-4*i*i*Math.log(i)>=n*n););var r=n/i;return r=t+e*r},i.clamp=function(t,e,i){return i<t?i:t<e?e:t}},function(t,e,i){var n=t(391),h=t(21);function r(t,e){return n.__assign(t,e)}function o(t){return Object.keys(t).length}i.keys=Object.keys,i.values=function(t){for(var e=Object.keys(t),i=e.length,n=new Array(i),r=0;r<i;r++)n[r]=t[e[r]];return n},i.extend=r,i.clone=function(t){return r({},t)},i.merge=function(t,e){for(var i=Object.create(Object.prototype),n=h.concat([Object.keys(t),Object.keys(e)]),r=0,o=n;r<o.length;r++){var s=o[r],a=t.hasOwnProperty(s)?t[s]:[],l=e.hasOwnProperty(s)?e[s]:[];i[s]=h.union(a,l)}return i},i.size=o,i.isEmpty=function(t){return 0===o(t)}},function(t,e,h){var i=t(374),n=t(362),r=new n(\"GOOGLE\"),o=new n(\"WGS84\");h.wgs84_mercator=i(o,r);var s={lon:[-20026376.39,20026376.39],lat:[-20048966.1,20048966.1]},a={lon:[-180,180],lat:[-85.06,85.06]};function u(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=new Array(i),o=0;o<i;o++){var s=h.wgs84_mercator.forward([t[o],e[o]]),a=s[0],l=s[1];n[o]=a,r[o]=l}return[n,r]}h.clip_mercator=function(t,e,i){var n=s[i],r=n[0],o=n[1];return[Math.max(t,r),Math.min(e,o)]},h.in_bounds=function(t,e){return t>a[e][0]&&t<a[e][1]},h.project_xy=u,h.project_xsys=function(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=new Array(i),o=0;o<i;o++){var s=u(t[o],e[o]),a=s[0],l=s[1];n[o]=a,r[o]=l}return[n,r]}},function(t,e,i){var n=t(44);i.create_ref=function(t){var e={type:t.type,id:t.id};return null!=t._subtype&&(e.subtype=t._subtype),e},i.is_ref=function(t){if(n.isObject(t)){var e=Object.keys(t).sort();if(2==e.length)return\"id\"==e[0]&&\"type\"==e[1];if(3==e.length)return\"id\"==e[0]&&\"subtype\"==e[1]&&\"type\"==e[2]}return!1}},function(t,e,i){i.get_indices=function(t){var e=t.selected;return e[\"0d\"].glyph?e[\"0d\"].indices:0<e[\"1d\"].indices.length?e[\"1d\"].indices:0<e[\"2d\"].indices.length?e[\"2d\"].indices:[]}},function(t,e,u){var _=t(44),i=t(28);function c(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,2*t.length),i=0,n=e.length;i<n;i+=2){var r=e[i];e[i]=e[i+1],e[i+1]=r}}function p(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,4*t.length),i=0,n=e.length;i<n;i+=4){var r=e[i];e[i]=e[i+3],e[i+3]=r,r=e[i+1],e[i+1]=e[i+2],e[i+2]=r}}function d(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,8*t.length),i=0,n=e.length;i<n;i+=8){var r=e[i];e[i]=e[i+7],e[i+7]=r,r=e[i+1],e[i+1]=e[i+6],e[i+6]=r,r=e[i+2],e[i+2]=e[i+5],e[i+5]=r,r=e[i+3],e[i+3]=e[i+4],e[i+4]=r}}function n(t,e){for(var i=t.order!==u.BYTE_ORDER,n=t.shape,r=null,o=0,s=e;o<s.length;o++){var a=s[o],l=JSON.parse(a[0]);if(l.id===t.__buffer__){r=a[1];break}}var h=new u.ARRAY_TYPES[t.dtype](r);return i&&(2===h.BYTES_PER_ELEMENT?c(h):4===h.BYTES_PER_ELEMENT?p(h):8===h.BYTES_PER_ELEMENT&&d(h)),[h,n]}function f(t,e){return _.isObject(t)&&\"__ndarray__\"in t?o(t):_.isObject(t)&&\"__buffer__\"in t?n(t,e):_.isArray(t)||_.isTypedArray(t)?[t,[]]:void 0}function s(t){var e=new Uint8Array(t),i=Array.from(e).map(function(t){return String.fromCharCode(t)});return btoa(i.join(\"\"))}function r(t){for(var e=atob(t),i=e.length,n=new Uint8Array(i),r=0,o=i;r<o;r++)n[r]=e.charCodeAt(r);return n.buffer}function o(t){var e=r(t.__ndarray__),i=t.dtype,n=t.shape;if(!(i in u.ARRAY_TYPES))throw new Error(\"unknown dtype: \"+i);return[new u.ARRAY_TYPES[i](e),n]}function a(t,e){var i,n=s(t.buffer),r=function(t){if(\"name\"in t.constructor)return t.constructor.name;switch(!0){case t instanceof Uint8Array:return\"Uint8Array\";case t instanceof Int8Array:return\"Int8Array\";case t instanceof Uint16Array:return\"Uint16Array\";case t instanceof Int16Array:return\"Int16Array\";case t instanceof Uint32Array:return\"Uint32Array\";case t instanceof Int32Array:return\"Int32Array\";case t instanceof Float32Array:return\"Float32Array\";case t instanceof Float64Array:return\"Float64Array\";default:throw new Error(\"unsupported typed array\")}}(t);if(!(r in u.DTYPES))throw new Error(\"unknown array type: \"+r);i=u.DTYPES[r];var o={__ndarray__:n,shape:e,dtype:i};return o}function v(t,e){if(0==t.length||!_.isObject(t[0])&&!_.isArray(t[0]))return[t,[]];for(var i=[],n=[],r=0,o=t;r<o.length;r++){var s=o[r],a=_.isArray(s)?v(s,e):f(s,e),l=a[0],h=a[1];i.push(l),n.push(h)}var u=n.map(function(t){return t.filter(function(t){return 0!=t.length})});return[i,u]}function l(t,e){for(var i=[],n=0,r=t.length;n<r;n++){var o=t[n];if(_.isTypedArray(o)){var s=e[n]?e[n]:void 0;i.push(a(o,s))}else _.isArray(o)?i.push(l(o,e?e[n]:[])):i.push(o)}return i}u.ARRAY_TYPES={uint8:Uint8Array,int8:Int8Array,uint16:Uint16Array,int16:Int16Array,uint32:Uint32Array,int32:Int32Array,float32:Float32Array,float64:Float64Array},u.DTYPES={Uint8Array:\"uint8\",Int8Array:\"int8\",Uint16Array:\"uint16\",Int16Array:\"int16\",Uint32Array:\"uint32\",Int32Array:\"int32\",Float32Array:\"float32\",Float64Array:\"float64\"},u.BYTE_ORDER=i.is_little_endian?\"little\":\"big\",u.swap16=c,u.swap32=p,u.swap64=d,u.process_buffer=n,u.process_array=f,u.arrayBufferToBase64=s,u.base64ToArrayBuffer=r,u.decode_base64=o,u.encode_base64=a,u.decode_column_data=function(t,e){void 0===e&&(e=[]);var i={},n={};for(var r in t){var o=t[r];if(_.isArray(o)){if(0==o.length||!_.isObject(o[0])&&!_.isArray(o[0])){i[r]=o;continue}var s=v(o,e),a=s[0],l=s[1];i[r]=a,n[r]=l}else{var h=f(o,e),u=h[0],c=h[1];i[r]=u,n[r]=c}}return[i,n]},u.encode_column_data=function(t,e){var i={};for(var n in t){var r=t[n],o=null!=e?e[n]:void 0,s=void 0;s=_.isTypedArray(r)?a(r,o):_.isArray(r)?l(r,o||[]):r,i[n]=s}return i}},function(t,e,i){var l=t(346),o=t(24),n=function(){function t(t){if(this.points=t,this.index=null,0<t.length){this.index=new l(t.length);for(var e=0,i=t;e<i.length;e++){var n=i[e],r=n.minX,o=n.minY,s=n.maxX,a=n.maxY;this.index.add(r,o,s,a)}this.index.finish()}}return Object.defineProperty(t.prototype,\"bbox\",{get:function(){if(null==this.index)return o.empty();var t=this.index,e=t.minX,i=t.minY,n=t.maxX,r=t.maxY;return{minX:e,minY:i,maxX:n,maxY:r}},enumerable:!0,configurable:!0}),t.prototype.search=function(t){var e=this;if(null==this.index)return[];var i=t.minX,n=t.minY,r=t.maxX,o=t.maxY,s=this.index.search(i,n,r,o);return s.map(function(t){return e.points[t]})},t.prototype.indices=function(t){return this.search(t).map(function(t){var e=t.i;return e})},t}();i.SpatialIndex=n},function(t,e,i){var n=t(18);function r(){for(var t=new Array(32),e=\"0123456789ABCDEF\",i=0;i<32;i++)t[i]=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(\"\")}i.startsWith=function(t,e,i){return void 0===i&&(i=0),t.substr(i,e.length)==e},i.uuid4=r;var o=1e3;i.uniqueId=function(t){var e=n.settings.dev?\"j\"+o++:r();return null!=t?t+\"-\"+e:e},i.escape=function(t){return t.replace(/(?:[&<>\"'`])/g,function(t){switch(t){case\"&\":return\"&amp;\";case\"<\":return\"&lt;\";case\">\":return\"&gt;\";case'\"':return\"&quot;\";case\"'\":return\"&#x27;\";case\"`\":return\"&#x60;\";default:return t}})},i.unescape=function(t){return t.replace(/&(amp|lt|gt|quot|#x27|#x60);/g,function(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}})},i.use_strict=function(t){return\"'use strict';\\n\"+t}},function(t,e,i){i.svg_colors={indianred:\"#CD5C5C\",lightcoral:\"#F08080\",salmon:\"#FA8072\",darksalmon:\"#E9967A\",lightsalmon:\"#FFA07A\",crimson:\"#DC143C\",red:\"#FF0000\",firebrick:\"#B22222\",darkred:\"#8B0000\",pink:\"#FFC0CB\",lightpink:\"#FFB6C1\",hotpink:\"#FF69B4\",deeppink:\"#FF1493\",mediumvioletred:\"#C71585\",palevioletred:\"#DB7093\",coral:\"#FF7F50\",tomato:\"#FF6347\",orangered:\"#FF4500\",darkorange:\"#FF8C00\",orange:\"#FFA500\",gold:\"#FFD700\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",lemonchiffon:\"#FFFACD\",lightgoldenrodyellow:\"#FAFAD2\",papayawhip:\"#FFEFD5\",moccasin:\"#FFE4B5\",peachpuff:\"#FFDAB9\",palegoldenrod:\"#EEE8AA\",khaki:\"#F0E68C\",darkkhaki:\"#BDB76B\",lavender:\"#E6E6FA\",thistle:\"#D8BFD8\",plum:\"#DDA0DD\",violet:\"#EE82EE\",orchid:\"#DA70D6\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",mediumorchid:\"#BA55D3\",mediumpurple:\"#9370DB\",blueviolet:\"#8A2BE2\",darkviolet:\"#9400D3\",darkorchid:\"#9932CC\",darkmagenta:\"#8B008B\",purple:\"#800080\",indigo:\"#4B0082\",slateblue:\"#6A5ACD\",darkslateblue:\"#483D8B\",mediumslateblue:\"#7B68EE\",greenyellow:\"#ADFF2F\",chartreuse:\"#7FFF00\",lawngreen:\"#7CFC00\",lime:\"#00FF00\",limegreen:\"#32CD32\",palegreen:\"#98FB98\",lightgreen:\"#90EE90\",mediumspringgreen:\"#00FA9A\",springgreen:\"#00FF7F\",mediumseagreen:\"#3CB371\",seagreen:\"#2E8B57\",forestgreen:\"#228B22\",green:\"#008000\",darkgreen:\"#006400\",yellowgreen:\"#9ACD32\",olivedrab:\"#6B8E23\",olive:\"#808000\",darkolivegreen:\"#556B2F\",mediumaquamarine:\"#66CDAA\",darkseagreen:\"#8FBC8F\",lightseagreen:\"#20B2AA\",darkcyan:\"#008B8B\",teal:\"#008080\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",lightcyan:\"#E0FFFF\",paleturquoise:\"#AFEEEE\",aquamarine:\"#7FFFD4\",turquoise:\"#40E0D0\",mediumturquoise:\"#48D1CC\",darkturquoise:\"#00CED1\",cadetblue:\"#5F9EA0\",steelblue:\"#4682B4\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",lightblue:\"#ADD8E6\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",deepskyblue:\"#00BFFF\",dodgerblue:\"#1E90FF\",cornflowerblue:\"#6495ED\",royalblue:\"#4169E1\",blue:\"#0000FF\",mediumblue:\"#0000CD\",darkblue:\"#00008B\",navy:\"#000080\",midnightblue:\"#191970\",cornsilk:\"#FFF8DC\",blanchedalmond:\"#FFEBCD\",bisque:\"#FFE4C4\",navajowhite:\"#FFDEAD\",wheat:\"#F5DEB3\",burlywood:\"#DEB887\",tan:\"#D2B48C\",rosybrown:\"#BC8F8F\",sandybrown:\"#F4A460\",goldenrod:\"#DAA520\",darkgoldenrod:\"#B8860B\",peru:\"#CD853F\",chocolate:\"#D2691E\",saddlebrown:\"#8B4513\",sienna:\"#A0522D\",brown:\"#A52A2A\",maroon:\"#800000\",white:\"#FFFFFF\",snow:\"#FFFAFA\",honeydew:\"#F0FFF0\",mintcream:\"#F5FFFA\",azure:\"#F0FFFF\",aliceblue:\"#F0F8FF\",ghostwhite:\"#F8F8FF\",whitesmoke:\"#F5F5F5\",seashell:\"#FFF5EE\",beige:\"#F5F5DC\",oldlace:\"#FDF5E6\",floralwhite:\"#FFFAF0\",ivory:\"#FFFFF0\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lavenderblush:\"#FFF0F5\",mistyrose:\"#FFE4E1\",gainsboro:\"#DCDCDC\",lightgray:\"#D3D3D3\",lightgrey:\"#D3D3D3\",silver:\"#C0C0C0\",darkgray:\"#A9A9A9\",darkgrey:\"#A9A9A9\",gray:\"#808080\",grey:\"#808080\",dimgray:\"#696969\",dimgrey:\"#696969\",lightslategray:\"#778899\",lightslategrey:\"#778899\",slategray:\"#708090\",slategrey:\"#708090\",darkslategray:\"#2F4F4F\",darkslategrey:\"#2F4F4F\",black:\"#000000\"},i.is_svg_color=function(t){return t in i.svg_colors}},function(t,e,s){var r=t(389),n=t(361),o=t(390),_=t(38),a=t(44);function l(t,e,i){if(a.isNumber(t)){var n=function(){switch(!1){case Math.floor(t)!=t:return\"%d\";case!(.1<Math.abs(t)&&Math.abs(t)<1e3):return\"%0.3f\";default:return\"%0.3e\"}}();return r.sprintf(n,t)}return\"\"+t}function p(t,e,i,n){if(null==i)return l;if(null!=n&&(t in n||e in n)){var r=e in n?e:t,o=n[r];if(a.isString(o)){if(o in s.DEFAULT_FORMATTERS)return s.DEFAULT_FORMATTERS[o];throw new Error(\"Unknown tooltip field formatter type '\"+o+\"'\")}return function(t,e,i){return o.format(t,e,i)}}return s.DEFAULT_FORMATTERS.numeral}function d(t,e,i,n){if(\"$\"==t[0]){if(t.substring(1)in n)return n[t.substring(1)];throw new Error(\"Unknown special variable '\"+t+\"'\")}var r=e.get_column(t);if(null==r)return null;if(a.isNumber(i))return r[i];var o=r[i.index];if(a.isTypedArray(o)||a.isArray(o)){if(a.isArray(o[0])){var s=o[i.dim2];return s[i.dim1]}return o[i.flat_index]}return o}s.DEFAULT_FORMATTERS={numeral:function(t,e,i){return n.format(t,e)},datetime:function(t,e,i){return o(t,e)},printf:function(t,e,i){return r.sprintf(e,t)}},s.basic_formatter=l,s.get_formatter=p,s.get_value=d,s.replace_placeholders=function(t,a,l,h,u){void 0===u&&(u={});var c=t.replace(/(?:^|[^@])([@|\\$](?:\\w+|{[^{}]+}))(?:{[^{}]+})?/g,function(t,e,i){return\"\"+e});return t=(t=(t=t.replace(/@\\$name/g,function(t){return\"@{\"+u.name+\"}\"})).replace(/(^|[^\\$])\\$(\\w+)/g,function(t,e,i){return e+\"@$\"+i})).replace(/(^|[^@])@(?:(\\$?\\w+)|{([^{}]+)})(?:{([^{}]+)})?/g,function(t,e,i,n,r){var o=d(i=null!=n?n:i,a,l,u);if(null==o)return\"\"+e+_.escape(\"???\");if(\"safe\"==r)return\"\"+e+o;var s=p(i,c,r,h);return\"\"+e+_.escape(s(o,r,u))})}},function(t,e,i){var a=t(5),l={};i.get_text_height=function(t){if(null!=l[t])return l[t];var e=a.span({style:{font:t}},\"Hg\"),i=a.div({style:{display:\"inline-block\",width:\"1px\",height:\"0px\"}}),n=a.div({},e,i);document.body.appendChild(n);try{i.style.verticalAlign=\"baseline\";var r=a.offset(i).top-a.offset(e).top;i.style.verticalAlign=\"bottom\";var o=a.offset(i).top-a.offset(e).top,s={height:o,ascent:r,descent:o-r};return l[t]=s}finally{document.body.removeChild(n)}}},function(t,e,i){var a=(\"undefined\"!=typeof window?window.requestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.webkitRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.mozRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.msRequestAnimationFrame:void 0)||function(t){return t(Date.now()),-1};i.throttle=function(t,i){var n=null,r=0,o=!1,s=function(){r=Date.now(),n=null,o=!1,t()};return function(){var t=Date.now(),e=i-(t-r);e<=0&&!o?(null!=n&&clearTimeout(n),o=!0,a(s)):n||o||(n=setTimeout(function(){return a(s)},e))}}},function(t,e,i){i.concat=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];for(var n=t.length,r=0,o=e;r<o.length;r++){var s=o[r];n+=s.length}var a=new t.constructor(n);a.set(t,0);for(var l=t.length,h=0,u=e;h<u.length;h++){var s=u[h];a.set(s,l),l+=s.length}return a}},function(t,e,i){var n=t(21),r=Object.prototype.toString;function o(t){return\"[object Number]\"===r.call(t)}function s(t){var e=typeof t;return\"function\"===e||\"object\"===e&&!!t}i.isBoolean=function(t){return!0===t||!1===t||\"[object Boolean]\"===r.call(t)},i.isNumber=o,i.isInteger=function(t){return o(t)&&isFinite(t)&&Math.floor(t)===t},i.isString=function(t){return\"[object String]\"===r.call(t)},i.isStrictNaN=function(t){return o(t)&&t!==+t},i.isFunction=function(t){return\"[object Function]\"===r.call(t)},i.isArray=function(t){return Array.isArray(t)},i.isArrayOf=function(t,e){return n.all(t,e)},i.isArrayableOf=function(t,e){for(var i=0,n=t.length;i<n;i++)if(!e(t[i]))return!1;return!0},i.isTypedArray=function(t){return null!=t&&null!=t.buffer&&t.buffer instanceof ArrayBuffer},i.isObject=s,i.isPlainObject=function(t){return s(t)&&(null==t.constructor||t.constructor===Object)}},function(t,e,i){function n(t){var e=getComputedStyle(t).fontSize;return null!=e?parseInt(e,10):null}i.getDeltaY=function(t){var e,i=-t.deltaY;if(t.target instanceof HTMLElement)switch(t.deltaMode){case t.DOM_DELTA_LINE:i*=n((e=t.target).offsetParent||document.body)||n(e)||16;break;case t.DOM_DELTA_PAGE:i*=t.target.clientHeight}return i}},function(t,e,i){var f=t(31);function v(t,e,i){var n=[t.start,t.end],r=n[0],o=n[1],s=null!=i?i:(o+r)/2,a=r-(r-s)*e,l=o-(o-s)*e;return[a,l]}function m(t,e){var i=e[0],n=e[1],r={};for(var o in t){var s=t[o],a=s.r_invert(i,n),l=a[0],h=a[1];r[o]={start:l,end:h}}return r}i.scale_highlow=v,i.get_info=m,i.scale_range=function(t,e,i,n,r){void 0===i&&(i=!0),void 0===n&&(n=!0),e=f.clamp(e,-.9,.9);var o=i?e:0,s=v(t.bbox.h_range,o,null!=r?r.x:void 0),a=s[0],l=s[1],h=m(t.xscales,[a,l]),u=n?e:0,c=v(t.bbox.v_range,u,null!=r?r.y:void 0),_=c[0],p=c[1],d=m(t.yscales,[_,p]);return{xrs:h,yrs:d,factor:e}}},function(t,e,i){var n=t(44);i.isValue=function(t){return n.isObject(t)&&\"value\"in t},i.isField=function(t){return n.isObject(t)&&\"field\"in t}},function(t,e,i){var n=t(391),r=t(19),o=t(38),s=function(i){function t(t){var e=i.call(this)||this;if(e.removed=new r.Signal0(e,\"removed\"),null==t.model)throw new Error(\"model of a view wasn't configured\");return e.model=t.model,e._parent=t.parent,e.id=t.id||o.uniqueId(),e.initialize(t),!1!==t.connect_signals&&e.connect_signals(),e}return n.__extends(t,i),t.prototype.initialize=function(t){},t.prototype.remove=function(){this._parent=void 0,this.disconnect_signals(),this.removed.emit()},t.prototype.toString=function(){return this.model.type+\"View(\"+this.id+\")\"},Object.defineProperty(t.prototype,\"parent\",{get:function(){if(void 0!==this._parent)return this._parent;throw new Error(\"parent of a view wasn't configured\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_root\",{get:function(){return null===this.parent},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"root\",{get:function(){return this.is_root?this:this.parent.root},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){},t.prototype.disconnect_signals=function(){r.Signal.disconnectReceiver(this)},t.prototype.notify_finished=function(){this.root.notify_finished()},t}(r.Signalable());i.View=s},function(t,e,i){var n=t(391),r=t(16),o=t(27),s=function(){function t(t,e){void 0===e&&(e=\"\"),this.obj=t,this.prefix=e,this.cache={};var i=t.properties[e+this.do_attr].spec;this.doit=null!==i.value;for(var n=0,r=this.attrs;n<r.length;n++){var o=r[n];this[o]=t.properties[e+o]}}return t.prototype.warm_cache=function(t){for(var e=0,i=this.attrs;e<i.length;e++){var n=i[e],r=this.obj.properties[this.prefix+n];if(void 0!==r.spec.value)this.cache[n]=r.spec.value;else{if(null==t)throw new Error(\"source is required with a vectorized visual property\");this.cache[n+\"_array\"]=r.array(t)}}},t.prototype.cache_select=function(t,e){var i,n=this.obj.properties[this.prefix+t];return void 0!==n.spec.value?this.cache[t]=i=n.spec.value:this.cache[t]=i=this.cache[t+\"_array\"][e],i},t.prototype.set_vectorize=function(t,e){null!=this.all_indices?this._set_vectorize(t,this.all_indices[e]):this._set_vectorize(t,e)},t}(),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.set_value=function(t){t.strokeStyle=this.line_color.value(),t.globalAlpha=this.line_alpha.value(),t.lineWidth=this.line_width.value(),t.lineJoin=this.line_join.value(),t.lineCap=this.line_cap.value(),t.setLineDash(this.line_dash.value()),t.setLineDashOffset(this.line_dash_offset.value())},e.prototype._set_vectorize=function(t,e){this.cache_select(\"line_color\",e),t.strokeStyle!==this.cache.line_color&&(t.strokeStyle=this.cache.line_color),this.cache_select(\"line_alpha\",e),t.globalAlpha!==this.cache.line_alpha&&(t.globalAlpha=this.cache.line_alpha),this.cache_select(\"line_width\",e),t.lineWidth!==this.cache.line_width&&(t.lineWidth=this.cache.line_width),this.cache_select(\"line_join\",e),t.lineJoin!==this.cache.line_join&&(t.lineJoin=this.cache.line_join),this.cache_select(\"line_cap\",e),t.lineCap!==this.cache.line_cap&&(t.lineCap=this.cache.line_cap),this.cache_select(\"line_dash\",e),t.getLineDash()!==this.cache.line_dash&&t.setLineDash(this.cache.line_dash),this.cache_select(\"line_dash_offset\",e),t.getLineDashOffset()!==this.cache.line_dash_offset&&t.setLineDashOffset(this.cache.line_dash_offset)},e.prototype.color_value=function(){var t=o.color2rgba(this.line_color.value(),this.line_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},e}(i.ContextProperties=s);(i.Line=h).prototype.attrs=Object.keys(r.line()),h.prototype.do_attr=\"line_color\";var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.set_value=function(t){t.fillStyle=this.fill_color.value(),t.globalAlpha=this.fill_alpha.value()},e.prototype._set_vectorize=function(t,e){this.cache_select(\"fill_color\",e),t.fillStyle!==this.cache.fill_color&&(t.fillStyle=this.cache.fill_color),this.cache_select(\"fill_alpha\",e),t.globalAlpha!==this.cache.fill_alpha&&(t.globalAlpha=this.cache.fill_alpha)},e.prototype.color_value=function(){var t=o.color2rgba(this.fill_color.value(),this.fill_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},e}(s);(i.Fill=u).prototype.attrs=Object.keys(r.fill()),u.prototype.do_attr=\"fill_color\";var c=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.cache_select=function(t,e){var i;if(\"font\"==t){a.prototype.cache_select.call(this,\"text_font_style\",e),a.prototype.cache_select.call(this,\"text_font_size\",e),a.prototype.cache_select.call(this,\"text_font\",e);var n=this.cache,r=n.text_font_style,o=n.text_font_size,s=n.text_font;this.cache.font=i=r+\" \"+o+\" \"+s}else i=a.prototype.cache_select.call(this,t,e);return i},t.prototype.font_value=function(){var t=this.text_font.value(),e=this.text_font_size.value(),i=this.text_font_style.value();return i+\" \"+e+\" \"+t},t.prototype.color_value=function(){var t=o.color2rgba(this.text_color.value(),this.text_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},t.prototype.set_value=function(t){t.font=this.font_value(),t.fillStyle=this.text_color.value(),t.globalAlpha=this.text_alpha.value(),t.textAlign=this.text_align.value(),t.textBaseline=this.text_baseline.value()},t.prototype._set_vectorize=function(t,e){this.cache_select(\"font\",e),t.font!==this.cache.font&&(t.font=this.cache.font),this.cache_select(\"text_color\",e),t.fillStyle!==this.cache.text_color&&(t.fillStyle=this.cache.text_color),this.cache_select(\"text_alpha\",e),t.globalAlpha!==this.cache.text_alpha&&(t.globalAlpha=this.cache.text_alpha),this.cache_select(\"text_align\",e),t.textAlign!==this.cache.text_align&&(t.textAlign=this.cache.text_align),this.cache_select(\"text_baseline\",e),t.textBaseline!==this.cache.text_baseline&&(t.textBaseline=this.cache.text_baseline)},t}(s);(i.Text=c).prototype.attrs=Object.keys(r.text()),c.prototype.do_attr=\"text_color\";var a=function(){function t(t){for(var e=0,i=t.mixins;e<i.length;e++){var n=i[e],r=n.split(\":\"),o=r[0],s=r[1],a=void 0===s?\"\":s,l=void 0;switch(o){case\"line\":l=h;break;case\"fill\":l=u;break;case\"text\":l=c;break;default:throw new Error(\"unknown visual: \"+o)}this[a+o]=new l(t,a)}}return t.prototype.warm_cache=function(t){for(var e in this)if(this.hasOwnProperty(e)){var i=this[e];i instanceof s&&i.warm_cache(t)}},t.prototype.set_all_indices=function(t){for(var e in this)if(this.hasOwnProperty(e)){var i=this[e];i instanceof s&&(i.all_indices=t)}},t}();i.Visuals=a},function(t,e,i){var o=t(391),s=t(0),_=t(286),j=t(14),n=t(3),p=t(8),r=t(19),a=t(34),N=t(36),m=t(29),y=t(21),b=t(32),x=t(30),d=t(44),l=t(157),F=t(200),g=t(59),h=t(51),u=function(){function t(t){this.document=t,this.session=null,this.subscribed_models=new m.Set}return t.prototype.send_event=function(t){null!=this.session&&this.session.send_event(t)},t.prototype.trigger=function(t){for(var e=0,i=this.subscribed_models.values;e<i.length;e++){var n=i[e];if(null==t.model_id||t.model_id===n){var r=this.document._all_models[n];null!=r&&r._process_event(t)}}},t}();i.EventManager=u,i.documents=[],i.DEFAULT_TITLE=\"Bokeh Application\";var c=function(){function P(){i.documents.push(this),this._init_timestamp=Date.now(),this._title=i.DEFAULT_TITLE,this._roots=[],this._all_models={},this._all_models_by_name=new m.MultiDict,this._all_models_freeze_count=0,this._callbacks=[],this.event_manager=new u(this),this.idle=new r.Signal0(this,\"idle\"),this._idle_roots=new WeakMap,this._interactive_timestamp=null,this._interactive_plot=null}return Object.defineProperty(P.prototype,\"layoutables\",{get:function(){return this._roots.filter(function(t){return t instanceof l.LayoutDOM})},enumerable:!0,configurable:!0}),Object.defineProperty(P.prototype,\"is_idle\",{get:function(){for(var t=0,e=this.layoutables;t<e.length;t++){var i=e[t];if(!this._idle_roots.has(i))return!1}return!0},enumerable:!0,configurable:!0}),P.prototype.notify_idle=function(t){this._idle_roots.set(t,!0),this.is_idle&&(j.logger.info(\"document idle at \"+(Date.now()-this._init_timestamp)+\" ms\"),this.idle.emit())},P.prototype.clear=function(){this._push_all_models_freeze();try{for(;0<this._roots.length;)this.remove_root(this._roots[0])}finally{this._pop_all_models_freeze()}},P.prototype.interactive_start=function(t){null==this._interactive_plot&&(this._interactive_plot=t,this._interactive_plot.trigger_event(new n.LODStart({}))),this._interactive_timestamp=Date.now()},P.prototype.interactive_stop=function(t){null!=this._interactive_plot&&this._interactive_plot.id===t.id&&this._interactive_plot.trigger_event(new n.LODEnd({})),this._interactive_plot=null,this._interactive_timestamp=null},P.prototype.interactive_duration=function(){return null==this._interactive_timestamp?-1:Date.now()-this._interactive_timestamp},P.prototype.destructively_move=function(t){if(t===this)throw new Error(\"Attempted to overwrite a document with itself\");t.clear();var e=y.copy(this._roots);this.clear();for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null!=r.document)throw new Error(\"Somehow we didn't detach \"+r)}if(0!==Object.keys(this._all_models).length)throw new Error(\"this._all_models still had stuff in it: \"+this._all_models);for(var o=0,s=e;o<s.length;o++){var r=s[o];t.add_root(r)}t.set_title(this._title)},P.prototype._push_all_models_freeze=function(){this._all_models_freeze_count+=1},P.prototype._pop_all_models_freeze=function(){this._all_models_freeze_count-=1,0===this._all_models_freeze_count&&this._recompute_all_models()},P.prototype._invalidate_all_models=function(){j.logger.debug(\"invalidating document models\"),0===this._all_models_freeze_count&&this._recompute_all_models()},P.prototype._recompute_all_models=function(){for(var t=new m.Set,e=0,i=this._roots;e<i.length;e++){var n=i[e];t=t.union(n.references())}for(var r=new m.Set(b.values(this._all_models)),o=r.diff(t),s=t.diff(r),a={},l=0,h=t.values;l<h.length;l++){var u=h[l];a[u.id]=u}for(var c=0,_=o.values;c<_.length;c++){var p=_[c];p.detach_document(),p instanceof g.Model&&null!=p.name&&this._all_models_by_name.remove_value(p.name,p)}for(var d=0,f=s.values;d<f.length;d++){var v=f[d];v.attach_document(this),v instanceof g.Model&&null!=v.name&&this._all_models_by_name.add_value(v.name,v)}this._all_models=a},P.prototype.roots=function(){return this._roots},P.prototype.add_root=function(t,e){if(j.logger.debug(\"Adding root: \"+t),!y.includes(this._roots,t)){this._push_all_models_freeze();try{this._roots.push(t)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new h.RootAddedEvent(this,t,e))}},P.prototype.remove_root=function(t,e){var i=this._roots.indexOf(t);if(!(i<0)){this._push_all_models_freeze();try{this._roots.splice(i,1)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new h.RootRemovedEvent(this,t,e))}},P.prototype.title=function(){return this._title},P.prototype.set_title=function(t,e){t!==this._title&&(this._title=t,this._trigger_on_change(new h.TitleChangedEvent(this,t,e)))},P.prototype.get_model_by_id=function(t){return t in this._all_models?this._all_models[t]:null},P.prototype.get_model_by_name=function(t){return this._all_models_by_name.get_one(t,\"Multiple models are named '\"+t+\"'\")},P.prototype.on_change=function(t){y.includes(this._callbacks,t)||this._callbacks.push(t)},P.prototype.remove_on_change=function(t){var e=this._callbacks.indexOf(t);0<=e&&this._callbacks.splice(e,1)},P.prototype._trigger_on_change=function(t){for(var e=0,i=this._callbacks;e<i.length;e++){var n=i[e];n(t)}},P.prototype._notify_change=function(t,e,i,n,r){\"name\"===e&&(this._all_models_by_name.remove_value(i,t),null!=n&&this._all_models_by_name.add_value(n,t));var o=null!=r?r.setter_id:void 0,s=null!=r?r.hint:void 0;this._trigger_on_change(new h.ModelChangedEvent(this,t,e,i,n,o,s))},P._references_json=function(t,e){void 0===e&&(e=!0);for(var i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o.ref();s.attributes=o.attributes_as_json(e),delete s.attributes.id,i.push(s)}return i},P._instantiate_object=function(t,e,i){var n=o.__assign({},i,{id:t,__deferred__:!0}),r=s.Models(e);return new r(n)},P._instantiate_references_json=function(t,e){for(var i={},n=0,r=t;n<r.length;n++){var o=r[n],s=o.id,a=o.type,l=o.attributes||{},h=void 0;s in e?h=e[s]:(h=P._instantiate_object(s,a,l),null!=o.subtype&&h.set_subtype(o.subtype)),i[h.id]=h}return i},P._resolve_refs=function(t,e,i){function o(t){if(a.is_ref(t)){if(t.id in e)return e[t.id];if(t.id in i)return i[t.id];throw new Error(\"reference \"+JSON.stringify(t)+\" isn't known (not in Document?)\")}return d.isArray(t)?function(t){for(var e=[],i=0,n=t;i<n.length;i++){var r=n[i];e.push(o(r))}return e}(t):d.isPlainObject(t)?function(t){var e={};for(var i in t){var n=t[i];e[i]=o(n)}return e}(t):t}return o(t)},P._initialize_references_json=function(t,e,i){for(var n={},r=0,o=t;r<o.length;r++){var s=o[r],a=s.id,l=s.attributes,h=!(a in e),u=h?i[a]:e[a],c=P._resolve_refs(l,e,i);n[u.id]=[u,c,h]}function _(h,u){var c={};function _(t){if(t instanceof p.HasProps){if(!(t.id in c)&&t.id in h){c[t.id]=!0;var e=h[t.id],i=e[1],n=e[2];for(var r in i){var o=i[r];_(o)}u(t,i,n)}}else if(d.isArray(t))for(var s=0,a=t;s<a.length;s++){var o=a[s];_(o)}else if(d.isPlainObject(t))for(var l in t){var o=t[l];_(o)}}for(var t in h){var e=h[t],i=e[0];_(i)}}_(n,function(t,e,i){i&&t.setv(e,{silent:!0})}),_(n,function(t,e,i){i&&t.finalize()})},P._event_for_attribute_change=function(t,e,i,n,r){var o=n.get_model_by_id(t.id);if(o.attribute_is_serializable(e)){var s={kind:\"ModelChanged\",model:{id:t.id,type:t.type},attr:e,new:i};return p.HasProps._json_record_references(n,i,r,!0),s}return null},P._events_to_sync_objects=function(t,e,i,n){for(var r=Object.keys(t.attributes),o=Object.keys(e.attributes),s=y.difference(r,o),a=y.difference(o,r),l=y.intersection(r,o),h=[],u=0,c=s;u<c.length;u++){var _=c[u];j.logger.warn(\"Server sent key \"+_+\" but we don't seem to have it in our JSON\")}for(var p=0,d=a;p<d.length;p++){var _=d[p],f=e.attributes[_];h.push(P._event_for_attribute_change(t,_,f,i,n))}for(var v=0,m=l;v<m.length;v++){var _=m[v],g=t.attributes[_],f=e.attributes[_];null==g&&null==f||(null==g||null==f?h.push(P._event_for_attribute_change(t,_,f,i,n)):x.isEqual(g,f)||h.push(P._event_for_attribute_change(t,_,f,i,n)))}return h.filter(function(t){return null!=t})},P._compute_patch_since_json=function(t,e){var i=e.to_json(!1);function n(t){for(var e={},i=0,n=t.roots.references;i<n.length;i++){var r=n[i];e[r.id]=r}return e}for(var r=n(t),o={},s=[],a=0,l=t.roots.root_ids;a<l.length;a++){var h=l[a];o[h]=r[h],s.push(h)}for(var u=n(i),c={},_=[],p=0,d=i.roots.root_ids;p<d.length;p++){var h=d[p];c[h]=u[h],_.push(h)}if(s.sort(),_.sort(),0<y.difference(s,_).length||0<y.difference(_,s).length)throw new Error(\"Not implemented: computing add/remove of document roots\");var f={},v=[];for(var m in e._all_models)if(m in r){var g=P._events_to_sync_objects(r[m],u[m],e,f);v=v.concat(g)}return{references:P._references_json(b.values(f),!1),events:v}},P.prototype.to_json_string=function(t){return void 0===t&&(t=!0),JSON.stringify(this.to_json(t))},P.prototype.to_json=function(t){void 0===t&&(t=!0);var e=this._roots.map(function(t){return t.id}),i=b.values(this._all_models);return{version:_.version,title:this._title,roots:{root_ids:e,references:P._references_json(i,t)}}},P.from_json_string=function(t){var e=JSON.parse(t);return P.from_json(e)},P.from_json=function(t){j.logger.debug(\"Creating Document from JSON\");var e=t.version,i=-1!==e.indexOf(\"+\")||-1!==e.indexOf(\"-\"),n=\"Library versions: JS (\"+_.version+\") / Python (\"+e+\")\";i||_.version===e?j.logger.debug(n):(j.logger.warn(\"JS/Python version mismatch\"),j.logger.warn(n));var r=t.roots,o=r.root_ids,s=r.references,a=P._instantiate_references_json(s,{});P._initialize_references_json(s,{},a);for(var l=new P,h=0,u=o;h<u.length;h++){var c=u[h];l.add_root(a[c])}return l.set_title(t.title),l},P.prototype.replace_with_json=function(t){var e=P.from_json(t);e.destructively_move(this)},P.prototype.create_json_patch_string=function(t){return JSON.stringify(this.create_json_patch(t))},P.prototype.create_json_patch=function(t){for(var e={},i=[],n=0,r=t;n<r.length;n++){var o=r[n];if(o.document!==this)throw j.logger.warn(\"Cannot create a patch using events from a different document, event had \",o.document,\" we are \",this),new Error(\"Cannot create a patch using events from a different document\");i.push(o.json(e))}return{events:i,references:P._references_json(b.values(e))}},P.prototype.apply_json_patch=function(t,e,i){for(var n,r=t.references,o=t.events,s=P._instantiate_references_json(r,this._all_models),a=0,l=o;a<l.length;a++){var h=l[a];switch(h.kind){case\"RootAdded\":case\"RootRemoved\":case\"ModelChanged\":var u=h.model.id;if(u in this._all_models)s[u]=this._all_models[u];else if(!(u in s))throw j.logger.warn(\"Got an event for unknown model \",h.model),new Error(\"event model wasn't known\")}}var c={},_={};for(var p in s){var d=s[p];p in this._all_models?c[p]=d:_[p]=d}P._initialize_references_json(r,c,_);for(var f=0,v=o;f<v.length;f++){var h=v[f];switch(h.kind){case\"ModelChanged\":var m=h.model.id;if(!(m in this._all_models))throw new Error(\"Cannot apply patch to \"+m+\" which is not in the document\");var g=this._all_models[m],y=h.attr,b=h.model.type;if(\"data\"===y&&\"ColumnDataSource\"===b){var x=N.decode_column_data(h.new,e),w=x[0],k=x[1];g.setv({_shapes:k,data:w},{setter_id:i})}else{var d=P._resolve_refs(h.new,c,_);g.setv(((n={})[y]=d,n),{setter_id:i})}break;case\"ColumnDataChanged\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot stream to \"+S+\" which is not in the document\");var C=this._all_models[S],T=N.decode_column_data(h.new,e),w=T[0],k=T[1];if(null!=h.cols){for(var A in C.data)A in w||(w[A]=C.data[A]);for(var A in C._shapes)A in k||(k[A]=C._shapes[A])}C.setv({_shapes:k,data:w},{setter_id:i,check_eq:!1});break;case\"ColumnsStreamed\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot stream to \"+S+\" which is not in the document\");var C=this._all_models[S];if(!(C instanceof F.ColumnDataSource))throw new Error(\"Cannot stream to non-ColumnDataSource\");var w=h.data,E=h.rollover;C.stream(w,E,i);break;case\"ColumnsPatched\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot patch \"+S+\" which is not in the document\");var C=this._all_models[S];if(!(C instanceof F.ColumnDataSource))throw new Error(\"Cannot patch non-ColumnDataSource\");var M=h.patches;C.patch(M,i);break;case\"RootAdded\":var O=h.model.id,z=s[O];this.add_root(z,i);break;case\"RootRemoved\":var O=h.model.id,z=s[O];this.remove_root(z,i);break;case\"TitleChanged\":this.set_title(h.title,i);break;default:throw new Error(\"Unknown patch event \"+JSON.stringify(h))}}},P}();i.Document=c},function(t,e,i){var n=t(391),o=t(8),r=function(t){this.document=t},s=function(l){function t(t,e,i,n,r,o,s){var a=l.call(this,t)||this;return a.model=e,a.attr=i,a.old=n,a.new_=r,a.setter_id=o,a.hint=s,a}return n.__extends(t,l),t.prototype.json=function(t){if(\"id\"===this.attr)throw new Error(\"'id' field should never change, whatever code just set it is wrong\");if(null!=this.hint)return this.hint.json(t);var e=this.new_,i=o.HasProps._value_to_json(this.attr,e,this.model),n={};for(var r in o.HasProps._value_record_references(e,n,!0),this.model.id in n&&this.model!==e&&delete n[this.model.id],n)t[r]=n[r];return{kind:\"ModelChanged\",model:this.model.ref(),attr:this.attr,new:i}},t}(i.DocumentChangedEvent=r);i.ModelChangedEvent=s;var a=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.column_source=e,n.patches=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"ColumnsPatched\",column_source:this.column_source,patches:this.patches}},t}(r);i.ColumnsPatchedEvent=a;var l=function(o){function t(t,e,i,n){var r=o.call(this,t)||this;return r.column_source=e,r.data=i,r.rollover=n,r}return n.__extends(t,o),t.prototype.json=function(t){return{kind:\"ColumnsStreamed\",column_source:this.column_source,data:this.data,rollover:this.rollover}},t}(r);i.ColumnsStreamedEvent=l;var h=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.title=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"TitleChanged\",title:this.title}},t}(r);i.TitleChangedEvent=h;var u=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.model=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return o.HasProps._value_record_references(this.model,t,!0),{kind:\"RootAdded\",model:this.model.ref()}},t}(r);i.RootAddedEvent=u;var c=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.model=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"RootRemoved\",model:this.model.ref()}},t}(r);i.RootRemovedEvent=c},function(t,e,i){var n=t(391);n.__exportStar(t(50),i),n.__exportStar(t(51),i)},function(t,e,n){var r=t(5);function o(t){var e=document.getElementById(t);if(null==e)throw new Error(\"Error rendering Bokeh model: could not find #\"+t+\" HTML tag\");if(!document.body.contains(e))throw new Error(\"Error rendering Bokeh model: element #\"+t+\" must be under <body>\");if(\"SCRIPT\"==e.tagName){var i=r.div({class:n.BOKEH_ROOT});r.replaceWith(e,i),e=i}return e}n.BOKEH_ROOT=\"bk-root\",n.inject_css=function(t){var e=r.link({href:t,rel:\"stylesheet\",type:\"text/css\"});document.body.appendChild(e)},n.inject_raw_css=function(t){var e=r.style({},t);document.body.appendChild(e)},n._resolve_element=function(t){var e=t.elementid;return null!=e?o(e):document.body},n._resolve_root_elements=function(t){var e={};if(null!=t.roots)for(var i in t.roots)e[i]=o(t.roots[i]);return e}},function(t,e,i){var d=t(52),f=t(14),a=t(25),v=t(38),m=t(44),g=t(57),y=t(56),b=t(53),n=t(57);i.add_document_standalone=n.add_document_standalone;var r=t(56);i.add_document_from_session=r.add_document_from_session;var o=t(55);i.embed_items_notebook=o.embed_items_notebook,i.kernels=o.kernels;var s=t(53);function l(t,e,i,n){m.isString(t)&&(t=JSON.parse(v.unescape(t)));var r={};for(var o in t){var s=t[o];r[o]=d.Document.from_json(s)}for(var a=0,l=e;a<l.length;a++){var h=l[a],u=b._resolve_element(h),c=b._resolve_root_elements(h);if(null!=h.docid)g.add_document_standalone(r[h.docid],u,c,h.use_for_title);else{if(null==h.sessionid)throw new Error(\"Error rendering Bokeh items: either 'docid' or 'sessionid' was expected.\");var _=y._get_ws_url(i,n);f.logger.debug(\"embed: computed ws url: \"+_);var p=y.add_document_from_session(_,h.sessionid,u,c,h.use_for_title);p.then(function(){console.log(\"Bokeh items were rendered successfully\")},function(t){console.log(\"Error rendering Bokeh items:\",t)})}}}i.BOKEH_ROOT=s.BOKEH_ROOT,i.inject_css=s.inject_css,i.inject_raw_css=s.inject_raw_css,i.embed_item=function(t,e){var i,n={},r=v.uuid4();n[r]=t.doc,null==e&&(e=t.target_id);var o=document.getElementById(e);null!=o&&o.classList.add(b.BOKEH_ROOT);var s={roots:((i={})[t.root_id]=e,i),docid:r};a.defer(function(){return l(n,[s])})},i.embed_items=function(t,e,i,n){a.defer(function(){return l(t,e,i,n)})}},function(t,e,r){var l=t(52),o=t(283),s=t(14),h=t(32),u=t(57),c=t(53);function a(t,e){0<e.buffers.length?t.consume(e.buffers[0].buffer):t.consume(e.content.data);var i=t.message;null!=i&&this.apply_json_patch(i.content,i.buffers)}function _(i,n){if(\"undefined\"!=typeof Jupyter&&null!=Jupyter.notebook.kernel){s.logger.info(\"Registering Jupyter comms for target \"+i);var t=Jupyter.notebook.kernel.comm_manager;try{t.register_target(i,function(t){s.logger.info(\"Registering Jupyter comms for target \"+i);var e=new o.Receiver;t.on_msg(a.bind(n,e))})}catch(t){s.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else if(n.roots()[0].id in r.kernels){s.logger.info(\"Registering JupyterLab comms for target \"+i);var e=r.kernels[n.roots()[0].id];try{e.registerCommTarget(i,function(t){s.logger.info(\"Registering JupyterLab comms for target \"+i);var e=new o.Receiver;t.onMsg=a.bind(n,e)})}catch(t){s.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else console.warn(\"Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest jupyterlab_bokeh extension is installed. In an exported notebook this warning is expected.\")}r.kernels={},r.embed_items_notebook=function(t,e){if(1!=h.size(t))throw new Error(\"embed_items_notebook expects exactly one document in docs_json\");for(var i=l.Document.from_json(h.values(t)[0]),n=0,r=e;n<r.length;n++){var o=r[n];null!=o.notebook_comms_target&&_(o.notebook_comms_target,i);var s=c._resolve_element(o),a=c._resolve_root_elements(o);u.add_document_standalone(i,s,a)}}},function(t,e,i){var s=t(1),a=t(14),l=t(57);i._get_ws_url=function(t,e){var i,n=\"ws:\";return\"https:\"==window.location.protocol&&(n=\"wss:\"),null!=e?(i=document.createElement(\"a\")).href=e:i=window.location,null!=t?\"/\"==t&&(t=\"\"):t=i.pathname.replace(/\\/+$/,\"\"),n+\"//\"+i.host+t+\"/ws\"};var h={};i.add_document_from_session=function(t,e,i,n,r){void 0===n&&(n={}),void 0===r&&(r=!1);var o=window.location.search.substr(1);return function(t,e,i){t in h||(h[t]={});var n=h[t];return e in n||(n[e]=s.pull_session(t,e,i)),n[e]}(t,e,o).then(function(t){return l.add_document_standalone(t.document,i,n,r)},function(t){throw a.logger.error(\"Failed to load Bokeh session \"+e+\": \"+t),t})}},function(t,e,i){var h=t(52),u=t(5),c=t(0),_=t(53);i.add_document_standalone=function(t,o,s,e){void 0===s&&(s={}),void 0===e&&(e=!1);var a={};function i(t){var e;t.id in s?e=s[t.id]:o.classList.contains(_.BOKEH_ROOT)?e=o:(e=u.div({class:_.BOKEH_ROOT}),o.appendChild(e));var i,n,r=(n=new(i=t).default_view({model:i,parent:null}),c.index[i.id]=n);r.renderTo(e),a[t.id]=r}for(var n=0,r=t.roots();n<r.length;n++){var l=r[n];i(l)}return e&&(window.document.title=t.title()),t.on_change(function(t){t instanceof h.RootAddedEvent?i(t.model):t instanceof h.RootRemovedEvent?function(t){var e=t.id;if(e in a){var i=a[e];i.remove(),delete a[e],delete c.index[e]}}(t.model):e&&t instanceof h.TitleChangedEvent&&(window.document.title=t.title)}),a}},function(t,e,i){t(280);var n=t(286);i.version=n.version;var r=t(54);i.embed=r;var o=t(281);i.protocol=o;var s=t(285);i._testing=s;var a=t(14);i.logger=a.logger,i.set_log_level=a.set_log_level;var l=t(18);i.settings=l.settings;var h=t(0);i.Models=h.Models,i.index=h.index;var u=t(52);i.documents=u.documents;var c=t(284);i.safely=c.safely},function(t,e,i){var n=t(391),r=t(8),o=t(15),s=t(44),a=t(32),l=t(14),h=function(_){function i(t){return _.call(this,t)||this}return n.__extends(i,_),i.initClass=function(){this.prototype.type=\"Model\",this.define({tags:[o.Array,[]],name:[o.String],js_property_callbacks:[o.Any,{}],js_event_callbacks:[o.Any,{}],subscribed_events:[o.Array,[]]})},i.prototype.connect_signals=function(){var i=this;for(var t in _.prototype.connect_signals.call(this),this.js_property_callbacks)for(var e=this.js_property_callbacks[t],n=t.split(\":\"),r=n[0],o=n[1],s=void 0===o?null:o,a=function(t){var e=null!=s?l.properties[s][r]:l[r];l.connect(e,function(){return t.execute(i,{})})},l=this,h=0,u=e;h<u.length;h++){var c=u[h];a(c)}this.connect(this.properties.js_event_callbacks.change,function(){return i._update_event_callbacks}),this.connect(this.properties.subscribed_events.change,function(){return i._update_event_callbacks})},i.prototype._process_event=function(e){if(e.is_applicable_to(this)){e=e._customize_event(this);for(var t=0,i=this.js_event_callbacks[e.event_name]||[];t<i.length;t++){var n=i[t];n.execute(e,{})}null!=this.document&&this.subscribed_events.some(function(t){return t==e.event_name})&&this.document.event_manager.send_event(e)}},i.prototype.trigger_event=function(t){null!=this.document&&this.document.event_manager.trigger(t.set_model_id(this.id))},i.prototype._update_event_callbacks=function(){null!=this.document?this.document.event_manager.subscribed_models.add(this.id):l.logger.warn(\"WARNING: Document not defined for updating event callbacks\")},i.prototype._doc_attached=function(){a.isEmpty(this.js_event_callbacks)&&a.isEmpty(this.subscribed_events)||this._update_event_callbacks()},i.prototype.select=function(e){if(s.isString(e))return this.references().filter(function(t){return t instanceof i&&t.name===e});if(e.prototype instanceof r.HasProps)return this.references().filter(function(t){return t instanceof e});throw new Error(\"invalid selector\")},i.prototype.select_one=function(t){var e=this.select(t);switch(e.length){case 0:return null;case 1:return e[0];default:throw new Error(\"found more than one object matching given selector\")}},i}(r.HasProps);(i.Model=h).initClass()},function(t,e,i){var n=t(391),r=t(12),o=t(15),s=t(33),a=t(32),l=t(189),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._get_size=function(){throw new Error(\"not implemented\")},e.prototype.get_size=function(){return this.model.visible?Math.round(this._get_size()):0},e.prototype.set_data=function(t){var e,i,n=this.model.materialize_dataspecs(t);if(a.extend(this,n),this.plot_model.use_map){var r=this;null!=r._x&&(e=s.project_xy(r._x,r._y),r._x=e[0],r._y=e[1]),null!=r._xs&&(i=s.project_xsys(r._xs,r._ys),r._xs=i[0],r._ys=i[1])}},e}(l.RendererView);i.AnnotationView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Annotation\",this.define({plot:[o.Instance]}),this.override({level:\"annotation\"})},t.prototype.add_panel=function(t){if(null==this.panel||t!==this.panel.side){var e=new r.SidePanel({side:t});e.attach_document(this.document),this.set_panel(e)}},t.prototype.set_panel=function(t){this.panel=t,this.level=\"overlay\"},t}(l.Renderer);(i.Annotation=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(62),s=t(200),a=t(15),l=t(31),h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),null==this.model.source&&(this.model.source=new s.ColumnDataSource),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n,r=this.plot_view.frame;return\"data\"==this.model.start_units?(t=r.xscales[this.model.x_range_name].v_compute(this._x_start),e=r.yscales[this.model.y_range_name].v_compute(this._y_start)):(t=r.xview.v_compute(this._x_start),e=r.yview.v_compute(this._y_start)),\"data\"==this.model.end_units?(i=r.xscales[this.model.x_range_name].v_compute(this._x_end),n=r.yscales[this.model.y_range_name].v_compute(this._y_end)):(i=r.xview.v_compute(this._x_end),n=r.yview.v_compute(this._y_end)),[[t,e],[i,n]]},t.prototype.render=function(){if(this.model.visible){var t=this.plot_view.canvas_view.ctx;t.save();var e=this._map_data(),i=e[0],n=e[1];null!=this.model.end&&this._arrow_head(t,\"render\",this.model.end,i,n),null!=this.model.start&&this._arrow_head(t,\"render\",this.model.start,n,i),t.beginPath();var r=this.plot_model.canvas.bbox.rect,o=r.x,s=r.y,a=r.width,l=r.height;t.rect(o,s,a,l),null!=this.model.end&&this._arrow_head(t,\"clip\",this.model.end,i,n),null!=this.model.start&&this._arrow_head(t,\"clip\",this.model.start,n,i),t.closePath(),t.clip(),this._arrow_body(t,i,n),t.restore()}},t.prototype._arrow_head=function(t,e,i,n,r){for(var o=0,s=this._x_start.length;o<s;o++){var a=Math.PI/2+l.atan2([n[0][o],n[1][o]],[r[0][o],r[1][o]]);t.save(),t.translate(r[0][o],r[1][o]),t.rotate(a),\"render\"==e?i.render(t,o):\"clip\"==e&&i.clip(t,o),t.restore()}},t.prototype._arrow_body=function(t,e,i){if(this.visuals.line.doit)for(var n=0,r=this._x_start.length;n<r;n++)this.visuals.line.set_vectorize(t,n),t.beginPath(),t.moveTo(e[0][n],e[1][n]),t.lineTo(i[0][n],i[1][n]),t.stroke()},t}(r.AnnotationView);i.ArrowView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Arrow\",this.prototype.default_view=h,this.mixins([\"line\"]),this.define({x_start:[a.NumberSpec],y_start:[a.NumberSpec],start_units:[a.String,\"data\"],start:[a.Instance,null],x_end:[a.NumberSpec],y_end:[a.NumberSpec],end_units:[a.String,\"data\"],end:[a.Instance,function(){return new o.OpenHead({})}],source:[a.Instance],x_range_name:[a.String,\"default\"],y_range_name:[a.String,\"default\"]})},t}(r.Annotation);(i.Arrow=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(49),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ArrowHead\",this.define({size:[s.Number,25]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.visuals=new o.Visuals(this)},t}(r.Annotation);(i.ArrowHead=a).initClass();var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"OpenHead\",this.mixins([\"line\"])},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(0,0),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.stroke())},t}(a);(i.OpenHead=l).initClass();var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NormalHead\",this.mixins([\"line\",\"fill\"]),this.override({fill_color:\"black\"})},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._normal(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._normal(t,e),t.stroke())},t.prototype._normal=function(t,e){t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.closePath()},t}(a);(i.NormalHead=h).initClass();var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"VeeHead\",this.mixins([\"line\",\"fill\"]),this.override({fill_color:\"black\"})},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(0,.5*this.size),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._vee(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._vee(t,e),t.stroke())},t.prototype._vee=function(t,e){t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.lineTo(0,.5*this.size),t.closePath()},t}(a);(i.VeeHead=u).initClass();var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TeeHead\",this.mixins([\"line\"])},t.prototype.render=function(t,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(.5*this.size,0),t.lineTo(-.5*this.size,0),t.stroke())},t.prototype.clip=function(t,e){},t}(a);(i.TeeHead=c).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(200),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n=this.plot_view.frame,r=this.model.dimension,o=n.xscales[this.model.x_range_name],s=n.yscales[this.model.y_range_name],a=\"height\"==r?s:o,l=\"height\"==r?o:s,h=\"height\"==r?n.yview:n.xview,u=\"height\"==r?n.xview:n.yview;t=\"data\"==this.model.lower.units?a.v_compute(this._lower):h.v_compute(this._lower),e=\"data\"==this.model.upper.units?a.v_compute(this._upper):h.v_compute(this._upper),i=\"data\"==this.model.base.units?l.v_compute(this._base):u.v_compute(this._base);var c=\"height\"==r?[1,0]:[0,1],_=c[0],p=c[1],d=[t,i],f=[e,i];this._lower_sx=d[_],this._lower_sy=d[p],this._upper_sx=f[_],this._upper_sy=f[p]},t.prototype.render=function(){if(this.model.visible){this._map_data();var t=this.plot_view.canvas_view.ctx;t.beginPath(),t.moveTo(this._lower_sx[0],this._lower_sy[0]);for(var e=0,i=this._lower_sx.length;e<i;e++)t.lineTo(this._lower_sx[e],this._lower_sy[e]);for(var n=this._upper_sx.length-1,e=n;0<=e;e--)t.lineTo(this._upper_sx[e],this._upper_sy[e]);t.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(t),t.fill()),t.beginPath(),t.moveTo(this._lower_sx[0],this._lower_sy[0]);for(var e=0,i=this._lower_sx.length;e<i;e++)t.lineTo(this._lower_sx[e],this._lower_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke()),t.beginPath(),t.moveTo(this._upper_sx[0],this._upper_sy[0]);for(var e=0,i=this._upper_sx.length;e<i;e++)t.lineTo(this._upper_sx[e],this._upper_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke())}},t}(r.AnnotationView);i.BandView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Band\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({lower:[s.DistanceSpec],upper:[s.DistanceSpec],base:[s.DistanceSpec],dimension:[s.Dimension,\"height\"],source:[s.Instance,function(){return new o.ColumnDataSource}],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t}(r.Annotation);(i.Band=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(19),l=t(5),s=t(15),a=t(24);i.EDGE_TOLERANCE=2.5;var h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),this.el.classList.add(\"bk-shading\"),l.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?(this.connect(this.model.change,function(){return t.render()}),this.connect(this.model.data_update,function(){return t.render()})):(this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.data_update,function(){return t.plot_view.request_render()}))},t.prototype.render=function(){var o=this;if(this.model.visible||\"css\"!=this.model.render_mode||l.hide(this.el),this.model.visible)if(null!=this.model.left||null!=this.model.right||null!=this.model.top||null!=this.model.bottom){var t=this.plot_model.frame,e=t.xscales[this.model.x_range_name],i=t.yscales[this.model.y_range_name],n=function(t,e,i,n,r){return null!=t?o.model.screen?t:\"data\"==e?i.compute(t):n.compute(t):r};this.sleft=n(this.model.left,this.model.left_units,e,t.xview,t._left.value),this.sright=n(this.model.right,this.model.right_units,e,t.xview,t._right.value),this.stop=n(this.model.top,this.model.top_units,i,t.yview,t._top.value),this.sbottom=n(this.model.bottom,this.model.bottom_units,i,t.yview,t._bottom.value);var r=\"css\"==this.model.render_mode?this._css_box.bind(this):this._canvas_box.bind(this);r(this.sleft,this.sright,this.sbottom,this.stop)}else l.hide(this.el)},t.prototype._css_box=function(t,e,i,n){var r=this.model.properties.line_width.value(),o=Math.floor(e-t)-r,s=Math.floor(i-n)-r;this.el.style.left=t+\"px\",this.el.style.width=o+\"px\",this.el.style.top=n+\"px\",this.el.style.height=s+\"px\",this.el.style.borderWidth=r+\"px\",this.el.style.borderColor=this.model.properties.line_color.value(),this.el.style.backgroundColor=this.model.properties.fill_color.value(),this.el.style.opacity=this.model.properties.fill_alpha.value();var a=this.model.properties.line_dash.value().length<2?\"solid\":\"dashed\";this.el.style.borderStyle=a,l.show(this.el)},t.prototype._canvas_box=function(t,e,i,n){var r=this.plot_view.canvas_view.ctx;r.save(),r.beginPath(),r.rect(t,n,e-t,i-n),this.visuals.fill.set_value(r),r.fill(),this.visuals.line.set_value(r),r.stroke(),r.restore()},t.prototype.interactive_bbox=function(){var t=this.model.properties.line_width.value()+i.EDGE_TOLERANCE;return new a.BBox({x0:this.sleft-t,y0:this.stop-t,x1:this.sright+t,y1:this.sbottom+t})},t.prototype.interactive_hit=function(t,e){if(null==this.model.in_cursor)return!1;var i=this.interactive_bbox();return i.contains(t,e)},t.prototype.cursor=function(t,e){return Math.abs(t-this.sleft)<3||Math.abs(t-this.sright)<3?this.model.ew_cursor:Math.abs(e-this.sbottom)<3||Math.abs(e-this.stop)<3?this.model.ns_cursor:t>this.sleft&&t<this.sright&&e>this.stop&&e<this.sbottom?this.model.in_cursor:null},t}(r.AnnotationView);i.BoxAnnotationView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BoxAnnotation\",this.prototype.default_view=h,this.mixins([\"line\",\"fill\"]),this.define({render_mode:[s.RenderMode,\"canvas\"],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],top:[s.Number,null],top_units:[s.SpatialUnits,\"data\"],bottom:[s.Number,null],bottom_units:[s.SpatialUnits,\"data\"],left:[s.Number,null],left_units:[s.SpatialUnits,\"data\"],right:[s.Number,null],right_units:[s.SpatialUnits,\"data\"]}),this.internal({screen:[s.Boolean,!1],ew_cursor:[s.String,null],ns_cursor:[s.String,null],in_cursor:[s.String,null]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.data_update=new o.Signal0(this,\"data_update\")},t.prototype.update=function(t){var e=t.left,i=t.right,n=t.top,r=t.bottom;this.setv({left:e,right:i,top:n,bottom:r,screen:!0},{silent:!0}),this.data_update.emit()},t}(r.Annotation);(i.BoxAnnotation=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(207),s=t(104),u=t(167),a=t(192),l=t(193),h=t(184),c=t(15),_=t(41),p=t(21),g=t(22),d=t(32),f=t(44),v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._set_canvas_image()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.visible.change,function(){return t.plot_view.request_render()}),this.connect(this.model.ticker.change,function(){return t.plot_view.request_render()}),this.connect(this.model.formatter.change,function(){return t.plot_view.request_render()}),null!=this.model.color_mapper&&this.connect(this.model.color_mapper.change,function(){t._set_canvas_image(),t.plot_view.request_render()})},t.prototype._get_size=function(){if(null==this.model.color_mapper)return 0;var t=this.compute_legend_dimensions(),e=this.model.panel.side;switch(e){case\"above\":case\"below\":return t.height;case\"left\":case\"right\":return t.width;default:throw new Error(\"unreachable code\")}},t.prototype._set_canvas_image=function(){var t,e;if(null!=this.model.color_mapper){var i,n,r=this.model.color_mapper.palette;switch(\"vertical\"==this.model.orientation&&(r=p.reversed(r)),this.model.orientation){case\"vertical\":t=[1,r.length],i=t[0],n=t[1];break;case\"horizontal\":e=[r.length,1],i=e[0],n=e[1];break;default:throw new Error(\"unreachable code\")}var o=document.createElement(\"canvas\");o.width=i,o.height=n;var s=o.getContext(\"2d\"),a=s.getImageData(0,0,i,n),l=new u.LinearColorMapper({palette:r}).rgba_mapper,h=l.v_compute(p.range(0,r.length));a.data.set(h),s.putImageData(a,0,0),this.image=o}},t.prototype.compute_legend_dimensions=function(){var t,e,i=this.model._computed_image_dimensions(),n=[i.height,i.width],r=n[0],o=n[1],s=this._get_label_extent(),a=this.model._title_extent(),l=this.model._tick_extent(),h=this.model.padding;switch(this.model.orientation){case\"vertical\":t=r+a+2*h,e=o+l+s+2*h;break;case\"horizontal\":t=r+a+l+s+2*h,e=o+2*h;break;default:throw new Error(\"unreachable code\")}return{width:e,height:t}},t.prototype.compute_legend_location=function(){var t,e,i=this.compute_legend_dimensions(),n=[i.height,i.width],r=n[0],o=n[1],s=this.model.margin,a=null!=this.model.panel?this.model.panel:this.plot_view.frame,l=a.bbox.ranges,h=l[0],u=l[1],c=this.model.location;if(f.isString(c))switch(c){case\"top_left\":t=h.start+s,e=u.start+s;break;case\"top_center\":t=(h.end+h.start)/2-o/2,e=u.start+s;break;case\"top_right\":t=h.end-s-o,e=u.start+s;break;case\"bottom_right\":t=h.end-s-o,e=u.end-s-r;break;case\"bottom_center\":t=(h.end+h.start)/2-o/2,e=u.end-s-r;break;case\"bottom_left\":t=h.start+s,e=u.end-s-r;break;case\"center_left\":t=h.start+s,e=(u.end+u.start)/2-r/2;break;case\"center\":t=(h.end+h.start)/2-o/2,e=(u.end+u.start)/2-r/2;break;case\"center_right\":t=h.end-s-o,e=(u.end+u.start)/2-r/2;break;default:throw new Error(\"unreachable code\")}else{if(!f.isArray(c)||2!=c.length)throw new Error(\"unreachable code\");var _=c[0],p=c[1];t=a.xview.compute(_),e=a.yview.compute(p)-r}return{sx:t,sy:e}},t.prototype.render=function(){if(this.model.visible&&null!=this.model.color_mapper){var t=this.plot_view.canvas_view.ctx;t.save();var e=this.compute_legend_location(),i=e.sx,n=e.sy;t.translate(i,n),this._draw_bbox(t);var r=this._get_image_offset();if(t.translate(r.x,r.y),this._draw_image(t),null!=this.model.color_mapper.low&&null!=this.model.color_mapper.high){var o=this.model.tick_info();this._draw_major_ticks(t,o),this._draw_minor_ticks(t,o),this._draw_major_labels(t,o)}this.model.title&&this._draw_title(t),t.restore()}},t.prototype._draw_bbox=function(t){var e=this.compute_legend_dimensions();t.save(),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(0,0,e.width,e.height)),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()},t.prototype._draw_image=function(t){var e=this.model._computed_image_dimensions();t.save(),t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.scale_alpha,t.drawImage(this.image,0,0,e.width,e.height),this.visuals.bar_line.doit&&(this.visuals.bar_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()},t.prototype._draw_major_ticks=function(t,e){if(this.visuals.major_tick_line.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=e.coords.major,u=h[0],c=h[1],_=this.model.major_tick_in,p=this.model.major_tick_out;t.save(),t.translate(a,l),this.visuals.major_tick_line.set_value(t);for(var d=0,f=u.length;d<f;d++)t.beginPath(),t.moveTo(Math.round(u[d]+n*p),Math.round(c[d]+r*p)),t.lineTo(Math.round(u[d]-n*_),Math.round(c[d]-r*_)),t.stroke();t.restore()}},t.prototype._draw_minor_ticks=function(t,e){if(this.visuals.minor_tick_line.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=e.coords.minor,u=h[0],c=h[1],_=this.model.minor_tick_in,p=this.model.minor_tick_out;t.save(),t.translate(a,l),this.visuals.minor_tick_line.set_value(t);for(var d=0,f=u.length;d<f;d++)t.beginPath(),t.moveTo(Math.round(u[d]+n*p),Math.round(c[d]+r*p)),t.lineTo(Math.round(u[d]-n*_),Math.round(c[d]-r*_)),t.stroke();t.restore()}},t.prototype._draw_major_labels=function(t,e){if(this.visuals.major_label_text.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=this.model.label_standoff+this.model._tick_extent(),u=[h*n,h*r],c=u[0],_=u[1],p=e.coords.major,d=p[0],f=p[1],v=e.labels.major;this.visuals.major_label_text.set_value(t),t.save(),t.translate(a+c,l+_);for(var m=0,g=d.length;m<g;m++)t.fillText(v[m],Math.round(d[m]+n*this.model.label_standoff),Math.round(f[m]+r*this.model.label_standoff));t.restore()}},t.prototype._draw_title=function(t){this.visuals.title_text.doit&&(t.save(),this.visuals.title_text.set_value(t),t.fillText(this.model.title,0,-this.model.title_standoff),t.restore())},t.prototype._get_label_extent=function(){var t,e=this.model.tick_info().labels.major;if(null==this.model.color_mapper.low||null==this.model.color_mapper.high||d.isEmpty(e))t=0;else{var i=this.plot_view.canvas_view.ctx;switch(i.save(),this.visuals.major_label_text.set_value(i),this.model.orientation){case\"vertical\":t=p.max(e.map(function(t){return i.measureText(t.toString()).width}));break;case\"horizontal\":t=_.get_text_height(this.visuals.major_label_text.font_value()).height;break;default:throw new Error(\"unreachable code\")}t+=this.model.label_standoff,i.restore()}return t},t.prototype._get_image_offset=function(){var t=this.model.padding,e=this.model.padding+this.model._title_extent();return{x:t,y:e}},t}(r.AnnotationView);i.ColorBarView=v;var m=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ColorBar\",this.prototype.default_view=v,this.mixins([\"text:major_label_\",\"text:title_\",\"line:major_tick_\",\"line:minor_tick_\",\"line:border_\",\"line:bar_\",\"fill:background_\"]),this.define({location:[c.Any,\"top_right\"],orientation:[c.Orientation,\"vertical\"],title:[c.String],title_standoff:[c.Number,2],width:[c.Any,\"auto\"],height:[c.Any,\"auto\"],scale_alpha:[c.Number,1],ticker:[c.Instance,function(){return new o.BasicTicker}],formatter:[c.Instance,function(){return new s.BasicTickFormatter}],major_label_overrides:[c.Any,{}],color_mapper:[c.Instance],label_standoff:[c.Number,5],margin:[c.Number,30],padding:[c.Number,10],major_tick_in:[c.Number,5],major_tick_out:[c.Number,0],minor_tick_in:[c.Number,0],minor_tick_out:[c.Number,0]}),this.override({background_fill_color:\"#ffffff\",background_fill_alpha:.95,bar_line_color:null,border_line_color:null,major_label_text_align:\"center\",major_label_text_baseline:\"middle\",major_label_text_font_size:\"8pt\",major_tick_line_color:\"#ffffff\",minor_tick_line_color:null,title_text_font_size:\"10pt\",title_text_font_style:\"italic\"})},t.prototype._normals=function(){return\"vertical\"==this.orientation?[1,0]:[0,1]},t.prototype._title_extent=function(){var t=this.title_text_font+\" \"+this.title_text_font_size+\" \"+this.title_text_font_style,e=this.title?_.get_text_height(t).height+this.title_standoff:0;return e},t.prototype._tick_extent=function(){return null!=this.color_mapper.low&&null!=this.color_mapper.high?p.max([this.major_tick_out,this.minor_tick_out]):0},t.prototype._computed_image_dimensions=function(){var t,e,i=this.plot.plot_canvas.frame._height.value,n=this.plot.plot_canvas.frame._width.value,r=this._title_extent();switch(this.orientation){case\"vertical\":\"auto\"==this.height?null!=this.panel?t=i-2*this.padding-r:(t=p.max([25*this.color_mapper.palette.length,.3*i]),t=p.min([t,.8*i-2*this.padding-r])):t=this.height,e=\"auto\"==this.width?25:this.width;break;case\"horizontal\":t=\"auto\"==this.height?25:this.height,\"auto\"==this.width?null!=this.panel?e=n-2*this.padding:(e=p.max([25*this.color_mapper.palette.length,.3*n]),e=p.min([e,.8*n-2*this.padding])):e=this.width;break;default:throw new Error(\"unreachable code\")}return{width:e,height:t}},t.prototype._tick_coordinate_scale=function(t){var e={source_range:new h.Range1d({start:this.color_mapper.low,end:this.color_mapper.high}),target_range:new h.Range1d({start:0,end:t})};switch(this.color_mapper.type){case\"LinearColorMapper\":return new a.LinearScale(e);case\"LogColorMapper\":return new l.LogScale(e);default:throw new Error(\"unreachable code\")}},t.prototype._format_major_labels=function(t,e){for(var i=this.formatter.doFormat(t,null),n=0,r=e.length;n<r;n++)e[n]in this.major_label_overrides&&(i[n]=this.major_label_overrides[e[n]]);return i},t.prototype.tick_info=function(){var e,t=this._computed_image_dimensions();switch(this.orientation){case\"vertical\":e=t.height;break;case\"horizontal\":e=t.width;break;default:throw new Error(\"unreachable code\")}for(var i=this._tick_coordinate_scale(e),n=this._normals(),r=n[0],o=n[1],s=[this.color_mapper.low,this.color_mapper.high],a=s[0],l=s[1],h=this.ticker.get_ticks(a,l,null,null,this.ticker.desired_num_ticks),u=h.major,c=h.minor,_=[[],[]],p=[[],[]],d=0,f=u.length;d<f;d++)u[d]<a||u[d]>l||(_[r].push(u[d]),_[o].push(0));for(var d=0,f=c.length;d<f;d++)c[d]<a||c[d]>l||(p[r].push(c[d]),p[o].push(0));var v={major:this._format_major_labels(_[r],u)},m={major:[[],[]],minor:[[],[]]};return m.major[r]=i.v_compute(_[r]),m.minor[r]=i.v_compute(p[r]),m.major[o]=_[o],m.minor[o]=p[o],\"vertical\"==this.orientation&&(m.major[r]=g.map(m.major[r],function(t){return e-t}),m.minor[r]=g.map(m.minor[r],function(t){return e-t})),{coords:m,labels:v}},t}(r.Annotation);(i.ColorBar=m).initClass()},function(t,e,i){var n=t(60);i.Annotation=n.Annotation;var r=t(61);i.Arrow=r.Arrow;var o=t(62);i.ArrowHead=o.ArrowHead;var s=t(62);i.OpenHead=s.OpenHead;var a=t(62);i.NormalHead=a.NormalHead;var l=t(62);i.TeeHead=l.TeeHead;var h=t(62);i.VeeHead=h.VeeHead;var u=t(63);i.Band=u.Band;var c=t(64);i.BoxAnnotation=c.BoxAnnotation;var _=t(65);i.ColorBar=_.ColorBar;var p=t(67);i.Label=p.Label;var d=t(68);i.LabelSet=d.LabelSet;var f=t(69);i.Legend=f.Legend;var v=t(70);i.LegendItem=v.LegendItem;var m=t(71);i.PolyAnnotation=m.PolyAnnotation;var g=t(72);i.Slope=g.Slope;var y=t(73);i.Span=y.Span;var b=t(74);i.TextAnnotation=b.TextAnnotation;var x=t(75);i.Title=x.Title;var w=t(76);i.ToolbarPanel=w.ToolbarPanel;var k=t(77);i.Tooltip=k.Tooltip;var S=t(78);i.Whisker=S.Whisker},function(t,e,i){var n=t(391),r=t(74),a=t(5),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.visuals.warm_cache()},t.prototype._get_size=function(){var t=this.plot_view.canvas_view.ctx;if(this.visuals.text.set_value(t),this.model.panel.is_horizontal){var e=t.measureText(this.model.text).ascent;return e}var i=t.measureText(this.model.text).width;return i},t.prototype.render=function(){if(this.model.visible||\"css\"!=this.model.render_mode||a.hide(this.el),this.model.visible){var t;switch(this.model.angle_units){case\"rad\":t=-this.model.angle;break;case\"deg\":t=-this.model.angle*Math.PI/180;break;default:throw new Error(\"unreachable code\")}var e=null!=this.model.panel?this.model.panel:this.plot_view.frame,i=this.plot_view.frame.xscales[this.model.x_range_name],n=this.plot_view.frame.yscales[this.model.y_range_name],r=\"data\"==this.model.x_units?i.compute(this.model.x):e.xview.compute(this.model.x),o=\"data\"==this.model.y_units?n.compute(this.model.y):e.yview.compute(this.model.y);r+=this.model.x_offset,o-=this.model.y_offset;var s=\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this);s(this.plot_view.canvas_view.ctx,this.model.text,r,o,t)}},t}(r.TextAnnotationView);i.LabelView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Label\",this.prototype.default_view=s,this.mixins([\"text\",\"line:border_\",\"fill:background_\"]),this.define({x:[o.Number],x_units:[o.SpatialUnits,\"data\"],y:[o.Number],y_units:[o.SpatialUnits,\"data\"],text:[o.String],angle:[o.Angle,0],angle_units:[o.AngleUnits,\"rad\"],x_offset:[o.Number,0],y_offset:[o.Number,0],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({background_fill_color:null,border_line_color:null})},t}(r.TextAnnotation);(i.Label=l).initClass()},function(t,e,i){var n=t(391),r=t(74),o=t(200),u=t(5),s=t(15),a=function(r){function t(){return null!==r&&r.apply(this,arguments)||this}return n.__extends(t,r),t.prototype.initialize=function(t){if(r.prototype.initialize.call(this,t),this.set_data(this.model.source),\"css\"==this.model.render_mode)for(var e=0,i=this._text.length;e<i;e++){var n=u.div({class:\"bk-annotation-child\",style:{display:\"none\"}});this.el.appendChild(n)}},t.prototype.connect_signals=function(){var t=this;r.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?(this.connect(this.model.change,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.streaming,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.patching,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.change,function(){t.set_data(t.model.source),t.render()})):(this.connect(this.model.change,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.streaming,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.patching,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.change,function(){t.set_data(t.model.source),t.plot_view.request_render()}))},t.prototype.set_data=function(t){r.prototype.set_data.call(this,t),this.visuals.warm_cache(t)},t.prototype._map_data=function(){var t=this.plot_view.frame.xscales[this.model.x_range_name],e=this.plot_view.frame.yscales[this.model.y_range_name],i=null!=this.model.panel?this.model.panel:this.plot_view.frame,n=\"data\"==this.model.x_units?t.v_compute(this._x):i.xview.v_compute(this._x),r=\"data\"==this.model.y_units?e.v_compute(this._y):i.yview.v_compute(this._y);return[n,r]},t.prototype.render=function(){if(this.model.visible||\"css\"!=this.model.render_mode||u.hide(this.el),this.model.visible)for(var t=\"canvas\"==this.model.render_mode?this._v_canvas_text.bind(this):this._v_css_text.bind(this),e=this.plot_view.canvas_view.ctx,i=this._map_data(),n=i[0],r=i[1],o=0,s=this._text.length;o<s;o++)t(e,o,this._text[o],n[o]+this._x_offset[o],r[o]-this._y_offset[o],this._angle[o])},t.prototype._get_size=function(){var t=this.plot_view.canvas_view.ctx;switch(this.visuals.text.set_value(t),this.model.panel.side){case\"above\":case\"below\":var e=t.measureText(this._text[0]).ascent;return e;case\"left\":case\"right\":var i=t.measureText(this._text[0]).width;return i;default:throw new Error(\"unreachable code\")}},t.prototype._v_canvas_text=function(t,e,i,n,r,o){this.visuals.text.set_vectorize(t,e);var s=this._calculate_bounding_box_dimensions(t,i);t.save(),t.beginPath(),t.translate(n,r),t.rotate(o),t.rect(s[0],s[1],s[2],s[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(i,0,0)),t.restore()},t.prototype._v_css_text=function(t,e,i,n,r,o){var s=this.el.children[e];s.textContent=i,this.visuals.text.set_vectorize(t,e);var a=this._calculate_bounding_box_dimensions(t,i),l=this.visuals.border_line.line_dash.value(),h=l.length<2?\"solid\":\"dashed\";this.visuals.border_line.set_vectorize(t,e),this.visuals.background_fill.set_vectorize(t,e),s.style.position=\"absolute\",s.style.left=n+a[0]+\"px\",s.style.top=r+a[1]+\"px\",s.style.color=\"\"+this.visuals.text.text_color.value(),s.style.opacity=\"\"+this.visuals.text.text_alpha.value(),s.style.font=\"\"+this.visuals.text.font_value(),s.style.lineHeight=\"normal\",o&&(s.style.transform=\"rotate(\"+o+\"rad)\"),this.visuals.background_fill.doit&&(s.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(s.style.borderStyle=\"\"+h,s.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",s.style.borderColor=\"\"+this.visuals.border_line.color_value()),u.show(s)},t}(r.TextAnnotationView);i.LabelSetView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LabelSet\",this.prototype.default_view=a,this.mixins([\"text\",\"line:border_\",\"fill:background_\"]),this.define({x:[s.NumberSpec],y:[s.NumberSpec],x_units:[s.SpatialUnits,\"data\"],y_units:[s.SpatialUnits,\"data\"],text:[s.StringSpec,{field:\"text\"}],angle:[s.AngleSpec,0],x_offset:[s.NumberSpec,{value:0}],y_offset:[s.NumberSpec,{value:0}],source:[s.Instance,function(){return new o.ColumnDataSource}],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.override({background_fill_color:null,border_line_color:null})},t}(r.TextAnnotation);(i.LabelSet=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(15),s=t(19),M=t(41),O=t(24),z=t(21),P=t(32),j=t(44),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.cursor=function(t,e){return\"none\"==this.model.click_policy?null:\"pointer\"},Object.defineProperty(t.prototype,\"legend_padding\",{get:function(){return null!=this.visuals.border_line.line_color.value()?this.model.padding:0},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.item_change,function(){return t.plot_view.request_render()})},t.prototype.compute_legend_bbox=function(){var t=this.model.get_legend_names(),e=this.model,i=e.glyph_height,n=e.glyph_width,r=this.model,o=r.label_height,s=r.label_width;this.max_label_height=z.max([M.get_text_height(this.visuals.label_text.font_value()).height,o,i]);var a=this.plot_view.canvas_view.ctx;a.save(),this.visuals.label_text.set_value(a),this.text_widths={};for(var l=0,h=t;l<h.length;l++){var u=h[l];this.text_widths[u]=z.max([a.measureText(u).width,s])}a.restore();var c,_,p=Math.max(z.max(P.values(this.text_widths)),0),d=this.model.margin,f=this.legend_padding,v=this.model.spacing,m=this.model.label_standoff;if(\"vertical\"==this.model.orientation)c=t.length*this.max_label_height+Math.max(t.length-1,0)*v+2*f,_=p+n+m+2*f;else{for(var g in _=2*f+Math.max(t.length-1,0)*v,this.text_widths){var y=this.text_widths[g];_+=z.max([y,s])+n+m}c=this.max_label_height+2*f}var b,x,w=null!=this.model.panel?this.model.panel:this.plot_view.frame,k=w.bbox.ranges,S=k[0],C=k[1],T=this.model.location;if(j.isString(T))switch(T){case\"top_left\":b=S.start+d,x=C.start+d;break;case\"top_center\":b=(S.end+S.start)/2-_/2,x=C.start+d;break;case\"top_right\":b=S.end-d-_,x=C.start+d;break;case\"bottom_right\":b=S.end-d-_,x=C.end-d-c;break;case\"bottom_center\":b=(S.end+S.start)/2-_/2,x=C.end-d-c;break;case\"bottom_left\":b=S.start+d,x=C.end-d-c;break;case\"center_left\":b=S.start+d,x=(C.end+C.start)/2-c/2;break;case\"center\":b=(S.end+S.start)/2-_/2,x=(C.end+C.start)/2-c/2;break;case\"center_right\":b=S.end-d-_,x=(C.end+C.start)/2-c/2;break;default:throw new Error(\"unreachable code\")}else{if(!j.isArray(T)||2!=T.length)throw new Error(\"unreachable code\");var A=T[0],E=T[1];b=w.xview.compute(A),x=w.yview.compute(E)-c}return{x:b,y:x,width:_,height:c}},t.prototype.interactive_bbox=function(){var t=this.compute_legend_bbox(),e=t.x,i=t.y,n=t.width,r=t.height;return new O.BBox({x:e,y:i,width:n,height:r})},t.prototype.interactive_hit=function(t,e){var i=this.interactive_bbox();return i.contains(t,e)},t.prototype.on_hit=function(t,e){for(var i,n,r,o=this.model.glyph_width,s=this.legend_padding,a=this.model.spacing,l=this.model.label_standoff,h=r=s,u=this.compute_legend_bbox(),c=\"vertical\"==this.model.orientation,_=0,p=this.model.items;_<p.length;_++)for(var d=p[_],f=d.get_labels_list_from_label_prop(),v=0,m=f;v<m.length;v++){var g=m[v],y=u.x+h,b=u.y+r,x=void 0,w=void 0;c?(i=[u.width-2*s,this.max_label_height],x=i[0],w=i[1]):(n=[this.text_widths[g]+o+l,this.max_label_height],x=n[0],w=n[1]);var k=new O.BBox({x:y,y:b,width:x,height:w});if(k.contains(t,e)){switch(this.model.click_policy){case\"hide\":for(var S=0,C=d.renderers;S<C.length;S++){var T=C[S];T.visible=!T.visible}break;case\"mute\":for(var A=0,E=d.renderers;A<E.length;A++){var T=E[A];T.muted=!T.muted}}return!0}c?r+=this.max_label_height+a:h+=this.text_widths[g]+o+l+a}return!1},t.prototype.render=function(){if(this.model.visible&&0!=this.model.items.length){for(var t=0,e=this.model.items;t<e.length;t++){var i=e[t];i.legend=this.model}var n=this.plot_view.canvas_view.ctx,r=this.compute_legend_bbox();n.save(),this._draw_legend_box(n,r),this._draw_legend_items(n,r),n.restore()}},t.prototype._draw_legend_box=function(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())},t.prototype._draw_legend_items=function(y,b){for(var x=this,t=this.model,w=t.glyph_width,k=t.glyph_height,S=this.legend_padding,C=this.model.spacing,T=this.model.label_standoff,A=S,E=S,M=\"vertical\"==this.model.orientation,e=function(t){var e,i,n=t.get_labels_list_from_label_prop(),r=t.get_field_from_label_prop();if(0==n.length)return\"continue\";for(var o=function(){switch(x.model.click_policy){case\"none\":return!0;case\"hide\":return z.all(t.renderers,function(t){return t.visible});case\"mute\":return z.all(t.renderers,function(t){return!t.muted})}}(),s=0,a=n;s<a.length;s++){var l=a[s],h=b.x+A,u=b.y+E,c=h+w,_=u+k;M?E+=O.max_label_height+C:A+=O.text_widths[l]+w+T+C,O.visuals.label_text.set_value(y),y.fillText(l,c+T,u+O.max_label_height/2);for(var p=0,d=t.renderers;p<d.length;p++){var f=d[p],v=O.plot_view.renderer_views[f.id];v.draw_legend(y,h,c,u,_,r,l,t.index)}if(!o){var m=void 0,g=void 0;M?(e=[b.width-2*S,O.max_label_height],m=e[0],g=e[1]):(i=[O.text_widths[l]+w+T,O.max_label_height],m=i[0],g=i[1]),y.beginPath(),y.rect(h,u,m,g),O.visuals.inactive_fill.set_value(y),y.fill()}}},O=this,i=0,n=this.model.items;i<n.length;i++){var r=n[i];e(r)}},t.prototype._get_size=function(){var t=this.compute_legend_bbox();switch(this.model.panel.side){case\"above\":case\"below\":return t.height+2*this.model.margin;case\"left\":case\"right\":return t.width+2*this.model.margin}},t}(r.AnnotationView);i.LegendView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.initialize=function(){e.prototype.initialize.call(this),this.item_change=new s.Signal0(this,\"item_change\")},t.initClass=function(){this.prototype.type=\"Legend\",this.prototype.default_view=a,this.mixins([\"text:label_\",\"fill:inactive_\",\"line:border_\",\"fill:background_\"]),this.define({orientation:[o.Orientation,\"vertical\"],location:[o.Any,\"top_right\"],label_standoff:[o.Number,5],glyph_height:[o.Number,20],glyph_width:[o.Number,20],label_height:[o.Number,20],label_width:[o.Number,20],margin:[o.Number,10],padding:[o.Number,10],spacing:[o.Number,3],items:[o.Array,[]],click_policy:[o.Any,\"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:\"10pt\",label_text_baseline:\"middle\"})},t.prototype.get_legend_names=function(){for(var t=[],e=0,i=this.items;e<i.length;e++){var n=i[e],r=n.get_labels_list_from_label_prop();t.push.apply(t,r)}return t},t}(r.Annotation);(i.Legend=l).initClass()},function(t,e,i){var r=t(391),n=t(59),o=t(201),s=t(47),a=t(15),l=t(14),h=t(21),u=function(n){function t(t){return n.call(this,t)||this}return r.__extends(t,n),t.initClass=function(){this.prototype.type=\"LegendItem\",this.define({label:[a.StringSpec,null],renderers:[a.Array,[]],index:[a.Number,null]})},t.prototype._check_data_sources_on_renderers=function(){var t=this.get_field_from_label_prop();if(null!=t){if(this.renderers.length<1)return!1;var e=this.renderers[0].data_source;if(null!=e)for(var i=0,n=this.renderers;i<n.length;i++){var r=n[i];if(r.data_source!=e)return!1}}return!0},t.prototype._check_field_label_on_data_source=function(){var t=this.get_field_from_label_prop();if(null!=t){if(this.renderers.length<1)return!1;var e=this.renderers[0].data_source;if(null!=e&&!h.includes(e.columns(),t))return!1}return!0},t.prototype.initialize=function(){var t=this;n.prototype.initialize.call(this),this.legend=null,this.connect(this.change,function(){null!=t.legend&&t.legend.item_change.emit()});var e=this._check_data_sources_on_renderers();e||l.logger.error(\"Non matching data sources on legend item renderers\");var i=this._check_field_label_on_data_source();i||l.logger.error(\"Bad column name on label: \"+this.label)},t.prototype.get_field_from_label_prop=function(){var t=this.label;return s.isField(t)?t.field:null},t.prototype.get_labels_list_from_label_prop=function(){if(s.isValue(this.label))return[this.label.value];var t=this.get_field_from_label_prop();if(null!=t){var e=void 0;if(!this.renderers[0]||null==this.renderers[0].data_source)return[\"No source found\"];if((e=this.renderers[0].data_source)instanceof o.ColumnarDataSource){var i=e.get_column(t);return null!=i?h.uniq(Array.from(i)):[\"Invalid field\"]}}return[]},t}(n.Model);(i.LegendItem=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(19),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.data_update,function(){return t.plot_view.request_render()})},t.prototype.render=function(){if(this.model.visible){var t=this.model,e=t.xs,i=t.ys;if(e.length==i.length&&!(e.length<3||i.length<3)){for(var n=this.plot_view.frame,r=this.plot_view.canvas_view.ctx,o=0,s=e.length;o<s;o++){var a=void 0;if(\"screen\"!=this.model.xs_units)throw new Error(\"not implemented\");a=this.model.screen?e[o]:n.xview.compute(e[o]);var l=void 0;if(\"screen\"!=this.model.ys_units)throw new Error(\"not implemented\");l=this.model.screen?i[o]:n.yview.compute(i[o]),0==o?(r.beginPath(),r.moveTo(a,l)):r.lineTo(a,l)}r.closePath(),this.visuals.line.doit&&(this.visuals.line.set_value(r),r.stroke()),this.visuals.fill.doit&&(this.visuals.fill.set_value(r),r.fill())}}},t}(r.AnnotationView);i.PolyAnnotationView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PolyAnnotation\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({xs:[s.Array,[]],xs_units:[s.SpatialUnits,\"data\"],ys:[s.Array,[]],ys_units:[s.SpatialUnits,\"data\"],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.internal({screen:[s.Boolean,!1]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.data_update=new o.Signal0(this,\"data_update\")},t.prototype.update=function(t){var e=t.xs,i=t.ys;this.setv({xs:e,ys:i,screen:!0},{silent:!0}),this.data_update.emit()},t}(r.Annotation);(i.PolyAnnotation=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype.render=function(){this.model.visible&&this._draw_slope()},t.prototype._draw_slope=function(){var t=this.model.gradient,e=this.model.y_intercept;if(null!=t&&null!=e){var i=this.plot_view.frame,n=i.xscales[this.model.x_range_name],r=i.yscales[this.model.y_range_name],o=i._top.value,s=o+i._height.value,a=r.invert(o),l=r.invert(s),h=(a-e)/t,u=(l-e)/t,c=n.compute(h),_=n.compute(u),p=this.plot_view.canvas_view.ctx;p.save(),p.beginPath(),this.visuals.line.set_value(p),p.moveTo(c,o),p.lineTo(_,s),p.stroke(),p.restore()}},t}(r.AnnotationView);i.SlopeView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Slope\",this.prototype.default_view=s,this.mixins([\"line\"]),this.define({gradient:[o.Number,null],y_intercept:[o.Number,null],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({line_color:\"black\"})},t}(r.Annotation);(i.Slope=a).initClass()},function(t,e,i){var n=t(391),r=t(60),c=t(5),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),this.el.style.position=\"absolute\",c.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.model.for_hover?this.connect(this.model.properties.computed_location.change,function(){return t._draw_span()}):\"canvas\"==this.model.render_mode?(this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.properties.location.change,function(){return t.plot_view.request_render()})):(this.connect(this.model.change,function(){return t.render()}),this.connect(this.model.properties.location.change,function(){return t._draw_span()}))},t.prototype.render=function(){this.model.visible||\"css\"!=this.model.render_mode||c.hide(this.el),this.model.visible&&this._draw_span()},t.prototype._draw_span=function(){var i=this,n=this.model.for_hover?this.model.computed_location:this.model.location;if(null!=n){var t,e,r,o,s=this.plot_view.frame,a=s.xscales[this.model.x_range_name],l=s.yscales[this.model.y_range_name],h=function(t,e){return i.model.for_hover?i.model.computed_location:\"data\"==i.model.location_units?t.compute(n):e.compute(n)};if(\"width\"==this.model.dimension?(r=h(l,s.yview),e=s._left.value,o=s._width.value,t=this.model.properties.line_width.value()):(r=s._top.value,e=h(a,s.xview),o=this.model.properties.line_width.value(),t=s._height.value),\"css\"==this.model.render_mode)this.el.style.top=r+\"px\",this.el.style.left=e+\"px\",this.el.style.width=o+\"px\",this.el.style.height=t+\"px\",this.el.style.backgroundColor=this.model.properties.line_color.value(),this.el.style.opacity=this.model.properties.line_alpha.value(),c.show(this.el);else if(\"canvas\"==this.model.render_mode){var u=this.plot_view.canvas_view.ctx;u.save(),u.beginPath(),this.visuals.line.set_value(u),u.moveTo(e,r),\"width\"==this.model.dimension?u.lineTo(e+o,r):u.lineTo(e,r+t),u.stroke(),u.restore()}}else c.hide(this.el)},t}(r.AnnotationView);i.SpanView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Span\",this.prototype.default_view=s,this.mixins([\"line\"]),this.define({render_mode:[o.RenderMode,\"canvas\"],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"],location:[o.Number,null],location_units:[o.SpatialUnits,\"data\"],dimension:[o.Dimension,\"width\"]}),this.override({line_color:\"black\"}),this.internal({for_hover:[o.Boolean,!1],computed_location:[o.Number,null]})},t}(r.Annotation);(i.Span=a).initClass()},function(t,e,i){var n=t(391),r=t(60),l=t(5),o=t(15),s=t(41),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),\"css\"==this.model.render_mode&&(this.el.classList.add(\"bk-annotation\"),this.plot_view.canvas_overlays.appendChild(this.el))},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?this.connect(this.model.change,function(){return t.render()}):this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype._calculate_text_dimensions=function(t,e){var i=t.measureText(e).width,n=s.get_text_height(this.visuals.text.font_value()).height;return[i,n]},t.prototype._calculate_bounding_box_dimensions=function(t,e){var i,n,r=this._calculate_text_dimensions(t,e),o=r[0],s=r[1];switch(t.textAlign){case\"left\":i=0;break;case\"center\":i=-o/2;break;case\"right\":i=-o;break;default:throw new Error(\"unreachable code\")}switch(t.textBaseline){case\"top\":n=0;break;case\"middle\":n=-.5*s;break;case\"bottom\":n=-1*s;break;case\"alphabetic\":n=-.8*s;break;case\"hanging\":n=-.17*s;break;case\"ideographic\":n=-.83*s;break;default:throw new Error(\"unreachable code\")}return[i,n,o,s]},t.prototype._canvas_text=function(t,e,i,n,r){this.visuals.text.set_value(t);var o=this._calculate_bounding_box_dimensions(t,e);t.save(),t.beginPath(),t.translate(i,n),r&&t.rotate(r),t.rect(o[0],o[1],o[2],o[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.stroke()),this.visuals.text.doit&&(this.visuals.text.set_value(t),t.fillText(e,0,0)),t.restore()},t.prototype._css_text=function(t,e,i,n,r){l.hide(this.el),this.visuals.text.set_value(t);var o=this._calculate_bounding_box_dimensions(t,e),s=this.visuals.border_line.line_dash.value(),a=s.length<2?\"solid\":\"dashed\";this.visuals.border_line.set_value(t),this.visuals.background_fill.set_value(t),this.el.style.position=\"absolute\",this.el.style.left=i+o[0]+\"px\",this.el.style.top=n+o[1]+\"px\",this.el.style.color=\"\"+this.visuals.text.text_color.value(),this.el.style.opacity=\"\"+this.visuals.text.text_alpha.value(),this.el.style.font=\"\"+this.visuals.text.font_value(),this.el.style.lineHeight=\"normal\",r&&(this.el.style.transform=\"rotate(\"+r+\"rad)\"),this.visuals.background_fill.doit&&(this.el.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(this.el.style.borderStyle=\"\"+a,this.el.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",this.el.style.borderColor=\"\"+this.visuals.border_line.color_value()),this.el.textContent=e,l.show(this.el)},t}(r.AnnotationView);i.TextAnnotationView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextAnnotation\",this.define({render_mode:[o.RenderMode,\"canvas\"]})},t}(r.Annotation);(i.TextAnnotation=h).initClass()},function(t,e,i){var n=t(391),r=t(74),s=t(5),o=t(15),a=t(49),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.visuals.text=new a.Text(this.model)},t.prototype._get_location=function(){var t,e,i=this.model.panel,n=this.model.offset;switch(i.side){case\"above\":case\"below\":switch(this.model.vertical_align){case\"top\":e=i._top.value+5;break;case\"middle\":e=i._vcenter.value;break;case\"bottom\":e=i._bottom.value-5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":t=i._left.value+n;break;case\"center\":t=i._hcenter.value;break;case\"right\":t=i._right.value-n;break;default:throw new Error(\"unreachable code\")}break;case\"left\":switch(this.model.vertical_align){case\"top\":t=i._left.value-5;break;case\"middle\":t=i._hcenter.value;break;case\"bottom\":t=i._right.value+5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":e=i._bottom.value-n;break;case\"center\":e=i._vcenter.value;break;case\"right\":e=i._top.value+n;break;default:throw new Error(\"unreachable code\")}break;case\"right\":switch(this.model.vertical_align){case\"top\":t=i._right.value-5;break;case\"middle\":t=i._hcenter.value;break;case\"bottom\":t=i._left.value+5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":e=i._top.value+n;break;case\"center\":e=i._vcenter.value;break;case\"right\":e=i._bottom.value-n;break;default:throw new Error(\"unreachable code\")}break;default:throw new Error(\"unreachable code\")}return[t,e]},t.prototype.render=function(){if(this.model.visible){var t=this.model.text;if(null!=t&&0!=t.length){this.model.text_baseline=this.model.vertical_align,this.model.text_align=this.model.align;var e=this._get_location(),i=e[0],n=e[1],r=this.model.panel.get_label_angle_heuristic(\"parallel\"),o=\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this);o(this.plot_view.canvas_view.ctx,t,i,n,r)}}else\"css\"==this.model.render_mode&&s.hide(this.el)},t.prototype._get_size=function(){var t=this.model.text;if(null==t||0==t.length)return 0;var e=this.plot_view.canvas_view.ctx;return this.visuals.text.set_value(e),e.measureText(t).ascent+10},t}(r.TextAnnotationView);i.TitleView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Title\",this.prototype.default_view=l,this.mixins([\"line:border_\",\"fill:background_\"]),this.define({text:[o.String],text_font:[o.Font,\"helvetica\"],text_font_size:[o.FontSizeSpec,\"10pt\"],text_font_style:[o.FontStyle,\"bold\"],text_color:[o.ColorSpec,\"#444444\"],text_alpha:[o.NumberSpec,1],vertical_align:[o.VerticalAlign,\"bottom\"],align:[o.TextAlign,\"left\"],offset:[o.Number,0]}),this.override({background_fill_color:null,border_line_color:null}),this.internal({text_align:[o.TextAlign,\"left\"],text_baseline:[o.TextBaseline,\"bottom\"]})},t}(r.TextAnnotation);(i.Title=h).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(4),s=t(5),a=t(15),l=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){i.prototype.initialize.call(this,t),this.plot_view.canvas_events.appendChild(this.el),this._toolbar_views={},o.build_views(this._toolbar_views,[this.model.toolbar],{parent:this});var e=this._toolbar_views[this.model.toolbar.id];this.plot_view.visibility_callbacks.push(function(t){return e.set_visibility(t)})},t.prototype.remove=function(){o.remove_views(this._toolbar_views),i.prototype.remove.call(this)},t.prototype.render=function(){if(i.prototype.render.call(this),this.model.visible){var t=this.model.panel;this.el.style.position=\"absolute\",this.el.style.left=t._left.value+\"px\",this.el.style.top=t._top.value+\"px\",this.el.style.width=t._width.value+\"px\",this.el.style.height=t._height.value+\"px\",this.el.style.overflow=\"hidden\";var e=this._toolbar_views[this.model.toolbar.id];e.render(),s.empty(this.el),this.el.appendChild(e.el),s.show(this.el)}else s.hide(this.el)},t.prototype._get_size=function(){return 30},t}(r.AnnotationView);i.ToolbarPanelView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarPanel\",this.prototype.default_view=l,this.define({toolbar:[a.Instance]})},t}(r.Annotation);(i.ToolbarPanel=h).initClass()},function(t,e,i){var n=t(391),r=t(60),f=t(5),o=t(15);function v(t,e,i,n,r){var o;switch(t){case\"horizontal\":o=e<n?\"right\":\"left\";break;case\"vertical\":o=i<r?\"below\":\"above\";break;default:o=t}return o}i.compute_side=v;var s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),f.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.data.change,function(){return t._draw_tips()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-tooltip\")},t.prototype.render=function(){this.model.visible&&this._draw_tips()},t.prototype._draw_tips=function(){var t=this.model.data;if(f.empty(this.el),f.hide(this.el),this.model.custom?this.el.classList.add(\"bk-tooltip-custom\"):this.el.classList.remove(\"bk-tooltip-custom\"),0!=t.length){for(var e=this.plot_view.frame,i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[1],a=r[2];if(!this.model.inner_only||e.bbox.contains(o,s)){var l=f.div({},a);this.el.appendChild(l)}}var h,u,c=t[t.length-1],_=c[0],p=c[1],d=v(this.model.attachment,_,p,e._hcenter.value,e._vcenter.value);switch(this.el.classList.remove(\"bk-right\"),this.el.classList.remove(\"bk-left\"),this.el.classList.remove(\"bk-above\"),this.el.classList.remove(\"bk-below\"),f.show(this.el),d){case\"right\":this.el.classList.add(\"bk-left\"),h=_+(this.el.offsetWidth-this.el.clientWidth)+10,u=p-this.el.offsetHeight/2;break;case\"left\":this.el.classList.add(\"bk-right\"),h=_-this.el.offsetWidth-10,u=p-this.el.offsetHeight/2;break;case\"below\":this.el.classList.add(\"bk-above\"),u=p+(this.el.offsetHeight-this.el.clientHeight)+10,h=Math.round(_-this.el.offsetWidth/2);break;case\"above\":this.el.classList.add(\"bk-below\"),u=p-this.el.offsetHeight-10,h=Math.round(_-this.el.offsetWidth/2);break;default:throw new Error(\"unreachable code\")}this.model.show_arrow&&this.el.classList.add(\"bk-tooltip-arrow\"),0<this.el.childNodes.length?(this.el.style.top=u+\"px\",this.el.style.left=h+\"px\"):f.hide(this.el)}},t}(r.AnnotationView);i.TooltipView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tooltip\",this.prototype.default_view=s,this.define({attachment:[o.String,\"horizontal\"],inner_only:[o.Bool,!0],show_arrow:[o.Bool,!0]}),this.override({level:\"overlay\"}),this.internal({data:[o.Any,[]],custom:[o.Any]})},t.prototype.clear=function(){this.data=[]},t.prototype.add=function(t,e,i){this.data=this.data.concat([[t,e,i]])},t}(r.Annotation);(i.Tooltip=a).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(200),s=t(62),a=t(15),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n=this.plot_model.frame,r=this.model.dimension,o=n.xscales[this.model.x_range_name],s=n.yscales[this.model.y_range_name],a=\"height\"==r?s:o,l=\"height\"==r?o:s,h=\"height\"==r?n.yview:n.xview,u=\"height\"==r?n.xview:n.yview;t=\"data\"==this.model.lower.units?a.v_compute(this._lower):h.v_compute(this._lower),e=\"data\"==this.model.upper.units?a.v_compute(this._upper):h.v_compute(this._upper),i=\"data\"==this.model.base.units?l.v_compute(this._base):u.v_compute(this._base);var c=\"height\"==r?[1,0]:[0,1],_=c[0],p=c[1],d=[t,i],f=[e,i];this._lower_sx=d[_],this._lower_sy=d[p],this._upper_sx=f[_],this._upper_sy=f[p]},t.prototype.render=function(){if(this.model.visible){this._map_data();var t=this.plot_view.canvas_view.ctx;if(this.visuals.line.doit)for(var e=0,i=this._lower_sx.length;e<i;e++)this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(this._lower_sx[e],this._lower_sy[e]),t.lineTo(this._upper_sx[e],this._upper_sy[e]),t.stroke();var n=\"height\"==this.model.dimension?0:Math.PI/2;if(null!=this.model.lower_head)for(var e=0,i=this._lower_sx.length;e<i;e++)t.save(),t.translate(this._lower_sx[e],this._lower_sy[e]),t.rotate(n+Math.PI),this.model.lower_head.render(t,e),t.restore();if(null!=this.model.upper_head)for(var e=0,i=this._upper_sx.length;e<i;e++)t.save(),t.translate(this._upper_sx[e],this._upper_sy[e]),t.rotate(n),this.model.upper_head.render(t,e),t.restore()}},t}(r.AnnotationView);i.WhiskerView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Whisker\",this.prototype.default_view=l,this.mixins([\"line\"]),this.define({lower:[a.DistanceSpec],lower_head:[a.Instance,function(){return new s.TeeHead({level:\"underlay\",size:10})}],upper:[a.DistanceSpec],upper_head:[a.Instance,function(){return new s.TeeHead({level:\"underlay\",size:10})}],base:[a.DistanceSpec],dimension:[a.Dimension,\"height\"],source:[a.Instance,function(){return new o.ColumnDataSource}],x_range_name:[a.String,\"default\"],y_range_name:[a.String,\"default\"]}),this.override({level:\"underlay\"})},t}(r.Annotation);(i.Whisker=h).initClass()},function(t,e,i){var n=t(391),r=t(187),o=t(15),s=t(12),l=t(21),T=t(44),a=t(181),h=Math.abs,u=Math.min,c=Math.max,_=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.render=function(){if(this.model.visible){var t={tick:this._tick_extent(),tick_label:this._tick_label_extents(),axis_label:this._axis_label_extent()},e=this.model.tick_coords,i=this.plot_view.canvas_view.ctx;i.save(),this._draw_rule(i,t),this._draw_major_ticks(i,t,e),this._draw_minor_ticks(i,t,e),this._draw_major_labels(i,t,e),this._draw_axis_label(i,t,e),null!=this._render&&this._render(i,t,e),i.restore()}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype.get_size=function(){return this.model.visible?Math.round(this._get_size()):0},t.prototype._get_size=function(){return null!=this.model.fixed_location?0:this._tick_extent()+this._tick_label_extent()+this._axis_label_extent()},Object.defineProperty(t.prototype,\"needs_clip\",{get:function(){return null!=this.model.fixed_location},enumerable:!0,configurable:!0}),t.prototype._draw_rule=function(t,e){if(this.visuals.axis_line.doit){var i=this.model.rule_coords,n=i[0],r=i[1],o=this.plot_view.map_to_screen(n,r,this.model.x_range_name,this.model.y_range_name),s=o[0],a=o[1],l=this.model.normals,h=l[0],u=l[1],c=this.model.offsets,_=c[0],p=c[1];this.visuals.axis_line.set_value(t),t.beginPath(),t.moveTo(Math.round(s[0]+h*_),Math.round(a[0]+u*p));for(var d=1;d<s.length;d++){var f=Math.round(s[d]+h*_),v=Math.round(a[d]+u*p);t.lineTo(f,v)}t.stroke()}},t.prototype._draw_major_ticks=function(t,e,i){var n=this.model.major_tick_in,r=this.model.major_tick_out,o=this.visuals.major_tick_line;this._draw_ticks(t,i.major,n,r,o)},t.prototype._draw_minor_ticks=function(t,e,i){var n=this.model.minor_tick_in,r=this.model.minor_tick_out,o=this.visuals.minor_tick_line;this._draw_ticks(t,i.minor,n,r,o)},t.prototype._draw_major_labels=function(t,e,i){var n=i.major,r=this.model.compute_labels(n[this.model.dimension]),o=this.model.major_label_orientation,s=e.tick+this.model.major_label_standoff,a=this.visuals.major_label_text;this._draw_oriented_labels(t,r,n,o,this.model.panel.side,s,a)},t.prototype._draw_axis_label=function(t,e,i){if(null!=this.model.axis_label&&0!=this.model.axis_label.length&&null==this.model.fixed_location){var n,r;switch(this.model.panel.side){case\"above\":n=this.model.panel._hcenter.value,r=this.model.panel._bottom.value;break;case\"below\":n=this.model.panel._hcenter.value,r=this.model.panel._top.value;break;case\"left\":n=this.model.panel._right.value,r=this.model.panel._vcenter.value;break;case\"right\":n=this.model.panel._left.value,r=this.model.panel._vcenter.value;break;default:throw new Error(\"unknown side: \"+this.model.panel.side)}var o=[[n],[r]],s=e.tick+l.sum(e.tick_label)+this.model.axis_label_standoff,a=this.visuals.axis_label_text;this._draw_oriented_labels(t,[this.model.axis_label],o,\"parallel\",this.model.panel.side,s,a,\"screen\")}},t.prototype._draw_ticks=function(t,e,i,n,r){if(r.doit){var o=e[0],s=e[1],a=this.plot_view.map_to_screen(o,s,this.model.x_range_name,this.model.y_range_name),l=a[0],h=a[1],u=this.model.normals,c=u[0],_=u[1],p=this.model.offsets,d=p[0],f=p[1],v=[c*(d-i),_*(f-i)],m=v[0],g=v[1],y=[c*(d+n),_*(f+n)],b=y[0],x=y[1];r.set_value(t);for(var w=0;w<l.length;w++){var k=Math.round(l[w]+b),S=Math.round(h[w]+x),C=Math.round(l[w]+m),T=Math.round(h[w]+g);t.beginPath(),t.moveTo(k,S),t.lineTo(C,T),t.stroke()}}},t.prototype._draw_oriented_labels=function(t,e,i,n,r,o,s,a){var l,h,u;if(void 0===a&&(a=\"data\"),s.doit&&0!=e.length){var c,_,p,d;if(\"screen\"==a)c=i[0],_=i[1],p=(l=[0,0])[0],d=l[1];else{var f=i[0],v=i[1];h=this.plot_view.map_to_screen(f,v,this.model.x_range_name,this.model.y_range_name),c=h[0],_=h[1],u=this.model.offsets,p=u[0],d=u[1]}var m,g=this.model.normals,y=g[0],b=g[1],x=y*(p+o),w=b*(d+o);s.set_value(t),this.model.panel.apply_label_text_heuristics(t,n),m=T.isString(n)?this.model.panel.get_label_angle_heuristic(n):-n;for(var k=0;k<c.length;k++){var S=Math.round(c[k]+x),C=Math.round(_[k]+w);t.translate(S,C),t.rotate(m),t.fillText(e[k],0,0),t.rotate(-m),t.translate(-S,-C)}}},t.prototype._axis_label_extent=function(){if(null==this.model.axis_label||\"\"==this.model.axis_label)return 0;var t=this.model.axis_label_standoff,e=this.visuals.axis_label_text;return this._oriented_labels_extent([this.model.axis_label],\"parallel\",this.model.panel.side,t,e)},t.prototype._tick_extent=function(){return this.model.major_tick_out},t.prototype._tick_label_extent=function(){return l.sum(this._tick_label_extents())},t.prototype._tick_label_extents=function(){var t=this.model.tick_coords.major,e=this.model.compute_labels(t[this.model.dimension]),i=this.model.major_label_orientation,n=this.model.major_label_standoff,r=this.visuals.major_label_text;return[this._oriented_labels_extent(e,i,this.model.panel.side,n,r)]},t.prototype._oriented_labels_extent=function(t,e,i,n,r){if(0==t.length)return 0;var o,s,a=this.plot_view.canvas_view.ctx;r.set_value(a),T.isString(e)?(o=1,s=this.model.panel.get_label_angle_heuristic(e)):(o=2,s=-e),s=Math.abs(s);for(var l=Math.cos(s),h=Math.sin(s),u=0,c=0;c<t.length;c++){var _=1.1*a.measureText(t[c]).width,p=.9*a.measureText(t[c]).ascent,d=void 0;u<(d=\"above\"==i||\"below\"==i?_*h+p/o*l:_*l+p/o*h)&&(u=d)}return 0<u&&(u+=n),u},t}(r.GuideRendererView);i.AxisView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Axis\",this.prototype.default_view=_,this.mixins([\"line:axis_\",\"line:major_tick_\",\"line:minor_tick_\",\"text:major_label_\",\"text:axis_label_\"]),this.define({bounds:[o.Any,\"auto\"],ticker:[o.Instance,null],formatter:[o.Instance,null],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"],axis_label:[o.String,\"\"],axis_label_standoff:[o.Int,5],major_label_standoff:[o.Int,5],major_label_orientation:[o.Any,\"horizontal\"],major_label_overrides:[o.Any,{}],major_tick_in:[o.Number,2],major_tick_out:[o.Number,6],minor_tick_in:[o.Number,0],minor_tick_out:[o.Number,4],fixed_location:[o.Any,null]}),this.override({axis_line_color:\"black\",major_tick_line_color:\"black\",minor_tick_line_color:\"black\",major_label_text_font_size:\"8pt\",major_label_text_align:\"center\",major_label_text_baseline:\"alphabetic\",axis_label_text_font_size:\"10pt\",axis_label_text_font_style:\"italic\"})},t.prototype.add_panel=function(t){this.panel=new s.SidePanel({side:t}),this.panel.attach_document(this.document)},Object.defineProperty(t.prototype,\"normals\",{get:function(){return this.panel.normals},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"dimension\",{get:function(){return this.panel.dimension},enumerable:!0,configurable:!0}),t.prototype.compute_labels=function(t){for(var e=this.formatter.doFormat(t,this),i=0;i<t.length;i++)t[i]in this.major_label_overrides&&(e[i]=this.major_label_overrides[t[i]]);return e},Object.defineProperty(t.prototype,\"offsets\",{get:function(){var t=this.plot.plot_canvas.frame,e=[0,0],i=e[0],n=e[1];switch(this.panel.side){case\"below\":n=h(this.panel._top.value-t._bottom.value);break;case\"above\":n=h(this.panel._bottom.value-t._top.value);break;case\"right\":i=h(this.panel._left.value-t._right.value);break;case\"left\":i=h(this.panel._right.value-t._left.value)}return[i,n]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"ranges\",{get:function(){var t=this.dimension,e=(t+1)%2,i=this.plot.plot_canvas.frame,n=[i.x_ranges[this.x_range_name],i.y_ranges[this.y_range_name]];return[n[t],n[e]]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_bounds\",{get:function(){var t=this.ranges[0],e=this.bounds,i=[t.min,t.max];if(\"auto\"==e)return[t.min,t.max];if(T.isArray(e)){var n=void 0,r=void 0,o=e[0],s=e[1],a=i[0],l=i[1];return h(o-s)>h(a-l)?(n=c(u(o,s),a),r=u(c(o,s),l)):(n=u(o,s),r=c(o,s)),[n,r]}throw new Error(\"user bounds '\"+e+\"' not understood\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"rule_coords\",{get:function(){var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=new Array(2),a=new Array(2),l=[s,a];return l[t][0]=Math.max(r,i.min),l[t][1]=Math.min(o,i.max),l[t][0]>l[t][1]&&(l[t][0]=l[t][1]=NaN),l[e][0]=this.loc,l[e][1]=this.loc,l},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tick_coords\",{get:function(){for(var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=this.ticker.get_ticks(r,o,i,this.loc,{}),a=s.major,l=s.minor,h=[[],[]],u=[[],[]],c=[i.min,i.max],_=c[0],p=c[1],d=0;d<a.length;d++)a[d]<_||a[d]>p||(h[t].push(a[d]),h[e].push(this.loc));for(var d=0;d<l.length;d++)l[d]<_||l[d]>p||(u[t].push(l[d]),u[e].push(this.loc));return{major:h,minor:u}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"loc\",{get:function(){if(null!=this.fixed_location){if(T.isNumber(this.fixed_location))return this.fixed_location;var t=this.ranges,e=t[1];if(e instanceof a.FactorRange)return e.synthetic(this.fixed_location);throw new Error(\"unexpected\")}var i=this.ranges,n=i[1];switch(this.panel.side){case\"left\":case\"below\":return n.start;case\"right\":case\"above\":return n.end}},enumerable:!0,configurable:!0}),t}(r.GuideRenderer);(i.Axis=p).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(208),s=t(105),a=t(15),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){this._draw_group_separators(t,e,i)},e.prototype._draw_group_separators=function(t,e,i){var n,r=this.model.ranges[0],o=this.model.computed_bounds,s=o[0],a=o[1];if(r.tops&&!(r.tops.length<2)&&this.visuals.separator_line.doit){for(var l=this.model.dimension,h=(l+1)%2,u=[[],[]],c=0,_=0;_<r.tops.length-1;_++){for(var p=void 0,d=void 0,f=c;f<r.factors.length;f++)if(r.factors[f][0]==r.tops[_+1]){n=[r.factors[f-1],r.factors[f]],p=n[0],d=n[1],c=f;break}var v=(r.synthetic(p)+r.synthetic(d))/2;s<v&&v<a&&(u[l].push(v),u[h].push(this.model.loc))}var m=this._tick_label_extent();this._draw_ticks(t,u,-3,m-6,this.visuals.separator_line)}},e.prototype._draw_major_labels=function(t,e,i){for(var n=this._get_factor_info(),r=e.tick+this.model.major_label_standoff,o=0;o<n.length;o++){var s=n[o],a=s[0],l=s[1],h=s[2],u=s[3];this._draw_oriented_labels(t,a,l,h,this.model.panel.side,r,u),r+=e.tick_label[o]}},e.prototype._tick_label_extents=function(){for(var t=this._get_factor_info(),e=[],i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[2],a=r[3],l=this._oriented_labels_extent(o,s,this.model.panel.side,this.model.major_label_standoff,a);e.push(l)}return e},e.prototype._get_factor_info=function(){var t=this.model.ranges[0],e=this.model.computed_bounds,i=e[0],n=e[1],r=this.model.loc,o=this.model.ticker.get_ticks(i,n,t,r,{}),s=this.model.tick_coords,a=[];if(1==t.levels){var l=this.model.formatter.doFormat(o.major,this.model);a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text])}else if(2==t.levels){var l=this.model.formatter.doFormat(o.major.map(function(t){return t[1]}),this.model);a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([o.tops,s.tops,this.model.group_label_orientation,this.visuals.group_text])}else if(3==t.levels){var l=this.model.formatter.doFormat(o.major.map(function(t){return t[2]}),this.model),h=o.mids.map(function(t){return t[1]});a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([h,s.mids,this.model.subgroup_label_orientation,this.visuals.subgroup_text]),a.push([o.tops,s.tops,this.model.group_label_orientation,this.visuals.group_text])}return a},e}(r.AxisView);i.CategoricalAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalAxis\",this.prototype.default_view=l,this.mixins([\"line:separator_\",\"text:group_\",\"text:subgroup_\"]),this.define({group_label_orientation:[a.Any,\"parallel\"],subgroup_label_orientation:[a.Any,\"parallel\"]}),this.override({ticker:function(){return new o.CategoricalTicker},formatter:function(){return new s.CategoricalTickFormatter},separator_line_color:\"lightgrey\",separator_line_width:2,group_text_font_style:\"bold\",group_text_font_size:\"8pt\",group_text_color:\"grey\",subgroup_text_font_style:\"bold\",subgroup_text_font_size:\"8pt\"})},Object.defineProperty(t.prototype,\"tick_coords\",{get:function(){var e=this,t=this.dimension,i=(t+1)%2,n=this.ranges[0],r=this.computed_bounds,o=r[0],s=r[1],a=this.ticker.get_ticks(o,s,n,this.loc,{}),l={major:[[],[]],mids:[[],[]],tops:[[],[]],minor:[[],[]]};return l.major[t]=a.major,l.major[i]=a.major.map(function(t){return e.loc}),3==n.levels&&(l.mids[t]=a.mids),l.mids[i]=a.mids.map(function(t){return e.loc}),1<n.levels&&(l.tops[t]=a.tops),l.tops[i]=a.tops.map(function(t){return e.loc}),l},enumerable:!0,configurable:!0}),t}(r.Axis);(i.CategoricalAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousAxis\"},t}(r.Axis);(i.ContinuousAxis=o).initClass()},function(t,e,i){var n=t(391),r=t(84),o=t(106),s=t(211),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.LinearAxisView);i.DatetimeAxisView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatetimeAxis\",this.prototype.default_view=a,this.override({ticker:function(){return new s.DatetimeTicker},formatter:function(){return new o.DatetimeTickFormatter}})},t}(r.LinearAxis);(i.DatetimeAxis=l).initClass()},function(t,e,i){var n=t(79);i.Axis=n.Axis;var r=t(80);i.CategoricalAxis=r.CategoricalAxis;var o=t(81);i.ContinuousAxis=o.ContinuousAxis;var s=t(82);i.DatetimeAxis=s.DatetimeAxis;var a=t(84);i.LinearAxis=a.LinearAxis;var l=t(85);i.LogAxis=l.LogAxis;var h=t(86);i.MercatorAxis=h.MercatorAxis},function(t,e,i){var n=t(391),r=t(79),o=t(81),s=t(104),a=t(207),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LinearAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.BasicTicker},formatter:function(){return new s.BasicTickFormatter}})},t}(o.ContinuousAxis);(i.LinearAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(81),s=t(109),a=t(215),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LogAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.LogTicker},formatter:function(){return new s.LogTickFormatter}})},t}(o.ContinuousAxis);(i.LogAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(84),s=t(110),a=t(216),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.MercatorAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MercatorAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.MercatorTicker({dimension:\"lat\"})},formatter:function(){return new s.MercatorTickFormatter({dimension:\"lat\"})}})},t}(o.LinearAxis);(i.MercatorAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Callback\"},t}(r.Model);(i.Callback=o).initClass()},function(i,t,e){var n=i(391),r=i(87),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJS\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"cb_obj\",\"cb_data\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),t.prototype.execute=function(t,e){return this.func.apply(t,this.values.concat(t,e,i,{}))},t}(r.Callback);(e.CustomJS=l).initClass()},function(t,e,i){var n=t(88);i.CustomJS=n.CustomJS;var r=t(90);i.OpenURL=r.OpenURL},function(t,e,i){var n=t(391),r=t(87),o=t(15),s=t(35),a=t(40),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"OpenURL\",this.define({url:[o.String,\"http://\"]})},t.prototype.execute=function(t,e){for(var i=0,n=s.get_indices(e.source);i<n.length;i++){var r=n[i],o=a.replace_placeholders(this.url,e.source,r);window.open(o)}return null},t}(r.Callback);(i.OpenURL=l).initClass()},function(t,e,i){var n=t(391),r=t(11),o=t(6),s=t(13),a=t(14),l=t(15),h=t(5),u=t(26);null!=window.CanvasPixelArray&&(window.CanvasPixelArray.prototype.set=function(t){for(var e=0;e<this.length;e++)this[e]=t[e]});var c=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),Object.defineProperty(t.prototype,\"ctx\",{get:function(){return this._ctx},enumerable:!0,configurable:!0}),t.prototype.initialize=function(t){switch(i.prototype.initialize.call(this,t),this.map_el=this.model.map?this.el.appendChild(h.div({class:\"bk-canvas-map\"})):null,this.model.output_backend){case\"canvas\":case\"webgl\":this.canvas_el=this.el.appendChild(h.canvas({class:\"bk-canvas\"}));var e=this.canvas_el.getContext(\"2d\");if(null==e)throw new Error(\"unable to obtain 2D rendering context\");this._ctx=e;break;case\"svg\":var e=new u.SVGRenderingContext2D;this._ctx=e,this.canvas_el=this.el.appendChild(e.getSvg())}this.overlays_el=this.el.appendChild(h.div({class:\"bk-canvas-overlays\"})),this.events_el=this.el.appendChild(h.div({class:\"bk-canvas-events\"})),u.fixup_ctx(this._ctx),a.logger.debug(\"CanvasView initialized\")},t.prototype.css_classes=function(){return i.prototype.css_classes.call(this).concat(\"bk-canvas-wrapper\")},t.prototype.get_canvas_element=function(){return this.canvas_el},t.prototype.prepare_canvas=function(){var t=this.model._width.value,e=this.model._height.value;this.el.style.width=t+\"px\",this.el.style.height=e+\"px\";var i=u.get_scale_ratio(this.ctx,this.model.use_hidpi,this.model.output_backend);this.model.pixel_ratio=i,this.canvas_el.style.width=t+\"px\",this.canvas_el.style.height=e+\"px\",this.canvas_el.setAttribute(\"width\",\"\"+t*i),this.canvas_el.setAttribute(\"height\",\"\"+e*i),a.logger.debug(\"Rendering CanvasView with width: \"+t+\", height: \"+e+\", pixel ratio: \"+i)},t.prototype.set_dims=function(t){var e=t[0],i=t[1];e<=0||i<=0||(e!=this.model._width.value&&(null!=this._width_constraint&&this.solver.has_constraint(this._width_constraint)&&this.solver.remove_constraint(this._width_constraint),this._width_constraint=s.EQ(this.model._width,-e),this.solver.add_constraint(this._width_constraint)),i!=this.model._height.value&&(null!=this._height_constraint&&this.solver.has_constraint(this._height_constraint)&&this.solver.remove_constraint(this._height_constraint),this._height_constraint=s.EQ(this.model._height,-i),this.solver.add_constraint(this._height_constraint)),this.solver.update_variables())},t}(o.DOMView);i.CanvasView=c;var _=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Canvas\",this.prototype.default_view=c,this.internal({map:[l.Boolean,!1],use_hidpi:[l.Boolean,!0],pixel_ratio:[l.Number,1],output_backend:[l.OutputBackend,\"canvas\"]})},Object.defineProperty(t.prototype,\"panel\",{get:function(){return this},enumerable:!0,configurable:!0}),t}(r.LayoutCanvas);(i.Canvas=_).initClass()},function(t,e,i){var n=t(391),a=t(190),l=t(192),h=t(193),u=t(184),c=t(180),_=t(181),r=t(11),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CartesianFrame\",this.internal({extra_x_ranges:[o.Any,{}],extra_y_ranges:[o.Any,{}],x_range:[o.Instance],y_range:[o.Instance],x_scale:[o.Instance],y_scale:[o.Instance]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._configure_scales()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._configure_scales()})},Object.defineProperty(t.prototype,\"panel\",{get:function(){return this},enumerable:!0,configurable:!0}),t.prototype.get_editables=function(){return e.prototype.get_editables.call(this).concat([this._width,this._height])},t.prototype.map_to_screen=function(t,e,i,n){void 0===i&&(i=\"default\"),void 0===n&&(n=\"default\");var r=this.xscales[i].v_compute(t),o=this.yscales[n].v_compute(e);return[r,o]},t.prototype._get_ranges=function(t,e){var i={};if(i.default=t,null!=e)for(var n in e)i[n]=e[n];return i},t.prototype._get_scales=function(t,e,i){var n={};for(var r in e){var o=e[r];if(o instanceof c.DataRange1d||o instanceof u.Range1d){if(!(t instanceof h.LogScale||t instanceof l.LinearScale))throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type);if(t instanceof a.CategoricalScale)throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type)}if(o instanceof _.FactorRange&&!(t instanceof a.CategoricalScale))throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type);t instanceof h.LogScale&&o instanceof c.DataRange1d&&(o.scale_hint=\"log\");var s=t.clone();s.setv({source_range:o,target_range:i}),n[r]=s}return n},t.prototype._configure_frame_ranges=function(){this._h_target=new u.Range1d({start:this._left.value,end:this._right.value}),this._v_target=new u.Range1d({start:this._bottom.value,end:this._top.value})},t.prototype._configure_scales=function(){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._xscales=this._get_scales(this.x_scale,this._x_ranges,this._h_target),this._yscales=this._get_scales(this.y_scale,this._y_ranges,this._v_target)},t.prototype.update_scales=function(){for(var t in this._configure_frame_ranges(),this._xscales){var e=this._xscales[t];e.target_range=this._h_target}for(var i in this._yscales){var e=this._yscales[i];e.target_range=this._v_target}},Object.defineProperty(t.prototype,\"x_ranges\",{get:function(){return this._x_ranges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"y_ranges\",{get:function(){return this._y_ranges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"xscales\",{get:function(){return this._xscales},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"yscales\",{get:function(){return this._yscales},enumerable:!0,configurable:!0}),t}(r.LayoutCanvas);(i.CartesianFrame=s).initClass()},function(t,e,i){var n=t(91);i.Canvas=n.Canvas;var r=t(92);i.CartesianFrame=r.CartesianFrame},function(t,e,i){var n=t(391),r=t(95),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CumSum\",this.define({field:[o.String],include_zero:[o.Boolean,!1]})},t.prototype._v_compute=function(t){var e=new Float64Array(t.get_length()||0),i=t.data[this.field],n=this.include_zero?1:0;e[0]=this.include_zero?0:i[0];for(var r=1;r<e.length;r++)e[r]=e[r-1]+i[r-n];return e},t}(r.Expression);(i.CumSum=s).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(i){function t(t){var e=i.call(this,t)||this;return e._connected={},e._result={},e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Expression\"},t.prototype.initialize=function(){i.prototype.initialize.call(this),this._connected={},this._result={}},t.prototype.v_compute=function(t){var e=this;null==this._connected[t.id]&&(this.connect(t.change,function(){return delete e._result[t.id]}),this.connect(t.patching,function(){return delete e._result[t.id]}),this.connect(t.streaming,function(){return delete e._result[t.id]}),this._connected[t.id]=!0);var i=this._result[t.id];return null==i&&(this._result[t.id]=i=this._v_compute(t)),i},t}(r.Model);(i.Expression=o).initClass()},function(t,e,i){var n=t(95);i.Expression=n.Expression;var r=t(97);i.Stack=r.Stack;var o=t(94);i.CumSum=o.CumSum},function(t,e,i){var n=t(391),r=t(95),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Stack\",this.define({fields:[o.Array,[]]})},t.prototype._v_compute=function(t){for(var e=new Float64Array(t.get_length()||0),i=0,n=this.fields;i<n.length;i++)for(var r=n[i],o=0;o<t.data[r].length;o++){var s=t.data[r][o];e[o]+=s}return e},t}(r.Expression);(i.Stack=s).initClass()},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(21),l=t(44),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BooleanFilter\",this.define({booleans:[o.Array,null]})},t.prototype.compute_indices=function(t){var e=this.booleans;return null!=e&&0<e.length?a.all(e,l.isBoolean)?(e.length!==t.get_length()&&s.logger.warn(\"BooleanFilter \"+this.id+\": length of booleans doesn't match data source\"),a.range(0,e.length).filter(function(t){return!0===e[t]})):(s.logger.warn(\"BooleanFilter \"+this.id+\": booleans should be array of booleans, defaulting to no filtering\"),null):(null!=e&&0==e.length?s.logger.warn(\"BooleanFilter \"+this.id+\": booleans is empty, defaulting to no filtering\"):s.logger.warn(\"BooleanFilter \"+this.id+\": booleans was not set, defaulting to no filtering\"),null)},t}(r.Filter);(i.BooleanFilter=h).initClass()},function(i,t,e){var n=i(391),r=i(100),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSFilter\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"source\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),t.prototype.compute_indices=function(t){return this.filter=this.func.apply(this,this.values.concat([t,i,{}])),e.prototype.compute_indices.call(this,t)},t}(r.Filter);(e.CustomJSFilter=l).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=t(21),l=t(14),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Filter\",this.define({filter:[o.Array,null]})},t.prototype.compute_indices=function(t){var e=this.filter;return null!=e&&0<=e.length?s.isArrayOf(e,s.isBoolean)?a.range(0,e.length).filter(function(t){return!0===e[t]}):s.isArrayOf(e,s.isInteger)?e:(l.logger.warn(\"Filter \"+this.id+\": filter should either be array of only booleans or only integers, defaulting to no filtering\"),null):(l.logger.warn(\"Filter \"+this.id+\": filter was not set to be an array, defaulting to no filtering\"),null)},t}(r.Model);(i.Filter=h).initClass()},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(21),l=function(i){function t(t){var e=i.call(this,t)||this;return e.indices=null,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"GroupFilter\",this.define({column_name:[o.String],group:[o.String]})},t.prototype.compute_indices=function(t){var e=this,i=t.get_column(this.column_name);return null==i?(s.logger.warn(\"group filter: groupby column not found in data source\"),null):(this.indices=a.range(0,t.get_length()||0).filter(function(t){return i[t]===e.group}),0===this.indices.length&&s.logger.warn(\"group filter: group '\"+this.group+\"' did not match any values in column '\"+this.column_name+\"'\"),this.indices)},t}(r.Filter);(i.GroupFilter=l).initClass()},function(t,e,i){var n=t(98);i.BooleanFilter=n.BooleanFilter;var r=t(99);i.CustomJSFilter=r.CustomJSFilter;var o=t(100);i.Filter=o.Filter;var s=t(101);i.GroupFilter=s.GroupFilter;var a=t(103);i.IndexFilter=a.IndexFilter},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(44),l=t(21),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"IndexFilter\",this.define({indices:[o.Array,null]})},t.prototype.compute_indices=function(t){return null!=this.indices&&0<=this.indices.length?l.all(this.indices,a.isInteger)?this.indices:(s.logger.warn(\"IndexFilter \"+this.id+\": indices should be array of integers, defaulting to no filtering\"),null):(s.logger.warn(\"IndexFilter \"+this.id+\": indices was not set, defaulting to no filtering\"),null)},t}(r.Filter);(i.IndexFilter=h).initClass()},function(t,e,i){var n=t(391),r=t(113),o=t(15),f=t(44),s=function(i){function t(t){var e=i.call(this,t)||this;return e.last_precision=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BasicTickFormatter\",this.define({precision:[o.Any,\"auto\"],use_scientific:[o.Bool,!0],power_limit_high:[o.Number,5],power_limit_low:[o.Number,-3]})},Object.defineProperty(t.prototype,\"scientific_limit_low\",{get:function(){return Math.pow(10,this.power_limit_low)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"scientific_limit_high\",{get:function(){return Math.pow(10,this.power_limit_high)},enumerable:!0,configurable:!0}),t.prototype.doFormat=function(t,e){if(0==t.length)return[];var i=0;2<=t.length&&(i=Math.abs(t[1]-t[0])/1e4);var n=!1;if(this.use_scientific)for(var r=0,o=t;r<o.length;r++){var s=o[r],a=Math.abs(s);if(i<a&&(a>=this.scientific_limit_high||a<=this.scientific_limit_low)){n=!0;break}}var l=new Array(t.length),h=this.precision;if(null==h||f.isNumber(h))if(n)for(var u=0,c=t.length;u<c;u++)l[u]=t[u].toExponential(h||void 0);else for(var u=0,c=t.length;u<c;u++)l[u]=t[u].toFixed(h||void 0).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\");else for(var _=this.last_precision,p=this.last_precision<=15;p?_<=15:15<=_;p?_++:_--){var d=!0;if(n){for(var u=0,c=t.length;u<c;u++)if(l[u]=t[u].toExponential(_),0<u&&l[u]===l[u-1]){d=!1;break}if(d)break}else{for(var u=0,c=t.length;u<c;u++)if(l[u]=t[u].toFixed(_).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\"),0<u&&l[u]==l[u-1]){d=!1;break}if(d)break}if(d){this.last_precision=_;break}}return l},t}(r.TickFormatter);(i.BasicTickFormatter=s).initClass()},function(t,e,i){var n=t(391),r=t(113),o=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalTickFormatter\"},t.prototype.doFormat=function(t,e){return o.copy(t)},t}(r.TickFormatter);(i.CategoricalTickFormatter=s).initClass()},function(t,e,i){var n=t(391),r=t(389),w=t(390),o=t(113),k=t(14),s=t(15),a=t(21),l=t(44);function S(t,e){if(l.isFunction(e))return e(t);var i,n=r.sprintf(\"$1%06d\",(i=t,Math.round(i/1e3%1*1e6)));return-1==(e=e.replace(/((^|[^%])(%%)*)%f/,n)).indexOf(\"%\")?e:w(t,e)}var C=[\"microseconds\",\"milliseconds\",\"seconds\",\"minsec\",\"minutes\",\"hourmin\",\"hours\",\"days\",\"months\",\"years\"],h=function(i){function t(t){var e=i.call(this,t)||this;return e.strip_leading_zeros=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DatetimeTickFormatter\",this.define({microseconds:[s.Array,[\"%fus\"]],milliseconds:[s.Array,[\"%3Nms\",\"%S.%3Ns\"]],seconds:[s.Array,[\"%Ss\"]],minsec:[s.Array,[\":%M:%S\"]],minutes:[s.Array,[\":%M\",\"%Mm\"]],hourmin:[s.Array,[\"%H:%M\"]],hours:[s.Array,[\"%Hh\",\"%H:%M\"]],days:[s.Array,[\"%m/%d\",\"%a%d\"]],months:[s.Array,[\"%m/%Y\",\"%b %Y\"]],years:[s.Array,[\"%Y\"]]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),this._update_width_formats()},t.prototype._update_width_formats=function(){var n=+w(new Date),t=function(t){var e=t.map(function(t){return S(n,t).length}),i=a.sortBy(a.zip(e,t),function(t){var e=t[0];return e});return a.unzip(i)};this._width_formats={microseconds:t(this.microseconds),milliseconds:t(this.milliseconds),seconds:t(this.seconds),minsec:t(this.minsec),minutes:t(this.minutes),hourmin:t(this.hourmin),hours:t(this.hours),days:t(this.days),months:t(this.months),years:t(this.years)}},t.prototype._get_resolution_str=function(t,e){var i=1.1*t;switch(!1){case!(i<.001):return\"microseconds\";case!(i<1):return\"milliseconds\";case!(i<60):return 60<=e?\"minsec\":\"seconds\";case!(i<3600):return 3600<=e?\"hourmin\":\"minutes\";case!(i<86400):return\"hours\";case!(i<2678400):return\"days\";case!(i<31536e3):return\"months\";default:return\"years\"}},t.prototype.doFormat=function(t,e){if(0==t.length)return[];for(var i=Math.abs(t[t.length-1]-t[0])/1e3,n=i/(t.length-1),r=this._get_resolution_str(n,i),o=this._width_formats[r],s=o[1][0],a=[],l=C.indexOf(r),h={},u=0,c=C;u<c.length;u++){var _=c[u];h[_]=0}h.seconds=5,h.minsec=4,h.minutes=4,h.hourmin=3,h.hours=3;for(var p=0,d=t;p<d.length;p++){var f=d[p],v=void 0,m=void 0;try{m=w(f,\"%Y %m %d %H %M %S\").split(/\\s+/).map(function(t){return parseInt(t,10)}),v=S(f,s)}catch(t){k.logger.warn(\"unable to format tick for timestamp value \"+f),k.logger.warn(\" - \"+t),a.push(\"ERR\");continue}for(var g=!1,y=l;0==m[h[C[y]]];){var b=void 0;if((y+=1)==C.length)break;if((\"minsec\"==r||\"hourmin\"==r)&&!g){if(\"minsec\"==r&&0==m[4]&&0!=m[5]||\"hourmin\"==r&&0==m[3]&&0!=m[4]){b=this._width_formats[C[l-1]][1][0],v=S(f,b);break}g=!0}b=this._width_formats[C[y]][1][0],v=S(f,b)}if(this.strip_leading_zeros){var x=v.replace(/^0+/g,\"\");x!=v&&isNaN(parseInt(x))&&(x=\"0\"+x),a.push(x)}else a.push(v)}return a},t}(o.TickFormatter);(i.DatetimeTickFormatter=h).initClass()},function(o,t,e){var i=o(391),n=o(113),r=o(15),s=o(32),a=o(38),l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"FuncTickFormatter\",this.define({args:[r.Any,{}],code:[r.String,\"\"],use_strict:[r.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_func=function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0,\"tick\",\"index\",\"ticks\"].concat(this.names,[\"require\",\"exports\",t])))},t.prototype.doFormat=function(t,e){var n=this,r=this._make_func().bind({});return t.map(function(t,e,i){return r.apply(void 0,[t,e,i].concat(n.values,[o,{}]))})},t}(n.TickFormatter);(e.FuncTickFormatter=l).initClass()},function(t,e,i){var n=t(104);i.BasicTickFormatter=n.BasicTickFormatter;var r=t(105);i.CategoricalTickFormatter=r.CategoricalTickFormatter;var o=t(106);i.DatetimeTickFormatter=o.DatetimeTickFormatter;var s=t(107);i.FuncTickFormatter=s.FuncTickFormatter;var a=t(109);i.LogTickFormatter=a.LogTickFormatter;var l=t(110);i.MercatorTickFormatter=l.MercatorTickFormatter;var h=t(111);i.NumeralTickFormatter=h.NumeralTickFormatter;var u=t(112);i.PrintfTickFormatter=u.PrintfTickFormatter;var c=t(113);i.TickFormatter=c.TickFormatter},function(t,e,i){var n=t(391),r=t(113),o=t(104),s=t(14),a=t(15),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogTickFormatter\",this.define({ticker:[a.Instance,null]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.basic_formatter=new o.BasicTickFormatter,null==this.ticker&&s.logger.warn(\"LogTickFormatter not configured with a ticker, using default base of 10 (labels will be incorrect if ticker base is not 10)\")},t.prototype.doFormat=function(t,e){if(0==t.length)return[];for(var i=null!=this.ticker?this.ticker.base:10,n=!1,r=new Array(t.length),o=0,s=t.length;o<s;o++)if(r[o]=i+\"^\"+Math.round(Math.log(t[o])/Math.log(i)),0<o&&r[o]==r[o-1]){n=!0;break}return n?this.basic_formatter.doFormat(t,e):r},t}(r.TickFormatter);(i.LogTickFormatter=l).initClass()},function(t,e,i){var n=t(391),r=t(104),o=t(15),h=t(33),s=function(l){function t(t){return l.call(this,t)||this}return n.__extends(t,l),t.initClass=function(){this.prototype.type=\"MercatorTickFormatter\",this.define({dimension:[o.LatLon]})},t.prototype.doFormat=function(t,e){if(null==this.dimension)throw new Error(\"MercatorTickFormatter.dimension not configured\");if(0==t.length)return[];var i=t.length,n=new Array(i);if(\"lon\"==this.dimension)for(var r=0;r<i;r++){var o=h.wgs84_mercator.inverse([t[r],e.loc])[0];n[r]=o}else for(var r=0;r<i;r++){var s=h.wgs84_mercator.inverse([e.loc,t[r]]),a=s[1];n[r]=a}return l.prototype.doFormat.call(this,n,e)},t}(r.BasicTickFormatter);(i.MercatorTickFormatter=s).initClass()},function(t,e,i){var n=t(391),o=t(361),r=t(113),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NumeralTickFormatter\",this.define({format:[s.String,\"0,0\"],language:[s.String,\"en\"],rounding:[s.String,\"round\"]})},Object.defineProperty(t.prototype,\"_rounding_fn\",{get:function(){switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}},enumerable:!0,configurable:!0}),t.prototype.doFormat=function(t,e){var i=this.format,n=this.language,r=this._rounding_fn;return t.map(function(t){return o.format(t,i,n,r)})},t}(r.TickFormatter);(i.NumeralTickFormatter=a).initClass()},function(t,e,i){var n=t(391),r=t(389),o=t(113),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PrintfTickFormatter\",this.define({format:[s.String,\"%s\"]})},t.prototype.doFormat=function(t,e){var i=this;return t.map(function(t){return r.sprintf(i.format,t)})},t}(o.TickFormatter);(i.PrintfTickFormatter=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TickFormatter\"},t}(r.Model);(i.TickFormatter=o).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),z=t(9),s=t(15),P=t(31),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=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=this._outer_radius,this._angle=new Float32Array(this._start_angle.length);for(var t=0,e=this._start_angle.length;t<e;t++)this._angle[t]=this._end_angle[t]-this._start_angle[t]},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._start_angle,s=i._angle,a=i.sinner_radius,l=i.souter_radius,h=this.model.properties.direction.value(),u=0,c=e;u<c.length;u++){var _=c[u];isNaN(n[_]+r[_]+a[_]+l[_]+o[_]+s[_])||(t.translate(n[_],r[_]),t.rotate(o[_]),t.moveTo(l[_],0),t.beginPath(),t.arc(0,0,l[_],0,s[_],h),t.rotate(s[_]),t.lineTo(a[_],0),t.arc(0,0,a[_],0,-s[_],!h),t.closePath(),t.rotate(-s[_]-o[_]),t.translate(-n[_],-r[_]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,_),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,_),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.renderer.xscale.invert(a),u=this.renderer.yscale.invert(l);if(\"data\"==this.model.properties.outer_radius.units)n=h-this.max_outer_radius,o=h+this.max_outer_radius,r=u-this.max_outer_radius,s=u+this.max_outer_radius;else{var c=a-this.max_outer_radius,_=a+this.max_outer_radius;e=this.renderer.xscale.r_invert(c,_),n=e[0],o=e[1];var p=l-this.max_outer_radius,d=l+this.max_outer_radius;i=this.renderer.yscale.r_invert(p,d),r=i[0],s=i[1]}for(var f=[],v=z.validate_bbox_coords([n,o],[r,s]),m=0,g=this.index.indices(v);m<g.length;m++){var y=g[m],b=Math.pow(this.souter_radius[y],2),x=Math.pow(this.sinner_radius[y],2),w=this.renderer.xscale.r_compute(h,this._x[y]),c=w[0],_=w[1],k=this.renderer.yscale.r_compute(u,this._y[y]),p=k[0],d=k[1],S=Math.pow(c-_,2)+Math.pow(p-d,2);S<=b&&x<=S&&f.push([y,S])}for(var C=this.model.properties.direction.value(),T=[],A=0,E=f;A<E.length;A++){var M=E[A],y=M[0],S=M[1],O=Math.atan2(l-this.sy[y],a-this.sx[y]);P.angle_between(-O,-this._start_angle[y],-this._end_angle[y],C)&&T.push([y,S])}return z.create_hit_test_result_from_hits(T)},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._scenterxy=function(t){var e=(this.sinner_radius[t]+this.souter_radius[t])/2,i=(this._start_angle[t]+this._end_angle[t])/2;return{x:this.sx[t]+e*Math.cos(i),y:this.sy[t]+e*Math.sin(i)}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.AnnularWedgeView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"AnnularWedge\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({direction:[s.Direction,\"anticlock\"],inner_radius:[s.DistanceSpec],outer_radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.AnnularWedge=l).initClass()},function(t,e,i){var n=t(391),r=t(146),C=t(9),o=t(15),p=t(28),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=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=this._outer_radius},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sinner_radius,s=i.souter_radius,a=0,l=e;a<l.length;a++){var h=l[a];if(!isNaN(n[h]+r[h]+o[h]+s[h])){if(this.visuals.fill.doit){if(this.visuals.fill.set_vectorize(t,h),t.beginPath(),p.is_ie)for(var u=0,c=[!1,!0];u<c.length;u++){var _=c[u];t.arc(n[h],r[h],o[h],0,Math.PI,_),t.arc(n[h],r[h],s[h],Math.PI,0,!_)}else t.arc(n[h],r[h],o[h],0,2*Math.PI,!0),t.arc(n[h],r[h],s[h],2*Math.PI,0,!1);t.fill()}this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,h),t.beginPath(),t.arc(n[h],r[h],o[h],0,2*Math.PI),t.moveTo(n[h]+s[h],r[h]),t.arc(n[h],r[h],s[h],0,2*Math.PI),t.stroke())}}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.renderer.xscale.invert(a),u=this.renderer.yscale.invert(l);if(\"data\"==this.model.properties.outer_radius.units)n=h-this.max_outer_radius,o=h+this.max_outer_radius,r=u-this.max_outer_radius,s=u+this.max_outer_radius;else{var c=a-this.max_outer_radius,_=a+this.max_outer_radius;e=this.renderer.xscale.r_invert(c,_),n=e[0],o=e[1];var p=l-this.max_outer_radius,d=l+this.max_outer_radius;i=this.renderer.yscale.r_invert(p,d),r=i[0],s=i[1]}for(var f=[],v=C.validate_bbox_coords([n,o],[r,s]),m=0,g=this.index.indices(v);m<g.length;m++){var y=g[m],b=Math.pow(this.souter_radius[y],2),x=Math.pow(this.sinner_radius[y],2),w=this.renderer.xscale.r_compute(h,this._x[y]),c=w[0],_=w[1],k=this.renderer.yscale.r_compute(u,this._y[y]),p=k[0],d=k[1],S=Math.pow(c-_,2)+Math.pow(p-d,2);S<=b&&x<=S&&f.push([y,S])}return C.create_hit_test_result_from_hits(f)},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=.5*Math.min(Math.abs(o-n),Math.abs(s-r)),c=new Array(a);c[i]=.4*u;var _=new Array(a);_[i]=.8*u,this._render(t,[i],{sx:l,sy:h,sinner_radius:c,souter_radius:_})},e}(r.XYGlyphView);i.AnnulusView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Annulus\",this.prototype.default_view=s,this.mixins([\"line\",\"fill\"]),this.define({inner_radius:[o.DistanceSpec],outer_radius:[o.DistanceSpec]})},t}(r.XYGlyph);(i.Annulus=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.sradius,s=i._start_angle,a=i._end_angle;if(this.visuals.line.doit)for(var l=this.model.properties.direction.value(),h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c])||(t.beginPath(),t.arc(n[c],r[c],o[c],s[c],a[c],l),this.visuals.line.set_vectorize(t,c),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.ArcView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Arc\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({direction:[s.Direction,\"anticlock\"],radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Arc=l).initClass()},function(t,e,i){var n=t(391),l=t(37),r=t(123),o=t(143);function h(t,e,i,n,r,o,s,a){for(var l=[],h=[[],[]],u=0;u<=2;u++){var c=void 0,_=void 0,p=void 0;if(0===u?(_=6*t-12*i+6*r,c=-3*t+9*i-9*r+3*s,p=3*i-3*t):(_=6*e-12*n+6*o,c=-3*e+9*n-9*o+3*a,p=3*n-3*e),Math.abs(c)<1e-12){if(Math.abs(_)<1e-12)continue;var d=-p/_;0<d&&d<1&&l.push(d)}else{var f=_*_-4*p*c,v=Math.sqrt(f);if(!(f<0)){var m=(-_+v)/(2*c);0<m&&m<1&&l.push(m);var g=(-_-v)/(2*c);0<g&&g<1&&l.push(g)}}}for(var y=l.length,b=y;y--;){var d=l[y],x=1-d,w=x*x*x*t+3*x*x*d*i+3*x*d*d*r+d*d*d*s;h[0][y]=w;var k=x*x*x*e+3*x*x*d*n+3*x*d*d*o+d*d*d*a;h[1][y]=k}return h[0][b]=t,h[1][b]=e,h[0][b+1]=s,h[1][b+1]=a,[Math.min.apply(Math,h[0]),Math.max.apply(Math,h[1]),Math.max.apply(Math,h[0]),Math.min.apply(Math,h[1])]}var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++)if(!isNaN(this._x0[e]+this._x1[e]+this._y0[e]+this._y1[e]+this._cx0[e]+this._cy0[e]+this._cx1[e]+this._cy1[e])){var n=h(this._x0[e],this._y0[e],this._x1[e],this._y1[e],this._cx0[e],this._cy0[e],this._cx1[e],this._cy1[e]),r=n[0],o=n[1],s=n[2],a=n[3];t.push({minX:r,minY:o,maxX:s,maxY:a,i:e})}return new l.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1,a=i.scx0,l=i.scy0,h=i.scx1,u=i.scy1;if(this.visuals.line.doit)for(var c=0,_=e;c<_.length;c++){var p=_[c];isNaN(n[p]+r[p]+o[p]+s[p]+a[p]+l[p]+h[p]+u[p])||(t.beginPath(),t.moveTo(n[p],r[p]),t.bezierCurveTo(a[p],l[p],h[p],u[p],o[p],s[p]),this.visuals.line.set_vectorize(t,p),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.BezierView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Bezier\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"],[\"cx0\",\"cy0\"],[\"cx1\",\"cy1\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Bezier=a).initClass()},function(t,e,i){var n=t(391),l=t(37),r=t(123),o=t(143),f=t(9),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_box=function(t){for(var e=[],i=0;i<t;i++){var n=this._lrtb(i),r=n[0],o=n[1],s=n[2],a=n[3];!isNaN(r+o+s+a)&&isFinite(r+o+s+a)&&e.push({minX:Math.min(r,o),minY:Math.min(s,a),maxX:Math.max(o,r),maxY:Math.max(s,a),i:i})}return new l.SpatialIndex(e)},e.prototype._render=function(t,e,i){for(var n=i.sleft,r=i.sright,o=i.stop,s=i.sbottom,a=0,l=e;a<l.length;a++){var h=l[a];isNaN(n[h]+o[h]+r[h]+s[h])||(this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,h),t.fillRect(n[h],o[h],r[h]-n[h],s[h]-o[h])),this.visuals.line.doit&&(t.beginPath(),t.rect(n[h],o[h],r[h]-n[h],s[h]-o[h]),this.visuals.line.set_vectorize(t,h),t.stroke()))}},e.prototype._clamp_viewport=function(){for(var t=this.renderer.plot_view.frame.bbox.h_range,e=this.renderer.plot_view.frame.bbox.v_range,i=this.stop.length,n=0;n<i;n++)this.stop[n]=Math.max(this.stop[n],e.start),this.sbottom[n]=Math.min(this.sbottom[n],e.end),this.sleft[n]=Math.max(this.sleft[n],t.start),this.sright[n]=Math.min(this.sright[n],t.end)},e.prototype._hit_rect=function(t){return this._hit_rect_against_index(t)},e.prototype._hit_point=function(t){var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=f.create_empty_hit_test_result();return s.indices=o,s},e.prototype._hit_span=function(t){var e,i=t.sx,n=t.sy;if(\"v\"==t.direction){var r=this.renderer.yscale.invert(n),o=this.renderer.plot_view.frame.bbox.h_range,s=this.renderer.xscale.r_invert(o.start,o.end),a=s[0],l=s[1];e=this.index.indices({minX:a,minY:r,maxX:l,maxY:r})}else{var h=this.renderer.xscale.invert(i),u=this.renderer.plot_view.frame.bbox.v_range,c=this.renderer.yscale.r_invert(u.start,u.end),_=c[0],p=c[1];e=this.index.indices({minX:h,minY:_,maxX:h,maxY:p})}var d=f.create_empty_hit_test_result();return d.indices=e,d},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.BoxView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Box\",this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.Box=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.XYGlyphView);i.CenterRotatableView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CenterRotatable\",this.mixins([\"line\",\"fill\"]),this.define({angle:[o.AngleSpec,0],width:[o.DistanceSpec],height:[o.DistanceSpec]})},t}(r.XYGlyph);(i.CenterRotatable=a).initClass()},function(t,e,i){var n=t(391),r=t(146),M=t(9),o=t(15),h=t(21),s=t(22),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){if(null!=this._radius)if(\"data\"==this.model.properties.radius.spec.units){var t=this.model.properties.radius_dimension.spec.value;switch(t){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\":var e=this.sdist(this.renderer.xscale,this._x,this._radius),i=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=s.map(e,function(t,e){return Math.max(t,i[e])});break;case\"min\":var e=this.sdist(this.renderer.xscale,this._x,this._radius),n=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=s.map(e,function(t,e){return Math.min(t,n[e])})}}else this.sradius=this._radius,this.max_size=2*this.max_radius;else this.sradius=s.map(this._size,function(t){return t/2})},e.prototype._mask_data=function(){var t,e,i,n,r,o,s,a,l=this.renderer.plot_view.frame.bbox.ranges,h=l[0],u=l[1];if(null!=this._radius&&\"data\"==this.model.properties.radius.units){var c=h.start,_=h.end;t=this.renderer.xscale.r_invert(c,_),r=t[0],s=t[1],r-=this.max_radius,s+=this.max_radius;var p=u.start,d=u.end;e=this.renderer.yscale.r_invert(p,d),o=e[0],a=e[1],o-=this.max_radius,a+=this.max_radius}else{var c=h.start-this.max_size,_=h.end+this.max_size;i=this.renderer.xscale.r_invert(c,_),r=i[0],s=i[1];var p=u.start-this.max_size,d=u.end+this.max_size;n=this.renderer.yscale.r_invert(p,d),o=n[0],a=n[1]}var f=M.validate_bbox_coords([r,s],[o,a]);return this.index.indices(f)},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sradius,s=0,a=e;s<a.length;s++){var l=a[s];isNaN(n[l]+r[l]+o[l])||(t.beginPath(),t.arc(n[l],r[l],o[l],0,2*Math.PI,!1),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,l),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,l),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d,f,v,m=t.sx,g=t.sy,y=this.renderer.xscale.invert(m),b=this.renderer.yscale.invert(g);null!=this._radius&&\"data\"==this.model.properties.radius.units?(p=y-this.max_radius,d=y+this.max_radius,f=b-this.max_radius,v=b+this.max_radius):(h=m-this.max_size,u=m+this.max_size,e=this.renderer.xscale.r_invert(h,u),p=e[0],d=e[1],i=[Math.min(p,d),Math.max(p,d)],p=i[0],d=i[1],c=g-this.max_size,_=g+this.max_size,n=this.renderer.yscale.r_invert(c,_),f=n[0],v=n[1],r=[Math.min(f,v),Math.max(f,v)],f=r[0],v=r[1]);var x=M.validate_bbox_coords([p,d],[f,v]),w=this.index.indices(x),k=[];if(null!=this._radius&&\"data\"==this.model.properties.radius.units)for(var S=0,C=w;S<C.length;S++){var T=C[S];l=Math.pow(this.sradius[T],2),o=this.renderer.xscale.r_compute(y,this._x[T]),h=o[0],u=o[1],s=this.renderer.yscale.r_compute(b,this._y[T]),c=s[0],_=s[1],(a=Math.pow(h-u,2)+Math.pow(c-_,2))<=l&&k.push([T,a])}else for(var A=0,E=w;A<E.length;A++){var T=E[A];l=Math.pow(this.sradius[T],2),(a=Math.pow(this.sx[T]-m,2)+Math.pow(this.sy[T]-g,2))<=l&&k.push([T,a])}return M.create_hit_test_result_from_hits(k)},e.prototype._hit_span=function(t){var e,i,n,r,o,s,a,l,h,u=t.sx,c=t.sy,_=this.bounds(),p=_.minX,d=_.minY,f=_.maxX,v=_.maxY,m=M.create_empty_hit_test_result();if(\"h\"==t.direction){var g=void 0,y=void 0;l=d,h=v,null!=this._radius&&\"data\"==this.model.properties.radius.units?(g=u-this.max_radius,y=u+this.max_radius,e=this.renderer.xscale.r_invert(g,y),s=e[0],a=e[1]):(o=this.max_size/2,g=u-o,y=u+o,i=this.renderer.xscale.r_invert(g,y),s=i[0],a=i[1])}else{var b=void 0,x=void 0;s=p,a=f,null!=this._radius&&\"data\"==this.model.properties.radius.units?(b=c-this.max_radius,x=c+this.max_radius,n=this.renderer.yscale.r_invert(b,x),l=n[0],h=n[1]):(o=this.max_size/2,b=c-o,x=c+o,r=this.renderer.yscale.r_invert(b,x),l=r[0],h=r[1])}var w=M.validate_bbox_coords([s,a],[l,h]),k=this.index.indices(w);return m.indices=k,m},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=M.validate_bbox_coords([s,a],[h,u]),_=M.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype._hit_poly=function(t){for(var e=t.sx,i=t.sy,n=h.range(0,this.sx.length),r=[],o=0,s=n.length;o<s;o++){var a=n[o];M.point_in_poly(this.sx[o],this.sy[o],e,i)&&r.push(a)}var l=M.create_empty_hit_test_result();return l.indices=r,l},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=new Array(a);u[i]=.2*Math.min(Math.abs(o-n),Math.abs(s-r)),this._render(t,[i],{sx:l,sy:h,sradius:u})},e}(r.XYGlyphView);i.CircleView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Circle\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({angle:[o.AngleSpec,0],size:[o.DistanceSpec,{units:\"screen\",value:4}],radius:[o.DistanceSpec,null],radius_dimension:[o.String,\"x\"]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.properties.radius.optional=!0},t}(r.XYGlyph);(i.Circle=l).initClass()},function(t,e,i){var n=t(391),r=t(122),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.EllipseOvalView);i.EllipseView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ellipse\",this.prototype.default_view=o},t}(r.EllipseOval);(i.Ellipse=s).initClass()},function(t,e,i){var n=t(391),r=t(119),S=t(9),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_data=function(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)},e.prototype._map_data=function(){\"data\"==this.model.properties.width.units?this.sw=this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this.sw=this._width,\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sw,s=i.sh,a=i._angle,l=0,h=e;l<h.length;l++){var u=h[l];isNaN(n[u]+r[u]+o[u]+s[u]+a[u])||(t.beginPath(),t.ellipse(n[u],r[u],o[u]/2,s[u]/2,a[u],0,2*Math.PI),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,u),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,u),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d=t.sx,f=t.sy,v=this.renderer.xscale.invert(d),m=this.renderer.yscale.invert(f);\"data\"==this.model.properties.width.units?(o=v-this.max_width,s=v+this.max_width):(u=d-this.max_width,c=d+this.max_width,e=this.renderer.xscale.r_invert(u,c),o=e[0],s=e[1]),\"data\"==this.model.properties.height.units?(a=m-this.max_height,l=m+this.max_height):(_=f-this.max_height,p=f+this.max_height,i=this.renderer.yscale.r_invert(_,p),a=i[0],l=i[1]);for(var g=S.validate_bbox_coords([o,s],[a,l]),y=this.index.indices(g),b=[],x=0,w=y;x<w.length;x++){var k=w[x];S.point_in_ellipse(d,f,this._angle[k],this.sh[k]/2,this.sw[k]/2,this.sx[k],this.sy[k])&&(n=this.renderer.xscale.r_compute(v,this._x[k]),u=n[0],c=n[1],r=this.renderer.yscale.r_compute(m,this._y[k]),_=r[0],p=r[1],h=Math.pow(u-c,2)+Math.pow(_-p,2),b.push([k,h]))}return S.create_hit_test_result_from_hits(b)},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=this.sw[i]/this.sh[i],c=.8*Math.min(Math.abs(o-n),Math.abs(s-r)),_=new Array(a),p=new Array(a);1<u?(_[i]=c,p[i]=c/u):(_[i]=c*u,p[i]=c),this._render(t,[i],{sx:l,sy:h,sw:_,sh:p,_angle:[0]})},e.prototype._bounds=function(t){var e=t.minX,i=t.maxX,n=t.minY,r=t.maxY;return{minX:e-this.max_w2,maxX:i+this.max_w2,minY:n-this.max_h2,maxY:r+this.max_h2}},e}(r.CenterRotatableView);i.EllipseOvalView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EllipseOval\"},t}(r.CenterRotatable);(i.EllipseOval=s).initClass()},function(o,t,e){var i=o(391),p=o(9),l=o(15),h=o(24),y=o(33),s=o(49),n=o(48),r=o(59),a=o(14),b=o(22),x=o(32),d=o(44),w=o(130),k=o(181),u=function(r){function t(){var t=null!==r&&r.apply(this,arguments)||this;return t._nohit_warned={},t}return i.__extends(t,r),t.prototype.initialize=function(t){r.prototype.initialize.call(this,t),this._nohit_warned={},this.renderer=t.renderer,this.visuals=new s.Visuals(this.model);var e=this.renderer.plot_view.gl;if(null!=e){var i=null;try{i=o(452)}catch(t){if(\"MODULE_NOT_FOUND\"!==t.code)throw t;a.logger.warn(\"WebGL was requested and is supported, but bokeh-gl(.min).js is not available, falling back to 2D rendering.\")}if(null!=i){var n=i[this.model.type+\"GLGlyph\"];null!=n&&(this.glglyph=new n(e.ctx,this))}}},t.prototype.set_visuals=function(t){this.visuals.warm_cache(t),null!=this.glglyph&&this.glglyph.set_visuals_changed()},t.prototype.render=function(t,e,i){t.beginPath(),null!=this.glglyph&&this.glglyph.render(t,e,i)||this._render(t,e,i)},t.prototype.has_finished=function(){return!0},t.prototype.notify_finished=function(){this.renderer.notify_finished()},t.prototype._bounds=function(t){return t},t.prototype.bounds=function(){return this._bounds(this.index.bbox)},t.prototype.log_bounds=function(){for(var t=h.empty(),e=this.index.search(h.positive_x()),i=0,n=e;i<n.length;i++){var r=n[i];r.minX<t.minX&&(t.minX=r.minX),r.maxX>t.maxX&&(t.maxX=r.maxX)}for(var o=this.index.search(h.positive_y()),s=0,a=o;s<a.length;s++){var l=a[s];l.minY<t.minY&&(t.minY=l.minY),l.maxY>t.maxY&&(t.maxY=l.maxY)}return this._bounds(t)},t.prototype.get_anchor_point=function(t,e,i){var n=i[0],r=i[1];switch(t){case\"center\":return{x:this.scenterx(e,n,r),y:this.scentery(e,n,r)};default:return null}},t.prototype.sdist=function(t,e,i,n,r){var o,s;void 0===n&&(n=\"edge\"),void 0===r&&(r=!1);var a=e.length;if(\"center\"==n){var l=b.map(i,function(t){return t/2});o=new Float64Array(a);for(var h=0;h<a;h++)o[h]=e[h]-l[h];s=new Float64Array(a);for(var h=0;h<a;h++)s[h]=e[h]+l[h]}else{o=e,s=new Float64Array(a);for(var h=0;h<a;h++)s[h]=o[h]+i[h]}var u=t.v_compute(o),c=t.v_compute(s);return r?b.map(u,function(t,e){return Math.ceil(Math.abs(c[e]-u[e]))}):b.map(u,function(t,e){return Math.abs(c[e]-u[e])})},t.prototype.draw_legend_for_index=function(t,e,i){},t.prototype.hit_test=function(t){var e=null,i=\"_hit_\"+t.type;return null!=this[i]?e=this[i](t):null==this._nohit_warned[t.type]&&(a.logger.debug(\"'\"+t.type+\"' selection not available for \"+this.model.type),this._nohit_warned[t.type]=!0),e},t.prototype._hit_rect_against_index=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=p.validate_bbox_coords([s,a],[h,u]),_=p.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},t.prototype.set_data=function(t,i,e){var n,r,o,s,a=this.model.materialize_dataspecs(t);if(this.visuals.set_all_indices(i),i&&!(this instanceof w.LineView)){var l={},h=function(t){var e=a[t];\"_\"===t.charAt(0)?l[t]=i.map(function(t){return e[t]}):l[t]=e};for(var u in a)h(u);a=l}var c=this;if(x.extend(c,a),this.renderer.plot_view.model.use_map&&(null!=c._x&&(n=y.project_xy(c._x,c._y),c._x=n[0],c._y=n[1]),null!=c._xs&&(r=y.project_xsys(c._xs,c._ys),c._xs=r[0],c._ys=r[1]),null!=c._x0&&(o=y.project_xy(c._x0,c._y0),c._x0=o[0],c._y0=o[1]),null!=c._x1&&(s=y.project_xy(c._x1,c._y1),c._x1=s[0],c._y1=s[1])),null!=this.renderer.plot_view.frame.x_ranges)for(var _=this.renderer.plot_view.frame.x_ranges[this.model.x_range_name],p=this.renderer.plot_view.frame.y_ranges[this.model.y_range_name],d=0,f=this.model._coords;d<f.length;d++){var v=f[d],m=v[0],g=v[1];m=\"_\"+m,g=\"_\"+g,null!=c._xs?(_ instanceof k.FactorRange&&(c[m]=b.map(c[m],function(t){return _.v_synthetic(t)})),p instanceof k.FactorRange&&(c[g]=b.map(c[g],function(t){return p.v_synthetic(t)}))):(_ instanceof k.FactorRange&&(c[m]=_.v_synthetic(c[m])),p instanceof k.FactorRange&&(c[g]=p.v_synthetic(c[g])))}null!=this.glglyph&&this.glglyph.set_data_changed(c._x.length),this._set_data(e),this.index_data()},t.prototype._set_data=function(t){},t.prototype.index_data=function(){this.index=this._index_data()},t.prototype.mask_data=function(t){return null!=this.glglyph||null==this._mask_data?t:this._mask_data()},t.prototype.map_data=function(){for(var t,e=this,i=0,n=this.model._coords;i<n.length;i++){var r=n[i],o=r[0],s=r[1],a=\"s\"+o,l=\"s\"+s;if(s=\"_\"+s,null!=e[o=\"_\"+o]&&(d.isArray(e[o][0])||d.isTypedArray(e[o][0]))){var h=e[o].length;e[a]=new Array(h),e[l]=new Array(h);for(var u=0;u<h;u++){var c=this.map_to_screen(e[o][u],e[s][u]),_=c[0],p=c[1];e[a][u]=_,e[l][u]=p}}else t=this.map_to_screen(e[o],e[s]),e[a]=t[0],e[l]=t[1]}this._map_data()},t.prototype._map_data=function(){},t.prototype.map_to_screen=function(t,e){return this.renderer.plot_view.map_to_screen(t,e,this.model.x_range_name,this.model.y_range_name)},t}(n.View);e.GlyphView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Glyph\",this.prototype._coords=[],this.internal({x_range_name:[l.String,\"default\"],y_range_name:[l.String,\"default\"]})},t.coords=function(t){var e=this.prototype._coords.concat(t);this.prototype._coords=e;for(var i={},n=0,r=t;n<r.length;n++){var o=r[n],s=o[0],a=o[1];i[s]=[l.NumberSpec],i[a]=[l.NumberSpec]}this.define(i)},t}(r.Model);(e.Glyph=c).initClass()},function(t,e,i){var n=t(391),r=t(118),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return(this.sleft[t]+this.sright[t])/2},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._index_data=function(){return this._index_box(this._y.length)},e.prototype._lrtb=function(t){var e=Math.min(this._left[t],this._right[t]),i=Math.max(this._left[t],this._right[t]),n=this._y[t]+.5*this._height[t],r=this._y[t]-.5*this._height[t];return[e,i,n,r]},e.prototype._map_data=function(){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);var t=this.sy.length;this.stop=new Float64Array(t),this.sbottom=new Float64Array(t);for(var 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()},e}(r.BoxView);i.HBarView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"HBar\",this.prototype.default_view=s,this.coords([[\"left\",\"y\"]]),this.define({height:[o.DistanceSpec],right:[o.NumberSpec]}),this.override({left:0})},t}(r.Box);(i.HBar=a).initClass()},function(t,e,i){var n=t(391),r=t(123),f=t(9),o=t(15),a=t(37),s=t(143),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._set_data=function(){var t=this._q.length,e=this.model.size,i=this.model.aspect_scale;if(this._x=new Float64Array(t),this._y=new Float64Array(t),\"pointytop\"==this.model.orientation)for(var n=0;n<t;n++)this._x[n]=e*Math.sqrt(3)*(this._q[n]+this._r[n]/2)/i,this._y[n]=3*-e/2*this._r[n];else for(var n=0;n<t;n++)this._x[n]=3*e/2*this._q[n],this._y[n]=-e*Math.sqrt(3)*(this._r[n]+this._q[n]/2)*i},e.prototype._index_data=function(){var t,e=this.model.size,i=Math.sqrt(3)*e/2;\"flattop\"==this.model.orientation?(i=(t=[e,i])[0],e=t[1],e*=this.model.aspect_scale):i/=this.model.aspect_scale;for(var n=[],r=0;r<this._x.length;r++){var o=this._x[r],s=this._y[r];!isNaN(o+s)&&isFinite(o+s)&&n.push({minX:o-i,minY:s-e,maxX:o+i,maxY:s+e,i:r})}return new a.SpatialIndex(n)},e.prototype.map_data=function(){var t,e;t=this.map_to_screen(this._x,this._y),this.sx=t[0],this.sy=t[1],e=this._get_unscaled_vertices(),this.svx=e[0],this.svy=e[1]},e.prototype._get_unscaled_vertices=function(){var t=this.model.size,e=this.model.aspect_scale;if(\"pointytop\"==this.model.orientation){var i=this.renderer.yscale,n=this.renderer.xscale,r=Math.abs(i.compute(0)-i.compute(t)),o=Math.sqrt(3)/2*Math.abs(n.compute(0)-n.compute(t))/e,s=r/2,a=[0,-o,-o,0,o,o],l=[r,s,-s,-r,-s,s];return[a,l]}var i=this.renderer.xscale,n=this.renderer.yscale,r=Math.abs(i.compute(0)-i.compute(t)),o=Math.sqrt(3)/2*Math.abs(n.compute(0)-n.compute(t))*e,s=r/2,a=[r,s,-s,-r,-s,s],l=[0,-o,-o,0,o,o];return[a,l]},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.svx,s=i.svy,a=i._scale,l=0,h=e;l<h.length;l++){var u=h[l];if(!isNaN(n[u]+r[u]+a[u])){t.translate(n[u],r[u]),t.beginPath();for(var c=0;c<6;c++)t.lineTo(o[c]*a[u],s[c]*a[u]);t.closePath(),t.translate(-n[u],-r[u]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,u),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,u),t.stroke())}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=[],a=0,l=o;a<l.length;a++){var h=l[a];f.point_in_poly(e-this.sx[h],i-this.sy[h],this.svx,this.svy)&&s.push(h)}var u=f.create_empty_hit_test_result();return u.indices=s,u},e.prototype._hit_span=function(t){var e,i=t.sx,n=t.sy;if(\"v\"==t.direction){var r=this.renderer.yscale.invert(n),o=this.renderer.plot_view.frame.bbox.h_range,s=this.renderer.xscale.r_invert(o.start,o.end),a=s[0],l=s[1];e=this.index.indices({minX:a,minY:r,maxX:l,maxY:r})}else{var h=this.renderer.xscale.invert(i),u=this.renderer.plot_view.frame.bbox.v_range,c=this.renderer.yscale.r_invert(u.start,u.end),_=c[0],p=c[1];e=this.index.indices({minX:h,minY:_,maxX:h,maxY:p})}var d=f.create_empty_hit_test_result();return d.indices=e,d},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=f.validate_bbox_coords([s,a],[h,u]),_=f.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype.draw_legend_for_index=function(t,e,i){s.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.HexTileView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"HexTile\",this.prototype.default_view=l,this.coords([[\"r\",\"q\"]]),this.mixins([\"line\",\"fill\"]),this.define({size:[o.Number,1],aspect_scale:[o.Number,1],scale:[o.NumberSpec,1],orientation:[o.String,\"pointytop\"]}),this.override({line_color:null})},t}(r.Glyph);(i.HexTile=h).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(167),s=t(15),c=t(21),l=t(37),_=t(9),a=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.color_mapper.change,function(){return e._update_image()}),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._update_image=function(){null!=this.image_data&&(this._set_data(),this.renderer.plot_view.request_render())},t.prototype._index_data=function(){for(var t=[],e=0,i=this._x.length;e<i;e++){var n=this._lrtb(e),r=n[0],o=n[1],s=n[2],a=n[3];!isNaN(r+o+s+a)&&isFinite(r+o+s+a)&&t.push({minX:r,minY:a,maxX:o,maxY:s,i:e})}return new l.SpatialIndex(t)},t.prototype._lrtb=function(t){var e=this.renderer.xscale.source_range,i=this._x[t],n=e.is_reversed?i-this._dw[t]:i+this._dw[t],r=this.renderer.yscale.source_range,o=this._y[t],s=r.is_reversed?o-this._dh[t]:o+this._dh[t],a=i<n?[i,n]:[n,i],l=a[0],h=a[1],u=o<s?[o,s]:[s,o],c=u[0],_=u[1];return[l,h,_,c]},t.prototype._image_index=function(t,e,i){var n=this._lrtb(t),r=n[0],o=n[1],s=n[2],a=n[3],l=this._width[t],h=this._height[t],u=(o-r)/l,c=(s-a)/h,_=Math.floor((e-r)/u),p=Math.floor((i-a)/c);return{index:t,dim1:_,dim2:p,flat_index:p*l+_}},t.prototype._hit_point=function(t){var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=_.validate_bbox_coords([n,n],[r,r]),s=this.index.indices(o),a=_.create_empty_hit_test_result();a.image_indices=[];for(var l=0,h=s;l<h.length;l++){var u=h[l];e!=1/0&&i!=1/0&&a.image_indices.push(this._image_index(u,n,r))}return a},t.prototype._set_data=function(){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 Array(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new Array(this._image.length));for(var t=this.model.color_mapper.rgba_mapper,e=0,i=this._image.length;e<i;e++){var n=void 0;if(null!=this._image_shape&&0<this._image_shape[e].length){n=this._image[e];var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var o=this._image[e];n=c.concat(o),this._height[e]=o.length,this._width[e]=o[0].length}var s=this.image_data[e],a=void 0;null!=s&&s.width==this._width[e]&&s.height==this._height[e]?a=s:((a=document.createElement(\"canvas\")).width=this._width[e],a.height=this._height[e]);var l=a.getContext(\"2d\"),h=l.getImageData(0,0,this._width[e],this._height[e]),u=t.v_compute(n);h.data.set(u),l.putImageData(h,0,0),this.image_data[e]=a,this.max_dw=0,\"data\"==this.model.properties.dw.units&&(this.max_dw=c.max(this._dw)),this.max_dh=0,\"data\"==this.model.properties.dh.units&&(this.max_dh=c.max(this._dh))}},t.prototype._map_data=function(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}},t.prototype._render=function(t,e,i){var n=i.image_data,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=t.getImageSmoothingEnabled();t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.global_alpha;for(var h=0,u=e;h<u.length;h++){var c=u[h];if(null!=n[c]&&!isNaN(r[c]+o[c]+s[c]+a[c])){var _=o[c];t.translate(0,_),t.scale(1,-1),t.translate(0,-_),t.drawImage(n[c],0|r[c],0|o[c],s[c],a[c]),t.translate(0,_),t.scale(1,-1),t.translate(0,-_)}}t.setImageSmoothingEnabled(l)},t.prototype.bounds=function(){var t=this.index.bbox;return t.maxX+=this.max_dw,t.maxY+=this.max_dh,t},t}(r.XYGlyphView);i.ImageView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Image\",this.prototype.default_view=a,this.define({image:[s.NumberSpec],dw:[s.DistanceSpec],dh:[s.DistanceSpec],dilate:[s.Bool,!1],global_alpha:[s.Number,1],color_mapper:[s.Instance,function(){return new o.LinearColorMapper({palette:[\"#000000\",\"#252525\",\"#525252\",\"#737373\",\"#969696\",\"#bdbdbd\",\"#d9d9d9\",\"#f0f0f0\",\"#ffffff\"]})}]})},t}(r.XYGlyph);(i.Image=h).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(15),f=t(21),s=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._set_data=function(t){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 Array(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new Array(this._image.length));for(var e=0,i=this._image.length;e<i;e++)if(!(null!=t&&t.indexOf(e)<0)){var n=void 0;if(null!=this._image_shape&&0<this._image_shape[e].length){n=this._image[e].buffer;var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var o=this._image[e],s=f.concat(o);n=new ArrayBuffer(4*s.length);for(var a=new Uint32Array(n),l=0,h=s.length;l<h;l++)a[l]=s[l];this._height[e]=o.length,this._width[e]=o[0].length}var u=this.image_data[e],c=void 0;null!=u&&u.width==this._width[e]&&u.height==this._height[e]?c=u:((c=document.createElement(\"canvas\")).width=this._width[e],c.height=this._height[e]);var _=c.getContext(\"2d\"),p=_.getImageData(0,0,this._width[e],this._height[e]),d=new Uint8Array(n);p.data.set(d),_.putImageData(p,0,0),this.image_data[e]=c,this.max_dw=0,\"data\"==this.model.properties.dw.units&&(this.max_dw=f.max(this._dw)),this.max_dh=0,\"data\"==this.model.properties.dh.units&&(this.max_dh=f.max(this._dh))}},t.prototype._map_data=function(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}},t.prototype._render=function(t,e,i){var n=i.image_data,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=t.getImageSmoothingEnabled();t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.global_alpha;for(var h=0,u=e;h<u.length;h++){var c=u[h];if(!isNaN(r[c]+o[c]+s[c]+a[c])){var _=o[c];t.translate(0,_),t.scale(1,-1),t.translate(0,-_),t.drawImage(n[c],0|r[c],0|o[c],s[c],a[c]),t.translate(0,_),t.scale(1,-1),t.translate(0,-_)}}t.setImageSmoothingEnabled(l)},t.prototype.bounds=function(){var t=this.index.bbox;return t.maxX+=this.max_dw,t.maxY+=this.max_dh,t},t}(r.XYGlyphView);i.ImageRGBAView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ImageRGBA\",this.prototype.default_view=s,this.define({image:[o.NumberSpec],dw:[o.DistanceSpec],dh:[o.DistanceSpec],global_alpha:[o.Number,1],dilate:[o.Bool,!1]})},t}(r.XYGlyph);(i.ImageRGBA=a).initClass()},function(t,e,m){var n=t(391),i=t(146),g=t(14),r=t(15),y=t(22),o=t(37);m.CanvasImage=Image;var s=function(i){function t(){var t=null!==i&&i.apply(this,arguments)||this;return t._images_rendered=!1,t}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._index_data=function(){return new o.SpatialIndex([])},t.prototype._set_data=function(){var n=this;null!=this.image&&this.image.length==this._url.length||(this.image=y.map(this._url,function(){return null}));var t=this.model,r=t.retry_attempts,o=t.retry_timeout;this.retries=y.map(this._url,function(){return r});for(var e=function(t,e){if(null==s._url[t])return\"continue\";var i=new m.CanvasImage;i.onerror=function(){0<n.retries[t]?(g.logger.trace(\"ImageURL failed to load \"+n._url[t]+\" image, retrying in \"+o+\" ms\"),setTimeout(function(){return i.src=n._url[t]},o)):g.logger.warn(\"ImageURL unable to load \"+n._url[t]+\" image after \"+r+\" retries\"),n.retries[t]-=1},i.onload=function(){n.image[t]=i,n.renderer.request_render()},i.src=s._url[t]},s=this,i=0,a=this._url.length;i<a;i++)e(i,a);for(var l=\"data\"==this.model.properties.w.units,h=\"data\"==this.model.properties.h.units,u=this._x.length,c=new Array(l?2*u:u),_=new Array(h?2*u:u),i=0;i<u;i++)c[i]=this._x[i],_[i]=this._y[i];if(l)for(var i=0;i<u;i++)c[u+i]=this._x[i]+this._w[i];if(h)for(var i=0;i<u;i++)_[u+i]=this._y[i]+this._h[i];var p=y.min(c),d=y.max(c),f=y.min(_),v=y.max(_);this._bounds_rect={minX:p,maxX:d,minY:f,maxY:v}},t.prototype.has_finished=function(){return i.prototype.has_finished.call(this)&&1==this._images_rendered},t.prototype._map_data=function(){var t=null!=this.model.w?this._w:y.map(this._x,function(){return NaN}),e=null!=this.model.h?this._h:y.map(this._x,function(){return NaN});switch(this.model.properties.w.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,t,\"edge\",this.model.dilate);break;case\"screen\":this.sw=t}switch(this.model.properties.h.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,e,\"edge\",this.model.dilate);break;case\"screen\":this.sh=e}},t.prototype._render=function(t,e,i){var n=i.image,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=i._angle,h=this.renderer.plot_view.frame;t.rect(h._left.value+1,h._top.value+1,h._width.value-2,h._height.value-2),t.clip();for(var u=!0,c=0,_=e;c<_.length;c++){var p=_[c];if(!isNaN(r[p]+o[p]+l[p])&&-1!=this.retries[p]){var d=n[p];null!=d?this._render_image(t,p,d,r,o,s,a,l):u=!1}}u&&!this._images_rendered&&(this._images_rendered=!0,this.notify_finished())},t.prototype._final_sx_sy=function(t,e,i,n,r){switch(t){case\"top_left\":return[e,i];case\"top_center\":return[e-n/2,i];case\"top_right\":return[e-n,i];case\"center_right\":return[e-n,i-r/2];case\"bottom_right\":return[e-n,i-r];case\"bottom_center\":return[e-n/2,i-r];case\"bottom_left\":return[e,i-r];case\"center_left\":return[e,i-r/2];case\"center\":return[e-n/2,i-r/2]}},t.prototype._render_image=function(t,e,i,n,r,o,s,a){isNaN(o[e])&&(o[e]=i.width),isNaN(s[e])&&(s[e]=i.height);var l=this.model.anchor,h=this._final_sx_sy(l,n[e],r[e],o[e],s[e]),u=h[0],c=h[1];t.save(),t.globalAlpha=this.model.global_alpha,a[e]?(t.translate(u,c),t.rotate(a[e]),t.drawImage(i,0,0,o[e],s[e]),t.rotate(-a[e]),t.translate(-u,-c)):t.drawImage(i,u,c,o[e],s[e]),t.restore()},t.prototype.bounds=function(){return this._bounds_rect},t}(i.XYGlyphView);m.ImageURLView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ImageURL\",this.prototype.default_view=s,this.define({url:[r.StringSpec],anchor:[r.Anchor,\"top_left\"],global_alpha:[r.Number,1],angle:[r.AngleSpec,0],w:[r.DistanceSpec],h:[r.DistanceSpec],dilate:[r.Bool,!1],retry_attempts:[r.Number,0],retry_timeout:[r.Number,0]})},t}(i.XYGlyph);(m.ImageURL=a).initClass()},function(t,e,i){var n=t(114);i.AnnularWedge=n.AnnularWedge;var r=t(115);i.Annulus=r.Annulus;var o=t(116);i.Arc=o.Arc;var s=t(117);i.Bezier=s.Bezier;var a=t(120);i.Circle=a.Circle;var l=t(119);i.CenterRotatable=l.CenterRotatable;var h=t(121);i.Ellipse=h.Ellipse;var u=t(122);i.EllipseOval=u.EllipseOval;var c=t(123);i.Glyph=c.Glyph;var _=t(124);i.HBar=_.HBar;var p=t(125);i.HexTile=p.HexTile;var d=t(126);i.Image=d.Image;var f=t(127);i.ImageRGBA=f.ImageRGBA;var v=t(128);i.ImageURL=v.ImageURL;var m=t(130);i.Line=m.Line;var g=t(131);i.MultiLine=g.MultiLine;var y=t(132);i.MultiPolygons=y.MultiPolygons;var b=t(133);i.Oval=b.Oval;var x=t(134);i.Patch=x.Patch;var w=t(135);i.Patches=w.Patches;var k=t(136);i.Quad=k.Quad;var S=t(137);i.Quadratic=S.Quadratic;var C=t(138);i.Ray=C.Ray;var T=t(139);i.Rect=T.Rect;var A=t(140);i.Segment=A.Segment;var E=t(141);i.Step=E.Step;var M=t(142);i.Text=M.Text;var O=t(144);i.VBar=O.VBar;var z=t(145);i.Wedge=z.Wedge;var P=t(146);i.XYGlyph=P.XYGlyph},function(t,e,i){var n=t(391),r=t(146),a=t(143),c=t(9),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=!1,s=null;this.visuals.line.set_value(t);for(var a=0,l=e;a<l.length;a++){var h=l[a];if(o){if(!isFinite(n[h]+r[h])){t.stroke(),t.beginPath(),o=!1,s=h;continue}null!=s&&1<h-s&&(t.stroke(),o=!1)}o?t.lineTo(n[h],r[h]):(t.beginPath(),t.moveTo(n[h],r[h]),o=!0),s=h}o&&t.stroke()},e.prototype._hit_point=function(t){for(var e=this,i=c.create_empty_hit_test_result(),n={x:t.sx,y:t.sy},r=9999,o=Math.max(2,this.visuals.line.line_width.value()/2),s=0,a=this.sx.length-1;s<a;s++){var l={x:this.sx[s],y:this.sy[s]},h={x:this.sx[s+1],y:this.sy[s+1]},u=c.dist_to_segment(n,l,h);u<o&&u<r&&(r=u,i.add_to_selected_glyphs(this.model),i.get_view=function(){return e},i.line_indices=[s])}return i},e.prototype._hit_span=function(t){var e,i,n=this,r=t.sx,o=t.sy,s=c.create_empty_hit_test_result();\"v\"==t.direction?(e=this.renderer.yscale.invert(o),i=this._y):(e=this.renderer.xscale.invert(r),i=this._x);for(var a=0,l=i.length-1;a<l;a++)(i[a]<=e&&e<=i[a+1]||i[a+1]<=e&&e<=i[a])&&(s.add_to_selected_glyphs(this.model),s.get_view=function(){return n},s.line_indices.push(a));return s},e.prototype.get_interpolation_hit=function(t,e){var i=[this._x[t],this._y[t],this._x[t+1],this._y[t+1]],n=i[0],r=i[1],o=i[2],s=i[3];return a.line_interpolation(this.renderer,e,n,r,o,s)},e.prototype.draw_legend_for_index=function(t,e,i){a.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.LineView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Line\",this.prototype.default_view=o,this.mixins([\"line\"])},t}(r.XYGlyph);(i.Line=s).initClass()},function(t,e,i){var n=t(391),m=t(37),d=t(9),f=t(32),g=t(21),y=t(44),r=t(123),l=t(143),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)if(null!=this._xs[e]&&0!==this._xs[e].length){for(var n=this._xs[e],r=[],o=0,s=n.length;o<s;o++){var a=n[o];y.isStrictNaN(a)||r.push(a)}for(var l=this._ys[e],h=[],o=0,s=l.length;o<s;o++){var u=l[o];y.isStrictNaN(u)||h.push(u)}var c=[g.min(r),g.max(r)],_=c[0],p=c[1],d=[g.min(h),g.max(h)],f=d[0],v=d[1];t.push({minX:_,minY:f,maxX:p,maxY:v,i:e})}return new m.SpatialIndex(t)},e.prototype._render=function(t,e,i){for(var n=i.sxs,r=i.sys,o=0,s=e;o<s.length;o++){var a=s[o],l=[n[a],r[a]],h=l[0],u=l[1];this.visuals.line.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c])||isNaN(u[c])?(t.stroke(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.stroke()}},e.prototype._hit_point=function(t){for(var e=d.create_empty_hit_test_result(),i={x:t.sx,y:t.sy},n=9999,r={},o=0,s=this.sxs.length;o<s;o++){for(var a=Math.max(2,this.visuals.line.cache_select(\"line_width\",o)/2),l=null,h=0,u=this.sxs[o].length-1;h<u;h++){var c={x:this.sxs[o][h],y:this.sys[o][h]},_={x:this.sxs[o][h+1],y:this.sys[o][h+1]},p=d.dist_to_segment(i,c,_);p<a&&p<n&&(n=p,l=[h])}l&&(r[o]=l)}return e.indices=f.keys(r).map(function(t){return parseInt(t,10)}),e.multiline_indices=r,e},e.prototype._hit_span=function(t){var e,i,n=t.sx,r=t.sy,o=d.create_empty_hit_test_result();\"v\"===t.direction?(e=this.renderer.yscale.invert(r),i=this._ys):(e=this.renderer.xscale.invert(n),i=this._xs);for(var s={},a=0,l=i.length;a<l;a++){for(var h=[],u=0,c=i[a].length-1;u<c;u++)i[a][u]<=e&&e<=i[a][u+1]&&h.push(u);0<h.length&&(s[a]=h)}return o.indices=f.keys(s).map(function(t){return parseInt(t,10)}),o.multiline_indices=s,o},e.prototype.get_interpolation_hit=function(t,e,i){var n=[this._xs[t][e],this._ys[t][e],this._xs[t][e+1],this._ys[t][e+1]],r=n[0],o=n[1],s=n[2],a=n[3];return l.line_interpolation(this.renderer,i,r,o,s,a)},e.prototype.draw_legend_for_index=function(t,e,i){l.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.MultiLineView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiLine\",this.prototype.default_view=o,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.MultiLine=s).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143),u=t(21),s=t(22),x=t(9),m=t(44),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)for(var n=0,r=this._xs[e].length;n<r;n++){var o=this._xs[e][n][0],s=this._ys[e][n][0];0!=o.length&&t.push({minX:u.min(o),minY:u.min(s),maxX:u.max(o),maxY:u.max(s),i:e})}return this.hole_index=this._index_hole_data(),new h.SpatialIndex(t)},e.prototype._index_hole_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)for(var n=0,r=this._xs[e].length;n<r;n++)if(1<this._xs[e][n].length)for(var o=1,s=this._xs[e][n].length;o<s;o++){var a=this._xs[e][n][o],l=this._ys[e][n][o];0!=a.length&&t.push({minX:u.min(a),minY:u.min(l),maxX:u.max(a),maxY:u.max(l),i:e})}return new h.SpatialIndex(t)},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.x_ranges.default,e=[t.min,t.max],i=e[0],n=e[1],r=this.renderer.plot_view.frame.y_ranges.default,o=[r.min,r.max],s=o[0],a=o[1],l=x.validate_bbox_coords([i,n],[s,a]),h=this.index.indices(l);return h.sort(function(t,e){return t-e}).filter(function(t,e,i){return 0===e||t!==i[e-1]})},e.prototype._render=function(t,e,i){var n=i.sxs,r=i.sys;if(this.visuals.fill.doit||this.visuals.line.doit)for(var o=0,s=e;o<s.length;o++){var a=s[o];t.beginPath();for(var l=0,h=n[a].length;l<h;l++)for(var u=0,c=n[a][l].length;u<c;u++){for(var _=n[a][l][u],p=r[a][l][u],d=0,f=_.length;d<f;d++)0!=d?t.lineTo(_[d],p[d]):t.moveTo(_[d],p[d]);t.closePath()}this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,a),t.fill(\"evenodd\")),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,a),t.stroke())}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=this.hole_index.indices({minX:n,minY:r,maxX:n,maxY:r}),a=[],l=0,h=o.length;l<h;l++)for(var u=o[l],c=this.sxs[u],_=this.sys[u],p=0,d=c.length;p<d;p++){var f=c[p].length;if(x.point_in_poly(e,i,c[p][0],_[p][0]))if(1==f)a.push(u);else if(-1==s.indexOf(u))a.push(u);else if(1<f){for(var v=!1,m=1;m<f;m++){var g=c[p][m],y=_[p][m];if(x.point_in_poly(e,i,g,y)){v=!0;break}}v||a.push(u)}}var b=x.create_empty_hit_test_result();return b.indices=a,b},e.prototype._get_snap_coord=function(t){return s.sum(t)/t.length},e.prototype.scenterx=function(t,e,i){if(1==this.sxs[t].length)return this._get_snap_coord(this.sxs[t][0][0]);for(var n=this.sxs[t],r=this.sys[t],o=0,s=n.length;o<s;o++)if(x.point_in_poly(e,i,n[o][0],r[o][0]))return this._get_snap_coord(n[o][0]);throw new Error(\"unreachable code\")},e.prototype.scentery=function(t,e,i){if(1==this.sys[t].length)return this._get_snap_coord(this.sys[t][0][0]);for(var n=this.sxs[t],r=this.sys[t],o=0,s=n.length;o<s;o++)if(x.point_in_poly(e,i,n[o][0],r[o][0]))return this._get_snap_coord(r[o][0]);throw new Error(\"unreachable code\")},e.prototype.map_data=function(){for(var t=this,e=0,i=this.model._coords;e<i.length;e++){var n=i[e],r=n[0],o=n[1],s=\"s\"+r,a=\"s\"+o;if(o=\"_\"+o,null!=t[r=\"_\"+r]&&(m.isArray(t[r][0])||m.isTypedArray(t[r][0]))){var l=t[r].length;t[s]=new Array(l),t[a]=new Array(l);for(var h=0;h<l;h++){var u=t[r][h].length;t[s][h]=new Array(u),t[a][h]=new Array(u);for(var c=0;c<u;c++){var _=t[r][h][c].length;t[s][h][c]=new Array(_),t[a][h][c]=new Array(_);for(var p=0;p<_;p++){var d=this.map_to_screen(t[r][h][c][p],t[o][h][c][p]),f=d[0],v=d[1];t[s][h][c][p]=f,t[a][h][c][p]=v}}}}}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.MultiPolygonsView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiPolygons\",this.prototype.default_view=a,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.MultiPolygons=l).initClass()},function(t,e,i){var n=t(391),r=t(122),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){var t,e=this._x.length;this.sw=new Float64Array(e),t=\"data\"==this.model.properties.width.units?this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this._width;for(var i=0;i<e;i++)this.sw[i]=.75*t[i];\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height},e}(r.EllipseOvalView);i.OvalView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Oval\",this.prototype.default_view=o},t}(r.EllipseOval);(i.Oval=s).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy;if(this.visuals.fill.doit){this.visuals.fill.set_value(t);for(var o=0,s=e;o<s.length;o++){var a=s[o];0!=a?isNaN(n[a]+r[a])?(t.closePath(),t.fill(),t.beginPath()):t.lineTo(n[a],r[a]):(t.beginPath(),t.moveTo(n[a],r[a]))}t.closePath(),t.fill()}if(this.visuals.line.doit){this.visuals.line.set_value(t);for(var l=0,h=e;l<h.length;l++){var a=h[l];0!=a?isNaN(n[a]+r[a])?(t.closePath(),t.stroke(),t.beginPath()):t.lineTo(n[a],r[a]):(t.beginPath(),t.moveTo(n[a],r[a]))}return t.closePath(),t.stroke()}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.PatchView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Patch\",this.prototype.default_view=s,this.mixins([\"line\",\"fill\"])},t}(r.XYGlyph);(i.Patch=a).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143),u=t(21),s=t(22),l=t(44),f=t(9),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._build_discontinuous_object=function(t){for(var e=[],i=0,n=t.length;i<n;i++){e[i]=[];for(var r=u.copy(t[i]);0<r.length;){var o=u.findLastIndex(r,function(t){return l.isStrictNaN(t)}),s=void 0;0<=o?s=r.splice(o):(s=r,r=[]);var a=s.filter(function(t){return!l.isStrictNaN(t)});e[i].push(a)}}return e},e.prototype._index_data=function(){for(var t=this._build_discontinuous_object(this._xs),e=this._build_discontinuous_object(this._ys),i=[],n=0,r=this._xs.length;n<r;n++)for(var o=0,s=t[n].length;o<s;o++){var a=t[n][o],l=e[n][o];0!=a.length&&i.push({minX:u.min(a),minY:u.min(l),maxX:u.max(a),maxY:u.max(l),i:n})}return new h.SpatialIndex(i)},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.x_ranges.default,e=[t.min,t.max],i=e[0],n=e[1],r=this.renderer.plot_view.frame.y_ranges.default,o=[r.min,r.max],s=o[0],a=o[1],l=f.validate_bbox_coords([i,n],[s,a]),h=this.index.indices(l);return h.sort(function(t,e){return t-e})},e.prototype._render=function(t,e,i){var n=i.sxs,r=i.sys;this.sxss=this._build_discontinuous_object(n),this.syss=this._build_discontinuous_object(r);for(var o=0,s=e;o<s.length;o++){var a=s[o],l=[n[a],r[a]],h=l[0],u=l[1];if(this.visuals.fill.doit){this.visuals.fill.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c]+u[c])?(t.closePath(),t.fill(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.closePath(),t.fill()}if(this.visuals.line.doit){this.visuals.line.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c]+u[c])?(t.closePath(),t.stroke(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.closePath(),t.stroke()}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=[],a=0,l=o.length;a<l;a++)for(var h=o[a],u=this.sxss[h],c=this.syss[h],_=0,p=u.length;_<p;_++)f.point_in_poly(e,i,u[_],c[_])&&s.push(h);var d=f.create_empty_hit_test_result();return d.indices=s,d},e.prototype._get_snap_coord=function(t){return s.sum(t)/t.length},e.prototype.scenterx=function(t,e,i){if(1==this.sxss[t].length)return this._get_snap_coord(this.sxs[t]);for(var n=this.sxss[t],r=this.syss[t],o=0,s=n.length;o<s;o++)if(f.point_in_poly(e,i,n[o],r[o]))return this._get_snap_coord(n[o]);throw new Error(\"unreachable code\")},e.prototype.scentery=function(t,e,i){if(1==this.syss[t].length)return this._get_snap_coord(this.sys[t]);for(var n=this.sxss[t],r=this.syss[t],o=0,s=n.length;o<s;o++)if(f.point_in_poly(e,i,n[o],r[o]))return this._get_snap_coord(r[o]);throw new Error(\"unreachable code\")},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.PatchesView=a;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Patches\",this.prototype.default_view=a,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.Patches=c).initClass()},function(t,e,i){var n=t(391),r=t(118),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.get_anchor_point=function(t,e,i){var n=Math.min(this.sleft[e],this.sright[e]),r=Math.max(this.sright[e],this.sleft[e]),o=Math.min(this.stop[e],this.sbottom[e]),s=Math.max(this.sbottom[e],this.stop[e]);switch(t){case\"top_left\":return{x:n,y:o};case\"top_center\":return{x:(n+r)/2,y:o};case\"top_right\":return{x:r,y:o};case\"center_right\":return{x:r,y:(o+s)/2};case\"bottom_right\":return{x:r,y:s};case\"bottom_center\":return{x:(n+r)/2,y:s};case\"bottom_left\":return{x:n,y:s};case\"center_left\":return{x:n,y:(o+s)/2};case\"center\":return{x:(n+r)/2,y:(o+s)/2};default:return null}},e.prototype.scenterx=function(t){return(this.sleft[t]+this.sright[t])/2},e.prototype.scentery=function(t){return(this.stop[t]+this.sbottom[t])/2},e.prototype._index_data=function(){return this._index_box(this._right.length)},e.prototype._lrtb=function(t){var e=this._left[t],i=this._right[t],n=this._top[t],r=this._bottom[t];return[e,i,n,r]},e}(r.BoxView);i.QuadView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Quad\",this.prototype.default_view=o,this.coords([[\"right\",\"bottom\"],[\"left\",\"top\"]])},t}(r.Box);(i.Quad=s).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143);function u(t,e,i){if(e==(t+i)/2)return[t,i];var n=(t-e)/(t-2*e+i),r=t*Math.pow(1-n,2)+2*e*(1-n)*n+i*Math.pow(n,2);return[Math.min(t,i,r),Math.max(t,i,r)]}var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++)if(!isNaN(this._x0[e]+this._x1[e]+this._y0[e]+this._y1[e]+this._cx[e]+this._cy[e])){var n=u(this._x0[e],this._cx[e],this._x1[e]),r=n[0],o=n[1],s=u(this._y0[e],this._cy[e],this._y1[e]),a=s[0],l=s[1];t.push({minX:r,minY:a,maxX:o,maxY:l,i:e})}return new h.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1,a=i.scx,l=i.scy;if(this.visuals.line.doit)for(var h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c]+l[c])||(t.beginPath(),t.moveTo(n[c],r[c]),t.quadraticCurveTo(a[c],l[c],o[c],s[c]),this.visuals.line.set_vectorize(t,c),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.QuadraticView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Quadratic\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"],[\"cx\",\"cy\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Quadratic=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.length.units?this.slength=this.sdist(this.renderer.xscale,this._x,this._length):this.slength=this._length},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.slength,s=i._angle;if(this.visuals.line.doit){for(var a=this.renderer.plot_view.frame._width.value,l=this.renderer.plot_view.frame._height.value,h=2*(a+l),u=0,c=o.length;u<c;u++)0==o[u]&&(o[u]=h);for(var _=0,p=e;_<p.length;_++){var u=p[_];isNaN(n[u]+r[u]+s[u]+o[u])||(t.translate(n[u],r[u]),t.rotate(s[u]),t.beginPath(),t.moveTo(0,0),t.lineTo(o[u],0),this.visuals.line.set_vectorize(t,u),t.stroke(),t.rotate(-s[u]),t.translate(-n[u],-r[u]))}}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.RayView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ray\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({length:[s.DistanceSpec],angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Ray=l).initClass()},function(t,e,i){var n=t(391),r=t(119),o=t(143),T=t(9),s=t(15),A=t(22),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_data=function(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)},e.prototype._map_data=function(){var t,e;if(\"data\"==this.model.properties.width.units)t=this._map_dist_corner_for_data_side_length(this._x,this._width,this.renderer.xscale),this.sw=t[0],this.sx0=t[1];else{this.sw=this._width;var i=this.sx.length;this.sx0=new Float64Array(i);for(var n=0;n<i;n++)this.sx0[n]=this.sx[n]-this.sw[n]/2}if(\"data\"==this.model.properties.height.units)e=this._map_dist_corner_for_data_side_length(this._y,this._height,this.renderer.yscale),this.sh=e[0],this.sy1=e[1];else{this.sh=this._height;var r=this.sy.length;this.sy1=new Float64Array(r);for(var n=0;n<r;n++)this.sy1[n]=this.sy[n]-this.sh[n]/2}var o=this.sw.length;this.ssemi_diag=new Float64Array(o);for(var n=0;n<o;n++)this.ssemi_diag[n]=Math.sqrt(this.sw[n]/2*this.sw[n]/2+this.sh[n]/2*this.sh[n]/2)},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.sx0,s=i.sy1,a=i.sw,l=i.sh,h=i._angle;if(this.visuals.fill.doit)for(var u=0,c=e;u<c.length;u++){var _=c[u];isNaN(n[_]+r[_]+o[_]+s[_]+a[_]+l[_]+h[_])||(this.visuals.fill.set_vectorize(t,_),h[_]?(t.translate(n[_],r[_]),t.rotate(h[_]),t.fillRect(-a[_]/2,-l[_]/2,a[_],l[_]),t.rotate(-h[_]),t.translate(-n[_],-r[_])):t.fillRect(o[_],s[_],a[_],l[_]))}if(this.visuals.line.doit){t.beginPath();for(var p=0,d=e;p<d.length;p++){var _=d[p];isNaN(n[_]+r[_]+o[_]+s[_]+a[_]+l[_]+h[_])||0!=a[_]&&0!=l[_]&&(h[_]?(t.translate(n[_],r[_]),t.rotate(h[_]),t.rect(-a[_]/2,-l[_]/2,a[_],l[_]),t.rotate(-h[_]),t.translate(-n[_],-r[_])):t.rect(o[_],s[_],a[_],l[_]),this.visuals.line.set_vectorize(t,_),t.stroke(),t.beginPath())}t.stroke()}},e.prototype._hit_rect=function(t){return this._hit_rect_against_index(t)},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=[],s=0,a=this.sx0.length;s<a;s++)o.push(this.sx0[s]+this.sw[s]/2);for(var l=[],s=0,a=this.sy1.length;s<a;s++)l.push(this.sy1[s]+this.sh[s]/2);for(var h=A.max(this._ddist(0,o,this.ssemi_diag)),u=A.max(this._ddist(1,l,this.ssemi_diag)),c=n-h,_=n+h,p=r-u,d=r+u,f=[],v=T.validate_bbox_coords([c,_],[p,d]),m=0,g=this.index.indices(v);m<g.length;m++){var s=g[m],y=void 0,b=void 0;if(this._angle[s]){var x=Math.sin(-this._angle[s]),w=Math.cos(-this._angle[s]),k=w*(e-this.sx[s])-x*(i-this.sy[s])+this.sx[s],S=x*(e-this.sx[s])+w*(i-this.sy[s])+this.sy[s];e=k,i=S,b=Math.abs(this.sx[s]-e)<=this.sw[s]/2,y=Math.abs(this.sy[s]-i)<=this.sh[s]/2}else b=e-this.sx0[s]<=this.sw[s]&&0<=e-this.sx0[s],y=i-this.sy1[s]<=this.sh[s]&&0<=i-this.sy1[s];y&&b&&f.push(s)}var C=T.create_empty_hit_test_result();return C.indices=f,C},e.prototype._map_dist_corner_for_data_side_length=function(t,e,i){for(var n=t.length,r=new Float64Array(n),o=new Float64Array(n),s=0;s<n;s++)r[s]=Number(t[s])-e[s]/2,o[s]=Number(t[s])+e[s]/2;for(var a=i.v_compute(r),l=i.v_compute(o),h=this.sdist(i,r,e,\"edge\",this.model.dilate),u=a,s=0,c=a.length;s<c;s++)if(a[s]!=l[s]){u=a[s]<l[s]?a:l;break}return[h,u]},e.prototype._ddist=function(t,e,i){for(var n=0==t?this.renderer.xscale:this.renderer.yscale,r=e,o=r.length,s=new Float64Array(o),a=0;a<o;a++)s[a]=r[a]+i[a];for(var l=n.v_invert(r),h=n.v_invert(s),u=l.length,c=new Float64Array(u),a=0;a<u;a++)c[a]=Math.abs(h[a]-l[a]);return c},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._bounds=function(t){var e=t.minX,i=t.maxX,n=t.minY,r=t.maxY;return{minX:e-this.max_w2,maxX:i+this.max_w2,minY:n-this.max_h2,maxY:r+this.max_h2}},e}(r.CenterRotatableView);i.RectView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Rect\",this.prototype.default_view=a,this.define({dilate:[s.Bool,!1]})},t}(r.CenterRotatable);(i.Rect=l).initClass()},function(t,e,i){var n=t(391),k=t(9),a=t(37),r=t(123),o=t(143),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++){var n=this._x0[e],r=this._x1[e],o=this._y0[e],s=this._y1[e];isNaN(n+r+o+s)||t.push({minX:Math.min(n,r),minY:Math.min(o,s),maxX:Math.max(n,r),maxY:Math.max(o,s),i:e})}return new a.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1;if(this.visuals.line.doit)for(var a=0,l=e;a<l.length;a++){var h=l[a];isNaN(n[h]+r[h]+o[h]+s[h])||(t.beginPath(),t.moveTo(n[h],r[h]),t.lineTo(o[h],s[h]),this.visuals.line.set_vectorize(t,h),t.stroke())}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n={x:e,y:i},r=[],o=this.renderer.xscale.r_invert(e-2,e+2),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(i-2,i+2),h=l[0],u=l[1],c=this.index.indices({minX:s,minY:h,maxX:a,maxY:u}),_=0,p=c;_<p.length;_++){var d=p[_],f=Math.pow(Math.max(2,this.visuals.line.cache_select(\"line_width\",d)/2),2),v={x:this.sx0[d],y:this.sy0[d]},m={x:this.sx1[d],y:this.sy1[d]},g=k.dist_to_segment_squared(n,v,m);g<f&&r.push(d)}var y=k.create_empty_hit_test_result();return y.indices=r,y},e.prototype._hit_span=function(t){var e,i,n,r,o,s=this.renderer.plot_view.frame.bbox.ranges,a=s[0],l=s[1],h=t.sx,u=t.sy;\"v\"==t.direction?(o=this.renderer.yscale.invert(u),e=[this._y0,this._y1],n=e[0],r=e[1]):(o=this.renderer.xscale.invert(h),i=[this._x0,this._x1],n=i[0],r=i[1]);for(var c=[],_=this.renderer.xscale.r_invert(a.start,a.end),p=_[0],d=_[1],f=this.renderer.yscale.r_invert(l.start,l.end),v=f[0],m=f[1],g=this.index.indices({minX:p,minY:v,maxX:d,maxY:m}),y=0,b=g;y<b.length;y++){var x=b[y];(n[x]<=o&&o<=r[x]||r[x]<=o&&o<=n[x])&&c.push(x)}var w=k.create_empty_hit_test_result();return w.indices=c,w},e.prototype.scenterx=function(t){return(this.sx0[t]+this.sx1[t])/2},e.prototype.scentery=function(t){return(this.sy0[t]+this.sy1[t])/2},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.SegmentView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Segment\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Segment=l).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n,r,o,s,a,l,h=i.sx,u=i.sy,c=!1,_=null;this.visuals.line.set_value(t);var p=e.length;if(!(p<2)){t.beginPath(),t.moveTo(h[0],u[0]);for(var d=0,f=e;d<f.length;d++){var v=f[d],m=void 0,g=void 0,y=void 0,b=void 0;switch(this.model.mode){case\"before\":n=[h[v-1],u[v]],m=n[0],y=n[1],r=[h[v],u[v]],g=r[0],b=r[1];break;case\"after\":o=[h[v],u[v-1]],m=o[0],y=o[1],s=[h[v],u[v]],g=s[0],b=s[1];break;case\"center\":var x=(h[v-1]+h[v])/2;a=[x,u[v-1]],m=a[0],y=a[1],l=[x,u[v]],g=l[0],b=l[1];break;default:throw new Error(\"unexpected\")}if(c){if(!isFinite(h[v]+u[v])){t.stroke(),t.beginPath(),c=!1,_=v;continue}null!=_&&1<v-_&&(t.stroke(),c=!1)}c?(t.lineTo(m,y),t.lineTo(g,b)):(t.beginPath(),t.moveTo(h[v],u[v]),c=!0),_=v}t.lineTo(h[p-1],u[p-1]),t.stroke()}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.StepView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Step\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({mode:[s.StepMode,\"before\"]})},t}(r.XYGlyph);(i.Step=l).initClass()},function(t,e,i){var n=t(391),r=t(146),d=t(9),o=t(15),O=t(41),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._rotate_point=function(t,e,i,n,r){var o=(t-i)*Math.cos(r)-(e-n)*Math.sin(r)+i,s=(t-i)*Math.sin(r)+(e-n)*Math.cos(r)+n;return[o,s]},e.prototype._text_bounds=function(t,e,i,n){var r=[t,t+i,t+i,t,t],o=[e,e,e-n,e-n,e];return[r,o]},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i._x_offset,s=i._y_offset,a=i._angle,l=i._text;this._sys=[],this._sxs=[];for(var h=0,u=e;h<u.length;h++){var c=u[h];if(!isNaN(n[c]+r[c]+o[c]+s[c]+a[c])&&null!=l[c]&&(this._sxs[c]=[],this._sys[c]=[],this.visuals.text.doit)){var _=\"\"+l[c];t.save(),t.translate(n[c]+o[c],r[c]+s[c]),t.rotate(a[c]),this.visuals.text.set_vectorize(t,c);var p=this.visuals.text.cache_select(\"font\",c),d=O.get_text_height(p).height,f=this.visuals.text.text_line_height.value()*d;if(-1==_.indexOf(\"\\n\")){t.fillText(_,0,0);var v=n[c]+o[c],m=r[c]+s[c],g=t.measureText(_).width,y=this._text_bounds(v,m,g,f),b=y[0],x=y[1];this._sxs[c].push(b),this._sys[c].push(x)}else{var w=_.split(\"\\n\"),k=f*w.length,S=this.visuals.text.cache_select(\"text_baseline\",c),C=void 0;switch(S){case\"top\":C=0;break;case\"middle\":C=-k/2+f/2;break;case\"bottom\":C=-k+f;break;default:C=0,console.warn(\"'\"+S+\"' baseline not supported with multi line text\")}for(var T=0,A=w;T<A.length;T++){var E=A[T];t.fillText(E,0,C);var v=n[c]+o[c],m=C+r[c]+s[c],g=t.measureText(E).width,M=this._text_bounds(v,m,g,f),b=M[0],x=M[1];this._sxs[c].push(b),this._sys[c].push(x),C+=f}}t.restore()}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=[],r=0;r<this._sxs.length;r++)for(var o=this._sxs[r],s=this._sys[r],a=o.length,l=0,h=a;l<h;l++){var u=this._rotate_point(e,i,o[a-1][0],s[a-1][0],-this._angle[r]),c=u[0],_=u[1];d.point_in_poly(c,_,o[l],s[l])&&n.push(r)}var p=d.create_empty_hit_test_result();return p.indices=n,p},e.prototype._scenterxy=function(t){var e=this._sxs[t][0][0],i=this._sys[t][0][0],n=(this._sxs[t][0][2]+e)/2,r=(this._sys[t][0][2]+i)/2,o=this._rotate_point(n,r,e,i,this._angle[t]),s=o[0],a=o[1];return{x:s,y:a}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.TextView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Text\",this.prototype.default_view=s,this.mixins([\"text\"]),this.define({text:[o.StringSpec,{field:\"text\"}],angle:[o.AngleSpec,0],x_offset:[o.NumberSpec,0],y_offset:[o.NumberSpec,0]})},t}(r.XYGlyph);(i.Text=a).initClass()},function(t,e,i){var x=t(9);i.generic_line_legend=function(t,e,i,n){var r=i.x0,o=i.x1,s=i.y0,a=i.y1;e.save(),e.beginPath(),e.moveTo(r,(s+a)/2),e.lineTo(o,(s+a)/2),t.line.doit&&(t.line.set_vectorize(e,n),e.stroke()),e.restore()},i.generic_area_legend=function(t,e,i,n){var r=i.x0,o=i.x1,s=i.y0,a=i.y1,l=.1*Math.abs(o-r),h=.1*Math.abs(a-s),u=r+l,c=o-l,_=s+h,p=a-h;t.fill.doit&&(t.fill.set_vectorize(e,n),e.fillRect(u,_,c-u,p-_)),t.line.doit&&(e.beginPath(),e.rect(u,_,c-u,p-_),t.line.set_vectorize(e,n),e.stroke())},i.line_interpolation=function(t,e,i,n,r,o){var s,a,l,h,u,c,_,p,d,f,v=e.sx,m=e.sy;\"point\"==e.type?(s=t.yscale.r_invert(m-1,m+1),d=s[0],f=s[1],a=t.xscale.r_invert(v-1,v+1),_=a[0],p=a[1]):\"v\"==e.direction?(l=t.yscale.r_invert(m,m),d=l[0],f=l[1],h=[Math.min(i-1,r-1),Math.max(i+1,r+1)],_=h[0],p=h[1]):(u=t.xscale.r_invert(v,v),_=u[0],p=u[1],c=[Math.min(n-1,o-1),Math.max(n+1,o+1)],d=c[0],f=c[1]);var g=x.check_2_segments_intersect(_,d,p,f,i,n,r,o),y=g.x,b=g.y;return[y,b]}},function(t,e,i){var n=t(391),r=t(118),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return(this.stop[t]+this.sbottom[t])/2},e.prototype._index_data=function(){return this._index_box(this._x.length)},e.prototype._lrtb=function(t){var e=this._x[t]-this._width[t]/2,i=this._x[t]+this._width[t]/2,n=Math.max(this._top[t],this._bottom[t]),r=Math.min(this._top[t],this._bottom[t]);return[e,i,n,r]},e.prototype._map_data=function(){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);var t=this.sx.length;this.sleft=new Float64Array(t),this.sright=new Float64Array(t);for(var e=0;e<t;e++)this.sleft[e]=this.sx[e]-this.sw[e]/2,this.sright[e]=this.sx[e]+this.sw[e]/2;this._clamp_viewport()},e}(r.BoxView);i.VBarView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"VBar\",this.prototype.default_view=s,this.coords([[\"x\",\"bottom\"]]),this.define({width:[o.DistanceSpec],top:[o.NumberSpec]}),this.override({bottom:0})},t}(r.Box);(i.VBar=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),P=t(9),s=t(15),j=t(31),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sradius,s=i._start_angle,a=i._end_angle,l=this.model.properties.direction.value(),h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c])||(t.beginPath(),t.arc(n[c],r[c],o[c],s[c],a[c],l),t.lineTo(n[c],r[c]),t.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,c),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,c),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d=t.sx,f=t.sy,v=this.renderer.xscale.invert(d),m=this.renderer.yscale.invert(f),g=2*this.max_radius;\"data\"===this.model.properties.radius.units?(u=v-g,c=v+g,_=m-g,p=m+g):(s=d-g,a=d+g,e=this.renderer.xscale.r_invert(s,a),u=e[0],c=e[1],l=f-g,h=f+g,i=this.renderer.yscale.r_invert(l,h),_=i[0],p=i[1]);for(var y=[],b=P.validate_bbox_coords([u,c],[_,p]),x=0,w=this.index.indices(b);x<w.length;x++){var k=w[x],S=Math.pow(this.sradius[k],2);n=this.renderer.xscale.r_compute(v,this._x[k]),s=n[0],a=n[1],r=this.renderer.yscale.r_compute(m,this._y[k]),l=r[0],h=r[1],(o=Math.pow(s-a,2)+Math.pow(l-h,2))<=S&&y.push([k,o])}for(var C=this.model.properties.direction.value(),T=[],A=0,E=y;A<E.length;A++){var M=E[A],k=M[0],O=M[1],z=Math.atan2(f-this.sy[k],d-this.sx[k]);j.angle_between(-z,-this._start_angle[k],-this._end_angle[k],C)&&T.push([k,O])}return P.create_hit_test_result_from_hits(T)},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._scenterxy=function(t){var e=this.sradius[t]/2,i=(this._start_angle[t]+this._end_angle[t])/2;return{x:this.sx[t]+e*Math.cos(i),y:this.sy[t]+e*Math.sin(i)}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.WedgeView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Wedge\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({direction:[s.Direction,\"anticlock\"],radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Wedge=l).initClass()},function(t,e,i){var n=t(391),o=t(37),r=t(123),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x.length;e<i;e++){var n=this._x[e],r=this._y[e];!isNaN(n+r)&&isFinite(n+r)&&t.push({minX:n,minY:r,maxX:n,maxY:r,i:e})}return new o.SpatialIndex(t)},e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return this.sy[t]},e}(r.GlyphView);i.XYGlyphView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"XYGlyph\",this.coords([[\"x\",\"y\"]])},t}(r.Glyph);(i.XYGlyph=a).initClass()},function(t,e,i){var n=t(391),r=t(59),u=t(22),c=t(21),_=t(9),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GraphHitTestPolicy\"},t.prototype._hit_test_nodes=function(t,e){if(!e.model.visible)return null;var i=e.node_view.glyph.hit_test(t);return null==i?null:e.node_view.model.view.convert_selection_from_subset(i)},t.prototype._hit_test_edges=function(t,e){if(!e.model.visible)return null;var i=e.edge_view.glyph.hit_test(t);return null==i?null:e.edge_view.model.view.convert_selection_from_subset(i)},t}(r.Model),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NodesOnly\"},t.prototype.hit_test=function(t,e){return this._hit_test_nodes(t,e)},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.node_renderer.data_source.selected;return r.update(t,i,n),e.node_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.model.get_selection_manager().get_or_create_inspector(i.node_view.model);return o.update(t,n,r),i.node_view.model.data_source.setv({inspected:o},{silent:!0}),i.node_view.model.data_source.inspect.emit([i.node_view,{geometry:e}]),!o.is_empty()},t}(i.GraphHitTestPolicy=o);(i.NodesOnly=s).initClass();var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NodesAndLinkedEdges\"},t.prototype.hit_test=function(t,e){return this._hit_test_nodes(t,e)},t.prototype.get_linked_edges=function(e,t,i){var n=[];\"selection\"==i?n=e.selected.indices.map(function(t){return e.data.index[t]}):\"inspection\"==i&&(n=e.inspected.indices.map(function(t){return e.data.index[t]}));for(var r=[],o=0;o<t.data.start.length;o++)(c.contains(n,t.data.start[o])||c.contains(n,t.data.end[o]))&&r.push(o);for(var s=_.create_empty_hit_test_result(),a=0,l=r;a<l.length;a++){var o=l[a];s.multiline_indices[o]=[0]}return s.indices=r,s},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.node_renderer.data_source.selected;r.update(t,i,n);var o=e.edge_renderer.data_source.selected,s=this.get_linked_edges(e.node_renderer.data_source,e.edge_renderer.data_source,\"selection\");return o.update(s,i,n),e.node_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.node_view.model.data_source.selection_manager.get_or_create_inspector(i.node_view.model);o.update(t,n,r),i.node_view.model.data_source.setv({inspected:o},{silent:!0});var s=i.edge_view.model.data_source.selection_manager.get_or_create_inspector(i.edge_view.model),a=this.get_linked_edges(i.node_view.model.data_source,i.edge_view.model.data_source,\"inspection\");return s.update(a,n,r),i.edge_view.model.data_source.setv({inspected:s},{silent:!0}),i.node_view.model.data_source.inspect.emit([i.node_view,{geometry:e}]),!o.is_empty()},t}(o);(i.NodesAndLinkedEdges=a).initClass();var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EdgesAndLinkedNodes\"},t.prototype.hit_test=function(t,e){return this._hit_test_edges(t,e)},t.prototype.get_linked_nodes=function(e,t,i){var n=[];\"selection\"==i?n=t.selected.indices:\"inspection\"==i&&(n=t.inspected.indices);for(var r=[],o=0,s=n;o<s.length;o++){var a=s[o];r.push(t.data.start[a]),r.push(t.data.end[a])}var l=c.uniq(r).map(function(t){return u.indexOf(e.data.index,t)}),h=_.create_empty_hit_test_result();return h.indices=l,h},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.edge_renderer.data_source.selected;r.update(t,i,n);var o=e.node_renderer.data_source.selected,s=this.get_linked_nodes(e.node_renderer.data_source,e.edge_renderer.data_source,\"selection\");return o.update(s,i,n),e.edge_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.edge_view.model.data_source.selection_manager.get_or_create_inspector(i.edge_view.model);o.update(t,n,r),i.edge_view.model.data_source.setv({inspected:o},{silent:!0});var s=i.node_view.model.data_source.selection_manager.get_or_create_inspector(i.node_view.model),a=this.get_linked_nodes(i.node_view.model.data_source,i.edge_view.model.data_source,\"inspection\");return s.update(a,n,r),i.node_view.model.data_source.setv({inspected:s},{silent:!0}),i.edge_view.model.data_source.inspect.emit([i.edge_view,{geometry:e}]),!o.is_empty()},t}(o);(i.EdgesAndLinkedNodes=l).initClass()},function(t,e,i){var n=t(391);n.__exportStar(t(147),i),n.__exportStar(t(149),i),n.__exportStar(t(150),i)},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutProvider\"},t}(r.Model);(i.LayoutProvider=o).initClass()},function(t,e,i){var n=t(391),r=t(149),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"StaticLayoutProvider\",this.define({graph_layout:[o.Any,{}]})},t.prototype.get_node_coordinates=function(t){for(var e=[],i=[],n=t.data.index,r=0,o=n.length;r<o;r++){var s=this.graph_layout[n[r]],a=null!=s?s:[NaN,NaN],l=a[0],h=a[1];e.push(l),i.push(h)}return[e,i]},t.prototype.get_edge_coordinates=function(t){for(var e,i,n=[],r=[],o=t.data.start,s=t.data.end,a=null!=t.data.xs&&null!=t.data.ys,l=0,h=o.length;l<h;l++){var u=null!=this.graph_layout[o[l]]&&null!=this.graph_layout[s[l]];if(a&&u)n.push(t.data.xs[l]),r.push(t.data.ys[l]);else{var c=void 0,_=void 0;u?(e=[this.graph_layout[o[l]],this.graph_layout[s[l]]],_=e[0],c=e[1]):(_=(i=[[NaN,NaN],[NaN,NaN]])[0],c=i[1]),n.push([_[0],c[0]]),r.push([_[1],c[1]])}}return[n,r]},t}(r.LayoutProvider);(i.StaticLayoutProvider=s).initClass()},function(t,e,i){var n=t(391),h=t(79),r=t(187),o=t(15),u=t(44),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),Object.defineProperty(t.prototype,\"_x_range_name\",{get:function(){return this.model.x_range_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"_y_range_name\",{get:function(){return this.model.y_range_name},enumerable:!0,configurable:!0}),t.prototype.render=function(){if(this.model.visible){var t=this.plot_view.canvas_view.ctx;t.save(),this._draw_regions(t),this._draw_minor_grids(t),this._draw_grids(t),t.restore()}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.request_render()})},t.prototype._draw_regions=function(t){if(this.visuals.band_fill.doit){var e=this.model.grid_coords(\"major\",!1),i=e[0],n=e[1];this.visuals.band_fill.set_value(t);for(var r=0;r<i.length-1;r++)if(r%2==1){var o=this.plot_view.map_to_screen(i[r],n[r],this._x_range_name,this._y_range_name),s=o[0],a=o[1],l=this.plot_view.map_to_screen(i[r+1],n[r+1],this._x_range_name,this._y_range_name),h=l[0],u=l[1];t.fillRect(s[0],a[0],h[1]-s[0],u[1]-a[0]),t.fill()}}},t.prototype._draw_grids=function(t){if(this.visuals.grid_line.doit){var e=this.model.grid_coords(\"major\"),i=e[0],n=e[1];this._draw_grid_helper(t,this.visuals.grid_line,i,n)}},t.prototype._draw_minor_grids=function(t){if(this.visuals.minor_grid_line.doit){var e=this.model.grid_coords(\"minor\"),i=e[0],n=e[1];this._draw_grid_helper(t,this.visuals.minor_grid_line,i,n)}},t.prototype._draw_grid_helper=function(t,e,i,n){e.set_value(t);for(var r=0;r<i.length;r++){var o=this.plot_view.map_to_screen(i[r],n[r],this._x_range_name,this._y_range_name),s=o[0],a=o[1];t.beginPath(),t.moveTo(Math.round(s[0]),Math.round(a[0]));for(var l=1;l<s.length;l++)t.lineTo(Math.round(s[l]),Math.round(a[l]));t.stroke()}},t}(r.GuideRendererView);i.GridView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Grid\",this.prototype.default_view=s,this.mixins([\"line:grid_\",\"line:minor_grid_\",\"fill:band_\"]),this.define({bounds:[o.Any,\"auto\"],dimension:[o.Number,0],ticker:[o.Instance],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({level:\"underlay\",band_fill_color:null,band_fill_alpha:0,grid_line_color:\"#e5e5e5\",minor_grid_line_color:null})},t.prototype.ranges=function(){var t=this.dimension,e=(t+1)%2,i=this.plot.plot_canvas.frame,n=[i.x_ranges[this.x_range_name],i.y_ranges[this.y_range_name]];return[n[t],n[e]]},t.prototype.computed_bounds=function(){var t,e,i,n=this.ranges()[0],r=this.bounds,o=[n.min,n.max];if(u.isArray(r))e=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]),e<o[0]&&(e=o[0]),o[1]<i&&(i=o[1]);else{e=o[0],i=o[1];for(var s=0,a=this.plot.select(h.Axis);s<a.length;s++){var l=a[s];l.dimension==this.dimension&&l.x_range_name==this.x_range_name&&l.y_range_name==this.y_range_name&&(t=l.computed_bounds,e=t[0],i=t[1])}}return[e,i]},t.prototype.grid_coords=function(t,e){var i;void 0===e&&(e=!0);var n=this.dimension,r=(n+1)%2,o=this.ranges(),s=o[0],a=o[1],l=this.computed_bounds(),h=l[0],u=l[1];i=[Math.min(h,u),Math.max(h,u)],h=i[0],u=i[1];var c=this.ticker.get_ticks(h,u,s,a.min,{})[t],_=s.min,p=s.max,d=a.min,f=a.max,v=[[],[]];e||(c[0]!=_&&c.splice(0,0,_),c[c.length-1]!=p&&c.push(p));for(var m=0;m<c.length;m++)if(c[m]!=_&&c[m]!=p||!e){for(var g=[],y=[],b=0;b<2;b++){var x=d+(f-d)/1*b;g.push(c[m]),y.push(x)}v[n].push(g),v[r].push(y)}return v},t}(r.GuideRenderer);(i.Grid=a).initClass()},function(t,e,i){var n=t(151);i.Grid=n.Grid},function(t,e,i){var n=t(391);n.__exportStar(t(66),i),n.__exportStar(t(83),i),n.__exportStar(t(89),i),n.__exportStar(t(93),i),n.__exportStar(t(96),i),n.__exportStar(t(102),i),n.__exportStar(t(108),i),n.__exportStar(t(129),i),n.__exportStar(t(148),i),n.__exportStar(t(152),i),n.__exportStar(t(156),i),n.__exportStar(t(166),i),n.__exportStar(t(274),i),n.__exportStar(t(171),i),n.__exportStar(t(176),i),n.__exportStar(t(182),i),n.__exportStar(t(188),i),n.__exportStar(t(191),i),n.__exportStar(t(195),i),n.__exportStar(t(204),i),n.__exportStar(t(214),i),n.__exportStar(t(224),i),n.__exportStar(t(260),i)},function(t,e,i){var n=t(391),p=t(13),r=t(15),s=t(21),o=t(157),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.children.change,function(){return t.rebuild_child_views()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-grid\")},t.prototype.get_height=function(){var t=this.model.get_layoutable_children(),e=t.map(function(t){return t._height.value});return this.model._horizontal?s.max(e):s.sum(e)},t.prototype.get_width=function(){var t=this.model.get_layoutable_children(),e=t.map(function(t){return t._width.value});return this.model._horizontal?s.sum(e):s.max(e)},t}(o.LayoutDOMView);i.BoxView=a;var l=function(_){function w(t){return _.call(this,t)||this}return n.__extends(w,_),w.initClass=function(){this.prototype.type=\"Box\",this.prototype.default_view=a,this.define({children:[r.Array,[]]}),this.internal({spacing:[r.Number,6]})},w.prototype.initialize=function(){_.prototype.initialize.call(this),this._child_equal_size_width=new p.Variable(this.toString()+\".child_equal_size_width\"),this._child_equal_size_height=new p.Variable(this.toString()+\".child_equal_size_height\"),this._box_equal_size_top=new p.Variable(this.toString()+\".box_equal_size_top\"),this._box_equal_size_bottom=new p.Variable(this.toString()+\".box_equal_size_bottom\"),this._box_equal_size_left=new p.Variable(this.toString()+\".box_equal_size_left\"),this._box_equal_size_right=new p.Variable(this.toString()+\".box_equal_size_right\"),this._box_cell_align_top=new p.Variable(this.toString()+\".box_cell_align_top\"),this._box_cell_align_bottom=new p.Variable(this.toString()+\".box_cell_align_bottom\"),this._box_cell_align_left=new p.Variable(this.toString()+\".box_cell_align_left\"),this._box_cell_align_right=new p.Variable(this.toString()+\".box_cell_align_right\")},w.prototype.get_layoutable_children=function(){return this.children},w.prototype.get_constrained_variables=function(){return n.__assign({},_.prototype.get_constrained_variables.call(this),{box_equal_size_top:this._box_equal_size_top,box_equal_size_bottom:this._box_equal_size_bottom,box_equal_size_left:this._box_equal_size_left,box_equal_size_right:this._box_equal_size_right,box_cell_align_top:this._box_cell_align_top,box_cell_align_bottom:this._box_cell_align_bottom,box_cell_align_left:this._box_cell_align_left,box_cell_align_right:this._box_cell_align_right})},w.prototype.get_constraints=function(){var i=_.prototype.get_constraints.call(this),t=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];i.push.apply(i,t)},e=this.get_layoutable_children();if(0==e.length)return i;for(var n=0,r=e;n<r.length;n++){var o=r[n],s=o.get_constrained_variables(),a=this._child_rect(s);this._horizontal?null!=s.height&&t(p.EQ(a.height,[-1,this._height])):null!=s.width&&t(p.EQ(a.width,[-1,this._width])),this._horizontal?null!=s.box_equal_size_left&&null!=s.box_equal_size_right&&null!=s.width&&t(p.EQ([-1,s.box_equal_size_left],[-1,s.box_equal_size_right],s.width,this._child_equal_size_width)):null!=s.box_equal_size_top&&null!=s.box_equal_size_bottom&&null!=s.height&&t(p.EQ([-1,s.box_equal_size_top],[-1,s.box_equal_size_bottom],s.height,this._child_equal_size_height))}var l=this._info(e[0].get_constrained_variables());t(p.EQ(l.span.start,0));for(var h=1;h<e.length;h++){var u=this._info(e[h].get_constrained_variables());l.span.size&&t(p.EQ(l.span.start,l.span.size,[-1,u.span.start])),t(p.WEAK_EQ(l.whitespace.after,u.whitespace.before,0-this.spacing)),t(p.GE(l.whitespace.after,u.whitespace.before,0-this.spacing)),l=u}var c=e[e.length-1].get_constrained_variables();return this._horizontal?null!=c.width&&t(p.EQ(l.span.start,l.span.size,[-1,this._width])):null!=c.height&&t(p.EQ(l.span.start,l.span.size,[-1,this._height])),i=i.concat(this._align_outer_edges_constraints(!0),this._align_outer_edges_constraints(!1),this._align_inner_cell_edges_constraints(),this._box_equal_size_bounds(!0),this._box_equal_size_bounds(!1),this._box_cell_align_bounds(!0),this._box_cell_align_bounds(!1),this._box_whitespace(!0),this._box_whitespace(!1))},w.prototype._child_rect=function(t){return{x:t.origin_x,y:t.origin_y,width:t.width,height:t.height}},w.prototype._span=function(t){return this._horizontal?{start:t.x,size:t.width}:{start:t.y,size:t.height}},w.prototype._info=function(t){var e;e=this._horizontal?{before:t.whitespace_left,after:t.whitespace_right}:{before:t.whitespace_top,after:t.whitespace_bottom};var i=this._span(this._child_rect(t));return{span:i,whitespace:e}},w.prototype._flatten_cell_edge_variables=function(t){var e;e=t?w._top_bottom_inner_cell_edge_variables:w._left_right_inner_cell_edge_variables;for(var i=t!=this._horizontal,n=this.get_layoutable_children(),r=n.length,o={},s=0,a=0,l=n;a<l.length;a++){var h=l[a],u=void 0;u=h instanceof w?h._flatten_cell_edge_variables(t):{};for(var c=h.get_constrained_variables(),_=0,p=e;_<p.length;_++){var d=p[_];d in c&&(u[d]=[c[d]])}for(var f in u){var v=u[f],m=void 0;if(i){var g=f.split(\" \"),y=g[0],b=1<g.length?g[1]:\"\",x=this._horizontal?\"row\":\"col\";m=y+\" \"+x+\"-\"+r+\"-\"+s+\"-\"+b}else m=f;o[m]=m in o?o[m].concat(v):v}s++}return o},w.prototype._align_inner_cell_edges_constraints=function(){var t=[];if(null!=this.document&&s.includes(this.document.roots(),this)){var e=this._flatten_cell_edge_variables(this._horizontal);for(var i in e){var n=e[i];if(1<n.length)for(var r=n[0],o=1;o<n.length;o++)t.push(p.EQ(n[o],[-1,r]))}}return t},w.prototype._find_edge_leaves=function(t){var e=this.get_layoutable_children(),i=[[],[]];if(0<e.length)if(this._horizontal==t){var n=e[0],r=e[e.length-1];n instanceof w?i[0]=i[0].concat(n._find_edge_leaves(t)[0]):i[0].push(n),r instanceof w?i[1]=i[1].concat(r._find_edge_leaves(t)[1]):i[1].push(r)}else for(var o=0,s=e;o<s.length;o++){var a=s[o];if(a instanceof w){var l=a._find_edge_leaves(t);i[0]=i[0].concat(l[0]),i[1]=i[1].concat(l[1])}else i[0].push(a),i[1].push(a)}return i},w.prototype._align_outer_edges_constraints=function(t){var e,i,n=this._find_edge_leaves(t),r=n[0],o=n[1];t?(e=\"on_edge_align_left\",i=\"on_edge_align_right\"):(e=\"on_edge_align_top\",i=\"on_edge_align_bottom\");var s=function(t,e){for(var i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o.get_constrained_variables();e in s&&i.push(s[e])}return i},a=s(r,e),l=s(o,i),h=[],u=function(t){if(1<t.length)for(var e=t[0],i=1;i<t.length;i++){var n=t[i];h.push(p.EQ([-1,e],n))}};return u(a),u(l),h},w.prototype._box_insets_from_child_insets=function(t,e,i,a){var n,r,o,s,l=this._find_edge_leaves(t),h=l[0],u=l[1];t?(n=e+\"_left\",r=e+\"_right\",o=this[i+\"_left\"],s=this[i+\"_right\"]):(n=e+\"_top\",r=e+\"_bottom\",o=this[i+\"_top\"],s=this[i+\"_bottom\"]);var c=[],_=function(t,e,i){for(var n=0,r=e;n<r.length;n++){var o=r[n],s=o.get_constrained_variables();i in s&&(a?c.push(p.GE([-1,t],s[i])):c.push(p.EQ([-1,t],s[i])))}};return _(o,h,n),_(s,u,r),c},w.prototype._box_equal_size_bounds=function(t){return this._box_insets_from_child_insets(t,\"box_equal_size\",\"_box_equal_size\",!1)},w.prototype._box_cell_align_bounds=function(t){return this._box_insets_from_child_insets(t,\"box_cell_align\",\"_box_cell_align\",!1)},w.prototype._box_whitespace=function(t){return this._box_insets_from_child_insets(t,\"whitespace\",\"_whitespace\",!0)},w._left_right_inner_cell_edge_variables=[\"box_cell_align_left\",\"box_cell_align_right\"],w._top_bottom_inner_cell_edge_variables=[\"box_cell_align_top\",\"box_cell_align_bottom\"],w}(o.LayoutDOM);(i.Box=l).initClass()},function(t,e,i){var n=t(391),r=t(154),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-grid-column\")},e}(r.BoxView);i.ColumnView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e._horizontal=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Column\",this.prototype.default_view=o},t}(r.Box);(i.Column=s).initClass()},function(t,e,i){var n=t(154);i.Box=n.Box;var r=t(155);i.Column=r.Column;var o=t(157);i.LayoutDOM=o.LayoutDOM;var s=t(158);i.Row=s.Row;var a=t(159);i.Spacer=a.Spacer;var l=t(160);i.WidgetBox=l.WidgetBox},function(t,e,i){var n=t(391),r=t(59),g=t(5),o=t(15),s=t(11),h=t(13),a=t(4),l=t(6),u=function(i){function t(){var t=null!==i&&i.apply(this,arguments)||this;return t._solver_inited=!1,t._idle_notified=!1,t}return n.__extends(t,i),t.prototype.initialize=function(t){i.prototype.initialize.call(this,t),this.is_root&&(this._solver=new h.Solver),this.child_views={},this.build_child_views()},t.prototype.remove=function(){for(var t in this.child_views){var e=this.child_views[t];e.remove()}this.child_views={},i.prototype.remove.call(this)},t.prototype.has_finished=function(){if(!i.prototype.has_finished.call(this))return!1;for(var t in this.child_views){var e=this.child_views[t];if(!e.has_finished())return!1}return!0},t.prototype.notify_finished=function(){this.is_root?!this._idle_notified&&this.has_finished()&&null!=this.model.document&&(this._idle_notified=!0,this.model.document.notify_idle(this.model)):i.prototype.notify_finished.call(this)},t.prototype._calc_width_height=function(){for(var t=this.el;t=t.parentElement;)if(!t.classList.contains(\"bk-root\")){if(t==document.body){var e=g.margin(document.body),i=e.left,n=e.right,r=e.top,o=e.bottom,s=document.documentElement.clientWidth-i-n,a=document.documentElement.clientHeight-r-o;return[s,a]}var l=g.padding(t),h=l.left,u=l.right,c=l.top,_=l.bottom,p=t.getBoundingClientRect(),d=p.width,f=p.height,v=d-h-u,m=f-c-_;switch(this.model.sizing_mode){case\"scale_width\":if(0<v)return[v,0<m?m:null];break;case\"scale_height\":if(0<m)return[0<v?v:null,m];break;case\"scale_both\":case\"stretch_both\":if(0<v||0<m)return[0<v?v:null,0<m?m:null];break;default:throw new Error(\"unreachable\")}}return[null,null]},t.prototype._init_solver=function(){this._root_width=new h.Variable(this.toString()+\".root_width\"),this._root_height=new h.Variable(this.toString()+\".root_height\"),this._solver.add_edit_variable(this._root_width,NaN),this._solver.add_edit_variable(this._root_height,NaN);for(var t=this.model.get_all_editables(),e=0,i=t;e<i.length;e++){var n=i[e];this._solver.add_edit_variable(n,h.Strength.strong)}for(var r=this.model.get_all_constraints(),o=0,s=r;o<s.length;o++){var a=s[o];this._solver.add_constraint(a)}var l=this.model.get_constrained_variables();null!=l.width&&this._solver.add_constraint(h.EQ(l.width,this._root_width)),null!=l.height&&this._solver.add_constraint(h.EQ(l.height,this._root_height)),this._solver.update_variables(),this._solver_inited=!0},t.prototype._suggest_dims=function(t,e){var i,n=this.model.get_constrained_variables();null==n.width&&null==n.height||(null!=t&&null!=e||(i=this._calc_width_height(),t=i[0],e=i[1]),null!=n.width&&null!=t&&this._solver.suggest_value(this._root_width,t),null!=n.height&&null!=e&&this._solver.suggest_value(this._root_height,e),this._solver.update_variables())},t.prototype.resize=function(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this.is_root?this._do_layout(!1,t,e):this.root.resize(t,e)},t.prototype.partial_layout=function(){this.is_root?this._do_layout(!1):this.root.partial_layout()},t.prototype.layout=function(){this.is_root?this._do_layout(!0):this.root.layout()},t.prototype._do_layout=function(t,e,i){void 0===e&&(e=null),void 0===i&&(i=null),this._solver_inited&&!t||(this._solver.clear(),this._init_solver()),this._suggest_dims(e,i),this._layout(),this._layout(),this._layout(!0),this.notify_finished()},t.prototype._layout=function(t){void 0===t&&(t=!1);for(var e=0,i=this.model.get_layoutable_children();e<i.length;e++){var n=i[e],r=this.child_views[n.id];null!=r._layout&&r._layout(t)}this.render(),t&&(this._has_finished=!0)},t.prototype.rebuild_child_views=function(){this.solver.clear(),this.build_child_views(),this.layout()},t.prototype.build_child_views=function(){var t=this.model.get_layoutable_children();a.build_views(this.child_views,t,{parent:this}),g.empty(this.el);for(var e=0,i=t;e<i.length;e++){var n=i[e],r=this.child_views[n.id];this.el.appendChild(r.el)}},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.is_root&&window.addEventListener(\"resize\",this),this.connect(this.model.properties.sizing_mode.change,function(){return t.layout()})},t.prototype.handleEvent=function(){this.resize()},t.prototype.disconnect_signals=function(){window.removeEventListener(\"resize\",this),i.prototype.disconnect_signals.call(this)},t.prototype._render_classes=function(){this.el.className=\"\";for(var t=0,e=this.css_classes();t<e.length;t++){var i=e[t];this.el.classList.add(i)}this.el.classList.add(\"bk-layout-\"+this.model.sizing_mode);for(var n=0,r=this.model.css_classes;n<r.length;n++){var o=r[n];this.el.classList.add(o)}},t.prototype.render=function(){switch(this._render_classes(),this.model.sizing_mode){case\"fixed\":var t=void 0;t=null!=this.model.width?this.model.width:this.get_width(),this.model.setv({width:t},{silent:!0});var e=void 0;e=null!=this.model.height?this.model.height:this.get_height(),this.model.setv({height:e},{silent:!0}),this.solver.suggest_value(this.model._width,t),this.solver.suggest_value(this.model._height,e);break;case\"scale_width\":var e=this.get_height();this.solver.suggest_value(this.model._height,e);break;case\"scale_height\":var t=this.get_width();this.solver.suggest_value(this.model._width,t);break;case\"scale_both\":var i=this.get_width_height(),t=i[0],e=i[1];this.solver.suggest_value(this.model._width,t),this.solver.suggest_value(this.model._height,e)}this.solver.update_variables(),this.position()},t.prototype.position=function(){switch(this.model.sizing_mode){case\"fixed\":case\"scale_width\":case\"scale_height\":this.el.style.position=\"relative\",this.el.style.left=\"\",this.el.style.top=\"\";break;case\"scale_both\":case\"stretch_both\":this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\"}this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\"},t.prototype.get_width_height=function(){var t=this._calc_width_height(),e=t[0],i=t[1];if(null==e&&null==i)throw new Error(\"detached element\");var n=this.model.get_aspect_ratio();if(null!=e&&null==i)return[e,e/n];if(null==e&&null!=i)return[i*n,i];var r,o,s=e,a=e/n,l=i*n,h=i;return s<l?(r=s,o=a):(r=l,o=h),[r,o]},t}(l.DOMView);i.LayoutDOMView=u;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutDOM\",this.define({height:[o.Number],width:[o.Number],disabled:[o.Bool,!1],sizing_mode:[o.SizingMode,\"fixed\"],css_classes:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._width=new h.Variable(this.toString()+\".width\"),this._height=new h.Variable(this.toString()+\".height\"),this._left=new h.Variable(this.toString()+\".left\"),this._right=new h.Variable(this.toString()+\".right\"),this._top=new h.Variable(this.toString()+\".top\"),this._bottom=new h.Variable(this.toString()+\".bottom\"),this._dom_top=new h.Variable(this.toString()+\".dom_top\"),this._dom_left=new h.Variable(this.toString()+\".dom_left\"),this._width_minus_right=new h.Variable(this.toString()+\".width_minus_right\"),this._height_minus_bottom=new h.Variable(this.toString()+\".height_minus_bottom\"),this._whitespace_top=new h.Variable(this.toString()+\".whitespace_top\"),this._whitespace_bottom=new h.Variable(this.toString()+\".whitespace_bottom\"),this._whitespace_left=new h.Variable(this.toString()+\".whitespace_left\"),this._whitespace_right=new h.Variable(this.toString()+\".whitespace_right\")},Object.defineProperty(t.prototype,\"layout_bbox\",{get:function(){return{top:this._top.value,left:this._left.value,width:this._width.value,height:this._height.value,right:this._right.value,bottom:this._bottom.value,dom_top:this._dom_top.value,dom_left:this._dom_left.value}},enumerable:!0,configurable:!0}),t.prototype.dump_layout=function(){for(var t,e={},i=[this];t=i.shift();)i.push.apply(i,t.get_layoutable_children()),e[t.toString()]=t.layout_bbox;console.table(e)},t.prototype.get_all_constraints=function(){for(var t=this.get_constraints(),e=0,i=this.get_layoutable_children();e<i.length;e++){var n=i[e];t=n instanceof s.LayoutCanvas?t.concat(n.get_constraints()):t.concat(n.get_all_constraints())}return t},t.prototype.get_all_editables=function(){for(var t=this.get_editables(),e=0,i=this.get_layoutable_children();e<i.length;e++){var n=i[e];t=n instanceof s.LayoutCanvas?t.concat(n.get_editables()):t.concat(n.get_all_editables())}return t},t.prototype.get_constraints=function(){return[h.GE(this._dom_left),h.GE(this._dom_top),h.GE(this._left),h.GE(this._width,[-1,this._right]),h.GE(this._top),h.GE(this._height,[-1,this._bottom]),h.EQ(this._width_minus_right,[-1,this._width],this._right),h.EQ(this._height_minus_bottom,[-1,this._height],this._bottom)]},t.prototype.get_layoutable_children=function(){return[]},t.prototype.get_editables=function(){switch(this.sizing_mode){case\"fixed\":return[this._height,this._width];case\"scale_width\":return[this._height];case\"scale_height\":return[this._width];case\"scale_both\":return[this._width,this._height];default:return[]}},t.prototype.get_constrained_variables=function(){var t={origin_x:this._dom_left,origin_y:this._dom_top,whitespace_top:this._whitespace_top,whitespace_bottom:this._whitespace_bottom,whitespace_left:this._whitespace_left,whitespace_right:this._whitespace_right};switch(this.sizing_mode){case\"stretch_both\":t.width=this._width,t.height=this._height;break;case\"scale_width\":t.width=this._width;break;case\"scale_height\":t.height=this._height}return t},t.prototype.get_aspect_ratio=function(){return this.width/this.height},t}(r.Model);(i.LayoutDOM=c).initClass()},function(t,e,i){var n=t(391),r=t(154),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-grid-row\")},e}(r.BoxView);i.RowView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e._horizontal=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Row\",this.prototype.default_view=o},t}(r.Box);(i.Row=s).initClass()},function(t,e,i){var n=t(391),r=t(157),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),\"fixed\"==this.model.sizing_mode&&(this.el.style.width=this.model.width+\"px\",this.el.style.height=this.model.height+\"px\")},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-spacer-box\")},e.prototype.get_width=function(){return 1},e.prototype.get_height=function(){return 1},e}(r.LayoutDOMView);i.SpacerView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Spacer\",this.prototype.default_view=o},t.prototype.get_constrained_variables=function(){return n.__assign({},e.prototype.get_constrained_variables.call(this),{on_edge_align_top:this._top,on_edge_align_bottom:this._height_minus_bottom,on_edge_align_left:this._left,on_edge_align_right:this._width_minus_right,box_cell_align_top:this._top,box_cell_align_bottom:this._height_minus_bottom,box_cell_align_left:this._left,box_cell_align_right:this._width_minus_right,box_equal_size_top:this._top,box_equal_size_bottom:this._height_minus_bottom,box_equal_size_left:this._left,box_equal_size_right:this._width_minus_right})},t}(r.LayoutDOM);(i.Spacer=s).initClass()},function(t,e,i){var n=t(391),r=t(14),o=t(15),s=t(157),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.children.change,function(){return t.rebuild_child_views()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-widget-box\")},t.prototype.render=function(){if(this._render_classes(),\"fixed\"==this.model.sizing_mode||\"scale_height\"==this.model.sizing_mode){var t=this.get_width();this.model._width.value!=t&&this.solver.suggest_value(this.model._width,t)}if(\"fixed\"==this.model.sizing_mode||\"scale_width\"==this.model.sizing_mode){var e=this.get_height();this.model._height.value!=e&&this.solver.suggest_value(this.model._height,e)}if(this.solver.update_variables(),\"stretch_both\"==this.model.sizing_mode)this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\",this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\";else{var i=void 0;i=0<this.model._width.value-20?this.model._width.value-20+\"px\":\"100%\",this.el.style.width=i}},t.prototype.get_height=function(){var t=0;for(var e in this.child_views){var i=this.child_views[e],n=i.el,r=getComputedStyle(n),o=parseInt(r.marginTop)||0,s=parseInt(r.marginBottom)||0;t+=n.offsetHeight+o+s}return t+20},t.prototype.get_width=function(){if(null!=this.model.width)return this.model.width;var t=this.el.scrollWidth+20;for(var e in this.child_views){var i=this.child_views[e],n=i.el.scrollWidth;t<n&&(t=n)}return t},t}(s.LayoutDOMView);i.WidgetBoxView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"WidgetBox\",this.prototype.default_view=a,this.define({children:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),\"fixed\"==this.sizing_mode&&null==this.width&&(this.width=300,r.logger.info(\"WidgetBox mode is fixed, but no width specified. Using default of 300.\"))},t.prototype.get_constrained_variables=function(){var t=n.__assign({},e.prototype.get_constrained_variables.call(this),{on_edge_align_top:this._top,on_edge_align_bottom:this._height_minus_bottom,on_edge_align_left:this._left,on_edge_align_right:this._width_minus_right,box_cell_align_top:this._top,box_cell_align_bottom:this._height_minus_bottom,box_cell_align_left:this._left,box_cell_align_right:this._width_minus_right,box_equal_size_top:this._top,box_equal_size_bottom:this._height_minus_bottom});return\"fixed\"!=this.sizing_mode&&(t.box_equal_size_left=this._left,t.box_equal_size_right=this._width_minus_right),t},t.prototype.get_layoutable_children=function(){return this.children},t}(s.LayoutDOM);(i.WidgetBox=l).initClass()},function(t,e,i){var n=t(391),o=t(162),r=t(164),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalColorMapper\",this.define({factors:[s.Array],start:[s.Number,0],end:[s.Number]})},t.prototype._v_compute=function(t,e,i,n){var r=n.nan_color;o.cat_v_compute(t,this.factors,i,e,this.start,this.end,r)},t}(r.ColorMapper);(i.CategoricalColorMapper=a).initClass()},function(t,e,i){var _=t(21),p=t(44);function d(t,e){if(t.length!=e.length)return!1;for(var i=0,n=t.length;i<n;i++)if(t[i]!==e[i])return!1;return!0}i._cat_equals=d,i.cat_v_compute=function(o,s,a,l,h,u,c){for(var t=function(t,e){var i=o[t],n=void 0;p.isString(i)?n=s.indexOf(i):(null!=h?i=null!=u?i.slice(h,u):i.slice(h):null!=u&&(i=i.slice(0,u)),n=1==i.length?s.indexOf(i[0]):_.findIndex(s,function(t){return d(t,i)}));var r=void 0;r=n<0||n>=a.length?c:a[n],l[t]=r},e=0,i=o.length;e<i;e++)t(e,i)}},function(t,e,i){var n=t(391),r=t(162),o=t(169),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalMarkerMapper\",this.define({factors:[s.Array],markers:[s.Array],start:[s.Number,0],end:[s.Number],default_value:[s.String,\"circle\"]})},t.prototype.v_compute=function(t){var e=new Array(t.length);return r.cat_v_compute(t,this.factors,this.markers,e,this.start,this.end,this.default_value),e},t}(o.Mapper);(i.CategoricalMarkerMapper=a).initClass()},function(t,e,i){var n=t(391),r=t(169),o=t(15),s=t(27),a=t(28);function l(t){return\"#\"!=t[0]&&(t=s.color2hex(t)),9!=t.length&&(t+=\"ff\"),parseInt(t.slice(1),16)}function h(t){for(var e=new Uint32Array(t.length),i=0,n=t.length;i<n;i++)e[i]=l(t[i]);return e}function u(t){if(a.is_little_endian)for(var e=new DataView(t.buffer),i=0,n=t.length;i<n;i++)e.setUint32(4*i,t[i]);return new Uint8Array(t.buffer)}i._convert_color=l,i._convert_palette=h,i._uint32_to_rgba=u;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ColorMapper\",this.define({palette:[o.Any],nan_color:[o.Color,\"gray\"]})},t.prototype.v_compute=function(t){var e=new Array(t.length);return this._v_compute(t,e,this.palette,this._colors(function(t){return t})),e},Object.defineProperty(t.prototype,\"rgba_mapper\",{get:function(){var i=this,n=h(this.palette),r=this._colors(l);return{v_compute:function(t){var e=new Uint32Array(t.length);return i._v_compute(t,e,n,r),u(e)}}},enumerable:!0,configurable:!0}),t.prototype._colors=function(t){return{nan_color:t(this.nan_color)}},t}(r.Mapper);(i.ColorMapper=c).initClass()},function(t,e,i){var n=t(391),r=t(164),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousColorMapper\",this.define({high:[o.Number],low:[o.Number],high_color:[o.Color],low_color:[o.Color]})},t.prototype._colors=function(t){return n.__assign({},e.prototype._colors.call(this,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})},t}(r.ColorMapper);(i.ContinuousColorMapper=s).initClass()},function(t,e,i){var n=t(161);i.CategoricalColorMapper=n.CategoricalColorMapper;var r=t(163);i.CategoricalMarkerMapper=r.CategoricalMarkerMapper;var o=t(165);i.ContinuousColorMapper=o.ContinuousColorMapper;var s=t(164);i.ColorMapper=s.ColorMapper;var a=t(167);i.LinearColorMapper=a.LinearColorMapper;var l=t(168);i.LogColorMapper=l.LogColorMapper},function(t,e,i){var n=t(391),r=t(165),m=t(22),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearColorMapper\"},t.prototype._v_compute=function(t,e,i,n){for(var r=n.nan_color,o=n.low_color,s=n.high_color,a=null!=this.low?this.low:m.min(t),l=null!=this.high?this.high:m.max(t),h=i.length-1,u=1/(l-a),c=1/i.length,_=0,p=t.length;_<p;_++){var d=t[_];if(isNaN(d))e[_]=r;else if(d!=l){var f=(d-a)*u,v=Math.floor(f/c);e[_]=v<0?null!=o?o:i[0]:h<v?null!=s?s:i[h]:i[v]}else e[_]=i[h]}},t}(r.ContinuousColorMapper);(i.LinearColorMapper=o).initClass()},function(t,e,i){var n=t(391),r=t(165),m=t(22),g=null!=Math.log1p?Math.log1p:function(t){return Math.log(1+t)},o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogColorMapper\"},t.prototype._v_compute=function(t,e,i,n){for(var r=n.nan_color,o=n.low_color,s=n.high_color,a=i.length,l=null!=this.low?this.low:m.min(t),h=null!=this.high?this.high:m.max(t),u=a/(g(h)-g(l)),c=i.length-1,_=0,p=t.length;_<p;_++){var d=t[_];if(isNaN(d))e[_]=r;else if(h<d)e[_]=null!=s?s:i[c];else if(d!=h)if(d<l)e[_]=null!=o?o:i[0];else{var f=g(d)-g(l),v=Math.floor(f*u);c<v&&(v=c),e[_]=i[v]}else e[_]=i[c]}},t}(r.ContinuousColorMapper);(i.LogColorMapper=o).initClass()},function(t,e,i){var n=t(391),r=t(279),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Mapper\"},t.prototype.compute=function(t){throw new Error(\"mapping single values is not supported\")},t}(r.Transform);(i.Mapper=o).initClass()},function(t,e,i){var o=t(391),s=t(172),h=Math.sqrt(3);function a(t,e){t.moveTo(-e,e),t.lineTo(e,-e),t.moveTo(-e,-e),t.lineTo(e,e)}function l(t,e){t.moveTo(0,e),t.lineTo(0,-e),t.moveTo(-e,0),t.lineTo(e,0)}function u(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 c(t,e){var i=e*h,n=i/3;t.moveTo(-e,n),t.lineTo(e,n),t.lineTo(0,n-i),t.closePath()}function n(t,e,i,n,r){var o=.65*i;l(t,i),a(t,o),n.doit&&(n.set_vectorize(t,e),t.stroke())}function r(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function _(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function p(t,e,i,n,r){l(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function d(t,e,i,n,r){u(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function f(t,e,i,n,r){u(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function v(t,e,i,n,r){var o,s,a,l;l=h*(a=(s=i)/2),(o=t).moveTo(s,0),o.lineTo(a,-l),o.lineTo(-a,-l),o.lineTo(-s,0),o.lineTo(-a,l),o.lineTo(a,l),o.closePath(),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function m(t,e,i,n,r){t.rotate(Math.PI),c(t,i),t.rotate(-Math.PI),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function g(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function y(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function b(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function x(t,e,i,n,r){c(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function w(t,e,i,n,r){var o,s;s=i,(o=t).moveTo(-s,0),o.lineTo(s,0),n.doit&&(n.set_vectorize(t,e),t.stroke())}function k(t,e,i,n,r){a(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function S(i,n){var r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.initClass=function(){this.prototype._render_one=n},e}(s.MarkerView);r.initClass();var t=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.default_view=r,this.prototype.type=i},e}(s.Marker);return t.initClass(),t}i.Asterisk=S(\"Asterisk\",n),i.CircleCross=S(\"CircleCross\",r),i.CircleX=S(\"CircleX\",_),i.Cross=S(\"Cross\",p),i.Diamond=S(\"Diamond\",d),i.DiamondCross=S(\"DiamondCross\",f),i.Hex=S(\"Hex\",v),i.InvertedTriangle=S(\"InvertedTriangle\",m),i.Square=S(\"Square\",g),i.SquareCross=S(\"SquareCross\",y),i.SquareX=S(\"SquareX\",b),i.Triangle=S(\"Triangle\",x),i.Dash=S(\"Dash\",w),i.X=S(\"X\",k),i.marker_funcs={asterisk:n,circle:function(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())},circle_cross:r,circle_x:_,cross:p,diamond:d,diamond_cross:f,hex:v,inverted_triangle:m,square:g,square_cross:y,square_x:b,triangle:x,dash:w,x:k}},function(t,e,i){var n=t(391);n.__exportStar(t(170),i);var r=t(173);i.Scatter=r.Scatter},function(t,e,i){var n=t(391),r=t(146),w=t(9),o=t(15),h=t(21),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._size,s=i._angle,a=0,l=e;a<l.length;a++){var h=l[a];if(!isNaN(n[h]+r[h]+o[h]+s[h])){var u=o[h]/2;t.beginPath(),t.translate(n[h],r[h]),s[h]&&t.rotate(s[h]),this._render_one(t,h,u,this.visuals.line,this.visuals.fill),s[h]&&t.rotate(-s[h]),t.translate(-n[h],-r[h])}}},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.bbox.h_range,e=t.start-this.max_size,i=t.end+this.max_size,n=this.renderer.xscale.r_invert(e,i),r=n[0],o=n[1],s=this.renderer.plot_view.frame.bbox.v_range,a=s.start-this.max_size,l=s.end+this.max_size,h=this.renderer.yscale.r_invert(a,l),u=h[0],c=h[1],_=w.validate_bbox_coords([r,o],[u,c]);return this.index.indices(_)},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=e-this.max_size,r=e+this.max_size,o=this.renderer.xscale.r_invert(n,r),s=o[0],a=o[1],l=i-this.max_size,h=i+this.max_size,u=this.renderer.yscale.r_invert(l,h),c=u[0],_=u[1],p=w.validate_bbox_coords([s,a],[c,_]),d=this.index.indices(p),f=[],v=0,m=d;v<m.length;v++){var g=m[v],y=this._size[g]/2,b=Math.abs(this.sx[g]-e)+Math.abs(this.sy[g]-i);Math.abs(this.sx[g]-e)<=y&&Math.abs(this.sy[g]-i)<=y&&f.push([g,b])}return w.create_hit_test_result_from_hits(f)},e.prototype._hit_span=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.bounds(),u=h.minX,c=h.minY,_=h.maxX,p=h.maxY,d=w.create_empty_hit_test_result();if(\"h\"==t.direction){o=c,s=p;var f=this.max_size/2,v=a-f,m=a+f;e=this.renderer.xscale.r_invert(v,m),n=e[0],r=e[1]}else{n=u,r=_;var f=this.max_size/2,g=l-f,y=l+f;i=this.renderer.yscale.r_invert(g,y),o=i[0],s=i[1]}var b=w.validate_bbox_coords([n,r],[o,s]),x=this.index.indices(b);return d.indices=x,d},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=w.validate_bbox_coords([s,a],[h,u]),_=w.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype._hit_poly=function(t){for(var e=t.sx,i=t.sy,n=h.range(0,this.sx.length),r=[],o=0,s=n.length;o<s;o++){var a=n[o];w.point_in_poly(this.sx[o],this.sy[o],e,i)&&r.push(a)}var l=w.create_empty_hit_test_result();return l.indices=r,l},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.x1,o=e.y0,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+r)/2;var h=new Array(a);h[i]=(o+s)/2;var u=new Array(a);u[i]=.4*Math.min(Math.abs(r-n),Math.abs(s-o));var c=new Array(a);c[i]=0,this._render(t,[i],{sx:l,sy:h,_size:u,_angle:c})},e}(r.XYGlyphView);i.MarkerView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.mixins([\"line\",\"fill\"]),this.define({size:[o.DistanceSpec,{units:\"screen\",value:4}],angle:[o.AngleSpec,0]})},t}(r.XYGlyph);(i.Marker=a).initClass()},function(t,e,i){var n=t(391),r=t(172),_=t(170),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._size,s=i._angle,a=i._marker,l=0,h=e;l<h.length;l++){var u=h[l];if(!isNaN(n[u]+r[u]+o[u]+s[u])&&null!=a[u]){var c=o[u]/2;t.beginPath(),t.translate(n[u],r[u]),s[u]&&t.rotate(s[u]),_.marker_funcs[a[u]](t,u,c,this.visuals.line,this.visuals.fill),s[u]&&t.rotate(-s[u]),t.translate(-n[u],-r[u])}}},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.x1,o=e.y0,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+r)/2;var h=new Array(a);h[i]=(o+s)/2;var u=new Array(a);u[i]=.4*Math.min(Math.abs(r-n),Math.abs(s-o));var c=new Array(a);c[i]=0;var _=new Array(a);_[i]=this._marker[i],this._render(t,[i],{sx:l,sy:h,_size:u,_angle:c,_marker:_})},e}(r.MarkerView);i.ScatterView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Scatter\",this.prototype.default_view=s,this.define({marker:[o.MarkerSpec,{value:\"circle\"}]})},t}(r.Marker);(i.Scatter=a).initClass()},function(t,e,i){var n=t(391),r=t(14),o=t(175),s=t(177),a=t(15),l=t(59),h=t(184),u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MapOptions\",this.define({lat:[a.Number],lng:[a.Number],zoom:[a.Number,12]})},t}(l.Model);(i.MapOptions=u).initClass();var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapOptions\",this.define({map_type:[a.String,\"roadmap\"],scale_control:[a.Bool,!1],styles:[a.String],tilt:[a.Int,45]})},t}(u);(i.GMapOptions=c).initClass();var _=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(s.PlotView);i.GMapPlotView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapPlot\",this.prototype.default_view=_,this.define({map_options:[a.Instance],api_key:[a.String]}),this.override({x_range:function(){return new h.Range1d},y_range:function(){return new h.Range1d}})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.api_key||r.logger.error(\"api_key is required. See https://developers.google.com/maps/documentation/javascript/get-api-key for more information on how to obtain your own.\")},t.prototype._init_plot_canvas=function(){return new o.GMapPlotCanvas({plot:this})},t}(s.Plot);(i.GMapPlot=p).initClass()},function(t,e,i){var n=t(391),r=t(19),c=t(33),o=t(178),s=new r.Signal0({},\"gmaps_ready\"),a=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.initialize=function(t){var e=this;this.pause(),a.prototype.initialize.call(this,t),this._tiles_loaded=!1,this.zoom_count=0;var i=this.model.plot.map_options,n=i.zoom,r=i.lat,o=i.lng;this.initial_zoom=n,this.initial_lat=r,this.initial_lng=o,this.canvas_view.map_el.style.position=\"absolute\",\"undefined\"!=typeof google&&null!=google.maps||(\"undefined\"==typeof _bokeh_gmaps_callback&&function(t){_bokeh_gmaps_callback=function(){return s.emit()};var e=document.createElement(\"script\");e.type=\"text/javascript\",e.src=\"https://maps.googleapis.com/maps/api/js?key=\"+t+\"&callback=_bokeh_gmaps_callback\",document.body.appendChild(e)}(this.model.plot.api_key),s.connect(function(){return e.request_render()})),this.unpause()},t.prototype.update_range=function(t){if(null==t)this.map.setCenter({lat:this.initial_lat,lng:this.initial_lng}),this.map.setOptions({zoom:this.initial_zoom}),a.prototype.update_range.call(this,null);else if(null!=t.sdx||null!=t.sdy)this.map.panBy(t.sdx||0,t.sdy||0),a.prototype.update_range.call(this,t);else if(null!=t.factor){var e=void 0;if(10!==this.zoom_count)return void(this.zoom_count+=1);this.zoom_count=0,this.pause(),a.prototype.update_range.call(this,t),e=t.factor<0?-1:1;var i=this.map.getZoom(),n=i+e;if(2<=n){this.map.setZoom(n);var r=this._get_projected_bounds(),o=r[0],s=r[1];s-o<0&&this.map.setZoom(i)}this.unpause()}this._set_bokeh_ranges()},t.prototype._build_map=function(){var t=this,e=google.maps;this.map_types={satellite:e.MapTypeId.SATELLITE,terrain:e.MapTypeId.TERRAIN,roadmap:e.MapTypeId.ROADMAP,hybrid:e.MapTypeId.HYBRID};var i=this.model.plot.map_options,n={center:new e.LatLng(i.lat,i.lng),zoom:i.zoom,disableDefaultUI:!0,mapTypeId:this.map_types[i.map_type],scaleControl:i.scale_control,tilt:i.tilt};null!=i.styles&&(n.styles=JSON.parse(i.styles)),this.map=new e.Map(this.canvas_view.map_el,n),e.event.addListener(this.map,\"idle\",function(){return t._set_bokeh_ranges()}),e.event.addListener(this.map,\"bounds_changed\",function(){return t._set_bokeh_ranges()}),e.event.addListenerOnce(this.map,\"tilesloaded\",function(){return t._render_finished()}),this.connect(this.model.plot.properties.map_options.change,function(){return t._update_options()}),this.connect(this.model.plot.map_options.properties.styles.change,function(){return t._update_styles()}),this.connect(this.model.plot.map_options.properties.lat.change,function(){return t._update_center(\"lat\")}),this.connect(this.model.plot.map_options.properties.lng.change,function(){return t._update_center(\"lng\")}),this.connect(this.model.plot.map_options.properties.zoom.change,function(){return t._update_zoom()}),this.connect(this.model.plot.map_options.properties.map_type.change,function(){return t._update_map_type()}),this.connect(this.model.plot.map_options.properties.scale_control.change,function(){return t._update_scale_control()}),this.connect(this.model.plot.map_options.properties.tilt.change,function(){return t._update_tilt()})},t.prototype._render_finished=function(){this._tiles_loaded=!0,this.notify_finished()},t.prototype.has_finished=function(){return a.prototype.has_finished.call(this)&&!0===this._tiles_loaded},t.prototype._get_latlon_bounds=function(){var t=this.map.getBounds(),e=t.getNorthEast(),i=t.getSouthWest(),n=i.lng(),r=e.lng(),o=i.lat(),s=e.lat();return[n,r,o,s]},t.prototype._get_projected_bounds=function(){var t=this._get_latlon_bounds(),e=t[0],i=t[1],n=t[2],r=t[3],o=c.wgs84_mercator.forward([e,n]),s=o[0],a=o[1],l=c.wgs84_mercator.forward([i,r]),h=l[0],u=l[1];return[s,h,a,u]},t.prototype._set_bokeh_ranges=function(){var t=this._get_projected_bounds(),e=t[0],i=t[1],n=t[2],r=t[3];this.frame.x_range.setv({start:e,end:i}),this.frame.y_range.setv({start:n,end:r})},t.prototype._update_center=function(t){var e=this.map.getCenter().toJSON();e[t]=this.model.plot.map_options[t],this.map.setCenter(e),this._set_bokeh_ranges()},t.prototype._update_map_type=function(){this.map.setOptions({mapTypeId:this.map_types[this.model.plot.map_options.map_type]})},t.prototype._update_scale_control=function(){this.map.setOptions({scaleControl:this.model.plot.map_options.scale_control})},t.prototype._update_tilt=function(){this.map.setOptions({tilt:this.model.plot.map_options.tilt})},t.prototype._update_options=function(){this._update_styles(),this._update_center(\"lat\"),this._update_center(\"lng\"),this._update_zoom(),this._update_map_type()},t.prototype._update_styles=function(){this.map.setOptions({styles:JSON.parse(this.model.plot.map_options.styles)})},t.prototype._update_zoom=function(){this.map.setOptions({zoom:this.model.plot.map_options.zoom}),this._set_bokeh_ranges()},t.prototype._map_hook=function(t,e){var i=e[0],n=e[1],r=e[2],o=e[3];this.canvas_view.map_el.style.top=n+\"px\",this.canvas_view.map_el.style.left=i+\"px\",this.canvas_view.map_el.style.width=r+\"px\",this.canvas_view.map_el.style.height=o+\"px\",null==this.map&&\"undefined\"!=typeof google&&null!=google.maps&&this._build_map()},t.prototype._paint_empty=function(t,e){var i=this.canvas._width.value,n=this.canvas._height.value,r=e[0],o=e[1],s=e[2],a=e[3];t.clearRect(0,0,i,n),t.beginPath(),t.moveTo(0,0),t.lineTo(0,n),t.lineTo(i,n),t.lineTo(i,0),t.lineTo(0,0),t.moveTo(r,o),t.lineTo(r+s,o),t.lineTo(r+s,o+a),t.lineTo(r,o+a),t.lineTo(r,o),t.closePath(),t.fillStyle=this.model.plot.border_fill_color,t.fill()},t}(o.PlotCanvasView);i.GMapPlotCanvasView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapPlotCanvas\",this.prototype.default_view=a},t.prototype.initialize=function(){this.use_map=!0,e.prototype.initialize.call(this)},t}(o.PlotCanvas);(i.GMapPlotCanvas=l).initClass()},function(t,e,i){var n=t(174);i.MapOptions=n.MapOptions;var r=t(174);i.GMapOptions=r.GMapOptions;var o=t(174);i.GMapPlot=o.GMapPlot;var s=t(175);i.GMapPlotCanvas=s.GMapPlotCanvas;var a=t(177);i.Plot=a.Plot;var l=t(178);i.PlotCanvas=l.PlotCanvas},function(t,e,i){var o=t(391),n=t(13),r=t(14),s=t(15),f=t(19),a=t(21),v=t(32),m=t(44),l=t(157),h=t(75),u=t(192),c=t(268),_=t(76),p=t(178),g=t(200),y=t(185),b=t(3),x=t(180),w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.connect_signals=function(){t.prototype.connect_signals.call(this),this.connect(this.model.properties.title.change,function(){return r.logger.warn(\"Title object cannot be replaced. Try changing properties on title to update it after initialization.\")})},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-plot-layout\")},e.prototype.get_height=function(){return this.model._width.value/this.model.get_aspect_ratio()},e.prototype.get_width=function(){return this.model._height.value*this.model.get_aspect_ratio()},e.prototype.save=function(t){this.plot_canvas_view.save(t)},Object.defineProperty(e.prototype,\"plot_canvas_view\",{get:function(){return this.child_views[this.model.plot_canvas.id]},enumerable:!0,configurable:!0}),e}(l.LayoutDOMView);i.PlotView=w;var d=function(d){function t(t){return d.call(this,t)||this}return o.__extends(t,d),t.initClass=function(){this.prototype.type=\"Plot\",this.prototype.default_view=w,this.mixins([\"line:outline_\",\"fill:background_\",\"fill:border_\"]),this.define({toolbar:[s.Instance,function(){return new c.Toolbar}],toolbar_location:[s.Location,\"right\"],toolbar_sticky:[s.Boolean,!0],plot_width:[s.Number,600],plot_height:[s.Number,600],title:[s.Any,function(){return new h.Title({text:\"\"})}],title_location:[s.Location,\"above\"],h_symmetry:[s.Bool,!0],v_symmetry:[s.Bool,!1],above:[s.Array,[]],below:[s.Array,[]],left:[s.Array,[]],right:[s.Array,[]],renderers:[s.Array,[]],x_range:[s.Instance,function(){return new x.DataRange1d}],extra_x_ranges:[s.Any,{}],y_range:[s.Instance,function(){return new x.DataRange1d}],extra_y_ranges:[s.Any,{}],x_scale:[s.Instance,function(){return new u.LinearScale}],y_scale:[s.Instance,function(){return new u.LinearScale}],lod_factor:[s.Number,10],lod_interval:[s.Number,300],lod_threshold:[s.Number,2e3],lod_timeout:[s.Number,500],hidpi:[s.Bool,!0],output_backend:[s.OutputBackend,\"canvas\"],min_border:[s.Number,5],min_border_top:[s.Number,null],min_border_left:[s.Number,null],min_border_bottom:[s.Number,null],min_border_right:[s.Number,null],inner_width:[s.Number],inner_height:[s.Number],layout_width:[s.Number],layout_height:[s.Number],match_aspect:[s.Bool,!1],aspect_scale:[s.Number,1]}),this.override({outline_line_color:\"#e5e5e5\",border_fill_color:\"#ffffff\",background_fill_color:\"#ffffff\"}),b.register_with_event(b.UIEvent,this)},t.prototype.initialize=function(){d.prototype.initialize.call(this),this.reset=new f.Signal0(this,\"reset\");for(var t=0,e=v.values(this.extra_x_ranges).concat(this.x_range);t<e.length;t++){var i=e[t],n=i.plots;m.isArray(n)&&(n=n.concat(this),i.setv({plots:n},{silent:!0}))}for(var r=0,o=v.values(this.extra_y_ranges).concat(this.y_range);r<o.length;r++){var s=o[r],n=s.plots;m.isArray(n)&&(n=n.concat(this),s.setv({plots:n},{silent:!0}))}null!=this.min_border&&(null==this.min_border_top&&(this.min_border_top=this.min_border),null==this.min_border_bottom&&(this.min_border_bottom=this.min_border),null==this.min_border_left&&(this.min_border_left=this.min_border),null==this.min_border_right&&(this.min_border_right=this.min_border));for(var a=0,l=[\"above\",\"below\",\"left\",\"right\"];a<l.length;a++)for(var h=l[a],u=this.getv(h),c=0,_=u;c<_.length;c++){var p=_[c];p.add_panel(h)}this._init_title_panel(),this._init_toolbar_panel(),this._plot_canvas=this._init_plot_canvas(),this.plot_canvas.toolbar=this.toolbar,null==this.width&&(this.width=this.plot_width),null==this.height&&(this.height=this.plot_height)},t.prototype._init_plot_canvas=function(){return new p.PlotCanvas({plot:this})},t.prototype._init_title_panel=function(){if(null!=this.title){var t=m.isString(this.title)?new h.Title({text:this.title}):this.title;this.add_layout(t,this.title_location)}},t.prototype._init_toolbar_panel=function(){var e=this,t=a.find(this.renderers,function(t){return t instanceof _.ToolbarPanel&&a.includes(t.tags,e.id)});switch(null!=t&&this.remove_layout(t),this.toolbar_location){case\"left\":case\"right\":case\"above\":case\"below\":if(t=new _.ToolbarPanel({toolbar:this.toolbar,tags:[this.id]}),this.toolbar.toolbar_location=this.toolbar_location,this.toolbar_sticky){var i=this.getv(this.toolbar_location),n=a.find(i,function(t){return t instanceof h.Title});if(null!=n)return t.set_panel(n.panel),void this.add_renderers(t)}this.add_layout(t,this.toolbar_location)}},t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),this.connect(this.properties.toolbar_location.change,function(){return t._init_toolbar_panel()})},Object.defineProperty(t.prototype,\"plot_canvas\",{get:function(){return this._plot_canvas},enumerable:!0,configurable:!0}),t.prototype._doc_attached=function(){this.plot_canvas.attach_document(this.document),d.prototype._doc_attached.call(this)},t.prototype.add_renderers=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var i=this.renderers;i=i.concat(t),this.renderers=i},t.prototype.add_layout=function(t,e){if(void 0===e&&(e=\"center\"),null!=t.props.plot&&(t.plot=this),\"center\"!=e){var i=this.getv(e);i.push(t),t.add_panel(e)}this.add_renderers(t)},t.prototype.remove_layout=function(e){var t=function(t){a.removeBy(t,function(t){return t==e})};t(this.left),t(this.right),t(this.above),t(this.below),t(this.renderers)},t.prototype.add_glyph=function(t,e,i){void 0===e&&(e=new g.ColumnDataSource),void 0===i&&(i={});var n=o.__assign({},i,{data_source:e,glyph:t}),r=new y.GlyphRenderer(n);return this.add_renderers(r),r},t.prototype.add_tools=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var i=0,n=t;i<n.length;i++){var r=n[i];null!=r.overlay&&this.add_renderers(r.overlay)}this.toolbar.tools=this.toolbar.tools.concat(t)},t.prototype.get_layoutable_children=function(){return[this.plot_canvas]},t.prototype.get_constraints=function(){var t=d.prototype.get_constraints.call(this);return t.push(n.EQ(this._width,[-1,this.plot_canvas._width])),t.push(n.EQ(this._height,[-1,this.plot_canvas._height])),t},t.prototype.get_constrained_variables=function(){var t=o.__assign({},d.prototype.get_constrained_variables.call(this),{on_edge_align_top:this.plot_canvas._top,on_edge_align_bottom:this.plot_canvas._height_minus_bottom,on_edge_align_left:this.plot_canvas._left,on_edge_align_right:this.plot_canvas._width_minus_right,box_cell_align_top:this.plot_canvas._top,box_cell_align_bottom:this.plot_canvas._height_minus_bottom,box_cell_align_left:this.plot_canvas._left,box_cell_align_right:this.plot_canvas._width_minus_right,box_equal_size_top:this.plot_canvas._top,box_equal_size_bottom:this.plot_canvas._height_minus_bottom});return\"fixed\"!=this.sizing_mode&&(t.box_equal_size_left=this.plot_canvas._left,t.box_equal_size_right=this.plot_canvas._width_minus_right),t},Object.defineProperty(t.prototype,\"all_renderers\",{get:function(){for(var t=this.renderers,e=0,i=this.toolbar.tools;e<i.length;e++){var n=i[e];t=t.concat(n.synthetic_renderers)}return t},enumerable:!0,configurable:!0}),t}(l.LayoutDOM);(i.Plot=d).initClass()},function(t,e,i){var l=t(391),n=t(91),r=t(92),C=t(180),T=t(185),o=t(157),s=t(3),h=t(19),c=t(4),u=t(20),_=t(49),a=t(6),p=t(11),d=t(10),f=t(13),A=t(14),v=t(7),m=t(15),g=t(42),y=t(44),b=t(21),E=t(32),x=t(12),w=null,k=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return l.__extends(t,a),Object.defineProperty(t.prototype,\"frame\",{get:function(){return this.model.frame},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas\",{get:function(){return this.model.canvas},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas_overlays\",{get:function(){return this.canvas_view.overlays_el},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas_events\",{get:function(){return this.canvas_view.events_el},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_paused\",{get:function(){return null!=this._is_paused&&0!==this._is_paused},enumerable:!0,configurable:!0}),t.prototype.view_options=function(){return{plot_view:this,parent:this}},t.prototype.pause=function(){null==this._is_paused?this._is_paused=1:this._is_paused+=1},t.prototype.unpause=function(t){if(void 0===t&&(t=!1),null==this._is_paused)throw new Error(\"wasn't paused\");this._is_paused-=1,0!=this._is_paused||t||this.request_render()},t.prototype.request_render=function(){this.request_paint()},t.prototype.request_paint=function(){this.is_paused||this.throttled_paint()},t.prototype.reset=function(){this.clear_state(),this.reset_range(),this.reset_selection(),this.model.plot.trigger_event(new s.Reset)},t.prototype.remove=function(){this.ui_event_bus.destroy(),c.remove_views(this.renderer_views),c.remove_views(this.tool_views),this.canvas_view.remove(),a.prototype.remove.call(this)},t.prototype.css_classes=function(){return a.prototype.css_classes.call(this).concat(\"bk-plot-wrapper\")},t.prototype.initialize=function(t){var e=this;this.pause(),a.prototype.initialize.call(this,t),this.force_paint=new h.Signal0(this,\"force_paint\"),this.state_changed=new h.Signal0(this,\"state_changed\"),this.lod_started=!1,this.visuals=new _.Visuals(this.model.plot),this._initial_state_info={selection:{},dimensions:{width:this.model.canvas._width.value,height:this.model.canvas._height.value}},this.visibility_callbacks=[],this.state={history:[],index:-1},this.canvas_view=new this.canvas.default_view({model:this.canvas,parent:this}),this.el.appendChild(this.canvas_view.el),this.canvas_view.render(),\"webgl\"==this.model.plot.output_backend&&this.init_webgl(),this.throttled_paint=g.throttle(function(){return e.force_paint.emit()},15),this.ui_event_bus=new u.UIEvents(this,this.model.toolbar,this.canvas_view.events_el,this.model.plot),this.levels={};for(var i=0,n=v.RenderLevel;i<n.length;i++){var r=n[i];this.levels[r]={}}this.renderer_views={},this.tool_views={},this.build_levels(),this.build_tools(),this.update_dataranges(),this.unpause(!0),A.logger.debug(\"PlotView initialized\")},t.prototype.set_cursor=function(t){void 0===t&&(t=\"default\"),this.canvas_view.el.style.cursor=t},t.prototype.set_toolbar_visibility=function(e){void 0===e&&(e=!0),this.visibility_callbacks.forEach(function(t){return t(e)})},t.prototype.init_webgl=function(){if(null==w){var t=document.createElement(\"canvas\"),e={premultipliedAlpha:!0},i=t.getContext(\"webgl\",e)||t.getContext(\"experimental-webgl\",e);null!=i&&(w={canvas:t,ctx:i})}null!=w?this.gl=w:A.logger.warn(\"WebGL is not supported, falling back to 2D canvas.\")},t.prototype.prepare_webgl=function(t,e){if(null!=this.gl){var i=this.canvas_view.get_canvas_element();this.gl.canvas.width=i.width,this.gl.canvas.height=i.height;var n=this.gl.ctx;n.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height),n.clearColor(0,0,0,0),n.clear(n.COLOR_BUFFER_BIT||n.DEPTH_BUFFER_BIT),n.enable(n.SCISSOR_TEST);var r=e[0],o=e[1],s=e[2],a=e[3],l=this.model.canvas,h=l.xview,u=l.yview,c=h.compute(r),_=u.compute(o+a);n.scissor(t*c,t*_,t*s,t*a),n.enable(n.BLEND),n.blendFuncSeparate(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA,n.ONE_MINUS_DST_ALPHA,n.ONE)}},t.prototype.blit_webgl=function(t){var e=this.canvas_view.ctx;null!=this.gl&&(A.logger.debug(\"drawing with WebGL\"),e.restore(),e.drawImage(this.gl.canvas,0,0),e.save(),e.scale(t,t),e.translate(.5,.5))},t.prototype.update_dataranges=function(){for(var t=this.model.frame,e={},i={},n=!1,r=0,o=E.values(t.x_ranges).concat(E.values(t.y_ranges));r<o.length;r++){var s=o[r];s instanceof C.DataRange1d&&\"log\"==s.scale_hint&&(n=!0)}for(var a in this.renderer_views){var l=this.renderer_views[a];if(l instanceof T.GlyphRendererView){var h=l.glyph.bounds();if(null!=h&&(e[a]=h),n){var u=l.glyph.log_bounds();null!=u&&(i[a]=u)}}}var c,_=!1,p=!1;!1!==this.model.plot.match_aspect&&0!=this.frame._width.value&&0!=this.frame._height.value&&(c=1/this.model.plot.aspect_scale*(this.frame._width.value/this.frame._height.value));for(var d=0,f=E.values(t.x_ranges);d<f.length;d++){var v=f[d];if(v instanceof C.DataRange1d){var m=\"log\"==v.scale_hint?i:e;v.update(m,0,this.model.id,c),v.follow&&(_=!0)}null!=v.bounds&&(p=!0)}for(var g=0,y=E.values(t.y_ranges);g<y.length;g++){var b=y[g];if(b instanceof C.DataRange1d){var m=\"log\"==b.scale_hint?i:e;b.update(m,1,this.model.id,c),b.follow&&(_=!0)}null!=b.bounds&&(p=!0)}if(_&&p){A.logger.warn(\"Follow enabled so bounds are unset.\");for(var x=0,w=E.values(t.x_ranges);x<w.length;x++){var v=w[x];v.bounds=null}for(var k=0,S=E.values(t.y_ranges);k<S.length;k++){var b=S[k];b.bounds=null}}this.range_update_timestamp=Date.now()},t.prototype.map_to_screen=function(t,e,i,n){return void 0===i&&(i=\"default\"),void 0===n&&(n=\"default\"),this.frame.map_to_screen(t,e,i,n)},t.prototype.push_state=function(t,e){var i=this.state,n=i.history,r=i.index,o=null!=n[r]?n[r].info:{},s=l.__assign({},this._initial_state_info,o,e);this.state.history=this.state.history.slice(0,this.state.index+1),this.state.history.push({type:t,info:s}),this.state.index=this.state.history.length-1,this.state_changed.emit()},t.prototype.clear_state=function(){this.state={history:[],index:-1},this.state_changed.emit()},t.prototype.can_undo=function(){return 0<=this.state.index},t.prototype.can_redo=function(){return this.state.index<this.state.history.length-1},t.prototype.undo=function(){this.can_undo()&&(this.state.index-=1,this._do_state_change(this.state.index),this.state_changed.emit())},t.prototype.redo=function(){this.can_redo()&&(this.state.index+=1,this._do_state_change(this.state.index),this.state_changed.emit())},t.prototype._do_state_change=function(t){var e=null!=this.state.history[t]?this.state.history[t].info:this._initial_state_info;null!=e.range&&this.update_range(e.range),null!=e.selection&&this.update_selection(e.selection)},t.prototype.get_selection=function(){for(var t={},e=0,i=this.model.plot.renderers;e<i.length;e++){var n=i[e];if(n instanceof T.GlyphRenderer){var r=n.data_source.selected;t[n.id]=r}}return t},t.prototype.update_selection=function(t){for(var e=0,i=this.model.plot.renderers;e<i.length;e++){var n=i[e];if(n instanceof T.GlyphRenderer){var r=n.data_source;null!=t?null!=t[n.id]&&r.selected.update(t[n.id],!0,!1):r.selection_manager.clear()}}},t.prototype.reset_selection=function(){this.update_selection(null)},t.prototype._update_ranges_together=function(t){for(var e=1,i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[1];e=Math.min(e,this._get_weight_to_constrain_interval(o,s))}if(e<1)for(var a=0,l=t;a<l.length;a++){var h=l[a],o=h[0],s=h[1];s.start=e*s.start+(1-e)*o.start,s.end=e*s.end+(1-e)*o.end}},t.prototype._update_ranges_individually=function(t,e,i,n){for(var r=!1,o=0,s=t;o<s.length;o++){var a=s[o],l=a[0],h=a[1];if(!i){var u=this._get_weight_to_constrain_interval(l,h);u<1&&(h.start=u*h.start+(1-u)*l.start,h.end=u*h.end+(1-u)*l.end)}if(null!=l.bounds&&\"auto\"!=l.bounds){var c=l.bounds,_=c[0],p=c[1],d=Math.abs(h.end-h.start);l.is_reversed?(null!=_&&_>=h.end&&(r=!0,h.end=_,(e||i)&&(h.start=_+d)),null!=p&&p<=h.start&&(r=!0,h.start=p,(e||i)&&(h.end=p-d))):(null!=_&&_>=h.start&&(r=!0,h.start=_,(e||i)&&(h.end=_+d)),null!=p&&p<=h.end&&(r=!0,h.end=p,(e||i)&&(h.start=p-d)))}}if(!(i&&r&&n))for(var f=0,v=t;f<v.length;f++){var m=v[f],l=m[0],h=m[1];l.have_updated_interactively=!0,l.start==h.start&&l.end==h.end||l.setv(h)}},t.prototype._get_weight_to_constrain_interval=function(t,e){var i=t.min_interval,n=t.max_interval;if(null!=t.bounds&&\"auto\"!=t.bounds){var r=t.bounds,o=r[0],s=r[1];if(null!=o&&null!=s){var a=Math.abs(s-o);n=null!=n?Math.min(n,a):a}}var l=1;if(null!=i||null!=n){var h=Math.abs(t.end-t.start),u=Math.abs(e.end-e.start);0<i&&u<i&&(l=(h-i)/(h-u)),0<n&&n<u&&(l=(n-h)/(u-h)),l=Math.max(0,Math.min(1,l))}return l},t.prototype.update_range=function(t,e,i,n){void 0===e&&(e=!1),void 0===i&&(i=!1),void 0===n&&(n=!0),this.pause();var r=this.frame,o=r.x_ranges,s=r.y_ranges;if(null==t){for(var a in o){var l=o[a];l.reset()}for(var h in s){var l=s[h];l.reset()}this.update_dataranges()}else{var u=[];for(var c in o){var l=o[c];u.push([l,t.xrs[c]])}for(var _ in s){var l=s[_];u.push([l,t.yrs[_]])}i&&this._update_ranges_together(u),this._update_ranges_individually(u,e,i,n)}this.unpause()},t.prototype.reset_range=function(){this.update_range(null)},t.prototype.build_levels=function(){var t=this.model.plot.all_renderers,e=E.keys(this.renderer_views),i=c.build_views(this.renderer_views,t,this.view_options()),n=b.difference(e,t.map(function(t){return t.id}));for(var r in this.levels)for(var o=0,s=n;o<s.length;o++){var a=s[o];delete this.levels[r][a]}for(var l=0,h=i;l<h.length;l++){var u=h[l];this.levels[u.model.level][u.model.id]=u}},t.prototype.get_renderer_views=function(){var e=this;return this.model.plot.renderers.map(function(t){return e.levels[t.level][t.id]})},t.prototype.build_tools=function(){var e=this,t=this.model.plot.toolbar.tools,i=c.build_views(this.tool_views,t,this.view_options());i.map(function(t){return e.ui_event_bus.register_tool(t)})},t.prototype.connect_signals=function(){var t=this;a.prototype.connect_signals.call(this),this.connect(this.force_paint,function(){return t.repaint()});var e=this.model.frame,i=e.x_ranges,n=e.y_ranges;for(var r in i){var o=i[r];this.connect(o.change,function(){return t.request_render()})}for(var s in n){var o=n[s];this.connect(o.change,function(){return t.request_render()})}this.connect(this.model.plot.properties.renderers.change,function(){return t.build_levels()}),this.connect(this.model.plot.toolbar.properties.tools.change,function(){t.build_levels(),t.build_tools()}),this.connect(this.model.plot.change,function(){return t.request_render()}),this.connect(this.model.plot.reset,function(){return t.reset()})},t.prototype.set_initial_range=function(){var t=!0,e=this.frame,i=e.x_ranges,n=e.y_ranges,r={},o={};for(var s in i){var a=i[s],l=a.start,h=a.end;if(null==l||null==h||y.isStrictNaN(l+h)){t=!1;break}r[s]={start:l,end:h}}if(t)for(var u in n){var c=n[u],l=c.start,h=c.end;if(null==l||null==h||y.isStrictNaN(l+h)){t=!1;break}o[u]={start:l,end:h}}t?(this._initial_state_info.range={xrs:r,yrs:o},A.logger.debug(\"initial ranges set\")):A.logger.warn(\"could not set initial ranges\")},t.prototype.update_constraints=function(){for(var t in this.solver.suggest_value(this.frame._width,this.canvas._width.value),this.solver.suggest_value(this.frame._height,this.canvas._height.value),this.renderer_views){var e=this.renderer_views[t];x.isSizeableView(e)&&null!=e.model.panel&&x.update_panel_constraints(e)}this.solver.update_variables()},t.prototype._layout=function(t){void 0===t&&(t=!1),this.render(),t&&(this.model.plot.setv({inner_width:Math.round(this.frame._width.value),inner_height:Math.round(this.frame._height.value),layout_width:Math.round(this.canvas._width.value),layout_height:Math.round(this.canvas._height.value)},{no_change:!0}),this.paint())},t.prototype.has_finished=function(){if(!a.prototype.has_finished.call(this))return!1;for(var t in this.levels){var e=this.levels[t];for(var i in e){var n=e[i];if(!n.has_finished())return!1}}return!0},t.prototype.render=function(){var t=this.model._width.value,e=this.model._height.value;this.canvas_view.set_dims([t,e]),this.update_constraints(),!1!==this.model.plot.match_aspect&&0!=this.frame._width.value&&0!=this.frame._height.value&&this.update_dataranges(),this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\",this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\"},t.prototype._needs_layout=function(){for(var t in this.renderer_views){var e=this.renderer_views[t];if(x.isSizeableView(e)&&null!=e.model.panel&&x._view_sizes.get(e)!=e.get_size())return!0}return!1},t.prototype.repaint=function(){this._needs_layout()?this.parent.partial_layout():this.paint()},t.prototype.paint=function(){var t=this;if(!this.is_paused){A.logger.trace(\"PlotCanvas.render() for \"+this.model.id),this.canvas_view.prepare_canvas();var e=this.model.document;if(null!=e){var i=e.interactive_duration(),n=this.model.plot;0<=i&&i<n.lod_interval?setTimeout(function(){e.interactive_duration()>n.lod_timeout&&e.interactive_stop(n),t.request_render()},n.lod_timeout):e.interactive_stop(n)}for(var r in this.renderer_views){var o=this.renderer_views[r];if(null==this.range_update_timestamp||o instanceof T.GlyphRendererView&&o.set_data_timestamp>this.range_update_timestamp){this.update_dataranges();break}}this.model.frame.update_scales();var s=this.canvas_view.ctx,a=this.canvas.pixel_ratio;s.save(),s.scale(a,a),s.translate(.5,.5);var l=[this.frame._left.value,this.frame._top.value,this.frame._width.value,this.frame._height.value];if(this._map_hook(s,l),this._paint_empty(s,l),this.prepare_webgl(a,l),s.save(),this.visuals.outline_line.doit){this.visuals.outline_line.set_value(s);var h=l[0],u=l[1],c=l[2],_=l[3];h+c==this.canvas._width.value&&(c-=1),u+_==this.canvas._height.value&&(_-=1),s.strokeRect(h,u,c,_)}s.restore(),this._paint_levels(s,[\"image\",\"underlay\",\"glyph\"],l,!0),this.blit_webgl(a),this._paint_levels(s,[\"annotation\"],l,!0),this._paint_levels(s,[\"overlay\"],l,!1),null==this._initial_state_info.range&&this.set_initial_range(),s.restore(),this._has_finished||(this._has_finished=!0,this.notify_finished())}},t.prototype._paint_levels=function(t,e,i,n){t.save(),n&&(t.beginPath(),t.rect.apply(t,i),t.clip());for(var r={},o=0;o<this.model.plot.renderers.length;o++){var s=this.model.plot.renderers[o];r[s.id]=o}for(var a=function(t){return r[t.model.id]},l=0,h=e;l<h.length;l++)for(var u=h[l],c=b.sortBy(E.values(this.levels[u]),a),_=0,p=c;_<p.length;_++){var d=p[_];!n&&d.needs_clip&&(t.save(),t.beginPath(),t.rect.apply(t,i),t.clip()),d.render(),!n&&d.needs_clip&&t.restore()}t.restore()},t.prototype._map_hook=function(t,e){},t.prototype._paint_empty=function(t,e){var i=[0,0,this.canvas_view.model._width.value,this.canvas_view.model._height.value],n=i[0],r=i[1],o=i[2],s=i[3],a=e[0],l=e[1],h=e[2],u=e[3];t.clearRect(n,r,o,s),this.visuals.border_fill.doit&&(this.visuals.border_fill.set_value(t),t.fillRect(n,r,o,s),t.clearRect(a,l,h,u)),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(a,l,h,u))},t.prototype.save=function(t){switch(this.model.plot.output_backend){case\"canvas\":case\"webgl\":var e=this.canvas_view.get_canvas_element();if(null!=e.msToBlob){var i=e.msToBlob();window.navigator.msSaveBlob(i,t)}else{var n=document.createElement(\"a\");n.href=e.toDataURL(\"image/png\"),n.download=t+\".png\",n.target=\"_blank\",n.dispatchEvent(new MouseEvent(\"click\"))}break;case\"svg\":var r=this.canvas_view._ctx,o=r.getSerializedSvg(!0),s=new Blob([o],{type:\"text/plain\"}),a=document.createElement(\"a\");a.download=t+\".svg\",a.innerHTML=\"Download svg\",a.href=window.URL.createObjectURL(s),a.onclick=function(t){return document.body.removeChild(t.target)},a.style.display=\"none\",document.body.appendChild(a),a.click()}},t}(a.DOMView);i.PlotCanvasView=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"AbovePanel\"},e}(p.LayoutCanvas);(i.AbovePanel=S).initClass();var M=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"BelowPanel\"},e}(p.LayoutCanvas);(i.BelowPanel=M).initClass();var O=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"LeftPanel\"},e}(p.LayoutCanvas);(i.LeftPanel=O).initClass();var z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"RightPanel\"},e}(p.LayoutCanvas);(i.RightPanel=z).initClass();var P=function(e){function t(t){return e.call(this,t)||this}return l.__extends(t,e),t.initClass=function(){this.prototype.type=\"PlotCanvas\",this.prototype.default_view=k,this.internal({plot:[m.Instance],toolbar:[m.Instance],canvas:[m.Instance],frame:[m.Instance]}),this.override({sizing_mode:\"stretch_both\"})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.canvas=new n.Canvas({map:null!=this.use_map&&this.use_map,use_hidpi:this.plot.hidpi,output_backend:this.plot.output_backend}),this.frame=new r.CartesianFrame({x_range:this.plot.x_range,extra_x_ranges:this.plot.extra_x_ranges,x_scale:this.plot.x_scale,y_range:this.plot.y_range,extra_y_ranges:this.plot.extra_y_ranges,y_scale:this.plot.y_scale}),this.above_panel=new S,this.below_panel=new M,this.left_panel=new O,this.right_panel=new z,A.logger.debug(\"PlotCanvas initialized\")},t.prototype._doc_attached=function(){this.canvas.attach_document(this.document),this.frame.attach_document(this.document),this.above_panel.attach_document(this.document),this.below_panel.attach_document(this.document),this.left_panel.attach_document(this.document),this.right_panel.attach_document(this.document),e.prototype._doc_attached.call(this),A.logger.debug(\"PlotCanvas attached to document\")},t.prototype.get_layoutable_children=function(){var r=[this.above_panel,this.below_panel,this.left_panel,this.right_panel,this.canvas,this.frame],t=function(t){for(var e=0,i=t;e<i.length;e++){var n=i[e];x.isSizeable(n)&&null!=n.panel&&r.push(n.panel)}};return t(this.plot.above),t(this.plot.below),t(this.plot.left),t(this.plot.right),r},t.prototype.get_constraints=function(){return e.prototype.get_constraints.call(this).concat(this._get_constant_constraints(),this._get_side_constraints())},t.prototype._get_constant_constraints=function(){return[f.EQ(this.canvas._left,0),f.EQ(this.canvas._top,0),f.GE(this.above_panel._top,[-1,this.canvas._top]),f.EQ(this.above_panel._bottom,[-1,this.frame._top]),f.EQ(this.above_panel._left,[-1,this.left_panel._right]),f.EQ(this.above_panel._right,[-1,this.right_panel._left]),f.EQ(this.below_panel._top,[-1,this.frame._bottom]),f.LE(this.below_panel._bottom,[-1,this.canvas._bottom]),f.EQ(this.below_panel._left,[-1,this.left_panel._right]),f.EQ(this.below_panel._right,[-1,this.right_panel._left]),f.EQ(this.left_panel._top,[-1,this.above_panel._bottom]),f.EQ(this.left_panel._bottom,[-1,this.below_panel._top]),f.GE(this.left_panel._left,[-1,this.canvas._left]),f.EQ(this.left_panel._right,[-1,this.frame._left]),f.EQ(this.right_panel._top,[-1,this.above_panel._bottom]),f.EQ(this.right_panel._bottom,[-1,this.below_panel._top]),f.EQ(this.right_panel._left,[-1,this.frame._right]),f.LE(this.right_panel._right,[-1,this.canvas._right]),f.EQ(this._top,[-1,this.above_panel._bottom]),f.EQ(this._left,[-1,this.left_panel._right]),f.EQ(this._height,[-1,this._bottom],[-1,this.canvas._bottom],this.below_panel._top),f.EQ(this._width,[-1,this._right],[-1,this.canvas._right],this.right_panel._left),f.GE(this._top,-this.plot.min_border_top),f.GE(this._left,-this.plot.min_border_left),f.GE(this._height,[-1,this._bottom],-this.plot.min_border_bottom),f.GE(this._width,[-1,this._right],-this.plot.min_border_right)]},t.prototype._get_side_constraints=function(){var t=function(t){return t.map(function(t){return t.panel})},e=d.vstack(this.above_panel,t(this.plot.above)),i=d.vstack(this.below_panel,b.reversed(t(this.plot.below))),n=d.hstack(this.left_panel,t(this.plot.left)),r=d.hstack(this.right_panel,b.reversed(t(this.plot.right)));return b.concat([e,i,n,r])},t}(o.LayoutDOM);(i.PlotCanvas=P).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DataRange\",this.define({names:[o.Array,[]],renderers:[o.Array,[]]})},t}(r.Range);(i.DataRange=s).initClass()},function(t,e,i){var n=t(391),r=t(179),h=t(185),_=t(14),o=t(15),u=t(24),c=t(21),s=function(i){function t(t){var e=i.call(this,t)||this;return e._plot_bounds={},e.have_updated_interactively=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DataRange1d\",this.define({start:[o.Number],end:[o.Number],range_padding:[o.Number,.1],range_padding_units:[o.PaddingUnits,\"percent\"],flipped:[o.Bool,!1],follow:[o.StartEnd],follow_interval:[o.Number],default_span:[o.Number,2]}),this.internal({scale_hint:[o.String,\"auto\"]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),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},Object.defineProperty(t.prototype,\"min\",{get:function(){return Math.min(this.start,this.end)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return Math.max(this.start,this.end)},enumerable:!0,configurable:!0}),t.prototype.computed_renderers=function(){var e=this.names,t=this.renderers;if(0==t.length)for(var i=0,n=this.plots;i<n.length;i++){var r=n[i],o=r.renderers.filter(function(t){return t instanceof h.GlyphRenderer});t=t.concat(o)}0<e.length&&(t=t.filter(function(t){return c.includes(e,t.name)})),_.logger.debug(\"computed \"+t.length+\" renderers for DataRange1d \"+this.id);for(var s=0,a=t;s<a.length;s++){var l=a[s];_.logger.trace(\" - \"+l.type+\" \"+l.id)}return t},t.prototype._compute_plot_bounds=function(t,e){for(var i=u.empty(),n=0,r=t;n<r.length;n++){var o=r[n];null!=e[o.id]&&(i=u.union(i,e[o.id]))}return i},t.prototype.adjust_bounds_for_aspect=function(t,e){var i=u.empty(),n=t.maxX-t.minX;n<=0&&(n=1);var r=t.maxY-t.minY;r<=0&&(r=1);var o=.5*(t.maxX+t.minX),s=.5*(t.maxY+t.minY);return n<e*r?n=e*r:r=n/e,i.maxX=o+.5*n,i.minX=o-.5*n,i.maxY=s+.5*r,i.minY=s-.5*r,i},t.prototype._compute_min_max=function(t,e){var i,n,r,o,s=u.empty();for(var a in t){var l=t[a];s=u.union(s,l)}return 0==e?(i=[s.minX,s.maxX],r=i[0],o=i[1]):(n=[s.minY,s.maxY],r=n[0],o=n[1]),[r,o]},t.prototype._compute_range=function(t,e){var i,n,r,o=this.range_padding;if(\"log\"==this.scale_hint){(isNaN(t)||!isFinite(t)||t<=0)&&(t=isNaN(e)||!isFinite(e)||e<=0?.1:e/100,_.logger.warn(\"could not determine minimum data value for log axis, DataRange1d using value \"+t)),(isNaN(e)||!isFinite(e)||e<=0)&&(e=isNaN(t)||!isFinite(t)||t<=0?10:100*t,_.logger.warn(\"could not determine maximum data value for log axis, DataRange1d using value \"+e));var s=void 0,a=void 0;if(e==t)a=this.default_span+.001,s=Math.log(t)/Math.log(10);else{var l=void 0,h=void 0;\"percent\"==this.range_padding_units?(l=Math.log(t)/Math.log(10),h=Math.log(e)/Math.log(10),a=(h-l)*(1+o)):(l=Math.log(t-o)/Math.log(10),h=Math.log(e+o)/Math.log(10),a=h-l),s=(l+h)/2}n=Math.pow(10,s-a/2),r=Math.pow(10,s+a/2)}else{var a=void 0;a=e==t?this.default_span:\"percent\"==this.range_padding_units?(e-t)*(1+o):e-t+2*o;var s=(e+t)/2;n=s-a/2,r=s+a/2}var u=1;this.flipped&&(n=(i=[r,n])[0],r=i[1],u=-1);var c=this.follow_interval;return null!=c&&Math.abs(n-r)>c&&(\"start\"==this.follow?r=n+u*c:\"end\"==this.follow&&(n=r-u*c)),[n,r]},t.prototype.update=function(t,e,i,n){if(!this.have_updated_interactively){var r=this.computed_renderers(),o=this._compute_plot_bounds(r,t);null!=n&&(o=this.adjust_bounds_for_aspect(o,n)),this._plot_bounds[i]=o;var s=this._compute_min_max(this._plot_bounds,e),a=s[0],l=s[1],h=this._compute_range(a,l),u=h[0],c=h[1];null!=this._initial_start&&(\"log\"==this.scale_hint?0<this._initial_start&&(u=this._initial_start):u=this._initial_start),null!=this._initial_end&&(\"log\"==this.scale_hint?0<this._initial_end&&(c=this._initial_end):c=this._initial_end);var _=[this.start,this.end],p=_[0],d=_[1];if(u!=p||c!=d){var f={};u!=p&&(f.start=u),c!=d&&(f.end=c),this.setv(f)}\"auto\"==this.bounds&&this.setv({bounds:[u,c]},{silent:!0}),this.change.emit()}},t.prototype.reset=function(){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()},t}(r.DataRange);(i.DataRange1d=s).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=t(22),b=t(21),h=t(44);function m(t,e,i){void 0===i&&(i=0);for(var n={},r=0;r<t.length;r++){var o=t[r];if(o in n)throw new Error(\"duplicate factor or subfactor: \"+o);n[o]={value:.5+r*(1+e)+i}}return[n,(t.length-1)*e]}function x(t,s,a,e){void 0===e&&(e=0);for(var l={},h={},i=[],n=0,r=t;n<r.length;n++){var o=r[n],u=o[0],c=o[1];u in h||(h[u]=[],i.push(u)),h[u].push(c)}for(var _=e,p=0,d=function(t){var e=h[t].length,i=m(h[t],a,_),n=i[0],r=i[1];p+=r;var o=b.sum(h[t].map(function(t){return n[t].value}));l[t]={value:o/e,mapping:n},_+=e+s+r},f=0,v=i;f<v.length;f++){var u=v[f];d(u)}return[l,i,(i.length-1)*s+p]}function u(t,u,c,_,e){void 0===e&&(e=0);for(var p={},d={},i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o[0],a=o[1],l=o[2];s in d||(d[s]=[],i.push(s)),d[s].push([a,l])}for(var f=[],v=e,m=0,h=function(t){for(var e=d[t].length,i=x(d[t],c,_,v),n=i[0],r=i[1],o=i[2],s=0,a=r;s<a.length;s++){var l=a[s];f.push([t,l])}m+=o;var h=b.sum(d[t].map(function(t){var e=t[0];return n[e].value}));p[t]={value:h/e,mapping:n},v+=e+u+o},g=0,y=i;g<y.length;g++){var s=y[g];h(s)}return[p,i,f,(i.length-1)*u+m]}i.map_one_level=m,i.map_two_levels=x,i.map_three_levels=u;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"FactorRange\",this.define({factors:[o.Array,[]],factor_padding:[o.Number,0],subgroup_padding:[o.Number,.8],group_padding:[o.Number,1.4],range_padding:[o.Number,0],range_padding_units:[o.PaddingUnits,\"percent\"],start:[o.Number],end:[o.Number]}),this.internal({levels:[o.Number],mids:[o.Array],tops:[o.Array],tops_groups:[o.Array]})},Object.defineProperty(t.prototype,\"min\",{get:function(){return this.start},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return this.end},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init(!0)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.factors.change,function(){return t.reset()}),this.connect(this.properties.factor_padding.change,function(){return t.reset()}),this.connect(this.properties.group_padding.change,function(){return t.reset()}),this.connect(this.properties.subgroup_padding.change,function(){return t.reset()}),this.connect(this.properties.range_padding.change,function(){return t.reset()}),this.connect(this.properties.range_padding_units.change,function(){return t.reset()})},t.prototype.reset=function(){this._init(!1),this.change.emit()},t.prototype._lookup=function(t){if(1==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])?e[t[0]].value:NaN}if(2==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])&&e[t[0]].mapping.hasOwnProperty(t[1])?e[t[0]].mapping[t[1]].value:NaN}if(3==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])&&e[t[0]].mapping.hasOwnProperty(t[1])&&e[t[0]].mapping[t[1]].mapping.hasOwnProperty(t[2])?e[t[0]].mapping[t[1]].mapping[t[2]].value:NaN}throw new Error(\"unreachable code\")},t.prototype.synthetic=function(t){if(h.isNumber(t))return t;if(h.isString(t))return this._lookup([t]);var e=0,i=t[t.length-1];return h.isNumber(i)&&(e=i,t=t.slice(0,-1)),this._lookup(t)+e},t.prototype.v_synthetic=function(t){var e=this;return s.map(t,function(t){return e.synthetic(t)})},t.prototype._init=function(t){var e,i,n,r,o;if(b.all(this.factors,h.isString))r=1,e=m(this.factors,this.factor_padding),this._mapping=e[0],o=e[1];else if(b.all(this.factors,function(t){return h.isArray(t)&&2==t.length&&h.isString(t[0])&&h.isString(t[1])}))r=2,i=x(this.factors,this.group_padding,this.factor_padding),this._mapping=i[0],this.tops=i[1],o=i[2];else{if(!b.all(this.factors,function(t){return h.isArray(t)&&3==t.length&&h.isString(t[0])&&h.isString(t[1])&&h.isString(t[2])}))throw new Error(\"???\");r=3,n=u(this.factors,this.group_padding,this.subgroup_padding,this.factor_padding),this._mapping=n[0],this.tops=n[1],this.mids=n[2],o=n[3]}var s=0,a=this.factors.length+o;if(\"percent\"==this.range_padding_units){var l=(a-s)*this.range_padding/2;s-=l,a+=l}else s-=this.range_padding,a+=this.range_padding;this.setv({start:s,end:a,levels:r},{silent:t}),\"auto\"==this.bounds&&this.setv({bounds:[s,a]},{silent:!0})},t}(r.Range);(i.FactorRange=a).initClass()},function(t,e,i){var n=t(179);i.DataRange=n.DataRange;var r=t(180);i.DataRange1d=r.DataRange1d;var o=t(181);i.FactorRange=o.FactorRange;var s=t(183);i.Range=s.Range;var a=t(184);i.Range1d=a.Range1d},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=function(i){function t(t){var e=i.call(this,t)||this;return e.have_updated_interactively=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Range\",this.define({callback:[o.Any],bounds:[o.Any],min_interval:[o.Any],max_interval:[o.Any]}),this.internal({plots:[o.Array,[]]})},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._emit_callback()})},t.prototype.reset=function(){this.change.emit()},t.prototype._emit_callback=function(){null!=this.callback&&(s.isFunction(this.callback)?this.callback(this):this.callback.execute(this,{}))},Object.defineProperty(t.prototype,\"is_reversed\",{get:function(){return this.start>this.end},enumerable:!0,configurable:!0}),t}(r.Model);(i.Range=a).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Range1d\",this.define({start:[o.Number,0],end:[o.Number,1],reset_start:[o.Number],reset_end:[o.Number]})},t.prototype._set_auto_bounds=function(){if(\"auto\"==this.bounds){var 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})}},t.prototype.initialize=function(){e.prototype.initialize.call(this),null==this.reset_start&&(this.reset_start=this.start),null==this.reset_end&&(this.reset_end=this.end),this._set_auto_bounds()},Object.defineProperty(t.prototype,\"min\",{get:function(){return Math.min(this.start,this.end)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return Math.max(this.start,this.end)},enumerable:!0,configurable:!0}),t.prototype.reset=function(){this._set_auto_bounds(),this.start!=this.reset_start||this.end!=this.reset_end?this.setv({start:this.reset_start,end:this.reset_end}):this.change.emit()},t}(r.Range);(i.Range1d=s).initClass()},function(t,e,i){var n=t(391),r=t(189),P=t(130),o=t(199),j=t(14),s=t(15),a=t(22),N=t(21),_=t(32),l=t(181),p={fill:{},line:{}},d={fill:{fill_alpha:.3,fill_color:\"grey\"},line:{line_alpha:.3,line_color:\"grey\"}},f={fill:{fill_alpha:.2},line:{}},h=function(c){function t(){return null!==c&&c.apply(this,arguments)||this}return n.__extends(t,c),t.prototype.initialize=function(t){c.prototype.initialize.call(this,t);var i=this.model.glyph,n=N.includes(i.mixins,\"fill\"),r=N.includes(i.mixins,\"line\"),o=_.clone(i.attributes);function e(t){var e=_.clone(o);return n&&_.extend(e,t.fill),r&&_.extend(e,t.line),new i.constructor(e)}delete o.id,this.glyph=this.build_glyph_view(i);var s=this.model.selection_glyph;null==s?s=e({fill:{},line:{}}):\"auto\"===s&&(s=e(p)),this.selection_glyph=this.build_glyph_view(s);var a=this.model.nonselection_glyph;null==a?a=e({fill:{},line:{}}):\"auto\"===a&&(a=e(f)),this.nonselection_glyph=this.build_glyph_view(a);var l=this.model.hover_glyph;null!=l&&(this.hover_glyph=this.build_glyph_view(l));var h=this.model.muted_glyph;null!=h&&(this.muted_glyph=this.build_glyph_view(h));var u=e(d);this.decimated_glyph=this.build_glyph_view(u),this.xscale=this.plot_view.frame.xscales[this.model.x_range_name],this.yscale=this.plot_view.frame.yscales[this.model.y_range_name],this.set_data(!1)},t.prototype.build_glyph_view=function(t){return new t.default_view({model:t,renderer:this,plot_view:this.plot_view,parent:this})},t.prototype.connect_signals=function(){var e=this;c.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.request_render()}),this.connect(this.model.glyph.change,function(){return e.set_data()}),this.connect(this.model.data_source.change,function(){return e.set_data()}),this.connect(this.model.data_source.streaming,function(){return e.set_data()}),this.connect(this.model.data_source.patching,function(t){return e.set_data(!0,t)}),this.connect(this.model.data_source.selected.change,function(){return e.request_render()}),this.connect(this.model.data_source._select,function(){return e.request_render()}),null!=this.hover_glyph&&this.connect(this.model.data_source.inspect,function(){return e.request_render()}),this.connect(this.model.properties.view.change,function(){return e.set_data()}),this.connect(this.model.view.change,function(){return e.set_data()});var t=this.plot_model.frame,i=t.x_ranges,n=t.y_ranges;for(var r in i){var o=i[r];o instanceof l.FactorRange&&this.connect(o.change,function(){return e.set_data()})}for(var s in n){var o=n[s];o instanceof l.FactorRange&&this.connect(o.change,function(){return e.set_data()})}this.connect(this.model.glyph.transformchange,function(){return e.set_data()})},t.prototype.have_selection_glyphs=function(){return null!=this.selection_glyph&&null!=this.nonselection_glyph},t.prototype.set_data=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=null);var i=Date.now(),n=this.model.data_source;this.all_indices=this.model.view.indices,this.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0}),this.glyph.set_data(n,this.all_indices,e),this.glyph.set_visuals(n),this.decimated_glyph.set_visuals(n),this.have_selection_glyphs()&&(this.selection_glyph.set_visuals(n),this.nonselection_glyph.set_visuals(n)),null!=this.hover_glyph&&this.hover_glyph.set_visuals(n),null!=this.muted_glyph&&this.muted_glyph.set_visuals(n);var r=this.plot_model.plot.lod_factor;this.decimated=[];for(var o=0,s=Math.floor(this.all_indices.length/r);o<s;o++)this.decimated.push(o*r);var a=Date.now()-i;j.logger.debug(this.glyph.model.type+\" GlyphRenderer (\"+this.model.id+\"): set_data finished in \"+a+\"ms\"),this.set_data_timestamp=Date.now(),t&&this.request_render()},t.prototype.render=function(){var r=this;if(this.model.visible){var t=Date.now(),e=this.glyph.glglyph;this.glyph.map_data();var i=Date.now()-t,n=Date.now(),o=this.glyph.mask_data(this.all_indices);o.length===this.all_indices.length&&(o=N.range(0,this.all_indices.length));var s=Date.now()-n,a=this.plot_view.canvas_view.ctx;a.save();var l,h=this.model.data_source.selected;l=!h||h.is_empty()?[]:this.glyph instanceof P.LineView&&h.selected_glyph===this.glyph.model?this.model.view.convert_indices_from_subset(o):h.indices;var u,c=this.model.data_source.inspected;u=c&&0!==c.length?c[\"0d\"].glyph?this.model.view.convert_indices_from_subset(o):0<c[\"1d\"].indices.length?c[\"1d\"].indices:function(){for(var t=[],e=0,i=Object.keys(c[\"2d\"].indices);e<i.length;e++){var n=i[e];t.push(parseInt(n))}return t}():[];var _,p,d,f=function(){for(var t=[],e=0,i=o;e<i.length;e++){var n=i[e];N.includes(u,r.all_indices[n])&&t.push(n)}return t}(),v=this.plot_model.plot.lod_threshold;null!=this.model.document&&0<this.model.document.interactive_duration()&&!e&&null!=v&&this.all_indices.length>v?(o=this.decimated,_=this.decimated_glyph,p=this.decimated_glyph):(_=this.model.muted&&null!=this.muted_glyph?this.muted_glyph:this.glyph,p=this.nonselection_glyph),d=this.selection_glyph,null!=this.hover_glyph&&f.length&&(o=N.difference(o,f));var m,g=null;if(l.length&&this.have_selection_glyphs()){for(var y=Date.now(),b={},x=0,w=l;x<w.length;x++){var k=w[x];b[k]=!0}var S=new Array,C=new Array;if(this.glyph instanceof P.LineView)for(var T=0,A=this.all_indices;T<A.length;T++){var k=A[T];null!=b[k]?S.push(k):C.push(k)}else for(var E=0,M=o;E<M.length;E++){var k=M[E];null!=b[this.all_indices[k]]?S.push(k):C.push(k)}g=Date.now()-y,m=Date.now(),p.render(a,C,this.glyph),d.render(a,S,this.glyph),null!=this.hover_glyph&&(this.glyph instanceof P.LineView?this.hover_glyph.render(a,this.model.view.convert_indices_from_subset(f),this.glyph):this.hover_glyph.render(a,f,this.glyph))}else m=Date.now(),this.glyph instanceof P.LineView?this.hover_glyph&&f.length?this.hover_glyph.render(a,this.model.view.convert_indices_from_subset(f),this.glyph):_.render(a,this.all_indices,this.glyph):(_.render(a,o,this.glyph),this.hover_glyph&&f.length&&this.hover_glyph.render(a,f,this.glyph));var O=Date.now()-m;this.last_dtrender=O;var z=Date.now()-t;return j.logger.debug(this.glyph.model.type+\" GlyphRenderer (\"+this.model.id+\"): render finished in \"+z+\"ms\"),j.logger.trace(\" - map_data finished in       : \"+i+\"ms\"),j.logger.trace(\" - mask_data finished in      : \"+s+\"ms\"),null!=g&&j.logger.trace(\" - selection mask finished in : \"+g+\"ms\"),j.logger.trace(\" - glyph renders finished in  : \"+O+\"ms\"),a.restore()}},t.prototype.draw_legend=function(t,e,i,n,r,o,s,a){null==a&&(a=this.model.get_reference_point(o,s)),this.glyph.draw_legend_for_index(t,{x0:e,x1:i,y0:n,y1:r},a)},t.prototype.hit_test=function(t){if(!this.model.visible)return null;var e=this.glyph.hit_test(t);return null==e?null:this.model.view.convert_selection_from_subset(e)},t}(r.RendererView);i.GlyphRendererView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GlyphRenderer\",this.prototype.default_view=h,this.define({x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],data_source:[s.Instance],view:[s.Instance,function(){return new o.CDSView}],glyph:[s.Instance],hover_glyph:[s.Instance],nonselection_glyph:[s.Any,\"auto\"],selection_glyph:[s.Any,\"auto\"],muted_glyph:[s.Instance],muted:[s.Bool,!1]}),this.override({level:\"glyph\"})},t.prototype.initialize=function(){e.prototype.initialize.call(this),null==this.view.source&&(this.view.source=this.data_source,this.view.compute_indices())},t.prototype.get_reference_point=function(t,e){var i=0;if(null!=t){var n=this.data_source.get_column(t);if(null!=n){var r=a.indexOf(n,e);-1!=r&&(i=r)}}return i},t.prototype.get_selection_manager=function(){return this.data_source.selection_manager},t}(r.Renderer);(i.GlyphRenderer=u).initClass()},function(t,e,i){var n=t(391),r=t(189),o=t(147),s=t(15),l=t(4),a=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.initialize=function(t){var e;a.prototype.initialize.call(this,t),this.xscale=this.plot_view.frame.xscales.default,this.yscale=this.plot_view.frame.yscales.default,this._renderer_views={},e=l.build_views(this._renderer_views,[this.model.node_renderer,this.model.edge_renderer],this.plot_view.view_options()),this.node_view=e[0],this.edge_view=e[1],this.set_data()},t.prototype.connect_signals=function(){var t=this;a.prototype.connect_signals.call(this),this.connect(this.model.layout_provider.change,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source._select,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source.inspect,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source.change,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source._select,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source.inspect,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source.change,function(){return t.set_data()});var e=this.plot_model.frame,i=e.x_ranges,n=e.y_ranges;for(var r in i){var o=i[r];this.connect(o.change,function(){return t.set_data()})}for(var s in n){var o=n[s];this.connect(o.change,function(){return t.set_data()})}},t.prototype.set_data=function(t){var e,i;void 0===t&&(t=!0),this.node_view.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0}),this.edge_view.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0});var n=this.node_view.glyph;e=this.model.layout_provider.get_node_coordinates(this.model.node_renderer.data_source),n._x=e[0],n._y=e[1];var r=this.edge_view.glyph;i=this.model.layout_provider.get_edge_coordinates(this.model.edge_renderer.data_source),r._xs=i[0],r._ys=i[1],n.index_data(),r.index_data(),t&&this.request_render()},t.prototype.render=function(){this.edge_view.render(),this.node_view.render()},t}(r.RendererView);i.GraphRendererView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GraphRenderer\",this.prototype.default_view=a,this.define({x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],layout_provider:[s.Instance],node_renderer:[s.Instance],edge_renderer:[s.Instance],selection_policy:[s.Instance,function(){return new o.NodesOnly}],inspection_policy:[s.Instance,function(){return new o.NodesOnly}]}),this.override({level:\"glyph\"})},t.prototype.get_selection_manager=function(){return this.node_renderer.data_source.selection_manager},t}(r.Renderer);(i.GraphRenderer=h).initClass()},function(t,e,i){var n=t(391),r=t(189),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.RendererView);i.GuideRendererView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GuideRenderer\",this.define({plot:[o.Instance]}),this.override({level:\"overlay\"})},t}(r.Renderer);(i.GuideRenderer=a).initClass()},function(t,e,i){var n=t(185);i.GlyphRenderer=n.GlyphRenderer;var r=t(186);i.GraphRenderer=r.GraphRenderer;var o=t(187);i.GuideRenderer=o.GuideRenderer;var s=t(189);i.Renderer=s.Renderer},function(t,e,i){var n=t(391),r=t(6),o=t(49),s=t(15),a=t(59),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view=t.plot_view,this.visuals=new o.Visuals(this.model),this._has_finished=!0},Object.defineProperty(t.prototype,\"plot_model\",{get:function(){return this.plot_view.model},enumerable:!0,configurable:!0}),t.prototype.request_render=function(){this.plot_view.request_render()},t.prototype.map_to_screen=function(t,e){return this.plot_view.map_to_screen(t,e,this.model.x_range_name,this.model.y_range_name)},Object.defineProperty(t.prototype,\"needs_clip\",{get:function(){return!1},enumerable:!0,configurable:!0}),t}(r.DOMView);i.RendererView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Renderer\",this.define({level:[s.RenderLevel],visible:[s.Bool,!0]})},t}(a.Model);(i.Renderer=h).initClass()},function(t,e,i){var n=t(391),r=t(192),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalScale\"},t.prototype.compute=function(t){return e.prototype.compute.call(this,this.source_range.synthetic(t))},t.prototype.v_compute=function(t){return e.prototype.v_compute.call(this,this.source_range.v_synthetic(t))},t}(r.LinearScale);(i.CategoricalScale=o).initClass()},function(t,e,i){var n=t(190);i.CategoricalScale=n.CategoricalScale;var r=t(192);i.LinearScale=r.LinearScale;var o=t(193);i.LogScale=o.LogScale;var s=t(194);i.Scale=s.Scale},function(t,e,i){var n=t(391),r=t(194),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearScale\"},t.prototype.compute=function(t){var e=this._compute_state(),i=e[0],n=e[1];return i*t+n},t.prototype.v_compute=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=new Float64Array(t.length),o=0;o<t.length;o++)r[o]=i*t[o]+n;return r},t.prototype.invert=function(t){var e=this._compute_state(),i=e[0],n=e[1];return(t-n)/i},t.prototype.v_invert=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=new Float64Array(t.length),o=0;o<t.length;o++)r[o]=(t[o]-n)/i;return r},t.prototype._compute_state=function(){var t=this.source_range.start,e=this.source_range.end,i=this.target_range.start,n=this.target_range.end,r=(n-i)/(e-t),o=-r*t+i;return[r,o]},t}(r.Scale);(i.LinearScale=o).initClass()},function(t,e,i){var n=t(391),r=t(194),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogScale\"},t.prototype.compute=function(t){var e,i=this._compute_state(),n=i[0],r=i[1],o=i[2],s=i[3];if(0==o)e=0;else{var a=(Math.log(t)-s)/o;e=isFinite(a)?a*n+r:NaN}return e},t.prototype.v_compute=function(t){var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=new Float64Array(t.length);if(0==r)for(var a=0;a<t.length;a++)s[a]=0;else for(var a=0;a<t.length;a++){var l=(Math.log(t[a])-o)/r,h=void 0;h=isFinite(l)?l*i+n:NaN,s[a]=h}return s},t.prototype.invert=function(t){var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=(t-n)/i;return Math.exp(r*s+o)},t.prototype.v_invert=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=new Float64Array(t.length),a=0;a<t.length;a++){var l=(t[a]-n)/i;s[a]=Math.exp(r*l+o)}return s},t.prototype._get_safe_factor=function(t,e){var i,n=t<0?0:t,r=e<0?0:e;if(n==r)if(0==n)n=(i=[1,10])[0],r=i[1];else{var o=Math.log(n)/Math.log(10);n=Math.pow(10,Math.floor(o)),r=Math.ceil(o)!=Math.floor(o)?Math.pow(10,Math.ceil(o)):Math.pow(10,Math.ceil(o)+1)}return[n,r]},t.prototype._compute_state=function(){var t,e,i=this.source_range.start,n=this.source_range.end,r=this.target_range.start,o=this.target_range.end,s=o-r,a=this._get_safe_factor(i,n),l=a[0],h=a[1];0==l?(t=Math.log(h),e=0):(t=Math.log(h)-Math.log(l),e=Math.log(l));var u=s,c=r;return[u,c,t,e]},t}(r.Scale);(i.LogScale=o).initClass()},function(t,e,i){var n=t(391),r=t(274),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Scale\",this.internal({source_range:[o.Any],target_range:[o.Any]})},t.prototype.r_compute=function(t,e){return this.target_range.is_reversed?[this.compute(e),this.compute(t)]:[this.compute(t),this.compute(e)]},t.prototype.r_invert=function(t,e){return this.target_range.is_reversed?[this.invert(e),this.invert(t)]:[this.invert(t),this.invert(e)]},t}(r.Transform);(i.Scale=s).initClass()},function(t,e,i){var n=t(391);n.__exportStar(t(196),i);var r=t(197);i.Selection=r.Selection},function(t,e,i){var n=t(391),r=t(59),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.do_selection=function(t,e,i,n){return null!==t&&(e.selected.update(t,i,n),e._select.emit(),!e.selected.is_empty())},e}(r.Model);(i.SelectionPolicy=o).prototype.type=\"SelectionPolicy\";var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.hit_test=function(t,e){for(var i=[],n=0,r=e;n<r.length;n++){var o=r[n],s=o.hit_test(t);null!==s&&i.push(s)}if(0<i.length){for(var a=i[0],l=0,h=i;l<h.length;l++){var u=h[l];a.update_through_intersection(u)}return a}return null},e}(o);(i.IntersectRenderers=s).prototype.type=\"IntersectRenderers\";var a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.hit_test=function(t,e){for(var i=[],n=0,r=e;n<r.length;n++){var o=r[n],s=o.hit_test(t);null!==s&&i.push(s)}if(0<i.length){for(var a=i[0],l=0,h=i;l<h.length;l++){var u=h[l];a.update_through_union(u)}return a}return null},e}(o);(i.UnionRenderers=a).prototype.type=\"UnionRenderers\"},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(21),a=t(32),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Selection\",this.define({indices:[o.Array,[]],line_indices:[o.Array,[]],multiline_indices:[o.Any,{}]}),this.internal({final:[o.Boolean],selected_glyphs:[o.Array,[]],get_view:[o.Any],image_indices:[o.Array,[]]})},t.prototype.initialize=function(){var t=this;e.prototype.initialize.call(this),this[\"0d\"]={glyph:null,indices:[],flag:!1,get_view:function(){return null}},this[\"2d\"]={indices:{}},this[\"1d\"]={indices:this.indices},this.get_view=function(){return null},this.connect(this.properties.indices.change,function(){return t[\"1d\"].indices=t.indices}),this.connect(this.properties.line_indices.change,function(){t[\"0d\"].indices=t.line_indices,0==t.line_indices.length?t[\"0d\"].flag=!1:t[\"0d\"].flag=!0}),this.connect(this.properties.selected_glyphs.change,function(){return t[\"0d\"].glyph=t.selected_glyph}),this.connect(this.properties.get_view.change,function(){return t[\"0d\"].get_view=t.get_view}),this.connect(this.properties.multiline_indices.change,function(){return t[\"2d\"].indices=t.multiline_indices})},Object.defineProperty(t.prototype,\"selected_glyph\",{get:function(){return 0<this.selected_glyphs.length?this.selected_glyphs[0]:null},enumerable:!0,configurable:!0}),t.prototype.add_to_selected_glyphs=function(t){this.selected_glyphs.push(t)},t.prototype.update=function(t,e,i){this.final=e,i?this.update_through_union(t):(this.indices=t.indices,this.line_indices=t.line_indices,this.selected_glyphs=t.selected_glyphs,this.get_view=t.get_view,this.multiline_indices=t.multiline_indices,this.image_indices=t.image_indices)},t.prototype.clear=function(){this.final=!0,this.indices=[],this.line_indices=[],this.multiline_indices={},this.get_view=function(){return null},this.selected_glyphs=[]},t.prototype.is_empty=function(){return 0==this.indices.length&&0==this.line_indices.length&&0==this.image_indices.length},t.prototype.update_through_union=function(t){this.indices=s.union(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},t.prototype.update_through_intersection=function(t){this.indices=s.intersection(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},t}(r.Model);(i.Selection=l).initClass()},function(t,e,i){var n=t(391),r=t(205),o=t(14),_=t(44),s=t(15),a=function(i){function t(t){var e=i.call(this,t)||this;return e.initialized=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"AjaxDataSource\",this.define({mode:[s.String,\"replace\"],content_type:[s.String,\"application/json\"],adapter:[s.Any],http_headers:[s.Any,{}],max_size:[s.Number],method:[s.String,\"POST\"],if_modified:[s.Bool,!1]})},t.prototype.destroy=function(){null!=this.interval&&clearInterval(this.interval),i.prototype.destroy.call(this)},t.prototype.setup=function(){var t=this;!this.initialized&&(this.initialized=!0,this.get_data(this.mode),this.polling_interval)&&(this.interval=setInterval(function(){return t.get_data(t.mode,t.max_size,t.if_modified)},this.polling_interval))},t.prototype.get_data=function(t,e,i){var n=this;void 0===e&&(e=0),void 0===i&&(i=!1);var r=this.prepare_request();r.addEventListener(\"load\",function(){return n.do_load(r,t,e)}),r.addEventListener(\"error\",function(){return n.do_error(r)}),r.send()},t.prototype.prepare_request=function(){var t=new XMLHttpRequest;t.open(this.method,this.data_url,!0),t.withCredentials=!1,t.setRequestHeader(\"Content-Type\",this.content_type);var e=this.http_headers;for(var i in e){var n=e[i];t.setRequestHeader(i,n)}return t},t.prototype.do_load=function(t,e,i){if(200===t.status){var n=JSON.parse(t.responseText),r=this.adapter,o={};switch(o=null!=r?_.isFunction(r)?r(this,{response:n}):r.execute(this,{response:n}):n,e){case\"replace\":this.data=o;break;case\"append\":for(var s=this.data,a=0,l=this.columns();a<l.length;a++){var h=l[a],u=Array.from(s[h]),c=Array.from(o[h]);o[h]=u.concat(c).slice(-i)}this.data=o}}},t.prototype.do_error=function(t){o.logger.error(\"Failed to fetch JSON from \"+this.data_url+\" with code \"+t.status)},t}(r.RemoteDataSource);(i.AjaxDataSource=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(197),a=t(21),l=t(201),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CDSView\",this.define({filters:[o.Array,[]],source:[o.Instance]}),this.internal({indices:[o.Array,[]],indices_map:[o.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.compute_indices()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.filters.change,function(){t.compute_indices(),t.change.emit()}),null!=this.source&&(null!=this.source.change&&this.connect(this.source.change,function(){return t.compute_indices()}),null!=this.source.streaming&&this.connect(this.source.streaming,function(){return t.compute_indices()}),null!=this.source.patching&&this.connect(this.source.patching,function(){return t.compute_indices()}))},t.prototype.compute_indices=function(){var e=this,r=this.filters.map(function(t){return t.compute_indices(e.source)});0<(r=function(){for(var t=[],e=0,i=r;e<i.length;e++){var n=i[e];null!=n&&t.push(n)}return t}()).length?this.indices=a.intersection.apply(this,r):this.source instanceof l.ColumnarDataSource&&(this.indices=this.source.get_indices()),this.indices_map_to_subset()},t.prototype.indices_map_to_subset=function(){this.indices_map={};for(var t=0;t<this.indices.length;t++)this.indices_map[this.indices[t]]=t},t.prototype.convert_selection_from_subset=function(t){var e=this,i=new s.Selection;i.update_through_union(t);var n=t.indices.map(function(t){return e.indices[t]});return i.indices=n,i.image_indices=t.image_indices,i},t.prototype.convert_selection_to_subset=function(t){var e=this,i=new s.Selection;i.update_through_union(t);var n=t.indices.map(function(t){return e.indices_map[t]});return i.indices=n,i.image_indices=t.image_indices,i},t.prototype.convert_indices_from_subset=function(t){var e=this;return t.map(function(t){return e.indices[t]})},t}(r.Model);(i.CDSView=h).initClass()},function(t,e,i){var n=t(391),r=t(201),o=t(8),s=t(15),k=t(29),h=t(36),S=t(44),u=t(43),c=t(32),a=t(51);function _(t,e,i){if(S.isArray(t)){var n=t.concat(e);return null!=i&&n.length>i?n.slice(-i):n}if(S.isTypedArray(t)){var r=t.length+e.length;if(null!=i&&i<r){var o=r-i,s=t.length,n=void 0;t.length<i?(n=new t.constructor(i)).set(t,0):n=t;for(var a=o,l=s;a<l;a++)n[a-o]=n[a];for(var a=0,l=e.length;a<l;a++)n[a+(s-o)]=e[a];return n}var h=new t.constructor(e);return u.concat(t,h)}throw new Error(\"unsupported array types\")}function C(t,e){var i,n,r;return S.isNumber(t)?(r=(i=t)+1,n=1):(i=null!=t.start?t.start:0,r=null!=t.stop?t.stop:e,n=null!=t.step?t.step:1),[i,r,n]}function p(t,e,i){for(var n=new k.Set,r=!1,o=0,s=e;o<s.length;o++){var a=s[o],l=a[0],h=a[1],u=void 0,c=void 0;if(S.isArray(l)){var _=l[0];n.add(_),c=i[_],u=t[_]}else S.isNumber(l)?(h=[h],n.add(l)):r=!0,l=[0,0,l],c=[1,t.length],u=t;2===l.length&&(c=[1,c[0]],l=[l[0],0,l[1]]);for(var p=0,d=C(l[1],c[0]),f=d[0],v=d[1],m=d[2],g=C(l[2],c[1]),y=g[0],b=g[1],x=g[2],_=f;_<v;_+=m)for(var w=y;w<b;w+=x)r&&n.add(w),u[_*c[1]+w]=h[p],p++}return n}i.stream_to_column=_,i.slice=C,i.patch_to_column=p;var l=function(e){function l(t){return e.call(this,t)||this}return n.__extends(l,e),l.initClass=function(){this.prototype.type=\"ColumnDataSource\",this.define({data:[s.Any,{}]})},l.prototype.initialize=function(){var t;e.prototype.initialize.call(this),t=h.decode_column_data(this.data),this.data=t[0],this._shapes=t[1]},l.prototype.attributes_as_json=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=l._value_to_json);for(var i={},n=this.serializable_attributes(),r=0,o=c.keys(n);r<o.length;r++){var s=o[r],a=n[s];\"data\"===s&&(a=h.encode_column_data(a,this._shapes)),t?i[s]=a:s in this._set_after_defaults&&(i[s]=a)}return e(\"attributes\",i,this)},l._value_to_json=function(t,e,i){return S.isPlainObject(e)&&\"data\"===t?h.encode_column_data(e,i._shapes):o.HasProps._value_to_json(t,e,i)},l.prototype.stream=function(t,e,i){var n=this.data;for(var r in t)n[r]=_(n[r],t[r],e);if(this.setv({data:n},{silent:!0}),this.streaming.emit(),null!=this.document){var o=new a.ColumnsStreamedEvent(this.document,this.ref(),t,e);this.document._notify_change(this,\"data\",null,null,{setter_id:i,hint:o})}},l.prototype.patch=function(t,e){var i=this.data,n=new k.Set;for(var r in t){var o=t[r];n=n.union(p(i[r],o,this._shapes[r]))}if(this.setv({data:i},{silent:!0}),this.patching.emit(n.values),null!=this.document){var s=new a.ColumnsPatchedEvent(this.document,this.ref(),t);this.document._notify_change(this,\"data\",null,null,{setter_id:e,hint:s})}},l}(r.ColumnarDataSource);(i.ColumnDataSource=l).initClass()},function(t,e,i){var n=t(391),r=t(202),o=t(19),s=t(14),a=t(17),l=t(15),h=t(44),u=t(21),c=t(32),_=t(197),p=t(196),d=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.get_array=function(t){var e=this.data[t];return null==e?this.data[t]=e=[]:h.isArray(e)||(this.data[t]=e=Array.from(e)),e},t.initClass=function(){this.prototype.type=\"ColumnarDataSource\",this.define({selection_policy:[l.Instance,function(){return new p.UnionRenderers}]}),this.internal({selection_manager:[l.Instance,function(t){return new a.SelectionManager({source:t})}],inspected:[l.Instance,function(){return new _.Selection}],_shapes:[l.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._select=new o.Signal0(this,\"select\"),this.inspect=new o.Signal(this,\"inspect\"),this.streaming=new o.Signal0(this,\"streaming\"),this.patching=new o.Signal(this,\"patching\")},t.prototype.get_column=function(t){var e=this.data[t];return null!=e?e:null},t.prototype.columns=function(){return c.keys(this.data)},t.prototype.get_length=function(t){void 0===t&&(t=!0);var e=u.uniq(c.values(this.data).map(function(t){return t.length}));switch(e.length){case 0:return null;case 1:return e[0];default:var i=\"data source has columns of inconsistent lengths\";if(t)return s.logger.warn(i),e.sort()[0];throw new Error(i)}},t.prototype.get_indices=function(){var t=this.get_length();return u.range(0,null!=t?t:1)},t.prototype.clear=function(){for(var t={},e=0,i=this.columns();e<i.length;e++){var n=i[e];t[n]=new this.data[n].constructor}this.data=t},t}(r.DataSource);(i.ColumnarDataSource=d).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=t(197),l=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DataSource\",this.define({selected:[o.Instance,function(){return new a.Selection}],callback:[o.Any]})},t.prototype.connect_signals=function(){var e=this;i.prototype.connect_signals.call(this),this.connect(this.properties.selected.change,function(){var t=e.callback;null!=t&&(s.isFunction(t)?t(e):t.execute(e))})},t}(r.Model);(i.DataSource=l).initClass()},function(t,e,i){var n=t(391),r=t(201),b=t(14),o=t(15),s=t(21),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GeoJSONDataSource\",this.define({geojson:[o.Any]}),this.internal({data:[o.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._update_data()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.geojson.change,function(){return t._update_data()})},t.prototype._update_data=function(){this.data=this.geojson_to_column_data()},t.prototype._get_new_list_array=function(t){return s.range(0,t).map(function(t){return[]})},t.prototype._get_new_nan_array=function(t){return s.range(0,t).map(function(t){return NaN})},t.prototype._add_properties=function(t,e,i,n){var r=t.properties||{};for(var o in r)e.hasOwnProperty(o)||(e[o]=this._get_new_nan_array(n)),e[o][i]=r[o]},t.prototype._add_geometry=function(t,e,i){function n(t){return null!=t?t:NaN}function r(t,e){return t.concat([[NaN,NaN,NaN]]).concat(e)}switch(t.type){case\"Point\":var o=t.coordinates,s=o[0],a=o[1],l=o[2];e.x[i]=s,e.y[i]=a,e.z[i]=n(l);break;case\"LineString\":for(var h=t.coordinates,u=0;u<h.length;u++){var c=h[u],s=c[0],a=c[1],l=c[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"Polygon\":1<t.coordinates.length&&b.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\");for(var _=t.coordinates[0],u=0;u<_.length;u++){var p=_[u],s=p[0],a=p[1],l=p[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"MultiPoint\":b.logger.warn(\"MultiPoint not supported in Bokeh\");break;case\"MultiLineString\":for(var h=t.coordinates.reduce(r),u=0;u<h.length;u++){var d=h[u],s=d[0],a=d[1],l=d[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"MultiPolygon\":for(var f=[],v=0,m=t.coordinates;v<m.length;v++){var g=m[v];1<g.length&&b.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\"),f.push(g[0])}for(var h=f.reduce(r),u=0;u<h.length;u++){var y=h[u],s=y[0],a=y[1],l=y[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;default:throw new Error(\"Invalid GeoJSON geometry type: \"+t.type)}},t.prototype.geojson_to_column_data=function(){var t,e=JSON.parse(this.geojson);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\")}for(var i=0,n=0,r=t;n<r.length;n++){var o=r[n],s=\"Feature\"===o.type?o.geometry:o;\"GeometryCollection\"==s.type?i+=s.geometries.length:i+=1}for(var a={x:this._get_new_nan_array(i),y:this._get_new_nan_array(i),z:this._get_new_nan_array(i),xs:this._get_new_list_array(i),ys:this._get_new_list_array(i),zs:this._get_new_list_array(i)},l=0,h=0,u=t;h<u.length;h++){var o=u[h],s=\"Feature\"==o.type?o.geometry:o;if(\"GeometryCollection\"==s.type)for(var c=0,_=s.geometries;c<_.length;c++){var p=_[c];this._add_geometry(p,a,l),\"Feature\"===o.type&&this._add_properties(o,a,l,i),l+=1}else this._add_geometry(s,a,l),\"Feature\"===o.type&&this._add_properties(o,a,l,i),l+=1}return a},t}(r.ColumnarDataSource);(i.GeoJSONDataSource=a).initClass()},function(t,e,i){var n=t(198);i.AjaxDataSource=n.AjaxDataSource;var r=t(200);i.ColumnDataSource=r.ColumnDataSource;var o=t(201);i.ColumnarDataSource=o.ColumnarDataSource;var s=t(199);i.CDSView=s.CDSView;var a=t(202);i.DataSource=a.DataSource;var l=t(203);i.GeoJSONDataSource=l.GeoJSONDataSource;var h=t(205);i.RemoteDataSource=h.RemoteDataSource},function(t,e,i){var n=t(391),r=t(200),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.get_column=function(t){var e=this.data[t];return null!=e?e:[]},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.setup()},t.initClass=function(){this.prototype.type=\"RemoteDataSource\",this.define({data_url:[o.String],polling_interval:[o.Number]})},t}(r.ColumnDataSource);(i.RemoteDataSource=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),v=t(21),s=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"AdaptiveTicker\",this.define({base:[o.Number,10],mantissas:[o.Array,[1,2,5]],min_interval:[o.Number,0],max_interval:[o.Number]})},t.prototype.initialize=function(){i.prototype.initialize.call(this);var t=v.nth(this.mantissas,-1)/this.base,e=v.nth(this.mantissas,0)*this.base;this.extended_mantissas=[t].concat(this.mantissas,[e]),this.base_factor=0===this.get_min_interval()?1:this.get_min_interval()},t.prototype.get_interval=function(t,e,i){var n,r,o,s,a,l=e-t,h=this.get_ideal_interval(t,e,i),u=Math.floor((s=h/this.base_factor,void 0===(a=this.base)&&(a=Math.E),Math.log(s)/Math.log(a))),c=Math.pow(this.base,u)*this.base_factor,_=this.extended_mantissas,p=_.map(function(t){return Math.abs(i-l/(t*c))}),d=_[v.argmin(p)],f=d*c;return n=f,r=this.get_min_interval(),o=this.get_max_interval(),Math.max(r,Math.min(o,n))},t}(r.ContinuousTicker);(i.AdaptiveTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(206),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BasicTicker\"},t}(r.AdaptiveTicker);(i.BasicTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(219),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalTicker\"},t.prototype.get_ticks=function(t,e,i,n,r){var o=this._collect(i.factors,i,t,e),s=this._collect(i.tops||[],i,t,e),a=this._collect(i.mids||[],i,t,e);return{major:o,minor:[],tops:s,mids:a}},t.prototype._collect=function(t,e,i,n){for(var r=[],o=0,s=t;o<s.length;o++){var a=s[o],l=e.synthetic(a);i<l&&l<n&&r.push(a)}return r},t}(r.Ticker);(i.CategoricalTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),c=t(21),_=t(32),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CompositeTicker\",this.define({tickers:[o.Array,[]]})},Object.defineProperty(t.prototype,\"min_intervals\",{get:function(){return this.tickers.map(function(t){return t.get_min_interval()})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_intervals\",{get:function(){return this.tickers.map(function(t){return t.get_max_interval()})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"min_interval\",{get:function(){return this.min_intervals[0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_interval\",{get:function(){return this.max_intervals[0]},enumerable:!0,configurable:!0}),t.prototype.get_best_ticker=function(t,e,i){var n,r=e-t,o=this.get_ideal_interval(t,e,i),s=[c.sortedIndex(this.min_intervals,o)-1,c.sortedIndex(this.max_intervals,o)],a=[this.min_intervals[s[0]],this.max_intervals[s[1]]],l=a.map(function(t){return Math.abs(i-r/t)});if(_.isEmpty(l.filter(function(t){return!isNaN(t)})))n=this.tickers[0];else{var h=c.argmin(l),u=s[h];n=this.tickers[u]}return n},t.prototype.get_interval=function(t,e,i){var n=this.get_best_ticker(t,e,i);return n.get_interval(t,e,i)},t.prototype.get_ticks_no_defaults=function(t,e,i,n){var r=this.get_best_ticker(t,e,n);return r.get_ticks_no_defaults(t,e,i,n)},t}(r.ContinuousTicker);(i.CompositeTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(219),o=t(15),x=t(21),w=t(44),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousTicker\",this.define({num_minor_ticks:[o.Number,5],desired_num_ticks:[o.Number,6]})},t.prototype.get_ticks=function(t,e,i,n,r){return this.get_ticks_no_defaults(t,e,n,this.desired_num_ticks)},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=this.get_interval(e,i,n),o=Math.floor(e/r),s=Math.ceil(i/r),a=(w.isStrictNaN(o)||w.isStrictNaN(s)?[]:x.range(o,s+1)).map(function(t){return t*r}).filter(function(t){return e<=t&&t<=i}),l=this.num_minor_ticks,h=[];if(0<l&&0<a.length){for(var u=r/l,c=x.range(0,l).map(function(t){return t*u}),_=0,p=c.slice(1);_<p.length;_++){var d=p[_],f=a[0]-d;e<=f&&f<=i&&h.push(f)}for(var v=0,m=a;v<m.length;v++)for(var g=m[v],y=0,b=c;y<b.length;y++){var d=b[y],f=g+d;e<=f&&f<=i&&h.push(f)}}return{major:a,minor:h}},t.prototype.get_min_interval=function(){return this.min_interval},t.prototype.get_max_interval=function(){return null!=this.max_interval?this.max_interval:1/0},t.prototype.get_ideal_interval=function(t,e,i){var n=e-t;return n/i},t}(r.Ticker);(i.ContinuousTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(21),o=t(206),s=t(209),a=t(212),l=t(217),h=t(221),u=t(220),c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatetimeTicker\",this.override({num_minor_ticks:0,tickers:function(){return[new o.AdaptiveTicker({mantissas:[1,2,5],base:10,min_interval:0,max_interval:500*u.ONE_MILLI,num_minor_ticks:0}),new o.AdaptiveTicker({mantissas:[1,2,5,10,15,20,30],base:60,min_interval:u.ONE_SECOND,max_interval:30*u.ONE_MINUTE,num_minor_ticks:0}),new o.AdaptiveTicker({mantissas:[1,2,4,6,8,12],base:24,min_interval:u.ONE_HOUR,max_interval:12*u.ONE_HOUR,num_minor_ticks:0}),new a.DaysTicker({days:r.range(1,32)}),new a.DaysTicker({days:r.range(1,31,3)}),new a.DaysTicker({days:[1,8,15,22]}),new a.DaysTicker({days:[1,15]}),new l.MonthsTicker({months:r.range(0,12,1)}),new l.MonthsTicker({months:r.range(0,12,2)}),new l.MonthsTicker({months:r.range(0,12,4)}),new l.MonthsTicker({months:r.range(0,12,6)}),new h.YearsTicker({})]}})},t}(s.CompositeTicker);(i.DatetimeTicker=c).initClass()},function(t,e,i){var n=t(391),r=t(218),u=t(220),o=t(15),c=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DaysTicker\",this.define({days:[o.Array,[]]}),this.override({num_minor_ticks:0})},t.prototype.initialize=function(){e.prototype.initialize.call(this);var t=this.days;1<t.length?this.interval=(t[1]-t[0])*u.ONE_DAY:this.interval=31*u.ONE_DAY},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=function(t,e){var i=u.last_month_no_later_than(new Date(t)),n=u.last_month_no_later_than(new Date(e));n.setUTCMonth(n.getUTCMonth()+1);for(var r=[],o=i;r.push(u.copy_date(o)),o.setUTCMonth(o.getUTCMonth()+1),!(n<o););return r}(e,i),h=this.days,o=this.interval,s=c.concat(r.map(function(t){return function(t,e){for(var i=t.getUTCMonth(),n=[],r=0,o=h;r<o.length;r++){var s=o[r],a=u.copy_date(t);a.setUTCDate(s);var l=new Date(a.getTime()+e/2);l.getUTCMonth()==i&&n.push(a)}return n}(t,o)})),a=s.map(function(t){return t.getTime()}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(r.SingleIntervalTicker);(i.DaysTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),s=function(i){function t(t){var e=i.call(this,t)||this;return e.min_interval=0,e.max_interval=0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"FixedTicker\",this.define({ticks:[o.Array,[]],minor_ticks:[o.Array,[]]})},t.prototype.get_ticks_no_defaults=function(t,e,i,n){return{major:this.ticks,minor:this.minor_ticks}},t.prototype.get_interval=function(t,e,i){return 0},t}(r.ContinuousTicker);(i.FixedTicker=s).initClass()},function(t,e,i){var n=t(206);i.AdaptiveTicker=n.AdaptiveTicker;var r=t(207);i.BasicTicker=r.BasicTicker;var o=t(208);i.CategoricalTicker=o.CategoricalTicker;var s=t(209);i.CompositeTicker=s.CompositeTicker;var a=t(210);i.ContinuousTicker=a.ContinuousTicker;var l=t(211);i.DatetimeTicker=l.DatetimeTicker;var h=t(212);i.DaysTicker=h.DaysTicker;var u=t(213);i.FixedTicker=u.FixedTicker;var c=t(215);i.LogTicker=c.LogTicker;var _=t(216);i.MercatorTicker=_.MercatorTicker;var p=t(217);i.MonthsTicker=p.MonthsTicker;var d=t(218);i.SingleIntervalTicker=d.SingleIntervalTicker;var f=t(219);i.Ticker=f.Ticker;var v=t(221);i.YearsTicker=v.YearsTicker},function(t,e,i){var n=t(391),r=t(206),N=t(21),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogTicker\",this.override({mantissas:[1,5]})},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r,o=this.num_minor_ticks,s=[],a=this.base,l=Math.log(e)/Math.log(a),h=Math.log(i)/Math.log(a),u=h-l;if(isFinite(u))if(u<2){var c=this.get_interval(e,i,n),_=Math.floor(e/c),p=Math.ceil(i/c);if(r=N.range(_,p+1).filter(function(t){return 0!=t}).map(function(t){return t*c}).filter(function(t){return e<=t&&t<=i}),0<o&&0<r.length){for(var d=c/o,f=N.range(0,o).map(function(t){return t*d}),v=0,m=f.slice(1);v<m.length;v++){var g=m[v];s.push(r[0]-g)}for(var y=0,b=r;y<b.length;y++)for(var x=b[y],w=0,k=f;w<k.length;w++){var g=k[w];s.push(x+g)}}}else{var S=Math.ceil(.999999*l),C=Math.floor(1.000001*h),T=Math.ceil((C-S)/9);if(r=N.range(S-1,C+1,T).map(function(t){return Math.pow(a,t)}),0<o&&0<r.length){for(var A=Math.pow(a,T)/o,f=N.range(1,o+1).map(function(t){return t*A}),E=0,M=f;E<M.length;E++){var g=M[E];s.push(r[0]/g)}s.push(r[0]);for(var O=0,z=r;O<z.length;O++)for(var x=z[O],P=0,j=f;P<j.length;P++){var g=j[P];s.push(x*g)}}}else r=[];return{major:r.filter(function(t){return e<=t&&t<=i}),minor:s.filter(function(t){return e<=t&&t<=i})}},t}(r.AdaptiveTicker);(i.LogTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(207),o=t(15),M=t(33),s=function(E){function t(t){return E.call(this,t)||this}return n.__extends(t,E),t.initClass=function(){this.prototype.type=\"MercatorTicker\",this.define({dimension:[o.LatLon]})},t.prototype.get_ticks_no_defaults=function(t,e,i,n){var r,o,s,a,l,h,u,c;if(null==this.dimension)throw new Error(\"MercatorTicker.dimension not configured\");r=M.clip_mercator(t,e,this.dimension),t=r[0],e=r[1],\"lon\"===this.dimension?(o=M.wgs84_mercator.inverse([t,i]),h=o[0],c=o[1],s=M.wgs84_mercator.inverse([e,i]),u=s[0],c=s[1]):(a=M.wgs84_mercator.inverse([i,t]),c=a[0],h=a[1],l=M.wgs84_mercator.inverse([i,e]),c=l[0],u=l[1]);var _=E.prototype.get_ticks_no_defaults.call(this,h,u,i,n),p=[],d=[];if(\"lon\"===this.dimension){for(var f=0,v=_.major;f<v.length;f++){var m=v[f];if(M.in_bounds(m,\"lon\")){var g=M.wgs84_mercator.forward([m,c])[0];p.push(g)}}for(var y=0,b=_.minor;y<b.length;y++){var m=b[y];if(M.in_bounds(m,\"lon\")){var g=M.wgs84_mercator.forward([m,c])[0];d.push(g)}}}else{for(var x=0,w=_.major;x<w.length;x++){var m=w[x];if(M.in_bounds(m,\"lat\")){var k=M.wgs84_mercator.forward([c,m]),S=k[1];p.push(S)}}for(var C=0,T=_.minor;C<T.length;C++){var m=T[C];if(M.in_bounds(m,\"lat\")){var A=M.wgs84_mercator.forward([c,m]),S=A[1];d.push(S)}}}return{major:p,minor:d}},t}(r.BasicTicker);(i.MercatorTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(218),h=t(220),o=t(15),u=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MonthsTicker\",this.define({months:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this);var t=this.months;1<t.length?this.interval=(t[1]-t[0])*h.ONE_MONTH:this.interval=12*h.ONE_MONTH},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=function(t,e){var i=h.last_year_no_later_than(new Date(t)),n=h.last_year_no_later_than(new Date(e));n.setUTCFullYear(n.getUTCFullYear()+1);for(var r=[],o=i;r.push(h.copy_date(o)),o.setUTCFullYear(o.getUTCFullYear()+1),!(n<o););return r}(e,i),o=this.months,s=u.concat(r.map(function(i){return o.map(function(t){var e=h.copy_date(i);return e.setUTCMonth(t),e})})),a=s.map(function(t){return t.getTime()}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(r.SingleIntervalTicker);(i.MonthsTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"SingleIntervalTicker\",this.define({interval:[o.Number]})},t.prototype.get_interval=function(t,e,i){return this.interval},Object.defineProperty(t.prototype,\"min_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),t}(r.ContinuousTicker);(i.SingleIntervalTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ticker\"},t}(r.Model);(i.Ticker=o).initClass()},function(t,e,i){function n(t){return new Date(t.getTime())}function r(t){var e=n(t);return e.setUTCDate(1),e.setUTCHours(0),e.setUTCMinutes(0),e.setUTCSeconds(0),e.setUTCMilliseconds(0),e}i.ONE_MILLI=1,i.ONE_SECOND=1e3,i.ONE_MINUTE=60*i.ONE_SECOND,i.ONE_HOUR=60*i.ONE_MINUTE,i.ONE_DAY=24*i.ONE_HOUR,i.ONE_MONTH=30*i.ONE_DAY,i.ONE_YEAR=365*i.ONE_DAY,i.copy_date=n,i.last_month_no_later_than=r,i.last_year_no_later_than=function(t){var e=r(t);return e.setUTCMonth(0),e}},function(t,e,i){var n=t(391),r=t(207),o=t(218),h=t(220),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"YearsTicker\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.interval=h.ONE_YEAR,this.basic_ticker=new r.BasicTicker({num_minor_ticks:0})},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=h.last_year_no_later_than(new Date(e)).getUTCFullYear(),o=h.last_year_no_later_than(new Date(i)).getUTCFullYear(),s=this.basic_ticker.get_ticks_no_defaults(r,o,t,n).major,a=s.map(function(t){return Date.UTC(t,0,1)}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(o.SingleIntervalTicker);(i.YearsTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(225),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BBoxTileSource\",this.define({use_latlon:[o.Bool,!1]})},t.prototype.get_image_url=function(t,e,i){var n,r,o,s,a,l,h=this.string_lookup_replace(this.url,this.extra_url_vars);return this.use_latlon?(n=this.get_tile_geographic_bounds(t,e,i),s=n[0],l=n[1],o=n[2],a=n[3]):(r=this.get_tile_meter_bounds(t,e,i),s=r[0],l=r[1],o=r[2],a=r[3]),h.replace(\"{XMIN}\",s.toString()).replace(\"{YMIN}\",l.toString()).replace(\"{XMAX}\",o.toString()).replace(\"{YMAX}\",a.toString())},t}(r.MercatorTileSource);(i.BBoxTileSource=s).initClass()},function(t,e,i){var n=t(44),r=function(){function t(){this.images=[]}return t.prototype.pop=function(){var t=this.images.pop();return null!=t?t:new Image},t.prototype.push=function(t){var e;50<this.images.length||(n.isArray(t)?(e=this.images).push.apply(e,t):this.images.push(t))},t}();i.ImagePool=r},function(t,e,i){var n=t(222);i.BBoxTileSource=n.BBoxTileSource;var r=t(225);i.MercatorTileSource=r.MercatorTileSource;var o=t(226);i.QUADKEYTileSource=o.QUADKEYTileSource;var s=t(227);i.TileRenderer=s.TileRenderer;var a=t(228);i.TileSource=a.TileSource;var l=t(230);i.TMSTileSource=l.TMSTileSource;var h=t(231);i.WMTSTileSource=h.WMTSTileSource},function(t,e,i){var n=t(391),r=t(228),o=t(15),s=t(21),h=t(229),a=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"MercatorTileSource\",this.define({snap_to_zoom:[o.Bool,!1],wrap_around:[o.Bool,!0]}),this.override({x_origin_offset:20037508.34,y_origin_offset:20037508.34,initial_resolution:156543.03392804097})},t.prototype.initialize=function(){var e=this;i.prototype.initialize.call(this),this._resolutions=s.range(this.min_zoom,this.max_zoom+1).map(function(t){return e.get_resolution(t)})},t.prototype._computed_initial_resolution=function(){return null!=this.initial_resolution?this.initial_resolution:2*Math.PI*6378137/this.tile_size},t.prototype.is_valid_tile=function(t,e,i){return!(!this.wrap_around&&(t<0||t>=Math.pow(2,i))||e<0||e>=Math.pow(2,i))},t.prototype.parent_by_tile_xyz=function(t,e,i){var n=this.tile_xyz_to_quadkey(t,e,i),r=n.substring(0,n.length-1);return this.quadkey_to_tile_xyz(r)},t.prototype.get_resolution=function(t){return this._computed_initial_resolution()/Math.pow(2,t)},t.prototype.get_resolution_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e;return[n,r]},t.prototype.get_level_by_extent=function(t,e,i){for(var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=0,a=0,l=this._resolutions;a<l.length;a++){var h=l[a];if(h<o){if(0==s)return 0;if(0<s)return s-1}s+=1}return s-1},t.prototype.get_closest_level_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=this._resolutions.reduce(function(t,e){return Math.abs(e-o)<Math.abs(t-o)?e:t});return this._resolutions.indexOf(s)},t.prototype.snap_to_zoom_level=function(t,e,i,n){var r=t[0],o=t[1],s=t[2],a=t[3],l=this._resolutions[n],h=i*l,u=e*l;if(!this.snap_to_zoom){var c=(s-r)/h,_=(a-o)/u;_<c?(h=s-r,u*=c):(h*=_,u=a-o)}var p=(h-(s-r))/2,d=(u-(a-o))/2;return[r-p,o-d,s+p,a+d]},t.prototype.tms_to_wmts=function(t,e,i){\"Note this works both ways\";return[t,Math.pow(2,i)-1-e,i]},t.prototype.wmts_to_tms=function(t,e,i){\"Note this works both ways\";return[t,Math.pow(2,i)-1-e,i]},t.prototype.pixels_to_meters=function(t,e,i){var n=this.get_resolution(i),r=t*n-this.x_origin_offset,o=e*n-this.y_origin_offset;return[r,o]},t.prototype.meters_to_pixels=function(t,e,i){var n=this.get_resolution(i),r=(t+this.x_origin_offset)/n,o=(e+this.y_origin_offset)/n;return[r,o]},t.prototype.pixels_to_tile=function(t,e){var i=Math.ceil(t/this.tile_size);i=0===i?i:i-1;var n=Math.max(Math.ceil(e/this.tile_size)-1,0);return[i,n]},t.prototype.pixels_to_raster=function(t,e,i){var n=this.tile_size<<i;return[t,n-e]},t.prototype.meters_to_tile=function(t,e,i){var n=this.meters_to_pixels(t,e,i),r=n[0],o=n[1];return this.pixels_to_tile(r,o)},t.prototype.get_tile_meter_bounds=function(t,e,i){var n=this.pixels_to_meters(t*this.tile_size,e*this.tile_size,i),r=n[0],o=n[1],s=this.pixels_to_meters((t+1)*this.tile_size,(e+1)*this.tile_size,i),a=s[0],l=s[1];return[r,o,a,l]},t.prototype.get_tile_geographic_bounds=function(t,e,i){var n=this.get_tile_meter_bounds(t,e,i),r=h.meters_extent_to_geographic(n),o=r[0],s=r[1],a=r[2],l=r[3];return[o,s,a,l]},t.prototype.get_tiles_by_extent=function(t,e,i){void 0===i&&(i=1);var n=t[0],r=t[1],o=t[2],s=t[3],a=this.meters_to_tile(n,r,e),l=a[0],h=a[1],u=this.meters_to_tile(o,s,e),c=u[0],_=u[1];l-=i,h-=i,c+=i;for(var p=[],d=_+=i;h<=d;d--)for(var f=l;f<=c;f++)this.is_valid_tile(f,d,e)&&p.push([f,d,e,this.get_tile_meter_bounds(f,d,e)]);return this.sort_tiles_from_center(p,[l,h,c,_]),p},t.prototype.quadkey_to_tile_xyz=function(t){for(var e=0,i=0,n=t.length,r=n;0<r;r--){var o=t.charAt(n-r),s=1<<r-1;switch(o){case\"0\":continue;case\"1\":e|=s;break;case\"2\":i|=s;break;case\"3\":e|=s,i|=s;break;default:throw new TypeError(\"Invalid Quadkey: \"+t)}}return[e,i,n]},t.prototype.tile_xyz_to_quadkey=function(t,e,i){for(var n=\"\",r=i;0<r;r--){var o=1<<r-1,s=0;0!=(t&o)&&(s+=1),0!=(e&o)&&(s+=2),n+=s.toString()}return n},t.prototype.children_by_tile_xyz=function(t,e,i){for(var n=this.tile_xyz_to_quadkey(t,e,i),r=[],o=0;o<=3;o++){var s=this.quadkey_to_tile_xyz(n+o.toString()),a=s[0],l=s[1],h=s[2],u=this.get_tile_meter_bounds(a,l,h);r.push([a,l,h,u])}return r},t.prototype.get_closest_parent_by_tile_xyz=function(t,e,i){var n,r,o,s=this.calculate_world_x_by_tile_xyz(t,e,i);n=this.normalize_xyz(t,e,i),t=n[0],e=n[1],i=n[2];for(var a=this.tile_xyz_to_quadkey(t,e,i);0<a.length;)if(a=a.substring(0,a.length-1),r=this.quadkey_to_tile_xyz(a),t=r[0],e=r[1],i=r[2],o=this.denormalize_xyz(t,e,i,s),t=o[0],e=o[1],i=o[2],this.tile_xyz_to_key(t,e,i)in this.tiles)return[t,e,i];return[0,0,0]},t.prototype.normalize_xyz=function(t,e,i){if(this.wrap_around){var n=Math.pow(2,i);return[(t%n+n)%n,e,i]}return[t,e,i]},t.prototype.denormalize_xyz=function(t,e,i,n){return[t+n*Math.pow(2,i),e,i]},t.prototype.denormalize_meters=function(t,e,i,n){return[t+2*n*Math.PI*6378137,e]},t.prototype.calculate_world_x_by_tile_xyz=function(t,e,i){return Math.floor(t/Math.pow(2,i))},t}(r.TileSource);(i.MercatorTileSource=a).initClass()},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"QUADKEYTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars),r=this.tms_to_wmts(t,e,i),o=r[0],s=r[1],a=r[2],l=this.tile_xyz_to_quadkey(o,s,a);return n.replace(\"{Q}\",l)},t}(r.MercatorTileSource);(i.QUADKEYTileSource=o).initClass()},function(t,e,i){var r=t(391),o=t(223),n=t(231),s=t(189),a=t(184),l=t(5),h=t(15),I=t(21),u=t(44),c=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return r.__extends(t,n),t.prototype.initialize=function(t){this.attributionEl=null,this._tiles=[],n.prototype.initialize.call(this,t)},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.request_render()})},t.prototype.get_extent=function(){return[this.x_range.start,this.y_range.start,this.x_range.end,this.y_range.end]},Object.defineProperty(t.prototype,\"map_plot\",{get:function(){return this.plot_model.plot},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"map_canvas\",{get:function(){return this.plot_view.canvas_view.ctx},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"map_frame\",{get:function(){return this.plot_model.frame},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"x_range\",{get:function(){return this.map_plot.x_range},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"y_range\",{get:function(){return this.map_plot.y_range},enumerable:!0,configurable:!0}),t.prototype._set_data=function(){this.pool=new o.ImagePool,this.extent=this.get_extent(),this._last_height=void 0,this._last_width=void 0},t.prototype._add_attribution=function(){var t=this.model.tile_source.attribution;if(u.isString(t)&&0<t.length){if(null==this.attributionEl){var e=this.plot_model.canvas._right.value-this.plot_model.frame._right.value,i=this.plot_model.canvas._bottom.value-this.plot_model.frame._bottom.value,n=this.map_frame._width.value;this.attributionEl=l.div({class:\"bk-tile-attribution\",style:{position:\"absolute\",bottom:i+\"px\",right:e+\"px\",\"max-width\":n-4+\"px\",padding:\"2px\",\"background-color\":\"rgba(255,255,255,0.5)\",\"font-size\":\"7pt\",\"font-family\":\"sans-serif\",\"line-height\":\"1.05\",\"white-space\":\"nowrap\",overflow:\"hidden\",\"text-overflow\":\"ellipsis\"}});var r=this.plot_view.canvas_view.events_el;r.appendChild(this.attributionEl)}this.attributionEl.innerHTML=t,this.attributionEl.title=this.attributionEl.textContent.replace(/\\s*\\n\\s*/g,\" \")}},t.prototype._map_data=function(){this.initial_extent=this.get_extent();var t=this.model.tile_source.get_level_by_extent(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value),e=this.model.tile_source.snap_to_zoom_level(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value,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 a.Range1d&&(this.x_range.reset_start=e[0],this.x_range.reset_end=e[2]),this.y_range instanceof a.Range1d&&(this.y_range.reset_start=e[1],this.y_range.reset_end=e[3]),this._add_attribution()},t.prototype._on_tile_load=function(t,e){t.img=e.target,t.loaded=!0,this.request_render()},t.prototype._on_tile_cache_load=function(t,e){t.img=e.target,t.loaded=!0,t.finished=!0,this.notify_finished()},t.prototype._on_tile_error=function(t){t.finished=!0},t.prototype._create_tile=function(t,e,i,n,r){void 0===r&&(r=!1);var o=this.model.tile_source.normalize_xyz(t,e,i),s=o[0],a=o[1],l=o[2],h=this.pool.pop(),u={img:h,tile_coords:[t,e,i],normalized_coords:[s,a,l],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:n,loaded:!1,finished:!1,x_coord:n[0],y_coord:n[3]};h.onload=r?this._on_tile_cache_load.bind(this,u):this._on_tile_load.bind(this,u),h.onerror=this._on_tile_error.bind(this,u),h.alt=\"\",h.src=this.model.tile_source.get_image_url(s,a,l),this.model.tile_source.tiles[u.cache_key]=u,this._tiles.push(u)},t.prototype._enforce_aspect_ratio=function(){if(this._last_height!==this.map_frame._height.value||this._last_width!==this.map_frame._width.value){var t=this.get_extent(),e=this.model.tile_source.get_level_by_extent(t,this.map_frame._height.value,this.map_frame._width.value),i=this.model.tile_source.snap_to_zoom_level(t,this.map_frame._height.value,this.map_frame._width.value,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._height.value,this._last_width=this.map_frame._width.value}},t.prototype.has_finished=function(){if(!n.prototype.has_finished.call(this))return!1;if(0===this._tiles.length)return!1;for(var t=0,e=this._tiles;t<e.length;t++){var i=e[t];if(!i.finished)return!1}return!0},t.prototype.render=function(){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()},t.prototype._draw_tile=function(t){var e=this.model.tile_source.tiles[t];if(null!=e){var i=this.plot_view.map_to_screen([e.bounds[0]],[e.bounds[3]]),n=i[0][0],r=i[1][0],o=this.plot_view.map_to_screen([e.bounds[2]],[e.bounds[1]]),s=o[0][0],a=o[1][0],l=s-n,h=a-r,u=n,c=r,_=this.map_canvas.getImageSmoothingEnabled();this.map_canvas.setImageSmoothingEnabled(this.model.smoothing),this.map_canvas.drawImage(e.img,u,c,l,h),this.map_canvas.setImageSmoothingEnabled(_),e.finished=!0}},t.prototype._set_rect=function(){var t=this.plot_model.plot.properties.outline_line_width.value(),e=this.map_frame._left.value+t/2,i=this.map_frame._top.value+t/2,n=this.map_frame._width.value-t,r=this.map_frame._height.value-t;this.map_canvas.rect(e,i,n,r),this.map_canvas.clip()},t.prototype._render_tiles=function(t){this.map_canvas.save(),this._set_rect(),this.map_canvas.globalAlpha=this.model.alpha;for(var e=0,i=t;e<i.length;e++){var n=i[e];this._draw_tile(n)}this.map_canvas.restore()},t.prototype._prefetch_tiles=function(){for(var t=this.model.tile_source,e=this.get_extent(),i=this.map_frame._height.value,n=this.map_frame._width.value,r=this.model.tile_source.get_level_by_extent(e,i,n),o=this.model.tile_source.get_tiles_by_extent(e,r),s=0,a=Math.min(10,o.length);s<a;s++)for(var l=o[s],h=l[0],u=l[1],c=l[2],_=this.model.tile_source.children_by_tile_xyz(h,u,c),p=0,d=_;p<d.length;p++){var f=d[p],v=f[0],m=f[1],g=f[2],y=f[3];t.tile_xyz_to_key(v,m,g)in t.tiles||this._create_tile(v,m,g,y,!0)}},t.prototype._fetch_tiles=function(t){for(var e=0,i=t;e<i.length;e++){var n=i[e],r=n[0],o=n[1],s=n[2],a=n[3];this._create_tile(r,o,s,a)}},t.prototype._update=function(){var t=this,e=this.model.tile_source,i=e.min_zoom,n=e.max_zoom,r=this.get_extent(),o=this.extent[2]-this.extent[0]<r[2]-r[0],s=this.map_frame._height.value,a=this.map_frame._width.value,l=e.get_level_by_extent(r,s,a),h=!1;l<i?(r=this.extent,l=i,h=!0):n<l&&(r=this.extent,l=n,h=!0),h&&(this.x_range.setv({x_range:{start:r[0],end:r[2]}}),this.y_range.setv({start:r[1],end:r[3]}),this.extent=r),this.extent=r;for(var u=e.get_tiles_by_extent(r,l),c=[],_=[],p=[],d=[],f=0,v=u;f<v.length;f++){var m=v[f],g=m[0],y=m[1],b=m[2],x=e.tile_xyz_to_key(g,y,b),w=e.tiles[x];if(null!=w&&w.loaded)_.push(x);else if(this.model.render_parents){var k=e.get_closest_parent_by_tile_xyz(g,y,b),S=k[0],C=k[1],T=k[2],A=e.tile_xyz_to_key(S,C,T),E=e.tiles[A];if(null!=E&&E.loaded&&!I.includes(p,A)&&p.push(A),o)for(var M=e.children_by_tile_xyz(g,y,b),O=0,z=M;O<z.length;O++){var P=z[O],j=P[0],N=P[1],F=P[2],D=e.tile_xyz_to_key(j,N,F);D in e.tiles&&d.push(D)}}null==w&&c.push(m)}this._render_tiles(p),this._render_tiles(d),this._render_tiles(_),null!=this.render_timer&&clearTimeout(this.render_timer),this.render_timer=setTimeout(function(){return t._fetch_tiles(c)},65)},t}(s.RendererView);i.TileRendererView=c;var _=function(e){function t(t){return e.call(this,t)||this}return r.__extends(t,e),t.initClass=function(){this.prototype.type=\"TileRenderer\",this.prototype.default_view=c,this.define({alpha:[h.Number,1],x_range_name:[h.String,\"default\"],y_range_name:[h.String,\"default\"],smoothing:[h.Bool,!0],tile_source:[h.Instance,function(){return new n.WMTSTileSource}],render_parents:[h.Bool,!0]}),this.override({level:\"underlay\"})},t}(s.Renderer);(i.TileRenderer=_).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(223),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TileSource\",this.define({url:[s.String,\"\"],tile_size:[s.Number,256],max_zoom:[s.Number,30],min_zoom:[s.Number,0],extra_url_vars:[s.Any,{}],attribution:[s.String,\"\"],x_origin_offset:[s.Number],y_origin_offset:[s.Number],initial_resolution:[s.Number]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.tiles={},this.pool=new o.ImagePool,this._normalize_case()},t.prototype.string_lookup_replace=function(t,e){var i=t;for(var n in e){var r=e[n];i=i.replace(\"{\"+n+\"}\",r)}return i},t.prototype._normalize_case=function(){var t=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=t},t.prototype.tile_xyz_to_key=function(t,e,i){return t+\":\"+e+\":\"+i},t.prototype.key_to_tile_xyz=function(t){var e=t.split(\":\").map(function(t){return parseInt(t)}),i=e[0],n=e[1],r=e[2];return[i,n,r]},t.prototype.sort_tiles_from_center=function(t,e){var i=e[0],n=e[1],r=e[2],o=e[3],s=(r-i)/2+i,a=(o-n)/2+n;t.sort(function(t,e){var i=Math.sqrt(Math.pow(s-t[0],2)+Math.pow(a-t[1],2)),n=Math.sqrt(Math.pow(s-e[0],2)+Math.pow(a-e[1],2));return i-n})},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars);return n.replace(\"{X}\",t.toString()).replace(\"{Y}\",e.toString()).replace(\"{Z}\",i.toString())},t}(r.Model);(i.TileSource=a).initClass()},function(t,e,i){var n=t(33);function c(t,e){return n.wgs84_mercator.forward([t,e])}function _(t,e){return n.wgs84_mercator.inverse([t,e])}i.geographic_to_meters=c,i.meters_to_geographic=_,i.geographic_extent_to_meters=function(t){var e=t[0],i=t[1],n=t[2],r=t[3],o=c(e,i),s=o[0],a=o[1],l=c(n,r),h=l[0],u=l[1];return[s,a,h,u]},i.meters_extent_to_geographic=function(t){var e=t[0],i=t[1],n=t[2],r=t[3],o=_(e,i),s=o[0],a=o[1],l=_(n,r),h=l[0],u=l[1];return[s,a,h,u]}},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TMSTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars);return n.replace(\"{X}\",t.toString()).replace(\"{Y}\",e.toString()).replace(\"{Z}\",i.toString())},t}(r.MercatorTileSource);(i.TMSTileSource=o).initClass()},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"WMTSTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars),r=this.tms_to_wmts(t,e,i),o=r[0],s=r[1],a=r[2];return n.replace(\"{X}\",o.toString()).replace(\"{Y}\",s.toString()).replace(\"{Z}\",a.toString())},t}(r.MercatorTileSource);(i.WMTSTileSource=o).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(19),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._clicked=function(){this.model.do.emit()},e}(r.ButtonToolButtonView);i.ActionToolButtonView=s;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.do,function(){return t.doit()})},t}(r.ButtonToolView);i.ActionToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.button_view=s,e.do=new o.Signal0(e,\"do\"),e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ActionTool\"},t}(r.ButtonTool);(i.ActionTool=l).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(15),s=t(44),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-toolbar-button-custom-action\")},e}(r.ActionToolButtonView);i.CustomActionButtonView=a;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.model.callback;s.isFunction(t)?t(this,{}):t.execute(this,{})},e}(r.ActionToolView);i.CustomActionView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Custom Action\",e.button_view=a,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"CustomAction\",this.prototype.default_view=l,this.define({action_tooltip:[o.String,\"Perform a Custom Action\"],callback:[o.Any],icon:[o.String]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.action_tooltip},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.CustomAction=h).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){window.open(this.model.redirect)},e}(r.ActionToolView);i.HelpToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Help\",e.icon=\"bk-tool-icon-help\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"HelpTool\",this.prototype.default_view=s,this.define({help_tooltip:[o.String,\"Click the question mark to learn more about Bokeh plot tools.\"],redirect:[o.String,\"https://bokeh.pydata.org/en/latest/docs/user_guide/tools.html#built-in-tools\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.help_tooltip},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.HelpTool=a).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.plot_view.state_changed,function(){return t.model.disabled=!t.plot_view.can_redo()})},t.prototype.doit=function(){this.plot_view.redo()},t}(r.ActionToolView);i.RedoToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Redo\",e.icon=\"bk-tool-icon-redo\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"RedoTool\",this.prototype.default_view=o,this.override({disabled:!0})},t}(r.ActionTool);(i.RedoTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){this.plot_view.reset()},e}(r.ActionToolView);i.ResetToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Reset\",e.icon=\"bk-tool-icon-reset\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ResetTool\",this.prototype.default_view=o},t}(r.ActionTool);(i.ResetTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){this.plot_view.save(\"bokeh_plot\")},e}(r.ActionToolView);i.SaveToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Save\",e.icon=\"bk-tool-icon-save\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"SaveTool\",this.prototype.default_view=o},t}(r.ActionTool);(i.SaveTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.plot_view.state_changed,function(){return t.model.disabled=!t.plot_view.can_undo()})},t.prototype.doit=function(){this.plot_view.undo()},t}(r.ActionToolView);i.UndoToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Undo\",e.icon=\"bk-tool-icon-undo\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"UndoTool\",this.prototype.default_view=o,this.override({disabled:!0})},t}(r.ActionTool);(i.UndoTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(46),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.plot_model.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,n=\"height\"==e||\"both\"==e,r=o.scale_range(t,this.model.factor,i,n);this.plot_view.push_state(\"zoom_out\",{range:r}),this.plot_view.update_range(r,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.ActionToolView);i.ZoomInToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Zoom In\",e.icon=\"bk-tool-icon-zoom-in\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ZoomInTool\",this.prototype.default_view=a,this.define({factor:[s.Percent,.1],dimensions:[s.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.ZoomInTool=l).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(46),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.plot_model.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,n=\"height\"==e||\"both\"==e,r=o.scale_range(t,-this.model.factor,i,n);this.plot_view.push_state(\"zoom_out\",{range:r}),this.plot_view.update_range(r,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.ActionToolView);i.ZoomOutToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Zoom Out\",e.icon=\"bk-tool-icon-zoom-out\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ZoomOutTool\",this.prototype.default_view=a,this.define({factor:[s.Percent,.1],dimensions:[s.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.ZoomOutTool=l).initClass()},function(t,e,i){var n=t(391),r=t(6),o=t(266),s=t(5),a=t(15),l=t(38),h=t(44),u=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.change,function(){return e.render()}),this.el.addEventListener(\"click\",function(){return e._clicked()}),this.render()},t.prototype.css_classes=function(){return i.prototype.css_classes.call(this).concat(\"bk-toolbar-button\")},t.prototype.render=function(){s.empty(this.el);var t=this.model.computed_icon;h.isString(t)&&(l.startsWith(t,\"data:image\")?this.el.style.backgroundImage=\"url('\"+t+\"')\":this.el.classList.add(t)),this.el.title=this.model.tooltip},t}(r.DOMView);i.ButtonToolButtonView=u;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(o.ToolView);i.ButtonToolView=c;var _=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ButtonTool\",this.internal({disabled:[a.Boolean,!1]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.icon},enumerable:!0,configurable:!0}),t}(o.Tool);(i.ButtonTool=_).initClass()},function(t,e,i){var n=t(391),o=t(5),r=t(15),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._tap=function(t){if(null==this._draw_basepoint&&null==this._basepoint){var e=t.shiftKey;this._select_event(t,e,this.model.renderers)}},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];if(t.keyCode===o.Keys.Backspace)this._delete_selected(n);else if(t.keyCode==o.Keys.Esc){var r=n.data_source;r.selection_manager.clear()}}},e.prototype._set_extent=function(t,e,i,n){var r=t[0],o=t[1],s=e[0],a=e[1];void 0===n&&(n=!1);var l=this.model.renderers[0],h=this.plot_model.frame,u=l.glyph,c=l.data_source,_=h.xscales[l.x_range_name],p=h.yscales[l.y_range_name],d=_.r_invert(r,o),f=d[0],v=d[1],m=p.r_invert(s,a),g=m[0],y=m[1],b=[(f+v)/2,(g+y)/2],x=b[0],w=b[1],k=[v-f,y-g],S=k[0],C=k[1],T=[u.x.field,u.y.field],A=T[0],E=T[1],M=[u.width.field,u.height.field],O=M[0],z=M[1];if(i)this._pop_glyphs(c,this.model.num_objects),A&&c.get_array(A).push(x),E&&c.get_array(E).push(w),O&&c.get_array(O).push(S),z&&c.get_array(z).push(C),this._pad_empty_columns(c,[A,E,O,z]);else{var P=c.data[A].length-1;A&&(c.data[A][P]=x),E&&(c.data[E][P]=w),O&&(c.data[O][P]=S),z&&(c.data[z][P]=C)}this._emit_cds_changes(c,!0,!1,n)},e.prototype._update_box=function(t,e,i){if(void 0===e&&(e=!1),void 0===i&&(i=!1),null!=this._draw_basepoint){var n=[t.sx,t.sy],r=this.plot_model.frame,o=this.model.dimensions,s=this.model._get_dim_limits(this._draw_basepoint,n,r,o);if(null!=s){var a=s[0],l=s[1];this._set_extent(a,l,e,i)}}},e.prototype._doubletap=function(t){this.model.active&&(null!=this._draw_basepoint?(this._update_box(t,!1,!0),this._draw_basepoint=null):(this._draw_basepoint=[t.sx,t.sy],this._select_event(t,!0,this.model.renderers),this._update_box(t,!0,!1)))},e.prototype._move=function(t){this._update_box(t,!1,!1)},e.prototype._pan_start=function(t){if(t.shiftKey){if(null!=this._draw_basepoint)return;this._draw_basepoint=[t.sx,t.sy],this._update_box(t,!0,!1)}else{if(null!=this._basepoint)return;this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy]}},e.prototype._pan=function(t,e,i){if(void 0===e&&(e=!1),void 0===i&&(i=!1),t.shiftKey){if(null==this._draw_basepoint)return;this._update_box(t,e,i)}else{if(null==this._basepoint)return;this._drag_points(t,this.model.renderers)}},e.prototype._pan_end=function(t){if(this._pan(t,!1,!0),t.shiftKey)this._draw_basepoint=null;else{this._basepoint=null;for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source,!1,!0,!0)}}},e}(s.EditToolView);i.BoxEditToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Edit Tool\",e.icon=\"bk-tool-icon-box-edit\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxEditTool\",this.prototype.default_view=a,this.define({dimensions:[r.Dimensions,\"both\"],num_objects:[r.Int,0]})},t}(s.EditTool);(i.BoxEditTool=l).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(21),l=t(44),s=t(251),a=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._mouse_in_frame=!0,t}return n.__extends(t,e),t.prototype._move_enter=function(t){this._mouse_in_frame=!0},t.prototype._move_exit=function(t){this._mouse_in_frame=!1},t.prototype._map_drag=function(t,e,i){var n=this.plot_model.frame;if(!n.bbox.contains(t,e))return null;var r=n.xscales[i.x_range_name].invert(t),o=n.yscales[i.y_range_name].invert(e);return[r,o]},t.prototype._delete_selected=function(t){var e=t.data_source,i=e.selected.indices;i.sort();for(var n=0,r=e.columns();n<r.length;n++)for(var o=r[n],s=e.get_array(o),a=0;a<i.length;a++){var l=i[a];s.splice(l-a,1)}this._emit_cds_changes(e)},t.prototype._pop_glyphs=function(t,e){var i=t.columns();if(e&&i.length)for(var n=0,r=i;n<r.length;n++){var o=r[n],s=t.get_array(o),a=s.length-e+1;a<1||(l.isArray(s)||(s=Array.from(s),t.data[o]=s),s.splice(0,a))}},t.prototype._emit_cds_changes=function(t,e,i,n){void 0===e&&(e=!0),void 0===i&&(i=!0),void 0===n&&(n=!0),i&&t.selection_manager.clear(),e&&t.change.emit(),n&&(t.data=t.data,t.properties.data.change.emit())},t.prototype._drag_points=function(t,e){if(null!=this._basepoint){for(var i=this._basepoint,n=i[0],r=i[1],o=0,s=e;o<s.length;o++){var a=s[o],l=this._map_drag(n,r,a),h=this._map_drag(t.sx,t.sy,a);if(null!=h&&null!=l){for(var u=h[0],c=h[1],_=l[0],p=l[1],d=[u-_,c-p],f=d[0],v=d[1],m=a.glyph,g=a.data_source,y=[m.x.field,m.y.field],b=y[0],x=y[1],w=0,k=g.selected.indices;w<k.length;w++){var S=k[w];b&&(g.data[b][S]+=f),x&&(g.data[x][S]+=v)}g.change.emit()}}this._basepoint=[t.sx,t.sy]}},t.prototype._pad_empty_columns=function(t,e){for(var i=0,n=t.columns();i<n.length;i++){var r=n[i];o.includes(e,r)||t.get_array(r).push(this.model.empty_value)}},t.prototype._select_event=function(t,e,i){var n=this.plot_model.frame,r=t.sx,o=t.sy;if(!n.bbox.contains(r,o))return[];for(var s={type:\"point\",sx:r,sy:o},a=[],l=0,h=i;l<h.length;l++){var u=h[l],c=u.get_selection_manager(),_=u.data_source,p=[this.plot_view.renderer_views[u.id]],d=c.select(p,s,!0,e);d&&a.push(u),_.properties.selected.change.emit()}return a},t}(s.GestureToolView);i.EditToolView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EditTool\",this.define({custom_icon:[r.String],custom_tooltip:[r.String],empty_value:[r.Any],renderers:[r.Array,[]]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.custom_tooltip||this.tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.custom_icon||this.icon},enumerable:!0,configurable:!0}),t}(s.GestureTool);(i.EditTool=h).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),v=t(44),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._draw=function(t,e,i){if(void 0===i&&(i=!1),this.model.active){var n=this.model.renderers[0],r=this._map_drag(t.sx,t.sy,n);if(null!=r){var o=r[0],s=r[1],a=n.data_source,l=n.glyph,h=[l.xs.field,l.ys.field],u=h[0],c=h[1];if(\"new\"==e)this._pop_glyphs(a,this.model.num_objects),u&&a.get_array(u).push([o]),c&&a.get_array(c).push([s]),this._pad_empty_columns(a,[u,c]);else if(\"add\"==e){if(u){var _=a.data[u].length-1,p=a.get_array(u)[_];v.isArray(p)||(p=Array.from(p),a.data[u][_]=p),p.push(o)}if(c){var d=a.data[c].length-1,f=a.get_array(c)[d];v.isArray(f)||(f=Array.from(f),a.data[c][d]=f),f.push(s)}}this._emit_cds_changes(a,!0,!0,i)}}},e.prototype._pan_start=function(t){this._draw(t,\"new\")},e.prototype._pan=function(t){this._draw(t,\"add\")},e.prototype._pan_end=function(t){this._draw(t,\"add\",!0)},e.prototype._tap=function(t){this._select_event(t,t.shiftKey,this.model.renderers)},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Esc?n.data_source.selection_manager.clear():t.keyCode===r.Keys.Backspace&&this._delete_selected(n)}},e}(s.EditToolView);i.FreehandDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Freehand Draw Tool\",e.icon=\"bk-tool-icon-freehand-draw\",e.event_type=[\"pan\",\"tap\"],e.default_order=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"FreehandDrawTool\",this.prototype.default_view=a,this.define({num_objects:[o.Int,0]})},t}(s.EditTool);(i.FreehandDrawTool=l).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._tap=function(t){var e=t.shiftKey,i=this._select_event(t,e,this.model.renderers);if(!i.length&&this.model.add){var n=this.model.renderers[0],r=this._map_drag(t.sx,t.sy,n);if(null!=r){var o=n.glyph,s=n.data_source,a=[o.x.field,o.y.field],l=a[0],h=a[1],u=r[0],c=r[1];this._pop_glyphs(s,this.model.num_objects),l&&s.get_array(l).push(u),h&&s.get_array(h).push(c),this._pad_empty_columns(s,[l,h]),s.change.emit(),s.data=s.data,s.properties.data.change.emit()}}},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Backspace?this._delete_selected(n):t.keyCode==r.Keys.Esc&&n.data_source.selection_manager.clear()}},e.prototype._pan_start=function(t){this.model.drag&&(this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy])},e.prototype._pan=function(t){this.model.drag&&null!=this._basepoint&&this._drag_points(t,this.model.renderers)},e.prototype._pan_end=function(t){if(this.model.drag){this._pan(t);for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source,!1,!0,!0)}this._basepoint=null}},e}(s.EditToolView);i.PointDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Point Draw Tool\",e.icon=\"bk-tool-icon-point-draw\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=2,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PointDrawTool\",this.prototype.default_view=a,this.define({add:[o.Bool,!0],drag:[o.Bool,!0],num_objects:[o.Int,0]})},t}(s.EditTool);(i.PointDrawTool=l).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),y=t(44),s=t(248),a=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._drawing=!1,t._initialized=!1,t}return n.__extends(t,e),t.prototype._tap=function(t){this._drawing?this._draw(t,\"add\",!0):this._select_event(t,t.shiftKey,this.model.renderers)},t.prototype._draw=function(t,e,i){var n;void 0===i&&(i=!1);var r=this.model.renderers[0],o=this._map_drag(t.sx,t.sy,r);if(this._initialized||this.activate(),null!=o){var s=o[0],a=o[1];n=this._snap_to_vertex(t,s,a),s=n[0],a=n[1];var l=r.data_source,h=r.glyph,u=[h.xs.field,h.ys.field],c=u[0],_=u[1];if(\"new\"==e)this._pop_glyphs(l,this.model.num_objects),c&&l.get_array(c).push([s,s]),_&&l.get_array(_).push([a,a]),this._pad_empty_columns(l,[c,_]);else if(\"edit\"==e){if(c){var p=l.data[c][l.data[c].length-1];p[p.length-1]=s}if(_){var d=l.data[_][l.data[_].length-1];d[d.length-1]=a}}else if(\"add\"==e){if(c){var f=l.data[c].length-1,p=l.get_array(c)[f],v=p[p.length-1];p[p.length-1]=s,y.isArray(p)||(p=Array.from(p),l.data[c][f]=p),p.push(v)}if(_){var m=l.data[_].length-1,d=l.get_array(_)[m],g=d[d.length-1];d[d.length-1]=a,y.isArray(d)||(d=Array.from(d),l.data[_][m]=d),d.push(g)}}this._emit_cds_changes(l,!0,!1,i)}},t.prototype._show_vertices=function(){for(var t=[],e=[],i=0;i<this.model.renderers.length;i++){var n=this.model.renderers[i],r=n.data_source,o=n.glyph,s=[o.xs.field,o.ys.field],a=s[0],l=s[1];if(a)for(var h=0,u=r.get_array(a);h<u.length;h++){var c=u[h];Array.prototype.push.apply(t,c)}if(l)for(var _=0,p=r.get_array(l);_<p.length;_++){var c=p[_];Array.prototype.push.apply(e,c)}this._drawing&&i==this.model.renderers.length-1&&(t.splice(t.length-1,1),e.splice(e.length-1,1))}this._set_vertices(t,e)},t.prototype._doubletap=function(t){this.model.active&&(this._drawing?(this._drawing=!1,this._draw(t,\"edit\",!0)):(this._drawing=!0,this._draw(t,\"new\",!0)))},t.prototype._move=function(t){this._drawing&&this._draw(t,\"edit\")},t.prototype._remove=function(){var t=this.model.renderers[0],e=t.data_source,i=t.glyph,n=[i.xs.field,i.ys.field],r=n[0],o=n[1];if(r){var s=e.data[r].length-1,a=e.get_array(r)[s];a.splice(a.length-1,1)}if(o){var l=e.data[o].length-1,h=e.get_array(o)[l];h.splice(h.length-1,1)}this._emit_cds_changes(e)},t.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Backspace?this._delete_selected(n):t.keyCode==r.Keys.Esc&&(this._drawing&&(this._remove(),this._drawing=!1),n.data_source.selection_manager.clear())}},t.prototype._pan_start=function(t){this.model.drag&&(this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy])},t.prototype._pan=function(t){if(null!=this._basepoint&&this.model.drag){for(var e=this._basepoint,i=e[0],n=e[1],r=0,o=this.model.renderers;r<o.length;r++){var s=o[r],a=this._map_drag(i,n,s),l=this._map_drag(t.sx,t.sy,s);if(null!=l&&null!=a){var h=s.data_source,u=s.glyph,c=[u.xs.field,u.ys.field],_=c[0],p=c[1];if(_||p){for(var d=l[0],f=l[1],v=a[0],m=a[1],g=[d-v,f-m],y=g[0],b=g[1],x=0,w=h.selected.indices;x<w.length;x++){var k=w[x],S=void 0,C=void 0,T=void 0;_&&(C=h.data[_][k]),p?(T=h.data[p][k],S=T.length):S=C.length;for(var A=0;A<S;A++)C&&(C[A]+=y),T&&(T[A]+=b)}h.change.emit()}}}this._basepoint=[t.sx,t.sy]}},t.prototype._pan_end=function(t){if(this.model.drag){this._pan(t);for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source)}this._basepoint=null}},t.prototype.activate=function(){var t=this;if(this.model.vertex_renderer&&this.model.active){if(this._show_vertices(),!this._initialized)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e],r=n.data_source;r.connect(r.properties.data.change,function(){return t._show_vertices()})}this._initialized=!0}},t.prototype.deactivate=function(){this._drawing&&(this._remove(),this._drawing=!1),this.model.vertex_renderer&&this._hide_vertices()},t}(s.PolyToolView);i.PolyDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Polygon Draw Tool\",e.icon=\"bk-tool-icon-poly-draw\",e.event_type=[\"pan\",\"tap\",\"move\"],e.default_order=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolyDrawTool\",this.prototype.default_view=a,this.define({drag:[o.Bool,!0],num_objects:[o.Int,0]})},t}(s.PolyTool);(i.PolyDrawTool=l).initClass()},function(t,e,i){var n=t(391),o=t(5),c=t(44),r=t(248),s=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._drawing=!1,t}return n.__extends(t,e),t.prototype._doubletap=function(t){if(this.model.active){var e=this._map_drag(t.sx,t.sy,this.model.vertex_renderer);if(null!=e){var i=e[0],n=e[1],r=this._select_event(t,!1,[this.model.vertex_renderer]),o=this.model.vertex_renderer.data_source,s=this.model.vertex_renderer.glyph,a=[s.x.field,s.y.field],l=a[0],h=a[1];if(r.length&&null!=this._selected_renderer){var u=o.selected.indices[0];this._drawing?(this._drawing=!1,o.selection_manager.clear()):(o.selected.indices=[u+1],l&&o.get_array(l).splice(u+1,0,i),h&&o.get_array(h).splice(u+1,0,n),this._drawing=!0),o.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}else this._show_vertices(t)}}},t.prototype._show_vertices=function(t){if(this.model.active){var e=this._select_event(t,!1,this.model.renderers);if(!e.length)return this._set_vertices([],[]),this._selected_renderer=null,void(this._drawing=!1);var i,n,r=e[0],o=r.glyph,s=r.data_source,a=s.selected.indices[0],l=[o.xs.field,o.ys.field],h=l[0],u=l[1];h?(i=s.data[h][a],c.isArray(i)||(s.data[h][a]=i=Array.from(i))):i=o.xs.value,u?(n=s.data[u][a],c.isArray(n)||(s.data[u][a]=n=Array.from(n))):n=o.ys.value,this._selected_renderer=r,this._set_vertices(i,n)}},t.prototype._move=function(t){var e;if(this._drawing&&null!=this._selected_renderer){var i=this.model.vertex_renderer,n=i.data_source,r=i.glyph,o=this._map_drag(t.sx,t.sy,i);if(null==o)return;var s=o[0],a=o[1],l=n.selected.indices;e=this._snap_to_vertex(t,s,a),s=e[0],a=e[1],n.selected.indices=l;var h=[r.x.field,r.y.field],u=h[0],c=h[1],_=l[0];u&&(n.data[u][_]=s),c&&(n.data[c][_]=a),n.change.emit(),this._selected_renderer.data_source.change.emit()}},t.prototype._tap=function(t){var e,i=this.model.vertex_renderer,n=this._map_drag(t.sx,t.sy,i);if(null!=n){if(this._drawing&&this._selected_renderer){var r=n[0],o=n[1],s=i.data_source,a=i.glyph,l=[a.x.field,a.y.field],h=l[0],u=l[1],c=s.selected.indices;e=this._snap_to_vertex(t,r,o),r=e[0],o=e[1];var _=c[0];if(s.selected.indices=[_+1],h){var p=s.get_array(h),d=p[_];p[_]=r,p.splice(_+1,0,d)}if(u){var f=s.get_array(u),v=f[_];f[_]=o,f.splice(_+1,0,v)}return s.change.emit(),void this._emit_cds_changes(this._selected_renderer.data_source,!0,!1,!0)}var m=t.shiftKey;this._select_event(t,m,[i]),this._select_event(t,m,this.model.renderers)}},t.prototype._remove_vertex=function(){if(this._drawing&&this._selected_renderer){var t=this.model.vertex_renderer,e=t.data_source,i=t.glyph,n=e.selected.indices[0],r=[i.x.field,i.y.field],o=r[0],s=r[1];o&&e.get_array(o).splice(n,1),s&&e.get_array(s).splice(n,1),e.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}},t.prototype._pan_start=function(t){this._select_event(t,!0,[this.model.vertex_renderer]),this._basepoint=[t.sx,t.sy]},t.prototype._pan=function(t){null!=this._basepoint&&(this._drag_points(t,[this.model.vertex_renderer]),this._selected_renderer&&this._selected_renderer.data_source.change.emit())},t.prototype._pan_end=function(t){null!=this._basepoint&&(this._drag_points(t,[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)},t.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame){var e;e=this._selected_renderer?[this.model.vertex_renderer]:this.model.renderers;for(var i=0,n=e;i<n.length;i++){var r=n[i];t.keyCode===o.Keys.Backspace?(this._delete_selected(r),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source)):t.keyCode==o.Keys.Esc&&(this._drawing?(this._remove_vertex(),this._drawing=!1):this._selected_renderer&&this._hide_vertices(),r.data_source.selection_manager.clear())}}},t.prototype.deactivate=function(){this._selected_renderer&&(this._drawing&&(this._remove_vertex(),this._drawing=!1),this._hide_vertices())},t}(r.PolyToolView);i.PolyEditToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Poly Edit Tool\",e.icon=\"bk-tool-icon-poly-edit\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=4,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolyEditTool\",this.prototype.default_view=s},t}(r.PolyTool);(i.PolyEditTool=a).initClass()},function(t,e,i){var n=t(391),r=t(15),a=t(44),o=t(243),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_vertices=function(t,e){var i=this.model.vertex_renderer.glyph,n=this.model.vertex_renderer.data_source,r=[i.x.field,i.y.field],o=r[0],s=r[1];o&&(a.isArray(t)?n.data[o]=t:i.x={value:t}),s&&(a.isArray(e)?n.data[s]=e:i.y={value:e}),this._emit_cds_changes(n,!0,!0,!1)},e.prototype._hide_vertices=function(){this._set_vertices([],[])},e.prototype._snap_to_vertex=function(t,e,i){if(this.model.vertex_renderer){var n=this._select_event(t,!1,[this.model.vertex_renderer]),r=this.model.vertex_renderer.data_source,o=this.model.vertex_renderer.glyph,s=[o.x.field,o.y.field],a=s[0],l=s[1];if(n.length){var h=r.selected.indices[0];a&&(e=r.data[a][h]),l&&(i=r.data[l][h]),r.selection_manager.clear()}}return[e,i]},e}(o.EditToolView);i.PolyToolView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PolyTool\",this.prototype.default_view=s,this.define({vertex_renderer:[r.Instance]})},t}(o.EditTool);(i.PolyTool=l).initClass()},function(t,e,i){var v=t(391),n=t(256),r=t(64),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return v.__extends(e,t),e.prototype._compute_limits=function(t){var e=this.plot_model.frame,i=this.model.dimensions,n=this._base_point;if(\"center\"==this.model.origin){var r=n[0],o=n[1],s=t[0],a=t[1];n=[r-(s-r),o-(a-o)]}return this.model._get_dim_limits(n,t,e,i)},e.prototype._pan_start=function(t){var e=t.sx,i=t.sy;this._base_point=[e,i]},e.prototype._pan=function(t){var e=t.sx,i=t.sy,n=[e,i],r=this._compute_limits(n),o=r[0],s=r[1];if(this.model.overlay.update({left:o[0],right:o[1],top:s[0],bottom:s[1]}),this.model.select_every_mousemove){var a=t.shiftKey;this._do_select(o,s,!1,a)}},e.prototype._pan_end=function(t){var e=t.sx,i=t.sy,n=[e,i],r=this._compute_limits(n),o=r[0],s=r[1],a=t.shiftKey;this._do_select(o,s,!0,a),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null,this.plot_view.push_state(\"box_select\",{selection:this.plot_view.get_selection()})},e.prototype._do_select=function(t,e,i,n){var r=t[0],o=t[1],s=e[0],a=e[1];void 0===n&&(n=!1);var l={type:\"rect\",sx0:r,sx1:o,sy0:s,sy1:a};this._select(l,i,n)},e.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=t.sx0,s=t.sx1,a=t.sy0,l=t.sy1,h=n.r_invert(o,s),u=h[0],c=h[1],_=r.r_invert(a,l),p=_[0],d=_[1],f=v.__assign({x0:u,y0:p,x1:c,y1:d},t);this.model.callback.execute(this.model,{geometry:f})},e}(n.SelectToolView);i.BoxSelectToolView=s;var a=function(){return new r.BoxAnnotation({level:\"overlay\",render_mode:\"css\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Select\",e.icon=\"bk-tool-icon-box-select\",e.event_type=\"pan\",e.default_order=30,e}return v.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxSelectTool\",this.prototype.default_view=s,this.define({dimensions:[o.Dimensions,\"both\"],select_every_mousemove:[o.Bool,!1],callback:[o.Instance],overlay:[o.Instance,a],origin:[o.String,\"corner\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(n.SelectTool);(i.BoxSelectTool=l).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(64),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._match_aspect=function(t,e,i){var n,r,o,s,a=i.bbox.aspect,l=i.bbox.h_range.end,h=i.bbox.h_range.start,u=i.bbox.v_range.end,c=i.bbox.v_range.start,_=Math.abs(t[0]-e[0]),p=Math.abs(t[1]-e[1]),d=0==p?0:_/p,f=(a<=d?[1,d/a]:[a/d,1])[0];return t[0]<=e[0]?(n=t[0],r=t[0]+_*f,l<r&&(r=l)):(r=t[0],(n=t[0]-_*f)<h&&(n=h)),_=Math.abs(r-n),t[1]<=e[1]?(s=t[1],o=t[1]+_/a,u<o&&(o=u)):(o=t[1],(s=t[1]-_/a)<c&&(s=c)),p=Math.abs(o-s),t[0]<=e[0]?r=t[0]+a*p:n=t[0]-a*p,[[n,r],[s,o]]},e.prototype._compute_limits=function(t){var e,i,n,r,o=this.plot_model.frame,s=this.model.dimensions,a=this._base_point;if(\"center\"==this.model.origin){var l=a[0],h=a[1],u=t[0],c=t[1];a=[l-(u-l),h-(c-h)]}return this.model.match_aspect&&\"both\"==s?(e=this._match_aspect(a,t,o),n=e[0],r=e[1]):(i=this.model._get_dim_limits(a,t,o,s),n=i[0],r=i[1]),[n,r]},e.prototype._pan_start=function(t){this._base_point=[t.sx,t.sy]},e.prototype._pan=function(t){var e=[t.sx,t.sy],i=this._compute_limits(e),n=i[0],r=i[1];this.model.overlay.update({left:n[0],right:n[1],top:r[0],bottom:r[1]})},e.prototype._pan_end=function(t){var e=[t.sx,t.sy],i=this._compute_limits(e),n=i[0],r=i[1];this._update(n,r),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null},e.prototype._update=function(t,e){var i=t[0],n=t[1],r=e[0],o=e[1];if(!(Math.abs(n-i)<=5||Math.abs(o-r)<=5)){var s=this.plot_model.frame,a=s.xscales,l=s.yscales,h={};for(var u in a){var c=a[u],_=c.r_invert(i,n),p=_[0],d=_[1];h[u]={start:p,end:d}}var f={};for(var v in l){var c=l[v],m=c.r_invert(r,o),p=m[0],d=m[1];f[v]={start:p,end:d}}var g={xrs:h,yrs:f};this.plot_view.push_state(\"box_zoom\",{range:g}),this.plot_view.update_range(g)}},e}(r.GestureToolView);i.BoxZoomToolView=a;var l=function(){return new o.BoxAnnotation({level:\"overlay\",render_mode:\"css\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Zoom\",e.icon=\"bk-tool-icon-box-zoom\",e.event_type=\"pan\",e.default_order=20,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxZoomTool\",this.prototype.default_view=a,this.define({dimensions:[s.Dimensions,\"both\"],overlay:[s.Instance,l],match_aspect:[s.Bool,!1],origin:[s.String,\"corner\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.BoxZoomTool=h).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(265),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.ButtonToolView);i.GestureToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.button_view=o.OnOffButtonView,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"GestureTool\"},t}(r.ButtonTool);(i.GestureTool=a).initClass()},function(t,e,i){var l=t(391),n=t(256),r=t(71),o=t(5),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return l.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.data=null},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){return t._active_change()})},t.prototype._active_change=function(){this.model.active||this._clear_overlay()},t.prototype._keyup=function(t){t.keyCode==o.Keys.Enter&&this._clear_overlay()},t.prototype._pan_start=function(t){var e=t.sx,i=t.sy;this.data={sx:[e],sy:[i]}},t.prototype._pan=function(t){var e=t.sx,i=t.sy,n=this.plot_model.frame.bbox.clip(e,i),r=n[0],o=n[1];this.data.sx.push(r),this.data.sy.push(o);var s=this.model.overlay;if(s.update({xs:this.data.sx,ys:this.data.sy}),this.model.select_every_mousemove){var a=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!1,a)}},t.prototype._pan_end=function(t){this._clear_overlay();var e=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!0,e),this.plot_view.push_state(\"lasso_select\",{selection:this.plot_view.get_selection()})},t.prototype._clear_overlay=function(){this.model.overlay.update({xs:[],ys:[]})},t.prototype._do_select=function(t,e,i,n){var r={type:\"poly\",sx:t,sy:e};this._select(r,i,n)},t.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=n.v_invert(t.sx),s=r.v_invert(t.sy),a=l.__assign({x:o,y:s},t);this.model.callback.execute(this.model,{geometry:a})},t}(n.SelectToolView);i.LassoSelectToolView=a;var h=function(){return new r.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},u=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Lasso Select\",e.icon=\"bk-tool-icon-lasso-select\",e.event_type=\"pan\",e.default_order=12,e}return l.__extends(t,i),t.initClass=function(){this.prototype.type=\"LassoSelectTool\",this.prototype.default_view=a,this.define({select_every_mousemove:[s.Bool,!0],callback:[s.Instance],overlay:[s.Instance,h]})},t}(n.SelectTool);(i.LassoSelectTool=u).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._pan_start=function(t){this.last_dx=0,this.last_dy=0;var e=t.sx,i=t.sy,n=this.plot_model.frame.bbox;if(!n.contains(e,i)){var r=n.h_range,o=n.v_range;(e<r.start||e>r.end)&&(this.v_axis_only=!0),(i<o.start||i>o.end)&&(this.h_axis_only=!0)}null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e.prototype._pan=function(t){this._update(t.deltaX,t.deltaY),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e.prototype._pan_end=function(t){this.h_axis_only=!1,this.v_axis_only=!1,null!=this.pan_info&&this.plot_view.push_state(\"pan\",{range:this.pan_info})},e.prototype._update=function(t,e){var i,n,r,o,s,a,l=this.plot_model.frame,h=t-this.last_dx,u=e-this.last_dy,c=l.bbox.h_range,_=c.start-h,p=c.end-h,d=l.bbox.v_range,f=d.start-u,v=d.end-u,m=this.model.dimensions;\"width\"!=m&&\"both\"!=m||this.v_axis_only?(i=c.start,n=c.end,r=0):(i=_,n=p,r=-h),\"height\"!=m&&\"both\"!=m||this.h_axis_only?(o=d.start,s=d.end,a=0):(o=f,s=v,a=-u),this.last_dx=t,this.last_dy=e;var g=l.xscales,y=l.yscales,b={};for(var x in g){var w=g[x],k=w.r_invert(i,n),S=k[0],C=k[1];b[x]={start:S,end:C}}var T={};for(var A in y){var w=y[A],E=w.r_invert(o,s),S=E[0],C=E[1];T[A]={start:S,end:C}}this.pan_info={xrs:b,yrs:T,sdx:r,sdy:a},this.plot_view.update_range(this.pan_info,!0)},e}(r.GestureToolView);i.PanToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Pan\",e.event_type=\"pan\",e.default_order=10,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PanTool\",this.prototype.default_view=s,this.define({dimensions:[o.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(\"Pan\",this.dimensions)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"icon\",{get:function(){switch(this.dimensions){case\"both\":return\"bk-tool-icon-pan\";case\"width\":return\"bk-tool-icon-xpan\";case\"height\":return\"bk-tool-icon-ypan\"}},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.PanTool=a).initClass()},function(t,e,i){var l=t(391),n=t(256),r=t(71),o=t(5),s=t(15),a=t(21),h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return l.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.data={sx:[],sy:[]}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){return t._active_change()})},t.prototype._active_change=function(){this.model.active||this._clear_data()},t.prototype._keyup=function(t){t.keyCode==o.Keys.Enter&&this._clear_data()},t.prototype._doubletap=function(t){var e=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!0,e),this.plot_view.push_state(\"poly_select\",{selection:this.plot_view.get_selection()}),this._clear_data()},t.prototype._clear_data=function(){this.data={sx:[],sy:[]},this.model.overlay.update({xs:[],ys:[]})},t.prototype._tap=function(t){var e=t.sx,i=t.sy,n=this.plot_model.frame;n.bbox.contains(e,i)&&(this.data.sx.push(e),this.data.sy.push(i),this.model.overlay.update({xs:a.copy(this.data.sx),ys:a.copy(this.data.sy)}))},t.prototype._do_select=function(t,e,i,n){var r={type:\"poly\",sx:t,sy:e};this._select(r,i,n)},t.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=n.v_invert(t.sx),s=r.v_invert(t.sy),a=l.__assign({x:o,y:s},t);this.model.callback.execute(this.model,{geometry:a})},t}(n.SelectToolView);i.PolySelectToolView=h;var u=function(){return new r.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},c=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Poly Select\",e.icon=\"bk-tool-icon-polygon-select\",e.event_type=\"tap\",e.default_order=11,e}return l.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolySelectTool\",this.prototype.default_view=h,this.define({callback:[s.Instance],overlay:[s.Instance,u]})},t}(n.SelectTool);(i.PolySelectTool=c).initClass()},function(t,e,i){var n=t(391),_=t(64),r=t(14),o=t(15),s=t(251);function p(t,e,i,n){if(null==e)return!1;var r=i.compute(e);return Math.abs(t-r)<n}function d(t,e,i,n,r){var o=!0;if(null!=r.left&&null!=r.right){var s=i.invert(t);(s<r.left||s>r.right)&&(o=!1)}if(null!=r.bottom&&null!=r.top){var a=n.invert(e);(a<r.bottom||a>r.top)&&(o=!1)}return o}function l(t,e,i,n){var r=e.compute(t),o=e.invert(r+i);return o>=n.start&&o<=n.end?o:t}function h(t,e,i,n){var r=e.r_compute(t.start,t.end),o=r[0],s=r[1],a=e.r_invert(o+i,s+i),l=a[0],h=a[1];l>=n.start&&l<=n.end&&h>=n.start&&h<=n.end&&(t.start=l,t.end=h)}i.is_near=p,i.is_inside=d,i.compute_value=l,i.update_range=h;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.side=0,this.model.update_overlay_from_ranges()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),null!=this.model.x_range&&this.connect(this.model.x_range.change,function(){return t.model.update_overlay_from_ranges()}),null!=this.model.y_range&&this.connect(this.model.y_range.change,function(){return t.model.update_overlay_from_ranges()})},t.prototype._pan_start=function(t){this.last_dx=0,this.last_dy=0;var e=this.model.x_range,i=this.model.y_range,n=this.plot_model.frame,r=n.xscales.default,o=n.yscales.default,s=this.model.overlay,a=s.left,l=s.right,h=s.top,u=s.bottom,c=this.model.overlay.properties.line_width.value()+_.EDGE_TOLERANCE;null!=e&&this.model.x_interaction&&(p(t.sx,a,r,c)?this.side=1:p(t.sx,l,r,c)?this.side=2:d(t.sx,t.sy,r,o,s)&&(this.side=3)),null!=i&&this.model.y_interaction&&(0==this.side&&p(t.sy,u,o,c)&&(this.side=4),0==this.side&&p(t.sy,h,o,c)?this.side=5:d(t.sx,t.sy,r,o,this.model.overlay)&&(3==this.side?this.side=7:this.side=6))},t.prototype._pan=function(t){var e=this.plot_model.frame,i=t.deltaX-this.last_dx,n=t.deltaY-this.last_dy,r=this.model.x_range,o=this.model.y_range,s=e.xscales.default,a=e.yscales.default;null!=r&&(3==this.side||7==this.side?h(r,s,i,e.x_range):1==this.side?r.start=l(r.start,s,i,e.x_range):2==this.side&&(r.end=l(r.end,s,i,e.x_range))),null!=o&&(6==this.side||7==this.side?h(o,a,n,e.y_range):4==this.side?o.start=l(o.start,a,n,e.y_range):5==this.side&&(o.end=l(o.end,a,n,e.y_range))),this.last_dx=t.deltaX,this.last_dy=t.deltaY},t.prototype._pan_end=function(t){this.side=0},t}(s.GestureToolView);i.RangeToolView=a;var u=function(){return new _.BoxAnnotation({level:\"overlay\",render_mode:\"css\",fill_color:\"lightgrey\",fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:.5},line_dash:[2,2]})},c=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Range Tool\",e.icon=\"bk-tool-icon-range\",e.event_type=\"pan\",e.default_order=1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"RangeTool\",this.prototype.default_view=a,this.define({x_range:[o.Instance,null],x_interaction:[o.Bool,!0],y_range:[o.Instance,null],y_interaction:[o.Bool,!0],overlay:[o.Instance,u]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),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},t.prototype.update_overlay_from_ranges=function(){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)},t}(s.GestureTool);(i.RangeTool=c).initClass()},function(t,e,i){var y=t(391),n=t(251),o=t(186),r=t(271),s=t(15),a=t(5),b=t(3),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return y.__extends(e,t),Object.defineProperty(e.prototype,\"computed_renderers\",{get:function(){var t=this.model.renderers,e=this.plot_model.plot.renderers,i=this.model.names;return r.compute_renderers(t,e,i)},enumerable:!0,configurable:!0}),e.prototype._computed_renderers_by_data_source=function(){for(var t={},e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=void 0;(r=n instanceof o.GraphRenderer?n.node_renderer.data_source.id:n.data_source.id)in t||(t[r]=[]),t[r].push(n)}return t},e.prototype._keyup=function(t){if(t.keyCode==a.Keys.Esc){for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=n.data_source,o=r.selection_manager;o.clear()}this.plot_view.request_render()}},e.prototype._select=function(t,e,i){var n=this._computed_renderers_by_data_source();for(var r in n){for(var o=n[r],s=o[0].get_selection_manager(),a=[],l=0,h=o;l<h.length;l++){var u=h[l];u.id in this.plot_view.renderer_views&&a.push(this.plot_view.renderer_views[u.id])}s.select(a,t,e,i)}null!=this.model.callback&&this._emit_callback(t),this._emit_selection_event(t,e)},e.prototype._emit_selection_event=function(t,e){void 0===e&&(e=!0);var i,n=this.plot_model.frame.xscales.default,r=this.plot_model.frame.yscales.default;switch(t.type){case\"point\":var o=t.sx,s=t.sy,a=n.invert(o),l=r.invert(s);i=y.__assign({},t,{x:a,y:l});break;case\"rect\":var h=t.sx0,u=t.sx1,c=t.sy0,_=t.sy1,p=n.r_invert(h,u),d=p[0],f=p[1],v=r.r_invert(c,_),m=v[0],g=v[1];i=y.__assign({},t,{x0:d,y0:m,x1:f,y1:g});break;case\"poly\":var o=t.sx,s=t.sy,a=n.v_invert(o),l=r.v_invert(s);i=y.__assign({},t,{x:a,y:l});break;default:throw new Error(\"Unrecognized selection geometry type: '\"+t.type+\"'\")}this.plot_model.plot.trigger_event(new b.SelectionGeometry({geometry:i,final:e}))},e}(n.GestureToolView);i.SelectToolView=l;var h=function(e){function t(t){return e.call(this,t)||this}return y.__extends(t,e),t.initClass=function(){this.prototype.type=\"SelectTool\",this.define({renderers:[s.Any,\"auto\"],names:[s.Array,[]]})},t}(n.GestureTool);(i.SelectTool=h).initClass()},function(t,e,i){var x=t(391),n=t(256),r=t(15),w=t(44),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return x.__extends(e,t),e.prototype._tap=function(t){var e=t.sx,i=t.sy,n={type:\"point\",sx:e,sy:i},r=t.shiftKey;this._select(n,!0,r)},e.prototype._select=function(t,e,i){var n=this,r=this.model.callback;if(\"select\"==this.model.behavior){var o=this._computed_renderers_by_data_source();for(var s in o){var a=o[s],l=a[0].get_selection_manager(),h=a.map(function(t){return n.plot_view.renderer_views[t.id]}),u=l.select(h,t,e,i);if(u&&null!=r){var c=this.plot_model.frame,_=c.xscales[a[0].x_range_name],p=c.yscales[a[0].y_range_name],d=_.invert(t.sx),f=p.invert(t.sy),v=x.__assign({},t,{x:d,y:f}),m={geometries:v,source:l.source};w.isFunction(r)?r(this,m):r.execute(this,m)}}this._emit_selection_event(t),this.plot_view.push_state(\"tap\",{selection:this.plot_view.get_selection()})}else for(var g=0,y=this.computed_renderers;g<y.length;g++){var b=y[g],l=b.get_selection_manager(),u=l.inspect(this.plot_view.renderer_views[b.id],t);if(u&&null!=r){var c=this.plot_model.frame,_=c.xscales[b.x_range_name],p=c.yscales[b.y_range_name],d=_.invert(t.sx),f=p.invert(t.sy),v=x.__assign({},t,{x:d,y:f}),m={geometries:v,source:l.source};w.isFunction(r)?r(this,m):r.execute(this,m)}}},e}(n.SelectToolView);i.TapToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Tap\",e.icon=\"bk-tool-icon-tap-select\",e.event_type=\"tap\",e.default_order=10,e}return x.__extends(t,i),t.initClass=function(){this.prototype.type=\"TapTool\",this.prototype.default_view=o,this.define({behavior:[r.String,\"select\"],callback:[r.Any]})},t}(n.SelectTool);(i.TapTool=s).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._scroll=function(t){var e=this.model.speed*t.delta;.9<e?e=.9:e<-.9&&(e=-.9),this._update_ranges(e)},e.prototype._update_ranges=function(t){var e,i,n,r,o=this.plot_model.frame,s=o.bbox.h_range,a=o.bbox.v_range,l=[s.start,s.end],h=l[0],u=l[1],c=[a.start,a.end],_=c[0],p=c[1];switch(this.model.dimension){case\"height\":var d=Math.abs(p-_);e=h,i=u,n=_-d*t,r=p-d*t;break;case\"width\":var f=Math.abs(u-h);e=h-f*t,i=u-f*t,n=_,r=p;break;default:throw new Error(\"this shouldn't have happened\")}var v=o.xscales,m=o.yscales,g={};for(var y in v){var b=v[y],x=b.r_invert(e,i),w=x[0],k=x[1];g[y]={start:w,end:k}}var S={};for(var C in m){var b=m[C],T=b.r_invert(n,r),w=T[0],k=T[1];S[C]={start:w,end:k}}var A={xrs:g,yrs:S,factor:t};this.plot_view.push_state(\"wheel_pan\",{range:A}),this.plot_view.update_range(A,!1,!0),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.GestureToolView);i.WheelPanToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Wheel Pan\",e.icon=\"bk-tool-icon-wheel-pan\",e.event_type=\"scroll\",e.default_order=12,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"WheelPanTool\",this.prototype.default_view=s,this.define({dimension:[o.Dimension,\"width\"]}),this.internal({speed:[o.Number,.001]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimension)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.WheelPanTool=a).initClass()},function(t,e,i){var n=t(391),r=t(251),c=t(46),o=t(15),s=t(20),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._pinch=function(t){var e,i=t.sx,n=t.sy,r=t.scale;e=1<=r?20*(r-1):-20/r,this._scroll({type:\"mousewheel\",sx:i,sy:n,delta:e})},e.prototype._scroll=function(t){var e=this.plot_model.frame,i=e.bbox.h_range,n=e.bbox.v_range,r=t.sx,o=t.sy,s=this.model.dimensions,a=(\"width\"==s||\"both\"==s)&&i.start<r&&r<i.end,l=(\"height\"==s||\"both\"==s)&&n.start<o&&o<n.end;if(a&&l||this.model.zoom_on_axis){var h=this.model.speed*t.delta,u=c.scale_range(e,h,a,l,{x:r,y:o});this.plot_view.push_state(\"wheel_zoom\",{range:u}),this.plot_view.update_range(u,!1,!0,this.model.maintain_focus),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)}},e}(r.GestureToolView);i.WheelZoomToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Wheel Zoom\",e.icon=\"bk-tool-icon-wheel-zoom\",e.event_type=s.is_mobile?\"pinch\":\"scroll\",e.default_order=10,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"WheelZoomTool\",this.prototype.default_view=a,this.define({dimensions:[o.Dimensions,\"both\"],maintain_focus:[o.Boolean,!0],zoom_on_axis:[o.Boolean,!0],speed:[o.Number,1/600]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.WheelZoomTool=l).initClass()},function(t,e,i){var n=t(232);i.ActionTool=n.ActionTool;var r=t(233);i.CustomAction=r.CustomAction;var o=t(234);i.HelpTool=o.HelpTool;var s=t(235);i.RedoTool=s.RedoTool;var a=t(236);i.ResetTool=a.ResetTool;var l=t(237);i.SaveTool=l.SaveTool;var h=t(238);i.UndoTool=h.UndoTool;var u=t(239);i.ZoomInTool=u.ZoomInTool;var c=t(240);i.ZoomOutTool=c.ZoomOutTool;var _=t(241);i.ButtonTool=_.ButtonTool;var p=t(243);i.EditTool=p.EditTool;var d=t(242);i.BoxEditTool=d.BoxEditTool;var f=t(244);i.FreehandDrawTool=f.FreehandDrawTool;var v=t(245);i.PointDrawTool=v.PointDrawTool;var m=t(246);i.PolyDrawTool=m.PolyDrawTool;var g=t(248);i.PolyTool=g.PolyTool;var y=t(247);i.PolyEditTool=y.PolyEditTool;var b=t(249);i.BoxSelectTool=b.BoxSelectTool;var x=t(250);i.BoxZoomTool=x.BoxZoomTool;var w=t(251);i.GestureTool=w.GestureTool;var k=t(252);i.LassoSelectTool=k.LassoSelectTool;var S=t(253);i.PanTool=S.PanTool;var C=t(254);i.PolySelectTool=C.PolySelectTool;var T=t(255);i.RangeTool=T.RangeTool;var A=t(256);i.SelectTool=A.SelectTool;var E=t(257);i.TapTool=E.TapTool;var M=t(258);i.WheelPanTool=M.WheelPanTool;var O=t(259);i.WheelZoomTool=O.WheelZoomTool;var z=t(261);i.CrosshairTool=z.CrosshairTool;var P=t(262);i.CustomJSHover=P.CustomJSHover;var j=t(263);i.HoverTool=j.HoverTool;var N=t(264);i.InspectTool=N.InspectTool;var F=t(266);i.Tool=F.Tool;var D=t(267);i.ToolProxy=D.ToolProxy;var I=t(268);i.Toolbar=I.Toolbar;var R=t(269);i.ToolbarBase=R.ToolbarBase;var B=t(270);i.ProxyToolbar=B.ProxyToolbar;var L=t(270);i.ToolbarBox=L.ToolbarBox},function(t,e,i){var n=t(391),r=t(264),o=t(73),s=t(15),a=t(32),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._move=function(t){if(this.model.active){var e=t.sx,i=t.sy;this.plot_model.frame.bbox.contains(e,i)?this._update_spans(e,i):this._update_spans(null,null)}},e.prototype._move_exit=function(t){this._update_spans(null,null)},e.prototype._update_spans=function(t,e){var i=this.model.dimensions;\"width\"!=i&&\"both\"!=i||(this.model.spans.width.computed_location=e),\"height\"!=i&&\"both\"!=i||(this.model.spans.height.computed_location=t)},e}(r.InspectToolView);i.CrosshairToolView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Crosshair\",e.icon=\"bk-tool-icon-crosshair\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"CrosshairTool\",this.prototype.default_view=l,this.define({dimensions:[s.Dimensions,\"both\"],line_color:[s.Color,\"black\"],line_width:[s.Number,1],line_alpha:[s.Number,1]}),this.internal({location_units:[s.SpatialUnits,\"screen\"],render_mode:[s.RenderMode,\"css\"],spans:[s.Any]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(\"Crosshair\",this.dimensions)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"synthetic_renderers\",{get:function(){return a.values(this.spans)},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){i.prototype.initialize.call(this),this.spans={width:new o.Span({for_hover:!0,dimension:\"width\",render_mode:this.render_mode,location_units:this.location_units,line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha}),height:new o.Span({for_hover:!0,dimension:\"height\",render_mode:this.render_mode,location_units:this.location_units,line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha})}},t}(r.InspectTool);(i.CrosshairTool=h).initClass()},function(r,t,o){var i=r(391),e=r(59),n=r(15),s=r(32),a=r(38),l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSHover\",this.define({args:[n.Any,{}],code:[n.String,\"\"]})},Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_code=function(t,e,i,n){return new(Function.bind.apply(Function,[void 0].concat(s.keys(this.args),[t,e,i,\"require\",\"exports\",a.use_strict(n)])))},t.prototype.format=function(t,e,i){var n=this._make_code(\"value\",\"format\",\"special_vars\",this.code);return n.apply(void 0,this.values.concat([t,e,i,r,o]))},t}(e.Model);(o.CustomJSHover=l).initClass()},function(t,e,i){var f=t(391),n=t(264),s=t(77),Z=t(185),tt=t(186),o=t(271),c=t(9),k=t(40),S=t(5),r=t(15),C=t(27),et=t(32),T=t(44),a=t(4);function it(t,e,i,n,r,o){var s,a,l={x:r[t],y:o[t]},h={x:r[t+1],y:o[t+1]};if(\"span\"==e.type)\"h\"==e.direction?(s=Math.abs(l.x-i),a=Math.abs(h.x-i)):(s=Math.abs(l.y-n),a=Math.abs(h.y-n));else{var u={x:i,y:n};s=c.dist_2_pts(l,u),a=c.dist_2_pts(h,u)}return s<a?[[l.x,l.y],t]:[[h.x,h.y],t+1]}function nt(t,e,i){return[[t[i],e[i]],i]}i._nearest_line_hit=it,i._line_hit=nt;var l=function(r){function t(){return null!==r&&r.apply(this,arguments)||this}return f.__extends(t,r),t.prototype.initialize=function(t){r.prototype.initialize.call(this,t),this.ttviews={}},t.prototype.remove=function(){a.remove_views(this.ttviews),r.prototype.remove.call(this)},t.prototype.connect_signals=function(){var t=this;r.prototype.connect_signals.call(this);for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e];n instanceof Z.GlyphRenderer?this.connect(n.data_source.inspect,this._update):(this.connect(n.node_renderer.data_source.inspect,this._update),this.connect(n.edge_renderer.data_source.inspect,this._update))}this.connect(this.model.properties.renderers.change,function(){return t._computed_renderers=t._ttmodels=null}),this.connect(this.model.properties.names.change,function(){return t._computed_renderers=t._ttmodels=null}),this.connect(this.model.properties.tooltips.change,function(){return t._ttmodels=null})},t.prototype._compute_ttmodels=function(){var t={},e=this.model.tooltips;if(null!=e)for(var i=0,n=this.computed_renderers;i<n.length;i++){var r=n[i];if(r instanceof Z.GlyphRenderer){var o=new s.Tooltip({custom:T.isString(e)||T.isFunction(e),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t[r.id]=o}else{var o=new s.Tooltip({custom:T.isString(e)||T.isFunction(e),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t[r.node_renderer.id]=o,t[r.edge_renderer.id]=o}}return a.build_views(this.ttviews,et.values(t),{parent:this,plot_view:this.plot_view}),t},Object.defineProperty(t.prototype,\"computed_renderers\",{get:function(){if(null==this._computed_renderers){var t=this.model.renderers,e=this.plot_model.plot.renderers,i=this.model.names;this._computed_renderers=o.compute_renderers(t,e,i)}return this._computed_renderers},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"ttmodels\",{get:function(){return null==this._ttmodels&&(this._ttmodels=this._compute_ttmodels()),this._ttmodels},enumerable:!0,configurable:!0}),t.prototype._clear=function(){for(var t in this._inspect(1/0,1/0),this.ttmodels){var e=this.ttmodels[t];e.clear()}},t.prototype._move=function(t){if(this.model.active){var e=t.sx,i=t.sy;this.plot_model.frame.bbox.contains(e,i)?this._inspect(e,i):this._clear()}},t.prototype._move_exit=function(){this._clear()},t.prototype._inspect=function(t,e){var i;if(\"mouse\"==this.model.mode)i={type:\"point\",sx:t,sy:e};else{var n=\"vline\"==this.model.mode?\"h\":\"v\";i={type:\"span\",direction:n,sx:t,sy:e}}for(var r=0,o=this.computed_renderers;r<o.length;r++){var s=o[r],a=s.get_selection_manager();a.inspect(this.plot_view.renderer_views[s.id],i)}null!=this.model.callback&&this._emit_callback(i)},t.prototype._update=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d,f,v,m=t[0],g=t[1].geometry;if(this.model.active&&(m instanceof Z.GlyphRendererView||m instanceof tt.GraphRendererView)){var y=m.model,b=this.ttmodels[y.id];if(null!=b){b.clear();var x=y.get_selection_manager(),w=x.inspectors[y.id];if(y instanceof Z.GlyphRenderer&&(w=y.view.convert_selection_to_subset(w)),!w.is_empty()){for(var k=x.source,S=this.plot_model.frame,C=g.sx,T=g.sy,A=S.xscales[y.x_range_name],E=S.yscales[y.y_range_name],M=A.invert(C),O=E.invert(T),z=m.glyph,P=0,j=w.line_indices;P<j.length;P++){var N=j[P],F=z._x[N+1],D=z._y[N+1],I=N,R=void 0,B=void 0;switch(this.model.line_policy){case\"interp\":e=z.get_interpolation_hit(N,g),F=e[0],D=e[1],R=A.compute(F),B=E.compute(D);break;case\"prev\":i=nt(z.sx,z.sy,N),n=i[0],R=n[0],B=n[1],I=i[1];break;case\"next\":r=nt(z.sx,z.sy,N+1),o=r[0],R=o[0],B=o[1],I=r[1];break;case\"nearest\":s=it(N,g,C,T,z.sx,z.sy),a=s[0],R=a[0],B=a[1],I=s[1],F=z._x[I],D=z._y[I];break;default:R=(l=[C,T])[0],B=l[1]}var L={index:I,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,rx:R,ry:B,indices:w.line_indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,I,L))}for(var V=0,G=w.image_indices;V<G.length;V++){var U=G[V],L={index:U.index,x:M,y:O,sx:C,sy:T},q=this._render_tooltips(k,U,L);b.add(C,T,q)}for(var Y=0,X=w.indices;Y<X.length;Y++){var N=X[Y];if(et.isEmpty(w.multiline_indices)){var F=null!=z._x?z._x[N]:void 0,D=null!=z._y?z._y[N]:void 0,R=void 0,B=void 0;if(\"snap_to_data\"==this.model.point_policy){var H=z.get_anchor_point(this.model.anchor,N,[C,T]);null==H&&(H=z.get_anchor_point(\"center\",N,[C,T])),R=H.x,B=H.y}else R=(v=[C,T])[0],B=v[1];var W=void 0,L={index:W=y instanceof Z.GlyphRenderer?y.view.convert_indices_from_subset([N])[0]:N,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,indices:w.indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,W,L))}else for(var J=0,Q=w.multiline_indices[N.toString()];J<Q.length;J++){var $=Q[J],F=z._xs[N][$],D=z._ys[N][$],K=$,R=void 0,B=void 0;switch(this.model.line_policy){case\"interp\":h=z.get_interpolation_hit(N,$,g),F=h[0],D=h[1],R=A.compute(F),B=E.compute(D);break;case\"prev\":u=nt(z.sxs[N],z.sys[N],$),c=u[0],R=c[0],B=c[1],K=u[1];break;case\"next\":_=nt(z.sxs[N],z.sys[N],$+1),p=_[0],R=p[0],B=p[1],K=_[1];break;case\"nearest\":d=it($,g,C,T,z.sxs[N],z.sys[N]),f=d[0],R=f[0],B=f[1],K=d[1],F=z._xs[N][K],D=z._ys[N][K];break;default:throw new Error(\"should't have happened\")}var W=void 0,L={index:W=y instanceof Z.GlyphRenderer?y.view.convert_indices_from_subset([N])[0]:N,segment_index:K,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,indices:w.multiline_indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,W,L))}}}}}},t.prototype._emit_callback=function(t){for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=n.data_source.inspected,o=this.plot_model.frame,s=o.xscales[n.x_range_name],a=o.yscales[n.y_range_name],l=s.invert(t.sx),h=a.invert(t.sy),u=f.__assign({x:l,y:h},t),c=this.model.callback,_=[c,{index:r,geometry:u,renderer:n}],p=_[0],d=_[1];T.isFunction(c)?c(p,d):c.execute(p,d)}},t.prototype._render_tooltips=function(t,e,i){var n=this.model.tooltips;if(T.isString(n)){var r=S.div();return r.innerHTML=k.replace_placeholders(n,t,e,this.model.formatters,i),r}if(T.isFunction(n))return n(t,i);for(var o=S.div({style:{display:\"table\",borderSpacing:\"2px\"}}),s=0,a=n;s<a.length;s++){var l=a[s],h=l[0],u=l[1],c=S.div({style:{display:\"table-row\"}});o.appendChild(c);var _=void 0;if(_=S.div({style:{display:\"table-cell\"},class:\"bk-tooltip-row-label\"},0!=h.length?h+\": \":\"\"),c.appendChild(_),_=S.div({style:{display:\"table-cell\"},class:\"bk-tooltip-row-value\"}),c.appendChild(_),0<=u.indexOf(\"$color\")){var p=u.match(/\\$color(\\[.*\\])?:(\\w*)/),d=p[1],f=void 0===d?\"\":d,v=p[2],m=t.get_column(v);if(null==m){var g=S.span({},v+\" unknown\");_.appendChild(g);continue}var y=0<=f.indexOf(\"hex\"),b=0<=f.indexOf(\"swatch\"),x=T.isNumber(e)?m[e]:null;if(null==x){var w=S.span({},\"(null)\");_.appendChild(w);continue}y&&(x=C.color2hex(x));var r=S.span({},x);_.appendChild(r),b&&(r=S.span({class:\"bk-tooltip-color-block\",style:{backgroundColor:x}},\" \"),_.appendChild(r))}else{var r=S.span();r.innerHTML=k.replace_placeholders(u.replace(\"$~\",\"$data_\"),t,e,this.model.formatters,i),_.appendChild(r)}}return o},t}(n.InspectToolView);i.HoverToolView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Hover\",e.icon=\"bk-tool-icon-hover\",e}return f.__extends(t,i),t.initClass=function(){this.prototype.type=\"HoverTool\",this.prototype.default_view=l,this.define({tooltips:[r.Any,[[\"index\",\"$index\"],[\"data (x, y)\",\"($x, $y)\"],[\"screen (x, y)\",\"($sx, $sy)\"]]],formatters:[r.Any,{}],renderers:[r.Any,\"auto\"],names:[r.Array,[]],mode:[r.String,\"mouse\"],point_policy:[r.String,\"snap_to_data\"],line_policy:[r.String,\"nearest\"],show_arrow:[r.Boolean,!0],anchor:[r.String,\"center\"],attachment:[r.String,\"horizontal\"],callback:[r.Any]})},t}(n.InspectTool);(i.HoverTool=h).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(265),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.ButtonToolView);i.InspectToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.event_type=\"move\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"InspectTool\",this.prototype.button_view=o.OnOffButtonView,this.define({toggleable:[s.Bool,!0]}),this.override({active:!0})},t}(r.ButtonTool);(i.InspectTool=l).initClass()},function(t,e,i){var n=t(391),r=t(241),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.active?this.el.classList.add(\"bk-active\"):this.el.classList.remove(\"bk-active\")},e.prototype._clicked=function(){var t=this.model.active;this.model.active=!t},e}(r.ButtonToolButtonView);i.OnOffButtonView=o},function(t,e,i){var n=t(391),r=t(15),o=t(48),_=t(21),s=t(59),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view=t.plot_view},Object.defineProperty(t.prototype,\"plot_model\",{get:function(){return this.plot_view.model},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){t.model.active?t.activate():t.deactivate()})},t.prototype.activate=function(){},t.prototype.deactivate=function(){},t}(o.View);i.ToolView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tool\",this.internal({active:[r.Boolean,!1]})},Object.defineProperty(t.prototype,\"synthetic_renderers\",{get:function(){return[]},enumerable:!0,configurable:!0}),t.prototype._get_dim_tooltip=function(t,e){switch(e){case\"width\":return t+\" (x-axis)\";case\"height\":return t+\" (y-axis)\";case\"both\":return t}},t.prototype._get_dim_limits=function(t,e,i,n){var r,o=t[0],s=t[1],a=e[0],l=e[1],h=i.bbox.h_range;\"width\"==n||\"both\"==n?(r=[_.min([o,a]),_.max([o,a])],r=[_.max([r[0],h.start]),_.min([r[1],h.end])]):r=[h.start,h.end];var u,c=i.bbox.v_range;return\"height\"==n||\"both\"==n?(u=[_.min([s,l]),_.max([s,l])],u=[_.max([u[0],c.start]),_.min([u[1],c.end])]):u=[c.start,c.end],[r,u]},t}(s.Model);(i.Tool=l).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(19),s=t(59),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolProxy\",this.define({tools:[r.Array,[]],active:[r.Bool,!1],disabled:[r.Bool,!1]})},Object.defineProperty(t.prototype,\"button_view\",{get:function(){return this.tools[0].button_view},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"event_type\",{get:function(){return this.tools[0].event_type},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.tools[0].tooltip},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tool_name\",{get:function(){return this.tools[0].tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"icon\",{get:function(){return this.tools[0].computed_icon},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.icon},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){e.prototype.initialize.call(this),this.do=new o.Signal0(this,\"do\")},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.do,function(){return t.doit()}),this.connect(this.properties.active.change,function(){return t.set_active()})},t.prototype.doit=function(){for(var t=0,e=this.tools;t<e.length;t++){var i=e[t];i.do.emit()}},t.prototype.set_active=function(){for(var t=0,e=this.tools;t<e.length;t++){var i=e[t];i.active=this.active}},t}(s.Model);(i.ToolProxy=a).initClass()},function(t,e,i){var n=t(391),r=t(15),v=t(14),m=t(44),g=t(21),y=t(232),b=t(234),x=t(251),w=t(264),o=t(269),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Toolbar\",this.prototype.default_view=o.ToolbarBaseView,this.define({active_drag:[r.Any,\"auto\"],active_inspect:[r.Any,\"auto\"],active_scroll:[r.Any,\"auto\"],active_tap:[r.Any,\"auto\"],active_multi:[r.Any,null]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init_tools()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.tools.change,function(){return t._init_tools()})},t.prototype._init_tools=function(){for(var e=this,t=function(e){if(e instanceof w.InspectTool)g.any(s.inspectors,function(t){return t.id==e.id})||(s.inspectors=s.inspectors.concat([e]));else if(e instanceof b.HelpTool)g.any(s.help,function(t){return t.id==e.id})||(s.help=s.help.concat([e]));else if(e instanceof y.ActionTool)g.any(s.actions,function(t){return t.id==e.id})||(s.actions=s.actions.concat([e]));else if(e instanceof x.GestureTool){var t=void 0,i=void 0;m.isString(e.event_type)?(t=[e.event_type],i=!1):(t=e.event_type||[],i=!0);for(var n=0,r=t;n<r.length;n++){var o=r[n];o in s.gestures?(i&&(o=\"multi\"),g.any(s.gestures[o].tools,function(t){return t.id==e.id})||(s.gestures[o].tools=s.gestures[o].tools.concat([e])),s.connect(e.properties.active.change,s._active_change.bind(s,e))):v.logger.warn(\"Toolbar: unknown event type '\"+o+\"' for tool: \"+e.type+\" (\"+e.id+\")\")}}},s=this,i=0,n=this.tools;i<n.length;i++){var r=n[i];t(r)}if(\"auto\"==this.active_inspect);else if(this.active_inspect instanceof w.InspectTool)for(var o=0,a=this.inspectors;o<a.length;o++){var l=a[o];l!=this.active_inspect&&(l.active=!1)}else if(m.isArray(this.active_inspect))for(var h=0,u=this.inspectors;h<u.length;h++){var l=u[h];g.includes(this.active_inspect,l)||(l.active=!1)}else if(null==this.active_inspect)for(var c=0,_=this.inspectors;c<_.length;c++){var l=_[c];l.active=!1}var p=function(t){t.active?e._active_change(t):t.active=!0};for(var d in this.gestures){var f=this.gestures[d];if(0!=f.tools.length){if(f.tools=g.sortBy(f.tools,function(t){return t.default_order}),\"tap\"==d){if(null==this.active_tap)continue;\"auto\"==this.active_tap?p(f.tools[0]):p(this.active_tap)}if(\"pan\"==d){if(null==this.active_drag)continue;\"auto\"==this.active_drag?p(f.tools[0]):p(this.active_drag)}if(\"pinch\"==d||\"scroll\"==d){if(null==this.active_scroll||\"auto\"==this.active_scroll)continue;p(this.active_scroll)}null!=this.active_multi&&p(this.active_multi)}}},t}(o.ToolbarBase);(i.Toolbar=s).initClass()},function(t,e,i){var n=t(391),a=t(14),c=t(5),r=t(4),o=t(15),s=t(6),l=t(44),h=t(59),u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBase\",this.define({_visible:[o.Bool,null],autohide:[o.Bool,!1]})},Object.defineProperty(t.prototype,\"visible\",{get:function(){return!this.autohide||null!=this._visible&&this._visible},enumerable:!0,configurable:!0}),t}(h.Model);(i.ToolbarViewModel=u).initClass();var _=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._tool_button_views={},this._build_tool_button_views(),this._toolbar_view_model=new u({autohide:this.model.autohide})},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.tools.change,function(){return t._build_tool_button_views()}),this.connect(this.model.properties.autohide.change,function(){t._toolbar_view_model.autohide=t.model.autohide,t._on_visible_change()}),this.connect(this._toolbar_view_model.properties._visible.change,function(){return t._on_visible_change()})},t.prototype.remove=function(){r.remove_views(this._tool_button_views),e.prototype.remove.call(this)},t.prototype._build_tool_button_views=function(){var t=null!=this.model._proxied_tools?this.model._proxied_tools:this.model.tools;r.build_views(this._tool_button_views,t,{parent:this},function(t){return t.button_view})},t.prototype.set_visibility=function(t){t!=this._toolbar_view_model._visible&&(this._toolbar_view_model._visible=t)},t.prototype._on_visible_change=function(){var t=this._toolbar_view_model.visible,e=\"bk-toolbar-hidden\";this.el.classList.contains(e)&&t?this.el.classList.remove(e):t||this.el.classList.add(e)},t.prototype.render=function(){var e=this;if(c.empty(this.el),this.el.classList.add(\"bk-toolbar\"),this.el.classList.add(\"bk-toolbar-\"+this.model.toolbar_location),this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change(),null!=this.model.logo){var t=\"grey\"===this.model.logo?\"bk-grey\":null,i=c.a({href:\"https://bokeh.pydata.org/\",target:\"_blank\",class:[\"bk-logo\",\"bk-logo-small\",t]});this.el.appendChild(i)}var n=[],r=function(t){return e._tool_button_views[t.id].el},o=this.model.gestures;for(var s in o)n.push(o[s].tools.map(r));n.push(this.model.actions.map(r)),n.push(this.model.inspectors.filter(function(t){return t.toggleable}).map(r)),n.push(this.model.help.map(r));for(var a=0,l=n;a<l.length;a++){var h=l[a];if(0!==h.length){var u=c.div({class:\"bk-button-bar\"},h);this.el.appendChild(u)}}},t}(s.DOMView);i.ToolbarBaseView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBase\",this.prototype.default_view=_,this.define({tools:[o.Array,[]],logo:[o.String,\"normal\"],autohide:[o.Bool,!1]}),this.internal({gestures:[o.Any,function(){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},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}}}],actions:[o.Array,[]],inspectors:[o.Array,[]],help:[o.Array,[]],toolbar_location:[o.Location,\"right\"]})},Object.defineProperty(t.prototype,\"horizontal\",{get:function(){return\"above\"===this.toolbar_location||\"below\"===this.toolbar_location},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"vertical\",{get:function(){return\"left\"===this.toolbar_location||\"right\"===this.toolbar_location},enumerable:!0,configurable:!0}),t.prototype._active_change=function(t){var e=t.event_type;if(null!=e)for(var i=l.isString(e)?[e]:e,n=0,r=i;n<r.length;n++){var o=r[n];if(t.active){var s=this.gestures[o].active;null!=s&&t!=s&&(a.logger.debug(\"Toolbar: deactivating tool: \"+s.type+\" (\"+s.id+\") for event type '\"+o+\"'\"),s.active=!1),this.gestures[o].active=t,a.logger.debug(\"Toolbar: activating tool: \"+t.type+\" (\"+t.id+\") for event type '\"+o+\"'\")}else this.gestures[o].active=null}},t}(h.Model);(i.ToolbarBase=p).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(5),a=t(14),l=t(44),E=t(21),h=t(232),u=t(234),c=t(251),_=t(264),s=t(269),M=t(267),p=t(157),d=t(4),f=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ProxyToolbar\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init_tools(),this._merge_tools()},t.prototype._init_tools=function(){for(var t=function(e){if(e instanceof _.InspectTool)E.any(s.inspectors,function(t){return t.id==e.id})||(s.inspectors=s.inspectors.concat([e]));else if(e instanceof u.HelpTool)E.any(s.help,function(t){return t.id==e.id})||(s.help=s.help.concat([e]));else if(e instanceof h.ActionTool)E.any(s.actions,function(t){return t.id==e.id})||(s.actions=s.actions.concat([e]));else if(e instanceof c.GestureTool){var t=void 0,i=void 0;l.isString(e.event_type)?(t=[e.event_type],i=!1):(t=e.event_type||[],i=!0);for(var n=0,r=t;n<r.length;n++){var o=r[n];o in s.gestures?(i&&(o=\"multi\"),E.any(s.gestures[o].tools,function(t){return t.id==e.id})||(s.gestures[o].tools=s.gestures[o].tools.concat([e]))):a.logger.warn(\"Toolbar: unknown event type '\"+o+\"' for tool: \"+e.type+\" (\"+e.id+\")\")}}},s=this,e=0,i=this.tools;e<i.length;e++){var n=i[e];t(n)}},t.prototype._merge_tools=function(){var t,n=this;this._proxied_tools=[];for(var e={},i={},r={},o=[],s=[],a=0,l=this.help;a<l.length;a++){var h=l[a];E.includes(s,h.redirect)||(o.push(h),s.push(h.redirect))}for(var u in(t=this._proxied_tools).push.apply(t,o),this.help=o,this.gestures){var c=this.gestures[u];u in r||(r[u]={});for(var _=0,p=c.tools;_<p.length;_++){var d=p[_];d.type in r[u]||(r[u][d.type]=[]),r[u][d.type].push(d)}}for(var f=0,v=this.inspectors;f<v.length;f++){var d=v[f];d.type in e||(e[d.type]=[]),e[d.type].push(d)}for(var m=0,g=this.actions;m<g.length;m++){var d=g[m];d.type in i||(i[d.type]=[]),i[d.type].push(d)}var y=function(t,e){void 0===e&&(e=!1);var i=new M.ToolProxy({tools:t,active:e});return n._proxied_tools.push(i),i};for(var u in r){var c=this.gestures[u];for(var b in c.tools=[],r[u]){var x=r[u][b];if(0<x.length)if(\"multi\"==u)for(var w=0,k=x;w<k.length;w++){var d=k[w],S=y([d]);c.tools.push(S),this.connect(S.properties.active.change,this._active_change.bind(this,S))}else{var S=y(x);c.tools.push(S),this.connect(S.properties.active.change,this._active_change.bind(this,S))}}}for(var b in this.actions=[],i){var x=i[b];if(\"CustomAction\"==b)for(var C=0,T=x;C<T.length;C++){var d=T[C];this.actions.push(y([d]))}else 0<x.length&&this.actions.push(y(x))}for(var b in this.inspectors=[],e){var x=e[b];0<x.length&&this.inspectors.push(y(x,!0))}for(var A in this.gestures){var c=this.gestures[A];0!=c.tools.length&&(c.tools=E.sortBy(c.tools,function(t){return t.default_order}),\"pinch\"!=A&&\"scroll\"!=A&&\"multi\"!=A&&(c.tools[0].active=!0))}},t}(s.ToolbarBase);(i.ProxyToolbar=f).initClass();var v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.model.toolbar.toolbar_location=this.model.toolbar_location,this._toolbar_views={},d.build_views(this._toolbar_views,[this.model.toolbar],{parent:this})},t.prototype.remove=function(){d.remove_views(this._toolbar_views),e.prototype.remove.call(this)},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-toolbar-box\")},t.prototype.render=function(){e.prototype.render.call(this);var t=this._toolbar_views[this.model.toolbar.id];t.render(),o.empty(this.el),this.el.appendChild(t.el)},t.prototype.get_width=function(){return this.model.toolbar.vertical?30:null},t.prototype.get_height=function(){return this.model.toolbar.horizontal?30:null},t}(p.LayoutDOMView);i.ToolbarBoxView=v;var m=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBox\",this.prototype.default_view=v,this.define({toolbar:[r.Instance],toolbar_location:[r.Location,\"right\"]})},Object.defineProperty(t.prototype,\"sizing_mode\",{get:function(){switch(this.toolbar_location){case\"above\":case\"below\":return\"scale_width\";case\"left\":case\"right\":return\"scale_height\"}},enumerable:!0,configurable:!0}),t}(p.LayoutDOM);(i.ToolbarBox=m).initClass()},function(t,e,i){var r=t(21),o=t(185),s=t(186);i.compute_renderers=function(t,e,i){return null==t?[]:(n=\"auto\"==t?e.filter(function(t){return t instanceof o.GlyphRenderer||t instanceof s.GraphRenderer}):t,0<i.length&&(n=n.filter(function(t){return r.includes(i,t.name)})),n);var n}},function(i,t,e){var n=i(391),r=i(279),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSTransform\",this.define({args:[o.Any,{}],func:[o.String,\"\"],v_func:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_transform=function(t,e){var i=this.use_strict?a.use_strict(e):e;return new(Function.bind.apply(Function,[void 0].concat(this.names,[t,\"require\",\"exports\",i])))},Object.defineProperty(t.prototype,\"scalar_transform\",{get:function(){return this._make_transform(\"x\",this.func)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"vector_transform\",{get:function(){return this._make_transform(\"xs\",this.v_func)},enumerable:!0,configurable:!0}),t.prototype.compute=function(t){return this.scalar_transform.apply(this,this.values.concat([t,i,{}]))},t.prototype.v_compute=function(t){return this.vector_transform.apply(this,this.values.concat([t,i,{}]))},t}(r.Transform);(e.CustomJSTransform=l).initClass()},function(t,e,i){var n=t(391),r=t(279),o=t(181),s=t(15),a=t(44),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Dodge\",this.define({value:[s.Number,0],range:[s.Instance]})},t.prototype.v_compute=function(t){var e;if(this.range instanceof o.FactorRange)e=this.range.v_synthetic(t);else{if(!a.isArrayableOf(t,a.isNumber))throw new Error(\"unexpected\");e=t}for(var i=new Float64Array(e.length),n=0;n<e.length;n++){var r=e[n];i[n]=this._compute(r)}return i},t.prototype.compute=function(t){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(t));if(a.isNumber(t))return this._compute(t);throw new Error(\"unexpected\")},t.prototype._compute=function(t){return t+this.value},t}(r.Transform);(i.Dodge=l).initClass()},function(t,e,i){var n=t(272);i.CustomJSTransform=n.CustomJSTransform;var r=t(273);i.Dodge=r.Dodge;var o=t(275);i.Interpolator=o.Interpolator;var s=t(276);i.Jitter=s.Jitter;var a=t(277);i.LinearInterpolator=a.LinearInterpolator;var l=t(278);i.StepInterpolator=l.StepInterpolator;var h=t(279);i.Transform=h.Transform},function(t,e,i){var n=t(391),r=t(279),o=t(15),c=t(21),_=t(44),s=function(i){function t(t){var e=i.call(this,t)||this;return e._sorted_dirty=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Interpolator\",this.define({x:[o.Any],y:[o.Any],data:[o.Any],clip:[o.Bool,!0]})},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._sorted_dirty=!0})},t.prototype.v_compute=function(t){for(var e=new Float64Array(t.length),i=0;i<t.length;i++){var n=t[i];e[i]=this.compute(n)}return e},t.prototype.sort=function(t){if(void 0===t&&(t=!1),this._sorted_dirty){var e,i;if(_.isString(this.x)&&_.isString(this.y)&&null!=this.data){var n=this.data.columns();if(!c.includes(n,this.x))throw new Error(\"The x parameter does not correspond to a valid column name defined in the data parameter\");if(!c.includes(n,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),i=this.data.get_column(this.y)}else{if(!_.isArray(this.x)||!_.isArray(this.y))throw new Error(\"parameters 'x' and 'y' must be both either string fields or arrays\");e=this.x,i=this.y}if(e.length!==i.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\");var r=[];for(var o in e)r.push({x:e[o],y:i[o]});t?r.sort(function(t,e){return t.x>e.x?-1:t.x==e.x?0:1}):r.sort(function(t,e){return t.x<e.x?-1:t.x==e.x?0:1}),this._x_sorted=[],this._y_sorted=[];for(var s=0,a=r;s<a.length;s++){var l=a[s],h=l.x,u=l.y;this._x_sorted.push(h),this._y_sorted.push(u)}this._sorted_dirty=!1}},t}(r.Transform);(i.Interpolator=s).initClass()},function(t,e,i){var n=t(391),r=t(279),o=t(181),s=t(44),a=t(15),l=t(31),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Jitter\",this.define({mean:[a.Number,0],width:[a.Number,1],distribution:[a.Distribution,\"uniform\"],range:[a.Instance]}),this.internal({previous_values:[a.Array]})},t.prototype.v_compute=function(t){if(null!=this.previous_values&&this.previous_values.length==t.length)return this.previous_values;var e;if(this.range instanceof o.FactorRange)e=this.range.v_synthetic(t);else{if(!s.isArrayableOf(t,s.isNumber))throw new Error(\"unexpected\");e=t}for(var i=new Float64Array(e.length),n=0;n<e.length;n++){var r=e[n];i[n]=this._compute(r)}return this.previous_values=i},t.prototype.compute=function(t){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(t));if(s.isNumber(t))return this._compute(t);throw new Error(\"unexpected\")},t.prototype._compute=function(t){switch(this.distribution){case\"uniform\":return t+this.mean+(l.random()-.5)*this.width;case\"normal\":return t+l.rnorm(this.mean,this.width)}},t}(r.Transform);(i.Jitter=h).initClass()},function(t,e,i){var n=t(391),s=t(21),r=t(275),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearInterpolator\"},t.prototype.compute=function(e){if(this.sort(!1),this.clip){if(e<this._x_sorted[0]||e>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(e<this._x_sorted[0])return this._y_sorted[0];if(e>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}if(e==this._x_sorted[0])return this._y_sorted[0];var t=s.findLastIndex(this._x_sorted,function(t){return t<e}),i=this._x_sorted[t],n=this._x_sorted[t+1],r=this._y_sorted[t],o=this._y_sorted[t+1];return r+(e-i)/(n-i)*(o-r)},t}(r.Interpolator);(i.LinearInterpolator=o).initClass()},function(t,e,i){var n=t(391),r=t(275),o=t(15),s=t(21),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"StepInterpolator\",this.define({mode:[o.StepMode,\"after\"]})},t.prototype.compute=function(e){if(this.sort(!1),this.clip){if(e<this._x_sorted[0]||e>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(e<this._x_sorted[0])return this._y_sorted[0];if(e>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}var t;switch(this.mode){case\"after\":t=s.findLastIndex(this._x_sorted,function(t){return t<=e});break;case\"before\":t=s.findIndex(this._x_sorted,function(t){return e<=t});break;case\"center\":var i=this._x_sorted.map(function(t){return Math.abs(t-e)}),n=s.min(i);t=s.findIndex(i,function(t){return n===t});break;default:throw new Error(\"unknown mode: \"+this.mode)}return-1!=t?this._y_sorted[t]:NaN},t}(r.Interpolator);(i.StepInterpolator=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Transform\"},t}(r.Model);(i.Transform=o).initClass()},function(t,e,i){\"function\"!=typeof WeakMap&&t(342),Number.isInteger||(Number.isInteger=function(t){return\"number\"==typeof t&&isFinite(t)&&Math.floor(t)===t});var n,l,r,h,o=String.prototype;o.repeat||(o.repeat=function(t){if(null==this)throw new TypeError(\"can't convert \"+this+\" to object\");var e=\"\"+this;if((t=+t)!=t&&(t=0),t<0)throw new RangeError(\"repeat count must be non-negative\");if(t==1/0)throw new RangeError(\"repeat count must be less than infinity\");if(t=Math.floor(t),0==e.length||0==t)return\"\";if(e.length*t>=1<<28)throw new RangeError(\"repeat count must not overflow maximum string size\");for(var i=\"\";1==(1&t)&&(i+=e),0!=(t>>>=1);)e+=e;return i}),Array.from||(Array.from=(n=Object.prototype.toString,l=function(t){return\"function\"==typeof t||\"[object Function]\"===n.call(t)},r=Math.pow(2,53)-1,h=function(t){var e,i=(e=Number(t),isNaN(e)?0:0!==e&&isFinite(e)?(0<e?1:-1)*Math.floor(Math.abs(e)):e);return Math.min(Math.max(i,0),r)},function(t){var e=Object(t);if(null==t)throw new TypeError(\"Array.from requires an array-like object - not null or undefined\");var i,n=1<arguments.length?arguments[1]:void 0;if(void 0!==n){if(!l(n))throw new TypeError(\"Array.from: when provided, the second argument must be a function\");2<arguments.length&&(i=arguments[2])}for(var r=h(e.length),o=l(this)?Object(new this(r)):new Array(r),s=0\n      // 13. If IsConstructor(C) is true, then\n      ;s<r;){var a=e[s];o[s]=n?void 0===i?n(a,s):n.call(i,a,s):a,s+=1}return o.length=r,o}))},function(t,e,i){var n=t(391);n.__exportStar(t(282),i),n.__exportStar(t(283),i)},function(t,e,i){var n=t(38),r=function(){function s(t,e,i){this.header=t,this.metadata=e,this.content=i,this.buffers=[]}return s.assemble=function(t,e,i){var n=JSON.parse(t),r=JSON.parse(e),o=JSON.parse(i);return new s(n,r,o)},s.prototype.assemble_buffer=function(t,e){var i=null!=this.header.num_buffers?this.header.num_buffers:0;if(i<=this.buffers.length)throw new Error(\"too many buffers received, expecting #{nb}\");this.buffers.push([t,e])},s.create=function(t,e,i){void 0===i&&(i={});var n=s.create_header(t);return new s(n,e,i)},s.create_header=function(t){return{msgid:n.uniqueId(),msgtype:t}},s.prototype.complete=function(){return!(null==this.header||null==this.metadata||null==this.content||\"num_buffers\"in this.header&&this.buffers.length!==this.header.num_buffers)},s.prototype.send=function(t){var e=null!=this.header.num_buffers?this.header.num_buffers:0;if(0<e)throw new Error(\"BokehJS only supports receiving buffers, not sending\");var i=JSON.stringify(this.header),n=JSON.stringify(this.metadata),r=JSON.stringify(this.content);t.send(i),t.send(n),t.send(r)},s.prototype.msgid=function(){return this.header.msgid},s.prototype.msgtype=function(){return this.header.msgtype},s.prototype.reqid=function(){return this.header.reqid},s.prototype.problem=function(){return\"msgid\"in this.header?\"msgtype\"in this.header?null:\"No msgtype in header\":\"No msgid in header\"},s}();i.Message=r},function(t,e,i){var o=t(282),n=function(){function t(){this.message=null,this._partial=null,this._fragments=[],this._buf_header=null,this._current_consumer=this._HEADER}return t.prototype.consume=function(t){this._current_consumer(t)},t.prototype._HEADER=function(t){this._assume_text(t),this.message=null,this._partial=null,this._fragments=[t],this._buf_header=null,this._current_consumer=this._METADATA},t.prototype._METADATA=function(t){this._assume_text(t),this._fragments.push(t),this._current_consumer=this._CONTENT},t.prototype._CONTENT=function(t){this._assume_text(t),this._fragments.push(t);var e=this._fragments.slice(0,3),i=e[0],n=e[1],r=e[2];this._partial=o.Message.assemble(i,n,r),this._check_complete()},t.prototype._BUFFER_HEADER=function(t){this._assume_text(t),this._buf_header=t,this._current_consumer=this._BUFFER_PAYLOAD},t.prototype._BUFFER_PAYLOAD=function(t){this._assume_binary(t),this._partial.assemble_buffer(this._buf_header,t),this._check_complete()},t.prototype._assume_text=function(t){if(t instanceof ArrayBuffer)throw new Error(\"Expected text fragment but received binary fragment\")},t.prototype._assume_binary=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Expected binary fragment but received text fragment\")},t.prototype._check_complete=function(){this._partial.complete()?(this.message=this._partial,this._current_consumer=this._HEADER):this._current_consumer=this._BUFFER_HEADER},t}();i.Receiver=n},function(t,e,i){i.safely=function(t,e){void 0===e&&(e=!1);try{return t()}catch(t){if(function(t){var e=document.createElement(\"div\");e.style.backgroundColor=\"#f2dede\",e.style.border=\"1px solid #a94442\",e.style.borderRadius=\"4px\",e.style.display=\"inline-block\",e.style.fontFamily=\"sans-serif\",e.style.marginTop=\"5px\",e.style.minWidth=\"200px\",e.style.padding=\"5px 5px 5px 10px\",e.classList.add(\"bokeh-error-box-into-flames\");var i=document.createElement(\"span\");i.style.backgroundColor=\"#a94442\",i.style.borderRadius=\"0px 4px 0px 0px\",i.style.color=\"white\",i.style.cursor=\"pointer\",i.style.cssFloat=\"right\",i.style.fontSize=\"0.8em\",i.style.margin=\"-6px -6px 0px 0px\",i.style.padding=\"2px 5px 4px 5px\",i.title=\"close\",i.setAttribute(\"aria-label\",\"close\"),i.appendChild(document.createTextNode(\"x\")),i.addEventListener(\"click\",function(){return s.removeChild(e)});var 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\"));var r=document.createElement(\"pre\");r.style.whiteSpace=\"unset\",r.style.overflowX=\"auto\";var o=t instanceof Error?t.message:t;r.appendChild(document.createTextNode(o)),e.appendChild(i),e.appendChild(n),e.appendChild(r);var s=document.getElementsByTagName(\"body\")[0];s.insertBefore(e,s.firstChild)}(t),e)return;throw t}}},function(t,e,n){function r(){var t=document.getElementsByTagName(\"body\")[0],e=document.getElementsByClassName(\"bokeh-test-div\");1==e.length&&(t.removeChild(e[0]),delete e[0]);var i=document.createElement(\"div\");i.classList.add(\"bokeh-test-div\"),i.style.display=\"none\",t.insertBefore(i,t.firstChild)}n.results={},n.init=function(){r()},n.record=function(t,e){n.results[t]=e,r()},n.count=function(t){null==n.results[t]&&(n.results[t]=0),n.results[t]+=1,r()},n.clear=function(){for(var t=0,e=Object.keys(n.results);t<e.length;t++){var i=e[t];delete n.results[i]}r()}},function(t,e,i){i.version=\"1.0.2\"},function(t,e,i){!function(){\"use strict\";var _,x,p,d,a;function f(t,e){var i,n=Object.keys(e);for(i=0;i<n.length;i++)t=t.replace(new RegExp(\"\\\\{\"+n[i]+\"\\\\}\",\"gi\"),e[n[i]]);return t}function l(t){var e,i,n;if(!t)throw new Error(\"cannot create a random attribute name for an undefined object\");e=\"ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz\",i=\"\";do{for(i=\"\",n=0;n<12;n++)i+=e[Math.floor(Math.random()*e.length)]}while(t[i]);return i}a=function(t,e){var i,n,r,o={};for(t=t.split(\",\"),e=e||10,i=0;i<t.length;i+=2)n=\"&\"+t[i+1]+\";\",r=parseInt(t[i],e),o[n]=\"&#\"+r+\";\";return o[\"\\\\xa0\"]=\"&#160;\",o}(\"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),_={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\"}},(p=function(t,e){this.__root=t,this.__ctx=e}).prototype.addColorStop=function(t,e){var i,n=this.__ctx.__createElement(\"stop\");n.setAttribute(\"offset\",t),-1!==e.indexOf(\"rgba\")?(i=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(e),n.setAttribute(\"stop-color\",f(\"rgb({r},{g},{b})\",{r:i[1],g:i[2],b:i[3]})),n.setAttribute(\"stop-opacity\",i[4])):n.setAttribute(\"stop-color\",e),this.__root.appendChild(n)},d=function(t,e){this.__root=t,this.__ctx=e},(x=function(t){var e,i={width:500,height:500,enableMirroring:!1};if(1<arguments.length?((e=i).width=t,e.height=arguments[1]):e=t||i,!(this instanceof x))return new x(e);this.width=e.width||i.width,this.height=e.height||i.height,this.enableMirroring=void 0!==e.enableMirroring?e.enableMirroring:i.enableMirroring,(this.canvas=this).__document=e.document||document,e.ctx?this.__ctx=e.ctx:(this.__canvas=this.__document.createElement(\"canvas\"),this.__ctx=this.__canvas.getContext(\"2d\")),this.__setDefaultStyles(),this.__stack=[this.__getStyleState()],this.__groupStack=[],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.__root.setAttribute(\"width\",this.width),this.__root.setAttribute(\"height\",this.height),this.__ids={},this.__defs=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this.__root.appendChild(this.__defs),this.__currentElement=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"),this.__root.appendChild(this.__currentElement)}).prototype.__createElement=function(t,e,i){void 0===e&&(e={});var n,r,o=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",t),s=Object.keys(e);for(i&&(o.setAttribute(\"fill\",\"none\"),o.setAttribute(\"stroke\",\"none\")),n=0;n<s.length;n++)r=s[n],o.setAttribute(r,e[r]);return o},x.prototype.__setDefaultStyles=function(){var t,e,i=Object.keys(_);for(t=0;t<i.length;t++)this[e=i[t]]=_[e].canvas},x.prototype.__applyStyleState=function(t){var e,i,n=Object.keys(t);for(e=0;e<n.length;e++)this[i=n[e]]=t[i]},x.prototype.__getStyleState=function(){var t,e,i={},n=Object.keys(_);for(t=0;t<n.length;t++)e=n[t],i[e]=this[e];return i},x.prototype.__applyStyleToCurrentElement=function(e){var t=this.__currentElement,i=this.__currentElementsToStyle;i&&(t.setAttribute(e,\"\"),t=i.element,i.children.forEach(function(t){t.setAttribute(e,\"\")}));var n,r,o,s,a,l=Object.keys(_);for(n=0;n<l.length;n++)if(r=_[l[n]],o=this[l[n]],r.apply)if(o instanceof d){if(o.__ctx)for(;o.__ctx.__defs.childNodes.length;)s=o.__ctx.__defs.childNodes[0].getAttribute(\"id\"),this.__ids[s]=s,this.__defs.appendChild(o.__ctx.__defs.childNodes[0]);t.setAttribute(r.apply,f(\"url(#{id})\",{id:o.__root.getAttribute(\"id\")}))}else if(o instanceof p)t.setAttribute(r.apply,f(\"url(#{id})\",{id:o.__root.getAttribute(\"id\")}));else if(-1!==r.apply.indexOf(e)&&r.svg!==o)if(\"stroke\"!==r.svgAttr&&\"fill\"!==r.svgAttr||-1===o.indexOf(\"rgba\")){var h=r.svgAttr;if(\"globalAlpha\"===l[n]&&(h=e+\"-\"+r.svgAttr,t.getAttribute(h)))continue;t.setAttribute(h,o)}else{a=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(o),t.setAttribute(r.svgAttr,f(\"rgb({r},{g},{b})\",{r:a[1],g:a[2],b:a[3]}));var u=a[4],c=this.globalAlpha;null!=c&&(u*=c),t.setAttribute(r.svgAttr+\"-opacity\",u)}},x.prototype.__closestGroupOrSvg=function(t){return\"g\"===(t=t||this.__currentElement).nodeName||\"svg\"===t.nodeName?t:this.__closestGroupOrSvg(t.parentNode)},x.prototype.getSerializedSvg=function(t){var e,i,n,r,o,s=(new XMLSerializer).serializeToString(this.__root);if(/xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg\".+xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg/gi.test(s)&&(s=s.replace('xmlns=\"http://www.w3.org/2000/svg','xmlns:xlink=\"http://www.w3.org/1999/xlink')),t)for(e=Object.keys(a),i=0;i<e.length;i++)n=e[i],r=a[n],(o=new RegExp(n,\"gi\")).test(s)&&(s=s.replace(o,r));return s},x.prototype.getSvg=function(){return this.__root},x.prototype.save=function(){var t=this.__createElement(\"g\"),e=this.__closestGroupOrSvg();this.__groupStack.push(e),e.appendChild(t),this.__currentElement=t,this.__stack.push(this.__getStyleState())},x.prototype.restore=function(){this.__currentElement=this.__groupStack.pop(),this.__currentElementsToStyle=null,this.__currentElement||(this.__currentElement=this.__root.childNodes[1]);var t=this.__stack.pop();this.__applyStyleState(t)},x.prototype.__addTransform=function(t){var e=this.__closestGroupOrSvg();if(0<e.childNodes.length){\"path\"===this.__currentElement.nodeName&&(this.__currentElementsToStyle||(this.__currentElementsToStyle={element:e,children:[]}),this.__currentElementsToStyle.children.push(this.__currentElement),this.__applyCurrentDefaultPath());var i=this.__createElement(\"g\");e.appendChild(i),this.__currentElement=i}var n=this.__currentElement.getAttribute(\"transform\");n?n+=\" \":n=\"\",n+=t,this.__currentElement.setAttribute(\"transform\",n)},x.prototype.scale=function(t,e){void 0===e&&(e=t),this.__addTransform(f(\"scale({x},{y})\",{x:t,y:e}))},x.prototype.rotate=function(t){var e=180*t/Math.PI;this.__addTransform(f(\"rotate({angle},{cx},{cy})\",{angle:e,cx:0,cy:0}))},x.prototype.translate=function(t,e){this.__addTransform(f(\"translate({x},{y})\",{x:t,y:e}))},x.prototype.transform=function(t,e,i,n,r,o){this.__addTransform(f(\"matrix({a},{b},{c},{d},{e},{f})\",{a:t,b:e,c:i,d:n,e:r,f:o}))},x.prototype.beginPath=function(){var t;this.__currentDefaultPath=\"\",this.__currentPosition={},t=this.__createElement(\"path\",{},!0),this.__closestGroupOrSvg().appendChild(t),this.__currentElement=t},x.prototype.__applyCurrentDefaultPath=function(){var t=this.__currentElement;\"path\"===t.nodeName?t.setAttribute(\"d\",this.__currentDefaultPath):console.error(\"Attempted to apply path command to node\",t.nodeName)},x.prototype.__addPathCommand=function(t){this.__currentDefaultPath+=\" \",this.__currentDefaultPath+=t},x.prototype.moveTo=function(t,e){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.__currentPosition={x:t,y:e},this.__addPathCommand(f(\"M {x} {y}\",{x:t,y:e}))},x.prototype.closePath=function(){this.__currentDefaultPath&&this.__addPathCommand(\"Z\")},x.prototype.lineTo=function(t,e){this.__currentPosition={x:t,y:e},-1<this.__currentDefaultPath.indexOf(\"M\")?this.__addPathCommand(f(\"L {x} {y}\",{x:t,y:e})):this.__addPathCommand(f(\"M {x} {y}\",{x:t,y:e}))},x.prototype.bezierCurveTo=function(t,e,i,n,r,o){this.__currentPosition={x:r,y:o},this.__addPathCommand(f(\"C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}\",{cp1x:t,cp1y:e,cp2x:i,cp2y:n,x:r,y:o}))},x.prototype.quadraticCurveTo=function(t,e,i,n){this.__currentPosition={x:i,y:n},this.__addPathCommand(f(\"Q {cpx} {cpy} {x} {y}\",{cpx:t,cpy:e,x:i,y:n}))};var b=function(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]};x.prototype.arcTo=function(t,e,i,n,r){var o=this.__currentPosition&&this.__currentPosition.x,s=this.__currentPosition&&this.__currentPosition.y;if(void 0!==o&&void 0!==s){if(r<0)throw new Error(\"IndexSizeError: The radius provided (\"+r+\") is negative.\");if(o===t&&s===e||t===i&&e===n||0===r)this.lineTo(t,e);else{var a=b([o-t,s-e]),l=b([i-t,n-e]);if(a[0]*l[1]!=a[1]*l[0]){var h=a[0]*l[0]+a[1]*l[1],u=Math.acos(Math.abs(h)),c=b([a[0]+l[0],a[1]+l[1]]),_=r/Math.sin(u/2),p=t+_*c[0],d=e+_*c[1],f=[-a[1],a[0]],v=[l[1],-l[0]],m=function(t){var e=t[0],i=t[1];return 0<=i?Math.acos(e):-Math.acos(e)},g=m(f),y=m(v);this.lineTo(p+f[0]*r,d+f[1]*r),this.arc(p,d,r,g,y)}else this.lineTo(t,e)}}},x.prototype.stroke=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"fill stroke markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"stroke\")},x.prototype.fill=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"stroke fill markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"fill\")},x.prototype.rect=function(t,e,i,n){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+n),this.lineTo(t,e+n),this.lineTo(t,e),this.closePath()},x.prototype.fillRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"fill\")},x.prototype.strokeRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"stroke\")},x.prototype.__clearCanvas=function(){for(var t=this.__closestGroupOrSvg(),e=t.getAttribute(\"transform\"),i=this.__root.childNodes[1],n=i.childNodes,r=n.length-1;0<=r;r--)n[r]&&i.removeChild(n[r]);this.__currentElement=i,this.__groupStack=[],e&&this.__addTransform(e)},x.prototype.clearRect=function(t,e,i,n){if(0!==t||0!==e||i!==this.width||n!==this.height){var r,o=this.__closestGroupOrSvg();r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n,fill:\"#FFFFFF\"},!0),o.appendChild(r)}else this.__clearCanvas()},x.prototype.createLinearGradient=function(t,e,i,n){var r=this.__createElement(\"linearGradient\",{id:l(this.__ids),x1:t+\"px\",x2:i+\"px\",y1:e+\"px\",y2:n+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(r),new p(r,this)},x.prototype.createRadialGradient=function(t,e,i,n,r,o){var s=this.__createElement(\"radialGradient\",{id:l(this.__ids),cx:n+\"px\",cy:r+\"px\",r:o+\"px\",fx:t+\"px\",fy:e+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(s),new p(s,this)},x.prototype.__parseFont=function(){var t=/^\\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),e={style:t[1]||\"normal\",size:t[4]||\"10px\",family:t[6]||\"sans-serif\",weight:t[3]||\"normal\",decoration:t[2]||\"normal\",href:null};return\"underline\"===this.__fontUnderline&&(e.decoration=\"underline\"),this.__fontHref&&(e.href=this.__fontHref),e},x.prototype.__wrapTextLink=function(t,e){if(t.href){var i=this.__createElement(\"a\");return i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.href),i.appendChild(e),i}return e},x.prototype.__applyText=function(t,e,i,n){var r,o,s,a,l=this.__parseFont(),h=this.__closestGroupOrSvg(),u=this.__createElement(\"text\",{\"font-family\":l.family,\"font-size\":l.size,\"font-style\":l.style,\"font-weight\":l.weight,\"text-decoration\":l.decoration,x:e,y:i,\"text-anchor\":(s=this.textAlign,a={left:\"start\",right:\"end\",center:\"middle\",start:\"start\",end:\"end\"},a[s]||a.start),\"dominant-baseline\":(r=this.textBaseline,o={alphabetic:\"alphabetic\",hanging:\"hanging\",top:\"text-before-edge\",bottom:\"text-after-edge\",middle:\"central\"},o[r]||o.alphabetic)},!0);u.appendChild(this.__document.createTextNode(t)),this.__currentElement=u,this.__applyStyleToCurrentElement(n),h.appendChild(this.__wrapTextLink(l,u))},x.prototype.fillText=function(t,e,i){this.__applyText(t,e,i,\"fill\")},x.prototype.strokeText=function(t,e,i){this.__applyText(t,e,i,\"stroke\")},x.prototype.measureText=function(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)},x.prototype.arc=function(t,e,i,n,r,o){if(n!==r){n%=2*Math.PI,r%=2*Math.PI,n===r&&(r=(r+2*Math.PI-.001*(o?-1:1))%(2*Math.PI));var s=t+i*Math.cos(r),a=e+i*Math.sin(r),l=t+i*Math.cos(n),h=e+i*Math.sin(n),u=o?0:1,c=0,_=r-n;_<0&&(_+=2*Math.PI),c=o?_>Math.PI?0:1:_>Math.PI?1:0,this.lineTo(l,h),this.__addPathCommand(f(\"A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}\",{rx:i,ry:i,xAxisRotation:0,largeArcFlag:c,sweepFlag:u,endX:s,endY:a})),this.__currentPosition={x:s,y:a}}},x.prototype.clip=function(){var t=this.__closestGroupOrSvg(),e=this.__createElement(\"clipPath\"),i=l(this.__ids),n=this.__createElement(\"g\");this.__applyCurrentDefaultPath(),t.removeChild(this.__currentElement),e.setAttribute(\"id\",i),e.appendChild(this.__currentElement),this.__defs.appendChild(e),t.setAttribute(\"clip-path\",f(\"url(#{id})\",{id:i})),t.appendChild(n),this.__currentElement=n},x.prototype.drawImage=function(){var t,e,i,n,r,o,s,a,l,h,u,c,_,p,d=Array.prototype.slice.call(arguments),f=d[0],v=0,m=0;if(3===d.length)t=d[1],e=d[2],r=f.width,o=f.height,i=r,n=o;else if(5===d.length)t=d[1],e=d[2],i=d[3],n=d[4],r=f.width,o=f.height;else{if(9!==d.length)throw new Error(\"Inavlid number of arguments passed to drawImage: \"+arguments.length);v=d[1],m=d[2],r=d[3],o=d[4],t=d[5],e=d[6],i=d[7],n=d[8]}s=this.__closestGroupOrSvg(),this.__currentElement;var g=\"translate(\"+t+\", \"+e+\")\";if(f instanceof x){if((a=f.getSvg().cloneNode(!0)).childNodes&&1<a.childNodes.length){for(l=a.childNodes[0];l.childNodes.length;)p=l.childNodes[0].getAttribute(\"id\"),this.__ids[p]=p,this.__defs.appendChild(l.childNodes[0]);if(h=a.childNodes[1]){var y,b=h.getAttribute(\"transform\");y=b?b+\" \"+g:g,h.setAttribute(\"transform\",y),s.appendChild(h)}}}else\"IMG\"===f.nodeName?((u=this.__createElement(\"image\")).setAttribute(\"width\",i),u.setAttribute(\"height\",n),u.setAttribute(\"preserveAspectRatio\",\"none\"),(v||m||r!==f.width||o!==f.height)&&((c=this.__document.createElement(\"canvas\")).width=i,c.height=n,(_=c.getContext(\"2d\")).drawImage(f,v,m,r,o,0,0,i,n),f=c),u.setAttribute(\"transform\",g),u.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===f.nodeName?f.toDataURL():f.getAttribute(\"src\")),s.appendChild(u)):\"CANVAS\"===f.nodeName&&((u=this.__createElement(\"image\")).setAttribute(\"width\",i),u.setAttribute(\"height\",n),u.setAttribute(\"preserveAspectRatio\",\"none\"),(c=this.__document.createElement(\"canvas\")).width=i,c.height=n,(_=c.getContext(\"2d\")).imageSmoothingEnabled=!1,_.mozImageSmoothingEnabled=!1,_.oImageSmoothingEnabled=!1,_.webkitImageSmoothingEnabled=!1,_.drawImage(f,v,m,r,o,0,0,i,n),f=c,u.setAttribute(\"transform\",g),u.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",f.toDataURL()),s.appendChild(u))},x.prototype.createPattern=function(t,e){var i,n=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"pattern\"),r=l(this.__ids);return n.setAttribute(\"id\",r),n.setAttribute(\"width\",t.width),n.setAttribute(\"height\",t.height),\"CANVAS\"===t.nodeName||\"IMG\"===t.nodeName?((i=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\")).setAttribute(\"width\",t.width),i.setAttribute(\"height\",t.height),i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===t.nodeName?t.toDataURL():t.getAttribute(\"src\")),n.appendChild(i),this.__defs.appendChild(n)):t instanceof x&&(n.appendChild(t.__root.childNodes[1]),this.__defs.appendChild(n)),new d(n,this)},x.prototype.setLineDash=function(t){t&&0<t.length?this.lineDash=t.join(\",\"):this.lineDash=null},x.prototype.drawFocusRing=function(){},x.prototype.createImageData=function(){},x.prototype.getImageData=function(){},x.prototype.putImageData=function(){},x.prototype.globalCompositeOperation=function(){},x.prototype.setTransform=function(){},\"object\"==typeof window&&(window.C2S=x),\"object\"==typeof e&&\"object\"==typeof e.exports&&(e.exports=x)}()},function(t,e,i){var n,o=t(307),r=t(317),s=t(321),a=t(316),l=t(321),h=t(323),u=Function.prototype.bind,c=Object.defineProperty,_=Object.prototype.hasOwnProperty;n=function(t,e,i){var n,r=h(e)&&l(e.value);return delete(n=o(e)).writable,delete n.value,n.get=function(){return!i.overwriteDefinition&&_.call(this,t)?r:(e.value=u.call(r,i.resolveContext?i.resolveContext(this):this),c(this,t,e),this[t])},n},e.exports=function(t){var i=r(arguments[1]);return null!=i.resolveContext&&s(i.resolveContext),a(t,function(t,e){return n(e,t,i)})}},function(t,e,i){var a=t(304),l=t(317),h=t(310),u=t(324);(e.exports=function(t,e){var i,n,r,o,s;return arguments.length<2||\"string\"!=typeof t?(o=e,e=t,t=null):o=arguments[2],null==t?(i=r=!0,n=!1):(i=u.call(t,\"c\"),n=u.call(t,\"e\"),r=u.call(t,\"w\")),s={value:e,configurable:i,enumerable:n,writable:r},o?a(l(o),s):s}).gs=function(t,e,i){var n,r,o,s;return\"string\"!=typeof t?(o=i,i=e,e=t,t=null):o=arguments[3],null==e?e=void 0:h(e)?null==i?i=void 0:h(i)||(o=i,i=void 0):(o=e,e=i=void 0),null==t?r=!(n=!0):(n=u.call(t,\"c\"),r=u.call(t,\"e\")),s={get:e,set:i,configurable:n,enumerable:r},o?a(l(o),s):s}},function(t,e,i){var n=t(323);e.exports=function(){return n(this).length=0,this}},function(t,e,i){e.exports=t(292)()?Array.from:t(293)},function(t,e,i){e.exports=function(){var t,e,i=Array.from;return\"function\"==typeof i&&(e=i(t=[\"raz\",\"dwa\"]),Boolean(e&&e!==t&&\"dwa\"===e[1]))}},function(t,e,i){var p=t(337).iterator,d=t(294),f=t(295),v=t(302),m=t(321),g=t(323),y=t(312),b=t(327),x=Array.isArray,w=Function.prototype.call,k={configurable:!0,enumerable:!0,writable:!0,value:null},S=Object.defineProperty;e.exports=function(t){var e,i,n,r,o,s,a,l,h,u,c=arguments[1],_=arguments[2];if(t=Object(g(t)),y(c)&&m(c),this&&this!==Array&&f(this))e=this;else{if(!c){if(d(t))return 1!==(o=t.length)?Array.apply(null,t):((r=new Array(1))[0]=t[0],r);if(x(t)){for(r=new Array(o=t.length),i=0;i<o;++i)r[i]=t[i];return r}}r=[]}if(!x(t))if(void 0!==(h=t[p])){for(a=m(h).call(t),e&&(r=new e),l=a.next(),i=0;!l.done;)u=c?w.call(c,_,l.value,i):l.value,e?(k.value=u,S(r,i,k)):r[i]=u,l=a.next(),++i;o=i}else if(b(t)){for(o=t.length,e&&(r=new e),n=i=0;i<o;++i)u=t[i],i+1<o&&55296<=(s=u.charCodeAt(0))&&s<=56319&&(u+=t[++i]),u=c?w.call(c,_,u,n):u,e?(k.value=u,S(r,n,k)):r[n]=u,++n;o=n}if(void 0===o)for(o=v(t.length),e&&(r=new e(o)),i=0;i<o;++i)u=c?w.call(c,_,t[i],i):t[i],e?(k.value=u,S(r,i,k)):r[i]=u;return e&&(k.value=null,r.length=o),r}},function(t,e,i){var n=Object.prototype.toString,r=n.call(function(){return arguments}());e.exports=function(t){return n.call(t)===r}},function(t,e,i){var n=Object.prototype.toString,r=n.call(t(296));e.exports=function(t){return\"function\"==typeof t&&n.call(t)===r}},function(t,e,i){e.exports=function(){}},function(t,e,i){e.exports=function(){return this}()},function(t,e,i){e.exports=t(299)()?Math.sign:t(300)},function(t,e,i){e.exports=function(){var t=Math.sign;return\"function\"==typeof t&&1===t(10)&&-1===t(-20)}},function(t,e,i){e.exports=function(t){return t=Number(t),isNaN(t)||0===t?t:0<t?1:-1}},function(t,e,i){var n=t(298),r=Math.abs,o=Math.floor;e.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?n(t)*o(r(t)):t}},function(t,e,i){var n=t(301),r=Math.max;e.exports=function(t){return r(0,n(t))}},function(t,e,i){var a=t(321),l=t(323),h=Function.prototype.bind,u=Function.prototype.call,c=Object.keys,_=Object.prototype.propertyIsEnumerable;e.exports=function(o,s){return function(i,n){var t,r=arguments[2],e=arguments[3];return i=Object(l(i)),a(n),t=c(i),e&&t.sort(\"function\"==typeof e?h.call(e,i):void 0),\"function\"!=typeof o&&(o=t[o]),u.call(o,t,function(t,e){return _.call(i,t)?u.call(n,r,i[t],t,i,e):s})}}},function(t,e,i){e.exports=t(305)()?Object.assign:t(306)},function(t,e,i){e.exports=function(){var t,e=Object.assign;return\"function\"==typeof e&&(e(t={foo:\"raz\"},{bar:\"dwa\"},{trzy:\"trzy\"}),t.foo+t.bar+t.trzy===\"razdwatrzy\")}},function(t,e,i){var s=t(313),a=t(323),l=Math.max;e.exports=function(e,i){var n,t,r,o=l(arguments.length,2);for(e=Object(a(e)),r=function(t){try{e[t]=i[t]}catch(t){n||(n=t)}},t=1;t<o;++t)i=arguments[t],s(i).forEach(r);if(void 0!==n)throw n;return e}},function(t,e,i){var o=t(291),s=t(304),a=t(323);e.exports=function(e){var t=Object(a(e)),i=arguments[1],n=Object(arguments[2]);if(t!==e&&!i)return t;var r={};return i?o(i,function(t){(n.ensure||t in e)&&(r[t]=e[t])}):s(r,e),r}},function(t,e,i){var n,r,o,s,a=Object.create;t(319)()||(n=t(320)),e.exports=n?1!==n.level?a:(s={configurable:(o={},!1),enumerable:(r={},!1),writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(t){o[t]=\"__proto__\"!==t?s:{configurable:!0,enumerable:!1,writable:!0,value:void 0}}),Object.defineProperties(r,o),Object.defineProperty(n,\"nullPolyfill\",{configurable:!1,enumerable:!1,writable:!1,value:r}),function(t,e){return a(null===t?r:t,e)}):a},function(t,e,i){e.exports=t(303)(\"forEach\")},function(t,e,i){e.exports=function(t){return\"function\"==typeof t}},function(t,e,i){var n=t(312),r={function:!0,object:!0};e.exports=function(t){return n(t)&&r[typeof t]||!1}},function(t,e,i){var n=t(296)();e.exports=function(t){return t!==n&&null!==t}},function(t,e,i){e.exports=t(314)()?Object.keys:t(315)},function(t,e,i){e.exports=function(){try{return Object.keys(\"primitive\"),!0}catch(t){return!1}}},function(t,e,i){var n=t(312),r=Object.keys;e.exports=function(t){return r(n(t)?Object(t):t)}},function(t,e,i){var n=t(321),a=t(309),l=Function.prototype.call;e.exports=function(t,r){var o={},s=arguments[2];return n(r),a(t,function(t,e,i,n){o[e]=l.call(r,s,t,e,i,n)}),o}},function(t,e,i){var n=t(312),r=Array.prototype.forEach,o=Object.create;e.exports=function(t){var e=o(null);return r.call(arguments,function(t){n(t)&&function(t,e){var i;for(i in t)e[i]=t[i]}(Object(t),e)}),e}},function(t,e,i){e.exports=t(319)()?Object.setPrototypeOf:t(320)},function(t,e,i){var n=Object.create,r=Object.getPrototypeOf,o={};e.exports=function(){var t=Object.setPrototypeOf,e=arguments[0]||n;return\"function\"==typeof t&&r(t(e(null),o))===o}},function(t,e,i){var r,n,o,s,a=t(311),l=t(323),h=Object.prototype.isPrototypeOf,u=Object.defineProperty,c={configurable:!0,enumerable:!1,writable:!0,value:void 0};r=function(t,e){if(l(t),null===e||a(e))return t;throw new TypeError(\"Prototype must be null or an object\")},e.exports=(n=function(){var t,e=Object.create(null),i={},n=Object.getOwnPropertyDescriptor(Object.prototype,\"__proto__\");if(n){try{(t=n.set).call(e,i)}catch(t){}if(Object.getPrototypeOf(e)===i)return{set:t,level:2}}return e.__proto__=i,Object.getPrototypeOf(e)===i?{level:2}:((e={}).__proto__=i,Object.getPrototypeOf(e)===i&&{level:1})}())?(2===n.level?n.set?(s=n.set,o=function(t,e){return s.call(r(t,e),e),t}):o=function(t,e){return r(t,e).__proto__=e,t}:o=function t(e,i){var n;return r(e,i),(n=h.call(t.nullPolyfill,e))&&delete t.nullPolyfill.__proto__,null===i&&(i=t.nullPolyfill),e.__proto__=i,n&&u(t.nullPolyfill,\"__proto__\",c),e},Object.defineProperty(o,\"level\",{configurable:!1,enumerable:!1,writable:!1,value:n.level})):null,t(308)},function(t,e,i){e.exports=function(t){if(\"function\"!=typeof t)throw new TypeError(t+\" is not a function\");return t}},function(t,e,i){var n=t(311);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not an Object\");return t}},function(t,e,i){var n=t(312);e.exports=function(t){if(!n(t))throw new TypeError(\"Cannot use null or undefined\");return t}},function(t,e,i){e.exports=t(325)()?String.prototype.contains:t(326)},function(t,e,i){var n=\"razdwatrzy\";e.exports=function(){return\"function\"==typeof n.contains&&!0===n.contains(\"dwa\")&&!1===n.contains(\"foo\")}},function(t,e,i){var n=String.prototype.indexOf;e.exports=function(t){return-1<n.call(this,t,arguments[1])}},function(t,e,i){var n=Object.prototype.toString,r=n.call(\"\");e.exports=function(t){return\"string\"==typeof t||t&&\"object\"==typeof t&&(t instanceof String||n.call(t)===r)||!1}},function(t,e,i){var n=Object.create(null),r=Math.random;e.exports=function(){for(var t;t=r().toString(36).slice(2),n[t];);return t}},function(t,e,i){var n,r=t(318),o=t(324),s=t(289),a=t(337),l=t(332),h=Object.defineProperty;n=e.exports=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");l.call(this,t),e=e?o.call(e,\"key+value\")?\"key+value\":o.call(e,\"key\")?\"key\":\"value\":\"value\",h(this,\"__kind__\",s(\"\",e))},r&&r(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:s(function(t){return\"value\"===this.__kind__?this.__list__[t]:\"key+value\"===this.__kind__?[t,this.__list__[t]]:t})}),h(n.prototype,a.toStringTag,s(\"c\",\"Array Iterator\"))},function(t,e,i){var c=t(294),_=t(321),p=t(327),d=t(331),f=Array.isArray,v=Function.prototype.call,m=Array.prototype.some;e.exports=function(t,e){var i,n,r,o,s,a,l,h,u=arguments[2];if(f(t)||c(t)?i=\"array\":p(t)?i=\"string\":t=d(t),_(e),r=function(){o=!0},\"array\"!==i)if(\"string\"!==i)for(n=t.next();!n.done;){if(v.call(e,u,n.value,r),o)return;n=t.next()}else for(a=t.length,s=0;s<a&&(l=t[s],s+1<a&&55296<=(h=l.charCodeAt(0))&&h<=56319&&(l+=t[++s]),v.call(e,u,l,r),!o);++s);else m.call(t,function(t){return v.call(e,u,t,r),o})}},function(t,e,i){var n=t(294),r=t(327),o=t(329),s=t(334),a=t(335),l=t(337).iterator;e.exports=function(t){return\"function\"==typeof a(t)[l]?t[l]():n(t)?new o(t):r(t)?new s(t):new o(t)}},function(t,e,i){var n,r=t(290),o=t(304),s=t(321),a=t(323),l=t(289),h=t(288),u=t(337),c=Object.defineProperty,_=Object.defineProperties;e.exports=n=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");_(this,{__list__:l(\"w\",a(t)),__context__:l(\"w\",e),__nextIndex__:l(\"w\",0)}),e&&(s(e.on),e.on(\"_add\",this._onAdd),e.on(\"_delete\",this._onDelete),e.on(\"_clear\",this._onClear))},delete n.prototype.constructor,_(n.prototype,o({_next:l(function(){var t;if(this.__list__)return this.__redo__&&void 0!==(t=this.__redo__.shift())?t:this.__nextIndex__<this.__list__.length?this.__nextIndex__++:void this._unBind()}),next:l(function(){return this._createResult(this._next())}),_createResult:l(function(t){return void 0===t?{done:!0,value:void 0}:{done:!1,value:this._resolve(t)}}),_resolve:l(function(t){return this.__list__[t]}),_unBind:l(function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off(\"_add\",this._onAdd),this.__context__.off(\"_delete\",this._onDelete),this.__context__.off(\"_clear\",this._onClear),this.__context__=null)}),toString:l(function(){return\"[object \"+(this[u.toStringTag]||\"Object\")+\"]\"})},h({_onAdd:l(function(i){i>=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach(function(t,e){i<=t&&(this.__redo__[e]=++t)},this),this.__redo__.push(i)):c(this,\"__redo__\",l(\"c\",[i])))}),_onDelete:l(function(i){var t;i>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(t=this.__redo__.indexOf(i))&&this.__redo__.splice(t,1),this.__redo__.forEach(function(t,e){i<t&&(this.__redo__[e]=--t)},this)))}),_onClear:l(function(){this.__redo__&&r.call(this.__redo__),this.__nextIndex__=0})}))),c(n.prototype,u.iterator,l(function(){return this}))},function(t,e,i){var n=t(294),r=t(312),o=t(327),s=t(337).iterator,a=Array.isArray;e.exports=function(t){return!(!r(t)||!a(t)&&!o(t)&&!n(t)&&\"function\"!=typeof t[s])}},function(t,e,i){var n,r=t(318),o=t(289),s=t(337),a=t(332),l=Object.defineProperty;n=e.exports=function(t){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");t=String(t),a.call(this,t),l(this,\"__length__\",o(\"\",t.length))},r&&r(n,a),delete n.prototype.constructor,n.prototype=Object.create(a.prototype,{_next:o(function(){if(this.__list__)return this.__nextIndex__<this.__length__?this.__nextIndex__++:void this._unBind()}),_resolve:o(function(t){var e,i=this.__list__[t];return this.__nextIndex__===this.__length__?i:55296<=(e=i.charCodeAt(0))&&e<=56319?i+this.__list__[this.__nextIndex__++]:i})}),l(n.prototype,s.toStringTag,o(\"c\",\"String Iterator\"))},function(t,e,i){var n=t(333);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not iterable\");return t}},function(L,t,e){\n      /*!\n           * @overview es6-promise - a tiny implementation of Promises/A+.\n           * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)\n           * @license   Licensed under MIT license\n           *            See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE\n           * @version   v4.2.4+314e4831\n           */var i,n;i=this,n=function(){\"use strict\";function h(t){return\"function\"==typeof t}var i=Array.isArray?Array.isArray:function(t){return\"[object Array]\"===Object.prototype.toString.call(t)},n=0,e=void 0,r=void 0,a=function(t,e){_[n]=t,_[n+1]=e,2===(n+=2)&&(r?r(p):g())},t=\"undefined\"!=typeof window?window:void 0,o=t||{},s=o.MutationObserver||o.WebKitMutationObserver,l=\"undefined\"==typeof self&&\"undefined\"!=typeof process&&\"[object process]\"==={}.toString.call(process),u=\"undefined\"!=typeof Uint8ClampedArray&&\"undefined\"!=typeof importScripts&&\"undefined\"!=typeof MessageChannel;function c(){var t=setTimeout;return function(){return t(p,1)}}var _=new Array(1e3);function p(){for(var t=0;t<n;t+=2){var e=_[t],i=_[t+1];e(i),_[t]=void 0,_[t+1]=void 0}n=0}var d,f,v,m,g=void 0;function y(t,e){var i=this,n=new this.constructor(w);void 0===n[x]&&I(n);var r=i._state;if(r){var o=arguments[r-1];a(function(){return F(r,n,o,i._result)})}else j(i,n,t,e);return n}function b(t){if(t&&\"object\"==typeof t&&t.constructor===this)return t;var e=new this(w);return M(e,t),e}l?g=function(){return process.nextTick(p)}:s?(f=0,v=new s(p),m=document.createTextNode(\"\"),v.observe(m,{characterData:!0}),g=function(){m.data=f=++f%2}):u?((d=new MessageChannel).port1.onmessage=p,g=function(){return d.port2.postMessage(0)}):g=void 0===t&&\"function\"==typeof L?function(){try{var t=Function(\"return this\")().require(\"vertx\");return void 0!==(e=t.runOnLoop||t.runOnContext)?function(){e(p)}:c()}catch(t){return c()}}():c();var x=Math.random().toString(36).substring(2);function w(){}var k=void 0,S=1,C=2,T={error:null};function A(t){try{return t.then}catch(t){return T.error=t,T}}function E(t,e,i){var n,r,o,s;e.constructor===t.constructor&&i===y&&e.constructor.resolve===b?(o=t,(s=e)._state===S?z(o,s._result):s._state===C?P(o,s._result):j(s,void 0,function(t){return M(o,t)},function(t){return P(o,t)})):i===T?(P(t,T.error),T.error=null):void 0===i?z(t,e):h(i)?(n=e,r=i,a(function(e){var i=!1,t=function(t,e,i,n){try{t.call(e,i,n)}catch(t){return t}}(r,n,function(t){i||(i=!0,n!==t?M(e,t):z(e,t))},function(t){i||(i=!0,P(e,t))},e._label);!i&&t&&(i=!0,P(e,t))},t)):z(t,e)}function M(t,e){var i,n;t===e?P(t,new TypeError(\"You cannot resolve a promise with itself\")):(n=typeof(i=e),null===i||\"object\"!==n&&\"function\"!==n?z(t,e):E(t,e,A(e)))}function O(t){t._onerror&&t._onerror(t._result),N(t)}function z(t,e){t._state===k&&(t._result=e,t._state=S,0!==t._subscribers.length&&a(N,t))}function P(t,e){t._state===k&&(t._state=C,t._result=e,a(O,t))}function j(t,e,i,n){var r=t._subscribers,o=r.length;t._onerror=null,r[o]=e,r[o+S]=i,r[o+C]=n,0===o&&t._state&&a(N,t)}function N(t){var e=t._subscribers,i=t._state;if(0!==e.length){for(var n=void 0,r=void 0,o=t._result,s=0;s<e.length;s+=3)n=e[s],r=e[s+i],n?F(i,n,r,o):r(o);t._subscribers.length=0}}function F(t,e,i,n){var r=h(i),o=void 0,s=void 0,a=void 0,l=void 0;if(r){if((o=function(t,e){try{return t(e)}catch(t){return T.error=t,T}}(i,n))===T?(l=!0,s=o.error,o.error=null):a=!0,e===o)return void P(e,new TypeError(\"A promises callback cannot return that same promise.\"))}else o=n,a=!0;e._state!==k||(r&&a?M(e,o):l?P(e,s):t===S?z(e,o):t===C&&P(e,o))}var D=0;function I(t){t[x]=D++,t._state=void 0,t._result=void 0,t._subscribers=[]}var R=function(){function t(t,e){this._instanceConstructor=t,this.promise=new t(w),this.promise[x]||I(this.promise),i(e)?(this.length=e.length,this._remaining=e.length,this._result=new Array(this.length),0===this.length?z(this.promise,this._result):(this.length=this.length||0,this._enumerate(e),0===this._remaining&&z(this.promise,this._result))):P(this.promise,new Error(\"Array Methods must be provided an Array\"))}return t.prototype._enumerate=function(t){for(var e=0;this._state===k&&e<t.length;e++)this._eachEntry(t[e],e)},t.prototype._eachEntry=function(e,t){var i=this._instanceConstructor,n=i.resolve;if(n===b){var r=A(e);if(r===y&&e._state!==k)this._settledAt(e._state,t,e._result);else if(\"function\"!=typeof r)this._remaining--,this._result[t]=e;else if(i===B){var o=new i(w);E(o,e,r),this._willSettleAt(o,t)}else this._willSettleAt(new i(function(t){return t(e)}),t)}else this._willSettleAt(n(e),t)},t.prototype._settledAt=function(t,e,i){var n=this.promise;n._state===k&&(this._remaining--,t===C?P(n,i):this._result[e]=i),0===this._remaining&&z(n,this._result)},t.prototype._willSettleAt=function(t,e){var i=this;j(t,void 0,function(t){return i._settledAt(S,e,t)},function(t){return i._settledAt(C,e,t)})},t}(),B=function(){function e(t){this[x]=D++,this._result=this._state=void 0,this._subscribers=[],w!==t&&(\"function\"!=typeof t&&function(){throw new TypeError(\"You must pass a resolver function as the first argument to the promise constructor\")}(),this instanceof e?function(e,t){try{t(function(t){M(e,t)},function(t){P(e,t)})}catch(t){P(e,t)}}(this,t):function(){throw new TypeError(\"Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.\")}())}return e.prototype.catch=function(t){return this.then(null,t)},e.prototype.finally=function(e){var i=this.constructor;return this.then(function(t){return i.resolve(e()).then(function(){return t})},function(t){return i.resolve(e()).then(function(){throw t})})},e}();return B.prototype.then=y,B.all=function(t){return new R(this,t).promise},B.race=function(r){var o=this;return i(r)?new o(function(t,e){for(var i=r.length,n=0;n<i;n++)o.resolve(r[n]).then(t,e)}):new o(function(t,e){return e(new TypeError(\"You must pass an array to race.\"))})},B.resolve=b,B.reject=function(t){var e=new this(w);return P(e,t),e},B._setScheduler=function(t){r=t},B._setAsap=function(t){a=t},B._asap=a,B.polyfill=function(){var t=void 0;if(\"undefined\"!=typeof global)t=global;else if(\"undefined\"!=typeof self)t=self;else try{t=Function(\"return this\")()}catch(t){throw new Error(\"polyfill failed because global object is unavailable in this environment\")}var e=t.Promise;if(e){var i=null;try{i=Object.prototype.toString.call(e.resolve())}catch(t){}if(\"[object Promise]\"===i&&!e.cast)return}t.Promise=B},B.Promise=B},\"object\"==typeof e&&void 0!==t?t.exports=n():i.ES6Promise=n()},function(t,e,i){e.exports=t(338)()?Symbol:t(340)},function(t,e,i){var n={object:!0,symbol:!0};e.exports=function(){var t;if(\"function\"!=typeof Symbol)return!1;t=Symbol(\"test symbol\");try{String(t)}catch(t){return!1}return!!n[typeof Symbol.iterator]&&!!n[typeof Symbol.toPrimitive]&&!!n[typeof Symbol.toStringTag]}},function(t,e,i){e.exports=function(t){return!!t&&(\"symbol\"==typeof t||!!t.constructor&&\"Symbol\"===t.constructor.name&&\"Symbol\"===t[t.constructor.toStringTag])}},function(t,e,i){var n,r,o,s,a=t(289),l=t(341),h=Object.create,u=Object.defineProperties,c=Object.defineProperty,_=Object.prototype,p=h(null);if(\"function\"==typeof Symbol){n=Symbol;try{String(n()),s=!0}catch(t){}}var d,f=(d=h(null),function(t){for(var e,i,n=0;d[t+(n||\"\")];)++n;return d[t+=n||\"\"]=!0,c(_,e=\"@@\"+t,a.gs(null,function(t){i||(i=!0,c(this,e,a(t)),i=!1)})),e});o=function(t){if(this instanceof o)throw new TypeError(\"Symbol is not a constructor\");return r(t)},e.exports=r=function t(e){var i;if(this instanceof t)throw new TypeError(\"Symbol is not a constructor\");return s?n(e):(i=h(o.prototype),e=void 0===e?\"\":String(e),u(i,{__description__:a(\"\",e),__name__:a(\"\",f(e))}))},u(r,{for:a(function(t){return p[t]?p[t]:p[t]=r(String(t))}),keyFor:a(function(t){var e;for(e in l(t),p)if(p[e]===t)return e}),hasInstance:a(\"\",n&&n.hasInstance||r(\"hasInstance\")),isConcatSpreadable:a(\"\",n&&n.isConcatSpreadable||r(\"isConcatSpreadable\")),iterator:a(\"\",n&&n.iterator||r(\"iterator\")),match:a(\"\",n&&n.match||r(\"match\")),replace:a(\"\",n&&n.replace||r(\"replace\")),search:a(\"\",n&&n.search||r(\"search\")),species:a(\"\",n&&n.species||r(\"species\")),split:a(\"\",n&&n.split||r(\"split\")),toPrimitive:a(\"\",n&&n.toPrimitive||r(\"toPrimitive\")),toStringTag:a(\"\",n&&n.toStringTag||r(\"toStringTag\")),unscopables:a(\"\",n&&n.unscopables||r(\"unscopables\"))}),u(o.prototype,{constructor:a(r),toString:a(\"\",function(){return this.__name__})}),u(r.prototype,{toString:a(function(){return\"Symbol (\"+l(this).__description__+\")\"}),valueOf:a(function(){return l(this)})}),c(r.prototype,r.toPrimitive,a(\"\",function(){var t=l(this);return\"symbol\"==typeof t?t:t.toString()})),c(r.prototype,r.toStringTag,a(\"c\",\"Symbol\")),c(o.prototype,r.toStringTag,a(\"c\",r.prototype[r.toStringTag])),c(o.prototype,r.toPrimitive,a(\"c\",r.prototype[r.toPrimitive]))},function(t,e,i){var n=t(339);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not a symbol\");return t}},function(t,e,i){t(343)()||Object.defineProperty(t(297),\"WeakMap\",{value:t(345),configurable:!0,enumerable:!1,writable:!0})},function(t,e,i){e.exports=function(){var t,e;if(\"function\"!=typeof WeakMap)return!1;try{t=new WeakMap([[e={},\"one\"],[{},\"two\"],[{},\"three\"]])}catch(t){return!1}return\"[object WeakMap]\"===String(t)&&\"function\"==typeof t.set&&t.set({},1)===t&&\"function\"==typeof t.delete&&\"function\"==typeof t.has&&\"one\"===t.get(e)}},function(t,e,i){e.exports=\"function\"==typeof WeakMap&&\"[object WeakMap]\"===Object.prototype.toString.call(new WeakMap)},function(t,e,i){var n,r=t(318),o=t(322),s=t(323),a=t(328),l=t(289),h=t(331),u=t(330),c=t(337).toStringTag,_=t(344),p=Array.isArray,d=Object.defineProperty,f=Object.prototype.hasOwnProperty,v=Object.getPrototypeOf;e.exports=n=function(){var e,t=arguments[0];if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");return e=_&&r&&WeakMap!==n?r(new WeakMap,v(this)):this,null!=t&&(p(t)||(t=h(t))),d(e,\"__weakMapData__\",l(\"c\",\"$weakMap$\"+a())),t&&u(t,function(t){s(t),e.set(t[0],t[1])}),e},_&&(r&&r(n,WeakMap),n.prototype=Object.create(WeakMap.prototype,{constructor:l(n)})),Object.defineProperties(n.prototype,{delete:l(function(t){return!!f.call(o(t),this.__weakMapData__)&&(delete t[this.__weakMapData__],!0)}),get:l(function(t){if(f.call(o(t),this.__weakMapData__))return t[this.__weakMapData__]}),has:l(function(t){return f.call(o(t),this.__weakMapData__)}),set:l(function(t,e){return d(o(t),this.__weakMapData__,l(\"c\",e)),this}),toString:l(function(){return\"[object WeakMap]\"})}),d(n.prototype,c,l(\"c\",\"WeakMap\"))},function(t,e,i){var n,r;n=this,r=function(){\"use strict\";var l=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],h=function(t,e,i,n){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(+e||16,2),65535);var r=t,o=r;for(this._levelBounds=[4*r];r=Math.ceil(r/this.nodeSize),o+=r,this._levelBounds.push(4*o),1!==r;);this.ArrayType=i||Float64Array,this.IndexArrayType=o<16384?Uint16Array:Uint32Array;var s=l.indexOf(this.ArrayType),a=4*o*this.ArrayType.BYTES_PER_ELEMENT;if(s<0)throw new Error(\"Unexpected typed array class: \"+i+\".\");n&&n instanceof ArrayBuffer?(this.data=n,this._boxes=new this.ArrayType(this.data,8,4*o),this._indices=new this.IndexArrayType(this.data,8+a,o),this._pos=4*o,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+a+o*this.IndexArrayType.BYTES_PER_ELEMENT),this._boxes=new this.ArrayType(this.data,8,4*o),this._indices=new this.IndexArrayType(this.data,8+a,o),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+s]),new Uint16Array(this.data,2,1)[0]=e,new Uint32Array(this.data,4,1)[0]=t)};function C(t,e,i,n,r){var o=t[n];t[n]=t[r],t[r]=o;var s=4*n,a=4*r,l=e[s],h=e[s+1],u=e[s+2],c=e[s+3];e[s]=e[a],e[s+1]=e[a+1],e[s+2]=e[a+2],e[s+3]=e[a+3],e[a]=l,e[a+1]=h,e[a+2]=u,e[a+3]=c;var _=i[n];i[n]=i[r],i[r]=_}function T(t,e){var i=t^e,n=65535^i,r=65535^(t|e),o=t&(65535^e),s=i|n>>1,a=i>>1^i,l=r>>1^n&o>>1^r,h=i&r>>1^o>>1^o;a=(i=s)&(n=a)>>2^n&(i^n)>>2,l^=i&(r=l)>>2^n&(o=h)>>2,h^=n&r>>2^(i^n)&o>>2,a=(i=s=i&i>>2^n&n>>2)&(n=a)>>4^n&(i^n)>>4,l^=i&(r=l)>>4^n&(o=h)>>4,h^=n&r>>4^(i^n)&o>>4,l^=(i=s=i&i>>4^n&n>>4)&(r=l)>>8^(n=a)&(o=h)>>8;var u=t^e,c=(n=(h^=n&r>>8^(i^n)&o>>8)^h>>1)|65535^(u|(i=l^l>>1));return((c=1431655765&((c=858993459&((c=252645135&((c=16711935&(c|c<<8))|c<<4))|c<<2))|c<<1))<<1|(u=1431655765&((u=858993459&((u=252645135&((u=16711935&(u|u<<8))|u<<4))|u<<2))|u<<1)))>>>0}return h.from=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");var e=new Uint8Array(t,0,2),i=e[0],n=e[1];if(251!==i)throw new Error(\"Data does not appear to be in a Flatbush format.\");if(n>>4!=3)throw new Error(\"Got v\"+(n>>4)+\" data when expected v3.\");var r=new Uint16Array(t,2,1),o=r[0],s=new Uint32Array(t,4,1),a=s[0];return new h(a,o,l[15&n],t)},h.prototype.add=function(t,e,i,n){var r=this._pos>>2;this._indices[r]=r,this._boxes[this._pos++]=t,this._boxes[this._pos++]=e,this._boxes[this._pos++]=i,this._boxes[this._pos++]=n,t<this.minX&&(this.minX=t),e<this.minY&&(this.minY=e),i>this.maxX&&(this.maxX=i),n>this.maxY&&(this.maxY=n)},h.prototype.finish=function(){var t=this;if(this._pos>>2!==this.numItems)throw new Error(\"Added \"+(this._pos>>2)+\" items when expected \"+this.numItems+\".\");for(var e=this.maxX-this.minX,i=this.maxY-this.minY,n=new Uint32Array(this.numItems),r=0;r<this.numItems;r++){var o=4*r,s=t._boxes[o++],a=t._boxes[o++],l=t._boxes[o++],h=t._boxes[o++],u=Math.floor(65535*((s+l)/2-t.minX)/e),c=Math.floor(65535*((a+h)/2-t.minY)/i);n[r]=T(u,c)}!function t(e,i,n,r,o){if(!(o<=r)){for(var s=e[r+o>>1],a=r-1,l=o+1;;){for(;e[++a]<s;);for(;e[--l]>s;);if(l<=a)break;C(e,i,n,a,l)}t(e,i,n,r,l),t(e,i,n,l+1,o)}}(n,this._boxes,this._indices,0,this.numItems-1);for(var _=0,p=0;_<this._levelBounds.length-1;_++)for(var d=t._levelBounds[_];p<d;){for(var f=1/0,v=1/0,m=-1/0,g=-1/0,y=p,b=0;b<this.nodeSize&&p<d;b++){var x=t._boxes[p++],w=t._boxes[p++],k=t._boxes[p++],S=t._boxes[p++];x<f&&(f=x),w<v&&(v=w),m<k&&(m=k),g<S&&(g=S)}t._indices[t._pos>>2]=y,t._boxes[t._pos++]=f,t._boxes[t._pos++]=v,t._boxes[t._pos++]=m,t._boxes[t._pos++]=g}},h.prototype.search=function(t,e,i,n,r){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");for(var o=this._boxes.length-4,s=this._levelBounds.length-1,a=[],l=[];void 0!==o;){for(var h=Math.min(o+4*this.nodeSize,this._levelBounds[s]),u=o;u<h;u+=4){var c=this._indices[u>>2];i<this._boxes[u]||n<this._boxes[u+1]||t>this._boxes[u+2]||e>this._boxes[u+3]||(o<4*this.numItems?(void 0===r||r(c))&&l.push(c):(a.push(c),a.push(s-1)))}s=a.pop(),o=a.pop()}return l},h},\"object\"==typeof i&&void 0!==e?e.exports=r():n.Flatbush=r()},function(t,Yt,e){\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(o,a,t,x){\"use strict\";var s,l=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],e=a.createElement(\"div\"),i=\"function\",h=Math.round,w=Math.abs,k=Date.now;function u(t,e,i){return setTimeout(f(t,i),e)}function n(t,e,i){return!!Array.isArray(t)&&(c(t,i[e],i),!0)}function c(t,e,i){var n;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==x)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 r(n,t,e){var r=\"DEPRECATED METHOD: \"+t+\"\\n\"+e+\" AT \\n\";return function(){var t=new Error(\"get-stack-trace\"),e=t&&t.stack?t.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",i=o.console&&(o.console.warn||o.console.log);return i&&i.call(o.console,r,e),n.apply(this,arguments)}}s=\"function\"!=typeof Object.assign?function(t){if(t===x||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!==x&&null!==n)for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}return e}:Object.assign;var _=r(function(t,e,i){for(var n=Object.keys(e),r=0;r<n.length;)(!i||i&&t[n[r]]===x)&&(t[n[r]]=e[n[r]]),r++;return t},\"extend\",\"Use `assign`.\"),p=r(function(t,e){return _(t,e,!0)},\"merge\",\"Use `assign`.\");function d(t,e,i){var n,r=e.prototype;(n=t.prototype=Object.create(r)).constructor=t,n._super=r,i&&s(n,i)}function f(t,e){return function(){return t.apply(e,arguments)}}function v(t,e){return typeof t==i?t.apply(e&&e[0]||x,e):t}function m(t,e){return t===x?e:t}function g(e,t,i){c(C(t),function(t){e.addEventListener(t,i,!1)})}function y(e,t,i){c(C(t),function(t){e.removeEventListener(t,i,!1)})}function S(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function b(t,e){return-1<t.indexOf(e)}function C(t){return t.trim().split(/\\s+/g)}function T(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 A(t){return Array.prototype.slice.call(t,0)}function E(t,i,e){for(var n=[],r=[],o=0;o<t.length;){var s=i?t[o][i]:t[o];T(r,s)<0&&n.push(t[o]),r[o]=s,o++}return e&&(n=i?n.sort(function(t,e){return t[i]>e[i]}):n.sort()),n}function M(t,e){for(var i,n,r=e[0].toUpperCase()+e.slice(1),o=0;o<l.length;){if(i=l[o],(n=i?i+r:e)in t)return n;o++}return x}var O=1;function z(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||o}var P=\"ontouchstart\"in o,j=M(o,\"PointerEvent\")!==x,N=P&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),F=\"touch\",D=25,I=1,R=4,B=8,L=1,V=2,G=4,U=8,q=16,Y=V|G,X=U|q,H=Y|X,W=[\"x\",\"y\"],J=[\"clientX\",\"clientY\"];function Q(e,t){var i=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){v(e.options.enable,[e])&&i.handler(t)},this.init()}function $(t,e,i){var n=i.pointers.length,r=i.changedPointers.length,o=e&I&&n-r==0,s=e&(R|B)&&n-r==0;i.isFirst=!!o,i.isFinal=!!s,o&&(t.session={}),i.eventType=e,function(t,e){var i=t.session,n=e.pointers,r=n.length;i.firstInput||(i.firstInput=K(e)),1<r&&!i.firstMultiple?i.firstMultiple=K(e):1===r&&(i.firstMultiple=!1);var o,s,a,l,h,u,c=i.firstInput,_=i.firstMultiple,p=_?_.center:c.center,d=e.center=Z(n);e.timeStamp=k(),e.deltaTime=e.timeStamp-c.timeStamp,e.angle=nt(p,d),e.distance=it(p,d),o=i,a=(s=e).center,l=o.offsetDelta||{},h=o.prevDelta||{},u=o.prevInput||{},s.eventType!==I&&u.eventType!==R||(h=o.prevDelta={x:u.deltaX||0,y:u.deltaY||0},l=o.offsetDelta={x:a.x,y:a.y}),s.deltaX=h.x+(a.x-l.x),s.deltaY=h.y+(a.y-l.y),e.offsetDirection=et(e.deltaX,e.deltaY);var f,v,m,g,y=tt(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=y.x,e.overallVelocityY=y.y,e.overallVelocity=w(y.x)>w(y.y)?y.x:y.y,e.scale=_?(m=_.pointers,it((g=n)[0],g[1],J)/it(m[0],m[1],J)):1,e.rotation=_?(f=_.pointers,nt((v=n)[1],v[0],J)+nt(f[1],f[0],J)):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,r,o,s=t.lastInterval||e,a=e.timeStamp-s.timeStamp;if(e.eventType!=B&&(D<a||s.velocity===x)){var l=e.deltaX-s.deltaX,h=e.deltaY-s.deltaY,u=tt(a,l,h);n=u.x,r=u.y,i=w(u.x)>w(u.y)?u.x:u.y,o=et(l,h),t.lastInterval=e}else i=s.velocity,n=s.velocityX,r=s.velocityY,o=s.direction;e.velocity=i,e.velocityX=n,e.velocityY=r,e.direction=o}(i,e);var b=t.element;S(e.srcEvent.target,b)&&(b=e.srcEvent.target),e.target=b}(t,i),t.emit(\"hammer.input\",i),t.recognize(i),t.session.prevInput=i}function K(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:k(),pointers:e,center:Z(e),deltaX:t.deltaX,deltaY:t.deltaY}}function Z(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 tt(t,e,i){return{x:e/t||0,y:i/t||0}}function et(t,e){return t===e?L:w(t)>=w(e)?t<0?V:G:e<0?U:q}function it(t,e,i){i||(i=W);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return Math.sqrt(n*n+r*r)}function nt(t,e,i){i||(i=W);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&&g(this.element,this.evEl,this.domHandler),this.evTarget&&g(this.target,this.evTarget,this.domHandler),this.evWin&&g(z(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&y(this.element,this.evEl,this.domHandler),this.evTarget&&y(this.target,this.evTarget,this.domHandler),this.evWin&&y(z(this.element),this.evWin,this.domHandler)}};var rt={mousedown:I,mousemove:2,mouseup:R},ot=\"mousedown\",st=\"mousemove mouseup\";function at(){this.evEl=ot,this.evWin=st,this.pressed=!1,Q.apply(this,arguments)}d(at,Q,{handler:function(t){var e=rt[t.type];e&I&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=R),this.pressed&&(e&R&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:\"mouse\",srcEvent:t}))}});var lt={pointerdown:I,pointermove:2,pointerup:R,pointercancel:B,pointerout:B},ht={2:F,3:\"pen\",4:\"mouse\",5:\"kinect\"},ut=\"pointerdown\",ct=\"pointermove pointerup pointercancel\";function _t(){this.evEl=ut,this.evWin=ct,Q.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}o.MSPointerEvent&&!o.PointerEvent&&(ut=\"MSPointerDown\",ct=\"MSPointerMove MSPointerUp MSPointerCancel\"),d(_t,Q,{handler:function(t){var e=this.store,i=!1,n=t.type.toLowerCase().replace(\"ms\",\"\"),r=lt[n],o=ht[t.pointerType]||t.pointerType,s=o==F,a=T(e,t.pointerId,\"pointerId\");r&I&&(0===t.button||s)?a<0&&(e.push(t),a=e.length-1):r&(R|B)&&(i=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:o,srcEvent:t}),i&&e.splice(a,1))}});var pt={touchstart:I,touchmove:2,touchend:R,touchcancel:B};function dt(){this.evTarget=\"touchstart\",this.evWin=\"touchstart touchmove touchend touchcancel\",this.started=!1,Q.apply(this,arguments)}d(dt,Q,{handler:function(t){var e=pt[t.type];if(e===I&&(this.started=!0),this.started){var i=function(t,e){var i=A(t.touches),n=A(t.changedTouches);return e&(R|B)&&(i=E(i.concat(n),\"identifier\",!0)),[i,n]}.call(this,t,e);e&(R|B)&&i[0].length-i[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:F,srcEvent:t})}}});var ft={touchstart:I,touchmove:2,touchend:R,touchcancel:B},vt=\"touchstart touchmove touchend touchcancel\";function mt(){this.evTarget=vt,this.targetIds={},Q.apply(this,arguments)}d(mt,Q,{handler:function(t){var e=ft[t.type],i=function(t,e){var i=A(t.touches),n=this.targetIds;if(e&(2|I)&&1===i.length)return n[i[0].identifier]=!0,[i,i];var r,o,s=A(t.changedTouches),a=[],l=this.target;if(o=i.filter(function(t){return S(t.target,l)}),e===I)for(r=0;r<o.length;)n[o[r].identifier]=!0,r++;for(r=0;r<s.length;)n[s[r].identifier]&&a.push(s[r]),e&(R|B)&&delete n[s[r].identifier],r++;return a.length?[E(o.concat(a),\"identifier\",!0),a]:void 0}.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:F,srcEvent:t})}});var gt=2500;function yt(){Q.apply(this,arguments);var t=f(this.handler,this);this.touch=new mt(this.manager,t),this.mouse=new at(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function bt(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);-1<t&&n.splice(t,1)},gt)}}d(yt,Q,{handler:function(t,e,i){var n=i.pointerType==F,r=\"mouse\"==i.pointerType;if(!(r&&i.sourceCapabilities&&i.sourceCapabilities.firesTouchEvents)){if(n)(function(t,e){t&I?(this.primaryTouch=e.changedPointers[0].identifier,bt.call(this,e)):t&(R|B)&&bt.call(this,e)}).call(this,e,i);else if(r&&function(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,n=0;n<this.lastTouches.length;n++){var r=this.lastTouches[n],o=Math.abs(e-r.x),s=Math.abs(i-r.y);if(o<=25&&s<=25)return!0}return!1}.call(this,i))return;this.callback(t,e,i)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var xt=M(e.style,\"touchAction\"),wt=xt!==x,kt=\"manipulation\",St=\"none\",Ct=\"pan-x\",Tt=\"pan-y\",At=function(){if(!wt)return!1;var e={},i=o.CSS&&o.CSS.supports;return[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach(function(t){e[t]=!i||o.CSS.supports(\"touch-action\",t)}),e}();function Et(t,e){this.manager=t,this.set(e)}Et.prototype={set:function(t){\"compute\"==t&&(t=this.compute()),wt&&this.manager.element.style&&At[t]&&(this.manager.element.style[xt]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return c(this.manager.recognizers,function(t){v(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),function(t){if(b(t,St))return St;var e=b(t,Ct),i=b(t,Tt);return e&&i?St:e||i?e?Ct:Tt:b(t,kt)?kt:\"auto\"}(e.join(\" \"))},preventDefaults:function(t){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var n=this.actions,r=b(n,St)&&!At.none,o=b(n,Tt)&&!At[Tt],s=b(n,Ct)&&!At[Ct];if(r){var a=1===t.pointers.length,l=t.distance<2,h=t.deltaTime<250;if(a&&l&&h)return}if(!s||!o)return r||o&&i&Y||s&&i&X?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var Mt=1;function Ot(t){this.options=s({},this.defaults,t||{}),this.id=O++,this.manager=null,this.options.enable=m(this.options.enable,!0),this.state=Mt,this.simultaneous={},this.requireFail=[]}function zt(t){return 16&t?\"cancel\":8&t?\"end\":4&t?\"move\":2&t?\"start\":\"\"}function Pt(t){return t==q?\"down\":t==U?\"up\":t==V?\"left\":t==G?\"right\":\"\"}function jt(t,e){var i=e.manager;return i?i.get(t):t}function Nt(){Ot.apply(this,arguments)}function Ft(){Nt.apply(this,arguments),this.pX=null,this.pY=null}function Dt(){Nt.apply(this,arguments)}function It(){Ot.apply(this,arguments),this._timer=null,this._input=null}function Rt(){Nt.apply(this,arguments)}function Bt(){Nt.apply(this,arguments)}function Lt(){Ot.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Vt(t,e){return(e=e||{}).recognizers=m(e.recognizers,Vt.defaults.preset),new Gt(t,e)}function Gt(t,e){var i;this.options=s({},Vt.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||(j?_t:N?mt:P?yt:at))(i,$),this.touchAction=new Et(this,this.options.touchAction),Ut(this,!0),c(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 Ut(i,n){var r,o=i.element;o.style&&(c(i.options.cssProps,function(t,e){r=M(o.style,e),n?(i.oldCssProps[r]=o.style[r],o.style[r]=t):o.style[r]=i.oldCssProps[r]||\"\"}),n||(i.oldCssProps={}))}Ot.prototype={defaults:{},set:function(t){return s(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(n(t,\"recognizeWith\",this))return this;var e=this.simultaneous;return t=jt(t,this),e[t.id]||(e[t.id]=t).recognizeWith(this),this},dropRecognizeWith:function(t){return n(t,\"dropRecognizeWith\",this)||(t=jt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(n(t,\"requireFailure\",this))return this;var e=this.requireFail;return t=jt(t,this),-1===T(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(n(t,\"dropRequireFailure\",this))return this;t=jt(t,this);var e=T(this.requireFail,t);return-1<e&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return 0<this.requireFail.length},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(e){var i=this,t=this.state;function n(t){i.manager.emit(t,e)}t<8&&n(i.options.event+zt(t)),n(i.options.event),e.additionalEvent&&n(e.additionalEvent),8<=t&&n(i.options.event+zt(t))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(this.requireFail[t].state&(32|Mt)))return!1;t++}return!0},recognize:function(t){var e=s({},t);if(!v(this.options.enable,[this,e]))return this.reset(),void(this.state=32);56&this.state&&(this.state=Mt),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},d(Nt,Ot,{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&&(i&B||!r)?16|e:n||r?i&R?8|e:2&e?4|e:2:32}}),d(Ft,Nt,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:H},getTouchAction:function(){var t=this.options.direction,e=[];return t&Y&&e.push(Tt),t&X&&e.push(Ct),e},directionTest:function(t){var e=this.options,i=!0,n=t.distance,r=t.direction,o=t.deltaX,s=t.deltaY;return r&e.direction||(e.direction&Y?(r=0===o?L:o<0?V:G,i=o!=this.pX,n=Math.abs(t.deltaX)):(r=0===s?L:s<0?U:q,i=s!=this.pY,n=Math.abs(t.deltaY))),t.direction=r,i&&n>e.threshold&&r&e.direction},attrTest:function(t){return Nt.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=Pt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),d(Dt,Nt,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[St]},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)}}),d(It,Ot,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[\"auto\"]},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||t.eventType&(R|B)&&!r)this.reset();else if(t.eventType&I)this.reset(),this._timer=u(function(){this.state=8,this.tryEmit()},e.time,this);else if(t.eventType&R)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&t.eventType&R?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=k(),this.manager.emit(this.options.event,this._input)))}}),d(Rt,Nt,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[St]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),d(Bt,Nt,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:Y|X,pointers:1},getTouchAction:function(){return Ft.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Y|X)?e=t.overallVelocity:i&Y?e=t.overallVelocityX:i&X&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&w(e)>this.options.velocity&&t.eventType&R},emit:function(t){var e=Pt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),d(Lt,Ot,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[kt]},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(),t.eventType&I&&0===this.count)return this.failTimeout();if(n&&r&&i){if(t.eventType!=R)return this.failTimeout();var o=!this.pTime||t.timeStamp-this.pTime<e.interval,s=!this.pCenter||it(this.pCenter,t.center)<e.posThreshold;this.pTime=t.timeStamp,this.pCenter=t.center,s&&o?this.count+=1:this.count=1,this._input=t;var a=this.count%e.taps;if(0===a)return this.hasRequireFailures()?(this._timer=u(function(){this.state=8,this.tryEmit()},e.interval,this),2):8}return 32},failTimeout:function(){return this._timer=u(function(){this.state=32},this.options.interval,this),32},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Vt.VERSION=\"2.0.7\",Vt.defaults={domEvents:!1,touchAction:\"compute\",enable:!0,inputTarget:null,inputClass:null,preset:[[Rt,{enable:!1}],[Dt,{enable:!1},[\"rotate\"]],[Bt,{direction:Y}],[Ft,{direction:Y},[\"swipe\"]],[Lt],[Lt,{event:\"doubletap\",taps:2},[\"tap\"]],[It]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}},Gt.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 o=0;o<n.length;)i=n[o],2===e.stopped||r&&i!=r&&!i.canRecognizeWith(r)?i.reset():i.recognize(t),!r&&14&i.state&&(r=e.curRecognizer=i),o++}},get:function(t){if(t instanceof Ot)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(n(t,\"add\",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),(t.manager=this).touchAction.update(),t},remove:function(t){if(n(t,\"remove\",this))return this;if(t=this.get(t)){var e=this.recognizers,i=T(e,t);-1!==i&&(e.splice(i,1),this.touchAction.update())}return this},on:function(t,e){if(t!==x&&e!==x){var i=this.handlers;return c(C(t),function(t){i[t]=i[t]||[],i[t].push(e)}),this}},off:function(t,e){if(t!==x){var i=this.handlers;return c(C(t),function(t){e?i[t]&&i[t].splice(T(i[t],e),1):delete i[t]}),this}},emit:function(t,e){var i,n,r;this.options.domEvents&&(i=t,n=e,(r=a.createEvent(\"Event\")).initEvent(i,!0,!0),(r.gesture=n).target.dispatchEvent(r));var o=this.handlers[t]&&this.handlers[t].slice();if(o&&o.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var s=0;s<o.length;)o[s](e),s++}},destroy:function(){this.element&&Ut(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},s(Vt,{INPUT_START:I,INPUT_MOVE:2,INPUT_END:R,INPUT_CANCEL:B,STATE_POSSIBLE:Mt,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:32,DIRECTION_NONE:L,DIRECTION_LEFT:V,DIRECTION_RIGHT:G,DIRECTION_UP:U,DIRECTION_DOWN:q,DIRECTION_HORIZONTAL:Y,DIRECTION_VERTICAL:X,DIRECTION_ALL:H,Manager:Gt,Input:Q,TouchAction:Et,TouchInput:mt,MouseInput:at,PointerEventInput:_t,TouchMouseInput:yt,SingleTouchInput:dt,Recognizer:Ot,AttrRecognizer:Nt,Tap:Lt,Pan:Ft,Swipe:Bt,Pinch:Dt,Rotate:Rt,Press:It,on:g,off:y,each:c,merge:p,extend:_,assign:s,inherit:d,bindFn:f,prefixed:M});var qt=void 0!==o?o:\"undefined\"!=typeof self?self:{};qt.Hammer=Vt,void 0!==Yt&&Yt.exports?Yt.exports=Vt:o.Hammer=Vt}(window,document)},function(t,e,i){var n,r,o=t(353);(r=n=i.Operator||(i.Operator={}))[r.Le=0]=\"Le\",r[r.Ge=1]=\"Ge\",r[r.Eq=2]=\"Eq\";var s=function(){function t(t,e,i){void 0===i&&(i=o.Strength.required),this._id=a++,this._operator=e,this._expression=t,this._strength=o.Strength.clip(i)}return t.Compare=function(t,e){return t.id-e.id},t.prototype.toString=function(){var t=this;return this._expression+\" \"+function(){switch(t._operator){case n.Le:return\"<=\";case n.Ge:return\">=\";case n.Eq:return\"==\"}}()+\" 0\"},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"expression\",{get:function(){return this._expression},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"op\",{get:function(){return this._operator},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"strength\",{get:function(){return this._strength},enumerable:!0,configurable:!0}),t}();i.Constraint=s;var a=0},function(t,e,i){var h=t(357),u=t(360),c=t(351),n=function(){function t(){var t=function(t){for(var e=0,i=function(){return 0},n=c.createMap(u.Variable.Compare),r=0,o=t.length;r<o;++r){var s=t[r];if(\"number\"==typeof s)e+=s;else if(s instanceof u.Variable)n.setDefault(s,i).second+=1;else{if(!(s instanceof Array))throw new Error(\"invalid Expression argument: \"+JSON.stringify(s));if(2!==s.length)throw new Error(\"array must have length 2\");var a=s[0],l=s[1];if(\"number\"!=typeof a)throw new Error(\"array item 0 must be a number\");if(!(l instanceof u.Variable))throw new Error(\"array item 1 must be a variable\");n.setDefault(l,i).second+=a}}return{terms:n,constant:e}}(arguments);this._terms=t.terms,this._constant=t.constant}return t.prototype.toString=function(){var e=[];h.forEach(this._terms,function(t){e.push([t.first,t.second])});for(var t=!0,i=\"\",n=0,r=e;n<r.length;n++){var o=r[n],s=o[0],a=o[1];t?(t=!1,i+=1==a?\"\"+s:-1==a?\"-\"+s:a+\"*\"+s):i+=1==a?\" + \"+s:-1==a?\" - \"+s:0<=a?\" + \"+a+s:\" - \"+-a+s}var l=this.constant;return l<0?i+=\" - \"+-l:0<l&&(i+=\" + \"+l),i},Object.defineProperty(t.prototype,\"terms\",{get:function(){return this._terms},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"constant\",{get:function(){return this._constant},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"value\",{get:function(){var e=this._constant;return h.forEach(this._terms,function(t){e+=t.first.value*t.second}),e},enumerable:!0,configurable:!0}),t}();i.Expression=n},function(t,e,i){\n      /*-----------------------------------------------------------------------------\n          | Copyright (c) 2014, Nucleic Development Team.\n          |\n          | Distributed under the terms of the Modified BSD License.\n          |\n          | The full license is in the file COPYING.txt, distributed with this software.\n          |----------------------------------------------------------------------------*/\n      function n(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}n(t(360)),n(t(349)),n(t(348)),n(t(353)),n(t(352))},function(t,e,i){var n=t(357);i.createMap=function(t){return new n.AssociativeArray(t)}},function(t,e,i){var g,n,r=t(360),a=t(349),y=t(348),b=t(353),o=t(351),s=t(357),l=function(){function t(){this._cnMap=o.createMap(y.Constraint.Compare),this._rowMap=o.createMap(h.Compare),this._varMap=o.createMap(r.Variable.Compare),this._editMap=o.createMap(r.Variable.Compare),this._infeasibleRows=[],this._objective=new k,this._artificial=null,this._idTick=0}return t.prototype.addConstraint=function(t){var e=this._cnMap.find(t);if(void 0!==e)throw new Error(\"duplicate constraint\");var i=this._createRow(t),n=i.row,r=i.tag,o=this._chooseSubject(n,r);if(o.type()===g.Invalid&&n.allDummies()){if(!x(n.constant())){for(var s=[],a=0,l=t.expression.terms._array;a<l.length;a++){var h=l[a];s.push(h.first.name)}var u=[\"LE\",\"GE\",\"EQ\"][t.op];throw new Error(\"unsatisfiable constraint [\"+s.join(\",\")+\"] operator: \"+u)}o=r.marker}if(o.type()===g.Invalid){if(!this._addWithArtificialVariable(n))throw new Error(\"unsatisfiable constraint\")}else n.solveFor(o),this._substitute(o,n),this._rowMap.insert(o,n);this._cnMap.insert(t,r),this._optimize(this._objective)},t.prototype.removeConstraint=function(t,e){void 0===e&&(e=!1);var i=this._cnMap.erase(t);if(void 0===i){if(e)return;throw new Error(\"unknown constraint\")}this._removeConstraintEffects(t,i.second);var n=i.second.marker,r=this._rowMap.erase(n);if(void 0===r){var o=this._getMarkerLeavingSymbol(n);if(o.type()===g.Invalid)throw new Error(\"failed to find leaving row\");(r=this._rowMap.erase(o)).second.solveForEx(o,n),this._substitute(n,r.second)}this._optimize(this._objective)},t.prototype.hasConstraint=function(t){return this._cnMap.contains(t)},t.prototype.addEditVariable=function(t,e){var i=this._editMap.find(t);if(void 0!==i)throw new Error(\"duplicate edit variable: \"+t.name);if((e=b.Strength.clip(e))===b.Strength.required)throw new Error(\"bad required strength\");var n=new a.Expression(t),r=new y.Constraint(n,y.Operator.Eq,e);this.addConstraint(r);var o=this._cnMap.find(r).second,s={tag:o,constraint:r,constant:0};this._editMap.insert(t,s)},t.prototype.removeEditVariable=function(t,e){void 0===e&&(e=!1);var i=this._editMap.erase(t);if(void 0===i){if(e)return;throw new Error(\"unknown edit variable: \"+t.name)}this.removeConstraint(i.second.constraint,e)},t.prototype.hasEditVariable=function(t){return this._editMap.contains(t)},t.prototype.suggestValue=function(t,e){var i=this._editMap.find(t);if(void 0===i)throw new Error(\"unknown edit variable: \"+t.name);var n=this._rowMap,r=i.second,o=e-r.constant;r.constant=e;var s=r.tag.marker,a=n.find(s);if(void 0!==a)return a.second.add(-o)<0&&this._infeasibleRows.push(s),void this._dualOptimize();var l=r.tag.other;if(void 0!==(a=n.find(l)))return a.second.add(o)<0&&this._infeasibleRows.push(l),void this._dualOptimize();for(var h=0,u=n.size();h<u;++h){var c=n.itemAt(h),_=c.second,p=_.coefficientFor(s);0!==p&&_.add(o*p)<0&&c.first.type()!==g.External&&this._infeasibleRows.push(c.first)}this._dualOptimize()},t.prototype.updateVariables=function(){for(var t=this._varMap,e=this._rowMap,i=0,n=t.size();i<n;++i){var r=t.itemAt(i),o=e.find(r.second),s=0;void 0!==o&&-0===(s=o.second.constant())&&(s=0),r.first.setValue(s)}},t.prototype.getConstraints=function(){var e=[];return s.forEach(this._cnMap,function(t){e.push(t.first)}),e},Object.defineProperty(t.prototype,\"numConstraints\",{get:function(){return this._cnMap.size()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"numEditVariables\",{get:function(){return this._editMap.size()},enumerable:!0,configurable:!0}),t.prototype._getVarSymbol=function(t){var e=this;return this._varMap.setDefault(t,function(){return e._makeSymbol(g.External)}).second},t.prototype._createRow=function(t){for(var e=t.expression,i=new k(e.constant),n=e.terms,r=0,o=n.size();r<o;++r){var s=n.itemAt(r);if(!x(s.second)){var a=this._getVarSymbol(s.first),l=this._rowMap.find(a);void 0!==l?i.insertRow(l.second,s.second):i.insertSymbol(a,s.second)}}var h=this._objective,u=t.strength,c={marker:w,other:w};switch(t.op){case y.Operator.Le:case y.Operator.Ge:var _=t.op===y.Operator.Le?1:-1,p=this._makeSymbol(g.Slack);if(c.marker=p,i.insertSymbol(p,_),u<b.Strength.required){var d=this._makeSymbol(g.Error);c.other=d,i.insertSymbol(d,-_),h.insertSymbol(d,u)}break;case y.Operator.Eq:if(u<b.Strength.required){var f=this._makeSymbol(g.Error),v=this._makeSymbol(g.Error);c.marker=f,c.other=v,i.insertSymbol(f,-1),i.insertSymbol(v,1),h.insertSymbol(f,u),h.insertSymbol(v,u)}else{var m=this._makeSymbol(g.Dummy);c.marker=m,i.insertSymbol(m)}}return i.constant()<0&&i.reverseSign(),{row:i,tag:c}},t.prototype._chooseSubject=function(t,e){for(var i=t.cells(),n=0,r=i.size();n<r;++n){var o=i.itemAt(n);if(o.first.type()===g.External)return o.first}var s=e.marker.type();return(s===g.Slack||s===g.Error)&&t.coefficientFor(e.marker)<0?e.marker:((s=e.other.type())===g.Slack||s===g.Error)&&t.coefficientFor(e.other)<0?e.other:w},t.prototype._addWithArtificialVariable=function(t){var e=this._makeSymbol(g.Slack);this._rowMap.insert(e,t.copy()),this._artificial=t.copy(),this._optimize(this._artificial);var i=x(this._artificial.constant());this._artificial=null;var n=this._rowMap.erase(e);if(void 0!==n){var r=n.second;if(r.isConstant())return i;var o=this._anyPivotableSymbol(r);if(o.type()===g.Invalid)return!1;r.solveForEx(e,o),this._substitute(o,r),this._rowMap.insert(o,r)}for(var s=this._rowMap,a=0,l=s.size();a<l;++a)s.itemAt(a).second.removeSymbol(e);return this._objective.removeSymbol(e),i},t.prototype._substitute=function(t,e){for(var i=this._rowMap,n=0,r=i.size();n<r;++n){var o=i.itemAt(n);o.second.substitute(t,e),o.second.constant()<0&&o.first.type()!==g.External&&this._infeasibleRows.push(o.first)}this._objective.substitute(t,e),this._artificial&&this._artificial.substitute(t,e)},t.prototype._optimize=function(t){for(;;){var e=this._getEnteringSymbol(t);if(e.type()===g.Invalid)return;var i=this._getLeavingSymbol(e);if(i.type()===g.Invalid)throw new Error(\"the objective is unbounded\");var n=this._rowMap.erase(i).second;n.solveForEx(i,e),this._substitute(e,n),this._rowMap.insert(e,n)}},t.prototype._dualOptimize=function(){for(var t=this._rowMap,e=this._infeasibleRows;0!==e.length;){var i=e.pop(),n=t.find(i);if(void 0!==n&&n.second.constant()<0){var r=this._getDualEnteringSymbol(n.second);if(r.type()===g.Invalid)throw new Error(\"dual optimize failed\");var o=n.second;t.erase(i),o.solveForEx(i,r),this._substitute(r,o),t.insert(r,o)}}},t.prototype._getEnteringSymbol=function(t){for(var e=t.cells(),i=0,n=e.size();i<n;++i){var r=e.itemAt(i),o=r.first;if(r.second<0&&o.type()!==g.Dummy)return o}return w},t.prototype._getDualEnteringSymbol=function(t){for(var e=Number.MAX_VALUE,i=w,n=t.cells(),r=0,o=n.size();r<o;++r){var s=n.itemAt(r),a=s.first,l=s.second;if(0<l&&a.type()!==g.Dummy){var h=this._objective.coefficientFor(a),u=h/l;u<e&&(e=u,i=a)}}return i},t.prototype._getLeavingSymbol=function(t){for(var e=Number.MAX_VALUE,i=w,n=this._rowMap,r=0,o=n.size();r<o;++r){var s=n.itemAt(r),a=s.first;if(a.type()!==g.External){var l=s.second,h=l.coefficientFor(t);if(h<0){var u=-l.constant()/h;u<e&&(e=u,i=a)}}}return i},t.prototype._getMarkerLeavingSymbol=function(t){for(var e=Number.MAX_VALUE,i=e,n=e,r=w,o=r,s=r,a=r,l=this._rowMap,h=0,u=l.size();h<u;++h){var c=l.itemAt(h),_=c.second,p=_.coefficientFor(t);if(0!==p){var d=c.first;if(d.type()===g.External)a=d;else if(p<0){var f=-_.constant()/p;f<i&&(i=f,o=d)}else{var f=_.constant()/p;f<n&&(n=f,s=d)}}}return o!==r?o:s!==r?s:a},t.prototype._removeConstraintEffects=function(t,e){e.marker.type()===g.Error&&this._removeMarkerEffects(e.marker,t.strength),e.other.type()===g.Error&&this._removeMarkerEffects(e.other,t.strength)},t.prototype._removeMarkerEffects=function(t,e){var i=this._rowMap.find(t);void 0!==i?this._objective.insertRow(i.second,-e):this._objective.insertSymbol(t,-e)},t.prototype._anyPivotableSymbol=function(t){for(var e=t.cells(),i=0,n=e.size();i<n;++i){var r=e.itemAt(i),o=r.first.type();if(o===g.Slack||o===g.Error)return r.first}return w},t.prototype._makeSymbol=function(t){return new h(t,this._idTick++)},t}();function x(t){return t<0?-t<1e-8:t<1e-8}i.Solver=l,(n=g||(g={}))[n.Invalid=0]=\"Invalid\",n[n.External=1]=\"External\",n[n.Slack=2]=\"Slack\",n[n.Error=3]=\"Error\",n[n.Dummy=4]=\"Dummy\";var h=function(){function t(t,e){this._id=e,this._type=t}return t.Compare=function(t,e){return t.id()-e.id()},t.prototype.id=function(){return this._id},t.prototype.type=function(){return this._type},t}(),w=new h(g.Invalid,-1),k=function(){function e(t){void 0===t&&(t=0),this._cellMap=o.createMap(h.Compare),this._constant=t}return e.prototype.cells=function(){return this._cellMap},e.prototype.constant=function(){return this._constant},e.prototype.isConstant=function(){return this._cellMap.empty()},e.prototype.allDummies=function(){for(var t=this._cellMap,e=0,i=t.size();e<i;++e){var n=t.itemAt(e);if(n.first.type()!==g.Dummy)return!1}return!0},e.prototype.copy=function(){var t=new e(this._constant);return t._cellMap=this._cellMap.copy(),t},e.prototype.add=function(t){return this._constant+=t},e.prototype.insertSymbol=function(t,e){void 0===e&&(e=1);var i=this._cellMap.setDefault(t,function(){return 0});x(i.second+=e)&&this._cellMap.erase(t)},e.prototype.insertRow=function(t,e){void 0===e&&(e=1),this._constant+=t._constant*e;for(var i=t._cellMap,n=0,r=i.size();n<r;++n){var o=i.itemAt(n);this.insertSymbol(o.first,o.second*e)}},e.prototype.removeSymbol=function(t){this._cellMap.erase(t)},e.prototype.reverseSign=function(){this._constant=-this._constant;for(var t=this._cellMap,e=0,i=t.size();e<i;++e){var n=t.itemAt(e);n.second=-n.second}},e.prototype.solveFor=function(t){var e=this._cellMap,i=e.erase(t),n=-1/i.second;this._constant*=n;for(var r=0,o=e.size();r<o;++r)e.itemAt(r).second*=n},e.prototype.solveForEx=function(t,e){this.insertSymbol(t,-1),this.solveFor(e)},e.prototype.coefficientFor=function(t){var e=this._cellMap.find(t);return void 0!==e?e.second:0},e.prototype.substitute=function(t,e){var i=this._cellMap.erase(t);void 0!==i&&this.insertRow(e,i.second)},e}()},function(t,e,i){!function(e){function t(t,e,i,n){void 0===n&&(n=1);var r=0;return r+=1e6*Math.max(0,Math.min(1e3,t*n)),r+=1e3*Math.max(0,Math.min(1e3,e*n)),r+=Math.max(0,Math.min(1e3,i*n))}e.create=t,e.required=t(1e3,1e3,1e3),e.strong=t(1,0,0),e.medium=t(0,1,0),e.weak=t(0,0,1),e.clip=function(t){return Math.max(0,Math.min(e.required,t))}}(i.Strength||(i.Strength={}))},function(t,e,i){var l=t(358);function o(t,e,i){for(var n,r,o=0,s=t.length;0<s;)i(t[r=o+(n=s>>1)],e)<0?(o=r+1,s-=n+1):s=n;return o}i.lowerBound=o,i.binarySearch=function(t,e,i){var n=o(t,e,i);if(n===t.length)return-1;var r=t[n];return 0!==i(r,e)?-1:n},i.binaryFind=function(t,e,i){var n=o(t,e,i);if(n!==t.length){var r=t[n];if(0===i(r,e))return r}},i.asSet=function(t,e){var i=l.asArray(t),n=i.length;if(n<=1)return i;i.sort(e);for(var r=[i[0]],o=1,s=0;o<n;++o){var a=i[o];0!==e(r[s],a)&&(r.push(a),++s)}return r},i.setIsDisjoint=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length;n<o&&r<s;){var a=i(t[n],e[r]);if(a<0)++n;else{if(!(0<a))return!1;++r}}return!0},i.setIsSubset=function(t,e,i){var n=t.length,r=e.length;if(r<n)return!1;for(var o=0,s=0;o<n&&s<r;){var a=i(t[o],e[s]);if(a<0)return!1;0<a||++o,++s}return!(o<n)},i.setUnion=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u?a.push(h):(a.push(l),++n),++r)}for(;n<o;)a.push(t[n]),++n;for(;r<s;)a.push(e[r]),++r;return a},i.setIntersection=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?++n:(0<u||(a.push(l),++n),++r)}return a},i.setDifference=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u||++n,++r)}for(;n<o;)a.push(t[n]),++n;return a},i.setSymmetricDifference=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u?a.push(h):++n,++r)}for(;n<o;)a.push(t[n]),++n;for(;r<s;)a.push(e[r]),++r;return a}},function(t,e,i){var n=t(358),r=function(){function t(){this._array=[]}return t.prototype.size=function(){return this._array.length},t.prototype.empty=function(){return 0===this._array.length},t.prototype.itemAt=function(t){return this._array[t]},t.prototype.takeAt=function(t){return this._array.splice(t,1)[0]},t.prototype.clear=function(){this._array=[]},t.prototype.swap=function(t){var e=this._array;this._array=t._array,t._array=e},t.prototype.__iter__=function(){return n.iter(this._array)},t.prototype.__reversed__=function(){return n.reversed(this._array)},t}();i.ArrayBase=r},function(t,e,i){\n      /*-----------------------------------------------------------------------------\n          | Copyright (c) 2014, Nucleic Development Team.\n          |\n          | Distributed under the terms of the Modified BSD License.\n          |\n          | The full license is in the file COPYING.txt, distributed with this software.\n          |----------------------------------------------------------------------------*/\n      var n,r=this&&this.__extends||(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),s=t(359),o=t(355),a=t(354),l=t(358),h=function(n){function o(t){var i,e=n.call(this)||this;return e._compare=t,e._wrapped=(i=t,function(t,e){return i(t.first,e)}),e}return r(o,n),o.prototype.comparitor=function(){return this._compare},o.prototype.indexOf=function(t){return a.binarySearch(this._array,t,this._wrapped)},o.prototype.contains=function(t){return 0<=a.binarySearch(this._array,t,this._wrapped)},o.prototype.find=function(t){return a.binaryFind(this._array,t,this._wrapped)},o.prototype.setDefault=function(t,e){var i=this._array,n=a.lowerBound(i,t,this._wrapped);if(n===i.length){var r=new s.Pair(t,e());return i.push(r),r}var o=i[n];if(0!==this._compare(o.first,t)){var r=new s.Pair(t,e());return i.splice(n,0,r),r}return o},o.prototype.insert=function(t,e){var i=this._array,n=a.lowerBound(i,t,this._wrapped);if(n===i.length){var r=new s.Pair(t,e);return i.push(r),r}var o=i[n];if(0!==this._compare(o.first,t)){var r=new s.Pair(t,e);return i.splice(n,0,r),r}return o.second=e,o},o.prototype.update=function(t){var e=this;t instanceof o?this._array=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l.first,h.first);u<0?(a.push(l.copy()),++n):(0<u?a.push(h.copy()):(a.push(h.copy()),++n),++r)}for(;n<o;)a.push(t[n].copy()),++n;for(;r<s;)a.push(e[r].copy()),++r;return a}(this._array,t._array,this._compare):l.forEach(t,function(t){e.insert(t.first,t.second)})},o.prototype.erase=function(t){var e=this._array,i=a.binarySearch(e,t,this._wrapped);if(!(i<0))return e.splice(i,1)[0]},o.prototype.copy=function(){for(var t=new o(this._compare),e=t._array,i=this._array,n=0,r=i.length;n<r;++n)e.push(i[n].copy());return t},o}(o.ArrayBase);i.AssociativeArray=h},function(t,e,i){function n(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}n(t(354)),n(t(355)),n(t(356)),n(t(358)),n(t(359))},function(t,e,i){var n=function(){function t(t,e){void 0===e&&(e=0),this._array=t,this._index=Math.max(0,Math.min(e,t.length))}return t.prototype.__next__=function(){return this._array[this._index++]},t.prototype.__iter__=function(){return this},t}();i.ArrayIterator=n;var r=function(){function t(t,e){void 0===e&&(e=t.length),this._array=t,this._index=Math.max(0,Math.min(e,t.length))}return t.prototype.__next__=function(){return this._array[--this._index]},t.prototype.__iter__=function(){return this},t}();i.ReverseArrayIterator=r,i.iter=function(t){return t instanceof Array?new n(t):t.__iter__()},i.reversed=function(t){return t instanceof Array?new r(t):t.__reversed__()},i.next=function(t){return t.__next__()},i.asArray=function(t){if(t instanceof Array)return t.slice();for(var e,i=[],n=t.__iter__();void 0!==(e=n.__next__());)i.push(e);return i},i.forEach=function(t,e){if(t instanceof Array){for(var i=0,n=t.length;i<n;++i)if(!1===e(t[i]))return}else for(var r,o=t.__iter__();void 0!==(r=o.__next__());)if(!1===e(r))return},i.map=function(t,e){var i=[];if(t instanceof Array)for(var n=0,r=t.length;n<r;++n)i.push(e(t[n]));else for(var o,s=t.__iter__();void 0!==(o=s.__next__());)i.push(e(o));return i},i.filter=function(t,e){var i,n=[];if(t instanceof Array)for(var r=0,o=t.length;r<o;++r)i=t[r],e(i)&&n.push(i);else for(var s=t.__iter__();void 0!==(i=s.__next__());)e(i)&&n.push(i);return n}},function(t,e,i){var n=function(){function t(t,e){this.first=t,this.second=e}return t.prototype.copy=function(){return new t(this.first,this.second)},t}();i.Pair=n},function(t,e,i){var n=function(){function t(t){void 0===t&&(t=\"\"),this._value=0,this._context=null,this._id=r++,this._name=t}return t.Compare=function(t,e){return t.id-e.id},t.prototype.toString=function(){return this._name},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"name\",{get:function(){return this._name},enumerable:!0,configurable:!0}),t.prototype.setName=function(t){this._name=t},Object.defineProperty(t.prototype,\"context\",{get:function(){return this._context},enumerable:!0,configurable:!0}),t.prototype.setContext=function(t){this._context=t},Object.defineProperty(t.prototype,\"value\",{get:function(){return this._value},enumerable:!0,configurable:!0}),t.prototype.setValue=function(t){this._value=t},t}();i.Variable=n;var r=0},function(t,e,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 u,U={},o=U,q=\"en-US\",Y=null,r=\"0,0\";function n(t){this._value=t}function p(t){var e,i=\"\";for(e=0;e<t;e++)i+=\"0\";return i}function X(t,e,i,n){var r,o,s,a,l,h,u,c,_=Math.pow(10,e);return o=-1<t.toFixed(0).search(\"e\")?(s=e,c=t.toString(),a=c.split(\"e\")[0],u=c.split(\"e\")[1],l=a.split(\".\")[0],h=a.split(\".\")[1]||\"\",c=l+h+p(u-h.length),0<s&&(c+=\".\"+p(s)),c):(i(t*_)/_).toFixed(e),n&&(r=new RegExp(\"0{1,\"+n+\"}$\"),o=o.replace(r,\"\")),o}function s(t,e,i){var n,r,o,s,a,l,h,u,c,_;return-1<e.indexOf(\"$\")?n=function(t,e,i){var n,r,o=e,s=o.indexOf(\"$\"),a=o.indexOf(\"(\"),l=o.indexOf(\"+\"),h=o.indexOf(\"-\"),u=\"\",c=\"\";if(-1===o.indexOf(\"$\")?\"infix\"===U[q].currency.position?(c=U[q].currency.symbol,U[q].currency.spaceSeparated&&(c=\" \"+c+\" \")):U[q].currency.spaceSeparated&&(u=\" \"):-1<o.indexOf(\" $\")?(u=\" \",o=o.replace(\" $\",\"\")):-1<o.indexOf(\"$ \")?(u=\" \",o=o.replace(\"$ \",\"\")):o=o.replace(\"$\",\"\"),r=d(t,o,i,c),-1===e.indexOf(\"$\"))switch(U[q].currency.position){case\"postfix\":-1<r.indexOf(\")\")?((r=r.split(\"\")).splice(-1,0,u+U[q].currency.symbol),r=r.join(\"\")):r=r+u+U[q].currency.symbol;break;case\"infix\":break;case\"prefix\":-1<r.indexOf(\"(\")||-1<r.indexOf(\"-\")?(r=r.split(\"\"),n=Math.max(a,h)+1,r.splice(n,0,U[q].currency.symbol+u),r=r.join(\"\")):r=U[q].currency.symbol+u+r;break;default:throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]')}else s<=1?-1<r.indexOf(\"(\")||-1<r.indexOf(\"+\")||-1<r.indexOf(\"-\")?(r=r.split(\"\"),n=1,(s<a||s<l||s<h)&&(n=0),r.splice(n,0,U[q].currency.symbol+u),r=r.join(\"\")):r=U[q].currency.symbol+u+r:-1<r.indexOf(\")\")?((r=r.split(\"\")).splice(-1,0,u+U[q].currency.symbol),r=r.join(\"\")):r=r+u+U[q].currency.symbol;return r}(t,e,i):-1<e.indexOf(\"%\")?(l=t,u=i,_=\"\",l*=100,-1<(h=e).indexOf(\" %\")?(_=\" \",h=h.replace(\" %\",\"\")):h=h.replace(\"%\",\"\"),-1<(c=d(l,h,u)).indexOf(\")\")?((c=c.split(\"\")).splice(-1,0,_+\"%\"),c=c.join(\"\")):c=c+_+\"%\",n=c):-1<e.indexOf(\":\")?(r=t,o=Math.floor(r/60/60),s=Math.floor((r-60*o*60)/60),a=Math.round(r-60*o*60-60*s),n=o+\":\"+(s<10?\"0\"+s:s)+\":\"+(a<10?\"0\"+a:a)):n=d(t,e,i),n}function d(t,e,i,n){var r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x,w,k=!1,S=!1,C=!1,T=\"\",A=!1,E=!1,M=!1,O=!1,z=!1,P=\"\",j=\"\",N=Math.abs(t),F=[\"B\",\"KiB\",\"MiB\",\"GiB\",\"TiB\",\"PiB\",\"EiB\",\"ZiB\",\"YiB\"],D=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\",\"ZB\",\"YB\"],I=\"\",R=!1,B=!1;if(0===t&&null!==Y)return Y;if(!isFinite(t))return\"\"+t;if(0===e.indexOf(\"{\")){var L=e.indexOf(\"}\");if(-1===L)throw Error('Format should also contain a \"}\"');f=e.slice(1,L),e=e.slice(L+1)}else f=\"\";if(e.indexOf(\"}\")===e.length-1){var V=e.indexOf(\"{\");if(-1===V)throw Error('Format should also contain a \"{\"');v=e.slice(V+1,-1),e=e.slice(0,V+1)}else v=\"\";if(w=-1===e.indexOf(\".\")?e.match(/([0-9]+).*/):e.match(/([0-9]+)\\..*/),x=null===w?-1:w[1].length,-1!==e.indexOf(\"-\")&&(R=!0),-1<e.indexOf(\"(\")?(k=!0,e=e.slice(1,-1)):-1<e.indexOf(\"+\")&&(S=!0,e=e.replace(/\\+/g,\"\")),-1<e.indexOf(\"a\")){if(p=e.split(\".\")[0].match(/[0-9]+/g)||[\"0\"],p=parseInt(p[0],10),A=0<=e.indexOf(\"aK\"),E=0<=e.indexOf(\"aM\"),M=0<=e.indexOf(\"aB\"),O=0<=e.indexOf(\"aT\"),z=A||E||M||O,-1<e.indexOf(\" a\")?(T=\" \",e=e.replace(\" a\",\"\")):e=e.replace(\"a\",\"\"),l=Math.floor(Math.log(N)/Math.LN10)+1,u=0==(u=l%3)?3:u,p&&0!==N&&(h=Math.floor(Math.log(N)/Math.LN10)+1-p,c=3*~~((Math.min(p,l)-u)/3),N/=Math.pow(10,c),-1===e.indexOf(\".\")&&3<p))for(e+=\"[.]\",y=(y=0===h?0:3*~~(h/3)-h)<0?y+3:y,r=0;r<y;r++)e+=\"0\";Math.floor(Math.log(Math.abs(t))/Math.LN10)+1!==p&&(N>=Math.pow(10,12)&&!z||O?(T+=U[q].abbreviations.trillion,t/=Math.pow(10,12)):N<Math.pow(10,12)&&N>=Math.pow(10,9)&&!z||M?(T+=U[q].abbreviations.billion,t/=Math.pow(10,9)):N<Math.pow(10,9)&&N>=Math.pow(10,6)&&!z||E?(T+=U[q].abbreviations.million,t/=Math.pow(10,6)):(N<Math.pow(10,6)&&N>=Math.pow(10,3)&&!z||A)&&(T+=U[q].abbreviations.thousand,t/=Math.pow(10,3)))}if(-1<e.indexOf(\"b\"))for(-1<e.indexOf(\" b\")?(P=\" \",e=e.replace(\" b\",\"\")):e=e.replace(\"b\",\"\"),a=0;a<=F.length;a++)if(o=Math.pow(1024,a),s=Math.pow(1024,a+1),o<=t&&t<s){P+=F[a],0<o&&(t/=o);break}if(-1<e.indexOf(\"d\"))for(-1<e.indexOf(\" d\")?(P=\" \",e=e.replace(\" d\",\"\")):e=e.replace(\"d\",\"\"),a=0;a<=D.length;a++)if(o=Math.pow(1e3,a),s=Math.pow(1e3,a+1),o<=t&&t<s){P+=D[a],0<o&&(t/=o);break}if(-1<e.indexOf(\"o\")&&(-1<e.indexOf(\" o\")?(j=\" \",e=e.replace(\" o\",\"\")):e=e.replace(\"o\",\"\"),U[q].ordinal&&(j+=U[q].ordinal(t))),-1<e.indexOf(\"[.]\")&&(C=!0,e=e.replace(\"[.]\",\".\")),_=t.toString().split(\".\")[0],d=e.split(\".\")[1],m=e.indexOf(\",\"),d){if(-1!==d.indexOf(\"*\")?I=X(t,t.toString().split(\".\")[1].length,i):-1<d.indexOf(\"[\")?(d=(d=d.replace(\"]\",\"\")).split(\"[\"),I=X(t,d[0].length+d[1].length,i,d[1].length)):I=X(t,d.length,i),_=I.split(\".\")[0],I.split(\".\")[1].length){var G=n?T+n:U[q].delimiters.decimal;I=G+I.split(\".\")[1]}else I=\"\";C&&0===Number(I.slice(1))&&(I=\"\")}else _=X(t,null,i);return-1<_.indexOf(\"-\")&&(_=_.slice(1),B=!0),_.length<x&&(_=new Array(x-_.length+1).join(\"0\")+_),-1<m&&(_=_.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g,\"$1\"+U[q].delimiters.thousands)),0===e.indexOf(\".\")&&(_=\"\"),g=e.indexOf(\"(\"),b=e.indexOf(\"-\"),f+(g<b?(k&&B?\"(\":\"\")+(R&&B||!k&&B?\"-\":\"\"):(R&&B||!k&&B?\"-\":\"\")+(k&&B?\"(\":\"\"))+(!B&&S&&0!==t?\"+\":\"\")+_+I+(j||\"\")+(T&&!n?T:\"\")+(P||\"\")+(k&&B?\")\":\"\")+v}function a(t,e){U[t]=e}function l(t){var e=U[q=t].defaults;e&&e.format&&u.defaultFormat(e.format),e&&e.currencyFormat&&u.defaultCurrencyFormat(e.currencyFormat)}void 0!==e&&e.exports,(u=function(t){return u.isNumbro(t)?t=t.value():0===t||void 0===t?t=0:Number(t)||(t=u.fn.unformat(t)),new n(Number(t))}).version=\"1.6.2\",u.isNumbro=function(t){return t instanceof n},u.setLanguage=function(t,e){console.warn(\"`setLanguage` is deprecated since version 1.6.0. Use `setCulture` instead\");var i=t,n=t.split(\"-\")[0],r=null;o[i]||(Object.keys(o).forEach(function(t){r||t.split(\"-\")[0]!==n||(r=t)}),i=r||e||\"en-US\"),l(i)},u.setCulture=function(t,e){var i=t,n=t.split(\"-\")[1],r=null;U[i]||(n&&Object.keys(U).forEach(function(t){r||t.split(\"-\")[1]!==n||(r=t)}),i=r||e||\"en-US\"),l(i)},u.language=function(t,e){if(console.warn(\"`language` is deprecated since version 1.6.0. Use `culture` instead\"),!t)return q;if(t&&!e){if(!o[t])throw new Error(\"Unknown language : \"+t);l(t)}return!e&&o[t]||a(t,e),u},u.culture=function(t,e){if(!t)return q;if(t&&!e){if(!U[t])throw new Error(\"Unknown culture : \"+t);l(t)}return!e&&U[t]||a(t,e),u},u.languageData=function(t){if(console.warn(\"`languageData` is deprecated since version 1.6.0. Use `cultureData` instead\"),!t)return o[q];if(!o[t])throw new Error(\"Unknown language : \"+t);return o[t]},u.cultureData=function(t){if(!t)return U[q];if(!U[t])throw new Error(\"Unknown culture : \"+t);return U[t]},u.culture(\"en-US\",{delimiters:{thousands:\",\",decimal:\".\"},abbreviations:{thousand:\"k\",million:\"m\",billion:\"b\",trillion:\"t\"},ordinal:function(t){var e=t%10;return 1==~~(t%100/10)?\"th\":1===e?\"st\":2===e?\"nd\":3===e?\"rd\":\"th\"},currency:{symbol:\"$\",position:\"prefix\"},defaults:{currencyFormat:\",0000 a\"},formats:{fourDigits:\"0000 a\",fullWithTwoDecimals:\"$ ,0.00\",fullWithTwoDecimalsNoCurrency:\",0.00\"}}),u.languages=function(){return console.warn(\"`languages` is deprecated since version 1.6.0. Use `cultures` instead\"),o},u.cultures=function(){return U},u.zeroFormat=function(t){Y=\"string\"==typeof t?t:null},u.defaultFormat=function(t){r=\"string\"==typeof t?t:\"0.0\"},u.defaultCurrencyFormat=function(t){},u.validate=function(t,e){var i,n,r,o,s,a,l,h;if(\"string\"!=typeof t&&(t+=\"\",console.warn&&console.warn(\"Numbro.js: Value is not string. It has been co-erced to: \",t)),(t=t.trim()).match(/^\\d+$/))return!0;if(\"\"===t)return!1;try{l=u.cultureData(e)}catch(t){l=u.cultureData(u.culture())}return r=l.currency.symbol,s=l.abbreviations,i=l.delimiters.decimal,n=\".\"===l.delimiters.thousands?\"\\\\.\":l.delimiters.thousands,!(null!==(h=t.match(/^[^\\d]+/))&&(t=t.substr(1),h[0]!==r)||null!==(h=t.match(/[^\\d]+$/))&&(t=t.slice(0,-1),h[0]!==s.thousand&&h[0]!==s.million&&h[0]!==s.billion&&h[0]!==s.trillion)||(a=new RegExp(n+\"{2}\"),t.match(/[^\\d.,]/g)||2<(o=t.split(i)).length||(o.length<2?!o[0].match(/^\\d+.*\\d$/)||o[0].match(a):1===o[0].length?!o[0].match(/^\\d+$/)||o[0].match(a)||!o[1].match(/^\\d+$/):!o[0].match(/^\\d+.*\\d$/)||o[0].match(a)||!o[1].match(/^\\d+$/))))},e.exports={format:function(t,e,i,n){return null!=i&&i!==u.culture()&&u.setCulture(i),s(Number(t),null!=e?e:r,null==n?Math.round:n)}}},function(t,e,i){var l=t(382),h=t(380),n=t(384),u=t(379),c=t(370),_=t(375);function p(t,e){if(!(this instanceof p))return new p(t);e=e||function(t){if(t)throw t};var i=l(t);if(\"object\"==typeof i){var n=p.projections.get(i.projName);if(n){if(i.datumCode&&\"none\"!==i.datumCode){var r=c[i.datumCode];r&&(i.datum_params=r.towgs84?r.towgs84.split(\",\"):null,i.ellps=r.ellipse,i.datumName=r.datumName?r.datumName:i.datumCode)}i.k0=i.k0||1,i.axis=i.axis||\"enu\";var o=u.sphere(i.a,i.b,i.rf,i.ellps,i.sphere),s=u.eccentricity(o.a,o.b,o.rf,i.R_A),a=i.datum||_(i.datumCode,i.datum_params,o.a,o.b,s.es,s.ep2);h(this,i),h(this,n),this.a=o.a,this.b=o.b,this.rf=o.rf,this.sphere=o.sphere,this.es=s.es,this.e=s.e,this.ep2=s.ep2,this.datum=a,this.init(),e(null,this)}else e(t)}else e(t)}(p.projections=n).start(),e.exports=p},function(t,e,i){e.exports=function(t,e,i){var n,r,o,s=i.x,a=i.y,l=i.z||0,h={};for(o=0;o<3;o++)if(!e||2!==o||void 0!==i.z)switch(0===o?(n=s,r=\"x\"):1===o?(n=a,r=\"y\"):(n=l,r=\"z\"),t.axis[o]){case\"e\":h[r]=n;break;case\"w\":h[r]=-n;break;case\"n\":h[r]=n;break;case\"s\":h[r]=-n;break;case\"u\":void 0!==i[r]&&(h.z=n);break;case\"d\":void 0!==i[r]&&(h.z=-n);break;default:return null}return h}},function(t,e,i){var n=2*Math.PI,r=t(367);e.exports=function(t){return Math.abs(t)<=3.14159265359?t:t-r(t)*n}},function(t,e,i){e.exports=function(t,e,i){var n=t*e;return i/Math.sqrt(1-n*n)}},function(t,e,i){var a=Math.PI/2;e.exports=function(t,e){for(var i,n,r=.5*t,o=a-2*Math.atan(e),s=0;s<=15;s++)if(i=t*Math.sin(o),n=a-2*Math.atan(e*Math.pow((1-i)/(1+i),r))-o,o+=n,Math.abs(n)<=1e-10)return o;return-9999}},function(t,e,i){e.exports=function(t){return t<0?-1:1}},function(t,e,i){e.exports=function(t){var e={x:t[0],y:t[1]};return 2<t.length&&(e.z=t[2]),3<t.length&&(e.m=t[3]),e}},function(t,e,i){var o=Math.PI/2;e.exports=function(t,e,i){var n=t*i,r=.5*t;return n=Math.pow((1-n)/(1+n),r),Math.tan(.5*(o-e))/n}},function(t,e,i){i.wgs84={towgs84:\"0,0,0\",ellipse:\"WGS84\",datumName:\"WGS84\"},i.ch1903={towgs84:\"674.374,15.056,405.346\",ellipse:\"bessel\",datumName:\"swiss\"},i.ggrs87={towgs84:\"-199.87,74.79,246.62\",ellipse:\"GRS80\",datumName:\"Greek_Geodetic_Reference_System_1987\"},i.nad83={towgs84:\"0,0,0\",ellipse:\"GRS80\",datumName:\"North_American_Datum_1983\"},i.nad27={nadgrids:\"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat\",ellipse:\"clrk66\",datumName:\"North_American_Datum_1927\"},i.potsdam={towgs84:\"606.0,23.0,413.0\",ellipse:\"bessel\",datumName:\"Potsdam Rauenberg 1950 DHDN\"},i.carthage={towgs84:\"-263.0,6.0,431.0\",ellipse:\"clark80\",datumName:\"Carthage 1934 Tunisia\"},i.hermannskogel={towgs84:\"653.0,-212.0,449.0\",ellipse:\"bessel\",datumName:\"Hermannskogel\"},i.ire65={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"mod_airy\",datumName:\"Ireland 1965\"},i.rassadiran={towgs84:\"-133.63,-157.5,-158.62\",ellipse:\"intl\",datumName:\"Rassadiran\"},i.nzgd49={towgs84:\"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993\",ellipse:\"intl\",datumName:\"New Zealand Geodetic Datum 1949\"},i.osgb36={towgs84:\"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894\",ellipse:\"airy\",datumName:\"Airy 1830\"},i.s_jtsk={towgs84:\"589,76,480\",ellipse:\"bessel\",datumName:\"S-JTSK (Ferro)\"},i.beduaram={towgs84:\"-106,-87,188\",ellipse:\"clrk80\",datumName:\"Beduaram\"},i.gunung_segara={towgs84:\"-403,684,41\",ellipse:\"bessel\",datumName:\"Gunung Segara Jakarta\"},i.rnb72={towgs84:\"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1\",ellipse:\"intl\",datumName:\"Reseau National Belge 1972\"}},function(t,e,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\"},i.WGS84={a:6378137,rf:298.257223563,ellipseName:\"WGS 84\"},i.sphere={a:6370997,b:6370997,ellipseName:\"Normal Sphere (r=6370997)\"}},function(t,e,i){i.greenwich=0,i.lisbon=-9.131906111111,i.paris=2.337229166667,i.bogota=-74.080916666667,i.madrid=-3.687938888889,i.rome=12.452333333333,i.bern=7.439583333333,i.jakarta=106.807719444444,i.ferro=-17.666666666667,i.brussels=4.367975,i.stockholm=18.058277777778,i.athens=23.7163375,i.oslo=10.722916666667},function(t,e,i){i.ft={to_meter:.3048},i[\"us-ft\"]={to_meter:1200/3937}},function(t,e,i){var n=t(362),r=t(387),o=n(\"WGS84\");function s(t,e,i){var n;return Array.isArray(i)?(n=r(t,e,i),3===i.length?[n.x,n.y,n.z]:[n.x,n.y]):r(t,e,i)}function a(t){return t instanceof n?t:t.oProj?t.oProj:n(t)}e.exports=function(e,i,t){e=a(e);var n,r=!1;return void 0===i?(i=e,e=o,r=!0):(void 0!==i.x||Array.isArray(i))&&(t=i,i=e,e=o,r=!0),i=a(i),t?s(e,i,t):(n={forward:function(t){return s(e,i,t)},inverse:function(t){return s(i,e,t)}},r&&(n.oProj=i),n)}},function(t,e,i){var a=484813681109536e-20;e.exports=function(t,e,i,n,r,o){var s={datum_type:4};return t&&\"none\"===t&&(s.datum_type=5),e&&(s.datum_params=e.map(parseFloat),0===s.datum_params[0]&&0===s.datum_params[1]&&0===s.datum_params[2]||(s.datum_type=1),3<s.datum_params.length&&(0===s.datum_params[3]&&0===s.datum_params[4]&&0===s.datum_params[5]&&0===s.datum_params[6]||(s.datum_type=2,s.datum_params[3]*=a,s.datum_params[4]*=a,s.datum_params[5]*=a,s.datum_params[6]=s.datum_params[6]/1e6+1))),s.a=i,s.b=n,s.es=r,s.ep2=o,s}},function(t,e,i){var k=Math.PI/2;i.compareDatums=function(t,e){return t.datum_type===e.datum_type&&!(t.a!==e.a||5e-11<Math.abs(this.es-e.es))&&(1===t.datum_type?this.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]:2!==t.datum_type||t.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]&&t.datum_params[3]===e.datum_params[3]&&t.datum_params[4]===e.datum_params[4]&&t.datum_params[5]===e.datum_params[5]&&t.datum_params[6]===e.datum_params[6])},i.geodeticToGeocentric=function(t,e,i){var n,r,o,s,a=t.x,l=t.y,h=t.z?t.z:0;if(l<-k&&-1.001*k<l)l=-k;else if(k<l&&l<1.001*k)l=k;else if(l<-k||k<l)return null;return a>Math.PI&&(a-=2*Math.PI),r=Math.sin(l),s=Math.cos(l),o=r*r,{x:((n=i/Math.sqrt(1-e*o))+h)*s*Math.cos(a),y:(n+h)*s*Math.sin(a),z:(n*(1-e)+h)*r}},i.geocentricToGeodetic=function(t,e,i,n){var r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b=t.x,x=t.y,w=t.z?t.z:0;if(r=Math.sqrt(b*b+x*x),o=Math.sqrt(b*b+x*x+w*w),r/i<1e-12){if(m=0,o/i<1e-12)return g=k,y=-n,{x:t.x,y:t.y,z:t.z}}else m=Math.atan2(x,b);for(s=w/o,a=r/o,l=1/Math.sqrt(1-e*(2-e)*a*a),c=a*(1-e)*l,_=s*l,v=0;v++,u=i/Math.sqrt(1-e*_*_),h=e*u/(u+(y=r*c+w*_-u*(1-e*_*_))),l=1/Math.sqrt(1-h*(2-h)*a*a),f=(d=s*l)*c-(p=a*(1-h)*l)*_,c=p,_=d,1e-24<f*f&&v<30;);return g=Math.atan(d/Math.abs(p)),{x:m,y:g,z:y}},i.geocentricToWgs84=function(t,e,i){if(1===e)return{x:t.x+i[0],y:t.y+i[1],z:t.z+i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6];return{x:h*(t.x-l*t.y+a*t.z)+n,y:h*(l*t.x+t.y-s*t.z)+r,z:h*(-a*t.x+s*t.y+t.z)+o}}},i.geocentricFromWgs84=function(t,e,i){if(1===e)return{x:t.x-i[0],y:t.y-i[1],z:t.z-i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6],u=(t.x-n)/h,c=(t.y-r)/h,_=(t.z-o)/h;return{x:u+l*c-a*_,y:-l*u+c+s*_,z:a*u-s*c+_}}}},function(t,e,i){var n=t(376);function r(t){return 1===t||2===t}e.exports=function(t,e,i){return n.compareDatums(t,e)?i:5===t.datum_type||5===e.datum_type?i:t.es!==e.es||t.a!==e.a||r(t.datum_type)||r(e.datum_type)?(i=n.geodeticToGeocentric(i,t.es,t.a),r(t.datum_type)&&(i=n.geocentricToWgs84(i,t.datum_type,t.datum_params)),r(e.datum_type)&&(i=n.geocentricFromWgs84(i,e.datum_type,e.datum_params)),n.geocentricToGeodetic(i,e.es,e.a,e.b)):i}},function(t,e,i){var n=t(381),r=t(383),o=t(388);function s(t){var e=this;if(2===arguments.length){var i=arguments[1];s[t]=\"string\"==typeof i?\"+\"===i.charAt(0)?r(arguments[1]):o(arguments[1]):i}else if(1===arguments.length){if(Array.isArray(t))return t.map(function(t){Array.isArray(t)?s.apply(e,t):s(t)});if(\"string\"==typeof t){if(t in s)return s[t]}else\"EPSG\"in t?s[\"EPSG:\"+t.EPSG]=t:\"ESRI\"in t?s[\"ESRI:\"+t.ESRI]=t:\"IAU2000\"in t?s[\"IAU2000:\"+t.IAU2000]=t:console.log(t);return}}n(s),e.exports=s},function(t,e,i){var s=t(371);i.eccentricity=function(t,e,i,n){var r=t*t,o=e*e,s=(r-o)/r,a=0;n?(r=(t*=1-s*(.16666666666666666+s*(.04722222222222222+.022156084656084655*s)))*t,s=0):a=Math.sqrt(s);var l=(r-o)/o;return{es:s,e:a,ep2:l}},i.sphere=function(t,e,i,n,r){if(!t){var o=s[n];o||(o=s.WGS84),t=o.a,e=o.b,i=o.rf}return i&&!e&&(e=(1-1/i)*t),(0===i||Math.abs(t-e)<1e-10)&&(r=!0,e=t),{a:t,b:e,rf:i,sphere:r}}},function(t,e,i){e.exports=function(t,e){var i,n;if(t=t||{},!e)return t;for(n in e)void 0!==(i=e[n])&&(t[n]=i);return t}},function(t,e,i){e.exports=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\"]}},function(t,e,i){var n=t(378),r=t(388),o=t(383),s=[\"GEOGCS\",\"GEOCCS\",\"PROJCS\",\"LOCAL_CS\"];e.exports=function(t){return\"string\"!=typeof t?t:t in n?n[t]:(e=t,s.some(function(t){return-1<e.indexOf(t)})?r(t):\"+\"===t[0]?o(t):void 0);var e}},function(t,e,i){var a=.017453292519943295,l=t(372),h=t(373);e.exports=function(t){var e,i,n,r={},o=t.split(\"+\").map(function(t){return t.trim()}).filter(function(t){return t}).reduce(function(t,e){var i=e.split(\"=\");return i.push(!0),t[i[0].toLowerCase()]=i[1],t},{}),s={proj:\"projName\",datum:\"datumCode\",rf:function(t){r.rf=parseFloat(t)},lat_0:function(t){r.lat0=t*a},lat_1:function(t){r.lat1=t*a},lat_2:function(t){r.lat2=t*a},lat_ts:function(t){r.lat_ts=t*a},lon_0:function(t){r.long0=t*a},lon_1:function(t){r.long1=t*a},lon_2:function(t){r.long2=t*a},alpha:function(t){r.alpha=parseFloat(t)*a},lonc:function(t){r.longc=t*a},x_0:function(t){r.x0=parseFloat(t)},y_0:function(t){r.y0=parseFloat(t)},k_0:function(t){r.k0=parseFloat(t)},k:function(t){r.k0=parseFloat(t)},a:function(t){r.a=parseFloat(t)},b:function(t){r.b=parseFloat(t)},r_a:function(){r.R_A=!0},zone:function(t){r.zone=parseInt(t,10)},south:function(){r.utmSouth=!0},towgs84:function(t){r.datum_params=t.split(\",\").map(function(t){return parseFloat(t)})},to_meter:function(t){r.to_meter=parseFloat(t)},units:function(t){r.units=t,h[t]&&(r.to_meter=h[t].to_meter)},from_greenwich:function(t){r.from_greenwich=t*a},pm:function(t){r.from_greenwich=(l[t]?l[t]:parseFloat(t))*a},nadgrids:function(t){\"@null\"===t?r.datumCode=\"none\":r.nadgrids=t},axis:function(t){var e=\"ewnsud\";3===t.length&&-1!==e.indexOf(t.substr(0,1))&&-1!==e.indexOf(t.substr(1,1))&&-1!==e.indexOf(t.substr(2,1))&&(r.axis=t)}};for(e in o)i=o[e],e in s?\"function\"==typeof(n=s[e])?n(i):r[n]=i:r[e]=i;return\"string\"==typeof r.datumCode&&\"WGS84\"!==r.datumCode&&(r.datumCode=r.datumCode.toLowerCase()),r}},function(t,e,i){var n=[t(386),t(385)],r={},o=[];function s(t,e){var i=o.length;return t.names?((o[i]=t).names.forEach(function(t){r[t.toLowerCase()]=i}),this):(console.log(e),!0)}i.add=s,i.get=function(t){if(!t)return!1;var e=t.toLowerCase();return void 0!==r[e]&&o[r[e]]?o[r[e]]:void 0},i.start=function(){n.forEach(s)}},function(t,e,i){function n(t){return t}i.init=function(){},i.forward=n,i.inverse=n,i.names=[\"longlat\",\"identity\"]},function(t,e,i){var n=t(365),a=Math.PI/2,l=57.29577951308232,h=t(364),u=Math.PI/4,c=t(369),s=t(366);i.init=function(){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=n(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)},i.forward=function(t){var e,i,n=t.x,r=t.y;if(90<r*l&&r*l<-90&&180<n*l&&n*l<-180)return null;if(Math.abs(Math.abs(r)-a)<=1e-10)return null;if(this.sphere)e=this.x0+this.a*this.k0*h(n-this.long0),i=this.y0+this.a*this.k0*Math.log(Math.tan(u+.5*r));else{var o=Math.sin(r),s=c(this.e,r,o);e=this.x0+this.a*this.k0*h(n-this.long0),i=this.y0-this.a*this.k0*Math.log(s)}return t.x=e,t.y=i,t},i.inverse=function(t){var e,i,n=t.x-this.x0,r=t.y-this.y0;if(this.sphere)i=a-2*Math.atan(Math.exp(-r/(this.a*this.k0)));else{var o=Math.exp(-r/(this.a*this.k0));if(-9999===(i=s(this.e,o)))return null}return e=h(this.long0+n/(this.a*this.k0)),t.x=e,t.y=i,t},i.names=[\"Mercator\",\"Popular Visualisation Pseudo Mercator\",\"Mercator_1SP\",\"Mercator_Auxiliary_Sphere\",\"merc\"]},function(t,e,i){var a=.017453292519943295,l=57.29577951308232,h=t(377),u=t(363),c=t(362),_=t(368);e.exports=function t(e,i,n){var r,o,s;return Array.isArray(n)&&(n=_(n)),e.datum&&i.datum&&(s=i,(1===(o=e).datum.datum_type||2===o.datum.datum_type)&&\"WGS84\"!==s.datumCode||(1===s.datum.datum_type||2===s.datum.datum_type)&&\"WGS84\"!==o.datumCode)&&(r=new c(\"WGS84\"),n=t(e,r,n),e=r),\"enu\"!==e.axis&&(n=u(e,!1,n)),\"longlat\"===e.projName?n={x:n.x*a,y:n.y*a}:(e.to_meter&&(n={x:n.x*e.to_meter,y:n.y*e.to_meter}),n=e.inverse(n)),e.from_greenwich&&(n.x+=e.from_greenwich),n=h(e.datum,i.datum,n),i.from_greenwich&&(n={x:n.x-i.grom_greenwich,y:n.y}),\"longlat\"===i.projName?n={x:n.x*l,y:n.y*l}:(n=i.forward(n),i.to_meter&&(n={x:n.x/i.to_meter,y:n.y/i.to_meter})),\"enu\"!==i.axis?u(i,!0,n):n}},function(t,e,i){var n=.017453292519943295,s=t(380);function r(t,e,i){t[e]=i.map(function(t){var e={};return a(t,e),e}).reduce(function(t,e){return s(t,e)},{})}function a(t,e){var i;Array.isArray(t)?(\"PARAMETER\"===(i=t.shift())&&(i=t.shift()),1===t.length?Array.isArray(t[0])?(e[i]={},a(t[0],e[i])):e[i]=t[0]:t.length?\"TOWGS84\"===i?e[i]=t:(e[i]={},-1<[\"UNIT\",\"PRIMEM\",\"VERT_DATUM\"].indexOf(i)?(e[i]={name:t[0].toLowerCase(),convert:t[1]},3===t.length&&(e[i].auth=t[2])):\"SPHEROID\"===i?(e[i]={name:t[0],a:t[1],rf:t[2]},4===t.length&&(e[i].auth=t[3])):-1<[\"GEOGCS\",\"GEOCCS\",\"DATUM\",\"VERT_CS\",\"COMPD_CS\",\"LOCAL_CS\",\"FITTED_CS\",\"LOCAL_DATUM\"].indexOf(i)?(t[0]=[\"name\",t[0]],r(e,i,t)):t.every(function(t){return Array.isArray(t)})?r(e,i,t):a(t,e[i])):e[i]=!0):e[t]=!0}function l(t){return t*n}e.exports=function(t,e){var i=JSON.parse((\",\"+t).replace(/\\s*\\,\\s*([A-Z_0-9]+?)(\\[)/g,',[\"$1\",').slice(1).replace(/\\s*\\,\\s*([A-Z_0-9]+?)\\]/g,',\"$1\"]').replace(/,\\[\"VERTCS\".+/,\"\")),n=i.shift(),r=i.shift();i.unshift([\"name\",r]),i.unshift([\"type\",n]),i.unshift(\"output\");var o={};return a(i,o),function(o){function t(t){var e=o.to_meter||1;return parseFloat(t,10)*e}\"GEOGCS\"===o.type?o.projName=\"longlat\":\"LOCAL_CS\"===o.type?(o.projName=\"identity\",o.local=!0):\"object\"==typeof o.PROJECTION?o.projName=Object.keys(o.PROJECTION)[0]:o.projName=o.PROJECTION,o.UNIT&&(o.units=o.UNIT.name.toLowerCase(),\"metre\"===o.units&&(o.units=\"meter\"),o.UNIT.convert&&(\"GEOGCS\"===o.type?o.DATUM&&o.DATUM.SPHEROID&&(o.to_meter=parseFloat(o.UNIT.convert,10)*o.DATUM.SPHEROID.a):o.to_meter=parseFloat(o.UNIT.convert,10))),o.GEOGCS&&(o.GEOGCS.DATUM?o.datumCode=o.GEOGCS.DATUM.name.toLowerCase():o.datumCode=o.GEOGCS.name.toLowerCase(),\"d_\"===o.datumCode.slice(0,2)&&(o.datumCode=o.datumCode.slice(2)),\"new_zealand_geodetic_datum_1949\"!==o.datumCode&&\"new_zealand_1949\"!==o.datumCode||(o.datumCode=\"nzgd49\"),\"wgs_1984\"===o.datumCode&&(\"Mercator_Auxiliary_Sphere\"===o.PROJECTION&&(o.sphere=!0),o.datumCode=\"wgs84\"),\"_ferro\"===o.datumCode.slice(-6)&&(o.datumCode=o.datumCode.slice(0,-6)),\"_jakarta\"===o.datumCode.slice(-8)&&(o.datumCode=o.datumCode.slice(0,-8)),~o.datumCode.indexOf(\"belge\")&&(o.datumCode=\"rnb72\"),o.GEOGCS.DATUM&&o.GEOGCS.DATUM.SPHEROID&&(o.ellps=o.GEOGCS.DATUM.SPHEROID.name.replace(\"_19\",\"\").replace(/[Cc]larke\\_18/,\"clrk\"),\"international\"===o.ellps.toLowerCase().slice(0,13)&&(o.ellps=\"intl\"),o.a=o.GEOGCS.DATUM.SPHEROID.a,o.rf=parseFloat(o.GEOGCS.DATUM.SPHEROID.rf,10)),~o.datumCode.indexOf(\"osgb_1936\")&&(o.datumCode=\"osgb36\")),o.b&&!isFinite(o.b)&&(o.b=o.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\"],[\"lat0\",\"latitude_of_center\",l],[\"longitude_of_center\",\"Longitude_Of_Center\"],[\"longc\",\"longitude_of_center\",l],[\"x0\",\"false_easting\",t],[\"y0\",\"false_northing\",t],[\"long0\",\"central_meridian\",l],[\"lat0\",\"latitude_of_origin\",l],[\"lat0\",\"standard_parallel_1\",l],[\"lat1\",\"standard_parallel_1\",l],[\"lat2\",\"standard_parallel_2\",l],[\"alpha\",\"azimuth\",l],[\"srsCode\",\"name\"]].forEach(function(t){return e=o,n=(i=t)[0],r=i[1],void(!(n in e)&&r in e&&(e[n]=e[r],3===i.length&&(e[n]=i[2](e[n]))));var e,i,n,r}),o.long0||!o.longc||\"Albers_Conic_Equal_Area\"!==o.projName&&\"Lambert_Azimuthal_Equal_Area\"!==o.projName||(o.long0=o.longc),o.lat_ts||!o.lat1||\"Stereographic_South_Pole\"!==o.projName&&\"Polar Stereographic (variant B)\"!==o.projName||(o.lat0=l(0<o.lat1?90:-90),o.lat_ts=o.lat1)}(o.output),s(e,o.output)}},function(t,e,i){!function(){\"use strict\";var d={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 f(t){return function(t,e){var i,n,r,o,s,a,l,h,u,c=1,_=t.length,p=\"\";for(n=0;n<_;n++)if(\"string\"==typeof t[n])p+=t[n];else if(Array.isArray(t[n])){if((o=t[n])[2])for(i=e[c],r=0;r<o[2].length;r++){if(!i.hasOwnProperty(o[2][r]))throw new Error(f('[sprintf] property \"%s\" does not exist',o[2][r]));i=i[o[2][r]]}else i=o[1]?e[o[1]]:e[c++];if(d.not_type.test(o[8])&&d.not_primitive.test(o[8])&&i instanceof Function&&(i=i()),d.numeric_arg.test(o[8])&&\"number\"!=typeof i&&isNaN(i))throw new TypeError(f(\"[sprintf] expecting number but found %T\",i));switch(d.number.test(o[8])&&(h=0<=i),o[8]){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[6]?parseInt(o[6]):0);break;case\"e\":i=o[7]?parseFloat(i).toExponential(o[7]):parseFloat(i).toExponential();break;case\"f\":i=o[7]?parseFloat(i).toFixed(o[7]):parseFloat(i);break;case\"g\":i=o[7]?String(Number(i.toPrecision(o[7]))):parseFloat(i);break;case\"o\":i=(parseInt(i,10)>>>0).toString(8);break;case\"s\":i=String(i),i=o[7]?i.substring(0,o[7]):i;break;case\"t\":i=String(!!i),i=o[7]?i.substring(0,o[7]):i;break;case\"T\":i=Object.prototype.toString.call(i).slice(8,-1).toLowerCase(),i=o[7]?i.substring(0,o[7]):i;break;case\"u\":i=parseInt(i,10)>>>0;break;case\"v\":i=i.valueOf(),i=o[7]?i.substring(0,o[7]):i;break;case\"x\":i=(parseInt(i,10)>>>0).toString(16);break;case\"X\":i=(parseInt(i,10)>>>0).toString(16).toUpperCase()}d.json.test(o[8])?p+=i:(!d.number.test(o[8])||h&&!o[3]?u=\"\":(u=h?\"+\":\"-\",i=i.toString().replace(d.sign,\"\")),a=o[4]?\"0\"===o[4]?\"0\":o[4].charAt(1):\" \",l=o[6]-(u+i).length,s=o[6]&&0<l?a.repeat(l):\"\",p+=o[5]?u+i+s:\"0\"===a?u+s+i:s+u+i)}return p}(function(t){if(l[t])return l[t];for(var e,i=t,n=[],r=0;i;){if(null!==(e=d.text.exec(i)))n.push(e[0]);else if(null!==(e=d.modulo.exec(i)))n.push(\"%\");else{if(null===(e=d.placeholder.exec(i)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(e[2]){r|=1;var o=[],s=e[2],a=[];if(null===(a=d.key.exec(s)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o.push(a[1]);\"\"!==(s=s.substring(a[0].length));)if(null!==(a=d.key_access.exec(s)))o.push(a[1]);else{if(null===(a=d.index_access.exec(s)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o.push(a[1])}e[2]=o}else r|=2;if(3===r)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");n.push(e)}i=i.substring(e[0].length)}return l[t]=n}(t),arguments)}function t(t,e){return f.apply(null,[t].concat(e||[]))}var l=Object.create(null);void 0!==i&&(i.sprintf=f,i.vsprintf=t),\"undefined\"!=typeof window&&(window.sprintf=f,window.vsprintf=t)}()},function(t,e,i){!function(t){\"object\"==typeof e&&e.exports?e.exports=t():this.tz=t()}(function(){function d(t,e,i){for(var n,r=e.day[1];n=new Date(Date.UTC(i,e.month,Math.abs(r++))),e.day[0]<7&&n.getUTCDay()!=e.day[0];);return(n={clock:e.clock,sort:n.getTime(),rule:e,save:6e4*e.save,offset:t.offset})[n.clock]=n.sort+6e4*e.time,n.posix?n.wallclock=n[n.clock]+(t.offset+e.saved):n.posix=n[n.clock]-(t.offset+e.saved),n}function r(t,e,i){var n,r,o,s,a,l,h,u=t[t.zone],c=[],_=new Date(i).getUTCFullYear(),p=1;for(n=1,r=u.length;n<r&&!(u[n][e]<=i);n++);if((o=u[n]).rules){for(l=t[o.rules],h=_+1;_-p<=h;--h)for(n=0,r=l.length;n<r;n++)l[n].from<=h&&h<=l[n].to?c.push(d(o,l[n],h)):l[n].to<h&&1==p&&(p=h-l[n].to);for(c.sort(function(t,e){return t.sort-e.sort}),n=0,r=c.length;n<r;n++)i>=c[n][e]&&c[n][c[n].clock]>o[c[n].clock]&&(s=c[n])}return s&&((a=/^(.*)\\/(.*)$/.exec(o.format))?s.abbrev=a[s.save?2:1]:s.abbrev=o.format.replace(/%s/,s.rule.letter)),s||o}function a(t,e){return\"UTC\"==t.zone?e:(t.entry=r(t,\"posix\",e),e+t.entry.offset+t.entry.save)}function c(t,e){return\"UTC\"==t.zone?e:(t.entry=i=r(t,\"wallclock\",e),0<(n=e-i.wallclock)&&n<i.save?null:e-i.offset-i.save);var i,n}function o(t,e,i){var n,r=+(i[1]+1),o=i[2]*r,s=l.indexOf(i[3].toLowerCase());if(9<s)e+=o*h[s-10];else{if(n=new Date(a(t,e)),s<7)for(;o;)n.setUTCDate(n.getUTCDate()+r),n.getUTCDay()==s&&(o-=r);else 7==s?n.setUTCFullYear(n.getUTCFullYear()+o):8==s?n.setUTCMonth(n.getUTCMonth()+o):n.setUTCDate(n.getUTCDate()+o);null==(e=c(t,n.getTime()))&&(e=c(t,n.getTime()+864e5*r)-864e5*r)}return e}var e={clock:function(){return+new Date},zone:\"UTC\",entry:{abbrev:\"UTC\",offset:0,save:0},UTC:1,z:function(t,e,i,n){var r,o,s=this.entry.offset+this.entry.save,a=Math.abs(s/1e3),l=[],h=3600;for(r=0;r<3;r++)l.push((\"0\"+Math.floor(a/h)).slice(-2)),a%=h,h/=60;return\"^\"!=i||s?(\"^\"==i&&(n=3),3==n?(o=(o=l.join(\":\")).replace(/:00$/,\"\"),\"^\"!=i&&(o=o.replace(/:00$/,\"\"))):n?(o=l.slice(0,n+1).join(\":\"),\"^\"==i&&(o=o.replace(/:00$/,\"\"))):o=l.slice(0,2).join(\"\"),o=(o=(s<0?\"-\":\"+\")+o).replace(/([-+])(0)/,{_:\" $1\",\"-\":\"$1\"}[i]||\"$1$2\")):\"Z\"},\"%\":function(t){return\"%\"},n:function(t){return\"\\n\"},t:function(t){return\"\\t\"},U:function(t){return u(t,0)},W:function(t){return u(t,1)},V:function(t){return i(t)[0]},G:function(t){return i(t)[1]},g:function(t){return i(t)[1]%100},j:function(t){return Math.floor((t.getTime()-Date.UTC(t.getUTCFullYear(),0))/864e5)+1},s:function(t){return Math.floor(t.getTime()/1e3)},C:function(t){return Math.floor(t.getUTCFullYear()/100)},N:function(t){return t.getTime()%1e3*1e6},m:function(t){return t.getUTCMonth()+1},Y:function(t){return t.getUTCFullYear()},y:function(t){return t.getUTCFullYear()%100},H:function(t){return t.getUTCHours()},M:function(t){return t.getUTCMinutes()},S:function(t){return t.getUTCSeconds()},e:function(t){return t.getUTCDate()},d:function(t){return t.getUTCDate()},u:function(t){return t.getUTCDay()||7},w:function(t){return t.getUTCDay()},l:function(t){return t.getUTCHours()%12||12},I:function(t){return t.getUTCHours()%12||12},k:function(t){return t.getUTCHours()},Z:function(t){return this.entry.abbrev},a:function(t){return this[this.locale].day.abbrev[t.getUTCDay()]},A:function(t){return this[this.locale].day.full[t.getUTCDay()]},h:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},b:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},B:function(t){return this[this.locale].month.full[t.getUTCMonth()]},P:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)].toLowerCase()},p:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)]},R:function(t,e){return this.convert([e,\"%H:%M\"])},T:function(t,e){return this.convert([e,\"%H:%M:%S\"])},D:function(t,e){return this.convert([e,\"%m/%d/%y\"])},F:function(t,e){return this.convert([e,\"%Y-%m-%d\"])},x:function(t,e){return this.convert([e,this[this.locale].date])},r:function(t,e){return this.convert([e,this[this.locale].time12||\"%I:%M:%S\"])},X:function(t,e){return this.convert([e,this[this.locale].time24])},c:function(t,e){return this.convert([e,this[this.locale].dateTime])},convert:function(t){if(!t.length)return\"1.0.13\";var e,i,l,n,h,u=Object.create(this),r=[];for(e=0;e<t.length;e++)if(n=t[e],Array.isArray(n))e||isNaN(n[1])?n.splice.apply(t,[e--,1].concat(n)):h=n;else if(isNaN(n)){if(\"string\"==(l=typeof n))~n.indexOf(\"%\")?u.format=n:e||\"*\"!=n?!e&&(l=/^(\\d{4})-(\\d{2})-(\\d{2})(?:[T\\s](\\d{2}):(\\d{2})(?::(\\d{2})(?:\\.(\\d+))?)?(Z|(([+-])(\\d{2}(:\\d{2}){0,2})))?)?$/.exec(n))?((h=[]).push.apply(h,l.slice(1,8)),l[9]?(h.push(l[10]+1),h.push.apply(h,l[11].split(/:/))):l[8]&&h.push(1)):/^\\w{2,3}_\\w{2}$/.test(n)?u.locale=n:(l=s.exec(n))?r.push(l):u.zone=n:h=n;else if(\"function\"==l){if(l=n.call(u))return l}else if(/^\\w{2,3}_\\w{2}$/.test(n.name))u[n.name]=n;else if(n.zones){for(l in n.zones)u[l]=n.zones[l];for(l in n.rules)u[l]=n.rules[l]}}else e||(h=n);if(u[u.locale]||delete u.locale,u[u.zone]||delete u.zone,null!=h){if(\"*\"==h)h=u.clock();else if(Array.isArray(h)){for(l=[],i=!h[7],e=0;e<11;e++)l[e]=+(h[e]||0);--l[1],h=Date.UTC.apply(Date.UTC,l)+-l[7]*(36e5*l[8]+6e4*l[9]+1e3*l[10])}else h=Math.floor(h);if(!isNaN(h)){if(i&&(h=c(u,h)),null==h)return h;for(e=0,i=r.length;e<i;e++)h=o(u,h,r[e]);return u.format?(l=new Date(a(u,h)),u.format.replace(/%([-0_^]?)(:{0,3})(\\d*)(.)/g,function(t,e,i,n,r){var o,s,a=\"0\";if(o=u[r]){for(t=String(o.call(u,l,h,e,i.length)),\"_\"==(e||o.style)&&(a=\" \"),s=\"-\"==e?0:o.pad||0;t.length<s;)t=a+t;for(s=\"-\"==e?0:n||o.pad;t.length<s;)t=a+t;\"N\"==r&&s<t.length&&(t=t.slice(0,s)),\"^\"==e&&(t=t.toUpperCase())}return t})):h}}return function(){return u.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(\"|\")}}},l=\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|year|month|day|hour|minute|second|millisecond\",s=new RegExp(\"^\\\\s*([+-])(\\\\d+)\\\\s+(\"+l+\")s?\\\\s*$\",\"i\"),h=[36e5,6e4,1e3,1];function u(t,e){var i,n,r;return n=new Date(Date.UTC(t.getUTCFullYear(),0)),i=Math.floor((t.getTime()-n.getTime())/864e5),n.getUTCDay()==e?r=0:8==(r=7-n.getUTCDay()+e)&&(r=1),r<=i?Math.floor((i-r)/7)+1:0}function i(t){var e,i,n;return i=t.getUTCFullYear(),e=new Date(Date.UTC(i,0)).getUTCDay(),(n=u(t,1)+(1<e&&e<=4?1:0))?53!=n||4==e||3==e&&29==new Date(i,1,29).getDate()?[n,t.getUTCFullYear()]:[1,t.getUTCFullYear()+1]:(i=t.getUTCFullYear()-1,e=new Date(Date.UTC(i,0)).getUTCDay(),[n=4==e||3==e&&29==new Date(i,1,29).getDate()?53:52,t.getUTCFullYear()-1])}return l=l.toLowerCase().split(\"|\"),\"delmHMSUWVgCIky\".replace(/./g,function(t){e[t].pad=2}),e.N.pad=9,e.j.pad=3,e.k.style=\"_\",e.l.style=\"_\",e.e.style=\"_\",function(){return e.convert(arguments)}})},function(t,n,e){\n      /*! *****************************************************************************\n          Copyright (c) Microsoft Corporation. All rights reserved.\n          Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use\n          this file except in compliance with the License. You may obtain a copy of the\n          License at http://www.apache.org/licenses/LICENSE-2.0\n          \n          THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n          KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\n          WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\n          MERCHANTABLITY OR NON-INFRINGEMENT.\n          \n          See the Apache Version 2.0 License for specific language governing permissions\n          and limitations under the License.\n          ***************************************************************************** */\n      var i,r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x;!function(t){var e=\"object\"==typeof global?global:\"object\"==typeof self?self:\"object\"==typeof this?this:{};function i(i,n){return i!==e&&(\"function\"==typeof Object.create?Object.defineProperty(i,\"__esModule\",{value:!0}):i.__esModule=!0),function(t,e){return i[t]=n?n(t,e):e}}\"object\"==typeof n&&\"object\"==typeof n.exports?t(i(e,i(n.exports))):t(i(e))}(function(t){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])};i=function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t},o=function(t,e){var i={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols)for(var r=0,n=Object.getOwnPropertySymbols(t);r<n.length;r++)e.indexOf(n[r])<0&&(i[n[r]]=t[n[r]]);return i},s=function(t,e,i,n){var r,o=arguments.length,s=o<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,n);else for(var a=t.length-1;0<=a;a--)(r=t[a])&&(s=(o<3?r(s):3<o?r(e,i,s):r(e,i))||s);return 3<o&&s&&Object.defineProperty(e,i,s),s},a=function(i,n){return function(t,e){n(t,e,i)}},l=function(t,e){if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.metadata)return Reflect.metadata(t,e)},h=function(o,s,a,l){return new(a||(a=Promise))(function(t,e){function i(t){try{r(l.next(t))}catch(t){e(t)}}function n(t){try{r(l.throw(t))}catch(t){e(t)}}function r(e){e.done?t(e.value):new a(function(t){t(e.value)}).then(i,n)}r((l=l.apply(o,s||[])).next())})},u=function(i,n){var r,o,s,t,a={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return t={next:e(0),throw:e(1),return:e(2)},\"function\"==typeof Symbol&&(t[Symbol.iterator]=function(){return this}),t;function e(e){return function(t){return function(e){if(r)throw new TypeError(\"Generator is already executing.\");for(;a;)try{if(r=1,o&&(s=2&e[0]?o.return:e[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,e[1])).done)return s;switch(o=0,s&&(e=[2&e[0],s.value]),e[0]){case 0:case 1:s=e;break;case 4:return a.label++,{value:e[1],done:!1};case 5:a.label++,o=e[1],e=[0];continue;case 7:e=a.ops.pop(),a.trys.pop();continue;default:if(!(s=0<(s=a.trys).length&&s[s.length-1])&&(6===e[0]||2===e[0])){a=0;continue}if(3===e[0]&&(!s||e[1]>s[0]&&e[1]<s[3])){a.label=e[1];break}if(6===e[0]&&a.label<s[1]){a.label=s[1],s=e;break}if(s&&a.label<s[2]){a.label=s[2],a.ops.push(e);break}s[2]&&a.ops.pop(),a.trys.pop();continue}e=n.call(i,a)}catch(t){e=[6,t],o=0}finally{r=s=0}if(5&e[0])throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}([e,t])}}},c=function(t,e){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])},_=function(t){var e=\"function\"==typeof Symbol&&t[Symbol.iterator],i=0;return e?e.call(t):{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}}},p=function(t,e){var i=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,r,o=i.call(t),s=[];try{for(;(void 0===e||0<e--)&&!(n=o.next()).done;)s.push(n.value)}catch(t){r={error:t}}finally{try{n&&!n.done&&(i=o.return)&&i.call(o)}finally{if(r)throw r.error}}return s},d=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(p(arguments[e]));return t},f=function(t){return this instanceof f?(this.v=t,this):new f(t)},v=function(t,e,i){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var r,o=i.apply(t,e||[]),s=[];return r={},n(\"next\"),n(\"throw\"),n(\"return\"),r[Symbol.asyncIterator]=function(){return this},r;function n(n){o[n]&&(r[n]=function(i){return new Promise(function(t,e){1<s.push([n,i,t,e])||a(n,i)})})}function a(t,e){try{(i=o[t](e)).value instanceof f?Promise.resolve(i.value.v).then(l,h):u(s[0][2],i)}catch(t){u(s[0][3],t)}var i}function l(t){a(\"next\",t)}function h(t){a(\"throw\",t)}function u(t,e){t(e),s.shift(),s.length&&a(s[0][0],s[0][1])}},m=function(n){var t,r;return t={},e(\"next\"),e(\"throw\",function(t){throw t}),e(\"return\"),t[Symbol.iterator]=function(){return this},t;function e(e,i){t[e]=n[e]?function(t){return(r=!r)?{value:f(n[e](t)),done:\"return\"===e}:i?i(t):t}:i}},g=function(l){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var t,e=l[Symbol.asyncIterator];return e?e.call(l):(l=_(l),t={},i(\"next\"),i(\"throw\"),i(\"return\"),t[Symbol.asyncIterator]=function(){return this},t);function i(a){t[a]=l[a]&&function(s){return new Promise(function(t,e){var i,n,r,o;s=l[a](s),i=t,n=e,r=s.done,o=s.value,Promise.resolve(o).then(function(t){i({value:t,done:r})},n)})}}},y=function(t,e){return Object.defineProperty?Object.defineProperty(t,\"raw\",{value:e}):t.raw=e,t},b=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e},x=function(t){return t&&t.__esModule?t:{default:t}},t(\"__extends\",i),t(\"__assign\",r),t(\"__rest\",o),t(\"__decorate\",s),t(\"__param\",a),t(\"__metadata\",l),t(\"__awaiter\",h),t(\"__generator\",u),t(\"__exportStar\",c),t(\"__values\",_),t(\"__read\",p),t(\"__spread\",d),t(\"__await\",f),t(\"__asyncGenerator\",v),t(\"__asyncDelegator\",m),t(\"__asyncValues\",g),t(\"__makeTemplateObject\",y),t(\"__importStar\",b),t(\"__importDefault\",x)})}],s={base:0,\"client/connection\":1,\"client/session\":2,\"core/bokeh_events\":3,\"core/build_views\":4,\"core/dom\":5,\"core/dom_view\":6,\"core/enums\":7,\"core/has_props\":8,\"core/hittest\":9,\"core/layout/alignments\":10,\"core/layout/layout_canvas\":11,\"core/layout/side_panel\":12,\"core/layout/solver\":13,\"core/logging\":14,\"core/properties\":15,\"core/property_mixins\":16,\"core/selection_manager\":17,\"core/settings\":18,\"core/signaling\":19,\"core/ui_events\":20,\"core/util/array\":21,\"core/util/arrayable\":22,\"core/util/assert\":23,\"core/util/bbox\":24,\"core/util/callback\":25,\"core/util/canvas\":26,\"core/util/color\":27,\"core/util/compat\":28,\"core/util/data_structures\":29,\"core/util/eq\":30,\"core/util/math\":31,\"core/util/object\":32,\"core/util/projections\":33,\"core/util/refs\":34,\"core/util/selection\":35,\"core/util/serialization\":36,\"core/util/spatial\":37,\"core/util/string\":38,\"core/util/svg_colors\":39,\"core/util/templating\":40,\"core/util/text\":41,\"core/util/throttle\":42,\"core/util/typed_array\":43,\"core/util/types\":44,\"core/util/wheel\":45,\"core/util/zoom\":46,\"core/vectorization\":47,\"core/view\":48,\"core/visuals\":49,\"document/document\":50,\"document/events\":51,\"document/index\":52,\"embed/dom\":53,\"embed/index\":54,\"embed/notebook\":55,\"embed/server\":56,\"embed/standalone\":57,main:58,model:59,\"models/annotations/annotation\":60,\"models/annotations/arrow\":61,\"models/annotations/arrow_head\":62,\"models/annotations/band\":63,\"models/annotations/box_annotation\":64,\"models/annotations/color_bar\":65,\"models/annotations/index\":66,\"models/annotations/label\":67,\"models/annotations/label_set\":68,\"models/annotations/legend\":69,\"models/annotations/legend_item\":70,\"models/annotations/poly_annotation\":71,\"models/annotations/slope\":72,\"models/annotations/span\":73,\"models/annotations/text_annotation\":74,\"models/annotations/title\":75,\"models/annotations/toolbar_panel\":76,\"models/annotations/tooltip\":77,\"models/annotations/whisker\":78,\"models/axes/axis\":79,\"models/axes/categorical_axis\":80,\"models/axes/continuous_axis\":81,\"models/axes/datetime_axis\":82,\"models/axes/index\":83,\"models/axes/linear_axis\":84,\"models/axes/log_axis\":85,\"models/axes/mercator_axis\":86,\"models/callbacks/callback\":87,\"models/callbacks/customjs\":88,\"models/callbacks/index\":89,\"models/callbacks/open_url\":90,\"models/canvas/canvas\":91,\"models/canvas/cartesian_frame\":92,\"models/canvas/index\":93,\"models/expressions/cumsum\":94,\"models/expressions/expression\":95,\"models/expressions/index\":96,\"models/expressions/stack\":97,\"models/filters/boolean_filter\":98,\"models/filters/customjs_filter\":99,\"models/filters/filter\":100,\"models/filters/group_filter\":101,\"models/filters/index\":102,\"models/filters/index_filter\":103,\"models/formatters/basic_tick_formatter\":104,\"models/formatters/categorical_tick_formatter\":105,\"models/formatters/datetime_tick_formatter\":106,\"models/formatters/func_tick_formatter\":107,\"models/formatters/index\":108,\"models/formatters/log_tick_formatter\":109,\"models/formatters/mercator_tick_formatter\":110,\"models/formatters/numeral_tick_formatter\":111,\"models/formatters/printf_tick_formatter\":112,\"models/formatters/tick_formatter\":113,\"models/glyphs/annular_wedge\":114,\"models/glyphs/annulus\":115,\"models/glyphs/arc\":116,\"models/glyphs/bezier\":117,\"models/glyphs/box\":118,\"models/glyphs/center_rotatable\":119,\"models/glyphs/circle\":120,\"models/glyphs/ellipse\":121,\"models/glyphs/ellipse_oval\":122,\"models/glyphs/glyph\":123,\"models/glyphs/hbar\":124,\"models/glyphs/hex_tile\":125,\"models/glyphs/image\":126,\"models/glyphs/image_rgba\":127,\"models/glyphs/image_url\":128,\"models/glyphs/index\":129,\"models/glyphs/line\":130,\"models/glyphs/multi_line\":131,\"models/glyphs/multi_polygons\":132,\"models/glyphs/oval\":133,\"models/glyphs/patch\":134,\"models/glyphs/patches\":135,\"models/glyphs/quad\":136,\"models/glyphs/quadratic\":137,\"models/glyphs/ray\":138,\"models/glyphs/rect\":139,\"models/glyphs/segment\":140,\"models/glyphs/step\":141,\"models/glyphs/text\":142,\"models/glyphs/utils\":143,\"models/glyphs/vbar\":144,\"models/glyphs/wedge\":145,\"models/glyphs/xy_glyph\":146,\"models/graphs/graph_hit_test_policy\":147,\"models/graphs/index\":148,\"models/graphs/layout_provider\":149,\"models/graphs/static_layout_provider\":150,\"models/grids/grid\":151,\"models/grids/index\":152,\"models/index\":153,\"models/layouts/box\":154,\"models/layouts/column\":155,\"models/layouts/index\":156,\"models/layouts/layout_dom\":157,\"models/layouts/row\":158,\"models/layouts/spacer\":159,\"models/layouts/widget_box\":160,\"models/mappers/categorical_color_mapper\":161,\"models/mappers/categorical_mapper\":162,\"models/mappers/categorical_marker_mapper\":163,\"models/mappers/color_mapper\":164,\"models/mappers/continuous_color_mapper\":165,\"models/mappers/index\":166,\"models/mappers/linear_color_mapper\":167,\"models/mappers/log_color_mapper\":168,\"models/mappers/mapper\":169,\"models/markers/defs\":170,\"models/markers/index\":171,\"models/markers/marker\":172,\"models/markers/scatter\":173,\"models/plots/gmap_plot\":174,\"models/plots/gmap_plot_canvas\":175,\"models/plots/index\":176,\"models/plots/plot\":177,\"models/plots/plot_canvas\":178,\"models/ranges/data_range\":179,\"models/ranges/data_range1d\":180,\"models/ranges/factor_range\":181,\"models/ranges/index\":182,\"models/ranges/range\":183,\"models/ranges/range1d\":184,\"models/renderers/glyph_renderer\":185,\"models/renderers/graph_renderer\":186,\"models/renderers/guide_renderer\":187,\"models/renderers/index\":188,\"models/renderers/renderer\":189,\"models/scales/categorical_scale\":190,\"models/scales/index\":191,\"models/scales/linear_scale\":192,\"models/scales/log_scale\":193,\"models/scales/scale\":194,\"models/selections/index\":195,\"models/selections/interaction_policy\":196,\"models/selections/selection\":197,\"models/sources/ajax_data_source\":198,\"models/sources/cds_view\":199,\"models/sources/column_data_source\":200,\"models/sources/columnar_data_source\":201,\"models/sources/data_source\":202,\"models/sources/geojson_data_source\":203,\"models/sources/index\":204,\"models/sources/remote_data_source\":205,\"models/tickers/adaptive_ticker\":206,\"models/tickers/basic_ticker\":207,\"models/tickers/categorical_ticker\":208,\"models/tickers/composite_ticker\":209,\"models/tickers/continuous_ticker\":210,\"models/tickers/datetime_ticker\":211,\"models/tickers/days_ticker\":212,\"models/tickers/fixed_ticker\":213,\"models/tickers/index\":214,\"models/tickers/log_ticker\":215,\"models/tickers/mercator_ticker\":216,\"models/tickers/months_ticker\":217,\"models/tickers/single_interval_ticker\":218,\"models/tickers/ticker\":219,\"models/tickers/util\":220,\"models/tickers/years_ticker\":221,\"models/tiles/bbox_tile_source\":222,\"models/tiles/image_pool\":223,\"models/tiles/index\":224,\"models/tiles/mercator_tile_source\":225,\"models/tiles/quadkey_tile_source\":226,\"models/tiles/tile_renderer\":227,\"models/tiles/tile_source\":228,\"models/tiles/tile_utils\":229,\"models/tiles/tms_tile_source\":230,\"models/tiles/wmts_tile_source\":231,\"models/tools/actions/action_tool\":232,\"models/tools/actions/custom_action\":233,\"models/tools/actions/help_tool\":234,\"models/tools/actions/redo_tool\":235,\"models/tools/actions/reset_tool\":236,\"models/tools/actions/save_tool\":237,\"models/tools/actions/undo_tool\":238,\"models/tools/actions/zoom_in_tool\":239,\"models/tools/actions/zoom_out_tool\":240,\"models/tools/button_tool\":241,\"models/tools/edit/box_edit_tool\":242,\"models/tools/edit/edit_tool\":243,\"models/tools/edit/freehand_draw_tool\":244,\"models/tools/edit/point_draw_tool\":245,\"models/tools/edit/poly_draw_tool\":246,\"models/tools/edit/poly_edit_tool\":247,\"models/tools/edit/poly_tool\":248,\"models/tools/gestures/box_select_tool\":249,\"models/tools/gestures/box_zoom_tool\":250,\"models/tools/gestures/gesture_tool\":251,\"models/tools/gestures/lasso_select_tool\":252,\"models/tools/gestures/pan_tool\":253,\"models/tools/gestures/poly_select_tool\":254,\"models/tools/gestures/range_tool\":255,\"models/tools/gestures/select_tool\":256,\"models/tools/gestures/tap_tool\":257,\"models/tools/gestures/wheel_pan_tool\":258,\"models/tools/gestures/wheel_zoom_tool\":259,\"models/tools/index\":260,\"models/tools/inspectors/crosshair_tool\":261,\"models/tools/inspectors/customjs_hover\":262,\"models/tools/inspectors/hover_tool\":263,\"models/tools/inspectors/inspect_tool\":264,\"models/tools/on_off_button\":265,\"models/tools/tool\":266,\"models/tools/tool_proxy\":267,\"models/tools/toolbar\":268,\"models/tools/toolbar_base\":269,\"models/tools/toolbar_box\":270,\"models/tools/util\":271,\"models/transforms/customjs_transform\":272,\"models/transforms/dodge\":273,\"models/transforms/index\":274,\"models/transforms/interpolator\":275,\"models/transforms/jitter\":276,\"models/transforms/linear_interpolator\":277,\"models/transforms/step_interpolator\":278,\"models/transforms/transform\":279,polyfill:280,\"protocol/index\":281,\"protocol/message\":282,\"protocol/receiver\":283,safely:284,testing:285,version:286},r={},(l=(a=function(t){var e=null!=s[t]?s[t]:t;if(!r[e]){if(!o[e]){var i=new Error(\"Cannot find module '\"+t+\"'\");throw i.code=\"MODULE_NOT_FOUND\",i}var n=r[e]={exports:{}};o[e].call(n.exports,a,n,n.exports)}return r[e].exports})(58)).require=a,l.register_plugin=function(t,e,i){for(var n in t)o[n]=t[n];for(var n in e)s[n]=e[n];var r=a(i);for(var n in r)l[n]=r[n];return r},l)}(this);\n      //# sourceMappingURL=bokeh.min.js.map\n      /* END bokeh.min.js */\n    },\n    \n    function(Bokeh) {\n      /* BEGIN bokeh-widgets.min.js */\n      /*!\n       * Copyright (c) 2012 - 2018, 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(t,e){var i;i=t.Bokeh,function(t,e,n){if(null!=i)return i.register_plugin(t,{\"core/menus\":400,\"models/widgets/abstract_button\":401,\"models/widgets/abstract_icon\":402,\"models/widgets/abstract_slider\":403,\"models/widgets/autocomplete_input\":404,\"models/widgets/button\":405,\"models/widgets/checkbox_button_group\":406,\"models/widgets/checkbox_group\":407,\"models/widgets/date_picker\":408,\"models/widgets/date_range_slider\":409,\"models/widgets/date_slider\":410,\"models/widgets/div\":411,\"models/widgets/dropdown\":412,\"models/widgets/index\":413,\"models/widgets/input_widget\":414,\"models/widgets/main\":415,\"models/widgets/markup\":416,\"models/widgets/multiselect\":417,\"models/widgets/panel\":418,\"models/widgets/paragraph\":419,\"models/widgets/password_input\":420,\"models/widgets/pretext\":421,\"models/widgets/radio_button_group\":422,\"models/widgets/radio_group\":423,\"models/widgets/range_slider\":424,\"models/widgets/selectbox\":425,\"models/widgets/slider\":426,\"models/widgets/tabs\":427,\"models/widgets/text_input\":428,\"models/widgets/toggle\":429,\"models/widgets/widget\":440},415);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")}({400:function(t,e,n){var i=t(19);n.clear_menus=new i.Signal0({},\"clear_menus\"),document.addEventListener(\"click\",function(){return n.clear_menus.emit()})},401:function(t,e,n){var i=t(391),r=t(15),o=t(5),s=t(4),a=t(440),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.icon_views={},this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.remove=function(){s.remove_views(this.icon_views),n.prototype.remove.call(this)},t.prototype._render_button=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return o.button.apply(void 0,[{type:\"button\",disabled:this.model.disabled,class:[\"bk-bs-btn\",\"bk-bs-btn-\"+this.model.button_type]}].concat(t))},t.prototype.render=function(){var e=this;n.prototype.render.call(this),o.empty(this.el),this.buttonEl=this._render_button(this.model.label),this.buttonEl.addEventListener(\"click\",function(t){return e._button_click(t)}),this.el.appendChild(this.buttonEl);var t=this.model.icon;null!=t&&(s.build_views(this.icon_views,[t],{parent:this}),o.prepend(this.buttonEl,this.icon_views[t.id].el,o.nbsp))},t.prototype._button_click=function(t){t.preventDefault(),this.change_input()},t.prototype.change_input=function(){null!=this.model.callback&&this.model.callback.execute(this.model)},t}(a.WidgetView);n.AbstractButtonView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AbstractButton\",this.define({label:[r.String,\"Button\"],icon:[r.Instance],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(a.Widget);(n.AbstractButton=u).initClass()},402:function(t,e,n){var i=t(391),r=t(440),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e}(r.WidgetView);n.AbstractIconView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AbstractIcon\"},t}(r.Widget);(n.AbstractIcon=s).initClass()},403:function(t,e,n){var i=t(391),f=t(431),r=t(15),m=t(5),v=t(14),g=t(21),y=t(25),o=t(440),s=function(p){function t(){return null!==p&&p.apply(this,arguments)||this}return i.__extends(t,p),t.prototype.initialize=function(t){p.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;p.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var r=this;if(null==this.sliderEl&&p.prototype.render.call(this),null!=this.model.callback){var t=function(){return r.model.callback.execute(r.model)};switch(this.model.callback_policy){case\"continuous\":this.callback_wrapper=t;break;case\"throttle\":this.callback_wrapper=y.throttle(t,this.model.callback_throttle)}}var e,o=\"bk-noUi-\",n=this._calc_to(),i=n.start,s=n.end,a=n.value,l=n.step;if(this.model.tooltips){var u={to:function(t){return r.model.pretty(t)}};e=g.repeat(u,a.length)}else e=!1;if(this.el.classList.add(\"bk-slider\"),null==this.sliderEl){this.sliderEl=m.div(),this.el.appendChild(this.sliderEl),f.create(this.sliderEl,{cssPrefix:o,range:{min:i,max:s},start:a,step:l,behaviour:this.model.behaviour,connect:this.model.connected,tooltips:e,orientation:this.model.orientation,direction:this.model.direction}),this.sliderEl.noUiSlider.on(\"slide\",function(t,e,n){return r._slide(n)}),this.sliderEl.noUiSlider.on(\"change\",function(t,e,n){return r._change(n)});var c=this.sliderEl.querySelector(\".\"+o+\"handle\");c.setAttribute(\"tabindex\",\"0\"),c.addEventListener(\"keydown\",function(t){var e=r._calc_to().value[0];switch(t.which){case 37:e=Math.max(e-l,i);break;case 39:e=Math.min(e+l,s);break;default:return}var n=r.model.pretty(e);v.logger.debug(\"[slider keypress] value = \"+n),r.model.value=e,r.sliderEl.noUiSlider.set(e),null!=r.valueEl&&(r.valueEl.textContent=n),null!=r.callback_wrapper&&r.callback_wrapper()});var d=function(t,e){var n=r.sliderEl.querySelectorAll(\".\"+o+\"handle\")[t],i=n.querySelector(\".\"+o+\"tooltip\");i.style.display=e?\"block\":\"\"};this.sliderEl.noUiSlider.on(\"start\",function(t,e){return d(e,!0)}),this.sliderEl.noUiSlider.on(\"end\",function(t,e){return d(e,!1)})}else this.sliderEl.noUiSlider.updateOptions({range:{min:i,max:s},start:a,step:l});if(null!=this.titleEl&&this.el.removeChild(this.titleEl),null!=this.valueEl&&this.el.removeChild(this.valueEl),null!=this.model.title&&(0!=this.model.title.length&&(this.titleEl=m.label({},this.model.title+\":\"),this.el.insertBefore(this.titleEl,this.sliderEl)),this.model.show_value)){var h=a.map(function(t){return r.model.pretty(t)}).join(\" .. \");this.valueEl=m.div({class:\"bk-slider-value\"},h),this.el.insertBefore(this.valueEl,this.sliderEl)}this.model.disabled||(this.sliderEl.querySelector(\".\"+o+\"connect\").style.backgroundColor=this.model.bar_color),this.model.disabled?this.sliderEl.setAttribute(\"disabled\",\"true\"):this.sliderEl.removeAttribute(\"disabled\")},t.prototype._slide=function(t){var e=this,n=this._calc_from(t),i=t.map(function(t){return e.model.pretty(t)}).join(\" .. \");v.logger.debug(\"[slider slide] value = \"+i),null!=this.valueEl&&(this.valueEl.textContent=i),this.model.value=n,null!=this.callback_wrapper&&this.callback_wrapper()},t.prototype._change=function(t){var e=this,n=this._calc_from(t),i=t.map(function(t){return e.model.pretty(t)}).join(\" .. \");switch(v.logger.debug(\"[slider change] value = \"+i),null!=this.valueEl&&(this.valueEl.dataset.value=i),this.model.value=n,this.model.callback_policy){case\"mouseup\":case\"throttle\":null!=this.model.callback&&this.model.callback.execute(this.model)}},t}(o.WidgetView);n.AbstractSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.connected=!1,e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"AbstractSlider\",this.define({title:[r.String,\"\"],show_value:[r.Bool,!0],start:[r.Any],end:[r.Any],value:[r.Any],step:[r.Number,1],format:[r.String],orientation:[r.Orientation,\"horizontal\"],direction:[r.Any,\"ltr\"],tooltips:[r.Boolean,!0],callback:[r.Instance],callback_throttle:[r.Number,200],callback_policy:[r.String,\"throttle\"],bar_color:[r.Color,\"#e6e6e6\"]})},t.prototype._formatter=function(t,e){return\"\"+t},t.prototype.pretty=function(t){return this._formatter(t,this.format)},t}(o.Widget);(n.AbstractSlider=a).initClass()},404:function(t,e,n){var i=t(391),r=t(428),s=t(5),o=t(400),a=t(15),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),o.clear_menus.connect(function(){return t._clear_menu()})},t.prototype.render=function(){var e=this;n.prototype.render.call(this),this.inputEl.classList.add(\"bk-autocomplete-input\"),this.inputEl.addEventListener(\"keydown\",function(t){return e._keydown(t)}),this.inputEl.addEventListener(\"keyup\",function(t){return e._keyup(t)}),this.menuEl=s.ul({class:\"bk-bs-dropdown-menu\"}),this.menuEl.addEventListener(\"click\",function(t){return e._item_click(t)}),this.el.appendChild(this.menuEl)},t.prototype._render_items=function(t){s.empty(this.menuEl);for(var e=0,n=t;e<n.length;e++){var i=n[e],r=s.li({},s.a({data:{text:i}},i));this.menuEl.appendChild(r)}},t.prototype._open_menu=function(){this.el.classList.add(\"bk-bs-open\")},t.prototype._clear_menu=function(){this.el.classList.remove(\"bk-bs-open\")},t.prototype._item_click=function(t){if(t.preventDefault(),t.target!=t.currentTarget){var e=t.target,n=e.dataset.text;this.model.value=n}},t.prototype._keydown=function(t){},t.prototype._keyup=function(t){switch(t.keyCode){case s.Keys.Enter:console.log(\"enter\");break;case s.Keys.Esc:this._clear_menu();break;case s.Keys.Up:case s.Keys.Down:console.log(\"up/down\");break;default:var e=this.inputEl.value;if(e.length<=1)return void this._clear_menu();for(var n=[],i=0,r=this.model.completions;i<r.length;i++){var o=r[i];-1!=o.indexOf(e)&&n.push(o)}0==n.length?this._clear_menu():(this._render_items(n),this._open_menu())}},t}(r.TextInputView);n.AutocompleteInputView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AutocompleteInput\",this.prototype.default_view=l,this.define({completions:[a.Array,[]]}),this.internal({active:[a.Boolean,!0]})},t}(r.TextInput);(n.AutocompleteInput=u).initClass()},405:function(t,e,n){var i=t(391),r=t(15),o=t(3),s=t(401),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.change_input=function(){this.model.trigger_event(new o.ButtonClick({})),this.model.clicks=this.model.clicks+1,t.prototype.change_input.call(this)},e}(s.AbstractButtonView);n.ButtonView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Button\",this.prototype.default_view=a,this.define({clicks:[r.Number,0]}),o.register_with_event(o.ButtonClick,this)},t}(s.AbstractButton);(n.Button=l).initClass()},406:function(t,e,n){var i=t(391),l=t(5),r=t(15),u=t(21),o=t(440),s=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var i=this;n.prototype.render.call(this),l.empty(this.el);var r=l.div({class:\"bk-bs-btn-group\"});this.el.appendChild(r);for(var o=this.model.active,s=this.model.labels,t=function(t){var e=l.input({type:\"checkbox\",value:\"\"+t,checked:t in o});e.addEventListener(\"change\",function(){return i.model.change_input(t)});var n=l.label({class:[\"bk-bs-btn\",\"bk-bs-btn-\"+a.model.button_type]},e,s[t]);u.includes(o,t)&&n.classList.add(\"bk-bs-active\"),r.appendChild(n)},a=this,e=0;e<s.length;e++)t(e)},t}(o.WidgetView);n.CheckboxButtonGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.prototype.change_input=function(e){var t=u.copy(this.active);u.includes(t,e)?u.removeBy(t,function(t){return e==t}):t.push(e),t.sort(),this.active=t,null!=this.callback&&this.callback.execute(this)},t.initClass=function(){this.prototype.type=\"CheckboxButtonGroup\",this.prototype.default_view=s,this.define({active:[r.Array,[]],labels:[r.Array,[]],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(o.Widget);(n.CheckboxButtonGroup=a).initClass()},407:function(t,e,n){var i=t(391),u=t(5),r=t(15),c=t(21),o=t(440),s=function(l){function t(){return null!==l&&l.apply(this,arguments)||this}return i.__extends(t,l),t.prototype.initialize=function(t){l.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;l.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;l.prototype.render.call(this),u.empty(this.el);for(var e=this.model.active,n=this.model.labels,i=0;i<n.length;i++){var r=n[i],o=u.input({type:\"checkbox\",value:\"\"+i});o.addEventListener(\"change\",function(){return t.change_input()}),this.model.disabled&&(o.disabled=!0),c.includes(e,i)&&(o.checked=!0);var s=u.label({},o,r);if(this.model.inline)s.classList.add(\"bk-bs-checkbox-inline\"),this.el.appendChild(s);else{var a=u.div({class:\"bk-bs-checkbox\"},s);this.el.appendChild(a)}}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e,null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.CheckboxGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"CheckboxGroup\",this.prototype.default_view=s,this.define({active:[r.Array,[]],labels:[r.Array,[]],inline:[r.Bool,!1],callback:[r.Instance]})},t}(o.Widget);(n.CheckboxGroup=a).initClass()},408:function(t,e,n){var i=t(391),r=t(414),o=t(5),s=t(15),a=t(432);a.prototype.adjustPosition=function(){if(!this._o.container){this.el.style.position=\"absolute\";var t=this._o.trigger,e=this.el.offsetWidth,n=this.el.offsetHeight,i=window.innerWidth||document.documentElement.clientWidth,r=window.innerHeight||document.documentElement.clientHeight,o=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop,s=t.getBoundingClientRect(),a=s.left+window.pageXOffset,l=s.bottom+window.pageYOffset;a-=this.el.parentElement.offsetLeft,l-=this.el.parentElement.offsetTop,(this._o.reposition&&i<a+e||-1<this._o.position.indexOf(\"right\")&&0<a-e+t.offsetWidth)&&(a=a-e+t.offsetWidth),(this._o.reposition&&r+o<l+n||-1<this._o.position.indexOf(\"top\")&&0<l-n-t.offsetHeight)&&(l=l-n-t.offsetHeight),this.el.style.left=a+\"px\",this.el.style.top=l+\"px\"}};var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-widget-form-group\")},e.prototype.render=function(){var e=this;t.prototype.render.call(this),null!=this._picker&&this._picker.destroy(),o.empty(this.el),this.labelEl=o.label({},this.model.title),this.el.appendChild(this.labelEl),this.inputEl=o.input({type:\"text\",class:\"bk-widget-form-input\",disabled:this.model.disabled}),this.el.appendChild(this.inputEl),this._picker=new a({field:this.inputEl,defaultDate:new Date(this.model.value),setDefaultDate:!0,minDate:null!=this.model.min_date?new Date(this.model.min_date):void 0,maxDate:null!=this.model.max_date?new Date(this.model.max_date):void 0,onSelect:function(t){return e._on_select(t)}}),this._root_element.appendChild(this._picker.el)},e.prototype._on_select=function(t){this.model.value=t.toDateString(),this.change_input()},e}(r.InputWidgetView);n.DatePickerView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatePicker\",this.prototype.default_view=l,this.define({value:[s.Any,(new Date).toDateString()],min_date:[s.Any],max_date:[s.Any]})},t}(r.InputWidget);(n.DatePicker=u).initClass()},409:function(t,e,n){var i=t(391),r=t(390),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}},e.prototype._calc_from=function(t){return t},e}(o.AbstractSliderView);n.DateRangeSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"drag\",e.connected=[!1,!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"DateRangeSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},t.prototype._formatter=function(t,e){return r(t,e)},t}(o.AbstractSlider);(n.DateRangeSlider=a).initClass()},410:function(t,e,n){var i=t(391),r=t(390),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}},e.prototype._calc_from=function(t){var e=t[0];return e},e}(o.AbstractSliderView);n.DateSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"tap\",e.connected=[!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"DateSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},t.prototype._formatter=function(t,e){return r(t,e)},t}(o.AbstractSlider);(n.DateSlider=a).initClass()},411:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.div();this.model.render_as_text?t.textContent=this.model.text:t.innerHTML=this.model.text,this.markupEl.appendChild(t)},t}(r.MarkupView);n.DivView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Div\",this.prototype.default_view=a,this.define({render_as_text:[s.Bool,!1]})},t}(r.Markup);(n.Div=l).initClass()},412:function(t,e,n){var i=t(391),h=t(5),r=t(400),o=t(15),s=t(401),a=function(d){function t(){return null!==d&&d.apply(this,arguments)||this}return i.__extends(t,d),t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),r.clear_menus.connect(function(){return t._clear_menu()})},t.prototype.render=function(){var e=this;if(d.prototype.render.call(this),this.model.is_split_button){this.el.classList.add(\"bk-bs-btn-group\");var t=this._render_button(h.span({class:\"bk-bs-caret\"}));t.classList.add(\"bk-bs-dropdown-toggle\"),t.addEventListener(\"click\",function(t){return e._caret_click(t)}),this.el.appendChild(t)}else this.el.classList.add(\"bk-bs-dropdown\"),this.buttonEl.classList.add(\"bk-bs-dropdown-toggle\"),this.buttonEl.appendChild(h.span({class:\"bk-bs-caret\"}));this.model.active&&this.el.classList.add(\"bk-bs-open\");for(var n=[],i=0,r=this.model.menu;i<r.length;i++){var o=r[i],s=void 0;if(null!=o){var a=o[0],l=o[1],u=h.a({},a);u.dataset.value=l,u.addEventListener(\"click\",function(t){return e._item_click(t)}),s=h.li({},u)}else s=h.li({class:\"bk-bs-divider\"});n.push(s)}var c=h.ul({class:\"bk-bs-dropdown-menu\"},n);this.el.appendChild(c)},t.prototype._clear_menu=function(){this.model.active=!1},t.prototype._toggle_menu=function(){var t=this.model.active;r.clear_menus.emit(),t||(this.model.active=!0)},t.prototype._button_click=function(t){t.preventDefault(),t.stopPropagation(),this.model.is_split_button?(this._clear_menu(),this.set_value(this.model.default_value)):this._toggle_menu()},t.prototype._caret_click=function(t){t.preventDefault(),t.stopPropagation(),this._toggle_menu()},t.prototype._item_click=function(t){t.preventDefault(),this._clear_menu(),this.set_value(t.currentTarget.dataset.value)},t.prototype.set_value=function(t){this.buttonEl.value=this.model.value=t,this.change_input()},t}(s.AbstractButtonView);n.DropdownView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Dropdown\",this.prototype.default_view=a,this.define({value:[o.String],default_value:[o.String],menu:[o.Array,[]]}),this.override({label:\"Dropdown\"}),this.internal({active:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"is_split_button\",{get:function(){return null!=this.default_value},enumerable:!0,configurable:!0}),t}(s.AbstractButton);(n.Dropdown=l).initClass()},413:function(t,e,n){var i=t(401);n.AbstractButton=i.AbstractButton;var r=t(402);n.AbstractIcon=r.AbstractIcon;var o=t(404);n.AutocompleteInput=o.AutocompleteInput;var s=t(405);n.Button=s.Button;var a=t(406);n.CheckboxButtonGroup=a.CheckboxButtonGroup;var l=t(407);n.CheckboxGroup=l.CheckboxGroup;var u=t(408);n.DatePicker=u.DatePicker;var c=t(409);n.DateRangeSlider=c.DateRangeSlider;var d=t(410);n.DateSlider=d.DateSlider;var h=t(411);n.Div=h.Div;var p=t(412);n.Dropdown=p.Dropdown;var f=t(414);n.InputWidget=f.InputWidget;var m=t(416);n.Markup=m.Markup;var v=t(417);n.MultiSelect=v.MultiSelect;var g=t(418);n.Panel=g.Panel;var y=t(419);n.Paragraph=y.Paragraph;var b=t(420);n.PasswordInput=b.PasswordInput;var _=t(421);n.PreText=_.PreText;var w=t(422);n.RadioButtonGroup=w.RadioButtonGroup;var x=t(423);n.RadioGroup=x.RadioGroup;var k=t(424);n.RangeSlider=k.RangeSlider;var S=t(425);n.Select=S.Select;var C=t(426);n.Slider=C.Slider;var E=t(427);n.Tabs=E.Tabs;var D=t(428);n.TextInput=D.TextInput;var M=t(429);n.Toggle=M.Toggle;var A=t(440);n.Widget=A.Widget},414:function(t,e,n){var i=t(391),r=t(440),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.change_input=function(){null!=this.model.callback&&this.model.callback.execute(this.model)},e}(r.WidgetView);n.InputWidgetView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"InputWidget\",this.prototype.default_view=s,this.define({title:[o.String,\"\"],callback:[o.Instance]})},t}(r.Widget);(n.InputWidget=a).initClass()},415:function(t,e,n){var i=t(413);n.Widgets=i;var r=t(0);r.register_models(i)},416:function(t,e,n){var i=t(391),r=t(15),o=t(5),s=t(440),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){e.prototype.render.call(this),o.empty(this.el);var t=i.__assign({width:this.model.width+\"px\",height:this.model.height+\"px\"},this.model.style);this.markupEl=o.div({style:t}),this.el.appendChild(this.markupEl)},t}(s.WidgetView);n.MarkupView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Markup\",this.define({text:[r.String,\"\"],style:[r.Any,{}]})},t}(s.Widget);(n.Markup=l).initClass()},417:function(t,e,n){var i=t(391),r=t(5),s=t(44),a=t(29),o=t(15),l=t(414),u=function(o){function t(){return null!==o&&o.apply(this,arguments)||this}return i.__extends(t,o),t.prototype.initialize=function(t){o.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;o.prototype.connect_signals.call(this),this.connect(this.model.properties.value.change,function(){return t.render_selection()}),this.connect(this.model.properties.options.change,function(){return t.render()}),this.connect(this.model.properties.name.change,function(){return t.render()}),this.connect(this.model.properties.title.change,function(){return t.render()}),this.connect(this.model.properties.size.change,function(){return t.render()}),this.connect(this.model.properties.disabled.change,function(){return t.render()})},t.prototype.render=function(){var t=this;o.prototype.render.call(this),r.empty(this.el);var e=r.label({for:this.model.id},this.model.title);this.el.appendChild(e);var n=this.model.options.map(function(t){var e,n;return s.isString(t)?e=n=t:(e=t[0],n=t[1]),r.option({value:e},n)});this.selectEl=r.select({multiple:!0,class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,disabled:this.model.disabled},n),this.selectEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.selectEl),this.render_selection()},t.prototype.render_selection=function(){for(var t=new a.Set(this.model.value),e=0,n=Array.from(this.el.querySelectorAll(\"option\"));e<n.length;e++){var i=n[e];i.selected=t.has(i.value)}this.selectEl.size=this.model.size},t.prototype.change_input=function(){for(var t=null!=this.el.querySelector(\"select:focus\"),e=[],n=0,i=Array.from(this.el.querySelectorAll(\"option\"));n<i.length;n++){var r=i[n];r.selected&&e.push(r.value)}this.model.value=e,o.prototype.change_input.call(this),t&&this.selectEl.focus()},t}(l.InputWidgetView);n.MultiSelectView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiSelect\",this.prototype.default_view=u,this.define({value:[o.Array,[]],options:[o.Array,[]],size:[o.Number,4]})},t}(l.InputWidget);(n.MultiSelect=c).initClass()},418:function(t,e,n){var i=t(391),r=t(440),o=t(15),s=t(5),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),s.empty(this.el)},e}(r.WidgetView);n.PanelView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Panel\",this.prototype.default_view=a,this.define({title:[o.String,\"\"],child:[o.Instance],closable:[o.Bool,!1]})},t}(r.Widget);(n.Panel=l).initClass()},419:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.p({style:{margin:0}},this.model.text);this.markupEl.appendChild(t)},t}(r.MarkupView);n.ParagraphView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Paragraph\",this.prototype.default_view=s},t}(r.Markup);(n.Paragraph=a).initClass()},420:function(t,e,n){var i=t(391),r=t(428),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.inputEl.type=\"password\"},e}(r.TextInputView);n.PasswordInputView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"PasswordInput\",this.prototype.default_view=o},t}(r.TextInput);(n.PasswordInput=s).initClass()},421:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.pre({style:{overflow:\"auto\"}},this.model.text);this.markupEl.appendChild(t)},t}(r.MarkupView);n.PreTextView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"PreText\",this.prototype.default_view=s},t}(r.Markup);(n.PreText=a).initClass()},422:function(t,e,n){var i=t(391),c=t(5),d=t(38),r=t(15),o=t(440),s=function(u){function t(){return null!==u&&u.apply(this,arguments)||this}return i.__extends(t,u),t.prototype.initialize=function(t){u.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;u.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;u.prototype.render.call(this),c.empty(this.el);var e=c.div({class:\"bk-bs-btn-group\"});this.el.appendChild(e);for(var n=d.uniqueId(),i=this.model.active,r=this.model.labels,o=0;o<r.length;o++){var s=r[o],a=c.input({type:\"radio\",name:n,value:\"\"+o,checked:o==i});a.addEventListener(\"change\",function(){return t.change_input()});var l=c.label({class:[\"bk-bs-btn\",\"bk-bs-btn-\"+this.model.button_type]},a,s);o==i&&l.classList.add(\"bk-bs-active\"),e.appendChild(l)}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e[0],null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.RadioButtonGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"RadioButtonGroup\",this.prototype.default_view=s,this.define({active:[r.Any,null],labels:[r.Array,[]],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(o.Widget);(n.RadioButtonGroup=a).initClass()},423:function(t,e,n){var i=t(391),c=t(5),d=t(38),r=t(15),o=t(440),s=function(u){function t(){return null!==u&&u.apply(this,arguments)||this}return i.__extends(t,u),t.prototype.initialize=function(t){u.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;u.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;u.prototype.render.call(this),c.empty(this.el);for(var e=d.uniqueId(),n=this.model.active,i=this.model.labels,r=0;r<i.length;r++){var o=i[r],s=c.input({type:\"radio\",name:e,value:\"\"+r});s.addEventListener(\"change\",function(){return t.change_input()}),this.model.disabled&&(s.disabled=!0),r==n&&(s.checked=!0);var a=c.label({},s,o);if(this.model.inline)a.classList.add(\"bk-bs-radio-inline\"),this.el.appendChild(a);else{var l=c.div({class:\"bk-bs-radio\"},a);this.el.appendChild(l)}}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e[0],null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.RadioGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"RadioGroup\",this.prototype.default_view=s,this.define({active:[r.Any,null],labels:[r.Array,[]],inline:[r.Bool,!1],callback:[r.Instance]})},t}(o.Widget);(n.RadioGroup=a).initClass()},424:function(t,e,n){var i=t(391),r=t(361),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}},e.prototype._calc_from=function(t){return t},e}(o.AbstractSliderView);n.RangeSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"drag\",e.connected=[!1,!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"RangeSlider\",this.prototype.default_view=s,this.override({format:\"0[.]00\"})},t.prototype._formatter=function(t,e){return r.format(t,e)},t}(o.AbstractSlider);(n.RangeSlider=a).initClass()},425:function(t,e,n){var i=t(391),a=t(5),l=t(44),r=t(14),o=t(15),s=t(414),u=function(s){function t(){return null!==s&&s.apply(this,arguments)||this}return i.__extends(t,s),t.prototype.initialize=function(t){s.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;s.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.build_options=function(t){var r=this;return t.map(function(t){var e,n;l.isString(t)?e=n=t:(e=t[0],n=t[1]);var i=r.model.value==e;return a.option({selected:i,value:e},n)})},t.prototype.render=function(){var t=this;s.prototype.render.call(this),a.empty(this.el);var e,n=a.label({for:this.model.id},this.model.title);if(this.el.appendChild(n),l.isArray(this.model.options))e=this.build_options(this.model.options);else{e=[];var i=this.model.options;for(var r in i){var o=i[r];e.push(a.optgroup({label:r},this.build_options(o)))}}this.selectEl=a.select({class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,disabled:this.model.disabled},e),this.selectEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.selectEl)},t.prototype.change_input=function(){var t=this.selectEl.value;r.logger.debug(\"selectbox: value = \"+t),this.model.value=t,s.prototype.change_input.call(this)},t}(s.InputWidgetView);n.SelectView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Select\",this.prototype.default_view=u,this.define({value:[o.String,\"\"],options:[o.Any,[]]})},t}(s.InputWidget);(n.Select=c).initClass()},426:function(t,e,n){var i=t(391),r=t(361),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}},e.prototype._calc_from=function(t){var e=t[0];return Number.isInteger(this.model.start)&&Number.isInteger(this.model.end)&&Number.isInteger(this.model.step)?Math.round(e):e},e}(o.AbstractSliderView);n.SliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"tap\",e.connected=[!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"Slider\",this.prototype.default_view=s,this.override({format:\"0[.]00\"})},t.prototype._formatter=function(t,e){return r.format(t,e)},t}(o.AbstractSlider);(n.Slider=a).initClass()},427:function(t,e,n){var i=t(391),h=t(5),p=t(21),r=t(15),o=t(440),s=function(d){function t(){return null!==d&&d.apply(this,arguments)||this}return i.__extends(t,d),t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),this.connect(this.model.properties.tabs.change,function(){return t.rebuild_child_views()}),this.connect(this.model.properties.active.change,function(){return t.render()})},t.prototype.render=function(){var r=this;d.prototype.render.call(this),h.empty(this.el);var t=this.model.tabs.length;if(0!=t){this.model.active>=t&&(this.model.active=t-1);var o=this.model.tabs.map(function(t,e){return h.li({},h.span({data:{index:e}},t.title))});o[this.model.active].classList.add(\"bk-bs-active\");var e=h.ul({class:[\"bk-bs-nav\",\"bk-bs-nav-tabs\"]},o);this.el.appendChild(e);var s=this.model.tabs.map(function(t){return h.div({class:\"bk-bs-tab-pane\"})});s[this.model.active].classList.add(\"bk-bs-active\");var n=h.div({class:\"bk-bs-tab-content\"},s);this.el.appendChild(n),e.addEventListener(\"click\",function(t){if(t.preventDefault(),t.target!=t.currentTarget){var e=t.target,n=r.model.active,i=parseInt(e.dataset.index);n!=i&&(o[n].classList.remove(\"bk-bs-active\"),s[n].classList.remove(\"bk-bs-active\"),o[i].classList.add(\"bk-bs-active\"),s[i].classList.add(\"bk-bs-active\"),r.model.active=i,null!=r.model.callback&&r.model.callback.execute(r.model))}});for(var i=0,a=p.zip(this.model.children,s);i<a.length;i++){var l=a[i],u=l[0],c=l[1];c.appendChild(this.child_views[u.id].el)}}},t}(o.WidgetView);n.TabsView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tabs\",this.prototype.default_view=s,this.define({tabs:[r.Array,[]],active:[r.Number,0],callback:[r.Instance]})},t.prototype.get_layoutable_children=function(){return this.children},Object.defineProperty(t.prototype,\"children\",{get:function(){return this.tabs.map(function(t){return t.child})},enumerable:!0,configurable:!0}),t}(o.Widget);(n.Tabs=a).initClass()},428:function(t,e,n){var i=t(391),r=t(14),o=t(15),s=t(5),a=t(414),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.css_classes=function(){return n.prototype.css_classes.call(this).concat(\"bk-widget-form-group\")},t.prototype.render=function(){var t=this;n.prototype.render.call(this),s.empty(this.el);var e=s.label({for:this.model.id},this.model.title);this.el.appendChild(e),this.inputEl=s.input({type:\"text\",class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,value:this.model.value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.inputEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.inputEl),this.model.height&&(this.inputEl.style.height=this.model.height-35+\"px\")},t.prototype.change_input=function(){var t=this.inputEl.value;r.logger.debug(\"widget/text_input: value = \"+t),this.model.value=t,n.prototype.change_input.call(this)},t}(a.InputWidgetView);n.TextInputView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextInput\",this.prototype.default_view=l,this.define({value:[o.String,\"\"],placeholder:[o.String,\"\"]})},t}(a.InputWidget);(n.TextInput=u).initClass()},429:function(t,e,n){var i=t(391),r=t(401),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.active&&this.buttonEl.classList.add(\"bk-bs-active\")},e.prototype.change_input=function(){this.model.active=!this.model.active,t.prototype.change_input.call(this)},e}(r.AbstractButtonView);n.ToggleView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Toggle\",this.prototype.default_view=s,this.define({active:[o.Bool,!1]}),this.override({label:\"Toggle\"})},t}(r.AbstractButton);(n.Toggle=a).initClass()},440:function(t,e,n){var i=t(391),r=t(157),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-widget\")},e.prototype.render=function(){this._render_classes(),null!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),null!=this.model.width&&(this.el.style.width=this.model.width+\"px\")},e.prototype.get_width=function(){throw new Error(\"unused\")},e.prototype.get_height=function(){throw new Error(\"unused\")},e}(r.LayoutDOMView);n.WidgetView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Widget\"},t}(r.LayoutDOM);(n.Widget=s).initClass()},431:function(t,e,n){\n      /*! nouislider - 10.1.0 - 2017-07-28 17:11:18 */var i;i=function(){\"use strict\";var $=\"10.1.0\";function Q(t){t.preventDefault()}function r(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function Z(t,e,n){0<n&&(et(t,e),setTimeout(function(){nt(t,e)},n))}function tt(t){return Array.isArray(t)?t:[t]}function e(t){var e=(t=String(t)).split(\".\");return 1<e.length?e[1].length:0}function et(t,e){t.classList?t.classList.add(e):t.className+=\" \"+e}function nt(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function it(t){var e=void 0!==window.pageXOffset,n=\"CSS1Compat\"===(t.compatMode||\"\"),i=e?window.pageXOffset:n?t.documentElement.scrollLeft:t.body.scrollLeft,r=e?window.pageYOffset:n?t.documentElement.scrollTop:t.body.scrollTop;return{x:i,y:r}}function c(t,e){return 100/(e-t)}function d(t,e){return 100*e/(t[1]-t[0])}function h(t,e){for(var n=1;t>=e[n];)n+=1;return n}function n(t,e,n){if(n>=t.slice(-1)[0])return 100;var i,r,o,s,a,l,u=h(n,t);return i=t[u-1],r=t[u],o=e[u-1],s=e[u],o+(l=n,d(a=[i,r],a[0]<0?l+Math.abs(a[0]):l-a[0])/c(o,s))}function i(t,e,n,i){if(100===i)return i;var r,o,s,a,l=h(i,t);return n?(r=t[l-1],((o=t[l])-r)/2<i-r?o:r):e[l-1]?t[l-1]+(s=i-t[l-1],a=e[l-1],Math.round(s/a)*a):i}function o(t,e,n){var i;if(\"number\"==typeof e&&(e=[e]),\"[object Array]\"!==Object.prototype.toString.call(e))throw new Error(\"noUiSlider (\"+$+\"): 'range' contains invalid value.\");if(!r(i=\"min\"===t?0:\"max\"===t?100:parseFloat(t))||!r(e[0]))throw new Error(\"noUiSlider (\"+$+\"): 'range' value isn't numeric.\");n.xPct.push(i),n.xVal.push(e[0]),i?n.xSteps.push(!isNaN(e[1])&&e[1]):isNaN(e[1])||(n.xSteps[0]=e[1]),n.xHighestCompleteStep.push(0)}function s(t,e,n){if(!e)return!0;n.xSteps[t]=d([n.xVal[t],n.xVal[t+1]],e)/c(n.xPct[t],n.xPct[t+1]);var i=(n.xVal[t+1]-n.xVal[t])/n.xNumSteps[t],r=Math.ceil(Number(i.toFixed(3))-1),o=n.xVal[t]+n.xNumSteps[t]*r;n.xHighestCompleteStep[t]=o}function a(t,e,n){this.xPct=[],this.xVal=[],this.xSteps=[n||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i,r=[];for(i in t)t.hasOwnProperty(i)&&r.push([t[i],i]);for(r.length&&\"object\"==typeof r[0][0]?r.sort(function(t,e){return t[0][0]-e[0][0]}):r.sort(function(t,e){return t[0]-e[0]}),i=0;i<r.length;i++)o(r[i][1],r[i][0],this);for(this.xNumSteps=this.xSteps.slice(0),i=0;i<this.xNumSteps.length;i++)s(i,this.xNumSteps[i],this)}a.prototype.getMargin=function(t){var e=this.xNumSteps[0];if(e&&t/e%1!=0)throw new Error(\"noUiSlider (\"+$+\"): 'limit', 'margin' and 'padding' must be divisible by step.\");return 2===this.xPct.length&&d(this.xVal,t)},a.prototype.toStepping=function(t){return t=n(this.xVal,this.xPct,t)},a.prototype.fromStepping=function(t){return function(t,e,n){if(100<=n)return t.slice(-1)[0];var i,r,o,s,a,l=h(n,e);return i=t[l-1],r=t[l],o=e[l-1],s=e[l],a=[i,r],(n-o)*c(o,s)*(a[1]-a[0])/100+a[0]}(this.xVal,this.xPct,t)},a.prototype.getStep=function(t){return t=i(this.xPct,this.xSteps,this.snap,t)},a.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-0],step:this.xNumSteps[e-0],highestStep:this.xHighestCompleteStep[e-0]}}},a.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(e);return Math.max.apply(null,t)},a.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var l={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number};function u(t){if(\"object\"==typeof(e=t)&&\"function\"==typeof e.to&&\"function\"==typeof e.from)return!0;var e;throw new Error(\"noUiSlider (\"+$+\"): 'format' requires 'to' and 'from' methods.\")}function p(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'step' is not numeric.\");t.singleStep=e}function f(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider (\"+$+\"): 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider (\"+$+\"): Missing 'min' or 'max' in 'range'.\");if(e.min===e.max)throw new Error(\"noUiSlider (\"+$+\"): 'range' 'min' and 'max' cannot be equal.\");t.spectrum=new a(e,t.snap,t.singleStep)}function m(t,e){if(e=tt(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider (\"+$+\"): 'start' option is incorrect.\");t.handles=e.length,t.start=e}function v(t,e){if(\"boolean\"!=typeof(t.snap=e))throw new Error(\"noUiSlider (\"+$+\"): 'snap' option must be a boolean.\")}function g(t,e){if(\"boolean\"!=typeof(t.animate=e))throw new Error(\"noUiSlider (\"+$+\"): 'animate' option must be a boolean.\")}function y(t,e){if(\"number\"!=typeof(t.animationDuration=e))throw new Error(\"noUiSlider (\"+$+\"): 'animationDuration' option must be a number.\")}function b(t,e){var n,i=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(n=1;n<t.handles;n++)i.push(e);i.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider (\"+$+\"): 'connect' option doesn't match handle count.\");i=e}t.connect=i}function _(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider (\"+$+\"): 'orientation' option is invalid.\")}}function w(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'margin' option must be numeric.\");if(0!==e&&(t.margin=t.spectrum.getMargin(e),!t.margin))throw new Error(\"noUiSlider (\"+$+\"): 'margin' option is only supported on linear sliders.\")}function x(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'limit' option must be numeric.\");if(t.limit=t.spectrum.getMargin(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider (\"+$+\"): 'limit' option is only supported on linear sliders with 2 or more handles.\")}function k(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be numeric.\");if(0!==e){if(t.padding=t.spectrum.getMargin(e),!t.padding)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option is only supported on linear sliders.\");if(t.padding<0)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be a positive number.\");if(50<=t.padding)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be less than half the range.\")}}function S(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider (\"+$+\"): 'direction' option was not recognized.\")}}function C(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider (\"+$+\"): 'behaviour' must be a string containing options.\");var n=0<=e.indexOf(\"tap\"),i=0<=e.indexOf(\"drag\"),r=0<=e.indexOf(\"fixed\"),o=0<=e.indexOf(\"snap\"),s=0<=e.indexOf(\"hover\");if(r){if(2!==t.handles)throw new Error(\"noUiSlider (\"+$+\"): 'fixed' behaviour must be used with 2 handles\");w(t,t.start[1]-t.start[0])}t.events={tap:n||o,drag:i,fixed:r,snap:o,hover:s}}function E(t,e){if(\"boolean\"!=typeof(t.multitouch=e))throw new Error(\"noUiSlider (\"+$+\"): 'multitouch' option must be a boolean.\")}function D(t,e){if(!1!==e)if(!0===e){t.tooltips=[];for(var n=0;n<t.handles;n++)t.tooltips.push(!0)}else{if(t.tooltips=tt(e),t.tooltips.length!==t.handles)throw new Error(\"noUiSlider (\"+$+\"): 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 (\"+$+\"): 'tooltips' must be passed a formatter or 'false'.\")})}}function M(t,e){u(t.ariaFormat=e)}function A(t,e){u(t.format=e)}function N(t,e){if(void 0!==e&&\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider (\"+$+\"): 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function V(t,e){if(void 0!==e&&\"object\"!=typeof e)throw new Error(\"noUiSlider (\"+$+\"): 'cssClasses' must be an object.\");if(\"string\"==typeof t.cssPrefix)for(var n in t.cssClasses={},e)e.hasOwnProperty(n)&&(t.cssClasses[n]=t.cssPrefix+e[n]);else t.cssClasses=e}function I(t,e){if(!0!==e&&!1!==e)throw new Error(\"noUiSlider (\"+$+\"): 'useRequestAnimationFrame' option should be true (default) or false.\");t.useRequestAnimationFrame=e}function rt(e){var n={margin:0,limit:0,padding:0,animate:!0,animationDuration:300,ariaFormat:l,format:l},i={step:{r:!1,t:p},start:{r:!0,t:m},connect:{r:!0,t:b},direction:{r:!0,t:S},snap:{r:!1,t:v},animate:{r:!1,t:g},animationDuration:{r:!1,t:y},range:{r:!0,t:f},orientation:{r:!1,t:_},margin:{r:!1,t:w},limit:{r:!1,t:x},padding:{r:!1,t:k},behaviour:{r:!0,t:C},multitouch:{r:!0,t:E},ariaFormat:{r:!1,t:M},format:{r:!1,t:A},tooltips:{r:!1,t:D},cssPrefix:{r:!1,t:N},cssClasses:{r:!1,t:V},useRequestAnimationFrame:{r:!1,t:I}},r={connect:!1,direction:\"ltr\",behaviour:\"tap\",multitouch:!1,orientation:\"horizontal\",cssPrefix:\"noUi-\",cssClasses:{target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",ltr:\"ltr\",rtl:\"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\"},useRequestAnimationFrame:!0};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(i).forEach(function(t){if(void 0===e[t]&&void 0===r[t]){if(i[t].r)throw new Error(\"noUiSlider (\"+$+\"): '\"+t+\"' is required.\");return!0}i[t].t(n,void 0===e[t]?r[t]:e[t])}),n.pips=e.pips;var t=[[\"left\",\"top\"],[\"right\",\"bottom\"]];return n.style=t[n.dir][n.ort],n.styleOposite=t[n.dir?0:1][n.ort],n}function P(t,d,o){var u,l,s,a,h,r,c,e,p=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\"},n=window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\"),f=n&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}(),_=t,m=[],v=[],g=0,w=d.spectrum,y=[],b={},x=t.ownerDocument,k=x.documentElement,S=x.body;function C(t,e){var n=x.createElement(\"div\");return e&&et(n,e),t.appendChild(n),n}function i(t,e){var n=C(t,d.cssClasses.origin),i=C(n,d.cssClasses.handle);return i.setAttribute(\"data-handle\",e),i.setAttribute(\"tabindex\",\"0\"),i.setAttribute(\"role\",\"slider\"),i.setAttribute(\"aria-orientation\",d.ort?\"vertical\":\"horizontal\"),0===e?et(i,d.cssClasses.handleLower):e===d.handles-1&&et(i,d.cssClasses.handleUpper),n}function E(t,e){return!!e&&C(t,d.cssClasses.connect)}function D(t,e){return!!d.tooltips[e]&&C(t.firstChild,d.cssClasses.tooltip)}function M(e,i,r){var o=x.createElement(\"div\"),s=[d.cssClasses.valueNormal,d.cssClasses.valueLarge,d.cssClasses.valueSub],a=[d.cssClasses.markerNormal,d.cssClasses.markerLarge,d.cssClasses.markerSub],l=[d.cssClasses.valueHorizontal,d.cssClasses.valueVertical],u=[d.cssClasses.markerHorizontal,d.cssClasses.markerVertical];function c(t,e){var n=e===d.cssClasses.value,i=n?l:u,r=n?s:a;return e+\" \"+i[d.ort]+\" \"+r[t]}return et(o,d.cssClasses.pips),et(o,0===d.ort?d.cssClasses.pipsHorizontal:d.cssClasses.pipsVertical),Object.keys(e).forEach(function(t){!function(t,e){e[1]=e[1]&&i?i(e[0],e[1]):e[1];var n=C(o,!1);n.className=c(e[1],d.cssClasses.marker),n.style[d.style]=t+\"%\",e[1]&&((n=C(o,!1)).className=c(e[1],d.cssClasses.value),n.style[d.style]=t+\"%\",n.innerText=r.to(e[0]))}(t,e[t])}),o}function A(){var t;h&&((t=h).parentElement.removeChild(t),h=null)}function N(t){A();var p,f,m,e,v,n,i,g,y,b,r=t.mode,o=t.density||1,s=t.filter||!1,a=t.values||!1,l=t.stepped||!1,u=function(t,e,n){if(\"range\"===t||\"steps\"===t)return w.xVal;if(\"count\"===t){if(!e)throw new Error(\"noUiSlider (\"+$+\"): 'values' required for mode 'count'.\");var i,r=100/(e-1),o=0;for(e=[];(i=o++*r)<=100;)e.push(i);t=\"positions\"}return\"positions\"===t?e.map(function(t){return w.fromStepping(n?w.getStep(t):t)}):\"values\"===t?n?e.map(function(t){return w.fromStepping(w.getStep(w.toStepping(t)))}):e:void 0}(r,a,l),c=(p=o,f=r,m=u,v={},n=w.xVal[0],i=w.xVal[w.xVal.length-1],y=g=!1,b=0,(e=m.slice().sort(function(t,e){return t-e}),m=e.filter(function(t){return!this[t]&&(this[t]=!0)},{}))[0]!==n&&(m.unshift(n),g=!0),m[m.length-1]!==i&&(m.push(i),y=!0),m.forEach(function(t,e){var n,i,r,o,s,a,l,u,c,d=t,h=m[e+1];if(\"steps\"===f&&(n=w.xNumSteps[e]),n||(n=h-d),!1!==d&&void 0!==h)for(n=Math.max(n,1e-7),i=d;i<=h;i=(i+n).toFixed(7)/1){for(l=(s=(o=w.toStepping(i))-b)/p,c=s/(u=Math.round(l)),r=1;r<=u;r+=1)v[(b+r*c).toFixed(5)]=[\"x\",0];a=-1<m.indexOf(i)?1:\"steps\"===f?2:0,!e&&g&&(a=0),i===h&&y||(v[o.toFixed(5)]=[i,a]),b=o}}),v),d=t.format||{to:Math.round};return h=_.appendChild(M(c,s,d))}function V(){var t=u.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][d.ort];return 0===d.ort?t.width||u[e]:t.height||u[e]}function I(i,r,o,s){var e=function(t){return!_.hasAttribute(\"disabled\")&&(e=_,n=d.cssClasses.tap,(e.classList?!e.classList.contains(n):!new RegExp(\"\\\\b\"+n+\"\\\\b\").test(e.className))&&!!(t=function(t,e,n){var i,r,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),o&&d.multitouch){var l=function(t){return t.target===n||n.contains(t.target)};if(\"touchstart\"===t.type){var u=Array.prototype.filter.call(t.touches,l);if(1<u.length)return!1;i=u[0].pageX,r=u[0].pageY}else{var c=Array.prototype.find.call(t.changedTouches,l);if(!c)return!1;i=c.pageX,r=c.pageY}}else if(o){if(1<t.touches.length)return!1;i=t.changedTouches[0].pageX,r=t.changedTouches[0].pageY}return e=e||it(x),(s||a)&&(i=t.clientX+e.x,r=t.clientY+e.y),t.pageOffset=e,t.points=[i,r],t.cursor=s||a,t}(t,s.pageOffset,s.target||r))&&!(i===p.start&&void 0!==t.buttons&&1<t.buttons)&&(!s.hover||!t.buttons)&&(f||t.preventDefault(),t.calcPoint=t.points[d.ort],void o(t,s)));var e,n},n=[];return i.split(\" \").forEach(function(t){r.addEventListener(t,e,!!f&&{passive:!0}),n.push([t,e])}),n}function P(t){var e,n,i,r,o,s,a=t-(e=u,n=d.ort,i=e.getBoundingClientRect(),r=e.ownerDocument,o=r.documentElement,s=it(r),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(s.x=0),n?i.top+s.y-o.clientTop:i.left+s.x-o.clientLeft),l=100*a/V();return d.dir?100-l:l}function R(t,i,n,e){var r=n.slice(),o=[!t,t],s=[t,!t];e=e.slice(),t&&e.reverse(),1<e.length?e.forEach(function(t,e){var n=z(r,t,r[t]+i,o[e],s[e],!1);!1===n?i=0:(i=n-r[t],r[t]=n)}):o=s=[!0];var a=!1;e.forEach(function(t,e){a=H(t,n[t]+i,o[e],s[e])||a}),a&&e.forEach(function(t){L(\"update\",t),L(\"slide\",t)})}function L(n,i,r){Object.keys(b).forEach(function(t){var e=t.split(\".\")[0];n===e&&b[t].forEach(function(t){t.call(a,y.map(d.format.to),i,y.slice(),r||!1,m.slice())})})}function T(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&W(t,e)}function O(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return W(t,e);var n=(d.dir?-1:1)*(t.calcPoint-e.startCalcPoint),i=100*n/e.baseSize;R(0<n,i,e.locations,e.handleNumbers)}function W(t,e){e.handle&&(nt(e.handle,d.cssClasses.active),g-=1),e.listeners.forEach(function(t){k.removeEventListener(t[0],t[1])}),0===g&&(nt(_,d.cssClasses.drag),Y(),t.cursor&&(S.style.cursor=\"\",S.removeEventListener(\"selectstart\",Q))),e.handleNumbers.forEach(function(t){L(\"change\",t),L(\"set\",t),L(\"end\",t)})}function B(t,e){var n;if(1===e.handleNumbers.length){var i=l[e.handleNumbers[0]];if(i.hasAttribute(\"disabled\"))return!1;n=i.children[0],g+=1,et(n,d.cssClasses.active)}t.stopPropagation();var r=[],o=I(p.move,k,O,{target:t.target,handle:n,listeners:r,startCalcPoint:t.calcPoint,baseSize:V(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:m.slice()}),s=I(p.end,k,W,{target:t.target,handle:n,listeners:r,handleNumbers:e.handleNumbers}),a=I(\"mouseout\",k,T,{target:t.target,handle:n,listeners:r,handleNumbers:e.handleNumbers});r.push.apply(r,o.concat(s,a)),t.cursor&&(S.style.cursor=getComputedStyle(t.target).cursor,1<l.length&&et(_,d.cssClasses.drag),S.addEventListener(\"selectstart\",Q,!1)),e.handleNumbers.forEach(function(t){L(\"start\",t)})}function U(t){t.stopPropagation();var i,r,o,e=P(t.calcPoint),n=(i=e,o=!(r=100),l.forEach(function(t,e){if(!t.hasAttribute(\"disabled\")){var n=Math.abs(m[e]-i);n<r&&(o=e,r=n)}}),o);if(!1===n)return!1;d.events.snap||Z(_,d.cssClasses.tap,d.animationDuration),H(n,e,!0,!0),Y(),L(\"slide\",n,!0),L(\"update\",n,!0),L(\"change\",n,!0),L(\"set\",n,!0),d.events.snap&&B(t,{handleNumbers:[n]})}function j(t){var e=P(t.calcPoint),n=w.getStep(e),i=w.fromStepping(n);Object.keys(b).forEach(function(t){\"hover\"===t.split(\".\")[0]&&b[t].forEach(function(t){t.call(a,i)})})}function z(t,e,n,i,r,o){var s;return 1<l.length&&(i&&0<e&&(n=Math.max(n,t[e-1]+d.margin)),r&&e<l.length-1&&(n=Math.min(n,t[e+1]-d.margin))),1<l.length&&d.limit&&(i&&0<e&&(n=Math.min(n,t[e-1]+d.limit)),r&&e<l.length-1&&(n=Math.max(n,t[e+1]-d.limit))),d.padding&&(0===e&&(n=Math.max(n,d.padding)),e===l.length-1&&(n=Math.min(n,100-d.padding))),n=w.getStep(n),s=n,!((n=Math.max(Math.min(s,100),0))===t[e]&&!o)&&n}function F(t){return t+\"%\"}function Y(){v.forEach(function(t){var e=50<m[t]?-1:1,n=3+(l.length+e*t);l[t].childNodes[0].style.zIndex=n})}function H(t,e,n,i){return!1!==(e=z(m,t,e,n,i,!1))&&(function(t,e){m[t]=e,y[t]=w.fromStepping(e);var n=function(){l[t].style[d.style]=F(e),q(t),q(t+1)};window.requestAnimationFrame&&d.useRequestAnimationFrame?window.requestAnimationFrame(n):n()}(t,e),!0)}function q(t){if(s[t]){var e=0,n=100;0!==t&&(e=m[t-1]),t!==s.length-1&&(n=m[t]),s[t].style[d.style]=F(e),s[t].style[d.styleOposite]=F(100-n)}}function G(t,e){null!==t&&!1!==t&&(\"number\"==typeof t&&(t=String(t)),!1===(t=d.format.from(t))||isNaN(t)||H(e,w.toStepping(t),!1,!1))}function X(t,e){var n=tt(t),i=void 0===m[0];e=void 0===e||!!e,n.forEach(G),d.animate&&!i&&Z(_,d.cssClasses.tap,d.animationDuration),v.forEach(function(t){H(t,m[t],!0,!1)}),Y(),v.forEach(function(t){L(\"update\",t),null!==n[t]&&e&&L(\"set\",t)})}function K(){var t=y.map(d.format.to);return 1===t.length?t[0]:t}function J(t,e){b[t]=b[t]||[],b[t].push(e),\"update\"===t.split(\".\")[0]&&l.forEach(function(t,e){L(\"update\",e)})}if(_.noUiSlider)throw new Error(\"noUiSlider (\"+$+\"): Slider was already initialized.\");return et(e=_,d.cssClasses.target),0===d.dir?et(e,d.cssClasses.ltr):et(e,d.cssClasses.rtl),0===d.ort?et(e,d.cssClasses.horizontal):et(e,d.cssClasses.vertical),u=C(e,d.cssClasses.base),function(t,e){l=[],(s=[]).push(E(e,t[0]));for(var n=0;n<d.handles;n++)l.push(i(e,n)),v[n]=n,s.push(E(e,t[n+1]))}(d.connect,u),a={destroy:function(){for(var t in d.cssClasses)d.cssClasses.hasOwnProperty(t)&&nt(_,d.cssClasses[t]);for(;_.firstChild;)_.removeChild(_.firstChild);delete _.noUiSlider},steps:function(){return m.map(function(t,e){var n=w.getNearbySteps(t),i=y[e],r=n.thisStep.step,o=null;!1!==r&&i+r>n.stepAfter.startValue&&(r=n.stepAfter.startValue-i),o=i>n.thisStep.startValue?n.thisStep.step:!1!==n.stepBefore.step&&i-n.stepBefore.highestStep,100===t?r=null:0===t&&(o=null);var s=w.countStepDecimals();return null!==r&&!1!==r&&(r=Number(r.toFixed(s))),null!==o&&!1!==o&&(o=Number(o.toFixed(s))),[o,r]})},on:J,off:function(t){var i=t&&t.split(\".\")[0],r=i&&t.substring(i.length);Object.keys(b).forEach(function(t){var e=t.split(\".\")[0],n=t.substring(e.length);i&&i!==e||r&&r!==n||delete b[t]})},get:K,set:X,reset:function(t){X(d.start,t)},__moveHandles:function(t,e,n){R(t,e,m,n)},options:o,updateOptions:function(e,t){var n=K(),i=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\"];i.forEach(function(t){void 0!==e[t]&&(o[t]=e[t])});var r=rt(o);i.forEach(function(t){void 0!==e[t]&&(d[t]=r[t])}),w=r.spectrum,d.margin=r.margin,d.limit=r.limit,d.padding=r.padding,d.pips&&N(d.pips),m=[],X(e.start||n,t)},target:_,removePips:A,pips:N},(c=d.events).fixed||l.forEach(function(t,e){I(p.start,t.children[0],B,{handleNumbers:[e]})}),c.tap&&I(p.start,u,U,{}),c.hover&&I(p.move,u,j,{hover:!0}),c.drag&&s.forEach(function(t,e){if(!1!==t&&0!==e&&e!==s.length-1){var n=l[e-1],i=l[e],r=[t];et(t,d.cssClasses.draggable),c.fixed&&(r.push(n.children[0]),r.push(i.children[0])),r.forEach(function(t){I(p.start,t,B,{handles:[n,i],handleNumbers:[e-1,e]})})}}),X(d.start),d.pips&&N(d.pips),d.tooltips&&(r=l.map(D),J(\"update\",function(t,e,n){if(r[e]){var i=t[e];!0!==d.tooltips[e]&&(i=d.tooltips[e].to(n[e])),r[e].innerHTML=i}})),J(\"update\",function(t,e,s,n,a){v.forEach(function(t){var e=l[t],n=z(m,t,0,!0,!0,!0),i=z(m,t,100,!0,!0,!0),r=a[t],o=d.ariaFormat.to(s[t]);e.children[0].setAttribute(\"aria-valuemin\",n.toFixed(1)),e.children[0].setAttribute(\"aria-valuemax\",i.toFixed(1)),e.children[0].setAttribute(\"aria-valuenow\",r.toFixed(1)),e.children[0].setAttribute(\"aria-valuetext\",o)})}),a}return{version:$,create:function(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider (\"+$+\"): create requires a single element, got: \"+t);var n=rt(e),i=P(t,n,e);return t.noUiSlider=i}}},\"object\"==typeof n?e.exports=i():window.noUiSlider=i()},432:function(i,r,o){\n      /*!\n           * Pikaday\n           *\n           * Copyright © 2014 David Bushell | BSD & MIT license | https://github.com/dbushell/Pikaday\n           */\n      !function(t,e){\"use strict\";var n;if(\"object\"==typeof o){try{n=i(\"moment\")}catch(t){}r.exports=e(n)}else t.Pikaday=e(t.moment)}(this,function(n){\"use strict\";var o=\"function\"==typeof n,s=!!window.addEventListener,c=window.document,u=window.setTimeout,a=function(t,e,n,i){s?t.addEventListener(e,n,!!i):t.attachEvent(\"on\"+e,n)},i=function(t,e,n,i){s?t.removeEventListener(e,n,!!i):t.detachEvent(\"on\"+e,n)},l=function(t,e){return-1!==(\" \"+t.className+\" \").indexOf(\" \"+e+\" \")},g=function(t){return/Array/.test(Object.prototype.toString.call(t))},B=function(t){return/Date/.test(Object.prototype.toString.call(t))&&!isNaN(t.getTime())},U=function(t,e){return[31,(n=t,n%4==0&&n%100!=0||n%400==0?29:28),31,30,31,30,31,31,30,31,30,31][e];var n},j=function(t){B(t)&&t.setHours(0,0,0,0)},z=function(t,e){return t.getTime()===e.getTime()},d=function(t,e,n){var i,r;for(i in e)(r=void 0!==t[i])&&\"object\"==typeof e[i]&&null!==e[i]&&void 0===e[i].nodeName?B(e[i])?n&&(t[i]=new Date(e[i].getTime())):g(e[i])?n&&(t[i]=e[i].slice(0)):t[i]=d({},e[i],n):!n&&r||(t[i]=e[i]);return t},r=function(t,e,n){var i;c.createEvent?((i=c.createEvent(\"HTMLEvents\")).initEvent(e,!0,!1),i=d(i,n),t.dispatchEvent(i)):c.createEventObject&&(i=c.createEventObject(),i=d(i,n),t.fireEvent(\"on\"+e,i))},e=function(t){return t.month<0&&(t.year-=Math.ceil(Math.abs(t.month)/12),t.month+=12),11<t.month&&(t.year+=Math.floor(Math.abs(t.month)/12),t.month-=12),t},h={field:null,bound:void 0,position:\"bottom left\",reposition:!0,format:\"YYYY-MM-DD\",toString:null,parse:null,defaultDate:null,setDefaultDate:!1,firstDay:0,formatStrict:!1,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,pickWholeWeek:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:\"\",showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,enableSelectionDaysInNextAndPreviousMonths:!1,numberOfMonths:1,mainCalendar:\"left\",container:void 0,blurFieldOnSelect:!0,i18n:{previousMonth:\"Previous Month\",nextMonth:\"Next Month\",months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],weekdays:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],weekdaysShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"]},theme:null,events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null,keyboardInput:!0},p=function(t,e,n){for(e+=t.firstDay;7<=e;)e-=7;return n?t.i18n.weekdaysShort[e]:t.i18n.weekdays[e]},F=function(t){var e=[],n=\"false\";if(t.isEmpty){if(!t.showDaysInNextAndPreviousMonths)return'<td class=\"is-empty\"></td>';e.push(\"is-outside-current-month\"),t.enableSelectionDaysInNextAndPreviousMonths||e.push(\"is-selection-disabled\")}return t.isDisabled&&e.push(\"is-disabled\"),t.isToday&&e.push(\"is-today\"),t.isSelected&&(e.push(\"is-selected\"),n=\"true\"),t.hasEvent&&e.push(\"has-event\"),t.isInRange&&e.push(\"is-inrange\"),t.isStartRange&&e.push(\"is-startrange\"),t.isEndRange&&e.push(\"is-endrange\"),'<td data-day=\"'+t.day+'\" class=\"'+e.join(\" \")+'\" aria-selected=\"'+n+'\"><button class=\"pika-button pika-day\" type=\"button\" data-pika-year=\"'+t.year+'\" data-pika-month=\"'+t.month+'\" data-pika-day=\"'+t.day+'\">'+t.day+\"</button></td>\"},f=function(t,e,n,i,r,o){var s,a,l,u,c,d=t._o,h=n===d.minYear,p=n===d.maxYear,f='<div id=\"'+o+'\" class=\"pika-title\" role=\"heading\" aria-live=\"assertive\">',m=!0,v=!0;for(l=[],s=0;s<12;s++)l.push('<option value=\"'+(n===r?s-e:12+s-e)+'\"'+(s===i?' selected=\"selected\"':\"\")+(h&&s<d.minMonth||p&&s>d.maxMonth?'disabled=\"disabled\"':\"\")+\">\"+d.i18n.months[s]+\"</option>\");for(u='<div class=\"pika-label\">'+d.i18n.months[i]+'<select class=\"pika-select pika-select-month\" tabindex=\"-1\">'+l.join(\"\")+\"</select></div>\",g(d.yearRange)?(s=d.yearRange[0],a=d.yearRange[1]+1):(s=n-d.yearRange,a=1+n+d.yearRange),l=[];s<a&&s<=d.maxYear;s++)s>=d.minYear&&l.push('<option value=\"'+s+'\"'+(s===n?' selected=\"selected\"':\"\")+\">\"+s+\"</option>\");return c='<div class=\"pika-label\">'+n+d.yearSuffix+'<select class=\"pika-select pika-select-year\" tabindex=\"-1\">'+l.join(\"\")+\"</select></div>\",d.showMonthAfterYear?f+=c+u:f+=u+c,h&&(0===i||d.minMonth>=i)&&(m=!1),p&&(11===i||d.maxMonth<=i)&&(v=!1),0===e&&(f+='<button class=\"pika-prev'+(m?\"\":\" is-disabled\")+'\" type=\"button\">'+d.i18n.previousMonth+\"</button>\"),e===t._o.numberOfMonths-1&&(f+='<button class=\"pika-next'+(v?\"\":\" is-disabled\")+'\" type=\"button\">'+d.i18n.nextMonth+\"</button>\"),f+=\"</div>\"},Y=function(t,e,n){return'<table cellpadding=\"0\" cellspacing=\"0\" class=\"pika-table\" role=\"grid\" aria-labelledby=\"'+n+'\">'+function(t){var e,n=[];for(t.showWeekNumber&&n.push(\"<th></th>\"),e=0;e<7;e++)n.push('<th scope=\"col\"><abbr title=\"'+p(t,e)+'\">'+p(t,e,!0)+\"</abbr></th>\");return\"<thead><tr>\"+(t.isRTL?n.reverse():n).join(\"\")+\"</tr></thead>\"}(t)+\"<tbody>\"+e.join(\"\")+\"</tbody></table>\"},t=function(t){var i=this,r=i.config(t);i._onMouseDown=function(t){if(i._v){var e=(t=t||window.event).target||t.srcElement;if(e)if(l(e,\"is-disabled\")||(!l(e,\"pika-button\")||l(e,\"is-empty\")||l(e.parentNode,\"is-disabled\")?l(e,\"pika-prev\")?i.prevMonth():l(e,\"pika-next\")&&i.nextMonth():(i.setDate(new Date(e.getAttribute(\"data-pika-year\"),e.getAttribute(\"data-pika-month\"),e.getAttribute(\"data-pika-day\"))),r.bound&&u(function(){i.hide(),r.blurFieldOnSelect&&r.field&&r.field.blur()},100))),l(e,\"pika-select\"))i._c=!0;else{if(!t.preventDefault)return t.returnValue=!1;t.preventDefault()}}},i._onChange=function(t){var e=(t=t||window.event).target||t.srcElement;e&&(l(e,\"pika-select-month\")?i.gotoMonth(e.value):l(e,\"pika-select-year\")&&i.gotoYear(e.value))},i._onKeyChange=function(t){if(t=t||window.event,i.isVisible())switch(t.keyCode){case 13:case 27:r.field&&r.field.blur();break;case 37:t.preventDefault(),i.adjustDate(\"subtract\",1);break;case 38:i.adjustDate(\"subtract\",7);break;case 39:i.adjustDate(\"add\",1);break;case 40:i.adjustDate(\"add\",7)}},i._onInputChange=function(t){var e;t.firedBy!==i&&(e=r.parse?r.parse(r.field.value,r.format):o?(e=n(r.field.value,r.format,r.formatStrict))&&e.isValid()?e.toDate():null:new Date(Date.parse(r.field.value)),B(e)&&i.setDate(e),i._v||i.show())},i._onInputFocus=function(){i.show()},i._onInputClick=function(){i.show()},i._onInputBlur=function(){var t=c.activeElement;do{if(l(t,\"pika-single\"))return}while(t=t.parentNode);i._c||(i._b=u(function(){i.hide()},50)),i._c=!1},i._onClick=function(t){var e=(t=t||window.event).target||t.srcElement,n=e;if(e){!s&&l(e,\"pika-select\")&&(e.onchange||(e.setAttribute(\"onchange\",\"return;\"),a(e,\"change\",i._onChange)));do{if(l(n,\"pika-single\")||n===r.trigger)return}while(n=n.parentNode);i._v&&e!==r.trigger&&n!==r.trigger&&i.hide()}},i.el=c.createElement(\"div\"),i.el.className=\"pika-single\"+(r.isRTL?\" is-rtl\":\"\")+(r.theme?\" \"+r.theme:\"\"),a(i.el,\"mousedown\",i._onMouseDown,!0),a(i.el,\"touchend\",i._onMouseDown,!0),a(i.el,\"change\",i._onChange),r.keyboardInput&&a(c,\"keydown\",i._onKeyChange),r.field&&(r.container?r.container.appendChild(i.el):r.bound?c.body.appendChild(i.el):r.field.parentNode.insertBefore(i.el,r.field.nextSibling),a(r.field,\"change\",i._onInputChange),r.defaultDate||(o&&r.field.value?r.defaultDate=n(r.field.value,r.format).toDate():r.defaultDate=new Date(Date.parse(r.field.value)),r.setDefaultDate=!0));var e=r.defaultDate;B(e)?r.setDefaultDate?i.setDate(e,!0):i.gotoDate(e):i.gotoDate(new Date),r.bound?(this.hide(),i.el.className+=\" is-bound\",a(r.trigger,\"click\",i._onInputClick),a(r.trigger,\"focus\",i._onInputFocus),a(r.trigger,\"blur\",i._onInputBlur)):this.show()};return t.prototype={config:function(t){this._o||(this._o=d({},h,!0));var e=d(this._o,t,!0);e.isRTL=!!e.isRTL,e.field=e.field&&e.field.nodeName?e.field:null,e.theme=\"string\"==typeof e.theme&&e.theme?e.theme:null,e.bound=!!(void 0!==e.bound?e.field&&e.bound:e.field),e.trigger=e.trigger&&e.trigger.nodeName?e.trigger:e.field,e.disableWeekends=!!e.disableWeekends,e.disableDayFn=\"function\"==typeof e.disableDayFn?e.disableDayFn:null;var n=parseInt(e.numberOfMonths,10)||1;if(e.numberOfMonths=4<n?4:n,B(e.minDate)||(e.minDate=!1),B(e.maxDate)||(e.maxDate=!1),e.minDate&&e.maxDate&&e.maxDate<e.minDate&&(e.maxDate=e.minDate=!1),e.minDate&&this.setMinDate(e.minDate),e.maxDate&&this.setMaxDate(e.maxDate),g(e.yearRange)){var i=(new Date).getFullYear()-10;e.yearRange[0]=parseInt(e.yearRange[0],10)||i,e.yearRange[1]=parseInt(e.yearRange[1],10)||i}else e.yearRange=Math.abs(parseInt(e.yearRange,10))||h.yearRange,100<e.yearRange&&(e.yearRange=100);return e},toString:function(t){return t=t||this._o.format,B(this._d)?this._o.toString?this._o.toString(this._d,t):o?n(this._d).format(t):this._d.toDateString():\"\"},getMoment:function(){return o?n(this._d):null},setMoment:function(t,e){o&&n.isMoment(t)&&this.setDate(t.toDate(),e)},getDate:function(){return B(this._d)?new Date(this._d.getTime()):null},setDate:function(t,e){if(!t)return this._d=null,this._o.field&&(this._o.field.value=\"\",r(this._o.field,\"change\",{firedBy:this})),this.draw();if(\"string\"==typeof t&&(t=new Date(Date.parse(t))),B(t)){var n=this._o.minDate,i=this._o.maxDate;B(n)&&t<n?t=n:B(i)&&i<t&&(t=i),this._d=new Date(t.getTime()),j(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),r(this._o.field,\"change\",{firedBy:this})),e||\"function\"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},gotoDate:function(t){var e=!0;if(B(t)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),i=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),r=t.getTime();i.setMonth(i.getMonth()+1),i.setDate(i.getDate()-1),e=r<n.getTime()||i.getTime()<r}e&&(this.calendars=[{month:t.getMonth(),year:t.getFullYear()}],\"right\"===this._o.mainCalendar&&(this.calendars[0].month+=1-this._o.numberOfMonths)),this.adjustCalendars()}},adjustDate:function(t,e){var n,i=this.getDate()||new Date,r=24*parseInt(e)*60*60*1e3;\"add\"===t?n=new Date(i.valueOf()+r):\"subtract\"===t&&(n=new Date(i.valueOf()-r)),this.setDate(n)},adjustCalendars:function(){this.calendars[0]=e(this.calendars[0]);for(var t=1;t<this._o.numberOfMonths;t++)this.calendars[t]=e({month:this.calendars[0].month+t,year:this.calendars[0].year});this.draw()},gotoToday:function(){this.gotoDate(new Date)},gotoMonth:function(t){isNaN(t)||(this.calendars[0].month=parseInt(t,10),this.adjustCalendars())},nextMonth:function(){this.calendars[0].month++,this.adjustCalendars()},prevMonth:function(){this.calendars[0].month--,this.adjustCalendars()},gotoYear:function(t){isNaN(t)||(this.calendars[0].year=parseInt(t,10),this.adjustCalendars())},setMinDate:function(t){t instanceof Date?(j(t),this._o.minDate=t,this._o.minYear=t.getFullYear(),this._o.minMonth=t.getMonth()):(this._o.minDate=h.minDate,this._o.minYear=h.minYear,this._o.minMonth=h.minMonth,this._o.startRange=h.startRange),this.draw()},setMaxDate:function(t){t instanceof Date?(j(t),this._o.maxDate=t,this._o.maxYear=t.getFullYear(),this._o.maxMonth=t.getMonth()):(this._o.maxDate=h.maxDate,this._o.maxYear=h.maxYear,this._o.maxMonth=h.maxMonth,this._o.endRange=h.endRange),this.draw()},setStartRange:function(t){this._o.startRange=t},setEndRange:function(t){this._o.endRange=t},draw:function(t){if(this._v||t){var e,n=this._o,i=n.minYear,r=n.maxYear,o=n.minMonth,s=n.maxMonth,a=\"\";this._y<=i&&(this._y=i,!isNaN(o)&&this._m<o&&(this._m=o)),this._y>=r&&(this._y=r,!isNaN(s)&&this._m>s&&(this._m=s)),e=\"pika-title-\"+Math.random().toString(36).replace(/[^a-z]+/g,\"\").substr(0,2);for(var l=0;l<n.numberOfMonths;l++)a+='<div class=\"pika-lendar\">'+f(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year,e)+this.render(this.calendars[l].year,this.calendars[l].month,e)+\"</div>\";this.el.innerHTML=a,n.bound&&\"hidden\"!==n.field.type&&u(function(){n.trigger.focus()},1),\"function\"==typeof this._o.onDraw&&this._o.onDraw(this),n.bound&&n.field.setAttribute(\"aria-label\",\"Use the arrow keys to pick a date\")}},adjustPosition:function(){var t,e,n,i,r,o,s,a,l,u;if(!this._o.container){if(this.el.style.position=\"absolute\",t=this._o.trigger,e=t,n=this.el.offsetWidth,i=this.el.offsetHeight,r=window.innerWidth||c.documentElement.clientWidth,o=window.innerHeight||c.documentElement.clientHeight,s=window.pageYOffset||c.body.scrollTop||c.documentElement.scrollTop,\"function\"==typeof t.getBoundingClientRect)u=t.getBoundingClientRect(),a=u.left+window.pageXOffset,l=u.bottom+window.pageYOffset;else for(a=e.offsetLeft,l=e.offsetTop+e.offsetHeight;e=e.offsetParent;)a+=e.offsetLeft,l+=e.offsetTop;(this._o.reposition&&r<a+n||-1<this._o.position.indexOf(\"right\")&&0<a-n+t.offsetWidth)&&(a=a-n+t.offsetWidth),(this._o.reposition&&o+s<l+i||-1<this._o.position.indexOf(\"top\")&&0<l-i-t.offsetHeight)&&(l=l-i-t.offsetHeight),this.el.style.left=a+\"px\",this.el.style.top=l+\"px\"}},render:function(t,e,n){var i=this._o,r=new Date,o=U(t,e),s=new Date(t,e,1).getDay(),a=[],l=[];j(r),0<i.firstDay&&(s-=i.firstDay)<0&&(s+=7);for(var u=0===e?11:e-1,c=11===e?0:e+1,d=0===e?t-1:t,h=11===e?t+1:t,p=U(d,u),f=o+s,m=f;7<m;)m-=7;f+=7-m;for(var v,g,y,b,_,w,x,k=!1,S=0,C=0;S<f;S++){var E=new Date(t,e,S-s+1),D=!!B(this._d)&&z(E,this._d),M=z(E,r),A=-1!==i.events.indexOf(E.toDateString()),N=S<s||o+s<=S,V=S-s+1,I=e,P=t,R=i.startRange&&z(i.startRange,E),L=i.endRange&&z(i.endRange,E),T=i.startRange&&i.endRange&&i.startRange<E&&E<i.endRange,O=i.minDate&&E<i.minDate||i.maxDate&&E>i.maxDate||i.disableWeekends&&(0===(x=E.getDay())||6===x)||i.disableDayFn&&i.disableDayFn(E);N&&(S<s?(V=p+V,I=u,P=d):(V-=o,I=c,P=h));var W={day:V,month:I,year:P,hasEvent:A,isSelected:D,isToday:M,isDisabled:O,isEmpty:N,isStartRange:R,isEndRange:L,isInRange:T,showDaysInNextAndPreviousMonths:i.showDaysInNextAndPreviousMonths,enableSelectionDaysInNextAndPreviousMonths:i.enableSelectionDaysInNextAndPreviousMonths};i.pickWholeWeek&&D&&(k=!0),l.push(F(W)),7==++C&&(i.showWeekNumber&&l.unshift((y=S-s,b=e,_=t,w=void 0,w=new Date(_,0,1),'<td class=\"pika-week\">'+Math.ceil(((new Date(_,b,y)-w)/864e5+w.getDay()+1)/7)+\"</td>\")),a.push((v=l,g=i.isRTL,'<tr class=\"pika-row'+(i.pickWholeWeek?\" pick-whole-week\":\"\")+(k?\" is-selected\":\"\")+'\">'+(g?v.reverse():v).join(\"\")+\"</tr>\")),C=0,k=!(l=[]))}return Y(i,a,n)},isVisible:function(){return this._v},show:function(){var t,e,n;this.isVisible()||(this._v=!0,this.draw(),t=this.el,e=\"is-hidden\",t.className=(n=(\" \"+t.className+\" \").replace(\" \"+e+\" \",\" \")).trim?n.trim():n.replace(/^\\s+|\\s+$/g,\"\"),this._o.bound&&(a(c,\"click\",this._onClick),this.adjustPosition()),\"function\"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var t,e,n=this._v;!1!==n&&(this._o.bound&&i(c,\"click\",this._onClick),this.el.style.position=\"static\",this.el.style.left=\"auto\",this.el.style.top=\"auto\",t=this.el,l(t,e=\"is-hidden\")||(t.className=\"\"===t.className?e:t.className+\" \"+e),this._v=!1,void 0!==n&&\"function\"==typeof this._o.onClose&&this._o.onClose.call(this))},destroy:function(){var t=this._o;this.hide(),i(this.el,\"mousedown\",this._onMouseDown,!0),i(this.el,\"touchend\",this._onMouseDown,!0),i(this.el,\"change\",this._onChange),t.keyboardInput&&i(c,\"keydown\",this._onKeyChange),t.field&&(i(t.field,\"change\",this._onInputChange),t.bound&&(i(t.trigger,\"click\",this._onInputClick),i(t.trigger,\"focus\",this._onInputFocus),i(t.trigger,\"blur\",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},t})}})}(this);\n      //# sourceMappingURL=bokeh-widgets.min.js.map\n      /* END bokeh-widgets.min.js */\n    },\n    \n    function(Bokeh) {\n      /* BEGIN bokeh-tables.min.js */\n      /*!\n       * Copyright (c) 2012 - 2018, 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(a,b){!function(Bokeh){var define;(function(e,t,n){if(null!=Bokeh)return Bokeh.register_plugin(e,{\"models/widgets/tables/cell_editors\":433,\"models/widgets/tables/cell_formatters\":434,\"models/widgets/tables/data_table\":435,\"models/widgets/tables/index\":436,\"models/widgets/tables/main\":437,\"models/widgets/tables/table_column\":438,\"models/widgets/tables/table_widget\":439,\"models/widgets/widget\":440},437);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")})({433:function(e,t,n){var o=e(391),r=e(15),i=e(5),l=e(6),s=e(59),a=e(435),c=function(t){function e(e){return t.call(this,o.__assign({model:e.column.model},e))||this}return o.__extends(e,t),Object.defineProperty(e.prototype,\"emptyValue\",{get:function(){return null},enumerable:!0,configurable:!0}),e.prototype.initialize=function(e){t.prototype.initialize.call(this,e),this.inputEl=this._createInput(),this.defaultValue=null,this.args=e,this.render()},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-cell-editor\")},e.prototype.render=function(){t.prototype.render.call(this),this.args.container.appendChild(this.el),this.el.appendChild(this.inputEl),this.renderEditor(),this.disableNavigation()},e.prototype.renderEditor=function(){},e.prototype.disableNavigation=function(){this.inputEl.addEventListener(\"keydown\",function(e){switch(e.keyCode){case i.Keys.Left:case i.Keys.Right:case i.Keys.Up:case i.Keys.Down:case i.Keys.PageUp:case i.Keys.PageDown:e.stopImmediatePropagation()}})},e.prototype.destroy=function(){this.remove()},e.prototype.focus=function(){this.inputEl.focus()},e.prototype.show=function(){},e.prototype.hide=function(){},e.prototype.position=function(){},e.prototype.getValue=function(){return this.inputEl.value},e.prototype.setValue=function(e){this.inputEl.value=e},e.prototype.serializeValue=function(){return this.getValue()},e.prototype.isValueChanged=function(){return!(\"\"==this.getValue()&&null==this.defaultValue)&&this.getValue()!==this.defaultValue},e.prototype.applyValue=function(e,t){var n=this.args.grid.getData(),o=n.index.indexOf(e[a.DTINDEX_NAME]);n.setField(o,this.args.column.field,t)},e.prototype.loadValue=function(e){var t=e[this.args.column.field];this.defaultValue=null!=t?t:this.emptyValue,this.setValue(this.defaultValue)},e.prototype.validateValue=function(e){if(this.args.column.validator){var t=this.args.column.validator(e);if(!t.valid)return t}return{valid:!0,msg:null}},e.prototype.validate=function(){return this.validateValue(this.getValue())},e}(l.DOMView);n.CellEditorView=c;var u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"CellEditor\"},t}(s.Model);(n.CellEditor=u).initClass();var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),Object.defineProperty(e.prototype,\"emptyValue\",{get:function(){return\"\"},enumerable:!0,configurable:!0}),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e}(c);n.StringEditorView=d;var p=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"StringEditor\",this.prototype.default_view=d,this.define({completions:[r.Array,[]]})},t}(u);(n.StringEditor=p).initClass();var f=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.textarea()},t}(c);n.TextEditorView=f;var h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextEditor\",this.prototype.default_view=f},t}(u);(n.TextEditor=h).initClass();var g=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.select()},t.prototype.renderEditor=function(){for(var e=0,t=this.model.options;e<t.length;e++){var n=t[e];this.inputEl.appendChild(i.option({value:n},n))}this.focus()},t}(c);n.SelectEditorView=g;var m=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"SelectEditor\",this.prototype.default_view=g,this.define({options:[r.Array,[]]})},t}(u);(n.SelectEditor=m).initClass();var v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},t}(c);n.PercentEditorView=v;var w=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"PercentEditor\",this.prototype.default_view=v},t}(u);(n.PercentEditor=w).initClass();var y=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"checkbox\",value:\"true\"})},t.prototype.renderEditor=function(){this.focus()},t.prototype.loadValue=function(e){this.defaultValue=!!e[this.args.column.field],this.inputEl.checked=this.defaultValue},t.prototype.serializeValue=function(){return this.inputEl.checked},t}(c);n.CheckboxEditorView=y;var C=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"CheckboxEditor\",this.prototype.default_view=y},t}(u);(n.CheckboxEditor=C).initClass();var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.remove=function(){t.prototype.remove.call(this)},e.prototype.serializeValue=function(){return parseInt(this.getValue(),10)||0},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e.prototype.validateValue=function(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid integer\"}:t.prototype.validateValue.call(this,e)},e}(c);n.IntEditorView=b;var x=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"IntEditor\",this.prototype.default_view=b,this.define({step:[r.Number,1]})},t}(u);(n.IntEditor=x).initClass();var R=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.remove=function(){t.prototype.remove.call(this)},e.prototype.serializeValue=function(){return parseFloat(this.getValue())||0},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e.prototype.validateValue=function(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid number\"}:t.prototype.validateValue.call(this,e)},e}(c);n.NumberEditorView=R;var S=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"NumberEditor\",this.prototype.default_view=R,this.define({step:[r.Number,.01]})},t}(u);(n.NumberEditor=S).initClass();var E=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},t}(c);n.TimeEditorView=E;var k=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"TimeEditor\",this.prototype.default_view=E},t}(u);(n.TimeEditor=k).initClass();var T=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},Object.defineProperty(t.prototype,\"emptyValue\",{get:function(){return new Date},enumerable:!0,configurable:!0}),t.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},t.prototype.destroy=function(){e.prototype.destroy.call(this)},t.prototype.show=function(){e.prototype.show.call(this)},t.prototype.hide=function(){e.prototype.hide.call(this)},t.prototype.position=function(){return e.prototype.position.call(this)},t.prototype.getValue=function(){},t.prototype.setValue=function(e){},t}(c);n.DateEditorView=T;var P=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"DateEditor\",this.prototype.default_view=T},t}(u);(n.DateEditor=P).initClass()},434:function(e,t,n){var a=e(391),u=e(361),c=e(449),s=e(390),o=e(15),d=e(5),p=e(44),r=e(59),i=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.prototype.doFormat=function(e,t,n,o,r){return null==n?\"\":(n+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")},e}(r.Model),l=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"StringFormatter\",this.define({font_style:[o.FontStyle,\"normal\"],text_align:[o.TextAlign,\"left\"],text_color:[o.Color]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this.font_style,l=this.text_align,s=this.text_color,a=d.div({},null==n?\"\":\"\"+n);switch(i){case\"bold\":a.style.fontWeight=\"bold\";break;case\"italic\":a.style.fontStyle=\"italic\"}return null!=l&&(a.style.textAlign=l),null!=s&&(a.style.color=s),a.outerHTML},e}(n.CellFormatter=i);(n.StringFormatter=l).initClass();var f=function(c){function e(e){return c.call(this,e)||this}return a.__extends(e,c),e.initClass=function(){this.prototype.type=\"NumberFormatter\",this.define({format:[o.String,\"0,0\"],language:[o.String,\"en\"],rounding:[o.String,\"round\"]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this,l=this.format,s=this.language,a=function(){switch(i.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}}();return n=u.format(n,l,s,a),c.prototype.doFormat.call(this,e,t,n,o,r)},e}(l);(n.NumberFormatter=f).initClass();var h=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"BooleanFormatter\",this.define({icon:[o.String,\"check\"]})},e.prototype.doFormat=function(e,t,n,o,r){return n?d.i({class:this.icon}).outerHTML:\"\"},e}(i);(n.BooleanFormatter=h).initClass();var g=function(l){function e(e){return l.call(this,e)||this}return a.__extends(e,l),e.initClass=function(){this.prototype.type=\"DateFormatter\",this.define({format:[o.String,\"ISO-8601\"]})},e.prototype.getFormat=function(){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}},e.prototype.doFormat=function(e,t,n,o,r){n=p.isString(n)?parseInt(n,10):n;var i=s(n,this.getFormat());return l.prototype.doFormat.call(this,e,t,i,o,r)},e}(i);(n.DateFormatter=g).initClass();var m=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"HTMLTemplateFormatter\",this.define({template:[o.String,\"<%= value %>\"]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this.template;if(null==n)return\"\";var l=c(i),s=a.__assign({},r,{value:n});return l(s)},e}(i);(n.HTMLTemplateFormatter=m).initClass()},435:function(e,t,i){var o=e(391),s=e(447).Grid,a=e(445).RowSelectionModel,c=e(444).CheckboxSelectColumn,r=e(15),n=e(38),l=e(21),u=e(32),d=e(14),p=e(439),f=e(440);i.DTINDEX_NAME=\"__bkdt_internal_index__\";var h=function(){function e(e,t){if(this.source=e,this.view=t,i.DTINDEX_NAME in this.source.data)throw new Error(\"special name \"+i.DTINDEX_NAME+\" cannot be used as a data table column\");this.index=this.view.indices}return e.prototype.getLength=function(){return this.index.length},e.prototype.getItem=function(e){for(var t={},n=0,o=u.keys(this.source.data);n<o.length;n++){var r=o[n];t[r]=this.source.data[r][this.index[e]]}return t[i.DTINDEX_NAME]=this.index[e],t},e.prototype.getField=function(e,t){return t==i.DTINDEX_NAME?this.index[e]:this.source.data[t][this.index[e]]},e.prototype.setField=function(e,t,n){var o={},r=this.index[e];o[t]=[[r,n]],this.source.patch(o)},e.prototype.getItemMetadata=function(e){return null},e.prototype.getRecords=function(){var t=this;return l.range(0,this.getLength()).map(function(e){return t.getItem(e)})},e.prototype.sort=function(e){var u=e.map(function(e){return[e.sortCol.field,e.sortAsc?1:-1]});0==u.length&&(u=[[i.DTINDEX_NAME,1]]);var d=this.getRecords(),p=this.index.slice();this.index.sort(function(e,t){for(var n=0,o=u;n<o.length;n++){var r=o[n],i=r[0],l=r[1],s=d[p.indexOf(e)][i],a=d[p.indexOf(t)][i],c=s==a?0:a<s?l:-l;if(0!=c)return c}return 0})},e}();i.DataProvider=h;var g=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._in_selection_update=!1,e._warned_not_reorderable=!1,e}return o.__extends(e,t),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.render()}),this.connect(this.model.source.streaming,function(){return e.updateGrid()}),this.connect(this.model.source.patching,function(){return e.updateGrid()}),this.connect(this.model.source.change,function(){return e.updateGrid()}),this.connect(this.model.source.properties.data.change,function(){return e.updateGrid()}),this.connect(this.model.source.selected.change,function(){return e.updateSelection()}),this.connect(this.model.source.selected.properties.indices.change,function(){return e.updateSelection()})},e.prototype.updateGrid=function(){var t=this;this.model.view.compute_indices(),this.data.constructor(this.model.source,this.model.view);var n=this.grid.getColumns(),e=this.grid.getSortColumns().map(function(e){return{sortCol:{field:n[t.grid.getColumnIndex(e.columnId)].field},sortAsc:e.sortAsc}});this.data.sort(e),this.grid.invalidate(),this.grid.render()},e.prototype.updateSelection=function(){var t=this;if(!this._in_selection_update){var e=this.model.source.selected,n=e.indices.map(function(e){return t.data.index.indexOf(e)});this._in_selection_update=!0,this.grid.setSelectedRows(n),this._in_selection_update=!1;var o=this.grid.getViewport(),r=this.model.get_scroll_index(o,n);null!=r&&this.grid.scrollRowToTop(r)}},e.prototype.newIndexColumn=function(){return{id:n.uniqueId(),name:this.model.index_header,field:i.DTINDEX_NAME,width:this.model.index_width,behavior:\"select\",cannotTriggerInsert:!0,resizable:!1,selectable:!1,sortable:!0,cssClass:\"bk-cell-index\",headerCssClass:\"bk-header-index\"}},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-data-table\")},e.prototype.render=function(){var e,n=this,o=this.model.columns.map(function(e){return e.toColumn()});if(\"checkbox\"==this.model.selectable&&(e=new c({cssClass:\"bk-cell-select\"}),o.unshift(e.getColumnDefinition())),null!=this.model.index_position){var t=this.model.index_position,r=this.newIndexColumn();-1==t?o.push(r):t<-1?o.splice(t+1,0,r):o.splice(t,0,r)}var i=this.model.reorderable;!i||\"undefined\"!=typeof $&&null!=$.fn&&null!=$.fn.sortable||(this._warned_not_reorderable||(d.logger.warn(\"jquery-ui is required to enable DataTable.reorderable\"),this._warned_not_reorderable=!0),i=!1);var l={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:i,forceFitColumns:this.model.fit_columns,autoHeight:\"auto\"==this.model.height,multiColumnSort:this.model.sortable,editable:this.model.editable,autoEdit:!1,rowHeight:this.model.row_height};null!=this.model.width?this.el.style.width=this.model.width+\"px\":this.el.style.width=this.model.default_width+\"px\",null!=this.model.height&&\"auto\"!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),this.data=new h(this.model.source,this.model.view),this.grid=new s(this.el,this.data,o,l),this.grid.onSort.subscribe(function(e,t){o=t.sortCols,n.data.sort(o),n.grid.invalidate(),n.updateSelection(),n.grid.render(),n.model.header_row||n._hide_header()}),!1!==this.model.selectable&&(this.grid.setSelectionModel(new a({selectActiveRow:null==e})),null!=e&&this.grid.registerPlugin(e),this.grid.onSelectedRowsChanged.subscribe(function(e,t){n._in_selection_update||(n.model.source.selected.indices=t.rows.map(function(e){return n.data.index[e]}))}),this.updateSelection(),this.model.header_row||this._hide_header())},e.prototype._hide_header=function(){for(var e=0,t=Array.from(this.el.querySelectorAll(\".slick-header-columns\"));e<t.length;e++){var n=t[e];n.style.height=\"0px\"}this.grid.resizeCanvas()},e}(f.WidgetView);i.DataTableView=g;var m=function(n){function e(e){var t=n.call(this,e)||this;return t.default_width=600,t}return o.__extends(e,n),e.initClass=function(){this.prototype.type=\"DataTable\",this.prototype.default_view=g,this.define({columns:[r.Array,[]],fit_columns:[r.Bool,!0],sortable:[r.Bool,!0],reorderable:[r.Bool,!0],editable:[r.Bool,!1],selectable:[r.Any,!0],index_position:[r.Int,0],index_header:[r.String,\"#\"],index_width:[r.Int,40],scroll_to_selection:[r.Bool,!0],header_row:[r.Bool,!0],row_height:[r.Int,25]}),this.override({height:400})},e.prototype.get_scroll_index=function(t,e){return this.scroll_to_selection&&0!=e.length?l.any(e,function(e){return t.top<=e&&e<=t.bottom})?null:Math.max(0,Math.min.apply(Math,e)-1):null},e}(p.TableWidget);(i.DataTable=m).initClass()},436:function(e,t,n){var o=e(391);o.__exportStar(e(433),n),o.__exportStar(e(434),n);var r=e(435);n.DataTable=r.DataTable;var i=e(438);n.TableColumn=i.TableColumn;var l=e(439);n.TableWidget=l.TableWidget},437:function(e,t,n){var o=e(436);n.Tables=o;var r=e(0);r.register_models(o)},438:function(e,t,n){var o=e(391),r=e(434),i=e(433),l=e(15),s=e(38),a=e(59),c=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"TableColumn\",this.define({field:[l.String],title:[l.String],width:[l.Number,300],formatter:[l.Instance,function(){return new r.StringFormatter}],editor:[l.Instance,function(){return new i.StringEditor}],sortable:[l.Bool,!0],default_sort:[l.String,\"ascending\"]})},e.prototype.toColumn=function(){return{id:s.uniqueId(),field:this.field,name:this.title,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}},e}(a.Model);(n.TableColumn=c).initClass()},439:function(e,t,n){var o=e(391),r=e(440),i=e(199),l=e(15),s=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"TableWidget\",this.define({source:[l.Instance],view:[l.Instance,function(){return new i.CDSView}]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),null==this.view.source&&(this.view.source=this.source,this.view.compute_indices())},e}(r.Widget);(n.TableWidget=s).initClass()},440:function(e,t,n){var o=e(391),r=e(157),i=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-widget\")},t.prototype.render=function(){this._render_classes(),null!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),null!=this.model.width&&(this.el.style.width=this.model.width+\"px\")},t.prototype.get_width=function(){throw new Error(\"unused\")},t.prototype.get_height=function(){throw new Error(\"unused\")},t}(r.LayoutDOMView);n.WidgetView=i;var l=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"Widget\"},e}(r.LayoutDOM);(n.Widget=l).initClass()},441:function(e,n,t){\n      /*!\n           * jQuery JavaScript Library v3.2.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: 2017-03-20T18:59Z\n           */\n      !function(e,t){\"use strict\";\"object\"==typeof n&&\"object\"==typeof n.exports?n.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error(\"jQuery requires a window with a document\");return t(e)}:t(e)}(\"undefined\"!=typeof window?window:this,function(R,e){\"use strict\";var t=[],S=R.document,o=Object.getPrototypeOf,s=t.slice,g=t.concat,a=t.push,r=t.indexOf,n={},i=n.toString,h=n.hasOwnProperty,l=h.toString,c=l.call(Object),m={};function v(e,t){var n=(t=t||S).createElement(\"script\");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}var E=function(e,t){return new E.fn.init(e,t)},u=/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g,d=/^-ms-/,p=/-([a-z])/g,f=function(e,t){return t.toUpperCase()};function w(e){var t=!!e&&\"length\"in e&&e.length,n=E.type(e);return\"function\"!==n&&!E.isWindow(e)&&(\"array\"===n||0===t||\"number\"==typeof t&&0<t&&t-1 in e)}E.fn=E.prototype={jquery:\"3.2.1\",constructor:E,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=E.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return E.each(this,e)},map:function(n){return this.pushStack(E.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:t.sort,splice:t.splice},E.extend=E.fn.extend=function(){var e,t,n,o,r,i,l=arguments[0]||{},s=1,a=arguments.length,c=!1;for(\"boolean\"==typeof l&&(c=l,l=arguments[s]||{},s++),\"object\"==typeof l||E.isFunction(l)||(l={}),s===a&&(l=this,s--);s<a;s++)if(null!=(e=arguments[s]))for(t in e)n=l[t],o=e[t],l!==o&&(c&&o&&(E.isPlainObject(o)||(r=Array.isArray(o)))?(r?(r=!1,i=n&&Array.isArray(n)?n:[]):i=n&&E.isPlainObject(n)?n:{},l[t]=E.extend(c,i,o)):void 0!==o&&(l[t]=o));return l},E.extend({expando:\"jQuery\"+(\"3.2.1\"+Math.random()).replace(/\\D/g,\"\"),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return\"function\"===E.type(e)},isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=E.type(e);return(\"number\"===t||\"string\"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return!(!e||\"[object Object]\"!==i.call(e))&&(!(t=o(e))||\"function\"==typeof(n=h.call(t,\"constructor\")&&t.constructor)&&l.call(n)===c)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+\"\":\"object\"==typeof e||\"function\"==typeof e?n[i.call(e)]||\"object\":typeof e},globalEval:function(e){v(e)},camelCase:function(e){return e.replace(d,\"ms-\").replace(p,f)},each:function(e,t){var n,o=0;if(w(e))for(n=e.length;o<n&&!1!==t.call(e[o],o,e[o]);o++);else for(o in e)if(!1===t.call(e[o],o,e[o]))break;return e},trim:function(e){return null==e?\"\":(e+\"\").replace(u,\"\")},makeArray:function(e,t){var n=t||[];return null!=e&&(w(Object(e))?E.merge(n,\"string\"==typeof e?[e]:e):a.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:r.call(t,e,n)},merge:function(e,t){for(var n=+t.length,o=0,r=e.length;o<n;o++)e[r++]=t[o];return e.length=r,e},grep:function(e,t,n){for(var o=[],r=0,i=e.length,l=!n;r<i;r++)!t(e[r],r)!==l&&o.push(e[r]);return o},map:function(e,t,n){var o,r,i=0,l=[];if(w(e))for(o=e.length;i<o;i++)null!=(r=t(e[i],i,n))&&l.push(r);else for(i in e)null!=(r=t(e[i],i,n))&&l.push(r);return g.apply([],l)},guid:1,proxy:function(e,t){var n,o,r;if(\"string\"==typeof t&&(n=e[t],t=e,e=n),E.isFunction(e))return o=s.call(arguments,2),(r=function(){return e.apply(t||this,o.concat(s.call(arguments)))}).guid=e.guid=e.guid||E.guid++,r},now:Date.now,support:m}),\"function\"==typeof Symbol&&(E.fn[Symbol.iterator]=t[Symbol.iterator]),E.each(\"Boolean Number String Function Array Date RegExp Object Error Symbol\".split(\" \"),function(e,t){n[\"[object \"+t+\"]\"]=t.toLowerCase()});var y=\n      /*!\n               * Sizzle CSS Selector Engine v2.3.3\n               * https://sizzlejs.com/\n               *\n               * Copyright jQuery Foundation and other contributors\n               * Released under the MIT license\n               * http://jquery.org/license\n               *\n               * Date: 2016-08-08\n               */\n      function(n){var e,f,C,i,r,h,d,g,b,a,c,x,R,l,S,m,s,u,v,E=\"sizzle\"+1*new Date,w=n.document,k=0,o=0,p=le(),y=le(),T=le(),P=function(e,t){return e===t&&(c=!0),0},D={}.hasOwnProperty,t=[],A=t.pop,N=t.push,$=t.push,H=t.slice,L=function(e,t){for(var n=0,o=e.length;n<o;n++)if(e[n]===t)return n;return-1},_=\"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",F=\"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",I=\"(?:\\\\\\\\.|[\\\\w-]|[^\\0-\\\\xa0])+\",M=\"\\\\[\"+F+\"*(\"+I+\")(?:\"+F+\"*([*^$|!~]?=)\"+F+\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\"+I+\"))|)\"+F+\"*\\\\]\",W=\":(\"+I+\")(?:\\\\((('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\"+M+\")*)|.*)\\\\)|)\",j=new RegExp(F+\"+\",\"g\"),V=new RegExp(\"^\"+F+\"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\"+F+\"+$\",\"g\"),B=new RegExp(\"^\"+F+\"*,\"+F+\"*\"),q=new RegExp(\"^\"+F+\"*([>+~]|\"+F+\")\"+F+\"*\"),O=new RegExp(\"=\"+F+\"*([^\\\\]'\\\"]*?)\"+F+\"*\\\\]\",\"g\"),z=new RegExp(W),X=new RegExp(\"^\"+I+\"$\"),U={ID:new RegExp(\"^#(\"+I+\")\"),CLASS:new RegExp(\"^\\\\.(\"+I+\")\"),TAG:new RegExp(\"^(\"+I+\"|[*])\"),ATTR:new RegExp(\"^\"+M),PSEUDO:new RegExp(\"^\"+W),CHILD:new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\"+F+\"*(even|odd|(([+-]|)(\\\\d*)n|)\"+F+\"*(?:([+-]|)\"+F+\"*(\\\\d+)|))\"+F+\"*\\\\)|)\",\"i\"),bool:new RegExp(\"^(?:\"+_+\")$\",\"i\"),needsContext:new RegExp(\"^\"+F+\"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\"+F+\"*((?:-\\\\d)?\\\\d*)\"+F+\"*\\\\)|)(?=[^-]|$)\",\"i\")},K=/^(?:input|select|textarea|button)$/i,G=/^h\\d$/i,Y=/^[^{]+\\{\\s*\\[native \\w/,Q=/^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,J=/[+~]/,Z=new RegExp(\"\\\\\\\\([\\\\da-f]{1,6}\"+F+\"?|(\"+F+\")|.)\",\"ig\"),ee=function(e,t,n){var o=\"0x\"+t-65536;return o!=o||n?t:o<0?String.fromCharCode(o+65536):String.fromCharCode(o>>10|55296,1023&o|56320)},te=/([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,ne=function(e,t){return t?\"\\0\"===e?\"�\":e.slice(0,-1)+\"\\\\\"+e.charCodeAt(e.length-1).toString(16)+\" \":\"\\\\\"+e},oe=function(){x()},re=we(function(e){return!0===e.disabled&&(\"form\"in e||\"label\"in e)},{dir:\"parentNode\",next:\"legend\"});try{$.apply(t=H.call(w.childNodes),w.childNodes),t[w.childNodes.length].nodeType}catch(e){$={apply:t.length?function(e,t){N.apply(e,H.call(t))}:function(e,t){for(var n=e.length,o=0;e[n++]=t[o++];);e.length=n-1}}}function ie(e,t,n,o){var r,i,l,s,a,c,u,d=t&&t.ownerDocument,p=t?t.nodeType:9;if(n=n||[],\"string\"!=typeof e||!e||1!==p&&9!==p&&11!==p)return n;if(!o&&((t?t.ownerDocument||t:w)!==R&&x(t),t=t||R,S)){if(11!==p&&(a=Q.exec(e)))if(r=a[1]){if(9===p){if(!(l=t.getElementById(r)))return n;if(l.id===r)return n.push(l),n}else if(d&&(l=d.getElementById(r))&&v(t,l)&&l.id===r)return n.push(l),n}else{if(a[2])return $.apply(n,t.getElementsByTagName(e)),n;if((r=a[3])&&f.getElementsByClassName&&t.getElementsByClassName)return $.apply(n,t.getElementsByClassName(r)),n}if(f.qsa&&!T[e+\" \"]&&(!m||!m.test(e))){if(1!==p)d=t,u=e;else if(\"object\"!==t.nodeName.toLowerCase()){for((s=t.getAttribute(\"id\"))?s=s.replace(te,ne):t.setAttribute(\"id\",s=E),c=h(e),i=c.length;i--;)c[i]=\"#\"+s+\" \"+ve(c[i]);u=c.join(\",\"),d=J.test(e)&&ge(t.parentNode)||t}if(u)try{return $.apply(n,d.querySelectorAll(u)),n}catch(e){}finally{s===E&&t.removeAttribute(\"id\")}}}return g(e.replace(V,\"$1\"),t,n,o)}function le(){var o=[];return function e(t,n){o.push(t+\" \")>C.cacheLength&&delete e[o.shift()];return e[t+\" \"]=n}}function se(e){return e[E]=!0,e}function ae(e){var t=R.createElement(\"fieldset\");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ce(e,t){for(var n=e.split(\"|\"),o=n.length;o--;)C.attrHandle[n[o]]=t}function ue(e,t){var n=t&&e,o=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(o)return o;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(n){return function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&e.type===n}}function pe(n){return function(e){var t=e.nodeName.toLowerCase();return(\"input\"===t||\"button\"===t)&&e.type===n}}function fe(t){return function(e){return\"form\"in e?e.parentNode&&!1===e.disabled?\"label\"in e?\"label\"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&re(e)===t:e.disabled===t:\"label\"in e&&e.disabled===t}}function he(l){return se(function(i){return i=+i,se(function(e,t){for(var n,o=l([],e.length,i),r=o.length;r--;)e[n=o[r]]&&(e[n]=!(t[n]=e[n]))})})}function ge(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in f=ie.support={},r=ie.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&\"HTML\"!==t.nodeName},x=ie.setDocument=function(e){var t,n,o=e?e.ownerDocument||e:w;return o!==R&&9===o.nodeType&&o.documentElement&&(l=(R=o).documentElement,S=!r(R),w!==R&&(n=R.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener(\"unload\",oe,!1):n.attachEvent&&n.attachEvent(\"onunload\",oe)),f.attributes=ae(function(e){return e.className=\"i\",!e.getAttribute(\"className\")}),f.getElementsByTagName=ae(function(e){return e.appendChild(R.createComment(\"\")),!e.getElementsByTagName(\"*\").length}),f.getElementsByClassName=Y.test(R.getElementsByClassName),f.getById=ae(function(e){return l.appendChild(e).id=E,!R.getElementsByName||!R.getElementsByName(E).length}),f.getById?(C.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute(\"id\")===t}},C.find.ID=function(e,t){if(void 0!==t.getElementById&&S){var n=t.getElementById(e);return n?[n]:[]}}):(C.filter.ID=function(e){var n=e.replace(Z,ee);return function(e){var t=void 0!==e.getAttributeNode&&e.getAttributeNode(\"id\");return t&&t.value===n}},C.find.ID=function(e,t){if(void 0!==t.getElementById&&S){var n,o,r,i=t.getElementById(e);if(i){if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i];for(r=t.getElementsByName(e),o=0;i=r[o++];)if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i]}return[]}}),C.find.TAG=f.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):f.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,o=[],r=0,i=t.getElementsByTagName(e);if(\"*\"===e){for(;n=i[r++];)1===n.nodeType&&o.push(n);return o}return i},C.find.CLASS=f.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&S)return t.getElementsByClassName(e)},s=[],m=[],(f.qsa=Y.test(R.querySelectorAll))&&(ae(function(e){l.appendChild(e).innerHTML=\"<a id='\"+E+\"'></a><select id='\"+E+\"-\\r\\\\' msallowcapture=''><option selected=''></option></select>\",e.querySelectorAll(\"[msallowcapture^='']\").length&&m.push(\"[*^$]=\"+F+\"*(?:''|\\\"\\\")\"),e.querySelectorAll(\"[selected]\").length||m.push(\"\\\\[\"+F+\"*(?:value|\"+_+\")\"),e.querySelectorAll(\"[id~=\"+E+\"-]\").length||m.push(\"~=\"),e.querySelectorAll(\":checked\").length||m.push(\":checked\"),e.querySelectorAll(\"a#\"+E+\"+*\").length||m.push(\".#.+[+~]\")}),ae(function(e){e.innerHTML=\"<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>\";var t=R.createElement(\"input\");t.setAttribute(\"type\",\"hidden\"),e.appendChild(t).setAttribute(\"name\",\"D\"),e.querySelectorAll(\"[name=d]\").length&&m.push(\"name\"+F+\"*[*^$|!~]?=\"),2!==e.querySelectorAll(\":enabled\").length&&m.push(\":enabled\",\":disabled\"),l.appendChild(e).disabled=!0,2!==e.querySelectorAll(\":disabled\").length&&m.push(\":enabled\",\":disabled\"),e.querySelectorAll(\"*,:x\"),m.push(\",.*:\")})),(f.matchesSelector=Y.test(u=l.matches||l.webkitMatchesSelector||l.mozMatchesSelector||l.oMatchesSelector||l.msMatchesSelector))&&ae(function(e){f.disconnectedMatch=u.call(e,\"*\"),u.call(e,\"[s!='']:x\"),s.push(\"!=\",W)}),m=m.length&&new RegExp(m.join(\"|\")),s=s.length&&new RegExp(s.join(\"|\")),t=Y.test(l.compareDocumentPosition),v=t||Y.test(l.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,o=t&&t.parentNode;return e===o||!(!o||1!==o.nodeType||!(n.contains?n.contains(o):e.compareDocumentPosition&&16&e.compareDocumentPosition(o)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},P=t?function(e,t){if(e===t)return c=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!f.sortDetached&&t.compareDocumentPosition(e)===n?e===R||e.ownerDocument===w&&v(w,e)?-1:t===R||t.ownerDocument===w&&v(w,t)?1:a?L(a,e)-L(a,t):0:4&n?-1:1)}:function(e,t){if(e===t)return c=!0,0;var n,o=0,r=e.parentNode,i=t.parentNode,l=[e],s=[t];if(!r||!i)return e===R?-1:t===R?1:r?-1:i?1:a?L(a,e)-L(a,t):0;if(r===i)return ue(e,t);for(n=e;n=n.parentNode;)l.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;l[o]===s[o];)o++;return o?ue(l[o],s[o]):l[o]===w?-1:s[o]===w?1:0}),R},ie.matches=function(e,t){return ie(e,null,null,t)},ie.matchesSelector=function(e,t){if((e.ownerDocument||e)!==R&&x(e),t=t.replace(O,\"='$1']\"),f.matchesSelector&&S&&!T[t+\" \"]&&(!s||!s.test(t))&&(!m||!m.test(t)))try{var n=u.call(e,t);if(n||f.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){}return 0<ie(t,R,null,[e]).length},ie.contains=function(e,t){return(e.ownerDocument||e)!==R&&x(e),v(e,t)},ie.attr=function(e,t){(e.ownerDocument||e)!==R&&x(e);var n=C.attrHandle[t.toLowerCase()],o=n&&D.call(C.attrHandle,t.toLowerCase())?n(e,t,!S):void 0;return void 0!==o?o:f.attributes||!S?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},ie.escape=function(e){return(e+\"\").replace(te,ne)},ie.error=function(e){throw new Error(\"Syntax error, unrecognized expression: \"+e)},ie.uniqueSort=function(e){var t,n=[],o=0,r=0;if(c=!f.detectDuplicates,a=!f.sortStable&&e.slice(0),e.sort(P),c){for(;t=e[r++];)t===e[r]&&(o=n.push(r));for(;o--;)e.splice(n[o],1)}return a=null,e},i=ie.getText=function(e){var t,n=\"\",o=0,r=e.nodeType;if(r){if(1===r||9===r||11===r){if(\"string\"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===r||4===r)return e.nodeValue}else for(;t=e[o++];)n+=i(t);return n},(C=ie.selectors={cacheLength:50,createPseudo:se,match:U,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(Z,ee),e[3]=(e[3]||e[4]||e[5]||\"\").replace(Z,ee),\"~=\"===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]||ie.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]&&ie.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return U.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||\"\":n&&z.test(n)&&(t=h(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(Z,ee).toLowerCase();return\"*\"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+\" \"];return t||(t=new RegExp(\"(^|\"+F+\")\"+e+\"(\"+F+\"|$)\"))&&p(e,function(e){return t.test(\"string\"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute(\"class\")||\"\")})},ATTR:function(n,o,r){return function(e){var t=ie.attr(e,n);return null==t?\"!=\"===o:!o||(t+=\"\",\"=\"===o?t===r:\"!=\"===o?t!==r:\"^=\"===o?r&&0===t.indexOf(r):\"*=\"===o?r&&-1<t.indexOf(r):\"$=\"===o?r&&t.slice(-r.length)===r:\"~=\"===o?-1<(\" \"+t.replace(j,\" \")+\" \").indexOf(r):\"|=\"===o&&(t===r||t.slice(0,r.length+1)===r+\"-\"))}},CHILD:function(h,e,t,g,m){var v=\"nth\"!==h.slice(0,3),w=\"last\"!==h.slice(-4),y=\"of-type\"===e;return 1===g&&0===m?function(e){return!!e.parentNode}:function(e,t,n){var o,r,i,l,s,a,c=v!==w?\"nextSibling\":\"previousSibling\",u=e.parentNode,d=y&&e.nodeName.toLowerCase(),p=!n&&!y,f=!1;if(u){if(v){for(;c;){for(l=e;l=l[c];)if(y?l.nodeName.toLowerCase()===d:1===l.nodeType)return!1;a=c=\"only\"===h&&!a&&\"nextSibling\"}return!0}if(a=[w?u.firstChild:u.lastChild],w&&p){for(i=(l=u)[E]||(l[E]={}),r=i[l.uniqueID]||(i[l.uniqueID]={}),o=r[h]||[],s=o[0]===k&&o[1],f=s&&o[2],l=s&&u.childNodes[s];l=++s&&l&&l[c]||(f=s=0)||a.pop();)if(1===l.nodeType&&++f&&l===e){r[h]=[k,s,f];break}}else if(p&&(i=(l=e)[E]||(l[E]={}),r=i[l.uniqueID]||(i[l.uniqueID]={}),o=r[h]||[],s=o[0]===k&&o[1],f=s),!1===f)for(;(l=++s&&l&&l[c]||(f=s=0)||a.pop())&&((y?l.nodeName.toLowerCase()!==d:1!==l.nodeType)||!++f||(p&&(i=l[E]||(l[E]={}),(r=i[l.uniqueID]||(i[l.uniqueID]={}))[h]=[k,f]),l!==e)););return(f-=m)===g||f%g==0&&0<=f/g}}},PSEUDO:function(e,i){var t,l=C.pseudos[e]||C.setFilters[e.toLowerCase()]||ie.error(\"unsupported pseudo: \"+e);return l[E]?l(i):1<l.length?(t=[e,e,\"\",i],C.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,t){for(var n,o=l(e,i),r=o.length;r--;)n=L(e,o[r]),e[n]=!(t[n]=o[r])}):function(e){return l(e,0,t)}):l}},pseudos:{not:se(function(e){var o=[],r=[],s=d(e.replace(V,\"$1\"));return s[E]?se(function(e,t,n,o){for(var r,i=s(e,null,o,[]),l=e.length;l--;)(r=i[l])&&(e[l]=!(t[l]=r))}):function(e,t,n){return o[0]=e,s(o,null,n,r),o[0]=null,!r.pop()}}),has:se(function(t){return function(e){return 0<ie(t,e).length}}),contains:se(function(t){return t=t.replace(Z,ee),function(e){return-1<(e.textContent||e.innerText||i(e)).indexOf(t)}}),lang:se(function(n){return X.test(n||\"\")||ie.error(\"unsupported lang: \"+n),n=n.replace(Z,ee).toLowerCase(),function(e){var t;do{if(t=S?e.lang:e.getAttribute(\"xml:lang\")||e.getAttribute(\"lang\"))return(t=t.toLowerCase())===n||0===t.indexOf(n+\"-\")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===l},focus:function(e){return e===R.activeElement&&(!R.hasFocus||R.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:fe(!1),disabled:fe(!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!C.pseudos.empty(e)},header:function(e){return G.test(e.nodeName)},input:function(e){return K.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:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:he(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:he(function(e,t,n){for(var o=n<0?n+t:n;0<=--o;)e.push(o);return e}),gt:he(function(e,t,n){for(var o=n<0?n+t:n;++o<t;)e.push(o);return e})}}).pseudos.nth=C.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})C.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})C.pseudos[e]=pe(e);function me(){}function ve(e){for(var t=0,n=e.length,o=\"\";t<n;t++)o+=e[t].value;return o}function we(s,e,t){var a=e.dir,c=e.next,u=c||a,d=t&&\"parentNode\"===u,p=o++;return e.first?function(e,t,n){for(;e=e[a];)if(1===e.nodeType||d)return s(e,t,n);return!1}:function(e,t,n){var o,r,i,l=[k,p];if(n){for(;e=e[a];)if((1===e.nodeType||d)&&s(e,t,n))return!0}else for(;e=e[a];)if(1===e.nodeType||d)if(i=e[E]||(e[E]={}),r=i[e.uniqueID]||(i[e.uniqueID]={}),c&&c===e.nodeName.toLowerCase())e=e[a]||e;else{if((o=r[u])&&o[0]===k&&o[1]===p)return l[2]=o[2];if((r[u]=l)[2]=s(e,t,n))return!0}return!1}}function ye(r){return 1<r.length?function(e,t,n){for(var o=r.length;o--;)if(!r[o](e,t,n))return!1;return!0}:r[0]}function Ce(e,t,n,o,r){for(var i,l=[],s=0,a=e.length,c=null!=t;s<a;s++)(i=e[s])&&(n&&!n(i,o,r)||(l.push(i),c&&t.push(s)));return l}function be(f,h,g,m,v,e){return m&&!m[E]&&(m=be(m)),v&&!v[E]&&(v=be(v,e)),se(function(e,t,n,o){var r,i,l,s=[],a=[],c=t.length,u=e||function(e,t,n){for(var o=0,r=t.length;o<r;o++)ie(e,t[o],n);return n}(h||\"*\",n.nodeType?[n]:n,[]),d=!f||!e&&h?u:Ce(u,s,f,n,o),p=g?v||(e?f:c||m)?[]:t:d;if(g&&g(d,p,n,o),m)for(r=Ce(p,a),m(r,[],n,o),i=r.length;i--;)(l=r[i])&&(p[a[i]]=!(d[a[i]]=l));if(e){if(v||f){if(v){for(r=[],i=p.length;i--;)(l=p[i])&&r.push(d[i]=l);v(null,p=[],r,o)}for(i=p.length;i--;)(l=p[i])&&-1<(r=v?L(e,l):s[i])&&(e[r]=!(t[r]=l))}}else p=Ce(p===t?p.splice(c,p.length):p),v?v(null,t,p,o):$.apply(t,p)})}function xe(e){for(var r,t,n,o=e.length,i=C.relative[e[0].type],l=i||C.relative[\" \"],s=i?1:0,a=we(function(e){return e===r},l,!0),c=we(function(e){return-1<L(r,e)},l,!0),u=[function(e,t,n){var o=!i&&(n||t!==b)||((r=t).nodeType?a(e,t,n):c(e,t,n));return r=null,o}];s<o;s++)if(t=C.relative[e[s].type])u=[we(ye(u),t)];else{if((t=C.filter[e[s].type].apply(null,e[s].matches))[E]){for(n=++s;n<o&&!C.relative[e[n].type];n++);return be(1<s&&ye(u),1<s&&ve(e.slice(0,s-1).concat({value:\" \"===e[s-2].type?\"*\":\"\"})).replace(V,\"$1\"),t,s<n&&xe(e.slice(s,n)),n<o&&xe(e=e.slice(n)),n<o&&ve(e))}u.push(t)}return ye(u)}return me.prototype=C.filters=C.pseudos,C.setFilters=new me,h=ie.tokenize=function(e,t){var n,o,r,i,l,s,a,c=y[e+\" \"];if(c)return t?0:c.slice(0);for(l=e,s=[],a=C.preFilter;l;){for(i in n&&!(o=B.exec(l))||(o&&(l=l.slice(o[0].length)||l),s.push(r=[])),n=!1,(o=q.exec(l))&&(n=o.shift(),r.push({value:n,type:o[0].replace(V,\" \")}),l=l.slice(n.length)),C.filter)!(o=U[i].exec(l))||a[i]&&!(o=a[i](o))||(n=o.shift(),r.push({value:n,type:i,matches:o}),l=l.slice(n.length));if(!n)break}return t?l.length:l?ie.error(e):y(e,s).slice(0)},d=ie.compile=function(e,t){var n,m,v,w,y,o,r=[],i=[],l=T[e+\" \"];if(!l){for(t||(t=h(e)),n=t.length;n--;)(l=xe(t[n]))[E]?r.push(l):i.push(l);(l=T(e,(m=i,w=0<(v=r).length,y=0<m.length,o=function(e,t,n,o,r){var i,l,s,a=0,c=\"0\",u=e&&[],d=[],p=b,f=e||y&&C.find.TAG(\"*\",r),h=k+=null==p?1:Math.random()||.1,g=f.length;for(r&&(b=t===R||t||r);c!==g&&null!=(i=f[c]);c++){if(y&&i){for(l=0,t||i.ownerDocument===R||(x(i),n=!S);s=m[l++];)if(s(i,t||R,n)){o.push(i);break}r&&(k=h)}w&&((i=!s&&i)&&a--,e&&u.push(i))}if(a+=c,w&&c!==a){for(l=0;s=v[l++];)s(u,d,t,n);if(e){if(0<a)for(;c--;)u[c]||d[c]||(d[c]=A.call(o));d=Ce(d)}$.apply(o,d),r&&!e&&0<d.length&&1<a+v.length&&ie.uniqueSort(o)}return r&&(k=h,b=p),u},w?se(o):o))).selector=e}return l},g=ie.select=function(e,t,n,o){var r,i,l,s,a,c=\"function\"==typeof e&&e,u=!o&&h(e=c.selector||e);if(n=n||[],1===u.length){if(2<(i=u[0]=u[0].slice(0)).length&&\"ID\"===(l=i[0]).type&&9===t.nodeType&&S&&C.relative[i[1].type]){if(!(t=(C.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;c&&(t=t.parentNode),e=e.slice(i.shift().value.length)}for(r=U.needsContext.test(e)?0:i.length;r--&&(l=i[r],!C.relative[s=l.type]);)if((a=C.find[s])&&(o=a(l.matches[0].replace(Z,ee),J.test(i[0].type)&&ge(t.parentNode)||t))){if(i.splice(r,1),!(e=o.length&&ve(i)))return $.apply(n,o),n;break}}return(c||d(e,u))(o,t,!S,n,!t||J.test(e)&&ge(t.parentNode)||t),n},f.sortStable=E.split(\"\").sort(P).join(\"\")===E,f.detectDuplicates=!!c,x(),f.sortDetached=ae(function(e){return 1&e.compareDocumentPosition(R.createElement(\"fieldset\"))}),ae(function(e){return e.innerHTML=\"<a href='#'></a>\",\"#\"===e.firstChild.getAttribute(\"href\")})||ce(\"type|href|height|width\",function(e,t,n){if(!n)return e.getAttribute(t,\"type\"===t.toLowerCase()?1:2)}),f.attributes&&ae(function(e){return e.innerHTML=\"<input/>\",e.firstChild.setAttribute(\"value\",\"\"),\"\"===e.firstChild.getAttribute(\"value\")})||ce(\"value\",function(e,t,n){if(!n&&\"input\"===e.nodeName.toLowerCase())return e.defaultValue}),ae(function(e){return null==e.getAttribute(\"disabled\")})||ce(_,function(e,t,n){var o;if(!n)return!0===e[t]?t.toLowerCase():(o=e.getAttributeNode(t))&&o.specified?o.value:null}),ie}(R);E.find=y,E.expr=y.selectors,E.expr[\":\"]=E.expr.pseudos,E.uniqueSort=E.unique=y.uniqueSort,E.text=y.getText,E.isXMLDoc=y.isXML,E.contains=y.contains,E.escapeSelector=y.escape;var C=function(e,t,n){for(var o=[],r=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(r&&E(e).is(n))break;o.push(e)}return o},b=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},x=E.expr.match.needsContext;function k(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var T=/^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i,P=/^.[^:#\\[\\.,]*$/;function D(e,n,o){return E.isFunction(n)?E.grep(e,function(e,t){return!!n.call(e,t,e)!==o}):n.nodeType?E.grep(e,function(e){return e===n!==o}):\"string\"!=typeof n?E.grep(e,function(e){return-1<r.call(n,e)!==o}):P.test(n)?E.filter(n,e,o):(n=E.filter(n,e),E.grep(e,function(e){return-1<r.call(n,e)!==o&&1===e.nodeType}))}E.filter=function(e,t,n){var o=t[0];return n&&(e=\":not(\"+e+\")\"),1===t.length&&1===o.nodeType?E.find.matchesSelector(o,e)?[o]:[]:E.find.matches(e,E.grep(t,function(e){return 1===e.nodeType}))},E.fn.extend({find:function(e){var t,n,o=this.length,r=this;if(\"string\"!=typeof e)return this.pushStack(E(e).filter(function(){for(t=0;t<o;t++)if(E.contains(r[t],this))return!0}));for(n=this.pushStack([]),t=0;t<o;t++)E.find(e,r[t],n);return 1<o?E.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&&x.test(e)?E(e):e||[],!1).length}});var A,N=/^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/,$=E.fn.init=function(e,t,n){var o,r;if(!e)return this;if(n=n||A,\"string\"==typeof e){if(!(o=\"<\"===e[0]&&\">\"===e[e.length-1]&&3<=e.length?[null,e,null]:N.exec(e))||!o[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(o[1]){if(t=t instanceof E?t[0]:t,E.merge(this,E.parseHTML(o[1],t&&t.nodeType?t.ownerDocument||t:S,!0)),T.test(o[1])&&E.isPlainObject(t))for(o in t)E.isFunction(this[o])?this[o](t[o]):this.attr(o,t[o]);return this}return(r=S.getElementById(o[2]))&&(this[0]=r,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):E.isFunction(e)?void 0!==n.ready?n.ready(e):e(E):E.makeArray(e,this)};$.prototype=E.fn,A=E(S);var H=/^(?:parents|prev(?:Until|All))/,L={children:!0,contents:!0,next:!0,prev:!0};function _(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}E.fn.extend({has:function(e){var t=E(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(E.contains(this,t[e]))return!0})},closest:function(e,t){var n,o=0,r=this.length,i=[],l=\"string\"!=typeof e&&E(e);if(!x.test(e))for(;o<r;o++)for(n=this[o];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(l?-1<l.index(n):1===n.nodeType&&E.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(1<i.length?E.uniqueSort(i):i)},index:function(e){return e?\"string\"==typeof e?r.call(E(e),this[0]):r.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(E.uniqueSort(E.merge(this.get(),E(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),E.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return C(e,\"parentNode\")},parentsUntil:function(e,t,n){return C(e,\"parentNode\",n)},next:function(e){return _(e,\"nextSibling\")},prev:function(e){return _(e,\"previousSibling\")},nextAll:function(e){return C(e,\"nextSibling\")},prevAll:function(e){return C(e,\"previousSibling\")},nextUntil:function(e,t,n){return C(e,\"nextSibling\",n)},prevUntil:function(e,t,n){return C(e,\"previousSibling\",n)},siblings:function(e){return b((e.parentNode||{}).firstChild,e)},children:function(e){return b(e.firstChild)},contents:function(e){return k(e,\"iframe\")?e.contentDocument:(k(e,\"template\")&&(e=e.content||e),E.merge([],e.childNodes))}},function(o,r){E.fn[o]=function(e,t){var n=E.map(this,r,e);return\"Until\"!==o.slice(-5)&&(t=e),t&&\"string\"==typeof t&&(n=E.filter(t,n)),1<this.length&&(L[o]||E.uniqueSort(n),H.test(o)&&n.reverse()),this.pushStack(n)}});var F=/[^\\x20\\t\\r\\n\\f]+/g;function I(e){return e}function M(e){throw e}function W(e,t,n,o){var r;try{e&&E.isFunction(r=e.promise)?r.call(e).done(t).fail(n):e&&E.isFunction(r=e.then)?r.call(e,t,n):t.apply(void 0,[e].slice(o))}catch(e){n.apply(void 0,[e])}}E.Callbacks=function(o){var e,n;o=\"string\"==typeof o?(e=o,n={},E.each(e.match(F)||[],function(e,t){n[t]=!0}),n):E.extend({},o);var r,t,i,l,s=[],a=[],c=-1,u=function(){for(l=l||o.once,i=r=!0;a.length;c=-1)for(t=a.shift();++c<s.length;)!1===s[c].apply(t[0],t[1])&&o.stopOnFalse&&(c=s.length,t=!1);o.memory||(t=!1),r=!1,l&&(s=t?[]:\"\")},d={add:function(){return s&&(t&&!r&&(c=s.length-1,a.push(t)),function n(e){E.each(e,function(e,t){E.isFunction(t)?o.unique&&d.has(t)||s.push(t):t&&t.length&&\"string\"!==E.type(t)&&n(t)})}(arguments),t&&!r&&u()),this},remove:function(){return E.each(arguments,function(e,t){for(var n;-1<(n=E.inArray(t,s,n));)s.splice(n,1),n<=c&&c--}),this},has:function(e){return e?-1<E.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return l=a=[],s=t=\"\",this},disabled:function(){return!s},lock:function(){return l=a=[],t||r||(s=t=\"\"),this},locked:function(){return!!l},fireWith:function(e,t){return l||(t=[e,(t=t||[]).slice?t.slice():t],a.push(t),r||u()),this},fire:function(){return d.fireWith(this,arguments),this},fired:function(){return!!i}};return d},E.extend({Deferred:function(e){var i=[[\"notify\",\"progress\",E.Callbacks(\"memory\"),E.Callbacks(\"memory\"),2],[\"resolve\",\"done\",E.Callbacks(\"once memory\"),E.Callbacks(\"once memory\"),0,\"resolved\"],[\"reject\",\"fail\",E.Callbacks(\"once memory\"),E.Callbacks(\"once memory\"),1,\"rejected\"]],r=\"pending\",l={state:function(){return r},always:function(){return s.done(arguments).fail(arguments),this},catch:function(e){return l.then(null,e)},pipe:function(){var r=arguments;return E.Deferred(function(o){E.each(i,function(e,t){var n=E.isFunction(r[t[4]])&&r[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&E.isFunction(e.promise)?e.promise().progress(o.notify).done(o.resolve).fail(o.reject):o[t[0]+\"With\"](this,n?[e]:arguments)})}),r=null}).promise()},then:function(t,n,o){var a=0;function c(r,i,l,s){return function(){var n=this,o=arguments,e=function(){var e,t;if(!(r<a)){if((e=l.apply(n,o))===i.promise())throw new TypeError(\"Thenable self-resolution\");t=e&&(\"object\"==typeof e||\"function\"==typeof e)&&e.then,E.isFunction(t)?s?t.call(e,c(a,i,I,s),c(a,i,M,s)):(a++,t.call(e,c(a,i,I,s),c(a,i,M,s),c(a,i,I,i.notifyWith))):(l!==I&&(n=void 0,o=[e]),(s||i.resolveWith)(n,o))}},t=s?e:function(){try{e()}catch(e){E.Deferred.exceptionHook&&E.Deferred.exceptionHook(e,t.stackTrace),a<=r+1&&(l!==M&&(n=void 0,o=[e]),i.rejectWith(n,o))}};r?t():(E.Deferred.getStackHook&&(t.stackTrace=E.Deferred.getStackHook()),R.setTimeout(t))}}return E.Deferred(function(e){i[0][3].add(c(0,e,E.isFunction(o)?o:I,e.notifyWith)),i[1][3].add(c(0,e,E.isFunction(t)?t:I)),i[2][3].add(c(0,e,E.isFunction(n)?n:M))}).promise()},promise:function(e){return null!=e?E.extend(e,l):l}},s={};return E.each(i,function(e,t){var n=t[2],o=t[5];l[t[1]]=n.add,o&&n.add(function(){r=o},i[3-e][2].disable,i[0][2].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+\"With\"](this===s?void 0:this,arguments),this},s[t[0]+\"With\"]=n.fireWith}),l.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,o=Array(t),r=s.call(arguments),i=E.Deferred(),l=function(t){return function(e){o[t]=this,r[t]=1<arguments.length?s.call(arguments):e,--n||i.resolveWith(o,r)}};if(n<=1&&(W(e,i.done(l(t)).resolve,i.reject,!n),\"pending\"===i.state()||E.isFunction(r[t]&&r[t].then)))return i.then();for(;t--;)W(r[t],l(t),i.reject);return i.promise()}});var j=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;E.Deferred.exceptionHook=function(e,t){R.console&&R.console.warn&&e&&j.test(e.name)&&R.console.warn(\"jQuery.Deferred exception: \"+e.message,e.stack,t)},E.readyException=function(e){R.setTimeout(function(){throw e})};var V=E.Deferred();function B(){S.removeEventListener(\"DOMContentLoaded\",B),R.removeEventListener(\"load\",B),E.ready()}E.fn.ready=function(e){return V.then(e).catch(function(e){E.readyException(e)}),this},E.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--E.readyWait:E.isReady)||(E.isReady=!0)!==e&&0<--E.readyWait||V.resolveWith(S,[E])}}),E.ready.then=V.then,\"complete\"===S.readyState||\"loading\"!==S.readyState&&!S.documentElement.doScroll?R.setTimeout(E.ready):(S.addEventListener(\"DOMContentLoaded\",B),R.addEventListener(\"load\",B));var q=function(e,t,n,o,r,i,l){var s=0,a=e.length,c=null==n;if(\"object\"===E.type(n))for(s in r=!0,n)q(e,t,s,n[s],!0,i,l);else if(void 0!==o&&(r=!0,E.isFunction(o)||(l=!0),c&&(l?(t.call(e,o),t=null):(c=t,t=function(e,t,n){return c.call(E(e),n)})),t))for(;s<a;s++)t(e[s],n,l?o:o.call(e[s],s,t(e[s],n)));return r?e:c?t.call(e):a?t(e[0],n):i},O=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function z(){this.expando=E.expando+z.uid++}z.uid=1,z.prototype={cache:function(e){var t=e[this.expando];return t||(t={},O(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var o,r=this.cache(e);if(\"string\"==typeof t)r[E.camelCase(t)]=n;else for(o in t)r[E.camelCase(o)]=t[o];return r},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][E.camelCase(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,o=e[this.expando];if(void 0!==o){if(void 0!==t){t=Array.isArray(t)?t.map(E.camelCase):(t=E.camelCase(t))in o?[t]:t.match(F)||[],n=t.length;for(;n--;)delete o[t[n]]}(void 0===t||E.isEmptyObject(o))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!E.isEmptyObject(t)}};var X=new z,U=new z,K=/^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,G=/[A-Z]/g;function Y(e,t,n){var o;if(void 0===n&&1===e.nodeType)if(o=\"data-\"+t.replace(G,\"-$&\").toLowerCase(),\"string\"==typeof(n=e.getAttribute(o))){try{n=function(e){if(\"true\"===e)return!0;if(\"false\"===e)return!1;if(\"null\"===e)return null;if(e===+e+\"\")return+e;if(K.test(e))return JSON.parse(e);return e}(n)}catch(e){}U.set(e,t,n)}else n=void 0;return n}E.extend({hasData:function(e){return U.hasData(e)||X.hasData(e)},data:function(e,t,n){return U.access(e,t,n)},removeData:function(e,t){U.remove(e,t)},_data:function(e,t,n){return X.access(e,t,n)},_removeData:function(e,t){X.remove(e,t)}}),E.fn.extend({data:function(n,e){var t,o,r,i=this[0],l=i&&i.attributes;if(void 0===n){if(this.length&&(r=U.get(i),1===i.nodeType&&!X.get(i,\"hasDataAttrs\"))){for(t=l.length;t--;)l[t]&&0===(o=l[t].name).indexOf(\"data-\")&&(o=E.camelCase(o.slice(5)),Y(i,o,r[o]));X.set(i,\"hasDataAttrs\",!0)}return r}return\"object\"==typeof n?this.each(function(){U.set(this,n)}):q(this,function(e){var t;if(i&&void 0===e)return void 0!==(t=U.get(i,n))?t:void 0!==(t=Y(i,n))?t:void 0;this.each(function(){U.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){U.remove(this,e)})}}),E.extend({queue:function(e,t,n){var o;if(e)return t=(t||\"fx\")+\"queue\",o=X.get(e,t),n&&(!o||Array.isArray(n)?o=X.access(e,t,E.makeArray(n)):o.push(n)),o||[]},dequeue:function(e,t){t=t||\"fx\";var n=E.queue(e,t),o=n.length,r=n.shift(),i=E._queueHooks(e,t);\"inprogress\"===r&&(r=n.shift(),o--),r&&(\"fx\"===t&&n.unshift(\"inprogress\"),delete i.stop,r.call(e,function(){E.dequeue(e,t)},i)),!o&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+\"queueHooks\";return X.get(e,n)||X.access(e,n,{empty:E.Callbacks(\"once memory\").add(function(){X.remove(e,[t+\"queue\",n])})})}}),E.fn.extend({queue:function(t,n){var e=2;return\"string\"!=typeof t&&(n=t,t=\"fx\",e--),arguments.length<e?E.queue(this[0],t):void 0===n?this:this.each(function(){var e=E.queue(this,t,n);E._queueHooks(this,t),\"fx\"===t&&\"inprogress\"!==e[0]&&E.dequeue(this,t)})},dequeue:function(e){return this.each(function(){E.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||\"fx\",[])},promise:function(e,t){var n,o=1,r=E.Deferred(),i=this,l=this.length,s=function(){--o||r.resolveWith(i,[i])};for(\"string\"!=typeof e&&(t=e,e=void 0),e=e||\"fx\";l--;)(n=X.get(i[l],e+\"queueHooks\"))&&n.empty&&(o++,n.empty.add(s));return s(),r.promise(t)}});var Q=/[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source,J=new RegExp(\"^(?:([+-])=|)(\"+Q+\")([a-z%]*)$\",\"i\"),Z=[\"Top\",\"Right\",\"Bottom\",\"Left\"],ee=function(e,t){return\"none\"===(e=t||e).style.display||\"\"===e.style.display&&E.contains(e.ownerDocument,e)&&\"none\"===E.css(e,\"display\")},te=function(e,t,n,o){var r,i,l={};for(i in t)l[i]=e.style[i],e.style[i]=t[i];for(i in r=n.apply(e,o||[]),t)e.style[i]=l[i];return r};function ne(e,t,n,o){var r,i=1,l=20,s=o?function(){return o.cur()}:function(){return E.css(e,t,\"\")},a=s(),c=n&&n[3]||(E.cssNumber[t]?\"\":\"px\"),u=(E.cssNumber[t]||\"px\"!==c&&+a)&&J.exec(E.css(e,t));if(u&&u[3]!==c)for(c=c||u[3],n=n||[],u=+a||1;u/=i=i||\".5\",E.style(e,t,u+c),i!==(i=s()/a)&&1!==i&&--l;);return n&&(u=+u||+a||0,r=n[1]?u+(n[1]+1)*n[2]:+n[2],o&&(o.unit=c,o.start=u,o.end=r)),r}var oe={};function re(e){var t,n=e.ownerDocument,o=e.nodeName,r=oe[o];return r||(t=n.body.appendChild(n.createElement(o)),r=E.css(t,\"display\"),t.parentNode.removeChild(t),\"none\"===r&&(r=\"block\"),oe[o]=r)}function ie(e,t){for(var n,o,r=[],i=0,l=e.length;i<l;i++)(o=e[i]).style&&(n=o.style.display,t?(\"none\"===n&&(r[i]=X.get(o,\"display\")||null,r[i]||(o.style.display=\"\")),\"\"===o.style.display&&ee(o)&&(r[i]=re(o))):\"none\"!==n&&(r[i]=\"none\",X.set(o,\"display\",n)));for(i=0;i<l;i++)null!=r[i]&&(e[i].style.display=r[i]);return e}E.fn.extend({show:function(){return ie(this,!0)},hide:function(){return ie(this)},toggle:function(e){return\"boolean\"==typeof e?e?this.show():this.hide():this.each(function(){ee(this)?E(this).show():E(this).hide()})}});var le=/^(?:checkbox|radio)$/i,se=/<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]+)/i,ae=/^$|\\/(?:java|ecma)script/i,ce={option:[1,\"<select multiple='multiple'>\",\"</select>\"],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 ue(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||\"*\"):void 0!==e.querySelectorAll?e.querySelectorAll(t||\"*\"):[],void 0===t||t&&k(e,t)?E.merge([e],n):n}function de(e,t){for(var n=0,o=e.length;n<o;n++)X.set(e[n],\"globalEval\",!t||X.get(t[n],\"globalEval\"))}ce.optgroup=ce.option,ce.tbody=ce.tfoot=ce.colgroup=ce.caption=ce.thead,ce.th=ce.td;var pe,fe,he,ge=/<|&#?\\w+;/;function me(e,t,n,o,r){for(var i,l,s,a,c,u,d=t.createDocumentFragment(),p=[],f=0,h=e.length;f<h;f++)if((i=e[f])||0===i)if(\"object\"===E.type(i))E.merge(p,i.nodeType?[i]:i);else if(ge.test(i)){for(l=l||d.appendChild(t.createElement(\"div\")),s=(se.exec(i)||[\"\",\"\"])[1].toLowerCase(),a=ce[s]||ce._default,l.innerHTML=a[1]+E.htmlPrefilter(i)+a[2],u=a[0];u--;)l=l.lastChild;E.merge(p,l.childNodes),(l=d.firstChild).textContent=\"\"}else p.push(t.createTextNode(i));for(d.textContent=\"\",f=0;i=p[f++];)if(o&&-1<E.inArray(i,o))r&&r.push(i);else if(c=E.contains(i.ownerDocument,i),l=ue(d.appendChild(i),\"script\"),c&&de(l),n)for(u=0;i=l[u++];)ae.test(i.type||\"\")&&n.push(i);return d}pe=S.createDocumentFragment(),fe=pe.appendChild(S.createElement(\"div\")),(he=S.createElement(\"input\")).setAttribute(\"type\",\"radio\"),he.setAttribute(\"checked\",\"checked\"),he.setAttribute(\"name\",\"t\"),fe.appendChild(he),m.checkClone=fe.cloneNode(!0).cloneNode(!0).lastChild.checked,fe.innerHTML=\"<textarea>x</textarea>\",m.noCloneChecked=!!fe.cloneNode(!0).lastChild.defaultValue;var ve=S.documentElement,we=/^key/,ye=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\\.(.+)|)/;function be(){return!0}function xe(){return!1}function Re(){try{return S.activeElement}catch(e){}}function Se(e,t,n,o,r,i){var l,s;if(\"object\"==typeof t){for(s in\"string\"!=typeof n&&(o=o||n,n=void 0),t)Se(e,s,n,o,t[s],i);return e}if(null==o&&null==r?(r=n,o=n=void 0):null==r&&(\"string\"==typeof n?(r=o,o=void 0):(r=o,o=n,n=void 0)),!1===r)r=xe;else if(!r)return e;return 1===i&&(l=r,(r=function(e){return E().off(e),l.apply(this,arguments)}).guid=l.guid||(l.guid=E.guid++)),e.each(function(){E.event.add(this,t,r,o,n)})}E.event={global:{},add:function(t,e,n,o,r){var i,l,s,a,c,u,d,p,f,h,g,m=X.get(t);if(m)for(n.handler&&(n=(i=n).handler,r=i.selector),r&&E.find.matchesSelector(ve,r),n.guid||(n.guid=E.guid++),(a=m.events)||(a=m.events={}),(l=m.handle)||(l=m.handle=function(e){return void 0!==E&&E.event.triggered!==e.type?E.event.dispatch.apply(t,arguments):void 0}),e=(e||\"\").match(F)||[\"\"],c=e.length;c--;)s=Ce.exec(e[c])||[],f=g=s[1],h=(s[2]||\"\").split(\".\").sort(),f&&(d=E.event.special[f]||{},f=(r?d.delegateType:d.bindType)||f,d=E.event.special[f]||{},u=E.extend({type:f,origType:g,data:o,handler:n,guid:n.guid,selector:r,needsContext:r&&E.expr.match.needsContext.test(r),namespace:h.join(\".\")},i),(p=a[f])||((p=a[f]=[]).delegateCount=0,d.setup&&!1!==d.setup.call(t,o,h,l)||t.addEventListener&&t.addEventListener(f,l)),d.add&&(d.add.call(t,u),u.handler.guid||(u.handler.guid=n.guid)),r?p.splice(p.delegateCount++,0,u):p.push(u),E.event.global[f]=!0)},remove:function(e,t,n,o,r){var i,l,s,a,c,u,d,p,f,h,g,m=X.hasData(e)&&X.get(e);if(m&&(a=m.events)){for(t=(t||\"\").match(F)||[\"\"],c=t.length;c--;)if(s=Ce.exec(t[c])||[],f=g=s[1],h=(s[2]||\"\").split(\".\").sort(),f){for(d=E.event.special[f]||{},f=(o?d.delegateType:d.bindType)||f,p=a[f]||[],s=s[2]&&new RegExp(\"(^|\\\\.)\"+h.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"),l=i=p.length;i--;)u=p[i],!r&&g!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||o&&o!==u.selector&&(\"**\"!==o||!u.selector)||(p.splice(i,1),u.selector&&p.delegateCount--,d.remove&&d.remove.call(e,u));l&&!p.length&&(d.teardown&&!1!==d.teardown.call(e,h,m.handle)||E.removeEvent(e,f,m.handle),delete a[f])}else for(f in a)E.event.remove(e,f+t[c],n,o,!0);E.isEmptyObject(a)&&X.remove(e,\"handle events\")}},dispatch:function(e){var t,n,o,r,i,l,s=E.event.fix(e),a=new Array(arguments.length),c=(X.get(this,\"events\")||{})[s.type]||[],u=E.event.special[s.type]||{};for(a[0]=s,t=1;t<arguments.length;t++)a[t]=arguments[t];if(s.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,s)){for(l=E.event.handlers.call(this,s,c),t=0;(r=l[t++])&&!s.isPropagationStopped();)for(s.currentTarget=r.elem,n=0;(i=r.handlers[n++])&&!s.isImmediatePropagationStopped();)s.rnamespace&&!s.rnamespace.test(i.namespace)||(s.handleObj=i,s.data=i.data,void 0!==(o=((E.event.special[i.origType]||{}).handle||i.handler).apply(r.elem,a))&&!1===(s.result=o)&&(s.preventDefault(),s.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,o,r,i,l,s=[],a=t.delegateCount,c=e.target;if(a&&c.nodeType&&!(\"click\"===e.type&&1<=e.button))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&(\"click\"!==e.type||!0!==c.disabled)){for(i=[],l={},n=0;n<a;n++)o=t[n],r=o.selector+\" \",void 0===l[r]&&(l[r]=o.needsContext?-1<E(r,this).index(c):E.find(r,this,null,[c]).length),l[r]&&i.push(o);i.length&&s.push({elem:c,handlers:i})}return c=this,a<t.length&&s.push({elem:c,handlers:t.slice(a)}),s},addProp:function(t,e){Object.defineProperty(E.Event.prototype,t,{enumerable:!0,configurable:!0,get:E.isFunction(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[E.expando]?e:new E.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==Re()&&this.focus)return this.focus(),!1},delegateType:\"focusin\"},blur:{trigger:function(){if(this===Re()&&this.blur)return this.blur(),!1},delegateType:\"focusout\"},click:{trigger:function(){if(\"checkbox\"===this.type&&this.click&&k(this,\"input\"))return this.click(),!1},_default:function(e){return k(e.target,\"a\")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},E.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},E.Event=function(e,t){if(!(this instanceof E.Event))return new E.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?be:xe,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&&E.extend(this,t),this.timeStamp=e&&e.timeStamp||E.now(),this[E.expando]=!0},E.Event.prototype={constructor:E.Event,isDefaultPrevented:xe,isPropagationStopped:xe,isImmediatePropagationStopped:xe,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=be,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=be,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=be,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},E.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,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&&ye.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},E.event.addProp),E.each({mouseenter:\"mouseover\",mouseleave:\"mouseout\",pointerenter:\"pointerover\",pointerleave:\"pointerout\"},function(e,r){E.event.special[e]={delegateType:r,bindType:r,handle:function(e){var t,n=e.relatedTarget,o=e.handleObj;return n&&(n===this||E.contains(this,n))||(e.type=o.origType,t=o.handler.apply(this,arguments),e.type=r),t}}}),E.fn.extend({on:function(e,t,n,o){return Se(this,e,t,n,o)},one:function(e,t,n,o){return Se(this,e,t,n,o,1)},off:function(e,t,n){var o,r;if(e&&e.preventDefault&&e.handleObj)return o=e.handleObj,E(e.delegateTarget).off(o.namespace?o.origType+\".\"+o.namespace:o.origType,o.selector,o.handler),this;if(\"object\"==typeof e){for(r in e)this.off(r,t,e[r]);return this}return!1!==t&&\"function\"!=typeof t||(n=t,t=void 0),!1===n&&(n=xe),this.each(function(){E.event.remove(this,e,n,t)})}});var Ee=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)[^>]*)\\/>/gi,ke=/<script|<style|<link/i,Te=/checked\\s*(?:[^=]|=\\s*.checked.)/i,Pe=/^true\\/(.*)/,De=/^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g;function Ae(e,t){return k(e,\"table\")&&k(11!==t.nodeType?t:t.firstChild,\"tr\")&&E(\">tbody\",e)[0]||e}function Ne(e){return e.type=(null!==e.getAttribute(\"type\"))+\"/\"+e.type,e}function $e(e){var t=Pe.exec(e.type);return t?e.type=t[1]:e.removeAttribute(\"type\"),e}function He(e,t){var n,o,r,i,l,s,a,c;if(1===t.nodeType){if(X.hasData(e)&&(i=X.access(e),l=X.set(t,i),c=i.events))for(r in delete l.handle,l.events={},c)for(n=0,o=c[r].length;n<o;n++)E.event.add(t,r,c[r][n]);U.hasData(e)&&(s=U.access(e),a=E.extend({},s),U.set(t,a))}}function Le(e,t){var n=t.nodeName.toLowerCase();\"input\"===n&&le.test(e.type)?t.checked=e.checked:\"input\"!==n&&\"textarea\"!==n||(t.defaultValue=e.defaultValue)}function _e(n,o,r,i){o=g.apply([],o);var e,t,l,s,a,c,u=0,d=n.length,p=d-1,f=o[0],h=E.isFunction(f);if(h||1<d&&\"string\"==typeof f&&!m.checkClone&&Te.test(f))return n.each(function(e){var t=n.eq(e);h&&(o[0]=f.call(this,e,t.html())),_e(t,o,r,i)});if(d&&(e=me(o,n[0].ownerDocument,!1,n,i),t=e.firstChild,1===e.childNodes.length&&(e=t),t||i)){for(l=E.map(ue(e,\"script\"),Ne),s=l.length;u<d;u++)a=e,u!==p&&(a=E.clone(a,!0,!0),s&&E.merge(l,ue(a,\"script\"))),r.call(n[u],a,u);if(s)for(c=l[l.length-1].ownerDocument,E.map(l,$e),u=0;u<s;u++)a=l[u],ae.test(a.type||\"\")&&!X.access(a,\"globalEval\")&&E.contains(c,a)&&(a.src?E._evalUrl&&E._evalUrl(a.src):v(a.textContent.replace(De,\"\"),c))}return n}function Fe(e,t,n){for(var o,r=t?E.filter(t,e):e,i=0;null!=(o=r[i]);i++)n||1!==o.nodeType||E.cleanData(ue(o)),o.parentNode&&(n&&E.contains(o.ownerDocument,o)&&de(ue(o,\"script\")),o.parentNode.removeChild(o));return e}E.extend({htmlPrefilter:function(e){return e.replace(Ee,\"<$1></$2>\")},clone:function(e,t,n){var o,r,i,l,s=e.cloneNode(!0),a=E.contains(e.ownerDocument,e);if(!(m.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||E.isXMLDoc(e)))for(l=ue(s),i=ue(e),o=0,r=i.length;o<r;o++)Le(i[o],l[o]);if(t)if(n)for(i=i||ue(e),l=l||ue(s),o=0,r=i.length;o<r;o++)He(i[o],l[o]);else He(e,s);return 0<(l=ue(s,\"script\")).length&&de(l,!a&&ue(e,\"script\")),s},cleanData:function(e){for(var t,n,o,r=E.event.special,i=0;void 0!==(n=e[i]);i++)if(O(n)){if(t=n[X.expando]){if(t.events)for(o in t.events)r[o]?E.event.remove(n,o):E.removeEvent(n,o,t.handle);n[X.expando]=void 0}n[U.expando]&&(n[U.expando]=void 0)}}}),E.fn.extend({detach:function(e){return Fe(this,e,!0)},remove:function(e){return Fe(this,e)},text:function(e){return q(this,function(e){return void 0===e?E.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 _e(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ae(this,e);t.appendChild(e)}})},prepend:function(){return _e(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ae(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return _e(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return _e(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&&(E.cleanData(ue(e,!1)),e.textContent=\"\");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return E.clone(this,e,t)})},html:function(e){return q(this,function(e){var t=this[0]||{},n=0,o=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(\"string\"==typeof e&&!ke.test(e)&&!ce[(se.exec(e)||[\"\",\"\"])[1].toLowerCase()]){e=E.htmlPrefilter(e);try{for(;n<o;n++)1===(t=this[n]||{}).nodeType&&(E.cleanData(ue(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return _e(this,arguments,function(e){var t=this.parentNode;E.inArray(this,n)<0&&(E.cleanData(ue(this)),t&&t.replaceChild(e,this))},n)}}),E.each({appendTo:\"append\",prependTo:\"prepend\",insertBefore:\"before\",insertAfter:\"after\",replaceAll:\"replaceWith\"},function(e,l){E.fn[e]=function(e){for(var t,n=[],o=E(e),r=o.length-1,i=0;i<=r;i++)t=i===r?this:this.clone(!0),E(o[i])[l](t),a.apply(n,t.get());return this.pushStack(n)}});var Ie=/^margin/,Me=new RegExp(\"^(\"+Q+\")(?!px)[a-z%]+$\",\"i\"),We=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=R),t.getComputedStyle(e)};function je(e,t,n){var o,r,i,l,s=e.style;return(n=n||We(e))&&(\"\"!==(l=n.getPropertyValue(t)||n[t])||E.contains(e.ownerDocument,e)||(l=E.style(e,t)),!m.pixelMarginRight()&&Me.test(l)&&Ie.test(t)&&(o=s.width,r=s.minWidth,i=s.maxWidth,s.minWidth=s.maxWidth=s.width=l,l=n.width,s.width=o,s.minWidth=r,s.maxWidth=i)),void 0!==l?l+\"\":l}function Ve(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){l.style.cssText=\"box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%\",l.innerHTML=\"\",ve.appendChild(i);var e=R.getComputedStyle(l);t=\"1%\"!==e.top,r=\"2px\"===e.marginLeft,n=\"4px\"===e.width,l.style.marginRight=\"50%\",o=\"4px\"===e.marginRight,ve.removeChild(i),l=null}}var t,n,o,r,i=S.createElement(\"div\"),l=S.createElement(\"div\");l.style&&(l.style.backgroundClip=\"content-box\",l.cloneNode(!0).style.backgroundClip=\"\",m.clearCloneStyle=\"content-box\"===l.style.backgroundClip,i.style.cssText=\"border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute\",i.appendChild(l),E.extend(m,{pixelPosition:function(){return e(),t},boxSizingReliable:function(){return e(),n},pixelMarginRight:function(){return e(),o},reliableMarginLeft:function(){return e(),r}}))}();var Be=/^(none|table(?!-c[ea]).+)/,qe=/^--/,Oe={position:\"absolute\",visibility:\"hidden\",display:\"block\"},ze={letterSpacing:\"0\",fontWeight:\"400\"},Xe=[\"Webkit\",\"Moz\",\"ms\"],Ue=S.createElement(\"div\").style;function Ke(e){var t=E.cssProps[e];return t||(t=E.cssProps[e]=function(e){if(e in Ue)return e;var t=e[0].toUpperCase()+e.slice(1),n=Xe.length;for(;n--;)if((e=Xe[n]+t)in Ue)return e}(e)||e),t}function Ge(e,t,n){var o=J.exec(t);return o?Math.max(0,o[2]-(n||0))+(o[3]||\"px\"):t}function Ye(e,t,n,o,r){var i,l=0;for(i=n===(o?\"border\":\"content\")?4:\"width\"===t?1:0;i<4;i+=2)\"margin\"===n&&(l+=E.css(e,n+Z[i],!0,r)),o?(\"content\"===n&&(l-=E.css(e,\"padding\"+Z[i],!0,r)),\"margin\"!==n&&(l-=E.css(e,\"border\"+Z[i]+\"Width\",!0,r))):(l+=E.css(e,\"padding\"+Z[i],!0,r),\"padding\"!==n&&(l+=E.css(e,\"border\"+Z[i]+\"Width\",!0,r)));return l}function Qe(e,t,n){var o,r=We(e),i=je(e,t,r),l=\"border-box\"===E.css(e,\"boxSizing\",!1,r);return Me.test(i)?i:(o=l&&(m.boxSizingReliable()||i===e.style[t]),\"auto\"===i&&(i=e[\"offset\"+t[0].toUpperCase()+t.slice(1)]),(i=parseFloat(i)||0)+Ye(e,t,n||(l?\"border\":\"content\"),o,r)+\"px\")}function Je(e,t,n,o,r){return new Je.prototype.init(e,t,n,o,r)}E.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=je(e,\"opacity\");return\"\"===n?\"1\":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:\"cssFloat\"},style:function(e,t,n,o){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var r,i,l,s=E.camelCase(t),a=qe.test(t),c=e.style;if(a||(t=Ke(s)),l=E.cssHooks[t]||E.cssHooks[s],void 0===n)return l&&\"get\"in l&&void 0!==(r=l.get(e,!1,o))?r:c[t];\"string\"===(i=typeof n)&&(r=J.exec(n))&&r[1]&&(n=ne(e,t,r),i=\"number\"),null!=n&&n==n&&(\"number\"===i&&(n+=r&&r[3]||(E.cssNumber[s]?\"\":\"px\")),m.clearCloneStyle||\"\"!==n||0!==t.indexOf(\"background\")||(c[t]=\"inherit\"),l&&\"set\"in l&&void 0===(n=l.set(e,n,o))||(a?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,o){var r,i,l,s=E.camelCase(t),a=qe.test(t);return a||(t=Ke(s)),(l=E.cssHooks[t]||E.cssHooks[s])&&\"get\"in l&&(r=l.get(e,!0,n)),void 0===r&&(r=je(e,t,o)),\"normal\"===r&&t in ze&&(r=ze[t]),\"\"===n||n?(i=parseFloat(r),!0===n||isFinite(i)?i||0:r):r}}),E.each([\"height\",\"width\"],function(e,l){E.cssHooks[l]={get:function(e,t,n){if(t)return!Be.test(E.css(e,\"display\"))||e.getClientRects().length&&e.getBoundingClientRect().width?Qe(e,l,n):te(e,Oe,function(){return Qe(e,l,n)})},set:function(e,t,n){var o,r=n&&We(e),i=n&&Ye(e,l,n,\"border-box\"===E.css(e,\"boxSizing\",!1,r),r);return i&&(o=J.exec(t))&&\"px\"!==(o[3]||\"px\")&&(e.style[l]=t,t=E.css(e,l)),Ge(e,t,i)}}}),E.cssHooks.marginLeft=Ve(m.reliableMarginLeft,function(e,t){if(t)return(parseFloat(je(e,\"marginLeft\"))||e.getBoundingClientRect().left-te(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+\"px\"}),E.each({margin:\"\",padding:\"\",border:\"Width\"},function(r,i){E.cssHooks[r+i]={expand:function(e){for(var t=0,n={},o=\"string\"==typeof e?e.split(\" \"):[e];t<4;t++)n[r+Z[t]+i]=o[t]||o[t-2]||o[0];return n}},Ie.test(r)||(E.cssHooks[r+i].set=Ge)}),E.fn.extend({css:function(e,t){return q(this,function(e,t,n){var o,r,i={},l=0;if(Array.isArray(t)){for(o=We(e),r=t.length;l<r;l++)i[t[l]]=E.css(e,t[l],!1,o);return i}return void 0!==n?E.style(e,t,n):E.css(e,t)},e,t,1<arguments.length)}}),((E.Tween=Je).prototype={constructor:Je,init:function(e,t,n,o,r,i){this.elem=e,this.prop=n,this.easing=r||E.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=o,this.unit=i||(E.cssNumber[n]?\"\":\"px\")},cur:function(){var e=Je.propHooks[this.prop];return e&&e.get?e.get(this):Je.propHooks._default.get(this)},run:function(e){var t,n=Je.propHooks[this.prop];return this.options.duration?this.pos=t=E.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):Je.propHooks._default.set(this),this}}).init.prototype=Je.prototype,(Je.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=E.css(e.elem,e.prop,\"\"))&&\"auto\"!==t?t:0},set:function(e){E.fx.step[e.prop]?E.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[E.cssProps[e.prop]]&&!E.cssHooks[e.prop]?e.elem[e.prop]=e.now:E.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Je.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},E.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:\"swing\"},E.fx=Je.prototype.init,E.fx.step={};var Ze,et,tt,nt,ot,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function lt(){et&&(!1===S.hidden&&R.requestAnimationFrame?R.requestAnimationFrame(lt):R.setTimeout(lt,E.fx.interval),E.fx.tick())}function st(){return R.setTimeout(function(){Ze=void 0}),Ze=E.now()}function at(e,t){var n,o=0,r={height:e};for(t=t?1:0;o<4;o+=2-t)n=Z[o],r[\"margin\"+n]=r[\"padding\"+n]=e;return t&&(r.opacity=r.width=e),r}function ct(e,t,n){for(var o,r=(ut.tweeners[t]||[]).concat(ut.tweeners[\"*\"]),i=0,l=r.length;i<l;i++)if(o=r[i].call(n,t,e))return o}function ut(l,e,t){var n,s,o=0,r=ut.prefilters.length,a=E.Deferred().always(function(){delete i.elem}),i=function(){if(s)return!1;for(var e=Ze||st(),t=Math.max(0,c.startTime+c.duration-e),n=t/c.duration||0,o=1-n,r=0,i=c.tweens.length;r<i;r++)c.tweens[r].run(o);return a.notifyWith(l,[c,o,t]),o<1&&i?t:(i||a.notifyWith(l,[c,1,0]),a.resolveWith(l,[c]),!1)},c=a.promise({elem:l,props:E.extend({},e),opts:E.extend(!0,{specialEasing:{},easing:E.easing._default},t),originalProperties:e,originalOptions:t,startTime:Ze||st(),duration:t.duration,tweens:[],createTween:function(e,t){var n=E.Tween(l,c.opts,e,t,c.opts.specialEasing[e]||c.opts.easing);return c.tweens.push(n),n},stop:function(e){var t=0,n=e?c.tweens.length:0;if(s)return this;for(s=!0;t<n;t++)c.tweens[t].run(1);return e?(a.notifyWith(l,[c,1,0]),a.resolveWith(l,[c,e])):a.rejectWith(l,[c,e]),this}}),u=c.props;for(!function(e,t){var n,o,r,i,l;for(n in e)if(o=E.camelCase(n),r=t[o],i=e[n],Array.isArray(i)&&(r=i[1],i=e[n]=i[0]),n!==o&&(e[o]=i,delete e[n]),(l=E.cssHooks[o])&&\"expand\"in l)for(n in i=l.expand(i),delete e[o],i)n in e||(e[n]=i[n],t[n]=r);else t[o]=r}(u,c.opts.specialEasing);o<r;o++)if(n=ut.prefilters[o].call(c,l,u,c.opts))return E.isFunction(n.stop)&&(E._queueHooks(c.elem,c.opts.queue).stop=E.proxy(n.stop,n)),n;return E.map(u,ct,c),E.isFunction(c.opts.start)&&c.opts.start.call(l,c),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always),E.fx.timer(E.extend(i,{elem:l,anim:c,queue:c.opts.queue})),c}E.Animation=E.extend(ut,{tweeners:{\"*\":[function(e,t){var n=this.createTween(e,t);return ne(n.elem,e,J.exec(t),n),n}]},tweener:function(e,t){E.isFunction(e)?(t=e,e=[\"*\"]):e=e.match(F);for(var n,o=0,r=e.length;o<r;o++)n=e[o],ut.tweeners[n]=ut.tweeners[n]||[],ut.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var o,r,i,l,s,a,c,u,d=\"width\"in t||\"height\"in t,p=this,f={},h=e.style,g=e.nodeType&&ee(e),m=X.get(e,\"fxshow\");n.queue||(null==(l=E._queueHooks(e,\"fx\")).unqueued&&(l.unqueued=0,s=l.empty.fire,l.empty.fire=function(){l.unqueued||s()}),l.unqueued++,p.always(function(){p.always(function(){l.unqueued--,E.queue(e,\"fx\").length||l.empty.fire()})}));for(o in t)if(r=t[o],rt.test(r)){if(delete t[o],i=i||\"toggle\"===r,r===(g?\"hide\":\"show\")){if(\"show\"!==r||!m||void 0===m[o])continue;g=!0}f[o]=m&&m[o]||E.style(e,o)}if(!(a=!E.isEmptyObject(t))&&E.isEmptyObject(f))return;d&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(c=m&&m.display)&&(c=X.get(e,\"display\")),\"none\"===(u=E.css(e,\"display\"))&&(c?u=c:(ie([e],!0),c=e.style.display||c,u=E.css(e,\"display\"),ie([e]))),(\"inline\"===u||\"inline-block\"===u&&null!=c)&&\"none\"===E.css(e,\"float\")&&(a||(p.done(function(){h.display=c}),null==c&&(u=h.display,c=\"none\"===u?\"\":u)),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]}));for(o in a=!1,f)a||(m?\"hidden\"in m&&(g=m.hidden):m=X.access(e,\"fxshow\",{display:c}),i&&(m.hidden=!g),g&&ie([e],!0),p.done(function(){for(o in g||ie([e]),X.remove(e,\"fxshow\"),f)E.style(e,o,f[o])})),a=ct(g?m[o]:0,o,p),o in m||(m[o]=a.start,g&&(a.end=a.start,a.start=0))}],prefilter:function(e,t){t?ut.prefilters.unshift(e):ut.prefilters.push(e)}}),E.speed=function(e,t,n){var o=e&&\"object\"==typeof e?E.extend({},e):{complete:n||!n&&t||E.isFunction(e)&&e,duration:e,easing:n&&t||t&&!E.isFunction(t)&&t};return E.fx.off?o.duration=0:\"number\"!=typeof o.duration&&(o.duration in E.fx.speeds?o.duration=E.fx.speeds[o.duration]:o.duration=E.fx.speeds._default),null!=o.queue&&!0!==o.queue||(o.queue=\"fx\"),o.old=o.complete,o.complete=function(){E.isFunction(o.old)&&o.old.call(this),o.queue&&E.dequeue(this,o.queue)},o},E.fn.extend({fadeTo:function(e,t,n,o){return this.filter(ee).css(\"opacity\",0).show().end().animate({opacity:t},e,n,o)},animate:function(t,e,n,o){var r=E.isEmptyObject(t),i=E.speed(e,n,o),l=function(){var e=ut(this,E.extend({},t),i);(r||X.get(this,\"finish\"))&&e.stop(!0)};return l.finish=l,r||!1===i.queue?this.each(l):this.queue(i.queue,l)},stop:function(r,e,i){var l=function(e){var t=e.stop;delete e.stop,t(i)};return\"string\"!=typeof r&&(i=e,e=r,r=void 0),e&&!1!==r&&this.queue(r||\"fx\",[]),this.each(function(){var e=!0,t=null!=r&&r+\"queueHooks\",n=E.timers,o=X.get(this);if(t)o[t]&&o[t].stop&&l(o[t]);else for(t in o)o[t]&&o[t].stop&&it.test(t)&&l(o[t]);for(t=n.length;t--;)n[t].elem!==this||null!=r&&n[t].queue!==r||(n[t].anim.stop(i),e=!1,n.splice(t,1));!e&&i||E.dequeue(this,r)})},finish:function(l){return!1!==l&&(l=l||\"fx\"),this.each(function(){var e,t=X.get(this),n=t[l+\"queue\"],o=t[l+\"queueHooks\"],r=E.timers,i=n?n.length:0;for(t.finish=!0,E.queue(this,l,[]),o&&o.stop&&o.stop.call(this,!0),e=r.length;e--;)r[e].elem===this&&r[e].queue===l&&(r[e].anim.stop(!0),r.splice(e,1));for(e=0;e<i;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),E.each([\"toggle\",\"show\",\"hide\"],function(e,o){var r=E.fn[o];E.fn[o]=function(e,t,n){return null==e||\"boolean\"==typeof e?r.apply(this,arguments):this.animate(at(o,!0),e,t,n)}}),E.each({slideDown:at(\"show\"),slideUp:at(\"hide\"),slideToggle:at(\"toggle\"),fadeIn:{opacity:\"show\"},fadeOut:{opacity:\"hide\"},fadeToggle:{opacity:\"toggle\"}},function(e,o){E.fn[e]=function(e,t,n){return this.animate(o,e,t,n)}}),E.timers=[],E.fx.tick=function(){var e,t=0,n=E.timers;for(Ze=E.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||E.fx.stop(),Ze=void 0},E.fx.timer=function(e){E.timers.push(e),E.fx.start()},E.fx.interval=13,E.fx.start=function(){et||(et=!0,lt())},E.fx.stop=function(){et=null},E.fx.speeds={slow:600,fast:200,_default:400},E.fn.delay=function(o,e){return o=E.fx&&E.fx.speeds[o]||o,e=e||\"fx\",this.queue(e,function(e,t){var n=R.setTimeout(e,o);t.stop=function(){R.clearTimeout(n)}})},tt=S.createElement(\"input\"),nt=S.createElement(\"select\"),ot=nt.appendChild(S.createElement(\"option\")),tt.type=\"checkbox\",m.checkOn=\"\"!==tt.value,m.optSelected=ot.selected,(tt=S.createElement(\"input\")).value=\"t\",tt.type=\"radio\",m.radioValue=\"t\"===tt.value;var dt,pt=E.expr.attrHandle;E.fn.extend({attr:function(e,t){return q(this,E.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){E.removeAttr(this,e)})}}),E.extend({attr:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return void 0===e.getAttribute?E.prop(e,t,n):(1===i&&E.isXMLDoc(e)||(r=E.attrHooks[t.toLowerCase()]||(E.expr.match.bool.test(t)?dt:void 0)),void 0!==n?null===n?void E.removeAttr(e,t):r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:(e.setAttribute(t,n+\"\"),n):r&&\"get\"in r&&null!==(o=r.get(e,t))?o:null==(o=E.find.attr(e,t))?void 0:o)},attrHooks:{type:{set:function(e,t){if(!m.radioValue&&\"radio\"===t&&k(e,\"input\")){var n=e.value;return e.setAttribute(\"type\",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,o=0,r=t&&t.match(F);if(r&&1===e.nodeType)for(;n=r[o++];)e.removeAttribute(n)}}),dt={set:function(e,t,n){return!1===t?E.removeAttr(e,n):e.setAttribute(n,n),n}},E.each(E.expr.match.bool.source.match(/\\w+/g),function(e,t){var l=pt[t]||E.find.attr;pt[t]=function(e,t,n){var o,r,i=t.toLowerCase();return n||(r=pt[i],pt[i]=o,o=null!=l(e,t,n)?i:null,pt[i]=r),o}});var ft=/^(?:input|select|textarea|button)$/i,ht=/^(?:a|area)$/i;function gt(e){var t=e.match(F)||[];return t.join(\" \")}function mt(e){return e.getAttribute&&e.getAttribute(\"class\")||\"\"}E.fn.extend({prop:function(e,t){return q(this,E.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[E.propFix[e]||e]})}}),E.extend({prop:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&E.isXMLDoc(e)||(t=E.propFix[t]||t,r=E.propHooks[t]),void 0!==n?r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:e[t]=n:r&&\"get\"in r&&null!==(o=r.get(e,t))?o:e[t]},propHooks:{tabIndex:{get:function(e){var t=E.find.attr(e,\"tabindex\");return t?parseInt(t,10):ft.test(e.nodeName)||ht.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:\"htmlFor\",class:\"className\"}}),m.optSelected||(E.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)}}),E.each([\"tabIndex\",\"readOnly\",\"maxLength\",\"cellSpacing\",\"cellPadding\",\"rowSpan\",\"colSpan\",\"useMap\",\"frameBorder\",\"contentEditable\"],function(){E.propFix[this.toLowerCase()]=this}),E.fn.extend({addClass:function(t){var e,n,o,r,i,l,s,a=0;if(E.isFunction(t))return this.each(function(e){E(this).addClass(t.call(this,e,mt(this)))});if(\"string\"==typeof t&&t)for(e=t.match(F)||[];n=this[a++];)if(r=mt(n),o=1===n.nodeType&&\" \"+gt(r)+\" \"){for(l=0;i=e[l++];)o.indexOf(\" \"+i+\" \")<0&&(o+=i+\" \");s=gt(o),r!==s&&n.setAttribute(\"class\",s)}return this},removeClass:function(t){var e,n,o,r,i,l,s,a=0;if(E.isFunction(t))return this.each(function(e){E(this).removeClass(t.call(this,e,mt(this)))});if(!arguments.length)return this.attr(\"class\",\"\");if(\"string\"==typeof t&&t)for(e=t.match(F)||[];n=this[a++];)if(r=mt(n),o=1===n.nodeType&&\" \"+gt(r)+\" \"){for(l=0;i=e[l++];)for(;-1<o.indexOf(\" \"+i+\" \");)o=o.replace(\" \"+i+\" \",\" \");s=gt(o),r!==s&&n.setAttribute(\"class\",s)}return this},toggleClass:function(r,t){var i=typeof r;return\"boolean\"==typeof t&&\"string\"===i?t?this.addClass(r):this.removeClass(r):E.isFunction(r)?this.each(function(e){E(this).toggleClass(r.call(this,e,mt(this),t),t)}):this.each(function(){var e,t,n,o;if(\"string\"===i)for(t=0,n=E(this),o=r.match(F)||[];e=o[t++];)n.hasClass(e)?n.removeClass(e):n.addClass(e);else void 0!==r&&\"boolean\"!==i||((e=mt(this))&&X.set(this,\"__className__\",e),this.setAttribute&&this.setAttribute(\"class\",e||!1===r?\"\":X.get(this,\"__className__\")||\"\"))})},hasClass:function(e){var t,n,o=0;for(t=\" \"+e+\" \";n=this[o++];)if(1===n.nodeType&&-1<(\" \"+gt(mt(n))+\" \").indexOf(t))return!0;return!1}});var vt=/\\r/g;E.fn.extend({val:function(n){var o,e,r,t=this[0];return arguments.length?(r=E.isFunction(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=r?n.call(this,e,E(this).val()):n)?t=\"\":\"number\"==typeof t?t+=\"\":Array.isArray(t)&&(t=E.map(t,function(e){return null==e?\"\":e+\"\"})),(o=E.valHooks[this.type]||E.valHooks[this.nodeName.toLowerCase()])&&\"set\"in o&&void 0!==o.set(this,t,\"value\")||(this.value=t))})):t?(o=E.valHooks[t.type]||E.valHooks[t.nodeName.toLowerCase()])&&\"get\"in o&&void 0!==(e=o.get(t,\"value\"))?e:\"string\"==typeof(e=t.value)?e.replace(vt,\"\"):null==e?\"\":e:void 0}}),E.extend({valHooks:{option:{get:function(e){var t=E.find.attr(e,\"value\");return null!=t?t:gt(E.text(e))}},select:{get:function(e){var t,n,o,r=e.options,i=e.selectedIndex,l=\"select-one\"===e.type,s=l?null:[],a=l?i+1:r.length;for(o=i<0?a:l?i:0;o<a;o++)if(((n=r[o]).selected||o===i)&&!n.disabled&&(!n.parentNode.disabled||!k(n.parentNode,\"optgroup\"))){if(t=E(n).val(),l)return t;s.push(t)}return s},set:function(e,t){for(var n,o,r=e.options,i=E.makeArray(t),l=r.length;l--;)((o=r[l]).selected=-1<E.inArray(E.valHooks.option.get(o),i))&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),E.each([\"radio\",\"checkbox\"],function(){E.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<E.inArray(E(e).val(),t)}},m.checkOn||(E.valHooks[this].get=function(e){return null===e.getAttribute(\"value\")?\"on\":e.value})});var wt=/^(?:focusinfocus|focusoutblur)$/;E.extend(E.event,{trigger:function(e,t,n,o){var r,i,l,s,a,c,u,d=[n||S],p=h.call(e,\"type\")?e.type:e,f=h.call(e,\"namespace\")?e.namespace.split(\".\"):[];if(i=l=n=n||S,3!==n.nodeType&&8!==n.nodeType&&!wt.test(p+E.event.triggered)&&(-1<p.indexOf(\".\")&&(p=(f=p.split(\".\")).shift(),f.sort()),a=p.indexOf(\":\")<0&&\"on\"+p,(e=e[E.expando]?e:new E.Event(p,\"object\"==typeof e&&e)).isTrigger=o?2:3,e.namespace=f.join(\".\"),e.rnamespace=e.namespace?new RegExp(\"(^|\\\\.)\"+f.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:E.makeArray(t,[e]),u=E.event.special[p]||{},o||!u.trigger||!1!==u.trigger.apply(n,t))){if(!o&&!u.noBubble&&!E.isWindow(n)){for(s=u.delegateType||p,wt.test(s+p)||(i=i.parentNode);i;i=i.parentNode)d.push(i),l=i;l===(n.ownerDocument||S)&&d.push(l.defaultView||l.parentWindow||R)}for(r=0;(i=d[r++])&&!e.isPropagationStopped();)e.type=1<r?s:u.bindType||p,(c=(X.get(i,\"events\")||{})[e.type]&&X.get(i,\"handle\"))&&c.apply(i,t),(c=a&&i[a])&&c.apply&&O(i)&&(e.result=c.apply(i,t),!1===e.result&&e.preventDefault());return e.type=p,o||e.isDefaultPrevented()||u._default&&!1!==u._default.apply(d.pop(),t)||!O(n)||a&&E.isFunction(n[p])&&!E.isWindow(n)&&((l=n[a])&&(n[a]=null),E.event.triggered=p,n[p](),E.event.triggered=void 0,l&&(n[a]=l)),e.result}},simulate:function(e,t,n){var o=E.extend(new E.Event,n,{type:e,isSimulated:!0});E.event.trigger(o,null,t)}}),E.fn.extend({trigger:function(e,t){return this.each(function(){E.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return E.event.trigger(e,t,n,!0)}}),E.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,n){E.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}}),E.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),m.focusin=\"onfocusin\"in R,m.focusin||E.each({focus:\"focusin\",blur:\"focusout\"},function(n,o){var r=function(e){E.event.simulate(o,e.target,E.event.fix(e))};E.event.special[o]={setup:function(){var e=this.ownerDocument||this,t=X.access(e,o);t||e.addEventListener(n,r,!0),X.access(e,o,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this,t=X.access(e,o)-1;t?X.access(e,o,t):(e.removeEventListener(n,r,!0),X.remove(e,o))}}});var yt=R.location,Ct=E.now(),bt=/\\?/;E.parseXML=function(e){var t;if(!e||\"string\"!=typeof e)return null;try{t=(new R.DOMParser).parseFromString(e,\"text/xml\")}catch(e){t=void 0}return t&&!t.getElementsByTagName(\"parsererror\").length||E.error(\"Invalid XML: \"+e),t};var xt=/\\[\\]$/,Rt=/\\r?\\n/g,St=/^(?:submit|button|image|reset|file)$/i,Et=/^(?:input|select|textarea|keygen)/i;function kt(n,e,o,r){var t;if(Array.isArray(e))E.each(e,function(e,t){o||xt.test(n)?r(n,t):kt(n+\"[\"+(\"object\"==typeof t&&null!=t?e:\"\")+\"]\",t,o,r)});else if(o||\"object\"!==E.type(e))r(n,e);else for(t in e)kt(n+\"[\"+t+\"]\",e[t],o,r)}E.param=function(e,t){var n,o=[],r=function(e,t){var n=E.isFunction(t)?t():t;o[o.length]=encodeURIComponent(e)+\"=\"+encodeURIComponent(null==n?\"\":n)};if(Array.isArray(e)||e.jquery&&!E.isPlainObject(e))E.each(e,function(){r(this.name,this.value)});else for(n in e)kt(n,e[n],t,r);return o.join(\"&\")},E.fn.extend({serialize:function(){return E.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=E.prop(this,\"elements\");return e?E.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!E(this).is(\":disabled\")&&Et.test(this.nodeName)&&!St.test(e)&&(this.checked||!le.test(e))}).map(function(e,t){var n=E(this).val();return null==n?null:Array.isArray(n)?E.map(n,function(e){return{name:t.name,value:e.replace(Rt,\"\\r\\n\")}}):{name:t.name,value:n.replace(Rt,\"\\r\\n\")}}).get()}});var Tt=/%20/g,Pt=/#.*$/,Dt=/([?&])_=[^&]*/,At=/^(.*?):[ \\t]*([^\\r\\n]*)$/gm,Nt=/^(?:GET|HEAD)$/,$t=/^\\/\\//,Ht={},Lt={},_t=\"*/\".concat(\"*\"),Ft=S.createElement(\"a\");function It(i){return function(e,t){\"string\"!=typeof e&&(t=e,e=\"*\");var n,o=0,r=e.toLowerCase().match(F)||[];if(E.isFunction(t))for(;n=r[o++];)\"+\"===n[0]?(n=n.slice(1)||\"*\",(i[n]=i[n]||[]).unshift(t)):(i[n]=i[n]||[]).push(t)}}function Mt(t,r,i,l){var s={},a=t===Lt;function c(e){var o;return s[e]=!0,E.each(t[e]||[],function(e,t){var n=t(r,i,l);return\"string\"!=typeof n||a||s[n]?a?!(o=n):void 0:(r.dataTypes.unshift(n),c(n),!1)}),o}return c(r.dataTypes[0])||!s[\"*\"]&&c(\"*\")}function Wt(e,t){var n,o,r=E.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((r[n]?e:o||(o={}))[n]=t[n]);return o&&E.extend(!0,e,o),e}Ft.href=yt.href,E.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yt.href,type:\"GET\",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(yt.protocol),global:!0,processData:!0,async:!0,contentType:\"application/x-www-form-urlencoded; charset=UTF-8\",accepts:{\"*\":_t,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\":E.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Wt(Wt(e,E.ajaxSettings),t):Wt(E.ajaxSettings,e)},ajaxPrefilter:It(Ht),ajaxTransport:It(Lt),ajax:function(e,t){\"object\"==typeof e&&(t=e,e=void 0),t=t||{};var u,d,p,n,f,o,h,g,r,i,m=E.ajaxSetup({},t),v=m.context||m,w=m.context&&(v.nodeType||v.jquery)?E(v):E.event,y=E.Deferred(),C=E.Callbacks(\"once memory\"),b=m.statusCode||{},l={},s={},a=\"canceled\",x={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n)for(n={};t=At.exec(p);)n[t[1].toLowerCase()]=t[2];t=n[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,l[e]=t),this},overrideMimeType:function(e){return null==h&&(m.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)x.always(e[x.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||a;return u&&u.abort(t),c(0,t),this}};if(y.promise(x),m.url=((e||m.url||yt.href)+\"\").replace($t,yt.protocol+\"//\"),m.type=t.method||t.type||m.method||m.type,m.dataTypes=(m.dataType||\"*\").toLowerCase().match(F)||[\"\"],null==m.crossDomain){o=S.createElement(\"a\");try{o.href=m.url,o.href=o.href,m.crossDomain=Ft.protocol+\"//\"+Ft.host!=o.protocol+\"//\"+o.host}catch(e){m.crossDomain=!0}}if(m.data&&m.processData&&\"string\"!=typeof m.data&&(m.data=E.param(m.data,m.traditional)),Mt(Ht,m,t,x),h)return x;for(r in(g=E.event&&m.global)&&0==E.active++&&E.event.trigger(\"ajaxStart\"),m.type=m.type.toUpperCase(),m.hasContent=!Nt.test(m.type),d=m.url.replace(Pt,\"\"),m.hasContent?m.data&&m.processData&&0===(m.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&(m.data=m.data.replace(Tt,\"+\")):(i=m.url.slice(d.length),m.data&&(d+=(bt.test(d)?\"&\":\"?\")+m.data,delete m.data),!1===m.cache&&(d=d.replace(Dt,\"$1\"),i=(bt.test(d)?\"&\":\"?\")+\"_=\"+Ct+++i),m.url=d+i),m.ifModified&&(E.lastModified[d]&&x.setRequestHeader(\"If-Modified-Since\",E.lastModified[d]),E.etag[d]&&x.setRequestHeader(\"If-None-Match\",E.etag[d])),(m.data&&m.hasContent&&!1!==m.contentType||t.contentType)&&x.setRequestHeader(\"Content-Type\",m.contentType),x.setRequestHeader(\"Accept\",m.dataTypes[0]&&m.accepts[m.dataTypes[0]]?m.accepts[m.dataTypes[0]]+(\"*\"!==m.dataTypes[0]?\", \"+_t+\"; q=0.01\":\"\"):m.accepts[\"*\"]),m.headers)x.setRequestHeader(r,m.headers[r]);if(m.beforeSend&&(!1===m.beforeSend.call(v,x,m)||h))return x.abort();if(a=\"abort\",C.add(m.complete),x.done(m.success),x.fail(m.error),u=Mt(Lt,m,t,x)){if(x.readyState=1,g&&w.trigger(\"ajaxSend\",[x,m]),h)return x;m.async&&0<m.timeout&&(f=R.setTimeout(function(){x.abort(\"timeout\")},m.timeout));try{h=!1,u.send(l,c)}catch(e){if(h)throw e;c(-1,e)}}else c(-1,\"No Transport\");function c(e,t,n,o){var r,i,l,s,a,c=t;h||(h=!0,f&&R.clearTimeout(f),u=void 0,p=o||\"\",x.readyState=0<e?4:0,r=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var o,r,i,l,s=e.contents,a=e.dataTypes;for(;\"*\"===a[0];)a.shift(),void 0===o&&(o=e.mimeType||t.getResponseHeader(\"Content-Type\"));if(o)for(r in s)if(s[r]&&s[r].test(o)){a.unshift(r);break}if(a[0]in n)i=a[0];else{for(r in n){if(!a[0]||e.converters[r+\" \"+a[0]]){i=r;break}l||(l=r)}i=i||l}if(i)return i!==a[0]&&a.unshift(i),n[i]}(m,x,n)),s=function(e,t,n,o){var r,i,l,s,a,c={},u=e.dataTypes.slice();if(u[1])for(l in e.converters)c[l.toLowerCase()]=e.converters[l];i=u.shift();for(;i;)if(e.responseFields[i]&&(n[e.responseFields[i]]=t),!a&&o&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),a=i,i=u.shift())if(\"*\"===i)i=a;else if(\"*\"!==a&&a!==i){if(!(l=c[a+\" \"+i]||c[\"* \"+i]))for(r in c)if((s=r.split(\" \"))[1]===i&&(l=c[a+\" \"+s[0]]||c[\"* \"+s[0]])){!0===l?l=c[r]:!0!==c[r]&&(i=s[0],u.unshift(s[1]));break}if(!0!==l)if(l&&e.throws)t=l(t);else try{t=l(t)}catch(e){return{state:\"parsererror\",error:l?e:\"No conversion from \"+a+\" to \"+i}}}return{state:\"success\",data:t}}(m,s,x,r),r?(m.ifModified&&((a=x.getResponseHeader(\"Last-Modified\"))&&(E.lastModified[d]=a),(a=x.getResponseHeader(\"etag\"))&&(E.etag[d]=a)),204===e||\"HEAD\"===m.type?c=\"nocontent\":304===e?c=\"notmodified\":(c=s.state,i=s.data,l=s.error,r=!l)):(l=c,!e&&c||(c=\"error\",e<0&&(e=0))),x.status=e,x.statusText=(t||c)+\"\",r?y.resolveWith(v,[i,c,x]):y.rejectWith(v,[x,c,l]),x.statusCode(b),b=void 0,g&&w.trigger(r?\"ajaxSuccess\":\"ajaxError\",[x,m,r?i:l]),C.fireWith(v,[x,c]),g&&(w.trigger(\"ajaxComplete\",[x,m]),--E.active||E.event.trigger(\"ajaxStop\")))}return x},getJSON:function(e,t,n){return E.get(e,t,n,\"json\")},getScript:function(e,t){return E.get(e,void 0,t,\"script\")}}),E.each([\"get\",\"post\"],function(e,r){E[r]=function(e,t,n,o){return E.isFunction(t)&&(o=o||n,n=t,t=void 0),E.ajax(E.extend({url:e,type:r,dataType:o,data:t,success:n},E.isPlainObject(e)&&e))}}),E._evalUrl=function(e){return E.ajax({url:e,type:\"GET\",dataType:\"script\",cache:!0,async:!1,global:!1,throws:!0})},E.fn.extend({wrapAll:function(e){var t;return this[0]&&(E.isFunction(e)&&(e=e.call(this[0])),t=E(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(n){return E.isFunction(n)?this.each(function(e){E(this).wrapInner(n.call(this,e))}):this.each(function(){var e=E(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=E.isFunction(t);return this.each(function(e){E(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not(\"body\").each(function(){E(this).replaceWith(this.childNodes)}),this}}),E.expr.pseudos.hidden=function(e){return!E.expr.pseudos.visible(e)},E.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},E.ajaxSettings.xhr=function(){try{return new R.XMLHttpRequest}catch(e){}};var jt={0:200,1223:204},Vt=E.ajaxSettings.xhr();m.cors=!!Vt&&\"withCredentials\"in Vt,m.ajax=Vt=!!Vt,E.ajaxTransport(function(r){var i,l;if(m.cors||Vt&&!r.crossDomain)return{send:function(e,t){var n,o=r.xhr();if(o.open(r.type,r.url,r.async,r.username,r.password),r.xhrFields)for(n in r.xhrFields)o[n]=r.xhrFields[n];for(n in r.mimeType&&o.overrideMimeType&&o.overrideMimeType(r.mimeType),r.crossDomain||e[\"X-Requested-With\"]||(e[\"X-Requested-With\"]=\"XMLHttpRequest\"),e)o.setRequestHeader(n,e[n]);i=function(e){return function(){i&&(i=l=o.onload=o.onerror=o.onabort=o.onreadystatechange=null,\"abort\"===e?o.abort():\"error\"===e?\"number\"!=typeof o.status?t(0,\"error\"):t(o.status,o.statusText):t(jt[o.status]||o.status,o.statusText,\"text\"!==(o.responseType||\"text\")||\"string\"!=typeof o.responseText?{binary:o.response}:{text:o.responseText},o.getAllResponseHeaders()))}},o.onload=i(),l=o.onerror=i(\"error\"),void 0!==o.onabort?o.onabort=l:o.onreadystatechange=function(){4===o.readyState&&R.setTimeout(function(){i&&l()})},i=i(\"abort\");try{o.send(r.hasContent&&r.data||null)}catch(e){if(i)throw e}},abort:function(){i&&i()}}}),E.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),E.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 E.globalEval(e),e}}}),E.ajaxPrefilter(\"script\",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type=\"GET\")}),E.ajaxTransport(\"script\",function(n){var o,r;if(n.crossDomain)return{send:function(e,t){o=E(\"<script>\").prop({charset:n.scriptCharset,src:n.url}).on(\"load error\",r=function(e){o.remove(),r=null,e&&t(\"error\"===e.type?404:200,e.type)}),S.head.appendChild(o[0])},abort:function(){r&&r()}}});var Bt,qt=[],Ot=/(=)\\?(?=&|$)|\\?\\?/;E.ajaxSetup({jsonp:\"callback\",jsonpCallback:function(){var e=qt.pop()||E.expando+\"_\"+Ct++;return this[e]=!0,e}}),E.ajaxPrefilter(\"json jsonp\",function(e,t,n){var o,r,i,l=!1!==e.jsonp&&(Ot.test(e.url)?\"url\":\"string\"==typeof e.data&&0===(e.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&Ot.test(e.data)&&\"data\");if(l||\"jsonp\"===e.dataTypes[0])return o=e.jsonpCallback=E.isFunction(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,l?e[l]=e[l].replace(Ot,\"$1\"+o):!1!==e.jsonp&&(e.url+=(bt.test(e.url)?\"&\":\"?\")+e.jsonp+\"=\"+o),e.converters[\"script json\"]=function(){return i||E.error(o+\" was not called\"),i[0]},e.dataTypes[0]=\"json\",r=R[o],R[o]=function(){i=arguments},n.always(function(){void 0===r?E(R).removeProp(o):R[o]=r,e[o]&&(e.jsonpCallback=t.jsonpCallback,qt.push(o)),i&&E.isFunction(r)&&r(i[0]),i=r=void 0}),\"script\"}),m.createHTMLDocument=((Bt=S.implementation.createHTMLDocument(\"\").body).innerHTML=\"<form></form><form></form>\",2===Bt.childNodes.length),E.parseHTML=function(e,t,n){return\"string\"!=typeof e?[]:(\"boolean\"==typeof t&&(n=t,t=!1),t||(m.createHTMLDocument?(t=S.implementation.createHTMLDocument(\"\"),(o=t.createElement(\"base\")).href=S.location.href,t.head.appendChild(o)):t=S),r=T.exec(e),i=!n&&[],r?[t.createElement(r[1])]:(r=me([e],t,i),i&&i.length&&E(i).remove(),E.merge([],r.childNodes)));var o,r,i},E.fn.load=function(e,t,n){var o,r,i,l=this,s=e.indexOf(\" \");return-1<s&&(o=gt(e.slice(s)),e=e.slice(0,s)),E.isFunction(t)?(n=t,t=void 0):t&&\"object\"==typeof t&&(r=\"POST\"),0<l.length&&E.ajax({url:e,type:r||\"GET\",dataType:\"html\",data:t}).done(function(e){i=arguments,l.html(o?E(\"<div>\").append(E.parseHTML(e)).find(o):e)}).always(n&&function(e,t){l.each(function(){n.apply(this,i||[e.responseText,t,e])})}),this},E.each([\"ajaxStart\",\"ajaxStop\",\"ajaxComplete\",\"ajaxError\",\"ajaxSuccess\",\"ajaxSend\"],function(e,t){E.fn[t]=function(e){return this.on(t,e)}}),E.expr.pseudos.animated=function(t){return E.grep(E.timers,function(e){return t===e.elem}).length},E.offset={setOffset:function(e,t,n){var o,r,i,l,s,a,c=E.css(e,\"position\"),u=E(e),d={};\"static\"===c&&(e.style.position=\"relative\"),s=u.offset(),i=E.css(e,\"top\"),a=E.css(e,\"left\"),(\"absolute\"===c||\"fixed\"===c)&&-1<(i+a).indexOf(\"auto\")?(o=u.position(),l=o.top,r=o.left):(l=parseFloat(i)||0,r=parseFloat(a)||0),E.isFunction(t)&&(t=t.call(e,n,E.extend({},s))),null!=t.top&&(d.top=t.top-s.top+l),null!=t.left&&(d.left=t.left-s.left+r),\"using\"in t?t.using.call(e,d):u.css(d)}},E.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){E.offset.setOffset(this,t,e)});var e,n,o,r,i=this[0];return i?i.getClientRects().length?(o=i.getBoundingClientRect(),e=i.ownerDocument,n=e.documentElement,r=e.defaultView,{top:o.top+r.pageYOffset-n.clientTop,left:o.left+r.pageXOffset-n.clientLeft}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n=this[0],o={top:0,left:0};return\"fixed\"===E.css(n,\"position\")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),k(e[0],\"html\")||(o=e.offset()),o={top:o.top+E.css(e[0],\"borderTopWidth\",!0),left:o.left+E.css(e[0],\"borderLeftWidth\",!0)}),{top:t.top-o.top-E.css(n,\"marginTop\",!0),left:t.left-o.left-E.css(n,\"marginLeft\",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&\"static\"===E.css(e,\"position\");)e=e.offsetParent;return e||ve})}}),E.each({scrollLeft:\"pageXOffset\",scrollTop:\"pageYOffset\"},function(t,r){var i=\"pageYOffset\"===r;E.fn[t]=function(e){return q(this,function(e,t,n){var o;if(E.isWindow(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===n)return o?o[r]:e[t];o?o.scrollTo(i?o.pageXOffset:n,i?n:o.pageYOffset):e[t]=n},t,e,arguments.length)}}),E.each([\"top\",\"left\"],function(e,n){E.cssHooks[n]=Ve(m.pixelPosition,function(e,t){if(t)return t=je(e,n),Me.test(t)?E(e).position()[n]+\"px\":t})}),E.each({Height:\"height\",Width:\"width\"},function(l,s){E.each({padding:\"inner\"+l,content:s,\"\":\"outer\"+l},function(o,i){E.fn[i]=function(e,t){var n=arguments.length&&(o||\"boolean\"!=typeof e),r=o||(!0===e||!0===t?\"margin\":\"border\");return q(this,function(e,t,n){var o;return E.isWindow(e)?0===i.indexOf(\"outer\")?e[\"inner\"+l]:e.document.documentElement[\"client\"+l]:9===e.nodeType?(o=e.documentElement,Math.max(e.body[\"scroll\"+l],o[\"scroll\"+l],e.body[\"offset\"+l],o[\"offset\"+l],o[\"client\"+l])):void 0===n?E.css(e,t,r):E.style(e,t,n,r)},s,n?e:void 0,n)}})}),E.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,o){return this.on(t,e,n,o)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,\"**\"):this.off(t,e||\"**\",n)}}),E.holdReady=function(e){e?E.readyWait++:E.ready(!0)},E.isArray=Array.isArray,E.parseJSON=JSON.parse,E.nodeName=k,\"function\"==typeof define&&define.amd&&define(\"jquery\",[],function(){return E});var zt=R.jQuery,Xt=R.$;return E.noConflict=function(e){return R.$===E&&(R.$=Xt),e&&R.jQuery===E&&(R.jQuery=zt),E},e||(R.jQuery=R.$=E),E})},442:function(e,t,n){\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 f=e(448);f.fn.drag=function(e,t,n){var o=\"string\"==typeof e?e:\"\",r=f.isFunction(e)?e:f.isFunction(t)?t:null;return 0!==o.indexOf(\"drag\")&&(o=\"drag\"+o),n=(e==r?t:n)||{},r?this.on(o,n,r):this.trigger(o)};var h=f.event,o=h.special,g=o.drag={defaults:{which:1,distance:0,not:\":input\",handle:null,relative:!1,drop:!0,click:!1},datakey:\"dragdata\",noBubble:!0,add:function(e){var n=f.data(this,g.datakey),o=e.data||{};n.related+=1,f.each(g.defaults,function(e,t){void 0!==o[e]&&(n[e]=o[e])})},remove:function(){f.data(this,g.datakey).related-=1},setup:function(){if(!f.data(this,g.datakey)){var e=f.extend({related:0},g.defaults);f.data(this,g.datakey,e),h.add(this,\"touchstart mousedown\",g.init,e),this.attachEvent&&this.attachEvent(\"ondragstart\",g.dontstart)}},teardown:function(){var e=f.data(this,g.datakey)||{};e.related||(f.removeData(this,g.datakey),h.remove(this,\"touchstart mousedown\",g.init),g.textselect(!0),this.detachEvent&&this.detachEvent(\"ondragstart\",g.dontstart))},init:function(e){if(!g.touched){var t,n=e.data;if(!(0!=e.which&&0<n.which&&e.which!=n.which)&&!f(e.target).is(n.not)&&(!n.handle||f(e.target).closest(n.handle,e.currentTarget).length)&&(g.touched=\"touchstart\"==e.type?this:null,n.propagates=1,n.mousedown=this,n.interactions=[g.interaction(this,n)],n.target=e.target,n.pageX=e.pageX,n.pageY=e.pageY,n.dragging=null,t=g.hijack(e,\"draginit\",n),n.propagates))return(t=g.flatten(t))&&t.length&&(n.interactions=[],f.each(t,function(){n.interactions.push(g.interaction(this,n))})),n.propagates=n.interactions.length,!1!==n.drop&&o.drop&&o.drop.handler(e,n),g.textselect(!1),g.touched?h.add(g.touched,\"touchmove touchend\",g.handler,n):h.add(document,\"mousemove mouseup\",g.handler,n),!(!g.touched||n.live)&&void 0}},interaction:function(e,t){var n=e&&e.ownerDocument&&f(e)[t.relative?\"position\":\"offset\"]()||{top:0,left:0};return{drag:e,callback:new g.callback,droppable:[],offset:n}},handler:function(e){var t=e.data;switch(e.type){case!t.dragging&&\"touchmove\":e.preventDefault();case!t.dragging&&\"mousemove\":if(Math.pow(e.pageX-t.pageX,2)+Math.pow(e.pageY-t.pageY,2)<Math.pow(t.distance,2))break;e.target=t.target,g.hijack(e,\"dragstart\",t),t.propagates&&(t.dragging=!0);case\"touchmove\":e.preventDefault();case\"mousemove\":if(t.dragging){if(g.hijack(e,\"drag\",t),t.propagates){!1!==t.drop&&o.drop&&o.drop.handler(e,t);break}e.type=\"mouseup\"}case\"touchend\":case\"mouseup\":default:g.touched?h.remove(g.touched,\"touchmove touchend\",g.handler):h.remove(document,\"mousemove mouseup\",g.handler),t.dragging&&(!1!==t.drop&&o.drop&&o.drop.handler(e,t),g.hijack(e,\"dragend\",t)),g.textselect(!0),!1===t.click&&t.dragging&&f.data(t.mousedown,\"suppress.click\",(new Date).getTime()+5),t.dragging=g.touched=!1}},hijack:function(n,o,r,e,t){if(r){var i,l,s,a={event:n.originalEvent,type:n.type},c=o.indexOf(\"drop\")?\"drag\":\"drop\",u=e||0,d=isNaN(e)?r.interactions.length:e;n.type=o;var p=function(){};n.originalEvent=new f.Event(a.event,{preventDefault:p,stopPropagation:p,stopImmediatePropagation:p}),r.results=[];do{if(l=r.interactions[u]){if(\"dragend\"!==o&&l.cancelled)continue;s=g.properties(n,r,l),l.results=[],f(t||l[c]||r.droppable).each(function(e,t){if(s.target=t,!(n.isPropagationStopped=function(){return!1})===(i=t?h.dispatch.call(t,n,s):null)?(\"drag\"==c&&(l.cancelled=!0,r.propagates-=1),\"drop\"==o&&(l[c][e]=null)):\"dropinit\"==o&&l.droppable.push(g.element(i)||t),\"dragstart\"==o&&(l.proxy=f(g.element(i)||l.drag)[0]),l.results.push(i),delete n.result,\"dropinit\"!==o)return i}),r.results[u]=g.flatten(l.results),\"dropinit\"==o&&(l.droppable=g.flatten(l.droppable)),\"dragstart\"!=o||l.cancelled||s.update()}}while(++u<d);return n.type=a.type,n.originalEvent=a.event,g.flatten(r.results)}},properties:function(e,t,n){var o=n.callback;return o.drag=n.drag,o.proxy=n.proxy||n.drag,o.startX=t.pageX,o.startY=t.pageY,o.deltaX=e.pageX-t.pageX,o.deltaY=e.pageY-t.pageY,o.originalX=n.offset.left,o.originalY=n.offset.top,o.offsetX=o.originalX+o.deltaX,o.offsetY=o.originalY+o.deltaY,o.drop=g.flatten((n.drop||[]).slice()),o.available=g.flatten((n.droppable||[]).slice()),o},element:function(e){if(e&&(e.jquery||1==e.nodeType))return e},flatten:function(e){return f.map(e,function(e){return e&&e.jquery?f.makeArray(e):e&&e.length?g.flatten(e):e})},textselect:function(e){f(document)[e?\"off\":\"on\"](\"selectstart\",g.dontstart).css(\"MozUserSelect\",e?\"\":\"none\"),document.unselectable=e?\"off\":\"on\"},dontstart:function(){return!1},callback:function(){}};g.callback.prototype={update:function(){o.drop&&this.available.length&&f.each(this.available,function(e){o.drop.locate(this,e)})}};var r=h.dispatch;h.dispatch=function(e){if(!(0<f.data(this,\"suppress.\"+e.type)-(new Date).getTime()))return r.apply(this,arguments);f.removeData(this,\"suppress.\"+e.type)},o.draginit=o.dragstart=o.dragend=g},443:function(e,t,n){\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 f=e(448);f.fn.drop=function(e,t,n){var o=\"string\"==typeof e?e:\"\",r=f.isFunction(e)?e:f.isFunction(t)?t:null;return 0!==o.indexOf(\"drop\")&&(o=\"drop\"+o),n=(e==r?t:n)||{},r?this.on(o,n,r):this.trigger(o)},f.drop=function(e){e=e||{},g.multi=!0===e.multi?1/0:!1===e.multi?1:isNaN(e.multi)?g.multi:e.multi,g.delay=e.delay||g.delay,g.tolerance=f.isFunction(e.tolerance)?e.tolerance:null===e.tolerance?null:g.tolerance,g.mode=e.mode||g.mode||\"intersect\"};var o=f.event,h=o.special,g=f.event.special.drop={multi:1,delay:20,mode:\"overlap\",targets:[],datakey:\"dropdata\",noBubble:!0,add:function(e){var t=f.data(this,g.datakey);t.related+=1},remove:function(){f.data(this,g.datakey).related-=1},setup:function(){if(!f.data(this,g.datakey)){f.data(this,g.datakey,{related:0,active:[],anyactive:0,winner:0,location:{}}),g.targets.push(this)}},teardown:function(){var e=f.data(this,g.datakey)||{};if(!e.related){f.removeData(this,g.datakey);var t=this;g.targets=f.grep(g.targets,function(e){return e!==t})}},handler:function(e,t){var n;if(t)switch(e.type){case\"mousedown\":case\"touchstart\":n=f(g.targets),\"string\"==typeof t.drop&&(n=n.filter(t.drop)),n.each(function(){var e=f.data(this,g.datakey);e.active=[],e.anyactive=0,e.winner=0}),t.droppable=n,h.drag.hijack(e,\"dropinit\",t);break;case\"mousemove\":case\"touchmove\":g.event=e,g.timer||g.tolerate(t);break;case\"mouseup\":case\"touchend\":g.timer=clearTimeout(g.timer),t.propagates&&(h.drag.hijack(e,\"drop\",t),h.drag.hijack(e,\"dropend\",t))}},locate:function(e,t){var n=f.data(e,g.datakey),o=f(e),r=o.offset()||{},i=o.outerHeight(),l=o.outerWidth(),s={elem:e,width:l,height:i,top:r.top,left:r.left,right:r.left+l,bottom:r.top+i};return n&&(n.location=s,n.index=t,n.elem=e),s},contains:function(e,t){return(t[0]||t.left)>=e.left&&(t[0]||t.right)<=e.right&&(t[1]||t.top)>=e.top&&(t[1]||t.bottom)<=e.bottom},modes:{intersect:function(e,t,n){return this.contains(n,[e.pageX,e.pageY])?1e9:this.modes.overlap.apply(this,arguments)},overlap:function(e,t,n){return Math.max(0,Math.min(n.bottom,t.bottom)-Math.max(n.top,t.top))*Math.max(0,Math.min(n.right,t.right)-Math.max(n.left,t.left))},fit:function(e,t,n){return this.contains(n,t)?1:0},middle:function(e,t,n){return this.contains(n,[t.left+.5*t.width,t.top+.5*t.height])?1:0}},sort:function(e,t){return t.winner-e.winner||e.index-t.index},tolerate:function(e){var t,n,o,r,i,l,s,a,c=0,u=e.interactions.length,d=[g.event.pageX,g.event.pageY],p=g.tolerance||g.modes[g.mode];do{if(a=e.interactions[c]){if(!a)return;a.drop=[],i=[],l=a.droppable.length,p&&(o=g.locate(a.proxy)),t=0;do{if(s=a.droppable[t]){if(r=f.data(s,g.datakey),!(n=r.location))continue;r.winner=p?p.call(g,g.event,o,n):g.contains(n,d)?1:0,i.push(r)}}while(++t<l);for(i.sort(g.sort),t=0;(r=i[t])&&(r.winner&&a.drop.length<g.multi?(r.active[c]||r.anyactive||(!1!==h.drag.hijack(g.event,\"dropstart\",e,c,r.elem)[0]?(r.active[c]=1,r.anyactive+=1):r.winner=0),r.winner&&a.drop.push(r.elem)):r.active[c]&&1==r.anyactive&&(h.drag.hijack(g.event,\"dropend\",e,c,r.elem),r.active[c]=0,r.anyactive-=1)),++t<l;);}}while(++c<u);g.last&&d[0]==g.last.pageX&&d[1]==g.last.pageY?delete g.timer:g.timer=setTimeout(function(){g.tolerate(e)},g.delay),g.last=g.event}};h.dropinit=h.dropstart=h.dropend=g},444:function(e,t,n){var d=e(448),p=e(446);t.exports={CheckboxSelectColumn:function(e){var l,t=new p.EventHandler,s={},a=d.extend(!0,{},{columnId:\"_checkbox_selector\",cssClass:null,toolTip:\"Select/Deselect All\",width:30},e);function n(e,t){var n,o,r=l.getSelectedRows(),i={};for(o=0;o<r.length;o++)n=r[o],i[n]=!0,i[n]!==s[n]&&(l.invalidateRow(n),delete s[n]);for(o in s)l.invalidateRow(o);s=i,l.render(),r.length&&r.length==l.getDataLength()?l.updateColumnHeader(a.columnId,\"<input type='checkbox' checked='checked'>\",a.toolTip):l.updateColumnHeader(a.columnId,\"<input type='checkbox'>\",a.toolTip)}function o(e,t){32==e.which&&l.getColumns()[t.cell].id===a.columnId&&(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit()||i(t.row),e.preventDefault(),e.stopImmediatePropagation())}function r(e,t){if(l.getColumns()[t.cell].id===a.columnId&&d(e.target).is(\":checkbox\")){if(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();i(t.row),e.stopPropagation(),e.stopImmediatePropagation()}}function i(t){s[t]?l.setSelectedRows(d.grep(l.getSelectedRows(),function(e){return e!=t})):l.setSelectedRows(l.getSelectedRows().concat(t))}function c(e,t){if(t.column.id==a.columnId&&d(e.target).is(\":checkbox\")){if(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();if(d(e.target).is(\":checked\")){for(var n=[],o=0;o<l.getDataLength();o++)n.push(o);l.setSelectedRows(n)}else l.setSelectedRows([]);e.stopPropagation(),e.stopImmediatePropagation()}}function u(e,t,n,o,r){return r?s[e]?\"<input type='checkbox' checked='checked'>\":\"<input type='checkbox'>\":null}d.extend(this,{init:function(e){l=e,t.subscribe(l.onSelectedRowsChanged,n).subscribe(l.onClick,r).subscribe(l.onHeaderClick,c).subscribe(l.onKeyDown,o)},destroy:function(){t.unsubscribeAll()},deSelectRows:function(e){var t,n=e.length,o=[];for(t=0;t<n;t++)s[e[t]]&&(o[o.length]=e[t]);l.setSelectedRows(d.grep(l.getSelectedRows(),function(e){return o.indexOf(e)<0}))},selectRows:function(e){var t,n=e.length,o=[];for(t=0;t<n;t++)s[e[t]]||(o[o.length]=e[t]);l.setSelectedRows(l.getSelectedRows().concat(o))},getColumnDefinition:function(){return{id:a.columnId,name:\"<input type='checkbox'>\",toolTip:a.toolTip,field:\"sel\",width:a.width,resizable:!1,sortable:!1,cssClass:a.cssClass,formatter:u}}})}}},445:function(e,t,n){var v=e(448),w=e(446);t.exports={RowSelectionModel:function(t){var c,n,o,u=[],r=this,i=new w.EventHandler,l={selectActiveRow:!0};function s(e){return function(){n||(n=!0,e.apply(this,arguments),n=!1)}}function d(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 p(e){for(var t=[],n=c.getColumns().length-1,o=0;o<e.length;o++)t.push(new w.Range(e[o],0,e[o],n));return t}function a(){return d(u)}function f(e){(u&&0!==u.length||e&&0!==e.length)&&(u=e,r.onSelectedRangesChanged.notify(u))}function h(e,t){o.selectActiveRow&&null!=t.row&&f([new w.Range(t.row,0,t.row,c.getColumns().length-1)])}function g(e){var t=c.getActiveCell();if(t&&e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&(38==e.which||40==e.which)){var n=a();n.sort(function(e,t){return e-t}),n.length||(n=[t.row]);var o,r=n[0],i=n[n.length-1];if(0<=(o=40==e.which?t.row<i||r==i?++i:++r:t.row<i?--i:--r)&&o<c.getDataLength()){c.scrollRowIntoView(o);var l=p(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}(r,i));f(l)}e.preventDefault(),e.stopPropagation()}}function m(e){var n=c.getCellFromEvent(e);if(!n||!c.canCellBeActive(n.row,n.cell))return!1;if(!c.getOptions().multiSelect||!e.ctrlKey&&!e.shiftKey&&!e.metaKey)return!1;var t=d(u),o=v.inArray(n.row,t);if(-1===o&&(e.ctrlKey||e.metaKey))t.push(n.row),c.setActiveCell(n.row,n.cell);else if(-1!==o&&(e.ctrlKey||e.metaKey))t=v.grep(t,function(e,t){return e!==n.row}),c.setActiveCell(n.row,n.cell);else if(t.length&&e.shiftKey){var r=t.pop(),i=Math.min(n.row,r),l=Math.max(n.row,r);t=[];for(var s=i;s<=l;s++)s!==r&&t.push(s);t.push(r),c.setActiveCell(n.row,n.cell)}var a=p(t);return f(a),e.stopImmediatePropagation(),!0}v.extend(this,{getSelectedRows:a,setSelectedRows:function(e){f(p(e))},getSelectedRanges:function(){return u},setSelectedRanges:f,init:function(e){o=v.extend(!0,{},l,t),c=e,i.subscribe(c.onActiveCellChanged,s(h)),i.subscribe(c.onKeyDown,s(g)),i.subscribe(c.onClick,s(m))},destroy:function(){i.unsubscribeAll()},onSelectedRangesChanged:new w.Event})}}},446:function(e,t,n){function l(){var e=!1,t=!1;this.stopPropagation=function(){e=!0},this.isPropagationStopped=function(){return e},this.stopImmediatePropagation=function(){t=!0},this.isImmediatePropagationStopped=function(){return t}}function o(){this.__nonDataRow=!0}function r(){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 i(){this.__groupTotals=!0,this.group=null,this.initialized=!1}function s(){var t=null;this.isActive=function(e){return e?t===e:null!==t},this.activate=function(e){if(e!==t){if(null!==t)throw new Error(\"SlickGrid.EditorLock.activate: an editController is still active, can't activate another editController\");if(!e.commitCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .commitCurrentEdit()\");if(!e.cancelCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .cancelCurrentEdit()\");t=e}},this.deactivate=function(e){if(t!==e)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()}}(r.prototype=new o).equals=function(e){return this.value===e.value&&this.count===e.count&&this.collapsed===e.collapsed&&this.title===e.title},i.prototype=new o,t.exports={Event:function(){var i=[];this.subscribe=function(e){i.push(e)},this.unsubscribe=function(e){for(var t=i.length-1;0<=t;t--)i[t]===e&&i.splice(t,1)},this.notify=function(e,t,n){var o;t=t||new l,n=n||this;for(var r=0;r<i.length&&!t.isPropagationStopped()&&!t.isImmediatePropagationStopped();r++)o=i[r].call(n,t,e);return o}},EventData:l,EventHandler:function(){var o=[];this.subscribe=function(e,t){return o.push({event:e,handler:t}),e.subscribe(t),this},this.unsubscribe=function(e,t){for(var n=o.length;n--;)if(o[n].event===e&&o[n].handler===t)return o.splice(n,1),void e.unsubscribe(t);return this},this.unsubscribeAll=function(){for(var e=o.length;e--;)o[e].event.unsubscribe(o[e].handler);return o=[],this}},Range:function(e,t,n,o){void 0===n&&void 0===o&&(n=e,o=t);this.fromRow=Math.min(e,n),this.fromCell=Math.min(t,o),this.toRow=Math.max(e,n),this.toCell=Math.max(t,o),this.isSingleRow=function(){return this.fromRow==this.toRow},this.isSingleCell=function(){return this.fromRow==this.toRow&&this.fromCell==this.toCell},this.contains=function(e,t){return e>=this.fromRow&&e<=this.toRow&&t>=this.fromCell&&t<=this.toCell},this.toString=function(){return this.isSingleCell()?\"(\"+this.fromRow+\":\"+this.fromCell+\")\":\"(\"+this.fromRow+\":\"+this.fromCell+\" - \"+this.toRow+\":\"+this.toCell+\")\"}},NonDataRow:o,Group:r,GroupTotals:i,EditorLock:s,GlobalEditorLock:new s,keyCode:{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,C:67,V:86},preClickClassName:\"slick-edit-preclick\"}},447:function _(require,module,exports){\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.3\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(448),Slick=require(446),scrollbarDimensions,maxSupportedCssHeight;function SlickGrid(container,data,columns,options){$.fn.drag||require(442),$.fn.drop||require(443);var defaults={explicitInitialization:!1,rowHeight:25,defaultColumnWidth:80,enableAddRow:!1,leaveSpaceForNewRows:!1,editable:!1,autoEdit:!0,enableCellNavigation:!0,enableColumnReorder:!0,asyncEditorLoading:!1,asyncEditorLoadDelay:100,forceFitColumns:!1,enableAsyncPostRender:!1,asyncPostRenderDelay:50,enableAsyncPostRenderCleanup:!1,asyncPostRenderCleanupDelay:40,autoHeight:!1,editorLock:Slick.GlobalEditorLock,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,fullWidthRows:!1,multiColumnSort:!1,numberedMultiColumnSort:!1,tristateMultiColumnSort:!1,defaultFormatter:defaultFormatter,forceSyncScrolling:!1,addNewRowCssClass:\"new-row\",preserveCopiedSelectionOnPaste:!1,showCellSelection:!0},columnDefaults={name:\"\",resizable:!0,sortable:!1,minWidth:30,rerenderOnResize:!1,headerCssClass:null,defaultSortAsc:!0,focusable:!0,selectable:!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,$headerScroller,$headers,$headerRow,$headerRowScroller,$headerRowSpacer,$footerRow,$footerRowScroller,$footerRowSpacer,$preHeaderPanel,$preHeaderPanelScroller,$preHeaderPanelSpacer,$topPanelScroller,$topPanel,$viewport,$canvas,$style,$boundAncestors,stylesheet,columnCssRulesL,columnCssRulesR,viewportH,viewportW,canvasWidth,viewportHasHScroll,viewportHasVScroll,headerColumnWidthDiff=0,headerColumnHeightDiff=0,cellWidthDiff=0,cellHeightDiff=0,jQueryNewWidthBehaviour=!1,absoluteColumnMinWidth,sortIndicatorCssClass=\"slick-sort-indicator\",tabbingDirection=1,activePosX,activeRow,activeCell,activeCellNode=null,currentEditor=null,serializedEditorValue,editController,rowsCache={},renderedRows=0,numVisibleRows,prevScrollTop=0,scrollTop=0,lastRenderedScrollTop=0,lastRenderedScrollLeft=0,prevScrollLeft=0,scrollLeft=0,selectionModel,selectedRows=[],plugins=[],cellCssClasses={},columnsById={},sortColumns=[],columnPosLeft=[],columnPosRight=[],pagingActive=!1,pagingIsLastPage=!1,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,cssShow={position:\"absolute\",visibility:\"hidden\",display:\"block\"},$hiddenParents,oldProps=[];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.\");cacheCssForHiddenInit(),maxSupportedCssHeight=maxSupportedCssHeight||getMaxSupportedCssHeight(),scrollbarDimensions=scrollbarDimensions||measureScrollbar(),options=$.extend({},defaults,options),validateAndEnforceOptions(),columnDefaults.width=options.defaultColumnWidth,columnsById={};for(var e=0;e<columns.length;e++){var t=columns[e]=$.extend({},columnDefaults,columns[e]);columnsById[t.id]=e,t.minWidth&&t.width<t.minWidth&&(t.width=t.minWidth),t.maxWidth&&t.width>t.maxWidth&&(t.width=t.maxWidth)}if(options.enableColumnReorder&&!$.fn.sortable)throw new Error(\"SlickGrid's 'enableColumnReorder = true' option requires jquery-ui.sortable module to be loaded\");editController={commitCurrentEdit:commitCurrentEdit,cancelCurrentEdit: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),options.createPreHeaderPanel&&($preHeaderPanelScroller=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$preHeaderPanel=$(\"<div />\").appendTo($preHeaderPanelScroller),$preHeaderPanelSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($preHeaderPanelScroller),options.showPreHeaderPanel||$preHeaderPanelScroller.hide()),$headerScroller=$(\"<div class='slick-header ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),($headers=$(\"<div class='slick-header-columns' style='left:-1000px' />\").appendTo($headerScroller)).width(getHeadersWidth()),$headerRowScroller=$(\"<div class='slick-headerrow ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$headerRow=$(\"<div class='slick-headerrow-columns' />\").appendTo($headerRowScroller),$headerRowSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($headerRowScroller),$topPanelScroller=$(\"<div class='slick-top-panel-scroller ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$topPanel=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScroller),options.showTopPanel||$topPanelScroller.hide(),options.showHeaderRow||$headerRowScroller.hide(),($viewport=$(\"<div class='slick-viewport' style='width:100%;overflow:auto;outline:0;position:relative;;'>\").appendTo($container)).css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),$canvas=$(\"<div class='grid-canvas' />\").appendTo($viewport),options.createFooterRow&&($footerRowScroller=$(\"<div class='slick-footerrow ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$footerRow=$(\"<div class='slick-footerrow-columns' />\").appendTo($footerRowScroller),$footerRowSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScroller),options.showFooterRow||$footerRowScroller.hide()),options.numberedMultiColumnSort&&(sortIndicatorCssClass=\"slick-sort-indicator-numbered\"),$focusSink2=$focusSink.clone().appendTo($container),options.explicitInitialization||finishInitialization()}function finishInitialization(){initialized||(initialized=!0,viewportW=parseFloat($.css($container[0],\"width\",!0)),measureCellPaddingAndBorder(),disableSelection($headers),options.enableTextSelectionOnCells||$viewport.on(\"selectstart.ui\",function(e){return $(e.target).is(\"input,textarea\")}),updateColumnCaches(),createColumnHeaders(),setupColumnSort(),createCssRules(),resizeCanvas(),bindAncestorScrollEvents(),$container.on(\"resize.slickgrid\",resizeCanvas),$viewport.on(\"scroll\",handleScroll),$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&&$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),navigator.userAgent.toLowerCase().match(/webkit/)&&navigator.userAgent.toLowerCase().match(/macintosh/)&&$canvas.on(\"mousewheel\",handleMouseWheel),restoreCssFromHiddenInit())}function cacheCssForHiddenInit(){($hiddenParents=$container.parents().addBack().not(\":visible\")).each(function(){var e={};for(var t in cssShow)e[t]=this.style[t],this.style[t]=cssShow[t];oldProps.push(e)})}function restoreCssFromHiddenInit(){$hiddenParents.each(function(e){var t=oldProps[e];for(var n in cssShow)this.style[n]=t[n]})}function registerPlugin(e){plugins.unshift(e),e.init(self)}function unregisterPlugin(e){for(var t=plugins.length;0<=t;t--)if(plugins[t]===e){plugins[t].destroy&&plugins[t].destroy(),plugins.splice(t,1);break}}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(){return $canvas[0]}function measureScrollbar(){var e=$(\"<div style='position:absolute; top:-10000px; left:-10000px; width:100px; height:100px; overflow:scroll;'></div>\").appendTo(\"body\"),t={width:e.width()-e[0].clientWidth,height:e.height()-e[0].clientHeight};return e.remove(),t}function getColumnTotalWidth(e){for(var t=0,n=0,o=columns.length;n<o;n++){var r=columns[n].width;t+=r}return e&&(t+=scrollbarDimensions.width),t}function getHeadersWidth(){var e=getColumnTotalWidth(!0);return Math.max(e,viewportW)+1e3}function getCanvasWidth(){for(var e=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,t=0,n=columns.length;n--;)t+=columns[n].width;return options.fullWidthRows?Math.max(t,e):t}function updateCanvasWidth(e){var t=canvasWidth;(canvasWidth=getCanvasWidth())!=t&&($canvas.width(canvasWidth),$headerRow.width(canvasWidth),options.createFooterRow&&$footerRow.width(canvasWidth),options.createPreHeaderPanel&&$preHeaderPanel.width(canvasWidth),$headers.width(getHeadersWidth()),viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width);var n=canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0);$headerRowSpacer.width(n),options.createFooterRow&&$footerRowSpacer.width(n),options.createPreHeaderPanel&&$preHeaderPanelSpacer.width(n),(canvasWidth!=t||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,t=navigator.userAgent.toLowerCase().match(/firefox/)?6e6:1e9,n=$(\"<div style='display:none' />\").appendTo(document.body);;){var o=2*e;if(n.css(\"height\",o),t<o||n.height()!==o)break;e=o}return n.remove(),e}function getUID(){return uid}function getHeaderColumnWidthDiff(){return headerColumnWidthDiff}function getScrollbarDimensions(){return scrollbarDimensions}function bindAncestorScrollEvents(){for(var e=$canvas[0];(e=e.parentNode)!=document.body&&null!=e;)if(e==$viewport[0]||e.scrollWidth!=e.clientWidth||e.scrollHeight!=e.clientHeight){var t=$(e);$boundAncestors=$boundAncestors?$boundAncestors.add(t):t,t.on(\"scroll.\"+uid,handleActiveCellPositionChange)}}function unbindAncestorScrollEvents(){$boundAncestors&&($boundAncestors.off(\"scroll.\"+uid),$boundAncestors=null)}function updateColumnHeader(e,t,n){if(initialized){var o=getColumnIndex(e);if(null!=o){var r=columns[o],i=$headers.children().eq(o);i&&(void 0!==t&&(columns[o].name=t),void 0!==n&&(columns[o].toolTip=n),trigger(self.onBeforeHeaderCellDestroy,{node:i[0],column:r,grid:self}),i.attr(\"title\",n||\"\").children().eq(0).html(t),trigger(self.onHeaderCellRendered,{node:i[0],column:r,grid:self}))}}}function getHeaderRow(){return $headerRow[0]}function getFooterRow(){return $footerRow[0]}function getPreHeaderPanel(){return $preHeaderPanel[0]}function getHeaderRowColumn(e){var t=getColumnIndex(e),n=$headerRow.children().eq(t);return n&&n[0]}function getFooterRowColumn(e){var t=getColumnIndex(e),n=$footerRow.children().eq(t);return n&&n[0]}function createColumnHeaders(){function e(){$(this).addClass(\"ui-state-hover\")}function t(){$(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})}),$headers.empty(),$headers.width(getHeadersWidth()),$headerRow.find(\".slick-headerrow-column\").each(function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderRowCellDestroy,{node:this,column:e,grid:self})}),$headerRow.empty(),options.createFooterRow&&($footerRow.find(\".slick-footerrow-column\").each(function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e})}),$footerRow.empty());for(var n=0;n<columns.length;n++){var o=columns[n],r=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+o.name+\"</span>\").width(o.width-headerColumnWidthDiff).attr(\"id\",\"\"+uid+o.id).attr(\"title\",o.toolTip||\"\").data(\"column\",o).addClass(o.headerCssClass||\"\").appendTo($headers);if((options.enableColumnReorder||o.sortable)&&r.on(\"mouseenter\",e).on(\"mouseleave\",t),o.sortable&&(r.addClass(\"slick-header-sortable\"),r.append(\"<span class='\"+sortIndicatorCssClass+\"' />\")),trigger(self.onHeaderCellRendered,{node:r[0],column:o,grid:self}),options.showHeaderRow){var i=$(\"<div class='ui-state-default slick-headerrow-column l\"+n+\" r\"+n+\"'></div>\").data(\"column\",o).appendTo($headerRow);trigger(self.onHeaderRowCellRendered,{node:i[0],column:o,grid:self})}if(options.createFooterRow&&options.showFooterRow){var l=$(\"<div class='ui-state-default slick-footerrow-column l\"+n+\" r\"+n+\"'></div>\").data(\"column\",o).appendTo($footerRow);trigger(self.onFooterRowCellRendered,{node:l[0],column:o})}}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(e.metaKey=e.metaKey||e.ctrlKey,!$(e.target).hasClass(\"slick-resizable-handle\")){var t=$(e.target).closest(\".slick-header-column\");if(t.length){var n=t.data(\"column\");if(n.sortable){if(!getEditorLock().commitCurrentEdit())return;for(var o=null,r=0;r<sortColumns.length;r++)if(sortColumns[r].columnId==n.id){(o=sortColumns[r]).sortAsc=!o.sortAsc;break}var i=!!o;options.tristateMultiColumnSort?(o||(o={columnId:n.id,sortAsc:n.defaultSortAsc}),i&&o.sortAsc&&(sortColumns.splice(r,1),o=null),options.multiColumnSort||(sortColumns=[]),!o||i&&options.multiColumnSort||sortColumns.push(o)):e.metaKey&&options.multiColumnSort?o&&sortColumns.splice(r,1):((e.shiftKey||e.metaKey)&&options.multiColumnSort||(sortColumns=[]),o?0==sortColumns.length&&sortColumns.push(o):(o={columnId:n.id,sortAsc:n.defaultSortAsc},sortColumns.push(o))),setSortColumns(sortColumns),0<sortColumns.length&&(options.multiColumnSort?trigger(self.onSort,{multiColumnSort:!0,sortCols:$.map(sortColumns,function(e){return{sortCol:columns[getColumnIndex(e.columnId)],sortAsc:e.sortAsc}}),grid:self},e):trigger(self.onSort,{multiColumnSort:!1,sortCol:n,sortAsc:sortColumns[0].sortAsc,grid:self},e))}}}})}function setupColumnReorder(){$headers.filter(\":ui-sortable\").sortable(\"destroy\"),$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(e,t){t.placeholder.width(t.helper.outerWidth()-headerColumnWidthDiff),$(t.helper).addClass(\"slick-header-column-active\")},beforeStop:function(e,t){$(t.helper).removeClass(\"slick-header-column-active\")},stop:function(e){if(getEditorLock().commitCurrentEdit()){for(var t=$headers.sortable(\"toArray\"),n=[],o=0;o<t.length;o++)n.push(columns[getColumnIndex(t[o].replace(uid,\"\"))]);setColumns(n),trigger(self.onColumnsReordered,{grid:self}),e.stopPropagation(),setupColumnResize()}else $(this).sortable(\"cancel\")}})}function setupColumnResize(){var s,a,c,u,d,p,n,o;(u=$headers.children()).find(\".slick-resizable-handle\").remove(),u.each(function(e,t){e>=columns.length||columns[e].resizable&&(void 0===n&&(n=e),o=e)}),void 0!==n&&u.each(function(l,e){l>=columns.length||l<n||options.forceFitColumns&&o<=l||($(e),$(\"<div class='slick-resizable-handle' />\").appendTo(e).on(\"dragstart\",function(e,t){if(!getEditorLock().commitCurrentEdit())return!1;c=e.pageX,$(this).parent().addClass(\"slick-header-column-active\");var n=null,o=null;if(u.each(function(e,t){e>=columns.length||(columns[e].previousWidth=$(t).outerWidth())}),options.forceFitColumns)for(o=n=0,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(null!==o&&(a.maxWidth?o+=a.maxWidth-a.previousWidth:o=null),n+=a.previousWidth-Math.max(a.minWidth||0,absoluteColumnMinWidth));var r=0,i=0;for(s=0;s<=l;s++)(a=columns[s]).resizable&&(null!==i&&(a.maxWidth?i+=a.maxWidth-a.previousWidth:i=null),r+=a.previousWidth-Math.max(a.minWidth||0,absoluteColumnMinWidth));null===n&&(n=1e5),null===r&&(r=1e5),null===o&&(o=1e5),null===i&&(i=1e5),p=c+Math.min(n,i),d=c-Math.min(r,o)}).on(\"drag\",function(e,t){var n,o,r=Math.min(p,Math.max(d,e.pageX))-c;if(r<0){for(o=r,s=l;0<=s;s--)(a=columns[s]).resizable&&(n=Math.max(a.minWidth||0,absoluteColumnMinWidth),o&&a.previousWidth+o<n?(o+=a.previousWidth-n,a.width=n):(a.width=a.previousWidth+o,o=0));if(options.forceFitColumns)for(o=-r,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(o&&a.maxWidth&&a.maxWidth-a.previousWidth<o?(o-=a.maxWidth-a.previousWidth,a.width=a.maxWidth):(a.width=a.previousWidth+o,o=0))}else{for(o=r,s=l;0<=s;s--)(a=columns[s]).resizable&&(o&&a.maxWidth&&a.maxWidth-a.previousWidth<o?(o-=a.maxWidth-a.previousWidth,a.width=a.maxWidth):(a.width=a.previousWidth+o,o=0));if(options.forceFitColumns)for(o=-r,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(n=Math.max(a.minWidth||0,absoluteColumnMinWidth),o&&a.previousWidth+o<n?(o+=a.previousWidth-n,a.width=n):(a.width=a.previousWidth+o,o=0))}applyColumnHeaderWidths(),options.syncColumnCellResize&&applyColumnWidths()}).on(\"dragend\",function(e,t){var n;for($(this).parent().removeClass(\"slick-header-column-active\"),s=0;s<columns.length;s++)a=columns[s],n=$(u[s]).outerWidth(),a.previousWidth!==n&&a.rerenderOnResize&&invalidateAllRows();updateCanvasWidth(!0),render(),trigger(self.onColumnsResized,{grid:self})}))})}function getVBoxDelta(n){var o=0;return $.each([\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],function(e,t){o+=parseFloat(n.css(t))||0}),o}function measureCellPaddingAndBorder(){var n,e=[\"borderLeftWidth\",\"borderRightWidth\",\"paddingLeft\",\"paddingRight\"],t=[\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],o=$.fn.jquery.split(\".\");jQueryNewWidthBehaviour=1==o[0]&&8<=o[1]||2<=o[0],n=$(\"<div class='ui-state-default slick-header-column' style='visibility:hidden'>-</div>\").appendTo($headers),headerColumnWidthDiff=headerColumnHeightDiff=0,\"border-box\"!=n.css(\"box-sizing\")&&\"border-box\"!=n.css(\"-moz-box-sizing\")&&\"border-box\"!=n.css(\"-webkit-box-sizing\")&&($.each(e,function(e,t){headerColumnWidthDiff+=parseFloat(n.css(t))||0}),$.each(t,function(e,t){headerColumnHeightDiff+=parseFloat(n.css(t))||0})),n.remove();var r=$(\"<div class='slick-row' />\").appendTo($canvas);n=$(\"<div class='slick-cell' id='' style='visibility:hidden'>-</div>\").appendTo(r),cellWidthDiff=cellHeightDiff=0,\"border-box\"!=n.css(\"box-sizing\")&&\"border-box\"!=n.css(\"-moz-box-sizing\")&&\"border-box\"!=n.css(\"-webkit-box-sizing\")&&($.each(e,function(e,t){cellWidthDiff+=parseFloat(n.css(t))||0}),$.each(t,function(e,t){cellHeightDiff+=parseFloat(n.css(t))||0})),r.remove(),absoluteColumnMinWidth=Math.max(headerColumnWidthDiff,cellWidthDiff)}function createCssRules(){$style=$(\"<style type='text/css' rel='stylesheet' />\").appendTo($(\"head\"));for(var e=options.rowHeight-cellHeightDiff,t=[\".\"+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; }\"],n=0;n<columns.length;n++)t.push(\".\"+uid+\" .l\"+n+\" { }\"),t.push(\".\"+uid+\" .r\"+n+\" { }\");$style[0].styleSheet?$style[0].styleSheet.cssText=t.join(\" \"):$style[0].appendChild(document.createTextNode(t.join(\" \")))}function getColumnCssRules(e){var t;if(!stylesheet){var n=document.styleSheets;for(t=0;t<n.length;t++)if((n[t].ownerNode||n[t].owningElement)==$style[0]){stylesheet=n[t];break}if(!stylesheet)throw new Error(\"Cannot find stylesheet.\");columnCssRulesL=[],columnCssRulesR=[];var o,r,i=stylesheet.cssRules||stylesheet.rules;for(t=0;t<i.length;t++){var l=i[t].selectorText;(o=/\\.l\\d+/.exec(l))?(r=parseInt(o[0].substr(2,o[0].length-2),10),columnCssRulesL[r]=i[t]):(o=/\\.r\\d+/.exec(l))&&(r=parseInt(o[0].substr(2,o[0].length-2),10),columnCssRulesR[r]=i[t])}}return{left:columnCssRulesL[e],right:columnCssRulesR[e]}}function removeCssRules(){$style.remove(),stylesheet=null}function destroy(){getEditorLock().cancelCurrentEdit(),trigger(self.onBeforeDestroy,{grid:self});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)}function trigger(e,t,n){return n=n||new Slick.EventData,(t=t||{}).grid=self,e.notify(t,n,self)}function getEditorLock(){return options.editorLock}function getEditController(){return editController}function getColumnIndex(e){return columnsById[e]}function autosizeColumns(){var e,t,n,o=[],r=0,i=0,l=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW;for(e=0;e<columns.length;e++)t=columns[e],o.push(t.width),i+=t.width,t.resizable&&(r+=t.width-Math.max(t.minWidth,absoluteColumnMinWidth));for(n=i;l<i&&r;){var s=(i-l)/r;for(e=0;e<columns.length&&l<i;e++){t=columns[e];var a=o[e];if(!(!t.resizable||a<=t.minWidth||a<=absoluteColumnMinWidth)){var c=Math.max(t.minWidth,absoluteColumnMinWidth),u=Math.floor(s*(a-c))||1;u=Math.min(u,a-c),i-=u,r-=u,o[e]-=u}}if(n<=i)break;n=i}for(n=i;i<l;){var d=l/i;for(e=0;e<columns.length&&i<l;e++){t=columns[e];var p,f=o[e];p=!t.resizable||t.maxWidth<=f?0:Math.min(Math.floor(d*f)-f,t.maxWidth-f||1e6)||1,i+=p,o[e]+=i<=l?p:0}if(i<=n)break;n=i}var h=!1;for(e=0;e<columns.length;e++)columns[e].rerenderOnResize&&columns[e].width!=o[e]&&(h=!0),columns[e].width=o[e];applyColumnHeaderWidths(),updateCanvasWidth(!0),h&&(invalidateAllRows(),render())}function applyColumnHeaderWidths(){if(initialized){for(var e,t=0,n=$headers.children(),o=columns.length;t<o;t++)e=$(n[t]),jQueryNewWidthBehaviour?e.outerWidth()!==columns[t].width&&e.outerWidth(columns[t].width):e.width()!==columns[t].width-headerColumnWidthDiff&&e.width(columns[t].width-headerColumnWidthDiff);updateColumnCaches()}}function applyColumnWidths(){for(var e,t,n=0,o=0;o<columns.length;o++)e=columns[o].width,(t=getColumnCssRules(o)).left.style.left=n+\"px\",t.right.style.right=canvasWidth-n-e+\"px\",n+=columns[o].width}function setSortColumn(e,t){setSortColumns([{columnId:e,sortAsc:t}])}function setSortColumns(e){sortColumns=e;var o=options.numberedMultiColumnSort&&1<sortColumns.length,r=$headers.children(),i=r.removeClass(\"slick-header-column-sorted\").find(\".\"+sortIndicatorCssClass).removeClass(\"slick-sort-indicator-asc slick-sort-indicator-desc\");o&&i.text(\"\"),$.each(sortColumns,function(e,t){null==t.sortAsc&&(t.sortAsc=!0);var n=getColumnIndex(t.columnId);null!=n&&(i=r.eq(n).addClass(\"slick-header-column-sorted\").find(\".\"+sortIndicatorCssClass).addClass(t.sortAsc?\"slick-sort-indicator-asc\":\"slick-sort-indicator-desc\"),o&&i.text(e+1))})}function getSortColumns(){return sortColumns}function handleSelectedRangesChanged(e,t){selectedRows=[];for(var n={},o=0;o<t.length;o++)for(var r=t[o].fromRow;r<=t[o].toRow;r++){n[r]||(selectedRows.push(r),n[r]={});for(var i=t[o].fromCell;i<=t[o].toCell;i++)canCellBeSelected(r,i)&&(n[r][columns[i].id]=options.selectedCellCssClass)}setCellCssStyles(options.selectedCellCssClass,n),trigger(self.onSelectedRowsChanged,{rows:getSelectedRows(),grid:self},e)}function getColumns(){return columns}function updateColumnCaches(){columnPosLeft=[],columnPosRight=[];for(var e=0,t=0,n=columns.length;t<n;t++)columnPosLeft[t]=e,columnPosRight[t]=e+columns[t].width,e+=columns[t].width}function setColumns(e){columns=e,columnsById={};for(var t=0;t<columns.length;t++){var n=columns[t]=$.extend({},columnDefaults,columns[t]);columnsById[n.id]=t,n.minWidth&&n.width<n.minWidth&&(n.width=n.minWidth),n.maxWidth&&n.width>n.maxWidth&&(n.width=n.maxWidth)}updateColumnCaches(),initialized&&(invalidateAllRows(),createColumnHeaders(),removeCssRules(),createCssRules(),resizeCanvas(),applyColumnWidths(),handleScroll())}function getOptions(){return options}function setOptions(e,t){getEditorLock().commitCurrentEdit()&&(makeActiveCellNormal(),options.enableAddRow!==e.enableAddRow&&invalidateRow(getDataLength()),options=$.extend(options,e),validateAndEnforceOptions(),$viewport.css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),t||render())}function validateAndEnforceOptions(){options.autoHeight&&(options.leaveSpaceForNewRows=!1)}function setData(e,t){data=e,invalidateAllRows(),updateRowCount(),t&&scrollTo(0)}function getData(){return data}function getDataLength(){return data.getLength?data.getLength():data.length}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){options.showTopPanel!=e&&((options.showTopPanel=e)?$topPanelScroller.slideDown(\"fast\",resizeCanvas):$topPanelScroller.slideUp(\"fast\",resizeCanvas))}function setHeaderRowVisibility(e){options.showHeaderRow!=e&&((options.showHeaderRow=e)?$headerRowScroller.slideDown(\"fast\",resizeCanvas):$headerRowScroller.slideUp(\"fast\",resizeCanvas))}function setFooterRowVisibility(e){options.showFooterRow!=e&&((options.showFooterRow=e)?$footerRowScroller.slideDown(\"fast\",resizeCanvas):$footerRowScroller.slideUp(\"fast\",resizeCanvas))}function setPreHeaderPanelVisibility(e){options.showPreHeaderPanel!=e&&((options.showPreHeaderPanel=e)?$preHeaderPanelScroller.slideDown(\"fast\",resizeCanvas):$preHeaderPanelScroller.slideUp(\"fast\",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-viewportH+(viewportHasHScroll?scrollbarDimensions.height:0));var t=offset;page=Math.min(n-1,Math.floor(e/ph)),offset=Math.round(page*cj);var o=e-offset;if(offset!=t){var r=getVisibleRange(o);cleanupRows(r),updateRowPositions()}prevScrollTop!=o&&(vScrollDir=prevScrollTop+t<o+offset?1:-1,$viewport[0].scrollTop=lastRenderedScrollTop=scrollTop=prevScrollTop=o,trigger(self.onViewportChanged,{grid:self}))}function defaultFormatter(e,t,n,o,r){return null==n?\"\":(n+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}function getFormatter(e,t){var n=data.getItemMetadata&&data.getItemMetadata(e),o=n&&n.columns&&(n.columns[t.id]||n.columns[getColumnIndex(t.id)]);return o&&o.formatter||n&&n.formatter||t.formatter||options.formatterFactory&&options.formatterFactory.getFormatter(t)||options.defaultFormatter}function getEditor(e,t){var n=columns[t],o=data.getItemMetadata&&data.getItemMetadata(e),r=o&&o.columns;return r&&r[n.id]&&void 0!==r[n.id].editor?r[n.id].editor:r&&r[t]&&void 0!==r[t].editor?r[t].editor:n.editor||options.editorFactory&&options.editorFactory.getEditor(n)}function getDataItemValueForColumn(e,t){return options.dataItemColumnValueExtractor?options.dataItemColumnValueExtractor(e,t):e[t.field]}function appendRowHtml(e,t,n,o){var r=getDataItem(t),i=t<o&&!r,l=\"slick-row\"+(i?\" loading\":\"\")+(t===activeRow?\" active\":\"\")+(t%2==1?\" odd\":\" even\");r||(l+=\" \"+options.addNewRowCssClass);var s,a,c=data.getItemMetadata&&data.getItemMetadata(t);c&&c.cssClasses&&(l+=\" \"+c.cssClasses),e.push(\"<div class='ui-widget-content \"+l+\"' style='top:\"+getRowTop(t)+\"px'>\");for(var u=0,d=columns.length;u<d;u++){if(a=columns[u],s=1,c&&c.columns){var p=c.columns[a.id]||c.columns[u];\"*\"===(s=p&&p.colspan||1)&&(s=d-u)}if(columnPosRight[Math.min(d-1,u+s-1)]>n.leftPx){if(columnPosLeft[u]>n.rightPx)break;appendCellHtml(e,t,u,s,r)}1<s&&(u+=s-1)}e.push(\"</div>\")}function appendCellHtml(e,t,n,o,r){var i=columns[n],l=\"slick-cell l\"+n+\" r\"+Math.min(columns.length-1,n+o-1)+(i.cssClass?\" \"+i.cssClass:\"\");for(var s in t===activeRow&&n===activeCell&&(l+=\" active\"),cellCssClasses)cellCssClasses[s][t]&&cellCssClasses[s][t][i.id]&&(l+=\" \"+cellCssClasses[s][t][i.id]);var a=null;r&&(a=getDataItemValueForColumn(r,i));var c=getFormatter(t,i)(t,n,a,i,r),u=trigger(self.onBeforeAppendCell,{row:t,cell:n,grid:self,value:a,dataContext:r})||\"\";u+=c.addClasses?(u?\" \":\"\")+c.addClasses:\"\",e.push(\"<div class='\"+l+(u?\" \"+u:\"\")+\"'>\"),r&&e.push(\"object\"!=typeof c?c:c.text),e.push(\"</div>\"),rowsCache[t].cellRenderQueue.push(n),rowsCache[t].cellColSpans[n]=o}function cleanupRows(e){for(var t in rowsCache)(t=parseInt(t,10))!==activeRow&&(t<e.top||t>e.bottom)&&removeRowFromCache(t);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,t,n){for(var o in postProcessgroupId++,t)t.hasOwnProperty(o)&&postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e.cellNodesByColumnIdx[0|o],columnIdx:0|o,rowIdx:n});postProcessedCleanupQueue.push({actionType:\"R\",groupId:postProcessgroupId,node:e.rowNode}),$(e.rowNode).detach()}function queuePostProcessedCellForCleanup(e,t,n){postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e,columnIdx:t,rowIdx:n}),$(e).detach()}function removeRowFromCache(e){var t=rowsCache[e];t&&(rowNodeFromLastMouseWheelEvent===t.rowNode?(t.rowNode.style.display=\"none\",zombieRowNodeFromLastMouseWheelEvent=rowNodeFromLastMouseWheelEvent,zombieRowCacheFromLastMouseWheelEvent=t,zombieRowPostProcessedFromLastMouseWheelEvent=postProcessedRows[e]):options.enableAsyncPostRenderCleanup&&postProcessedRows[e]?queuePostProcessedRowForCleanup(t,postProcessedRows[e],e):$canvas[0].removeChild(t.rowNode),delete rowsCache[e],delete postProcessedRows[e],renderedRows--,counter_rows_removed++)}function invalidateRows(e){var t,n;if(e&&e.length){for(vScrollDir=0,n=e.length,t=0;t<n;t++)currentEditor&&activeRow===e[t]&&makeActiveCellNormal(),rowsCache[e[t]]&&removeRowFromCache(e[t]);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}}function invalidateRow(e){invalidateRows([e])}function applyFormatResultToCellNode(e,t,n){\"object\"==typeof e?(t.innerHTML=e.text,e.removeClasses&&!n&&t.removeClass(e.removeClasses),e.addClasses&&t.addClass(e.addClasses)):t.innerHTML=e}function updateCell(e,t){var n=getCellNode(e,t);if(n){var o=columns[t],r=getDataItem(e);if(currentEditor&&activeRow===e&&activeCell===t)currentEditor.loadValue(r);else{var i=r?getFormatter(e,o)(e,t,getDataItemValueForColumn(r,o),o,r):\"\";applyFormatResultToCellNode(i,n),invalidatePostProcessingResults(e)}}}function updateRow(e){var t=rowsCache[e];if(t){ensureCellNodesInRowsCache(e);var n=getDataItem(e);for(var o in t.cellNodesByColumnIdx)if(t.cellNodesByColumnIdx.hasOwnProperty(o)){var r=columns[o|=0],i=t.cellNodesByColumnIdx[o];e===activeRow&&o===activeCell&&currentEditor?currentEditor.loadValue(n):n?applyFormatResultToCellNode(getFormatter(e,r)(e,o,getDataItemValueForColumn(n,r),r,n),i):i.innerHTML=\"\"}invalidatePostProcessingResults(e)}}function getViewportHeight(){return parseFloat($.css($container[0],\"height\",!0))-parseFloat($.css($container[0],\"paddingTop\",!0))-parseFloat($.css($container[0],\"paddingBottom\",!0))-parseFloat($.css($headerScroller[0],\"height\"))-getVBoxDelta($headerScroller)-(options.showTopPanel?options.topPanelHeight+getVBoxDelta($topPanelScroller):0)-(options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0)-(options.createFooterRow&&options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0)-(options.createPreHeaderPanel&&options.showPreHeaderPanel?options.preHeaderPanelHeight+getVBoxDelta($preHeaderPanelScroller):0)}function resizeCanvas(){initialized&&(viewportH=options.autoHeight?options.rowHeight*getDataLengthIncludingAddNew():getViewportHeight(),numVisibleRows=Math.ceil(viewportH/options.rowHeight),viewportW=parseFloat($.css($container[0],\"width\",!0)),options.autoHeight||$viewport.height(viewportH),options.forceFitColumns&&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(),t=getDataLengthIncludingAddNew(),o=t+(options.leaveSpaceForNewRows?numVisibleRows-1:0),r=viewportHasVScroll;viewportHasVScroll=!options.autoHeight&&o*options.rowHeight>viewportH,viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width,makeActiveCellNormal();var i=e-1;for(var l in rowsCache)i<l&&removeRowFromCache(l);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup(),activeCellNode&&i<activeRow&&resetActiveCell();var s=h;(th=Math.max(options.rowHeight*o,viewportH-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!==s&&($canvas.css(\"height\",h),scrollTop=$viewport[0].scrollTop);var a=scrollTop+offset<=th-viewportH;0==th||0==scrollTop?page=offset=0:scrollTo(a?scrollTop+offset:th-viewportH),h!=s&&options.autoHeight&&resizeCanvas(),options.forceFitColumns&&r!=viewportHasVScroll&&autosizeColumns(),updateCanvasWidth(!1)}}function getVisibleRange(e,t){return null==e&&(e=scrollTop),null==t&&(t=scrollLeft),{top:getRowFromPosition(e),bottom:getRowFromPosition(e+viewportH)+1,leftPx:t,rightPx:t+viewportW}}function getRenderedRange(e,t){var n=getVisibleRange(e,t),o=Math.round(viewportH/options.rowHeight);return-1==vScrollDir?(n.top-=o,n.bottom+=3):1==vScrollDir?(n.top-=3,n.bottom+=o):(n.top-=3,n.bottom+=3),n.top=Math.max(0,n.top),n.bottom=Math.min(getDataLengthIncludingAddNew()-1,n.bottom),n.leftPx-=viewportW,n.rightPx+=viewportW,n.leftPx=Math.max(0,n.leftPx),n.rightPx=Math.min(canvasWidth,n.rightPx),n}function ensureCellNodesInRowsCache(e){var t=rowsCache[e];if(t&&t.cellRenderQueue.length)for(var n=t.rowNode.lastChild;t.cellRenderQueue.length;){var o=t.cellRenderQueue.pop();n=(t.cellNodesByColumnIdx[o]=n).previousSibling}}function cleanUpCells(e,t){var n,o,r=rowsCache[t],i=[];for(var l in r.cellNodesByColumnIdx)if(r.cellNodesByColumnIdx.hasOwnProperty(l)){l|=0;var s=r.cellColSpans[l];(columnPosLeft[l]>e.rightPx||columnPosRight[Math.min(columns.length-1,l+s-1)]<e.leftPx)&&(t==activeRow&&l==activeCell||i.push(l))}for(postProcessgroupId++;null!=(n=i.pop());)o=r.cellNodesByColumnIdx[n],options.enableAsyncPostRenderCleanup&&postProcessedRows[t]&&postProcessedRows[t][n]?queuePostProcessedCellForCleanup(o,n,t):r.rowNode.removeChild(o),delete r.cellColSpans[n],delete r.cellNodesByColumnIdx[n],postProcessedRows[t]&&delete postProcessedRows[t][n],0}function cleanUpAndRenderCells(e){for(var t,n,o,r=[],i=[],l=e.top,s=e.bottom;l<=s;l++)if(t=rowsCache[l]){ensureCellNodesInRowsCache(l),cleanUpCells(e,l),n=0;var a=data.getItemMetadata&&data.getItemMetadata(l);a=a&&a.columns;for(var c=getDataItem(l),u=0,d=columns.length;u<d&&!(columnPosLeft[u]>e.rightPx);u++)if(null==(o=t.cellColSpans[u])){if(o=1,a){var p=a[columns[u].id]||a[u];\"*\"===(o=p&&p.colspan||1)&&(o=d-u)}columnPosRight[Math.min(d-1,u+o-1)]>e.leftPx&&(appendCellHtml(r,l,u,o,c),n++),u+=1<o?o-1:0}else u+=1<o?o-1:0;n&&(n,i.push(l))}if(r.length){var f,h,g=document.createElement(\"div\");for(g.innerHTML=r.join(\"\");null!=(f=i.pop());){var m;for(t=rowsCache[f];null!=(m=t.cellRenderQueue.pop());)h=g.lastChild,t.rowNode.appendChild(h),t.cellNodesByColumnIdx[m]=h}}}function renderRows(e){for(var t=$canvas[0],n=[],o=[],r=!1,i=getDataLength(),l=e.top,s=e.bottom;l<=s;l++)rowsCache[l]||(renderedRows++,o.push(l),rowsCache[l]={rowNode:null,cellColSpans:[],cellNodesByColumnIdx:[],cellRenderQueue:[]},appendRowHtml(n,l,e,i),activeCellNode&&activeRow===l&&(r=!0),counter_rows_rendered++);if(o.length){var a=document.createElement(\"div\");a.innerHTML=n.join(\"\");for(var l=0,s=o.length;l<s;l++)rowsCache[o[l]].rowNode=t.appendChild(a.firstChild);r&&(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 t in postProcessedRows[e])postProcessedRows[e].hasOwnProperty(t)&&(postProcessedRows[e][t]=\"C\");postProcessFromRow=Math.min(postProcessFromRow,e),postProcessToRow=Math.max(postProcessToRow,e),startPostProcessing()}function updateRowPositions(){for(var e in rowsCache)rowsCache[e].rowNode.style.top=getRowTop(e)+\"px\"}function render(){if(initialized){var e=getVisibleRange(),t=getRenderedRange();cleanupRows(t),lastRenderedScrollLeft!=scrollLeft&&cleanUpAndRenderCells(t),renderRows(t),postProcessFromRow=e.top,postProcessToRow=Math.min(getDataLengthIncludingAddNew()-1,e.bottom),startPostProcessing(),lastRenderedScrollTop=scrollTop,lastRenderedScrollLeft=scrollLeft,h_render=null}}function handleHeaderRowScroll(){var e=$headerRowScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handleFooterRowScroll(){var e=$footerRowScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handlePreHeaderPanelScroll(){var e=$preHeaderPanelScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handleScroll(){scrollTop=$viewport[0].scrollTop,scrollLeft=$viewport[0].scrollLeft;var e=Math.abs(scrollTop-prevScrollTop),t=Math.abs(scrollLeft-prevScrollLeft);if(t&&(prevScrollLeft=scrollLeft,$headerScroller[0].scrollLeft=scrollLeft,$topPanelScroller[0].scrollLeft=scrollLeft,$headerRowScroller[0].scrollLeft=scrollLeft,options.createFooterRow&&($footerRowScroller[0].scrollLeft=scrollLeft),options.createPreHeaderPanel&&($preHeaderPanelScroller[0].scrollLeft=scrollLeft)),e)if(vScrollDir=prevScrollTop<scrollTop?1:-1,prevScrollTop=scrollTop,e<viewportH)scrollTo(scrollTop+offset);else{var o=offset;page=h==viewportH?0:Math.min(n-1,Math.floor(scrollTop*((th-viewportH)/(h-viewportH))*(1/ph))),offset=Math.round(page*cj),o!=offset&&invalidateAllRows()}(t||e)&&(h_render&&clearTimeout(h_render),(20<Math.abs(lastRenderedScrollTop-scrollTop)||20<Math.abs(lastRenderedScrollLeft-scrollLeft))&&(options.forceSyncScrolling||Math.abs(lastRenderedScrollTop-scrollTop)<viewportH&&Math.abs(lastRenderedScrollLeft-scrollLeft)<viewportW?render():h_render=setTimeout(render,50),trigger(self.onViewportChanged,{grid:self}))),trigger(self.onScroll,{scrollLeft:scrollLeft,scrollTop:scrollTop,grid:self})}function asyncPostProcessRows(){for(var e=getDataLength();postProcessFromRow<=postProcessToRow;){var t=0<=vScrollDir?postProcessFromRow++:postProcessToRow--,n=rowsCache[t];if(n&&!(e<=t)){for(var o in postProcessedRows[t]||(postProcessedRows[t]={}),ensureCellNodesInRowsCache(t),n.cellNodesByColumnIdx)if(n.cellNodesByColumnIdx.hasOwnProperty(o)){var r=columns[o|=0],i=postProcessedRows[t][o];if(r.asyncPostRender&&\"R\"!==i){var l=n.cellNodesByColumnIdx[o];l&&r.asyncPostRender(l,t,getDataItem(t),r,\"C\"===i),postProcessedRows[t][o]=\"R\"}}return void(h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}}}function asyncPostProcessCleanupRows(){if(0<postProcessedCleanupQueue.length){for(var e=postProcessedCleanupQueue[0].groupId;0<postProcessedCleanupQueue.length&&postProcessedCleanupQueue[0].groupId==e;){var t=postProcessedCleanupQueue.shift();if(\"R\"==t.actionType&&$(t.node).remove(),\"C\"==t.actionType){var n=columns[t.columnIdx];n.asyncPostRenderCleanup&&t.node&&n.asyncPostRenderCleanup(t.node,t.rowIdx,n)}}h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay)}}function updateCellCssStylesOnRenderedRows(e,t){var n,o,r,i;for(var l in rowsCache){if(i=t&&t[l],r=e&&e[l],i)for(o in i)r&&i[o]==r[o]||(n=getCellNode(l,getColumnIndex(o)))&&$(n).removeClass(i[o]);if(r)for(o in r)i&&i[o]==r[o]||(n=getCellNode(l,getColumnIndex(o)))&&$(n).addClass(r[o])}}function addCellCssStyles(e,t){if(cellCssClasses[e])throw new Error(\"addCellCssStyles: cell CSS hash with key '\"+e+\"' already exists.\");updateCellCssStylesOnRenderedRows(cellCssClasses[e]=t,null),trigger(self.onCellCssStylesChanged,{key:e,hash:t,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,t){var n=cellCssClasses[e];updateCellCssStylesOnRenderedRows(cellCssClasses[e]=t,n),trigger(self.onCellCssStylesChanged,{key:e,hash:t,grid:self})}function getCellCssStyles(e){return cellCssClasses[e]}function flashCell(e,t,n){if(n=n||100,rowsCache[e]){var o=$(getCellNode(e,t)),r=function(e){e&&setTimeout(function(){o.queue(function(){o.toggleClass(options.cellFlashingCssClass).dequeue(),r(e-1)})},n)};r(4)}}function handleMouseWheel(e){var t=$(e.target).closest(\".slick-row\")[0];t!=rowNodeFromLastMouseWheelEvent&&(zombieRowNodeFromLastMouseWheelEvent&&zombieRowNodeFromLastMouseWheelEvent!=t&&(options.enableAsyncPostRenderCleanup&&zombieRowPostProcessedFromLastMouseWheelEvent?queuePostProcessedRowForCleanup(zombieRowCacheFromLastMouseWheelEvent,zombieRowPostProcessedFromLastMouseWheelEvent):$canvas[0].removeChild(zombieRowNodeFromLastMouseWheelEvent),zombieRowPostProcessedFromLastMouseWheelEvent=zombieRowCacheFromLastMouseWheelEvent=zombieRowNodeFromLastMouseWheelEvent=null,options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()),rowNodeFromLastMouseWheelEvent=t)}function handleDragInit(e,t){var n=getCellFromEvent(e);if(!n||!cellExists(n.row,n.cell))return!1;var o=trigger(self.onDragInit,t,e);return!!e.isImmediatePropagationStopped()&&o}function handleDragStart(e,t){var n=getCellFromEvent(e);if(!n||!cellExists(n.row,n.cell))return!1;var o=trigger(self.onDragStart,t,e);return!!e.isImmediatePropagationStopped()&&o}function handleDrag(e,t){return trigger(self.onDrag,t,e)}function handleDragEnd(e,t){trigger(self.onDragEnd,t,e)}function handleKeyDown(e){trigger(self.onKeyDown,{row:activeRow,cell:activeCell,grid:self},e);var t=e.isImmediatePropagationStopped(),n=Slick.keyCode;if(!t)if(e.shiftKey||e.altKey||e.ctrlKey)e.which!=n.TAB||!e.shiftKey||e.ctrlKey||e.altKey||(t=navigatePrev());else{if(options.editable&&currentEditor&&currentEditor.keyCaptureList&&-1<currentEditor.keyCaptureList.indexOf(e.which))return;if(e.which==n.ESCAPE){if(!getEditorLock().isActive())return;cancelEditAndSetFocus()}else e.which==n.PAGE_DOWN?(navigatePageDown(),t=!0):e.which==n.PAGE_UP?(navigatePageUp(),t=!0):e.which==n.LEFT?t=navigateLeft():e.which==n.RIGHT?t=navigateRight():e.which==n.UP?t=navigateUp():e.which==n.DOWN?t=navigateDown():e.which==n.TAB?t=navigateNext():e.which==n.ENTER&&(options.editable&&(currentEditor?activeRow===getDataLength()?navigateDown():commitEditAndSetFocus():getEditorLock().commitCurrentEdit()&&makeActiveCellEditable()),t=!0)}if(t){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 t=getCellFromEvent(e);if(t&&(null===currentEditor||activeRow!=t.row||activeCell!=t.cell)&&(trigger(self.onClick,{row:t.row,cell:t.cell,grid:self},e),!e.isImmediatePropagationStopped()&&canCellBeActive(t.row,t.cell)&&(!getEditorLock().isActive()||getEditorLock().commitCurrentEdit()))){scrollRowIntoView(t.row,!1);var n=e.target&&e.target.className===Slick.preClickClassName;setActiveCellInternal(getCellNode(t.row,t.cell),null,n)}}function handleContextMenu(e){var t=$(e.target).closest(\".slick-cell\",$canvas);0!==t.length&&(activeCellNode===t[0]&&null!==currentEditor||trigger(self.onContextMenu,{grid:self},e))}function handleDblClick(e){var t=getCellFromEvent(e);!t||null!==currentEditor&&activeRow==t.row&&activeCell==t.cell||(trigger(self.onDblClick,{row:t.row,cell:t.cell,grid:self},e),e.isImmediatePropagationStopped()||options.editable&&gotoCell(t.row,t.cell,!0))}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 t=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),n=t&&t.data(\"column\");trigger(self.onHeaderContextMenu,{column:n,grid:self},e)}function handleHeaderClick(e){var t=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),n=t&&t.data(\"column\");n&&trigger(self.onHeaderClick,{column:n,grid:self},e)}function handleMouseEnter(e){trigger(self.onMouseEnter,{grid:self},e)}function handleMouseLeave(e){trigger(self.onMouseLeave,{grid:self},e)}function cellExists(e,t){return!(e<0||e>=getDataLength()||t<0||t>=columns.length)}function getCellFromPoint(e,t){for(var n=getRowFromPosition(t),o=0,r=0,i=0;i<columns.length&&r<e;i++)r+=columns[i].width,o++;return o<0&&(o=0),{row:n,cell:o-1}}function getCellFromNode(e){var t=/l\\d+/.exec(e.className);if(!t)throw new Error(\"getCellFromNode: cannot get cell - \"+e.className);return parseInt(t[0].substr(1,t[0].length-1),10)}function getRowFromNode(e){for(var t in rowsCache)if(rowsCache[t].rowNode===e)return 0|t;return null}function getCellFromEvent(e){var t=$(e.target).closest(\".slick-cell\",$canvas);if(!t.length)return null;var n=getRowFromNode(t[0].parentNode),o=getCellFromNode(t[0]);return null==n||null==o?null:{row:n,cell:o}}function getCellNodeBox(e,t){if(!cellExists(e,t))return null;for(var n=getRowTop(e),o=n+options.rowHeight-1,r=0,i=0;i<t;i++)r+=columns[i].width;var l=r+columns[t].width;return{top:n,left:r,bottom:o,right:l}}function resetActiveCell(){setActiveCellInternal(null,!1)}function setFocus(){-1==tabbingDirection?$focusSink[0].focus():$focusSink2[0].focus()}function scrollCellIntoView(e,t,n){scrollRowIntoView(e,n);var o=getColspan(e,t);internalScrollColumnIntoView(columnPosLeft[t],columnPosRight[t+(1<o?o-1:0)])}function internalScrollColumnIntoView(e,t){var n=scrollLeft+viewportW;e<scrollLeft?($viewport.scrollLeft(e),handleScroll(),render()):n<t&&($viewport.scrollLeft(Math.min(e,t-$viewport[0].clientWidth)),handleScroll(),render())}function scrollColumnIntoView(e){internalScrollColumnIntoView(columnPosLeft[e],columnPosRight[e])}function setActiveCellInternal(e,t,n,o){null!==activeCellNode&&(makeActiveCellNormal(),$(activeCellNode).removeClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).removeClass(\"active\"));null!=(activeCellNode=e)?(activeRow=getRowFromNode(activeCellNode.parentNode),activeCell=activePosX=getCellFromNode(activeCellNode),null==t&&(t=activeRow==getDataLength()||options.autoEdit),options.showCellSelection&&($(activeCellNode).addClass(\"active\"),$(rowsCache[activeRow].rowNode).addClass(\"active\")),options.editable&&t&&isCellPotentiallyEditable(activeRow,activeCell)&&(clearTimeout(h_editorLoader),options.asyncEditorLoading?h_editorLoader=setTimeout(function(){makeActiveCellEditable(void 0,n)},options.asyncEditorLoadDelay):makeActiveCellEditable(void 0,n))):activeRow=activeCell=null,o||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,t){var n=getDataLength();return!(e<n&&!getDataItem(e))&&(!(columns[t].cannotTriggerInsert&&n<=e)&&!!getEditor(e,t))}function makeActiveCellNormal(){if(currentEditor){if(trigger(self.onBeforeCellEditorDestroy,{editor:currentEditor,grid:self}),currentEditor.destroy(),currentEditor=null,activeCellNode){var e=getDataItem(activeRow);if($(activeCellNode).removeClass(\"editable invalid\"),e){var t=columns[activeCell],n=getFormatter(activeRow,t),o=n(activeRow,activeCell,getDataItemValueForColumn(e,t),t,e,self);applyFormatResultToCellNode(o,activeCellNode),invalidatePostProcessingResults(activeRow)}}navigator.userAgent.toLowerCase().match(/msie/)&&clearTextSelection(),getEditorLock().deactivate(editController)}}function makeActiveCellEditable(e,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],o=getDataItem(activeRow);if(!1!==trigger(self.onBeforeEditCell,{row:activeRow,cell:activeCell,item:o,column:n,grid:self})){getEditorLock().activate(editController),$(activeCellNode).addClass(\"editable\");var r=e||getEditor(activeRow,activeCell);e||r.suppressClearOnEdit||(activeCellNode.innerHTML=\"\"),currentEditor=new r({grid:self,gridPosition:absBox($container[0]),position:absBox(activeCellNode),container:activeCellNode,column:n,item:o||{},commitChanges:commitEditAndSetFocus,cancelChanges:cancelEditAndSetFocus}),o&&(currentEditor.loadValue(o),t&&currentEditor.preClick&&currentEditor.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 t={top:e.offsetTop,left:e.offsetLeft,bottom:0,right:0,width:$(e).outerWidth(),height:$(e).outerHeight(),visible:!0};t.bottom=t.top+t.height,t.right=t.left+t.width;for(var n=e.offsetParent;(e=e.parentNode)!=document.body&&null!=e;)t.visible&&e.scrollHeight!=e.offsetHeight&&\"visible\"!=$(e).css(\"overflowY\")&&(t.visible=t.bottom>e.scrollTop&&t.top<e.scrollTop+e.clientHeight),t.visible&&e.scrollWidth!=e.offsetWidth&&\"visible\"!=$(e).css(\"overflowX\")&&(t.visible=t.right>e.scrollLeft&&t.left<e.scrollLeft+e.clientWidth),t.left-=e.scrollLeft,t.top-=e.scrollTop,e===n&&(t.left+=e.offsetLeft,t.top+=e.offsetTop,n=e.offsetParent),t.bottom=t.top+t.height,t.right=t.left+t.width;return t}function getActiveCellPosition(){return absBox(activeCellNode)}function getGridPosition(){return absBox($container[0])}function handleActiveCellPositionChange(){if(activeCellNode&&(trigger(self.onActiveCellPositionChanged,{grid:self}),currentEditor)){var e=getActiveCellPosition();currentEditor.show&&currentEditor.hide&&(e.visible?currentEditor.show():currentEditor.hide()),currentEditor.position&&currentEditor.position(e)}}function getCellEditor(){return currentEditor}function getActiveCell(){return activeCellNode?{row:activeRow,cell:activeCell,grid:self}:null}function getActiveCellNode(){return activeCellNode}function scrollRowIntoView(e,t){var n=e*options.rowHeight,o=(e+1)*options.rowHeight-viewportH+(viewportHasHScroll?scrollbarDimensions.height:0);(e+1)*options.rowHeight>scrollTop+viewportH+offset?(scrollTo(t?n:o),render()):e*options.rowHeight<scrollTop+offset&&(scrollTo(t?o:n),render())}function scrollRowToTop(e){scrollTo(e*options.rowHeight),render()}function scrollPage(e){var t=e*numVisibleRows;if(scrollTo((getRowFromPosition(scrollTop)+t)*options.rowHeight),render(),options.enableCellNavigation&&null!=activeRow){var n=activeRow+t,o=getDataLengthIncludingAddNew();o<=n&&(n=o-1),n<0&&(n=0);for(var r=0,i=null,l=activePosX;r<=activePosX;)canCellBeActive(n,r)&&(i=r),r+=getColspan(n,r);null!==i?(setActiveCellInternal(getCellNode(n,i)),activePosX=l):resetActiveCell()}}function navigatePageDown(){scrollPage(1)}function navigatePageUp(){scrollPage(-1)}function getColspan(e,t){var n=data.getItemMetadata&&data.getItemMetadata(e);if(!n||!n.columns)return 1;var o=n.columns[columns[t].id]||n.columns[t],r=o&&o.colspan;return r=\"*\"===r?columns.length-t:r||1}function findFirstFocusableCell(e){for(var t=0;t<columns.length;){if(canCellBeActive(e,t))return t;t+=getColspan(e,t)}return null}function findLastFocusableCell(e){for(var t=0,n=null;t<columns.length;)canCellBeActive(e,t)&&(n=t),t+=getColspan(e,t);return n}function gotoRight(e,t,n){if(t>=columns.length)return null;for(;(t+=getColspan(e,t))<columns.length&&!canCellBeActive(e,t););return t<columns.length?{row:e,cell:t,posX:t}:null}function gotoLeft(e,t,n){if(t<=0)return null;var o=findFirstFocusableCell(e);if(null===o||t<=o)return null;for(var r,i={row:e,cell:o,posX:o};;){if(!(r=gotoRight(i.row,i.cell,i.posX)))return null;if(r.cell>=t)return i;i=r}}function gotoDown(e,t,n){for(var o,r=getDataLengthIncludingAddNew();;){if(++e>=r)return null;for(o=t=0;t<=n;)t+=getColspan(e,o=t);if(canCellBeActive(e,o))return{row:e,cell:o,posX:n}}}function gotoUp(e,t,n){for(var o;;){if(--e<0)return null;for(o=t=0;t<=n;)t+=getColspan(e,o=t);if(canCellBeActive(e,o))return{row:e,cell:o,posX:n}}}function gotoNext(e,t,n){if(null==e&&null==t&&canCellBeActive(e=t=n=0,t))return{row:e,cell:t,posX:t};var o=gotoRight(e,t,n);if(o)return o;var r=null,i=getDataLengthIncludingAddNew();for(e===i-1&&e--;++e<i;)if(null!==(r=findFirstFocusableCell(e)))return{row:e,cell:r,posX:r};return null}function gotoPrev(e,t,n){if(null==e&&null==t&&(e=getDataLengthIncludingAddNew()-1,t=n=columns.length-1,canCellBeActive(e,t)))return{row:e,cell:t,posX:t};for(var o,r;!o&&!(o=gotoLeft(e,t,n));){if(--e<0)return null;t=0,null!==(r=findLastFocusableCell(e))&&(o={row:e,cell:r,posX:r})}return o}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 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}[e];var t={up:gotoUp,down:gotoDown,left:gotoLeft,right:gotoRight,prev:gotoPrev,next:gotoNext},n=t[e],o=n(activeRow,activeCell,activePosX);if(o){var r=o.row==getDataLength();return scrollCellIntoView(o.row,o.cell,!r),setActiveCellInternal(getCellNode(o.row,o.cell)),activePosX=o.posX,!0}return setActiveCellInternal(getCellNode(activeRow,activeCell)),!1}function getCellNode(e,t){return rowsCache[e]?(ensureCellNodesInRowsCache(e),rowsCache[e].cellNodesByColumnIdx[t]):null}function setActiveCell(e,t,n,o,r){initialized&&(e>getDataLength()||e<0||t>=columns.length||t<0||options.enableCellNavigation&&(scrollCellIntoView(e,t,!1),setActiveCellInternal(getCellNode(e,t),n,o,r)))}function canCellBeActive(e,t){if(!options.enableCellNavigation||e>=getDataLengthIncludingAddNew()||e<0||t>=columns.length||t<0)return!1;var n=data.getItemMetadata&&data.getItemMetadata(e);if(n&&\"boolean\"==typeof n.focusable)return n.focusable;var o=n&&n.columns;return o&&o[columns[t].id]&&\"boolean\"==typeof o[columns[t].id].focusable?o[columns[t].id].focusable:o&&o[t]&&\"boolean\"==typeof o[t].focusable?o[t].focusable:columns[t].focusable}function canCellBeSelected(e,t){if(e>=getDataLength()||e<0||t>=columns.length||t<0)return!1;var n=data.getItemMetadata&&data.getItemMetadata(e);if(n&&\"boolean\"==typeof n.selectable)return n.selectable;var o=n&&n.columns&&(n.columns[columns[t].id]||n.columns[t]);return o&&\"boolean\"==typeof o.selectable?o.selectable:columns[t].selectable}function gotoCell(e,t,n){if(initialized&&canCellBeActive(e,t)&&getEditorLock().commitCurrentEdit()){scrollCellIntoView(e,t,!1);var o=getCellNode(e,t);setActiveCellInternal(o,n||e===getDataLength()||options.autoEdit),currentEditor||setFocus()}}function commitCurrentEdit(){var e=getDataItem(activeRow),t=columns[activeCell];if(currentEditor){if(currentEditor.isValueChanged()){var n=currentEditor.validate();if(n.valid){if(activeRow<getDataLength()){var o={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:activeRow,cell:activeCell,item:e,grid:self})},undo:function(){this.editor.applyValue(e,this.prevSerializedValue),updateRow(this.row),trigger(self.onCellChange,{row:activeRow,cell:activeCell,item:e,grid:self})}};options.editCommandHandler?(makeActiveCellNormal(),options.editCommandHandler(e,t,o)):(o.execute(),makeActiveCellNormal())}else{var r={};currentEditor.applyValue(r,currentEditor.serializeValue()),makeActiveCellNormal(),trigger(self.onAddNewRow,{item:r,column:t,grid:self})}return!getEditorLock().isActive()}return $(activeCellNode).removeClass(\"invalid\"),$(activeCellNode).width(),$(activeCellNode).addClass(\"invalid\"),trigger(self.onValidationError,{editor:currentEditor,cellNode:activeCellNode,validationResults:n,row:activeRow,cell:activeCell,column:t,grid:self}),currentEditor.focus(),!1}makeActiveCellNormal()}return!0}function cancelCurrentEdit(){return makeActiveCellNormal(),!0}function rowsToRanges(e){for(var t=[],n=columns.length-1,o=0;o<e.length;o++)t.push(new Slick.Range(e[o],0,e[o],n));return t}function getSelectedRows(){if(!selectionModel)throw new Error(\"Selection model is not set\");return selectedRows}function setSelectedRows(e){if(!selectionModel)throw new Error(\"Selection model is not set\");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.3.4\",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,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,onColumnsResized: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,registerPlugin:registerPlugin,unregisterPlugin:unregisterPlugin,getColumns:getColumns,setColumns:setColumns,getColumnIndex:getColumnIndex,updateColumnHeader:updateColumnHeader,setSortColumn:setSortColumn,setSortColumns:setSortColumns,getSortColumns:getSortColumns,autosizeColumns:autosizeColumns,getOptions:getOptions,setOptions:setOptions,getData:getData,getDataLength:getDataLength,getDataItem:getDataItem,setData:setData,getSelectionModel:getSelectionModel,setSelectionModel:setSelectionModel,getSelectedRows:getSelectedRows,setSelectedRows:setSelectedRows,getContainerNode:getContainerNode,updatePagingStatusFromView:updatePagingStatusFromView,render:render,invalidate:invalidate,invalidateRow:invalidateRow,invalidateRows:invalidateRows,invalidateAllRows:invalidateAllRows,updateCell:updateCell,updateRow:updateRow,getViewport:getVisibleRange,getRenderedRange:getRenderedRange,resizeCanvas:resizeCanvas,updateRowCount:updateRowCount,scrollRowIntoView:scrollRowIntoView,scrollRowToTop:scrollRowToTop,scrollCellIntoView:scrollCellIntoView,scrollColumnIntoView:scrollColumnIntoView,getCanvasNode:getCanvasNode,getUID:getUID,getHeaderColumnWidthDiff:getHeaderColumnWidthDiff,getScrollbarDimensions:getScrollbarDimensions,getHeadersWidth:getHeadersWidth,getCanvasWidth:getCanvasWidth,focus:setFocus,getCellFromPoint:getCellFromPoint,getCellFromEvent:getCellFromEvent,getActiveCell:getActiveCell,setActiveCell:setActiveCell,getActiveCellNode:getActiveCellNode,getActiveCellPosition:getActiveCellPosition,resetActiveCell:resetActiveCell,editActiveCell:makeActiveCellEditable,getCellEditor:getCellEditor,getCellNode:getCellNode,getCellNodeBox:getCellNodeBox,canCellBeSelected:canCellBeSelected,canCellBeActive:canCellBeActive,navigatePrev:navigatePrev,navigateNext:navigateNext,navigateUp:navigateUp,navigateDown:navigateDown,navigateLeft:navigateLeft,navigateRight:navigateRight,navigatePageUp:navigatePageUp,navigatePageDown:navigatePageDown,gotoCell:gotoCell,getTopPanel:getTopPanel,setTopPanelVisibility:setTopPanelVisibility,getPreHeaderPanel:getPreHeaderPanel,setPreHeaderPanelVisibility:setPreHeaderPanelVisibility,setHeaderRowVisibility:setHeaderRowVisibility,getHeaderRow:getHeaderRow,getHeaderRowColumn:getHeaderRowColumn,setFooterRowVisibility:setFooterRowVisibility,getFooterRow:getFooterRow,getFooterRowColumn:getFooterRowColumn,getGridPosition:getGridPosition,flashCell:flashCell,addCellCssStyles:addCellCssStyles,setCellCssStyles:setCellCssStyles,removeCellCssStyles:removeCellCssStyles,getCellCssStyles:getCellCssStyles,init:finishInitialization,destroy:destroy,getEditorLock:getEditorLock,getEditController:getEditController}),init()}module.exports={Grid:SlickGrid}},448:function(e,t,n){t.exports=\"undefined\"!=typeof $?$:e(441)},449:function(e,t,n){var o=e(450),r=o.template;function i(e,t,n){return r(e,t,n)}i._=o,t.exports=i,\"function\"==typeof define&&define.amd?define(function(){return i}):\"undefined\"==typeof window&&\"undefined\"==typeof navigator||(window.UnderscoreTemplate=i)},450:function(e,t,n){\n      //     (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n      //     Underscore may be freely distributed under the MIT license.\n      var l={},o=Array.prototype,r=Object.prototype,i=o.slice,s=r.toString,a=r.hasOwnProperty,c=o.forEach,u=Object.keys,d=Array.isArray,p=function(){},f=p.each=p.forEach=function(e,t,n){if(null!=e)if(c&&e.forEach===c)e.forEach(t,n);else if(e.length===+e.length){for(var o=0,r=e.length;o<r;o++)if(t.call(n,e[o],o,e)===l)return}else for(var i=p.keys(e),o=0,r=i.length;o<r;o++)if(t.call(n,e[i[o]],i[o],e)===l)return};p.keys=u||function(e){if(e!==Object(e))throw new TypeError(\"Invalid object\");var t=[];for(var n in e)p.has(e,n)&&t.push(n);return t},p.defaults=function(n){return f(i.call(arguments,1),function(e){if(e)for(var t in e)void 0===n[t]&&(n[t]=e[t])}),n},p.isArray=d||function(e){return\"[object Array]\"===s.call(e)},p.has=function(e,t){if(!p.isArray(t))return null!=e&&a.call(e,t);for(var n=t.length,o=0;o<n;o++){var r=t[o];if(null==e||!a.call(e,r))return!1;e=e[r]}return!!n};var h={escape:{\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#x27;\"}},g={escape:new RegExp(\"[\"+p.keys(h.escape).join(\"\")+\"]\",\"g\")};p.each([\"escape\"],function(t){p[t]=function(e){return null==e?\"\":(\"\"+e).replace(g[t],function(e){return h[t][e]})}}),p.templateSettings={evaluate:/<%([\\s\\S]+?)%>/g,interpolate:/<%=([\\s\\S]+?)%>/g,escape:/<%-([\\s\\S]+?)%>/g};var m=/(.)^/,v={\"'\":\"'\",\"\\\\\":\"\\\\\",\"\\r\":\"r\",\"\\n\":\"n\",\"\\t\":\"t\",\"\\u2028\":\"u2028\",\"\\u2029\":\"u2029\"},w=/\\\\|'|\\r|\\n|\\t|\\u2028|\\u2029/g;p.template=function(i,e,t){var n;t=p.defaults({},t,p.templateSettings);var o=new RegExp([(t.escape||m).source,(t.interpolate||m).source,(t.evaluate||m).source].join(\"|\")+\"|$\",\"g\"),l=0,s=\"__p+='\";i.replace(o,function(e,t,n,o,r){return s+=i.slice(l,r).replace(w,function(e){return\"\\\\\"+v[e]}),t&&(s+=\"'+\\n((__t=(\"+t+\"))==null?'':_.escape(__t))+\\n'\"),n&&(s+=\"'+\\n((__t=(\"+n+\"))==null?'':__t)+\\n'\"),o&&(s+=\"';\\n\"+o+\"\\n__p+='\"),l=r+e.length,e}),s+=\"';\\n\",t.variable||(s=\"with(obj||{}){\\n\"+s+\"}\\n\"),s=\"var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\\n\"+s+\"return __p;\\n\";try{n=new Function(t.variable||\"obj\",\"_\",s)}catch(e){throw e.source=s,e}if(e)return n(e,p);var r=function(e){return n.call(this,e,p)};return r.source=\"function(\"+(t.variable||\"obj\")+\"){\\n\"+s+\"}\",r},t.exports=p}},0,0)}(a.Bokeh)}(this);\n      //# sourceMappingURL=bokeh-tables.min.js.map\n      /* END bokeh-tables.min.js */\n    },\n    \n    function(Bokeh) {\n      /* BEGIN bokeh-gl.min.js */\n      /*!\n       * Copyright (c) 2012 - 2018, 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(t,e){var a;a=t.Bokeh,function(t,e,n){if(null!=a)return a.register_plugin(t,{\"models/glyphs/webgl/base\":451,\"models/glyphs/webgl/index\":452,\"models/glyphs/webgl/line.frag\":453,\"models/glyphs/webgl/line\":454,\"models/glyphs/webgl/line.vert\":455,\"models/glyphs/webgl/main\":456,\"models/glyphs/webgl/markers.frag\":457,\"models/glyphs/webgl/markers\":458,\"models/glyphs/webgl/markers.vert\":459},456);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")}({451:function(t,e,n){var g=t(27),y=t(14),a=function(){function t(t,e){this.gl=t,this.glyph=e,this.nvertices=0,this.size_changed=!1,this.data_changed=!1,this.visuals_changed=!1,this.init()}return t.prototype.set_data_changed=function(t){t!=this.nvertices&&(this.nvertices=t,this.size_changed=!0),this.data_changed=!0},t.prototype.set_visuals_changed=function(){this.visuals_changed=!0},t.prototype.render=function(t,e,n){var a,s=[0,1,2],i=s[0],r=s[1],o=s[2],l=1,_=1,h=this.glyph.renderer.map_to_screen([i*l,r*l,o*l],[i*_,r*_,o*_]),c=h[0],f=h[1];if(isNaN(c[0]+c[1]+c[2]+f[0]+f[1]+f[2]))return y.logger.warn(\"WebGL backend (\"+this.glyph.model.type+\"): falling back to canvas rendering\"),!1;if(l=100/Math.min(Math.max(Math.abs(c[1]-c[0]),1e-12),1e12),_=100/Math.min(Math.max(Math.abs(f[1]-f[0]),1e-12),1e12),a=this.glyph.renderer.map_to_screen([i*l,r*l,o*l],[i*_,r*_,o*_]),c=a[0],f=a[1],1e-6<Math.abs(c[1]-c[0]-(c[2]-c[1]))||1e-6<Math.abs(f[1]-f[0]-(f[2]-f[1])))return y.logger.warn(\"WebGL backend (\"+this.glyph.model.type+\"): falling back to canvas rendering\"),!1;var d=[(c[1]-c[0])/l,(f[1]-f[0])/_],u=d[0],g=d[1],p=this.glyph.renderer.plot_view.gl.canvas,v=p.width,m=p.height,x={pixel_ratio:this.glyph.renderer.plot_view.canvas.pixel_ratio,width:v,height:m,dx:c[0]/u,dy:f[0]/g,sx:u,sy:g};return this.draw(e,n,x),!0},t}();function p(t,e){for(var n=new Float32Array(t),a=0,s=t;a<s;a++)n[a]=e;return n}function v(t,e){return void 0!==t[e].spec.value}n.BaseGLGlyph=a,n.line_width=function(t){return t<2&&(t=Math.sqrt(2*t)),t},n.fill_array_with_float=p,n.fill_array_with_vec=function(t,e,n){for(var a=new Float32Array(t*e),s=0;s<t;s++)for(var i=0;i<e;i++)a[s*e+i]=n[i];return a},n.visual_prop_is_singular=v,n.attach_float=function(t,e,n,a,s,i){if(s.doit)if(v(s,i))e.used=!1,t.set_attribute(n,\"float\",s[i].value());else{e.used=!0;var r=new Float32Array(s.cache[i+\"_array\"]);e.set_size(4*a),e.set_data(0,r),t.set_attribute(n,\"float\",e)}else e.used=!1,t.set_attribute(n,\"float\",[0])},n.attach_color=function(t,e,n,a,s,i){var r,o=i+\"_color\",l=i+\"_alpha\";if(s.doit)if(v(s,o)&&v(s,l))e.used=!1,r=g.color2rgba(s[o].value(),s[l].value()),t.set_attribute(n,\"vec4\",r);else{var _=void 0,h=void 0;e.used=!0,h=v(s,o)?function(){for(var t=[],e=0,n=a;e<n;e++)t.push(s[o].value());return t}():s.cache[o+\"_array\"],_=v(s,l)?p(a,s[l].value()):s.cache[l+\"_array\"];for(var c=new Float32Array(4*a),f=0,d=a;f<d;f++){r=g.color2rgba(h[f],_[f]);for(var u=0;u<4;u++)c[4*f+u]=r[u]}e.set_size(4*a*4),e.set_data(0,c),t.set_attribute(n,\"vec4\",e)}else e.used=!1,t.set_attribute(n,\"vec4\",[0,0,0,0])}},452:function(t,e,n){var a=t(391);a.__exportStar(t(454),n),a.__exportStar(t(458),n)},453:function(t,e,n){n.fragment_shader=\"\\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\"},454:function(t,e,n){var a=t(391),s=t(460),i=t(451),r=t(455),o=t(453),l=t(27),_=function(){function t(t){this._atlas={},this._index=0,this._width=256,this._height=256,this.tex=new s.Texture2D(t),this.tex.set_wrapping(t.REPEAT,t.REPEAT),this.tex.set_interpolation(t.NEAREST,t.NEAREST),this.tex.set_size([this._height,this._width],t.RGBA),this.tex.set_data([0,0],[this._height,this._width],new Uint8Array(this._height*this._width*4)),this.get_atlas_data([1])}return t.prototype.get_atlas_data=function(t){var e=t.join(\"-\"),n=this._atlas[e];if(void 0===n){var a=this.make_pattern(t),s=a[0],i=a[1];this.tex.set_data([this._index,0],[1,this._width],new Uint8Array(s.map(function(t){return t+10}))),this._atlas[e]=[this._index/this._height,i],this._index+=1}return this._atlas[e]},t.prototype.make_pattern=function(t){1<t.length&&t.length%2&&(t=t.concat(t));for(var e=0,n=0,a=t;n<a.length;n++){var s=a[n];e+=s}for(var i=[],r=0,o=0,l=t.length+2;o<l;o+=2){var _=Math.max(1e-4,t[o%t.length]),h=Math.max(1e-4,t[(o+1)%t.length]);i.push(r,r+_),r+=_+h}for(var c=this._width,f=new Float32Array(4*c),o=0,l=c;o<l;o++){for(var d=void 0,u=void 0,g=void 0,p=e*o/(c-1),v=0,m=1e16,x=0,y=i.length;x<y;x++){var b=Math.abs(i[x]-p);b<m&&(v=x,m=b)}v%2==0?(g=p<=i[v]?1:0,u=i[v],d=i[v+1]):(g=p>i[v]?-1:0,u=i[v-1],d=i[v]),f[4*o+0]=i[v],f[4*o+1]=g,f[4*o+2]=u,f[4*o+3]=d}return[f,e]},t}(),h={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},f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),e.prototype.init=function(){var t=this.gl;this._scale_aspect=0;var e=r.vertex_shader,n=o.fragment_shader;this.prog=new s.Program(t),this.prog.set_shaders(e,n),this.index_buffer=new s.IndexBuffer(t),this.vbo_position=new s.VertexBuffer(t),this.vbo_tangents=new s.VertexBuffer(t),this.vbo_segment=new s.VertexBuffer(t),this.vbo_angles=new s.VertexBuffer(t),this.vbo_texcoord=new s.VertexBuffer(t),this.dash_atlas=new _(t)},e.prototype.draw=function(t,e,n){var a=e.glglyph;if(a.data_changed){if(!isFinite(n.dx)||!isFinite(n.dy))return;a._baked_offset=[n.dx,n.dy],a._set_data(),a.data_changed=!1}this.visuals_changed&&(this._set_visuals(),this.visuals_changed=!1);var s=n.sx,i=n.sy,r=Math.sqrt(s*s+i*i);s/=r,i/=r,Math.abs(this._scale_aspect-i/s)>Math.abs(.001*this._scale_aspect)&&(a._update_scale(s,i),this._scale_aspect=i/s),this.prog.set_attribute(\"a_position\",\"vec2\",a.vbo_position),this.prog.set_attribute(\"a_tangents\",\"vec4\",a.vbo_tangents),this.prog.set_attribute(\"a_segment\",\"vec2\",a.vbo_segment),this.prog.set_attribute(\"a_angles\",\"vec2\",a.vbo_angles),this.prog.set_attribute(\"a_texcoord\",\"vec2\",a.vbo_texcoord),this.prog.set_uniform(\"u_length\",\"float\",[a.cumsum]),this.prog.set_texture(\"u_dash_atlas\",this.dash_atlas.tex);var o=a._baked_offset;if(this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[n.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[n.width,n.height]),this.prog.set_uniform(\"u_offset\",\"vec2\",[n.dx-o[0],n.dy-o[1]]),this.prog.set_uniform(\"u_scale_aspect\",\"vec2\",[s,i]),this.prog.set_uniform(\"u_scale_length\",\"float\",[r]),this.I_triangles=a.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);for(var l=this.I_triangles.length,_=64008,h=[],c=0,f=Math.ceil(l/_);c<f;c++)h.push([]);for(var c=0,f=t.length;c<f;c++){var d=t[c]%_,u=Math.floor(t[c]/_);h[u].push(d)}for(var u=0,f=h.length;u<f;u++){var g=new Uint16Array(h[u]),p=u*_*4;0!==g.length&&(this.prog.set_attribute(\"a_position\",\"vec2\",a.vbo_position,0,2*p),this.prog.set_attribute(\"a_tangents\",\"vec4\",a.vbo_tangents,0,4*p),this.prog.set_attribute(\"a_segment\",\"vec2\",a.vbo_segment,0,2*p),this.prog.set_attribute(\"a_angles\",\"vec2\",a.vbo_angles,0,2*p),this.prog.set_attribute(\"a_texcoord\",\"vec2\",a.vbo_texcoord,0,2*p),this.index_buffer.set_size(2*g.length),this.index_buffer.set_data(0,g),this.prog.draw(this.gl.TRIANGLES,this.index_buffer))}}},e.prototype._set_data=function(){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)},e.prototype._set_visuals=function(){var t,e=l.color2rgba(this.glyph.visuals.line.line_color.value(),this.glyph.visuals.line.line_alpha.value()),n=c[this.glyph.visuals.line.line_cap.value()],a=h[this.glyph.visuals.line.line_join.value()];this.prog.set_uniform(\"u_color\",\"vec4\",e),this.prog.set_uniform(\"u_linewidth\",\"float\",[this.glyph.visuals.line.line_width.value()]),this.prog.set_uniform(\"u_antialias\",\"float\",[.9]),this.prog.set_uniform(\"u_linecaps\",\"vec2\",[n,n]),this.prog.set_uniform(\"u_linejoin\",\"float\",[a]),this.prog.set_uniform(\"u_miter_limit\",\"float\",[10]);var s=this.glyph.visuals.line.line_dash.value(),i=0,r=1;s.length&&(t=this.dash_atlas.get_atlas_data(s),i=t[0],r=t[1]),this.prog.set_uniform(\"u_dash_index\",\"float\",[i]),this.prog.set_uniform(\"u_dash_phase\",\"float\",[this.glyph.visuals.line.line_dash_offset.value()]),this.prog.set_uniform(\"u_dash_period\",\"float\",[r]),this.prog.set_uniform(\"u_dash_caps\",\"vec2\",[n,n]),this.prog.set_uniform(\"u_closed\",\"float\",[0])},e.prototype._bake=function(){for(var t,e,n,a,s,i,r,o,l=this.nvertices,_=new Float64Array(this.glyph._x),h=new Float64Array(this.glyph._y),c=r=new Float32Array(2*l),f=new Float32Array(2*l),d=o=new Float32Array(4*l),u=0,g=l;u<g;u++)c[2*u+0]=_[u]+this._baked_offset[0],c[2*u+1]=h[u]+this._baked_offset[1];this.tangents=e=new Float32Array(2*l-2);for(var u=0,g=l-1;u<g;u++)e[2*u+0]=r[2*(u+1)+0]-r[2*u+0],e[2*u+1]=r[2*(u+1)+1]-r[2*u+1];for(var u=0,g=l-1;u<g;u++)d[4*(u+1)+0]=e[2*u+0],d[4*(u+1)+1]=e[2*u+1],d[4*u+2]=e[2*u+0],d[4*u+3]=e[2*u+1];d[0]=e[0],d[1]=e[1],d[4*(l-1)+2]=e[2*(l-2)+0],d[4*(l-1)+3]=e[2*(l-2)+1];for(var p=new Float32Array(l),u=0,g=l;u<g;u++)p[u]=Math.atan2(o[4*u+0]*o[4*u+3]-o[4*u+1]*o[4*u+2],o[4*u+0]*o[4*u+2]+o[4*u+1]*o[4*u+3]);for(var u=0,g=l-1;u<g;u++)f[2*u+0]=p[u],f[2*u+1]=p[u+1];var v=4*l-4;this.V_position=a=new Float32Array(2*v),this.V_angles=n=new Float32Array(2*v),this.V_tangents=s=new Float32Array(4*v),this.V_texcoord=i=new Float32Array(2*v);for(var u=0,g=l;u<g;u++)for(var m=0;m<4;m++){for(var x=0;x<2;x++)a[2*(4*u+m-2)+x]=c[2*u+x],n[2*(4*u+m)+x]=f[2*u+x];for(var x=0;x<4;x++)s[4*(4*u+m-2)+x]=d[4*u+x]}for(var u=0,g=l;u<g;u++)i[2*(4*u+0)+0]=-1,i[2*(4*u+1)+0]=-1,i[2*(4*u+2)+0]=1,i[2*(4*u+3)+0]=1,i[2*(4*u+0)+1]=-1,i[2*(4*u+1)+1]=1,i[2*(4*u+2)+1]=-1,i[2*(4*u+3)+1]=1;var y=6*(l-1);this.I_triangles=t=new Uint32Array(y);for(var u=0,g=l;u<g;u++)t[6*u+0]=0+4*u,t[6*u+1]=1+4*u,t[6*u+2]=3+4*u,t[6*u+3]=2+4*u,t[6*u+4]=0+4*u,t[6*u+5]=3+4*u},e.prototype._update_scale=function(t,e){var n,a=this.nvertices,s=4*a-4,i=this.tangents,r=new Float32Array(a-1),o=new Float32Array(2*a);this.V_segment=n=new Float32Array(2*s);for(var l=0,_=a-1;l<_;l++)r[l]=Math.sqrt(Math.pow(i[2*l+0]*t,2)+Math.pow(i[2*l+1]*e,2));for(var h=0,l=0,_=a-1;l<_;l++)h+=r[l],o[2*(l+1)+0]=h,o[2*l+1]=h;for(var l=0,_=a;l<_;l++)for(var c=0;c<4;c++)for(var f=0;f<2;f++)n[2*(4*l+c)+f]=o[2*l+f];this.cumsum=h,this.vbo_segment.set_size(4*this.V_segment.length),this.vbo_segment.set_data(0,this.V_segment)},e}(i.BaseGLGlyph);n.LineGLGlyph=f},455:function(t,e,n){n.vertex_shader=\"\\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 + u_offset) * abs_scale;\\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\"},456:function(t,e,n){t(452)},457:function(t,e,n){n.fragment_shader=function(t){return\"\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\nconst float PI = 3.14159265358979323846264;\\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\"+t+\"\\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    //gl_FragColor.rgb *= gl_FragColor.a;  // pre-multiply alpha\\n}\\n\"},n.circle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return length(P) - size/2.0;\\n}\\n\",n.square=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return max(abs(P.x), abs(P.y)) - size/2.0;\\n}\\n\",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\",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\",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\",n.invertedtriangle=\"\\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\",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',n.circlecross=\"\\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\",n.squarecross=\"\\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\",n.diamondcross=\"\\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\",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',n.circlex='\\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',n.squarex=\"\\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\",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'},458:function(t,e,n){var a=t(391),s=t(460),i=t(451),r=t(459),o=t(457),u=t(120),g=t(22),p=t(14),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),e.prototype.init=function(){var t=this.gl,e=r.vertex_shader,n=o.fragment_shader(this._marker_code);this.prog=new s.Program(t),this.prog.set_shaders(e,n),this.vbo_x=new s.VertexBuffer(t),this.prog.set_attribute(\"a_x\",\"float\",this.vbo_x),this.vbo_y=new s.VertexBuffer(t),this.prog.set_attribute(\"a_y\",\"float\",this.vbo_y),this.vbo_s=new s.VertexBuffer(t),this.prog.set_attribute(\"a_size\",\"float\",this.vbo_s),this.vbo_a=new s.VertexBuffer(t),this.prog.set_attribute(\"a_angle\",\"float\",this.vbo_a),this.vbo_linewidth=new s.VertexBuffer(t),this.vbo_fg_color=new s.VertexBuffer(t),this.vbo_bg_color=new s.VertexBuffer(t),this.index_buffer=new s.IndexBuffer(t)},e.prototype.draw=function(t,e,n){var a=e.glglyph,s=a.nvertices;if(a.data_changed){if(!isFinite(n.dx)||!isFinite(n.dy))return;a._baked_offset=[n.dx,n.dy],a._set_data(s),a.data_changed=!1}else this.glyph instanceof u.CircleView&&null!=this.glyph._radius&&(null==this.last_trans||n.sx!=this.last_trans.sx||n.sy!=this.last_trans.sy)&&(this.last_trans=n,this.vbo_s.set_data(0,new Float32Array(g.map(this.glyph.sradius,function(t){return 2*t}))));this.visuals_changed&&(this._set_visuals(s),this.visuals_changed=!1);var i=a._baked_offset;if(this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[n.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[n.width,n.height]),this.prog.set_uniform(\"u_offset\",\"vec2\",[n.dx-i[0],n.dy-i[1]]),this.prog.set_uniform(\"u_scale\",\"vec2\",[n.sx,n.sy]),this.prog.set_attribute(\"a_x\",\"float\",a.vbo_x),this.prog.set_attribute(\"a_y\",\"float\",a.vbo_y),this.prog.set_attribute(\"a_size\",\"float\",a.vbo_s),this.prog.set_attribute(\"a_angle\",\"float\",a.vbo_a),0!=t.length)if(t.length===s)this.prog.draw(this.gl.POINTS,[0,s]);else if(s<65535){var r=window.navigator.userAgent;0<r.indexOf(\"MSIE \")+r.indexOf(\"Trident/\")+r.indexOf(\"Edge/\")&&p.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{for(var o=[],l=0,_=Math.ceil(s/64e3);l<_;l++)o.push([]);for(var l=0,_=t.length;l<_;l++){var h=t[l]%64e3,c=Math.floor(t[l]/64e3);o[c].push(h)}for(var c=0,_=o.length;c<_;c++){var f=new Uint16Array(o[c]),d=64e3*c*4;0!==f.length&&(this.prog.set_attribute(\"a_x\",\"float\",a.vbo_x,0,d),this.prog.set_attribute(\"a_y\",\"float\",a.vbo_y,0,d),this.prog.set_attribute(\"a_size\",\"float\",a.vbo_s,0,d),this.prog.set_attribute(\"a_angle\",\"float\",a.vbo_a,0,d),this.vbo_linewidth.used&&this.prog.set_attribute(\"a_linewidth\",\"float\",this.vbo_linewidth,0,d),this.vbo_fg_color.used&&this.prog.set_attribute(\"a_fg_color\",\"vec4\",this.vbo_fg_color,0,4*d),this.vbo_bg_color.used&&this.prog.set_attribute(\"a_bg_color\",\"vec4\",this.vbo_bg_color,0,4*d),this.index_buffer.set_size(2*f.length),this.index_buffer.set_data(0,f),this.prog.draw(this.gl.POINTS,this.index_buffer))}}},e.prototype._set_data=function(t){var e=4*t;this.vbo_x.set_size(e),this.vbo_y.set_size(e),this.vbo_a.set_size(e),this.vbo_s.set_size(e);for(var n=new Float64Array(this.glyph._x),a=new Float64Array(this.glyph._y),s=0,i=t;s<i;s++)n[s]+=this._baked_offset[0],a[s]+=this._baked_offset[1];this.vbo_x.set_data(0,new Float32Array(n)),this.vbo_y.set_data(0,new Float32Array(a)),null!=this.glyph._angle&&this.vbo_a.set_data(0,new Float32Array(this.glyph._angle)),this.glyph instanceof u.CircleView&&null!=this.glyph._radius?this.vbo_s.set_data(0,new Float32Array(g.map(this.glyph.sradius,function(t){return 2*t}))):this.vbo_s.set_data(0,new Float32Array(this.glyph._size))},e.prototype._set_visuals=function(t){i.attach_float(this.prog,this.vbo_linewidth,\"a_linewidth\",t,this.glyph.visuals.line,\"line_width\"),i.attach_color(this.prog,this.vbo_fg_color,\"a_fg_color\",t,this.glyph.visuals.line,\"line\"),i.attach_color(this.prog,this.vbo_bg_color,\"a_bg_color\",t,this.glyph.visuals.fill,\"fill\"),this.prog.set_uniform(\"u_antialias\",\"float\",[.8])},e}(i.BaseGLGlyph);function _(n){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),Object.defineProperty(e.prototype,\"_marker_code\",{get:function(){return n},enumerable:!0,configurable:!0}),e}(l)}n.MarkerGLGlyph=l;var h=t(457);n.CircleGLGlyph=_(h.circle),n.SquareGLGlyph=_(h.square),n.DiamondGLGlyph=_(h.diamond),n.TriangleGLGlyph=_(h.triangle),n.InvertedTriangleGLGlyph=_(h.invertedtriangle),n.HexGLGlyph=_(h.hex),n.CrossGLGlyph=_(h.cross),n.CircleCrossGLGlyph=_(h.circlecross),n.SquareCrossGLGlyph=_(h.squarecross),n.DiamondCrossGLGlyph=_(h.diamondcross),n.XGLGlyph=_(h.x),n.CircleXGLGlyph=_(h.circlex),n.SquareXGLGlyph=_(h.squarex),n.AsteriskGLGlyph=_(h.asterisk)},459:function(t,e,n){n.vertex_shader=\"\\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_x;\\nattribute float a_y;\\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    // Calculate position - the -0.5 is to correct for canvas origin\\n    vec2 pos = (vec2(a_x, a_y) + u_offset) * u_scale; // 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\"},460:function(t,e,n){var a,s,o,i,r,p,d,l,u,x=function(t,e){return Array.isArray(t)&&Array.isArray(e)?t.concat(e):t+e},g=function(t,e){if(null==e);else{if(Array.isArray(e)){for(var n=0;n<e.length;n++)if(v(t,e[n]))return!0;return!1}if(e.constructor===Object){for(var a in e)if(t==a)return!0;return!1}if(e.constructor==String)return 0<=e.indexOf(t)}var s=Error(\"Not a container: \"+e);throw s.name=\"TypeError\",s},v=function t(e,n){if(null==e||null==n);else{if(Array.isArray(e)&&Array.isArray(n)){for(var a=0,s=e.length==n.length;s&&a<e.length;)s=t(e[a],n[a]),a+=1;return s}if(e.constructor===Object&&n.constructor===Object){var i=Object.keys(e),r=Object.keys(n);i.sort(),r.sort();for(var o,a=0,s=t(i,r);s&&a<i.length;)o=i[a],s=t(e[o],n[o]),a+=1;return s}}return e==n},_=function(t,e){if(void 0===t||\"undefined\"!=typeof window&&window===t||\"undefined\"!=typeof global&&global===t)throw\"Class constructor is called as a function.\";for(var n in t)void 0!==Object[n]||\"function\"!=typeof t[n]||t[n].nobind||(t[n]=t[n].bind(t));t.__init__&&t.__init__.apply(t,e)},m=function(t,e){if((\"number\"==typeof t)+(\"number\"==typeof e)===1){if(t.constructor===String)return h.call(t,e);if(e.constructor===String)return h.call(e,t);if(Array.isArray(e)){var n=t;t=e,e=n}if(Array.isArray(t)){for(var a=[],s=0;s<e;s++)a=a.concat(t);return a}}return t*e},y=function(t){return null===t||\"object\"!=typeof t?t:void 0!==t.length?!!t.length&&t:void 0!==t.byteLength?!!t.byteLength&&t:t.constructor!==Object||!!Object.getOwnPropertyNames(t).length&&t},b=function(t){if(!Array.isArray(this))return this.append.apply(this,arguments);this.push(t)},w=function(t,e){return this.constructor!==Object?this.get.apply(this,arguments):void 0!==this[t]?this[t]:void 0!==e?e:null},P=function(t){if(!Array.isArray(this))return this.remove.apply(this,arguments);for(var e=0;e<this.length;e++)if(v(this[e],t))return void this.splice(e,1);var n=Error(t);throw n.name=\"ValueError\",n},h=function(t){if(this.repeat)return this.repeat(t);if(t<1)return\"\";for(var e=\"\",n=this.valueOf();1<t;)1&t&&(e+=n),t>>=1,n+=n;return e+n},c=function(t){return this.constructor!==String?this.startswith.apply(this,arguments):0==this.indexOf(t)};u=window.console,l=function(t,e){var n,a,s,i,r,o,l;for(e=void 0===e?\"periodic check\":e,i=[];a=t.getError(),!(v(a,t.NO_ERROR)||y(i)&&v(a,i[i.length-1]));)b.call(i,a);if(i.length){for(r=\"\",\"object\"!=typeof(o=i)||Array.isArray(o)||(o=Object.keys(o)),l=0;l<o.length;l+=1)n=o[l],r=x(r,n);throw(s=new Error(\"RuntimeError:OpenGL got errors (\"+e+\"): \"+r)).name=\"RuntimeError\",s}return null},(s=function(){_(this,arguments)}).prototype._base_class=Object,s.prototype._class_name=\"GlooObject\",s.prototype.__init__=function(t){if(this._gl=t,this.handle=null,this._create(),null===this.handle)throw\"AssertionError: this.handle !== null\";return null},s.prototype._create=function(){var t;throw(t=new Error(\"NotImplementedError:\")).name=\"NotImplementedError\",t},((i=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,i.prototype._class_name=\"Program\",i.prototype.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\"},i.prototype.ATYPEMAP={float:\"vertexAttrib1f\",vec2:\"vertexAttrib2f\",vec3:\"vertexAttrib3f\",vec4:\"vertexAttrib4f\"},i.prototype.ATYPEINFO={float:[1,5126],vec2:[2,5126],vec3:[3,5126],vec4:[4,5126]},i.prototype._create=function(){return this.handle=this._gl.createProgram(),this.locations={},this._unset_variables=[],this._validated=!1,this._samplers={},this._attributes={},this._known_invalid=[],null},i.prototype.delete=function(){return this._gl.deleteProgram(this.handle),null},i.prototype.activate=function(){return this._gl.useProgram(this.handle),null},i.prototype.deactivate=function(){return this._gl.useProgram(0),null},i.prototype.set_shaders=function(t,e){var n,a,s,i,r,o,l,_,h,c,f,d,u;for(o=this._gl,this._linked=!1,u=o.createShader(o.VERTEX_SHADER),r=o.createShader(o.FRAGMENT_SHADER),f=[[t,u,\"vertex\"],[e,r,\"fragment\"]],_=0;_<2;_+=1)if(n=(c=f[_])[0],l=c[1],d=c[2],o.shaderSource(l,n),o.compileShader(l),h=o.getShaderParameter(l,o.COMPILE_STATUS),!y(h))throw i=o.getShaderInfoLog(l),(s=new Error(\"RuntimeError:\"+x(\"errors in \"+d+\" shader:\\n\",i))).name=\"RuntimeError\",s;if(o.attachShader(this.handle,u),o.attachShader(this.handle,r),o.linkProgram(this.handle),!y(o.getProgramParameter(this.handle,o.LINK_STATUS)))throw(a=new Error(\"RuntimeError:Program link error:\\n\"+o.getProgramInfoLog(this.handle))).name=\"RuntimeError\",a;return this._unset_variables=this._get_active_attributes_and_uniforms(),o.detachShader(this.handle,u),o.detachShader(this.handle,r),o.deleteShader(u),o.deleteShader(r),this._known_invalid=[],this._linked=!0,null},i.prototype._get_active_attributes_and_uniforms=function(){var s,t,e,n,a,i,r,o,l,_,h,c,f,d,u,g,p,v,m;for(o=this._gl,this.locations={},d=new window.RegExp(\"(\\\\w+)\\\\s*(\\\\[(\\\\d+)\\\\])\\\\s*\"),a=o.getProgramParameter(this.handle,o.ACTIVE_UNIFORMS),t=o.getProgramParameter(this.handle,o.ACTIVE_ATTRIBUTES),v=[],\"object\"!=typeof(g=[[s=[],t,o.getActiveAttrib,o.getAttribLocation],[v,a,o.getActiveUniform,o.getUniformLocation]])||Array.isArray(g)||(g=Object.keys(g)),p=0;p<g.length;p+=1)for(m=g[p],e=(u=m)[0],n=u[1],i=u[2],r=u[3],l=0;l<n;l+=1){if(_=i.call(o,this.handle,l),f=_.name,c=f.match(d),y(c))for(f=c[1],h=0;h<_.size;h+=1)b.call(e,[f+\"[\"+h+\"]\",_.type]);else b.call(e,[f,_.type]);this.locations[f]=r.call(o,this.handle,f)}return x(function(){var t,e,n,a=[];for(\"object\"!=typeof(e=s)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(t[0]);return a}.apply(this),function(){var t,e,n,a=[];for(\"object\"!=typeof(e=v)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(t[0]);return a}.apply(this))},i.prototype.set_texture=function(t,e){var n,a,s;if(!y(this._linked))throw(n=new Error(\"RuntimeError:Cannot set uniform when program has no code\")).name=\"RuntimeError\",n;return a=w.call(this.locations,t,-1),y(a<0)?g(t,this._known_invalid)||(b.call(this._known_invalid,t),u.log(\"Variable \"+t+\" is not an active texture\")):(g(t,this._unset_variables)&&P.call(this._unset_variables,t),this.activate(),s=function(){return\"function\"==typeof this.keys?this.keys.apply(this,arguments):Object.keys(this)}.call(this._samplers).length,g(t,this._samplers)&&(s=this._samplers[t][this._samplers[t].length-1]),this._samplers[t]=[e._target,e.handle,s],this._gl.uniform1i(a,s)),null},i.prototype.set_uniform=function(t,e,n){var a,s,i,r,o,l,_;if(!y(this._linked))throw(i=new Error(\"RuntimeError:Cannot set uniform when program has no code\")).name=\"RuntimeError\",i;if(o=w.call(this.locations,t,-1),y(o<0))return g(t,this._known_invalid)||(b.call(this._known_invalid,t),u.log(\"Variable \"+t+\" is not an active uniform\")),null;if(g(t,this._unset_variables)&&P.call(this._unset_variables,t),s=1,c.call(e,\"mat\")||(a=w.call({int:\"float\",bool:\"float\"},e,function(t){if(this.constructor!==String)return this.lstrip.apply(this,arguments);t=void 0===t?\" \\t\\r\\n\":t;for(var e=0;e<this.length;e++)if(t.indexOf(this[e])<0)return this.slice(e);return\"\"}.call(e,\"ib\")),s=Math.floor(n.length/this.ATYPEINFO[a][0])),y(1<s))for(l=0;l<s;l+=1)g(t+\"[\"+l+\"]\",this._unset_variables)&&g(_=t+\"[\"+l+\"]\",this._unset_variables)&&P.call(this._unset_variables,_);return r=this.UTYPEMAP[e],this.activate(),c.call(e,\"mat\")?this._gl[r](o,!1,n):this._gl[r](o,n),null},i.prototype.set_attribute=function(t,e,n,a,s){var i,r,o,l,_,h,c,f;if(a=void 0===a?0:a,s=void 0===s?0:s,!y(this._linked))throw(r=new Error(\"RuntimeError:Cannot set attribute when program has no code\")).name=\"RuntimeError\",r;return h=n instanceof d,_=w.call(this.locations,t,-1),y(_<0)?g(t,this._known_invalid)||(b.call(this._known_invalid,t),y(h)&&y(0<s)||u.log(\"Variable \"+t+\" is not an active attribute\")):(g(t,this._unset_variables)&&P.call(this._unset_variables,t),this.activate(),y(h)?(f=this.ATYPEINFO[e],c=f[0],l=f[1],o=\"vertexAttribPointer\",i=[c,l,this._gl.FALSE,a,s],this._attributes[t]=[n.handle,_,o,i]):(o=this.ATYPEMAP[e],this._attributes[t]=[0,_,o,n])),null},i.prototype._pre_draw=function(){var t,e,n,a,s,i,r,o,l,_,h,c;for(c in this.activate(),r=this._samplers)r.hasOwnProperty(c)&&(c=r[c],l=(i=c)[0],o=i[1],_=i[2],this._gl.activeTexture(x(this._gl.TEXTURE0,_)),this._gl.bindTexture(l,o));for(c in s=this._attributes)s.hasOwnProperty(c)&&(c=s[c],h=(a=c)[0],e=a[1],n=a[2],t=a[3],y(h)?(this._gl.bindBuffer(this._gl.ARRAY_BUFFER,h),this._gl.enableVertexAttribArray(e)):(this._gl.bindBuffer(this._gl.ARRAY_BUFFER,null),this._gl.disableVertexAttribArray(e)),this._gl[n].apply(this._gl,[].concat([e],t)));return y(this._validated)||(this._validated=!0,this._validate()),null},i.prototype._validate=function(){var t;if(this._unset_variables.length&&u.log(\"Program has unset variables: \"+this._unset_variables),this._gl.validateProgram(this.handle),!y(this._gl.getProgramParameter(this.handle,this._gl.VALIDATE_STATUS)))throw u.log(this._gl.getProgramInfoLog(this.handle)),(t=new Error(\"RuntimeError:Program validation error\")).name=\"RuntimeError\",t;return null},i.prototype.draw=function(t,e){var n,a,s,i,r;if(!y(this._linked))throw(a=new Error(\"RuntimeError:Cannot draw program if code has not been set\")).name=\"RuntimeError\",a;return l(this._gl,\"before draw\"),y(e instanceof o)?(this._pre_draw(),e.activate(),n=e._buffer_size/2,i=this._gl.UNSIGNED_SHORT,this._gl.drawElements(t,n,i,0),e.deactivate()):(s=(r=e)[0],n=r[1],y(n)&&(this._pre_draw(),this._gl.drawArrays(t,s,n))),l(this._gl,\"after draw\"),null},((a=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,a.prototype._class_name=\"Buffer\",a.prototype._target=null,a.prototype._usage=35048,a.prototype._create=function(){return this.handle=this._gl.createBuffer(),this._buffer_size=0,null},a.prototype.delete=function(){return this._gl.deleteBuffer(this.handle),null},a.prototype.activate=function(){return this._gl.bindBuffer(this._target,this.handle),null},a.prototype.deactivate=function(){return this._gl.bindBuffer(this._target,null),null},a.prototype.set_size=function(t){return v(t,this._buffer_size)||(this.activate(),this._gl.bufferData(this._target,t,this._usage),this._buffer_size=t),null},a.prototype.set_data=function(t,e){return this.activate(),this._gl.bufferSubData(this._target,t,e),null},(d=function(){_(this,arguments)}).prototype=Object.create(a.prototype),d.prototype._base_class=a.prototype,d.prototype._class_name=\"VertexBuffer\",d.prototype._target=34962,(o=function(){_(this,arguments)}).prototype=Object.create(a.prototype),o.prototype._base_class=a.prototype,o.prototype._class_name=\"IndexBuffer\",o.prototype._target=34963,((r=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,r.prototype._class_name=\"Texture2D\",r.prototype._target=3553,r.prototype._types={Int8Array:5120,Uint8Array:5121,Int16Array:5122,Uint16Array:5123,Int32Array:5124,Uint32Array:5125,Float32Array:5126},r.prototype._create=function(){return this.handle=this._gl.createTexture(),this._shape_format=null},r.prototype.delete=function(){return this._gl.deleteTexture(this.handle),null},r.prototype.activate=function(){return this._gl.bindTexture(this._target,this.handle),null},r.prototype.deactivate=function(){return this._gl.bindTexture(this._target,0),null},r.prototype._get_alignment=function(t){var e,n,a;for(\"object\"!=typeof(n=[4,8,2,1])||Array.isArray(n)||(n=Object.keys(n)),a=0;a<n.length;a+=1)if(e=n[a],v(t%e,0))return e;return null},r.prototype.set_wrapping=function(t,e){return this.activate(),this._gl.texParameterf(this._target,this._gl.TEXTURE_WRAP_S,t),this._gl.texParameterf(this._target,this._gl.TEXTURE_WRAP_T,e),null},r.prototype.set_interpolation=function(t,e){return this.activate(),this._gl.texParameterf(this._target,this._gl.TEXTURE_MIN_FILTER,t),this._gl.texParameterf(this._target,this._gl.TEXTURE_MAG_FILTER,e),null},r.prototype.set_size=function(t,e){var n,a,s;return n=(a=t)[0],s=a[1],v([n,s,e],this._shape_format)||(this._shape_format=[n,s,e],this.activate(),this._gl.texImage2D(this._target,0,e,s,n,0,e,this._gl.UNSIGNED_BYTE,null)),this.u_shape=[n,s],null},r.prototype.set_data=function(t,e,n){var a,s,i,r,o,l,_,h,c,f;if(v(e.length,2)&&(e=[e[0],e[1],1]),this.activate(),i=this._shape_format[2],o=(l=e)[0],h=l[1],l[2],f=(_=t)[0],c=_[1],null===(r=w.call(this._types,n.constructor.name,null)))throw(s=new Error(\"ValueError:Type \"+n.constructor.name+\" not allowed for texture\")).name=\"ValueError\",s;return a=this._get_alignment(m(e[e.length-2],e[e.length-1])),v(a,4)||this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,a),this._gl.texSubImage2D(this._target,0,c,f,h,o,i,r,n),v(a,4)||this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,4),null},((p=function(){_(this,arguments)}).prototype=Object.create(r.prototype))._base_class=r.prototype,p.prototype._class_name=\"Texture3DLike\",p.prototype.GLSL_SAMPLE_NEAREST=\"\\n        vec4 sample3D(sampler2D tex, vec3 texcoord, vec3 shape, vec2 tiles) {\\n            shape.xyz = shape.zyx;  // silly row-major convention\\n            float nrows = tiles.y, ncols = tiles.x;\\n            // Don't let adjacent frames be interpolated into this one\\n            texcoord.x = min(texcoord.x * shape.x, shape.x - 0.5);\\n            texcoord.x = max(0.5, texcoord.x) / shape.x;\\n            texcoord.y = min(texcoord.y * shape.y, shape.y - 0.5);\\n            texcoord.y = max(0.5, texcoord.y) / shape.y;\\n\\n            float zindex = floor(texcoord.z * shape.z);\\n\\n            // Do a lookup in the 2D texture\\n            float u = (mod(zindex, ncols) + texcoord.x) / ncols;\\n            float v = (floor(zindex / ncols) + texcoord.y) / nrows;\\n\\n            return texture2D(tex, vec2(u,v));\\n        }\\n    \",p.prototype.GLSL_SAMPLE_LINEAR=\"\\n        vec4 sample3D(sampler2D tex, vec3 texcoord, vec3 shape, vec2 tiles) {\\n            shape.xyz = shape.zyx;  // silly row-major convention\\n            float nrows = tiles.y, ncols = tiles.x;\\n            // Don't let adjacent frames be interpolated into this one\\n            texcoord.x = min(texcoord.x * shape.x, shape.x - 0.5);\\n            texcoord.x = max(0.5, texcoord.x) / shape.x;\\n            texcoord.y = min(texcoord.y * shape.y, shape.y - 0.5);\\n            texcoord.y = max(0.5, texcoord.y) / shape.y;\\n\\n            float z = texcoord.z * shape.z;\\n            float zindex1 = floor(z);\\n            float u1 = (mod(zindex1, ncols) + texcoord.x) / ncols;\\n            float v1 = (floor(zindex1 / ncols) + texcoord.y) / nrows;\\n\\n            float zindex2 = zindex1 + 1.0;\\n            float u2 = (mod(zindex2, ncols) + texcoord.x) / ncols;\\n            float v2 = (floor(zindex2 / ncols) + texcoord.y) / nrows;\\n\\n            vec4 s1 = texture2D(tex, vec2(u1, v1));\\n            vec4 s2 = texture2D(tex, vec2(u2, v2));\\n\\n            return s1 * (zindex2 - z) + s2 * (z - zindex1);\\n        }\\n    \",p.prototype._get_tile_info=function(t){var e,n,a,s;if(n=this._gl.getParameter(this._gl.MAX_TEXTURE_SIZE),s=Math.floor(n/t[1]),s=Math.min(s,t[0]),a=window.Math.ceil(t[0]/s),y(m(a,t[2])>n))throw(e=new Error(\"RuntimeError:Cannot fit 3D data with shape \"+t+\" onto simulated 2D texture.\")).name=\"RuntimeError\",e;return[s,a]},p.prototype.set_size=function(t,e){var n,a,s,i;return i=this._get_tile_info(t),a=i[0],n=i[1],s=[m(t[1],a),m(t[2],n)],p.prototype._base_class.set_size.call(this,s,e),this.u_shape=[t[0],t[1],t[2]],this.u_tiles=[n,a],null},p.prototype.set_data=function(s,t,e){var n,a,i,r,o,l,_,h,c,f,d,u,g;if(v(t.length,3)&&(t=[t[0],t[1],t[2],1]),!function(t){for(var e=0;e<t.length;e++)if(!y(t[e]))return!1;return!0}(function(){var t,e,n,a=[];for(\"object\"!=typeof(e=s)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(v(t,0));return a}.apply(this)))throw(r=new Error(\"ValueError:Texture3DLike does not support nonzero offset (for now)\")).name=\"ValueError\",r;if(c=this._get_tile_info(t),l=c[0],o=c[1],h=[m(t[1],l),m(t[2],o),t[3]],v(o,1))p.prototype._base_class.set_data.call(this,[0,0],h,e);else for(n=e.constructor,g=new n(m(m(h[0],h[1]),h[2])),p.prototype._base_class.set_data.call(this,[0,0],h,g),u=0;u<t[0];u+=1)f=[Math.floor(u/o),u%o],_=f[0],a=f[1],i=Math.floor(e.length/t[0]),d=e.slice(m(u,i),m(u+1,i)),p.prototype._base_class.set_data.call(this,[m(_,t[1]),m(a,t[2])],t.slice(1),d);return null},e.exports={Buffer:a,GlooObject:s,IndexBuffer:o,Program:i,Texture2D:r,Texture3DLike:p,VertexBuffer:d,check_error:l,console:u}}})}(this);\n      //# sourceMappingURL=bokeh-gl.min.js.map\n      /* END bokeh-gl.min.js */\n    },\n    \n    function(Bokeh) {\n      Bokeh.set_log_level(\"info\");\n    },\n    \n    function(Bokeh) {\n      \n    },\n    function(Bokeh) {\n      console.log(\"Bokeh: injecting raw CSS\");\n      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh.min.css */\\n.bk-root{font-family:\\\"Helvetica Neue\\\",Helvetica,Arial,sans-serif;font-size:10pt;position:relative;width:auto;height:auto}.bk-root .bk-shading{position:absolute;display:block;border:1px dashed green}.bk-root .bk-tile-attribution a{color:black}.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-grid-row,.bk-root .bk-grid-column{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap}.bk-root .bk-grid-row>*,.bk-root .bk-grid-column>*{flex-shrink:0;-webkit-flex-shrink:0}.bk-root .bk-grid-row{flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-grid-column{flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-canvas-wrapper{position:relative;font-size:12pt}.bk-root .bk-canvas,.bk-root .bk-canvas-overlays,.bk-root .bk-canvas-events{position:absolute;top:0;left:0;width:100%;height:100%}.bk-root .bk-canvas-map{position:absolute;border:0}.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-notebook{display:inline-block;vertical-align:middle;margin-right:5px}.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-toolbar,.bk-root .bk-toolbar *{box-sizing:border-box;margin:0;padding:0}.bk-root .bk-toolbar-hidden{visibility:hidden;opacity:0;transition:visibility .3s linear,opacity .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;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.bk-root .bk-toolbar .bk-logo{flex-shrink:0;-webkit-flex-shrink:0}.bk-root .bk-toolbar-above,.bk-root .bk-toolbar-below{flex-direction:row;-webkit-flex-direction:row;justify-content:flex-end;-webkit-justify-content:flex-end}.bk-root .bk-toolbar-above .bk-button-bar,.bk-root .bk-toolbar-below .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-toolbar-above .bk-logo,.bk-root .bk-toolbar-below .bk-logo{order:1;-webkit-order:1;margin-left:5px}.bk-root .bk-toolbar-left,.bk-root .bk-toolbar-right{flex-direction:column;-webkit-flex-direction:column;justify-content:flex-start;-webkit-justify-content:flex-start}.bk-root .bk-toolbar-left .bk-button-bar,.bk-root .bk-toolbar-right .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-toolbar-left .bk-logo,.bk-root .bk-toolbar-right .bk-logo{order:0;-webkit-order:0;margin-bottom:5px}.bk-root .bk-toolbar-button{width:30px;height:30px;background-size:60%;background-color:transparent;background-repeat:no-repeat;background-position:center center}.bk-root .bk-toolbar-button:hover{background-color:#f9f9f9}.bk-root .bk-toolbar-button:focus{outline:0}.bk-root .bk-toolbar-button::-moz-focus-inner{border:0}.bk-root .bk-toolbar-above .bk-toolbar-button{border-bottom:2px solid transparent}.bk-root .bk-toolbar-above .bk-toolbar-button.bk-active{border-bottom-color:#26aae1}.bk-root .bk-toolbar-below .bk-toolbar-button{border-top:2px solid transparent}.bk-root .bk-toolbar-below .bk-toolbar-button.bk-active{border-top-color:#26aae1}.bk-root .bk-toolbar-right .bk-toolbar-button{border-left:2px solid transparent}.bk-root .bk-toolbar-right .bk-toolbar-button.bk-active{border-left-color:#26aae1}.bk-root .bk-toolbar-left .bk-toolbar-button{border-right:2px solid transparent}.bk-root .bk-toolbar-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-above .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-below .bk-button-bar+.bk-button-bar:before{height:10px;width:1px}.bk-root .bk-toolbar-left .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-right .bk-button-bar+.bk-button-bar:before{height:1px;width:10px}.bk-root .bk-tooltip{font-family:\\\"HelveticaNeue-Light\\\",\\\"Helvetica Neue Light\\\",\\\"Helvetica Neue\\\",Helvetica,Arial,\\\"Lucida Grande\\\",sans-serif;font-weight:300;font-size:12px;position:absolute;padding:5px;border:1px solid #e5e5e5;color:#2f2f2f;background-color:white;pointer-events:none;opacity:.95}.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:#ddd solid 1px;display:inline-block}.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:0;padding:1px}\\n/* END bokeh.min.css */\");\n      console.log(\"Bokeh: injecting raw CSS\");\n      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh-widgets.min.css */\\n@charset \\\"UTF-8\\\";.bk-root{/*!\\n * Pikaday\\n * Copyright \\u00a9 2014 David Bushell | BSD & MIT license | http://dbushell.com/\\n */}.bk-root .bk-noUi-target,.bk-root .bk-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 .bk-noUi-target{position:relative;direction:ltr}.bk-root .bk-noUi-base{width:100%;height:100%;position:relative;z-index:1}.bk-root .bk-noUi-connect{position:absolute;right:0;top:0;left:0;bottom:0}.bk-root .bk-noUi-origin{position:absolute;height:0;width:0}.bk-root .bk-noUi-handle{position:relative;z-index:1}.bk-root .bk-noUi-state-tap .bk-noUi-connect,.bk-root .bk-noUi-state-tap .bk-noUi-origin{-webkit-transition:top .3s,right .3s,bottom .3s,left .3s;transition:top .3s,right .3s,bottom .3s,left .3s}.bk-root .bk-noUi-state-drag *{cursor:inherit !important}.bk-root .bk-noUi-base,.bk-root .bk-noUi-handle{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.bk-root .bk-noUi-horizontal{height:18px}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:34px;height:28px;left:-17px;top:-6px}.bk-root .bk-noUi-vertical{width:18px}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:28px;height:34px;left:-6px;top:-17px}.bk-root .bk-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 .bk-noUi-connect{background:#3fb8af;border-radius:4px;box-shadow:inset 0 0 3px rgba(51,51,51,0.45);-webkit-transition:background 450ms;transition:background 450ms}.bk-root .bk-noUi-draggable{cursor:ew-resize}.bk-root .bk-noUi-vertical .bk-noUi-draggable{cursor:ns-resize}.bk-root .bk-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 .bk-noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.bk-root .bk-noUi-handle:before,.bk-root .bk-noUi-handle:after{content:\\\"\\\";display:block;position:absolute;height:14px;width:1px;background:#e8e7e6;left:14px;top:6px}.bk-root .bk-noUi-handle:after{left:17px}.bk-root .bk-noUi-vertical .bk-noUi-handle:before,.bk-root .bk-noUi-vertical .bk-noUi-handle:after{width:14px;height:1px;left:6px;top:14px}.bk-root .bk-noUi-vertical .bk-noUi-handle:after{top:17px}.bk-root [disabled] .bk-noUi-connect{background:#b8b8b8}.bk-root [disabled].bk-noUi-target,.bk-root [disabled].bk-noUi-handle,.bk-root [disabled] .bk-noUi-handle{cursor:not-allowed}.bk-root .bk-noUi-pips,.bk-root .bk-noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box}.bk-root .bk-noUi-pips{position:absolute;color:#999}.bk-root .bk-noUi-value{position:absolute;white-space:nowrap;text-align:center}.bk-root .bk-noUi-value-sub{color:#ccc;font-size:10px}.bk-root .bk-noUi-marker{position:absolute;background:#CCC}.bk-root .bk-noUi-marker-sub{background:#AAA}.bk-root .bk-noUi-marker-large{background:#AAA}.bk-root .bk-noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.bk-root .bk-noUi-value-horizontal{-webkit-transform:translate3d(-50%,50%,0);transform:translate3d(-50%,50%,0)}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker{margin-left:-1px;width:2px;height:5px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-sub{height:10px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-large{height:15px}.bk-root .bk-noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.bk-root .bk-noUi-value-vertical{-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0);padding-left:25px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker{width:5px;height:2px;margin-top:-1px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-sub{width:10px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-large{width:15px}.bk-root .bk-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 .bk-noUi-horizontal .bk-noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.bk-root .bk-noUi-vertical .bk-noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}.bk-root .bk-noUi-handle{cursor:grab;cursor:-webkit-grab}.bk-root .bk-noUi-handle.bk-noUi-active{cursor:grabbing;cursor:-webkit-grabbing}.bk-root .bk-noUi-tooltip{display:none;white-space:nowrap}.bk-root .bk-noUi-handle:hover .bk-noUi-tooltip{display:block}.bk-root .bk-noUi-horizontal{width:100%;height:10px}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:14px;height:18px;left:-7px;top:-5px}.bk-root .bk-noUi-vertical{width:10px;height:100%}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:18px;height:14px;left:-5px;top:-7px}.bk-root .bk-noUi-handle:after,.bk-root .bk-noUi-handle:before{display:none}.bk-root .bk-noUi-connect{box-shadow:none}.bk-root fieldset{padding:0;margin:0;border:0;min-width:0}.bk-root legend{display:block;width:100%;padding:0;margin-bottom:17px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}.bk-root label{display:inline-block;margin-bottom:5px}.bk-root input[type=\\\"search\\\"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bk-root input[type=\\\"radio\\\"],.bk-root input[type=\\\"checkbox\\\"]{margin:4px 0 0;margin-top:1px \\\\9;line-height:normal}.bk-root input[type=\\\"file\\\"]{display:block}.bk-root input[type=\\\"range\\\"]{display:block;width:100%}.bk-root select[multiple],.bk-root select[size]{height:auto}.bk-root input[type=\\\"file\\\"]:focus,.bk-root input[type=\\\"radio\\\"]:focus,.bk-root input[type=\\\"checkbox\\\"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.bk-root output{display:block;padding-top:7px;line-height:1.42857143;color:#555}.bk-root .bk-bs-form-control{display:block;height:31px;padding:0 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px}.bk-root .bk-bs-form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6)}.bk-root .bk-bs-form-control::-moz-placeholder{color:#999;opacity:1}.bk-root .bk-bs-form-control:-ms-input-placeholder{color:#999}.bk-root .bk-bs-form-control::-webkit-input-placeholder{color:#999}.bk-root .bk-bs-form-control[disabled],.bk-root .bk-bs-form-control[readonly],fieldset[disabled] .bk-root .bk-bs-form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.bk-root .bk-bs-form-control{height:auto}.bk-root input[type=\\\"search\\\"]{-webkit-appearance:none}.bk-root input[type=\\\"date\\\"]{line-height:31px}.bk-root .bk-bs-form-group{margin-bottom:15px}.bk-root .bk-bs-radio,.bk-root .bk-bs-checkbox{display:block;min-height:17px;margin-top:10px;margin-bottom:10px;padding-left:20px}.bk-root .bk-bs-radio label,.bk-root .bk-bs-checkbox label{display:inline;font-weight:normal;cursor:pointer}.bk-root .bk-bs-radio input[type=\\\"radio\\\"],.bk-root .bk-bs-radio-inline input[type=\\\"radio\\\"],.bk-root .bk-bs-checkbox input[type=\\\"checkbox\\\"],.bk-root .bk-bs-checkbox-inline input[type=\\\"checkbox\\\"]{float:left;margin-left:-20px}.bk-root .bk-bs-radio+.bk-bs-radio,.bk-root .bk-bs-checkbox+.bk-bs-checkbox{margin-top:-5px}.bk-root .bk-bs-radio-inline,.bk-root .bk-bs-checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.bk-root .bk-bs-radio-inline+.bk-bs-radio-inline,.bk-root .bk-bs-checkbox-inline+.bk-bs-checkbox-inline{margin-top:0;margin-left:10px}.bk-root input[type=\\\"radio\\\"][disabled],.bk-root input[type=\\\"checkbox\\\"][disabled],.bk-root .bk-bs-radio[disabled],.bk-root .bk-bs-radio-inline[disabled],.bk-root .bk-bs-checkbox[disabled],.bk-root .bk-bs-checkbox-inline[disabled],fieldset[disabled] .bk-root input[type=\\\"radio\\\"],fieldset[disabled] .bk-root input[type=\\\"checkbox\\\"],fieldset[disabled] .bk-root .bk-bs-radio,fieldset[disabled] .bk-root .bk-bs-radio-inline,fieldset[disabled] .bk-root .bk-bs-checkbox,fieldset[disabled] .bk-root .bk-bs-checkbox-inline{cursor:not-allowed}.bk-root .bk-bs-input-sm{height:28px;padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}select.bk-root .bk-bs-input-sm{height:28px;line-height:28px}textarea.bk-root .bk-bs-input-sm,select[multiple].bk-root .bk-bs-input-sm{height:auto}.bk-root .bk-bs-input-lg{height:42px;padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}select.bk-root .bk-bs-input-lg{height:42px;line-height:42px}textarea.bk-root .bk-bs-input-lg,select[multiple].bk-root .bk-bs-input-lg{height:auto}.bk-root .bk-bs-has-feedback{position:relative}.bk-root .bk-bs-has-feedback .bk-bs-form-control{padding-right:38.75px}.bk-root .bk-bs-has-feedback .bk-bs-form-control-feedback{position:absolute;top:22px;right:0;display:block;width:31px;height:31px;line-height:31px;text-align:center}.bk-root .bk-bs-has-success .bk-bs-help-block,.bk-root .bk-bs-has-success .bk-bs-control-label,.bk-root .bk-bs-has-success .bk-bs-radio,.bk-root .bk-bs-has-success .bk-bs-checkbox,.bk-root .bk-bs-has-success .bk-bs-radio-inline,.bk-root .bk-bs-has-success .bk-bs-checkbox-inline{color:#3c763d}.bk-root .bk-bs-has-success .bk-bs-form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-success .bk-bs-form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.bk-root .bk-bs-has-success .bk-bs-input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.bk-root .bk-bs-has-success .bk-bs-form-control-feedback{color:#3c763d}.bk-root .bk-bs-has-warning .bk-bs-help-block,.bk-root .bk-bs-has-warning .bk-bs-control-label,.bk-root .bk-bs-has-warning .bk-bs-radio,.bk-root .bk-bs-has-warning .bk-bs-checkbox,.bk-root .bk-bs-has-warning .bk-bs-radio-inline,.bk-root .bk-bs-has-warning .bk-bs-checkbox-inline{color:#8a6d3b}.bk-root .bk-bs-has-warning .bk-bs-form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-warning .bk-bs-form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.bk-root .bk-bs-has-warning .bk-bs-input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.bk-root .bk-bs-has-warning .bk-bs-form-control-feedback{color:#8a6d3b}.bk-root .bk-bs-has-error .bk-bs-help-block,.bk-root .bk-bs-has-error .bk-bs-control-label,.bk-root .bk-bs-has-error .bk-bs-radio,.bk-root .bk-bs-has-error .bk-bs-checkbox,.bk-root .bk-bs-has-error .bk-bs-radio-inline,.bk-root .bk-bs-has-error .bk-bs-checkbox-inline{color:#a94442}.bk-root .bk-bs-has-error .bk-bs-form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-error .bk-bs-form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.bk-root .bk-bs-has-error .bk-bs-input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.bk-root .bk-bs-has-error .bk-bs-form-control-feedback{color:#a94442}.bk-root .bk-bs-form-control-static{margin-bottom:0}.bk-root .bk-bs-help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.bk-root .bk-bs-form-inline .bk-bs-form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-form-control{display:inline-block;width:auto;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-input-group>.bk-bs-form-control{width:100%}.bk-root .bk-bs-form-inline .bk-bs-control-label{margin-bottom:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-radio,.bk-root .bk-bs-form-inline .bk-bs-checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-radio input[type=\\\"radio\\\"],.bk-root .bk-bs-form-inline .bk-bs-checkbox input[type=\\\"checkbox\\\"]{float:none;margin-left:0}.bk-root .bk-bs-form-inline .bk-bs-has-feedback .bk-bs-form-control-feedback{top:0}}.bk-root .bk-bs-form-horizontal .bk-bs-control-label,.bk-root .bk-bs-form-horizontal .bk-bs-radio,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox,.bk-root .bk-bs-form-horizontal .bk-bs-radio-inline,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.bk-root .bk-bs-form-horizontal .bk-bs-radio,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox{min-height:24px}.bk-root .bk-bs-form-horizontal .bk-bs-form-group{margin-left:-15px;margin-right:-15px}.bk-root .bk-bs-form-horizontal .bk-bs-form-control-static{padding-top:7px}@media(min-width:768px){.bk-root .bk-bs-form-horizontal .bk-bs-control-label{text-align:right}}.bk-root .bk-bs-form-horizontal .bk-bs-has-feedback .bk-bs-form-control-feedback{top:0;right:15px}.bk-root .bk-bs-btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:12px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bk-root .bk-bs-btn:focus,.bk-root .bk-bs-btn:active:focus,.bk-root .bk-bs-btn.bk-bs-active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.bk-root .bk-bs-btn:hover,.bk-root .bk-bs-btn:focus{color:#333;text-decoration:none}.bk-root .bk-bs-btn:active,.bk-root .bk-bs-btn.bk-bs-active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.bk-root .bk-bs-btn.bk-bs-disabled,.bk-root .bk-bs-btn[disabled],fieldset[disabled] .bk-root .bk-bs-btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn-default{color:#333;background-color:#fff;border-color:#ccc}.bk-root .bk-bs-btn-default:hover,.bk-root .bk-bs-btn-default:focus,.bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-default{background-image:none}.bk-root .bk-bs-btn-default.bk-bs-disabled,.bk-root .bk-bs-btn-default[disabled],fieldset[disabled] .bk-root .bk-bs-btn-default,.bk-root .bk-bs-btn-default.bk-bs-disabled:hover,.bk-root .bk-bs-btn-default[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-default:hover,.bk-root .bk-bs-btn-default.bk-bs-disabled:focus,.bk-root .bk-bs-btn-default[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-default:focus,.bk-root .bk-bs-btn-default.bk-bs-disabled:active,.bk-root .bk-bs-btn-default[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-default[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-default.bk-bs-active{background-color:#fff;border-color:#ccc}.bk-root .bk-bs-btn-default .bk-bs-badge{color:#fff;background-color:#333}.bk-root .bk-bs-btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.bk-root .bk-bs-btn-primary:hover,.bk-root .bk-bs-btn-primary:focus,.bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-primary{background-image:none}.bk-root .bk-bs-btn-primary.bk-bs-disabled,.bk-root .bk-bs-btn-primary[disabled],fieldset[disabled] .bk-root .bk-bs-btn-primary,.bk-root .bk-bs-btn-primary.bk-bs-disabled:hover,.bk-root .bk-bs-btn-primary[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-primary:hover,.bk-root .bk-bs-btn-primary.bk-bs-disabled:focus,.bk-root .bk-bs-btn-primary[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-primary:focus,.bk-root .bk-bs-btn-primary.bk-bs-disabled:active,.bk-root .bk-bs-btn-primary[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-primary[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-primary.bk-bs-active{background-color:#428bca;border-color:#357ebd}.bk-root .bk-bs-btn-primary .bk-bs-badge{color:#428bca;background-color:#fff}.bk-root .bk-bs-btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.bk-root .bk-bs-btn-success:hover,.bk-root .bk-bs-btn-success:focus,.bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-success{color:#fff;background-color:#47a447;border-color:#398439}.bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-success{background-image:none}.bk-root .bk-bs-btn-success.bk-bs-disabled,.bk-root .bk-bs-btn-success[disabled],fieldset[disabled] .bk-root .bk-bs-btn-success,.bk-root .bk-bs-btn-success.bk-bs-disabled:hover,.bk-root .bk-bs-btn-success[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-success:hover,.bk-root .bk-bs-btn-success.bk-bs-disabled:focus,.bk-root .bk-bs-btn-success[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-success:focus,.bk-root .bk-bs-btn-success.bk-bs-disabled:active,.bk-root .bk-bs-btn-success[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-success[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-success.bk-bs-active{background-color:#5cb85c;border-color:#4cae4c}.bk-root .bk-bs-btn-success .bk-bs-badge{color:#5cb85c;background-color:#fff}.bk-root .bk-bs-btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.bk-root .bk-bs-btn-info:hover,.bk-root .bk-bs-btn-info:focus,.bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-info{background-image:none}.bk-root .bk-bs-btn-info.bk-bs-disabled,.bk-root .bk-bs-btn-info[disabled],fieldset[disabled] .bk-root .bk-bs-btn-info,.bk-root .bk-bs-btn-info.bk-bs-disabled:hover,.bk-root .bk-bs-btn-info[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-info:hover,.bk-root .bk-bs-btn-info.bk-bs-disabled:focus,.bk-root .bk-bs-btn-info[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-info:focus,.bk-root .bk-bs-btn-info.bk-bs-disabled:active,.bk-root .bk-bs-btn-info[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-info[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-info.bk-bs-active{background-color:#5bc0de;border-color:#46b8da}.bk-root .bk-bs-btn-info .bk-bs-badge{color:#5bc0de;background-color:#fff}.bk-root .bk-bs-btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.bk-root .bk-bs-btn-warning:hover,.bk-root .bk-bs-btn-warning:focus,.bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-warning{background-image:none}.bk-root .bk-bs-btn-warning.bk-bs-disabled,.bk-root .bk-bs-btn-warning[disabled],fieldset[disabled] .bk-root .bk-bs-btn-warning,.bk-root .bk-bs-btn-warning.bk-bs-disabled:hover,.bk-root .bk-bs-btn-warning[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-warning:hover,.bk-root .bk-bs-btn-warning.bk-bs-disabled:focus,.bk-root .bk-bs-btn-warning[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-warning:focus,.bk-root .bk-bs-btn-warning.bk-bs-disabled:active,.bk-root .bk-bs-btn-warning[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-warning[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-warning.bk-bs-active{background-color:#f0ad4e;border-color:#eea236}.bk-root .bk-bs-btn-warning .bk-bs-badge{color:#f0ad4e;background-color:#fff}.bk-root .bk-bs-btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.bk-root .bk-bs-btn-danger:hover,.bk-root .bk-bs-btn-danger:focus,.bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-danger{background-image:none}.bk-root .bk-bs-btn-danger.bk-bs-disabled,.bk-root .bk-bs-btn-danger[disabled],fieldset[disabled] .bk-root .bk-bs-btn-danger,.bk-root .bk-bs-btn-danger.bk-bs-disabled:hover,.bk-root .bk-bs-btn-danger[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-danger:hover,.bk-root .bk-bs-btn-danger.bk-bs-disabled:focus,.bk-root .bk-bs-btn-danger[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-danger:focus,.bk-root .bk-bs-btn-danger.bk-bs-disabled:active,.bk-root .bk-bs-btn-danger[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-danger[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-danger.bk-bs-active{background-color:#d9534f;border-color:#d43f3a}.bk-root .bk-bs-btn-danger .bk-bs-badge{color:#d9534f;background-color:#fff}.bk-root .bk-bs-btn-link{color:#428bca;font-weight:normal;cursor:pointer;border-radius:0}.bk-root .bk-bs-btn-link,.bk-root .bk-bs-btn-link:active,.bk-root .bk-bs-btn-link[disabled],fieldset[disabled] .bk-root .bk-bs-btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn-link,.bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link:focus,.bk-root .bk-bs-btn-link:active{border-color:transparent}.bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.bk-root .bk-bs-btn-link[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-link:focus{color:#999;text-decoration:none}.bk-root .bk-bs-btn-lg{padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}.bk-root .bk-bs-btn-sm{padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}.bk-root .bk-bs-btn-xs{padding:1px 5px;font-size:11px;line-height:1.5;border-radius:3px}.bk-root .bk-bs-btn-block{display:block;width:100%;padding-left:0;padding-right:0}.bk-root .bk-bs-btn-block+.bk-bs-btn-block{margin-top:5px}.bk-root input[type=\\\"submit\\\"].bk-bs-btn-block,.bk-root input[type=\\\"reset\\\"].bk-bs-btn-block,.bk-root input[type=\\\"button\\\"].bk-bs-btn-block{width:100%}.bk-root .bk-bs-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.bk-root .bk-bs-dropdown{position:relative}.bk-root .bk-bs-dropdown-toggle:focus{outline:0}.bk-root .bk-bs-dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:12px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.bk-root .bk-bs-dropdown-menu.bk-bs-pull-right{right:0;left:auto}.bk-root .bk-bs-dropdown-menu .bk-bs-divider{height:1px;margin:7.5px 0;overflow:hidden;background-color:#e5e5e5}.bk-root .bk-bs-dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.42857143;color:#333;white-space:nowrap}.bk-root .bk-bs-dropdown-menu>li>a:hover,.bk-root .bk-bs-dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a,.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#428bca}.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:focus{color:#999}.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.bk-bs-Microsoft.bk-bs-gradient(enabled = false);cursor:not-allowed}.bk-root .bk-bs-open>.bk-bs-dropdown-menu{display:block}.bk-root .bk-bs-open>a{outline:0}.bk-root .bk-bs-dropdown-menu-right{left:auto;right:0}.bk-root .bk-bs-dropdown-menu-left{left:0;right:auto}.bk-root .bk-bs-dropdown-header{display:block;padding:3px 20px;font-size:11px;line-height:1.42857143;color:#999}.bk-root .bk-bs-dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.bk-root .bk-bs-pull-right>.bk-bs-dropdown-menu{right:0;left:auto}.bk-root .bk-bs-dropup .bk-bs-caret,.bk-root .bk-bs-navbar-fixed-bottom .bk-bs-dropdown .bk-bs-caret{border-top:0;border-bottom:4px solid;content:\\\"\\\"}.bk-root .bk-bs-dropup .bk-bs-dropdown-menu,.bk-root .bk-bs-navbar-fixed-bottom .bk-bs-dropdown .bk-bs-dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.bk-root .bk-bs-navbar-right .bk-bs-dropdown-menu{left:auto;right:0}.bk-root .bk-bs-navbar-right .bk-bs-dropdown-menu-left{left:0;right:auto}}.bk-root .bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.bk-root .bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn{position:relative;float:left}.bk-root .bk-bs-btn-group>.bk-bs-btn:hover,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:hover,.bk-root .bk-bs-btn-group>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group>.bk-bs-btn:active,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:active,.bk-root .bk-bs-btn-group>.bk-bs-btn.bk-bs-active,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn.bk-bs-active{z-index:2}.bk-root .bk-bs-btn-group>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:focus{outline:0}.bk-root .bk-bs-btn-group .bk-bs-btn+.bk-bs-btn,.bk-root .bk-bs-btn-group .bk-bs-btn+.bk-bs-btn-group,.bk-root .bk-bs-btn-group .bk-bs-btn-group+.bk-bs-btn,.bk-root .bk-bs-btn-group .bk-bs-btn-group+.bk-bs-btn-group{margin-left:-1px}.bk-root .bk-bs-btn-toolbar{margin-left:-5px}.bk-root .bk-bs-btn-toolbar .bk-bs-btn-group,.bk-root .bk-bs-btn-toolbar .bk-bs-input-group{float:left}.bk-root .bk-bs-btn-toolbar>.bk-bs-btn,.bk-root .bk-bs-btn-toolbar>.bk-bs-btn-group,.bk-root .bk-bs-btn-toolbar>.bk-bs-input-group{margin-left:5px}.bk-root .bk-bs-btn-group>.bk-bs-btn:not(:first-child):not(:last-child):not(.bk-bs-dropdown-toggle){border-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:first-child{margin-left:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:first-child:not(:last-child):not(.bk-bs-dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:last-child:not(:first-child),.bk-root .bk-bs-btn-group>.bk-bs-dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group{float:left}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:not(:first-child):not(:last-child)>.bk-bs-btn{border-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:first-child>.bk-bs-btn:last-child,.bk-root .bk-bs-btn-group>.bk-bs-btn-group:first-child>.bk-bs-dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:last-child>.bk-bs-btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group .bk-bs-dropdown-toggle:active,.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle{outline:0}.bk-root .bk-bs-btn-group>.bk-bs-btn+.bk-bs-dropdown-toggle{padding-left:8px;padding-right:8px}.bk-root .bk-bs-btn-group>.bk-bs-btn-lg+.bk-bs-dropdown-toggle{padding-left:12px;padding-right:12px}.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle.bk-bs-btn-link{-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn .bk-bs-caret{margin-left:0}.bk-root .bk-bs-btn-lg .bk-bs-caret{border-width:5px 5px 0;border-bottom-width:0}.bk-root .bk-bs-dropup .bk-bs-btn-lg .bk-bs-caret{border-width:0 5px 5px}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group>.bk-bs-btn{display:block;float:none;width:100%;max-width:100%}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group>.bk-bs-btn{float:none}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn+.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn+.bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group+.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group+.bk-bs-btn-group{margin-top:-1px;margin-left:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:not(:first-child):not(:last-child){border-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:not(:first-child):not(:last-child)>.bk-bs-btn{border-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:first-child:not(:last-child)>.bk-bs-btn:last-child,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:first-child:not(:last-child)>.bk-bs-dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:last-child:not(:first-child)>.bk-bs-btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.bk-root .bk-bs-btn-group-justified>.bk-bs-btn,.bk-root .bk-bs-btn-group-justified>.bk-bs-btn-group{float:none;display:table-cell;width:1%}.bk-root .bk-bs-btn-group-justified>.bk-bs-btn-group .bk-bs-btn{width:100%}.bk-root .bk-bs-btn-group>.bk-bs-btn>input[type=\\\"radio\\\"],.bk-root .bk-bs-btn-group>.bk-bs-btn>input[type=\\\"checkbox\\\"]{display:none}.bk-root .bk-bs-input-group{position:relative;display:table;border-collapse:separate}.bk-root .bk-bs-input-group[class*=\\\"col-\\\"]{float:none;padding-left:0;padding-right:0}.bk-root .bk-bs-input-group .bk-bs-form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:42px;padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}select.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,select.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,select.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:42px;line-height:42px}textarea.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,textarea.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,textarea.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-form-control,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:auto}.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:28px;padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}select.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,select.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,select.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:28px;line-height:28px}textarea.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,textarea.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,textarea.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-form-control,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:auto}.bk-root .bk-bs-input-group-addon,.bk-root .bk-bs-input-group-btn,.bk-root .bk-bs-input-group .bk-bs-form-control{display:table-cell}.bk-root .bk-bs-input-group-addon:not(:first-child):not(:last-child),.bk-root .bk-bs-input-group-btn:not(:first-child):not(:last-child),.bk-root .bk-bs-input-group .bk-bs-form-control:not(:first-child):not(:last-child){border-radius:0}.bk-root .bk-bs-input-group-addon,.bk-root .bk-bs-input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.bk-root .bk-bs-input-group-addon{padding:6px 12px;font-size:12px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.bk-root .bk-bs-input-group-addon.bk-bs-input-sm{padding:5px 10px;font-size:11px;border-radius:3px}.bk-root .bk-bs-input-group-addon.bk-bs-input-lg{padding:10px 16px;font-size:15px;border-radius:6px}.bk-root .bk-bs-input-group-addon input[type=\\\"radio\\\"],.bk-root .bk-bs-input-group-addon input[type=\\\"checkbox\\\"]{margin-top:0}.bk-root .bk-bs-input-group .bk-bs-form-control:first-child,.bk-root .bk-bs-input-group-addon:first-child,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-dropdown-toggle,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn:not(:last-child):not(.bk-bs-dropdown-toggle),.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group:not(:last-child)>.bk-bs-btn{border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-input-group-addon:first-child{border-right:0}.bk-root .bk-bs-input-group .bk-bs-form-control:last-child,.bk-root .bk-bs-input-group-addon:last-child,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-dropdown-toggle,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn:not(:first-child),.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group:not(:first-child)>.bk-bs-btn{border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-input-group-addon:last-child{border-left:0}.bk-root .bk-bs-input-group-btn{position:relative;font-size:0;white-space:nowrap}.bk-root .bk-bs-input-group-btn>.bk-bs-btn{position:relative}.bk-root .bk-bs-input-group-btn>.bk-bs-btn+.bk-bs-btn{margin-left:-1px}.bk-root .bk-bs-input-group-btn>.bk-bs-btn:hover,.bk-root .bk-bs-input-group-btn>.bk-bs-btn:focus,.bk-root .bk-bs-input-group-btn>.bk-bs-btn:active{z-index:2}.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group{margin-right:-1px}.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group{margin-left:-1px}.bk-root .bk-bs-nav{margin-bottom:0;padding-left:0;list-style:none}.bk-root .bk-bs-nav>li{position:relative;display:block}.bk-root .bk-bs-nav>li>span{position:relative;display:block;padding:10px 15px}.bk-root .bk-bs-nav>li>span:hover,.bk-root .bk-bs-nav>li>span:focus{text-decoration:none;background-color:#eee}.bk-root .bk-bs-nav>li.bk-bs-disabled>span{color:#999}.bk-root .bk-bs-nav>li.bk-bs-disabled>span:hover,.bk-root .bk-bs-nav>li.bk-bs-disabled>span:focus{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.bk-root .bk-bs-nav-tabs{border-bottom:1px solid #ddd}.bk-root .bk-bs-nav-tabs>li{float:left;margin-bottom:-1px}.bk-root .bk-bs-nav-tabs>li>span{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.bk-root .bk-bs-nav-tabs>li>span:hover{border-color:#eee #eee #ddd;cursor:pointer}.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span,.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span:hover,.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.bk-root .bk-bs-tab-content>.bk-bs-tab-pane{display:none}.bk-root .bk-bs-tab-content>.bk-bs-active{display:block}.bk-root .pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:\\\"Helvetica Neue\\\",Helvetica,Arial,sans-serif}.bk-root .pika-single:before,.bk-root .pika-single:after{content:\\\" \\\";display:table}.bk-root .pika-single:after{clear:both}.bk-root .pika-single{*zoom:1}.bk-root .pika-single.is-hidden{display:none}.bk-root .pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,0.5)}.bk-root .pika-lendar{float:left;width:240px;margin:8px}.bk-root .pika-title{position:relative;text-align:center}.bk-root .pika-label{display:inline-block;*display:inline;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:bold;background-color:#fff}.bk-root .pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;filter:alpha(opacity=0);opacity:0}.bk-root .pika-prev,.bk-root .pika-next{display:block;cursor:pointer;position:relative;outline:0;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5;*position:absolute;*top:0}.bk-root .pika-prev:hover,.bk-root .pika-next:hover{opacity:1}.bk-root .pika-prev,.bk-root .is-rtl .pika-next{float:left;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');*left:0}.bk-root .pika-next,.bk-root .is-rtl .pika-prev{float:right;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');*right:0}.bk-root .pika-prev.is-disabled,.bk-root .pika-next.is-disabled{cursor:default;opacity:.2}.bk-root .pika-select{display:inline-block;*display:inline}.bk-root .pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.bk-root .pika-table th,.bk-root .pika-table td{width:14.285714285714286%;padding:0}.bk-root .pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:bold;text-align:center}.bk-root .pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:0;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:right;background:#f5f5f5}.bk-root .pika-week{font-size:11px;color:#999}.bk-root .is-today .pika-button{color:#3af;font-weight:bold}.bk-root .is-selected .pika-button,.bk-root .has-event .pika-button{color:#fff;font-weight:bold;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.bk-root .has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.bk-root .is-disabled .pika-button,.bk-root .is-inrange .pika-button{background:#d5e9f7}.bk-root .is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.bk-root .is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.bk-root .is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.bk-root .is-outside-current-month .pika-button{color:#999;opacity:.3}.bk-root .is-selection-disabled{pointer-events:none;cursor:default}.bk-root .pika-button:hover,.bk-root .pika-row.pick-whole-week:hover .pika-button{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.bk-root .pika-table abbr{border-bottom:0;cursor:help}.bk-root .bk-widget-box{overflow:visible;padding:5px 10px}.bk-root .bk-widget label{margin-bottom:2px}.bk-root .bk-widget{margin-top:10px}.bk-root .bk-widget h1:first-child,.bk-root .bk-widget h2:first-child,.bk-root .bk-widget h3:first-child,.bk-root .bk-widget h4:first-child,.bk-root .bk-widget h5:first-child,.bk-root .bk-widget h6:first-child,.bk-root .bk-widget p:first-child{margin-top:0}.bk-root .bk-widget-form-input{display:block;height:31px;padding:0 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px}.bk-root .bk-widget-form-input:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6)}.bk-root .bk-widget-form-input::-moz-placeholder{color:#999;opacity:1}.bk-root .bk-widget-form-input:-ms-input-placeholder{color:#999}.bk-root .bk-widget-form-input::-webkit-input-placeholder{color:#999}.bk-root .bk-widget-form-input[disabled],.bk-root .bk-widget-form-input[readonly],fieldset[disabled] .bk-root .bk-widget-form-input{cursor:not-allowed;background-color:#eee;opacity:1}textarea.bk-root .bk-widget-form-input{height:auto}.bk-root .bk-widget button{min-width:100%}.bk-root .bk-widget input[type=\\\"text\\\"]{min-width:90%}.bk-root .bk-widget select{min-width:97%}.bk-root .bk-bs-dropdown-toggle .bk-bs-caret{margin-left:5px}.bk-root .bk-bs-dropdown-menu{width:100%}.bk-root .bk-bs-nav-tabs{overflow:hidden}.bk-root .bk-slider label{margin-right:5px}.bk-root .bk-slider .bk-slider-value{display:inline-block;font-weight:600}.bk-root .bk-slider input,.bk-root .bk-slider .bk-slider-value{margin-bottom:5px}\\n/* END bokeh-widgets.min.css */\");\n      console.log(\"Bokeh: injecting raw CSS\");\n      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh-tables.min.css */\\n.bk-root .slick-header.ui-state-default,.bk-root .slick-headerrow.ui-state-default,.bk-root .slick-footerrow.ui-state-default{width:100%;overflow:hidden;border-left:0 !important}.bk-root .slick-header-columns,.bk-root .slick-headerrow-columns,.bk-root .slick-footerrow-columns{position:relative;white-space:nowrap;cursor:default;overflow:hidden}.bk-root .slick-header-column.ui-state-default{position:relative;display:inline-block;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:0 !important;border-top:0 !important;border-bottom:0 !important;float:left}.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;padding-left:1px;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:.1px;display:block;cursor:col-resize;width:4px;right:0;top:0;height:100%}.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:0;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 .5s;-moz-transition:all .5s;-o-transition:all .5s;transition:all .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:0}.bk-root .slick-reorder-proxy{display:inline-block;background:blue;opacity:.15;cursor:move}.bk-root .slick-reorder-guide{display:inline-block;height:2px;background:blue;opacity:.7}.bk-root .slick-selection{z-index:10;position:absolute;border:2px dashed black}.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:0;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:.5}.bk-root .slick-cell.invalid{border-color:red;-moz-animation-duration:.2s;-webkit-animation-duration:.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:.2s width;-ms-transition:.2s width;transition:.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-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:100px;cursor:default}.bk-root .slick-columnpicker li{list-style:none;margin:0;padding:0;background:0}.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-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{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAWAIcAAKrM9tno++vz/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABYAAAgUAAUIHEiwoIAACBMqXMhwIQAAAQEAOw==\\\")}.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:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .bk-data-table{font-size:11px}.bk-root .bk-data-table input[type=\\\"checkbox\\\"]{margin-left:4px;margin-right:4px}.bk-root .bk-data-table *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.bk-root .bk-data-table *:before,.bk-root .bk-data-table *:after{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.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 .bk-cell-index{border-right-color:silver;border-right-style:solid;background:#f5f5f5;text-align:right;color:gray}.bk-root .bk-header-index .slick-column-name{float:right}.bk-root .slick-row.selected .bk-cell-index{background-color:transparent}.bk-root .slick-cell{padding-left:4px;padding-right:4px}.bk-root .slick-cell.active{border-style:dashed}.bk-root .slick-cell.editable{padding-left:0;padding-right:0}.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/* END bokeh-tables.min.css */\");\n    }\n  ];\n\n  function run_inline_js() {\n    \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    } else if (force !== true) {\n      var cell = $(document.getElementById(null)).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.log(\"Bokeh: BokehJS loaded, going straight to plotting\");\n    run_inline_js();\n  } else {\n    load_libs(js_urls, function() {\n      console.log(\"Bokeh: BokehJS plotting callback run at\", now());\n      run_inline_js();\n    });\n  }\n}(window));"
638
+     },
639
+     "metadata": {},
640
+     "output_type": "display_data"
641
+    },
642
+    {
643
+     "data": {
644
+      "text/html": [
645
+       "\n",
646
+       "<script src=\"https://code.jquery.com/ui/1.10.4/jquery-ui.min.js\" type=\"text/javascript\"></script>\n",
647
+       "<script type=\"text/javascript\">function HoloViewsWidget(){\n",
648
+       "}\n",
649
+       "\n",
650
+       "HoloViewsWidget.comms = {};\n",
651
+       "HoloViewsWidget.comm_state = {};\n",
652
+       "\n",
653
+       "HoloViewsWidget.prototype.init_slider = function(init_val){\n",
654
+       "  if(this.load_json) {\n",
655
+       "    this.from_json()\n",
656
+       "  } else {\n",
657
+       "    this.update_cache();\n",
658
+       "  }\n",
659
+       "}\n",
660
+       "\n",
661
+       "HoloViewsWidget.prototype.populate_cache = function(idx){\n",
662
+       "  this.cache[idx].html(this.frames[idx]);\n",
663
+       "  if (this.embed) {\n",
664
+       "    delete this.frames[idx];\n",
665
+       "  }\n",
666
+       "}\n",
667
+       "\n",
668
+       "HoloViewsWidget.prototype.process_error = function(msg){\n",
669
+       "\n",
670
+       "}\n",
671
+       "\n",
672
+       "HoloViewsWidget.prototype.from_json = function() {\n",
673
+       "  var data_url = this.json_path + this.id + '.json';\n",
674
+       "  $.getJSON(data_url, $.proxy(function(json_data) {\n",
675
+       "    this.frames = json_data;\n",
676
+       "    this.update_cache();\n",
677
+       "    this.update(0);\n",
678
+       "  }, this));\n",
679
+       "}\n",
680
+       "\n",
681
+       "HoloViewsWidget.prototype.dynamic_update = function(current){\n",
682
+       "  if (current === undefined) {\n",
683
+       "    return\n",
684
+       "  }\n",
685
+       "  if(this.dynamic) {\n",
686
+       "    current = JSON.stringify(current);\n",
687
+       "  }\n",
688
+       "  function callback(initialized, msg){\n",
689
+       "    /* This callback receives data from Python as a string\n",
690
+       "       in order to parse it correctly quotes are sliced off*/\n",
691
+       "    if (msg.content.ename != undefined) {\n",
692
+       "      this.process_error(msg);\n",
693
+       "    }\n",
694
+       "    if (msg.msg_type != \"execute_result\") {\n",
695
+       "      console.log(\"Warning: HoloViews callback returned unexpected data for key: (\", current, \") with the following content:\", msg.content)\n",
696
+       "    } else {\n",
697
+       "      if (msg.content.data['text/plain'].includes('Complete')) {\n",
698
+       "        if (this.queue.length > 0) {\n",
699
+       "          this.time = Date.now();\n",
700
+       "          this.dynamic_update(this.queue[this.queue.length-1]);\n",
701
+       "          this.queue = [];\n",
702
+       "        } else {\n",
703
+       "          this.wait = false;\n",
704
+       "        }\n",
705
+       "        return\n",
706
+       "      }\n",
707
+       "    }\n",
708
+       "  }\n",
709
+       "  this.current = current;\n",
710
+       "  if ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null)) {\n",
711
+       "    var kernel = Jupyter.notebook.kernel;\n",
712
+       "    callbacks = {iopub: {output: $.proxy(callback, this, this.initialized)}};\n",
713
+       "    var cmd = \"holoviews.plotting.widgets.NdWidget.widgets['\" + this.id + \"'].update(\" + current + \")\";\n",
714
+       "    kernel.execute(\"import holoviews;\" + cmd, callbacks, {silent : false});\n",
715
+       "  }\n",
716
+       "}\n",
717
+       "\n",
718
+       "HoloViewsWidget.prototype.update_cache = function(force){\n",
719
+       "  var frame_len = Object.keys(this.frames).length;\n",
720
+       "  for (var i=0; i<frame_len; i++) {\n",
721
+       "    if(!this.load_json || this.dynamic)  {\n",
722
+       "      frame = Object.keys(this.frames)[i];\n",
723
+       "    } else {\n",
724
+       "      frame = i;\n",
725
+       "    }\n",
726
+       "    if(!(frame in this.cache) || force) {\n",
727
+       "      if ((frame in this.cache) && force) { this.cache[frame].remove() }\n",
728
+       "      this.cache[frame] = $('<div />').appendTo(\"#\"+\"_anim_img\"+this.id).hide();\n",
729
+       "      var cache_id = \"_anim_img\"+this.id+\"_\"+frame;\n",
730
+       "      this.cache[frame].attr(\"id\", cache_id);\n",
731
+       "      this.populate_cache(frame);\n",
732
+       "    }\n",
733
+       "  }\n",
734
+       "}\n",
735
+       "\n",
736
+       "HoloViewsWidget.prototype.update = function(current){\n",
737
+       "  if(current in this.cache) {\n",
738
+       "    $.each(this.cache, function(index, value) {\n",
739
+       "      value.hide();\n",
740
+       "    });\n",
741
+       "    this.cache[current].show();\n",
742
+       "    this.wait = false;\n",
743
+       "  }\n",
744
+       "}\n",
745
+       "\n",
746
+       "HoloViewsWidget.prototype.init_comms = function() {\n",
747
+       "  if ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel !== undefined)) {\n",
748
+       "    var widget = this;\n",
749
+       "    comm_manager = Jupyter.notebook.kernel.comm_manager;\n",
750
+       "    comm_manager.register_target(this.id, function (comm) {\n",
751
+       "      comm.on_msg(function (msg) { widget.process_msg(msg) });\n",
752
+       "    });\n",
753
+       "  }\n",
754
+       "}\n",
755
+       "\n",
756
+       "HoloViewsWidget.prototype.process_msg = function(msg) {\n",
757
+       "}\n",
758
+       "\n",
759
+       "function SelectionWidget(frames, id, slider_ids, keyMap, dim_vals, notFound, load_json, mode, cached, json_path, dynamic){\n",
760
+       "  this.frames = frames;\n",
761
+       "  this.id = id;\n",
762
+       "  this.slider_ids = slider_ids;\n",
763
+       "  this.keyMap = keyMap\n",
764
+       "  this.current_frame = 0;\n",
765
+       "  this.current_vals = dim_vals;\n",
766
+       "  this.load_json = load_json;\n",
767
+       "  this.mode = mode;\n",
768
+       "  this.notFound = notFound;\n",
769
+       "  this.cached = cached;\n",
770
+       "  this.dynamic = dynamic;\n",
771
+       "  this.cache = {};\n",
772
+       "  this.json_path = json_path;\n",
773
+       "  this.init_slider(this.current_vals[0]);\n",
774
+       "  this.queue = [];\n",
775
+       "  this.wait = false;\n",
776
+       "  if (!this.cached || this.dynamic) {\n",
777
+       "    this.init_comms()\n",
778
+       "  }\n",
779
+       "}\n",
780
+       "\n",
781
+       "SelectionWidget.prototype = new HoloViewsWidget;\n",
782
+       "\n",
783
+       "\n",
784
+       "SelectionWidget.prototype.get_key = function(current_vals) {\n",
785
+       "  var key = \"(\";\n",
786
+       "  for (var i=0; i<this.slider_ids.length; i++)\n",
787
+       "  {\n",
788
+       "    val = this.current_vals[i];\n",
789
+       "    if (!(typeof val === 'string')) {\n",
790
+       "      if (val % 1 === 0) { val = val.toFixed(1); }\n",
791
+       "      else { val = val.toFixed(10); val = val.slice(0, val.length-1);}\n",
792
+       "    }\n",
793
+       "    key += \"'\" + val + \"'\";\n",
794
+       "    if(i != this.slider_ids.length-1) { key += ', ';}\n",
795
+       "    else if(this.slider_ids.length == 1) { key += ',';}\n",
796
+       "  }\n",
797
+       "  key += \")\";\n",
798
+       "  return this.keyMap[key];\n",
799
+       "}\n",
800
+       "\n",
801
+       "SelectionWidget.prototype.set_frame = function(dim_val, dim_idx){\n",
802
+       "  this.current_vals[dim_idx] = dim_val;\n",
803
+       "  var key = this.current_vals;\n",
804
+       "  if (!this.dynamic) {\n",
805
+       "    key = this.get_key(key)\n",
806
+       "  }\n",
807
+       "  if (this.dynamic || !this.cached) {\n",
808
+       "    if ((this.time !== undefined) && ((this.wait) && ((this.time + 10000) > Date.now()))) {\n",
809
+       "      this.queue.push(key);\n",
810
+       "      return\n",
811
+       "    }\n",
812
+       "    this.queue = [];\n",
813
+       "    this.time = Date.now();\n",
814
+       "    this.current_frame = key;\n",
815
+       "    this.wait = true;\n",
816
+       "    this.dynamic_update(key)\n",
817
+       "  } else if (key !== undefined) {\n",
818
+       "    this.update(key)\n",
819
+       "  }\n",
820
+       "}\n",
821
+       "\n",
822
+       "\n",
823
+       "/* Define the ScrubberWidget class */\n",
824
+       "function ScrubberWidget(frames, num_frames, id, interval, load_json, mode, cached, json_path, dynamic){\n",
825
+       "  this.slider_id = \"_anim_slider\" + id;\n",
826
+       "  this.loop_select_id = \"_anim_loop_select\" + id;\n",
827
+       "  this.id = id;\n",
828
+       "  this.interval = interval;\n",
829
+       "  this.current_frame = 0;\n",
830
+       "  this.direction = 0;\n",
831
+       "  this.dynamic = dynamic;\n",
832
+       "  this.timer = null;\n",
833
+       "  this.load_json = load_json;\n",
834
+       "  this.mode = mode;\n",
835
+       "  this.cached = cached;\n",
836
+       "  this.frames = frames;\n",
837
+       "  this.cache = {};\n",
838
+       "  this.length = num_frames;\n",
839
+       "  this.json_path = json_path;\n",
840
+       "  document.getElementById(this.slider_id).max = this.length - 1;\n",
841
+       "  this.init_slider(0);\n",
842
+       "  this.wait = false;\n",
843
+       "  this.queue = [];\n",
844
+       "  if (!this.cached || this.dynamic) {\n",
845
+       "    this.init_comms()\n",
846
+       "  }\n",
847
+       "}\n",
848
+       "\n",
849
+       "ScrubberWidget.prototype = new HoloViewsWidget;\n",
850
+       "\n",
851
+       "ScrubberWidget.prototype.set_frame = function(frame){\n",
852
+       "  this.current_frame = frame;\n",
853
+       "  widget = document.getElementById(this.slider_id);\n",
854
+       "  if (widget === null) {\n",
855
+       "    this.pause_animation();\n",
856
+       "    return\n",
857
+       "  }\n",
858
+       "  widget.value = this.current_frame;\n",
859
+       "  if(this.cached) {\n",
860
+       "    this.update(frame)\n",
861
+       "  } else {\n",
862
+       "    this.dynamic_update(frame)\n",
863
+       "  }\n",
864
+       "}\n",
865
+       "\n",
866
+       "\n",
867
+       "ScrubberWidget.prototype.get_loop_state = function(){\n",
868
+       "  var button_group = document[this.loop_select_id].state;\n",
869
+       "  for (var i = 0; i < button_group.length; i++) {\n",
870
+       "    var button = button_group[i];\n",
871
+       "    if (button.checked) {\n",
872
+       "      return button.value;\n",
873
+       "    }\n",
874
+       "  }\n",
875
+       "  return undefined;\n",
876
+       "}\n",
877
+       "\n",
878
+       "\n",
879
+       "ScrubberWidget.prototype.next_frame = function() {\n",
880
+       "  this.set_frame(Math.min(this.length - 1, this.current_frame + 1));\n",
881
+       "}\n",
882
+       "\n",
883
+       "ScrubberWidget.prototype.previous_frame = function() {\n",
884
+       "  this.set_frame(Math.max(0, this.current_frame - 1));\n",
885
+       "}\n",
886
+       "\n",
887
+       "ScrubberWidget.prototype.first_frame = function() {\n",
888
+       "  this.set_frame(0);\n",
889
+       "}\n",
890
+       "\n",
891
+       "ScrubberWidget.prototype.last_frame = function() {\n",
892
+       "  this.set_frame(this.length - 1);\n",
893
+       "}\n",
894
+       "\n",
895
+       "ScrubberWidget.prototype.slower = function() {\n",
896
+       "  this.interval /= 0.7;\n",
897
+       "  if(this.direction > 0){this.play_animation();}\n",
898
+       "  else if(this.direction < 0){this.reverse_animation();}\n",
899
+       "}\n",
900
+       "\n",
901
+       "ScrubberWidget.prototype.faster = function() {\n",
902
+       "  this.interval *= 0.7;\n",
903
+       "  if(this.direction > 0){this.play_animation();}\n",
904
+       "  else if(this.direction < 0){this.reverse_animation();}\n",
905
+       "}\n",
906
+       "\n",
907
+       "ScrubberWidget.prototype.anim_step_forward = function() {\n",
908
+       "  if(this.current_frame < this.length - 1){\n",
909
+       "    this.next_frame();\n",
910
+       "  }else{\n",
911
+       "    var loop_state = this.get_loop_state();\n",
912
+       "    if(loop_state == \"loop\"){\n",
913
+       "      this.first_frame();\n",
914
+       "    }else if(loop_state == \"reflect\"){\n",
915
+       "      this.last_frame();\n",
916
+       "      this.reverse_animation();\n",
917
+       "    }else{\n",
918
+       "      this.pause_animation();\n",
919
+       "      this.last_frame();\n",
920
+       "    }\n",
921
+       "  }\n",
922
+       "}\n",
923
+       "\n",
924
+       "ScrubberWidget.prototype.anim_step_reverse = function() {\n",
925
+       "  if(this.current_frame > 0){\n",
926
+       "    this.previous_frame();\n",
927
+       "  } else {\n",
928
+       "    var loop_state = this.get_loop_state();\n",
929
+       "    if(loop_state == \"loop\"){\n",
930
+       "      this.last_frame();\n",
931
+       "    }else if(loop_state == \"reflect\"){\n",
932
+       "      this.first_frame();\n",
933
+       "      this.play_animation();\n",
934
+       "    }else{\n",
935
+       "      this.pause_animation();\n",
936
+       "      this.first_frame();\n",
937
+       "    }\n",
938
+       "  }\n",
939
+       "}\n",
940
+       "\n",
941
+       "ScrubberWidget.prototype.pause_animation = function() {\n",
942
+       "  this.direction = 0;\n",
943
+       "  if (this.timer){\n",
944
+       "    clearInterval(this.timer);\n",
945
+       "    this.timer = null;\n",
946
+       "  }\n",
947
+       "}\n",
948
+       "\n",
949
+       "ScrubberWidget.prototype.play_animation = function() {\n",
950
+       "  this.pause_animation();\n",
951
+       "  this.direction = 1;\n",
952
+       "  var t = this;\n",
953
+       "  if (!this.timer) this.timer = setInterval(function(){t.anim_step_forward();}, this.interval);\n",
954
+       "}\n",
955
+       "\n",
956
+       "ScrubberWidget.prototype.reverse_animation = function() {\n",
957
+       "  this.pause_animation();\n",
958
+       "  this.direction = -1;\n",
959
+       "  var t = this;\n",
960
+       "  if (!this.timer) this.timer = setInterval(function(){t.anim_step_reverse();}, this.interval);\n",
961
+       "}\n",
962
+       "\n",
963
+       "function extend(destination, source) {\n",
964
+       "  for (var k in source) {\n",
965
+       "    if (source.hasOwnProperty(k)) {\n",
966
+       "      destination[k] = source[k];\n",
967
+       "    }\n",
968
+       "  }\n",
969
+       "  return destination;\n",
970
+       "}\n",
971
+       "\n",
972
+       "function update_widget(widget, values) {\n",
973
+       "  if (widget.hasClass(\"ui-slider\")) {\n",
974
+       "    widget.slider('option', {\n",
975
+       "      min: 0,\n",
976
+       "      max: values.length-1,\n",
977
+       "      dim_vals: values,\n",
978
+       "      value: 0,\n",
979
+       "      dim_labels: values\n",
980
+       "\t})\n",
981
+       "    widget.slider('option', 'slide').call(widget, event, {value: 0})\n",
982
+       "  } else {\n",
983
+       "    widget.empty();\n",
984
+       "    for (var i=0; i<values.length; i++){\n",
985
+       "      widget.append($(\"<option>\", {\n",
986
+       "        value: i,\n",
987
+       "        text: values[i]\n",
988
+       "      }))\n",
989
+       "    };\n",
990
+       "    widget.data('values', values);\n",
991
+       "    widget.data('value', 0);\n",
992
+       "    widget.trigger(\"change\");\n",
993
+       "  };\n",
994
+       "}\n",
995
+       "\n",
996
+       "// Define Bokeh specific subclasses\n",
997
+       "function BokehSelectionWidget() {\n",
998
+       "\tSelectionWidget.apply(this, arguments);\n",
999
+       "}\n",
1000
+       "\n",
1001
+       "function BokehScrubberWidget() {\n",
1002
+       "\tScrubberWidget.apply(this, arguments);\n",
1003
+       "}\n",
1004
+       "\n",
1005
+       "// Let them inherit from the baseclasses\n",
1006
+       "BokehSelectionWidget.prototype = Object.create(SelectionWidget.prototype);\n",
1007
+       "BokehScrubberWidget.prototype = Object.create(ScrubberWidget.prototype);\n",
1008
+       "\n",
1009
+       "// Define methods to override on widgets\n",
1010
+       "var BokehMethods = {\n",
1011
+       "\tupdate_cache : function(){\n",
1012
+       "\t\t$.each(this.frames, $.proxy(function(index, frame) {\n",
1013
+       "\t\t\tthis.frames[index] = JSON.parse(frame);\n",
1014
+       "\t\t}, this));\n",
1015
+       "\t},\n",
1016
+       "\tupdate : function(current){\n",
1017
+       "\t\tif (current === undefined) {\n",
1018
+       "\t\t\tvar data = undefined;\n",
1019
+       "\t\t} else {\n",
1020
+       "\t\t\tvar data = this.frames[current];\n",
1021
+       "\t\t}\n",
1022
+       "\t\tif (data !== undefined) {\n",
1023
+       "\t\t\tvar doc = Bokeh.index[data.root].model.document;\n",
1024
+       "\t\t\tdoc.apply_json_patch(data.content);\n",
1025
+       "\t\t}\n",
1026
+       "\t},\n",
1027
+       "\tinit_comms : function() {\n",
1028
+       "\t}\n",
1029
+       "}\n",
1030
+       "\n",
1031
+       "// Extend Bokeh widgets with backend specific methods\n",
1032
+       "extend(BokehSelectionWidget.prototype, BokehMethods);\n",
1033
+       "extend(BokehScrubberWidget.prototype, BokehMethods);\n",
1034
+       "</script>\n",
1035
+       "\n",
1036
+       "\n",
1037
+       "<link rel=\"stylesheet\" href=\"https://code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css\">\n",
1038
+       "<style>div.hololayout {\n",
1039
+       "    display: flex;\n",
1040
+       "    align-items: center;\n",
1041
+       "    margin: 0;\n",
1042
+       "}\n",
1043
+       "\n",
1044
+       "div.holoframe {\n",
1045
+       "\twidth: 75%;\n",
1046
+       "}\n",
1047
+       "\n",
1048
+       "div.holowell {\n",
1049
+       "    display: flex;\n",
1050
+       "    align-items: center;\n",
1051
+       "    margin: 0;\n",
1052
+       "}\n",
1053
+       "\n",
1054
+       "form.holoform {\n",
1055
+       "    background-color: #fafafa;\n",
1056
+       "    border-radius: 5px;\n",
1057
+       "    overflow: hidden;\n",
1058
+       "\tpadding-left: 0.8em;\n",
1059
+       "    padding-right: 0.8em;\n",
1060
+       "    padding-top: 0.4em;\n",
1061
+       "    padding-bottom: 0.4em;\n",
1062
+       "}\n",
1063
+       "\n",
1064
+       "div.holowidgets {\n",
1065
+       "    padding-right: 0;\n",
1066
+       "\twidth: 25%;\n",
1067
+       "}\n",
1068
+       "\n",
1069
+       "div.holoslider {\n",
1070
+       "    min-height: 0 !important;\n",
1071
+       "    height: 0.8em;\n",
1072
+       "    width: 60%;\n",
1073
+       "}\n",
1074
+       "\n",
1075
+       "div.holoformgroup {\n",
1076
+       "    padding-top: 0.5em;\n",
1077
+       "    margin-bottom: 0.5em;\n",
1078
+       "}\n",
1079
+       "\n",
1080
+       "div.hologroup {\n",
1081
+       "    padding-left: 0;\n",
1082
+       "    padding-right: 0.8em;\n",
1083
+       "    width: 50%;\n",
1084
+       "}\n",
1085
+       "\n",
1086
+       ".holoselect {\n",
1087
+       "    width: 92%;\n",
1088
+       "    margin-left: 0;\n",
1089
+       "    margin-right: 0;\n",
1090
+       "}\n",
1091
+       "\n",
1092
+       ".holotext {\n",
1093
+       "    width: 100%;\n",
1094
+       "    padding-left:  0.5em;\n",
1095
+       "    padding-right: 0;\n",
1096
+       "}\n",
1097
+       "\n",
1098
+       ".holowidgets .ui-resizable-se {\n",
1099
+       "\tvisibility: hidden\n",
1100
+       "}\n",
1101
+       "\n",
1102
+       ".holoframe > .ui-resizable-se {\n",
1103
+       "\tvisibility: hidden\n",
1104
+       "}\n",
1105
+       "\n",
1106
+       ".holowidgets .ui-resizable-s {\n",
1107
+       "\tvisibility: hidden\n",
1108
+       "}\n",
1109
+       "\n",
1110
+       "div.bk-hbox {\n",
1111
+       "    display: flex;\n",
1112
+       "    justify-content: center;\n",
1113
+       "}\n",
1114
+       "\n",
1115
+       "div.bk-hbox div.bk-plot {\n",
1116
+       "    padding: 8px;\n",
1117
+       "}\n",
1118
+       "\n",
1119
+       "div.bk-hbox div.bk-data-table {\n",
1120
+       "    padding: 20px;\n",
1121
+       "}\n",
1122
+       "</style>\n",
1123
+       "\n"
1124
+      ],
1125
+      "text/plain": [
1126
+       "<IPython.core.display.HTML object>"
1127
+      ]
1128
+     },
1129
+     "metadata": {},
1130
+     "output_type": "display_data"
1131
+    }
1132
+   ],
1133
+   "source": [
1134
+    "import holoviews as hv\n",
1135
+    "hv.notebook_extension('bokeh', logo=False)"
1136
+   ]
1137
+  },
1138
+  {
1139
+   "cell_type": "code",
1140
+   "execution_count": 4,
1141
+   "metadata": {
1142
+    "tags": [
1143
+     "hide-input"
1144
+    ]
1145
+   },
1146
+   "outputs": [
1147
+    {
1148
+     "data": {
1149
+      "text/html": [
1150
+       "<div style='display: table; margin: 0 auto;'>\n",
1151
+       "\n",
1152
+       "\n",
1153
+       "\n",
1154
+       "\n",
1155
+       "\n",
1156
+       "\n",
1157
+       "  <div class=\"bk-root\" id=\"f3c37a0a-9747-4668-a9be-ee1d2467be7c\"></div>\n",
1158
+       "\n",
1159
+       "<script type=\"text/javascript\">\n",
1160
+       "  (function(root) {\n",
1161
+       "  function embed_document(root) {\n",
1162
+       "    \n",
1163
+       "  var docs_json = {\"e20db71c-6c62-4628-bd7f-9cdd6725f7f7\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"1047\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1052\",\"type\":\"LinearAxis\"}],\"min_border_bottom\":10,\"min_border_left\":10,\"min_border_right\":10,\"min_border_top\":10,\"plot_height\":300,\"plot_width\":300,\"renderers\":[{\"id\":\"1047\",\"type\":\"LinearAxis\"},{\"id\":\"1051\",\"type\":\"Grid\"},{\"id\":\"1052\",\"type\":\"LinearAxis\"},{\"id\":\"1056\",\"type\":\"Grid\"},{\"id\":\"1065\",\"type\":\"BoxAnnotation\"},{\"id\":\"1075\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"1038\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"1062\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"1036\",\"type\":\"Range1d\"},\"x_scale\":{\"id\":\"1043\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"1037\",\"type\":\"Range1d\"},\"y_scale\":{\"id\":\"1045\",\"type\":\"LinearScale\"}},\"id\":\"1039\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1057\",\"type\":\"SaveTool\"},{\"id\":\"1058\",\"type\":\"PanTool\"},{\"id\":\"1059\",\"type\":\"WheelZoomTool\"},{\"id\":\"1060\",\"type\":\"BoxZoomTool\"},{\"id\":\"1061\",\"type\":\"ResetTool\"}]},\"id\":\"1062\",\"type\":\"Toolbar\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1070\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1073\",\"type\":\"Image\"},{\"attributes\":{},\"id\":\"1057\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1058\",\"type\":\"PanTool\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1070\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1074\",\"type\":\"Image\"},{\"attributes\":{},\"id\":\"1059\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"overlay\":{\"id\":\"1065\",\"type\":\"BoxAnnotation\"}},\"id\":\"1060\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1080\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"source\":{\"id\":\"1071\",\"type\":\"ColumnDataSource\"}},\"id\":\"1076\",\"type\":\"CDSView\"},{\"attributes\":{\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1039\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1048\",\"type\":\"BasicTicker\"}},\"id\":\"1051\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1061\",\"type\":\"ResetTool\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":{\"value\":0.5},\"fill_color\":{\"value\":\"lightgrey\"},\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":{\"value\":1.0},\"line_color\":{\"value\":\"black\"},\"line_dash\":[4,4],\"line_width\":{\"value\":2},\"plot\":null,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1065\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"callback\":null,\"start\":-1},\"id\":\"1036\",\"type\":\"Range1d\"},{\"attributes\":{\"callback\":null,\"data\":{\"dh\":[2],\"dw\":[2],\"image\":[{\"__ndarray__\":\"AAAAAAAA8L9VVVVVVVXtv6uqqqqqquq/AAAAAAAA6L9WVVVVVVXlv6uqqqqqquK/AAAAAAAA4L+sqqqqqqrav1ZVVVVVVdW/AAAAAAAA0L9YVVVVVVXFv1hVVVVVVbW/aE+tVll12ShQVVVVVVW1P1BVVVVVVcU/AAAAAAAA0D9UVVVVVVXVP6iqqqqqqto/AAAAAAAA4D+qqqqqqqriP1RVVVVVVeU/AAAAAAAA6D+qqqqqqqrqP1RVVVVVVe0/AAAAAAAA8D8AAAAAAADwv1VVVVVVVe2/q6qqqqqq6r8AAAAAAADov1ZVVVVVVeW/q6qqqqqq4r8AAAAAAADgv6yqqqqqqtq/VlVVVVVV1b8AAAAAAADQv1hVVVVVVcW/WFVVVVVVtb/GaWQleyDwMlBVVVVVVbU/UFVVVVVVxT8AAAAAAADQP1RVVVVVVdU/qKqqqqqq2j8AAAAAAADgP6qqqqqqquI/VFVVVVVV5T8AAAAAAADoP6qqqqqqquo/VFVVVVVV7T8AAAAAAADwPwAAAAAAAPC/VVVVVVVV7b+rqqqqqqrqvwAAAAAAAOi/VlVVVVVV5b+rqqqqqqrivwAAAAAAAOC/rKqqqqqq2r9WVVVVVVXVvwAAAAAAANC/WFVVVVVVxb9YVVVVVVW1v5xUAyNcraE5UFVVVVVVtT9QVVVVVVXFPwAAAAAAANA/VFVVVVVV1T+oqqqqqqraPwAAAAAAAOA/qqqqqqqq4j9UVVVVVVXlPwAAAAAAAOg/qqqqqqqq6j9UVVVVVVXtPwAAAAAAAPA/AAAAAAAA8L9VVVVVVVXtv6uqqqqqquq/AAAAAAAA6L9WVVVVVVXlv6uqqqqqquK/AAAAAAAA4L+sqqqqqqrav1ZVVVVVVdW/AAAAAAAA0L/GVFVVVVXFv6X4U1VVVbW/uIYpqXlIoD0DslZVVVW1P+JVVVVVVcU/AAAAAAAA0D9UVVVVVVXVP6iqqqqqqto/AAAAAAAA4D+qqqqqqqriP1RVVVVVVeU/AAAAAAAA6D+qqqqqqqrqP1RVVVVVVe0/AAAAAAAA8D8AAAAAAADwv1VVVVVVVe2/q6qqqqqq6r8AAAAAAADov1ZVVVVVVeW/q6qqqqqq4r8AAAAAAADgv6yqqqqqqtq/DuFJVVVV1b/zYF5y9P/Pv5rGJEHUSMW/GY4nYfHys78A91l1f8GHP5Icg0m5t7Y/DuSFadZhxT+Gz9DGBQDQP5zJYFVVVdU/qKqqqqqq2j8AAAAAAADgP6qqqqqqquI/VFVVVVVV5T8AAAAAAADoP6qqqqqqquo/VFVVVVVV7T8AAAAAAADwPwAAAAAAAPC/VVVVVVVV7b+rqqqqqqrqvwAAAAAAAOi/VlVVVVVV5b+rqqqqqqriv7f//////9+/wuTuGamq2r+H40lYvPzUv/SbjXQDkrE/hg+cLxFl6T8NbwfQnjrqP+s17OMVGOk/WsRcJfSP7z8aXSPt3QfyP36zkW5AMuI/JMdgUu6t1T+ScGY7rKraPyQAAAAAAOA/qqqqqqqq4j9UVVVVVVXlPwAAAAAAAOg/qqqqqqqq6j9UVVVVVVXtPwAAAAAAAPA/AAAAAAAA8L9VVVVVVVXtv6uqqqqqquq/AAAAAAAA6L9WVVVVVVXlv4eqqqqqquK/YPIE7uv/379O84mwNJDVv5Bn3cgDT+U/YDvWxDUleL/BNG3+PHbDv9Q8S1B8/7S/cn1DIoIGQT/TbV9aLqu1P+R1PaxtNMc/EqfsKGuf3z9zXhmPLFL1Pxliy6Qgxd8/0Ib9CAoA4D/OqqqqqqriP1RVVVVVVeU/AAAAAAAA6D+qqqqqqqrqP1RVVVVVVe0/AAAAAAAA8D8AAAAAAADwv1VVVVVVVe2/q6qqqqqq6r8AAAAAAADov1ZVVVVVVeW/tsdM4qmq4r+PSN8FiuXav8SIuUroH98/jSWJIMt6078lKYe8w/3Pv/CNqxZUVcW/5r+FTVVVtb8ozcHWgor5PcLqJF1VVbU/uBz/k1ZVxT9ta7whHgHQPxqFIYrfL9c/e7cDaE8d9T+4WxD9Oo3iP5+NCHOrquI/VFVVVVVV5T8AAAAAAADoP6qqqqqqquo/VFVVVVVV7T8AAAAAAADwPwAAAAAAAPC/VVVVVVVV7b+rqqqqqqrqvwAAAAAAAOi/MptPVVVV5b/E8SQsXn7iv3gkEOdc898/3nredSDQ2L9v7WvQN1XVv+mrM////8+/y01VVVVVxb9PVVVVVVW1v2nPGRGnr3E8WVVVVVVVtT/dXFVVVVXFPwsqZgAAANA/O70+2nJV1T9u2nbfNIXcPx4JxDnX/Pc/kmMwKffW4j94D1tVVVXlPwAAAAAAAOg/qqqqqqqq6j9UVVVVVVXtPwAAAAAAAPA/AAAAAAAA8L9VVVVVVVXtv6uqqqqqquq/AAAAAAAA6L+T7exxUlXlv43uMXjU8NC/7lgT15Rg0L8/P+6IjKnav0sr71RVVdW/2///////z79YVVVVVVXFv1hVVVVVVbW/6FN/xL9R8jpQVVVVVVW1P1BVVVVVVcU/EgAAAAAA0D9ff7tVVVXVPxUWZ8zIq9o/iVN2lLXP5z8oXjwZ69zsPxe9vThYVeU/AAAAAAAA6D+qqqqqqqrqP1RVVVVVVe0/AAAAAAAA8D8AAAAAAADwv1VVVVVVVe2/q6qqqqqq6r/c///////nv6cxSRA1UuW/UHSNtHcf2D+274vUcxDfv/jGVQuqqtq/kFFVVVVV1b8AAAAAAADQv1hVVVVVVcW/WFVVVVVVtb/udzR6d0+2OVBVVVVVVbU/UFVVVVVVxT8AAAAAAADQPxpZVVVVVdU/XI7/Sauq2j8lCLoVxnfgP8YHzpeIsvg/BHlhmnVY5T8kAAAAAADoP6qqqqqqquo/VFVVVVVV7T8AAAAAAADwPwAAAAAAAPC/VVVVVVVV7b+rqqqqqqrqv2rU/////+e/b5zP1ggp5b823g6gPXXUP995vb6J6t+/UMW2qKqq2r9UVVVVVVXVvwAAAAAAANC/WFVVVVVVxb9YVVVVVVW1v71bQnkDXeg4UFVVVVVVtT9QVVVVVVXFPwAAAAAAANA/VlVVVVVV1T8EkJ6sqqraPxBDoSC7CuA/LWKuEvrH9z88DtvToYHlP5YrAAAAAOg/qqqqqqqq6j9UVVVVVVXtPwAAAAAAAPA/AAAAAAAA8L9VVVVVVVXtv6uqqqqqquq/ePv+////57997X9XT/bkv3QtBuWstck/Qd7uvnz337+hgESqqqrav1ZVVVVVVdW/AAAAAAAA0L9YVVVVVVXFv1hVVVVVVbW/F1Db6rqmoThQVVVVVVW1P1BVVVVVVcU/AAAAAAAA0D9UVVVVVVXVP7PUEKuqqto/35CIoEEE4D9KcEtHYOH1PzC9KlNbtOU/iAQBAAAA6D+qqqqqqqrqP1RVVVVVVe0/AAAAAAAA8D8AAAAAAADwv1VVVVVVVe2/q6qqqqqq6r9q1P/////nv3Ccz9YIKeW/RN4OoD111D/feb2+ierfv1DFtqiqqtq/VFVVVVVV1b8AAAAAAADQv1hVVVVVVcW/WFVVVVVVtb+AXEJ5A13oOFBVVVVVVbU/UFVVVVVVxT8AAAAAAADQP1ZVVVVVVdU/BJCerKqq2j8QQ6EguwrgPzFirhL6x/c/PA7b06GB5T+WKwAAAADoP6qqqqqqquo/VFVVVVVV7T8AAAAAAADwPwAAAAAAAPC/VVVVVVVV7b+rqqqqqqrqv9z//////+e/pzFJEDVS5b9GdI20dx/YP7Xvi9RzEN+/+MZVC6qq2r+QUVVVVVXVvwAAAAAAANC/WFVVVVVVxb9YVVVVVVW1v0d4NHp3T7Y5UFVVVVVVtT9QVVVVVVXFPwAAAAAAANA/GllVVVVV1T9cjv9Jq6raPyYIuhXGd+A/wwfOl4iy+D8DeWGadVjlPyQAAAAAAOg/qqqqqqqq6j9UVVVVVVXtPwAAAAAAAPA/AAAAAAAA8L9VVVVVVVXtv6uqqqqqquq/AAAAAAAA6L+T7exxUlXlv43uMXjU8NC/7lgT15Rg0L8/P+6IjKnav0sr71RVVdW/2///////z79YVVVVVVXFv1hVVVVVVbW/6FN/xL9R8jpQVVVVVVW1P1BVVVVVVcU/EgAAAAAA0D9ff7tVVVXVPxUWZ8zIq9o/iVN2lLXP5z8oXjwZ69zsPxe9vThYVeU/AAAAAAAA6D+qqqqqqqrqP1RVVVVVVe0/AAAAAAAA8D8AAAAAAADwv1VVVVVVVe2/q6qqqqqq6r8AAAAAAADovzKbT1VVVeW/xPEkLF5+4r92JBDnXPPfP9l63nUg0Ni/b+1r0DdV1b/pqzP////Pv8tNVVVVVcW/T1VVVVVVtb/2zxkRp69xPFlVVVVVVbU/3VxVVVVVxT8LKmYAAADQPzu9PtpyVdU/cdp23zSF3D8eCcQ51/z3P5FjMCn31uI/eA9bVVVV5T8AAAAAAADoP6qqqqqqquo/VFVVVVVV7T8AAAAAAADwPwAAAAAAAPC/VVVVVVVV7b+rqqqqqqrqvwAAAAAAAOi/VlVVVVVV5b+2x0ziqariv6JI3wWK5dq/7oi5Sugf3z+DJYkgy3rTvyUph7zD/c+/8I2rFlRVxb/mv4VNVVW1v0HOwdaCivk9wuokXVVVtT+4HP+TVlXFP21rvCEeAdA/IoUhit8v1z+GtwNoTx31P69bEP06jeI/n40Ic6uq4j9UVVVVVVXlPwAAAAAAAOg/qqqqqqqq6j9UVVVVVVXtPwAAAAAAAPA/AAAAAAAA8L9VVVVVVVXtv6uqqqqqquq/AAAAAAAA6L9WVVVVVVXlv4eqqqqqquK/YPIE7uv/379O84mwNJDVv5Bn3cgDT+U/YDvWxDUleL/BNG3+PHbDv9Q8S1B8/7S/cn1DIoIGQT/TbV9aLqu1P+R1PaxtNMc/EqfsKGuf3z9zXhmPLFL1Pxliy6Qgxd8/0Ib9CAoA4D/OqqqqqqriP1RVVVVVVeU/AAAAAAAA6D+qqqqqqqrqP1RVVVVVVe0/AAAAAAAA8D8AAAAAAADwv1VVVVVVVe2/q6qqqqqq6r8AAAAAAADov1ZVVVVVVeW/q6qqqqqq4r+3///////fv8Lk7hmpqtq/ieNJWLz81L8km410A5KxP3gPnC8RZek/Im8H0J466j8INuzjFRjpP3DEXCX0j+8/FF0j7d0H8j9ks5FuQDLiPyLHYFLurdU/knBmO6yq2j8kAAAAAADgP6qqqqqqquI/VFVVVVVV5T8AAAAAAADoP6qqqqqqquo/VFVVVVVV7T8AAAAAAADwPwAAAAAAAPC/VVVVVVVV7b+rqqqqqqrqvwAAAAAAAOi/VlVVVVVV5b+rqqqqqqrivwAAAAAAAOC/rKqqqqqq2r8O4UlVVVXVv/NgXnL0/8+/m8YkQdRIxb8ljidh8fKzvzz2WXV/wYc/hRyDSbm3tj8O5IVp1mHFP4bP0MYFANA/nMlgVVVV1T+oqqqqqqraPwAAAAAAAOA/qqqqqqqq4j9UVVVVVVXlPwAAAAAAAOg/qqqqqqqq6j9UVVVVVVXtPwAAAAAAAPA/AAAAAAAA8L9VVVVVVVXtv6uqqqqqquq/AAAAAAAA6L9WVVVVVVXlv6uqqqqqquK/AAAAAAAA4L+sqqqqqqrav1ZVVVVVVdW/AAAAAAAA0L/GVFVVVVXFv6X4U1VVVbW/uIYpqXlIoD0DslZVVVW1P+JVVVVVVcU/AAAAAAAA0D9UVVVVVVXVP6iqqqqqqto/AAAAAAAA4D+qqqqqqqriP1RVVVVVVeU/AAAAAAAA6D+qqqqqqqrqP1RVVVVVVe0/AAAAAAAA8D8AAAAAAADwv1VVVVVVVe2/q6qqqqqq6r8AAAAAAADov1ZVVVVVVeW/q6qqqqqq4r8AAAAAAADgv6yqqqqqqtq/VlVVVVVV1b8AAAAAAADQv1hVVVVVVcW/WFVVVVVVtb+tUgMjXK2hOVBVVVVVVbU/UFVVVVVVxT8AAAAAAADQP1RVVVVVVdU/qKqqqqqq2j8AAAAAAADgP6qqqqqqquI/VFVVVVVV5T8AAAAAAADoP6qqqqqqquo/VFVVVVVV7T8AAAAAAADwPwAAAAAAAPC/VVVVVVVV7b+rqqqqqqrqvwAAAAAAAOi/VlVVVVVV5b+rqqqqqqrivwAAAAAAAOC/rKqqqqqq2r9WVVVVVVXVvwAAAAAAANC/WFVVVVVVxb9YVVVVVVW1v0FnZCV7IPAyUFVVVVVVtT9QVVVVVVXFPwAAAAAAANA/VFVVVVVV1T+oqqqqqqraPwAAAAAAAOA/qqqqqqqq4j9UVVVVVVXlPwAAAAAAAOg/qqqqqqqq6j9UVVVVVVXtPwAAAAAAAPA/AAAAAAAA8L9VVVVVVVXtv6uqqqqqquq/AAAAAAAA6L9WVVVVVVXlv6uqqqqqquK/AAAAAAAA4L+sqqqqqqrav1ZVVVVVVdW/AAAAAAAA0L9YVVVVVVXFv1hVVVVVVbW/aE+tVll12ShQVVVVVVW1P1BVVVVVVcU/AAAAAAAA0D9UVVVVVVXVP6iqqqqqqto/AAAAAAAA4D+qqqqqqqriP1RVVVVVVeU/AAAAAAAA6D+qqqqqqqrqP1RVVVVVVe0/AAAAAAAA8D8=\",\"dtype\":\"float64\",\"shape\":[25,25]}],\"x\":[-1],\"y\":[-1]},\"selected\":{\"id\":\"1088\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1087\",\"type\":\"UnionRenderers\"}},\"id\":\"1071\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"plot\":null,\"text\":\"\",\"text_color\":{\"value\":\"black\"},\"text_font_size\":{\"value\":\"12pt\"}},\"id\":\"1038\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1078\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"high\":1.5435872964740027,\"low\":-1.0,\"palette\":[\"#440154\",\"#440255\",\"#440357\",\"#450558\",\"#45065a\",\"#45085b\",\"#46095c\",\"#460b5e\",\"#460c5f\",\"#460e61\",\"#470f62\",\"#471163\",\"#471265\",\"#471466\",\"#471567\",\"#471669\",\"#47186a\",\"#48196b\",\"#481a6c\",\"#481c6e\",\"#481d6f\",\"#481e70\",\"#482071\",\"#482172\",\"#482273\",\"#482374\",\"#472575\",\"#472676\",\"#472777\",\"#472878\",\"#472a79\",\"#472b7a\",\"#472c7b\",\"#462d7c\",\"#462f7c\",\"#46307d\",\"#46317e\",\"#45327f\",\"#45347f\",\"#453580\",\"#453681\",\"#443781\",\"#443982\",\"#433a83\",\"#433b83\",\"#433c84\",\"#423d84\",\"#423e85\",\"#424085\",\"#414186\",\"#414286\",\"#404387\",\"#404487\",\"#3f4587\",\"#3f4788\",\"#3e4888\",\"#3e4989\",\"#3d4a89\",\"#3d4b89\",\"#3d4c89\",\"#3c4d8a\",\"#3c4e8a\",\"#3b508a\",\"#3b518a\",\"#3a528b\",\"#3a538b\",\"#39548b\",\"#39558b\",\"#38568b\",\"#38578c\",\"#37588c\",\"#37598c\",\"#365a8c\",\"#365b8c\",\"#355c8c\",\"#355d8c\",\"#345e8d\",\"#345f8d\",\"#33608d\",\"#33618d\",\"#32628d\",\"#32638d\",\"#31648d\",\"#31658d\",\"#31668d\",\"#30678d\",\"#30688d\",\"#2f698d\",\"#2f6a8d\",\"#2e6b8e\",\"#2e6c8e\",\"#2e6d8e\",\"#2d6e8e\",\"#2d6f8e\",\"#2c708e\",\"#2c718e\",\"#2c728e\",\"#2b738e\",\"#2b748e\",\"#2a758e\",\"#2a768e\",\"#2a778e\",\"#29788e\",\"#29798e\",\"#287a8e\",\"#287a8e\",\"#287b8e\",\"#277c8e\",\"#277d8e\",\"#277e8e\",\"#267f8e\",\"#26808e\",\"#26818e\",\"#25828e\",\"#25838d\",\"#24848d\",\"#24858d\",\"#24868d\",\"#23878d\",\"#23888d\",\"#23898d\",\"#22898d\",\"#228a8d\",\"#228b8d\",\"#218c8d\",\"#218d8c\",\"#218e8c\",\"#208f8c\",\"#20908c\",\"#20918c\",\"#1f928c\",\"#1f938b\",\"#1f948b\",\"#1f958b\",\"#1f968b\",\"#1e978a\",\"#1e988a\",\"#1e998a\",\"#1e998a\",\"#1e9a89\",\"#1e9b89\",\"#1e9c89\",\"#1e9d88\",\"#1e9e88\",\"#1e9f88\",\"#1ea087\",\"#1fa187\",\"#1fa286\",\"#1fa386\",\"#20a485\",\"#20a585\",\"#21a685\",\"#21a784\",\"#22a784\",\"#23a883\",\"#23a982\",\"#24aa82\",\"#25ab81\",\"#26ac81\",\"#27ad80\",\"#28ae7f\",\"#29af7f\",\"#2ab07e\",\"#2bb17d\",\"#2cb17d\",\"#2eb27c\",\"#2fb37b\",\"#30b47a\",\"#32b57a\",\"#33b679\",\"#35b778\",\"#36b877\",\"#38b976\",\"#39b976\",\"#3bba75\",\"#3dbb74\",\"#3ebc73\",\"#40bd72\",\"#42be71\",\"#44be70\",\"#45bf6f\",\"#47c06e\",\"#49c16d\",\"#4bc26c\",\"#4dc26b\",\"#4fc369\",\"#51c468\",\"#53c567\",\"#55c666\",\"#57c665\",\"#59c764\",\"#5bc862\",\"#5ec961\",\"#60c960\",\"#62ca5f\",\"#64cb5d\",\"#67cc5c\",\"#69cc5b\",\"#6bcd59\",\"#6dce58\",\"#70ce56\",\"#72cf55\",\"#74d054\",\"#77d052\",\"#79d151\",\"#7cd24f\",\"#7ed24e\",\"#81d34c\",\"#83d34b\",\"#86d449\",\"#88d547\",\"#8bd546\",\"#8dd644\",\"#90d643\",\"#92d741\",\"#95d73f\",\"#97d83e\",\"#9ad83c\",\"#9dd93a\",\"#9fd938\",\"#a2da37\",\"#a5da35\",\"#a7db33\",\"#aadb32\",\"#addc30\",\"#afdc2e\",\"#b2dd2c\",\"#b5dd2b\",\"#b7dd29\",\"#bade27\",\"#bdde26\",\"#bfdf24\",\"#c2df22\",\"#c5df21\",\"#c7e01f\",\"#cae01e\",\"#cde01d\",\"#cfe11c\",\"#d2e11b\",\"#d4e11a\",\"#d7e219\",\"#dae218\",\"#dce218\",\"#dfe318\",\"#e1e318\",\"#e4e318\",\"#e7e419\",\"#e9e419\",\"#ece41a\",\"#eee51b\",\"#f1e51c\",\"#f3e51e\",\"#f6e61f\",\"#f8e621\",\"#fae622\",\"#fde724\"]},\"id\":\"1070\",\"type\":\"LinearColorMapper\"},{\"attributes\":{\"callback\":null,\"start\":-1},\"id\":\"1037\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"1043\",\"type\":\"LinearScale\"},{\"attributes\":{\"axis_label\":\"y\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1080\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1039\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1053\",\"type\":\"BasicTicker\"}},\"id\":\"1052\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1045\",\"type\":\"LinearScale\"},{\"attributes\":{\"data_source\":{\"id\":\"1071\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1073\",\"type\":\"Image\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1074\",\"type\":\"Image\"},\"selection_glyph\":null,\"view\":{\"id\":\"1076\",\"type\":\"CDSView\"}},\"id\":\"1075\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis_label\":\"x\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1078\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1039\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1048\",\"type\":\"BasicTicker\"}},\"id\":\"1047\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1048\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1053\",\"type\":\"BasicTicker\"},{\"attributes\":{\"dimension\":1,\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1039\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1053\",\"type\":\"BasicTicker\"}},\"id\":\"1056\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1087\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1088\",\"type\":\"Selection\"}],\"root_ids\":[\"1039\"]},\"title\":\"Bokeh Application\",\"version\":\"1.0.2\"}};\n",
1164
+       "  var render_items = [{\"docid\":\"e20db71c-6c62-4628-bd7f-9cdd6725f7f7\",\"roots\":{\"1039\":\"f3c37a0a-9747-4668-a9be-ee1d2467be7c\"}}];\n",
1165
+       "  root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n",
1166
+       "\n",
1167
+       "  }\n",
1168
+       "  if (root.Bokeh !== undefined) {\n",
1169
+       "    embed_document(root);\n",
1170
+       "  } else {\n",
1171
+       "    var attempts = 0;\n",
1172
+       "    var timer = setInterval(function(root) {\n",
1173
+       "      if (root.Bokeh !== undefined) {\n",
1174
+       "        embed_document(root);\n",
1175
+       "        clearInterval(timer);\n",
1176
+       "      }\n",
1177
+       "      attempts++;\n",
1178
+       "      if (attempts > 100) {\n",
1179
+       "        console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n",
1180
+       "        clearInterval(timer);\n",
1181
+       "      }\n",
1182
+       "    }, 10, root)\n",
1183
+       "  }\n",
1184
+       "})(window);\n",
1185
+       "</script>\n",
1186
+       "</div>"
1187
+      ],
1188
+      "text/plain": [
1189
+       ":Image   [x,y]   (z)"
1190
+      ]
1191
+     },
1192
+     "execution_count": 4,
1193
+     "metadata": {},
1194
+     "output_type": "execute_result"
1195
+    }
1196
+   ],
1197
+   "source": [
1198
+    "(hv\n",
1199
+    " .Image(np.array(answers).reshape(N, N).T, bounds=((-1, -1, 1, 1)))\n",
1200
+    " .opts(style=(dict(cmap='viridis')))\n",
1201
+    ")"
1202
+   ]
1203
+  },
1204
+  {
1205
+   "cell_type": "markdown",
1206
+   "metadata": {},
1207
+   "source": [
1208
+    "Two minutes later (those simulations are heavy beasts!) and you realize you've massively underestimated the number of points you're going to need; you can't make out any detail at all! let's try that again."
1209
+   ]
1210
+  },
1211
+  {
1212
+   "cell_type": "code",
1213
+   "execution_count": 5,
1214
+   "metadata": {},
1215
+   "outputs": [],
1216
+   "source": [
1217
+    "N = 50\n",
1218
+    "xs = np.linspace(-1, 1, N)\n",
1219
+    "ys = np.linspace(-1, 1, N)\n",
1220
+    "\n",
1221
+    "answers = [complicated_model(x, y) for x, y in itertools.product(xs, ys)]"
1222
+   ]
1223
+  },
1224
+  {
1225
+   "cell_type": "markdown",
1226
+   "metadata": {},
1227
+   "source": [
1228
+    "Sure, you could probably incorporate the points from the previous run into this one – you *are* a numpy wizard after all – but in the time it would take you to get it right you could have just re-run the simulation anyway. Much more sensible to just change `N` to `50` and take a ten-minute coffee break waiting for the results."
1229
+   ]
1230
+  },
1231
+  {
1232
+   "cell_type": "code",
1233
+   "execution_count": 6,
1234
+   "metadata": {
1235
+    "tags": [
1236
+     "hide-input"
1237
+    ]
1238
+   },
1239
+   "outputs": [
1240
+    {
1241
+     "data": {
1242
+      "text/html": [
1243
+       "<div style='display: table; margin: 0 auto;'>\n",
1244
+       "\n",
1245
+       "\n",
1246
+       "\n",
1247
+       "\n",
1248
+       "\n",
1249
+       "\n",
1250
+       "  <div class=\"bk-root\" id=\"a71c9f65-946f-479d-9949-b9abfd57b3c4\"></div>\n",
1251
+       "\n",
1252
+       "<script type=\"text/javascript\">\n",
1253
+       "  (function(root) {\n",
1254
+       "  function embed_document(root) {\n",
1255
+       "    \n",
1256
+       "  var docs_json = {\"e10cb175-da86-4a13-82ef-db410f32739e\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"1156\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1161\",\"type\":\"LinearAxis\"}],\"min_border_bottom\":10,\"min_border_left\":10,\"min_border_right\":10,\"min_border_top\":10,\"plot_height\":300,\"plot_width\":300,\"renderers\":[{\"id\":\"1156\",\"type\":\"LinearAxis\"},{\"id\":\"1160\",\"type\":\"Grid\"},{\"id\":\"1161\",\"type\":\"LinearAxis\"},{\"id\":\"1165\",\"type\":\"Grid\"},{\"id\":\"1174\",\"type\":\"BoxAnnotation\"},{\"id\":\"1184\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"1147\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"1171\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"1145\",\"type\":\"Range1d\"},\"x_scale\":{\"id\":\"1152\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"1146\",\"type\":\"Range1d\"},\"y_scale\":{\"id\":\"1154\",\"type\":\"LinearScale\"}},\"id\":\"1148\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"overlay\":{\"id\":\"1174\",\"type\":\"BoxAnnotation\"}},\"id\":\"1169\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1197\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1170\",\"type\":\"ResetTool\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1166\",\"type\":\"SaveTool\"},{\"id\":\"1167\",\"type\":\"PanTool\"},{\"id\":\"1168\",\"type\":\"WheelZoomTool\"},{\"id\":\"1169\",\"type\":\"BoxZoomTool\"},{\"id\":\"1170\",\"type\":\"ResetTool\"}]},\"id\":\"1171\",\"type\":\"Toolbar\"},{\"attributes\":{},\"id\":\"1166\",\"type\":\"SaveTool\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":{\"value\":0.5},\"fill_color\":{\"value\":\"lightgrey\"},\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":{\"value\":1.0},\"line_color\":{\"value\":\"black\"},\"line_dash\":[4,4],\"line_width\":{\"value\":2},\"plot\":null,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1174\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"high\":1.5915451799747555,\"low\":-1.0,\"palette\":[\"#440154\",\"#440255\",\"#440357\",\"#450558\",\"#45065a\",\"#45085b\",\"#46095c\",\"#460b5e\",\"#460c5f\",\"#460e61\",\"#470f62\",\"#471163\",\"#471265\",\"#471466\",\"#471567\",\"#471669\",\"#47186a\",\"#48196b\",\"#481a6c\",\"#481c6e\",\"#481d6f\",\"#481e70\",\"#482071\",\"#482172\",\"#482273\",\"#482374\",\"#472575\",\"#472676\",\"#472777\",\"#472878\",\"#472a79\",\"#472b7a\",\"#472c7b\",\"#462d7c\",\"#462f7c\",\"#46307d\",\"#46317e\",\"#45327f\",\"#45347f\",\"#453580\",\"#453681\",\"#443781\",\"#443982\",\"#433a83\",\"#433b83\",\"#433c84\",\"#423d84\",\"#423e85\",\"#424085\",\"#414186\",\"#414286\",\"#404387\",\"#404487\",\"#3f4587\",\"#3f4788\",\"#3e4888\",\"#3e4989\",\"#3d4a89\",\"#3d4b89\",\"#3d4c89\",\"#3c4d8a\",\"#3c4e8a\",\"#3b508a\",\"#3b518a\",\"#3a528b\",\"#3a538b\",\"#39548b\",\"#39558b\",\"#38568b\",\"#38578c\",\"#37588c\",\"#37598c\",\"#365a8c\",\"#365b8c\",\"#355c8c\",\"#355d8c\",\"#345e8d\",\"#345f8d\",\"#33608d\",\"#33618d\",\"#32628d\",\"#32638d\",\"#31648d\",\"#31658d\",\"#31668d\",\"#30678d\",\"#30688d\",\"#2f698d\",\"#2f6a8d\",\"#2e6b8e\",\"#2e6c8e\",\"#2e6d8e\",\"#2d6e8e\",\"#2d6f8e\",\"#2c708e\",\"#2c718e\",\"#2c728e\",\"#2b738e\",\"#2b748e\",\"#2a758e\",\"#2a768e\",\"#2a778e\",\"#29788e\",\"#29798e\",\"#287a8e\",\"#287a8e\",\"#287b8e\",\"#277c8e\",\"#277d8e\",\"#277e8e\",\"#267f8e\",\"#26808e\",\"#26818e\",\"#25828e\",\"#25838d\",\"#24848d\",\"#24858d\",\"#24868d\",\"#23878d\",\"#23888d\",\"#23898d\",\"#22898d\",\"#228a8d\",\"#228b8d\",\"#218c8d\",\"#218d8c\",\"#218e8c\",\"#208f8c\",\"#20908c\",\"#20918c\",\"#1f928c\",\"#1f938b\",\"#1f948b\",\"#1f958b\",\"#1f968b\",\"#1e978a\",\"#1e988a\",\"#1e998a\",\"#1e998a\",\"#1e9a89\",\"#1e9b89\",\"#1e9c89\",\"#1e9d88\",\"#1e9e88\",\"#1e9f88\",\"#1ea087\",\"#1fa187\",\"#1fa286\",\"#1fa386\",\"#20a485\",\"#20a585\",\"#21a685\",\"#21a784\",\"#22a784\",\"#23a883\",\"#23a982\",\"#24aa82\",\"#25ab81\",\"#26ac81\",\"#27ad80\",\"#28ae7f\",\"#29af7f\",\"#2ab07e\",\"#2bb17d\",\"#2cb17d\",\"#2eb27c\",\"#2fb37b\",\"#30b47a\",\"#32b57a\",\"#33b679\",\"#35b778\",\"#36b877\",\"#38b976\",\"#39b976\",\"#3bba75\",\"#3dbb74\",\"#3ebc73\",\"#40bd72\",\"#42be71\",\"#44be70\",\"#45bf6f\",\"#47c06e\",\"#49c16d\",\"#4bc26c\",\"#4dc26b\",\"#4fc369\",\"#51c468\",\"#53c567\",\"#55c666\",\"#57c665\",\"#59c764\",\"#5bc862\",\"#5ec961\",\"#60c960\",\"#62ca5f\",\"#64cb5d\",\"#67cc5c\",\"#69cc5b\",\"#6bcd59\",\"#6dce58\",\"#70ce56\",\"#72cf55\",\"#74d054\",\"#77d052\",\"#79d151\",\"#7cd24f\",\"#7ed24e\",\"#81d34c\",\"#83d34b\",\"#86d449\",\"#88d547\",\"#8bd546\",\"#8dd644\",\"#90d643\",\"#92d741\",\"#95d73f\",\"#97d83e\",\"#9ad83c\",\"#9dd93a\",\"#9fd938\",\"#a2da37\",\"#a5da35\",\"#a7db33\",\"#aadb32\",\"#addc30\",\"#afdc2e\",\"#b2dd2c\",\"#b5dd2b\",\"#b7dd29\",\"#bade27\",\"#bdde26\",\"#bfdf24\",\"#c2df22\",\"#c5df21\",\"#c7e01f\",\"#cae01e\",\"#cde01d\",\"#cfe11c\",\"#d2e11b\",\"#d4e11a\",\"#d7e219\",\"#dae218\",\"#dce218\",\"#dfe318\",\"#e1e318\",\"#e4e318\",\"#e7e419\",\"#e9e419\",\"#ece41a\",\"#eee51b\",\"#f1e51c\",\"#f3e51e\",\"#f6e61f\",\"#f8e621\",\"#fae622\",\"#fde724\"]},\"id\":\"1179\",\"type\":\"LinearColorMapper\"},{\"attributes\":{\"dimension\":1,\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1148\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1162\",\"type\":\"BasicTicker\"}},\"id\":\"1165\",\"type\":\"Grid\"},{\"attributes\":{\"plot\":null,\"text\":\"\",\"text_color\":{\"value\":\"black\"},\"text_font_size\":{\"value\":\"12pt\"}},\"id\":\"1147\",\"type\":\"Title\"},{\"attributes\":{\"callback\":null,\"start\":-1},\"id\":\"1145\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"1196\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1189\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"callback\":null,\"start\":-1},\"id\":\"1146\",\"type\":\"Range1d\"},{\"attributes\":{\"callback\":null,\"data\":{\"dh\":[2],\"dw\":[2],\"image\":[{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[50,50]}],\"x\":[-1],\"y\":[-1]},\"selected\":{\"id\":\"1197\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1196\",\"type\":\"UnionRenderers\"}},\"id\":\"1180\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1168\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1187\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1148\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1157\",\"type\":\"BasicTicker\"}},\"id\":\"1160\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1167\",\"type\":\"PanTool\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1179\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1182\",\"type\":\"Image\"},{\"attributes\":{},\"id\":\"1157\",\"type\":\"BasicTicker\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1179\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1183\",\"type\":\"Image\"},{\"attributes\":{\"axis_label\":\"x\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1187\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1148\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1157\",\"type\":\"BasicTicker\"}},\"id\":\"1156\",\"type\":\"LinearAxis\"},{\"attributes\":{\"data_source\":{\"id\":\"1180\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1182\",\"type\":\"Image\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1183\",\"type\":\"Image\"},\"selection_glyph\":null,\"view\":{\"id\":\"1185\",\"type\":\"CDSView\"}},\"id\":\"1184\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1154\",\"type\":\"LinearScale\"},{\"attributes\":{\"source\":{\"id\":\"1180\",\"type\":\"ColumnDataSource\"}},\"id\":\"1185\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1152\",\"type\":\"LinearScale\"},{\"attributes\":{\"axis_label\":\"y\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1189\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1148\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1162\",\"type\":\"BasicTicker\"}},\"id\":\"1161\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1162\",\"type\":\"BasicTicker\"}],\"root_ids\":[\"1148\"]},\"title\":\"Bokeh Application\",\"version\":\"1.0.2\"}};\n",
1257
+       "  var render_items = [{\"docid\":\"e10cb175-da86-4a13-82ef-db410f32739e\",\"roots\":{\"1148\":\"a71c9f65-946f-479d-9949-b9abfd57b3c4\"}}];\n",
1258
+       "  root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n",
1259
+       "\n",
1260
+       "  }\n",
1261
+       "  if (root.Bokeh !== undefined) {\n",
1262
+       "    embed_document(root);\n",
1263
+       "  } else {\n",
1264
+       "    var attempts = 0;\n",
1265
+       "    var timer = setInterval(function(root) {\n",
1266
+       "      if (root.Bokeh !== undefined) {\n",
1267
+       "        embed_document(root);\n",
1268
+       "        clearInterval(timer);\n",
1269
+       "      }\n",
1270
+       "      attempts++;\n",
1271
+       "      if (attempts > 100) {\n",
1272
+       "        console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n",
1273
+       "        clearInterval(timer);\n",
1274
+       "      }\n",
1275
+       "    }, 10, root)\n",
1276
+       "  }\n",
1277
+       "})(window);\n",
1278
+       "</script>\n",
1279
+       "</div>"
1280
+      ],
1281
+      "text/plain": [
1282
+       ":Image   [x,y]   (z)"
1283
+      ]
1284
+     },
1285
+     "execution_count": 6,
1286
+     "metadata": {},
1287
+     "output_type": "execute_result"
1288
+    }
1289
+   ],
1290
+   "source": [
1291
+    "(hv\n",
1292
+    " .Image(np.array(answers).reshape(N, N).T, bounds=((-1, -1, 1, 1)))\n",
1293
+    " .opts(style=(dict(cmap='viridis')))\n",
1294
+    ")"
1295
+   ]
1296
+  },
1297
+  {
1298
+   "cell_type": "markdown",
1299
+   "metadata": {},
1300
+   "source": [
1301
+    "Aww yes, a marginally improved plot! Let's hope you never want any more detail, or we could be here for quite a long time."
1302
+   ]
1303
+  },
1304
+  {
1305
+   "cell_type": "markdown",
1306
+   "metadata": {},
1307
+   "source": [
1308
+    "## Sound familiar?\n",
1309
+    "\n",
1310
+    "In our research group we found ourselves doing the above approximately fifteen quintillion times a day. That's why one day we got fed up and decided to write [`adaptive`](https://github.com/python-adaptive/adaptive), a Python library for adaptive sampling (see what we did there?).\n",
1311
+    "\n",
1312
+    "Using `adaptive`, you turn this:"
1313
+   ]
1314
+  },
1315
+  {
1316
+   "cell_type": "code",
1317
+   "execution_count": 7,
1318
+   "metadata": {},
1319
+   "outputs": [],
1320
+   "source": [
1321
+    "N = 25\n",
1322
+    "xs = np.linspace(-1, 1, N)\n",
1323
+    "ys = np.linspace(-1, 1, N)\n",
1324
+    "\n",
1325
+    "answers = [complicated_model(x, y) for x, y in itertools.product(xs, ys)]"
1326
+   ]
1327
+  },
1328
+  {
1329
+   "cell_type": "code",
1330
+   "execution_count": 8,
1331
+   "metadata": {
1332
+    "tags": [
1333
+     "hide-input"
1334
+    ]
1335
+   },
1336
+   "outputs": [
1337
+    {
1338
+     "data": {
1339
+      "text/html": [
1340
+       "<div style='display: table; margin: 0 auto;'>\n",
1341
+       "\n",
1342
+       "\n",
1343
+       "\n",
1344
+       "\n",
1345
+       "\n",
1346
+       "\n",
1347
+       "  <div class=\"bk-root\" id=\"51b15eb4-88e5-4d20-97ba-5bbdea8ffc49\"></div>\n",
1348
+       "\n",
1349
+       "<script type=\"text/javascript\">\n",
1350
+       "  (function(root) {\n",
1351
+       "  function embed_document(root) {\n",
1352
+       "    \n",
1353
+       "  var docs_json = {\"88582856-4e85-43c0-b71c-dc69bc8c41a1\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"1265\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1270\",\"type\":\"LinearAxis\"}],\"min_border_bottom\":10,\"min_border_left\":10,\"min_border_right\":10,\"min_border_top\":10,\"plot_height\":300,\"plot_width\":300,\"renderers\":[{\"id\":\"1265\",\"type\":\"LinearAxis\"},{\"id\":\"1269\",\"type\":\"Grid\"},{\"id\":\"1270\",\"type\":\"LinearAxis\"},{\"id\":\"1274\",\"type\":\"Grid\"},{\"id\":\"1283\",\"type\":\"BoxAnnotation\"},{\"id\":\"1293\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"1256\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"1280\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"1254\",\"type\":\"Range1d\"},\"x_scale\":{\"id\":\"1261\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"1255\",\"type\":\"Range1d\"},\"y_scale\":{\"id\":\"1263\",\"type\":\"LinearScale\"}},\"id\":\"1257\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"axis_label\":\"y\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1298\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1257\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1271\",\"type\":\"BasicTicker\"}},\"id\":\"1270\",\"type\":\"LinearAxis\"},{\"attributes\":{\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1257\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1266\",\"type\":\"BasicTicker\"}},\"id\":\"1269\",\"type\":\"Grid\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1275\",\"type\":\"SaveTool\"},{\"id\":\"1276\",\"type\":\"PanTool\"},{\"id\":\"1277\",\"type\":\"WheelZoomTool\"},{\"id\":\"1278\",\"type\":\"BoxZoomTool\"},{\"id\":\"1279\",\"type\":\"ResetTool\"}]},\"id\":\"1280\",\"type\":\"Toolbar\"},{\"attributes\":{\"dimension\":1,\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1257\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1271\",\"type\":\"BasicTicker\"}},\"id\":\"1274\",\"type\":\"Grid\"},{\"attributes\":{\"axis_label\":\"x\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1296\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1257\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1266\",\"type\":\"BasicTicker\"}},\"id\":\"1265\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1275\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1276\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1263\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1266\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1277\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1271\",\"type\":\"BasicTicker\"},{\"attributes\":{\"overlay\":{\"id\":\"1283\",\"type\":\"BoxAnnotation\"}},\"id\":\"1278\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"callback\":null,\"data\":{\"dh\":[2],\"dw\":[2],\"image\":[{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[25,25]}],\"x\":[-1],\"y\":[-1]},\"selected\":{\"id\":\"1306\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1305\",\"type\":\"UnionRenderers\"}},\"id\":\"1289\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1279\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1296\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":{\"value\":0.5},\"fill_color\":{\"value\":\"lightgrey\"},\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":{\"value\":1.0},\"line_color\":{\"value\":\"black\"},\"line_dash\":[4,4],\"line_width\":{\"value\":2},\"plot\":null,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1283\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1305\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1288\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1291\",\"type\":\"Image\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1288\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1292\",\"type\":\"Image\"},{\"attributes\":{\"data_source\":{\"id\":\"1289\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1291\",\"type\":\"Image\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1292\",\"type\":\"Image\"},\"selection_glyph\":null,\"view\":{\"id\":\"1294\",\"type\":\"CDSView\"}},\"id\":\"1293\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"callback\":null,\"start\":-1},\"id\":\"1255\",\"type\":\"Range1d\"},{\"attributes\":{\"source\":{\"id\":\"1289\",\"type\":\"ColumnDataSource\"}},\"id\":\"1294\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1298\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1261\",\"type\":\"LinearScale\"},{\"attributes\":{\"high\":1.5435872964740027,\"low\":-1.0,\"palette\":[\"#440154\",\"#440255\",\"#440357\",\"#450558\",\"#45065a\",\"#45085b\",\"#46095c\",\"#460b5e\",\"#460c5f\",\"#460e61\",\"#470f62\",\"#471163\",\"#471265\",\"#471466\",\"#471567\",\"#471669\",\"#47186a\",\"#48196b\",\"#481a6c\",\"#481c6e\",\"#481d6f\",\"#481e70\",\"#482071\",\"#482172\",\"#482273\",\"#482374\",\"#472575\",\"#472676\",\"#472777\",\"#472878\",\"#472a79\",\"#472b7a\",\"#472c7b\",\"#462d7c\",\"#462f7c\",\"#46307d\",\"#46317e\",\"#45327f\",\"#45347f\",\"#453580\",\"#453681\",\"#443781\",\"#443982\",\"#433a83\",\"#433b83\",\"#433c84\",\"#423d84\",\"#423e85\",\"#424085\",\"#414186\",\"#414286\",\"#404387\",\"#404487\",\"#3f4587\",\"#3f4788\",\"#3e4888\",\"#3e4989\",\"#3d4a89\",\"#3d4b89\",\"#3d4c89\",\"#3c4d8a\",\"#3c4e8a\",\"#3b508a\",\"#3b518a\",\"#3a528b\",\"#3a538b\",\"#39548b\",\"#39558b\",\"#38568b\",\"#38578c\",\"#37588c\",\"#37598c\",\"#365a8c\",\"#365b8c\",\"#355c8c\",\"#355d8c\",\"#345e8d\",\"#345f8d\",\"#33608d\",\"#33618d\",\"#32628d\",\"#32638d\",\"#31648d\",\"#31658d\",\"#31668d\",\"#30678d\",\"#30688d\",\"#2f698d\",\"#2f6a8d\",\"#2e6b8e\",\"#2e6c8e\",\"#2e6d8e\",\"#2d6e8e\",\"#2d6f8e\",\"#2c708e\",\"#2c718e\",\"#2c728e\",\"#2b738e\",\"#2b748e\",\"#2a758e\",\"#2a768e\",\"#2a778e\",\"#29788e\",\"#29798e\",\"#287a8e\",\"#287a8e\",\"#287b8e\",\"#277c8e\",\"#277d8e\",\"#277e8e\",\"#267f8e\",\"#26808e\",\"#26818e\",\"#25828e\",\"#25838d\",\"#24848d\",\"#24858d\",\"#24868d\",\"#23878d\",\"#23888d\",\"#23898d\",\"#22898d\",\"#228a8d\",\"#228b8d\",\"#218c8d\",\"#218d8c\",\"#218e8c\",\"#208f8c\",\"#20908c\",\"#20918c\",\"#1f928c\",\"#1f938b\",\"#1f948b\",\"#1f958b\",\"#1f968b\",\"#1e978a\",\"#1e988a\",\"#1e998a\",\"#1e998a\",\"#1e9a89\",\"#1e9b89\",\"#1e9c89\",\"#1e9d88\",\"#1e9e88\",\"#1e9f88\",\"#1ea087\",\"#1fa187\",\"#1fa286\",\"#1fa386\",\"#20a485\",\"#20a585\",\"#21a685\",\"#21a784\",\"#22a784\",\"#23a883\",\"#23a982\",\"#24aa82\",\"#25ab81\",\"#26ac81\",\"#27ad80\",\"#28ae7f\",\"#29af7f\",\"#2ab07e\",\"#2bb17d\",\"#2cb17d\",\"#2eb27c\",\"#2fb37b\",\"#30b47a\",\"#32b57a\",\"#33b679\",\"#35b778\",\"#36b877\",\"#38b976\",\"#39b976\",\"#3bba75\",\"#3dbb74\",\"#3ebc73\",\"#40bd72\",\"#42be71\",\"#44be70\",\"#45bf6f\",\"#47c06e\",\"#49c16d\",\"#4bc26c\",\"#4dc26b\",\"#4fc369\",\"#51c468\",\"#53c567\",\"#55c666\",\"#57c665\",\"#59c764\",\"#5bc862\",\"#5ec961\",\"#60c960\",\"#62ca5f\",\"#64cb5d\",\"#67cc5c\",\"#69cc5b\",\"#6bcd59\",\"#6dce58\",\"#70ce56\",\"#72cf55\",\"#74d054\",\"#77d052\",\"#79d151\",\"#7cd24f\",\"#7ed24e\",\"#81d34c\",\"#83d34b\",\"#86d449\",\"#88d547\",\"#8bd546\",\"#8dd644\",\"#90d643\",\"#92d741\",\"#95d73f\",\"#97d83e\",\"#9ad83c\",\"#9dd93a\",\"#9fd938\",\"#a2da37\",\"#a5da35\",\"#a7db33\",\"#aadb32\",\"#addc30\",\"#afdc2e\",\"#b2dd2c\",\"#b5dd2b\",\"#b7dd29\",\"#bade27\",\"#bdde26\",\"#bfdf24\",\"#c2df22\",\"#c5df21\",\"#c7e01f\",\"#cae01e\",\"#cde01d\",\"#cfe11c\",\"#d2e11b\",\"#d4e11a\",\"#d7e219\",\"#dae218\",\"#dce218\",\"#dfe318\",\"#e1e318\",\"#e4e318\",\"#e7e419\",\"#e9e419\",\"#ece41a\",\"#eee51b\",\"#f1e51c\",\"#f3e51e\",\"#f6e61f\",\"#f8e621\",\"#fae622\",\"#fde724\"]},\"id\":\"1288\",\"type\":\"LinearColorMapper\"},{\"attributes\":{\"plot\":null,\"text\":\"\",\"text_color\":{\"value\":\"black\"},\"text_font_size\":{\"value\":\"12pt\"}},\"id\":\"1256\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1306\",\"type\":\"Selection\"},{\"attributes\":{\"callback\":null,\"start\":-1},\"id\":\"1254\",\"type\":\"Range1d\"}],\"root_ids\":[\"1257\"]},\"title\":\"Bokeh Application\",\"version\":\"1.0.2\"}};\n",
1354
+       "  var render_items = [{\"docid\":\"88582856-4e85-43c0-b71c-dc69bc8c41a1\",\"roots\":{\"1257\":\"51b15eb4-88e5-4d20-97ba-5bbdea8ffc49\"}}];\n",
1355
+       "  root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n",
1356
+       "\n",
1357
+       "  }\n",
1358
+       "  if (root.Bokeh !== undefined) {\n",
1359
+       "    embed_document(root);\n",
1360
+       "  } else {\n",
1361
+       "    var attempts = 0;\n",
1362
+       "    var timer = setInterval(function(root) {\n",
1363
+       "      if (root.Bokeh !== undefined) {\n",
1364
+       "        embed_document(root);\n",
1365
+       "        clearInterval(timer);\n",
1366
+       "      }\n",
1367
+       "      attempts++;\n",
1368
+       "      if (attempts > 100) {\n",
1369
+       "        console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n",
1370
+       "        clearInterval(timer);\n",
1371
+       "      }\n",
1372
+       "    }, 10, root)\n",
1373
+       "  }\n",
1374
+       "})(window);\n",
1375
+       "</script>\n",
1376
+       "</div>"
1377
+      ],
1378
+      "text/plain": [
1379
+       ":Image   [x,y]   (z)"
1380
+      ]
1381
+     },
1382
+     "execution_count": 8,
1383
+     "metadata": {},
1384
+     "output_type": "execute_result"
1385
+    }
1386
+   ],
1387
+   "source": [
1388
+    "(hv\n",
1389
+    " .Image(np.array(answers).reshape(N, N).T, bounds=((-1, -1, 1, 1)))\n",
1390
+    " .opts(style=(dict(cmap='viridis')))\n",
1391
+    ")"
1392
+   ]
1393
+  },
1394
+  {
1395
+   "cell_type": "markdown",
1396
+   "metadata": {},
1397
+   "source": [
1398
+    "into this:"
1399
+   ]
1400
+  },
1401
+  {
1402
+   "cell_type": "code",
1403
+   "execution_count": 9,
1404
+   "metadata": {
1405
+    "tags": [
1406
+     "hide"
1407
+    ]
1408
+   },
1409
+   "outputs": [],
1410
+   "source": [
1411
+    "import adaptive\n",
1412
+    "\n",
1413
+    "def complicated_model(xy):\n",
1414
+    "    x, y = xy\n",
1415
+    "    a = 0.2\n",
1416
+    "    return x + math.exp(-(x**2 + y**2 - 0.6**2)**2 / a**4)"
1417
+   ]
1418
+  },
1419
+  {
1420
+   "cell_type": "code",
1421
+   "execution_count": 10,
1422
+   "metadata": {},
1423
+   "outputs": [],
1424
+   "source": [
1425
+    "def complete_when(learner):\n",
1426
+    "    return learner.npoints >= 25**2\n",
1427
+    "\n",
1428
+    "learner = adaptive.LearnerND(complicated_model, ((-1, 1), (-1, 1)))\n",
1429
+    "adaptive.runner.simple(learner, complete_when)"
1430
+   ]
1431
+  },
1432
+  {
1433
+   "cell_type": "code",
1434
+   "execution_count": 11,
1435
+   "metadata": {
1436
+    "tags": [
1437
+     "hide-input"
1438
+    ]
1439
+   },
1440
+   "outputs": [
1441
+    {
1442
+     "data": {
1443
+      "text/html": [
1444
+       "<div style='display: table; margin: 0 auto;'>\n",
1445
+       "\n",
1446
+       "\n",
1447
+       "\n",
1448
+       "\n",
1449
+       "\n",
1450
+       "\n",
1451
+       "  <div class=\"bk-root\" id=\"08702e1a-78b2-4306-9e54-bc7ee170d876\"></div>\n",
1452
+       "\n",
1453
+       "<script type=\"text/javascript\">\n",
1454
+       "  (function(root) {\n",
1455
+       "  function embed_document(root) {\n",
1456
+       "    \n",
1457
+       "  var docs_json = {\"24ed1916-f159-4214-b302-5a78a3a1a031\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"1374\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1379\",\"type\":\"LinearAxis\"}],\"min_border_bottom\":10,\"min_border_left\":10,\"min_border_right\":10,\"min_border_top\":10,\"plot_height\":300,\"plot_width\":300,\"renderers\":[{\"id\":\"1374\",\"type\":\"LinearAxis\"},{\"id\":\"1378\",\"type\":\"Grid\"},{\"id\":\"1379\",\"type\":\"LinearAxis\"},{\"id\":\"1383\",\"type\":\"Grid\"},{\"id\":\"1392\",\"type\":\"BoxAnnotation\"},{\"id\":\"1406\",\"type\":\"GlyphRenderer\"},{\"id\":\"1414\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"1365\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"1389\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"1363\",\"type\":\"Range1d\"},\"x_scale\":{\"id\":\"1370\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"1364\",\"type\":\"Range1d\"},\"y_scale\":{\"id\":\"1372\",\"type\":\"LinearScale\"}},\"id\":\"1366\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"source\":{\"id\":\"1408\",\"type\":\"ColumnDataSource\"}},\"id\":\"1415\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1384\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1385\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1386\",\"type\":\"WheelZoomTool\"},{\"attributes\":{\"callback\":null,\"data\":{\"dh\":[2.0],\"dw\":[2.0],\"image\":[{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[76,76]}],\"x\":[-1.0],\"y\":[-1.0]},\"selected\":{\"id\":\"1423\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1422\",\"type\":\"UnionRenderers\"}},\"id\":\"1402\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"overlay\":{\"id\":\"1392\",\"type\":\"BoxAnnotation\"}},\"id\":\"1387\",\"type\":\"BoxZoomTool\"},{\"attributes\":{\"callback\":null,\"data\":{\"xs\":[{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[6035]}],\"ys\":[{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[6035]}]},\"selected\":{\"id\":\"1425\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1424\",\"type\":\"UnionRenderers\"}},\"id\":\"1408\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1422\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1425\",\"type\":\"Selection\"},{\"attributes\":{\"callback\":null,\"start\":-1.0},\"id\":\"1364\",\"type\":\"Range1d\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1401\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1404\",\"type\":\"Image\"},{\"attributes\":{\"plot\":null,\"text\":\"\",\"text_color\":{\"value\":\"black\"},\"text_font_size\":{\"value\":\"12pt\"}},\"id\":\"1365\",\"type\":\"Title\"},{\"attributes\":{},\"id\":\"1400\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1401\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1405\",\"type\":\"Image\"},{\"attributes\":{\"data_source\":{\"id\":\"1402\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1404\",\"type\":\"Image\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1405\",\"type\":\"Image\"},\"selection_glyph\":null,\"view\":{\"id\":\"1407\",\"type\":\"CDSView\"}},\"id\":\"1406\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"source\":{\"id\":\"1402\",\"type\":\"ColumnDataSource\"}},\"id\":\"1407\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1370\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1372\",\"type\":\"LinearScale\"},{\"attributes\":{\"high\":1.5279350364451258,\"low\":-1.0,\"palette\":[\"#440154\",\"#440255\",\"#440357\",\"#450558\",\"#45065a\",\"#45085b\",\"#46095c\",\"#460b5e\",\"#460c5f\",\"#460e61\",\"#470f62\",\"#471163\",\"#471265\",\"#471466\",\"#471567\",\"#471669\",\"#47186a\",\"#48196b\",\"#481a6c\",\"#481c6e\",\"#481d6f\",\"#481e70\",\"#482071\",\"#482172\",\"#482273\",\"#482374\",\"#472575\",\"#472676\",\"#472777\",\"#472878\",\"#472a79\",\"#472b7a\",\"#472c7b\",\"#462d7c\",\"#462f7c\",\"#46307d\",\"#46317e\",\"#45327f\",\"#45347f\",\"#453580\",\"#453681\",\"#443781\",\"#443982\",\"#433a83\",\"#433b83\",\"#433c84\",\"#423d84\",\"#423e85\",\"#424085\",\"#414186\",\"#414286\",\"#404387\",\"#404487\",\"#3f4587\",\"#3f4788\",\"#3e4888\",\"#3e4989\",\"#3d4a89\",\"#3d4b89\",\"#3d4c89\",\"#3c4d8a\",\"#3c4e8a\",\"#3b508a\",\"#3b518a\",\"#3a528b\",\"#3a538b\",\"#39548b\",\"#39558b\",\"#38568b\",\"#38578c\",\"#37588c\",\"#37598c\",\"#365a8c\",\"#365b8c\",\"#355c8c\",\"#355d8c\",\"#345e8d\",\"#345f8d\",\"#33608d\",\"#33618d\",\"#32628d\",\"#32638d\",\"#31648d\",\"#31658d\",\"#31668d\",\"#30678d\",\"#30688d\",\"#2f698d\",\"#2f6a8d\",\"#2e6b8e\",\"#2e6c8e\",\"#2e6d8e\",\"#2d6e8e\",\"#2d6f8e\",\"#2c708e\",\"#2c718e\",\"#2c728e\",\"#2b738e\",\"#2b748e\",\"#2a758e\",\"#2a768e\",\"#2a778e\",\"#29788e\",\"#29798e\",\"#287a8e\",\"#287a8e\",\"#287b8e\",\"#277c8e\",\"#277d8e\",\"#277e8e\",\"#267f8e\",\"#26808e\",\"#26818e\",\"#25828e\",\"#25838d\",\"#24848d\",\"#24858d\",\"#24868d\",\"#23878d\",\"#23888d\",\"#23898d\",\"#22898d\",\"#228a8d\",\"#228b8d\",\"#218c8d\",\"#218d8c\",\"#218e8c\",\"#208f8c\",\"#20908c\",\"#20918c\",\"#1f928c\",\"#1f938b\",\"#1f948b\",\"#1f958b\",\"#1f968b\",\"#1e978a\",\"#1e988a\",\"#1e998a\",\"#1e998a\",\"#1e9a89\",\"#1e9b89\",\"#1e9c89\",\"#1e9d88\",\"#1e9e88\",\"#1e9f88\",\"#1ea087\",\"#1fa187\",\"#1fa286\",\"#1fa386\",\"#20a485\",\"#20a585\",\"#21a685\",\"#21a784\",\"#22a784\",\"#23a883\",\"#23a982\",\"#24aa82\",\"#25ab81\",\"#26ac81\",\"#27ad80\",\"#28ae7f\",\"#29af7f\",\"#2ab07e\",\"#2bb17d\",\"#2cb17d\",\"#2eb27c\",\"#2fb37b\",\"#30b47a\",\"#32b57a\",\"#33b679\",\"#35b778\",\"#36b877\",\"#38b976\",\"#39b976\",\"#3bba75\",\"#3dbb74\",\"#3ebc73\",\"#40bd72\",\"#42be71\",\"#44be70\",\"#45bf6f\",\"#47c06e\",\"#49c16d\",\"#4bc26c\",\"#4dc26b\",\"#4fc369\",\"#51c468\",\"#53c567\",\"#55c666\",\"#57c665\",\"#59c764\",\"#5bc862\",\"#5ec961\",\"#60c960\",\"#62ca5f\",\"#64cb5d\",\"#67cc5c\",\"#69cc5b\",\"#6bcd59\",\"#6dce58\",\"#70ce56\",\"#72cf55\",\"#74d054\",\"#77d052\",\"#79d151\",\"#7cd24f\",\"#7ed24e\",\"#81d34c\",\"#83d34b\",\"#86d449\",\"#88d547\",\"#8bd546\",\"#8dd644\",\"#90d643\",\"#92d741\",\"#95d73f\",\"#97d83e\",\"#9ad83c\",\"#9dd93a\",\"#9fd938\",\"#a2da37\",\"#a5da35\",\"#a7db33\",\"#aadb32\",\"#addc30\",\"#afdc2e\",\"#b2dd2c\",\"#b5dd2b\",\"#b7dd29\",\"#bade27\",\"#bdde26\",\"#bfdf24\",\"#c2df22\",\"#c5df21\",\"#c7e01f\",\"#cae01e\",\"#cde01d\",\"#cfe11c\",\"#d2e11b\",\"#d4e11a\",\"#d7e219\",\"#dae218\",\"#dce218\",\"#dfe318\",\"#e1e318\",\"#e4e318\",\"#e7e419\",\"#e9e419\",\"#ece41a\",\"#eee51b\",\"#f1e51c\",\"#f3e51e\",\"#f6e61f\",\"#f8e621\",\"#fae622\",\"#fde724\"]},\"id\":\"1401\",\"type\":\"LinearColorMapper\"},{\"attributes\":{},\"id\":\"1424\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1384\",\"type\":\"SaveTool\"},{\"id\":\"1385\",\"type\":\"PanTool\"},{\"id\":\"1386\",\"type\":\"WheelZoomTool\"},{\"id\":\"1387\",\"type\":\"BoxZoomTool\"},{\"id\":\"1388\",\"type\":\"ResetTool\"}]},\"id\":\"1389\",\"type\":\"Toolbar\"},{\"attributes\":{\"axis_label\":\"x\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1398\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1366\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1375\",\"type\":\"BasicTicker\"}},\"id\":\"1374\",\"type\":\"LinearAxis\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":{\"value\":0.5},\"fill_color\":{\"value\":\"lightgrey\"},\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":{\"value\":1.0},\"line_color\":{\"value\":\"black\"},\"line_dash\":[4,4],\"line_width\":{\"value\":2},\"plot\":null,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1392\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1388\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1375\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1398\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{},\"id\":\"1423\",\"type\":\"Selection\"},{\"attributes\":{\"line_alpha\":{\"value\":0.2},\"line_color\":{\"value\":\"#000000\"},\"line_width\":{\"value\":0.5},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1410\",\"type\":\"MultiLine\"},{\"attributes\":{\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1366\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1375\",\"type\":\"BasicTicker\"}},\"id\":\"1378\",\"type\":\"Grid\"},{\"attributes\":{\"line_alpha\":{\"value\":0.2},\"line_color\":{\"value\":\"#000000\"},\"line_width\":{\"value\":0.5},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1411\",\"type\":\"MultiLine\"},{\"attributes\":{\"axis_label\":\"y\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1400\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1366\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1380\",\"type\":\"BasicTicker\"}},\"id\":\"1379\",\"type\":\"LinearAxis\"},{\"attributes\":{\"line_alpha\":{\"value\":0.2},\"line_color\":{\"value\":\"#32CD32\"},\"line_width\":{\"value\":0.5},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1412\",\"type\":\"MultiLine\"},{\"attributes\":{},\"id\":\"1380\",\"type\":\"BasicTicker\"},{\"attributes\":{\"callback\":null,\"start\":-1.0},\"id\":\"1363\",\"type\":\"Range1d\"},{\"attributes\":{\"line_alpha\":{\"value\":0.2},\"line_color\":{\"value\":\"#CD5C5C\"},\"line_width\":{\"value\":0.5},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1413\",\"type\":\"MultiLine\"},{\"attributes\":{\"dimension\":1,\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1366\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1380\",\"type\":\"BasicTicker\"}},\"id\":\"1383\",\"type\":\"Grid\"},{\"attributes\":{\"data_source\":{\"id\":\"1408\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1410\",\"type\":\"MultiLine\"},\"hover_glyph\":{\"id\":\"1413\",\"type\":\"MultiLine\"},\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1411\",\"type\":\"MultiLine\"},\"selection_glyph\":{\"id\":\"1412\",\"type\":\"MultiLine\"},\"view\":{\"id\":\"1415\",\"type\":\"CDSView\"}},\"id\":\"1414\",\"type\":\"GlyphRenderer\"}],\"root_ids\":[\"1366\"]},\"title\":\"Bokeh Application\",\"version\":\"1.0.2\"}};\n",
1458
+       "  var render_items = [{\"docid\":\"24ed1916-f159-4214-b302-5a78a3a1a031\",\"roots\":{\"1366\":\"08702e1a-78b2-4306-9e54-bc7ee170d876\"}}];\n",
1459
+       "  root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n",
1460
+       "\n",
1461
+       "  }\n",
1462
+       "  if (root.Bokeh !== undefined) {\n",
1463
+       "    embed_document(root);\n",
1464
+       "  } else {\n",
1465
+       "    var attempts = 0;\n",
1466
+       "    var timer = setInterval(function(root) {\n",
1467
+       "      if (root.Bokeh !== undefined) {\n",
1468
+       "        embed_document(root);\n",
1469
+       "        clearInterval(timer);\n",
1470
+       "      }\n",
1471
+       "      attempts++;\n",
1472
+       "      if (attempts > 100) {\n",
1473
+       "        console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n",
1474
+       "        clearInterval(timer);\n",
1475
+       "      }\n",
1476
+       "    }, 10, root)\n",
1477
+       "  }\n",
1478
+       "})(window);\n",
1479
+       "</script>\n",
1480
+       "</div>"
1481
+      ],
1482
+      "text/plain": [
1483
+       ":Overlay\n",
1484
+       "   .Image.I     :Image   [x,y]   (z)\n",
1485
+       "   .EdgePaths.I :EdgePaths   [x,y]"
1486
+      ]
1487
+     },
1488
+     "execution_count": 11,
1489
+     "metadata": {},
1490
+     "output_type": "execute_result"
1491
+    }
1492
+   ],
1493
+   "source": [
1494
+    "learner.plot(tri_alpha=0.2)"
1495
+   ]
1496
+  },
1497
+  {
1498
+   "cell_type": "markdown",
1499
+   "metadata": {},
1500
+   "source": [
1501
+    "The plot produced using `adaptive` uses *the same number of points* as the previous plot (625), but we get way more detail because it sampled more on the interesting ring, rather than the boring flat part.\n",
1502
+    "\n",
1503
+    "If the above example has left you awestruck and ravenous for more, then read on!"
1504
+   ]
1505
+  },
1506
+  {
1507
+   "cell_type": "markdown",
1508
+   "metadata": {},
1509
+   "source": [
1510
+    "## Adaptive"
1511
+   ]
1512
+  },
1513
+  {
1514
+   "cell_type": "markdown",
1515
+   "metadata": {},
1516
+   "source": [
1517
+    "In a nutshell `adaptive`'s job is to simplify sampling functions over parameter spaces; it is useful when you don't care *how* your parameter space is sampled, just that it's sampled *well*. It will try its best to zoom in on the interesting regions, while making sure that seemingly \"uninteresting\" regions are not hiding any secrets. `adaptive` will also take advantage of multiple cores on your machine (using the power of [`concurrent.futures`](https://docs.python.org/3.5/library/concurrent.futures.html)) or on remote machines (via [`ipyparallel`](https://ipyparallel.readthedocs.io/en/latest/) or [`distributed`](https://distributed.readthedocs.io/en/latest/)).\n",
1518
+    "\n",
1519
+    "It is used extensively in the Quantum Tinkerer research group in TU Delft to run quantum transport simulations and create gnarly plots:\n",
1520
+    "\n",
1521
+    "\n",
1522
+    "![](battle_for_majoranas.png)"
1523
+   ]
1524
+  },
1525
+  {
1526
+   "cell_type": "markdown",
1527
+   "metadata": {},
1528
+   "source": [
1529
+    "### How can I get some of this hotness?\n",
1530
+    "\n",
1531
+    "`adaptive` is developed on [Github](https://github.com/python-adaptive/adaptive), and has packages available on [PyPI](https://pypi.org/project/adaptive/) and [Conda Forge](https://anaconda.org/conda-forge/adaptive/).\n",
1532
+    "\n",
1533
+    "The easiest way to install `adaptive` is with\n",
1534
+    "\n",
1535
+    "```bash\n",
1536
+    "conda install -c conda-forge adaptive\n",
1537
+    "```\n",
1538
+    "\n",
1539
+    "Alternatively, if you use `pip`, then you can\n",
1540
+    "\n",
1541
+    "```bash\n",
1542
+    "pip install adaptive[notebook]\n",
1543
+    "```\n",
1544
+    "\n",
1545
+    "The `[notebook]` will make sure that you get all the goodies for notebook integration (`adaptive` works great as part of iterative, interactive workflows in the Jupyter notebook).\n",
1546
+    "\n",
1547
+    "We also have a tutorial and documentation [available on readthedocs](https://adaptive.readthedocs.io/en/latest/index.html).\n",
1548
+    "\n",
1549
+    "##### A small disclaimer\n",
1550
+    "\n",
1551
+    "Adaptive is pre- version 1.0, and we're still figuring out some interface stuff; don't be surprised if things break when you upgrade to a more recent version. That being said, `adaptive` has been successfully used in a number of research projects, and is actively developed, so if something doesn't work be sure to [open an issue](https://github.com/python-adaptive/adaptive/issues/new)."
1552
+   ]
1553
+  },
1554
+  {
1555
+   "cell_type": "markdown",
1556
+   "metadata": {},
1557
+   "source": [
1558
+    "### The core workflow"
1559
+   ]
1560
+  },
1561
+  {
1562
+   "cell_type": "markdown",
1563
+   "metadata": {},
1564
+   "source": [
1565
+    "When using adaptive you'll create a `Learner`, providing the function to \"learn\", and the bounds on the domain of `f`."
1566
+   ]
1567
+  },
1568
+  {
1569
+   "cell_type": "code",
1570
+   "execution_count": 12,
1571
+   "metadata": {},
1572
+   "outputs": [],
1573
+   "source": [
1574
+    "import time\n",
1575
+    "import adaptive\n",
1576
+    "\n",
1577
+    "def f(xy):\n",
1578
+    "    x, y = xy\n",
1579
+    "    a, d = 0.2, 0.6\n",
1580
+    "    time.sleep(0.005)  # do some hard work!\n",
1581
+    "    return x + np.exp(-(x**2 + y**2 - d**2)**2 / a**4)\n",
1582
+    "\n",
1583
+    "learner = adaptive.LearnerND(f, bounds=((-1, 1), (-1, 1)))"
1584
+   ]
1585
+  },
1586
+  {
1587
+   "cell_type": "markdown",
1588
+   "metadata": {},
1589
+   "source": [
1590
+    "You can then `ask` this learner what points `x` you should evaluate next. Then it's up to you to evaluate your `f` on those points and `tell` adaptive about what values, `f(x)`, are at those points."
1591
+   ]
1592
+  },
1593
+  {
1594
+   "cell_type": "code",
1595
+   "execution_count": 13,
1596
+   "metadata": {},
1597
+   "outputs": [],
1598
+   "source": [
1599
+    "# 'ask' also tells us how \"important\" the learner expects\n",
1600
+    "# each point to be, but we ignore it here.\n",
1601
+    "xs, _ = learner.ask(10)\n",
1602
+    "\n",
1603
+    "for x in xs:\n",
1604
+    "    learner.tell(x, f(x))"
1605
+   ]
1606
+  },
1607
+  {
1608
+   "cell_type": "markdown",
1609
+   "metadata": {},
1610
+   "source": [
1611
+    "This is the same idea as the `ask` and `tell` from [scikit-optimize](https://scikit-optimize.github.io/notebooks/ask-and-tell.html).\n",
1612
+    "In fact, because `adaptive` doesn't say much about what `Learner`s must do, beyond implementing `ask` and `tell`, `Learner`s can implement *whatever strategy they like* to predict where the \"best\" place is for the next points."
1613
+   ]
1614
+  },
1615
+  {
1616
+   "cell_type": "markdown",
1617
+   "metadata": {},
1618
+   "source": [
1619
+    "Typically when using `adaptive` you won't call `ask` and `tell` yourself; you'll create a `Runner` that will ask the learner for as many points as it can evaluate at a time, and then run your function on any computational resources you declare. You can also give the `Runner` a `goal`, which tells it when to stop."
1620
+   ]
1621
+  },
1622
+  {
1623
+   "cell_type": "code",
1624
+   "execution_count": 14,
1625
+   "metadata": {},
1626
+   "outputs": [],
1627
+   "source": [
1628
+    "runner = adaptive.Runner(learner,\n",
1629
+    "                         goal=lambda learner: learner.npoints >= 1000)"
1630
+   ]
1631
+  },
1632
+  {
1633
+   "cell_type": "markdown",
1634
+   "metadata": {},
1635
+   "source": [
1636
+    "When using `adaptive` in a Jupyter notebook, the `Runner` will do its job in the background. This means that you can get live information about its progress, as well as live-plotting data as it is produced. This is awesome for interactive workflows."
1637
+   ]
1638
+  },
1639
+  {
1640
+   "cell_type": "code",
1641
+   "execution_count": 15,
1642
+   "metadata": {
1643
+    "tags": [
1644
+     "hide-output"
1645
+    ]
1646
+   },
1647
+   "outputs": [
1648
+    {
1649
+     "data": {
1650
+      "application/javascript": [
1651
+       "\n",
1652
+       "(function(root) {\n",
1653
+       "  function now() {\n",
1654
+       "    return new Date();\n",
1655
+       "  }\n",
1656
+       "\n",
1657
+       "  var force = true;\n",
1658
+       "\n",
1659
+       "  if (typeof (root._bokeh_onload_callbacks) === \"undefined\" || force === true) {\n",
1660
+       "    root._bokeh_onload_callbacks = [];\n",
1661
+       "    root._bokeh_is_loading = undefined;\n",
1662
+       "  }\n",
1663
+       "\n",
1664
+       "  var JS_MIME_TYPE = 'application/javascript';\n",
1665
+       "  var HTML_MIME_TYPE = 'text/html';\n",
1666
+       "  var EXEC_MIME_TYPE = 'application/vnd.bokehjs_exec.v0+json';\n",
1667
+       "  var CLASS_NAME = 'output_bokeh rendered_html';\n",
1668
+       "\n",
1669
+       "  /**\n",
1670
+       "   * Render data to the DOM node\n",
1671
+       "   */\n",
1672
+       "  function render(props, node) {\n",
1673
+       "    var script = document.createElement(\"script\");\n",
1674
+       "    node.appendChild(script);\n",
1675
+       "  }\n",
1676
+       "\n",
1677
+       "  /**\n",
1678
+       "   * Handle when an output is cleared or removed\n",
1679
+       "   */\n",
1680
+       "  function handleClearOutput(event, handle) {\n",
1681
+       "    var cell = handle.cell;\n",
1682
+       "\n",
1683
+       "    var id = cell.output_area._bokeh_element_id;\n",
1684
+       "    var server_id = cell.output_area._bokeh_server_id;\n",
1685
+       "    // Clean up Bokeh references\n",
1686
+       "    if (id != null && id in Bokeh.index) {\n",
1687
+       "      Bokeh.index[id].model.document.clear();\n",
1688
+       "      delete Bokeh.index[id];\n",
1689
+       "    }\n",
1690
+       "\n",
1691
+       "    if (server_id !== undefined) {\n",
1692
+       "      // Clean up Bokeh references\n",
1693
+       "      var cmd = \"from bokeh.io.state import curstate; print(curstate().uuid_to_server['\" + server_id + \"'].get_sessions()[0].document.roots[0]._id)\";\n",
1694
+       "      cell.notebook.kernel.execute(cmd, {\n",
1695
+       "        iopub: {\n",
1696
+       "          output: function(msg) {\n",
1697
+       "            var id = msg.content.text.trim();\n",
1698
+       "            if (id in Bokeh.index) {\n",
1699
+       "              Bokeh.index[id].model.document.clear();\n",
1700
+       "              delete Bokeh.index[id];\n",
1701
+       "            }\n",
1702
+       "          }\n",
1703
+       "        }\n",
1704
+       "      });\n",
1705
+       "      // Destroy server and session\n",
1706
+       "      var cmd = \"import bokeh.io.notebook as ion; ion.destroy_server('\" + server_id + \"')\";\n",
1707
+       "      cell.notebook.kernel.execute(cmd);\n",
1708
+       "    }\n",
1709
+       "  }\n",
1710
+       "\n",
1711
+       "  /**\n",
1712
+       "   * Handle when a new output is added\n",
1713
+       "   */\n",
1714
+       "  function handleAddOutput(event, handle) {\n",
1715
+       "    var output_area = handle.output_area;\n",
1716
+       "    var output = handle.output;\n",
1717
+       "\n",
1718
+       "    // limit handleAddOutput to display_data with EXEC_MIME_TYPE content only\n",
1719
+       "    if ((output.output_type != \"display_data\") || (!output.data.hasOwnProperty(EXEC_MIME_TYPE))) {\n",
1720
+       "      return\n",
1721
+       "    }\n",
1722
+       "\n",
1723
+       "    var toinsert = output_area.element.find(\".\" + CLASS_NAME.split(' ')[0]);\n",
1724
+       "\n",
1725
+       "    if (output.metadata[EXEC_MIME_TYPE][\"id\"] !== undefined) {\n",
1726
+       "      toinsert[toinsert.length - 1].firstChild.textContent = output.data[JS_MIME_TYPE];\n",
1727
+       "      // store reference to embed id on output_area\n",
1728
+       "      output_area._bokeh_element_id = output.metadata[EXEC_MIME_TYPE][\"id\"];\n",
1729
+       "    }\n",
1730
+       "    if (output.metadata[EXEC_MIME_TYPE][\"server_id\"] !== undefined) {\n",
1731
+       "      var bk_div = document.createElement(\"div\");\n",
1732
+       "      bk_div.innerHTML = output.data[HTML_MIME_TYPE];\n",
1733
+       "      var script_attrs = bk_div.children[0].attributes;\n",
1734
+       "      for (var i = 0; i < script_attrs.length; i++) {\n",
1735
+       "        toinsert[toinsert.length - 1].firstChild.setAttribute(script_attrs[i].name, script_attrs[i].value);\n",
1736
+       "      }\n",
1737
+       "      // store reference to server id on output_area\n",
1738
+       "      output_area._bokeh_server_id = output.metadata[EXEC_MIME_TYPE][\"server_id\"];\n",
1739
+       "    }\n",
1740
+       "  }\n",
1741
+       "\n",
1742
+       "  function register_renderer(events, OutputArea) {\n",
1743
+       "\n",
1744
+       "    function append_mime(data, metadata, element) {\n",
1745
+       "      // create a DOM node to render to\n",
1746
+       "      var toinsert = this.create_output_subarea(\n",
1747
+       "        metadata,\n",
1748
+       "        CLASS_NAME,\n",
1749
+       "        EXEC_MIME_TYPE\n",
1750
+       "      );\n",
1751
+       "      this.keyboard_manager.register_events(toinsert);\n",
1752
+       "      // Render to node\n",
1753
+       "      var props = {data: data, metadata: metadata[EXEC_MIME_TYPE]};\n",
1754
+       "      render(props, toinsert[toinsert.length - 1]);\n",
1755
+       "      element.append(toinsert);\n",
1756
+       "      return toinsert\n",
1757
+       "    }\n",
1758
+       "\n",
1759
+       "    /* Handle when an output is cleared or removed */\n",
1760
+       "    events.on('clear_output.CodeCell', handleClearOutput);\n",
1761
+       "    events.on('delete.Cell', handleClearOutput);\n",
1762
+       "\n",
1763
+       "    /* Handle when a new output is added */\n",
1764
+       "    events.on('output_added.OutputArea', handleAddOutput);\n",
1765
+       "\n",
1766
+       "    /**\n",
1767
+       "     * Register the mime type and append_mime function with output_area\n",
1768
+       "     */\n",
1769
+       "    OutputArea.prototype.register_mime_type(EXEC_MIME_TYPE, append_mime, {\n",
1770
+       "      /* Is output safe? */\n",
1771
+       "      safe: true,\n",
1772
+       "      /* Index of renderer in `output_area.display_order` */\n",
1773
+       "      index: 0\n",
1774
+       "    });\n",
1775
+       "  }\n",
1776
+       "\n",
1777
+       "  // register the mime type if in Jupyter Notebook environment and previously unregistered\n",
1778
+       "  if (root.Jupyter !== undefined) {\n",
1779
+       "    var events = require('base/js/events');\n",
1780
+       "    var OutputArea = require('notebook/js/outputarea').OutputArea;\n",
1781
+       "\n",
1782
+       "    if (OutputArea.prototype.mime_types().indexOf(EXEC_MIME_TYPE) == -1) {\n",
1783
+       "      register_renderer(events, OutputArea);\n",
1784
+       "    }\n",
1785
+       "  }\n",
1786
+       "\n",
1787
+       "  \n",
1788
+       "  if (typeof (root._bokeh_timeout) === \"undefined\" || force === true) {\n",
1789
+       "    root._bokeh_timeout = Date.now() + 5000;\n",
1790
+       "    root._bokeh_failed_load = false;\n",
1791
+       "  }\n",
1792
+       "\n",
1793
+       "  var NB_LOAD_WARNING = {'data': {'text/html':\n",
1794
+       "     \"<div style='background-color: #fdd'>\\n\"+\n",
1795
+       "     \"<p>\\n\"+\n",
1796
+       "     \"BokehJS does not appear to have successfully loaded. If loading BokehJS from CDN, this \\n\"+\n",
1797
+       "     \"may be due to a slow or bad network connection. Possible fixes:\\n\"+\n",
1798
+       "     \"</p>\\n\"+\n",
1799
+       "     \"<ul>\\n\"+\n",
1800
+       "     \"<li>re-rerun `output_notebook()` to attempt to load from CDN again, or</li>\\n\"+\n",
1801
+       "     \"<li>use INLINE resources instead, as so:</li>\\n\"+\n",
1802
+       "     \"</ul>\\n\"+\n",
1803
+       "     \"<code>\\n\"+\n",
1804
+       "     \"from bokeh.resources import INLINE\\n\"+\n",
1805
+       "     \"output_notebook(resources=INLINE)\\n\"+\n",
1806
+       "     \"</code>\\n\"+\n",
1807
+       "     \"</div>\"}};\n",
1808
+       "\n",
1809
+       "  function display_loaded() {\n",
1810
+       "    var el = document.getElementById(null);\n",
1811
+       "    if (el != null) {\n",
1812
+       "      el.textContent = \"BokehJS is loading...\";\n",
1813
+       "    }\n",
1814
+       "    if (root.Bokeh !== undefined) {\n",
1815
+       "      if (el != null) {\n",
1816
+       "        el.textContent = \"BokehJS \" + root.Bokeh.version + \" successfully loaded.\";\n",
1817
+       "      }\n",
1818
+       "    } else if (Date.now() < root._bokeh_timeout) {\n",
1819
+       "      setTimeout(display_loaded, 100)\n",
1820
+       "    }\n",
1821
+       "  }\n",
1822
+       "\n",
1823
+       "\n",
1824
+       "  function run_callbacks() {\n",
1825
+       "    try {\n",
1826
+       "      root._bokeh_onload_callbacks.forEach(function(callback) { callback() });\n",
1827
+       "    }\n",
1828
+       "    finally {\n",
1829
+       "      delete root._bokeh_onload_callbacks\n",
1830
+       "    }\n",
1831
+       "    console.info(\"Bokeh: all callbacks have finished\");\n",
1832
+       "  }\n",
1833
+       "\n",
1834
+       "  function load_libs(js_urls, callback) {\n",
1835
+       "    root._bokeh_onload_callbacks.push(callback);\n",
1836
+       "    if (root._bokeh_is_loading > 0) {\n",
1837
+       "      console.log(\"Bokeh: BokehJS is being loaded, scheduling callback at\", now());\n",
1838
+       "      return null;\n",
1839
+       "    }\n",
1840
+       "    if (js_urls == null || js_urls.length === 0) {\n",
1841
+       "      run_callbacks();\n",
1842
+       "      return null;\n",
1843
+       "    }\n",
1844
+       "    console.log(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n",
1845
+       "    root._bokeh_is_loading = js_urls.length;\n",
1846
+       "    for (var i = 0; i < js_urls.length; i++) {\n",
1847
+       "      var url = js_urls[i];\n",
1848
+       "      var s = document.createElement('script');\n",
1849
+       "      s.src = url;\n",
1850
+       "      s.async = false;\n",
1851
+       "      s.onreadystatechange = s.onload = function() {\n",
1852
+       "        root._bokeh_is_loading--;\n",
1853
+       "        if (root._bokeh_is_loading === 0) {\n",
1854
+       "          console.log(\"Bokeh: all BokehJS libraries loaded\");\n",
1855
+       "          run_callbacks()\n",
1856
+       "        }\n",
1857
+       "      };\n",
1858
+       "      s.onerror = function() {\n",
1859
+       "        console.warn(\"failed to load library \" + url);\n",
1860
+       "      };\n",
1861
+       "      console.log(\"Bokeh: injecting script tag for BokehJS library: \", url);\n",
1862
+       "      document.getElementsByTagName(\"head\")[0].appendChild(s);\n",
1863
+       "    }\n",
1864
+       "  };\n",
1865
+       "\n",
1866
+       "  var js_urls = [];\n",
1867
+       "\n",
1868
+       "  var inline_js = [\n",
1869
+       "    function(Bokeh) {\n",
1870
+       "      /* BEGIN bokeh.min.js */\n",
1871
+       "      /*!\n",
1872
+       "       * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n",
1873
+       "       * All rights reserved.\n",
1874
+       "       * \n",
1875
+       "       * Redistribution and use in source and binary forms, with or without modification,\n",
1876
+       "       * are permitted provided that the following conditions are met:\n",
1877
+       "       * \n",
1878
+       "       * Redistributions of source code must retain the above copyright notice,\n",
1879
+       "       * this list of conditions and the following disclaimer.\n",
1880
+       "       * \n",
1881
+       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
1882
+       "       * this list of conditions and the following disclaimer in the documentation\n",
1883
+       "       * and/or other materials provided with the distribution.\n",
1884
+       "       * \n",
1885
+       "       * Neither the name of Anaconda nor the names of any contributors\n",
1886
+       "       * may be used to endorse or promote products derived from this software\n",
1887
+       "       * without specific prior written permission.\n",
1888
+       "       * \n",
1889
+       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
1890
+       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
1891
+       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
1892
+       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
1893
+       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
1894
+       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
1895
+       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
1896
+       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
1897
+       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
1898
+       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
1899
+       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
1900
+       "       */\n",
1901
+       "      !function(t,e){var o,s,r,a,l;t.Bokeh=(o=[function(t,e,i){var n=t(153),r=t(32);i.overrides={};var o=r.clone(n);i.Models=function(t){var e=i.overrides[t]||o[t];if(null==e)throw new Error(\"Model '\"+t+\"' does not exist. This could be due to a widget\\n                     or a custom model not being registered before first usage.\");return e},i.Models.register=function(t,e){i.overrides[t]=e},i.Models.unregister=function(t){delete i.overrides[t]},i.Models.register_models=function(t,e,i){if(void 0===e&&(e=!1),null!=t)for(var n in t){var r=t[n];e||!o.hasOwnProperty(n)?o[n]=r:null!=i?i(n):console.warn(\"Model '\"+n+\"' was already registered\")}},i.register_models=i.Models.register_models,i.Models.registered_names=function(){return Object.keys(o)},i.index={}},function(t,e,o){var s=t(336),a=t(14),l=t(52),h=t(282),u=t(283),c=t(2);o.DEFAULT_SERVER_WEBSOCKET_URL=\"ws://localhost:5006/ws\",o.DEFAULT_SESSION_ID=\"default\";var _=0,p=function(){function t(t,e,i,n,r){void 0===t&&(t=o.DEFAULT_SERVER_WEBSOCKET_URL),void 0===e&&(e=o.DEFAULT_SESSION_ID),void 0===i&&(i=null),void 0===n&&(n=null),void 0===r&&(r=null),this.url=t,this.id=e,this.args_string=i,this._on_have_session_hook=n,this._on_closed_permanently_hook=r,this._number=_++,this.socket=null,this.session=null,this.closed_permanently=!1,this._current_handler=null,this._pending_ack=null,this._pending_replies={},this._receiver=new u.Receiver,a.logger.debug(\"Creating websocket \"+this._number+\" to '\"+this.url+\"' session '\"+this.id+\"'\")}return t.prototype.connect=function(){var i=this;if(this.closed_permanently)return s.Promise.reject(new Error(\"Cannot connect() a closed ClientConnection\"));if(null!=this.socket)return s.Promise.reject(new Error(\"Already connected\"));this._pending_replies={},this._current_handler=null;try{var t=this.url+\"?bokeh-protocol-version=1.0&bokeh-session-id=\"+this.id;return null!=this.args_string&&0<this.args_string.length&&(t+=\"&\"+this.args_string),this.socket=new WebSocket(t),new s.Promise(function(t,e){i.socket.binaryType=\"arraybuffer\",i.socket.onopen=function(){return i._on_open(t,e)},i.socket.onmessage=function(t){return i._on_message(t)},i.socket.onclose=function(t){return i._on_close(t)},i.socket.onerror=function(){return i._on_error(e)}})}catch(t){return a.logger.error(\"websocket creation failed to url: \"+this.url),a.logger.error(\" - \"+t),s.Promise.reject(t)}},t.prototype.close=function(){this.closed_permanently||(a.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(),null!=this._on_closed_permanently_hook&&(this._on_closed_permanently_hook(),this._on_closed_permanently_hook=null))},t.prototype._schedule_reconnect=function(t){var e=this;setTimeout(function(){e.closed_permanently||a.logger.info(\"Websocket connection \"+e._number+\" disconnected, will not attempt to reconnect\")},t)},t.prototype.send=function(t){if(null==this.socket)throw new Error(\"not connected so cannot send \"+t);t.send(this.socket)},t.prototype.send_with_reply=function(i){var n=this,t=new s.Promise(function(t,e){n._pending_replies[i.msgid()]=[t,e],n.send(i)});return t.then(function(t){if(\"ERROR\"===t.msgtype())throw new Error(\"Error reply \"+t.content.text);return t},function(t){throw t})},t.prototype._pull_doc_json=function(){var t=h.Message.create(\"PULL-DOC-REQ\",{}),e=this.send_with_reply(t);return e.then(function(t){if(!(\"doc\"in t.content))throw new Error(\"No 'doc' field in PULL-DOC-REPLY\");return t.content.doc},function(t){throw t})},t.prototype._repull_session_doc=function(){var r=this;null==this.session?a.logger.debug(\"Pulling session for first time\"):a.logger.debug(\"Repulling session\"),this._pull_doc_json().then(function(t){if(null==r.session)if(r.closed_permanently)a.logger.debug(\"Got new document after connection was already closed\");else{var e=l.Document.from_json(t),i=l.Document._compute_patch_since_json(t,e);if(0<i.events.length){a.logger.debug(\"Sending \"+i.events.length+\" changes from model construction back to server\");var n=h.Message.create(\"PATCH-DOC\",{},i);r.send(n)}r.session=new c.ClientSession(r,e,r.id),a.logger.debug(\"Created a new session from new pulled doc\"),null!=r._on_have_session_hook&&(r._on_have_session_hook(r.session),r._on_have_session_hook=null)}else r.session.document.replace_with_json(t),a.logger.debug(\"Updated existing session with new pulled doc\")},function(t){throw t}).catch(function(t){null!=console.trace&&console.trace(t),a.logger.error(\"Failed to repull session \"+t)})},t.prototype._on_open=function(t,e){var i=this;a.logger.info(\"Websocket connection \"+this._number+\" is now open\"),this._pending_ack=[t,e],this._current_handler=function(t){i._awaiting_ack_handler(t)}},t.prototype._on_message=function(t){null==this._current_handler&&a.logger.error(\"Got a message with no current handler set\");try{this._receiver.consume(t.data)}catch(t){this._close_bad_protocol(t.toString())}if(null!=this._receiver.message){var e=this._receiver.message,i=e.problem();null!=i&&this._close_bad_protocol(i),this._current_handler(e)}},t.prototype._on_close=function(t){var i=this;a.logger.info(\"Lost websocket \"+this._number+\" connection, \"+t.code+\" (\"+t.reason+\")\"),(this.socket=null)!=this._pending_ack&&(this._pending_ack[1](new Error(\"Lost websocket connection, \"+t.code+\" (\"+t.reason+\")\")),this._pending_ack=null);for(var e=function(){for(var t in i._pending_replies){var e=i._pending_replies[t];return delete i._pending_replies[t],e}return null},n=e();null!=n;)n[1](\"Disconnected\"),n=e();this.closed_permanently||this._schedule_reconnect(2e3)},t.prototype._on_error=function(t){a.logger.debug(\"Websocket error on socket \"+this._number),t(new Error(\"Could not open websocket\"))},t.prototype._close_bad_protocol=function(t){a.logger.error(\"Closing connection: \"+t),null!=this.socket&&this.socket.close(1002,t)},t.prototype._awaiting_ack_handler=function(t){var e=this;\"ACK\"===t.msgtype()?(this._current_handler=function(t){return e._steady_state_handler(t)},this._repull_session_doc(),null!=this._pending_ack&&(this._pending_ack[0](this),this._pending_ack=null)):this._close_bad_protocol(\"First message was not an ACK\")},t.prototype._steady_state_handler=function(t){if(t.reqid()in this._pending_replies){var e=this._pending_replies[t.reqid()];delete this._pending_replies[t.reqid()],e[0](t)}else this.session.handle(t)},t}();o.ClientConnection=p,o.pull_session=function(i,n,r){return new s.Promise(function(t,e){return new p(i,n,r,function(e){try{t(e)}catch(t){throw a.logger.error(\"Promise handler threw an error, closing session \"+t),e.close(),t}},function(){e(new Error(\"Connection was closed before we successfully pulled a session\"))}).connect().then(function(t){},function(t){throw a.logger.error(\"Failed to connect to Bokeh server \"+t),t})})}},function(t,e,i){var n=t(14),r=t(52),o=t(282),s=function(){function t(t,e,i){var n=this;this._connection=t,this.document=e,this.id=i,this._document_listener=function(t){return n._document_changed(t)},this.document.on_change(this._document_listener),this.event_manager=this.document.event_manager,this.event_manager.session=this}return t.prototype.handle=function(t){var e=t.msgtype();\"PATCH-DOC\"===e?this._handle_patch(t):\"OK\"===e?this._handle_ok(t):\"ERROR\"===e?this._handle_error(t):n.logger.debug(\"Doing nothing with message \"+t.msgtype())},t.prototype.close=function(){this._connection.close()},t.prototype.send_event=function(t){var e=o.Message.create(\"EVENT\",{},JSON.stringify(t));this._connection.send(e)},t.prototype._connection_closed=function(){this.document.remove_on_change(this._document_listener)},t.prototype.request_server_info=function(){var t=o.Message.create(\"SERVER-INFO-REQ\",{}),e=this._connection.send_with_reply(t);return e.then(function(t){return t.content})},t.prototype.force_roundtrip=function(){return this.request_server_info().then(function(t){})},t.prototype._document_changed=function(t){if(t.setter_id!==this.id&&(!(t instanceof r.ModelChangedEvent)||t.attr in t.model.serializable_attributes())){var e=o.Message.create(\"PATCH-DOC\",{},this.document.create_json_patch([t]));this._connection.send(e)}},t.prototype._handle_patch=function(t){this.document.apply_json_patch(t.content,t.buffers,this.id)},t.prototype._handle_ok=function(t){n.logger.trace(\"Unhandled OK reply to \"+t.reqid())},t.prototype._handle_error=function(t){n.logger.error(\"Unhandled ERROR reply to \"+t.reqid()+\": \"+t.content.text)},t}();i.ClientSession=s},function(t,e,i){var n=t(391),r=t(14),o=t(32),s={};function a(e){return function(t){t.prototype.event_name=e,s[e]=t}}i.register_event_class=a,i.register_with_event=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=t.prototype.applicable_models.concat(e);t.prototype.applicable_models=n};var l=function(){function t(t){void 0===t&&(t={}),this.model_id=null,(this._options=t).model_id&&(this.model_id=t.model_id)}return t.prototype.set_model_id=function(t){return this._options.model_id=t,this.model_id=t,this},t.prototype.is_applicable_to=function(e){return this.applicable_models.some(function(t){return e instanceof t})},t.event_class=function(t){if(t.type)return s[t.type];r.logger.warn(\"BokehEvent.event_class required events with a string type attribute\")},t.prototype.toJSON=function(){return{event_name:this.event_name,event_values:o.clone(this._options)}},t.prototype._customize_event=function(t){return this},t}();(i.BokehEvent=l).prototype.applicable_models=[];var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"button_click\")],e)}(l);i.ButtonClick=h;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(l),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"lodstart\")],e)}(i.UIEvent=u);i.LODStart=c;var _=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"lodend\")],e)}(u);i.LODEnd=_;var p=function(i){function t(t){var e=i.call(this,t)||this;return e.geometry=t.geometry,e.final=t.final,e}return n.__extends(t,i),t=n.__decorate([a(\"selectiongeometry\")],t)}(u);i.SelectionGeometry=p;var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"reset\")],e)}(u);i.Reset=d;var f=function(i){function t(t){var e=i.call(this,t)||this;return e.sx=t.sx,e.sy=t.sy,e.x=null,e.y=null,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,model_id:e})},t.prototype._customize_event=function(t){var e=t.plot_canvas.frame.xscales.default,i=t.plot_canvas.frame.yscales.default;return this.x=e.invert(this.sx),this.y=i.invert(this.sy),this._options.x=this.x,this._options.y=this.y,this},t}(u),v=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.delta_x=t.delta_x,e.delta_y=t.delta_y,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,delta_x:t.deltaX,delta_y:t.deltaY,direction:t.direction,model_id:e})},t=n.__decorate([a(\"pan\")],t)}(i.PointEvent=f);i.Pan=v;var m=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.scale=t.scale,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,scale:t.scale,model_id:e})},t=n.__decorate([a(\"pinch\")],t)}(f);i.Pinch=m;var g=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.delta=t.delta,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,delta:t.delta,model_id:e})},t=n.__decorate([a(\"wheel\")],t)}(f);i.MouseWheel=g;var y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mousemove\")],e)}(f);i.MouseMove=y;var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mouseenter\")],e)}(f);i.MouseEnter=b;var x=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mouseleave\")],e)}(f);i.MouseLeave=x;var w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"tap\")],e)}(f);i.Tap=w;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"doubletap\")],e)}(f);i.DoubleTap=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"press\")],e)}(f);i.Press=S;var C=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"panstart\")],e)}(f);i.PanStart=C;var T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"panend\")],e)}(f);i.PanEnd=T;var A=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"pinchstart\")],e)}(f);i.PinchStart=A;var E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"pinchend\")],e)}(f);i.PinchEnd=E},function(t,e,i){var g=t(391),y=t(21);i.build_views=function(e,t,i,n){void 0===n&&(n=function(t){return t.default_view});for(var r=y.difference(Object.keys(e),t.map(function(t){return t.id})),o=0,s=r;o<s.length;o++){var a=s[o];e[a].remove(),delete e[a]}for(var l=[],h=t.filter(function(t){return null==e[t.id]}),u=0,c=h;u<c.length;u++){var _=c[u],p=n(_),d=g.__assign({},i,{model:_,connect_signals:!1}),f=new p(d);e[_.id]=f,l.push(f)}for(var v=0,m=l;v<m.length;v++){var f=m[v];f.connect_signals()}return l},i.remove_views=function(t){for(var e in t)t[e].remove(),delete t[e]}},function(t,e,i){var n,y=t(44),r=function(g){return function(t){void 0===t&&(t={});for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=document.createElement(g);for(var r in t){var o=t[r];if(null!=o&&(!y.isBoolean(o)||o))if(\"class\"===r&&y.isArray(o))for(var s=0,a=o;s<a.length;s++){var l=a[s];null!=l&&n.classList.add(l)}else if(\"style\"===r&&y.isPlainObject(o))for(var h in o)n.style[h]=o[h];else if(\"data\"===r&&y.isPlainObject(o))for(var u in o)n.dataset[u]=o[u];else n.setAttribute(r,o)}function c(t){if(t instanceof HTMLElement)n.appendChild(t);else if(y.isString(t))n.appendChild(document.createTextNode(t));else if(null!=t&&!1!==t)throw new Error(\"expected an HTMLElement, string, false or null, got \"+JSON.stringify(t))}for(var _=0,p=e;_<p.length;_++){var d=p[_];if(y.isArray(d))for(var f=0,v=d;f<v.length;f++){var m=v[f];c(m)}else c(d)}return n}};function o(t,e){var i=Element.prototype,n=i.matches||i.webkitMatchesSelector||i.mozMatchesSelector||i.msMatchesSelector;return n.call(t,e)}i.createElement=function(t,e){for(var i=[],n=2;n<arguments.length;n++)i[n-2]=arguments[n];return r(t).apply(void 0,[e].concat(i))},i.div=r(\"div\"),i.span=r(\"span\"),i.link=r(\"link\"),i.style=r(\"style\"),i.a=r(\"a\"),i.p=r(\"p\"),i.i=r(\"i\"),i.pre=r(\"pre\"),i.button=r(\"button\"),i.label=r(\"label\"),i.input=r(\"input\"),i.select=r(\"select\"),i.option=r(\"option\"),i.optgroup=r(\"optgroup\"),i.textarea=r(\"textarea\"),i.canvas=r(\"canvas\"),i.ul=r(\"ul\"),i.ol=r(\"ol\"),i.li=r(\"li\"),i.nbsp=document.createTextNode(\" \"),i.removeElement=function(t){var e=t.parentNode;null!=e&&e.removeChild(t)},i.replaceWith=function(t,e){var i=t.parentNode;null!=i&&i.replaceChild(e,t)},i.prepend=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];for(var n=t.firstChild,r=0,o=e;r<o.length;r++){var s=o[r];t.insertBefore(s,n)}},i.empty=function(t){for(var e;e=t.firstChild;)t.removeChild(e)},i.show=function(t){t.style.display=\"\"},i.hide=function(t){t.style.display=\"none\"},i.position=function(t){return{top:t.offsetTop,left:t.offsetLeft}},i.offset=function(t){var e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset-document.documentElement.clientTop,left:e.left+window.pageXOffset-document.documentElement.clientLeft}},i.matches=o,i.parent=function(t,e){for(var i=t;i=i.parentElement;)if(o(i,e))return i;return null},i.margin=function(t){var e=getComputedStyle(t);return{top:parseFloat(e.marginTop)||0,bottom:parseFloat(e.marginBottom)||0,left:parseFloat(e.marginLeft)||0,right:parseFloat(e.marginRight)||0}},i.padding=function(t){var e=getComputedStyle(t);return{top:parseFloat(e.paddingTop)||0,bottom:parseFloat(e.paddingBottom)||0,left:parseFloat(e.paddingLeft)||0,right:parseFloat(e.paddingRight)||0}},(n=i.Keys||(i.Keys={}))[n.Backspace=8]=\"Backspace\",n[n.Tab=9]=\"Tab\",n[n.Enter=13]=\"Enter\",n[n.Esc=27]=\"Esc\",n[n.PageUp=33]=\"PageUp\",n[n.PageDown=34]=\"PageDown\",n[n.Left=37]=\"Left\",n[n.Up=38]=\"Up\",n[n.Right=39]=\"Right\",n[n.Down=40]=\"Down\",n[n.Delete=46]=\"Delete\"},function(t,e,i){var n=t(391),r=t(48),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._has_finished=!1,this.el=this._createElement()},t.prototype.remove=function(){o.removeElement(this.el),e.prototype.remove.call(this)},t.prototype.css_classes=function(){return[]},t.prototype.cursor=function(t,e){return null},t.prototype.layout=function(){},t.prototype.render=function(){},t.prototype.renderTo=function(t){t.appendChild(this.el),this.layout()},t.prototype.has_finished=function(){return this._has_finished},Object.defineProperty(t.prototype,\"_root_element\",{get:function(){return o.parent(this.el,\".bk-root\")||document.body},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"solver\",{get:function(){return this.is_root?this._solver:this.parent.solver},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_idle\",{get:function(){return this.has_finished()},enumerable:!0,configurable:!0}),t.prototype._createElement=function(){return o.createElement(this.tagName,{id:this.id,class:this.css_classes()})},t}(r.View);(i.DOMView=s).prototype.tagName=\"div\"},function(t,e,i){i.AngleUnits=[\"deg\",\"rad\"],i.Dimension=[\"width\",\"height\"],i.Dimensions=[\"width\",\"height\",\"both\"],i.Direction=[\"clock\",\"anticlock\"],i.FontStyle=[\"normal\",\"italic\",\"bold\",\"bold italic\"],i.LatLon=[\"lat\",\"lon\"],i.LineCap=[\"butt\",\"round\",\"square\"],i.LineJoin=[\"miter\",\"round\",\"bevel\"],i.Location=[\"above\",\"below\",\"left\",\"right\"],i.LegendClickPolicy=[\"none\",\"hide\",\"mute\"],i.LegendLocation=[\"top_left\",\"top_center\",\"top_right\",\"center_left\",\"center\",\"center_right\",\"bottom_left\",\"bottom_center\",\"bottom_right\"],i.Anchor=i.LegendLocation,i.Orientation=[\"vertical\",\"horizontal\"],i.OutputBackend=[\"canvas\",\"svg\",\"webgl\"],i.RenderLevel=[\"image\",\"underlay\",\"glyph\",\"annotation\",\"overlay\"],i.RenderMode=[\"canvas\",\"css\"],i.Side=[\"above\",\"below\",\"left\",\"right\"],i.Place=[\"above\",\"below\",\"left\",\"right\",\"center\"],i.SpatialUnits=[\"screen\",\"data\"],i.StartEnd=[\"start\",\"end\"],i.VerticalAlign=[\"top\",\"middle\",\"bottom\"],i.TextAlign=[\"left\",\"right\",\"center\"],i.TextBaseline=[\"top\",\"middle\",\"bottom\",\"alphabetic\",\"hanging\",\"ideographic\"],i.TickLabelOrientation=[\"vertical\",\"horizontal\",\"parallel\",\"normal\"],i.TooltipAttachment=[\"horizontal\",\"vertical\",\"left\",\"right\",\"above\",\"below\"],i.Distribution=[\"uniform\",\"normal\"],i.StepMode=[\"after\",\"before\",\"center\"],i.SizingMode=[\"stretch_both\",\"scale_width\",\"scale_height\",\"scale_both\",\"fixed\"],i.PaddingUnits=[\"percent\",\"absolute\"],i.SliderCallbackPolicy=[\"continuous\",\"throttle\",\"mouseup\"],i.RoundingFunction=[\"round\",\"nearest\",\"floor\",\"rounddown\",\"ceil\",\"roundup\"],i.UpdateMode=[\"replace\",\"append\"],i.HTTPMethod=[\"POST\",\"GET\"],i.Logo=[\"normal\",\"grey\"]},function(t,e,i){var o=t(391),l=t(19),n=t(16),h=t(34),r=t(15),u=t(38),s=t(21),_=t(32),p=t(44),d=t(30),a=function(a){function c(t){void 0===t&&(t={});var e=a.call(this)||this;for(var i in e._subtype=void 0,e.document=null,e.destroyed=new l.Signal0(e,\"destroyed\"),e.change=new l.Signal0(e,\"change\"),e.transformchange=new l.Signal0(e,\"transformchange\"),e.attributes={},e.properties={},e._set_after_defaults={},e._pending=!1,e._changing=!1,e.props){var n=e.props[i],r=n.type,o=n.default_value;if(null==r)throw new Error(\"undefined property type for \"+e.type+\".\"+i);e.properties[i]=new r(e,i,o)}null==t.id&&e.setv({id:u.uniqueId()},{silent:!0});var s=t.__deferred__||!1;return s&&delete(t=_.clone(t)).__deferred__,e.setv(t,{silent:!0}),s||e.finalize(),e}return o.__extends(c,a),c.initClass=function(){this.prototype.type=\"HasProps\",this.prototype.props={},this.prototype.mixins=[],this.define({id:[r.Any]})},c._fix_default=function(t,e){return void 0===t?void 0:p.isFunction(t)?t:p.isObject(t)?p.isArray(t)?function(){return s.copy(t)}:function(){return _.clone(t)}:function(){return t}},c.define=function(a){var t=function(i){var t=a[i];if(null!=l.prototype.props[i])throw new Error(\"attempted to redefine property '\"+l.prototype.type+\".\"+i+\"'\");if(null!=l.prototype[i])throw new Error(\"attempted to redefine attribute '\"+l.prototype.type+\".\"+i+\"'\");Object.defineProperty(l.prototype,i,{get:function(){var t=this.getv(i);return t},set:function(t){var e;return this.setv(((e={})[i]=t,e)),this},configurable:!1,enumerable:!0});var e=t[0],n=t[1],r=t[2],o={type:e,default_value:l._fix_default(n,i),internal:r||!1},s=_.clone(l.prototype.props);s[i]=o,l.prototype.props=s},l=this;for(var e in a)t(e)},c.internal=function(t){var e={};for(var i in t){var n=t[i],r=n[0],o=n[1];e[i]=[r,o,!0]}this.define(e)},c.mixin=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];this.define(n.create(t));var i=this.prototype.mixins.concat(t);this.prototype.mixins=i},c.mixins=function(t){this.mixin.apply(this,t)},c.override=function(t){for(var e in t){var i=this._fix_default(t[e],e),n=this.prototype.props[e];if(null==n)throw new Error(\"attempted to override nonexistent '\"+this.prototype.type+\".\"+e+\"'\");var r=_.clone(this.prototype.props);r[e]=o.__assign({},n,{default_value:i}),this.prototype.props=r}},c.prototype.toString=function(){return this.type+\"(\"+this.id+\")\"},c.prototype.finalize=function(){var t=this;for(var e in this.properties){var i=this.properties[e];i.update(),null!=i.spec.transform&&this.connect(i.spec.transform.change,function(){return t.transformchange.emit()})}this.initialize(),this.connect_signals()},c.prototype.initialize=function(){},c.prototype.connect_signals=function(){},c.prototype.disconnect_signals=function(){l.Signal.disconnectReceiver(this)},c.prototype.destroy=function(){this.disconnect_signals(),this.destroyed.emit()},c.prototype.clone=function(){return new this.constructor(this.attributes)},c.prototype._setv=function(t,e){var i=e.check_eq,n=e.silent,r=[],o=this._changing;this._changing=!0;var s=this.attributes;for(var a in t){var l=t[a];!1!==i&&d.isEqual(s[a],l)||r.push(a),s[a]=l}if(!n){0<r.length&&(this._pending=!0);for(var h=0;h<r.length;h++)this.properties[r[h]].change.emit()}if(!o){if(!n&&!e.no_change)for(;this._pending;)this._pending=!1,this.change.emit();this._pending=!1,this._changing=!1}},c.prototype.setv=function(t,e){for(var i in void 0===e&&(e={}),t)if(t.hasOwnProperty(i)){var n=i;if(null==this.props[n])throw new Error(\"property \"+this.type+\".\"+n+\" wasn't declared\");null!=e&&e.defaults||(this._set_after_defaults[i]=!0)}if(!_.isEmpty(t)){var r={};for(var i in t)r[i]=this.getv(i);this._setv(t,e);var o=e.silent;if(null==o||!o)for(var i in t)this._tell_document_about_change(i,r[i],this.getv(i),e)}},c.prototype.getv=function(t){if(null==this.props[t])throw new Error(\"property \"+this.type+\".\"+t+\" wasn't declared\");return this.attributes[t]},c.prototype.ref=function(){return h.create_ref(this)},c.prototype.set_subtype=function(t){this._subtype=t},c.prototype.attribute_is_serializable=function(t){var e=this.props[t];if(null==e)throw new Error(this.type+\".attribute_is_serializable('\"+t+\"'): \"+t+\" wasn't declared\");return!e.internal},c.prototype.serializable_attributes=function(){var t={};for(var e in this.attributes){var i=this.attributes[e];this.attribute_is_serializable(e)&&(t[e]=i)}return t},c._value_to_json=function(t,e,i){if(e instanceof c)return e.ref();if(p.isArray(e)){for(var n=[],r=0;r<e.length;r++){var o=e[r];n.push(c._value_to_json(r.toString(),o,e))}return n}if(p.isPlainObject(e)){var s={};for(var a in e)e.hasOwnProperty(a)&&(s[a]=c._value_to_json(a,e[a],e));return s}return e},c.prototype.attributes_as_json=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=c._value_to_json);var i=this.serializable_attributes(),n={};for(var r in i)if(i.hasOwnProperty(r)){var o=i[r];t?n[r]=o:r in this._set_after_defaults&&(n[r]=o)}return e(\"attributes\",n,this)},c._json_record_references=function(t,e,i,n){if(null==e);else if(h.is_ref(e)){if(!(e.id in i)){var r=t.get_model_by_id(e.id);c._value_record_references(r,i,n)}}else if(p.isArray(e))for(var o=0,s=e;o<s.length;o++){var a=s[o];c._json_record_references(t,a,i,n)}else if(p.isPlainObject(e))for(var l in e)if(e.hasOwnProperty(l)){var a=e[l];c._json_record_references(t,a,i,n)}},c._value_record_references=function(t,e,i){if(null==t);else if(t instanceof c){if(!(t.id in e)&&(e[t.id]=t,i))for(var n=t._immediate_references(),r=0,o=n;r<o.length;r++){var s=o[r];c._value_record_references(s,e,!0)}}else if(t.buffer instanceof ArrayBuffer);else if(p.isArray(t))for(var a=0,l=t;a<l.length;a++){var h=l[a];c._value_record_references(h,e,i)}else if(p.isPlainObject(t))for(var u in t)if(t.hasOwnProperty(u)){var h=t[u];c._value_record_references(h,e,i)}},c.prototype._immediate_references=function(){var t={},e=this.serializable_attributes();for(var i in e){var n=e[i];c._value_record_references(n,t,!1)}return _.values(t)},c.prototype.references=function(){var t={};return c._value_record_references(this,t,!0),_.values(t)},c.prototype._doc_attached=function(){},c.prototype.attach_document=function(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()},c.prototype.detach_document=function(){this.document=null},c.prototype._tell_document_about_change=function(t,e,i,n){if(this.attribute_is_serializable(t)&&null!=this.document){var r={};c._value_record_references(i,r,!1);var o={};c._value_record_references(e,o,!1);var s=!1;for(var a in r)if(!(a in o)){s=!0;break}if(!s)for(var l in o)if(!(l in r)){s=!0;break}s&&this.document._invalidate_all_models(),this.document._notify_change(this,t,e,i,n)}},c.prototype.materialize_dataspecs=function(t){var e={};for(var i in this.properties){var n=this.properties[i];n.dataspec&&(!n.optional||null!=n.spec.value||i in this._set_after_defaults)&&(e[\"_\"+i]=n.array(t),null!=n.spec.field&&n.spec.field in t._shapes&&(e[\"_\"+i+\"_shape\"]=t._shapes[n.spec.field]),n instanceof r.DistanceSpec&&(e[\"max_\"+i]=s.max(e[\"_\"+i])))}return e},c}(l.Signalable());(i.HasProps=a).initClass()},function(t,e,i){var n=t(21),r=t(197);function o(t){return t*t}function s(t,e){return o(t.x-e.x)+o(t.y-e.y)}function a(t,e,i){var n=s(e,i);if(0==n)return s(t,e);var r=((t.x-e.x)*(i.x-e.x)+(t.y-e.y)*(i.y-e.y))/n;if(r<0)return s(t,e);if(1<r)return s(t,i);var o={x:e.x+r*(i.x-e.x),y:e.y+r*(i.y-e.y)};return s(t,o)}i.point_in_poly=function(t,e,i,n){for(var r=!1,o=i[i.length-1],s=n[n.length-1],a=0;a<i.length;a++){var l=i[a],h=n[a];s<e!=h<e&&o+(e-s)/(h-s)*(l-o)<t&&(r=!r),o=l,s=h}return r},i.point_in_ellipse=function(t,e,i,n,r,o,s){var a=Math.pow(Math.cos(i)/r,2)+Math.pow(Math.sin(i)/n,2),l=2*Math.cos(i)*Math.sin(i)*(Math.pow(1/r,2)-Math.pow(1/n,2)),h=Math.pow(Math.cos(i)/n,2)+Math.pow(Math.sin(i)/r,2);return a*Math.pow(t-o,2)+l*(t-o)*(e-s)+h*Math.pow(e-s,2)<=1},i.create_empty_hit_test_result=function(){return new r.Selection},i.create_hit_test_result_from_hits=function(t){var e=new r.Selection;return e.indices=n.sortBy(t,function(t){return t[0],t[1]}).map(function(t){var e=t[0];return t[1],e}),e},i.validate_bbox_coords=function(t,e){var i,n,r=t[0],o=t[1],s=e[0],a=e[1];return o<r&&(r=(i=[o,r])[0],o=i[1]),a<s&&(s=(n=[a,s])[0],a=n[1]),{minX:r,minY:s,maxX:o,maxY:a}},i.dist_2_pts=s,i.dist_to_segment_squared=a,i.dist_to_segment=function(t,e,i){return Math.sqrt(a(t,e,i))},i.check_2_segments_intersect=function(t,e,i,n,r,o,s,a){var l=(a-o)*(i-t)-(s-r)*(n-e);if(0==l)return{hit:!1,x:null,y:null};var h=e-o,u=t-r,c=(s-r)*h-(a-o)*u,_=(i-t)*h-(n-e)*u;u=_/l;var p=t+(h=c/l)*(i-t),d=e+h*(n-e);return{hit:0<h&&h<1&&0<u&&u<1,x:p,y:d}}},function(t,e,i){var s=t(13),a=t(21);i.vstack=function(t,e){var i=[];if(0<e.length){i.push(s.EQ(a.head(e)._bottom,[-1,t._bottom])),i.push(s.EQ(a.tail(e)._top,[-1,t._top])),i.push.apply(i,a.pairwise(e,function(t,e){return s.EQ(t._top,[-1,e._bottom])}));for(var n=0,r=e;n<r.length;n++){var o=r[n];i.push(s.EQ(o._left,[-1,t._left])),i.push(s.EQ(o._right,[-1,t._right]))}}return i},i.hstack=function(t,e){var i=[];if(0<e.length){i.push(s.EQ(a.head(e)._right,[-1,t._right])),i.push(s.EQ(a.tail(e)._left,[-1,t._left])),i.push.apply(i,a.pairwise(e,function(t,e){return s.EQ(t._left,[-1,e._right])}));for(var n=0,r=e;n<r.length;n++){var o=r[n];i.push(s.EQ(o._top,[-1,t._top])),i.push(s.EQ(o._bottom,[-1,t._bottom]))}}return i}},function(t,e,i){var n=t(391),r=t(13),o=t(8),s=t(24),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutCanvas\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._top=new r.Variable(this.toString()+\".top\"),this._left=new r.Variable(this.toString()+\".left\"),this._width=new r.Variable(this.toString()+\".width\"),this._height=new r.Variable(this.toString()+\".height\"),this._right=new r.Variable(this.toString()+\".right\"),this._bottom=new r.Variable(this.toString()+\".bottom\");var t=this;this._hcenter={get value(){return(t._left.value+t._right.value)/2}},this._vcenter={get value(){return(t._top.value+t._bottom.value)/2}}},t.prototype.get_editables=function(){return[]},t.prototype.get_constraints=function(){return[r.GE(this._top),r.GE(this._bottom),r.GE(this._left),r.GE(this._right),r.GE(this._width),r.GE(this._height),r.EQ(this._left,this._width,[-1,this._right]),r.EQ(this._top,this._height,[-1,this._bottom])]},t.prototype.get_layoutable_children=function(){return[]},Object.defineProperty(t.prototype,\"bbox\",{get:function(){return new s.BBox({x0:this._left.value,y0:this._top.value,x1:this._right.value,y1:this._bottom.value})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"layout_bbox\",{get:function(){return{top:this._top.value,left:this._left.value,width:this._width.value,height:this._height.value,right:this._right.value,bottom:this._bottom.value}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"xview\",{get:function(){var r=this;return{compute:function(t){return r._left.value+t},v_compute:function(t){for(var e=new Float64Array(t.length),i=r._left.value,n=0;n<t.length;n++)e[n]=i+t[n];return e}}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"yview\",{get:function(){var r=this;return{compute:function(t){return r._bottom.value-t},v_compute:function(t){for(var e=new Float64Array(t.length),i=r._bottom.value,n=0;n<t.length;n++)e[n]=i-t[n];return e}}},enumerable:!0,configurable:!0}),t}(o.HasProps);(i.LayoutCanvas=a).initClass()},function(t,e,r){var i=t(391),o=t(13),n=t(11),s=t(15),a=t(14),l=t(44),h=Math.PI/2,u=\"alphabetic\",c=\"middle\",_=\"hanging\",p=\"left\",d=\"right\",f=\"center\",v={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}},m={above:{justified:\"top\",parallel:u,normal:c,horizontal:u,vertical:c},below:{justified:\"bottom\",parallel:_,normal:c,horizontal:_,vertical:c},left:{justified:\"top\",parallel:u,normal:c,horizontal:c,vertical:u},right:{justified:\"top\",parallel:u,normal:c,horizontal:c,vertical:u}},g={above:{justified:f,parallel:f,normal:p,horizontal:f,vertical:p},below:{justified:f,parallel:f,normal:p,horizontal:f,vertical:p},left:{justified:f,parallel:f,normal:d,horizontal:d,vertical:f},right:{justified:f,parallel:f,normal:p,horizontal:p,vertical:f}},y={above:d,below:p,left:d,right:p},b={above:p,below:d,left:d,right:p};function x(t){return\"panel\"in t}r.isSizeable=x,r.isSizeableView=function(t){return x(t.model)&&\"get_size\"in t},r._view_sizes=new WeakMap,r._view_constraints=new WeakMap,r.update_panel_constraints=function(t){var e=t.solver,i=t.get_size(),n=r._view_constraints.get(t);if(null!=n&&e.has_constraint(n)){if(r._view_sizes.get(t)===i)return;e.remove_constraint(n)}n=o.GE(t.model.panel._size,-i),e.add_constraint(n),r._view_sizes.set(t,i),r._view_constraints.set(t,n)};var w=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"SidePanel\",this.internal({side:[s.String]})},t.prototype.toString=function(){return this.type+\"(\"+this.id+\", \"+this.side+\")\"},t.prototype.initialize=function(){switch(e.prototype.initialize.call(this),this.side){case\"above\":this._dim=0,this._normals=[0,-1],this._size=this._height;break;case\"below\":this._dim=0,this._normals=[0,1],this._size=this._height;break;case\"left\":this._dim=1,this._normals=[-1,0],this._size=this._width;break;case\"right\":this._dim=1,this._normals=[1,0],this._size=this._width;break;default:a.logger.error(\"unrecognized side: '\"+this.side+\"'\")}},Object.defineProperty(t.prototype,\"dimension\",{get:function(){return this._dim},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"normals\",{get:function(){return this._normals},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_horizontal\",{get:function(){return\"above\"==this.side||\"below\"==this.side},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_vertical\",{get:function(){return\"left\"==this.side||\"right\"==this.side},enumerable:!0,configurable:!0}),t.prototype.apply_label_text_heuristics=function(t,e){var i,n,r=this.side;l.isString(e)?(i=m[r][e],n=g[r][e]):0===e?n=i=\"whatever\":e<0?(i=\"middle\",n=y[r]):(i=\"middle\",n=b[r]),t.textBaseline=i,t.textAlign=n},t.prototype.get_label_angle_heuristic=function(t){return v[this.side][t]},t}(n.LayoutCanvas);(r.SidePanel=w).initClass()},function(t,e,i){var n=t(350);function r(i){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new n.Constraint(new(n.Expression.bind.apply(n.Expression,[void 0].concat(t))),i)}}function o(i){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new n.Constraint(new(n.Expression.bind.apply(n.Expression,[void 0].concat(t))),i,n.Strength.weak)}}i.Variable=n.Variable,i.Expression=n.Expression,i.Constraint=n.Constraint,i.Operator=n.Operator,i.Strength=n.Strength,i.EQ=r(n.Operator.Eq),i.LE=r(n.Operator.Le),i.GE=r(n.Operator.Ge),i.WEAK_EQ=o(n.Operator.Eq),i.WEAK_LE=o(n.Operator.Le),i.WEAK_GE=o(n.Operator.Ge);var s=function(){function t(){this.solver=new n.Solver}return t.prototype.clear=function(){this.solver=new n.Solver},t.prototype.toString=function(){return\"Solver(num_constraints=\"+this.num_constraints+\", num_editables=\"+this.num_editables+\")\"},Object.defineProperty(t.prototype,\"num_constraints\",{get:function(){return this.solver.numConstraints},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"num_editables\",{get:function(){return this.solver.numEditVariables},enumerable:!0,configurable:!0}),t.prototype.get_constraints=function(){return this.solver.getConstraints()},t.prototype.update_variables=function(){this.solver.updateVariables()},t.prototype.has_constraint=function(t){return this.solver.hasConstraint(t)},t.prototype.add_constraint=function(e){try{this.solver.addConstraint(e)}catch(t){throw new Error(t.message+\": \"+e.toString())}},t.prototype.remove_constraint=function(t){this.solver.removeConstraint(t)},t.prototype.add_edit_variable=function(t,e){this.solver.addEditVariable(t,e)},t.prototype.remove_edit_variable=function(t){this.solver.removeEditVariable(t)},t.prototype.suggest_value=function(t,e){this.solver.suggestValue(t,e)},t}();i.Solver=s},function(t,e,i){var o=t(44),n={},s=function(t,e){this.name=t,this.level=e};i.LogLevel=s;var r=function(){function r(t,e){void 0===e&&(e=r.INFO),this._name=t,this.set_level(e)}return Object.defineProperty(r,\"levels\",{get:function(){return Object.keys(r.log_levels)},enumerable:!0,configurable:!0}),r.get=function(t,e){if(void 0===e&&(e=r.INFO),0<t.length){var i=n[t];return null==i&&(n[t]=i=new r(t,e)),i}throw new TypeError(\"Logger.get() expects a non-empty string name and an optional log-level\")},Object.defineProperty(r.prototype,\"level\",{get:function(){return this.get_level()},enumerable:!0,configurable:!0}),r.prototype.get_level=function(){return this._log_level},r.prototype.set_level=function(t){if(t instanceof s)this._log_level=t;else{if(!o.isString(t)||null==r.log_levels[t])throw new Error(\"Logger.set_level() expects a log-level object or a string name of a log-level\");this._log_level=r.log_levels[t]}var e=\"[\"+this._name+\"]\";for(var i in r.log_levels){var n=r.log_levels[i];n.level<this._log_level.level||this._log_level.level===r.OFF.level?this[i]=function(){}:this[i]=a(i,e)}},r.prototype.trace=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.debug=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.info=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.warn=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.error=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.TRACE=new s(\"trace\",0),r.DEBUG=new s(\"debug\",1),r.INFO=new s(\"info\",2),r.WARN=new s(\"warn\",6),r.ERROR=new s(\"error\",7),r.FATAL=new s(\"fatal\",8),r.OFF=new s(\"off\",9),r.log_levels={trace:r.TRACE,debug:r.DEBUG,info:r.INFO,warn:r.WARN,error:r.ERROR,fatal:r.FATAL,off:r.OFF},r}();function a(t,e){return null!=console[t]?console[t].bind(console,e):null!=console.log?console.log.bind(console,e):function(){}}i.Logger=r,i.logger=r.get(\"bokeh\"),i.set_log_level=function(t){null==r.log_levels[t]?(console.log(\"[bokeh] unrecognized logging level '\"+t+\"' passed to Bokeh.set_log_level(), ignoring\"),console.log(\"[bokeh] valid log levels are: \"+r.levels.join(\", \"))):(console.log(\"[bokeh] setting log level to: '\"+t+\"'\"),i.logger.set_level(t))}},function(t,e,i){var o=t(391),s=t(19),n=t(7),r=t(39),a=t(27),l=t(21),h=t(22),u=t(44);function c(e){try{return JSON.stringify(e)}catch(t){return e.toString()}}function _(t){return u.isPlainObject(t)&&(void 0===t.value?0:1)+(void 0===t.field?0:1)+(void 0===t.expr?0:1)==1}s.Signal,i.isSpec=_;var p=function(r){function t(t,e,i){var n=r.call(this)||this;return n.obj=t,n.attr=e,n.default_value=i,n.optional=!1,n.obj=t,n.attr=e,n.default_value=i,n.change=new s.Signal0(n.obj,\"change\"),n._init(),n.connect(n.change,function(){return n._init()}),n}return o.__extends(t,r),t.prototype.update=function(){this._init()},t.prototype.init=function(){},t.prototype.transform=function(t){return t},t.prototype.validate=function(t){},t.prototype.value=function(t){if(void 0===t&&(t=!0),void 0===this.spec.value)throw new Error(\"attempted to retrieve property value for property without value specification\");var e=this.transform([this.spec.value])[0];return null!=this.spec.transform&&t&&(e=this.spec.transform.compute(e)),e},t.prototype.array=function(t){if(!this.dataspec)throw new Error(\"attempted to retrieve property array for non-dataspec property\");var e;if(null!=this.spec.field){if(null==(e=this.transform(t.get_column(this.spec.field))))throw new Error(\"attempted to retrieve property array for nonexistent field '\"+this.spec.field+\"'\")}else if(null!=this.spec.expr)e=this.transform(this.spec.expr.v_compute(t));else{var i=t.get_length();null==i&&(i=1);var n=this.value(!1);e=l.repeat(n,i)}return null!=this.spec.transform&&(e=this.spec.transform.v_compute(e)),e},t.prototype._init=function(){var t,e=this.obj,i=this.attr,n=e.getv(i);if(void 0===n){var r=this.default_value;n=void 0!==r?r(e):null,e.setv(((t={})[i]=n,t),{silent:!0,defaults:!0})}if(u.isArray(n)?this.spec={value:n}:_(n)?this.spec=n:this.spec={value:n},this.dataspec&&null!=this.spec.field&&!u.isString(this.spec.field))throw new Error(\"field value for property '\"+i+\"' is not a string\");null!=this.spec.value&&this.validate(this.spec.value),this.init()},t.prototype.toString=function(){return\"Prop(\"+this.obj+\".\"+this.attr+\", spec: \"+c(this.spec)+\")\"},t}(s.Signalable());function d(i,n){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.validate=function(t){if(!n(t))throw new Error(i+\" property '\"+this.attr+\"' given invalid value: \"+c(t))},e}(p)}(i.Property=p).prototype.dataspec=!1;var f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}((i.simple_prop=d)(\"Any\",function(t){return!0}));i.Any=f;var v=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Array\",function(t){return u.isArray(t)||t instanceof Float64Array}));i.Array=v;var m=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Bool\",u.isBoolean));i.Bool=m,i.Boolean=m;var g=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Color\",function(t){return u.isString(t)&&(r.is_svg_color(t.toLowerCase())||\"#\"==t.substring(0,1)||a.valid_rgb(t))}));i.Color=g;var y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Instance\",function(t){return null!=t.properties}));i.Instance=y;var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Number\",function(t){return u.isNumber(t)||u.isBoolean(t)}));i.Number=b;var x=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(i.Int=b);i.Angle=x;var w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Number\",function(t){return(u.isNumber(t)||u.isBoolean(t))&&0<=t&&t<=1}));i.Percent=w;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"String\",u.isString));i.String=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(i.FontSize=k);function C(t,e){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(t,function(t){return l.includes(e,t)}))}i.Font=S;var T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}((i.enum_prop=C)(\"Anchor\",n.LegendLocation));i.Anchor=T;var A=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"AngleUnits\",n.AngleUnits));i.AngleUnits=A;var E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.transform=function(t){for(var e=new Uint8Array(t.length),i=0;i<t.length;i++)switch(t[i]){case\"clock\":e[i]=0;break;case\"anticlock\":e[i]=1}return e},e}(C(\"Direction\",n.Direction));i.Direction=E;var M=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Dimension\",n.Dimension));i.Dimension=M;var O=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Dimensions\",n.Dimensions));i.Dimensions=O;var z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"FontStyle\",n.FontStyle));i.FontStyle=z;var P=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LatLon\",n.LatLon));i.LatLon=P;var j=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LineCap\",n.LineCap));i.LineCap=j;var N=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LineJoin\",n.LineJoin));i.LineJoin=N;var F=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LegendLocation\",n.LegendLocation));i.LegendLocation=F;var D=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Location\",n.Location));i.Location=D;var I=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"OutputBackend\",n.OutputBackend));i.OutputBackend=I;var R=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Orientation\",n.Orientation));i.Orientation=R;var B=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"VerticalAlign\",n.VerticalAlign));i.VerticalAlign=B;var L=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"TextAlign\",n.TextAlign));i.TextAlign=L;var V=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"TextBaseline\",n.TextBaseline));i.TextBaseline=V;var G=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"RenderLevel\",n.RenderLevel));i.RenderLevel=G;var U=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"RenderMode\",n.RenderMode));i.RenderMode=U;var q=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"SizingMode\",n.SizingMode));i.SizingMode=q;var Y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"SpatialUnits\",n.SpatialUnits));i.SpatialUnits=Y;var X=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Distribution\",n.Distribution));i.Distribution=X;var H=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"StepMode\",n.StepMode));i.StepMode=H;var W=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"PaddingUnits\",n.PaddingUnits));i.PaddingUnits=W;var J=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"StartEnd\",n.StartEnd));function Q(i,n,r){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.init=function(){null==this.spec.units&&(this.spec.units=r);var t=this.spec.units;if(!l.includes(n,t))throw new Error(i+\" units must be one of \"+n+\", given invalid value: \"+t)},Object.defineProperty(e.prototype,\"units\",{get:function(){return this.spec.units},set:function(t){this.spec.units=t},enumerable:!0,configurable:!0}),e}(b)}i.StartEnd=J;var $=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.transform=function(t){return\"deg\"==this.spec.units&&(t=h.map(t,function(t){return t*Math.PI/180})),t=h.map(t,function(t){return-t}),e.prototype.transform.call(this,t)},t}((i.units_prop=Q)(\"AngleSpec\",n.AngleUnits,\"rad\"));(i.AngleSpec=$).prototype.dataspec=!0;var K=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(g);(i.ColorSpec=K).prototype.dataspec=!0;var Z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(Q(\"DistanceSpec\",n.SpatialUnits,\"data\"));(i.DistanceSpec=Z).prototype.dataspec=!0;var tt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.FontSizeSpec=tt).prototype.dataspec=!0;var et=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.MarkerSpec=et).prototype.dataspec=!0;var it=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(b);(i.NumberSpec=it).prototype.dataspec=!0;var nt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.StringSpec=nt).prototype.dataspec=!0},function(t,e,h){var i=t(15),u=t(32);function n(t,e){var i={};for(var n in t){var r=t[n];i[e+n]=r}return i}var r={line_color:[i.ColorSpec,\"black\"],line_width:[i.NumberSpec,1],line_alpha:[i.NumberSpec,1],line_join:[i.LineJoin,\"bevel\"],line_cap:[i.LineCap,\"butt\"],line_dash:[i.Array,[]],line_dash_offset:[i.Number,0]};h.line=function(t){return void 0===t&&(t=\"\"),n(r,t)};var o={fill_color:[i.ColorSpec,\"gray\"],fill_alpha:[i.NumberSpec,1]};h.fill=function(t){return void 0===t&&(t=\"\"),n(o,t)};var s={text_font:[i.Font,\"helvetica\"],text_font_size:[i.FontSizeSpec,\"12pt\"],text_font_style:[i.FontStyle,\"normal\"],text_color:[i.ColorSpec,\"#444444\"],text_alpha:[i.NumberSpec,1],text_align:[i.TextAlign,\"left\"],text_baseline:[i.TextBaseline,\"bottom\"],text_line_height:[i.Number,1.2]};h.text=function(t){return void 0===t&&(t=\"\"),n(s,t)},h.create=function(t){for(var e={},i=0,n=t;i<n.length;i++){var r=n[i],o=r.split(\":\"),s=o[0],a=o[1],l=void 0;switch(s){case\"line\":l=h.line;break;case\"fill\":l=h.fill;break;case\"text\":l=h.text;break;default:throw new Error(\"Unknown property mixin kind '\"+s+\"'\")}u.extend(e,l(a))}return e}},function(t,e,i){var n=t(391),r=t(8),o=t(197),p=t(185),d=t(186),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"SelectionManager\",this.internal({source:[s.Any]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),this.inspectors={}},e.prototype.select=function(t,e,i,n){void 0===n&&(n=!1);for(var r=[],o=[],s=0,a=t;s<a.length;s++){var l=a[s];l instanceof p.GlyphRendererView?r.push(l):l instanceof d.GraphRendererView&&o.push(l)}for(var h=!1,u=0,c=o;u<c.length;u++){var l=c[u],_=l.model.selection_policy.hit_test(e,l);h=h||l.model.selection_policy.do_selection(_,l.model,i,n)}if(0<r.length){var _=this.source.selection_policy.hit_test(e,r);h=h||this.source.selection_policy.do_selection(_,this.source,i,n)}return h},e.prototype.inspect=function(t,e){var i=!1;if(t instanceof p.GlyphRendererView){var n=t.hit_test(e);if(null!=n){i=!n.is_empty();var r=this.get_or_create_inspector(t.model);r.update(n,!0,!1),this.source.setv({inspected:r},{silent:!0}),this.source.inspect.emit([t,{geometry:e}])}}else if(t instanceof d.GraphRendererView){var n=t.model.inspection_policy.hit_test(e,t);i=i||t.model.inspection_policy.do_inspection(n,e,t,!1,!1)}return i},e.prototype.clear=function(t){this.source.selected.clear(),null!=t&&this.get_or_create_inspector(t.model).clear()},e.prototype.get_or_create_inspector=function(t){return null==this.inspectors[t.id]&&(this.inspectors[t.id]=new o.Selection),this.inspectors[t.id]},e}(r.HasProps);(i.SelectionManager=a).initClass()},function(t,e,i){var n=function(){function t(){this._dev=!1}return Object.defineProperty(t.prototype,\"dev\",{get:function(){return this._dev},set:function(t){this._dev=t},enumerable:!0,configurable:!0}),t}();i.Settings=n,i.settings=new n},function(t,e,i){var n,r=t(391),o=t(29),s=t(25),a=t(21),l=function(){function t(t,e){this.sender=t,this.name=e}return t.prototype.connect=function(t,e){void 0===e&&(e=null),u.has(this.sender)||u.set(this.sender,[]);var i=u.get(this.sender);if(null!=_(i,this,t,e))return!1;var n=e||t;c.has(n)||c.set(n,[]);var r=c.get(n),o={signal:this,slot:t,context:e};return i.push(o),r.push(o),!0},t.prototype.disconnect=function(t,e){void 0===e&&(e=null);var i=u.get(this.sender);if(null==i||0===i.length)return!1;var n=_(i,this,t,e);if(null==n)return!1;var r=e||t,o=c.get(r);return n.signal=null,d(i),d(o),!0},t.prototype.emit=function(t){for(var e=u.get(this.sender)||[],i=0,n=e;i<n.length;i++){var r=n[i],o=r.signal,s=r.slot,a=r.context;o===this&&s.call(a,t,this.sender)}},t}(),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r.__extends(e,t),e.prototype.emit=function(){t.prototype.emit.call(this,void 0)},e}(i.Signal=l);i.Signal0=h,(n=l=i.Signal||(i.Signal={})).disconnectBetween=function(t,e){var i=u.get(t);if(null!=i&&0!==i.length){var n=c.get(e);if(null!=n&&0!==n.length){for(var r=0,o=n;r<o.length;r++){var s=o[r];if(null==s.signal)return;s.signal.sender===t&&(s.signal=null)}d(i),d(n)}}},n.disconnectSender=function(t){var e=u.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null==r.signal)return;var o=r.context||r.slot;r.signal=null,d(c.get(o))}d(e)}},n.disconnectReceiver=function(t){var e=c.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null==r.signal)return;var o=r.signal.sender;r.signal=null,d(u.get(o))}d(e)}},n.disconnectAll=function(t){var e=u.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];r.signal=null}d(e)}var o=c.get(t);if(null!=o&&0!==o.length){for(var s=0,a=o;s<a.length;s++){var r=a[s];r.signal=null}d(o)}},i.Signal=l,i.Signalable=function(t){return null!=t?function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r.__extends(e,t),e.prototype.connect=function(t,e){return t.connect(e,this)},e}(t):function(){function t(){}return t.prototype.connect=function(t,e){return t.connect(e,this)},t}()},(i._Signalable||(i._Signalable={})).connect=function(t,e){return t.connect(e,this)};var u=new WeakMap,c=new WeakMap;function _(t,e,i,n){return a.find(t,function(t){return t.signal===e&&t.slot===i&&t.context===n})}var p=new o.Set;function d(t){0===p.size&&s.defer(f),p.add(t)}function f(){p.forEach(function(t){a.removeBy(t,function(t){return null==t.signal})}),p.clear()}},function(t,e,d){var i=t(391),o=t(347),s=t(19),a=t(14),l=t(5),n=t(45),h=t(21),f=t(32),r=t(44),u=t(3);d.is_mobile=\"ontouchstart\"in window||0<navigator.maxTouchPoints;var c=function(){function t(t,e,i,n){var r=this;this.plot_view=t,this.toolbar=e,this.hit_area=i,this.plot=n,this.pan_start=new s.Signal(this,\"pan:start\"),this.pan=new s.Signal(this,\"pan\"),this.pan_end=new s.Signal(this,\"pan:end\"),this.pinch_start=new s.Signal(this,\"pinch:start\"),this.pinch=new s.Signal(this,\"pinch\"),this.pinch_end=new s.Signal(this,\"pinch:end\"),this.rotate_start=new s.Signal(this,\"rotate:start\"),this.rotate=new s.Signal(this,\"rotate\"),this.rotate_end=new s.Signal(this,\"rotate:end\"),this.tap=new s.Signal(this,\"tap\"),this.doubletap=new s.Signal(this,\"doubletap\"),this.press=new s.Signal(this,\"press\"),this.move_enter=new s.Signal(this,\"move:enter\"),this.move=new s.Signal(this,\"move\"),this.move_exit=new s.Signal(this,\"move:exit\"),this.scroll=new s.Signal(this,\"scroll\"),this.keydown=new s.Signal(this,\"keydown\"),this.keyup=new s.Signal(this,\"keyup\"),this.hammer=new o(this.hit_area),this._configure_hammerjs(),this.hit_area.addEventListener(\"mousemove\",function(t){return r._mouse_move(t)}),this.hit_area.addEventListener(\"mouseenter\",function(t){return r._mouse_enter(t)}),this.hit_area.addEventListener(\"mouseleave\",function(t){return r._mouse_exit(t)}),this.hit_area.addEventListener(\"wheel\",function(t){return r._mouse_wheel(t)}),document.addEventListener(\"keydown\",this),document.addEventListener(\"keyup\",this)}return t.prototype.destroy=function(){this.hammer.destroy(),document.removeEventListener(\"keydown\",this),document.removeEventListener(\"keyup\",this)},t.prototype.handleEvent=function(t){\"keydown\"==t.type?this._key_down(t):\"keyup\"==t.type&&this._key_up(t)},t.prototype._configure_hammerjs=function(){var e=this;this.hammer.get(\"doubletap\").recognizeWith(\"tap\"),this.hammer.get(\"tap\").requireFailure(\"doubletap\"),this.hammer.get(\"doubletap\").dropRequireFailure(\"tap\"),this.hammer.on(\"doubletap\",function(t){return e._doubletap(t)}),this.hammer.on(\"tap\",function(t){return e._tap(t)}),this.hammer.on(\"press\",function(t){return e._press(t)}),this.hammer.get(\"pan\").set({direction:o.DIRECTION_ALL}),this.hammer.on(\"panstart\",function(t){return e._pan_start(t)}),this.hammer.on(\"pan\",function(t){return e._pan(t)}),this.hammer.on(\"panend\",function(t){return e._pan_end(t)}),this.hammer.get(\"pinch\").set({enable:!0}),this.hammer.on(\"pinchstart\",function(t){return e._pinch_start(t)}),this.hammer.on(\"pinch\",function(t){return e._pinch(t)}),this.hammer.on(\"pinchend\",function(t){return e._pinch_end(t)}),this.hammer.get(\"rotate\").set({enable:!0}),this.hammer.on(\"rotatestart\",function(t){return e._rotate_start(t)}),this.hammer.on(\"rotate\",function(t){return e._rotate(t)}),this.hammer.on(\"rotateend\",function(t){return e._rotate_end(t)})},t.prototype.register_tool=function(i){var n=this,t=i.model.event_type;null!=t&&(r.isString(t)?this._register_tool(i,t):t.forEach(function(t,e){return n._register_tool(i,t,e<1)}))},t.prototype._register_tool=function(t,e,i){void 0===i&&(i=!0);var n=t,r=n.model.id,o=function(e){return function(t){t.id==r&&e(t.e)}},s=function(e){return function(t){e(t.e)}};switch(e){case\"pan\":null!=n._pan_start&&n.connect(this.pan_start,o(n._pan_start.bind(n))),null!=n._pan&&n.connect(this.pan,o(n._pan.bind(n))),null!=n._pan_end&&n.connect(this.pan_end,o(n._pan_end.bind(n)));break;case\"pinch\":null!=n._pinch_start&&n.connect(this.pinch_start,o(n._pinch_start.bind(n))),null!=n._pinch&&n.connect(this.pinch,o(n._pinch.bind(n))),null!=n._pinch_end&&n.connect(this.pinch_end,o(n._pinch_end.bind(n)));break;case\"rotate\":null!=n._rotate_start&&n.connect(this.rotate_start,o(n._rotate_start.bind(n))),null!=n._rotate&&n.connect(this.rotate,o(n._rotate.bind(n))),null!=n._rotate_end&&n.connect(this.rotate_end,o(n._rotate_end.bind(n)));break;case\"move\":null!=n._move_enter&&n.connect(this.move_enter,o(n._move_enter.bind(n))),null!=n._move&&n.connect(this.move,o(n._move.bind(n))),null!=n._move_exit&&n.connect(this.move_exit,o(n._move_exit.bind(n)));break;case\"tap\":null!=n._tap&&n.connect(this.tap,o(n._tap.bind(n)));break;case\"press\":null!=n._press&&n.connect(this.press,o(n._press.bind(n)));break;case\"scroll\":null!=n._scroll&&n.connect(this.scroll,o(n._scroll.bind(n)));break;default:throw new Error(\"unsupported event_type: \"+e)}i&&(null!=n._doubletap&&n.connect(this.doubletap,s(n._doubletap.bind(n))),null!=n._keydown&&n.connect(this.keydown,s(n._keydown.bind(n))),null!=n._keyup&&n.connect(this.keyup,s(n._keyup.bind(n))),d.is_mobile&&null!=n._scroll&&\"pinch\"==e&&(a.logger.debug(\"Registering scroll on touch screen\"),n.connect(this.scroll,o(n._scroll.bind(n)))))},t.prototype._hit_test_renderers=function(t,e){for(var i=this.plot_view.get_renderer_views(),n=0,r=h.reversed(i);n<r.length;n++){var o=r[n],s=o.model.level;if((\"annotation\"==s||\"overlay\"==s)&&null!=o.interactive_hit&&o.interactive_hit(t,e))return o}return null},t.prototype._hit_test_frame=function(t,e){return this.plot_view.frame.bbox.contains(t,e)},t.prototype._hit_test_canvas=function(t,e){return this.plot_view.canvas.bbox.contains(t,e)},t.prototype._trigger=function(e,i,t){var n=this,r=this.toolbar.gestures,o=e.name,s=o.split(\":\")[0],a=this._hit_test_renderers(i.sx,i.sy),l=this._hit_test_canvas(i.sx,i.sy);switch(s){case\"move\":var h=r[s].active;null!=h&&this.trigger(e,i,h.id);var u=this.toolbar.inspectors.filter(function(t){return t.active}),c=\"default\";null!=a?(c=a.cursor(i.sx,i.sy)||c,f.isEmpty(u)||(e=this.move_exit,o=e.name)):this._hit_test_frame(i.sx,i.sy)&&(f.isEmpty(u)||(c=\"crosshair\")),this.plot_view.set_cursor(c),this.plot_view.set_toolbar_visibility(l),u.map(function(t){return n.trigger(e,i,t.id)});break;case\"tap\":var _=t.target;if(null!=_&&_!=this.hit_area)return;null!=a&&null!=a.on_hit&&a.on_hit(i.sx,i.sy);var h=r[s].active;null!=h&&this.trigger(e,i,h.id);break;case\"scroll\":var p=d.is_mobile?\"pinch\":\"scroll\",h=r[p].active;null!=h&&(t.preventDefault(),t.stopPropagation(),this.trigger(e,i,h.id));break;default:var h=r[s].active;null!=h&&this.trigger(e,i,h.id)}this._trigger_bokeh_event(i)},t.prototype.trigger=function(t,e,i){void 0===i&&(i=null),t.emit({id:i,e:e})},t.prototype._trigger_bokeh_event=function(t){var e=u.BokehEvent.event_class(t);null!=e?this.plot.trigger_event(e.from_event(t)):a.logger.debug(\"Unhandled event of type \"+t.type)},t.prototype._get_sxy=function(t){var e,i=(e=t,\"undefined\"!=typeof TouchEvent&&e instanceof TouchEvent?(0!=t.touches.length?t.touches:t.changedTouches)[0]:t),n=i.pageX,r=i.pageY,o=l.offset(this.hit_area),s=o.left,a=o.top;return{sx:n-s,sy:r-a}},t.prototype._gesture_event=function(t){return i.__assign({type:t.type},this._get_sxy(t.srcEvent),{deltaX:t.deltaX,deltaY:t.deltaY,scale:t.scale,shiftKey:t.srcEvent.shiftKey})},t.prototype._tap_event=function(t){return i.__assign({type:t.type},this._get_sxy(t.srcEvent),{shiftKey:t.srcEvent.shiftKey})},t.prototype._move_event=function(t){return i.__assign({type:t.type},this._get_sxy(t))},t.prototype._scroll_event=function(t){return i.__assign({type:t.type},this._get_sxy(t),{delta:n.getDeltaY(t)})},t.prototype._key_event=function(t){return{type:t.type,keyCode:t.keyCode}},t.prototype._pan_start=function(t){var e=this._gesture_event(t);e.sx-=t.deltaX,e.sy-=t.deltaY,this._trigger(this.pan_start,e,t.srcEvent)},t.prototype._pan=function(t){this._trigger(this.pan,this._gesture_event(t),t.srcEvent)},t.prototype._pan_end=function(t){this._trigger(this.pan_end,this._gesture_event(t),t.srcEvent)},t.prototype._pinch_start=function(t){this._trigger(this.pinch_start,this._gesture_event(t),t.srcEvent)},t.prototype._pinch=function(t){this._trigger(this.pinch,this._gesture_event(t),t.srcEvent)},t.prototype._pinch_end=function(t){this._trigger(this.pinch_end,this._gesture_event(t),t.srcEvent)},t.prototype._rotate_start=function(t){this._trigger(this.rotate_start,this._gesture_event(t),t.srcEvent)},t.prototype._rotate=function(t){this._trigger(this.rotate,this._gesture_event(t),t.srcEvent)},t.prototype._rotate_end=function(t){this._trigger(this.rotate_end,this._gesture_event(t),t.srcEvent)},t.prototype._tap=function(t){this._trigger(this.tap,this._tap_event(t),t.srcEvent)},t.prototype._doubletap=function(t){var e=this._tap_event(t);this._trigger_bokeh_event(e),this.trigger(this.doubletap,e)},t.prototype._press=function(t){this._trigger(this.press,this._tap_event(t),t.srcEvent)},t.prototype._mouse_enter=function(t){this._trigger(this.move_enter,this._move_event(t),t)},t.prototype._mouse_move=function(t){this._trigger(this.move,this._move_event(t),t)},t.prototype._mouse_exit=function(t){this._trigger(this.move_exit,this._move_event(t),t)},t.prototype._mouse_wheel=function(t){this._trigger(this.scroll,this._scroll_event(t),t)},t.prototype._key_down=function(t){this.trigger(this.keydown,this._key_event(t))},t.prototype._key_up=function(t){this.trigger(this.keyup,this._key_event(t))},t}();d.UIEvents=c},function(t,e,n){var o=t(31),u=t(23),i=t(22);n.min=i.min,n.minBy=i.minBy,n.max=i.max,n.maxBy=i.maxBy,n.sum=i.sum;var r=Array.prototype.slice;function s(t){var e;return(e=[]).concat.apply(e,t)}function c(t,e){return-1!==t.indexOf(e)}function a(t,e,i){void 0===i&&(i=1),u.assert(0<i,\"'step' must be a positive number\"),null==e&&(e=t,t=0);for(var n=Math.max,r=Math.ceil,o=Math.abs,s=t<=e?i:-i,a=n(r(o(e-t)/i),0),l=Array(a),h=0;h<a;h++,t+=s)l[h]=t;return l}function l(r){return function(t,e){for(var i=t.length,n=0<r?0:i-1;0<=n&&n<i;n+=r)if(e(t[n]))return n;return-1}}function h(t){for(var e=[],i=0,n=t;i<n.length;i++){var r=n[i];c(e,r)||e.push(r)}return e}n.head=function(t){return t[0]},n.tail=function(t){return t[t.length-1]},n.last=function(t){return t[t.length-1]},n.copy=function(t){return r.call(t)},n.concat=s,n.includes=c,n.contains=c,n.nth=function(t,e){return t[0<=e?e:t.length+e]},n.zip=function(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=0;r<i;r++)n[r]=[t[r],e[r]];return n},n.unzip=function(t){for(var e,i=t.length,n=new Array(i),r=new Array(i),o=0;o<i;o++)e=t[o],n[o]=e[0],r[o]=e[1];return[n,r]},n.range=a,n.linspace=function(t,e,i){void 0===i&&(i=100);for(var n=(e-t)/(i-1),r=new Array(i),o=0;o<i;o++)r[o]=t+n*o;return r},n.transpose=function(t){for(var e=t.length,i=t[0].length,n=[],r=0;r<i;r++){n[r]=[];for(var o=0;o<e;o++)n[r][o]=t[o][r]}return n},n.cumsum=function(t){var n=[];return t.reduce(function(t,e,i){return n[i]=t+e},0),n},n.argmin=function(e){return i.minBy(a(e.length),function(t){return e[t]})},n.argmax=function(e){return i.maxBy(a(e.length),function(t){return e[t]})},n.all=function(t,e){for(var i=0,n=t;i<n.length;i++){var r=n[i];if(!e(r))return!1}return!0},n.any=function(t,e){for(var i=0,n=t;i<n.length;i++){var r=n[i];if(e(r))return!0}return!1},n.findIndex=l(1),n.findLastIndex=l(-1),n.find=function(t,e){var i=n.findIndex(t,e);return-1==i?void 0:t[i]},n.findLast=function(t,e){var i=n.findLastIndex(t,e);return-1==i?void 0:t[i]},n.sortedIndex=function(t,e){for(var i=0,n=t.length;i<n;){var r=Math.floor((i+n)/2);t[r]<e?i=r+1:n=r}return i},n.sortBy=function(t,i){var e=t.map(function(t,e){return{value:t,index:e,key:i(t)}});return e.sort(function(t,e){var i=t.key,n=e.key;if(i!==n){if(n<i||void 0===i)return 1;if(i<n||void 0===n)return-1}return t.index-e.index}),e.map(function(t){return t.value})},n.uniq=h,n.uniqBy=function(t,e){for(var i=[],n=[],r=0,o=t;r<o.length;r++){var s=o[r],a=e(s);c(n,a)||(n.push(a),i.push(s))}return i},n.union=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return h(s(t))},n.intersection=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=[];t:for(var r=0,o=t;r<o.length;r++){var s=o[r];if(!c(n,s)){for(var a=0,l=e;a<l.length;a++){var h=l[a];if(!c(h,s))continue t}n.push(s)}}return n},n.difference=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=s(e);return t.filter(function(t){return!c(n,t)})},n.removeBy=function(t,e){for(var i=0;i<t.length;)e(t[i])?t.splice(i,1):i++},n.shuffle=function(t){for(var e=t.length,i=new Array(e),n=0;n<e;n++){var r=o.randomIn(0,n);r!==n&&(i[n]=i[r]),i[r]=t[n]}return i},n.pairwise=function(t,e){for(var i=t.length,n=new Array(i-1),r=0;r<i-1;r++)n[r]=e(t[r],t[r+1]);return n},n.reversed=function(t){for(var e=t.length,i=new Array(e),n=0;n<e;n++)i[e-n-1]=t[n];return i},n.repeat=function(t,e){for(var i=new Array(e),n=0;n<e;n++)i[n]=t;return i}},function(t,e,i){function n(t,e,i){for(var n=[],r=3;r<arguments.length;r++)n[r-3]=arguments[r];var o=t.length;e<0&&(e+=o),e<0?e=0:o<e&&(e=o),null==i||o-e<i?i=o-e:i<0&&(i=0);for(var s=o-i+n.length,a=new t.constructor(s),l=0;l<e;l++)a[l]=t[l];for(var h=0,u=n;h<u.length;h++){var c=u[h];a[l++]=c}for(var _=e+i;_<o;_++)a[l++]=t[_];return a}i.splice=n,i.insert=function(t,e,i){return n(t,i,0,e)},i.append=function(t,e){return n(t,t.length,0,e)},i.prepend=function(t,e){return n(t,0,0,e)},i.indexOf=function(t,e){for(var i=0,n=t.length;i<n;i++)if(t[i]===e)return i;return-1},i.map=function(t,e){for(var i=t.length,n=new t.constructor(i),r=0;r<i;r++)n[r]=e(t[r],r,t);return n},i.min=function(t){for(var e,i=1/0,n=0,r=t.length;n<r;n++)(e=t[n])<i&&(i=e);return i},i.minBy=function(t,e){if(0==t.length)throw new Error(\"minBy() called with an empty array\");for(var i=t[0],n=e(i),r=1,o=t.length;r<o;r++){var s=t[r],a=e(s);a<n&&(i=s,n=a)}return i},i.max=function(t){for(var e,i=-1/0,n=0,r=t.length;n<r;n++)e=t[n],i<e&&(i=e);return i},i.maxBy=function(t,e){if(0==t.length)throw new Error(\"maxBy() called with an empty array\");for(var i=t[0],n=e(i),r=1,o=t.length;r<o;r++){var s=t[r],a=e(s);n<a&&(i=s,n=a)}return i},i.sum=function(t){for(var e=0,i=0,n=t.length;i<n;i++)e+=t[i];return e}},function(t,e,i){var n=t(391),r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(Error);i.AssertionError=r,i.assert=function(t,e){if(!(!0===t||!1!==t&&t()))throw new r(e||\"Assertion failed\")}},function(t,e,i){var n=Math.min,r=Math.max;i.empty=function(){return{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}},i.positive_x=function(){return{minX:Number.MIN_VALUE,minY:-1/0,maxX:1/0,maxY:1/0}},i.positive_y=function(){return{minX:-1/0,minY:Number.MIN_VALUE,maxX:1/0,maxY:1/0}},i.union=function(t,e){return{minX:n(t.minX,e.minX),maxX:r(t.maxX,e.maxX),minY:n(t.minY,e.minY),maxY:r(t.maxY,e.maxY)}};var o=function(){function e(t){if(\"x0\"in t&&\"y0\"in t&&\"x1\"in t&&\"y1\"in t){var e=t,i=e.x0,n=e.y0,r=e.x1,o=e.y1;if(!(i<=r&&n<=o))throw new Error(\"invalid bbox {x0: \"+i+\", y0: \"+n+\", x1: \"+r+\", y1: \"+o+\"}\");this.x0=i,this.y0=n,this.x1=r,this.y1=o}else{var s=t,a=s.x,l=s.y,h=s.width,u=s.height;if(!(0<=h&&0<=u))throw new Error(\"invalid bbox {x: \"+a+\", y: \"+l+\", width: \"+h+\", height: \"+u+\"}\");this.x0=a,this.y0=l,this.x1=a+h,this.y1=l+u}}return Object.defineProperty(e.prototype,\"minX\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"minY\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"maxX\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"maxY\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"left\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"top\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"right\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"bottom\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"p0\",{get:function(){return[this.x0,this.y0]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"p1\",{get:function(){return[this.x1,this.y1]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"x\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"y\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"width\",{get:function(){return this.x1-this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this.y1-this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"rect\",{get:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"h_range\",{get:function(){return{start:this.x0,end:this.x1}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"v_range\",{get:function(){return{start:this.y0,end:this.y1}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"ranges\",{get:function(){return[this.h_range,this.v_range]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"aspect\",{get:function(){return this.width/this.height},enumerable:!0,configurable:!0}),e.prototype.contains=function(t,e){return t>=this.x0&&t<=this.x1&&e>=this.y0&&e<=this.y1},e.prototype.clip=function(t,e){return t<this.x0?t=this.x0:t>this.x1&&(t=this.x1),e<this.y0?e=this.y0:e>this.y1&&(e=this.y1),[t,e]},e.prototype.union=function(t){return new e({x0:n(this.x0,t.x0),y0:n(this.y0,t.y0),x1:r(this.x1,t.x1),y1:r(this.y1,t.y1)})},e}();i.BBox=o},function(t,e,i){i.delay=function(t,e){return setTimeout(t,e)};var n=\"function\"==typeof requestAnimationFrame?requestAnimationFrame:setImmediate;i.defer=function(t){return n(t)},i.throttle=function(i,n,r){void 0===r&&(r={});var o,s,a,l=null,h=0,u=function(){h=!1===r.leading?0:Date.now(),l=null,a=i.apply(o,s),l||(o=s=null)};return function(){var t=Date.now();h||!1!==r.leading||(h=t);var e=n-(t-h);return o=this,s=arguments,e<=0||n<e?(l&&(clearTimeout(l),l=null),h=t,a=i.apply(o,s),l||(o=s=null)):l||!1===r.trailing||(l=setTimeout(u,e)),a}},i.once=function(t){var e,i=!1;return function(){return i||(i=!0,e=t()),e}}},function(t,e,i){var n=t(287);i.SVGRenderingContext2D=n,i.fixup_ctx=function(t){var e,c,i,n,r;(e=t).setLineDash||(e.setLineDash=function(t){e.mozDash=t,e.webkitLineDash=t}),e.getLineDash||(e.getLineDash=function(){return e.mozDash}),(r=t).setLineDashOffset=function(t){r.lineDashOffset=t,r.mozDashOffset=t,r.webkitLineDashOffset=t},r.getLineDashOffset=function(){return r.mozDashOffset},(n=t).setImageSmoothingEnabled=function(t){n.imageSmoothingEnabled=t,n.mozImageSmoothingEnabled=t,n.oImageSmoothingEnabled=t,n.webkitImageSmoothingEnabled=t,n.msImageSmoothingEnabled=t},n.getImageSmoothingEnabled=function(){var t=n.imageSmoothingEnabled;return null==t||t},(i=t).measureText&&null==i.html5MeasureText&&(i.html5MeasureText=i.measureText,i.measureText=function(t){var e=i.html5MeasureText(t);return e.ascent=1.6*i.html5MeasureText(\"m\").width,e}),(c=t).ellipse||(c.ellipse=function(t,e,i,n,r,o,s,a){void 0===a&&(a=!1);var l=.551784;c.translate(t,e),c.rotate(r);var h=i,u=n;a&&(h=-i,u=-n),c.moveTo(-h,0),c.bezierCurveTo(-h,u*l,-h*l,u,0,u),c.bezierCurveTo(h*l,u,h,u*l,h,0),c.bezierCurveTo(h,-u*l,h*l,-u,0,-u),c.bezierCurveTo(-h*l,-u,-h,-u*l,-h,0),c.rotate(-r),c.translate(-t,-e)})},i.get_scale_ratio=function(t,e,i){if(\"svg\"==i)return 1;if(e){var n=window.devicePixelRatio||1,r=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return n/r}return 1}},function(t,e,i){var n=t(39),r=t(21);function o(t){var e=Number(t).toString(16);return 1==e.length?\"0\"+e:e}function s(t){if(0==(t+=\"\").indexOf(\"#\"))return t;if(n.is_svg_color(t))return n.svg_colors[t];if(0==t.indexOf(\"rgb\")){var e=t.replace(/^rgba?\\(|\\s+|\\)$/g,\"\").split(\",\"),i=e.slice(0,3).map(o).join(\"\");return 4==e.length&&(i+=o(Math.floor(255*parseFloat(e[3])))),\"#\"+i.slice(0,8)}return t}i.color2hex=s,i.color2rgba=function(t,e){if(void 0===e&&(e=1),!t)return[0,0,0,0];var i=s(t);(i=i.replace(/ |#/g,\"\")).length<=4&&(i=i.replace(/(.)/g,\"$1$1\"));for(var n=i.match(/../g).map(function(t){return parseInt(t,16)/255});n.length<3;)n.push(0);return n.length<4&&n.push(e),n.slice(0,4)},i.valid_rgb=function(t){var e;switch(t.substring(0,4)){case\"rgba\":e={start:\"rgba(\",len:4,alpha:!0};break;case\"rgb(\":e={start:\"rgb(\",len:3,alpha:!1};break;default:return!1}if(new RegExp(\".*?(\\\\.).*(,)\").test(t))throw new Error(\"color expects integers for rgb in rgb/rgba tuple, received \"+t);var i=t.replace(e.start,\"\").replace(\")\",\"\").split(\",\").map(parseFloat);if(i.length!=e.len)throw new Error(\"color expects rgba \"+e.len+\"-tuple, received \"+t);if(e.alpha&&!(0<=i[3]&&i[3]<=1))throw new Error(\"color expects rgba 4-tuple to have alpha value between 0 and 1\");if(r.includes(i.slice(0,3).map(function(t){return 0<=t&&t<=255}),!1))throw new Error(\"color expects rgb to have value between 0 and 255\");return!0}},function(t,e,i){i.is_ie=0<=navigator.userAgent.indexOf(\"MSIE\")||0<navigator.userAgent.indexOf(\"Trident\")||0<navigator.userAgent.indexOf(\"Edge\"),i.is_little_endian=function(){var t=new ArrayBuffer(4),e=new Uint8Array(t),i=new Uint32Array(t);i[1]=168496141;var n=!0;return 10==e[4]&&11==e[5]&&12==e[6]&&13==e[7]&&(n=!1),n}()},function(t,e,i){var r=t(21),o=t(30),s=t(44),n=function(){function t(){this._dict={}}return t.prototype._existing=function(t){return t in this._dict?this._dict[t]:null},t.prototype.add_value=function(t,e){var i=this._existing(t);null==i?this._dict[t]=e:s.isArray(i)?i.push(e):this._dict[t]=[i,e]},t.prototype.remove_value=function(t,e){var i=this._existing(t);if(s.isArray(i)){var n=r.difference(i,[e]);0<n.length?this._dict[t]=n:delete this._dict[t]}else o.isEqual(i,e)&&delete this._dict[t]},t.prototype.get_one=function(t,e){var i=this._existing(t);if(s.isArray(i)){if(1===i.length)return i[0];throw new Error(e)}return i},t}();i.MultiDict=n;var a=function(){function o(t){if(null==t)this._values=[];else if(t instanceof o)this._values=r.copy(t._values);else{this._values=[];for(var e=0,i=t;e<i.length;e++){var n=i[e];this.add(n)}}}return Object.defineProperty(o.prototype,\"values\",{get:function(){return r.copy(this._values).sort()},enumerable:!0,configurable:!0}),o.prototype.toString=function(){return\"Set([\"+this.values.join(\",\")+\"])\"},Object.defineProperty(o.prototype,\"size\",{get:function(){return this._values.length},enumerable:!0,configurable:!0}),o.prototype.has=function(t){return-1!==this._values.indexOf(t)},o.prototype.add=function(t){this.has(t)||this._values.push(t)},o.prototype.remove=function(t){var e=this._values.indexOf(t);-1!==e&&this._values.splice(e,1)},o.prototype.toggle=function(t){var e=this._values.indexOf(t);-1===e?this._values.push(t):this._values.splice(e,1)},o.prototype.clear=function(){this._values=[]},o.prototype.union=function(t){return t=new o(t),new o(this._values.concat(t._values))},o.prototype.intersect=function(t){t=new o(t);for(var e=new o,i=0,n=t._values;i<n.length;i++){var r=n[i];this.has(r)&&t.has(r)&&e.add(r)}return e},o.prototype.diff=function(t){t=new o(t);for(var e=new o,i=0,n=this._values;i<n.length;i++){var r=n[i];t.has(r)||e.add(r)}return e},o.prototype.forEach=function(t,e){for(var i=0,n=this._values;i<n.length;i++){var r=n[i];t.call(e||this,r,r,this)}},o}();i.Set=a},function(t,e,i){var _=t(44),p=Object.prototype.toString;i.isEqual=function(t,e){return function t(e,i,n,r){if(e===i)return 0!==e||1/e==1/i;if(null==e||null==i)return e===i;var o=p.call(e);if(o!==p.call(i))return!1;switch(o){case\"[object RegExp]\":case\"[object String]\":return\"\"+e==\"\"+i;case\"[object Number]\":return+e!=+e?+i!=+i:0==+e?1/+e==1/i:+e==+i;case\"[object Date]\":case\"[object Boolean]\":return+e==+i}var s=\"[object Array]\"===o;if(!s){if(\"object\"!=typeof e||\"object\"!=typeof i)return!1;var a=e.constructor,l=i.constructor;if(a!==l&&!(_.isFunction(a)&&a instanceof a&&_.isFunction(l)&&l instanceof l)&&\"constructor\"in e&&\"constructor\"in i)return!1}r=r||[];for(var h=(n=n||[]).length;h--;)if(n[h]===e)return r[h]===i;if(n.push(e),r.push(i),s){if((h=e.length)!==i.length)return!1;for(;h--;)if(!t(e[h],i[h],n,r))return!1}else{var u=Object.keys(e),c=void 0;if(h=u.length,Object.keys(i).length!==h)return!1;for(;h--;)if(c=u[h],!i.hasOwnProperty(c)||!t(e[c],i[c],n,r))return!1}return n.pop(),r.pop(),!0}(t,e)}},function(t,e,i){function a(t){for(;t<0;)t+=2*Math.PI;for(;t>2*Math.PI;)t-=2*Math.PI;return t}function l(t,e){return Math.abs(a(t-e))}function o(){return Math.random()}i.angle_norm=a,i.angle_dist=l,i.angle_between=function(t,e,i,n){var r=a(t),o=l(e,i),s=l(e,r)<=o&&l(r,i)<=o;return 1==n?!s:s},i.random=o,i.randomIn=function(t,e){return null==e&&(e=t,t=0),t+Math.floor(Math.random()*(e-t+1))},i.atan2=function(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])},i.rnorm=function(t,e){for(var i,n;i=o(),n=(2*(n=o())-1)*Math.sqrt(1/Math.E*2),!(-4*i*i*Math.log(i)>=n*n););var r=n/i;return r=t+e*r},i.clamp=function(t,e,i){return i<t?i:t<e?e:t}},function(t,e,i){var n=t(391),h=t(21);function r(t,e){return n.__assign(t,e)}function o(t){return Object.keys(t).length}i.keys=Object.keys,i.values=function(t){for(var e=Object.keys(t),i=e.length,n=new Array(i),r=0;r<i;r++)n[r]=t[e[r]];return n},i.extend=r,i.clone=function(t){return r({},t)},i.merge=function(t,e){for(var i=Object.create(Object.prototype),n=h.concat([Object.keys(t),Object.keys(e)]),r=0,o=n;r<o.length;r++){var s=o[r],a=t.hasOwnProperty(s)?t[s]:[],l=e.hasOwnProperty(s)?e[s]:[];i[s]=h.union(a,l)}return i},i.size=o,i.isEmpty=function(t){return 0===o(t)}},function(t,e,h){var i=t(374),n=t(362),r=new n(\"GOOGLE\"),o=new n(\"WGS84\");h.wgs84_mercator=i(o,r);var s={lon:[-20026376.39,20026376.39],lat:[-20048966.1,20048966.1]},a={lon:[-180,180],lat:[-85.06,85.06]};function u(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=new Array(i),o=0;o<i;o++){var s=h.wgs84_mercator.forward([t[o],e[o]]),a=s[0],l=s[1];n[o]=a,r[o]=l}return[n,r]}h.clip_mercator=function(t,e,i){var n=s[i],r=n[0],o=n[1];return[Math.max(t,r),Math.min(e,o)]},h.in_bounds=function(t,e){return t>a[e][0]&&t<a[e][1]},h.project_xy=u,h.project_xsys=function(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=new Array(i),o=0;o<i;o++){var s=u(t[o],e[o]),a=s[0],l=s[1];n[o]=a,r[o]=l}return[n,r]}},function(t,e,i){var n=t(44);i.create_ref=function(t){var e={type:t.type,id:t.id};return null!=t._subtype&&(e.subtype=t._subtype),e},i.is_ref=function(t){if(n.isObject(t)){var e=Object.keys(t).sort();if(2==e.length)return\"id\"==e[0]&&\"type\"==e[1];if(3==e.length)return\"id\"==e[0]&&\"subtype\"==e[1]&&\"type\"==e[2]}return!1}},function(t,e,i){i.get_indices=function(t){var e=t.selected;return e[\"0d\"].glyph?e[\"0d\"].indices:0<e[\"1d\"].indices.length?e[\"1d\"].indices:0<e[\"2d\"].indices.length?e[\"2d\"].indices:[]}},function(t,e,u){var _=t(44),i=t(28);function c(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,2*t.length),i=0,n=e.length;i<n;i+=2){var r=e[i];e[i]=e[i+1],e[i+1]=r}}function p(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,4*t.length),i=0,n=e.length;i<n;i+=4){var r=e[i];e[i]=e[i+3],e[i+3]=r,r=e[i+1],e[i+1]=e[i+2],e[i+2]=r}}function d(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,8*t.length),i=0,n=e.length;i<n;i+=8){var r=e[i];e[i]=e[i+7],e[i+7]=r,r=e[i+1],e[i+1]=e[i+6],e[i+6]=r,r=e[i+2],e[i+2]=e[i+5],e[i+5]=r,r=e[i+3],e[i+3]=e[i+4],e[i+4]=r}}function n(t,e){for(var i=t.order!==u.BYTE_ORDER,n=t.shape,r=null,o=0,s=e;o<s.length;o++){var a=s[o],l=JSON.parse(a[0]);if(l.id===t.__buffer__){r=a[1];break}}var h=new u.ARRAY_TYPES[t.dtype](r);return i&&(2===h.BYTES_PER_ELEMENT?c(h):4===h.BYTES_PER_ELEMENT?p(h):8===h.BYTES_PER_ELEMENT&&d(h)),[h,n]}function f(t,e){return _.isObject(t)&&\"__ndarray__\"in t?o(t):_.isObject(t)&&\"__buffer__\"in t?n(t,e):_.isArray(t)||_.isTypedArray(t)?[t,[]]:void 0}function s(t){var e=new Uint8Array(t),i=Array.from(e).map(function(t){return String.fromCharCode(t)});return btoa(i.join(\"\"))}function r(t){for(var e=atob(t),i=e.length,n=new Uint8Array(i),r=0,o=i;r<o;r++)n[r]=e.charCodeAt(r);return n.buffer}function o(t){var e=r(t.__ndarray__),i=t.dtype,n=t.shape;if(!(i in u.ARRAY_TYPES))throw new Error(\"unknown dtype: \"+i);return[new u.ARRAY_TYPES[i](e),n]}function a(t,e){var i,n=s(t.buffer),r=function(t){if(\"name\"in t.constructor)return t.constructor.name;switch(!0){case t instanceof Uint8Array:return\"Uint8Array\";case t instanceof Int8Array:return\"Int8Array\";case t instanceof Uint16Array:return\"Uint16Array\";case t instanceof Int16Array:return\"Int16Array\";case t instanceof Uint32Array:return\"Uint32Array\";case t instanceof Int32Array:return\"Int32Array\";case t instanceof Float32Array:return\"Float32Array\";case t instanceof Float64Array:return\"Float64Array\";default:throw new Error(\"unsupported typed array\")}}(t);if(!(r in u.DTYPES))throw new Error(\"unknown array type: \"+r);i=u.DTYPES[r];var o={__ndarray__:n,shape:e,dtype:i};return o}function v(t,e){if(0==t.length||!_.isObject(t[0])&&!_.isArray(t[0]))return[t,[]];for(var i=[],n=[],r=0,o=t;r<o.length;r++){var s=o[r],a=_.isArray(s)?v(s,e):f(s,e),l=a[0],h=a[1];i.push(l),n.push(h)}var u=n.map(function(t){return t.filter(function(t){return 0!=t.length})});return[i,u]}function l(t,e){for(var i=[],n=0,r=t.length;n<r;n++){var o=t[n];if(_.isTypedArray(o)){var s=e[n]?e[n]:void 0;i.push(a(o,s))}else _.isArray(o)?i.push(l(o,e?e[n]:[])):i.push(o)}return i}u.ARRAY_TYPES={uint8:Uint8Array,int8:Int8Array,uint16:Uint16Array,int16:Int16Array,uint32:Uint32Array,int32:Int32Array,float32:Float32Array,float64:Float64Array},u.DTYPES={Uint8Array:\"uint8\",Int8Array:\"int8\",Uint16Array:\"uint16\",Int16Array:\"int16\",Uint32Array:\"uint32\",Int32Array:\"int32\",Float32Array:\"float32\",Float64Array:\"float64\"},u.BYTE_ORDER=i.is_little_endian?\"little\":\"big\",u.swap16=c,u.swap32=p,u.swap64=d,u.process_buffer=n,u.process_array=f,u.arrayBufferToBase64=s,u.base64ToArrayBuffer=r,u.decode_base64=o,u.encode_base64=a,u.decode_column_data=function(t,e){void 0===e&&(e=[]);var i={},n={};for(var r in t){var o=t[r];if(_.isArray(o)){if(0==o.length||!_.isObject(o[0])&&!_.isArray(o[0])){i[r]=o;continue}var s=v(o,e),a=s[0],l=s[1];i[r]=a,n[r]=l}else{var h=f(o,e),u=h[0],c=h[1];i[r]=u,n[r]=c}}return[i,n]},u.encode_column_data=function(t,e){var i={};for(var n in t){var r=t[n],o=null!=e?e[n]:void 0,s=void 0;s=_.isTypedArray(r)?a(r,o):_.isArray(r)?l(r,o||[]):r,i[n]=s}return i}},function(t,e,i){var l=t(346),o=t(24),n=function(){function t(t){if(this.points=t,this.index=null,0<t.length){this.index=new l(t.length);for(var e=0,i=t;e<i.length;e++){var n=i[e],r=n.minX,o=n.minY,s=n.maxX,a=n.maxY;this.index.add(r,o,s,a)}this.index.finish()}}return Object.defineProperty(t.prototype,\"bbox\",{get:function(){if(null==this.index)return o.empty();var t=this.index,e=t.minX,i=t.minY,n=t.maxX,r=t.maxY;return{minX:e,minY:i,maxX:n,maxY:r}},enumerable:!0,configurable:!0}),t.prototype.search=function(t){var e=this;if(null==this.index)return[];var i=t.minX,n=t.minY,r=t.maxX,o=t.maxY,s=this.index.search(i,n,r,o);return s.map(function(t){return e.points[t]})},t.prototype.indices=function(t){return this.search(t).map(function(t){var e=t.i;return e})},t}();i.SpatialIndex=n},function(t,e,i){var n=t(18);function r(){for(var t=new Array(32),e=\"0123456789ABCDEF\",i=0;i<32;i++)t[i]=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(\"\")}i.startsWith=function(t,e,i){return void 0===i&&(i=0),t.substr(i,e.length)==e},i.uuid4=r;var o=1e3;i.uniqueId=function(t){var e=n.settings.dev?\"j\"+o++:r();return null!=t?t+\"-\"+e:e},i.escape=function(t){return t.replace(/(?:[&<>\"'`])/g,function(t){switch(t){case\"&\":return\"&amp;\";case\"<\":return\"&lt;\";case\">\":return\"&gt;\";case'\"':return\"&quot;\";case\"'\":return\"&#x27;\";case\"`\":return\"&#x60;\";default:return t}})},i.unescape=function(t){return t.replace(/&(amp|lt|gt|quot|#x27|#x60);/g,function(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}})},i.use_strict=function(t){return\"'use strict';\\n\"+t}},function(t,e,i){i.svg_colors={indianred:\"#CD5C5C\",lightcoral:\"#F08080\",salmon:\"#FA8072\",darksalmon:\"#E9967A\",lightsalmon:\"#FFA07A\",crimson:\"#DC143C\",red:\"#FF0000\",firebrick:\"#B22222\",darkred:\"#8B0000\",pink:\"#FFC0CB\",lightpink:\"#FFB6C1\",hotpink:\"#FF69B4\",deeppink:\"#FF1493\",mediumvioletred:\"#C71585\",palevioletred:\"#DB7093\",coral:\"#FF7F50\",tomato:\"#FF6347\",orangered:\"#FF4500\",darkorange:\"#FF8C00\",orange:\"#FFA500\",gold:\"#FFD700\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",lemonchiffon:\"#FFFACD\",lightgoldenrodyellow:\"#FAFAD2\",papayawhip:\"#FFEFD5\",moccasin:\"#FFE4B5\",peachpuff:\"#FFDAB9\",palegoldenrod:\"#EEE8AA\",khaki:\"#F0E68C\",darkkhaki:\"#BDB76B\",lavender:\"#E6E6FA\",thistle:\"#D8BFD8\",plum:\"#DDA0DD\",violet:\"#EE82EE\",orchid:\"#DA70D6\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",mediumorchid:\"#BA55D3\",mediumpurple:\"#9370DB\",blueviolet:\"#8A2BE2\",darkviolet:\"#9400D3\",darkorchid:\"#9932CC\",darkmagenta:\"#8B008B\",purple:\"#800080\",indigo:\"#4B0082\",slateblue:\"#6A5ACD\",darkslateblue:\"#483D8B\",mediumslateblue:\"#7B68EE\",greenyellow:\"#ADFF2F\",chartreuse:\"#7FFF00\",lawngreen:\"#7CFC00\",lime:\"#00FF00\",limegreen:\"#32CD32\",palegreen:\"#98FB98\",lightgreen:\"#90EE90\",mediumspringgreen:\"#00FA9A\",springgreen:\"#00FF7F\",mediumseagreen:\"#3CB371\",seagreen:\"#2E8B57\",forestgreen:\"#228B22\",green:\"#008000\",darkgreen:\"#006400\",yellowgreen:\"#9ACD32\",olivedrab:\"#6B8E23\",olive:\"#808000\",darkolivegreen:\"#556B2F\",mediumaquamarine:\"#66CDAA\",darkseagreen:\"#8FBC8F\",lightseagreen:\"#20B2AA\",darkcyan:\"#008B8B\",teal:\"#008080\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",lightcyan:\"#E0FFFF\",paleturquoise:\"#AFEEEE\",aquamarine:\"#7FFFD4\",turquoise:\"#40E0D0\",mediumturquoise:\"#48D1CC\",darkturquoise:\"#00CED1\",cadetblue:\"#5F9EA0\",steelblue:\"#4682B4\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",lightblue:\"#ADD8E6\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",deepskyblue:\"#00BFFF\",dodgerblue:\"#1E90FF\",cornflowerblue:\"#6495ED\",royalblue:\"#4169E1\",blue:\"#0000FF\",mediumblue:\"#0000CD\",darkblue:\"#00008B\",navy:\"#000080\",midnightblue:\"#191970\",cornsilk:\"#FFF8DC\",blanchedalmond:\"#FFEBCD\",bisque:\"#FFE4C4\",navajowhite:\"#FFDEAD\",wheat:\"#F5DEB3\",burlywood:\"#DEB887\",tan:\"#D2B48C\",rosybrown:\"#BC8F8F\",sandybrown:\"#F4A460\",goldenrod:\"#DAA520\",darkgoldenrod:\"#B8860B\",peru:\"#CD853F\",chocolate:\"#D2691E\",saddlebrown:\"#8B4513\",sienna:\"#A0522D\",brown:\"#A52A2A\",maroon:\"#800000\",white:\"#FFFFFF\",snow:\"#FFFAFA\",honeydew:\"#F0FFF0\",mintcream:\"#F5FFFA\",azure:\"#F0FFFF\",aliceblue:\"#F0F8FF\",ghostwhite:\"#F8F8FF\",whitesmoke:\"#F5F5F5\",seashell:\"#FFF5EE\",beige:\"#F5F5DC\",oldlace:\"#FDF5E6\",floralwhite:\"#FFFAF0\",ivory:\"#FFFFF0\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lavenderblush:\"#FFF0F5\",mistyrose:\"#FFE4E1\",gainsboro:\"#DCDCDC\",lightgray:\"#D3D3D3\",lightgrey:\"#D3D3D3\",silver:\"#C0C0C0\",darkgray:\"#A9A9A9\",darkgrey:\"#A9A9A9\",gray:\"#808080\",grey:\"#808080\",dimgray:\"#696969\",dimgrey:\"#696969\",lightslategray:\"#778899\",lightslategrey:\"#778899\",slategray:\"#708090\",slategrey:\"#708090\",darkslategray:\"#2F4F4F\",darkslategrey:\"#2F4F4F\",black:\"#000000\"},i.is_svg_color=function(t){return t in i.svg_colors}},function(t,e,s){var r=t(389),n=t(361),o=t(390),_=t(38),a=t(44);function l(t,e,i){if(a.isNumber(t)){var n=function(){switch(!1){case Math.floor(t)!=t:return\"%d\";case!(.1<Math.abs(t)&&Math.abs(t)<1e3):return\"%0.3f\";default:return\"%0.3e\"}}();return r.sprintf(n,t)}return\"\"+t}function p(t,e,i,n){if(null==i)return l;if(null!=n&&(t in n||e in n)){var r=e in n?e:t,o=n[r];if(a.isString(o)){if(o in s.DEFAULT_FORMATTERS)return s.DEFAULT_FORMATTERS[o];throw new Error(\"Unknown tooltip field formatter type '\"+o+\"'\")}return function(t,e,i){return o.format(t,e,i)}}return s.DEFAULT_FORMATTERS.numeral}function d(t,e,i,n){if(\"$\"==t[0]){if(t.substring(1)in n)return n[t.substring(1)];throw new Error(\"Unknown special variable '\"+t+\"'\")}var r=e.get_column(t);if(null==r)return null;if(a.isNumber(i))return r[i];var o=r[i.index];if(a.isTypedArray(o)||a.isArray(o)){if(a.isArray(o[0])){var s=o[i.dim2];return s[i.dim1]}return o[i.flat_index]}return o}s.DEFAULT_FORMATTERS={numeral:function(t,e,i){return n.format(t,e)},datetime:function(t,e,i){return o(t,e)},printf:function(t,e,i){return r.sprintf(e,t)}},s.basic_formatter=l,s.get_formatter=p,s.get_value=d,s.replace_placeholders=function(t,a,l,h,u){void 0===u&&(u={});var c=t.replace(/(?:^|[^@])([@|\\$](?:\\w+|{[^{}]+}))(?:{[^{}]+})?/g,function(t,e,i){return\"\"+e});return t=(t=(t=t.replace(/@\\$name/g,function(t){return\"@{\"+u.name+\"}\"})).replace(/(^|[^\\$])\\$(\\w+)/g,function(t,e,i){return e+\"@$\"+i})).replace(/(^|[^@])@(?:(\\$?\\w+)|{([^{}]+)})(?:{([^{}]+)})?/g,function(t,e,i,n,r){var o=d(i=null!=n?n:i,a,l,u);if(null==o)return\"\"+e+_.escape(\"???\");if(\"safe\"==r)return\"\"+e+o;var s=p(i,c,r,h);return\"\"+e+_.escape(s(o,r,u))})}},function(t,e,i){var a=t(5),l={};i.get_text_height=function(t){if(null!=l[t])return l[t];var e=a.span({style:{font:t}},\"Hg\"),i=a.div({style:{display:\"inline-block\",width:\"1px\",height:\"0px\"}}),n=a.div({},e,i);document.body.appendChild(n);try{i.style.verticalAlign=\"baseline\";var r=a.offset(i).top-a.offset(e).top;i.style.verticalAlign=\"bottom\";var o=a.offset(i).top-a.offset(e).top,s={height:o,ascent:r,descent:o-r};return l[t]=s}finally{document.body.removeChild(n)}}},function(t,e,i){var a=(\"undefined\"!=typeof window?window.requestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.webkitRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.mozRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.msRequestAnimationFrame:void 0)||function(t){return t(Date.now()),-1};i.throttle=function(t,i){var n=null,r=0,o=!1,s=function(){r=Date.now(),n=null,o=!1,t()};return function(){var t=Date.now(),e=i-(t-r);e<=0&&!o?(null!=n&&clearTimeout(n),o=!0,a(s)):n||o||(n=setTimeout(function(){return a(s)},e))}}},function(t,e,i){i.concat=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];for(var n=t.length,r=0,o=e;r<o.length;r++){var s=o[r];n+=s.length}var a=new t.constructor(n);a.set(t,0);for(var l=t.length,h=0,u=e;h<u.length;h++){var s=u[h];a.set(s,l),l+=s.length}return a}},function(t,e,i){var n=t(21),r=Object.prototype.toString;function o(t){return\"[object Number]\"===r.call(t)}function s(t){var e=typeof t;return\"function\"===e||\"object\"===e&&!!t}i.isBoolean=function(t){return!0===t||!1===t||\"[object Boolean]\"===r.call(t)},i.isNumber=o,i.isInteger=function(t){return o(t)&&isFinite(t)&&Math.floor(t)===t},i.isString=function(t){return\"[object String]\"===r.call(t)},i.isStrictNaN=function(t){return o(t)&&t!==+t},i.isFunction=function(t){return\"[object Function]\"===r.call(t)},i.isArray=function(t){return Array.isArray(t)},i.isArrayOf=function(t,e){return n.all(t,e)},i.isArrayableOf=function(t,e){for(var i=0,n=t.length;i<n;i++)if(!e(t[i]))return!1;return!0},i.isTypedArray=function(t){return null!=t&&null!=t.buffer&&t.buffer instanceof ArrayBuffer},i.isObject=s,i.isPlainObject=function(t){return s(t)&&(null==t.constructor||t.constructor===Object)}},function(t,e,i){function n(t){var e=getComputedStyle(t).fontSize;return null!=e?parseInt(e,10):null}i.getDeltaY=function(t){var e,i=-t.deltaY;if(t.target instanceof HTMLElement)switch(t.deltaMode){case t.DOM_DELTA_LINE:i*=n((e=t.target).offsetParent||document.body)||n(e)||16;break;case t.DOM_DELTA_PAGE:i*=t.target.clientHeight}return i}},function(t,e,i){var f=t(31);function v(t,e,i){var n=[t.start,t.end],r=n[0],o=n[1],s=null!=i?i:(o+r)/2,a=r-(r-s)*e,l=o-(o-s)*e;return[a,l]}function m(t,e){var i=e[0],n=e[1],r={};for(var o in t){var s=t[o],a=s.r_invert(i,n),l=a[0],h=a[1];r[o]={start:l,end:h}}return r}i.scale_highlow=v,i.get_info=m,i.scale_range=function(t,e,i,n,r){void 0===i&&(i=!0),void 0===n&&(n=!0),e=f.clamp(e,-.9,.9);var o=i?e:0,s=v(t.bbox.h_range,o,null!=r?r.x:void 0),a=s[0],l=s[1],h=m(t.xscales,[a,l]),u=n?e:0,c=v(t.bbox.v_range,u,null!=r?r.y:void 0),_=c[0],p=c[1],d=m(t.yscales,[_,p]);return{xrs:h,yrs:d,factor:e}}},function(t,e,i){var n=t(44);i.isValue=function(t){return n.isObject(t)&&\"value\"in t},i.isField=function(t){return n.isObject(t)&&\"field\"in t}},function(t,e,i){var n=t(391),r=t(19),o=t(38),s=function(i){function t(t){var e=i.call(this)||this;if(e.removed=new r.Signal0(e,\"removed\"),null==t.model)throw new Error(\"model of a view wasn't configured\");return e.model=t.model,e._parent=t.parent,e.id=t.id||o.uniqueId(),e.initialize(t),!1!==t.connect_signals&&e.connect_signals(),e}return n.__extends(t,i),t.prototype.initialize=function(t){},t.prototype.remove=function(){this._parent=void 0,this.disconnect_signals(),this.removed.emit()},t.prototype.toString=function(){return this.model.type+\"View(\"+this.id+\")\"},Object.defineProperty(t.prototype,\"parent\",{get:function(){if(void 0!==this._parent)return this._parent;throw new Error(\"parent of a view wasn't configured\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_root\",{get:function(){return null===this.parent},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"root\",{get:function(){return this.is_root?this:this.parent.root},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){},t.prototype.disconnect_signals=function(){r.Signal.disconnectReceiver(this)},t.prototype.notify_finished=function(){this.root.notify_finished()},t}(r.Signalable());i.View=s},function(t,e,i){var n=t(391),r=t(16),o=t(27),s=function(){function t(t,e){void 0===e&&(e=\"\"),this.obj=t,this.prefix=e,this.cache={};var i=t.properties[e+this.do_attr].spec;this.doit=null!==i.value;for(var n=0,r=this.attrs;n<r.length;n++){var o=r[n];this[o]=t.properties[e+o]}}return t.prototype.warm_cache=function(t){for(var e=0,i=this.attrs;e<i.length;e++){var n=i[e],r=this.obj.properties[this.prefix+n];if(void 0!==r.spec.value)this.cache[n]=r.spec.value;else{if(null==t)throw new Error(\"source is required with a vectorized visual property\");this.cache[n+\"_array\"]=r.array(t)}}},t.prototype.cache_select=function(t,e){var i,n=this.obj.properties[this.prefix+t];return void 0!==n.spec.value?this.cache[t]=i=n.spec.value:this.cache[t]=i=this.cache[t+\"_array\"][e],i},t.prototype.set_vectorize=function(t,e){null!=this.all_indices?this._set_vectorize(t,this.all_indices[e]):this._set_vectorize(t,e)},t}(),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.set_value=function(t){t.strokeStyle=this.line_color.value(),t.globalAlpha=this.line_alpha.value(),t.lineWidth=this.line_width.value(),t.lineJoin=this.line_join.value(),t.lineCap=this.line_cap.value(),t.setLineDash(this.line_dash.value()),t.setLineDashOffset(this.line_dash_offset.value())},e.prototype._set_vectorize=function(t,e){this.cache_select(\"line_color\",e),t.strokeStyle!==this.cache.line_color&&(t.strokeStyle=this.cache.line_color),this.cache_select(\"line_alpha\",e),t.globalAlpha!==this.cache.line_alpha&&(t.globalAlpha=this.cache.line_alpha),this.cache_select(\"line_width\",e),t.lineWidth!==this.cache.line_width&&(t.lineWidth=this.cache.line_width),this.cache_select(\"line_join\",e),t.lineJoin!==this.cache.line_join&&(t.lineJoin=this.cache.line_join),this.cache_select(\"line_cap\",e),t.lineCap!==this.cache.line_cap&&(t.lineCap=this.cache.line_cap),this.cache_select(\"line_dash\",e),t.getLineDash()!==this.cache.line_dash&&t.setLineDash(this.cache.line_dash),this.cache_select(\"line_dash_offset\",e),t.getLineDashOffset()!==this.cache.line_dash_offset&&t.setLineDashOffset(this.cache.line_dash_offset)},e.prototype.color_value=function(){var t=o.color2rgba(this.line_color.value(),this.line_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},e}(i.ContextProperties=s);(i.Line=h).prototype.attrs=Object.keys(r.line()),h.prototype.do_attr=\"line_color\";var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.set_value=function(t){t.fillStyle=this.fill_color.value(),t.globalAlpha=this.fill_alpha.value()},e.prototype._set_vectorize=function(t,e){this.cache_select(\"fill_color\",e),t.fillStyle!==this.cache.fill_color&&(t.fillStyle=this.cache.fill_color),this.cache_select(\"fill_alpha\",e),t.globalAlpha!==this.cache.fill_alpha&&(t.globalAlpha=this.cache.fill_alpha)},e.prototype.color_value=function(){var t=o.color2rgba(this.fill_color.value(),this.fill_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},e}(s);(i.Fill=u).prototype.attrs=Object.keys(r.fill()),u.prototype.do_attr=\"fill_color\";var c=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.cache_select=function(t,e){var i;if(\"font\"==t){a.prototype.cache_select.call(this,\"text_font_style\",e),a.prototype.cache_select.call(this,\"text_font_size\",e),a.prototype.cache_select.call(this,\"text_font\",e);var n=this.cache,r=n.text_font_style,o=n.text_font_size,s=n.text_font;this.cache.font=i=r+\" \"+o+\" \"+s}else i=a.prototype.cache_select.call(this,t,e);return i},t.prototype.font_value=function(){var t=this.text_font.value(),e=this.text_font_size.value(),i=this.text_font_style.value();return i+\" \"+e+\" \"+t},t.prototype.color_value=function(){var t=o.color2rgba(this.text_color.value(),this.text_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},t.prototype.set_value=function(t){t.font=this.font_value(),t.fillStyle=this.text_color.value(),t.globalAlpha=this.text_alpha.value(),t.textAlign=this.text_align.value(),t.textBaseline=this.text_baseline.value()},t.prototype._set_vectorize=function(t,e){this.cache_select(\"font\",e),t.font!==this.cache.font&&(t.font=this.cache.font),this.cache_select(\"text_color\",e),t.fillStyle!==this.cache.text_color&&(t.fillStyle=this.cache.text_color),this.cache_select(\"text_alpha\",e),t.globalAlpha!==this.cache.text_alpha&&(t.globalAlpha=this.cache.text_alpha),this.cache_select(\"text_align\",e),t.textAlign!==this.cache.text_align&&(t.textAlign=this.cache.text_align),this.cache_select(\"text_baseline\",e),t.textBaseline!==this.cache.text_baseline&&(t.textBaseline=this.cache.text_baseline)},t}(s);(i.Text=c).prototype.attrs=Object.keys(r.text()),c.prototype.do_attr=\"text_color\";var a=function(){function t(t){for(var e=0,i=t.mixins;e<i.length;e++){var n=i[e],r=n.split(\":\"),o=r[0],s=r[1],a=void 0===s?\"\":s,l=void 0;switch(o){case\"line\":l=h;break;case\"fill\":l=u;break;case\"text\":l=c;break;default:throw new Error(\"unknown visual: \"+o)}this[a+o]=new l(t,a)}}return t.prototype.warm_cache=function(t){for(var e in this)if(this.hasOwnProperty(e)){var i=this[e];i instanceof s&&i.warm_cache(t)}},t.prototype.set_all_indices=function(t){for(var e in this)if(this.hasOwnProperty(e)){var i=this[e];i instanceof s&&(i.all_indices=t)}},t}();i.Visuals=a},function(t,e,i){var o=t(391),s=t(0),_=t(286),j=t(14),n=t(3),p=t(8),r=t(19),a=t(34),N=t(36),m=t(29),y=t(21),b=t(32),x=t(30),d=t(44),l=t(157),F=t(200),g=t(59),h=t(51),u=function(){function t(t){this.document=t,this.session=null,this.subscribed_models=new m.Set}return t.prototype.send_event=function(t){null!=this.session&&this.session.send_event(t)},t.prototype.trigger=function(t){for(var e=0,i=this.subscribed_models.values;e<i.length;e++){var n=i[e];if(null==t.model_id||t.model_id===n){var r=this.document._all_models[n];null!=r&&r._process_event(t)}}},t}();i.EventManager=u,i.documents=[],i.DEFAULT_TITLE=\"Bokeh Application\";var c=function(){function P(){i.documents.push(this),this._init_timestamp=Date.now(),this._title=i.DEFAULT_TITLE,this._roots=[],this._all_models={},this._all_models_by_name=new m.MultiDict,this._all_models_freeze_count=0,this._callbacks=[],this.event_manager=new u(this),this.idle=new r.Signal0(this,\"idle\"),this._idle_roots=new WeakMap,this._interactive_timestamp=null,this._interactive_plot=null}return Object.defineProperty(P.prototype,\"layoutables\",{get:function(){return this._roots.filter(function(t){return t instanceof l.LayoutDOM})},enumerable:!0,configurable:!0}),Object.defineProperty(P.prototype,\"is_idle\",{get:function(){for(var t=0,e=this.layoutables;t<e.length;t++){var i=e[t];if(!this._idle_roots.has(i))return!1}return!0},enumerable:!0,configurable:!0}),P.prototype.notify_idle=function(t){this._idle_roots.set(t,!0),this.is_idle&&(j.logger.info(\"document idle at \"+(Date.now()-this._init_timestamp)+\" ms\"),this.idle.emit())},P.prototype.clear=function(){this._push_all_models_freeze();try{for(;0<this._roots.length;)this.remove_root(this._roots[0])}finally{this._pop_all_models_freeze()}},P.prototype.interactive_start=function(t){null==this._interactive_plot&&(this._interactive_plot=t,this._interactive_plot.trigger_event(new n.LODStart({}))),this._interactive_timestamp=Date.now()},P.prototype.interactive_stop=function(t){null!=this._interactive_plot&&this._interactive_plot.id===t.id&&this._interactive_plot.trigger_event(new n.LODEnd({})),this._interactive_plot=null,this._interactive_timestamp=null},P.prototype.interactive_duration=function(){return null==this._interactive_timestamp?-1:Date.now()-this._interactive_timestamp},P.prototype.destructively_move=function(t){if(t===this)throw new Error(\"Attempted to overwrite a document with itself\");t.clear();var e=y.copy(this._roots);this.clear();for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null!=r.document)throw new Error(\"Somehow we didn't detach \"+r)}if(0!==Object.keys(this._all_models).length)throw new Error(\"this._all_models still had stuff in it: \"+this._all_models);for(var o=0,s=e;o<s.length;o++){var r=s[o];t.add_root(r)}t.set_title(this._title)},P.prototype._push_all_models_freeze=function(){this._all_models_freeze_count+=1},P.prototype._pop_all_models_freeze=function(){this._all_models_freeze_count-=1,0===this._all_models_freeze_count&&this._recompute_all_models()},P.prototype._invalidate_all_models=function(){j.logger.debug(\"invalidating document models\"),0===this._all_models_freeze_count&&this._recompute_all_models()},P.prototype._recompute_all_models=function(){for(var t=new m.Set,e=0,i=this._roots;e<i.length;e++){var n=i[e];t=t.union(n.references())}for(var r=new m.Set(b.values(this._all_models)),o=r.diff(t),s=t.diff(r),a={},l=0,h=t.values;l<h.length;l++){var u=h[l];a[u.id]=u}for(var c=0,_=o.values;c<_.length;c++){var p=_[c];p.detach_document(),p instanceof g.Model&&null!=p.name&&this._all_models_by_name.remove_value(p.name,p)}for(var d=0,f=s.values;d<f.length;d++){var v=f[d];v.attach_document(this),v instanceof g.Model&&null!=v.name&&this._all_models_by_name.add_value(v.name,v)}this._all_models=a},P.prototype.roots=function(){return this._roots},P.prototype.add_root=function(t,e){if(j.logger.debug(\"Adding root: \"+t),!y.includes(this._roots,t)){this._push_all_models_freeze();try{this._roots.push(t)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new h.RootAddedEvent(this,t,e))}},P.prototype.remove_root=function(t,e){var i=this._roots.indexOf(t);if(!(i<0)){this._push_all_models_freeze();try{this._roots.splice(i,1)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new h.RootRemovedEvent(this,t,e))}},P.prototype.title=function(){return this._title},P.prototype.set_title=function(t,e){t!==this._title&&(this._title=t,this._trigger_on_change(new h.TitleChangedEvent(this,t,e)))},P.prototype.get_model_by_id=function(t){return t in this._all_models?this._all_models[t]:null},P.prototype.get_model_by_name=function(t){return this._all_models_by_name.get_one(t,\"Multiple models are named '\"+t+\"'\")},P.prototype.on_change=function(t){y.includes(this._callbacks,t)||this._callbacks.push(t)},P.prototype.remove_on_change=function(t){var e=this._callbacks.indexOf(t);0<=e&&this._callbacks.splice(e,1)},P.prototype._trigger_on_change=function(t){for(var e=0,i=this._callbacks;e<i.length;e++){var n=i[e];n(t)}},P.prototype._notify_change=function(t,e,i,n,r){\"name\"===e&&(this._all_models_by_name.remove_value(i,t),null!=n&&this._all_models_by_name.add_value(n,t));var o=null!=r?r.setter_id:void 0,s=null!=r?r.hint:void 0;this._trigger_on_change(new h.ModelChangedEvent(this,t,e,i,n,o,s))},P._references_json=function(t,e){void 0===e&&(e=!0);for(var i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o.ref();s.attributes=o.attributes_as_json(e),delete s.attributes.id,i.push(s)}return i},P._instantiate_object=function(t,e,i){var n=o.__assign({},i,{id:t,__deferred__:!0}),r=s.Models(e);return new r(n)},P._instantiate_references_json=function(t,e){for(var i={},n=0,r=t;n<r.length;n++){var o=r[n],s=o.id,a=o.type,l=o.attributes||{},h=void 0;s in e?h=e[s]:(h=P._instantiate_object(s,a,l),null!=o.subtype&&h.set_subtype(o.subtype)),i[h.id]=h}return i},P._resolve_refs=function(t,e,i){function o(t){if(a.is_ref(t)){if(t.id in e)return e[t.id];if(t.id in i)return i[t.id];throw new Error(\"reference \"+JSON.stringify(t)+\" isn't known (not in Document?)\")}return d.isArray(t)?function(t){for(var e=[],i=0,n=t;i<n.length;i++){var r=n[i];e.push(o(r))}return e}(t):d.isPlainObject(t)?function(t){var e={};for(var i in t){var n=t[i];e[i]=o(n)}return e}(t):t}return o(t)},P._initialize_references_json=function(t,e,i){for(var n={},r=0,o=t;r<o.length;r++){var s=o[r],a=s.id,l=s.attributes,h=!(a in e),u=h?i[a]:e[a],c=P._resolve_refs(l,e,i);n[u.id]=[u,c,h]}function _(h,u){var c={};function _(t){if(t instanceof p.HasProps){if(!(t.id in c)&&t.id in h){c[t.id]=!0;var e=h[t.id],i=e[1],n=e[2];for(var r in i){var o=i[r];_(o)}u(t,i,n)}}else if(d.isArray(t))for(var s=0,a=t;s<a.length;s++){var o=a[s];_(o)}else if(d.isPlainObject(t))for(var l in t){var o=t[l];_(o)}}for(var t in h){var e=h[t],i=e[0];_(i)}}_(n,function(t,e,i){i&&t.setv(e,{silent:!0})}),_(n,function(t,e,i){i&&t.finalize()})},P._event_for_attribute_change=function(t,e,i,n,r){var o=n.get_model_by_id(t.id);if(o.attribute_is_serializable(e)){var s={kind:\"ModelChanged\",model:{id:t.id,type:t.type},attr:e,new:i};return p.HasProps._json_record_references(n,i,r,!0),s}return null},P._events_to_sync_objects=function(t,e,i,n){for(var r=Object.keys(t.attributes),o=Object.keys(e.attributes),s=y.difference(r,o),a=y.difference(o,r),l=y.intersection(r,o),h=[],u=0,c=s;u<c.length;u++){var _=c[u];j.logger.warn(\"Server sent key \"+_+\" but we don't seem to have it in our JSON\")}for(var p=0,d=a;p<d.length;p++){var _=d[p],f=e.attributes[_];h.push(P._event_for_attribute_change(t,_,f,i,n))}for(var v=0,m=l;v<m.length;v++){var _=m[v],g=t.attributes[_],f=e.attributes[_];null==g&&null==f||(null==g||null==f?h.push(P._event_for_attribute_change(t,_,f,i,n)):x.isEqual(g,f)||h.push(P._event_for_attribute_change(t,_,f,i,n)))}return h.filter(function(t){return null!=t})},P._compute_patch_since_json=function(t,e){var i=e.to_json(!1);function n(t){for(var e={},i=0,n=t.roots.references;i<n.length;i++){var r=n[i];e[r.id]=r}return e}for(var r=n(t),o={},s=[],a=0,l=t.roots.root_ids;a<l.length;a++){var h=l[a];o[h]=r[h],s.push(h)}for(var u=n(i),c={},_=[],p=0,d=i.roots.root_ids;p<d.length;p++){var h=d[p];c[h]=u[h],_.push(h)}if(s.sort(),_.sort(),0<y.difference(s,_).length||0<y.difference(_,s).length)throw new Error(\"Not implemented: computing add/remove of document roots\");var f={},v=[];for(var m in e._all_models)if(m in r){var g=P._events_to_sync_objects(r[m],u[m],e,f);v=v.concat(g)}return{references:P._references_json(b.values(f),!1),events:v}},P.prototype.to_json_string=function(t){return void 0===t&&(t=!0),JSON.stringify(this.to_json(t))},P.prototype.to_json=function(t){void 0===t&&(t=!0);var e=this._roots.map(function(t){return t.id}),i=b.values(this._all_models);return{version:_.version,title:this._title,roots:{root_ids:e,references:P._references_json(i,t)}}},P.from_json_string=function(t){var e=JSON.parse(t);return P.from_json(e)},P.from_json=function(t){j.logger.debug(\"Creating Document from JSON\");var e=t.version,i=-1!==e.indexOf(\"+\")||-1!==e.indexOf(\"-\"),n=\"Library versions: JS (\"+_.version+\") / Python (\"+e+\")\";i||_.version===e?j.logger.debug(n):(j.logger.warn(\"JS/Python version mismatch\"),j.logger.warn(n));var r=t.roots,o=r.root_ids,s=r.references,a=P._instantiate_references_json(s,{});P._initialize_references_json(s,{},a);for(var l=new P,h=0,u=o;h<u.length;h++){var c=u[h];l.add_root(a[c])}return l.set_title(t.title),l},P.prototype.replace_with_json=function(t){var e=P.from_json(t);e.destructively_move(this)},P.prototype.create_json_patch_string=function(t){return JSON.stringify(this.create_json_patch(t))},P.prototype.create_json_patch=function(t){for(var e={},i=[],n=0,r=t;n<r.length;n++){var o=r[n];if(o.document!==this)throw j.logger.warn(\"Cannot create a patch using events from a different document, event had \",o.document,\" we are \",this),new Error(\"Cannot create a patch using events from a different document\");i.push(o.json(e))}return{events:i,references:P._references_json(b.values(e))}},P.prototype.apply_json_patch=function(t,e,i){for(var n,r=t.references,o=t.events,s=P._instantiate_references_json(r,this._all_models),a=0,l=o;a<l.length;a++){var h=l[a];switch(h.kind){case\"RootAdded\":case\"RootRemoved\":case\"ModelChanged\":var u=h.model.id;if(u in this._all_models)s[u]=this._all_models[u];else if(!(u in s))throw j.logger.warn(\"Got an event for unknown model \",h.model),new Error(\"event model wasn't known\")}}var c={},_={};for(var p in s){var d=s[p];p in this._all_models?c[p]=d:_[p]=d}P._initialize_references_json(r,c,_);for(var f=0,v=o;f<v.length;f++){var h=v[f];switch(h.kind){case\"ModelChanged\":var m=h.model.id;if(!(m in this._all_models))throw new Error(\"Cannot apply patch to \"+m+\" which is not in the document\");var g=this._all_models[m],y=h.attr,b=h.model.type;if(\"data\"===y&&\"ColumnDataSource\"===b){var x=N.decode_column_data(h.new,e),w=x[0],k=x[1];g.setv({_shapes:k,data:w},{setter_id:i})}else{var d=P._resolve_refs(h.new,c,_);g.setv(((n={})[y]=d,n),{setter_id:i})}break;case\"ColumnDataChanged\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot stream to \"+S+\" which is not in the document\");var C=this._all_models[S],T=N.decode_column_data(h.new,e),w=T[0],k=T[1];if(null!=h.cols){for(var A in C.data)A in w||(w[A]=C.data[A]);for(var A in C._shapes)A in k||(k[A]=C._shapes[A])}C.setv({_shapes:k,data:w},{setter_id:i,check_eq:!1});break;case\"ColumnsStreamed\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot stream to \"+S+\" which is not in the document\");var C=this._all_models[S];if(!(C instanceof F.ColumnDataSource))throw new Error(\"Cannot stream to non-ColumnDataSource\");var w=h.data,E=h.rollover;C.stream(w,E,i);break;case\"ColumnsPatched\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot patch \"+S+\" which is not in the document\");var C=this._all_models[S];if(!(C instanceof F.ColumnDataSource))throw new Error(\"Cannot patch non-ColumnDataSource\");var M=h.patches;C.patch(M,i);break;case\"RootAdded\":var O=h.model.id,z=s[O];this.add_root(z,i);break;case\"RootRemoved\":var O=h.model.id,z=s[O];this.remove_root(z,i);break;case\"TitleChanged\":this.set_title(h.title,i);break;default:throw new Error(\"Unknown patch event \"+JSON.stringify(h))}}},P}();i.Document=c},function(t,e,i){var n=t(391),o=t(8),r=function(t){this.document=t},s=function(l){function t(t,e,i,n,r,o,s){var a=l.call(this,t)||this;return a.model=e,a.attr=i,a.old=n,a.new_=r,a.setter_id=o,a.hint=s,a}return n.__extends(t,l),t.prototype.json=function(t){if(\"id\"===this.attr)throw new Error(\"'id' field should never change, whatever code just set it is wrong\");if(null!=this.hint)return this.hint.json(t);var e=this.new_,i=o.HasProps._value_to_json(this.attr,e,this.model),n={};for(var r in o.HasProps._value_record_references(e,n,!0),this.model.id in n&&this.model!==e&&delete n[this.model.id],n)t[r]=n[r];return{kind:\"ModelChanged\",model:this.model.ref(),attr:this.attr,new:i}},t}(i.DocumentChangedEvent=r);i.ModelChangedEvent=s;var a=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.column_source=e,n.patches=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"ColumnsPatched\",column_source:this.column_source,patches:this.patches}},t}(r);i.ColumnsPatchedEvent=a;var l=function(o){function t(t,e,i,n){var r=o.call(this,t)||this;return r.column_source=e,r.data=i,r.rollover=n,r}return n.__extends(t,o),t.prototype.json=function(t){return{kind:\"ColumnsStreamed\",column_source:this.column_source,data:this.data,rollover:this.rollover}},t}(r);i.ColumnsStreamedEvent=l;var h=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.title=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"TitleChanged\",title:this.title}},t}(r);i.TitleChangedEvent=h;var u=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.model=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return o.HasProps._value_record_references(this.model,t,!0),{kind:\"RootAdded\",model:this.model.ref()}},t}(r);i.RootAddedEvent=u;var c=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.model=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"RootRemoved\",model:this.model.ref()}},t}(r);i.RootRemovedEvent=c},function(t,e,i){var n=t(391);n.__exportStar(t(50),i),n.__exportStar(t(51),i)},function(t,e,n){var r=t(5);function o(t){var e=document.getElementById(t);if(null==e)throw new Error(\"Error rendering Bokeh model: could not find #\"+t+\" HTML tag\");if(!document.body.contains(e))throw new Error(\"Error rendering Bokeh model: element #\"+t+\" must be under <body>\");if(\"SCRIPT\"==e.tagName){var i=r.div({class:n.BOKEH_ROOT});r.replaceWith(e,i),e=i}return e}n.BOKEH_ROOT=\"bk-root\",n.inject_css=function(t){var e=r.link({href:t,rel:\"stylesheet\",type:\"text/css\"});document.body.appendChild(e)},n.inject_raw_css=function(t){var e=r.style({},t);document.body.appendChild(e)},n._resolve_element=function(t){var e=t.elementid;return null!=e?o(e):document.body},n._resolve_root_elements=function(t){var e={};if(null!=t.roots)for(var i in t.roots)e[i]=o(t.roots[i]);return e}},function(t,e,i){var d=t(52),f=t(14),a=t(25),v=t(38),m=t(44),g=t(57),y=t(56),b=t(53),n=t(57);i.add_document_standalone=n.add_document_standalone;var r=t(56);i.add_document_from_session=r.add_document_from_session;var o=t(55);i.embed_items_notebook=o.embed_items_notebook,i.kernels=o.kernels;var s=t(53);function l(t,e,i,n){m.isString(t)&&(t=JSON.parse(v.unescape(t)));var r={};for(var o in t){var s=t[o];r[o]=d.Document.from_json(s)}for(var a=0,l=e;a<l.length;a++){var h=l[a],u=b._resolve_element(h),c=b._resolve_root_elements(h);if(null!=h.docid)g.add_document_standalone(r[h.docid],u,c,h.use_for_title);else{if(null==h.sessionid)throw new Error(\"Error rendering Bokeh items: either 'docid' or 'sessionid' was expected.\");var _=y._get_ws_url(i,n);f.logger.debug(\"embed: computed ws url: \"+_);var p=y.add_document_from_session(_,h.sessionid,u,c,h.use_for_title);p.then(function(){console.log(\"Bokeh items were rendered successfully\")},function(t){console.log(\"Error rendering Bokeh items:\",t)})}}}i.BOKEH_ROOT=s.BOKEH_ROOT,i.inject_css=s.inject_css,i.inject_raw_css=s.inject_raw_css,i.embed_item=function(t,e){var i,n={},r=v.uuid4();n[r]=t.doc,null==e&&(e=t.target_id);var o=document.getElementById(e);null!=o&&o.classList.add(b.BOKEH_ROOT);var s={roots:((i={})[t.root_id]=e,i),docid:r};a.defer(function(){return l(n,[s])})},i.embed_items=function(t,e,i,n){a.defer(function(){return l(t,e,i,n)})}},function(t,e,r){var l=t(52),o=t(283),s=t(14),h=t(32),u=t(57),c=t(53);function a(t,e){0<e.buffers.length?t.consume(e.buffers[0].buffer):t.consume(e.content.data);var i=t.message;null!=i&&this.apply_json_patch(i.content,i.buffers)}function _(i,n){if(\"undefined\"!=typeof Jupyter&&null!=Jupyter.notebook.kernel){s.logger.info(\"Registering Jupyter comms for target \"+i);var t=Jupyter.notebook.kernel.comm_manager;try{t.register_target(i,function(t){s.logger.info(\"Registering Jupyter comms for target \"+i);var e=new o.Receiver;t.on_msg(a.bind(n,e))})}catch(t){s.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else if(n.roots()[0].id in r.kernels){s.logger.info(\"Registering JupyterLab comms for target \"+i);var e=r.kernels[n.roots()[0].id];try{e.registerCommTarget(i,function(t){s.logger.info(\"Registering JupyterLab comms for target \"+i);var e=new o.Receiver;t.onMsg=a.bind(n,e)})}catch(t){s.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else console.warn(\"Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest jupyterlab_bokeh extension is installed. In an exported notebook this warning is expected.\")}r.kernels={},r.embed_items_notebook=function(t,e){if(1!=h.size(t))throw new Error(\"embed_items_notebook expects exactly one document in docs_json\");for(var i=l.Document.from_json(h.values(t)[0]),n=0,r=e;n<r.length;n++){var o=r[n];null!=o.notebook_comms_target&&_(o.notebook_comms_target,i);var s=c._resolve_element(o),a=c._resolve_root_elements(o);u.add_document_standalone(i,s,a)}}},function(t,e,i){var s=t(1),a=t(14),l=t(57);i._get_ws_url=function(t,e){var i,n=\"ws:\";return\"https:\"==window.location.protocol&&(n=\"wss:\"),null!=e?(i=document.createElement(\"a\")).href=e:i=window.location,null!=t?\"/\"==t&&(t=\"\"):t=i.pathname.replace(/\\/+$/,\"\"),n+\"//\"+i.host+t+\"/ws\"};var h={};i.add_document_from_session=function(t,e,i,n,r){void 0===n&&(n={}),void 0===r&&(r=!1);var o=window.location.search.substr(1);return function(t,e,i){t in h||(h[t]={});var n=h[t];return e in n||(n[e]=s.pull_session(t,e,i)),n[e]}(t,e,o).then(function(t){return l.add_document_standalone(t.document,i,n,r)},function(t){throw a.logger.error(\"Failed to load Bokeh session \"+e+\": \"+t),t})}},function(t,e,i){var h=t(52),u=t(5),c=t(0),_=t(53);i.add_document_standalone=function(t,o,s,e){void 0===s&&(s={}),void 0===e&&(e=!1);var a={};function i(t){var e;t.id in s?e=s[t.id]:o.classList.contains(_.BOKEH_ROOT)?e=o:(e=u.div({class:_.BOKEH_ROOT}),o.appendChild(e));var i,n,r=(n=new(i=t).default_view({model:i,parent:null}),c.index[i.id]=n);r.renderTo(e),a[t.id]=r}for(var n=0,r=t.roots();n<r.length;n++){var l=r[n];i(l)}return e&&(window.document.title=t.title()),t.on_change(function(t){t instanceof h.RootAddedEvent?i(t.model):t instanceof h.RootRemovedEvent?function(t){var e=t.id;if(e in a){var i=a[e];i.remove(),delete a[e],delete c.index[e]}}(t.model):e&&t instanceof h.TitleChangedEvent&&(window.document.title=t.title)}),a}},function(t,e,i){t(280);var n=t(286);i.version=n.version;var r=t(54);i.embed=r;var o=t(281);i.protocol=o;var s=t(285);i._testing=s;var a=t(14);i.logger=a.logger,i.set_log_level=a.set_log_level;var l=t(18);i.settings=l.settings;var h=t(0);i.Models=h.Models,i.index=h.index;var u=t(52);i.documents=u.documents;var c=t(284);i.safely=c.safely},function(t,e,i){var n=t(391),r=t(8),o=t(15),s=t(44),a=t(32),l=t(14),h=function(_){function i(t){return _.call(this,t)||this}return n.__extends(i,_),i.initClass=function(){this.prototype.type=\"Model\",this.define({tags:[o.Array,[]],name:[o.String],js_property_callbacks:[o.Any,{}],js_event_callbacks:[o.Any,{}],subscribed_events:[o.Array,[]]})},i.prototype.connect_signals=function(){var i=this;for(var t in _.prototype.connect_signals.call(this),this.js_property_callbacks)for(var e=this.js_property_callbacks[t],n=t.split(\":\"),r=n[0],o=n[1],s=void 0===o?null:o,a=function(t){var e=null!=s?l.properties[s][r]:l[r];l.connect(e,function(){return t.execute(i,{})})},l=this,h=0,u=e;h<u.length;h++){var c=u[h];a(c)}this.connect(this.properties.js_event_callbacks.change,function(){return i._update_event_callbacks}),this.connect(this.properties.subscribed_events.change,function(){return i._update_event_callbacks})},i.prototype._process_event=function(e){if(e.is_applicable_to(this)){e=e._customize_event(this);for(var t=0,i=this.js_event_callbacks[e.event_name]||[];t<i.length;t++){var n=i[t];n.execute(e,{})}null!=this.document&&this.subscribed_events.some(function(t){return t==e.event_name})&&this.document.event_manager.send_event(e)}},i.prototype.trigger_event=function(t){null!=this.document&&this.document.event_manager.trigger(t.set_model_id(this.id))},i.prototype._update_event_callbacks=function(){null!=this.document?this.document.event_manager.subscribed_models.add(this.id):l.logger.warn(\"WARNING: Document not defined for updating event callbacks\")},i.prototype._doc_attached=function(){a.isEmpty(this.js_event_callbacks)&&a.isEmpty(this.subscribed_events)||this._update_event_callbacks()},i.prototype.select=function(e){if(s.isString(e))return this.references().filter(function(t){return t instanceof i&&t.name===e});if(e.prototype instanceof r.HasProps)return this.references().filter(function(t){return t instanceof e});throw new Error(\"invalid selector\")},i.prototype.select_one=function(t){var e=this.select(t);switch(e.length){case 0:return null;case 1:return e[0];default:throw new Error(\"found more than one object matching given selector\")}},i}(r.HasProps);(i.Model=h).initClass()},function(t,e,i){var n=t(391),r=t(12),o=t(15),s=t(33),a=t(32),l=t(189),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._get_size=function(){throw new Error(\"not implemented\")},e.prototype.get_size=function(){return this.model.visible?Math.round(this._get_size()):0},e.prototype.set_data=function(t){var e,i,n=this.model.materialize_dataspecs(t);if(a.extend(this,n),this.plot_model.use_map){var r=this;null!=r._x&&(e=s.project_xy(r._x,r._y),r._x=e[0],r._y=e[1]),null!=r._xs&&(i=s.project_xsys(r._xs,r._ys),r._xs=i[0],r._ys=i[1])}},e}(l.RendererView);i.AnnotationView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Annotation\",this.define({plot:[o.Instance]}),this.override({level:\"annotation\"})},t.prototype.add_panel=function(t){if(null==this.panel||t!==this.panel.side){var e=new r.SidePanel({side:t});e.attach_document(this.document),this.set_panel(e)}},t.prototype.set_panel=function(t){this.panel=t,this.level=\"overlay\"},t}(l.Renderer);(i.Annotation=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(62),s=t(200),a=t(15),l=t(31),h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),null==this.model.source&&(this.model.source=new s.ColumnDataSource),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n,r=this.plot_view.frame;return\"data\"==this.model.start_units?(t=r.xscales[this.model.x_range_name].v_compute(this._x_start),e=r.yscales[this.model.y_range_name].v_compute(this._y_start)):(t=r.xview.v_compute(this._x_start),e=r.yview.v_compute(this._y_start)),\"data\"==this.model.end_units?(i=r.xscales[this.model.x_range_name].v_compute(this._x_end),n=r.yscales[this.model.y_range_name].v_compute(this._y_end)):(i=r.xview.v_compute(this._x_end),n=r.yview.v_compute(this._y_end)),[[t,e],[i,n]]},t.prototype.render=function(){if(this.model.visible){var t=this.plot_view.canvas_view.ctx;t.save();var e=this._map_data(),i=e[0],n=e[1];null!=this.model.end&&this._arrow_head(t,\"render\",this.model.end,i,n),null!=this.model.start&&this._arrow_head(t,\"render\",this.model.start,n,i),t.beginPath();var r=this.plot_model.canvas.bbox.rect,o=r.x,s=r.y,a=r.width,l=r.height;t.rect(o,s,a,l),null!=this.model.end&&this._arrow_head(t,\"clip\",this.model.end,i,n),null!=this.model.start&&this._arrow_head(t,\"clip\",this.model.start,n,i),t.closePath(),t.clip(),this._arrow_body(t,i,n),t.restore()}},t.prototype._arrow_head=function(t,e,i,n,r){for(var o=0,s=this._x_start.length;o<s;o++){var a=Math.PI/2+l.atan2([n[0][o],n[1][o]],[r[0][o],r[1][o]]);t.save(),t.translate(r[0][o],r[1][o]),t.rotate(a),\"render\"==e?i.render(t,o):\"clip\"==e&&i.clip(t,o),t.restore()}},t.prototype._arrow_body=function(t,e,i){if(this.visuals.line.doit)for(var n=0,r=this._x_start.length;n<r;n++)this.visuals.line.set_vectorize(t,n),t.beginPath(),t.moveTo(e[0][n],e[1][n]),t.lineTo(i[0][n],i[1][n]),t.stroke()},t}(r.AnnotationView);i.ArrowView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Arrow\",this.prototype.default_view=h,this.mixins([\"line\"]),this.define({x_start:[a.NumberSpec],y_start:[a.NumberSpec],start_units:[a.String,\"data\"],start:[a.Instance,null],x_end:[a.NumberSpec],y_end:[a.NumberSpec],end_units:[a.String,\"data\"],end:[a.Instance,function(){return new o.OpenHead({})}],source:[a.Instance],x_range_name:[a.String,\"default\"],y_range_name:[a.String,\"default\"]})},t}(r.Annotation);(i.Arrow=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(49),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ArrowHead\",this.define({size:[s.Number,25]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.visuals=new o.Visuals(this)},t}(r.Annotation);(i.ArrowHead=a).initClass();var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"OpenHead\",this.mixins([\"line\"])},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(0,0),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.stroke())},t}(a);(i.OpenHead=l).initClass();var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NormalHead\",this.mixins([\"line\",\"fill\"]),this.override({fill_color:\"black\"})},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._normal(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._normal(t,e),t.stroke())},t.prototype._normal=function(t,e){t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.closePath()},t}(a);(i.NormalHead=h).initClass();var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"VeeHead\",this.mixins([\"line\",\"fill\"]),this.override({fill_color:\"black\"})},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(0,.5*this.size),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._vee(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._vee(t,e),t.stroke())},t.prototype._vee=function(t,e){t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.lineTo(0,.5*this.size),t.closePath()},t}(a);(i.VeeHead=u).initClass();var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TeeHead\",this.mixins([\"line\"])},t.prototype.render=function(t,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(.5*this.size,0),t.lineTo(-.5*this.size,0),t.stroke())},t.prototype.clip=function(t,e){},t}(a);(i.TeeHead=c).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(200),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n=this.plot_view.frame,r=this.model.dimension,o=n.xscales[this.model.x_range_name],s=n.yscales[this.model.y_range_name],a=\"height\"==r?s:o,l=\"height\"==r?o:s,h=\"height\"==r?n.yview:n.xview,u=\"height\"==r?n.xview:n.yview;t=\"data\"==this.model.lower.units?a.v_compute(this._lower):h.v_compute(this._lower),e=\"data\"==this.model.upper.units?a.v_compute(this._upper):h.v_compute(this._upper),i=\"data\"==this.model.base.units?l.v_compute(this._base):u.v_compute(this._base);var c=\"height\"==r?[1,0]:[0,1],_=c[0],p=c[1],d=[t,i],f=[e,i];this._lower_sx=d[_],this._lower_sy=d[p],this._upper_sx=f[_],this._upper_sy=f[p]},t.prototype.render=function(){if(this.model.visible){this._map_data();var t=this.plot_view.canvas_view.ctx;t.beginPath(),t.moveTo(this._lower_sx[0],this._lower_sy[0]);for(var e=0,i=this._lower_sx.length;e<i;e++)t.lineTo(this._lower_sx[e],this._lower_sy[e]);for(var n=this._upper_sx.length-1,e=n;0<=e;e--)t.lineTo(this._upper_sx[e],this._upper_sy[e]);t.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(t),t.fill()),t.beginPath(),t.moveTo(this._lower_sx[0],this._lower_sy[0]);for(var e=0,i=this._lower_sx.length;e<i;e++)t.lineTo(this._lower_sx[e],this._lower_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke()),t.beginPath(),t.moveTo(this._upper_sx[0],this._upper_sy[0]);for(var e=0,i=this._upper_sx.length;e<i;e++)t.lineTo(this._upper_sx[e],this._upper_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke())}},t}(r.AnnotationView);i.BandView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Band\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({lower:[s.DistanceSpec],upper:[s.DistanceSpec],base:[s.DistanceSpec],dimension:[s.Dimension,\"height\"],source:[s.Instance,function(){return new o.ColumnDataSource}],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t}(r.Annotation);(i.Band=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(19),l=t(5),s=t(15),a=t(24);i.EDGE_TOLERANCE=2.5;var h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),this.el.classList.add(\"bk-shading\"),l.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?(this.connect(this.model.change,function(){return t.render()}),this.connect(this.model.data_update,function(){return t.render()})):(this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.data_update,function(){return t.plot_view.request_render()}))},t.prototype.render=function(){var o=this;if(this.model.visible||\"css\"!=this.model.render_mode||l.hide(this.el),this.model.visible)if(null!=this.model.left||null!=this.model.right||null!=this.model.top||null!=this.model.bottom){var t=this.plot_model.frame,e=t.xscales[this.model.x_range_name],i=t.yscales[this.model.y_range_name],n=function(t,e,i,n,r){return null!=t?o.model.screen?t:\"data\"==e?i.compute(t):n.compute(t):r};this.sleft=n(this.model.left,this.model.left_units,e,t.xview,t._left.value),this.sright=n(this.model.right,this.model.right_units,e,t.xview,t._right.value),this.stop=n(this.model.top,this.model.top_units,i,t.yview,t._top.value),this.sbottom=n(this.model.bottom,this.model.bottom_units,i,t.yview,t._bottom.value);var r=\"css\"==this.model.render_mode?this._css_box.bind(this):this._canvas_box.bind(this);r(this.sleft,this.sright,this.sbottom,this.stop)}else l.hide(this.el)},t.prototype._css_box=function(t,e,i,n){var r=this.model.properties.line_width.value(),o=Math.floor(e-t)-r,s=Math.floor(i-n)-r;this.el.style.left=t+\"px\",this.el.style.width=o+\"px\",this.el.style.top=n+\"px\",this.el.style.height=s+\"px\",this.el.style.borderWidth=r+\"px\",this.el.style.borderColor=this.model.properties.line_color.value(),this.el.style.backgroundColor=this.model.properties.fill_color.value(),this.el.style.opacity=this.model.properties.fill_alpha.value();var a=this.model.properties.line_dash.value().length<2?\"solid\":\"dashed\";this.el.style.borderStyle=a,l.show(this.el)},t.prototype._canvas_box=function(t,e,i,n){var r=this.plot_view.canvas_view.ctx;r.save(),r.beginPath(),r.rect(t,n,e-t,i-n),this.visuals.fill.set_value(r),r.fill(),this.visuals.line.set_value(r),r.stroke(),r.restore()},t.prototype.interactive_bbox=function(){var t=this.model.properties.line_width.value()+i.EDGE_TOLERANCE;return new a.BBox({x0:this.sleft-t,y0:this.stop-t,x1:this.sright+t,y1:this.sbottom+t})},t.prototype.interactive_hit=function(t,e){if(null==this.model.in_cursor)return!1;var i=this.interactive_bbox();return i.contains(t,e)},t.prototype.cursor=function(t,e){return Math.abs(t-this.sleft)<3||Math.abs(t-this.sright)<3?this.model.ew_cursor:Math.abs(e-this.sbottom)<3||Math.abs(e-this.stop)<3?this.model.ns_cursor:t>this.sleft&&t<this.sright&&e>this.stop&&e<this.sbottom?this.model.in_cursor:null},t}(r.AnnotationView);i.BoxAnnotationView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BoxAnnotation\",this.prototype.default_view=h,this.mixins([\"line\",\"fill\"]),this.define({render_mode:[s.RenderMode,\"canvas\"],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],top:[s.Number,null],top_units:[s.SpatialUnits,\"data\"],bottom:[s.Number,null],bottom_units:[s.SpatialUnits,\"data\"],left:[s.Number,null],left_units:[s.SpatialUnits,\"data\"],right:[s.Number,null],right_units:[s.SpatialUnits,\"data\"]}),this.internal({screen:[s.Boolean,!1],ew_cursor:[s.String,null],ns_cursor:[s.String,null],in_cursor:[s.String,null]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.data_update=new o.Signal0(this,\"data_update\")},t.prototype.update=function(t){var e=t.left,i=t.right,n=t.top,r=t.bottom;this.setv({left:e,right:i,top:n,bottom:r,screen:!0},{silent:!0}),this.data_update.emit()},t}(r.Annotation);(i.BoxAnnotation=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(207),s=t(104),u=t(167),a=t(192),l=t(193),h=t(184),c=t(15),_=t(41),p=t(21),g=t(22),d=t(32),f=t(44),v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._set_canvas_image()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.visible.change,function(){return t.plot_view.request_render()}),this.connect(this.model.ticker.change,function(){return t.plot_view.request_render()}),this.connect(this.model.formatter.change,function(){return t.plot_view.request_render()}),null!=this.model.color_mapper&&this.connect(this.model.color_mapper.change,function(){t._set_canvas_image(),t.plot_view.request_render()})},t.prototype._get_size=function(){if(null==this.model.color_mapper)return 0;var t=this.compute_legend_dimensions(),e=this.model.panel.side;switch(e){case\"above\":case\"below\":return t.height;case\"left\":case\"right\":return t.width;default:throw new Error(\"unreachable code\")}},t.prototype._set_canvas_image=function(){var t,e;if(null!=this.model.color_mapper){var i,n,r=this.model.color_mapper.palette;switch(\"vertical\"==this.model.orientation&&(r=p.reversed(r)),this.model.orientation){case\"vertical\":t=[1,r.length],i=t[0],n=t[1];break;case\"horizontal\":e=[r.length,1],i=e[0],n=e[1];break;default:throw new Error(\"unreachable code\")}var o=document.createElement(\"canvas\");o.width=i,o.height=n;var s=o.getContext(\"2d\"),a=s.getImageData(0,0,i,n),l=new u.LinearColorMapper({palette:r}).rgba_mapper,h=l.v_compute(p.range(0,r.length));a.data.set(h),s.putImageData(a,0,0),this.image=o}},t.prototype.compute_legend_dimensions=function(){var t,e,i=this.model._computed_image_dimensions(),n=[i.height,i.width],r=n[0],o=n[1],s=this._get_label_extent(),a=this.model._title_extent(),l=this.model._tick_extent(),h=this.model.padding;switch(this.model.orientation){case\"vertical\":t=r+a+2*h,e=o+l+s+2*h;break;case\"horizontal\":t=r+a+l+s+2*h,e=o+2*h;break;default:throw new Error(\"unreachable code\")}return{width:e,height:t}},t.prototype.compute_legend_location=function(){var t,e,i=this.compute_legend_dimensions(),n=[i.height,i.width],r=n[0],o=n[1],s=this.model.margin,a=null!=this.model.panel?this.model.panel:this.plot_view.frame,l=a.bbox.ranges,h=l[0],u=l[1],c=this.model.location;if(f.isString(c))switch(c){case\"top_left\":t=h.start+s,e=u.start+s;break;case\"top_center\":t=(h.end+h.start)/2-o/2,e=u.start+s;break;case\"top_right\":t=h.end-s-o,e=u.start+s;break;case\"bottom_right\":t=h.end-s-o,e=u.end-s-r;break;case\"bottom_center\":t=(h.end+h.start)/2-o/2,e=u.end-s-r;break;case\"bottom_left\":t=h.start+s,e=u.end-s-r;break;case\"center_left\":t=h.start+s,e=(u.end+u.start)/2-r/2;break;case\"center\":t=(h.end+h.start)/2-o/2,e=(u.end+u.start)/2-r/2;break;case\"center_right\":t=h.end-s-o,e=(u.end+u.start)/2-r/2;break;default:throw new Error(\"unreachable code\")}else{if(!f.isArray(c)||2!=c.length)throw new Error(\"unreachable code\");var _=c[0],p=c[1];t=a.xview.compute(_),e=a.yview.compute(p)-r}return{sx:t,sy:e}},t.prototype.render=function(){if(this.model.visible&&null!=this.model.color_mapper){var t=this.plot_view.canvas_view.ctx;t.save();var e=this.compute_legend_location(),i=e.sx,n=e.sy;t.translate(i,n),this._draw_bbox(t);var r=this._get_image_offset();if(t.translate(r.x,r.y),this._draw_image(t),null!=this.model.color_mapper.low&&null!=this.model.color_mapper.high){var o=this.model.tick_info();this._draw_major_ticks(t,o),this._draw_minor_ticks(t,o),this._draw_major_labels(t,o)}this.model.title&&this._draw_title(t),t.restore()}},t.prototype._draw_bbox=function(t){var e=this.compute_legend_dimensions();t.save(),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(0,0,e.width,e.height)),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()},t.prototype._draw_image=function(t){var e=this.model._computed_image_dimensions();t.save(),t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.scale_alpha,t.drawImage(this.image,0,0,e.width,e.height),this.visuals.bar_line.doit&&(this.visuals.bar_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()},t.prototype._draw_major_ticks=function(t,e){if(this.visuals.major_tick_line.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=e.coords.major,u=h[0],c=h[1],_=this.model.major_tick_in,p=this.model.major_tick_out;t.save(),t.translate(a,l),this.visuals.major_tick_line.set_value(t);for(var d=0,f=u.length;d<f;d++)t.beginPath(),t.moveTo(Math.round(u[d]+n*p),Math.round(c[d]+r*p)),t.lineTo(Math.round(u[d]-n*_),Math.round(c[d]-r*_)),t.stroke();t.restore()}},t.prototype._draw_minor_ticks=function(t,e){if(this.visuals.minor_tick_line.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=e.coords.minor,u=h[0],c=h[1],_=this.model.minor_tick_in,p=this.model.minor_tick_out;t.save(),t.translate(a,l),this.visuals.minor_tick_line.set_value(t);for(var d=0,f=u.length;d<f;d++)t.beginPath(),t.moveTo(Math.round(u[d]+n*p),Math.round(c[d]+r*p)),t.lineTo(Math.round(u[d]-n*_),Math.round(c[d]-r*_)),t.stroke();t.restore()}},t.prototype._draw_major_labels=function(t,e){if(this.visuals.major_label_text.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=this.model.label_standoff+this.model._tick_extent(),u=[h*n,h*r],c=u[0],_=u[1],p=e.coords.major,d=p[0],f=p[1],v=e.labels.major;this.visuals.major_label_text.set_value(t),t.save(),t.translate(a+c,l+_);for(var m=0,g=d.length;m<g;m++)t.fillText(v[m],Math.round(d[m]+n*this.model.label_standoff),Math.round(f[m]+r*this.model.label_standoff));t.restore()}},t.prototype._draw_title=function(t){this.visuals.title_text.doit&&(t.save(),this.visuals.title_text.set_value(t),t.fillText(this.model.title,0,-this.model.title_standoff),t.restore())},t.prototype._get_label_extent=function(){var t,e=this.model.tick_info().labels.major;if(null==this.model.color_mapper.low||null==this.model.color_mapper.high||d.isEmpty(e))t=0;else{var i=this.plot_view.canvas_view.ctx;switch(i.save(),this.visuals.major_label_text.set_value(i),this.model.orientation){case\"vertical\":t=p.max(e.map(function(t){return i.measureText(t.toString()).width}));break;case\"horizontal\":t=_.get_text_height(this.visuals.major_label_text.font_value()).height;break;default:throw new Error(\"unreachable code\")}t+=this.model.label_standoff,i.restore()}return t},t.prototype._get_image_offset=function(){var t=this.model.padding,e=this.model.padding+this.model._title_extent();return{x:t,y:e}},t}(r.AnnotationView);i.ColorBarView=v;var m=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ColorBar\",this.prototype.default_view=v,this.mixins([\"text:major_label_\",\"text:title_\",\"line:major_tick_\",\"line:minor_tick_\",\"line:border_\",\"line:bar_\",\"fill:background_\"]),this.define({location:[c.Any,\"top_right\"],orientation:[c.Orientation,\"vertical\"],title:[c.String],title_standoff:[c.Number,2],width:[c.Any,\"auto\"],height:[c.Any,\"auto\"],scale_alpha:[c.Number,1],ticker:[c.Instance,function(){return new o.BasicTicker}],formatter:[c.Instance,function(){return new s.BasicTickFormatter}],major_label_overrides:[c.Any,{}],color_mapper:[c.Instance],label_standoff:[c.Number,5],margin:[c.Number,30],padding:[c.Number,10],major_tick_in:[c.Number,5],major_tick_out:[c.Number,0],minor_tick_in:[c.Number,0],minor_tick_out:[c.Number,0]}),this.override({background_fill_color:\"#ffffff\",background_fill_alpha:.95,bar_line_color:null,border_line_color:null,major_label_text_align:\"center\",major_label_text_baseline:\"middle\",major_label_text_font_size:\"8pt\",major_tick_line_color:\"#ffffff\",minor_tick_line_color:null,title_text_font_size:\"10pt\",title_text_font_style:\"italic\"})},t.prototype._normals=function(){return\"vertical\"==this.orientation?[1,0]:[0,1]},t.prototype._title_extent=function(){var t=this.title_text_font+\" \"+this.title_text_font_size+\" \"+this.title_text_font_style,e=this.title?_.get_text_height(t).height+this.title_standoff:0;return e},t.prototype._tick_extent=function(){return null!=this.color_mapper.low&&null!=this.color_mapper.high?p.max([this.major_tick_out,this.minor_tick_out]):0},t.prototype._computed_image_dimensions=function(){var t,e,i=this.plot.plot_canvas.frame._height.value,n=this.plot.plot_canvas.frame._width.value,r=this._title_extent();switch(this.orientation){case\"vertical\":\"auto\"==this.height?null!=this.panel?t=i-2*this.padding-r:(t=p.max([25*this.color_mapper.palette.length,.3*i]),t=p.min([t,.8*i-2*this.padding-r])):t=this.height,e=\"auto\"==this.width?25:this.width;break;case\"horizontal\":t=\"auto\"==this.height?25:this.height,\"auto\"==this.width?null!=this.panel?e=n-2*this.padding:(e=p.max([25*this.color_mapper.palette.length,.3*n]),e=p.min([e,.8*n-2*this.padding])):e=this.width;break;default:throw new Error(\"unreachable code\")}return{width:e,height:t}},t.prototype._tick_coordinate_scale=function(t){var e={source_range:new h.Range1d({start:this.color_mapper.low,end:this.color_mapper.high}),target_range:new h.Range1d({start:0,end:t})};switch(this.color_mapper.type){case\"LinearColorMapper\":return new a.LinearScale(e);case\"LogColorMapper\":return new l.LogScale(e);default:throw new Error(\"unreachable code\")}},t.prototype._format_major_labels=function(t,e){for(var i=this.formatter.doFormat(t,null),n=0,r=e.length;n<r;n++)e[n]in this.major_label_overrides&&(i[n]=this.major_label_overrides[e[n]]);return i},t.prototype.tick_info=function(){var e,t=this._computed_image_dimensions();switch(this.orientation){case\"vertical\":e=t.height;break;case\"horizontal\":e=t.width;break;default:throw new Error(\"unreachable code\")}for(var i=this._tick_coordinate_scale(e),n=this._normals(),r=n[0],o=n[1],s=[this.color_mapper.low,this.color_mapper.high],a=s[0],l=s[1],h=this.ticker.get_ticks(a,l,null,null,this.ticker.desired_num_ticks),u=h.major,c=h.minor,_=[[],[]],p=[[],[]],d=0,f=u.length;d<f;d++)u[d]<a||u[d]>l||(_[r].push(u[d]),_[o].push(0));for(var d=0,f=c.length;d<f;d++)c[d]<a||c[d]>l||(p[r].push(c[d]),p[o].push(0));var v={major:this._format_major_labels(_[r],u)},m={major:[[],[]],minor:[[],[]]};return m.major[r]=i.v_compute(_[r]),m.minor[r]=i.v_compute(p[r]),m.major[o]=_[o],m.minor[o]=p[o],\"vertical\"==this.orientation&&(m.major[r]=g.map(m.major[r],function(t){return e-t}),m.minor[r]=g.map(m.minor[r],function(t){return e-t})),{coords:m,labels:v}},t}(r.Annotation);(i.ColorBar=m).initClass()},function(t,e,i){var n=t(60);i.Annotation=n.Annotation;var r=t(61);i.Arrow=r.Arrow;var o=t(62);i.ArrowHead=o.ArrowHead;var s=t(62);i.OpenHead=s.OpenHead;var a=t(62);i.NormalHead=a.NormalHead;var l=t(62);i.TeeHead=l.TeeHead;var h=t(62);i.VeeHead=h.VeeHead;var u=t(63);i.Band=u.Band;var c=t(64);i.BoxAnnotation=c.BoxAnnotation;var _=t(65);i.ColorBar=_.ColorBar;var p=t(67);i.Label=p.Label;var d=t(68);i.LabelSet=d.LabelSet;var f=t(69);i.Legend=f.Legend;var v=t(70);i.LegendItem=v.LegendItem;var m=t(71);i.PolyAnnotation=m.PolyAnnotation;var g=t(72);i.Slope=g.Slope;var y=t(73);i.Span=y.Span;var b=t(74);i.TextAnnotation=b.TextAnnotation;var x=t(75);i.Title=x.Title;var w=t(76);i.ToolbarPanel=w.ToolbarPanel;var k=t(77);i.Tooltip=k.Tooltip;var S=t(78);i.Whisker=S.Whisker},function(t,e,i){var n=t(391),r=t(74),a=t(5),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.visuals.warm_cache()},t.prototype._get_size=function(){var t=this.plot_view.canvas_view.ctx;if(this.visuals.text.set_value(t),this.model.panel.is_horizontal){var e=t.measureText(this.model.text).ascent;return e}var i=t.measureText(this.model.text).width;return i},t.prototype.render=function(){if(this.model.visible||\"css\"!=this.model.render_mode||a.hide(this.el),this.model.visible){var t;switch(this.model.angle_units){case\"rad\":t=-this.model.angle;break;case\"deg\":t=-this.model.angle*Math.PI/180;break;default:throw new Error(\"unreachable code\")}var e=null!=this.model.panel?this.model.panel:this.plot_view.frame,i=this.plot_view.frame.xscales[this.model.x_range_name],n=this.plot_view.frame.yscales[this.model.y_range_name],r=\"data\"==this.model.x_units?i.compute(this.model.x):e.xview.compute(this.model.x),o=\"data\"==this.model.y_units?n.compute(this.model.y):e.yview.compute(this.model.y);r+=this.model.x_offset,o-=this.model.y_offset;var s=\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this);s(this.plot_view.canvas_view.ctx,this.model.text,r,o,t)}},t}(r.TextAnnotationView);i.LabelView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Label\",this.prototype.default_view=s,this.mixins([\"text\",\"line:border_\",\"fill:background_\"]),this.define({x:[o.Number],x_units:[o.SpatialUnits,\"data\"],y:[o.Number],y_units:[o.SpatialUnits,\"data\"],text:[o.String],angle:[o.Angle,0],angle_units:[o.AngleUnits,\"rad\"],x_offset:[o.Number,0],y_offset:[o.Number,0],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({background_fill_color:null,border_line_color:null})},t}(r.TextAnnotation);(i.Label=l).initClass()},function(t,e,i){var n=t(391),r=t(74),o=t(200),u=t(5),s=t(15),a=function(r){function t(){return null!==r&&r.apply(this,arguments)||this}return n.__extends(t,r),t.prototype.initialize=function(t){if(r.prototype.initialize.call(this,t),this.set_data(this.model.source),\"css\"==this.model.render_mode)for(var e=0,i=this._text.length;e<i;e++){var n=u.div({class:\"bk-annotation-child\",style:{display:\"none\"}});this.el.appendChild(n)}},t.prototype.connect_signals=function(){var t=this;r.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?(this.connect(this.model.change,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.streaming,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.patching,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.change,function(){t.set_data(t.model.source),t.render()})):(this.connect(this.model.change,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.streaming,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.patching,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.change,function(){t.set_data(t.model.source),t.plot_view.request_render()}))},t.prototype.set_data=function(t){r.prototype.set_data.call(this,t),this.visuals.warm_cache(t)},t.prototype._map_data=function(){var t=this.plot_view.frame.xscales[this.model.x_range_name],e=this.plot_view.frame.yscales[this.model.y_range_name],i=null!=this.model.panel?this.model.panel:this.plot_view.frame,n=\"data\"==this.model.x_units?t.v_compute(this._x):i.xview.v_compute(this._x),r=\"data\"==this.model.y_units?e.v_compute(this._y):i.yview.v_compute(this._y);return[n,r]},t.prototype.render=function(){if(this.model.visible||\"css\"!=this.model.render_mode||u.hide(this.el),this.model.visible)for(var t=\"canvas\"==this.model.render_mode?this._v_canvas_text.bind(this):this._v_css_text.bind(this),e=this.plot_view.canvas_view.ctx,i=this._map_data(),n=i[0],r=i[1],o=0,s=this._text.length;o<s;o++)t(e,o,this._text[o],n[o]+this._x_offset[o],r[o]-this._y_offset[o],this._angle[o])},t.prototype._get_size=function(){var t=this.plot_view.canvas_view.ctx;switch(this.visuals.text.set_value(t),this.model.panel.side){case\"above\":case\"below\":var e=t.measureText(this._text[0]).ascent;return e;case\"left\":case\"right\":var i=t.measureText(this._text[0]).width;return i;default:throw new Error(\"unreachable code\")}},t.prototype._v_canvas_text=function(t,e,i,n,r,o){this.visuals.text.set_vectorize(t,e);var s=this._calculate_bounding_box_dimensions(t,i);t.save(),t.beginPath(),t.translate(n,r),t.rotate(o),t.rect(s[0],s[1],s[2],s[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(i,0,0)),t.restore()},t.prototype._v_css_text=function(t,e,i,n,r,o){var s=this.el.children[e];s.textContent=i,this.visuals.text.set_vectorize(t,e);var a=this._calculate_bounding_box_dimensions(t,i),l=this.visuals.border_line.line_dash.value(),h=l.length<2?\"solid\":\"dashed\";this.visuals.border_line.set_vectorize(t,e),this.visuals.background_fill.set_vectorize(t,e),s.style.position=\"absolute\",s.style.left=n+a[0]+\"px\",s.style.top=r+a[1]+\"px\",s.style.color=\"\"+this.visuals.text.text_color.value(),s.style.opacity=\"\"+this.visuals.text.text_alpha.value(),s.style.font=\"\"+this.visuals.text.font_value(),s.style.lineHeight=\"normal\",o&&(s.style.transform=\"rotate(\"+o+\"rad)\"),this.visuals.background_fill.doit&&(s.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(s.style.borderStyle=\"\"+h,s.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",s.style.borderColor=\"\"+this.visuals.border_line.color_value()),u.show(s)},t}(r.TextAnnotationView);i.LabelSetView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LabelSet\",this.prototype.default_view=a,this.mixins([\"text\",\"line:border_\",\"fill:background_\"]),this.define({x:[s.NumberSpec],y:[s.NumberSpec],x_units:[s.SpatialUnits,\"data\"],y_units:[s.SpatialUnits,\"data\"],text:[s.StringSpec,{field:\"text\"}],angle:[s.AngleSpec,0],x_offset:[s.NumberSpec,{value:0}],y_offset:[s.NumberSpec,{value:0}],source:[s.Instance,function(){return new o.ColumnDataSource}],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.override({background_fill_color:null,border_line_color:null})},t}(r.TextAnnotation);(i.LabelSet=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(15),s=t(19),M=t(41),O=t(24),z=t(21),P=t(32),j=t(44),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.cursor=function(t,e){return\"none\"==this.model.click_policy?null:\"pointer\"},Object.defineProperty(t.prototype,\"legend_padding\",{get:function(){return null!=this.visuals.border_line.line_color.value()?this.model.padding:0},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.item_change,function(){return t.plot_view.request_render()})},t.prototype.compute_legend_bbox=function(){var t=this.model.get_legend_names(),e=this.model,i=e.glyph_height,n=e.glyph_width,r=this.model,o=r.label_height,s=r.label_width;this.max_label_height=z.max([M.get_text_height(this.visuals.label_text.font_value()).height,o,i]);var a=this.plot_view.canvas_view.ctx;a.save(),this.visuals.label_text.set_value(a),this.text_widths={};for(var l=0,h=t;l<h.length;l++){var u=h[l];this.text_widths[u]=z.max([a.measureText(u).width,s])}a.restore();var c,_,p=Math.max(z.max(P.values(this.text_widths)),0),d=this.model.margin,f=this.legend_padding,v=this.model.spacing,m=this.model.label_standoff;if(\"vertical\"==this.model.orientation)c=t.length*this.max_label_height+Math.max(t.length-1,0)*v+2*f,_=p+n+m+2*f;else{for(var g in _=2*f+Math.max(t.length-1,0)*v,this.text_widths){var y=this.text_widths[g];_+=z.max([y,s])+n+m}c=this.max_label_height+2*f}var b,x,w=null!=this.model.panel?this.model.panel:this.plot_view.frame,k=w.bbox.ranges,S=k[0],C=k[1],T=this.model.location;if(j.isString(T))switch(T){case\"top_left\":b=S.start+d,x=C.start+d;break;case\"top_center\":b=(S.end+S.start)/2-_/2,x=C.start+d;break;case\"top_right\":b=S.end-d-_,x=C.start+d;break;case\"bottom_right\":b=S.end-d-_,x=C.end-d-c;break;case\"bottom_center\":b=(S.end+S.start)/2-_/2,x=C.end-d-c;break;case\"bottom_left\":b=S.start+d,x=C.end-d-c;break;case\"center_left\":b=S.start+d,x=(C.end+C.start)/2-c/2;break;case\"center\":b=(S.end+S.start)/2-_/2,x=(C.end+C.start)/2-c/2;break;case\"center_right\":b=S.end-d-_,x=(C.end+C.start)/2-c/2;break;default:throw new Error(\"unreachable code\")}else{if(!j.isArray(T)||2!=T.length)throw new Error(\"unreachable code\");var A=T[0],E=T[1];b=w.xview.compute(A),x=w.yview.compute(E)-c}return{x:b,y:x,width:_,height:c}},t.prototype.interactive_bbox=function(){var t=this.compute_legend_bbox(),e=t.x,i=t.y,n=t.width,r=t.height;return new O.BBox({x:e,y:i,width:n,height:r})},t.prototype.interactive_hit=function(t,e){var i=this.interactive_bbox();return i.contains(t,e)},t.prototype.on_hit=function(t,e){for(var i,n,r,o=this.model.glyph_width,s=this.legend_padding,a=this.model.spacing,l=this.model.label_standoff,h=r=s,u=this.compute_legend_bbox(),c=\"vertical\"==this.model.orientation,_=0,p=this.model.items;_<p.length;_++)for(var d=p[_],f=d.get_labels_list_from_label_prop(),v=0,m=f;v<m.length;v++){var g=m[v],y=u.x+h,b=u.y+r,x=void 0,w=void 0;c?(i=[u.width-2*s,this.max_label_height],x=i[0],w=i[1]):(n=[this.text_widths[g]+o+l,this.max_label_height],x=n[0],w=n[1]);var k=new O.BBox({x:y,y:b,width:x,height:w});if(k.contains(t,e)){switch(this.model.click_policy){case\"hide\":for(var S=0,C=d.renderers;S<C.length;S++){var T=C[S];T.visible=!T.visible}break;case\"mute\":for(var A=0,E=d.renderers;A<E.length;A++){var T=E[A];T.muted=!T.muted}}return!0}c?r+=this.max_label_height+a:h+=this.text_widths[g]+o+l+a}return!1},t.prototype.render=function(){if(this.model.visible&&0!=this.model.items.length){for(var t=0,e=this.model.items;t<e.length;t++){var i=e[t];i.legend=this.model}var n=this.plot_view.canvas_view.ctx,r=this.compute_legend_bbox();n.save(),this._draw_legend_box(n,r),this._draw_legend_items(n,r),n.restore()}},t.prototype._draw_legend_box=function(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())},t.prototype._draw_legend_items=function(y,b){for(var x=this,t=this.model,w=t.glyph_width,k=t.glyph_height,S=this.legend_padding,C=this.model.spacing,T=this.model.label_standoff,A=S,E=S,M=\"vertical\"==this.model.orientation,e=function(t){var e,i,n=t.get_labels_list_from_label_prop(),r=t.get_field_from_label_prop();if(0==n.length)return\"continue\";for(var o=function(){switch(x.model.click_policy){case\"none\":return!0;case\"hide\":return z.all(t.renderers,function(t){return t.visible});case\"mute\":return z.all(t.renderers,function(t){return!t.muted})}}(),s=0,a=n;s<a.length;s++){var l=a[s],h=b.x+A,u=b.y+E,c=h+w,_=u+k;M?E+=O.max_label_height+C:A+=O.text_widths[l]+w+T+C,O.visuals.label_text.set_value(y),y.fillText(l,c+T,u+O.max_label_height/2);for(var p=0,d=t.renderers;p<d.length;p++){var f=d[p],v=O.plot_view.renderer_views[f.id];v.draw_legend(y,h,c,u,_,r,l,t.index)}if(!o){var m=void 0,g=void 0;M?(e=[b.width-2*S,O.max_label_height],m=e[0],g=e[1]):(i=[O.text_widths[l]+w+T,O.max_label_height],m=i[0],g=i[1]),y.beginPath(),y.rect(h,u,m,g),O.visuals.inactive_fill.set_value(y),y.fill()}}},O=this,i=0,n=this.model.items;i<n.length;i++){var r=n[i];e(r)}},t.prototype._get_size=function(){var t=this.compute_legend_bbox();switch(this.model.panel.side){case\"above\":case\"below\":return t.height+2*this.model.margin;case\"left\":case\"right\":return t.width+2*this.model.margin}},t}(r.AnnotationView);i.LegendView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.initialize=function(){e.prototype.initialize.call(this),this.item_change=new s.Signal0(this,\"item_change\")},t.initClass=function(){this.prototype.type=\"Legend\",this.prototype.default_view=a,this.mixins([\"text:label_\",\"fill:inactive_\",\"line:border_\",\"fill:background_\"]),this.define({orientation:[o.Orientation,\"vertical\"],location:[o.Any,\"top_right\"],label_standoff:[o.Number,5],glyph_height:[o.Number,20],glyph_width:[o.Number,20],label_height:[o.Number,20],label_width:[o.Number,20],margin:[o.Number,10],padding:[o.Number,10],spacing:[o.Number,3],items:[o.Array,[]],click_policy:[o.Any,\"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:\"10pt\",label_text_baseline:\"middle\"})},t.prototype.get_legend_names=function(){for(var t=[],e=0,i=this.items;e<i.length;e++){var n=i[e],r=n.get_labels_list_from_label_prop();t.push.apply(t,r)}return t},t}(r.Annotation);(i.Legend=l).initClass()},function(t,e,i){var r=t(391),n=t(59),o=t(201),s=t(47),a=t(15),l=t(14),h=t(21),u=function(n){function t(t){return n.call(this,t)||this}return r.__extends(t,n),t.initClass=function(){this.prototype.type=\"LegendItem\",this.define({label:[a.StringSpec,null],renderers:[a.Array,[]],index:[a.Number,null]})},t.prototype._check_data_sources_on_renderers=function(){var t=this.get_field_from_label_prop();if(null!=t){if(this.renderers.length<1)return!1;var e=this.renderers[0].data_source;if(null!=e)for(var i=0,n=this.renderers;i<n.length;i++){var r=n[i];if(r.data_source!=e)return!1}}return!0},t.prototype._check_field_label_on_data_source=function(){var t=this.get_field_from_label_prop();if(null!=t){if(this.renderers.length<1)return!1;var e=this.renderers[0].data_source;if(null!=e&&!h.includes(e.columns(),t))return!1}return!0},t.prototype.initialize=function(){var t=this;n.prototype.initialize.call(this),this.legend=null,this.connect(this.change,function(){null!=t.legend&&t.legend.item_change.emit()});var e=this._check_data_sources_on_renderers();e||l.logger.error(\"Non matching data sources on legend item renderers\");var i=this._check_field_label_on_data_source();i||l.logger.error(\"Bad column name on label: \"+this.label)},t.prototype.get_field_from_label_prop=function(){var t=this.label;return s.isField(t)?t.field:null},t.prototype.get_labels_list_from_label_prop=function(){if(s.isValue(this.label))return[this.label.value];var t=this.get_field_from_label_prop();if(null!=t){var e=void 0;if(!this.renderers[0]||null==this.renderers[0].data_source)return[\"No source found\"];if((e=this.renderers[0].data_source)instanceof o.ColumnarDataSource){var i=e.get_column(t);return null!=i?h.uniq(Array.from(i)):[\"Invalid field\"]}}return[]},t}(n.Model);(i.LegendItem=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(19),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.data_update,function(){return t.plot_view.request_render()})},t.prototype.render=function(){if(this.model.visible){var t=this.model,e=t.xs,i=t.ys;if(e.length==i.length&&!(e.length<3||i.length<3)){for(var n=this.plot_view.frame,r=this.plot_view.canvas_view.ctx,o=0,s=e.length;o<s;o++){var a=void 0;if(\"screen\"!=this.model.xs_units)throw new Error(\"not implemented\");a=this.model.screen?e[o]:n.xview.compute(e[o]);var l=void 0;if(\"screen\"!=this.model.ys_units)throw new Error(\"not implemented\");l=this.model.screen?i[o]:n.yview.compute(i[o]),0==o?(r.beginPath(),r.moveTo(a,l)):r.lineTo(a,l)}r.closePath(),this.visuals.line.doit&&(this.visuals.line.set_value(r),r.stroke()),this.visuals.fill.doit&&(this.visuals.fill.set_value(r),r.fill())}}},t}(r.AnnotationView);i.PolyAnnotationView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PolyAnnotation\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({xs:[s.Array,[]],xs_units:[s.SpatialUnits,\"data\"],ys:[s.Array,[]],ys_units:[s.SpatialUnits,\"data\"],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.internal({screen:[s.Boolean,!1]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.data_update=new o.Signal0(this,\"data_update\")},t.prototype.update=function(t){var e=t.xs,i=t.ys;this.setv({xs:e,ys:i,screen:!0},{silent:!0}),this.data_update.emit()},t}(r.Annotation);(i.PolyAnnotation=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype.render=function(){this.model.visible&&this._draw_slope()},t.prototype._draw_slope=function(){var t=this.model.gradient,e=this.model.y_intercept;if(null!=t&&null!=e){var i=this.plot_view.frame,n=i.xscales[this.model.x_range_name],r=i.yscales[this.model.y_range_name],o=i._top.value,s=o+i._height.value,a=r.invert(o),l=r.invert(s),h=(a-e)/t,u=(l-e)/t,c=n.compute(h),_=n.compute(u),p=this.plot_view.canvas_view.ctx;p.save(),p.beginPath(),this.visuals.line.set_value(p),p.moveTo(c,o),p.lineTo(_,s),p.stroke(),p.restore()}},t}(r.AnnotationView);i.SlopeView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Slope\",this.prototype.default_view=s,this.mixins([\"line\"]),this.define({gradient:[o.Number,null],y_intercept:[o.Number,null],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({line_color:\"black\"})},t}(r.Annotation);(i.Slope=a).initClass()},function(t,e,i){var n=t(391),r=t(60),c=t(5),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),this.el.style.position=\"absolute\",c.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.model.for_hover?this.connect(this.model.properties.computed_location.change,function(){return t._draw_span()}):\"canvas\"==this.model.render_mode?(this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.properties.location.change,function(){return t.plot_view.request_render()})):(this.connect(this.model.change,function(){return t.render()}),this.connect(this.model.properties.location.change,function(){return t._draw_span()}))},t.prototype.render=function(){this.model.visible||\"css\"!=this.model.render_mode||c.hide(this.el),this.model.visible&&this._draw_span()},t.prototype._draw_span=function(){var i=this,n=this.model.for_hover?this.model.computed_location:this.model.location;if(null!=n){var t,e,r,o,s=this.plot_view.frame,a=s.xscales[this.model.x_range_name],l=s.yscales[this.model.y_range_name],h=function(t,e){return i.model.for_hover?i.model.computed_location:\"data\"==i.model.location_units?t.compute(n):e.compute(n)};if(\"width\"==this.model.dimension?(r=h(l,s.yview),e=s._left.value,o=s._width.value,t=this.model.properties.line_width.value()):(r=s._top.value,e=h(a,s.xview),o=this.model.properties.line_width.value(),t=s._height.value),\"css\"==this.model.render_mode)this.el.style.top=r+\"px\",this.el.style.left=e+\"px\",this.el.style.width=o+\"px\",this.el.style.height=t+\"px\",this.el.style.backgroundColor=this.model.properties.line_color.value(),this.el.style.opacity=this.model.properties.line_alpha.value(),c.show(this.el);else if(\"canvas\"==this.model.render_mode){var u=this.plot_view.canvas_view.ctx;u.save(),u.beginPath(),this.visuals.line.set_value(u),u.moveTo(e,r),\"width\"==this.model.dimension?u.lineTo(e+o,r):u.lineTo(e,r+t),u.stroke(),u.restore()}}else c.hide(this.el)},t}(r.AnnotationView);i.SpanView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Span\",this.prototype.default_view=s,this.mixins([\"line\"]),this.define({render_mode:[o.RenderMode,\"canvas\"],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"],location:[o.Number,null],location_units:[o.SpatialUnits,\"data\"],dimension:[o.Dimension,\"width\"]}),this.override({line_color:\"black\"}),this.internal({for_hover:[o.Boolean,!1],computed_location:[o.Number,null]})},t}(r.Annotation);(i.Span=a).initClass()},function(t,e,i){var n=t(391),r=t(60),l=t(5),o=t(15),s=t(41),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),\"css\"==this.model.render_mode&&(this.el.classList.add(\"bk-annotation\"),this.plot_view.canvas_overlays.appendChild(this.el))},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?this.connect(this.model.change,function(){return t.render()}):this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype._calculate_text_dimensions=function(t,e){var i=t.measureText(e).width,n=s.get_text_height(this.visuals.text.font_value()).height;return[i,n]},t.prototype._calculate_bounding_box_dimensions=function(t,e){var i,n,r=this._calculate_text_dimensions(t,e),o=r[0],s=r[1];switch(t.textAlign){case\"left\":i=0;break;case\"center\":i=-o/2;break;case\"right\":i=-o;break;default:throw new Error(\"unreachable code\")}switch(t.textBaseline){case\"top\":n=0;break;case\"middle\":n=-.5*s;break;case\"bottom\":n=-1*s;break;case\"alphabetic\":n=-.8*s;break;case\"hanging\":n=-.17*s;break;case\"ideographic\":n=-.83*s;break;default:throw new Error(\"unreachable code\")}return[i,n,o,s]},t.prototype._canvas_text=function(t,e,i,n,r){this.visuals.text.set_value(t);var o=this._calculate_bounding_box_dimensions(t,e);t.save(),t.beginPath(),t.translate(i,n),r&&t.rotate(r),t.rect(o[0],o[1],o[2],o[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.stroke()),this.visuals.text.doit&&(this.visuals.text.set_value(t),t.fillText(e,0,0)),t.restore()},t.prototype._css_text=function(t,e,i,n,r){l.hide(this.el),this.visuals.text.set_value(t);var o=this._calculate_bounding_box_dimensions(t,e),s=this.visuals.border_line.line_dash.value(),a=s.length<2?\"solid\":\"dashed\";this.visuals.border_line.set_value(t),this.visuals.background_fill.set_value(t),this.el.style.position=\"absolute\",this.el.style.left=i+o[0]+\"px\",this.el.style.top=n+o[1]+\"px\",this.el.style.color=\"\"+this.visuals.text.text_color.value(),this.el.style.opacity=\"\"+this.visuals.text.text_alpha.value(),this.el.style.font=\"\"+this.visuals.text.font_value(),this.el.style.lineHeight=\"normal\",r&&(this.el.style.transform=\"rotate(\"+r+\"rad)\"),this.visuals.background_fill.doit&&(this.el.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(this.el.style.borderStyle=\"\"+a,this.el.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",this.el.style.borderColor=\"\"+this.visuals.border_line.color_value()),this.el.textContent=e,l.show(this.el)},t}(r.AnnotationView);i.TextAnnotationView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextAnnotation\",this.define({render_mode:[o.RenderMode,\"canvas\"]})},t}(r.Annotation);(i.TextAnnotation=h).initClass()},function(t,e,i){var n=t(391),r=t(74),s=t(5),o=t(15),a=t(49),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.visuals.text=new a.Text(this.model)},t.prototype._get_location=function(){var t,e,i=this.model.panel,n=this.model.offset;switch(i.side){case\"above\":case\"below\":switch(this.model.vertical_align){case\"top\":e=i._top.value+5;break;case\"middle\":e=i._vcenter.value;break;case\"bottom\":e=i._bottom.value-5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":t=i._left.value+n;break;case\"center\":t=i._hcenter.value;break;case\"right\":t=i._right.value-n;break;default:throw new Error(\"unreachable code\")}break;case\"left\":switch(this.model.vertical_align){case\"top\":t=i._left.value-5;break;case\"middle\":t=i._hcenter.value;break;case\"bottom\":t=i._right.value+5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":e=i._bottom.value-n;break;case\"center\":e=i._vcenter.value;break;case\"right\":e=i._top.value+n;break;default:throw new Error(\"unreachable code\")}break;case\"right\":switch(this.model.vertical_align){case\"top\":t=i._right.value-5;break;case\"middle\":t=i._hcenter.value;break;case\"bottom\":t=i._left.value+5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":e=i._top.value+n;break;case\"center\":e=i._vcenter.value;break;case\"right\":e=i._bottom.value-n;break;default:throw new Error(\"unreachable code\")}break;default:throw new Error(\"unreachable code\")}return[t,e]},t.prototype.render=function(){if(this.model.visible){var t=this.model.text;if(null!=t&&0!=t.length){this.model.text_baseline=this.model.vertical_align,this.model.text_align=this.model.align;var e=this._get_location(),i=e[0],n=e[1],r=this.model.panel.get_label_angle_heuristic(\"parallel\"),o=\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this);o(this.plot_view.canvas_view.ctx,t,i,n,r)}}else\"css\"==this.model.render_mode&&s.hide(this.el)},t.prototype._get_size=function(){var t=this.model.text;if(null==t||0==t.length)return 0;var e=this.plot_view.canvas_view.ctx;return this.visuals.text.set_value(e),e.measureText(t).ascent+10},t}(r.TextAnnotationView);i.TitleView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Title\",this.prototype.default_view=l,this.mixins([\"line:border_\",\"fill:background_\"]),this.define({text:[o.String],text_font:[o.Font,\"helvetica\"],text_font_size:[o.FontSizeSpec,\"10pt\"],text_font_style:[o.FontStyle,\"bold\"],text_color:[o.ColorSpec,\"#444444\"],text_alpha:[o.NumberSpec,1],vertical_align:[o.VerticalAlign,\"bottom\"],align:[o.TextAlign,\"left\"],offset:[o.Number,0]}),this.override({background_fill_color:null,border_line_color:null}),this.internal({text_align:[o.TextAlign,\"left\"],text_baseline:[o.TextBaseline,\"bottom\"]})},t}(r.TextAnnotation);(i.Title=h).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(4),s=t(5),a=t(15),l=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){i.prototype.initialize.call(this,t),this.plot_view.canvas_events.appendChild(this.el),this._toolbar_views={},o.build_views(this._toolbar_views,[this.model.toolbar],{parent:this});var e=this._toolbar_views[this.model.toolbar.id];this.plot_view.visibility_callbacks.push(function(t){return e.set_visibility(t)})},t.prototype.remove=function(){o.remove_views(this._toolbar_views),i.prototype.remove.call(this)},t.prototype.render=function(){if(i.prototype.render.call(this),this.model.visible){var t=this.model.panel;this.el.style.position=\"absolute\",this.el.style.left=t._left.value+\"px\",this.el.style.top=t._top.value+\"px\",this.el.style.width=t._width.value+\"px\",this.el.style.height=t._height.value+\"px\",this.el.style.overflow=\"hidden\";var e=this._toolbar_views[this.model.toolbar.id];e.render(),s.empty(this.el),this.el.appendChild(e.el),s.show(this.el)}else s.hide(this.el)},t.prototype._get_size=function(){return 30},t}(r.AnnotationView);i.ToolbarPanelView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarPanel\",this.prototype.default_view=l,this.define({toolbar:[a.Instance]})},t}(r.Annotation);(i.ToolbarPanel=h).initClass()},function(t,e,i){var n=t(391),r=t(60),f=t(5),o=t(15);function v(t,e,i,n,r){var o;switch(t){case\"horizontal\":o=e<n?\"right\":\"left\";break;case\"vertical\":o=i<r?\"below\":\"above\";break;default:o=t}return o}i.compute_side=v;var s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),f.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.data.change,function(){return t._draw_tips()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-tooltip\")},t.prototype.render=function(){this.model.visible&&this._draw_tips()},t.prototype._draw_tips=function(){var t=this.model.data;if(f.empty(this.el),f.hide(this.el),this.model.custom?this.el.classList.add(\"bk-tooltip-custom\"):this.el.classList.remove(\"bk-tooltip-custom\"),0!=t.length){for(var e=this.plot_view.frame,i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[1],a=r[2];if(!this.model.inner_only||e.bbox.contains(o,s)){var l=f.div({},a);this.el.appendChild(l)}}var h,u,c=t[t.length-1],_=c[0],p=c[1],d=v(this.model.attachment,_,p,e._hcenter.value,e._vcenter.value);switch(this.el.classList.remove(\"bk-right\"),this.el.classList.remove(\"bk-left\"),this.el.classList.remove(\"bk-above\"),this.el.classList.remove(\"bk-below\"),f.show(this.el),d){case\"right\":this.el.classList.add(\"bk-left\"),h=_+(this.el.offsetWidth-this.el.clientWidth)+10,u=p-this.el.offsetHeight/2;break;case\"left\":this.el.classList.add(\"bk-right\"),h=_-this.el.offsetWidth-10,u=p-this.el.offsetHeight/2;break;case\"below\":this.el.classList.add(\"bk-above\"),u=p+(this.el.offsetHeight-this.el.clientHeight)+10,h=Math.round(_-this.el.offsetWidth/2);break;case\"above\":this.el.classList.add(\"bk-below\"),u=p-this.el.offsetHeight-10,h=Math.round(_-this.el.offsetWidth/2);break;default:throw new Error(\"unreachable code\")}this.model.show_arrow&&this.el.classList.add(\"bk-tooltip-arrow\"),0<this.el.childNodes.length?(this.el.style.top=u+\"px\",this.el.style.left=h+\"px\"):f.hide(this.el)}},t}(r.AnnotationView);i.TooltipView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tooltip\",this.prototype.default_view=s,this.define({attachment:[o.String,\"horizontal\"],inner_only:[o.Bool,!0],show_arrow:[o.Bool,!0]}),this.override({level:\"overlay\"}),this.internal({data:[o.Any,[]],custom:[o.Any]})},t.prototype.clear=function(){this.data=[]},t.prototype.add=function(t,e,i){this.data=this.data.concat([[t,e,i]])},t}(r.Annotation);(i.Tooltip=a).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(200),s=t(62),a=t(15),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n=this.plot_model.frame,r=this.model.dimension,o=n.xscales[this.model.x_range_name],s=n.yscales[this.model.y_range_name],a=\"height\"==r?s:o,l=\"height\"==r?o:s,h=\"height\"==r?n.yview:n.xview,u=\"height\"==r?n.xview:n.yview;t=\"data\"==this.model.lower.units?a.v_compute(this._lower):h.v_compute(this._lower),e=\"data\"==this.model.upper.units?a.v_compute(this._upper):h.v_compute(this._upper),i=\"data\"==this.model.base.units?l.v_compute(this._base):u.v_compute(this._base);var c=\"height\"==r?[1,0]:[0,1],_=c[0],p=c[1],d=[t,i],f=[e,i];this._lower_sx=d[_],this._lower_sy=d[p],this._upper_sx=f[_],this._upper_sy=f[p]},t.prototype.render=function(){if(this.model.visible){this._map_data();var t=this.plot_view.canvas_view.ctx;if(this.visuals.line.doit)for(var e=0,i=this._lower_sx.length;e<i;e++)this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(this._lower_sx[e],this._lower_sy[e]),t.lineTo(this._upper_sx[e],this._upper_sy[e]),t.stroke();var n=\"height\"==this.model.dimension?0:Math.PI/2;if(null!=this.model.lower_head)for(var e=0,i=this._lower_sx.length;e<i;e++)t.save(),t.translate(this._lower_sx[e],this._lower_sy[e]),t.rotate(n+Math.PI),this.model.lower_head.render(t,e),t.restore();if(null!=this.model.upper_head)for(var e=0,i=this._upper_sx.length;e<i;e++)t.save(),t.translate(this._upper_sx[e],this._upper_sy[e]),t.rotate(n),this.model.upper_head.render(t,e),t.restore()}},t}(r.AnnotationView);i.WhiskerView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Whisker\",this.prototype.default_view=l,this.mixins([\"line\"]),this.define({lower:[a.DistanceSpec],lower_head:[a.Instance,function(){return new s.TeeHead({level:\"underlay\",size:10})}],upper:[a.DistanceSpec],upper_head:[a.Instance,function(){return new s.TeeHead({level:\"underlay\",size:10})}],base:[a.DistanceSpec],dimension:[a.Dimension,\"height\"],source:[a.Instance,function(){return new o.ColumnDataSource}],x_range_name:[a.String,\"default\"],y_range_name:[a.String,\"default\"]}),this.override({level:\"underlay\"})},t}(r.Annotation);(i.Whisker=h).initClass()},function(t,e,i){var n=t(391),r=t(187),o=t(15),s=t(12),l=t(21),T=t(44),a=t(181),h=Math.abs,u=Math.min,c=Math.max,_=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.render=function(){if(this.model.visible){var t={tick:this._tick_extent(),tick_label:this._tick_label_extents(),axis_label:this._axis_label_extent()},e=this.model.tick_coords,i=this.plot_view.canvas_view.ctx;i.save(),this._draw_rule(i,t),this._draw_major_ticks(i,t,e),this._draw_minor_ticks(i,t,e),this._draw_major_labels(i,t,e),this._draw_axis_label(i,t,e),null!=this._render&&this._render(i,t,e),i.restore()}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype.get_size=function(){return this.model.visible?Math.round(this._get_size()):0},t.prototype._get_size=function(){return null!=this.model.fixed_location?0:this._tick_extent()+this._tick_label_extent()+this._axis_label_extent()},Object.defineProperty(t.prototype,\"needs_clip\",{get:function(){return null!=this.model.fixed_location},enumerable:!0,configurable:!0}),t.prototype._draw_rule=function(t,e){if(this.visuals.axis_line.doit){var i=this.model.rule_coords,n=i[0],r=i[1],o=this.plot_view.map_to_screen(n,r,this.model.x_range_name,this.model.y_range_name),s=o[0],a=o[1],l=this.model.normals,h=l[0],u=l[1],c=this.model.offsets,_=c[0],p=c[1];this.visuals.axis_line.set_value(t),t.beginPath(),t.moveTo(Math.round(s[0]+h*_),Math.round(a[0]+u*p));for(var d=1;d<s.length;d++){var f=Math.round(s[d]+h*_),v=Math.round(a[d]+u*p);t.lineTo(f,v)}t.stroke()}},t.prototype._draw_major_ticks=function(t,e,i){var n=this.model.major_tick_in,r=this.model.major_tick_out,o=this.visuals.major_tick_line;this._draw_ticks(t,i.major,n,r,o)},t.prototype._draw_minor_ticks=function(t,e,i){var n=this.model.minor_tick_in,r=this.model.minor_tick_out,o=this.visuals.minor_tick_line;this._draw_ticks(t,i.minor,n,r,o)},t.prototype._draw_major_labels=function(t,e,i){var n=i.major,r=this.model.compute_labels(n[this.model.dimension]),o=this.model.major_label_orientation,s=e.tick+this.model.major_label_standoff,a=this.visuals.major_label_text;this._draw_oriented_labels(t,r,n,o,this.model.panel.side,s,a)},t.prototype._draw_axis_label=function(t,e,i){if(null!=this.model.axis_label&&0!=this.model.axis_label.length&&null==this.model.fixed_location){var n,r;switch(this.model.panel.side){case\"above\":n=this.model.panel._hcenter.value,r=this.model.panel._bottom.value;break;case\"below\":n=this.model.panel._hcenter.value,r=this.model.panel._top.value;break;case\"left\":n=this.model.panel._right.value,r=this.model.panel._vcenter.value;break;case\"right\":n=this.model.panel._left.value,r=this.model.panel._vcenter.value;break;default:throw new Error(\"unknown side: \"+this.model.panel.side)}var o=[[n],[r]],s=e.tick+l.sum(e.tick_label)+this.model.axis_label_standoff,a=this.visuals.axis_label_text;this._draw_oriented_labels(t,[this.model.axis_label],o,\"parallel\",this.model.panel.side,s,a,\"screen\")}},t.prototype._draw_ticks=function(t,e,i,n,r){if(r.doit){var o=e[0],s=e[1],a=this.plot_view.map_to_screen(o,s,this.model.x_range_name,this.model.y_range_name),l=a[0],h=a[1],u=this.model.normals,c=u[0],_=u[1],p=this.model.offsets,d=p[0],f=p[1],v=[c*(d-i),_*(f-i)],m=v[0],g=v[1],y=[c*(d+n),_*(f+n)],b=y[0],x=y[1];r.set_value(t);for(var w=0;w<l.length;w++){var k=Math.round(l[w]+b),S=Math.round(h[w]+x),C=Math.round(l[w]+m),T=Math.round(h[w]+g);t.beginPath(),t.moveTo(k,S),t.lineTo(C,T),t.stroke()}}},t.prototype._draw_oriented_labels=function(t,e,i,n,r,o,s,a){var l,h,u;if(void 0===a&&(a=\"data\"),s.doit&&0!=e.length){var c,_,p,d;if(\"screen\"==a)c=i[0],_=i[1],p=(l=[0,0])[0],d=l[1];else{var f=i[0],v=i[1];h=this.plot_view.map_to_screen(f,v,this.model.x_range_name,this.model.y_range_name),c=h[0],_=h[1],u=this.model.offsets,p=u[0],d=u[1]}var m,g=this.model.normals,y=g[0],b=g[1],x=y*(p+o),w=b*(d+o);s.set_value(t),this.model.panel.apply_label_text_heuristics(t,n),m=T.isString(n)?this.model.panel.get_label_angle_heuristic(n):-n;for(var k=0;k<c.length;k++){var S=Math.round(c[k]+x),C=Math.round(_[k]+w);t.translate(S,C),t.rotate(m),t.fillText(e[k],0,0),t.rotate(-m),t.translate(-S,-C)}}},t.prototype._axis_label_extent=function(){if(null==this.model.axis_label||\"\"==this.model.axis_label)return 0;var t=this.model.axis_label_standoff,e=this.visuals.axis_label_text;return this._oriented_labels_extent([this.model.axis_label],\"parallel\",this.model.panel.side,t,e)},t.prototype._tick_extent=function(){return this.model.major_tick_out},t.prototype._tick_label_extent=function(){return l.sum(this._tick_label_extents())},t.prototype._tick_label_extents=function(){var t=this.model.tick_coords.major,e=this.model.compute_labels(t[this.model.dimension]),i=this.model.major_label_orientation,n=this.model.major_label_standoff,r=this.visuals.major_label_text;return[this._oriented_labels_extent(e,i,this.model.panel.side,n,r)]},t.prototype._oriented_labels_extent=function(t,e,i,n,r){if(0==t.length)return 0;var o,s,a=this.plot_view.canvas_view.ctx;r.set_value(a),T.isString(e)?(o=1,s=this.model.panel.get_label_angle_heuristic(e)):(o=2,s=-e),s=Math.abs(s);for(var l=Math.cos(s),h=Math.sin(s),u=0,c=0;c<t.length;c++){var _=1.1*a.measureText(t[c]).width,p=.9*a.measureText(t[c]).ascent,d=void 0;u<(d=\"above\"==i||\"below\"==i?_*h+p/o*l:_*l+p/o*h)&&(u=d)}return 0<u&&(u+=n),u},t}(r.GuideRendererView);i.AxisView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Axis\",this.prototype.default_view=_,this.mixins([\"line:axis_\",\"line:major_tick_\",\"line:minor_tick_\",\"text:major_label_\",\"text:axis_label_\"]),this.define({bounds:[o.Any,\"auto\"],ticker:[o.Instance,null],formatter:[o.Instance,null],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"],axis_label:[o.String,\"\"],axis_label_standoff:[o.Int,5],major_label_standoff:[o.Int,5],major_label_orientation:[o.Any,\"horizontal\"],major_label_overrides:[o.Any,{}],major_tick_in:[o.Number,2],major_tick_out:[o.Number,6],minor_tick_in:[o.Number,0],minor_tick_out:[o.Number,4],fixed_location:[o.Any,null]}),this.override({axis_line_color:\"black\",major_tick_line_color:\"black\",minor_tick_line_color:\"black\",major_label_text_font_size:\"8pt\",major_label_text_align:\"center\",major_label_text_baseline:\"alphabetic\",axis_label_text_font_size:\"10pt\",axis_label_text_font_style:\"italic\"})},t.prototype.add_panel=function(t){this.panel=new s.SidePanel({side:t}),this.panel.attach_document(this.document)},Object.defineProperty(t.prototype,\"normals\",{get:function(){return this.panel.normals},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"dimension\",{get:function(){return this.panel.dimension},enumerable:!0,configurable:!0}),t.prototype.compute_labels=function(t){for(var e=this.formatter.doFormat(t,this),i=0;i<t.length;i++)t[i]in this.major_label_overrides&&(e[i]=this.major_label_overrides[t[i]]);return e},Object.defineProperty(t.prototype,\"offsets\",{get:function(){var t=this.plot.plot_canvas.frame,e=[0,0],i=e[0],n=e[1];switch(this.panel.side){case\"below\":n=h(this.panel._top.value-t._bottom.value);break;case\"above\":n=h(this.panel._bottom.value-t._top.value);break;case\"right\":i=h(this.panel._left.value-t._right.value);break;case\"left\":i=h(this.panel._right.value-t._left.value)}return[i,n]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"ranges\",{get:function(){var t=this.dimension,e=(t+1)%2,i=this.plot.plot_canvas.frame,n=[i.x_ranges[this.x_range_name],i.y_ranges[this.y_range_name]];return[n[t],n[e]]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_bounds\",{get:function(){var t=this.ranges[0],e=this.bounds,i=[t.min,t.max];if(\"auto\"==e)return[t.min,t.max];if(T.isArray(e)){var n=void 0,r=void 0,o=e[0],s=e[1],a=i[0],l=i[1];return h(o-s)>h(a-l)?(n=c(u(o,s),a),r=u(c(o,s),l)):(n=u(o,s),r=c(o,s)),[n,r]}throw new Error(\"user bounds '\"+e+\"' not understood\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"rule_coords\",{get:function(){var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=new Array(2),a=new Array(2),l=[s,a];return l[t][0]=Math.max(r,i.min),l[t][1]=Math.min(o,i.max),l[t][0]>l[t][1]&&(l[t][0]=l[t][1]=NaN),l[e][0]=this.loc,l[e][1]=this.loc,l},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tick_coords\",{get:function(){for(var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=this.ticker.get_ticks(r,o,i,this.loc,{}),a=s.major,l=s.minor,h=[[],[]],u=[[],[]],c=[i.min,i.max],_=c[0],p=c[1],d=0;d<a.length;d++)a[d]<_||a[d]>p||(h[t].push(a[d]),h[e].push(this.loc));for(var d=0;d<l.length;d++)l[d]<_||l[d]>p||(u[t].push(l[d]),u[e].push(this.loc));return{major:h,minor:u}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"loc\",{get:function(){if(null!=this.fixed_location){if(T.isNumber(this.fixed_location))return this.fixed_location;var t=this.ranges,e=t[1];if(e instanceof a.FactorRange)return e.synthetic(this.fixed_location);throw new Error(\"unexpected\")}var i=this.ranges,n=i[1];switch(this.panel.side){case\"left\":case\"below\":return n.start;case\"right\":case\"above\":return n.end}},enumerable:!0,configurable:!0}),t}(r.GuideRenderer);(i.Axis=p).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(208),s=t(105),a=t(15),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){this._draw_group_separators(t,e,i)},e.prototype._draw_group_separators=function(t,e,i){var n,r=this.model.ranges[0],o=this.model.computed_bounds,s=o[0],a=o[1];if(r.tops&&!(r.tops.length<2)&&this.visuals.separator_line.doit){for(var l=this.model.dimension,h=(l+1)%2,u=[[],[]],c=0,_=0;_<r.tops.length-1;_++){for(var p=void 0,d=void 0,f=c;f<r.factors.length;f++)if(r.factors[f][0]==r.tops[_+1]){n=[r.factors[f-1],r.factors[f]],p=n[0],d=n[1],c=f;break}var v=(r.synthetic(p)+r.synthetic(d))/2;s<v&&v<a&&(u[l].push(v),u[h].push(this.model.loc))}var m=this._tick_label_extent();this._draw_ticks(t,u,-3,m-6,this.visuals.separator_line)}},e.prototype._draw_major_labels=function(t,e,i){for(var n=this._get_factor_info(),r=e.tick+this.model.major_label_standoff,o=0;o<n.length;o++){var s=n[o],a=s[0],l=s[1],h=s[2],u=s[3];this._draw_oriented_labels(t,a,l,h,this.model.panel.side,r,u),r+=e.tick_label[o]}},e.prototype._tick_label_extents=function(){for(var t=this._get_factor_info(),e=[],i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[2],a=r[3],l=this._oriented_labels_extent(o,s,this.model.panel.side,this.model.major_label_standoff,a);e.push(l)}return e},e.prototype._get_factor_info=function(){var t=this.model.ranges[0],e=this.model.computed_bounds,i=e[0],n=e[1],r=this.model.loc,o=this.model.ticker.get_ticks(i,n,t,r,{}),s=this.model.tick_coords,a=[];if(1==t.levels){var l=this.model.formatter.doFormat(o.major,this.model);a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text])}else if(2==t.levels){var l=this.model.formatter.doFormat(o.major.map(function(t){return t[1]}),this.model);a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([o.tops,s.tops,this.model.group_label_orientation,this.visuals.group_text])}else if(3==t.levels){var l=this.model.formatter.doFormat(o.major.map(function(t){return t[2]}),this.model),h=o.mids.map(function(t){return t[1]});a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([h,s.mids,this.model.subgroup_label_orientation,this.visuals.subgroup_text]),a.push([o.tops,s.tops,this.model.group_label_orientation,this.visuals.group_text])}return a},e}(r.AxisView);i.CategoricalAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalAxis\",this.prototype.default_view=l,this.mixins([\"line:separator_\",\"text:group_\",\"text:subgroup_\"]),this.define({group_label_orientation:[a.Any,\"parallel\"],subgroup_label_orientation:[a.Any,\"parallel\"]}),this.override({ticker:function(){return new o.CategoricalTicker},formatter:function(){return new s.CategoricalTickFormatter},separator_line_color:\"lightgrey\",separator_line_width:2,group_text_font_style:\"bold\",group_text_font_size:\"8pt\",group_text_color:\"grey\",subgroup_text_font_style:\"bold\",subgroup_text_font_size:\"8pt\"})},Object.defineProperty(t.prototype,\"tick_coords\",{get:function(){var e=this,t=this.dimension,i=(t+1)%2,n=this.ranges[0],r=this.computed_bounds,o=r[0],s=r[1],a=this.ticker.get_ticks(o,s,n,this.loc,{}),l={major:[[],[]],mids:[[],[]],tops:[[],[]],minor:[[],[]]};return l.major[t]=a.major,l.major[i]=a.major.map(function(t){return e.loc}),3==n.levels&&(l.mids[t]=a.mids),l.mids[i]=a.mids.map(function(t){return e.loc}),1<n.levels&&(l.tops[t]=a.tops),l.tops[i]=a.tops.map(function(t){return e.loc}),l},enumerable:!0,configurable:!0}),t}(r.Axis);(i.CategoricalAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousAxis\"},t}(r.Axis);(i.ContinuousAxis=o).initClass()},function(t,e,i){var n=t(391),r=t(84),o=t(106),s=t(211),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.LinearAxisView);i.DatetimeAxisView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatetimeAxis\",this.prototype.default_view=a,this.override({ticker:function(){return new s.DatetimeTicker},formatter:function(){return new o.DatetimeTickFormatter}})},t}(r.LinearAxis);(i.DatetimeAxis=l).initClass()},function(t,e,i){var n=t(79);i.Axis=n.Axis;var r=t(80);i.CategoricalAxis=r.CategoricalAxis;var o=t(81);i.ContinuousAxis=o.ContinuousAxis;var s=t(82);i.DatetimeAxis=s.DatetimeAxis;var a=t(84);i.LinearAxis=a.LinearAxis;var l=t(85);i.LogAxis=l.LogAxis;var h=t(86);i.MercatorAxis=h.MercatorAxis},function(t,e,i){var n=t(391),r=t(79),o=t(81),s=t(104),a=t(207),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LinearAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.BasicTicker},formatter:function(){return new s.BasicTickFormatter}})},t}(o.ContinuousAxis);(i.LinearAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(81),s=t(109),a=t(215),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LogAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.LogTicker},formatter:function(){return new s.LogTickFormatter}})},t}(o.ContinuousAxis);(i.LogAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(84),s=t(110),a=t(216),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.MercatorAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MercatorAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.MercatorTicker({dimension:\"lat\"})},formatter:function(){return new s.MercatorTickFormatter({dimension:\"lat\"})}})},t}(o.LinearAxis);(i.MercatorAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Callback\"},t}(r.Model);(i.Callback=o).initClass()},function(i,t,e){var n=i(391),r=i(87),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJS\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"cb_obj\",\"cb_data\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),t.prototype.execute=function(t,e){return this.func.apply(t,this.values.concat(t,e,i,{}))},t}(r.Callback);(e.CustomJS=l).initClass()},function(t,e,i){var n=t(88);i.CustomJS=n.CustomJS;var r=t(90);i.OpenURL=r.OpenURL},function(t,e,i){var n=t(391),r=t(87),o=t(15),s=t(35),a=t(40),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"OpenURL\",this.define({url:[o.String,\"http://\"]})},t.prototype.execute=function(t,e){for(var i=0,n=s.get_indices(e.source);i<n.length;i++){var r=n[i],o=a.replace_placeholders(this.url,e.source,r);window.open(o)}return null},t}(r.Callback);(i.OpenURL=l).initClass()},function(t,e,i){var n=t(391),r=t(11),o=t(6),s=t(13),a=t(14),l=t(15),h=t(5),u=t(26);null!=window.CanvasPixelArray&&(window.CanvasPixelArray.prototype.set=function(t){for(var e=0;e<this.length;e++)this[e]=t[e]});var c=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),Object.defineProperty(t.prototype,\"ctx\",{get:function(){return this._ctx},enumerable:!0,configurable:!0}),t.prototype.initialize=function(t){switch(i.prototype.initialize.call(this,t),this.map_el=this.model.map?this.el.appendChild(h.div({class:\"bk-canvas-map\"})):null,this.model.output_backend){case\"canvas\":case\"webgl\":this.canvas_el=this.el.appendChild(h.canvas({class:\"bk-canvas\"}));var e=this.canvas_el.getContext(\"2d\");if(null==e)throw new Error(\"unable to obtain 2D rendering context\");this._ctx=e;break;case\"svg\":var e=new u.SVGRenderingContext2D;this._ctx=e,this.canvas_el=this.el.appendChild(e.getSvg())}this.overlays_el=this.el.appendChild(h.div({class:\"bk-canvas-overlays\"})),this.events_el=this.el.appendChild(h.div({class:\"bk-canvas-events\"})),u.fixup_ctx(this._ctx),a.logger.debug(\"CanvasView initialized\")},t.prototype.css_classes=function(){return i.prototype.css_classes.call(this).concat(\"bk-canvas-wrapper\")},t.prototype.get_canvas_element=function(){return this.canvas_el},t.prototype.prepare_canvas=function(){var t=this.model._width.value,e=this.model._height.value;this.el.style.width=t+\"px\",this.el.style.height=e+\"px\";var i=u.get_scale_ratio(this.ctx,this.model.use_hidpi,this.model.output_backend);this.model.pixel_ratio=i,this.canvas_el.style.width=t+\"px\",this.canvas_el.style.height=e+\"px\",this.canvas_el.setAttribute(\"width\",\"\"+t*i),this.canvas_el.setAttribute(\"height\",\"\"+e*i),a.logger.debug(\"Rendering CanvasView with width: \"+t+\", height: \"+e+\", pixel ratio: \"+i)},t.prototype.set_dims=function(t){var e=t[0],i=t[1];e<=0||i<=0||(e!=this.model._width.value&&(null!=this._width_constraint&&this.solver.has_constraint(this._width_constraint)&&this.solver.remove_constraint(this._width_constraint),this._width_constraint=s.EQ(this.model._width,-e),this.solver.add_constraint(this._width_constraint)),i!=this.model._height.value&&(null!=this._height_constraint&&this.solver.has_constraint(this._height_constraint)&&this.solver.remove_constraint(this._height_constraint),this._height_constraint=s.EQ(this.model._height,-i),this.solver.add_constraint(this._height_constraint)),this.solver.update_variables())},t}(o.DOMView);i.CanvasView=c;var _=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Canvas\",this.prototype.default_view=c,this.internal({map:[l.Boolean,!1],use_hidpi:[l.Boolean,!0],pixel_ratio:[l.Number,1],output_backend:[l.OutputBackend,\"canvas\"]})},Object.defineProperty(t.prototype,\"panel\",{get:function(){return this},enumerable:!0,configurable:!0}),t}(r.LayoutCanvas);(i.Canvas=_).initClass()},function(t,e,i){var n=t(391),a=t(190),l=t(192),h=t(193),u=t(184),c=t(180),_=t(181),r=t(11),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CartesianFrame\",this.internal({extra_x_ranges:[o.Any,{}],extra_y_ranges:[o.Any,{}],x_range:[o.Instance],y_range:[o.Instance],x_scale:[o.Instance],y_scale:[o.Instance]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._configure_scales()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._configure_scales()})},Object.defineProperty(t.prototype,\"panel\",{get:function(){return this},enumerable:!0,configurable:!0}),t.prototype.get_editables=function(){return e.prototype.get_editables.call(this).concat([this._width,this._height])},t.prototype.map_to_screen=function(t,e,i,n){void 0===i&&(i=\"default\"),void 0===n&&(n=\"default\");var r=this.xscales[i].v_compute(t),o=this.yscales[n].v_compute(e);return[r,o]},t.prototype._get_ranges=function(t,e){var i={};if(i.default=t,null!=e)for(var n in e)i[n]=e[n];return i},t.prototype._get_scales=function(t,e,i){var n={};for(var r in e){var o=e[r];if(o instanceof c.DataRange1d||o instanceof u.Range1d){if(!(t instanceof h.LogScale||t instanceof l.LinearScale))throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type);if(t instanceof a.CategoricalScale)throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type)}if(o instanceof _.FactorRange&&!(t instanceof a.CategoricalScale))throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type);t instanceof h.LogScale&&o instanceof c.DataRange1d&&(o.scale_hint=\"log\");var s=t.clone();s.setv({source_range:o,target_range:i}),n[r]=s}return n},t.prototype._configure_frame_ranges=function(){this._h_target=new u.Range1d({start:this._left.value,end:this._right.value}),this._v_target=new u.Range1d({start:this._bottom.value,end:this._top.value})},t.prototype._configure_scales=function(){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._xscales=this._get_scales(this.x_scale,this._x_ranges,this._h_target),this._yscales=this._get_scales(this.y_scale,this._y_ranges,this._v_target)},t.prototype.update_scales=function(){for(var t in this._configure_frame_ranges(),this._xscales){var e=this._xscales[t];e.target_range=this._h_target}for(var i in this._yscales){var e=this._yscales[i];e.target_range=this._v_target}},Object.defineProperty(t.prototype,\"x_ranges\",{get:function(){return this._x_ranges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"y_ranges\",{get:function(){return this._y_ranges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"xscales\",{get:function(){return this._xscales},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"yscales\",{get:function(){return this._yscales},enumerable:!0,configurable:!0}),t}(r.LayoutCanvas);(i.CartesianFrame=s).initClass()},function(t,e,i){var n=t(91);i.Canvas=n.Canvas;var r=t(92);i.CartesianFrame=r.CartesianFrame},function(t,e,i){var n=t(391),r=t(95),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CumSum\",this.define({field:[o.String],include_zero:[o.Boolean,!1]})},t.prototype._v_compute=function(t){var e=new Float64Array(t.get_length()||0),i=t.data[this.field],n=this.include_zero?1:0;e[0]=this.include_zero?0:i[0];for(var r=1;r<e.length;r++)e[r]=e[r-1]+i[r-n];return e},t}(r.Expression);(i.CumSum=s).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(i){function t(t){var e=i.call(this,t)||this;return e._connected={},e._result={},e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Expression\"},t.prototype.initialize=function(){i.prototype.initialize.call(this),this._connected={},this._result={}},t.prototype.v_compute=function(t){var e=this;null==this._connected[t.id]&&(this.connect(t.change,function(){return delete e._result[t.id]}),this.connect(t.patching,function(){return delete e._result[t.id]}),this.connect(t.streaming,function(){return delete e._result[t.id]}),this._connected[t.id]=!0);var i=this._result[t.id];return null==i&&(this._result[t.id]=i=this._v_compute(t)),i},t}(r.Model);(i.Expression=o).initClass()},function(t,e,i){var n=t(95);i.Expression=n.Expression;var r=t(97);i.Stack=r.Stack;var o=t(94);i.CumSum=o.CumSum},function(t,e,i){var n=t(391),r=t(95),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Stack\",this.define({fields:[o.Array,[]]})},t.prototype._v_compute=function(t){for(var e=new Float64Array(t.get_length()||0),i=0,n=this.fields;i<n.length;i++)for(var r=n[i],o=0;o<t.data[r].length;o++){var s=t.data[r][o];e[o]+=s}return e},t}(r.Expression);(i.Stack=s).initClass()},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(21),l=t(44),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BooleanFilter\",this.define({booleans:[o.Array,null]})},t.prototype.compute_indices=function(t){var e=this.booleans;return null!=e&&0<e.length?a.all(e,l.isBoolean)?(e.length!==t.get_length()&&s.logger.warn(\"BooleanFilter \"+this.id+\": length of booleans doesn't match data source\"),a.range(0,e.length).filter(function(t){return!0===e[t]})):(s.logger.warn(\"BooleanFilter \"+this.id+\": booleans should be array of booleans, defaulting to no filtering\"),null):(null!=e&&0==e.length?s.logger.warn(\"BooleanFilter \"+this.id+\": booleans is empty, defaulting to no filtering\"):s.logger.warn(\"BooleanFilter \"+this.id+\": booleans was not set, defaulting to no filtering\"),null)},t}(r.Filter);(i.BooleanFilter=h).initClass()},function(i,t,e){var n=i(391),r=i(100),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSFilter\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"source\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),t.prototype.compute_indices=function(t){return this.filter=this.func.apply(this,this.values.concat([t,i,{}])),e.prototype.compute_indices.call(this,t)},t}(r.Filter);(e.CustomJSFilter=l).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=t(21),l=t(14),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Filter\",this.define({filter:[o.Array,null]})},t.prototype.compute_indices=function(t){var e=this.filter;return null!=e&&0<=e.length?s.isArrayOf(e,s.isBoolean)?a.range(0,e.length).filter(function(t){return!0===e[t]}):s.isArrayOf(e,s.isInteger)?e:(l.logger.warn(\"Filter \"+this.id+\": filter should either be array of only booleans or only integers, defaulting to no filtering\"),null):(l.logger.warn(\"Filter \"+this.id+\": filter was not set to be an array, defaulting to no filtering\"),null)},t}(r.Model);(i.Filter=h).initClass()},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(21),l=function(i){function t(t){var e=i.call(this,t)||this;return e.indices=null,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"GroupFilter\",this.define({column_name:[o.String],group:[o.String]})},t.prototype.compute_indices=function(t){var e=this,i=t.get_column(this.column_name);return null==i?(s.logger.warn(\"group filter: groupby column not found in data source\"),null):(this.indices=a.range(0,t.get_length()||0).filter(function(t){return i[t]===e.group}),0===this.indices.length&&s.logger.warn(\"group filter: group '\"+this.group+\"' did not match any values in column '\"+this.column_name+\"'\"),this.indices)},t}(r.Filter);(i.GroupFilter=l).initClass()},function(t,e,i){var n=t(98);i.BooleanFilter=n.BooleanFilter;var r=t(99);i.CustomJSFilter=r.CustomJSFilter;var o=t(100);i.Filter=o.Filter;var s=t(101);i.GroupFilter=s.GroupFilter;var a=t(103);i.IndexFilter=a.IndexFilter},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(44),l=t(21),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"IndexFilter\",this.define({indices:[o.Array,null]})},t.prototype.compute_indices=function(t){return null!=this.indices&&0<=this.indices.length?l.all(this.indices,a.isInteger)?this.indices:(s.logger.warn(\"IndexFilter \"+this.id+\": indices should be array of integers, defaulting to no filtering\"),null):(s.logger.warn(\"IndexFilter \"+this.id+\": indices was not set, defaulting to no filtering\"),null)},t}(r.Filter);(i.IndexFilter=h).initClass()},function(t,e,i){var n=t(391),r=t(113),o=t(15),f=t(44),s=function(i){function t(t){var e=i.call(this,t)||this;return e.last_precision=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BasicTickFormatter\",this.define({precision:[o.Any,\"auto\"],use_scientific:[o.Bool,!0],power_limit_high:[o.Number,5],power_limit_low:[o.Number,-3]})},Object.defineProperty(t.prototype,\"scientific_limit_low\",{get:function(){return Math.pow(10,this.power_limit_low)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"scientific_limit_high\",{get:function(){return Math.pow(10,this.power_limit_high)},enumerable:!0,configurable:!0}),t.prototype.doFormat=function(t,e){if(0==t.length)return[];var i=0;2<=t.length&&(i=Math.abs(t[1]-t[0])/1e4);var n=!1;if(this.use_scientific)for(var r=0,o=t;r<o.length;r++){var s=o[r],a=Math.abs(s);if(i<a&&(a>=this.scientific_limit_high||a<=this.scientific_limit_low)){n=!0;break}}var l=new Array(t.length),h=this.precision;if(null==h||f.isNumber(h))if(n)for(var u=0,c=t.length;u<c;u++)l[u]=t[u].toExponential(h||void 0);else for(var u=0,c=t.length;u<c;u++)l[u]=t[u].toFixed(h||void 0).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\");else for(var _=this.last_precision,p=this.last_precision<=15;p?_<=15:15<=_;p?_++:_--){var d=!0;if(n){for(var u=0,c=t.length;u<c;u++)if(l[u]=t[u].toExponential(_),0<u&&l[u]===l[u-1]){d=!1;break}if(d)break}else{for(var u=0,c=t.length;u<c;u++)if(l[u]=t[u].toFixed(_).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\"),0<u&&l[u]==l[u-1]){d=!1;break}if(d)break}if(d){this.last_precision=_;break}}return l},t}(r.TickFormatter);(i.BasicTickFormatter=s).initClass()},function(t,e,i){var n=t(391),r=t(113),o=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalTickFormatter\"},t.prototype.doFormat=function(t,e){return o.copy(t)},t}(r.TickFormatter);(i.CategoricalTickFormatter=s).initClass()},function(t,e,i){var n=t(391),r=t(389),w=t(390),o=t(113),k=t(14),s=t(15),a=t(21),l=t(44);function S(t,e){if(l.isFunction(e))return e(t);var i,n=r.sprintf(\"$1%06d\",(i=t,Math.round(i/1e3%1*1e6)));return-1==(e=e.replace(/((^|[^%])(%%)*)%f/,n)).indexOf(\"%\")?e:w(t,e)}var C=[\"microseconds\",\"milliseconds\",\"seconds\",\"minsec\",\"minutes\",\"hourmin\",\"hours\",\"days\",\"months\",\"years\"],h=function(i){function t(t){var e=i.call(this,t)||this;return e.strip_leading_zeros=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DatetimeTickFormatter\",this.define({microseconds:[s.Array,[\"%fus\"]],milliseconds:[s.Array,[\"%3Nms\",\"%S.%3Ns\"]],seconds:[s.Array,[\"%Ss\"]],minsec:[s.Array,[\":%M:%S\"]],minutes:[s.Array,[\":%M\",\"%Mm\"]],hourmin:[s.Array,[\"%H:%M\"]],hours:[s.Array,[\"%Hh\",\"%H:%M\"]],days:[s.Array,[\"%m/%d\",\"%a%d\"]],months:[s.Array,[\"%m/%Y\",\"%b %Y\"]],years:[s.Array,[\"%Y\"]]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),this._update_width_formats()},t.prototype._update_width_formats=function(){var n=+w(new Date),t=function(t){var e=t.map(function(t){return S(n,t).length}),i=a.sortBy(a.zip(e,t),function(t){var e=t[0];return e});return a.unzip(i)};this._width_formats={microseconds:t(this.microseconds),milliseconds:t(this.milliseconds),seconds:t(this.seconds),minsec:t(this.minsec),minutes:t(this.minutes),hourmin:t(this.hourmin),hours:t(this.hours),days:t(this.days),months:t(this.months),years:t(this.years)}},t.prototype._get_resolution_str=function(t,e){var i=1.1*t;switch(!1){case!(i<.001):return\"microseconds\";case!(i<1):return\"milliseconds\";case!(i<60):return 60<=e?\"minsec\":\"seconds\";case!(i<3600):return 3600<=e?\"hourmin\":\"minutes\";case!(i<86400):return\"hours\";case!(i<2678400):return\"days\";case!(i<31536e3):return\"months\";default:return\"years\"}},t.prototype.doFormat=function(t,e){if(0==t.length)return[];for(var i=Math.abs(t[t.length-1]-t[0])/1e3,n=i/(t.length-1),r=this._get_resolution_str(n,i),o=this._width_formats[r],s=o[1][0],a=[],l=C.indexOf(r),h={},u=0,c=C;u<c.length;u++){var _=c[u];h[_]=0}h.seconds=5,h.minsec=4,h.minutes=4,h.hourmin=3,h.hours=3;for(var p=0,d=t;p<d.length;p++){var f=d[p],v=void 0,m=void 0;try{m=w(f,\"%Y %m %d %H %M %S\").split(/\\s+/).map(function(t){return parseInt(t,10)}),v=S(f,s)}catch(t){k.logger.warn(\"unable to format tick for timestamp value \"+f),k.logger.warn(\" - \"+t),a.push(\"ERR\");continue}for(var g=!1,y=l;0==m[h[C[y]]];){var b=void 0;if((y+=1)==C.length)break;if((\"minsec\"==r||\"hourmin\"==r)&&!g){if(\"minsec\"==r&&0==m[4]&&0!=m[5]||\"hourmin\"==r&&0==m[3]&&0!=m[4]){b=this._width_formats[C[l-1]][1][0],v=S(f,b);break}g=!0}b=this._width_formats[C[y]][1][0],v=S(f,b)}if(this.strip_leading_zeros){var x=v.replace(/^0+/g,\"\");x!=v&&isNaN(parseInt(x))&&(x=\"0\"+x),a.push(x)}else a.push(v)}return a},t}(o.TickFormatter);(i.DatetimeTickFormatter=h).initClass()},function(o,t,e){var i=o(391),n=o(113),r=o(15),s=o(32),a=o(38),l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"FuncTickFormatter\",this.define({args:[r.Any,{}],code:[r.String,\"\"],use_strict:[r.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_func=function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0,\"tick\",\"index\",\"ticks\"].concat(this.names,[\"require\",\"exports\",t])))},t.prototype.doFormat=function(t,e){var n=this,r=this._make_func().bind({});return t.map(function(t,e,i){return r.apply(void 0,[t,e,i].concat(n.values,[o,{}]))})},t}(n.TickFormatter);(e.FuncTickFormatter=l).initClass()},function(t,e,i){var n=t(104);i.BasicTickFormatter=n.BasicTickFormatter;var r=t(105);i.CategoricalTickFormatter=r.CategoricalTickFormatter;var o=t(106);i.DatetimeTickFormatter=o.DatetimeTickFormatter;var s=t(107);i.FuncTickFormatter=s.FuncTickFormatter;var a=t(109);i.LogTickFormatter=a.LogTickFormatter;var l=t(110);i.MercatorTickFormatter=l.MercatorTickFormatter;var h=t(111);i.NumeralTickFormatter=h.NumeralTickFormatter;var u=t(112);i.PrintfTickFormatter=u.PrintfTickFormatter;var c=t(113);i.TickFormatter=c.TickFormatter},function(t,e,i){var n=t(391),r=t(113),o=t(104),s=t(14),a=t(15),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogTickFormatter\",this.define({ticker:[a.Instance,null]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.basic_formatter=new o.BasicTickFormatter,null==this.ticker&&s.logger.warn(\"LogTickFormatter not configured with a ticker, using default base of 10 (labels will be incorrect if ticker base is not 10)\")},t.prototype.doFormat=function(t,e){if(0==t.length)return[];for(var i=null!=this.ticker?this.ticker.base:10,n=!1,r=new Array(t.length),o=0,s=t.length;o<s;o++)if(r[o]=i+\"^\"+Math.round(Math.log(t[o])/Math.log(i)),0<o&&r[o]==r[o-1]){n=!0;break}return n?this.basic_formatter.doFormat(t,e):r},t}(r.TickFormatter);(i.LogTickFormatter=l).initClass()},function(t,e,i){var n=t(391),r=t(104),o=t(15),h=t(33),s=function(l){function t(t){return l.call(this,t)||this}return n.__extends(t,l),t.initClass=function(){this.prototype.type=\"MercatorTickFormatter\",this.define({dimension:[o.LatLon]})},t.prototype.doFormat=function(t,e){if(null==this.dimension)throw new Error(\"MercatorTickFormatter.dimension not configured\");if(0==t.length)return[];var i=t.length,n=new Array(i);if(\"lon\"==this.dimension)for(var r=0;r<i;r++){var o=h.wgs84_mercator.inverse([t[r],e.loc])[0];n[r]=o}else for(var r=0;r<i;r++){var s=h.wgs84_mercator.inverse([e.loc,t[r]]),a=s[1];n[r]=a}return l.prototype.doFormat.call(this,n,e)},t}(r.BasicTickFormatter);(i.MercatorTickFormatter=s).initClass()},function(t,e,i){var n=t(391),o=t(361),r=t(113),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NumeralTickFormatter\",this.define({format:[s.String,\"0,0\"],language:[s.String,\"en\"],rounding:[s.String,\"round\"]})},Object.defineProperty(t.prototype,\"_rounding_fn\",{get:function(){switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}},enumerable:!0,configurable:!0}),t.prototype.doFormat=function(t,e){var i=this.format,n=this.language,r=this._rounding_fn;return t.map(function(t){return o.format(t,i,n,r)})},t}(r.TickFormatter);(i.NumeralTickFormatter=a).initClass()},function(t,e,i){var n=t(391),r=t(389),o=t(113),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PrintfTickFormatter\",this.define({format:[s.String,\"%s\"]})},t.prototype.doFormat=function(t,e){var i=this;return t.map(function(t){return r.sprintf(i.format,t)})},t}(o.TickFormatter);(i.PrintfTickFormatter=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TickFormatter\"},t}(r.Model);(i.TickFormatter=o).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),z=t(9),s=t(15),P=t(31),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=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=this._outer_radius,this._angle=new Float32Array(this._start_angle.length);for(var t=0,e=this._start_angle.length;t<e;t++)this._angle[t]=this._end_angle[t]-this._start_angle[t]},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._start_angle,s=i._angle,a=i.sinner_radius,l=i.souter_radius,h=this.model.properties.direction.value(),u=0,c=e;u<c.length;u++){var _=c[u];isNaN(n[_]+r[_]+a[_]+l[_]+o[_]+s[_])||(t.translate(n[_],r[_]),t.rotate(o[_]),t.moveTo(l[_],0),t.beginPath(),t.arc(0,0,l[_],0,s[_],h),t.rotate(s[_]),t.lineTo(a[_],0),t.arc(0,0,a[_],0,-s[_],!h),t.closePath(),t.rotate(-s[_]-o[_]),t.translate(-n[_],-r[_]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,_),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,_),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.renderer.xscale.invert(a),u=this.renderer.yscale.invert(l);if(\"data\"==this.model.properties.outer_radius.units)n=h-this.max_outer_radius,o=h+this.max_outer_radius,r=u-this.max_outer_radius,s=u+this.max_outer_radius;else{var c=a-this.max_outer_radius,_=a+this.max_outer_radius;e=this.renderer.xscale.r_invert(c,_),n=e[0],o=e[1];var p=l-this.max_outer_radius,d=l+this.max_outer_radius;i=this.renderer.yscale.r_invert(p,d),r=i[0],s=i[1]}for(var f=[],v=z.validate_bbox_coords([n,o],[r,s]),m=0,g=this.index.indices(v);m<g.length;m++){var y=g[m],b=Math.pow(this.souter_radius[y],2),x=Math.pow(this.sinner_radius[y],2),w=this.renderer.xscale.r_compute(h,this._x[y]),c=w[0],_=w[1],k=this.renderer.yscale.r_compute(u,this._y[y]),p=k[0],d=k[1],S=Math.pow(c-_,2)+Math.pow(p-d,2);S<=b&&x<=S&&f.push([y,S])}for(var C=this.model.properties.direction.value(),T=[],A=0,E=f;A<E.length;A++){var M=E[A],y=M[0],S=M[1],O=Math.atan2(l-this.sy[y],a-this.sx[y]);P.angle_between(-O,-this._start_angle[y],-this._end_angle[y],C)&&T.push([y,S])}return z.create_hit_test_result_from_hits(T)},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._scenterxy=function(t){var e=(this.sinner_radius[t]+this.souter_radius[t])/2,i=(this._start_angle[t]+this._end_angle[t])/2;return{x:this.sx[t]+e*Math.cos(i),y:this.sy[t]+e*Math.sin(i)}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.AnnularWedgeView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"AnnularWedge\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({direction:[s.Direction,\"anticlock\"],inner_radius:[s.DistanceSpec],outer_radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.AnnularWedge=l).initClass()},function(t,e,i){var n=t(391),r=t(146),C=t(9),o=t(15),p=t(28),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=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=this._outer_radius},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sinner_radius,s=i.souter_radius,a=0,l=e;a<l.length;a++){var h=l[a];if(!isNaN(n[h]+r[h]+o[h]+s[h])){if(this.visuals.fill.doit){if(this.visuals.fill.set_vectorize(t,h),t.beginPath(),p.is_ie)for(var u=0,c=[!1,!0];u<c.length;u++){var _=c[u];t.arc(n[h],r[h],o[h],0,Math.PI,_),t.arc(n[h],r[h],s[h],Math.PI,0,!_)}else t.arc(n[h],r[h],o[h],0,2*Math.PI,!0),t.arc(n[h],r[h],s[h],2*Math.PI,0,!1);t.fill()}this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,h),t.beginPath(),t.arc(n[h],r[h],o[h],0,2*Math.PI),t.moveTo(n[h]+s[h],r[h]),t.arc(n[h],r[h],s[h],0,2*Math.PI),t.stroke())}}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.renderer.xscale.invert(a),u=this.renderer.yscale.invert(l);if(\"data\"==this.model.properties.outer_radius.units)n=h-this.max_outer_radius,o=h+this.max_outer_radius,r=u-this.max_outer_radius,s=u+this.max_outer_radius;else{var c=a-this.max_outer_radius,_=a+this.max_outer_radius;e=this.renderer.xscale.r_invert(c,_),n=e[0],o=e[1];var p=l-this.max_outer_radius,d=l+this.max_outer_radius;i=this.renderer.yscale.r_invert(p,d),r=i[0],s=i[1]}for(var f=[],v=C.validate_bbox_coords([n,o],[r,s]),m=0,g=this.index.indices(v);m<g.length;m++){var y=g[m],b=Math.pow(this.souter_radius[y],2),x=Math.pow(this.sinner_radius[y],2),w=this.renderer.xscale.r_compute(h,this._x[y]),c=w[0],_=w[1],k=this.renderer.yscale.r_compute(u,this._y[y]),p=k[0],d=k[1],S=Math.pow(c-_,2)+Math.pow(p-d,2);S<=b&&x<=S&&f.push([y,S])}return C.create_hit_test_result_from_hits(f)},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=.5*Math.min(Math.abs(o-n),Math.abs(s-r)),c=new Array(a);c[i]=.4*u;var _=new Array(a);_[i]=.8*u,this._render(t,[i],{sx:l,sy:h,sinner_radius:c,souter_radius:_})},e}(r.XYGlyphView);i.AnnulusView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Annulus\",this.prototype.default_view=s,this.mixins([\"line\",\"fill\"]),this.define({inner_radius:[o.DistanceSpec],outer_radius:[o.DistanceSpec]})},t}(r.XYGlyph);(i.Annulus=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.sradius,s=i._start_angle,a=i._end_angle;if(this.visuals.line.doit)for(var l=this.model.properties.direction.value(),h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c])||(t.beginPath(),t.arc(n[c],r[c],o[c],s[c],a[c],l),this.visuals.line.set_vectorize(t,c),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.ArcView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Arc\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({direction:[s.Direction,\"anticlock\"],radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Arc=l).initClass()},function(t,e,i){var n=t(391),l=t(37),r=t(123),o=t(143);function h(t,e,i,n,r,o,s,a){for(var l=[],h=[[],[]],u=0;u<=2;u++){var c=void 0,_=void 0,p=void 0;if(0===u?(_=6*t-12*i+6*r,c=-3*t+9*i-9*r+3*s,p=3*i-3*t):(_=6*e-12*n+6*o,c=-3*e+9*n-9*o+3*a,p=3*n-3*e),Math.abs(c)<1e-12){if(Math.abs(_)<1e-12)continue;var d=-p/_;0<d&&d<1&&l.push(d)}else{var f=_*_-4*p*c,v=Math.sqrt(f);if(!(f<0)){var m=(-_+v)/(2*c);0<m&&m<1&&l.push(m);var g=(-_-v)/(2*c);0<g&&g<1&&l.push(g)}}}for(var y=l.length,b=y;y--;){var d=l[y],x=1-d,w=x*x*x*t+3*x*x*d*i+3*x*d*d*r+d*d*d*s;h[0][y]=w;var k=x*x*x*e+3*x*x*d*n+3*x*d*d*o+d*d*d*a;h[1][y]=k}return h[0][b]=t,h[1][b]=e,h[0][b+1]=s,h[1][b+1]=a,[Math.min.apply(Math,h[0]),Math.max.apply(Math,h[1]),Math.max.apply(Math,h[0]),Math.min.apply(Math,h[1])]}var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++)if(!isNaN(this._x0[e]+this._x1[e]+this._y0[e]+this._y1[e]+this._cx0[e]+this._cy0[e]+this._cx1[e]+this._cy1[e])){var n=h(this._x0[e],this._y0[e],this._x1[e],this._y1[e],this._cx0[e],this._cy0[e],this._cx1[e],this._cy1[e]),r=n[0],o=n[1],s=n[2],a=n[3];t.push({minX:r,minY:o,maxX:s,maxY:a,i:e})}return new l.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1,a=i.scx0,l=i.scy0,h=i.scx1,u=i.scy1;if(this.visuals.line.doit)for(var c=0,_=e;c<_.length;c++){var p=_[c];isNaN(n[p]+r[p]+o[p]+s[p]+a[p]+l[p]+h[p]+u[p])||(t.beginPath(),t.moveTo(n[p],r[p]),t.bezierCurveTo(a[p],l[p],h[p],u[p],o[p],s[p]),this.visuals.line.set_vectorize(t,p),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.BezierView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Bezier\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"],[\"cx0\",\"cy0\"],[\"cx1\",\"cy1\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Bezier=a).initClass()},function(t,e,i){var n=t(391),l=t(37),r=t(123),o=t(143),f=t(9),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_box=function(t){for(var e=[],i=0;i<t;i++){var n=this._lrtb(i),r=n[0],o=n[1],s=n[2],a=n[3];!isNaN(r+o+s+a)&&isFinite(r+o+s+a)&&e.push({minX:Math.min(r,o),minY:Math.min(s,a),maxX:Math.max(o,r),maxY:Math.max(s,a),i:i})}return new l.SpatialIndex(e)},e.prototype._render=function(t,e,i){for(var n=i.sleft,r=i.sright,o=i.stop,s=i.sbottom,a=0,l=e;a<l.length;a++){var h=l[a];isNaN(n[h]+o[h]+r[h]+s[h])||(this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,h),t.fillRect(n[h],o[h],r[h]-n[h],s[h]-o[h])),this.visuals.line.doit&&(t.beginPath(),t.rect(n[h],o[h],r[h]-n[h],s[h]-o[h]),this.visuals.line.set_vectorize(t,h),t.stroke()))}},e.prototype._clamp_viewport=function(){for(var t=this.renderer.plot_view.frame.bbox.h_range,e=this.renderer.plot_view.frame.bbox.v_range,i=this.stop.length,n=0;n<i;n++)this.stop[n]=Math.max(this.stop[n],e.start),this.sbottom[n]=Math.min(this.sbottom[n],e.end),this.sleft[n]=Math.max(this.sleft[n],t.start),this.sright[n]=Math.min(this.sright[n],t.end)},e.prototype._hit_rect=function(t){return this._hit_rect_against_index(t)},e.prototype._hit_point=function(t){var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=f.create_empty_hit_test_result();return s.indices=o,s},e.prototype._hit_span=function(t){var e,i=t.sx,n=t.sy;if(\"v\"==t.direction){var r=this.renderer.yscale.invert(n),o=this.renderer.plot_view.frame.bbox.h_range,s=this.renderer.xscale.r_invert(o.start,o.end),a=s[0],l=s[1];e=this.index.indices({minX:a,minY:r,maxX:l,maxY:r})}else{var h=this.renderer.xscale.invert(i),u=this.renderer.plot_view.frame.bbox.v_range,c=this.renderer.yscale.r_invert(u.start,u.end),_=c[0],p=c[1];e=this.index.indices({minX:h,minY:_,maxX:h,maxY:p})}var d=f.create_empty_hit_test_result();return d.indices=e,d},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.BoxView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Box\",this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.Box=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.XYGlyphView);i.CenterRotatableView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CenterRotatable\",this.mixins([\"line\",\"fill\"]),this.define({angle:[o.AngleSpec,0],width:[o.DistanceSpec],height:[o.DistanceSpec]})},t}(r.XYGlyph);(i.CenterRotatable=a).initClass()},function(t,e,i){var n=t(391),r=t(146),M=t(9),o=t(15),h=t(21),s=t(22),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){if(null!=this._radius)if(\"data\"==this.model.properties.radius.spec.units){var t=this.model.properties.radius_dimension.spec.value;switch(t){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\":var e=this.sdist(this.renderer.xscale,this._x,this._radius),i=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=s.map(e,function(t,e){return Math.max(t,i[e])});break;case\"min\":var e=this.sdist(this.renderer.xscale,this._x,this._radius),n=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=s.map(e,function(t,e){return Math.min(t,n[e])})}}else this.sradius=this._radius,this.max_size=2*this.max_radius;else this.sradius=s.map(this._size,function(t){return t/2})},e.prototype._mask_data=function(){var t,e,i,n,r,o,s,a,l=this.renderer.plot_view.frame.bbox.ranges,h=l[0],u=l[1];if(null!=this._radius&&\"data\"==this.model.properties.radius.units){var c=h.start,_=h.end;t=this.renderer.xscale.r_invert(c,_),r=t[0],s=t[1],r-=this.max_radius,s+=this.max_radius;var p=u.start,d=u.end;e=this.renderer.yscale.r_invert(p,d),o=e[0],a=e[1],o-=this.max_radius,a+=this.max_radius}else{var c=h.start-this.max_size,_=h.end+this.max_size;i=this.renderer.xscale.r_invert(c,_),r=i[0],s=i[1];var p=u.start-this.max_size,d=u.end+this.max_size;n=this.renderer.yscale.r_invert(p,d),o=n[0],a=n[1]}var f=M.validate_bbox_coords([r,s],[o,a]);return this.index.indices(f)},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sradius,s=0,a=e;s<a.length;s++){var l=a[s];isNaN(n[l]+r[l]+o[l])||(t.beginPath(),t.arc(n[l],r[l],o[l],0,2*Math.PI,!1),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,l),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,l),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d,f,v,m=t.sx,g=t.sy,y=this.renderer.xscale.invert(m),b=this.renderer.yscale.invert(g);null!=this._radius&&\"data\"==this.model.properties.radius.units?(p=y-this.max_radius,d=y+this.max_radius,f=b-this.max_radius,v=b+this.max_radius):(h=m-this.max_size,u=m+this.max_size,e=this.renderer.xscale.r_invert(h,u),p=e[0],d=e[1],i=[Math.min(p,d),Math.max(p,d)],p=i[0],d=i[1],c=g-this.max_size,_=g+this.max_size,n=this.renderer.yscale.r_invert(c,_),f=n[0],v=n[1],r=[Math.min(f,v),Math.max(f,v)],f=r[0],v=r[1]);var x=M.validate_bbox_coords([p,d],[f,v]),w=this.index.indices(x),k=[];if(null!=this._radius&&\"data\"==this.model.properties.radius.units)for(var S=0,C=w;S<C.length;S++){var T=C[S];l=Math.pow(this.sradius[T],2),o=this.renderer.xscale.r_compute(y,this._x[T]),h=o[0],u=o[1],s=this.renderer.yscale.r_compute(b,this._y[T]),c=s[0],_=s[1],(a=Math.pow(h-u,2)+Math.pow(c-_,2))<=l&&k.push([T,a])}else for(var A=0,E=w;A<E.length;A++){var T=E[A];l=Math.pow(this.sradius[T],2),(a=Math.pow(this.sx[T]-m,2)+Math.pow(this.sy[T]-g,2))<=l&&k.push([T,a])}return M.create_hit_test_result_from_hits(k)},e.prototype._hit_span=function(t){var e,i,n,r,o,s,a,l,h,u=t.sx,c=t.sy,_=this.bounds(),p=_.minX,d=_.minY,f=_.maxX,v=_.maxY,m=M.create_empty_hit_test_result();if(\"h\"==t.direction){var g=void 0,y=void 0;l=d,h=v,null!=this._radius&&\"data\"==this.model.properties.radius.units?(g=u-this.max_radius,y=u+this.max_radius,e=this.renderer.xscale.r_invert(g,y),s=e[0],a=e[1]):(o=this.max_size/2,g=u-o,y=u+o,i=this.renderer.xscale.r_invert(g,y),s=i[0],a=i[1])}else{var b=void 0,x=void 0;s=p,a=f,null!=this._radius&&\"data\"==this.model.properties.radius.units?(b=c-this.max_radius,x=c+this.max_radius,n=this.renderer.yscale.r_invert(b,x),l=n[0],h=n[1]):(o=this.max_size/2,b=c-o,x=c+o,r=this.renderer.yscale.r_invert(b,x),l=r[0],h=r[1])}var w=M.validate_bbox_coords([s,a],[l,h]),k=this.index.indices(w);return m.indices=k,m},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=M.validate_bbox_coords([s,a],[h,u]),_=M.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype._hit_poly=function(t){for(var e=t.sx,i=t.sy,n=h.range(0,this.sx.length),r=[],o=0,s=n.length;o<s;o++){var a=n[o];M.point_in_poly(this.sx[o],this.sy[o],e,i)&&r.push(a)}var l=M.create_empty_hit_test_result();return l.indices=r,l},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=new Array(a);u[i]=.2*Math.min(Math.abs(o-n),Math.abs(s-r)),this._render(t,[i],{sx:l,sy:h,sradius:u})},e}(r.XYGlyphView);i.CircleView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Circle\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({angle:[o.AngleSpec,0],size:[o.DistanceSpec,{units:\"screen\",value:4}],radius:[o.DistanceSpec,null],radius_dimension:[o.String,\"x\"]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.properties.radius.optional=!0},t}(r.XYGlyph);(i.Circle=l).initClass()},function(t,e,i){var n=t(391),r=t(122),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.EllipseOvalView);i.EllipseView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ellipse\",this.prototype.default_view=o},t}(r.EllipseOval);(i.Ellipse=s).initClass()},function(t,e,i){var n=t(391),r=t(119),S=t(9),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_data=function(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)},e.prototype._map_data=function(){\"data\"==this.model.properties.width.units?this.sw=this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this.sw=this._width,\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sw,s=i.sh,a=i._angle,l=0,h=e;l<h.length;l++){var u=h[l];isNaN(n[u]+r[u]+o[u]+s[u]+a[u])||(t.beginPath(),t.ellipse(n[u],r[u],o[u]/2,s[u]/2,a[u],0,2*Math.PI),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,u),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,u),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d=t.sx,f=t.sy,v=this.renderer.xscale.invert(d),m=this.renderer.yscale.invert(f);\"data\"==this.model.properties.width.units?(o=v-this.max_width,s=v+this.max_width):(u=d-this.max_width,c=d+this.max_width,e=this.renderer.xscale.r_invert(u,c),o=e[0],s=e[1]),\"data\"==this.model.properties.height.units?(a=m-this.max_height,l=m+this.max_height):(_=f-this.max_height,p=f+this.max_height,i=this.renderer.yscale.r_invert(_,p),a=i[0],l=i[1]);for(var g=S.validate_bbox_coords([o,s],[a,l]),y=this.index.indices(g),b=[],x=0,w=y;x<w.length;x++){var k=w[x];S.point_in_ellipse(d,f,this._angle[k],this.sh[k]/2,this.sw[k]/2,this.sx[k],this.sy[k])&&(n=this.renderer.xscale.r_compute(v,this._x[k]),u=n[0],c=n[1],r=this.renderer.yscale.r_compute(m,this._y[k]),_=r[0],p=r[1],h=Math.pow(u-c,2)+Math.pow(_-p,2),b.push([k,h]))}return S.create_hit_test_result_from_hits(b)},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=this.sw[i]/this.sh[i],c=.8*Math.min(Math.abs(o-n),Math.abs(s-r)),_=new Array(a),p=new Array(a);1<u?(_[i]=c,p[i]=c/u):(_[i]=c*u,p[i]=c),this._render(t,[i],{sx:l,sy:h,sw:_,sh:p,_angle:[0]})},e.prototype._bounds=function(t){var e=t.minX,i=t.maxX,n=t.minY,r=t.maxY;return{minX:e-this.max_w2,maxX:i+this.max_w2,minY:n-this.max_h2,maxY:r+this.max_h2}},e}(r.CenterRotatableView);i.EllipseOvalView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EllipseOval\"},t}(r.CenterRotatable);(i.EllipseOval=s).initClass()},function(o,t,e){var i=o(391),p=o(9),l=o(15),h=o(24),y=o(33),s=o(49),n=o(48),r=o(59),a=o(14),b=o(22),x=o(32),d=o(44),w=o(130),k=o(181),u=function(r){function t(){var t=null!==r&&r.apply(this,arguments)||this;return t._nohit_warned={},t}return i.__extends(t,r),t.prototype.initialize=function(t){r.prototype.initialize.call(this,t),this._nohit_warned={},this.renderer=t.renderer,this.visuals=new s.Visuals(this.model);var e=this.renderer.plot_view.gl;if(null!=e){var i=null;try{i=o(452)}catch(t){if(\"MODULE_NOT_FOUND\"!==t.code)throw t;a.logger.warn(\"WebGL was requested and is supported, but bokeh-gl(.min).js is not available, falling back to 2D rendering.\")}if(null!=i){var n=i[this.model.type+\"GLGlyph\"];null!=n&&(this.glglyph=new n(e.ctx,this))}}},t.prototype.set_visuals=function(t){this.visuals.warm_cache(t),null!=this.glglyph&&this.glglyph.set_visuals_changed()},t.prototype.render=function(t,e,i){t.beginPath(),null!=this.glglyph&&this.glglyph.render(t,e,i)||this._render(t,e,i)},t.prototype.has_finished=function(){return!0},t.prototype.notify_finished=function(){this.renderer.notify_finished()},t.prototype._bounds=function(t){return t},t.prototype.bounds=function(){return this._bounds(this.index.bbox)},t.prototype.log_bounds=function(){for(var t=h.empty(),e=this.index.search(h.positive_x()),i=0,n=e;i<n.length;i++){var r=n[i];r.minX<t.minX&&(t.minX=r.minX),r.maxX>t.maxX&&(t.maxX=r.maxX)}for(var o=this.index.search(h.positive_y()),s=0,a=o;s<a.length;s++){var l=a[s];l.minY<t.minY&&(t.minY=l.minY),l.maxY>t.maxY&&(t.maxY=l.maxY)}return this._bounds(t)},t.prototype.get_anchor_point=function(t,e,i){var n=i[0],r=i[1];switch(t){case\"center\":return{x:this.scenterx(e,n,r),y:this.scentery(e,n,r)};default:return null}},t.prototype.sdist=function(t,e,i,n,r){var o,s;void 0===n&&(n=\"edge\"),void 0===r&&(r=!1);var a=e.length;if(\"center\"==n){var l=b.map(i,function(t){return t/2});o=new Float64Array(a);for(var h=0;h<a;h++)o[h]=e[h]-l[h];s=new Float64Array(a);for(var h=0;h<a;h++)s[h]=e[h]+l[h]}else{o=e,s=new Float64Array(a);for(var h=0;h<a;h++)s[h]=o[h]+i[h]}var u=t.v_compute(o),c=t.v_compute(s);return r?b.map(u,function(t,e){return Math.ceil(Math.abs(c[e]-u[e]))}):b.map(u,function(t,e){return Math.abs(c[e]-u[e])})},t.prototype.draw_legend_for_index=function(t,e,i){},t.prototype.hit_test=function(t){var e=null,i=\"_hit_\"+t.type;return null!=this[i]?e=this[i](t):null==this._nohit_warned[t.type]&&(a.logger.debug(\"'\"+t.type+\"' selection not available for \"+this.model.type),this._nohit_warned[t.type]=!0),e},t.prototype._hit_rect_against_index=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=p.validate_bbox_coords([s,a],[h,u]),_=p.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},t.prototype.set_data=function(t,i,e){var n,r,o,s,a=this.model.materialize_dataspecs(t);if(this.visuals.set_all_indices(i),i&&!(this instanceof w.LineView)){var l={},h=function(t){var e=a[t];\"_\"===t.charAt(0)?l[t]=i.map(function(t){return e[t]}):l[t]=e};for(var u in a)h(u);a=l}var c=this;if(x.extend(c,a),this.renderer.plot_view.model.use_map&&(null!=c._x&&(n=y.project_xy(c._x,c._y),c._x=n[0],c._y=n[1]),null!=c._xs&&(r=y.project_xsys(c._xs,c._ys),c._xs=r[0],c._ys=r[1]),null!=c._x0&&(o=y.project_xy(c._x0,c._y0),c._x0=o[0],c._y0=o[1]),null!=c._x1&&(s=y.project_xy(c._x1,c._y1),c._x1=s[0],c._y1=s[1])),null!=this.renderer.plot_view.frame.x_ranges)for(var _=this.renderer.plot_view.frame.x_ranges[this.model.x_range_name],p=this.renderer.plot_view.frame.y_ranges[this.model.y_range_name],d=0,f=this.model._coords;d<f.length;d++){var v=f[d],m=v[0],g=v[1];m=\"_\"+m,g=\"_\"+g,null!=c._xs?(_ instanceof k.FactorRange&&(c[m]=b.map(c[m],function(t){return _.v_synthetic(t)})),p instanceof k.FactorRange&&(c[g]=b.map(c[g],function(t){return p.v_synthetic(t)}))):(_ instanceof k.FactorRange&&(c[m]=_.v_synthetic(c[m])),p instanceof k.FactorRange&&(c[g]=p.v_synthetic(c[g])))}null!=this.glglyph&&this.glglyph.set_data_changed(c._x.length),this._set_data(e),this.index_data()},t.prototype._set_data=function(t){},t.prototype.index_data=function(){this.index=this._index_data()},t.prototype.mask_data=function(t){return null!=this.glglyph||null==this._mask_data?t:this._mask_data()},t.prototype.map_data=function(){for(var t,e=this,i=0,n=this.model._coords;i<n.length;i++){var r=n[i],o=r[0],s=r[1],a=\"s\"+o,l=\"s\"+s;if(s=\"_\"+s,null!=e[o=\"_\"+o]&&(d.isArray(e[o][0])||d.isTypedArray(e[o][0]))){var h=e[o].length;e[a]=new Array(h),e[l]=new Array(h);for(var u=0;u<h;u++){var c=this.map_to_screen(e[o][u],e[s][u]),_=c[0],p=c[1];e[a][u]=_,e[l][u]=p}}else t=this.map_to_screen(e[o],e[s]),e[a]=t[0],e[l]=t[1]}this._map_data()},t.prototype._map_data=function(){},t.prototype.map_to_screen=function(t,e){return this.renderer.plot_view.map_to_screen(t,e,this.model.x_range_name,this.model.y_range_name)},t}(n.View);e.GlyphView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Glyph\",this.prototype._coords=[],this.internal({x_range_name:[l.String,\"default\"],y_range_name:[l.String,\"default\"]})},t.coords=function(t){var e=this.prototype._coords.concat(t);this.prototype._coords=e;for(var i={},n=0,r=t;n<r.length;n++){var o=r[n],s=o[0],a=o[1];i[s]=[l.NumberSpec],i[a]=[l.NumberSpec]}this.define(i)},t}(r.Model);(e.Glyph=c).initClass()},function(t,e,i){var n=t(391),r=t(118),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return(this.sleft[t]+this.sright[t])/2},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._index_data=function(){return this._index_box(this._y.length)},e.prototype._lrtb=function(t){var e=Math.min(this._left[t],this._right[t]),i=Math.max(this._left[t],this._right[t]),n=this._y[t]+.5*this._height[t],r=this._y[t]-.5*this._height[t];return[e,i,n,r]},e.prototype._map_data=function(){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);var t=this.sy.length;this.stop=new Float64Array(t),this.sbottom=new Float64Array(t);for(var 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()},e}(r.BoxView);i.HBarView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"HBar\",this.prototype.default_view=s,this.coords([[\"left\",\"y\"]]),this.define({height:[o.DistanceSpec],right:[o.NumberSpec]}),this.override({left:0})},t}(r.Box);(i.HBar=a).initClass()},function(t,e,i){var n=t(391),r=t(123),f=t(9),o=t(15),a=t(37),s=t(143),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._set_data=function(){var t=this._q.length,e=this.model.size,i=this.model.aspect_scale;if(this._x=new Float64Array(t),this._y=new Float64Array(t),\"pointytop\"==this.model.orientation)for(var n=0;n<t;n++)this._x[n]=e*Math.sqrt(3)*(this._q[n]+this._r[n]/2)/i,this._y[n]=3*-e/2*this._r[n];else for(var n=0;n<t;n++)this._x[n]=3*e/2*this._q[n],this._y[n]=-e*Math.sqrt(3)*(this._r[n]+this._q[n]/2)*i},e.prototype._index_data=function(){var t,e=this.model.size,i=Math.sqrt(3)*e/2;\"flattop\"==this.model.orientation?(i=(t=[e,i])[0],e=t[1],e*=this.model.aspect_scale):i/=this.model.aspect_scale;for(var n=[],r=0;r<this._x.length;r++){var o=this._x[r],s=this._y[r];!isNaN(o+s)&&isFinite(o+s)&&n.push({minX:o-i,minY:s-e,maxX:o+i,maxY:s+e,i:r})}return new a.SpatialIndex(n)},e.prototype.map_data=function(){var t,e;t=this.map_to_screen(this._x,this._y),this.sx=t[0],this.sy=t[1],e=this._get_unscaled_vertices(),this.svx=e[0],this.svy=e[1]},e.prototype._get_unscaled_vertices=function(){var t=this.model.size,e=this.model.aspect_scale;if(\"pointytop\"==this.model.orientation){var i=this.renderer.yscale,n=this.renderer.xscale,r=Math.abs(i.compute(0)-i.compute(t)),o=Math.sqrt(3)/2*Math.abs(n.compute(0)-n.compute(t))/e,s=r/2,a=[0,-o,-o,0,o,o],l=[r,s,-s,-r,-s,s];return[a,l]}var i=this.renderer.xscale,n=this.renderer.yscale,r=Math.abs(i.compute(0)-i.compute(t)),o=Math.sqrt(3)/2*Math.abs(n.compute(0)-n.compute(t))*e,s=r/2,a=[r,s,-s,-r,-s,s],l=[0,-o,-o,0,o,o];return[a,l]},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.svx,s=i.svy,a=i._scale,l=0,h=e;l<h.length;l++){var u=h[l];if(!isNaN(n[u]+r[u]+a[u])){t.translate(n[u],r[u]),t.beginPath();for(var c=0;c<6;c++)t.lineTo(o[c]*a[u],s[c]*a[u]);t.closePath(),t.translate(-n[u],-r[u]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,u),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,u),t.stroke())}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=[],a=0,l=o;a<l.length;a++){var h=l[a];f.point_in_poly(e-this.sx[h],i-this.sy[h],this.svx,this.svy)&&s.push(h)}var u=f.create_empty_hit_test_result();return u.indices=s,u},e.prototype._hit_span=function(t){var e,i=t.sx,n=t.sy;if(\"v\"==t.direction){var r=this.renderer.yscale.invert(n),o=this.renderer.plot_view.frame.bbox.h_range,s=this.renderer.xscale.r_invert(o.start,o.end),a=s[0],l=s[1];e=this.index.indices({minX:a,minY:r,maxX:l,maxY:r})}else{var h=this.renderer.xscale.invert(i),u=this.renderer.plot_view.frame.bbox.v_range,c=this.renderer.yscale.r_invert(u.start,u.end),_=c[0],p=c[1];e=this.index.indices({minX:h,minY:_,maxX:h,maxY:p})}var d=f.create_empty_hit_test_result();return d.indices=e,d},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=f.validate_bbox_coords([s,a],[h,u]),_=f.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype.draw_legend_for_index=function(t,e,i){s.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.HexTileView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"HexTile\",this.prototype.default_view=l,this.coords([[\"r\",\"q\"]]),this.mixins([\"line\",\"fill\"]),this.define({size:[o.Number,1],aspect_scale:[o.Number,1],scale:[o.NumberSpec,1],orientation:[o.String,\"pointytop\"]}),this.override({line_color:null})},t}(r.Glyph);(i.HexTile=h).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(167),s=t(15),c=t(21),l=t(37),_=t(9),a=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.color_mapper.change,function(){return e._update_image()}),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._update_image=function(){null!=this.image_data&&(this._set_data(),this.renderer.plot_view.request_render())},t.prototype._index_data=function(){for(var t=[],e=0,i=this._x.length;e<i;e++){var n=this._lrtb(e),r=n[0],o=n[1],s=n[2],a=n[3];!isNaN(r+o+s+a)&&isFinite(r+o+s+a)&&t.push({minX:r,minY:a,maxX:o,maxY:s,i:e})}return new l.SpatialIndex(t)},t.prototype._lrtb=function(t){var e=this.renderer.xscale.source_range,i=this._x[t],n=e.is_reversed?i-this._dw[t]:i+this._dw[t],r=this.renderer.yscale.source_range,o=this._y[t],s=r.is_reversed?o-this._dh[t]:o+this._dh[t],a=i<n?[i,n]:[n,i],l=a[0],h=a[1],u=o<s?[o,s]:[s,o],c=u[0],_=u[1];return[l,h,_,c]},t.prototype._image_index=function(t,e,i){var n=this._lrtb(t),r=n[0],o=n[1],s=n[2],a=n[3],l=this._width[t],h=this._height[t],u=(o-r)/l,c=(s-a)/h,_=Math.floor((e-r)/u),p=Math.floor((i-a)/c);return{index:t,dim1:_,dim2:p,flat_index:p*l+_}},t.prototype._hit_point=function(t){var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=_.validate_bbox_coords([n,n],[r,r]),s=this.index.indices(o),a=_.create_empty_hit_test_result();a.image_indices=[];for(var l=0,h=s;l<h.length;l++){var u=h[l];e!=1/0&&i!=1/0&&a.image_indices.push(this._image_index(u,n,r))}return a},t.prototype._set_data=function(){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 Array(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new Array(this._image.length));for(var t=this.model.color_mapper.rgba_mapper,e=0,i=this._image.length;e<i;e++){var n=void 0;if(null!=this._image_shape&&0<this._image_shape[e].length){n=this._image[e];var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var o=this._image[e];n=c.concat(o),this._height[e]=o.length,this._width[e]=o[0].length}var s=this.image_data[e],a=void 0;null!=s&&s.width==this._width[e]&&s.height==this._height[e]?a=s:((a=document.createElement(\"canvas\")).width=this._width[e],a.height=this._height[e]);var l=a.getContext(\"2d\"),h=l.getImageData(0,0,this._width[e],this._height[e]),u=t.v_compute(n);h.data.set(u),l.putImageData(h,0,0),this.image_data[e]=a,this.max_dw=0,\"data\"==this.model.properties.dw.units&&(this.max_dw=c.max(this._dw)),this.max_dh=0,\"data\"==this.model.properties.dh.units&&(this.max_dh=c.max(this._dh))}},t.prototype._map_data=function(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}},t.prototype._render=function(t,e,i){var n=i.image_data,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=t.getImageSmoothingEnabled();t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.global_alpha;for(var h=0,u=e;h<u.length;h++){var c=u[h];if(null!=n[c]&&!isNaN(r[c]+o[c]+s[c]+a[c])){var _=o[c];t.translate(0,_),t.scale(1,-1),t.translate(0,-_),t.drawImage(n[c],0|r[c],0|o[c],s[c],a[c]),t.translate(0,_),t.scale(1,-1),t.translate(0,-_)}}t.setImageSmoothingEnabled(l)},t.prototype.bounds=function(){var t=this.index.bbox;return t.maxX+=this.max_dw,t.maxY+=this.max_dh,t},t}(r.XYGlyphView);i.ImageView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Image\",this.prototype.default_view=a,this.define({image:[s.NumberSpec],dw:[s.DistanceSpec],dh:[s.DistanceSpec],dilate:[s.Bool,!1],global_alpha:[s.Number,1],color_mapper:[s.Instance,function(){return new o.LinearColorMapper({palette:[\"#000000\",\"#252525\",\"#525252\",\"#737373\",\"#969696\",\"#bdbdbd\",\"#d9d9d9\",\"#f0f0f0\",\"#ffffff\"]})}]})},t}(r.XYGlyph);(i.Image=h).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(15),f=t(21),s=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._set_data=function(t){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 Array(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new Array(this._image.length));for(var e=0,i=this._image.length;e<i;e++)if(!(null!=t&&t.indexOf(e)<0)){var n=void 0;if(null!=this._image_shape&&0<this._image_shape[e].length){n=this._image[e].buffer;var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var o=this._image[e],s=f.concat(o);n=new ArrayBuffer(4*s.length);for(var a=new Uint32Array(n),l=0,h=s.length;l<h;l++)a[l]=s[l];this._height[e]=o.length,this._width[e]=o[0].length}var u=this.image_data[e],c=void 0;null!=u&&u.width==this._width[e]&&u.height==this._height[e]?c=u:((c=document.createElement(\"canvas\")).width=this._width[e],c.height=this._height[e]);var _=c.getContext(\"2d\"),p=_.getImageData(0,0,this._width[e],this._height[e]),d=new Uint8Array(n);p.data.set(d),_.putImageData(p,0,0),this.image_data[e]=c,this.max_dw=0,\"data\"==this.model.properties.dw.units&&(this.max_dw=f.max(this._dw)),this.max_dh=0,\"data\"==this.model.properties.dh.units&&(this.max_dh=f.max(this._dh))}},t.prototype._map_data=function(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}},t.prototype._render=function(t,e,i){var n=i.image_data,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=t.getImageSmoothingEnabled();t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.global_alpha;for(var h=0,u=e;h<u.length;h++){var c=u[h];if(!isNaN(r[c]+o[c]+s[c]+a[c])){var _=o[c];t.translate(0,_),t.scale(1,-1),t.translate(0,-_),t.drawImage(n[c],0|r[c],0|o[c],s[c],a[c]),t.translate(0,_),t.scale(1,-1),t.translate(0,-_)}}t.setImageSmoothingEnabled(l)},t.prototype.bounds=function(){var t=this.index.bbox;return t.maxX+=this.max_dw,t.maxY+=this.max_dh,t},t}(r.XYGlyphView);i.ImageRGBAView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ImageRGBA\",this.prototype.default_view=s,this.define({image:[o.NumberSpec],dw:[o.DistanceSpec],dh:[o.DistanceSpec],global_alpha:[o.Number,1],dilate:[o.Bool,!1]})},t}(r.XYGlyph);(i.ImageRGBA=a).initClass()},function(t,e,m){var n=t(391),i=t(146),g=t(14),r=t(15),y=t(22),o=t(37);m.CanvasImage=Image;var s=function(i){function t(){var t=null!==i&&i.apply(this,arguments)||this;return t._images_rendered=!1,t}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._index_data=function(){return new o.SpatialIndex([])},t.prototype._set_data=function(){var n=this;null!=this.image&&this.image.length==this._url.length||(this.image=y.map(this._url,function(){return null}));var t=this.model,r=t.retry_attempts,o=t.retry_timeout;this.retries=y.map(this._url,function(){return r});for(var e=function(t,e){if(null==s._url[t])return\"continue\";var i=new m.CanvasImage;i.onerror=function(){0<n.retries[t]?(g.logger.trace(\"ImageURL failed to load \"+n._url[t]+\" image, retrying in \"+o+\" ms\"),setTimeout(function(){return i.src=n._url[t]},o)):g.logger.warn(\"ImageURL unable to load \"+n._url[t]+\" image after \"+r+\" retries\"),n.retries[t]-=1},i.onload=function(){n.image[t]=i,n.renderer.request_render()},i.src=s._url[t]},s=this,i=0,a=this._url.length;i<a;i++)e(i,a);for(var l=\"data\"==this.model.properties.w.units,h=\"data\"==this.model.properties.h.units,u=this._x.length,c=new Array(l?2*u:u),_=new Array(h?2*u:u),i=0;i<u;i++)c[i]=this._x[i],_[i]=this._y[i];if(l)for(var i=0;i<u;i++)c[u+i]=this._x[i]+this._w[i];if(h)for(var i=0;i<u;i++)_[u+i]=this._y[i]+this._h[i];var p=y.min(c),d=y.max(c),f=y.min(_),v=y.max(_);this._bounds_rect={minX:p,maxX:d,minY:f,maxY:v}},t.prototype.has_finished=function(){return i.prototype.has_finished.call(this)&&1==this._images_rendered},t.prototype._map_data=function(){var t=null!=this.model.w?this._w:y.map(this._x,function(){return NaN}),e=null!=this.model.h?this._h:y.map(this._x,function(){return NaN});switch(this.model.properties.w.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,t,\"edge\",this.model.dilate);break;case\"screen\":this.sw=t}switch(this.model.properties.h.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,e,\"edge\",this.model.dilate);break;case\"screen\":this.sh=e}},t.prototype._render=function(t,e,i){var n=i.image,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=i._angle,h=this.renderer.plot_view.frame;t.rect(h._left.value+1,h._top.value+1,h._width.value-2,h._height.value-2),t.clip();for(var u=!0,c=0,_=e;c<_.length;c++){var p=_[c];if(!isNaN(r[p]+o[p]+l[p])&&-1!=this.retries[p]){var d=n[p];null!=d?this._render_image(t,p,d,r,o,s,a,l):u=!1}}u&&!this._images_rendered&&(this._images_rendered=!0,this.notify_finished())},t.prototype._final_sx_sy=function(t,e,i,n,r){switch(t){case\"top_left\":return[e,i];case\"top_center\":return[e-n/2,i];case\"top_right\":return[e-n,i];case\"center_right\":return[e-n,i-r/2];case\"bottom_right\":return[e-n,i-r];case\"bottom_center\":return[e-n/2,i-r];case\"bottom_left\":return[e,i-r];case\"center_left\":return[e,i-r/2];case\"center\":return[e-n/2,i-r/2]}},t.prototype._render_image=function(t,e,i,n,r,o,s,a){isNaN(o[e])&&(o[e]=i.width),isNaN(s[e])&&(s[e]=i.height);var l=this.model.anchor,h=this._final_sx_sy(l,n[e],r[e],o[e],s[e]),u=h[0],c=h[1];t.save(),t.globalAlpha=this.model.global_alpha,a[e]?(t.translate(u,c),t.rotate(a[e]),t.drawImage(i,0,0,o[e],s[e]),t.rotate(-a[e]),t.translate(-u,-c)):t.drawImage(i,u,c,o[e],s[e]),t.restore()},t.prototype.bounds=function(){return this._bounds_rect},t}(i.XYGlyphView);m.ImageURLView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ImageURL\",this.prototype.default_view=s,this.define({url:[r.StringSpec],anchor:[r.Anchor,\"top_left\"],global_alpha:[r.Number,1],angle:[r.AngleSpec,0],w:[r.DistanceSpec],h:[r.DistanceSpec],dilate:[r.Bool,!1],retry_attempts:[r.Number,0],retry_timeout:[r.Number,0]})},t}(i.XYGlyph);(m.ImageURL=a).initClass()},function(t,e,i){var n=t(114);i.AnnularWedge=n.AnnularWedge;var r=t(115);i.Annulus=r.Annulus;var o=t(116);i.Arc=o.Arc;var s=t(117);i.Bezier=s.Bezier;var a=t(120);i.Circle=a.Circle;var l=t(119);i.CenterRotatable=l.CenterRotatable;var h=t(121);i.Ellipse=h.Ellipse;var u=t(122);i.EllipseOval=u.EllipseOval;var c=t(123);i.Glyph=c.Glyph;var _=t(124);i.HBar=_.HBar;var p=t(125);i.HexTile=p.HexTile;var d=t(126);i.Image=d.Image;var f=t(127);i.ImageRGBA=f.ImageRGBA;var v=t(128);i.ImageURL=v.ImageURL;var m=t(130);i.Line=m.Line;var g=t(131);i.MultiLine=g.MultiLine;var y=t(132);i.MultiPolygons=y.MultiPolygons;var b=t(133);i.Oval=b.Oval;var x=t(134);i.Patch=x.Patch;var w=t(135);i.Patches=w.Patches;var k=t(136);i.Quad=k.Quad;var S=t(137);i.Quadratic=S.Quadratic;var C=t(138);i.Ray=C.Ray;var T=t(139);i.Rect=T.Rect;var A=t(140);i.Segment=A.Segment;var E=t(141);i.Step=E.Step;var M=t(142);i.Text=M.Text;var O=t(144);i.VBar=O.VBar;var z=t(145);i.Wedge=z.Wedge;var P=t(146);i.XYGlyph=P.XYGlyph},function(t,e,i){var n=t(391),r=t(146),a=t(143),c=t(9),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=!1,s=null;this.visuals.line.set_value(t);for(var a=0,l=e;a<l.length;a++){var h=l[a];if(o){if(!isFinite(n[h]+r[h])){t.stroke(),t.beginPath(),o=!1,s=h;continue}null!=s&&1<h-s&&(t.stroke(),o=!1)}o?t.lineTo(n[h],r[h]):(t.beginPath(),t.moveTo(n[h],r[h]),o=!0),s=h}o&&t.stroke()},e.prototype._hit_point=function(t){for(var e=this,i=c.create_empty_hit_test_result(),n={x:t.sx,y:t.sy},r=9999,o=Math.max(2,this.visuals.line.line_width.value()/2),s=0,a=this.sx.length-1;s<a;s++){var l={x:this.sx[s],y:this.sy[s]},h={x:this.sx[s+1],y:this.sy[s+1]},u=c.dist_to_segment(n,l,h);u<o&&u<r&&(r=u,i.add_to_selected_glyphs(this.model),i.get_view=function(){return e},i.line_indices=[s])}return i},e.prototype._hit_span=function(t){var e,i,n=this,r=t.sx,o=t.sy,s=c.create_empty_hit_test_result();\"v\"==t.direction?(e=this.renderer.yscale.invert(o),i=this._y):(e=this.renderer.xscale.invert(r),i=this._x);for(var a=0,l=i.length-1;a<l;a++)(i[a]<=e&&e<=i[a+1]||i[a+1]<=e&&e<=i[a])&&(s.add_to_selected_glyphs(this.model),s.get_view=function(){return n},s.line_indices.push(a));return s},e.prototype.get_interpolation_hit=function(t,e){var i=[this._x[t],this._y[t],this._x[t+1],this._y[t+1]],n=i[0],r=i[1],o=i[2],s=i[3];return a.line_interpolation(this.renderer,e,n,r,o,s)},e.prototype.draw_legend_for_index=function(t,e,i){a.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.LineView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Line\",this.prototype.default_view=o,this.mixins([\"line\"])},t}(r.XYGlyph);(i.Line=s).initClass()},function(t,e,i){var n=t(391),m=t(37),d=t(9),f=t(32),g=t(21),y=t(44),r=t(123),l=t(143),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)if(null!=this._xs[e]&&0!==this._xs[e].length){for(var n=this._xs[e],r=[],o=0,s=n.length;o<s;o++){var a=n[o];y.isStrictNaN(a)||r.push(a)}for(var l=this._ys[e],h=[],o=0,s=l.length;o<s;o++){var u=l[o];y.isStrictNaN(u)||h.push(u)}var c=[g.min(r),g.max(r)],_=c[0],p=c[1],d=[g.min(h),g.max(h)],f=d[0],v=d[1];t.push({minX:_,minY:f,maxX:p,maxY:v,i:e})}return new m.SpatialIndex(t)},e.prototype._render=function(t,e,i){for(var n=i.sxs,r=i.sys,o=0,s=e;o<s.length;o++){var a=s[o],l=[n[a],r[a]],h=l[0],u=l[1];this.visuals.line.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c])||isNaN(u[c])?(t.stroke(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.stroke()}},e.prototype._hit_point=function(t){for(var e=d.create_empty_hit_test_result(),i={x:t.sx,y:t.sy},n=9999,r={},o=0,s=this.sxs.length;o<s;o++){for(var a=Math.max(2,this.visuals.line.cache_select(\"line_width\",o)/2),l=null,h=0,u=this.sxs[o].length-1;h<u;h++){var c={x:this.sxs[o][h],y:this.sys[o][h]},_={x:this.sxs[o][h+1],y:this.sys[o][h+1]},p=d.dist_to_segment(i,c,_);p<a&&p<n&&(n=p,l=[h])}l&&(r[o]=l)}return e.indices=f.keys(r).map(function(t){return parseInt(t,10)}),e.multiline_indices=r,e},e.prototype._hit_span=function(t){var e,i,n=t.sx,r=t.sy,o=d.create_empty_hit_test_result();\"v\"===t.direction?(e=this.renderer.yscale.invert(r),i=this._ys):(e=this.renderer.xscale.invert(n),i=this._xs);for(var s={},a=0,l=i.length;a<l;a++){for(var h=[],u=0,c=i[a].length-1;u<c;u++)i[a][u]<=e&&e<=i[a][u+1]&&h.push(u);0<h.length&&(s[a]=h)}return o.indices=f.keys(s).map(function(t){return parseInt(t,10)}),o.multiline_indices=s,o},e.prototype.get_interpolation_hit=function(t,e,i){var n=[this._xs[t][e],this._ys[t][e],this._xs[t][e+1],this._ys[t][e+1]],r=n[0],o=n[1],s=n[2],a=n[3];return l.line_interpolation(this.renderer,i,r,o,s,a)},e.prototype.draw_legend_for_index=function(t,e,i){l.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.MultiLineView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiLine\",this.prototype.default_view=o,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.MultiLine=s).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143),u=t(21),s=t(22),x=t(9),m=t(44),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)for(var n=0,r=this._xs[e].length;n<r;n++){var o=this._xs[e][n][0],s=this._ys[e][n][0];0!=o.length&&t.push({minX:u.min(o),minY:u.min(s),maxX:u.max(o),maxY:u.max(s),i:e})}return this.hole_index=this._index_hole_data(),new h.SpatialIndex(t)},e.prototype._index_hole_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)for(var n=0,r=this._xs[e].length;n<r;n++)if(1<this._xs[e][n].length)for(var o=1,s=this._xs[e][n].length;o<s;o++){var a=this._xs[e][n][o],l=this._ys[e][n][o];0!=a.length&&t.push({minX:u.min(a),minY:u.min(l),maxX:u.max(a),maxY:u.max(l),i:e})}return new h.SpatialIndex(t)},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.x_ranges.default,e=[t.min,t.max],i=e[0],n=e[1],r=this.renderer.plot_view.frame.y_ranges.default,o=[r.min,r.max],s=o[0],a=o[1],l=x.validate_bbox_coords([i,n],[s,a]),h=this.index.indices(l);return h.sort(function(t,e){return t-e}).filter(function(t,e,i){return 0===e||t!==i[e-1]})},e.prototype._render=function(t,e,i){var n=i.sxs,r=i.sys;if(this.visuals.fill.doit||this.visuals.line.doit)for(var o=0,s=e;o<s.length;o++){var a=s[o];t.beginPath();for(var l=0,h=n[a].length;l<h;l++)for(var u=0,c=n[a][l].length;u<c;u++){for(var _=n[a][l][u],p=r[a][l][u],d=0,f=_.length;d<f;d++)0!=d?t.lineTo(_[d],p[d]):t.moveTo(_[d],p[d]);t.closePath()}this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,a),t.fill(\"evenodd\")),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,a),t.stroke())}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=this.hole_index.indices({minX:n,minY:r,maxX:n,maxY:r}),a=[],l=0,h=o.length;l<h;l++)for(var u=o[l],c=this.sxs[u],_=this.sys[u],p=0,d=c.length;p<d;p++){var f=c[p].length;if(x.point_in_poly(e,i,c[p][0],_[p][0]))if(1==f)a.push(u);else if(-1==s.indexOf(u))a.push(u);else if(1<f){for(var v=!1,m=1;m<f;m++){var g=c[p][m],y=_[p][m];if(x.point_in_poly(e,i,g,y)){v=!0;break}}v||a.push(u)}}var b=x.create_empty_hit_test_result();return b.indices=a,b},e.prototype._get_snap_coord=function(t){return s.sum(t)/t.length},e.prototype.scenterx=function(t,e,i){if(1==this.sxs[t].length)return this._get_snap_coord(this.sxs[t][0][0]);for(var n=this.sxs[t],r=this.sys[t],o=0,s=n.length;o<s;o++)if(x.point_in_poly(e,i,n[o][0],r[o][0]))return this._get_snap_coord(n[o][0]);throw new Error(\"unreachable code\")},e.prototype.scentery=function(t,e,i){if(1==this.sys[t].length)return this._get_snap_coord(this.sys[t][0][0]);for(var n=this.sxs[t],r=this.sys[t],o=0,s=n.length;o<s;o++)if(x.point_in_poly(e,i,n[o][0],r[o][0]))return this._get_snap_coord(r[o][0]);throw new Error(\"unreachable code\")},e.prototype.map_data=function(){for(var t=this,e=0,i=this.model._coords;e<i.length;e++){var n=i[e],r=n[0],o=n[1],s=\"s\"+r,a=\"s\"+o;if(o=\"_\"+o,null!=t[r=\"_\"+r]&&(m.isArray(t[r][0])||m.isTypedArray(t[r][0]))){var l=t[r].length;t[s]=new Array(l),t[a]=new Array(l);for(var h=0;h<l;h++){var u=t[r][h].length;t[s][h]=new Array(u),t[a][h]=new Array(u);for(var c=0;c<u;c++){var _=t[r][h][c].length;t[s][h][c]=new Array(_),t[a][h][c]=new Array(_);for(var p=0;p<_;p++){var d=this.map_to_screen(t[r][h][c][p],t[o][h][c][p]),f=d[0],v=d[1];t[s][h][c][p]=f,t[a][h][c][p]=v}}}}}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.MultiPolygonsView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiPolygons\",this.prototype.default_view=a,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.MultiPolygons=l).initClass()},function(t,e,i){var n=t(391),r=t(122),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){var t,e=this._x.length;this.sw=new Float64Array(e),t=\"data\"==this.model.properties.width.units?this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this._width;for(var i=0;i<e;i++)this.sw[i]=.75*t[i];\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height},e}(r.EllipseOvalView);i.OvalView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Oval\",this.prototype.default_view=o},t}(r.EllipseOval);(i.Oval=s).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy;if(this.visuals.fill.doit){this.visuals.fill.set_value(t);for(var o=0,s=e;o<s.length;o++){var a=s[o];0!=a?isNaN(n[a]+r[a])?(t.closePath(),t.fill(),t.beginPath()):t.lineTo(n[a],r[a]):(t.beginPath(),t.moveTo(n[a],r[a]))}t.closePath(),t.fill()}if(this.visuals.line.doit){this.visuals.line.set_value(t);for(var l=0,h=e;l<h.length;l++){var a=h[l];0!=a?isNaN(n[a]+r[a])?(t.closePath(),t.stroke(),t.beginPath()):t.lineTo(n[a],r[a]):(t.beginPath(),t.moveTo(n[a],r[a]))}return t.closePath(),t.stroke()}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.PatchView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Patch\",this.prototype.default_view=s,this.mixins([\"line\",\"fill\"])},t}(r.XYGlyph);(i.Patch=a).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143),u=t(21),s=t(22),l=t(44),f=t(9),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._build_discontinuous_object=function(t){for(var e=[],i=0,n=t.length;i<n;i++){e[i]=[];for(var r=u.copy(t[i]);0<r.length;){var o=u.findLastIndex(r,function(t){return l.isStrictNaN(t)}),s=void 0;0<=o?s=r.splice(o):(s=r,r=[]);var a=s.filter(function(t){return!l.isStrictNaN(t)});e[i].push(a)}}return e},e.prototype._index_data=function(){for(var t=this._build_discontinuous_object(this._xs),e=this._build_discontinuous_object(this._ys),i=[],n=0,r=this._xs.length;n<r;n++)for(var o=0,s=t[n].length;o<s;o++){var a=t[n][o],l=e[n][o];0!=a.length&&i.push({minX:u.min(a),minY:u.min(l),maxX:u.max(a),maxY:u.max(l),i:n})}return new h.SpatialIndex(i)},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.x_ranges.default,e=[t.min,t.max],i=e[0],n=e[1],r=this.renderer.plot_view.frame.y_ranges.default,o=[r.min,r.max],s=o[0],a=o[1],l=f.validate_bbox_coords([i,n],[s,a]),h=this.index.indices(l);return h.sort(function(t,e){return t-e})},e.prototype._render=function(t,e,i){var n=i.sxs,r=i.sys;this.sxss=this._build_discontinuous_object(n),this.syss=this._build_discontinuous_object(r);for(var o=0,s=e;o<s.length;o++){var a=s[o],l=[n[a],r[a]],h=l[0],u=l[1];if(this.visuals.fill.doit){this.visuals.fill.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c]+u[c])?(t.closePath(),t.fill(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.closePath(),t.fill()}if(this.visuals.line.doit){this.visuals.line.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c]+u[c])?(t.closePath(),t.stroke(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.closePath(),t.stroke()}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=[],a=0,l=o.length;a<l;a++)for(var h=o[a],u=this.sxss[h],c=this.syss[h],_=0,p=u.length;_<p;_++)f.point_in_poly(e,i,u[_],c[_])&&s.push(h);var d=f.create_empty_hit_test_result();return d.indices=s,d},e.prototype._get_snap_coord=function(t){return s.sum(t)/t.length},e.prototype.scenterx=function(t,e,i){if(1==this.sxss[t].length)return this._get_snap_coord(this.sxs[t]);for(var n=this.sxss[t],r=this.syss[t],o=0,s=n.length;o<s;o++)if(f.point_in_poly(e,i,n[o],r[o]))return this._get_snap_coord(n[o]);throw new Error(\"unreachable code\")},e.prototype.scentery=function(t,e,i){if(1==this.syss[t].length)return this._get_snap_coord(this.sys[t]);for(var n=this.sxss[t],r=this.syss[t],o=0,s=n.length;o<s;o++)if(f.point_in_poly(e,i,n[o],r[o]))return this._get_snap_coord(r[o]);throw new Error(\"unreachable code\")},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.PatchesView=a;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Patches\",this.prototype.default_view=a,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.Patches=c).initClass()},function(t,e,i){var n=t(391),r=t(118),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.get_anchor_point=function(t,e,i){var n=Math.min(this.sleft[e],this.sright[e]),r=Math.max(this.sright[e],this.sleft[e]),o=Math.min(this.stop[e],this.sbottom[e]),s=Math.max(this.sbottom[e],this.stop[e]);switch(t){case\"top_left\":return{x:n,y:o};case\"top_center\":return{x:(n+r)/2,y:o};case\"top_right\":return{x:r,y:o};case\"center_right\":return{x:r,y:(o+s)/2};case\"bottom_right\":return{x:r,y:s};case\"bottom_center\":return{x:(n+r)/2,y:s};case\"bottom_left\":return{x:n,y:s};case\"center_left\":return{x:n,y:(o+s)/2};case\"center\":return{x:(n+r)/2,y:(o+s)/2};default:return null}},e.prototype.scenterx=function(t){return(this.sleft[t]+this.sright[t])/2},e.prototype.scentery=function(t){return(this.stop[t]+this.sbottom[t])/2},e.prototype._index_data=function(){return this._index_box(this._right.length)},e.prototype._lrtb=function(t){var e=this._left[t],i=this._right[t],n=this._top[t],r=this._bottom[t];return[e,i,n,r]},e}(r.BoxView);i.QuadView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Quad\",this.prototype.default_view=o,this.coords([[\"right\",\"bottom\"],[\"left\",\"top\"]])},t}(r.Box);(i.Quad=s).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143);function u(t,e,i){if(e==(t+i)/2)return[t,i];var n=(t-e)/(t-2*e+i),r=t*Math.pow(1-n,2)+2*e*(1-n)*n+i*Math.pow(n,2);return[Math.min(t,i,r),Math.max(t,i,r)]}var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++)if(!isNaN(this._x0[e]+this._x1[e]+this._y0[e]+this._y1[e]+this._cx[e]+this._cy[e])){var n=u(this._x0[e],this._cx[e],this._x1[e]),r=n[0],o=n[1],s=u(this._y0[e],this._cy[e],this._y1[e]),a=s[0],l=s[1];t.push({minX:r,minY:a,maxX:o,maxY:l,i:e})}return new h.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1,a=i.scx,l=i.scy;if(this.visuals.line.doit)for(var h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c]+l[c])||(t.beginPath(),t.moveTo(n[c],r[c]),t.quadraticCurveTo(a[c],l[c],o[c],s[c]),this.visuals.line.set_vectorize(t,c),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.QuadraticView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Quadratic\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"],[\"cx\",\"cy\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Quadratic=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.length.units?this.slength=this.sdist(this.renderer.xscale,this._x,this._length):this.slength=this._length},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.slength,s=i._angle;if(this.visuals.line.doit){for(var a=this.renderer.plot_view.frame._width.value,l=this.renderer.plot_view.frame._height.value,h=2*(a+l),u=0,c=o.length;u<c;u++)0==o[u]&&(o[u]=h);for(var _=0,p=e;_<p.length;_++){var u=p[_];isNaN(n[u]+r[u]+s[u]+o[u])||(t.translate(n[u],r[u]),t.rotate(s[u]),t.beginPath(),t.moveTo(0,0),t.lineTo(o[u],0),this.visuals.line.set_vectorize(t,u),t.stroke(),t.rotate(-s[u]),t.translate(-n[u],-r[u]))}}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.RayView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ray\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({length:[s.DistanceSpec],angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Ray=l).initClass()},function(t,e,i){var n=t(391),r=t(119),o=t(143),T=t(9),s=t(15),A=t(22),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_data=function(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)},e.prototype._map_data=function(){var t,e;if(\"data\"==this.model.properties.width.units)t=this._map_dist_corner_for_data_side_length(this._x,this._width,this.renderer.xscale),this.sw=t[0],this.sx0=t[1];else{this.sw=this._width;var i=this.sx.length;this.sx0=new Float64Array(i);for(var n=0;n<i;n++)this.sx0[n]=this.sx[n]-this.sw[n]/2}if(\"data\"==this.model.properties.height.units)e=this._map_dist_corner_for_data_side_length(this._y,this._height,this.renderer.yscale),this.sh=e[0],this.sy1=e[1];else{this.sh=this._height;var r=this.sy.length;this.sy1=new Float64Array(r);for(var n=0;n<r;n++)this.sy1[n]=this.sy[n]-this.sh[n]/2}var o=this.sw.length;this.ssemi_diag=new Float64Array(o);for(var n=0;n<o;n++)this.ssemi_diag[n]=Math.sqrt(this.sw[n]/2*this.sw[n]/2+this.sh[n]/2*this.sh[n]/2)},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.sx0,s=i.sy1,a=i.sw,l=i.sh,h=i._angle;if(this.visuals.fill.doit)for(var u=0,c=e;u<c.length;u++){var _=c[u];isNaN(n[_]+r[_]+o[_]+s[_]+a[_]+l[_]+h[_])||(this.visuals.fill.set_vectorize(t,_),h[_]?(t.translate(n[_],r[_]),t.rotate(h[_]),t.fillRect(-a[_]/2,-l[_]/2,a[_],l[_]),t.rotate(-h[_]),t.translate(-n[_],-r[_])):t.fillRect(o[_],s[_],a[_],l[_]))}if(this.visuals.line.doit){t.beginPath();for(var p=0,d=e;p<d.length;p++){var _=d[p];isNaN(n[_]+r[_]+o[_]+s[_]+a[_]+l[_]+h[_])||0!=a[_]&&0!=l[_]&&(h[_]?(t.translate(n[_],r[_]),t.rotate(h[_]),t.rect(-a[_]/2,-l[_]/2,a[_],l[_]),t.rotate(-h[_]),t.translate(-n[_],-r[_])):t.rect(o[_],s[_],a[_],l[_]),this.visuals.line.set_vectorize(t,_),t.stroke(),t.beginPath())}t.stroke()}},e.prototype._hit_rect=function(t){return this._hit_rect_against_index(t)},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=[],s=0,a=this.sx0.length;s<a;s++)o.push(this.sx0[s]+this.sw[s]/2);for(var l=[],s=0,a=this.sy1.length;s<a;s++)l.push(this.sy1[s]+this.sh[s]/2);for(var h=A.max(this._ddist(0,o,this.ssemi_diag)),u=A.max(this._ddist(1,l,this.ssemi_diag)),c=n-h,_=n+h,p=r-u,d=r+u,f=[],v=T.validate_bbox_coords([c,_],[p,d]),m=0,g=this.index.indices(v);m<g.length;m++){var s=g[m],y=void 0,b=void 0;if(this._angle[s]){var x=Math.sin(-this._angle[s]),w=Math.cos(-this._angle[s]),k=w*(e-this.sx[s])-x*(i-this.sy[s])+this.sx[s],S=x*(e-this.sx[s])+w*(i-this.sy[s])+this.sy[s];e=k,i=S,b=Math.abs(this.sx[s]-e)<=this.sw[s]/2,y=Math.abs(this.sy[s]-i)<=this.sh[s]/2}else b=e-this.sx0[s]<=this.sw[s]&&0<=e-this.sx0[s],y=i-this.sy1[s]<=this.sh[s]&&0<=i-this.sy1[s];y&&b&&f.push(s)}var C=T.create_empty_hit_test_result();return C.indices=f,C},e.prototype._map_dist_corner_for_data_side_length=function(t,e,i){for(var n=t.length,r=new Float64Array(n),o=new Float64Array(n),s=0;s<n;s++)r[s]=Number(t[s])-e[s]/2,o[s]=Number(t[s])+e[s]/2;for(var a=i.v_compute(r),l=i.v_compute(o),h=this.sdist(i,r,e,\"edge\",this.model.dilate),u=a,s=0,c=a.length;s<c;s++)if(a[s]!=l[s]){u=a[s]<l[s]?a:l;break}return[h,u]},e.prototype._ddist=function(t,e,i){for(var n=0==t?this.renderer.xscale:this.renderer.yscale,r=e,o=r.length,s=new Float64Array(o),a=0;a<o;a++)s[a]=r[a]+i[a];for(var l=n.v_invert(r),h=n.v_invert(s),u=l.length,c=new Float64Array(u),a=0;a<u;a++)c[a]=Math.abs(h[a]-l[a]);return c},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._bounds=function(t){var e=t.minX,i=t.maxX,n=t.minY,r=t.maxY;return{minX:e-this.max_w2,maxX:i+this.max_w2,minY:n-this.max_h2,maxY:r+this.max_h2}},e}(r.CenterRotatableView);i.RectView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Rect\",this.prototype.default_view=a,this.define({dilate:[s.Bool,!1]})},t}(r.CenterRotatable);(i.Rect=l).initClass()},function(t,e,i){var n=t(391),k=t(9),a=t(37),r=t(123),o=t(143),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++){var n=this._x0[e],r=this._x1[e],o=this._y0[e],s=this._y1[e];isNaN(n+r+o+s)||t.push({minX:Math.min(n,r),minY:Math.min(o,s),maxX:Math.max(n,r),maxY:Math.max(o,s),i:e})}return new a.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1;if(this.visuals.line.doit)for(var a=0,l=e;a<l.length;a++){var h=l[a];isNaN(n[h]+r[h]+o[h]+s[h])||(t.beginPath(),t.moveTo(n[h],r[h]),t.lineTo(o[h],s[h]),this.visuals.line.set_vectorize(t,h),t.stroke())}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n={x:e,y:i},r=[],o=this.renderer.xscale.r_invert(e-2,e+2),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(i-2,i+2),h=l[0],u=l[1],c=this.index.indices({minX:s,minY:h,maxX:a,maxY:u}),_=0,p=c;_<p.length;_++){var d=p[_],f=Math.pow(Math.max(2,this.visuals.line.cache_select(\"line_width\",d)/2),2),v={x:this.sx0[d],y:this.sy0[d]},m={x:this.sx1[d],y:this.sy1[d]},g=k.dist_to_segment_squared(n,v,m);g<f&&r.push(d)}var y=k.create_empty_hit_test_result();return y.indices=r,y},e.prototype._hit_span=function(t){var e,i,n,r,o,s=this.renderer.plot_view.frame.bbox.ranges,a=s[0],l=s[1],h=t.sx,u=t.sy;\"v\"==t.direction?(o=this.renderer.yscale.invert(u),e=[this._y0,this._y1],n=e[0],r=e[1]):(o=this.renderer.xscale.invert(h),i=[this._x0,this._x1],n=i[0],r=i[1]);for(var c=[],_=this.renderer.xscale.r_invert(a.start,a.end),p=_[0],d=_[1],f=this.renderer.yscale.r_invert(l.start,l.end),v=f[0],m=f[1],g=this.index.indices({minX:p,minY:v,maxX:d,maxY:m}),y=0,b=g;y<b.length;y++){var x=b[y];(n[x]<=o&&o<=r[x]||r[x]<=o&&o<=n[x])&&c.push(x)}var w=k.create_empty_hit_test_result();return w.indices=c,w},e.prototype.scenterx=function(t){return(this.sx0[t]+this.sx1[t])/2},e.prototype.scentery=function(t){return(this.sy0[t]+this.sy1[t])/2},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.SegmentView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Segment\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Segment=l).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n,r,o,s,a,l,h=i.sx,u=i.sy,c=!1,_=null;this.visuals.line.set_value(t);var p=e.length;if(!(p<2)){t.beginPath(),t.moveTo(h[0],u[0]);for(var d=0,f=e;d<f.length;d++){var v=f[d],m=void 0,g=void 0,y=void 0,b=void 0;switch(this.model.mode){case\"before\":n=[h[v-1],u[v]],m=n[0],y=n[1],r=[h[v],u[v]],g=r[0],b=r[1];break;case\"after\":o=[h[v],u[v-1]],m=o[0],y=o[1],s=[h[v],u[v]],g=s[0],b=s[1];break;case\"center\":var x=(h[v-1]+h[v])/2;a=[x,u[v-1]],m=a[0],y=a[1],l=[x,u[v]],g=l[0],b=l[1];break;default:throw new Error(\"unexpected\")}if(c){if(!isFinite(h[v]+u[v])){t.stroke(),t.beginPath(),c=!1,_=v;continue}null!=_&&1<v-_&&(t.stroke(),c=!1)}c?(t.lineTo(m,y),t.lineTo(g,b)):(t.beginPath(),t.moveTo(h[v],u[v]),c=!0),_=v}t.lineTo(h[p-1],u[p-1]),t.stroke()}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.StepView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Step\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({mode:[s.StepMode,\"before\"]})},t}(r.XYGlyph);(i.Step=l).initClass()},function(t,e,i){var n=t(391),r=t(146),d=t(9),o=t(15),O=t(41),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._rotate_point=function(t,e,i,n,r){var o=(t-i)*Math.cos(r)-(e-n)*Math.sin(r)+i,s=(t-i)*Math.sin(r)+(e-n)*Math.cos(r)+n;return[o,s]},e.prototype._text_bounds=function(t,e,i,n){var r=[t,t+i,t+i,t,t],o=[e,e,e-n,e-n,e];return[r,o]},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i._x_offset,s=i._y_offset,a=i._angle,l=i._text;this._sys=[],this._sxs=[];for(var h=0,u=e;h<u.length;h++){var c=u[h];if(!isNaN(n[c]+r[c]+o[c]+s[c]+a[c])&&null!=l[c]&&(this._sxs[c]=[],this._sys[c]=[],this.visuals.text.doit)){var _=\"\"+l[c];t.save(),t.translate(n[c]+o[c],r[c]+s[c]),t.rotate(a[c]),this.visuals.text.set_vectorize(t,c);var p=this.visuals.text.cache_select(\"font\",c),d=O.get_text_height(p).height,f=this.visuals.text.text_line_height.value()*d;if(-1==_.indexOf(\"\\n\")){t.fillText(_,0,0);var v=n[c]+o[c],m=r[c]+s[c],g=t.measureText(_).width,y=this._text_bounds(v,m,g,f),b=y[0],x=y[1];this._sxs[c].push(b),this._sys[c].push(x)}else{var w=_.split(\"\\n\"),k=f*w.length,S=this.visuals.text.cache_select(\"text_baseline\",c),C=void 0;switch(S){case\"top\":C=0;break;case\"middle\":C=-k/2+f/2;break;case\"bottom\":C=-k+f;break;default:C=0,console.warn(\"'\"+S+\"' baseline not supported with multi line text\")}for(var T=0,A=w;T<A.length;T++){var E=A[T];t.fillText(E,0,C);var v=n[c]+o[c],m=C+r[c]+s[c],g=t.measureText(E).width,M=this._text_bounds(v,m,g,f),b=M[0],x=M[1];this._sxs[c].push(b),this._sys[c].push(x),C+=f}}t.restore()}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=[],r=0;r<this._sxs.length;r++)for(var o=this._sxs[r],s=this._sys[r],a=o.length,l=0,h=a;l<h;l++){var u=this._rotate_point(e,i,o[a-1][0],s[a-1][0],-this._angle[r]),c=u[0],_=u[1];d.point_in_poly(c,_,o[l],s[l])&&n.push(r)}var p=d.create_empty_hit_test_result();return p.indices=n,p},e.prototype._scenterxy=function(t){var e=this._sxs[t][0][0],i=this._sys[t][0][0],n=(this._sxs[t][0][2]+e)/2,r=(this._sys[t][0][2]+i)/2,o=this._rotate_point(n,r,e,i,this._angle[t]),s=o[0],a=o[1];return{x:s,y:a}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.TextView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Text\",this.prototype.default_view=s,this.mixins([\"text\"]),this.define({text:[o.StringSpec,{field:\"text\"}],angle:[o.AngleSpec,0],x_offset:[o.NumberSpec,0],y_offset:[o.NumberSpec,0]})},t}(r.XYGlyph);(i.Text=a).initClass()},function(t,e,i){var x=t(9);i.generic_line_legend=function(t,e,i,n){var r=i.x0,o=i.x1,s=i.y0,a=i.y1;e.save(),e.beginPath(),e.moveTo(r,(s+a)/2),e.lineTo(o,(s+a)/2),t.line.doit&&(t.line.set_vectorize(e,n),e.stroke()),e.restore()},i.generic_area_legend=function(t,e,i,n){var r=i.x0,o=i.x1,s=i.y0,a=i.y1,l=.1*Math.abs(o-r),h=.1*Math.abs(a-s),u=r+l,c=o-l,_=s+h,p=a-h;t.fill.doit&&(t.fill.set_vectorize(e,n),e.fillRect(u,_,c-u,p-_)),t.line.doit&&(e.beginPath(),e.rect(u,_,c-u,p-_),t.line.set_vectorize(e,n),e.stroke())},i.line_interpolation=function(t,e,i,n,r,o){var s,a,l,h,u,c,_,p,d,f,v=e.sx,m=e.sy;\"point\"==e.type?(s=t.yscale.r_invert(m-1,m+1),d=s[0],f=s[1],a=t.xscale.r_invert(v-1,v+1),_=a[0],p=a[1]):\"v\"==e.direction?(l=t.yscale.r_invert(m,m),d=l[0],f=l[1],h=[Math.min(i-1,r-1),Math.max(i+1,r+1)],_=h[0],p=h[1]):(u=t.xscale.r_invert(v,v),_=u[0],p=u[1],c=[Math.min(n-1,o-1),Math.max(n+1,o+1)],d=c[0],f=c[1]);var g=x.check_2_segments_intersect(_,d,p,f,i,n,r,o),y=g.x,b=g.y;return[y,b]}},function(t,e,i){var n=t(391),r=t(118),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return(this.stop[t]+this.sbottom[t])/2},e.prototype._index_data=function(){return this._index_box(this._x.length)},e.prototype._lrtb=function(t){var e=this._x[t]-this._width[t]/2,i=this._x[t]+this._width[t]/2,n=Math.max(this._top[t],this._bottom[t]),r=Math.min(this._top[t],this._bottom[t]);return[e,i,n,r]},e.prototype._map_data=function(){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);var t=this.sx.length;this.sleft=new Float64Array(t),this.sright=new Float64Array(t);for(var e=0;e<t;e++)this.sleft[e]=this.sx[e]-this.sw[e]/2,this.sright[e]=this.sx[e]+this.sw[e]/2;this._clamp_viewport()},e}(r.BoxView);i.VBarView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"VBar\",this.prototype.default_view=s,this.coords([[\"x\",\"bottom\"]]),this.define({width:[o.DistanceSpec],top:[o.NumberSpec]}),this.override({bottom:0})},t}(r.Box);(i.VBar=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),P=t(9),s=t(15),j=t(31),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sradius,s=i._start_angle,a=i._end_angle,l=this.model.properties.direction.value(),h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c])||(t.beginPath(),t.arc(n[c],r[c],o[c],s[c],a[c],l),t.lineTo(n[c],r[c]),t.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,c),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,c),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d=t.sx,f=t.sy,v=this.renderer.xscale.invert(d),m=this.renderer.yscale.invert(f),g=2*this.max_radius;\"data\"===this.model.properties.radius.units?(u=v-g,c=v+g,_=m-g,p=m+g):(s=d-g,a=d+g,e=this.renderer.xscale.r_invert(s,a),u=e[0],c=e[1],l=f-g,h=f+g,i=this.renderer.yscale.r_invert(l,h),_=i[0],p=i[1]);for(var y=[],b=P.validate_bbox_coords([u,c],[_,p]),x=0,w=this.index.indices(b);x<w.length;x++){var k=w[x],S=Math.pow(this.sradius[k],2);n=this.renderer.xscale.r_compute(v,this._x[k]),s=n[0],a=n[1],r=this.renderer.yscale.r_compute(m,this._y[k]),l=r[0],h=r[1],(o=Math.pow(s-a,2)+Math.pow(l-h,2))<=S&&y.push([k,o])}for(var C=this.model.properties.direction.value(),T=[],A=0,E=y;A<E.length;A++){var M=E[A],k=M[0],O=M[1],z=Math.atan2(f-this.sy[k],d-this.sx[k]);j.angle_between(-z,-this._start_angle[k],-this._end_angle[k],C)&&T.push([k,O])}return P.create_hit_test_result_from_hits(T)},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._scenterxy=function(t){var e=this.sradius[t]/2,i=(this._start_angle[t]+this._end_angle[t])/2;return{x:this.sx[t]+e*Math.cos(i),y:this.sy[t]+e*Math.sin(i)}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.WedgeView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Wedge\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({direction:[s.Direction,\"anticlock\"],radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Wedge=l).initClass()},function(t,e,i){var n=t(391),o=t(37),r=t(123),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x.length;e<i;e++){var n=this._x[e],r=this._y[e];!isNaN(n+r)&&isFinite(n+r)&&t.push({minX:n,minY:r,maxX:n,maxY:r,i:e})}return new o.SpatialIndex(t)},e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return this.sy[t]},e}(r.GlyphView);i.XYGlyphView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"XYGlyph\",this.coords([[\"x\",\"y\"]])},t}(r.Glyph);(i.XYGlyph=a).initClass()},function(t,e,i){var n=t(391),r=t(59),u=t(22),c=t(21),_=t(9),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GraphHitTestPolicy\"},t.prototype._hit_test_nodes=function(t,e){if(!e.model.visible)return null;var i=e.node_view.glyph.hit_test(t);return null==i?null:e.node_view.model.view.convert_selection_from_subset(i)},t.prototype._hit_test_edges=function(t,e){if(!e.model.visible)return null;var i=e.edge_view.glyph.hit_test(t);return null==i?null:e.edge_view.model.view.convert_selection_from_subset(i)},t}(r.Model),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NodesOnly\"},t.prototype.hit_test=function(t,e){return this._hit_test_nodes(t,e)},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.node_renderer.data_source.selected;return r.update(t,i,n),e.node_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.model.get_selection_manager().get_or_create_inspector(i.node_view.model);return o.update(t,n,r),i.node_view.model.data_source.setv({inspected:o},{silent:!0}),i.node_view.model.data_source.inspect.emit([i.node_view,{geometry:e}]),!o.is_empty()},t}(i.GraphHitTestPolicy=o);(i.NodesOnly=s).initClass();var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NodesAndLinkedEdges\"},t.prototype.hit_test=function(t,e){return this._hit_test_nodes(t,e)},t.prototype.get_linked_edges=function(e,t,i){var n=[];\"selection\"==i?n=e.selected.indices.map(function(t){return e.data.index[t]}):\"inspection\"==i&&(n=e.inspected.indices.map(function(t){return e.data.index[t]}));for(var r=[],o=0;o<t.data.start.length;o++)(c.contains(n,t.data.start[o])||c.contains(n,t.data.end[o]))&&r.push(o);for(var s=_.create_empty_hit_test_result(),a=0,l=r;a<l.length;a++){var o=l[a];s.multiline_indices[o]=[0]}return s.indices=r,s},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.node_renderer.data_source.selected;r.update(t,i,n);var o=e.edge_renderer.data_source.selected,s=this.get_linked_edges(e.node_renderer.data_source,e.edge_renderer.data_source,\"selection\");return o.update(s,i,n),e.node_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.node_view.model.data_source.selection_manager.get_or_create_inspector(i.node_view.model);o.update(t,n,r),i.node_view.model.data_source.setv({inspected:o},{silent:!0});var s=i.edge_view.model.data_source.selection_manager.get_or_create_inspector(i.edge_view.model),a=this.get_linked_edges(i.node_view.model.data_source,i.edge_view.model.data_source,\"inspection\");return s.update(a,n,r),i.edge_view.model.data_source.setv({inspected:s},{silent:!0}),i.node_view.model.data_source.inspect.emit([i.node_view,{geometry:e}]),!o.is_empty()},t}(o);(i.NodesAndLinkedEdges=a).initClass();var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EdgesAndLinkedNodes\"},t.prototype.hit_test=function(t,e){return this._hit_test_edges(t,e)},t.prototype.get_linked_nodes=function(e,t,i){var n=[];\"selection\"==i?n=t.selected.indices:\"inspection\"==i&&(n=t.inspected.indices);for(var r=[],o=0,s=n;o<s.length;o++){var a=s[o];r.push(t.data.start[a]),r.push(t.data.end[a])}var l=c.uniq(r).map(function(t){return u.indexOf(e.data.index,t)}),h=_.create_empty_hit_test_result();return h.indices=l,h},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.edge_renderer.data_source.selected;r.update(t,i,n);var o=e.node_renderer.data_source.selected,s=this.get_linked_nodes(e.node_renderer.data_source,e.edge_renderer.data_source,\"selection\");return o.update(s,i,n),e.edge_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.edge_view.model.data_source.selection_manager.get_or_create_inspector(i.edge_view.model);o.update(t,n,r),i.edge_view.model.data_source.setv({inspected:o},{silent:!0});var s=i.node_view.model.data_source.selection_manager.get_or_create_inspector(i.node_view.model),a=this.get_linked_nodes(i.node_view.model.data_source,i.edge_view.model.data_source,\"inspection\");return s.update(a,n,r),i.node_view.model.data_source.setv({inspected:s},{silent:!0}),i.edge_view.model.data_source.inspect.emit([i.edge_view,{geometry:e}]),!o.is_empty()},t}(o);(i.EdgesAndLinkedNodes=l).initClass()},function(t,e,i){var n=t(391);n.__exportStar(t(147),i),n.__exportStar(t(149),i),n.__exportStar(t(150),i)},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutProvider\"},t}(r.Model);(i.LayoutProvider=o).initClass()},function(t,e,i){var n=t(391),r=t(149),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"StaticLayoutProvider\",this.define({graph_layout:[o.Any,{}]})},t.prototype.get_node_coordinates=function(t){for(var e=[],i=[],n=t.data.index,r=0,o=n.length;r<o;r++){var s=this.graph_layout[n[r]],a=null!=s?s:[NaN,NaN],l=a[0],h=a[1];e.push(l),i.push(h)}return[e,i]},t.prototype.get_edge_coordinates=function(t){for(var e,i,n=[],r=[],o=t.data.start,s=t.data.end,a=null!=t.data.xs&&null!=t.data.ys,l=0,h=o.length;l<h;l++){var u=null!=this.graph_layout[o[l]]&&null!=this.graph_layout[s[l]];if(a&&u)n.push(t.data.xs[l]),r.push(t.data.ys[l]);else{var c=void 0,_=void 0;u?(e=[this.graph_layout[o[l]],this.graph_layout[s[l]]],_=e[0],c=e[1]):(_=(i=[[NaN,NaN],[NaN,NaN]])[0],c=i[1]),n.push([_[0],c[0]]),r.push([_[1],c[1]])}}return[n,r]},t}(r.LayoutProvider);(i.StaticLayoutProvider=s).initClass()},function(t,e,i){var n=t(391),h=t(79),r=t(187),o=t(15),u=t(44),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),Object.defineProperty(t.prototype,\"_x_range_name\",{get:function(){return this.model.x_range_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"_y_range_name\",{get:function(){return this.model.y_range_name},enumerable:!0,configurable:!0}),t.prototype.render=function(){if(this.model.visible){var t=this.plot_view.canvas_view.ctx;t.save(),this._draw_regions(t),this._draw_minor_grids(t),this._draw_grids(t),t.restore()}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.request_render()})},t.prototype._draw_regions=function(t){if(this.visuals.band_fill.doit){var e=this.model.grid_coords(\"major\",!1),i=e[0],n=e[1];this.visuals.band_fill.set_value(t);for(var r=0;r<i.length-1;r++)if(r%2==1){var o=this.plot_view.map_to_screen(i[r],n[r],this._x_range_name,this._y_range_name),s=o[0],a=o[1],l=this.plot_view.map_to_screen(i[r+1],n[r+1],this._x_range_name,this._y_range_name),h=l[0],u=l[1];t.fillRect(s[0],a[0],h[1]-s[0],u[1]-a[0]),t.fill()}}},t.prototype._draw_grids=function(t){if(this.visuals.grid_line.doit){var e=this.model.grid_coords(\"major\"),i=e[0],n=e[1];this._draw_grid_helper(t,this.visuals.grid_line,i,n)}},t.prototype._draw_minor_grids=function(t){if(this.visuals.minor_grid_line.doit){var e=this.model.grid_coords(\"minor\"),i=e[0],n=e[1];this._draw_grid_helper(t,this.visuals.minor_grid_line,i,n)}},t.prototype._draw_grid_helper=function(t,e,i,n){e.set_value(t);for(var r=0;r<i.length;r++){var o=this.plot_view.map_to_screen(i[r],n[r],this._x_range_name,this._y_range_name),s=o[0],a=o[1];t.beginPath(),t.moveTo(Math.round(s[0]),Math.round(a[0]));for(var l=1;l<s.length;l++)t.lineTo(Math.round(s[l]),Math.round(a[l]));t.stroke()}},t}(r.GuideRendererView);i.GridView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Grid\",this.prototype.default_view=s,this.mixins([\"line:grid_\",\"line:minor_grid_\",\"fill:band_\"]),this.define({bounds:[o.Any,\"auto\"],dimension:[o.Number,0],ticker:[o.Instance],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({level:\"underlay\",band_fill_color:null,band_fill_alpha:0,grid_line_color:\"#e5e5e5\",minor_grid_line_color:null})},t.prototype.ranges=function(){var t=this.dimension,e=(t+1)%2,i=this.plot.plot_canvas.frame,n=[i.x_ranges[this.x_range_name],i.y_ranges[this.y_range_name]];return[n[t],n[e]]},t.prototype.computed_bounds=function(){var t,e,i,n=this.ranges()[0],r=this.bounds,o=[n.min,n.max];if(u.isArray(r))e=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]),e<o[0]&&(e=o[0]),o[1]<i&&(i=o[1]);else{e=o[0],i=o[1];for(var s=0,a=this.plot.select(h.Axis);s<a.length;s++){var l=a[s];l.dimension==this.dimension&&l.x_range_name==this.x_range_name&&l.y_range_name==this.y_range_name&&(t=l.computed_bounds,e=t[0],i=t[1])}}return[e,i]},t.prototype.grid_coords=function(t,e){var i;void 0===e&&(e=!0);var n=this.dimension,r=(n+1)%2,o=this.ranges(),s=o[0],a=o[1],l=this.computed_bounds(),h=l[0],u=l[1];i=[Math.min(h,u),Math.max(h,u)],h=i[0],u=i[1];var c=this.ticker.get_ticks(h,u,s,a.min,{})[t],_=s.min,p=s.max,d=a.min,f=a.max,v=[[],[]];e||(c[0]!=_&&c.splice(0,0,_),c[c.length-1]!=p&&c.push(p));for(var m=0;m<c.length;m++)if(c[m]!=_&&c[m]!=p||!e){for(var g=[],y=[],b=0;b<2;b++){var x=d+(f-d)/1*b;g.push(c[m]),y.push(x)}v[n].push(g),v[r].push(y)}return v},t}(r.GuideRenderer);(i.Grid=a).initClass()},function(t,e,i){var n=t(151);i.Grid=n.Grid},function(t,e,i){var n=t(391);n.__exportStar(t(66),i),n.__exportStar(t(83),i),n.__exportStar(t(89),i),n.__exportStar(t(93),i),n.__exportStar(t(96),i),n.__exportStar(t(102),i),n.__exportStar(t(108),i),n.__exportStar(t(129),i),n.__exportStar(t(148),i),n.__exportStar(t(152),i),n.__exportStar(t(156),i),n.__exportStar(t(166),i),n.__exportStar(t(274),i),n.__exportStar(t(171),i),n.__exportStar(t(176),i),n.__exportStar(t(182),i),n.__exportStar(t(188),i),n.__exportStar(t(191),i),n.__exportStar(t(195),i),n.__exportStar(t(204),i),n.__exportStar(t(214),i),n.__exportStar(t(224),i),n.__exportStar(t(260),i)},function(t,e,i){var n=t(391),p=t(13),r=t(15),s=t(21),o=t(157),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.children.change,function(){return t.rebuild_child_views()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-grid\")},t.prototype.get_height=function(){var t=this.model.get_layoutable_children(),e=t.map(function(t){return t._height.value});return this.model._horizontal?s.max(e):s.sum(e)},t.prototype.get_width=function(){var t=this.model.get_layoutable_children(),e=t.map(function(t){return t._width.value});return this.model._horizontal?s.sum(e):s.max(e)},t}(o.LayoutDOMView);i.BoxView=a;var l=function(_){function w(t){return _.call(this,t)||this}return n.__extends(w,_),w.initClass=function(){this.prototype.type=\"Box\",this.prototype.default_view=a,this.define({children:[r.Array,[]]}),this.internal({spacing:[r.Number,6]})},w.prototype.initialize=function(){_.prototype.initialize.call(this),this._child_equal_size_width=new p.Variable(this.toString()+\".child_equal_size_width\"),this._child_equal_size_height=new p.Variable(this.toString()+\".child_equal_size_height\"),this._box_equal_size_top=new p.Variable(this.toString()+\".box_equal_size_top\"),this._box_equal_size_bottom=new p.Variable(this.toString()+\".box_equal_size_bottom\"),this._box_equal_size_left=new p.Variable(this.toString()+\".box_equal_size_left\"),this._box_equal_size_right=new p.Variable(this.toString()+\".box_equal_size_right\"),this._box_cell_align_top=new p.Variable(this.toString()+\".box_cell_align_top\"),this._box_cell_align_bottom=new p.Variable(this.toString()+\".box_cell_align_bottom\"),this._box_cell_align_left=new p.Variable(this.toString()+\".box_cell_align_left\"),this._box_cell_align_right=new p.Variable(this.toString()+\".box_cell_align_right\")},w.prototype.get_layoutable_children=function(){return this.children},w.prototype.get_constrained_variables=function(){return n.__assign({},_.prototype.get_constrained_variables.call(this),{box_equal_size_top:this._box_equal_size_top,box_equal_size_bottom:this._box_equal_size_bottom,box_equal_size_left:this._box_equal_size_left,box_equal_size_right:this._box_equal_size_right,box_cell_align_top:this._box_cell_align_top,box_cell_align_bottom:this._box_cell_align_bottom,box_cell_align_left:this._box_cell_align_left,box_cell_align_right:this._box_cell_align_right})},w.prototype.get_constraints=function(){var i=_.prototype.get_constraints.call(this),t=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];i.push.apply(i,t)},e=this.get_layoutable_children();if(0==e.length)return i;for(var n=0,r=e;n<r.length;n++){var o=r[n],s=o.get_constrained_variables(),a=this._child_rect(s);this._horizontal?null!=s.height&&t(p.EQ(a.height,[-1,this._height])):null!=s.width&&t(p.EQ(a.width,[-1,this._width])),this._horizontal?null!=s.box_equal_size_left&&null!=s.box_equal_size_right&&null!=s.width&&t(p.EQ([-1,s.box_equal_size_left],[-1,s.box_equal_size_right],s.width,this._child_equal_size_width)):null!=s.box_equal_size_top&&null!=s.box_equal_size_bottom&&null!=s.height&&t(p.EQ([-1,s.box_equal_size_top],[-1,s.box_equal_size_bottom],s.height,this._child_equal_size_height))}var l=this._info(e[0].get_constrained_variables());t(p.EQ(l.span.start,0));for(var h=1;h<e.length;h++){var u=this._info(e[h].get_constrained_variables());l.span.size&&t(p.EQ(l.span.start,l.span.size,[-1,u.span.start])),t(p.WEAK_EQ(l.whitespace.after,u.whitespace.before,0-this.spacing)),t(p.GE(l.whitespace.after,u.whitespace.before,0-this.spacing)),l=u}var c=e[e.length-1].get_constrained_variables();return this._horizontal?null!=c.width&&t(p.EQ(l.span.start,l.span.size,[-1,this._width])):null!=c.height&&t(p.EQ(l.span.start,l.span.size,[-1,this._height])),i=i.concat(this._align_outer_edges_constraints(!0),this._align_outer_edges_constraints(!1),this._align_inner_cell_edges_constraints(),this._box_equal_size_bounds(!0),this._box_equal_size_bounds(!1),this._box_cell_align_bounds(!0),this._box_cell_align_bounds(!1),this._box_whitespace(!0),this._box_whitespace(!1))},w.prototype._child_rect=function(t){return{x:t.origin_x,y:t.origin_y,width:t.width,height:t.height}},w.prototype._span=function(t){return this._horizontal?{start:t.x,size:t.width}:{start:t.y,size:t.height}},w.prototype._info=function(t){var e;e=this._horizontal?{before:t.whitespace_left,after:t.whitespace_right}:{before:t.whitespace_top,after:t.whitespace_bottom};var i=this._span(this._child_rect(t));return{span:i,whitespace:e}},w.prototype._flatten_cell_edge_variables=function(t){var e;e=t?w._top_bottom_inner_cell_edge_variables:w._left_right_inner_cell_edge_variables;for(var i=t!=this._horizontal,n=this.get_layoutable_children(),r=n.length,o={},s=0,a=0,l=n;a<l.length;a++){var h=l[a],u=void 0;u=h instanceof w?h._flatten_cell_edge_variables(t):{};for(var c=h.get_constrained_variables(),_=0,p=e;_<p.length;_++){var d=p[_];d in c&&(u[d]=[c[d]])}for(var f in u){var v=u[f],m=void 0;if(i){var g=f.split(\" \"),y=g[0],b=1<g.length?g[1]:\"\",x=this._horizontal?\"row\":\"col\";m=y+\" \"+x+\"-\"+r+\"-\"+s+\"-\"+b}else m=f;o[m]=m in o?o[m].concat(v):v}s++}return o},w.prototype._align_inner_cell_edges_constraints=function(){var t=[];if(null!=this.document&&s.includes(this.document.roots(),this)){var e=this._flatten_cell_edge_variables(this._horizontal);for(var i in e){var n=e[i];if(1<n.length)for(var r=n[0],o=1;o<n.length;o++)t.push(p.EQ(n[o],[-1,r]))}}return t},w.prototype._find_edge_leaves=function(t){var e=this.get_layoutable_children(),i=[[],[]];if(0<e.length)if(this._horizontal==t){var n=e[0],r=e[e.length-1];n instanceof w?i[0]=i[0].concat(n._find_edge_leaves(t)[0]):i[0].push(n),r instanceof w?i[1]=i[1].concat(r._find_edge_leaves(t)[1]):i[1].push(r)}else for(var o=0,s=e;o<s.length;o++){var a=s[o];if(a instanceof w){var l=a._find_edge_leaves(t);i[0]=i[0].concat(l[0]),i[1]=i[1].concat(l[1])}else i[0].push(a),i[1].push(a)}return i},w.prototype._align_outer_edges_constraints=function(t){var e,i,n=this._find_edge_leaves(t),r=n[0],o=n[1];t?(e=\"on_edge_align_left\",i=\"on_edge_align_right\"):(e=\"on_edge_align_top\",i=\"on_edge_align_bottom\");var s=function(t,e){for(var i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o.get_constrained_variables();e in s&&i.push(s[e])}return i},a=s(r,e),l=s(o,i),h=[],u=function(t){if(1<t.length)for(var e=t[0],i=1;i<t.length;i++){var n=t[i];h.push(p.EQ([-1,e],n))}};return u(a),u(l),h},w.prototype._box_insets_from_child_insets=function(t,e,i,a){var n,r,o,s,l=this._find_edge_leaves(t),h=l[0],u=l[1];t?(n=e+\"_left\",r=e+\"_right\",o=this[i+\"_left\"],s=this[i+\"_right\"]):(n=e+\"_top\",r=e+\"_bottom\",o=this[i+\"_top\"],s=this[i+\"_bottom\"]);var c=[],_=function(t,e,i){for(var n=0,r=e;n<r.length;n++){var o=r[n],s=o.get_constrained_variables();i in s&&(a?c.push(p.GE([-1,t],s[i])):c.push(p.EQ([-1,t],s[i])))}};return _(o,h,n),_(s,u,r),c},w.prototype._box_equal_size_bounds=function(t){return this._box_insets_from_child_insets(t,\"box_equal_size\",\"_box_equal_size\",!1)},w.prototype._box_cell_align_bounds=function(t){return this._box_insets_from_child_insets(t,\"box_cell_align\",\"_box_cell_align\",!1)},w.prototype._box_whitespace=function(t){return this._box_insets_from_child_insets(t,\"whitespace\",\"_whitespace\",!0)},w._left_right_inner_cell_edge_variables=[\"box_cell_align_left\",\"box_cell_align_right\"],w._top_bottom_inner_cell_edge_variables=[\"box_cell_align_top\",\"box_cell_align_bottom\"],w}(o.LayoutDOM);(i.Box=l).initClass()},function(t,e,i){var n=t(391),r=t(154),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-grid-column\")},e}(r.BoxView);i.ColumnView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e._horizontal=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Column\",this.prototype.default_view=o},t}(r.Box);(i.Column=s).initClass()},function(t,e,i){var n=t(154);i.Box=n.Box;var r=t(155);i.Column=r.Column;var o=t(157);i.LayoutDOM=o.LayoutDOM;var s=t(158);i.Row=s.Row;var a=t(159);i.Spacer=a.Spacer;var l=t(160);i.WidgetBox=l.WidgetBox},function(t,e,i){var n=t(391),r=t(59),g=t(5),o=t(15),s=t(11),h=t(13),a=t(4),l=t(6),u=function(i){function t(){var t=null!==i&&i.apply(this,arguments)||this;return t._solver_inited=!1,t._idle_notified=!1,t}return n.__extends(t,i),t.prototype.initialize=function(t){i.prototype.initialize.call(this,t),this.is_root&&(this._solver=new h.Solver),this.child_views={},this.build_child_views()},t.prototype.remove=function(){for(var t in this.child_views){var e=this.child_views[t];e.remove()}this.child_views={},i.prototype.remove.call(this)},t.prototype.has_finished=function(){if(!i.prototype.has_finished.call(this))return!1;for(var t in this.child_views){var e=this.child_views[t];if(!e.has_finished())return!1}return!0},t.prototype.notify_finished=function(){this.is_root?!this._idle_notified&&this.has_finished()&&null!=this.model.document&&(this._idle_notified=!0,this.model.document.notify_idle(this.model)):i.prototype.notify_finished.call(this)},t.prototype._calc_width_height=function(){for(var t=this.el;t=t.parentElement;)if(!t.classList.contains(\"bk-root\")){if(t==document.body){var e=g.margin(document.body),i=e.left,n=e.right,r=e.top,o=e.bottom,s=document.documentElement.clientWidth-i-n,a=document.documentElement.clientHeight-r-o;return[s,a]}var l=g.padding(t),h=l.left,u=l.right,c=l.top,_=l.bottom,p=t.getBoundingClientRect(),d=p.width,f=p.height,v=d-h-u,m=f-c-_;switch(this.model.sizing_mode){case\"scale_width\":if(0<v)return[v,0<m?m:null];break;case\"scale_height\":if(0<m)return[0<v?v:null,m];break;case\"scale_both\":case\"stretch_both\":if(0<v||0<m)return[0<v?v:null,0<m?m:null];break;default:throw new Error(\"unreachable\")}}return[null,null]},t.prototype._init_solver=function(){this._root_width=new h.Variable(this.toString()+\".root_width\"),this._root_height=new h.Variable(this.toString()+\".root_height\"),this._solver.add_edit_variable(this._root_width,NaN),this._solver.add_edit_variable(this._root_height,NaN);for(var t=this.model.get_all_editables(),e=0,i=t;e<i.length;e++){var n=i[e];this._solver.add_edit_variable(n,h.Strength.strong)}for(var r=this.model.get_all_constraints(),o=0,s=r;o<s.length;o++){var a=s[o];this._solver.add_constraint(a)}var l=this.model.get_constrained_variables();null!=l.width&&this._solver.add_constraint(h.EQ(l.width,this._root_width)),null!=l.height&&this._solver.add_constraint(h.EQ(l.height,this._root_height)),this._solver.update_variables(),this._solver_inited=!0},t.prototype._suggest_dims=function(t,e){var i,n=this.model.get_constrained_variables();null==n.width&&null==n.height||(null!=t&&null!=e||(i=this._calc_width_height(),t=i[0],e=i[1]),null!=n.width&&null!=t&&this._solver.suggest_value(this._root_width,t),null!=n.height&&null!=e&&this._solver.suggest_value(this._root_height,e),this._solver.update_variables())},t.prototype.resize=function(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this.is_root?this._do_layout(!1,t,e):this.root.resize(t,e)},t.prototype.partial_layout=function(){this.is_root?this._do_layout(!1):this.root.partial_layout()},t.prototype.layout=function(){this.is_root?this._do_layout(!0):this.root.layout()},t.prototype._do_layout=function(t,e,i){void 0===e&&(e=null),void 0===i&&(i=null),this._solver_inited&&!t||(this._solver.clear(),this._init_solver()),this._suggest_dims(e,i),this._layout(),this._layout(),this._layout(!0),this.notify_finished()},t.prototype._layout=function(t){void 0===t&&(t=!1);for(var e=0,i=this.model.get_layoutable_children();e<i.length;e++){var n=i[e],r=this.child_views[n.id];null!=r._layout&&r._layout(t)}this.render(),t&&(this._has_finished=!0)},t.prototype.rebuild_child_views=function(){this.solver.clear(),this.build_child_views(),this.layout()},t.prototype.build_child_views=function(){var t=this.model.get_layoutable_children();a.build_views(this.child_views,t,{parent:this}),g.empty(this.el);for(var e=0,i=t;e<i.length;e++){var n=i[e],r=this.child_views[n.id];this.el.appendChild(r.el)}},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.is_root&&window.addEventListener(\"resize\",this),this.connect(this.model.properties.sizing_mode.change,function(){return t.layout()})},t.prototype.handleEvent=function(){this.resize()},t.prototype.disconnect_signals=function(){window.removeEventListener(\"resize\",this),i.prototype.disconnect_signals.call(this)},t.prototype._render_classes=function(){this.el.className=\"\";for(var t=0,e=this.css_classes();t<e.length;t++){var i=e[t];this.el.classList.add(i)}this.el.classList.add(\"bk-layout-\"+this.model.sizing_mode);for(var n=0,r=this.model.css_classes;n<r.length;n++){var o=r[n];this.el.classList.add(o)}},t.prototype.render=function(){switch(this._render_classes(),this.model.sizing_mode){case\"fixed\":var t=void 0;t=null!=this.model.width?this.model.width:this.get_width(),this.model.setv({width:t},{silent:!0});var e=void 0;e=null!=this.model.height?this.model.height:this.get_height(),this.model.setv({height:e},{silent:!0}),this.solver.suggest_value(this.model._width,t),this.solver.suggest_value(this.model._height,e);break;case\"scale_width\":var e=this.get_height();this.solver.suggest_value(this.model._height,e);break;case\"scale_height\":var t=this.get_width();this.solver.suggest_value(this.model._width,t);break;case\"scale_both\":var i=this.get_width_height(),t=i[0],e=i[1];this.solver.suggest_value(this.model._width,t),this.solver.suggest_value(this.model._height,e)}this.solver.update_variables(),this.position()},t.prototype.position=function(){switch(this.model.sizing_mode){case\"fixed\":case\"scale_width\":case\"scale_height\":this.el.style.position=\"relative\",this.el.style.left=\"\",this.el.style.top=\"\";break;case\"scale_both\":case\"stretch_both\":this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\"}this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\"},t.prototype.get_width_height=function(){var t=this._calc_width_height(),e=t[0],i=t[1];if(null==e&&null==i)throw new Error(\"detached element\");var n=this.model.get_aspect_ratio();if(null!=e&&null==i)return[e,e/n];if(null==e&&null!=i)return[i*n,i];var r,o,s=e,a=e/n,l=i*n,h=i;return s<l?(r=s,o=a):(r=l,o=h),[r,o]},t}(l.DOMView);i.LayoutDOMView=u;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutDOM\",this.define({height:[o.Number],width:[o.Number],disabled:[o.Bool,!1],sizing_mode:[o.SizingMode,\"fixed\"],css_classes:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._width=new h.Variable(this.toString()+\".width\"),this._height=new h.Variable(this.toString()+\".height\"),this._left=new h.Variable(this.toString()+\".left\"),this._right=new h.Variable(this.toString()+\".right\"),this._top=new h.Variable(this.toString()+\".top\"),this._bottom=new h.Variable(this.toString()+\".bottom\"),this._dom_top=new h.Variable(this.toString()+\".dom_top\"),this._dom_left=new h.Variable(this.toString()+\".dom_left\"),this._width_minus_right=new h.Variable(this.toString()+\".width_minus_right\"),this._height_minus_bottom=new h.Variable(this.toString()+\".height_minus_bottom\"),this._whitespace_top=new h.Variable(this.toString()+\".whitespace_top\"),this._whitespace_bottom=new h.Variable(this.toString()+\".whitespace_bottom\"),this._whitespace_left=new h.Variable(this.toString()+\".whitespace_left\"),this._whitespace_right=new h.Variable(this.toString()+\".whitespace_right\")},Object.defineProperty(t.prototype,\"layout_bbox\",{get:function(){return{top:this._top.value,left:this._left.value,width:this._width.value,height:this._height.value,right:this._right.value,bottom:this._bottom.value,dom_top:this._dom_top.value,dom_left:this._dom_left.value}},enumerable:!0,configurable:!0}),t.prototype.dump_layout=function(){for(var t,e={},i=[this];t=i.shift();)i.push.apply(i,t.get_layoutable_children()),e[t.toString()]=t.layout_bbox;console.table(e)},t.prototype.get_all_constraints=function(){for(var t=this.get_constraints(),e=0,i=this.get_layoutable_children();e<i.length;e++){var n=i[e];t=n instanceof s.LayoutCanvas?t.concat(n.get_constraints()):t.concat(n.get_all_constraints())}return t},t.prototype.get_all_editables=function(){for(var t=this.get_editables(),e=0,i=this.get_layoutable_children();e<i.length;e++){var n=i[e];t=n instanceof s.LayoutCanvas?t.concat(n.get_editables()):t.concat(n.get_all_editables())}return t},t.prototype.get_constraints=function(){return[h.GE(this._dom_left),h.GE(this._dom_top),h.GE(this._left),h.GE(this._width,[-1,this._right]),h.GE(this._top),h.GE(this._height,[-1,this._bottom]),h.EQ(this._width_minus_right,[-1,this._width],this._right),h.EQ(this._height_minus_bottom,[-1,this._height],this._bottom)]},t.prototype.get_layoutable_children=function(){return[]},t.prototype.get_editables=function(){switch(this.sizing_mode){case\"fixed\":return[this._height,this._width];case\"scale_width\":return[this._height];case\"scale_height\":return[this._width];case\"scale_both\":return[this._width,this._height];default:return[]}},t.prototype.get_constrained_variables=function(){var t={origin_x:this._dom_left,origin_y:this._dom_top,whitespace_top:this._whitespace_top,whitespace_bottom:this._whitespace_bottom,whitespace_left:this._whitespace_left,whitespace_right:this._whitespace_right};switch(this.sizing_mode){case\"stretch_both\":t.width=this._width,t.height=this._height;break;case\"scale_width\":t.width=this._width;break;case\"scale_height\":t.height=this._height}return t},t.prototype.get_aspect_ratio=function(){return this.width/this.height},t}(r.Model);(i.LayoutDOM=c).initClass()},function(t,e,i){var n=t(391),r=t(154),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-grid-row\")},e}(r.BoxView);i.RowView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e._horizontal=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Row\",this.prototype.default_view=o},t}(r.Box);(i.Row=s).initClass()},function(t,e,i){var n=t(391),r=t(157),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),\"fixed\"==this.model.sizing_mode&&(this.el.style.width=this.model.width+\"px\",this.el.style.height=this.model.height+\"px\")},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-spacer-box\")},e.prototype.get_width=function(){return 1},e.prototype.get_height=function(){return 1},e}(r.LayoutDOMView);i.SpacerView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Spacer\",this.prototype.default_view=o},t.prototype.get_constrained_variables=function(){return n.__assign({},e.prototype.get_constrained_variables.call(this),{on_edge_align_top:this._top,on_edge_align_bottom:this._height_minus_bottom,on_edge_align_left:this._left,on_edge_align_right:this._width_minus_right,box_cell_align_top:this._top,box_cell_align_bottom:this._height_minus_bottom,box_cell_align_left:this._left,box_cell_align_right:this._width_minus_right,box_equal_size_top:this._top,box_equal_size_bottom:this._height_minus_bottom,box_equal_size_left:this._left,box_equal_size_right:this._width_minus_right})},t}(r.LayoutDOM);(i.Spacer=s).initClass()},function(t,e,i){var n=t(391),r=t(14),o=t(15),s=t(157),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.children.change,function(){return t.rebuild_child_views()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-widget-box\")},t.prototype.render=function(){if(this._render_classes(),\"fixed\"==this.model.sizing_mode||\"scale_height\"==this.model.sizing_mode){var t=this.get_width();this.model._width.value!=t&&this.solver.suggest_value(this.model._width,t)}if(\"fixed\"==this.model.sizing_mode||\"scale_width\"==this.model.sizing_mode){var e=this.get_height();this.model._height.value!=e&&this.solver.suggest_value(this.model._height,e)}if(this.solver.update_variables(),\"stretch_both\"==this.model.sizing_mode)this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\",this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\";else{var i=void 0;i=0<this.model._width.value-20?this.model._width.value-20+\"px\":\"100%\",this.el.style.width=i}},t.prototype.get_height=function(){var t=0;for(var e in this.child_views){var i=this.child_views[e],n=i.el,r=getComputedStyle(n),o=parseInt(r.marginTop)||0,s=parseInt(r.marginBottom)||0;t+=n.offsetHeight+o+s}return t+20},t.prototype.get_width=function(){if(null!=this.model.width)return this.model.width;var t=this.el.scrollWidth+20;for(var e in this.child_views){var i=this.child_views[e],n=i.el.scrollWidth;t<n&&(t=n)}return t},t}(s.LayoutDOMView);i.WidgetBoxView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"WidgetBox\",this.prototype.default_view=a,this.define({children:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),\"fixed\"==this.sizing_mode&&null==this.width&&(this.width=300,r.logger.info(\"WidgetBox mode is fixed, but no width specified. Using default of 300.\"))},t.prototype.get_constrained_variables=function(){var t=n.__assign({},e.prototype.get_constrained_variables.call(this),{on_edge_align_top:this._top,on_edge_align_bottom:this._height_minus_bottom,on_edge_align_left:this._left,on_edge_align_right:this._width_minus_right,box_cell_align_top:this._top,box_cell_align_bottom:this._height_minus_bottom,box_cell_align_left:this._left,box_cell_align_right:this._width_minus_right,box_equal_size_top:this._top,box_equal_size_bottom:this._height_minus_bottom});return\"fixed\"!=this.sizing_mode&&(t.box_equal_size_left=this._left,t.box_equal_size_right=this._width_minus_right),t},t.prototype.get_layoutable_children=function(){return this.children},t}(s.LayoutDOM);(i.WidgetBox=l).initClass()},function(t,e,i){var n=t(391),o=t(162),r=t(164),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalColorMapper\",this.define({factors:[s.Array],start:[s.Number,0],end:[s.Number]})},t.prototype._v_compute=function(t,e,i,n){var r=n.nan_color;o.cat_v_compute(t,this.factors,i,e,this.start,this.end,r)},t}(r.ColorMapper);(i.CategoricalColorMapper=a).initClass()},function(t,e,i){var _=t(21),p=t(44);function d(t,e){if(t.length!=e.length)return!1;for(var i=0,n=t.length;i<n;i++)if(t[i]!==e[i])return!1;return!0}i._cat_equals=d,i.cat_v_compute=function(o,s,a,l,h,u,c){for(var t=function(t,e){var i=o[t],n=void 0;p.isString(i)?n=s.indexOf(i):(null!=h?i=null!=u?i.slice(h,u):i.slice(h):null!=u&&(i=i.slice(0,u)),n=1==i.length?s.indexOf(i[0]):_.findIndex(s,function(t){return d(t,i)}));var r=void 0;r=n<0||n>=a.length?c:a[n],l[t]=r},e=0,i=o.length;e<i;e++)t(e,i)}},function(t,e,i){var n=t(391),r=t(162),o=t(169),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalMarkerMapper\",this.define({factors:[s.Array],markers:[s.Array],start:[s.Number,0],end:[s.Number],default_value:[s.String,\"circle\"]})},t.prototype.v_compute=function(t){var e=new Array(t.length);return r.cat_v_compute(t,this.factors,this.markers,e,this.start,this.end,this.default_value),e},t}(o.Mapper);(i.CategoricalMarkerMapper=a).initClass()},function(t,e,i){var n=t(391),r=t(169),o=t(15),s=t(27),a=t(28);function l(t){return\"#\"!=t[0]&&(t=s.color2hex(t)),9!=t.length&&(t+=\"ff\"),parseInt(t.slice(1),16)}function h(t){for(var e=new Uint32Array(t.length),i=0,n=t.length;i<n;i++)e[i]=l(t[i]);return e}function u(t){if(a.is_little_endian)for(var e=new DataView(t.buffer),i=0,n=t.length;i<n;i++)e.setUint32(4*i,t[i]);return new Uint8Array(t.buffer)}i._convert_color=l,i._convert_palette=h,i._uint32_to_rgba=u;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ColorMapper\",this.define({palette:[o.Any],nan_color:[o.Color,\"gray\"]})},t.prototype.v_compute=function(t){var e=new Array(t.length);return this._v_compute(t,e,this.palette,this._colors(function(t){return t})),e},Object.defineProperty(t.prototype,\"rgba_mapper\",{get:function(){var i=this,n=h(this.palette),r=this._colors(l);return{v_compute:function(t){var e=new Uint32Array(t.length);return i._v_compute(t,e,n,r),u(e)}}},enumerable:!0,configurable:!0}),t.prototype._colors=function(t){return{nan_color:t(this.nan_color)}},t}(r.Mapper);(i.ColorMapper=c).initClass()},function(t,e,i){var n=t(391),r=t(164),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousColorMapper\",this.define({high:[o.Number],low:[o.Number],high_color:[o.Color],low_color:[o.Color]})},t.prototype._colors=function(t){return n.__assign({},e.prototype._colors.call(this,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})},t}(r.ColorMapper);(i.ContinuousColorMapper=s).initClass()},function(t,e,i){var n=t(161);i.CategoricalColorMapper=n.CategoricalColorMapper;var r=t(163);i.CategoricalMarkerMapper=r.CategoricalMarkerMapper;var o=t(165);i.ContinuousColorMapper=o.ContinuousColorMapper;var s=t(164);i.ColorMapper=s.ColorMapper;var a=t(167);i.LinearColorMapper=a.LinearColorMapper;var l=t(168);i.LogColorMapper=l.LogColorMapper},function(t,e,i){var n=t(391),r=t(165),m=t(22),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearColorMapper\"},t.prototype._v_compute=function(t,e,i,n){for(var r=n.nan_color,o=n.low_color,s=n.high_color,a=null!=this.low?this.low:m.min(t),l=null!=this.high?this.high:m.max(t),h=i.length-1,u=1/(l-a),c=1/i.length,_=0,p=t.length;_<p;_++){var d=t[_];if(isNaN(d))e[_]=r;else if(d!=l){var f=(d-a)*u,v=Math.floor(f/c);e[_]=v<0?null!=o?o:i[0]:h<v?null!=s?s:i[h]:i[v]}else e[_]=i[h]}},t}(r.ContinuousColorMapper);(i.LinearColorMapper=o).initClass()},function(t,e,i){var n=t(391),r=t(165),m=t(22),g=null!=Math.log1p?Math.log1p:function(t){return Math.log(1+t)},o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogColorMapper\"},t.prototype._v_compute=function(t,e,i,n){for(var r=n.nan_color,o=n.low_color,s=n.high_color,a=i.length,l=null!=this.low?this.low:m.min(t),h=null!=this.high?this.high:m.max(t),u=a/(g(h)-g(l)),c=i.length-1,_=0,p=t.length;_<p;_++){var d=t[_];if(isNaN(d))e[_]=r;else if(h<d)e[_]=null!=s?s:i[c];else if(d!=h)if(d<l)e[_]=null!=o?o:i[0];else{var f=g(d)-g(l),v=Math.floor(f*u);c<v&&(v=c),e[_]=i[v]}else e[_]=i[c]}},t}(r.ContinuousColorMapper);(i.LogColorMapper=o).initClass()},function(t,e,i){var n=t(391),r=t(279),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Mapper\"},t.prototype.compute=function(t){throw new Error(\"mapping single values is not supported\")},t}(r.Transform);(i.Mapper=o).initClass()},function(t,e,i){var o=t(391),s=t(172),h=Math.sqrt(3);function a(t,e){t.moveTo(-e,e),t.lineTo(e,-e),t.moveTo(-e,-e),t.lineTo(e,e)}function l(t,e){t.moveTo(0,e),t.lineTo(0,-e),t.moveTo(-e,0),t.lineTo(e,0)}function u(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 c(t,e){var i=e*h,n=i/3;t.moveTo(-e,n),t.lineTo(e,n),t.lineTo(0,n-i),t.closePath()}function n(t,e,i,n,r){var o=.65*i;l(t,i),a(t,o),n.doit&&(n.set_vectorize(t,e),t.stroke())}function r(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function _(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function p(t,e,i,n,r){l(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function d(t,e,i,n,r){u(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function f(t,e,i,n,r){u(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function v(t,e,i,n,r){var o,s,a,l;l=h*(a=(s=i)/2),(o=t).moveTo(s,0),o.lineTo(a,-l),o.lineTo(-a,-l),o.lineTo(-s,0),o.lineTo(-a,l),o.lineTo(a,l),o.closePath(),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function m(t,e,i,n,r){t.rotate(Math.PI),c(t,i),t.rotate(-Math.PI),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function g(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function y(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function b(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function x(t,e,i,n,r){c(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function w(t,e,i,n,r){var o,s;s=i,(o=t).moveTo(-s,0),o.lineTo(s,0),n.doit&&(n.set_vectorize(t,e),t.stroke())}function k(t,e,i,n,r){a(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function S(i,n){var r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.initClass=function(){this.prototype._render_one=n},e}(s.MarkerView);r.initClass();var t=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.default_view=r,this.prototype.type=i},e}(s.Marker);return t.initClass(),t}i.Asterisk=S(\"Asterisk\",n),i.CircleCross=S(\"CircleCross\",r),i.CircleX=S(\"CircleX\",_),i.Cross=S(\"Cross\",p),i.Diamond=S(\"Diamond\",d),i.DiamondCross=S(\"DiamondCross\",f),i.Hex=S(\"Hex\",v),i.InvertedTriangle=S(\"InvertedTriangle\",m),i.Square=S(\"Square\",g),i.SquareCross=S(\"SquareCross\",y),i.SquareX=S(\"SquareX\",b),i.Triangle=S(\"Triangle\",x),i.Dash=S(\"Dash\",w),i.X=S(\"X\",k),i.marker_funcs={asterisk:n,circle:function(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())},circle_cross:r,circle_x:_,cross:p,diamond:d,diamond_cross:f,hex:v,inverted_triangle:m,square:g,square_cross:y,square_x:b,triangle:x,dash:w,x:k}},function(t,e,i){var n=t(391);n.__exportStar(t(170),i);var r=t(173);i.Scatter=r.Scatter},function(t,e,i){var n=t(391),r=t(146),w=t(9),o=t(15),h=t(21),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._size,s=i._angle,a=0,l=e;a<l.length;a++){var h=l[a];if(!isNaN(n[h]+r[h]+o[h]+s[h])){var u=o[h]/2;t.beginPath(),t.translate(n[h],r[h]),s[h]&&t.rotate(s[h]),this._render_one(t,h,u,this.visuals.line,this.visuals.fill),s[h]&&t.rotate(-s[h]),t.translate(-n[h],-r[h])}}},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.bbox.h_range,e=t.start-this.max_size,i=t.end+this.max_size,n=this.renderer.xscale.r_invert(e,i),r=n[0],o=n[1],s=this.renderer.plot_view.frame.bbox.v_range,a=s.start-this.max_size,l=s.end+this.max_size,h=this.renderer.yscale.r_invert(a,l),u=h[0],c=h[1],_=w.validate_bbox_coords([r,o],[u,c]);return this.index.indices(_)},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=e-this.max_size,r=e+this.max_size,o=this.renderer.xscale.r_invert(n,r),s=o[0],a=o[1],l=i-this.max_size,h=i+this.max_size,u=this.renderer.yscale.r_invert(l,h),c=u[0],_=u[1],p=w.validate_bbox_coords([s,a],[c,_]),d=this.index.indices(p),f=[],v=0,m=d;v<m.length;v++){var g=m[v],y=this._size[g]/2,b=Math.abs(this.sx[g]-e)+Math.abs(this.sy[g]-i);Math.abs(this.sx[g]-e)<=y&&Math.abs(this.sy[g]-i)<=y&&f.push([g,b])}return w.create_hit_test_result_from_hits(f)},e.prototype._hit_span=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.bounds(),u=h.minX,c=h.minY,_=h.maxX,p=h.maxY,d=w.create_empty_hit_test_result();if(\"h\"==t.direction){o=c,s=p;var f=this.max_size/2,v=a-f,m=a+f;e=this.renderer.xscale.r_invert(v,m),n=e[0],r=e[1]}else{n=u,r=_;var f=this.max_size/2,g=l-f,y=l+f;i=this.renderer.yscale.r_invert(g,y),o=i[0],s=i[1]}var b=w.validate_bbox_coords([n,r],[o,s]),x=this.index.indices(b);return d.indices=x,d},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=w.validate_bbox_coords([s,a],[h,u]),_=w.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype._hit_poly=function(t){for(var e=t.sx,i=t.sy,n=h.range(0,this.sx.length),r=[],o=0,s=n.length;o<s;o++){var a=n[o];w.point_in_poly(this.sx[o],this.sy[o],e,i)&&r.push(a)}var l=w.create_empty_hit_test_result();return l.indices=r,l},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.x1,o=e.y0,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+r)/2;var h=new Array(a);h[i]=(o+s)/2;var u=new Array(a);u[i]=.4*Math.min(Math.abs(r-n),Math.abs(s-o));var c=new Array(a);c[i]=0,this._render(t,[i],{sx:l,sy:h,_size:u,_angle:c})},e}(r.XYGlyphView);i.MarkerView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.mixins([\"line\",\"fill\"]),this.define({size:[o.DistanceSpec,{units:\"screen\",value:4}],angle:[o.AngleSpec,0]})},t}(r.XYGlyph);(i.Marker=a).initClass()},function(t,e,i){var n=t(391),r=t(172),_=t(170),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._size,s=i._angle,a=i._marker,l=0,h=e;l<h.length;l++){var u=h[l];if(!isNaN(n[u]+r[u]+o[u]+s[u])&&null!=a[u]){var c=o[u]/2;t.beginPath(),t.translate(n[u],r[u]),s[u]&&t.rotate(s[u]),_.marker_funcs[a[u]](t,u,c,this.visuals.line,this.visuals.fill),s[u]&&t.rotate(-s[u]),t.translate(-n[u],-r[u])}}},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.x1,o=e.y0,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+r)/2;var h=new Array(a);h[i]=(o+s)/2;var u=new Array(a);u[i]=.4*Math.min(Math.abs(r-n),Math.abs(s-o));var c=new Array(a);c[i]=0;var _=new Array(a);_[i]=this._marker[i],this._render(t,[i],{sx:l,sy:h,_size:u,_angle:c,_marker:_})},e}(r.MarkerView);i.ScatterView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Scatter\",this.prototype.default_view=s,this.define({marker:[o.MarkerSpec,{value:\"circle\"}]})},t}(r.Marker);(i.Scatter=a).initClass()},function(t,e,i){var n=t(391),r=t(14),o=t(175),s=t(177),a=t(15),l=t(59),h=t(184),u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MapOptions\",this.define({lat:[a.Number],lng:[a.Number],zoom:[a.Number,12]})},t}(l.Model);(i.MapOptions=u).initClass();var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapOptions\",this.define({map_type:[a.String,\"roadmap\"],scale_control:[a.Bool,!1],styles:[a.String],tilt:[a.Int,45]})},t}(u);(i.GMapOptions=c).initClass();var _=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(s.PlotView);i.GMapPlotView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapPlot\",this.prototype.default_view=_,this.define({map_options:[a.Instance],api_key:[a.String]}),this.override({x_range:function(){return new h.Range1d},y_range:function(){return new h.Range1d}})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.api_key||r.logger.error(\"api_key is required. See https://developers.google.com/maps/documentation/javascript/get-api-key for more information on how to obtain your own.\")},t.prototype._init_plot_canvas=function(){return new o.GMapPlotCanvas({plot:this})},t}(s.Plot);(i.GMapPlot=p).initClass()},function(t,e,i){var n=t(391),r=t(19),c=t(33),o=t(178),s=new r.Signal0({},\"gmaps_ready\"),a=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.initialize=function(t){var e=this;this.pause(),a.prototype.initialize.call(this,t),this._tiles_loaded=!1,this.zoom_count=0;var i=this.model.plot.map_options,n=i.zoom,r=i.lat,o=i.lng;this.initial_zoom=n,this.initial_lat=r,this.initial_lng=o,this.canvas_view.map_el.style.position=\"absolute\",\"undefined\"!=typeof google&&null!=google.maps||(\"undefined\"==typeof _bokeh_gmaps_callback&&function(t){_bokeh_gmaps_callback=function(){return s.emit()};var e=document.createElement(\"script\");e.type=\"text/javascript\",e.src=\"https://maps.googleapis.com/maps/api/js?key=\"+t+\"&callback=_bokeh_gmaps_callback\",document.body.appendChild(e)}(this.model.plot.api_key),s.connect(function(){return e.request_render()})),this.unpause()},t.prototype.update_range=function(t){if(null==t)this.map.setCenter({lat:this.initial_lat,lng:this.initial_lng}),this.map.setOptions({zoom:this.initial_zoom}),a.prototype.update_range.call(this,null);else if(null!=t.sdx||null!=t.sdy)this.map.panBy(t.sdx||0,t.sdy||0),a.prototype.update_range.call(this,t);else if(null!=t.factor){var e=void 0;if(10!==this.zoom_count)return void(this.zoom_count+=1);this.zoom_count=0,this.pause(),a.prototype.update_range.call(this,t),e=t.factor<0?-1:1;var i=this.map.getZoom(),n=i+e;if(2<=n){this.map.setZoom(n);var r=this._get_projected_bounds(),o=r[0],s=r[1];s-o<0&&this.map.setZoom(i)}this.unpause()}this._set_bokeh_ranges()},t.prototype._build_map=function(){var t=this,e=google.maps;this.map_types={satellite:e.MapTypeId.SATELLITE,terrain:e.MapTypeId.TERRAIN,roadmap:e.MapTypeId.ROADMAP,hybrid:e.MapTypeId.HYBRID};var i=this.model.plot.map_options,n={center:new e.LatLng(i.lat,i.lng),zoom:i.zoom,disableDefaultUI:!0,mapTypeId:this.map_types[i.map_type],scaleControl:i.scale_control,tilt:i.tilt};null!=i.styles&&(n.styles=JSON.parse(i.styles)),this.map=new e.Map(this.canvas_view.map_el,n),e.event.addListener(this.map,\"idle\",function(){return t._set_bokeh_ranges()}),e.event.addListener(this.map,\"bounds_changed\",function(){return t._set_bokeh_ranges()}),e.event.addListenerOnce(this.map,\"tilesloaded\",function(){return t._render_finished()}),this.connect(this.model.plot.properties.map_options.change,function(){return t._update_options()}),this.connect(this.model.plot.map_options.properties.styles.change,function(){return t._update_styles()}),this.connect(this.model.plot.map_options.properties.lat.change,function(){return t._update_center(\"lat\")}),this.connect(this.model.plot.map_options.properties.lng.change,function(){return t._update_center(\"lng\")}),this.connect(this.model.plot.map_options.properties.zoom.change,function(){return t._update_zoom()}),this.connect(this.model.plot.map_options.properties.map_type.change,function(){return t._update_map_type()}),this.connect(this.model.plot.map_options.properties.scale_control.change,function(){return t._update_scale_control()}),this.connect(this.model.plot.map_options.properties.tilt.change,function(){return t._update_tilt()})},t.prototype._render_finished=function(){this._tiles_loaded=!0,this.notify_finished()},t.prototype.has_finished=function(){return a.prototype.has_finished.call(this)&&!0===this._tiles_loaded},t.prototype._get_latlon_bounds=function(){var t=this.map.getBounds(),e=t.getNorthEast(),i=t.getSouthWest(),n=i.lng(),r=e.lng(),o=i.lat(),s=e.lat();return[n,r,o,s]},t.prototype._get_projected_bounds=function(){var t=this._get_latlon_bounds(),e=t[0],i=t[1],n=t[2],r=t[3],o=c.wgs84_mercator.forward([e,n]),s=o[0],a=o[1],l=c.wgs84_mercator.forward([i,r]),h=l[0],u=l[1];return[s,h,a,u]},t.prototype._set_bokeh_ranges=function(){var t=this._get_projected_bounds(),e=t[0],i=t[1],n=t[2],r=t[3];this.frame.x_range.setv({start:e,end:i}),this.frame.y_range.setv({start:n,end:r})},t.prototype._update_center=function(t){var e=this.map.getCenter().toJSON();e[t]=this.model.plot.map_options[t],this.map.setCenter(e),this._set_bokeh_ranges()},t.prototype._update_map_type=function(){this.map.setOptions({mapTypeId:this.map_types[this.model.plot.map_options.map_type]})},t.prototype._update_scale_control=function(){this.map.setOptions({scaleControl:this.model.plot.map_options.scale_control})},t.prototype._update_tilt=function(){this.map.setOptions({tilt:this.model.plot.map_options.tilt})},t.prototype._update_options=function(){this._update_styles(),this._update_center(\"lat\"),this._update_center(\"lng\"),this._update_zoom(),this._update_map_type()},t.prototype._update_styles=function(){this.map.setOptions({styles:JSON.parse(this.model.plot.map_options.styles)})},t.prototype._update_zoom=function(){this.map.setOptions({zoom:this.model.plot.map_options.zoom}),this._set_bokeh_ranges()},t.prototype._map_hook=function(t,e){var i=e[0],n=e[1],r=e[2],o=e[3];this.canvas_view.map_el.style.top=n+\"px\",this.canvas_view.map_el.style.left=i+\"px\",this.canvas_view.map_el.style.width=r+\"px\",this.canvas_view.map_el.style.height=o+\"px\",null==this.map&&\"undefined\"!=typeof google&&null!=google.maps&&this._build_map()},t.prototype._paint_empty=function(t,e){var i=this.canvas._width.value,n=this.canvas._height.value,r=e[0],o=e[1],s=e[2],a=e[3];t.clearRect(0,0,i,n),t.beginPath(),t.moveTo(0,0),t.lineTo(0,n),t.lineTo(i,n),t.lineTo(i,0),t.lineTo(0,0),t.moveTo(r,o),t.lineTo(r+s,o),t.lineTo(r+s,o+a),t.lineTo(r,o+a),t.lineTo(r,o),t.closePath(),t.fillStyle=this.model.plot.border_fill_color,t.fill()},t}(o.PlotCanvasView);i.GMapPlotCanvasView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapPlotCanvas\",this.prototype.default_view=a},t.prototype.initialize=function(){this.use_map=!0,e.prototype.initialize.call(this)},t}(o.PlotCanvas);(i.GMapPlotCanvas=l).initClass()},function(t,e,i){var n=t(174);i.MapOptions=n.MapOptions;var r=t(174);i.GMapOptions=r.GMapOptions;var o=t(174);i.GMapPlot=o.GMapPlot;var s=t(175);i.GMapPlotCanvas=s.GMapPlotCanvas;var a=t(177);i.Plot=a.Plot;var l=t(178);i.PlotCanvas=l.PlotCanvas},function(t,e,i){var o=t(391),n=t(13),r=t(14),s=t(15),f=t(19),a=t(21),v=t(32),m=t(44),l=t(157),h=t(75),u=t(192),c=t(268),_=t(76),p=t(178),g=t(200),y=t(185),b=t(3),x=t(180),w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.connect_signals=function(){t.prototype.connect_signals.call(this),this.connect(this.model.properties.title.change,function(){return r.logger.warn(\"Title object cannot be replaced. Try changing properties on title to update it after initialization.\")})},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-plot-layout\")},e.prototype.get_height=function(){return this.model._width.value/this.model.get_aspect_ratio()},e.prototype.get_width=function(){return this.model._height.value*this.model.get_aspect_ratio()},e.prototype.save=function(t){this.plot_canvas_view.save(t)},Object.defineProperty(e.prototype,\"plot_canvas_view\",{get:function(){return this.child_views[this.model.plot_canvas.id]},enumerable:!0,configurable:!0}),e}(l.LayoutDOMView);i.PlotView=w;var d=function(d){function t(t){return d.call(this,t)||this}return o.__extends(t,d),t.initClass=function(){this.prototype.type=\"Plot\",this.prototype.default_view=w,this.mixins([\"line:outline_\",\"fill:background_\",\"fill:border_\"]),this.define({toolbar:[s.Instance,function(){return new c.Toolbar}],toolbar_location:[s.Location,\"right\"],toolbar_sticky:[s.Boolean,!0],plot_width:[s.Number,600],plot_height:[s.Number,600],title:[s.Any,function(){return new h.Title({text:\"\"})}],title_location:[s.Location,\"above\"],h_symmetry:[s.Bool,!0],v_symmetry:[s.Bool,!1],above:[s.Array,[]],below:[s.Array,[]],left:[s.Array,[]],right:[s.Array,[]],renderers:[s.Array,[]],x_range:[s.Instance,function(){return new x.DataRange1d}],extra_x_ranges:[s.Any,{}],y_range:[s.Instance,function(){return new x.DataRange1d}],extra_y_ranges:[s.Any,{}],x_scale:[s.Instance,function(){return new u.LinearScale}],y_scale:[s.Instance,function(){return new u.LinearScale}],lod_factor:[s.Number,10],lod_interval:[s.Number,300],lod_threshold:[s.Number,2e3],lod_timeout:[s.Number,500],hidpi:[s.Bool,!0],output_backend:[s.OutputBackend,\"canvas\"],min_border:[s.Number,5],min_border_top:[s.Number,null],min_border_left:[s.Number,null],min_border_bottom:[s.Number,null],min_border_right:[s.Number,null],inner_width:[s.Number],inner_height:[s.Number],layout_width:[s.Number],layout_height:[s.Number],match_aspect:[s.Bool,!1],aspect_scale:[s.Number,1]}),this.override({outline_line_color:\"#e5e5e5\",border_fill_color:\"#ffffff\",background_fill_color:\"#ffffff\"}),b.register_with_event(b.UIEvent,this)},t.prototype.initialize=function(){d.prototype.initialize.call(this),this.reset=new f.Signal0(this,\"reset\");for(var t=0,e=v.values(this.extra_x_ranges).concat(this.x_range);t<e.length;t++){var i=e[t],n=i.plots;m.isArray(n)&&(n=n.concat(this),i.setv({plots:n},{silent:!0}))}for(var r=0,o=v.values(this.extra_y_ranges).concat(this.y_range);r<o.length;r++){var s=o[r],n=s.plots;m.isArray(n)&&(n=n.concat(this),s.setv({plots:n},{silent:!0}))}null!=this.min_border&&(null==this.min_border_top&&(this.min_border_top=this.min_border),null==this.min_border_bottom&&(this.min_border_bottom=this.min_border),null==this.min_border_left&&(this.min_border_left=this.min_border),null==this.min_border_right&&(this.min_border_right=this.min_border));for(var a=0,l=[\"above\",\"below\",\"left\",\"right\"];a<l.length;a++)for(var h=l[a],u=this.getv(h),c=0,_=u;c<_.length;c++){var p=_[c];p.add_panel(h)}this._init_title_panel(),this._init_toolbar_panel(),this._plot_canvas=this._init_plot_canvas(),this.plot_canvas.toolbar=this.toolbar,null==this.width&&(this.width=this.plot_width),null==this.height&&(this.height=this.plot_height)},t.prototype._init_plot_canvas=function(){return new p.PlotCanvas({plot:this})},t.prototype._init_title_panel=function(){if(null!=this.title){var t=m.isString(this.title)?new h.Title({text:this.title}):this.title;this.add_layout(t,this.title_location)}},t.prototype._init_toolbar_panel=function(){var e=this,t=a.find(this.renderers,function(t){return t instanceof _.ToolbarPanel&&a.includes(t.tags,e.id)});switch(null!=t&&this.remove_layout(t),this.toolbar_location){case\"left\":case\"right\":case\"above\":case\"below\":if(t=new _.ToolbarPanel({toolbar:this.toolbar,tags:[this.id]}),this.toolbar.toolbar_location=this.toolbar_location,this.toolbar_sticky){var i=this.getv(this.toolbar_location),n=a.find(i,function(t){return t instanceof h.Title});if(null!=n)return t.set_panel(n.panel),void this.add_renderers(t)}this.add_layout(t,this.toolbar_location)}},t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),this.connect(this.properties.toolbar_location.change,function(){return t._init_toolbar_panel()})},Object.defineProperty(t.prototype,\"plot_canvas\",{get:function(){return this._plot_canvas},enumerable:!0,configurable:!0}),t.prototype._doc_attached=function(){this.plot_canvas.attach_document(this.document),d.prototype._doc_attached.call(this)},t.prototype.add_renderers=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var i=this.renderers;i=i.concat(t),this.renderers=i},t.prototype.add_layout=function(t,e){if(void 0===e&&(e=\"center\"),null!=t.props.plot&&(t.plot=this),\"center\"!=e){var i=this.getv(e);i.push(t),t.add_panel(e)}this.add_renderers(t)},t.prototype.remove_layout=function(e){var t=function(t){a.removeBy(t,function(t){return t==e})};t(this.left),t(this.right),t(this.above),t(this.below),t(this.renderers)},t.prototype.add_glyph=function(t,e,i){void 0===e&&(e=new g.ColumnDataSource),void 0===i&&(i={});var n=o.__assign({},i,{data_source:e,glyph:t}),r=new y.GlyphRenderer(n);return this.add_renderers(r),r},t.prototype.add_tools=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var i=0,n=t;i<n.length;i++){var r=n[i];null!=r.overlay&&this.add_renderers(r.overlay)}this.toolbar.tools=this.toolbar.tools.concat(t)},t.prototype.get_layoutable_children=function(){return[this.plot_canvas]},t.prototype.get_constraints=function(){var t=d.prototype.get_constraints.call(this);return t.push(n.EQ(this._width,[-1,this.plot_canvas._width])),t.push(n.EQ(this._height,[-1,this.plot_canvas._height])),t},t.prototype.get_constrained_variables=function(){var t=o.__assign({},d.prototype.get_constrained_variables.call(this),{on_edge_align_top:this.plot_canvas._top,on_edge_align_bottom:this.plot_canvas._height_minus_bottom,on_edge_align_left:this.plot_canvas._left,on_edge_align_right:this.plot_canvas._width_minus_right,box_cell_align_top:this.plot_canvas._top,box_cell_align_bottom:this.plot_canvas._height_minus_bottom,box_cell_align_left:this.plot_canvas._left,box_cell_align_right:this.plot_canvas._width_minus_right,box_equal_size_top:this.plot_canvas._top,box_equal_size_bottom:this.plot_canvas._height_minus_bottom});return\"fixed\"!=this.sizing_mode&&(t.box_equal_size_left=this.plot_canvas._left,t.box_equal_size_right=this.plot_canvas._width_minus_right),t},Object.defineProperty(t.prototype,\"all_renderers\",{get:function(){for(var t=this.renderers,e=0,i=this.toolbar.tools;e<i.length;e++){var n=i[e];t=t.concat(n.synthetic_renderers)}return t},enumerable:!0,configurable:!0}),t}(l.LayoutDOM);(i.Plot=d).initClass()},function(t,e,i){var l=t(391),n=t(91),r=t(92),C=t(180),T=t(185),o=t(157),s=t(3),h=t(19),c=t(4),u=t(20),_=t(49),a=t(6),p=t(11),d=t(10),f=t(13),A=t(14),v=t(7),m=t(15),g=t(42),y=t(44),b=t(21),E=t(32),x=t(12),w=null,k=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return l.__extends(t,a),Object.defineProperty(t.prototype,\"frame\",{get:function(){return this.model.frame},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas\",{get:function(){return this.model.canvas},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas_overlays\",{get:function(){return this.canvas_view.overlays_el},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas_events\",{get:function(){return this.canvas_view.events_el},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_paused\",{get:function(){return null!=this._is_paused&&0!==this._is_paused},enumerable:!0,configurable:!0}),t.prototype.view_options=function(){return{plot_view:this,parent:this}},t.prototype.pause=function(){null==this._is_paused?this._is_paused=1:this._is_paused+=1},t.prototype.unpause=function(t){if(void 0===t&&(t=!1),null==this._is_paused)throw new Error(\"wasn't paused\");this._is_paused-=1,0!=this._is_paused||t||this.request_render()},t.prototype.request_render=function(){this.request_paint()},t.prototype.request_paint=function(){this.is_paused||this.throttled_paint()},t.prototype.reset=function(){this.clear_state(),this.reset_range(),this.reset_selection(),this.model.plot.trigger_event(new s.Reset)},t.prototype.remove=function(){this.ui_event_bus.destroy(),c.remove_views(this.renderer_views),c.remove_views(this.tool_views),this.canvas_view.remove(),a.prototype.remove.call(this)},t.prototype.css_classes=function(){return a.prototype.css_classes.call(this).concat(\"bk-plot-wrapper\")},t.prototype.initialize=function(t){var e=this;this.pause(),a.prototype.initialize.call(this,t),this.force_paint=new h.Signal0(this,\"force_paint\"),this.state_changed=new h.Signal0(this,\"state_changed\"),this.lod_started=!1,this.visuals=new _.Visuals(this.model.plot),this._initial_state_info={selection:{},dimensions:{width:this.model.canvas._width.value,height:this.model.canvas._height.value}},this.visibility_callbacks=[],this.state={history:[],index:-1},this.canvas_view=new this.canvas.default_view({model:this.canvas,parent:this}),this.el.appendChild(this.canvas_view.el),this.canvas_view.render(),\"webgl\"==this.model.plot.output_backend&&this.init_webgl(),this.throttled_paint=g.throttle(function(){return e.force_paint.emit()},15),this.ui_event_bus=new u.UIEvents(this,this.model.toolbar,this.canvas_view.events_el,this.model.plot),this.levels={};for(var i=0,n=v.RenderLevel;i<n.length;i++){var r=n[i];this.levels[r]={}}this.renderer_views={},this.tool_views={},this.build_levels(),this.build_tools(),this.update_dataranges(),this.unpause(!0),A.logger.debug(\"PlotView initialized\")},t.prototype.set_cursor=function(t){void 0===t&&(t=\"default\"),this.canvas_view.el.style.cursor=t},t.prototype.set_toolbar_visibility=function(e){void 0===e&&(e=!0),this.visibility_callbacks.forEach(function(t){return t(e)})},t.prototype.init_webgl=function(){if(null==w){var t=document.createElement(\"canvas\"),e={premultipliedAlpha:!0},i=t.getContext(\"webgl\",e)||t.getContext(\"experimental-webgl\",e);null!=i&&(w={canvas:t,ctx:i})}null!=w?this.gl=w:A.logger.warn(\"WebGL is not supported, falling back to 2D canvas.\")},t.prototype.prepare_webgl=function(t,e){if(null!=this.gl){var i=this.canvas_view.get_canvas_element();this.gl.canvas.width=i.width,this.gl.canvas.height=i.height;var n=this.gl.ctx;n.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height),n.clearColor(0,0,0,0),n.clear(n.COLOR_BUFFER_BIT||n.DEPTH_BUFFER_BIT),n.enable(n.SCISSOR_TEST);var r=e[0],o=e[1],s=e[2],a=e[3],l=this.model.canvas,h=l.xview,u=l.yview,c=h.compute(r),_=u.compute(o+a);n.scissor(t*c,t*_,t*s,t*a),n.enable(n.BLEND),n.blendFuncSeparate(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA,n.ONE_MINUS_DST_ALPHA,n.ONE)}},t.prototype.blit_webgl=function(t){var e=this.canvas_view.ctx;null!=this.gl&&(A.logger.debug(\"drawing with WebGL\"),e.restore(),e.drawImage(this.gl.canvas,0,0),e.save(),e.scale(t,t),e.translate(.5,.5))},t.prototype.update_dataranges=function(){for(var t=this.model.frame,e={},i={},n=!1,r=0,o=E.values(t.x_ranges).concat(E.values(t.y_ranges));r<o.length;r++){var s=o[r];s instanceof C.DataRange1d&&\"log\"==s.scale_hint&&(n=!0)}for(var a in this.renderer_views){var l=this.renderer_views[a];if(l instanceof T.GlyphRendererView){var h=l.glyph.bounds();if(null!=h&&(e[a]=h),n){var u=l.glyph.log_bounds();null!=u&&(i[a]=u)}}}var c,_=!1,p=!1;!1!==this.model.plot.match_aspect&&0!=this.frame._width.value&&0!=this.frame._height.value&&(c=1/this.model.plot.aspect_scale*(this.frame._width.value/this.frame._height.value));for(var d=0,f=E.values(t.x_ranges);d<f.length;d++){var v=f[d];if(v instanceof C.DataRange1d){var m=\"log\"==v.scale_hint?i:e;v.update(m,0,this.model.id,c),v.follow&&(_=!0)}null!=v.bounds&&(p=!0)}for(var g=0,y=E.values(t.y_ranges);g<y.length;g++){var b=y[g];if(b instanceof C.DataRange1d){var m=\"log\"==b.scale_hint?i:e;b.update(m,1,this.model.id,c),b.follow&&(_=!0)}null!=b.bounds&&(p=!0)}if(_&&p){A.logger.warn(\"Follow enabled so bounds are unset.\");for(var x=0,w=E.values(t.x_ranges);x<w.length;x++){var v=w[x];v.bounds=null}for(var k=0,S=E.values(t.y_ranges);k<S.length;k++){var b=S[k];b.bounds=null}}this.range_update_timestamp=Date.now()},t.prototype.map_to_screen=function(t,e,i,n){return void 0===i&&(i=\"default\"),void 0===n&&(n=\"default\"),this.frame.map_to_screen(t,e,i,n)},t.prototype.push_state=function(t,e){var i=this.state,n=i.history,r=i.index,o=null!=n[r]?n[r].info:{},s=l.__assign({},this._initial_state_info,o,e);this.state.history=this.state.history.slice(0,this.state.index+1),this.state.history.push({type:t,info:s}),this.state.index=this.state.history.length-1,this.state_changed.emit()},t.prototype.clear_state=function(){this.state={history:[],index:-1},this.state_changed.emit()},t.prototype.can_undo=function(){return 0<=this.state.index},t.prototype.can_redo=function(){return this.state.index<this.state.history.length-1},t.prototype.undo=function(){this.can_undo()&&(this.state.index-=1,this._do_state_change(this.state.index),this.state_changed.emit())},t.prototype.redo=function(){this.can_redo()&&(this.state.index+=1,this._do_state_change(this.state.index),this.state_changed.emit())},t.prototype._do_state_change=function(t){var e=null!=this.state.history[t]?this.state.history[t].info:this._initial_state_info;null!=e.range&&this.update_range(e.range),null!=e.selection&&this.update_selection(e.selection)},t.prototype.get_selection=function(){for(var t={},e=0,i=this.model.plot.renderers;e<i.length;e++){var n=i[e];if(n instanceof T.GlyphRenderer){var r=n.data_source.selected;t[n.id]=r}}return t},t.prototype.update_selection=function(t){for(var e=0,i=this.model.plot.renderers;e<i.length;e++){var n=i[e];if(n instanceof T.GlyphRenderer){var r=n.data_source;null!=t?null!=t[n.id]&&r.selected.update(t[n.id],!0,!1):r.selection_manager.clear()}}},t.prototype.reset_selection=function(){this.update_selection(null)},t.prototype._update_ranges_together=function(t){for(var e=1,i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[1];e=Math.min(e,this._get_weight_to_constrain_interval(o,s))}if(e<1)for(var a=0,l=t;a<l.length;a++){var h=l[a],o=h[0],s=h[1];s.start=e*s.start+(1-e)*o.start,s.end=e*s.end+(1-e)*o.end}},t.prototype._update_ranges_individually=function(t,e,i,n){for(var r=!1,o=0,s=t;o<s.length;o++){var a=s[o],l=a[0],h=a[1];if(!i){var u=this._get_weight_to_constrain_interval(l,h);u<1&&(h.start=u*h.start+(1-u)*l.start,h.end=u*h.end+(1-u)*l.end)}if(null!=l.bounds&&\"auto\"!=l.bounds){var c=l.bounds,_=c[0],p=c[1],d=Math.abs(h.end-h.start);l.is_reversed?(null!=_&&_>=h.end&&(r=!0,h.end=_,(e||i)&&(h.start=_+d)),null!=p&&p<=h.start&&(r=!0,h.start=p,(e||i)&&(h.end=p-d))):(null!=_&&_>=h.start&&(r=!0,h.start=_,(e||i)&&(h.end=_+d)),null!=p&&p<=h.end&&(r=!0,h.end=p,(e||i)&&(h.start=p-d)))}}if(!(i&&r&&n))for(var f=0,v=t;f<v.length;f++){var m=v[f],l=m[0],h=m[1];l.have_updated_interactively=!0,l.start==h.start&&l.end==h.end||l.setv(h)}},t.prototype._get_weight_to_constrain_interval=function(t,e){var i=t.min_interval,n=t.max_interval;if(null!=t.bounds&&\"auto\"!=t.bounds){var r=t.bounds,o=r[0],s=r[1];if(null!=o&&null!=s){var a=Math.abs(s-o);n=null!=n?Math.min(n,a):a}}var l=1;if(null!=i||null!=n){var h=Math.abs(t.end-t.start),u=Math.abs(e.end-e.start);0<i&&u<i&&(l=(h-i)/(h-u)),0<n&&n<u&&(l=(n-h)/(u-h)),l=Math.max(0,Math.min(1,l))}return l},t.prototype.update_range=function(t,e,i,n){void 0===e&&(e=!1),void 0===i&&(i=!1),void 0===n&&(n=!0),this.pause();var r=this.frame,o=r.x_ranges,s=r.y_ranges;if(null==t){for(var a in o){var l=o[a];l.reset()}for(var h in s){var l=s[h];l.reset()}this.update_dataranges()}else{var u=[];for(var c in o){var l=o[c];u.push([l,t.xrs[c]])}for(var _ in s){var l=s[_];u.push([l,t.yrs[_]])}i&&this._update_ranges_together(u),this._update_ranges_individually(u,e,i,n)}this.unpause()},t.prototype.reset_range=function(){this.update_range(null)},t.prototype.build_levels=function(){var t=this.model.plot.all_renderers,e=E.keys(this.renderer_views),i=c.build_views(this.renderer_views,t,this.view_options()),n=b.difference(e,t.map(function(t){return t.id}));for(var r in this.levels)for(var o=0,s=n;o<s.length;o++){var a=s[o];delete this.levels[r][a]}for(var l=0,h=i;l<h.length;l++){var u=h[l];this.levels[u.model.level][u.model.id]=u}},t.prototype.get_renderer_views=function(){var e=this;return this.model.plot.renderers.map(function(t){return e.levels[t.level][t.id]})},t.prototype.build_tools=function(){var e=this,t=this.model.plot.toolbar.tools,i=c.build_views(this.tool_views,t,this.view_options());i.map(function(t){return e.ui_event_bus.register_tool(t)})},t.prototype.connect_signals=function(){var t=this;a.prototype.connect_signals.call(this),this.connect(this.force_paint,function(){return t.repaint()});var e=this.model.frame,i=e.x_ranges,n=e.y_ranges;for(var r in i){var o=i[r];this.connect(o.change,function(){return t.request_render()})}for(var s in n){var o=n[s];this.connect(o.change,function(){return t.request_render()})}this.connect(this.model.plot.properties.renderers.change,function(){return t.build_levels()}),this.connect(this.model.plot.toolbar.properties.tools.change,function(){t.build_levels(),t.build_tools()}),this.connect(this.model.plot.change,function(){return t.request_render()}),this.connect(this.model.plot.reset,function(){return t.reset()})},t.prototype.set_initial_range=function(){var t=!0,e=this.frame,i=e.x_ranges,n=e.y_ranges,r={},o={};for(var s in i){var a=i[s],l=a.start,h=a.end;if(null==l||null==h||y.isStrictNaN(l+h)){t=!1;break}r[s]={start:l,end:h}}if(t)for(var u in n){var c=n[u],l=c.start,h=c.end;if(null==l||null==h||y.isStrictNaN(l+h)){t=!1;break}o[u]={start:l,end:h}}t?(this._initial_state_info.range={xrs:r,yrs:o},A.logger.debug(\"initial ranges set\")):A.logger.warn(\"could not set initial ranges\")},t.prototype.update_constraints=function(){for(var t in this.solver.suggest_value(this.frame._width,this.canvas._width.value),this.solver.suggest_value(this.frame._height,this.canvas._height.value),this.renderer_views){var e=this.renderer_views[t];x.isSizeableView(e)&&null!=e.model.panel&&x.update_panel_constraints(e)}this.solver.update_variables()},t.prototype._layout=function(t){void 0===t&&(t=!1),this.render(),t&&(this.model.plot.setv({inner_width:Math.round(this.frame._width.value),inner_height:Math.round(this.frame._height.value),layout_width:Math.round(this.canvas._width.value),layout_height:Math.round(this.canvas._height.value)},{no_change:!0}),this.paint())},t.prototype.has_finished=function(){if(!a.prototype.has_finished.call(this))return!1;for(var t in this.levels){var e=this.levels[t];for(var i in e){var n=e[i];if(!n.has_finished())return!1}}return!0},t.prototype.render=function(){var t=this.model._width.value,e=this.model._height.value;this.canvas_view.set_dims([t,e]),this.update_constraints(),!1!==this.model.plot.match_aspect&&0!=this.frame._width.value&&0!=this.frame._height.value&&this.update_dataranges(),this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\",this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\"},t.prototype._needs_layout=function(){for(var t in this.renderer_views){var e=this.renderer_views[t];if(x.isSizeableView(e)&&null!=e.model.panel&&x._view_sizes.get(e)!=e.get_size())return!0}return!1},t.prototype.repaint=function(){this._needs_layout()?this.parent.partial_layout():this.paint()},t.prototype.paint=function(){var t=this;if(!this.is_paused){A.logger.trace(\"PlotCanvas.render() for \"+this.model.id),this.canvas_view.prepare_canvas();var e=this.model.document;if(null!=e){var i=e.interactive_duration(),n=this.model.plot;0<=i&&i<n.lod_interval?setTimeout(function(){e.interactive_duration()>n.lod_timeout&&e.interactive_stop(n),t.request_render()},n.lod_timeout):e.interactive_stop(n)}for(var r in this.renderer_views){var o=this.renderer_views[r];if(null==this.range_update_timestamp||o instanceof T.GlyphRendererView&&o.set_data_timestamp>this.range_update_timestamp){this.update_dataranges();break}}this.model.frame.update_scales();var s=this.canvas_view.ctx,a=this.canvas.pixel_ratio;s.save(),s.scale(a,a),s.translate(.5,.5);var l=[this.frame._left.value,this.frame._top.value,this.frame._width.value,this.frame._height.value];if(this._map_hook(s,l),this._paint_empty(s,l),this.prepare_webgl(a,l),s.save(),this.visuals.outline_line.doit){this.visuals.outline_line.set_value(s);var h=l[0],u=l[1],c=l[2],_=l[3];h+c==this.canvas._width.value&&(c-=1),u+_==this.canvas._height.value&&(_-=1),s.strokeRect(h,u,c,_)}s.restore(),this._paint_levels(s,[\"image\",\"underlay\",\"glyph\"],l,!0),this.blit_webgl(a),this._paint_levels(s,[\"annotation\"],l,!0),this._paint_levels(s,[\"overlay\"],l,!1),null==this._initial_state_info.range&&this.set_initial_range(),s.restore(),this._has_finished||(this._has_finished=!0,this.notify_finished())}},t.prototype._paint_levels=function(t,e,i,n){t.save(),n&&(t.beginPath(),t.rect.apply(t,i),t.clip());for(var r={},o=0;o<this.model.plot.renderers.length;o++){var s=this.model.plot.renderers[o];r[s.id]=o}for(var a=function(t){return r[t.model.id]},l=0,h=e;l<h.length;l++)for(var u=h[l],c=b.sortBy(E.values(this.levels[u]),a),_=0,p=c;_<p.length;_++){var d=p[_];!n&&d.needs_clip&&(t.save(),t.beginPath(),t.rect.apply(t,i),t.clip()),d.render(),!n&&d.needs_clip&&t.restore()}t.restore()},t.prototype._map_hook=function(t,e){},t.prototype._paint_empty=function(t,e){var i=[0,0,this.canvas_view.model._width.value,this.canvas_view.model._height.value],n=i[0],r=i[1],o=i[2],s=i[3],a=e[0],l=e[1],h=e[2],u=e[3];t.clearRect(n,r,o,s),this.visuals.border_fill.doit&&(this.visuals.border_fill.set_value(t),t.fillRect(n,r,o,s),t.clearRect(a,l,h,u)),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(a,l,h,u))},t.prototype.save=function(t){switch(this.model.plot.output_backend){case\"canvas\":case\"webgl\":var e=this.canvas_view.get_canvas_element();if(null!=e.msToBlob){var i=e.msToBlob();window.navigator.msSaveBlob(i,t)}else{var n=document.createElement(\"a\");n.href=e.toDataURL(\"image/png\"),n.download=t+\".png\",n.target=\"_blank\",n.dispatchEvent(new MouseEvent(\"click\"))}break;case\"svg\":var r=this.canvas_view._ctx,o=r.getSerializedSvg(!0),s=new Blob([o],{type:\"text/plain\"}),a=document.createElement(\"a\");a.download=t+\".svg\",a.innerHTML=\"Download svg\",a.href=window.URL.createObjectURL(s),a.onclick=function(t){return document.body.removeChild(t.target)},a.style.display=\"none\",document.body.appendChild(a),a.click()}},t}(a.DOMView);i.PlotCanvasView=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"AbovePanel\"},e}(p.LayoutCanvas);(i.AbovePanel=S).initClass();var M=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"BelowPanel\"},e}(p.LayoutCanvas);(i.BelowPanel=M).initClass();var O=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"LeftPanel\"},e}(p.LayoutCanvas);(i.LeftPanel=O).initClass();var z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"RightPanel\"},e}(p.LayoutCanvas);(i.RightPanel=z).initClass();var P=function(e){function t(t){return e.call(this,t)||this}return l.__extends(t,e),t.initClass=function(){this.prototype.type=\"PlotCanvas\",this.prototype.default_view=k,this.internal({plot:[m.Instance],toolbar:[m.Instance],canvas:[m.Instance],frame:[m.Instance]}),this.override({sizing_mode:\"stretch_both\"})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.canvas=new n.Canvas({map:null!=this.use_map&&this.use_map,use_hidpi:this.plot.hidpi,output_backend:this.plot.output_backend}),this.frame=new r.CartesianFrame({x_range:this.plot.x_range,extra_x_ranges:this.plot.extra_x_ranges,x_scale:this.plot.x_scale,y_range:this.plot.y_range,extra_y_ranges:this.plot.extra_y_ranges,y_scale:this.plot.y_scale}),this.above_panel=new S,this.below_panel=new M,this.left_panel=new O,this.right_panel=new z,A.logger.debug(\"PlotCanvas initialized\")},t.prototype._doc_attached=function(){this.canvas.attach_document(this.document),this.frame.attach_document(this.document),this.above_panel.attach_document(this.document),this.below_panel.attach_document(this.document),this.left_panel.attach_document(this.document),this.right_panel.attach_document(this.document),e.prototype._doc_attached.call(this),A.logger.debug(\"PlotCanvas attached to document\")},t.prototype.get_layoutable_children=function(){var r=[this.above_panel,this.below_panel,this.left_panel,this.right_panel,this.canvas,this.frame],t=function(t){for(var e=0,i=t;e<i.length;e++){var n=i[e];x.isSizeable(n)&&null!=n.panel&&r.push(n.panel)}};return t(this.plot.above),t(this.plot.below),t(this.plot.left),t(this.plot.right),r},t.prototype.get_constraints=function(){return e.prototype.get_constraints.call(this).concat(this._get_constant_constraints(),this._get_side_constraints())},t.prototype._get_constant_constraints=function(){return[f.EQ(this.canvas._left,0),f.EQ(this.canvas._top,0),f.GE(this.above_panel._top,[-1,this.canvas._top]),f.EQ(this.above_panel._bottom,[-1,this.frame._top]),f.EQ(this.above_panel._left,[-1,this.left_panel._right]),f.EQ(this.above_panel._right,[-1,this.right_panel._left]),f.EQ(this.below_panel._top,[-1,this.frame._bottom]),f.LE(this.below_panel._bottom,[-1,this.canvas._bottom]),f.EQ(this.below_panel._left,[-1,this.left_panel._right]),f.EQ(this.below_panel._right,[-1,this.right_panel._left]),f.EQ(this.left_panel._top,[-1,this.above_panel._bottom]),f.EQ(this.left_panel._bottom,[-1,this.below_panel._top]),f.GE(this.left_panel._left,[-1,this.canvas._left]),f.EQ(this.left_panel._right,[-1,this.frame._left]),f.EQ(this.right_panel._top,[-1,this.above_panel._bottom]),f.EQ(this.right_panel._bottom,[-1,this.below_panel._top]),f.EQ(this.right_panel._left,[-1,this.frame._right]),f.LE(this.right_panel._right,[-1,this.canvas._right]),f.EQ(this._top,[-1,this.above_panel._bottom]),f.EQ(this._left,[-1,this.left_panel._right]),f.EQ(this._height,[-1,this._bottom],[-1,this.canvas._bottom],this.below_panel._top),f.EQ(this._width,[-1,this._right],[-1,this.canvas._right],this.right_panel._left),f.GE(this._top,-this.plot.min_border_top),f.GE(this._left,-this.plot.min_border_left),f.GE(this._height,[-1,this._bottom],-this.plot.min_border_bottom),f.GE(this._width,[-1,this._right],-this.plot.min_border_right)]},t.prototype._get_side_constraints=function(){var t=function(t){return t.map(function(t){return t.panel})},e=d.vstack(this.above_panel,t(this.plot.above)),i=d.vstack(this.below_panel,b.reversed(t(this.plot.below))),n=d.hstack(this.left_panel,t(this.plot.left)),r=d.hstack(this.right_panel,b.reversed(t(this.plot.right)));return b.concat([e,i,n,r])},t}(o.LayoutDOM);(i.PlotCanvas=P).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DataRange\",this.define({names:[o.Array,[]],renderers:[o.Array,[]]})},t}(r.Range);(i.DataRange=s).initClass()},function(t,e,i){var n=t(391),r=t(179),h=t(185),_=t(14),o=t(15),u=t(24),c=t(21),s=function(i){function t(t){var e=i.call(this,t)||this;return e._plot_bounds={},e.have_updated_interactively=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DataRange1d\",this.define({start:[o.Number],end:[o.Number],range_padding:[o.Number,.1],range_padding_units:[o.PaddingUnits,\"percent\"],flipped:[o.Bool,!1],follow:[o.StartEnd],follow_interval:[o.Number],default_span:[o.Number,2]}),this.internal({scale_hint:[o.String,\"auto\"]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),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},Object.defineProperty(t.prototype,\"min\",{get:function(){return Math.min(this.start,this.end)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return Math.max(this.start,this.end)},enumerable:!0,configurable:!0}),t.prototype.computed_renderers=function(){var e=this.names,t=this.renderers;if(0==t.length)for(var i=0,n=this.plots;i<n.length;i++){var r=n[i],o=r.renderers.filter(function(t){return t instanceof h.GlyphRenderer});t=t.concat(o)}0<e.length&&(t=t.filter(function(t){return c.includes(e,t.name)})),_.logger.debug(\"computed \"+t.length+\" renderers for DataRange1d \"+this.id);for(var s=0,a=t;s<a.length;s++){var l=a[s];_.logger.trace(\" - \"+l.type+\" \"+l.id)}return t},t.prototype._compute_plot_bounds=function(t,e){for(var i=u.empty(),n=0,r=t;n<r.length;n++){var o=r[n];null!=e[o.id]&&(i=u.union(i,e[o.id]))}return i},t.prototype.adjust_bounds_for_aspect=function(t,e){var i=u.empty(),n=t.maxX-t.minX;n<=0&&(n=1);var r=t.maxY-t.minY;r<=0&&(r=1);var o=.5*(t.maxX+t.minX),s=.5*(t.maxY+t.minY);return n<e*r?n=e*r:r=n/e,i.maxX=o+.5*n,i.minX=o-.5*n,i.maxY=s+.5*r,i.minY=s-.5*r,i},t.prototype._compute_min_max=function(t,e){var i,n,r,o,s=u.empty();for(var a in t){var l=t[a];s=u.union(s,l)}return 0==e?(i=[s.minX,s.maxX],r=i[0],o=i[1]):(n=[s.minY,s.maxY],r=n[0],o=n[1]),[r,o]},t.prototype._compute_range=function(t,e){var i,n,r,o=this.range_padding;if(\"log\"==this.scale_hint){(isNaN(t)||!isFinite(t)||t<=0)&&(t=isNaN(e)||!isFinite(e)||e<=0?.1:e/100,_.logger.warn(\"could not determine minimum data value for log axis, DataRange1d using value \"+t)),(isNaN(e)||!isFinite(e)||e<=0)&&(e=isNaN(t)||!isFinite(t)||t<=0?10:100*t,_.logger.warn(\"could not determine maximum data value for log axis, DataRange1d using value \"+e));var s=void 0,a=void 0;if(e==t)a=this.default_span+.001,s=Math.log(t)/Math.log(10);else{var l=void 0,h=void 0;\"percent\"==this.range_padding_units?(l=Math.log(t)/Math.log(10),h=Math.log(e)/Math.log(10),a=(h-l)*(1+o)):(l=Math.log(t-o)/Math.log(10),h=Math.log(e+o)/Math.log(10),a=h-l),s=(l+h)/2}n=Math.pow(10,s-a/2),r=Math.pow(10,s+a/2)}else{var a=void 0;a=e==t?this.default_span:\"percent\"==this.range_padding_units?(e-t)*(1+o):e-t+2*o;var s=(e+t)/2;n=s-a/2,r=s+a/2}var u=1;this.flipped&&(n=(i=[r,n])[0],r=i[1],u=-1);var c=this.follow_interval;return null!=c&&Math.abs(n-r)>c&&(\"start\"==this.follow?r=n+u*c:\"end\"==this.follow&&(n=r-u*c)),[n,r]},t.prototype.update=function(t,e,i,n){if(!this.have_updated_interactively){var r=this.computed_renderers(),o=this._compute_plot_bounds(r,t);null!=n&&(o=this.adjust_bounds_for_aspect(o,n)),this._plot_bounds[i]=o;var s=this._compute_min_max(this._plot_bounds,e),a=s[0],l=s[1],h=this._compute_range(a,l),u=h[0],c=h[1];null!=this._initial_start&&(\"log\"==this.scale_hint?0<this._initial_start&&(u=this._initial_start):u=this._initial_start),null!=this._initial_end&&(\"log\"==this.scale_hint?0<this._initial_end&&(c=this._initial_end):c=this._initial_end);var _=[this.start,this.end],p=_[0],d=_[1];if(u!=p||c!=d){var f={};u!=p&&(f.start=u),c!=d&&(f.end=c),this.setv(f)}\"auto\"==this.bounds&&this.setv({bounds:[u,c]},{silent:!0}),this.change.emit()}},t.prototype.reset=function(){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()},t}(r.DataRange);(i.DataRange1d=s).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=t(22),b=t(21),h=t(44);function m(t,e,i){void 0===i&&(i=0);for(var n={},r=0;r<t.length;r++){var o=t[r];if(o in n)throw new Error(\"duplicate factor or subfactor: \"+o);n[o]={value:.5+r*(1+e)+i}}return[n,(t.length-1)*e]}function x(t,s,a,e){void 0===e&&(e=0);for(var l={},h={},i=[],n=0,r=t;n<r.length;n++){var o=r[n],u=o[0],c=o[1];u in h||(h[u]=[],i.push(u)),h[u].push(c)}for(var _=e,p=0,d=function(t){var e=h[t].length,i=m(h[t],a,_),n=i[0],r=i[1];p+=r;var o=b.sum(h[t].map(function(t){return n[t].value}));l[t]={value:o/e,mapping:n},_+=e+s+r},f=0,v=i;f<v.length;f++){var u=v[f];d(u)}return[l,i,(i.length-1)*s+p]}function u(t,u,c,_,e){void 0===e&&(e=0);for(var p={},d={},i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o[0],a=o[1],l=o[2];s in d||(d[s]=[],i.push(s)),d[s].push([a,l])}for(var f=[],v=e,m=0,h=function(t){for(var e=d[t].length,i=x(d[t],c,_,v),n=i[0],r=i[1],o=i[2],s=0,a=r;s<a.length;s++){var l=a[s];f.push([t,l])}m+=o;var h=b.sum(d[t].map(function(t){var e=t[0];return n[e].value}));p[t]={value:h/e,mapping:n},v+=e+u+o},g=0,y=i;g<y.length;g++){var s=y[g];h(s)}return[p,i,f,(i.length-1)*u+m]}i.map_one_level=m,i.map_two_levels=x,i.map_three_levels=u;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"FactorRange\",this.define({factors:[o.Array,[]],factor_padding:[o.Number,0],subgroup_padding:[o.Number,.8],group_padding:[o.Number,1.4],range_padding:[o.Number,0],range_padding_units:[o.PaddingUnits,\"percent\"],start:[o.Number],end:[o.Number]}),this.internal({levels:[o.Number],mids:[o.Array],tops:[o.Array],tops_groups:[o.Array]})},Object.defineProperty(t.prototype,\"min\",{get:function(){return this.start},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return this.end},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init(!0)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.factors.change,function(){return t.reset()}),this.connect(this.properties.factor_padding.change,function(){return t.reset()}),this.connect(this.properties.group_padding.change,function(){return t.reset()}),this.connect(this.properties.subgroup_padding.change,function(){return t.reset()}),this.connect(this.properties.range_padding.change,function(){return t.reset()}),this.connect(this.properties.range_padding_units.change,function(){return t.reset()})},t.prototype.reset=function(){this._init(!1),this.change.emit()},t.prototype._lookup=function(t){if(1==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])?e[t[0]].value:NaN}if(2==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])&&e[t[0]].mapping.hasOwnProperty(t[1])?e[t[0]].mapping[t[1]].value:NaN}if(3==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])&&e[t[0]].mapping.hasOwnProperty(t[1])&&e[t[0]].mapping[t[1]].mapping.hasOwnProperty(t[2])?e[t[0]].mapping[t[1]].mapping[t[2]].value:NaN}throw new Error(\"unreachable code\")},t.prototype.synthetic=function(t){if(h.isNumber(t))return t;if(h.isString(t))return this._lookup([t]);var e=0,i=t[t.length-1];return h.isNumber(i)&&(e=i,t=t.slice(0,-1)),this._lookup(t)+e},t.prototype.v_synthetic=function(t){var e=this;return s.map(t,function(t){return e.synthetic(t)})},t.prototype._init=function(t){var e,i,n,r,o;if(b.all(this.factors,h.isString))r=1,e=m(this.factors,this.factor_padding),this._mapping=e[0],o=e[1];else if(b.all(this.factors,function(t){return h.isArray(t)&&2==t.length&&h.isString(t[0])&&h.isString(t[1])}))r=2,i=x(this.factors,this.group_padding,this.factor_padding),this._mapping=i[0],this.tops=i[1],o=i[2];else{if(!b.all(this.factors,function(t){return h.isArray(t)&&3==t.length&&h.isString(t[0])&&h.isString(t[1])&&h.isString(t[2])}))throw new Error(\"???\");r=3,n=u(this.factors,this.group_padding,this.subgroup_padding,this.factor_padding),this._mapping=n[0],this.tops=n[1],this.mids=n[2],o=n[3]}var s=0,a=this.factors.length+o;if(\"percent\"==this.range_padding_units){var l=(a-s)*this.range_padding/2;s-=l,a+=l}else s-=this.range_padding,a+=this.range_padding;this.setv({start:s,end:a,levels:r},{silent:t}),\"auto\"==this.bounds&&this.setv({bounds:[s,a]},{silent:!0})},t}(r.Range);(i.FactorRange=a).initClass()},function(t,e,i){var n=t(179);i.DataRange=n.DataRange;var r=t(180);i.DataRange1d=r.DataRange1d;var o=t(181);i.FactorRange=o.FactorRange;var s=t(183);i.Range=s.Range;var a=t(184);i.Range1d=a.Range1d},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=function(i){function t(t){var e=i.call(this,t)||this;return e.have_updated_interactively=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Range\",this.define({callback:[o.Any],bounds:[o.Any],min_interval:[o.Any],max_interval:[o.Any]}),this.internal({plots:[o.Array,[]]})},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._emit_callback()})},t.prototype.reset=function(){this.change.emit()},t.prototype._emit_callback=function(){null!=this.callback&&(s.isFunction(this.callback)?this.callback(this):this.callback.execute(this,{}))},Object.defineProperty(t.prototype,\"is_reversed\",{get:function(){return this.start>this.end},enumerable:!0,configurable:!0}),t}(r.Model);(i.Range=a).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Range1d\",this.define({start:[o.Number,0],end:[o.Number,1],reset_start:[o.Number],reset_end:[o.Number]})},t.prototype._set_auto_bounds=function(){if(\"auto\"==this.bounds){var 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})}},t.prototype.initialize=function(){e.prototype.initialize.call(this),null==this.reset_start&&(this.reset_start=this.start),null==this.reset_end&&(this.reset_end=this.end),this._set_auto_bounds()},Object.defineProperty(t.prototype,\"min\",{get:function(){return Math.min(this.start,this.end)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return Math.max(this.start,this.end)},enumerable:!0,configurable:!0}),t.prototype.reset=function(){this._set_auto_bounds(),this.start!=this.reset_start||this.end!=this.reset_end?this.setv({start:this.reset_start,end:this.reset_end}):this.change.emit()},t}(r.Range);(i.Range1d=s).initClass()},function(t,e,i){var n=t(391),r=t(189),P=t(130),o=t(199),j=t(14),s=t(15),a=t(22),N=t(21),_=t(32),l=t(181),p={fill:{},line:{}},d={fill:{fill_alpha:.3,fill_color:\"grey\"},line:{line_alpha:.3,line_color:\"grey\"}},f={fill:{fill_alpha:.2},line:{}},h=function(c){function t(){return null!==c&&c.apply(this,arguments)||this}return n.__extends(t,c),t.prototype.initialize=function(t){c.prototype.initialize.call(this,t);var i=this.model.glyph,n=N.includes(i.mixins,\"fill\"),r=N.includes(i.mixins,\"line\"),o=_.clone(i.attributes);function e(t){var e=_.clone(o);return n&&_.extend(e,t.fill),r&&_.extend(e,t.line),new i.constructor(e)}delete o.id,this.glyph=this.build_glyph_view(i);var s=this.model.selection_glyph;null==s?s=e({fill:{},line:{}}):\"auto\"===s&&(s=e(p)),this.selection_glyph=this.build_glyph_view(s);var a=this.model.nonselection_glyph;null==a?a=e({fill:{},line:{}}):\"auto\"===a&&(a=e(f)),this.nonselection_glyph=this.build_glyph_view(a);var l=this.model.hover_glyph;null!=l&&(this.hover_glyph=this.build_glyph_view(l));var h=this.model.muted_glyph;null!=h&&(this.muted_glyph=this.build_glyph_view(h));var u=e(d);this.decimated_glyph=this.build_glyph_view(u),this.xscale=this.plot_view.frame.xscales[this.model.x_range_name],this.yscale=this.plot_view.frame.yscales[this.model.y_range_name],this.set_data(!1)},t.prototype.build_glyph_view=function(t){return new t.default_view({model:t,renderer:this,plot_view:this.plot_view,parent:this})},t.prototype.connect_signals=function(){var e=this;c.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.request_render()}),this.connect(this.model.glyph.change,function(){return e.set_data()}),this.connect(this.model.data_source.change,function(){return e.set_data()}),this.connect(this.model.data_source.streaming,function(){return e.set_data()}),this.connect(this.model.data_source.patching,function(t){return e.set_data(!0,t)}),this.connect(this.model.data_source.selected.change,function(){return e.request_render()}),this.connect(this.model.data_source._select,function(){return e.request_render()}),null!=this.hover_glyph&&this.connect(this.model.data_source.inspect,function(){return e.request_render()}),this.connect(this.model.properties.view.change,function(){return e.set_data()}),this.connect(this.model.view.change,function(){return e.set_data()});var t=this.plot_model.frame,i=t.x_ranges,n=t.y_ranges;for(var r in i){var o=i[r];o instanceof l.FactorRange&&this.connect(o.change,function(){return e.set_data()})}for(var s in n){var o=n[s];o instanceof l.FactorRange&&this.connect(o.change,function(){return e.set_data()})}this.connect(this.model.glyph.transformchange,function(){return e.set_data()})},t.prototype.have_selection_glyphs=function(){return null!=this.selection_glyph&&null!=this.nonselection_glyph},t.prototype.set_data=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=null);var i=Date.now(),n=this.model.data_source;this.all_indices=this.model.view.indices,this.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0}),this.glyph.set_data(n,this.all_indices,e),this.glyph.set_visuals(n),this.decimated_glyph.set_visuals(n),this.have_selection_glyphs()&&(this.selection_glyph.set_visuals(n),this.nonselection_glyph.set_visuals(n)),null!=this.hover_glyph&&this.hover_glyph.set_visuals(n),null!=this.muted_glyph&&this.muted_glyph.set_visuals(n);var r=this.plot_model.plot.lod_factor;this.decimated=[];for(var o=0,s=Math.floor(this.all_indices.length/r);o<s;o++)this.decimated.push(o*r);var a=Date.now()-i;j.logger.debug(this.glyph.model.type+\" GlyphRenderer (\"+this.model.id+\"): set_data finished in \"+a+\"ms\"),this.set_data_timestamp=Date.now(),t&&this.request_render()},t.prototype.render=function(){var r=this;if(this.model.visible){var t=Date.now(),e=this.glyph.glglyph;this.glyph.map_data();var i=Date.now()-t,n=Date.now(),o=this.glyph.mask_data(this.all_indices);o.length===this.all_indices.length&&(o=N.range(0,this.all_indices.length));var s=Date.now()-n,a=this.plot_view.canvas_view.ctx;a.save();var l,h=this.model.data_source.selected;l=!h||h.is_empty()?[]:this.glyph instanceof P.LineView&&h.selected_glyph===this.glyph.model?this.model.view.convert_indices_from_subset(o):h.indices;var u,c=this.model.data_source.inspected;u=c&&0!==c.length?c[\"0d\"].glyph?this.model.view.convert_indices_from_subset(o):0<c[\"1d\"].indices.length?c[\"1d\"].indices:function(){for(var t=[],e=0,i=Object.keys(c[\"2d\"].indices);e<i.length;e++){var n=i[e];t.push(parseInt(n))}return t}():[];var _,p,d,f=function(){for(var t=[],e=0,i=o;e<i.length;e++){var n=i[e];N.includes(u,r.all_indices[n])&&t.push(n)}return t}(),v=this.plot_model.plot.lod_threshold;null!=this.model.document&&0<this.model.document.interactive_duration()&&!e&&null!=v&&this.all_indices.length>v?(o=this.decimated,_=this.decimated_glyph,p=this.decimated_glyph):(_=this.model.muted&&null!=this.muted_glyph?this.muted_glyph:this.glyph,p=this.nonselection_glyph),d=this.selection_glyph,null!=this.hover_glyph&&f.length&&(o=N.difference(o,f));var m,g=null;if(l.length&&this.have_selection_glyphs()){for(var y=Date.now(),b={},x=0,w=l;x<w.length;x++){var k=w[x];b[k]=!0}var S=new Array,C=new Array;if(this.glyph instanceof P.LineView)for(var T=0,A=this.all_indices;T<A.length;T++){var k=A[T];null!=b[k]?S.push(k):C.push(k)}else for(var E=0,M=o;E<M.length;E++){var k=M[E];null!=b[this.all_indices[k]]?S.push(k):C.push(k)}g=Date.now()-y,m=Date.now(),p.render(a,C,this.glyph),d.render(a,S,this.glyph),null!=this.hover_glyph&&(this.glyph instanceof P.LineView?this.hover_glyph.render(a,this.model.view.convert_indices_from_subset(f),this.glyph):this.hover_glyph.render(a,f,this.glyph))}else m=Date.now(),this.glyph instanceof P.LineView?this.hover_glyph&&f.length?this.hover_glyph.render(a,this.model.view.convert_indices_from_subset(f),this.glyph):_.render(a,this.all_indices,this.glyph):(_.render(a,o,this.glyph),this.hover_glyph&&f.length&&this.hover_glyph.render(a,f,this.glyph));var O=Date.now()-m;this.last_dtrender=O;var z=Date.now()-t;return j.logger.debug(this.glyph.model.type+\" GlyphRenderer (\"+this.model.id+\"): render finished in \"+z+\"ms\"),j.logger.trace(\" - map_data finished in       : \"+i+\"ms\"),j.logger.trace(\" - mask_data finished in      : \"+s+\"ms\"),null!=g&&j.logger.trace(\" - selection mask finished in : \"+g+\"ms\"),j.logger.trace(\" - glyph renders finished in  : \"+O+\"ms\"),a.restore()}},t.prototype.draw_legend=function(t,e,i,n,r,o,s,a){null==a&&(a=this.model.get_reference_point(o,s)),this.glyph.draw_legend_for_index(t,{x0:e,x1:i,y0:n,y1:r},a)},t.prototype.hit_test=function(t){if(!this.model.visible)return null;var e=this.glyph.hit_test(t);return null==e?null:this.model.view.convert_selection_from_subset(e)},t}(r.RendererView);i.GlyphRendererView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GlyphRenderer\",this.prototype.default_view=h,this.define({x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],data_source:[s.Instance],view:[s.Instance,function(){return new o.CDSView}],glyph:[s.Instance],hover_glyph:[s.Instance],nonselection_glyph:[s.Any,\"auto\"],selection_glyph:[s.Any,\"auto\"],muted_glyph:[s.Instance],muted:[s.Bool,!1]}),this.override({level:\"glyph\"})},t.prototype.initialize=function(){e.prototype.initialize.call(this),null==this.view.source&&(this.view.source=this.data_source,this.view.compute_indices())},t.prototype.get_reference_point=function(t,e){var i=0;if(null!=t){var n=this.data_source.get_column(t);if(null!=n){var r=a.indexOf(n,e);-1!=r&&(i=r)}}return i},t.prototype.get_selection_manager=function(){return this.data_source.selection_manager},t}(r.Renderer);(i.GlyphRenderer=u).initClass()},function(t,e,i){var n=t(391),r=t(189),o=t(147),s=t(15),l=t(4),a=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.initialize=function(t){var e;a.prototype.initialize.call(this,t),this.xscale=this.plot_view.frame.xscales.default,this.yscale=this.plot_view.frame.yscales.default,this._renderer_views={},e=l.build_views(this._renderer_views,[this.model.node_renderer,this.model.edge_renderer],this.plot_view.view_options()),this.node_view=e[0],this.edge_view=e[1],this.set_data()},t.prototype.connect_signals=function(){var t=this;a.prototype.connect_signals.call(this),this.connect(this.model.layout_provider.change,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source._select,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source.inspect,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source.change,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source._select,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source.inspect,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source.change,function(){return t.set_data()});var e=this.plot_model.frame,i=e.x_ranges,n=e.y_ranges;for(var r in i){var o=i[r];this.connect(o.change,function(){return t.set_data()})}for(var s in n){var o=n[s];this.connect(o.change,function(){return t.set_data()})}},t.prototype.set_data=function(t){var e,i;void 0===t&&(t=!0),this.node_view.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0}),this.edge_view.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0});var n=this.node_view.glyph;e=this.model.layout_provider.get_node_coordinates(this.model.node_renderer.data_source),n._x=e[0],n._y=e[1];var r=this.edge_view.glyph;i=this.model.layout_provider.get_edge_coordinates(this.model.edge_renderer.data_source),r._xs=i[0],r._ys=i[1],n.index_data(),r.index_data(),t&&this.request_render()},t.prototype.render=function(){this.edge_view.render(),this.node_view.render()},t}(r.RendererView);i.GraphRendererView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GraphRenderer\",this.prototype.default_view=a,this.define({x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],layout_provider:[s.Instance],node_renderer:[s.Instance],edge_renderer:[s.Instance],selection_policy:[s.Instance,function(){return new o.NodesOnly}],inspection_policy:[s.Instance,function(){return new o.NodesOnly}]}),this.override({level:\"glyph\"})},t.prototype.get_selection_manager=function(){return this.node_renderer.data_source.selection_manager},t}(r.Renderer);(i.GraphRenderer=h).initClass()},function(t,e,i){var n=t(391),r=t(189),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.RendererView);i.GuideRendererView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GuideRenderer\",this.define({plot:[o.Instance]}),this.override({level:\"overlay\"})},t}(r.Renderer);(i.GuideRenderer=a).initClass()},function(t,e,i){var n=t(185);i.GlyphRenderer=n.GlyphRenderer;var r=t(186);i.GraphRenderer=r.GraphRenderer;var o=t(187);i.GuideRenderer=o.GuideRenderer;var s=t(189);i.Renderer=s.Renderer},function(t,e,i){var n=t(391),r=t(6),o=t(49),s=t(15),a=t(59),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view=t.plot_view,this.visuals=new o.Visuals(this.model),this._has_finished=!0},Object.defineProperty(t.prototype,\"plot_model\",{get:function(){return this.plot_view.model},enumerable:!0,configurable:!0}),t.prototype.request_render=function(){this.plot_view.request_render()},t.prototype.map_to_screen=function(t,e){return this.plot_view.map_to_screen(t,e,this.model.x_range_name,this.model.y_range_name)},Object.defineProperty(t.prototype,\"needs_clip\",{get:function(){return!1},enumerable:!0,configurable:!0}),t}(r.DOMView);i.RendererView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Renderer\",this.define({level:[s.RenderLevel],visible:[s.Bool,!0]})},t}(a.Model);(i.Renderer=h).initClass()},function(t,e,i){var n=t(391),r=t(192),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalScale\"},t.prototype.compute=function(t){return e.prototype.compute.call(this,this.source_range.synthetic(t))},t.prototype.v_compute=function(t){return e.prototype.v_compute.call(this,this.source_range.v_synthetic(t))},t}(r.LinearScale);(i.CategoricalScale=o).initClass()},function(t,e,i){var n=t(190);i.CategoricalScale=n.CategoricalScale;var r=t(192);i.LinearScale=r.LinearScale;var o=t(193);i.LogScale=o.LogScale;var s=t(194);i.Scale=s.Scale},function(t,e,i){var n=t(391),r=t(194),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearScale\"},t.prototype.compute=function(t){var e=this._compute_state(),i=e[0],n=e[1];return i*t+n},t.prototype.v_compute=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=new Float64Array(t.length),o=0;o<t.length;o++)r[o]=i*t[o]+n;return r},t.prototype.invert=function(t){var e=this._compute_state(),i=e[0],n=e[1];return(t-n)/i},t.prototype.v_invert=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=new Float64Array(t.length),o=0;o<t.length;o++)r[o]=(t[o]-n)/i;return r},t.prototype._compute_state=function(){var t=this.source_range.start,e=this.source_range.end,i=this.target_range.start,n=this.target_range.end,r=(n-i)/(e-t),o=-r*t+i;return[r,o]},t}(r.Scale);(i.LinearScale=o).initClass()},function(t,e,i){var n=t(391),r=t(194),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogScale\"},t.prototype.compute=function(t){var e,i=this._compute_state(),n=i[0],r=i[1],o=i[2],s=i[3];if(0==o)e=0;else{var a=(Math.log(t)-s)/o;e=isFinite(a)?a*n+r:NaN}return e},t.prototype.v_compute=function(t){var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=new Float64Array(t.length);if(0==r)for(var a=0;a<t.length;a++)s[a]=0;else for(var a=0;a<t.length;a++){var l=(Math.log(t[a])-o)/r,h=void 0;h=isFinite(l)?l*i+n:NaN,s[a]=h}return s},t.prototype.invert=function(t){var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=(t-n)/i;return Math.exp(r*s+o)},t.prototype.v_invert=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=new Float64Array(t.length),a=0;a<t.length;a++){var l=(t[a]-n)/i;s[a]=Math.exp(r*l+o)}return s},t.prototype._get_safe_factor=function(t,e){var i,n=t<0?0:t,r=e<0?0:e;if(n==r)if(0==n)n=(i=[1,10])[0],r=i[1];else{var o=Math.log(n)/Math.log(10);n=Math.pow(10,Math.floor(o)),r=Math.ceil(o)!=Math.floor(o)?Math.pow(10,Math.ceil(o)):Math.pow(10,Math.ceil(o)+1)}return[n,r]},t.prototype._compute_state=function(){var t,e,i=this.source_range.start,n=this.source_range.end,r=this.target_range.start,o=this.target_range.end,s=o-r,a=this._get_safe_factor(i,n),l=a[0],h=a[1];0==l?(t=Math.log(h),e=0):(t=Math.log(h)-Math.log(l),e=Math.log(l));var u=s,c=r;return[u,c,t,e]},t}(r.Scale);(i.LogScale=o).initClass()},function(t,e,i){var n=t(391),r=t(274),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Scale\",this.internal({source_range:[o.Any],target_range:[o.Any]})},t.prototype.r_compute=function(t,e){return this.target_range.is_reversed?[this.compute(e),this.compute(t)]:[this.compute(t),this.compute(e)]},t.prototype.r_invert=function(t,e){return this.target_range.is_reversed?[this.invert(e),this.invert(t)]:[this.invert(t),this.invert(e)]},t}(r.Transform);(i.Scale=s).initClass()},function(t,e,i){var n=t(391);n.__exportStar(t(196),i);var r=t(197);i.Selection=r.Selection},function(t,e,i){var n=t(391),r=t(59),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.do_selection=function(t,e,i,n){return null!==t&&(e.selected.update(t,i,n),e._select.emit(),!e.selected.is_empty())},e}(r.Model);(i.SelectionPolicy=o).prototype.type=\"SelectionPolicy\";var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.hit_test=function(t,e){for(var i=[],n=0,r=e;n<r.length;n++){var o=r[n],s=o.hit_test(t);null!==s&&i.push(s)}if(0<i.length){for(var a=i[0],l=0,h=i;l<h.length;l++){var u=h[l];a.update_through_intersection(u)}return a}return null},e}(o);(i.IntersectRenderers=s).prototype.type=\"IntersectRenderers\";var a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.hit_test=function(t,e){for(var i=[],n=0,r=e;n<r.length;n++){var o=r[n],s=o.hit_test(t);null!==s&&i.push(s)}if(0<i.length){for(var a=i[0],l=0,h=i;l<h.length;l++){var u=h[l];a.update_through_union(u)}return a}return null},e}(o);(i.UnionRenderers=a).prototype.type=\"UnionRenderers\"},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(21),a=t(32),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Selection\",this.define({indices:[o.Array,[]],line_indices:[o.Array,[]],multiline_indices:[o.Any,{}]}),this.internal({final:[o.Boolean],selected_glyphs:[o.Array,[]],get_view:[o.Any],image_indices:[o.Array,[]]})},t.prototype.initialize=function(){var t=this;e.prototype.initialize.call(this),this[\"0d\"]={glyph:null,indices:[],flag:!1,get_view:function(){return null}},this[\"2d\"]={indices:{}},this[\"1d\"]={indices:this.indices},this.get_view=function(){return null},this.connect(this.properties.indices.change,function(){return t[\"1d\"].indices=t.indices}),this.connect(this.properties.line_indices.change,function(){t[\"0d\"].indices=t.line_indices,0==t.line_indices.length?t[\"0d\"].flag=!1:t[\"0d\"].flag=!0}),this.connect(this.properties.selected_glyphs.change,function(){return t[\"0d\"].glyph=t.selected_glyph}),this.connect(this.properties.get_view.change,function(){return t[\"0d\"].get_view=t.get_view}),this.connect(this.properties.multiline_indices.change,function(){return t[\"2d\"].indices=t.multiline_indices})},Object.defineProperty(t.prototype,\"selected_glyph\",{get:function(){return 0<this.selected_glyphs.length?this.selected_glyphs[0]:null},enumerable:!0,configurable:!0}),t.prototype.add_to_selected_glyphs=function(t){this.selected_glyphs.push(t)},t.prototype.update=function(t,e,i){this.final=e,i?this.update_through_union(t):(this.indices=t.indices,this.line_indices=t.line_indices,this.selected_glyphs=t.selected_glyphs,this.get_view=t.get_view,this.multiline_indices=t.multiline_indices,this.image_indices=t.image_indices)},t.prototype.clear=function(){this.final=!0,this.indices=[],this.line_indices=[],this.multiline_indices={},this.get_view=function(){return null},this.selected_glyphs=[]},t.prototype.is_empty=function(){return 0==this.indices.length&&0==this.line_indices.length&&0==this.image_indices.length},t.prototype.update_through_union=function(t){this.indices=s.union(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},t.prototype.update_through_intersection=function(t){this.indices=s.intersection(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},t}(r.Model);(i.Selection=l).initClass()},function(t,e,i){var n=t(391),r=t(205),o=t(14),_=t(44),s=t(15),a=function(i){function t(t){var e=i.call(this,t)||this;return e.initialized=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"AjaxDataSource\",this.define({mode:[s.String,\"replace\"],content_type:[s.String,\"application/json\"],adapter:[s.Any],http_headers:[s.Any,{}],max_size:[s.Number],method:[s.String,\"POST\"],if_modified:[s.Bool,!1]})},t.prototype.destroy=function(){null!=this.interval&&clearInterval(this.interval),i.prototype.destroy.call(this)},t.prototype.setup=function(){var t=this;!this.initialized&&(this.initialized=!0,this.get_data(this.mode),this.polling_interval)&&(this.interval=setInterval(function(){return t.get_data(t.mode,t.max_size,t.if_modified)},this.polling_interval))},t.prototype.get_data=function(t,e,i){var n=this;void 0===e&&(e=0),void 0===i&&(i=!1);var r=this.prepare_request();r.addEventListener(\"load\",function(){return n.do_load(r,t,e)}),r.addEventListener(\"error\",function(){return n.do_error(r)}),r.send()},t.prototype.prepare_request=function(){var t=new XMLHttpRequest;t.open(this.method,this.data_url,!0),t.withCredentials=!1,t.setRequestHeader(\"Content-Type\",this.content_type);var e=this.http_headers;for(var i in e){var n=e[i];t.setRequestHeader(i,n)}return t},t.prototype.do_load=function(t,e,i){if(200===t.status){var n=JSON.parse(t.responseText),r=this.adapter,o={};switch(o=null!=r?_.isFunction(r)?r(this,{response:n}):r.execute(this,{response:n}):n,e){case\"replace\":this.data=o;break;case\"append\":for(var s=this.data,a=0,l=this.columns();a<l.length;a++){var h=l[a],u=Array.from(s[h]),c=Array.from(o[h]);o[h]=u.concat(c).slice(-i)}this.data=o}}},t.prototype.do_error=function(t){o.logger.error(\"Failed to fetch JSON from \"+this.data_url+\" with code \"+t.status)},t}(r.RemoteDataSource);(i.AjaxDataSource=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(197),a=t(21),l=t(201),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CDSView\",this.define({filters:[o.Array,[]],source:[o.Instance]}),this.internal({indices:[o.Array,[]],indices_map:[o.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.compute_indices()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.filters.change,function(){t.compute_indices(),t.change.emit()}),null!=this.source&&(null!=this.source.change&&this.connect(this.source.change,function(){return t.compute_indices()}),null!=this.source.streaming&&this.connect(this.source.streaming,function(){return t.compute_indices()}),null!=this.source.patching&&this.connect(this.source.patching,function(){return t.compute_indices()}))},t.prototype.compute_indices=function(){var e=this,r=this.filters.map(function(t){return t.compute_indices(e.source)});0<(r=function(){for(var t=[],e=0,i=r;e<i.length;e++){var n=i[e];null!=n&&t.push(n)}return t}()).length?this.indices=a.intersection.apply(this,r):this.source instanceof l.ColumnarDataSource&&(this.indices=this.source.get_indices()),this.indices_map_to_subset()},t.prototype.indices_map_to_subset=function(){this.indices_map={};for(var t=0;t<this.indices.length;t++)this.indices_map[this.indices[t]]=t},t.prototype.convert_selection_from_subset=function(t){var e=this,i=new s.Selection;i.update_through_union(t);var n=t.indices.map(function(t){return e.indices[t]});return i.indices=n,i.image_indices=t.image_indices,i},t.prototype.convert_selection_to_subset=function(t){var e=this,i=new s.Selection;i.update_through_union(t);var n=t.indices.map(function(t){return e.indices_map[t]});return i.indices=n,i.image_indices=t.image_indices,i},t.prototype.convert_indices_from_subset=function(t){var e=this;return t.map(function(t){return e.indices[t]})},t}(r.Model);(i.CDSView=h).initClass()},function(t,e,i){var n=t(391),r=t(201),o=t(8),s=t(15),k=t(29),h=t(36),S=t(44),u=t(43),c=t(32),a=t(51);function _(t,e,i){if(S.isArray(t)){var n=t.concat(e);return null!=i&&n.length>i?n.slice(-i):n}if(S.isTypedArray(t)){var r=t.length+e.length;if(null!=i&&i<r){var o=r-i,s=t.length,n=void 0;t.length<i?(n=new t.constructor(i)).set(t,0):n=t;for(var a=o,l=s;a<l;a++)n[a-o]=n[a];for(var a=0,l=e.length;a<l;a++)n[a+(s-o)]=e[a];return n}var h=new t.constructor(e);return u.concat(t,h)}throw new Error(\"unsupported array types\")}function C(t,e){var i,n,r;return S.isNumber(t)?(r=(i=t)+1,n=1):(i=null!=t.start?t.start:0,r=null!=t.stop?t.stop:e,n=null!=t.step?t.step:1),[i,r,n]}function p(t,e,i){for(var n=new k.Set,r=!1,o=0,s=e;o<s.length;o++){var a=s[o],l=a[0],h=a[1],u=void 0,c=void 0;if(S.isArray(l)){var _=l[0];n.add(_),c=i[_],u=t[_]}else S.isNumber(l)?(h=[h],n.add(l)):r=!0,l=[0,0,l],c=[1,t.length],u=t;2===l.length&&(c=[1,c[0]],l=[l[0],0,l[1]]);for(var p=0,d=C(l[1],c[0]),f=d[0],v=d[1],m=d[2],g=C(l[2],c[1]),y=g[0],b=g[1],x=g[2],_=f;_<v;_+=m)for(var w=y;w<b;w+=x)r&&n.add(w),u[_*c[1]+w]=h[p],p++}return n}i.stream_to_column=_,i.slice=C,i.patch_to_column=p;var l=function(e){function l(t){return e.call(this,t)||this}return n.__extends(l,e),l.initClass=function(){this.prototype.type=\"ColumnDataSource\",this.define({data:[s.Any,{}]})},l.prototype.initialize=function(){var t;e.prototype.initialize.call(this),t=h.decode_column_data(this.data),this.data=t[0],this._shapes=t[1]},l.prototype.attributes_as_json=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=l._value_to_json);for(var i={},n=this.serializable_attributes(),r=0,o=c.keys(n);r<o.length;r++){var s=o[r],a=n[s];\"data\"===s&&(a=h.encode_column_data(a,this._shapes)),t?i[s]=a:s in this._set_after_defaults&&(i[s]=a)}return e(\"attributes\",i,this)},l._value_to_json=function(t,e,i){return S.isPlainObject(e)&&\"data\"===t?h.encode_column_data(e,i._shapes):o.HasProps._value_to_json(t,e,i)},l.prototype.stream=function(t,e,i){var n=this.data;for(var r in t)n[r]=_(n[r],t[r],e);if(this.setv({data:n},{silent:!0}),this.streaming.emit(),null!=this.document){var o=new a.ColumnsStreamedEvent(this.document,this.ref(),t,e);this.document._notify_change(this,\"data\",null,null,{setter_id:i,hint:o})}},l.prototype.patch=function(t,e){var i=this.data,n=new k.Set;for(var r in t){var o=t[r];n=n.union(p(i[r],o,this._shapes[r]))}if(this.setv({data:i},{silent:!0}),this.patching.emit(n.values),null!=this.document){var s=new a.ColumnsPatchedEvent(this.document,this.ref(),t);this.document._notify_change(this,\"data\",null,null,{setter_id:e,hint:s})}},l}(r.ColumnarDataSource);(i.ColumnDataSource=l).initClass()},function(t,e,i){var n=t(391),r=t(202),o=t(19),s=t(14),a=t(17),l=t(15),h=t(44),u=t(21),c=t(32),_=t(197),p=t(196),d=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.get_array=function(t){var e=this.data[t];return null==e?this.data[t]=e=[]:h.isArray(e)||(this.data[t]=e=Array.from(e)),e},t.initClass=function(){this.prototype.type=\"ColumnarDataSource\",this.define({selection_policy:[l.Instance,function(){return new p.UnionRenderers}]}),this.internal({selection_manager:[l.Instance,function(t){return new a.SelectionManager({source:t})}],inspected:[l.Instance,function(){return new _.Selection}],_shapes:[l.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._select=new o.Signal0(this,\"select\"),this.inspect=new o.Signal(this,\"inspect\"),this.streaming=new o.Signal0(this,\"streaming\"),this.patching=new o.Signal(this,\"patching\")},t.prototype.get_column=function(t){var e=this.data[t];return null!=e?e:null},t.prototype.columns=function(){return c.keys(this.data)},t.prototype.get_length=function(t){void 0===t&&(t=!0);var e=u.uniq(c.values(this.data).map(function(t){return t.length}));switch(e.length){case 0:return null;case 1:return e[0];default:var i=\"data source has columns of inconsistent lengths\";if(t)return s.logger.warn(i),e.sort()[0];throw new Error(i)}},t.prototype.get_indices=function(){var t=this.get_length();return u.range(0,null!=t?t:1)},t.prototype.clear=function(){for(var t={},e=0,i=this.columns();e<i.length;e++){var n=i[e];t[n]=new this.data[n].constructor}this.data=t},t}(r.DataSource);(i.ColumnarDataSource=d).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=t(197),l=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DataSource\",this.define({selected:[o.Instance,function(){return new a.Selection}],callback:[o.Any]})},t.prototype.connect_signals=function(){var e=this;i.prototype.connect_signals.call(this),this.connect(this.properties.selected.change,function(){var t=e.callback;null!=t&&(s.isFunction(t)?t(e):t.execute(e))})},t}(r.Model);(i.DataSource=l).initClass()},function(t,e,i){var n=t(391),r=t(201),b=t(14),o=t(15),s=t(21),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GeoJSONDataSource\",this.define({geojson:[o.Any]}),this.internal({data:[o.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._update_data()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.geojson.change,function(){return t._update_data()})},t.prototype._update_data=function(){this.data=this.geojson_to_column_data()},t.prototype._get_new_list_array=function(t){return s.range(0,t).map(function(t){return[]})},t.prototype._get_new_nan_array=function(t){return s.range(0,t).map(function(t){return NaN})},t.prototype._add_properties=function(t,e,i,n){var r=t.properties||{};for(var o in r)e.hasOwnProperty(o)||(e[o]=this._get_new_nan_array(n)),e[o][i]=r[o]},t.prototype._add_geometry=function(t,e,i){function n(t){return null!=t?t:NaN}function r(t,e){return t.concat([[NaN,NaN,NaN]]).concat(e)}switch(t.type){case\"Point\":var o=t.coordinates,s=o[0],a=o[1],l=o[2];e.x[i]=s,e.y[i]=a,e.z[i]=n(l);break;case\"LineString\":for(var h=t.coordinates,u=0;u<h.length;u++){var c=h[u],s=c[0],a=c[1],l=c[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"Polygon\":1<t.coordinates.length&&b.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\");for(var _=t.coordinates[0],u=0;u<_.length;u++){var p=_[u],s=p[0],a=p[1],l=p[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"MultiPoint\":b.logger.warn(\"MultiPoint not supported in Bokeh\");break;case\"MultiLineString\":for(var h=t.coordinates.reduce(r),u=0;u<h.length;u++){var d=h[u],s=d[0],a=d[1],l=d[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"MultiPolygon\":for(var f=[],v=0,m=t.coordinates;v<m.length;v++){var g=m[v];1<g.length&&b.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\"),f.push(g[0])}for(var h=f.reduce(r),u=0;u<h.length;u++){var y=h[u],s=y[0],a=y[1],l=y[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;default:throw new Error(\"Invalid GeoJSON geometry type: \"+t.type)}},t.prototype.geojson_to_column_data=function(){var t,e=JSON.parse(this.geojson);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\")}for(var i=0,n=0,r=t;n<r.length;n++){var o=r[n],s=\"Feature\"===o.type?o.geometry:o;\"GeometryCollection\"==s.type?i+=s.geometries.length:i+=1}for(var a={x:this._get_new_nan_array(i),y:this._get_new_nan_array(i),z:this._get_new_nan_array(i),xs:this._get_new_list_array(i),ys:this._get_new_list_array(i),zs:this._get_new_list_array(i)},l=0,h=0,u=t;h<u.length;h++){var o=u[h],s=\"Feature\"==o.type?o.geometry:o;if(\"GeometryCollection\"==s.type)for(var c=0,_=s.geometries;c<_.length;c++){var p=_[c];this._add_geometry(p,a,l),\"Feature\"===o.type&&this._add_properties(o,a,l,i),l+=1}else this._add_geometry(s,a,l),\"Feature\"===o.type&&this._add_properties(o,a,l,i),l+=1}return a},t}(r.ColumnarDataSource);(i.GeoJSONDataSource=a).initClass()},function(t,e,i){var n=t(198);i.AjaxDataSource=n.AjaxDataSource;var r=t(200);i.ColumnDataSource=r.ColumnDataSource;var o=t(201);i.ColumnarDataSource=o.ColumnarDataSource;var s=t(199);i.CDSView=s.CDSView;var a=t(202);i.DataSource=a.DataSource;var l=t(203);i.GeoJSONDataSource=l.GeoJSONDataSource;var h=t(205);i.RemoteDataSource=h.RemoteDataSource},function(t,e,i){var n=t(391),r=t(200),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.get_column=function(t){var e=this.data[t];return null!=e?e:[]},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.setup()},t.initClass=function(){this.prototype.type=\"RemoteDataSource\",this.define({data_url:[o.String],polling_interval:[o.Number]})},t}(r.ColumnDataSource);(i.RemoteDataSource=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),v=t(21),s=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"AdaptiveTicker\",this.define({base:[o.Number,10],mantissas:[o.Array,[1,2,5]],min_interval:[o.Number,0],max_interval:[o.Number]})},t.prototype.initialize=function(){i.prototype.initialize.call(this);var t=v.nth(this.mantissas,-1)/this.base,e=v.nth(this.mantissas,0)*this.base;this.extended_mantissas=[t].concat(this.mantissas,[e]),this.base_factor=0===this.get_min_interval()?1:this.get_min_interval()},t.prototype.get_interval=function(t,e,i){var n,r,o,s,a,l=e-t,h=this.get_ideal_interval(t,e,i),u=Math.floor((s=h/this.base_factor,void 0===(a=this.base)&&(a=Math.E),Math.log(s)/Math.log(a))),c=Math.pow(this.base,u)*this.base_factor,_=this.extended_mantissas,p=_.map(function(t){return Math.abs(i-l/(t*c))}),d=_[v.argmin(p)],f=d*c;return n=f,r=this.get_min_interval(),o=this.get_max_interval(),Math.max(r,Math.min(o,n))},t}(r.ContinuousTicker);(i.AdaptiveTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(206),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BasicTicker\"},t}(r.AdaptiveTicker);(i.BasicTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(219),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalTicker\"},t.prototype.get_ticks=function(t,e,i,n,r){var o=this._collect(i.factors,i,t,e),s=this._collect(i.tops||[],i,t,e),a=this._collect(i.mids||[],i,t,e);return{major:o,minor:[],tops:s,mids:a}},t.prototype._collect=function(t,e,i,n){for(var r=[],o=0,s=t;o<s.length;o++){var a=s[o],l=e.synthetic(a);i<l&&l<n&&r.push(a)}return r},t}(r.Ticker);(i.CategoricalTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),c=t(21),_=t(32),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CompositeTicker\",this.define({tickers:[o.Array,[]]})},Object.defineProperty(t.prototype,\"min_intervals\",{get:function(){return this.tickers.map(function(t){return t.get_min_interval()})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_intervals\",{get:function(){return this.tickers.map(function(t){return t.get_max_interval()})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"min_interval\",{get:function(){return this.min_intervals[0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_interval\",{get:function(){return this.max_intervals[0]},enumerable:!0,configurable:!0}),t.prototype.get_best_ticker=function(t,e,i){var n,r=e-t,o=this.get_ideal_interval(t,e,i),s=[c.sortedIndex(this.min_intervals,o)-1,c.sortedIndex(this.max_intervals,o)],a=[this.min_intervals[s[0]],this.max_intervals[s[1]]],l=a.map(function(t){return Math.abs(i-r/t)});if(_.isEmpty(l.filter(function(t){return!isNaN(t)})))n=this.tickers[0];else{var h=c.argmin(l),u=s[h];n=this.tickers[u]}return n},t.prototype.get_interval=function(t,e,i){var n=this.get_best_ticker(t,e,i);return n.get_interval(t,e,i)},t.prototype.get_ticks_no_defaults=function(t,e,i,n){var r=this.get_best_ticker(t,e,n);return r.get_ticks_no_defaults(t,e,i,n)},t}(r.ContinuousTicker);(i.CompositeTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(219),o=t(15),x=t(21),w=t(44),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousTicker\",this.define({num_minor_ticks:[o.Number,5],desired_num_ticks:[o.Number,6]})},t.prototype.get_ticks=function(t,e,i,n,r){return this.get_ticks_no_defaults(t,e,n,this.desired_num_ticks)},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=this.get_interval(e,i,n),o=Math.floor(e/r),s=Math.ceil(i/r),a=(w.isStrictNaN(o)||w.isStrictNaN(s)?[]:x.range(o,s+1)).map(function(t){return t*r}).filter(function(t){return e<=t&&t<=i}),l=this.num_minor_ticks,h=[];if(0<l&&0<a.length){for(var u=r/l,c=x.range(0,l).map(function(t){return t*u}),_=0,p=c.slice(1);_<p.length;_++){var d=p[_],f=a[0]-d;e<=f&&f<=i&&h.push(f)}for(var v=0,m=a;v<m.length;v++)for(var g=m[v],y=0,b=c;y<b.length;y++){var d=b[y],f=g+d;e<=f&&f<=i&&h.push(f)}}return{major:a,minor:h}},t.prototype.get_min_interval=function(){return this.min_interval},t.prototype.get_max_interval=function(){return null!=this.max_interval?this.max_interval:1/0},t.prototype.get_ideal_interval=function(t,e,i){var n=e-t;return n/i},t}(r.Ticker);(i.ContinuousTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(21),o=t(206),s=t(209),a=t(212),l=t(217),h=t(221),u=t(220),c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatetimeTicker\",this.override({num_minor_ticks:0,tickers:function(){return[new o.AdaptiveTicker({mantissas:[1,2,5],base:10,min_interval:0,max_interval:500*u.ONE_MILLI,num_minor_ticks:0}),new o.AdaptiveTicker({mantissas:[1,2,5,10,15,20,30],base:60,min_interval:u.ONE_SECOND,max_interval:30*u.ONE_MINUTE,num_minor_ticks:0}),new o.AdaptiveTicker({mantissas:[1,2,4,6,8,12],base:24,min_interval:u.ONE_HOUR,max_interval:12*u.ONE_HOUR,num_minor_ticks:0}),new a.DaysTicker({days:r.range(1,32)}),new a.DaysTicker({days:r.range(1,31,3)}),new a.DaysTicker({days:[1,8,15,22]}),new a.DaysTicker({days:[1,15]}),new l.MonthsTicker({months:r.range(0,12,1)}),new l.MonthsTicker({months:r.range(0,12,2)}),new l.MonthsTicker({months:r.range(0,12,4)}),new l.MonthsTicker({months:r.range(0,12,6)}),new h.YearsTicker({})]}})},t}(s.CompositeTicker);(i.DatetimeTicker=c).initClass()},function(t,e,i){var n=t(391),r=t(218),u=t(220),o=t(15),c=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DaysTicker\",this.define({days:[o.Array,[]]}),this.override({num_minor_ticks:0})},t.prototype.initialize=function(){e.prototype.initialize.call(this);var t=this.days;1<t.length?this.interval=(t[1]-t[0])*u.ONE_DAY:this.interval=31*u.ONE_DAY},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=function(t,e){var i=u.last_month_no_later_than(new Date(t)),n=u.last_month_no_later_than(new Date(e));n.setUTCMonth(n.getUTCMonth()+1);for(var r=[],o=i;r.push(u.copy_date(o)),o.setUTCMonth(o.getUTCMonth()+1),!(n<o););return r}(e,i),h=this.days,o=this.interval,s=c.concat(r.map(function(t){return function(t,e){for(var i=t.getUTCMonth(),n=[],r=0,o=h;r<o.length;r++){var s=o[r],a=u.copy_date(t);a.setUTCDate(s);var l=new Date(a.getTime()+e/2);l.getUTCMonth()==i&&n.push(a)}return n}(t,o)})),a=s.map(function(t){return t.getTime()}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(r.SingleIntervalTicker);(i.DaysTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),s=function(i){function t(t){var e=i.call(this,t)||this;return e.min_interval=0,e.max_interval=0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"FixedTicker\",this.define({ticks:[o.Array,[]],minor_ticks:[o.Array,[]]})},t.prototype.get_ticks_no_defaults=function(t,e,i,n){return{major:this.ticks,minor:this.minor_ticks}},t.prototype.get_interval=function(t,e,i){return 0},t}(r.ContinuousTicker);(i.FixedTicker=s).initClass()},function(t,e,i){var n=t(206);i.AdaptiveTicker=n.AdaptiveTicker;var r=t(207);i.BasicTicker=r.BasicTicker;var o=t(208);i.CategoricalTicker=o.CategoricalTicker;var s=t(209);i.CompositeTicker=s.CompositeTicker;var a=t(210);i.ContinuousTicker=a.ContinuousTicker;var l=t(211);i.DatetimeTicker=l.DatetimeTicker;var h=t(212);i.DaysTicker=h.DaysTicker;var u=t(213);i.FixedTicker=u.FixedTicker;var c=t(215);i.LogTicker=c.LogTicker;var _=t(216);i.MercatorTicker=_.MercatorTicker;var p=t(217);i.MonthsTicker=p.MonthsTicker;var d=t(218);i.SingleIntervalTicker=d.SingleIntervalTicker;var f=t(219);i.Ticker=f.Ticker;var v=t(221);i.YearsTicker=v.YearsTicker},function(t,e,i){var n=t(391),r=t(206),N=t(21),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogTicker\",this.override({mantissas:[1,5]})},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r,o=this.num_minor_ticks,s=[],a=this.base,l=Math.log(e)/Math.log(a),h=Math.log(i)/Math.log(a),u=h-l;if(isFinite(u))if(u<2){var c=this.get_interval(e,i,n),_=Math.floor(e/c),p=Math.ceil(i/c);if(r=N.range(_,p+1).filter(function(t){return 0!=t}).map(function(t){return t*c}).filter(function(t){return e<=t&&t<=i}),0<o&&0<r.length){for(var d=c/o,f=N.range(0,o).map(function(t){return t*d}),v=0,m=f.slice(1);v<m.length;v++){var g=m[v];s.push(r[0]-g)}for(var y=0,b=r;y<b.length;y++)for(var x=b[y],w=0,k=f;w<k.length;w++){var g=k[w];s.push(x+g)}}}else{var S=Math.ceil(.999999*l),C=Math.floor(1.000001*h),T=Math.ceil((C-S)/9);if(r=N.range(S-1,C+1,T).map(function(t){return Math.pow(a,t)}),0<o&&0<r.length){for(var A=Math.pow(a,T)/o,f=N.range(1,o+1).map(function(t){return t*A}),E=0,M=f;E<M.length;E++){var g=M[E];s.push(r[0]/g)}s.push(r[0]);for(var O=0,z=r;O<z.length;O++)for(var x=z[O],P=0,j=f;P<j.length;P++){var g=j[P];s.push(x*g)}}}else r=[];return{major:r.filter(function(t){return e<=t&&t<=i}),minor:s.filter(function(t){return e<=t&&t<=i})}},t}(r.AdaptiveTicker);(i.LogTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(207),o=t(15),M=t(33),s=function(E){function t(t){return E.call(this,t)||this}return n.__extends(t,E),t.initClass=function(){this.prototype.type=\"MercatorTicker\",this.define({dimension:[o.LatLon]})},t.prototype.get_ticks_no_defaults=function(t,e,i,n){var r,o,s,a,l,h,u,c;if(null==this.dimension)throw new Error(\"MercatorTicker.dimension not configured\");r=M.clip_mercator(t,e,this.dimension),t=r[0],e=r[1],\"lon\"===this.dimension?(o=M.wgs84_mercator.inverse([t,i]),h=o[0],c=o[1],s=M.wgs84_mercator.inverse([e,i]),u=s[0],c=s[1]):(a=M.wgs84_mercator.inverse([i,t]),c=a[0],h=a[1],l=M.wgs84_mercator.inverse([i,e]),c=l[0],u=l[1]);var _=E.prototype.get_ticks_no_defaults.call(this,h,u,i,n),p=[],d=[];if(\"lon\"===this.dimension){for(var f=0,v=_.major;f<v.length;f++){var m=v[f];if(M.in_bounds(m,\"lon\")){var g=M.wgs84_mercator.forward([m,c])[0];p.push(g)}}for(var y=0,b=_.minor;y<b.length;y++){var m=b[y];if(M.in_bounds(m,\"lon\")){var g=M.wgs84_mercator.forward([m,c])[0];d.push(g)}}}else{for(var x=0,w=_.major;x<w.length;x++){var m=w[x];if(M.in_bounds(m,\"lat\")){var k=M.wgs84_mercator.forward([c,m]),S=k[1];p.push(S)}}for(var C=0,T=_.minor;C<T.length;C++){var m=T[C];if(M.in_bounds(m,\"lat\")){var A=M.wgs84_mercator.forward([c,m]),S=A[1];d.push(S)}}}return{major:p,minor:d}},t}(r.BasicTicker);(i.MercatorTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(218),h=t(220),o=t(15),u=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MonthsTicker\",this.define({months:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this);var t=this.months;1<t.length?this.interval=(t[1]-t[0])*h.ONE_MONTH:this.interval=12*h.ONE_MONTH},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=function(t,e){var i=h.last_year_no_later_than(new Date(t)),n=h.last_year_no_later_than(new Date(e));n.setUTCFullYear(n.getUTCFullYear()+1);for(var r=[],o=i;r.push(h.copy_date(o)),o.setUTCFullYear(o.getUTCFullYear()+1),!(n<o););return r}(e,i),o=this.months,s=u.concat(r.map(function(i){return o.map(function(t){var e=h.copy_date(i);return e.setUTCMonth(t),e})})),a=s.map(function(t){return t.getTime()}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(r.SingleIntervalTicker);(i.MonthsTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"SingleIntervalTicker\",this.define({interval:[o.Number]})},t.prototype.get_interval=function(t,e,i){return this.interval},Object.defineProperty(t.prototype,\"min_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),t}(r.ContinuousTicker);(i.SingleIntervalTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ticker\"},t}(r.Model);(i.Ticker=o).initClass()},function(t,e,i){function n(t){return new Date(t.getTime())}function r(t){var e=n(t);return e.setUTCDate(1),e.setUTCHours(0),e.setUTCMinutes(0),e.setUTCSeconds(0),e.setUTCMilliseconds(0),e}i.ONE_MILLI=1,i.ONE_SECOND=1e3,i.ONE_MINUTE=60*i.ONE_SECOND,i.ONE_HOUR=60*i.ONE_MINUTE,i.ONE_DAY=24*i.ONE_HOUR,i.ONE_MONTH=30*i.ONE_DAY,i.ONE_YEAR=365*i.ONE_DAY,i.copy_date=n,i.last_month_no_later_than=r,i.last_year_no_later_than=function(t){var e=r(t);return e.setUTCMonth(0),e}},function(t,e,i){var n=t(391),r=t(207),o=t(218),h=t(220),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"YearsTicker\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.interval=h.ONE_YEAR,this.basic_ticker=new r.BasicTicker({num_minor_ticks:0})},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=h.last_year_no_later_than(new Date(e)).getUTCFullYear(),o=h.last_year_no_later_than(new Date(i)).getUTCFullYear(),s=this.basic_ticker.get_ticks_no_defaults(r,o,t,n).major,a=s.map(function(t){return Date.UTC(t,0,1)}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(o.SingleIntervalTicker);(i.YearsTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(225),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BBoxTileSource\",this.define({use_latlon:[o.Bool,!1]})},t.prototype.get_image_url=function(t,e,i){var n,r,o,s,a,l,h=this.string_lookup_replace(this.url,this.extra_url_vars);return this.use_latlon?(n=this.get_tile_geographic_bounds(t,e,i),s=n[0],l=n[1],o=n[2],a=n[3]):(r=this.get_tile_meter_bounds(t,e,i),s=r[0],l=r[1],o=r[2],a=r[3]),h.replace(\"{XMIN}\",s.toString()).replace(\"{YMIN}\",l.toString()).replace(\"{XMAX}\",o.toString()).replace(\"{YMAX}\",a.toString())},t}(r.MercatorTileSource);(i.BBoxTileSource=s).initClass()},function(t,e,i){var n=t(44),r=function(){function t(){this.images=[]}return t.prototype.pop=function(){var t=this.images.pop();return null!=t?t:new Image},t.prototype.push=function(t){var e;50<this.images.length||(n.isArray(t)?(e=this.images).push.apply(e,t):this.images.push(t))},t}();i.ImagePool=r},function(t,e,i){var n=t(222);i.BBoxTileSource=n.BBoxTileSource;var r=t(225);i.MercatorTileSource=r.MercatorTileSource;var o=t(226);i.QUADKEYTileSource=o.QUADKEYTileSource;var s=t(227);i.TileRenderer=s.TileRenderer;var a=t(228);i.TileSource=a.TileSource;var l=t(230);i.TMSTileSource=l.TMSTileSource;var h=t(231);i.WMTSTileSource=h.WMTSTileSource},function(t,e,i){var n=t(391),r=t(228),o=t(15),s=t(21),h=t(229),a=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"MercatorTileSource\",this.define({snap_to_zoom:[o.Bool,!1],wrap_around:[o.Bool,!0]}),this.override({x_origin_offset:20037508.34,y_origin_offset:20037508.34,initial_resolution:156543.03392804097})},t.prototype.initialize=function(){var e=this;i.prototype.initialize.call(this),this._resolutions=s.range(this.min_zoom,this.max_zoom+1).map(function(t){return e.get_resolution(t)})},t.prototype._computed_initial_resolution=function(){return null!=this.initial_resolution?this.initial_resolution:2*Math.PI*6378137/this.tile_size},t.prototype.is_valid_tile=function(t,e,i){return!(!this.wrap_around&&(t<0||t>=Math.pow(2,i))||e<0||e>=Math.pow(2,i))},t.prototype.parent_by_tile_xyz=function(t,e,i){var n=this.tile_xyz_to_quadkey(t,e,i),r=n.substring(0,n.length-1);return this.quadkey_to_tile_xyz(r)},t.prototype.get_resolution=function(t){return this._computed_initial_resolution()/Math.pow(2,t)},t.prototype.get_resolution_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e;return[n,r]},t.prototype.get_level_by_extent=function(t,e,i){for(var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=0,a=0,l=this._resolutions;a<l.length;a++){var h=l[a];if(h<o){if(0==s)return 0;if(0<s)return s-1}s+=1}return s-1},t.prototype.get_closest_level_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=this._resolutions.reduce(function(t,e){return Math.abs(e-o)<Math.abs(t-o)?e:t});return this._resolutions.indexOf(s)},t.prototype.snap_to_zoom_level=function(t,e,i,n){var r=t[0],o=t[1],s=t[2],a=t[3],l=this._resolutions[n],h=i*l,u=e*l;if(!this.snap_to_zoom){var c=(s-r)/h,_=(a-o)/u;_<c?(h=s-r,u*=c):(h*=_,u=a-o)}var p=(h-(s-r))/2,d=(u-(a-o))/2;return[r-p,o-d,s+p,a+d]},t.prototype.tms_to_wmts=function(t,e,i){\"Note this works both ways\";return[t,Math.pow(2,i)-1-e,i]},t.prototype.wmts_to_tms=function(t,e,i){\"Note this works both ways\";return[t,Math.pow(2,i)-1-e,i]},t.prototype.pixels_to_meters=function(t,e,i){var n=this.get_resolution(i),r=t*n-this.x_origin_offset,o=e*n-this.y_origin_offset;return[r,o]},t.prototype.meters_to_pixels=function(t,e,i){var n=this.get_resolution(i),r=(t+this.x_origin_offset)/n,o=(e+this.y_origin_offset)/n;return[r,o]},t.prototype.pixels_to_tile=function(t,e){var i=Math.ceil(t/this.tile_size);i=0===i?i:i-1;var n=Math.max(Math.ceil(e/this.tile_size)-1,0);return[i,n]},t.prototype.pixels_to_raster=function(t,e,i){var n=this.tile_size<<i;return[t,n-e]},t.prototype.meters_to_tile=function(t,e,i){var n=this.meters_to_pixels(t,e,i),r=n[0],o=n[1];return this.pixels_to_tile(r,o)},t.prototype.get_tile_meter_bounds=function(t,e,i){var n=this.pixels_to_meters(t*this.tile_size,e*this.tile_size,i),r=n[0],o=n[1],s=this.pixels_to_meters((t+1)*this.tile_size,(e+1)*this.tile_size,i),a=s[0],l=s[1];return[r,o,a,l]},t.prototype.get_tile_geographic_bounds=function(t,e,i){var n=this.get_tile_meter_bounds(t,e,i),r=h.meters_extent_to_geographic(n),o=r[0],s=r[1],a=r[2],l=r[3];return[o,s,a,l]},t.prototype.get_tiles_by_extent=function(t,e,i){void 0===i&&(i=1);var n=t[0],r=t[1],o=t[2],s=t[3],a=this.meters_to_tile(n,r,e),l=a[0],h=a[1],u=this.meters_to_tile(o,s,e),c=u[0],_=u[1];l-=i,h-=i,c+=i;for(var p=[],d=_+=i;h<=d;d--)for(var f=l;f<=c;f++)this.is_valid_tile(f,d,e)&&p.push([f,d,e,this.get_tile_meter_bounds(f,d,e)]);return this.sort_tiles_from_center(p,[l,h,c,_]),p},t.prototype.quadkey_to_tile_xyz=function(t){for(var e=0,i=0,n=t.length,r=n;0<r;r--){var o=t.charAt(n-r),s=1<<r-1;switch(o){case\"0\":continue;case\"1\":e|=s;break;case\"2\":i|=s;break;case\"3\":e|=s,i|=s;break;default:throw new TypeError(\"Invalid Quadkey: \"+t)}}return[e,i,n]},t.prototype.tile_xyz_to_quadkey=function(t,e,i){for(var n=\"\",r=i;0<r;r--){var o=1<<r-1,s=0;0!=(t&o)&&(s+=1),0!=(e&o)&&(s+=2),n+=s.toString()}return n},t.prototype.children_by_tile_xyz=function(t,e,i){for(var n=this.tile_xyz_to_quadkey(t,e,i),r=[],o=0;o<=3;o++){var s=this.quadkey_to_tile_xyz(n+o.toString()),a=s[0],l=s[1],h=s[2],u=this.get_tile_meter_bounds(a,l,h);r.push([a,l,h,u])}return r},t.prototype.get_closest_parent_by_tile_xyz=function(t,e,i){var n,r,o,s=this.calculate_world_x_by_tile_xyz(t,e,i);n=this.normalize_xyz(t,e,i),t=n[0],e=n[1],i=n[2];for(var a=this.tile_xyz_to_quadkey(t,e,i);0<a.length;)if(a=a.substring(0,a.length-1),r=this.quadkey_to_tile_xyz(a),t=r[0],e=r[1],i=r[2],o=this.denormalize_xyz(t,e,i,s),t=o[0],e=o[1],i=o[2],this.tile_xyz_to_key(t,e,i)in this.tiles)return[t,e,i];return[0,0,0]},t.prototype.normalize_xyz=function(t,e,i){if(this.wrap_around){var n=Math.pow(2,i);return[(t%n+n)%n,e,i]}return[t,e,i]},t.prototype.denormalize_xyz=function(t,e,i,n){return[t+n*Math.pow(2,i),e,i]},t.prototype.denormalize_meters=function(t,e,i,n){return[t+2*n*Math.PI*6378137,e]},t.prototype.calculate_world_x_by_tile_xyz=function(t,e,i){return Math.floor(t/Math.pow(2,i))},t}(r.TileSource);(i.MercatorTileSource=a).initClass()},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"QUADKEYTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars),r=this.tms_to_wmts(t,e,i),o=r[0],s=r[1],a=r[2],l=this.tile_xyz_to_quadkey(o,s,a);return n.replace(\"{Q}\",l)},t}(r.MercatorTileSource);(i.QUADKEYTileSource=o).initClass()},function(t,e,i){var r=t(391),o=t(223),n=t(231),s=t(189),a=t(184),l=t(5),h=t(15),I=t(21),u=t(44),c=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return r.__extends(t,n),t.prototype.initialize=function(t){this.attributionEl=null,this._tiles=[],n.prototype.initialize.call(this,t)},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.request_render()})},t.prototype.get_extent=function(){return[this.x_range.start,this.y_range.start,this.x_range.end,this.y_range.end]},Object.defineProperty(t.prototype,\"map_plot\",{get:function(){return this.plot_model.plot},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"map_canvas\",{get:function(){return this.plot_view.canvas_view.ctx},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"map_frame\",{get:function(){return this.plot_model.frame},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"x_range\",{get:function(){return this.map_plot.x_range},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"y_range\",{get:function(){return this.map_plot.y_range},enumerable:!0,configurable:!0}),t.prototype._set_data=function(){this.pool=new o.ImagePool,this.extent=this.get_extent(),this._last_height=void 0,this._last_width=void 0},t.prototype._add_attribution=function(){var t=this.model.tile_source.attribution;if(u.isString(t)&&0<t.length){if(null==this.attributionEl){var e=this.plot_model.canvas._right.value-this.plot_model.frame._right.value,i=this.plot_model.canvas._bottom.value-this.plot_model.frame._bottom.value,n=this.map_frame._width.value;this.attributionEl=l.div({class:\"bk-tile-attribution\",style:{position:\"absolute\",bottom:i+\"px\",right:e+\"px\",\"max-width\":n-4+\"px\",padding:\"2px\",\"background-color\":\"rgba(255,255,255,0.5)\",\"font-size\":\"7pt\",\"font-family\":\"sans-serif\",\"line-height\":\"1.05\",\"white-space\":\"nowrap\",overflow:\"hidden\",\"text-overflow\":\"ellipsis\"}});var r=this.plot_view.canvas_view.events_el;r.appendChild(this.attributionEl)}this.attributionEl.innerHTML=t,this.attributionEl.title=this.attributionEl.textContent.replace(/\\s*\\n\\s*/g,\" \")}},t.prototype._map_data=function(){this.initial_extent=this.get_extent();var t=this.model.tile_source.get_level_by_extent(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value),e=this.model.tile_source.snap_to_zoom_level(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value,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 a.Range1d&&(this.x_range.reset_start=e[0],this.x_range.reset_end=e[2]),this.y_range instanceof a.Range1d&&(this.y_range.reset_start=e[1],this.y_range.reset_end=e[3]),this._add_attribution()},t.prototype._on_tile_load=function(t,e){t.img=e.target,t.loaded=!0,this.request_render()},t.prototype._on_tile_cache_load=function(t,e){t.img=e.target,t.loaded=!0,t.finished=!0,this.notify_finished()},t.prototype._on_tile_error=function(t){t.finished=!0},t.prototype._create_tile=function(t,e,i,n,r){void 0===r&&(r=!1);var o=this.model.tile_source.normalize_xyz(t,e,i),s=o[0],a=o[1],l=o[2],h=this.pool.pop(),u={img:h,tile_coords:[t,e,i],normalized_coords:[s,a,l],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:n,loaded:!1,finished:!1,x_coord:n[0],y_coord:n[3]};h.onload=r?this._on_tile_cache_load.bind(this,u):this._on_tile_load.bind(this,u),h.onerror=this._on_tile_error.bind(this,u),h.alt=\"\",h.src=this.model.tile_source.get_image_url(s,a,l),this.model.tile_source.tiles[u.cache_key]=u,this._tiles.push(u)},t.prototype._enforce_aspect_ratio=function(){if(this._last_height!==this.map_frame._height.value||this._last_width!==this.map_frame._width.value){var t=this.get_extent(),e=this.model.tile_source.get_level_by_extent(t,this.map_frame._height.value,this.map_frame._width.value),i=this.model.tile_source.snap_to_zoom_level(t,this.map_frame._height.value,this.map_frame._width.value,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._height.value,this._last_width=this.map_frame._width.value}},t.prototype.has_finished=function(){if(!n.prototype.has_finished.call(this))return!1;if(0===this._tiles.length)return!1;for(var t=0,e=this._tiles;t<e.length;t++){var i=e[t];if(!i.finished)return!1}return!0},t.prototype.render=function(){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()},t.prototype._draw_tile=function(t){var e=this.model.tile_source.tiles[t];if(null!=e){var i=this.plot_view.map_to_screen([e.bounds[0]],[e.bounds[3]]),n=i[0][0],r=i[1][0],o=this.plot_view.map_to_screen([e.bounds[2]],[e.bounds[1]]),s=o[0][0],a=o[1][0],l=s-n,h=a-r,u=n,c=r,_=this.map_canvas.getImageSmoothingEnabled();this.map_canvas.setImageSmoothingEnabled(this.model.smoothing),this.map_canvas.drawImage(e.img,u,c,l,h),this.map_canvas.setImageSmoothingEnabled(_),e.finished=!0}},t.prototype._set_rect=function(){var t=this.plot_model.plot.properties.outline_line_width.value(),e=this.map_frame._left.value+t/2,i=this.map_frame._top.value+t/2,n=this.map_frame._width.value-t,r=this.map_frame._height.value-t;this.map_canvas.rect(e,i,n,r),this.map_canvas.clip()},t.prototype._render_tiles=function(t){this.map_canvas.save(),this._set_rect(),this.map_canvas.globalAlpha=this.model.alpha;for(var e=0,i=t;e<i.length;e++){var n=i[e];this._draw_tile(n)}this.map_canvas.restore()},t.prototype._prefetch_tiles=function(){for(var t=this.model.tile_source,e=this.get_extent(),i=this.map_frame._height.value,n=this.map_frame._width.value,r=this.model.tile_source.get_level_by_extent(e,i,n),o=this.model.tile_source.get_tiles_by_extent(e,r),s=0,a=Math.min(10,o.length);s<a;s++)for(var l=o[s],h=l[0],u=l[1],c=l[2],_=this.model.tile_source.children_by_tile_xyz(h,u,c),p=0,d=_;p<d.length;p++){var f=d[p],v=f[0],m=f[1],g=f[2],y=f[3];t.tile_xyz_to_key(v,m,g)in t.tiles||this._create_tile(v,m,g,y,!0)}},t.prototype._fetch_tiles=function(t){for(var e=0,i=t;e<i.length;e++){var n=i[e],r=n[0],o=n[1],s=n[2],a=n[3];this._create_tile(r,o,s,a)}},t.prototype._update=function(){var t=this,e=this.model.tile_source,i=e.min_zoom,n=e.max_zoom,r=this.get_extent(),o=this.extent[2]-this.extent[0]<r[2]-r[0],s=this.map_frame._height.value,a=this.map_frame._width.value,l=e.get_level_by_extent(r,s,a),h=!1;l<i?(r=this.extent,l=i,h=!0):n<l&&(r=this.extent,l=n,h=!0),h&&(this.x_range.setv({x_range:{start:r[0],end:r[2]}}),this.y_range.setv({start:r[1],end:r[3]}),this.extent=r),this.extent=r;for(var u=e.get_tiles_by_extent(r,l),c=[],_=[],p=[],d=[],f=0,v=u;f<v.length;f++){var m=v[f],g=m[0],y=m[1],b=m[2],x=e.tile_xyz_to_key(g,y,b),w=e.tiles[x];if(null!=w&&w.loaded)_.push(x);else if(this.model.render_parents){var k=e.get_closest_parent_by_tile_xyz(g,y,b),S=k[0],C=k[1],T=k[2],A=e.tile_xyz_to_key(S,C,T),E=e.tiles[A];if(null!=E&&E.loaded&&!I.includes(p,A)&&p.push(A),o)for(var M=e.children_by_tile_xyz(g,y,b),O=0,z=M;O<z.length;O++){var P=z[O],j=P[0],N=P[1],F=P[2],D=e.tile_xyz_to_key(j,N,F);D in e.tiles&&d.push(D)}}null==w&&c.push(m)}this._render_tiles(p),this._render_tiles(d),this._render_tiles(_),null!=this.render_timer&&clearTimeout(this.render_timer),this.render_timer=setTimeout(function(){return t._fetch_tiles(c)},65)},t}(s.RendererView);i.TileRendererView=c;var _=function(e){function t(t){return e.call(this,t)||this}return r.__extends(t,e),t.initClass=function(){this.prototype.type=\"TileRenderer\",this.prototype.default_view=c,this.define({alpha:[h.Number,1],x_range_name:[h.String,\"default\"],y_range_name:[h.String,\"default\"],smoothing:[h.Bool,!0],tile_source:[h.Instance,function(){return new n.WMTSTileSource}],render_parents:[h.Bool,!0]}),this.override({level:\"underlay\"})},t}(s.Renderer);(i.TileRenderer=_).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(223),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TileSource\",this.define({url:[s.String,\"\"],tile_size:[s.Number,256],max_zoom:[s.Number,30],min_zoom:[s.Number,0],extra_url_vars:[s.Any,{}],attribution:[s.String,\"\"],x_origin_offset:[s.Number],y_origin_offset:[s.Number],initial_resolution:[s.Number]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.tiles={},this.pool=new o.ImagePool,this._normalize_case()},t.prototype.string_lookup_replace=function(t,e){var i=t;for(var n in e){var r=e[n];i=i.replace(\"{\"+n+\"}\",r)}return i},t.prototype._normalize_case=function(){var t=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=t},t.prototype.tile_xyz_to_key=function(t,e,i){return t+\":\"+e+\":\"+i},t.prototype.key_to_tile_xyz=function(t){var e=t.split(\":\").map(function(t){return parseInt(t)}),i=e[0],n=e[1],r=e[2];return[i,n,r]},t.prototype.sort_tiles_from_center=function(t,e){var i=e[0],n=e[1],r=e[2],o=e[3],s=(r-i)/2+i,a=(o-n)/2+n;t.sort(function(t,e){var i=Math.sqrt(Math.pow(s-t[0],2)+Math.pow(a-t[1],2)),n=Math.sqrt(Math.pow(s-e[0],2)+Math.pow(a-e[1],2));return i-n})},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars);return n.replace(\"{X}\",t.toString()).replace(\"{Y}\",e.toString()).replace(\"{Z}\",i.toString())},t}(r.Model);(i.TileSource=a).initClass()},function(t,e,i){var n=t(33);function c(t,e){return n.wgs84_mercator.forward([t,e])}function _(t,e){return n.wgs84_mercator.inverse([t,e])}i.geographic_to_meters=c,i.meters_to_geographic=_,i.geographic_extent_to_meters=function(t){var e=t[0],i=t[1],n=t[2],r=t[3],o=c(e,i),s=o[0],a=o[1],l=c(n,r),h=l[0],u=l[1];return[s,a,h,u]},i.meters_extent_to_geographic=function(t){var e=t[0],i=t[1],n=t[2],r=t[3],o=_(e,i),s=o[0],a=o[1],l=_(n,r),h=l[0],u=l[1];return[s,a,h,u]}},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TMSTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars);return n.replace(\"{X}\",t.toString()).replace(\"{Y}\",e.toString()).replace(\"{Z}\",i.toString())},t}(r.MercatorTileSource);(i.TMSTileSource=o).initClass()},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"WMTSTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars),r=this.tms_to_wmts(t,e,i),o=r[0],s=r[1],a=r[2];return n.replace(\"{X}\",o.toString()).replace(\"{Y}\",s.toString()).replace(\"{Z}\",a.toString())},t}(r.MercatorTileSource);(i.WMTSTileSource=o).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(19),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._clicked=function(){this.model.do.emit()},e}(r.ButtonToolButtonView);i.ActionToolButtonView=s;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.do,function(){return t.doit()})},t}(r.ButtonToolView);i.ActionToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.button_view=s,e.do=new o.Signal0(e,\"do\"),e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ActionTool\"},t}(r.ButtonTool);(i.ActionTool=l).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(15),s=t(44),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-toolbar-button-custom-action\")},e}(r.ActionToolButtonView);i.CustomActionButtonView=a;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.model.callback;s.isFunction(t)?t(this,{}):t.execute(this,{})},e}(r.ActionToolView);i.CustomActionView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Custom Action\",e.button_view=a,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"CustomAction\",this.prototype.default_view=l,this.define({action_tooltip:[o.String,\"Perform a Custom Action\"],callback:[o.Any],icon:[o.String]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.action_tooltip},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.CustomAction=h).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){window.open(this.model.redirect)},e}(r.ActionToolView);i.HelpToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Help\",e.icon=\"bk-tool-icon-help\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"HelpTool\",this.prototype.default_view=s,this.define({help_tooltip:[o.String,\"Click the question mark to learn more about Bokeh plot tools.\"],redirect:[o.String,\"https://bokeh.pydata.org/en/latest/docs/user_guide/tools.html#built-in-tools\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.help_tooltip},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.HelpTool=a).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.plot_view.state_changed,function(){return t.model.disabled=!t.plot_view.can_redo()})},t.prototype.doit=function(){this.plot_view.redo()},t}(r.ActionToolView);i.RedoToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Redo\",e.icon=\"bk-tool-icon-redo\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"RedoTool\",this.prototype.default_view=o,this.override({disabled:!0})},t}(r.ActionTool);(i.RedoTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){this.plot_view.reset()},e}(r.ActionToolView);i.ResetToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Reset\",e.icon=\"bk-tool-icon-reset\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ResetTool\",this.prototype.default_view=o},t}(r.ActionTool);(i.ResetTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){this.plot_view.save(\"bokeh_plot\")},e}(r.ActionToolView);i.SaveToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Save\",e.icon=\"bk-tool-icon-save\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"SaveTool\",this.prototype.default_view=o},t}(r.ActionTool);(i.SaveTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.plot_view.state_changed,function(){return t.model.disabled=!t.plot_view.can_undo()})},t.prototype.doit=function(){this.plot_view.undo()},t}(r.ActionToolView);i.UndoToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Undo\",e.icon=\"bk-tool-icon-undo\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"UndoTool\",this.prototype.default_view=o,this.override({disabled:!0})},t}(r.ActionTool);(i.UndoTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(46),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.plot_model.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,n=\"height\"==e||\"both\"==e,r=o.scale_range(t,this.model.factor,i,n);this.plot_view.push_state(\"zoom_out\",{range:r}),this.plot_view.update_range(r,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.ActionToolView);i.ZoomInToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Zoom In\",e.icon=\"bk-tool-icon-zoom-in\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ZoomInTool\",this.prototype.default_view=a,this.define({factor:[s.Percent,.1],dimensions:[s.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.ZoomInTool=l).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(46),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.plot_model.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,n=\"height\"==e||\"both\"==e,r=o.scale_range(t,-this.model.factor,i,n);this.plot_view.push_state(\"zoom_out\",{range:r}),this.plot_view.update_range(r,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.ActionToolView);i.ZoomOutToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Zoom Out\",e.icon=\"bk-tool-icon-zoom-out\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ZoomOutTool\",this.prototype.default_view=a,this.define({factor:[s.Percent,.1],dimensions:[s.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.ZoomOutTool=l).initClass()},function(t,e,i){var n=t(391),r=t(6),o=t(266),s=t(5),a=t(15),l=t(38),h=t(44),u=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.change,function(){return e.render()}),this.el.addEventListener(\"click\",function(){return e._clicked()}),this.render()},t.prototype.css_classes=function(){return i.prototype.css_classes.call(this).concat(\"bk-toolbar-button\")},t.prototype.render=function(){s.empty(this.el);var t=this.model.computed_icon;h.isString(t)&&(l.startsWith(t,\"data:image\")?this.el.style.backgroundImage=\"url('\"+t+\"')\":this.el.classList.add(t)),this.el.title=this.model.tooltip},t}(r.DOMView);i.ButtonToolButtonView=u;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(o.ToolView);i.ButtonToolView=c;var _=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ButtonTool\",this.internal({disabled:[a.Boolean,!1]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.icon},enumerable:!0,configurable:!0}),t}(o.Tool);(i.ButtonTool=_).initClass()},function(t,e,i){var n=t(391),o=t(5),r=t(15),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._tap=function(t){if(null==this._draw_basepoint&&null==this._basepoint){var e=t.shiftKey;this._select_event(t,e,this.model.renderers)}},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];if(t.keyCode===o.Keys.Backspace)this._delete_selected(n);else if(t.keyCode==o.Keys.Esc){var r=n.data_source;r.selection_manager.clear()}}},e.prototype._set_extent=function(t,e,i,n){var r=t[0],o=t[1],s=e[0],a=e[1];void 0===n&&(n=!1);var l=this.model.renderers[0],h=this.plot_model.frame,u=l.glyph,c=l.data_source,_=h.xscales[l.x_range_name],p=h.yscales[l.y_range_name],d=_.r_invert(r,o),f=d[0],v=d[1],m=p.r_invert(s,a),g=m[0],y=m[1],b=[(f+v)/2,(g+y)/2],x=b[0],w=b[1],k=[v-f,y-g],S=k[0],C=k[1],T=[u.x.field,u.y.field],A=T[0],E=T[1],M=[u.width.field,u.height.field],O=M[0],z=M[1];if(i)this._pop_glyphs(c,this.model.num_objects),A&&c.get_array(A).push(x),E&&c.get_array(E).push(w),O&&c.get_array(O).push(S),z&&c.get_array(z).push(C),this._pad_empty_columns(c,[A,E,O,z]);else{var P=c.data[A].length-1;A&&(c.data[A][P]=x),E&&(c.data[E][P]=w),O&&(c.data[O][P]=S),z&&(c.data[z][P]=C)}this._emit_cds_changes(c,!0,!1,n)},e.prototype._update_box=function(t,e,i){if(void 0===e&&(e=!1),void 0===i&&(i=!1),null!=this._draw_basepoint){var n=[t.sx,t.sy],r=this.plot_model.frame,o=this.model.dimensions,s=this.model._get_dim_limits(this._draw_basepoint,n,r,o);if(null!=s){var a=s[0],l=s[1];this._set_extent(a,l,e,i)}}},e.prototype._doubletap=function(t){this.model.active&&(null!=this._draw_basepoint?(this._update_box(t,!1,!0),this._draw_basepoint=null):(this._draw_basepoint=[t.sx,t.sy],this._select_event(t,!0,this.model.renderers),this._update_box(t,!0,!1)))},e.prototype._move=function(t){this._update_box(t,!1,!1)},e.prototype._pan_start=function(t){if(t.shiftKey){if(null!=this._draw_basepoint)return;this._draw_basepoint=[t.sx,t.sy],this._update_box(t,!0,!1)}else{if(null!=this._basepoint)return;this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy]}},e.prototype._pan=function(t,e,i){if(void 0===e&&(e=!1),void 0===i&&(i=!1),t.shiftKey){if(null==this._draw_basepoint)return;this._update_box(t,e,i)}else{if(null==this._basepoint)return;this._drag_points(t,this.model.renderers)}},e.prototype._pan_end=function(t){if(this._pan(t,!1,!0),t.shiftKey)this._draw_basepoint=null;else{this._basepoint=null;for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source,!1,!0,!0)}}},e}(s.EditToolView);i.BoxEditToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Edit Tool\",e.icon=\"bk-tool-icon-box-edit\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxEditTool\",this.prototype.default_view=a,this.define({dimensions:[r.Dimensions,\"both\"],num_objects:[r.Int,0]})},t}(s.EditTool);(i.BoxEditTool=l).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(21),l=t(44),s=t(251),a=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._mouse_in_frame=!0,t}return n.__extends(t,e),t.prototype._move_enter=function(t){this._mouse_in_frame=!0},t.prototype._move_exit=function(t){this._mouse_in_frame=!1},t.prototype._map_drag=function(t,e,i){var n=this.plot_model.frame;if(!n.bbox.contains(t,e))return null;var r=n.xscales[i.x_range_name].invert(t),o=n.yscales[i.y_range_name].invert(e);return[r,o]},t.prototype._delete_selected=function(t){var e=t.data_source,i=e.selected.indices;i.sort();for(var n=0,r=e.columns();n<r.length;n++)for(var o=r[n],s=e.get_array(o),a=0;a<i.length;a++){var l=i[a];s.splice(l-a,1)}this._emit_cds_changes(e)},t.prototype._pop_glyphs=function(t,e){var i=t.columns();if(e&&i.length)for(var n=0,r=i;n<r.length;n++){var o=r[n],s=t.get_array(o),a=s.length-e+1;a<1||(l.isArray(s)||(s=Array.from(s),t.data[o]=s),s.splice(0,a))}},t.prototype._emit_cds_changes=function(t,e,i,n){void 0===e&&(e=!0),void 0===i&&(i=!0),void 0===n&&(n=!0),i&&t.selection_manager.clear(),e&&t.change.emit(),n&&(t.data=t.data,t.properties.data.change.emit())},t.prototype._drag_points=function(t,e){if(null!=this._basepoint){for(var i=this._basepoint,n=i[0],r=i[1],o=0,s=e;o<s.length;o++){var a=s[o],l=this._map_drag(n,r,a),h=this._map_drag(t.sx,t.sy,a);if(null!=h&&null!=l){for(var u=h[0],c=h[1],_=l[0],p=l[1],d=[u-_,c-p],f=d[0],v=d[1],m=a.glyph,g=a.data_source,y=[m.x.field,m.y.field],b=y[0],x=y[1],w=0,k=g.selected.indices;w<k.length;w++){var S=k[w];b&&(g.data[b][S]+=f),x&&(g.data[x][S]+=v)}g.change.emit()}}this._basepoint=[t.sx,t.sy]}},t.prototype._pad_empty_columns=function(t,e){for(var i=0,n=t.columns();i<n.length;i++){var r=n[i];o.includes(e,r)||t.get_array(r).push(this.model.empty_value)}},t.prototype._select_event=function(t,e,i){var n=this.plot_model.frame,r=t.sx,o=t.sy;if(!n.bbox.contains(r,o))return[];for(var s={type:\"point\",sx:r,sy:o},a=[],l=0,h=i;l<h.length;l++){var u=h[l],c=u.get_selection_manager(),_=u.data_source,p=[this.plot_view.renderer_views[u.id]],d=c.select(p,s,!0,e);d&&a.push(u),_.properties.selected.change.emit()}return a},t}(s.GestureToolView);i.EditToolView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EditTool\",this.define({custom_icon:[r.String],custom_tooltip:[r.String],empty_value:[r.Any],renderers:[r.Array,[]]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.custom_tooltip||this.tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.custom_icon||this.icon},enumerable:!0,configurable:!0}),t}(s.GestureTool);(i.EditTool=h).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),v=t(44),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._draw=function(t,e,i){if(void 0===i&&(i=!1),this.model.active){var n=this.model.renderers[0],r=this._map_drag(t.sx,t.sy,n);if(null!=r){var o=r[0],s=r[1],a=n.data_source,l=n.glyph,h=[l.xs.field,l.ys.field],u=h[0],c=h[1];if(\"new\"==e)this._pop_glyphs(a,this.model.num_objects),u&&a.get_array(u).push([o]),c&&a.get_array(c).push([s]),this._pad_empty_columns(a,[u,c]);else if(\"add\"==e){if(u){var _=a.data[u].length-1,p=a.get_array(u)[_];v.isArray(p)||(p=Array.from(p),a.data[u][_]=p),p.push(o)}if(c){var d=a.data[c].length-1,f=a.get_array(c)[d];v.isArray(f)||(f=Array.from(f),a.data[c][d]=f),f.push(s)}}this._emit_cds_changes(a,!0,!0,i)}}},e.prototype._pan_start=function(t){this._draw(t,\"new\")},e.prototype._pan=function(t){this._draw(t,\"add\")},e.prototype._pan_end=function(t){this._draw(t,\"add\",!0)},e.prototype._tap=function(t){this._select_event(t,t.shiftKey,this.model.renderers)},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Esc?n.data_source.selection_manager.clear():t.keyCode===r.Keys.Backspace&&this._delete_selected(n)}},e}(s.EditToolView);i.FreehandDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Freehand Draw Tool\",e.icon=\"bk-tool-icon-freehand-draw\",e.event_type=[\"pan\",\"tap\"],e.default_order=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"FreehandDrawTool\",this.prototype.default_view=a,this.define({num_objects:[o.Int,0]})},t}(s.EditTool);(i.FreehandDrawTool=l).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._tap=function(t){var e=t.shiftKey,i=this._select_event(t,e,this.model.renderers);if(!i.length&&this.model.add){var n=this.model.renderers[0],r=this._map_drag(t.sx,t.sy,n);if(null!=r){var o=n.glyph,s=n.data_source,a=[o.x.field,o.y.field],l=a[0],h=a[1],u=r[0],c=r[1];this._pop_glyphs(s,this.model.num_objects),l&&s.get_array(l).push(u),h&&s.get_array(h).push(c),this._pad_empty_columns(s,[l,h]),s.change.emit(),s.data=s.data,s.properties.data.change.emit()}}},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Backspace?this._delete_selected(n):t.keyCode==r.Keys.Esc&&n.data_source.selection_manager.clear()}},e.prototype._pan_start=function(t){this.model.drag&&(this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy])},e.prototype._pan=function(t){this.model.drag&&null!=this._basepoint&&this._drag_points(t,this.model.renderers)},e.prototype._pan_end=function(t){if(this.model.drag){this._pan(t);for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source,!1,!0,!0)}this._basepoint=null}},e}(s.EditToolView);i.PointDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Point Draw Tool\",e.icon=\"bk-tool-icon-point-draw\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=2,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PointDrawTool\",this.prototype.default_view=a,this.define({add:[o.Bool,!0],drag:[o.Bool,!0],num_objects:[o.Int,0]})},t}(s.EditTool);(i.PointDrawTool=l).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),y=t(44),s=t(248),a=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._drawing=!1,t._initialized=!1,t}return n.__extends(t,e),t.prototype._tap=function(t){this._drawing?this._draw(t,\"add\",!0):this._select_event(t,t.shiftKey,this.model.renderers)},t.prototype._draw=function(t,e,i){var n;void 0===i&&(i=!1);var r=this.model.renderers[0],o=this._map_drag(t.sx,t.sy,r);if(this._initialized||this.activate(),null!=o){var s=o[0],a=o[1];n=this._snap_to_vertex(t,s,a),s=n[0],a=n[1];var l=r.data_source,h=r.glyph,u=[h.xs.field,h.ys.field],c=u[0],_=u[1];if(\"new\"==e)this._pop_glyphs(l,this.model.num_objects),c&&l.get_array(c).push([s,s]),_&&l.get_array(_).push([a,a]),this._pad_empty_columns(l,[c,_]);else if(\"edit\"==e){if(c){var p=l.data[c][l.data[c].length-1];p[p.length-1]=s}if(_){var d=l.data[_][l.data[_].length-1];d[d.length-1]=a}}else if(\"add\"==e){if(c){var f=l.data[c].length-1,p=l.get_array(c)[f],v=p[p.length-1];p[p.length-1]=s,y.isArray(p)||(p=Array.from(p),l.data[c][f]=p),p.push(v)}if(_){var m=l.data[_].length-1,d=l.get_array(_)[m],g=d[d.length-1];d[d.length-1]=a,y.isArray(d)||(d=Array.from(d),l.data[_][m]=d),d.push(g)}}this._emit_cds_changes(l,!0,!1,i)}},t.prototype._show_vertices=function(){for(var t=[],e=[],i=0;i<this.model.renderers.length;i++){var n=this.model.renderers[i],r=n.data_source,o=n.glyph,s=[o.xs.field,o.ys.field],a=s[0],l=s[1];if(a)for(var h=0,u=r.get_array(a);h<u.length;h++){var c=u[h];Array.prototype.push.apply(t,c)}if(l)for(var _=0,p=r.get_array(l);_<p.length;_++){var c=p[_];Array.prototype.push.apply(e,c)}this._drawing&&i==this.model.renderers.length-1&&(t.splice(t.length-1,1),e.splice(e.length-1,1))}this._set_vertices(t,e)},t.prototype._doubletap=function(t){this.model.active&&(this._drawing?(this._drawing=!1,this._draw(t,\"edit\",!0)):(this._drawing=!0,this._draw(t,\"new\",!0)))},t.prototype._move=function(t){this._drawing&&this._draw(t,\"edit\")},t.prototype._remove=function(){var t=this.model.renderers[0],e=t.data_source,i=t.glyph,n=[i.xs.field,i.ys.field],r=n[0],o=n[1];if(r){var s=e.data[r].length-1,a=e.get_array(r)[s];a.splice(a.length-1,1)}if(o){var l=e.data[o].length-1,h=e.get_array(o)[l];h.splice(h.length-1,1)}this._emit_cds_changes(e)},t.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Backspace?this._delete_selected(n):t.keyCode==r.Keys.Esc&&(this._drawing&&(this._remove(),this._drawing=!1),n.data_source.selection_manager.clear())}},t.prototype._pan_start=function(t){this.model.drag&&(this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy])},t.prototype._pan=function(t){if(null!=this._basepoint&&this.model.drag){for(var e=this._basepoint,i=e[0],n=e[1],r=0,o=this.model.renderers;r<o.length;r++){var s=o[r],a=this._map_drag(i,n,s),l=this._map_drag(t.sx,t.sy,s);if(null!=l&&null!=a){var h=s.data_source,u=s.glyph,c=[u.xs.field,u.ys.field],_=c[0],p=c[1];if(_||p){for(var d=l[0],f=l[1],v=a[0],m=a[1],g=[d-v,f-m],y=g[0],b=g[1],x=0,w=h.selected.indices;x<w.length;x++){var k=w[x],S=void 0,C=void 0,T=void 0;_&&(C=h.data[_][k]),p?(T=h.data[p][k],S=T.length):S=C.length;for(var A=0;A<S;A++)C&&(C[A]+=y),T&&(T[A]+=b)}h.change.emit()}}}this._basepoint=[t.sx,t.sy]}},t.prototype._pan_end=function(t){if(this.model.drag){this._pan(t);for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source)}this._basepoint=null}},t.prototype.activate=function(){var t=this;if(this.model.vertex_renderer&&this.model.active){if(this._show_vertices(),!this._initialized)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e],r=n.data_source;r.connect(r.properties.data.change,function(){return t._show_vertices()})}this._initialized=!0}},t.prototype.deactivate=function(){this._drawing&&(this._remove(),this._drawing=!1),this.model.vertex_renderer&&this._hide_vertices()},t}(s.PolyToolView);i.PolyDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Polygon Draw Tool\",e.icon=\"bk-tool-icon-poly-draw\",e.event_type=[\"pan\",\"tap\",\"move\"],e.default_order=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolyDrawTool\",this.prototype.default_view=a,this.define({drag:[o.Bool,!0],num_objects:[o.Int,0]})},t}(s.PolyTool);(i.PolyDrawTool=l).initClass()},function(t,e,i){var n=t(391),o=t(5),c=t(44),r=t(248),s=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._drawing=!1,t}return n.__extends(t,e),t.prototype._doubletap=function(t){if(this.model.active){var e=this._map_drag(t.sx,t.sy,this.model.vertex_renderer);if(null!=e){var i=e[0],n=e[1],r=this._select_event(t,!1,[this.model.vertex_renderer]),o=this.model.vertex_renderer.data_source,s=this.model.vertex_renderer.glyph,a=[s.x.field,s.y.field],l=a[0],h=a[1];if(r.length&&null!=this._selected_renderer){var u=o.selected.indices[0];this._drawing?(this._drawing=!1,o.selection_manager.clear()):(o.selected.indices=[u+1],l&&o.get_array(l).splice(u+1,0,i),h&&o.get_array(h).splice(u+1,0,n),this._drawing=!0),o.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}else this._show_vertices(t)}}},t.prototype._show_vertices=function(t){if(this.model.active){var e=this._select_event(t,!1,this.model.renderers);if(!e.length)return this._set_vertices([],[]),this._selected_renderer=null,void(this._drawing=!1);var i,n,r=e[0],o=r.glyph,s=r.data_source,a=s.selected.indices[0],l=[o.xs.field,o.ys.field],h=l[0],u=l[1];h?(i=s.data[h][a],c.isArray(i)||(s.data[h][a]=i=Array.from(i))):i=o.xs.value,u?(n=s.data[u][a],c.isArray(n)||(s.data[u][a]=n=Array.from(n))):n=o.ys.value,this._selected_renderer=r,this._set_vertices(i,n)}},t.prototype._move=function(t){var e;if(this._drawing&&null!=this._selected_renderer){var i=this.model.vertex_renderer,n=i.data_source,r=i.glyph,o=this._map_drag(t.sx,t.sy,i);if(null==o)return;var s=o[0],a=o[1],l=n.selected.indices;e=this._snap_to_vertex(t,s,a),s=e[0],a=e[1],n.selected.indices=l;var h=[r.x.field,r.y.field],u=h[0],c=h[1],_=l[0];u&&(n.data[u][_]=s),c&&(n.data[c][_]=a),n.change.emit(),this._selected_renderer.data_source.change.emit()}},t.prototype._tap=function(t){var e,i=this.model.vertex_renderer,n=this._map_drag(t.sx,t.sy,i);if(null!=n){if(this._drawing&&this._selected_renderer){var r=n[0],o=n[1],s=i.data_source,a=i.glyph,l=[a.x.field,a.y.field],h=l[0],u=l[1],c=s.selected.indices;e=this._snap_to_vertex(t,r,o),r=e[0],o=e[1];var _=c[0];if(s.selected.indices=[_+1],h){var p=s.get_array(h),d=p[_];p[_]=r,p.splice(_+1,0,d)}if(u){var f=s.get_array(u),v=f[_];f[_]=o,f.splice(_+1,0,v)}return s.change.emit(),void this._emit_cds_changes(this._selected_renderer.data_source,!0,!1,!0)}var m=t.shiftKey;this._select_event(t,m,[i]),this._select_event(t,m,this.model.renderers)}},t.prototype._remove_vertex=function(){if(this._drawing&&this._selected_renderer){var t=this.model.vertex_renderer,e=t.data_source,i=t.glyph,n=e.selected.indices[0],r=[i.x.field,i.y.field],o=r[0],s=r[1];o&&e.get_array(o).splice(n,1),s&&e.get_array(s).splice(n,1),e.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}},t.prototype._pan_start=function(t){this._select_event(t,!0,[this.model.vertex_renderer]),this._basepoint=[t.sx,t.sy]},t.prototype._pan=function(t){null!=this._basepoint&&(this._drag_points(t,[this.model.vertex_renderer]),this._selected_renderer&&this._selected_renderer.data_source.change.emit())},t.prototype._pan_end=function(t){null!=this._basepoint&&(this._drag_points(t,[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)},t.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame){var e;e=this._selected_renderer?[this.model.vertex_renderer]:this.model.renderers;for(var i=0,n=e;i<n.length;i++){var r=n[i];t.keyCode===o.Keys.Backspace?(this._delete_selected(r),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source)):t.keyCode==o.Keys.Esc&&(this._drawing?(this._remove_vertex(),this._drawing=!1):this._selected_renderer&&this._hide_vertices(),r.data_source.selection_manager.clear())}}},t.prototype.deactivate=function(){this._selected_renderer&&(this._drawing&&(this._remove_vertex(),this._drawing=!1),this._hide_vertices())},t}(r.PolyToolView);i.PolyEditToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Poly Edit Tool\",e.icon=\"bk-tool-icon-poly-edit\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=4,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolyEditTool\",this.prototype.default_view=s},t}(r.PolyTool);(i.PolyEditTool=a).initClass()},function(t,e,i){var n=t(391),r=t(15),a=t(44),o=t(243),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_vertices=function(t,e){var i=this.model.vertex_renderer.glyph,n=this.model.vertex_renderer.data_source,r=[i.x.field,i.y.field],o=r[0],s=r[1];o&&(a.isArray(t)?n.data[o]=t:i.x={value:t}),s&&(a.isArray(e)?n.data[s]=e:i.y={value:e}),this._emit_cds_changes(n,!0,!0,!1)},e.prototype._hide_vertices=function(){this._set_vertices([],[])},e.prototype._snap_to_vertex=function(t,e,i){if(this.model.vertex_renderer){var n=this._select_event(t,!1,[this.model.vertex_renderer]),r=this.model.vertex_renderer.data_source,o=this.model.vertex_renderer.glyph,s=[o.x.field,o.y.field],a=s[0],l=s[1];if(n.length){var h=r.selected.indices[0];a&&(e=r.data[a][h]),l&&(i=r.data[l][h]),r.selection_manager.clear()}}return[e,i]},e}(o.EditToolView);i.PolyToolView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PolyTool\",this.prototype.default_view=s,this.define({vertex_renderer:[r.Instance]})},t}(o.EditTool);(i.PolyTool=l).initClass()},function(t,e,i){var v=t(391),n=t(256),r=t(64),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return v.__extends(e,t),e.prototype._compute_limits=function(t){var e=this.plot_model.frame,i=this.model.dimensions,n=this._base_point;if(\"center\"==this.model.origin){var r=n[0],o=n[1],s=t[0],a=t[1];n=[r-(s-r),o-(a-o)]}return this.model._get_dim_limits(n,t,e,i)},e.prototype._pan_start=function(t){var e=t.sx,i=t.sy;this._base_point=[e,i]},e.prototype._pan=function(t){var e=t.sx,i=t.sy,n=[e,i],r=this._compute_limits(n),o=r[0],s=r[1];if(this.model.overlay.update({left:o[0],right:o[1],top:s[0],bottom:s[1]}),this.model.select_every_mousemove){var a=t.shiftKey;this._do_select(o,s,!1,a)}},e.prototype._pan_end=function(t){var e=t.sx,i=t.sy,n=[e,i],r=this._compute_limits(n),o=r[0],s=r[1],a=t.shiftKey;this._do_select(o,s,!0,a),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null,this.plot_view.push_state(\"box_select\",{selection:this.plot_view.get_selection()})},e.prototype._do_select=function(t,e,i,n){var r=t[0],o=t[1],s=e[0],a=e[1];void 0===n&&(n=!1);var l={type:\"rect\",sx0:r,sx1:o,sy0:s,sy1:a};this._select(l,i,n)},e.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=t.sx0,s=t.sx1,a=t.sy0,l=t.sy1,h=n.r_invert(o,s),u=h[0],c=h[1],_=r.r_invert(a,l),p=_[0],d=_[1],f=v.__assign({x0:u,y0:p,x1:c,y1:d},t);this.model.callback.execute(this.model,{geometry:f})},e}(n.SelectToolView);i.BoxSelectToolView=s;var a=function(){return new r.BoxAnnotation({level:\"overlay\",render_mode:\"css\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Select\",e.icon=\"bk-tool-icon-box-select\",e.event_type=\"pan\",e.default_order=30,e}return v.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxSelectTool\",this.prototype.default_view=s,this.define({dimensions:[o.Dimensions,\"both\"],select_every_mousemove:[o.Bool,!1],callback:[o.Instance],overlay:[o.Instance,a],origin:[o.String,\"corner\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(n.SelectTool);(i.BoxSelectTool=l).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(64),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._match_aspect=function(t,e,i){var n,r,o,s,a=i.bbox.aspect,l=i.bbox.h_range.end,h=i.bbox.h_range.start,u=i.bbox.v_range.end,c=i.bbox.v_range.start,_=Math.abs(t[0]-e[0]),p=Math.abs(t[1]-e[1]),d=0==p?0:_/p,f=(a<=d?[1,d/a]:[a/d,1])[0];return t[0]<=e[0]?(n=t[0],r=t[0]+_*f,l<r&&(r=l)):(r=t[0],(n=t[0]-_*f)<h&&(n=h)),_=Math.abs(r-n),t[1]<=e[1]?(s=t[1],o=t[1]+_/a,u<o&&(o=u)):(o=t[1],(s=t[1]-_/a)<c&&(s=c)),p=Math.abs(o-s),t[0]<=e[0]?r=t[0]+a*p:n=t[0]-a*p,[[n,r],[s,o]]},e.prototype._compute_limits=function(t){var e,i,n,r,o=this.plot_model.frame,s=this.model.dimensions,a=this._base_point;if(\"center\"==this.model.origin){var l=a[0],h=a[1],u=t[0],c=t[1];a=[l-(u-l),h-(c-h)]}return this.model.match_aspect&&\"both\"==s?(e=this._match_aspect(a,t,o),n=e[0],r=e[1]):(i=this.model._get_dim_limits(a,t,o,s),n=i[0],r=i[1]),[n,r]},e.prototype._pan_start=function(t){this._base_point=[t.sx,t.sy]},e.prototype._pan=function(t){var e=[t.sx,t.sy],i=this._compute_limits(e),n=i[0],r=i[1];this.model.overlay.update({left:n[0],right:n[1],top:r[0],bottom:r[1]})},e.prototype._pan_end=function(t){var e=[t.sx,t.sy],i=this._compute_limits(e),n=i[0],r=i[1];this._update(n,r),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null},e.prototype._update=function(t,e){var i=t[0],n=t[1],r=e[0],o=e[1];if(!(Math.abs(n-i)<=5||Math.abs(o-r)<=5)){var s=this.plot_model.frame,a=s.xscales,l=s.yscales,h={};for(var u in a){var c=a[u],_=c.r_invert(i,n),p=_[0],d=_[1];h[u]={start:p,end:d}}var f={};for(var v in l){var c=l[v],m=c.r_invert(r,o),p=m[0],d=m[1];f[v]={start:p,end:d}}var g={xrs:h,yrs:f};this.plot_view.push_state(\"box_zoom\",{range:g}),this.plot_view.update_range(g)}},e}(r.GestureToolView);i.BoxZoomToolView=a;var l=function(){return new o.BoxAnnotation({level:\"overlay\",render_mode:\"css\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Zoom\",e.icon=\"bk-tool-icon-box-zoom\",e.event_type=\"pan\",e.default_order=20,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxZoomTool\",this.prototype.default_view=a,this.define({dimensions:[s.Dimensions,\"both\"],overlay:[s.Instance,l],match_aspect:[s.Bool,!1],origin:[s.String,\"corner\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.BoxZoomTool=h).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(265),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.ButtonToolView);i.GestureToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.button_view=o.OnOffButtonView,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"GestureTool\"},t}(r.ButtonTool);(i.GestureTool=a).initClass()},function(t,e,i){var l=t(391),n=t(256),r=t(71),o=t(5),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return l.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.data=null},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){return t._active_change()})},t.prototype._active_change=function(){this.model.active||this._clear_overlay()},t.prototype._keyup=function(t){t.keyCode==o.Keys.Enter&&this._clear_overlay()},t.prototype._pan_start=function(t){var e=t.sx,i=t.sy;this.data={sx:[e],sy:[i]}},t.prototype._pan=function(t){var e=t.sx,i=t.sy,n=this.plot_model.frame.bbox.clip(e,i),r=n[0],o=n[1];this.data.sx.push(r),this.data.sy.push(o);var s=this.model.overlay;if(s.update({xs:this.data.sx,ys:this.data.sy}),this.model.select_every_mousemove){var a=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!1,a)}},t.prototype._pan_end=function(t){this._clear_overlay();var e=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!0,e),this.plot_view.push_state(\"lasso_select\",{selection:this.plot_view.get_selection()})},t.prototype._clear_overlay=function(){this.model.overlay.update({xs:[],ys:[]})},t.prototype._do_select=function(t,e,i,n){var r={type:\"poly\",sx:t,sy:e};this._select(r,i,n)},t.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=n.v_invert(t.sx),s=r.v_invert(t.sy),a=l.__assign({x:o,y:s},t);this.model.callback.execute(this.model,{geometry:a})},t}(n.SelectToolView);i.LassoSelectToolView=a;var h=function(){return new r.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},u=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Lasso Select\",e.icon=\"bk-tool-icon-lasso-select\",e.event_type=\"pan\",e.default_order=12,e}return l.__extends(t,i),t.initClass=function(){this.prototype.type=\"LassoSelectTool\",this.prototype.default_view=a,this.define({select_every_mousemove:[s.Bool,!0],callback:[s.Instance],overlay:[s.Instance,h]})},t}(n.SelectTool);(i.LassoSelectTool=u).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._pan_start=function(t){this.last_dx=0,this.last_dy=0;var e=t.sx,i=t.sy,n=this.plot_model.frame.bbox;if(!n.contains(e,i)){var r=n.h_range,o=n.v_range;(e<r.start||e>r.end)&&(this.v_axis_only=!0),(i<o.start||i>o.end)&&(this.h_axis_only=!0)}null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e.prototype._pan=function(t){this._update(t.deltaX,t.deltaY),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e.prototype._pan_end=function(t){this.h_axis_only=!1,this.v_axis_only=!1,null!=this.pan_info&&this.plot_view.push_state(\"pan\",{range:this.pan_info})},e.prototype._update=function(t,e){var i,n,r,o,s,a,l=this.plot_model.frame,h=t-this.last_dx,u=e-this.last_dy,c=l.bbox.h_range,_=c.start-h,p=c.end-h,d=l.bbox.v_range,f=d.start-u,v=d.end-u,m=this.model.dimensions;\"width\"!=m&&\"both\"!=m||this.v_axis_only?(i=c.start,n=c.end,r=0):(i=_,n=p,r=-h),\"height\"!=m&&\"both\"!=m||this.h_axis_only?(o=d.start,s=d.end,a=0):(o=f,s=v,a=-u),this.last_dx=t,this.last_dy=e;var g=l.xscales,y=l.yscales,b={};for(var x in g){var w=g[x],k=w.r_invert(i,n),S=k[0],C=k[1];b[x]={start:S,end:C}}var T={};for(var A in y){var w=y[A],E=w.r_invert(o,s),S=E[0],C=E[1];T[A]={start:S,end:C}}this.pan_info={xrs:b,yrs:T,sdx:r,sdy:a},this.plot_view.update_range(this.pan_info,!0)},e}(r.GestureToolView);i.PanToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Pan\",e.event_type=\"pan\",e.default_order=10,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PanTool\",this.prototype.default_view=s,this.define({dimensions:[o.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(\"Pan\",this.dimensions)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"icon\",{get:function(){switch(this.dimensions){case\"both\":return\"bk-tool-icon-pan\";case\"width\":return\"bk-tool-icon-xpan\";case\"height\":return\"bk-tool-icon-ypan\"}},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.PanTool=a).initClass()},function(t,e,i){var l=t(391),n=t(256),r=t(71),o=t(5),s=t(15),a=t(21),h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return l.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.data={sx:[],sy:[]}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){return t._active_change()})},t.prototype._active_change=function(){this.model.active||this._clear_data()},t.prototype._keyup=function(t){t.keyCode==o.Keys.Enter&&this._clear_data()},t.prototype._doubletap=function(t){var e=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!0,e),this.plot_view.push_state(\"poly_select\",{selection:this.plot_view.get_selection()}),this._clear_data()},t.prototype._clear_data=function(){this.data={sx:[],sy:[]},this.model.overlay.update({xs:[],ys:[]})},t.prototype._tap=function(t){var e=t.sx,i=t.sy,n=this.plot_model.frame;n.bbox.contains(e,i)&&(this.data.sx.push(e),this.data.sy.push(i),this.model.overlay.update({xs:a.copy(this.data.sx),ys:a.copy(this.data.sy)}))},t.prototype._do_select=function(t,e,i,n){var r={type:\"poly\",sx:t,sy:e};this._select(r,i,n)},t.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=n.v_invert(t.sx),s=r.v_invert(t.sy),a=l.__assign({x:o,y:s},t);this.model.callback.execute(this.model,{geometry:a})},t}(n.SelectToolView);i.PolySelectToolView=h;var u=function(){return new r.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},c=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Poly Select\",e.icon=\"bk-tool-icon-polygon-select\",e.event_type=\"tap\",e.default_order=11,e}return l.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolySelectTool\",this.prototype.default_view=h,this.define({callback:[s.Instance],overlay:[s.Instance,u]})},t}(n.SelectTool);(i.PolySelectTool=c).initClass()},function(t,e,i){var n=t(391),_=t(64),r=t(14),o=t(15),s=t(251);function p(t,e,i,n){if(null==e)return!1;var r=i.compute(e);return Math.abs(t-r)<n}function d(t,e,i,n,r){var o=!0;if(null!=r.left&&null!=r.right){var s=i.invert(t);(s<r.left||s>r.right)&&(o=!1)}if(null!=r.bottom&&null!=r.top){var a=n.invert(e);(a<r.bottom||a>r.top)&&(o=!1)}return o}function l(t,e,i,n){var r=e.compute(t),o=e.invert(r+i);return o>=n.start&&o<=n.end?o:t}function h(t,e,i,n){var r=e.r_compute(t.start,t.end),o=r[0],s=r[1],a=e.r_invert(o+i,s+i),l=a[0],h=a[1];l>=n.start&&l<=n.end&&h>=n.start&&h<=n.end&&(t.start=l,t.end=h)}i.is_near=p,i.is_inside=d,i.compute_value=l,i.update_range=h;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.side=0,this.model.update_overlay_from_ranges()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),null!=this.model.x_range&&this.connect(this.model.x_range.change,function(){return t.model.update_overlay_from_ranges()}),null!=this.model.y_range&&this.connect(this.model.y_range.change,function(){return t.model.update_overlay_from_ranges()})},t.prototype._pan_start=function(t){this.last_dx=0,this.last_dy=0;var e=this.model.x_range,i=this.model.y_range,n=this.plot_model.frame,r=n.xscales.default,o=n.yscales.default,s=this.model.overlay,a=s.left,l=s.right,h=s.top,u=s.bottom,c=this.model.overlay.properties.line_width.value()+_.EDGE_TOLERANCE;null!=e&&this.model.x_interaction&&(p(t.sx,a,r,c)?this.side=1:p(t.sx,l,r,c)?this.side=2:d(t.sx,t.sy,r,o,s)&&(this.side=3)),null!=i&&this.model.y_interaction&&(0==this.side&&p(t.sy,u,o,c)&&(this.side=4),0==this.side&&p(t.sy,h,o,c)?this.side=5:d(t.sx,t.sy,r,o,this.model.overlay)&&(3==this.side?this.side=7:this.side=6))},t.prototype._pan=function(t){var e=this.plot_model.frame,i=t.deltaX-this.last_dx,n=t.deltaY-this.last_dy,r=this.model.x_range,o=this.model.y_range,s=e.xscales.default,a=e.yscales.default;null!=r&&(3==this.side||7==this.side?h(r,s,i,e.x_range):1==this.side?r.start=l(r.start,s,i,e.x_range):2==this.side&&(r.end=l(r.end,s,i,e.x_range))),null!=o&&(6==this.side||7==this.side?h(o,a,n,e.y_range):4==this.side?o.start=l(o.start,a,n,e.y_range):5==this.side&&(o.end=l(o.end,a,n,e.y_range))),this.last_dx=t.deltaX,this.last_dy=t.deltaY},t.prototype._pan_end=function(t){this.side=0},t}(s.GestureToolView);i.RangeToolView=a;var u=function(){return new _.BoxAnnotation({level:\"overlay\",render_mode:\"css\",fill_color:\"lightgrey\",fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:.5},line_dash:[2,2]})},c=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Range Tool\",e.icon=\"bk-tool-icon-range\",e.event_type=\"pan\",e.default_order=1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"RangeTool\",this.prototype.default_view=a,this.define({x_range:[o.Instance,null],x_interaction:[o.Bool,!0],y_range:[o.Instance,null],y_interaction:[o.Bool,!0],overlay:[o.Instance,u]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),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},t.prototype.update_overlay_from_ranges=function(){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)},t}(s.GestureTool);(i.RangeTool=c).initClass()},function(t,e,i){var y=t(391),n=t(251),o=t(186),r=t(271),s=t(15),a=t(5),b=t(3),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return y.__extends(e,t),Object.defineProperty(e.prototype,\"computed_renderers\",{get:function(){var t=this.model.renderers,e=this.plot_model.plot.renderers,i=this.model.names;return r.compute_renderers(t,e,i)},enumerable:!0,configurable:!0}),e.prototype._computed_renderers_by_data_source=function(){for(var t={},e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=void 0;(r=n instanceof o.GraphRenderer?n.node_renderer.data_source.id:n.data_source.id)in t||(t[r]=[]),t[r].push(n)}return t},e.prototype._keyup=function(t){if(t.keyCode==a.Keys.Esc){for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=n.data_source,o=r.selection_manager;o.clear()}this.plot_view.request_render()}},e.prototype._select=function(t,e,i){var n=this._computed_renderers_by_data_source();for(var r in n){for(var o=n[r],s=o[0].get_selection_manager(),a=[],l=0,h=o;l<h.length;l++){var u=h[l];u.id in this.plot_view.renderer_views&&a.push(this.plot_view.renderer_views[u.id])}s.select(a,t,e,i)}null!=this.model.callback&&this._emit_callback(t),this._emit_selection_event(t,e)},e.prototype._emit_selection_event=function(t,e){void 0===e&&(e=!0);var i,n=this.plot_model.frame.xscales.default,r=this.plot_model.frame.yscales.default;switch(t.type){case\"point\":var o=t.sx,s=t.sy,a=n.invert(o),l=r.invert(s);i=y.__assign({},t,{x:a,y:l});break;case\"rect\":var h=t.sx0,u=t.sx1,c=t.sy0,_=t.sy1,p=n.r_invert(h,u),d=p[0],f=p[1],v=r.r_invert(c,_),m=v[0],g=v[1];i=y.__assign({},t,{x0:d,y0:m,x1:f,y1:g});break;case\"poly\":var o=t.sx,s=t.sy,a=n.v_invert(o),l=r.v_invert(s);i=y.__assign({},t,{x:a,y:l});break;default:throw new Error(\"Unrecognized selection geometry type: '\"+t.type+\"'\")}this.plot_model.plot.trigger_event(new b.SelectionGeometry({geometry:i,final:e}))},e}(n.GestureToolView);i.SelectToolView=l;var h=function(e){function t(t){return e.call(this,t)||this}return y.__extends(t,e),t.initClass=function(){this.prototype.type=\"SelectTool\",this.define({renderers:[s.Any,\"auto\"],names:[s.Array,[]]})},t}(n.GestureTool);(i.SelectTool=h).initClass()},function(t,e,i){var x=t(391),n=t(256),r=t(15),w=t(44),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return x.__extends(e,t),e.prototype._tap=function(t){var e=t.sx,i=t.sy,n={type:\"point\",sx:e,sy:i},r=t.shiftKey;this._select(n,!0,r)},e.prototype._select=function(t,e,i){var n=this,r=this.model.callback;if(\"select\"==this.model.behavior){var o=this._computed_renderers_by_data_source();for(var s in o){var a=o[s],l=a[0].get_selection_manager(),h=a.map(function(t){return n.plot_view.renderer_views[t.id]}),u=l.select(h,t,e,i);if(u&&null!=r){var c=this.plot_model.frame,_=c.xscales[a[0].x_range_name],p=c.yscales[a[0].y_range_name],d=_.invert(t.sx),f=p.invert(t.sy),v=x.__assign({},t,{x:d,y:f}),m={geometries:v,source:l.source};w.isFunction(r)?r(this,m):r.execute(this,m)}}this._emit_selection_event(t),this.plot_view.push_state(\"tap\",{selection:this.plot_view.get_selection()})}else for(var g=0,y=this.computed_renderers;g<y.length;g++){var b=y[g],l=b.get_selection_manager(),u=l.inspect(this.plot_view.renderer_views[b.id],t);if(u&&null!=r){var c=this.plot_model.frame,_=c.xscales[b.x_range_name],p=c.yscales[b.y_range_name],d=_.invert(t.sx),f=p.invert(t.sy),v=x.__assign({},t,{x:d,y:f}),m={geometries:v,source:l.source};w.isFunction(r)?r(this,m):r.execute(this,m)}}},e}(n.SelectToolView);i.TapToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Tap\",e.icon=\"bk-tool-icon-tap-select\",e.event_type=\"tap\",e.default_order=10,e}return x.__extends(t,i),t.initClass=function(){this.prototype.type=\"TapTool\",this.prototype.default_view=o,this.define({behavior:[r.String,\"select\"],callback:[r.Any]})},t}(n.SelectTool);(i.TapTool=s).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._scroll=function(t){var e=this.model.speed*t.delta;.9<e?e=.9:e<-.9&&(e=-.9),this._update_ranges(e)},e.prototype._update_ranges=function(t){var e,i,n,r,o=this.plot_model.frame,s=o.bbox.h_range,a=o.bbox.v_range,l=[s.start,s.end],h=l[0],u=l[1],c=[a.start,a.end],_=c[0],p=c[1];switch(this.model.dimension){case\"height\":var d=Math.abs(p-_);e=h,i=u,n=_-d*t,r=p-d*t;break;case\"width\":var f=Math.abs(u-h);e=h-f*t,i=u-f*t,n=_,r=p;break;default:throw new Error(\"this shouldn't have happened\")}var v=o.xscales,m=o.yscales,g={};for(var y in v){var b=v[y],x=b.r_invert(e,i),w=x[0],k=x[1];g[y]={start:w,end:k}}var S={};for(var C in m){var b=m[C],T=b.r_invert(n,r),w=T[0],k=T[1];S[C]={start:w,end:k}}var A={xrs:g,yrs:S,factor:t};this.plot_view.push_state(\"wheel_pan\",{range:A}),this.plot_view.update_range(A,!1,!0),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.GestureToolView);i.WheelPanToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Wheel Pan\",e.icon=\"bk-tool-icon-wheel-pan\",e.event_type=\"scroll\",e.default_order=12,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"WheelPanTool\",this.prototype.default_view=s,this.define({dimension:[o.Dimension,\"width\"]}),this.internal({speed:[o.Number,.001]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimension)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.WheelPanTool=a).initClass()},function(t,e,i){var n=t(391),r=t(251),c=t(46),o=t(15),s=t(20),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._pinch=function(t){var e,i=t.sx,n=t.sy,r=t.scale;e=1<=r?20*(r-1):-20/r,this._scroll({type:\"mousewheel\",sx:i,sy:n,delta:e})},e.prototype._scroll=function(t){var e=this.plot_model.frame,i=e.bbox.h_range,n=e.bbox.v_range,r=t.sx,o=t.sy,s=this.model.dimensions,a=(\"width\"==s||\"both\"==s)&&i.start<r&&r<i.end,l=(\"height\"==s||\"both\"==s)&&n.start<o&&o<n.end;if(a&&l||this.model.zoom_on_axis){var h=this.model.speed*t.delta,u=c.scale_range(e,h,a,l,{x:r,y:o});this.plot_view.push_state(\"wheel_zoom\",{range:u}),this.plot_view.update_range(u,!1,!0,this.model.maintain_focus),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)}},e}(r.GestureToolView);i.WheelZoomToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Wheel Zoom\",e.icon=\"bk-tool-icon-wheel-zoom\",e.event_type=s.is_mobile?\"pinch\":\"scroll\",e.default_order=10,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"WheelZoomTool\",this.prototype.default_view=a,this.define({dimensions:[o.Dimensions,\"both\"],maintain_focus:[o.Boolean,!0],zoom_on_axis:[o.Boolean,!0],speed:[o.Number,1/600]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.WheelZoomTool=l).initClass()},function(t,e,i){var n=t(232);i.ActionTool=n.ActionTool;var r=t(233);i.CustomAction=r.CustomAction;var o=t(234);i.HelpTool=o.HelpTool;var s=t(235);i.RedoTool=s.RedoTool;var a=t(236);i.ResetTool=a.ResetTool;var l=t(237);i.SaveTool=l.SaveTool;var h=t(238);i.UndoTool=h.UndoTool;var u=t(239);i.ZoomInTool=u.ZoomInTool;var c=t(240);i.ZoomOutTool=c.ZoomOutTool;var _=t(241);i.ButtonTool=_.ButtonTool;var p=t(243);i.EditTool=p.EditTool;var d=t(242);i.BoxEditTool=d.BoxEditTool;var f=t(244);i.FreehandDrawTool=f.FreehandDrawTool;var v=t(245);i.PointDrawTool=v.PointDrawTool;var m=t(246);i.PolyDrawTool=m.PolyDrawTool;var g=t(248);i.PolyTool=g.PolyTool;var y=t(247);i.PolyEditTool=y.PolyEditTool;var b=t(249);i.BoxSelectTool=b.BoxSelectTool;var x=t(250);i.BoxZoomTool=x.BoxZoomTool;var w=t(251);i.GestureTool=w.GestureTool;var k=t(252);i.LassoSelectTool=k.LassoSelectTool;var S=t(253);i.PanTool=S.PanTool;var C=t(254);i.PolySelectTool=C.PolySelectTool;var T=t(255);i.RangeTool=T.RangeTool;var A=t(256);i.SelectTool=A.SelectTool;var E=t(257);i.TapTool=E.TapTool;var M=t(258);i.WheelPanTool=M.WheelPanTool;var O=t(259);i.WheelZoomTool=O.WheelZoomTool;var z=t(261);i.CrosshairTool=z.CrosshairTool;var P=t(262);i.CustomJSHover=P.CustomJSHover;var j=t(263);i.HoverTool=j.HoverTool;var N=t(264);i.InspectTool=N.InspectTool;var F=t(266);i.Tool=F.Tool;var D=t(267);i.ToolProxy=D.ToolProxy;var I=t(268);i.Toolbar=I.Toolbar;var R=t(269);i.ToolbarBase=R.ToolbarBase;var B=t(270);i.ProxyToolbar=B.ProxyToolbar;var L=t(270);i.ToolbarBox=L.ToolbarBox},function(t,e,i){var n=t(391),r=t(264),o=t(73),s=t(15),a=t(32),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._move=function(t){if(this.model.active){var e=t.sx,i=t.sy;this.plot_model.frame.bbox.contains(e,i)?this._update_spans(e,i):this._update_spans(null,null)}},e.prototype._move_exit=function(t){this._update_spans(null,null)},e.prototype._update_spans=function(t,e){var i=this.model.dimensions;\"width\"!=i&&\"both\"!=i||(this.model.spans.width.computed_location=e),\"height\"!=i&&\"both\"!=i||(this.model.spans.height.computed_location=t)},e}(r.InspectToolView);i.CrosshairToolView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Crosshair\",e.icon=\"bk-tool-icon-crosshair\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"CrosshairTool\",this.prototype.default_view=l,this.define({dimensions:[s.Dimensions,\"both\"],line_color:[s.Color,\"black\"],line_width:[s.Number,1],line_alpha:[s.Number,1]}),this.internal({location_units:[s.SpatialUnits,\"screen\"],render_mode:[s.RenderMode,\"css\"],spans:[s.Any]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(\"Crosshair\",this.dimensions)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"synthetic_renderers\",{get:function(){return a.values(this.spans)},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){i.prototype.initialize.call(this),this.spans={width:new o.Span({for_hover:!0,dimension:\"width\",render_mode:this.render_mode,location_units:this.location_units,line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha}),height:new o.Span({for_hover:!0,dimension:\"height\",render_mode:this.render_mode,location_units:this.location_units,line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha})}},t}(r.InspectTool);(i.CrosshairTool=h).initClass()},function(r,t,o){var i=r(391),e=r(59),n=r(15),s=r(32),a=r(38),l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSHover\",this.define({args:[n.Any,{}],code:[n.String,\"\"]})},Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_code=function(t,e,i,n){return new(Function.bind.apply(Function,[void 0].concat(s.keys(this.args),[t,e,i,\"require\",\"exports\",a.use_strict(n)])))},t.prototype.format=function(t,e,i){var n=this._make_code(\"value\",\"format\",\"special_vars\",this.code);return n.apply(void 0,this.values.concat([t,e,i,r,o]))},t}(e.Model);(o.CustomJSHover=l).initClass()},function(t,e,i){var f=t(391),n=t(264),s=t(77),Z=t(185),tt=t(186),o=t(271),c=t(9),k=t(40),S=t(5),r=t(15),C=t(27),et=t(32),T=t(44),a=t(4);function it(t,e,i,n,r,o){var s,a,l={x:r[t],y:o[t]},h={x:r[t+1],y:o[t+1]};if(\"span\"==e.type)\"h\"==e.direction?(s=Math.abs(l.x-i),a=Math.abs(h.x-i)):(s=Math.abs(l.y-n),a=Math.abs(h.y-n));else{var u={x:i,y:n};s=c.dist_2_pts(l,u),a=c.dist_2_pts(h,u)}return s<a?[[l.x,l.y],t]:[[h.x,h.y],t+1]}function nt(t,e,i){return[[t[i],e[i]],i]}i._nearest_line_hit=it,i._line_hit=nt;var l=function(r){function t(){return null!==r&&r.apply(this,arguments)||this}return f.__extends(t,r),t.prototype.initialize=function(t){r.prototype.initialize.call(this,t),this.ttviews={}},t.prototype.remove=function(){a.remove_views(this.ttviews),r.prototype.remove.call(this)},t.prototype.connect_signals=function(){var t=this;r.prototype.connect_signals.call(this);for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e];n instanceof Z.GlyphRenderer?this.connect(n.data_source.inspect,this._update):(this.connect(n.node_renderer.data_source.inspect,this._update),this.connect(n.edge_renderer.data_source.inspect,this._update))}this.connect(this.model.properties.renderers.change,function(){return t._computed_renderers=t._ttmodels=null}),this.connect(this.model.properties.names.change,function(){return t._computed_renderers=t._ttmodels=null}),this.connect(this.model.properties.tooltips.change,function(){return t._ttmodels=null})},t.prototype._compute_ttmodels=function(){var t={},e=this.model.tooltips;if(null!=e)for(var i=0,n=this.computed_renderers;i<n.length;i++){var r=n[i];if(r instanceof Z.GlyphRenderer){var o=new s.Tooltip({custom:T.isString(e)||T.isFunction(e),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t[r.id]=o}else{var o=new s.Tooltip({custom:T.isString(e)||T.isFunction(e),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t[r.node_renderer.id]=o,t[r.edge_renderer.id]=o}}return a.build_views(this.ttviews,et.values(t),{parent:this,plot_view:this.plot_view}),t},Object.defineProperty(t.prototype,\"computed_renderers\",{get:function(){if(null==this._computed_renderers){var t=this.model.renderers,e=this.plot_model.plot.renderers,i=this.model.names;this._computed_renderers=o.compute_renderers(t,e,i)}return this._computed_renderers},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"ttmodels\",{get:function(){return null==this._ttmodels&&(this._ttmodels=this._compute_ttmodels()),this._ttmodels},enumerable:!0,configurable:!0}),t.prototype._clear=function(){for(var t in this._inspect(1/0,1/0),this.ttmodels){var e=this.ttmodels[t];e.clear()}},t.prototype._move=function(t){if(this.model.active){var e=t.sx,i=t.sy;this.plot_model.frame.bbox.contains(e,i)?this._inspect(e,i):this._clear()}},t.prototype._move_exit=function(){this._clear()},t.prototype._inspect=function(t,e){var i;if(\"mouse\"==this.model.mode)i={type:\"point\",sx:t,sy:e};else{var n=\"vline\"==this.model.mode?\"h\":\"v\";i={type:\"span\",direction:n,sx:t,sy:e}}for(var r=0,o=this.computed_renderers;r<o.length;r++){var s=o[r],a=s.get_selection_manager();a.inspect(this.plot_view.renderer_views[s.id],i)}null!=this.model.callback&&this._emit_callback(i)},t.prototype._update=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d,f,v,m=t[0],g=t[1].geometry;if(this.model.active&&(m instanceof Z.GlyphRendererView||m instanceof tt.GraphRendererView)){var y=m.model,b=this.ttmodels[y.id];if(null!=b){b.clear();var x=y.get_selection_manager(),w=x.inspectors[y.id];if(y instanceof Z.GlyphRenderer&&(w=y.view.convert_selection_to_subset(w)),!w.is_empty()){for(var k=x.source,S=this.plot_model.frame,C=g.sx,T=g.sy,A=S.xscales[y.x_range_name],E=S.yscales[y.y_range_name],M=A.invert(C),O=E.invert(T),z=m.glyph,P=0,j=w.line_indices;P<j.length;P++){var N=j[P],F=z._x[N+1],D=z._y[N+1],I=N,R=void 0,B=void 0;switch(this.model.line_policy){case\"interp\":e=z.get_interpolation_hit(N,g),F=e[0],D=e[1],R=A.compute(F),B=E.compute(D);break;case\"prev\":i=nt(z.sx,z.sy,N),n=i[0],R=n[0],B=n[1],I=i[1];break;case\"next\":r=nt(z.sx,z.sy,N+1),o=r[0],R=o[0],B=o[1],I=r[1];break;case\"nearest\":s=it(N,g,C,T,z.sx,z.sy),a=s[0],R=a[0],B=a[1],I=s[1],F=z._x[I],D=z._y[I];break;default:R=(l=[C,T])[0],B=l[1]}var L={index:I,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,rx:R,ry:B,indices:w.line_indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,I,L))}for(var V=0,G=w.image_indices;V<G.length;V++){var U=G[V],L={index:U.index,x:M,y:O,sx:C,sy:T},q=this._render_tooltips(k,U,L);b.add(C,T,q)}for(var Y=0,X=w.indices;Y<X.length;Y++){var N=X[Y];if(et.isEmpty(w.multiline_indices)){var F=null!=z._x?z._x[N]:void 0,D=null!=z._y?z._y[N]:void 0,R=void 0,B=void 0;if(\"snap_to_data\"==this.model.point_policy){var H=z.get_anchor_point(this.model.anchor,N,[C,T]);null==H&&(H=z.get_anchor_point(\"center\",N,[C,T])),R=H.x,B=H.y}else R=(v=[C,T])[0],B=v[1];var W=void 0,L={index:W=y instanceof Z.GlyphRenderer?y.view.convert_indices_from_subset([N])[0]:N,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,indices:w.indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,W,L))}else for(var J=0,Q=w.multiline_indices[N.toString()];J<Q.length;J++){var $=Q[J],F=z._xs[N][$],D=z._ys[N][$],K=$,R=void 0,B=void 0;switch(this.model.line_policy){case\"interp\":h=z.get_interpolation_hit(N,$,g),F=h[0],D=h[1],R=A.compute(F),B=E.compute(D);break;case\"prev\":u=nt(z.sxs[N],z.sys[N],$),c=u[0],R=c[0],B=c[1],K=u[1];break;case\"next\":_=nt(z.sxs[N],z.sys[N],$+1),p=_[0],R=p[0],B=p[1],K=_[1];break;case\"nearest\":d=it($,g,C,T,z.sxs[N],z.sys[N]),f=d[0],R=f[0],B=f[1],K=d[1],F=z._xs[N][K],D=z._ys[N][K];break;default:throw new Error(\"should't have happened\")}var W=void 0,L={index:W=y instanceof Z.GlyphRenderer?y.view.convert_indices_from_subset([N])[0]:N,segment_index:K,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,indices:w.multiline_indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,W,L))}}}}}},t.prototype._emit_callback=function(t){for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=n.data_source.inspected,o=this.plot_model.frame,s=o.xscales[n.x_range_name],a=o.yscales[n.y_range_name],l=s.invert(t.sx),h=a.invert(t.sy),u=f.__assign({x:l,y:h},t),c=this.model.callback,_=[c,{index:r,geometry:u,renderer:n}],p=_[0],d=_[1];T.isFunction(c)?c(p,d):c.execute(p,d)}},t.prototype._render_tooltips=function(t,e,i){var n=this.model.tooltips;if(T.isString(n)){var r=S.div();return r.innerHTML=k.replace_placeholders(n,t,e,this.model.formatters,i),r}if(T.isFunction(n))return n(t,i);for(var o=S.div({style:{display:\"table\",borderSpacing:\"2px\"}}),s=0,a=n;s<a.length;s++){var l=a[s],h=l[0],u=l[1],c=S.div({style:{display:\"table-row\"}});o.appendChild(c);var _=void 0;if(_=S.div({style:{display:\"table-cell\"},class:\"bk-tooltip-row-label\"},0!=h.length?h+\": \":\"\"),c.appendChild(_),_=S.div({style:{display:\"table-cell\"},class:\"bk-tooltip-row-value\"}),c.appendChild(_),0<=u.indexOf(\"$color\")){var p=u.match(/\\$color(\\[.*\\])?:(\\w*)/),d=p[1],f=void 0===d?\"\":d,v=p[2],m=t.get_column(v);if(null==m){var g=S.span({},v+\" unknown\");_.appendChild(g);continue}var y=0<=f.indexOf(\"hex\"),b=0<=f.indexOf(\"swatch\"),x=T.isNumber(e)?m[e]:null;if(null==x){var w=S.span({},\"(null)\");_.appendChild(w);continue}y&&(x=C.color2hex(x));var r=S.span({},x);_.appendChild(r),b&&(r=S.span({class:\"bk-tooltip-color-block\",style:{backgroundColor:x}},\" \"),_.appendChild(r))}else{var r=S.span();r.innerHTML=k.replace_placeholders(u.replace(\"$~\",\"$data_\"),t,e,this.model.formatters,i),_.appendChild(r)}}return o},t}(n.InspectToolView);i.HoverToolView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Hover\",e.icon=\"bk-tool-icon-hover\",e}return f.__extends(t,i),t.initClass=function(){this.prototype.type=\"HoverTool\",this.prototype.default_view=l,this.define({tooltips:[r.Any,[[\"index\",\"$index\"],[\"data (x, y)\",\"($x, $y)\"],[\"screen (x, y)\",\"($sx, $sy)\"]]],formatters:[r.Any,{}],renderers:[r.Any,\"auto\"],names:[r.Array,[]],mode:[r.String,\"mouse\"],point_policy:[r.String,\"snap_to_data\"],line_policy:[r.String,\"nearest\"],show_arrow:[r.Boolean,!0],anchor:[r.String,\"center\"],attachment:[r.String,\"horizontal\"],callback:[r.Any]})},t}(n.InspectTool);(i.HoverTool=h).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(265),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.ButtonToolView);i.InspectToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.event_type=\"move\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"InspectTool\",this.prototype.button_view=o.OnOffButtonView,this.define({toggleable:[s.Bool,!0]}),this.override({active:!0})},t}(r.ButtonTool);(i.InspectTool=l).initClass()},function(t,e,i){var n=t(391),r=t(241),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.active?this.el.classList.add(\"bk-active\"):this.el.classList.remove(\"bk-active\")},e.prototype._clicked=function(){var t=this.model.active;this.model.active=!t},e}(r.ButtonToolButtonView);i.OnOffButtonView=o},function(t,e,i){var n=t(391),r=t(15),o=t(48),_=t(21),s=t(59),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view=t.plot_view},Object.defineProperty(t.prototype,\"plot_model\",{get:function(){return this.plot_view.model},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){t.model.active?t.activate():t.deactivate()})},t.prototype.activate=function(){},t.prototype.deactivate=function(){},t}(o.View);i.ToolView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tool\",this.internal({active:[r.Boolean,!1]})},Object.defineProperty(t.prototype,\"synthetic_renderers\",{get:function(){return[]},enumerable:!0,configurable:!0}),t.prototype._get_dim_tooltip=function(t,e){switch(e){case\"width\":return t+\" (x-axis)\";case\"height\":return t+\" (y-axis)\";case\"both\":return t}},t.prototype._get_dim_limits=function(t,e,i,n){var r,o=t[0],s=t[1],a=e[0],l=e[1],h=i.bbox.h_range;\"width\"==n||\"both\"==n?(r=[_.min([o,a]),_.max([o,a])],r=[_.max([r[0],h.start]),_.min([r[1],h.end])]):r=[h.start,h.end];var u,c=i.bbox.v_range;return\"height\"==n||\"both\"==n?(u=[_.min([s,l]),_.max([s,l])],u=[_.max([u[0],c.start]),_.min([u[1],c.end])]):u=[c.start,c.end],[r,u]},t}(s.Model);(i.Tool=l).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(19),s=t(59),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolProxy\",this.define({tools:[r.Array,[]],active:[r.Bool,!1],disabled:[r.Bool,!1]})},Object.defineProperty(t.prototype,\"button_view\",{get:function(){return this.tools[0].button_view},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"event_type\",{get:function(){return this.tools[0].event_type},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.tools[0].tooltip},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tool_name\",{get:function(){return this.tools[0].tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"icon\",{get:function(){return this.tools[0].computed_icon},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.icon},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){e.prototype.initialize.call(this),this.do=new o.Signal0(this,\"do\")},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.do,function(){return t.doit()}),this.connect(this.properties.active.change,function(){return t.set_active()})},t.prototype.doit=function(){for(var t=0,e=this.tools;t<e.length;t++){var i=e[t];i.do.emit()}},t.prototype.set_active=function(){for(var t=0,e=this.tools;t<e.length;t++){var i=e[t];i.active=this.active}},t}(s.Model);(i.ToolProxy=a).initClass()},function(t,e,i){var n=t(391),r=t(15),v=t(14),m=t(44),g=t(21),y=t(232),b=t(234),x=t(251),w=t(264),o=t(269),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Toolbar\",this.prototype.default_view=o.ToolbarBaseView,this.define({active_drag:[r.Any,\"auto\"],active_inspect:[r.Any,\"auto\"],active_scroll:[r.Any,\"auto\"],active_tap:[r.Any,\"auto\"],active_multi:[r.Any,null]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init_tools()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.tools.change,function(){return t._init_tools()})},t.prototype._init_tools=function(){for(var e=this,t=function(e){if(e instanceof w.InspectTool)g.any(s.inspectors,function(t){return t.id==e.id})||(s.inspectors=s.inspectors.concat([e]));else if(e instanceof b.HelpTool)g.any(s.help,function(t){return t.id==e.id})||(s.help=s.help.concat([e]));else if(e instanceof y.ActionTool)g.any(s.actions,function(t){return t.id==e.id})||(s.actions=s.actions.concat([e]));else if(e instanceof x.GestureTool){var t=void 0,i=void 0;m.isString(e.event_type)?(t=[e.event_type],i=!1):(t=e.event_type||[],i=!0);for(var n=0,r=t;n<r.length;n++){var o=r[n];o in s.gestures?(i&&(o=\"multi\"),g.any(s.gestures[o].tools,function(t){return t.id==e.id})||(s.gestures[o].tools=s.gestures[o].tools.concat([e])),s.connect(e.properties.active.change,s._active_change.bind(s,e))):v.logger.warn(\"Toolbar: unknown event type '\"+o+\"' for tool: \"+e.type+\" (\"+e.id+\")\")}}},s=this,i=0,n=this.tools;i<n.length;i++){var r=n[i];t(r)}if(\"auto\"==this.active_inspect);else if(this.active_inspect instanceof w.InspectTool)for(var o=0,a=this.inspectors;o<a.length;o++){var l=a[o];l!=this.active_inspect&&(l.active=!1)}else if(m.isArray(this.active_inspect))for(var h=0,u=this.inspectors;h<u.length;h++){var l=u[h];g.includes(this.active_inspect,l)||(l.active=!1)}else if(null==this.active_inspect)for(var c=0,_=this.inspectors;c<_.length;c++){var l=_[c];l.active=!1}var p=function(t){t.active?e._active_change(t):t.active=!0};for(var d in this.gestures){var f=this.gestures[d];if(0!=f.tools.length){if(f.tools=g.sortBy(f.tools,function(t){return t.default_order}),\"tap\"==d){if(null==this.active_tap)continue;\"auto\"==this.active_tap?p(f.tools[0]):p(this.active_tap)}if(\"pan\"==d){if(null==this.active_drag)continue;\"auto\"==this.active_drag?p(f.tools[0]):p(this.active_drag)}if(\"pinch\"==d||\"scroll\"==d){if(null==this.active_scroll||\"auto\"==this.active_scroll)continue;p(this.active_scroll)}null!=this.active_multi&&p(this.active_multi)}}},t}(o.ToolbarBase);(i.Toolbar=s).initClass()},function(t,e,i){var n=t(391),a=t(14),c=t(5),r=t(4),o=t(15),s=t(6),l=t(44),h=t(59),u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBase\",this.define({_visible:[o.Bool,null],autohide:[o.Bool,!1]})},Object.defineProperty(t.prototype,\"visible\",{get:function(){return!this.autohide||null!=this._visible&&this._visible},enumerable:!0,configurable:!0}),t}(h.Model);(i.ToolbarViewModel=u).initClass();var _=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._tool_button_views={},this._build_tool_button_views(),this._toolbar_view_model=new u({autohide:this.model.autohide})},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.tools.change,function(){return t._build_tool_button_views()}),this.connect(this.model.properties.autohide.change,function(){t._toolbar_view_model.autohide=t.model.autohide,t._on_visible_change()}),this.connect(this._toolbar_view_model.properties._visible.change,function(){return t._on_visible_change()})},t.prototype.remove=function(){r.remove_views(this._tool_button_views),e.prototype.remove.call(this)},t.prototype._build_tool_button_views=function(){var t=null!=this.model._proxied_tools?this.model._proxied_tools:this.model.tools;r.build_views(this._tool_button_views,t,{parent:this},function(t){return t.button_view})},t.prototype.set_visibility=function(t){t!=this._toolbar_view_model._visible&&(this._toolbar_view_model._visible=t)},t.prototype._on_visible_change=function(){var t=this._toolbar_view_model.visible,e=\"bk-toolbar-hidden\";this.el.classList.contains(e)&&t?this.el.classList.remove(e):t||this.el.classList.add(e)},t.prototype.render=function(){var e=this;if(c.empty(this.el),this.el.classList.add(\"bk-toolbar\"),this.el.classList.add(\"bk-toolbar-\"+this.model.toolbar_location),this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change(),null!=this.model.logo){var t=\"grey\"===this.model.logo?\"bk-grey\":null,i=c.a({href:\"https://bokeh.pydata.org/\",target:\"_blank\",class:[\"bk-logo\",\"bk-logo-small\",t]});this.el.appendChild(i)}var n=[],r=function(t){return e._tool_button_views[t.id].el},o=this.model.gestures;for(var s in o)n.push(o[s].tools.map(r));n.push(this.model.actions.map(r)),n.push(this.model.inspectors.filter(function(t){return t.toggleable}).map(r)),n.push(this.model.help.map(r));for(var a=0,l=n;a<l.length;a++){var h=l[a];if(0!==h.length){var u=c.div({class:\"bk-button-bar\"},h);this.el.appendChild(u)}}},t}(s.DOMView);i.ToolbarBaseView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBase\",this.prototype.default_view=_,this.define({tools:[o.Array,[]],logo:[o.String,\"normal\"],autohide:[o.Bool,!1]}),this.internal({gestures:[o.Any,function(){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},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}}}],actions:[o.Array,[]],inspectors:[o.Array,[]],help:[o.Array,[]],toolbar_location:[o.Location,\"right\"]})},Object.defineProperty(t.prototype,\"horizontal\",{get:function(){return\"above\"===this.toolbar_location||\"below\"===this.toolbar_location},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"vertical\",{get:function(){return\"left\"===this.toolbar_location||\"right\"===this.toolbar_location},enumerable:!0,configurable:!0}),t.prototype._active_change=function(t){var e=t.event_type;if(null!=e)for(var i=l.isString(e)?[e]:e,n=0,r=i;n<r.length;n++){var o=r[n];if(t.active){var s=this.gestures[o].active;null!=s&&t!=s&&(a.logger.debug(\"Toolbar: deactivating tool: \"+s.type+\" (\"+s.id+\") for event type '\"+o+\"'\"),s.active=!1),this.gestures[o].active=t,a.logger.debug(\"Toolbar: activating tool: \"+t.type+\" (\"+t.id+\") for event type '\"+o+\"'\")}else this.gestures[o].active=null}},t}(h.Model);(i.ToolbarBase=p).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(5),a=t(14),l=t(44),E=t(21),h=t(232),u=t(234),c=t(251),_=t(264),s=t(269),M=t(267),p=t(157),d=t(4),f=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ProxyToolbar\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init_tools(),this._merge_tools()},t.prototype._init_tools=function(){for(var t=function(e){if(e instanceof _.InspectTool)E.any(s.inspectors,function(t){return t.id==e.id})||(s.inspectors=s.inspectors.concat([e]));else if(e instanceof u.HelpTool)E.any(s.help,function(t){return t.id==e.id})||(s.help=s.help.concat([e]));else if(e instanceof h.ActionTool)E.any(s.actions,function(t){return t.id==e.id})||(s.actions=s.actions.concat([e]));else if(e instanceof c.GestureTool){var t=void 0,i=void 0;l.isString(e.event_type)?(t=[e.event_type],i=!1):(t=e.event_type||[],i=!0);for(var n=0,r=t;n<r.length;n++){var o=r[n];o in s.gestures?(i&&(o=\"multi\"),E.any(s.gestures[o].tools,function(t){return t.id==e.id})||(s.gestures[o].tools=s.gestures[o].tools.concat([e]))):a.logger.warn(\"Toolbar: unknown event type '\"+o+\"' for tool: \"+e.type+\" (\"+e.id+\")\")}}},s=this,e=0,i=this.tools;e<i.length;e++){var n=i[e];t(n)}},t.prototype._merge_tools=function(){var t,n=this;this._proxied_tools=[];for(var e={},i={},r={},o=[],s=[],a=0,l=this.help;a<l.length;a++){var h=l[a];E.includes(s,h.redirect)||(o.push(h),s.push(h.redirect))}for(var u in(t=this._proxied_tools).push.apply(t,o),this.help=o,this.gestures){var c=this.gestures[u];u in r||(r[u]={});for(var _=0,p=c.tools;_<p.length;_++){var d=p[_];d.type in r[u]||(r[u][d.type]=[]),r[u][d.type].push(d)}}for(var f=0,v=this.inspectors;f<v.length;f++){var d=v[f];d.type in e||(e[d.type]=[]),e[d.type].push(d)}for(var m=0,g=this.actions;m<g.length;m++){var d=g[m];d.type in i||(i[d.type]=[]),i[d.type].push(d)}var y=function(t,e){void 0===e&&(e=!1);var i=new M.ToolProxy({tools:t,active:e});return n._proxied_tools.push(i),i};for(var u in r){var c=this.gestures[u];for(var b in c.tools=[],r[u]){var x=r[u][b];if(0<x.length)if(\"multi\"==u)for(var w=0,k=x;w<k.length;w++){var d=k[w],S=y([d]);c.tools.push(S),this.connect(S.properties.active.change,this._active_change.bind(this,S))}else{var S=y(x);c.tools.push(S),this.connect(S.properties.active.change,this._active_change.bind(this,S))}}}for(var b in this.actions=[],i){var x=i[b];if(\"CustomAction\"==b)for(var C=0,T=x;C<T.length;C++){var d=T[C];this.actions.push(y([d]))}else 0<x.length&&this.actions.push(y(x))}for(var b in this.inspectors=[],e){var x=e[b];0<x.length&&this.inspectors.push(y(x,!0))}for(var A in this.gestures){var c=this.gestures[A];0!=c.tools.length&&(c.tools=E.sortBy(c.tools,function(t){return t.default_order}),\"pinch\"!=A&&\"scroll\"!=A&&\"multi\"!=A&&(c.tools[0].active=!0))}},t}(s.ToolbarBase);(i.ProxyToolbar=f).initClass();var v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.model.toolbar.toolbar_location=this.model.toolbar_location,this._toolbar_views={},d.build_views(this._toolbar_views,[this.model.toolbar],{parent:this})},t.prototype.remove=function(){d.remove_views(this._toolbar_views),e.prototype.remove.call(this)},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-toolbar-box\")},t.prototype.render=function(){e.prototype.render.call(this);var t=this._toolbar_views[this.model.toolbar.id];t.render(),o.empty(this.el),this.el.appendChild(t.el)},t.prototype.get_width=function(){return this.model.toolbar.vertical?30:null},t.prototype.get_height=function(){return this.model.toolbar.horizontal?30:null},t}(p.LayoutDOMView);i.ToolbarBoxView=v;var m=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBox\",this.prototype.default_view=v,this.define({toolbar:[r.Instance],toolbar_location:[r.Location,\"right\"]})},Object.defineProperty(t.prototype,\"sizing_mode\",{get:function(){switch(this.toolbar_location){case\"above\":case\"below\":return\"scale_width\";case\"left\":case\"right\":return\"scale_height\"}},enumerable:!0,configurable:!0}),t}(p.LayoutDOM);(i.ToolbarBox=m).initClass()},function(t,e,i){var r=t(21),o=t(185),s=t(186);i.compute_renderers=function(t,e,i){return null==t?[]:(n=\"auto\"==t?e.filter(function(t){return t instanceof o.GlyphRenderer||t instanceof s.GraphRenderer}):t,0<i.length&&(n=n.filter(function(t){return r.includes(i,t.name)})),n);var n}},function(i,t,e){var n=i(391),r=i(279),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSTransform\",this.define({args:[o.Any,{}],func:[o.String,\"\"],v_func:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_transform=function(t,e){var i=this.use_strict?a.use_strict(e):e;return new(Function.bind.apply(Function,[void 0].concat(this.names,[t,\"require\",\"exports\",i])))},Object.defineProperty(t.prototype,\"scalar_transform\",{get:function(){return this._make_transform(\"x\",this.func)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"vector_transform\",{get:function(){return this._make_transform(\"xs\",this.v_func)},enumerable:!0,configurable:!0}),t.prototype.compute=function(t){return this.scalar_transform.apply(this,this.values.concat([t,i,{}]))},t.prototype.v_compute=function(t){return this.vector_transform.apply(this,this.values.concat([t,i,{}]))},t}(r.Transform);(e.CustomJSTransform=l).initClass()},function(t,e,i){var n=t(391),r=t(279),o=t(181),s=t(15),a=t(44),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Dodge\",this.define({value:[s.Number,0],range:[s.Instance]})},t.prototype.v_compute=function(t){var e;if(this.range instanceof o.FactorRange)e=this.range.v_synthetic(t);else{if(!a.isArrayableOf(t,a.isNumber))throw new Error(\"unexpected\");e=t}for(var i=new Float64Array(e.length),n=0;n<e.length;n++){var r=e[n];i[n]=this._compute(r)}return i},t.prototype.compute=function(t){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(t));if(a.isNumber(t))return this._compute(t);throw new Error(\"unexpected\")},t.prototype._compute=function(t){return t+this.value},t}(r.Transform);(i.Dodge=l).initClass()},function(t,e,i){var n=t(272);i.CustomJSTransform=n.CustomJSTransform;var r=t(273);i.Dodge=r.Dodge;var o=t(275);i.Interpolator=o.Interpolator;var s=t(276);i.Jitter=s.Jitter;var a=t(277);i.LinearInterpolator=a.LinearInterpolator;var l=t(278);i.StepInterpolator=l.StepInterpolator;var h=t(279);i.Transform=h.Transform},function(t,e,i){var n=t(391),r=t(279),o=t(15),c=t(21),_=t(44),s=function(i){function t(t){var e=i.call(this,t)||this;return e._sorted_dirty=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Interpolator\",this.define({x:[o.Any],y:[o.Any],data:[o.Any],clip:[o.Bool,!0]})},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._sorted_dirty=!0})},t.prototype.v_compute=function(t){for(var e=new Float64Array(t.length),i=0;i<t.length;i++){var n=t[i];e[i]=this.compute(n)}return e},t.prototype.sort=function(t){if(void 0===t&&(t=!1),this._sorted_dirty){var e,i;if(_.isString(this.x)&&_.isString(this.y)&&null!=this.data){var n=this.data.columns();if(!c.includes(n,this.x))throw new Error(\"The x parameter does not correspond to a valid column name defined in the data parameter\");if(!c.includes(n,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),i=this.data.get_column(this.y)}else{if(!_.isArray(this.x)||!_.isArray(this.y))throw new Error(\"parameters 'x' and 'y' must be both either string fields or arrays\");e=this.x,i=this.y}if(e.length!==i.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\");var r=[];for(var o in e)r.push({x:e[o],y:i[o]});t?r.sort(function(t,e){return t.x>e.x?-1:t.x==e.x?0:1}):r.sort(function(t,e){return t.x<e.x?-1:t.x==e.x?0:1}),this._x_sorted=[],this._y_sorted=[];for(var s=0,a=r;s<a.length;s++){var l=a[s],h=l.x,u=l.y;this._x_sorted.push(h),this._y_sorted.push(u)}this._sorted_dirty=!1}},t}(r.Transform);(i.Interpolator=s).initClass()},function(t,e,i){var n=t(391),r=t(279),o=t(181),s=t(44),a=t(15),l=t(31),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Jitter\",this.define({mean:[a.Number,0],width:[a.Number,1],distribution:[a.Distribution,\"uniform\"],range:[a.Instance]}),this.internal({previous_values:[a.Array]})},t.prototype.v_compute=function(t){if(null!=this.previous_values&&this.previous_values.length==t.length)return this.previous_values;var e;if(this.range instanceof o.FactorRange)e=this.range.v_synthetic(t);else{if(!s.isArrayableOf(t,s.isNumber))throw new Error(\"unexpected\");e=t}for(var i=new Float64Array(e.length),n=0;n<e.length;n++){var r=e[n];i[n]=this._compute(r)}return this.previous_values=i},t.prototype.compute=function(t){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(t));if(s.isNumber(t))return this._compute(t);throw new Error(\"unexpected\")},t.prototype._compute=function(t){switch(this.distribution){case\"uniform\":return t+this.mean+(l.random()-.5)*this.width;case\"normal\":return t+l.rnorm(this.mean,this.width)}},t}(r.Transform);(i.Jitter=h).initClass()},function(t,e,i){var n=t(391),s=t(21),r=t(275),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearInterpolator\"},t.prototype.compute=function(e){if(this.sort(!1),this.clip){if(e<this._x_sorted[0]||e>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(e<this._x_sorted[0])return this._y_sorted[0];if(e>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}if(e==this._x_sorted[0])return this._y_sorted[0];var t=s.findLastIndex(this._x_sorted,function(t){return t<e}),i=this._x_sorted[t],n=this._x_sorted[t+1],r=this._y_sorted[t],o=this._y_sorted[t+1];return r+(e-i)/(n-i)*(o-r)},t}(r.Interpolator);(i.LinearInterpolator=o).initClass()},function(t,e,i){var n=t(391),r=t(275),o=t(15),s=t(21),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"StepInterpolator\",this.define({mode:[o.StepMode,\"after\"]})},t.prototype.compute=function(e){if(this.sort(!1),this.clip){if(e<this._x_sorted[0]||e>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(e<this._x_sorted[0])return this._y_sorted[0];if(e>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}var t;switch(this.mode){case\"after\":t=s.findLastIndex(this._x_sorted,function(t){return t<=e});break;case\"before\":t=s.findIndex(this._x_sorted,function(t){return e<=t});break;case\"center\":var i=this._x_sorted.map(function(t){return Math.abs(t-e)}),n=s.min(i);t=s.findIndex(i,function(t){return n===t});break;default:throw new Error(\"unknown mode: \"+this.mode)}return-1!=t?this._y_sorted[t]:NaN},t}(r.Interpolator);(i.StepInterpolator=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Transform\"},t}(r.Model);(i.Transform=o).initClass()},function(t,e,i){\"function\"!=typeof WeakMap&&t(342),Number.isInteger||(Number.isInteger=function(t){return\"number\"==typeof t&&isFinite(t)&&Math.floor(t)===t});var n,l,r,h,o=String.prototype;o.repeat||(o.repeat=function(t){if(null==this)throw new TypeError(\"can't convert \"+this+\" to object\");var e=\"\"+this;if((t=+t)!=t&&(t=0),t<0)throw new RangeError(\"repeat count must be non-negative\");if(t==1/0)throw new RangeError(\"repeat count must be less than infinity\");if(t=Math.floor(t),0==e.length||0==t)return\"\";if(e.length*t>=1<<28)throw new RangeError(\"repeat count must not overflow maximum string size\");for(var i=\"\";1==(1&t)&&(i+=e),0!=(t>>>=1);)e+=e;return i}),Array.from||(Array.from=(n=Object.prototype.toString,l=function(t){return\"function\"==typeof t||\"[object Function]\"===n.call(t)},r=Math.pow(2,53)-1,h=function(t){var e,i=(e=Number(t),isNaN(e)?0:0!==e&&isFinite(e)?(0<e?1:-1)*Math.floor(Math.abs(e)):e);return Math.min(Math.max(i,0),r)},function(t){var e=Object(t);if(null==t)throw new TypeError(\"Array.from requires an array-like object - not null or undefined\");var i,n=1<arguments.length?arguments[1]:void 0;if(void 0!==n){if(!l(n))throw new TypeError(\"Array.from: when provided, the second argument must be a function\");2<arguments.length&&(i=arguments[2])}for(var r=h(e.length),o=l(this)?Object(new this(r)):new Array(r),s=0\n",
1902
+       "      // 13. If IsConstructor(C) is true, then\n",
1903
+       "      ;s<r;){var a=e[s];o[s]=n?void 0===i?n(a,s):n.call(i,a,s):a,s+=1}return o.length=r,o}))},function(t,e,i){var n=t(391);n.__exportStar(t(282),i),n.__exportStar(t(283),i)},function(t,e,i){var n=t(38),r=function(){function s(t,e,i){this.header=t,this.metadata=e,this.content=i,this.buffers=[]}return s.assemble=function(t,e,i){var n=JSON.parse(t),r=JSON.parse(e),o=JSON.parse(i);return new s(n,r,o)},s.prototype.assemble_buffer=function(t,e){var i=null!=this.header.num_buffers?this.header.num_buffers:0;if(i<=this.buffers.length)throw new Error(\"too many buffers received, expecting #{nb}\");this.buffers.push([t,e])},s.create=function(t,e,i){void 0===i&&(i={});var n=s.create_header(t);return new s(n,e,i)},s.create_header=function(t){return{msgid:n.uniqueId(),msgtype:t}},s.prototype.complete=function(){return!(null==this.header||null==this.metadata||null==this.content||\"num_buffers\"in this.header&&this.buffers.length!==this.header.num_buffers)},s.prototype.send=function(t){var e=null!=this.header.num_buffers?this.header.num_buffers:0;if(0<e)throw new Error(\"BokehJS only supports receiving buffers, not sending\");var i=JSON.stringify(this.header),n=JSON.stringify(this.metadata),r=JSON.stringify(this.content);t.send(i),t.send(n),t.send(r)},s.prototype.msgid=function(){return this.header.msgid},s.prototype.msgtype=function(){return this.header.msgtype},s.prototype.reqid=function(){return this.header.reqid},s.prototype.problem=function(){return\"msgid\"in this.header?\"msgtype\"in this.header?null:\"No msgtype in header\":\"No msgid in header\"},s}();i.Message=r},function(t,e,i){var o=t(282),n=function(){function t(){this.message=null,this._partial=null,this._fragments=[],this._buf_header=null,this._current_consumer=this._HEADER}return t.prototype.consume=function(t){this._current_consumer(t)},t.prototype._HEADER=function(t){this._assume_text(t),this.message=null,this._partial=null,this._fragments=[t],this._buf_header=null,this._current_consumer=this._METADATA},t.prototype._METADATA=function(t){this._assume_text(t),this._fragments.push(t),this._current_consumer=this._CONTENT},t.prototype._CONTENT=function(t){this._assume_text(t),this._fragments.push(t);var e=this._fragments.slice(0,3),i=e[0],n=e[1],r=e[2];this._partial=o.Message.assemble(i,n,r),this._check_complete()},t.prototype._BUFFER_HEADER=function(t){this._assume_text(t),this._buf_header=t,this._current_consumer=this._BUFFER_PAYLOAD},t.prototype._BUFFER_PAYLOAD=function(t){this._assume_binary(t),this._partial.assemble_buffer(this._buf_header,t),this._check_complete()},t.prototype._assume_text=function(t){if(t instanceof ArrayBuffer)throw new Error(\"Expected text fragment but received binary fragment\")},t.prototype._assume_binary=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Expected binary fragment but received text fragment\")},t.prototype._check_complete=function(){this._partial.complete()?(this.message=this._partial,this._current_consumer=this._HEADER):this._current_consumer=this._BUFFER_HEADER},t}();i.Receiver=n},function(t,e,i){i.safely=function(t,e){void 0===e&&(e=!1);try{return t()}catch(t){if(function(t){var e=document.createElement(\"div\");e.style.backgroundColor=\"#f2dede\",e.style.border=\"1px solid #a94442\",e.style.borderRadius=\"4px\",e.style.display=\"inline-block\",e.style.fontFamily=\"sans-serif\",e.style.marginTop=\"5px\",e.style.minWidth=\"200px\",e.style.padding=\"5px 5px 5px 10px\",e.classList.add(\"bokeh-error-box-into-flames\");var i=document.createElement(\"span\");i.style.backgroundColor=\"#a94442\",i.style.borderRadius=\"0px 4px 0px 0px\",i.style.color=\"white\",i.style.cursor=\"pointer\",i.style.cssFloat=\"right\",i.style.fontSize=\"0.8em\",i.style.margin=\"-6px -6px 0px 0px\",i.style.padding=\"2px 5px 4px 5px\",i.title=\"close\",i.setAttribute(\"aria-label\",\"close\"),i.appendChild(document.createTextNode(\"x\")),i.addEventListener(\"click\",function(){return s.removeChild(e)});var 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\"));var r=document.createElement(\"pre\");r.style.whiteSpace=\"unset\",r.style.overflowX=\"auto\";var o=t instanceof Error?t.message:t;r.appendChild(document.createTextNode(o)),e.appendChild(i),e.appendChild(n),e.appendChild(r);var s=document.getElementsByTagName(\"body\")[0];s.insertBefore(e,s.firstChild)}(t),e)return;throw t}}},function(t,e,n){function r(){var t=document.getElementsByTagName(\"body\")[0],e=document.getElementsByClassName(\"bokeh-test-div\");1==e.length&&(t.removeChild(e[0]),delete e[0]);var i=document.createElement(\"div\");i.classList.add(\"bokeh-test-div\"),i.style.display=\"none\",t.insertBefore(i,t.firstChild)}n.results={},n.init=function(){r()},n.record=function(t,e){n.results[t]=e,r()},n.count=function(t){null==n.results[t]&&(n.results[t]=0),n.results[t]+=1,r()},n.clear=function(){for(var t=0,e=Object.keys(n.results);t<e.length;t++){var i=e[t];delete n.results[i]}r()}},function(t,e,i){i.version=\"1.0.2\"},function(t,e,i){!function(){\"use strict\";var _,x,p,d,a;function f(t,e){var i,n=Object.keys(e);for(i=0;i<n.length;i++)t=t.replace(new RegExp(\"\\\\{\"+n[i]+\"\\\\}\",\"gi\"),e[n[i]]);return t}function l(t){var e,i,n;if(!t)throw new Error(\"cannot create a random attribute name for an undefined object\");e=\"ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz\",i=\"\";do{for(i=\"\",n=0;n<12;n++)i+=e[Math.floor(Math.random()*e.length)]}while(t[i]);return i}a=function(t,e){var i,n,r,o={};for(t=t.split(\",\"),e=e||10,i=0;i<t.length;i+=2)n=\"&\"+t[i+1]+\";\",r=parseInt(t[i],e),o[n]=\"&#\"+r+\";\";return o[\"\\\\xa0\"]=\"&#160;\",o}(\"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),_={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\"}},(p=function(t,e){this.__root=t,this.__ctx=e}).prototype.addColorStop=function(t,e){var i,n=this.__ctx.__createElement(\"stop\");n.setAttribute(\"offset\",t),-1!==e.indexOf(\"rgba\")?(i=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(e),n.setAttribute(\"stop-color\",f(\"rgb({r},{g},{b})\",{r:i[1],g:i[2],b:i[3]})),n.setAttribute(\"stop-opacity\",i[4])):n.setAttribute(\"stop-color\",e),this.__root.appendChild(n)},d=function(t,e){this.__root=t,this.__ctx=e},(x=function(t){var e,i={width:500,height:500,enableMirroring:!1};if(1<arguments.length?((e=i).width=t,e.height=arguments[1]):e=t||i,!(this instanceof x))return new x(e);this.width=e.width||i.width,this.height=e.height||i.height,this.enableMirroring=void 0!==e.enableMirroring?e.enableMirroring:i.enableMirroring,(this.canvas=this).__document=e.document||document,e.ctx?this.__ctx=e.ctx:(this.__canvas=this.__document.createElement(\"canvas\"),this.__ctx=this.__canvas.getContext(\"2d\")),this.__setDefaultStyles(),this.__stack=[this.__getStyleState()],this.__groupStack=[],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.__root.setAttribute(\"width\",this.width),this.__root.setAttribute(\"height\",this.height),this.__ids={},this.__defs=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this.__root.appendChild(this.__defs),this.__currentElement=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"),this.__root.appendChild(this.__currentElement)}).prototype.__createElement=function(t,e,i){void 0===e&&(e={});var n,r,o=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",t),s=Object.keys(e);for(i&&(o.setAttribute(\"fill\",\"none\"),o.setAttribute(\"stroke\",\"none\")),n=0;n<s.length;n++)r=s[n],o.setAttribute(r,e[r]);return o},x.prototype.__setDefaultStyles=function(){var t,e,i=Object.keys(_);for(t=0;t<i.length;t++)this[e=i[t]]=_[e].canvas},x.prototype.__applyStyleState=function(t){var e,i,n=Object.keys(t);for(e=0;e<n.length;e++)this[i=n[e]]=t[i]},x.prototype.__getStyleState=function(){var t,e,i={},n=Object.keys(_);for(t=0;t<n.length;t++)e=n[t],i[e]=this[e];return i},x.prototype.__applyStyleToCurrentElement=function(e){var t=this.__currentElement,i=this.__currentElementsToStyle;i&&(t.setAttribute(e,\"\"),t=i.element,i.children.forEach(function(t){t.setAttribute(e,\"\")}));var n,r,o,s,a,l=Object.keys(_);for(n=0;n<l.length;n++)if(r=_[l[n]],o=this[l[n]],r.apply)if(o instanceof d){if(o.__ctx)for(;o.__ctx.__defs.childNodes.length;)s=o.__ctx.__defs.childNodes[0].getAttribute(\"id\"),this.__ids[s]=s,this.__defs.appendChild(o.__ctx.__defs.childNodes[0]);t.setAttribute(r.apply,f(\"url(#{id})\",{id:o.__root.getAttribute(\"id\")}))}else if(o instanceof p)t.setAttribute(r.apply,f(\"url(#{id})\",{id:o.__root.getAttribute(\"id\")}));else if(-1!==r.apply.indexOf(e)&&r.svg!==o)if(\"stroke\"!==r.svgAttr&&\"fill\"!==r.svgAttr||-1===o.indexOf(\"rgba\")){var h=r.svgAttr;if(\"globalAlpha\"===l[n]&&(h=e+\"-\"+r.svgAttr,t.getAttribute(h)))continue;t.setAttribute(h,o)}else{a=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(o),t.setAttribute(r.svgAttr,f(\"rgb({r},{g},{b})\",{r:a[1],g:a[2],b:a[3]}));var u=a[4],c=this.globalAlpha;null!=c&&(u*=c),t.setAttribute(r.svgAttr+\"-opacity\",u)}},x.prototype.__closestGroupOrSvg=function(t){return\"g\"===(t=t||this.__currentElement).nodeName||\"svg\"===t.nodeName?t:this.__closestGroupOrSvg(t.parentNode)},x.prototype.getSerializedSvg=function(t){var e,i,n,r,o,s=(new XMLSerializer).serializeToString(this.__root);if(/xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg\".+xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg/gi.test(s)&&(s=s.replace('xmlns=\"http://www.w3.org/2000/svg','xmlns:xlink=\"http://www.w3.org/1999/xlink')),t)for(e=Object.keys(a),i=0;i<e.length;i++)n=e[i],r=a[n],(o=new RegExp(n,\"gi\")).test(s)&&(s=s.replace(o,r));return s},x.prototype.getSvg=function(){return this.__root},x.prototype.save=function(){var t=this.__createElement(\"g\"),e=this.__closestGroupOrSvg();this.__groupStack.push(e),e.appendChild(t),this.__currentElement=t,this.__stack.push(this.__getStyleState())},x.prototype.restore=function(){this.__currentElement=this.__groupStack.pop(),this.__currentElementsToStyle=null,this.__currentElement||(this.__currentElement=this.__root.childNodes[1]);var t=this.__stack.pop();this.__applyStyleState(t)},x.prototype.__addTransform=function(t){var e=this.__closestGroupOrSvg();if(0<e.childNodes.length){\"path\"===this.__currentElement.nodeName&&(this.__currentElementsToStyle||(this.__currentElementsToStyle={element:e,children:[]}),this.__currentElementsToStyle.children.push(this.__currentElement),this.__applyCurrentDefaultPath());var i=this.__createElement(\"g\");e.appendChild(i),this.__currentElement=i}var n=this.__currentElement.getAttribute(\"transform\");n?n+=\" \":n=\"\",n+=t,this.__currentElement.setAttribute(\"transform\",n)},x.prototype.scale=function(t,e){void 0===e&&(e=t),this.__addTransform(f(\"scale({x},{y})\",{x:t,y:e}))},x.prototype.rotate=function(t){var e=180*t/Math.PI;this.__addTransform(f(\"rotate({angle},{cx},{cy})\",{angle:e,cx:0,cy:0}))},x.prototype.translate=function(t,e){this.__addTransform(f(\"translate({x},{y})\",{x:t,y:e}))},x.prototype.transform=function(t,e,i,n,r,o){this.__addTransform(f(\"matrix({a},{b},{c},{d},{e},{f})\",{a:t,b:e,c:i,d:n,e:r,f:o}))},x.prototype.beginPath=function(){var t;this.__currentDefaultPath=\"\",this.__currentPosition={},t=this.__createElement(\"path\",{},!0),this.__closestGroupOrSvg().appendChild(t),this.__currentElement=t},x.prototype.__applyCurrentDefaultPath=function(){var t=this.__currentElement;\"path\"===t.nodeName?t.setAttribute(\"d\",this.__currentDefaultPath):console.error(\"Attempted to apply path command to node\",t.nodeName)},x.prototype.__addPathCommand=function(t){this.__currentDefaultPath+=\" \",this.__currentDefaultPath+=t},x.prototype.moveTo=function(t,e){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.__currentPosition={x:t,y:e},this.__addPathCommand(f(\"M {x} {y}\",{x:t,y:e}))},x.prototype.closePath=function(){this.__currentDefaultPath&&this.__addPathCommand(\"Z\")},x.prototype.lineTo=function(t,e){this.__currentPosition={x:t,y:e},-1<this.__currentDefaultPath.indexOf(\"M\")?this.__addPathCommand(f(\"L {x} {y}\",{x:t,y:e})):this.__addPathCommand(f(\"M {x} {y}\",{x:t,y:e}))},x.prototype.bezierCurveTo=function(t,e,i,n,r,o){this.__currentPosition={x:r,y:o},this.__addPathCommand(f(\"C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}\",{cp1x:t,cp1y:e,cp2x:i,cp2y:n,x:r,y:o}))},x.prototype.quadraticCurveTo=function(t,e,i,n){this.__currentPosition={x:i,y:n},this.__addPathCommand(f(\"Q {cpx} {cpy} {x} {y}\",{cpx:t,cpy:e,x:i,y:n}))};var b=function(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]};x.prototype.arcTo=function(t,e,i,n,r){var o=this.__currentPosition&&this.__currentPosition.x,s=this.__currentPosition&&this.__currentPosition.y;if(void 0!==o&&void 0!==s){if(r<0)throw new Error(\"IndexSizeError: The radius provided (\"+r+\") is negative.\");if(o===t&&s===e||t===i&&e===n||0===r)this.lineTo(t,e);else{var a=b([o-t,s-e]),l=b([i-t,n-e]);if(a[0]*l[1]!=a[1]*l[0]){var h=a[0]*l[0]+a[1]*l[1],u=Math.acos(Math.abs(h)),c=b([a[0]+l[0],a[1]+l[1]]),_=r/Math.sin(u/2),p=t+_*c[0],d=e+_*c[1],f=[-a[1],a[0]],v=[l[1],-l[0]],m=function(t){var e=t[0],i=t[1];return 0<=i?Math.acos(e):-Math.acos(e)},g=m(f),y=m(v);this.lineTo(p+f[0]*r,d+f[1]*r),this.arc(p,d,r,g,y)}else this.lineTo(t,e)}}},x.prototype.stroke=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"fill stroke markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"stroke\")},x.prototype.fill=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"stroke fill markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"fill\")},x.prototype.rect=function(t,e,i,n){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+n),this.lineTo(t,e+n),this.lineTo(t,e),this.closePath()},x.prototype.fillRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"fill\")},x.prototype.strokeRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"stroke\")},x.prototype.__clearCanvas=function(){for(var t=this.__closestGroupOrSvg(),e=t.getAttribute(\"transform\"),i=this.__root.childNodes[1],n=i.childNodes,r=n.length-1;0<=r;r--)n[r]&&i.removeChild(n[r]);this.__currentElement=i,this.__groupStack=[],e&&this.__addTransform(e)},x.prototype.clearRect=function(t,e,i,n){if(0!==t||0!==e||i!==this.width||n!==this.height){var r,o=this.__closestGroupOrSvg();r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n,fill:\"#FFFFFF\"},!0),o.appendChild(r)}else this.__clearCanvas()},x.prototype.createLinearGradient=function(t,e,i,n){var r=this.__createElement(\"linearGradient\",{id:l(this.__ids),x1:t+\"px\",x2:i+\"px\",y1:e+\"px\",y2:n+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(r),new p(r,this)},x.prototype.createRadialGradient=function(t,e,i,n,r,o){var s=this.__createElement(\"radialGradient\",{id:l(this.__ids),cx:n+\"px\",cy:r+\"px\",r:o+\"px\",fx:t+\"px\",fy:e+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(s),new p(s,this)},x.prototype.__parseFont=function(){var t=/^\\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),e={style:t[1]||\"normal\",size:t[4]||\"10px\",family:t[6]||\"sans-serif\",weight:t[3]||\"normal\",decoration:t[2]||\"normal\",href:null};return\"underline\"===this.__fontUnderline&&(e.decoration=\"underline\"),this.__fontHref&&(e.href=this.__fontHref),e},x.prototype.__wrapTextLink=function(t,e){if(t.href){var i=this.__createElement(\"a\");return i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.href),i.appendChild(e),i}return e},x.prototype.__applyText=function(t,e,i,n){var r,o,s,a,l=this.__parseFont(),h=this.__closestGroupOrSvg(),u=this.__createElement(\"text\",{\"font-family\":l.family,\"font-size\":l.size,\"font-style\":l.style,\"font-weight\":l.weight,\"text-decoration\":l.decoration,x:e,y:i,\"text-anchor\":(s=this.textAlign,a={left:\"start\",right:\"end\",center:\"middle\",start:\"start\",end:\"end\"},a[s]||a.start),\"dominant-baseline\":(r=this.textBaseline,o={alphabetic:\"alphabetic\",hanging:\"hanging\",top:\"text-before-edge\",bottom:\"text-after-edge\",middle:\"central\"},o[r]||o.alphabetic)},!0);u.appendChild(this.__document.createTextNode(t)),this.__currentElement=u,this.__applyStyleToCurrentElement(n),h.appendChild(this.__wrapTextLink(l,u))},x.prototype.fillText=function(t,e,i){this.__applyText(t,e,i,\"fill\")},x.prototype.strokeText=function(t,e,i){this.__applyText(t,e,i,\"stroke\")},x.prototype.measureText=function(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)},x.prototype.arc=function(t,e,i,n,r,o){if(n!==r){n%=2*Math.PI,r%=2*Math.PI,n===r&&(r=(r+2*Math.PI-.001*(o?-1:1))%(2*Math.PI));var s=t+i*Math.cos(r),a=e+i*Math.sin(r),l=t+i*Math.cos(n),h=e+i*Math.sin(n),u=o?0:1,c=0,_=r-n;_<0&&(_+=2*Math.PI),c=o?_>Math.PI?0:1:_>Math.PI?1:0,this.lineTo(l,h),this.__addPathCommand(f(\"A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}\",{rx:i,ry:i,xAxisRotation:0,largeArcFlag:c,sweepFlag:u,endX:s,endY:a})),this.__currentPosition={x:s,y:a}}},x.prototype.clip=function(){var t=this.__closestGroupOrSvg(),e=this.__createElement(\"clipPath\"),i=l(this.__ids),n=this.__createElement(\"g\");this.__applyCurrentDefaultPath(),t.removeChild(this.__currentElement),e.setAttribute(\"id\",i),e.appendChild(this.__currentElement),this.__defs.appendChild(e),t.setAttribute(\"clip-path\",f(\"url(#{id})\",{id:i})),t.appendChild(n),this.__currentElement=n},x.prototype.drawImage=function(){var t,e,i,n,r,o,s,a,l,h,u,c,_,p,d=Array.prototype.slice.call(arguments),f=d[0],v=0,m=0;if(3===d.length)t=d[1],e=d[2],r=f.width,o=f.height,i=r,n=o;else if(5===d.length)t=d[1],e=d[2],i=d[3],n=d[4],r=f.width,o=f.height;else{if(9!==d.length)throw new Error(\"Inavlid number of arguments passed to drawImage: \"+arguments.length);v=d[1],m=d[2],r=d[3],o=d[4],t=d[5],e=d[6],i=d[7],n=d[8]}s=this.__closestGroupOrSvg(),this.__currentElement;var g=\"translate(\"+t+\", \"+e+\")\";if(f instanceof x){if((a=f.getSvg().cloneNode(!0)).childNodes&&1<a.childNodes.length){for(l=a.childNodes[0];l.childNodes.length;)p=l.childNodes[0].getAttribute(\"id\"),this.__ids[p]=p,this.__defs.appendChild(l.childNodes[0]);if(h=a.childNodes[1]){var y,b=h.getAttribute(\"transform\");y=b?b+\" \"+g:g,h.setAttribute(\"transform\",y),s.appendChild(h)}}}else\"IMG\"===f.nodeName?((u=this.__createElement(\"image\")).setAttribute(\"width\",i),u.setAttribute(\"height\",n),u.setAttribute(\"preserveAspectRatio\",\"none\"),(v||m||r!==f.width||o!==f.height)&&((c=this.__document.createElement(\"canvas\")).width=i,c.height=n,(_=c.getContext(\"2d\")).drawImage(f,v,m,r,o,0,0,i,n),f=c),u.setAttribute(\"transform\",g),u.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===f.nodeName?f.toDataURL():f.getAttribute(\"src\")),s.appendChild(u)):\"CANVAS\"===f.nodeName&&((u=this.__createElement(\"image\")).setAttribute(\"width\",i),u.setAttribute(\"height\",n),u.setAttribute(\"preserveAspectRatio\",\"none\"),(c=this.__document.createElement(\"canvas\")).width=i,c.height=n,(_=c.getContext(\"2d\")).imageSmoothingEnabled=!1,_.mozImageSmoothingEnabled=!1,_.oImageSmoothingEnabled=!1,_.webkitImageSmoothingEnabled=!1,_.drawImage(f,v,m,r,o,0,0,i,n),f=c,u.setAttribute(\"transform\",g),u.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",f.toDataURL()),s.appendChild(u))},x.prototype.createPattern=function(t,e){var i,n=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"pattern\"),r=l(this.__ids);return n.setAttribute(\"id\",r),n.setAttribute(\"width\",t.width),n.setAttribute(\"height\",t.height),\"CANVAS\"===t.nodeName||\"IMG\"===t.nodeName?((i=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\")).setAttribute(\"width\",t.width),i.setAttribute(\"height\",t.height),i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===t.nodeName?t.toDataURL():t.getAttribute(\"src\")),n.appendChild(i),this.__defs.appendChild(n)):t instanceof x&&(n.appendChild(t.__root.childNodes[1]),this.__defs.appendChild(n)),new d(n,this)},x.prototype.setLineDash=function(t){t&&0<t.length?this.lineDash=t.join(\",\"):this.lineDash=null},x.prototype.drawFocusRing=function(){},x.prototype.createImageData=function(){},x.prototype.getImageData=function(){},x.prototype.putImageData=function(){},x.prototype.globalCompositeOperation=function(){},x.prototype.setTransform=function(){},\"object\"==typeof window&&(window.C2S=x),\"object\"==typeof e&&\"object\"==typeof e.exports&&(e.exports=x)}()},function(t,e,i){var n,o=t(307),r=t(317),s=t(321),a=t(316),l=t(321),h=t(323),u=Function.prototype.bind,c=Object.defineProperty,_=Object.prototype.hasOwnProperty;n=function(t,e,i){var n,r=h(e)&&l(e.value);return delete(n=o(e)).writable,delete n.value,n.get=function(){return!i.overwriteDefinition&&_.call(this,t)?r:(e.value=u.call(r,i.resolveContext?i.resolveContext(this):this),c(this,t,e),this[t])},n},e.exports=function(t){var i=r(arguments[1]);return null!=i.resolveContext&&s(i.resolveContext),a(t,function(t,e){return n(e,t,i)})}},function(t,e,i){var a=t(304),l=t(317),h=t(310),u=t(324);(e.exports=function(t,e){var i,n,r,o,s;return arguments.length<2||\"string\"!=typeof t?(o=e,e=t,t=null):o=arguments[2],null==t?(i=r=!0,n=!1):(i=u.call(t,\"c\"),n=u.call(t,\"e\"),r=u.call(t,\"w\")),s={value:e,configurable:i,enumerable:n,writable:r},o?a(l(o),s):s}).gs=function(t,e,i){var n,r,o,s;return\"string\"!=typeof t?(o=i,i=e,e=t,t=null):o=arguments[3],null==e?e=void 0:h(e)?null==i?i=void 0:h(i)||(o=i,i=void 0):(o=e,e=i=void 0),null==t?r=!(n=!0):(n=u.call(t,\"c\"),r=u.call(t,\"e\")),s={get:e,set:i,configurable:n,enumerable:r},o?a(l(o),s):s}},function(t,e,i){var n=t(323);e.exports=function(){return n(this).length=0,this}},function(t,e,i){e.exports=t(292)()?Array.from:t(293)},function(t,e,i){e.exports=function(){var t,e,i=Array.from;return\"function\"==typeof i&&(e=i(t=[\"raz\",\"dwa\"]),Boolean(e&&e!==t&&\"dwa\"===e[1]))}},function(t,e,i){var p=t(337).iterator,d=t(294),f=t(295),v=t(302),m=t(321),g=t(323),y=t(312),b=t(327),x=Array.isArray,w=Function.prototype.call,k={configurable:!0,enumerable:!0,writable:!0,value:null},S=Object.defineProperty;e.exports=function(t){var e,i,n,r,o,s,a,l,h,u,c=arguments[1],_=arguments[2];if(t=Object(g(t)),y(c)&&m(c),this&&this!==Array&&f(this))e=this;else{if(!c){if(d(t))return 1!==(o=t.length)?Array.apply(null,t):((r=new Array(1))[0]=t[0],r);if(x(t)){for(r=new Array(o=t.length),i=0;i<o;++i)r[i]=t[i];return r}}r=[]}if(!x(t))if(void 0!==(h=t[p])){for(a=m(h).call(t),e&&(r=new e),l=a.next(),i=0;!l.done;)u=c?w.call(c,_,l.value,i):l.value,e?(k.value=u,S(r,i,k)):r[i]=u,l=a.next(),++i;o=i}else if(b(t)){for(o=t.length,e&&(r=new e),n=i=0;i<o;++i)u=t[i],i+1<o&&55296<=(s=u.charCodeAt(0))&&s<=56319&&(u+=t[++i]),u=c?w.call(c,_,u,n):u,e?(k.value=u,S(r,n,k)):r[n]=u,++n;o=n}if(void 0===o)for(o=v(t.length),e&&(r=new e(o)),i=0;i<o;++i)u=c?w.call(c,_,t[i],i):t[i],e?(k.value=u,S(r,i,k)):r[i]=u;return e&&(k.value=null,r.length=o),r}},function(t,e,i){var n=Object.prototype.toString,r=n.call(function(){return arguments}());e.exports=function(t){return n.call(t)===r}},function(t,e,i){var n=Object.prototype.toString,r=n.call(t(296));e.exports=function(t){return\"function\"==typeof t&&n.call(t)===r}},function(t,e,i){e.exports=function(){}},function(t,e,i){e.exports=function(){return this}()},function(t,e,i){e.exports=t(299)()?Math.sign:t(300)},function(t,e,i){e.exports=function(){var t=Math.sign;return\"function\"==typeof t&&1===t(10)&&-1===t(-20)}},function(t,e,i){e.exports=function(t){return t=Number(t),isNaN(t)||0===t?t:0<t?1:-1}},function(t,e,i){var n=t(298),r=Math.abs,o=Math.floor;e.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?n(t)*o(r(t)):t}},function(t,e,i){var n=t(301),r=Math.max;e.exports=function(t){return r(0,n(t))}},function(t,e,i){var a=t(321),l=t(323),h=Function.prototype.bind,u=Function.prototype.call,c=Object.keys,_=Object.prototype.propertyIsEnumerable;e.exports=function(o,s){return function(i,n){var t,r=arguments[2],e=arguments[3];return i=Object(l(i)),a(n),t=c(i),e&&t.sort(\"function\"==typeof e?h.call(e,i):void 0),\"function\"!=typeof o&&(o=t[o]),u.call(o,t,function(t,e){return _.call(i,t)?u.call(n,r,i[t],t,i,e):s})}}},function(t,e,i){e.exports=t(305)()?Object.assign:t(306)},function(t,e,i){e.exports=function(){var t,e=Object.assign;return\"function\"==typeof e&&(e(t={foo:\"raz\"},{bar:\"dwa\"},{trzy:\"trzy\"}),t.foo+t.bar+t.trzy===\"razdwatrzy\")}},function(t,e,i){var s=t(313),a=t(323),l=Math.max;e.exports=function(e,i){var n,t,r,o=l(arguments.length,2);for(e=Object(a(e)),r=function(t){try{e[t]=i[t]}catch(t){n||(n=t)}},t=1;t<o;++t)i=arguments[t],s(i).forEach(r);if(void 0!==n)throw n;return e}},function(t,e,i){var o=t(291),s=t(304),a=t(323);e.exports=function(e){var t=Object(a(e)),i=arguments[1],n=Object(arguments[2]);if(t!==e&&!i)return t;var r={};return i?o(i,function(t){(n.ensure||t in e)&&(r[t]=e[t])}):s(r,e),r}},function(t,e,i){var n,r,o,s,a=Object.create;t(319)()||(n=t(320)),e.exports=n?1!==n.level?a:(s={configurable:(o={},!1),enumerable:(r={},!1),writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(t){o[t]=\"__proto__\"!==t?s:{configurable:!0,enumerable:!1,writable:!0,value:void 0}}),Object.defineProperties(r,o),Object.defineProperty(n,\"nullPolyfill\",{configurable:!1,enumerable:!1,writable:!1,value:r}),function(t,e){return a(null===t?r:t,e)}):a},function(t,e,i){e.exports=t(303)(\"forEach\")},function(t,e,i){e.exports=function(t){return\"function\"==typeof t}},function(t,e,i){var n=t(312),r={function:!0,object:!0};e.exports=function(t){return n(t)&&r[typeof t]||!1}},function(t,e,i){var n=t(296)();e.exports=function(t){return t!==n&&null!==t}},function(t,e,i){e.exports=t(314)()?Object.keys:t(315)},function(t,e,i){e.exports=function(){try{return Object.keys(\"primitive\"),!0}catch(t){return!1}}},function(t,e,i){var n=t(312),r=Object.keys;e.exports=function(t){return r(n(t)?Object(t):t)}},function(t,e,i){var n=t(321),a=t(309),l=Function.prototype.call;e.exports=function(t,r){var o={},s=arguments[2];return n(r),a(t,function(t,e,i,n){o[e]=l.call(r,s,t,e,i,n)}),o}},function(t,e,i){var n=t(312),r=Array.prototype.forEach,o=Object.create;e.exports=function(t){var e=o(null);return r.call(arguments,function(t){n(t)&&function(t,e){var i;for(i in t)e[i]=t[i]}(Object(t),e)}),e}},function(t,e,i){e.exports=t(319)()?Object.setPrototypeOf:t(320)},function(t,e,i){var n=Object.create,r=Object.getPrototypeOf,o={};e.exports=function(){var t=Object.setPrototypeOf,e=arguments[0]||n;return\"function\"==typeof t&&r(t(e(null),o))===o}},function(t,e,i){var r,n,o,s,a=t(311),l=t(323),h=Object.prototype.isPrototypeOf,u=Object.defineProperty,c={configurable:!0,enumerable:!1,writable:!0,value:void 0};r=function(t,e){if(l(t),null===e||a(e))return t;throw new TypeError(\"Prototype must be null or an object\")},e.exports=(n=function(){var t,e=Object.create(null),i={},n=Object.getOwnPropertyDescriptor(Object.prototype,\"__proto__\");if(n){try{(t=n.set).call(e,i)}catch(t){}if(Object.getPrototypeOf(e)===i)return{set:t,level:2}}return e.__proto__=i,Object.getPrototypeOf(e)===i?{level:2}:((e={}).__proto__=i,Object.getPrototypeOf(e)===i&&{level:1})}())?(2===n.level?n.set?(s=n.set,o=function(t,e){return s.call(r(t,e),e),t}):o=function(t,e){return r(t,e).__proto__=e,t}:o=function t(e,i){var n;return r(e,i),(n=h.call(t.nullPolyfill,e))&&delete t.nullPolyfill.__proto__,null===i&&(i=t.nullPolyfill),e.__proto__=i,n&&u(t.nullPolyfill,\"__proto__\",c),e},Object.defineProperty(o,\"level\",{configurable:!1,enumerable:!1,writable:!1,value:n.level})):null,t(308)},function(t,e,i){e.exports=function(t){if(\"function\"!=typeof t)throw new TypeError(t+\" is not a function\");return t}},function(t,e,i){var n=t(311);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not an Object\");return t}},function(t,e,i){var n=t(312);e.exports=function(t){if(!n(t))throw new TypeError(\"Cannot use null or undefined\");return t}},function(t,e,i){e.exports=t(325)()?String.prototype.contains:t(326)},function(t,e,i){var n=\"razdwatrzy\";e.exports=function(){return\"function\"==typeof n.contains&&!0===n.contains(\"dwa\")&&!1===n.contains(\"foo\")}},function(t,e,i){var n=String.prototype.indexOf;e.exports=function(t){return-1<n.call(this,t,arguments[1])}},function(t,e,i){var n=Object.prototype.toString,r=n.call(\"\");e.exports=function(t){return\"string\"==typeof t||t&&\"object\"==typeof t&&(t instanceof String||n.call(t)===r)||!1}},function(t,e,i){var n=Object.create(null),r=Math.random;e.exports=function(){for(var t;t=r().toString(36).slice(2),n[t];);return t}},function(t,e,i){var n,r=t(318),o=t(324),s=t(289),a=t(337),l=t(332),h=Object.defineProperty;n=e.exports=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");l.call(this,t),e=e?o.call(e,\"key+value\")?\"key+value\":o.call(e,\"key\")?\"key\":\"value\":\"value\",h(this,\"__kind__\",s(\"\",e))},r&&r(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:s(function(t){return\"value\"===this.__kind__?this.__list__[t]:\"key+value\"===this.__kind__?[t,this.__list__[t]]:t})}),h(n.prototype,a.toStringTag,s(\"c\",\"Array Iterator\"))},function(t,e,i){var c=t(294),_=t(321),p=t(327),d=t(331),f=Array.isArray,v=Function.prototype.call,m=Array.prototype.some;e.exports=function(t,e){var i,n,r,o,s,a,l,h,u=arguments[2];if(f(t)||c(t)?i=\"array\":p(t)?i=\"string\":t=d(t),_(e),r=function(){o=!0},\"array\"!==i)if(\"string\"!==i)for(n=t.next();!n.done;){if(v.call(e,u,n.value,r),o)return;n=t.next()}else for(a=t.length,s=0;s<a&&(l=t[s],s+1<a&&55296<=(h=l.charCodeAt(0))&&h<=56319&&(l+=t[++s]),v.call(e,u,l,r),!o);++s);else m.call(t,function(t){return v.call(e,u,t,r),o})}},function(t,e,i){var n=t(294),r=t(327),o=t(329),s=t(334),a=t(335),l=t(337).iterator;e.exports=function(t){return\"function\"==typeof a(t)[l]?t[l]():n(t)?new o(t):r(t)?new s(t):new o(t)}},function(t,e,i){var n,r=t(290),o=t(304),s=t(321),a=t(323),l=t(289),h=t(288),u=t(337),c=Object.defineProperty,_=Object.defineProperties;e.exports=n=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");_(this,{__list__:l(\"w\",a(t)),__context__:l(\"w\",e),__nextIndex__:l(\"w\",0)}),e&&(s(e.on),e.on(\"_add\",this._onAdd),e.on(\"_delete\",this._onDelete),e.on(\"_clear\",this._onClear))},delete n.prototype.constructor,_(n.prototype,o({_next:l(function(){var t;if(this.__list__)return this.__redo__&&void 0!==(t=this.__redo__.shift())?t:this.__nextIndex__<this.__list__.length?this.__nextIndex__++:void this._unBind()}),next:l(function(){return this._createResult(this._next())}),_createResult:l(function(t){return void 0===t?{done:!0,value:void 0}:{done:!1,value:this._resolve(t)}}),_resolve:l(function(t){return this.__list__[t]}),_unBind:l(function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off(\"_add\",this._onAdd),this.__context__.off(\"_delete\",this._onDelete),this.__context__.off(\"_clear\",this._onClear),this.__context__=null)}),toString:l(function(){return\"[object \"+(this[u.toStringTag]||\"Object\")+\"]\"})},h({_onAdd:l(function(i){i>=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach(function(t,e){i<=t&&(this.__redo__[e]=++t)},this),this.__redo__.push(i)):c(this,\"__redo__\",l(\"c\",[i])))}),_onDelete:l(function(i){var t;i>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(t=this.__redo__.indexOf(i))&&this.__redo__.splice(t,1),this.__redo__.forEach(function(t,e){i<t&&(this.__redo__[e]=--t)},this)))}),_onClear:l(function(){this.__redo__&&r.call(this.__redo__),this.__nextIndex__=0})}))),c(n.prototype,u.iterator,l(function(){return this}))},function(t,e,i){var n=t(294),r=t(312),o=t(327),s=t(337).iterator,a=Array.isArray;e.exports=function(t){return!(!r(t)||!a(t)&&!o(t)&&!n(t)&&\"function\"!=typeof t[s])}},function(t,e,i){var n,r=t(318),o=t(289),s=t(337),a=t(332),l=Object.defineProperty;n=e.exports=function(t){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");t=String(t),a.call(this,t),l(this,\"__length__\",o(\"\",t.length))},r&&r(n,a),delete n.prototype.constructor,n.prototype=Object.create(a.prototype,{_next:o(function(){if(this.__list__)return this.__nextIndex__<this.__length__?this.__nextIndex__++:void this._unBind()}),_resolve:o(function(t){var e,i=this.__list__[t];return this.__nextIndex__===this.__length__?i:55296<=(e=i.charCodeAt(0))&&e<=56319?i+this.__list__[this.__nextIndex__++]:i})}),l(n.prototype,s.toStringTag,o(\"c\",\"String Iterator\"))},function(t,e,i){var n=t(333);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not iterable\");return t}},function(L,t,e){\n",
1904
+       "      /*!\n",
1905
+       "           * @overview es6-promise - a tiny implementation of Promises/A+.\n",
1906
+       "           * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)\n",
1907
+       "           * @license   Licensed under MIT license\n",
1908
+       "           *            See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE\n",
1909
+       "           * @version   v4.2.4+314e4831\n",
1910
+       "           */var i,n;i=this,n=function(){\"use strict\";function h(t){return\"function\"==typeof t}var i=Array.isArray?Array.isArray:function(t){return\"[object Array]\"===Object.prototype.toString.call(t)},n=0,e=void 0,r=void 0,a=function(t,e){_[n]=t,_[n+1]=e,2===(n+=2)&&(r?r(p):g())},t=\"undefined\"!=typeof window?window:void 0,o=t||{},s=o.MutationObserver||o.WebKitMutationObserver,l=\"undefined\"==typeof self&&\"undefined\"!=typeof process&&\"[object process]\"==={}.toString.call(process),u=\"undefined\"!=typeof Uint8ClampedArray&&\"undefined\"!=typeof importScripts&&\"undefined\"!=typeof MessageChannel;function c(){var t=setTimeout;return function(){return t(p,1)}}var _=new Array(1e3);function p(){for(var t=0;t<n;t+=2){var e=_[t],i=_[t+1];e(i),_[t]=void 0,_[t+1]=void 0}n=0}var d,f,v,m,g=void 0;function y(t,e){var i=this,n=new this.constructor(w);void 0===n[x]&&I(n);var r=i._state;if(r){var o=arguments[r-1];a(function(){return F(r,n,o,i._result)})}else j(i,n,t,e);return n}function b(t){if(t&&\"object\"==typeof t&&t.constructor===this)return t;var e=new this(w);return M(e,t),e}l?g=function(){return process.nextTick(p)}:s?(f=0,v=new s(p),m=document.createTextNode(\"\"),v.observe(m,{characterData:!0}),g=function(){m.data=f=++f%2}):u?((d=new MessageChannel).port1.onmessage=p,g=function(){return d.port2.postMessage(0)}):g=void 0===t&&\"function\"==typeof L?function(){try{var t=Function(\"return this\")().require(\"vertx\");return void 0!==(e=t.runOnLoop||t.runOnContext)?function(){e(p)}:c()}catch(t){return c()}}():c();var x=Math.random().toString(36).substring(2);function w(){}var k=void 0,S=1,C=2,T={error:null};function A(t){try{return t.then}catch(t){return T.error=t,T}}function E(t,e,i){var n,r,o,s;e.constructor===t.constructor&&i===y&&e.constructor.resolve===b?(o=t,(s=e)._state===S?z(o,s._result):s._state===C?P(o,s._result):j(s,void 0,function(t){return M(o,t)},function(t){return P(o,t)})):i===T?(P(t,T.error),T.error=null):void 0===i?z(t,e):h(i)?(n=e,r=i,a(function(e){var i=!1,t=function(t,e,i,n){try{t.call(e,i,n)}catch(t){return t}}(r,n,function(t){i||(i=!0,n!==t?M(e,t):z(e,t))},function(t){i||(i=!0,P(e,t))},e._label);!i&&t&&(i=!0,P(e,t))},t)):z(t,e)}function M(t,e){var i,n;t===e?P(t,new TypeError(\"You cannot resolve a promise with itself\")):(n=typeof(i=e),null===i||\"object\"!==n&&\"function\"!==n?z(t,e):E(t,e,A(e)))}function O(t){t._onerror&&t._onerror(t._result),N(t)}function z(t,e){t._state===k&&(t._result=e,t._state=S,0!==t._subscribers.length&&a(N,t))}function P(t,e){t._state===k&&(t._state=C,t._result=e,a(O,t))}function j(t,e,i,n){var r=t._subscribers,o=r.length;t._onerror=null,r[o]=e,r[o+S]=i,r[o+C]=n,0===o&&t._state&&a(N,t)}function N(t){var e=t._subscribers,i=t._state;if(0!==e.length){for(var n=void 0,r=void 0,o=t._result,s=0;s<e.length;s+=3)n=e[s],r=e[s+i],n?F(i,n,r,o):r(o);t._subscribers.length=0}}function F(t,e,i,n){var r=h(i),o=void 0,s=void 0,a=void 0,l=void 0;if(r){if((o=function(t,e){try{return t(e)}catch(t){return T.error=t,T}}(i,n))===T?(l=!0,s=o.error,o.error=null):a=!0,e===o)return void P(e,new TypeError(\"A promises callback cannot return that same promise.\"))}else o=n,a=!0;e._state!==k||(r&&a?M(e,o):l?P(e,s):t===S?z(e,o):t===C&&P(e,o))}var D=0;function I(t){t[x]=D++,t._state=void 0,t._result=void 0,t._subscribers=[]}var R=function(){function t(t,e){this._instanceConstructor=t,this.promise=new t(w),this.promise[x]||I(this.promise),i(e)?(this.length=e.length,this._remaining=e.length,this._result=new Array(this.length),0===this.length?z(this.promise,this._result):(this.length=this.length||0,this._enumerate(e),0===this._remaining&&z(this.promise,this._result))):P(this.promise,new Error(\"Array Methods must be provided an Array\"))}return t.prototype._enumerate=function(t){for(var e=0;this._state===k&&e<t.length;e++)this._eachEntry(t[e],e)},t.prototype._eachEntry=function(e,t){var i=this._instanceConstructor,n=i.resolve;if(n===b){var r=A(e);if(r===y&&e._state!==k)this._settledAt(e._state,t,e._result);else if(\"function\"!=typeof r)this._remaining--,this._result[t]=e;else if(i===B){var o=new i(w);E(o,e,r),this._willSettleAt(o,t)}else this._willSettleAt(new i(function(t){return t(e)}),t)}else this._willSettleAt(n(e),t)},t.prototype._settledAt=function(t,e,i){var n=this.promise;n._state===k&&(this._remaining--,t===C?P(n,i):this._result[e]=i),0===this._remaining&&z(n,this._result)},t.prototype._willSettleAt=function(t,e){var i=this;j(t,void 0,function(t){return i._settledAt(S,e,t)},function(t){return i._settledAt(C,e,t)})},t}(),B=function(){function e(t){this[x]=D++,this._result=this._state=void 0,this._subscribers=[],w!==t&&(\"function\"!=typeof t&&function(){throw new TypeError(\"You must pass a resolver function as the first argument to the promise constructor\")}(),this instanceof e?function(e,t){try{t(function(t){M(e,t)},function(t){P(e,t)})}catch(t){P(e,t)}}(this,t):function(){throw new TypeError(\"Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.\")}())}return e.prototype.catch=function(t){return this.then(null,t)},e.prototype.finally=function(e){var i=this.constructor;return this.then(function(t){return i.resolve(e()).then(function(){return t})},function(t){return i.resolve(e()).then(function(){throw t})})},e}();return B.prototype.then=y,B.all=function(t){return new R(this,t).promise},B.race=function(r){var o=this;return i(r)?new o(function(t,e){for(var i=r.length,n=0;n<i;n++)o.resolve(r[n]).then(t,e)}):new o(function(t,e){return e(new TypeError(\"You must pass an array to race.\"))})},B.resolve=b,B.reject=function(t){var e=new this(w);return P(e,t),e},B._setScheduler=function(t){r=t},B._setAsap=function(t){a=t},B._asap=a,B.polyfill=function(){var t=void 0;if(\"undefined\"!=typeof global)t=global;else if(\"undefined\"!=typeof self)t=self;else try{t=Function(\"return this\")()}catch(t){throw new Error(\"polyfill failed because global object is unavailable in this environment\")}var e=t.Promise;if(e){var i=null;try{i=Object.prototype.toString.call(e.resolve())}catch(t){}if(\"[object Promise]\"===i&&!e.cast)return}t.Promise=B},B.Promise=B},\"object\"==typeof e&&void 0!==t?t.exports=n():i.ES6Promise=n()},function(t,e,i){e.exports=t(338)()?Symbol:t(340)},function(t,e,i){var n={object:!0,symbol:!0};e.exports=function(){var t;if(\"function\"!=typeof Symbol)return!1;t=Symbol(\"test symbol\");try{String(t)}catch(t){return!1}return!!n[typeof Symbol.iterator]&&!!n[typeof Symbol.toPrimitive]&&!!n[typeof Symbol.toStringTag]}},function(t,e,i){e.exports=function(t){return!!t&&(\"symbol\"==typeof t||!!t.constructor&&\"Symbol\"===t.constructor.name&&\"Symbol\"===t[t.constructor.toStringTag])}},function(t,e,i){var n,r,o,s,a=t(289),l=t(341),h=Object.create,u=Object.defineProperties,c=Object.defineProperty,_=Object.prototype,p=h(null);if(\"function\"==typeof Symbol){n=Symbol;try{String(n()),s=!0}catch(t){}}var d,f=(d=h(null),function(t){for(var e,i,n=0;d[t+(n||\"\")];)++n;return d[t+=n||\"\"]=!0,c(_,e=\"@@\"+t,a.gs(null,function(t){i||(i=!0,c(this,e,a(t)),i=!1)})),e});o=function(t){if(this instanceof o)throw new TypeError(\"Symbol is not a constructor\");return r(t)},e.exports=r=function t(e){var i;if(this instanceof t)throw new TypeError(\"Symbol is not a constructor\");return s?n(e):(i=h(o.prototype),e=void 0===e?\"\":String(e),u(i,{__description__:a(\"\",e),__name__:a(\"\",f(e))}))},u(r,{for:a(function(t){return p[t]?p[t]:p[t]=r(String(t))}),keyFor:a(function(t){var e;for(e in l(t),p)if(p[e]===t)return e}),hasInstance:a(\"\",n&&n.hasInstance||r(\"hasInstance\")),isConcatSpreadable:a(\"\",n&&n.isConcatSpreadable||r(\"isConcatSpreadable\")),iterator:a(\"\",n&&n.iterator||r(\"iterator\")),match:a(\"\",n&&n.match||r(\"match\")),replace:a(\"\",n&&n.replace||r(\"replace\")),search:a(\"\",n&&n.search||r(\"search\")),species:a(\"\",n&&n.species||r(\"species\")),split:a(\"\",n&&n.split||r(\"split\")),toPrimitive:a(\"\",n&&n.toPrimitive||r(\"toPrimitive\")),toStringTag:a(\"\",n&&n.toStringTag||r(\"toStringTag\")),unscopables:a(\"\",n&&n.unscopables||r(\"unscopables\"))}),u(o.prototype,{constructor:a(r),toString:a(\"\",function(){return this.__name__})}),u(r.prototype,{toString:a(function(){return\"Symbol (\"+l(this).__description__+\")\"}),valueOf:a(function(){return l(this)})}),c(r.prototype,r.toPrimitive,a(\"\",function(){var t=l(this);return\"symbol\"==typeof t?t:t.toString()})),c(r.prototype,r.toStringTag,a(\"c\",\"Symbol\")),c(o.prototype,r.toStringTag,a(\"c\",r.prototype[r.toStringTag])),c(o.prototype,r.toPrimitive,a(\"c\",r.prototype[r.toPrimitive]))},function(t,e,i){var n=t(339);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not a symbol\");return t}},function(t,e,i){t(343)()||Object.defineProperty(t(297),\"WeakMap\",{value:t(345),configurable:!0,enumerable:!1,writable:!0})},function(t,e,i){e.exports=function(){var t,e;if(\"function\"!=typeof WeakMap)return!1;try{t=new WeakMap([[e={},\"one\"],[{},\"two\"],[{},\"three\"]])}catch(t){return!1}return\"[object WeakMap]\"===String(t)&&\"function\"==typeof t.set&&t.set({},1)===t&&\"function\"==typeof t.delete&&\"function\"==typeof t.has&&\"one\"===t.get(e)}},function(t,e,i){e.exports=\"function\"==typeof WeakMap&&\"[object WeakMap]\"===Object.prototype.toString.call(new WeakMap)},function(t,e,i){var n,r=t(318),o=t(322),s=t(323),a=t(328),l=t(289),h=t(331),u=t(330),c=t(337).toStringTag,_=t(344),p=Array.isArray,d=Object.defineProperty,f=Object.prototype.hasOwnProperty,v=Object.getPrototypeOf;e.exports=n=function(){var e,t=arguments[0];if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");return e=_&&r&&WeakMap!==n?r(new WeakMap,v(this)):this,null!=t&&(p(t)||(t=h(t))),d(e,\"__weakMapData__\",l(\"c\",\"$weakMap$\"+a())),t&&u(t,function(t){s(t),e.set(t[0],t[1])}),e},_&&(r&&r(n,WeakMap),n.prototype=Object.create(WeakMap.prototype,{constructor:l(n)})),Object.defineProperties(n.prototype,{delete:l(function(t){return!!f.call(o(t),this.__weakMapData__)&&(delete t[this.__weakMapData__],!0)}),get:l(function(t){if(f.call(o(t),this.__weakMapData__))return t[this.__weakMapData__]}),has:l(function(t){return f.call(o(t),this.__weakMapData__)}),set:l(function(t,e){return d(o(t),this.__weakMapData__,l(\"c\",e)),this}),toString:l(function(){return\"[object WeakMap]\"})}),d(n.prototype,c,l(\"c\",\"WeakMap\"))},function(t,e,i){var n,r;n=this,r=function(){\"use strict\";var l=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],h=function(t,e,i,n){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(+e||16,2),65535);var r=t,o=r;for(this._levelBounds=[4*r];r=Math.ceil(r/this.nodeSize),o+=r,this._levelBounds.push(4*o),1!==r;);this.ArrayType=i||Float64Array,this.IndexArrayType=o<16384?Uint16Array:Uint32Array;var s=l.indexOf(this.ArrayType),a=4*o*this.ArrayType.BYTES_PER_ELEMENT;if(s<0)throw new Error(\"Unexpected typed array class: \"+i+\".\");n&&n instanceof ArrayBuffer?(this.data=n,this._boxes=new this.ArrayType(this.data,8,4*o),this._indices=new this.IndexArrayType(this.data,8+a,o),this._pos=4*o,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+a+o*this.IndexArrayType.BYTES_PER_ELEMENT),this._boxes=new this.ArrayType(this.data,8,4*o),this._indices=new this.IndexArrayType(this.data,8+a,o),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+s]),new Uint16Array(this.data,2,1)[0]=e,new Uint32Array(this.data,4,1)[0]=t)};function C(t,e,i,n,r){var o=t[n];t[n]=t[r],t[r]=o;var s=4*n,a=4*r,l=e[s],h=e[s+1],u=e[s+2],c=e[s+3];e[s]=e[a],e[s+1]=e[a+1],e[s+2]=e[a+2],e[s+3]=e[a+3],e[a]=l,e[a+1]=h,e[a+2]=u,e[a+3]=c;var _=i[n];i[n]=i[r],i[r]=_}function T(t,e){var i=t^e,n=65535^i,r=65535^(t|e),o=t&(65535^e),s=i|n>>1,a=i>>1^i,l=r>>1^n&o>>1^r,h=i&r>>1^o>>1^o;a=(i=s)&(n=a)>>2^n&(i^n)>>2,l^=i&(r=l)>>2^n&(o=h)>>2,h^=n&r>>2^(i^n)&o>>2,a=(i=s=i&i>>2^n&n>>2)&(n=a)>>4^n&(i^n)>>4,l^=i&(r=l)>>4^n&(o=h)>>4,h^=n&r>>4^(i^n)&o>>4,l^=(i=s=i&i>>4^n&n>>4)&(r=l)>>8^(n=a)&(o=h)>>8;var u=t^e,c=(n=(h^=n&r>>8^(i^n)&o>>8)^h>>1)|65535^(u|(i=l^l>>1));return((c=1431655765&((c=858993459&((c=252645135&((c=16711935&(c|c<<8))|c<<4))|c<<2))|c<<1))<<1|(u=1431655765&((u=858993459&((u=252645135&((u=16711935&(u|u<<8))|u<<4))|u<<2))|u<<1)))>>>0}return h.from=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");var e=new Uint8Array(t,0,2),i=e[0],n=e[1];if(251!==i)throw new Error(\"Data does not appear to be in a Flatbush format.\");if(n>>4!=3)throw new Error(\"Got v\"+(n>>4)+\" data when expected v3.\");var r=new Uint16Array(t,2,1),o=r[0],s=new Uint32Array(t,4,1),a=s[0];return new h(a,o,l[15&n],t)},h.prototype.add=function(t,e,i,n){var r=this._pos>>2;this._indices[r]=r,this._boxes[this._pos++]=t,this._boxes[this._pos++]=e,this._boxes[this._pos++]=i,this._boxes[this._pos++]=n,t<this.minX&&(this.minX=t),e<this.minY&&(this.minY=e),i>this.maxX&&(this.maxX=i),n>this.maxY&&(this.maxY=n)},h.prototype.finish=function(){var t=this;if(this._pos>>2!==this.numItems)throw new Error(\"Added \"+(this._pos>>2)+\" items when expected \"+this.numItems+\".\");for(var e=this.maxX-this.minX,i=this.maxY-this.minY,n=new Uint32Array(this.numItems),r=0;r<this.numItems;r++){var o=4*r,s=t._boxes[o++],a=t._boxes[o++],l=t._boxes[o++],h=t._boxes[o++],u=Math.floor(65535*((s+l)/2-t.minX)/e),c=Math.floor(65535*((a+h)/2-t.minY)/i);n[r]=T(u,c)}!function t(e,i,n,r,o){if(!(o<=r)){for(var s=e[r+o>>1],a=r-1,l=o+1;;){for(;e[++a]<s;);for(;e[--l]>s;);if(l<=a)break;C(e,i,n,a,l)}t(e,i,n,r,l),t(e,i,n,l+1,o)}}(n,this._boxes,this._indices,0,this.numItems-1);for(var _=0,p=0;_<this._levelBounds.length-1;_++)for(var d=t._levelBounds[_];p<d;){for(var f=1/0,v=1/0,m=-1/0,g=-1/0,y=p,b=0;b<this.nodeSize&&p<d;b++){var x=t._boxes[p++],w=t._boxes[p++],k=t._boxes[p++],S=t._boxes[p++];x<f&&(f=x),w<v&&(v=w),m<k&&(m=k),g<S&&(g=S)}t._indices[t._pos>>2]=y,t._boxes[t._pos++]=f,t._boxes[t._pos++]=v,t._boxes[t._pos++]=m,t._boxes[t._pos++]=g}},h.prototype.search=function(t,e,i,n,r){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");for(var o=this._boxes.length-4,s=this._levelBounds.length-1,a=[],l=[];void 0!==o;){for(var h=Math.min(o+4*this.nodeSize,this._levelBounds[s]),u=o;u<h;u+=4){var c=this._indices[u>>2];i<this._boxes[u]||n<this._boxes[u+1]||t>this._boxes[u+2]||e>this._boxes[u+3]||(o<4*this.numItems?(void 0===r||r(c))&&l.push(c):(a.push(c),a.push(s-1)))}s=a.pop(),o=a.pop()}return l},h},\"object\"==typeof i&&void 0!==e?e.exports=r():n.Flatbush=r()},function(t,Yt,e){\n",
1911
+       "      /*! Hammer.JS - v2.0.7 - 2016-04-22\n",
1912
+       "           * http://hammerjs.github.io/\n",
1913
+       "           *\n",
1914
+       "           * Copyright (c) 2016 Jorik Tangelder;\n",
1915
+       "           * Licensed under the MIT license */\n",
1916
+       "      !function(o,a,t,x){\"use strict\";var s,l=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],e=a.createElement(\"div\"),i=\"function\",h=Math.round,w=Math.abs,k=Date.now;function u(t,e,i){return setTimeout(f(t,i),e)}function n(t,e,i){return!!Array.isArray(t)&&(c(t,i[e],i),!0)}function c(t,e,i){var n;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==x)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 r(n,t,e){var r=\"DEPRECATED METHOD: \"+t+\"\\n\"+e+\" AT \\n\";return function(){var t=new Error(\"get-stack-trace\"),e=t&&t.stack?t.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",i=o.console&&(o.console.warn||o.console.log);return i&&i.call(o.console,r,e),n.apply(this,arguments)}}s=\"function\"!=typeof Object.assign?function(t){if(t===x||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!==x&&null!==n)for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}return e}:Object.assign;var _=r(function(t,e,i){for(var n=Object.keys(e),r=0;r<n.length;)(!i||i&&t[n[r]]===x)&&(t[n[r]]=e[n[r]]),r++;return t},\"extend\",\"Use `assign`.\"),p=r(function(t,e){return _(t,e,!0)},\"merge\",\"Use `assign`.\");function d(t,e,i){var n,r=e.prototype;(n=t.prototype=Object.create(r)).constructor=t,n._super=r,i&&s(n,i)}function f(t,e){return function(){return t.apply(e,arguments)}}function v(t,e){return typeof t==i?t.apply(e&&e[0]||x,e):t}function m(t,e){return t===x?e:t}function g(e,t,i){c(C(t),function(t){e.addEventListener(t,i,!1)})}function y(e,t,i){c(C(t),function(t){e.removeEventListener(t,i,!1)})}function S(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function b(t,e){return-1<t.indexOf(e)}function C(t){return t.trim().split(/\\s+/g)}function T(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 A(t){return Array.prototype.slice.call(t,0)}function E(t,i,e){for(var n=[],r=[],o=0;o<t.length;){var s=i?t[o][i]:t[o];T(r,s)<0&&n.push(t[o]),r[o]=s,o++}return e&&(n=i?n.sort(function(t,e){return t[i]>e[i]}):n.sort()),n}function M(t,e){for(var i,n,r=e[0].toUpperCase()+e.slice(1),o=0;o<l.length;){if(i=l[o],(n=i?i+r:e)in t)return n;o++}return x}var O=1;function z(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||o}var P=\"ontouchstart\"in o,j=M(o,\"PointerEvent\")!==x,N=P&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),F=\"touch\",D=25,I=1,R=4,B=8,L=1,V=2,G=4,U=8,q=16,Y=V|G,X=U|q,H=Y|X,W=[\"x\",\"y\"],J=[\"clientX\",\"clientY\"];function Q(e,t){var i=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){v(e.options.enable,[e])&&i.handler(t)},this.init()}function $(t,e,i){var n=i.pointers.length,r=i.changedPointers.length,o=e&I&&n-r==0,s=e&(R|B)&&n-r==0;i.isFirst=!!o,i.isFinal=!!s,o&&(t.session={}),i.eventType=e,function(t,e){var i=t.session,n=e.pointers,r=n.length;i.firstInput||(i.firstInput=K(e)),1<r&&!i.firstMultiple?i.firstMultiple=K(e):1===r&&(i.firstMultiple=!1);var o,s,a,l,h,u,c=i.firstInput,_=i.firstMultiple,p=_?_.center:c.center,d=e.center=Z(n);e.timeStamp=k(),e.deltaTime=e.timeStamp-c.timeStamp,e.angle=nt(p,d),e.distance=it(p,d),o=i,a=(s=e).center,l=o.offsetDelta||{},h=o.prevDelta||{},u=o.prevInput||{},s.eventType!==I&&u.eventType!==R||(h=o.prevDelta={x:u.deltaX||0,y:u.deltaY||0},l=o.offsetDelta={x:a.x,y:a.y}),s.deltaX=h.x+(a.x-l.x),s.deltaY=h.y+(a.y-l.y),e.offsetDirection=et(e.deltaX,e.deltaY);var f,v,m,g,y=tt(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=y.x,e.overallVelocityY=y.y,e.overallVelocity=w(y.x)>w(y.y)?y.x:y.y,e.scale=_?(m=_.pointers,it((g=n)[0],g[1],J)/it(m[0],m[1],J)):1,e.rotation=_?(f=_.pointers,nt((v=n)[1],v[0],J)+nt(f[1],f[0],J)):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,r,o,s=t.lastInterval||e,a=e.timeStamp-s.timeStamp;if(e.eventType!=B&&(D<a||s.velocity===x)){var l=e.deltaX-s.deltaX,h=e.deltaY-s.deltaY,u=tt(a,l,h);n=u.x,r=u.y,i=w(u.x)>w(u.y)?u.x:u.y,o=et(l,h),t.lastInterval=e}else i=s.velocity,n=s.velocityX,r=s.velocityY,o=s.direction;e.velocity=i,e.velocityX=n,e.velocityY=r,e.direction=o}(i,e);var b=t.element;S(e.srcEvent.target,b)&&(b=e.srcEvent.target),e.target=b}(t,i),t.emit(\"hammer.input\",i),t.recognize(i),t.session.prevInput=i}function K(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:k(),pointers:e,center:Z(e),deltaX:t.deltaX,deltaY:t.deltaY}}function Z(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 tt(t,e,i){return{x:e/t||0,y:i/t||0}}function et(t,e){return t===e?L:w(t)>=w(e)?t<0?V:G:e<0?U:q}function it(t,e,i){i||(i=W);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return Math.sqrt(n*n+r*r)}function nt(t,e,i){i||(i=W);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&&g(this.element,this.evEl,this.domHandler),this.evTarget&&g(this.target,this.evTarget,this.domHandler),this.evWin&&g(z(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&y(this.element,this.evEl,this.domHandler),this.evTarget&&y(this.target,this.evTarget,this.domHandler),this.evWin&&y(z(this.element),this.evWin,this.domHandler)}};var rt={mousedown:I,mousemove:2,mouseup:R},ot=\"mousedown\",st=\"mousemove mouseup\";function at(){this.evEl=ot,this.evWin=st,this.pressed=!1,Q.apply(this,arguments)}d(at,Q,{handler:function(t){var e=rt[t.type];e&I&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=R),this.pressed&&(e&R&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:\"mouse\",srcEvent:t}))}});var lt={pointerdown:I,pointermove:2,pointerup:R,pointercancel:B,pointerout:B},ht={2:F,3:\"pen\",4:\"mouse\",5:\"kinect\"},ut=\"pointerdown\",ct=\"pointermove pointerup pointercancel\";function _t(){this.evEl=ut,this.evWin=ct,Q.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}o.MSPointerEvent&&!o.PointerEvent&&(ut=\"MSPointerDown\",ct=\"MSPointerMove MSPointerUp MSPointerCancel\"),d(_t,Q,{handler:function(t){var e=this.store,i=!1,n=t.type.toLowerCase().replace(\"ms\",\"\"),r=lt[n],o=ht[t.pointerType]||t.pointerType,s=o==F,a=T(e,t.pointerId,\"pointerId\");r&I&&(0===t.button||s)?a<0&&(e.push(t),a=e.length-1):r&(R|B)&&(i=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:o,srcEvent:t}),i&&e.splice(a,1))}});var pt={touchstart:I,touchmove:2,touchend:R,touchcancel:B};function dt(){this.evTarget=\"touchstart\",this.evWin=\"touchstart touchmove touchend touchcancel\",this.started=!1,Q.apply(this,arguments)}d(dt,Q,{handler:function(t){var e=pt[t.type];if(e===I&&(this.started=!0),this.started){var i=function(t,e){var i=A(t.touches),n=A(t.changedTouches);return e&(R|B)&&(i=E(i.concat(n),\"identifier\",!0)),[i,n]}.call(this,t,e);e&(R|B)&&i[0].length-i[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:F,srcEvent:t})}}});var ft={touchstart:I,touchmove:2,touchend:R,touchcancel:B},vt=\"touchstart touchmove touchend touchcancel\";function mt(){this.evTarget=vt,this.targetIds={},Q.apply(this,arguments)}d(mt,Q,{handler:function(t){var e=ft[t.type],i=function(t,e){var i=A(t.touches),n=this.targetIds;if(e&(2|I)&&1===i.length)return n[i[0].identifier]=!0,[i,i];var r,o,s=A(t.changedTouches),a=[],l=this.target;if(o=i.filter(function(t){return S(t.target,l)}),e===I)for(r=0;r<o.length;)n[o[r].identifier]=!0,r++;for(r=0;r<s.length;)n[s[r].identifier]&&a.push(s[r]),e&(R|B)&&delete n[s[r].identifier],r++;return a.length?[E(o.concat(a),\"identifier\",!0),a]:void 0}.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:F,srcEvent:t})}});var gt=2500;function yt(){Q.apply(this,arguments);var t=f(this.handler,this);this.touch=new mt(this.manager,t),this.mouse=new at(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function bt(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);-1<t&&n.splice(t,1)},gt)}}d(yt,Q,{handler:function(t,e,i){var n=i.pointerType==F,r=\"mouse\"==i.pointerType;if(!(r&&i.sourceCapabilities&&i.sourceCapabilities.firesTouchEvents)){if(n)(function(t,e){t&I?(this.primaryTouch=e.changedPointers[0].identifier,bt.call(this,e)):t&(R|B)&&bt.call(this,e)}).call(this,e,i);else if(r&&function(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,n=0;n<this.lastTouches.length;n++){var r=this.lastTouches[n],o=Math.abs(e-r.x),s=Math.abs(i-r.y);if(o<=25&&s<=25)return!0}return!1}.call(this,i))return;this.callback(t,e,i)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var xt=M(e.style,\"touchAction\"),wt=xt!==x,kt=\"manipulation\",St=\"none\",Ct=\"pan-x\",Tt=\"pan-y\",At=function(){if(!wt)return!1;var e={},i=o.CSS&&o.CSS.supports;return[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach(function(t){e[t]=!i||o.CSS.supports(\"touch-action\",t)}),e}();function Et(t,e){this.manager=t,this.set(e)}Et.prototype={set:function(t){\"compute\"==t&&(t=this.compute()),wt&&this.manager.element.style&&At[t]&&(this.manager.element.style[xt]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return c(this.manager.recognizers,function(t){v(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),function(t){if(b(t,St))return St;var e=b(t,Ct),i=b(t,Tt);return e&&i?St:e||i?e?Ct:Tt:b(t,kt)?kt:\"auto\"}(e.join(\" \"))},preventDefaults:function(t){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var n=this.actions,r=b(n,St)&&!At.none,o=b(n,Tt)&&!At[Tt],s=b(n,Ct)&&!At[Ct];if(r){var a=1===t.pointers.length,l=t.distance<2,h=t.deltaTime<250;if(a&&l&&h)return}if(!s||!o)return r||o&&i&Y||s&&i&X?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var Mt=1;function Ot(t){this.options=s({},this.defaults,t||{}),this.id=O++,this.manager=null,this.options.enable=m(this.options.enable,!0),this.state=Mt,this.simultaneous={},this.requireFail=[]}function zt(t){return 16&t?\"cancel\":8&t?\"end\":4&t?\"move\":2&t?\"start\":\"\"}function Pt(t){return t==q?\"down\":t==U?\"up\":t==V?\"left\":t==G?\"right\":\"\"}function jt(t,e){var i=e.manager;return i?i.get(t):t}function Nt(){Ot.apply(this,arguments)}function Ft(){Nt.apply(this,arguments),this.pX=null,this.pY=null}function Dt(){Nt.apply(this,arguments)}function It(){Ot.apply(this,arguments),this._timer=null,this._input=null}function Rt(){Nt.apply(this,arguments)}function Bt(){Nt.apply(this,arguments)}function Lt(){Ot.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Vt(t,e){return(e=e||{}).recognizers=m(e.recognizers,Vt.defaults.preset),new Gt(t,e)}function Gt(t,e){var i;this.options=s({},Vt.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||(j?_t:N?mt:P?yt:at))(i,$),this.touchAction=new Et(this,this.options.touchAction),Ut(this,!0),c(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 Ut(i,n){var r,o=i.element;o.style&&(c(i.options.cssProps,function(t,e){r=M(o.style,e),n?(i.oldCssProps[r]=o.style[r],o.style[r]=t):o.style[r]=i.oldCssProps[r]||\"\"}),n||(i.oldCssProps={}))}Ot.prototype={defaults:{},set:function(t){return s(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(n(t,\"recognizeWith\",this))return this;var e=this.simultaneous;return t=jt(t,this),e[t.id]||(e[t.id]=t).recognizeWith(this),this},dropRecognizeWith:function(t){return n(t,\"dropRecognizeWith\",this)||(t=jt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(n(t,\"requireFailure\",this))return this;var e=this.requireFail;return t=jt(t,this),-1===T(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(n(t,\"dropRequireFailure\",this))return this;t=jt(t,this);var e=T(this.requireFail,t);return-1<e&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return 0<this.requireFail.length},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(e){var i=this,t=this.state;function n(t){i.manager.emit(t,e)}t<8&&n(i.options.event+zt(t)),n(i.options.event),e.additionalEvent&&n(e.additionalEvent),8<=t&&n(i.options.event+zt(t))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(this.requireFail[t].state&(32|Mt)))return!1;t++}return!0},recognize:function(t){var e=s({},t);if(!v(this.options.enable,[this,e]))return this.reset(),void(this.state=32);56&this.state&&(this.state=Mt),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},d(Nt,Ot,{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&&(i&B||!r)?16|e:n||r?i&R?8|e:2&e?4|e:2:32}}),d(Ft,Nt,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:H},getTouchAction:function(){var t=this.options.direction,e=[];return t&Y&&e.push(Tt),t&X&&e.push(Ct),e},directionTest:function(t){var e=this.options,i=!0,n=t.distance,r=t.direction,o=t.deltaX,s=t.deltaY;return r&e.direction||(e.direction&Y?(r=0===o?L:o<0?V:G,i=o!=this.pX,n=Math.abs(t.deltaX)):(r=0===s?L:s<0?U:q,i=s!=this.pY,n=Math.abs(t.deltaY))),t.direction=r,i&&n>e.threshold&&r&e.direction},attrTest:function(t){return Nt.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=Pt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),d(Dt,Nt,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[St]},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)}}),d(It,Ot,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[\"auto\"]},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||t.eventType&(R|B)&&!r)this.reset();else if(t.eventType&I)this.reset(),this._timer=u(function(){this.state=8,this.tryEmit()},e.time,this);else if(t.eventType&R)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&t.eventType&R?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=k(),this.manager.emit(this.options.event,this._input)))}}),d(Rt,Nt,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[St]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),d(Bt,Nt,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:Y|X,pointers:1},getTouchAction:function(){return Ft.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Y|X)?e=t.overallVelocity:i&Y?e=t.overallVelocityX:i&X&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&w(e)>this.options.velocity&&t.eventType&R},emit:function(t){var e=Pt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),d(Lt,Ot,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[kt]},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(),t.eventType&I&&0===this.count)return this.failTimeout();if(n&&r&&i){if(t.eventType!=R)return this.failTimeout();var o=!this.pTime||t.timeStamp-this.pTime<e.interval,s=!this.pCenter||it(this.pCenter,t.center)<e.posThreshold;this.pTime=t.timeStamp,this.pCenter=t.center,s&&o?this.count+=1:this.count=1,this._input=t;var a=this.count%e.taps;if(0===a)return this.hasRequireFailures()?(this._timer=u(function(){this.state=8,this.tryEmit()},e.interval,this),2):8}return 32},failTimeout:function(){return this._timer=u(function(){this.state=32},this.options.interval,this),32},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Vt.VERSION=\"2.0.7\",Vt.defaults={domEvents:!1,touchAction:\"compute\",enable:!0,inputTarget:null,inputClass:null,preset:[[Rt,{enable:!1}],[Dt,{enable:!1},[\"rotate\"]],[Bt,{direction:Y}],[Ft,{direction:Y},[\"swipe\"]],[Lt],[Lt,{event:\"doubletap\",taps:2},[\"tap\"]],[It]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}},Gt.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 o=0;o<n.length;)i=n[o],2===e.stopped||r&&i!=r&&!i.canRecognizeWith(r)?i.reset():i.recognize(t),!r&&14&i.state&&(r=e.curRecognizer=i),o++}},get:function(t){if(t instanceof Ot)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(n(t,\"add\",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),(t.manager=this).touchAction.update(),t},remove:function(t){if(n(t,\"remove\",this))return this;if(t=this.get(t)){var e=this.recognizers,i=T(e,t);-1!==i&&(e.splice(i,1),this.touchAction.update())}return this},on:function(t,e){if(t!==x&&e!==x){var i=this.handlers;return c(C(t),function(t){i[t]=i[t]||[],i[t].push(e)}),this}},off:function(t,e){if(t!==x){var i=this.handlers;return c(C(t),function(t){e?i[t]&&i[t].splice(T(i[t],e),1):delete i[t]}),this}},emit:function(t,e){var i,n,r;this.options.domEvents&&(i=t,n=e,(r=a.createEvent(\"Event\")).initEvent(i,!0,!0),(r.gesture=n).target.dispatchEvent(r));var o=this.handlers[t]&&this.handlers[t].slice();if(o&&o.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var s=0;s<o.length;)o[s](e),s++}},destroy:function(){this.element&&Ut(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},s(Vt,{INPUT_START:I,INPUT_MOVE:2,INPUT_END:R,INPUT_CANCEL:B,STATE_POSSIBLE:Mt,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:32,DIRECTION_NONE:L,DIRECTION_LEFT:V,DIRECTION_RIGHT:G,DIRECTION_UP:U,DIRECTION_DOWN:q,DIRECTION_HORIZONTAL:Y,DIRECTION_VERTICAL:X,DIRECTION_ALL:H,Manager:Gt,Input:Q,TouchAction:Et,TouchInput:mt,MouseInput:at,PointerEventInput:_t,TouchMouseInput:yt,SingleTouchInput:dt,Recognizer:Ot,AttrRecognizer:Nt,Tap:Lt,Pan:Ft,Swipe:Bt,Pinch:Dt,Rotate:Rt,Press:It,on:g,off:y,each:c,merge:p,extend:_,assign:s,inherit:d,bindFn:f,prefixed:M});var qt=void 0!==o?o:\"undefined\"!=typeof self?self:{};qt.Hammer=Vt,void 0!==Yt&&Yt.exports?Yt.exports=Vt:o.Hammer=Vt}(window,document)},function(t,e,i){var n,r,o=t(353);(r=n=i.Operator||(i.Operator={}))[r.Le=0]=\"Le\",r[r.Ge=1]=\"Ge\",r[r.Eq=2]=\"Eq\";var s=function(){function t(t,e,i){void 0===i&&(i=o.Strength.required),this._id=a++,this._operator=e,this._expression=t,this._strength=o.Strength.clip(i)}return t.Compare=function(t,e){return t.id-e.id},t.prototype.toString=function(){var t=this;return this._expression+\" \"+function(){switch(t._operator){case n.Le:return\"<=\";case n.Ge:return\">=\";case n.Eq:return\"==\"}}()+\" 0\"},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"expression\",{get:function(){return this._expression},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"op\",{get:function(){return this._operator},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"strength\",{get:function(){return this._strength},enumerable:!0,configurable:!0}),t}();i.Constraint=s;var a=0},function(t,e,i){var h=t(357),u=t(360),c=t(351),n=function(){function t(){var t=function(t){for(var e=0,i=function(){return 0},n=c.createMap(u.Variable.Compare),r=0,o=t.length;r<o;++r){var s=t[r];if(\"number\"==typeof s)e+=s;else if(s instanceof u.Variable)n.setDefault(s,i).second+=1;else{if(!(s instanceof Array))throw new Error(\"invalid Expression argument: \"+JSON.stringify(s));if(2!==s.length)throw new Error(\"array must have length 2\");var a=s[0],l=s[1];if(\"number\"!=typeof a)throw new Error(\"array item 0 must be a number\");if(!(l instanceof u.Variable))throw new Error(\"array item 1 must be a variable\");n.setDefault(l,i).second+=a}}return{terms:n,constant:e}}(arguments);this._terms=t.terms,this._constant=t.constant}return t.prototype.toString=function(){var e=[];h.forEach(this._terms,function(t){e.push([t.first,t.second])});for(var t=!0,i=\"\",n=0,r=e;n<r.length;n++){var o=r[n],s=o[0],a=o[1];t?(t=!1,i+=1==a?\"\"+s:-1==a?\"-\"+s:a+\"*\"+s):i+=1==a?\" + \"+s:-1==a?\" - \"+s:0<=a?\" + \"+a+s:\" - \"+-a+s}var l=this.constant;return l<0?i+=\" - \"+-l:0<l&&(i+=\" + \"+l),i},Object.defineProperty(t.prototype,\"terms\",{get:function(){return this._terms},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"constant\",{get:function(){return this._constant},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"value\",{get:function(){var e=this._constant;return h.forEach(this._terms,function(t){e+=t.first.value*t.second}),e},enumerable:!0,configurable:!0}),t}();i.Expression=n},function(t,e,i){\n",
1917
+       "      /*-----------------------------------------------------------------------------\n",
1918
+       "          | Copyright (c) 2014, Nucleic Development Team.\n",
1919
+       "          |\n",
1920
+       "          | Distributed under the terms of the Modified BSD License.\n",
1921
+       "          |\n",
1922
+       "          | The full license is in the file COPYING.txt, distributed with this software.\n",
1923
+       "          |----------------------------------------------------------------------------*/\n",
1924
+       "      function n(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}n(t(360)),n(t(349)),n(t(348)),n(t(353)),n(t(352))},function(t,e,i){var n=t(357);i.createMap=function(t){return new n.AssociativeArray(t)}},function(t,e,i){var g,n,r=t(360),a=t(349),y=t(348),b=t(353),o=t(351),s=t(357),l=function(){function t(){this._cnMap=o.createMap(y.Constraint.Compare),this._rowMap=o.createMap(h.Compare),this._varMap=o.createMap(r.Variable.Compare),this._editMap=o.createMap(r.Variable.Compare),this._infeasibleRows=[],this._objective=new k,this._artificial=null,this._idTick=0}return t.prototype.addConstraint=function(t){var e=this._cnMap.find(t);if(void 0!==e)throw new Error(\"duplicate constraint\");var i=this._createRow(t),n=i.row,r=i.tag,o=this._chooseSubject(n,r);if(o.type()===g.Invalid&&n.allDummies()){if(!x(n.constant())){for(var s=[],a=0,l=t.expression.terms._array;a<l.length;a++){var h=l[a];s.push(h.first.name)}var u=[\"LE\",\"GE\",\"EQ\"][t.op];throw new Error(\"unsatisfiable constraint [\"+s.join(\",\")+\"] operator: \"+u)}o=r.marker}if(o.type()===g.Invalid){if(!this._addWithArtificialVariable(n))throw new Error(\"unsatisfiable constraint\")}else n.solveFor(o),this._substitute(o,n),this._rowMap.insert(o,n);this._cnMap.insert(t,r),this._optimize(this._objective)},t.prototype.removeConstraint=function(t,e){void 0===e&&(e=!1);var i=this._cnMap.erase(t);if(void 0===i){if(e)return;throw new Error(\"unknown constraint\")}this._removeConstraintEffects(t,i.second);var n=i.second.marker,r=this._rowMap.erase(n);if(void 0===r){var o=this._getMarkerLeavingSymbol(n);if(o.type()===g.Invalid)throw new Error(\"failed to find leaving row\");(r=this._rowMap.erase(o)).second.solveForEx(o,n),this._substitute(n,r.second)}this._optimize(this._objective)},t.prototype.hasConstraint=function(t){return this._cnMap.contains(t)},t.prototype.addEditVariable=function(t,e){var i=this._editMap.find(t);if(void 0!==i)throw new Error(\"duplicate edit variable: \"+t.name);if((e=b.Strength.clip(e))===b.Strength.required)throw new Error(\"bad required strength\");var n=new a.Expression(t),r=new y.Constraint(n,y.Operator.Eq,e);this.addConstraint(r);var o=this._cnMap.find(r).second,s={tag:o,constraint:r,constant:0};this._editMap.insert(t,s)},t.prototype.removeEditVariable=function(t,e){void 0===e&&(e=!1);var i=this._editMap.erase(t);if(void 0===i){if(e)return;throw new Error(\"unknown edit variable: \"+t.name)}this.removeConstraint(i.second.constraint,e)},t.prototype.hasEditVariable=function(t){return this._editMap.contains(t)},t.prototype.suggestValue=function(t,e){var i=this._editMap.find(t);if(void 0===i)throw new Error(\"unknown edit variable: \"+t.name);var n=this._rowMap,r=i.second,o=e-r.constant;r.constant=e;var s=r.tag.marker,a=n.find(s);if(void 0!==a)return a.second.add(-o)<0&&this._infeasibleRows.push(s),void this._dualOptimize();var l=r.tag.other;if(void 0!==(a=n.find(l)))return a.second.add(o)<0&&this._infeasibleRows.push(l),void this._dualOptimize();for(var h=0,u=n.size();h<u;++h){var c=n.itemAt(h),_=c.second,p=_.coefficientFor(s);0!==p&&_.add(o*p)<0&&c.first.type()!==g.External&&this._infeasibleRows.push(c.first)}this._dualOptimize()},t.prototype.updateVariables=function(){for(var t=this._varMap,e=this._rowMap,i=0,n=t.size();i<n;++i){var r=t.itemAt(i),o=e.find(r.second),s=0;void 0!==o&&-0===(s=o.second.constant())&&(s=0),r.first.setValue(s)}},t.prototype.getConstraints=function(){var e=[];return s.forEach(this._cnMap,function(t){e.push(t.first)}),e},Object.defineProperty(t.prototype,\"numConstraints\",{get:function(){return this._cnMap.size()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"numEditVariables\",{get:function(){return this._editMap.size()},enumerable:!0,configurable:!0}),t.prototype._getVarSymbol=function(t){var e=this;return this._varMap.setDefault(t,function(){return e._makeSymbol(g.External)}).second},t.prototype._createRow=function(t){for(var e=t.expression,i=new k(e.constant),n=e.terms,r=0,o=n.size();r<o;++r){var s=n.itemAt(r);if(!x(s.second)){var a=this._getVarSymbol(s.first),l=this._rowMap.find(a);void 0!==l?i.insertRow(l.second,s.second):i.insertSymbol(a,s.second)}}var h=this._objective,u=t.strength,c={marker:w,other:w};switch(t.op){case y.Operator.Le:case y.Operator.Ge:var _=t.op===y.Operator.Le?1:-1,p=this._makeSymbol(g.Slack);if(c.marker=p,i.insertSymbol(p,_),u<b.Strength.required){var d=this._makeSymbol(g.Error);c.other=d,i.insertSymbol(d,-_),h.insertSymbol(d,u)}break;case y.Operator.Eq:if(u<b.Strength.required){var f=this._makeSymbol(g.Error),v=this._makeSymbol(g.Error);c.marker=f,c.other=v,i.insertSymbol(f,-1),i.insertSymbol(v,1),h.insertSymbol(f,u),h.insertSymbol(v,u)}else{var m=this._makeSymbol(g.Dummy);c.marker=m,i.insertSymbol(m)}}return i.constant()<0&&i.reverseSign(),{row:i,tag:c}},t.prototype._chooseSubject=function(t,e){for(var i=t.cells(),n=0,r=i.size();n<r;++n){var o=i.itemAt(n);if(o.first.type()===g.External)return o.first}var s=e.marker.type();return(s===g.Slack||s===g.Error)&&t.coefficientFor(e.marker)<0?e.marker:((s=e.other.type())===g.Slack||s===g.Error)&&t.coefficientFor(e.other)<0?e.other:w},t.prototype._addWithArtificialVariable=function(t){var e=this._makeSymbol(g.Slack);this._rowMap.insert(e,t.copy()),this._artificial=t.copy(),this._optimize(this._artificial);var i=x(this._artificial.constant());this._artificial=null;var n=this._rowMap.erase(e);if(void 0!==n){var r=n.second;if(r.isConstant())return i;var o=this._anyPivotableSymbol(r);if(o.type()===g.Invalid)return!1;r.solveForEx(e,o),this._substitute(o,r),this._rowMap.insert(o,r)}for(var s=this._rowMap,a=0,l=s.size();a<l;++a)s.itemAt(a).second.removeSymbol(e);return this._objective.removeSymbol(e),i},t.prototype._substitute=function(t,e){for(var i=this._rowMap,n=0,r=i.size();n<r;++n){var o=i.itemAt(n);o.second.substitute(t,e),o.second.constant()<0&&o.first.type()!==g.External&&this._infeasibleRows.push(o.first)}this._objective.substitute(t,e),this._artificial&&this._artificial.substitute(t,e)},t.prototype._optimize=function(t){for(;;){var e=this._getEnteringSymbol(t);if(e.type()===g.Invalid)return;var i=this._getLeavingSymbol(e);if(i.type()===g.Invalid)throw new Error(\"the objective is unbounded\");var n=this._rowMap.erase(i).second;n.solveForEx(i,e),this._substitute(e,n),this._rowMap.insert(e,n)}},t.prototype._dualOptimize=function(){for(var t=this._rowMap,e=this._infeasibleRows;0!==e.length;){var i=e.pop(),n=t.find(i);if(void 0!==n&&n.second.constant()<0){var r=this._getDualEnteringSymbol(n.second);if(r.type()===g.Invalid)throw new Error(\"dual optimize failed\");var o=n.second;t.erase(i),o.solveForEx(i,r),this._substitute(r,o),t.insert(r,o)}}},t.prototype._getEnteringSymbol=function(t){for(var e=t.cells(),i=0,n=e.size();i<n;++i){var r=e.itemAt(i),o=r.first;if(r.second<0&&o.type()!==g.Dummy)return o}return w},t.prototype._getDualEnteringSymbol=function(t){for(var e=Number.MAX_VALUE,i=w,n=t.cells(),r=0,o=n.size();r<o;++r){var s=n.itemAt(r),a=s.first,l=s.second;if(0<l&&a.type()!==g.Dummy){var h=this._objective.coefficientFor(a),u=h/l;u<e&&(e=u,i=a)}}return i},t.prototype._getLeavingSymbol=function(t){for(var e=Number.MAX_VALUE,i=w,n=this._rowMap,r=0,o=n.size();r<o;++r){var s=n.itemAt(r),a=s.first;if(a.type()!==g.External){var l=s.second,h=l.coefficientFor(t);if(h<0){var u=-l.constant()/h;u<e&&(e=u,i=a)}}}return i},t.prototype._getMarkerLeavingSymbol=function(t){for(var e=Number.MAX_VALUE,i=e,n=e,r=w,o=r,s=r,a=r,l=this._rowMap,h=0,u=l.size();h<u;++h){var c=l.itemAt(h),_=c.second,p=_.coefficientFor(t);if(0!==p){var d=c.first;if(d.type()===g.External)a=d;else if(p<0){var f=-_.constant()/p;f<i&&(i=f,o=d)}else{var f=_.constant()/p;f<n&&(n=f,s=d)}}}return o!==r?o:s!==r?s:a},t.prototype._removeConstraintEffects=function(t,e){e.marker.type()===g.Error&&this._removeMarkerEffects(e.marker,t.strength),e.other.type()===g.Error&&this._removeMarkerEffects(e.other,t.strength)},t.prototype._removeMarkerEffects=function(t,e){var i=this._rowMap.find(t);void 0!==i?this._objective.insertRow(i.second,-e):this._objective.insertSymbol(t,-e)},t.prototype._anyPivotableSymbol=function(t){for(var e=t.cells(),i=0,n=e.size();i<n;++i){var r=e.itemAt(i),o=r.first.type();if(o===g.Slack||o===g.Error)return r.first}return w},t.prototype._makeSymbol=function(t){return new h(t,this._idTick++)},t}();function x(t){return t<0?-t<1e-8:t<1e-8}i.Solver=l,(n=g||(g={}))[n.Invalid=0]=\"Invalid\",n[n.External=1]=\"External\",n[n.Slack=2]=\"Slack\",n[n.Error=3]=\"Error\",n[n.Dummy=4]=\"Dummy\";var h=function(){function t(t,e){this._id=e,this._type=t}return t.Compare=function(t,e){return t.id()-e.id()},t.prototype.id=function(){return this._id},t.prototype.type=function(){return this._type},t}(),w=new h(g.Invalid,-1),k=function(){function e(t){void 0===t&&(t=0),this._cellMap=o.createMap(h.Compare),this._constant=t}return e.prototype.cells=function(){return this._cellMap},e.prototype.constant=function(){return this._constant},e.prototype.isConstant=function(){return this._cellMap.empty()},e.prototype.allDummies=function(){for(var t=this._cellMap,e=0,i=t.size();e<i;++e){var n=t.itemAt(e);if(n.first.type()!==g.Dummy)return!1}return!0},e.prototype.copy=function(){var t=new e(this._constant);return t._cellMap=this._cellMap.copy(),t},e.prototype.add=function(t){return this._constant+=t},e.prototype.insertSymbol=function(t,e){void 0===e&&(e=1);var i=this._cellMap.setDefault(t,function(){return 0});x(i.second+=e)&&this._cellMap.erase(t)},e.prototype.insertRow=function(t,e){void 0===e&&(e=1),this._constant+=t._constant*e;for(var i=t._cellMap,n=0,r=i.size();n<r;++n){var o=i.itemAt(n);this.insertSymbol(o.first,o.second*e)}},e.prototype.removeSymbol=function(t){this._cellMap.erase(t)},e.prototype.reverseSign=function(){this._constant=-this._constant;for(var t=this._cellMap,e=0,i=t.size();e<i;++e){var n=t.itemAt(e);n.second=-n.second}},e.prototype.solveFor=function(t){var e=this._cellMap,i=e.erase(t),n=-1/i.second;this._constant*=n;for(var r=0,o=e.size();r<o;++r)e.itemAt(r).second*=n},e.prototype.solveForEx=function(t,e){this.insertSymbol(t,-1),this.solveFor(e)},e.prototype.coefficientFor=function(t){var e=this._cellMap.find(t);return void 0!==e?e.second:0},e.prototype.substitute=function(t,e){var i=this._cellMap.erase(t);void 0!==i&&this.insertRow(e,i.second)},e}()},function(t,e,i){!function(e){function t(t,e,i,n){void 0===n&&(n=1);var r=0;return r+=1e6*Math.max(0,Math.min(1e3,t*n)),r+=1e3*Math.max(0,Math.min(1e3,e*n)),r+=Math.max(0,Math.min(1e3,i*n))}e.create=t,e.required=t(1e3,1e3,1e3),e.strong=t(1,0,0),e.medium=t(0,1,0),e.weak=t(0,0,1),e.clip=function(t){return Math.max(0,Math.min(e.required,t))}}(i.Strength||(i.Strength={}))},function(t,e,i){var l=t(358);function o(t,e,i){for(var n,r,o=0,s=t.length;0<s;)i(t[r=o+(n=s>>1)],e)<0?(o=r+1,s-=n+1):s=n;return o}i.lowerBound=o,i.binarySearch=function(t,e,i){var n=o(t,e,i);if(n===t.length)return-1;var r=t[n];return 0!==i(r,e)?-1:n},i.binaryFind=function(t,e,i){var n=o(t,e,i);if(n!==t.length){var r=t[n];if(0===i(r,e))return r}},i.asSet=function(t,e){var i=l.asArray(t),n=i.length;if(n<=1)return i;i.sort(e);for(var r=[i[0]],o=1,s=0;o<n;++o){var a=i[o];0!==e(r[s],a)&&(r.push(a),++s)}return r},i.setIsDisjoint=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length;n<o&&r<s;){var a=i(t[n],e[r]);if(a<0)++n;else{if(!(0<a))return!1;++r}}return!0},i.setIsSubset=function(t,e,i){var n=t.length,r=e.length;if(r<n)return!1;for(var o=0,s=0;o<n&&s<r;){var a=i(t[o],e[s]);if(a<0)return!1;0<a||++o,++s}return!(o<n)},i.setUnion=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u?a.push(h):(a.push(l),++n),++r)}for(;n<o;)a.push(t[n]),++n;for(;r<s;)a.push(e[r]),++r;return a},i.setIntersection=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?++n:(0<u||(a.push(l),++n),++r)}return a},i.setDifference=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u||++n,++r)}for(;n<o;)a.push(t[n]),++n;return a},i.setSymmetricDifference=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u?a.push(h):++n,++r)}for(;n<o;)a.push(t[n]),++n;for(;r<s;)a.push(e[r]),++r;return a}},function(t,e,i){var n=t(358),r=function(){function t(){this._array=[]}return t.prototype.size=function(){return this._array.length},t.prototype.empty=function(){return 0===this._array.length},t.prototype.itemAt=function(t){return this._array[t]},t.prototype.takeAt=function(t){return this._array.splice(t,1)[0]},t.prototype.clear=function(){this._array=[]},t.prototype.swap=function(t){var e=this._array;this._array=t._array,t._array=e},t.prototype.__iter__=function(){return n.iter(this._array)},t.prototype.__reversed__=function(){return n.reversed(this._array)},t}();i.ArrayBase=r},function(t,e,i){\n",
1925
+       "      /*-----------------------------------------------------------------------------\n",
1926
+       "          | Copyright (c) 2014, Nucleic Development Team.\n",
1927
+       "          |\n",
1928
+       "          | Distributed under the terms of the Modified BSD License.\n",
1929
+       "          |\n",
1930
+       "          | The full license is in the file COPYING.txt, distributed with this software.\n",
1931
+       "          |----------------------------------------------------------------------------*/\n",
1932
+       "      var n,r=this&&this.__extends||(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),s=t(359),o=t(355),a=t(354),l=t(358),h=function(n){function o(t){var i,e=n.call(this)||this;return e._compare=t,e._wrapped=(i=t,function(t,e){return i(t.first,e)}),e}return r(o,n),o.prototype.comparitor=function(){return this._compare},o.prototype.indexOf=function(t){return a.binarySearch(this._array,t,this._wrapped)},o.prototype.contains=function(t){return 0<=a.binarySearch(this._array,t,this._wrapped)},o.prototype.find=function(t){return a.binaryFind(this._array,t,this._wrapped)},o.prototype.setDefault=function(t,e){var i=this._array,n=a.lowerBound(i,t,this._wrapped);if(n===i.length){var r=new s.Pair(t,e());return i.push(r),r}var o=i[n];if(0!==this._compare(o.first,t)){var r=new s.Pair(t,e());return i.splice(n,0,r),r}return o},o.prototype.insert=function(t,e){var i=this._array,n=a.lowerBound(i,t,this._wrapped);if(n===i.length){var r=new s.Pair(t,e);return i.push(r),r}var o=i[n];if(0!==this._compare(o.first,t)){var r=new s.Pair(t,e);return i.splice(n,0,r),r}return o.second=e,o},o.prototype.update=function(t){var e=this;t instanceof o?this._array=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l.first,h.first);u<0?(a.push(l.copy()),++n):(0<u?a.push(h.copy()):(a.push(h.copy()),++n),++r)}for(;n<o;)a.push(t[n].copy()),++n;for(;r<s;)a.push(e[r].copy()),++r;return a}(this._array,t._array,this._compare):l.forEach(t,function(t){e.insert(t.first,t.second)})},o.prototype.erase=function(t){var e=this._array,i=a.binarySearch(e,t,this._wrapped);if(!(i<0))return e.splice(i,1)[0]},o.prototype.copy=function(){for(var t=new o(this._compare),e=t._array,i=this._array,n=0,r=i.length;n<r;++n)e.push(i[n].copy());return t},o}(o.ArrayBase);i.AssociativeArray=h},function(t,e,i){function n(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}n(t(354)),n(t(355)),n(t(356)),n(t(358)),n(t(359))},function(t,e,i){var n=function(){function t(t,e){void 0===e&&(e=0),this._array=t,this._index=Math.max(0,Math.min(e,t.length))}return t.prototype.__next__=function(){return this._array[this._index++]},t.prototype.__iter__=function(){return this},t}();i.ArrayIterator=n;var r=function(){function t(t,e){void 0===e&&(e=t.length),this._array=t,this._index=Math.max(0,Math.min(e,t.length))}return t.prototype.__next__=function(){return this._array[--this._index]},t.prototype.__iter__=function(){return this},t}();i.ReverseArrayIterator=r,i.iter=function(t){return t instanceof Array?new n(t):t.__iter__()},i.reversed=function(t){return t instanceof Array?new r(t):t.__reversed__()},i.next=function(t){return t.__next__()},i.asArray=function(t){if(t instanceof Array)return t.slice();for(var e,i=[],n=t.__iter__();void 0!==(e=n.__next__());)i.push(e);return i},i.forEach=function(t,e){if(t instanceof Array){for(var i=0,n=t.length;i<n;++i)if(!1===e(t[i]))return}else for(var r,o=t.__iter__();void 0!==(r=o.__next__());)if(!1===e(r))return},i.map=function(t,e){var i=[];if(t instanceof Array)for(var n=0,r=t.length;n<r;++n)i.push(e(t[n]));else for(var o,s=t.__iter__();void 0!==(o=s.__next__());)i.push(e(o));return i},i.filter=function(t,e){var i,n=[];if(t instanceof Array)for(var r=0,o=t.length;r<o;++r)i=t[r],e(i)&&n.push(i);else for(var s=t.__iter__();void 0!==(i=s.__next__());)e(i)&&n.push(i);return n}},function(t,e,i){var n=function(){function t(t,e){this.first=t,this.second=e}return t.prototype.copy=function(){return new t(this.first,this.second)},t}();i.Pair=n},function(t,e,i){var n=function(){function t(t){void 0===t&&(t=\"\"),this._value=0,this._context=null,this._id=r++,this._name=t}return t.Compare=function(t,e){return t.id-e.id},t.prototype.toString=function(){return this._name},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"name\",{get:function(){return this._name},enumerable:!0,configurable:!0}),t.prototype.setName=function(t){this._name=t},Object.defineProperty(t.prototype,\"context\",{get:function(){return this._context},enumerable:!0,configurable:!0}),t.prototype.setContext=function(t){this._context=t},Object.defineProperty(t.prototype,\"value\",{get:function(){return this._value},enumerable:!0,configurable:!0}),t.prototype.setValue=function(t){this._value=t},t}();i.Variable=n;var r=0},function(t,e,i){\n",
1933
+       "      /*!\n",
1934
+       "           * numbro.js\n",
1935
+       "           * version : 1.6.2\n",
1936
+       "           * author : Företagsplatsen AB\n",
1937
+       "           * license : MIT\n",
1938
+       "           * http://www.foretagsplatsen.se\n",
1939
+       "           */\n",
1940
+       "      var u,U={},o=U,q=\"en-US\",Y=null,r=\"0,0\";function n(t){this._value=t}function p(t){var e,i=\"\";for(e=0;e<t;e++)i+=\"0\";return i}function X(t,e,i,n){var r,o,s,a,l,h,u,c,_=Math.pow(10,e);return o=-1<t.toFixed(0).search(\"e\")?(s=e,c=t.toString(),a=c.split(\"e\")[0],u=c.split(\"e\")[1],l=a.split(\".\")[0],h=a.split(\".\")[1]||\"\",c=l+h+p(u-h.length),0<s&&(c+=\".\"+p(s)),c):(i(t*_)/_).toFixed(e),n&&(r=new RegExp(\"0{1,\"+n+\"}$\"),o=o.replace(r,\"\")),o}function s(t,e,i){var n,r,o,s,a,l,h,u,c,_;return-1<e.indexOf(\"$\")?n=function(t,e,i){var n,r,o=e,s=o.indexOf(\"$\"),a=o.indexOf(\"(\"),l=o.indexOf(\"+\"),h=o.indexOf(\"-\"),u=\"\",c=\"\";if(-1===o.indexOf(\"$\")?\"infix\"===U[q].currency.position?(c=U[q].currency.symbol,U[q].currency.spaceSeparated&&(c=\" \"+c+\" \")):U[q].currency.spaceSeparated&&(u=\" \"):-1<o.indexOf(\" $\")?(u=\" \",o=o.replace(\" $\",\"\")):-1<o.indexOf(\"$ \")?(u=\" \",o=o.replace(\"$ \",\"\")):o=o.replace(\"$\",\"\"),r=d(t,o,i,c),-1===e.indexOf(\"$\"))switch(U[q].currency.position){case\"postfix\":-1<r.indexOf(\")\")?((r=r.split(\"\")).splice(-1,0,u+U[q].currency.symbol),r=r.join(\"\")):r=r+u+U[q].currency.symbol;break;case\"infix\":break;case\"prefix\":-1<r.indexOf(\"(\")||-1<r.indexOf(\"-\")?(r=r.split(\"\"),n=Math.max(a,h)+1,r.splice(n,0,U[q].currency.symbol+u),r=r.join(\"\")):r=U[q].currency.symbol+u+r;break;default:throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]')}else s<=1?-1<r.indexOf(\"(\")||-1<r.indexOf(\"+\")||-1<r.indexOf(\"-\")?(r=r.split(\"\"),n=1,(s<a||s<l||s<h)&&(n=0),r.splice(n,0,U[q].currency.symbol+u),r=r.join(\"\")):r=U[q].currency.symbol+u+r:-1<r.indexOf(\")\")?((r=r.split(\"\")).splice(-1,0,u+U[q].currency.symbol),r=r.join(\"\")):r=r+u+U[q].currency.symbol;return r}(t,e,i):-1<e.indexOf(\"%\")?(l=t,u=i,_=\"\",l*=100,-1<(h=e).indexOf(\" %\")?(_=\" \",h=h.replace(\" %\",\"\")):h=h.replace(\"%\",\"\"),-1<(c=d(l,h,u)).indexOf(\")\")?((c=c.split(\"\")).splice(-1,0,_+\"%\"),c=c.join(\"\")):c=c+_+\"%\",n=c):-1<e.indexOf(\":\")?(r=t,o=Math.floor(r/60/60),s=Math.floor((r-60*o*60)/60),a=Math.round(r-60*o*60-60*s),n=o+\":\"+(s<10?\"0\"+s:s)+\":\"+(a<10?\"0\"+a:a)):n=d(t,e,i),n}function d(t,e,i,n){var r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x,w,k=!1,S=!1,C=!1,T=\"\",A=!1,E=!1,M=!1,O=!1,z=!1,P=\"\",j=\"\",N=Math.abs(t),F=[\"B\",\"KiB\",\"MiB\",\"GiB\",\"TiB\",\"PiB\",\"EiB\",\"ZiB\",\"YiB\"],D=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\",\"ZB\",\"YB\"],I=\"\",R=!1,B=!1;if(0===t&&null!==Y)return Y;if(!isFinite(t))return\"\"+t;if(0===e.indexOf(\"{\")){var L=e.indexOf(\"}\");if(-1===L)throw Error('Format should also contain a \"}\"');f=e.slice(1,L),e=e.slice(L+1)}else f=\"\";if(e.indexOf(\"}\")===e.length-1){var V=e.indexOf(\"{\");if(-1===V)throw Error('Format should also contain a \"{\"');v=e.slice(V+1,-1),e=e.slice(0,V+1)}else v=\"\";if(w=-1===e.indexOf(\".\")?e.match(/([0-9]+).*/):e.match(/([0-9]+)\\..*/),x=null===w?-1:w[1].length,-1!==e.indexOf(\"-\")&&(R=!0),-1<e.indexOf(\"(\")?(k=!0,e=e.slice(1,-1)):-1<e.indexOf(\"+\")&&(S=!0,e=e.replace(/\\+/g,\"\")),-1<e.indexOf(\"a\")){if(p=e.split(\".\")[0].match(/[0-9]+/g)||[\"0\"],p=parseInt(p[0],10),A=0<=e.indexOf(\"aK\"),E=0<=e.indexOf(\"aM\"),M=0<=e.indexOf(\"aB\"),O=0<=e.indexOf(\"aT\"),z=A||E||M||O,-1<e.indexOf(\" a\")?(T=\" \",e=e.replace(\" a\",\"\")):e=e.replace(\"a\",\"\"),l=Math.floor(Math.log(N)/Math.LN10)+1,u=0==(u=l%3)?3:u,p&&0!==N&&(h=Math.floor(Math.log(N)/Math.LN10)+1-p,c=3*~~((Math.min(p,l)-u)/3),N/=Math.pow(10,c),-1===e.indexOf(\".\")&&3<p))for(e+=\"[.]\",y=(y=0===h?0:3*~~(h/3)-h)<0?y+3:y,r=0;r<y;r++)e+=\"0\";Math.floor(Math.log(Math.abs(t))/Math.LN10)+1!==p&&(N>=Math.pow(10,12)&&!z||O?(T+=U[q].abbreviations.trillion,t/=Math.pow(10,12)):N<Math.pow(10,12)&&N>=Math.pow(10,9)&&!z||M?(T+=U[q].abbreviations.billion,t/=Math.pow(10,9)):N<Math.pow(10,9)&&N>=Math.pow(10,6)&&!z||E?(T+=U[q].abbreviations.million,t/=Math.pow(10,6)):(N<Math.pow(10,6)&&N>=Math.pow(10,3)&&!z||A)&&(T+=U[q].abbreviations.thousand,t/=Math.pow(10,3)))}if(-1<e.indexOf(\"b\"))for(-1<e.indexOf(\" b\")?(P=\" \",e=e.replace(\" b\",\"\")):e=e.replace(\"b\",\"\"),a=0;a<=F.length;a++)if(o=Math.pow(1024,a),s=Math.pow(1024,a+1),o<=t&&t<s){P+=F[a],0<o&&(t/=o);break}if(-1<e.indexOf(\"d\"))for(-1<e.indexOf(\" d\")?(P=\" \",e=e.replace(\" d\",\"\")):e=e.replace(\"d\",\"\"),a=0;a<=D.length;a++)if(o=Math.pow(1e3,a),s=Math.pow(1e3,a+1),o<=t&&t<s){P+=D[a],0<o&&(t/=o);break}if(-1<e.indexOf(\"o\")&&(-1<e.indexOf(\" o\")?(j=\" \",e=e.replace(\" o\",\"\")):e=e.replace(\"o\",\"\"),U[q].ordinal&&(j+=U[q].ordinal(t))),-1<e.indexOf(\"[.]\")&&(C=!0,e=e.replace(\"[.]\",\".\")),_=t.toString().split(\".\")[0],d=e.split(\".\")[1],m=e.indexOf(\",\"),d){if(-1!==d.indexOf(\"*\")?I=X(t,t.toString().split(\".\")[1].length,i):-1<d.indexOf(\"[\")?(d=(d=d.replace(\"]\",\"\")).split(\"[\"),I=X(t,d[0].length+d[1].length,i,d[1].length)):I=X(t,d.length,i),_=I.split(\".\")[0],I.split(\".\")[1].length){var G=n?T+n:U[q].delimiters.decimal;I=G+I.split(\".\")[1]}else I=\"\";C&&0===Number(I.slice(1))&&(I=\"\")}else _=X(t,null,i);return-1<_.indexOf(\"-\")&&(_=_.slice(1),B=!0),_.length<x&&(_=new Array(x-_.length+1).join(\"0\")+_),-1<m&&(_=_.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g,\"$1\"+U[q].delimiters.thousands)),0===e.indexOf(\".\")&&(_=\"\"),g=e.indexOf(\"(\"),b=e.indexOf(\"-\"),f+(g<b?(k&&B?\"(\":\"\")+(R&&B||!k&&B?\"-\":\"\"):(R&&B||!k&&B?\"-\":\"\")+(k&&B?\"(\":\"\"))+(!B&&S&&0!==t?\"+\":\"\")+_+I+(j||\"\")+(T&&!n?T:\"\")+(P||\"\")+(k&&B?\")\":\"\")+v}function a(t,e){U[t]=e}function l(t){var e=U[q=t].defaults;e&&e.format&&u.defaultFormat(e.format),e&&e.currencyFormat&&u.defaultCurrencyFormat(e.currencyFormat)}void 0!==e&&e.exports,(u=function(t){return u.isNumbro(t)?t=t.value():0===t||void 0===t?t=0:Number(t)||(t=u.fn.unformat(t)),new n(Number(t))}).version=\"1.6.2\",u.isNumbro=function(t){return t instanceof n},u.setLanguage=function(t,e){console.warn(\"`setLanguage` is deprecated since version 1.6.0. Use `setCulture` instead\");var i=t,n=t.split(\"-\")[0],r=null;o[i]||(Object.keys(o).forEach(function(t){r||t.split(\"-\")[0]!==n||(r=t)}),i=r||e||\"en-US\"),l(i)},u.setCulture=function(t,e){var i=t,n=t.split(\"-\")[1],r=null;U[i]||(n&&Object.keys(U).forEach(function(t){r||t.split(\"-\")[1]!==n||(r=t)}),i=r||e||\"en-US\"),l(i)},u.language=function(t,e){if(console.warn(\"`language` is deprecated since version 1.6.0. Use `culture` instead\"),!t)return q;if(t&&!e){if(!o[t])throw new Error(\"Unknown language : \"+t);l(t)}return!e&&o[t]||a(t,e),u},u.culture=function(t,e){if(!t)return q;if(t&&!e){if(!U[t])throw new Error(\"Unknown culture : \"+t);l(t)}return!e&&U[t]||a(t,e),u},u.languageData=function(t){if(console.warn(\"`languageData` is deprecated since version 1.6.0. Use `cultureData` instead\"),!t)return o[q];if(!o[t])throw new Error(\"Unknown language : \"+t);return o[t]},u.cultureData=function(t){if(!t)return U[q];if(!U[t])throw new Error(\"Unknown culture : \"+t);return U[t]},u.culture(\"en-US\",{delimiters:{thousands:\",\",decimal:\".\"},abbreviations:{thousand:\"k\",million:\"m\",billion:\"b\",trillion:\"t\"},ordinal:function(t){var e=t%10;return 1==~~(t%100/10)?\"th\":1===e?\"st\":2===e?\"nd\":3===e?\"rd\":\"th\"},currency:{symbol:\"$\",position:\"prefix\"},defaults:{currencyFormat:\",0000 a\"},formats:{fourDigits:\"0000 a\",fullWithTwoDecimals:\"$ ,0.00\",fullWithTwoDecimalsNoCurrency:\",0.00\"}}),u.languages=function(){return console.warn(\"`languages` is deprecated since version 1.6.0. Use `cultures` instead\"),o},u.cultures=function(){return U},u.zeroFormat=function(t){Y=\"string\"==typeof t?t:null},u.defaultFormat=function(t){r=\"string\"==typeof t?t:\"0.0\"},u.defaultCurrencyFormat=function(t){},u.validate=function(t,e){var i,n,r,o,s,a,l,h;if(\"string\"!=typeof t&&(t+=\"\",console.warn&&console.warn(\"Numbro.js: Value is not string. It has been co-erced to: \",t)),(t=t.trim()).match(/^\\d+$/))return!0;if(\"\"===t)return!1;try{l=u.cultureData(e)}catch(t){l=u.cultureData(u.culture())}return r=l.currency.symbol,s=l.abbreviations,i=l.delimiters.decimal,n=\".\"===l.delimiters.thousands?\"\\\\.\":l.delimiters.thousands,!(null!==(h=t.match(/^[^\\d]+/))&&(t=t.substr(1),h[0]!==r)||null!==(h=t.match(/[^\\d]+$/))&&(t=t.slice(0,-1),h[0]!==s.thousand&&h[0]!==s.million&&h[0]!==s.billion&&h[0]!==s.trillion)||(a=new RegExp(n+\"{2}\"),t.match(/[^\\d.,]/g)||2<(o=t.split(i)).length||(o.length<2?!o[0].match(/^\\d+.*\\d$/)||o[0].match(a):1===o[0].length?!o[0].match(/^\\d+$/)||o[0].match(a)||!o[1].match(/^\\d+$/):!o[0].match(/^\\d+.*\\d$/)||o[0].match(a)||!o[1].match(/^\\d+$/))))},e.exports={format:function(t,e,i,n){return null!=i&&i!==u.culture()&&u.setCulture(i),s(Number(t),null!=e?e:r,null==n?Math.round:n)}}},function(t,e,i){var l=t(382),h=t(380),n=t(384),u=t(379),c=t(370),_=t(375);function p(t,e){if(!(this instanceof p))return new p(t);e=e||function(t){if(t)throw t};var i=l(t);if(\"object\"==typeof i){var n=p.projections.get(i.projName);if(n){if(i.datumCode&&\"none\"!==i.datumCode){var r=c[i.datumCode];r&&(i.datum_params=r.towgs84?r.towgs84.split(\",\"):null,i.ellps=r.ellipse,i.datumName=r.datumName?r.datumName:i.datumCode)}i.k0=i.k0||1,i.axis=i.axis||\"enu\";var o=u.sphere(i.a,i.b,i.rf,i.ellps,i.sphere),s=u.eccentricity(o.a,o.b,o.rf,i.R_A),a=i.datum||_(i.datumCode,i.datum_params,o.a,o.b,s.es,s.ep2);h(this,i),h(this,n),this.a=o.a,this.b=o.b,this.rf=o.rf,this.sphere=o.sphere,this.es=s.es,this.e=s.e,this.ep2=s.ep2,this.datum=a,this.init(),e(null,this)}else e(t)}else e(t)}(p.projections=n).start(),e.exports=p},function(t,e,i){e.exports=function(t,e,i){var n,r,o,s=i.x,a=i.y,l=i.z||0,h={};for(o=0;o<3;o++)if(!e||2!==o||void 0!==i.z)switch(0===o?(n=s,r=\"x\"):1===o?(n=a,r=\"y\"):(n=l,r=\"z\"),t.axis[o]){case\"e\":h[r]=n;break;case\"w\":h[r]=-n;break;case\"n\":h[r]=n;break;case\"s\":h[r]=-n;break;case\"u\":void 0!==i[r]&&(h.z=n);break;case\"d\":void 0!==i[r]&&(h.z=-n);break;default:return null}return h}},function(t,e,i){var n=2*Math.PI,r=t(367);e.exports=function(t){return Math.abs(t)<=3.14159265359?t:t-r(t)*n}},function(t,e,i){e.exports=function(t,e,i){var n=t*e;return i/Math.sqrt(1-n*n)}},function(t,e,i){var a=Math.PI/2;e.exports=function(t,e){for(var i,n,r=.5*t,o=a-2*Math.atan(e),s=0;s<=15;s++)if(i=t*Math.sin(o),n=a-2*Math.atan(e*Math.pow((1-i)/(1+i),r))-o,o+=n,Math.abs(n)<=1e-10)return o;return-9999}},function(t,e,i){e.exports=function(t){return t<0?-1:1}},function(t,e,i){e.exports=function(t){var e={x:t[0],y:t[1]};return 2<t.length&&(e.z=t[2]),3<t.length&&(e.m=t[3]),e}},function(t,e,i){var o=Math.PI/2;e.exports=function(t,e,i){var n=t*i,r=.5*t;return n=Math.pow((1-n)/(1+n),r),Math.tan(.5*(o-e))/n}},function(t,e,i){i.wgs84={towgs84:\"0,0,0\",ellipse:\"WGS84\",datumName:\"WGS84\"},i.ch1903={towgs84:\"674.374,15.056,405.346\",ellipse:\"bessel\",datumName:\"swiss\"},i.ggrs87={towgs84:\"-199.87,74.79,246.62\",ellipse:\"GRS80\",datumName:\"Greek_Geodetic_Reference_System_1987\"},i.nad83={towgs84:\"0,0,0\",ellipse:\"GRS80\",datumName:\"North_American_Datum_1983\"},i.nad27={nadgrids:\"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat\",ellipse:\"clrk66\",datumName:\"North_American_Datum_1927\"},i.potsdam={towgs84:\"606.0,23.0,413.0\",ellipse:\"bessel\",datumName:\"Potsdam Rauenberg 1950 DHDN\"},i.carthage={towgs84:\"-263.0,6.0,431.0\",ellipse:\"clark80\",datumName:\"Carthage 1934 Tunisia\"},i.hermannskogel={towgs84:\"653.0,-212.0,449.0\",ellipse:\"bessel\",datumName:\"Hermannskogel\"},i.ire65={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"mod_airy\",datumName:\"Ireland 1965\"},i.rassadiran={towgs84:\"-133.63,-157.5,-158.62\",ellipse:\"intl\",datumName:\"Rassadiran\"},i.nzgd49={towgs84:\"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993\",ellipse:\"intl\",datumName:\"New Zealand Geodetic Datum 1949\"},i.osgb36={towgs84:\"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894\",ellipse:\"airy\",datumName:\"Airy 1830\"},i.s_jtsk={towgs84:\"589,76,480\",ellipse:\"bessel\",datumName:\"S-JTSK (Ferro)\"},i.beduaram={towgs84:\"-106,-87,188\",ellipse:\"clrk80\",datumName:\"Beduaram\"},i.gunung_segara={towgs84:\"-403,684,41\",ellipse:\"bessel\",datumName:\"Gunung Segara Jakarta\"},i.rnb72={towgs84:\"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1\",ellipse:\"intl\",datumName:\"Reseau National Belge 1972\"}},function(t,e,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\"},i.WGS84={a:6378137,rf:298.257223563,ellipseName:\"WGS 84\"},i.sphere={a:6370997,b:6370997,ellipseName:\"Normal Sphere (r=6370997)\"}},function(t,e,i){i.greenwich=0,i.lisbon=-9.131906111111,i.paris=2.337229166667,i.bogota=-74.080916666667,i.madrid=-3.687938888889,i.rome=12.452333333333,i.bern=7.439583333333,i.jakarta=106.807719444444,i.ferro=-17.666666666667,i.brussels=4.367975,i.stockholm=18.058277777778,i.athens=23.7163375,i.oslo=10.722916666667},function(t,e,i){i.ft={to_meter:.3048},i[\"us-ft\"]={to_meter:1200/3937}},function(t,e,i){var n=t(362),r=t(387),o=n(\"WGS84\");function s(t,e,i){var n;return Array.isArray(i)?(n=r(t,e,i),3===i.length?[n.x,n.y,n.z]:[n.x,n.y]):r(t,e,i)}function a(t){return t instanceof n?t:t.oProj?t.oProj:n(t)}e.exports=function(e,i,t){e=a(e);var n,r=!1;return void 0===i?(i=e,e=o,r=!0):(void 0!==i.x||Array.isArray(i))&&(t=i,i=e,e=o,r=!0),i=a(i),t?s(e,i,t):(n={forward:function(t){return s(e,i,t)},inverse:function(t){return s(i,e,t)}},r&&(n.oProj=i),n)}},function(t,e,i){var a=484813681109536e-20;e.exports=function(t,e,i,n,r,o){var s={datum_type:4};return t&&\"none\"===t&&(s.datum_type=5),e&&(s.datum_params=e.map(parseFloat),0===s.datum_params[0]&&0===s.datum_params[1]&&0===s.datum_params[2]||(s.datum_type=1),3<s.datum_params.length&&(0===s.datum_params[3]&&0===s.datum_params[4]&&0===s.datum_params[5]&&0===s.datum_params[6]||(s.datum_type=2,s.datum_params[3]*=a,s.datum_params[4]*=a,s.datum_params[5]*=a,s.datum_params[6]=s.datum_params[6]/1e6+1))),s.a=i,s.b=n,s.es=r,s.ep2=o,s}},function(t,e,i){var k=Math.PI/2;i.compareDatums=function(t,e){return t.datum_type===e.datum_type&&!(t.a!==e.a||5e-11<Math.abs(this.es-e.es))&&(1===t.datum_type?this.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]:2!==t.datum_type||t.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]&&t.datum_params[3]===e.datum_params[3]&&t.datum_params[4]===e.datum_params[4]&&t.datum_params[5]===e.datum_params[5]&&t.datum_params[6]===e.datum_params[6])},i.geodeticToGeocentric=function(t,e,i){var n,r,o,s,a=t.x,l=t.y,h=t.z?t.z:0;if(l<-k&&-1.001*k<l)l=-k;else if(k<l&&l<1.001*k)l=k;else if(l<-k||k<l)return null;return a>Math.PI&&(a-=2*Math.PI),r=Math.sin(l),s=Math.cos(l),o=r*r,{x:((n=i/Math.sqrt(1-e*o))+h)*s*Math.cos(a),y:(n+h)*s*Math.sin(a),z:(n*(1-e)+h)*r}},i.geocentricToGeodetic=function(t,e,i,n){var r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b=t.x,x=t.y,w=t.z?t.z:0;if(r=Math.sqrt(b*b+x*x),o=Math.sqrt(b*b+x*x+w*w),r/i<1e-12){if(m=0,o/i<1e-12)return g=k,y=-n,{x:t.x,y:t.y,z:t.z}}else m=Math.atan2(x,b);for(s=w/o,a=r/o,l=1/Math.sqrt(1-e*(2-e)*a*a),c=a*(1-e)*l,_=s*l,v=0;v++,u=i/Math.sqrt(1-e*_*_),h=e*u/(u+(y=r*c+w*_-u*(1-e*_*_))),l=1/Math.sqrt(1-h*(2-h)*a*a),f=(d=s*l)*c-(p=a*(1-h)*l)*_,c=p,_=d,1e-24<f*f&&v<30;);return g=Math.atan(d/Math.abs(p)),{x:m,y:g,z:y}},i.geocentricToWgs84=function(t,e,i){if(1===e)return{x:t.x+i[0],y:t.y+i[1],z:t.z+i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6];return{x:h*(t.x-l*t.y+a*t.z)+n,y:h*(l*t.x+t.y-s*t.z)+r,z:h*(-a*t.x+s*t.y+t.z)+o}}},i.geocentricFromWgs84=function(t,e,i){if(1===e)return{x:t.x-i[0],y:t.y-i[1],z:t.z-i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6],u=(t.x-n)/h,c=(t.y-r)/h,_=(t.z-o)/h;return{x:u+l*c-a*_,y:-l*u+c+s*_,z:a*u-s*c+_}}}},function(t,e,i){var n=t(376);function r(t){return 1===t||2===t}e.exports=function(t,e,i){return n.compareDatums(t,e)?i:5===t.datum_type||5===e.datum_type?i:t.es!==e.es||t.a!==e.a||r(t.datum_type)||r(e.datum_type)?(i=n.geodeticToGeocentric(i,t.es,t.a),r(t.datum_type)&&(i=n.geocentricToWgs84(i,t.datum_type,t.datum_params)),r(e.datum_type)&&(i=n.geocentricFromWgs84(i,e.datum_type,e.datum_params)),n.geocentricToGeodetic(i,e.es,e.a,e.b)):i}},function(t,e,i){var n=t(381),r=t(383),o=t(388);function s(t){var e=this;if(2===arguments.length){var i=arguments[1];s[t]=\"string\"==typeof i?\"+\"===i.charAt(0)?r(arguments[1]):o(arguments[1]):i}else if(1===arguments.length){if(Array.isArray(t))return t.map(function(t){Array.isArray(t)?s.apply(e,t):s(t)});if(\"string\"==typeof t){if(t in s)return s[t]}else\"EPSG\"in t?s[\"EPSG:\"+t.EPSG]=t:\"ESRI\"in t?s[\"ESRI:\"+t.ESRI]=t:\"IAU2000\"in t?s[\"IAU2000:\"+t.IAU2000]=t:console.log(t);return}}n(s),e.exports=s},function(t,e,i){var s=t(371);i.eccentricity=function(t,e,i,n){var r=t*t,o=e*e,s=(r-o)/r,a=0;n?(r=(t*=1-s*(.16666666666666666+s*(.04722222222222222+.022156084656084655*s)))*t,s=0):a=Math.sqrt(s);var l=(r-o)/o;return{es:s,e:a,ep2:l}},i.sphere=function(t,e,i,n,r){if(!t){var o=s[n];o||(o=s.WGS84),t=o.a,e=o.b,i=o.rf}return i&&!e&&(e=(1-1/i)*t),(0===i||Math.abs(t-e)<1e-10)&&(r=!0,e=t),{a:t,b:e,rf:i,sphere:r}}},function(t,e,i){e.exports=function(t,e){var i,n;if(t=t||{},!e)return t;for(n in e)void 0!==(i=e[n])&&(t[n]=i);return t}},function(t,e,i){e.exports=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\"]}},function(t,e,i){var n=t(378),r=t(388),o=t(383),s=[\"GEOGCS\",\"GEOCCS\",\"PROJCS\",\"LOCAL_CS\"];e.exports=function(t){return\"string\"!=typeof t?t:t in n?n[t]:(e=t,s.some(function(t){return-1<e.indexOf(t)})?r(t):\"+\"===t[0]?o(t):void 0);var e}},function(t,e,i){var a=.017453292519943295,l=t(372),h=t(373);e.exports=function(t){var e,i,n,r={},o=t.split(\"+\").map(function(t){return t.trim()}).filter(function(t){return t}).reduce(function(t,e){var i=e.split(\"=\");return i.push(!0),t[i[0].toLowerCase()]=i[1],t},{}),s={proj:\"projName\",datum:\"datumCode\",rf:function(t){r.rf=parseFloat(t)},lat_0:function(t){r.lat0=t*a},lat_1:function(t){r.lat1=t*a},lat_2:function(t){r.lat2=t*a},lat_ts:function(t){r.lat_ts=t*a},lon_0:function(t){r.long0=t*a},lon_1:function(t){r.long1=t*a},lon_2:function(t){r.long2=t*a},alpha:function(t){r.alpha=parseFloat(t)*a},lonc:function(t){r.longc=t*a},x_0:function(t){r.x0=parseFloat(t)},y_0:function(t){r.y0=parseFloat(t)},k_0:function(t){r.k0=parseFloat(t)},k:function(t){r.k0=parseFloat(t)},a:function(t){r.a=parseFloat(t)},b:function(t){r.b=parseFloat(t)},r_a:function(){r.R_A=!0},zone:function(t){r.zone=parseInt(t,10)},south:function(){r.utmSouth=!0},towgs84:function(t){r.datum_params=t.split(\",\").map(function(t){return parseFloat(t)})},to_meter:function(t){r.to_meter=parseFloat(t)},units:function(t){r.units=t,h[t]&&(r.to_meter=h[t].to_meter)},from_greenwich:function(t){r.from_greenwich=t*a},pm:function(t){r.from_greenwich=(l[t]?l[t]:parseFloat(t))*a},nadgrids:function(t){\"@null\"===t?r.datumCode=\"none\":r.nadgrids=t},axis:function(t){var e=\"ewnsud\";3===t.length&&-1!==e.indexOf(t.substr(0,1))&&-1!==e.indexOf(t.substr(1,1))&&-1!==e.indexOf(t.substr(2,1))&&(r.axis=t)}};for(e in o)i=o[e],e in s?\"function\"==typeof(n=s[e])?n(i):r[n]=i:r[e]=i;return\"string\"==typeof r.datumCode&&\"WGS84\"!==r.datumCode&&(r.datumCode=r.datumCode.toLowerCase()),r}},function(t,e,i){var n=[t(386),t(385)],r={},o=[];function s(t,e){var i=o.length;return t.names?((o[i]=t).names.forEach(function(t){r[t.toLowerCase()]=i}),this):(console.log(e),!0)}i.add=s,i.get=function(t){if(!t)return!1;var e=t.toLowerCase();return void 0!==r[e]&&o[r[e]]?o[r[e]]:void 0},i.start=function(){n.forEach(s)}},function(t,e,i){function n(t){return t}i.init=function(){},i.forward=n,i.inverse=n,i.names=[\"longlat\",\"identity\"]},function(t,e,i){var n=t(365),a=Math.PI/2,l=57.29577951308232,h=t(364),u=Math.PI/4,c=t(369),s=t(366);i.init=function(){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=n(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)},i.forward=function(t){var e,i,n=t.x,r=t.y;if(90<r*l&&r*l<-90&&180<n*l&&n*l<-180)return null;if(Math.abs(Math.abs(r)-a)<=1e-10)return null;if(this.sphere)e=this.x0+this.a*this.k0*h(n-this.long0),i=this.y0+this.a*this.k0*Math.log(Math.tan(u+.5*r));else{var o=Math.sin(r),s=c(this.e,r,o);e=this.x0+this.a*this.k0*h(n-this.long0),i=this.y0-this.a*this.k0*Math.log(s)}return t.x=e,t.y=i,t},i.inverse=function(t){var e,i,n=t.x-this.x0,r=t.y-this.y0;if(this.sphere)i=a-2*Math.atan(Math.exp(-r/(this.a*this.k0)));else{var o=Math.exp(-r/(this.a*this.k0));if(-9999===(i=s(this.e,o)))return null}return e=h(this.long0+n/(this.a*this.k0)),t.x=e,t.y=i,t},i.names=[\"Mercator\",\"Popular Visualisation Pseudo Mercator\",\"Mercator_1SP\",\"Mercator_Auxiliary_Sphere\",\"merc\"]},function(t,e,i){var a=.017453292519943295,l=57.29577951308232,h=t(377),u=t(363),c=t(362),_=t(368);e.exports=function t(e,i,n){var r,o,s;return Array.isArray(n)&&(n=_(n)),e.datum&&i.datum&&(s=i,(1===(o=e).datum.datum_type||2===o.datum.datum_type)&&\"WGS84\"!==s.datumCode||(1===s.datum.datum_type||2===s.datum.datum_type)&&\"WGS84\"!==o.datumCode)&&(r=new c(\"WGS84\"),n=t(e,r,n),e=r),\"enu\"!==e.axis&&(n=u(e,!1,n)),\"longlat\"===e.projName?n={x:n.x*a,y:n.y*a}:(e.to_meter&&(n={x:n.x*e.to_meter,y:n.y*e.to_meter}),n=e.inverse(n)),e.from_greenwich&&(n.x+=e.from_greenwich),n=h(e.datum,i.datum,n),i.from_greenwich&&(n={x:n.x-i.grom_greenwich,y:n.y}),\"longlat\"===i.projName?n={x:n.x*l,y:n.y*l}:(n=i.forward(n),i.to_meter&&(n={x:n.x/i.to_meter,y:n.y/i.to_meter})),\"enu\"!==i.axis?u(i,!0,n):n}},function(t,e,i){var n=.017453292519943295,s=t(380);function r(t,e,i){t[e]=i.map(function(t){var e={};return a(t,e),e}).reduce(function(t,e){return s(t,e)},{})}function a(t,e){var i;Array.isArray(t)?(\"PARAMETER\"===(i=t.shift())&&(i=t.shift()),1===t.length?Array.isArray(t[0])?(e[i]={},a(t[0],e[i])):e[i]=t[0]:t.length?\"TOWGS84\"===i?e[i]=t:(e[i]={},-1<[\"UNIT\",\"PRIMEM\",\"VERT_DATUM\"].indexOf(i)?(e[i]={name:t[0].toLowerCase(),convert:t[1]},3===t.length&&(e[i].auth=t[2])):\"SPHEROID\"===i?(e[i]={name:t[0],a:t[1],rf:t[2]},4===t.length&&(e[i].auth=t[3])):-1<[\"GEOGCS\",\"GEOCCS\",\"DATUM\",\"VERT_CS\",\"COMPD_CS\",\"LOCAL_CS\",\"FITTED_CS\",\"LOCAL_DATUM\"].indexOf(i)?(t[0]=[\"name\",t[0]],r(e,i,t)):t.every(function(t){return Array.isArray(t)})?r(e,i,t):a(t,e[i])):e[i]=!0):e[t]=!0}function l(t){return t*n}e.exports=function(t,e){var i=JSON.parse((\",\"+t).replace(/\\s*\\,\\s*([A-Z_0-9]+?)(\\[)/g,',[\"$1\",').slice(1).replace(/\\s*\\,\\s*([A-Z_0-9]+?)\\]/g,',\"$1\"]').replace(/,\\[\"VERTCS\".+/,\"\")),n=i.shift(),r=i.shift();i.unshift([\"name\",r]),i.unshift([\"type\",n]),i.unshift(\"output\");var o={};return a(i,o),function(o){function t(t){var e=o.to_meter||1;return parseFloat(t,10)*e}\"GEOGCS\"===o.type?o.projName=\"longlat\":\"LOCAL_CS\"===o.type?(o.projName=\"identity\",o.local=!0):\"object\"==typeof o.PROJECTION?o.projName=Object.keys(o.PROJECTION)[0]:o.projName=o.PROJECTION,o.UNIT&&(o.units=o.UNIT.name.toLowerCase(),\"metre\"===o.units&&(o.units=\"meter\"),o.UNIT.convert&&(\"GEOGCS\"===o.type?o.DATUM&&o.DATUM.SPHEROID&&(o.to_meter=parseFloat(o.UNIT.convert,10)*o.DATUM.SPHEROID.a):o.to_meter=parseFloat(o.UNIT.convert,10))),o.GEOGCS&&(o.GEOGCS.DATUM?o.datumCode=o.GEOGCS.DATUM.name.toLowerCase():o.datumCode=o.GEOGCS.name.toLowerCase(),\"d_\"===o.datumCode.slice(0,2)&&(o.datumCode=o.datumCode.slice(2)),\"new_zealand_geodetic_datum_1949\"!==o.datumCode&&\"new_zealand_1949\"!==o.datumCode||(o.datumCode=\"nzgd49\"),\"wgs_1984\"===o.datumCode&&(\"Mercator_Auxiliary_Sphere\"===o.PROJECTION&&(o.sphere=!0),o.datumCode=\"wgs84\"),\"_ferro\"===o.datumCode.slice(-6)&&(o.datumCode=o.datumCode.slice(0,-6)),\"_jakarta\"===o.datumCode.slice(-8)&&(o.datumCode=o.datumCode.slice(0,-8)),~o.datumCode.indexOf(\"belge\")&&(o.datumCode=\"rnb72\"),o.GEOGCS.DATUM&&o.GEOGCS.DATUM.SPHEROID&&(o.ellps=o.GEOGCS.DATUM.SPHEROID.name.replace(\"_19\",\"\").replace(/[Cc]larke\\_18/,\"clrk\"),\"international\"===o.ellps.toLowerCase().slice(0,13)&&(o.ellps=\"intl\"),o.a=o.GEOGCS.DATUM.SPHEROID.a,o.rf=parseFloat(o.GEOGCS.DATUM.SPHEROID.rf,10)),~o.datumCode.indexOf(\"osgb_1936\")&&(o.datumCode=\"osgb36\")),o.b&&!isFinite(o.b)&&(o.b=o.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\"],[\"lat0\",\"latitude_of_center\",l],[\"longitude_of_center\",\"Longitude_Of_Center\"],[\"longc\",\"longitude_of_center\",l],[\"x0\",\"false_easting\",t],[\"y0\",\"false_northing\",t],[\"long0\",\"central_meridian\",l],[\"lat0\",\"latitude_of_origin\",l],[\"lat0\",\"standard_parallel_1\",l],[\"lat1\",\"standard_parallel_1\",l],[\"lat2\",\"standard_parallel_2\",l],[\"alpha\",\"azimuth\",l],[\"srsCode\",\"name\"]].forEach(function(t){return e=o,n=(i=t)[0],r=i[1],void(!(n in e)&&r in e&&(e[n]=e[r],3===i.length&&(e[n]=i[2](e[n]))));var e,i,n,r}),o.long0||!o.longc||\"Albers_Conic_Equal_Area\"!==o.projName&&\"Lambert_Azimuthal_Equal_Area\"!==o.projName||(o.long0=o.longc),o.lat_ts||!o.lat1||\"Stereographic_South_Pole\"!==o.projName&&\"Polar Stereographic (variant B)\"!==o.projName||(o.lat0=l(0<o.lat1?90:-90),o.lat_ts=o.lat1)}(o.output),s(e,o.output)}},function(t,e,i){!function(){\"use strict\";var d={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 f(t){return function(t,e){var i,n,r,o,s,a,l,h,u,c=1,_=t.length,p=\"\";for(n=0;n<_;n++)if(\"string\"==typeof t[n])p+=t[n];else if(Array.isArray(t[n])){if((o=t[n])[2])for(i=e[c],r=0;r<o[2].length;r++){if(!i.hasOwnProperty(o[2][r]))throw new Error(f('[sprintf] property \"%s\" does not exist',o[2][r]));i=i[o[2][r]]}else i=o[1]?e[o[1]]:e[c++];if(d.not_type.test(o[8])&&d.not_primitive.test(o[8])&&i instanceof Function&&(i=i()),d.numeric_arg.test(o[8])&&\"number\"!=typeof i&&isNaN(i))throw new TypeError(f(\"[sprintf] expecting number but found %T\",i));switch(d.number.test(o[8])&&(h=0<=i),o[8]){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[6]?parseInt(o[6]):0);break;case\"e\":i=o[7]?parseFloat(i).toExponential(o[7]):parseFloat(i).toExponential();break;case\"f\":i=o[7]?parseFloat(i).toFixed(o[7]):parseFloat(i);break;case\"g\":i=o[7]?String(Number(i.toPrecision(o[7]))):parseFloat(i);break;case\"o\":i=(parseInt(i,10)>>>0).toString(8);break;case\"s\":i=String(i),i=o[7]?i.substring(0,o[7]):i;break;case\"t\":i=String(!!i),i=o[7]?i.substring(0,o[7]):i;break;case\"T\":i=Object.prototype.toString.call(i).slice(8,-1).toLowerCase(),i=o[7]?i.substring(0,o[7]):i;break;case\"u\":i=parseInt(i,10)>>>0;break;case\"v\":i=i.valueOf(),i=o[7]?i.substring(0,o[7]):i;break;case\"x\":i=(parseInt(i,10)>>>0).toString(16);break;case\"X\":i=(parseInt(i,10)>>>0).toString(16).toUpperCase()}d.json.test(o[8])?p+=i:(!d.number.test(o[8])||h&&!o[3]?u=\"\":(u=h?\"+\":\"-\",i=i.toString().replace(d.sign,\"\")),a=o[4]?\"0\"===o[4]?\"0\":o[4].charAt(1):\" \",l=o[6]-(u+i).length,s=o[6]&&0<l?a.repeat(l):\"\",p+=o[5]?u+i+s:\"0\"===a?u+s+i:s+u+i)}return p}(function(t){if(l[t])return l[t];for(var e,i=t,n=[],r=0;i;){if(null!==(e=d.text.exec(i)))n.push(e[0]);else if(null!==(e=d.modulo.exec(i)))n.push(\"%\");else{if(null===(e=d.placeholder.exec(i)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(e[2]){r|=1;var o=[],s=e[2],a=[];if(null===(a=d.key.exec(s)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o.push(a[1]);\"\"!==(s=s.substring(a[0].length));)if(null!==(a=d.key_access.exec(s)))o.push(a[1]);else{if(null===(a=d.index_access.exec(s)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o.push(a[1])}e[2]=o}else r|=2;if(3===r)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");n.push(e)}i=i.substring(e[0].length)}return l[t]=n}(t),arguments)}function t(t,e){return f.apply(null,[t].concat(e||[]))}var l=Object.create(null);void 0!==i&&(i.sprintf=f,i.vsprintf=t),\"undefined\"!=typeof window&&(window.sprintf=f,window.vsprintf=t)}()},function(t,e,i){!function(t){\"object\"==typeof e&&e.exports?e.exports=t():this.tz=t()}(function(){function d(t,e,i){for(var n,r=e.day[1];n=new Date(Date.UTC(i,e.month,Math.abs(r++))),e.day[0]<7&&n.getUTCDay()!=e.day[0];);return(n={clock:e.clock,sort:n.getTime(),rule:e,save:6e4*e.save,offset:t.offset})[n.clock]=n.sort+6e4*e.time,n.posix?n.wallclock=n[n.clock]+(t.offset+e.saved):n.posix=n[n.clock]-(t.offset+e.saved),n}function r(t,e,i){var n,r,o,s,a,l,h,u=t[t.zone],c=[],_=new Date(i).getUTCFullYear(),p=1;for(n=1,r=u.length;n<r&&!(u[n][e]<=i);n++);if((o=u[n]).rules){for(l=t[o.rules],h=_+1;_-p<=h;--h)for(n=0,r=l.length;n<r;n++)l[n].from<=h&&h<=l[n].to?c.push(d(o,l[n],h)):l[n].to<h&&1==p&&(p=h-l[n].to);for(c.sort(function(t,e){return t.sort-e.sort}),n=0,r=c.length;n<r;n++)i>=c[n][e]&&c[n][c[n].clock]>o[c[n].clock]&&(s=c[n])}return s&&((a=/^(.*)\\/(.*)$/.exec(o.format))?s.abbrev=a[s.save?2:1]:s.abbrev=o.format.replace(/%s/,s.rule.letter)),s||o}function a(t,e){return\"UTC\"==t.zone?e:(t.entry=r(t,\"posix\",e),e+t.entry.offset+t.entry.save)}function c(t,e){return\"UTC\"==t.zone?e:(t.entry=i=r(t,\"wallclock\",e),0<(n=e-i.wallclock)&&n<i.save?null:e-i.offset-i.save);var i,n}function o(t,e,i){var n,r=+(i[1]+1),o=i[2]*r,s=l.indexOf(i[3].toLowerCase());if(9<s)e+=o*h[s-10];else{if(n=new Date(a(t,e)),s<7)for(;o;)n.setUTCDate(n.getUTCDate()+r),n.getUTCDay()==s&&(o-=r);else 7==s?n.setUTCFullYear(n.getUTCFullYear()+o):8==s?n.setUTCMonth(n.getUTCMonth()+o):n.setUTCDate(n.getUTCDate()+o);null==(e=c(t,n.getTime()))&&(e=c(t,n.getTime()+864e5*r)-864e5*r)}return e}var e={clock:function(){return+new Date},zone:\"UTC\",entry:{abbrev:\"UTC\",offset:0,save:0},UTC:1,z:function(t,e,i,n){var r,o,s=this.entry.offset+this.entry.save,a=Math.abs(s/1e3),l=[],h=3600;for(r=0;r<3;r++)l.push((\"0\"+Math.floor(a/h)).slice(-2)),a%=h,h/=60;return\"^\"!=i||s?(\"^\"==i&&(n=3),3==n?(o=(o=l.join(\":\")).replace(/:00$/,\"\"),\"^\"!=i&&(o=o.replace(/:00$/,\"\"))):n?(o=l.slice(0,n+1).join(\":\"),\"^\"==i&&(o=o.replace(/:00$/,\"\"))):o=l.slice(0,2).join(\"\"),o=(o=(s<0?\"-\":\"+\")+o).replace(/([-+])(0)/,{_:\" $1\",\"-\":\"$1\"}[i]||\"$1$2\")):\"Z\"},\"%\":function(t){return\"%\"},n:function(t){return\"\\n\"},t:function(t){return\"\\t\"},U:function(t){return u(t,0)},W:function(t){return u(t,1)},V:function(t){return i(t)[0]},G:function(t){return i(t)[1]},g:function(t){return i(t)[1]%100},j:function(t){return Math.floor((t.getTime()-Date.UTC(t.getUTCFullYear(),0))/864e5)+1},s:function(t){return Math.floor(t.getTime()/1e3)},C:function(t){return Math.floor(t.getUTCFullYear()/100)},N:function(t){return t.getTime()%1e3*1e6},m:function(t){return t.getUTCMonth()+1},Y:function(t){return t.getUTCFullYear()},y:function(t){return t.getUTCFullYear()%100},H:function(t){return t.getUTCHours()},M:function(t){return t.getUTCMinutes()},S:function(t){return t.getUTCSeconds()},e:function(t){return t.getUTCDate()},d:function(t){return t.getUTCDate()},u:function(t){return t.getUTCDay()||7},w:function(t){return t.getUTCDay()},l:function(t){return t.getUTCHours()%12||12},I:function(t){return t.getUTCHours()%12||12},k:function(t){return t.getUTCHours()},Z:function(t){return this.entry.abbrev},a:function(t){return this[this.locale].day.abbrev[t.getUTCDay()]},A:function(t){return this[this.locale].day.full[t.getUTCDay()]},h:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},b:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},B:function(t){return this[this.locale].month.full[t.getUTCMonth()]},P:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)].toLowerCase()},p:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)]},R:function(t,e){return this.convert([e,\"%H:%M\"])},T:function(t,e){return this.convert([e,\"%H:%M:%S\"])},D:function(t,e){return this.convert([e,\"%m/%d/%y\"])},F:function(t,e){return this.convert([e,\"%Y-%m-%d\"])},x:function(t,e){return this.convert([e,this[this.locale].date])},r:function(t,e){return this.convert([e,this[this.locale].time12||\"%I:%M:%S\"])},X:function(t,e){return this.convert([e,this[this.locale].time24])},c:function(t,e){return this.convert([e,this[this.locale].dateTime])},convert:function(t){if(!t.length)return\"1.0.13\";var e,i,l,n,h,u=Object.create(this),r=[];for(e=0;e<t.length;e++)if(n=t[e],Array.isArray(n))e||isNaN(n[1])?n.splice.apply(t,[e--,1].concat(n)):h=n;else if(isNaN(n)){if(\"string\"==(l=typeof n))~n.indexOf(\"%\")?u.format=n:e||\"*\"!=n?!e&&(l=/^(\\d{4})-(\\d{2})-(\\d{2})(?:[T\\s](\\d{2}):(\\d{2})(?::(\\d{2})(?:\\.(\\d+))?)?(Z|(([+-])(\\d{2}(:\\d{2}){0,2})))?)?$/.exec(n))?((h=[]).push.apply(h,l.slice(1,8)),l[9]?(h.push(l[10]+1),h.push.apply(h,l[11].split(/:/))):l[8]&&h.push(1)):/^\\w{2,3}_\\w{2}$/.test(n)?u.locale=n:(l=s.exec(n))?r.push(l):u.zone=n:h=n;else if(\"function\"==l){if(l=n.call(u))return l}else if(/^\\w{2,3}_\\w{2}$/.test(n.name))u[n.name]=n;else if(n.zones){for(l in n.zones)u[l]=n.zones[l];for(l in n.rules)u[l]=n.rules[l]}}else e||(h=n);if(u[u.locale]||delete u.locale,u[u.zone]||delete u.zone,null!=h){if(\"*\"==h)h=u.clock();else if(Array.isArray(h)){for(l=[],i=!h[7],e=0;e<11;e++)l[e]=+(h[e]||0);--l[1],h=Date.UTC.apply(Date.UTC,l)+-l[7]*(36e5*l[8]+6e4*l[9]+1e3*l[10])}else h=Math.floor(h);if(!isNaN(h)){if(i&&(h=c(u,h)),null==h)return h;for(e=0,i=r.length;e<i;e++)h=o(u,h,r[e]);return u.format?(l=new Date(a(u,h)),u.format.replace(/%([-0_^]?)(:{0,3})(\\d*)(.)/g,function(t,e,i,n,r){var o,s,a=\"0\";if(o=u[r]){for(t=String(o.call(u,l,h,e,i.length)),\"_\"==(e||o.style)&&(a=\" \"),s=\"-\"==e?0:o.pad||0;t.length<s;)t=a+t;for(s=\"-\"==e?0:n||o.pad;t.length<s;)t=a+t;\"N\"==r&&s<t.length&&(t=t.slice(0,s)),\"^\"==e&&(t=t.toUpperCase())}return t})):h}}return function(){return u.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(\"|\")}}},l=\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|year|month|day|hour|minute|second|millisecond\",s=new RegExp(\"^\\\\s*([+-])(\\\\d+)\\\\s+(\"+l+\")s?\\\\s*$\",\"i\"),h=[36e5,6e4,1e3,1];function u(t,e){var i,n,r;return n=new Date(Date.UTC(t.getUTCFullYear(),0)),i=Math.floor((t.getTime()-n.getTime())/864e5),n.getUTCDay()==e?r=0:8==(r=7-n.getUTCDay()+e)&&(r=1),r<=i?Math.floor((i-r)/7)+1:0}function i(t){var e,i,n;return i=t.getUTCFullYear(),e=new Date(Date.UTC(i,0)).getUTCDay(),(n=u(t,1)+(1<e&&e<=4?1:0))?53!=n||4==e||3==e&&29==new Date(i,1,29).getDate()?[n,t.getUTCFullYear()]:[1,t.getUTCFullYear()+1]:(i=t.getUTCFullYear()-1,e=new Date(Date.UTC(i,0)).getUTCDay(),[n=4==e||3==e&&29==new Date(i,1,29).getDate()?53:52,t.getUTCFullYear()-1])}return l=l.toLowerCase().split(\"|\"),\"delmHMSUWVgCIky\".replace(/./g,function(t){e[t].pad=2}),e.N.pad=9,e.j.pad=3,e.k.style=\"_\",e.l.style=\"_\",e.e.style=\"_\",function(){return e.convert(arguments)}})},function(t,n,e){\n",
1941
+       "      /*! *****************************************************************************\n",
1942
+       "          Copyright (c) Microsoft Corporation. All rights reserved.\n",
1943
+       "          Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use\n",
1944
+       "          this file except in compliance with the License. You may obtain a copy of the\n",
1945
+       "          License at http://www.apache.org/licenses/LICENSE-2.0\n",
1946
+       "          \n",
1947
+       "          THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n",
1948
+       "          KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\n",
1949
+       "          WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\n",
1950
+       "          MERCHANTABLITY OR NON-INFRINGEMENT.\n",
1951
+       "          \n",
1952
+       "          See the Apache Version 2.0 License for specific language governing permissions\n",
1953
+       "          and limitations under the License.\n",
1954
+       "          ***************************************************************************** */\n",
1955
+       "      var i,r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x;!function(t){var e=\"object\"==typeof global?global:\"object\"==typeof self?self:\"object\"==typeof this?this:{};function i(i,n){return i!==e&&(\"function\"==typeof Object.create?Object.defineProperty(i,\"__esModule\",{value:!0}):i.__esModule=!0),function(t,e){return i[t]=n?n(t,e):e}}\"object\"==typeof n&&\"object\"==typeof n.exports?t(i(e,i(n.exports))):t(i(e))}(function(t){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])};i=function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t},o=function(t,e){var i={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols)for(var r=0,n=Object.getOwnPropertySymbols(t);r<n.length;r++)e.indexOf(n[r])<0&&(i[n[r]]=t[n[r]]);return i},s=function(t,e,i,n){var r,o=arguments.length,s=o<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,n);else for(var a=t.length-1;0<=a;a--)(r=t[a])&&(s=(o<3?r(s):3<o?r(e,i,s):r(e,i))||s);return 3<o&&s&&Object.defineProperty(e,i,s),s},a=function(i,n){return function(t,e){n(t,e,i)}},l=function(t,e){if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.metadata)return Reflect.metadata(t,e)},h=function(o,s,a,l){return new(a||(a=Promise))(function(t,e){function i(t){try{r(l.next(t))}catch(t){e(t)}}function n(t){try{r(l.throw(t))}catch(t){e(t)}}function r(e){e.done?t(e.value):new a(function(t){t(e.value)}).then(i,n)}r((l=l.apply(o,s||[])).next())})},u=function(i,n){var r,o,s,t,a={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return t={next:e(0),throw:e(1),return:e(2)},\"function\"==typeof Symbol&&(t[Symbol.iterator]=function(){return this}),t;function e(e){return function(t){return function(e){if(r)throw new TypeError(\"Generator is already executing.\");for(;a;)try{if(r=1,o&&(s=2&e[0]?o.return:e[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,e[1])).done)return s;switch(o=0,s&&(e=[2&e[0],s.value]),e[0]){case 0:case 1:s=e;break;case 4:return a.label++,{value:e[1],done:!1};case 5:a.label++,o=e[1],e=[0];continue;case 7:e=a.ops.pop(),a.trys.pop();continue;default:if(!(s=0<(s=a.trys).length&&s[s.length-1])&&(6===e[0]||2===e[0])){a=0;continue}if(3===e[0]&&(!s||e[1]>s[0]&&e[1]<s[3])){a.label=e[1];break}if(6===e[0]&&a.label<s[1]){a.label=s[1],s=e;break}if(s&&a.label<s[2]){a.label=s[2],a.ops.push(e);break}s[2]&&a.ops.pop(),a.trys.pop();continue}e=n.call(i,a)}catch(t){e=[6,t],o=0}finally{r=s=0}if(5&e[0])throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}([e,t])}}},c=function(t,e){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])},_=function(t){var e=\"function\"==typeof Symbol&&t[Symbol.iterator],i=0;return e?e.call(t):{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}}},p=function(t,e){var i=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,r,o=i.call(t),s=[];try{for(;(void 0===e||0<e--)&&!(n=o.next()).done;)s.push(n.value)}catch(t){r={error:t}}finally{try{n&&!n.done&&(i=o.return)&&i.call(o)}finally{if(r)throw r.error}}return s},d=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(p(arguments[e]));return t},f=function(t){return this instanceof f?(this.v=t,this):new f(t)},v=function(t,e,i){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var r,o=i.apply(t,e||[]),s=[];return r={},n(\"next\"),n(\"throw\"),n(\"return\"),r[Symbol.asyncIterator]=function(){return this},r;function n(n){o[n]&&(r[n]=function(i){return new Promise(function(t,e){1<s.push([n,i,t,e])||a(n,i)})})}function a(t,e){try{(i=o[t](e)).value instanceof f?Promise.resolve(i.value.v).then(l,h):u(s[0][2],i)}catch(t){u(s[0][3],t)}var i}function l(t){a(\"next\",t)}function h(t){a(\"throw\",t)}function u(t,e){t(e),s.shift(),s.length&&a(s[0][0],s[0][1])}},m=function(n){var t,r;return t={},e(\"next\"),e(\"throw\",function(t){throw t}),e(\"return\"),t[Symbol.iterator]=function(){return this},t;function e(e,i){t[e]=n[e]?function(t){return(r=!r)?{value:f(n[e](t)),done:\"return\"===e}:i?i(t):t}:i}},g=function(l){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var t,e=l[Symbol.asyncIterator];return e?e.call(l):(l=_(l),t={},i(\"next\"),i(\"throw\"),i(\"return\"),t[Symbol.asyncIterator]=function(){return this},t);function i(a){t[a]=l[a]&&function(s){return new Promise(function(t,e){var i,n,r,o;s=l[a](s),i=t,n=e,r=s.done,o=s.value,Promise.resolve(o).then(function(t){i({value:t,done:r})},n)})}}},y=function(t,e){return Object.defineProperty?Object.defineProperty(t,\"raw\",{value:e}):t.raw=e,t},b=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e},x=function(t){return t&&t.__esModule?t:{default:t}},t(\"__extends\",i),t(\"__assign\",r),t(\"__rest\",o),t(\"__decorate\",s),t(\"__param\",a),t(\"__metadata\",l),t(\"__awaiter\",h),t(\"__generator\",u),t(\"__exportStar\",c),t(\"__values\",_),t(\"__read\",p),t(\"__spread\",d),t(\"__await\",f),t(\"__asyncGenerator\",v),t(\"__asyncDelegator\",m),t(\"__asyncValues\",g),t(\"__makeTemplateObject\",y),t(\"__importStar\",b),t(\"__importDefault\",x)})}],s={base:0,\"client/connection\":1,\"client/session\":2,\"core/bokeh_events\":3,\"core/build_views\":4,\"core/dom\":5,\"core/dom_view\":6,\"core/enums\":7,\"core/has_props\":8,\"core/hittest\":9,\"core/layout/alignments\":10,\"core/layout/layout_canvas\":11,\"core/layout/side_panel\":12,\"core/layout/solver\":13,\"core/logging\":14,\"core/properties\":15,\"core/property_mixins\":16,\"core/selection_manager\":17,\"core/settings\":18,\"core/signaling\":19,\"core/ui_events\":20,\"core/util/array\":21,\"core/util/arrayable\":22,\"core/util/assert\":23,\"core/util/bbox\":24,\"core/util/callback\":25,\"core/util/canvas\":26,\"core/util/color\":27,\"core/util/compat\":28,\"core/util/data_structures\":29,\"core/util/eq\":30,\"core/util/math\":31,\"core/util/object\":32,\"core/util/projections\":33,\"core/util/refs\":34,\"core/util/selection\":35,\"core/util/serialization\":36,\"core/util/spatial\":37,\"core/util/string\":38,\"core/util/svg_colors\":39,\"core/util/templating\":40,\"core/util/text\":41,\"core/util/throttle\":42,\"core/util/typed_array\":43,\"core/util/types\":44,\"core/util/wheel\":45,\"core/util/zoom\":46,\"core/vectorization\":47,\"core/view\":48,\"core/visuals\":49,\"document/document\":50,\"document/events\":51,\"document/index\":52,\"embed/dom\":53,\"embed/index\":54,\"embed/notebook\":55,\"embed/server\":56,\"embed/standalone\":57,main:58,model:59,\"models/annotations/annotation\":60,\"models/annotations/arrow\":61,\"models/annotations/arrow_head\":62,\"models/annotations/band\":63,\"models/annotations/box_annotation\":64,\"models/annotations/color_bar\":65,\"models/annotations/index\":66,\"models/annotations/label\":67,\"models/annotations/label_set\":68,\"models/annotations/legend\":69,\"models/annotations/legend_item\":70,\"models/annotations/poly_annotation\":71,\"models/annotations/slope\":72,\"models/annotations/span\":73,\"models/annotations/text_annotation\":74,\"models/annotations/title\":75,\"models/annotations/toolbar_panel\":76,\"models/annotations/tooltip\":77,\"models/annotations/whisker\":78,\"models/axes/axis\":79,\"models/axes/categorical_axis\":80,\"models/axes/continuous_axis\":81,\"models/axes/datetime_axis\":82,\"models/axes/index\":83,\"models/axes/linear_axis\":84,\"models/axes/log_axis\":85,\"models/axes/mercator_axis\":86,\"models/callbacks/callback\":87,\"models/callbacks/customjs\":88,\"models/callbacks/index\":89,\"models/callbacks/open_url\":90,\"models/canvas/canvas\":91,\"models/canvas/cartesian_frame\":92,\"models/canvas/index\":93,\"models/expressions/cumsum\":94,\"models/expressions/expression\":95,\"models/expressions/index\":96,\"models/expressions/stack\":97,\"models/filters/boolean_filter\":98,\"models/filters/customjs_filter\":99,\"models/filters/filter\":100,\"models/filters/group_filter\":101,\"models/filters/index\":102,\"models/filters/index_filter\":103,\"models/formatters/basic_tick_formatter\":104,\"models/formatters/categorical_tick_formatter\":105,\"models/formatters/datetime_tick_formatter\":106,\"models/formatters/func_tick_formatter\":107,\"models/formatters/index\":108,\"models/formatters/log_tick_formatter\":109,\"models/formatters/mercator_tick_formatter\":110,\"models/formatters/numeral_tick_formatter\":111,\"models/formatters/printf_tick_formatter\":112,\"models/formatters/tick_formatter\":113,\"models/glyphs/annular_wedge\":114,\"models/glyphs/annulus\":115,\"models/glyphs/arc\":116,\"models/glyphs/bezier\":117,\"models/glyphs/box\":118,\"models/glyphs/center_rotatable\":119,\"models/glyphs/circle\":120,\"models/glyphs/ellipse\":121,\"models/glyphs/ellipse_oval\":122,\"models/glyphs/glyph\":123,\"models/glyphs/hbar\":124,\"models/glyphs/hex_tile\":125,\"models/glyphs/image\":126,\"models/glyphs/image_rgba\":127,\"models/glyphs/image_url\":128,\"models/glyphs/index\":129,\"models/glyphs/line\":130,\"models/glyphs/multi_line\":131,\"models/glyphs/multi_polygons\":132,\"models/glyphs/oval\":133,\"models/glyphs/patch\":134,\"models/glyphs/patches\":135,\"models/glyphs/quad\":136,\"models/glyphs/quadratic\":137,\"models/glyphs/ray\":138,\"models/glyphs/rect\":139,\"models/glyphs/segment\":140,\"models/glyphs/step\":141,\"models/glyphs/text\":142,\"models/glyphs/utils\":143,\"models/glyphs/vbar\":144,\"models/glyphs/wedge\":145,\"models/glyphs/xy_glyph\":146,\"models/graphs/graph_hit_test_policy\":147,\"models/graphs/index\":148,\"models/graphs/layout_provider\":149,\"models/graphs/static_layout_provider\":150,\"models/grids/grid\":151,\"models/grids/index\":152,\"models/index\":153,\"models/layouts/box\":154,\"models/layouts/column\":155,\"models/layouts/index\":156,\"models/layouts/layout_dom\":157,\"models/layouts/row\":158,\"models/layouts/spacer\":159,\"models/layouts/widget_box\":160,\"models/mappers/categorical_color_mapper\":161,\"models/mappers/categorical_mapper\":162,\"models/mappers/categorical_marker_mapper\":163,\"models/mappers/color_mapper\":164,\"models/mappers/continuous_color_mapper\":165,\"models/mappers/index\":166,\"models/mappers/linear_color_mapper\":167,\"models/mappers/log_color_mapper\":168,\"models/mappers/mapper\":169,\"models/markers/defs\":170,\"models/markers/index\":171,\"models/markers/marker\":172,\"models/markers/scatter\":173,\"models/plots/gmap_plot\":174,\"models/plots/gmap_plot_canvas\":175,\"models/plots/index\":176,\"models/plots/plot\":177,\"models/plots/plot_canvas\":178,\"models/ranges/data_range\":179,\"models/ranges/data_range1d\":180,\"models/ranges/factor_range\":181,\"models/ranges/index\":182,\"models/ranges/range\":183,\"models/ranges/range1d\":184,\"models/renderers/glyph_renderer\":185,\"models/renderers/graph_renderer\":186,\"models/renderers/guide_renderer\":187,\"models/renderers/index\":188,\"models/renderers/renderer\":189,\"models/scales/categorical_scale\":190,\"models/scales/index\":191,\"models/scales/linear_scale\":192,\"models/scales/log_scale\":193,\"models/scales/scale\":194,\"models/selections/index\":195,\"models/selections/interaction_policy\":196,\"models/selections/selection\":197,\"models/sources/ajax_data_source\":198,\"models/sources/cds_view\":199,\"models/sources/column_data_source\":200,\"models/sources/columnar_data_source\":201,\"models/sources/data_source\":202,\"models/sources/geojson_data_source\":203,\"models/sources/index\":204,\"models/sources/remote_data_source\":205,\"models/tickers/adaptive_ticker\":206,\"models/tickers/basic_ticker\":207,\"models/tickers/categorical_ticker\":208,\"models/tickers/composite_ticker\":209,\"models/tickers/continuous_ticker\":210,\"models/tickers/datetime_ticker\":211,\"models/tickers/days_ticker\":212,\"models/tickers/fixed_ticker\":213,\"models/tickers/index\":214,\"models/tickers/log_ticker\":215,\"models/tickers/mercator_ticker\":216,\"models/tickers/months_ticker\":217,\"models/tickers/single_interval_ticker\":218,\"models/tickers/ticker\":219,\"models/tickers/util\":220,\"models/tickers/years_ticker\":221,\"models/tiles/bbox_tile_source\":222,\"models/tiles/image_pool\":223,\"models/tiles/index\":224,\"models/tiles/mercator_tile_source\":225,\"models/tiles/quadkey_tile_source\":226,\"models/tiles/tile_renderer\":227,\"models/tiles/tile_source\":228,\"models/tiles/tile_utils\":229,\"models/tiles/tms_tile_source\":230,\"models/tiles/wmts_tile_source\":231,\"models/tools/actions/action_tool\":232,\"models/tools/actions/custom_action\":233,\"models/tools/actions/help_tool\":234,\"models/tools/actions/redo_tool\":235,\"models/tools/actions/reset_tool\":236,\"models/tools/actions/save_tool\":237,\"models/tools/actions/undo_tool\":238,\"models/tools/actions/zoom_in_tool\":239,\"models/tools/actions/zoom_out_tool\":240,\"models/tools/button_tool\":241,\"models/tools/edit/box_edit_tool\":242,\"models/tools/edit/edit_tool\":243,\"models/tools/edit/freehand_draw_tool\":244,\"models/tools/edit/point_draw_tool\":245,\"models/tools/edit/poly_draw_tool\":246,\"models/tools/edit/poly_edit_tool\":247,\"models/tools/edit/poly_tool\":248,\"models/tools/gestures/box_select_tool\":249,\"models/tools/gestures/box_zoom_tool\":250,\"models/tools/gestures/gesture_tool\":251,\"models/tools/gestures/lasso_select_tool\":252,\"models/tools/gestures/pan_tool\":253,\"models/tools/gestures/poly_select_tool\":254,\"models/tools/gestures/range_tool\":255,\"models/tools/gestures/select_tool\":256,\"models/tools/gestures/tap_tool\":257,\"models/tools/gestures/wheel_pan_tool\":258,\"models/tools/gestures/wheel_zoom_tool\":259,\"models/tools/index\":260,\"models/tools/inspectors/crosshair_tool\":261,\"models/tools/inspectors/customjs_hover\":262,\"models/tools/inspectors/hover_tool\":263,\"models/tools/inspectors/inspect_tool\":264,\"models/tools/on_off_button\":265,\"models/tools/tool\":266,\"models/tools/tool_proxy\":267,\"models/tools/toolbar\":268,\"models/tools/toolbar_base\":269,\"models/tools/toolbar_box\":270,\"models/tools/util\":271,\"models/transforms/customjs_transform\":272,\"models/transforms/dodge\":273,\"models/transforms/index\":274,\"models/transforms/interpolator\":275,\"models/transforms/jitter\":276,\"models/transforms/linear_interpolator\":277,\"models/transforms/step_interpolator\":278,\"models/transforms/transform\":279,polyfill:280,\"protocol/index\":281,\"protocol/message\":282,\"protocol/receiver\":283,safely:284,testing:285,version:286},r={},(l=(a=function(t){var e=null!=s[t]?s[t]:t;if(!r[e]){if(!o[e]){var i=new Error(\"Cannot find module '\"+t+\"'\");throw i.code=\"MODULE_NOT_FOUND\",i}var n=r[e]={exports:{}};o[e].call(n.exports,a,n,n.exports)}return r[e].exports})(58)).require=a,l.register_plugin=function(t,e,i){for(var n in t)o[n]=t[n];for(var n in e)s[n]=e[n];var r=a(i);for(var n in r)l[n]=r[n];return r},l)}(this);\n",
1956
+       "      //# sourceMappingURL=bokeh.min.js.map\n",
1957
+       "      /* END bokeh.min.js */\n",
1958
+       "    },\n",
1959
+       "    \n",
1960
+       "    function(Bokeh) {\n",
1961
+       "      /* BEGIN bokeh-widgets.min.js */\n",
1962
+       "      /*!\n",
1963
+       "       * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n",
1964
+       "       * All rights reserved.\n",
1965
+       "       * \n",
1966
+       "       * Redistribution and use in source and binary forms, with or without modification,\n",
1967
+       "       * are permitted provided that the following conditions are met:\n",
1968
+       "       * \n",
1969
+       "       * Redistributions of source code must retain the above copyright notice,\n",
1970
+       "       * this list of conditions and the following disclaimer.\n",
1971
+       "       * \n",
1972
+       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
1973
+       "       * this list of conditions and the following disclaimer in the documentation\n",
1974
+       "       * and/or other materials provided with the distribution.\n",
1975
+       "       * \n",
1976
+       "       * Neither the name of Anaconda nor the names of any contributors\n",
1977
+       "       * may be used to endorse or promote products derived from this software\n",
1978
+       "       * without specific prior written permission.\n",
1979
+       "       * \n",
1980
+       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
1981
+       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
1982
+       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
1983
+       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
1984
+       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
1985
+       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
1986
+       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
1987
+       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
1988
+       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
1989
+       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
1990
+       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
1991
+       "       */\n",
1992
+       "      !function(t,e){var i;i=t.Bokeh,function(t,e,n){if(null!=i)return i.register_plugin(t,{\"core/menus\":400,\"models/widgets/abstract_button\":401,\"models/widgets/abstract_icon\":402,\"models/widgets/abstract_slider\":403,\"models/widgets/autocomplete_input\":404,\"models/widgets/button\":405,\"models/widgets/checkbox_button_group\":406,\"models/widgets/checkbox_group\":407,\"models/widgets/date_picker\":408,\"models/widgets/date_range_slider\":409,\"models/widgets/date_slider\":410,\"models/widgets/div\":411,\"models/widgets/dropdown\":412,\"models/widgets/index\":413,\"models/widgets/input_widget\":414,\"models/widgets/main\":415,\"models/widgets/markup\":416,\"models/widgets/multiselect\":417,\"models/widgets/panel\":418,\"models/widgets/paragraph\":419,\"models/widgets/password_input\":420,\"models/widgets/pretext\":421,\"models/widgets/radio_button_group\":422,\"models/widgets/radio_group\":423,\"models/widgets/range_slider\":424,\"models/widgets/selectbox\":425,\"models/widgets/slider\":426,\"models/widgets/tabs\":427,\"models/widgets/text_input\":428,\"models/widgets/toggle\":429,\"models/widgets/widget\":440},415);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")}({400:function(t,e,n){var i=t(19);n.clear_menus=new i.Signal0({},\"clear_menus\"),document.addEventListener(\"click\",function(){return n.clear_menus.emit()})},401:function(t,e,n){var i=t(391),r=t(15),o=t(5),s=t(4),a=t(440),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.icon_views={},this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.remove=function(){s.remove_views(this.icon_views),n.prototype.remove.call(this)},t.prototype._render_button=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return o.button.apply(void 0,[{type:\"button\",disabled:this.model.disabled,class:[\"bk-bs-btn\",\"bk-bs-btn-\"+this.model.button_type]}].concat(t))},t.prototype.render=function(){var e=this;n.prototype.render.call(this),o.empty(this.el),this.buttonEl=this._render_button(this.model.label),this.buttonEl.addEventListener(\"click\",function(t){return e._button_click(t)}),this.el.appendChild(this.buttonEl);var t=this.model.icon;null!=t&&(s.build_views(this.icon_views,[t],{parent:this}),o.prepend(this.buttonEl,this.icon_views[t.id].el,o.nbsp))},t.prototype._button_click=function(t){t.preventDefault(),this.change_input()},t.prototype.change_input=function(){null!=this.model.callback&&this.model.callback.execute(this.model)},t}(a.WidgetView);n.AbstractButtonView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AbstractButton\",this.define({label:[r.String,\"Button\"],icon:[r.Instance],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(a.Widget);(n.AbstractButton=u).initClass()},402:function(t,e,n){var i=t(391),r=t(440),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e}(r.WidgetView);n.AbstractIconView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AbstractIcon\"},t}(r.Widget);(n.AbstractIcon=s).initClass()},403:function(t,e,n){var i=t(391),f=t(431),r=t(15),m=t(5),v=t(14),g=t(21),y=t(25),o=t(440),s=function(p){function t(){return null!==p&&p.apply(this,arguments)||this}return i.__extends(t,p),t.prototype.initialize=function(t){p.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;p.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var r=this;if(null==this.sliderEl&&p.prototype.render.call(this),null!=this.model.callback){var t=function(){return r.model.callback.execute(r.model)};switch(this.model.callback_policy){case\"continuous\":this.callback_wrapper=t;break;case\"throttle\":this.callback_wrapper=y.throttle(t,this.model.callback_throttle)}}var e,o=\"bk-noUi-\",n=this._calc_to(),i=n.start,s=n.end,a=n.value,l=n.step;if(this.model.tooltips){var u={to:function(t){return r.model.pretty(t)}};e=g.repeat(u,a.length)}else e=!1;if(this.el.classList.add(\"bk-slider\"),null==this.sliderEl){this.sliderEl=m.div(),this.el.appendChild(this.sliderEl),f.create(this.sliderEl,{cssPrefix:o,range:{min:i,max:s},start:a,step:l,behaviour:this.model.behaviour,connect:this.model.connected,tooltips:e,orientation:this.model.orientation,direction:this.model.direction}),this.sliderEl.noUiSlider.on(\"slide\",function(t,e,n){return r._slide(n)}),this.sliderEl.noUiSlider.on(\"change\",function(t,e,n){return r._change(n)});var c=this.sliderEl.querySelector(\".\"+o+\"handle\");c.setAttribute(\"tabindex\",\"0\"),c.addEventListener(\"keydown\",function(t){var e=r._calc_to().value[0];switch(t.which){case 37:e=Math.max(e-l,i);break;case 39:e=Math.min(e+l,s);break;default:return}var n=r.model.pretty(e);v.logger.debug(\"[slider keypress] value = \"+n),r.model.value=e,r.sliderEl.noUiSlider.set(e),null!=r.valueEl&&(r.valueEl.textContent=n),null!=r.callback_wrapper&&r.callback_wrapper()});var d=function(t,e){var n=r.sliderEl.querySelectorAll(\".\"+o+\"handle\")[t],i=n.querySelector(\".\"+o+\"tooltip\");i.style.display=e?\"block\":\"\"};this.sliderEl.noUiSlider.on(\"start\",function(t,e){return d(e,!0)}),this.sliderEl.noUiSlider.on(\"end\",function(t,e){return d(e,!1)})}else this.sliderEl.noUiSlider.updateOptions({range:{min:i,max:s},start:a,step:l});if(null!=this.titleEl&&this.el.removeChild(this.titleEl),null!=this.valueEl&&this.el.removeChild(this.valueEl),null!=this.model.title&&(0!=this.model.title.length&&(this.titleEl=m.label({},this.model.title+\":\"),this.el.insertBefore(this.titleEl,this.sliderEl)),this.model.show_value)){var h=a.map(function(t){return r.model.pretty(t)}).join(\" .. \");this.valueEl=m.div({class:\"bk-slider-value\"},h),this.el.insertBefore(this.valueEl,this.sliderEl)}this.model.disabled||(this.sliderEl.querySelector(\".\"+o+\"connect\").style.backgroundColor=this.model.bar_color),this.model.disabled?this.sliderEl.setAttribute(\"disabled\",\"true\"):this.sliderEl.removeAttribute(\"disabled\")},t.prototype._slide=function(t){var e=this,n=this._calc_from(t),i=t.map(function(t){return e.model.pretty(t)}).join(\" .. \");v.logger.debug(\"[slider slide] value = \"+i),null!=this.valueEl&&(this.valueEl.textContent=i),this.model.value=n,null!=this.callback_wrapper&&this.callback_wrapper()},t.prototype._change=function(t){var e=this,n=this._calc_from(t),i=t.map(function(t){return e.model.pretty(t)}).join(\" .. \");switch(v.logger.debug(\"[slider change] value = \"+i),null!=this.valueEl&&(this.valueEl.dataset.value=i),this.model.value=n,this.model.callback_policy){case\"mouseup\":case\"throttle\":null!=this.model.callback&&this.model.callback.execute(this.model)}},t}(o.WidgetView);n.AbstractSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.connected=!1,e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"AbstractSlider\",this.define({title:[r.String,\"\"],show_value:[r.Bool,!0],start:[r.Any],end:[r.Any],value:[r.Any],step:[r.Number,1],format:[r.String],orientation:[r.Orientation,\"horizontal\"],direction:[r.Any,\"ltr\"],tooltips:[r.Boolean,!0],callback:[r.Instance],callback_throttle:[r.Number,200],callback_policy:[r.String,\"throttle\"],bar_color:[r.Color,\"#e6e6e6\"]})},t.prototype._formatter=function(t,e){return\"\"+t},t.prototype.pretty=function(t){return this._formatter(t,this.format)},t}(o.Widget);(n.AbstractSlider=a).initClass()},404:function(t,e,n){var i=t(391),r=t(428),s=t(5),o=t(400),a=t(15),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),o.clear_menus.connect(function(){return t._clear_menu()})},t.prototype.render=function(){var e=this;n.prototype.render.call(this),this.inputEl.classList.add(\"bk-autocomplete-input\"),this.inputEl.addEventListener(\"keydown\",function(t){return e._keydown(t)}),this.inputEl.addEventListener(\"keyup\",function(t){return e._keyup(t)}),this.menuEl=s.ul({class:\"bk-bs-dropdown-menu\"}),this.menuEl.addEventListener(\"click\",function(t){return e._item_click(t)}),this.el.appendChild(this.menuEl)},t.prototype._render_items=function(t){s.empty(this.menuEl);for(var e=0,n=t;e<n.length;e++){var i=n[e],r=s.li({},s.a({data:{text:i}},i));this.menuEl.appendChild(r)}},t.prototype._open_menu=function(){this.el.classList.add(\"bk-bs-open\")},t.prototype._clear_menu=function(){this.el.classList.remove(\"bk-bs-open\")},t.prototype._item_click=function(t){if(t.preventDefault(),t.target!=t.currentTarget){var e=t.target,n=e.dataset.text;this.model.value=n}},t.prototype._keydown=function(t){},t.prototype._keyup=function(t){switch(t.keyCode){case s.Keys.Enter:console.log(\"enter\");break;case s.Keys.Esc:this._clear_menu();break;case s.Keys.Up:case s.Keys.Down:console.log(\"up/down\");break;default:var e=this.inputEl.value;if(e.length<=1)return void this._clear_menu();for(var n=[],i=0,r=this.model.completions;i<r.length;i++){var o=r[i];-1!=o.indexOf(e)&&n.push(o)}0==n.length?this._clear_menu():(this._render_items(n),this._open_menu())}},t}(r.TextInputView);n.AutocompleteInputView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AutocompleteInput\",this.prototype.default_view=l,this.define({completions:[a.Array,[]]}),this.internal({active:[a.Boolean,!0]})},t}(r.TextInput);(n.AutocompleteInput=u).initClass()},405:function(t,e,n){var i=t(391),r=t(15),o=t(3),s=t(401),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.change_input=function(){this.model.trigger_event(new o.ButtonClick({})),this.model.clicks=this.model.clicks+1,t.prototype.change_input.call(this)},e}(s.AbstractButtonView);n.ButtonView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Button\",this.prototype.default_view=a,this.define({clicks:[r.Number,0]}),o.register_with_event(o.ButtonClick,this)},t}(s.AbstractButton);(n.Button=l).initClass()},406:function(t,e,n){var i=t(391),l=t(5),r=t(15),u=t(21),o=t(440),s=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var i=this;n.prototype.render.call(this),l.empty(this.el);var r=l.div({class:\"bk-bs-btn-group\"});this.el.appendChild(r);for(var o=this.model.active,s=this.model.labels,t=function(t){var e=l.input({type:\"checkbox\",value:\"\"+t,checked:t in o});e.addEventListener(\"change\",function(){return i.model.change_input(t)});var n=l.label({class:[\"bk-bs-btn\",\"bk-bs-btn-\"+a.model.button_type]},e,s[t]);u.includes(o,t)&&n.classList.add(\"bk-bs-active\"),r.appendChild(n)},a=this,e=0;e<s.length;e++)t(e)},t}(o.WidgetView);n.CheckboxButtonGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.prototype.change_input=function(e){var t=u.copy(this.active);u.includes(t,e)?u.removeBy(t,function(t){return e==t}):t.push(e),t.sort(),this.active=t,null!=this.callback&&this.callback.execute(this)},t.initClass=function(){this.prototype.type=\"CheckboxButtonGroup\",this.prototype.default_view=s,this.define({active:[r.Array,[]],labels:[r.Array,[]],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(o.Widget);(n.CheckboxButtonGroup=a).initClass()},407:function(t,e,n){var i=t(391),u=t(5),r=t(15),c=t(21),o=t(440),s=function(l){function t(){return null!==l&&l.apply(this,arguments)||this}return i.__extends(t,l),t.prototype.initialize=function(t){l.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;l.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;l.prototype.render.call(this),u.empty(this.el);for(var e=this.model.active,n=this.model.labels,i=0;i<n.length;i++){var r=n[i],o=u.input({type:\"checkbox\",value:\"\"+i});o.addEventListener(\"change\",function(){return t.change_input()}),this.model.disabled&&(o.disabled=!0),c.includes(e,i)&&(o.checked=!0);var s=u.label({},o,r);if(this.model.inline)s.classList.add(\"bk-bs-checkbox-inline\"),this.el.appendChild(s);else{var a=u.div({class:\"bk-bs-checkbox\"},s);this.el.appendChild(a)}}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e,null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.CheckboxGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"CheckboxGroup\",this.prototype.default_view=s,this.define({active:[r.Array,[]],labels:[r.Array,[]],inline:[r.Bool,!1],callback:[r.Instance]})},t}(o.Widget);(n.CheckboxGroup=a).initClass()},408:function(t,e,n){var i=t(391),r=t(414),o=t(5),s=t(15),a=t(432);a.prototype.adjustPosition=function(){if(!this._o.container){this.el.style.position=\"absolute\";var t=this._o.trigger,e=this.el.offsetWidth,n=this.el.offsetHeight,i=window.innerWidth||document.documentElement.clientWidth,r=window.innerHeight||document.documentElement.clientHeight,o=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop,s=t.getBoundingClientRect(),a=s.left+window.pageXOffset,l=s.bottom+window.pageYOffset;a-=this.el.parentElement.offsetLeft,l-=this.el.parentElement.offsetTop,(this._o.reposition&&i<a+e||-1<this._o.position.indexOf(\"right\")&&0<a-e+t.offsetWidth)&&(a=a-e+t.offsetWidth),(this._o.reposition&&r+o<l+n||-1<this._o.position.indexOf(\"top\")&&0<l-n-t.offsetHeight)&&(l=l-n-t.offsetHeight),this.el.style.left=a+\"px\",this.el.style.top=l+\"px\"}};var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-widget-form-group\")},e.prototype.render=function(){var e=this;t.prototype.render.call(this),null!=this._picker&&this._picker.destroy(),o.empty(this.el),this.labelEl=o.label({},this.model.title),this.el.appendChild(this.labelEl),this.inputEl=o.input({type:\"text\",class:\"bk-widget-form-input\",disabled:this.model.disabled}),this.el.appendChild(this.inputEl),this._picker=new a({field:this.inputEl,defaultDate:new Date(this.model.value),setDefaultDate:!0,minDate:null!=this.model.min_date?new Date(this.model.min_date):void 0,maxDate:null!=this.model.max_date?new Date(this.model.max_date):void 0,onSelect:function(t){return e._on_select(t)}}),this._root_element.appendChild(this._picker.el)},e.prototype._on_select=function(t){this.model.value=t.toDateString(),this.change_input()},e}(r.InputWidgetView);n.DatePickerView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatePicker\",this.prototype.default_view=l,this.define({value:[s.Any,(new Date).toDateString()],min_date:[s.Any],max_date:[s.Any]})},t}(r.InputWidget);(n.DatePicker=u).initClass()},409:function(t,e,n){var i=t(391),r=t(390),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}},e.prototype._calc_from=function(t){return t},e}(o.AbstractSliderView);n.DateRangeSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"drag\",e.connected=[!1,!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"DateRangeSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},t.prototype._formatter=function(t,e){return r(t,e)},t}(o.AbstractSlider);(n.DateRangeSlider=a).initClass()},410:function(t,e,n){var i=t(391),r=t(390),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}},e.prototype._calc_from=function(t){var e=t[0];return e},e}(o.AbstractSliderView);n.DateSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"tap\",e.connected=[!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"DateSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},t.prototype._formatter=function(t,e){return r(t,e)},t}(o.AbstractSlider);(n.DateSlider=a).initClass()},411:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.div();this.model.render_as_text?t.textContent=this.model.text:t.innerHTML=this.model.text,this.markupEl.appendChild(t)},t}(r.MarkupView);n.DivView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Div\",this.prototype.default_view=a,this.define({render_as_text:[s.Bool,!1]})},t}(r.Markup);(n.Div=l).initClass()},412:function(t,e,n){var i=t(391),h=t(5),r=t(400),o=t(15),s=t(401),a=function(d){function t(){return null!==d&&d.apply(this,arguments)||this}return i.__extends(t,d),t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),r.clear_menus.connect(function(){return t._clear_menu()})},t.prototype.render=function(){var e=this;if(d.prototype.render.call(this),this.model.is_split_button){this.el.classList.add(\"bk-bs-btn-group\");var t=this._render_button(h.span({class:\"bk-bs-caret\"}));t.classList.add(\"bk-bs-dropdown-toggle\"),t.addEventListener(\"click\",function(t){return e._caret_click(t)}),this.el.appendChild(t)}else this.el.classList.add(\"bk-bs-dropdown\"),this.buttonEl.classList.add(\"bk-bs-dropdown-toggle\"),this.buttonEl.appendChild(h.span({class:\"bk-bs-caret\"}));this.model.active&&this.el.classList.add(\"bk-bs-open\");for(var n=[],i=0,r=this.model.menu;i<r.length;i++){var o=r[i],s=void 0;if(null!=o){var a=o[0],l=o[1],u=h.a({},a);u.dataset.value=l,u.addEventListener(\"click\",function(t){return e._item_click(t)}),s=h.li({},u)}else s=h.li({class:\"bk-bs-divider\"});n.push(s)}var c=h.ul({class:\"bk-bs-dropdown-menu\"},n);this.el.appendChild(c)},t.prototype._clear_menu=function(){this.model.active=!1},t.prototype._toggle_menu=function(){var t=this.model.active;r.clear_menus.emit(),t||(this.model.active=!0)},t.prototype._button_click=function(t){t.preventDefault(),t.stopPropagation(),this.model.is_split_button?(this._clear_menu(),this.set_value(this.model.default_value)):this._toggle_menu()},t.prototype._caret_click=function(t){t.preventDefault(),t.stopPropagation(),this._toggle_menu()},t.prototype._item_click=function(t){t.preventDefault(),this._clear_menu(),this.set_value(t.currentTarget.dataset.value)},t.prototype.set_value=function(t){this.buttonEl.value=this.model.value=t,this.change_input()},t}(s.AbstractButtonView);n.DropdownView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Dropdown\",this.prototype.default_view=a,this.define({value:[o.String],default_value:[o.String],menu:[o.Array,[]]}),this.override({label:\"Dropdown\"}),this.internal({active:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"is_split_button\",{get:function(){return null!=this.default_value},enumerable:!0,configurable:!0}),t}(s.AbstractButton);(n.Dropdown=l).initClass()},413:function(t,e,n){var i=t(401);n.AbstractButton=i.AbstractButton;var r=t(402);n.AbstractIcon=r.AbstractIcon;var o=t(404);n.AutocompleteInput=o.AutocompleteInput;var s=t(405);n.Button=s.Button;var a=t(406);n.CheckboxButtonGroup=a.CheckboxButtonGroup;var l=t(407);n.CheckboxGroup=l.CheckboxGroup;var u=t(408);n.DatePicker=u.DatePicker;var c=t(409);n.DateRangeSlider=c.DateRangeSlider;var d=t(410);n.DateSlider=d.DateSlider;var h=t(411);n.Div=h.Div;var p=t(412);n.Dropdown=p.Dropdown;var f=t(414);n.InputWidget=f.InputWidget;var m=t(416);n.Markup=m.Markup;var v=t(417);n.MultiSelect=v.MultiSelect;var g=t(418);n.Panel=g.Panel;var y=t(419);n.Paragraph=y.Paragraph;var b=t(420);n.PasswordInput=b.PasswordInput;var _=t(421);n.PreText=_.PreText;var w=t(422);n.RadioButtonGroup=w.RadioButtonGroup;var x=t(423);n.RadioGroup=x.RadioGroup;var k=t(424);n.RangeSlider=k.RangeSlider;var S=t(425);n.Select=S.Select;var C=t(426);n.Slider=C.Slider;var E=t(427);n.Tabs=E.Tabs;var D=t(428);n.TextInput=D.TextInput;var M=t(429);n.Toggle=M.Toggle;var A=t(440);n.Widget=A.Widget},414:function(t,e,n){var i=t(391),r=t(440),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.change_input=function(){null!=this.model.callback&&this.model.callback.execute(this.model)},e}(r.WidgetView);n.InputWidgetView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"InputWidget\",this.prototype.default_view=s,this.define({title:[o.String,\"\"],callback:[o.Instance]})},t}(r.Widget);(n.InputWidget=a).initClass()},415:function(t,e,n){var i=t(413);n.Widgets=i;var r=t(0);r.register_models(i)},416:function(t,e,n){var i=t(391),r=t(15),o=t(5),s=t(440),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){e.prototype.render.call(this),o.empty(this.el);var t=i.__assign({width:this.model.width+\"px\",height:this.model.height+\"px\"},this.model.style);this.markupEl=o.div({style:t}),this.el.appendChild(this.markupEl)},t}(s.WidgetView);n.MarkupView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Markup\",this.define({text:[r.String,\"\"],style:[r.Any,{}]})},t}(s.Widget);(n.Markup=l).initClass()},417:function(t,e,n){var i=t(391),r=t(5),s=t(44),a=t(29),o=t(15),l=t(414),u=function(o){function t(){return null!==o&&o.apply(this,arguments)||this}return i.__extends(t,o),t.prototype.initialize=function(t){o.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;o.prototype.connect_signals.call(this),this.connect(this.model.properties.value.change,function(){return t.render_selection()}),this.connect(this.model.properties.options.change,function(){return t.render()}),this.connect(this.model.properties.name.change,function(){return t.render()}),this.connect(this.model.properties.title.change,function(){return t.render()}),this.connect(this.model.properties.size.change,function(){return t.render()}),this.connect(this.model.properties.disabled.change,function(){return t.render()})},t.prototype.render=function(){var t=this;o.prototype.render.call(this),r.empty(this.el);var e=r.label({for:this.model.id},this.model.title);this.el.appendChild(e);var n=this.model.options.map(function(t){var e,n;return s.isString(t)?e=n=t:(e=t[0],n=t[1]),r.option({value:e},n)});this.selectEl=r.select({multiple:!0,class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,disabled:this.model.disabled},n),this.selectEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.selectEl),this.render_selection()},t.prototype.render_selection=function(){for(var t=new a.Set(this.model.value),e=0,n=Array.from(this.el.querySelectorAll(\"option\"));e<n.length;e++){var i=n[e];i.selected=t.has(i.value)}this.selectEl.size=this.model.size},t.prototype.change_input=function(){for(var t=null!=this.el.querySelector(\"select:focus\"),e=[],n=0,i=Array.from(this.el.querySelectorAll(\"option\"));n<i.length;n++){var r=i[n];r.selected&&e.push(r.value)}this.model.value=e,o.prototype.change_input.call(this),t&&this.selectEl.focus()},t}(l.InputWidgetView);n.MultiSelectView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiSelect\",this.prototype.default_view=u,this.define({value:[o.Array,[]],options:[o.Array,[]],size:[o.Number,4]})},t}(l.InputWidget);(n.MultiSelect=c).initClass()},418:function(t,e,n){var i=t(391),r=t(440),o=t(15),s=t(5),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),s.empty(this.el)},e}(r.WidgetView);n.PanelView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Panel\",this.prototype.default_view=a,this.define({title:[o.String,\"\"],child:[o.Instance],closable:[o.Bool,!1]})},t}(r.Widget);(n.Panel=l).initClass()},419:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.p({style:{margin:0}},this.model.text);this.markupEl.appendChild(t)},t}(r.MarkupView);n.ParagraphView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Paragraph\",this.prototype.default_view=s},t}(r.Markup);(n.Paragraph=a).initClass()},420:function(t,e,n){var i=t(391),r=t(428),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.inputEl.type=\"password\"},e}(r.TextInputView);n.PasswordInputView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"PasswordInput\",this.prototype.default_view=o},t}(r.TextInput);(n.PasswordInput=s).initClass()},421:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.pre({style:{overflow:\"auto\"}},this.model.text);this.markupEl.appendChild(t)},t}(r.MarkupView);n.PreTextView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"PreText\",this.prototype.default_view=s},t}(r.Markup);(n.PreText=a).initClass()},422:function(t,e,n){var i=t(391),c=t(5),d=t(38),r=t(15),o=t(440),s=function(u){function t(){return null!==u&&u.apply(this,arguments)||this}return i.__extends(t,u),t.prototype.initialize=function(t){u.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;u.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;u.prototype.render.call(this),c.empty(this.el);var e=c.div({class:\"bk-bs-btn-group\"});this.el.appendChild(e);for(var n=d.uniqueId(),i=this.model.active,r=this.model.labels,o=0;o<r.length;o++){var s=r[o],a=c.input({type:\"radio\",name:n,value:\"\"+o,checked:o==i});a.addEventListener(\"change\",function(){return t.change_input()});var l=c.label({class:[\"bk-bs-btn\",\"bk-bs-btn-\"+this.model.button_type]},a,s);o==i&&l.classList.add(\"bk-bs-active\"),e.appendChild(l)}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e[0],null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.RadioButtonGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"RadioButtonGroup\",this.prototype.default_view=s,this.define({active:[r.Any,null],labels:[r.Array,[]],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(o.Widget);(n.RadioButtonGroup=a).initClass()},423:function(t,e,n){var i=t(391),c=t(5),d=t(38),r=t(15),o=t(440),s=function(u){function t(){return null!==u&&u.apply(this,arguments)||this}return i.__extends(t,u),t.prototype.initialize=function(t){u.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;u.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;u.prototype.render.call(this),c.empty(this.el);for(var e=d.uniqueId(),n=this.model.active,i=this.model.labels,r=0;r<i.length;r++){var o=i[r],s=c.input({type:\"radio\",name:e,value:\"\"+r});s.addEventListener(\"change\",function(){return t.change_input()}),this.model.disabled&&(s.disabled=!0),r==n&&(s.checked=!0);var a=c.label({},s,o);if(this.model.inline)a.classList.add(\"bk-bs-radio-inline\"),this.el.appendChild(a);else{var l=c.div({class:\"bk-bs-radio\"},a);this.el.appendChild(l)}}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e[0],null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.RadioGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"RadioGroup\",this.prototype.default_view=s,this.define({active:[r.Any,null],labels:[r.Array,[]],inline:[r.Bool,!1],callback:[r.Instance]})},t}(o.Widget);(n.RadioGroup=a).initClass()},424:function(t,e,n){var i=t(391),r=t(361),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}},e.prototype._calc_from=function(t){return t},e}(o.AbstractSliderView);n.RangeSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"drag\",e.connected=[!1,!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"RangeSlider\",this.prototype.default_view=s,this.override({format:\"0[.]00\"})},t.prototype._formatter=function(t,e){return r.format(t,e)},t}(o.AbstractSlider);(n.RangeSlider=a).initClass()},425:function(t,e,n){var i=t(391),a=t(5),l=t(44),r=t(14),o=t(15),s=t(414),u=function(s){function t(){return null!==s&&s.apply(this,arguments)||this}return i.__extends(t,s),t.prototype.initialize=function(t){s.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;s.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.build_options=function(t){var r=this;return t.map(function(t){var e,n;l.isString(t)?e=n=t:(e=t[0],n=t[1]);var i=r.model.value==e;return a.option({selected:i,value:e},n)})},t.prototype.render=function(){var t=this;s.prototype.render.call(this),a.empty(this.el);var e,n=a.label({for:this.model.id},this.model.title);if(this.el.appendChild(n),l.isArray(this.model.options))e=this.build_options(this.model.options);else{e=[];var i=this.model.options;for(var r in i){var o=i[r];e.push(a.optgroup({label:r},this.build_options(o)))}}this.selectEl=a.select({class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,disabled:this.model.disabled},e),this.selectEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.selectEl)},t.prototype.change_input=function(){var t=this.selectEl.value;r.logger.debug(\"selectbox: value = \"+t),this.model.value=t,s.prototype.change_input.call(this)},t}(s.InputWidgetView);n.SelectView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Select\",this.prototype.default_view=u,this.define({value:[o.String,\"\"],options:[o.Any,[]]})},t}(s.InputWidget);(n.Select=c).initClass()},426:function(t,e,n){var i=t(391),r=t(361),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}},e.prototype._calc_from=function(t){var e=t[0];return Number.isInteger(this.model.start)&&Number.isInteger(this.model.end)&&Number.isInteger(this.model.step)?Math.round(e):e},e}(o.AbstractSliderView);n.SliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"tap\",e.connected=[!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"Slider\",this.prototype.default_view=s,this.override({format:\"0[.]00\"})},t.prototype._formatter=function(t,e){return r.format(t,e)},t}(o.AbstractSlider);(n.Slider=a).initClass()},427:function(t,e,n){var i=t(391),h=t(5),p=t(21),r=t(15),o=t(440),s=function(d){function t(){return null!==d&&d.apply(this,arguments)||this}return i.__extends(t,d),t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),this.connect(this.model.properties.tabs.change,function(){return t.rebuild_child_views()}),this.connect(this.model.properties.active.change,function(){return t.render()})},t.prototype.render=function(){var r=this;d.prototype.render.call(this),h.empty(this.el);var t=this.model.tabs.length;if(0!=t){this.model.active>=t&&(this.model.active=t-1);var o=this.model.tabs.map(function(t,e){return h.li({},h.span({data:{index:e}},t.title))});o[this.model.active].classList.add(\"bk-bs-active\");var e=h.ul({class:[\"bk-bs-nav\",\"bk-bs-nav-tabs\"]},o);this.el.appendChild(e);var s=this.model.tabs.map(function(t){return h.div({class:\"bk-bs-tab-pane\"})});s[this.model.active].classList.add(\"bk-bs-active\");var n=h.div({class:\"bk-bs-tab-content\"},s);this.el.appendChild(n),e.addEventListener(\"click\",function(t){if(t.preventDefault(),t.target!=t.currentTarget){var e=t.target,n=r.model.active,i=parseInt(e.dataset.index);n!=i&&(o[n].classList.remove(\"bk-bs-active\"),s[n].classList.remove(\"bk-bs-active\"),o[i].classList.add(\"bk-bs-active\"),s[i].classList.add(\"bk-bs-active\"),r.model.active=i,null!=r.model.callback&&r.model.callback.execute(r.model))}});for(var i=0,a=p.zip(this.model.children,s);i<a.length;i++){var l=a[i],u=l[0],c=l[1];c.appendChild(this.child_views[u.id].el)}}},t}(o.WidgetView);n.TabsView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tabs\",this.prototype.default_view=s,this.define({tabs:[r.Array,[]],active:[r.Number,0],callback:[r.Instance]})},t.prototype.get_layoutable_children=function(){return this.children},Object.defineProperty(t.prototype,\"children\",{get:function(){return this.tabs.map(function(t){return t.child})},enumerable:!0,configurable:!0}),t}(o.Widget);(n.Tabs=a).initClass()},428:function(t,e,n){var i=t(391),r=t(14),o=t(15),s=t(5),a=t(414),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.css_classes=function(){return n.prototype.css_classes.call(this).concat(\"bk-widget-form-group\")},t.prototype.render=function(){var t=this;n.prototype.render.call(this),s.empty(this.el);var e=s.label({for:this.model.id},this.model.title);this.el.appendChild(e),this.inputEl=s.input({type:\"text\",class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,value:this.model.value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.inputEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.inputEl),this.model.height&&(this.inputEl.style.height=this.model.height-35+\"px\")},t.prototype.change_input=function(){var t=this.inputEl.value;r.logger.debug(\"widget/text_input: value = \"+t),this.model.value=t,n.prototype.change_input.call(this)},t}(a.InputWidgetView);n.TextInputView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextInput\",this.prototype.default_view=l,this.define({value:[o.String,\"\"],placeholder:[o.String,\"\"]})},t}(a.InputWidget);(n.TextInput=u).initClass()},429:function(t,e,n){var i=t(391),r=t(401),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.active&&this.buttonEl.classList.add(\"bk-bs-active\")},e.prototype.change_input=function(){this.model.active=!this.model.active,t.prototype.change_input.call(this)},e}(r.AbstractButtonView);n.ToggleView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Toggle\",this.prototype.default_view=s,this.define({active:[o.Bool,!1]}),this.override({label:\"Toggle\"})},t}(r.AbstractButton);(n.Toggle=a).initClass()},440:function(t,e,n){var i=t(391),r=t(157),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-widget\")},e.prototype.render=function(){this._render_classes(),null!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),null!=this.model.width&&(this.el.style.width=this.model.width+\"px\")},e.prototype.get_width=function(){throw new Error(\"unused\")},e.prototype.get_height=function(){throw new Error(\"unused\")},e}(r.LayoutDOMView);n.WidgetView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Widget\"},t}(r.LayoutDOM);(n.Widget=s).initClass()},431:function(t,e,n){\n",
1993
+       "      /*! nouislider - 10.1.0 - 2017-07-28 17:11:18 */var i;i=function(){\"use strict\";var $=\"10.1.0\";function Q(t){t.preventDefault()}function r(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function Z(t,e,n){0<n&&(et(t,e),setTimeout(function(){nt(t,e)},n))}function tt(t){return Array.isArray(t)?t:[t]}function e(t){var e=(t=String(t)).split(\".\");return 1<e.length?e[1].length:0}function et(t,e){t.classList?t.classList.add(e):t.className+=\" \"+e}function nt(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function it(t){var e=void 0!==window.pageXOffset,n=\"CSS1Compat\"===(t.compatMode||\"\"),i=e?window.pageXOffset:n?t.documentElement.scrollLeft:t.body.scrollLeft,r=e?window.pageYOffset:n?t.documentElement.scrollTop:t.body.scrollTop;return{x:i,y:r}}function c(t,e){return 100/(e-t)}function d(t,e){return 100*e/(t[1]-t[0])}function h(t,e){for(var n=1;t>=e[n];)n+=1;return n}function n(t,e,n){if(n>=t.slice(-1)[0])return 100;var i,r,o,s,a,l,u=h(n,t);return i=t[u-1],r=t[u],o=e[u-1],s=e[u],o+(l=n,d(a=[i,r],a[0]<0?l+Math.abs(a[0]):l-a[0])/c(o,s))}function i(t,e,n,i){if(100===i)return i;var r,o,s,a,l=h(i,t);return n?(r=t[l-1],((o=t[l])-r)/2<i-r?o:r):e[l-1]?t[l-1]+(s=i-t[l-1],a=e[l-1],Math.round(s/a)*a):i}function o(t,e,n){var i;if(\"number\"==typeof e&&(e=[e]),\"[object Array]\"!==Object.prototype.toString.call(e))throw new Error(\"noUiSlider (\"+$+\"): 'range' contains invalid value.\");if(!r(i=\"min\"===t?0:\"max\"===t?100:parseFloat(t))||!r(e[0]))throw new Error(\"noUiSlider (\"+$+\"): 'range' value isn't numeric.\");n.xPct.push(i),n.xVal.push(e[0]),i?n.xSteps.push(!isNaN(e[1])&&e[1]):isNaN(e[1])||(n.xSteps[0]=e[1]),n.xHighestCompleteStep.push(0)}function s(t,e,n){if(!e)return!0;n.xSteps[t]=d([n.xVal[t],n.xVal[t+1]],e)/c(n.xPct[t],n.xPct[t+1]);var i=(n.xVal[t+1]-n.xVal[t])/n.xNumSteps[t],r=Math.ceil(Number(i.toFixed(3))-1),o=n.xVal[t]+n.xNumSteps[t]*r;n.xHighestCompleteStep[t]=o}function a(t,e,n){this.xPct=[],this.xVal=[],this.xSteps=[n||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i,r=[];for(i in t)t.hasOwnProperty(i)&&r.push([t[i],i]);for(r.length&&\"object\"==typeof r[0][0]?r.sort(function(t,e){return t[0][0]-e[0][0]}):r.sort(function(t,e){return t[0]-e[0]}),i=0;i<r.length;i++)o(r[i][1],r[i][0],this);for(this.xNumSteps=this.xSteps.slice(0),i=0;i<this.xNumSteps.length;i++)s(i,this.xNumSteps[i],this)}a.prototype.getMargin=function(t){var e=this.xNumSteps[0];if(e&&t/e%1!=0)throw new Error(\"noUiSlider (\"+$+\"): 'limit', 'margin' and 'padding' must be divisible by step.\");return 2===this.xPct.length&&d(this.xVal,t)},a.prototype.toStepping=function(t){return t=n(this.xVal,this.xPct,t)},a.prototype.fromStepping=function(t){return function(t,e,n){if(100<=n)return t.slice(-1)[0];var i,r,o,s,a,l=h(n,e);return i=t[l-1],r=t[l],o=e[l-1],s=e[l],a=[i,r],(n-o)*c(o,s)*(a[1]-a[0])/100+a[0]}(this.xVal,this.xPct,t)},a.prototype.getStep=function(t){return t=i(this.xPct,this.xSteps,this.snap,t)},a.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-0],step:this.xNumSteps[e-0],highestStep:this.xHighestCompleteStep[e-0]}}},a.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(e);return Math.max.apply(null,t)},a.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var l={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number};function u(t){if(\"object\"==typeof(e=t)&&\"function\"==typeof e.to&&\"function\"==typeof e.from)return!0;var e;throw new Error(\"noUiSlider (\"+$+\"): 'format' requires 'to' and 'from' methods.\")}function p(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'step' is not numeric.\");t.singleStep=e}function f(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider (\"+$+\"): 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider (\"+$+\"): Missing 'min' or 'max' in 'range'.\");if(e.min===e.max)throw new Error(\"noUiSlider (\"+$+\"): 'range' 'min' and 'max' cannot be equal.\");t.spectrum=new a(e,t.snap,t.singleStep)}function m(t,e){if(e=tt(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider (\"+$+\"): 'start' option is incorrect.\");t.handles=e.length,t.start=e}function v(t,e){if(\"boolean\"!=typeof(t.snap=e))throw new Error(\"noUiSlider (\"+$+\"): 'snap' option must be a boolean.\")}function g(t,e){if(\"boolean\"!=typeof(t.animate=e))throw new Error(\"noUiSlider (\"+$+\"): 'animate' option must be a boolean.\")}function y(t,e){if(\"number\"!=typeof(t.animationDuration=e))throw new Error(\"noUiSlider (\"+$+\"): 'animationDuration' option must be a number.\")}function b(t,e){var n,i=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(n=1;n<t.handles;n++)i.push(e);i.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider (\"+$+\"): 'connect' option doesn't match handle count.\");i=e}t.connect=i}function _(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider (\"+$+\"): 'orientation' option is invalid.\")}}function w(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'margin' option must be numeric.\");if(0!==e&&(t.margin=t.spectrum.getMargin(e),!t.margin))throw new Error(\"noUiSlider (\"+$+\"): 'margin' option is only supported on linear sliders.\")}function x(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'limit' option must be numeric.\");if(t.limit=t.spectrum.getMargin(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider (\"+$+\"): 'limit' option is only supported on linear sliders with 2 or more handles.\")}function k(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be numeric.\");if(0!==e){if(t.padding=t.spectrum.getMargin(e),!t.padding)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option is only supported on linear sliders.\");if(t.padding<0)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be a positive number.\");if(50<=t.padding)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be less than half the range.\")}}function S(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider (\"+$+\"): 'direction' option was not recognized.\")}}function C(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider (\"+$+\"): 'behaviour' must be a string containing options.\");var n=0<=e.indexOf(\"tap\"),i=0<=e.indexOf(\"drag\"),r=0<=e.indexOf(\"fixed\"),o=0<=e.indexOf(\"snap\"),s=0<=e.indexOf(\"hover\");if(r){if(2!==t.handles)throw new Error(\"noUiSlider (\"+$+\"): 'fixed' behaviour must be used with 2 handles\");w(t,t.start[1]-t.start[0])}t.events={tap:n||o,drag:i,fixed:r,snap:o,hover:s}}function E(t,e){if(\"boolean\"!=typeof(t.multitouch=e))throw new Error(\"noUiSlider (\"+$+\"): 'multitouch' option must be a boolean.\")}function D(t,e){if(!1!==e)if(!0===e){t.tooltips=[];for(var n=0;n<t.handles;n++)t.tooltips.push(!0)}else{if(t.tooltips=tt(e),t.tooltips.length!==t.handles)throw new Error(\"noUiSlider (\"+$+\"): 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 (\"+$+\"): 'tooltips' must be passed a formatter or 'false'.\")})}}function M(t,e){u(t.ariaFormat=e)}function A(t,e){u(t.format=e)}function N(t,e){if(void 0!==e&&\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider (\"+$+\"): 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function V(t,e){if(void 0!==e&&\"object\"!=typeof e)throw new Error(\"noUiSlider (\"+$+\"): 'cssClasses' must be an object.\");if(\"string\"==typeof t.cssPrefix)for(var n in t.cssClasses={},e)e.hasOwnProperty(n)&&(t.cssClasses[n]=t.cssPrefix+e[n]);else t.cssClasses=e}function I(t,e){if(!0!==e&&!1!==e)throw new Error(\"noUiSlider (\"+$+\"): 'useRequestAnimationFrame' option should be true (default) or false.\");t.useRequestAnimationFrame=e}function rt(e){var n={margin:0,limit:0,padding:0,animate:!0,animationDuration:300,ariaFormat:l,format:l},i={step:{r:!1,t:p},start:{r:!0,t:m},connect:{r:!0,t:b},direction:{r:!0,t:S},snap:{r:!1,t:v},animate:{r:!1,t:g},animationDuration:{r:!1,t:y},range:{r:!0,t:f},orientation:{r:!1,t:_},margin:{r:!1,t:w},limit:{r:!1,t:x},padding:{r:!1,t:k},behaviour:{r:!0,t:C},multitouch:{r:!0,t:E},ariaFormat:{r:!1,t:M},format:{r:!1,t:A},tooltips:{r:!1,t:D},cssPrefix:{r:!1,t:N},cssClasses:{r:!1,t:V},useRequestAnimationFrame:{r:!1,t:I}},r={connect:!1,direction:\"ltr\",behaviour:\"tap\",multitouch:!1,orientation:\"horizontal\",cssPrefix:\"noUi-\",cssClasses:{target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",ltr:\"ltr\",rtl:\"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\"},useRequestAnimationFrame:!0};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(i).forEach(function(t){if(void 0===e[t]&&void 0===r[t]){if(i[t].r)throw new Error(\"noUiSlider (\"+$+\"): '\"+t+\"' is required.\");return!0}i[t].t(n,void 0===e[t]?r[t]:e[t])}),n.pips=e.pips;var t=[[\"left\",\"top\"],[\"right\",\"bottom\"]];return n.style=t[n.dir][n.ort],n.styleOposite=t[n.dir?0:1][n.ort],n}function P(t,d,o){var u,l,s,a,h,r,c,e,p=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\"},n=window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\"),f=n&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}(),_=t,m=[],v=[],g=0,w=d.spectrum,y=[],b={},x=t.ownerDocument,k=x.documentElement,S=x.body;function C(t,e){var n=x.createElement(\"div\");return e&&et(n,e),t.appendChild(n),n}function i(t,e){var n=C(t,d.cssClasses.origin),i=C(n,d.cssClasses.handle);return i.setAttribute(\"data-handle\",e),i.setAttribute(\"tabindex\",\"0\"),i.setAttribute(\"role\",\"slider\"),i.setAttribute(\"aria-orientation\",d.ort?\"vertical\":\"horizontal\"),0===e?et(i,d.cssClasses.handleLower):e===d.handles-1&&et(i,d.cssClasses.handleUpper),n}function E(t,e){return!!e&&C(t,d.cssClasses.connect)}function D(t,e){return!!d.tooltips[e]&&C(t.firstChild,d.cssClasses.tooltip)}function M(e,i,r){var o=x.createElement(\"div\"),s=[d.cssClasses.valueNormal,d.cssClasses.valueLarge,d.cssClasses.valueSub],a=[d.cssClasses.markerNormal,d.cssClasses.markerLarge,d.cssClasses.markerSub],l=[d.cssClasses.valueHorizontal,d.cssClasses.valueVertical],u=[d.cssClasses.markerHorizontal,d.cssClasses.markerVertical];function c(t,e){var n=e===d.cssClasses.value,i=n?l:u,r=n?s:a;return e+\" \"+i[d.ort]+\" \"+r[t]}return et(o,d.cssClasses.pips),et(o,0===d.ort?d.cssClasses.pipsHorizontal:d.cssClasses.pipsVertical),Object.keys(e).forEach(function(t){!function(t,e){e[1]=e[1]&&i?i(e[0],e[1]):e[1];var n=C(o,!1);n.className=c(e[1],d.cssClasses.marker),n.style[d.style]=t+\"%\",e[1]&&((n=C(o,!1)).className=c(e[1],d.cssClasses.value),n.style[d.style]=t+\"%\",n.innerText=r.to(e[0]))}(t,e[t])}),o}function A(){var t;h&&((t=h).parentElement.removeChild(t),h=null)}function N(t){A();var p,f,m,e,v,n,i,g,y,b,r=t.mode,o=t.density||1,s=t.filter||!1,a=t.values||!1,l=t.stepped||!1,u=function(t,e,n){if(\"range\"===t||\"steps\"===t)return w.xVal;if(\"count\"===t){if(!e)throw new Error(\"noUiSlider (\"+$+\"): 'values' required for mode 'count'.\");var i,r=100/(e-1),o=0;for(e=[];(i=o++*r)<=100;)e.push(i);t=\"positions\"}return\"positions\"===t?e.map(function(t){return w.fromStepping(n?w.getStep(t):t)}):\"values\"===t?n?e.map(function(t){return w.fromStepping(w.getStep(w.toStepping(t)))}):e:void 0}(r,a,l),c=(p=o,f=r,m=u,v={},n=w.xVal[0],i=w.xVal[w.xVal.length-1],y=g=!1,b=0,(e=m.slice().sort(function(t,e){return t-e}),m=e.filter(function(t){return!this[t]&&(this[t]=!0)},{}))[0]!==n&&(m.unshift(n),g=!0),m[m.length-1]!==i&&(m.push(i),y=!0),m.forEach(function(t,e){var n,i,r,o,s,a,l,u,c,d=t,h=m[e+1];if(\"steps\"===f&&(n=w.xNumSteps[e]),n||(n=h-d),!1!==d&&void 0!==h)for(n=Math.max(n,1e-7),i=d;i<=h;i=(i+n).toFixed(7)/1){for(l=(s=(o=w.toStepping(i))-b)/p,c=s/(u=Math.round(l)),r=1;r<=u;r+=1)v[(b+r*c).toFixed(5)]=[\"x\",0];a=-1<m.indexOf(i)?1:\"steps\"===f?2:0,!e&&g&&(a=0),i===h&&y||(v[o.toFixed(5)]=[i,a]),b=o}}),v),d=t.format||{to:Math.round};return h=_.appendChild(M(c,s,d))}function V(){var t=u.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][d.ort];return 0===d.ort?t.width||u[e]:t.height||u[e]}function I(i,r,o,s){var e=function(t){return!_.hasAttribute(\"disabled\")&&(e=_,n=d.cssClasses.tap,(e.classList?!e.classList.contains(n):!new RegExp(\"\\\\b\"+n+\"\\\\b\").test(e.className))&&!!(t=function(t,e,n){var i,r,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),o&&d.multitouch){var l=function(t){return t.target===n||n.contains(t.target)};if(\"touchstart\"===t.type){var u=Array.prototype.filter.call(t.touches,l);if(1<u.length)return!1;i=u[0].pageX,r=u[0].pageY}else{var c=Array.prototype.find.call(t.changedTouches,l);if(!c)return!1;i=c.pageX,r=c.pageY}}else if(o){if(1<t.touches.length)return!1;i=t.changedTouches[0].pageX,r=t.changedTouches[0].pageY}return e=e||it(x),(s||a)&&(i=t.clientX+e.x,r=t.clientY+e.y),t.pageOffset=e,t.points=[i,r],t.cursor=s||a,t}(t,s.pageOffset,s.target||r))&&!(i===p.start&&void 0!==t.buttons&&1<t.buttons)&&(!s.hover||!t.buttons)&&(f||t.preventDefault(),t.calcPoint=t.points[d.ort],void o(t,s)));var e,n},n=[];return i.split(\" \").forEach(function(t){r.addEventListener(t,e,!!f&&{passive:!0}),n.push([t,e])}),n}function P(t){var e,n,i,r,o,s,a=t-(e=u,n=d.ort,i=e.getBoundingClientRect(),r=e.ownerDocument,o=r.documentElement,s=it(r),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(s.x=0),n?i.top+s.y-o.clientTop:i.left+s.x-o.clientLeft),l=100*a/V();return d.dir?100-l:l}function R(t,i,n,e){var r=n.slice(),o=[!t,t],s=[t,!t];e=e.slice(),t&&e.reverse(),1<e.length?e.forEach(function(t,e){var n=z(r,t,r[t]+i,o[e],s[e],!1);!1===n?i=0:(i=n-r[t],r[t]=n)}):o=s=[!0];var a=!1;e.forEach(function(t,e){a=H(t,n[t]+i,o[e],s[e])||a}),a&&e.forEach(function(t){L(\"update\",t),L(\"slide\",t)})}function L(n,i,r){Object.keys(b).forEach(function(t){var e=t.split(\".\")[0];n===e&&b[t].forEach(function(t){t.call(a,y.map(d.format.to),i,y.slice(),r||!1,m.slice())})})}function T(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&W(t,e)}function O(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return W(t,e);var n=(d.dir?-1:1)*(t.calcPoint-e.startCalcPoint),i=100*n/e.baseSize;R(0<n,i,e.locations,e.handleNumbers)}function W(t,e){e.handle&&(nt(e.handle,d.cssClasses.active),g-=1),e.listeners.forEach(function(t){k.removeEventListener(t[0],t[1])}),0===g&&(nt(_,d.cssClasses.drag),Y(),t.cursor&&(S.style.cursor=\"\",S.removeEventListener(\"selectstart\",Q))),e.handleNumbers.forEach(function(t){L(\"change\",t),L(\"set\",t),L(\"end\",t)})}function B(t,e){var n;if(1===e.handleNumbers.length){var i=l[e.handleNumbers[0]];if(i.hasAttribute(\"disabled\"))return!1;n=i.children[0],g+=1,et(n,d.cssClasses.active)}t.stopPropagation();var r=[],o=I(p.move,k,O,{target:t.target,handle:n,listeners:r,startCalcPoint:t.calcPoint,baseSize:V(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:m.slice()}),s=I(p.end,k,W,{target:t.target,handle:n,listeners:r,handleNumbers:e.handleNumbers}),a=I(\"mouseout\",k,T,{target:t.target,handle:n,listeners:r,handleNumbers:e.handleNumbers});r.push.apply(r,o.concat(s,a)),t.cursor&&(S.style.cursor=getComputedStyle(t.target).cursor,1<l.length&&et(_,d.cssClasses.drag),S.addEventListener(\"selectstart\",Q,!1)),e.handleNumbers.forEach(function(t){L(\"start\",t)})}function U(t){t.stopPropagation();var i,r,o,e=P(t.calcPoint),n=(i=e,o=!(r=100),l.forEach(function(t,e){if(!t.hasAttribute(\"disabled\")){var n=Math.abs(m[e]-i);n<r&&(o=e,r=n)}}),o);if(!1===n)return!1;d.events.snap||Z(_,d.cssClasses.tap,d.animationDuration),H(n,e,!0,!0),Y(),L(\"slide\",n,!0),L(\"update\",n,!0),L(\"change\",n,!0),L(\"set\",n,!0),d.events.snap&&B(t,{handleNumbers:[n]})}function j(t){var e=P(t.calcPoint),n=w.getStep(e),i=w.fromStepping(n);Object.keys(b).forEach(function(t){\"hover\"===t.split(\".\")[0]&&b[t].forEach(function(t){t.call(a,i)})})}function z(t,e,n,i,r,o){var s;return 1<l.length&&(i&&0<e&&(n=Math.max(n,t[e-1]+d.margin)),r&&e<l.length-1&&(n=Math.min(n,t[e+1]-d.margin))),1<l.length&&d.limit&&(i&&0<e&&(n=Math.min(n,t[e-1]+d.limit)),r&&e<l.length-1&&(n=Math.max(n,t[e+1]-d.limit))),d.padding&&(0===e&&(n=Math.max(n,d.padding)),e===l.length-1&&(n=Math.min(n,100-d.padding))),n=w.getStep(n),s=n,!((n=Math.max(Math.min(s,100),0))===t[e]&&!o)&&n}function F(t){return t+\"%\"}function Y(){v.forEach(function(t){var e=50<m[t]?-1:1,n=3+(l.length+e*t);l[t].childNodes[0].style.zIndex=n})}function H(t,e,n,i){return!1!==(e=z(m,t,e,n,i,!1))&&(function(t,e){m[t]=e,y[t]=w.fromStepping(e);var n=function(){l[t].style[d.style]=F(e),q(t),q(t+1)};window.requestAnimationFrame&&d.useRequestAnimationFrame?window.requestAnimationFrame(n):n()}(t,e),!0)}function q(t){if(s[t]){var e=0,n=100;0!==t&&(e=m[t-1]),t!==s.length-1&&(n=m[t]),s[t].style[d.style]=F(e),s[t].style[d.styleOposite]=F(100-n)}}function G(t,e){null!==t&&!1!==t&&(\"number\"==typeof t&&(t=String(t)),!1===(t=d.format.from(t))||isNaN(t)||H(e,w.toStepping(t),!1,!1))}function X(t,e){var n=tt(t),i=void 0===m[0];e=void 0===e||!!e,n.forEach(G),d.animate&&!i&&Z(_,d.cssClasses.tap,d.animationDuration),v.forEach(function(t){H(t,m[t],!0,!1)}),Y(),v.forEach(function(t){L(\"update\",t),null!==n[t]&&e&&L(\"set\",t)})}function K(){var t=y.map(d.format.to);return 1===t.length?t[0]:t}function J(t,e){b[t]=b[t]||[],b[t].push(e),\"update\"===t.split(\".\")[0]&&l.forEach(function(t,e){L(\"update\",e)})}if(_.noUiSlider)throw new Error(\"noUiSlider (\"+$+\"): Slider was already initialized.\");return et(e=_,d.cssClasses.target),0===d.dir?et(e,d.cssClasses.ltr):et(e,d.cssClasses.rtl),0===d.ort?et(e,d.cssClasses.horizontal):et(e,d.cssClasses.vertical),u=C(e,d.cssClasses.base),function(t,e){l=[],(s=[]).push(E(e,t[0]));for(var n=0;n<d.handles;n++)l.push(i(e,n)),v[n]=n,s.push(E(e,t[n+1]))}(d.connect,u),a={destroy:function(){for(var t in d.cssClasses)d.cssClasses.hasOwnProperty(t)&&nt(_,d.cssClasses[t]);for(;_.firstChild;)_.removeChild(_.firstChild);delete _.noUiSlider},steps:function(){return m.map(function(t,e){var n=w.getNearbySteps(t),i=y[e],r=n.thisStep.step,o=null;!1!==r&&i+r>n.stepAfter.startValue&&(r=n.stepAfter.startValue-i),o=i>n.thisStep.startValue?n.thisStep.step:!1!==n.stepBefore.step&&i-n.stepBefore.highestStep,100===t?r=null:0===t&&(o=null);var s=w.countStepDecimals();return null!==r&&!1!==r&&(r=Number(r.toFixed(s))),null!==o&&!1!==o&&(o=Number(o.toFixed(s))),[o,r]})},on:J,off:function(t){var i=t&&t.split(\".\")[0],r=i&&t.substring(i.length);Object.keys(b).forEach(function(t){var e=t.split(\".\")[0],n=t.substring(e.length);i&&i!==e||r&&r!==n||delete b[t]})},get:K,set:X,reset:function(t){X(d.start,t)},__moveHandles:function(t,e,n){R(t,e,m,n)},options:o,updateOptions:function(e,t){var n=K(),i=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\"];i.forEach(function(t){void 0!==e[t]&&(o[t]=e[t])});var r=rt(o);i.forEach(function(t){void 0!==e[t]&&(d[t]=r[t])}),w=r.spectrum,d.margin=r.margin,d.limit=r.limit,d.padding=r.padding,d.pips&&N(d.pips),m=[],X(e.start||n,t)},target:_,removePips:A,pips:N},(c=d.events).fixed||l.forEach(function(t,e){I(p.start,t.children[0],B,{handleNumbers:[e]})}),c.tap&&I(p.start,u,U,{}),c.hover&&I(p.move,u,j,{hover:!0}),c.drag&&s.forEach(function(t,e){if(!1!==t&&0!==e&&e!==s.length-1){var n=l[e-1],i=l[e],r=[t];et(t,d.cssClasses.draggable),c.fixed&&(r.push(n.children[0]),r.push(i.children[0])),r.forEach(function(t){I(p.start,t,B,{handles:[n,i],handleNumbers:[e-1,e]})})}}),X(d.start),d.pips&&N(d.pips),d.tooltips&&(r=l.map(D),J(\"update\",function(t,e,n){if(r[e]){var i=t[e];!0!==d.tooltips[e]&&(i=d.tooltips[e].to(n[e])),r[e].innerHTML=i}})),J(\"update\",function(t,e,s,n,a){v.forEach(function(t){var e=l[t],n=z(m,t,0,!0,!0,!0),i=z(m,t,100,!0,!0,!0),r=a[t],o=d.ariaFormat.to(s[t]);e.children[0].setAttribute(\"aria-valuemin\",n.toFixed(1)),e.children[0].setAttribute(\"aria-valuemax\",i.toFixed(1)),e.children[0].setAttribute(\"aria-valuenow\",r.toFixed(1)),e.children[0].setAttribute(\"aria-valuetext\",o)})}),a}return{version:$,create:function(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider (\"+$+\"): create requires a single element, got: \"+t);var n=rt(e),i=P(t,n,e);return t.noUiSlider=i}}},\"object\"==typeof n?e.exports=i():window.noUiSlider=i()},432:function(i,r,o){\n",
1994
+       "      /*!\n",
1995
+       "           * Pikaday\n",
1996
+       "           *\n",
1997
+       "           * Copyright © 2014 David Bushell | BSD & MIT license | https://github.com/dbushell/Pikaday\n",
1998
+       "           */\n",
1999
+       "      !function(t,e){\"use strict\";var n;if(\"object\"==typeof o){try{n=i(\"moment\")}catch(t){}r.exports=e(n)}else t.Pikaday=e(t.moment)}(this,function(n){\"use strict\";var o=\"function\"==typeof n,s=!!window.addEventListener,c=window.document,u=window.setTimeout,a=function(t,e,n,i){s?t.addEventListener(e,n,!!i):t.attachEvent(\"on\"+e,n)},i=function(t,e,n,i){s?t.removeEventListener(e,n,!!i):t.detachEvent(\"on\"+e,n)},l=function(t,e){return-1!==(\" \"+t.className+\" \").indexOf(\" \"+e+\" \")},g=function(t){return/Array/.test(Object.prototype.toString.call(t))},B=function(t){return/Date/.test(Object.prototype.toString.call(t))&&!isNaN(t.getTime())},U=function(t,e){return[31,(n=t,n%4==0&&n%100!=0||n%400==0?29:28),31,30,31,30,31,31,30,31,30,31][e];var n},j=function(t){B(t)&&t.setHours(0,0,0,0)},z=function(t,e){return t.getTime()===e.getTime()},d=function(t,e,n){var i,r;for(i in e)(r=void 0!==t[i])&&\"object\"==typeof e[i]&&null!==e[i]&&void 0===e[i].nodeName?B(e[i])?n&&(t[i]=new Date(e[i].getTime())):g(e[i])?n&&(t[i]=e[i].slice(0)):t[i]=d({},e[i],n):!n&&r||(t[i]=e[i]);return t},r=function(t,e,n){var i;c.createEvent?((i=c.createEvent(\"HTMLEvents\")).initEvent(e,!0,!1),i=d(i,n),t.dispatchEvent(i)):c.createEventObject&&(i=c.createEventObject(),i=d(i,n),t.fireEvent(\"on\"+e,i))},e=function(t){return t.month<0&&(t.year-=Math.ceil(Math.abs(t.month)/12),t.month+=12),11<t.month&&(t.year+=Math.floor(Math.abs(t.month)/12),t.month-=12),t},h={field:null,bound:void 0,position:\"bottom left\",reposition:!0,format:\"YYYY-MM-DD\",toString:null,parse:null,defaultDate:null,setDefaultDate:!1,firstDay:0,formatStrict:!1,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,pickWholeWeek:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:\"\",showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,enableSelectionDaysInNextAndPreviousMonths:!1,numberOfMonths:1,mainCalendar:\"left\",container:void 0,blurFieldOnSelect:!0,i18n:{previousMonth:\"Previous Month\",nextMonth:\"Next Month\",months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],weekdays:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],weekdaysShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"]},theme:null,events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null,keyboardInput:!0},p=function(t,e,n){for(e+=t.firstDay;7<=e;)e-=7;return n?t.i18n.weekdaysShort[e]:t.i18n.weekdays[e]},F=function(t){var e=[],n=\"false\";if(t.isEmpty){if(!t.showDaysInNextAndPreviousMonths)return'<td class=\"is-empty\"></td>';e.push(\"is-outside-current-month\"),t.enableSelectionDaysInNextAndPreviousMonths||e.push(\"is-selection-disabled\")}return t.isDisabled&&e.push(\"is-disabled\"),t.isToday&&e.push(\"is-today\"),t.isSelected&&(e.push(\"is-selected\"),n=\"true\"),t.hasEvent&&e.push(\"has-event\"),t.isInRange&&e.push(\"is-inrange\"),t.isStartRange&&e.push(\"is-startrange\"),t.isEndRange&&e.push(\"is-endrange\"),'<td data-day=\"'+t.day+'\" class=\"'+e.join(\" \")+'\" aria-selected=\"'+n+'\"><button class=\"pika-button pika-day\" type=\"button\" data-pika-year=\"'+t.year+'\" data-pika-month=\"'+t.month+'\" data-pika-day=\"'+t.day+'\">'+t.day+\"</button></td>\"},f=function(t,e,n,i,r,o){var s,a,l,u,c,d=t._o,h=n===d.minYear,p=n===d.maxYear,f='<div id=\"'+o+'\" class=\"pika-title\" role=\"heading\" aria-live=\"assertive\">',m=!0,v=!0;for(l=[],s=0;s<12;s++)l.push('<option value=\"'+(n===r?s-e:12+s-e)+'\"'+(s===i?' selected=\"selected\"':\"\")+(h&&s<d.minMonth||p&&s>d.maxMonth?'disabled=\"disabled\"':\"\")+\">\"+d.i18n.months[s]+\"</option>\");for(u='<div class=\"pika-label\">'+d.i18n.months[i]+'<select class=\"pika-select pika-select-month\" tabindex=\"-1\">'+l.join(\"\")+\"</select></div>\",g(d.yearRange)?(s=d.yearRange[0],a=d.yearRange[1]+1):(s=n-d.yearRange,a=1+n+d.yearRange),l=[];s<a&&s<=d.maxYear;s++)s>=d.minYear&&l.push('<option value=\"'+s+'\"'+(s===n?' selected=\"selected\"':\"\")+\">\"+s+\"</option>\");return c='<div class=\"pika-label\">'+n+d.yearSuffix+'<select class=\"pika-select pika-select-year\" tabindex=\"-1\">'+l.join(\"\")+\"</select></div>\",d.showMonthAfterYear?f+=c+u:f+=u+c,h&&(0===i||d.minMonth>=i)&&(m=!1),p&&(11===i||d.maxMonth<=i)&&(v=!1),0===e&&(f+='<button class=\"pika-prev'+(m?\"\":\" is-disabled\")+'\" type=\"button\">'+d.i18n.previousMonth+\"</button>\"),e===t._o.numberOfMonths-1&&(f+='<button class=\"pika-next'+(v?\"\":\" is-disabled\")+'\" type=\"button\">'+d.i18n.nextMonth+\"</button>\"),f+=\"</div>\"},Y=function(t,e,n){return'<table cellpadding=\"0\" cellspacing=\"0\" class=\"pika-table\" role=\"grid\" aria-labelledby=\"'+n+'\">'+function(t){var e,n=[];for(t.showWeekNumber&&n.push(\"<th></th>\"),e=0;e<7;e++)n.push('<th scope=\"col\"><abbr title=\"'+p(t,e)+'\">'+p(t,e,!0)+\"</abbr></th>\");return\"<thead><tr>\"+(t.isRTL?n.reverse():n).join(\"\")+\"</tr></thead>\"}(t)+\"<tbody>\"+e.join(\"\")+\"</tbody></table>\"},t=function(t){var i=this,r=i.config(t);i._onMouseDown=function(t){if(i._v){var e=(t=t||window.event).target||t.srcElement;if(e)if(l(e,\"is-disabled\")||(!l(e,\"pika-button\")||l(e,\"is-empty\")||l(e.parentNode,\"is-disabled\")?l(e,\"pika-prev\")?i.prevMonth():l(e,\"pika-next\")&&i.nextMonth():(i.setDate(new Date(e.getAttribute(\"data-pika-year\"),e.getAttribute(\"data-pika-month\"),e.getAttribute(\"data-pika-day\"))),r.bound&&u(function(){i.hide(),r.blurFieldOnSelect&&r.field&&r.field.blur()},100))),l(e,\"pika-select\"))i._c=!0;else{if(!t.preventDefault)return t.returnValue=!1;t.preventDefault()}}},i._onChange=function(t){var e=(t=t||window.event).target||t.srcElement;e&&(l(e,\"pika-select-month\")?i.gotoMonth(e.value):l(e,\"pika-select-year\")&&i.gotoYear(e.value))},i._onKeyChange=function(t){if(t=t||window.event,i.isVisible())switch(t.keyCode){case 13:case 27:r.field&&r.field.blur();break;case 37:t.preventDefault(),i.adjustDate(\"subtract\",1);break;case 38:i.adjustDate(\"subtract\",7);break;case 39:i.adjustDate(\"add\",1);break;case 40:i.adjustDate(\"add\",7)}},i._onInputChange=function(t){var e;t.firedBy!==i&&(e=r.parse?r.parse(r.field.value,r.format):o?(e=n(r.field.value,r.format,r.formatStrict))&&e.isValid()?e.toDate():null:new Date(Date.parse(r.field.value)),B(e)&&i.setDate(e),i._v||i.show())},i._onInputFocus=function(){i.show()},i._onInputClick=function(){i.show()},i._onInputBlur=function(){var t=c.activeElement;do{if(l(t,\"pika-single\"))return}while(t=t.parentNode);i._c||(i._b=u(function(){i.hide()},50)),i._c=!1},i._onClick=function(t){var e=(t=t||window.event).target||t.srcElement,n=e;if(e){!s&&l(e,\"pika-select\")&&(e.onchange||(e.setAttribute(\"onchange\",\"return;\"),a(e,\"change\",i._onChange)));do{if(l(n,\"pika-single\")||n===r.trigger)return}while(n=n.parentNode);i._v&&e!==r.trigger&&n!==r.trigger&&i.hide()}},i.el=c.createElement(\"div\"),i.el.className=\"pika-single\"+(r.isRTL?\" is-rtl\":\"\")+(r.theme?\" \"+r.theme:\"\"),a(i.el,\"mousedown\",i._onMouseDown,!0),a(i.el,\"touchend\",i._onMouseDown,!0),a(i.el,\"change\",i._onChange),r.keyboardInput&&a(c,\"keydown\",i._onKeyChange),r.field&&(r.container?r.container.appendChild(i.el):r.bound?c.body.appendChild(i.el):r.field.parentNode.insertBefore(i.el,r.field.nextSibling),a(r.field,\"change\",i._onInputChange),r.defaultDate||(o&&r.field.value?r.defaultDate=n(r.field.value,r.format).toDate():r.defaultDate=new Date(Date.parse(r.field.value)),r.setDefaultDate=!0));var e=r.defaultDate;B(e)?r.setDefaultDate?i.setDate(e,!0):i.gotoDate(e):i.gotoDate(new Date),r.bound?(this.hide(),i.el.className+=\" is-bound\",a(r.trigger,\"click\",i._onInputClick),a(r.trigger,\"focus\",i._onInputFocus),a(r.trigger,\"blur\",i._onInputBlur)):this.show()};return t.prototype={config:function(t){this._o||(this._o=d({},h,!0));var e=d(this._o,t,!0);e.isRTL=!!e.isRTL,e.field=e.field&&e.field.nodeName?e.field:null,e.theme=\"string\"==typeof e.theme&&e.theme?e.theme:null,e.bound=!!(void 0!==e.bound?e.field&&e.bound:e.field),e.trigger=e.trigger&&e.trigger.nodeName?e.trigger:e.field,e.disableWeekends=!!e.disableWeekends,e.disableDayFn=\"function\"==typeof e.disableDayFn?e.disableDayFn:null;var n=parseInt(e.numberOfMonths,10)||1;if(e.numberOfMonths=4<n?4:n,B(e.minDate)||(e.minDate=!1),B(e.maxDate)||(e.maxDate=!1),e.minDate&&e.maxDate&&e.maxDate<e.minDate&&(e.maxDate=e.minDate=!1),e.minDate&&this.setMinDate(e.minDate),e.maxDate&&this.setMaxDate(e.maxDate),g(e.yearRange)){var i=(new Date).getFullYear()-10;e.yearRange[0]=parseInt(e.yearRange[0],10)||i,e.yearRange[1]=parseInt(e.yearRange[1],10)||i}else e.yearRange=Math.abs(parseInt(e.yearRange,10))||h.yearRange,100<e.yearRange&&(e.yearRange=100);return e},toString:function(t){return t=t||this._o.format,B(this._d)?this._o.toString?this._o.toString(this._d,t):o?n(this._d).format(t):this._d.toDateString():\"\"},getMoment:function(){return o?n(this._d):null},setMoment:function(t,e){o&&n.isMoment(t)&&this.setDate(t.toDate(),e)},getDate:function(){return B(this._d)?new Date(this._d.getTime()):null},setDate:function(t,e){if(!t)return this._d=null,this._o.field&&(this._o.field.value=\"\",r(this._o.field,\"change\",{firedBy:this})),this.draw();if(\"string\"==typeof t&&(t=new Date(Date.parse(t))),B(t)){var n=this._o.minDate,i=this._o.maxDate;B(n)&&t<n?t=n:B(i)&&i<t&&(t=i),this._d=new Date(t.getTime()),j(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),r(this._o.field,\"change\",{firedBy:this})),e||\"function\"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},gotoDate:function(t){var e=!0;if(B(t)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),i=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),r=t.getTime();i.setMonth(i.getMonth()+1),i.setDate(i.getDate()-1),e=r<n.getTime()||i.getTime()<r}e&&(this.calendars=[{month:t.getMonth(),year:t.getFullYear()}],\"right\"===this._o.mainCalendar&&(this.calendars[0].month+=1-this._o.numberOfMonths)),this.adjustCalendars()}},adjustDate:function(t,e){var n,i=this.getDate()||new Date,r=24*parseInt(e)*60*60*1e3;\"add\"===t?n=new Date(i.valueOf()+r):\"subtract\"===t&&(n=new Date(i.valueOf()-r)),this.setDate(n)},adjustCalendars:function(){this.calendars[0]=e(this.calendars[0]);for(var t=1;t<this._o.numberOfMonths;t++)this.calendars[t]=e({month:this.calendars[0].month+t,year:this.calendars[0].year});this.draw()},gotoToday:function(){this.gotoDate(new Date)},gotoMonth:function(t){isNaN(t)||(this.calendars[0].month=parseInt(t,10),this.adjustCalendars())},nextMonth:function(){this.calendars[0].month++,this.adjustCalendars()},prevMonth:function(){this.calendars[0].month--,this.adjustCalendars()},gotoYear:function(t){isNaN(t)||(this.calendars[0].year=parseInt(t,10),this.adjustCalendars())},setMinDate:function(t){t instanceof Date?(j(t),this._o.minDate=t,this._o.minYear=t.getFullYear(),this._o.minMonth=t.getMonth()):(this._o.minDate=h.minDate,this._o.minYear=h.minYear,this._o.minMonth=h.minMonth,this._o.startRange=h.startRange),this.draw()},setMaxDate:function(t){t instanceof Date?(j(t),this._o.maxDate=t,this._o.maxYear=t.getFullYear(),this._o.maxMonth=t.getMonth()):(this._o.maxDate=h.maxDate,this._o.maxYear=h.maxYear,this._o.maxMonth=h.maxMonth,this._o.endRange=h.endRange),this.draw()},setStartRange:function(t){this._o.startRange=t},setEndRange:function(t){this._o.endRange=t},draw:function(t){if(this._v||t){var e,n=this._o,i=n.minYear,r=n.maxYear,o=n.minMonth,s=n.maxMonth,a=\"\";this._y<=i&&(this._y=i,!isNaN(o)&&this._m<o&&(this._m=o)),this._y>=r&&(this._y=r,!isNaN(s)&&this._m>s&&(this._m=s)),e=\"pika-title-\"+Math.random().toString(36).replace(/[^a-z]+/g,\"\").substr(0,2);for(var l=0;l<n.numberOfMonths;l++)a+='<div class=\"pika-lendar\">'+f(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year,e)+this.render(this.calendars[l].year,this.calendars[l].month,e)+\"</div>\";this.el.innerHTML=a,n.bound&&\"hidden\"!==n.field.type&&u(function(){n.trigger.focus()},1),\"function\"==typeof this._o.onDraw&&this._o.onDraw(this),n.bound&&n.field.setAttribute(\"aria-label\",\"Use the arrow keys to pick a date\")}},adjustPosition:function(){var t,e,n,i,r,o,s,a,l,u;if(!this._o.container){if(this.el.style.position=\"absolute\",t=this._o.trigger,e=t,n=this.el.offsetWidth,i=this.el.offsetHeight,r=window.innerWidth||c.documentElement.clientWidth,o=window.innerHeight||c.documentElement.clientHeight,s=window.pageYOffset||c.body.scrollTop||c.documentElement.scrollTop,\"function\"==typeof t.getBoundingClientRect)u=t.getBoundingClientRect(),a=u.left+window.pageXOffset,l=u.bottom+window.pageYOffset;else for(a=e.offsetLeft,l=e.offsetTop+e.offsetHeight;e=e.offsetParent;)a+=e.offsetLeft,l+=e.offsetTop;(this._o.reposition&&r<a+n||-1<this._o.position.indexOf(\"right\")&&0<a-n+t.offsetWidth)&&(a=a-n+t.offsetWidth),(this._o.reposition&&o+s<l+i||-1<this._o.position.indexOf(\"top\")&&0<l-i-t.offsetHeight)&&(l=l-i-t.offsetHeight),this.el.style.left=a+\"px\",this.el.style.top=l+\"px\"}},render:function(t,e,n){var i=this._o,r=new Date,o=U(t,e),s=new Date(t,e,1).getDay(),a=[],l=[];j(r),0<i.firstDay&&(s-=i.firstDay)<0&&(s+=7);for(var u=0===e?11:e-1,c=11===e?0:e+1,d=0===e?t-1:t,h=11===e?t+1:t,p=U(d,u),f=o+s,m=f;7<m;)m-=7;f+=7-m;for(var v,g,y,b,_,w,x,k=!1,S=0,C=0;S<f;S++){var E=new Date(t,e,S-s+1),D=!!B(this._d)&&z(E,this._d),M=z(E,r),A=-1!==i.events.indexOf(E.toDateString()),N=S<s||o+s<=S,V=S-s+1,I=e,P=t,R=i.startRange&&z(i.startRange,E),L=i.endRange&&z(i.endRange,E),T=i.startRange&&i.endRange&&i.startRange<E&&E<i.endRange,O=i.minDate&&E<i.minDate||i.maxDate&&E>i.maxDate||i.disableWeekends&&(0===(x=E.getDay())||6===x)||i.disableDayFn&&i.disableDayFn(E);N&&(S<s?(V=p+V,I=u,P=d):(V-=o,I=c,P=h));var W={day:V,month:I,year:P,hasEvent:A,isSelected:D,isToday:M,isDisabled:O,isEmpty:N,isStartRange:R,isEndRange:L,isInRange:T,showDaysInNextAndPreviousMonths:i.showDaysInNextAndPreviousMonths,enableSelectionDaysInNextAndPreviousMonths:i.enableSelectionDaysInNextAndPreviousMonths};i.pickWholeWeek&&D&&(k=!0),l.push(F(W)),7==++C&&(i.showWeekNumber&&l.unshift((y=S-s,b=e,_=t,w=void 0,w=new Date(_,0,1),'<td class=\"pika-week\">'+Math.ceil(((new Date(_,b,y)-w)/864e5+w.getDay()+1)/7)+\"</td>\")),a.push((v=l,g=i.isRTL,'<tr class=\"pika-row'+(i.pickWholeWeek?\" pick-whole-week\":\"\")+(k?\" is-selected\":\"\")+'\">'+(g?v.reverse():v).join(\"\")+\"</tr>\")),C=0,k=!(l=[]))}return Y(i,a,n)},isVisible:function(){return this._v},show:function(){var t,e,n;this.isVisible()||(this._v=!0,this.draw(),t=this.el,e=\"is-hidden\",t.className=(n=(\" \"+t.className+\" \").replace(\" \"+e+\" \",\" \")).trim?n.trim():n.replace(/^\\s+|\\s+$/g,\"\"),this._o.bound&&(a(c,\"click\",this._onClick),this.adjustPosition()),\"function\"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var t,e,n=this._v;!1!==n&&(this._o.bound&&i(c,\"click\",this._onClick),this.el.style.position=\"static\",this.el.style.left=\"auto\",this.el.style.top=\"auto\",t=this.el,l(t,e=\"is-hidden\")||(t.className=\"\"===t.className?e:t.className+\" \"+e),this._v=!1,void 0!==n&&\"function\"==typeof this._o.onClose&&this._o.onClose.call(this))},destroy:function(){var t=this._o;this.hide(),i(this.el,\"mousedown\",this._onMouseDown,!0),i(this.el,\"touchend\",this._onMouseDown,!0),i(this.el,\"change\",this._onChange),t.keyboardInput&&i(c,\"keydown\",this._onKeyChange),t.field&&(i(t.field,\"change\",this._onInputChange),t.bound&&(i(t.trigger,\"click\",this._onInputClick),i(t.trigger,\"focus\",this._onInputFocus),i(t.trigger,\"blur\",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},t})}})}(this);\n",
2000
+       "      //# sourceMappingURL=bokeh-widgets.min.js.map\n",
2001
+       "      /* END bokeh-widgets.min.js */\n",
2002
+       "    },\n",
2003
+       "    \n",
2004
+       "    function(Bokeh) {\n",
2005
+       "      /* BEGIN bokeh-tables.min.js */\n",
2006
+       "      /*!\n",
2007
+       "       * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n",
2008
+       "       * All rights reserved.\n",
2009
+       "       * \n",
2010
+       "       * Redistribution and use in source and binary forms, with or without modification,\n",
2011
+       "       * are permitted provided that the following conditions are met:\n",
2012
+       "       * \n",
2013
+       "       * Redistributions of source code must retain the above copyright notice,\n",
2014
+       "       * this list of conditions and the following disclaimer.\n",
2015
+       "       * \n",
2016
+       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
2017
+       "       * this list of conditions and the following disclaimer in the documentation\n",
2018
+       "       * and/or other materials provided with the distribution.\n",
2019
+       "       * \n",
2020
+       "       * Neither the name of Anaconda nor the names of any contributors\n",
2021
+       "       * may be used to endorse or promote products derived from this software\n",
2022
+       "       * without specific prior written permission.\n",
2023
+       "       * \n",
2024
+       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
2025
+       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
2026
+       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
2027
+       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
2028
+       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
2029
+       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
2030
+       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
2031
+       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
2032
+       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
2033
+       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
2034
+       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
2035
+       "       */\n",
2036
+       "      !function(a,b){!function(Bokeh){var define;(function(e,t,n){if(null!=Bokeh)return Bokeh.register_plugin(e,{\"models/widgets/tables/cell_editors\":433,\"models/widgets/tables/cell_formatters\":434,\"models/widgets/tables/data_table\":435,\"models/widgets/tables/index\":436,\"models/widgets/tables/main\":437,\"models/widgets/tables/table_column\":438,\"models/widgets/tables/table_widget\":439,\"models/widgets/widget\":440},437);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")})({433:function(e,t,n){var o=e(391),r=e(15),i=e(5),l=e(6),s=e(59),a=e(435),c=function(t){function e(e){return t.call(this,o.__assign({model:e.column.model},e))||this}return o.__extends(e,t),Object.defineProperty(e.prototype,\"emptyValue\",{get:function(){return null},enumerable:!0,configurable:!0}),e.prototype.initialize=function(e){t.prototype.initialize.call(this,e),this.inputEl=this._createInput(),this.defaultValue=null,this.args=e,this.render()},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-cell-editor\")},e.prototype.render=function(){t.prototype.render.call(this),this.args.container.appendChild(this.el),this.el.appendChild(this.inputEl),this.renderEditor(),this.disableNavigation()},e.prototype.renderEditor=function(){},e.prototype.disableNavigation=function(){this.inputEl.addEventListener(\"keydown\",function(e){switch(e.keyCode){case i.Keys.Left:case i.Keys.Right:case i.Keys.Up:case i.Keys.Down:case i.Keys.PageUp:case i.Keys.PageDown:e.stopImmediatePropagation()}})},e.prototype.destroy=function(){this.remove()},e.prototype.focus=function(){this.inputEl.focus()},e.prototype.show=function(){},e.prototype.hide=function(){},e.prototype.position=function(){},e.prototype.getValue=function(){return this.inputEl.value},e.prototype.setValue=function(e){this.inputEl.value=e},e.prototype.serializeValue=function(){return this.getValue()},e.prototype.isValueChanged=function(){return!(\"\"==this.getValue()&&null==this.defaultValue)&&this.getValue()!==this.defaultValue},e.prototype.applyValue=function(e,t){var n=this.args.grid.getData(),o=n.index.indexOf(e[a.DTINDEX_NAME]);n.setField(o,this.args.column.field,t)},e.prototype.loadValue=function(e){var t=e[this.args.column.field];this.defaultValue=null!=t?t:this.emptyValue,this.setValue(this.defaultValue)},e.prototype.validateValue=function(e){if(this.args.column.validator){var t=this.args.column.validator(e);if(!t.valid)return t}return{valid:!0,msg:null}},e.prototype.validate=function(){return this.validateValue(this.getValue())},e}(l.DOMView);n.CellEditorView=c;var u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"CellEditor\"},t}(s.Model);(n.CellEditor=u).initClass();var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),Object.defineProperty(e.prototype,\"emptyValue\",{get:function(){return\"\"},enumerable:!0,configurable:!0}),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e}(c);n.StringEditorView=d;var p=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"StringEditor\",this.prototype.default_view=d,this.define({completions:[r.Array,[]]})},t}(u);(n.StringEditor=p).initClass();var f=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.textarea()},t}(c);n.TextEditorView=f;var h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextEditor\",this.prototype.default_view=f},t}(u);(n.TextEditor=h).initClass();var g=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.select()},t.prototype.renderEditor=function(){for(var e=0,t=this.model.options;e<t.length;e++){var n=t[e];this.inputEl.appendChild(i.option({value:n},n))}this.focus()},t}(c);n.SelectEditorView=g;var m=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"SelectEditor\",this.prototype.default_view=g,this.define({options:[r.Array,[]]})},t}(u);(n.SelectEditor=m).initClass();var v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},t}(c);n.PercentEditorView=v;var w=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"PercentEditor\",this.prototype.default_view=v},t}(u);(n.PercentEditor=w).initClass();var y=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"checkbox\",value:\"true\"})},t.prototype.renderEditor=function(){this.focus()},t.prototype.loadValue=function(e){this.defaultValue=!!e[this.args.column.field],this.inputEl.checked=this.defaultValue},t.prototype.serializeValue=function(){return this.inputEl.checked},t}(c);n.CheckboxEditorView=y;var C=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"CheckboxEditor\",this.prototype.default_view=y},t}(u);(n.CheckboxEditor=C).initClass();var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.remove=function(){t.prototype.remove.call(this)},e.prototype.serializeValue=function(){return parseInt(this.getValue(),10)||0},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e.prototype.validateValue=function(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid integer\"}:t.prototype.validateValue.call(this,e)},e}(c);n.IntEditorView=b;var x=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"IntEditor\",this.prototype.default_view=b,this.define({step:[r.Number,1]})},t}(u);(n.IntEditor=x).initClass();var R=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.remove=function(){t.prototype.remove.call(this)},e.prototype.serializeValue=function(){return parseFloat(this.getValue())||0},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e.prototype.validateValue=function(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid number\"}:t.prototype.validateValue.call(this,e)},e}(c);n.NumberEditorView=R;var S=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"NumberEditor\",this.prototype.default_view=R,this.define({step:[r.Number,.01]})},t}(u);(n.NumberEditor=S).initClass();var E=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},t}(c);n.TimeEditorView=E;var k=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"TimeEditor\",this.prototype.default_view=E},t}(u);(n.TimeEditor=k).initClass();var T=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},Object.defineProperty(t.prototype,\"emptyValue\",{get:function(){return new Date},enumerable:!0,configurable:!0}),t.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},t.prototype.destroy=function(){e.prototype.destroy.call(this)},t.prototype.show=function(){e.prototype.show.call(this)},t.prototype.hide=function(){e.prototype.hide.call(this)},t.prototype.position=function(){return e.prototype.position.call(this)},t.prototype.getValue=function(){},t.prototype.setValue=function(e){},t}(c);n.DateEditorView=T;var P=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"DateEditor\",this.prototype.default_view=T},t}(u);(n.DateEditor=P).initClass()},434:function(e,t,n){var a=e(391),u=e(361),c=e(449),s=e(390),o=e(15),d=e(5),p=e(44),r=e(59),i=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.prototype.doFormat=function(e,t,n,o,r){return null==n?\"\":(n+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")},e}(r.Model),l=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"StringFormatter\",this.define({font_style:[o.FontStyle,\"normal\"],text_align:[o.TextAlign,\"left\"],text_color:[o.Color]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this.font_style,l=this.text_align,s=this.text_color,a=d.div({},null==n?\"\":\"\"+n);switch(i){case\"bold\":a.style.fontWeight=\"bold\";break;case\"italic\":a.style.fontStyle=\"italic\"}return null!=l&&(a.style.textAlign=l),null!=s&&(a.style.color=s),a.outerHTML},e}(n.CellFormatter=i);(n.StringFormatter=l).initClass();var f=function(c){function e(e){return c.call(this,e)||this}return a.__extends(e,c),e.initClass=function(){this.prototype.type=\"NumberFormatter\",this.define({format:[o.String,\"0,0\"],language:[o.String,\"en\"],rounding:[o.String,\"round\"]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this,l=this.format,s=this.language,a=function(){switch(i.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}}();return n=u.format(n,l,s,a),c.prototype.doFormat.call(this,e,t,n,o,r)},e}(l);(n.NumberFormatter=f).initClass();var h=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"BooleanFormatter\",this.define({icon:[o.String,\"check\"]})},e.prototype.doFormat=function(e,t,n,o,r){return n?d.i({class:this.icon}).outerHTML:\"\"},e}(i);(n.BooleanFormatter=h).initClass();var g=function(l){function e(e){return l.call(this,e)||this}return a.__extends(e,l),e.initClass=function(){this.prototype.type=\"DateFormatter\",this.define({format:[o.String,\"ISO-8601\"]})},e.prototype.getFormat=function(){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}},e.prototype.doFormat=function(e,t,n,o,r){n=p.isString(n)?parseInt(n,10):n;var i=s(n,this.getFormat());return l.prototype.doFormat.call(this,e,t,i,o,r)},e}(i);(n.DateFormatter=g).initClass();var m=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"HTMLTemplateFormatter\",this.define({template:[o.String,\"<%= value %>\"]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this.template;if(null==n)return\"\";var l=c(i),s=a.__assign({},r,{value:n});return l(s)},e}(i);(n.HTMLTemplateFormatter=m).initClass()},435:function(e,t,i){var o=e(391),s=e(447).Grid,a=e(445).RowSelectionModel,c=e(444).CheckboxSelectColumn,r=e(15),n=e(38),l=e(21),u=e(32),d=e(14),p=e(439),f=e(440);i.DTINDEX_NAME=\"__bkdt_internal_index__\";var h=function(){function e(e,t){if(this.source=e,this.view=t,i.DTINDEX_NAME in this.source.data)throw new Error(\"special name \"+i.DTINDEX_NAME+\" cannot be used as a data table column\");this.index=this.view.indices}return e.prototype.getLength=function(){return this.index.length},e.prototype.getItem=function(e){for(var t={},n=0,o=u.keys(this.source.data);n<o.length;n++){var r=o[n];t[r]=this.source.data[r][this.index[e]]}return t[i.DTINDEX_NAME]=this.index[e],t},e.prototype.getField=function(e,t){return t==i.DTINDEX_NAME?this.index[e]:this.source.data[t][this.index[e]]},e.prototype.setField=function(e,t,n){var o={},r=this.index[e];o[t]=[[r,n]],this.source.patch(o)},e.prototype.getItemMetadata=function(e){return null},e.prototype.getRecords=function(){var t=this;return l.range(0,this.getLength()).map(function(e){return t.getItem(e)})},e.prototype.sort=function(e){var u=e.map(function(e){return[e.sortCol.field,e.sortAsc?1:-1]});0==u.length&&(u=[[i.DTINDEX_NAME,1]]);var d=this.getRecords(),p=this.index.slice();this.index.sort(function(e,t){for(var n=0,o=u;n<o.length;n++){var r=o[n],i=r[0],l=r[1],s=d[p.indexOf(e)][i],a=d[p.indexOf(t)][i],c=s==a?0:a<s?l:-l;if(0!=c)return c}return 0})},e}();i.DataProvider=h;var g=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._in_selection_update=!1,e._warned_not_reorderable=!1,e}return o.__extends(e,t),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.render()}),this.connect(this.model.source.streaming,function(){return e.updateGrid()}),this.connect(this.model.source.patching,function(){return e.updateGrid()}),this.connect(this.model.source.change,function(){return e.updateGrid()}),this.connect(this.model.source.properties.data.change,function(){return e.updateGrid()}),this.connect(this.model.source.selected.change,function(){return e.updateSelection()}),this.connect(this.model.source.selected.properties.indices.change,function(){return e.updateSelection()})},e.prototype.updateGrid=function(){var t=this;this.model.view.compute_indices(),this.data.constructor(this.model.source,this.model.view);var n=this.grid.getColumns(),e=this.grid.getSortColumns().map(function(e){return{sortCol:{field:n[t.grid.getColumnIndex(e.columnId)].field},sortAsc:e.sortAsc}});this.data.sort(e),this.grid.invalidate(),this.grid.render()},e.prototype.updateSelection=function(){var t=this;if(!this._in_selection_update){var e=this.model.source.selected,n=e.indices.map(function(e){return t.data.index.indexOf(e)});this._in_selection_update=!0,this.grid.setSelectedRows(n),this._in_selection_update=!1;var o=this.grid.getViewport(),r=this.model.get_scroll_index(o,n);null!=r&&this.grid.scrollRowToTop(r)}},e.prototype.newIndexColumn=function(){return{id:n.uniqueId(),name:this.model.index_header,field:i.DTINDEX_NAME,width:this.model.index_width,behavior:\"select\",cannotTriggerInsert:!0,resizable:!1,selectable:!1,sortable:!0,cssClass:\"bk-cell-index\",headerCssClass:\"bk-header-index\"}},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-data-table\")},e.prototype.render=function(){var e,n=this,o=this.model.columns.map(function(e){return e.toColumn()});if(\"checkbox\"==this.model.selectable&&(e=new c({cssClass:\"bk-cell-select\"}),o.unshift(e.getColumnDefinition())),null!=this.model.index_position){var t=this.model.index_position,r=this.newIndexColumn();-1==t?o.push(r):t<-1?o.splice(t+1,0,r):o.splice(t,0,r)}var i=this.model.reorderable;!i||\"undefined\"!=typeof $&&null!=$.fn&&null!=$.fn.sortable||(this._warned_not_reorderable||(d.logger.warn(\"jquery-ui is required to enable DataTable.reorderable\"),this._warned_not_reorderable=!0),i=!1);var l={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:i,forceFitColumns:this.model.fit_columns,autoHeight:\"auto\"==this.model.height,multiColumnSort:this.model.sortable,editable:this.model.editable,autoEdit:!1,rowHeight:this.model.row_height};null!=this.model.width?this.el.style.width=this.model.width+\"px\":this.el.style.width=this.model.default_width+\"px\",null!=this.model.height&&\"auto\"!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),this.data=new h(this.model.source,this.model.view),this.grid=new s(this.el,this.data,o,l),this.grid.onSort.subscribe(function(e,t){o=t.sortCols,n.data.sort(o),n.grid.invalidate(),n.updateSelection(),n.grid.render(),n.model.header_row||n._hide_header()}),!1!==this.model.selectable&&(this.grid.setSelectionModel(new a({selectActiveRow:null==e})),null!=e&&this.grid.registerPlugin(e),this.grid.onSelectedRowsChanged.subscribe(function(e,t){n._in_selection_update||(n.model.source.selected.indices=t.rows.map(function(e){return n.data.index[e]}))}),this.updateSelection(),this.model.header_row||this._hide_header())},e.prototype._hide_header=function(){for(var e=0,t=Array.from(this.el.querySelectorAll(\".slick-header-columns\"));e<t.length;e++){var n=t[e];n.style.height=\"0px\"}this.grid.resizeCanvas()},e}(f.WidgetView);i.DataTableView=g;var m=function(n){function e(e){var t=n.call(this,e)||this;return t.default_width=600,t}return o.__extends(e,n),e.initClass=function(){this.prototype.type=\"DataTable\",this.prototype.default_view=g,this.define({columns:[r.Array,[]],fit_columns:[r.Bool,!0],sortable:[r.Bool,!0],reorderable:[r.Bool,!0],editable:[r.Bool,!1],selectable:[r.Any,!0],index_position:[r.Int,0],index_header:[r.String,\"#\"],index_width:[r.Int,40],scroll_to_selection:[r.Bool,!0],header_row:[r.Bool,!0],row_height:[r.Int,25]}),this.override({height:400})},e.prototype.get_scroll_index=function(t,e){return this.scroll_to_selection&&0!=e.length?l.any(e,function(e){return t.top<=e&&e<=t.bottom})?null:Math.max(0,Math.min.apply(Math,e)-1):null},e}(p.TableWidget);(i.DataTable=m).initClass()},436:function(e,t,n){var o=e(391);o.__exportStar(e(433),n),o.__exportStar(e(434),n);var r=e(435);n.DataTable=r.DataTable;var i=e(438);n.TableColumn=i.TableColumn;var l=e(439);n.TableWidget=l.TableWidget},437:function(e,t,n){var o=e(436);n.Tables=o;var r=e(0);r.register_models(o)},438:function(e,t,n){var o=e(391),r=e(434),i=e(433),l=e(15),s=e(38),a=e(59),c=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"TableColumn\",this.define({field:[l.String],title:[l.String],width:[l.Number,300],formatter:[l.Instance,function(){return new r.StringFormatter}],editor:[l.Instance,function(){return new i.StringEditor}],sortable:[l.Bool,!0],default_sort:[l.String,\"ascending\"]})},e.prototype.toColumn=function(){return{id:s.uniqueId(),field:this.field,name:this.title,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}},e}(a.Model);(n.TableColumn=c).initClass()},439:function(e,t,n){var o=e(391),r=e(440),i=e(199),l=e(15),s=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"TableWidget\",this.define({source:[l.Instance],view:[l.Instance,function(){return new i.CDSView}]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),null==this.view.source&&(this.view.source=this.source,this.view.compute_indices())},e}(r.Widget);(n.TableWidget=s).initClass()},440:function(e,t,n){var o=e(391),r=e(157),i=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-widget\")},t.prototype.render=function(){this._render_classes(),null!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),null!=this.model.width&&(this.el.style.width=this.model.width+\"px\")},t.prototype.get_width=function(){throw new Error(\"unused\")},t.prototype.get_height=function(){throw new Error(\"unused\")},t}(r.LayoutDOMView);n.WidgetView=i;var l=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"Widget\"},e}(r.LayoutDOM);(n.Widget=l).initClass()},441:function(e,n,t){\n",
2037
+       "      /*!\n",
2038
+       "           * jQuery JavaScript Library v3.2.1\n",
2039
+       "           * https://jquery.com/\n",
2040
+       "           *\n",
2041
+       "           * Includes Sizzle.js\n",
2042
+       "           * https://sizzlejs.com/\n",
2043
+       "           *\n",
2044
+       "           * Copyright JS Foundation and other contributors\n",
2045
+       "           * Released under the MIT license\n",
2046
+       "           * https://jquery.org/license\n",
2047
+       "           *\n",
2048
+       "           * Date: 2017-03-20T18:59Z\n",
2049
+       "           */\n",
2050
+       "      !function(e,t){\"use strict\";\"object\"==typeof n&&\"object\"==typeof n.exports?n.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error(\"jQuery requires a window with a document\");return t(e)}:t(e)}(\"undefined\"!=typeof window?window:this,function(R,e){\"use strict\";var t=[],S=R.document,o=Object.getPrototypeOf,s=t.slice,g=t.concat,a=t.push,r=t.indexOf,n={},i=n.toString,h=n.hasOwnProperty,l=h.toString,c=l.call(Object),m={};function v(e,t){var n=(t=t||S).createElement(\"script\");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}var E=function(e,t){return new E.fn.init(e,t)},u=/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g,d=/^-ms-/,p=/-([a-z])/g,f=function(e,t){return t.toUpperCase()};function w(e){var t=!!e&&\"length\"in e&&e.length,n=E.type(e);return\"function\"!==n&&!E.isWindow(e)&&(\"array\"===n||0===t||\"number\"==typeof t&&0<t&&t-1 in e)}E.fn=E.prototype={jquery:\"3.2.1\",constructor:E,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=E.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return E.each(this,e)},map:function(n){return this.pushStack(E.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:t.sort,splice:t.splice},E.extend=E.fn.extend=function(){var e,t,n,o,r,i,l=arguments[0]||{},s=1,a=arguments.length,c=!1;for(\"boolean\"==typeof l&&(c=l,l=arguments[s]||{},s++),\"object\"==typeof l||E.isFunction(l)||(l={}),s===a&&(l=this,s--);s<a;s++)if(null!=(e=arguments[s]))for(t in e)n=l[t],o=e[t],l!==o&&(c&&o&&(E.isPlainObject(o)||(r=Array.isArray(o)))?(r?(r=!1,i=n&&Array.isArray(n)?n:[]):i=n&&E.isPlainObject(n)?n:{},l[t]=E.extend(c,i,o)):void 0!==o&&(l[t]=o));return l},E.extend({expando:\"jQuery\"+(\"3.2.1\"+Math.random()).replace(/\\D/g,\"\"),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return\"function\"===E.type(e)},isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=E.type(e);return(\"number\"===t||\"string\"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return!(!e||\"[object Object]\"!==i.call(e))&&(!(t=o(e))||\"function\"==typeof(n=h.call(t,\"constructor\")&&t.constructor)&&l.call(n)===c)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+\"\":\"object\"==typeof e||\"function\"==typeof e?n[i.call(e)]||\"object\":typeof e},globalEval:function(e){v(e)},camelCase:function(e){return e.replace(d,\"ms-\").replace(p,f)},each:function(e,t){var n,o=0;if(w(e))for(n=e.length;o<n&&!1!==t.call(e[o],o,e[o]);o++);else for(o in e)if(!1===t.call(e[o],o,e[o]))break;return e},trim:function(e){return null==e?\"\":(e+\"\").replace(u,\"\")},makeArray:function(e,t){var n=t||[];return null!=e&&(w(Object(e))?E.merge(n,\"string\"==typeof e?[e]:e):a.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:r.call(t,e,n)},merge:function(e,t){for(var n=+t.length,o=0,r=e.length;o<n;o++)e[r++]=t[o];return e.length=r,e},grep:function(e,t,n){for(var o=[],r=0,i=e.length,l=!n;r<i;r++)!t(e[r],r)!==l&&o.push(e[r]);return o},map:function(e,t,n){var o,r,i=0,l=[];if(w(e))for(o=e.length;i<o;i++)null!=(r=t(e[i],i,n))&&l.push(r);else for(i in e)null!=(r=t(e[i],i,n))&&l.push(r);return g.apply([],l)},guid:1,proxy:function(e,t){var n,o,r;if(\"string\"==typeof t&&(n=e[t],t=e,e=n),E.isFunction(e))return o=s.call(arguments,2),(r=function(){return e.apply(t||this,o.concat(s.call(arguments)))}).guid=e.guid=e.guid||E.guid++,r},now:Date.now,support:m}),\"function\"==typeof Symbol&&(E.fn[Symbol.iterator]=t[Symbol.iterator]),E.each(\"Boolean Number String Function Array Date RegExp Object Error Symbol\".split(\" \"),function(e,t){n[\"[object \"+t+\"]\"]=t.toLowerCase()});var y=\n",
2051
+       "      /*!\n",
2052
+       "               * Sizzle CSS Selector Engine v2.3.3\n",
2053
+       "               * https://sizzlejs.com/\n",
2054
+       "               *\n",
2055
+       "               * Copyright jQuery Foundation and other contributors\n",
2056
+       "               * Released under the MIT license\n",
2057
+       "               * http://jquery.org/license\n",
2058
+       "               *\n",
2059
+       "               * Date: 2016-08-08\n",
2060
+       "               */\n",
2061
+       "      function(n){var e,f,C,i,r,h,d,g,b,a,c,x,R,l,S,m,s,u,v,E=\"sizzle\"+1*new Date,w=n.document,k=0,o=0,p=le(),y=le(),T=le(),P=function(e,t){return e===t&&(c=!0),0},D={}.hasOwnProperty,t=[],A=t.pop,N=t.push,$=t.push,H=t.slice,L=function(e,t){for(var n=0,o=e.length;n<o;n++)if(e[n]===t)return n;return-1},_=\"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",F=\"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",I=\"(?:\\\\\\\\.|[\\\\w-]|[^\\0-\\\\xa0])+\",M=\"\\\\[\"+F+\"*(\"+I+\")(?:\"+F+\"*([*^$|!~]?=)\"+F+\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\"+I+\"))|)\"+F+\"*\\\\]\",W=\":(\"+I+\")(?:\\\\((('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\"+M+\")*)|.*)\\\\)|)\",j=new RegExp(F+\"+\",\"g\"),V=new RegExp(\"^\"+F+\"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\"+F+\"+$\",\"g\"),B=new RegExp(\"^\"+F+\"*,\"+F+\"*\"),q=new RegExp(\"^\"+F+\"*([>+~]|\"+F+\")\"+F+\"*\"),O=new RegExp(\"=\"+F+\"*([^\\\\]'\\\"]*?)\"+F+\"*\\\\]\",\"g\"),z=new RegExp(W),X=new RegExp(\"^\"+I+\"$\"),U={ID:new RegExp(\"^#(\"+I+\")\"),CLASS:new RegExp(\"^\\\\.(\"+I+\")\"),TAG:new RegExp(\"^(\"+I+\"|[*])\"),ATTR:new RegExp(\"^\"+M),PSEUDO:new RegExp(\"^\"+W),CHILD:new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\"+F+\"*(even|odd|(([+-]|)(\\\\d*)n|)\"+F+\"*(?:([+-]|)\"+F+\"*(\\\\d+)|))\"+F+\"*\\\\)|)\",\"i\"),bool:new RegExp(\"^(?:\"+_+\")$\",\"i\"),needsContext:new RegExp(\"^\"+F+\"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\"+F+\"*((?:-\\\\d)?\\\\d*)\"+F+\"*\\\\)|)(?=[^-]|$)\",\"i\")},K=/^(?:input|select|textarea|button)$/i,G=/^h\\d$/i,Y=/^[^{]+\\{\\s*\\[native \\w/,Q=/^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,J=/[+~]/,Z=new RegExp(\"\\\\\\\\([\\\\da-f]{1,6}\"+F+\"?|(\"+F+\")|.)\",\"ig\"),ee=function(e,t,n){var o=\"0x\"+t-65536;return o!=o||n?t:o<0?String.fromCharCode(o+65536):String.fromCharCode(o>>10|55296,1023&o|56320)},te=/([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,ne=function(e,t){return t?\"\\0\"===e?\"�\":e.slice(0,-1)+\"\\\\\"+e.charCodeAt(e.length-1).toString(16)+\" \":\"\\\\\"+e},oe=function(){x()},re=we(function(e){return!0===e.disabled&&(\"form\"in e||\"label\"in e)},{dir:\"parentNode\",next:\"legend\"});try{$.apply(t=H.call(w.childNodes),w.childNodes),t[w.childNodes.length].nodeType}catch(e){$={apply:t.length?function(e,t){N.apply(e,H.call(t))}:function(e,t){for(var n=e.length,o=0;e[n++]=t[o++];);e.length=n-1}}}function ie(e,t,n,o){var r,i,l,s,a,c,u,d=t&&t.ownerDocument,p=t?t.nodeType:9;if(n=n||[],\"string\"!=typeof e||!e||1!==p&&9!==p&&11!==p)return n;if(!o&&((t?t.ownerDocument||t:w)!==R&&x(t),t=t||R,S)){if(11!==p&&(a=Q.exec(e)))if(r=a[1]){if(9===p){if(!(l=t.getElementById(r)))return n;if(l.id===r)return n.push(l),n}else if(d&&(l=d.getElementById(r))&&v(t,l)&&l.id===r)return n.push(l),n}else{if(a[2])return $.apply(n,t.getElementsByTagName(e)),n;if((r=a[3])&&f.getElementsByClassName&&t.getElementsByClassName)return $.apply(n,t.getElementsByClassName(r)),n}if(f.qsa&&!T[e+\" \"]&&(!m||!m.test(e))){if(1!==p)d=t,u=e;else if(\"object\"!==t.nodeName.toLowerCase()){for((s=t.getAttribute(\"id\"))?s=s.replace(te,ne):t.setAttribute(\"id\",s=E),c=h(e),i=c.length;i--;)c[i]=\"#\"+s+\" \"+ve(c[i]);u=c.join(\",\"),d=J.test(e)&&ge(t.parentNode)||t}if(u)try{return $.apply(n,d.querySelectorAll(u)),n}catch(e){}finally{s===E&&t.removeAttribute(\"id\")}}}return g(e.replace(V,\"$1\"),t,n,o)}function le(){var o=[];return function e(t,n){o.push(t+\" \")>C.cacheLength&&delete e[o.shift()];return e[t+\" \"]=n}}function se(e){return e[E]=!0,e}function ae(e){var t=R.createElement(\"fieldset\");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ce(e,t){for(var n=e.split(\"|\"),o=n.length;o--;)C.attrHandle[n[o]]=t}function ue(e,t){var n=t&&e,o=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(o)return o;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(n){return function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&e.type===n}}function pe(n){return function(e){var t=e.nodeName.toLowerCase();return(\"input\"===t||\"button\"===t)&&e.type===n}}function fe(t){return function(e){return\"form\"in e?e.parentNode&&!1===e.disabled?\"label\"in e?\"label\"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&re(e)===t:e.disabled===t:\"label\"in e&&e.disabled===t}}function he(l){return se(function(i){return i=+i,se(function(e,t){for(var n,o=l([],e.length,i),r=o.length;r--;)e[n=o[r]]&&(e[n]=!(t[n]=e[n]))})})}function ge(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in f=ie.support={},r=ie.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&\"HTML\"!==t.nodeName},x=ie.setDocument=function(e){var t,n,o=e?e.ownerDocument||e:w;return o!==R&&9===o.nodeType&&o.documentElement&&(l=(R=o).documentElement,S=!r(R),w!==R&&(n=R.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener(\"unload\",oe,!1):n.attachEvent&&n.attachEvent(\"onunload\",oe)),f.attributes=ae(function(e){return e.className=\"i\",!e.getAttribute(\"className\")}),f.getElementsByTagName=ae(function(e){return e.appendChild(R.createComment(\"\")),!e.getElementsByTagName(\"*\").length}),f.getElementsByClassName=Y.test(R.getElementsByClassName),f.getById=ae(function(e){return l.appendChild(e).id=E,!R.getElementsByName||!R.getElementsByName(E).length}),f.getById?(C.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute(\"id\")===t}},C.find.ID=function(e,t){if(void 0!==t.getElementById&&S){var n=t.getElementById(e);return n?[n]:[]}}):(C.filter.ID=function(e){var n=e.replace(Z,ee);return function(e){var t=void 0!==e.getAttributeNode&&e.getAttributeNode(\"id\");return t&&t.value===n}},C.find.ID=function(e,t){if(void 0!==t.getElementById&&S){var n,o,r,i=t.getElementById(e);if(i){if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i];for(r=t.getElementsByName(e),o=0;i=r[o++];)if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i]}return[]}}),C.find.TAG=f.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):f.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,o=[],r=0,i=t.getElementsByTagName(e);if(\"*\"===e){for(;n=i[r++];)1===n.nodeType&&o.push(n);return o}return i},C.find.CLASS=f.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&S)return t.getElementsByClassName(e)},s=[],m=[],(f.qsa=Y.test(R.querySelectorAll))&&(ae(function(e){l.appendChild(e).innerHTML=\"<a id='\"+E+\"'></a><select id='\"+E+\"-\\r\\\\' msallowcapture=''><option selected=''></option></select>\",e.querySelectorAll(\"[msallowcapture^='']\").length&&m.push(\"[*^$]=\"+F+\"*(?:''|\\\"\\\")\"),e.querySelectorAll(\"[selected]\").length||m.push(\"\\\\[\"+F+\"*(?:value|\"+_+\")\"),e.querySelectorAll(\"[id~=\"+E+\"-]\").length||m.push(\"~=\"),e.querySelectorAll(\":checked\").length||m.push(\":checked\"),e.querySelectorAll(\"a#\"+E+\"+*\").length||m.push(\".#.+[+~]\")}),ae(function(e){e.innerHTML=\"<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>\";var t=R.createElement(\"input\");t.setAttribute(\"type\",\"hidden\"),e.appendChild(t).setAttribute(\"name\",\"D\"),e.querySelectorAll(\"[name=d]\").length&&m.push(\"name\"+F+\"*[*^$|!~]?=\"),2!==e.querySelectorAll(\":enabled\").length&&m.push(\":enabled\",\":disabled\"),l.appendChild(e).disabled=!0,2!==e.querySelectorAll(\":disabled\").length&&m.push(\":enabled\",\":disabled\"),e.querySelectorAll(\"*,:x\"),m.push(\",.*:\")})),(f.matchesSelector=Y.test(u=l.matches||l.webkitMatchesSelector||l.mozMatchesSelector||l.oMatchesSelector||l.msMatchesSelector))&&ae(function(e){f.disconnectedMatch=u.call(e,\"*\"),u.call(e,\"[s!='']:x\"),s.push(\"!=\",W)}),m=m.length&&new RegExp(m.join(\"|\")),s=s.length&&new RegExp(s.join(\"|\")),t=Y.test(l.compareDocumentPosition),v=t||Y.test(l.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,o=t&&t.parentNode;return e===o||!(!o||1!==o.nodeType||!(n.contains?n.contains(o):e.compareDocumentPosition&&16&e.compareDocumentPosition(o)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},P=t?function(e,t){if(e===t)return c=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!f.sortDetached&&t.compareDocumentPosition(e)===n?e===R||e.ownerDocument===w&&v(w,e)?-1:t===R||t.ownerDocument===w&&v(w,t)?1:a?L(a,e)-L(a,t):0:4&n?-1:1)}:function(e,t){if(e===t)return c=!0,0;var n,o=0,r=e.parentNode,i=t.parentNode,l=[e],s=[t];if(!r||!i)return e===R?-1:t===R?1:r?-1:i?1:a?L(a,e)-L(a,t):0;if(r===i)return ue(e,t);for(n=e;n=n.parentNode;)l.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;l[o]===s[o];)o++;return o?ue(l[o],s[o]):l[o]===w?-1:s[o]===w?1:0}),R},ie.matches=function(e,t){return ie(e,null,null,t)},ie.matchesSelector=function(e,t){if((e.ownerDocument||e)!==R&&x(e),t=t.replace(O,\"='$1']\"),f.matchesSelector&&S&&!T[t+\" \"]&&(!s||!s.test(t))&&(!m||!m.test(t)))try{var n=u.call(e,t);if(n||f.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){}return 0<ie(t,R,null,[e]).length},ie.contains=function(e,t){return(e.ownerDocument||e)!==R&&x(e),v(e,t)},ie.attr=function(e,t){(e.ownerDocument||e)!==R&&x(e);var n=C.attrHandle[t.toLowerCase()],o=n&&D.call(C.attrHandle,t.toLowerCase())?n(e,t,!S):void 0;return void 0!==o?o:f.attributes||!S?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},ie.escape=function(e){return(e+\"\").replace(te,ne)},ie.error=function(e){throw new Error(\"Syntax error, unrecognized expression: \"+e)},ie.uniqueSort=function(e){var t,n=[],o=0,r=0;if(c=!f.detectDuplicates,a=!f.sortStable&&e.slice(0),e.sort(P),c){for(;t=e[r++];)t===e[r]&&(o=n.push(r));for(;o--;)e.splice(n[o],1)}return a=null,e},i=ie.getText=function(e){var t,n=\"\",o=0,r=e.nodeType;if(r){if(1===r||9===r||11===r){if(\"string\"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===r||4===r)return e.nodeValue}else for(;t=e[o++];)n+=i(t);return n},(C=ie.selectors={cacheLength:50,createPseudo:se,match:U,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(Z,ee),e[3]=(e[3]||e[4]||e[5]||\"\").replace(Z,ee),\"~=\"===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]||ie.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]&&ie.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return U.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||\"\":n&&z.test(n)&&(t=h(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(Z,ee).toLowerCase();return\"*\"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+\" \"];return t||(t=new RegExp(\"(^|\"+F+\")\"+e+\"(\"+F+\"|$)\"))&&p(e,function(e){return t.test(\"string\"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute(\"class\")||\"\")})},ATTR:function(n,o,r){return function(e){var t=ie.attr(e,n);return null==t?\"!=\"===o:!o||(t+=\"\",\"=\"===o?t===r:\"!=\"===o?t!==r:\"^=\"===o?r&&0===t.indexOf(r):\"*=\"===o?r&&-1<t.indexOf(r):\"$=\"===o?r&&t.slice(-r.length)===r:\"~=\"===o?-1<(\" \"+t.replace(j,\" \")+\" \").indexOf(r):\"|=\"===o&&(t===r||t.slice(0,r.length+1)===r+\"-\"))}},CHILD:function(h,e,t,g,m){var v=\"nth\"!==h.slice(0,3),w=\"last\"!==h.slice(-4),y=\"of-type\"===e;return 1===g&&0===m?function(e){return!!e.parentNode}:function(e,t,n){var o,r,i,l,s,a,c=v!==w?\"nextSibling\":\"previousSibling\",u=e.parentNode,d=y&&e.nodeName.toLowerCase(),p=!n&&!y,f=!1;if(u){if(v){for(;c;){for(l=e;l=l[c];)if(y?l.nodeName.toLowerCase()===d:1===l.nodeType)return!1;a=c=\"only\"===h&&!a&&\"nextSibling\"}return!0}if(a=[w?u.firstChild:u.lastChild],w&&p){for(i=(l=u)[E]||(l[E]={}),r=i[l.uniqueID]||(i[l.uniqueID]={}),o=r[h]||[],s=o[0]===k&&o[1],f=s&&o[2],l=s&&u.childNodes[s];l=++s&&l&&l[c]||(f=s=0)||a.pop();)if(1===l.nodeType&&++f&&l===e){r[h]=[k,s,f];break}}else if(p&&(i=(l=e)[E]||(l[E]={}),r=i[l.uniqueID]||(i[l.uniqueID]={}),o=r[h]||[],s=o[0]===k&&o[1],f=s),!1===f)for(;(l=++s&&l&&l[c]||(f=s=0)||a.pop())&&((y?l.nodeName.toLowerCase()!==d:1!==l.nodeType)||!++f||(p&&(i=l[E]||(l[E]={}),(r=i[l.uniqueID]||(i[l.uniqueID]={}))[h]=[k,f]),l!==e)););return(f-=m)===g||f%g==0&&0<=f/g}}},PSEUDO:function(e,i){var t,l=C.pseudos[e]||C.setFilters[e.toLowerCase()]||ie.error(\"unsupported pseudo: \"+e);return l[E]?l(i):1<l.length?(t=[e,e,\"\",i],C.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,t){for(var n,o=l(e,i),r=o.length;r--;)n=L(e,o[r]),e[n]=!(t[n]=o[r])}):function(e){return l(e,0,t)}):l}},pseudos:{not:se(function(e){var o=[],r=[],s=d(e.replace(V,\"$1\"));return s[E]?se(function(e,t,n,o){for(var r,i=s(e,null,o,[]),l=e.length;l--;)(r=i[l])&&(e[l]=!(t[l]=r))}):function(e,t,n){return o[0]=e,s(o,null,n,r),o[0]=null,!r.pop()}}),has:se(function(t){return function(e){return 0<ie(t,e).length}}),contains:se(function(t){return t=t.replace(Z,ee),function(e){return-1<(e.textContent||e.innerText||i(e)).indexOf(t)}}),lang:se(function(n){return X.test(n||\"\")||ie.error(\"unsupported lang: \"+n),n=n.replace(Z,ee).toLowerCase(),function(e){var t;do{if(t=S?e.lang:e.getAttribute(\"xml:lang\")||e.getAttribute(\"lang\"))return(t=t.toLowerCase())===n||0===t.indexOf(n+\"-\")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===l},focus:function(e){return e===R.activeElement&&(!R.hasFocus||R.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:fe(!1),disabled:fe(!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!C.pseudos.empty(e)},header:function(e){return G.test(e.nodeName)},input:function(e){return K.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:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:he(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:he(function(e,t,n){for(var o=n<0?n+t:n;0<=--o;)e.push(o);return e}),gt:he(function(e,t,n){for(var o=n<0?n+t:n;++o<t;)e.push(o);return e})}}).pseudos.nth=C.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})C.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})C.pseudos[e]=pe(e);function me(){}function ve(e){for(var t=0,n=e.length,o=\"\";t<n;t++)o+=e[t].value;return o}function we(s,e,t){var a=e.dir,c=e.next,u=c||a,d=t&&\"parentNode\"===u,p=o++;return e.first?function(e,t,n){for(;e=e[a];)if(1===e.nodeType||d)return s(e,t,n);return!1}:function(e,t,n){var o,r,i,l=[k,p];if(n){for(;e=e[a];)if((1===e.nodeType||d)&&s(e,t,n))return!0}else for(;e=e[a];)if(1===e.nodeType||d)if(i=e[E]||(e[E]={}),r=i[e.uniqueID]||(i[e.uniqueID]={}),c&&c===e.nodeName.toLowerCase())e=e[a]||e;else{if((o=r[u])&&o[0]===k&&o[1]===p)return l[2]=o[2];if((r[u]=l)[2]=s(e,t,n))return!0}return!1}}function ye(r){return 1<r.length?function(e,t,n){for(var o=r.length;o--;)if(!r[o](e,t,n))return!1;return!0}:r[0]}function Ce(e,t,n,o,r){for(var i,l=[],s=0,a=e.length,c=null!=t;s<a;s++)(i=e[s])&&(n&&!n(i,o,r)||(l.push(i),c&&t.push(s)));return l}function be(f,h,g,m,v,e){return m&&!m[E]&&(m=be(m)),v&&!v[E]&&(v=be(v,e)),se(function(e,t,n,o){var r,i,l,s=[],a=[],c=t.length,u=e||function(e,t,n){for(var o=0,r=t.length;o<r;o++)ie(e,t[o],n);return n}(h||\"*\",n.nodeType?[n]:n,[]),d=!f||!e&&h?u:Ce(u,s,f,n,o),p=g?v||(e?f:c||m)?[]:t:d;if(g&&g(d,p,n,o),m)for(r=Ce(p,a),m(r,[],n,o),i=r.length;i--;)(l=r[i])&&(p[a[i]]=!(d[a[i]]=l));if(e){if(v||f){if(v){for(r=[],i=p.length;i--;)(l=p[i])&&r.push(d[i]=l);v(null,p=[],r,o)}for(i=p.length;i--;)(l=p[i])&&-1<(r=v?L(e,l):s[i])&&(e[r]=!(t[r]=l))}}else p=Ce(p===t?p.splice(c,p.length):p),v?v(null,t,p,o):$.apply(t,p)})}function xe(e){for(var r,t,n,o=e.length,i=C.relative[e[0].type],l=i||C.relative[\" \"],s=i?1:0,a=we(function(e){return e===r},l,!0),c=we(function(e){return-1<L(r,e)},l,!0),u=[function(e,t,n){var o=!i&&(n||t!==b)||((r=t).nodeType?a(e,t,n):c(e,t,n));return r=null,o}];s<o;s++)if(t=C.relative[e[s].type])u=[we(ye(u),t)];else{if((t=C.filter[e[s].type].apply(null,e[s].matches))[E]){for(n=++s;n<o&&!C.relative[e[n].type];n++);return be(1<s&&ye(u),1<s&&ve(e.slice(0,s-1).concat({value:\" \"===e[s-2].type?\"*\":\"\"})).replace(V,\"$1\"),t,s<n&&xe(e.slice(s,n)),n<o&&xe(e=e.slice(n)),n<o&&ve(e))}u.push(t)}return ye(u)}return me.prototype=C.filters=C.pseudos,C.setFilters=new me,h=ie.tokenize=function(e,t){var n,o,r,i,l,s,a,c=y[e+\" \"];if(c)return t?0:c.slice(0);for(l=e,s=[],a=C.preFilter;l;){for(i in n&&!(o=B.exec(l))||(o&&(l=l.slice(o[0].length)||l),s.push(r=[])),n=!1,(o=q.exec(l))&&(n=o.shift(),r.push({value:n,type:o[0].replace(V,\" \")}),l=l.slice(n.length)),C.filter)!(o=U[i].exec(l))||a[i]&&!(o=a[i](o))||(n=o.shift(),r.push({value:n,type:i,matches:o}),l=l.slice(n.length));if(!n)break}return t?l.length:l?ie.error(e):y(e,s).slice(0)},d=ie.compile=function(e,t){var n,m,v,w,y,o,r=[],i=[],l=T[e+\" \"];if(!l){for(t||(t=h(e)),n=t.length;n--;)(l=xe(t[n]))[E]?r.push(l):i.push(l);(l=T(e,(m=i,w=0<(v=r).length,y=0<m.length,o=function(e,t,n,o,r){var i,l,s,a=0,c=\"0\",u=e&&[],d=[],p=b,f=e||y&&C.find.TAG(\"*\",r),h=k+=null==p?1:Math.random()||.1,g=f.length;for(r&&(b=t===R||t||r);c!==g&&null!=(i=f[c]);c++){if(y&&i){for(l=0,t||i.ownerDocument===R||(x(i),n=!S);s=m[l++];)if(s(i,t||R,n)){o.push(i);break}r&&(k=h)}w&&((i=!s&&i)&&a--,e&&u.push(i))}if(a+=c,w&&c!==a){for(l=0;s=v[l++];)s(u,d,t,n);if(e){if(0<a)for(;c--;)u[c]||d[c]||(d[c]=A.call(o));d=Ce(d)}$.apply(o,d),r&&!e&&0<d.length&&1<a+v.length&&ie.uniqueSort(o)}return r&&(k=h,b=p),u},w?se(o):o))).selector=e}return l},g=ie.select=function(e,t,n,o){var r,i,l,s,a,c=\"function\"==typeof e&&e,u=!o&&h(e=c.selector||e);if(n=n||[],1===u.length){if(2<(i=u[0]=u[0].slice(0)).length&&\"ID\"===(l=i[0]).type&&9===t.nodeType&&S&&C.relative[i[1].type]){if(!(t=(C.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;c&&(t=t.parentNode),e=e.slice(i.shift().value.length)}for(r=U.needsContext.test(e)?0:i.length;r--&&(l=i[r],!C.relative[s=l.type]);)if((a=C.find[s])&&(o=a(l.matches[0].replace(Z,ee),J.test(i[0].type)&&ge(t.parentNode)||t))){if(i.splice(r,1),!(e=o.length&&ve(i)))return $.apply(n,o),n;break}}return(c||d(e,u))(o,t,!S,n,!t||J.test(e)&&ge(t.parentNode)||t),n},f.sortStable=E.split(\"\").sort(P).join(\"\")===E,f.detectDuplicates=!!c,x(),f.sortDetached=ae(function(e){return 1&e.compareDocumentPosition(R.createElement(\"fieldset\"))}),ae(function(e){return e.innerHTML=\"<a href='#'></a>\",\"#\"===e.firstChild.getAttribute(\"href\")})||ce(\"type|href|height|width\",function(e,t,n){if(!n)return e.getAttribute(t,\"type\"===t.toLowerCase()?1:2)}),f.attributes&&ae(function(e){return e.innerHTML=\"<input/>\",e.firstChild.setAttribute(\"value\",\"\"),\"\"===e.firstChild.getAttribute(\"value\")})||ce(\"value\",function(e,t,n){if(!n&&\"input\"===e.nodeName.toLowerCase())return e.defaultValue}),ae(function(e){return null==e.getAttribute(\"disabled\")})||ce(_,function(e,t,n){var o;if(!n)return!0===e[t]?t.toLowerCase():(o=e.getAttributeNode(t))&&o.specified?o.value:null}),ie}(R);E.find=y,E.expr=y.selectors,E.expr[\":\"]=E.expr.pseudos,E.uniqueSort=E.unique=y.uniqueSort,E.text=y.getText,E.isXMLDoc=y.isXML,E.contains=y.contains,E.escapeSelector=y.escape;var C=function(e,t,n){for(var o=[],r=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(r&&E(e).is(n))break;o.push(e)}return o},b=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},x=E.expr.match.needsContext;function k(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var T=/^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i,P=/^.[^:#\\[\\.,]*$/;function D(e,n,o){return E.isFunction(n)?E.grep(e,function(e,t){return!!n.call(e,t,e)!==o}):n.nodeType?E.grep(e,function(e){return e===n!==o}):\"string\"!=typeof n?E.grep(e,function(e){return-1<r.call(n,e)!==o}):P.test(n)?E.filter(n,e,o):(n=E.filter(n,e),E.grep(e,function(e){return-1<r.call(n,e)!==o&&1===e.nodeType}))}E.filter=function(e,t,n){var o=t[0];return n&&(e=\":not(\"+e+\")\"),1===t.length&&1===o.nodeType?E.find.matchesSelector(o,e)?[o]:[]:E.find.matches(e,E.grep(t,function(e){return 1===e.nodeType}))},E.fn.extend({find:function(e){var t,n,o=this.length,r=this;if(\"string\"!=typeof e)return this.pushStack(E(e).filter(function(){for(t=0;t<o;t++)if(E.contains(r[t],this))return!0}));for(n=this.pushStack([]),t=0;t<o;t++)E.find(e,r[t],n);return 1<o?E.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&&x.test(e)?E(e):e||[],!1).length}});var A,N=/^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/,$=E.fn.init=function(e,t,n){var o,r;if(!e)return this;if(n=n||A,\"string\"==typeof e){if(!(o=\"<\"===e[0]&&\">\"===e[e.length-1]&&3<=e.length?[null,e,null]:N.exec(e))||!o[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(o[1]){if(t=t instanceof E?t[0]:t,E.merge(this,E.parseHTML(o[1],t&&t.nodeType?t.ownerDocument||t:S,!0)),T.test(o[1])&&E.isPlainObject(t))for(o in t)E.isFunction(this[o])?this[o](t[o]):this.attr(o,t[o]);return this}return(r=S.getElementById(o[2]))&&(this[0]=r,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):E.isFunction(e)?void 0!==n.ready?n.ready(e):e(E):E.makeArray(e,this)};$.prototype=E.fn,A=E(S);var H=/^(?:parents|prev(?:Until|All))/,L={children:!0,contents:!0,next:!0,prev:!0};function _(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}E.fn.extend({has:function(e){var t=E(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(E.contains(this,t[e]))return!0})},closest:function(e,t){var n,o=0,r=this.length,i=[],l=\"string\"!=typeof e&&E(e);if(!x.test(e))for(;o<r;o++)for(n=this[o];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(l?-1<l.index(n):1===n.nodeType&&E.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(1<i.length?E.uniqueSort(i):i)},index:function(e){return e?\"string\"==typeof e?r.call(E(e),this[0]):r.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(E.uniqueSort(E.merge(this.get(),E(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),E.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return C(e,\"parentNode\")},parentsUntil:function(e,t,n){return C(e,\"parentNode\",n)},next:function(e){return _(e,\"nextSibling\")},prev:function(e){return _(e,\"previousSibling\")},nextAll:function(e){return C(e,\"nextSibling\")},prevAll:function(e){return C(e,\"previousSibling\")},nextUntil:function(e,t,n){return C(e,\"nextSibling\",n)},prevUntil:function(e,t,n){return C(e,\"previousSibling\",n)},siblings:function(e){return b((e.parentNode||{}).firstChild,e)},children:function(e){return b(e.firstChild)},contents:function(e){return k(e,\"iframe\")?e.contentDocument:(k(e,\"template\")&&(e=e.content||e),E.merge([],e.childNodes))}},function(o,r){E.fn[o]=function(e,t){var n=E.map(this,r,e);return\"Until\"!==o.slice(-5)&&(t=e),t&&\"string\"==typeof t&&(n=E.filter(t,n)),1<this.length&&(L[o]||E.uniqueSort(n),H.test(o)&&n.reverse()),this.pushStack(n)}});var F=/[^\\x20\\t\\r\\n\\f]+/g;function I(e){return e}function M(e){throw e}function W(e,t,n,o){var r;try{e&&E.isFunction(r=e.promise)?r.call(e).done(t).fail(n):e&&E.isFunction(r=e.then)?r.call(e,t,n):t.apply(void 0,[e].slice(o))}catch(e){n.apply(void 0,[e])}}E.Callbacks=function(o){var e,n;o=\"string\"==typeof o?(e=o,n={},E.each(e.match(F)||[],function(e,t){n[t]=!0}),n):E.extend({},o);var r,t,i,l,s=[],a=[],c=-1,u=function(){for(l=l||o.once,i=r=!0;a.length;c=-1)for(t=a.shift();++c<s.length;)!1===s[c].apply(t[0],t[1])&&o.stopOnFalse&&(c=s.length,t=!1);o.memory||(t=!1),r=!1,l&&(s=t?[]:\"\")},d={add:function(){return s&&(t&&!r&&(c=s.length-1,a.push(t)),function n(e){E.each(e,function(e,t){E.isFunction(t)?o.unique&&d.has(t)||s.push(t):t&&t.length&&\"string\"!==E.type(t)&&n(t)})}(arguments),t&&!r&&u()),this},remove:function(){return E.each(arguments,function(e,t){for(var n;-1<(n=E.inArray(t,s,n));)s.splice(n,1),n<=c&&c--}),this},has:function(e){return e?-1<E.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return l=a=[],s=t=\"\",this},disabled:function(){return!s},lock:function(){return l=a=[],t||r||(s=t=\"\"),this},locked:function(){return!!l},fireWith:function(e,t){return l||(t=[e,(t=t||[]).slice?t.slice():t],a.push(t),r||u()),this},fire:function(){return d.fireWith(this,arguments),this},fired:function(){return!!i}};return d},E.extend({Deferred:function(e){var i=[[\"notify\",\"progress\",E.Callbacks(\"memory\"),E.Callbacks(\"memory\"),2],[\"resolve\",\"done\",E.Callbacks(\"once memory\"),E.Callbacks(\"once memory\"),0,\"resolved\"],[\"reject\",\"fail\",E.Callbacks(\"once memory\"),E.Callbacks(\"once memory\"),1,\"rejected\"]],r=\"pending\",l={state:function(){return r},always:function(){return s.done(arguments).fail(arguments),this},catch:function(e){return l.then(null,e)},pipe:function(){var r=arguments;return E.Deferred(function(o){E.each(i,function(e,t){var n=E.isFunction(r[t[4]])&&r[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&E.isFunction(e.promise)?e.promise().progress(o.notify).done(o.resolve).fail(o.reject):o[t[0]+\"With\"](this,n?[e]:arguments)})}),r=null}).promise()},then:function(t,n,o){var a=0;function c(r,i,l,s){return function(){var n=this,o=arguments,e=function(){var e,t;if(!(r<a)){if((e=l.apply(n,o))===i.promise())throw new TypeError(\"Thenable self-resolution\");t=e&&(\"object\"==typeof e||\"function\"==typeof e)&&e.then,E.isFunction(t)?s?t.call(e,c(a,i,I,s),c(a,i,M,s)):(a++,t.call(e,c(a,i,I,s),c(a,i,M,s),c(a,i,I,i.notifyWith))):(l!==I&&(n=void 0,o=[e]),(s||i.resolveWith)(n,o))}},t=s?e:function(){try{e()}catch(e){E.Deferred.exceptionHook&&E.Deferred.exceptionHook(e,t.stackTrace),a<=r+1&&(l!==M&&(n=void 0,o=[e]),i.rejectWith(n,o))}};r?t():(E.Deferred.getStackHook&&(t.stackTrace=E.Deferred.getStackHook()),R.setTimeout(t))}}return E.Deferred(function(e){i[0][3].add(c(0,e,E.isFunction(o)?o:I,e.notifyWith)),i[1][3].add(c(0,e,E.isFunction(t)?t:I)),i[2][3].add(c(0,e,E.isFunction(n)?n:M))}).promise()},promise:function(e){return null!=e?E.extend(e,l):l}},s={};return E.each(i,function(e,t){var n=t[2],o=t[5];l[t[1]]=n.add,o&&n.add(function(){r=o},i[3-e][2].disable,i[0][2].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+\"With\"](this===s?void 0:this,arguments),this},s[t[0]+\"With\"]=n.fireWith}),l.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,o=Array(t),r=s.call(arguments),i=E.Deferred(),l=function(t){return function(e){o[t]=this,r[t]=1<arguments.length?s.call(arguments):e,--n||i.resolveWith(o,r)}};if(n<=1&&(W(e,i.done(l(t)).resolve,i.reject,!n),\"pending\"===i.state()||E.isFunction(r[t]&&r[t].then)))return i.then();for(;t--;)W(r[t],l(t),i.reject);return i.promise()}});var j=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;E.Deferred.exceptionHook=function(e,t){R.console&&R.console.warn&&e&&j.test(e.name)&&R.console.warn(\"jQuery.Deferred exception: \"+e.message,e.stack,t)},E.readyException=function(e){R.setTimeout(function(){throw e})};var V=E.Deferred();function B(){S.removeEventListener(\"DOMContentLoaded\",B),R.removeEventListener(\"load\",B),E.ready()}E.fn.ready=function(e){return V.then(e).catch(function(e){E.readyException(e)}),this},E.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--E.readyWait:E.isReady)||(E.isReady=!0)!==e&&0<--E.readyWait||V.resolveWith(S,[E])}}),E.ready.then=V.then,\"complete\"===S.readyState||\"loading\"!==S.readyState&&!S.documentElement.doScroll?R.setTimeout(E.ready):(S.addEventListener(\"DOMContentLoaded\",B),R.addEventListener(\"load\",B));var q=function(e,t,n,o,r,i,l){var s=0,a=e.length,c=null==n;if(\"object\"===E.type(n))for(s in r=!0,n)q(e,t,s,n[s],!0,i,l);else if(void 0!==o&&(r=!0,E.isFunction(o)||(l=!0),c&&(l?(t.call(e,o),t=null):(c=t,t=function(e,t,n){return c.call(E(e),n)})),t))for(;s<a;s++)t(e[s],n,l?o:o.call(e[s],s,t(e[s],n)));return r?e:c?t.call(e):a?t(e[0],n):i},O=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function z(){this.expando=E.expando+z.uid++}z.uid=1,z.prototype={cache:function(e){var t=e[this.expando];return t||(t={},O(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var o,r=this.cache(e);if(\"string\"==typeof t)r[E.camelCase(t)]=n;else for(o in t)r[E.camelCase(o)]=t[o];return r},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][E.camelCase(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,o=e[this.expando];if(void 0!==o){if(void 0!==t){t=Array.isArray(t)?t.map(E.camelCase):(t=E.camelCase(t))in o?[t]:t.match(F)||[],n=t.length;for(;n--;)delete o[t[n]]}(void 0===t||E.isEmptyObject(o))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!E.isEmptyObject(t)}};var X=new z,U=new z,K=/^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,G=/[A-Z]/g;function Y(e,t,n){var o;if(void 0===n&&1===e.nodeType)if(o=\"data-\"+t.replace(G,\"-$&\").toLowerCase(),\"string\"==typeof(n=e.getAttribute(o))){try{n=function(e){if(\"true\"===e)return!0;if(\"false\"===e)return!1;if(\"null\"===e)return null;if(e===+e+\"\")return+e;if(K.test(e))return JSON.parse(e);return e}(n)}catch(e){}U.set(e,t,n)}else n=void 0;return n}E.extend({hasData:function(e){return U.hasData(e)||X.hasData(e)},data:function(e,t,n){return U.access(e,t,n)},removeData:function(e,t){U.remove(e,t)},_data:function(e,t,n){return X.access(e,t,n)},_removeData:function(e,t){X.remove(e,t)}}),E.fn.extend({data:function(n,e){var t,o,r,i=this[0],l=i&&i.attributes;if(void 0===n){if(this.length&&(r=U.get(i),1===i.nodeType&&!X.get(i,\"hasDataAttrs\"))){for(t=l.length;t--;)l[t]&&0===(o=l[t].name).indexOf(\"data-\")&&(o=E.camelCase(o.slice(5)),Y(i,o,r[o]));X.set(i,\"hasDataAttrs\",!0)}return r}return\"object\"==typeof n?this.each(function(){U.set(this,n)}):q(this,function(e){var t;if(i&&void 0===e)return void 0!==(t=U.get(i,n))?t:void 0!==(t=Y(i,n))?t:void 0;this.each(function(){U.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){U.remove(this,e)})}}),E.extend({queue:function(e,t,n){var o;if(e)return t=(t||\"fx\")+\"queue\",o=X.get(e,t),n&&(!o||Array.isArray(n)?o=X.access(e,t,E.makeArray(n)):o.push(n)),o||[]},dequeue:function(e,t){t=t||\"fx\";var n=E.queue(e,t),o=n.length,r=n.shift(),i=E._queueHooks(e,t);\"inprogress\"===r&&(r=n.shift(),o--),r&&(\"fx\"===t&&n.unshift(\"inprogress\"),delete i.stop,r.call(e,function(){E.dequeue(e,t)},i)),!o&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+\"queueHooks\";return X.get(e,n)||X.access(e,n,{empty:E.Callbacks(\"once memory\").add(function(){X.remove(e,[t+\"queue\",n])})})}}),E.fn.extend({queue:function(t,n){var e=2;return\"string\"!=typeof t&&(n=t,t=\"fx\",e--),arguments.length<e?E.queue(this[0],t):void 0===n?this:this.each(function(){var e=E.queue(this,t,n);E._queueHooks(this,t),\"fx\"===t&&\"inprogress\"!==e[0]&&E.dequeue(this,t)})},dequeue:function(e){return this.each(function(){E.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||\"fx\",[])},promise:function(e,t){var n,o=1,r=E.Deferred(),i=this,l=this.length,s=function(){--o||r.resolveWith(i,[i])};for(\"string\"!=typeof e&&(t=e,e=void 0),e=e||\"fx\";l--;)(n=X.get(i[l],e+\"queueHooks\"))&&n.empty&&(o++,n.empty.add(s));return s(),r.promise(t)}});var Q=/[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source,J=new RegExp(\"^(?:([+-])=|)(\"+Q+\")([a-z%]*)$\",\"i\"),Z=[\"Top\",\"Right\",\"Bottom\",\"Left\"],ee=function(e,t){return\"none\"===(e=t||e).style.display||\"\"===e.style.display&&E.contains(e.ownerDocument,e)&&\"none\"===E.css(e,\"display\")},te=function(e,t,n,o){var r,i,l={};for(i in t)l[i]=e.style[i],e.style[i]=t[i];for(i in r=n.apply(e,o||[]),t)e.style[i]=l[i];return r};function ne(e,t,n,o){var r,i=1,l=20,s=o?function(){return o.cur()}:function(){return E.css(e,t,\"\")},a=s(),c=n&&n[3]||(E.cssNumber[t]?\"\":\"px\"),u=(E.cssNumber[t]||\"px\"!==c&&+a)&&J.exec(E.css(e,t));if(u&&u[3]!==c)for(c=c||u[3],n=n||[],u=+a||1;u/=i=i||\".5\",E.style(e,t,u+c),i!==(i=s()/a)&&1!==i&&--l;);return n&&(u=+u||+a||0,r=n[1]?u+(n[1]+1)*n[2]:+n[2],o&&(o.unit=c,o.start=u,o.end=r)),r}var oe={};function re(e){var t,n=e.ownerDocument,o=e.nodeName,r=oe[o];return r||(t=n.body.appendChild(n.createElement(o)),r=E.css(t,\"display\"),t.parentNode.removeChild(t),\"none\"===r&&(r=\"block\"),oe[o]=r)}function ie(e,t){for(var n,o,r=[],i=0,l=e.length;i<l;i++)(o=e[i]).style&&(n=o.style.display,t?(\"none\"===n&&(r[i]=X.get(o,\"display\")||null,r[i]||(o.style.display=\"\")),\"\"===o.style.display&&ee(o)&&(r[i]=re(o))):\"none\"!==n&&(r[i]=\"none\",X.set(o,\"display\",n)));for(i=0;i<l;i++)null!=r[i]&&(e[i].style.display=r[i]);return e}E.fn.extend({show:function(){return ie(this,!0)},hide:function(){return ie(this)},toggle:function(e){return\"boolean\"==typeof e?e?this.show():this.hide():this.each(function(){ee(this)?E(this).show():E(this).hide()})}});var le=/^(?:checkbox|radio)$/i,se=/<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]+)/i,ae=/^$|\\/(?:java|ecma)script/i,ce={option:[1,\"<select multiple='multiple'>\",\"</select>\"],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 ue(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||\"*\"):void 0!==e.querySelectorAll?e.querySelectorAll(t||\"*\"):[],void 0===t||t&&k(e,t)?E.merge([e],n):n}function de(e,t){for(var n=0,o=e.length;n<o;n++)X.set(e[n],\"globalEval\",!t||X.get(t[n],\"globalEval\"))}ce.optgroup=ce.option,ce.tbody=ce.tfoot=ce.colgroup=ce.caption=ce.thead,ce.th=ce.td;var pe,fe,he,ge=/<|&#?\\w+;/;function me(e,t,n,o,r){for(var i,l,s,a,c,u,d=t.createDocumentFragment(),p=[],f=0,h=e.length;f<h;f++)if((i=e[f])||0===i)if(\"object\"===E.type(i))E.merge(p,i.nodeType?[i]:i);else if(ge.test(i)){for(l=l||d.appendChild(t.createElement(\"div\")),s=(se.exec(i)||[\"\",\"\"])[1].toLowerCase(),a=ce[s]||ce._default,l.innerHTML=a[1]+E.htmlPrefilter(i)+a[2],u=a[0];u--;)l=l.lastChild;E.merge(p,l.childNodes),(l=d.firstChild).textContent=\"\"}else p.push(t.createTextNode(i));for(d.textContent=\"\",f=0;i=p[f++];)if(o&&-1<E.inArray(i,o))r&&r.push(i);else if(c=E.contains(i.ownerDocument,i),l=ue(d.appendChild(i),\"script\"),c&&de(l),n)for(u=0;i=l[u++];)ae.test(i.type||\"\")&&n.push(i);return d}pe=S.createDocumentFragment(),fe=pe.appendChild(S.createElement(\"div\")),(he=S.createElement(\"input\")).setAttribute(\"type\",\"radio\"),he.setAttribute(\"checked\",\"checked\"),he.setAttribute(\"name\",\"t\"),fe.appendChild(he),m.checkClone=fe.cloneNode(!0).cloneNode(!0).lastChild.checked,fe.innerHTML=\"<textarea>x</textarea>\",m.noCloneChecked=!!fe.cloneNode(!0).lastChild.defaultValue;var ve=S.documentElement,we=/^key/,ye=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\\.(.+)|)/;function be(){return!0}function xe(){return!1}function Re(){try{return S.activeElement}catch(e){}}function Se(e,t,n,o,r,i){var l,s;if(\"object\"==typeof t){for(s in\"string\"!=typeof n&&(o=o||n,n=void 0),t)Se(e,s,n,o,t[s],i);return e}if(null==o&&null==r?(r=n,o=n=void 0):null==r&&(\"string\"==typeof n?(r=o,o=void 0):(r=o,o=n,n=void 0)),!1===r)r=xe;else if(!r)return e;return 1===i&&(l=r,(r=function(e){return E().off(e),l.apply(this,arguments)}).guid=l.guid||(l.guid=E.guid++)),e.each(function(){E.event.add(this,t,r,o,n)})}E.event={global:{},add:function(t,e,n,o,r){var i,l,s,a,c,u,d,p,f,h,g,m=X.get(t);if(m)for(n.handler&&(n=(i=n).handler,r=i.selector),r&&E.find.matchesSelector(ve,r),n.guid||(n.guid=E.guid++),(a=m.events)||(a=m.events={}),(l=m.handle)||(l=m.handle=function(e){return void 0!==E&&E.event.triggered!==e.type?E.event.dispatch.apply(t,arguments):void 0}),e=(e||\"\").match(F)||[\"\"],c=e.length;c--;)s=Ce.exec(e[c])||[],f=g=s[1],h=(s[2]||\"\").split(\".\").sort(),f&&(d=E.event.special[f]||{},f=(r?d.delegateType:d.bindType)||f,d=E.event.special[f]||{},u=E.extend({type:f,origType:g,data:o,handler:n,guid:n.guid,selector:r,needsContext:r&&E.expr.match.needsContext.test(r),namespace:h.join(\".\")},i),(p=a[f])||((p=a[f]=[]).delegateCount=0,d.setup&&!1!==d.setup.call(t,o,h,l)||t.addEventListener&&t.addEventListener(f,l)),d.add&&(d.add.call(t,u),u.handler.guid||(u.handler.guid=n.guid)),r?p.splice(p.delegateCount++,0,u):p.push(u),E.event.global[f]=!0)},remove:function(e,t,n,o,r){var i,l,s,a,c,u,d,p,f,h,g,m=X.hasData(e)&&X.get(e);if(m&&(a=m.events)){for(t=(t||\"\").match(F)||[\"\"],c=t.length;c--;)if(s=Ce.exec(t[c])||[],f=g=s[1],h=(s[2]||\"\").split(\".\").sort(),f){for(d=E.event.special[f]||{},f=(o?d.delegateType:d.bindType)||f,p=a[f]||[],s=s[2]&&new RegExp(\"(^|\\\\.)\"+h.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"),l=i=p.length;i--;)u=p[i],!r&&g!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||o&&o!==u.selector&&(\"**\"!==o||!u.selector)||(p.splice(i,1),u.selector&&p.delegateCount--,d.remove&&d.remove.call(e,u));l&&!p.length&&(d.teardown&&!1!==d.teardown.call(e,h,m.handle)||E.removeEvent(e,f,m.handle),delete a[f])}else for(f in a)E.event.remove(e,f+t[c],n,o,!0);E.isEmptyObject(a)&&X.remove(e,\"handle events\")}},dispatch:function(e){var t,n,o,r,i,l,s=E.event.fix(e),a=new Array(arguments.length),c=(X.get(this,\"events\")||{})[s.type]||[],u=E.event.special[s.type]||{};for(a[0]=s,t=1;t<arguments.length;t++)a[t]=arguments[t];if(s.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,s)){for(l=E.event.handlers.call(this,s,c),t=0;(r=l[t++])&&!s.isPropagationStopped();)for(s.currentTarget=r.elem,n=0;(i=r.handlers[n++])&&!s.isImmediatePropagationStopped();)s.rnamespace&&!s.rnamespace.test(i.namespace)||(s.handleObj=i,s.data=i.data,void 0!==(o=((E.event.special[i.origType]||{}).handle||i.handler).apply(r.elem,a))&&!1===(s.result=o)&&(s.preventDefault(),s.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,o,r,i,l,s=[],a=t.delegateCount,c=e.target;if(a&&c.nodeType&&!(\"click\"===e.type&&1<=e.button))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&(\"click\"!==e.type||!0!==c.disabled)){for(i=[],l={},n=0;n<a;n++)o=t[n],r=o.selector+\" \",void 0===l[r]&&(l[r]=o.needsContext?-1<E(r,this).index(c):E.find(r,this,null,[c]).length),l[r]&&i.push(o);i.length&&s.push({elem:c,handlers:i})}return c=this,a<t.length&&s.push({elem:c,handlers:t.slice(a)}),s},addProp:function(t,e){Object.defineProperty(E.Event.prototype,t,{enumerable:!0,configurable:!0,get:E.isFunction(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[E.expando]?e:new E.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==Re()&&this.focus)return this.focus(),!1},delegateType:\"focusin\"},blur:{trigger:function(){if(this===Re()&&this.blur)return this.blur(),!1},delegateType:\"focusout\"},click:{trigger:function(){if(\"checkbox\"===this.type&&this.click&&k(this,\"input\"))return this.click(),!1},_default:function(e){return k(e.target,\"a\")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},E.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},E.Event=function(e,t){if(!(this instanceof E.Event))return new E.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?be:xe,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&&E.extend(this,t),this.timeStamp=e&&e.timeStamp||E.now(),this[E.expando]=!0},E.Event.prototype={constructor:E.Event,isDefaultPrevented:xe,isPropagationStopped:xe,isImmediatePropagationStopped:xe,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=be,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=be,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=be,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},E.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,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&&ye.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},E.event.addProp),E.each({mouseenter:\"mouseover\",mouseleave:\"mouseout\",pointerenter:\"pointerover\",pointerleave:\"pointerout\"},function(e,r){E.event.special[e]={delegateType:r,bindType:r,handle:function(e){var t,n=e.relatedTarget,o=e.handleObj;return n&&(n===this||E.contains(this,n))||(e.type=o.origType,t=o.handler.apply(this,arguments),e.type=r),t}}}),E.fn.extend({on:function(e,t,n,o){return Se(this,e,t,n,o)},one:function(e,t,n,o){return Se(this,e,t,n,o,1)},off:function(e,t,n){var o,r;if(e&&e.preventDefault&&e.handleObj)return o=e.handleObj,E(e.delegateTarget).off(o.namespace?o.origType+\".\"+o.namespace:o.origType,o.selector,o.handler),this;if(\"object\"==typeof e){for(r in e)this.off(r,t,e[r]);return this}return!1!==t&&\"function\"!=typeof t||(n=t,t=void 0),!1===n&&(n=xe),this.each(function(){E.event.remove(this,e,n,t)})}});var Ee=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)[^>]*)\\/>/gi,ke=/<script|<style|<link/i,Te=/checked\\s*(?:[^=]|=\\s*.checked.)/i,Pe=/^true\\/(.*)/,De=/^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g;function Ae(e,t){return k(e,\"table\")&&k(11!==t.nodeType?t:t.firstChild,\"tr\")&&E(\">tbody\",e)[0]||e}function Ne(e){return e.type=(null!==e.getAttribute(\"type\"))+\"/\"+e.type,e}function $e(e){var t=Pe.exec(e.type);return t?e.type=t[1]:e.removeAttribute(\"type\"),e}function He(e,t){var n,o,r,i,l,s,a,c;if(1===t.nodeType){if(X.hasData(e)&&(i=X.access(e),l=X.set(t,i),c=i.events))for(r in delete l.handle,l.events={},c)for(n=0,o=c[r].length;n<o;n++)E.event.add(t,r,c[r][n]);U.hasData(e)&&(s=U.access(e),a=E.extend({},s),U.set(t,a))}}function Le(e,t){var n=t.nodeName.toLowerCase();\"input\"===n&&le.test(e.type)?t.checked=e.checked:\"input\"!==n&&\"textarea\"!==n||(t.defaultValue=e.defaultValue)}function _e(n,o,r,i){o=g.apply([],o);var e,t,l,s,a,c,u=0,d=n.length,p=d-1,f=o[0],h=E.isFunction(f);if(h||1<d&&\"string\"==typeof f&&!m.checkClone&&Te.test(f))return n.each(function(e){var t=n.eq(e);h&&(o[0]=f.call(this,e,t.html())),_e(t,o,r,i)});if(d&&(e=me(o,n[0].ownerDocument,!1,n,i),t=e.firstChild,1===e.childNodes.length&&(e=t),t||i)){for(l=E.map(ue(e,\"script\"),Ne),s=l.length;u<d;u++)a=e,u!==p&&(a=E.clone(a,!0,!0),s&&E.merge(l,ue(a,\"script\"))),r.call(n[u],a,u);if(s)for(c=l[l.length-1].ownerDocument,E.map(l,$e),u=0;u<s;u++)a=l[u],ae.test(a.type||\"\")&&!X.access(a,\"globalEval\")&&E.contains(c,a)&&(a.src?E._evalUrl&&E._evalUrl(a.src):v(a.textContent.replace(De,\"\"),c))}return n}function Fe(e,t,n){for(var o,r=t?E.filter(t,e):e,i=0;null!=(o=r[i]);i++)n||1!==o.nodeType||E.cleanData(ue(o)),o.parentNode&&(n&&E.contains(o.ownerDocument,o)&&de(ue(o,\"script\")),o.parentNode.removeChild(o));return e}E.extend({htmlPrefilter:function(e){return e.replace(Ee,\"<$1></$2>\")},clone:function(e,t,n){var o,r,i,l,s=e.cloneNode(!0),a=E.contains(e.ownerDocument,e);if(!(m.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||E.isXMLDoc(e)))for(l=ue(s),i=ue(e),o=0,r=i.length;o<r;o++)Le(i[o],l[o]);if(t)if(n)for(i=i||ue(e),l=l||ue(s),o=0,r=i.length;o<r;o++)He(i[o],l[o]);else He(e,s);return 0<(l=ue(s,\"script\")).length&&de(l,!a&&ue(e,\"script\")),s},cleanData:function(e){for(var t,n,o,r=E.event.special,i=0;void 0!==(n=e[i]);i++)if(O(n)){if(t=n[X.expando]){if(t.events)for(o in t.events)r[o]?E.event.remove(n,o):E.removeEvent(n,o,t.handle);n[X.expando]=void 0}n[U.expando]&&(n[U.expando]=void 0)}}}),E.fn.extend({detach:function(e){return Fe(this,e,!0)},remove:function(e){return Fe(this,e)},text:function(e){return q(this,function(e){return void 0===e?E.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 _e(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ae(this,e);t.appendChild(e)}})},prepend:function(){return _e(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ae(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return _e(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return _e(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&&(E.cleanData(ue(e,!1)),e.textContent=\"\");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return E.clone(this,e,t)})},html:function(e){return q(this,function(e){var t=this[0]||{},n=0,o=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(\"string\"==typeof e&&!ke.test(e)&&!ce[(se.exec(e)||[\"\",\"\"])[1].toLowerCase()]){e=E.htmlPrefilter(e);try{for(;n<o;n++)1===(t=this[n]||{}).nodeType&&(E.cleanData(ue(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return _e(this,arguments,function(e){var t=this.parentNode;E.inArray(this,n)<0&&(E.cleanData(ue(this)),t&&t.replaceChild(e,this))},n)}}),E.each({appendTo:\"append\",prependTo:\"prepend\",insertBefore:\"before\",insertAfter:\"after\",replaceAll:\"replaceWith\"},function(e,l){E.fn[e]=function(e){for(var t,n=[],o=E(e),r=o.length-1,i=0;i<=r;i++)t=i===r?this:this.clone(!0),E(o[i])[l](t),a.apply(n,t.get());return this.pushStack(n)}});var Ie=/^margin/,Me=new RegExp(\"^(\"+Q+\")(?!px)[a-z%]+$\",\"i\"),We=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=R),t.getComputedStyle(e)};function je(e,t,n){var o,r,i,l,s=e.style;return(n=n||We(e))&&(\"\"!==(l=n.getPropertyValue(t)||n[t])||E.contains(e.ownerDocument,e)||(l=E.style(e,t)),!m.pixelMarginRight()&&Me.test(l)&&Ie.test(t)&&(o=s.width,r=s.minWidth,i=s.maxWidth,s.minWidth=s.maxWidth=s.width=l,l=n.width,s.width=o,s.minWidth=r,s.maxWidth=i)),void 0!==l?l+\"\":l}function Ve(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){l.style.cssText=\"box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%\",l.innerHTML=\"\",ve.appendChild(i);var e=R.getComputedStyle(l);t=\"1%\"!==e.top,r=\"2px\"===e.marginLeft,n=\"4px\"===e.width,l.style.marginRight=\"50%\",o=\"4px\"===e.marginRight,ve.removeChild(i),l=null}}var t,n,o,r,i=S.createElement(\"div\"),l=S.createElement(\"div\");l.style&&(l.style.backgroundClip=\"content-box\",l.cloneNode(!0).style.backgroundClip=\"\",m.clearCloneStyle=\"content-box\"===l.style.backgroundClip,i.style.cssText=\"border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute\",i.appendChild(l),E.extend(m,{pixelPosition:function(){return e(),t},boxSizingReliable:function(){return e(),n},pixelMarginRight:function(){return e(),o},reliableMarginLeft:function(){return e(),r}}))}();var Be=/^(none|table(?!-c[ea]).+)/,qe=/^--/,Oe={position:\"absolute\",visibility:\"hidden\",display:\"block\"},ze={letterSpacing:\"0\",fontWeight:\"400\"},Xe=[\"Webkit\",\"Moz\",\"ms\"],Ue=S.createElement(\"div\").style;function Ke(e){var t=E.cssProps[e];return t||(t=E.cssProps[e]=function(e){if(e in Ue)return e;var t=e[0].toUpperCase()+e.slice(1),n=Xe.length;for(;n--;)if((e=Xe[n]+t)in Ue)return e}(e)||e),t}function Ge(e,t,n){var o=J.exec(t);return o?Math.max(0,o[2]-(n||0))+(o[3]||\"px\"):t}function Ye(e,t,n,o,r){var i,l=0;for(i=n===(o?\"border\":\"content\")?4:\"width\"===t?1:0;i<4;i+=2)\"margin\"===n&&(l+=E.css(e,n+Z[i],!0,r)),o?(\"content\"===n&&(l-=E.css(e,\"padding\"+Z[i],!0,r)),\"margin\"!==n&&(l-=E.css(e,\"border\"+Z[i]+\"Width\",!0,r))):(l+=E.css(e,\"padding\"+Z[i],!0,r),\"padding\"!==n&&(l+=E.css(e,\"border\"+Z[i]+\"Width\",!0,r)));return l}function Qe(e,t,n){var o,r=We(e),i=je(e,t,r),l=\"border-box\"===E.css(e,\"boxSizing\",!1,r);return Me.test(i)?i:(o=l&&(m.boxSizingReliable()||i===e.style[t]),\"auto\"===i&&(i=e[\"offset\"+t[0].toUpperCase()+t.slice(1)]),(i=parseFloat(i)||0)+Ye(e,t,n||(l?\"border\":\"content\"),o,r)+\"px\")}function Je(e,t,n,o,r){return new Je.prototype.init(e,t,n,o,r)}E.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=je(e,\"opacity\");return\"\"===n?\"1\":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:\"cssFloat\"},style:function(e,t,n,o){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var r,i,l,s=E.camelCase(t),a=qe.test(t),c=e.style;if(a||(t=Ke(s)),l=E.cssHooks[t]||E.cssHooks[s],void 0===n)return l&&\"get\"in l&&void 0!==(r=l.get(e,!1,o))?r:c[t];\"string\"===(i=typeof n)&&(r=J.exec(n))&&r[1]&&(n=ne(e,t,r),i=\"number\"),null!=n&&n==n&&(\"number\"===i&&(n+=r&&r[3]||(E.cssNumber[s]?\"\":\"px\")),m.clearCloneStyle||\"\"!==n||0!==t.indexOf(\"background\")||(c[t]=\"inherit\"),l&&\"set\"in l&&void 0===(n=l.set(e,n,o))||(a?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,o){var r,i,l,s=E.camelCase(t),a=qe.test(t);return a||(t=Ke(s)),(l=E.cssHooks[t]||E.cssHooks[s])&&\"get\"in l&&(r=l.get(e,!0,n)),void 0===r&&(r=je(e,t,o)),\"normal\"===r&&t in ze&&(r=ze[t]),\"\"===n||n?(i=parseFloat(r),!0===n||isFinite(i)?i||0:r):r}}),E.each([\"height\",\"width\"],function(e,l){E.cssHooks[l]={get:function(e,t,n){if(t)return!Be.test(E.css(e,\"display\"))||e.getClientRects().length&&e.getBoundingClientRect().width?Qe(e,l,n):te(e,Oe,function(){return Qe(e,l,n)})},set:function(e,t,n){var o,r=n&&We(e),i=n&&Ye(e,l,n,\"border-box\"===E.css(e,\"boxSizing\",!1,r),r);return i&&(o=J.exec(t))&&\"px\"!==(o[3]||\"px\")&&(e.style[l]=t,t=E.css(e,l)),Ge(e,t,i)}}}),E.cssHooks.marginLeft=Ve(m.reliableMarginLeft,function(e,t){if(t)return(parseFloat(je(e,\"marginLeft\"))||e.getBoundingClientRect().left-te(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+\"px\"}),E.each({margin:\"\",padding:\"\",border:\"Width\"},function(r,i){E.cssHooks[r+i]={expand:function(e){for(var t=0,n={},o=\"string\"==typeof e?e.split(\" \"):[e];t<4;t++)n[r+Z[t]+i]=o[t]||o[t-2]||o[0];return n}},Ie.test(r)||(E.cssHooks[r+i].set=Ge)}),E.fn.extend({css:function(e,t){return q(this,function(e,t,n){var o,r,i={},l=0;if(Array.isArray(t)){for(o=We(e),r=t.length;l<r;l++)i[t[l]]=E.css(e,t[l],!1,o);return i}return void 0!==n?E.style(e,t,n):E.css(e,t)},e,t,1<arguments.length)}}),((E.Tween=Je).prototype={constructor:Je,init:function(e,t,n,o,r,i){this.elem=e,this.prop=n,this.easing=r||E.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=o,this.unit=i||(E.cssNumber[n]?\"\":\"px\")},cur:function(){var e=Je.propHooks[this.prop];return e&&e.get?e.get(this):Je.propHooks._default.get(this)},run:function(e){var t,n=Je.propHooks[this.prop];return this.options.duration?this.pos=t=E.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):Je.propHooks._default.set(this),this}}).init.prototype=Je.prototype,(Je.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=E.css(e.elem,e.prop,\"\"))&&\"auto\"!==t?t:0},set:function(e){E.fx.step[e.prop]?E.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[E.cssProps[e.prop]]&&!E.cssHooks[e.prop]?e.elem[e.prop]=e.now:E.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Je.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},E.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:\"swing\"},E.fx=Je.prototype.init,E.fx.step={};var Ze,et,tt,nt,ot,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function lt(){et&&(!1===S.hidden&&R.requestAnimationFrame?R.requestAnimationFrame(lt):R.setTimeout(lt,E.fx.interval),E.fx.tick())}function st(){return R.setTimeout(function(){Ze=void 0}),Ze=E.now()}function at(e,t){var n,o=0,r={height:e};for(t=t?1:0;o<4;o+=2-t)n=Z[o],r[\"margin\"+n]=r[\"padding\"+n]=e;return t&&(r.opacity=r.width=e),r}function ct(e,t,n){for(var o,r=(ut.tweeners[t]||[]).concat(ut.tweeners[\"*\"]),i=0,l=r.length;i<l;i++)if(o=r[i].call(n,t,e))return o}function ut(l,e,t){var n,s,o=0,r=ut.prefilters.length,a=E.Deferred().always(function(){delete i.elem}),i=function(){if(s)return!1;for(var e=Ze||st(),t=Math.max(0,c.startTime+c.duration-e),n=t/c.duration||0,o=1-n,r=0,i=c.tweens.length;r<i;r++)c.tweens[r].run(o);return a.notifyWith(l,[c,o,t]),o<1&&i?t:(i||a.notifyWith(l,[c,1,0]),a.resolveWith(l,[c]),!1)},c=a.promise({elem:l,props:E.extend({},e),opts:E.extend(!0,{specialEasing:{},easing:E.easing._default},t),originalProperties:e,originalOptions:t,startTime:Ze||st(),duration:t.duration,tweens:[],createTween:function(e,t){var n=E.Tween(l,c.opts,e,t,c.opts.specialEasing[e]||c.opts.easing);return c.tweens.push(n),n},stop:function(e){var t=0,n=e?c.tweens.length:0;if(s)return this;for(s=!0;t<n;t++)c.tweens[t].run(1);return e?(a.notifyWith(l,[c,1,0]),a.resolveWith(l,[c,e])):a.rejectWith(l,[c,e]),this}}),u=c.props;for(!function(e,t){var n,o,r,i,l;for(n in e)if(o=E.camelCase(n),r=t[o],i=e[n],Array.isArray(i)&&(r=i[1],i=e[n]=i[0]),n!==o&&(e[o]=i,delete e[n]),(l=E.cssHooks[o])&&\"expand\"in l)for(n in i=l.expand(i),delete e[o],i)n in e||(e[n]=i[n],t[n]=r);else t[o]=r}(u,c.opts.specialEasing);o<r;o++)if(n=ut.prefilters[o].call(c,l,u,c.opts))return E.isFunction(n.stop)&&(E._queueHooks(c.elem,c.opts.queue).stop=E.proxy(n.stop,n)),n;return E.map(u,ct,c),E.isFunction(c.opts.start)&&c.opts.start.call(l,c),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always),E.fx.timer(E.extend(i,{elem:l,anim:c,queue:c.opts.queue})),c}E.Animation=E.extend(ut,{tweeners:{\"*\":[function(e,t){var n=this.createTween(e,t);return ne(n.elem,e,J.exec(t),n),n}]},tweener:function(e,t){E.isFunction(e)?(t=e,e=[\"*\"]):e=e.match(F);for(var n,o=0,r=e.length;o<r;o++)n=e[o],ut.tweeners[n]=ut.tweeners[n]||[],ut.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var o,r,i,l,s,a,c,u,d=\"width\"in t||\"height\"in t,p=this,f={},h=e.style,g=e.nodeType&&ee(e),m=X.get(e,\"fxshow\");n.queue||(null==(l=E._queueHooks(e,\"fx\")).unqueued&&(l.unqueued=0,s=l.empty.fire,l.empty.fire=function(){l.unqueued||s()}),l.unqueued++,p.always(function(){p.always(function(){l.unqueued--,E.queue(e,\"fx\").length||l.empty.fire()})}));for(o in t)if(r=t[o],rt.test(r)){if(delete t[o],i=i||\"toggle\"===r,r===(g?\"hide\":\"show\")){if(\"show\"!==r||!m||void 0===m[o])continue;g=!0}f[o]=m&&m[o]||E.style(e,o)}if(!(a=!E.isEmptyObject(t))&&E.isEmptyObject(f))return;d&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(c=m&&m.display)&&(c=X.get(e,\"display\")),\"none\"===(u=E.css(e,\"display\"))&&(c?u=c:(ie([e],!0),c=e.style.display||c,u=E.css(e,\"display\"),ie([e]))),(\"inline\"===u||\"inline-block\"===u&&null!=c)&&\"none\"===E.css(e,\"float\")&&(a||(p.done(function(){h.display=c}),null==c&&(u=h.display,c=\"none\"===u?\"\":u)),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]}));for(o in a=!1,f)a||(m?\"hidden\"in m&&(g=m.hidden):m=X.access(e,\"fxshow\",{display:c}),i&&(m.hidden=!g),g&&ie([e],!0),p.done(function(){for(o in g||ie([e]),X.remove(e,\"fxshow\"),f)E.style(e,o,f[o])})),a=ct(g?m[o]:0,o,p),o in m||(m[o]=a.start,g&&(a.end=a.start,a.start=0))}],prefilter:function(e,t){t?ut.prefilters.unshift(e):ut.prefilters.push(e)}}),E.speed=function(e,t,n){var o=e&&\"object\"==typeof e?E.extend({},e):{complete:n||!n&&t||E.isFunction(e)&&e,duration:e,easing:n&&t||t&&!E.isFunction(t)&&t};return E.fx.off?o.duration=0:\"number\"!=typeof o.duration&&(o.duration in E.fx.speeds?o.duration=E.fx.speeds[o.duration]:o.duration=E.fx.speeds._default),null!=o.queue&&!0!==o.queue||(o.queue=\"fx\"),o.old=o.complete,o.complete=function(){E.isFunction(o.old)&&o.old.call(this),o.queue&&E.dequeue(this,o.queue)},o},E.fn.extend({fadeTo:function(e,t,n,o){return this.filter(ee).css(\"opacity\",0).show().end().animate({opacity:t},e,n,o)},animate:function(t,e,n,o){var r=E.isEmptyObject(t),i=E.speed(e,n,o),l=function(){var e=ut(this,E.extend({},t),i);(r||X.get(this,\"finish\"))&&e.stop(!0)};return l.finish=l,r||!1===i.queue?this.each(l):this.queue(i.queue,l)},stop:function(r,e,i){var l=function(e){var t=e.stop;delete e.stop,t(i)};return\"string\"!=typeof r&&(i=e,e=r,r=void 0),e&&!1!==r&&this.queue(r||\"fx\",[]),this.each(function(){var e=!0,t=null!=r&&r+\"queueHooks\",n=E.timers,o=X.get(this);if(t)o[t]&&o[t].stop&&l(o[t]);else for(t in o)o[t]&&o[t].stop&&it.test(t)&&l(o[t]);for(t=n.length;t--;)n[t].elem!==this||null!=r&&n[t].queue!==r||(n[t].anim.stop(i),e=!1,n.splice(t,1));!e&&i||E.dequeue(this,r)})},finish:function(l){return!1!==l&&(l=l||\"fx\"),this.each(function(){var e,t=X.get(this),n=t[l+\"queue\"],o=t[l+\"queueHooks\"],r=E.timers,i=n?n.length:0;for(t.finish=!0,E.queue(this,l,[]),o&&o.stop&&o.stop.call(this,!0),e=r.length;e--;)r[e].elem===this&&r[e].queue===l&&(r[e].anim.stop(!0),r.splice(e,1));for(e=0;e<i;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),E.each([\"toggle\",\"show\",\"hide\"],function(e,o){var r=E.fn[o];E.fn[o]=function(e,t,n){return null==e||\"boolean\"==typeof e?r.apply(this,arguments):this.animate(at(o,!0),e,t,n)}}),E.each({slideDown:at(\"show\"),slideUp:at(\"hide\"),slideToggle:at(\"toggle\"),fadeIn:{opacity:\"show\"},fadeOut:{opacity:\"hide\"},fadeToggle:{opacity:\"toggle\"}},function(e,o){E.fn[e]=function(e,t,n){return this.animate(o,e,t,n)}}),E.timers=[],E.fx.tick=function(){var e,t=0,n=E.timers;for(Ze=E.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||E.fx.stop(),Ze=void 0},E.fx.timer=function(e){E.timers.push(e),E.fx.start()},E.fx.interval=13,E.fx.start=function(){et||(et=!0,lt())},E.fx.stop=function(){et=null},E.fx.speeds={slow:600,fast:200,_default:400},E.fn.delay=function(o,e){return o=E.fx&&E.fx.speeds[o]||o,e=e||\"fx\",this.queue(e,function(e,t){var n=R.setTimeout(e,o);t.stop=function(){R.clearTimeout(n)}})},tt=S.createElement(\"input\"),nt=S.createElement(\"select\"),ot=nt.appendChild(S.createElement(\"option\")),tt.type=\"checkbox\",m.checkOn=\"\"!==tt.value,m.optSelected=ot.selected,(tt=S.createElement(\"input\")).value=\"t\",tt.type=\"radio\",m.radioValue=\"t\"===tt.value;var dt,pt=E.expr.attrHandle;E.fn.extend({attr:function(e,t){return q(this,E.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){E.removeAttr(this,e)})}}),E.extend({attr:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return void 0===e.getAttribute?E.prop(e,t,n):(1===i&&E.isXMLDoc(e)||(r=E.attrHooks[t.toLowerCase()]||(E.expr.match.bool.test(t)?dt:void 0)),void 0!==n?null===n?void E.removeAttr(e,t):r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:(e.setAttribute(t,n+\"\"),n):r&&\"get\"in r&&null!==(o=r.get(e,t))?o:null==(o=E.find.attr(e,t))?void 0:o)},attrHooks:{type:{set:function(e,t){if(!m.radioValue&&\"radio\"===t&&k(e,\"input\")){var n=e.value;return e.setAttribute(\"type\",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,o=0,r=t&&t.match(F);if(r&&1===e.nodeType)for(;n=r[o++];)e.removeAttribute(n)}}),dt={set:function(e,t,n){return!1===t?E.removeAttr(e,n):e.setAttribute(n,n),n}},E.each(E.expr.match.bool.source.match(/\\w+/g),function(e,t){var l=pt[t]||E.find.attr;pt[t]=function(e,t,n){var o,r,i=t.toLowerCase();return n||(r=pt[i],pt[i]=o,o=null!=l(e,t,n)?i:null,pt[i]=r),o}});var ft=/^(?:input|select|textarea|button)$/i,ht=/^(?:a|area)$/i;function gt(e){var t=e.match(F)||[];return t.join(\" \")}function mt(e){return e.getAttribute&&e.getAttribute(\"class\")||\"\"}E.fn.extend({prop:function(e,t){return q(this,E.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[E.propFix[e]||e]})}}),E.extend({prop:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&E.isXMLDoc(e)||(t=E.propFix[t]||t,r=E.propHooks[t]),void 0!==n?r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:e[t]=n:r&&\"get\"in r&&null!==(o=r.get(e,t))?o:e[t]},propHooks:{tabIndex:{get:function(e){var t=E.find.attr(e,\"tabindex\");return t?parseInt(t,10):ft.test(e.nodeName)||ht.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:\"htmlFor\",class:\"className\"}}),m.optSelected||(E.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)}}),E.each([\"tabIndex\",\"readOnly\",\"maxLength\",\"cellSpacing\",\"cellPadding\",\"rowSpan\",\"colSpan\",\"useMap\",\"frameBorder\",\"contentEditable\"],function(){E.propFix[this.toLowerCase()]=this}),E.fn.extend({addClass:function(t){var e,n,o,r,i,l,s,a=0;if(E.isFunction(t))return this.each(function(e){E(this).addClass(t.call(this,e,mt(this)))});if(\"string\"==typeof t&&t)for(e=t.match(F)||[];n=this[a++];)if(r=mt(n),o=1===n.nodeType&&\" \"+gt(r)+\" \"){for(l=0;i=e[l++];)o.indexOf(\" \"+i+\" \")<0&&(o+=i+\" \");s=gt(o),r!==s&&n.setAttribute(\"class\",s)}return this},removeClass:function(t){var e,n,o,r,i,l,s,a=0;if(E.isFunction(t))return this.each(function(e){E(this).removeClass(t.call(this,e,mt(this)))});if(!arguments.length)return this.attr(\"class\",\"\");if(\"string\"==typeof t&&t)for(e=t.match(F)||[];n=this[a++];)if(r=mt(n),o=1===n.nodeType&&\" \"+gt(r)+\" \"){for(l=0;i=e[l++];)for(;-1<o.indexOf(\" \"+i+\" \");)o=o.replace(\" \"+i+\" \",\" \");s=gt(o),r!==s&&n.setAttribute(\"class\",s)}return this},toggleClass:function(r,t){var i=typeof r;return\"boolean\"==typeof t&&\"string\"===i?t?this.addClass(r):this.removeClass(r):E.isFunction(r)?this.each(function(e){E(this).toggleClass(r.call(this,e,mt(this),t),t)}):this.each(function(){var e,t,n,o;if(\"string\"===i)for(t=0,n=E(this),o=r.match(F)||[];e=o[t++];)n.hasClass(e)?n.removeClass(e):n.addClass(e);else void 0!==r&&\"boolean\"!==i||((e=mt(this))&&X.set(this,\"__className__\",e),this.setAttribute&&this.setAttribute(\"class\",e||!1===r?\"\":X.get(this,\"__className__\")||\"\"))})},hasClass:function(e){var t,n,o=0;for(t=\" \"+e+\" \";n=this[o++];)if(1===n.nodeType&&-1<(\" \"+gt(mt(n))+\" \").indexOf(t))return!0;return!1}});var vt=/\\r/g;E.fn.extend({val:function(n){var o,e,r,t=this[0];return arguments.length?(r=E.isFunction(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=r?n.call(this,e,E(this).val()):n)?t=\"\":\"number\"==typeof t?t+=\"\":Array.isArray(t)&&(t=E.map(t,function(e){return null==e?\"\":e+\"\"})),(o=E.valHooks[this.type]||E.valHooks[this.nodeName.toLowerCase()])&&\"set\"in o&&void 0!==o.set(this,t,\"value\")||(this.value=t))})):t?(o=E.valHooks[t.type]||E.valHooks[t.nodeName.toLowerCase()])&&\"get\"in o&&void 0!==(e=o.get(t,\"value\"))?e:\"string\"==typeof(e=t.value)?e.replace(vt,\"\"):null==e?\"\":e:void 0}}),E.extend({valHooks:{option:{get:function(e){var t=E.find.attr(e,\"value\");return null!=t?t:gt(E.text(e))}},select:{get:function(e){var t,n,o,r=e.options,i=e.selectedIndex,l=\"select-one\"===e.type,s=l?null:[],a=l?i+1:r.length;for(o=i<0?a:l?i:0;o<a;o++)if(((n=r[o]).selected||o===i)&&!n.disabled&&(!n.parentNode.disabled||!k(n.parentNode,\"optgroup\"))){if(t=E(n).val(),l)return t;s.push(t)}return s},set:function(e,t){for(var n,o,r=e.options,i=E.makeArray(t),l=r.length;l--;)((o=r[l]).selected=-1<E.inArray(E.valHooks.option.get(o),i))&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),E.each([\"radio\",\"checkbox\"],function(){E.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<E.inArray(E(e).val(),t)}},m.checkOn||(E.valHooks[this].get=function(e){return null===e.getAttribute(\"value\")?\"on\":e.value})});var wt=/^(?:focusinfocus|focusoutblur)$/;E.extend(E.event,{trigger:function(e,t,n,o){var r,i,l,s,a,c,u,d=[n||S],p=h.call(e,\"type\")?e.type:e,f=h.call(e,\"namespace\")?e.namespace.split(\".\"):[];if(i=l=n=n||S,3!==n.nodeType&&8!==n.nodeType&&!wt.test(p+E.event.triggered)&&(-1<p.indexOf(\".\")&&(p=(f=p.split(\".\")).shift(),f.sort()),a=p.indexOf(\":\")<0&&\"on\"+p,(e=e[E.expando]?e:new E.Event(p,\"object\"==typeof e&&e)).isTrigger=o?2:3,e.namespace=f.join(\".\"),e.rnamespace=e.namespace?new RegExp(\"(^|\\\\.)\"+f.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:E.makeArray(t,[e]),u=E.event.special[p]||{},o||!u.trigger||!1!==u.trigger.apply(n,t))){if(!o&&!u.noBubble&&!E.isWindow(n)){for(s=u.delegateType||p,wt.test(s+p)||(i=i.parentNode);i;i=i.parentNode)d.push(i),l=i;l===(n.ownerDocument||S)&&d.push(l.defaultView||l.parentWindow||R)}for(r=0;(i=d[r++])&&!e.isPropagationStopped();)e.type=1<r?s:u.bindType||p,(c=(X.get(i,\"events\")||{})[e.type]&&X.get(i,\"handle\"))&&c.apply(i,t),(c=a&&i[a])&&c.apply&&O(i)&&(e.result=c.apply(i,t),!1===e.result&&e.preventDefault());return e.type=p,o||e.isDefaultPrevented()||u._default&&!1!==u._default.apply(d.pop(),t)||!O(n)||a&&E.isFunction(n[p])&&!E.isWindow(n)&&((l=n[a])&&(n[a]=null),E.event.triggered=p,n[p](),E.event.triggered=void 0,l&&(n[a]=l)),e.result}},simulate:function(e,t,n){var o=E.extend(new E.Event,n,{type:e,isSimulated:!0});E.event.trigger(o,null,t)}}),E.fn.extend({trigger:function(e,t){return this.each(function(){E.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return E.event.trigger(e,t,n,!0)}}),E.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,n){E.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}}),E.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),m.focusin=\"onfocusin\"in R,m.focusin||E.each({focus:\"focusin\",blur:\"focusout\"},function(n,o){var r=function(e){E.event.simulate(o,e.target,E.event.fix(e))};E.event.special[o]={setup:function(){var e=this.ownerDocument||this,t=X.access(e,o);t||e.addEventListener(n,r,!0),X.access(e,o,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this,t=X.access(e,o)-1;t?X.access(e,o,t):(e.removeEventListener(n,r,!0),X.remove(e,o))}}});var yt=R.location,Ct=E.now(),bt=/\\?/;E.parseXML=function(e){var t;if(!e||\"string\"!=typeof e)return null;try{t=(new R.DOMParser).parseFromString(e,\"text/xml\")}catch(e){t=void 0}return t&&!t.getElementsByTagName(\"parsererror\").length||E.error(\"Invalid XML: \"+e),t};var xt=/\\[\\]$/,Rt=/\\r?\\n/g,St=/^(?:submit|button|image|reset|file)$/i,Et=/^(?:input|select|textarea|keygen)/i;function kt(n,e,o,r){var t;if(Array.isArray(e))E.each(e,function(e,t){o||xt.test(n)?r(n,t):kt(n+\"[\"+(\"object\"==typeof t&&null!=t?e:\"\")+\"]\",t,o,r)});else if(o||\"object\"!==E.type(e))r(n,e);else for(t in e)kt(n+\"[\"+t+\"]\",e[t],o,r)}E.param=function(e,t){var n,o=[],r=function(e,t){var n=E.isFunction(t)?t():t;o[o.length]=encodeURIComponent(e)+\"=\"+encodeURIComponent(null==n?\"\":n)};if(Array.isArray(e)||e.jquery&&!E.isPlainObject(e))E.each(e,function(){r(this.name,this.value)});else for(n in e)kt(n,e[n],t,r);return o.join(\"&\")},E.fn.extend({serialize:function(){return E.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=E.prop(this,\"elements\");return e?E.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!E(this).is(\":disabled\")&&Et.test(this.nodeName)&&!St.test(e)&&(this.checked||!le.test(e))}).map(function(e,t){var n=E(this).val();return null==n?null:Array.isArray(n)?E.map(n,function(e){return{name:t.name,value:e.replace(Rt,\"\\r\\n\")}}):{name:t.name,value:n.replace(Rt,\"\\r\\n\")}}).get()}});var Tt=/%20/g,Pt=/#.*$/,Dt=/([?&])_=[^&]*/,At=/^(.*?):[ \\t]*([^\\r\\n]*)$/gm,Nt=/^(?:GET|HEAD)$/,$t=/^\\/\\//,Ht={},Lt={},_t=\"*/\".concat(\"*\"),Ft=S.createElement(\"a\");function It(i){return function(e,t){\"string\"!=typeof e&&(t=e,e=\"*\");var n,o=0,r=e.toLowerCase().match(F)||[];if(E.isFunction(t))for(;n=r[o++];)\"+\"===n[0]?(n=n.slice(1)||\"*\",(i[n]=i[n]||[]).unshift(t)):(i[n]=i[n]||[]).push(t)}}function Mt(t,r,i,l){var s={},a=t===Lt;function c(e){var o;return s[e]=!0,E.each(t[e]||[],function(e,t){var n=t(r,i,l);return\"string\"!=typeof n||a||s[n]?a?!(o=n):void 0:(r.dataTypes.unshift(n),c(n),!1)}),o}return c(r.dataTypes[0])||!s[\"*\"]&&c(\"*\")}function Wt(e,t){var n,o,r=E.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((r[n]?e:o||(o={}))[n]=t[n]);return o&&E.extend(!0,e,o),e}Ft.href=yt.href,E.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yt.href,type:\"GET\",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(yt.protocol),global:!0,processData:!0,async:!0,contentType:\"application/x-www-form-urlencoded; charset=UTF-8\",accepts:{\"*\":_t,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\":E.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Wt(Wt(e,E.ajaxSettings),t):Wt(E.ajaxSettings,e)},ajaxPrefilter:It(Ht),ajaxTransport:It(Lt),ajax:function(e,t){\"object\"==typeof e&&(t=e,e=void 0),t=t||{};var u,d,p,n,f,o,h,g,r,i,m=E.ajaxSetup({},t),v=m.context||m,w=m.context&&(v.nodeType||v.jquery)?E(v):E.event,y=E.Deferred(),C=E.Callbacks(\"once memory\"),b=m.statusCode||{},l={},s={},a=\"canceled\",x={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n)for(n={};t=At.exec(p);)n[t[1].toLowerCase()]=t[2];t=n[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,l[e]=t),this},overrideMimeType:function(e){return null==h&&(m.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)x.always(e[x.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||a;return u&&u.abort(t),c(0,t),this}};if(y.promise(x),m.url=((e||m.url||yt.href)+\"\").replace($t,yt.protocol+\"//\"),m.type=t.method||t.type||m.method||m.type,m.dataTypes=(m.dataType||\"*\").toLowerCase().match(F)||[\"\"],null==m.crossDomain){o=S.createElement(\"a\");try{o.href=m.url,o.href=o.href,m.crossDomain=Ft.protocol+\"//\"+Ft.host!=o.protocol+\"//\"+o.host}catch(e){m.crossDomain=!0}}if(m.data&&m.processData&&\"string\"!=typeof m.data&&(m.data=E.param(m.data,m.traditional)),Mt(Ht,m,t,x),h)return x;for(r in(g=E.event&&m.global)&&0==E.active++&&E.event.trigger(\"ajaxStart\"),m.type=m.type.toUpperCase(),m.hasContent=!Nt.test(m.type),d=m.url.replace(Pt,\"\"),m.hasContent?m.data&&m.processData&&0===(m.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&(m.data=m.data.replace(Tt,\"+\")):(i=m.url.slice(d.length),m.data&&(d+=(bt.test(d)?\"&\":\"?\")+m.data,delete m.data),!1===m.cache&&(d=d.replace(Dt,\"$1\"),i=(bt.test(d)?\"&\":\"?\")+\"_=\"+Ct+++i),m.url=d+i),m.ifModified&&(E.lastModified[d]&&x.setRequestHeader(\"If-Modified-Since\",E.lastModified[d]),E.etag[d]&&x.setRequestHeader(\"If-None-Match\",E.etag[d])),(m.data&&m.hasContent&&!1!==m.contentType||t.contentType)&&x.setRequestHeader(\"Content-Type\",m.contentType),x.setRequestHeader(\"Accept\",m.dataTypes[0]&&m.accepts[m.dataTypes[0]]?m.accepts[m.dataTypes[0]]+(\"*\"!==m.dataTypes[0]?\", \"+_t+\"; q=0.01\":\"\"):m.accepts[\"*\"]),m.headers)x.setRequestHeader(r,m.headers[r]);if(m.beforeSend&&(!1===m.beforeSend.call(v,x,m)||h))return x.abort();if(a=\"abort\",C.add(m.complete),x.done(m.success),x.fail(m.error),u=Mt(Lt,m,t,x)){if(x.readyState=1,g&&w.trigger(\"ajaxSend\",[x,m]),h)return x;m.async&&0<m.timeout&&(f=R.setTimeout(function(){x.abort(\"timeout\")},m.timeout));try{h=!1,u.send(l,c)}catch(e){if(h)throw e;c(-1,e)}}else c(-1,\"No Transport\");function c(e,t,n,o){var r,i,l,s,a,c=t;h||(h=!0,f&&R.clearTimeout(f),u=void 0,p=o||\"\",x.readyState=0<e?4:0,r=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var o,r,i,l,s=e.contents,a=e.dataTypes;for(;\"*\"===a[0];)a.shift(),void 0===o&&(o=e.mimeType||t.getResponseHeader(\"Content-Type\"));if(o)for(r in s)if(s[r]&&s[r].test(o)){a.unshift(r);break}if(a[0]in n)i=a[0];else{for(r in n){if(!a[0]||e.converters[r+\" \"+a[0]]){i=r;break}l||(l=r)}i=i||l}if(i)return i!==a[0]&&a.unshift(i),n[i]}(m,x,n)),s=function(e,t,n,o){var r,i,l,s,a,c={},u=e.dataTypes.slice();if(u[1])for(l in e.converters)c[l.toLowerCase()]=e.converters[l];i=u.shift();for(;i;)if(e.responseFields[i]&&(n[e.responseFields[i]]=t),!a&&o&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),a=i,i=u.shift())if(\"*\"===i)i=a;else if(\"*\"!==a&&a!==i){if(!(l=c[a+\" \"+i]||c[\"* \"+i]))for(r in c)if((s=r.split(\" \"))[1]===i&&(l=c[a+\" \"+s[0]]||c[\"* \"+s[0]])){!0===l?l=c[r]:!0!==c[r]&&(i=s[0],u.unshift(s[1]));break}if(!0!==l)if(l&&e.throws)t=l(t);else try{t=l(t)}catch(e){return{state:\"parsererror\",error:l?e:\"No conversion from \"+a+\" to \"+i}}}return{state:\"success\",data:t}}(m,s,x,r),r?(m.ifModified&&((a=x.getResponseHeader(\"Last-Modified\"))&&(E.lastModified[d]=a),(a=x.getResponseHeader(\"etag\"))&&(E.etag[d]=a)),204===e||\"HEAD\"===m.type?c=\"nocontent\":304===e?c=\"notmodified\":(c=s.state,i=s.data,l=s.error,r=!l)):(l=c,!e&&c||(c=\"error\",e<0&&(e=0))),x.status=e,x.statusText=(t||c)+\"\",r?y.resolveWith(v,[i,c,x]):y.rejectWith(v,[x,c,l]),x.statusCode(b),b=void 0,g&&w.trigger(r?\"ajaxSuccess\":\"ajaxError\",[x,m,r?i:l]),C.fireWith(v,[x,c]),g&&(w.trigger(\"ajaxComplete\",[x,m]),--E.active||E.event.trigger(\"ajaxStop\")))}return x},getJSON:function(e,t,n){return E.get(e,t,n,\"json\")},getScript:function(e,t){return E.get(e,void 0,t,\"script\")}}),E.each([\"get\",\"post\"],function(e,r){E[r]=function(e,t,n,o){return E.isFunction(t)&&(o=o||n,n=t,t=void 0),E.ajax(E.extend({url:e,type:r,dataType:o,data:t,success:n},E.isPlainObject(e)&&e))}}),E._evalUrl=function(e){return E.ajax({url:e,type:\"GET\",dataType:\"script\",cache:!0,async:!1,global:!1,throws:!0})},E.fn.extend({wrapAll:function(e){var t;return this[0]&&(E.isFunction(e)&&(e=e.call(this[0])),t=E(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(n){return E.isFunction(n)?this.each(function(e){E(this).wrapInner(n.call(this,e))}):this.each(function(){var e=E(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=E.isFunction(t);return this.each(function(e){E(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not(\"body\").each(function(){E(this).replaceWith(this.childNodes)}),this}}),E.expr.pseudos.hidden=function(e){return!E.expr.pseudos.visible(e)},E.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},E.ajaxSettings.xhr=function(){try{return new R.XMLHttpRequest}catch(e){}};var jt={0:200,1223:204},Vt=E.ajaxSettings.xhr();m.cors=!!Vt&&\"withCredentials\"in Vt,m.ajax=Vt=!!Vt,E.ajaxTransport(function(r){var i,l;if(m.cors||Vt&&!r.crossDomain)return{send:function(e,t){var n,o=r.xhr();if(o.open(r.type,r.url,r.async,r.username,r.password),r.xhrFields)for(n in r.xhrFields)o[n]=r.xhrFields[n];for(n in r.mimeType&&o.overrideMimeType&&o.overrideMimeType(r.mimeType),r.crossDomain||e[\"X-Requested-With\"]||(e[\"X-Requested-With\"]=\"XMLHttpRequest\"),e)o.setRequestHeader(n,e[n]);i=function(e){return function(){i&&(i=l=o.onload=o.onerror=o.onabort=o.onreadystatechange=null,\"abort\"===e?o.abort():\"error\"===e?\"number\"!=typeof o.status?t(0,\"error\"):t(o.status,o.statusText):t(jt[o.status]||o.status,o.statusText,\"text\"!==(o.responseType||\"text\")||\"string\"!=typeof o.responseText?{binary:o.response}:{text:o.responseText},o.getAllResponseHeaders()))}},o.onload=i(),l=o.onerror=i(\"error\"),void 0!==o.onabort?o.onabort=l:o.onreadystatechange=function(){4===o.readyState&&R.setTimeout(function(){i&&l()})},i=i(\"abort\");try{o.send(r.hasContent&&r.data||null)}catch(e){if(i)throw e}},abort:function(){i&&i()}}}),E.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),E.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 E.globalEval(e),e}}}),E.ajaxPrefilter(\"script\",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type=\"GET\")}),E.ajaxTransport(\"script\",function(n){var o,r;if(n.crossDomain)return{send:function(e,t){o=E(\"<script>\").prop({charset:n.scriptCharset,src:n.url}).on(\"load error\",r=function(e){o.remove(),r=null,e&&t(\"error\"===e.type?404:200,e.type)}),S.head.appendChild(o[0])},abort:function(){r&&r()}}});var Bt,qt=[],Ot=/(=)\\?(?=&|$)|\\?\\?/;E.ajaxSetup({jsonp:\"callback\",jsonpCallback:function(){var e=qt.pop()||E.expando+\"_\"+Ct++;return this[e]=!0,e}}),E.ajaxPrefilter(\"json jsonp\",function(e,t,n){var o,r,i,l=!1!==e.jsonp&&(Ot.test(e.url)?\"url\":\"string\"==typeof e.data&&0===(e.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&Ot.test(e.data)&&\"data\");if(l||\"jsonp\"===e.dataTypes[0])return o=e.jsonpCallback=E.isFunction(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,l?e[l]=e[l].replace(Ot,\"$1\"+o):!1!==e.jsonp&&(e.url+=(bt.test(e.url)?\"&\":\"?\")+e.jsonp+\"=\"+o),e.converters[\"script json\"]=function(){return i||E.error(o+\" was not called\"),i[0]},e.dataTypes[0]=\"json\",r=R[o],R[o]=function(){i=arguments},n.always(function(){void 0===r?E(R).removeProp(o):R[o]=r,e[o]&&(e.jsonpCallback=t.jsonpCallback,qt.push(o)),i&&E.isFunction(r)&&r(i[0]),i=r=void 0}),\"script\"}),m.createHTMLDocument=((Bt=S.implementation.createHTMLDocument(\"\").body).innerHTML=\"<form></form><form></form>\",2===Bt.childNodes.length),E.parseHTML=function(e,t,n){return\"string\"!=typeof e?[]:(\"boolean\"==typeof t&&(n=t,t=!1),t||(m.createHTMLDocument?(t=S.implementation.createHTMLDocument(\"\"),(o=t.createElement(\"base\")).href=S.location.href,t.head.appendChild(o)):t=S),r=T.exec(e),i=!n&&[],r?[t.createElement(r[1])]:(r=me([e],t,i),i&&i.length&&E(i).remove(),E.merge([],r.childNodes)));var o,r,i},E.fn.load=function(e,t,n){var o,r,i,l=this,s=e.indexOf(\" \");return-1<s&&(o=gt(e.slice(s)),e=e.slice(0,s)),E.isFunction(t)?(n=t,t=void 0):t&&\"object\"==typeof t&&(r=\"POST\"),0<l.length&&E.ajax({url:e,type:r||\"GET\",dataType:\"html\",data:t}).done(function(e){i=arguments,l.html(o?E(\"<div>\").append(E.parseHTML(e)).find(o):e)}).always(n&&function(e,t){l.each(function(){n.apply(this,i||[e.responseText,t,e])})}),this},E.each([\"ajaxStart\",\"ajaxStop\",\"ajaxComplete\",\"ajaxError\",\"ajaxSuccess\",\"ajaxSend\"],function(e,t){E.fn[t]=function(e){return this.on(t,e)}}),E.expr.pseudos.animated=function(t){return E.grep(E.timers,function(e){return t===e.elem}).length},E.offset={setOffset:function(e,t,n){var o,r,i,l,s,a,c=E.css(e,\"position\"),u=E(e),d={};\"static\"===c&&(e.style.position=\"relative\"),s=u.offset(),i=E.css(e,\"top\"),a=E.css(e,\"left\"),(\"absolute\"===c||\"fixed\"===c)&&-1<(i+a).indexOf(\"auto\")?(o=u.position(),l=o.top,r=o.left):(l=parseFloat(i)||0,r=parseFloat(a)||0),E.isFunction(t)&&(t=t.call(e,n,E.extend({},s))),null!=t.top&&(d.top=t.top-s.top+l),null!=t.left&&(d.left=t.left-s.left+r),\"using\"in t?t.using.call(e,d):u.css(d)}},E.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){E.offset.setOffset(this,t,e)});var e,n,o,r,i=this[0];return i?i.getClientRects().length?(o=i.getBoundingClientRect(),e=i.ownerDocument,n=e.documentElement,r=e.defaultView,{top:o.top+r.pageYOffset-n.clientTop,left:o.left+r.pageXOffset-n.clientLeft}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n=this[0],o={top:0,left:0};return\"fixed\"===E.css(n,\"position\")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),k(e[0],\"html\")||(o=e.offset()),o={top:o.top+E.css(e[0],\"borderTopWidth\",!0),left:o.left+E.css(e[0],\"borderLeftWidth\",!0)}),{top:t.top-o.top-E.css(n,\"marginTop\",!0),left:t.left-o.left-E.css(n,\"marginLeft\",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&\"static\"===E.css(e,\"position\");)e=e.offsetParent;return e||ve})}}),E.each({scrollLeft:\"pageXOffset\",scrollTop:\"pageYOffset\"},function(t,r){var i=\"pageYOffset\"===r;E.fn[t]=function(e){return q(this,function(e,t,n){var o;if(E.isWindow(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===n)return o?o[r]:e[t];o?o.scrollTo(i?o.pageXOffset:n,i?n:o.pageYOffset):e[t]=n},t,e,arguments.length)}}),E.each([\"top\",\"left\"],function(e,n){E.cssHooks[n]=Ve(m.pixelPosition,function(e,t){if(t)return t=je(e,n),Me.test(t)?E(e).position()[n]+\"px\":t})}),E.each({Height:\"height\",Width:\"width\"},function(l,s){E.each({padding:\"inner\"+l,content:s,\"\":\"outer\"+l},function(o,i){E.fn[i]=function(e,t){var n=arguments.length&&(o||\"boolean\"!=typeof e),r=o||(!0===e||!0===t?\"margin\":\"border\");return q(this,function(e,t,n){var o;return E.isWindow(e)?0===i.indexOf(\"outer\")?e[\"inner\"+l]:e.document.documentElement[\"client\"+l]:9===e.nodeType?(o=e.documentElement,Math.max(e.body[\"scroll\"+l],o[\"scroll\"+l],e.body[\"offset\"+l],o[\"offset\"+l],o[\"client\"+l])):void 0===n?E.css(e,t,r):E.style(e,t,n,r)},s,n?e:void 0,n)}})}),E.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,o){return this.on(t,e,n,o)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,\"**\"):this.off(t,e||\"**\",n)}}),E.holdReady=function(e){e?E.readyWait++:E.ready(!0)},E.isArray=Array.isArray,E.parseJSON=JSON.parse,E.nodeName=k,\"function\"==typeof define&&define.amd&&define(\"jquery\",[],function(){return E});var zt=R.jQuery,Xt=R.$;return E.noConflict=function(e){return R.$===E&&(R.$=Xt),e&&R.jQuery===E&&(R.jQuery=zt),E},e||(R.jQuery=R.$=E),E})},442:function(e,t,n){\n",
2062
+       "      /*!\n",
2063
+       "           * jquery.event.drag - v 2.3.0\n",
2064
+       "           * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n",
2065
+       "           * Open Source MIT License - http://threedubmedia.com/code/license\n",
2066
+       "           */\n",
2067
+       "      var f=e(448);f.fn.drag=function(e,t,n){var o=\"string\"==typeof e?e:\"\",r=f.isFunction(e)?e:f.isFunction(t)?t:null;return 0!==o.indexOf(\"drag\")&&(o=\"drag\"+o),n=(e==r?t:n)||{},r?this.on(o,n,r):this.trigger(o)};var h=f.event,o=h.special,g=o.drag={defaults:{which:1,distance:0,not:\":input\",handle:null,relative:!1,drop:!0,click:!1},datakey:\"dragdata\",noBubble:!0,add:function(e){var n=f.data(this,g.datakey),o=e.data||{};n.related+=1,f.each(g.defaults,function(e,t){void 0!==o[e]&&(n[e]=o[e])})},remove:function(){f.data(this,g.datakey).related-=1},setup:function(){if(!f.data(this,g.datakey)){var e=f.extend({related:0},g.defaults);f.data(this,g.datakey,e),h.add(this,\"touchstart mousedown\",g.init,e),this.attachEvent&&this.attachEvent(\"ondragstart\",g.dontstart)}},teardown:function(){var e=f.data(this,g.datakey)||{};e.related||(f.removeData(this,g.datakey),h.remove(this,\"touchstart mousedown\",g.init),g.textselect(!0),this.detachEvent&&this.detachEvent(\"ondragstart\",g.dontstart))},init:function(e){if(!g.touched){var t,n=e.data;if(!(0!=e.which&&0<n.which&&e.which!=n.which)&&!f(e.target).is(n.not)&&(!n.handle||f(e.target).closest(n.handle,e.currentTarget).length)&&(g.touched=\"touchstart\"==e.type?this:null,n.propagates=1,n.mousedown=this,n.interactions=[g.interaction(this,n)],n.target=e.target,n.pageX=e.pageX,n.pageY=e.pageY,n.dragging=null,t=g.hijack(e,\"draginit\",n),n.propagates))return(t=g.flatten(t))&&t.length&&(n.interactions=[],f.each(t,function(){n.interactions.push(g.interaction(this,n))})),n.propagates=n.interactions.length,!1!==n.drop&&o.drop&&o.drop.handler(e,n),g.textselect(!1),g.touched?h.add(g.touched,\"touchmove touchend\",g.handler,n):h.add(document,\"mousemove mouseup\",g.handler,n),!(!g.touched||n.live)&&void 0}},interaction:function(e,t){var n=e&&e.ownerDocument&&f(e)[t.relative?\"position\":\"offset\"]()||{top:0,left:0};return{drag:e,callback:new g.callback,droppable:[],offset:n}},handler:function(e){var t=e.data;switch(e.type){case!t.dragging&&\"touchmove\":e.preventDefault();case!t.dragging&&\"mousemove\":if(Math.pow(e.pageX-t.pageX,2)+Math.pow(e.pageY-t.pageY,2)<Math.pow(t.distance,2))break;e.target=t.target,g.hijack(e,\"dragstart\",t),t.propagates&&(t.dragging=!0);case\"touchmove\":e.preventDefault();case\"mousemove\":if(t.dragging){if(g.hijack(e,\"drag\",t),t.propagates){!1!==t.drop&&o.drop&&o.drop.handler(e,t);break}e.type=\"mouseup\"}case\"touchend\":case\"mouseup\":default:g.touched?h.remove(g.touched,\"touchmove touchend\",g.handler):h.remove(document,\"mousemove mouseup\",g.handler),t.dragging&&(!1!==t.drop&&o.drop&&o.drop.handler(e,t),g.hijack(e,\"dragend\",t)),g.textselect(!0),!1===t.click&&t.dragging&&f.data(t.mousedown,\"suppress.click\",(new Date).getTime()+5),t.dragging=g.touched=!1}},hijack:function(n,o,r,e,t){if(r){var i,l,s,a={event:n.originalEvent,type:n.type},c=o.indexOf(\"drop\")?\"drag\":\"drop\",u=e||0,d=isNaN(e)?r.interactions.length:e;n.type=o;var p=function(){};n.originalEvent=new f.Event(a.event,{preventDefault:p,stopPropagation:p,stopImmediatePropagation:p}),r.results=[];do{if(l=r.interactions[u]){if(\"dragend\"!==o&&l.cancelled)continue;s=g.properties(n,r,l),l.results=[],f(t||l[c]||r.droppable).each(function(e,t){if(s.target=t,!(n.isPropagationStopped=function(){return!1})===(i=t?h.dispatch.call(t,n,s):null)?(\"drag\"==c&&(l.cancelled=!0,r.propagates-=1),\"drop\"==o&&(l[c][e]=null)):\"dropinit\"==o&&l.droppable.push(g.element(i)||t),\"dragstart\"==o&&(l.proxy=f(g.element(i)||l.drag)[0]),l.results.push(i),delete n.result,\"dropinit\"!==o)return i}),r.results[u]=g.flatten(l.results),\"dropinit\"==o&&(l.droppable=g.flatten(l.droppable)),\"dragstart\"!=o||l.cancelled||s.update()}}while(++u<d);return n.type=a.type,n.originalEvent=a.event,g.flatten(r.results)}},properties:function(e,t,n){var o=n.callback;return o.drag=n.drag,o.proxy=n.proxy||n.drag,o.startX=t.pageX,o.startY=t.pageY,o.deltaX=e.pageX-t.pageX,o.deltaY=e.pageY-t.pageY,o.originalX=n.offset.left,o.originalY=n.offset.top,o.offsetX=o.originalX+o.deltaX,o.offsetY=o.originalY+o.deltaY,o.drop=g.flatten((n.drop||[]).slice()),o.available=g.flatten((n.droppable||[]).slice()),o},element:function(e){if(e&&(e.jquery||1==e.nodeType))return e},flatten:function(e){return f.map(e,function(e){return e&&e.jquery?f.makeArray(e):e&&e.length?g.flatten(e):e})},textselect:function(e){f(document)[e?\"off\":\"on\"](\"selectstart\",g.dontstart).css(\"MozUserSelect\",e?\"\":\"none\"),document.unselectable=e?\"off\":\"on\"},dontstart:function(){return!1},callback:function(){}};g.callback.prototype={update:function(){o.drop&&this.available.length&&f.each(this.available,function(e){o.drop.locate(this,e)})}};var r=h.dispatch;h.dispatch=function(e){if(!(0<f.data(this,\"suppress.\"+e.type)-(new Date).getTime()))return r.apply(this,arguments);f.removeData(this,\"suppress.\"+e.type)},o.draginit=o.dragstart=o.dragend=g},443:function(e,t,n){\n",
2068
+       "      /*!\n",
2069
+       "           * jquery.event.drop - v 2.3.0\n",
2070
+       "           * Copyright (c) 2010 Three Dub Media - http://threedubmedia.com\n",
2071
+       "           * Open Source MIT License - http://threedubmedia.com/code/license\n",
2072
+       "           */\n",
2073
+       "      var f=e(448);f.fn.drop=function(e,t,n){var o=\"string\"==typeof e?e:\"\",r=f.isFunction(e)?e:f.isFunction(t)?t:null;return 0!==o.indexOf(\"drop\")&&(o=\"drop\"+o),n=(e==r?t:n)||{},r?this.on(o,n,r):this.trigger(o)},f.drop=function(e){e=e||{},g.multi=!0===e.multi?1/0:!1===e.multi?1:isNaN(e.multi)?g.multi:e.multi,g.delay=e.delay||g.delay,g.tolerance=f.isFunction(e.tolerance)?e.tolerance:null===e.tolerance?null:g.tolerance,g.mode=e.mode||g.mode||\"intersect\"};var o=f.event,h=o.special,g=f.event.special.drop={multi:1,delay:20,mode:\"overlap\",targets:[],datakey:\"dropdata\",noBubble:!0,add:function(e){var t=f.data(this,g.datakey);t.related+=1},remove:function(){f.data(this,g.datakey).related-=1},setup:function(){if(!f.data(this,g.datakey)){f.data(this,g.datakey,{related:0,active:[],anyactive:0,winner:0,location:{}}),g.targets.push(this)}},teardown:function(){var e=f.data(this,g.datakey)||{};if(!e.related){f.removeData(this,g.datakey);var t=this;g.targets=f.grep(g.targets,function(e){return e!==t})}},handler:function(e,t){var n;if(t)switch(e.type){case\"mousedown\":case\"touchstart\":n=f(g.targets),\"string\"==typeof t.drop&&(n=n.filter(t.drop)),n.each(function(){var e=f.data(this,g.datakey);e.active=[],e.anyactive=0,e.winner=0}),t.droppable=n,h.drag.hijack(e,\"dropinit\",t);break;case\"mousemove\":case\"touchmove\":g.event=e,g.timer||g.tolerate(t);break;case\"mouseup\":case\"touchend\":g.timer=clearTimeout(g.timer),t.propagates&&(h.drag.hijack(e,\"drop\",t),h.drag.hijack(e,\"dropend\",t))}},locate:function(e,t){var n=f.data(e,g.datakey),o=f(e),r=o.offset()||{},i=o.outerHeight(),l=o.outerWidth(),s={elem:e,width:l,height:i,top:r.top,left:r.left,right:r.left+l,bottom:r.top+i};return n&&(n.location=s,n.index=t,n.elem=e),s},contains:function(e,t){return(t[0]||t.left)>=e.left&&(t[0]||t.right)<=e.right&&(t[1]||t.top)>=e.top&&(t[1]||t.bottom)<=e.bottom},modes:{intersect:function(e,t,n){return this.contains(n,[e.pageX,e.pageY])?1e9:this.modes.overlap.apply(this,arguments)},overlap:function(e,t,n){return Math.max(0,Math.min(n.bottom,t.bottom)-Math.max(n.top,t.top))*Math.max(0,Math.min(n.right,t.right)-Math.max(n.left,t.left))},fit:function(e,t,n){return this.contains(n,t)?1:0},middle:function(e,t,n){return this.contains(n,[t.left+.5*t.width,t.top+.5*t.height])?1:0}},sort:function(e,t){return t.winner-e.winner||e.index-t.index},tolerate:function(e){var t,n,o,r,i,l,s,a,c=0,u=e.interactions.length,d=[g.event.pageX,g.event.pageY],p=g.tolerance||g.modes[g.mode];do{if(a=e.interactions[c]){if(!a)return;a.drop=[],i=[],l=a.droppable.length,p&&(o=g.locate(a.proxy)),t=0;do{if(s=a.droppable[t]){if(r=f.data(s,g.datakey),!(n=r.location))continue;r.winner=p?p.call(g,g.event,o,n):g.contains(n,d)?1:0,i.push(r)}}while(++t<l);for(i.sort(g.sort),t=0;(r=i[t])&&(r.winner&&a.drop.length<g.multi?(r.active[c]||r.anyactive||(!1!==h.drag.hijack(g.event,\"dropstart\",e,c,r.elem)[0]?(r.active[c]=1,r.anyactive+=1):r.winner=0),r.winner&&a.drop.push(r.elem)):r.active[c]&&1==r.anyactive&&(h.drag.hijack(g.event,\"dropend\",e,c,r.elem),r.active[c]=0,r.anyactive-=1)),++t<l;);}}while(++c<u);g.last&&d[0]==g.last.pageX&&d[1]==g.last.pageY?delete g.timer:g.timer=setTimeout(function(){g.tolerate(e)},g.delay),g.last=g.event}};h.dropinit=h.dropstart=h.dropend=g},444:function(e,t,n){var d=e(448),p=e(446);t.exports={CheckboxSelectColumn:function(e){var l,t=new p.EventHandler,s={},a=d.extend(!0,{},{columnId:\"_checkbox_selector\",cssClass:null,toolTip:\"Select/Deselect All\",width:30},e);function n(e,t){var n,o,r=l.getSelectedRows(),i={};for(o=0;o<r.length;o++)n=r[o],i[n]=!0,i[n]!==s[n]&&(l.invalidateRow(n),delete s[n]);for(o in s)l.invalidateRow(o);s=i,l.render(),r.length&&r.length==l.getDataLength()?l.updateColumnHeader(a.columnId,\"<input type='checkbox' checked='checked'>\",a.toolTip):l.updateColumnHeader(a.columnId,\"<input type='checkbox'>\",a.toolTip)}function o(e,t){32==e.which&&l.getColumns()[t.cell].id===a.columnId&&(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit()||i(t.row),e.preventDefault(),e.stopImmediatePropagation())}function r(e,t){if(l.getColumns()[t.cell].id===a.columnId&&d(e.target).is(\":checkbox\")){if(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();i(t.row),e.stopPropagation(),e.stopImmediatePropagation()}}function i(t){s[t]?l.setSelectedRows(d.grep(l.getSelectedRows(),function(e){return e!=t})):l.setSelectedRows(l.getSelectedRows().concat(t))}function c(e,t){if(t.column.id==a.columnId&&d(e.target).is(\":checkbox\")){if(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();if(d(e.target).is(\":checked\")){for(var n=[],o=0;o<l.getDataLength();o++)n.push(o);l.setSelectedRows(n)}else l.setSelectedRows([]);e.stopPropagation(),e.stopImmediatePropagation()}}function u(e,t,n,o,r){return r?s[e]?\"<input type='checkbox' checked='checked'>\":\"<input type='checkbox'>\":null}d.extend(this,{init:function(e){l=e,t.subscribe(l.onSelectedRowsChanged,n).subscribe(l.onClick,r).subscribe(l.onHeaderClick,c).subscribe(l.onKeyDown,o)},destroy:function(){t.unsubscribeAll()},deSelectRows:function(e){var t,n=e.length,o=[];for(t=0;t<n;t++)s[e[t]]&&(o[o.length]=e[t]);l.setSelectedRows(d.grep(l.getSelectedRows(),function(e){return o.indexOf(e)<0}))},selectRows:function(e){var t,n=e.length,o=[];for(t=0;t<n;t++)s[e[t]]||(o[o.length]=e[t]);l.setSelectedRows(l.getSelectedRows().concat(o))},getColumnDefinition:function(){return{id:a.columnId,name:\"<input type='checkbox'>\",toolTip:a.toolTip,field:\"sel\",width:a.width,resizable:!1,sortable:!1,cssClass:a.cssClass,formatter:u}}})}}},445:function(e,t,n){var v=e(448),w=e(446);t.exports={RowSelectionModel:function(t){var c,n,o,u=[],r=this,i=new w.EventHandler,l={selectActiveRow:!0};function s(e){return function(){n||(n=!0,e.apply(this,arguments),n=!1)}}function d(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 p(e){for(var t=[],n=c.getColumns().length-1,o=0;o<e.length;o++)t.push(new w.Range(e[o],0,e[o],n));return t}function a(){return d(u)}function f(e){(u&&0!==u.length||e&&0!==e.length)&&(u=e,r.onSelectedRangesChanged.notify(u))}function h(e,t){o.selectActiveRow&&null!=t.row&&f([new w.Range(t.row,0,t.row,c.getColumns().length-1)])}function g(e){var t=c.getActiveCell();if(t&&e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&(38==e.which||40==e.which)){var n=a();n.sort(function(e,t){return e-t}),n.length||(n=[t.row]);var o,r=n[0],i=n[n.length-1];if(0<=(o=40==e.which?t.row<i||r==i?++i:++r:t.row<i?--i:--r)&&o<c.getDataLength()){c.scrollRowIntoView(o);var l=p(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}(r,i));f(l)}e.preventDefault(),e.stopPropagation()}}function m(e){var n=c.getCellFromEvent(e);if(!n||!c.canCellBeActive(n.row,n.cell))return!1;if(!c.getOptions().multiSelect||!e.ctrlKey&&!e.shiftKey&&!e.metaKey)return!1;var t=d(u),o=v.inArray(n.row,t);if(-1===o&&(e.ctrlKey||e.metaKey))t.push(n.row),c.setActiveCell(n.row,n.cell);else if(-1!==o&&(e.ctrlKey||e.metaKey))t=v.grep(t,function(e,t){return e!==n.row}),c.setActiveCell(n.row,n.cell);else if(t.length&&e.shiftKey){var r=t.pop(),i=Math.min(n.row,r),l=Math.max(n.row,r);t=[];for(var s=i;s<=l;s++)s!==r&&t.push(s);t.push(r),c.setActiveCell(n.row,n.cell)}var a=p(t);return f(a),e.stopImmediatePropagation(),!0}v.extend(this,{getSelectedRows:a,setSelectedRows:function(e){f(p(e))},getSelectedRanges:function(){return u},setSelectedRanges:f,init:function(e){o=v.extend(!0,{},l,t),c=e,i.subscribe(c.onActiveCellChanged,s(h)),i.subscribe(c.onKeyDown,s(g)),i.subscribe(c.onClick,s(m))},destroy:function(){i.unsubscribeAll()},onSelectedRangesChanged:new w.Event})}}},446:function(e,t,n){function l(){var e=!1,t=!1;this.stopPropagation=function(){e=!0},this.isPropagationStopped=function(){return e},this.stopImmediatePropagation=function(){t=!0},this.isImmediatePropagationStopped=function(){return t}}function o(){this.__nonDataRow=!0}function r(){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 i(){this.__groupTotals=!0,this.group=null,this.initialized=!1}function s(){var t=null;this.isActive=function(e){return e?t===e:null!==t},this.activate=function(e){if(e!==t){if(null!==t)throw new Error(\"SlickGrid.EditorLock.activate: an editController is still active, can't activate another editController\");if(!e.commitCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .commitCurrentEdit()\");if(!e.cancelCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .cancelCurrentEdit()\");t=e}},this.deactivate=function(e){if(t!==e)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()}}(r.prototype=new o).equals=function(e){return this.value===e.value&&this.count===e.count&&this.collapsed===e.collapsed&&this.title===e.title},i.prototype=new o,t.exports={Event:function(){var i=[];this.subscribe=function(e){i.push(e)},this.unsubscribe=function(e){for(var t=i.length-1;0<=t;t--)i[t]===e&&i.splice(t,1)},this.notify=function(e,t,n){var o;t=t||new l,n=n||this;for(var r=0;r<i.length&&!t.isPropagationStopped()&&!t.isImmediatePropagationStopped();r++)o=i[r].call(n,t,e);return o}},EventData:l,EventHandler:function(){var o=[];this.subscribe=function(e,t){return o.push({event:e,handler:t}),e.subscribe(t),this},this.unsubscribe=function(e,t){for(var n=o.length;n--;)if(o[n].event===e&&o[n].handler===t)return o.splice(n,1),void e.unsubscribe(t);return this},this.unsubscribeAll=function(){for(var e=o.length;e--;)o[e].event.unsubscribe(o[e].handler);return o=[],this}},Range:function(e,t,n,o){void 0===n&&void 0===o&&(n=e,o=t);this.fromRow=Math.min(e,n),this.fromCell=Math.min(t,o),this.toRow=Math.max(e,n),this.toCell=Math.max(t,o),this.isSingleRow=function(){return this.fromRow==this.toRow},this.isSingleCell=function(){return this.fromRow==this.toRow&&this.fromCell==this.toCell},this.contains=function(e,t){return e>=this.fromRow&&e<=this.toRow&&t>=this.fromCell&&t<=this.toCell},this.toString=function(){return this.isSingleCell()?\"(\"+this.fromRow+\":\"+this.fromCell+\")\":\"(\"+this.fromRow+\":\"+this.fromCell+\" - \"+this.toRow+\":\"+this.toCell+\")\"}},NonDataRow:o,Group:r,GroupTotals:i,EditorLock:s,GlobalEditorLock:new s,keyCode:{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,C:67,V:86},preClickClassName:\"slick-edit-preclick\"}},447:function _(require,module,exports){\n",
2074
+       "      /**\n",
2075
+       "           * @license\n",
2076
+       "           * (c) 2009-2016 Michael Leibman\n",
2077
+       "           * michael{dot}leibman{at}gmail{dot}com\n",
2078
+       "           * http://github.com/mleibman/slickgrid\n",
2079
+       "           *\n",
2080
+       "           * Distributed under MIT license.\n",
2081
+       "           * All rights reserved.\n",
2082
+       "           *\n",
2083
+       "           * SlickGrid v2.3\n",
2084
+       "           *\n",
2085
+       "           * NOTES:\n",
2086
+       "           *     Cell/row DOM manipulations are done directly bypassing jQuery's DOM manipulation methods.\n",
2087
+       "           *     This increases the speed dramatically, but can only be done safely because there are no event handlers\n",
2088
+       "           *     or data associated with any cell/row DOM nodes.  Cell editors must make sure they implement .destroy()\n",
2089
+       "           *     and do proper cleanup.\n",
2090
+       "           */\n",
2091
+       "      var $=require(448),Slick=require(446),scrollbarDimensions,maxSupportedCssHeight;function SlickGrid(container,data,columns,options){$.fn.drag||require(442),$.fn.drop||require(443);var defaults={explicitInitialization:!1,rowHeight:25,defaultColumnWidth:80,enableAddRow:!1,leaveSpaceForNewRows:!1,editable:!1,autoEdit:!0,enableCellNavigation:!0,enableColumnReorder:!0,asyncEditorLoading:!1,asyncEditorLoadDelay:100,forceFitColumns:!1,enableAsyncPostRender:!1,asyncPostRenderDelay:50,enableAsyncPostRenderCleanup:!1,asyncPostRenderCleanupDelay:40,autoHeight:!1,editorLock:Slick.GlobalEditorLock,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,fullWidthRows:!1,multiColumnSort:!1,numberedMultiColumnSort:!1,tristateMultiColumnSort:!1,defaultFormatter:defaultFormatter,forceSyncScrolling:!1,addNewRowCssClass:\"new-row\",preserveCopiedSelectionOnPaste:!1,showCellSelection:!0},columnDefaults={name:\"\",resizable:!0,sortable:!1,minWidth:30,rerenderOnResize:!1,headerCssClass:null,defaultSortAsc:!0,focusable:!0,selectable:!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,$headerScroller,$headers,$headerRow,$headerRowScroller,$headerRowSpacer,$footerRow,$footerRowScroller,$footerRowSpacer,$preHeaderPanel,$preHeaderPanelScroller,$preHeaderPanelSpacer,$topPanelScroller,$topPanel,$viewport,$canvas,$style,$boundAncestors,stylesheet,columnCssRulesL,columnCssRulesR,viewportH,viewportW,canvasWidth,viewportHasHScroll,viewportHasVScroll,headerColumnWidthDiff=0,headerColumnHeightDiff=0,cellWidthDiff=0,cellHeightDiff=0,jQueryNewWidthBehaviour=!1,absoluteColumnMinWidth,sortIndicatorCssClass=\"slick-sort-indicator\",tabbingDirection=1,activePosX,activeRow,activeCell,activeCellNode=null,currentEditor=null,serializedEditorValue,editController,rowsCache={},renderedRows=0,numVisibleRows,prevScrollTop=0,scrollTop=0,lastRenderedScrollTop=0,lastRenderedScrollLeft=0,prevScrollLeft=0,scrollLeft=0,selectionModel,selectedRows=[],plugins=[],cellCssClasses={},columnsById={},sortColumns=[],columnPosLeft=[],columnPosRight=[],pagingActive=!1,pagingIsLastPage=!1,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,cssShow={position:\"absolute\",visibility:\"hidden\",display:\"block\"},$hiddenParents,oldProps=[];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.\");cacheCssForHiddenInit(),maxSupportedCssHeight=maxSupportedCssHeight||getMaxSupportedCssHeight(),scrollbarDimensions=scrollbarDimensions||measureScrollbar(),options=$.extend({},defaults,options),validateAndEnforceOptions(),columnDefaults.width=options.defaultColumnWidth,columnsById={};for(var e=0;e<columns.length;e++){var t=columns[e]=$.extend({},columnDefaults,columns[e]);columnsById[t.id]=e,t.minWidth&&t.width<t.minWidth&&(t.width=t.minWidth),t.maxWidth&&t.width>t.maxWidth&&(t.width=t.maxWidth)}if(options.enableColumnReorder&&!$.fn.sortable)throw new Error(\"SlickGrid's 'enableColumnReorder = true' option requires jquery-ui.sortable module to be loaded\");editController={commitCurrentEdit:commitCurrentEdit,cancelCurrentEdit: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),options.createPreHeaderPanel&&($preHeaderPanelScroller=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$preHeaderPanel=$(\"<div />\").appendTo($preHeaderPanelScroller),$preHeaderPanelSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($preHeaderPanelScroller),options.showPreHeaderPanel||$preHeaderPanelScroller.hide()),$headerScroller=$(\"<div class='slick-header ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),($headers=$(\"<div class='slick-header-columns' style='left:-1000px' />\").appendTo($headerScroller)).width(getHeadersWidth()),$headerRowScroller=$(\"<div class='slick-headerrow ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$headerRow=$(\"<div class='slick-headerrow-columns' />\").appendTo($headerRowScroller),$headerRowSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($headerRowScroller),$topPanelScroller=$(\"<div class='slick-top-panel-scroller ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$topPanel=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScroller),options.showTopPanel||$topPanelScroller.hide(),options.showHeaderRow||$headerRowScroller.hide(),($viewport=$(\"<div class='slick-viewport' style='width:100%;overflow:auto;outline:0;position:relative;;'>\").appendTo($container)).css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),$canvas=$(\"<div class='grid-canvas' />\").appendTo($viewport),options.createFooterRow&&($footerRowScroller=$(\"<div class='slick-footerrow ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$footerRow=$(\"<div class='slick-footerrow-columns' />\").appendTo($footerRowScroller),$footerRowSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScroller),options.showFooterRow||$footerRowScroller.hide()),options.numberedMultiColumnSort&&(sortIndicatorCssClass=\"slick-sort-indicator-numbered\"),$focusSink2=$focusSink.clone().appendTo($container),options.explicitInitialization||finishInitialization()}function finishInitialization(){initialized||(initialized=!0,viewportW=parseFloat($.css($container[0],\"width\",!0)),measureCellPaddingAndBorder(),disableSelection($headers),options.enableTextSelectionOnCells||$viewport.on(\"selectstart.ui\",function(e){return $(e.target).is(\"input,textarea\")}),updateColumnCaches(),createColumnHeaders(),setupColumnSort(),createCssRules(),resizeCanvas(),bindAncestorScrollEvents(),$container.on(\"resize.slickgrid\",resizeCanvas),$viewport.on(\"scroll\",handleScroll),$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&&$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),navigator.userAgent.toLowerCase().match(/webkit/)&&navigator.userAgent.toLowerCase().match(/macintosh/)&&$canvas.on(\"mousewheel\",handleMouseWheel),restoreCssFromHiddenInit())}function cacheCssForHiddenInit(){($hiddenParents=$container.parents().addBack().not(\":visible\")).each(function(){var e={};for(var t in cssShow)e[t]=this.style[t],this.style[t]=cssShow[t];oldProps.push(e)})}function restoreCssFromHiddenInit(){$hiddenParents.each(function(e){var t=oldProps[e];for(var n in cssShow)this.style[n]=t[n]})}function registerPlugin(e){plugins.unshift(e),e.init(self)}function unregisterPlugin(e){for(var t=plugins.length;0<=t;t--)if(plugins[t]===e){plugins[t].destroy&&plugins[t].destroy(),plugins.splice(t,1);break}}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(){return $canvas[0]}function measureScrollbar(){var e=$(\"<div style='position:absolute; top:-10000px; left:-10000px; width:100px; height:100px; overflow:scroll;'></div>\").appendTo(\"body\"),t={width:e.width()-e[0].clientWidth,height:e.height()-e[0].clientHeight};return e.remove(),t}function getColumnTotalWidth(e){for(var t=0,n=0,o=columns.length;n<o;n++){var r=columns[n].width;t+=r}return e&&(t+=scrollbarDimensions.width),t}function getHeadersWidth(){var e=getColumnTotalWidth(!0);return Math.max(e,viewportW)+1e3}function getCanvasWidth(){for(var e=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,t=0,n=columns.length;n--;)t+=columns[n].width;return options.fullWidthRows?Math.max(t,e):t}function updateCanvasWidth(e){var t=canvasWidth;(canvasWidth=getCanvasWidth())!=t&&($canvas.width(canvasWidth),$headerRow.width(canvasWidth),options.createFooterRow&&$footerRow.width(canvasWidth),options.createPreHeaderPanel&&$preHeaderPanel.width(canvasWidth),$headers.width(getHeadersWidth()),viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width);var n=canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0);$headerRowSpacer.width(n),options.createFooterRow&&$footerRowSpacer.width(n),options.createPreHeaderPanel&&$preHeaderPanelSpacer.width(n),(canvasWidth!=t||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,t=navigator.userAgent.toLowerCase().match(/firefox/)?6e6:1e9,n=$(\"<div style='display:none' />\").appendTo(document.body);;){var o=2*e;if(n.css(\"height\",o),t<o||n.height()!==o)break;e=o}return n.remove(),e}function getUID(){return uid}function getHeaderColumnWidthDiff(){return headerColumnWidthDiff}function getScrollbarDimensions(){return scrollbarDimensions}function bindAncestorScrollEvents(){for(var e=$canvas[0];(e=e.parentNode)!=document.body&&null!=e;)if(e==$viewport[0]||e.scrollWidth!=e.clientWidth||e.scrollHeight!=e.clientHeight){var t=$(e);$boundAncestors=$boundAncestors?$boundAncestors.add(t):t,t.on(\"scroll.\"+uid,handleActiveCellPositionChange)}}function unbindAncestorScrollEvents(){$boundAncestors&&($boundAncestors.off(\"scroll.\"+uid),$boundAncestors=null)}function updateColumnHeader(e,t,n){if(initialized){var o=getColumnIndex(e);if(null!=o){var r=columns[o],i=$headers.children().eq(o);i&&(void 0!==t&&(columns[o].name=t),void 0!==n&&(columns[o].toolTip=n),trigger(self.onBeforeHeaderCellDestroy,{node:i[0],column:r,grid:self}),i.attr(\"title\",n||\"\").children().eq(0).html(t),trigger(self.onHeaderCellRendered,{node:i[0],column:r,grid:self}))}}}function getHeaderRow(){return $headerRow[0]}function getFooterRow(){return $footerRow[0]}function getPreHeaderPanel(){return $preHeaderPanel[0]}function getHeaderRowColumn(e){var t=getColumnIndex(e),n=$headerRow.children().eq(t);return n&&n[0]}function getFooterRowColumn(e){var t=getColumnIndex(e),n=$footerRow.children().eq(t);return n&&n[0]}function createColumnHeaders(){function e(){$(this).addClass(\"ui-state-hover\")}function t(){$(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})}),$headers.empty(),$headers.width(getHeadersWidth()),$headerRow.find(\".slick-headerrow-column\").each(function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderRowCellDestroy,{node:this,column:e,grid:self})}),$headerRow.empty(),options.createFooterRow&&($footerRow.find(\".slick-footerrow-column\").each(function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e})}),$footerRow.empty());for(var n=0;n<columns.length;n++){var o=columns[n],r=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+o.name+\"</span>\").width(o.width-headerColumnWidthDiff).attr(\"id\",\"\"+uid+o.id).attr(\"title\",o.toolTip||\"\").data(\"column\",o).addClass(o.headerCssClass||\"\").appendTo($headers);if((options.enableColumnReorder||o.sortable)&&r.on(\"mouseenter\",e).on(\"mouseleave\",t),o.sortable&&(r.addClass(\"slick-header-sortable\"),r.append(\"<span class='\"+sortIndicatorCssClass+\"' />\")),trigger(self.onHeaderCellRendered,{node:r[0],column:o,grid:self}),options.showHeaderRow){var i=$(\"<div class='ui-state-default slick-headerrow-column l\"+n+\" r\"+n+\"'></div>\").data(\"column\",o).appendTo($headerRow);trigger(self.onHeaderRowCellRendered,{node:i[0],column:o,grid:self})}if(options.createFooterRow&&options.showFooterRow){var l=$(\"<div class='ui-state-default slick-footerrow-column l\"+n+\" r\"+n+\"'></div>\").data(\"column\",o).appendTo($footerRow);trigger(self.onFooterRowCellRendered,{node:l[0],column:o})}}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(e.metaKey=e.metaKey||e.ctrlKey,!$(e.target).hasClass(\"slick-resizable-handle\")){var t=$(e.target).closest(\".slick-header-column\");if(t.length){var n=t.data(\"column\");if(n.sortable){if(!getEditorLock().commitCurrentEdit())return;for(var o=null,r=0;r<sortColumns.length;r++)if(sortColumns[r].columnId==n.id){(o=sortColumns[r]).sortAsc=!o.sortAsc;break}var i=!!o;options.tristateMultiColumnSort?(o||(o={columnId:n.id,sortAsc:n.defaultSortAsc}),i&&o.sortAsc&&(sortColumns.splice(r,1),o=null),options.multiColumnSort||(sortColumns=[]),!o||i&&options.multiColumnSort||sortColumns.push(o)):e.metaKey&&options.multiColumnSort?o&&sortColumns.splice(r,1):((e.shiftKey||e.metaKey)&&options.multiColumnSort||(sortColumns=[]),o?0==sortColumns.length&&sortColumns.push(o):(o={columnId:n.id,sortAsc:n.defaultSortAsc},sortColumns.push(o))),setSortColumns(sortColumns),0<sortColumns.length&&(options.multiColumnSort?trigger(self.onSort,{multiColumnSort:!0,sortCols:$.map(sortColumns,function(e){return{sortCol:columns[getColumnIndex(e.columnId)],sortAsc:e.sortAsc}}),grid:self},e):trigger(self.onSort,{multiColumnSort:!1,sortCol:n,sortAsc:sortColumns[0].sortAsc,grid:self},e))}}}})}function setupColumnReorder(){$headers.filter(\":ui-sortable\").sortable(\"destroy\"),$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(e,t){t.placeholder.width(t.helper.outerWidth()-headerColumnWidthDiff),$(t.helper).addClass(\"slick-header-column-active\")},beforeStop:function(e,t){$(t.helper).removeClass(\"slick-header-column-active\")},stop:function(e){if(getEditorLock().commitCurrentEdit()){for(var t=$headers.sortable(\"toArray\"),n=[],o=0;o<t.length;o++)n.push(columns[getColumnIndex(t[o].replace(uid,\"\"))]);setColumns(n),trigger(self.onColumnsReordered,{grid:self}),e.stopPropagation(),setupColumnResize()}else $(this).sortable(\"cancel\")}})}function setupColumnResize(){var s,a,c,u,d,p,n,o;(u=$headers.children()).find(\".slick-resizable-handle\").remove(),u.each(function(e,t){e>=columns.length||columns[e].resizable&&(void 0===n&&(n=e),o=e)}),void 0!==n&&u.each(function(l,e){l>=columns.length||l<n||options.forceFitColumns&&o<=l||($(e),$(\"<div class='slick-resizable-handle' />\").appendTo(e).on(\"dragstart\",function(e,t){if(!getEditorLock().commitCurrentEdit())return!1;c=e.pageX,$(this).parent().addClass(\"slick-header-column-active\");var n=null,o=null;if(u.each(function(e,t){e>=columns.length||(columns[e].previousWidth=$(t).outerWidth())}),options.forceFitColumns)for(o=n=0,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(null!==o&&(a.maxWidth?o+=a.maxWidth-a.previousWidth:o=null),n+=a.previousWidth-Math.max(a.minWidth||0,absoluteColumnMinWidth));var r=0,i=0;for(s=0;s<=l;s++)(a=columns[s]).resizable&&(null!==i&&(a.maxWidth?i+=a.maxWidth-a.previousWidth:i=null),r+=a.previousWidth-Math.max(a.minWidth||0,absoluteColumnMinWidth));null===n&&(n=1e5),null===r&&(r=1e5),null===o&&(o=1e5),null===i&&(i=1e5),p=c+Math.min(n,i),d=c-Math.min(r,o)}).on(\"drag\",function(e,t){var n,o,r=Math.min(p,Math.max(d,e.pageX))-c;if(r<0){for(o=r,s=l;0<=s;s--)(a=columns[s]).resizable&&(n=Math.max(a.minWidth||0,absoluteColumnMinWidth),o&&a.previousWidth+o<n?(o+=a.previousWidth-n,a.width=n):(a.width=a.previousWidth+o,o=0));if(options.forceFitColumns)for(o=-r,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(o&&a.maxWidth&&a.maxWidth-a.previousWidth<o?(o-=a.maxWidth-a.previousWidth,a.width=a.maxWidth):(a.width=a.previousWidth+o,o=0))}else{for(o=r,s=l;0<=s;s--)(a=columns[s]).resizable&&(o&&a.maxWidth&&a.maxWidth-a.previousWidth<o?(o-=a.maxWidth-a.previousWidth,a.width=a.maxWidth):(a.width=a.previousWidth+o,o=0));if(options.forceFitColumns)for(o=-r,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(n=Math.max(a.minWidth||0,absoluteColumnMinWidth),o&&a.previousWidth+o<n?(o+=a.previousWidth-n,a.width=n):(a.width=a.previousWidth+o,o=0))}applyColumnHeaderWidths(),options.syncColumnCellResize&&applyColumnWidths()}).on(\"dragend\",function(e,t){var n;for($(this).parent().removeClass(\"slick-header-column-active\"),s=0;s<columns.length;s++)a=columns[s],n=$(u[s]).outerWidth(),a.previousWidth!==n&&a.rerenderOnResize&&invalidateAllRows();updateCanvasWidth(!0),render(),trigger(self.onColumnsResized,{grid:self})}))})}function getVBoxDelta(n){var o=0;return $.each([\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],function(e,t){o+=parseFloat(n.css(t))||0}),o}function measureCellPaddingAndBorder(){var n,e=[\"borderLeftWidth\",\"borderRightWidth\",\"paddingLeft\",\"paddingRight\"],t=[\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],o=$.fn.jquery.split(\".\");jQueryNewWidthBehaviour=1==o[0]&&8<=o[1]||2<=o[0],n=$(\"<div class='ui-state-default slick-header-column' style='visibility:hidden'>-</div>\").appendTo($headers),headerColumnWidthDiff=headerColumnHeightDiff=0,\"border-box\"!=n.css(\"box-sizing\")&&\"border-box\"!=n.css(\"-moz-box-sizing\")&&\"border-box\"!=n.css(\"-webkit-box-sizing\")&&($.each(e,function(e,t){headerColumnWidthDiff+=parseFloat(n.css(t))||0}),$.each(t,function(e,t){headerColumnHeightDiff+=parseFloat(n.css(t))||0})),n.remove();var r=$(\"<div class='slick-row' />\").appendTo($canvas);n=$(\"<div class='slick-cell' id='' style='visibility:hidden'>-</div>\").appendTo(r),cellWidthDiff=cellHeightDiff=0,\"border-box\"!=n.css(\"box-sizing\")&&\"border-box\"!=n.css(\"-moz-box-sizing\")&&\"border-box\"!=n.css(\"-webkit-box-sizing\")&&($.each(e,function(e,t){cellWidthDiff+=parseFloat(n.css(t))||0}),$.each(t,function(e,t){cellHeightDiff+=parseFloat(n.css(t))||0})),r.remove(),absoluteColumnMinWidth=Math.max(headerColumnWidthDiff,cellWidthDiff)}function createCssRules(){$style=$(\"<style type='text/css' rel='stylesheet' />\").appendTo($(\"head\"));for(var e=options.rowHeight-cellHeightDiff,t=[\".\"+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; }\"],n=0;n<columns.length;n++)t.push(\".\"+uid+\" .l\"+n+\" { }\"),t.push(\".\"+uid+\" .r\"+n+\" { }\");$style[0].styleSheet?$style[0].styleSheet.cssText=t.join(\" \"):$style[0].appendChild(document.createTextNode(t.join(\" \")))}function getColumnCssRules(e){var t;if(!stylesheet){var n=document.styleSheets;for(t=0;t<n.length;t++)if((n[t].ownerNode||n[t].owningElement)==$style[0]){stylesheet=n[t];break}if(!stylesheet)throw new Error(\"Cannot find stylesheet.\");columnCssRulesL=[],columnCssRulesR=[];var o,r,i=stylesheet.cssRules||stylesheet.rules;for(t=0;t<i.length;t++){var l=i[t].selectorText;(o=/\\.l\\d+/.exec(l))?(r=parseInt(o[0].substr(2,o[0].length-2),10),columnCssRulesL[r]=i[t]):(o=/\\.r\\d+/.exec(l))&&(r=parseInt(o[0].substr(2,o[0].length-2),10),columnCssRulesR[r]=i[t])}}return{left:columnCssRulesL[e],right:columnCssRulesR[e]}}function removeCssRules(){$style.remove(),stylesheet=null}function destroy(){getEditorLock().cancelCurrentEdit(),trigger(self.onBeforeDestroy,{grid:self});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)}function trigger(e,t,n){return n=n||new Slick.EventData,(t=t||{}).grid=self,e.notify(t,n,self)}function getEditorLock(){return options.editorLock}function getEditController(){return editController}function getColumnIndex(e){return columnsById[e]}function autosizeColumns(){var e,t,n,o=[],r=0,i=0,l=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW;for(e=0;e<columns.length;e++)t=columns[e],o.push(t.width),i+=t.width,t.resizable&&(r+=t.width-Math.max(t.minWidth,absoluteColumnMinWidth));for(n=i;l<i&&r;){var s=(i-l)/r;for(e=0;e<columns.length&&l<i;e++){t=columns[e];var a=o[e];if(!(!t.resizable||a<=t.minWidth||a<=absoluteColumnMinWidth)){var c=Math.max(t.minWidth,absoluteColumnMinWidth),u=Math.floor(s*(a-c))||1;u=Math.min(u,a-c),i-=u,r-=u,o[e]-=u}}if(n<=i)break;n=i}for(n=i;i<l;){var d=l/i;for(e=0;e<columns.length&&i<l;e++){t=columns[e];var p,f=o[e];p=!t.resizable||t.maxWidth<=f?0:Math.min(Math.floor(d*f)-f,t.maxWidth-f||1e6)||1,i+=p,o[e]+=i<=l?p:0}if(i<=n)break;n=i}var h=!1;for(e=0;e<columns.length;e++)columns[e].rerenderOnResize&&columns[e].width!=o[e]&&(h=!0),columns[e].width=o[e];applyColumnHeaderWidths(),updateCanvasWidth(!0),h&&(invalidateAllRows(),render())}function applyColumnHeaderWidths(){if(initialized){for(var e,t=0,n=$headers.children(),o=columns.length;t<o;t++)e=$(n[t]),jQueryNewWidthBehaviour?e.outerWidth()!==columns[t].width&&e.outerWidth(columns[t].width):e.width()!==columns[t].width-headerColumnWidthDiff&&e.width(columns[t].width-headerColumnWidthDiff);updateColumnCaches()}}function applyColumnWidths(){for(var e,t,n=0,o=0;o<columns.length;o++)e=columns[o].width,(t=getColumnCssRules(o)).left.style.left=n+\"px\",t.right.style.right=canvasWidth-n-e+\"px\",n+=columns[o].width}function setSortColumn(e,t){setSortColumns([{columnId:e,sortAsc:t}])}function setSortColumns(e){sortColumns=e;var o=options.numberedMultiColumnSort&&1<sortColumns.length,r=$headers.children(),i=r.removeClass(\"slick-header-column-sorted\").find(\".\"+sortIndicatorCssClass).removeClass(\"slick-sort-indicator-asc slick-sort-indicator-desc\");o&&i.text(\"\"),$.each(sortColumns,function(e,t){null==t.sortAsc&&(t.sortAsc=!0);var n=getColumnIndex(t.columnId);null!=n&&(i=r.eq(n).addClass(\"slick-header-column-sorted\").find(\".\"+sortIndicatorCssClass).addClass(t.sortAsc?\"slick-sort-indicator-asc\":\"slick-sort-indicator-desc\"),o&&i.text(e+1))})}function getSortColumns(){return sortColumns}function handleSelectedRangesChanged(e,t){selectedRows=[];for(var n={},o=0;o<t.length;o++)for(var r=t[o].fromRow;r<=t[o].toRow;r++){n[r]||(selectedRows.push(r),n[r]={});for(var i=t[o].fromCell;i<=t[o].toCell;i++)canCellBeSelected(r,i)&&(n[r][columns[i].id]=options.selectedCellCssClass)}setCellCssStyles(options.selectedCellCssClass,n),trigger(self.onSelectedRowsChanged,{rows:getSelectedRows(),grid:self},e)}function getColumns(){return columns}function updateColumnCaches(){columnPosLeft=[],columnPosRight=[];for(var e=0,t=0,n=columns.length;t<n;t++)columnPosLeft[t]=e,columnPosRight[t]=e+columns[t].width,e+=columns[t].width}function setColumns(e){columns=e,columnsById={};for(var t=0;t<columns.length;t++){var n=columns[t]=$.extend({},columnDefaults,columns[t]);columnsById[n.id]=t,n.minWidth&&n.width<n.minWidth&&(n.width=n.minWidth),n.maxWidth&&n.width>n.maxWidth&&(n.width=n.maxWidth)}updateColumnCaches(),initialized&&(invalidateAllRows(),createColumnHeaders(),removeCssRules(),createCssRules(),resizeCanvas(),applyColumnWidths(),handleScroll())}function getOptions(){return options}function setOptions(e,t){getEditorLock().commitCurrentEdit()&&(makeActiveCellNormal(),options.enableAddRow!==e.enableAddRow&&invalidateRow(getDataLength()),options=$.extend(options,e),validateAndEnforceOptions(),$viewport.css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),t||render())}function validateAndEnforceOptions(){options.autoHeight&&(options.leaveSpaceForNewRows=!1)}function setData(e,t){data=e,invalidateAllRows(),updateRowCount(),t&&scrollTo(0)}function getData(){return data}function getDataLength(){return data.getLength?data.getLength():data.length}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){options.showTopPanel!=e&&((options.showTopPanel=e)?$topPanelScroller.slideDown(\"fast\",resizeCanvas):$topPanelScroller.slideUp(\"fast\",resizeCanvas))}function setHeaderRowVisibility(e){options.showHeaderRow!=e&&((options.showHeaderRow=e)?$headerRowScroller.slideDown(\"fast\",resizeCanvas):$headerRowScroller.slideUp(\"fast\",resizeCanvas))}function setFooterRowVisibility(e){options.showFooterRow!=e&&((options.showFooterRow=e)?$footerRowScroller.slideDown(\"fast\",resizeCanvas):$footerRowScroller.slideUp(\"fast\",resizeCanvas))}function setPreHeaderPanelVisibility(e){options.showPreHeaderPanel!=e&&((options.showPreHeaderPanel=e)?$preHeaderPanelScroller.slideDown(\"fast\",resizeCanvas):$preHeaderPanelScroller.slideUp(\"fast\",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-viewportH+(viewportHasHScroll?scrollbarDimensions.height:0));var t=offset;page=Math.min(n-1,Math.floor(e/ph)),offset=Math.round(page*cj);var o=e-offset;if(offset!=t){var r=getVisibleRange(o);cleanupRows(r),updateRowPositions()}prevScrollTop!=o&&(vScrollDir=prevScrollTop+t<o+offset?1:-1,$viewport[0].scrollTop=lastRenderedScrollTop=scrollTop=prevScrollTop=o,trigger(self.onViewportChanged,{grid:self}))}function defaultFormatter(e,t,n,o,r){return null==n?\"\":(n+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}function getFormatter(e,t){var n=data.getItemMetadata&&data.getItemMetadata(e),o=n&&n.columns&&(n.columns[t.id]||n.columns[getColumnIndex(t.id)]);return o&&o.formatter||n&&n.formatter||t.formatter||options.formatterFactory&&options.formatterFactory.getFormatter(t)||options.defaultFormatter}function getEditor(e,t){var n=columns[t],o=data.getItemMetadata&&data.getItemMetadata(e),r=o&&o.columns;return r&&r[n.id]&&void 0!==r[n.id].editor?r[n.id].editor:r&&r[t]&&void 0!==r[t].editor?r[t].editor:n.editor||options.editorFactory&&options.editorFactory.getEditor(n)}function getDataItemValueForColumn(e,t){return options.dataItemColumnValueExtractor?options.dataItemColumnValueExtractor(e,t):e[t.field]}function appendRowHtml(e,t,n,o){var r=getDataItem(t),i=t<o&&!r,l=\"slick-row\"+(i?\" loading\":\"\")+(t===activeRow?\" active\":\"\")+(t%2==1?\" odd\":\" even\");r||(l+=\" \"+options.addNewRowCssClass);var s,a,c=data.getItemMetadata&&data.getItemMetadata(t);c&&c.cssClasses&&(l+=\" \"+c.cssClasses),e.push(\"<div class='ui-widget-content \"+l+\"' style='top:\"+getRowTop(t)+\"px'>\");for(var u=0,d=columns.length;u<d;u++){if(a=columns[u],s=1,c&&c.columns){var p=c.columns[a.id]||c.columns[u];\"*\"===(s=p&&p.colspan||1)&&(s=d-u)}if(columnPosRight[Math.min(d-1,u+s-1)]>n.leftPx){if(columnPosLeft[u]>n.rightPx)break;appendCellHtml(e,t,u,s,r)}1<s&&(u+=s-1)}e.push(\"</div>\")}function appendCellHtml(e,t,n,o,r){var i=columns[n],l=\"slick-cell l\"+n+\" r\"+Math.min(columns.length-1,n+o-1)+(i.cssClass?\" \"+i.cssClass:\"\");for(var s in t===activeRow&&n===activeCell&&(l+=\" active\"),cellCssClasses)cellCssClasses[s][t]&&cellCssClasses[s][t][i.id]&&(l+=\" \"+cellCssClasses[s][t][i.id]);var a=null;r&&(a=getDataItemValueForColumn(r,i));var c=getFormatter(t,i)(t,n,a,i,r),u=trigger(self.onBeforeAppendCell,{row:t,cell:n,grid:self,value:a,dataContext:r})||\"\";u+=c.addClasses?(u?\" \":\"\")+c.addClasses:\"\",e.push(\"<div class='\"+l+(u?\" \"+u:\"\")+\"'>\"),r&&e.push(\"object\"!=typeof c?c:c.text),e.push(\"</div>\"),rowsCache[t].cellRenderQueue.push(n),rowsCache[t].cellColSpans[n]=o}function cleanupRows(e){for(var t in rowsCache)(t=parseInt(t,10))!==activeRow&&(t<e.top||t>e.bottom)&&removeRowFromCache(t);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,t,n){for(var o in postProcessgroupId++,t)t.hasOwnProperty(o)&&postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e.cellNodesByColumnIdx[0|o],columnIdx:0|o,rowIdx:n});postProcessedCleanupQueue.push({actionType:\"R\",groupId:postProcessgroupId,node:e.rowNode}),$(e.rowNode).detach()}function queuePostProcessedCellForCleanup(e,t,n){postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e,columnIdx:t,rowIdx:n}),$(e).detach()}function removeRowFromCache(e){var t=rowsCache[e];t&&(rowNodeFromLastMouseWheelEvent===t.rowNode?(t.rowNode.style.display=\"none\",zombieRowNodeFromLastMouseWheelEvent=rowNodeFromLastMouseWheelEvent,zombieRowCacheFromLastMouseWheelEvent=t,zombieRowPostProcessedFromLastMouseWheelEvent=postProcessedRows[e]):options.enableAsyncPostRenderCleanup&&postProcessedRows[e]?queuePostProcessedRowForCleanup(t,postProcessedRows[e],e):$canvas[0].removeChild(t.rowNode),delete rowsCache[e],delete postProcessedRows[e],renderedRows--,counter_rows_removed++)}function invalidateRows(e){var t,n;if(e&&e.length){for(vScrollDir=0,n=e.length,t=0;t<n;t++)currentEditor&&activeRow===e[t]&&makeActiveCellNormal(),rowsCache[e[t]]&&removeRowFromCache(e[t]);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}}function invalidateRow(e){invalidateRows([e])}function applyFormatResultToCellNode(e,t,n){\"object\"==typeof e?(t.innerHTML=e.text,e.removeClasses&&!n&&t.removeClass(e.removeClasses),e.addClasses&&t.addClass(e.addClasses)):t.innerHTML=e}function updateCell(e,t){var n=getCellNode(e,t);if(n){var o=columns[t],r=getDataItem(e);if(currentEditor&&activeRow===e&&activeCell===t)currentEditor.loadValue(r);else{var i=r?getFormatter(e,o)(e,t,getDataItemValueForColumn(r,o),o,r):\"\";applyFormatResultToCellNode(i,n),invalidatePostProcessingResults(e)}}}function updateRow(e){var t=rowsCache[e];if(t){ensureCellNodesInRowsCache(e);var n=getDataItem(e);for(var o in t.cellNodesByColumnIdx)if(t.cellNodesByColumnIdx.hasOwnProperty(o)){var r=columns[o|=0],i=t.cellNodesByColumnIdx[o];e===activeRow&&o===activeCell&&currentEditor?currentEditor.loadValue(n):n?applyFormatResultToCellNode(getFormatter(e,r)(e,o,getDataItemValueForColumn(n,r),r,n),i):i.innerHTML=\"\"}invalidatePostProcessingResults(e)}}function getViewportHeight(){return parseFloat($.css($container[0],\"height\",!0))-parseFloat($.css($container[0],\"paddingTop\",!0))-parseFloat($.css($container[0],\"paddingBottom\",!0))-parseFloat($.css($headerScroller[0],\"height\"))-getVBoxDelta($headerScroller)-(options.showTopPanel?options.topPanelHeight+getVBoxDelta($topPanelScroller):0)-(options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0)-(options.createFooterRow&&options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0)-(options.createPreHeaderPanel&&options.showPreHeaderPanel?options.preHeaderPanelHeight+getVBoxDelta($preHeaderPanelScroller):0)}function resizeCanvas(){initialized&&(viewportH=options.autoHeight?options.rowHeight*getDataLengthIncludingAddNew():getViewportHeight(),numVisibleRows=Math.ceil(viewportH/options.rowHeight),viewportW=parseFloat($.css($container[0],\"width\",!0)),options.autoHeight||$viewport.height(viewportH),options.forceFitColumns&&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(),t=getDataLengthIncludingAddNew(),o=t+(options.leaveSpaceForNewRows?numVisibleRows-1:0),r=viewportHasVScroll;viewportHasVScroll=!options.autoHeight&&o*options.rowHeight>viewportH,viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width,makeActiveCellNormal();var i=e-1;for(var l in rowsCache)i<l&&removeRowFromCache(l);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup(),activeCellNode&&i<activeRow&&resetActiveCell();var s=h;(th=Math.max(options.rowHeight*o,viewportH-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!==s&&($canvas.css(\"height\",h),scrollTop=$viewport[0].scrollTop);var a=scrollTop+offset<=th-viewportH;0==th||0==scrollTop?page=offset=0:scrollTo(a?scrollTop+offset:th-viewportH),h!=s&&options.autoHeight&&resizeCanvas(),options.forceFitColumns&&r!=viewportHasVScroll&&autosizeColumns(),updateCanvasWidth(!1)}}function getVisibleRange(e,t){return null==e&&(e=scrollTop),null==t&&(t=scrollLeft),{top:getRowFromPosition(e),bottom:getRowFromPosition(e+viewportH)+1,leftPx:t,rightPx:t+viewportW}}function getRenderedRange(e,t){var n=getVisibleRange(e,t),o=Math.round(viewportH/options.rowHeight);return-1==vScrollDir?(n.top-=o,n.bottom+=3):1==vScrollDir?(n.top-=3,n.bottom+=o):(n.top-=3,n.bottom+=3),n.top=Math.max(0,n.top),n.bottom=Math.min(getDataLengthIncludingAddNew()-1,n.bottom),n.leftPx-=viewportW,n.rightPx+=viewportW,n.leftPx=Math.max(0,n.leftPx),n.rightPx=Math.min(canvasWidth,n.rightPx),n}function ensureCellNodesInRowsCache(e){var t=rowsCache[e];if(t&&t.cellRenderQueue.length)for(var n=t.rowNode.lastChild;t.cellRenderQueue.length;){var o=t.cellRenderQueue.pop();n=(t.cellNodesByColumnIdx[o]=n).previousSibling}}function cleanUpCells(e,t){var n,o,r=rowsCache[t],i=[];for(var l in r.cellNodesByColumnIdx)if(r.cellNodesByColumnIdx.hasOwnProperty(l)){l|=0;var s=r.cellColSpans[l];(columnPosLeft[l]>e.rightPx||columnPosRight[Math.min(columns.length-1,l+s-1)]<e.leftPx)&&(t==activeRow&&l==activeCell||i.push(l))}for(postProcessgroupId++;null!=(n=i.pop());)o=r.cellNodesByColumnIdx[n],options.enableAsyncPostRenderCleanup&&postProcessedRows[t]&&postProcessedRows[t][n]?queuePostProcessedCellForCleanup(o,n,t):r.rowNode.removeChild(o),delete r.cellColSpans[n],delete r.cellNodesByColumnIdx[n],postProcessedRows[t]&&delete postProcessedRows[t][n],0}function cleanUpAndRenderCells(e){for(var t,n,o,r=[],i=[],l=e.top,s=e.bottom;l<=s;l++)if(t=rowsCache[l]){ensureCellNodesInRowsCache(l),cleanUpCells(e,l),n=0;var a=data.getItemMetadata&&data.getItemMetadata(l);a=a&&a.columns;for(var c=getDataItem(l),u=0,d=columns.length;u<d&&!(columnPosLeft[u]>e.rightPx);u++)if(null==(o=t.cellColSpans[u])){if(o=1,a){var p=a[columns[u].id]||a[u];\"*\"===(o=p&&p.colspan||1)&&(o=d-u)}columnPosRight[Math.min(d-1,u+o-1)]>e.leftPx&&(appendCellHtml(r,l,u,o,c),n++),u+=1<o?o-1:0}else u+=1<o?o-1:0;n&&(n,i.push(l))}if(r.length){var f,h,g=document.createElement(\"div\");for(g.innerHTML=r.join(\"\");null!=(f=i.pop());){var m;for(t=rowsCache[f];null!=(m=t.cellRenderQueue.pop());)h=g.lastChild,t.rowNode.appendChild(h),t.cellNodesByColumnIdx[m]=h}}}function renderRows(e){for(var t=$canvas[0],n=[],o=[],r=!1,i=getDataLength(),l=e.top,s=e.bottom;l<=s;l++)rowsCache[l]||(renderedRows++,o.push(l),rowsCache[l]={rowNode:null,cellColSpans:[],cellNodesByColumnIdx:[],cellRenderQueue:[]},appendRowHtml(n,l,e,i),activeCellNode&&activeRow===l&&(r=!0),counter_rows_rendered++);if(o.length){var a=document.createElement(\"div\");a.innerHTML=n.join(\"\");for(var l=0,s=o.length;l<s;l++)rowsCache[o[l]].rowNode=t.appendChild(a.firstChild);r&&(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 t in postProcessedRows[e])postProcessedRows[e].hasOwnProperty(t)&&(postProcessedRows[e][t]=\"C\");postProcessFromRow=Math.min(postProcessFromRow,e),postProcessToRow=Math.max(postProcessToRow,e),startPostProcessing()}function updateRowPositions(){for(var e in rowsCache)rowsCache[e].rowNode.style.top=getRowTop(e)+\"px\"}function render(){if(initialized){var e=getVisibleRange(),t=getRenderedRange();cleanupRows(t),lastRenderedScrollLeft!=scrollLeft&&cleanUpAndRenderCells(t),renderRows(t),postProcessFromRow=e.top,postProcessToRow=Math.min(getDataLengthIncludingAddNew()-1,e.bottom),startPostProcessing(),lastRenderedScrollTop=scrollTop,lastRenderedScrollLeft=scrollLeft,h_render=null}}function handleHeaderRowScroll(){var e=$headerRowScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handleFooterRowScroll(){var e=$footerRowScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handlePreHeaderPanelScroll(){var e=$preHeaderPanelScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handleScroll(){scrollTop=$viewport[0].scrollTop,scrollLeft=$viewport[0].scrollLeft;var e=Math.abs(scrollTop-prevScrollTop),t=Math.abs(scrollLeft-prevScrollLeft);if(t&&(prevScrollLeft=scrollLeft,$headerScroller[0].scrollLeft=scrollLeft,$topPanelScroller[0].scrollLeft=scrollLeft,$headerRowScroller[0].scrollLeft=scrollLeft,options.createFooterRow&&($footerRowScroller[0].scrollLeft=scrollLeft),options.createPreHeaderPanel&&($preHeaderPanelScroller[0].scrollLeft=scrollLeft)),e)if(vScrollDir=prevScrollTop<scrollTop?1:-1,prevScrollTop=scrollTop,e<viewportH)scrollTo(scrollTop+offset);else{var o=offset;page=h==viewportH?0:Math.min(n-1,Math.floor(scrollTop*((th-viewportH)/(h-viewportH))*(1/ph))),offset=Math.round(page*cj),o!=offset&&invalidateAllRows()}(t||e)&&(h_render&&clearTimeout(h_render),(20<Math.abs(lastRenderedScrollTop-scrollTop)||20<Math.abs(lastRenderedScrollLeft-scrollLeft))&&(options.forceSyncScrolling||Math.abs(lastRenderedScrollTop-scrollTop)<viewportH&&Math.abs(lastRenderedScrollLeft-scrollLeft)<viewportW?render():h_render=setTimeout(render,50),trigger(self.onViewportChanged,{grid:self}))),trigger(self.onScroll,{scrollLeft:scrollLeft,scrollTop:scrollTop,grid:self})}function asyncPostProcessRows(){for(var e=getDataLength();postProcessFromRow<=postProcessToRow;){var t=0<=vScrollDir?postProcessFromRow++:postProcessToRow--,n=rowsCache[t];if(n&&!(e<=t)){for(var o in postProcessedRows[t]||(postProcessedRows[t]={}),ensureCellNodesInRowsCache(t),n.cellNodesByColumnIdx)if(n.cellNodesByColumnIdx.hasOwnProperty(o)){var r=columns[o|=0],i=postProcessedRows[t][o];if(r.asyncPostRender&&\"R\"!==i){var l=n.cellNodesByColumnIdx[o];l&&r.asyncPostRender(l,t,getDataItem(t),r,\"C\"===i),postProcessedRows[t][o]=\"R\"}}return void(h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}}}function asyncPostProcessCleanupRows(){if(0<postProcessedCleanupQueue.length){for(var e=postProcessedCleanupQueue[0].groupId;0<postProcessedCleanupQueue.length&&postProcessedCleanupQueue[0].groupId==e;){var t=postProcessedCleanupQueue.shift();if(\"R\"==t.actionType&&$(t.node).remove(),\"C\"==t.actionType){var n=columns[t.columnIdx];n.asyncPostRenderCleanup&&t.node&&n.asyncPostRenderCleanup(t.node,t.rowIdx,n)}}h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay)}}function updateCellCssStylesOnRenderedRows(e,t){var n,o,r,i;for(var l in rowsCache){if(i=t&&t[l],r=e&&e[l],i)for(o in i)r&&i[o]==r[o]||(n=getCellNode(l,getColumnIndex(o)))&&$(n).removeClass(i[o]);if(r)for(o in r)i&&i[o]==r[o]||(n=getCellNode(l,getColumnIndex(o)))&&$(n).addClass(r[o])}}function addCellCssStyles(e,t){if(cellCssClasses[e])throw new Error(\"addCellCssStyles: cell CSS hash with key '\"+e+\"' already exists.\");updateCellCssStylesOnRenderedRows(cellCssClasses[e]=t,null),trigger(self.onCellCssStylesChanged,{key:e,hash:t,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,t){var n=cellCssClasses[e];updateCellCssStylesOnRenderedRows(cellCssClasses[e]=t,n),trigger(self.onCellCssStylesChanged,{key:e,hash:t,grid:self})}function getCellCssStyles(e){return cellCssClasses[e]}function flashCell(e,t,n){if(n=n||100,rowsCache[e]){var o=$(getCellNode(e,t)),r=function(e){e&&setTimeout(function(){o.queue(function(){o.toggleClass(options.cellFlashingCssClass).dequeue(),r(e-1)})},n)};r(4)}}function handleMouseWheel(e){var t=$(e.target).closest(\".slick-row\")[0];t!=rowNodeFromLastMouseWheelEvent&&(zombieRowNodeFromLastMouseWheelEvent&&zombieRowNodeFromLastMouseWheelEvent!=t&&(options.enableAsyncPostRenderCleanup&&zombieRowPostProcessedFromLastMouseWheelEvent?queuePostProcessedRowForCleanup(zombieRowCacheFromLastMouseWheelEvent,zombieRowPostProcessedFromLastMouseWheelEvent):$canvas[0].removeChild(zombieRowNodeFromLastMouseWheelEvent),zombieRowPostProcessedFromLastMouseWheelEvent=zombieRowCacheFromLastMouseWheelEvent=zombieRowNodeFromLastMouseWheelEvent=null,options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()),rowNodeFromLastMouseWheelEvent=t)}function handleDragInit(e,t){var n=getCellFromEvent(e);if(!n||!cellExists(n.row,n.cell))return!1;var o=trigger(self.onDragInit,t,e);return!!e.isImmediatePropagationStopped()&&o}function handleDragStart(e,t){var n=getCellFromEvent(e);if(!n||!cellExists(n.row,n.cell))return!1;var o=trigger(self.onDragStart,t,e);return!!e.isImmediatePropagationStopped()&&o}function handleDrag(e,t){return trigger(self.onDrag,t,e)}function handleDragEnd(e,t){trigger(self.onDragEnd,t,e)}function handleKeyDown(e){trigger(self.onKeyDown,{row:activeRow,cell:activeCell,grid:self},e);var t=e.isImmediatePropagationStopped(),n=Slick.keyCode;if(!t)if(e.shiftKey||e.altKey||e.ctrlKey)e.which!=n.TAB||!e.shiftKey||e.ctrlKey||e.altKey||(t=navigatePrev());else{if(options.editable&&currentEditor&&currentEditor.keyCaptureList&&-1<currentEditor.keyCaptureList.indexOf(e.which))return;if(e.which==n.ESCAPE){if(!getEditorLock().isActive())return;cancelEditAndSetFocus()}else e.which==n.PAGE_DOWN?(navigatePageDown(),t=!0):e.which==n.PAGE_UP?(navigatePageUp(),t=!0):e.which==n.LEFT?t=navigateLeft():e.which==n.RIGHT?t=navigateRight():e.which==n.UP?t=navigateUp():e.which==n.DOWN?t=navigateDown():e.which==n.TAB?t=navigateNext():e.which==n.ENTER&&(options.editable&&(currentEditor?activeRow===getDataLength()?navigateDown():commitEditAndSetFocus():getEditorLock().commitCurrentEdit()&&makeActiveCellEditable()),t=!0)}if(t){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 t=getCellFromEvent(e);if(t&&(null===currentEditor||activeRow!=t.row||activeCell!=t.cell)&&(trigger(self.onClick,{row:t.row,cell:t.cell,grid:self},e),!e.isImmediatePropagationStopped()&&canCellBeActive(t.row,t.cell)&&(!getEditorLock().isActive()||getEditorLock().commitCurrentEdit()))){scrollRowIntoView(t.row,!1);var n=e.target&&e.target.className===Slick.preClickClassName;setActiveCellInternal(getCellNode(t.row,t.cell),null,n)}}function handleContextMenu(e){var t=$(e.target).closest(\".slick-cell\",$canvas);0!==t.length&&(activeCellNode===t[0]&&null!==currentEditor||trigger(self.onContextMenu,{grid:self},e))}function handleDblClick(e){var t=getCellFromEvent(e);!t||null!==currentEditor&&activeRow==t.row&&activeCell==t.cell||(trigger(self.onDblClick,{row:t.row,cell:t.cell,grid:self},e),e.isImmediatePropagationStopped()||options.editable&&gotoCell(t.row,t.cell,!0))}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 t=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),n=t&&t.data(\"column\");trigger(self.onHeaderContextMenu,{column:n,grid:self},e)}function handleHeaderClick(e){var t=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),n=t&&t.data(\"column\");n&&trigger(self.onHeaderClick,{column:n,grid:self},e)}function handleMouseEnter(e){trigger(self.onMouseEnter,{grid:self},e)}function handleMouseLeave(e){trigger(self.onMouseLeave,{grid:self},e)}function cellExists(e,t){return!(e<0||e>=getDataLength()||t<0||t>=columns.length)}function getCellFromPoint(e,t){for(var n=getRowFromPosition(t),o=0,r=0,i=0;i<columns.length&&r<e;i++)r+=columns[i].width,o++;return o<0&&(o=0),{row:n,cell:o-1}}function getCellFromNode(e){var t=/l\\d+/.exec(e.className);if(!t)throw new Error(\"getCellFromNode: cannot get cell - \"+e.className);return parseInt(t[0].substr(1,t[0].length-1),10)}function getRowFromNode(e){for(var t in rowsCache)if(rowsCache[t].rowNode===e)return 0|t;return null}function getCellFromEvent(e){var t=$(e.target).closest(\".slick-cell\",$canvas);if(!t.length)return null;var n=getRowFromNode(t[0].parentNode),o=getCellFromNode(t[0]);return null==n||null==o?null:{row:n,cell:o}}function getCellNodeBox(e,t){if(!cellExists(e,t))return null;for(var n=getRowTop(e),o=n+options.rowHeight-1,r=0,i=0;i<t;i++)r+=columns[i].width;var l=r+columns[t].width;return{top:n,left:r,bottom:o,right:l}}function resetActiveCell(){setActiveCellInternal(null,!1)}function setFocus(){-1==tabbingDirection?$focusSink[0].focus():$focusSink2[0].focus()}function scrollCellIntoView(e,t,n){scrollRowIntoView(e,n);var o=getColspan(e,t);internalScrollColumnIntoView(columnPosLeft[t],columnPosRight[t+(1<o?o-1:0)])}function internalScrollColumnIntoView(e,t){var n=scrollLeft+viewportW;e<scrollLeft?($viewport.scrollLeft(e),handleScroll(),render()):n<t&&($viewport.scrollLeft(Math.min(e,t-$viewport[0].clientWidth)),handleScroll(),render())}function scrollColumnIntoView(e){internalScrollColumnIntoView(columnPosLeft[e],columnPosRight[e])}function setActiveCellInternal(e,t,n,o){null!==activeCellNode&&(makeActiveCellNormal(),$(activeCellNode).removeClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).removeClass(\"active\"));null!=(activeCellNode=e)?(activeRow=getRowFromNode(activeCellNode.parentNode),activeCell=activePosX=getCellFromNode(activeCellNode),null==t&&(t=activeRow==getDataLength()||options.autoEdit),options.showCellSelection&&($(activeCellNode).addClass(\"active\"),$(rowsCache[activeRow].rowNode).addClass(\"active\")),options.editable&&t&&isCellPotentiallyEditable(activeRow,activeCell)&&(clearTimeout(h_editorLoader),options.asyncEditorLoading?h_editorLoader=setTimeout(function(){makeActiveCellEditable(void 0,n)},options.asyncEditorLoadDelay):makeActiveCellEditable(void 0,n))):activeRow=activeCell=null,o||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,t){var n=getDataLength();return!(e<n&&!getDataItem(e))&&(!(columns[t].cannotTriggerInsert&&n<=e)&&!!getEditor(e,t))}function makeActiveCellNormal(){if(currentEditor){if(trigger(self.onBeforeCellEditorDestroy,{editor:currentEditor,grid:self}),currentEditor.destroy(),currentEditor=null,activeCellNode){var e=getDataItem(activeRow);if($(activeCellNode).removeClass(\"editable invalid\"),e){var t=columns[activeCell],n=getFormatter(activeRow,t),o=n(activeRow,activeCell,getDataItemValueForColumn(e,t),t,e,self);applyFormatResultToCellNode(o,activeCellNode),invalidatePostProcessingResults(activeRow)}}navigator.userAgent.toLowerCase().match(/msie/)&&clearTextSelection(),getEditorLock().deactivate(editController)}}function makeActiveCellEditable(e,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],o=getDataItem(activeRow);if(!1!==trigger(self.onBeforeEditCell,{row:activeRow,cell:activeCell,item:o,column:n,grid:self})){getEditorLock().activate(editController),$(activeCellNode).addClass(\"editable\");var r=e||getEditor(activeRow,activeCell);e||r.suppressClearOnEdit||(activeCellNode.innerHTML=\"\"),currentEditor=new r({grid:self,gridPosition:absBox($container[0]),position:absBox(activeCellNode),container:activeCellNode,column:n,item:o||{},commitChanges:commitEditAndSetFocus,cancelChanges:cancelEditAndSetFocus}),o&&(currentEditor.loadValue(o),t&&currentEditor.preClick&&currentEditor.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 t={top:e.offsetTop,left:e.offsetLeft,bottom:0,right:0,width:$(e).outerWidth(),height:$(e).outerHeight(),visible:!0};t.bottom=t.top+t.height,t.right=t.left+t.width;for(var n=e.offsetParent;(e=e.parentNode)!=document.body&&null!=e;)t.visible&&e.scrollHeight!=e.offsetHeight&&\"visible\"!=$(e).css(\"overflowY\")&&(t.visible=t.bottom>e.scrollTop&&t.top<e.scrollTop+e.clientHeight),t.visible&&e.scrollWidth!=e.offsetWidth&&\"visible\"!=$(e).css(\"overflowX\")&&(t.visible=t.right>e.scrollLeft&&t.left<e.scrollLeft+e.clientWidth),t.left-=e.scrollLeft,t.top-=e.scrollTop,e===n&&(t.left+=e.offsetLeft,t.top+=e.offsetTop,n=e.offsetParent),t.bottom=t.top+t.height,t.right=t.left+t.width;return t}function getActiveCellPosition(){return absBox(activeCellNode)}function getGridPosition(){return absBox($container[0])}function handleActiveCellPositionChange(){if(activeCellNode&&(trigger(self.onActiveCellPositionChanged,{grid:self}),currentEditor)){var e=getActiveCellPosition();currentEditor.show&&currentEditor.hide&&(e.visible?currentEditor.show():currentEditor.hide()),currentEditor.position&&currentEditor.position(e)}}function getCellEditor(){return currentEditor}function getActiveCell(){return activeCellNode?{row:activeRow,cell:activeCell,grid:self}:null}function getActiveCellNode(){return activeCellNode}function scrollRowIntoView(e,t){var n=e*options.rowHeight,o=(e+1)*options.rowHeight-viewportH+(viewportHasHScroll?scrollbarDimensions.height:0);(e+1)*options.rowHeight>scrollTop+viewportH+offset?(scrollTo(t?n:o),render()):e*options.rowHeight<scrollTop+offset&&(scrollTo(t?o:n),render())}function scrollRowToTop(e){scrollTo(e*options.rowHeight),render()}function scrollPage(e){var t=e*numVisibleRows;if(scrollTo((getRowFromPosition(scrollTop)+t)*options.rowHeight),render(),options.enableCellNavigation&&null!=activeRow){var n=activeRow+t,o=getDataLengthIncludingAddNew();o<=n&&(n=o-1),n<0&&(n=0);for(var r=0,i=null,l=activePosX;r<=activePosX;)canCellBeActive(n,r)&&(i=r),r+=getColspan(n,r);null!==i?(setActiveCellInternal(getCellNode(n,i)),activePosX=l):resetActiveCell()}}function navigatePageDown(){scrollPage(1)}function navigatePageUp(){scrollPage(-1)}function getColspan(e,t){var n=data.getItemMetadata&&data.getItemMetadata(e);if(!n||!n.columns)return 1;var o=n.columns[columns[t].id]||n.columns[t],r=o&&o.colspan;return r=\"*\"===r?columns.length-t:r||1}function findFirstFocusableCell(e){for(var t=0;t<columns.length;){if(canCellBeActive(e,t))return t;t+=getColspan(e,t)}return null}function findLastFocusableCell(e){for(var t=0,n=null;t<columns.length;)canCellBeActive(e,t)&&(n=t),t+=getColspan(e,t);return n}function gotoRight(e,t,n){if(t>=columns.length)return null;for(;(t+=getColspan(e,t))<columns.length&&!canCellBeActive(e,t););return t<columns.length?{row:e,cell:t,posX:t}:null}function gotoLeft(e,t,n){if(t<=0)return null;var o=findFirstFocusableCell(e);if(null===o||t<=o)return null;for(var r,i={row:e,cell:o,posX:o};;){if(!(r=gotoRight(i.row,i.cell,i.posX)))return null;if(r.cell>=t)return i;i=r}}function gotoDown(e,t,n){for(var o,r=getDataLengthIncludingAddNew();;){if(++e>=r)return null;for(o=t=0;t<=n;)t+=getColspan(e,o=t);if(canCellBeActive(e,o))return{row:e,cell:o,posX:n}}}function gotoUp(e,t,n){for(var o;;){if(--e<0)return null;for(o=t=0;t<=n;)t+=getColspan(e,o=t);if(canCellBeActive(e,o))return{row:e,cell:o,posX:n}}}function gotoNext(e,t,n){if(null==e&&null==t&&canCellBeActive(e=t=n=0,t))return{row:e,cell:t,posX:t};var o=gotoRight(e,t,n);if(o)return o;var r=null,i=getDataLengthIncludingAddNew();for(e===i-1&&e--;++e<i;)if(null!==(r=findFirstFocusableCell(e)))return{row:e,cell:r,posX:r};return null}function gotoPrev(e,t,n){if(null==e&&null==t&&(e=getDataLengthIncludingAddNew()-1,t=n=columns.length-1,canCellBeActive(e,t)))return{row:e,cell:t,posX:t};for(var o,r;!o&&!(o=gotoLeft(e,t,n));){if(--e<0)return null;t=0,null!==(r=findLastFocusableCell(e))&&(o={row:e,cell:r,posX:r})}return o}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 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}[e];var t={up:gotoUp,down:gotoDown,left:gotoLeft,right:gotoRight,prev:gotoPrev,next:gotoNext},n=t[e],o=n(activeRow,activeCell,activePosX);if(o){var r=o.row==getDataLength();return scrollCellIntoView(o.row,o.cell,!r),setActiveCellInternal(getCellNode(o.row,o.cell)),activePosX=o.posX,!0}return setActiveCellInternal(getCellNode(activeRow,activeCell)),!1}function getCellNode(e,t){return rowsCache[e]?(ensureCellNodesInRowsCache(e),rowsCache[e].cellNodesByColumnIdx[t]):null}function setActiveCell(e,t,n,o,r){initialized&&(e>getDataLength()||e<0||t>=columns.length||t<0||options.enableCellNavigation&&(scrollCellIntoView(e,t,!1),setActiveCellInternal(getCellNode(e,t),n,o,r)))}function canCellBeActive(e,t){if(!options.enableCellNavigation||e>=getDataLengthIncludingAddNew()||e<0||t>=columns.length||t<0)return!1;var n=data.getItemMetadata&&data.getItemMetadata(e);if(n&&\"boolean\"==typeof n.focusable)return n.focusable;var o=n&&n.columns;return o&&o[columns[t].id]&&\"boolean\"==typeof o[columns[t].id].focusable?o[columns[t].id].focusable:o&&o[t]&&\"boolean\"==typeof o[t].focusable?o[t].focusable:columns[t].focusable}function canCellBeSelected(e,t){if(e>=getDataLength()||e<0||t>=columns.length||t<0)return!1;var n=data.getItemMetadata&&data.getItemMetadata(e);if(n&&\"boolean\"==typeof n.selectable)return n.selectable;var o=n&&n.columns&&(n.columns[columns[t].id]||n.columns[t]);return o&&\"boolean\"==typeof o.selectable?o.selectable:columns[t].selectable}function gotoCell(e,t,n){if(initialized&&canCellBeActive(e,t)&&getEditorLock().commitCurrentEdit()){scrollCellIntoView(e,t,!1);var o=getCellNode(e,t);setActiveCellInternal(o,n||e===getDataLength()||options.autoEdit),currentEditor||setFocus()}}function commitCurrentEdit(){var e=getDataItem(activeRow),t=columns[activeCell];if(currentEditor){if(currentEditor.isValueChanged()){var n=currentEditor.validate();if(n.valid){if(activeRow<getDataLength()){var o={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:activeRow,cell:activeCell,item:e,grid:self})},undo:function(){this.editor.applyValue(e,this.prevSerializedValue),updateRow(this.row),trigger(self.onCellChange,{row:activeRow,cell:activeCell,item:e,grid:self})}};options.editCommandHandler?(makeActiveCellNormal(),options.editCommandHandler(e,t,o)):(o.execute(),makeActiveCellNormal())}else{var r={};currentEditor.applyValue(r,currentEditor.serializeValue()),makeActiveCellNormal(),trigger(self.onAddNewRow,{item:r,column:t,grid:self})}return!getEditorLock().isActive()}return $(activeCellNode).removeClass(\"invalid\"),$(activeCellNode).width(),$(activeCellNode).addClass(\"invalid\"),trigger(self.onValidationError,{editor:currentEditor,cellNode:activeCellNode,validationResults:n,row:activeRow,cell:activeCell,column:t,grid:self}),currentEditor.focus(),!1}makeActiveCellNormal()}return!0}function cancelCurrentEdit(){return makeActiveCellNormal(),!0}function rowsToRanges(e){for(var t=[],n=columns.length-1,o=0;o<e.length;o++)t.push(new Slick.Range(e[o],0,e[o],n));return t}function getSelectedRows(){if(!selectionModel)throw new Error(\"Selection model is not set\");return selectedRows}function setSelectedRows(e){if(!selectionModel)throw new Error(\"Selection model is not set\");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.3.4\",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,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,onColumnsResized: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,registerPlugin:registerPlugin,unregisterPlugin:unregisterPlugin,getColumns:getColumns,setColumns:setColumns,getColumnIndex:getColumnIndex,updateColumnHeader:updateColumnHeader,setSortColumn:setSortColumn,setSortColumns:setSortColumns,getSortColumns:getSortColumns,autosizeColumns:autosizeColumns,getOptions:getOptions,setOptions:setOptions,getData:getData,getDataLength:getDataLength,getDataItem:getDataItem,setData:setData,getSelectionModel:getSelectionModel,setSelectionModel:setSelectionModel,getSelectedRows:getSelectedRows,setSelectedRows:setSelectedRows,getContainerNode:getContainerNode,updatePagingStatusFromView:updatePagingStatusFromView,render:render,invalidate:invalidate,invalidateRow:invalidateRow,invalidateRows:invalidateRows,invalidateAllRows:invalidateAllRows,updateCell:updateCell,updateRow:updateRow,getViewport:getVisibleRange,getRenderedRange:getRenderedRange,resizeCanvas:resizeCanvas,updateRowCount:updateRowCount,scrollRowIntoView:scrollRowIntoView,scrollRowToTop:scrollRowToTop,scrollCellIntoView:scrollCellIntoView,scrollColumnIntoView:scrollColumnIntoView,getCanvasNode:getCanvasNode,getUID:getUID,getHeaderColumnWidthDiff:getHeaderColumnWidthDiff,getScrollbarDimensions:getScrollbarDimensions,getHeadersWidth:getHeadersWidth,getCanvasWidth:getCanvasWidth,focus:setFocus,getCellFromPoint:getCellFromPoint,getCellFromEvent:getCellFromEvent,getActiveCell:getActiveCell,setActiveCell:setActiveCell,getActiveCellNode:getActiveCellNode,getActiveCellPosition:getActiveCellPosition,resetActiveCell:resetActiveCell,editActiveCell:makeActiveCellEditable,getCellEditor:getCellEditor,getCellNode:getCellNode,getCellNodeBox:getCellNodeBox,canCellBeSelected:canCellBeSelected,canCellBeActive:canCellBeActive,navigatePrev:navigatePrev,navigateNext:navigateNext,navigateUp:navigateUp,navigateDown:navigateDown,navigateLeft:navigateLeft,navigateRight:navigateRight,navigatePageUp:navigatePageUp,navigatePageDown:navigatePageDown,gotoCell:gotoCell,getTopPanel:getTopPanel,setTopPanelVisibility:setTopPanelVisibility,getPreHeaderPanel:getPreHeaderPanel,setPreHeaderPanelVisibility:setPreHeaderPanelVisibility,setHeaderRowVisibility:setHeaderRowVisibility,getHeaderRow:getHeaderRow,getHeaderRowColumn:getHeaderRowColumn,setFooterRowVisibility:setFooterRowVisibility,getFooterRow:getFooterRow,getFooterRowColumn:getFooterRowColumn,getGridPosition:getGridPosition,flashCell:flashCell,addCellCssStyles:addCellCssStyles,setCellCssStyles:setCellCssStyles,removeCellCssStyles:removeCellCssStyles,getCellCssStyles:getCellCssStyles,init:finishInitialization,destroy:destroy,getEditorLock:getEditorLock,getEditController:getEditController}),init()}module.exports={Grid:SlickGrid}},448:function(e,t,n){t.exports=\"undefined\"!=typeof $?$:e(441)},449:function(e,t,n){var o=e(450),r=o.template;function i(e,t,n){return r(e,t,n)}i._=o,t.exports=i,\"function\"==typeof define&&define.amd?define(function(){return i}):\"undefined\"==typeof window&&\"undefined\"==typeof navigator||(window.UnderscoreTemplate=i)},450:function(e,t,n){\n",
2092
+       "      //     (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n",
2093
+       "      //     Underscore may be freely distributed under the MIT license.\n",
2094
+       "      var l={},o=Array.prototype,r=Object.prototype,i=o.slice,s=r.toString,a=r.hasOwnProperty,c=o.forEach,u=Object.keys,d=Array.isArray,p=function(){},f=p.each=p.forEach=function(e,t,n){if(null!=e)if(c&&e.forEach===c)e.forEach(t,n);else if(e.length===+e.length){for(var o=0,r=e.length;o<r;o++)if(t.call(n,e[o],o,e)===l)return}else for(var i=p.keys(e),o=0,r=i.length;o<r;o++)if(t.call(n,e[i[o]],i[o],e)===l)return};p.keys=u||function(e){if(e!==Object(e))throw new TypeError(\"Invalid object\");var t=[];for(var n in e)p.has(e,n)&&t.push(n);return t},p.defaults=function(n){return f(i.call(arguments,1),function(e){if(e)for(var t in e)void 0===n[t]&&(n[t]=e[t])}),n},p.isArray=d||function(e){return\"[object Array]\"===s.call(e)},p.has=function(e,t){if(!p.isArray(t))return null!=e&&a.call(e,t);for(var n=t.length,o=0;o<n;o++){var r=t[o];if(null==e||!a.call(e,r))return!1;e=e[r]}return!!n};var h={escape:{\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#x27;\"}},g={escape:new RegExp(\"[\"+p.keys(h.escape).join(\"\")+\"]\",\"g\")};p.each([\"escape\"],function(t){p[t]=function(e){return null==e?\"\":(\"\"+e).replace(g[t],function(e){return h[t][e]})}}),p.templateSettings={evaluate:/<%([\\s\\S]+?)%>/g,interpolate:/<%=([\\s\\S]+?)%>/g,escape:/<%-([\\s\\S]+?)%>/g};var m=/(.)^/,v={\"'\":\"'\",\"\\\\\":\"\\\\\",\"\\r\":\"r\",\"\\n\":\"n\",\"\\t\":\"t\",\"\\u2028\":\"u2028\",\"\\u2029\":\"u2029\"},w=/\\\\|'|\\r|\\n|\\t|\\u2028|\\u2029/g;p.template=function(i,e,t){var n;t=p.defaults({},t,p.templateSettings);var o=new RegExp([(t.escape||m).source,(t.interpolate||m).source,(t.evaluate||m).source].join(\"|\")+\"|$\",\"g\"),l=0,s=\"__p+='\";i.replace(o,function(e,t,n,o,r){return s+=i.slice(l,r).replace(w,function(e){return\"\\\\\"+v[e]}),t&&(s+=\"'+\\n((__t=(\"+t+\"))==null?'':_.escape(__t))+\\n'\"),n&&(s+=\"'+\\n((__t=(\"+n+\"))==null?'':__t)+\\n'\"),o&&(s+=\"';\\n\"+o+\"\\n__p+='\"),l=r+e.length,e}),s+=\"';\\n\",t.variable||(s=\"with(obj||{}){\\n\"+s+\"}\\n\"),s=\"var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\\n\"+s+\"return __p;\\n\";try{n=new Function(t.variable||\"obj\",\"_\",s)}catch(e){throw e.source=s,e}if(e)return n(e,p);var r=function(e){return n.call(this,e,p)};return r.source=\"function(\"+(t.variable||\"obj\")+\"){\\n\"+s+\"}\",r},t.exports=p}},0,0)}(a.Bokeh)}(this);\n",
2095
+       "      //# sourceMappingURL=bokeh-tables.min.js.map\n",
2096
+       "      /* END bokeh-tables.min.js */\n",
2097
+       "    },\n",
2098
+       "    \n",
2099
+       "    function(Bokeh) {\n",
2100
+       "      /* BEGIN bokeh-gl.min.js */\n",
2101
+       "      /*!\n",
2102
+       "       * Copyright (c) 2012 - 2018, Anaconda, Inc., and Bokeh Contributors\n",
2103
+       "       * All rights reserved.\n",
2104
+       "       * \n",
2105
+       "       * Redistribution and use in source and binary forms, with or without modification,\n",
2106
+       "       * are permitted provided that the following conditions are met:\n",
2107
+       "       * \n",
2108
+       "       * Redistributions of source code must retain the above copyright notice,\n",
2109
+       "       * this list of conditions and the following disclaimer.\n",
2110
+       "       * \n",
2111
+       "       * Redistributions in binary form must reproduce the above copyright notice,\n",
2112
+       "       * this list of conditions and the following disclaimer in the documentation\n",
2113
+       "       * and/or other materials provided with the distribution.\n",
2114
+       "       * \n",
2115
+       "       * Neither the name of Anaconda nor the names of any contributors\n",
2116
+       "       * may be used to endorse or promote products derived from this software\n",
2117
+       "       * without specific prior written permission.\n",
2118
+       "       * \n",
2119
+       "       * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\"\n",
2120
+       "       * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE\n",
2121
+       "       * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE\n",
2122
+       "       * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE\n",
2123
+       "       * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR\n",
2124
+       "       * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF\n",
2125
+       "       * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS\n",
2126
+       "       * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN\n",
2127
+       "       * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)\n",
2128
+       "       * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF\n",
2129
+       "       * THE POSSIBILITY OF SUCH DAMAGE.\n",
2130
+       "       */\n",
2131
+       "      !function(t,e){var a;a=t.Bokeh,function(t,e,n){if(null!=a)return a.register_plugin(t,{\"models/glyphs/webgl/base\":451,\"models/glyphs/webgl/index\":452,\"models/glyphs/webgl/line.frag\":453,\"models/glyphs/webgl/line\":454,\"models/glyphs/webgl/line.vert\":455,\"models/glyphs/webgl/main\":456,\"models/glyphs/webgl/markers.frag\":457,\"models/glyphs/webgl/markers\":458,\"models/glyphs/webgl/markers.vert\":459},456);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")}({451:function(t,e,n){var g=t(27),y=t(14),a=function(){function t(t,e){this.gl=t,this.glyph=e,this.nvertices=0,this.size_changed=!1,this.data_changed=!1,this.visuals_changed=!1,this.init()}return t.prototype.set_data_changed=function(t){t!=this.nvertices&&(this.nvertices=t,this.size_changed=!0),this.data_changed=!0},t.prototype.set_visuals_changed=function(){this.visuals_changed=!0},t.prototype.render=function(t,e,n){var a,s=[0,1,2],i=s[0],r=s[1],o=s[2],l=1,_=1,h=this.glyph.renderer.map_to_screen([i*l,r*l,o*l],[i*_,r*_,o*_]),c=h[0],f=h[1];if(isNaN(c[0]+c[1]+c[2]+f[0]+f[1]+f[2]))return y.logger.warn(\"WebGL backend (\"+this.glyph.model.type+\"): falling back to canvas rendering\"),!1;if(l=100/Math.min(Math.max(Math.abs(c[1]-c[0]),1e-12),1e12),_=100/Math.min(Math.max(Math.abs(f[1]-f[0]),1e-12),1e12),a=this.glyph.renderer.map_to_screen([i*l,r*l,o*l],[i*_,r*_,o*_]),c=a[0],f=a[1],1e-6<Math.abs(c[1]-c[0]-(c[2]-c[1]))||1e-6<Math.abs(f[1]-f[0]-(f[2]-f[1])))return y.logger.warn(\"WebGL backend (\"+this.glyph.model.type+\"): falling back to canvas rendering\"),!1;var d=[(c[1]-c[0])/l,(f[1]-f[0])/_],u=d[0],g=d[1],p=this.glyph.renderer.plot_view.gl.canvas,v=p.width,m=p.height,x={pixel_ratio:this.glyph.renderer.plot_view.canvas.pixel_ratio,width:v,height:m,dx:c[0]/u,dy:f[0]/g,sx:u,sy:g};return this.draw(e,n,x),!0},t}();function p(t,e){for(var n=new Float32Array(t),a=0,s=t;a<s;a++)n[a]=e;return n}function v(t,e){return void 0!==t[e].spec.value}n.BaseGLGlyph=a,n.line_width=function(t){return t<2&&(t=Math.sqrt(2*t)),t},n.fill_array_with_float=p,n.fill_array_with_vec=function(t,e,n){for(var a=new Float32Array(t*e),s=0;s<t;s++)for(var i=0;i<e;i++)a[s*e+i]=n[i];return a},n.visual_prop_is_singular=v,n.attach_float=function(t,e,n,a,s,i){if(s.doit)if(v(s,i))e.used=!1,t.set_attribute(n,\"float\",s[i].value());else{e.used=!0;var r=new Float32Array(s.cache[i+\"_array\"]);e.set_size(4*a),e.set_data(0,r),t.set_attribute(n,\"float\",e)}else e.used=!1,t.set_attribute(n,\"float\",[0])},n.attach_color=function(t,e,n,a,s,i){var r,o=i+\"_color\",l=i+\"_alpha\";if(s.doit)if(v(s,o)&&v(s,l))e.used=!1,r=g.color2rgba(s[o].value(),s[l].value()),t.set_attribute(n,\"vec4\",r);else{var _=void 0,h=void 0;e.used=!0,h=v(s,o)?function(){for(var t=[],e=0,n=a;e<n;e++)t.push(s[o].value());return t}():s.cache[o+\"_array\"],_=v(s,l)?p(a,s[l].value()):s.cache[l+\"_array\"];for(var c=new Float32Array(4*a),f=0,d=a;f<d;f++){r=g.color2rgba(h[f],_[f]);for(var u=0;u<4;u++)c[4*f+u]=r[u]}e.set_size(4*a*4),e.set_data(0,c),t.set_attribute(n,\"vec4\",e)}else e.used=!1,t.set_attribute(n,\"vec4\",[0,0,0,0])}},452:function(t,e,n){var a=t(391);a.__exportStar(t(454),n),a.__exportStar(t(458),n)},453:function(t,e,n){n.fragment_shader=\"\\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\"},454:function(t,e,n){var a=t(391),s=t(460),i=t(451),r=t(455),o=t(453),l=t(27),_=function(){function t(t){this._atlas={},this._index=0,this._width=256,this._height=256,this.tex=new s.Texture2D(t),this.tex.set_wrapping(t.REPEAT,t.REPEAT),this.tex.set_interpolation(t.NEAREST,t.NEAREST),this.tex.set_size([this._height,this._width],t.RGBA),this.tex.set_data([0,0],[this._height,this._width],new Uint8Array(this._height*this._width*4)),this.get_atlas_data([1])}return t.prototype.get_atlas_data=function(t){var e=t.join(\"-\"),n=this._atlas[e];if(void 0===n){var a=this.make_pattern(t),s=a[0],i=a[1];this.tex.set_data([this._index,0],[1,this._width],new Uint8Array(s.map(function(t){return t+10}))),this._atlas[e]=[this._index/this._height,i],this._index+=1}return this._atlas[e]},t.prototype.make_pattern=function(t){1<t.length&&t.length%2&&(t=t.concat(t));for(var e=0,n=0,a=t;n<a.length;n++){var s=a[n];e+=s}for(var i=[],r=0,o=0,l=t.length+2;o<l;o+=2){var _=Math.max(1e-4,t[o%t.length]),h=Math.max(1e-4,t[(o+1)%t.length]);i.push(r,r+_),r+=_+h}for(var c=this._width,f=new Float32Array(4*c),o=0,l=c;o<l;o++){for(var d=void 0,u=void 0,g=void 0,p=e*o/(c-1),v=0,m=1e16,x=0,y=i.length;x<y;x++){var b=Math.abs(i[x]-p);b<m&&(v=x,m=b)}v%2==0?(g=p<=i[v]?1:0,u=i[v],d=i[v+1]):(g=p>i[v]?-1:0,u=i[v-1],d=i[v]),f[4*o+0]=i[v],f[4*o+1]=g,f[4*o+2]=u,f[4*o+3]=d}return[f,e]},t}(),h={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},f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),e.prototype.init=function(){var t=this.gl;this._scale_aspect=0;var e=r.vertex_shader,n=o.fragment_shader;this.prog=new s.Program(t),this.prog.set_shaders(e,n),this.index_buffer=new s.IndexBuffer(t),this.vbo_position=new s.VertexBuffer(t),this.vbo_tangents=new s.VertexBuffer(t),this.vbo_segment=new s.VertexBuffer(t),this.vbo_angles=new s.VertexBuffer(t),this.vbo_texcoord=new s.VertexBuffer(t),this.dash_atlas=new _(t)},e.prototype.draw=function(t,e,n){var a=e.glglyph;if(a.data_changed){if(!isFinite(n.dx)||!isFinite(n.dy))return;a._baked_offset=[n.dx,n.dy],a._set_data(),a.data_changed=!1}this.visuals_changed&&(this._set_visuals(),this.visuals_changed=!1);var s=n.sx,i=n.sy,r=Math.sqrt(s*s+i*i);s/=r,i/=r,Math.abs(this._scale_aspect-i/s)>Math.abs(.001*this._scale_aspect)&&(a._update_scale(s,i),this._scale_aspect=i/s),this.prog.set_attribute(\"a_position\",\"vec2\",a.vbo_position),this.prog.set_attribute(\"a_tangents\",\"vec4\",a.vbo_tangents),this.prog.set_attribute(\"a_segment\",\"vec2\",a.vbo_segment),this.prog.set_attribute(\"a_angles\",\"vec2\",a.vbo_angles),this.prog.set_attribute(\"a_texcoord\",\"vec2\",a.vbo_texcoord),this.prog.set_uniform(\"u_length\",\"float\",[a.cumsum]),this.prog.set_texture(\"u_dash_atlas\",this.dash_atlas.tex);var o=a._baked_offset;if(this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[n.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[n.width,n.height]),this.prog.set_uniform(\"u_offset\",\"vec2\",[n.dx-o[0],n.dy-o[1]]),this.prog.set_uniform(\"u_scale_aspect\",\"vec2\",[s,i]),this.prog.set_uniform(\"u_scale_length\",\"float\",[r]),this.I_triangles=a.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);for(var l=this.I_triangles.length,_=64008,h=[],c=0,f=Math.ceil(l/_);c<f;c++)h.push([]);for(var c=0,f=t.length;c<f;c++){var d=t[c]%_,u=Math.floor(t[c]/_);h[u].push(d)}for(var u=0,f=h.length;u<f;u++){var g=new Uint16Array(h[u]),p=u*_*4;0!==g.length&&(this.prog.set_attribute(\"a_position\",\"vec2\",a.vbo_position,0,2*p),this.prog.set_attribute(\"a_tangents\",\"vec4\",a.vbo_tangents,0,4*p),this.prog.set_attribute(\"a_segment\",\"vec2\",a.vbo_segment,0,2*p),this.prog.set_attribute(\"a_angles\",\"vec2\",a.vbo_angles,0,2*p),this.prog.set_attribute(\"a_texcoord\",\"vec2\",a.vbo_texcoord,0,2*p),this.index_buffer.set_size(2*g.length),this.index_buffer.set_data(0,g),this.prog.draw(this.gl.TRIANGLES,this.index_buffer))}}},e.prototype._set_data=function(){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)},e.prototype._set_visuals=function(){var t,e=l.color2rgba(this.glyph.visuals.line.line_color.value(),this.glyph.visuals.line.line_alpha.value()),n=c[this.glyph.visuals.line.line_cap.value()],a=h[this.glyph.visuals.line.line_join.value()];this.prog.set_uniform(\"u_color\",\"vec4\",e),this.prog.set_uniform(\"u_linewidth\",\"float\",[this.glyph.visuals.line.line_width.value()]),this.prog.set_uniform(\"u_antialias\",\"float\",[.9]),this.prog.set_uniform(\"u_linecaps\",\"vec2\",[n,n]),this.prog.set_uniform(\"u_linejoin\",\"float\",[a]),this.prog.set_uniform(\"u_miter_limit\",\"float\",[10]);var s=this.glyph.visuals.line.line_dash.value(),i=0,r=1;s.length&&(t=this.dash_atlas.get_atlas_data(s),i=t[0],r=t[1]),this.prog.set_uniform(\"u_dash_index\",\"float\",[i]),this.prog.set_uniform(\"u_dash_phase\",\"float\",[this.glyph.visuals.line.line_dash_offset.value()]),this.prog.set_uniform(\"u_dash_period\",\"float\",[r]),this.prog.set_uniform(\"u_dash_caps\",\"vec2\",[n,n]),this.prog.set_uniform(\"u_closed\",\"float\",[0])},e.prototype._bake=function(){for(var t,e,n,a,s,i,r,o,l=this.nvertices,_=new Float64Array(this.glyph._x),h=new Float64Array(this.glyph._y),c=r=new Float32Array(2*l),f=new Float32Array(2*l),d=o=new Float32Array(4*l),u=0,g=l;u<g;u++)c[2*u+0]=_[u]+this._baked_offset[0],c[2*u+1]=h[u]+this._baked_offset[1];this.tangents=e=new Float32Array(2*l-2);for(var u=0,g=l-1;u<g;u++)e[2*u+0]=r[2*(u+1)+0]-r[2*u+0],e[2*u+1]=r[2*(u+1)+1]-r[2*u+1];for(var u=0,g=l-1;u<g;u++)d[4*(u+1)+0]=e[2*u+0],d[4*(u+1)+1]=e[2*u+1],d[4*u+2]=e[2*u+0],d[4*u+3]=e[2*u+1];d[0]=e[0],d[1]=e[1],d[4*(l-1)+2]=e[2*(l-2)+0],d[4*(l-1)+3]=e[2*(l-2)+1];for(var p=new Float32Array(l),u=0,g=l;u<g;u++)p[u]=Math.atan2(o[4*u+0]*o[4*u+3]-o[4*u+1]*o[4*u+2],o[4*u+0]*o[4*u+2]+o[4*u+1]*o[4*u+3]);for(var u=0,g=l-1;u<g;u++)f[2*u+0]=p[u],f[2*u+1]=p[u+1];var v=4*l-4;this.V_position=a=new Float32Array(2*v),this.V_angles=n=new Float32Array(2*v),this.V_tangents=s=new Float32Array(4*v),this.V_texcoord=i=new Float32Array(2*v);for(var u=0,g=l;u<g;u++)for(var m=0;m<4;m++){for(var x=0;x<2;x++)a[2*(4*u+m-2)+x]=c[2*u+x],n[2*(4*u+m)+x]=f[2*u+x];for(var x=0;x<4;x++)s[4*(4*u+m-2)+x]=d[4*u+x]}for(var u=0,g=l;u<g;u++)i[2*(4*u+0)+0]=-1,i[2*(4*u+1)+0]=-1,i[2*(4*u+2)+0]=1,i[2*(4*u+3)+0]=1,i[2*(4*u+0)+1]=-1,i[2*(4*u+1)+1]=1,i[2*(4*u+2)+1]=-1,i[2*(4*u+3)+1]=1;var y=6*(l-1);this.I_triangles=t=new Uint32Array(y);for(var u=0,g=l;u<g;u++)t[6*u+0]=0+4*u,t[6*u+1]=1+4*u,t[6*u+2]=3+4*u,t[6*u+3]=2+4*u,t[6*u+4]=0+4*u,t[6*u+5]=3+4*u},e.prototype._update_scale=function(t,e){var n,a=this.nvertices,s=4*a-4,i=this.tangents,r=new Float32Array(a-1),o=new Float32Array(2*a);this.V_segment=n=new Float32Array(2*s);for(var l=0,_=a-1;l<_;l++)r[l]=Math.sqrt(Math.pow(i[2*l+0]*t,2)+Math.pow(i[2*l+1]*e,2));for(var h=0,l=0,_=a-1;l<_;l++)h+=r[l],o[2*(l+1)+0]=h,o[2*l+1]=h;for(var l=0,_=a;l<_;l++)for(var c=0;c<4;c++)for(var f=0;f<2;f++)n[2*(4*l+c)+f]=o[2*l+f];this.cumsum=h,this.vbo_segment.set_size(4*this.V_segment.length),this.vbo_segment.set_data(0,this.V_segment)},e}(i.BaseGLGlyph);n.LineGLGlyph=f},455:function(t,e,n){n.vertex_shader=\"\\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 + u_offset) * abs_scale;\\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\"},456:function(t,e,n){t(452)},457:function(t,e,n){n.fragment_shader=function(t){return\"\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\nconst float PI = 3.14159265358979323846264;\\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\"+t+\"\\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    //gl_FragColor.rgb *= gl_FragColor.a;  // pre-multiply alpha\\n}\\n\"},n.circle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return length(P) - size/2.0;\\n}\\n\",n.square=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return max(abs(P.x), abs(P.y)) - size/2.0;\\n}\\n\",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\",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\",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\",n.invertedtriangle=\"\\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\",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',n.circlecross=\"\\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\",n.squarecross=\"\\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\",n.diamondcross=\"\\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\",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',n.circlex='\\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',n.squarex=\"\\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\",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'},458:function(t,e,n){var a=t(391),s=t(460),i=t(451),r=t(459),o=t(457),u=t(120),g=t(22),p=t(14),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),e.prototype.init=function(){var t=this.gl,e=r.vertex_shader,n=o.fragment_shader(this._marker_code);this.prog=new s.Program(t),this.prog.set_shaders(e,n),this.vbo_x=new s.VertexBuffer(t),this.prog.set_attribute(\"a_x\",\"float\",this.vbo_x),this.vbo_y=new s.VertexBuffer(t),this.prog.set_attribute(\"a_y\",\"float\",this.vbo_y),this.vbo_s=new s.VertexBuffer(t),this.prog.set_attribute(\"a_size\",\"float\",this.vbo_s),this.vbo_a=new s.VertexBuffer(t),this.prog.set_attribute(\"a_angle\",\"float\",this.vbo_a),this.vbo_linewidth=new s.VertexBuffer(t),this.vbo_fg_color=new s.VertexBuffer(t),this.vbo_bg_color=new s.VertexBuffer(t),this.index_buffer=new s.IndexBuffer(t)},e.prototype.draw=function(t,e,n){var a=e.glglyph,s=a.nvertices;if(a.data_changed){if(!isFinite(n.dx)||!isFinite(n.dy))return;a._baked_offset=[n.dx,n.dy],a._set_data(s),a.data_changed=!1}else this.glyph instanceof u.CircleView&&null!=this.glyph._radius&&(null==this.last_trans||n.sx!=this.last_trans.sx||n.sy!=this.last_trans.sy)&&(this.last_trans=n,this.vbo_s.set_data(0,new Float32Array(g.map(this.glyph.sradius,function(t){return 2*t}))));this.visuals_changed&&(this._set_visuals(s),this.visuals_changed=!1);var i=a._baked_offset;if(this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[n.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[n.width,n.height]),this.prog.set_uniform(\"u_offset\",\"vec2\",[n.dx-i[0],n.dy-i[1]]),this.prog.set_uniform(\"u_scale\",\"vec2\",[n.sx,n.sy]),this.prog.set_attribute(\"a_x\",\"float\",a.vbo_x),this.prog.set_attribute(\"a_y\",\"float\",a.vbo_y),this.prog.set_attribute(\"a_size\",\"float\",a.vbo_s),this.prog.set_attribute(\"a_angle\",\"float\",a.vbo_a),0!=t.length)if(t.length===s)this.prog.draw(this.gl.POINTS,[0,s]);else if(s<65535){var r=window.navigator.userAgent;0<r.indexOf(\"MSIE \")+r.indexOf(\"Trident/\")+r.indexOf(\"Edge/\")&&p.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{for(var o=[],l=0,_=Math.ceil(s/64e3);l<_;l++)o.push([]);for(var l=0,_=t.length;l<_;l++){var h=t[l]%64e3,c=Math.floor(t[l]/64e3);o[c].push(h)}for(var c=0,_=o.length;c<_;c++){var f=new Uint16Array(o[c]),d=64e3*c*4;0!==f.length&&(this.prog.set_attribute(\"a_x\",\"float\",a.vbo_x,0,d),this.prog.set_attribute(\"a_y\",\"float\",a.vbo_y,0,d),this.prog.set_attribute(\"a_size\",\"float\",a.vbo_s,0,d),this.prog.set_attribute(\"a_angle\",\"float\",a.vbo_a,0,d),this.vbo_linewidth.used&&this.prog.set_attribute(\"a_linewidth\",\"float\",this.vbo_linewidth,0,d),this.vbo_fg_color.used&&this.prog.set_attribute(\"a_fg_color\",\"vec4\",this.vbo_fg_color,0,4*d),this.vbo_bg_color.used&&this.prog.set_attribute(\"a_bg_color\",\"vec4\",this.vbo_bg_color,0,4*d),this.index_buffer.set_size(2*f.length),this.index_buffer.set_data(0,f),this.prog.draw(this.gl.POINTS,this.index_buffer))}}},e.prototype._set_data=function(t){var e=4*t;this.vbo_x.set_size(e),this.vbo_y.set_size(e),this.vbo_a.set_size(e),this.vbo_s.set_size(e);for(var n=new Float64Array(this.glyph._x),a=new Float64Array(this.glyph._y),s=0,i=t;s<i;s++)n[s]+=this._baked_offset[0],a[s]+=this._baked_offset[1];this.vbo_x.set_data(0,new Float32Array(n)),this.vbo_y.set_data(0,new Float32Array(a)),null!=this.glyph._angle&&this.vbo_a.set_data(0,new Float32Array(this.glyph._angle)),this.glyph instanceof u.CircleView&&null!=this.glyph._radius?this.vbo_s.set_data(0,new Float32Array(g.map(this.glyph.sradius,function(t){return 2*t}))):this.vbo_s.set_data(0,new Float32Array(this.glyph._size))},e.prototype._set_visuals=function(t){i.attach_float(this.prog,this.vbo_linewidth,\"a_linewidth\",t,this.glyph.visuals.line,\"line_width\"),i.attach_color(this.prog,this.vbo_fg_color,\"a_fg_color\",t,this.glyph.visuals.line,\"line\"),i.attach_color(this.prog,this.vbo_bg_color,\"a_bg_color\",t,this.glyph.visuals.fill,\"fill\"),this.prog.set_uniform(\"u_antialias\",\"float\",[.8])},e}(i.BaseGLGlyph);function _(n){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),Object.defineProperty(e.prototype,\"_marker_code\",{get:function(){return n},enumerable:!0,configurable:!0}),e}(l)}n.MarkerGLGlyph=l;var h=t(457);n.CircleGLGlyph=_(h.circle),n.SquareGLGlyph=_(h.square),n.DiamondGLGlyph=_(h.diamond),n.TriangleGLGlyph=_(h.triangle),n.InvertedTriangleGLGlyph=_(h.invertedtriangle),n.HexGLGlyph=_(h.hex),n.CrossGLGlyph=_(h.cross),n.CircleCrossGLGlyph=_(h.circlecross),n.SquareCrossGLGlyph=_(h.squarecross),n.DiamondCrossGLGlyph=_(h.diamondcross),n.XGLGlyph=_(h.x),n.CircleXGLGlyph=_(h.circlex),n.SquareXGLGlyph=_(h.squarex),n.AsteriskGLGlyph=_(h.asterisk)},459:function(t,e,n){n.vertex_shader=\"\\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_x;\\nattribute float a_y;\\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    // Calculate position - the -0.5 is to correct for canvas origin\\n    vec2 pos = (vec2(a_x, a_y) + u_offset) * u_scale; // 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\"},460:function(t,e,n){var a,s,o,i,r,p,d,l,u,x=function(t,e){return Array.isArray(t)&&Array.isArray(e)?t.concat(e):t+e},g=function(t,e){if(null==e);else{if(Array.isArray(e)){for(var n=0;n<e.length;n++)if(v(t,e[n]))return!0;return!1}if(e.constructor===Object){for(var a in e)if(t==a)return!0;return!1}if(e.constructor==String)return 0<=e.indexOf(t)}var s=Error(\"Not a container: \"+e);throw s.name=\"TypeError\",s},v=function t(e,n){if(null==e||null==n);else{if(Array.isArray(e)&&Array.isArray(n)){for(var a=0,s=e.length==n.length;s&&a<e.length;)s=t(e[a],n[a]),a+=1;return s}if(e.constructor===Object&&n.constructor===Object){var i=Object.keys(e),r=Object.keys(n);i.sort(),r.sort();for(var o,a=0,s=t(i,r);s&&a<i.length;)o=i[a],s=t(e[o],n[o]),a+=1;return s}}return e==n},_=function(t,e){if(void 0===t||\"undefined\"!=typeof window&&window===t||\"undefined\"!=typeof global&&global===t)throw\"Class constructor is called as a function.\";for(var n in t)void 0!==Object[n]||\"function\"!=typeof t[n]||t[n].nobind||(t[n]=t[n].bind(t));t.__init__&&t.__init__.apply(t,e)},m=function(t,e){if((\"number\"==typeof t)+(\"number\"==typeof e)===1){if(t.constructor===String)return h.call(t,e);if(e.constructor===String)return h.call(e,t);if(Array.isArray(e)){var n=t;t=e,e=n}if(Array.isArray(t)){for(var a=[],s=0;s<e;s++)a=a.concat(t);return a}}return t*e},y=function(t){return null===t||\"object\"!=typeof t?t:void 0!==t.length?!!t.length&&t:void 0!==t.byteLength?!!t.byteLength&&t:t.constructor!==Object||!!Object.getOwnPropertyNames(t).length&&t},b=function(t){if(!Array.isArray(this))return this.append.apply(this,arguments);this.push(t)},w=function(t,e){return this.constructor!==Object?this.get.apply(this,arguments):void 0!==this[t]?this[t]:void 0!==e?e:null},P=function(t){if(!Array.isArray(this))return this.remove.apply(this,arguments);for(var e=0;e<this.length;e++)if(v(this[e],t))return void this.splice(e,1);var n=Error(t);throw n.name=\"ValueError\",n},h=function(t){if(this.repeat)return this.repeat(t);if(t<1)return\"\";for(var e=\"\",n=this.valueOf();1<t;)1&t&&(e+=n),t>>=1,n+=n;return e+n},c=function(t){return this.constructor!==String?this.startswith.apply(this,arguments):0==this.indexOf(t)};u=window.console,l=function(t,e){var n,a,s,i,r,o,l;for(e=void 0===e?\"periodic check\":e,i=[];a=t.getError(),!(v(a,t.NO_ERROR)||y(i)&&v(a,i[i.length-1]));)b.call(i,a);if(i.length){for(r=\"\",\"object\"!=typeof(o=i)||Array.isArray(o)||(o=Object.keys(o)),l=0;l<o.length;l+=1)n=o[l],r=x(r,n);throw(s=new Error(\"RuntimeError:OpenGL got errors (\"+e+\"): \"+r)).name=\"RuntimeError\",s}return null},(s=function(){_(this,arguments)}).prototype._base_class=Object,s.prototype._class_name=\"GlooObject\",s.prototype.__init__=function(t){if(this._gl=t,this.handle=null,this._create(),null===this.handle)throw\"AssertionError: this.handle !== null\";return null},s.prototype._create=function(){var t;throw(t=new Error(\"NotImplementedError:\")).name=\"NotImplementedError\",t},((i=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,i.prototype._class_name=\"Program\",i.prototype.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\"},i.prototype.ATYPEMAP={float:\"vertexAttrib1f\",vec2:\"vertexAttrib2f\",vec3:\"vertexAttrib3f\",vec4:\"vertexAttrib4f\"},i.prototype.ATYPEINFO={float:[1,5126],vec2:[2,5126],vec3:[3,5126],vec4:[4,5126]},i.prototype._create=function(){return this.handle=this._gl.createProgram(),this.locations={},this._unset_variables=[],this._validated=!1,this._samplers={},this._attributes={},this._known_invalid=[],null},i.prototype.delete=function(){return this._gl.deleteProgram(this.handle),null},i.prototype.activate=function(){return this._gl.useProgram(this.handle),null},i.prototype.deactivate=function(){return this._gl.useProgram(0),null},i.prototype.set_shaders=function(t,e){var n,a,s,i,r,o,l,_,h,c,f,d,u;for(o=this._gl,this._linked=!1,u=o.createShader(o.VERTEX_SHADER),r=o.createShader(o.FRAGMENT_SHADER),f=[[t,u,\"vertex\"],[e,r,\"fragment\"]],_=0;_<2;_+=1)if(n=(c=f[_])[0],l=c[1],d=c[2],o.shaderSource(l,n),o.compileShader(l),h=o.getShaderParameter(l,o.COMPILE_STATUS),!y(h))throw i=o.getShaderInfoLog(l),(s=new Error(\"RuntimeError:\"+x(\"errors in \"+d+\" shader:\\n\",i))).name=\"RuntimeError\",s;if(o.attachShader(this.handle,u),o.attachShader(this.handle,r),o.linkProgram(this.handle),!y(o.getProgramParameter(this.handle,o.LINK_STATUS)))throw(a=new Error(\"RuntimeError:Program link error:\\n\"+o.getProgramInfoLog(this.handle))).name=\"RuntimeError\",a;return this._unset_variables=this._get_active_attributes_and_uniforms(),o.detachShader(this.handle,u),o.detachShader(this.handle,r),o.deleteShader(u),o.deleteShader(r),this._known_invalid=[],this._linked=!0,null},i.prototype._get_active_attributes_and_uniforms=function(){var s,t,e,n,a,i,r,o,l,_,h,c,f,d,u,g,p,v,m;for(o=this._gl,this.locations={},d=new window.RegExp(\"(\\\\w+)\\\\s*(\\\\[(\\\\d+)\\\\])\\\\s*\"),a=o.getProgramParameter(this.handle,o.ACTIVE_UNIFORMS),t=o.getProgramParameter(this.handle,o.ACTIVE_ATTRIBUTES),v=[],\"object\"!=typeof(g=[[s=[],t,o.getActiveAttrib,o.getAttribLocation],[v,a,o.getActiveUniform,o.getUniformLocation]])||Array.isArray(g)||(g=Object.keys(g)),p=0;p<g.length;p+=1)for(m=g[p],e=(u=m)[0],n=u[1],i=u[2],r=u[3],l=0;l<n;l+=1){if(_=i.call(o,this.handle,l),f=_.name,c=f.match(d),y(c))for(f=c[1],h=0;h<_.size;h+=1)b.call(e,[f+\"[\"+h+\"]\",_.type]);else b.call(e,[f,_.type]);this.locations[f]=r.call(o,this.handle,f)}return x(function(){var t,e,n,a=[];for(\"object\"!=typeof(e=s)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(t[0]);return a}.apply(this),function(){var t,e,n,a=[];for(\"object\"!=typeof(e=v)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(t[0]);return a}.apply(this))},i.prototype.set_texture=function(t,e){var n,a,s;if(!y(this._linked))throw(n=new Error(\"RuntimeError:Cannot set uniform when program has no code\")).name=\"RuntimeError\",n;return a=w.call(this.locations,t,-1),y(a<0)?g(t,this._known_invalid)||(b.call(this._known_invalid,t),u.log(\"Variable \"+t+\" is not an active texture\")):(g(t,this._unset_variables)&&P.call(this._unset_variables,t),this.activate(),s=function(){return\"function\"==typeof this.keys?this.keys.apply(this,arguments):Object.keys(this)}.call(this._samplers).length,g(t,this._samplers)&&(s=this._samplers[t][this._samplers[t].length-1]),this._samplers[t]=[e._target,e.handle,s],this._gl.uniform1i(a,s)),null},i.prototype.set_uniform=function(t,e,n){var a,s,i,r,o,l,_;if(!y(this._linked))throw(i=new Error(\"RuntimeError:Cannot set uniform when program has no code\")).name=\"RuntimeError\",i;if(o=w.call(this.locations,t,-1),y(o<0))return g(t,this._known_invalid)||(b.call(this._known_invalid,t),u.log(\"Variable \"+t+\" is not an active uniform\")),null;if(g(t,this._unset_variables)&&P.call(this._unset_variables,t),s=1,c.call(e,\"mat\")||(a=w.call({int:\"float\",bool:\"float\"},e,function(t){if(this.constructor!==String)return this.lstrip.apply(this,arguments);t=void 0===t?\" \\t\\r\\n\":t;for(var e=0;e<this.length;e++)if(t.indexOf(this[e])<0)return this.slice(e);return\"\"}.call(e,\"ib\")),s=Math.floor(n.length/this.ATYPEINFO[a][0])),y(1<s))for(l=0;l<s;l+=1)g(t+\"[\"+l+\"]\",this._unset_variables)&&g(_=t+\"[\"+l+\"]\",this._unset_variables)&&P.call(this._unset_variables,_);return r=this.UTYPEMAP[e],this.activate(),c.call(e,\"mat\")?this._gl[r](o,!1,n):this._gl[r](o,n),null},i.prototype.set_attribute=function(t,e,n,a,s){var i,r,o,l,_,h,c,f;if(a=void 0===a?0:a,s=void 0===s?0:s,!y(this._linked))throw(r=new Error(\"RuntimeError:Cannot set attribute when program has no code\")).name=\"RuntimeError\",r;return h=n instanceof d,_=w.call(this.locations,t,-1),y(_<0)?g(t,this._known_invalid)||(b.call(this._known_invalid,t),y(h)&&y(0<s)||u.log(\"Variable \"+t+\" is not an active attribute\")):(g(t,this._unset_variables)&&P.call(this._unset_variables,t),this.activate(),y(h)?(f=this.ATYPEINFO[e],c=f[0],l=f[1],o=\"vertexAttribPointer\",i=[c,l,this._gl.FALSE,a,s],this._attributes[t]=[n.handle,_,o,i]):(o=this.ATYPEMAP[e],this._attributes[t]=[0,_,o,n])),null},i.prototype._pre_draw=function(){var t,e,n,a,s,i,r,o,l,_,h,c;for(c in this.activate(),r=this._samplers)r.hasOwnProperty(c)&&(c=r[c],l=(i=c)[0],o=i[1],_=i[2],this._gl.activeTexture(x(this._gl.TEXTURE0,_)),this._gl.bindTexture(l,o));for(c in s=this._attributes)s.hasOwnProperty(c)&&(c=s[c],h=(a=c)[0],e=a[1],n=a[2],t=a[3],y(h)?(this._gl.bindBuffer(this._gl.ARRAY_BUFFER,h),this._gl.enableVertexAttribArray(e)):(this._gl.bindBuffer(this._gl.ARRAY_BUFFER,null),this._gl.disableVertexAttribArray(e)),this._gl[n].apply(this._gl,[].concat([e],t)));return y(this._validated)||(this._validated=!0,this._validate()),null},i.prototype._validate=function(){var t;if(this._unset_variables.length&&u.log(\"Program has unset variables: \"+this._unset_variables),this._gl.validateProgram(this.handle),!y(this._gl.getProgramParameter(this.handle,this._gl.VALIDATE_STATUS)))throw u.log(this._gl.getProgramInfoLog(this.handle)),(t=new Error(\"RuntimeError:Program validation error\")).name=\"RuntimeError\",t;return null},i.prototype.draw=function(t,e){var n,a,s,i,r;if(!y(this._linked))throw(a=new Error(\"RuntimeError:Cannot draw program if code has not been set\")).name=\"RuntimeError\",a;return l(this._gl,\"before draw\"),y(e instanceof o)?(this._pre_draw(),e.activate(),n=e._buffer_size/2,i=this._gl.UNSIGNED_SHORT,this._gl.drawElements(t,n,i,0),e.deactivate()):(s=(r=e)[0],n=r[1],y(n)&&(this._pre_draw(),this._gl.drawArrays(t,s,n))),l(this._gl,\"after draw\"),null},((a=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,a.prototype._class_name=\"Buffer\",a.prototype._target=null,a.prototype._usage=35048,a.prototype._create=function(){return this.handle=this._gl.createBuffer(),this._buffer_size=0,null},a.prototype.delete=function(){return this._gl.deleteBuffer(this.handle),null},a.prototype.activate=function(){return this._gl.bindBuffer(this._target,this.handle),null},a.prototype.deactivate=function(){return this._gl.bindBuffer(this._target,null),null},a.prototype.set_size=function(t){return v(t,this._buffer_size)||(this.activate(),this._gl.bufferData(this._target,t,this._usage),this._buffer_size=t),null},a.prototype.set_data=function(t,e){return this.activate(),this._gl.bufferSubData(this._target,t,e),null},(d=function(){_(this,arguments)}).prototype=Object.create(a.prototype),d.prototype._base_class=a.prototype,d.prototype._class_name=\"VertexBuffer\",d.prototype._target=34962,(o=function(){_(this,arguments)}).prototype=Object.create(a.prototype),o.prototype._base_class=a.prototype,o.prototype._class_name=\"IndexBuffer\",o.prototype._target=34963,((r=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,r.prototype._class_name=\"Texture2D\",r.prototype._target=3553,r.prototype._types={Int8Array:5120,Uint8Array:5121,Int16Array:5122,Uint16Array:5123,Int32Array:5124,Uint32Array:5125,Float32Array:5126},r.prototype._create=function(){return this.handle=this._gl.createTexture(),this._shape_format=null},r.prototype.delete=function(){return this._gl.deleteTexture(this.handle),null},r.prototype.activate=function(){return this._gl.bindTexture(this._target,this.handle),null},r.prototype.deactivate=function(){return this._gl.bindTexture(this._target,0),null},r.prototype._get_alignment=function(t){var e,n,a;for(\"object\"!=typeof(n=[4,8,2,1])||Array.isArray(n)||(n=Object.keys(n)),a=0;a<n.length;a+=1)if(e=n[a],v(t%e,0))return e;return null},r.prototype.set_wrapping=function(t,e){return this.activate(),this._gl.texParameterf(this._target,this._gl.TEXTURE_WRAP_S,t),this._gl.texParameterf(this._target,this._gl.TEXTURE_WRAP_T,e),null},r.prototype.set_interpolation=function(t,e){return this.activate(),this._gl.texParameterf(this._target,this._gl.TEXTURE_MIN_FILTER,t),this._gl.texParameterf(this._target,this._gl.TEXTURE_MAG_FILTER,e),null},r.prototype.set_size=function(t,e){var n,a,s;return n=(a=t)[0],s=a[1],v([n,s,e],this._shape_format)||(this._shape_format=[n,s,e],this.activate(),this._gl.texImage2D(this._target,0,e,s,n,0,e,this._gl.UNSIGNED_BYTE,null)),this.u_shape=[n,s],null},r.prototype.set_data=function(t,e,n){var a,s,i,r,o,l,_,h,c,f;if(v(e.length,2)&&(e=[e[0],e[1],1]),this.activate(),i=this._shape_format[2],o=(l=e)[0],h=l[1],l[2],f=(_=t)[0],c=_[1],null===(r=w.call(this._types,n.constructor.name,null)))throw(s=new Error(\"ValueError:Type \"+n.constructor.name+\" not allowed for texture\")).name=\"ValueError\",s;return a=this._get_alignment(m(e[e.length-2],e[e.length-1])),v(a,4)||this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,a),this._gl.texSubImage2D(this._target,0,c,f,h,o,i,r,n),v(a,4)||this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,4),null},((p=function(){_(this,arguments)}).prototype=Object.create(r.prototype))._base_class=r.prototype,p.prototype._class_name=\"Texture3DLike\",p.prototype.GLSL_SAMPLE_NEAREST=\"\\n        vec4 sample3D(sampler2D tex, vec3 texcoord, vec3 shape, vec2 tiles) {\\n            shape.xyz = shape.zyx;  // silly row-major convention\\n            float nrows = tiles.y, ncols = tiles.x;\\n            // Don't let adjacent frames be interpolated into this one\\n            texcoord.x = min(texcoord.x * shape.x, shape.x - 0.5);\\n            texcoord.x = max(0.5, texcoord.x) / shape.x;\\n            texcoord.y = min(texcoord.y * shape.y, shape.y - 0.5);\\n            texcoord.y = max(0.5, texcoord.y) / shape.y;\\n\\n            float zindex = floor(texcoord.z * shape.z);\\n\\n            // Do a lookup in the 2D texture\\n            float u = (mod(zindex, ncols) + texcoord.x) / ncols;\\n            float v = (floor(zindex / ncols) + texcoord.y) / nrows;\\n\\n            return texture2D(tex, vec2(u,v));\\n        }\\n    \",p.prototype.GLSL_SAMPLE_LINEAR=\"\\n        vec4 sample3D(sampler2D tex, vec3 texcoord, vec3 shape, vec2 tiles) {\\n            shape.xyz = shape.zyx;  // silly row-major convention\\n            float nrows = tiles.y, ncols = tiles.x;\\n            // Don't let adjacent frames be interpolated into this one\\n            texcoord.x = min(texcoord.x * shape.x, shape.x - 0.5);\\n            texcoord.x = max(0.5, texcoord.x) / shape.x;\\n            texcoord.y = min(texcoord.y * shape.y, shape.y - 0.5);\\n            texcoord.y = max(0.5, texcoord.y) / shape.y;\\n\\n            float z = texcoord.z * shape.z;\\n            float zindex1 = floor(z);\\n            float u1 = (mod(zindex1, ncols) + texcoord.x) / ncols;\\n            float v1 = (floor(zindex1 / ncols) + texcoord.y) / nrows;\\n\\n            float zindex2 = zindex1 + 1.0;\\n            float u2 = (mod(zindex2, ncols) + texcoord.x) / ncols;\\n            float v2 = (floor(zindex2 / ncols) + texcoord.y) / nrows;\\n\\n            vec4 s1 = texture2D(tex, vec2(u1, v1));\\n            vec4 s2 = texture2D(tex, vec2(u2, v2));\\n\\n            return s1 * (zindex2 - z) + s2 * (z - zindex1);\\n        }\\n    \",p.prototype._get_tile_info=function(t){var e,n,a,s;if(n=this._gl.getParameter(this._gl.MAX_TEXTURE_SIZE),s=Math.floor(n/t[1]),s=Math.min(s,t[0]),a=window.Math.ceil(t[0]/s),y(m(a,t[2])>n))throw(e=new Error(\"RuntimeError:Cannot fit 3D data with shape \"+t+\" onto simulated 2D texture.\")).name=\"RuntimeError\",e;return[s,a]},p.prototype.set_size=function(t,e){var n,a,s,i;return i=this._get_tile_info(t),a=i[0],n=i[1],s=[m(t[1],a),m(t[2],n)],p.prototype._base_class.set_size.call(this,s,e),this.u_shape=[t[0],t[1],t[2]],this.u_tiles=[n,a],null},p.prototype.set_data=function(s,t,e){var n,a,i,r,o,l,_,h,c,f,d,u,g;if(v(t.length,3)&&(t=[t[0],t[1],t[2],1]),!function(t){for(var e=0;e<t.length;e++)if(!y(t[e]))return!1;return!0}(function(){var t,e,n,a=[];for(\"object\"!=typeof(e=s)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(v(t,0));return a}.apply(this)))throw(r=new Error(\"ValueError:Texture3DLike does not support nonzero offset (for now)\")).name=\"ValueError\",r;if(c=this._get_tile_info(t),l=c[0],o=c[1],h=[m(t[1],l),m(t[2],o),t[3]],v(o,1))p.prototype._base_class.set_data.call(this,[0,0],h,e);else for(n=e.constructor,g=new n(m(m(h[0],h[1]),h[2])),p.prototype._base_class.set_data.call(this,[0,0],h,g),u=0;u<t[0];u+=1)f=[Math.floor(u/o),u%o],_=f[0],a=f[1],i=Math.floor(e.length/t[0]),d=e.slice(m(u,i),m(u+1,i)),p.prototype._base_class.set_data.call(this,[m(_,t[1]),m(a,t[2])],t.slice(1),d);return null},e.exports={Buffer:a,GlooObject:s,IndexBuffer:o,Program:i,Texture2D:r,Texture3DLike:p,VertexBuffer:d,check_error:l,console:u}}})}(this);\n",
2132
+       "      //# sourceMappingURL=bokeh-gl.min.js.map\n",
2133
+       "      /* END bokeh-gl.min.js */\n",
2134
+       "    },\n",
2135
+       "    \n",
2136
+       "    function(Bokeh) {\n",
2137
+       "      Bokeh.set_log_level(\"info\");\n",
2138
+       "    },\n",
2139
+       "    \n",
2140
+       "    function(Bokeh) {\n",
2141
+       "      \n",
2142
+       "    },\n",
2143
+       "    function(Bokeh) {\n",
2144
+       "      console.log(\"Bokeh: injecting raw CSS\");\n",
2145
+       "      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh.min.css */\\n.bk-root{font-family:\\\"Helvetica Neue\\\",Helvetica,Arial,sans-serif;font-size:10pt;position:relative;width:auto;height:auto}.bk-root .bk-shading{position:absolute;display:block;border:1px dashed green}.bk-root .bk-tile-attribution a{color:black}.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,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH4gEMEgswOmEYWAAABddJREFUWMO9l09oXNcVxn/n3vc0fzRjj2RHyIZ6ERuy6CarxJtS0pQSCsXNpqGFWK5tTHAwyqIGN7VdEts1LV04BEoxdlJnUbfNogtDCYWQRZOSxtAUCoFiJY0pWJVUjeTKM9LMe+9+Xcyb8ZMychuofeHCffeee7/vnXvOuefYlV/+mv932//tb91z/Y2rvxmMHQ+4FcEfOIGN4A+UwDDwoQScc7vM7AIwB8yZ2QXn3K77Ab6OgJnVgeOSbkqaBiaACUnTkm4Cx3OZzwf+qzcRQup1zNZ9RwDe+0YI4YKZTUn6zCGSMLOfAF/03r+QZdnyfwO+ePEiI6N1nPMgMDMkETLRbd2mXG8gCbd9YiIKIUxLKoLfBN7I+80+CUlTIYTp7RMT0b3Af37p8kh5y9gZcy4Fzt+5szqSaxkzUR7dwtrKMmaGW242d0t6vrD/He/90865o865o977p4F3Ctp4frnZ3L0Z+OryUrVSrZ0z8ZxhHjhcq1XPrS43q/0flDlK9XpPA2ma7gMeyvfPx3H8TJZlH4YQWiGEVpZlH8Zx/Awwn8s8lKbpvmq1ahvB641SXNk6dhLskNA2MIBtwKHK1vGTW8bKMRbAMgyPqWeETxUM8VSSJAv52JmZA0iSZMHMThWwnipXKp8hsLLcSaIR92oU8xjSayCQXotiHotG3Ku3m+0EOQwPQCDggMf7BzQajSs5eAk4B5zLx4O1vD2eJMmAQKliscgASJMw21pansFs1swQ/DNLmUmTMNuXX+taXHTDaj5OW612R1JZ0nFJJ/J+XFJ5aWmpA6S5bHV8fHsPHFU6q3pJCjtFxtrKMuXRLUUXXxdrRLazFOtUolZlsGhmACsgnHPTwJnCnjP5HMBKLotzxsTE9rgDL0t6LoriKsDIaB31ZEK+JxQJRHFUBR2NqLw8OTkZR0OC0ntm9k1JWU7OA4vD/mZ+YfElsANmNEKi75vztzB5M8uAr+bx48me88g757PQ1U5zNg52YH7hX8l6f+4Fi3c3BqHNmkI4YQOV2MGCNu9qHPYCewfzbrC+XSGcWEcgTRKA3wFfyzdDz5d+D3x9CIcfA4eBbQS9LscskgfLnHNPAnslvS/pbZDHLLPADpx9N9fqpSIBH8cxWZY9m6bpb4Ev5fN/iKLo2TRNgdx/eo8Wk5O7Ts/N/SOSdMjHdj4kmgkIEJLJzPZKetvMTkIvFLsR25Ml2gfuF5M7vnA66sdooJYkCSGERe/9VAjhzRxoKk3Tvg3U8nulVqvx8cyNpER2umM+SdOkbc5B8JhpqBdIgTRR24h+lpKen731aRIN7thscH9Zlv0d2F8YD2TIX7F2uw3A7ZWV1a0TYz9ca8cJZHRbuRuaDfUCw9/qJHamPOKToAwHtHN6lMvlSkH2o7wDMDo6WuGuQbbn5+YAKNcb3J5fSvrhtTY+vsOPuD1IOyRhMOkj9kSx29HfXB5RUnS964NT2+3vbGbxG9auO2cDNuV6A8NTb5TitBuOpQkfYD2vwOxgmvBB2g3Hto5X42EJyVsFlztbKpXGNgqVSqUxSWcLU2+tdToa9hasLjfPYlwGa+bTi8Dl1dvNsyvNtQQL9MO2w+HM7BqwlAtPdrvdq9773WAVsIr3fne3270KTOYyS2Z2bbXdHhogKmPj7YWF+VOSXs/v/9KdO+0fVBrjbRkgB/KIDBnYu9f/7D+ZmfmRxPd6qwB8YmZXcq1MAQ/nJhTM+OnDe/a8+PGNG9lm19V/D1Qw7HXZlcRa69+U6w38l5/4ipxzf5X0CPBILjcGPJH34pVcc8692FxcXLlXRnTwwH7+9P4f8aWe3fY59LIqo1NMyQBCCHNmdgx4BegUWefjDvCKmR0LIcz9L8nokSNH+PRvH4HC3YQ098pSbevg24qlmZmNmtmjkg4D3+j/tZldkvQXSa3PW5ptlpL3ZaIN99OS9F7+IgKUgSyEkNyv2nHT7DZX0dr9rpjua2l2r4rogRAYVqZvnPsPqVnpEXjEaB4AAAAASUVORK5CYII=\\\")}.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-grid-row,.bk-root .bk-grid-column{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap}.bk-root .bk-grid-row>*,.bk-root .bk-grid-column>*{flex-shrink:0;-webkit-flex-shrink:0}.bk-root .bk-grid-row{flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-grid-column{flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-canvas-wrapper{position:relative;font-size:12pt}.bk-root .bk-canvas,.bk-root .bk-canvas-overlays,.bk-root .bk-canvas-events{position:absolute;top:0;left:0;width:100%;height:100%}.bk-root .bk-canvas-map{position:absolute;border:0}.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-notebook{display:inline-block;vertical-align:middle;margin-right:5px}.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-toolbar,.bk-root .bk-toolbar *{box-sizing:border-box;margin:0;padding:0}.bk-root .bk-toolbar-hidden{visibility:hidden;opacity:0;transition:visibility .3s linear,opacity .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;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.bk-root .bk-toolbar .bk-logo{flex-shrink:0;-webkit-flex-shrink:0}.bk-root .bk-toolbar-above,.bk-root .bk-toolbar-below{flex-direction:row;-webkit-flex-direction:row;justify-content:flex-end;-webkit-justify-content:flex-end}.bk-root .bk-toolbar-above .bk-button-bar,.bk-root .bk-toolbar-below .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-toolbar-above .bk-logo,.bk-root .bk-toolbar-below .bk-logo{order:1;-webkit-order:1;margin-left:5px}.bk-root .bk-toolbar-left,.bk-root .bk-toolbar-right{flex-direction:column;-webkit-flex-direction:column;justify-content:flex-start;-webkit-justify-content:flex-start}.bk-root .bk-toolbar-left .bk-button-bar,.bk-root .bk-toolbar-right .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-toolbar-left .bk-logo,.bk-root .bk-toolbar-right .bk-logo{order:0;-webkit-order:0;margin-bottom:5px}.bk-root .bk-toolbar-button{width:30px;height:30px;background-size:60%;background-color:transparent;background-repeat:no-repeat;background-position:center center}.bk-root .bk-toolbar-button:hover{background-color:#f9f9f9}.bk-root .bk-toolbar-button:focus{outline:0}.bk-root .bk-toolbar-button::-moz-focus-inner{border:0}.bk-root .bk-toolbar-above .bk-toolbar-button{border-bottom:2px solid transparent}.bk-root .bk-toolbar-above .bk-toolbar-button.bk-active{border-bottom-color:#26aae1}.bk-root .bk-toolbar-below .bk-toolbar-button{border-top:2px solid transparent}.bk-root .bk-toolbar-below .bk-toolbar-button.bk-active{border-top-color:#26aae1}.bk-root .bk-toolbar-right .bk-toolbar-button{border-left:2px solid transparent}.bk-root .bk-toolbar-right .bk-toolbar-button.bk-active{border-left-color:#26aae1}.bk-root .bk-toolbar-left .bk-toolbar-button{border-right:2px solid transparent}.bk-root .bk-toolbar-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-above .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-below .bk-button-bar+.bk-button-bar:before{height:10px;width:1px}.bk-root .bk-toolbar-left .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-right .bk-button-bar+.bk-button-bar:before{height:1px;width:10px}.bk-root .bk-tooltip{font-family:\\\"HelveticaNeue-Light\\\",\\\"Helvetica Neue Light\\\",\\\"Helvetica Neue\\\",Helvetica,Arial,\\\"Lucida Grande\\\",sans-serif;font-weight:300;font-size:12px;position:absolute;padding:5px;border:1px solid #e5e5e5;color:#2f2f2f;background-color:white;pointer-events:none;opacity:.95}.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:#ddd solid 1px;display:inline-block}.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:0;padding:1px}\\n/* END bokeh.min.css */\");\n",
2146
+       "      console.log(\"Bokeh: injecting raw CSS\");\n",
2147
+       "      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh-widgets.min.css */\\n@charset \\\"UTF-8\\\";.bk-root{/*!\\n * Pikaday\\n * Copyright \\u00a9 2014 David Bushell | BSD & MIT license | http://dbushell.com/\\n */}.bk-root .bk-noUi-target,.bk-root .bk-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 .bk-noUi-target{position:relative;direction:ltr}.bk-root .bk-noUi-base{width:100%;height:100%;position:relative;z-index:1}.bk-root .bk-noUi-connect{position:absolute;right:0;top:0;left:0;bottom:0}.bk-root .bk-noUi-origin{position:absolute;height:0;width:0}.bk-root .bk-noUi-handle{position:relative;z-index:1}.bk-root .bk-noUi-state-tap .bk-noUi-connect,.bk-root .bk-noUi-state-tap .bk-noUi-origin{-webkit-transition:top .3s,right .3s,bottom .3s,left .3s;transition:top .3s,right .3s,bottom .3s,left .3s}.bk-root .bk-noUi-state-drag *{cursor:inherit !important}.bk-root .bk-noUi-base,.bk-root .bk-noUi-handle{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.bk-root .bk-noUi-horizontal{height:18px}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:34px;height:28px;left:-17px;top:-6px}.bk-root .bk-noUi-vertical{width:18px}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:28px;height:34px;left:-6px;top:-17px}.bk-root .bk-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 .bk-noUi-connect{background:#3fb8af;border-radius:4px;box-shadow:inset 0 0 3px rgba(51,51,51,0.45);-webkit-transition:background 450ms;transition:background 450ms}.bk-root .bk-noUi-draggable{cursor:ew-resize}.bk-root .bk-noUi-vertical .bk-noUi-draggable{cursor:ns-resize}.bk-root .bk-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 .bk-noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.bk-root .bk-noUi-handle:before,.bk-root .bk-noUi-handle:after{content:\\\"\\\";display:block;position:absolute;height:14px;width:1px;background:#e8e7e6;left:14px;top:6px}.bk-root .bk-noUi-handle:after{left:17px}.bk-root .bk-noUi-vertical .bk-noUi-handle:before,.bk-root .bk-noUi-vertical .bk-noUi-handle:after{width:14px;height:1px;left:6px;top:14px}.bk-root .bk-noUi-vertical .bk-noUi-handle:after{top:17px}.bk-root [disabled] .bk-noUi-connect{background:#b8b8b8}.bk-root [disabled].bk-noUi-target,.bk-root [disabled].bk-noUi-handle,.bk-root [disabled] .bk-noUi-handle{cursor:not-allowed}.bk-root .bk-noUi-pips,.bk-root .bk-noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box}.bk-root .bk-noUi-pips{position:absolute;color:#999}.bk-root .bk-noUi-value{position:absolute;white-space:nowrap;text-align:center}.bk-root .bk-noUi-value-sub{color:#ccc;font-size:10px}.bk-root .bk-noUi-marker{position:absolute;background:#CCC}.bk-root .bk-noUi-marker-sub{background:#AAA}.bk-root .bk-noUi-marker-large{background:#AAA}.bk-root .bk-noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.bk-root .bk-noUi-value-horizontal{-webkit-transform:translate3d(-50%,50%,0);transform:translate3d(-50%,50%,0)}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker{margin-left:-1px;width:2px;height:5px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-sub{height:10px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-large{height:15px}.bk-root .bk-noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.bk-root .bk-noUi-value-vertical{-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0);padding-left:25px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker{width:5px;height:2px;margin-top:-1px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-sub{width:10px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-large{width:15px}.bk-root .bk-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 .bk-noUi-horizontal .bk-noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.bk-root .bk-noUi-vertical .bk-noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}.bk-root .bk-noUi-handle{cursor:grab;cursor:-webkit-grab}.bk-root .bk-noUi-handle.bk-noUi-active{cursor:grabbing;cursor:-webkit-grabbing}.bk-root .bk-noUi-tooltip{display:none;white-space:nowrap}.bk-root .bk-noUi-handle:hover .bk-noUi-tooltip{display:block}.bk-root .bk-noUi-horizontal{width:100%;height:10px}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:14px;height:18px;left:-7px;top:-5px}.bk-root .bk-noUi-vertical{width:10px;height:100%}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:18px;height:14px;left:-5px;top:-7px}.bk-root .bk-noUi-handle:after,.bk-root .bk-noUi-handle:before{display:none}.bk-root .bk-noUi-connect{box-shadow:none}.bk-root fieldset{padding:0;margin:0;border:0;min-width:0}.bk-root legend{display:block;width:100%;padding:0;margin-bottom:17px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}.bk-root label{display:inline-block;margin-bottom:5px}.bk-root input[type=\\\"search\\\"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bk-root input[type=\\\"radio\\\"],.bk-root input[type=\\\"checkbox\\\"]{margin:4px 0 0;margin-top:1px \\\\9;line-height:normal}.bk-root input[type=\\\"file\\\"]{display:block}.bk-root input[type=\\\"range\\\"]{display:block;width:100%}.bk-root select[multiple],.bk-root select[size]{height:auto}.bk-root input[type=\\\"file\\\"]:focus,.bk-root input[type=\\\"radio\\\"]:focus,.bk-root input[type=\\\"checkbox\\\"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.bk-root output{display:block;padding-top:7px;line-height:1.42857143;color:#555}.bk-root .bk-bs-form-control{display:block;height:31px;padding:0 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px}.bk-root .bk-bs-form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6)}.bk-root .bk-bs-form-control::-moz-placeholder{color:#999;opacity:1}.bk-root .bk-bs-form-control:-ms-input-placeholder{color:#999}.bk-root .bk-bs-form-control::-webkit-input-placeholder{color:#999}.bk-root .bk-bs-form-control[disabled],.bk-root .bk-bs-form-control[readonly],fieldset[disabled] .bk-root .bk-bs-form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.bk-root .bk-bs-form-control{height:auto}.bk-root input[type=\\\"search\\\"]{-webkit-appearance:none}.bk-root input[type=\\\"date\\\"]{line-height:31px}.bk-root .bk-bs-form-group{margin-bottom:15px}.bk-root .bk-bs-radio,.bk-root .bk-bs-checkbox{display:block;min-height:17px;margin-top:10px;margin-bottom:10px;padding-left:20px}.bk-root .bk-bs-radio label,.bk-root .bk-bs-checkbox label{display:inline;font-weight:normal;cursor:pointer}.bk-root .bk-bs-radio input[type=\\\"radio\\\"],.bk-root .bk-bs-radio-inline input[type=\\\"radio\\\"],.bk-root .bk-bs-checkbox input[type=\\\"checkbox\\\"],.bk-root .bk-bs-checkbox-inline input[type=\\\"checkbox\\\"]{float:left;margin-left:-20px}.bk-root .bk-bs-radio+.bk-bs-radio,.bk-root .bk-bs-checkbox+.bk-bs-checkbox{margin-top:-5px}.bk-root .bk-bs-radio-inline,.bk-root .bk-bs-checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.bk-root .bk-bs-radio-inline+.bk-bs-radio-inline,.bk-root .bk-bs-checkbox-inline+.bk-bs-checkbox-inline{margin-top:0;margin-left:10px}.bk-root input[type=\\\"radio\\\"][disabled],.bk-root input[type=\\\"checkbox\\\"][disabled],.bk-root .bk-bs-radio[disabled],.bk-root .bk-bs-radio-inline[disabled],.bk-root .bk-bs-checkbox[disabled],.bk-root .bk-bs-checkbox-inline[disabled],fieldset[disabled] .bk-root input[type=\\\"radio\\\"],fieldset[disabled] .bk-root input[type=\\\"checkbox\\\"],fieldset[disabled] .bk-root .bk-bs-radio,fieldset[disabled] .bk-root .bk-bs-radio-inline,fieldset[disabled] .bk-root .bk-bs-checkbox,fieldset[disabled] .bk-root .bk-bs-checkbox-inline{cursor:not-allowed}.bk-root .bk-bs-input-sm{height:28px;padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}select.bk-root .bk-bs-input-sm{height:28px;line-height:28px}textarea.bk-root .bk-bs-input-sm,select[multiple].bk-root .bk-bs-input-sm{height:auto}.bk-root .bk-bs-input-lg{height:42px;padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}select.bk-root .bk-bs-input-lg{height:42px;line-height:42px}textarea.bk-root .bk-bs-input-lg,select[multiple].bk-root .bk-bs-input-lg{height:auto}.bk-root .bk-bs-has-feedback{position:relative}.bk-root .bk-bs-has-feedback .bk-bs-form-control{padding-right:38.75px}.bk-root .bk-bs-has-feedback .bk-bs-form-control-feedback{position:absolute;top:22px;right:0;display:block;width:31px;height:31px;line-height:31px;text-align:center}.bk-root .bk-bs-has-success .bk-bs-help-block,.bk-root .bk-bs-has-success .bk-bs-control-label,.bk-root .bk-bs-has-success .bk-bs-radio,.bk-root .bk-bs-has-success .bk-bs-checkbox,.bk-root .bk-bs-has-success .bk-bs-radio-inline,.bk-root .bk-bs-has-success .bk-bs-checkbox-inline{color:#3c763d}.bk-root .bk-bs-has-success .bk-bs-form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-success .bk-bs-form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.bk-root .bk-bs-has-success .bk-bs-input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.bk-root .bk-bs-has-success .bk-bs-form-control-feedback{color:#3c763d}.bk-root .bk-bs-has-warning .bk-bs-help-block,.bk-root .bk-bs-has-warning .bk-bs-control-label,.bk-root .bk-bs-has-warning .bk-bs-radio,.bk-root .bk-bs-has-warning .bk-bs-checkbox,.bk-root .bk-bs-has-warning .bk-bs-radio-inline,.bk-root .bk-bs-has-warning .bk-bs-checkbox-inline{color:#8a6d3b}.bk-root .bk-bs-has-warning .bk-bs-form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-warning .bk-bs-form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.bk-root .bk-bs-has-warning .bk-bs-input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.bk-root .bk-bs-has-warning .bk-bs-form-control-feedback{color:#8a6d3b}.bk-root .bk-bs-has-error .bk-bs-help-block,.bk-root .bk-bs-has-error .bk-bs-control-label,.bk-root .bk-bs-has-error .bk-bs-radio,.bk-root .bk-bs-has-error .bk-bs-checkbox,.bk-root .bk-bs-has-error .bk-bs-radio-inline,.bk-root .bk-bs-has-error .bk-bs-checkbox-inline{color:#a94442}.bk-root .bk-bs-has-error .bk-bs-form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-error .bk-bs-form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.bk-root .bk-bs-has-error .bk-bs-input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.bk-root .bk-bs-has-error .bk-bs-form-control-feedback{color:#a94442}.bk-root .bk-bs-form-control-static{margin-bottom:0}.bk-root .bk-bs-help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.bk-root .bk-bs-form-inline .bk-bs-form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-form-control{display:inline-block;width:auto;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-input-group>.bk-bs-form-control{width:100%}.bk-root .bk-bs-form-inline .bk-bs-control-label{margin-bottom:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-radio,.bk-root .bk-bs-form-inline .bk-bs-checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-radio input[type=\\\"radio\\\"],.bk-root .bk-bs-form-inline .bk-bs-checkbox input[type=\\\"checkbox\\\"]{float:none;margin-left:0}.bk-root .bk-bs-form-inline .bk-bs-has-feedback .bk-bs-form-control-feedback{top:0}}.bk-root .bk-bs-form-horizontal .bk-bs-control-label,.bk-root .bk-bs-form-horizontal .bk-bs-radio,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox,.bk-root .bk-bs-form-horizontal .bk-bs-radio-inline,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.bk-root .bk-bs-form-horizontal .bk-bs-radio,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox{min-height:24px}.bk-root .bk-bs-form-horizontal .bk-bs-form-group{margin-left:-15px;margin-right:-15px}.bk-root .bk-bs-form-horizontal .bk-bs-form-control-static{padding-top:7px}@media(min-width:768px){.bk-root .bk-bs-form-horizontal .bk-bs-control-label{text-align:right}}.bk-root .bk-bs-form-horizontal .bk-bs-has-feedback .bk-bs-form-control-feedback{top:0;right:15px}.bk-root .bk-bs-btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:12px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bk-root .bk-bs-btn:focus,.bk-root .bk-bs-btn:active:focus,.bk-root .bk-bs-btn.bk-bs-active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.bk-root .bk-bs-btn:hover,.bk-root .bk-bs-btn:focus{color:#333;text-decoration:none}.bk-root .bk-bs-btn:active,.bk-root .bk-bs-btn.bk-bs-active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.bk-root .bk-bs-btn.bk-bs-disabled,.bk-root .bk-bs-btn[disabled],fieldset[disabled] .bk-root .bk-bs-btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn-default{color:#333;background-color:#fff;border-color:#ccc}.bk-root .bk-bs-btn-default:hover,.bk-root .bk-bs-btn-default:focus,.bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-default{background-image:none}.bk-root .bk-bs-btn-default.bk-bs-disabled,.bk-root .bk-bs-btn-default[disabled],fieldset[disabled] .bk-root .bk-bs-btn-default,.bk-root .bk-bs-btn-default.bk-bs-disabled:hover,.bk-root .bk-bs-btn-default[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-default:hover,.bk-root .bk-bs-btn-default.bk-bs-disabled:focus,.bk-root .bk-bs-btn-default[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-default:focus,.bk-root .bk-bs-btn-default.bk-bs-disabled:active,.bk-root .bk-bs-btn-default[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-default[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-default.bk-bs-active{background-color:#fff;border-color:#ccc}.bk-root .bk-bs-btn-default .bk-bs-badge{color:#fff;background-color:#333}.bk-root .bk-bs-btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.bk-root .bk-bs-btn-primary:hover,.bk-root .bk-bs-btn-primary:focus,.bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-primary{background-image:none}.bk-root .bk-bs-btn-primary.bk-bs-disabled,.bk-root .bk-bs-btn-primary[disabled],fieldset[disabled] .bk-root .bk-bs-btn-primary,.bk-root .bk-bs-btn-primary.bk-bs-disabled:hover,.bk-root .bk-bs-btn-primary[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-primary:hover,.bk-root .bk-bs-btn-primary.bk-bs-disabled:focus,.bk-root .bk-bs-btn-primary[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-primary:focus,.bk-root .bk-bs-btn-primary.bk-bs-disabled:active,.bk-root .bk-bs-btn-primary[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-primary[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-primary.bk-bs-active{background-color:#428bca;border-color:#357ebd}.bk-root .bk-bs-btn-primary .bk-bs-badge{color:#428bca;background-color:#fff}.bk-root .bk-bs-btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.bk-root .bk-bs-btn-success:hover,.bk-root .bk-bs-btn-success:focus,.bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-success{color:#fff;background-color:#47a447;border-color:#398439}.bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-success{background-image:none}.bk-root .bk-bs-btn-success.bk-bs-disabled,.bk-root .bk-bs-btn-success[disabled],fieldset[disabled] .bk-root .bk-bs-btn-success,.bk-root .bk-bs-btn-success.bk-bs-disabled:hover,.bk-root .bk-bs-btn-success[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-success:hover,.bk-root .bk-bs-btn-success.bk-bs-disabled:focus,.bk-root .bk-bs-btn-success[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-success:focus,.bk-root .bk-bs-btn-success.bk-bs-disabled:active,.bk-root .bk-bs-btn-success[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-success[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-success.bk-bs-active{background-color:#5cb85c;border-color:#4cae4c}.bk-root .bk-bs-btn-success .bk-bs-badge{color:#5cb85c;background-color:#fff}.bk-root .bk-bs-btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.bk-root .bk-bs-btn-info:hover,.bk-root .bk-bs-btn-info:focus,.bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-info{background-image:none}.bk-root .bk-bs-btn-info.bk-bs-disabled,.bk-root .bk-bs-btn-info[disabled],fieldset[disabled] .bk-root .bk-bs-btn-info,.bk-root .bk-bs-btn-info.bk-bs-disabled:hover,.bk-root .bk-bs-btn-info[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-info:hover,.bk-root .bk-bs-btn-info.bk-bs-disabled:focus,.bk-root .bk-bs-btn-info[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-info:focus,.bk-root .bk-bs-btn-info.bk-bs-disabled:active,.bk-root .bk-bs-btn-info[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-info[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-info.bk-bs-active{background-color:#5bc0de;border-color:#46b8da}.bk-root .bk-bs-btn-info .bk-bs-badge{color:#5bc0de;background-color:#fff}.bk-root .bk-bs-btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.bk-root .bk-bs-btn-warning:hover,.bk-root .bk-bs-btn-warning:focus,.bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-warning{background-image:none}.bk-root .bk-bs-btn-warning.bk-bs-disabled,.bk-root .bk-bs-btn-warning[disabled],fieldset[disabled] .bk-root .bk-bs-btn-warning,.bk-root .bk-bs-btn-warning.bk-bs-disabled:hover,.bk-root .bk-bs-btn-warning[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-warning:hover,.bk-root .bk-bs-btn-warning.bk-bs-disabled:focus,.bk-root .bk-bs-btn-warning[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-warning:focus,.bk-root .bk-bs-btn-warning.bk-bs-disabled:active,.bk-root .bk-bs-btn-warning[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-warning[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-warning.bk-bs-active{background-color:#f0ad4e;border-color:#eea236}.bk-root .bk-bs-btn-warning .bk-bs-badge{color:#f0ad4e;background-color:#fff}.bk-root .bk-bs-btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.bk-root .bk-bs-btn-danger:hover,.bk-root .bk-bs-btn-danger:focus,.bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-danger{background-image:none}.bk-root .bk-bs-btn-danger.bk-bs-disabled,.bk-root .bk-bs-btn-danger[disabled],fieldset[disabled] .bk-root .bk-bs-btn-danger,.bk-root .bk-bs-btn-danger.bk-bs-disabled:hover,.bk-root .bk-bs-btn-danger[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-danger:hover,.bk-root .bk-bs-btn-danger.bk-bs-disabled:focus,.bk-root .bk-bs-btn-danger[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-danger:focus,.bk-root .bk-bs-btn-danger.bk-bs-disabled:active,.bk-root .bk-bs-btn-danger[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-danger[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-danger.bk-bs-active{background-color:#d9534f;border-color:#d43f3a}.bk-root .bk-bs-btn-danger .bk-bs-badge{color:#d9534f;background-color:#fff}.bk-root .bk-bs-btn-link{color:#428bca;font-weight:normal;cursor:pointer;border-radius:0}.bk-root .bk-bs-btn-link,.bk-root .bk-bs-btn-link:active,.bk-root .bk-bs-btn-link[disabled],fieldset[disabled] .bk-root .bk-bs-btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn-link,.bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link:focus,.bk-root .bk-bs-btn-link:active{border-color:transparent}.bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.bk-root .bk-bs-btn-link[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-link:focus{color:#999;text-decoration:none}.bk-root .bk-bs-btn-lg{padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}.bk-root .bk-bs-btn-sm{padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}.bk-root .bk-bs-btn-xs{padding:1px 5px;font-size:11px;line-height:1.5;border-radius:3px}.bk-root .bk-bs-btn-block{display:block;width:100%;padding-left:0;padding-right:0}.bk-root .bk-bs-btn-block+.bk-bs-btn-block{margin-top:5px}.bk-root input[type=\\\"submit\\\"].bk-bs-btn-block,.bk-root input[type=\\\"reset\\\"].bk-bs-btn-block,.bk-root input[type=\\\"button\\\"].bk-bs-btn-block{width:100%}.bk-root .bk-bs-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.bk-root .bk-bs-dropdown{position:relative}.bk-root .bk-bs-dropdown-toggle:focus{outline:0}.bk-root .bk-bs-dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:12px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.bk-root .bk-bs-dropdown-menu.bk-bs-pull-right{right:0;left:auto}.bk-root .bk-bs-dropdown-menu .bk-bs-divider{height:1px;margin:7.5px 0;overflow:hidden;background-color:#e5e5e5}.bk-root .bk-bs-dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.42857143;color:#333;white-space:nowrap}.bk-root .bk-bs-dropdown-menu>li>a:hover,.bk-root .bk-bs-dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a,.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#428bca}.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:focus{color:#999}.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.bk-bs-Microsoft.bk-bs-gradient(enabled = false);cursor:not-allowed}.bk-root .bk-bs-open>.bk-bs-dropdown-menu{display:block}.bk-root .bk-bs-open>a{outline:0}.bk-root .bk-bs-dropdown-menu-right{left:auto;right:0}.bk-root .bk-bs-dropdown-menu-left{left:0;right:auto}.bk-root .bk-bs-dropdown-header{display:block;padding:3px 20px;font-size:11px;line-height:1.42857143;color:#999}.bk-root .bk-bs-dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.bk-root .bk-bs-pull-right>.bk-bs-dropdown-menu{right:0;left:auto}.bk-root .bk-bs-dropup .bk-bs-caret,.bk-root .bk-bs-navbar-fixed-bottom .bk-bs-dropdown .bk-bs-caret{border-top:0;border-bottom:4px solid;content:\\\"\\\"}.bk-root .bk-bs-dropup .bk-bs-dropdown-menu,.bk-root .bk-bs-navbar-fixed-bottom .bk-bs-dropdown .bk-bs-dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.bk-root .bk-bs-navbar-right .bk-bs-dropdown-menu{left:auto;right:0}.bk-root .bk-bs-navbar-right .bk-bs-dropdown-menu-left{left:0;right:auto}}.bk-root .bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.bk-root .bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn{position:relative;float:left}.bk-root .bk-bs-btn-group>.bk-bs-btn:hover,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:hover,.bk-root .bk-bs-btn-group>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group>.bk-bs-btn:active,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:active,.bk-root .bk-bs-btn-group>.bk-bs-btn.bk-bs-active,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn.bk-bs-active{z-index:2}.bk-root .bk-bs-btn-group>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:focus{outline:0}.bk-root .bk-bs-btn-group .bk-bs-btn+.bk-bs-btn,.bk-root .bk-bs-btn-group .bk-bs-btn+.bk-bs-btn-group,.bk-root .bk-bs-btn-group .bk-bs-btn-group+.bk-bs-btn,.bk-root .bk-bs-btn-group .bk-bs-btn-group+.bk-bs-btn-group{margin-left:-1px}.bk-root .bk-bs-btn-toolbar{margin-left:-5px}.bk-root .bk-bs-btn-toolbar .bk-bs-btn-group,.bk-root .bk-bs-btn-toolbar .bk-bs-input-group{float:left}.bk-root .bk-bs-btn-toolbar>.bk-bs-btn,.bk-root .bk-bs-btn-toolbar>.bk-bs-btn-group,.bk-root .bk-bs-btn-toolbar>.bk-bs-input-group{margin-left:5px}.bk-root .bk-bs-btn-group>.bk-bs-btn:not(:first-child):not(:last-child):not(.bk-bs-dropdown-toggle){border-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:first-child{margin-left:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:first-child:not(:last-child):not(.bk-bs-dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:last-child:not(:first-child),.bk-root .bk-bs-btn-group>.bk-bs-dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group{float:left}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:not(:first-child):not(:last-child)>.bk-bs-btn{border-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:first-child>.bk-bs-btn:last-child,.bk-root .bk-bs-btn-group>.bk-bs-btn-group:first-child>.bk-bs-dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:last-child>.bk-bs-btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group .bk-bs-dropdown-toggle:active,.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle{outline:0}.bk-root .bk-bs-btn-group>.bk-bs-btn+.bk-bs-dropdown-toggle{padding-left:8px;padding-right:8px}.bk-root .bk-bs-btn-group>.bk-bs-btn-lg+.bk-bs-dropdown-toggle{padding-left:12px;padding-right:12px}.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle.bk-bs-btn-link{-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn .bk-bs-caret{margin-left:0}.bk-root .bk-bs-btn-lg .bk-bs-caret{border-width:5px 5px 0;border-bottom-width:0}.bk-root .bk-bs-dropup .bk-bs-btn-lg .bk-bs-caret{border-width:0 5px 5px}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group>.bk-bs-btn{display:block;float:none;width:100%;max-width:100%}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group>.bk-bs-btn{float:none}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn+.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn+.bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group+.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group+.bk-bs-btn-group{margin-top:-1px;margin-left:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:not(:first-child):not(:last-child){border-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:not(:first-child):not(:last-child)>.bk-bs-btn{border-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:first-child:not(:last-child)>.bk-bs-btn:last-child,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:first-child:not(:last-child)>.bk-bs-dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:last-child:not(:first-child)>.bk-bs-btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.bk-root .bk-bs-btn-group-justified>.bk-bs-btn,.bk-root .bk-bs-btn-group-justified>.bk-bs-btn-group{float:none;display:table-cell;width:1%}.bk-root .bk-bs-btn-group-justified>.bk-bs-btn-group .bk-bs-btn{width:100%}.bk-root .bk-bs-btn-group>.bk-bs-btn>input[type=\\\"radio\\\"],.bk-root .bk-bs-btn-group>.bk-bs-btn>input[type=\\\"checkbox\\\"]{display:none}.bk-root .bk-bs-input-group{position:relative;display:table;border-collapse:separate}.bk-root .bk-bs-input-group[class*=\\\"col-\\\"]{float:none;padding-left:0;padding-right:0}.bk-root .bk-bs-input-group .bk-bs-form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:42px;padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}select.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,select.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,select.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:42px;line-height:42px}textarea.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,textarea.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,textarea.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-form-control,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:auto}.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:28px;padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}select.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,select.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,select.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:28px;line-height:28px}textarea.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,textarea.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,textarea.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-form-control,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:auto}.bk-root .bk-bs-input-group-addon,.bk-root .bk-bs-input-group-btn,.bk-root .bk-bs-input-group .bk-bs-form-control{display:table-cell}.bk-root .bk-bs-input-group-addon:not(:first-child):not(:last-child),.bk-root .bk-bs-input-group-btn:not(:first-child):not(:last-child),.bk-root .bk-bs-input-group .bk-bs-form-control:not(:first-child):not(:last-child){border-radius:0}.bk-root .bk-bs-input-group-addon,.bk-root .bk-bs-input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.bk-root .bk-bs-input-group-addon{padding:6px 12px;font-size:12px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.bk-root .bk-bs-input-group-addon.bk-bs-input-sm{padding:5px 10px;font-size:11px;border-radius:3px}.bk-root .bk-bs-input-group-addon.bk-bs-input-lg{padding:10px 16px;font-size:15px;border-radius:6px}.bk-root .bk-bs-input-group-addon input[type=\\\"radio\\\"],.bk-root .bk-bs-input-group-addon input[type=\\\"checkbox\\\"]{margin-top:0}.bk-root .bk-bs-input-group .bk-bs-form-control:first-child,.bk-root .bk-bs-input-group-addon:first-child,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-dropdown-toggle,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn:not(:last-child):not(.bk-bs-dropdown-toggle),.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group:not(:last-child)>.bk-bs-btn{border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-input-group-addon:first-child{border-right:0}.bk-root .bk-bs-input-group .bk-bs-form-control:last-child,.bk-root .bk-bs-input-group-addon:last-child,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-dropdown-toggle,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn:not(:first-child),.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group:not(:first-child)>.bk-bs-btn{border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-input-group-addon:last-child{border-left:0}.bk-root .bk-bs-input-group-btn{position:relative;font-size:0;white-space:nowrap}.bk-root .bk-bs-input-group-btn>.bk-bs-btn{position:relative}.bk-root .bk-bs-input-group-btn>.bk-bs-btn+.bk-bs-btn{margin-left:-1px}.bk-root .bk-bs-input-group-btn>.bk-bs-btn:hover,.bk-root .bk-bs-input-group-btn>.bk-bs-btn:focus,.bk-root .bk-bs-input-group-btn>.bk-bs-btn:active{z-index:2}.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group{margin-right:-1px}.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group{margin-left:-1px}.bk-root .bk-bs-nav{margin-bottom:0;padding-left:0;list-style:none}.bk-root .bk-bs-nav>li{position:relative;display:block}.bk-root .bk-bs-nav>li>span{position:relative;display:block;padding:10px 15px}.bk-root .bk-bs-nav>li>span:hover,.bk-root .bk-bs-nav>li>span:focus{text-decoration:none;background-color:#eee}.bk-root .bk-bs-nav>li.bk-bs-disabled>span{color:#999}.bk-root .bk-bs-nav>li.bk-bs-disabled>span:hover,.bk-root .bk-bs-nav>li.bk-bs-disabled>span:focus{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.bk-root .bk-bs-nav-tabs{border-bottom:1px solid #ddd}.bk-root .bk-bs-nav-tabs>li{float:left;margin-bottom:-1px}.bk-root .bk-bs-nav-tabs>li>span{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.bk-root .bk-bs-nav-tabs>li>span:hover{border-color:#eee #eee #ddd;cursor:pointer}.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span,.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span:hover,.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.bk-root .bk-bs-tab-content>.bk-bs-tab-pane{display:none}.bk-root .bk-bs-tab-content>.bk-bs-active{display:block}.bk-root .pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:\\\"Helvetica Neue\\\",Helvetica,Arial,sans-serif}.bk-root .pika-single:before,.bk-root .pika-single:after{content:\\\" \\\";display:table}.bk-root .pika-single:after{clear:both}.bk-root .pika-single{*zoom:1}.bk-root .pika-single.is-hidden{display:none}.bk-root .pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,0.5)}.bk-root .pika-lendar{float:left;width:240px;margin:8px}.bk-root .pika-title{position:relative;text-align:center}.bk-root .pika-label{display:inline-block;*display:inline;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:bold;background-color:#fff}.bk-root .pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;filter:alpha(opacity=0);opacity:0}.bk-root .pika-prev,.bk-root .pika-next{display:block;cursor:pointer;position:relative;outline:0;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5;*position:absolute;*top:0}.bk-root .pika-prev:hover,.bk-root .pika-next:hover{opacity:1}.bk-root .pika-prev,.bk-root .is-rtl .pika-next{float:left;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');*left:0}.bk-root .pika-next,.bk-root .is-rtl .pika-prev{float:right;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');*right:0}.bk-root .pika-prev.is-disabled,.bk-root .pika-next.is-disabled{cursor:default;opacity:.2}.bk-root .pika-select{display:inline-block;*display:inline}.bk-root .pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.bk-root .pika-table th,.bk-root .pika-table td{width:14.285714285714286%;padding:0}.bk-root .pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:bold;text-align:center}.bk-root .pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:0;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:right;background:#f5f5f5}.bk-root .pika-week{font-size:11px;color:#999}.bk-root .is-today .pika-button{color:#3af;font-weight:bold}.bk-root .is-selected .pika-button,.bk-root .has-event .pika-button{color:#fff;font-weight:bold;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.bk-root .has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.bk-root .is-disabled .pika-button,.bk-root .is-inrange .pika-button{background:#d5e9f7}.bk-root .is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.bk-root .is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.bk-root .is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.bk-root .is-outside-current-month .pika-button{color:#999;opacity:.3}.bk-root .is-selection-disabled{pointer-events:none;cursor:default}.bk-root .pika-button:hover,.bk-root .pika-row.pick-whole-week:hover .pika-button{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.bk-root .pika-table abbr{border-bottom:0;cursor:help}.bk-root .bk-widget-box{overflow:visible;padding:5px 10px}.bk-root .bk-widget label{margin-bottom:2px}.bk-root .bk-widget{margin-top:10px}.bk-root .bk-widget h1:first-child,.bk-root .bk-widget h2:first-child,.bk-root .bk-widget h3:first-child,.bk-root .bk-widget h4:first-child,.bk-root .bk-widget h5:first-child,.bk-root .bk-widget h6:first-child,.bk-root .bk-widget p:first-child{margin-top:0}.bk-root .bk-widget-form-input{display:block;height:31px;padding:0 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px}.bk-root .bk-widget-form-input:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6)}.bk-root .bk-widget-form-input::-moz-placeholder{color:#999;opacity:1}.bk-root .bk-widget-form-input:-ms-input-placeholder{color:#999}.bk-root .bk-widget-form-input::-webkit-input-placeholder{color:#999}.bk-root .bk-widget-form-input[disabled],.bk-root .bk-widget-form-input[readonly],fieldset[disabled] .bk-root .bk-widget-form-input{cursor:not-allowed;background-color:#eee;opacity:1}textarea.bk-root .bk-widget-form-input{height:auto}.bk-root .bk-widget button{min-width:100%}.bk-root .bk-widget input[type=\\\"text\\\"]{min-width:90%}.bk-root .bk-widget select{min-width:97%}.bk-root .bk-bs-dropdown-toggle .bk-bs-caret{margin-left:5px}.bk-root .bk-bs-dropdown-menu{width:100%}.bk-root .bk-bs-nav-tabs{overflow:hidden}.bk-root .bk-slider label{margin-right:5px}.bk-root .bk-slider .bk-slider-value{display:inline-block;font-weight:600}.bk-root .bk-slider input,.bk-root .bk-slider .bk-slider-value{margin-bottom:5px}\\n/* END bokeh-widgets.min.css */\");\n",
2148
+       "      console.log(\"Bokeh: injecting raw CSS\");\n",
2149
+       "      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh-tables.min.css */\\n.bk-root .slick-header.ui-state-default,.bk-root .slick-headerrow.ui-state-default,.bk-root .slick-footerrow.ui-state-default{width:100%;overflow:hidden;border-left:0 !important}.bk-root .slick-header-columns,.bk-root .slick-headerrow-columns,.bk-root .slick-footerrow-columns{position:relative;white-space:nowrap;cursor:default;overflow:hidden}.bk-root .slick-header-column.ui-state-default{position:relative;display:inline-block;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:0 !important;border-top:0 !important;border-bottom:0 !important;float:left}.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;padding-left:1px;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:.1px;display:block;cursor:col-resize;width:4px;right:0;top:0;height:100%}.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:0;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 .5s;-moz-transition:all .5s;-o-transition:all .5s;transition:all .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:0}.bk-root .slick-reorder-proxy{display:inline-block;background:blue;opacity:.15;cursor:move}.bk-root .slick-reorder-guide{display:inline-block;height:2px;background:blue;opacity:.7}.bk-root .slick-selection{z-index:10;position:absolute;border:2px dashed black}.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:0;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:.5}.bk-root .slick-cell.invalid{border-color:red;-moz-animation-duration:.2s;-webkit-animation-duration:.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:.2s width;-ms-transition:.2s width;transition:.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-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:100px;cursor:default}.bk-root .slick-columnpicker li{list-style:none;margin:0;padding:0;background:0}.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-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{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAWAIcAAKrM9tno++vz/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABYAAAgUAAUIHEiwoIAACBMqXMhwIQAAAQEAOw==\\\")}.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:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .bk-data-table{font-size:11px}.bk-root .bk-data-table input[type=\\\"checkbox\\\"]{margin-left:4px;margin-right:4px}.bk-root .bk-data-table *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.bk-root .bk-data-table *:before,.bk-root .bk-data-table *:after{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.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 .bk-cell-index{border-right-color:silver;border-right-style:solid;background:#f5f5f5;text-align:right;color:gray}.bk-root .bk-header-index .slick-column-name{float:right}.bk-root .slick-row.selected .bk-cell-index{background-color:transparent}.bk-root .slick-cell{padding-left:4px;padding-right:4px}.bk-root .slick-cell.active{border-style:dashed}.bk-root .slick-cell.editable{padding-left:0;padding-right:0}.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/* END bokeh-tables.min.css */\");\n",
2150
+       "    }\n",
2151
+       "  ];\n",
2152
+       "\n",
2153
+       "  function run_inline_js() {\n",
2154
+       "    \n",
2155
+       "    if ((root.Bokeh !== undefined) || (force === true)) {\n",
2156
+       "      for (var i = 0; i < inline_js.length; i++) {\n",
2157
+       "        inline_js[i].call(root, root.Bokeh);\n",
2158
+       "      }} else if (Date.now() < root._bokeh_timeout) {\n",
2159
+       "      setTimeout(run_inline_js, 100);\n",
2160
+       "    } else if (!root._bokeh_failed_load) {\n",
2161
+       "      console.log(\"Bokeh: BokehJS failed to load within specified timeout.\");\n",
2162
+       "      root._bokeh_failed_load = true;\n",
2163
+       "    } else if (force !== true) {\n",
2164
+       "      var cell = $(document.getElementById(null)).parents('.cell').data().cell;\n",
2165
+       "      cell.output_area.append_execute_result(NB_LOAD_WARNING)\n",
2166
+       "    }\n",
2167
+       "\n",
2168
+       "  }\n",
2169
+       "\n",
2170
+       "  if (root._bokeh_is_loading === 0) {\n",
2171
+       "    console.log(\"Bokeh: BokehJS loaded, going straight to plotting\");\n",
2172
+       "    run_inline_js();\n",
2173
+       "  } else {\n",
2174
+       "    load_libs(js_urls, function() {\n",
2175
+       "      console.log(\"Bokeh: BokehJS plotting callback run at\", now());\n",
2176
+       "      run_inline_js();\n",
2177
+       "    });\n",
2178
+       "  }\n",
2179
+       "}(window));"
2180
+      ],
2181
+      "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(null);\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) { callback() });\n    }\n    finally {\n      delete root._bokeh_onload_callbacks\n    }\n    console.info(\"Bokeh: all callbacks have finished\");\n  }\n\n  function load_libs(js_urls, callback) {\n    root._bokeh_onload_callbacks.push(callback);\n    if (root._bokeh_is_loading > 0) {\n      console.log(\"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.log(\"Bokeh: BokehJS not loaded, scheduling load and callback at\", now());\n    root._bokeh_is_loading = js_urls.length;\n    for (var i = 0; i < js_urls.length; i++) {\n      var url = js_urls[i];\n      var s = document.createElement('script');\n      s.src = url;\n      s.async = false;\n      s.onreadystatechange = s.onload = function() {\n        root._bokeh_is_loading--;\n        if (root._bokeh_is_loading === 0) {\n          console.log(\"Bokeh: all BokehJS libraries loaded\");\n          run_callbacks()\n        }\n      };\n      s.onerror = function() {\n        console.warn(\"failed to load library \" + url);\n      };\n      console.log(\"Bokeh: injecting script tag for BokehJS library: \", url);\n      document.getElementsByTagName(\"head\")[0].appendChild(s);\n    }\n  };\n\n  var js_urls = [];\n\n  var inline_js = [\n    function(Bokeh) {\n      /* BEGIN bokeh.min.js */\n      /*!\n       * Copyright (c) 2012 - 2018, 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(t,e){var o,s,r,a,l;t.Bokeh=(o=[function(t,e,i){var n=t(153),r=t(32);i.overrides={};var o=r.clone(n);i.Models=function(t){var e=i.overrides[t]||o[t];if(null==e)throw new Error(\"Model '\"+t+\"' does not exist. This could be due to a widget\\n                     or a custom model not being registered before first usage.\");return e},i.Models.register=function(t,e){i.overrides[t]=e},i.Models.unregister=function(t){delete i.overrides[t]},i.Models.register_models=function(t,e,i){if(void 0===e&&(e=!1),null!=t)for(var n in t){var r=t[n];e||!o.hasOwnProperty(n)?o[n]=r:null!=i?i(n):console.warn(\"Model '\"+n+\"' was already registered\")}},i.register_models=i.Models.register_models,i.Models.registered_names=function(){return Object.keys(o)},i.index={}},function(t,e,o){var s=t(336),a=t(14),l=t(52),h=t(282),u=t(283),c=t(2);o.DEFAULT_SERVER_WEBSOCKET_URL=\"ws://localhost:5006/ws\",o.DEFAULT_SESSION_ID=\"default\";var _=0,p=function(){function t(t,e,i,n,r){void 0===t&&(t=o.DEFAULT_SERVER_WEBSOCKET_URL),void 0===e&&(e=o.DEFAULT_SESSION_ID),void 0===i&&(i=null),void 0===n&&(n=null),void 0===r&&(r=null),this.url=t,this.id=e,this.args_string=i,this._on_have_session_hook=n,this._on_closed_permanently_hook=r,this._number=_++,this.socket=null,this.session=null,this.closed_permanently=!1,this._current_handler=null,this._pending_ack=null,this._pending_replies={},this._receiver=new u.Receiver,a.logger.debug(\"Creating websocket \"+this._number+\" to '\"+this.url+\"' session '\"+this.id+\"'\")}return t.prototype.connect=function(){var i=this;if(this.closed_permanently)return s.Promise.reject(new Error(\"Cannot connect() a closed ClientConnection\"));if(null!=this.socket)return s.Promise.reject(new Error(\"Already connected\"));this._pending_replies={},this._current_handler=null;try{var t=this.url+\"?bokeh-protocol-version=1.0&bokeh-session-id=\"+this.id;return null!=this.args_string&&0<this.args_string.length&&(t+=\"&\"+this.args_string),this.socket=new WebSocket(t),new s.Promise(function(t,e){i.socket.binaryType=\"arraybuffer\",i.socket.onopen=function(){return i._on_open(t,e)},i.socket.onmessage=function(t){return i._on_message(t)},i.socket.onclose=function(t){return i._on_close(t)},i.socket.onerror=function(){return i._on_error(e)}})}catch(t){return a.logger.error(\"websocket creation failed to url: \"+this.url),a.logger.error(\" - \"+t),s.Promise.reject(t)}},t.prototype.close=function(){this.closed_permanently||(a.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(),null!=this._on_closed_permanently_hook&&(this._on_closed_permanently_hook(),this._on_closed_permanently_hook=null))},t.prototype._schedule_reconnect=function(t){var e=this;setTimeout(function(){e.closed_permanently||a.logger.info(\"Websocket connection \"+e._number+\" disconnected, will not attempt to reconnect\")},t)},t.prototype.send=function(t){if(null==this.socket)throw new Error(\"not connected so cannot send \"+t);t.send(this.socket)},t.prototype.send_with_reply=function(i){var n=this,t=new s.Promise(function(t,e){n._pending_replies[i.msgid()]=[t,e],n.send(i)});return t.then(function(t){if(\"ERROR\"===t.msgtype())throw new Error(\"Error reply \"+t.content.text);return t},function(t){throw t})},t.prototype._pull_doc_json=function(){var t=h.Message.create(\"PULL-DOC-REQ\",{}),e=this.send_with_reply(t);return e.then(function(t){if(!(\"doc\"in t.content))throw new Error(\"No 'doc' field in PULL-DOC-REPLY\");return t.content.doc},function(t){throw t})},t.prototype._repull_session_doc=function(){var r=this;null==this.session?a.logger.debug(\"Pulling session for first time\"):a.logger.debug(\"Repulling session\"),this._pull_doc_json().then(function(t){if(null==r.session)if(r.closed_permanently)a.logger.debug(\"Got new document after connection was already closed\");else{var e=l.Document.from_json(t),i=l.Document._compute_patch_since_json(t,e);if(0<i.events.length){a.logger.debug(\"Sending \"+i.events.length+\" changes from model construction back to server\");var n=h.Message.create(\"PATCH-DOC\",{},i);r.send(n)}r.session=new c.ClientSession(r,e,r.id),a.logger.debug(\"Created a new session from new pulled doc\"),null!=r._on_have_session_hook&&(r._on_have_session_hook(r.session),r._on_have_session_hook=null)}else r.session.document.replace_with_json(t),a.logger.debug(\"Updated existing session with new pulled doc\")},function(t){throw t}).catch(function(t){null!=console.trace&&console.trace(t),a.logger.error(\"Failed to repull session \"+t)})},t.prototype._on_open=function(t,e){var i=this;a.logger.info(\"Websocket connection \"+this._number+\" is now open\"),this._pending_ack=[t,e],this._current_handler=function(t){i._awaiting_ack_handler(t)}},t.prototype._on_message=function(t){null==this._current_handler&&a.logger.error(\"Got a message with no current handler set\");try{this._receiver.consume(t.data)}catch(t){this._close_bad_protocol(t.toString())}if(null!=this._receiver.message){var e=this._receiver.message,i=e.problem();null!=i&&this._close_bad_protocol(i),this._current_handler(e)}},t.prototype._on_close=function(t){var i=this;a.logger.info(\"Lost websocket \"+this._number+\" connection, \"+t.code+\" (\"+t.reason+\")\"),(this.socket=null)!=this._pending_ack&&(this._pending_ack[1](new Error(\"Lost websocket connection, \"+t.code+\" (\"+t.reason+\")\")),this._pending_ack=null);for(var e=function(){for(var t in i._pending_replies){var e=i._pending_replies[t];return delete i._pending_replies[t],e}return null},n=e();null!=n;)n[1](\"Disconnected\"),n=e();this.closed_permanently||this._schedule_reconnect(2e3)},t.prototype._on_error=function(t){a.logger.debug(\"Websocket error on socket \"+this._number),t(new Error(\"Could not open websocket\"))},t.prototype._close_bad_protocol=function(t){a.logger.error(\"Closing connection: \"+t),null!=this.socket&&this.socket.close(1002,t)},t.prototype._awaiting_ack_handler=function(t){var e=this;\"ACK\"===t.msgtype()?(this._current_handler=function(t){return e._steady_state_handler(t)},this._repull_session_doc(),null!=this._pending_ack&&(this._pending_ack[0](this),this._pending_ack=null)):this._close_bad_protocol(\"First message was not an ACK\")},t.prototype._steady_state_handler=function(t){if(t.reqid()in this._pending_replies){var e=this._pending_replies[t.reqid()];delete this._pending_replies[t.reqid()],e[0](t)}else this.session.handle(t)},t}();o.ClientConnection=p,o.pull_session=function(i,n,r){return new s.Promise(function(t,e){return new p(i,n,r,function(e){try{t(e)}catch(t){throw a.logger.error(\"Promise handler threw an error, closing session \"+t),e.close(),t}},function(){e(new Error(\"Connection was closed before we successfully pulled a session\"))}).connect().then(function(t){},function(t){throw a.logger.error(\"Failed to connect to Bokeh server \"+t),t})})}},function(t,e,i){var n=t(14),r=t(52),o=t(282),s=function(){function t(t,e,i){var n=this;this._connection=t,this.document=e,this.id=i,this._document_listener=function(t){return n._document_changed(t)},this.document.on_change(this._document_listener),this.event_manager=this.document.event_manager,this.event_manager.session=this}return t.prototype.handle=function(t){var e=t.msgtype();\"PATCH-DOC\"===e?this._handle_patch(t):\"OK\"===e?this._handle_ok(t):\"ERROR\"===e?this._handle_error(t):n.logger.debug(\"Doing nothing with message \"+t.msgtype())},t.prototype.close=function(){this._connection.close()},t.prototype.send_event=function(t){var e=o.Message.create(\"EVENT\",{},JSON.stringify(t));this._connection.send(e)},t.prototype._connection_closed=function(){this.document.remove_on_change(this._document_listener)},t.prototype.request_server_info=function(){var t=o.Message.create(\"SERVER-INFO-REQ\",{}),e=this._connection.send_with_reply(t);return e.then(function(t){return t.content})},t.prototype.force_roundtrip=function(){return this.request_server_info().then(function(t){})},t.prototype._document_changed=function(t){if(t.setter_id!==this.id&&(!(t instanceof r.ModelChangedEvent)||t.attr in t.model.serializable_attributes())){var e=o.Message.create(\"PATCH-DOC\",{},this.document.create_json_patch([t]));this._connection.send(e)}},t.prototype._handle_patch=function(t){this.document.apply_json_patch(t.content,t.buffers,this.id)},t.prototype._handle_ok=function(t){n.logger.trace(\"Unhandled OK reply to \"+t.reqid())},t.prototype._handle_error=function(t){n.logger.error(\"Unhandled ERROR reply to \"+t.reqid()+\": \"+t.content.text)},t}();i.ClientSession=s},function(t,e,i){var n=t(391),r=t(14),o=t(32),s={};function a(e){return function(t){t.prototype.event_name=e,s[e]=t}}i.register_event_class=a,i.register_with_event=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=t.prototype.applicable_models.concat(e);t.prototype.applicable_models=n};var l=function(){function t(t){void 0===t&&(t={}),this.model_id=null,(this._options=t).model_id&&(this.model_id=t.model_id)}return t.prototype.set_model_id=function(t){return this._options.model_id=t,this.model_id=t,this},t.prototype.is_applicable_to=function(e){return this.applicable_models.some(function(t){return e instanceof t})},t.event_class=function(t){if(t.type)return s[t.type];r.logger.warn(\"BokehEvent.event_class required events with a string type attribute\")},t.prototype.toJSON=function(){return{event_name:this.event_name,event_values:o.clone(this._options)}},t.prototype._customize_event=function(t){return this},t}();(i.BokehEvent=l).prototype.applicable_models=[];var h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"button_click\")],e)}(l);i.ButtonClick=h;var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(l),c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"lodstart\")],e)}(i.UIEvent=u);i.LODStart=c;var _=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"lodend\")],e)}(u);i.LODEnd=_;var p=function(i){function t(t){var e=i.call(this,t)||this;return e.geometry=t.geometry,e.final=t.final,e}return n.__extends(t,i),t=n.__decorate([a(\"selectiongeometry\")],t)}(u);i.SelectionGeometry=p;var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"reset\")],e)}(u);i.Reset=d;var f=function(i){function t(t){var e=i.call(this,t)||this;return e.sx=t.sx,e.sy=t.sy,e.x=null,e.y=null,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,model_id:e})},t.prototype._customize_event=function(t){var e=t.plot_canvas.frame.xscales.default,i=t.plot_canvas.frame.yscales.default;return this.x=e.invert(this.sx),this.y=i.invert(this.sy),this._options.x=this.x,this._options.y=this.y,this},t}(u),v=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.delta_x=t.delta_x,e.delta_y=t.delta_y,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,delta_x:t.deltaX,delta_y:t.deltaY,direction:t.direction,model_id:e})},t=n.__decorate([a(\"pan\")],t)}(i.PointEvent=f);i.Pan=v;var m=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.scale=t.scale,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,scale:t.scale,model_id:e})},t=n.__decorate([a(\"pinch\")],t)}(f);i.Pinch=m;var g=function(i){function t(t){void 0===t&&(t={});var e=i.call(this,t)||this;return e.delta=t.delta,e}return n.__extends(t,i),t.from_event=function(t,e){return void 0===e&&(e=null),new this({sx:t.sx,sy:t.sy,delta:t.delta,model_id:e})},t=n.__decorate([a(\"wheel\")],t)}(f);i.MouseWheel=g;var y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mousemove\")],e)}(f);i.MouseMove=y;var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mouseenter\")],e)}(f);i.MouseEnter=b;var x=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"mouseleave\")],e)}(f);i.MouseLeave=x;var w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"tap\")],e)}(f);i.Tap=w;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"doubletap\")],e)}(f);i.DoubleTap=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"press\")],e)}(f);i.Press=S;var C=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"panstart\")],e)}(f);i.PanStart=C;var T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"panend\")],e)}(f);i.PanEnd=T;var A=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"pinchstart\")],e)}(f);i.PinchStart=A;var E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e=n.__decorate([a(\"pinchend\")],e)}(f);i.PinchEnd=E},function(t,e,i){var g=t(391),y=t(21);i.build_views=function(e,t,i,n){void 0===n&&(n=function(t){return t.default_view});for(var r=y.difference(Object.keys(e),t.map(function(t){return t.id})),o=0,s=r;o<s.length;o++){var a=s[o];e[a].remove(),delete e[a]}for(var l=[],h=t.filter(function(t){return null==e[t.id]}),u=0,c=h;u<c.length;u++){var _=c[u],p=n(_),d=g.__assign({},i,{model:_,connect_signals:!1}),f=new p(d);e[_.id]=f,l.push(f)}for(var v=0,m=l;v<m.length;v++){var f=m[v];f.connect_signals()}return l},i.remove_views=function(t){for(var e in t)t[e].remove(),delete t[e]}},function(t,e,i){var n,y=t(44),r=function(g){return function(t){void 0===t&&(t={});for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=document.createElement(g);for(var r in t){var o=t[r];if(null!=o&&(!y.isBoolean(o)||o))if(\"class\"===r&&y.isArray(o))for(var s=0,a=o;s<a.length;s++){var l=a[s];null!=l&&n.classList.add(l)}else if(\"style\"===r&&y.isPlainObject(o))for(var h in o)n.style[h]=o[h];else if(\"data\"===r&&y.isPlainObject(o))for(var u in o)n.dataset[u]=o[u];else n.setAttribute(r,o)}function c(t){if(t instanceof HTMLElement)n.appendChild(t);else if(y.isString(t))n.appendChild(document.createTextNode(t));else if(null!=t&&!1!==t)throw new Error(\"expected an HTMLElement, string, false or null, got \"+JSON.stringify(t))}for(var _=0,p=e;_<p.length;_++){var d=p[_];if(y.isArray(d))for(var f=0,v=d;f<v.length;f++){var m=v[f];c(m)}else c(d)}return n}};function o(t,e){var i=Element.prototype,n=i.matches||i.webkitMatchesSelector||i.mozMatchesSelector||i.msMatchesSelector;return n.call(t,e)}i.createElement=function(t,e){for(var i=[],n=2;n<arguments.length;n++)i[n-2]=arguments[n];return r(t).apply(void 0,[e].concat(i))},i.div=r(\"div\"),i.span=r(\"span\"),i.link=r(\"link\"),i.style=r(\"style\"),i.a=r(\"a\"),i.p=r(\"p\"),i.i=r(\"i\"),i.pre=r(\"pre\"),i.button=r(\"button\"),i.label=r(\"label\"),i.input=r(\"input\"),i.select=r(\"select\"),i.option=r(\"option\"),i.optgroup=r(\"optgroup\"),i.textarea=r(\"textarea\"),i.canvas=r(\"canvas\"),i.ul=r(\"ul\"),i.ol=r(\"ol\"),i.li=r(\"li\"),i.nbsp=document.createTextNode(\" \"),i.removeElement=function(t){var e=t.parentNode;null!=e&&e.removeChild(t)},i.replaceWith=function(t,e){var i=t.parentNode;null!=i&&i.replaceChild(e,t)},i.prepend=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];for(var n=t.firstChild,r=0,o=e;r<o.length;r++){var s=o[r];t.insertBefore(s,n)}},i.empty=function(t){for(var e;e=t.firstChild;)t.removeChild(e)},i.show=function(t){t.style.display=\"\"},i.hide=function(t){t.style.display=\"none\"},i.position=function(t){return{top:t.offsetTop,left:t.offsetLeft}},i.offset=function(t){var e=t.getBoundingClientRect();return{top:e.top+window.pageYOffset-document.documentElement.clientTop,left:e.left+window.pageXOffset-document.documentElement.clientLeft}},i.matches=o,i.parent=function(t,e){for(var i=t;i=i.parentElement;)if(o(i,e))return i;return null},i.margin=function(t){var e=getComputedStyle(t);return{top:parseFloat(e.marginTop)||0,bottom:parseFloat(e.marginBottom)||0,left:parseFloat(e.marginLeft)||0,right:parseFloat(e.marginRight)||0}},i.padding=function(t){var e=getComputedStyle(t);return{top:parseFloat(e.paddingTop)||0,bottom:parseFloat(e.paddingBottom)||0,left:parseFloat(e.paddingLeft)||0,right:parseFloat(e.paddingRight)||0}},(n=i.Keys||(i.Keys={}))[n.Backspace=8]=\"Backspace\",n[n.Tab=9]=\"Tab\",n[n.Enter=13]=\"Enter\",n[n.Esc=27]=\"Esc\",n[n.PageUp=33]=\"PageUp\",n[n.PageDown=34]=\"PageDown\",n[n.Left=37]=\"Left\",n[n.Up=38]=\"Up\",n[n.Right=39]=\"Right\",n[n.Down=40]=\"Down\",n[n.Delete=46]=\"Delete\"},function(t,e,i){var n=t(391),r=t(48),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._has_finished=!1,this.el=this._createElement()},t.prototype.remove=function(){o.removeElement(this.el),e.prototype.remove.call(this)},t.prototype.css_classes=function(){return[]},t.prototype.cursor=function(t,e){return null},t.prototype.layout=function(){},t.prototype.render=function(){},t.prototype.renderTo=function(t){t.appendChild(this.el),this.layout()},t.prototype.has_finished=function(){return this._has_finished},Object.defineProperty(t.prototype,\"_root_element\",{get:function(){return o.parent(this.el,\".bk-root\")||document.body},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"solver\",{get:function(){return this.is_root?this._solver:this.parent.solver},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_idle\",{get:function(){return this.has_finished()},enumerable:!0,configurable:!0}),t.prototype._createElement=function(){return o.createElement(this.tagName,{id:this.id,class:this.css_classes()})},t}(r.View);(i.DOMView=s).prototype.tagName=\"div\"},function(t,e,i){i.AngleUnits=[\"deg\",\"rad\"],i.Dimension=[\"width\",\"height\"],i.Dimensions=[\"width\",\"height\",\"both\"],i.Direction=[\"clock\",\"anticlock\"],i.FontStyle=[\"normal\",\"italic\",\"bold\",\"bold italic\"],i.LatLon=[\"lat\",\"lon\"],i.LineCap=[\"butt\",\"round\",\"square\"],i.LineJoin=[\"miter\",\"round\",\"bevel\"],i.Location=[\"above\",\"below\",\"left\",\"right\"],i.LegendClickPolicy=[\"none\",\"hide\",\"mute\"],i.LegendLocation=[\"top_left\",\"top_center\",\"top_right\",\"center_left\",\"center\",\"center_right\",\"bottom_left\",\"bottom_center\",\"bottom_right\"],i.Anchor=i.LegendLocation,i.Orientation=[\"vertical\",\"horizontal\"],i.OutputBackend=[\"canvas\",\"svg\",\"webgl\"],i.RenderLevel=[\"image\",\"underlay\",\"glyph\",\"annotation\",\"overlay\"],i.RenderMode=[\"canvas\",\"css\"],i.Side=[\"above\",\"below\",\"left\",\"right\"],i.Place=[\"above\",\"below\",\"left\",\"right\",\"center\"],i.SpatialUnits=[\"screen\",\"data\"],i.StartEnd=[\"start\",\"end\"],i.VerticalAlign=[\"top\",\"middle\",\"bottom\"],i.TextAlign=[\"left\",\"right\",\"center\"],i.TextBaseline=[\"top\",\"middle\",\"bottom\",\"alphabetic\",\"hanging\",\"ideographic\"],i.TickLabelOrientation=[\"vertical\",\"horizontal\",\"parallel\",\"normal\"],i.TooltipAttachment=[\"horizontal\",\"vertical\",\"left\",\"right\",\"above\",\"below\"],i.Distribution=[\"uniform\",\"normal\"],i.StepMode=[\"after\",\"before\",\"center\"],i.SizingMode=[\"stretch_both\",\"scale_width\",\"scale_height\",\"scale_both\",\"fixed\"],i.PaddingUnits=[\"percent\",\"absolute\"],i.SliderCallbackPolicy=[\"continuous\",\"throttle\",\"mouseup\"],i.RoundingFunction=[\"round\",\"nearest\",\"floor\",\"rounddown\",\"ceil\",\"roundup\"],i.UpdateMode=[\"replace\",\"append\"],i.HTTPMethod=[\"POST\",\"GET\"],i.Logo=[\"normal\",\"grey\"]},function(t,e,i){var o=t(391),l=t(19),n=t(16),h=t(34),r=t(15),u=t(38),s=t(21),_=t(32),p=t(44),d=t(30),a=function(a){function c(t){void 0===t&&(t={});var e=a.call(this)||this;for(var i in e._subtype=void 0,e.document=null,e.destroyed=new l.Signal0(e,\"destroyed\"),e.change=new l.Signal0(e,\"change\"),e.transformchange=new l.Signal0(e,\"transformchange\"),e.attributes={},e.properties={},e._set_after_defaults={},e._pending=!1,e._changing=!1,e.props){var n=e.props[i],r=n.type,o=n.default_value;if(null==r)throw new Error(\"undefined property type for \"+e.type+\".\"+i);e.properties[i]=new r(e,i,o)}null==t.id&&e.setv({id:u.uniqueId()},{silent:!0});var s=t.__deferred__||!1;return s&&delete(t=_.clone(t)).__deferred__,e.setv(t,{silent:!0}),s||e.finalize(),e}return o.__extends(c,a),c.initClass=function(){this.prototype.type=\"HasProps\",this.prototype.props={},this.prototype.mixins=[],this.define({id:[r.Any]})},c._fix_default=function(t,e){return void 0===t?void 0:p.isFunction(t)?t:p.isObject(t)?p.isArray(t)?function(){return s.copy(t)}:function(){return _.clone(t)}:function(){return t}},c.define=function(a){var t=function(i){var t=a[i];if(null!=l.prototype.props[i])throw new Error(\"attempted to redefine property '\"+l.prototype.type+\".\"+i+\"'\");if(null!=l.prototype[i])throw new Error(\"attempted to redefine attribute '\"+l.prototype.type+\".\"+i+\"'\");Object.defineProperty(l.prototype,i,{get:function(){var t=this.getv(i);return t},set:function(t){var e;return this.setv(((e={})[i]=t,e)),this},configurable:!1,enumerable:!0});var e=t[0],n=t[1],r=t[2],o={type:e,default_value:l._fix_default(n,i),internal:r||!1},s=_.clone(l.prototype.props);s[i]=o,l.prototype.props=s},l=this;for(var e in a)t(e)},c.internal=function(t){var e={};for(var i in t){var n=t[i],r=n[0],o=n[1];e[i]=[r,o,!0]}this.define(e)},c.mixin=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];this.define(n.create(t));var i=this.prototype.mixins.concat(t);this.prototype.mixins=i},c.mixins=function(t){this.mixin.apply(this,t)},c.override=function(t){for(var e in t){var i=this._fix_default(t[e],e),n=this.prototype.props[e];if(null==n)throw new Error(\"attempted to override nonexistent '\"+this.prototype.type+\".\"+e+\"'\");var r=_.clone(this.prototype.props);r[e]=o.__assign({},n,{default_value:i}),this.prototype.props=r}},c.prototype.toString=function(){return this.type+\"(\"+this.id+\")\"},c.prototype.finalize=function(){var t=this;for(var e in this.properties){var i=this.properties[e];i.update(),null!=i.spec.transform&&this.connect(i.spec.transform.change,function(){return t.transformchange.emit()})}this.initialize(),this.connect_signals()},c.prototype.initialize=function(){},c.prototype.connect_signals=function(){},c.prototype.disconnect_signals=function(){l.Signal.disconnectReceiver(this)},c.prototype.destroy=function(){this.disconnect_signals(),this.destroyed.emit()},c.prototype.clone=function(){return new this.constructor(this.attributes)},c.prototype._setv=function(t,e){var i=e.check_eq,n=e.silent,r=[],o=this._changing;this._changing=!0;var s=this.attributes;for(var a in t){var l=t[a];!1!==i&&d.isEqual(s[a],l)||r.push(a),s[a]=l}if(!n){0<r.length&&(this._pending=!0);for(var h=0;h<r.length;h++)this.properties[r[h]].change.emit()}if(!o){if(!n&&!e.no_change)for(;this._pending;)this._pending=!1,this.change.emit();this._pending=!1,this._changing=!1}},c.prototype.setv=function(t,e){for(var i in void 0===e&&(e={}),t)if(t.hasOwnProperty(i)){var n=i;if(null==this.props[n])throw new Error(\"property \"+this.type+\".\"+n+\" wasn't declared\");null!=e&&e.defaults||(this._set_after_defaults[i]=!0)}if(!_.isEmpty(t)){var r={};for(var i in t)r[i]=this.getv(i);this._setv(t,e);var o=e.silent;if(null==o||!o)for(var i in t)this._tell_document_about_change(i,r[i],this.getv(i),e)}},c.prototype.getv=function(t){if(null==this.props[t])throw new Error(\"property \"+this.type+\".\"+t+\" wasn't declared\");return this.attributes[t]},c.prototype.ref=function(){return h.create_ref(this)},c.prototype.set_subtype=function(t){this._subtype=t},c.prototype.attribute_is_serializable=function(t){var e=this.props[t];if(null==e)throw new Error(this.type+\".attribute_is_serializable('\"+t+\"'): \"+t+\" wasn't declared\");return!e.internal},c.prototype.serializable_attributes=function(){var t={};for(var e in this.attributes){var i=this.attributes[e];this.attribute_is_serializable(e)&&(t[e]=i)}return t},c._value_to_json=function(t,e,i){if(e instanceof c)return e.ref();if(p.isArray(e)){for(var n=[],r=0;r<e.length;r++){var o=e[r];n.push(c._value_to_json(r.toString(),o,e))}return n}if(p.isPlainObject(e)){var s={};for(var a in e)e.hasOwnProperty(a)&&(s[a]=c._value_to_json(a,e[a],e));return s}return e},c.prototype.attributes_as_json=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=c._value_to_json);var i=this.serializable_attributes(),n={};for(var r in i)if(i.hasOwnProperty(r)){var o=i[r];t?n[r]=o:r in this._set_after_defaults&&(n[r]=o)}return e(\"attributes\",n,this)},c._json_record_references=function(t,e,i,n){if(null==e);else if(h.is_ref(e)){if(!(e.id in i)){var r=t.get_model_by_id(e.id);c._value_record_references(r,i,n)}}else if(p.isArray(e))for(var o=0,s=e;o<s.length;o++){var a=s[o];c._json_record_references(t,a,i,n)}else if(p.isPlainObject(e))for(var l in e)if(e.hasOwnProperty(l)){var a=e[l];c._json_record_references(t,a,i,n)}},c._value_record_references=function(t,e,i){if(null==t);else if(t instanceof c){if(!(t.id in e)&&(e[t.id]=t,i))for(var n=t._immediate_references(),r=0,o=n;r<o.length;r++){var s=o[r];c._value_record_references(s,e,!0)}}else if(t.buffer instanceof ArrayBuffer);else if(p.isArray(t))for(var a=0,l=t;a<l.length;a++){var h=l[a];c._value_record_references(h,e,i)}else if(p.isPlainObject(t))for(var u in t)if(t.hasOwnProperty(u)){var h=t[u];c._value_record_references(h,e,i)}},c.prototype._immediate_references=function(){var t={},e=this.serializable_attributes();for(var i in e){var n=e[i];c._value_record_references(n,t,!1)}return _.values(t)},c.prototype.references=function(){var t={};return c._value_record_references(this,t,!0),_.values(t)},c.prototype._doc_attached=function(){},c.prototype.attach_document=function(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()},c.prototype.detach_document=function(){this.document=null},c.prototype._tell_document_about_change=function(t,e,i,n){if(this.attribute_is_serializable(t)&&null!=this.document){var r={};c._value_record_references(i,r,!1);var o={};c._value_record_references(e,o,!1);var s=!1;for(var a in r)if(!(a in o)){s=!0;break}if(!s)for(var l in o)if(!(l in r)){s=!0;break}s&&this.document._invalidate_all_models(),this.document._notify_change(this,t,e,i,n)}},c.prototype.materialize_dataspecs=function(t){var e={};for(var i in this.properties){var n=this.properties[i];n.dataspec&&(!n.optional||null!=n.spec.value||i in this._set_after_defaults)&&(e[\"_\"+i]=n.array(t),null!=n.spec.field&&n.spec.field in t._shapes&&(e[\"_\"+i+\"_shape\"]=t._shapes[n.spec.field]),n instanceof r.DistanceSpec&&(e[\"max_\"+i]=s.max(e[\"_\"+i])))}return e},c}(l.Signalable());(i.HasProps=a).initClass()},function(t,e,i){var n=t(21),r=t(197);function o(t){return t*t}function s(t,e){return o(t.x-e.x)+o(t.y-e.y)}function a(t,e,i){var n=s(e,i);if(0==n)return s(t,e);var r=((t.x-e.x)*(i.x-e.x)+(t.y-e.y)*(i.y-e.y))/n;if(r<0)return s(t,e);if(1<r)return s(t,i);var o={x:e.x+r*(i.x-e.x),y:e.y+r*(i.y-e.y)};return s(t,o)}i.point_in_poly=function(t,e,i,n){for(var r=!1,o=i[i.length-1],s=n[n.length-1],a=0;a<i.length;a++){var l=i[a],h=n[a];s<e!=h<e&&o+(e-s)/(h-s)*(l-o)<t&&(r=!r),o=l,s=h}return r},i.point_in_ellipse=function(t,e,i,n,r,o,s){var a=Math.pow(Math.cos(i)/r,2)+Math.pow(Math.sin(i)/n,2),l=2*Math.cos(i)*Math.sin(i)*(Math.pow(1/r,2)-Math.pow(1/n,2)),h=Math.pow(Math.cos(i)/n,2)+Math.pow(Math.sin(i)/r,2);return a*Math.pow(t-o,2)+l*(t-o)*(e-s)+h*Math.pow(e-s,2)<=1},i.create_empty_hit_test_result=function(){return new r.Selection},i.create_hit_test_result_from_hits=function(t){var e=new r.Selection;return e.indices=n.sortBy(t,function(t){return t[0],t[1]}).map(function(t){var e=t[0];return t[1],e}),e},i.validate_bbox_coords=function(t,e){var i,n,r=t[0],o=t[1],s=e[0],a=e[1];return o<r&&(r=(i=[o,r])[0],o=i[1]),a<s&&(s=(n=[a,s])[0],a=n[1]),{minX:r,minY:s,maxX:o,maxY:a}},i.dist_2_pts=s,i.dist_to_segment_squared=a,i.dist_to_segment=function(t,e,i){return Math.sqrt(a(t,e,i))},i.check_2_segments_intersect=function(t,e,i,n,r,o,s,a){var l=(a-o)*(i-t)-(s-r)*(n-e);if(0==l)return{hit:!1,x:null,y:null};var h=e-o,u=t-r,c=(s-r)*h-(a-o)*u,_=(i-t)*h-(n-e)*u;u=_/l;var p=t+(h=c/l)*(i-t),d=e+h*(n-e);return{hit:0<h&&h<1&&0<u&&u<1,x:p,y:d}}},function(t,e,i){var s=t(13),a=t(21);i.vstack=function(t,e){var i=[];if(0<e.length){i.push(s.EQ(a.head(e)._bottom,[-1,t._bottom])),i.push(s.EQ(a.tail(e)._top,[-1,t._top])),i.push.apply(i,a.pairwise(e,function(t,e){return s.EQ(t._top,[-1,e._bottom])}));for(var n=0,r=e;n<r.length;n++){var o=r[n];i.push(s.EQ(o._left,[-1,t._left])),i.push(s.EQ(o._right,[-1,t._right]))}}return i},i.hstack=function(t,e){var i=[];if(0<e.length){i.push(s.EQ(a.head(e)._right,[-1,t._right])),i.push(s.EQ(a.tail(e)._left,[-1,t._left])),i.push.apply(i,a.pairwise(e,function(t,e){return s.EQ(t._left,[-1,e._right])}));for(var n=0,r=e;n<r.length;n++){var o=r[n];i.push(s.EQ(o._top,[-1,t._top])),i.push(s.EQ(o._bottom,[-1,t._bottom]))}}return i}},function(t,e,i){var n=t(391),r=t(13),o=t(8),s=t(24),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutCanvas\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._top=new r.Variable(this.toString()+\".top\"),this._left=new r.Variable(this.toString()+\".left\"),this._width=new r.Variable(this.toString()+\".width\"),this._height=new r.Variable(this.toString()+\".height\"),this._right=new r.Variable(this.toString()+\".right\"),this._bottom=new r.Variable(this.toString()+\".bottom\");var t=this;this._hcenter={get value(){return(t._left.value+t._right.value)/2}},this._vcenter={get value(){return(t._top.value+t._bottom.value)/2}}},t.prototype.get_editables=function(){return[]},t.prototype.get_constraints=function(){return[r.GE(this._top),r.GE(this._bottom),r.GE(this._left),r.GE(this._right),r.GE(this._width),r.GE(this._height),r.EQ(this._left,this._width,[-1,this._right]),r.EQ(this._top,this._height,[-1,this._bottom])]},t.prototype.get_layoutable_children=function(){return[]},Object.defineProperty(t.prototype,\"bbox\",{get:function(){return new s.BBox({x0:this._left.value,y0:this._top.value,x1:this._right.value,y1:this._bottom.value})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"layout_bbox\",{get:function(){return{top:this._top.value,left:this._left.value,width:this._width.value,height:this._height.value,right:this._right.value,bottom:this._bottom.value}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"xview\",{get:function(){var r=this;return{compute:function(t){return r._left.value+t},v_compute:function(t){for(var e=new Float64Array(t.length),i=r._left.value,n=0;n<t.length;n++)e[n]=i+t[n];return e}}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"yview\",{get:function(){var r=this;return{compute:function(t){return r._bottom.value-t},v_compute:function(t){for(var e=new Float64Array(t.length),i=r._bottom.value,n=0;n<t.length;n++)e[n]=i-t[n];return e}}},enumerable:!0,configurable:!0}),t}(o.HasProps);(i.LayoutCanvas=a).initClass()},function(t,e,r){var i=t(391),o=t(13),n=t(11),s=t(15),a=t(14),l=t(44),h=Math.PI/2,u=\"alphabetic\",c=\"middle\",_=\"hanging\",p=\"left\",d=\"right\",f=\"center\",v={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}},m={above:{justified:\"top\",parallel:u,normal:c,horizontal:u,vertical:c},below:{justified:\"bottom\",parallel:_,normal:c,horizontal:_,vertical:c},left:{justified:\"top\",parallel:u,normal:c,horizontal:c,vertical:u},right:{justified:\"top\",parallel:u,normal:c,horizontal:c,vertical:u}},g={above:{justified:f,parallel:f,normal:p,horizontal:f,vertical:p},below:{justified:f,parallel:f,normal:p,horizontal:f,vertical:p},left:{justified:f,parallel:f,normal:d,horizontal:d,vertical:f},right:{justified:f,parallel:f,normal:p,horizontal:p,vertical:f}},y={above:d,below:p,left:d,right:p},b={above:p,below:d,left:d,right:p};function x(t){return\"panel\"in t}r.isSizeable=x,r.isSizeableView=function(t){return x(t.model)&&\"get_size\"in t},r._view_sizes=new WeakMap,r._view_constraints=new WeakMap,r.update_panel_constraints=function(t){var e=t.solver,i=t.get_size(),n=r._view_constraints.get(t);if(null!=n&&e.has_constraint(n)){if(r._view_sizes.get(t)===i)return;e.remove_constraint(n)}n=o.GE(t.model.panel._size,-i),e.add_constraint(n),r._view_sizes.set(t,i),r._view_constraints.set(t,n)};var w=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"SidePanel\",this.internal({side:[s.String]})},t.prototype.toString=function(){return this.type+\"(\"+this.id+\", \"+this.side+\")\"},t.prototype.initialize=function(){switch(e.prototype.initialize.call(this),this.side){case\"above\":this._dim=0,this._normals=[0,-1],this._size=this._height;break;case\"below\":this._dim=0,this._normals=[0,1],this._size=this._height;break;case\"left\":this._dim=1,this._normals=[-1,0],this._size=this._width;break;case\"right\":this._dim=1,this._normals=[1,0],this._size=this._width;break;default:a.logger.error(\"unrecognized side: '\"+this.side+\"'\")}},Object.defineProperty(t.prototype,\"dimension\",{get:function(){return this._dim},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"normals\",{get:function(){return this._normals},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_horizontal\",{get:function(){return\"above\"==this.side||\"below\"==this.side},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_vertical\",{get:function(){return\"left\"==this.side||\"right\"==this.side},enumerable:!0,configurable:!0}),t.prototype.apply_label_text_heuristics=function(t,e){var i,n,r=this.side;l.isString(e)?(i=m[r][e],n=g[r][e]):0===e?n=i=\"whatever\":e<0?(i=\"middle\",n=y[r]):(i=\"middle\",n=b[r]),t.textBaseline=i,t.textAlign=n},t.prototype.get_label_angle_heuristic=function(t){return v[this.side][t]},t}(n.LayoutCanvas);(r.SidePanel=w).initClass()},function(t,e,i){var n=t(350);function r(i){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new n.Constraint(new(n.Expression.bind.apply(n.Expression,[void 0].concat(t))),i)}}function o(i){return function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return new n.Constraint(new(n.Expression.bind.apply(n.Expression,[void 0].concat(t))),i,n.Strength.weak)}}i.Variable=n.Variable,i.Expression=n.Expression,i.Constraint=n.Constraint,i.Operator=n.Operator,i.Strength=n.Strength,i.EQ=r(n.Operator.Eq),i.LE=r(n.Operator.Le),i.GE=r(n.Operator.Ge),i.WEAK_EQ=o(n.Operator.Eq),i.WEAK_LE=o(n.Operator.Le),i.WEAK_GE=o(n.Operator.Ge);var s=function(){function t(){this.solver=new n.Solver}return t.prototype.clear=function(){this.solver=new n.Solver},t.prototype.toString=function(){return\"Solver(num_constraints=\"+this.num_constraints+\", num_editables=\"+this.num_editables+\")\"},Object.defineProperty(t.prototype,\"num_constraints\",{get:function(){return this.solver.numConstraints},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"num_editables\",{get:function(){return this.solver.numEditVariables},enumerable:!0,configurable:!0}),t.prototype.get_constraints=function(){return this.solver.getConstraints()},t.prototype.update_variables=function(){this.solver.updateVariables()},t.prototype.has_constraint=function(t){return this.solver.hasConstraint(t)},t.prototype.add_constraint=function(e){try{this.solver.addConstraint(e)}catch(t){throw new Error(t.message+\": \"+e.toString())}},t.prototype.remove_constraint=function(t){this.solver.removeConstraint(t)},t.prototype.add_edit_variable=function(t,e){this.solver.addEditVariable(t,e)},t.prototype.remove_edit_variable=function(t){this.solver.removeEditVariable(t)},t.prototype.suggest_value=function(t,e){this.solver.suggestValue(t,e)},t}();i.Solver=s},function(t,e,i){var o=t(44),n={},s=function(t,e){this.name=t,this.level=e};i.LogLevel=s;var r=function(){function r(t,e){void 0===e&&(e=r.INFO),this._name=t,this.set_level(e)}return Object.defineProperty(r,\"levels\",{get:function(){return Object.keys(r.log_levels)},enumerable:!0,configurable:!0}),r.get=function(t,e){if(void 0===e&&(e=r.INFO),0<t.length){var i=n[t];return null==i&&(n[t]=i=new r(t,e)),i}throw new TypeError(\"Logger.get() expects a non-empty string name and an optional log-level\")},Object.defineProperty(r.prototype,\"level\",{get:function(){return this.get_level()},enumerable:!0,configurable:!0}),r.prototype.get_level=function(){return this._log_level},r.prototype.set_level=function(t){if(t instanceof s)this._log_level=t;else{if(!o.isString(t)||null==r.log_levels[t])throw new Error(\"Logger.set_level() expects a log-level object or a string name of a log-level\");this._log_level=r.log_levels[t]}var e=\"[\"+this._name+\"]\";for(var i in r.log_levels){var n=r.log_levels[i];n.level<this._log_level.level||this._log_level.level===r.OFF.level?this[i]=function(){}:this[i]=a(i,e)}},r.prototype.trace=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.debug=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.info=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.warn=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.prototype.error=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e]},r.TRACE=new s(\"trace\",0),r.DEBUG=new s(\"debug\",1),r.INFO=new s(\"info\",2),r.WARN=new s(\"warn\",6),r.ERROR=new s(\"error\",7),r.FATAL=new s(\"fatal\",8),r.OFF=new s(\"off\",9),r.log_levels={trace:r.TRACE,debug:r.DEBUG,info:r.INFO,warn:r.WARN,error:r.ERROR,fatal:r.FATAL,off:r.OFF},r}();function a(t,e){return null!=console[t]?console[t].bind(console,e):null!=console.log?console.log.bind(console,e):function(){}}i.Logger=r,i.logger=r.get(\"bokeh\"),i.set_log_level=function(t){null==r.log_levels[t]?(console.log(\"[bokeh] unrecognized logging level '\"+t+\"' passed to Bokeh.set_log_level(), ignoring\"),console.log(\"[bokeh] valid log levels are: \"+r.levels.join(\", \"))):(console.log(\"[bokeh] setting log level to: '\"+t+\"'\"),i.logger.set_level(t))}},function(t,e,i){var o=t(391),s=t(19),n=t(7),r=t(39),a=t(27),l=t(21),h=t(22),u=t(44);function c(e){try{return JSON.stringify(e)}catch(t){return e.toString()}}function _(t){return u.isPlainObject(t)&&(void 0===t.value?0:1)+(void 0===t.field?0:1)+(void 0===t.expr?0:1)==1}s.Signal,i.isSpec=_;var p=function(r){function t(t,e,i){var n=r.call(this)||this;return n.obj=t,n.attr=e,n.default_value=i,n.optional=!1,n.obj=t,n.attr=e,n.default_value=i,n.change=new s.Signal0(n.obj,\"change\"),n._init(),n.connect(n.change,function(){return n._init()}),n}return o.__extends(t,r),t.prototype.update=function(){this._init()},t.prototype.init=function(){},t.prototype.transform=function(t){return t},t.prototype.validate=function(t){},t.prototype.value=function(t){if(void 0===t&&(t=!0),void 0===this.spec.value)throw new Error(\"attempted to retrieve property value for property without value specification\");var e=this.transform([this.spec.value])[0];return null!=this.spec.transform&&t&&(e=this.spec.transform.compute(e)),e},t.prototype.array=function(t){if(!this.dataspec)throw new Error(\"attempted to retrieve property array for non-dataspec property\");var e;if(null!=this.spec.field){if(null==(e=this.transform(t.get_column(this.spec.field))))throw new Error(\"attempted to retrieve property array for nonexistent field '\"+this.spec.field+\"'\")}else if(null!=this.spec.expr)e=this.transform(this.spec.expr.v_compute(t));else{var i=t.get_length();null==i&&(i=1);var n=this.value(!1);e=l.repeat(n,i)}return null!=this.spec.transform&&(e=this.spec.transform.v_compute(e)),e},t.prototype._init=function(){var t,e=this.obj,i=this.attr,n=e.getv(i);if(void 0===n){var r=this.default_value;n=void 0!==r?r(e):null,e.setv(((t={})[i]=n,t),{silent:!0,defaults:!0})}if(u.isArray(n)?this.spec={value:n}:_(n)?this.spec=n:this.spec={value:n},this.dataspec&&null!=this.spec.field&&!u.isString(this.spec.field))throw new Error(\"field value for property '\"+i+\"' is not a string\");null!=this.spec.value&&this.validate(this.spec.value),this.init()},t.prototype.toString=function(){return\"Prop(\"+this.obj+\".\"+this.attr+\", spec: \"+c(this.spec)+\")\"},t}(s.Signalable());function d(i,n){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.validate=function(t){if(!n(t))throw new Error(i+\" property '\"+this.attr+\"' given invalid value: \"+c(t))},e}(p)}(i.Property=p).prototype.dataspec=!1;var f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}((i.simple_prop=d)(\"Any\",function(t){return!0}));i.Any=f;var v=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Array\",function(t){return u.isArray(t)||t instanceof Float64Array}));i.Array=v;var m=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Bool\",u.isBoolean));i.Bool=m,i.Boolean=m;var g=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Color\",function(t){return u.isString(t)&&(r.is_svg_color(t.toLowerCase())||\"#\"==t.substring(0,1)||a.valid_rgb(t))}));i.Color=g;var y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Instance\",function(t){return null!=t.properties}));i.Instance=y;var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Number\",function(t){return u.isNumber(t)||u.isBoolean(t)}));i.Number=b;var x=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(i.Int=b);i.Angle=x;var w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"Number\",function(t){return(u.isNumber(t)||u.isBoolean(t))&&0<=t&&t<=1}));i.Percent=w;var k=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(\"String\",u.isString));i.String=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(i.FontSize=k);function C(t,e){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(d(t,function(t){return l.includes(e,t)}))}i.Font=S;var T=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}((i.enum_prop=C)(\"Anchor\",n.LegendLocation));i.Anchor=T;var A=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"AngleUnits\",n.AngleUnits));i.AngleUnits=A;var E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.transform=function(t){for(var e=new Uint8Array(t.length),i=0;i<t.length;i++)switch(t[i]){case\"clock\":e[i]=0;break;case\"anticlock\":e[i]=1}return e},e}(C(\"Direction\",n.Direction));i.Direction=E;var M=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Dimension\",n.Dimension));i.Dimension=M;var O=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Dimensions\",n.Dimensions));i.Dimensions=O;var z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"FontStyle\",n.FontStyle));i.FontStyle=z;var P=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LatLon\",n.LatLon));i.LatLon=P;var j=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LineCap\",n.LineCap));i.LineCap=j;var N=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LineJoin\",n.LineJoin));i.LineJoin=N;var F=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"LegendLocation\",n.LegendLocation));i.LegendLocation=F;var D=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Location\",n.Location));i.Location=D;var I=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"OutputBackend\",n.OutputBackend));i.OutputBackend=I;var R=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Orientation\",n.Orientation));i.Orientation=R;var B=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"VerticalAlign\",n.VerticalAlign));i.VerticalAlign=B;var L=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"TextAlign\",n.TextAlign));i.TextAlign=L;var V=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"TextBaseline\",n.TextBaseline));i.TextBaseline=V;var G=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"RenderLevel\",n.RenderLevel));i.RenderLevel=G;var U=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"RenderMode\",n.RenderMode));i.RenderMode=U;var q=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"SizingMode\",n.SizingMode));i.SizingMode=q;var Y=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"SpatialUnits\",n.SpatialUnits));i.SpatialUnits=Y;var X=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"Distribution\",n.Distribution));i.Distribution=X;var H=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"StepMode\",n.StepMode));i.StepMode=H;var W=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"PaddingUnits\",n.PaddingUnits));i.PaddingUnits=W;var J=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(C(\"StartEnd\",n.StartEnd));function Q(i,n,r){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.init=function(){null==this.spec.units&&(this.spec.units=r);var t=this.spec.units;if(!l.includes(n,t))throw new Error(i+\" units must be one of \"+n+\", given invalid value: \"+t)},Object.defineProperty(e.prototype,\"units\",{get:function(){return this.spec.units},set:function(t){this.spec.units=t},enumerable:!0,configurable:!0}),e}(b)}i.StartEnd=J;var $=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.transform=function(t){return\"deg\"==this.spec.units&&(t=h.map(t,function(t){return t*Math.PI/180})),t=h.map(t,function(t){return-t}),e.prototype.transform.call(this,t)},t}((i.units_prop=Q)(\"AngleSpec\",n.AngleUnits,\"rad\"));(i.AngleSpec=$).prototype.dataspec=!0;var K=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(g);(i.ColorSpec=K).prototype.dataspec=!0;var Z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(Q(\"DistanceSpec\",n.SpatialUnits,\"data\"));(i.DistanceSpec=Z).prototype.dataspec=!0;var tt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.FontSizeSpec=tt).prototype.dataspec=!0;var et=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.MarkerSpec=et).prototype.dataspec=!0;var it=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(b);(i.NumberSpec=it).prototype.dataspec=!0;var nt=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e}(k);(i.StringSpec=nt).prototype.dataspec=!0},function(t,e,h){var i=t(15),u=t(32);function n(t,e){var i={};for(var n in t){var r=t[n];i[e+n]=r}return i}var r={line_color:[i.ColorSpec,\"black\"],line_width:[i.NumberSpec,1],line_alpha:[i.NumberSpec,1],line_join:[i.LineJoin,\"bevel\"],line_cap:[i.LineCap,\"butt\"],line_dash:[i.Array,[]],line_dash_offset:[i.Number,0]};h.line=function(t){return void 0===t&&(t=\"\"),n(r,t)};var o={fill_color:[i.ColorSpec,\"gray\"],fill_alpha:[i.NumberSpec,1]};h.fill=function(t){return void 0===t&&(t=\"\"),n(o,t)};var s={text_font:[i.Font,\"helvetica\"],text_font_size:[i.FontSizeSpec,\"12pt\"],text_font_style:[i.FontStyle,\"normal\"],text_color:[i.ColorSpec,\"#444444\"],text_alpha:[i.NumberSpec,1],text_align:[i.TextAlign,\"left\"],text_baseline:[i.TextBaseline,\"bottom\"],text_line_height:[i.Number,1.2]};h.text=function(t){return void 0===t&&(t=\"\"),n(s,t)},h.create=function(t){for(var e={},i=0,n=t;i<n.length;i++){var r=n[i],o=r.split(\":\"),s=o[0],a=o[1],l=void 0;switch(s){case\"line\":l=h.line;break;case\"fill\":l=h.fill;break;case\"text\":l=h.text;break;default:throw new Error(\"Unknown property mixin kind '\"+s+\"'\")}u.extend(e,l(a))}return e}},function(t,e,i){var n=t(391),r=t(8),o=t(197),p=t(185),d=t(186),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.initClass=function(){this.prototype.type=\"SelectionManager\",this.internal({source:[s.Any]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),this.inspectors={}},e.prototype.select=function(t,e,i,n){void 0===n&&(n=!1);for(var r=[],o=[],s=0,a=t;s<a.length;s++){var l=a[s];l instanceof p.GlyphRendererView?r.push(l):l instanceof d.GraphRendererView&&o.push(l)}for(var h=!1,u=0,c=o;u<c.length;u++){var l=c[u],_=l.model.selection_policy.hit_test(e,l);h=h||l.model.selection_policy.do_selection(_,l.model,i,n)}if(0<r.length){var _=this.source.selection_policy.hit_test(e,r);h=h||this.source.selection_policy.do_selection(_,this.source,i,n)}return h},e.prototype.inspect=function(t,e){var i=!1;if(t instanceof p.GlyphRendererView){var n=t.hit_test(e);if(null!=n){i=!n.is_empty();var r=this.get_or_create_inspector(t.model);r.update(n,!0,!1),this.source.setv({inspected:r},{silent:!0}),this.source.inspect.emit([t,{geometry:e}])}}else if(t instanceof d.GraphRendererView){var n=t.model.inspection_policy.hit_test(e,t);i=i||t.model.inspection_policy.do_inspection(n,e,t,!1,!1)}return i},e.prototype.clear=function(t){this.source.selected.clear(),null!=t&&this.get_or_create_inspector(t.model).clear()},e.prototype.get_or_create_inspector=function(t){return null==this.inspectors[t.id]&&(this.inspectors[t.id]=new o.Selection),this.inspectors[t.id]},e}(r.HasProps);(i.SelectionManager=a).initClass()},function(t,e,i){var n=function(){function t(){this._dev=!1}return Object.defineProperty(t.prototype,\"dev\",{get:function(){return this._dev},set:function(t){this._dev=t},enumerable:!0,configurable:!0}),t}();i.Settings=n,i.settings=new n},function(t,e,i){var n,r=t(391),o=t(29),s=t(25),a=t(21),l=function(){function t(t,e){this.sender=t,this.name=e}return t.prototype.connect=function(t,e){void 0===e&&(e=null),u.has(this.sender)||u.set(this.sender,[]);var i=u.get(this.sender);if(null!=_(i,this,t,e))return!1;var n=e||t;c.has(n)||c.set(n,[]);var r=c.get(n),o={signal:this,slot:t,context:e};return i.push(o),r.push(o),!0},t.prototype.disconnect=function(t,e){void 0===e&&(e=null);var i=u.get(this.sender);if(null==i||0===i.length)return!1;var n=_(i,this,t,e);if(null==n)return!1;var r=e||t,o=c.get(r);return n.signal=null,d(i),d(o),!0},t.prototype.emit=function(t){for(var e=u.get(this.sender)||[],i=0,n=e;i<n.length;i++){var r=n[i],o=r.signal,s=r.slot,a=r.context;o===this&&s.call(a,t,this.sender)}},t}(),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r.__extends(e,t),e.prototype.emit=function(){t.prototype.emit.call(this,void 0)},e}(i.Signal=l);i.Signal0=h,(n=l=i.Signal||(i.Signal={})).disconnectBetween=function(t,e){var i=u.get(t);if(null!=i&&0!==i.length){var n=c.get(e);if(null!=n&&0!==n.length){for(var r=0,o=n;r<o.length;r++){var s=o[r];if(null==s.signal)return;s.signal.sender===t&&(s.signal=null)}d(i),d(n)}}},n.disconnectSender=function(t){var e=u.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null==r.signal)return;var o=r.context||r.slot;r.signal=null,d(c.get(o))}d(e)}},n.disconnectReceiver=function(t){var e=c.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null==r.signal)return;var o=r.signal.sender;r.signal=null,d(u.get(o))}d(e)}},n.disconnectAll=function(t){var e=u.get(t);if(null!=e&&0!==e.length){for(var i=0,n=e;i<n.length;i++){var r=n[i];r.signal=null}d(e)}var o=c.get(t);if(null!=o&&0!==o.length){for(var s=0,a=o;s<a.length;s++){var r=a[s];r.signal=null}d(o)}},i.Signal=l,i.Signalable=function(t){return null!=t?function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return r.__extends(e,t),e.prototype.connect=function(t,e){return t.connect(e,this)},e}(t):function(){function t(){}return t.prototype.connect=function(t,e){return t.connect(e,this)},t}()},(i._Signalable||(i._Signalable={})).connect=function(t,e){return t.connect(e,this)};var u=new WeakMap,c=new WeakMap;function _(t,e,i,n){return a.find(t,function(t){return t.signal===e&&t.slot===i&&t.context===n})}var p=new o.Set;function d(t){0===p.size&&s.defer(f),p.add(t)}function f(){p.forEach(function(t){a.removeBy(t,function(t){return null==t.signal})}),p.clear()}},function(t,e,d){var i=t(391),o=t(347),s=t(19),a=t(14),l=t(5),n=t(45),h=t(21),f=t(32),r=t(44),u=t(3);d.is_mobile=\"ontouchstart\"in window||0<navigator.maxTouchPoints;var c=function(){function t(t,e,i,n){var r=this;this.plot_view=t,this.toolbar=e,this.hit_area=i,this.plot=n,this.pan_start=new s.Signal(this,\"pan:start\"),this.pan=new s.Signal(this,\"pan\"),this.pan_end=new s.Signal(this,\"pan:end\"),this.pinch_start=new s.Signal(this,\"pinch:start\"),this.pinch=new s.Signal(this,\"pinch\"),this.pinch_end=new s.Signal(this,\"pinch:end\"),this.rotate_start=new s.Signal(this,\"rotate:start\"),this.rotate=new s.Signal(this,\"rotate\"),this.rotate_end=new s.Signal(this,\"rotate:end\"),this.tap=new s.Signal(this,\"tap\"),this.doubletap=new s.Signal(this,\"doubletap\"),this.press=new s.Signal(this,\"press\"),this.move_enter=new s.Signal(this,\"move:enter\"),this.move=new s.Signal(this,\"move\"),this.move_exit=new s.Signal(this,\"move:exit\"),this.scroll=new s.Signal(this,\"scroll\"),this.keydown=new s.Signal(this,\"keydown\"),this.keyup=new s.Signal(this,\"keyup\"),this.hammer=new o(this.hit_area),this._configure_hammerjs(),this.hit_area.addEventListener(\"mousemove\",function(t){return r._mouse_move(t)}),this.hit_area.addEventListener(\"mouseenter\",function(t){return r._mouse_enter(t)}),this.hit_area.addEventListener(\"mouseleave\",function(t){return r._mouse_exit(t)}),this.hit_area.addEventListener(\"wheel\",function(t){return r._mouse_wheel(t)}),document.addEventListener(\"keydown\",this),document.addEventListener(\"keyup\",this)}return t.prototype.destroy=function(){this.hammer.destroy(),document.removeEventListener(\"keydown\",this),document.removeEventListener(\"keyup\",this)},t.prototype.handleEvent=function(t){\"keydown\"==t.type?this._key_down(t):\"keyup\"==t.type&&this._key_up(t)},t.prototype._configure_hammerjs=function(){var e=this;this.hammer.get(\"doubletap\").recognizeWith(\"tap\"),this.hammer.get(\"tap\").requireFailure(\"doubletap\"),this.hammer.get(\"doubletap\").dropRequireFailure(\"tap\"),this.hammer.on(\"doubletap\",function(t){return e._doubletap(t)}),this.hammer.on(\"tap\",function(t){return e._tap(t)}),this.hammer.on(\"press\",function(t){return e._press(t)}),this.hammer.get(\"pan\").set({direction:o.DIRECTION_ALL}),this.hammer.on(\"panstart\",function(t){return e._pan_start(t)}),this.hammer.on(\"pan\",function(t){return e._pan(t)}),this.hammer.on(\"panend\",function(t){return e._pan_end(t)}),this.hammer.get(\"pinch\").set({enable:!0}),this.hammer.on(\"pinchstart\",function(t){return e._pinch_start(t)}),this.hammer.on(\"pinch\",function(t){return e._pinch(t)}),this.hammer.on(\"pinchend\",function(t){return e._pinch_end(t)}),this.hammer.get(\"rotate\").set({enable:!0}),this.hammer.on(\"rotatestart\",function(t){return e._rotate_start(t)}),this.hammer.on(\"rotate\",function(t){return e._rotate(t)}),this.hammer.on(\"rotateend\",function(t){return e._rotate_end(t)})},t.prototype.register_tool=function(i){var n=this,t=i.model.event_type;null!=t&&(r.isString(t)?this._register_tool(i,t):t.forEach(function(t,e){return n._register_tool(i,t,e<1)}))},t.prototype._register_tool=function(t,e,i){void 0===i&&(i=!0);var n=t,r=n.model.id,o=function(e){return function(t){t.id==r&&e(t.e)}},s=function(e){return function(t){e(t.e)}};switch(e){case\"pan\":null!=n._pan_start&&n.connect(this.pan_start,o(n._pan_start.bind(n))),null!=n._pan&&n.connect(this.pan,o(n._pan.bind(n))),null!=n._pan_end&&n.connect(this.pan_end,o(n._pan_end.bind(n)));break;case\"pinch\":null!=n._pinch_start&&n.connect(this.pinch_start,o(n._pinch_start.bind(n))),null!=n._pinch&&n.connect(this.pinch,o(n._pinch.bind(n))),null!=n._pinch_end&&n.connect(this.pinch_end,o(n._pinch_end.bind(n)));break;case\"rotate\":null!=n._rotate_start&&n.connect(this.rotate_start,o(n._rotate_start.bind(n))),null!=n._rotate&&n.connect(this.rotate,o(n._rotate.bind(n))),null!=n._rotate_end&&n.connect(this.rotate_end,o(n._rotate_end.bind(n)));break;case\"move\":null!=n._move_enter&&n.connect(this.move_enter,o(n._move_enter.bind(n))),null!=n._move&&n.connect(this.move,o(n._move.bind(n))),null!=n._move_exit&&n.connect(this.move_exit,o(n._move_exit.bind(n)));break;case\"tap\":null!=n._tap&&n.connect(this.tap,o(n._tap.bind(n)));break;case\"press\":null!=n._press&&n.connect(this.press,o(n._press.bind(n)));break;case\"scroll\":null!=n._scroll&&n.connect(this.scroll,o(n._scroll.bind(n)));break;default:throw new Error(\"unsupported event_type: \"+e)}i&&(null!=n._doubletap&&n.connect(this.doubletap,s(n._doubletap.bind(n))),null!=n._keydown&&n.connect(this.keydown,s(n._keydown.bind(n))),null!=n._keyup&&n.connect(this.keyup,s(n._keyup.bind(n))),d.is_mobile&&null!=n._scroll&&\"pinch\"==e&&(a.logger.debug(\"Registering scroll on touch screen\"),n.connect(this.scroll,o(n._scroll.bind(n)))))},t.prototype._hit_test_renderers=function(t,e){for(var i=this.plot_view.get_renderer_views(),n=0,r=h.reversed(i);n<r.length;n++){var o=r[n],s=o.model.level;if((\"annotation\"==s||\"overlay\"==s)&&null!=o.interactive_hit&&o.interactive_hit(t,e))return o}return null},t.prototype._hit_test_frame=function(t,e){return this.plot_view.frame.bbox.contains(t,e)},t.prototype._hit_test_canvas=function(t,e){return this.plot_view.canvas.bbox.contains(t,e)},t.prototype._trigger=function(e,i,t){var n=this,r=this.toolbar.gestures,o=e.name,s=o.split(\":\")[0],a=this._hit_test_renderers(i.sx,i.sy),l=this._hit_test_canvas(i.sx,i.sy);switch(s){case\"move\":var h=r[s].active;null!=h&&this.trigger(e,i,h.id);var u=this.toolbar.inspectors.filter(function(t){return t.active}),c=\"default\";null!=a?(c=a.cursor(i.sx,i.sy)||c,f.isEmpty(u)||(e=this.move_exit,o=e.name)):this._hit_test_frame(i.sx,i.sy)&&(f.isEmpty(u)||(c=\"crosshair\")),this.plot_view.set_cursor(c),this.plot_view.set_toolbar_visibility(l),u.map(function(t){return n.trigger(e,i,t.id)});break;case\"tap\":var _=t.target;if(null!=_&&_!=this.hit_area)return;null!=a&&null!=a.on_hit&&a.on_hit(i.sx,i.sy);var h=r[s].active;null!=h&&this.trigger(e,i,h.id);break;case\"scroll\":var p=d.is_mobile?\"pinch\":\"scroll\",h=r[p].active;null!=h&&(t.preventDefault(),t.stopPropagation(),this.trigger(e,i,h.id));break;default:var h=r[s].active;null!=h&&this.trigger(e,i,h.id)}this._trigger_bokeh_event(i)},t.prototype.trigger=function(t,e,i){void 0===i&&(i=null),t.emit({id:i,e:e})},t.prototype._trigger_bokeh_event=function(t){var e=u.BokehEvent.event_class(t);null!=e?this.plot.trigger_event(e.from_event(t)):a.logger.debug(\"Unhandled event of type \"+t.type)},t.prototype._get_sxy=function(t){var e,i=(e=t,\"undefined\"!=typeof TouchEvent&&e instanceof TouchEvent?(0!=t.touches.length?t.touches:t.changedTouches)[0]:t),n=i.pageX,r=i.pageY,o=l.offset(this.hit_area),s=o.left,a=o.top;return{sx:n-s,sy:r-a}},t.prototype._gesture_event=function(t){return i.__assign({type:t.type},this._get_sxy(t.srcEvent),{deltaX:t.deltaX,deltaY:t.deltaY,scale:t.scale,shiftKey:t.srcEvent.shiftKey})},t.prototype._tap_event=function(t){return i.__assign({type:t.type},this._get_sxy(t.srcEvent),{shiftKey:t.srcEvent.shiftKey})},t.prototype._move_event=function(t){return i.__assign({type:t.type},this._get_sxy(t))},t.prototype._scroll_event=function(t){return i.__assign({type:t.type},this._get_sxy(t),{delta:n.getDeltaY(t)})},t.prototype._key_event=function(t){return{type:t.type,keyCode:t.keyCode}},t.prototype._pan_start=function(t){var e=this._gesture_event(t);e.sx-=t.deltaX,e.sy-=t.deltaY,this._trigger(this.pan_start,e,t.srcEvent)},t.prototype._pan=function(t){this._trigger(this.pan,this._gesture_event(t),t.srcEvent)},t.prototype._pan_end=function(t){this._trigger(this.pan_end,this._gesture_event(t),t.srcEvent)},t.prototype._pinch_start=function(t){this._trigger(this.pinch_start,this._gesture_event(t),t.srcEvent)},t.prototype._pinch=function(t){this._trigger(this.pinch,this._gesture_event(t),t.srcEvent)},t.prototype._pinch_end=function(t){this._trigger(this.pinch_end,this._gesture_event(t),t.srcEvent)},t.prototype._rotate_start=function(t){this._trigger(this.rotate_start,this._gesture_event(t),t.srcEvent)},t.prototype._rotate=function(t){this._trigger(this.rotate,this._gesture_event(t),t.srcEvent)},t.prototype._rotate_end=function(t){this._trigger(this.rotate_end,this._gesture_event(t),t.srcEvent)},t.prototype._tap=function(t){this._trigger(this.tap,this._tap_event(t),t.srcEvent)},t.prototype._doubletap=function(t){var e=this._tap_event(t);this._trigger_bokeh_event(e),this.trigger(this.doubletap,e)},t.prototype._press=function(t){this._trigger(this.press,this._tap_event(t),t.srcEvent)},t.prototype._mouse_enter=function(t){this._trigger(this.move_enter,this._move_event(t),t)},t.prototype._mouse_move=function(t){this._trigger(this.move,this._move_event(t),t)},t.prototype._mouse_exit=function(t){this._trigger(this.move_exit,this._move_event(t),t)},t.prototype._mouse_wheel=function(t){this._trigger(this.scroll,this._scroll_event(t),t)},t.prototype._key_down=function(t){this.trigger(this.keydown,this._key_event(t))},t.prototype._key_up=function(t){this.trigger(this.keyup,this._key_event(t))},t}();d.UIEvents=c},function(t,e,n){var o=t(31),u=t(23),i=t(22);n.min=i.min,n.minBy=i.minBy,n.max=i.max,n.maxBy=i.maxBy,n.sum=i.sum;var r=Array.prototype.slice;function s(t){var e;return(e=[]).concat.apply(e,t)}function c(t,e){return-1!==t.indexOf(e)}function a(t,e,i){void 0===i&&(i=1),u.assert(0<i,\"'step' must be a positive number\"),null==e&&(e=t,t=0);for(var n=Math.max,r=Math.ceil,o=Math.abs,s=t<=e?i:-i,a=n(r(o(e-t)/i),0),l=Array(a),h=0;h<a;h++,t+=s)l[h]=t;return l}function l(r){return function(t,e){for(var i=t.length,n=0<r?0:i-1;0<=n&&n<i;n+=r)if(e(t[n]))return n;return-1}}function h(t){for(var e=[],i=0,n=t;i<n.length;i++){var r=n[i];c(e,r)||e.push(r)}return e}n.head=function(t){return t[0]},n.tail=function(t){return t[t.length-1]},n.last=function(t){return t[t.length-1]},n.copy=function(t){return r.call(t)},n.concat=s,n.includes=c,n.contains=c,n.nth=function(t,e){return t[0<=e?e:t.length+e]},n.zip=function(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=0;r<i;r++)n[r]=[t[r],e[r]];return n},n.unzip=function(t){for(var e,i=t.length,n=new Array(i),r=new Array(i),o=0;o<i;o++)e=t[o],n[o]=e[0],r[o]=e[1];return[n,r]},n.range=a,n.linspace=function(t,e,i){void 0===i&&(i=100);for(var n=(e-t)/(i-1),r=new Array(i),o=0;o<i;o++)r[o]=t+n*o;return r},n.transpose=function(t){for(var e=t.length,i=t[0].length,n=[],r=0;r<i;r++){n[r]=[];for(var o=0;o<e;o++)n[r][o]=t[o][r]}return n},n.cumsum=function(t){var n=[];return t.reduce(function(t,e,i){return n[i]=t+e},0),n},n.argmin=function(e){return i.minBy(a(e.length),function(t){return e[t]})},n.argmax=function(e){return i.maxBy(a(e.length),function(t){return e[t]})},n.all=function(t,e){for(var i=0,n=t;i<n.length;i++){var r=n[i];if(!e(r))return!1}return!0},n.any=function(t,e){for(var i=0,n=t;i<n.length;i++){var r=n[i];if(e(r))return!0}return!1},n.findIndex=l(1),n.findLastIndex=l(-1),n.find=function(t,e){var i=n.findIndex(t,e);return-1==i?void 0:t[i]},n.findLast=function(t,e){var i=n.findLastIndex(t,e);return-1==i?void 0:t[i]},n.sortedIndex=function(t,e){for(var i=0,n=t.length;i<n;){var r=Math.floor((i+n)/2);t[r]<e?i=r+1:n=r}return i},n.sortBy=function(t,i){var e=t.map(function(t,e){return{value:t,index:e,key:i(t)}});return e.sort(function(t,e){var i=t.key,n=e.key;if(i!==n){if(n<i||void 0===i)return 1;if(i<n||void 0===n)return-1}return t.index-e.index}),e.map(function(t){return t.value})},n.uniq=h,n.uniqBy=function(t,e){for(var i=[],n=[],r=0,o=t;r<o.length;r++){var s=o[r],a=e(s);c(n,a)||(n.push(a),i.push(s))}return i},n.union=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return h(s(t))},n.intersection=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=[];t:for(var r=0,o=t;r<o.length;r++){var s=o[r];if(!c(n,s)){for(var a=0,l=e;a<l.length;a++){var h=l[a];if(!c(h,s))continue t}n.push(s)}}return n},n.difference=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];var n=s(e);return t.filter(function(t){return!c(n,t)})},n.removeBy=function(t,e){for(var i=0;i<t.length;)e(t[i])?t.splice(i,1):i++},n.shuffle=function(t){for(var e=t.length,i=new Array(e),n=0;n<e;n++){var r=o.randomIn(0,n);r!==n&&(i[n]=i[r]),i[r]=t[n]}return i},n.pairwise=function(t,e){for(var i=t.length,n=new Array(i-1),r=0;r<i-1;r++)n[r]=e(t[r],t[r+1]);return n},n.reversed=function(t){for(var e=t.length,i=new Array(e),n=0;n<e;n++)i[e-n-1]=t[n];return i},n.repeat=function(t,e){for(var i=new Array(e),n=0;n<e;n++)i[n]=t;return i}},function(t,e,i){function n(t,e,i){for(var n=[],r=3;r<arguments.length;r++)n[r-3]=arguments[r];var o=t.length;e<0&&(e+=o),e<0?e=0:o<e&&(e=o),null==i||o-e<i?i=o-e:i<0&&(i=0);for(var s=o-i+n.length,a=new t.constructor(s),l=0;l<e;l++)a[l]=t[l];for(var h=0,u=n;h<u.length;h++){var c=u[h];a[l++]=c}for(var _=e+i;_<o;_++)a[l++]=t[_];return a}i.splice=n,i.insert=function(t,e,i){return n(t,i,0,e)},i.append=function(t,e){return n(t,t.length,0,e)},i.prepend=function(t,e){return n(t,0,0,e)},i.indexOf=function(t,e){for(var i=0,n=t.length;i<n;i++)if(t[i]===e)return i;return-1},i.map=function(t,e){for(var i=t.length,n=new t.constructor(i),r=0;r<i;r++)n[r]=e(t[r],r,t);return n},i.min=function(t){for(var e,i=1/0,n=0,r=t.length;n<r;n++)(e=t[n])<i&&(i=e);return i},i.minBy=function(t,e){if(0==t.length)throw new Error(\"minBy() called with an empty array\");for(var i=t[0],n=e(i),r=1,o=t.length;r<o;r++){var s=t[r],a=e(s);a<n&&(i=s,n=a)}return i},i.max=function(t){for(var e,i=-1/0,n=0,r=t.length;n<r;n++)e=t[n],i<e&&(i=e);return i},i.maxBy=function(t,e){if(0==t.length)throw new Error(\"maxBy() called with an empty array\");for(var i=t[0],n=e(i),r=1,o=t.length;r<o;r++){var s=t[r],a=e(s);n<a&&(i=s,n=a)}return i},i.sum=function(t){for(var e=0,i=0,n=t.length;i<n;i++)e+=t[i];return e}},function(t,e,i){var n=t(391),r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(Error);i.AssertionError=r,i.assert=function(t,e){if(!(!0===t||!1!==t&&t()))throw new r(e||\"Assertion failed\")}},function(t,e,i){var n=Math.min,r=Math.max;i.empty=function(){return{minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}},i.positive_x=function(){return{minX:Number.MIN_VALUE,minY:-1/0,maxX:1/0,maxY:1/0}},i.positive_y=function(){return{minX:-1/0,minY:Number.MIN_VALUE,maxX:1/0,maxY:1/0}},i.union=function(t,e){return{minX:n(t.minX,e.minX),maxX:r(t.maxX,e.maxX),minY:n(t.minY,e.minY),maxY:r(t.maxY,e.maxY)}};var o=function(){function e(t){if(\"x0\"in t&&\"y0\"in t&&\"x1\"in t&&\"y1\"in t){var e=t,i=e.x0,n=e.y0,r=e.x1,o=e.y1;if(!(i<=r&&n<=o))throw new Error(\"invalid bbox {x0: \"+i+\", y0: \"+n+\", x1: \"+r+\", y1: \"+o+\"}\");this.x0=i,this.y0=n,this.x1=r,this.y1=o}else{var s=t,a=s.x,l=s.y,h=s.width,u=s.height;if(!(0<=h&&0<=u))throw new Error(\"invalid bbox {x: \"+a+\", y: \"+l+\", width: \"+h+\", height: \"+u+\"}\");this.x0=a,this.y0=l,this.x1=a+h,this.y1=l+u}}return Object.defineProperty(e.prototype,\"minX\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"minY\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"maxX\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"maxY\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"left\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"top\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"right\",{get:function(){return this.x1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"bottom\",{get:function(){return this.y1},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"p0\",{get:function(){return[this.x0,this.y0]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"p1\",{get:function(){return[this.x1,this.y1]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"x\",{get:function(){return this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"y\",{get:function(){return this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"width\",{get:function(){return this.x1-this.x0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"height\",{get:function(){return this.y1-this.y0},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"rect\",{get:function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"h_range\",{get:function(){return{start:this.x0,end:this.x1}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"v_range\",{get:function(){return{start:this.y0,end:this.y1}},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"ranges\",{get:function(){return[this.h_range,this.v_range]},enumerable:!0,configurable:!0}),Object.defineProperty(e.prototype,\"aspect\",{get:function(){return this.width/this.height},enumerable:!0,configurable:!0}),e.prototype.contains=function(t,e){return t>=this.x0&&t<=this.x1&&e>=this.y0&&e<=this.y1},e.prototype.clip=function(t,e){return t<this.x0?t=this.x0:t>this.x1&&(t=this.x1),e<this.y0?e=this.y0:e>this.y1&&(e=this.y1),[t,e]},e.prototype.union=function(t){return new e({x0:n(this.x0,t.x0),y0:n(this.y0,t.y0),x1:r(this.x1,t.x1),y1:r(this.y1,t.y1)})},e}();i.BBox=o},function(t,e,i){i.delay=function(t,e){return setTimeout(t,e)};var n=\"function\"==typeof requestAnimationFrame?requestAnimationFrame:setImmediate;i.defer=function(t){return n(t)},i.throttle=function(i,n,r){void 0===r&&(r={});var o,s,a,l=null,h=0,u=function(){h=!1===r.leading?0:Date.now(),l=null,a=i.apply(o,s),l||(o=s=null)};return function(){var t=Date.now();h||!1!==r.leading||(h=t);var e=n-(t-h);return o=this,s=arguments,e<=0||n<e?(l&&(clearTimeout(l),l=null),h=t,a=i.apply(o,s),l||(o=s=null)):l||!1===r.trailing||(l=setTimeout(u,e)),a}},i.once=function(t){var e,i=!1;return function(){return i||(i=!0,e=t()),e}}},function(t,e,i){var n=t(287);i.SVGRenderingContext2D=n,i.fixup_ctx=function(t){var e,c,i,n,r;(e=t).setLineDash||(e.setLineDash=function(t){e.mozDash=t,e.webkitLineDash=t}),e.getLineDash||(e.getLineDash=function(){return e.mozDash}),(r=t).setLineDashOffset=function(t){r.lineDashOffset=t,r.mozDashOffset=t,r.webkitLineDashOffset=t},r.getLineDashOffset=function(){return r.mozDashOffset},(n=t).setImageSmoothingEnabled=function(t){n.imageSmoothingEnabled=t,n.mozImageSmoothingEnabled=t,n.oImageSmoothingEnabled=t,n.webkitImageSmoothingEnabled=t,n.msImageSmoothingEnabled=t},n.getImageSmoothingEnabled=function(){var t=n.imageSmoothingEnabled;return null==t||t},(i=t).measureText&&null==i.html5MeasureText&&(i.html5MeasureText=i.measureText,i.measureText=function(t){var e=i.html5MeasureText(t);return e.ascent=1.6*i.html5MeasureText(\"m\").width,e}),(c=t).ellipse||(c.ellipse=function(t,e,i,n,r,o,s,a){void 0===a&&(a=!1);var l=.551784;c.translate(t,e),c.rotate(r);var h=i,u=n;a&&(h=-i,u=-n),c.moveTo(-h,0),c.bezierCurveTo(-h,u*l,-h*l,u,0,u),c.bezierCurveTo(h*l,u,h,u*l,h,0),c.bezierCurveTo(h,-u*l,h*l,-u,0,-u),c.bezierCurveTo(-h*l,-u,-h,-u*l,-h,0),c.rotate(-r),c.translate(-t,-e)})},i.get_scale_ratio=function(t,e,i){if(\"svg\"==i)return 1;if(e){var n=window.devicePixelRatio||1,r=t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1;return n/r}return 1}},function(t,e,i){var n=t(39),r=t(21);function o(t){var e=Number(t).toString(16);return 1==e.length?\"0\"+e:e}function s(t){if(0==(t+=\"\").indexOf(\"#\"))return t;if(n.is_svg_color(t))return n.svg_colors[t];if(0==t.indexOf(\"rgb\")){var e=t.replace(/^rgba?\\(|\\s+|\\)$/g,\"\").split(\",\"),i=e.slice(0,3).map(o).join(\"\");return 4==e.length&&(i+=o(Math.floor(255*parseFloat(e[3])))),\"#\"+i.slice(0,8)}return t}i.color2hex=s,i.color2rgba=function(t,e){if(void 0===e&&(e=1),!t)return[0,0,0,0];var i=s(t);(i=i.replace(/ |#/g,\"\")).length<=4&&(i=i.replace(/(.)/g,\"$1$1\"));for(var n=i.match(/../g).map(function(t){return parseInt(t,16)/255});n.length<3;)n.push(0);return n.length<4&&n.push(e),n.slice(0,4)},i.valid_rgb=function(t){var e;switch(t.substring(0,4)){case\"rgba\":e={start:\"rgba(\",len:4,alpha:!0};break;case\"rgb(\":e={start:\"rgb(\",len:3,alpha:!1};break;default:return!1}if(new RegExp(\".*?(\\\\.).*(,)\").test(t))throw new Error(\"color expects integers for rgb in rgb/rgba tuple, received \"+t);var i=t.replace(e.start,\"\").replace(\")\",\"\").split(\",\").map(parseFloat);if(i.length!=e.len)throw new Error(\"color expects rgba \"+e.len+\"-tuple, received \"+t);if(e.alpha&&!(0<=i[3]&&i[3]<=1))throw new Error(\"color expects rgba 4-tuple to have alpha value between 0 and 1\");if(r.includes(i.slice(0,3).map(function(t){return 0<=t&&t<=255}),!1))throw new Error(\"color expects rgb to have value between 0 and 255\");return!0}},function(t,e,i){i.is_ie=0<=navigator.userAgent.indexOf(\"MSIE\")||0<navigator.userAgent.indexOf(\"Trident\")||0<navigator.userAgent.indexOf(\"Edge\"),i.is_little_endian=function(){var t=new ArrayBuffer(4),e=new Uint8Array(t),i=new Uint32Array(t);i[1]=168496141;var n=!0;return 10==e[4]&&11==e[5]&&12==e[6]&&13==e[7]&&(n=!1),n}()},function(t,e,i){var r=t(21),o=t(30),s=t(44),n=function(){function t(){this._dict={}}return t.prototype._existing=function(t){return t in this._dict?this._dict[t]:null},t.prototype.add_value=function(t,e){var i=this._existing(t);null==i?this._dict[t]=e:s.isArray(i)?i.push(e):this._dict[t]=[i,e]},t.prototype.remove_value=function(t,e){var i=this._existing(t);if(s.isArray(i)){var n=r.difference(i,[e]);0<n.length?this._dict[t]=n:delete this._dict[t]}else o.isEqual(i,e)&&delete this._dict[t]},t.prototype.get_one=function(t,e){var i=this._existing(t);if(s.isArray(i)){if(1===i.length)return i[0];throw new Error(e)}return i},t}();i.MultiDict=n;var a=function(){function o(t){if(null==t)this._values=[];else if(t instanceof o)this._values=r.copy(t._values);else{this._values=[];for(var e=0,i=t;e<i.length;e++){var n=i[e];this.add(n)}}}return Object.defineProperty(o.prototype,\"values\",{get:function(){return r.copy(this._values).sort()},enumerable:!0,configurable:!0}),o.prototype.toString=function(){return\"Set([\"+this.values.join(\",\")+\"])\"},Object.defineProperty(o.prototype,\"size\",{get:function(){return this._values.length},enumerable:!0,configurable:!0}),o.prototype.has=function(t){return-1!==this._values.indexOf(t)},o.prototype.add=function(t){this.has(t)||this._values.push(t)},o.prototype.remove=function(t){var e=this._values.indexOf(t);-1!==e&&this._values.splice(e,1)},o.prototype.toggle=function(t){var e=this._values.indexOf(t);-1===e?this._values.push(t):this._values.splice(e,1)},o.prototype.clear=function(){this._values=[]},o.prototype.union=function(t){return t=new o(t),new o(this._values.concat(t._values))},o.prototype.intersect=function(t){t=new o(t);for(var e=new o,i=0,n=t._values;i<n.length;i++){var r=n[i];this.has(r)&&t.has(r)&&e.add(r)}return e},o.prototype.diff=function(t){t=new o(t);for(var e=new o,i=0,n=this._values;i<n.length;i++){var r=n[i];t.has(r)||e.add(r)}return e},o.prototype.forEach=function(t,e){for(var i=0,n=this._values;i<n.length;i++){var r=n[i];t.call(e||this,r,r,this)}},o}();i.Set=a},function(t,e,i){var _=t(44),p=Object.prototype.toString;i.isEqual=function(t,e){return function t(e,i,n,r){if(e===i)return 0!==e||1/e==1/i;if(null==e||null==i)return e===i;var o=p.call(e);if(o!==p.call(i))return!1;switch(o){case\"[object RegExp]\":case\"[object String]\":return\"\"+e==\"\"+i;case\"[object Number]\":return+e!=+e?+i!=+i:0==+e?1/+e==1/i:+e==+i;case\"[object Date]\":case\"[object Boolean]\":return+e==+i}var s=\"[object Array]\"===o;if(!s){if(\"object\"!=typeof e||\"object\"!=typeof i)return!1;var a=e.constructor,l=i.constructor;if(a!==l&&!(_.isFunction(a)&&a instanceof a&&_.isFunction(l)&&l instanceof l)&&\"constructor\"in e&&\"constructor\"in i)return!1}r=r||[];for(var h=(n=n||[]).length;h--;)if(n[h]===e)return r[h]===i;if(n.push(e),r.push(i),s){if((h=e.length)!==i.length)return!1;for(;h--;)if(!t(e[h],i[h],n,r))return!1}else{var u=Object.keys(e),c=void 0;if(h=u.length,Object.keys(i).length!==h)return!1;for(;h--;)if(c=u[h],!i.hasOwnProperty(c)||!t(e[c],i[c],n,r))return!1}return n.pop(),r.pop(),!0}(t,e)}},function(t,e,i){function a(t){for(;t<0;)t+=2*Math.PI;for(;t>2*Math.PI;)t-=2*Math.PI;return t}function l(t,e){return Math.abs(a(t-e))}function o(){return Math.random()}i.angle_norm=a,i.angle_dist=l,i.angle_between=function(t,e,i,n){var r=a(t),o=l(e,i),s=l(e,r)<=o&&l(r,i)<=o;return 1==n?!s:s},i.random=o,i.randomIn=function(t,e){return null==e&&(e=t,t=0),t+Math.floor(Math.random()*(e-t+1))},i.atan2=function(t,e){return Math.atan2(e[1]-t[1],e[0]-t[0])},i.rnorm=function(t,e){for(var i,n;i=o(),n=(2*(n=o())-1)*Math.sqrt(1/Math.E*2),!(-4*i*i*Math.log(i)>=n*n););var r=n/i;return r=t+e*r},i.clamp=function(t,e,i){return i<t?i:t<e?e:t}},function(t,e,i){var n=t(391),h=t(21);function r(t,e){return n.__assign(t,e)}function o(t){return Object.keys(t).length}i.keys=Object.keys,i.values=function(t){for(var e=Object.keys(t),i=e.length,n=new Array(i),r=0;r<i;r++)n[r]=t[e[r]];return n},i.extend=r,i.clone=function(t){return r({},t)},i.merge=function(t,e){for(var i=Object.create(Object.prototype),n=h.concat([Object.keys(t),Object.keys(e)]),r=0,o=n;r<o.length;r++){var s=o[r],a=t.hasOwnProperty(s)?t[s]:[],l=e.hasOwnProperty(s)?e[s]:[];i[s]=h.union(a,l)}return i},i.size=o,i.isEmpty=function(t){return 0===o(t)}},function(t,e,h){var i=t(374),n=t(362),r=new n(\"GOOGLE\"),o=new n(\"WGS84\");h.wgs84_mercator=i(o,r);var s={lon:[-20026376.39,20026376.39],lat:[-20048966.1,20048966.1]},a={lon:[-180,180],lat:[-85.06,85.06]};function u(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=new Array(i),o=0;o<i;o++){var s=h.wgs84_mercator.forward([t[o],e[o]]),a=s[0],l=s[1];n[o]=a,r[o]=l}return[n,r]}h.clip_mercator=function(t,e,i){var n=s[i],r=n[0],o=n[1];return[Math.max(t,r),Math.min(e,o)]},h.in_bounds=function(t,e){return t>a[e][0]&&t<a[e][1]},h.project_xy=u,h.project_xsys=function(t,e){for(var i=Math.min(t.length,e.length),n=new Array(i),r=new Array(i),o=0;o<i;o++){var s=u(t[o],e[o]),a=s[0],l=s[1];n[o]=a,r[o]=l}return[n,r]}},function(t,e,i){var n=t(44);i.create_ref=function(t){var e={type:t.type,id:t.id};return null!=t._subtype&&(e.subtype=t._subtype),e},i.is_ref=function(t){if(n.isObject(t)){var e=Object.keys(t).sort();if(2==e.length)return\"id\"==e[0]&&\"type\"==e[1];if(3==e.length)return\"id\"==e[0]&&\"subtype\"==e[1]&&\"type\"==e[2]}return!1}},function(t,e,i){i.get_indices=function(t){var e=t.selected;return e[\"0d\"].glyph?e[\"0d\"].indices:0<e[\"1d\"].indices.length?e[\"1d\"].indices:0<e[\"2d\"].indices.length?e[\"2d\"].indices:[]}},function(t,e,u){var _=t(44),i=t(28);function c(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,2*t.length),i=0,n=e.length;i<n;i+=2){var r=e[i];e[i]=e[i+1],e[i+1]=r}}function p(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,4*t.length),i=0,n=e.length;i<n;i+=4){var r=e[i];e[i]=e[i+3],e[i+3]=r,r=e[i+1],e[i+1]=e[i+2],e[i+2]=r}}function d(t){for(var e=new Uint8Array(t.buffer,t.byteOffset,8*t.length),i=0,n=e.length;i<n;i+=8){var r=e[i];e[i]=e[i+7],e[i+7]=r,r=e[i+1],e[i+1]=e[i+6],e[i+6]=r,r=e[i+2],e[i+2]=e[i+5],e[i+5]=r,r=e[i+3],e[i+3]=e[i+4],e[i+4]=r}}function n(t,e){for(var i=t.order!==u.BYTE_ORDER,n=t.shape,r=null,o=0,s=e;o<s.length;o++){var a=s[o],l=JSON.parse(a[0]);if(l.id===t.__buffer__){r=a[1];break}}var h=new u.ARRAY_TYPES[t.dtype](r);return i&&(2===h.BYTES_PER_ELEMENT?c(h):4===h.BYTES_PER_ELEMENT?p(h):8===h.BYTES_PER_ELEMENT&&d(h)),[h,n]}function f(t,e){return _.isObject(t)&&\"__ndarray__\"in t?o(t):_.isObject(t)&&\"__buffer__\"in t?n(t,e):_.isArray(t)||_.isTypedArray(t)?[t,[]]:void 0}function s(t){var e=new Uint8Array(t),i=Array.from(e).map(function(t){return String.fromCharCode(t)});return btoa(i.join(\"\"))}function r(t){for(var e=atob(t),i=e.length,n=new Uint8Array(i),r=0,o=i;r<o;r++)n[r]=e.charCodeAt(r);return n.buffer}function o(t){var e=r(t.__ndarray__),i=t.dtype,n=t.shape;if(!(i in u.ARRAY_TYPES))throw new Error(\"unknown dtype: \"+i);return[new u.ARRAY_TYPES[i](e),n]}function a(t,e){var i,n=s(t.buffer),r=function(t){if(\"name\"in t.constructor)return t.constructor.name;switch(!0){case t instanceof Uint8Array:return\"Uint8Array\";case t instanceof Int8Array:return\"Int8Array\";case t instanceof Uint16Array:return\"Uint16Array\";case t instanceof Int16Array:return\"Int16Array\";case t instanceof Uint32Array:return\"Uint32Array\";case t instanceof Int32Array:return\"Int32Array\";case t instanceof Float32Array:return\"Float32Array\";case t instanceof Float64Array:return\"Float64Array\";default:throw new Error(\"unsupported typed array\")}}(t);if(!(r in u.DTYPES))throw new Error(\"unknown array type: \"+r);i=u.DTYPES[r];var o={__ndarray__:n,shape:e,dtype:i};return o}function v(t,e){if(0==t.length||!_.isObject(t[0])&&!_.isArray(t[0]))return[t,[]];for(var i=[],n=[],r=0,o=t;r<o.length;r++){var s=o[r],a=_.isArray(s)?v(s,e):f(s,e),l=a[0],h=a[1];i.push(l),n.push(h)}var u=n.map(function(t){return t.filter(function(t){return 0!=t.length})});return[i,u]}function l(t,e){for(var i=[],n=0,r=t.length;n<r;n++){var o=t[n];if(_.isTypedArray(o)){var s=e[n]?e[n]:void 0;i.push(a(o,s))}else _.isArray(o)?i.push(l(o,e?e[n]:[])):i.push(o)}return i}u.ARRAY_TYPES={uint8:Uint8Array,int8:Int8Array,uint16:Uint16Array,int16:Int16Array,uint32:Uint32Array,int32:Int32Array,float32:Float32Array,float64:Float64Array},u.DTYPES={Uint8Array:\"uint8\",Int8Array:\"int8\",Uint16Array:\"uint16\",Int16Array:\"int16\",Uint32Array:\"uint32\",Int32Array:\"int32\",Float32Array:\"float32\",Float64Array:\"float64\"},u.BYTE_ORDER=i.is_little_endian?\"little\":\"big\",u.swap16=c,u.swap32=p,u.swap64=d,u.process_buffer=n,u.process_array=f,u.arrayBufferToBase64=s,u.base64ToArrayBuffer=r,u.decode_base64=o,u.encode_base64=a,u.decode_column_data=function(t,e){void 0===e&&(e=[]);var i={},n={};for(var r in t){var o=t[r];if(_.isArray(o)){if(0==o.length||!_.isObject(o[0])&&!_.isArray(o[0])){i[r]=o;continue}var s=v(o,e),a=s[0],l=s[1];i[r]=a,n[r]=l}else{var h=f(o,e),u=h[0],c=h[1];i[r]=u,n[r]=c}}return[i,n]},u.encode_column_data=function(t,e){var i={};for(var n in t){var r=t[n],o=null!=e?e[n]:void 0,s=void 0;s=_.isTypedArray(r)?a(r,o):_.isArray(r)?l(r,o||[]):r,i[n]=s}return i}},function(t,e,i){var l=t(346),o=t(24),n=function(){function t(t){if(this.points=t,this.index=null,0<t.length){this.index=new l(t.length);for(var e=0,i=t;e<i.length;e++){var n=i[e],r=n.minX,o=n.minY,s=n.maxX,a=n.maxY;this.index.add(r,o,s,a)}this.index.finish()}}return Object.defineProperty(t.prototype,\"bbox\",{get:function(){if(null==this.index)return o.empty();var t=this.index,e=t.minX,i=t.minY,n=t.maxX,r=t.maxY;return{minX:e,minY:i,maxX:n,maxY:r}},enumerable:!0,configurable:!0}),t.prototype.search=function(t){var e=this;if(null==this.index)return[];var i=t.minX,n=t.minY,r=t.maxX,o=t.maxY,s=this.index.search(i,n,r,o);return s.map(function(t){return e.points[t]})},t.prototype.indices=function(t){return this.search(t).map(function(t){var e=t.i;return e})},t}();i.SpatialIndex=n},function(t,e,i){var n=t(18);function r(){for(var t=new Array(32),e=\"0123456789ABCDEF\",i=0;i<32;i++)t[i]=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(\"\")}i.startsWith=function(t,e,i){return void 0===i&&(i=0),t.substr(i,e.length)==e},i.uuid4=r;var o=1e3;i.uniqueId=function(t){var e=n.settings.dev?\"j\"+o++:r();return null!=t?t+\"-\"+e:e},i.escape=function(t){return t.replace(/(?:[&<>\"'`])/g,function(t){switch(t){case\"&\":return\"&amp;\";case\"<\":return\"&lt;\";case\">\":return\"&gt;\";case'\"':return\"&quot;\";case\"'\":return\"&#x27;\";case\"`\":return\"&#x60;\";default:return t}})},i.unescape=function(t){return t.replace(/&(amp|lt|gt|quot|#x27|#x60);/g,function(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}})},i.use_strict=function(t){return\"'use strict';\\n\"+t}},function(t,e,i){i.svg_colors={indianred:\"#CD5C5C\",lightcoral:\"#F08080\",salmon:\"#FA8072\",darksalmon:\"#E9967A\",lightsalmon:\"#FFA07A\",crimson:\"#DC143C\",red:\"#FF0000\",firebrick:\"#B22222\",darkred:\"#8B0000\",pink:\"#FFC0CB\",lightpink:\"#FFB6C1\",hotpink:\"#FF69B4\",deeppink:\"#FF1493\",mediumvioletred:\"#C71585\",palevioletred:\"#DB7093\",coral:\"#FF7F50\",tomato:\"#FF6347\",orangered:\"#FF4500\",darkorange:\"#FF8C00\",orange:\"#FFA500\",gold:\"#FFD700\",yellow:\"#FFFF00\",lightyellow:\"#FFFFE0\",lemonchiffon:\"#FFFACD\",lightgoldenrodyellow:\"#FAFAD2\",papayawhip:\"#FFEFD5\",moccasin:\"#FFE4B5\",peachpuff:\"#FFDAB9\",palegoldenrod:\"#EEE8AA\",khaki:\"#F0E68C\",darkkhaki:\"#BDB76B\",lavender:\"#E6E6FA\",thistle:\"#D8BFD8\",plum:\"#DDA0DD\",violet:\"#EE82EE\",orchid:\"#DA70D6\",fuchsia:\"#FF00FF\",magenta:\"#FF00FF\",mediumorchid:\"#BA55D3\",mediumpurple:\"#9370DB\",blueviolet:\"#8A2BE2\",darkviolet:\"#9400D3\",darkorchid:\"#9932CC\",darkmagenta:\"#8B008B\",purple:\"#800080\",indigo:\"#4B0082\",slateblue:\"#6A5ACD\",darkslateblue:\"#483D8B\",mediumslateblue:\"#7B68EE\",greenyellow:\"#ADFF2F\",chartreuse:\"#7FFF00\",lawngreen:\"#7CFC00\",lime:\"#00FF00\",limegreen:\"#32CD32\",palegreen:\"#98FB98\",lightgreen:\"#90EE90\",mediumspringgreen:\"#00FA9A\",springgreen:\"#00FF7F\",mediumseagreen:\"#3CB371\",seagreen:\"#2E8B57\",forestgreen:\"#228B22\",green:\"#008000\",darkgreen:\"#006400\",yellowgreen:\"#9ACD32\",olivedrab:\"#6B8E23\",olive:\"#808000\",darkolivegreen:\"#556B2F\",mediumaquamarine:\"#66CDAA\",darkseagreen:\"#8FBC8F\",lightseagreen:\"#20B2AA\",darkcyan:\"#008B8B\",teal:\"#008080\",aqua:\"#00FFFF\",cyan:\"#00FFFF\",lightcyan:\"#E0FFFF\",paleturquoise:\"#AFEEEE\",aquamarine:\"#7FFFD4\",turquoise:\"#40E0D0\",mediumturquoise:\"#48D1CC\",darkturquoise:\"#00CED1\",cadetblue:\"#5F9EA0\",steelblue:\"#4682B4\",lightsteelblue:\"#B0C4DE\",powderblue:\"#B0E0E6\",lightblue:\"#ADD8E6\",skyblue:\"#87CEEB\",lightskyblue:\"#87CEFA\",deepskyblue:\"#00BFFF\",dodgerblue:\"#1E90FF\",cornflowerblue:\"#6495ED\",royalblue:\"#4169E1\",blue:\"#0000FF\",mediumblue:\"#0000CD\",darkblue:\"#00008B\",navy:\"#000080\",midnightblue:\"#191970\",cornsilk:\"#FFF8DC\",blanchedalmond:\"#FFEBCD\",bisque:\"#FFE4C4\",navajowhite:\"#FFDEAD\",wheat:\"#F5DEB3\",burlywood:\"#DEB887\",tan:\"#D2B48C\",rosybrown:\"#BC8F8F\",sandybrown:\"#F4A460\",goldenrod:\"#DAA520\",darkgoldenrod:\"#B8860B\",peru:\"#CD853F\",chocolate:\"#D2691E\",saddlebrown:\"#8B4513\",sienna:\"#A0522D\",brown:\"#A52A2A\",maroon:\"#800000\",white:\"#FFFFFF\",snow:\"#FFFAFA\",honeydew:\"#F0FFF0\",mintcream:\"#F5FFFA\",azure:\"#F0FFFF\",aliceblue:\"#F0F8FF\",ghostwhite:\"#F8F8FF\",whitesmoke:\"#F5F5F5\",seashell:\"#FFF5EE\",beige:\"#F5F5DC\",oldlace:\"#FDF5E6\",floralwhite:\"#FFFAF0\",ivory:\"#FFFFF0\",antiquewhite:\"#FAEBD7\",linen:\"#FAF0E6\",lavenderblush:\"#FFF0F5\",mistyrose:\"#FFE4E1\",gainsboro:\"#DCDCDC\",lightgray:\"#D3D3D3\",lightgrey:\"#D3D3D3\",silver:\"#C0C0C0\",darkgray:\"#A9A9A9\",darkgrey:\"#A9A9A9\",gray:\"#808080\",grey:\"#808080\",dimgray:\"#696969\",dimgrey:\"#696969\",lightslategray:\"#778899\",lightslategrey:\"#778899\",slategray:\"#708090\",slategrey:\"#708090\",darkslategray:\"#2F4F4F\",darkslategrey:\"#2F4F4F\",black:\"#000000\"},i.is_svg_color=function(t){return t in i.svg_colors}},function(t,e,s){var r=t(389),n=t(361),o=t(390),_=t(38),a=t(44);function l(t,e,i){if(a.isNumber(t)){var n=function(){switch(!1){case Math.floor(t)!=t:return\"%d\";case!(.1<Math.abs(t)&&Math.abs(t)<1e3):return\"%0.3f\";default:return\"%0.3e\"}}();return r.sprintf(n,t)}return\"\"+t}function p(t,e,i,n){if(null==i)return l;if(null!=n&&(t in n||e in n)){var r=e in n?e:t,o=n[r];if(a.isString(o)){if(o in s.DEFAULT_FORMATTERS)return s.DEFAULT_FORMATTERS[o];throw new Error(\"Unknown tooltip field formatter type '\"+o+\"'\")}return function(t,e,i){return o.format(t,e,i)}}return s.DEFAULT_FORMATTERS.numeral}function d(t,e,i,n){if(\"$\"==t[0]){if(t.substring(1)in n)return n[t.substring(1)];throw new Error(\"Unknown special variable '\"+t+\"'\")}var r=e.get_column(t);if(null==r)return null;if(a.isNumber(i))return r[i];var o=r[i.index];if(a.isTypedArray(o)||a.isArray(o)){if(a.isArray(o[0])){var s=o[i.dim2];return s[i.dim1]}return o[i.flat_index]}return o}s.DEFAULT_FORMATTERS={numeral:function(t,e,i){return n.format(t,e)},datetime:function(t,e,i){return o(t,e)},printf:function(t,e,i){return r.sprintf(e,t)}},s.basic_formatter=l,s.get_formatter=p,s.get_value=d,s.replace_placeholders=function(t,a,l,h,u){void 0===u&&(u={});var c=t.replace(/(?:^|[^@])([@|\\$](?:\\w+|{[^{}]+}))(?:{[^{}]+})?/g,function(t,e,i){return\"\"+e});return t=(t=(t=t.replace(/@\\$name/g,function(t){return\"@{\"+u.name+\"}\"})).replace(/(^|[^\\$])\\$(\\w+)/g,function(t,e,i){return e+\"@$\"+i})).replace(/(^|[^@])@(?:(\\$?\\w+)|{([^{}]+)})(?:{([^{}]+)})?/g,function(t,e,i,n,r){var o=d(i=null!=n?n:i,a,l,u);if(null==o)return\"\"+e+_.escape(\"???\");if(\"safe\"==r)return\"\"+e+o;var s=p(i,c,r,h);return\"\"+e+_.escape(s(o,r,u))})}},function(t,e,i){var a=t(5),l={};i.get_text_height=function(t){if(null!=l[t])return l[t];var e=a.span({style:{font:t}},\"Hg\"),i=a.div({style:{display:\"inline-block\",width:\"1px\",height:\"0px\"}}),n=a.div({},e,i);document.body.appendChild(n);try{i.style.verticalAlign=\"baseline\";var r=a.offset(i).top-a.offset(e).top;i.style.verticalAlign=\"bottom\";var o=a.offset(i).top-a.offset(e).top,s={height:o,ascent:r,descent:o-r};return l[t]=s}finally{document.body.removeChild(n)}}},function(t,e,i){var a=(\"undefined\"!=typeof window?window.requestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.webkitRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.mozRequestAnimationFrame:void 0)||(\"undefined\"!=typeof window?window.msRequestAnimationFrame:void 0)||function(t){return t(Date.now()),-1};i.throttle=function(t,i){var n=null,r=0,o=!1,s=function(){r=Date.now(),n=null,o=!1,t()};return function(){var t=Date.now(),e=i-(t-r);e<=0&&!o?(null!=n&&clearTimeout(n),o=!0,a(s)):n||o||(n=setTimeout(function(){return a(s)},e))}}},function(t,e,i){i.concat=function(t){for(var e=[],i=1;i<arguments.length;i++)e[i-1]=arguments[i];for(var n=t.length,r=0,o=e;r<o.length;r++){var s=o[r];n+=s.length}var a=new t.constructor(n);a.set(t,0);for(var l=t.length,h=0,u=e;h<u.length;h++){var s=u[h];a.set(s,l),l+=s.length}return a}},function(t,e,i){var n=t(21),r=Object.prototype.toString;function o(t){return\"[object Number]\"===r.call(t)}function s(t){var e=typeof t;return\"function\"===e||\"object\"===e&&!!t}i.isBoolean=function(t){return!0===t||!1===t||\"[object Boolean]\"===r.call(t)},i.isNumber=o,i.isInteger=function(t){return o(t)&&isFinite(t)&&Math.floor(t)===t},i.isString=function(t){return\"[object String]\"===r.call(t)},i.isStrictNaN=function(t){return o(t)&&t!==+t},i.isFunction=function(t){return\"[object Function]\"===r.call(t)},i.isArray=function(t){return Array.isArray(t)},i.isArrayOf=function(t,e){return n.all(t,e)},i.isArrayableOf=function(t,e){for(var i=0,n=t.length;i<n;i++)if(!e(t[i]))return!1;return!0},i.isTypedArray=function(t){return null!=t&&null!=t.buffer&&t.buffer instanceof ArrayBuffer},i.isObject=s,i.isPlainObject=function(t){return s(t)&&(null==t.constructor||t.constructor===Object)}},function(t,e,i){function n(t){var e=getComputedStyle(t).fontSize;return null!=e?parseInt(e,10):null}i.getDeltaY=function(t){var e,i=-t.deltaY;if(t.target instanceof HTMLElement)switch(t.deltaMode){case t.DOM_DELTA_LINE:i*=n((e=t.target).offsetParent||document.body)||n(e)||16;break;case t.DOM_DELTA_PAGE:i*=t.target.clientHeight}return i}},function(t,e,i){var f=t(31);function v(t,e,i){var n=[t.start,t.end],r=n[0],o=n[1],s=null!=i?i:(o+r)/2,a=r-(r-s)*e,l=o-(o-s)*e;return[a,l]}function m(t,e){var i=e[0],n=e[1],r={};for(var o in t){var s=t[o],a=s.r_invert(i,n),l=a[0],h=a[1];r[o]={start:l,end:h}}return r}i.scale_highlow=v,i.get_info=m,i.scale_range=function(t,e,i,n,r){void 0===i&&(i=!0),void 0===n&&(n=!0),e=f.clamp(e,-.9,.9);var o=i?e:0,s=v(t.bbox.h_range,o,null!=r?r.x:void 0),a=s[0],l=s[1],h=m(t.xscales,[a,l]),u=n?e:0,c=v(t.bbox.v_range,u,null!=r?r.y:void 0),_=c[0],p=c[1],d=m(t.yscales,[_,p]);return{xrs:h,yrs:d,factor:e}}},function(t,e,i){var n=t(44);i.isValue=function(t){return n.isObject(t)&&\"value\"in t},i.isField=function(t){return n.isObject(t)&&\"field\"in t}},function(t,e,i){var n=t(391),r=t(19),o=t(38),s=function(i){function t(t){var e=i.call(this)||this;if(e.removed=new r.Signal0(e,\"removed\"),null==t.model)throw new Error(\"model of a view wasn't configured\");return e.model=t.model,e._parent=t.parent,e.id=t.id||o.uniqueId(),e.initialize(t),!1!==t.connect_signals&&e.connect_signals(),e}return n.__extends(t,i),t.prototype.initialize=function(t){},t.prototype.remove=function(){this._parent=void 0,this.disconnect_signals(),this.removed.emit()},t.prototype.toString=function(){return this.model.type+\"View(\"+this.id+\")\"},Object.defineProperty(t.prototype,\"parent\",{get:function(){if(void 0!==this._parent)return this._parent;throw new Error(\"parent of a view wasn't configured\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_root\",{get:function(){return null===this.parent},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"root\",{get:function(){return this.is_root?this:this.parent.root},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){},t.prototype.disconnect_signals=function(){r.Signal.disconnectReceiver(this)},t.prototype.notify_finished=function(){this.root.notify_finished()},t}(r.Signalable());i.View=s},function(t,e,i){var n=t(391),r=t(16),o=t(27),s=function(){function t(t,e){void 0===e&&(e=\"\"),this.obj=t,this.prefix=e,this.cache={};var i=t.properties[e+this.do_attr].spec;this.doit=null!==i.value;for(var n=0,r=this.attrs;n<r.length;n++){var o=r[n];this[o]=t.properties[e+o]}}return t.prototype.warm_cache=function(t){for(var e=0,i=this.attrs;e<i.length;e++){var n=i[e],r=this.obj.properties[this.prefix+n];if(void 0!==r.spec.value)this.cache[n]=r.spec.value;else{if(null==t)throw new Error(\"source is required with a vectorized visual property\");this.cache[n+\"_array\"]=r.array(t)}}},t.prototype.cache_select=function(t,e){var i,n=this.obj.properties[this.prefix+t];return void 0!==n.spec.value?this.cache[t]=i=n.spec.value:this.cache[t]=i=this.cache[t+\"_array\"][e],i},t.prototype.set_vectorize=function(t,e){null!=this.all_indices?this._set_vectorize(t,this.all_indices[e]):this._set_vectorize(t,e)},t}(),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.set_value=function(t){t.strokeStyle=this.line_color.value(),t.globalAlpha=this.line_alpha.value(),t.lineWidth=this.line_width.value(),t.lineJoin=this.line_join.value(),t.lineCap=this.line_cap.value(),t.setLineDash(this.line_dash.value()),t.setLineDashOffset(this.line_dash_offset.value())},e.prototype._set_vectorize=function(t,e){this.cache_select(\"line_color\",e),t.strokeStyle!==this.cache.line_color&&(t.strokeStyle=this.cache.line_color),this.cache_select(\"line_alpha\",e),t.globalAlpha!==this.cache.line_alpha&&(t.globalAlpha=this.cache.line_alpha),this.cache_select(\"line_width\",e),t.lineWidth!==this.cache.line_width&&(t.lineWidth=this.cache.line_width),this.cache_select(\"line_join\",e),t.lineJoin!==this.cache.line_join&&(t.lineJoin=this.cache.line_join),this.cache_select(\"line_cap\",e),t.lineCap!==this.cache.line_cap&&(t.lineCap=this.cache.line_cap),this.cache_select(\"line_dash\",e),t.getLineDash()!==this.cache.line_dash&&t.setLineDash(this.cache.line_dash),this.cache_select(\"line_dash_offset\",e),t.getLineDashOffset()!==this.cache.line_dash_offset&&t.setLineDashOffset(this.cache.line_dash_offset)},e.prototype.color_value=function(){var t=o.color2rgba(this.line_color.value(),this.line_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},e}(i.ContextProperties=s);(i.Line=h).prototype.attrs=Object.keys(r.line()),h.prototype.do_attr=\"line_color\";var u=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.set_value=function(t){t.fillStyle=this.fill_color.value(),t.globalAlpha=this.fill_alpha.value()},e.prototype._set_vectorize=function(t,e){this.cache_select(\"fill_color\",e),t.fillStyle!==this.cache.fill_color&&(t.fillStyle=this.cache.fill_color),this.cache_select(\"fill_alpha\",e),t.globalAlpha!==this.cache.fill_alpha&&(t.globalAlpha=this.cache.fill_alpha)},e.prototype.color_value=function(){var t=o.color2rgba(this.fill_color.value(),this.fill_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},e}(s);(i.Fill=u).prototype.attrs=Object.keys(r.fill()),u.prototype.do_attr=\"fill_color\";var c=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.cache_select=function(t,e){var i;if(\"font\"==t){a.prototype.cache_select.call(this,\"text_font_style\",e),a.prototype.cache_select.call(this,\"text_font_size\",e),a.prototype.cache_select.call(this,\"text_font\",e);var n=this.cache,r=n.text_font_style,o=n.text_font_size,s=n.text_font;this.cache.font=i=r+\" \"+o+\" \"+s}else i=a.prototype.cache_select.call(this,t,e);return i},t.prototype.font_value=function(){var t=this.text_font.value(),e=this.text_font_size.value(),i=this.text_font_style.value();return i+\" \"+e+\" \"+t},t.prototype.color_value=function(){var t=o.color2rgba(this.text_color.value(),this.text_alpha.value()),e=t[0],i=t[1],n=t[2],r=t[3];return\"rgba(\"+255*e+\",\"+255*i+\",\"+255*n+\",\"+r+\")\"},t.prototype.set_value=function(t){t.font=this.font_value(),t.fillStyle=this.text_color.value(),t.globalAlpha=this.text_alpha.value(),t.textAlign=this.text_align.value(),t.textBaseline=this.text_baseline.value()},t.prototype._set_vectorize=function(t,e){this.cache_select(\"font\",e),t.font!==this.cache.font&&(t.font=this.cache.font),this.cache_select(\"text_color\",e),t.fillStyle!==this.cache.text_color&&(t.fillStyle=this.cache.text_color),this.cache_select(\"text_alpha\",e),t.globalAlpha!==this.cache.text_alpha&&(t.globalAlpha=this.cache.text_alpha),this.cache_select(\"text_align\",e),t.textAlign!==this.cache.text_align&&(t.textAlign=this.cache.text_align),this.cache_select(\"text_baseline\",e),t.textBaseline!==this.cache.text_baseline&&(t.textBaseline=this.cache.text_baseline)},t}(s);(i.Text=c).prototype.attrs=Object.keys(r.text()),c.prototype.do_attr=\"text_color\";var a=function(){function t(t){for(var e=0,i=t.mixins;e<i.length;e++){var n=i[e],r=n.split(\":\"),o=r[0],s=r[1],a=void 0===s?\"\":s,l=void 0;switch(o){case\"line\":l=h;break;case\"fill\":l=u;break;case\"text\":l=c;break;default:throw new Error(\"unknown visual: \"+o)}this[a+o]=new l(t,a)}}return t.prototype.warm_cache=function(t){for(var e in this)if(this.hasOwnProperty(e)){var i=this[e];i instanceof s&&i.warm_cache(t)}},t.prototype.set_all_indices=function(t){for(var e in this)if(this.hasOwnProperty(e)){var i=this[e];i instanceof s&&(i.all_indices=t)}},t}();i.Visuals=a},function(t,e,i){var o=t(391),s=t(0),_=t(286),j=t(14),n=t(3),p=t(8),r=t(19),a=t(34),N=t(36),m=t(29),y=t(21),b=t(32),x=t(30),d=t(44),l=t(157),F=t(200),g=t(59),h=t(51),u=function(){function t(t){this.document=t,this.session=null,this.subscribed_models=new m.Set}return t.prototype.send_event=function(t){null!=this.session&&this.session.send_event(t)},t.prototype.trigger=function(t){for(var e=0,i=this.subscribed_models.values;e<i.length;e++){var n=i[e];if(null==t.model_id||t.model_id===n){var r=this.document._all_models[n];null!=r&&r._process_event(t)}}},t}();i.EventManager=u,i.documents=[],i.DEFAULT_TITLE=\"Bokeh Application\";var c=function(){function P(){i.documents.push(this),this._init_timestamp=Date.now(),this._title=i.DEFAULT_TITLE,this._roots=[],this._all_models={},this._all_models_by_name=new m.MultiDict,this._all_models_freeze_count=0,this._callbacks=[],this.event_manager=new u(this),this.idle=new r.Signal0(this,\"idle\"),this._idle_roots=new WeakMap,this._interactive_timestamp=null,this._interactive_plot=null}return Object.defineProperty(P.prototype,\"layoutables\",{get:function(){return this._roots.filter(function(t){return t instanceof l.LayoutDOM})},enumerable:!0,configurable:!0}),Object.defineProperty(P.prototype,\"is_idle\",{get:function(){for(var t=0,e=this.layoutables;t<e.length;t++){var i=e[t];if(!this._idle_roots.has(i))return!1}return!0},enumerable:!0,configurable:!0}),P.prototype.notify_idle=function(t){this._idle_roots.set(t,!0),this.is_idle&&(j.logger.info(\"document idle at \"+(Date.now()-this._init_timestamp)+\" ms\"),this.idle.emit())},P.prototype.clear=function(){this._push_all_models_freeze();try{for(;0<this._roots.length;)this.remove_root(this._roots[0])}finally{this._pop_all_models_freeze()}},P.prototype.interactive_start=function(t){null==this._interactive_plot&&(this._interactive_plot=t,this._interactive_plot.trigger_event(new n.LODStart({}))),this._interactive_timestamp=Date.now()},P.prototype.interactive_stop=function(t){null!=this._interactive_plot&&this._interactive_plot.id===t.id&&this._interactive_plot.trigger_event(new n.LODEnd({})),this._interactive_plot=null,this._interactive_timestamp=null},P.prototype.interactive_duration=function(){return null==this._interactive_timestamp?-1:Date.now()-this._interactive_timestamp},P.prototype.destructively_move=function(t){if(t===this)throw new Error(\"Attempted to overwrite a document with itself\");t.clear();var e=y.copy(this._roots);this.clear();for(var i=0,n=e;i<n.length;i++){var r=n[i];if(null!=r.document)throw new Error(\"Somehow we didn't detach \"+r)}if(0!==Object.keys(this._all_models).length)throw new Error(\"this._all_models still had stuff in it: \"+this._all_models);for(var o=0,s=e;o<s.length;o++){var r=s[o];t.add_root(r)}t.set_title(this._title)},P.prototype._push_all_models_freeze=function(){this._all_models_freeze_count+=1},P.prototype._pop_all_models_freeze=function(){this._all_models_freeze_count-=1,0===this._all_models_freeze_count&&this._recompute_all_models()},P.prototype._invalidate_all_models=function(){j.logger.debug(\"invalidating document models\"),0===this._all_models_freeze_count&&this._recompute_all_models()},P.prototype._recompute_all_models=function(){for(var t=new m.Set,e=0,i=this._roots;e<i.length;e++){var n=i[e];t=t.union(n.references())}for(var r=new m.Set(b.values(this._all_models)),o=r.diff(t),s=t.diff(r),a={},l=0,h=t.values;l<h.length;l++){var u=h[l];a[u.id]=u}for(var c=0,_=o.values;c<_.length;c++){var p=_[c];p.detach_document(),p instanceof g.Model&&null!=p.name&&this._all_models_by_name.remove_value(p.name,p)}for(var d=0,f=s.values;d<f.length;d++){var v=f[d];v.attach_document(this),v instanceof g.Model&&null!=v.name&&this._all_models_by_name.add_value(v.name,v)}this._all_models=a},P.prototype.roots=function(){return this._roots},P.prototype.add_root=function(t,e){if(j.logger.debug(\"Adding root: \"+t),!y.includes(this._roots,t)){this._push_all_models_freeze();try{this._roots.push(t)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new h.RootAddedEvent(this,t,e))}},P.prototype.remove_root=function(t,e){var i=this._roots.indexOf(t);if(!(i<0)){this._push_all_models_freeze();try{this._roots.splice(i,1)}finally{this._pop_all_models_freeze()}this._trigger_on_change(new h.RootRemovedEvent(this,t,e))}},P.prototype.title=function(){return this._title},P.prototype.set_title=function(t,e){t!==this._title&&(this._title=t,this._trigger_on_change(new h.TitleChangedEvent(this,t,e)))},P.prototype.get_model_by_id=function(t){return t in this._all_models?this._all_models[t]:null},P.prototype.get_model_by_name=function(t){return this._all_models_by_name.get_one(t,\"Multiple models are named '\"+t+\"'\")},P.prototype.on_change=function(t){y.includes(this._callbacks,t)||this._callbacks.push(t)},P.prototype.remove_on_change=function(t){var e=this._callbacks.indexOf(t);0<=e&&this._callbacks.splice(e,1)},P.prototype._trigger_on_change=function(t){for(var e=0,i=this._callbacks;e<i.length;e++){var n=i[e];n(t)}},P.prototype._notify_change=function(t,e,i,n,r){\"name\"===e&&(this._all_models_by_name.remove_value(i,t),null!=n&&this._all_models_by_name.add_value(n,t));var o=null!=r?r.setter_id:void 0,s=null!=r?r.hint:void 0;this._trigger_on_change(new h.ModelChangedEvent(this,t,e,i,n,o,s))},P._references_json=function(t,e){void 0===e&&(e=!0);for(var i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o.ref();s.attributes=o.attributes_as_json(e),delete s.attributes.id,i.push(s)}return i},P._instantiate_object=function(t,e,i){var n=o.__assign({},i,{id:t,__deferred__:!0}),r=s.Models(e);return new r(n)},P._instantiate_references_json=function(t,e){for(var i={},n=0,r=t;n<r.length;n++){var o=r[n],s=o.id,a=o.type,l=o.attributes||{},h=void 0;s in e?h=e[s]:(h=P._instantiate_object(s,a,l),null!=o.subtype&&h.set_subtype(o.subtype)),i[h.id]=h}return i},P._resolve_refs=function(t,e,i){function o(t){if(a.is_ref(t)){if(t.id in e)return e[t.id];if(t.id in i)return i[t.id];throw new Error(\"reference \"+JSON.stringify(t)+\" isn't known (not in Document?)\")}return d.isArray(t)?function(t){for(var e=[],i=0,n=t;i<n.length;i++){var r=n[i];e.push(o(r))}return e}(t):d.isPlainObject(t)?function(t){var e={};for(var i in t){var n=t[i];e[i]=o(n)}return e}(t):t}return o(t)},P._initialize_references_json=function(t,e,i){for(var n={},r=0,o=t;r<o.length;r++){var s=o[r],a=s.id,l=s.attributes,h=!(a in e),u=h?i[a]:e[a],c=P._resolve_refs(l,e,i);n[u.id]=[u,c,h]}function _(h,u){var c={};function _(t){if(t instanceof p.HasProps){if(!(t.id in c)&&t.id in h){c[t.id]=!0;var e=h[t.id],i=e[1],n=e[2];for(var r in i){var o=i[r];_(o)}u(t,i,n)}}else if(d.isArray(t))for(var s=0,a=t;s<a.length;s++){var o=a[s];_(o)}else if(d.isPlainObject(t))for(var l in t){var o=t[l];_(o)}}for(var t in h){var e=h[t],i=e[0];_(i)}}_(n,function(t,e,i){i&&t.setv(e,{silent:!0})}),_(n,function(t,e,i){i&&t.finalize()})},P._event_for_attribute_change=function(t,e,i,n,r){var o=n.get_model_by_id(t.id);if(o.attribute_is_serializable(e)){var s={kind:\"ModelChanged\",model:{id:t.id,type:t.type},attr:e,new:i};return p.HasProps._json_record_references(n,i,r,!0),s}return null},P._events_to_sync_objects=function(t,e,i,n){for(var r=Object.keys(t.attributes),o=Object.keys(e.attributes),s=y.difference(r,o),a=y.difference(o,r),l=y.intersection(r,o),h=[],u=0,c=s;u<c.length;u++){var _=c[u];j.logger.warn(\"Server sent key \"+_+\" but we don't seem to have it in our JSON\")}for(var p=0,d=a;p<d.length;p++){var _=d[p],f=e.attributes[_];h.push(P._event_for_attribute_change(t,_,f,i,n))}for(var v=0,m=l;v<m.length;v++){var _=m[v],g=t.attributes[_],f=e.attributes[_];null==g&&null==f||(null==g||null==f?h.push(P._event_for_attribute_change(t,_,f,i,n)):x.isEqual(g,f)||h.push(P._event_for_attribute_change(t,_,f,i,n)))}return h.filter(function(t){return null!=t})},P._compute_patch_since_json=function(t,e){var i=e.to_json(!1);function n(t){for(var e={},i=0,n=t.roots.references;i<n.length;i++){var r=n[i];e[r.id]=r}return e}for(var r=n(t),o={},s=[],a=0,l=t.roots.root_ids;a<l.length;a++){var h=l[a];o[h]=r[h],s.push(h)}for(var u=n(i),c={},_=[],p=0,d=i.roots.root_ids;p<d.length;p++){var h=d[p];c[h]=u[h],_.push(h)}if(s.sort(),_.sort(),0<y.difference(s,_).length||0<y.difference(_,s).length)throw new Error(\"Not implemented: computing add/remove of document roots\");var f={},v=[];for(var m in e._all_models)if(m in r){var g=P._events_to_sync_objects(r[m],u[m],e,f);v=v.concat(g)}return{references:P._references_json(b.values(f),!1),events:v}},P.prototype.to_json_string=function(t){return void 0===t&&(t=!0),JSON.stringify(this.to_json(t))},P.prototype.to_json=function(t){void 0===t&&(t=!0);var e=this._roots.map(function(t){return t.id}),i=b.values(this._all_models);return{version:_.version,title:this._title,roots:{root_ids:e,references:P._references_json(i,t)}}},P.from_json_string=function(t){var e=JSON.parse(t);return P.from_json(e)},P.from_json=function(t){j.logger.debug(\"Creating Document from JSON\");var e=t.version,i=-1!==e.indexOf(\"+\")||-1!==e.indexOf(\"-\"),n=\"Library versions: JS (\"+_.version+\") / Python (\"+e+\")\";i||_.version===e?j.logger.debug(n):(j.logger.warn(\"JS/Python version mismatch\"),j.logger.warn(n));var r=t.roots,o=r.root_ids,s=r.references,a=P._instantiate_references_json(s,{});P._initialize_references_json(s,{},a);for(var l=new P,h=0,u=o;h<u.length;h++){var c=u[h];l.add_root(a[c])}return l.set_title(t.title),l},P.prototype.replace_with_json=function(t){var e=P.from_json(t);e.destructively_move(this)},P.prototype.create_json_patch_string=function(t){return JSON.stringify(this.create_json_patch(t))},P.prototype.create_json_patch=function(t){for(var e={},i=[],n=0,r=t;n<r.length;n++){var o=r[n];if(o.document!==this)throw j.logger.warn(\"Cannot create a patch using events from a different document, event had \",o.document,\" we are \",this),new Error(\"Cannot create a patch using events from a different document\");i.push(o.json(e))}return{events:i,references:P._references_json(b.values(e))}},P.prototype.apply_json_patch=function(t,e,i){for(var n,r=t.references,o=t.events,s=P._instantiate_references_json(r,this._all_models),a=0,l=o;a<l.length;a++){var h=l[a];switch(h.kind){case\"RootAdded\":case\"RootRemoved\":case\"ModelChanged\":var u=h.model.id;if(u in this._all_models)s[u]=this._all_models[u];else if(!(u in s))throw j.logger.warn(\"Got an event for unknown model \",h.model),new Error(\"event model wasn't known\")}}var c={},_={};for(var p in s){var d=s[p];p in this._all_models?c[p]=d:_[p]=d}P._initialize_references_json(r,c,_);for(var f=0,v=o;f<v.length;f++){var h=v[f];switch(h.kind){case\"ModelChanged\":var m=h.model.id;if(!(m in this._all_models))throw new Error(\"Cannot apply patch to \"+m+\" which is not in the document\");var g=this._all_models[m],y=h.attr,b=h.model.type;if(\"data\"===y&&\"ColumnDataSource\"===b){var x=N.decode_column_data(h.new,e),w=x[0],k=x[1];g.setv({_shapes:k,data:w},{setter_id:i})}else{var d=P._resolve_refs(h.new,c,_);g.setv(((n={})[y]=d,n),{setter_id:i})}break;case\"ColumnDataChanged\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot stream to \"+S+\" which is not in the document\");var C=this._all_models[S],T=N.decode_column_data(h.new,e),w=T[0],k=T[1];if(null!=h.cols){for(var A in C.data)A in w||(w[A]=C.data[A]);for(var A in C._shapes)A in k||(k[A]=C._shapes[A])}C.setv({_shapes:k,data:w},{setter_id:i,check_eq:!1});break;case\"ColumnsStreamed\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot stream to \"+S+\" which is not in the document\");var C=this._all_models[S];if(!(C instanceof F.ColumnDataSource))throw new Error(\"Cannot stream to non-ColumnDataSource\");var w=h.data,E=h.rollover;C.stream(w,E,i);break;case\"ColumnsPatched\":var S=h.column_source.id;if(!(S in this._all_models))throw new Error(\"Cannot patch \"+S+\" which is not in the document\");var C=this._all_models[S];if(!(C instanceof F.ColumnDataSource))throw new Error(\"Cannot patch non-ColumnDataSource\");var M=h.patches;C.patch(M,i);break;case\"RootAdded\":var O=h.model.id,z=s[O];this.add_root(z,i);break;case\"RootRemoved\":var O=h.model.id,z=s[O];this.remove_root(z,i);break;case\"TitleChanged\":this.set_title(h.title,i);break;default:throw new Error(\"Unknown patch event \"+JSON.stringify(h))}}},P}();i.Document=c},function(t,e,i){var n=t(391),o=t(8),r=function(t){this.document=t},s=function(l){function t(t,e,i,n,r,o,s){var a=l.call(this,t)||this;return a.model=e,a.attr=i,a.old=n,a.new_=r,a.setter_id=o,a.hint=s,a}return n.__extends(t,l),t.prototype.json=function(t){if(\"id\"===this.attr)throw new Error(\"'id' field should never change, whatever code just set it is wrong\");if(null!=this.hint)return this.hint.json(t);var e=this.new_,i=o.HasProps._value_to_json(this.attr,e,this.model),n={};for(var r in o.HasProps._value_record_references(e,n,!0),this.model.id in n&&this.model!==e&&delete n[this.model.id],n)t[r]=n[r];return{kind:\"ModelChanged\",model:this.model.ref(),attr:this.attr,new:i}},t}(i.DocumentChangedEvent=r);i.ModelChangedEvent=s;var a=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.column_source=e,n.patches=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"ColumnsPatched\",column_source:this.column_source,patches:this.patches}},t}(r);i.ColumnsPatchedEvent=a;var l=function(o){function t(t,e,i,n){var r=o.call(this,t)||this;return r.column_source=e,r.data=i,r.rollover=n,r}return n.__extends(t,o),t.prototype.json=function(t){return{kind:\"ColumnsStreamed\",column_source:this.column_source,data:this.data,rollover:this.rollover}},t}(r);i.ColumnsStreamedEvent=l;var h=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.title=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"TitleChanged\",title:this.title}},t}(r);i.TitleChangedEvent=h;var u=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.model=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return o.HasProps._value_record_references(this.model,t,!0),{kind:\"RootAdded\",model:this.model.ref()}},t}(r);i.RootAddedEvent=u;var c=function(r){function t(t,e,i){var n=r.call(this,t)||this;return n.model=e,n.setter_id=i,n}return n.__extends(t,r),t.prototype.json=function(t){return{kind:\"RootRemoved\",model:this.model.ref()}},t}(r);i.RootRemovedEvent=c},function(t,e,i){var n=t(391);n.__exportStar(t(50),i),n.__exportStar(t(51),i)},function(t,e,n){var r=t(5);function o(t){var e=document.getElementById(t);if(null==e)throw new Error(\"Error rendering Bokeh model: could not find #\"+t+\" HTML tag\");if(!document.body.contains(e))throw new Error(\"Error rendering Bokeh model: element #\"+t+\" must be under <body>\");if(\"SCRIPT\"==e.tagName){var i=r.div({class:n.BOKEH_ROOT});r.replaceWith(e,i),e=i}return e}n.BOKEH_ROOT=\"bk-root\",n.inject_css=function(t){var e=r.link({href:t,rel:\"stylesheet\",type:\"text/css\"});document.body.appendChild(e)},n.inject_raw_css=function(t){var e=r.style({},t);document.body.appendChild(e)},n._resolve_element=function(t){var e=t.elementid;return null!=e?o(e):document.body},n._resolve_root_elements=function(t){var e={};if(null!=t.roots)for(var i in t.roots)e[i]=o(t.roots[i]);return e}},function(t,e,i){var d=t(52),f=t(14),a=t(25),v=t(38),m=t(44),g=t(57),y=t(56),b=t(53),n=t(57);i.add_document_standalone=n.add_document_standalone;var r=t(56);i.add_document_from_session=r.add_document_from_session;var o=t(55);i.embed_items_notebook=o.embed_items_notebook,i.kernels=o.kernels;var s=t(53);function l(t,e,i,n){m.isString(t)&&(t=JSON.parse(v.unescape(t)));var r={};for(var o in t){var s=t[o];r[o]=d.Document.from_json(s)}for(var a=0,l=e;a<l.length;a++){var h=l[a],u=b._resolve_element(h),c=b._resolve_root_elements(h);if(null!=h.docid)g.add_document_standalone(r[h.docid],u,c,h.use_for_title);else{if(null==h.sessionid)throw new Error(\"Error rendering Bokeh items: either 'docid' or 'sessionid' was expected.\");var _=y._get_ws_url(i,n);f.logger.debug(\"embed: computed ws url: \"+_);var p=y.add_document_from_session(_,h.sessionid,u,c,h.use_for_title);p.then(function(){console.log(\"Bokeh items were rendered successfully\")},function(t){console.log(\"Error rendering Bokeh items:\",t)})}}}i.BOKEH_ROOT=s.BOKEH_ROOT,i.inject_css=s.inject_css,i.inject_raw_css=s.inject_raw_css,i.embed_item=function(t,e){var i,n={},r=v.uuid4();n[r]=t.doc,null==e&&(e=t.target_id);var o=document.getElementById(e);null!=o&&o.classList.add(b.BOKEH_ROOT);var s={roots:((i={})[t.root_id]=e,i),docid:r};a.defer(function(){return l(n,[s])})},i.embed_items=function(t,e,i,n){a.defer(function(){return l(t,e,i,n)})}},function(t,e,r){var l=t(52),o=t(283),s=t(14),h=t(32),u=t(57),c=t(53);function a(t,e){0<e.buffers.length?t.consume(e.buffers[0].buffer):t.consume(e.content.data);var i=t.message;null!=i&&this.apply_json_patch(i.content,i.buffers)}function _(i,n){if(\"undefined\"!=typeof Jupyter&&null!=Jupyter.notebook.kernel){s.logger.info(\"Registering Jupyter comms for target \"+i);var t=Jupyter.notebook.kernel.comm_manager;try{t.register_target(i,function(t){s.logger.info(\"Registering Jupyter comms for target \"+i);var e=new o.Receiver;t.on_msg(a.bind(n,e))})}catch(t){s.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else if(n.roots()[0].id in r.kernels){s.logger.info(\"Registering JupyterLab comms for target \"+i);var e=r.kernels[n.roots()[0].id];try{e.registerCommTarget(i,function(t){s.logger.info(\"Registering JupyterLab comms for target \"+i);var e=new o.Receiver;t.onMsg=a.bind(n,e)})}catch(t){s.logger.warn(\"Jupyter comms failed to register. push_notebook() will not function. (exception reported: \"+t+\")\")}}else console.warn(\"Jupyter notebooks comms not available. push_notebook() will not function. If running JupyterLab ensure the latest jupyterlab_bokeh extension is installed. In an exported notebook this warning is expected.\")}r.kernels={},r.embed_items_notebook=function(t,e){if(1!=h.size(t))throw new Error(\"embed_items_notebook expects exactly one document in docs_json\");for(var i=l.Document.from_json(h.values(t)[0]),n=0,r=e;n<r.length;n++){var o=r[n];null!=o.notebook_comms_target&&_(o.notebook_comms_target,i);var s=c._resolve_element(o),a=c._resolve_root_elements(o);u.add_document_standalone(i,s,a)}}},function(t,e,i){var s=t(1),a=t(14),l=t(57);i._get_ws_url=function(t,e){var i,n=\"ws:\";return\"https:\"==window.location.protocol&&(n=\"wss:\"),null!=e?(i=document.createElement(\"a\")).href=e:i=window.location,null!=t?\"/\"==t&&(t=\"\"):t=i.pathname.replace(/\\/+$/,\"\"),n+\"//\"+i.host+t+\"/ws\"};var h={};i.add_document_from_session=function(t,e,i,n,r){void 0===n&&(n={}),void 0===r&&(r=!1);var o=window.location.search.substr(1);return function(t,e,i){t in h||(h[t]={});var n=h[t];return e in n||(n[e]=s.pull_session(t,e,i)),n[e]}(t,e,o).then(function(t){return l.add_document_standalone(t.document,i,n,r)},function(t){throw a.logger.error(\"Failed to load Bokeh session \"+e+\": \"+t),t})}},function(t,e,i){var h=t(52),u=t(5),c=t(0),_=t(53);i.add_document_standalone=function(t,o,s,e){void 0===s&&(s={}),void 0===e&&(e=!1);var a={};function i(t){var e;t.id in s?e=s[t.id]:o.classList.contains(_.BOKEH_ROOT)?e=o:(e=u.div({class:_.BOKEH_ROOT}),o.appendChild(e));var i,n,r=(n=new(i=t).default_view({model:i,parent:null}),c.index[i.id]=n);r.renderTo(e),a[t.id]=r}for(var n=0,r=t.roots();n<r.length;n++){var l=r[n];i(l)}return e&&(window.document.title=t.title()),t.on_change(function(t){t instanceof h.RootAddedEvent?i(t.model):t instanceof h.RootRemovedEvent?function(t){var e=t.id;if(e in a){var i=a[e];i.remove(),delete a[e],delete c.index[e]}}(t.model):e&&t instanceof h.TitleChangedEvent&&(window.document.title=t.title)}),a}},function(t,e,i){t(280);var n=t(286);i.version=n.version;var r=t(54);i.embed=r;var o=t(281);i.protocol=o;var s=t(285);i._testing=s;var a=t(14);i.logger=a.logger,i.set_log_level=a.set_log_level;var l=t(18);i.settings=l.settings;var h=t(0);i.Models=h.Models,i.index=h.index;var u=t(52);i.documents=u.documents;var c=t(284);i.safely=c.safely},function(t,e,i){var n=t(391),r=t(8),o=t(15),s=t(44),a=t(32),l=t(14),h=function(_){function i(t){return _.call(this,t)||this}return n.__extends(i,_),i.initClass=function(){this.prototype.type=\"Model\",this.define({tags:[o.Array,[]],name:[o.String],js_property_callbacks:[o.Any,{}],js_event_callbacks:[o.Any,{}],subscribed_events:[o.Array,[]]})},i.prototype.connect_signals=function(){var i=this;for(var t in _.prototype.connect_signals.call(this),this.js_property_callbacks)for(var e=this.js_property_callbacks[t],n=t.split(\":\"),r=n[0],o=n[1],s=void 0===o?null:o,a=function(t){var e=null!=s?l.properties[s][r]:l[r];l.connect(e,function(){return t.execute(i,{})})},l=this,h=0,u=e;h<u.length;h++){var c=u[h];a(c)}this.connect(this.properties.js_event_callbacks.change,function(){return i._update_event_callbacks}),this.connect(this.properties.subscribed_events.change,function(){return i._update_event_callbacks})},i.prototype._process_event=function(e){if(e.is_applicable_to(this)){e=e._customize_event(this);for(var t=0,i=this.js_event_callbacks[e.event_name]||[];t<i.length;t++){var n=i[t];n.execute(e,{})}null!=this.document&&this.subscribed_events.some(function(t){return t==e.event_name})&&this.document.event_manager.send_event(e)}},i.prototype.trigger_event=function(t){null!=this.document&&this.document.event_manager.trigger(t.set_model_id(this.id))},i.prototype._update_event_callbacks=function(){null!=this.document?this.document.event_manager.subscribed_models.add(this.id):l.logger.warn(\"WARNING: Document not defined for updating event callbacks\")},i.prototype._doc_attached=function(){a.isEmpty(this.js_event_callbacks)&&a.isEmpty(this.subscribed_events)||this._update_event_callbacks()},i.prototype.select=function(e){if(s.isString(e))return this.references().filter(function(t){return t instanceof i&&t.name===e});if(e.prototype instanceof r.HasProps)return this.references().filter(function(t){return t instanceof e});throw new Error(\"invalid selector\")},i.prototype.select_one=function(t){var e=this.select(t);switch(e.length){case 0:return null;case 1:return e[0];default:throw new Error(\"found more than one object matching given selector\")}},i}(r.HasProps);(i.Model=h).initClass()},function(t,e,i){var n=t(391),r=t(12),o=t(15),s=t(33),a=t(32),l=t(189),h=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._get_size=function(){throw new Error(\"not implemented\")},e.prototype.get_size=function(){return this.model.visible?Math.round(this._get_size()):0},e.prototype.set_data=function(t){var e,i,n=this.model.materialize_dataspecs(t);if(a.extend(this,n),this.plot_model.use_map){var r=this;null!=r._x&&(e=s.project_xy(r._x,r._y),r._x=e[0],r._y=e[1]),null!=r._xs&&(i=s.project_xsys(r._xs,r._ys),r._xs=i[0],r._ys=i[1])}},e}(l.RendererView);i.AnnotationView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Annotation\",this.define({plot:[o.Instance]}),this.override({level:\"annotation\"})},t.prototype.add_panel=function(t){if(null==this.panel||t!==this.panel.side){var e=new r.SidePanel({side:t});e.attach_document(this.document),this.set_panel(e)}},t.prototype.set_panel=function(t){this.panel=t,this.level=\"overlay\"},t}(l.Renderer);(i.Annotation=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(62),s=t(200),a=t(15),l=t(31),h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),null==this.model.source&&(this.model.source=new s.ColumnDataSource),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n,r=this.plot_view.frame;return\"data\"==this.model.start_units?(t=r.xscales[this.model.x_range_name].v_compute(this._x_start),e=r.yscales[this.model.y_range_name].v_compute(this._y_start)):(t=r.xview.v_compute(this._x_start),e=r.yview.v_compute(this._y_start)),\"data\"==this.model.end_units?(i=r.xscales[this.model.x_range_name].v_compute(this._x_end),n=r.yscales[this.model.y_range_name].v_compute(this._y_end)):(i=r.xview.v_compute(this._x_end),n=r.yview.v_compute(this._y_end)),[[t,e],[i,n]]},t.prototype.render=function(){if(this.model.visible){var t=this.plot_view.canvas_view.ctx;t.save();var e=this._map_data(),i=e[0],n=e[1];null!=this.model.end&&this._arrow_head(t,\"render\",this.model.end,i,n),null!=this.model.start&&this._arrow_head(t,\"render\",this.model.start,n,i),t.beginPath();var r=this.plot_model.canvas.bbox.rect,o=r.x,s=r.y,a=r.width,l=r.height;t.rect(o,s,a,l),null!=this.model.end&&this._arrow_head(t,\"clip\",this.model.end,i,n),null!=this.model.start&&this._arrow_head(t,\"clip\",this.model.start,n,i),t.closePath(),t.clip(),this._arrow_body(t,i,n),t.restore()}},t.prototype._arrow_head=function(t,e,i,n,r){for(var o=0,s=this._x_start.length;o<s;o++){var a=Math.PI/2+l.atan2([n[0][o],n[1][o]],[r[0][o],r[1][o]]);t.save(),t.translate(r[0][o],r[1][o]),t.rotate(a),\"render\"==e?i.render(t,o):\"clip\"==e&&i.clip(t,o),t.restore()}},t.prototype._arrow_body=function(t,e,i){if(this.visuals.line.doit)for(var n=0,r=this._x_start.length;n<r;n++)this.visuals.line.set_vectorize(t,n),t.beginPath(),t.moveTo(e[0][n],e[1][n]),t.lineTo(i[0][n],i[1][n]),t.stroke()},t}(r.AnnotationView);i.ArrowView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Arrow\",this.prototype.default_view=h,this.mixins([\"line\"]),this.define({x_start:[a.NumberSpec],y_start:[a.NumberSpec],start_units:[a.String,\"data\"],start:[a.Instance,null],x_end:[a.NumberSpec],y_end:[a.NumberSpec],end_units:[a.String,\"data\"],end:[a.Instance,function(){return new o.OpenHead({})}],source:[a.Instance],x_range_name:[a.String,\"default\"],y_range_name:[a.String,\"default\"]})},t}(r.Annotation);(i.Arrow=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(49),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ArrowHead\",this.define({size:[s.Number,25]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.visuals=new o.Visuals(this)},t}(r.Annotation);(i.ArrowHead=a).initClass();var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"OpenHead\",this.mixins([\"line\"])},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(0,0),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.stroke())},t}(a);(i.OpenHead=l).initClass();var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NormalHead\",this.mixins([\"line\",\"fill\"]),this.override({fill_color:\"black\"})},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._normal(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._normal(t,e),t.stroke())},t.prototype._normal=function(t,e){t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.closePath()},t}(a);(i.NormalHead=h).initClass();var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"VeeHead\",this.mixins([\"line\",\"fill\"]),this.override({fill_color:\"black\"})},t.prototype.clip=function(t,e){this.visuals.line.set_vectorize(t,e),t.moveTo(.5*this.size,this.size),t.lineTo(.5*this.size,-2),t.lineTo(-.5*this.size,-2),t.lineTo(-.5*this.size,this.size),t.lineTo(0,.5*this.size),t.lineTo(.5*this.size,this.size)},t.prototype.render=function(t,e){this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,e),this._vee(t,e),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),this._vee(t,e),t.stroke())},t.prototype._vee=function(t,e){t.beginPath(),t.moveTo(.5*this.size,this.size),t.lineTo(0,0),t.lineTo(-.5*this.size,this.size),t.lineTo(0,.5*this.size),t.closePath()},t}(a);(i.VeeHead=u).initClass();var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TeeHead\",this.mixins([\"line\"])},t.prototype.render=function(t,e){this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(.5*this.size,0),t.lineTo(-.5*this.size,0),t.stroke())},t.prototype.clip=function(t,e){},t}(a);(i.TeeHead=c).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(200),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n=this.plot_view.frame,r=this.model.dimension,o=n.xscales[this.model.x_range_name],s=n.yscales[this.model.y_range_name],a=\"height\"==r?s:o,l=\"height\"==r?o:s,h=\"height\"==r?n.yview:n.xview,u=\"height\"==r?n.xview:n.yview;t=\"data\"==this.model.lower.units?a.v_compute(this._lower):h.v_compute(this._lower),e=\"data\"==this.model.upper.units?a.v_compute(this._upper):h.v_compute(this._upper),i=\"data\"==this.model.base.units?l.v_compute(this._base):u.v_compute(this._base);var c=\"height\"==r?[1,0]:[0,1],_=c[0],p=c[1],d=[t,i],f=[e,i];this._lower_sx=d[_],this._lower_sy=d[p],this._upper_sx=f[_],this._upper_sy=f[p]},t.prototype.render=function(){if(this.model.visible){this._map_data();var t=this.plot_view.canvas_view.ctx;t.beginPath(),t.moveTo(this._lower_sx[0],this._lower_sy[0]);for(var e=0,i=this._lower_sx.length;e<i;e++)t.lineTo(this._lower_sx[e],this._lower_sy[e]);for(var n=this._upper_sx.length-1,e=n;0<=e;e--)t.lineTo(this._upper_sx[e],this._upper_sy[e]);t.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_value(t),t.fill()),t.beginPath(),t.moveTo(this._lower_sx[0],this._lower_sy[0]);for(var e=0,i=this._lower_sx.length;e<i;e++)t.lineTo(this._lower_sx[e],this._lower_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke()),t.beginPath(),t.moveTo(this._upper_sx[0],this._upper_sy[0]);for(var e=0,i=this._upper_sx.length;e<i;e++)t.lineTo(this._upper_sx[e],this._upper_sy[e]);this.visuals.line.doit&&(this.visuals.line.set_value(t),t.stroke())}},t}(r.AnnotationView);i.BandView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Band\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({lower:[s.DistanceSpec],upper:[s.DistanceSpec],base:[s.DistanceSpec],dimension:[s.Dimension,\"height\"],source:[s.Instance,function(){return new o.ColumnDataSource}],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t}(r.Annotation);(i.Band=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(19),l=t(5),s=t(15),a=t(24);i.EDGE_TOLERANCE=2.5;var h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),this.el.classList.add(\"bk-shading\"),l.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?(this.connect(this.model.change,function(){return t.render()}),this.connect(this.model.data_update,function(){return t.render()})):(this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.data_update,function(){return t.plot_view.request_render()}))},t.prototype.render=function(){var o=this;if(this.model.visible||\"css\"!=this.model.render_mode||l.hide(this.el),this.model.visible)if(null!=this.model.left||null!=this.model.right||null!=this.model.top||null!=this.model.bottom){var t=this.plot_model.frame,e=t.xscales[this.model.x_range_name],i=t.yscales[this.model.y_range_name],n=function(t,e,i,n,r){return null!=t?o.model.screen?t:\"data\"==e?i.compute(t):n.compute(t):r};this.sleft=n(this.model.left,this.model.left_units,e,t.xview,t._left.value),this.sright=n(this.model.right,this.model.right_units,e,t.xview,t._right.value),this.stop=n(this.model.top,this.model.top_units,i,t.yview,t._top.value),this.sbottom=n(this.model.bottom,this.model.bottom_units,i,t.yview,t._bottom.value);var r=\"css\"==this.model.render_mode?this._css_box.bind(this):this._canvas_box.bind(this);r(this.sleft,this.sright,this.sbottom,this.stop)}else l.hide(this.el)},t.prototype._css_box=function(t,e,i,n){var r=this.model.properties.line_width.value(),o=Math.floor(e-t)-r,s=Math.floor(i-n)-r;this.el.style.left=t+\"px\",this.el.style.width=o+\"px\",this.el.style.top=n+\"px\",this.el.style.height=s+\"px\",this.el.style.borderWidth=r+\"px\",this.el.style.borderColor=this.model.properties.line_color.value(),this.el.style.backgroundColor=this.model.properties.fill_color.value(),this.el.style.opacity=this.model.properties.fill_alpha.value();var a=this.model.properties.line_dash.value().length<2?\"solid\":\"dashed\";this.el.style.borderStyle=a,l.show(this.el)},t.prototype._canvas_box=function(t,e,i,n){var r=this.plot_view.canvas_view.ctx;r.save(),r.beginPath(),r.rect(t,n,e-t,i-n),this.visuals.fill.set_value(r),r.fill(),this.visuals.line.set_value(r),r.stroke(),r.restore()},t.prototype.interactive_bbox=function(){var t=this.model.properties.line_width.value()+i.EDGE_TOLERANCE;return new a.BBox({x0:this.sleft-t,y0:this.stop-t,x1:this.sright+t,y1:this.sbottom+t})},t.prototype.interactive_hit=function(t,e){if(null==this.model.in_cursor)return!1;var i=this.interactive_bbox();return i.contains(t,e)},t.prototype.cursor=function(t,e){return Math.abs(t-this.sleft)<3||Math.abs(t-this.sright)<3?this.model.ew_cursor:Math.abs(e-this.sbottom)<3||Math.abs(e-this.stop)<3?this.model.ns_cursor:t>this.sleft&&t<this.sright&&e>this.stop&&e<this.sbottom?this.model.in_cursor:null},t}(r.AnnotationView);i.BoxAnnotationView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BoxAnnotation\",this.prototype.default_view=h,this.mixins([\"line\",\"fill\"]),this.define({render_mode:[s.RenderMode,\"canvas\"],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],top:[s.Number,null],top_units:[s.SpatialUnits,\"data\"],bottom:[s.Number,null],bottom_units:[s.SpatialUnits,\"data\"],left:[s.Number,null],left_units:[s.SpatialUnits,\"data\"],right:[s.Number,null],right_units:[s.SpatialUnits,\"data\"]}),this.internal({screen:[s.Boolean,!1],ew_cursor:[s.String,null],ns_cursor:[s.String,null],in_cursor:[s.String,null]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.data_update=new o.Signal0(this,\"data_update\")},t.prototype.update=function(t){var e=t.left,i=t.right,n=t.top,r=t.bottom;this.setv({left:e,right:i,top:n,bottom:r,screen:!0},{silent:!0}),this.data_update.emit()},t}(r.Annotation);(i.BoxAnnotation=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(207),s=t(104),u=t(167),a=t(192),l=t(193),h=t(184),c=t(15),_=t(41),p=t(21),g=t(22),d=t(32),f=t(44),v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._set_canvas_image()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.visible.change,function(){return t.plot_view.request_render()}),this.connect(this.model.ticker.change,function(){return t.plot_view.request_render()}),this.connect(this.model.formatter.change,function(){return t.plot_view.request_render()}),null!=this.model.color_mapper&&this.connect(this.model.color_mapper.change,function(){t._set_canvas_image(),t.plot_view.request_render()})},t.prototype._get_size=function(){if(null==this.model.color_mapper)return 0;var t=this.compute_legend_dimensions(),e=this.model.panel.side;switch(e){case\"above\":case\"below\":return t.height;case\"left\":case\"right\":return t.width;default:throw new Error(\"unreachable code\")}},t.prototype._set_canvas_image=function(){var t,e;if(null!=this.model.color_mapper){var i,n,r=this.model.color_mapper.palette;switch(\"vertical\"==this.model.orientation&&(r=p.reversed(r)),this.model.orientation){case\"vertical\":t=[1,r.length],i=t[0],n=t[1];break;case\"horizontal\":e=[r.length,1],i=e[0],n=e[1];break;default:throw new Error(\"unreachable code\")}var o=document.createElement(\"canvas\");o.width=i,o.height=n;var s=o.getContext(\"2d\"),a=s.getImageData(0,0,i,n),l=new u.LinearColorMapper({palette:r}).rgba_mapper,h=l.v_compute(p.range(0,r.length));a.data.set(h),s.putImageData(a,0,0),this.image=o}},t.prototype.compute_legend_dimensions=function(){var t,e,i=this.model._computed_image_dimensions(),n=[i.height,i.width],r=n[0],o=n[1],s=this._get_label_extent(),a=this.model._title_extent(),l=this.model._tick_extent(),h=this.model.padding;switch(this.model.orientation){case\"vertical\":t=r+a+2*h,e=o+l+s+2*h;break;case\"horizontal\":t=r+a+l+s+2*h,e=o+2*h;break;default:throw new Error(\"unreachable code\")}return{width:e,height:t}},t.prototype.compute_legend_location=function(){var t,e,i=this.compute_legend_dimensions(),n=[i.height,i.width],r=n[0],o=n[1],s=this.model.margin,a=null!=this.model.panel?this.model.panel:this.plot_view.frame,l=a.bbox.ranges,h=l[0],u=l[1],c=this.model.location;if(f.isString(c))switch(c){case\"top_left\":t=h.start+s,e=u.start+s;break;case\"top_center\":t=(h.end+h.start)/2-o/2,e=u.start+s;break;case\"top_right\":t=h.end-s-o,e=u.start+s;break;case\"bottom_right\":t=h.end-s-o,e=u.end-s-r;break;case\"bottom_center\":t=(h.end+h.start)/2-o/2,e=u.end-s-r;break;case\"bottom_left\":t=h.start+s,e=u.end-s-r;break;case\"center_left\":t=h.start+s,e=(u.end+u.start)/2-r/2;break;case\"center\":t=(h.end+h.start)/2-o/2,e=(u.end+u.start)/2-r/2;break;case\"center_right\":t=h.end-s-o,e=(u.end+u.start)/2-r/2;break;default:throw new Error(\"unreachable code\")}else{if(!f.isArray(c)||2!=c.length)throw new Error(\"unreachable code\");var _=c[0],p=c[1];t=a.xview.compute(_),e=a.yview.compute(p)-r}return{sx:t,sy:e}},t.prototype.render=function(){if(this.model.visible&&null!=this.model.color_mapper){var t=this.plot_view.canvas_view.ctx;t.save();var e=this.compute_legend_location(),i=e.sx,n=e.sy;t.translate(i,n),this._draw_bbox(t);var r=this._get_image_offset();if(t.translate(r.x,r.y),this._draw_image(t),null!=this.model.color_mapper.low&&null!=this.model.color_mapper.high){var o=this.model.tick_info();this._draw_major_ticks(t,o),this._draw_minor_ticks(t,o),this._draw_major_labels(t,o)}this.model.title&&this._draw_title(t),t.restore()}},t.prototype._draw_bbox=function(t){var e=this.compute_legend_dimensions();t.save(),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(0,0,e.width,e.height)),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()},t.prototype._draw_image=function(t){var e=this.model._computed_image_dimensions();t.save(),t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.scale_alpha,t.drawImage(this.image,0,0,e.width,e.height),this.visuals.bar_line.doit&&(this.visuals.bar_line.set_value(t),t.strokeRect(0,0,e.width,e.height)),t.restore()},t.prototype._draw_major_ticks=function(t,e){if(this.visuals.major_tick_line.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=e.coords.major,u=h[0],c=h[1],_=this.model.major_tick_in,p=this.model.major_tick_out;t.save(),t.translate(a,l),this.visuals.major_tick_line.set_value(t);for(var d=0,f=u.length;d<f;d++)t.beginPath(),t.moveTo(Math.round(u[d]+n*p),Math.round(c[d]+r*p)),t.lineTo(Math.round(u[d]-n*_),Math.round(c[d]-r*_)),t.stroke();t.restore()}},t.prototype._draw_minor_ticks=function(t,e){if(this.visuals.minor_tick_line.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=e.coords.minor,u=h[0],c=h[1],_=this.model.minor_tick_in,p=this.model.minor_tick_out;t.save(),t.translate(a,l),this.visuals.minor_tick_line.set_value(t);for(var d=0,f=u.length;d<f;d++)t.beginPath(),t.moveTo(Math.round(u[d]+n*p),Math.round(c[d]+r*p)),t.lineTo(Math.round(u[d]-n*_),Math.round(c[d]-r*_)),t.stroke();t.restore()}},t.prototype._draw_major_labels=function(t,e){if(this.visuals.major_label_text.doit){var i=this.model._normals(),n=i[0],r=i[1],o=this.model._computed_image_dimensions(),s=[o.width*n,o.height*r],a=s[0],l=s[1],h=this.model.label_standoff+this.model._tick_extent(),u=[h*n,h*r],c=u[0],_=u[1],p=e.coords.major,d=p[0],f=p[1],v=e.labels.major;this.visuals.major_label_text.set_value(t),t.save(),t.translate(a+c,l+_);for(var m=0,g=d.length;m<g;m++)t.fillText(v[m],Math.round(d[m]+n*this.model.label_standoff),Math.round(f[m]+r*this.model.label_standoff));t.restore()}},t.prototype._draw_title=function(t){this.visuals.title_text.doit&&(t.save(),this.visuals.title_text.set_value(t),t.fillText(this.model.title,0,-this.model.title_standoff),t.restore())},t.prototype._get_label_extent=function(){var t,e=this.model.tick_info().labels.major;if(null==this.model.color_mapper.low||null==this.model.color_mapper.high||d.isEmpty(e))t=0;else{var i=this.plot_view.canvas_view.ctx;switch(i.save(),this.visuals.major_label_text.set_value(i),this.model.orientation){case\"vertical\":t=p.max(e.map(function(t){return i.measureText(t.toString()).width}));break;case\"horizontal\":t=_.get_text_height(this.visuals.major_label_text.font_value()).height;break;default:throw new Error(\"unreachable code\")}t+=this.model.label_standoff,i.restore()}return t},t.prototype._get_image_offset=function(){var t=this.model.padding,e=this.model.padding+this.model._title_extent();return{x:t,y:e}},t}(r.AnnotationView);i.ColorBarView=v;var m=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ColorBar\",this.prototype.default_view=v,this.mixins([\"text:major_label_\",\"text:title_\",\"line:major_tick_\",\"line:minor_tick_\",\"line:border_\",\"line:bar_\",\"fill:background_\"]),this.define({location:[c.Any,\"top_right\"],orientation:[c.Orientation,\"vertical\"],title:[c.String],title_standoff:[c.Number,2],width:[c.Any,\"auto\"],height:[c.Any,\"auto\"],scale_alpha:[c.Number,1],ticker:[c.Instance,function(){return new o.BasicTicker}],formatter:[c.Instance,function(){return new s.BasicTickFormatter}],major_label_overrides:[c.Any,{}],color_mapper:[c.Instance],label_standoff:[c.Number,5],margin:[c.Number,30],padding:[c.Number,10],major_tick_in:[c.Number,5],major_tick_out:[c.Number,0],minor_tick_in:[c.Number,0],minor_tick_out:[c.Number,0]}),this.override({background_fill_color:\"#ffffff\",background_fill_alpha:.95,bar_line_color:null,border_line_color:null,major_label_text_align:\"center\",major_label_text_baseline:\"middle\",major_label_text_font_size:\"8pt\",major_tick_line_color:\"#ffffff\",minor_tick_line_color:null,title_text_font_size:\"10pt\",title_text_font_style:\"italic\"})},t.prototype._normals=function(){return\"vertical\"==this.orientation?[1,0]:[0,1]},t.prototype._title_extent=function(){var t=this.title_text_font+\" \"+this.title_text_font_size+\" \"+this.title_text_font_style,e=this.title?_.get_text_height(t).height+this.title_standoff:0;return e},t.prototype._tick_extent=function(){return null!=this.color_mapper.low&&null!=this.color_mapper.high?p.max([this.major_tick_out,this.minor_tick_out]):0},t.prototype._computed_image_dimensions=function(){var t,e,i=this.plot.plot_canvas.frame._height.value,n=this.plot.plot_canvas.frame._width.value,r=this._title_extent();switch(this.orientation){case\"vertical\":\"auto\"==this.height?null!=this.panel?t=i-2*this.padding-r:(t=p.max([25*this.color_mapper.palette.length,.3*i]),t=p.min([t,.8*i-2*this.padding-r])):t=this.height,e=\"auto\"==this.width?25:this.width;break;case\"horizontal\":t=\"auto\"==this.height?25:this.height,\"auto\"==this.width?null!=this.panel?e=n-2*this.padding:(e=p.max([25*this.color_mapper.palette.length,.3*n]),e=p.min([e,.8*n-2*this.padding])):e=this.width;break;default:throw new Error(\"unreachable code\")}return{width:e,height:t}},t.prototype._tick_coordinate_scale=function(t){var e={source_range:new h.Range1d({start:this.color_mapper.low,end:this.color_mapper.high}),target_range:new h.Range1d({start:0,end:t})};switch(this.color_mapper.type){case\"LinearColorMapper\":return new a.LinearScale(e);case\"LogColorMapper\":return new l.LogScale(e);default:throw new Error(\"unreachable code\")}},t.prototype._format_major_labels=function(t,e){for(var i=this.formatter.doFormat(t,null),n=0,r=e.length;n<r;n++)e[n]in this.major_label_overrides&&(i[n]=this.major_label_overrides[e[n]]);return i},t.prototype.tick_info=function(){var e,t=this._computed_image_dimensions();switch(this.orientation){case\"vertical\":e=t.height;break;case\"horizontal\":e=t.width;break;default:throw new Error(\"unreachable code\")}for(var i=this._tick_coordinate_scale(e),n=this._normals(),r=n[0],o=n[1],s=[this.color_mapper.low,this.color_mapper.high],a=s[0],l=s[1],h=this.ticker.get_ticks(a,l,null,null,this.ticker.desired_num_ticks),u=h.major,c=h.minor,_=[[],[]],p=[[],[]],d=0,f=u.length;d<f;d++)u[d]<a||u[d]>l||(_[r].push(u[d]),_[o].push(0));for(var d=0,f=c.length;d<f;d++)c[d]<a||c[d]>l||(p[r].push(c[d]),p[o].push(0));var v={major:this._format_major_labels(_[r],u)},m={major:[[],[]],minor:[[],[]]};return m.major[r]=i.v_compute(_[r]),m.minor[r]=i.v_compute(p[r]),m.major[o]=_[o],m.minor[o]=p[o],\"vertical\"==this.orientation&&(m.major[r]=g.map(m.major[r],function(t){return e-t}),m.minor[r]=g.map(m.minor[r],function(t){return e-t})),{coords:m,labels:v}},t}(r.Annotation);(i.ColorBar=m).initClass()},function(t,e,i){var n=t(60);i.Annotation=n.Annotation;var r=t(61);i.Arrow=r.Arrow;var o=t(62);i.ArrowHead=o.ArrowHead;var s=t(62);i.OpenHead=s.OpenHead;var a=t(62);i.NormalHead=a.NormalHead;var l=t(62);i.TeeHead=l.TeeHead;var h=t(62);i.VeeHead=h.VeeHead;var u=t(63);i.Band=u.Band;var c=t(64);i.BoxAnnotation=c.BoxAnnotation;var _=t(65);i.ColorBar=_.ColorBar;var p=t(67);i.Label=p.Label;var d=t(68);i.LabelSet=d.LabelSet;var f=t(69);i.Legend=f.Legend;var v=t(70);i.LegendItem=v.LegendItem;var m=t(71);i.PolyAnnotation=m.PolyAnnotation;var g=t(72);i.Slope=g.Slope;var y=t(73);i.Span=y.Span;var b=t(74);i.TextAnnotation=b.TextAnnotation;var x=t(75);i.Title=x.Title;var w=t(76);i.ToolbarPanel=w.ToolbarPanel;var k=t(77);i.Tooltip=k.Tooltip;var S=t(78);i.Whisker=S.Whisker},function(t,e,i){var n=t(391),r=t(74),a=t(5),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.visuals.warm_cache()},t.prototype._get_size=function(){var t=this.plot_view.canvas_view.ctx;if(this.visuals.text.set_value(t),this.model.panel.is_horizontal){var e=t.measureText(this.model.text).ascent;return e}var i=t.measureText(this.model.text).width;return i},t.prototype.render=function(){if(this.model.visible||\"css\"!=this.model.render_mode||a.hide(this.el),this.model.visible){var t;switch(this.model.angle_units){case\"rad\":t=-this.model.angle;break;case\"deg\":t=-this.model.angle*Math.PI/180;break;default:throw new Error(\"unreachable code\")}var e=null!=this.model.panel?this.model.panel:this.plot_view.frame,i=this.plot_view.frame.xscales[this.model.x_range_name],n=this.plot_view.frame.yscales[this.model.y_range_name],r=\"data\"==this.model.x_units?i.compute(this.model.x):e.xview.compute(this.model.x),o=\"data\"==this.model.y_units?n.compute(this.model.y):e.yview.compute(this.model.y);r+=this.model.x_offset,o-=this.model.y_offset;var s=\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this);s(this.plot_view.canvas_view.ctx,this.model.text,r,o,t)}},t}(r.TextAnnotationView);i.LabelView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Label\",this.prototype.default_view=s,this.mixins([\"text\",\"line:border_\",\"fill:background_\"]),this.define({x:[o.Number],x_units:[o.SpatialUnits,\"data\"],y:[o.Number],y_units:[o.SpatialUnits,\"data\"],text:[o.String],angle:[o.Angle,0],angle_units:[o.AngleUnits,\"rad\"],x_offset:[o.Number,0],y_offset:[o.Number,0],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({background_fill_color:null,border_line_color:null})},t}(r.TextAnnotation);(i.Label=l).initClass()},function(t,e,i){var n=t(391),r=t(74),o=t(200),u=t(5),s=t(15),a=function(r){function t(){return null!==r&&r.apply(this,arguments)||this}return n.__extends(t,r),t.prototype.initialize=function(t){if(r.prototype.initialize.call(this,t),this.set_data(this.model.source),\"css\"==this.model.render_mode)for(var e=0,i=this._text.length;e<i;e++){var n=u.div({class:\"bk-annotation-child\",style:{display:\"none\"}});this.el.appendChild(n)}},t.prototype.connect_signals=function(){var t=this;r.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?(this.connect(this.model.change,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.streaming,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.patching,function(){t.set_data(t.model.source),t.render()}),this.connect(this.model.source.change,function(){t.set_data(t.model.source),t.render()})):(this.connect(this.model.change,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.streaming,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.patching,function(){t.set_data(t.model.source),t.plot_view.request_render()}),this.connect(this.model.source.change,function(){t.set_data(t.model.source),t.plot_view.request_render()}))},t.prototype.set_data=function(t){r.prototype.set_data.call(this,t),this.visuals.warm_cache(t)},t.prototype._map_data=function(){var t=this.plot_view.frame.xscales[this.model.x_range_name],e=this.plot_view.frame.yscales[this.model.y_range_name],i=null!=this.model.panel?this.model.panel:this.plot_view.frame,n=\"data\"==this.model.x_units?t.v_compute(this._x):i.xview.v_compute(this._x),r=\"data\"==this.model.y_units?e.v_compute(this._y):i.yview.v_compute(this._y);return[n,r]},t.prototype.render=function(){if(this.model.visible||\"css\"!=this.model.render_mode||u.hide(this.el),this.model.visible)for(var t=\"canvas\"==this.model.render_mode?this._v_canvas_text.bind(this):this._v_css_text.bind(this),e=this.plot_view.canvas_view.ctx,i=this._map_data(),n=i[0],r=i[1],o=0,s=this._text.length;o<s;o++)t(e,o,this._text[o],n[o]+this._x_offset[o],r[o]-this._y_offset[o],this._angle[o])},t.prototype._get_size=function(){var t=this.plot_view.canvas_view.ctx;switch(this.visuals.text.set_value(t),this.model.panel.side){case\"above\":case\"below\":var e=t.measureText(this._text[0]).ascent;return e;case\"left\":case\"right\":var i=t.measureText(this._text[0]).width;return i;default:throw new Error(\"unreachable code\")}},t.prototype._v_canvas_text=function(t,e,i,n,r,o){this.visuals.text.set_vectorize(t,e);var s=this._calculate_bounding_box_dimensions(t,i);t.save(),t.beginPath(),t.translate(n,r),t.rotate(o),t.rect(s[0],s[1],s[2],s[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(i,0,0)),t.restore()},t.prototype._v_css_text=function(t,e,i,n,r,o){var s=this.el.children[e];s.textContent=i,this.visuals.text.set_vectorize(t,e);var a=this._calculate_bounding_box_dimensions(t,i),l=this.visuals.border_line.line_dash.value(),h=l.length<2?\"solid\":\"dashed\";this.visuals.border_line.set_vectorize(t,e),this.visuals.background_fill.set_vectorize(t,e),s.style.position=\"absolute\",s.style.left=n+a[0]+\"px\",s.style.top=r+a[1]+\"px\",s.style.color=\"\"+this.visuals.text.text_color.value(),s.style.opacity=\"\"+this.visuals.text.text_alpha.value(),s.style.font=\"\"+this.visuals.text.font_value(),s.style.lineHeight=\"normal\",o&&(s.style.transform=\"rotate(\"+o+\"rad)\"),this.visuals.background_fill.doit&&(s.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(s.style.borderStyle=\"\"+h,s.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",s.style.borderColor=\"\"+this.visuals.border_line.color_value()),u.show(s)},t}(r.TextAnnotationView);i.LabelSetView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LabelSet\",this.prototype.default_view=a,this.mixins([\"text\",\"line:border_\",\"fill:background_\"]),this.define({x:[s.NumberSpec],y:[s.NumberSpec],x_units:[s.SpatialUnits,\"data\"],y_units:[s.SpatialUnits,\"data\"],text:[s.StringSpec,{field:\"text\"}],angle:[s.AngleSpec,0],x_offset:[s.NumberSpec,{value:0}],y_offset:[s.NumberSpec,{value:0}],source:[s.Instance,function(){return new o.ColumnDataSource}],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.override({background_fill_color:null,border_line_color:null})},t}(r.TextAnnotation);(i.LabelSet=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(15),s=t(19),M=t(41),O=t(24),z=t(21),P=t(32),j=t(44),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.cursor=function(t,e){return\"none\"==this.model.click_policy?null:\"pointer\"},Object.defineProperty(t.prototype,\"legend_padding\",{get:function(){return null!=this.visuals.border_line.line_color.value()?this.model.padding:0},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.item_change,function(){return t.plot_view.request_render()})},t.prototype.compute_legend_bbox=function(){var t=this.model.get_legend_names(),e=this.model,i=e.glyph_height,n=e.glyph_width,r=this.model,o=r.label_height,s=r.label_width;this.max_label_height=z.max([M.get_text_height(this.visuals.label_text.font_value()).height,o,i]);var a=this.plot_view.canvas_view.ctx;a.save(),this.visuals.label_text.set_value(a),this.text_widths={};for(var l=0,h=t;l<h.length;l++){var u=h[l];this.text_widths[u]=z.max([a.measureText(u).width,s])}a.restore();var c,_,p=Math.max(z.max(P.values(this.text_widths)),0),d=this.model.margin,f=this.legend_padding,v=this.model.spacing,m=this.model.label_standoff;if(\"vertical\"==this.model.orientation)c=t.length*this.max_label_height+Math.max(t.length-1,0)*v+2*f,_=p+n+m+2*f;else{for(var g in _=2*f+Math.max(t.length-1,0)*v,this.text_widths){var y=this.text_widths[g];_+=z.max([y,s])+n+m}c=this.max_label_height+2*f}var b,x,w=null!=this.model.panel?this.model.panel:this.plot_view.frame,k=w.bbox.ranges,S=k[0],C=k[1],T=this.model.location;if(j.isString(T))switch(T){case\"top_left\":b=S.start+d,x=C.start+d;break;case\"top_center\":b=(S.end+S.start)/2-_/2,x=C.start+d;break;case\"top_right\":b=S.end-d-_,x=C.start+d;break;case\"bottom_right\":b=S.end-d-_,x=C.end-d-c;break;case\"bottom_center\":b=(S.end+S.start)/2-_/2,x=C.end-d-c;break;case\"bottom_left\":b=S.start+d,x=C.end-d-c;break;case\"center_left\":b=S.start+d,x=(C.end+C.start)/2-c/2;break;case\"center\":b=(S.end+S.start)/2-_/2,x=(C.end+C.start)/2-c/2;break;case\"center_right\":b=S.end-d-_,x=(C.end+C.start)/2-c/2;break;default:throw new Error(\"unreachable code\")}else{if(!j.isArray(T)||2!=T.length)throw new Error(\"unreachable code\");var A=T[0],E=T[1];b=w.xview.compute(A),x=w.yview.compute(E)-c}return{x:b,y:x,width:_,height:c}},t.prototype.interactive_bbox=function(){var t=this.compute_legend_bbox(),e=t.x,i=t.y,n=t.width,r=t.height;return new O.BBox({x:e,y:i,width:n,height:r})},t.prototype.interactive_hit=function(t,e){var i=this.interactive_bbox();return i.contains(t,e)},t.prototype.on_hit=function(t,e){for(var i,n,r,o=this.model.glyph_width,s=this.legend_padding,a=this.model.spacing,l=this.model.label_standoff,h=r=s,u=this.compute_legend_bbox(),c=\"vertical\"==this.model.orientation,_=0,p=this.model.items;_<p.length;_++)for(var d=p[_],f=d.get_labels_list_from_label_prop(),v=0,m=f;v<m.length;v++){var g=m[v],y=u.x+h,b=u.y+r,x=void 0,w=void 0;c?(i=[u.width-2*s,this.max_label_height],x=i[0],w=i[1]):(n=[this.text_widths[g]+o+l,this.max_label_height],x=n[0],w=n[1]);var k=new O.BBox({x:y,y:b,width:x,height:w});if(k.contains(t,e)){switch(this.model.click_policy){case\"hide\":for(var S=0,C=d.renderers;S<C.length;S++){var T=C[S];T.visible=!T.visible}break;case\"mute\":for(var A=0,E=d.renderers;A<E.length;A++){var T=E[A];T.muted=!T.muted}}return!0}c?r+=this.max_label_height+a:h+=this.text_widths[g]+o+l+a}return!1},t.prototype.render=function(){if(this.model.visible&&0!=this.model.items.length){for(var t=0,e=this.model.items;t<e.length;t++){var i=e[t];i.legend=this.model}var n=this.plot_view.canvas_view.ctx,r=this.compute_legend_bbox();n.save(),this._draw_legend_box(n,r),this._draw_legend_items(n,r),n.restore()}},t.prototype._draw_legend_box=function(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())},t.prototype._draw_legend_items=function(y,b){for(var x=this,t=this.model,w=t.glyph_width,k=t.glyph_height,S=this.legend_padding,C=this.model.spacing,T=this.model.label_standoff,A=S,E=S,M=\"vertical\"==this.model.orientation,e=function(t){var e,i,n=t.get_labels_list_from_label_prop(),r=t.get_field_from_label_prop();if(0==n.length)return\"continue\";for(var o=function(){switch(x.model.click_policy){case\"none\":return!0;case\"hide\":return z.all(t.renderers,function(t){return t.visible});case\"mute\":return z.all(t.renderers,function(t){return!t.muted})}}(),s=0,a=n;s<a.length;s++){var l=a[s],h=b.x+A,u=b.y+E,c=h+w,_=u+k;M?E+=O.max_label_height+C:A+=O.text_widths[l]+w+T+C,O.visuals.label_text.set_value(y),y.fillText(l,c+T,u+O.max_label_height/2);for(var p=0,d=t.renderers;p<d.length;p++){var f=d[p],v=O.plot_view.renderer_views[f.id];v.draw_legend(y,h,c,u,_,r,l,t.index)}if(!o){var m=void 0,g=void 0;M?(e=[b.width-2*S,O.max_label_height],m=e[0],g=e[1]):(i=[O.text_widths[l]+w+T,O.max_label_height],m=i[0],g=i[1]),y.beginPath(),y.rect(h,u,m,g),O.visuals.inactive_fill.set_value(y),y.fill()}}},O=this,i=0,n=this.model.items;i<n.length;i++){var r=n[i];e(r)}},t.prototype._get_size=function(){var t=this.compute_legend_bbox();switch(this.model.panel.side){case\"above\":case\"below\":return t.height+2*this.model.margin;case\"left\":case\"right\":return t.width+2*this.model.margin}},t}(r.AnnotationView);i.LegendView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.initialize=function(){e.prototype.initialize.call(this),this.item_change=new s.Signal0(this,\"item_change\")},t.initClass=function(){this.prototype.type=\"Legend\",this.prototype.default_view=a,this.mixins([\"text:label_\",\"fill:inactive_\",\"line:border_\",\"fill:background_\"]),this.define({orientation:[o.Orientation,\"vertical\"],location:[o.Any,\"top_right\"],label_standoff:[o.Number,5],glyph_height:[o.Number,20],glyph_width:[o.Number,20],label_height:[o.Number,20],label_width:[o.Number,20],margin:[o.Number,10],padding:[o.Number,10],spacing:[o.Number,3],items:[o.Array,[]],click_policy:[o.Any,\"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:\"10pt\",label_text_baseline:\"middle\"})},t.prototype.get_legend_names=function(){for(var t=[],e=0,i=this.items;e<i.length;e++){var n=i[e],r=n.get_labels_list_from_label_prop();t.push.apply(t,r)}return t},t}(r.Annotation);(i.Legend=l).initClass()},function(t,e,i){var r=t(391),n=t(59),o=t(201),s=t(47),a=t(15),l=t(14),h=t(21),u=function(n){function t(t){return n.call(this,t)||this}return r.__extends(t,n),t.initClass=function(){this.prototype.type=\"LegendItem\",this.define({label:[a.StringSpec,null],renderers:[a.Array,[]],index:[a.Number,null]})},t.prototype._check_data_sources_on_renderers=function(){var t=this.get_field_from_label_prop();if(null!=t){if(this.renderers.length<1)return!1;var e=this.renderers[0].data_source;if(null!=e)for(var i=0,n=this.renderers;i<n.length;i++){var r=n[i];if(r.data_source!=e)return!1}}return!0},t.prototype._check_field_label_on_data_source=function(){var t=this.get_field_from_label_prop();if(null!=t){if(this.renderers.length<1)return!1;var e=this.renderers[0].data_source;if(null!=e&&!h.includes(e.columns(),t))return!1}return!0},t.prototype.initialize=function(){var t=this;n.prototype.initialize.call(this),this.legend=null,this.connect(this.change,function(){null!=t.legend&&t.legend.item_change.emit()});var e=this._check_data_sources_on_renderers();e||l.logger.error(\"Non matching data sources on legend item renderers\");var i=this._check_field_label_on_data_source();i||l.logger.error(\"Bad column name on label: \"+this.label)},t.prototype.get_field_from_label_prop=function(){var t=this.label;return s.isField(t)?t.field:null},t.prototype.get_labels_list_from_label_prop=function(){if(s.isValue(this.label))return[this.label.value];var t=this.get_field_from_label_prop();if(null!=t){var e=void 0;if(!this.renderers[0]||null==this.renderers[0].data_source)return[\"No source found\"];if((e=this.renderers[0].data_source)instanceof o.ColumnarDataSource){var i=e.get_column(t);return null!=i?h.uniq(Array.from(i)):[\"Invalid field\"]}}return[]},t}(n.Model);(i.LegendItem=u).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(19),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.data_update,function(){return t.plot_view.request_render()})},t.prototype.render=function(){if(this.model.visible){var t=this.model,e=t.xs,i=t.ys;if(e.length==i.length&&!(e.length<3||i.length<3)){for(var n=this.plot_view.frame,r=this.plot_view.canvas_view.ctx,o=0,s=e.length;o<s;o++){var a=void 0;if(\"screen\"!=this.model.xs_units)throw new Error(\"not implemented\");a=this.model.screen?e[o]:n.xview.compute(e[o]);var l=void 0;if(\"screen\"!=this.model.ys_units)throw new Error(\"not implemented\");l=this.model.screen?i[o]:n.yview.compute(i[o]),0==o?(r.beginPath(),r.moveTo(a,l)):r.lineTo(a,l)}r.closePath(),this.visuals.line.doit&&(this.visuals.line.set_value(r),r.stroke()),this.visuals.fill.doit&&(this.visuals.fill.set_value(r),r.fill())}}},t}(r.AnnotationView);i.PolyAnnotationView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PolyAnnotation\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({xs:[s.Array,[]],xs_units:[s.SpatialUnits,\"data\"],ys:[s.Array,[]],ys_units:[s.SpatialUnits,\"data\"],x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"]}),this.internal({screen:[s.Boolean,!1]}),this.override({fill_color:\"#fff9ba\",fill_alpha:.4,line_color:\"#cccccc\",line_alpha:.3})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.data_update=new o.Signal0(this,\"data_update\")},t.prototype.update=function(t){var e=t.xs,i=t.ys;this.setv({xs:e,ys:i,screen:!0},{silent:!0}),this.data_update.emit()},t}(r.Annotation);(i.PolyAnnotation=l).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype.render=function(){this.model.visible&&this._draw_slope()},t.prototype._draw_slope=function(){var t=this.model.gradient,e=this.model.y_intercept;if(null!=t&&null!=e){var i=this.plot_view.frame,n=i.xscales[this.model.x_range_name],r=i.yscales[this.model.y_range_name],o=i._top.value,s=o+i._height.value,a=r.invert(o),l=r.invert(s),h=(a-e)/t,u=(l-e)/t,c=n.compute(h),_=n.compute(u),p=this.plot_view.canvas_view.ctx;p.save(),p.beginPath(),this.visuals.line.set_value(p),p.moveTo(c,o),p.lineTo(_,s),p.stroke(),p.restore()}},t}(r.AnnotationView);i.SlopeView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Slope\",this.prototype.default_view=s,this.mixins([\"line\"]),this.define({gradient:[o.Number,null],y_intercept:[o.Number,null],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({line_color:\"black\"})},t}(r.Annotation);(i.Slope=a).initClass()},function(t,e,i){var n=t(391),r=t(60),c=t(5),o=t(15),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),this.el.style.position=\"absolute\",c.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.model.for_hover?this.connect(this.model.properties.computed_location.change,function(){return t._draw_span()}):\"canvas\"==this.model.render_mode?(this.connect(this.model.change,function(){return t.plot_view.request_render()}),this.connect(this.model.properties.location.change,function(){return t.plot_view.request_render()})):(this.connect(this.model.change,function(){return t.render()}),this.connect(this.model.properties.location.change,function(){return t._draw_span()}))},t.prototype.render=function(){this.model.visible||\"css\"!=this.model.render_mode||c.hide(this.el),this.model.visible&&this._draw_span()},t.prototype._draw_span=function(){var i=this,n=this.model.for_hover?this.model.computed_location:this.model.location;if(null!=n){var t,e,r,o,s=this.plot_view.frame,a=s.xscales[this.model.x_range_name],l=s.yscales[this.model.y_range_name],h=function(t,e){return i.model.for_hover?i.model.computed_location:\"data\"==i.model.location_units?t.compute(n):e.compute(n)};if(\"width\"==this.model.dimension?(r=h(l,s.yview),e=s._left.value,o=s._width.value,t=this.model.properties.line_width.value()):(r=s._top.value,e=h(a,s.xview),o=this.model.properties.line_width.value(),t=s._height.value),\"css\"==this.model.render_mode)this.el.style.top=r+\"px\",this.el.style.left=e+\"px\",this.el.style.width=o+\"px\",this.el.style.height=t+\"px\",this.el.style.backgroundColor=this.model.properties.line_color.value(),this.el.style.opacity=this.model.properties.line_alpha.value(),c.show(this.el);else if(\"canvas\"==this.model.render_mode){var u=this.plot_view.canvas_view.ctx;u.save(),u.beginPath(),this.visuals.line.set_value(u),u.moveTo(e,r),\"width\"==this.model.dimension?u.lineTo(e+o,r):u.lineTo(e,r+t),u.stroke(),u.restore()}}else c.hide(this.el)},t}(r.AnnotationView);i.SpanView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Span\",this.prototype.default_view=s,this.mixins([\"line\"]),this.define({render_mode:[o.RenderMode,\"canvas\"],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"],location:[o.Number,null],location_units:[o.SpatialUnits,\"data\"],dimension:[o.Dimension,\"width\"]}),this.override({line_color:\"black\"}),this.internal({for_hover:[o.Boolean,!1],computed_location:[o.Number,null]})},t}(r.Annotation);(i.Span=a).initClass()},function(t,e,i){var n=t(391),r=t(60),l=t(5),o=t(15),s=t(41),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),\"css\"==this.model.render_mode&&(this.el.classList.add(\"bk-annotation\"),this.plot_view.canvas_overlays.appendChild(this.el))},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),\"css\"==this.model.render_mode?this.connect(this.model.change,function(){return t.render()}):this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype._calculate_text_dimensions=function(t,e){var i=t.measureText(e).width,n=s.get_text_height(this.visuals.text.font_value()).height;return[i,n]},t.prototype._calculate_bounding_box_dimensions=function(t,e){var i,n,r=this._calculate_text_dimensions(t,e),o=r[0],s=r[1];switch(t.textAlign){case\"left\":i=0;break;case\"center\":i=-o/2;break;case\"right\":i=-o;break;default:throw new Error(\"unreachable code\")}switch(t.textBaseline){case\"top\":n=0;break;case\"middle\":n=-.5*s;break;case\"bottom\":n=-1*s;break;case\"alphabetic\":n=-.8*s;break;case\"hanging\":n=-.17*s;break;case\"ideographic\":n=-.83*s;break;default:throw new Error(\"unreachable code\")}return[i,n,o,s]},t.prototype._canvas_text=function(t,e,i,n,r){this.visuals.text.set_value(t);var o=this._calculate_bounding_box_dimensions(t,e);t.save(),t.beginPath(),t.translate(i,n),r&&t.rotate(r),t.rect(o[0],o[1],o[2],o[3]),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fill()),this.visuals.border_line.doit&&(this.visuals.border_line.set_value(t),t.stroke()),this.visuals.text.doit&&(this.visuals.text.set_value(t),t.fillText(e,0,0)),t.restore()},t.prototype._css_text=function(t,e,i,n,r){l.hide(this.el),this.visuals.text.set_value(t);var o=this._calculate_bounding_box_dimensions(t,e),s=this.visuals.border_line.line_dash.value(),a=s.length<2?\"solid\":\"dashed\";this.visuals.border_line.set_value(t),this.visuals.background_fill.set_value(t),this.el.style.position=\"absolute\",this.el.style.left=i+o[0]+\"px\",this.el.style.top=n+o[1]+\"px\",this.el.style.color=\"\"+this.visuals.text.text_color.value(),this.el.style.opacity=\"\"+this.visuals.text.text_alpha.value(),this.el.style.font=\"\"+this.visuals.text.font_value(),this.el.style.lineHeight=\"normal\",r&&(this.el.style.transform=\"rotate(\"+r+\"rad)\"),this.visuals.background_fill.doit&&(this.el.style.backgroundColor=\"\"+this.visuals.background_fill.color_value()),this.visuals.border_line.doit&&(this.el.style.borderStyle=\"\"+a,this.el.style.borderWidth=this.visuals.border_line.line_width.value()+\"px\",this.el.style.borderColor=\"\"+this.visuals.border_line.color_value()),this.el.textContent=e,l.show(this.el)},t}(r.AnnotationView);i.TextAnnotationView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextAnnotation\",this.define({render_mode:[o.RenderMode,\"canvas\"]})},t}(r.Annotation);(i.TextAnnotation=h).initClass()},function(t,e,i){var n=t(391),r=t(74),s=t(5),o=t(15),a=t(49),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.visuals.text=new a.Text(this.model)},t.prototype._get_location=function(){var t,e,i=this.model.panel,n=this.model.offset;switch(i.side){case\"above\":case\"below\":switch(this.model.vertical_align){case\"top\":e=i._top.value+5;break;case\"middle\":e=i._vcenter.value;break;case\"bottom\":e=i._bottom.value-5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":t=i._left.value+n;break;case\"center\":t=i._hcenter.value;break;case\"right\":t=i._right.value-n;break;default:throw new Error(\"unreachable code\")}break;case\"left\":switch(this.model.vertical_align){case\"top\":t=i._left.value-5;break;case\"middle\":t=i._hcenter.value;break;case\"bottom\":t=i._right.value+5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":e=i._bottom.value-n;break;case\"center\":e=i._vcenter.value;break;case\"right\":e=i._top.value+n;break;default:throw new Error(\"unreachable code\")}break;case\"right\":switch(this.model.vertical_align){case\"top\":t=i._right.value-5;break;case\"middle\":t=i._hcenter.value;break;case\"bottom\":t=i._left.value+5;break;default:throw new Error(\"unreachable code\")}switch(this.model.align){case\"left\":e=i._top.value+n;break;case\"center\":e=i._vcenter.value;break;case\"right\":e=i._bottom.value-n;break;default:throw new Error(\"unreachable code\")}break;default:throw new Error(\"unreachable code\")}return[t,e]},t.prototype.render=function(){if(this.model.visible){var t=this.model.text;if(null!=t&&0!=t.length){this.model.text_baseline=this.model.vertical_align,this.model.text_align=this.model.align;var e=this._get_location(),i=e[0],n=e[1],r=this.model.panel.get_label_angle_heuristic(\"parallel\"),o=\"canvas\"==this.model.render_mode?this._canvas_text.bind(this):this._css_text.bind(this);o(this.plot_view.canvas_view.ctx,t,i,n,r)}}else\"css\"==this.model.render_mode&&s.hide(this.el)},t.prototype._get_size=function(){var t=this.model.text;if(null==t||0==t.length)return 0;var e=this.plot_view.canvas_view.ctx;return this.visuals.text.set_value(e),e.measureText(t).ascent+10},t}(r.TextAnnotationView);i.TitleView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Title\",this.prototype.default_view=l,this.mixins([\"line:border_\",\"fill:background_\"]),this.define({text:[o.String],text_font:[o.Font,\"helvetica\"],text_font_size:[o.FontSizeSpec,\"10pt\"],text_font_style:[o.FontStyle,\"bold\"],text_color:[o.ColorSpec,\"#444444\"],text_alpha:[o.NumberSpec,1],vertical_align:[o.VerticalAlign,\"bottom\"],align:[o.TextAlign,\"left\"],offset:[o.Number,0]}),this.override({background_fill_color:null,border_line_color:null}),this.internal({text_align:[o.TextAlign,\"left\"],text_baseline:[o.TextBaseline,\"bottom\"]})},t}(r.TextAnnotation);(i.Title=h).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(4),s=t(5),a=t(15),l=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){i.prototype.initialize.call(this,t),this.plot_view.canvas_events.appendChild(this.el),this._toolbar_views={},o.build_views(this._toolbar_views,[this.model.toolbar],{parent:this});var e=this._toolbar_views[this.model.toolbar.id];this.plot_view.visibility_callbacks.push(function(t){return e.set_visibility(t)})},t.prototype.remove=function(){o.remove_views(this._toolbar_views),i.prototype.remove.call(this)},t.prototype.render=function(){if(i.prototype.render.call(this),this.model.visible){var t=this.model.panel;this.el.style.position=\"absolute\",this.el.style.left=t._left.value+\"px\",this.el.style.top=t._top.value+\"px\",this.el.style.width=t._width.value+\"px\",this.el.style.height=t._height.value+\"px\",this.el.style.overflow=\"hidden\";var e=this._toolbar_views[this.model.toolbar.id];e.render(),s.empty(this.el),this.el.appendChild(e.el),s.show(this.el)}else s.hide(this.el)},t.prototype._get_size=function(){return 30},t}(r.AnnotationView);i.ToolbarPanelView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarPanel\",this.prototype.default_view=l,this.define({toolbar:[a.Instance]})},t}(r.Annotation);(i.ToolbarPanel=h).initClass()},function(t,e,i){var n=t(391),r=t(60),f=t(5),o=t(15);function v(t,e,i,n,r){var o;switch(t){case\"horizontal\":o=e<n?\"right\":\"left\";break;case\"vertical\":o=i<r?\"below\":\"above\";break;default:o=t}return o}i.compute_side=v;var s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view.canvas_overlays.appendChild(this.el),f.hide(this.el)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.data.change,function(){return t._draw_tips()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-tooltip\")},t.prototype.render=function(){this.model.visible&&this._draw_tips()},t.prototype._draw_tips=function(){var t=this.model.data;if(f.empty(this.el),f.hide(this.el),this.model.custom?this.el.classList.add(\"bk-tooltip-custom\"):this.el.classList.remove(\"bk-tooltip-custom\"),0!=t.length){for(var e=this.plot_view.frame,i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[1],a=r[2];if(!this.model.inner_only||e.bbox.contains(o,s)){var l=f.div({},a);this.el.appendChild(l)}}var h,u,c=t[t.length-1],_=c[0],p=c[1],d=v(this.model.attachment,_,p,e._hcenter.value,e._vcenter.value);switch(this.el.classList.remove(\"bk-right\"),this.el.classList.remove(\"bk-left\"),this.el.classList.remove(\"bk-above\"),this.el.classList.remove(\"bk-below\"),f.show(this.el),d){case\"right\":this.el.classList.add(\"bk-left\"),h=_+(this.el.offsetWidth-this.el.clientWidth)+10,u=p-this.el.offsetHeight/2;break;case\"left\":this.el.classList.add(\"bk-right\"),h=_-this.el.offsetWidth-10,u=p-this.el.offsetHeight/2;break;case\"below\":this.el.classList.add(\"bk-above\"),u=p+(this.el.offsetHeight-this.el.clientHeight)+10,h=Math.round(_-this.el.offsetWidth/2);break;case\"above\":this.el.classList.add(\"bk-below\"),u=p-this.el.offsetHeight-10,h=Math.round(_-this.el.offsetWidth/2);break;default:throw new Error(\"unreachable code\")}this.model.show_arrow&&this.el.classList.add(\"bk-tooltip-arrow\"),0<this.el.childNodes.length?(this.el.style.top=u+\"px\",this.el.style.left=h+\"px\"):f.hide(this.el)}},t}(r.AnnotationView);i.TooltipView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tooltip\",this.prototype.default_view=s,this.define({attachment:[o.String,\"horizontal\"],inner_only:[o.Bool,!0],show_arrow:[o.Bool,!0]}),this.override({level:\"overlay\"}),this.internal({data:[o.Any,[]],custom:[o.Any]})},t.prototype.clear=function(){this.data=[]},t.prototype.add=function(t,e,i){this.data=this.data.concat([[t,e,i]])},t}(r.Annotation);(i.Tooltip=a).initClass()},function(t,e,i){var n=t(391),r=t(60),o=t(200),s=t(62),a=t(15),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.set_data(this.model.source)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.source.streaming,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.patching,function(){return t.set_data(t.model.source)}),this.connect(this.model.source.change,function(){return t.set_data(t.model.source)})},t.prototype.set_data=function(t){e.prototype.set_data.call(this,t),this.visuals.warm_cache(t),this.plot_view.request_render()},t.prototype._map_data=function(){var t,e,i,n=this.plot_model.frame,r=this.model.dimension,o=n.xscales[this.model.x_range_name],s=n.yscales[this.model.y_range_name],a=\"height\"==r?s:o,l=\"height\"==r?o:s,h=\"height\"==r?n.yview:n.xview,u=\"height\"==r?n.xview:n.yview;t=\"data\"==this.model.lower.units?a.v_compute(this._lower):h.v_compute(this._lower),e=\"data\"==this.model.upper.units?a.v_compute(this._upper):h.v_compute(this._upper),i=\"data\"==this.model.base.units?l.v_compute(this._base):u.v_compute(this._base);var c=\"height\"==r?[1,0]:[0,1],_=c[0],p=c[1],d=[t,i],f=[e,i];this._lower_sx=d[_],this._lower_sy=d[p],this._upper_sx=f[_],this._upper_sy=f[p]},t.prototype.render=function(){if(this.model.visible){this._map_data();var t=this.plot_view.canvas_view.ctx;if(this.visuals.line.doit)for(var e=0,i=this._lower_sx.length;e<i;e++)this.visuals.line.set_vectorize(t,e),t.beginPath(),t.moveTo(this._lower_sx[e],this._lower_sy[e]),t.lineTo(this._upper_sx[e],this._upper_sy[e]),t.stroke();var n=\"height\"==this.model.dimension?0:Math.PI/2;if(null!=this.model.lower_head)for(var e=0,i=this._lower_sx.length;e<i;e++)t.save(),t.translate(this._lower_sx[e],this._lower_sy[e]),t.rotate(n+Math.PI),this.model.lower_head.render(t,e),t.restore();if(null!=this.model.upper_head)for(var e=0,i=this._upper_sx.length;e<i;e++)t.save(),t.translate(this._upper_sx[e],this._upper_sy[e]),t.rotate(n),this.model.upper_head.render(t,e),t.restore()}},t}(r.AnnotationView);i.WhiskerView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Whisker\",this.prototype.default_view=l,this.mixins([\"line\"]),this.define({lower:[a.DistanceSpec],lower_head:[a.Instance,function(){return new s.TeeHead({level:\"underlay\",size:10})}],upper:[a.DistanceSpec],upper_head:[a.Instance,function(){return new s.TeeHead({level:\"underlay\",size:10})}],base:[a.DistanceSpec],dimension:[a.Dimension,\"height\"],source:[a.Instance,function(){return new o.ColumnDataSource}],x_range_name:[a.String,\"default\"],y_range_name:[a.String,\"default\"]}),this.override({level:\"underlay\"})},t}(r.Annotation);(i.Whisker=h).initClass()},function(t,e,i){var n=t(391),r=t(187),o=t(15),s=t(12),l=t(21),T=t(44),a=t(181),h=Math.abs,u=Math.min,c=Math.max,_=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.render=function(){if(this.model.visible){var t={tick:this._tick_extent(),tick_label:this._tick_label_extents(),axis_label:this._axis_label_extent()},e=this.model.tick_coords,i=this.plot_view.canvas_view.ctx;i.save(),this._draw_rule(i,t),this._draw_major_ticks(i,t,e),this._draw_minor_ticks(i,t,e),this._draw_major_labels(i,t,e),this._draw_axis_label(i,t,e),null!=this._render&&this._render(i,t,e),i.restore()}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.plot_view.request_render()})},t.prototype.get_size=function(){return this.model.visible?Math.round(this._get_size()):0},t.prototype._get_size=function(){return null!=this.model.fixed_location?0:this._tick_extent()+this._tick_label_extent()+this._axis_label_extent()},Object.defineProperty(t.prototype,\"needs_clip\",{get:function(){return null!=this.model.fixed_location},enumerable:!0,configurable:!0}),t.prototype._draw_rule=function(t,e){if(this.visuals.axis_line.doit){var i=this.model.rule_coords,n=i[0],r=i[1],o=this.plot_view.map_to_screen(n,r,this.model.x_range_name,this.model.y_range_name),s=o[0],a=o[1],l=this.model.normals,h=l[0],u=l[1],c=this.model.offsets,_=c[0],p=c[1];this.visuals.axis_line.set_value(t),t.beginPath(),t.moveTo(Math.round(s[0]+h*_),Math.round(a[0]+u*p));for(var d=1;d<s.length;d++){var f=Math.round(s[d]+h*_),v=Math.round(a[d]+u*p);t.lineTo(f,v)}t.stroke()}},t.prototype._draw_major_ticks=function(t,e,i){var n=this.model.major_tick_in,r=this.model.major_tick_out,o=this.visuals.major_tick_line;this._draw_ticks(t,i.major,n,r,o)},t.prototype._draw_minor_ticks=function(t,e,i){var n=this.model.minor_tick_in,r=this.model.minor_tick_out,o=this.visuals.minor_tick_line;this._draw_ticks(t,i.minor,n,r,o)},t.prototype._draw_major_labels=function(t,e,i){var n=i.major,r=this.model.compute_labels(n[this.model.dimension]),o=this.model.major_label_orientation,s=e.tick+this.model.major_label_standoff,a=this.visuals.major_label_text;this._draw_oriented_labels(t,r,n,o,this.model.panel.side,s,a)},t.prototype._draw_axis_label=function(t,e,i){if(null!=this.model.axis_label&&0!=this.model.axis_label.length&&null==this.model.fixed_location){var n,r;switch(this.model.panel.side){case\"above\":n=this.model.panel._hcenter.value,r=this.model.panel._bottom.value;break;case\"below\":n=this.model.panel._hcenter.value,r=this.model.panel._top.value;break;case\"left\":n=this.model.panel._right.value,r=this.model.panel._vcenter.value;break;case\"right\":n=this.model.panel._left.value,r=this.model.panel._vcenter.value;break;default:throw new Error(\"unknown side: \"+this.model.panel.side)}var o=[[n],[r]],s=e.tick+l.sum(e.tick_label)+this.model.axis_label_standoff,a=this.visuals.axis_label_text;this._draw_oriented_labels(t,[this.model.axis_label],o,\"parallel\",this.model.panel.side,s,a,\"screen\")}},t.prototype._draw_ticks=function(t,e,i,n,r){if(r.doit){var o=e[0],s=e[1],a=this.plot_view.map_to_screen(o,s,this.model.x_range_name,this.model.y_range_name),l=a[0],h=a[1],u=this.model.normals,c=u[0],_=u[1],p=this.model.offsets,d=p[0],f=p[1],v=[c*(d-i),_*(f-i)],m=v[0],g=v[1],y=[c*(d+n),_*(f+n)],b=y[0],x=y[1];r.set_value(t);for(var w=0;w<l.length;w++){var k=Math.round(l[w]+b),S=Math.round(h[w]+x),C=Math.round(l[w]+m),T=Math.round(h[w]+g);t.beginPath(),t.moveTo(k,S),t.lineTo(C,T),t.stroke()}}},t.prototype._draw_oriented_labels=function(t,e,i,n,r,o,s,a){var l,h,u;if(void 0===a&&(a=\"data\"),s.doit&&0!=e.length){var c,_,p,d;if(\"screen\"==a)c=i[0],_=i[1],p=(l=[0,0])[0],d=l[1];else{var f=i[0],v=i[1];h=this.plot_view.map_to_screen(f,v,this.model.x_range_name,this.model.y_range_name),c=h[0],_=h[1],u=this.model.offsets,p=u[0],d=u[1]}var m,g=this.model.normals,y=g[0],b=g[1],x=y*(p+o),w=b*(d+o);s.set_value(t),this.model.panel.apply_label_text_heuristics(t,n),m=T.isString(n)?this.model.panel.get_label_angle_heuristic(n):-n;for(var k=0;k<c.length;k++){var S=Math.round(c[k]+x),C=Math.round(_[k]+w);t.translate(S,C),t.rotate(m),t.fillText(e[k],0,0),t.rotate(-m),t.translate(-S,-C)}}},t.prototype._axis_label_extent=function(){if(null==this.model.axis_label||\"\"==this.model.axis_label)return 0;var t=this.model.axis_label_standoff,e=this.visuals.axis_label_text;return this._oriented_labels_extent([this.model.axis_label],\"parallel\",this.model.panel.side,t,e)},t.prototype._tick_extent=function(){return this.model.major_tick_out},t.prototype._tick_label_extent=function(){return l.sum(this._tick_label_extents())},t.prototype._tick_label_extents=function(){var t=this.model.tick_coords.major,e=this.model.compute_labels(t[this.model.dimension]),i=this.model.major_label_orientation,n=this.model.major_label_standoff,r=this.visuals.major_label_text;return[this._oriented_labels_extent(e,i,this.model.panel.side,n,r)]},t.prototype._oriented_labels_extent=function(t,e,i,n,r){if(0==t.length)return 0;var o,s,a=this.plot_view.canvas_view.ctx;r.set_value(a),T.isString(e)?(o=1,s=this.model.panel.get_label_angle_heuristic(e)):(o=2,s=-e),s=Math.abs(s);for(var l=Math.cos(s),h=Math.sin(s),u=0,c=0;c<t.length;c++){var _=1.1*a.measureText(t[c]).width,p=.9*a.measureText(t[c]).ascent,d=void 0;u<(d=\"above\"==i||\"below\"==i?_*h+p/o*l:_*l+p/o*h)&&(u=d)}return 0<u&&(u+=n),u},t}(r.GuideRendererView);i.AxisView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Axis\",this.prototype.default_view=_,this.mixins([\"line:axis_\",\"line:major_tick_\",\"line:minor_tick_\",\"text:major_label_\",\"text:axis_label_\"]),this.define({bounds:[o.Any,\"auto\"],ticker:[o.Instance,null],formatter:[o.Instance,null],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"],axis_label:[o.String,\"\"],axis_label_standoff:[o.Int,5],major_label_standoff:[o.Int,5],major_label_orientation:[o.Any,\"horizontal\"],major_label_overrides:[o.Any,{}],major_tick_in:[o.Number,2],major_tick_out:[o.Number,6],minor_tick_in:[o.Number,0],minor_tick_out:[o.Number,4],fixed_location:[o.Any,null]}),this.override({axis_line_color:\"black\",major_tick_line_color:\"black\",minor_tick_line_color:\"black\",major_label_text_font_size:\"8pt\",major_label_text_align:\"center\",major_label_text_baseline:\"alphabetic\",axis_label_text_font_size:\"10pt\",axis_label_text_font_style:\"italic\"})},t.prototype.add_panel=function(t){this.panel=new s.SidePanel({side:t}),this.panel.attach_document(this.document)},Object.defineProperty(t.prototype,\"normals\",{get:function(){return this.panel.normals},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"dimension\",{get:function(){return this.panel.dimension},enumerable:!0,configurable:!0}),t.prototype.compute_labels=function(t){for(var e=this.formatter.doFormat(t,this),i=0;i<t.length;i++)t[i]in this.major_label_overrides&&(e[i]=this.major_label_overrides[t[i]]);return e},Object.defineProperty(t.prototype,\"offsets\",{get:function(){var t=this.plot.plot_canvas.frame,e=[0,0],i=e[0],n=e[1];switch(this.panel.side){case\"below\":n=h(this.panel._top.value-t._bottom.value);break;case\"above\":n=h(this.panel._bottom.value-t._top.value);break;case\"right\":i=h(this.panel._left.value-t._right.value);break;case\"left\":i=h(this.panel._right.value-t._left.value)}return[i,n]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"ranges\",{get:function(){var t=this.dimension,e=(t+1)%2,i=this.plot.plot_canvas.frame,n=[i.x_ranges[this.x_range_name],i.y_ranges[this.y_range_name]];return[n[t],n[e]]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_bounds\",{get:function(){var t=this.ranges[0],e=this.bounds,i=[t.min,t.max];if(\"auto\"==e)return[t.min,t.max];if(T.isArray(e)){var n=void 0,r=void 0,o=e[0],s=e[1],a=i[0],l=i[1];return h(o-s)>h(a-l)?(n=c(u(o,s),a),r=u(c(o,s),l)):(n=u(o,s),r=c(o,s)),[n,r]}throw new Error(\"user bounds '\"+e+\"' not understood\")},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"rule_coords\",{get:function(){var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=new Array(2),a=new Array(2),l=[s,a];return l[t][0]=Math.max(r,i.min),l[t][1]=Math.min(o,i.max),l[t][0]>l[t][1]&&(l[t][0]=l[t][1]=NaN),l[e][0]=this.loc,l[e][1]=this.loc,l},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tick_coords\",{get:function(){for(var t=this.dimension,e=(t+1)%2,i=this.ranges[0],n=this.computed_bounds,r=n[0],o=n[1],s=this.ticker.get_ticks(r,o,i,this.loc,{}),a=s.major,l=s.minor,h=[[],[]],u=[[],[]],c=[i.min,i.max],_=c[0],p=c[1],d=0;d<a.length;d++)a[d]<_||a[d]>p||(h[t].push(a[d]),h[e].push(this.loc));for(var d=0;d<l.length;d++)l[d]<_||l[d]>p||(u[t].push(l[d]),u[e].push(this.loc));return{major:h,minor:u}},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"loc\",{get:function(){if(null!=this.fixed_location){if(T.isNumber(this.fixed_location))return this.fixed_location;var t=this.ranges,e=t[1];if(e instanceof a.FactorRange)return e.synthetic(this.fixed_location);throw new Error(\"unexpected\")}var i=this.ranges,n=i[1];switch(this.panel.side){case\"left\":case\"below\":return n.start;case\"right\":case\"above\":return n.end}},enumerable:!0,configurable:!0}),t}(r.GuideRenderer);(i.Axis=p).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(208),s=t(105),a=t(15),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){this._draw_group_separators(t,e,i)},e.prototype._draw_group_separators=function(t,e,i){var n,r=this.model.ranges[0],o=this.model.computed_bounds,s=o[0],a=o[1];if(r.tops&&!(r.tops.length<2)&&this.visuals.separator_line.doit){for(var l=this.model.dimension,h=(l+1)%2,u=[[],[]],c=0,_=0;_<r.tops.length-1;_++){for(var p=void 0,d=void 0,f=c;f<r.factors.length;f++)if(r.factors[f][0]==r.tops[_+1]){n=[r.factors[f-1],r.factors[f]],p=n[0],d=n[1],c=f;break}var v=(r.synthetic(p)+r.synthetic(d))/2;s<v&&v<a&&(u[l].push(v),u[h].push(this.model.loc))}var m=this._tick_label_extent();this._draw_ticks(t,u,-3,m-6,this.visuals.separator_line)}},e.prototype._draw_major_labels=function(t,e,i){for(var n=this._get_factor_info(),r=e.tick+this.model.major_label_standoff,o=0;o<n.length;o++){var s=n[o],a=s[0],l=s[1],h=s[2],u=s[3];this._draw_oriented_labels(t,a,l,h,this.model.panel.side,r,u),r+=e.tick_label[o]}},e.prototype._tick_label_extents=function(){for(var t=this._get_factor_info(),e=[],i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[2],a=r[3],l=this._oriented_labels_extent(o,s,this.model.panel.side,this.model.major_label_standoff,a);e.push(l)}return e},e.prototype._get_factor_info=function(){var t=this.model.ranges[0],e=this.model.computed_bounds,i=e[0],n=e[1],r=this.model.loc,o=this.model.ticker.get_ticks(i,n,t,r,{}),s=this.model.tick_coords,a=[];if(1==t.levels){var l=this.model.formatter.doFormat(o.major,this.model);a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text])}else if(2==t.levels){var l=this.model.formatter.doFormat(o.major.map(function(t){return t[1]}),this.model);a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([o.tops,s.tops,this.model.group_label_orientation,this.visuals.group_text])}else if(3==t.levels){var l=this.model.formatter.doFormat(o.major.map(function(t){return t[2]}),this.model),h=o.mids.map(function(t){return t[1]});a.push([l,s.major,this.model.major_label_orientation,this.visuals.major_label_text]),a.push([h,s.mids,this.model.subgroup_label_orientation,this.visuals.subgroup_text]),a.push([o.tops,s.tops,this.model.group_label_orientation,this.visuals.group_text])}return a},e}(r.AxisView);i.CategoricalAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalAxis\",this.prototype.default_view=l,this.mixins([\"line:separator_\",\"text:group_\",\"text:subgroup_\"]),this.define({group_label_orientation:[a.Any,\"parallel\"],subgroup_label_orientation:[a.Any,\"parallel\"]}),this.override({ticker:function(){return new o.CategoricalTicker},formatter:function(){return new s.CategoricalTickFormatter},separator_line_color:\"lightgrey\",separator_line_width:2,group_text_font_style:\"bold\",group_text_font_size:\"8pt\",group_text_color:\"grey\",subgroup_text_font_style:\"bold\",subgroup_text_font_size:\"8pt\"})},Object.defineProperty(t.prototype,\"tick_coords\",{get:function(){var e=this,t=this.dimension,i=(t+1)%2,n=this.ranges[0],r=this.computed_bounds,o=r[0],s=r[1],a=this.ticker.get_ticks(o,s,n,this.loc,{}),l={major:[[],[]],mids:[[],[]],tops:[[],[]],minor:[[],[]]};return l.major[t]=a.major,l.major[i]=a.major.map(function(t){return e.loc}),3==n.levels&&(l.mids[t]=a.mids),l.mids[i]=a.mids.map(function(t){return e.loc}),1<n.levels&&(l.tops[t]=a.tops),l.tops[i]=a.tops.map(function(t){return e.loc}),l},enumerable:!0,configurable:!0}),t}(r.Axis);(i.CategoricalAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousAxis\"},t}(r.Axis);(i.ContinuousAxis=o).initClass()},function(t,e,i){var n=t(391),r=t(84),o=t(106),s=t(211),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.LinearAxisView);i.DatetimeAxisView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatetimeAxis\",this.prototype.default_view=a,this.override({ticker:function(){return new s.DatetimeTicker},formatter:function(){return new o.DatetimeTickFormatter}})},t}(r.LinearAxis);(i.DatetimeAxis=l).initClass()},function(t,e,i){var n=t(79);i.Axis=n.Axis;var r=t(80);i.CategoricalAxis=r.CategoricalAxis;var o=t(81);i.ContinuousAxis=o.ContinuousAxis;var s=t(82);i.DatetimeAxis=s.DatetimeAxis;var a=t(84);i.LinearAxis=a.LinearAxis;var l=t(85);i.LogAxis=l.LogAxis;var h=t(86);i.MercatorAxis=h.MercatorAxis},function(t,e,i){var n=t(391),r=t(79),o=t(81),s=t(104),a=t(207),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LinearAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.BasicTicker},formatter:function(){return new s.BasicTickFormatter}})},t}(o.ContinuousAxis);(i.LinearAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(81),s=t(109),a=t(215),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.LogAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.LogTicker},formatter:function(){return new s.LogTickFormatter}})},t}(o.ContinuousAxis);(i.LogAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(79),o=t(84),s=t(110),a=t(216),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.AxisView);i.MercatorAxisView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MercatorAxis\",this.prototype.default_view=l,this.override({ticker:function(){return new a.MercatorTicker({dimension:\"lat\"})},formatter:function(){return new s.MercatorTickFormatter({dimension:\"lat\"})}})},t}(o.LinearAxis);(i.MercatorAxis=h).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Callback\"},t}(r.Model);(i.Callback=o).initClass()},function(i,t,e){var n=i(391),r=i(87),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJS\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"cb_obj\",\"cb_data\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),t.prototype.execute=function(t,e){return this.func.apply(t,this.values.concat(t,e,i,{}))},t}(r.Callback);(e.CustomJS=l).initClass()},function(t,e,i){var n=t(88);i.CustomJS=n.CustomJS;var r=t(90);i.OpenURL=r.OpenURL},function(t,e,i){var n=t(391),r=t(87),o=t(15),s=t(35),a=t(40),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"OpenURL\",this.define({url:[o.String,\"http://\"]})},t.prototype.execute=function(t,e){for(var i=0,n=s.get_indices(e.source);i<n.length;i++){var r=n[i],o=a.replace_placeholders(this.url,e.source,r);window.open(o)}return null},t}(r.Callback);(i.OpenURL=l).initClass()},function(t,e,i){var n=t(391),r=t(11),o=t(6),s=t(13),a=t(14),l=t(15),h=t(5),u=t(26);null!=window.CanvasPixelArray&&(window.CanvasPixelArray.prototype.set=function(t){for(var e=0;e<this.length;e++)this[e]=t[e]});var c=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),Object.defineProperty(t.prototype,\"ctx\",{get:function(){return this._ctx},enumerable:!0,configurable:!0}),t.prototype.initialize=function(t){switch(i.prototype.initialize.call(this,t),this.map_el=this.model.map?this.el.appendChild(h.div({class:\"bk-canvas-map\"})):null,this.model.output_backend){case\"canvas\":case\"webgl\":this.canvas_el=this.el.appendChild(h.canvas({class:\"bk-canvas\"}));var e=this.canvas_el.getContext(\"2d\");if(null==e)throw new Error(\"unable to obtain 2D rendering context\");this._ctx=e;break;case\"svg\":var e=new u.SVGRenderingContext2D;this._ctx=e,this.canvas_el=this.el.appendChild(e.getSvg())}this.overlays_el=this.el.appendChild(h.div({class:\"bk-canvas-overlays\"})),this.events_el=this.el.appendChild(h.div({class:\"bk-canvas-events\"})),u.fixup_ctx(this._ctx),a.logger.debug(\"CanvasView initialized\")},t.prototype.css_classes=function(){return i.prototype.css_classes.call(this).concat(\"bk-canvas-wrapper\")},t.prototype.get_canvas_element=function(){return this.canvas_el},t.prototype.prepare_canvas=function(){var t=this.model._width.value,e=this.model._height.value;this.el.style.width=t+\"px\",this.el.style.height=e+\"px\";var i=u.get_scale_ratio(this.ctx,this.model.use_hidpi,this.model.output_backend);this.model.pixel_ratio=i,this.canvas_el.style.width=t+\"px\",this.canvas_el.style.height=e+\"px\",this.canvas_el.setAttribute(\"width\",\"\"+t*i),this.canvas_el.setAttribute(\"height\",\"\"+e*i),a.logger.debug(\"Rendering CanvasView with width: \"+t+\", height: \"+e+\", pixel ratio: \"+i)},t.prototype.set_dims=function(t){var e=t[0],i=t[1];e<=0||i<=0||(e!=this.model._width.value&&(null!=this._width_constraint&&this.solver.has_constraint(this._width_constraint)&&this.solver.remove_constraint(this._width_constraint),this._width_constraint=s.EQ(this.model._width,-e),this.solver.add_constraint(this._width_constraint)),i!=this.model._height.value&&(null!=this._height_constraint&&this.solver.has_constraint(this._height_constraint)&&this.solver.remove_constraint(this._height_constraint),this._height_constraint=s.EQ(this.model._height,-i),this.solver.add_constraint(this._height_constraint)),this.solver.update_variables())},t}(o.DOMView);i.CanvasView=c;var _=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Canvas\",this.prototype.default_view=c,this.internal({map:[l.Boolean,!1],use_hidpi:[l.Boolean,!0],pixel_ratio:[l.Number,1],output_backend:[l.OutputBackend,\"canvas\"]})},Object.defineProperty(t.prototype,\"panel\",{get:function(){return this},enumerable:!0,configurable:!0}),t}(r.LayoutCanvas);(i.Canvas=_).initClass()},function(t,e,i){var n=t(391),a=t(190),l=t(192),h=t(193),u=t(184),c=t(180),_=t(181),r=t(11),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CartesianFrame\",this.internal({extra_x_ranges:[o.Any,{}],extra_y_ranges:[o.Any,{}],x_range:[o.Instance],y_range:[o.Instance],x_scale:[o.Instance],y_scale:[o.Instance]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._configure_scales()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._configure_scales()})},Object.defineProperty(t.prototype,\"panel\",{get:function(){return this},enumerable:!0,configurable:!0}),t.prototype.get_editables=function(){return e.prototype.get_editables.call(this).concat([this._width,this._height])},t.prototype.map_to_screen=function(t,e,i,n){void 0===i&&(i=\"default\"),void 0===n&&(n=\"default\");var r=this.xscales[i].v_compute(t),o=this.yscales[n].v_compute(e);return[r,o]},t.prototype._get_ranges=function(t,e){var i={};if(i.default=t,null!=e)for(var n in e)i[n]=e[n];return i},t.prototype._get_scales=function(t,e,i){var n={};for(var r in e){var o=e[r];if(o instanceof c.DataRange1d||o instanceof u.Range1d){if(!(t instanceof h.LogScale||t instanceof l.LinearScale))throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type);if(t instanceof a.CategoricalScale)throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type)}if(o instanceof _.FactorRange&&!(t instanceof a.CategoricalScale))throw new Error(\"Range \"+o.type+\" is incompatible is Scale \"+t.type);t instanceof h.LogScale&&o instanceof c.DataRange1d&&(o.scale_hint=\"log\");var s=t.clone();s.setv({source_range:o,target_range:i}),n[r]=s}return n},t.prototype._configure_frame_ranges=function(){this._h_target=new u.Range1d({start:this._left.value,end:this._right.value}),this._v_target=new u.Range1d({start:this._bottom.value,end:this._top.value})},t.prototype._configure_scales=function(){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._xscales=this._get_scales(this.x_scale,this._x_ranges,this._h_target),this._yscales=this._get_scales(this.y_scale,this._y_ranges,this._v_target)},t.prototype.update_scales=function(){for(var t in this._configure_frame_ranges(),this._xscales){var e=this._xscales[t];e.target_range=this._h_target}for(var i in this._yscales){var e=this._yscales[i];e.target_range=this._v_target}},Object.defineProperty(t.prototype,\"x_ranges\",{get:function(){return this._x_ranges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"y_ranges\",{get:function(){return this._y_ranges},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"xscales\",{get:function(){return this._xscales},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"yscales\",{get:function(){return this._yscales},enumerable:!0,configurable:!0}),t}(r.LayoutCanvas);(i.CartesianFrame=s).initClass()},function(t,e,i){var n=t(91);i.Canvas=n.Canvas;var r=t(92);i.CartesianFrame=r.CartesianFrame},function(t,e,i){var n=t(391),r=t(95),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CumSum\",this.define({field:[o.String],include_zero:[o.Boolean,!1]})},t.prototype._v_compute=function(t){var e=new Float64Array(t.get_length()||0),i=t.data[this.field],n=this.include_zero?1:0;e[0]=this.include_zero?0:i[0];for(var r=1;r<e.length;r++)e[r]=e[r-1]+i[r-n];return e},t}(r.Expression);(i.CumSum=s).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(i){function t(t){var e=i.call(this,t)||this;return e._connected={},e._result={},e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Expression\"},t.prototype.initialize=function(){i.prototype.initialize.call(this),this._connected={},this._result={}},t.prototype.v_compute=function(t){var e=this;null==this._connected[t.id]&&(this.connect(t.change,function(){return delete e._result[t.id]}),this.connect(t.patching,function(){return delete e._result[t.id]}),this.connect(t.streaming,function(){return delete e._result[t.id]}),this._connected[t.id]=!0);var i=this._result[t.id];return null==i&&(this._result[t.id]=i=this._v_compute(t)),i},t}(r.Model);(i.Expression=o).initClass()},function(t,e,i){var n=t(95);i.Expression=n.Expression;var r=t(97);i.Stack=r.Stack;var o=t(94);i.CumSum=o.CumSum},function(t,e,i){var n=t(391),r=t(95),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Stack\",this.define({fields:[o.Array,[]]})},t.prototype._v_compute=function(t){for(var e=new Float64Array(t.get_length()||0),i=0,n=this.fields;i<n.length;i++)for(var r=n[i],o=0;o<t.data[r].length;o++){var s=t.data[r][o];e[o]+=s}return e},t}(r.Expression);(i.Stack=s).initClass()},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(21),l=t(44),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BooleanFilter\",this.define({booleans:[o.Array,null]})},t.prototype.compute_indices=function(t){var e=this.booleans;return null!=e&&0<e.length?a.all(e,l.isBoolean)?(e.length!==t.get_length()&&s.logger.warn(\"BooleanFilter \"+this.id+\": length of booleans doesn't match data source\"),a.range(0,e.length).filter(function(t){return!0===e[t]})):(s.logger.warn(\"BooleanFilter \"+this.id+\": booleans should be array of booleans, defaulting to no filtering\"),null):(null!=e&&0==e.length?s.logger.warn(\"BooleanFilter \"+this.id+\": booleans is empty, defaulting to no filtering\"):s.logger.warn(\"BooleanFilter \"+this.id+\": booleans was not set, defaulting to no filtering\"),null)},t}(r.Filter);(i.BooleanFilter=h).initClass()},function(i,t,e){var n=i(391),r=i(100),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSFilter\",this.define({args:[o.Any,{}],code:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"func\",{get:function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0].concat(this.names,[\"source\",\"require\",\"exports\",t])))},enumerable:!0,configurable:!0}),t.prototype.compute_indices=function(t){return this.filter=this.func.apply(this,this.values.concat([t,i,{}])),e.prototype.compute_indices.call(this,t)},t}(r.Filter);(e.CustomJSFilter=l).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=t(21),l=t(14),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Filter\",this.define({filter:[o.Array,null]})},t.prototype.compute_indices=function(t){var e=this.filter;return null!=e&&0<=e.length?s.isArrayOf(e,s.isBoolean)?a.range(0,e.length).filter(function(t){return!0===e[t]}):s.isArrayOf(e,s.isInteger)?e:(l.logger.warn(\"Filter \"+this.id+\": filter should either be array of only booleans or only integers, defaulting to no filtering\"),null):(l.logger.warn(\"Filter \"+this.id+\": filter was not set to be an array, defaulting to no filtering\"),null)},t}(r.Model);(i.Filter=h).initClass()},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(21),l=function(i){function t(t){var e=i.call(this,t)||this;return e.indices=null,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"GroupFilter\",this.define({column_name:[o.String],group:[o.String]})},t.prototype.compute_indices=function(t){var e=this,i=t.get_column(this.column_name);return null==i?(s.logger.warn(\"group filter: groupby column not found in data source\"),null):(this.indices=a.range(0,t.get_length()||0).filter(function(t){return i[t]===e.group}),0===this.indices.length&&s.logger.warn(\"group filter: group '\"+this.group+\"' did not match any values in column '\"+this.column_name+\"'\"),this.indices)},t}(r.Filter);(i.GroupFilter=l).initClass()},function(t,e,i){var n=t(98);i.BooleanFilter=n.BooleanFilter;var r=t(99);i.CustomJSFilter=r.CustomJSFilter;var o=t(100);i.Filter=o.Filter;var s=t(101);i.GroupFilter=s.GroupFilter;var a=t(103);i.IndexFilter=a.IndexFilter},function(t,e,i){var n=t(391),r=t(100),o=t(15),s=t(14),a=t(44),l=t(21),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"IndexFilter\",this.define({indices:[o.Array,null]})},t.prototype.compute_indices=function(t){return null!=this.indices&&0<=this.indices.length?l.all(this.indices,a.isInteger)?this.indices:(s.logger.warn(\"IndexFilter \"+this.id+\": indices should be array of integers, defaulting to no filtering\"),null):(s.logger.warn(\"IndexFilter \"+this.id+\": indices was not set, defaulting to no filtering\"),null)},t}(r.Filter);(i.IndexFilter=h).initClass()},function(t,e,i){var n=t(391),r=t(113),o=t(15),f=t(44),s=function(i){function t(t){var e=i.call(this,t)||this;return e.last_precision=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BasicTickFormatter\",this.define({precision:[o.Any,\"auto\"],use_scientific:[o.Bool,!0],power_limit_high:[o.Number,5],power_limit_low:[o.Number,-3]})},Object.defineProperty(t.prototype,\"scientific_limit_low\",{get:function(){return Math.pow(10,this.power_limit_low)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"scientific_limit_high\",{get:function(){return Math.pow(10,this.power_limit_high)},enumerable:!0,configurable:!0}),t.prototype.doFormat=function(t,e){if(0==t.length)return[];var i=0;2<=t.length&&(i=Math.abs(t[1]-t[0])/1e4);var n=!1;if(this.use_scientific)for(var r=0,o=t;r<o.length;r++){var s=o[r],a=Math.abs(s);if(i<a&&(a>=this.scientific_limit_high||a<=this.scientific_limit_low)){n=!0;break}}var l=new Array(t.length),h=this.precision;if(null==h||f.isNumber(h))if(n)for(var u=0,c=t.length;u<c;u++)l[u]=t[u].toExponential(h||void 0);else for(var u=0,c=t.length;u<c;u++)l[u]=t[u].toFixed(h||void 0).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\");else for(var _=this.last_precision,p=this.last_precision<=15;p?_<=15:15<=_;p?_++:_--){var d=!0;if(n){for(var u=0,c=t.length;u<c;u++)if(l[u]=t[u].toExponential(_),0<u&&l[u]===l[u-1]){d=!1;break}if(d)break}else{for(var u=0,c=t.length;u<c;u++)if(l[u]=t[u].toFixed(_).replace(/(\\.[0-9]*?)0+$/,\"$1\").replace(/\\.$/,\"\"),0<u&&l[u]==l[u-1]){d=!1;break}if(d)break}if(d){this.last_precision=_;break}}return l},t}(r.TickFormatter);(i.BasicTickFormatter=s).initClass()},function(t,e,i){var n=t(391),r=t(113),o=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalTickFormatter\"},t.prototype.doFormat=function(t,e){return o.copy(t)},t}(r.TickFormatter);(i.CategoricalTickFormatter=s).initClass()},function(t,e,i){var n=t(391),r=t(389),w=t(390),o=t(113),k=t(14),s=t(15),a=t(21),l=t(44);function S(t,e){if(l.isFunction(e))return e(t);var i,n=r.sprintf(\"$1%06d\",(i=t,Math.round(i/1e3%1*1e6)));return-1==(e=e.replace(/((^|[^%])(%%)*)%f/,n)).indexOf(\"%\")?e:w(t,e)}var C=[\"microseconds\",\"milliseconds\",\"seconds\",\"minsec\",\"minutes\",\"hourmin\",\"hours\",\"days\",\"months\",\"years\"],h=function(i){function t(t){var e=i.call(this,t)||this;return e.strip_leading_zeros=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DatetimeTickFormatter\",this.define({microseconds:[s.Array,[\"%fus\"]],milliseconds:[s.Array,[\"%3Nms\",\"%S.%3Ns\"]],seconds:[s.Array,[\"%Ss\"]],minsec:[s.Array,[\":%M:%S\"]],minutes:[s.Array,[\":%M\",\"%Mm\"]],hourmin:[s.Array,[\"%H:%M\"]],hours:[s.Array,[\"%Hh\",\"%H:%M\"]],days:[s.Array,[\"%m/%d\",\"%a%d\"]],months:[s.Array,[\"%m/%Y\",\"%b %Y\"]],years:[s.Array,[\"%Y\"]]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),this._update_width_formats()},t.prototype._update_width_formats=function(){var n=+w(new Date),t=function(t){var e=t.map(function(t){return S(n,t).length}),i=a.sortBy(a.zip(e,t),function(t){var e=t[0];return e});return a.unzip(i)};this._width_formats={microseconds:t(this.microseconds),milliseconds:t(this.milliseconds),seconds:t(this.seconds),minsec:t(this.minsec),minutes:t(this.minutes),hourmin:t(this.hourmin),hours:t(this.hours),days:t(this.days),months:t(this.months),years:t(this.years)}},t.prototype._get_resolution_str=function(t,e){var i=1.1*t;switch(!1){case!(i<.001):return\"microseconds\";case!(i<1):return\"milliseconds\";case!(i<60):return 60<=e?\"minsec\":\"seconds\";case!(i<3600):return 3600<=e?\"hourmin\":\"minutes\";case!(i<86400):return\"hours\";case!(i<2678400):return\"days\";case!(i<31536e3):return\"months\";default:return\"years\"}},t.prototype.doFormat=function(t,e){if(0==t.length)return[];for(var i=Math.abs(t[t.length-1]-t[0])/1e3,n=i/(t.length-1),r=this._get_resolution_str(n,i),o=this._width_formats[r],s=o[1][0],a=[],l=C.indexOf(r),h={},u=0,c=C;u<c.length;u++){var _=c[u];h[_]=0}h.seconds=5,h.minsec=4,h.minutes=4,h.hourmin=3,h.hours=3;for(var p=0,d=t;p<d.length;p++){var f=d[p],v=void 0,m=void 0;try{m=w(f,\"%Y %m %d %H %M %S\").split(/\\s+/).map(function(t){return parseInt(t,10)}),v=S(f,s)}catch(t){k.logger.warn(\"unable to format tick for timestamp value \"+f),k.logger.warn(\" - \"+t),a.push(\"ERR\");continue}for(var g=!1,y=l;0==m[h[C[y]]];){var b=void 0;if((y+=1)==C.length)break;if((\"minsec\"==r||\"hourmin\"==r)&&!g){if(\"minsec\"==r&&0==m[4]&&0!=m[5]||\"hourmin\"==r&&0==m[3]&&0!=m[4]){b=this._width_formats[C[l-1]][1][0],v=S(f,b);break}g=!0}b=this._width_formats[C[y]][1][0],v=S(f,b)}if(this.strip_leading_zeros){var x=v.replace(/^0+/g,\"\");x!=v&&isNaN(parseInt(x))&&(x=\"0\"+x),a.push(x)}else a.push(v)}return a},t}(o.TickFormatter);(i.DatetimeTickFormatter=h).initClass()},function(o,t,e){var i=o(391),n=o(113),r=o(15),s=o(32),a=o(38),l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"FuncTickFormatter\",this.define({args:[r.Any,{}],code:[r.String,\"\"],use_strict:[r.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_func=function(){var t=this.use_strict?a.use_strict(this.code):this.code;return new(Function.bind.apply(Function,[void 0,\"tick\",\"index\",\"ticks\"].concat(this.names,[\"require\",\"exports\",t])))},t.prototype.doFormat=function(t,e){var n=this,r=this._make_func().bind({});return t.map(function(t,e,i){return r.apply(void 0,[t,e,i].concat(n.values,[o,{}]))})},t}(n.TickFormatter);(e.FuncTickFormatter=l).initClass()},function(t,e,i){var n=t(104);i.BasicTickFormatter=n.BasicTickFormatter;var r=t(105);i.CategoricalTickFormatter=r.CategoricalTickFormatter;var o=t(106);i.DatetimeTickFormatter=o.DatetimeTickFormatter;var s=t(107);i.FuncTickFormatter=s.FuncTickFormatter;var a=t(109);i.LogTickFormatter=a.LogTickFormatter;var l=t(110);i.MercatorTickFormatter=l.MercatorTickFormatter;var h=t(111);i.NumeralTickFormatter=h.NumeralTickFormatter;var u=t(112);i.PrintfTickFormatter=u.PrintfTickFormatter;var c=t(113);i.TickFormatter=c.TickFormatter},function(t,e,i){var n=t(391),r=t(113),o=t(104),s=t(14),a=t(15),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogTickFormatter\",this.define({ticker:[a.Instance,null]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.basic_formatter=new o.BasicTickFormatter,null==this.ticker&&s.logger.warn(\"LogTickFormatter not configured with a ticker, using default base of 10 (labels will be incorrect if ticker base is not 10)\")},t.prototype.doFormat=function(t,e){if(0==t.length)return[];for(var i=null!=this.ticker?this.ticker.base:10,n=!1,r=new Array(t.length),o=0,s=t.length;o<s;o++)if(r[o]=i+\"^\"+Math.round(Math.log(t[o])/Math.log(i)),0<o&&r[o]==r[o-1]){n=!0;break}return n?this.basic_formatter.doFormat(t,e):r},t}(r.TickFormatter);(i.LogTickFormatter=l).initClass()},function(t,e,i){var n=t(391),r=t(104),o=t(15),h=t(33),s=function(l){function t(t){return l.call(this,t)||this}return n.__extends(t,l),t.initClass=function(){this.prototype.type=\"MercatorTickFormatter\",this.define({dimension:[o.LatLon]})},t.prototype.doFormat=function(t,e){if(null==this.dimension)throw new Error(\"MercatorTickFormatter.dimension not configured\");if(0==t.length)return[];var i=t.length,n=new Array(i);if(\"lon\"==this.dimension)for(var r=0;r<i;r++){var o=h.wgs84_mercator.inverse([t[r],e.loc])[0];n[r]=o}else for(var r=0;r<i;r++){var s=h.wgs84_mercator.inverse([e.loc,t[r]]),a=s[1];n[r]=a}return l.prototype.doFormat.call(this,n,e)},t}(r.BasicTickFormatter);(i.MercatorTickFormatter=s).initClass()},function(t,e,i){var n=t(391),o=t(361),r=t(113),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NumeralTickFormatter\",this.define({format:[s.String,\"0,0\"],language:[s.String,\"en\"],rounding:[s.String,\"round\"]})},Object.defineProperty(t.prototype,\"_rounding_fn\",{get:function(){switch(this.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}},enumerable:!0,configurable:!0}),t.prototype.doFormat=function(t,e){var i=this.format,n=this.language,r=this._rounding_fn;return t.map(function(t){return o.format(t,i,n,r)})},t}(r.TickFormatter);(i.NumeralTickFormatter=a).initClass()},function(t,e,i){var n=t(391),r=t(389),o=t(113),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PrintfTickFormatter\",this.define({format:[s.String,\"%s\"]})},t.prototype.doFormat=function(t,e){var i=this;return t.map(function(t){return r.sprintf(i.format,t)})},t}(o.TickFormatter);(i.PrintfTickFormatter=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TickFormatter\"},t}(r.Model);(i.TickFormatter=o).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),z=t(9),s=t(15),P=t(31),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=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=this._outer_radius,this._angle=new Float32Array(this._start_angle.length);for(var t=0,e=this._start_angle.length;t<e;t++)this._angle[t]=this._end_angle[t]-this._start_angle[t]},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._start_angle,s=i._angle,a=i.sinner_radius,l=i.souter_radius,h=this.model.properties.direction.value(),u=0,c=e;u<c.length;u++){var _=c[u];isNaN(n[_]+r[_]+a[_]+l[_]+o[_]+s[_])||(t.translate(n[_],r[_]),t.rotate(o[_]),t.moveTo(l[_],0),t.beginPath(),t.arc(0,0,l[_],0,s[_],h),t.rotate(s[_]),t.lineTo(a[_],0),t.arc(0,0,a[_],0,-s[_],!h),t.closePath(),t.rotate(-s[_]-o[_]),t.translate(-n[_],-r[_]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,_),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,_),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.renderer.xscale.invert(a),u=this.renderer.yscale.invert(l);if(\"data\"==this.model.properties.outer_radius.units)n=h-this.max_outer_radius,o=h+this.max_outer_radius,r=u-this.max_outer_radius,s=u+this.max_outer_radius;else{var c=a-this.max_outer_radius,_=a+this.max_outer_radius;e=this.renderer.xscale.r_invert(c,_),n=e[0],o=e[1];var p=l-this.max_outer_radius,d=l+this.max_outer_radius;i=this.renderer.yscale.r_invert(p,d),r=i[0],s=i[1]}for(var f=[],v=z.validate_bbox_coords([n,o],[r,s]),m=0,g=this.index.indices(v);m<g.length;m++){var y=g[m],b=Math.pow(this.souter_radius[y],2),x=Math.pow(this.sinner_radius[y],2),w=this.renderer.xscale.r_compute(h,this._x[y]),c=w[0],_=w[1],k=this.renderer.yscale.r_compute(u,this._y[y]),p=k[0],d=k[1],S=Math.pow(c-_,2)+Math.pow(p-d,2);S<=b&&x<=S&&f.push([y,S])}for(var C=this.model.properties.direction.value(),T=[],A=0,E=f;A<E.length;A++){var M=E[A],y=M[0],S=M[1],O=Math.atan2(l-this.sy[y],a-this.sx[y]);P.angle_between(-O,-this._start_angle[y],-this._end_angle[y],C)&&T.push([y,S])}return z.create_hit_test_result_from_hits(T)},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._scenterxy=function(t){var e=(this.sinner_radius[t]+this.souter_radius[t])/2,i=(this._start_angle[t]+this._end_angle[t])/2;return{x:this.sx[t]+e*Math.cos(i),y:this.sy[t]+e*Math.sin(i)}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.AnnularWedgeView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"AnnularWedge\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({direction:[s.Direction,\"anticlock\"],inner_radius:[s.DistanceSpec],outer_radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.AnnularWedge=l).initClass()},function(t,e,i){var n=t(391),r=t(146),C=t(9),o=t(15),p=t(28),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.inner_radius.units?this.sinner_radius=this.sdist(this.renderer.xscale,this._x,this._inner_radius):this.sinner_radius=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=this._outer_radius},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sinner_radius,s=i.souter_radius,a=0,l=e;a<l.length;a++){var h=l[a];if(!isNaN(n[h]+r[h]+o[h]+s[h])){if(this.visuals.fill.doit){if(this.visuals.fill.set_vectorize(t,h),t.beginPath(),p.is_ie)for(var u=0,c=[!1,!0];u<c.length;u++){var _=c[u];t.arc(n[h],r[h],o[h],0,Math.PI,_),t.arc(n[h],r[h],s[h],Math.PI,0,!_)}else t.arc(n[h],r[h],o[h],0,2*Math.PI,!0),t.arc(n[h],r[h],s[h],2*Math.PI,0,!1);t.fill()}this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,h),t.beginPath(),t.arc(n[h],r[h],o[h],0,2*Math.PI),t.moveTo(n[h]+s[h],r[h]),t.arc(n[h],r[h],s[h],0,2*Math.PI),t.stroke())}}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.renderer.xscale.invert(a),u=this.renderer.yscale.invert(l);if(\"data\"==this.model.properties.outer_radius.units)n=h-this.max_outer_radius,o=h+this.max_outer_radius,r=u-this.max_outer_radius,s=u+this.max_outer_radius;else{var c=a-this.max_outer_radius,_=a+this.max_outer_radius;e=this.renderer.xscale.r_invert(c,_),n=e[0],o=e[1];var p=l-this.max_outer_radius,d=l+this.max_outer_radius;i=this.renderer.yscale.r_invert(p,d),r=i[0],s=i[1]}for(var f=[],v=C.validate_bbox_coords([n,o],[r,s]),m=0,g=this.index.indices(v);m<g.length;m++){var y=g[m],b=Math.pow(this.souter_radius[y],2),x=Math.pow(this.sinner_radius[y],2),w=this.renderer.xscale.r_compute(h,this._x[y]),c=w[0],_=w[1],k=this.renderer.yscale.r_compute(u,this._y[y]),p=k[0],d=k[1],S=Math.pow(c-_,2)+Math.pow(p-d,2);S<=b&&x<=S&&f.push([y,S])}return C.create_hit_test_result_from_hits(f)},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=.5*Math.min(Math.abs(o-n),Math.abs(s-r)),c=new Array(a);c[i]=.4*u;var _=new Array(a);_[i]=.8*u,this._render(t,[i],{sx:l,sy:h,sinner_radius:c,souter_radius:_})},e}(r.XYGlyphView);i.AnnulusView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Annulus\",this.prototype.default_view=s,this.mixins([\"line\",\"fill\"]),this.define({inner_radius:[o.DistanceSpec],outer_radius:[o.DistanceSpec]})},t}(r.XYGlyph);(i.Annulus=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.sradius,s=i._start_angle,a=i._end_angle;if(this.visuals.line.doit)for(var l=this.model.properties.direction.value(),h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c])||(t.beginPath(),t.arc(n[c],r[c],o[c],s[c],a[c],l),this.visuals.line.set_vectorize(t,c),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.ArcView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Arc\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({direction:[s.Direction,\"anticlock\"],radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Arc=l).initClass()},function(t,e,i){var n=t(391),l=t(37),r=t(123),o=t(143);function h(t,e,i,n,r,o,s,a){for(var l=[],h=[[],[]],u=0;u<=2;u++){var c=void 0,_=void 0,p=void 0;if(0===u?(_=6*t-12*i+6*r,c=-3*t+9*i-9*r+3*s,p=3*i-3*t):(_=6*e-12*n+6*o,c=-3*e+9*n-9*o+3*a,p=3*n-3*e),Math.abs(c)<1e-12){if(Math.abs(_)<1e-12)continue;var d=-p/_;0<d&&d<1&&l.push(d)}else{var f=_*_-4*p*c,v=Math.sqrt(f);if(!(f<0)){var m=(-_+v)/(2*c);0<m&&m<1&&l.push(m);var g=(-_-v)/(2*c);0<g&&g<1&&l.push(g)}}}for(var y=l.length,b=y;y--;){var d=l[y],x=1-d,w=x*x*x*t+3*x*x*d*i+3*x*d*d*r+d*d*d*s;h[0][y]=w;var k=x*x*x*e+3*x*x*d*n+3*x*d*d*o+d*d*d*a;h[1][y]=k}return h[0][b]=t,h[1][b]=e,h[0][b+1]=s,h[1][b+1]=a,[Math.min.apply(Math,h[0]),Math.max.apply(Math,h[1]),Math.max.apply(Math,h[0]),Math.min.apply(Math,h[1])]}var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++)if(!isNaN(this._x0[e]+this._x1[e]+this._y0[e]+this._y1[e]+this._cx0[e]+this._cy0[e]+this._cx1[e]+this._cy1[e])){var n=h(this._x0[e],this._y0[e],this._x1[e],this._y1[e],this._cx0[e],this._cy0[e],this._cx1[e],this._cy1[e]),r=n[0],o=n[1],s=n[2],a=n[3];t.push({minX:r,minY:o,maxX:s,maxY:a,i:e})}return new l.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1,a=i.scx0,l=i.scy0,h=i.scx1,u=i.scy1;if(this.visuals.line.doit)for(var c=0,_=e;c<_.length;c++){var p=_[c];isNaN(n[p]+r[p]+o[p]+s[p]+a[p]+l[p]+h[p]+u[p])||(t.beginPath(),t.moveTo(n[p],r[p]),t.bezierCurveTo(a[p],l[p],h[p],u[p],o[p],s[p]),this.visuals.line.set_vectorize(t,p),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.BezierView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Bezier\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"],[\"cx0\",\"cy0\"],[\"cx1\",\"cy1\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Bezier=a).initClass()},function(t,e,i){var n=t(391),l=t(37),r=t(123),o=t(143),f=t(9),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_box=function(t){for(var e=[],i=0;i<t;i++){var n=this._lrtb(i),r=n[0],o=n[1],s=n[2],a=n[3];!isNaN(r+o+s+a)&&isFinite(r+o+s+a)&&e.push({minX:Math.min(r,o),minY:Math.min(s,a),maxX:Math.max(o,r),maxY:Math.max(s,a),i:i})}return new l.SpatialIndex(e)},e.prototype._render=function(t,e,i){for(var n=i.sleft,r=i.sright,o=i.stop,s=i.sbottom,a=0,l=e;a<l.length;a++){var h=l[a];isNaN(n[h]+o[h]+r[h]+s[h])||(this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,h),t.fillRect(n[h],o[h],r[h]-n[h],s[h]-o[h])),this.visuals.line.doit&&(t.beginPath(),t.rect(n[h],o[h],r[h]-n[h],s[h]-o[h]),this.visuals.line.set_vectorize(t,h),t.stroke()))}},e.prototype._clamp_viewport=function(){for(var t=this.renderer.plot_view.frame.bbox.h_range,e=this.renderer.plot_view.frame.bbox.v_range,i=this.stop.length,n=0;n<i;n++)this.stop[n]=Math.max(this.stop[n],e.start),this.sbottom[n]=Math.min(this.sbottom[n],e.end),this.sleft[n]=Math.max(this.sleft[n],t.start),this.sright[n]=Math.min(this.sright[n],t.end)},e.prototype._hit_rect=function(t){return this._hit_rect_against_index(t)},e.prototype._hit_point=function(t){var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=f.create_empty_hit_test_result();return s.indices=o,s},e.prototype._hit_span=function(t){var e,i=t.sx,n=t.sy;if(\"v\"==t.direction){var r=this.renderer.yscale.invert(n),o=this.renderer.plot_view.frame.bbox.h_range,s=this.renderer.xscale.r_invert(o.start,o.end),a=s[0],l=s[1];e=this.index.indices({minX:a,minY:r,maxX:l,maxY:r})}else{var h=this.renderer.xscale.invert(i),u=this.renderer.plot_view.frame.bbox.v_range,c=this.renderer.yscale.r_invert(u.start,u.end),_=c[0],p=c[1];e=this.index.indices({minX:h,minY:_,maxX:h,maxY:p})}var d=f.create_empty_hit_test_result();return d.indices=e,d},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.BoxView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Box\",this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.Box=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.XYGlyphView);i.CenterRotatableView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CenterRotatable\",this.mixins([\"line\",\"fill\"]),this.define({angle:[o.AngleSpec,0],width:[o.DistanceSpec],height:[o.DistanceSpec]})},t}(r.XYGlyph);(i.CenterRotatable=a).initClass()},function(t,e,i){var n=t(391),r=t(146),M=t(9),o=t(15),h=t(21),s=t(22),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){if(null!=this._radius)if(\"data\"==this.model.properties.radius.spec.units){var t=this.model.properties.radius_dimension.spec.value;switch(t){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\":var e=this.sdist(this.renderer.xscale,this._x,this._radius),i=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=s.map(e,function(t,e){return Math.max(t,i[e])});break;case\"min\":var e=this.sdist(this.renderer.xscale,this._x,this._radius),n=this.sdist(this.renderer.yscale,this._y,this._radius);this.sradius=s.map(e,function(t,e){return Math.min(t,n[e])})}}else this.sradius=this._radius,this.max_size=2*this.max_radius;else this.sradius=s.map(this._size,function(t){return t/2})},e.prototype._mask_data=function(){var t,e,i,n,r,o,s,a,l=this.renderer.plot_view.frame.bbox.ranges,h=l[0],u=l[1];if(null!=this._radius&&\"data\"==this.model.properties.radius.units){var c=h.start,_=h.end;t=this.renderer.xscale.r_invert(c,_),r=t[0],s=t[1],r-=this.max_radius,s+=this.max_radius;var p=u.start,d=u.end;e=this.renderer.yscale.r_invert(p,d),o=e[0],a=e[1],o-=this.max_radius,a+=this.max_radius}else{var c=h.start-this.max_size,_=h.end+this.max_size;i=this.renderer.xscale.r_invert(c,_),r=i[0],s=i[1];var p=u.start-this.max_size,d=u.end+this.max_size;n=this.renderer.yscale.r_invert(p,d),o=n[0],a=n[1]}var f=M.validate_bbox_coords([r,s],[o,a]);return this.index.indices(f)},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sradius,s=0,a=e;s<a.length;s++){var l=a[s];isNaN(n[l]+r[l]+o[l])||(t.beginPath(),t.arc(n[l],r[l],o[l],0,2*Math.PI,!1),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,l),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,l),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d,f,v,m=t.sx,g=t.sy,y=this.renderer.xscale.invert(m),b=this.renderer.yscale.invert(g);null!=this._radius&&\"data\"==this.model.properties.radius.units?(p=y-this.max_radius,d=y+this.max_radius,f=b-this.max_radius,v=b+this.max_radius):(h=m-this.max_size,u=m+this.max_size,e=this.renderer.xscale.r_invert(h,u),p=e[0],d=e[1],i=[Math.min(p,d),Math.max(p,d)],p=i[0],d=i[1],c=g-this.max_size,_=g+this.max_size,n=this.renderer.yscale.r_invert(c,_),f=n[0],v=n[1],r=[Math.min(f,v),Math.max(f,v)],f=r[0],v=r[1]);var x=M.validate_bbox_coords([p,d],[f,v]),w=this.index.indices(x),k=[];if(null!=this._radius&&\"data\"==this.model.properties.radius.units)for(var S=0,C=w;S<C.length;S++){var T=C[S];l=Math.pow(this.sradius[T],2),o=this.renderer.xscale.r_compute(y,this._x[T]),h=o[0],u=o[1],s=this.renderer.yscale.r_compute(b,this._y[T]),c=s[0],_=s[1],(a=Math.pow(h-u,2)+Math.pow(c-_,2))<=l&&k.push([T,a])}else for(var A=0,E=w;A<E.length;A++){var T=E[A];l=Math.pow(this.sradius[T],2),(a=Math.pow(this.sx[T]-m,2)+Math.pow(this.sy[T]-g,2))<=l&&k.push([T,a])}return M.create_hit_test_result_from_hits(k)},e.prototype._hit_span=function(t){var e,i,n,r,o,s,a,l,h,u=t.sx,c=t.sy,_=this.bounds(),p=_.minX,d=_.minY,f=_.maxX,v=_.maxY,m=M.create_empty_hit_test_result();if(\"h\"==t.direction){var g=void 0,y=void 0;l=d,h=v,null!=this._radius&&\"data\"==this.model.properties.radius.units?(g=u-this.max_radius,y=u+this.max_radius,e=this.renderer.xscale.r_invert(g,y),s=e[0],a=e[1]):(o=this.max_size/2,g=u-o,y=u+o,i=this.renderer.xscale.r_invert(g,y),s=i[0],a=i[1])}else{var b=void 0,x=void 0;s=p,a=f,null!=this._radius&&\"data\"==this.model.properties.radius.units?(b=c-this.max_radius,x=c+this.max_radius,n=this.renderer.yscale.r_invert(b,x),l=n[0],h=n[1]):(o=this.max_size/2,b=c-o,x=c+o,r=this.renderer.yscale.r_invert(b,x),l=r[0],h=r[1])}var w=M.validate_bbox_coords([s,a],[l,h]),k=this.index.indices(w);return m.indices=k,m},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=M.validate_bbox_coords([s,a],[h,u]),_=M.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype._hit_poly=function(t){for(var e=t.sx,i=t.sy,n=h.range(0,this.sx.length),r=[],o=0,s=n.length;o<s;o++){var a=n[o];M.point_in_poly(this.sx[o],this.sy[o],e,i)&&r.push(a)}var l=M.create_empty_hit_test_result();return l.indices=r,l},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=new Array(a);u[i]=.2*Math.min(Math.abs(o-n),Math.abs(s-r)),this._render(t,[i],{sx:l,sy:h,sradius:u})},e}(r.XYGlyphView);i.CircleView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Circle\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({angle:[o.AngleSpec,0],size:[o.DistanceSpec,{units:\"screen\",value:4}],radius:[o.DistanceSpec,null],radius_dimension:[o.String,\"x\"]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.properties.radius.optional=!0},t}(r.XYGlyph);(i.Circle=l).initClass()},function(t,e,i){var n=t(391),r=t(122),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.EllipseOvalView);i.EllipseView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ellipse\",this.prototype.default_view=o},t}(r.EllipseOval);(i.Ellipse=s).initClass()},function(t,e,i){var n=t(391),r=t(119),S=t(9),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_data=function(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)},e.prototype._map_data=function(){\"data\"==this.model.properties.width.units?this.sw=this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this.sw=this._width,\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sw,s=i.sh,a=i._angle,l=0,h=e;l<h.length;l++){var u=h[l];isNaN(n[u]+r[u]+o[u]+s[u]+a[u])||(t.beginPath(),t.ellipse(n[u],r[u],o[u]/2,s[u]/2,a[u],0,2*Math.PI),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,u),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,u),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d=t.sx,f=t.sy,v=this.renderer.xscale.invert(d),m=this.renderer.yscale.invert(f);\"data\"==this.model.properties.width.units?(o=v-this.max_width,s=v+this.max_width):(u=d-this.max_width,c=d+this.max_width,e=this.renderer.xscale.r_invert(u,c),o=e[0],s=e[1]),\"data\"==this.model.properties.height.units?(a=m-this.max_height,l=m+this.max_height):(_=f-this.max_height,p=f+this.max_height,i=this.renderer.yscale.r_invert(_,p),a=i[0],l=i[1]);for(var g=S.validate_bbox_coords([o,s],[a,l]),y=this.index.indices(g),b=[],x=0,w=y;x<w.length;x++){var k=w[x];S.point_in_ellipse(d,f,this._angle[k],this.sh[k]/2,this.sw[k]/2,this.sx[k],this.sy[k])&&(n=this.renderer.xscale.r_compute(v,this._x[k]),u=n[0],c=n[1],r=this.renderer.yscale.r_compute(m,this._y[k]),_=r[0],p=r[1],h=Math.pow(u-c,2)+Math.pow(_-p,2),b.push([k,h]))}return S.create_hit_test_result_from_hits(b)},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.y0,o=e.x1,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+o)/2;var h=new Array(a);h[i]=(r+s)/2;var u=this.sw[i]/this.sh[i],c=.8*Math.min(Math.abs(o-n),Math.abs(s-r)),_=new Array(a),p=new Array(a);1<u?(_[i]=c,p[i]=c/u):(_[i]=c*u,p[i]=c),this._render(t,[i],{sx:l,sy:h,sw:_,sh:p,_angle:[0]})},e.prototype._bounds=function(t){var e=t.minX,i=t.maxX,n=t.minY,r=t.maxY;return{minX:e-this.max_w2,maxX:i+this.max_w2,minY:n-this.max_h2,maxY:r+this.max_h2}},e}(r.CenterRotatableView);i.EllipseOvalView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EllipseOval\"},t}(r.CenterRotatable);(i.EllipseOval=s).initClass()},function(o,t,e){var i=o(391),p=o(9),l=o(15),h=o(24),y=o(33),s=o(49),n=o(48),r=o(59),a=o(14),b=o(22),x=o(32),d=o(44),w=o(130),k=o(181),u=function(r){function t(){var t=null!==r&&r.apply(this,arguments)||this;return t._nohit_warned={},t}return i.__extends(t,r),t.prototype.initialize=function(t){r.prototype.initialize.call(this,t),this._nohit_warned={},this.renderer=t.renderer,this.visuals=new s.Visuals(this.model);var e=this.renderer.plot_view.gl;if(null!=e){var i=null;try{i=o(452)}catch(t){if(\"MODULE_NOT_FOUND\"!==t.code)throw t;a.logger.warn(\"WebGL was requested and is supported, but bokeh-gl(.min).js is not available, falling back to 2D rendering.\")}if(null!=i){var n=i[this.model.type+\"GLGlyph\"];null!=n&&(this.glglyph=new n(e.ctx,this))}}},t.prototype.set_visuals=function(t){this.visuals.warm_cache(t),null!=this.glglyph&&this.glglyph.set_visuals_changed()},t.prototype.render=function(t,e,i){t.beginPath(),null!=this.glglyph&&this.glglyph.render(t,e,i)||this._render(t,e,i)},t.prototype.has_finished=function(){return!0},t.prototype.notify_finished=function(){this.renderer.notify_finished()},t.prototype._bounds=function(t){return t},t.prototype.bounds=function(){return this._bounds(this.index.bbox)},t.prototype.log_bounds=function(){for(var t=h.empty(),e=this.index.search(h.positive_x()),i=0,n=e;i<n.length;i++){var r=n[i];r.minX<t.minX&&(t.minX=r.minX),r.maxX>t.maxX&&(t.maxX=r.maxX)}for(var o=this.index.search(h.positive_y()),s=0,a=o;s<a.length;s++){var l=a[s];l.minY<t.minY&&(t.minY=l.minY),l.maxY>t.maxY&&(t.maxY=l.maxY)}return this._bounds(t)},t.prototype.get_anchor_point=function(t,e,i){var n=i[0],r=i[1];switch(t){case\"center\":return{x:this.scenterx(e,n,r),y:this.scentery(e,n,r)};default:return null}},t.prototype.sdist=function(t,e,i,n,r){var o,s;void 0===n&&(n=\"edge\"),void 0===r&&(r=!1);var a=e.length;if(\"center\"==n){var l=b.map(i,function(t){return t/2});o=new Float64Array(a);for(var h=0;h<a;h++)o[h]=e[h]-l[h];s=new Float64Array(a);for(var h=0;h<a;h++)s[h]=e[h]+l[h]}else{o=e,s=new Float64Array(a);for(var h=0;h<a;h++)s[h]=o[h]+i[h]}var u=t.v_compute(o),c=t.v_compute(s);return r?b.map(u,function(t,e){return Math.ceil(Math.abs(c[e]-u[e]))}):b.map(u,function(t,e){return Math.abs(c[e]-u[e])})},t.prototype.draw_legend_for_index=function(t,e,i){},t.prototype.hit_test=function(t){var e=null,i=\"_hit_\"+t.type;return null!=this[i]?e=this[i](t):null==this._nohit_warned[t.type]&&(a.logger.debug(\"'\"+t.type+\"' selection not available for \"+this.model.type),this._nohit_warned[t.type]=!0),e},t.prototype._hit_rect_against_index=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=p.validate_bbox_coords([s,a],[h,u]),_=p.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},t.prototype.set_data=function(t,i,e){var n,r,o,s,a=this.model.materialize_dataspecs(t);if(this.visuals.set_all_indices(i),i&&!(this instanceof w.LineView)){var l={},h=function(t){var e=a[t];\"_\"===t.charAt(0)?l[t]=i.map(function(t){return e[t]}):l[t]=e};for(var u in a)h(u);a=l}var c=this;if(x.extend(c,a),this.renderer.plot_view.model.use_map&&(null!=c._x&&(n=y.project_xy(c._x,c._y),c._x=n[0],c._y=n[1]),null!=c._xs&&(r=y.project_xsys(c._xs,c._ys),c._xs=r[0],c._ys=r[1]),null!=c._x0&&(o=y.project_xy(c._x0,c._y0),c._x0=o[0],c._y0=o[1]),null!=c._x1&&(s=y.project_xy(c._x1,c._y1),c._x1=s[0],c._y1=s[1])),null!=this.renderer.plot_view.frame.x_ranges)for(var _=this.renderer.plot_view.frame.x_ranges[this.model.x_range_name],p=this.renderer.plot_view.frame.y_ranges[this.model.y_range_name],d=0,f=this.model._coords;d<f.length;d++){var v=f[d],m=v[0],g=v[1];m=\"_\"+m,g=\"_\"+g,null!=c._xs?(_ instanceof k.FactorRange&&(c[m]=b.map(c[m],function(t){return _.v_synthetic(t)})),p instanceof k.FactorRange&&(c[g]=b.map(c[g],function(t){return p.v_synthetic(t)}))):(_ instanceof k.FactorRange&&(c[m]=_.v_synthetic(c[m])),p instanceof k.FactorRange&&(c[g]=p.v_synthetic(c[g])))}null!=this.glglyph&&this.glglyph.set_data_changed(c._x.length),this._set_data(e),this.index_data()},t.prototype._set_data=function(t){},t.prototype.index_data=function(){this.index=this._index_data()},t.prototype.mask_data=function(t){return null!=this.glglyph||null==this._mask_data?t:this._mask_data()},t.prototype.map_data=function(){for(var t,e=this,i=0,n=this.model._coords;i<n.length;i++){var r=n[i],o=r[0],s=r[1],a=\"s\"+o,l=\"s\"+s;if(s=\"_\"+s,null!=e[o=\"_\"+o]&&(d.isArray(e[o][0])||d.isTypedArray(e[o][0]))){var h=e[o].length;e[a]=new Array(h),e[l]=new Array(h);for(var u=0;u<h;u++){var c=this.map_to_screen(e[o][u],e[s][u]),_=c[0],p=c[1];e[a][u]=_,e[l][u]=p}}else t=this.map_to_screen(e[o],e[s]),e[a]=t[0],e[l]=t[1]}this._map_data()},t.prototype._map_data=function(){},t.prototype.map_to_screen=function(t,e){return this.renderer.plot_view.map_to_screen(t,e,this.model.x_range_name,this.model.y_range_name)},t}(n.View);e.GlyphView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Glyph\",this.prototype._coords=[],this.internal({x_range_name:[l.String,\"default\"],y_range_name:[l.String,\"default\"]})},t.coords=function(t){var e=this.prototype._coords.concat(t);this.prototype._coords=e;for(var i={},n=0,r=t;n<r.length;n++){var o=r[n],s=o[0],a=o[1];i[s]=[l.NumberSpec],i[a]=[l.NumberSpec]}this.define(i)},t}(r.Model);(e.Glyph=c).initClass()},function(t,e,i){var n=t(391),r=t(118),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return(this.sleft[t]+this.sright[t])/2},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._index_data=function(){return this._index_box(this._y.length)},e.prototype._lrtb=function(t){var e=Math.min(this._left[t],this._right[t]),i=Math.max(this._left[t],this._right[t]),n=this._y[t]+.5*this._height[t],r=this._y[t]-.5*this._height[t];return[e,i,n,r]},e.prototype._map_data=function(){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);var t=this.sy.length;this.stop=new Float64Array(t),this.sbottom=new Float64Array(t);for(var 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()},e}(r.BoxView);i.HBarView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"HBar\",this.prototype.default_view=s,this.coords([[\"left\",\"y\"]]),this.define({height:[o.DistanceSpec],right:[o.NumberSpec]}),this.override({left:0})},t}(r.Box);(i.HBar=a).initClass()},function(t,e,i){var n=t(391),r=t(123),f=t(9),o=t(15),a=t(37),s=t(143),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return this.sy[t]},e.prototype._set_data=function(){var t=this._q.length,e=this.model.size,i=this.model.aspect_scale;if(this._x=new Float64Array(t),this._y=new Float64Array(t),\"pointytop\"==this.model.orientation)for(var n=0;n<t;n++)this._x[n]=e*Math.sqrt(3)*(this._q[n]+this._r[n]/2)/i,this._y[n]=3*-e/2*this._r[n];else for(var n=0;n<t;n++)this._x[n]=3*e/2*this._q[n],this._y[n]=-e*Math.sqrt(3)*(this._r[n]+this._q[n]/2)*i},e.prototype._index_data=function(){var t,e=this.model.size,i=Math.sqrt(3)*e/2;\"flattop\"==this.model.orientation?(i=(t=[e,i])[0],e=t[1],e*=this.model.aspect_scale):i/=this.model.aspect_scale;for(var n=[],r=0;r<this._x.length;r++){var o=this._x[r],s=this._y[r];!isNaN(o+s)&&isFinite(o+s)&&n.push({minX:o-i,minY:s-e,maxX:o+i,maxY:s+e,i:r})}return new a.SpatialIndex(n)},e.prototype.map_data=function(){var t,e;t=this.map_to_screen(this._x,this._y),this.sx=t[0],this.sy=t[1],e=this._get_unscaled_vertices(),this.svx=e[0],this.svy=e[1]},e.prototype._get_unscaled_vertices=function(){var t=this.model.size,e=this.model.aspect_scale;if(\"pointytop\"==this.model.orientation){var i=this.renderer.yscale,n=this.renderer.xscale,r=Math.abs(i.compute(0)-i.compute(t)),o=Math.sqrt(3)/2*Math.abs(n.compute(0)-n.compute(t))/e,s=r/2,a=[0,-o,-o,0,o,o],l=[r,s,-s,-r,-s,s];return[a,l]}var i=this.renderer.xscale,n=this.renderer.yscale,r=Math.abs(i.compute(0)-i.compute(t)),o=Math.sqrt(3)/2*Math.abs(n.compute(0)-n.compute(t))*e,s=r/2,a=[r,s,-s,-r,-s,s],l=[0,-o,-o,0,o,o];return[a,l]},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.svx,s=i.svy,a=i._scale,l=0,h=e;l<h.length;l++){var u=h[l];if(!isNaN(n[u]+r[u]+a[u])){t.translate(n[u],r[u]),t.beginPath();for(var c=0;c<6;c++)t.lineTo(o[c]*a[u],s[c]*a[u]);t.closePath(),t.translate(-n[u],-r[u]),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,u),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,u),t.stroke())}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=[],a=0,l=o;a<l.length;a++){var h=l[a];f.point_in_poly(e-this.sx[h],i-this.sy[h],this.svx,this.svy)&&s.push(h)}var u=f.create_empty_hit_test_result();return u.indices=s,u},e.prototype._hit_span=function(t){var e,i=t.sx,n=t.sy;if(\"v\"==t.direction){var r=this.renderer.yscale.invert(n),o=this.renderer.plot_view.frame.bbox.h_range,s=this.renderer.xscale.r_invert(o.start,o.end),a=s[0],l=s[1];e=this.index.indices({minX:a,minY:r,maxX:l,maxY:r})}else{var h=this.renderer.xscale.invert(i),u=this.renderer.plot_view.frame.bbox.v_range,c=this.renderer.yscale.r_invert(u.start,u.end),_=c[0],p=c[1];e=this.index.indices({minX:h,minY:_,maxX:h,maxY:p})}var d=f.create_empty_hit_test_result();return d.indices=e,d},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=f.validate_bbox_coords([s,a],[h,u]),_=f.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype.draw_legend_for_index=function(t,e,i){s.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.HexTileView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"HexTile\",this.prototype.default_view=l,this.coords([[\"r\",\"q\"]]),this.mixins([\"line\",\"fill\"]),this.define({size:[o.Number,1],aspect_scale:[o.Number,1],scale:[o.NumberSpec,1],orientation:[o.String,\"pointytop\"]}),this.override({line_color:null})},t}(r.Glyph);(i.HexTile=h).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(167),s=t(15),c=t(21),l=t(37),_=t(9),a=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.color_mapper.change,function(){return e._update_image()}),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._update_image=function(){null!=this.image_data&&(this._set_data(),this.renderer.plot_view.request_render())},t.prototype._index_data=function(){for(var t=[],e=0,i=this._x.length;e<i;e++){var n=this._lrtb(e),r=n[0],o=n[1],s=n[2],a=n[3];!isNaN(r+o+s+a)&&isFinite(r+o+s+a)&&t.push({minX:r,minY:a,maxX:o,maxY:s,i:e})}return new l.SpatialIndex(t)},t.prototype._lrtb=function(t){var e=this.renderer.xscale.source_range,i=this._x[t],n=e.is_reversed?i-this._dw[t]:i+this._dw[t],r=this.renderer.yscale.source_range,o=this._y[t],s=r.is_reversed?o-this._dh[t]:o+this._dh[t],a=i<n?[i,n]:[n,i],l=a[0],h=a[1],u=o<s?[o,s]:[s,o],c=u[0],_=u[1];return[l,h,_,c]},t.prototype._image_index=function(t,e,i){var n=this._lrtb(t),r=n[0],o=n[1],s=n[2],a=n[3],l=this._width[t],h=this._height[t],u=(o-r)/l,c=(s-a)/h,_=Math.floor((e-r)/u),p=Math.floor((i-a)/c);return{index:t,dim1:_,dim2:p,flat_index:p*l+_}},t.prototype._hit_point=function(t){var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=_.validate_bbox_coords([n,n],[r,r]),s=this.index.indices(o),a=_.create_empty_hit_test_result();a.image_indices=[];for(var l=0,h=s;l<h.length;l++){var u=h[l];e!=1/0&&i!=1/0&&a.image_indices.push(this._image_index(u,n,r))}return a},t.prototype._set_data=function(){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 Array(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new Array(this._image.length));for(var t=this.model.color_mapper.rgba_mapper,e=0,i=this._image.length;e<i;e++){var n=void 0;if(null!=this._image_shape&&0<this._image_shape[e].length){n=this._image[e];var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var o=this._image[e];n=c.concat(o),this._height[e]=o.length,this._width[e]=o[0].length}var s=this.image_data[e],a=void 0;null!=s&&s.width==this._width[e]&&s.height==this._height[e]?a=s:((a=document.createElement(\"canvas\")).width=this._width[e],a.height=this._height[e]);var l=a.getContext(\"2d\"),h=l.getImageData(0,0,this._width[e],this._height[e]),u=t.v_compute(n);h.data.set(u),l.putImageData(h,0,0),this.image_data[e]=a,this.max_dw=0,\"data\"==this.model.properties.dw.units&&(this.max_dw=c.max(this._dw)),this.max_dh=0,\"data\"==this.model.properties.dh.units&&(this.max_dh=c.max(this._dh))}},t.prototype._map_data=function(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}},t.prototype._render=function(t,e,i){var n=i.image_data,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=t.getImageSmoothingEnabled();t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.global_alpha;for(var h=0,u=e;h<u.length;h++){var c=u[h];if(null!=n[c]&&!isNaN(r[c]+o[c]+s[c]+a[c])){var _=o[c];t.translate(0,_),t.scale(1,-1),t.translate(0,-_),t.drawImage(n[c],0|r[c],0|o[c],s[c],a[c]),t.translate(0,_),t.scale(1,-1),t.translate(0,-_)}}t.setImageSmoothingEnabled(l)},t.prototype.bounds=function(){var t=this.index.bbox;return t.maxX+=this.max_dw,t.maxY+=this.max_dh,t},t}(r.XYGlyphView);i.ImageView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Image\",this.prototype.default_view=a,this.define({image:[s.NumberSpec],dw:[s.DistanceSpec],dh:[s.DistanceSpec],dilate:[s.Bool,!1],global_alpha:[s.Number,1],color_mapper:[s.Instance,function(){return new o.LinearColorMapper({palette:[\"#000000\",\"#252525\",\"#525252\",\"#737373\",\"#969696\",\"#bdbdbd\",\"#d9d9d9\",\"#f0f0f0\",\"#ffffff\"]})}]})},t}(r.XYGlyph);(i.Image=h).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(15),f=t(21),s=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._set_data=function(t){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 Array(this._image.length)),null!=this._height&&this._height.length==this._image.length||(this._height=new Array(this._image.length));for(var e=0,i=this._image.length;e<i;e++)if(!(null!=t&&t.indexOf(e)<0)){var n=void 0;if(null!=this._image_shape&&0<this._image_shape[e].length){n=this._image[e].buffer;var r=this._image_shape[e];this._height[e]=r[0],this._width[e]=r[1]}else{var o=this._image[e],s=f.concat(o);n=new ArrayBuffer(4*s.length);for(var a=new Uint32Array(n),l=0,h=s.length;l<h;l++)a[l]=s[l];this._height[e]=o.length,this._width[e]=o[0].length}var u=this.image_data[e],c=void 0;null!=u&&u.width==this._width[e]&&u.height==this._height[e]?c=u:((c=document.createElement(\"canvas\")).width=this._width[e],c.height=this._height[e]);var _=c.getContext(\"2d\"),p=_.getImageData(0,0,this._width[e],this._height[e]),d=new Uint8Array(n);p.data.set(d),_.putImageData(p,0,0),this.image_data[e]=c,this.max_dw=0,\"data\"==this.model.properties.dw.units&&(this.max_dw=f.max(this._dw)),this.max_dh=0,\"data\"==this.model.properties.dh.units&&(this.max_dh=f.max(this._dh))}},t.prototype._map_data=function(){switch(this.model.properties.dw.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,this._dw,\"edge\",this.model.dilate);break;case\"screen\":this.sw=this._dw}switch(this.model.properties.dh.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,this._dh,\"edge\",this.model.dilate);break;case\"screen\":this.sh=this._dh}},t.prototype._render=function(t,e,i){var n=i.image_data,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=t.getImageSmoothingEnabled();t.setImageSmoothingEnabled(!1),t.globalAlpha=this.model.global_alpha;for(var h=0,u=e;h<u.length;h++){var c=u[h];if(!isNaN(r[c]+o[c]+s[c]+a[c])){var _=o[c];t.translate(0,_),t.scale(1,-1),t.translate(0,-_),t.drawImage(n[c],0|r[c],0|o[c],s[c],a[c]),t.translate(0,_),t.scale(1,-1),t.translate(0,-_)}}t.setImageSmoothingEnabled(l)},t.prototype.bounds=function(){var t=this.index.bbox;return t.maxX+=this.max_dw,t.maxY+=this.max_dh,t},t}(r.XYGlyphView);i.ImageRGBAView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ImageRGBA\",this.prototype.default_view=s,this.define({image:[o.NumberSpec],dw:[o.DistanceSpec],dh:[o.DistanceSpec],global_alpha:[o.Number,1],dilate:[o.Bool,!1]})},t}(r.XYGlyph);(i.ImageRGBA=a).initClass()},function(t,e,m){var n=t(391),i=t(146),g=t(14),r=t(15),y=t(22),o=t(37);m.CanvasImage=Image;var s=function(i){function t(){var t=null!==i&&i.apply(this,arguments)||this;return t._images_rendered=!1,t}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.properties.global_alpha.change,function(){return e.renderer.request_render()})},t.prototype._index_data=function(){return new o.SpatialIndex([])},t.prototype._set_data=function(){var n=this;null!=this.image&&this.image.length==this._url.length||(this.image=y.map(this._url,function(){return null}));var t=this.model,r=t.retry_attempts,o=t.retry_timeout;this.retries=y.map(this._url,function(){return r});for(var e=function(t,e){if(null==s._url[t])return\"continue\";var i=new m.CanvasImage;i.onerror=function(){0<n.retries[t]?(g.logger.trace(\"ImageURL failed to load \"+n._url[t]+\" image, retrying in \"+o+\" ms\"),setTimeout(function(){return i.src=n._url[t]},o)):g.logger.warn(\"ImageURL unable to load \"+n._url[t]+\" image after \"+r+\" retries\"),n.retries[t]-=1},i.onload=function(){n.image[t]=i,n.renderer.request_render()},i.src=s._url[t]},s=this,i=0,a=this._url.length;i<a;i++)e(i,a);for(var l=\"data\"==this.model.properties.w.units,h=\"data\"==this.model.properties.h.units,u=this._x.length,c=new Array(l?2*u:u),_=new Array(h?2*u:u),i=0;i<u;i++)c[i]=this._x[i],_[i]=this._y[i];if(l)for(var i=0;i<u;i++)c[u+i]=this._x[i]+this._w[i];if(h)for(var i=0;i<u;i++)_[u+i]=this._y[i]+this._h[i];var p=y.min(c),d=y.max(c),f=y.min(_),v=y.max(_);this._bounds_rect={minX:p,maxX:d,minY:f,maxY:v}},t.prototype.has_finished=function(){return i.prototype.has_finished.call(this)&&1==this._images_rendered},t.prototype._map_data=function(){var t=null!=this.model.w?this._w:y.map(this._x,function(){return NaN}),e=null!=this.model.h?this._h:y.map(this._x,function(){return NaN});switch(this.model.properties.w.units){case\"data\":this.sw=this.sdist(this.renderer.xscale,this._x,t,\"edge\",this.model.dilate);break;case\"screen\":this.sw=t}switch(this.model.properties.h.units){case\"data\":this.sh=this.sdist(this.renderer.yscale,this._y,e,\"edge\",this.model.dilate);break;case\"screen\":this.sh=e}},t.prototype._render=function(t,e,i){var n=i.image,r=i.sx,o=i.sy,s=i.sw,a=i.sh,l=i._angle,h=this.renderer.plot_view.frame;t.rect(h._left.value+1,h._top.value+1,h._width.value-2,h._height.value-2),t.clip();for(var u=!0,c=0,_=e;c<_.length;c++){var p=_[c];if(!isNaN(r[p]+o[p]+l[p])&&-1!=this.retries[p]){var d=n[p];null!=d?this._render_image(t,p,d,r,o,s,a,l):u=!1}}u&&!this._images_rendered&&(this._images_rendered=!0,this.notify_finished())},t.prototype._final_sx_sy=function(t,e,i,n,r){switch(t){case\"top_left\":return[e,i];case\"top_center\":return[e-n/2,i];case\"top_right\":return[e-n,i];case\"center_right\":return[e-n,i-r/2];case\"bottom_right\":return[e-n,i-r];case\"bottom_center\":return[e-n/2,i-r];case\"bottom_left\":return[e,i-r];case\"center_left\":return[e,i-r/2];case\"center\":return[e-n/2,i-r/2]}},t.prototype._render_image=function(t,e,i,n,r,o,s,a){isNaN(o[e])&&(o[e]=i.width),isNaN(s[e])&&(s[e]=i.height);var l=this.model.anchor,h=this._final_sx_sy(l,n[e],r[e],o[e],s[e]),u=h[0],c=h[1];t.save(),t.globalAlpha=this.model.global_alpha,a[e]?(t.translate(u,c),t.rotate(a[e]),t.drawImage(i,0,0,o[e],s[e]),t.rotate(-a[e]),t.translate(-u,-c)):t.drawImage(i,u,c,o[e],s[e]),t.restore()},t.prototype.bounds=function(){return this._bounds_rect},t}(i.XYGlyphView);m.ImageURLView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ImageURL\",this.prototype.default_view=s,this.define({url:[r.StringSpec],anchor:[r.Anchor,\"top_left\"],global_alpha:[r.Number,1],angle:[r.AngleSpec,0],w:[r.DistanceSpec],h:[r.DistanceSpec],dilate:[r.Bool,!1],retry_attempts:[r.Number,0],retry_timeout:[r.Number,0]})},t}(i.XYGlyph);(m.ImageURL=a).initClass()},function(t,e,i){var n=t(114);i.AnnularWedge=n.AnnularWedge;var r=t(115);i.Annulus=r.Annulus;var o=t(116);i.Arc=o.Arc;var s=t(117);i.Bezier=s.Bezier;var a=t(120);i.Circle=a.Circle;var l=t(119);i.CenterRotatable=l.CenterRotatable;var h=t(121);i.Ellipse=h.Ellipse;var u=t(122);i.EllipseOval=u.EllipseOval;var c=t(123);i.Glyph=c.Glyph;var _=t(124);i.HBar=_.HBar;var p=t(125);i.HexTile=p.HexTile;var d=t(126);i.Image=d.Image;var f=t(127);i.ImageRGBA=f.ImageRGBA;var v=t(128);i.ImageURL=v.ImageURL;var m=t(130);i.Line=m.Line;var g=t(131);i.MultiLine=g.MultiLine;var y=t(132);i.MultiPolygons=y.MultiPolygons;var b=t(133);i.Oval=b.Oval;var x=t(134);i.Patch=x.Patch;var w=t(135);i.Patches=w.Patches;var k=t(136);i.Quad=k.Quad;var S=t(137);i.Quadratic=S.Quadratic;var C=t(138);i.Ray=C.Ray;var T=t(139);i.Rect=T.Rect;var A=t(140);i.Segment=A.Segment;var E=t(141);i.Step=E.Step;var M=t(142);i.Text=M.Text;var O=t(144);i.VBar=O.VBar;var z=t(145);i.Wedge=z.Wedge;var P=t(146);i.XYGlyph=P.XYGlyph},function(t,e,i){var n=t(391),r=t(146),a=t(143),c=t(9),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=!1,s=null;this.visuals.line.set_value(t);for(var a=0,l=e;a<l.length;a++){var h=l[a];if(o){if(!isFinite(n[h]+r[h])){t.stroke(),t.beginPath(),o=!1,s=h;continue}null!=s&&1<h-s&&(t.stroke(),o=!1)}o?t.lineTo(n[h],r[h]):(t.beginPath(),t.moveTo(n[h],r[h]),o=!0),s=h}o&&t.stroke()},e.prototype._hit_point=function(t){for(var e=this,i=c.create_empty_hit_test_result(),n={x:t.sx,y:t.sy},r=9999,o=Math.max(2,this.visuals.line.line_width.value()/2),s=0,a=this.sx.length-1;s<a;s++){var l={x:this.sx[s],y:this.sy[s]},h={x:this.sx[s+1],y:this.sy[s+1]},u=c.dist_to_segment(n,l,h);u<o&&u<r&&(r=u,i.add_to_selected_glyphs(this.model),i.get_view=function(){return e},i.line_indices=[s])}return i},e.prototype._hit_span=function(t){var e,i,n=this,r=t.sx,o=t.sy,s=c.create_empty_hit_test_result();\"v\"==t.direction?(e=this.renderer.yscale.invert(o),i=this._y):(e=this.renderer.xscale.invert(r),i=this._x);for(var a=0,l=i.length-1;a<l;a++)(i[a]<=e&&e<=i[a+1]||i[a+1]<=e&&e<=i[a])&&(s.add_to_selected_glyphs(this.model),s.get_view=function(){return n},s.line_indices.push(a));return s},e.prototype.get_interpolation_hit=function(t,e){var i=[this._x[t],this._y[t],this._x[t+1],this._y[t+1]],n=i[0],r=i[1],o=i[2],s=i[3];return a.line_interpolation(this.renderer,e,n,r,o,s)},e.prototype.draw_legend_for_index=function(t,e,i){a.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.LineView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Line\",this.prototype.default_view=o,this.mixins([\"line\"])},t}(r.XYGlyph);(i.Line=s).initClass()},function(t,e,i){var n=t(391),m=t(37),d=t(9),f=t(32),g=t(21),y=t(44),r=t(123),l=t(143),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)if(null!=this._xs[e]&&0!==this._xs[e].length){for(var n=this._xs[e],r=[],o=0,s=n.length;o<s;o++){var a=n[o];y.isStrictNaN(a)||r.push(a)}for(var l=this._ys[e],h=[],o=0,s=l.length;o<s;o++){var u=l[o];y.isStrictNaN(u)||h.push(u)}var c=[g.min(r),g.max(r)],_=c[0],p=c[1],d=[g.min(h),g.max(h)],f=d[0],v=d[1];t.push({minX:_,minY:f,maxX:p,maxY:v,i:e})}return new m.SpatialIndex(t)},e.prototype._render=function(t,e,i){for(var n=i.sxs,r=i.sys,o=0,s=e;o<s.length;o++){var a=s[o],l=[n[a],r[a]],h=l[0],u=l[1];this.visuals.line.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c])||isNaN(u[c])?(t.stroke(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.stroke()}},e.prototype._hit_point=function(t){for(var e=d.create_empty_hit_test_result(),i={x:t.sx,y:t.sy},n=9999,r={},o=0,s=this.sxs.length;o<s;o++){for(var a=Math.max(2,this.visuals.line.cache_select(\"line_width\",o)/2),l=null,h=0,u=this.sxs[o].length-1;h<u;h++){var c={x:this.sxs[o][h],y:this.sys[o][h]},_={x:this.sxs[o][h+1],y:this.sys[o][h+1]},p=d.dist_to_segment(i,c,_);p<a&&p<n&&(n=p,l=[h])}l&&(r[o]=l)}return e.indices=f.keys(r).map(function(t){return parseInt(t,10)}),e.multiline_indices=r,e},e.prototype._hit_span=function(t){var e,i,n=t.sx,r=t.sy,o=d.create_empty_hit_test_result();\"v\"===t.direction?(e=this.renderer.yscale.invert(r),i=this._ys):(e=this.renderer.xscale.invert(n),i=this._xs);for(var s={},a=0,l=i.length;a<l;a++){for(var h=[],u=0,c=i[a].length-1;u<c;u++)i[a][u]<=e&&e<=i[a][u+1]&&h.push(u);0<h.length&&(s[a]=h)}return o.indices=f.keys(s).map(function(t){return parseInt(t,10)}),o.multiline_indices=s,o},e.prototype.get_interpolation_hit=function(t,e,i){var n=[this._xs[t][e],this._ys[t][e],this._xs[t][e+1],this._ys[t][e+1]],r=n[0],o=n[1],s=n[2],a=n[3];return l.line_interpolation(this.renderer,i,r,o,s,a)},e.prototype.draw_legend_for_index=function(t,e,i){l.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.MultiLineView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiLine\",this.prototype.default_view=o,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.MultiLine=s).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143),u=t(21),s=t(22),x=t(9),m=t(44),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)for(var n=0,r=this._xs[e].length;n<r;n++){var o=this._xs[e][n][0],s=this._ys[e][n][0];0!=o.length&&t.push({minX:u.min(o),minY:u.min(s),maxX:u.max(o),maxY:u.max(s),i:e})}return this.hole_index=this._index_hole_data(),new h.SpatialIndex(t)},e.prototype._index_hole_data=function(){for(var t=[],e=0,i=this._xs.length;e<i;e++)for(var n=0,r=this._xs[e].length;n<r;n++)if(1<this._xs[e][n].length)for(var o=1,s=this._xs[e][n].length;o<s;o++){var a=this._xs[e][n][o],l=this._ys[e][n][o];0!=a.length&&t.push({minX:u.min(a),minY:u.min(l),maxX:u.max(a),maxY:u.max(l),i:e})}return new h.SpatialIndex(t)},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.x_ranges.default,e=[t.min,t.max],i=e[0],n=e[1],r=this.renderer.plot_view.frame.y_ranges.default,o=[r.min,r.max],s=o[0],a=o[1],l=x.validate_bbox_coords([i,n],[s,a]),h=this.index.indices(l);return h.sort(function(t,e){return t-e}).filter(function(t,e,i){return 0===e||t!==i[e-1]})},e.prototype._render=function(t,e,i){var n=i.sxs,r=i.sys;if(this.visuals.fill.doit||this.visuals.line.doit)for(var o=0,s=e;o<s.length;o++){var a=s[o];t.beginPath();for(var l=0,h=n[a].length;l<h;l++)for(var u=0,c=n[a][l].length;u<c;u++){for(var _=n[a][l][u],p=r[a][l][u],d=0,f=_.length;d<f;d++)0!=d?t.lineTo(_[d],p[d]):t.moveTo(_[d],p[d]);t.closePath()}this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,a),t.fill(\"evenodd\")),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,a),t.stroke())}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=this.hole_index.indices({minX:n,minY:r,maxX:n,maxY:r}),a=[],l=0,h=o.length;l<h;l++)for(var u=o[l],c=this.sxs[u],_=this.sys[u],p=0,d=c.length;p<d;p++){var f=c[p].length;if(x.point_in_poly(e,i,c[p][0],_[p][0]))if(1==f)a.push(u);else if(-1==s.indexOf(u))a.push(u);else if(1<f){for(var v=!1,m=1;m<f;m++){var g=c[p][m],y=_[p][m];if(x.point_in_poly(e,i,g,y)){v=!0;break}}v||a.push(u)}}var b=x.create_empty_hit_test_result();return b.indices=a,b},e.prototype._get_snap_coord=function(t){return s.sum(t)/t.length},e.prototype.scenterx=function(t,e,i){if(1==this.sxs[t].length)return this._get_snap_coord(this.sxs[t][0][0]);for(var n=this.sxs[t],r=this.sys[t],o=0,s=n.length;o<s;o++)if(x.point_in_poly(e,i,n[o][0],r[o][0]))return this._get_snap_coord(n[o][0]);throw new Error(\"unreachable code\")},e.prototype.scentery=function(t,e,i){if(1==this.sys[t].length)return this._get_snap_coord(this.sys[t][0][0]);for(var n=this.sxs[t],r=this.sys[t],o=0,s=n.length;o<s;o++)if(x.point_in_poly(e,i,n[o][0],r[o][0]))return this._get_snap_coord(r[o][0]);throw new Error(\"unreachable code\")},e.prototype.map_data=function(){for(var t=this,e=0,i=this.model._coords;e<i.length;e++){var n=i[e],r=n[0],o=n[1],s=\"s\"+r,a=\"s\"+o;if(o=\"_\"+o,null!=t[r=\"_\"+r]&&(m.isArray(t[r][0])||m.isTypedArray(t[r][0]))){var l=t[r].length;t[s]=new Array(l),t[a]=new Array(l);for(var h=0;h<l;h++){var u=t[r][h].length;t[s][h]=new Array(u),t[a][h]=new Array(u);for(var c=0;c<u;c++){var _=t[r][h][c].length;t[s][h][c]=new Array(_),t[a][h][c]=new Array(_);for(var p=0;p<_;p++){var d=this.map_to_screen(t[r][h][c][p],t[o][h][c][p]),f=d[0],v=d[1];t[s][h][c][p]=f,t[a][h][c][p]=v}}}}}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.MultiPolygonsView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiPolygons\",this.prototype.default_view=a,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.MultiPolygons=l).initClass()},function(t,e,i){var n=t(391),r=t(122),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){var t,e=this._x.length;this.sw=new Float64Array(e),t=\"data\"==this.model.properties.width.units?this.sdist(this.renderer.xscale,this._x,this._width,\"center\"):this._width;for(var i=0;i<e;i++)this.sw[i]=.75*t[i];\"data\"==this.model.properties.height.units?this.sh=this.sdist(this.renderer.yscale,this._y,this._height,\"center\"):this.sh=this._height},e}(r.EllipseOvalView);i.OvalView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Oval\",this.prototype.default_view=o},t}(r.EllipseOval);(i.Oval=s).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy;if(this.visuals.fill.doit){this.visuals.fill.set_value(t);for(var o=0,s=e;o<s.length;o++){var a=s[o];0!=a?isNaN(n[a]+r[a])?(t.closePath(),t.fill(),t.beginPath()):t.lineTo(n[a],r[a]):(t.beginPath(),t.moveTo(n[a],r[a]))}t.closePath(),t.fill()}if(this.visuals.line.doit){this.visuals.line.set_value(t);for(var l=0,h=e;l<h.length;l++){var a=h[l];0!=a?isNaN(n[a]+r[a])?(t.closePath(),t.stroke(),t.beginPath()):t.lineTo(n[a],r[a]):(t.beginPath(),t.moveTo(n[a],r[a]))}return t.closePath(),t.stroke()}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.PatchView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Patch\",this.prototype.default_view=s,this.mixins([\"line\",\"fill\"])},t}(r.XYGlyph);(i.Patch=a).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143),u=t(21),s=t(22),l=t(44),f=t(9),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._build_discontinuous_object=function(t){for(var e=[],i=0,n=t.length;i<n;i++){e[i]=[];for(var r=u.copy(t[i]);0<r.length;){var o=u.findLastIndex(r,function(t){return l.isStrictNaN(t)}),s=void 0;0<=o?s=r.splice(o):(s=r,r=[]);var a=s.filter(function(t){return!l.isStrictNaN(t)});e[i].push(a)}}return e},e.prototype._index_data=function(){for(var t=this._build_discontinuous_object(this._xs),e=this._build_discontinuous_object(this._ys),i=[],n=0,r=this._xs.length;n<r;n++)for(var o=0,s=t[n].length;o<s;o++){var a=t[n][o],l=e[n][o];0!=a.length&&i.push({minX:u.min(a),minY:u.min(l),maxX:u.max(a),maxY:u.max(l),i:n})}return new h.SpatialIndex(i)},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.x_ranges.default,e=[t.min,t.max],i=e[0],n=e[1],r=this.renderer.plot_view.frame.y_ranges.default,o=[r.min,r.max],s=o[0],a=o[1],l=f.validate_bbox_coords([i,n],[s,a]),h=this.index.indices(l);return h.sort(function(t,e){return t-e})},e.prototype._render=function(t,e,i){var n=i.sxs,r=i.sys;this.sxss=this._build_discontinuous_object(n),this.syss=this._build_discontinuous_object(r);for(var o=0,s=e;o<s.length;o++){var a=s[o],l=[n[a],r[a]],h=l[0],u=l[1];if(this.visuals.fill.doit){this.visuals.fill.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c]+u[c])?(t.closePath(),t.fill(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.closePath(),t.fill()}if(this.visuals.line.doit){this.visuals.line.set_vectorize(t,a);for(var c=0,_=h.length;c<_;c++)0!=c?isNaN(h[c]+u[c])?(t.closePath(),t.stroke(),t.beginPath()):t.lineTo(h[c],u[c]):(t.beginPath(),t.moveTo(h[c],u[c]));t.closePath(),t.stroke()}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=this.index.indices({minX:n,minY:r,maxX:n,maxY:r}),s=[],a=0,l=o.length;a<l;a++)for(var h=o[a],u=this.sxss[h],c=this.syss[h],_=0,p=u.length;_<p;_++)f.point_in_poly(e,i,u[_],c[_])&&s.push(h);var d=f.create_empty_hit_test_result();return d.indices=s,d},e.prototype._get_snap_coord=function(t){return s.sum(t)/t.length},e.prototype.scenterx=function(t,e,i){if(1==this.sxss[t].length)return this._get_snap_coord(this.sxs[t]);for(var n=this.sxss[t],r=this.syss[t],o=0,s=n.length;o<s;o++)if(f.point_in_poly(e,i,n[o],r[o]))return this._get_snap_coord(n[o]);throw new Error(\"unreachable code\")},e.prototype.scentery=function(t,e,i){if(1==this.syss[t].length)return this._get_snap_coord(this.sys[t]);for(var n=this.sxss[t],r=this.syss[t],o=0,s=n.length;o<s;o++)if(f.point_in_poly(e,i,n[o],r[o]))return this._get_snap_coord(r[o]);throw new Error(\"unreachable code\")},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.PatchesView=a;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Patches\",this.prototype.default_view=a,this.coords([[\"xs\",\"ys\"]]),this.mixins([\"line\",\"fill\"])},t}(r.Glyph);(i.Patches=c).initClass()},function(t,e,i){var n=t(391),r=t(118),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.get_anchor_point=function(t,e,i){var n=Math.min(this.sleft[e],this.sright[e]),r=Math.max(this.sright[e],this.sleft[e]),o=Math.min(this.stop[e],this.sbottom[e]),s=Math.max(this.sbottom[e],this.stop[e]);switch(t){case\"top_left\":return{x:n,y:o};case\"top_center\":return{x:(n+r)/2,y:o};case\"top_right\":return{x:r,y:o};case\"center_right\":return{x:r,y:(o+s)/2};case\"bottom_right\":return{x:r,y:s};case\"bottom_center\":return{x:(n+r)/2,y:s};case\"bottom_left\":return{x:n,y:s};case\"center_left\":return{x:n,y:(o+s)/2};case\"center\":return{x:(n+r)/2,y:(o+s)/2};default:return null}},e.prototype.scenterx=function(t){return(this.sleft[t]+this.sright[t])/2},e.prototype.scentery=function(t){return(this.stop[t]+this.sbottom[t])/2},e.prototype._index_data=function(){return this._index_box(this._right.length)},e.prototype._lrtb=function(t){var e=this._left[t],i=this._right[t],n=this._top[t],r=this._bottom[t];return[e,i,n,r]},e}(r.BoxView);i.QuadView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Quad\",this.prototype.default_view=o,this.coords([[\"right\",\"bottom\"],[\"left\",\"top\"]])},t}(r.Box);(i.Quad=s).initClass()},function(t,e,i){var n=t(391),h=t(37),r=t(123),o=t(143);function u(t,e,i){if(e==(t+i)/2)return[t,i];var n=(t-e)/(t-2*e+i),r=t*Math.pow(1-n,2)+2*e*(1-n)*n+i*Math.pow(n,2);return[Math.min(t,i,r),Math.max(t,i,r)]}var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++)if(!isNaN(this._x0[e]+this._x1[e]+this._y0[e]+this._y1[e]+this._cx[e]+this._cy[e])){var n=u(this._x0[e],this._cx[e],this._x1[e]),r=n[0],o=n[1],s=u(this._y0[e],this._cy[e],this._y1[e]),a=s[0],l=s[1];t.push({minX:r,minY:a,maxX:o,maxY:l,i:e})}return new h.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1,a=i.scx,l=i.scy;if(this.visuals.line.doit)for(var h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c]+l[c])||(t.beginPath(),t.moveTo(n[c],r[c]),t.quadraticCurveTo(a[c],l[c],o[c],s[c]),this.visuals.line.set_vectorize(t,c),t.stroke())}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e.prototype.scenterx=function(){throw new Error(\"not implemented\")},e.prototype.scentery=function(){throw new Error(\"not implemented\")},e}(r.GlyphView);i.QuadraticView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Quadratic\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"],[\"cx\",\"cy\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Quadratic=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.length.units?this.slength=this.sdist(this.renderer.xscale,this._x,this._length):this.slength=this._length},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.slength,s=i._angle;if(this.visuals.line.doit){for(var a=this.renderer.plot_view.frame._width.value,l=this.renderer.plot_view.frame._height.value,h=2*(a+l),u=0,c=o.length;u<c;u++)0==o[u]&&(o[u]=h);for(var _=0,p=e;_<p.length;_++){var u=p[_];isNaN(n[u]+r[u]+s[u]+o[u])||(t.translate(n[u],r[u]),t.rotate(s[u]),t.beginPath(),t.moveTo(0,0),t.lineTo(o[u],0),this.visuals.line.set_vectorize(t,u),t.stroke(),t.rotate(-s[u]),t.translate(-n[u],-r[u]))}}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.RayView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ray\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({length:[s.DistanceSpec],angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Ray=l).initClass()},function(t,e,i){var n=t(391),r=t(119),o=t(143),T=t(9),s=t(15),A=t(22),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_data=function(){this.max_w2=0,\"data\"==this.model.properties.width.units&&(this.max_w2=this.max_width/2),this.max_h2=0,\"data\"==this.model.properties.height.units&&(this.max_h2=this.max_height/2)},e.prototype._map_data=function(){var t,e;if(\"data\"==this.model.properties.width.units)t=this._map_dist_corner_for_data_side_length(this._x,this._width,this.renderer.xscale),this.sw=t[0],this.sx0=t[1];else{this.sw=this._width;var i=this.sx.length;this.sx0=new Float64Array(i);for(var n=0;n<i;n++)this.sx0[n]=this.sx[n]-this.sw[n]/2}if(\"data\"==this.model.properties.height.units)e=this._map_dist_corner_for_data_side_length(this._y,this._height,this.renderer.yscale),this.sh=e[0],this.sy1=e[1];else{this.sh=this._height;var r=this.sy.length;this.sy1=new Float64Array(r);for(var n=0;n<r;n++)this.sy1[n]=this.sy[n]-this.sh[n]/2}var o=this.sw.length;this.ssemi_diag=new Float64Array(o);for(var n=0;n<o;n++)this.ssemi_diag[n]=Math.sqrt(this.sw[n]/2*this.sw[n]/2+this.sh[n]/2*this.sh[n]/2)},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i.sx0,s=i.sy1,a=i.sw,l=i.sh,h=i._angle;if(this.visuals.fill.doit)for(var u=0,c=e;u<c.length;u++){var _=c[u];isNaN(n[_]+r[_]+o[_]+s[_]+a[_]+l[_]+h[_])||(this.visuals.fill.set_vectorize(t,_),h[_]?(t.translate(n[_],r[_]),t.rotate(h[_]),t.fillRect(-a[_]/2,-l[_]/2,a[_],l[_]),t.rotate(-h[_]),t.translate(-n[_],-r[_])):t.fillRect(o[_],s[_],a[_],l[_]))}if(this.visuals.line.doit){t.beginPath();for(var p=0,d=e;p<d.length;p++){var _=d[p];isNaN(n[_]+r[_]+o[_]+s[_]+a[_]+l[_]+h[_])||0!=a[_]&&0!=l[_]&&(h[_]?(t.translate(n[_],r[_]),t.rotate(h[_]),t.rect(-a[_]/2,-l[_]/2,a[_],l[_]),t.rotate(-h[_]),t.translate(-n[_],-r[_])):t.rect(o[_],s[_],a[_],l[_]),this.visuals.line.set_vectorize(t,_),t.stroke(),t.beginPath())}t.stroke()}},e.prototype._hit_rect=function(t){return this._hit_rect_against_index(t)},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=this.renderer.xscale.invert(e),r=this.renderer.yscale.invert(i),o=[],s=0,a=this.sx0.length;s<a;s++)o.push(this.sx0[s]+this.sw[s]/2);for(var l=[],s=0,a=this.sy1.length;s<a;s++)l.push(this.sy1[s]+this.sh[s]/2);for(var h=A.max(this._ddist(0,o,this.ssemi_diag)),u=A.max(this._ddist(1,l,this.ssemi_diag)),c=n-h,_=n+h,p=r-u,d=r+u,f=[],v=T.validate_bbox_coords([c,_],[p,d]),m=0,g=this.index.indices(v);m<g.length;m++){var s=g[m],y=void 0,b=void 0;if(this._angle[s]){var x=Math.sin(-this._angle[s]),w=Math.cos(-this._angle[s]),k=w*(e-this.sx[s])-x*(i-this.sy[s])+this.sx[s],S=x*(e-this.sx[s])+w*(i-this.sy[s])+this.sy[s];e=k,i=S,b=Math.abs(this.sx[s]-e)<=this.sw[s]/2,y=Math.abs(this.sy[s]-i)<=this.sh[s]/2}else b=e-this.sx0[s]<=this.sw[s]&&0<=e-this.sx0[s],y=i-this.sy1[s]<=this.sh[s]&&0<=i-this.sy1[s];y&&b&&f.push(s)}var C=T.create_empty_hit_test_result();return C.indices=f,C},e.prototype._map_dist_corner_for_data_side_length=function(t,e,i){for(var n=t.length,r=new Float64Array(n),o=new Float64Array(n),s=0;s<n;s++)r[s]=Number(t[s])-e[s]/2,o[s]=Number(t[s])+e[s]/2;for(var a=i.v_compute(r),l=i.v_compute(o),h=this.sdist(i,r,e,\"edge\",this.model.dilate),u=a,s=0,c=a.length;s<c;s++)if(a[s]!=l[s]){u=a[s]<l[s]?a:l;break}return[h,u]},e.prototype._ddist=function(t,e,i){for(var n=0==t?this.renderer.xscale:this.renderer.yscale,r=e,o=r.length,s=new Float64Array(o),a=0;a<o;a++)s[a]=r[a]+i[a];for(var l=n.v_invert(r),h=n.v_invert(s),u=l.length,c=new Float64Array(u),a=0;a<u;a++)c[a]=Math.abs(h[a]-l[a]);return c},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._bounds=function(t){var e=t.minX,i=t.maxX,n=t.minY,r=t.maxY;return{minX:e-this.max_w2,maxX:i+this.max_w2,minY:n-this.max_h2,maxY:r+this.max_h2}},e}(r.CenterRotatableView);i.RectView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Rect\",this.prototype.default_view=a,this.define({dilate:[s.Bool,!1]})},t}(r.CenterRotatable);(i.Rect=l).initClass()},function(t,e,i){var n=t(391),k=t(9),a=t(37),r=t(123),o=t(143),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x0.length;e<i;e++){var n=this._x0[e],r=this._x1[e],o=this._y0[e],s=this._y1[e];isNaN(n+r+o+s)||t.push({minX:Math.min(n,r),minY:Math.min(o,s),maxX:Math.max(n,r),maxY:Math.max(o,s),i:e})}return new a.SpatialIndex(t)},e.prototype._render=function(t,e,i){var n=i.sx0,r=i.sy0,o=i.sx1,s=i.sy1;if(this.visuals.line.doit)for(var a=0,l=e;a<l.length;a++){var h=l[a];isNaN(n[h]+r[h]+o[h]+s[h])||(t.beginPath(),t.moveTo(n[h],r[h]),t.lineTo(o[h],s[h]),this.visuals.line.set_vectorize(t,h),t.stroke())}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n={x:e,y:i},r=[],o=this.renderer.xscale.r_invert(e-2,e+2),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(i-2,i+2),h=l[0],u=l[1],c=this.index.indices({minX:s,minY:h,maxX:a,maxY:u}),_=0,p=c;_<p.length;_++){var d=p[_],f=Math.pow(Math.max(2,this.visuals.line.cache_select(\"line_width\",d)/2),2),v={x:this.sx0[d],y:this.sy0[d]},m={x:this.sx1[d],y:this.sy1[d]},g=k.dist_to_segment_squared(n,v,m);g<f&&r.push(d)}var y=k.create_empty_hit_test_result();return y.indices=r,y},e.prototype._hit_span=function(t){var e,i,n,r,o,s=this.renderer.plot_view.frame.bbox.ranges,a=s[0],l=s[1],h=t.sx,u=t.sy;\"v\"==t.direction?(o=this.renderer.yscale.invert(u),e=[this._y0,this._y1],n=e[0],r=e[1]):(o=this.renderer.xscale.invert(h),i=[this._x0,this._x1],n=i[0],r=i[1]);for(var c=[],_=this.renderer.xscale.r_invert(a.start,a.end),p=_[0],d=_[1],f=this.renderer.yscale.r_invert(l.start,l.end),v=f[0],m=f[1],g=this.index.indices({minX:p,minY:v,maxX:d,maxY:m}),y=0,b=g;y<b.length;y++){var x=b[y];(n[x]<=o&&o<=r[x]||r[x]<=o&&o<=n[x])&&c.push(x)}var w=k.create_empty_hit_test_result();return w.indices=c,w},e.prototype.scenterx=function(t){return(this.sx0[t]+this.sx1[t])/2},e.prototype.scentery=function(t){return(this.sy0[t]+this.sy1[t])/2},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.GlyphView);i.SegmentView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Segment\",this.prototype.default_view=s,this.coords([[\"x0\",\"y0\"],[\"x1\",\"y1\"]]),this.mixins([\"line\"])},t}(r.Glyph);(i.Segment=l).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){var n,r,o,s,a,l,h=i.sx,u=i.sy,c=!1,_=null;this.visuals.line.set_value(t);var p=e.length;if(!(p<2)){t.beginPath(),t.moveTo(h[0],u[0]);for(var d=0,f=e;d<f.length;d++){var v=f[d],m=void 0,g=void 0,y=void 0,b=void 0;switch(this.model.mode){case\"before\":n=[h[v-1],u[v]],m=n[0],y=n[1],r=[h[v],u[v]],g=r[0],b=r[1];break;case\"after\":o=[h[v],u[v-1]],m=o[0],y=o[1],s=[h[v],u[v]],g=s[0],b=s[1];break;case\"center\":var x=(h[v-1]+h[v])/2;a=[x,u[v-1]],m=a[0],y=a[1],l=[x,u[v]],g=l[0],b=l[1];break;default:throw new Error(\"unexpected\")}if(c){if(!isFinite(h[v]+u[v])){t.stroke(),t.beginPath(),c=!1,_=v;continue}null!=_&&1<v-_&&(t.stroke(),c=!1)}c?(t.lineTo(m,y),t.lineTo(g,b)):(t.beginPath(),t.moveTo(h[v],u[v]),c=!0),_=v}t.lineTo(h[p-1],u[p-1]),t.stroke()}},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_line_legend(this.visuals,t,e,i)},e}(r.XYGlyphView);i.StepView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Step\",this.prototype.default_view=a,this.mixins([\"line\"]),this.define({mode:[s.StepMode,\"before\"]})},t}(r.XYGlyph);(i.Step=l).initClass()},function(t,e,i){var n=t(391),r=t(146),d=t(9),o=t(15),O=t(41),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._rotate_point=function(t,e,i,n,r){var o=(t-i)*Math.cos(r)-(e-n)*Math.sin(r)+i,s=(t-i)*Math.sin(r)+(e-n)*Math.cos(r)+n;return[o,s]},e.prototype._text_bounds=function(t,e,i,n){var r=[t,t+i,t+i,t,t],o=[e,e,e-n,e-n,e];return[r,o]},e.prototype._render=function(t,e,i){var n=i.sx,r=i.sy,o=i._x_offset,s=i._y_offset,a=i._angle,l=i._text;this._sys=[],this._sxs=[];for(var h=0,u=e;h<u.length;h++){var c=u[h];if(!isNaN(n[c]+r[c]+o[c]+s[c]+a[c])&&null!=l[c]&&(this._sxs[c]=[],this._sys[c]=[],this.visuals.text.doit)){var _=\"\"+l[c];t.save(),t.translate(n[c]+o[c],r[c]+s[c]),t.rotate(a[c]),this.visuals.text.set_vectorize(t,c);var p=this.visuals.text.cache_select(\"font\",c),d=O.get_text_height(p).height,f=this.visuals.text.text_line_height.value()*d;if(-1==_.indexOf(\"\\n\")){t.fillText(_,0,0);var v=n[c]+o[c],m=r[c]+s[c],g=t.measureText(_).width,y=this._text_bounds(v,m,g,f),b=y[0],x=y[1];this._sxs[c].push(b),this._sys[c].push(x)}else{var w=_.split(\"\\n\"),k=f*w.length,S=this.visuals.text.cache_select(\"text_baseline\",c),C=void 0;switch(S){case\"top\":C=0;break;case\"middle\":C=-k/2+f/2;break;case\"bottom\":C=-k+f;break;default:C=0,console.warn(\"'\"+S+\"' baseline not supported with multi line text\")}for(var T=0,A=w;T<A.length;T++){var E=A[T];t.fillText(E,0,C);var v=n[c]+o[c],m=C+r[c]+s[c],g=t.measureText(E).width,M=this._text_bounds(v,m,g,f),b=M[0],x=M[1];this._sxs[c].push(b),this._sys[c].push(x),C+=f}}t.restore()}}},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=[],r=0;r<this._sxs.length;r++)for(var o=this._sxs[r],s=this._sys[r],a=o.length,l=0,h=a;l<h;l++){var u=this._rotate_point(e,i,o[a-1][0],s[a-1][0],-this._angle[r]),c=u[0],_=u[1];d.point_in_poly(c,_,o[l],s[l])&&n.push(r)}var p=d.create_empty_hit_test_result();return p.indices=n,p},e.prototype._scenterxy=function(t){var e=this._sxs[t][0][0],i=this._sys[t][0][0],n=(this._sxs[t][0][2]+e)/2,r=(this._sys[t][0][2]+i)/2,o=this._rotate_point(n,r,e,i,this._angle[t]),s=o[0],a=o[1];return{x:s,y:a}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.TextView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Text\",this.prototype.default_view=s,this.mixins([\"text\"]),this.define({text:[o.StringSpec,{field:\"text\"}],angle:[o.AngleSpec,0],x_offset:[o.NumberSpec,0],y_offset:[o.NumberSpec,0]})},t}(r.XYGlyph);(i.Text=a).initClass()},function(t,e,i){var x=t(9);i.generic_line_legend=function(t,e,i,n){var r=i.x0,o=i.x1,s=i.y0,a=i.y1;e.save(),e.beginPath(),e.moveTo(r,(s+a)/2),e.lineTo(o,(s+a)/2),t.line.doit&&(t.line.set_vectorize(e,n),e.stroke()),e.restore()},i.generic_area_legend=function(t,e,i,n){var r=i.x0,o=i.x1,s=i.y0,a=i.y1,l=.1*Math.abs(o-r),h=.1*Math.abs(a-s),u=r+l,c=o-l,_=s+h,p=a-h;t.fill.doit&&(t.fill.set_vectorize(e,n),e.fillRect(u,_,c-u,p-_)),t.line.doit&&(e.beginPath(),e.rect(u,_,c-u,p-_),t.line.set_vectorize(e,n),e.stroke())},i.line_interpolation=function(t,e,i,n,r,o){var s,a,l,h,u,c,_,p,d,f,v=e.sx,m=e.sy;\"point\"==e.type?(s=t.yscale.r_invert(m-1,m+1),d=s[0],f=s[1],a=t.xscale.r_invert(v-1,v+1),_=a[0],p=a[1]):\"v\"==e.direction?(l=t.yscale.r_invert(m,m),d=l[0],f=l[1],h=[Math.min(i-1,r-1),Math.max(i+1,r+1)],_=h[0],p=h[1]):(u=t.xscale.r_invert(v,v),_=u[0],p=u[1],c=[Math.min(n-1,o-1),Math.max(n+1,o+1)],d=c[0],f=c[1]);var g=x.check_2_segments_intersect(_,d,p,f,i,n,r,o),y=g.x,b=g.y;return[y,b]}},function(t,e,i){var n=t(391),r=t(118),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return(this.stop[t]+this.sbottom[t])/2},e.prototype._index_data=function(){return this._index_box(this._x.length)},e.prototype._lrtb=function(t){var e=this._x[t]-this._width[t]/2,i=this._x[t]+this._width[t]/2,n=Math.max(this._top[t],this._bottom[t]),r=Math.min(this._top[t],this._bottom[t]);return[e,i,n,r]},e.prototype._map_data=function(){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);var t=this.sx.length;this.sleft=new Float64Array(t),this.sright=new Float64Array(t);for(var e=0;e<t;e++)this.sleft[e]=this.sx[e]-this.sw[e]/2,this.sright[e]=this.sx[e]+this.sw[e]/2;this._clamp_viewport()},e}(r.BoxView);i.VBarView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"VBar\",this.prototype.default_view=s,this.coords([[\"x\",\"bottom\"]]),this.define({width:[o.DistanceSpec],top:[o.NumberSpec]}),this.override({bottom:0})},t}(r.Box);(i.VBar=a).initClass()},function(t,e,i){var n=t(391),r=t(146),o=t(143),P=t(9),s=t(15),j=t(31),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._map_data=function(){\"data\"==this.model.properties.radius.units?this.sradius=this.sdist(this.renderer.xscale,this._x,this._radius):this.sradius=this._radius},e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i.sradius,s=i._start_angle,a=i._end_angle,l=this.model.properties.direction.value(),h=0,u=e;h<u.length;h++){var c=u[h];isNaN(n[c]+r[c]+o[c]+s[c]+a[c])||(t.beginPath(),t.arc(n[c],r[c],o[c],s[c],a[c],l),t.lineTo(n[c],r[c]),t.closePath(),this.visuals.fill.doit&&(this.visuals.fill.set_vectorize(t,c),t.fill()),this.visuals.line.doit&&(this.visuals.line.set_vectorize(t,c),t.stroke()))}},e.prototype._hit_point=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d=t.sx,f=t.sy,v=this.renderer.xscale.invert(d),m=this.renderer.yscale.invert(f),g=2*this.max_radius;\"data\"===this.model.properties.radius.units?(u=v-g,c=v+g,_=m-g,p=m+g):(s=d-g,a=d+g,e=this.renderer.xscale.r_invert(s,a),u=e[0],c=e[1],l=f-g,h=f+g,i=this.renderer.yscale.r_invert(l,h),_=i[0],p=i[1]);for(var y=[],b=P.validate_bbox_coords([u,c],[_,p]),x=0,w=this.index.indices(b);x<w.length;x++){var k=w[x],S=Math.pow(this.sradius[k],2);n=this.renderer.xscale.r_compute(v,this._x[k]),s=n[0],a=n[1],r=this.renderer.yscale.r_compute(m,this._y[k]),l=r[0],h=r[1],(o=Math.pow(s-a,2)+Math.pow(l-h,2))<=S&&y.push([k,o])}for(var C=this.model.properties.direction.value(),T=[],A=0,E=y;A<E.length;A++){var M=E[A],k=M[0],O=M[1],z=Math.atan2(f-this.sy[k],d-this.sx[k]);j.angle_between(-z,-this._start_angle[k],-this._end_angle[k],C)&&T.push([k,O])}return P.create_hit_test_result_from_hits(T)},e.prototype.draw_legend_for_index=function(t,e,i){o.generic_area_legend(this.visuals,t,e,i)},e.prototype._scenterxy=function(t){var e=this.sradius[t]/2,i=(this._start_angle[t]+this._end_angle[t])/2;return{x:this.sx[t]+e*Math.cos(i),y:this.sy[t]+e*Math.sin(i)}},e.prototype.scenterx=function(t){return this._scenterxy(t).x},e.prototype.scentery=function(t){return this._scenterxy(t).y},e}(r.XYGlyphView);i.WedgeView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Wedge\",this.prototype.default_view=a,this.mixins([\"line\",\"fill\"]),this.define({direction:[s.Direction,\"anticlock\"],radius:[s.DistanceSpec],start_angle:[s.AngleSpec],end_angle:[s.AngleSpec]})},t}(r.XYGlyph);(i.Wedge=l).initClass()},function(t,e,i){var n=t(391),o=t(37),r=t(123),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._index_data=function(){for(var t=[],e=0,i=this._x.length;e<i;e++){var n=this._x[e],r=this._y[e];!isNaN(n+r)&&isFinite(n+r)&&t.push({minX:n,minY:r,maxX:n,maxY:r,i:e})}return new o.SpatialIndex(t)},e.prototype.scenterx=function(t){return this.sx[t]},e.prototype.scentery=function(t){return this.sy[t]},e}(r.GlyphView);i.XYGlyphView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"XYGlyph\",this.coords([[\"x\",\"y\"]])},t}(r.Glyph);(i.XYGlyph=a).initClass()},function(t,e,i){var n=t(391),r=t(59),u=t(22),c=t(21),_=t(9),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GraphHitTestPolicy\"},t.prototype._hit_test_nodes=function(t,e){if(!e.model.visible)return null;var i=e.node_view.glyph.hit_test(t);return null==i?null:e.node_view.model.view.convert_selection_from_subset(i)},t.prototype._hit_test_edges=function(t,e){if(!e.model.visible)return null;var i=e.edge_view.glyph.hit_test(t);return null==i?null:e.edge_view.model.view.convert_selection_from_subset(i)},t}(r.Model),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NodesOnly\"},t.prototype.hit_test=function(t,e){return this._hit_test_nodes(t,e)},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.node_renderer.data_source.selected;return r.update(t,i,n),e.node_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.model.get_selection_manager().get_or_create_inspector(i.node_view.model);return o.update(t,n,r),i.node_view.model.data_source.setv({inspected:o},{silent:!0}),i.node_view.model.data_source.inspect.emit([i.node_view,{geometry:e}]),!o.is_empty()},t}(i.GraphHitTestPolicy=o);(i.NodesOnly=s).initClass();var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"NodesAndLinkedEdges\"},t.prototype.hit_test=function(t,e){return this._hit_test_nodes(t,e)},t.prototype.get_linked_edges=function(e,t,i){var n=[];\"selection\"==i?n=e.selected.indices.map(function(t){return e.data.index[t]}):\"inspection\"==i&&(n=e.inspected.indices.map(function(t){return e.data.index[t]}));for(var r=[],o=0;o<t.data.start.length;o++)(c.contains(n,t.data.start[o])||c.contains(n,t.data.end[o]))&&r.push(o);for(var s=_.create_empty_hit_test_result(),a=0,l=r;a<l.length;a++){var o=l[a];s.multiline_indices[o]=[0]}return s.indices=r,s},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.node_renderer.data_source.selected;r.update(t,i,n);var o=e.edge_renderer.data_source.selected,s=this.get_linked_edges(e.node_renderer.data_source,e.edge_renderer.data_source,\"selection\");return o.update(s,i,n),e.node_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.node_view.model.data_source.selection_manager.get_or_create_inspector(i.node_view.model);o.update(t,n,r),i.node_view.model.data_source.setv({inspected:o},{silent:!0});var s=i.edge_view.model.data_source.selection_manager.get_or_create_inspector(i.edge_view.model),a=this.get_linked_edges(i.node_view.model.data_source,i.edge_view.model.data_source,\"inspection\");return s.update(a,n,r),i.edge_view.model.data_source.setv({inspected:s},{silent:!0}),i.node_view.model.data_source.inspect.emit([i.node_view,{geometry:e}]),!o.is_empty()},t}(o);(i.NodesAndLinkedEdges=a).initClass();var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EdgesAndLinkedNodes\"},t.prototype.hit_test=function(t,e){return this._hit_test_edges(t,e)},t.prototype.get_linked_nodes=function(e,t,i){var n=[];\"selection\"==i?n=t.selected.indices:\"inspection\"==i&&(n=t.inspected.indices);for(var r=[],o=0,s=n;o<s.length;o++){var a=s[o];r.push(t.data.start[a]),r.push(t.data.end[a])}var l=c.uniq(r).map(function(t){return u.indexOf(e.data.index,t)}),h=_.create_empty_hit_test_result();return h.indices=l,h},t.prototype.do_selection=function(t,e,i,n){if(null==t)return!1;var r=e.edge_renderer.data_source.selected;r.update(t,i,n);var o=e.node_renderer.data_source.selected,s=this.get_linked_nodes(e.node_renderer.data_source,e.edge_renderer.data_source,\"selection\");return o.update(s,i,n),e.edge_renderer.data_source._select.emit(),!r.is_empty()},t.prototype.do_inspection=function(t,e,i,n,r){if(null==t)return!1;var o=i.edge_view.model.data_source.selection_manager.get_or_create_inspector(i.edge_view.model);o.update(t,n,r),i.edge_view.model.data_source.setv({inspected:o},{silent:!0});var s=i.node_view.model.data_source.selection_manager.get_or_create_inspector(i.node_view.model),a=this.get_linked_nodes(i.node_view.model.data_source,i.edge_view.model.data_source,\"inspection\");return s.update(a,n,r),i.node_view.model.data_source.setv({inspected:s},{silent:!0}),i.edge_view.model.data_source.inspect.emit([i.edge_view,{geometry:e}]),!o.is_empty()},t}(o);(i.EdgesAndLinkedNodes=l).initClass()},function(t,e,i){var n=t(391);n.__exportStar(t(147),i),n.__exportStar(t(149),i),n.__exportStar(t(150),i)},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutProvider\"},t}(r.Model);(i.LayoutProvider=o).initClass()},function(t,e,i){var n=t(391),r=t(149),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"StaticLayoutProvider\",this.define({graph_layout:[o.Any,{}]})},t.prototype.get_node_coordinates=function(t){for(var e=[],i=[],n=t.data.index,r=0,o=n.length;r<o;r++){var s=this.graph_layout[n[r]],a=null!=s?s:[NaN,NaN],l=a[0],h=a[1];e.push(l),i.push(h)}return[e,i]},t.prototype.get_edge_coordinates=function(t){for(var e,i,n=[],r=[],o=t.data.start,s=t.data.end,a=null!=t.data.xs&&null!=t.data.ys,l=0,h=o.length;l<h;l++){var u=null!=this.graph_layout[o[l]]&&null!=this.graph_layout[s[l]];if(a&&u)n.push(t.data.xs[l]),r.push(t.data.ys[l]);else{var c=void 0,_=void 0;u?(e=[this.graph_layout[o[l]],this.graph_layout[s[l]]],_=e[0],c=e[1]):(_=(i=[[NaN,NaN],[NaN,NaN]])[0],c=i[1]),n.push([_[0],c[0]]),r.push([_[1],c[1]])}}return[n,r]},t}(r.LayoutProvider);(i.StaticLayoutProvider=s).initClass()},function(t,e,i){var n=t(391),h=t(79),r=t(187),o=t(15),u=t(44),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),Object.defineProperty(t.prototype,\"_x_range_name\",{get:function(){return this.model.x_range_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"_y_range_name\",{get:function(){return this.model.y_range_name},enumerable:!0,configurable:!0}),t.prototype.render=function(){if(this.model.visible){var t=this.plot_view.canvas_view.ctx;t.save(),this._draw_regions(t),this._draw_minor_grids(t),this._draw_grids(t),t.restore()}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.request_render()})},t.prototype._draw_regions=function(t){if(this.visuals.band_fill.doit){var e=this.model.grid_coords(\"major\",!1),i=e[0],n=e[1];this.visuals.band_fill.set_value(t);for(var r=0;r<i.length-1;r++)if(r%2==1){var o=this.plot_view.map_to_screen(i[r],n[r],this._x_range_name,this._y_range_name),s=o[0],a=o[1],l=this.plot_view.map_to_screen(i[r+1],n[r+1],this._x_range_name,this._y_range_name),h=l[0],u=l[1];t.fillRect(s[0],a[0],h[1]-s[0],u[1]-a[0]),t.fill()}}},t.prototype._draw_grids=function(t){if(this.visuals.grid_line.doit){var e=this.model.grid_coords(\"major\"),i=e[0],n=e[1];this._draw_grid_helper(t,this.visuals.grid_line,i,n)}},t.prototype._draw_minor_grids=function(t){if(this.visuals.minor_grid_line.doit){var e=this.model.grid_coords(\"minor\"),i=e[0],n=e[1];this._draw_grid_helper(t,this.visuals.minor_grid_line,i,n)}},t.prototype._draw_grid_helper=function(t,e,i,n){e.set_value(t);for(var r=0;r<i.length;r++){var o=this.plot_view.map_to_screen(i[r],n[r],this._x_range_name,this._y_range_name),s=o[0],a=o[1];t.beginPath(),t.moveTo(Math.round(s[0]),Math.round(a[0]));for(var l=1;l<s.length;l++)t.lineTo(Math.round(s[l]),Math.round(a[l]));t.stroke()}},t}(r.GuideRendererView);i.GridView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Grid\",this.prototype.default_view=s,this.mixins([\"line:grid_\",\"line:minor_grid_\",\"fill:band_\"]),this.define({bounds:[o.Any,\"auto\"],dimension:[o.Number,0],ticker:[o.Instance],x_range_name:[o.String,\"default\"],y_range_name:[o.String,\"default\"]}),this.override({level:\"underlay\",band_fill_color:null,band_fill_alpha:0,grid_line_color:\"#e5e5e5\",minor_grid_line_color:null})},t.prototype.ranges=function(){var t=this.dimension,e=(t+1)%2,i=this.plot.plot_canvas.frame,n=[i.x_ranges[this.x_range_name],i.y_ranges[this.y_range_name]];return[n[t],n[e]]},t.prototype.computed_bounds=function(){var t,e,i,n=this.ranges()[0],r=this.bounds,o=[n.min,n.max];if(u.isArray(r))e=Math.min(r[0],r[1]),i=Math.max(r[0],r[1]),e<o[0]&&(e=o[0]),o[1]<i&&(i=o[1]);else{e=o[0],i=o[1];for(var s=0,a=this.plot.select(h.Axis);s<a.length;s++){var l=a[s];l.dimension==this.dimension&&l.x_range_name==this.x_range_name&&l.y_range_name==this.y_range_name&&(t=l.computed_bounds,e=t[0],i=t[1])}}return[e,i]},t.prototype.grid_coords=function(t,e){var i;void 0===e&&(e=!0);var n=this.dimension,r=(n+1)%2,o=this.ranges(),s=o[0],a=o[1],l=this.computed_bounds(),h=l[0],u=l[1];i=[Math.min(h,u),Math.max(h,u)],h=i[0],u=i[1];var c=this.ticker.get_ticks(h,u,s,a.min,{})[t],_=s.min,p=s.max,d=a.min,f=a.max,v=[[],[]];e||(c[0]!=_&&c.splice(0,0,_),c[c.length-1]!=p&&c.push(p));for(var m=0;m<c.length;m++)if(c[m]!=_&&c[m]!=p||!e){for(var g=[],y=[],b=0;b<2;b++){var x=d+(f-d)/1*b;g.push(c[m]),y.push(x)}v[n].push(g),v[r].push(y)}return v},t}(r.GuideRenderer);(i.Grid=a).initClass()},function(t,e,i){var n=t(151);i.Grid=n.Grid},function(t,e,i){var n=t(391);n.__exportStar(t(66),i),n.__exportStar(t(83),i),n.__exportStar(t(89),i),n.__exportStar(t(93),i),n.__exportStar(t(96),i),n.__exportStar(t(102),i),n.__exportStar(t(108),i),n.__exportStar(t(129),i),n.__exportStar(t(148),i),n.__exportStar(t(152),i),n.__exportStar(t(156),i),n.__exportStar(t(166),i),n.__exportStar(t(274),i),n.__exportStar(t(171),i),n.__exportStar(t(176),i),n.__exportStar(t(182),i),n.__exportStar(t(188),i),n.__exportStar(t(191),i),n.__exportStar(t(195),i),n.__exportStar(t(204),i),n.__exportStar(t(214),i),n.__exportStar(t(224),i),n.__exportStar(t(260),i)},function(t,e,i){var n=t(391),p=t(13),r=t(15),s=t(21),o=t(157),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.children.change,function(){return t.rebuild_child_views()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-grid\")},t.prototype.get_height=function(){var t=this.model.get_layoutable_children(),e=t.map(function(t){return t._height.value});return this.model._horizontal?s.max(e):s.sum(e)},t.prototype.get_width=function(){var t=this.model.get_layoutable_children(),e=t.map(function(t){return t._width.value});return this.model._horizontal?s.sum(e):s.max(e)},t}(o.LayoutDOMView);i.BoxView=a;var l=function(_){function w(t){return _.call(this,t)||this}return n.__extends(w,_),w.initClass=function(){this.prototype.type=\"Box\",this.prototype.default_view=a,this.define({children:[r.Array,[]]}),this.internal({spacing:[r.Number,6]})},w.prototype.initialize=function(){_.prototype.initialize.call(this),this._child_equal_size_width=new p.Variable(this.toString()+\".child_equal_size_width\"),this._child_equal_size_height=new p.Variable(this.toString()+\".child_equal_size_height\"),this._box_equal_size_top=new p.Variable(this.toString()+\".box_equal_size_top\"),this._box_equal_size_bottom=new p.Variable(this.toString()+\".box_equal_size_bottom\"),this._box_equal_size_left=new p.Variable(this.toString()+\".box_equal_size_left\"),this._box_equal_size_right=new p.Variable(this.toString()+\".box_equal_size_right\"),this._box_cell_align_top=new p.Variable(this.toString()+\".box_cell_align_top\"),this._box_cell_align_bottom=new p.Variable(this.toString()+\".box_cell_align_bottom\"),this._box_cell_align_left=new p.Variable(this.toString()+\".box_cell_align_left\"),this._box_cell_align_right=new p.Variable(this.toString()+\".box_cell_align_right\")},w.prototype.get_layoutable_children=function(){return this.children},w.prototype.get_constrained_variables=function(){return n.__assign({},_.prototype.get_constrained_variables.call(this),{box_equal_size_top:this._box_equal_size_top,box_equal_size_bottom:this._box_equal_size_bottom,box_equal_size_left:this._box_equal_size_left,box_equal_size_right:this._box_equal_size_right,box_cell_align_top:this._box_cell_align_top,box_cell_align_bottom:this._box_cell_align_bottom,box_cell_align_left:this._box_cell_align_left,box_cell_align_right:this._box_cell_align_right})},w.prototype.get_constraints=function(){var i=_.prototype.get_constraints.call(this),t=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];i.push.apply(i,t)},e=this.get_layoutable_children();if(0==e.length)return i;for(var n=0,r=e;n<r.length;n++){var o=r[n],s=o.get_constrained_variables(),a=this._child_rect(s);this._horizontal?null!=s.height&&t(p.EQ(a.height,[-1,this._height])):null!=s.width&&t(p.EQ(a.width,[-1,this._width])),this._horizontal?null!=s.box_equal_size_left&&null!=s.box_equal_size_right&&null!=s.width&&t(p.EQ([-1,s.box_equal_size_left],[-1,s.box_equal_size_right],s.width,this._child_equal_size_width)):null!=s.box_equal_size_top&&null!=s.box_equal_size_bottom&&null!=s.height&&t(p.EQ([-1,s.box_equal_size_top],[-1,s.box_equal_size_bottom],s.height,this._child_equal_size_height))}var l=this._info(e[0].get_constrained_variables());t(p.EQ(l.span.start,0));for(var h=1;h<e.length;h++){var u=this._info(e[h].get_constrained_variables());l.span.size&&t(p.EQ(l.span.start,l.span.size,[-1,u.span.start])),t(p.WEAK_EQ(l.whitespace.after,u.whitespace.before,0-this.spacing)),t(p.GE(l.whitespace.after,u.whitespace.before,0-this.spacing)),l=u}var c=e[e.length-1].get_constrained_variables();return this._horizontal?null!=c.width&&t(p.EQ(l.span.start,l.span.size,[-1,this._width])):null!=c.height&&t(p.EQ(l.span.start,l.span.size,[-1,this._height])),i=i.concat(this._align_outer_edges_constraints(!0),this._align_outer_edges_constraints(!1),this._align_inner_cell_edges_constraints(),this._box_equal_size_bounds(!0),this._box_equal_size_bounds(!1),this._box_cell_align_bounds(!0),this._box_cell_align_bounds(!1),this._box_whitespace(!0),this._box_whitespace(!1))},w.prototype._child_rect=function(t){return{x:t.origin_x,y:t.origin_y,width:t.width,height:t.height}},w.prototype._span=function(t){return this._horizontal?{start:t.x,size:t.width}:{start:t.y,size:t.height}},w.prototype._info=function(t){var e;e=this._horizontal?{before:t.whitespace_left,after:t.whitespace_right}:{before:t.whitespace_top,after:t.whitespace_bottom};var i=this._span(this._child_rect(t));return{span:i,whitespace:e}},w.prototype._flatten_cell_edge_variables=function(t){var e;e=t?w._top_bottom_inner_cell_edge_variables:w._left_right_inner_cell_edge_variables;for(var i=t!=this._horizontal,n=this.get_layoutable_children(),r=n.length,o={},s=0,a=0,l=n;a<l.length;a++){var h=l[a],u=void 0;u=h instanceof w?h._flatten_cell_edge_variables(t):{};for(var c=h.get_constrained_variables(),_=0,p=e;_<p.length;_++){var d=p[_];d in c&&(u[d]=[c[d]])}for(var f in u){var v=u[f],m=void 0;if(i){var g=f.split(\" \"),y=g[0],b=1<g.length?g[1]:\"\",x=this._horizontal?\"row\":\"col\";m=y+\" \"+x+\"-\"+r+\"-\"+s+\"-\"+b}else m=f;o[m]=m in o?o[m].concat(v):v}s++}return o},w.prototype._align_inner_cell_edges_constraints=function(){var t=[];if(null!=this.document&&s.includes(this.document.roots(),this)){var e=this._flatten_cell_edge_variables(this._horizontal);for(var i in e){var n=e[i];if(1<n.length)for(var r=n[0],o=1;o<n.length;o++)t.push(p.EQ(n[o],[-1,r]))}}return t},w.prototype._find_edge_leaves=function(t){var e=this.get_layoutable_children(),i=[[],[]];if(0<e.length)if(this._horizontal==t){var n=e[0],r=e[e.length-1];n instanceof w?i[0]=i[0].concat(n._find_edge_leaves(t)[0]):i[0].push(n),r instanceof w?i[1]=i[1].concat(r._find_edge_leaves(t)[1]):i[1].push(r)}else for(var o=0,s=e;o<s.length;o++){var a=s[o];if(a instanceof w){var l=a._find_edge_leaves(t);i[0]=i[0].concat(l[0]),i[1]=i[1].concat(l[1])}else i[0].push(a),i[1].push(a)}return i},w.prototype._align_outer_edges_constraints=function(t){var e,i,n=this._find_edge_leaves(t),r=n[0],o=n[1];t?(e=\"on_edge_align_left\",i=\"on_edge_align_right\"):(e=\"on_edge_align_top\",i=\"on_edge_align_bottom\");var s=function(t,e){for(var i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o.get_constrained_variables();e in s&&i.push(s[e])}return i},a=s(r,e),l=s(o,i),h=[],u=function(t){if(1<t.length)for(var e=t[0],i=1;i<t.length;i++){var n=t[i];h.push(p.EQ([-1,e],n))}};return u(a),u(l),h},w.prototype._box_insets_from_child_insets=function(t,e,i,a){var n,r,o,s,l=this._find_edge_leaves(t),h=l[0],u=l[1];t?(n=e+\"_left\",r=e+\"_right\",o=this[i+\"_left\"],s=this[i+\"_right\"]):(n=e+\"_top\",r=e+\"_bottom\",o=this[i+\"_top\"],s=this[i+\"_bottom\"]);var c=[],_=function(t,e,i){for(var n=0,r=e;n<r.length;n++){var o=r[n],s=o.get_constrained_variables();i in s&&(a?c.push(p.GE([-1,t],s[i])):c.push(p.EQ([-1,t],s[i])))}};return _(o,h,n),_(s,u,r),c},w.prototype._box_equal_size_bounds=function(t){return this._box_insets_from_child_insets(t,\"box_equal_size\",\"_box_equal_size\",!1)},w.prototype._box_cell_align_bounds=function(t){return this._box_insets_from_child_insets(t,\"box_cell_align\",\"_box_cell_align\",!1)},w.prototype._box_whitespace=function(t){return this._box_insets_from_child_insets(t,\"whitespace\",\"_whitespace\",!0)},w._left_right_inner_cell_edge_variables=[\"box_cell_align_left\",\"box_cell_align_right\"],w._top_bottom_inner_cell_edge_variables=[\"box_cell_align_top\",\"box_cell_align_bottom\"],w}(o.LayoutDOM);(i.Box=l).initClass()},function(t,e,i){var n=t(391),r=t(154),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-grid-column\")},e}(r.BoxView);i.ColumnView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e._horizontal=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Column\",this.prototype.default_view=o},t}(r.Box);(i.Column=s).initClass()},function(t,e,i){var n=t(154);i.Box=n.Box;var r=t(155);i.Column=r.Column;var o=t(157);i.LayoutDOM=o.LayoutDOM;var s=t(158);i.Row=s.Row;var a=t(159);i.Spacer=a.Spacer;var l=t(160);i.WidgetBox=l.WidgetBox},function(t,e,i){var n=t(391),r=t(59),g=t(5),o=t(15),s=t(11),h=t(13),a=t(4),l=t(6),u=function(i){function t(){var t=null!==i&&i.apply(this,arguments)||this;return t._solver_inited=!1,t._idle_notified=!1,t}return n.__extends(t,i),t.prototype.initialize=function(t){i.prototype.initialize.call(this,t),this.is_root&&(this._solver=new h.Solver),this.child_views={},this.build_child_views()},t.prototype.remove=function(){for(var t in this.child_views){var e=this.child_views[t];e.remove()}this.child_views={},i.prototype.remove.call(this)},t.prototype.has_finished=function(){if(!i.prototype.has_finished.call(this))return!1;for(var t in this.child_views){var e=this.child_views[t];if(!e.has_finished())return!1}return!0},t.prototype.notify_finished=function(){this.is_root?!this._idle_notified&&this.has_finished()&&null!=this.model.document&&(this._idle_notified=!0,this.model.document.notify_idle(this.model)):i.prototype.notify_finished.call(this)},t.prototype._calc_width_height=function(){for(var t=this.el;t=t.parentElement;)if(!t.classList.contains(\"bk-root\")){if(t==document.body){var e=g.margin(document.body),i=e.left,n=e.right,r=e.top,o=e.bottom,s=document.documentElement.clientWidth-i-n,a=document.documentElement.clientHeight-r-o;return[s,a]}var l=g.padding(t),h=l.left,u=l.right,c=l.top,_=l.bottom,p=t.getBoundingClientRect(),d=p.width,f=p.height,v=d-h-u,m=f-c-_;switch(this.model.sizing_mode){case\"scale_width\":if(0<v)return[v,0<m?m:null];break;case\"scale_height\":if(0<m)return[0<v?v:null,m];break;case\"scale_both\":case\"stretch_both\":if(0<v||0<m)return[0<v?v:null,0<m?m:null];break;default:throw new Error(\"unreachable\")}}return[null,null]},t.prototype._init_solver=function(){this._root_width=new h.Variable(this.toString()+\".root_width\"),this._root_height=new h.Variable(this.toString()+\".root_height\"),this._solver.add_edit_variable(this._root_width,NaN),this._solver.add_edit_variable(this._root_height,NaN);for(var t=this.model.get_all_editables(),e=0,i=t;e<i.length;e++){var n=i[e];this._solver.add_edit_variable(n,h.Strength.strong)}for(var r=this.model.get_all_constraints(),o=0,s=r;o<s.length;o++){var a=s[o];this._solver.add_constraint(a)}var l=this.model.get_constrained_variables();null!=l.width&&this._solver.add_constraint(h.EQ(l.width,this._root_width)),null!=l.height&&this._solver.add_constraint(h.EQ(l.height,this._root_height)),this._solver.update_variables(),this._solver_inited=!0},t.prototype._suggest_dims=function(t,e){var i,n=this.model.get_constrained_variables();null==n.width&&null==n.height||(null!=t&&null!=e||(i=this._calc_width_height(),t=i[0],e=i[1]),null!=n.width&&null!=t&&this._solver.suggest_value(this._root_width,t),null!=n.height&&null!=e&&this._solver.suggest_value(this._root_height,e),this._solver.update_variables())},t.prototype.resize=function(t,e){void 0===t&&(t=null),void 0===e&&(e=null),this.is_root?this._do_layout(!1,t,e):this.root.resize(t,e)},t.prototype.partial_layout=function(){this.is_root?this._do_layout(!1):this.root.partial_layout()},t.prototype.layout=function(){this.is_root?this._do_layout(!0):this.root.layout()},t.prototype._do_layout=function(t,e,i){void 0===e&&(e=null),void 0===i&&(i=null),this._solver_inited&&!t||(this._solver.clear(),this._init_solver()),this._suggest_dims(e,i),this._layout(),this._layout(),this._layout(!0),this.notify_finished()},t.prototype._layout=function(t){void 0===t&&(t=!1);for(var e=0,i=this.model.get_layoutable_children();e<i.length;e++){var n=i[e],r=this.child_views[n.id];null!=r._layout&&r._layout(t)}this.render(),t&&(this._has_finished=!0)},t.prototype.rebuild_child_views=function(){this.solver.clear(),this.build_child_views(),this.layout()},t.prototype.build_child_views=function(){var t=this.model.get_layoutable_children();a.build_views(this.child_views,t,{parent:this}),g.empty(this.el);for(var e=0,i=t;e<i.length;e++){var n=i[e],r=this.child_views[n.id];this.el.appendChild(r.el)}},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.is_root&&window.addEventListener(\"resize\",this),this.connect(this.model.properties.sizing_mode.change,function(){return t.layout()})},t.prototype.handleEvent=function(){this.resize()},t.prototype.disconnect_signals=function(){window.removeEventListener(\"resize\",this),i.prototype.disconnect_signals.call(this)},t.prototype._render_classes=function(){this.el.className=\"\";for(var t=0,e=this.css_classes();t<e.length;t++){var i=e[t];this.el.classList.add(i)}this.el.classList.add(\"bk-layout-\"+this.model.sizing_mode);for(var n=0,r=this.model.css_classes;n<r.length;n++){var o=r[n];this.el.classList.add(o)}},t.prototype.render=function(){switch(this._render_classes(),this.model.sizing_mode){case\"fixed\":var t=void 0;t=null!=this.model.width?this.model.width:this.get_width(),this.model.setv({width:t},{silent:!0});var e=void 0;e=null!=this.model.height?this.model.height:this.get_height(),this.model.setv({height:e},{silent:!0}),this.solver.suggest_value(this.model._width,t),this.solver.suggest_value(this.model._height,e);break;case\"scale_width\":var e=this.get_height();this.solver.suggest_value(this.model._height,e);break;case\"scale_height\":var t=this.get_width();this.solver.suggest_value(this.model._width,t);break;case\"scale_both\":var i=this.get_width_height(),t=i[0],e=i[1];this.solver.suggest_value(this.model._width,t),this.solver.suggest_value(this.model._height,e)}this.solver.update_variables(),this.position()},t.prototype.position=function(){switch(this.model.sizing_mode){case\"fixed\":case\"scale_width\":case\"scale_height\":this.el.style.position=\"relative\",this.el.style.left=\"\",this.el.style.top=\"\";break;case\"scale_both\":case\"stretch_both\":this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\"}this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\"},t.prototype.get_width_height=function(){var t=this._calc_width_height(),e=t[0],i=t[1];if(null==e&&null==i)throw new Error(\"detached element\");var n=this.model.get_aspect_ratio();if(null!=e&&null==i)return[e,e/n];if(null==e&&null!=i)return[i*n,i];var r,o,s=e,a=e/n,l=i*n,h=i;return s<l?(r=s,o=a):(r=l,o=h),[r,o]},t}(l.DOMView);i.LayoutDOMView=u;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LayoutDOM\",this.define({height:[o.Number],width:[o.Number],disabled:[o.Bool,!1],sizing_mode:[o.SizingMode,\"fixed\"],css_classes:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._width=new h.Variable(this.toString()+\".width\"),this._height=new h.Variable(this.toString()+\".height\"),this._left=new h.Variable(this.toString()+\".left\"),this._right=new h.Variable(this.toString()+\".right\"),this._top=new h.Variable(this.toString()+\".top\"),this._bottom=new h.Variable(this.toString()+\".bottom\"),this._dom_top=new h.Variable(this.toString()+\".dom_top\"),this._dom_left=new h.Variable(this.toString()+\".dom_left\"),this._width_minus_right=new h.Variable(this.toString()+\".width_minus_right\"),this._height_minus_bottom=new h.Variable(this.toString()+\".height_minus_bottom\"),this._whitespace_top=new h.Variable(this.toString()+\".whitespace_top\"),this._whitespace_bottom=new h.Variable(this.toString()+\".whitespace_bottom\"),this._whitespace_left=new h.Variable(this.toString()+\".whitespace_left\"),this._whitespace_right=new h.Variable(this.toString()+\".whitespace_right\")},Object.defineProperty(t.prototype,\"layout_bbox\",{get:function(){return{top:this._top.value,left:this._left.value,width:this._width.value,height:this._height.value,right:this._right.value,bottom:this._bottom.value,dom_top:this._dom_top.value,dom_left:this._dom_left.value}},enumerable:!0,configurable:!0}),t.prototype.dump_layout=function(){for(var t,e={},i=[this];t=i.shift();)i.push.apply(i,t.get_layoutable_children()),e[t.toString()]=t.layout_bbox;console.table(e)},t.prototype.get_all_constraints=function(){for(var t=this.get_constraints(),e=0,i=this.get_layoutable_children();e<i.length;e++){var n=i[e];t=n instanceof s.LayoutCanvas?t.concat(n.get_constraints()):t.concat(n.get_all_constraints())}return t},t.prototype.get_all_editables=function(){for(var t=this.get_editables(),e=0,i=this.get_layoutable_children();e<i.length;e++){var n=i[e];t=n instanceof s.LayoutCanvas?t.concat(n.get_editables()):t.concat(n.get_all_editables())}return t},t.prototype.get_constraints=function(){return[h.GE(this._dom_left),h.GE(this._dom_top),h.GE(this._left),h.GE(this._width,[-1,this._right]),h.GE(this._top),h.GE(this._height,[-1,this._bottom]),h.EQ(this._width_minus_right,[-1,this._width],this._right),h.EQ(this._height_minus_bottom,[-1,this._height],this._bottom)]},t.prototype.get_layoutable_children=function(){return[]},t.prototype.get_editables=function(){switch(this.sizing_mode){case\"fixed\":return[this._height,this._width];case\"scale_width\":return[this._height];case\"scale_height\":return[this._width];case\"scale_both\":return[this._width,this._height];default:return[]}},t.prototype.get_constrained_variables=function(){var t={origin_x:this._dom_left,origin_y:this._dom_top,whitespace_top:this._whitespace_top,whitespace_bottom:this._whitespace_bottom,whitespace_left:this._whitespace_left,whitespace_right:this._whitespace_right};switch(this.sizing_mode){case\"stretch_both\":t.width=this._width,t.height=this._height;break;case\"scale_width\":t.width=this._width;break;case\"scale_height\":t.height=this._height}return t},t.prototype.get_aspect_ratio=function(){return this.width/this.height},t}(r.Model);(i.LayoutDOM=c).initClass()},function(t,e,i){var n=t(391),r=t(154),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-grid-row\")},e}(r.BoxView);i.RowView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e._horizontal=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Row\",this.prototype.default_view=o},t}(r.Box);(i.Row=s).initClass()},function(t,e,i){var n=t(391),r=t(157),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),\"fixed\"==this.model.sizing_mode&&(this.el.style.width=this.model.width+\"px\",this.el.style.height=this.model.height+\"px\")},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-spacer-box\")},e.prototype.get_width=function(){return 1},e.prototype.get_height=function(){return 1},e}(r.LayoutDOMView);i.SpacerView=o;var s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Spacer\",this.prototype.default_view=o},t.prototype.get_constrained_variables=function(){return n.__assign({},e.prototype.get_constrained_variables.call(this),{on_edge_align_top:this._top,on_edge_align_bottom:this._height_minus_bottom,on_edge_align_left:this._left,on_edge_align_right:this._width_minus_right,box_cell_align_top:this._top,box_cell_align_bottom:this._height_minus_bottom,box_cell_align_left:this._left,box_cell_align_right:this._width_minus_right,box_equal_size_top:this._top,box_equal_size_bottom:this._height_minus_bottom,box_equal_size_left:this._left,box_equal_size_right:this._width_minus_right})},t}(r.LayoutDOM);(i.Spacer=s).initClass()},function(t,e,i){var n=t(391),r=t(14),o=t(15),s=t(157),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.children.change,function(){return t.rebuild_child_views()})},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-widget-box\")},t.prototype.render=function(){if(this._render_classes(),\"fixed\"==this.model.sizing_mode||\"scale_height\"==this.model.sizing_mode){var t=this.get_width();this.model._width.value!=t&&this.solver.suggest_value(this.model._width,t)}if(\"fixed\"==this.model.sizing_mode||\"scale_width\"==this.model.sizing_mode){var e=this.get_height();this.model._height.value!=e&&this.solver.suggest_value(this.model._height,e)}if(this.solver.update_variables(),\"stretch_both\"==this.model.sizing_mode)this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\",this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\";else{var i=void 0;i=0<this.model._width.value-20?this.model._width.value-20+\"px\":\"100%\",this.el.style.width=i}},t.prototype.get_height=function(){var t=0;for(var e in this.child_views){var i=this.child_views[e],n=i.el,r=getComputedStyle(n),o=parseInt(r.marginTop)||0,s=parseInt(r.marginBottom)||0;t+=n.offsetHeight+o+s}return t+20},t.prototype.get_width=function(){if(null!=this.model.width)return this.model.width;var t=this.el.scrollWidth+20;for(var e in this.child_views){var i=this.child_views[e],n=i.el.scrollWidth;t<n&&(t=n)}return t},t}(s.LayoutDOMView);i.WidgetBoxView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"WidgetBox\",this.prototype.default_view=a,this.define({children:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),\"fixed\"==this.sizing_mode&&null==this.width&&(this.width=300,r.logger.info(\"WidgetBox mode is fixed, but no width specified. Using default of 300.\"))},t.prototype.get_constrained_variables=function(){var t=n.__assign({},e.prototype.get_constrained_variables.call(this),{on_edge_align_top:this._top,on_edge_align_bottom:this._height_minus_bottom,on_edge_align_left:this._left,on_edge_align_right:this._width_minus_right,box_cell_align_top:this._top,box_cell_align_bottom:this._height_minus_bottom,box_cell_align_left:this._left,box_cell_align_right:this._width_minus_right,box_equal_size_top:this._top,box_equal_size_bottom:this._height_minus_bottom});return\"fixed\"!=this.sizing_mode&&(t.box_equal_size_left=this._left,t.box_equal_size_right=this._width_minus_right),t},t.prototype.get_layoutable_children=function(){return this.children},t}(s.LayoutDOM);(i.WidgetBox=l).initClass()},function(t,e,i){var n=t(391),o=t(162),r=t(164),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalColorMapper\",this.define({factors:[s.Array],start:[s.Number,0],end:[s.Number]})},t.prototype._v_compute=function(t,e,i,n){var r=n.nan_color;o.cat_v_compute(t,this.factors,i,e,this.start,this.end,r)},t}(r.ColorMapper);(i.CategoricalColorMapper=a).initClass()},function(t,e,i){var _=t(21),p=t(44);function d(t,e){if(t.length!=e.length)return!1;for(var i=0,n=t.length;i<n;i++)if(t[i]!==e[i])return!1;return!0}i._cat_equals=d,i.cat_v_compute=function(o,s,a,l,h,u,c){for(var t=function(t,e){var i=o[t],n=void 0;p.isString(i)?n=s.indexOf(i):(null!=h?i=null!=u?i.slice(h,u):i.slice(h):null!=u&&(i=i.slice(0,u)),n=1==i.length?s.indexOf(i[0]):_.findIndex(s,function(t){return d(t,i)}));var r=void 0;r=n<0||n>=a.length?c:a[n],l[t]=r},e=0,i=o.length;e<i;e++)t(e,i)}},function(t,e,i){var n=t(391),r=t(162),o=t(169),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalMarkerMapper\",this.define({factors:[s.Array],markers:[s.Array],start:[s.Number,0],end:[s.Number],default_value:[s.String,\"circle\"]})},t.prototype.v_compute=function(t){var e=new Array(t.length);return r.cat_v_compute(t,this.factors,this.markers,e,this.start,this.end,this.default_value),e},t}(o.Mapper);(i.CategoricalMarkerMapper=a).initClass()},function(t,e,i){var n=t(391),r=t(169),o=t(15),s=t(27),a=t(28);function l(t){return\"#\"!=t[0]&&(t=s.color2hex(t)),9!=t.length&&(t+=\"ff\"),parseInt(t.slice(1),16)}function h(t){for(var e=new Uint32Array(t.length),i=0,n=t.length;i<n;i++)e[i]=l(t[i]);return e}function u(t){if(a.is_little_endian)for(var e=new DataView(t.buffer),i=0,n=t.length;i<n;i++)e.setUint32(4*i,t[i]);return new Uint8Array(t.buffer)}i._convert_color=l,i._convert_palette=h,i._uint32_to_rgba=u;var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ColorMapper\",this.define({palette:[o.Any],nan_color:[o.Color,\"gray\"]})},t.prototype.v_compute=function(t){var e=new Array(t.length);return this._v_compute(t,e,this.palette,this._colors(function(t){return t})),e},Object.defineProperty(t.prototype,\"rgba_mapper\",{get:function(){var i=this,n=h(this.palette),r=this._colors(l);return{v_compute:function(t){var e=new Uint32Array(t.length);return i._v_compute(t,e,n,r),u(e)}}},enumerable:!0,configurable:!0}),t.prototype._colors=function(t){return{nan_color:t(this.nan_color)}},t}(r.Mapper);(i.ColorMapper=c).initClass()},function(t,e,i){var n=t(391),r=t(164),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousColorMapper\",this.define({high:[o.Number],low:[o.Number],high_color:[o.Color],low_color:[o.Color]})},t.prototype._colors=function(t){return n.__assign({},e.prototype._colors.call(this,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})},t}(r.ColorMapper);(i.ContinuousColorMapper=s).initClass()},function(t,e,i){var n=t(161);i.CategoricalColorMapper=n.CategoricalColorMapper;var r=t(163);i.CategoricalMarkerMapper=r.CategoricalMarkerMapper;var o=t(165);i.ContinuousColorMapper=o.ContinuousColorMapper;var s=t(164);i.ColorMapper=s.ColorMapper;var a=t(167);i.LinearColorMapper=a.LinearColorMapper;var l=t(168);i.LogColorMapper=l.LogColorMapper},function(t,e,i){var n=t(391),r=t(165),m=t(22),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearColorMapper\"},t.prototype._v_compute=function(t,e,i,n){for(var r=n.nan_color,o=n.low_color,s=n.high_color,a=null!=this.low?this.low:m.min(t),l=null!=this.high?this.high:m.max(t),h=i.length-1,u=1/(l-a),c=1/i.length,_=0,p=t.length;_<p;_++){var d=t[_];if(isNaN(d))e[_]=r;else if(d!=l){var f=(d-a)*u,v=Math.floor(f/c);e[_]=v<0?null!=o?o:i[0]:h<v?null!=s?s:i[h]:i[v]}else e[_]=i[h]}},t}(r.ContinuousColorMapper);(i.LinearColorMapper=o).initClass()},function(t,e,i){var n=t(391),r=t(165),m=t(22),g=null!=Math.log1p?Math.log1p:function(t){return Math.log(1+t)},o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogColorMapper\"},t.prototype._v_compute=function(t,e,i,n){for(var r=n.nan_color,o=n.low_color,s=n.high_color,a=i.length,l=null!=this.low?this.low:m.min(t),h=null!=this.high?this.high:m.max(t),u=a/(g(h)-g(l)),c=i.length-1,_=0,p=t.length;_<p;_++){var d=t[_];if(isNaN(d))e[_]=r;else if(h<d)e[_]=null!=s?s:i[c];else if(d!=h)if(d<l)e[_]=null!=o?o:i[0];else{var f=g(d)-g(l),v=Math.floor(f*u);c<v&&(v=c),e[_]=i[v]}else e[_]=i[c]}},t}(r.ContinuousColorMapper);(i.LogColorMapper=o).initClass()},function(t,e,i){var n=t(391),r=t(279),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Mapper\"},t.prototype.compute=function(t){throw new Error(\"mapping single values is not supported\")},t}(r.Transform);(i.Mapper=o).initClass()},function(t,e,i){var o=t(391),s=t(172),h=Math.sqrt(3);function a(t,e){t.moveTo(-e,e),t.lineTo(e,-e),t.moveTo(-e,-e),t.lineTo(e,e)}function l(t,e){t.moveTo(0,e),t.lineTo(0,-e),t.moveTo(-e,0),t.lineTo(e,0)}function u(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 c(t,e){var i=e*h,n=i/3;t.moveTo(-e,n),t.lineTo(e,n),t.lineTo(0,n-i),t.closePath()}function n(t,e,i,n,r){var o=.65*i;l(t,i),a(t,o),n.doit&&(n.set_vectorize(t,e),t.stroke())}function r(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function _(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function p(t,e,i,n,r){l(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function d(t,e,i,n,r){u(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function f(t,e,i,n,r){u(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function v(t,e,i,n,r){var o,s,a,l;l=h*(a=(s=i)/2),(o=t).moveTo(s,0),o.lineTo(a,-l),o.lineTo(-a,-l),o.lineTo(-s,0),o.lineTo(-a,l),o.lineTo(a,l),o.closePath(),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function m(t,e,i,n,r){t.rotate(Math.PI),c(t,i),t.rotate(-Math.PI),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function g(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function y(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),l(t,i),t.stroke())}function b(t,e,i,n,r){var o=2*i;t.rect(-i,-i,o,o),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),a(t,i),t.stroke())}function x(t,e,i,n,r){c(t,i),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())}function w(t,e,i,n,r){var o,s;s=i,(o=t).moveTo(-s,0),o.lineTo(s,0),n.doit&&(n.set_vectorize(t,e),t.stroke())}function k(t,e,i,n,r){a(t,i),n.doit&&(n.set_vectorize(t,e),t.stroke())}function S(i,n){var r=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.initClass=function(){this.prototype._render_one=n},e}(s.MarkerView);r.initClass();var t=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.default_view=r,this.prototype.type=i},e}(s.Marker);return t.initClass(),t}i.Asterisk=S(\"Asterisk\",n),i.CircleCross=S(\"CircleCross\",r),i.CircleX=S(\"CircleX\",_),i.Cross=S(\"Cross\",p),i.Diamond=S(\"Diamond\",d),i.DiamondCross=S(\"DiamondCross\",f),i.Hex=S(\"Hex\",v),i.InvertedTriangle=S(\"InvertedTriangle\",m),i.Square=S(\"Square\",g),i.SquareCross=S(\"SquareCross\",y),i.SquareX=S(\"SquareX\",b),i.Triangle=S(\"Triangle\",x),i.Dash=S(\"Dash\",w),i.X=S(\"X\",k),i.marker_funcs={asterisk:n,circle:function(t,e,i,n,r){t.arc(0,0,i,0,2*Math.PI,!1),r.doit&&(r.set_vectorize(t,e),t.fill()),n.doit&&(n.set_vectorize(t,e),t.stroke())},circle_cross:r,circle_x:_,cross:p,diamond:d,diamond_cross:f,hex:v,inverted_triangle:m,square:g,square_cross:y,square_x:b,triangle:x,dash:w,x:k}},function(t,e,i){var n=t(391);n.__exportStar(t(170),i);var r=t(173);i.Scatter=r.Scatter},function(t,e,i){var n=t(391),r=t(146),w=t(9),o=t(15),h=t(21),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._size,s=i._angle,a=0,l=e;a<l.length;a++){var h=l[a];if(!isNaN(n[h]+r[h]+o[h]+s[h])){var u=o[h]/2;t.beginPath(),t.translate(n[h],r[h]),s[h]&&t.rotate(s[h]),this._render_one(t,h,u,this.visuals.line,this.visuals.fill),s[h]&&t.rotate(-s[h]),t.translate(-n[h],-r[h])}}},e.prototype._mask_data=function(){var t=this.renderer.plot_view.frame.bbox.h_range,e=t.start-this.max_size,i=t.end+this.max_size,n=this.renderer.xscale.r_invert(e,i),r=n[0],o=n[1],s=this.renderer.plot_view.frame.bbox.v_range,a=s.start-this.max_size,l=s.end+this.max_size,h=this.renderer.yscale.r_invert(a,l),u=h[0],c=h[1],_=w.validate_bbox_coords([r,o],[u,c]);return this.index.indices(_)},e.prototype._hit_point=function(t){for(var e=t.sx,i=t.sy,n=e-this.max_size,r=e+this.max_size,o=this.renderer.xscale.r_invert(n,r),s=o[0],a=o[1],l=i-this.max_size,h=i+this.max_size,u=this.renderer.yscale.r_invert(l,h),c=u[0],_=u[1],p=w.validate_bbox_coords([s,a],[c,_]),d=this.index.indices(p),f=[],v=0,m=d;v<m.length;v++){var g=m[v],y=this._size[g]/2,b=Math.abs(this.sx[g]-e)+Math.abs(this.sy[g]-i);Math.abs(this.sx[g]-e)<=y&&Math.abs(this.sy[g]-i)<=y&&f.push([g,b])}return w.create_hit_test_result_from_hits(f)},e.prototype._hit_span=function(t){var e,i,n,r,o,s,a=t.sx,l=t.sy,h=this.bounds(),u=h.minX,c=h.minY,_=h.maxX,p=h.maxY,d=w.create_empty_hit_test_result();if(\"h\"==t.direction){o=c,s=p;var f=this.max_size/2,v=a-f,m=a+f;e=this.renderer.xscale.r_invert(v,m),n=e[0],r=e[1]}else{n=u,r=_;var f=this.max_size/2,g=l-f,y=l+f;i=this.renderer.yscale.r_invert(g,y),o=i[0],s=i[1]}var b=w.validate_bbox_coords([n,r],[o,s]),x=this.index.indices(b);return d.indices=x,d},e.prototype._hit_rect=function(t){var e=t.sx0,i=t.sx1,n=t.sy0,r=t.sy1,o=this.renderer.xscale.r_invert(e,i),s=o[0],a=o[1],l=this.renderer.yscale.r_invert(n,r),h=l[0],u=l[1],c=w.validate_bbox_coords([s,a],[h,u]),_=w.create_empty_hit_test_result();return _.indices=this.index.indices(c),_},e.prototype._hit_poly=function(t){for(var e=t.sx,i=t.sy,n=h.range(0,this.sx.length),r=[],o=0,s=n.length;o<s;o++){var a=n[o];w.point_in_poly(this.sx[o],this.sy[o],e,i)&&r.push(a)}var l=w.create_empty_hit_test_result();return l.indices=r,l},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.x1,o=e.y0,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+r)/2;var h=new Array(a);h[i]=(o+s)/2;var u=new Array(a);u[i]=.4*Math.min(Math.abs(r-n),Math.abs(s-o));var c=new Array(a);c[i]=0,this._render(t,[i],{sx:l,sy:h,_size:u,_angle:c})},e}(r.XYGlyphView);i.MarkerView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.mixins([\"line\",\"fill\"]),this.define({size:[o.DistanceSpec,{units:\"screen\",value:4}],angle:[o.AngleSpec,0]})},t}(r.XYGlyph);(i.Marker=a).initClass()},function(t,e,i){var n=t(391),r=t(172),_=t(170),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._render=function(t,e,i){for(var n=i.sx,r=i.sy,o=i._size,s=i._angle,a=i._marker,l=0,h=e;l<h.length;l++){var u=h[l];if(!isNaN(n[u]+r[u]+o[u]+s[u])&&null!=a[u]){var c=o[u]/2;t.beginPath(),t.translate(n[u],r[u]),s[u]&&t.rotate(s[u]),_.marker_funcs[a[u]](t,u,c,this.visuals.line,this.visuals.fill),s[u]&&t.rotate(-s[u]),t.translate(-n[u],-r[u])}}},e.prototype.draw_legend_for_index=function(t,e,i){var n=e.x0,r=e.x1,o=e.y0,s=e.y1,a=i+1,l=new Array(a);l[i]=(n+r)/2;var h=new Array(a);h[i]=(o+s)/2;var u=new Array(a);u[i]=.4*Math.min(Math.abs(r-n),Math.abs(s-o));var c=new Array(a);c[i]=0;var _=new Array(a);_[i]=this._marker[i],this._render(t,[i],{sx:l,sy:h,_size:u,_angle:c,_marker:_})},e}(r.MarkerView);i.ScatterView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Scatter\",this.prototype.default_view=s,this.define({marker:[o.MarkerSpec,{value:\"circle\"}]})},t}(r.Marker);(i.Scatter=a).initClass()},function(t,e,i){var n=t(391),r=t(14),o=t(175),s=t(177),a=t(15),l=t(59),h=t(184),u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MapOptions\",this.define({lat:[a.Number],lng:[a.Number],zoom:[a.Number,12]})},t}(l.Model);(i.MapOptions=u).initClass();var c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapOptions\",this.define({map_type:[a.String,\"roadmap\"],scale_control:[a.Bool,!1],styles:[a.String],tilt:[a.Int,45]})},t}(u);(i.GMapOptions=c).initClass();var _=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(s.PlotView);i.GMapPlotView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapPlot\",this.prototype.default_view=_,this.define({map_options:[a.Instance],api_key:[a.String]}),this.override({x_range:function(){return new h.Range1d},y_range:function(){return new h.Range1d}})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.api_key||r.logger.error(\"api_key is required. See https://developers.google.com/maps/documentation/javascript/get-api-key for more information on how to obtain your own.\")},t.prototype._init_plot_canvas=function(){return new o.GMapPlotCanvas({plot:this})},t}(s.Plot);(i.GMapPlot=p).initClass()},function(t,e,i){var n=t(391),r=t(19),c=t(33),o=t(178),s=new r.Signal0({},\"gmaps_ready\"),a=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.initialize=function(t){var e=this;this.pause(),a.prototype.initialize.call(this,t),this._tiles_loaded=!1,this.zoom_count=0;var i=this.model.plot.map_options,n=i.zoom,r=i.lat,o=i.lng;this.initial_zoom=n,this.initial_lat=r,this.initial_lng=o,this.canvas_view.map_el.style.position=\"absolute\",\"undefined\"!=typeof google&&null!=google.maps||(\"undefined\"==typeof _bokeh_gmaps_callback&&function(t){_bokeh_gmaps_callback=function(){return s.emit()};var e=document.createElement(\"script\");e.type=\"text/javascript\",e.src=\"https://maps.googleapis.com/maps/api/js?key=\"+t+\"&callback=_bokeh_gmaps_callback\",document.body.appendChild(e)}(this.model.plot.api_key),s.connect(function(){return e.request_render()})),this.unpause()},t.prototype.update_range=function(t){if(null==t)this.map.setCenter({lat:this.initial_lat,lng:this.initial_lng}),this.map.setOptions({zoom:this.initial_zoom}),a.prototype.update_range.call(this,null);else if(null!=t.sdx||null!=t.sdy)this.map.panBy(t.sdx||0,t.sdy||0),a.prototype.update_range.call(this,t);else if(null!=t.factor){var e=void 0;if(10!==this.zoom_count)return void(this.zoom_count+=1);this.zoom_count=0,this.pause(),a.prototype.update_range.call(this,t),e=t.factor<0?-1:1;var i=this.map.getZoom(),n=i+e;if(2<=n){this.map.setZoom(n);var r=this._get_projected_bounds(),o=r[0],s=r[1];s-o<0&&this.map.setZoom(i)}this.unpause()}this._set_bokeh_ranges()},t.prototype._build_map=function(){var t=this,e=google.maps;this.map_types={satellite:e.MapTypeId.SATELLITE,terrain:e.MapTypeId.TERRAIN,roadmap:e.MapTypeId.ROADMAP,hybrid:e.MapTypeId.HYBRID};var i=this.model.plot.map_options,n={center:new e.LatLng(i.lat,i.lng),zoom:i.zoom,disableDefaultUI:!0,mapTypeId:this.map_types[i.map_type],scaleControl:i.scale_control,tilt:i.tilt};null!=i.styles&&(n.styles=JSON.parse(i.styles)),this.map=new e.Map(this.canvas_view.map_el,n),e.event.addListener(this.map,\"idle\",function(){return t._set_bokeh_ranges()}),e.event.addListener(this.map,\"bounds_changed\",function(){return t._set_bokeh_ranges()}),e.event.addListenerOnce(this.map,\"tilesloaded\",function(){return t._render_finished()}),this.connect(this.model.plot.properties.map_options.change,function(){return t._update_options()}),this.connect(this.model.plot.map_options.properties.styles.change,function(){return t._update_styles()}),this.connect(this.model.plot.map_options.properties.lat.change,function(){return t._update_center(\"lat\")}),this.connect(this.model.plot.map_options.properties.lng.change,function(){return t._update_center(\"lng\")}),this.connect(this.model.plot.map_options.properties.zoom.change,function(){return t._update_zoom()}),this.connect(this.model.plot.map_options.properties.map_type.change,function(){return t._update_map_type()}),this.connect(this.model.plot.map_options.properties.scale_control.change,function(){return t._update_scale_control()}),this.connect(this.model.plot.map_options.properties.tilt.change,function(){return t._update_tilt()})},t.prototype._render_finished=function(){this._tiles_loaded=!0,this.notify_finished()},t.prototype.has_finished=function(){return a.prototype.has_finished.call(this)&&!0===this._tiles_loaded},t.prototype._get_latlon_bounds=function(){var t=this.map.getBounds(),e=t.getNorthEast(),i=t.getSouthWest(),n=i.lng(),r=e.lng(),o=i.lat(),s=e.lat();return[n,r,o,s]},t.prototype._get_projected_bounds=function(){var t=this._get_latlon_bounds(),e=t[0],i=t[1],n=t[2],r=t[3],o=c.wgs84_mercator.forward([e,n]),s=o[0],a=o[1],l=c.wgs84_mercator.forward([i,r]),h=l[0],u=l[1];return[s,h,a,u]},t.prototype._set_bokeh_ranges=function(){var t=this._get_projected_bounds(),e=t[0],i=t[1],n=t[2],r=t[3];this.frame.x_range.setv({start:e,end:i}),this.frame.y_range.setv({start:n,end:r})},t.prototype._update_center=function(t){var e=this.map.getCenter().toJSON();e[t]=this.model.plot.map_options[t],this.map.setCenter(e),this._set_bokeh_ranges()},t.prototype._update_map_type=function(){this.map.setOptions({mapTypeId:this.map_types[this.model.plot.map_options.map_type]})},t.prototype._update_scale_control=function(){this.map.setOptions({scaleControl:this.model.plot.map_options.scale_control})},t.prototype._update_tilt=function(){this.map.setOptions({tilt:this.model.plot.map_options.tilt})},t.prototype._update_options=function(){this._update_styles(),this._update_center(\"lat\"),this._update_center(\"lng\"),this._update_zoom(),this._update_map_type()},t.prototype._update_styles=function(){this.map.setOptions({styles:JSON.parse(this.model.plot.map_options.styles)})},t.prototype._update_zoom=function(){this.map.setOptions({zoom:this.model.plot.map_options.zoom}),this._set_bokeh_ranges()},t.prototype._map_hook=function(t,e){var i=e[0],n=e[1],r=e[2],o=e[3];this.canvas_view.map_el.style.top=n+\"px\",this.canvas_view.map_el.style.left=i+\"px\",this.canvas_view.map_el.style.width=r+\"px\",this.canvas_view.map_el.style.height=o+\"px\",null==this.map&&\"undefined\"!=typeof google&&null!=google.maps&&this._build_map()},t.prototype._paint_empty=function(t,e){var i=this.canvas._width.value,n=this.canvas._height.value,r=e[0],o=e[1],s=e[2],a=e[3];t.clearRect(0,0,i,n),t.beginPath(),t.moveTo(0,0),t.lineTo(0,n),t.lineTo(i,n),t.lineTo(i,0),t.lineTo(0,0),t.moveTo(r,o),t.lineTo(r+s,o),t.lineTo(r+s,o+a),t.lineTo(r,o+a),t.lineTo(r,o),t.closePath(),t.fillStyle=this.model.plot.border_fill_color,t.fill()},t}(o.PlotCanvasView);i.GMapPlotCanvasView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GMapPlotCanvas\",this.prototype.default_view=a},t.prototype.initialize=function(){this.use_map=!0,e.prototype.initialize.call(this)},t}(o.PlotCanvas);(i.GMapPlotCanvas=l).initClass()},function(t,e,i){var n=t(174);i.MapOptions=n.MapOptions;var r=t(174);i.GMapOptions=r.GMapOptions;var o=t(174);i.GMapPlot=o.GMapPlot;var s=t(175);i.GMapPlotCanvas=s.GMapPlotCanvas;var a=t(177);i.Plot=a.Plot;var l=t(178);i.PlotCanvas=l.PlotCanvas},function(t,e,i){var o=t(391),n=t(13),r=t(14),s=t(15),f=t(19),a=t(21),v=t(32),m=t(44),l=t(157),h=t(75),u=t(192),c=t(268),_=t(76),p=t(178),g=t(200),y=t(185),b=t(3),x=t(180),w=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype.connect_signals=function(){t.prototype.connect_signals.call(this),this.connect(this.model.properties.title.change,function(){return r.logger.warn(\"Title object cannot be replaced. Try changing properties on title to update it after initialization.\")})},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-plot-layout\")},e.prototype.get_height=function(){return this.model._width.value/this.model.get_aspect_ratio()},e.prototype.get_width=function(){return this.model._height.value*this.model.get_aspect_ratio()},e.prototype.save=function(t){this.plot_canvas_view.save(t)},Object.defineProperty(e.prototype,\"plot_canvas_view\",{get:function(){return this.child_views[this.model.plot_canvas.id]},enumerable:!0,configurable:!0}),e}(l.LayoutDOMView);i.PlotView=w;var d=function(d){function t(t){return d.call(this,t)||this}return o.__extends(t,d),t.initClass=function(){this.prototype.type=\"Plot\",this.prototype.default_view=w,this.mixins([\"line:outline_\",\"fill:background_\",\"fill:border_\"]),this.define({toolbar:[s.Instance,function(){return new c.Toolbar}],toolbar_location:[s.Location,\"right\"],toolbar_sticky:[s.Boolean,!0],plot_width:[s.Number,600],plot_height:[s.Number,600],title:[s.Any,function(){return new h.Title({text:\"\"})}],title_location:[s.Location,\"above\"],h_symmetry:[s.Bool,!0],v_symmetry:[s.Bool,!1],above:[s.Array,[]],below:[s.Array,[]],left:[s.Array,[]],right:[s.Array,[]],renderers:[s.Array,[]],x_range:[s.Instance,function(){return new x.DataRange1d}],extra_x_ranges:[s.Any,{}],y_range:[s.Instance,function(){return new x.DataRange1d}],extra_y_ranges:[s.Any,{}],x_scale:[s.Instance,function(){return new u.LinearScale}],y_scale:[s.Instance,function(){return new u.LinearScale}],lod_factor:[s.Number,10],lod_interval:[s.Number,300],lod_threshold:[s.Number,2e3],lod_timeout:[s.Number,500],hidpi:[s.Bool,!0],output_backend:[s.OutputBackend,\"canvas\"],min_border:[s.Number,5],min_border_top:[s.Number,null],min_border_left:[s.Number,null],min_border_bottom:[s.Number,null],min_border_right:[s.Number,null],inner_width:[s.Number],inner_height:[s.Number],layout_width:[s.Number],layout_height:[s.Number],match_aspect:[s.Bool,!1],aspect_scale:[s.Number,1]}),this.override({outline_line_color:\"#e5e5e5\",border_fill_color:\"#ffffff\",background_fill_color:\"#ffffff\"}),b.register_with_event(b.UIEvent,this)},t.prototype.initialize=function(){d.prototype.initialize.call(this),this.reset=new f.Signal0(this,\"reset\");for(var t=0,e=v.values(this.extra_x_ranges).concat(this.x_range);t<e.length;t++){var i=e[t],n=i.plots;m.isArray(n)&&(n=n.concat(this),i.setv({plots:n},{silent:!0}))}for(var r=0,o=v.values(this.extra_y_ranges).concat(this.y_range);r<o.length;r++){var s=o[r],n=s.plots;m.isArray(n)&&(n=n.concat(this),s.setv({plots:n},{silent:!0}))}null!=this.min_border&&(null==this.min_border_top&&(this.min_border_top=this.min_border),null==this.min_border_bottom&&(this.min_border_bottom=this.min_border),null==this.min_border_left&&(this.min_border_left=this.min_border),null==this.min_border_right&&(this.min_border_right=this.min_border));for(var a=0,l=[\"above\",\"below\",\"left\",\"right\"];a<l.length;a++)for(var h=l[a],u=this.getv(h),c=0,_=u;c<_.length;c++){var p=_[c];p.add_panel(h)}this._init_title_panel(),this._init_toolbar_panel(),this._plot_canvas=this._init_plot_canvas(),this.plot_canvas.toolbar=this.toolbar,null==this.width&&(this.width=this.plot_width),null==this.height&&(this.height=this.plot_height)},t.prototype._init_plot_canvas=function(){return new p.PlotCanvas({plot:this})},t.prototype._init_title_panel=function(){if(null!=this.title){var t=m.isString(this.title)?new h.Title({text:this.title}):this.title;this.add_layout(t,this.title_location)}},t.prototype._init_toolbar_panel=function(){var e=this,t=a.find(this.renderers,function(t){return t instanceof _.ToolbarPanel&&a.includes(t.tags,e.id)});switch(null!=t&&this.remove_layout(t),this.toolbar_location){case\"left\":case\"right\":case\"above\":case\"below\":if(t=new _.ToolbarPanel({toolbar:this.toolbar,tags:[this.id]}),this.toolbar.toolbar_location=this.toolbar_location,this.toolbar_sticky){var i=this.getv(this.toolbar_location),n=a.find(i,function(t){return t instanceof h.Title});if(null!=n)return t.set_panel(n.panel),void this.add_renderers(t)}this.add_layout(t,this.toolbar_location)}},t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),this.connect(this.properties.toolbar_location.change,function(){return t._init_toolbar_panel()})},Object.defineProperty(t.prototype,\"plot_canvas\",{get:function(){return this._plot_canvas},enumerable:!0,configurable:!0}),t.prototype._doc_attached=function(){this.plot_canvas.attach_document(this.document),d.prototype._doc_attached.call(this)},t.prototype.add_renderers=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];var i=this.renderers;i=i.concat(t),this.renderers=i},t.prototype.add_layout=function(t,e){if(void 0===e&&(e=\"center\"),null!=t.props.plot&&(t.plot=this),\"center\"!=e){var i=this.getv(e);i.push(t),t.add_panel(e)}this.add_renderers(t)},t.prototype.remove_layout=function(e){var t=function(t){a.removeBy(t,function(t){return t==e})};t(this.left),t(this.right),t(this.above),t(this.below),t(this.renderers)},t.prototype.add_glyph=function(t,e,i){void 0===e&&(e=new g.ColumnDataSource),void 0===i&&(i={});var n=o.__assign({},i,{data_source:e,glyph:t}),r=new y.GlyphRenderer(n);return this.add_renderers(r),r},t.prototype.add_tools=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];for(var i=0,n=t;i<n.length;i++){var r=n[i];null!=r.overlay&&this.add_renderers(r.overlay)}this.toolbar.tools=this.toolbar.tools.concat(t)},t.prototype.get_layoutable_children=function(){return[this.plot_canvas]},t.prototype.get_constraints=function(){var t=d.prototype.get_constraints.call(this);return t.push(n.EQ(this._width,[-1,this.plot_canvas._width])),t.push(n.EQ(this._height,[-1,this.plot_canvas._height])),t},t.prototype.get_constrained_variables=function(){var t=o.__assign({},d.prototype.get_constrained_variables.call(this),{on_edge_align_top:this.plot_canvas._top,on_edge_align_bottom:this.plot_canvas._height_minus_bottom,on_edge_align_left:this.plot_canvas._left,on_edge_align_right:this.plot_canvas._width_minus_right,box_cell_align_top:this.plot_canvas._top,box_cell_align_bottom:this.plot_canvas._height_minus_bottom,box_cell_align_left:this.plot_canvas._left,box_cell_align_right:this.plot_canvas._width_minus_right,box_equal_size_top:this.plot_canvas._top,box_equal_size_bottom:this.plot_canvas._height_minus_bottom});return\"fixed\"!=this.sizing_mode&&(t.box_equal_size_left=this.plot_canvas._left,t.box_equal_size_right=this.plot_canvas._width_minus_right),t},Object.defineProperty(t.prototype,\"all_renderers\",{get:function(){for(var t=this.renderers,e=0,i=this.toolbar.tools;e<i.length;e++){var n=i[e];t=t.concat(n.synthetic_renderers)}return t},enumerable:!0,configurable:!0}),t}(l.LayoutDOM);(i.Plot=d).initClass()},function(t,e,i){var l=t(391),n=t(91),r=t(92),C=t(180),T=t(185),o=t(157),s=t(3),h=t(19),c=t(4),u=t(20),_=t(49),a=t(6),p=t(11),d=t(10),f=t(13),A=t(14),v=t(7),m=t(15),g=t(42),y=t(44),b=t(21),E=t(32),x=t(12),w=null,k=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return l.__extends(t,a),Object.defineProperty(t.prototype,\"frame\",{get:function(){return this.model.frame},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas\",{get:function(){return this.model.canvas},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas_overlays\",{get:function(){return this.canvas_view.overlays_el},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"canvas_events\",{get:function(){return this.canvas_view.events_el},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"is_paused\",{get:function(){return null!=this._is_paused&&0!==this._is_paused},enumerable:!0,configurable:!0}),t.prototype.view_options=function(){return{plot_view:this,parent:this}},t.prototype.pause=function(){null==this._is_paused?this._is_paused=1:this._is_paused+=1},t.prototype.unpause=function(t){if(void 0===t&&(t=!1),null==this._is_paused)throw new Error(\"wasn't paused\");this._is_paused-=1,0!=this._is_paused||t||this.request_render()},t.prototype.request_render=function(){this.request_paint()},t.prototype.request_paint=function(){this.is_paused||this.throttled_paint()},t.prototype.reset=function(){this.clear_state(),this.reset_range(),this.reset_selection(),this.model.plot.trigger_event(new s.Reset)},t.prototype.remove=function(){this.ui_event_bus.destroy(),c.remove_views(this.renderer_views),c.remove_views(this.tool_views),this.canvas_view.remove(),a.prototype.remove.call(this)},t.prototype.css_classes=function(){return a.prototype.css_classes.call(this).concat(\"bk-plot-wrapper\")},t.prototype.initialize=function(t){var e=this;this.pause(),a.prototype.initialize.call(this,t),this.force_paint=new h.Signal0(this,\"force_paint\"),this.state_changed=new h.Signal0(this,\"state_changed\"),this.lod_started=!1,this.visuals=new _.Visuals(this.model.plot),this._initial_state_info={selection:{},dimensions:{width:this.model.canvas._width.value,height:this.model.canvas._height.value}},this.visibility_callbacks=[],this.state={history:[],index:-1},this.canvas_view=new this.canvas.default_view({model:this.canvas,parent:this}),this.el.appendChild(this.canvas_view.el),this.canvas_view.render(),\"webgl\"==this.model.plot.output_backend&&this.init_webgl(),this.throttled_paint=g.throttle(function(){return e.force_paint.emit()},15),this.ui_event_bus=new u.UIEvents(this,this.model.toolbar,this.canvas_view.events_el,this.model.plot),this.levels={};for(var i=0,n=v.RenderLevel;i<n.length;i++){var r=n[i];this.levels[r]={}}this.renderer_views={},this.tool_views={},this.build_levels(),this.build_tools(),this.update_dataranges(),this.unpause(!0),A.logger.debug(\"PlotView initialized\")},t.prototype.set_cursor=function(t){void 0===t&&(t=\"default\"),this.canvas_view.el.style.cursor=t},t.prototype.set_toolbar_visibility=function(e){void 0===e&&(e=!0),this.visibility_callbacks.forEach(function(t){return t(e)})},t.prototype.init_webgl=function(){if(null==w){var t=document.createElement(\"canvas\"),e={premultipliedAlpha:!0},i=t.getContext(\"webgl\",e)||t.getContext(\"experimental-webgl\",e);null!=i&&(w={canvas:t,ctx:i})}null!=w?this.gl=w:A.logger.warn(\"WebGL is not supported, falling back to 2D canvas.\")},t.prototype.prepare_webgl=function(t,e){if(null!=this.gl){var i=this.canvas_view.get_canvas_element();this.gl.canvas.width=i.width,this.gl.canvas.height=i.height;var n=this.gl.ctx;n.viewport(0,0,this.gl.canvas.width,this.gl.canvas.height),n.clearColor(0,0,0,0),n.clear(n.COLOR_BUFFER_BIT||n.DEPTH_BUFFER_BIT),n.enable(n.SCISSOR_TEST);var r=e[0],o=e[1],s=e[2],a=e[3],l=this.model.canvas,h=l.xview,u=l.yview,c=h.compute(r),_=u.compute(o+a);n.scissor(t*c,t*_,t*s,t*a),n.enable(n.BLEND),n.blendFuncSeparate(n.SRC_ALPHA,n.ONE_MINUS_SRC_ALPHA,n.ONE_MINUS_DST_ALPHA,n.ONE)}},t.prototype.blit_webgl=function(t){var e=this.canvas_view.ctx;null!=this.gl&&(A.logger.debug(\"drawing with WebGL\"),e.restore(),e.drawImage(this.gl.canvas,0,0),e.save(),e.scale(t,t),e.translate(.5,.5))},t.prototype.update_dataranges=function(){for(var t=this.model.frame,e={},i={},n=!1,r=0,o=E.values(t.x_ranges).concat(E.values(t.y_ranges));r<o.length;r++){var s=o[r];s instanceof C.DataRange1d&&\"log\"==s.scale_hint&&(n=!0)}for(var a in this.renderer_views){var l=this.renderer_views[a];if(l instanceof T.GlyphRendererView){var h=l.glyph.bounds();if(null!=h&&(e[a]=h),n){var u=l.glyph.log_bounds();null!=u&&(i[a]=u)}}}var c,_=!1,p=!1;!1!==this.model.plot.match_aspect&&0!=this.frame._width.value&&0!=this.frame._height.value&&(c=1/this.model.plot.aspect_scale*(this.frame._width.value/this.frame._height.value));for(var d=0,f=E.values(t.x_ranges);d<f.length;d++){var v=f[d];if(v instanceof C.DataRange1d){var m=\"log\"==v.scale_hint?i:e;v.update(m,0,this.model.id,c),v.follow&&(_=!0)}null!=v.bounds&&(p=!0)}for(var g=0,y=E.values(t.y_ranges);g<y.length;g++){var b=y[g];if(b instanceof C.DataRange1d){var m=\"log\"==b.scale_hint?i:e;b.update(m,1,this.model.id,c),b.follow&&(_=!0)}null!=b.bounds&&(p=!0)}if(_&&p){A.logger.warn(\"Follow enabled so bounds are unset.\");for(var x=0,w=E.values(t.x_ranges);x<w.length;x++){var v=w[x];v.bounds=null}for(var k=0,S=E.values(t.y_ranges);k<S.length;k++){var b=S[k];b.bounds=null}}this.range_update_timestamp=Date.now()},t.prototype.map_to_screen=function(t,e,i,n){return void 0===i&&(i=\"default\"),void 0===n&&(n=\"default\"),this.frame.map_to_screen(t,e,i,n)},t.prototype.push_state=function(t,e){var i=this.state,n=i.history,r=i.index,o=null!=n[r]?n[r].info:{},s=l.__assign({},this._initial_state_info,o,e);this.state.history=this.state.history.slice(0,this.state.index+1),this.state.history.push({type:t,info:s}),this.state.index=this.state.history.length-1,this.state_changed.emit()},t.prototype.clear_state=function(){this.state={history:[],index:-1},this.state_changed.emit()},t.prototype.can_undo=function(){return 0<=this.state.index},t.prototype.can_redo=function(){return this.state.index<this.state.history.length-1},t.prototype.undo=function(){this.can_undo()&&(this.state.index-=1,this._do_state_change(this.state.index),this.state_changed.emit())},t.prototype.redo=function(){this.can_redo()&&(this.state.index+=1,this._do_state_change(this.state.index),this.state_changed.emit())},t.prototype._do_state_change=function(t){var e=null!=this.state.history[t]?this.state.history[t].info:this._initial_state_info;null!=e.range&&this.update_range(e.range),null!=e.selection&&this.update_selection(e.selection)},t.prototype.get_selection=function(){for(var t={},e=0,i=this.model.plot.renderers;e<i.length;e++){var n=i[e];if(n instanceof T.GlyphRenderer){var r=n.data_source.selected;t[n.id]=r}}return t},t.prototype.update_selection=function(t){for(var e=0,i=this.model.plot.renderers;e<i.length;e++){var n=i[e];if(n instanceof T.GlyphRenderer){var r=n.data_source;null!=t?null!=t[n.id]&&r.selected.update(t[n.id],!0,!1):r.selection_manager.clear()}}},t.prototype.reset_selection=function(){this.update_selection(null)},t.prototype._update_ranges_together=function(t){for(var e=1,i=0,n=t;i<n.length;i++){var r=n[i],o=r[0],s=r[1];e=Math.min(e,this._get_weight_to_constrain_interval(o,s))}if(e<1)for(var a=0,l=t;a<l.length;a++){var h=l[a],o=h[0],s=h[1];s.start=e*s.start+(1-e)*o.start,s.end=e*s.end+(1-e)*o.end}},t.prototype._update_ranges_individually=function(t,e,i,n){for(var r=!1,o=0,s=t;o<s.length;o++){var a=s[o],l=a[0],h=a[1];if(!i){var u=this._get_weight_to_constrain_interval(l,h);u<1&&(h.start=u*h.start+(1-u)*l.start,h.end=u*h.end+(1-u)*l.end)}if(null!=l.bounds&&\"auto\"!=l.bounds){var c=l.bounds,_=c[0],p=c[1],d=Math.abs(h.end-h.start);l.is_reversed?(null!=_&&_>=h.end&&(r=!0,h.end=_,(e||i)&&(h.start=_+d)),null!=p&&p<=h.start&&(r=!0,h.start=p,(e||i)&&(h.end=p-d))):(null!=_&&_>=h.start&&(r=!0,h.start=_,(e||i)&&(h.end=_+d)),null!=p&&p<=h.end&&(r=!0,h.end=p,(e||i)&&(h.start=p-d)))}}if(!(i&&r&&n))for(var f=0,v=t;f<v.length;f++){var m=v[f],l=m[0],h=m[1];l.have_updated_interactively=!0,l.start==h.start&&l.end==h.end||l.setv(h)}},t.prototype._get_weight_to_constrain_interval=function(t,e){var i=t.min_interval,n=t.max_interval;if(null!=t.bounds&&\"auto\"!=t.bounds){var r=t.bounds,o=r[0],s=r[1];if(null!=o&&null!=s){var a=Math.abs(s-o);n=null!=n?Math.min(n,a):a}}var l=1;if(null!=i||null!=n){var h=Math.abs(t.end-t.start),u=Math.abs(e.end-e.start);0<i&&u<i&&(l=(h-i)/(h-u)),0<n&&n<u&&(l=(n-h)/(u-h)),l=Math.max(0,Math.min(1,l))}return l},t.prototype.update_range=function(t,e,i,n){void 0===e&&(e=!1),void 0===i&&(i=!1),void 0===n&&(n=!0),this.pause();var r=this.frame,o=r.x_ranges,s=r.y_ranges;if(null==t){for(var a in o){var l=o[a];l.reset()}for(var h in s){var l=s[h];l.reset()}this.update_dataranges()}else{var u=[];for(var c in o){var l=o[c];u.push([l,t.xrs[c]])}for(var _ in s){var l=s[_];u.push([l,t.yrs[_]])}i&&this._update_ranges_together(u),this._update_ranges_individually(u,e,i,n)}this.unpause()},t.prototype.reset_range=function(){this.update_range(null)},t.prototype.build_levels=function(){var t=this.model.plot.all_renderers,e=E.keys(this.renderer_views),i=c.build_views(this.renderer_views,t,this.view_options()),n=b.difference(e,t.map(function(t){return t.id}));for(var r in this.levels)for(var o=0,s=n;o<s.length;o++){var a=s[o];delete this.levels[r][a]}for(var l=0,h=i;l<h.length;l++){var u=h[l];this.levels[u.model.level][u.model.id]=u}},t.prototype.get_renderer_views=function(){var e=this;return this.model.plot.renderers.map(function(t){return e.levels[t.level][t.id]})},t.prototype.build_tools=function(){var e=this,t=this.model.plot.toolbar.tools,i=c.build_views(this.tool_views,t,this.view_options());i.map(function(t){return e.ui_event_bus.register_tool(t)})},t.prototype.connect_signals=function(){var t=this;a.prototype.connect_signals.call(this),this.connect(this.force_paint,function(){return t.repaint()});var e=this.model.frame,i=e.x_ranges,n=e.y_ranges;for(var r in i){var o=i[r];this.connect(o.change,function(){return t.request_render()})}for(var s in n){var o=n[s];this.connect(o.change,function(){return t.request_render()})}this.connect(this.model.plot.properties.renderers.change,function(){return t.build_levels()}),this.connect(this.model.plot.toolbar.properties.tools.change,function(){t.build_levels(),t.build_tools()}),this.connect(this.model.plot.change,function(){return t.request_render()}),this.connect(this.model.plot.reset,function(){return t.reset()})},t.prototype.set_initial_range=function(){var t=!0,e=this.frame,i=e.x_ranges,n=e.y_ranges,r={},o={};for(var s in i){var a=i[s],l=a.start,h=a.end;if(null==l||null==h||y.isStrictNaN(l+h)){t=!1;break}r[s]={start:l,end:h}}if(t)for(var u in n){var c=n[u],l=c.start,h=c.end;if(null==l||null==h||y.isStrictNaN(l+h)){t=!1;break}o[u]={start:l,end:h}}t?(this._initial_state_info.range={xrs:r,yrs:o},A.logger.debug(\"initial ranges set\")):A.logger.warn(\"could not set initial ranges\")},t.prototype.update_constraints=function(){for(var t in this.solver.suggest_value(this.frame._width,this.canvas._width.value),this.solver.suggest_value(this.frame._height,this.canvas._height.value),this.renderer_views){var e=this.renderer_views[t];x.isSizeableView(e)&&null!=e.model.panel&&x.update_panel_constraints(e)}this.solver.update_variables()},t.prototype._layout=function(t){void 0===t&&(t=!1),this.render(),t&&(this.model.plot.setv({inner_width:Math.round(this.frame._width.value),inner_height:Math.round(this.frame._height.value),layout_width:Math.round(this.canvas._width.value),layout_height:Math.round(this.canvas._height.value)},{no_change:!0}),this.paint())},t.prototype.has_finished=function(){if(!a.prototype.has_finished.call(this))return!1;for(var t in this.levels){var e=this.levels[t];for(var i in e){var n=e[i];if(!n.has_finished())return!1}}return!0},t.prototype.render=function(){var t=this.model._width.value,e=this.model._height.value;this.canvas_view.set_dims([t,e]),this.update_constraints(),!1!==this.model.plot.match_aspect&&0!=this.frame._width.value&&0!=this.frame._height.value&&this.update_dataranges(),this.el.style.position=\"absolute\",this.el.style.left=this.model._dom_left.value+\"px\",this.el.style.top=this.model._dom_top.value+\"px\",this.el.style.width=this.model._width.value+\"px\",this.el.style.height=this.model._height.value+\"px\"},t.prototype._needs_layout=function(){for(var t in this.renderer_views){var e=this.renderer_views[t];if(x.isSizeableView(e)&&null!=e.model.panel&&x._view_sizes.get(e)!=e.get_size())return!0}return!1},t.prototype.repaint=function(){this._needs_layout()?this.parent.partial_layout():this.paint()},t.prototype.paint=function(){var t=this;if(!this.is_paused){A.logger.trace(\"PlotCanvas.render() for \"+this.model.id),this.canvas_view.prepare_canvas();var e=this.model.document;if(null!=e){var i=e.interactive_duration(),n=this.model.plot;0<=i&&i<n.lod_interval?setTimeout(function(){e.interactive_duration()>n.lod_timeout&&e.interactive_stop(n),t.request_render()},n.lod_timeout):e.interactive_stop(n)}for(var r in this.renderer_views){var o=this.renderer_views[r];if(null==this.range_update_timestamp||o instanceof T.GlyphRendererView&&o.set_data_timestamp>this.range_update_timestamp){this.update_dataranges();break}}this.model.frame.update_scales();var s=this.canvas_view.ctx,a=this.canvas.pixel_ratio;s.save(),s.scale(a,a),s.translate(.5,.5);var l=[this.frame._left.value,this.frame._top.value,this.frame._width.value,this.frame._height.value];if(this._map_hook(s,l),this._paint_empty(s,l),this.prepare_webgl(a,l),s.save(),this.visuals.outline_line.doit){this.visuals.outline_line.set_value(s);var h=l[0],u=l[1],c=l[2],_=l[3];h+c==this.canvas._width.value&&(c-=1),u+_==this.canvas._height.value&&(_-=1),s.strokeRect(h,u,c,_)}s.restore(),this._paint_levels(s,[\"image\",\"underlay\",\"glyph\"],l,!0),this.blit_webgl(a),this._paint_levels(s,[\"annotation\"],l,!0),this._paint_levels(s,[\"overlay\"],l,!1),null==this._initial_state_info.range&&this.set_initial_range(),s.restore(),this._has_finished||(this._has_finished=!0,this.notify_finished())}},t.prototype._paint_levels=function(t,e,i,n){t.save(),n&&(t.beginPath(),t.rect.apply(t,i),t.clip());for(var r={},o=0;o<this.model.plot.renderers.length;o++){var s=this.model.plot.renderers[o];r[s.id]=o}for(var a=function(t){return r[t.model.id]},l=0,h=e;l<h.length;l++)for(var u=h[l],c=b.sortBy(E.values(this.levels[u]),a),_=0,p=c;_<p.length;_++){var d=p[_];!n&&d.needs_clip&&(t.save(),t.beginPath(),t.rect.apply(t,i),t.clip()),d.render(),!n&&d.needs_clip&&t.restore()}t.restore()},t.prototype._map_hook=function(t,e){},t.prototype._paint_empty=function(t,e){var i=[0,0,this.canvas_view.model._width.value,this.canvas_view.model._height.value],n=i[0],r=i[1],o=i[2],s=i[3],a=e[0],l=e[1],h=e[2],u=e[3];t.clearRect(n,r,o,s),this.visuals.border_fill.doit&&(this.visuals.border_fill.set_value(t),t.fillRect(n,r,o,s),t.clearRect(a,l,h,u)),this.visuals.background_fill.doit&&(this.visuals.background_fill.set_value(t),t.fillRect(a,l,h,u))},t.prototype.save=function(t){switch(this.model.plot.output_backend){case\"canvas\":case\"webgl\":var e=this.canvas_view.get_canvas_element();if(null!=e.msToBlob){var i=e.msToBlob();window.navigator.msSaveBlob(i,t)}else{var n=document.createElement(\"a\");n.href=e.toDataURL(\"image/png\"),n.download=t+\".png\",n.target=\"_blank\",n.dispatchEvent(new MouseEvent(\"click\"))}break;case\"svg\":var r=this.canvas_view._ctx,o=r.getSerializedSvg(!0),s=new Blob([o],{type:\"text/plain\"}),a=document.createElement(\"a\");a.download=t+\".svg\",a.innerHTML=\"Download svg\",a.href=window.URL.createObjectURL(s),a.onclick=function(t){return document.body.removeChild(t.target)},a.style.display=\"none\",document.body.appendChild(a),a.click()}},t}(a.DOMView);i.PlotCanvasView=k;var S=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"AbovePanel\"},e}(p.LayoutCanvas);(i.AbovePanel=S).initClass();var M=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"BelowPanel\"},e}(p.LayoutCanvas);(i.BelowPanel=M).initClass();var O=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"LeftPanel\"},e}(p.LayoutCanvas);(i.LeftPanel=O).initClass();var z=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return l.__extends(e,t),e.initClass=function(){this.prototype.type=\"RightPanel\"},e}(p.LayoutCanvas);(i.RightPanel=z).initClass();var P=function(e){function t(t){return e.call(this,t)||this}return l.__extends(t,e),t.initClass=function(){this.prototype.type=\"PlotCanvas\",this.prototype.default_view=k,this.internal({plot:[m.Instance],toolbar:[m.Instance],canvas:[m.Instance],frame:[m.Instance]}),this.override({sizing_mode:\"stretch_both\"})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.canvas=new n.Canvas({map:null!=this.use_map&&this.use_map,use_hidpi:this.plot.hidpi,output_backend:this.plot.output_backend}),this.frame=new r.CartesianFrame({x_range:this.plot.x_range,extra_x_ranges:this.plot.extra_x_ranges,x_scale:this.plot.x_scale,y_range:this.plot.y_range,extra_y_ranges:this.plot.extra_y_ranges,y_scale:this.plot.y_scale}),this.above_panel=new S,this.below_panel=new M,this.left_panel=new O,this.right_panel=new z,A.logger.debug(\"PlotCanvas initialized\")},t.prototype._doc_attached=function(){this.canvas.attach_document(this.document),this.frame.attach_document(this.document),this.above_panel.attach_document(this.document),this.below_panel.attach_document(this.document),this.left_panel.attach_document(this.document),this.right_panel.attach_document(this.document),e.prototype._doc_attached.call(this),A.logger.debug(\"PlotCanvas attached to document\")},t.prototype.get_layoutable_children=function(){var r=[this.above_panel,this.below_panel,this.left_panel,this.right_panel,this.canvas,this.frame],t=function(t){for(var e=0,i=t;e<i.length;e++){var n=i[e];x.isSizeable(n)&&null!=n.panel&&r.push(n.panel)}};return t(this.plot.above),t(this.plot.below),t(this.plot.left),t(this.plot.right),r},t.prototype.get_constraints=function(){return e.prototype.get_constraints.call(this).concat(this._get_constant_constraints(),this._get_side_constraints())},t.prototype._get_constant_constraints=function(){return[f.EQ(this.canvas._left,0),f.EQ(this.canvas._top,0),f.GE(this.above_panel._top,[-1,this.canvas._top]),f.EQ(this.above_panel._bottom,[-1,this.frame._top]),f.EQ(this.above_panel._left,[-1,this.left_panel._right]),f.EQ(this.above_panel._right,[-1,this.right_panel._left]),f.EQ(this.below_panel._top,[-1,this.frame._bottom]),f.LE(this.below_panel._bottom,[-1,this.canvas._bottom]),f.EQ(this.below_panel._left,[-1,this.left_panel._right]),f.EQ(this.below_panel._right,[-1,this.right_panel._left]),f.EQ(this.left_panel._top,[-1,this.above_panel._bottom]),f.EQ(this.left_panel._bottom,[-1,this.below_panel._top]),f.GE(this.left_panel._left,[-1,this.canvas._left]),f.EQ(this.left_panel._right,[-1,this.frame._left]),f.EQ(this.right_panel._top,[-1,this.above_panel._bottom]),f.EQ(this.right_panel._bottom,[-1,this.below_panel._top]),f.EQ(this.right_panel._left,[-1,this.frame._right]),f.LE(this.right_panel._right,[-1,this.canvas._right]),f.EQ(this._top,[-1,this.above_panel._bottom]),f.EQ(this._left,[-1,this.left_panel._right]),f.EQ(this._height,[-1,this._bottom],[-1,this.canvas._bottom],this.below_panel._top),f.EQ(this._width,[-1,this._right],[-1,this.canvas._right],this.right_panel._left),f.GE(this._top,-this.plot.min_border_top),f.GE(this._left,-this.plot.min_border_left),f.GE(this._height,[-1,this._bottom],-this.plot.min_border_bottom),f.GE(this._width,[-1,this._right],-this.plot.min_border_right)]},t.prototype._get_side_constraints=function(){var t=function(t){return t.map(function(t){return t.panel})},e=d.vstack(this.above_panel,t(this.plot.above)),i=d.vstack(this.below_panel,b.reversed(t(this.plot.below))),n=d.hstack(this.left_panel,t(this.plot.left)),r=d.hstack(this.right_panel,b.reversed(t(this.plot.right)));return b.concat([e,i,n,r])},t}(o.LayoutDOM);(i.PlotCanvas=P).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DataRange\",this.define({names:[o.Array,[]],renderers:[o.Array,[]]})},t}(r.Range);(i.DataRange=s).initClass()},function(t,e,i){var n=t(391),r=t(179),h=t(185),_=t(14),o=t(15),u=t(24),c=t(21),s=function(i){function t(t){var e=i.call(this,t)||this;return e._plot_bounds={},e.have_updated_interactively=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DataRange1d\",this.define({start:[o.Number],end:[o.Number],range_padding:[o.Number,.1],range_padding_units:[o.PaddingUnits,\"percent\"],flipped:[o.Bool,!1],follow:[o.StartEnd],follow_interval:[o.Number],default_span:[o.Number,2]}),this.internal({scale_hint:[o.String,\"auto\"]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),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},Object.defineProperty(t.prototype,\"min\",{get:function(){return Math.min(this.start,this.end)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return Math.max(this.start,this.end)},enumerable:!0,configurable:!0}),t.prototype.computed_renderers=function(){var e=this.names,t=this.renderers;if(0==t.length)for(var i=0,n=this.plots;i<n.length;i++){var r=n[i],o=r.renderers.filter(function(t){return t instanceof h.GlyphRenderer});t=t.concat(o)}0<e.length&&(t=t.filter(function(t){return c.includes(e,t.name)})),_.logger.debug(\"computed \"+t.length+\" renderers for DataRange1d \"+this.id);for(var s=0,a=t;s<a.length;s++){var l=a[s];_.logger.trace(\" - \"+l.type+\" \"+l.id)}return t},t.prototype._compute_plot_bounds=function(t,e){for(var i=u.empty(),n=0,r=t;n<r.length;n++){var o=r[n];null!=e[o.id]&&(i=u.union(i,e[o.id]))}return i},t.prototype.adjust_bounds_for_aspect=function(t,e){var i=u.empty(),n=t.maxX-t.minX;n<=0&&(n=1);var r=t.maxY-t.minY;r<=0&&(r=1);var o=.5*(t.maxX+t.minX),s=.5*(t.maxY+t.minY);return n<e*r?n=e*r:r=n/e,i.maxX=o+.5*n,i.minX=o-.5*n,i.maxY=s+.5*r,i.minY=s-.5*r,i},t.prototype._compute_min_max=function(t,e){var i,n,r,o,s=u.empty();for(var a in t){var l=t[a];s=u.union(s,l)}return 0==e?(i=[s.minX,s.maxX],r=i[0],o=i[1]):(n=[s.minY,s.maxY],r=n[0],o=n[1]),[r,o]},t.prototype._compute_range=function(t,e){var i,n,r,o=this.range_padding;if(\"log\"==this.scale_hint){(isNaN(t)||!isFinite(t)||t<=0)&&(t=isNaN(e)||!isFinite(e)||e<=0?.1:e/100,_.logger.warn(\"could not determine minimum data value for log axis, DataRange1d using value \"+t)),(isNaN(e)||!isFinite(e)||e<=0)&&(e=isNaN(t)||!isFinite(t)||t<=0?10:100*t,_.logger.warn(\"could not determine maximum data value for log axis, DataRange1d using value \"+e));var s=void 0,a=void 0;if(e==t)a=this.default_span+.001,s=Math.log(t)/Math.log(10);else{var l=void 0,h=void 0;\"percent\"==this.range_padding_units?(l=Math.log(t)/Math.log(10),h=Math.log(e)/Math.log(10),a=(h-l)*(1+o)):(l=Math.log(t-o)/Math.log(10),h=Math.log(e+o)/Math.log(10),a=h-l),s=(l+h)/2}n=Math.pow(10,s-a/2),r=Math.pow(10,s+a/2)}else{var a=void 0;a=e==t?this.default_span:\"percent\"==this.range_padding_units?(e-t)*(1+o):e-t+2*o;var s=(e+t)/2;n=s-a/2,r=s+a/2}var u=1;this.flipped&&(n=(i=[r,n])[0],r=i[1],u=-1);var c=this.follow_interval;return null!=c&&Math.abs(n-r)>c&&(\"start\"==this.follow?r=n+u*c:\"end\"==this.follow&&(n=r-u*c)),[n,r]},t.prototype.update=function(t,e,i,n){if(!this.have_updated_interactively){var r=this.computed_renderers(),o=this._compute_plot_bounds(r,t);null!=n&&(o=this.adjust_bounds_for_aspect(o,n)),this._plot_bounds[i]=o;var s=this._compute_min_max(this._plot_bounds,e),a=s[0],l=s[1],h=this._compute_range(a,l),u=h[0],c=h[1];null!=this._initial_start&&(\"log\"==this.scale_hint?0<this._initial_start&&(u=this._initial_start):u=this._initial_start),null!=this._initial_end&&(\"log\"==this.scale_hint?0<this._initial_end&&(c=this._initial_end):c=this._initial_end);var _=[this.start,this.end],p=_[0],d=_[1];if(u!=p||c!=d){var f={};u!=p&&(f.start=u),c!=d&&(f.end=c),this.setv(f)}\"auto\"==this.bounds&&this.setv({bounds:[u,c]},{silent:!0}),this.change.emit()}},t.prototype.reset=function(){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()},t}(r.DataRange);(i.DataRange1d=s).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=t(22),b=t(21),h=t(44);function m(t,e,i){void 0===i&&(i=0);for(var n={},r=0;r<t.length;r++){var o=t[r];if(o in n)throw new Error(\"duplicate factor or subfactor: \"+o);n[o]={value:.5+r*(1+e)+i}}return[n,(t.length-1)*e]}function x(t,s,a,e){void 0===e&&(e=0);for(var l={},h={},i=[],n=0,r=t;n<r.length;n++){var o=r[n],u=o[0],c=o[1];u in h||(h[u]=[],i.push(u)),h[u].push(c)}for(var _=e,p=0,d=function(t){var e=h[t].length,i=m(h[t],a,_),n=i[0],r=i[1];p+=r;var o=b.sum(h[t].map(function(t){return n[t].value}));l[t]={value:o/e,mapping:n},_+=e+s+r},f=0,v=i;f<v.length;f++){var u=v[f];d(u)}return[l,i,(i.length-1)*s+p]}function u(t,u,c,_,e){void 0===e&&(e=0);for(var p={},d={},i=[],n=0,r=t;n<r.length;n++){var o=r[n],s=o[0],a=o[1],l=o[2];s in d||(d[s]=[],i.push(s)),d[s].push([a,l])}for(var f=[],v=e,m=0,h=function(t){for(var e=d[t].length,i=x(d[t],c,_,v),n=i[0],r=i[1],o=i[2],s=0,a=r;s<a.length;s++){var l=a[s];f.push([t,l])}m+=o;var h=b.sum(d[t].map(function(t){var e=t[0];return n[e].value}));p[t]={value:h/e,mapping:n},v+=e+u+o},g=0,y=i;g<y.length;g++){var s=y[g];h(s)}return[p,i,f,(i.length-1)*u+m]}i.map_one_level=m,i.map_two_levels=x,i.map_three_levels=u;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"FactorRange\",this.define({factors:[o.Array,[]],factor_padding:[o.Number,0],subgroup_padding:[o.Number,.8],group_padding:[o.Number,1.4],range_padding:[o.Number,0],range_padding_units:[o.PaddingUnits,\"percent\"],start:[o.Number],end:[o.Number]}),this.internal({levels:[o.Number],mids:[o.Array],tops:[o.Array],tops_groups:[o.Array]})},Object.defineProperty(t.prototype,\"min\",{get:function(){return this.start},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return this.end},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init(!0)},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.factors.change,function(){return t.reset()}),this.connect(this.properties.factor_padding.change,function(){return t.reset()}),this.connect(this.properties.group_padding.change,function(){return t.reset()}),this.connect(this.properties.subgroup_padding.change,function(){return t.reset()}),this.connect(this.properties.range_padding.change,function(){return t.reset()}),this.connect(this.properties.range_padding_units.change,function(){return t.reset()})},t.prototype.reset=function(){this._init(!1),this.change.emit()},t.prototype._lookup=function(t){if(1==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])?e[t[0]].value:NaN}if(2==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])&&e[t[0]].mapping.hasOwnProperty(t[1])?e[t[0]].mapping[t[1]].value:NaN}if(3==t.length){var e=this._mapping;return e.hasOwnProperty(t[0])&&e[t[0]].mapping.hasOwnProperty(t[1])&&e[t[0]].mapping[t[1]].mapping.hasOwnProperty(t[2])?e[t[0]].mapping[t[1]].mapping[t[2]].value:NaN}throw new Error(\"unreachable code\")},t.prototype.synthetic=function(t){if(h.isNumber(t))return t;if(h.isString(t))return this._lookup([t]);var e=0,i=t[t.length-1];return h.isNumber(i)&&(e=i,t=t.slice(0,-1)),this._lookup(t)+e},t.prototype.v_synthetic=function(t){var e=this;return s.map(t,function(t){return e.synthetic(t)})},t.prototype._init=function(t){var e,i,n,r,o;if(b.all(this.factors,h.isString))r=1,e=m(this.factors,this.factor_padding),this._mapping=e[0],o=e[1];else if(b.all(this.factors,function(t){return h.isArray(t)&&2==t.length&&h.isString(t[0])&&h.isString(t[1])}))r=2,i=x(this.factors,this.group_padding,this.factor_padding),this._mapping=i[0],this.tops=i[1],o=i[2];else{if(!b.all(this.factors,function(t){return h.isArray(t)&&3==t.length&&h.isString(t[0])&&h.isString(t[1])&&h.isString(t[2])}))throw new Error(\"???\");r=3,n=u(this.factors,this.group_padding,this.subgroup_padding,this.factor_padding),this._mapping=n[0],this.tops=n[1],this.mids=n[2],o=n[3]}var s=0,a=this.factors.length+o;if(\"percent\"==this.range_padding_units){var l=(a-s)*this.range_padding/2;s-=l,a+=l}else s-=this.range_padding,a+=this.range_padding;this.setv({start:s,end:a,levels:r},{silent:t}),\"auto\"==this.bounds&&this.setv({bounds:[s,a]},{silent:!0})},t}(r.Range);(i.FactorRange=a).initClass()},function(t,e,i){var n=t(179);i.DataRange=n.DataRange;var r=t(180);i.DataRange1d=r.DataRange1d;var o=t(181);i.FactorRange=o.FactorRange;var s=t(183);i.Range=s.Range;var a=t(184);i.Range1d=a.Range1d},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=function(i){function t(t){var e=i.call(this,t)||this;return e.have_updated_interactively=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Range\",this.define({callback:[o.Any],bounds:[o.Any],min_interval:[o.Any],max_interval:[o.Any]}),this.internal({plots:[o.Array,[]]})},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._emit_callback()})},t.prototype.reset=function(){this.change.emit()},t.prototype._emit_callback=function(){null!=this.callback&&(s.isFunction(this.callback)?this.callback(this):this.callback.execute(this,{}))},Object.defineProperty(t.prototype,\"is_reversed\",{get:function(){return this.start>this.end},enumerable:!0,configurable:!0}),t}(r.Model);(i.Range=a).initClass()},function(t,e,i){var n=t(391),r=t(183),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Range1d\",this.define({start:[o.Number,0],end:[o.Number,1],reset_start:[o.Number],reset_end:[o.Number]})},t.prototype._set_auto_bounds=function(){if(\"auto\"==this.bounds){var 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})}},t.prototype.initialize=function(){e.prototype.initialize.call(this),null==this.reset_start&&(this.reset_start=this.start),null==this.reset_end&&(this.reset_end=this.end),this._set_auto_bounds()},Object.defineProperty(t.prototype,\"min\",{get:function(){return Math.min(this.start,this.end)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max\",{get:function(){return Math.max(this.start,this.end)},enumerable:!0,configurable:!0}),t.prototype.reset=function(){this._set_auto_bounds(),this.start!=this.reset_start||this.end!=this.reset_end?this.setv({start:this.reset_start,end:this.reset_end}):this.change.emit()},t}(r.Range);(i.Range1d=s).initClass()},function(t,e,i){var n=t(391),r=t(189),P=t(130),o=t(199),j=t(14),s=t(15),a=t(22),N=t(21),_=t(32),l=t(181),p={fill:{},line:{}},d={fill:{fill_alpha:.3,fill_color:\"grey\"},line:{line_alpha:.3,line_color:\"grey\"}},f={fill:{fill_alpha:.2},line:{}},h=function(c){function t(){return null!==c&&c.apply(this,arguments)||this}return n.__extends(t,c),t.prototype.initialize=function(t){c.prototype.initialize.call(this,t);var i=this.model.glyph,n=N.includes(i.mixins,\"fill\"),r=N.includes(i.mixins,\"line\"),o=_.clone(i.attributes);function e(t){var e=_.clone(o);return n&&_.extend(e,t.fill),r&&_.extend(e,t.line),new i.constructor(e)}delete o.id,this.glyph=this.build_glyph_view(i);var s=this.model.selection_glyph;null==s?s=e({fill:{},line:{}}):\"auto\"===s&&(s=e(p)),this.selection_glyph=this.build_glyph_view(s);var a=this.model.nonselection_glyph;null==a?a=e({fill:{},line:{}}):\"auto\"===a&&(a=e(f)),this.nonselection_glyph=this.build_glyph_view(a);var l=this.model.hover_glyph;null!=l&&(this.hover_glyph=this.build_glyph_view(l));var h=this.model.muted_glyph;null!=h&&(this.muted_glyph=this.build_glyph_view(h));var u=e(d);this.decimated_glyph=this.build_glyph_view(u),this.xscale=this.plot_view.frame.xscales[this.model.x_range_name],this.yscale=this.plot_view.frame.yscales[this.model.y_range_name],this.set_data(!1)},t.prototype.build_glyph_view=function(t){return new t.default_view({model:t,renderer:this,plot_view:this.plot_view,parent:this})},t.prototype.connect_signals=function(){var e=this;c.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.request_render()}),this.connect(this.model.glyph.change,function(){return e.set_data()}),this.connect(this.model.data_source.change,function(){return e.set_data()}),this.connect(this.model.data_source.streaming,function(){return e.set_data()}),this.connect(this.model.data_source.patching,function(t){return e.set_data(!0,t)}),this.connect(this.model.data_source.selected.change,function(){return e.request_render()}),this.connect(this.model.data_source._select,function(){return e.request_render()}),null!=this.hover_glyph&&this.connect(this.model.data_source.inspect,function(){return e.request_render()}),this.connect(this.model.properties.view.change,function(){return e.set_data()}),this.connect(this.model.view.change,function(){return e.set_data()});var t=this.plot_model.frame,i=t.x_ranges,n=t.y_ranges;for(var r in i){var o=i[r];o instanceof l.FactorRange&&this.connect(o.change,function(){return e.set_data()})}for(var s in n){var o=n[s];o instanceof l.FactorRange&&this.connect(o.change,function(){return e.set_data()})}this.connect(this.model.glyph.transformchange,function(){return e.set_data()})},t.prototype.have_selection_glyphs=function(){return null!=this.selection_glyph&&null!=this.nonselection_glyph},t.prototype.set_data=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=null);var i=Date.now(),n=this.model.data_source;this.all_indices=this.model.view.indices,this.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0}),this.glyph.set_data(n,this.all_indices,e),this.glyph.set_visuals(n),this.decimated_glyph.set_visuals(n),this.have_selection_glyphs()&&(this.selection_glyph.set_visuals(n),this.nonselection_glyph.set_visuals(n)),null!=this.hover_glyph&&this.hover_glyph.set_visuals(n),null!=this.muted_glyph&&this.muted_glyph.set_visuals(n);var r=this.plot_model.plot.lod_factor;this.decimated=[];for(var o=0,s=Math.floor(this.all_indices.length/r);o<s;o++)this.decimated.push(o*r);var a=Date.now()-i;j.logger.debug(this.glyph.model.type+\" GlyphRenderer (\"+this.model.id+\"): set_data finished in \"+a+\"ms\"),this.set_data_timestamp=Date.now(),t&&this.request_render()},t.prototype.render=function(){var r=this;if(this.model.visible){var t=Date.now(),e=this.glyph.glglyph;this.glyph.map_data();var i=Date.now()-t,n=Date.now(),o=this.glyph.mask_data(this.all_indices);o.length===this.all_indices.length&&(o=N.range(0,this.all_indices.length));var s=Date.now()-n,a=this.plot_view.canvas_view.ctx;a.save();var l,h=this.model.data_source.selected;l=!h||h.is_empty()?[]:this.glyph instanceof P.LineView&&h.selected_glyph===this.glyph.model?this.model.view.convert_indices_from_subset(o):h.indices;var u,c=this.model.data_source.inspected;u=c&&0!==c.length?c[\"0d\"].glyph?this.model.view.convert_indices_from_subset(o):0<c[\"1d\"].indices.length?c[\"1d\"].indices:function(){for(var t=[],e=0,i=Object.keys(c[\"2d\"].indices);e<i.length;e++){var n=i[e];t.push(parseInt(n))}return t}():[];var _,p,d,f=function(){for(var t=[],e=0,i=o;e<i.length;e++){var n=i[e];N.includes(u,r.all_indices[n])&&t.push(n)}return t}(),v=this.plot_model.plot.lod_threshold;null!=this.model.document&&0<this.model.document.interactive_duration()&&!e&&null!=v&&this.all_indices.length>v?(o=this.decimated,_=this.decimated_glyph,p=this.decimated_glyph):(_=this.model.muted&&null!=this.muted_glyph?this.muted_glyph:this.glyph,p=this.nonselection_glyph),d=this.selection_glyph,null!=this.hover_glyph&&f.length&&(o=N.difference(o,f));var m,g=null;if(l.length&&this.have_selection_glyphs()){for(var y=Date.now(),b={},x=0,w=l;x<w.length;x++){var k=w[x];b[k]=!0}var S=new Array,C=new Array;if(this.glyph instanceof P.LineView)for(var T=0,A=this.all_indices;T<A.length;T++){var k=A[T];null!=b[k]?S.push(k):C.push(k)}else for(var E=0,M=o;E<M.length;E++){var k=M[E];null!=b[this.all_indices[k]]?S.push(k):C.push(k)}g=Date.now()-y,m=Date.now(),p.render(a,C,this.glyph),d.render(a,S,this.glyph),null!=this.hover_glyph&&(this.glyph instanceof P.LineView?this.hover_glyph.render(a,this.model.view.convert_indices_from_subset(f),this.glyph):this.hover_glyph.render(a,f,this.glyph))}else m=Date.now(),this.glyph instanceof P.LineView?this.hover_glyph&&f.length?this.hover_glyph.render(a,this.model.view.convert_indices_from_subset(f),this.glyph):_.render(a,this.all_indices,this.glyph):(_.render(a,o,this.glyph),this.hover_glyph&&f.length&&this.hover_glyph.render(a,f,this.glyph));var O=Date.now()-m;this.last_dtrender=O;var z=Date.now()-t;return j.logger.debug(this.glyph.model.type+\" GlyphRenderer (\"+this.model.id+\"): render finished in \"+z+\"ms\"),j.logger.trace(\" - map_data finished in       : \"+i+\"ms\"),j.logger.trace(\" - mask_data finished in      : \"+s+\"ms\"),null!=g&&j.logger.trace(\" - selection mask finished in : \"+g+\"ms\"),j.logger.trace(\" - glyph renders finished in  : \"+O+\"ms\"),a.restore()}},t.prototype.draw_legend=function(t,e,i,n,r,o,s,a){null==a&&(a=this.model.get_reference_point(o,s)),this.glyph.draw_legend_for_index(t,{x0:e,x1:i,y0:n,y1:r},a)},t.prototype.hit_test=function(t){if(!this.model.visible)return null;var e=this.glyph.hit_test(t);return null==e?null:this.model.view.convert_selection_from_subset(e)},t}(r.RendererView);i.GlyphRendererView=h;var u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GlyphRenderer\",this.prototype.default_view=h,this.define({x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],data_source:[s.Instance],view:[s.Instance,function(){return new o.CDSView}],glyph:[s.Instance],hover_glyph:[s.Instance],nonselection_glyph:[s.Any,\"auto\"],selection_glyph:[s.Any,\"auto\"],muted_glyph:[s.Instance],muted:[s.Bool,!1]}),this.override({level:\"glyph\"})},t.prototype.initialize=function(){e.prototype.initialize.call(this),null==this.view.source&&(this.view.source=this.data_source,this.view.compute_indices())},t.prototype.get_reference_point=function(t,e){var i=0;if(null!=t){var n=this.data_source.get_column(t);if(null!=n){var r=a.indexOf(n,e);-1!=r&&(i=r)}}return i},t.prototype.get_selection_manager=function(){return this.data_source.selection_manager},t}(r.Renderer);(i.GlyphRenderer=u).initClass()},function(t,e,i){var n=t(391),r=t(189),o=t(147),s=t(15),l=t(4),a=function(a){function t(){return null!==a&&a.apply(this,arguments)||this}return n.__extends(t,a),t.prototype.initialize=function(t){var e;a.prototype.initialize.call(this,t),this.xscale=this.plot_view.frame.xscales.default,this.yscale=this.plot_view.frame.yscales.default,this._renderer_views={},e=l.build_views(this._renderer_views,[this.model.node_renderer,this.model.edge_renderer],this.plot_view.view_options()),this.node_view=e[0],this.edge_view=e[1],this.set_data()},t.prototype.connect_signals=function(){var t=this;a.prototype.connect_signals.call(this),this.connect(this.model.layout_provider.change,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source._select,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source.inspect,function(){return t.set_data()}),this.connect(this.model.node_renderer.data_source.change,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source._select,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source.inspect,function(){return t.set_data()}),this.connect(this.model.edge_renderer.data_source.change,function(){return t.set_data()});var e=this.plot_model.frame,i=e.x_ranges,n=e.y_ranges;for(var r in i){var o=i[r];this.connect(o.change,function(){return t.set_data()})}for(var s in n){var o=n[s];this.connect(o.change,function(){return t.set_data()})}},t.prototype.set_data=function(t){var e,i;void 0===t&&(t=!0),this.node_view.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0}),this.edge_view.glyph.model.setv({x_range_name:this.model.x_range_name,y_range_name:this.model.y_range_name},{silent:!0});var n=this.node_view.glyph;e=this.model.layout_provider.get_node_coordinates(this.model.node_renderer.data_source),n._x=e[0],n._y=e[1];var r=this.edge_view.glyph;i=this.model.layout_provider.get_edge_coordinates(this.model.edge_renderer.data_source),r._xs=i[0],r._ys=i[1],n.index_data(),r.index_data(),t&&this.request_render()},t.prototype.render=function(){this.edge_view.render(),this.node_view.render()},t}(r.RendererView);i.GraphRendererView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GraphRenderer\",this.prototype.default_view=a,this.define({x_range_name:[s.String,\"default\"],y_range_name:[s.String,\"default\"],layout_provider:[s.Instance],node_renderer:[s.Instance],edge_renderer:[s.Instance],selection_policy:[s.Instance,function(){return new o.NodesOnly}],inspection_policy:[s.Instance,function(){return new o.NodesOnly}]}),this.override({level:\"glyph\"})},t.prototype.get_selection_manager=function(){return this.node_renderer.data_source.selection_manager},t}(r.Renderer);(i.GraphRenderer=h).initClass()},function(t,e,i){var n=t(391),r=t(189),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.RendererView);i.GuideRendererView=s;var a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GuideRenderer\",this.define({plot:[o.Instance]}),this.override({level:\"overlay\"})},t}(r.Renderer);(i.GuideRenderer=a).initClass()},function(t,e,i){var n=t(185);i.GlyphRenderer=n.GlyphRenderer;var r=t(186);i.GraphRenderer=r.GraphRenderer;var o=t(187);i.GuideRenderer=o.GuideRenderer;var s=t(189);i.Renderer=s.Renderer},function(t,e,i){var n=t(391),r=t(6),o=t(49),s=t(15),a=t(59),l=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view=t.plot_view,this.visuals=new o.Visuals(this.model),this._has_finished=!0},Object.defineProperty(t.prototype,\"plot_model\",{get:function(){return this.plot_view.model},enumerable:!0,configurable:!0}),t.prototype.request_render=function(){this.plot_view.request_render()},t.prototype.map_to_screen=function(t,e){return this.plot_view.map_to_screen(t,e,this.model.x_range_name,this.model.y_range_name)},Object.defineProperty(t.prototype,\"needs_clip\",{get:function(){return!1},enumerable:!0,configurable:!0}),t}(r.DOMView);i.RendererView=l;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Renderer\",this.define({level:[s.RenderLevel],visible:[s.Bool,!0]})},t}(a.Model);(i.Renderer=h).initClass()},function(t,e,i){var n=t(391),r=t(192),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalScale\"},t.prototype.compute=function(t){return e.prototype.compute.call(this,this.source_range.synthetic(t))},t.prototype.v_compute=function(t){return e.prototype.v_compute.call(this,this.source_range.v_synthetic(t))},t}(r.LinearScale);(i.CategoricalScale=o).initClass()},function(t,e,i){var n=t(190);i.CategoricalScale=n.CategoricalScale;var r=t(192);i.LinearScale=r.LinearScale;var o=t(193);i.LogScale=o.LogScale;var s=t(194);i.Scale=s.Scale},function(t,e,i){var n=t(391),r=t(194),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearScale\"},t.prototype.compute=function(t){var e=this._compute_state(),i=e[0],n=e[1];return i*t+n},t.prototype.v_compute=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=new Float64Array(t.length),o=0;o<t.length;o++)r[o]=i*t[o]+n;return r},t.prototype.invert=function(t){var e=this._compute_state(),i=e[0],n=e[1];return(t-n)/i},t.prototype.v_invert=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=new Float64Array(t.length),o=0;o<t.length;o++)r[o]=(t[o]-n)/i;return r},t.prototype._compute_state=function(){var t=this.source_range.start,e=this.source_range.end,i=this.target_range.start,n=this.target_range.end,r=(n-i)/(e-t),o=-r*t+i;return[r,o]},t}(r.Scale);(i.LinearScale=o).initClass()},function(t,e,i){var n=t(391),r=t(194),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogScale\"},t.prototype.compute=function(t){var e,i=this._compute_state(),n=i[0],r=i[1],o=i[2],s=i[3];if(0==o)e=0;else{var a=(Math.log(t)-s)/o;e=isFinite(a)?a*n+r:NaN}return e},t.prototype.v_compute=function(t){var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=new Float64Array(t.length);if(0==r)for(var a=0;a<t.length;a++)s[a]=0;else for(var a=0;a<t.length;a++){var l=(Math.log(t[a])-o)/r,h=void 0;h=isFinite(l)?l*i+n:NaN,s[a]=h}return s},t.prototype.invert=function(t){var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=(t-n)/i;return Math.exp(r*s+o)},t.prototype.v_invert=function(t){for(var e=this._compute_state(),i=e[0],n=e[1],r=e[2],o=e[3],s=new Float64Array(t.length),a=0;a<t.length;a++){var l=(t[a]-n)/i;s[a]=Math.exp(r*l+o)}return s},t.prototype._get_safe_factor=function(t,e){var i,n=t<0?0:t,r=e<0?0:e;if(n==r)if(0==n)n=(i=[1,10])[0],r=i[1];else{var o=Math.log(n)/Math.log(10);n=Math.pow(10,Math.floor(o)),r=Math.ceil(o)!=Math.floor(o)?Math.pow(10,Math.ceil(o)):Math.pow(10,Math.ceil(o)+1)}return[n,r]},t.prototype._compute_state=function(){var t,e,i=this.source_range.start,n=this.source_range.end,r=this.target_range.start,o=this.target_range.end,s=o-r,a=this._get_safe_factor(i,n),l=a[0],h=a[1];0==l?(t=Math.log(h),e=0):(t=Math.log(h)-Math.log(l),e=Math.log(l));var u=s,c=r;return[u,c,t,e]},t}(r.Scale);(i.LogScale=o).initClass()},function(t,e,i){var n=t(391),r=t(274),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Scale\",this.internal({source_range:[o.Any],target_range:[o.Any]})},t.prototype.r_compute=function(t,e){return this.target_range.is_reversed?[this.compute(e),this.compute(t)]:[this.compute(t),this.compute(e)]},t.prototype.r_invert=function(t,e){return this.target_range.is_reversed?[this.invert(e),this.invert(t)]:[this.invert(t),this.invert(e)]},t}(r.Transform);(i.Scale=s).initClass()},function(t,e,i){var n=t(391);n.__exportStar(t(196),i);var r=t(197);i.Selection=r.Selection},function(t,e,i){var n=t(391),r=t(59),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.do_selection=function(t,e,i,n){return null!==t&&(e.selected.update(t,i,n),e._select.emit(),!e.selected.is_empty())},e}(r.Model);(i.SelectionPolicy=o).prototype.type=\"SelectionPolicy\";var s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.hit_test=function(t,e){for(var i=[],n=0,r=e;n<r.length;n++){var o=r[n],s=o.hit_test(t);null!==s&&i.push(s)}if(0<i.length){for(var a=i[0],l=0,h=i;l<h.length;l++){var u=h[l];a.update_through_intersection(u)}return a}return null},e}(o);(i.IntersectRenderers=s).prototype.type=\"IntersectRenderers\";var a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.hit_test=function(t,e){for(var i=[],n=0,r=e;n<r.length;n++){var o=r[n],s=o.hit_test(t);null!==s&&i.push(s)}if(0<i.length){for(var a=i[0],l=0,h=i;l<h.length;l++){var u=h[l];a.update_through_union(u)}return a}return null},e}(o);(i.UnionRenderers=a).prototype.type=\"UnionRenderers\"},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(21),a=t(32),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Selection\",this.define({indices:[o.Array,[]],line_indices:[o.Array,[]],multiline_indices:[o.Any,{}]}),this.internal({final:[o.Boolean],selected_glyphs:[o.Array,[]],get_view:[o.Any],image_indices:[o.Array,[]]})},t.prototype.initialize=function(){var t=this;e.prototype.initialize.call(this),this[\"0d\"]={glyph:null,indices:[],flag:!1,get_view:function(){return null}},this[\"2d\"]={indices:{}},this[\"1d\"]={indices:this.indices},this.get_view=function(){return null},this.connect(this.properties.indices.change,function(){return t[\"1d\"].indices=t.indices}),this.connect(this.properties.line_indices.change,function(){t[\"0d\"].indices=t.line_indices,0==t.line_indices.length?t[\"0d\"].flag=!1:t[\"0d\"].flag=!0}),this.connect(this.properties.selected_glyphs.change,function(){return t[\"0d\"].glyph=t.selected_glyph}),this.connect(this.properties.get_view.change,function(){return t[\"0d\"].get_view=t.get_view}),this.connect(this.properties.multiline_indices.change,function(){return t[\"2d\"].indices=t.multiline_indices})},Object.defineProperty(t.prototype,\"selected_glyph\",{get:function(){return 0<this.selected_glyphs.length?this.selected_glyphs[0]:null},enumerable:!0,configurable:!0}),t.prototype.add_to_selected_glyphs=function(t){this.selected_glyphs.push(t)},t.prototype.update=function(t,e,i){this.final=e,i?this.update_through_union(t):(this.indices=t.indices,this.line_indices=t.line_indices,this.selected_glyphs=t.selected_glyphs,this.get_view=t.get_view,this.multiline_indices=t.multiline_indices,this.image_indices=t.image_indices)},t.prototype.clear=function(){this.final=!0,this.indices=[],this.line_indices=[],this.multiline_indices={},this.get_view=function(){return null},this.selected_glyphs=[]},t.prototype.is_empty=function(){return 0==this.indices.length&&0==this.line_indices.length&&0==this.image_indices.length},t.prototype.update_through_union=function(t){this.indices=s.union(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},t.prototype.update_through_intersection=function(t){this.indices=s.intersection(t.indices,this.indices),this.selected_glyphs=s.union(t.selected_glyphs,this.selected_glyphs),this.line_indices=s.union(t.line_indices,this.line_indices),this.get_view()||(this.get_view=t.get_view),this.multiline_indices=a.merge(t.multiline_indices,this.multiline_indices)},t}(r.Model);(i.Selection=l).initClass()},function(t,e,i){var n=t(391),r=t(205),o=t(14),_=t(44),s=t(15),a=function(i){function t(t){var e=i.call(this,t)||this;return e.initialized=!1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"AjaxDataSource\",this.define({mode:[s.String,\"replace\"],content_type:[s.String,\"application/json\"],adapter:[s.Any],http_headers:[s.Any,{}],max_size:[s.Number],method:[s.String,\"POST\"],if_modified:[s.Bool,!1]})},t.prototype.destroy=function(){null!=this.interval&&clearInterval(this.interval),i.prototype.destroy.call(this)},t.prototype.setup=function(){var t=this;!this.initialized&&(this.initialized=!0,this.get_data(this.mode),this.polling_interval)&&(this.interval=setInterval(function(){return t.get_data(t.mode,t.max_size,t.if_modified)},this.polling_interval))},t.prototype.get_data=function(t,e,i){var n=this;void 0===e&&(e=0),void 0===i&&(i=!1);var r=this.prepare_request();r.addEventListener(\"load\",function(){return n.do_load(r,t,e)}),r.addEventListener(\"error\",function(){return n.do_error(r)}),r.send()},t.prototype.prepare_request=function(){var t=new XMLHttpRequest;t.open(this.method,this.data_url,!0),t.withCredentials=!1,t.setRequestHeader(\"Content-Type\",this.content_type);var e=this.http_headers;for(var i in e){var n=e[i];t.setRequestHeader(i,n)}return t},t.prototype.do_load=function(t,e,i){if(200===t.status){var n=JSON.parse(t.responseText),r=this.adapter,o={};switch(o=null!=r?_.isFunction(r)?r(this,{response:n}):r.execute(this,{response:n}):n,e){case\"replace\":this.data=o;break;case\"append\":for(var s=this.data,a=0,l=this.columns();a<l.length;a++){var h=l[a],u=Array.from(s[h]),c=Array.from(o[h]);o[h]=u.concat(c).slice(-i)}this.data=o}}},t.prototype.do_error=function(t){o.logger.error(\"Failed to fetch JSON from \"+this.data_url+\" with code \"+t.status)},t}(r.RemoteDataSource);(i.AjaxDataSource=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(197),a=t(21),l=t(201),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CDSView\",this.define({filters:[o.Array,[]],source:[o.Instance]}),this.internal({indices:[o.Array,[]],indices_map:[o.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.compute_indices()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.filters.change,function(){t.compute_indices(),t.change.emit()}),null!=this.source&&(null!=this.source.change&&this.connect(this.source.change,function(){return t.compute_indices()}),null!=this.source.streaming&&this.connect(this.source.streaming,function(){return t.compute_indices()}),null!=this.source.patching&&this.connect(this.source.patching,function(){return t.compute_indices()}))},t.prototype.compute_indices=function(){var e=this,r=this.filters.map(function(t){return t.compute_indices(e.source)});0<(r=function(){for(var t=[],e=0,i=r;e<i.length;e++){var n=i[e];null!=n&&t.push(n)}return t}()).length?this.indices=a.intersection.apply(this,r):this.source instanceof l.ColumnarDataSource&&(this.indices=this.source.get_indices()),this.indices_map_to_subset()},t.prototype.indices_map_to_subset=function(){this.indices_map={};for(var t=0;t<this.indices.length;t++)this.indices_map[this.indices[t]]=t},t.prototype.convert_selection_from_subset=function(t){var e=this,i=new s.Selection;i.update_through_union(t);var n=t.indices.map(function(t){return e.indices[t]});return i.indices=n,i.image_indices=t.image_indices,i},t.prototype.convert_selection_to_subset=function(t){var e=this,i=new s.Selection;i.update_through_union(t);var n=t.indices.map(function(t){return e.indices_map[t]});return i.indices=n,i.image_indices=t.image_indices,i},t.prototype.convert_indices_from_subset=function(t){var e=this;return t.map(function(t){return e.indices[t]})},t}(r.Model);(i.CDSView=h).initClass()},function(t,e,i){var n=t(391),r=t(201),o=t(8),s=t(15),k=t(29),h=t(36),S=t(44),u=t(43),c=t(32),a=t(51);function _(t,e,i){if(S.isArray(t)){var n=t.concat(e);return null!=i&&n.length>i?n.slice(-i):n}if(S.isTypedArray(t)){var r=t.length+e.length;if(null!=i&&i<r){var o=r-i,s=t.length,n=void 0;t.length<i?(n=new t.constructor(i)).set(t,0):n=t;for(var a=o,l=s;a<l;a++)n[a-o]=n[a];for(var a=0,l=e.length;a<l;a++)n[a+(s-o)]=e[a];return n}var h=new t.constructor(e);return u.concat(t,h)}throw new Error(\"unsupported array types\")}function C(t,e){var i,n,r;return S.isNumber(t)?(r=(i=t)+1,n=1):(i=null!=t.start?t.start:0,r=null!=t.stop?t.stop:e,n=null!=t.step?t.step:1),[i,r,n]}function p(t,e,i){for(var n=new k.Set,r=!1,o=0,s=e;o<s.length;o++){var a=s[o],l=a[0],h=a[1],u=void 0,c=void 0;if(S.isArray(l)){var _=l[0];n.add(_),c=i[_],u=t[_]}else S.isNumber(l)?(h=[h],n.add(l)):r=!0,l=[0,0,l],c=[1,t.length],u=t;2===l.length&&(c=[1,c[0]],l=[l[0],0,l[1]]);for(var p=0,d=C(l[1],c[0]),f=d[0],v=d[1],m=d[2],g=C(l[2],c[1]),y=g[0],b=g[1],x=g[2],_=f;_<v;_+=m)for(var w=y;w<b;w+=x)r&&n.add(w),u[_*c[1]+w]=h[p],p++}return n}i.stream_to_column=_,i.slice=C,i.patch_to_column=p;var l=function(e){function l(t){return e.call(this,t)||this}return n.__extends(l,e),l.initClass=function(){this.prototype.type=\"ColumnDataSource\",this.define({data:[s.Any,{}]})},l.prototype.initialize=function(){var t;e.prototype.initialize.call(this),t=h.decode_column_data(this.data),this.data=t[0],this._shapes=t[1]},l.prototype.attributes_as_json=function(t,e){void 0===t&&(t=!0),void 0===e&&(e=l._value_to_json);for(var i={},n=this.serializable_attributes(),r=0,o=c.keys(n);r<o.length;r++){var s=o[r],a=n[s];\"data\"===s&&(a=h.encode_column_data(a,this._shapes)),t?i[s]=a:s in this._set_after_defaults&&(i[s]=a)}return e(\"attributes\",i,this)},l._value_to_json=function(t,e,i){return S.isPlainObject(e)&&\"data\"===t?h.encode_column_data(e,i._shapes):o.HasProps._value_to_json(t,e,i)},l.prototype.stream=function(t,e,i){var n=this.data;for(var r in t)n[r]=_(n[r],t[r],e);if(this.setv({data:n},{silent:!0}),this.streaming.emit(),null!=this.document){var o=new a.ColumnsStreamedEvent(this.document,this.ref(),t,e);this.document._notify_change(this,\"data\",null,null,{setter_id:i,hint:o})}},l.prototype.patch=function(t,e){var i=this.data,n=new k.Set;for(var r in t){var o=t[r];n=n.union(p(i[r],o,this._shapes[r]))}if(this.setv({data:i},{silent:!0}),this.patching.emit(n.values),null!=this.document){var s=new a.ColumnsPatchedEvent(this.document,this.ref(),t);this.document._notify_change(this,\"data\",null,null,{setter_id:e,hint:s})}},l}(r.ColumnarDataSource);(i.ColumnDataSource=l).initClass()},function(t,e,i){var n=t(391),r=t(202),o=t(19),s=t(14),a=t(17),l=t(15),h=t(44),u=t(21),c=t(32),_=t(197),p=t(196),d=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.get_array=function(t){var e=this.data[t];return null==e?this.data[t]=e=[]:h.isArray(e)||(this.data[t]=e=Array.from(e)),e},t.initClass=function(){this.prototype.type=\"ColumnarDataSource\",this.define({selection_policy:[l.Instance,function(){return new p.UnionRenderers}]}),this.internal({selection_manager:[l.Instance,function(t){return new a.SelectionManager({source:t})}],inspected:[l.Instance,function(){return new _.Selection}],_shapes:[l.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._select=new o.Signal0(this,\"select\"),this.inspect=new o.Signal(this,\"inspect\"),this.streaming=new o.Signal0(this,\"streaming\"),this.patching=new o.Signal(this,\"patching\")},t.prototype.get_column=function(t){var e=this.data[t];return null!=e?e:null},t.prototype.columns=function(){return c.keys(this.data)},t.prototype.get_length=function(t){void 0===t&&(t=!0);var e=u.uniq(c.values(this.data).map(function(t){return t.length}));switch(e.length){case 0:return null;case 1:return e[0];default:var i=\"data source has columns of inconsistent lengths\";if(t)return s.logger.warn(i),e.sort()[0];throw new Error(i)}},t.prototype.get_indices=function(){var t=this.get_length();return u.range(0,null!=t?t:1)},t.prototype.clear=function(){for(var t={},e=0,i=this.columns();e<i.length;e++){var n=i[e];t[n]=new this.data[n].constructor}this.data=t},t}(r.DataSource);(i.ColumnarDataSource=d).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(15),s=t(44),a=t(197),l=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"DataSource\",this.define({selected:[o.Instance,function(){return new a.Selection}],callback:[o.Any]})},t.prototype.connect_signals=function(){var e=this;i.prototype.connect_signals.call(this),this.connect(this.properties.selected.change,function(){var t=e.callback;null!=t&&(s.isFunction(t)?t(e):t.execute(e))})},t}(r.Model);(i.DataSource=l).initClass()},function(t,e,i){var n=t(391),r=t(201),b=t(14),o=t(15),s=t(21),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"GeoJSONDataSource\",this.define({geojson:[o.Any]}),this.internal({data:[o.Any,{}]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._update_data()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.geojson.change,function(){return t._update_data()})},t.prototype._update_data=function(){this.data=this.geojson_to_column_data()},t.prototype._get_new_list_array=function(t){return s.range(0,t).map(function(t){return[]})},t.prototype._get_new_nan_array=function(t){return s.range(0,t).map(function(t){return NaN})},t.prototype._add_properties=function(t,e,i,n){var r=t.properties||{};for(var o in r)e.hasOwnProperty(o)||(e[o]=this._get_new_nan_array(n)),e[o][i]=r[o]},t.prototype._add_geometry=function(t,e,i){function n(t){return null!=t?t:NaN}function r(t,e){return t.concat([[NaN,NaN,NaN]]).concat(e)}switch(t.type){case\"Point\":var o=t.coordinates,s=o[0],a=o[1],l=o[2];e.x[i]=s,e.y[i]=a,e.z[i]=n(l);break;case\"LineString\":for(var h=t.coordinates,u=0;u<h.length;u++){var c=h[u],s=c[0],a=c[1],l=c[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"Polygon\":1<t.coordinates.length&&b.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\");for(var _=t.coordinates[0],u=0;u<_.length;u++){var p=_[u],s=p[0],a=p[1],l=p[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"MultiPoint\":b.logger.warn(\"MultiPoint not supported in Bokeh\");break;case\"MultiLineString\":for(var h=t.coordinates.reduce(r),u=0;u<h.length;u++){var d=h[u],s=d[0],a=d[1],l=d[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;case\"MultiPolygon\":for(var f=[],v=0,m=t.coordinates;v<m.length;v++){var g=m[v];1<g.length&&b.logger.warn(\"Bokeh does not support Polygons with holes in, only exterior ring used.\"),f.push(g[0])}for(var h=f.reduce(r),u=0;u<h.length;u++){var y=h[u],s=y[0],a=y[1],l=y[2];e.xs[i][u]=s,e.ys[i][u]=a,e.zs[i][u]=n(l)}break;default:throw new Error(\"Invalid GeoJSON geometry type: \"+t.type)}},t.prototype.geojson_to_column_data=function(){var t,e=JSON.parse(this.geojson);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\")}for(var i=0,n=0,r=t;n<r.length;n++){var o=r[n],s=\"Feature\"===o.type?o.geometry:o;\"GeometryCollection\"==s.type?i+=s.geometries.length:i+=1}for(var a={x:this._get_new_nan_array(i),y:this._get_new_nan_array(i),z:this._get_new_nan_array(i),xs:this._get_new_list_array(i),ys:this._get_new_list_array(i),zs:this._get_new_list_array(i)},l=0,h=0,u=t;h<u.length;h++){var o=u[h],s=\"Feature\"==o.type?o.geometry:o;if(\"GeometryCollection\"==s.type)for(var c=0,_=s.geometries;c<_.length;c++){var p=_[c];this._add_geometry(p,a,l),\"Feature\"===o.type&&this._add_properties(o,a,l,i),l+=1}else this._add_geometry(s,a,l),\"Feature\"===o.type&&this._add_properties(o,a,l,i),l+=1}return a},t}(r.ColumnarDataSource);(i.GeoJSONDataSource=a).initClass()},function(t,e,i){var n=t(198);i.AjaxDataSource=n.AjaxDataSource;var r=t(200);i.ColumnDataSource=r.ColumnDataSource;var o=t(201);i.ColumnarDataSource=o.ColumnarDataSource;var s=t(199);i.CDSView=s.CDSView;var a=t(202);i.DataSource=a.DataSource;var l=t(203);i.GeoJSONDataSource=l.GeoJSONDataSource;var h=t(205);i.RemoteDataSource=h.RemoteDataSource},function(t,e,i){var n=t(391),r=t(200),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.prototype.get_column=function(t){var e=this.data[t];return null!=e?e:[]},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.setup()},t.initClass=function(){this.prototype.type=\"RemoteDataSource\",this.define({data_url:[o.String],polling_interval:[o.Number]})},t}(r.ColumnDataSource);(i.RemoteDataSource=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),v=t(21),s=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"AdaptiveTicker\",this.define({base:[o.Number,10],mantissas:[o.Array,[1,2,5]],min_interval:[o.Number,0],max_interval:[o.Number]})},t.prototype.initialize=function(){i.prototype.initialize.call(this);var t=v.nth(this.mantissas,-1)/this.base,e=v.nth(this.mantissas,0)*this.base;this.extended_mantissas=[t].concat(this.mantissas,[e]),this.base_factor=0===this.get_min_interval()?1:this.get_min_interval()},t.prototype.get_interval=function(t,e,i){var n,r,o,s,a,l=e-t,h=this.get_ideal_interval(t,e,i),u=Math.floor((s=h/this.base_factor,void 0===(a=this.base)&&(a=Math.E),Math.log(s)/Math.log(a))),c=Math.pow(this.base,u)*this.base_factor,_=this.extended_mantissas,p=_.map(function(t){return Math.abs(i-l/(t*c))}),d=_[v.argmin(p)],f=d*c;return n=f,r=this.get_min_interval(),o=this.get_max_interval(),Math.max(r,Math.min(o,n))},t}(r.ContinuousTicker);(i.AdaptiveTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(206),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BasicTicker\"},t}(r.AdaptiveTicker);(i.BasicTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(219),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CategoricalTicker\"},t.prototype.get_ticks=function(t,e,i,n,r){var o=this._collect(i.factors,i,t,e),s=this._collect(i.tops||[],i,t,e),a=this._collect(i.mids||[],i,t,e);return{major:o,minor:[],tops:s,mids:a}},t.prototype._collect=function(t,e,i,n){for(var r=[],o=0,s=t;o<s.length;o++){var a=s[o],l=e.synthetic(a);i<l&&l<n&&r.push(a)}return r},t}(r.Ticker);(i.CategoricalTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),c=t(21),_=t(32),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CompositeTicker\",this.define({tickers:[o.Array,[]]})},Object.defineProperty(t.prototype,\"min_intervals\",{get:function(){return this.tickers.map(function(t){return t.get_min_interval()})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_intervals\",{get:function(){return this.tickers.map(function(t){return t.get_max_interval()})},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"min_interval\",{get:function(){return this.min_intervals[0]},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_interval\",{get:function(){return this.max_intervals[0]},enumerable:!0,configurable:!0}),t.prototype.get_best_ticker=function(t,e,i){var n,r=e-t,o=this.get_ideal_interval(t,e,i),s=[c.sortedIndex(this.min_intervals,o)-1,c.sortedIndex(this.max_intervals,o)],a=[this.min_intervals[s[0]],this.max_intervals[s[1]]],l=a.map(function(t){return Math.abs(i-r/t)});if(_.isEmpty(l.filter(function(t){return!isNaN(t)})))n=this.tickers[0];else{var h=c.argmin(l),u=s[h];n=this.tickers[u]}return n},t.prototype.get_interval=function(t,e,i){var n=this.get_best_ticker(t,e,i);return n.get_interval(t,e,i)},t.prototype.get_ticks_no_defaults=function(t,e,i,n){var r=this.get_best_ticker(t,e,n);return r.get_ticks_no_defaults(t,e,i,n)},t}(r.ContinuousTicker);(i.CompositeTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(219),o=t(15),x=t(21),w=t(44),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ContinuousTicker\",this.define({num_minor_ticks:[o.Number,5],desired_num_ticks:[o.Number,6]})},t.prototype.get_ticks=function(t,e,i,n,r){return this.get_ticks_no_defaults(t,e,n,this.desired_num_ticks)},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=this.get_interval(e,i,n),o=Math.floor(e/r),s=Math.ceil(i/r),a=(w.isStrictNaN(o)||w.isStrictNaN(s)?[]:x.range(o,s+1)).map(function(t){return t*r}).filter(function(t){return e<=t&&t<=i}),l=this.num_minor_ticks,h=[];if(0<l&&0<a.length){for(var u=r/l,c=x.range(0,l).map(function(t){return t*u}),_=0,p=c.slice(1);_<p.length;_++){var d=p[_],f=a[0]-d;e<=f&&f<=i&&h.push(f)}for(var v=0,m=a;v<m.length;v++)for(var g=m[v],y=0,b=c;y<b.length;y++){var d=b[y],f=g+d;e<=f&&f<=i&&h.push(f)}}return{major:a,minor:h}},t.prototype.get_min_interval=function(){return this.min_interval},t.prototype.get_max_interval=function(){return null!=this.max_interval?this.max_interval:1/0},t.prototype.get_ideal_interval=function(t,e,i){var n=e-t;return n/i},t}(r.Ticker);(i.ContinuousTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(21),o=t(206),s=t(209),a=t(212),l=t(217),h=t(221),u=t(220),c=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatetimeTicker\",this.override({num_minor_ticks:0,tickers:function(){return[new o.AdaptiveTicker({mantissas:[1,2,5],base:10,min_interval:0,max_interval:500*u.ONE_MILLI,num_minor_ticks:0}),new o.AdaptiveTicker({mantissas:[1,2,5,10,15,20,30],base:60,min_interval:u.ONE_SECOND,max_interval:30*u.ONE_MINUTE,num_minor_ticks:0}),new o.AdaptiveTicker({mantissas:[1,2,4,6,8,12],base:24,min_interval:u.ONE_HOUR,max_interval:12*u.ONE_HOUR,num_minor_ticks:0}),new a.DaysTicker({days:r.range(1,32)}),new a.DaysTicker({days:r.range(1,31,3)}),new a.DaysTicker({days:[1,8,15,22]}),new a.DaysTicker({days:[1,15]}),new l.MonthsTicker({months:r.range(0,12,1)}),new l.MonthsTicker({months:r.range(0,12,2)}),new l.MonthsTicker({months:r.range(0,12,4)}),new l.MonthsTicker({months:r.range(0,12,6)}),new h.YearsTicker({})]}})},t}(s.CompositeTicker);(i.DatetimeTicker=c).initClass()},function(t,e,i){var n=t(391),r=t(218),u=t(220),o=t(15),c=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"DaysTicker\",this.define({days:[o.Array,[]]}),this.override({num_minor_ticks:0})},t.prototype.initialize=function(){e.prototype.initialize.call(this);var t=this.days;1<t.length?this.interval=(t[1]-t[0])*u.ONE_DAY:this.interval=31*u.ONE_DAY},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=function(t,e){var i=u.last_month_no_later_than(new Date(t)),n=u.last_month_no_later_than(new Date(e));n.setUTCMonth(n.getUTCMonth()+1);for(var r=[],o=i;r.push(u.copy_date(o)),o.setUTCMonth(o.getUTCMonth()+1),!(n<o););return r}(e,i),h=this.days,o=this.interval,s=c.concat(r.map(function(t){return function(t,e){for(var i=t.getUTCMonth(),n=[],r=0,o=h;r<o.length;r++){var s=o[r],a=u.copy_date(t);a.setUTCDate(s);var l=new Date(a.getTime()+e/2);l.getUTCMonth()==i&&n.push(a)}return n}(t,o)})),a=s.map(function(t){return t.getTime()}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(r.SingleIntervalTicker);(i.DaysTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),s=function(i){function t(t){var e=i.call(this,t)||this;return e.min_interval=0,e.max_interval=0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"FixedTicker\",this.define({ticks:[o.Array,[]],minor_ticks:[o.Array,[]]})},t.prototype.get_ticks_no_defaults=function(t,e,i,n){return{major:this.ticks,minor:this.minor_ticks}},t.prototype.get_interval=function(t,e,i){return 0},t}(r.ContinuousTicker);(i.FixedTicker=s).initClass()},function(t,e,i){var n=t(206);i.AdaptiveTicker=n.AdaptiveTicker;var r=t(207);i.BasicTicker=r.BasicTicker;var o=t(208);i.CategoricalTicker=o.CategoricalTicker;var s=t(209);i.CompositeTicker=s.CompositeTicker;var a=t(210);i.ContinuousTicker=a.ContinuousTicker;var l=t(211);i.DatetimeTicker=l.DatetimeTicker;var h=t(212);i.DaysTicker=h.DaysTicker;var u=t(213);i.FixedTicker=u.FixedTicker;var c=t(215);i.LogTicker=c.LogTicker;var _=t(216);i.MercatorTicker=_.MercatorTicker;var p=t(217);i.MonthsTicker=p.MonthsTicker;var d=t(218);i.SingleIntervalTicker=d.SingleIntervalTicker;var f=t(219);i.Ticker=f.Ticker;var v=t(221);i.YearsTicker=v.YearsTicker},function(t,e,i){var n=t(391),r=t(206),N=t(21),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LogTicker\",this.override({mantissas:[1,5]})},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r,o=this.num_minor_ticks,s=[],a=this.base,l=Math.log(e)/Math.log(a),h=Math.log(i)/Math.log(a),u=h-l;if(isFinite(u))if(u<2){var c=this.get_interval(e,i,n),_=Math.floor(e/c),p=Math.ceil(i/c);if(r=N.range(_,p+1).filter(function(t){return 0!=t}).map(function(t){return t*c}).filter(function(t){return e<=t&&t<=i}),0<o&&0<r.length){for(var d=c/o,f=N.range(0,o).map(function(t){return t*d}),v=0,m=f.slice(1);v<m.length;v++){var g=m[v];s.push(r[0]-g)}for(var y=0,b=r;y<b.length;y++)for(var x=b[y],w=0,k=f;w<k.length;w++){var g=k[w];s.push(x+g)}}}else{var S=Math.ceil(.999999*l),C=Math.floor(1.000001*h),T=Math.ceil((C-S)/9);if(r=N.range(S-1,C+1,T).map(function(t){return Math.pow(a,t)}),0<o&&0<r.length){for(var A=Math.pow(a,T)/o,f=N.range(1,o+1).map(function(t){return t*A}),E=0,M=f;E<M.length;E++){var g=M[E];s.push(r[0]/g)}s.push(r[0]);for(var O=0,z=r;O<z.length;O++)for(var x=z[O],P=0,j=f;P<j.length;P++){var g=j[P];s.push(x*g)}}}else r=[];return{major:r.filter(function(t){return e<=t&&t<=i}),minor:s.filter(function(t){return e<=t&&t<=i})}},t}(r.AdaptiveTicker);(i.LogTicker=o).initClass()},function(t,e,i){var n=t(391),r=t(207),o=t(15),M=t(33),s=function(E){function t(t){return E.call(this,t)||this}return n.__extends(t,E),t.initClass=function(){this.prototype.type=\"MercatorTicker\",this.define({dimension:[o.LatLon]})},t.prototype.get_ticks_no_defaults=function(t,e,i,n){var r,o,s,a,l,h,u,c;if(null==this.dimension)throw new Error(\"MercatorTicker.dimension not configured\");r=M.clip_mercator(t,e,this.dimension),t=r[0],e=r[1],\"lon\"===this.dimension?(o=M.wgs84_mercator.inverse([t,i]),h=o[0],c=o[1],s=M.wgs84_mercator.inverse([e,i]),u=s[0],c=s[1]):(a=M.wgs84_mercator.inverse([i,t]),c=a[0],h=a[1],l=M.wgs84_mercator.inverse([i,e]),c=l[0],u=l[1]);var _=E.prototype.get_ticks_no_defaults.call(this,h,u,i,n),p=[],d=[];if(\"lon\"===this.dimension){for(var f=0,v=_.major;f<v.length;f++){var m=v[f];if(M.in_bounds(m,\"lon\")){var g=M.wgs84_mercator.forward([m,c])[0];p.push(g)}}for(var y=0,b=_.minor;y<b.length;y++){var m=b[y];if(M.in_bounds(m,\"lon\")){var g=M.wgs84_mercator.forward([m,c])[0];d.push(g)}}}else{for(var x=0,w=_.major;x<w.length;x++){var m=w[x];if(M.in_bounds(m,\"lat\")){var k=M.wgs84_mercator.forward([c,m]),S=k[1];p.push(S)}}for(var C=0,T=_.minor;C<T.length;C++){var m=T[C];if(M.in_bounds(m,\"lat\")){var A=M.wgs84_mercator.forward([c,m]),S=A[1];d.push(S)}}}return{major:p,minor:d}},t}(r.BasicTicker);(i.MercatorTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(218),h=t(220),o=t(15),u=t(21),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"MonthsTicker\",this.define({months:[o.Array,[]]})},t.prototype.initialize=function(){e.prototype.initialize.call(this);var t=this.months;1<t.length?this.interval=(t[1]-t[0])*h.ONE_MONTH:this.interval=12*h.ONE_MONTH},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=function(t,e){var i=h.last_year_no_later_than(new Date(t)),n=h.last_year_no_later_than(new Date(e));n.setUTCFullYear(n.getUTCFullYear()+1);for(var r=[],o=i;r.push(h.copy_date(o)),o.setUTCFullYear(o.getUTCFullYear()+1),!(n<o););return r}(e,i),o=this.months,s=u.concat(r.map(function(i){return o.map(function(t){var e=h.copy_date(i);return e.setUTCMonth(t),e})})),a=s.map(function(t){return t.getTime()}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(r.SingleIntervalTicker);(i.MonthsTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(210),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"SingleIntervalTicker\",this.define({interval:[o.Number]})},t.prototype.get_interval=function(t,e,i){return this.interval},Object.defineProperty(t.prototype,\"min_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"max_interval\",{get:function(){return this.interval},enumerable:!0,configurable:!0}),t}(r.ContinuousTicker);(i.SingleIntervalTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Ticker\"},t}(r.Model);(i.Ticker=o).initClass()},function(t,e,i){function n(t){return new Date(t.getTime())}function r(t){var e=n(t);return e.setUTCDate(1),e.setUTCHours(0),e.setUTCMinutes(0),e.setUTCSeconds(0),e.setUTCMilliseconds(0),e}i.ONE_MILLI=1,i.ONE_SECOND=1e3,i.ONE_MINUTE=60*i.ONE_SECOND,i.ONE_HOUR=60*i.ONE_MINUTE,i.ONE_DAY=24*i.ONE_HOUR,i.ONE_MONTH=30*i.ONE_DAY,i.ONE_YEAR=365*i.ONE_DAY,i.copy_date=n,i.last_month_no_later_than=r,i.last_year_no_later_than=function(t){var e=r(t);return e.setUTCMonth(0),e}},function(t,e,i){var n=t(391),r=t(207),o=t(218),h=t(220),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"YearsTicker\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.interval=h.ONE_YEAR,this.basic_ticker=new r.BasicTicker({num_minor_ticks:0})},t.prototype.get_ticks_no_defaults=function(e,i,t,n){var r=h.last_year_no_later_than(new Date(e)).getUTCFullYear(),o=h.last_year_no_later_than(new Date(i)).getUTCFullYear(),s=this.basic_ticker.get_ticks_no_defaults(r,o,t,n).major,a=s.map(function(t){return Date.UTC(t,0,1)}),l=a.filter(function(t){return e<=t&&t<=i});return{major:l,minor:[]}},t}(o.SingleIntervalTicker);(i.YearsTicker=s).initClass()},function(t,e,i){var n=t(391),r=t(225),o=t(15),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"BBoxTileSource\",this.define({use_latlon:[o.Bool,!1]})},t.prototype.get_image_url=function(t,e,i){var n,r,o,s,a,l,h=this.string_lookup_replace(this.url,this.extra_url_vars);return this.use_latlon?(n=this.get_tile_geographic_bounds(t,e,i),s=n[0],l=n[1],o=n[2],a=n[3]):(r=this.get_tile_meter_bounds(t,e,i),s=r[0],l=r[1],o=r[2],a=r[3]),h.replace(\"{XMIN}\",s.toString()).replace(\"{YMIN}\",l.toString()).replace(\"{XMAX}\",o.toString()).replace(\"{YMAX}\",a.toString())},t}(r.MercatorTileSource);(i.BBoxTileSource=s).initClass()},function(t,e,i){var n=t(44),r=function(){function t(){this.images=[]}return t.prototype.pop=function(){var t=this.images.pop();return null!=t?t:new Image},t.prototype.push=function(t){var e;50<this.images.length||(n.isArray(t)?(e=this.images).push.apply(e,t):this.images.push(t))},t}();i.ImagePool=r},function(t,e,i){var n=t(222);i.BBoxTileSource=n.BBoxTileSource;var r=t(225);i.MercatorTileSource=r.MercatorTileSource;var o=t(226);i.QUADKEYTileSource=o.QUADKEYTileSource;var s=t(227);i.TileRenderer=s.TileRenderer;var a=t(228);i.TileSource=a.TileSource;var l=t(230);i.TMSTileSource=l.TMSTileSource;var h=t(231);i.WMTSTileSource=h.WMTSTileSource},function(t,e,i){var n=t(391),r=t(228),o=t(15),s=t(21),h=t(229),a=function(i){function t(t){return i.call(this,t)||this}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"MercatorTileSource\",this.define({snap_to_zoom:[o.Bool,!1],wrap_around:[o.Bool,!0]}),this.override({x_origin_offset:20037508.34,y_origin_offset:20037508.34,initial_resolution:156543.03392804097})},t.prototype.initialize=function(){var e=this;i.prototype.initialize.call(this),this._resolutions=s.range(this.min_zoom,this.max_zoom+1).map(function(t){return e.get_resolution(t)})},t.prototype._computed_initial_resolution=function(){return null!=this.initial_resolution?this.initial_resolution:2*Math.PI*6378137/this.tile_size},t.prototype.is_valid_tile=function(t,e,i){return!(!this.wrap_around&&(t<0||t>=Math.pow(2,i))||e<0||e>=Math.pow(2,i))},t.prototype.parent_by_tile_xyz=function(t,e,i){var n=this.tile_xyz_to_quadkey(t,e,i),r=n.substring(0,n.length-1);return this.quadkey_to_tile_xyz(r)},t.prototype.get_resolution=function(t){return this._computed_initial_resolution()/Math.pow(2,t)},t.prototype.get_resolution_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e;return[n,r]},t.prototype.get_level_by_extent=function(t,e,i){for(var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=0,a=0,l=this._resolutions;a<l.length;a++){var h=l[a];if(h<o){if(0==s)return 0;if(0<s)return s-1}s+=1}return s-1},t.prototype.get_closest_level_by_extent=function(t,e,i){var n=(t[2]-t[0])/i,r=(t[3]-t[1])/e,o=Math.max(n,r),s=this._resolutions.reduce(function(t,e){return Math.abs(e-o)<Math.abs(t-o)?e:t});return this._resolutions.indexOf(s)},t.prototype.snap_to_zoom_level=function(t,e,i,n){var r=t[0],o=t[1],s=t[2],a=t[3],l=this._resolutions[n],h=i*l,u=e*l;if(!this.snap_to_zoom){var c=(s-r)/h,_=(a-o)/u;_<c?(h=s-r,u*=c):(h*=_,u=a-o)}var p=(h-(s-r))/2,d=(u-(a-o))/2;return[r-p,o-d,s+p,a+d]},t.prototype.tms_to_wmts=function(t,e,i){\"Note this works both ways\";return[t,Math.pow(2,i)-1-e,i]},t.prototype.wmts_to_tms=function(t,e,i){\"Note this works both ways\";return[t,Math.pow(2,i)-1-e,i]},t.prototype.pixels_to_meters=function(t,e,i){var n=this.get_resolution(i),r=t*n-this.x_origin_offset,o=e*n-this.y_origin_offset;return[r,o]},t.prototype.meters_to_pixels=function(t,e,i){var n=this.get_resolution(i),r=(t+this.x_origin_offset)/n,o=(e+this.y_origin_offset)/n;return[r,o]},t.prototype.pixels_to_tile=function(t,e){var i=Math.ceil(t/this.tile_size);i=0===i?i:i-1;var n=Math.max(Math.ceil(e/this.tile_size)-1,0);return[i,n]},t.prototype.pixels_to_raster=function(t,e,i){var n=this.tile_size<<i;return[t,n-e]},t.prototype.meters_to_tile=function(t,e,i){var n=this.meters_to_pixels(t,e,i),r=n[0],o=n[1];return this.pixels_to_tile(r,o)},t.prototype.get_tile_meter_bounds=function(t,e,i){var n=this.pixels_to_meters(t*this.tile_size,e*this.tile_size,i),r=n[0],o=n[1],s=this.pixels_to_meters((t+1)*this.tile_size,(e+1)*this.tile_size,i),a=s[0],l=s[1];return[r,o,a,l]},t.prototype.get_tile_geographic_bounds=function(t,e,i){var n=this.get_tile_meter_bounds(t,e,i),r=h.meters_extent_to_geographic(n),o=r[0],s=r[1],a=r[2],l=r[3];return[o,s,a,l]},t.prototype.get_tiles_by_extent=function(t,e,i){void 0===i&&(i=1);var n=t[0],r=t[1],o=t[2],s=t[3],a=this.meters_to_tile(n,r,e),l=a[0],h=a[1],u=this.meters_to_tile(o,s,e),c=u[0],_=u[1];l-=i,h-=i,c+=i;for(var p=[],d=_+=i;h<=d;d--)for(var f=l;f<=c;f++)this.is_valid_tile(f,d,e)&&p.push([f,d,e,this.get_tile_meter_bounds(f,d,e)]);return this.sort_tiles_from_center(p,[l,h,c,_]),p},t.prototype.quadkey_to_tile_xyz=function(t){for(var e=0,i=0,n=t.length,r=n;0<r;r--){var o=t.charAt(n-r),s=1<<r-1;switch(o){case\"0\":continue;case\"1\":e|=s;break;case\"2\":i|=s;break;case\"3\":e|=s,i|=s;break;default:throw new TypeError(\"Invalid Quadkey: \"+t)}}return[e,i,n]},t.prototype.tile_xyz_to_quadkey=function(t,e,i){for(var n=\"\",r=i;0<r;r--){var o=1<<r-1,s=0;0!=(t&o)&&(s+=1),0!=(e&o)&&(s+=2),n+=s.toString()}return n},t.prototype.children_by_tile_xyz=function(t,e,i){for(var n=this.tile_xyz_to_quadkey(t,e,i),r=[],o=0;o<=3;o++){var s=this.quadkey_to_tile_xyz(n+o.toString()),a=s[0],l=s[1],h=s[2],u=this.get_tile_meter_bounds(a,l,h);r.push([a,l,h,u])}return r},t.prototype.get_closest_parent_by_tile_xyz=function(t,e,i){var n,r,o,s=this.calculate_world_x_by_tile_xyz(t,e,i);n=this.normalize_xyz(t,e,i),t=n[0],e=n[1],i=n[2];for(var a=this.tile_xyz_to_quadkey(t,e,i);0<a.length;)if(a=a.substring(0,a.length-1),r=this.quadkey_to_tile_xyz(a),t=r[0],e=r[1],i=r[2],o=this.denormalize_xyz(t,e,i,s),t=o[0],e=o[1],i=o[2],this.tile_xyz_to_key(t,e,i)in this.tiles)return[t,e,i];return[0,0,0]},t.prototype.normalize_xyz=function(t,e,i){if(this.wrap_around){var n=Math.pow(2,i);return[(t%n+n)%n,e,i]}return[t,e,i]},t.prototype.denormalize_xyz=function(t,e,i,n){return[t+n*Math.pow(2,i),e,i]},t.prototype.denormalize_meters=function(t,e,i,n){return[t+2*n*Math.PI*6378137,e]},t.prototype.calculate_world_x_by_tile_xyz=function(t,e,i){return Math.floor(t/Math.pow(2,i))},t}(r.TileSource);(i.MercatorTileSource=a).initClass()},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"QUADKEYTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars),r=this.tms_to_wmts(t,e,i),o=r[0],s=r[1],a=r[2],l=this.tile_xyz_to_quadkey(o,s,a);return n.replace(\"{Q}\",l)},t}(r.MercatorTileSource);(i.QUADKEYTileSource=o).initClass()},function(t,e,i){var r=t(391),o=t(223),n=t(231),s=t(189),a=t(184),l=t(5),h=t(15),I=t(21),u=t(44),c=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return r.__extends(t,n),t.prototype.initialize=function(t){this.attributionEl=null,this._tiles=[],n.prototype.initialize.call(this,t)},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.request_render()})},t.prototype.get_extent=function(){return[this.x_range.start,this.y_range.start,this.x_range.end,this.y_range.end]},Object.defineProperty(t.prototype,\"map_plot\",{get:function(){return this.plot_model.plot},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"map_canvas\",{get:function(){return this.plot_view.canvas_view.ctx},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"map_frame\",{get:function(){return this.plot_model.frame},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"x_range\",{get:function(){return this.map_plot.x_range},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"y_range\",{get:function(){return this.map_plot.y_range},enumerable:!0,configurable:!0}),t.prototype._set_data=function(){this.pool=new o.ImagePool,this.extent=this.get_extent(),this._last_height=void 0,this._last_width=void 0},t.prototype._add_attribution=function(){var t=this.model.tile_source.attribution;if(u.isString(t)&&0<t.length){if(null==this.attributionEl){var e=this.plot_model.canvas._right.value-this.plot_model.frame._right.value,i=this.plot_model.canvas._bottom.value-this.plot_model.frame._bottom.value,n=this.map_frame._width.value;this.attributionEl=l.div({class:\"bk-tile-attribution\",style:{position:\"absolute\",bottom:i+\"px\",right:e+\"px\",\"max-width\":n-4+\"px\",padding:\"2px\",\"background-color\":\"rgba(255,255,255,0.5)\",\"font-size\":\"7pt\",\"font-family\":\"sans-serif\",\"line-height\":\"1.05\",\"white-space\":\"nowrap\",overflow:\"hidden\",\"text-overflow\":\"ellipsis\"}});var r=this.plot_view.canvas_view.events_el;r.appendChild(this.attributionEl)}this.attributionEl.innerHTML=t,this.attributionEl.title=this.attributionEl.textContent.replace(/\\s*\\n\\s*/g,\" \")}},t.prototype._map_data=function(){this.initial_extent=this.get_extent();var t=this.model.tile_source.get_level_by_extent(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value),e=this.model.tile_source.snap_to_zoom_level(this.initial_extent,this.map_frame._height.value,this.map_frame._width.value,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 a.Range1d&&(this.x_range.reset_start=e[0],this.x_range.reset_end=e[2]),this.y_range instanceof a.Range1d&&(this.y_range.reset_start=e[1],this.y_range.reset_end=e[3]),this._add_attribution()},t.prototype._on_tile_load=function(t,e){t.img=e.target,t.loaded=!0,this.request_render()},t.prototype._on_tile_cache_load=function(t,e){t.img=e.target,t.loaded=!0,t.finished=!0,this.notify_finished()},t.prototype._on_tile_error=function(t){t.finished=!0},t.prototype._create_tile=function(t,e,i,n,r){void 0===r&&(r=!1);var o=this.model.tile_source.normalize_xyz(t,e,i),s=o[0],a=o[1],l=o[2],h=this.pool.pop(),u={img:h,tile_coords:[t,e,i],normalized_coords:[s,a,l],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:n,loaded:!1,finished:!1,x_coord:n[0],y_coord:n[3]};h.onload=r?this._on_tile_cache_load.bind(this,u):this._on_tile_load.bind(this,u),h.onerror=this._on_tile_error.bind(this,u),h.alt=\"\",h.src=this.model.tile_source.get_image_url(s,a,l),this.model.tile_source.tiles[u.cache_key]=u,this._tiles.push(u)},t.prototype._enforce_aspect_ratio=function(){if(this._last_height!==this.map_frame._height.value||this._last_width!==this.map_frame._width.value){var t=this.get_extent(),e=this.model.tile_source.get_level_by_extent(t,this.map_frame._height.value,this.map_frame._width.value),i=this.model.tile_source.snap_to_zoom_level(t,this.map_frame._height.value,this.map_frame._width.value,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._height.value,this._last_width=this.map_frame._width.value}},t.prototype.has_finished=function(){if(!n.prototype.has_finished.call(this))return!1;if(0===this._tiles.length)return!1;for(var t=0,e=this._tiles;t<e.length;t++){var i=e[t];if(!i.finished)return!1}return!0},t.prototype.render=function(){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()},t.prototype._draw_tile=function(t){var e=this.model.tile_source.tiles[t];if(null!=e){var i=this.plot_view.map_to_screen([e.bounds[0]],[e.bounds[3]]),n=i[0][0],r=i[1][0],o=this.plot_view.map_to_screen([e.bounds[2]],[e.bounds[1]]),s=o[0][0],a=o[1][0],l=s-n,h=a-r,u=n,c=r,_=this.map_canvas.getImageSmoothingEnabled();this.map_canvas.setImageSmoothingEnabled(this.model.smoothing),this.map_canvas.drawImage(e.img,u,c,l,h),this.map_canvas.setImageSmoothingEnabled(_),e.finished=!0}},t.prototype._set_rect=function(){var t=this.plot_model.plot.properties.outline_line_width.value(),e=this.map_frame._left.value+t/2,i=this.map_frame._top.value+t/2,n=this.map_frame._width.value-t,r=this.map_frame._height.value-t;this.map_canvas.rect(e,i,n,r),this.map_canvas.clip()},t.prototype._render_tiles=function(t){this.map_canvas.save(),this._set_rect(),this.map_canvas.globalAlpha=this.model.alpha;for(var e=0,i=t;e<i.length;e++){var n=i[e];this._draw_tile(n)}this.map_canvas.restore()},t.prototype._prefetch_tiles=function(){for(var t=this.model.tile_source,e=this.get_extent(),i=this.map_frame._height.value,n=this.map_frame._width.value,r=this.model.tile_source.get_level_by_extent(e,i,n),o=this.model.tile_source.get_tiles_by_extent(e,r),s=0,a=Math.min(10,o.length);s<a;s++)for(var l=o[s],h=l[0],u=l[1],c=l[2],_=this.model.tile_source.children_by_tile_xyz(h,u,c),p=0,d=_;p<d.length;p++){var f=d[p],v=f[0],m=f[1],g=f[2],y=f[3];t.tile_xyz_to_key(v,m,g)in t.tiles||this._create_tile(v,m,g,y,!0)}},t.prototype._fetch_tiles=function(t){for(var e=0,i=t;e<i.length;e++){var n=i[e],r=n[0],o=n[1],s=n[2],a=n[3];this._create_tile(r,o,s,a)}},t.prototype._update=function(){var t=this,e=this.model.tile_source,i=e.min_zoom,n=e.max_zoom,r=this.get_extent(),o=this.extent[2]-this.extent[0]<r[2]-r[0],s=this.map_frame._height.value,a=this.map_frame._width.value,l=e.get_level_by_extent(r,s,a),h=!1;l<i?(r=this.extent,l=i,h=!0):n<l&&(r=this.extent,l=n,h=!0),h&&(this.x_range.setv({x_range:{start:r[0],end:r[2]}}),this.y_range.setv({start:r[1],end:r[3]}),this.extent=r),this.extent=r;for(var u=e.get_tiles_by_extent(r,l),c=[],_=[],p=[],d=[],f=0,v=u;f<v.length;f++){var m=v[f],g=m[0],y=m[1],b=m[2],x=e.tile_xyz_to_key(g,y,b),w=e.tiles[x];if(null!=w&&w.loaded)_.push(x);else if(this.model.render_parents){var k=e.get_closest_parent_by_tile_xyz(g,y,b),S=k[0],C=k[1],T=k[2],A=e.tile_xyz_to_key(S,C,T),E=e.tiles[A];if(null!=E&&E.loaded&&!I.includes(p,A)&&p.push(A),o)for(var M=e.children_by_tile_xyz(g,y,b),O=0,z=M;O<z.length;O++){var P=z[O],j=P[0],N=P[1],F=P[2],D=e.tile_xyz_to_key(j,N,F);D in e.tiles&&d.push(D)}}null==w&&c.push(m)}this._render_tiles(p),this._render_tiles(d),this._render_tiles(_),null!=this.render_timer&&clearTimeout(this.render_timer),this.render_timer=setTimeout(function(){return t._fetch_tiles(c)},65)},t}(s.RendererView);i.TileRendererView=c;var _=function(e){function t(t){return e.call(this,t)||this}return r.__extends(t,e),t.initClass=function(){this.prototype.type=\"TileRenderer\",this.prototype.default_view=c,this.define({alpha:[h.Number,1],x_range_name:[h.String,\"default\"],y_range_name:[h.String,\"default\"],smoothing:[h.Bool,!0],tile_source:[h.Instance,function(){return new n.WMTSTileSource}],render_parents:[h.Bool,!0]}),this.override({level:\"underlay\"})},t}(s.Renderer);(i.TileRenderer=_).initClass()},function(t,e,i){var n=t(391),r=t(59),o=t(223),s=t(15),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TileSource\",this.define({url:[s.String,\"\"],tile_size:[s.Number,256],max_zoom:[s.Number,30],min_zoom:[s.Number,0],extra_url_vars:[s.Any,{}],attribution:[s.String,\"\"],x_origin_offset:[s.Number],y_origin_offset:[s.Number],initial_resolution:[s.Number]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this.tiles={},this.pool=new o.ImagePool,this._normalize_case()},t.prototype.string_lookup_replace=function(t,e){var i=t;for(var n in e){var r=e[n];i=i.replace(\"{\"+n+\"}\",r)}return i},t.prototype._normalize_case=function(){var t=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=t},t.prototype.tile_xyz_to_key=function(t,e,i){return t+\":\"+e+\":\"+i},t.prototype.key_to_tile_xyz=function(t){var e=t.split(\":\").map(function(t){return parseInt(t)}),i=e[0],n=e[1],r=e[2];return[i,n,r]},t.prototype.sort_tiles_from_center=function(t,e){var i=e[0],n=e[1],r=e[2],o=e[3],s=(r-i)/2+i,a=(o-n)/2+n;t.sort(function(t,e){var i=Math.sqrt(Math.pow(s-t[0],2)+Math.pow(a-t[1],2)),n=Math.sqrt(Math.pow(s-e[0],2)+Math.pow(a-e[1],2));return i-n})},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars);return n.replace(\"{X}\",t.toString()).replace(\"{Y}\",e.toString()).replace(\"{Z}\",i.toString())},t}(r.Model);(i.TileSource=a).initClass()},function(t,e,i){var n=t(33);function c(t,e){return n.wgs84_mercator.forward([t,e])}function _(t,e){return n.wgs84_mercator.inverse([t,e])}i.geographic_to_meters=c,i.meters_to_geographic=_,i.geographic_extent_to_meters=function(t){var e=t[0],i=t[1],n=t[2],r=t[3],o=c(e,i),s=o[0],a=o[1],l=c(n,r),h=l[0],u=l[1];return[s,a,h,u]},i.meters_extent_to_geographic=function(t){var e=t[0],i=t[1],n=t[2],r=t[3],o=_(e,i),s=o[0],a=o[1],l=_(n,r),h=l[0],u=l[1];return[s,a,h,u]}},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"TMSTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars);return n.replace(\"{X}\",t.toString()).replace(\"{Y}\",e.toString()).replace(\"{Z}\",i.toString())},t}(r.MercatorTileSource);(i.TMSTileSource=o).initClass()},function(t,e,i){var n=t(391),r=t(225),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"WMTSTileSource\"},t.prototype.get_image_url=function(t,e,i){var n=this.string_lookup_replace(this.url,this.extra_url_vars),r=this.tms_to_wmts(t,e,i),o=r[0],s=r[1],a=r[2];return n.replace(\"{X}\",o.toString()).replace(\"{Y}\",s.toString()).replace(\"{Z}\",a.toString())},t}(r.MercatorTileSource);(i.WMTSTileSource=o).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(19),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._clicked=function(){this.model.do.emit()},e}(r.ButtonToolButtonView);i.ActionToolButtonView=s;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.do,function(){return t.doit()})},t}(r.ButtonToolView);i.ActionToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.button_view=s,e.do=new o.Signal0(e,\"do\"),e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ActionTool\"},t}(r.ButtonTool);(i.ActionTool=l).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(15),s=t(44),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-toolbar-button-custom-action\")},e}(r.ActionToolButtonView);i.CustomActionButtonView=a;var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.model.callback;s.isFunction(t)?t(this,{}):t.execute(this,{})},e}(r.ActionToolView);i.CustomActionView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Custom Action\",e.button_view=a,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"CustomAction\",this.prototype.default_view=l,this.define({action_tooltip:[o.String,\"Perform a Custom Action\"],callback:[o.Any],icon:[o.String]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.action_tooltip},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.CustomAction=h).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){window.open(this.model.redirect)},e}(r.ActionToolView);i.HelpToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Help\",e.icon=\"bk-tool-icon-help\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"HelpTool\",this.prototype.default_view=s,this.define({help_tooltip:[o.String,\"Click the question mark to learn more about Bokeh plot tools.\"],redirect:[o.String,\"https://bokeh.pydata.org/en/latest/docs/user_guide/tools.html#built-in-tools\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.help_tooltip},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.HelpTool=a).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.plot_view.state_changed,function(){return t.model.disabled=!t.plot_view.can_redo()})},t.prototype.doit=function(){this.plot_view.redo()},t}(r.ActionToolView);i.RedoToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Redo\",e.icon=\"bk-tool-icon-redo\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"RedoTool\",this.prototype.default_view=o,this.override({disabled:!0})},t}(r.ActionTool);(i.RedoTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){this.plot_view.reset()},e}(r.ActionToolView);i.ResetToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Reset\",e.icon=\"bk-tool-icon-reset\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ResetTool\",this.prototype.default_view=o},t}(r.ActionTool);(i.ResetTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){this.plot_view.save(\"bokeh_plot\")},e}(r.ActionToolView);i.SaveToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Save\",e.icon=\"bk-tool-icon-save\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"SaveTool\",this.prototype.default_view=o},t}(r.ActionTool);(i.SaveTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.plot_view.state_changed,function(){return t.model.disabled=!t.plot_view.can_undo()})},t.prototype.doit=function(){this.plot_view.undo()},t}(r.ActionToolView);i.UndoToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Undo\",e.icon=\"bk-tool-icon-undo\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"UndoTool\",this.prototype.default_view=o,this.override({disabled:!0})},t}(r.ActionTool);(i.UndoTool=s).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(46),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.plot_model.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,n=\"height\"==e||\"both\"==e,r=o.scale_range(t,this.model.factor,i,n);this.plot_view.push_state(\"zoom_out\",{range:r}),this.plot_view.update_range(r,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.ActionToolView);i.ZoomInToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Zoom In\",e.icon=\"bk-tool-icon-zoom-in\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ZoomInTool\",this.prototype.default_view=a,this.define({factor:[s.Percent,.1],dimensions:[s.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.ZoomInTool=l).initClass()},function(t,e,i){var n=t(391),r=t(232),o=t(46),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.doit=function(){var t=this.plot_model.frame,e=this.model.dimensions,i=\"width\"==e||\"both\"==e,n=\"height\"==e||\"both\"==e,r=o.scale_range(t,-this.model.factor,i,n);this.plot_view.push_state(\"zoom_out\",{range:r}),this.plot_view.update_range(r,!1,!0),this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.ActionToolView);i.ZoomOutToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Zoom Out\",e.icon=\"bk-tool-icon-zoom-out\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"ZoomOutTool\",this.prototype.default_view=a,this.define({factor:[s.Percent,.1],dimensions:[s.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.ActionTool);(i.ZoomOutTool=l).initClass()},function(t,e,i){var n=t(391),r=t(6),o=t(266),s=t(5),a=t(15),l=t(38),h=t(44),u=function(i){function t(){return null!==i&&i.apply(this,arguments)||this}return n.__extends(t,i),t.prototype.initialize=function(t){var e=this;i.prototype.initialize.call(this,t),this.connect(this.model.change,function(){return e.render()}),this.el.addEventListener(\"click\",function(){return e._clicked()}),this.render()},t.prototype.css_classes=function(){return i.prototype.css_classes.call(this).concat(\"bk-toolbar-button\")},t.prototype.render=function(){s.empty(this.el);var t=this.model.computed_icon;h.isString(t)&&(l.startsWith(t,\"data:image\")?this.el.style.backgroundImage=\"url('\"+t+\"')\":this.el.classList.add(t)),this.el.title=this.model.tooltip},t}(r.DOMView);i.ButtonToolButtonView=u;var c=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(o.ToolView);i.ButtonToolView=c;var _=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ButtonTool\",this.internal({disabled:[a.Boolean,!1]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.icon},enumerable:!0,configurable:!0}),t}(o.Tool);(i.ButtonTool=_).initClass()},function(t,e,i){var n=t(391),o=t(5),r=t(15),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._tap=function(t){if(null==this._draw_basepoint&&null==this._basepoint){var e=t.shiftKey;this._select_event(t,e,this.model.renderers)}},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];if(t.keyCode===o.Keys.Backspace)this._delete_selected(n);else if(t.keyCode==o.Keys.Esc){var r=n.data_source;r.selection_manager.clear()}}},e.prototype._set_extent=function(t,e,i,n){var r=t[0],o=t[1],s=e[0],a=e[1];void 0===n&&(n=!1);var l=this.model.renderers[0],h=this.plot_model.frame,u=l.glyph,c=l.data_source,_=h.xscales[l.x_range_name],p=h.yscales[l.y_range_name],d=_.r_invert(r,o),f=d[0],v=d[1],m=p.r_invert(s,a),g=m[0],y=m[1],b=[(f+v)/2,(g+y)/2],x=b[0],w=b[1],k=[v-f,y-g],S=k[0],C=k[1],T=[u.x.field,u.y.field],A=T[0],E=T[1],M=[u.width.field,u.height.field],O=M[0],z=M[1];if(i)this._pop_glyphs(c,this.model.num_objects),A&&c.get_array(A).push(x),E&&c.get_array(E).push(w),O&&c.get_array(O).push(S),z&&c.get_array(z).push(C),this._pad_empty_columns(c,[A,E,O,z]);else{var P=c.data[A].length-1;A&&(c.data[A][P]=x),E&&(c.data[E][P]=w),O&&(c.data[O][P]=S),z&&(c.data[z][P]=C)}this._emit_cds_changes(c,!0,!1,n)},e.prototype._update_box=function(t,e,i){if(void 0===e&&(e=!1),void 0===i&&(i=!1),null!=this._draw_basepoint){var n=[t.sx,t.sy],r=this.plot_model.frame,o=this.model.dimensions,s=this.model._get_dim_limits(this._draw_basepoint,n,r,o);if(null!=s){var a=s[0],l=s[1];this._set_extent(a,l,e,i)}}},e.prototype._doubletap=function(t){this.model.active&&(null!=this._draw_basepoint?(this._update_box(t,!1,!0),this._draw_basepoint=null):(this._draw_basepoint=[t.sx,t.sy],this._select_event(t,!0,this.model.renderers),this._update_box(t,!0,!1)))},e.prototype._move=function(t){this._update_box(t,!1,!1)},e.prototype._pan_start=function(t){if(t.shiftKey){if(null!=this._draw_basepoint)return;this._draw_basepoint=[t.sx,t.sy],this._update_box(t,!0,!1)}else{if(null!=this._basepoint)return;this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy]}},e.prototype._pan=function(t,e,i){if(void 0===e&&(e=!1),void 0===i&&(i=!1),t.shiftKey){if(null==this._draw_basepoint)return;this._update_box(t,e,i)}else{if(null==this._basepoint)return;this._drag_points(t,this.model.renderers)}},e.prototype._pan_end=function(t){if(this._pan(t,!1,!0),t.shiftKey)this._draw_basepoint=null;else{this._basepoint=null;for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source,!1,!0,!0)}}},e}(s.EditToolView);i.BoxEditToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Edit Tool\",e.icon=\"bk-tool-icon-box-edit\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxEditTool\",this.prototype.default_view=a,this.define({dimensions:[r.Dimensions,\"both\"],num_objects:[r.Int,0]})},t}(s.EditTool);(i.BoxEditTool=l).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(21),l=t(44),s=t(251),a=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._mouse_in_frame=!0,t}return n.__extends(t,e),t.prototype._move_enter=function(t){this._mouse_in_frame=!0},t.prototype._move_exit=function(t){this._mouse_in_frame=!1},t.prototype._map_drag=function(t,e,i){var n=this.plot_model.frame;if(!n.bbox.contains(t,e))return null;var r=n.xscales[i.x_range_name].invert(t),o=n.yscales[i.y_range_name].invert(e);return[r,o]},t.prototype._delete_selected=function(t){var e=t.data_source,i=e.selected.indices;i.sort();for(var n=0,r=e.columns();n<r.length;n++)for(var o=r[n],s=e.get_array(o),a=0;a<i.length;a++){var l=i[a];s.splice(l-a,1)}this._emit_cds_changes(e)},t.prototype._pop_glyphs=function(t,e){var i=t.columns();if(e&&i.length)for(var n=0,r=i;n<r.length;n++){var o=r[n],s=t.get_array(o),a=s.length-e+1;a<1||(l.isArray(s)||(s=Array.from(s),t.data[o]=s),s.splice(0,a))}},t.prototype._emit_cds_changes=function(t,e,i,n){void 0===e&&(e=!0),void 0===i&&(i=!0),void 0===n&&(n=!0),i&&t.selection_manager.clear(),e&&t.change.emit(),n&&(t.data=t.data,t.properties.data.change.emit())},t.prototype._drag_points=function(t,e){if(null!=this._basepoint){for(var i=this._basepoint,n=i[0],r=i[1],o=0,s=e;o<s.length;o++){var a=s[o],l=this._map_drag(n,r,a),h=this._map_drag(t.sx,t.sy,a);if(null!=h&&null!=l){for(var u=h[0],c=h[1],_=l[0],p=l[1],d=[u-_,c-p],f=d[0],v=d[1],m=a.glyph,g=a.data_source,y=[m.x.field,m.y.field],b=y[0],x=y[1],w=0,k=g.selected.indices;w<k.length;w++){var S=k[w];b&&(g.data[b][S]+=f),x&&(g.data[x][S]+=v)}g.change.emit()}}this._basepoint=[t.sx,t.sy]}},t.prototype._pad_empty_columns=function(t,e){for(var i=0,n=t.columns();i<n.length;i++){var r=n[i];o.includes(e,r)||t.get_array(r).push(this.model.empty_value)}},t.prototype._select_event=function(t,e,i){var n=this.plot_model.frame,r=t.sx,o=t.sy;if(!n.bbox.contains(r,o))return[];for(var s={type:\"point\",sx:r,sy:o},a=[],l=0,h=i;l<h.length;l++){var u=h[l],c=u.get_selection_manager(),_=u.data_source,p=[this.plot_view.renderer_views[u.id]],d=c.select(p,s,!0,e);d&&a.push(u),_.properties.selected.change.emit()}return a},t}(s.GestureToolView);i.EditToolView=a;var h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"EditTool\",this.define({custom_icon:[r.String],custom_tooltip:[r.String],empty_value:[r.Any],renderers:[r.Array,[]]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.custom_tooltip||this.tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.custom_icon||this.icon},enumerable:!0,configurable:!0}),t}(s.GestureTool);(i.EditTool=h).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),v=t(44),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._draw=function(t,e,i){if(void 0===i&&(i=!1),this.model.active){var n=this.model.renderers[0],r=this._map_drag(t.sx,t.sy,n);if(null!=r){var o=r[0],s=r[1],a=n.data_source,l=n.glyph,h=[l.xs.field,l.ys.field],u=h[0],c=h[1];if(\"new\"==e)this._pop_glyphs(a,this.model.num_objects),u&&a.get_array(u).push([o]),c&&a.get_array(c).push([s]),this._pad_empty_columns(a,[u,c]);else if(\"add\"==e){if(u){var _=a.data[u].length-1,p=a.get_array(u)[_];v.isArray(p)||(p=Array.from(p),a.data[u][_]=p),p.push(o)}if(c){var d=a.data[c].length-1,f=a.get_array(c)[d];v.isArray(f)||(f=Array.from(f),a.data[c][d]=f),f.push(s)}}this._emit_cds_changes(a,!0,!0,i)}}},e.prototype._pan_start=function(t){this._draw(t,\"new\")},e.prototype._pan=function(t){this._draw(t,\"add\")},e.prototype._pan_end=function(t){this._draw(t,\"add\",!0)},e.prototype._tap=function(t){this._select_event(t,t.shiftKey,this.model.renderers)},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Esc?n.data_source.selection_manager.clear():t.keyCode===r.Keys.Backspace&&this._delete_selected(n)}},e}(s.EditToolView);i.FreehandDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Freehand Draw Tool\",e.icon=\"bk-tool-icon-freehand-draw\",e.event_type=[\"pan\",\"tap\"],e.default_order=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"FreehandDrawTool\",this.prototype.default_view=a,this.define({num_objects:[o.Int,0]})},t}(s.EditTool);(i.FreehandDrawTool=l).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),s=t(243),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._tap=function(t){var e=t.shiftKey,i=this._select_event(t,e,this.model.renderers);if(!i.length&&this.model.add){var n=this.model.renderers[0],r=this._map_drag(t.sx,t.sy,n);if(null!=r){var o=n.glyph,s=n.data_source,a=[o.x.field,o.y.field],l=a[0],h=a[1],u=r[0],c=r[1];this._pop_glyphs(s,this.model.num_objects),l&&s.get_array(l).push(u),h&&s.get_array(h).push(c),this._pad_empty_columns(s,[l,h]),s.change.emit(),s.data=s.data,s.properties.data.change.emit()}}},e.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Backspace?this._delete_selected(n):t.keyCode==r.Keys.Esc&&n.data_source.selection_manager.clear()}},e.prototype._pan_start=function(t){this.model.drag&&(this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy])},e.prototype._pan=function(t){this.model.drag&&null!=this._basepoint&&this._drag_points(t,this.model.renderers)},e.prototype._pan_end=function(t){if(this.model.drag){this._pan(t);for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source,!1,!0,!0)}this._basepoint=null}},e}(s.EditToolView);i.PointDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Point Draw Tool\",e.icon=\"bk-tool-icon-point-draw\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=2,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PointDrawTool\",this.prototype.default_view=a,this.define({add:[o.Bool,!0],drag:[o.Bool,!0],num_objects:[o.Int,0]})},t}(s.EditTool);(i.PointDrawTool=l).initClass()},function(t,e,i){var n=t(391),r=t(5),o=t(15),y=t(44),s=t(248),a=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._drawing=!1,t._initialized=!1,t}return n.__extends(t,e),t.prototype._tap=function(t){this._drawing?this._draw(t,\"add\",!0):this._select_event(t,t.shiftKey,this.model.renderers)},t.prototype._draw=function(t,e,i){var n;void 0===i&&(i=!1);var r=this.model.renderers[0],o=this._map_drag(t.sx,t.sy,r);if(this._initialized||this.activate(),null!=o){var s=o[0],a=o[1];n=this._snap_to_vertex(t,s,a),s=n[0],a=n[1];var l=r.data_source,h=r.glyph,u=[h.xs.field,h.ys.field],c=u[0],_=u[1];if(\"new\"==e)this._pop_glyphs(l,this.model.num_objects),c&&l.get_array(c).push([s,s]),_&&l.get_array(_).push([a,a]),this._pad_empty_columns(l,[c,_]);else if(\"edit\"==e){if(c){var p=l.data[c][l.data[c].length-1];p[p.length-1]=s}if(_){var d=l.data[_][l.data[_].length-1];d[d.length-1]=a}}else if(\"add\"==e){if(c){var f=l.data[c].length-1,p=l.get_array(c)[f],v=p[p.length-1];p[p.length-1]=s,y.isArray(p)||(p=Array.from(p),l.data[c][f]=p),p.push(v)}if(_){var m=l.data[_].length-1,d=l.get_array(_)[m],g=d[d.length-1];d[d.length-1]=a,y.isArray(d)||(d=Array.from(d),l.data[_][m]=d),d.push(g)}}this._emit_cds_changes(l,!0,!1,i)}},t.prototype._show_vertices=function(){for(var t=[],e=[],i=0;i<this.model.renderers.length;i++){var n=this.model.renderers[i],r=n.data_source,o=n.glyph,s=[o.xs.field,o.ys.field],a=s[0],l=s[1];if(a)for(var h=0,u=r.get_array(a);h<u.length;h++){var c=u[h];Array.prototype.push.apply(t,c)}if(l)for(var _=0,p=r.get_array(l);_<p.length;_++){var c=p[_];Array.prototype.push.apply(e,c)}this._drawing&&i==this.model.renderers.length-1&&(t.splice(t.length-1,1),e.splice(e.length-1,1))}this._set_vertices(t,e)},t.prototype._doubletap=function(t){this.model.active&&(this._drawing?(this._drawing=!1,this._draw(t,\"edit\",!0)):(this._drawing=!0,this._draw(t,\"new\",!0)))},t.prototype._move=function(t){this._drawing&&this._draw(t,\"edit\")},t.prototype._remove=function(){var t=this.model.renderers[0],e=t.data_source,i=t.glyph,n=[i.xs.field,i.ys.field],r=n[0],o=n[1];if(r){var s=e.data[r].length-1,a=e.get_array(r)[s];a.splice(a.length-1,1)}if(o){var l=e.data[o].length-1,h=e.get_array(o)[l];h.splice(h.length-1,1)}this._emit_cds_changes(e)},t.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];t.keyCode===r.Keys.Backspace?this._delete_selected(n):t.keyCode==r.Keys.Esc&&(this._drawing&&(this._remove(),this._drawing=!1),n.data_source.selection_manager.clear())}},t.prototype._pan_start=function(t){this.model.drag&&(this._select_event(t,!0,this.model.renderers),this._basepoint=[t.sx,t.sy])},t.prototype._pan=function(t){if(null!=this._basepoint&&this.model.drag){for(var e=this._basepoint,i=e[0],n=e[1],r=0,o=this.model.renderers;r<o.length;r++){var s=o[r],a=this._map_drag(i,n,s),l=this._map_drag(t.sx,t.sy,s);if(null!=l&&null!=a){var h=s.data_source,u=s.glyph,c=[u.xs.field,u.ys.field],_=c[0],p=c[1];if(_||p){for(var d=l[0],f=l[1],v=a[0],m=a[1],g=[d-v,f-m],y=g[0],b=g[1],x=0,w=h.selected.indices;x<w.length;x++){var k=w[x],S=void 0,C=void 0,T=void 0;_&&(C=h.data[_][k]),p?(T=h.data[p][k],S=T.length):S=C.length;for(var A=0;A<S;A++)C&&(C[A]+=y),T&&(T[A]+=b)}h.change.emit()}}}this._basepoint=[t.sx,t.sy]}},t.prototype._pan_end=function(t){if(this.model.drag){this._pan(t);for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e];this._emit_cds_changes(n.data_source)}this._basepoint=null}},t.prototype.activate=function(){var t=this;if(this.model.vertex_renderer&&this.model.active){if(this._show_vertices(),!this._initialized)for(var e=0,i=this.model.renderers;e<i.length;e++){var n=i[e],r=n.data_source;r.connect(r.properties.data.change,function(){return t._show_vertices()})}this._initialized=!0}},t.prototype.deactivate=function(){this._drawing&&(this._remove(),this._drawing=!1),this.model.vertex_renderer&&this._hide_vertices()},t}(s.PolyToolView);i.PolyDrawToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Polygon Draw Tool\",e.icon=\"bk-tool-icon-poly-draw\",e.event_type=[\"pan\",\"tap\",\"move\"],e.default_order=3,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolyDrawTool\",this.prototype.default_view=a,this.define({drag:[o.Bool,!0],num_objects:[o.Int,0]})},t}(s.PolyTool);(i.PolyDrawTool=l).initClass()},function(t,e,i){var n=t(391),o=t(5),c=t(44),r=t(248),s=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._drawing=!1,t}return n.__extends(t,e),t.prototype._doubletap=function(t){if(this.model.active){var e=this._map_drag(t.sx,t.sy,this.model.vertex_renderer);if(null!=e){var i=e[0],n=e[1],r=this._select_event(t,!1,[this.model.vertex_renderer]),o=this.model.vertex_renderer.data_source,s=this.model.vertex_renderer.glyph,a=[s.x.field,s.y.field],l=a[0],h=a[1];if(r.length&&null!=this._selected_renderer){var u=o.selected.indices[0];this._drawing?(this._drawing=!1,o.selection_manager.clear()):(o.selected.indices=[u+1],l&&o.get_array(l).splice(u+1,0,i),h&&o.get_array(h).splice(u+1,0,n),this._drawing=!0),o.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}else this._show_vertices(t)}}},t.prototype._show_vertices=function(t){if(this.model.active){var e=this._select_event(t,!1,this.model.renderers);if(!e.length)return this._set_vertices([],[]),this._selected_renderer=null,void(this._drawing=!1);var i,n,r=e[0],o=r.glyph,s=r.data_source,a=s.selected.indices[0],l=[o.xs.field,o.ys.field],h=l[0],u=l[1];h?(i=s.data[h][a],c.isArray(i)||(s.data[h][a]=i=Array.from(i))):i=o.xs.value,u?(n=s.data[u][a],c.isArray(n)||(s.data[u][a]=n=Array.from(n))):n=o.ys.value,this._selected_renderer=r,this._set_vertices(i,n)}},t.prototype._move=function(t){var e;if(this._drawing&&null!=this._selected_renderer){var i=this.model.vertex_renderer,n=i.data_source,r=i.glyph,o=this._map_drag(t.sx,t.sy,i);if(null==o)return;var s=o[0],a=o[1],l=n.selected.indices;e=this._snap_to_vertex(t,s,a),s=e[0],a=e[1],n.selected.indices=l;var h=[r.x.field,r.y.field],u=h[0],c=h[1],_=l[0];u&&(n.data[u][_]=s),c&&(n.data[c][_]=a),n.change.emit(),this._selected_renderer.data_source.change.emit()}},t.prototype._tap=function(t){var e,i=this.model.vertex_renderer,n=this._map_drag(t.sx,t.sy,i);if(null!=n){if(this._drawing&&this._selected_renderer){var r=n[0],o=n[1],s=i.data_source,a=i.glyph,l=[a.x.field,a.y.field],h=l[0],u=l[1],c=s.selected.indices;e=this._snap_to_vertex(t,r,o),r=e[0],o=e[1];var _=c[0];if(s.selected.indices=[_+1],h){var p=s.get_array(h),d=p[_];p[_]=r,p.splice(_+1,0,d)}if(u){var f=s.get_array(u),v=f[_];f[_]=o,f.splice(_+1,0,v)}return s.change.emit(),void this._emit_cds_changes(this._selected_renderer.data_source,!0,!1,!0)}var m=t.shiftKey;this._select_event(t,m,[i]),this._select_event(t,m,this.model.renderers)}},t.prototype._remove_vertex=function(){if(this._drawing&&this._selected_renderer){var t=this.model.vertex_renderer,e=t.data_source,i=t.glyph,n=e.selected.indices[0],r=[i.x.field,i.y.field],o=r[0],s=r[1];o&&e.get_array(o).splice(n,1),s&&e.get_array(s).splice(n,1),e.change.emit(),this._emit_cds_changes(this._selected_renderer.data_source)}},t.prototype._pan_start=function(t){this._select_event(t,!0,[this.model.vertex_renderer]),this._basepoint=[t.sx,t.sy]},t.prototype._pan=function(t){null!=this._basepoint&&(this._drag_points(t,[this.model.vertex_renderer]),this._selected_renderer&&this._selected_renderer.data_source.change.emit())},t.prototype._pan_end=function(t){null!=this._basepoint&&(this._drag_points(t,[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)},t.prototype._keyup=function(t){if(this.model.active&&this._mouse_in_frame){var e;e=this._selected_renderer?[this.model.vertex_renderer]:this.model.renderers;for(var i=0,n=e;i<n.length;i++){var r=n[i];t.keyCode===o.Keys.Backspace?(this._delete_selected(r),this._selected_renderer&&this._emit_cds_changes(this._selected_renderer.data_source)):t.keyCode==o.Keys.Esc&&(this._drawing?(this._remove_vertex(),this._drawing=!1):this._selected_renderer&&this._hide_vertices(),r.data_source.selection_manager.clear())}}},t.prototype.deactivate=function(){this._selected_renderer&&(this._drawing&&(this._remove_vertex(),this._drawing=!1),this._hide_vertices())},t}(r.PolyToolView);i.PolyEditToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Poly Edit Tool\",e.icon=\"bk-tool-icon-poly-edit\",e.event_type=[\"tap\",\"pan\",\"move\"],e.default_order=4,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolyEditTool\",this.prototype.default_view=s},t}(r.PolyTool);(i.PolyEditTool=a).initClass()},function(t,e,i){var n=t(391),r=t(15),a=t(44),o=t(243),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._set_vertices=function(t,e){var i=this.model.vertex_renderer.glyph,n=this.model.vertex_renderer.data_source,r=[i.x.field,i.y.field],o=r[0],s=r[1];o&&(a.isArray(t)?n.data[o]=t:i.x={value:t}),s&&(a.isArray(e)?n.data[s]=e:i.y={value:e}),this._emit_cds_changes(n,!0,!0,!1)},e.prototype._hide_vertices=function(){this._set_vertices([],[])},e.prototype._snap_to_vertex=function(t,e,i){if(this.model.vertex_renderer){var n=this._select_event(t,!1,[this.model.vertex_renderer]),r=this.model.vertex_renderer.data_source,o=this.model.vertex_renderer.glyph,s=[o.x.field,o.y.field],a=s[0],l=s[1];if(n.length){var h=r.selected.indices[0];a&&(e=r.data[a][h]),l&&(i=r.data[l][h]),r.selection_manager.clear()}}return[e,i]},e}(o.EditToolView);i.PolyToolView=s;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"PolyTool\",this.prototype.default_view=s,this.define({vertex_renderer:[r.Instance]})},t}(o.EditTool);(i.PolyTool=l).initClass()},function(t,e,i){var v=t(391),n=t(256),r=t(64),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return v.__extends(e,t),e.prototype._compute_limits=function(t){var e=this.plot_model.frame,i=this.model.dimensions,n=this._base_point;if(\"center\"==this.model.origin){var r=n[0],o=n[1],s=t[0],a=t[1];n=[r-(s-r),o-(a-o)]}return this.model._get_dim_limits(n,t,e,i)},e.prototype._pan_start=function(t){var e=t.sx,i=t.sy;this._base_point=[e,i]},e.prototype._pan=function(t){var e=t.sx,i=t.sy,n=[e,i],r=this._compute_limits(n),o=r[0],s=r[1];if(this.model.overlay.update({left:o[0],right:o[1],top:s[0],bottom:s[1]}),this.model.select_every_mousemove){var a=t.shiftKey;this._do_select(o,s,!1,a)}},e.prototype._pan_end=function(t){var e=t.sx,i=t.sy,n=[e,i],r=this._compute_limits(n),o=r[0],s=r[1],a=t.shiftKey;this._do_select(o,s,!0,a),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null,this.plot_view.push_state(\"box_select\",{selection:this.plot_view.get_selection()})},e.prototype._do_select=function(t,e,i,n){var r=t[0],o=t[1],s=e[0],a=e[1];void 0===n&&(n=!1);var l={type:\"rect\",sx0:r,sx1:o,sy0:s,sy1:a};this._select(l,i,n)},e.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=t.sx0,s=t.sx1,a=t.sy0,l=t.sy1,h=n.r_invert(o,s),u=h[0],c=h[1],_=r.r_invert(a,l),p=_[0],d=_[1],f=v.__assign({x0:u,y0:p,x1:c,y1:d},t);this.model.callback.execute(this.model,{geometry:f})},e}(n.SelectToolView);i.BoxSelectToolView=s;var a=function(){return new r.BoxAnnotation({level:\"overlay\",render_mode:\"css\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Select\",e.icon=\"bk-tool-icon-box-select\",e.event_type=\"pan\",e.default_order=30,e}return v.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxSelectTool\",this.prototype.default_view=s,this.define({dimensions:[o.Dimensions,\"both\"],select_every_mousemove:[o.Bool,!1],callback:[o.Instance],overlay:[o.Instance,a],origin:[o.String,\"corner\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(n.SelectTool);(i.BoxSelectTool=l).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(64),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._match_aspect=function(t,e,i){var n,r,o,s,a=i.bbox.aspect,l=i.bbox.h_range.end,h=i.bbox.h_range.start,u=i.bbox.v_range.end,c=i.bbox.v_range.start,_=Math.abs(t[0]-e[0]),p=Math.abs(t[1]-e[1]),d=0==p?0:_/p,f=(a<=d?[1,d/a]:[a/d,1])[0];return t[0]<=e[0]?(n=t[0],r=t[0]+_*f,l<r&&(r=l)):(r=t[0],(n=t[0]-_*f)<h&&(n=h)),_=Math.abs(r-n),t[1]<=e[1]?(s=t[1],o=t[1]+_/a,u<o&&(o=u)):(o=t[1],(s=t[1]-_/a)<c&&(s=c)),p=Math.abs(o-s),t[0]<=e[0]?r=t[0]+a*p:n=t[0]-a*p,[[n,r],[s,o]]},e.prototype._compute_limits=function(t){var e,i,n,r,o=this.plot_model.frame,s=this.model.dimensions,a=this._base_point;if(\"center\"==this.model.origin){var l=a[0],h=a[1],u=t[0],c=t[1];a=[l-(u-l),h-(c-h)]}return this.model.match_aspect&&\"both\"==s?(e=this._match_aspect(a,t,o),n=e[0],r=e[1]):(i=this.model._get_dim_limits(a,t,o,s),n=i[0],r=i[1]),[n,r]},e.prototype._pan_start=function(t){this._base_point=[t.sx,t.sy]},e.prototype._pan=function(t){var e=[t.sx,t.sy],i=this._compute_limits(e),n=i[0],r=i[1];this.model.overlay.update({left:n[0],right:n[1],top:r[0],bottom:r[1]})},e.prototype._pan_end=function(t){var e=[t.sx,t.sy],i=this._compute_limits(e),n=i[0],r=i[1];this._update(n,r),this.model.overlay.update({left:null,right:null,top:null,bottom:null}),this._base_point=null},e.prototype._update=function(t,e){var i=t[0],n=t[1],r=e[0],o=e[1];if(!(Math.abs(n-i)<=5||Math.abs(o-r)<=5)){var s=this.plot_model.frame,a=s.xscales,l=s.yscales,h={};for(var u in a){var c=a[u],_=c.r_invert(i,n),p=_[0],d=_[1];h[u]={start:p,end:d}}var f={};for(var v in l){var c=l[v],m=c.r_invert(r,o),p=m[0],d=m[1];f[v]={start:p,end:d}}var g={xrs:h,yrs:f};this.plot_view.push_state(\"box_zoom\",{range:g}),this.plot_view.update_range(g)}},e}(r.GestureToolView);i.BoxZoomToolView=a;var l=function(){return new o.BoxAnnotation({level:\"overlay\",render_mode:\"css\",top_units:\"screen\",left_units:\"screen\",bottom_units:\"screen\",right_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Box Zoom\",e.icon=\"bk-tool-icon-box-zoom\",e.event_type=\"pan\",e.default_order=20,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"BoxZoomTool\",this.prototype.default_view=a,this.define({dimensions:[s.Dimensions,\"both\"],overlay:[s.Instance,l],match_aspect:[s.Bool,!1],origin:[s.String,\"corner\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.BoxZoomTool=h).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(265),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.ButtonToolView);i.GestureToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.button_view=o.OnOffButtonView,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"GestureTool\"},t}(r.ButtonTool);(i.GestureTool=a).initClass()},function(t,e,i){var l=t(391),n=t(256),r=t(71),o=t(5),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return l.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.data=null},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){return t._active_change()})},t.prototype._active_change=function(){this.model.active||this._clear_overlay()},t.prototype._keyup=function(t){t.keyCode==o.Keys.Enter&&this._clear_overlay()},t.prototype._pan_start=function(t){var e=t.sx,i=t.sy;this.data={sx:[e],sy:[i]}},t.prototype._pan=function(t){var e=t.sx,i=t.sy,n=this.plot_model.frame.bbox.clip(e,i),r=n[0],o=n[1];this.data.sx.push(r),this.data.sy.push(o);var s=this.model.overlay;if(s.update({xs:this.data.sx,ys:this.data.sy}),this.model.select_every_mousemove){var a=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!1,a)}},t.prototype._pan_end=function(t){this._clear_overlay();var e=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!0,e),this.plot_view.push_state(\"lasso_select\",{selection:this.plot_view.get_selection()})},t.prototype._clear_overlay=function(){this.model.overlay.update({xs:[],ys:[]})},t.prototype._do_select=function(t,e,i,n){var r={type:\"poly\",sx:t,sy:e};this._select(r,i,n)},t.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=n.v_invert(t.sx),s=r.v_invert(t.sy),a=l.__assign({x:o,y:s},t);this.model.callback.execute(this.model,{geometry:a})},t}(n.SelectToolView);i.LassoSelectToolView=a;var h=function(){return new r.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},u=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Lasso Select\",e.icon=\"bk-tool-icon-lasso-select\",e.event_type=\"pan\",e.default_order=12,e}return l.__extends(t,i),t.initClass=function(){this.prototype.type=\"LassoSelectTool\",this.prototype.default_view=a,this.define({select_every_mousemove:[s.Bool,!0],callback:[s.Instance],overlay:[s.Instance,h]})},t}(n.SelectTool);(i.LassoSelectTool=u).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._pan_start=function(t){this.last_dx=0,this.last_dy=0;var e=t.sx,i=t.sy,n=this.plot_model.frame.bbox;if(!n.contains(e,i)){var r=n.h_range,o=n.v_range;(e<r.start||e>r.end)&&(this.v_axis_only=!0),(i<o.start||i>o.end)&&(this.h_axis_only=!0)}null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e.prototype._pan=function(t){this._update(t.deltaX,t.deltaY),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e.prototype._pan_end=function(t){this.h_axis_only=!1,this.v_axis_only=!1,null!=this.pan_info&&this.plot_view.push_state(\"pan\",{range:this.pan_info})},e.prototype._update=function(t,e){var i,n,r,o,s,a,l=this.plot_model.frame,h=t-this.last_dx,u=e-this.last_dy,c=l.bbox.h_range,_=c.start-h,p=c.end-h,d=l.bbox.v_range,f=d.start-u,v=d.end-u,m=this.model.dimensions;\"width\"!=m&&\"both\"!=m||this.v_axis_only?(i=c.start,n=c.end,r=0):(i=_,n=p,r=-h),\"height\"!=m&&\"both\"!=m||this.h_axis_only?(o=d.start,s=d.end,a=0):(o=f,s=v,a=-u),this.last_dx=t,this.last_dy=e;var g=l.xscales,y=l.yscales,b={};for(var x in g){var w=g[x],k=w.r_invert(i,n),S=k[0],C=k[1];b[x]={start:S,end:C}}var T={};for(var A in y){var w=y[A],E=w.r_invert(o,s),S=E[0],C=E[1];T[A]={start:S,end:C}}this.pan_info={xrs:b,yrs:T,sdx:r,sdy:a},this.plot_view.update_range(this.pan_info,!0)},e}(r.GestureToolView);i.PanToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Pan\",e.event_type=\"pan\",e.default_order=10,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"PanTool\",this.prototype.default_view=s,this.define({dimensions:[o.Dimensions,\"both\"]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(\"Pan\",this.dimensions)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"icon\",{get:function(){switch(this.dimensions){case\"both\":return\"bk-tool-icon-pan\";case\"width\":return\"bk-tool-icon-xpan\";case\"height\":return\"bk-tool-icon-ypan\"}},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.PanTool=a).initClass()},function(t,e,i){var l=t(391),n=t(256),r=t(71),o=t(5),s=t(15),a=t(21),h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return l.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.data={sx:[],sy:[]}},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){return t._active_change()})},t.prototype._active_change=function(){this.model.active||this._clear_data()},t.prototype._keyup=function(t){t.keyCode==o.Keys.Enter&&this._clear_data()},t.prototype._doubletap=function(t){var e=t.shiftKey;this._do_select(this.data.sx,this.data.sy,!0,e),this.plot_view.push_state(\"poly_select\",{selection:this.plot_view.get_selection()}),this._clear_data()},t.prototype._clear_data=function(){this.data={sx:[],sy:[]},this.model.overlay.update({xs:[],ys:[]})},t.prototype._tap=function(t){var e=t.sx,i=t.sy,n=this.plot_model.frame;n.bbox.contains(e,i)&&(this.data.sx.push(e),this.data.sy.push(i),this.model.overlay.update({xs:a.copy(this.data.sx),ys:a.copy(this.data.sy)}))},t.prototype._do_select=function(t,e,i,n){var r={type:\"poly\",sx:t,sy:e};this._select(r,i,n)},t.prototype._emit_callback=function(t){var e=this.computed_renderers[0],i=this.plot_model.frame,n=i.xscales[e.x_range_name],r=i.yscales[e.y_range_name],o=n.v_invert(t.sx),s=r.v_invert(t.sy),a=l.__assign({x:o,y:s},t);this.model.callback.execute(this.model,{geometry:a})},t}(n.SelectToolView);i.PolySelectToolView=h;var u=function(){return new r.PolyAnnotation({level:\"overlay\",xs_units:\"screen\",ys_units:\"screen\",fill_color:{value:\"lightgrey\"},fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:2},line_dash:{value:[4,4]}})},c=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Poly Select\",e.icon=\"bk-tool-icon-polygon-select\",e.event_type=\"tap\",e.default_order=11,e}return l.__extends(t,i),t.initClass=function(){this.prototype.type=\"PolySelectTool\",this.prototype.default_view=h,this.define({callback:[s.Instance],overlay:[s.Instance,u]})},t}(n.SelectTool);(i.PolySelectTool=c).initClass()},function(t,e,i){var n=t(391),_=t(64),r=t(14),o=t(15),s=t(251);function p(t,e,i,n){if(null==e)return!1;var r=i.compute(e);return Math.abs(t-r)<n}function d(t,e,i,n,r){var o=!0;if(null!=r.left&&null!=r.right){var s=i.invert(t);(s<r.left||s>r.right)&&(o=!1)}if(null!=r.bottom&&null!=r.top){var a=n.invert(e);(a<r.bottom||a>r.top)&&(o=!1)}return o}function l(t,e,i,n){var r=e.compute(t),o=e.invert(r+i);return o>=n.start&&o<=n.end?o:t}function h(t,e,i,n){var r=e.r_compute(t.start,t.end),o=r[0],s=r[1],a=e.r_invert(o+i,s+i),l=a[0],h=a[1];l>=n.start&&l<=n.end&&h>=n.start&&h<=n.end&&(t.start=l,t.end=h)}i.is_near=p,i.is_inside=d,i.compute_value=l,i.update_range=h;var a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.side=0,this.model.update_overlay_from_ranges()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),null!=this.model.x_range&&this.connect(this.model.x_range.change,function(){return t.model.update_overlay_from_ranges()}),null!=this.model.y_range&&this.connect(this.model.y_range.change,function(){return t.model.update_overlay_from_ranges()})},t.prototype._pan_start=function(t){this.last_dx=0,this.last_dy=0;var e=this.model.x_range,i=this.model.y_range,n=this.plot_model.frame,r=n.xscales.default,o=n.yscales.default,s=this.model.overlay,a=s.left,l=s.right,h=s.top,u=s.bottom,c=this.model.overlay.properties.line_width.value()+_.EDGE_TOLERANCE;null!=e&&this.model.x_interaction&&(p(t.sx,a,r,c)?this.side=1:p(t.sx,l,r,c)?this.side=2:d(t.sx,t.sy,r,o,s)&&(this.side=3)),null!=i&&this.model.y_interaction&&(0==this.side&&p(t.sy,u,o,c)&&(this.side=4),0==this.side&&p(t.sy,h,o,c)?this.side=5:d(t.sx,t.sy,r,o,this.model.overlay)&&(3==this.side?this.side=7:this.side=6))},t.prototype._pan=function(t){var e=this.plot_model.frame,i=t.deltaX-this.last_dx,n=t.deltaY-this.last_dy,r=this.model.x_range,o=this.model.y_range,s=e.xscales.default,a=e.yscales.default;null!=r&&(3==this.side||7==this.side?h(r,s,i,e.x_range):1==this.side?r.start=l(r.start,s,i,e.x_range):2==this.side&&(r.end=l(r.end,s,i,e.x_range))),null!=o&&(6==this.side||7==this.side?h(o,a,n,e.y_range):4==this.side?o.start=l(o.start,a,n,e.y_range):5==this.side&&(o.end=l(o.end,a,n,e.y_range))),this.last_dx=t.deltaX,this.last_dy=t.deltaY},t.prototype._pan_end=function(t){this.side=0},t}(s.GestureToolView);i.RangeToolView=a;var u=function(){return new _.BoxAnnotation({level:\"overlay\",render_mode:\"css\",fill_color:\"lightgrey\",fill_alpha:{value:.5},line_color:{value:\"black\"},line_alpha:{value:1},line_width:{value:.5},line_dash:[2,2]})},c=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Range Tool\",e.icon=\"bk-tool-icon-range\",e.event_type=\"pan\",e.default_order=1,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"RangeTool\",this.prototype.default_view=a,this.define({x_range:[o.Instance,null],x_interaction:[o.Bool,!0],y_range:[o.Instance,null],y_interaction:[o.Bool,!0],overlay:[o.Instance,u]})},t.prototype.initialize=function(){i.prototype.initialize.call(this),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},t.prototype.update_overlay_from_ranges=function(){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)},t}(s.GestureTool);(i.RangeTool=c).initClass()},function(t,e,i){var y=t(391),n=t(251),o=t(186),r=t(271),s=t(15),a=t(5),b=t(3),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return y.__extends(e,t),Object.defineProperty(e.prototype,\"computed_renderers\",{get:function(){var t=this.model.renderers,e=this.plot_model.plot.renderers,i=this.model.names;return r.compute_renderers(t,e,i)},enumerable:!0,configurable:!0}),e.prototype._computed_renderers_by_data_source=function(){for(var t={},e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=void 0;(r=n instanceof o.GraphRenderer?n.node_renderer.data_source.id:n.data_source.id)in t||(t[r]=[]),t[r].push(n)}return t},e.prototype._keyup=function(t){if(t.keyCode==a.Keys.Esc){for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=n.data_source,o=r.selection_manager;o.clear()}this.plot_view.request_render()}},e.prototype._select=function(t,e,i){var n=this._computed_renderers_by_data_source();for(var r in n){for(var o=n[r],s=o[0].get_selection_manager(),a=[],l=0,h=o;l<h.length;l++){var u=h[l];u.id in this.plot_view.renderer_views&&a.push(this.plot_view.renderer_views[u.id])}s.select(a,t,e,i)}null!=this.model.callback&&this._emit_callback(t),this._emit_selection_event(t,e)},e.prototype._emit_selection_event=function(t,e){void 0===e&&(e=!0);var i,n=this.plot_model.frame.xscales.default,r=this.plot_model.frame.yscales.default;switch(t.type){case\"point\":var o=t.sx,s=t.sy,a=n.invert(o),l=r.invert(s);i=y.__assign({},t,{x:a,y:l});break;case\"rect\":var h=t.sx0,u=t.sx1,c=t.sy0,_=t.sy1,p=n.r_invert(h,u),d=p[0],f=p[1],v=r.r_invert(c,_),m=v[0],g=v[1];i=y.__assign({},t,{x0:d,y0:m,x1:f,y1:g});break;case\"poly\":var o=t.sx,s=t.sy,a=n.v_invert(o),l=r.v_invert(s);i=y.__assign({},t,{x:a,y:l});break;default:throw new Error(\"Unrecognized selection geometry type: '\"+t.type+\"'\")}this.plot_model.plot.trigger_event(new b.SelectionGeometry({geometry:i,final:e}))},e}(n.GestureToolView);i.SelectToolView=l;var h=function(e){function t(t){return e.call(this,t)||this}return y.__extends(t,e),t.initClass=function(){this.prototype.type=\"SelectTool\",this.define({renderers:[s.Any,\"auto\"],names:[s.Array,[]]})},t}(n.GestureTool);(i.SelectTool=h).initClass()},function(t,e,i){var x=t(391),n=t(256),r=t(15),w=t(44),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return x.__extends(e,t),e.prototype._tap=function(t){var e=t.sx,i=t.sy,n={type:\"point\",sx:e,sy:i},r=t.shiftKey;this._select(n,!0,r)},e.prototype._select=function(t,e,i){var n=this,r=this.model.callback;if(\"select\"==this.model.behavior){var o=this._computed_renderers_by_data_source();for(var s in o){var a=o[s],l=a[0].get_selection_manager(),h=a.map(function(t){return n.plot_view.renderer_views[t.id]}),u=l.select(h,t,e,i);if(u&&null!=r){var c=this.plot_model.frame,_=c.xscales[a[0].x_range_name],p=c.yscales[a[0].y_range_name],d=_.invert(t.sx),f=p.invert(t.sy),v=x.__assign({},t,{x:d,y:f}),m={geometries:v,source:l.source};w.isFunction(r)?r(this,m):r.execute(this,m)}}this._emit_selection_event(t),this.plot_view.push_state(\"tap\",{selection:this.plot_view.get_selection()})}else for(var g=0,y=this.computed_renderers;g<y.length;g++){var b=y[g],l=b.get_selection_manager(),u=l.inspect(this.plot_view.renderer_views[b.id],t);if(u&&null!=r){var c=this.plot_model.frame,_=c.xscales[b.x_range_name],p=c.yscales[b.y_range_name],d=_.invert(t.sx),f=p.invert(t.sy),v=x.__assign({},t,{x:d,y:f}),m={geometries:v,source:l.source};w.isFunction(r)?r(this,m):r.execute(this,m)}}},e}(n.SelectToolView);i.TapToolView=o;var s=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Tap\",e.icon=\"bk-tool-icon-tap-select\",e.event_type=\"tap\",e.default_order=10,e}return x.__extends(t,i),t.initClass=function(){this.prototype.type=\"TapTool\",this.prototype.default_view=o,this.define({behavior:[r.String,\"select\"],callback:[r.Any]})},t}(n.SelectTool);(i.TapTool=s).initClass()},function(t,e,i){var n=t(391),r=t(251),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._scroll=function(t){var e=this.model.speed*t.delta;.9<e?e=.9:e<-.9&&(e=-.9),this._update_ranges(e)},e.prototype._update_ranges=function(t){var e,i,n,r,o=this.plot_model.frame,s=o.bbox.h_range,a=o.bbox.v_range,l=[s.start,s.end],h=l[0],u=l[1],c=[a.start,a.end],_=c[0],p=c[1];switch(this.model.dimension){case\"height\":var d=Math.abs(p-_);e=h,i=u,n=_-d*t,r=p-d*t;break;case\"width\":var f=Math.abs(u-h);e=h-f*t,i=u-f*t,n=_,r=p;break;default:throw new Error(\"this shouldn't have happened\")}var v=o.xscales,m=o.yscales,g={};for(var y in v){var b=v[y],x=b.r_invert(e,i),w=x[0],k=x[1];g[y]={start:w,end:k}}var S={};for(var C in m){var b=m[C],T=b.r_invert(n,r),w=T[0],k=T[1];S[C]={start:w,end:k}}var A={xrs:g,yrs:S,factor:t};this.plot_view.push_state(\"wheel_pan\",{range:A}),this.plot_view.update_range(A,!1,!0),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)},e}(r.GestureToolView);i.WheelPanToolView=s;var a=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Wheel Pan\",e.icon=\"bk-tool-icon-wheel-pan\",e.event_type=\"scroll\",e.default_order=12,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"WheelPanTool\",this.prototype.default_view=s,this.define({dimension:[o.Dimension,\"width\"]}),this.internal({speed:[o.Number,.001]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimension)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.WheelPanTool=a).initClass()},function(t,e,i){var n=t(391),r=t(251),c=t(46),o=t(15),s=t(20),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._pinch=function(t){var e,i=t.sx,n=t.sy,r=t.scale;e=1<=r?20*(r-1):-20/r,this._scroll({type:\"mousewheel\",sx:i,sy:n,delta:e})},e.prototype._scroll=function(t){var e=this.plot_model.frame,i=e.bbox.h_range,n=e.bbox.v_range,r=t.sx,o=t.sy,s=this.model.dimensions,a=(\"width\"==s||\"both\"==s)&&i.start<r&&r<i.end,l=(\"height\"==s||\"both\"==s)&&n.start<o&&o<n.end;if(a&&l||this.model.zoom_on_axis){var h=this.model.speed*t.delta,u=c.scale_range(e,h,a,l,{x:r,y:o});this.plot_view.push_state(\"wheel_zoom\",{range:u}),this.plot_view.update_range(u,!1,!0,this.model.maintain_focus),null!=this.model.document&&this.model.document.interactive_start(this.plot_model.plot)}},e}(r.GestureToolView);i.WheelZoomToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Wheel Zoom\",e.icon=\"bk-tool-icon-wheel-zoom\",e.event_type=s.is_mobile?\"pinch\":\"scroll\",e.default_order=10,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"WheelZoomTool\",this.prototype.default_view=a,this.define({dimensions:[o.Dimensions,\"both\"],maintain_focus:[o.Boolean,!0],zoom_on_axis:[o.Boolean,!0],speed:[o.Number,1/600]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(this.tool_name,this.dimensions)},enumerable:!0,configurable:!0}),t}(r.GestureTool);(i.WheelZoomTool=l).initClass()},function(t,e,i){var n=t(232);i.ActionTool=n.ActionTool;var r=t(233);i.CustomAction=r.CustomAction;var o=t(234);i.HelpTool=o.HelpTool;var s=t(235);i.RedoTool=s.RedoTool;var a=t(236);i.ResetTool=a.ResetTool;var l=t(237);i.SaveTool=l.SaveTool;var h=t(238);i.UndoTool=h.UndoTool;var u=t(239);i.ZoomInTool=u.ZoomInTool;var c=t(240);i.ZoomOutTool=c.ZoomOutTool;var _=t(241);i.ButtonTool=_.ButtonTool;var p=t(243);i.EditTool=p.EditTool;var d=t(242);i.BoxEditTool=d.BoxEditTool;var f=t(244);i.FreehandDrawTool=f.FreehandDrawTool;var v=t(245);i.PointDrawTool=v.PointDrawTool;var m=t(246);i.PolyDrawTool=m.PolyDrawTool;var g=t(248);i.PolyTool=g.PolyTool;var y=t(247);i.PolyEditTool=y.PolyEditTool;var b=t(249);i.BoxSelectTool=b.BoxSelectTool;var x=t(250);i.BoxZoomTool=x.BoxZoomTool;var w=t(251);i.GestureTool=w.GestureTool;var k=t(252);i.LassoSelectTool=k.LassoSelectTool;var S=t(253);i.PanTool=S.PanTool;var C=t(254);i.PolySelectTool=C.PolySelectTool;var T=t(255);i.RangeTool=T.RangeTool;var A=t(256);i.SelectTool=A.SelectTool;var E=t(257);i.TapTool=E.TapTool;var M=t(258);i.WheelPanTool=M.WheelPanTool;var O=t(259);i.WheelZoomTool=O.WheelZoomTool;var z=t(261);i.CrosshairTool=z.CrosshairTool;var P=t(262);i.CustomJSHover=P.CustomJSHover;var j=t(263);i.HoverTool=j.HoverTool;var N=t(264);i.InspectTool=N.InspectTool;var F=t(266);i.Tool=F.Tool;var D=t(267);i.ToolProxy=D.ToolProxy;var I=t(268);i.Toolbar=I.Toolbar;var R=t(269);i.ToolbarBase=R.ToolbarBase;var B=t(270);i.ProxyToolbar=B.ProxyToolbar;var L=t(270);i.ToolbarBox=L.ToolbarBox},function(t,e,i){var n=t(391),r=t(264),o=t(73),s=t(15),a=t(32),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype._move=function(t){if(this.model.active){var e=t.sx,i=t.sy;this.plot_model.frame.bbox.contains(e,i)?this._update_spans(e,i):this._update_spans(null,null)}},e.prototype._move_exit=function(t){this._update_spans(null,null)},e.prototype._update_spans=function(t,e){var i=this.model.dimensions;\"width\"!=i&&\"both\"!=i||(this.model.spans.width.computed_location=e),\"height\"!=i&&\"both\"!=i||(this.model.spans.height.computed_location=t)},e}(r.InspectToolView);i.CrosshairToolView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Crosshair\",e.icon=\"bk-tool-icon-crosshair\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"CrosshairTool\",this.prototype.default_view=l,this.define({dimensions:[s.Dimensions,\"both\"],line_color:[s.Color,\"black\"],line_width:[s.Number,1],line_alpha:[s.Number,1]}),this.internal({location_units:[s.SpatialUnits,\"screen\"],render_mode:[s.RenderMode,\"css\"],spans:[s.Any]})},Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this._get_dim_tooltip(\"Crosshair\",this.dimensions)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"synthetic_renderers\",{get:function(){return a.values(this.spans)},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){i.prototype.initialize.call(this),this.spans={width:new o.Span({for_hover:!0,dimension:\"width\",render_mode:this.render_mode,location_units:this.location_units,line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha}),height:new o.Span({for_hover:!0,dimension:\"height\",render_mode:this.render_mode,location_units:this.location_units,line_color:this.line_color,line_width:this.line_width,line_alpha:this.line_alpha})}},t}(r.InspectTool);(i.CrosshairTool=h).initClass()},function(r,t,o){var i=r(391),e=r(59),n=r(15),s=r(32),a=r(38),l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSHover\",this.define({args:[n.Any,{}],code:[n.String,\"\"]})},Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_code=function(t,e,i,n){return new(Function.bind.apply(Function,[void 0].concat(s.keys(this.args),[t,e,i,\"require\",\"exports\",a.use_strict(n)])))},t.prototype.format=function(t,e,i){var n=this._make_code(\"value\",\"format\",\"special_vars\",this.code);return n.apply(void 0,this.values.concat([t,e,i,r,o]))},t}(e.Model);(o.CustomJSHover=l).initClass()},function(t,e,i){var f=t(391),n=t(264),s=t(77),Z=t(185),tt=t(186),o=t(271),c=t(9),k=t(40),S=t(5),r=t(15),C=t(27),et=t(32),T=t(44),a=t(4);function it(t,e,i,n,r,o){var s,a,l={x:r[t],y:o[t]},h={x:r[t+1],y:o[t+1]};if(\"span\"==e.type)\"h\"==e.direction?(s=Math.abs(l.x-i),a=Math.abs(h.x-i)):(s=Math.abs(l.y-n),a=Math.abs(h.y-n));else{var u={x:i,y:n};s=c.dist_2_pts(l,u),a=c.dist_2_pts(h,u)}return s<a?[[l.x,l.y],t]:[[h.x,h.y],t+1]}function nt(t,e,i){return[[t[i],e[i]],i]}i._nearest_line_hit=it,i._line_hit=nt;var l=function(r){function t(){return null!==r&&r.apply(this,arguments)||this}return f.__extends(t,r),t.prototype.initialize=function(t){r.prototype.initialize.call(this,t),this.ttviews={}},t.prototype.remove=function(){a.remove_views(this.ttviews),r.prototype.remove.call(this)},t.prototype.connect_signals=function(){var t=this;r.prototype.connect_signals.call(this);for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e];n instanceof Z.GlyphRenderer?this.connect(n.data_source.inspect,this._update):(this.connect(n.node_renderer.data_source.inspect,this._update),this.connect(n.edge_renderer.data_source.inspect,this._update))}this.connect(this.model.properties.renderers.change,function(){return t._computed_renderers=t._ttmodels=null}),this.connect(this.model.properties.names.change,function(){return t._computed_renderers=t._ttmodels=null}),this.connect(this.model.properties.tooltips.change,function(){return t._ttmodels=null})},t.prototype._compute_ttmodels=function(){var t={},e=this.model.tooltips;if(null!=e)for(var i=0,n=this.computed_renderers;i<n.length;i++){var r=n[i];if(r instanceof Z.GlyphRenderer){var o=new s.Tooltip({custom:T.isString(e)||T.isFunction(e),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t[r.id]=o}else{var o=new s.Tooltip({custom:T.isString(e)||T.isFunction(e),attachment:this.model.attachment,show_arrow:this.model.show_arrow});t[r.node_renderer.id]=o,t[r.edge_renderer.id]=o}}return a.build_views(this.ttviews,et.values(t),{parent:this,plot_view:this.plot_view}),t},Object.defineProperty(t.prototype,\"computed_renderers\",{get:function(){if(null==this._computed_renderers){var t=this.model.renderers,e=this.plot_model.plot.renderers,i=this.model.names;this._computed_renderers=o.compute_renderers(t,e,i)}return this._computed_renderers},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"ttmodels\",{get:function(){return null==this._ttmodels&&(this._ttmodels=this._compute_ttmodels()),this._ttmodels},enumerable:!0,configurable:!0}),t.prototype._clear=function(){for(var t in this._inspect(1/0,1/0),this.ttmodels){var e=this.ttmodels[t];e.clear()}},t.prototype._move=function(t){if(this.model.active){var e=t.sx,i=t.sy;this.plot_model.frame.bbox.contains(e,i)?this._inspect(e,i):this._clear()}},t.prototype._move_exit=function(){this._clear()},t.prototype._inspect=function(t,e){var i;if(\"mouse\"==this.model.mode)i={type:\"point\",sx:t,sy:e};else{var n=\"vline\"==this.model.mode?\"h\":\"v\";i={type:\"span\",direction:n,sx:t,sy:e}}for(var r=0,o=this.computed_renderers;r<o.length;r++){var s=o[r],a=s.get_selection_manager();a.inspect(this.plot_view.renderer_views[s.id],i)}null!=this.model.callback&&this._emit_callback(i)},t.prototype._update=function(t){var e,i,n,r,o,s,a,l,h,u,c,_,p,d,f,v,m=t[0],g=t[1].geometry;if(this.model.active&&(m instanceof Z.GlyphRendererView||m instanceof tt.GraphRendererView)){var y=m.model,b=this.ttmodels[y.id];if(null!=b){b.clear();var x=y.get_selection_manager(),w=x.inspectors[y.id];if(y instanceof Z.GlyphRenderer&&(w=y.view.convert_selection_to_subset(w)),!w.is_empty()){for(var k=x.source,S=this.plot_model.frame,C=g.sx,T=g.sy,A=S.xscales[y.x_range_name],E=S.yscales[y.y_range_name],M=A.invert(C),O=E.invert(T),z=m.glyph,P=0,j=w.line_indices;P<j.length;P++){var N=j[P],F=z._x[N+1],D=z._y[N+1],I=N,R=void 0,B=void 0;switch(this.model.line_policy){case\"interp\":e=z.get_interpolation_hit(N,g),F=e[0],D=e[1],R=A.compute(F),B=E.compute(D);break;case\"prev\":i=nt(z.sx,z.sy,N),n=i[0],R=n[0],B=n[1],I=i[1];break;case\"next\":r=nt(z.sx,z.sy,N+1),o=r[0],R=o[0],B=o[1],I=r[1];break;case\"nearest\":s=it(N,g,C,T,z.sx,z.sy),a=s[0],R=a[0],B=a[1],I=s[1],F=z._x[I],D=z._y[I];break;default:R=(l=[C,T])[0],B=l[1]}var L={index:I,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,rx:R,ry:B,indices:w.line_indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,I,L))}for(var V=0,G=w.image_indices;V<G.length;V++){var U=G[V],L={index:U.index,x:M,y:O,sx:C,sy:T},q=this._render_tooltips(k,U,L);b.add(C,T,q)}for(var Y=0,X=w.indices;Y<X.length;Y++){var N=X[Y];if(et.isEmpty(w.multiline_indices)){var F=null!=z._x?z._x[N]:void 0,D=null!=z._y?z._y[N]:void 0,R=void 0,B=void 0;if(\"snap_to_data\"==this.model.point_policy){var H=z.get_anchor_point(this.model.anchor,N,[C,T]);null==H&&(H=z.get_anchor_point(\"center\",N,[C,T])),R=H.x,B=H.y}else R=(v=[C,T])[0],B=v[1];var W=void 0,L={index:W=y instanceof Z.GlyphRenderer?y.view.convert_indices_from_subset([N])[0]:N,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,indices:w.indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,W,L))}else for(var J=0,Q=w.multiline_indices[N.toString()];J<Q.length;J++){var $=Q[J],F=z._xs[N][$],D=z._ys[N][$],K=$,R=void 0,B=void 0;switch(this.model.line_policy){case\"interp\":h=z.get_interpolation_hit(N,$,g),F=h[0],D=h[1],R=A.compute(F),B=E.compute(D);break;case\"prev\":u=nt(z.sxs[N],z.sys[N],$),c=u[0],R=c[0],B=c[1],K=u[1];break;case\"next\":_=nt(z.sxs[N],z.sys[N],$+1),p=_[0],R=p[0],B=p[1],K=_[1];break;case\"nearest\":d=it($,g,C,T,z.sxs[N],z.sys[N]),f=d[0],R=f[0],B=f[1],K=d[1],F=z._xs[N][K],D=z._ys[N][K];break;default:throw new Error(\"should't have happened\")}var W=void 0,L={index:W=y instanceof Z.GlyphRenderer?y.view.convert_indices_from_subset([N])[0]:N,segment_index:K,x:M,y:O,sx:C,sy:T,data_x:F,data_y:D,indices:w.multiline_indices,name:m.model.name};b.add(R,B,this._render_tooltips(k,W,L))}}}}}},t.prototype._emit_callback=function(t){for(var e=0,i=this.computed_renderers;e<i.length;e++){var n=i[e],r=n.data_source.inspected,o=this.plot_model.frame,s=o.xscales[n.x_range_name],a=o.yscales[n.y_range_name],l=s.invert(t.sx),h=a.invert(t.sy),u=f.__assign({x:l,y:h},t),c=this.model.callback,_=[c,{index:r,geometry:u,renderer:n}],p=_[0],d=_[1];T.isFunction(c)?c(p,d):c.execute(p,d)}},t.prototype._render_tooltips=function(t,e,i){var n=this.model.tooltips;if(T.isString(n)){var r=S.div();return r.innerHTML=k.replace_placeholders(n,t,e,this.model.formatters,i),r}if(T.isFunction(n))return n(t,i);for(var o=S.div({style:{display:\"table\",borderSpacing:\"2px\"}}),s=0,a=n;s<a.length;s++){var l=a[s],h=l[0],u=l[1],c=S.div({style:{display:\"table-row\"}});o.appendChild(c);var _=void 0;if(_=S.div({style:{display:\"table-cell\"},class:\"bk-tooltip-row-label\"},0!=h.length?h+\": \":\"\"),c.appendChild(_),_=S.div({style:{display:\"table-cell\"},class:\"bk-tooltip-row-value\"}),c.appendChild(_),0<=u.indexOf(\"$color\")){var p=u.match(/\\$color(\\[.*\\])?:(\\w*)/),d=p[1],f=void 0===d?\"\":d,v=p[2],m=t.get_column(v);if(null==m){var g=S.span({},v+\" unknown\");_.appendChild(g);continue}var y=0<=f.indexOf(\"hex\"),b=0<=f.indexOf(\"swatch\"),x=T.isNumber(e)?m[e]:null;if(null==x){var w=S.span({},\"(null)\");_.appendChild(w);continue}y&&(x=C.color2hex(x));var r=S.span({},x);_.appendChild(r),b&&(r=S.span({class:\"bk-tooltip-color-block\",style:{backgroundColor:x}},\" \"),_.appendChild(r))}else{var r=S.span();r.innerHTML=k.replace_placeholders(u.replace(\"$~\",\"$data_\"),t,e,this.model.formatters,i),_.appendChild(r)}}return o},t}(n.InspectToolView);i.HoverToolView=l;var h=function(i){function t(t){var e=i.call(this,t)||this;return e.tool_name=\"Hover\",e.icon=\"bk-tool-icon-hover\",e}return f.__extends(t,i),t.initClass=function(){this.prototype.type=\"HoverTool\",this.prototype.default_view=l,this.define({tooltips:[r.Any,[[\"index\",\"$index\"],[\"data (x, y)\",\"($x, $y)\"],[\"screen (x, y)\",\"($sx, $sy)\"]]],formatters:[r.Any,{}],renderers:[r.Any,\"auto\"],names:[r.Array,[]],mode:[r.String,\"mouse\"],point_policy:[r.String,\"snap_to_data\"],line_policy:[r.String,\"nearest\"],show_arrow:[r.Boolean,!0],anchor:[r.String,\"center\"],attachment:[r.String,\"horizontal\"],callback:[r.Any]})},t}(n.InspectTool);(i.HoverTool=h).initClass()},function(t,e,i){var n=t(391),r=t(241),o=t(265),s=t(15),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e}(r.ButtonToolView);i.InspectToolView=a;var l=function(i){function t(t){var e=i.call(this,t)||this;return e.event_type=\"move\",e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"InspectTool\",this.prototype.button_view=o.OnOffButtonView,this.define({toggleable:[s.Bool,!0]}),this.override({active:!0})},t}(r.ButtonTool);(i.InspectTool=l).initClass()},function(t,e,i){var n=t(391),r=t(241),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.active?this.el.classList.add(\"bk-active\"):this.el.classList.remove(\"bk-active\")},e.prototype._clicked=function(){var t=this.model.active;this.model.active=!t},e}(r.ButtonToolButtonView);i.OnOffButtonView=o},function(t,e,i){var n=t(391),r=t(15),o=t(48),_=t(21),s=t(59),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.plot_view=t.plot_view},Object.defineProperty(t.prototype,\"plot_model\",{get:function(){return this.plot_view.model},enumerable:!0,configurable:!0}),t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.active.change,function(){t.model.active?t.activate():t.deactivate()})},t.prototype.activate=function(){},t.prototype.deactivate=function(){},t}(o.View);i.ToolView=a;var l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tool\",this.internal({active:[r.Boolean,!1]})},Object.defineProperty(t.prototype,\"synthetic_renderers\",{get:function(){return[]},enumerable:!0,configurable:!0}),t.prototype._get_dim_tooltip=function(t,e){switch(e){case\"width\":return t+\" (x-axis)\";case\"height\":return t+\" (y-axis)\";case\"both\":return t}},t.prototype._get_dim_limits=function(t,e,i,n){var r,o=t[0],s=t[1],a=e[0],l=e[1],h=i.bbox.h_range;\"width\"==n||\"both\"==n?(r=[_.min([o,a]),_.max([o,a])],r=[_.max([r[0],h.start]),_.min([r[1],h.end])]):r=[h.start,h.end];var u,c=i.bbox.v_range;return\"height\"==n||\"both\"==n?(u=[_.min([s,l]),_.max([s,l])],u=[_.max([u[0],c.start]),_.min([u[1],c.end])]):u=[c.start,c.end],[r,u]},t}(s.Model);(i.Tool=l).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(19),s=t(59),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolProxy\",this.define({tools:[r.Array,[]],active:[r.Bool,!1],disabled:[r.Bool,!1]})},Object.defineProperty(t.prototype,\"button_view\",{get:function(){return this.tools[0].button_view},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"event_type\",{get:function(){return this.tools[0].event_type},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tooltip\",{get:function(){return this.tools[0].tooltip},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"tool_name\",{get:function(){return this.tools[0].tool_name},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"icon\",{get:function(){return this.tools[0].computed_icon},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"computed_icon\",{get:function(){return this.icon},enumerable:!0,configurable:!0}),t.prototype.initialize=function(){e.prototype.initialize.call(this),this.do=new o.Signal0(this,\"do\")},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.do,function(){return t.doit()}),this.connect(this.properties.active.change,function(){return t.set_active()})},t.prototype.doit=function(){for(var t=0,e=this.tools;t<e.length;t++){var i=e[t];i.do.emit()}},t.prototype.set_active=function(){for(var t=0,e=this.tools;t<e.length;t++){var i=e[t];i.active=this.active}},t}(s.Model);(i.ToolProxy=a).initClass()},function(t,e,i){var n=t(391),r=t(15),v=t(14),m=t(44),g=t(21),y=t(232),b=t(234),x=t(251),w=t(264),o=t(269),s=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Toolbar\",this.prototype.default_view=o.ToolbarBaseView,this.define({active_drag:[r.Any,\"auto\"],active_inspect:[r.Any,\"auto\"],active_scroll:[r.Any,\"auto\"],active_tap:[r.Any,\"auto\"],active_multi:[r.Any,null]})},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init_tools()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.properties.tools.change,function(){return t._init_tools()})},t.prototype._init_tools=function(){for(var e=this,t=function(e){if(e instanceof w.InspectTool)g.any(s.inspectors,function(t){return t.id==e.id})||(s.inspectors=s.inspectors.concat([e]));else if(e instanceof b.HelpTool)g.any(s.help,function(t){return t.id==e.id})||(s.help=s.help.concat([e]));else if(e instanceof y.ActionTool)g.any(s.actions,function(t){return t.id==e.id})||(s.actions=s.actions.concat([e]));else if(e instanceof x.GestureTool){var t=void 0,i=void 0;m.isString(e.event_type)?(t=[e.event_type],i=!1):(t=e.event_type||[],i=!0);for(var n=0,r=t;n<r.length;n++){var o=r[n];o in s.gestures?(i&&(o=\"multi\"),g.any(s.gestures[o].tools,function(t){return t.id==e.id})||(s.gestures[o].tools=s.gestures[o].tools.concat([e])),s.connect(e.properties.active.change,s._active_change.bind(s,e))):v.logger.warn(\"Toolbar: unknown event type '\"+o+\"' for tool: \"+e.type+\" (\"+e.id+\")\")}}},s=this,i=0,n=this.tools;i<n.length;i++){var r=n[i];t(r)}if(\"auto\"==this.active_inspect);else if(this.active_inspect instanceof w.InspectTool)for(var o=0,a=this.inspectors;o<a.length;o++){var l=a[o];l!=this.active_inspect&&(l.active=!1)}else if(m.isArray(this.active_inspect))for(var h=0,u=this.inspectors;h<u.length;h++){var l=u[h];g.includes(this.active_inspect,l)||(l.active=!1)}else if(null==this.active_inspect)for(var c=0,_=this.inspectors;c<_.length;c++){var l=_[c];l.active=!1}var p=function(t){t.active?e._active_change(t):t.active=!0};for(var d in this.gestures){var f=this.gestures[d];if(0!=f.tools.length){if(f.tools=g.sortBy(f.tools,function(t){return t.default_order}),\"tap\"==d){if(null==this.active_tap)continue;\"auto\"==this.active_tap?p(f.tools[0]):p(this.active_tap)}if(\"pan\"==d){if(null==this.active_drag)continue;\"auto\"==this.active_drag?p(f.tools[0]):p(this.active_drag)}if(\"pinch\"==d||\"scroll\"==d){if(null==this.active_scroll||\"auto\"==this.active_scroll)continue;p(this.active_scroll)}null!=this.active_multi&&p(this.active_multi)}}},t}(o.ToolbarBase);(i.Toolbar=s).initClass()},function(t,e,i){var n=t(391),a=t(14),c=t(5),r=t(4),o=t(15),s=t(6),l=t(44),h=t(59),u=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBase\",this.define({_visible:[o.Bool,null],autohide:[o.Bool,!1]})},Object.defineProperty(t.prototype,\"visible\",{get:function(){return!this.autohide||null!=this._visible&&this._visible},enumerable:!0,configurable:!0}),t}(h.Model);(i.ToolbarViewModel=u).initClass();var _=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this._tool_button_views={},this._build_tool_button_views(),this._toolbar_view_model=new u({autohide:this.model.autohide})},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.properties.tools.change,function(){return t._build_tool_button_views()}),this.connect(this.model.properties.autohide.change,function(){t._toolbar_view_model.autohide=t.model.autohide,t._on_visible_change()}),this.connect(this._toolbar_view_model.properties._visible.change,function(){return t._on_visible_change()})},t.prototype.remove=function(){r.remove_views(this._tool_button_views),e.prototype.remove.call(this)},t.prototype._build_tool_button_views=function(){var t=null!=this.model._proxied_tools?this.model._proxied_tools:this.model.tools;r.build_views(this._tool_button_views,t,{parent:this},function(t){return t.button_view})},t.prototype.set_visibility=function(t){t!=this._toolbar_view_model._visible&&(this._toolbar_view_model._visible=t)},t.prototype._on_visible_change=function(){var t=this._toolbar_view_model.visible,e=\"bk-toolbar-hidden\";this.el.classList.contains(e)&&t?this.el.classList.remove(e):t||this.el.classList.add(e)},t.prototype.render=function(){var e=this;if(c.empty(this.el),this.el.classList.add(\"bk-toolbar\"),this.el.classList.add(\"bk-toolbar-\"+this.model.toolbar_location),this._toolbar_view_model.autohide=this.model.autohide,this._on_visible_change(),null!=this.model.logo){var t=\"grey\"===this.model.logo?\"bk-grey\":null,i=c.a({href:\"https://bokeh.pydata.org/\",target:\"_blank\",class:[\"bk-logo\",\"bk-logo-small\",t]});this.el.appendChild(i)}var n=[],r=function(t){return e._tool_button_views[t.id].el},o=this.model.gestures;for(var s in o)n.push(o[s].tools.map(r));n.push(this.model.actions.map(r)),n.push(this.model.inspectors.filter(function(t){return t.toggleable}).map(r)),n.push(this.model.help.map(r));for(var a=0,l=n;a<l.length;a++){var h=l[a];if(0!==h.length){var u=c.div({class:\"bk-button-bar\"},h);this.el.appendChild(u)}}},t}(s.DOMView);i.ToolbarBaseView=_;var p=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBase\",this.prototype.default_view=_,this.define({tools:[o.Array,[]],logo:[o.String,\"normal\"],autohide:[o.Bool,!1]}),this.internal({gestures:[o.Any,function(){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},rotate:{tools:[],active:null},move:{tools:[],active:null},multi:{tools:[],active:null}}}],actions:[o.Array,[]],inspectors:[o.Array,[]],help:[o.Array,[]],toolbar_location:[o.Location,\"right\"]})},Object.defineProperty(t.prototype,\"horizontal\",{get:function(){return\"above\"===this.toolbar_location||\"below\"===this.toolbar_location},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"vertical\",{get:function(){return\"left\"===this.toolbar_location||\"right\"===this.toolbar_location},enumerable:!0,configurable:!0}),t.prototype._active_change=function(t){var e=t.event_type;if(null!=e)for(var i=l.isString(e)?[e]:e,n=0,r=i;n<r.length;n++){var o=r[n];if(t.active){var s=this.gestures[o].active;null!=s&&t!=s&&(a.logger.debug(\"Toolbar: deactivating tool: \"+s.type+\" (\"+s.id+\") for event type '\"+o+\"'\"),s.active=!1),this.gestures[o].active=t,a.logger.debug(\"Toolbar: activating tool: \"+t.type+\" (\"+t.id+\") for event type '\"+o+\"'\")}else this.gestures[o].active=null}},t}(h.Model);(i.ToolbarBase=p).initClass()},function(t,e,i){var n=t(391),r=t(15),o=t(5),a=t(14),l=t(44),E=t(21),h=t(232),u=t(234),c=t(251),_=t(264),s=t(269),M=t(267),p=t(157),d=t(4),f=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ProxyToolbar\"},t.prototype.initialize=function(){e.prototype.initialize.call(this),this._init_tools(),this._merge_tools()},t.prototype._init_tools=function(){for(var t=function(e){if(e instanceof _.InspectTool)E.any(s.inspectors,function(t){return t.id==e.id})||(s.inspectors=s.inspectors.concat([e]));else if(e instanceof u.HelpTool)E.any(s.help,function(t){return t.id==e.id})||(s.help=s.help.concat([e]));else if(e instanceof h.ActionTool)E.any(s.actions,function(t){return t.id==e.id})||(s.actions=s.actions.concat([e]));else if(e instanceof c.GestureTool){var t=void 0,i=void 0;l.isString(e.event_type)?(t=[e.event_type],i=!1):(t=e.event_type||[],i=!0);for(var n=0,r=t;n<r.length;n++){var o=r[n];o in s.gestures?(i&&(o=\"multi\"),E.any(s.gestures[o].tools,function(t){return t.id==e.id})||(s.gestures[o].tools=s.gestures[o].tools.concat([e]))):a.logger.warn(\"Toolbar: unknown event type '\"+o+\"' for tool: \"+e.type+\" (\"+e.id+\")\")}}},s=this,e=0,i=this.tools;e<i.length;e++){var n=i[e];t(n)}},t.prototype._merge_tools=function(){var t,n=this;this._proxied_tools=[];for(var e={},i={},r={},o=[],s=[],a=0,l=this.help;a<l.length;a++){var h=l[a];E.includes(s,h.redirect)||(o.push(h),s.push(h.redirect))}for(var u in(t=this._proxied_tools).push.apply(t,o),this.help=o,this.gestures){var c=this.gestures[u];u in r||(r[u]={});for(var _=0,p=c.tools;_<p.length;_++){var d=p[_];d.type in r[u]||(r[u][d.type]=[]),r[u][d.type].push(d)}}for(var f=0,v=this.inspectors;f<v.length;f++){var d=v[f];d.type in e||(e[d.type]=[]),e[d.type].push(d)}for(var m=0,g=this.actions;m<g.length;m++){var d=g[m];d.type in i||(i[d.type]=[]),i[d.type].push(d)}var y=function(t,e){void 0===e&&(e=!1);var i=new M.ToolProxy({tools:t,active:e});return n._proxied_tools.push(i),i};for(var u in r){var c=this.gestures[u];for(var b in c.tools=[],r[u]){var x=r[u][b];if(0<x.length)if(\"multi\"==u)for(var w=0,k=x;w<k.length;w++){var d=k[w],S=y([d]);c.tools.push(S),this.connect(S.properties.active.change,this._active_change.bind(this,S))}else{var S=y(x);c.tools.push(S),this.connect(S.properties.active.change,this._active_change.bind(this,S))}}}for(var b in this.actions=[],i){var x=i[b];if(\"CustomAction\"==b)for(var C=0,T=x;C<T.length;C++){var d=T[C];this.actions.push(y([d]))}else 0<x.length&&this.actions.push(y(x))}for(var b in this.inspectors=[],e){var x=e[b];0<x.length&&this.inspectors.push(y(x,!0))}for(var A in this.gestures){var c=this.gestures[A];0!=c.tools.length&&(c.tools=E.sortBy(c.tools,function(t){return t.default_order}),\"pinch\"!=A&&\"scroll\"!=A&&\"multi\"!=A&&(c.tools[0].active=!0))}},t}(s.ToolbarBase);(i.ProxyToolbar=f).initClass();var v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return n.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.model.toolbar.toolbar_location=this.model.toolbar_location,this._toolbar_views={},d.build_views(this._toolbar_views,[this.model.toolbar],{parent:this})},t.prototype.remove=function(){d.remove_views(this._toolbar_views),e.prototype.remove.call(this)},t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-toolbar-box\")},t.prototype.render=function(){e.prototype.render.call(this);var t=this._toolbar_views[this.model.toolbar.id];t.render(),o.empty(this.el),this.el.appendChild(t.el)},t.prototype.get_width=function(){return this.model.toolbar.vertical?30:null},t.prototype.get_height=function(){return this.model.toolbar.horizontal?30:null},t}(p.LayoutDOMView);i.ToolbarBoxView=v;var m=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"ToolbarBox\",this.prototype.default_view=v,this.define({toolbar:[r.Instance],toolbar_location:[r.Location,\"right\"]})},Object.defineProperty(t.prototype,\"sizing_mode\",{get:function(){switch(this.toolbar_location){case\"above\":case\"below\":return\"scale_width\";case\"left\":case\"right\":return\"scale_height\"}},enumerable:!0,configurable:!0}),t}(p.LayoutDOM);(i.ToolbarBox=m).initClass()},function(t,e,i){var r=t(21),o=t(185),s=t(186);i.compute_renderers=function(t,e,i){return null==t?[]:(n=\"auto\"==t?e.filter(function(t){return t instanceof o.GlyphRenderer||t instanceof s.GraphRenderer}):t,0<i.length&&(n=n.filter(function(t){return r.includes(i,t.name)})),n);var n}},function(i,t,e){var n=i(391),r=i(279),o=i(15),s=i(32),a=i(38),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"CustomJSTransform\",this.define({args:[o.Any,{}],func:[o.String,\"\"],v_func:[o.String,\"\"],use_strict:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"names\",{get:function(){return s.keys(this.args)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"values\",{get:function(){return s.values(this.args)},enumerable:!0,configurable:!0}),t.prototype._make_transform=function(t,e){var i=this.use_strict?a.use_strict(e):e;return new(Function.bind.apply(Function,[void 0].concat(this.names,[t,\"require\",\"exports\",i])))},Object.defineProperty(t.prototype,\"scalar_transform\",{get:function(){return this._make_transform(\"x\",this.func)},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"vector_transform\",{get:function(){return this._make_transform(\"xs\",this.v_func)},enumerable:!0,configurable:!0}),t.prototype.compute=function(t){return this.scalar_transform.apply(this,this.values.concat([t,i,{}]))},t.prototype.v_compute=function(t){return this.vector_transform.apply(this,this.values.concat([t,i,{}]))},t}(r.Transform);(e.CustomJSTransform=l).initClass()},function(t,e,i){var n=t(391),r=t(279),o=t(181),s=t(15),a=t(44),l=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Dodge\",this.define({value:[s.Number,0],range:[s.Instance]})},t.prototype.v_compute=function(t){var e;if(this.range instanceof o.FactorRange)e=this.range.v_synthetic(t);else{if(!a.isArrayableOf(t,a.isNumber))throw new Error(\"unexpected\");e=t}for(var i=new Float64Array(e.length),n=0;n<e.length;n++){var r=e[n];i[n]=this._compute(r)}return i},t.prototype.compute=function(t){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(t));if(a.isNumber(t))return this._compute(t);throw new Error(\"unexpected\")},t.prototype._compute=function(t){return t+this.value},t}(r.Transform);(i.Dodge=l).initClass()},function(t,e,i){var n=t(272);i.CustomJSTransform=n.CustomJSTransform;var r=t(273);i.Dodge=r.Dodge;var o=t(275);i.Interpolator=o.Interpolator;var s=t(276);i.Jitter=s.Jitter;var a=t(277);i.LinearInterpolator=a.LinearInterpolator;var l=t(278);i.StepInterpolator=l.StepInterpolator;var h=t(279);i.Transform=h.Transform},function(t,e,i){var n=t(391),r=t(279),o=t(15),c=t(21),_=t(44),s=function(i){function t(t){var e=i.call(this,t)||this;return e._sorted_dirty=!0,e}return n.__extends(t,i),t.initClass=function(){this.prototype.type=\"Interpolator\",this.define({x:[o.Any],y:[o.Any],data:[o.Any],clip:[o.Bool,!0]})},t.prototype.connect_signals=function(){var t=this;i.prototype.connect_signals.call(this),this.connect(this.change,function(){return t._sorted_dirty=!0})},t.prototype.v_compute=function(t){for(var e=new Float64Array(t.length),i=0;i<t.length;i++){var n=t[i];e[i]=this.compute(n)}return e},t.prototype.sort=function(t){if(void 0===t&&(t=!1),this._sorted_dirty){var e,i;if(_.isString(this.x)&&_.isString(this.y)&&null!=this.data){var n=this.data.columns();if(!c.includes(n,this.x))throw new Error(\"The x parameter does not correspond to a valid column name defined in the data parameter\");if(!c.includes(n,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),i=this.data.get_column(this.y)}else{if(!_.isArray(this.x)||!_.isArray(this.y))throw new Error(\"parameters 'x' and 'y' must be both either string fields or arrays\");e=this.x,i=this.y}if(e.length!==i.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\");var r=[];for(var o in e)r.push({x:e[o],y:i[o]});t?r.sort(function(t,e){return t.x>e.x?-1:t.x==e.x?0:1}):r.sort(function(t,e){return t.x<e.x?-1:t.x==e.x?0:1}),this._x_sorted=[],this._y_sorted=[];for(var s=0,a=r;s<a.length;s++){var l=a[s],h=l.x,u=l.y;this._x_sorted.push(h),this._y_sorted.push(u)}this._sorted_dirty=!1}},t}(r.Transform);(i.Interpolator=s).initClass()},function(t,e,i){var n=t(391),r=t(279),o=t(181),s=t(44),a=t(15),l=t(31),h=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Jitter\",this.define({mean:[a.Number,0],width:[a.Number,1],distribution:[a.Distribution,\"uniform\"],range:[a.Instance]}),this.internal({previous_values:[a.Array]})},t.prototype.v_compute=function(t){if(null!=this.previous_values&&this.previous_values.length==t.length)return this.previous_values;var e;if(this.range instanceof o.FactorRange)e=this.range.v_synthetic(t);else{if(!s.isArrayableOf(t,s.isNumber))throw new Error(\"unexpected\");e=t}for(var i=new Float64Array(e.length),n=0;n<e.length;n++){var r=e[n];i[n]=this._compute(r)}return this.previous_values=i},t.prototype.compute=function(t){if(this.range instanceof o.FactorRange)return this._compute(this.range.synthetic(t));if(s.isNumber(t))return this._compute(t);throw new Error(\"unexpected\")},t.prototype._compute=function(t){switch(this.distribution){case\"uniform\":return t+this.mean+(l.random()-.5)*this.width;case\"normal\":return t+l.rnorm(this.mean,this.width)}},t}(r.Transform);(i.Jitter=h).initClass()},function(t,e,i){var n=t(391),s=t(21),r=t(275),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"LinearInterpolator\"},t.prototype.compute=function(e){if(this.sort(!1),this.clip){if(e<this._x_sorted[0]||e>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(e<this._x_sorted[0])return this._y_sorted[0];if(e>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}if(e==this._x_sorted[0])return this._y_sorted[0];var t=s.findLastIndex(this._x_sorted,function(t){return t<e}),i=this._x_sorted[t],n=this._x_sorted[t+1],r=this._y_sorted[t],o=this._y_sorted[t+1];return r+(e-i)/(n-i)*(o-r)},t}(r.Interpolator);(i.LinearInterpolator=o).initClass()},function(t,e,i){var n=t(391),r=t(275),o=t(15),s=t(21),a=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"StepInterpolator\",this.define({mode:[o.StepMode,\"after\"]})},t.prototype.compute=function(e){if(this.sort(!1),this.clip){if(e<this._x_sorted[0]||e>this._x_sorted[this._x_sorted.length-1])return NaN}else{if(e<this._x_sorted[0])return this._y_sorted[0];if(e>this._x_sorted[this._x_sorted.length-1])return this._y_sorted[this._y_sorted.length-1]}var t;switch(this.mode){case\"after\":t=s.findLastIndex(this._x_sorted,function(t){return t<=e});break;case\"before\":t=s.findIndex(this._x_sorted,function(t){return e<=t});break;case\"center\":var i=this._x_sorted.map(function(t){return Math.abs(t-e)}),n=s.min(i);t=s.findIndex(i,function(t){return n===t});break;default:throw new Error(\"unknown mode: \"+this.mode)}return-1!=t?this._y_sorted[t]:NaN},t}(r.Interpolator);(i.StepInterpolator=a).initClass()},function(t,e,i){var n=t(391),r=t(59),o=function(e){function t(t){return e.call(this,t)||this}return n.__extends(t,e),t.initClass=function(){this.prototype.type=\"Transform\"},t}(r.Model);(i.Transform=o).initClass()},function(t,e,i){\"function\"!=typeof WeakMap&&t(342),Number.isInteger||(Number.isInteger=function(t){return\"number\"==typeof t&&isFinite(t)&&Math.floor(t)===t});var n,l,r,h,o=String.prototype;o.repeat||(o.repeat=function(t){if(null==this)throw new TypeError(\"can't convert \"+this+\" to object\");var e=\"\"+this;if((t=+t)!=t&&(t=0),t<0)throw new RangeError(\"repeat count must be non-negative\");if(t==1/0)throw new RangeError(\"repeat count must be less than infinity\");if(t=Math.floor(t),0==e.length||0==t)return\"\";if(e.length*t>=1<<28)throw new RangeError(\"repeat count must not overflow maximum string size\");for(var i=\"\";1==(1&t)&&(i+=e),0!=(t>>>=1);)e+=e;return i}),Array.from||(Array.from=(n=Object.prototype.toString,l=function(t){return\"function\"==typeof t||\"[object Function]\"===n.call(t)},r=Math.pow(2,53)-1,h=function(t){var e,i=(e=Number(t),isNaN(e)?0:0!==e&&isFinite(e)?(0<e?1:-1)*Math.floor(Math.abs(e)):e);return Math.min(Math.max(i,0),r)},function(t){var e=Object(t);if(null==t)throw new TypeError(\"Array.from requires an array-like object - not null or undefined\");var i,n=1<arguments.length?arguments[1]:void 0;if(void 0!==n){if(!l(n))throw new TypeError(\"Array.from: when provided, the second argument must be a function\");2<arguments.length&&(i=arguments[2])}for(var r=h(e.length),o=l(this)?Object(new this(r)):new Array(r),s=0\n      // 13. If IsConstructor(C) is true, then\n      ;s<r;){var a=e[s];o[s]=n?void 0===i?n(a,s):n.call(i,a,s):a,s+=1}return o.length=r,o}))},function(t,e,i){var n=t(391);n.__exportStar(t(282),i),n.__exportStar(t(283),i)},function(t,e,i){var n=t(38),r=function(){function s(t,e,i){this.header=t,this.metadata=e,this.content=i,this.buffers=[]}return s.assemble=function(t,e,i){var n=JSON.parse(t),r=JSON.parse(e),o=JSON.parse(i);return new s(n,r,o)},s.prototype.assemble_buffer=function(t,e){var i=null!=this.header.num_buffers?this.header.num_buffers:0;if(i<=this.buffers.length)throw new Error(\"too many buffers received, expecting #{nb}\");this.buffers.push([t,e])},s.create=function(t,e,i){void 0===i&&(i={});var n=s.create_header(t);return new s(n,e,i)},s.create_header=function(t){return{msgid:n.uniqueId(),msgtype:t}},s.prototype.complete=function(){return!(null==this.header||null==this.metadata||null==this.content||\"num_buffers\"in this.header&&this.buffers.length!==this.header.num_buffers)},s.prototype.send=function(t){var e=null!=this.header.num_buffers?this.header.num_buffers:0;if(0<e)throw new Error(\"BokehJS only supports receiving buffers, not sending\");var i=JSON.stringify(this.header),n=JSON.stringify(this.metadata),r=JSON.stringify(this.content);t.send(i),t.send(n),t.send(r)},s.prototype.msgid=function(){return this.header.msgid},s.prototype.msgtype=function(){return this.header.msgtype},s.prototype.reqid=function(){return this.header.reqid},s.prototype.problem=function(){return\"msgid\"in this.header?\"msgtype\"in this.header?null:\"No msgtype in header\":\"No msgid in header\"},s}();i.Message=r},function(t,e,i){var o=t(282),n=function(){function t(){this.message=null,this._partial=null,this._fragments=[],this._buf_header=null,this._current_consumer=this._HEADER}return t.prototype.consume=function(t){this._current_consumer(t)},t.prototype._HEADER=function(t){this._assume_text(t),this.message=null,this._partial=null,this._fragments=[t],this._buf_header=null,this._current_consumer=this._METADATA},t.prototype._METADATA=function(t){this._assume_text(t),this._fragments.push(t),this._current_consumer=this._CONTENT},t.prototype._CONTENT=function(t){this._assume_text(t),this._fragments.push(t);var e=this._fragments.slice(0,3),i=e[0],n=e[1],r=e[2];this._partial=o.Message.assemble(i,n,r),this._check_complete()},t.prototype._BUFFER_HEADER=function(t){this._assume_text(t),this._buf_header=t,this._current_consumer=this._BUFFER_PAYLOAD},t.prototype._BUFFER_PAYLOAD=function(t){this._assume_binary(t),this._partial.assemble_buffer(this._buf_header,t),this._check_complete()},t.prototype._assume_text=function(t){if(t instanceof ArrayBuffer)throw new Error(\"Expected text fragment but received binary fragment\")},t.prototype._assume_binary=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Expected binary fragment but received text fragment\")},t.prototype._check_complete=function(){this._partial.complete()?(this.message=this._partial,this._current_consumer=this._HEADER):this._current_consumer=this._BUFFER_HEADER},t}();i.Receiver=n},function(t,e,i){i.safely=function(t,e){void 0===e&&(e=!1);try{return t()}catch(t){if(function(t){var e=document.createElement(\"div\");e.style.backgroundColor=\"#f2dede\",e.style.border=\"1px solid #a94442\",e.style.borderRadius=\"4px\",e.style.display=\"inline-block\",e.style.fontFamily=\"sans-serif\",e.style.marginTop=\"5px\",e.style.minWidth=\"200px\",e.style.padding=\"5px 5px 5px 10px\",e.classList.add(\"bokeh-error-box-into-flames\");var i=document.createElement(\"span\");i.style.backgroundColor=\"#a94442\",i.style.borderRadius=\"0px 4px 0px 0px\",i.style.color=\"white\",i.style.cursor=\"pointer\",i.style.cssFloat=\"right\",i.style.fontSize=\"0.8em\",i.style.margin=\"-6px -6px 0px 0px\",i.style.padding=\"2px 5px 4px 5px\",i.title=\"close\",i.setAttribute(\"aria-label\",\"close\"),i.appendChild(document.createTextNode(\"x\")),i.addEventListener(\"click\",function(){return s.removeChild(e)});var 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\"));var r=document.createElement(\"pre\");r.style.whiteSpace=\"unset\",r.style.overflowX=\"auto\";var o=t instanceof Error?t.message:t;r.appendChild(document.createTextNode(o)),e.appendChild(i),e.appendChild(n),e.appendChild(r);var s=document.getElementsByTagName(\"body\")[0];s.insertBefore(e,s.firstChild)}(t),e)return;throw t}}},function(t,e,n){function r(){var t=document.getElementsByTagName(\"body\")[0],e=document.getElementsByClassName(\"bokeh-test-div\");1==e.length&&(t.removeChild(e[0]),delete e[0]);var i=document.createElement(\"div\");i.classList.add(\"bokeh-test-div\"),i.style.display=\"none\",t.insertBefore(i,t.firstChild)}n.results={},n.init=function(){r()},n.record=function(t,e){n.results[t]=e,r()},n.count=function(t){null==n.results[t]&&(n.results[t]=0),n.results[t]+=1,r()},n.clear=function(){for(var t=0,e=Object.keys(n.results);t<e.length;t++){var i=e[t];delete n.results[i]}r()}},function(t,e,i){i.version=\"1.0.2\"},function(t,e,i){!function(){\"use strict\";var _,x,p,d,a;function f(t,e){var i,n=Object.keys(e);for(i=0;i<n.length;i++)t=t.replace(new RegExp(\"\\\\{\"+n[i]+\"\\\\}\",\"gi\"),e[n[i]]);return t}function l(t){var e,i,n;if(!t)throw new Error(\"cannot create a random attribute name for an undefined object\");e=\"ABCDEFGHIJKLMNOPQRSTUVWXTZabcdefghiklmnopqrstuvwxyz\",i=\"\";do{for(i=\"\",n=0;n<12;n++)i+=e[Math.floor(Math.random()*e.length)]}while(t[i]);return i}a=function(t,e){var i,n,r,o={};for(t=t.split(\",\"),e=e||10,i=0;i<t.length;i+=2)n=\"&\"+t[i+1]+\";\",r=parseInt(t[i],e),o[n]=\"&#\"+r+\";\";return o[\"\\\\xa0\"]=\"&#160;\",o}(\"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),_={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\"}},(p=function(t,e){this.__root=t,this.__ctx=e}).prototype.addColorStop=function(t,e){var i,n=this.__ctx.__createElement(\"stop\");n.setAttribute(\"offset\",t),-1!==e.indexOf(\"rgba\")?(i=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(e),n.setAttribute(\"stop-color\",f(\"rgb({r},{g},{b})\",{r:i[1],g:i[2],b:i[3]})),n.setAttribute(\"stop-opacity\",i[4])):n.setAttribute(\"stop-color\",e),this.__root.appendChild(n)},d=function(t,e){this.__root=t,this.__ctx=e},(x=function(t){var e,i={width:500,height:500,enableMirroring:!1};if(1<arguments.length?((e=i).width=t,e.height=arguments[1]):e=t||i,!(this instanceof x))return new x(e);this.width=e.width||i.width,this.height=e.height||i.height,this.enableMirroring=void 0!==e.enableMirroring?e.enableMirroring:i.enableMirroring,(this.canvas=this).__document=e.document||document,e.ctx?this.__ctx=e.ctx:(this.__canvas=this.__document.createElement(\"canvas\"),this.__ctx=this.__canvas.getContext(\"2d\")),this.__setDefaultStyles(),this.__stack=[this.__getStyleState()],this.__groupStack=[],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.__root.setAttribute(\"width\",this.width),this.__root.setAttribute(\"height\",this.height),this.__ids={},this.__defs=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"defs\"),this.__root.appendChild(this.__defs),this.__currentElement=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"g\"),this.__root.appendChild(this.__currentElement)}).prototype.__createElement=function(t,e,i){void 0===e&&(e={});var n,r,o=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",t),s=Object.keys(e);for(i&&(o.setAttribute(\"fill\",\"none\"),o.setAttribute(\"stroke\",\"none\")),n=0;n<s.length;n++)r=s[n],o.setAttribute(r,e[r]);return o},x.prototype.__setDefaultStyles=function(){var t,e,i=Object.keys(_);for(t=0;t<i.length;t++)this[e=i[t]]=_[e].canvas},x.prototype.__applyStyleState=function(t){var e,i,n=Object.keys(t);for(e=0;e<n.length;e++)this[i=n[e]]=t[i]},x.prototype.__getStyleState=function(){var t,e,i={},n=Object.keys(_);for(t=0;t<n.length;t++)e=n[t],i[e]=this[e];return i},x.prototype.__applyStyleToCurrentElement=function(e){var t=this.__currentElement,i=this.__currentElementsToStyle;i&&(t.setAttribute(e,\"\"),t=i.element,i.children.forEach(function(t){t.setAttribute(e,\"\")}));var n,r,o,s,a,l=Object.keys(_);for(n=0;n<l.length;n++)if(r=_[l[n]],o=this[l[n]],r.apply)if(o instanceof d){if(o.__ctx)for(;o.__ctx.__defs.childNodes.length;)s=o.__ctx.__defs.childNodes[0].getAttribute(\"id\"),this.__ids[s]=s,this.__defs.appendChild(o.__ctx.__defs.childNodes[0]);t.setAttribute(r.apply,f(\"url(#{id})\",{id:o.__root.getAttribute(\"id\")}))}else if(o instanceof p)t.setAttribute(r.apply,f(\"url(#{id})\",{id:o.__root.getAttribute(\"id\")}));else if(-1!==r.apply.indexOf(e)&&r.svg!==o)if(\"stroke\"!==r.svgAttr&&\"fill\"!==r.svgAttr||-1===o.indexOf(\"rgba\")){var h=r.svgAttr;if(\"globalAlpha\"===l[n]&&(h=e+\"-\"+r.svgAttr,t.getAttribute(h)))continue;t.setAttribute(h,o)}else{a=/rgba\\(\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d+)\\s*,\\s*(\\d?\\.?\\d*)\\s*\\)/gi.exec(o),t.setAttribute(r.svgAttr,f(\"rgb({r},{g},{b})\",{r:a[1],g:a[2],b:a[3]}));var u=a[4],c=this.globalAlpha;null!=c&&(u*=c),t.setAttribute(r.svgAttr+\"-opacity\",u)}},x.prototype.__closestGroupOrSvg=function(t){return\"g\"===(t=t||this.__currentElement).nodeName||\"svg\"===t.nodeName?t:this.__closestGroupOrSvg(t.parentNode)},x.prototype.getSerializedSvg=function(t){var e,i,n,r,o,s=(new XMLSerializer).serializeToString(this.__root);if(/xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg\".+xmlns=\"http:\\/\\/www\\.w3\\.org\\/2000\\/svg/gi.test(s)&&(s=s.replace('xmlns=\"http://www.w3.org/2000/svg','xmlns:xlink=\"http://www.w3.org/1999/xlink')),t)for(e=Object.keys(a),i=0;i<e.length;i++)n=e[i],r=a[n],(o=new RegExp(n,\"gi\")).test(s)&&(s=s.replace(o,r));return s},x.prototype.getSvg=function(){return this.__root},x.prototype.save=function(){var t=this.__createElement(\"g\"),e=this.__closestGroupOrSvg();this.__groupStack.push(e),e.appendChild(t),this.__currentElement=t,this.__stack.push(this.__getStyleState())},x.prototype.restore=function(){this.__currentElement=this.__groupStack.pop(),this.__currentElementsToStyle=null,this.__currentElement||(this.__currentElement=this.__root.childNodes[1]);var t=this.__stack.pop();this.__applyStyleState(t)},x.prototype.__addTransform=function(t){var e=this.__closestGroupOrSvg();if(0<e.childNodes.length){\"path\"===this.__currentElement.nodeName&&(this.__currentElementsToStyle||(this.__currentElementsToStyle={element:e,children:[]}),this.__currentElementsToStyle.children.push(this.__currentElement),this.__applyCurrentDefaultPath());var i=this.__createElement(\"g\");e.appendChild(i),this.__currentElement=i}var n=this.__currentElement.getAttribute(\"transform\");n?n+=\" \":n=\"\",n+=t,this.__currentElement.setAttribute(\"transform\",n)},x.prototype.scale=function(t,e){void 0===e&&(e=t),this.__addTransform(f(\"scale({x},{y})\",{x:t,y:e}))},x.prototype.rotate=function(t){var e=180*t/Math.PI;this.__addTransform(f(\"rotate({angle},{cx},{cy})\",{angle:e,cx:0,cy:0}))},x.prototype.translate=function(t,e){this.__addTransform(f(\"translate({x},{y})\",{x:t,y:e}))},x.prototype.transform=function(t,e,i,n,r,o){this.__addTransform(f(\"matrix({a},{b},{c},{d},{e},{f})\",{a:t,b:e,c:i,d:n,e:r,f:o}))},x.prototype.beginPath=function(){var t;this.__currentDefaultPath=\"\",this.__currentPosition={},t=this.__createElement(\"path\",{},!0),this.__closestGroupOrSvg().appendChild(t),this.__currentElement=t},x.prototype.__applyCurrentDefaultPath=function(){var t=this.__currentElement;\"path\"===t.nodeName?t.setAttribute(\"d\",this.__currentDefaultPath):console.error(\"Attempted to apply path command to node\",t.nodeName)},x.prototype.__addPathCommand=function(t){this.__currentDefaultPath+=\" \",this.__currentDefaultPath+=t},x.prototype.moveTo=function(t,e){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.__currentPosition={x:t,y:e},this.__addPathCommand(f(\"M {x} {y}\",{x:t,y:e}))},x.prototype.closePath=function(){this.__currentDefaultPath&&this.__addPathCommand(\"Z\")},x.prototype.lineTo=function(t,e){this.__currentPosition={x:t,y:e},-1<this.__currentDefaultPath.indexOf(\"M\")?this.__addPathCommand(f(\"L {x} {y}\",{x:t,y:e})):this.__addPathCommand(f(\"M {x} {y}\",{x:t,y:e}))},x.prototype.bezierCurveTo=function(t,e,i,n,r,o){this.__currentPosition={x:r,y:o},this.__addPathCommand(f(\"C {cp1x} {cp1y} {cp2x} {cp2y} {x} {y}\",{cp1x:t,cp1y:e,cp2x:i,cp2y:n,x:r,y:o}))},x.prototype.quadraticCurveTo=function(t,e,i,n){this.__currentPosition={x:i,y:n},this.__addPathCommand(f(\"Q {cpx} {cpy} {x} {y}\",{cpx:t,cpy:e,x:i,y:n}))};var b=function(t){var e=Math.sqrt(t[0]*t[0]+t[1]*t[1]);return[t[0]/e,t[1]/e]};x.prototype.arcTo=function(t,e,i,n,r){var o=this.__currentPosition&&this.__currentPosition.x,s=this.__currentPosition&&this.__currentPosition.y;if(void 0!==o&&void 0!==s){if(r<0)throw new Error(\"IndexSizeError: The radius provided (\"+r+\") is negative.\");if(o===t&&s===e||t===i&&e===n||0===r)this.lineTo(t,e);else{var a=b([o-t,s-e]),l=b([i-t,n-e]);if(a[0]*l[1]!=a[1]*l[0]){var h=a[0]*l[0]+a[1]*l[1],u=Math.acos(Math.abs(h)),c=b([a[0]+l[0],a[1]+l[1]]),_=r/Math.sin(u/2),p=t+_*c[0],d=e+_*c[1],f=[-a[1],a[0]],v=[l[1],-l[0]],m=function(t){var e=t[0],i=t[1];return 0<=i?Math.acos(e):-Math.acos(e)},g=m(f),y=m(v);this.lineTo(p+f[0]*r,d+f[1]*r),this.arc(p,d,r,g,y)}else this.lineTo(t,e)}}},x.prototype.stroke=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"fill stroke markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"stroke\")},x.prototype.fill=function(){\"path\"===this.__currentElement.nodeName&&this.__currentElement.setAttribute(\"paint-order\",\"stroke fill markers\"),this.__applyCurrentDefaultPath(),this.__applyStyleToCurrentElement(\"fill\")},x.prototype.rect=function(t,e,i,n){\"path\"!==this.__currentElement.nodeName&&this.beginPath(),this.moveTo(t,e),this.lineTo(t+i,e),this.lineTo(t+i,e+n),this.lineTo(t,e+n),this.lineTo(t,e),this.closePath()},x.prototype.fillRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"fill\")},x.prototype.strokeRect=function(t,e,i,n){var r;r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n},!0),this.__closestGroupOrSvg().appendChild(r),this.__currentElement=r,this.__applyStyleToCurrentElement(\"stroke\")},x.prototype.__clearCanvas=function(){for(var t=this.__closestGroupOrSvg(),e=t.getAttribute(\"transform\"),i=this.__root.childNodes[1],n=i.childNodes,r=n.length-1;0<=r;r--)n[r]&&i.removeChild(n[r]);this.__currentElement=i,this.__groupStack=[],e&&this.__addTransform(e)},x.prototype.clearRect=function(t,e,i,n){if(0!==t||0!==e||i!==this.width||n!==this.height){var r,o=this.__closestGroupOrSvg();r=this.__createElement(\"rect\",{x:t,y:e,width:i,height:n,fill:\"#FFFFFF\"},!0),o.appendChild(r)}else this.__clearCanvas()},x.prototype.createLinearGradient=function(t,e,i,n){var r=this.__createElement(\"linearGradient\",{id:l(this.__ids),x1:t+\"px\",x2:i+\"px\",y1:e+\"px\",y2:n+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(r),new p(r,this)},x.prototype.createRadialGradient=function(t,e,i,n,r,o){var s=this.__createElement(\"radialGradient\",{id:l(this.__ids),cx:n+\"px\",cy:r+\"px\",r:o+\"px\",fx:t+\"px\",fy:e+\"px\",gradientUnits:\"userSpaceOnUse\"},!1);return this.__defs.appendChild(s),new p(s,this)},x.prototype.__parseFont=function(){var t=/^\\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),e={style:t[1]||\"normal\",size:t[4]||\"10px\",family:t[6]||\"sans-serif\",weight:t[3]||\"normal\",decoration:t[2]||\"normal\",href:null};return\"underline\"===this.__fontUnderline&&(e.decoration=\"underline\"),this.__fontHref&&(e.href=this.__fontHref),e},x.prototype.__wrapTextLink=function(t,e){if(t.href){var i=this.__createElement(\"a\");return i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",t.href),i.appendChild(e),i}return e},x.prototype.__applyText=function(t,e,i,n){var r,o,s,a,l=this.__parseFont(),h=this.__closestGroupOrSvg(),u=this.__createElement(\"text\",{\"font-family\":l.family,\"font-size\":l.size,\"font-style\":l.style,\"font-weight\":l.weight,\"text-decoration\":l.decoration,x:e,y:i,\"text-anchor\":(s=this.textAlign,a={left:\"start\",right:\"end\",center:\"middle\",start:\"start\",end:\"end\"},a[s]||a.start),\"dominant-baseline\":(r=this.textBaseline,o={alphabetic:\"alphabetic\",hanging:\"hanging\",top:\"text-before-edge\",bottom:\"text-after-edge\",middle:\"central\"},o[r]||o.alphabetic)},!0);u.appendChild(this.__document.createTextNode(t)),this.__currentElement=u,this.__applyStyleToCurrentElement(n),h.appendChild(this.__wrapTextLink(l,u))},x.prototype.fillText=function(t,e,i){this.__applyText(t,e,i,\"fill\")},x.prototype.strokeText=function(t,e,i){this.__applyText(t,e,i,\"stroke\")},x.prototype.measureText=function(t){return this.__ctx.font=this.font,this.__ctx.measureText(t)},x.prototype.arc=function(t,e,i,n,r,o){if(n!==r){n%=2*Math.PI,r%=2*Math.PI,n===r&&(r=(r+2*Math.PI-.001*(o?-1:1))%(2*Math.PI));var s=t+i*Math.cos(r),a=e+i*Math.sin(r),l=t+i*Math.cos(n),h=e+i*Math.sin(n),u=o?0:1,c=0,_=r-n;_<0&&(_+=2*Math.PI),c=o?_>Math.PI?0:1:_>Math.PI?1:0,this.lineTo(l,h),this.__addPathCommand(f(\"A {rx} {ry} {xAxisRotation} {largeArcFlag} {sweepFlag} {endX} {endY}\",{rx:i,ry:i,xAxisRotation:0,largeArcFlag:c,sweepFlag:u,endX:s,endY:a})),this.__currentPosition={x:s,y:a}}},x.prototype.clip=function(){var t=this.__closestGroupOrSvg(),e=this.__createElement(\"clipPath\"),i=l(this.__ids),n=this.__createElement(\"g\");this.__applyCurrentDefaultPath(),t.removeChild(this.__currentElement),e.setAttribute(\"id\",i),e.appendChild(this.__currentElement),this.__defs.appendChild(e),t.setAttribute(\"clip-path\",f(\"url(#{id})\",{id:i})),t.appendChild(n),this.__currentElement=n},x.prototype.drawImage=function(){var t,e,i,n,r,o,s,a,l,h,u,c,_,p,d=Array.prototype.slice.call(arguments),f=d[0],v=0,m=0;if(3===d.length)t=d[1],e=d[2],r=f.width,o=f.height,i=r,n=o;else if(5===d.length)t=d[1],e=d[2],i=d[3],n=d[4],r=f.width,o=f.height;else{if(9!==d.length)throw new Error(\"Inavlid number of arguments passed to drawImage: \"+arguments.length);v=d[1],m=d[2],r=d[3],o=d[4],t=d[5],e=d[6],i=d[7],n=d[8]}s=this.__closestGroupOrSvg(),this.__currentElement;var g=\"translate(\"+t+\", \"+e+\")\";if(f instanceof x){if((a=f.getSvg().cloneNode(!0)).childNodes&&1<a.childNodes.length){for(l=a.childNodes[0];l.childNodes.length;)p=l.childNodes[0].getAttribute(\"id\"),this.__ids[p]=p,this.__defs.appendChild(l.childNodes[0]);if(h=a.childNodes[1]){var y,b=h.getAttribute(\"transform\");y=b?b+\" \"+g:g,h.setAttribute(\"transform\",y),s.appendChild(h)}}}else\"IMG\"===f.nodeName?((u=this.__createElement(\"image\")).setAttribute(\"width\",i),u.setAttribute(\"height\",n),u.setAttribute(\"preserveAspectRatio\",\"none\"),(v||m||r!==f.width||o!==f.height)&&((c=this.__document.createElement(\"canvas\")).width=i,c.height=n,(_=c.getContext(\"2d\")).drawImage(f,v,m,r,o,0,0,i,n),f=c),u.setAttribute(\"transform\",g),u.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===f.nodeName?f.toDataURL():f.getAttribute(\"src\")),s.appendChild(u)):\"CANVAS\"===f.nodeName&&((u=this.__createElement(\"image\")).setAttribute(\"width\",i),u.setAttribute(\"height\",n),u.setAttribute(\"preserveAspectRatio\",\"none\"),(c=this.__document.createElement(\"canvas\")).width=i,c.height=n,(_=c.getContext(\"2d\")).imageSmoothingEnabled=!1,_.mozImageSmoothingEnabled=!1,_.oImageSmoothingEnabled=!1,_.webkitImageSmoothingEnabled=!1,_.drawImage(f,v,m,r,o,0,0,i,n),f=c,u.setAttribute(\"transform\",g),u.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",f.toDataURL()),s.appendChild(u))},x.prototype.createPattern=function(t,e){var i,n=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"pattern\"),r=l(this.__ids);return n.setAttribute(\"id\",r),n.setAttribute(\"width\",t.width),n.setAttribute(\"height\",t.height),\"CANVAS\"===t.nodeName||\"IMG\"===t.nodeName?((i=this.__document.createElementNS(\"http://www.w3.org/2000/svg\",\"image\")).setAttribute(\"width\",t.width),i.setAttribute(\"height\",t.height),i.setAttributeNS(\"http://www.w3.org/1999/xlink\",\"xlink:href\",\"CANVAS\"===t.nodeName?t.toDataURL():t.getAttribute(\"src\")),n.appendChild(i),this.__defs.appendChild(n)):t instanceof x&&(n.appendChild(t.__root.childNodes[1]),this.__defs.appendChild(n)),new d(n,this)},x.prototype.setLineDash=function(t){t&&0<t.length?this.lineDash=t.join(\",\"):this.lineDash=null},x.prototype.drawFocusRing=function(){},x.prototype.createImageData=function(){},x.prototype.getImageData=function(){},x.prototype.putImageData=function(){},x.prototype.globalCompositeOperation=function(){},x.prototype.setTransform=function(){},\"object\"==typeof window&&(window.C2S=x),\"object\"==typeof e&&\"object\"==typeof e.exports&&(e.exports=x)}()},function(t,e,i){var n,o=t(307),r=t(317),s=t(321),a=t(316),l=t(321),h=t(323),u=Function.prototype.bind,c=Object.defineProperty,_=Object.prototype.hasOwnProperty;n=function(t,e,i){var n,r=h(e)&&l(e.value);return delete(n=o(e)).writable,delete n.value,n.get=function(){return!i.overwriteDefinition&&_.call(this,t)?r:(e.value=u.call(r,i.resolveContext?i.resolveContext(this):this),c(this,t,e),this[t])},n},e.exports=function(t){var i=r(arguments[1]);return null!=i.resolveContext&&s(i.resolveContext),a(t,function(t,e){return n(e,t,i)})}},function(t,e,i){var a=t(304),l=t(317),h=t(310),u=t(324);(e.exports=function(t,e){var i,n,r,o,s;return arguments.length<2||\"string\"!=typeof t?(o=e,e=t,t=null):o=arguments[2],null==t?(i=r=!0,n=!1):(i=u.call(t,\"c\"),n=u.call(t,\"e\"),r=u.call(t,\"w\")),s={value:e,configurable:i,enumerable:n,writable:r},o?a(l(o),s):s}).gs=function(t,e,i){var n,r,o,s;return\"string\"!=typeof t?(o=i,i=e,e=t,t=null):o=arguments[3],null==e?e=void 0:h(e)?null==i?i=void 0:h(i)||(o=i,i=void 0):(o=e,e=i=void 0),null==t?r=!(n=!0):(n=u.call(t,\"c\"),r=u.call(t,\"e\")),s={get:e,set:i,configurable:n,enumerable:r},o?a(l(o),s):s}},function(t,e,i){var n=t(323);e.exports=function(){return n(this).length=0,this}},function(t,e,i){e.exports=t(292)()?Array.from:t(293)},function(t,e,i){e.exports=function(){var t,e,i=Array.from;return\"function\"==typeof i&&(e=i(t=[\"raz\",\"dwa\"]),Boolean(e&&e!==t&&\"dwa\"===e[1]))}},function(t,e,i){var p=t(337).iterator,d=t(294),f=t(295),v=t(302),m=t(321),g=t(323),y=t(312),b=t(327),x=Array.isArray,w=Function.prototype.call,k={configurable:!0,enumerable:!0,writable:!0,value:null},S=Object.defineProperty;e.exports=function(t){var e,i,n,r,o,s,a,l,h,u,c=arguments[1],_=arguments[2];if(t=Object(g(t)),y(c)&&m(c),this&&this!==Array&&f(this))e=this;else{if(!c){if(d(t))return 1!==(o=t.length)?Array.apply(null,t):((r=new Array(1))[0]=t[0],r);if(x(t)){for(r=new Array(o=t.length),i=0;i<o;++i)r[i]=t[i];return r}}r=[]}if(!x(t))if(void 0!==(h=t[p])){for(a=m(h).call(t),e&&(r=new e),l=a.next(),i=0;!l.done;)u=c?w.call(c,_,l.value,i):l.value,e?(k.value=u,S(r,i,k)):r[i]=u,l=a.next(),++i;o=i}else if(b(t)){for(o=t.length,e&&(r=new e),n=i=0;i<o;++i)u=t[i],i+1<o&&55296<=(s=u.charCodeAt(0))&&s<=56319&&(u+=t[++i]),u=c?w.call(c,_,u,n):u,e?(k.value=u,S(r,n,k)):r[n]=u,++n;o=n}if(void 0===o)for(o=v(t.length),e&&(r=new e(o)),i=0;i<o;++i)u=c?w.call(c,_,t[i],i):t[i],e?(k.value=u,S(r,i,k)):r[i]=u;return e&&(k.value=null,r.length=o),r}},function(t,e,i){var n=Object.prototype.toString,r=n.call(function(){return arguments}());e.exports=function(t){return n.call(t)===r}},function(t,e,i){var n=Object.prototype.toString,r=n.call(t(296));e.exports=function(t){return\"function\"==typeof t&&n.call(t)===r}},function(t,e,i){e.exports=function(){}},function(t,e,i){e.exports=function(){return this}()},function(t,e,i){e.exports=t(299)()?Math.sign:t(300)},function(t,e,i){e.exports=function(){var t=Math.sign;return\"function\"==typeof t&&1===t(10)&&-1===t(-20)}},function(t,e,i){e.exports=function(t){return t=Number(t),isNaN(t)||0===t?t:0<t?1:-1}},function(t,e,i){var n=t(298),r=Math.abs,o=Math.floor;e.exports=function(t){return isNaN(t)?0:0!==(t=Number(t))&&isFinite(t)?n(t)*o(r(t)):t}},function(t,e,i){var n=t(301),r=Math.max;e.exports=function(t){return r(0,n(t))}},function(t,e,i){var a=t(321),l=t(323),h=Function.prototype.bind,u=Function.prototype.call,c=Object.keys,_=Object.prototype.propertyIsEnumerable;e.exports=function(o,s){return function(i,n){var t,r=arguments[2],e=arguments[3];return i=Object(l(i)),a(n),t=c(i),e&&t.sort(\"function\"==typeof e?h.call(e,i):void 0),\"function\"!=typeof o&&(o=t[o]),u.call(o,t,function(t,e){return _.call(i,t)?u.call(n,r,i[t],t,i,e):s})}}},function(t,e,i){e.exports=t(305)()?Object.assign:t(306)},function(t,e,i){e.exports=function(){var t,e=Object.assign;return\"function\"==typeof e&&(e(t={foo:\"raz\"},{bar:\"dwa\"},{trzy:\"trzy\"}),t.foo+t.bar+t.trzy===\"razdwatrzy\")}},function(t,e,i){var s=t(313),a=t(323),l=Math.max;e.exports=function(e,i){var n,t,r,o=l(arguments.length,2);for(e=Object(a(e)),r=function(t){try{e[t]=i[t]}catch(t){n||(n=t)}},t=1;t<o;++t)i=arguments[t],s(i).forEach(r);if(void 0!==n)throw n;return e}},function(t,e,i){var o=t(291),s=t(304),a=t(323);e.exports=function(e){var t=Object(a(e)),i=arguments[1],n=Object(arguments[2]);if(t!==e&&!i)return t;var r={};return i?o(i,function(t){(n.ensure||t in e)&&(r[t]=e[t])}):s(r,e),r}},function(t,e,i){var n,r,o,s,a=Object.create;t(319)()||(n=t(320)),e.exports=n?1!==n.level?a:(s={configurable:(o={},!1),enumerable:(r={},!1),writable:!0,value:void 0},Object.getOwnPropertyNames(Object.prototype).forEach(function(t){o[t]=\"__proto__\"!==t?s:{configurable:!0,enumerable:!1,writable:!0,value:void 0}}),Object.defineProperties(r,o),Object.defineProperty(n,\"nullPolyfill\",{configurable:!1,enumerable:!1,writable:!1,value:r}),function(t,e){return a(null===t?r:t,e)}):a},function(t,e,i){e.exports=t(303)(\"forEach\")},function(t,e,i){e.exports=function(t){return\"function\"==typeof t}},function(t,e,i){var n=t(312),r={function:!0,object:!0};e.exports=function(t){return n(t)&&r[typeof t]||!1}},function(t,e,i){var n=t(296)();e.exports=function(t){return t!==n&&null!==t}},function(t,e,i){e.exports=t(314)()?Object.keys:t(315)},function(t,e,i){e.exports=function(){try{return Object.keys(\"primitive\"),!0}catch(t){return!1}}},function(t,e,i){var n=t(312),r=Object.keys;e.exports=function(t){return r(n(t)?Object(t):t)}},function(t,e,i){var n=t(321),a=t(309),l=Function.prototype.call;e.exports=function(t,r){var o={},s=arguments[2];return n(r),a(t,function(t,e,i,n){o[e]=l.call(r,s,t,e,i,n)}),o}},function(t,e,i){var n=t(312),r=Array.prototype.forEach,o=Object.create;e.exports=function(t){var e=o(null);return r.call(arguments,function(t){n(t)&&function(t,e){var i;for(i in t)e[i]=t[i]}(Object(t),e)}),e}},function(t,e,i){e.exports=t(319)()?Object.setPrototypeOf:t(320)},function(t,e,i){var n=Object.create,r=Object.getPrototypeOf,o={};e.exports=function(){var t=Object.setPrototypeOf,e=arguments[0]||n;return\"function\"==typeof t&&r(t(e(null),o))===o}},function(t,e,i){var r,n,o,s,a=t(311),l=t(323),h=Object.prototype.isPrototypeOf,u=Object.defineProperty,c={configurable:!0,enumerable:!1,writable:!0,value:void 0};r=function(t,e){if(l(t),null===e||a(e))return t;throw new TypeError(\"Prototype must be null or an object\")},e.exports=(n=function(){var t,e=Object.create(null),i={},n=Object.getOwnPropertyDescriptor(Object.prototype,\"__proto__\");if(n){try{(t=n.set).call(e,i)}catch(t){}if(Object.getPrototypeOf(e)===i)return{set:t,level:2}}return e.__proto__=i,Object.getPrototypeOf(e)===i?{level:2}:((e={}).__proto__=i,Object.getPrototypeOf(e)===i&&{level:1})}())?(2===n.level?n.set?(s=n.set,o=function(t,e){return s.call(r(t,e),e),t}):o=function(t,e){return r(t,e).__proto__=e,t}:o=function t(e,i){var n;return r(e,i),(n=h.call(t.nullPolyfill,e))&&delete t.nullPolyfill.__proto__,null===i&&(i=t.nullPolyfill),e.__proto__=i,n&&u(t.nullPolyfill,\"__proto__\",c),e},Object.defineProperty(o,\"level\",{configurable:!1,enumerable:!1,writable:!1,value:n.level})):null,t(308)},function(t,e,i){e.exports=function(t){if(\"function\"!=typeof t)throw new TypeError(t+\" is not a function\");return t}},function(t,e,i){var n=t(311);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not an Object\");return t}},function(t,e,i){var n=t(312);e.exports=function(t){if(!n(t))throw new TypeError(\"Cannot use null or undefined\");return t}},function(t,e,i){e.exports=t(325)()?String.prototype.contains:t(326)},function(t,e,i){var n=\"razdwatrzy\";e.exports=function(){return\"function\"==typeof n.contains&&!0===n.contains(\"dwa\")&&!1===n.contains(\"foo\")}},function(t,e,i){var n=String.prototype.indexOf;e.exports=function(t){return-1<n.call(this,t,arguments[1])}},function(t,e,i){var n=Object.prototype.toString,r=n.call(\"\");e.exports=function(t){return\"string\"==typeof t||t&&\"object\"==typeof t&&(t instanceof String||n.call(t)===r)||!1}},function(t,e,i){var n=Object.create(null),r=Math.random;e.exports=function(){for(var t;t=r().toString(36).slice(2),n[t];);return t}},function(t,e,i){var n,r=t(318),o=t(324),s=t(289),a=t(337),l=t(332),h=Object.defineProperty;n=e.exports=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");l.call(this,t),e=e?o.call(e,\"key+value\")?\"key+value\":o.call(e,\"key\")?\"key\":\"value\":\"value\",h(this,\"__kind__\",s(\"\",e))},r&&r(n,l),delete n.prototype.constructor,n.prototype=Object.create(l.prototype,{_resolve:s(function(t){return\"value\"===this.__kind__?this.__list__[t]:\"key+value\"===this.__kind__?[t,this.__list__[t]]:t})}),h(n.prototype,a.toStringTag,s(\"c\",\"Array Iterator\"))},function(t,e,i){var c=t(294),_=t(321),p=t(327),d=t(331),f=Array.isArray,v=Function.prototype.call,m=Array.prototype.some;e.exports=function(t,e){var i,n,r,o,s,a,l,h,u=arguments[2];if(f(t)||c(t)?i=\"array\":p(t)?i=\"string\":t=d(t),_(e),r=function(){o=!0},\"array\"!==i)if(\"string\"!==i)for(n=t.next();!n.done;){if(v.call(e,u,n.value,r),o)return;n=t.next()}else for(a=t.length,s=0;s<a&&(l=t[s],s+1<a&&55296<=(h=l.charCodeAt(0))&&h<=56319&&(l+=t[++s]),v.call(e,u,l,r),!o);++s);else m.call(t,function(t){return v.call(e,u,t,r),o})}},function(t,e,i){var n=t(294),r=t(327),o=t(329),s=t(334),a=t(335),l=t(337).iterator;e.exports=function(t){return\"function\"==typeof a(t)[l]?t[l]():n(t)?new o(t):r(t)?new s(t):new o(t)}},function(t,e,i){var n,r=t(290),o=t(304),s=t(321),a=t(323),l=t(289),h=t(288),u=t(337),c=Object.defineProperty,_=Object.defineProperties;e.exports=n=function(t,e){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");_(this,{__list__:l(\"w\",a(t)),__context__:l(\"w\",e),__nextIndex__:l(\"w\",0)}),e&&(s(e.on),e.on(\"_add\",this._onAdd),e.on(\"_delete\",this._onDelete),e.on(\"_clear\",this._onClear))},delete n.prototype.constructor,_(n.prototype,o({_next:l(function(){var t;if(this.__list__)return this.__redo__&&void 0!==(t=this.__redo__.shift())?t:this.__nextIndex__<this.__list__.length?this.__nextIndex__++:void this._unBind()}),next:l(function(){return this._createResult(this._next())}),_createResult:l(function(t){return void 0===t?{done:!0,value:void 0}:{done:!1,value:this._resolve(t)}}),_resolve:l(function(t){return this.__list__[t]}),_unBind:l(function(){this.__list__=null,delete this.__redo__,this.__context__&&(this.__context__.off(\"_add\",this._onAdd),this.__context__.off(\"_delete\",this._onDelete),this.__context__.off(\"_clear\",this._onClear),this.__context__=null)}),toString:l(function(){return\"[object \"+(this[u.toStringTag]||\"Object\")+\"]\"})},h({_onAdd:l(function(i){i>=this.__nextIndex__||(++this.__nextIndex__,this.__redo__?(this.__redo__.forEach(function(t,e){i<=t&&(this.__redo__[e]=++t)},this),this.__redo__.push(i)):c(this,\"__redo__\",l(\"c\",[i])))}),_onDelete:l(function(i){var t;i>=this.__nextIndex__||(--this.__nextIndex__,this.__redo__&&(-1!==(t=this.__redo__.indexOf(i))&&this.__redo__.splice(t,1),this.__redo__.forEach(function(t,e){i<t&&(this.__redo__[e]=--t)},this)))}),_onClear:l(function(){this.__redo__&&r.call(this.__redo__),this.__nextIndex__=0})}))),c(n.prototype,u.iterator,l(function(){return this}))},function(t,e,i){var n=t(294),r=t(312),o=t(327),s=t(337).iterator,a=Array.isArray;e.exports=function(t){return!(!r(t)||!a(t)&&!o(t)&&!n(t)&&\"function\"!=typeof t[s])}},function(t,e,i){var n,r=t(318),o=t(289),s=t(337),a=t(332),l=Object.defineProperty;n=e.exports=function(t){if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");t=String(t),a.call(this,t),l(this,\"__length__\",o(\"\",t.length))},r&&r(n,a),delete n.prototype.constructor,n.prototype=Object.create(a.prototype,{_next:o(function(){if(this.__list__)return this.__nextIndex__<this.__length__?this.__nextIndex__++:void this._unBind()}),_resolve:o(function(t){var e,i=this.__list__[t];return this.__nextIndex__===this.__length__?i:55296<=(e=i.charCodeAt(0))&&e<=56319?i+this.__list__[this.__nextIndex__++]:i})}),l(n.prototype,s.toStringTag,o(\"c\",\"String Iterator\"))},function(t,e,i){var n=t(333);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not iterable\");return t}},function(L,t,e){\n      /*!\n           * @overview es6-promise - a tiny implementation of Promises/A+.\n           * @copyright Copyright (c) 2014 Yehuda Katz, Tom Dale, Stefan Penner and contributors (Conversion to ES6 API by Jake Archibald)\n           * @license   Licensed under MIT license\n           *            See https://raw.githubusercontent.com/stefanpenner/es6-promise/master/LICENSE\n           * @version   v4.2.4+314e4831\n           */var i,n;i=this,n=function(){\"use strict\";function h(t){return\"function\"==typeof t}var i=Array.isArray?Array.isArray:function(t){return\"[object Array]\"===Object.prototype.toString.call(t)},n=0,e=void 0,r=void 0,a=function(t,e){_[n]=t,_[n+1]=e,2===(n+=2)&&(r?r(p):g())},t=\"undefined\"!=typeof window?window:void 0,o=t||{},s=o.MutationObserver||o.WebKitMutationObserver,l=\"undefined\"==typeof self&&\"undefined\"!=typeof process&&\"[object process]\"==={}.toString.call(process),u=\"undefined\"!=typeof Uint8ClampedArray&&\"undefined\"!=typeof importScripts&&\"undefined\"!=typeof MessageChannel;function c(){var t=setTimeout;return function(){return t(p,1)}}var _=new Array(1e3);function p(){for(var t=0;t<n;t+=2){var e=_[t],i=_[t+1];e(i),_[t]=void 0,_[t+1]=void 0}n=0}var d,f,v,m,g=void 0;function y(t,e){var i=this,n=new this.constructor(w);void 0===n[x]&&I(n);var r=i._state;if(r){var o=arguments[r-1];a(function(){return F(r,n,o,i._result)})}else j(i,n,t,e);return n}function b(t){if(t&&\"object\"==typeof t&&t.constructor===this)return t;var e=new this(w);return M(e,t),e}l?g=function(){return process.nextTick(p)}:s?(f=0,v=new s(p),m=document.createTextNode(\"\"),v.observe(m,{characterData:!0}),g=function(){m.data=f=++f%2}):u?((d=new MessageChannel).port1.onmessage=p,g=function(){return d.port2.postMessage(0)}):g=void 0===t&&\"function\"==typeof L?function(){try{var t=Function(\"return this\")().require(\"vertx\");return void 0!==(e=t.runOnLoop||t.runOnContext)?function(){e(p)}:c()}catch(t){return c()}}():c();var x=Math.random().toString(36).substring(2);function w(){}var k=void 0,S=1,C=2,T={error:null};function A(t){try{return t.then}catch(t){return T.error=t,T}}function E(t,e,i){var n,r,o,s;e.constructor===t.constructor&&i===y&&e.constructor.resolve===b?(o=t,(s=e)._state===S?z(o,s._result):s._state===C?P(o,s._result):j(s,void 0,function(t){return M(o,t)},function(t){return P(o,t)})):i===T?(P(t,T.error),T.error=null):void 0===i?z(t,e):h(i)?(n=e,r=i,a(function(e){var i=!1,t=function(t,e,i,n){try{t.call(e,i,n)}catch(t){return t}}(r,n,function(t){i||(i=!0,n!==t?M(e,t):z(e,t))},function(t){i||(i=!0,P(e,t))},e._label);!i&&t&&(i=!0,P(e,t))},t)):z(t,e)}function M(t,e){var i,n;t===e?P(t,new TypeError(\"You cannot resolve a promise with itself\")):(n=typeof(i=e),null===i||\"object\"!==n&&\"function\"!==n?z(t,e):E(t,e,A(e)))}function O(t){t._onerror&&t._onerror(t._result),N(t)}function z(t,e){t._state===k&&(t._result=e,t._state=S,0!==t._subscribers.length&&a(N,t))}function P(t,e){t._state===k&&(t._state=C,t._result=e,a(O,t))}function j(t,e,i,n){var r=t._subscribers,o=r.length;t._onerror=null,r[o]=e,r[o+S]=i,r[o+C]=n,0===o&&t._state&&a(N,t)}function N(t){var e=t._subscribers,i=t._state;if(0!==e.length){for(var n=void 0,r=void 0,o=t._result,s=0;s<e.length;s+=3)n=e[s],r=e[s+i],n?F(i,n,r,o):r(o);t._subscribers.length=0}}function F(t,e,i,n){var r=h(i),o=void 0,s=void 0,a=void 0,l=void 0;if(r){if((o=function(t,e){try{return t(e)}catch(t){return T.error=t,T}}(i,n))===T?(l=!0,s=o.error,o.error=null):a=!0,e===o)return void P(e,new TypeError(\"A promises callback cannot return that same promise.\"))}else o=n,a=!0;e._state!==k||(r&&a?M(e,o):l?P(e,s):t===S?z(e,o):t===C&&P(e,o))}var D=0;function I(t){t[x]=D++,t._state=void 0,t._result=void 0,t._subscribers=[]}var R=function(){function t(t,e){this._instanceConstructor=t,this.promise=new t(w),this.promise[x]||I(this.promise),i(e)?(this.length=e.length,this._remaining=e.length,this._result=new Array(this.length),0===this.length?z(this.promise,this._result):(this.length=this.length||0,this._enumerate(e),0===this._remaining&&z(this.promise,this._result))):P(this.promise,new Error(\"Array Methods must be provided an Array\"))}return t.prototype._enumerate=function(t){for(var e=0;this._state===k&&e<t.length;e++)this._eachEntry(t[e],e)},t.prototype._eachEntry=function(e,t){var i=this._instanceConstructor,n=i.resolve;if(n===b){var r=A(e);if(r===y&&e._state!==k)this._settledAt(e._state,t,e._result);else if(\"function\"!=typeof r)this._remaining--,this._result[t]=e;else if(i===B){var o=new i(w);E(o,e,r),this._willSettleAt(o,t)}else this._willSettleAt(new i(function(t){return t(e)}),t)}else this._willSettleAt(n(e),t)},t.prototype._settledAt=function(t,e,i){var n=this.promise;n._state===k&&(this._remaining--,t===C?P(n,i):this._result[e]=i),0===this._remaining&&z(n,this._result)},t.prototype._willSettleAt=function(t,e){var i=this;j(t,void 0,function(t){return i._settledAt(S,e,t)},function(t){return i._settledAt(C,e,t)})},t}(),B=function(){function e(t){this[x]=D++,this._result=this._state=void 0,this._subscribers=[],w!==t&&(\"function\"!=typeof t&&function(){throw new TypeError(\"You must pass a resolver function as the first argument to the promise constructor\")}(),this instanceof e?function(e,t){try{t(function(t){M(e,t)},function(t){P(e,t)})}catch(t){P(e,t)}}(this,t):function(){throw new TypeError(\"Failed to construct 'Promise': Please use the 'new' operator, this object constructor cannot be called as a function.\")}())}return e.prototype.catch=function(t){return this.then(null,t)},e.prototype.finally=function(e){var i=this.constructor;return this.then(function(t){return i.resolve(e()).then(function(){return t})},function(t){return i.resolve(e()).then(function(){throw t})})},e}();return B.prototype.then=y,B.all=function(t){return new R(this,t).promise},B.race=function(r){var o=this;return i(r)?new o(function(t,e){for(var i=r.length,n=0;n<i;n++)o.resolve(r[n]).then(t,e)}):new o(function(t,e){return e(new TypeError(\"You must pass an array to race.\"))})},B.resolve=b,B.reject=function(t){var e=new this(w);return P(e,t),e},B._setScheduler=function(t){r=t},B._setAsap=function(t){a=t},B._asap=a,B.polyfill=function(){var t=void 0;if(\"undefined\"!=typeof global)t=global;else if(\"undefined\"!=typeof self)t=self;else try{t=Function(\"return this\")()}catch(t){throw new Error(\"polyfill failed because global object is unavailable in this environment\")}var e=t.Promise;if(e){var i=null;try{i=Object.prototype.toString.call(e.resolve())}catch(t){}if(\"[object Promise]\"===i&&!e.cast)return}t.Promise=B},B.Promise=B},\"object\"==typeof e&&void 0!==t?t.exports=n():i.ES6Promise=n()},function(t,e,i){e.exports=t(338)()?Symbol:t(340)},function(t,e,i){var n={object:!0,symbol:!0};e.exports=function(){var t;if(\"function\"!=typeof Symbol)return!1;t=Symbol(\"test symbol\");try{String(t)}catch(t){return!1}return!!n[typeof Symbol.iterator]&&!!n[typeof Symbol.toPrimitive]&&!!n[typeof Symbol.toStringTag]}},function(t,e,i){e.exports=function(t){return!!t&&(\"symbol\"==typeof t||!!t.constructor&&\"Symbol\"===t.constructor.name&&\"Symbol\"===t[t.constructor.toStringTag])}},function(t,e,i){var n,r,o,s,a=t(289),l=t(341),h=Object.create,u=Object.defineProperties,c=Object.defineProperty,_=Object.prototype,p=h(null);if(\"function\"==typeof Symbol){n=Symbol;try{String(n()),s=!0}catch(t){}}var d,f=(d=h(null),function(t){for(var e,i,n=0;d[t+(n||\"\")];)++n;return d[t+=n||\"\"]=!0,c(_,e=\"@@\"+t,a.gs(null,function(t){i||(i=!0,c(this,e,a(t)),i=!1)})),e});o=function(t){if(this instanceof o)throw new TypeError(\"Symbol is not a constructor\");return r(t)},e.exports=r=function t(e){var i;if(this instanceof t)throw new TypeError(\"Symbol is not a constructor\");return s?n(e):(i=h(o.prototype),e=void 0===e?\"\":String(e),u(i,{__description__:a(\"\",e),__name__:a(\"\",f(e))}))},u(r,{for:a(function(t){return p[t]?p[t]:p[t]=r(String(t))}),keyFor:a(function(t){var e;for(e in l(t),p)if(p[e]===t)return e}),hasInstance:a(\"\",n&&n.hasInstance||r(\"hasInstance\")),isConcatSpreadable:a(\"\",n&&n.isConcatSpreadable||r(\"isConcatSpreadable\")),iterator:a(\"\",n&&n.iterator||r(\"iterator\")),match:a(\"\",n&&n.match||r(\"match\")),replace:a(\"\",n&&n.replace||r(\"replace\")),search:a(\"\",n&&n.search||r(\"search\")),species:a(\"\",n&&n.species||r(\"species\")),split:a(\"\",n&&n.split||r(\"split\")),toPrimitive:a(\"\",n&&n.toPrimitive||r(\"toPrimitive\")),toStringTag:a(\"\",n&&n.toStringTag||r(\"toStringTag\")),unscopables:a(\"\",n&&n.unscopables||r(\"unscopables\"))}),u(o.prototype,{constructor:a(r),toString:a(\"\",function(){return this.__name__})}),u(r.prototype,{toString:a(function(){return\"Symbol (\"+l(this).__description__+\")\"}),valueOf:a(function(){return l(this)})}),c(r.prototype,r.toPrimitive,a(\"\",function(){var t=l(this);return\"symbol\"==typeof t?t:t.toString()})),c(r.prototype,r.toStringTag,a(\"c\",\"Symbol\")),c(o.prototype,r.toStringTag,a(\"c\",r.prototype[r.toStringTag])),c(o.prototype,r.toPrimitive,a(\"c\",r.prototype[r.toPrimitive]))},function(t,e,i){var n=t(339);e.exports=function(t){if(!n(t))throw new TypeError(t+\" is not a symbol\");return t}},function(t,e,i){t(343)()||Object.defineProperty(t(297),\"WeakMap\",{value:t(345),configurable:!0,enumerable:!1,writable:!0})},function(t,e,i){e.exports=function(){var t,e;if(\"function\"!=typeof WeakMap)return!1;try{t=new WeakMap([[e={},\"one\"],[{},\"two\"],[{},\"three\"]])}catch(t){return!1}return\"[object WeakMap]\"===String(t)&&\"function\"==typeof t.set&&t.set({},1)===t&&\"function\"==typeof t.delete&&\"function\"==typeof t.has&&\"one\"===t.get(e)}},function(t,e,i){e.exports=\"function\"==typeof WeakMap&&\"[object WeakMap]\"===Object.prototype.toString.call(new WeakMap)},function(t,e,i){var n,r=t(318),o=t(322),s=t(323),a=t(328),l=t(289),h=t(331),u=t(330),c=t(337).toStringTag,_=t(344),p=Array.isArray,d=Object.defineProperty,f=Object.prototype.hasOwnProperty,v=Object.getPrototypeOf;e.exports=n=function(){var e,t=arguments[0];if(!(this instanceof n))throw new TypeError(\"Constructor requires 'new'\");return e=_&&r&&WeakMap!==n?r(new WeakMap,v(this)):this,null!=t&&(p(t)||(t=h(t))),d(e,\"__weakMapData__\",l(\"c\",\"$weakMap$\"+a())),t&&u(t,function(t){s(t),e.set(t[0],t[1])}),e},_&&(r&&r(n,WeakMap),n.prototype=Object.create(WeakMap.prototype,{constructor:l(n)})),Object.defineProperties(n.prototype,{delete:l(function(t){return!!f.call(o(t),this.__weakMapData__)&&(delete t[this.__weakMapData__],!0)}),get:l(function(t){if(f.call(o(t),this.__weakMapData__))return t[this.__weakMapData__]}),has:l(function(t){return f.call(o(t),this.__weakMapData__)}),set:l(function(t,e){return d(o(t),this.__weakMapData__,l(\"c\",e)),this}),toString:l(function(){return\"[object WeakMap]\"})}),d(n.prototype,c,l(\"c\",\"WeakMap\"))},function(t,e,i){var n,r;n=this,r=function(){\"use strict\";var l=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],h=function(t,e,i,n){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(+e||16,2),65535);var r=t,o=r;for(this._levelBounds=[4*r];r=Math.ceil(r/this.nodeSize),o+=r,this._levelBounds.push(4*o),1!==r;);this.ArrayType=i||Float64Array,this.IndexArrayType=o<16384?Uint16Array:Uint32Array;var s=l.indexOf(this.ArrayType),a=4*o*this.ArrayType.BYTES_PER_ELEMENT;if(s<0)throw new Error(\"Unexpected typed array class: \"+i+\".\");n&&n instanceof ArrayBuffer?(this.data=n,this._boxes=new this.ArrayType(this.data,8,4*o),this._indices=new this.IndexArrayType(this.data,8+a,o),this._pos=4*o,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+a+o*this.IndexArrayType.BYTES_PER_ELEMENT),this._boxes=new this.ArrayType(this.data,8,4*o),this._indices=new this.IndexArrayType(this.data,8+a,o),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+s]),new Uint16Array(this.data,2,1)[0]=e,new Uint32Array(this.data,4,1)[0]=t)};function C(t,e,i,n,r){var o=t[n];t[n]=t[r],t[r]=o;var s=4*n,a=4*r,l=e[s],h=e[s+1],u=e[s+2],c=e[s+3];e[s]=e[a],e[s+1]=e[a+1],e[s+2]=e[a+2],e[s+3]=e[a+3],e[a]=l,e[a+1]=h,e[a+2]=u,e[a+3]=c;var _=i[n];i[n]=i[r],i[r]=_}function T(t,e){var i=t^e,n=65535^i,r=65535^(t|e),o=t&(65535^e),s=i|n>>1,a=i>>1^i,l=r>>1^n&o>>1^r,h=i&r>>1^o>>1^o;a=(i=s)&(n=a)>>2^n&(i^n)>>2,l^=i&(r=l)>>2^n&(o=h)>>2,h^=n&r>>2^(i^n)&o>>2,a=(i=s=i&i>>2^n&n>>2)&(n=a)>>4^n&(i^n)>>4,l^=i&(r=l)>>4^n&(o=h)>>4,h^=n&r>>4^(i^n)&o>>4,l^=(i=s=i&i>>4^n&n>>4)&(r=l)>>8^(n=a)&(o=h)>>8;var u=t^e,c=(n=(h^=n&r>>8^(i^n)&o>>8)^h>>1)|65535^(u|(i=l^l>>1));return((c=1431655765&((c=858993459&((c=252645135&((c=16711935&(c|c<<8))|c<<4))|c<<2))|c<<1))<<1|(u=1431655765&((u=858993459&((u=252645135&((u=16711935&(u|u<<8))|u<<4))|u<<2))|u<<1)))>>>0}return h.from=function(t){if(!(t instanceof ArrayBuffer))throw new Error(\"Data must be an instance of ArrayBuffer.\");var e=new Uint8Array(t,0,2),i=e[0],n=e[1];if(251!==i)throw new Error(\"Data does not appear to be in a Flatbush format.\");if(n>>4!=3)throw new Error(\"Got v\"+(n>>4)+\" data when expected v3.\");var r=new Uint16Array(t,2,1),o=r[0],s=new Uint32Array(t,4,1),a=s[0];return new h(a,o,l[15&n],t)},h.prototype.add=function(t,e,i,n){var r=this._pos>>2;this._indices[r]=r,this._boxes[this._pos++]=t,this._boxes[this._pos++]=e,this._boxes[this._pos++]=i,this._boxes[this._pos++]=n,t<this.minX&&(this.minX=t),e<this.minY&&(this.minY=e),i>this.maxX&&(this.maxX=i),n>this.maxY&&(this.maxY=n)},h.prototype.finish=function(){var t=this;if(this._pos>>2!==this.numItems)throw new Error(\"Added \"+(this._pos>>2)+\" items when expected \"+this.numItems+\".\");for(var e=this.maxX-this.minX,i=this.maxY-this.minY,n=new Uint32Array(this.numItems),r=0;r<this.numItems;r++){var o=4*r,s=t._boxes[o++],a=t._boxes[o++],l=t._boxes[o++],h=t._boxes[o++],u=Math.floor(65535*((s+l)/2-t.minX)/e),c=Math.floor(65535*((a+h)/2-t.minY)/i);n[r]=T(u,c)}!function t(e,i,n,r,o){if(!(o<=r)){for(var s=e[r+o>>1],a=r-1,l=o+1;;){for(;e[++a]<s;);for(;e[--l]>s;);if(l<=a)break;C(e,i,n,a,l)}t(e,i,n,r,l),t(e,i,n,l+1,o)}}(n,this._boxes,this._indices,0,this.numItems-1);for(var _=0,p=0;_<this._levelBounds.length-1;_++)for(var d=t._levelBounds[_];p<d;){for(var f=1/0,v=1/0,m=-1/0,g=-1/0,y=p,b=0;b<this.nodeSize&&p<d;b++){var x=t._boxes[p++],w=t._boxes[p++],k=t._boxes[p++],S=t._boxes[p++];x<f&&(f=x),w<v&&(v=w),m<k&&(m=k),g<S&&(g=S)}t._indices[t._pos>>2]=y,t._boxes[t._pos++]=f,t._boxes[t._pos++]=v,t._boxes[t._pos++]=m,t._boxes[t._pos++]=g}},h.prototype.search=function(t,e,i,n,r){if(this._pos!==this._boxes.length)throw new Error(\"Data not yet indexed - call index.finish().\");for(var o=this._boxes.length-4,s=this._levelBounds.length-1,a=[],l=[];void 0!==o;){for(var h=Math.min(o+4*this.nodeSize,this._levelBounds[s]),u=o;u<h;u+=4){var c=this._indices[u>>2];i<this._boxes[u]||n<this._boxes[u+1]||t>this._boxes[u+2]||e>this._boxes[u+3]||(o<4*this.numItems?(void 0===r||r(c))&&l.push(c):(a.push(c),a.push(s-1)))}s=a.pop(),o=a.pop()}return l},h},\"object\"==typeof i&&void 0!==e?e.exports=r():n.Flatbush=r()},function(t,Yt,e){\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(o,a,t,x){\"use strict\";var s,l=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],e=a.createElement(\"div\"),i=\"function\",h=Math.round,w=Math.abs,k=Date.now;function u(t,e,i){return setTimeout(f(t,i),e)}function n(t,e,i){return!!Array.isArray(t)&&(c(t,i[e],i),!0)}function c(t,e,i){var n;if(t)if(t.forEach)t.forEach(e,i);else if(t.length!==x)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 r(n,t,e){var r=\"DEPRECATED METHOD: \"+t+\"\\n\"+e+\" AT \\n\";return function(){var t=new Error(\"get-stack-trace\"),e=t&&t.stack?t.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",i=o.console&&(o.console.warn||o.console.log);return i&&i.call(o.console,r,e),n.apply(this,arguments)}}s=\"function\"!=typeof Object.assign?function(t){if(t===x||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!==x&&null!==n)for(var r in n)n.hasOwnProperty(r)&&(e[r]=n[r])}return e}:Object.assign;var _=r(function(t,e,i){for(var n=Object.keys(e),r=0;r<n.length;)(!i||i&&t[n[r]]===x)&&(t[n[r]]=e[n[r]]),r++;return t},\"extend\",\"Use `assign`.\"),p=r(function(t,e){return _(t,e,!0)},\"merge\",\"Use `assign`.\");function d(t,e,i){var n,r=e.prototype;(n=t.prototype=Object.create(r)).constructor=t,n._super=r,i&&s(n,i)}function f(t,e){return function(){return t.apply(e,arguments)}}function v(t,e){return typeof t==i?t.apply(e&&e[0]||x,e):t}function m(t,e){return t===x?e:t}function g(e,t,i){c(C(t),function(t){e.addEventListener(t,i,!1)})}function y(e,t,i){c(C(t),function(t){e.removeEventListener(t,i,!1)})}function S(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function b(t,e){return-1<t.indexOf(e)}function C(t){return t.trim().split(/\\s+/g)}function T(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 A(t){return Array.prototype.slice.call(t,0)}function E(t,i,e){for(var n=[],r=[],o=0;o<t.length;){var s=i?t[o][i]:t[o];T(r,s)<0&&n.push(t[o]),r[o]=s,o++}return e&&(n=i?n.sort(function(t,e){return t[i]>e[i]}):n.sort()),n}function M(t,e){for(var i,n,r=e[0].toUpperCase()+e.slice(1),o=0;o<l.length;){if(i=l[o],(n=i?i+r:e)in t)return n;o++}return x}var O=1;function z(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||o}var P=\"ontouchstart\"in o,j=M(o,\"PointerEvent\")!==x,N=P&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),F=\"touch\",D=25,I=1,R=4,B=8,L=1,V=2,G=4,U=8,q=16,Y=V|G,X=U|q,H=Y|X,W=[\"x\",\"y\"],J=[\"clientX\",\"clientY\"];function Q(e,t){var i=this;this.manager=e,this.callback=t,this.element=e.element,this.target=e.options.inputTarget,this.domHandler=function(t){v(e.options.enable,[e])&&i.handler(t)},this.init()}function $(t,e,i){var n=i.pointers.length,r=i.changedPointers.length,o=e&I&&n-r==0,s=e&(R|B)&&n-r==0;i.isFirst=!!o,i.isFinal=!!s,o&&(t.session={}),i.eventType=e,function(t,e){var i=t.session,n=e.pointers,r=n.length;i.firstInput||(i.firstInput=K(e)),1<r&&!i.firstMultiple?i.firstMultiple=K(e):1===r&&(i.firstMultiple=!1);var o,s,a,l,h,u,c=i.firstInput,_=i.firstMultiple,p=_?_.center:c.center,d=e.center=Z(n);e.timeStamp=k(),e.deltaTime=e.timeStamp-c.timeStamp,e.angle=nt(p,d),e.distance=it(p,d),o=i,a=(s=e).center,l=o.offsetDelta||{},h=o.prevDelta||{},u=o.prevInput||{},s.eventType!==I&&u.eventType!==R||(h=o.prevDelta={x:u.deltaX||0,y:u.deltaY||0},l=o.offsetDelta={x:a.x,y:a.y}),s.deltaX=h.x+(a.x-l.x),s.deltaY=h.y+(a.y-l.y),e.offsetDirection=et(e.deltaX,e.deltaY);var f,v,m,g,y=tt(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=y.x,e.overallVelocityY=y.y,e.overallVelocity=w(y.x)>w(y.y)?y.x:y.y,e.scale=_?(m=_.pointers,it((g=n)[0],g[1],J)/it(m[0],m[1],J)):1,e.rotation=_?(f=_.pointers,nt((v=n)[1],v[0],J)+nt(f[1],f[0],J)):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,r,o,s=t.lastInterval||e,a=e.timeStamp-s.timeStamp;if(e.eventType!=B&&(D<a||s.velocity===x)){var l=e.deltaX-s.deltaX,h=e.deltaY-s.deltaY,u=tt(a,l,h);n=u.x,r=u.y,i=w(u.x)>w(u.y)?u.x:u.y,o=et(l,h),t.lastInterval=e}else i=s.velocity,n=s.velocityX,r=s.velocityY,o=s.direction;e.velocity=i,e.velocityX=n,e.velocityY=r,e.direction=o}(i,e);var b=t.element;S(e.srcEvent.target,b)&&(b=e.srcEvent.target),e.target=b}(t,i),t.emit(\"hammer.input\",i),t.recognize(i),t.session.prevInput=i}function K(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:k(),pointers:e,center:Z(e),deltaX:t.deltaX,deltaY:t.deltaY}}function Z(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 tt(t,e,i){return{x:e/t||0,y:i/t||0}}function et(t,e){return t===e?L:w(t)>=w(e)?t<0?V:G:e<0?U:q}function it(t,e,i){i||(i=W);var n=e[i[0]]-t[i[0]],r=e[i[1]]-t[i[1]];return Math.sqrt(n*n+r*r)}function nt(t,e,i){i||(i=W);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&&g(this.element,this.evEl,this.domHandler),this.evTarget&&g(this.target,this.evTarget,this.domHandler),this.evWin&&g(z(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&y(this.element,this.evEl,this.domHandler),this.evTarget&&y(this.target,this.evTarget,this.domHandler),this.evWin&&y(z(this.element),this.evWin,this.domHandler)}};var rt={mousedown:I,mousemove:2,mouseup:R},ot=\"mousedown\",st=\"mousemove mouseup\";function at(){this.evEl=ot,this.evWin=st,this.pressed=!1,Q.apply(this,arguments)}d(at,Q,{handler:function(t){var e=rt[t.type];e&I&&0===t.button&&(this.pressed=!0),2&e&&1!==t.which&&(e=R),this.pressed&&(e&R&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:\"mouse\",srcEvent:t}))}});var lt={pointerdown:I,pointermove:2,pointerup:R,pointercancel:B,pointerout:B},ht={2:F,3:\"pen\",4:\"mouse\",5:\"kinect\"},ut=\"pointerdown\",ct=\"pointermove pointerup pointercancel\";function _t(){this.evEl=ut,this.evWin=ct,Q.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}o.MSPointerEvent&&!o.PointerEvent&&(ut=\"MSPointerDown\",ct=\"MSPointerMove MSPointerUp MSPointerCancel\"),d(_t,Q,{handler:function(t){var e=this.store,i=!1,n=t.type.toLowerCase().replace(\"ms\",\"\"),r=lt[n],o=ht[t.pointerType]||t.pointerType,s=o==F,a=T(e,t.pointerId,\"pointerId\");r&I&&(0===t.button||s)?a<0&&(e.push(t),a=e.length-1):r&(R|B)&&(i=!0),a<0||(e[a]=t,this.callback(this.manager,r,{pointers:e,changedPointers:[t],pointerType:o,srcEvent:t}),i&&e.splice(a,1))}});var pt={touchstart:I,touchmove:2,touchend:R,touchcancel:B};function dt(){this.evTarget=\"touchstart\",this.evWin=\"touchstart touchmove touchend touchcancel\",this.started=!1,Q.apply(this,arguments)}d(dt,Q,{handler:function(t){var e=pt[t.type];if(e===I&&(this.started=!0),this.started){var i=function(t,e){var i=A(t.touches),n=A(t.changedTouches);return e&(R|B)&&(i=E(i.concat(n),\"identifier\",!0)),[i,n]}.call(this,t,e);e&(R|B)&&i[0].length-i[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:F,srcEvent:t})}}});var ft={touchstart:I,touchmove:2,touchend:R,touchcancel:B},vt=\"touchstart touchmove touchend touchcancel\";function mt(){this.evTarget=vt,this.targetIds={},Q.apply(this,arguments)}d(mt,Q,{handler:function(t){var e=ft[t.type],i=function(t,e){var i=A(t.touches),n=this.targetIds;if(e&(2|I)&&1===i.length)return n[i[0].identifier]=!0,[i,i];var r,o,s=A(t.changedTouches),a=[],l=this.target;if(o=i.filter(function(t){return S(t.target,l)}),e===I)for(r=0;r<o.length;)n[o[r].identifier]=!0,r++;for(r=0;r<s.length;)n[s[r].identifier]&&a.push(s[r]),e&(R|B)&&delete n[s[r].identifier],r++;return a.length?[E(o.concat(a),\"identifier\",!0),a]:void 0}.call(this,t,e);i&&this.callback(this.manager,e,{pointers:i[0],changedPointers:i[1],pointerType:F,srcEvent:t})}});var gt=2500;function yt(){Q.apply(this,arguments);var t=f(this.handler,this);this.touch=new mt(this.manager,t),this.mouse=new at(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function bt(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);-1<t&&n.splice(t,1)},gt)}}d(yt,Q,{handler:function(t,e,i){var n=i.pointerType==F,r=\"mouse\"==i.pointerType;if(!(r&&i.sourceCapabilities&&i.sourceCapabilities.firesTouchEvents)){if(n)(function(t,e){t&I?(this.primaryTouch=e.changedPointers[0].identifier,bt.call(this,e)):t&(R|B)&&bt.call(this,e)}).call(this,e,i);else if(r&&function(t){for(var e=t.srcEvent.clientX,i=t.srcEvent.clientY,n=0;n<this.lastTouches.length;n++){var r=this.lastTouches[n],o=Math.abs(e-r.x),s=Math.abs(i-r.y);if(o<=25&&s<=25)return!0}return!1}.call(this,i))return;this.callback(t,e,i)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var xt=M(e.style,\"touchAction\"),wt=xt!==x,kt=\"manipulation\",St=\"none\",Ct=\"pan-x\",Tt=\"pan-y\",At=function(){if(!wt)return!1;var e={},i=o.CSS&&o.CSS.supports;return[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach(function(t){e[t]=!i||o.CSS.supports(\"touch-action\",t)}),e}();function Et(t,e){this.manager=t,this.set(e)}Et.prototype={set:function(t){\"compute\"==t&&(t=this.compute()),wt&&this.manager.element.style&&At[t]&&(this.manager.element.style[xt]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var e=[];return c(this.manager.recognizers,function(t){v(t.options.enable,[t])&&(e=e.concat(t.getTouchAction()))}),function(t){if(b(t,St))return St;var e=b(t,Ct),i=b(t,Tt);return e&&i?St:e||i?e?Ct:Tt:b(t,kt)?kt:\"auto\"}(e.join(\" \"))},preventDefaults:function(t){var e=t.srcEvent,i=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var n=this.actions,r=b(n,St)&&!At.none,o=b(n,Tt)&&!At[Tt],s=b(n,Ct)&&!At[Ct];if(r){var a=1===t.pointers.length,l=t.distance<2,h=t.deltaTime<250;if(a&&l&&h)return}if(!s||!o)return r||o&&i&Y||s&&i&X?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var Mt=1;function Ot(t){this.options=s({},this.defaults,t||{}),this.id=O++,this.manager=null,this.options.enable=m(this.options.enable,!0),this.state=Mt,this.simultaneous={},this.requireFail=[]}function zt(t){return 16&t?\"cancel\":8&t?\"end\":4&t?\"move\":2&t?\"start\":\"\"}function Pt(t){return t==q?\"down\":t==U?\"up\":t==V?\"left\":t==G?\"right\":\"\"}function jt(t,e){var i=e.manager;return i?i.get(t):t}function Nt(){Ot.apply(this,arguments)}function Ft(){Nt.apply(this,arguments),this.pX=null,this.pY=null}function Dt(){Nt.apply(this,arguments)}function It(){Ot.apply(this,arguments),this._timer=null,this._input=null}function Rt(){Nt.apply(this,arguments)}function Bt(){Nt.apply(this,arguments)}function Lt(){Ot.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function Vt(t,e){return(e=e||{}).recognizers=m(e.recognizers,Vt.defaults.preset),new Gt(t,e)}function Gt(t,e){var i;this.options=s({},Vt.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||(j?_t:N?mt:P?yt:at))(i,$),this.touchAction=new Et(this,this.options.touchAction),Ut(this,!0),c(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 Ut(i,n){var r,o=i.element;o.style&&(c(i.options.cssProps,function(t,e){r=M(o.style,e),n?(i.oldCssProps[r]=o.style[r],o.style[r]=t):o.style[r]=i.oldCssProps[r]||\"\"}),n||(i.oldCssProps={}))}Ot.prototype={defaults:{},set:function(t){return s(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(n(t,\"recognizeWith\",this))return this;var e=this.simultaneous;return t=jt(t,this),e[t.id]||(e[t.id]=t).recognizeWith(this),this},dropRecognizeWith:function(t){return n(t,\"dropRecognizeWith\",this)||(t=jt(t,this),delete this.simultaneous[t.id]),this},requireFailure:function(t){if(n(t,\"requireFailure\",this))return this;var e=this.requireFail;return t=jt(t,this),-1===T(e,t)&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(n(t,\"dropRequireFailure\",this))return this;t=jt(t,this);var e=T(this.requireFail,t);return-1<e&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return 0<this.requireFail.length},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(e){var i=this,t=this.state;function n(t){i.manager.emit(t,e)}t<8&&n(i.options.event+zt(t)),n(i.options.event),e.additionalEvent&&n(e.additionalEvent),8<=t&&n(i.options.event+zt(t))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(this.requireFail[t].state&(32|Mt)))return!1;t++}return!0},recognize:function(t){var e=s({},t);if(!v(this.options.enable,[this,e]))return this.reset(),void(this.state=32);56&this.state&&(this.state=Mt),this.state=this.process(e),30&this.state&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},d(Nt,Ot,{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&&(i&B||!r)?16|e:n||r?i&R?8|e:2&e?4|e:2:32}}),d(Ft,Nt,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:H},getTouchAction:function(){var t=this.options.direction,e=[];return t&Y&&e.push(Tt),t&X&&e.push(Ct),e},directionTest:function(t){var e=this.options,i=!0,n=t.distance,r=t.direction,o=t.deltaX,s=t.deltaY;return r&e.direction||(e.direction&Y?(r=0===o?L:o<0?V:G,i=o!=this.pX,n=Math.abs(t.deltaX)):(r=0===s?L:s<0?U:q,i=s!=this.pY,n=Math.abs(t.deltaY))),t.direction=r,i&&n>e.threshold&&r&e.direction},attrTest:function(t){return Nt.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=Pt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),d(Dt,Nt,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[St]},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)}}),d(It,Ot,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[\"auto\"]},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||t.eventType&(R|B)&&!r)this.reset();else if(t.eventType&I)this.reset(),this._timer=u(function(){this.state=8,this.tryEmit()},e.time,this);else if(t.eventType&R)return 8;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){8===this.state&&(t&&t.eventType&R?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=k(),this.manager.emit(this.options.event,this._input)))}}),d(Rt,Nt,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[St]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||2&this.state)}}),d(Bt,Nt,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:Y|X,pointers:1},getTouchAction:function(){return Ft.prototype.getTouchAction.call(this)},attrTest:function(t){var e,i=this.options.direction;return i&(Y|X)?e=t.overallVelocity:i&Y?e=t.overallVelocityX:i&X&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&i&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&w(e)>this.options.velocity&&t.eventType&R},emit:function(t){var e=Pt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),d(Lt,Ot,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[kt]},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(),t.eventType&I&&0===this.count)return this.failTimeout();if(n&&r&&i){if(t.eventType!=R)return this.failTimeout();var o=!this.pTime||t.timeStamp-this.pTime<e.interval,s=!this.pCenter||it(this.pCenter,t.center)<e.posThreshold;this.pTime=t.timeStamp,this.pCenter=t.center,s&&o?this.count+=1:this.count=1,this._input=t;var a=this.count%e.taps;if(0===a)return this.hasRequireFailures()?(this._timer=u(function(){this.state=8,this.tryEmit()},e.interval,this),2):8}return 32},failTimeout:function(){return this._timer=u(function(){this.state=32},this.options.interval,this),32},reset:function(){clearTimeout(this._timer)},emit:function(){8==this.state&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),Vt.VERSION=\"2.0.7\",Vt.defaults={domEvents:!1,touchAction:\"compute\",enable:!0,inputTarget:null,inputClass:null,preset:[[Rt,{enable:!1}],[Dt,{enable:!1},[\"rotate\"]],[Bt,{direction:Y}],[Ft,{direction:Y},[\"swipe\"]],[Lt],[Lt,{event:\"doubletap\",taps:2},[\"tap\"]],[It]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}},Gt.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 o=0;o<n.length;)i=n[o],2===e.stopped||r&&i!=r&&!i.canRecognizeWith(r)?i.reset():i.recognize(t),!r&&14&i.state&&(r=e.curRecognizer=i),o++}},get:function(t){if(t instanceof Ot)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(n(t,\"add\",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),(t.manager=this).touchAction.update(),t},remove:function(t){if(n(t,\"remove\",this))return this;if(t=this.get(t)){var e=this.recognizers,i=T(e,t);-1!==i&&(e.splice(i,1),this.touchAction.update())}return this},on:function(t,e){if(t!==x&&e!==x){var i=this.handlers;return c(C(t),function(t){i[t]=i[t]||[],i[t].push(e)}),this}},off:function(t,e){if(t!==x){var i=this.handlers;return c(C(t),function(t){e?i[t]&&i[t].splice(T(i[t],e),1):delete i[t]}),this}},emit:function(t,e){var i,n,r;this.options.domEvents&&(i=t,n=e,(r=a.createEvent(\"Event\")).initEvent(i,!0,!0),(r.gesture=n).target.dispatchEvent(r));var o=this.handlers[t]&&this.handlers[t].slice();if(o&&o.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var s=0;s<o.length;)o[s](e),s++}},destroy:function(){this.element&&Ut(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},s(Vt,{INPUT_START:I,INPUT_MOVE:2,INPUT_END:R,INPUT_CANCEL:B,STATE_POSSIBLE:Mt,STATE_BEGAN:2,STATE_CHANGED:4,STATE_ENDED:8,STATE_RECOGNIZED:8,STATE_CANCELLED:16,STATE_FAILED:32,DIRECTION_NONE:L,DIRECTION_LEFT:V,DIRECTION_RIGHT:G,DIRECTION_UP:U,DIRECTION_DOWN:q,DIRECTION_HORIZONTAL:Y,DIRECTION_VERTICAL:X,DIRECTION_ALL:H,Manager:Gt,Input:Q,TouchAction:Et,TouchInput:mt,MouseInput:at,PointerEventInput:_t,TouchMouseInput:yt,SingleTouchInput:dt,Recognizer:Ot,AttrRecognizer:Nt,Tap:Lt,Pan:Ft,Swipe:Bt,Pinch:Dt,Rotate:Rt,Press:It,on:g,off:y,each:c,merge:p,extend:_,assign:s,inherit:d,bindFn:f,prefixed:M});var qt=void 0!==o?o:\"undefined\"!=typeof self?self:{};qt.Hammer=Vt,void 0!==Yt&&Yt.exports?Yt.exports=Vt:o.Hammer=Vt}(window,document)},function(t,e,i){var n,r,o=t(353);(r=n=i.Operator||(i.Operator={}))[r.Le=0]=\"Le\",r[r.Ge=1]=\"Ge\",r[r.Eq=2]=\"Eq\";var s=function(){function t(t,e,i){void 0===i&&(i=o.Strength.required),this._id=a++,this._operator=e,this._expression=t,this._strength=o.Strength.clip(i)}return t.Compare=function(t,e){return t.id-e.id},t.prototype.toString=function(){var t=this;return this._expression+\" \"+function(){switch(t._operator){case n.Le:return\"<=\";case n.Ge:return\">=\";case n.Eq:return\"==\"}}()+\" 0\"},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"expression\",{get:function(){return this._expression},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"op\",{get:function(){return this._operator},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"strength\",{get:function(){return this._strength},enumerable:!0,configurable:!0}),t}();i.Constraint=s;var a=0},function(t,e,i){var h=t(357),u=t(360),c=t(351),n=function(){function t(){var t=function(t){for(var e=0,i=function(){return 0},n=c.createMap(u.Variable.Compare),r=0,o=t.length;r<o;++r){var s=t[r];if(\"number\"==typeof s)e+=s;else if(s instanceof u.Variable)n.setDefault(s,i).second+=1;else{if(!(s instanceof Array))throw new Error(\"invalid Expression argument: \"+JSON.stringify(s));if(2!==s.length)throw new Error(\"array must have length 2\");var a=s[0],l=s[1];if(\"number\"!=typeof a)throw new Error(\"array item 0 must be a number\");if(!(l instanceof u.Variable))throw new Error(\"array item 1 must be a variable\");n.setDefault(l,i).second+=a}}return{terms:n,constant:e}}(arguments);this._terms=t.terms,this._constant=t.constant}return t.prototype.toString=function(){var e=[];h.forEach(this._terms,function(t){e.push([t.first,t.second])});for(var t=!0,i=\"\",n=0,r=e;n<r.length;n++){var o=r[n],s=o[0],a=o[1];t?(t=!1,i+=1==a?\"\"+s:-1==a?\"-\"+s:a+\"*\"+s):i+=1==a?\" + \"+s:-1==a?\" - \"+s:0<=a?\" + \"+a+s:\" - \"+-a+s}var l=this.constant;return l<0?i+=\" - \"+-l:0<l&&(i+=\" + \"+l),i},Object.defineProperty(t.prototype,\"terms\",{get:function(){return this._terms},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"constant\",{get:function(){return this._constant},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"value\",{get:function(){var e=this._constant;return h.forEach(this._terms,function(t){e+=t.first.value*t.second}),e},enumerable:!0,configurable:!0}),t}();i.Expression=n},function(t,e,i){\n      /*-----------------------------------------------------------------------------\n          | Copyright (c) 2014, Nucleic Development Team.\n          |\n          | Distributed under the terms of the Modified BSD License.\n          |\n          | The full license is in the file COPYING.txt, distributed with this software.\n          |----------------------------------------------------------------------------*/\n      function n(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}n(t(360)),n(t(349)),n(t(348)),n(t(353)),n(t(352))},function(t,e,i){var n=t(357);i.createMap=function(t){return new n.AssociativeArray(t)}},function(t,e,i){var g,n,r=t(360),a=t(349),y=t(348),b=t(353),o=t(351),s=t(357),l=function(){function t(){this._cnMap=o.createMap(y.Constraint.Compare),this._rowMap=o.createMap(h.Compare),this._varMap=o.createMap(r.Variable.Compare),this._editMap=o.createMap(r.Variable.Compare),this._infeasibleRows=[],this._objective=new k,this._artificial=null,this._idTick=0}return t.prototype.addConstraint=function(t){var e=this._cnMap.find(t);if(void 0!==e)throw new Error(\"duplicate constraint\");var i=this._createRow(t),n=i.row,r=i.tag,o=this._chooseSubject(n,r);if(o.type()===g.Invalid&&n.allDummies()){if(!x(n.constant())){for(var s=[],a=0,l=t.expression.terms._array;a<l.length;a++){var h=l[a];s.push(h.first.name)}var u=[\"LE\",\"GE\",\"EQ\"][t.op];throw new Error(\"unsatisfiable constraint [\"+s.join(\",\")+\"] operator: \"+u)}o=r.marker}if(o.type()===g.Invalid){if(!this._addWithArtificialVariable(n))throw new Error(\"unsatisfiable constraint\")}else n.solveFor(o),this._substitute(o,n),this._rowMap.insert(o,n);this._cnMap.insert(t,r),this._optimize(this._objective)},t.prototype.removeConstraint=function(t,e){void 0===e&&(e=!1);var i=this._cnMap.erase(t);if(void 0===i){if(e)return;throw new Error(\"unknown constraint\")}this._removeConstraintEffects(t,i.second);var n=i.second.marker,r=this._rowMap.erase(n);if(void 0===r){var o=this._getMarkerLeavingSymbol(n);if(o.type()===g.Invalid)throw new Error(\"failed to find leaving row\");(r=this._rowMap.erase(o)).second.solveForEx(o,n),this._substitute(n,r.second)}this._optimize(this._objective)},t.prototype.hasConstraint=function(t){return this._cnMap.contains(t)},t.prototype.addEditVariable=function(t,e){var i=this._editMap.find(t);if(void 0!==i)throw new Error(\"duplicate edit variable: \"+t.name);if((e=b.Strength.clip(e))===b.Strength.required)throw new Error(\"bad required strength\");var n=new a.Expression(t),r=new y.Constraint(n,y.Operator.Eq,e);this.addConstraint(r);var o=this._cnMap.find(r).second,s={tag:o,constraint:r,constant:0};this._editMap.insert(t,s)},t.prototype.removeEditVariable=function(t,e){void 0===e&&(e=!1);var i=this._editMap.erase(t);if(void 0===i){if(e)return;throw new Error(\"unknown edit variable: \"+t.name)}this.removeConstraint(i.second.constraint,e)},t.prototype.hasEditVariable=function(t){return this._editMap.contains(t)},t.prototype.suggestValue=function(t,e){var i=this._editMap.find(t);if(void 0===i)throw new Error(\"unknown edit variable: \"+t.name);var n=this._rowMap,r=i.second,o=e-r.constant;r.constant=e;var s=r.tag.marker,a=n.find(s);if(void 0!==a)return a.second.add(-o)<0&&this._infeasibleRows.push(s),void this._dualOptimize();var l=r.tag.other;if(void 0!==(a=n.find(l)))return a.second.add(o)<0&&this._infeasibleRows.push(l),void this._dualOptimize();for(var h=0,u=n.size();h<u;++h){var c=n.itemAt(h),_=c.second,p=_.coefficientFor(s);0!==p&&_.add(o*p)<0&&c.first.type()!==g.External&&this._infeasibleRows.push(c.first)}this._dualOptimize()},t.prototype.updateVariables=function(){for(var t=this._varMap,e=this._rowMap,i=0,n=t.size();i<n;++i){var r=t.itemAt(i),o=e.find(r.second),s=0;void 0!==o&&-0===(s=o.second.constant())&&(s=0),r.first.setValue(s)}},t.prototype.getConstraints=function(){var e=[];return s.forEach(this._cnMap,function(t){e.push(t.first)}),e},Object.defineProperty(t.prototype,\"numConstraints\",{get:function(){return this._cnMap.size()},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"numEditVariables\",{get:function(){return this._editMap.size()},enumerable:!0,configurable:!0}),t.prototype._getVarSymbol=function(t){var e=this;return this._varMap.setDefault(t,function(){return e._makeSymbol(g.External)}).second},t.prototype._createRow=function(t){for(var e=t.expression,i=new k(e.constant),n=e.terms,r=0,o=n.size();r<o;++r){var s=n.itemAt(r);if(!x(s.second)){var a=this._getVarSymbol(s.first),l=this._rowMap.find(a);void 0!==l?i.insertRow(l.second,s.second):i.insertSymbol(a,s.second)}}var h=this._objective,u=t.strength,c={marker:w,other:w};switch(t.op){case y.Operator.Le:case y.Operator.Ge:var _=t.op===y.Operator.Le?1:-1,p=this._makeSymbol(g.Slack);if(c.marker=p,i.insertSymbol(p,_),u<b.Strength.required){var d=this._makeSymbol(g.Error);c.other=d,i.insertSymbol(d,-_),h.insertSymbol(d,u)}break;case y.Operator.Eq:if(u<b.Strength.required){var f=this._makeSymbol(g.Error),v=this._makeSymbol(g.Error);c.marker=f,c.other=v,i.insertSymbol(f,-1),i.insertSymbol(v,1),h.insertSymbol(f,u),h.insertSymbol(v,u)}else{var m=this._makeSymbol(g.Dummy);c.marker=m,i.insertSymbol(m)}}return i.constant()<0&&i.reverseSign(),{row:i,tag:c}},t.prototype._chooseSubject=function(t,e){for(var i=t.cells(),n=0,r=i.size();n<r;++n){var o=i.itemAt(n);if(o.first.type()===g.External)return o.first}var s=e.marker.type();return(s===g.Slack||s===g.Error)&&t.coefficientFor(e.marker)<0?e.marker:((s=e.other.type())===g.Slack||s===g.Error)&&t.coefficientFor(e.other)<0?e.other:w},t.prototype._addWithArtificialVariable=function(t){var e=this._makeSymbol(g.Slack);this._rowMap.insert(e,t.copy()),this._artificial=t.copy(),this._optimize(this._artificial);var i=x(this._artificial.constant());this._artificial=null;var n=this._rowMap.erase(e);if(void 0!==n){var r=n.second;if(r.isConstant())return i;var o=this._anyPivotableSymbol(r);if(o.type()===g.Invalid)return!1;r.solveForEx(e,o),this._substitute(o,r),this._rowMap.insert(o,r)}for(var s=this._rowMap,a=0,l=s.size();a<l;++a)s.itemAt(a).second.removeSymbol(e);return this._objective.removeSymbol(e),i},t.prototype._substitute=function(t,e){for(var i=this._rowMap,n=0,r=i.size();n<r;++n){var o=i.itemAt(n);o.second.substitute(t,e),o.second.constant()<0&&o.first.type()!==g.External&&this._infeasibleRows.push(o.first)}this._objective.substitute(t,e),this._artificial&&this._artificial.substitute(t,e)},t.prototype._optimize=function(t){for(;;){var e=this._getEnteringSymbol(t);if(e.type()===g.Invalid)return;var i=this._getLeavingSymbol(e);if(i.type()===g.Invalid)throw new Error(\"the objective is unbounded\");var n=this._rowMap.erase(i).second;n.solveForEx(i,e),this._substitute(e,n),this._rowMap.insert(e,n)}},t.prototype._dualOptimize=function(){for(var t=this._rowMap,e=this._infeasibleRows;0!==e.length;){var i=e.pop(),n=t.find(i);if(void 0!==n&&n.second.constant()<0){var r=this._getDualEnteringSymbol(n.second);if(r.type()===g.Invalid)throw new Error(\"dual optimize failed\");var o=n.second;t.erase(i),o.solveForEx(i,r),this._substitute(r,o),t.insert(r,o)}}},t.prototype._getEnteringSymbol=function(t){for(var e=t.cells(),i=0,n=e.size();i<n;++i){var r=e.itemAt(i),o=r.first;if(r.second<0&&o.type()!==g.Dummy)return o}return w},t.prototype._getDualEnteringSymbol=function(t){for(var e=Number.MAX_VALUE,i=w,n=t.cells(),r=0,o=n.size();r<o;++r){var s=n.itemAt(r),a=s.first,l=s.second;if(0<l&&a.type()!==g.Dummy){var h=this._objective.coefficientFor(a),u=h/l;u<e&&(e=u,i=a)}}return i},t.prototype._getLeavingSymbol=function(t){for(var e=Number.MAX_VALUE,i=w,n=this._rowMap,r=0,o=n.size();r<o;++r){var s=n.itemAt(r),a=s.first;if(a.type()!==g.External){var l=s.second,h=l.coefficientFor(t);if(h<0){var u=-l.constant()/h;u<e&&(e=u,i=a)}}}return i},t.prototype._getMarkerLeavingSymbol=function(t){for(var e=Number.MAX_VALUE,i=e,n=e,r=w,o=r,s=r,a=r,l=this._rowMap,h=0,u=l.size();h<u;++h){var c=l.itemAt(h),_=c.second,p=_.coefficientFor(t);if(0!==p){var d=c.first;if(d.type()===g.External)a=d;else if(p<0){var f=-_.constant()/p;f<i&&(i=f,o=d)}else{var f=_.constant()/p;f<n&&(n=f,s=d)}}}return o!==r?o:s!==r?s:a},t.prototype._removeConstraintEffects=function(t,e){e.marker.type()===g.Error&&this._removeMarkerEffects(e.marker,t.strength),e.other.type()===g.Error&&this._removeMarkerEffects(e.other,t.strength)},t.prototype._removeMarkerEffects=function(t,e){var i=this._rowMap.find(t);void 0!==i?this._objective.insertRow(i.second,-e):this._objective.insertSymbol(t,-e)},t.prototype._anyPivotableSymbol=function(t){for(var e=t.cells(),i=0,n=e.size();i<n;++i){var r=e.itemAt(i),o=r.first.type();if(o===g.Slack||o===g.Error)return r.first}return w},t.prototype._makeSymbol=function(t){return new h(t,this._idTick++)},t}();function x(t){return t<0?-t<1e-8:t<1e-8}i.Solver=l,(n=g||(g={}))[n.Invalid=0]=\"Invalid\",n[n.External=1]=\"External\",n[n.Slack=2]=\"Slack\",n[n.Error=3]=\"Error\",n[n.Dummy=4]=\"Dummy\";var h=function(){function t(t,e){this._id=e,this._type=t}return t.Compare=function(t,e){return t.id()-e.id()},t.prototype.id=function(){return this._id},t.prototype.type=function(){return this._type},t}(),w=new h(g.Invalid,-1),k=function(){function e(t){void 0===t&&(t=0),this._cellMap=o.createMap(h.Compare),this._constant=t}return e.prototype.cells=function(){return this._cellMap},e.prototype.constant=function(){return this._constant},e.prototype.isConstant=function(){return this._cellMap.empty()},e.prototype.allDummies=function(){for(var t=this._cellMap,e=0,i=t.size();e<i;++e){var n=t.itemAt(e);if(n.first.type()!==g.Dummy)return!1}return!0},e.prototype.copy=function(){var t=new e(this._constant);return t._cellMap=this._cellMap.copy(),t},e.prototype.add=function(t){return this._constant+=t},e.prototype.insertSymbol=function(t,e){void 0===e&&(e=1);var i=this._cellMap.setDefault(t,function(){return 0});x(i.second+=e)&&this._cellMap.erase(t)},e.prototype.insertRow=function(t,e){void 0===e&&(e=1),this._constant+=t._constant*e;for(var i=t._cellMap,n=0,r=i.size();n<r;++n){var o=i.itemAt(n);this.insertSymbol(o.first,o.second*e)}},e.prototype.removeSymbol=function(t){this._cellMap.erase(t)},e.prototype.reverseSign=function(){this._constant=-this._constant;for(var t=this._cellMap,e=0,i=t.size();e<i;++e){var n=t.itemAt(e);n.second=-n.second}},e.prototype.solveFor=function(t){var e=this._cellMap,i=e.erase(t),n=-1/i.second;this._constant*=n;for(var r=0,o=e.size();r<o;++r)e.itemAt(r).second*=n},e.prototype.solveForEx=function(t,e){this.insertSymbol(t,-1),this.solveFor(e)},e.prototype.coefficientFor=function(t){var e=this._cellMap.find(t);return void 0!==e?e.second:0},e.prototype.substitute=function(t,e){var i=this._cellMap.erase(t);void 0!==i&&this.insertRow(e,i.second)},e}()},function(t,e,i){!function(e){function t(t,e,i,n){void 0===n&&(n=1);var r=0;return r+=1e6*Math.max(0,Math.min(1e3,t*n)),r+=1e3*Math.max(0,Math.min(1e3,e*n)),r+=Math.max(0,Math.min(1e3,i*n))}e.create=t,e.required=t(1e3,1e3,1e3),e.strong=t(1,0,0),e.medium=t(0,1,0),e.weak=t(0,0,1),e.clip=function(t){return Math.max(0,Math.min(e.required,t))}}(i.Strength||(i.Strength={}))},function(t,e,i){var l=t(358);function o(t,e,i){for(var n,r,o=0,s=t.length;0<s;)i(t[r=o+(n=s>>1)],e)<0?(o=r+1,s-=n+1):s=n;return o}i.lowerBound=o,i.binarySearch=function(t,e,i){var n=o(t,e,i);if(n===t.length)return-1;var r=t[n];return 0!==i(r,e)?-1:n},i.binaryFind=function(t,e,i){var n=o(t,e,i);if(n!==t.length){var r=t[n];if(0===i(r,e))return r}},i.asSet=function(t,e){var i=l.asArray(t),n=i.length;if(n<=1)return i;i.sort(e);for(var r=[i[0]],o=1,s=0;o<n;++o){var a=i[o];0!==e(r[s],a)&&(r.push(a),++s)}return r},i.setIsDisjoint=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length;n<o&&r<s;){var a=i(t[n],e[r]);if(a<0)++n;else{if(!(0<a))return!1;++r}}return!0},i.setIsSubset=function(t,e,i){var n=t.length,r=e.length;if(r<n)return!1;for(var o=0,s=0;o<n&&s<r;){var a=i(t[o],e[s]);if(a<0)return!1;0<a||++o,++s}return!(o<n)},i.setUnion=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u?a.push(h):(a.push(l),++n),++r)}for(;n<o;)a.push(t[n]),++n;for(;r<s;)a.push(e[r]),++r;return a},i.setIntersection=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?++n:(0<u||(a.push(l),++n),++r)}return a},i.setDifference=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u||++n,++r)}for(;n<o;)a.push(t[n]),++n;return a},i.setSymmetricDifference=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l,h);u<0?(a.push(l),++n):(0<u?a.push(h):++n,++r)}for(;n<o;)a.push(t[n]),++n;for(;r<s;)a.push(e[r]),++r;return a}},function(t,e,i){var n=t(358),r=function(){function t(){this._array=[]}return t.prototype.size=function(){return this._array.length},t.prototype.empty=function(){return 0===this._array.length},t.prototype.itemAt=function(t){return this._array[t]},t.prototype.takeAt=function(t){return this._array.splice(t,1)[0]},t.prototype.clear=function(){this._array=[]},t.prototype.swap=function(t){var e=this._array;this._array=t._array,t._array=e},t.prototype.__iter__=function(){return n.iter(this._array)},t.prototype.__reversed__=function(){return n.reversed(this._array)},t}();i.ArrayBase=r},function(t,e,i){\n      /*-----------------------------------------------------------------------------\n          | Copyright (c) 2014, Nucleic Development Team.\n          |\n          | Distributed under the terms of the Modified BSD License.\n          |\n          | The full license is in the file COPYING.txt, distributed with this software.\n          |----------------------------------------------------------------------------*/\n      var n,r=this&&this.__extends||(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])},function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)}),s=t(359),o=t(355),a=t(354),l=t(358),h=function(n){function o(t){var i,e=n.call(this)||this;return e._compare=t,e._wrapped=(i=t,function(t,e){return i(t.first,e)}),e}return r(o,n),o.prototype.comparitor=function(){return this._compare},o.prototype.indexOf=function(t){return a.binarySearch(this._array,t,this._wrapped)},o.prototype.contains=function(t){return 0<=a.binarySearch(this._array,t,this._wrapped)},o.prototype.find=function(t){return a.binaryFind(this._array,t,this._wrapped)},o.prototype.setDefault=function(t,e){var i=this._array,n=a.lowerBound(i,t,this._wrapped);if(n===i.length){var r=new s.Pair(t,e());return i.push(r),r}var o=i[n];if(0!==this._compare(o.first,t)){var r=new s.Pair(t,e());return i.splice(n,0,r),r}return o},o.prototype.insert=function(t,e){var i=this._array,n=a.lowerBound(i,t,this._wrapped);if(n===i.length){var r=new s.Pair(t,e);return i.push(r),r}var o=i[n];if(0!==this._compare(o.first,t)){var r=new s.Pair(t,e);return i.splice(n,0,r),r}return o.second=e,o},o.prototype.update=function(t){var e=this;t instanceof o?this._array=function(t,e,i){for(var n=0,r=0,o=t.length,s=e.length,a=[];n<o&&r<s;){var l=t[n],h=e[r],u=i(l.first,h.first);u<0?(a.push(l.copy()),++n):(0<u?a.push(h.copy()):(a.push(h.copy()),++n),++r)}for(;n<o;)a.push(t[n].copy()),++n;for(;r<s;)a.push(e[r].copy()),++r;return a}(this._array,t._array,this._compare):l.forEach(t,function(t){e.insert(t.first,t.second)})},o.prototype.erase=function(t){var e=this._array,i=a.binarySearch(e,t,this._wrapped);if(!(i<0))return e.splice(i,1)[0]},o.prototype.copy=function(){for(var t=new o(this._compare),e=t._array,i=this._array,n=0,r=i.length;n<r;++n)e.push(i[n].copy());return t},o}(o.ArrayBase);i.AssociativeArray=h},function(t,e,i){function n(t){for(var e in t)i.hasOwnProperty(e)||(i[e]=t[e])}n(t(354)),n(t(355)),n(t(356)),n(t(358)),n(t(359))},function(t,e,i){var n=function(){function t(t,e){void 0===e&&(e=0),this._array=t,this._index=Math.max(0,Math.min(e,t.length))}return t.prototype.__next__=function(){return this._array[this._index++]},t.prototype.__iter__=function(){return this},t}();i.ArrayIterator=n;var r=function(){function t(t,e){void 0===e&&(e=t.length),this._array=t,this._index=Math.max(0,Math.min(e,t.length))}return t.prototype.__next__=function(){return this._array[--this._index]},t.prototype.__iter__=function(){return this},t}();i.ReverseArrayIterator=r,i.iter=function(t){return t instanceof Array?new n(t):t.__iter__()},i.reversed=function(t){return t instanceof Array?new r(t):t.__reversed__()},i.next=function(t){return t.__next__()},i.asArray=function(t){if(t instanceof Array)return t.slice();for(var e,i=[],n=t.__iter__();void 0!==(e=n.__next__());)i.push(e);return i},i.forEach=function(t,e){if(t instanceof Array){for(var i=0,n=t.length;i<n;++i)if(!1===e(t[i]))return}else for(var r,o=t.__iter__();void 0!==(r=o.__next__());)if(!1===e(r))return},i.map=function(t,e){var i=[];if(t instanceof Array)for(var n=0,r=t.length;n<r;++n)i.push(e(t[n]));else for(var o,s=t.__iter__();void 0!==(o=s.__next__());)i.push(e(o));return i},i.filter=function(t,e){var i,n=[];if(t instanceof Array)for(var r=0,o=t.length;r<o;++r)i=t[r],e(i)&&n.push(i);else for(var s=t.__iter__();void 0!==(i=s.__next__());)e(i)&&n.push(i);return n}},function(t,e,i){var n=function(){function t(t,e){this.first=t,this.second=e}return t.prototype.copy=function(){return new t(this.first,this.second)},t}();i.Pair=n},function(t,e,i){var n=function(){function t(t){void 0===t&&(t=\"\"),this._value=0,this._context=null,this._id=r++,this._name=t}return t.Compare=function(t,e){return t.id-e.id},t.prototype.toString=function(){return this._name},Object.defineProperty(t.prototype,\"id\",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(t.prototype,\"name\",{get:function(){return this._name},enumerable:!0,configurable:!0}),t.prototype.setName=function(t){this._name=t},Object.defineProperty(t.prototype,\"context\",{get:function(){return this._context},enumerable:!0,configurable:!0}),t.prototype.setContext=function(t){this._context=t},Object.defineProperty(t.prototype,\"value\",{get:function(){return this._value},enumerable:!0,configurable:!0}),t.prototype.setValue=function(t){this._value=t},t}();i.Variable=n;var r=0},function(t,e,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 u,U={},o=U,q=\"en-US\",Y=null,r=\"0,0\";function n(t){this._value=t}function p(t){var e,i=\"\";for(e=0;e<t;e++)i+=\"0\";return i}function X(t,e,i,n){var r,o,s,a,l,h,u,c,_=Math.pow(10,e);return o=-1<t.toFixed(0).search(\"e\")?(s=e,c=t.toString(),a=c.split(\"e\")[0],u=c.split(\"e\")[1],l=a.split(\".\")[0],h=a.split(\".\")[1]||\"\",c=l+h+p(u-h.length),0<s&&(c+=\".\"+p(s)),c):(i(t*_)/_).toFixed(e),n&&(r=new RegExp(\"0{1,\"+n+\"}$\"),o=o.replace(r,\"\")),o}function s(t,e,i){var n,r,o,s,a,l,h,u,c,_;return-1<e.indexOf(\"$\")?n=function(t,e,i){var n,r,o=e,s=o.indexOf(\"$\"),a=o.indexOf(\"(\"),l=o.indexOf(\"+\"),h=o.indexOf(\"-\"),u=\"\",c=\"\";if(-1===o.indexOf(\"$\")?\"infix\"===U[q].currency.position?(c=U[q].currency.symbol,U[q].currency.spaceSeparated&&(c=\" \"+c+\" \")):U[q].currency.spaceSeparated&&(u=\" \"):-1<o.indexOf(\" $\")?(u=\" \",o=o.replace(\" $\",\"\")):-1<o.indexOf(\"$ \")?(u=\" \",o=o.replace(\"$ \",\"\")):o=o.replace(\"$\",\"\"),r=d(t,o,i,c),-1===e.indexOf(\"$\"))switch(U[q].currency.position){case\"postfix\":-1<r.indexOf(\")\")?((r=r.split(\"\")).splice(-1,0,u+U[q].currency.symbol),r=r.join(\"\")):r=r+u+U[q].currency.symbol;break;case\"infix\":break;case\"prefix\":-1<r.indexOf(\"(\")||-1<r.indexOf(\"-\")?(r=r.split(\"\"),n=Math.max(a,h)+1,r.splice(n,0,U[q].currency.symbol+u),r=r.join(\"\")):r=U[q].currency.symbol+u+r;break;default:throw Error('Currency position should be among [\"prefix\", \"infix\", \"postfix\"]')}else s<=1?-1<r.indexOf(\"(\")||-1<r.indexOf(\"+\")||-1<r.indexOf(\"-\")?(r=r.split(\"\"),n=1,(s<a||s<l||s<h)&&(n=0),r.splice(n,0,U[q].currency.symbol+u),r=r.join(\"\")):r=U[q].currency.symbol+u+r:-1<r.indexOf(\")\")?((r=r.split(\"\")).splice(-1,0,u+U[q].currency.symbol),r=r.join(\"\")):r=r+u+U[q].currency.symbol;return r}(t,e,i):-1<e.indexOf(\"%\")?(l=t,u=i,_=\"\",l*=100,-1<(h=e).indexOf(\" %\")?(_=\" \",h=h.replace(\" %\",\"\")):h=h.replace(\"%\",\"\"),-1<(c=d(l,h,u)).indexOf(\")\")?((c=c.split(\"\")).splice(-1,0,_+\"%\"),c=c.join(\"\")):c=c+_+\"%\",n=c):-1<e.indexOf(\":\")?(r=t,o=Math.floor(r/60/60),s=Math.floor((r-60*o*60)/60),a=Math.round(r-60*o*60-60*s),n=o+\":\"+(s<10?\"0\"+s:s)+\":\"+(a<10?\"0\"+a:a)):n=d(t,e,i),n}function d(t,e,i,n){var r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x,w,k=!1,S=!1,C=!1,T=\"\",A=!1,E=!1,M=!1,O=!1,z=!1,P=\"\",j=\"\",N=Math.abs(t),F=[\"B\",\"KiB\",\"MiB\",\"GiB\",\"TiB\",\"PiB\",\"EiB\",\"ZiB\",\"YiB\"],D=[\"B\",\"KB\",\"MB\",\"GB\",\"TB\",\"PB\",\"EB\",\"ZB\",\"YB\"],I=\"\",R=!1,B=!1;if(0===t&&null!==Y)return Y;if(!isFinite(t))return\"\"+t;if(0===e.indexOf(\"{\")){var L=e.indexOf(\"}\");if(-1===L)throw Error('Format should also contain a \"}\"');f=e.slice(1,L),e=e.slice(L+1)}else f=\"\";if(e.indexOf(\"}\")===e.length-1){var V=e.indexOf(\"{\");if(-1===V)throw Error('Format should also contain a \"{\"');v=e.slice(V+1,-1),e=e.slice(0,V+1)}else v=\"\";if(w=-1===e.indexOf(\".\")?e.match(/([0-9]+).*/):e.match(/([0-9]+)\\..*/),x=null===w?-1:w[1].length,-1!==e.indexOf(\"-\")&&(R=!0),-1<e.indexOf(\"(\")?(k=!0,e=e.slice(1,-1)):-1<e.indexOf(\"+\")&&(S=!0,e=e.replace(/\\+/g,\"\")),-1<e.indexOf(\"a\")){if(p=e.split(\".\")[0].match(/[0-9]+/g)||[\"0\"],p=parseInt(p[0],10),A=0<=e.indexOf(\"aK\"),E=0<=e.indexOf(\"aM\"),M=0<=e.indexOf(\"aB\"),O=0<=e.indexOf(\"aT\"),z=A||E||M||O,-1<e.indexOf(\" a\")?(T=\" \",e=e.replace(\" a\",\"\")):e=e.replace(\"a\",\"\"),l=Math.floor(Math.log(N)/Math.LN10)+1,u=0==(u=l%3)?3:u,p&&0!==N&&(h=Math.floor(Math.log(N)/Math.LN10)+1-p,c=3*~~((Math.min(p,l)-u)/3),N/=Math.pow(10,c),-1===e.indexOf(\".\")&&3<p))for(e+=\"[.]\",y=(y=0===h?0:3*~~(h/3)-h)<0?y+3:y,r=0;r<y;r++)e+=\"0\";Math.floor(Math.log(Math.abs(t))/Math.LN10)+1!==p&&(N>=Math.pow(10,12)&&!z||O?(T+=U[q].abbreviations.trillion,t/=Math.pow(10,12)):N<Math.pow(10,12)&&N>=Math.pow(10,9)&&!z||M?(T+=U[q].abbreviations.billion,t/=Math.pow(10,9)):N<Math.pow(10,9)&&N>=Math.pow(10,6)&&!z||E?(T+=U[q].abbreviations.million,t/=Math.pow(10,6)):(N<Math.pow(10,6)&&N>=Math.pow(10,3)&&!z||A)&&(T+=U[q].abbreviations.thousand,t/=Math.pow(10,3)))}if(-1<e.indexOf(\"b\"))for(-1<e.indexOf(\" b\")?(P=\" \",e=e.replace(\" b\",\"\")):e=e.replace(\"b\",\"\"),a=0;a<=F.length;a++)if(o=Math.pow(1024,a),s=Math.pow(1024,a+1),o<=t&&t<s){P+=F[a],0<o&&(t/=o);break}if(-1<e.indexOf(\"d\"))for(-1<e.indexOf(\" d\")?(P=\" \",e=e.replace(\" d\",\"\")):e=e.replace(\"d\",\"\"),a=0;a<=D.length;a++)if(o=Math.pow(1e3,a),s=Math.pow(1e3,a+1),o<=t&&t<s){P+=D[a],0<o&&(t/=o);break}if(-1<e.indexOf(\"o\")&&(-1<e.indexOf(\" o\")?(j=\" \",e=e.replace(\" o\",\"\")):e=e.replace(\"o\",\"\"),U[q].ordinal&&(j+=U[q].ordinal(t))),-1<e.indexOf(\"[.]\")&&(C=!0,e=e.replace(\"[.]\",\".\")),_=t.toString().split(\".\")[0],d=e.split(\".\")[1],m=e.indexOf(\",\"),d){if(-1!==d.indexOf(\"*\")?I=X(t,t.toString().split(\".\")[1].length,i):-1<d.indexOf(\"[\")?(d=(d=d.replace(\"]\",\"\")).split(\"[\"),I=X(t,d[0].length+d[1].length,i,d[1].length)):I=X(t,d.length,i),_=I.split(\".\")[0],I.split(\".\")[1].length){var G=n?T+n:U[q].delimiters.decimal;I=G+I.split(\".\")[1]}else I=\"\";C&&0===Number(I.slice(1))&&(I=\"\")}else _=X(t,null,i);return-1<_.indexOf(\"-\")&&(_=_.slice(1),B=!0),_.length<x&&(_=new Array(x-_.length+1).join(\"0\")+_),-1<m&&(_=_.toString().replace(/(\\d)(?=(\\d{3})+(?!\\d))/g,\"$1\"+U[q].delimiters.thousands)),0===e.indexOf(\".\")&&(_=\"\"),g=e.indexOf(\"(\"),b=e.indexOf(\"-\"),f+(g<b?(k&&B?\"(\":\"\")+(R&&B||!k&&B?\"-\":\"\"):(R&&B||!k&&B?\"-\":\"\")+(k&&B?\"(\":\"\"))+(!B&&S&&0!==t?\"+\":\"\")+_+I+(j||\"\")+(T&&!n?T:\"\")+(P||\"\")+(k&&B?\")\":\"\")+v}function a(t,e){U[t]=e}function l(t){var e=U[q=t].defaults;e&&e.format&&u.defaultFormat(e.format),e&&e.currencyFormat&&u.defaultCurrencyFormat(e.currencyFormat)}void 0!==e&&e.exports,(u=function(t){return u.isNumbro(t)?t=t.value():0===t||void 0===t?t=0:Number(t)||(t=u.fn.unformat(t)),new n(Number(t))}).version=\"1.6.2\",u.isNumbro=function(t){return t instanceof n},u.setLanguage=function(t,e){console.warn(\"`setLanguage` is deprecated since version 1.6.0. Use `setCulture` instead\");var i=t,n=t.split(\"-\")[0],r=null;o[i]||(Object.keys(o).forEach(function(t){r||t.split(\"-\")[0]!==n||(r=t)}),i=r||e||\"en-US\"),l(i)},u.setCulture=function(t,e){var i=t,n=t.split(\"-\")[1],r=null;U[i]||(n&&Object.keys(U).forEach(function(t){r||t.split(\"-\")[1]!==n||(r=t)}),i=r||e||\"en-US\"),l(i)},u.language=function(t,e){if(console.warn(\"`language` is deprecated since version 1.6.0. Use `culture` instead\"),!t)return q;if(t&&!e){if(!o[t])throw new Error(\"Unknown language : \"+t);l(t)}return!e&&o[t]||a(t,e),u},u.culture=function(t,e){if(!t)return q;if(t&&!e){if(!U[t])throw new Error(\"Unknown culture : \"+t);l(t)}return!e&&U[t]||a(t,e),u},u.languageData=function(t){if(console.warn(\"`languageData` is deprecated since version 1.6.0. Use `cultureData` instead\"),!t)return o[q];if(!o[t])throw new Error(\"Unknown language : \"+t);return o[t]},u.cultureData=function(t){if(!t)return U[q];if(!U[t])throw new Error(\"Unknown culture : \"+t);return U[t]},u.culture(\"en-US\",{delimiters:{thousands:\",\",decimal:\".\"},abbreviations:{thousand:\"k\",million:\"m\",billion:\"b\",trillion:\"t\"},ordinal:function(t){var e=t%10;return 1==~~(t%100/10)?\"th\":1===e?\"st\":2===e?\"nd\":3===e?\"rd\":\"th\"},currency:{symbol:\"$\",position:\"prefix\"},defaults:{currencyFormat:\",0000 a\"},formats:{fourDigits:\"0000 a\",fullWithTwoDecimals:\"$ ,0.00\",fullWithTwoDecimalsNoCurrency:\",0.00\"}}),u.languages=function(){return console.warn(\"`languages` is deprecated since version 1.6.0. Use `cultures` instead\"),o},u.cultures=function(){return U},u.zeroFormat=function(t){Y=\"string\"==typeof t?t:null},u.defaultFormat=function(t){r=\"string\"==typeof t?t:\"0.0\"},u.defaultCurrencyFormat=function(t){},u.validate=function(t,e){var i,n,r,o,s,a,l,h;if(\"string\"!=typeof t&&(t+=\"\",console.warn&&console.warn(\"Numbro.js: Value is not string. It has been co-erced to: \",t)),(t=t.trim()).match(/^\\d+$/))return!0;if(\"\"===t)return!1;try{l=u.cultureData(e)}catch(t){l=u.cultureData(u.culture())}return r=l.currency.symbol,s=l.abbreviations,i=l.delimiters.decimal,n=\".\"===l.delimiters.thousands?\"\\\\.\":l.delimiters.thousands,!(null!==(h=t.match(/^[^\\d]+/))&&(t=t.substr(1),h[0]!==r)||null!==(h=t.match(/[^\\d]+$/))&&(t=t.slice(0,-1),h[0]!==s.thousand&&h[0]!==s.million&&h[0]!==s.billion&&h[0]!==s.trillion)||(a=new RegExp(n+\"{2}\"),t.match(/[^\\d.,]/g)||2<(o=t.split(i)).length||(o.length<2?!o[0].match(/^\\d+.*\\d$/)||o[0].match(a):1===o[0].length?!o[0].match(/^\\d+$/)||o[0].match(a)||!o[1].match(/^\\d+$/):!o[0].match(/^\\d+.*\\d$/)||o[0].match(a)||!o[1].match(/^\\d+$/))))},e.exports={format:function(t,e,i,n){return null!=i&&i!==u.culture()&&u.setCulture(i),s(Number(t),null!=e?e:r,null==n?Math.round:n)}}},function(t,e,i){var l=t(382),h=t(380),n=t(384),u=t(379),c=t(370),_=t(375);function p(t,e){if(!(this instanceof p))return new p(t);e=e||function(t){if(t)throw t};var i=l(t);if(\"object\"==typeof i){var n=p.projections.get(i.projName);if(n){if(i.datumCode&&\"none\"!==i.datumCode){var r=c[i.datumCode];r&&(i.datum_params=r.towgs84?r.towgs84.split(\",\"):null,i.ellps=r.ellipse,i.datumName=r.datumName?r.datumName:i.datumCode)}i.k0=i.k0||1,i.axis=i.axis||\"enu\";var o=u.sphere(i.a,i.b,i.rf,i.ellps,i.sphere),s=u.eccentricity(o.a,o.b,o.rf,i.R_A),a=i.datum||_(i.datumCode,i.datum_params,o.a,o.b,s.es,s.ep2);h(this,i),h(this,n),this.a=o.a,this.b=o.b,this.rf=o.rf,this.sphere=o.sphere,this.es=s.es,this.e=s.e,this.ep2=s.ep2,this.datum=a,this.init(),e(null,this)}else e(t)}else e(t)}(p.projections=n).start(),e.exports=p},function(t,e,i){e.exports=function(t,e,i){var n,r,o,s=i.x,a=i.y,l=i.z||0,h={};for(o=0;o<3;o++)if(!e||2!==o||void 0!==i.z)switch(0===o?(n=s,r=\"x\"):1===o?(n=a,r=\"y\"):(n=l,r=\"z\"),t.axis[o]){case\"e\":h[r]=n;break;case\"w\":h[r]=-n;break;case\"n\":h[r]=n;break;case\"s\":h[r]=-n;break;case\"u\":void 0!==i[r]&&(h.z=n);break;case\"d\":void 0!==i[r]&&(h.z=-n);break;default:return null}return h}},function(t,e,i){var n=2*Math.PI,r=t(367);e.exports=function(t){return Math.abs(t)<=3.14159265359?t:t-r(t)*n}},function(t,e,i){e.exports=function(t,e,i){var n=t*e;return i/Math.sqrt(1-n*n)}},function(t,e,i){var a=Math.PI/2;e.exports=function(t,e){for(var i,n,r=.5*t,o=a-2*Math.atan(e),s=0;s<=15;s++)if(i=t*Math.sin(o),n=a-2*Math.atan(e*Math.pow((1-i)/(1+i),r))-o,o+=n,Math.abs(n)<=1e-10)return o;return-9999}},function(t,e,i){e.exports=function(t){return t<0?-1:1}},function(t,e,i){e.exports=function(t){var e={x:t[0],y:t[1]};return 2<t.length&&(e.z=t[2]),3<t.length&&(e.m=t[3]),e}},function(t,e,i){var o=Math.PI/2;e.exports=function(t,e,i){var n=t*i,r=.5*t;return n=Math.pow((1-n)/(1+n),r),Math.tan(.5*(o-e))/n}},function(t,e,i){i.wgs84={towgs84:\"0,0,0\",ellipse:\"WGS84\",datumName:\"WGS84\"},i.ch1903={towgs84:\"674.374,15.056,405.346\",ellipse:\"bessel\",datumName:\"swiss\"},i.ggrs87={towgs84:\"-199.87,74.79,246.62\",ellipse:\"GRS80\",datumName:\"Greek_Geodetic_Reference_System_1987\"},i.nad83={towgs84:\"0,0,0\",ellipse:\"GRS80\",datumName:\"North_American_Datum_1983\"},i.nad27={nadgrids:\"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat\",ellipse:\"clrk66\",datumName:\"North_American_Datum_1927\"},i.potsdam={towgs84:\"606.0,23.0,413.0\",ellipse:\"bessel\",datumName:\"Potsdam Rauenberg 1950 DHDN\"},i.carthage={towgs84:\"-263.0,6.0,431.0\",ellipse:\"clark80\",datumName:\"Carthage 1934 Tunisia\"},i.hermannskogel={towgs84:\"653.0,-212.0,449.0\",ellipse:\"bessel\",datumName:\"Hermannskogel\"},i.ire65={towgs84:\"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15\",ellipse:\"mod_airy\",datumName:\"Ireland 1965\"},i.rassadiran={towgs84:\"-133.63,-157.5,-158.62\",ellipse:\"intl\",datumName:\"Rassadiran\"},i.nzgd49={towgs84:\"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993\",ellipse:\"intl\",datumName:\"New Zealand Geodetic Datum 1949\"},i.osgb36={towgs84:\"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894\",ellipse:\"airy\",datumName:\"Airy 1830\"},i.s_jtsk={towgs84:\"589,76,480\",ellipse:\"bessel\",datumName:\"S-JTSK (Ferro)\"},i.beduaram={towgs84:\"-106,-87,188\",ellipse:\"clrk80\",datumName:\"Beduaram\"},i.gunung_segara={towgs84:\"-403,684,41\",ellipse:\"bessel\",datumName:\"Gunung Segara Jakarta\"},i.rnb72={towgs84:\"106.869,-52.2978,103.724,-0.33657,0.456955,-1.84218,1\",ellipse:\"intl\",datumName:\"Reseau National Belge 1972\"}},function(t,e,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\"},i.WGS84={a:6378137,rf:298.257223563,ellipseName:\"WGS 84\"},i.sphere={a:6370997,b:6370997,ellipseName:\"Normal Sphere (r=6370997)\"}},function(t,e,i){i.greenwich=0,i.lisbon=-9.131906111111,i.paris=2.337229166667,i.bogota=-74.080916666667,i.madrid=-3.687938888889,i.rome=12.452333333333,i.bern=7.439583333333,i.jakarta=106.807719444444,i.ferro=-17.666666666667,i.brussels=4.367975,i.stockholm=18.058277777778,i.athens=23.7163375,i.oslo=10.722916666667},function(t,e,i){i.ft={to_meter:.3048},i[\"us-ft\"]={to_meter:1200/3937}},function(t,e,i){var n=t(362),r=t(387),o=n(\"WGS84\");function s(t,e,i){var n;return Array.isArray(i)?(n=r(t,e,i),3===i.length?[n.x,n.y,n.z]:[n.x,n.y]):r(t,e,i)}function a(t){return t instanceof n?t:t.oProj?t.oProj:n(t)}e.exports=function(e,i,t){e=a(e);var n,r=!1;return void 0===i?(i=e,e=o,r=!0):(void 0!==i.x||Array.isArray(i))&&(t=i,i=e,e=o,r=!0),i=a(i),t?s(e,i,t):(n={forward:function(t){return s(e,i,t)},inverse:function(t){return s(i,e,t)}},r&&(n.oProj=i),n)}},function(t,e,i){var a=484813681109536e-20;e.exports=function(t,e,i,n,r,o){var s={datum_type:4};return t&&\"none\"===t&&(s.datum_type=5),e&&(s.datum_params=e.map(parseFloat),0===s.datum_params[0]&&0===s.datum_params[1]&&0===s.datum_params[2]||(s.datum_type=1),3<s.datum_params.length&&(0===s.datum_params[3]&&0===s.datum_params[4]&&0===s.datum_params[5]&&0===s.datum_params[6]||(s.datum_type=2,s.datum_params[3]*=a,s.datum_params[4]*=a,s.datum_params[5]*=a,s.datum_params[6]=s.datum_params[6]/1e6+1))),s.a=i,s.b=n,s.es=r,s.ep2=o,s}},function(t,e,i){var k=Math.PI/2;i.compareDatums=function(t,e){return t.datum_type===e.datum_type&&!(t.a!==e.a||5e-11<Math.abs(this.es-e.es))&&(1===t.datum_type?this.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]:2!==t.datum_type||t.datum_params[0]===e.datum_params[0]&&t.datum_params[1]===e.datum_params[1]&&t.datum_params[2]===e.datum_params[2]&&t.datum_params[3]===e.datum_params[3]&&t.datum_params[4]===e.datum_params[4]&&t.datum_params[5]===e.datum_params[5]&&t.datum_params[6]===e.datum_params[6])},i.geodeticToGeocentric=function(t,e,i){var n,r,o,s,a=t.x,l=t.y,h=t.z?t.z:0;if(l<-k&&-1.001*k<l)l=-k;else if(k<l&&l<1.001*k)l=k;else if(l<-k||k<l)return null;return a>Math.PI&&(a-=2*Math.PI),r=Math.sin(l),s=Math.cos(l),o=r*r,{x:((n=i/Math.sqrt(1-e*o))+h)*s*Math.cos(a),y:(n+h)*s*Math.sin(a),z:(n*(1-e)+h)*r}},i.geocentricToGeodetic=function(t,e,i,n){var r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b=t.x,x=t.y,w=t.z?t.z:0;if(r=Math.sqrt(b*b+x*x),o=Math.sqrt(b*b+x*x+w*w),r/i<1e-12){if(m=0,o/i<1e-12)return g=k,y=-n,{x:t.x,y:t.y,z:t.z}}else m=Math.atan2(x,b);for(s=w/o,a=r/o,l=1/Math.sqrt(1-e*(2-e)*a*a),c=a*(1-e)*l,_=s*l,v=0;v++,u=i/Math.sqrt(1-e*_*_),h=e*u/(u+(y=r*c+w*_-u*(1-e*_*_))),l=1/Math.sqrt(1-h*(2-h)*a*a),f=(d=s*l)*c-(p=a*(1-h)*l)*_,c=p,_=d,1e-24<f*f&&v<30;);return g=Math.atan(d/Math.abs(p)),{x:m,y:g,z:y}},i.geocentricToWgs84=function(t,e,i){if(1===e)return{x:t.x+i[0],y:t.y+i[1],z:t.z+i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6];return{x:h*(t.x-l*t.y+a*t.z)+n,y:h*(l*t.x+t.y-s*t.z)+r,z:h*(-a*t.x+s*t.y+t.z)+o}}},i.geocentricFromWgs84=function(t,e,i){if(1===e)return{x:t.x-i[0],y:t.y-i[1],z:t.z-i[2]};if(2===e){var n=i[0],r=i[1],o=i[2],s=i[3],a=i[4],l=i[5],h=i[6],u=(t.x-n)/h,c=(t.y-r)/h,_=(t.z-o)/h;return{x:u+l*c-a*_,y:-l*u+c+s*_,z:a*u-s*c+_}}}},function(t,e,i){var n=t(376);function r(t){return 1===t||2===t}e.exports=function(t,e,i){return n.compareDatums(t,e)?i:5===t.datum_type||5===e.datum_type?i:t.es!==e.es||t.a!==e.a||r(t.datum_type)||r(e.datum_type)?(i=n.geodeticToGeocentric(i,t.es,t.a),r(t.datum_type)&&(i=n.geocentricToWgs84(i,t.datum_type,t.datum_params)),r(e.datum_type)&&(i=n.geocentricFromWgs84(i,e.datum_type,e.datum_params)),n.geocentricToGeodetic(i,e.es,e.a,e.b)):i}},function(t,e,i){var n=t(381),r=t(383),o=t(388);function s(t){var e=this;if(2===arguments.length){var i=arguments[1];s[t]=\"string\"==typeof i?\"+\"===i.charAt(0)?r(arguments[1]):o(arguments[1]):i}else if(1===arguments.length){if(Array.isArray(t))return t.map(function(t){Array.isArray(t)?s.apply(e,t):s(t)});if(\"string\"==typeof t){if(t in s)return s[t]}else\"EPSG\"in t?s[\"EPSG:\"+t.EPSG]=t:\"ESRI\"in t?s[\"ESRI:\"+t.ESRI]=t:\"IAU2000\"in t?s[\"IAU2000:\"+t.IAU2000]=t:console.log(t);return}}n(s),e.exports=s},function(t,e,i){var s=t(371);i.eccentricity=function(t,e,i,n){var r=t*t,o=e*e,s=(r-o)/r,a=0;n?(r=(t*=1-s*(.16666666666666666+s*(.04722222222222222+.022156084656084655*s)))*t,s=0):a=Math.sqrt(s);var l=(r-o)/o;return{es:s,e:a,ep2:l}},i.sphere=function(t,e,i,n,r){if(!t){var o=s[n];o||(o=s.WGS84),t=o.a,e=o.b,i=o.rf}return i&&!e&&(e=(1-1/i)*t),(0===i||Math.abs(t-e)<1e-10)&&(r=!0,e=t),{a:t,b:e,rf:i,sphere:r}}},function(t,e,i){e.exports=function(t,e){var i,n;if(t=t||{},!e)return t;for(n in e)void 0!==(i=e[n])&&(t[n]=i);return t}},function(t,e,i){e.exports=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\"]}},function(t,e,i){var n=t(378),r=t(388),o=t(383),s=[\"GEOGCS\",\"GEOCCS\",\"PROJCS\",\"LOCAL_CS\"];e.exports=function(t){return\"string\"!=typeof t?t:t in n?n[t]:(e=t,s.some(function(t){return-1<e.indexOf(t)})?r(t):\"+\"===t[0]?o(t):void 0);var e}},function(t,e,i){var a=.017453292519943295,l=t(372),h=t(373);e.exports=function(t){var e,i,n,r={},o=t.split(\"+\").map(function(t){return t.trim()}).filter(function(t){return t}).reduce(function(t,e){var i=e.split(\"=\");return i.push(!0),t[i[0].toLowerCase()]=i[1],t},{}),s={proj:\"projName\",datum:\"datumCode\",rf:function(t){r.rf=parseFloat(t)},lat_0:function(t){r.lat0=t*a},lat_1:function(t){r.lat1=t*a},lat_2:function(t){r.lat2=t*a},lat_ts:function(t){r.lat_ts=t*a},lon_0:function(t){r.long0=t*a},lon_1:function(t){r.long1=t*a},lon_2:function(t){r.long2=t*a},alpha:function(t){r.alpha=parseFloat(t)*a},lonc:function(t){r.longc=t*a},x_0:function(t){r.x0=parseFloat(t)},y_0:function(t){r.y0=parseFloat(t)},k_0:function(t){r.k0=parseFloat(t)},k:function(t){r.k0=parseFloat(t)},a:function(t){r.a=parseFloat(t)},b:function(t){r.b=parseFloat(t)},r_a:function(){r.R_A=!0},zone:function(t){r.zone=parseInt(t,10)},south:function(){r.utmSouth=!0},towgs84:function(t){r.datum_params=t.split(\",\").map(function(t){return parseFloat(t)})},to_meter:function(t){r.to_meter=parseFloat(t)},units:function(t){r.units=t,h[t]&&(r.to_meter=h[t].to_meter)},from_greenwich:function(t){r.from_greenwich=t*a},pm:function(t){r.from_greenwich=(l[t]?l[t]:parseFloat(t))*a},nadgrids:function(t){\"@null\"===t?r.datumCode=\"none\":r.nadgrids=t},axis:function(t){var e=\"ewnsud\";3===t.length&&-1!==e.indexOf(t.substr(0,1))&&-1!==e.indexOf(t.substr(1,1))&&-1!==e.indexOf(t.substr(2,1))&&(r.axis=t)}};for(e in o)i=o[e],e in s?\"function\"==typeof(n=s[e])?n(i):r[n]=i:r[e]=i;return\"string\"==typeof r.datumCode&&\"WGS84\"!==r.datumCode&&(r.datumCode=r.datumCode.toLowerCase()),r}},function(t,e,i){var n=[t(386),t(385)],r={},o=[];function s(t,e){var i=o.length;return t.names?((o[i]=t).names.forEach(function(t){r[t.toLowerCase()]=i}),this):(console.log(e),!0)}i.add=s,i.get=function(t){if(!t)return!1;var e=t.toLowerCase();return void 0!==r[e]&&o[r[e]]?o[r[e]]:void 0},i.start=function(){n.forEach(s)}},function(t,e,i){function n(t){return t}i.init=function(){},i.forward=n,i.inverse=n,i.names=[\"longlat\",\"identity\"]},function(t,e,i){var n=t(365),a=Math.PI/2,l=57.29577951308232,h=t(364),u=Math.PI/4,c=t(369),s=t(366);i.init=function(){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=n(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k?this.k0=this.k:this.k0=1)},i.forward=function(t){var e,i,n=t.x,r=t.y;if(90<r*l&&r*l<-90&&180<n*l&&n*l<-180)return null;if(Math.abs(Math.abs(r)-a)<=1e-10)return null;if(this.sphere)e=this.x0+this.a*this.k0*h(n-this.long0),i=this.y0+this.a*this.k0*Math.log(Math.tan(u+.5*r));else{var o=Math.sin(r),s=c(this.e,r,o);e=this.x0+this.a*this.k0*h(n-this.long0),i=this.y0-this.a*this.k0*Math.log(s)}return t.x=e,t.y=i,t},i.inverse=function(t){var e,i,n=t.x-this.x0,r=t.y-this.y0;if(this.sphere)i=a-2*Math.atan(Math.exp(-r/(this.a*this.k0)));else{var o=Math.exp(-r/(this.a*this.k0));if(-9999===(i=s(this.e,o)))return null}return e=h(this.long0+n/(this.a*this.k0)),t.x=e,t.y=i,t},i.names=[\"Mercator\",\"Popular Visualisation Pseudo Mercator\",\"Mercator_1SP\",\"Mercator_Auxiliary_Sphere\",\"merc\"]},function(t,e,i){var a=.017453292519943295,l=57.29577951308232,h=t(377),u=t(363),c=t(362),_=t(368);e.exports=function t(e,i,n){var r,o,s;return Array.isArray(n)&&(n=_(n)),e.datum&&i.datum&&(s=i,(1===(o=e).datum.datum_type||2===o.datum.datum_type)&&\"WGS84\"!==s.datumCode||(1===s.datum.datum_type||2===s.datum.datum_type)&&\"WGS84\"!==o.datumCode)&&(r=new c(\"WGS84\"),n=t(e,r,n),e=r),\"enu\"!==e.axis&&(n=u(e,!1,n)),\"longlat\"===e.projName?n={x:n.x*a,y:n.y*a}:(e.to_meter&&(n={x:n.x*e.to_meter,y:n.y*e.to_meter}),n=e.inverse(n)),e.from_greenwich&&(n.x+=e.from_greenwich),n=h(e.datum,i.datum,n),i.from_greenwich&&(n={x:n.x-i.grom_greenwich,y:n.y}),\"longlat\"===i.projName?n={x:n.x*l,y:n.y*l}:(n=i.forward(n),i.to_meter&&(n={x:n.x/i.to_meter,y:n.y/i.to_meter})),\"enu\"!==i.axis?u(i,!0,n):n}},function(t,e,i){var n=.017453292519943295,s=t(380);function r(t,e,i){t[e]=i.map(function(t){var e={};return a(t,e),e}).reduce(function(t,e){return s(t,e)},{})}function a(t,e){var i;Array.isArray(t)?(\"PARAMETER\"===(i=t.shift())&&(i=t.shift()),1===t.length?Array.isArray(t[0])?(e[i]={},a(t[0],e[i])):e[i]=t[0]:t.length?\"TOWGS84\"===i?e[i]=t:(e[i]={},-1<[\"UNIT\",\"PRIMEM\",\"VERT_DATUM\"].indexOf(i)?(e[i]={name:t[0].toLowerCase(),convert:t[1]},3===t.length&&(e[i].auth=t[2])):\"SPHEROID\"===i?(e[i]={name:t[0],a:t[1],rf:t[2]},4===t.length&&(e[i].auth=t[3])):-1<[\"GEOGCS\",\"GEOCCS\",\"DATUM\",\"VERT_CS\",\"COMPD_CS\",\"LOCAL_CS\",\"FITTED_CS\",\"LOCAL_DATUM\"].indexOf(i)?(t[0]=[\"name\",t[0]],r(e,i,t)):t.every(function(t){return Array.isArray(t)})?r(e,i,t):a(t,e[i])):e[i]=!0):e[t]=!0}function l(t){return t*n}e.exports=function(t,e){var i=JSON.parse((\",\"+t).replace(/\\s*\\,\\s*([A-Z_0-9]+?)(\\[)/g,',[\"$1\",').slice(1).replace(/\\s*\\,\\s*([A-Z_0-9]+?)\\]/g,',\"$1\"]').replace(/,\\[\"VERTCS\".+/,\"\")),n=i.shift(),r=i.shift();i.unshift([\"name\",r]),i.unshift([\"type\",n]),i.unshift(\"output\");var o={};return a(i,o),function(o){function t(t){var e=o.to_meter||1;return parseFloat(t,10)*e}\"GEOGCS\"===o.type?o.projName=\"longlat\":\"LOCAL_CS\"===o.type?(o.projName=\"identity\",o.local=!0):\"object\"==typeof o.PROJECTION?o.projName=Object.keys(o.PROJECTION)[0]:o.projName=o.PROJECTION,o.UNIT&&(o.units=o.UNIT.name.toLowerCase(),\"metre\"===o.units&&(o.units=\"meter\"),o.UNIT.convert&&(\"GEOGCS\"===o.type?o.DATUM&&o.DATUM.SPHEROID&&(o.to_meter=parseFloat(o.UNIT.convert,10)*o.DATUM.SPHEROID.a):o.to_meter=parseFloat(o.UNIT.convert,10))),o.GEOGCS&&(o.GEOGCS.DATUM?o.datumCode=o.GEOGCS.DATUM.name.toLowerCase():o.datumCode=o.GEOGCS.name.toLowerCase(),\"d_\"===o.datumCode.slice(0,2)&&(o.datumCode=o.datumCode.slice(2)),\"new_zealand_geodetic_datum_1949\"!==o.datumCode&&\"new_zealand_1949\"!==o.datumCode||(o.datumCode=\"nzgd49\"),\"wgs_1984\"===o.datumCode&&(\"Mercator_Auxiliary_Sphere\"===o.PROJECTION&&(o.sphere=!0),o.datumCode=\"wgs84\"),\"_ferro\"===o.datumCode.slice(-6)&&(o.datumCode=o.datumCode.slice(0,-6)),\"_jakarta\"===o.datumCode.slice(-8)&&(o.datumCode=o.datumCode.slice(0,-8)),~o.datumCode.indexOf(\"belge\")&&(o.datumCode=\"rnb72\"),o.GEOGCS.DATUM&&o.GEOGCS.DATUM.SPHEROID&&(o.ellps=o.GEOGCS.DATUM.SPHEROID.name.replace(\"_19\",\"\").replace(/[Cc]larke\\_18/,\"clrk\"),\"international\"===o.ellps.toLowerCase().slice(0,13)&&(o.ellps=\"intl\"),o.a=o.GEOGCS.DATUM.SPHEROID.a,o.rf=parseFloat(o.GEOGCS.DATUM.SPHEROID.rf,10)),~o.datumCode.indexOf(\"osgb_1936\")&&(o.datumCode=\"osgb36\")),o.b&&!isFinite(o.b)&&(o.b=o.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\"],[\"lat0\",\"latitude_of_center\",l],[\"longitude_of_center\",\"Longitude_Of_Center\"],[\"longc\",\"longitude_of_center\",l],[\"x0\",\"false_easting\",t],[\"y0\",\"false_northing\",t],[\"long0\",\"central_meridian\",l],[\"lat0\",\"latitude_of_origin\",l],[\"lat0\",\"standard_parallel_1\",l],[\"lat1\",\"standard_parallel_1\",l],[\"lat2\",\"standard_parallel_2\",l],[\"alpha\",\"azimuth\",l],[\"srsCode\",\"name\"]].forEach(function(t){return e=o,n=(i=t)[0],r=i[1],void(!(n in e)&&r in e&&(e[n]=e[r],3===i.length&&(e[n]=i[2](e[n]))));var e,i,n,r}),o.long0||!o.longc||\"Albers_Conic_Equal_Area\"!==o.projName&&\"Lambert_Azimuthal_Equal_Area\"!==o.projName||(o.long0=o.longc),o.lat_ts||!o.lat1||\"Stereographic_South_Pole\"!==o.projName&&\"Polar Stereographic (variant B)\"!==o.projName||(o.lat0=l(0<o.lat1?90:-90),o.lat_ts=o.lat1)}(o.output),s(e,o.output)}},function(t,e,i){!function(){\"use strict\";var d={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 f(t){return function(t,e){var i,n,r,o,s,a,l,h,u,c=1,_=t.length,p=\"\";for(n=0;n<_;n++)if(\"string\"==typeof t[n])p+=t[n];else if(Array.isArray(t[n])){if((o=t[n])[2])for(i=e[c],r=0;r<o[2].length;r++){if(!i.hasOwnProperty(o[2][r]))throw new Error(f('[sprintf] property \"%s\" does not exist',o[2][r]));i=i[o[2][r]]}else i=o[1]?e[o[1]]:e[c++];if(d.not_type.test(o[8])&&d.not_primitive.test(o[8])&&i instanceof Function&&(i=i()),d.numeric_arg.test(o[8])&&\"number\"!=typeof i&&isNaN(i))throw new TypeError(f(\"[sprintf] expecting number but found %T\",i));switch(d.number.test(o[8])&&(h=0<=i),o[8]){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[6]?parseInt(o[6]):0);break;case\"e\":i=o[7]?parseFloat(i).toExponential(o[7]):parseFloat(i).toExponential();break;case\"f\":i=o[7]?parseFloat(i).toFixed(o[7]):parseFloat(i);break;case\"g\":i=o[7]?String(Number(i.toPrecision(o[7]))):parseFloat(i);break;case\"o\":i=(parseInt(i,10)>>>0).toString(8);break;case\"s\":i=String(i),i=o[7]?i.substring(0,o[7]):i;break;case\"t\":i=String(!!i),i=o[7]?i.substring(0,o[7]):i;break;case\"T\":i=Object.prototype.toString.call(i).slice(8,-1).toLowerCase(),i=o[7]?i.substring(0,o[7]):i;break;case\"u\":i=parseInt(i,10)>>>0;break;case\"v\":i=i.valueOf(),i=o[7]?i.substring(0,o[7]):i;break;case\"x\":i=(parseInt(i,10)>>>0).toString(16);break;case\"X\":i=(parseInt(i,10)>>>0).toString(16).toUpperCase()}d.json.test(o[8])?p+=i:(!d.number.test(o[8])||h&&!o[3]?u=\"\":(u=h?\"+\":\"-\",i=i.toString().replace(d.sign,\"\")),a=o[4]?\"0\"===o[4]?\"0\":o[4].charAt(1):\" \",l=o[6]-(u+i).length,s=o[6]&&0<l?a.repeat(l):\"\",p+=o[5]?u+i+s:\"0\"===a?u+s+i:s+u+i)}return p}(function(t){if(l[t])return l[t];for(var e,i=t,n=[],r=0;i;){if(null!==(e=d.text.exec(i)))n.push(e[0]);else if(null!==(e=d.modulo.exec(i)))n.push(\"%\");else{if(null===(e=d.placeholder.exec(i)))throw new SyntaxError(\"[sprintf] unexpected placeholder\");if(e[2]){r|=1;var o=[],s=e[2],a=[];if(null===(a=d.key.exec(s)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");for(o.push(a[1]);\"\"!==(s=s.substring(a[0].length));)if(null!==(a=d.key_access.exec(s)))o.push(a[1]);else{if(null===(a=d.index_access.exec(s)))throw new SyntaxError(\"[sprintf] failed to parse named argument key\");o.push(a[1])}e[2]=o}else r|=2;if(3===r)throw new Error(\"[sprintf] mixing positional and named placeholders is not (yet) supported\");n.push(e)}i=i.substring(e[0].length)}return l[t]=n}(t),arguments)}function t(t,e){return f.apply(null,[t].concat(e||[]))}var l=Object.create(null);void 0!==i&&(i.sprintf=f,i.vsprintf=t),\"undefined\"!=typeof window&&(window.sprintf=f,window.vsprintf=t)}()},function(t,e,i){!function(t){\"object\"==typeof e&&e.exports?e.exports=t():this.tz=t()}(function(){function d(t,e,i){for(var n,r=e.day[1];n=new Date(Date.UTC(i,e.month,Math.abs(r++))),e.day[0]<7&&n.getUTCDay()!=e.day[0];);return(n={clock:e.clock,sort:n.getTime(),rule:e,save:6e4*e.save,offset:t.offset})[n.clock]=n.sort+6e4*e.time,n.posix?n.wallclock=n[n.clock]+(t.offset+e.saved):n.posix=n[n.clock]-(t.offset+e.saved),n}function r(t,e,i){var n,r,o,s,a,l,h,u=t[t.zone],c=[],_=new Date(i).getUTCFullYear(),p=1;for(n=1,r=u.length;n<r&&!(u[n][e]<=i);n++);if((o=u[n]).rules){for(l=t[o.rules],h=_+1;_-p<=h;--h)for(n=0,r=l.length;n<r;n++)l[n].from<=h&&h<=l[n].to?c.push(d(o,l[n],h)):l[n].to<h&&1==p&&(p=h-l[n].to);for(c.sort(function(t,e){return t.sort-e.sort}),n=0,r=c.length;n<r;n++)i>=c[n][e]&&c[n][c[n].clock]>o[c[n].clock]&&(s=c[n])}return s&&((a=/^(.*)\\/(.*)$/.exec(o.format))?s.abbrev=a[s.save?2:1]:s.abbrev=o.format.replace(/%s/,s.rule.letter)),s||o}function a(t,e){return\"UTC\"==t.zone?e:(t.entry=r(t,\"posix\",e),e+t.entry.offset+t.entry.save)}function c(t,e){return\"UTC\"==t.zone?e:(t.entry=i=r(t,\"wallclock\",e),0<(n=e-i.wallclock)&&n<i.save?null:e-i.offset-i.save);var i,n}function o(t,e,i){var n,r=+(i[1]+1),o=i[2]*r,s=l.indexOf(i[3].toLowerCase());if(9<s)e+=o*h[s-10];else{if(n=new Date(a(t,e)),s<7)for(;o;)n.setUTCDate(n.getUTCDate()+r),n.getUTCDay()==s&&(o-=r);else 7==s?n.setUTCFullYear(n.getUTCFullYear()+o):8==s?n.setUTCMonth(n.getUTCMonth()+o):n.setUTCDate(n.getUTCDate()+o);null==(e=c(t,n.getTime()))&&(e=c(t,n.getTime()+864e5*r)-864e5*r)}return e}var e={clock:function(){return+new Date},zone:\"UTC\",entry:{abbrev:\"UTC\",offset:0,save:0},UTC:1,z:function(t,e,i,n){var r,o,s=this.entry.offset+this.entry.save,a=Math.abs(s/1e3),l=[],h=3600;for(r=0;r<3;r++)l.push((\"0\"+Math.floor(a/h)).slice(-2)),a%=h,h/=60;return\"^\"!=i||s?(\"^\"==i&&(n=3),3==n?(o=(o=l.join(\":\")).replace(/:00$/,\"\"),\"^\"!=i&&(o=o.replace(/:00$/,\"\"))):n?(o=l.slice(0,n+1).join(\":\"),\"^\"==i&&(o=o.replace(/:00$/,\"\"))):o=l.slice(0,2).join(\"\"),o=(o=(s<0?\"-\":\"+\")+o).replace(/([-+])(0)/,{_:\" $1\",\"-\":\"$1\"}[i]||\"$1$2\")):\"Z\"},\"%\":function(t){return\"%\"},n:function(t){return\"\\n\"},t:function(t){return\"\\t\"},U:function(t){return u(t,0)},W:function(t){return u(t,1)},V:function(t){return i(t)[0]},G:function(t){return i(t)[1]},g:function(t){return i(t)[1]%100},j:function(t){return Math.floor((t.getTime()-Date.UTC(t.getUTCFullYear(),0))/864e5)+1},s:function(t){return Math.floor(t.getTime()/1e3)},C:function(t){return Math.floor(t.getUTCFullYear()/100)},N:function(t){return t.getTime()%1e3*1e6},m:function(t){return t.getUTCMonth()+1},Y:function(t){return t.getUTCFullYear()},y:function(t){return t.getUTCFullYear()%100},H:function(t){return t.getUTCHours()},M:function(t){return t.getUTCMinutes()},S:function(t){return t.getUTCSeconds()},e:function(t){return t.getUTCDate()},d:function(t){return t.getUTCDate()},u:function(t){return t.getUTCDay()||7},w:function(t){return t.getUTCDay()},l:function(t){return t.getUTCHours()%12||12},I:function(t){return t.getUTCHours()%12||12},k:function(t){return t.getUTCHours()},Z:function(t){return this.entry.abbrev},a:function(t){return this[this.locale].day.abbrev[t.getUTCDay()]},A:function(t){return this[this.locale].day.full[t.getUTCDay()]},h:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},b:function(t){return this[this.locale].month.abbrev[t.getUTCMonth()]},B:function(t){return this[this.locale].month.full[t.getUTCMonth()]},P:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)].toLowerCase()},p:function(t){return this[this.locale].meridiem[Math.floor(t.getUTCHours()/12)]},R:function(t,e){return this.convert([e,\"%H:%M\"])},T:function(t,e){return this.convert([e,\"%H:%M:%S\"])},D:function(t,e){return this.convert([e,\"%m/%d/%y\"])},F:function(t,e){return this.convert([e,\"%Y-%m-%d\"])},x:function(t,e){return this.convert([e,this[this.locale].date])},r:function(t,e){return this.convert([e,this[this.locale].time12||\"%I:%M:%S\"])},X:function(t,e){return this.convert([e,this[this.locale].time24])},c:function(t,e){return this.convert([e,this[this.locale].dateTime])},convert:function(t){if(!t.length)return\"1.0.13\";var e,i,l,n,h,u=Object.create(this),r=[];for(e=0;e<t.length;e++)if(n=t[e],Array.isArray(n))e||isNaN(n[1])?n.splice.apply(t,[e--,1].concat(n)):h=n;else if(isNaN(n)){if(\"string\"==(l=typeof n))~n.indexOf(\"%\")?u.format=n:e||\"*\"!=n?!e&&(l=/^(\\d{4})-(\\d{2})-(\\d{2})(?:[T\\s](\\d{2}):(\\d{2})(?::(\\d{2})(?:\\.(\\d+))?)?(Z|(([+-])(\\d{2}(:\\d{2}){0,2})))?)?$/.exec(n))?((h=[]).push.apply(h,l.slice(1,8)),l[9]?(h.push(l[10]+1),h.push.apply(h,l[11].split(/:/))):l[8]&&h.push(1)):/^\\w{2,3}_\\w{2}$/.test(n)?u.locale=n:(l=s.exec(n))?r.push(l):u.zone=n:h=n;else if(\"function\"==l){if(l=n.call(u))return l}else if(/^\\w{2,3}_\\w{2}$/.test(n.name))u[n.name]=n;else if(n.zones){for(l in n.zones)u[l]=n.zones[l];for(l in n.rules)u[l]=n.rules[l]}}else e||(h=n);if(u[u.locale]||delete u.locale,u[u.zone]||delete u.zone,null!=h){if(\"*\"==h)h=u.clock();else if(Array.isArray(h)){for(l=[],i=!h[7],e=0;e<11;e++)l[e]=+(h[e]||0);--l[1],h=Date.UTC.apply(Date.UTC,l)+-l[7]*(36e5*l[8]+6e4*l[9]+1e3*l[10])}else h=Math.floor(h);if(!isNaN(h)){if(i&&(h=c(u,h)),null==h)return h;for(e=0,i=r.length;e<i;e++)h=o(u,h,r[e]);return u.format?(l=new Date(a(u,h)),u.format.replace(/%([-0_^]?)(:{0,3})(\\d*)(.)/g,function(t,e,i,n,r){var o,s,a=\"0\";if(o=u[r]){for(t=String(o.call(u,l,h,e,i.length)),\"_\"==(e||o.style)&&(a=\" \"),s=\"-\"==e?0:o.pad||0;t.length<s;)t=a+t;for(s=\"-\"==e?0:n||o.pad;t.length<s;)t=a+t;\"N\"==r&&s<t.length&&(t=t.slice(0,s)),\"^\"==e&&(t=t.toUpperCase())}return t})):h}}return function(){return u.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(\"|\")}}},l=\"Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|year|month|day|hour|minute|second|millisecond\",s=new RegExp(\"^\\\\s*([+-])(\\\\d+)\\\\s+(\"+l+\")s?\\\\s*$\",\"i\"),h=[36e5,6e4,1e3,1];function u(t,e){var i,n,r;return n=new Date(Date.UTC(t.getUTCFullYear(),0)),i=Math.floor((t.getTime()-n.getTime())/864e5),n.getUTCDay()==e?r=0:8==(r=7-n.getUTCDay()+e)&&(r=1),r<=i?Math.floor((i-r)/7)+1:0}function i(t){var e,i,n;return i=t.getUTCFullYear(),e=new Date(Date.UTC(i,0)).getUTCDay(),(n=u(t,1)+(1<e&&e<=4?1:0))?53!=n||4==e||3==e&&29==new Date(i,1,29).getDate()?[n,t.getUTCFullYear()]:[1,t.getUTCFullYear()+1]:(i=t.getUTCFullYear()-1,e=new Date(Date.UTC(i,0)).getUTCDay(),[n=4==e||3==e&&29==new Date(i,1,29).getDate()?53:52,t.getUTCFullYear()-1])}return l=l.toLowerCase().split(\"|\"),\"delmHMSUWVgCIky\".replace(/./g,function(t){e[t].pad=2}),e.N.pad=9,e.j.pad=3,e.k.style=\"_\",e.l.style=\"_\",e.e.style=\"_\",function(){return e.convert(arguments)}})},function(t,n,e){\n      /*! *****************************************************************************\n          Copyright (c) Microsoft Corporation. All rights reserved.\n          Licensed under the Apache License, Version 2.0 (the \"License\"); you may not use\n          this file except in compliance with the License. You may obtain a copy of the\n          License at http://www.apache.org/licenses/LICENSE-2.0\n          \n          THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n          KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED\n          WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,\n          MERCHANTABLITY OR NON-INFRINGEMENT.\n          \n          See the Apache Version 2.0 License for specific language governing permissions\n          and limitations under the License.\n          ***************************************************************************** */\n      var i,r,o,s,a,l,h,u,c,_,p,d,f,v,m,g,y,b,x;!function(t){var e=\"object\"==typeof global?global:\"object\"==typeof self?self:\"object\"==typeof this?this:{};function i(i,n){return i!==e&&(\"function\"==typeof Object.create?Object.defineProperty(i,\"__esModule\",{value:!0}):i.__esModule=!0),function(t,e){return i[t]=n?n(t,e):e}}\"object\"==typeof n&&\"object\"==typeof n.exports?t(i(e,i(n.exports))):t(i(e))}(function(t){var n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var i in e)e.hasOwnProperty(i)&&(t[i]=e[i])};i=function(t,e){function i(){this.constructor=t}n(t,e),t.prototype=null===e?Object.create(e):(i.prototype=e.prototype,new i)},r=Object.assign||function(t){for(var e,i=1,n=arguments.length;i<n;i++)for(var r in e=arguments[i])Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t},o=function(t,e){var i={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(i[n]=t[n]);if(null!=t&&\"function\"==typeof Object.getOwnPropertySymbols)for(var r=0,n=Object.getOwnPropertySymbols(t);r<n.length;r++)e.indexOf(n[r])<0&&(i[n[r]]=t[n[r]]);return i},s=function(t,e,i,n){var r,o=arguments.length,s=o<3?e:null===n?n=Object.getOwnPropertyDescriptor(e,i):n;if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.decorate)s=Reflect.decorate(t,e,i,n);else for(var a=t.length-1;0<=a;a--)(r=t[a])&&(s=(o<3?r(s):3<o?r(e,i,s):r(e,i))||s);return 3<o&&s&&Object.defineProperty(e,i,s),s},a=function(i,n){return function(t,e){n(t,e,i)}},l=function(t,e){if(\"object\"==typeof Reflect&&\"function\"==typeof Reflect.metadata)return Reflect.metadata(t,e)},h=function(o,s,a,l){return new(a||(a=Promise))(function(t,e){function i(t){try{r(l.next(t))}catch(t){e(t)}}function n(t){try{r(l.throw(t))}catch(t){e(t)}}function r(e){e.done?t(e.value):new a(function(t){t(e.value)}).then(i,n)}r((l=l.apply(o,s||[])).next())})},u=function(i,n){var r,o,s,t,a={label:0,sent:function(){if(1&s[0])throw s[1];return s[1]},trys:[],ops:[]};return t={next:e(0),throw:e(1),return:e(2)},\"function\"==typeof Symbol&&(t[Symbol.iterator]=function(){return this}),t;function e(e){return function(t){return function(e){if(r)throw new TypeError(\"Generator is already executing.\");for(;a;)try{if(r=1,o&&(s=2&e[0]?o.return:e[0]?o.throw||((s=o.return)&&s.call(o),0):o.next)&&!(s=s.call(o,e[1])).done)return s;switch(o=0,s&&(e=[2&e[0],s.value]),e[0]){case 0:case 1:s=e;break;case 4:return a.label++,{value:e[1],done:!1};case 5:a.label++,o=e[1],e=[0];continue;case 7:e=a.ops.pop(),a.trys.pop();continue;default:if(!(s=0<(s=a.trys).length&&s[s.length-1])&&(6===e[0]||2===e[0])){a=0;continue}if(3===e[0]&&(!s||e[1]>s[0]&&e[1]<s[3])){a.label=e[1];break}if(6===e[0]&&a.label<s[1]){a.label=s[1],s=e;break}if(s&&a.label<s[2]){a.label=s[2],a.ops.push(e);break}s[2]&&a.ops.pop(),a.trys.pop();continue}e=n.call(i,a)}catch(t){e=[6,t],o=0}finally{r=s=0}if(5&e[0])throw e[1];return{value:e[0]?e[1]:void 0,done:!0}}([e,t])}}},c=function(t,e){for(var i in t)e.hasOwnProperty(i)||(e[i]=t[i])},_=function(t){var e=\"function\"==typeof Symbol&&t[Symbol.iterator],i=0;return e?e.call(t):{next:function(){return t&&i>=t.length&&(t=void 0),{value:t&&t[i++],done:!t}}}},p=function(t,e){var i=\"function\"==typeof Symbol&&t[Symbol.iterator];if(!i)return t;var n,r,o=i.call(t),s=[];try{for(;(void 0===e||0<e--)&&!(n=o.next()).done;)s.push(n.value)}catch(t){r={error:t}}finally{try{n&&!n.done&&(i=o.return)&&i.call(o)}finally{if(r)throw r.error}}return s},d=function(){for(var t=[],e=0;e<arguments.length;e++)t=t.concat(p(arguments[e]));return t},f=function(t){return this instanceof f?(this.v=t,this):new f(t)},v=function(t,e,i){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var r,o=i.apply(t,e||[]),s=[];return r={},n(\"next\"),n(\"throw\"),n(\"return\"),r[Symbol.asyncIterator]=function(){return this},r;function n(n){o[n]&&(r[n]=function(i){return new Promise(function(t,e){1<s.push([n,i,t,e])||a(n,i)})})}function a(t,e){try{(i=o[t](e)).value instanceof f?Promise.resolve(i.value.v).then(l,h):u(s[0][2],i)}catch(t){u(s[0][3],t)}var i}function l(t){a(\"next\",t)}function h(t){a(\"throw\",t)}function u(t,e){t(e),s.shift(),s.length&&a(s[0][0],s[0][1])}},m=function(n){var t,r;return t={},e(\"next\"),e(\"throw\",function(t){throw t}),e(\"return\"),t[Symbol.iterator]=function(){return this},t;function e(e,i){t[e]=n[e]?function(t){return(r=!r)?{value:f(n[e](t)),done:\"return\"===e}:i?i(t):t}:i}},g=function(l){if(!Symbol.asyncIterator)throw new TypeError(\"Symbol.asyncIterator is not defined.\");var t,e=l[Symbol.asyncIterator];return e?e.call(l):(l=_(l),t={},i(\"next\"),i(\"throw\"),i(\"return\"),t[Symbol.asyncIterator]=function(){return this},t);function i(a){t[a]=l[a]&&function(s){return new Promise(function(t,e){var i,n,r,o;s=l[a](s),i=t,n=e,r=s.done,o=s.value,Promise.resolve(o).then(function(t){i({value:t,done:r})},n)})}}},y=function(t,e){return Object.defineProperty?Object.defineProperty(t,\"raw\",{value:e}):t.raw=e,t},b=function(t){if(t&&t.__esModule)return t;var e={};if(null!=t)for(var i in t)Object.hasOwnProperty.call(t,i)&&(e[i]=t[i]);return e.default=t,e},x=function(t){return t&&t.__esModule?t:{default:t}},t(\"__extends\",i),t(\"__assign\",r),t(\"__rest\",o),t(\"__decorate\",s),t(\"__param\",a),t(\"__metadata\",l),t(\"__awaiter\",h),t(\"__generator\",u),t(\"__exportStar\",c),t(\"__values\",_),t(\"__read\",p),t(\"__spread\",d),t(\"__await\",f),t(\"__asyncGenerator\",v),t(\"__asyncDelegator\",m),t(\"__asyncValues\",g),t(\"__makeTemplateObject\",y),t(\"__importStar\",b),t(\"__importDefault\",x)})}],s={base:0,\"client/connection\":1,\"client/session\":2,\"core/bokeh_events\":3,\"core/build_views\":4,\"core/dom\":5,\"core/dom_view\":6,\"core/enums\":7,\"core/has_props\":8,\"core/hittest\":9,\"core/layout/alignments\":10,\"core/layout/layout_canvas\":11,\"core/layout/side_panel\":12,\"core/layout/solver\":13,\"core/logging\":14,\"core/properties\":15,\"core/property_mixins\":16,\"core/selection_manager\":17,\"core/settings\":18,\"core/signaling\":19,\"core/ui_events\":20,\"core/util/array\":21,\"core/util/arrayable\":22,\"core/util/assert\":23,\"core/util/bbox\":24,\"core/util/callback\":25,\"core/util/canvas\":26,\"core/util/color\":27,\"core/util/compat\":28,\"core/util/data_structures\":29,\"core/util/eq\":30,\"core/util/math\":31,\"core/util/object\":32,\"core/util/projections\":33,\"core/util/refs\":34,\"core/util/selection\":35,\"core/util/serialization\":36,\"core/util/spatial\":37,\"core/util/string\":38,\"core/util/svg_colors\":39,\"core/util/templating\":40,\"core/util/text\":41,\"core/util/throttle\":42,\"core/util/typed_array\":43,\"core/util/types\":44,\"core/util/wheel\":45,\"core/util/zoom\":46,\"core/vectorization\":47,\"core/view\":48,\"core/visuals\":49,\"document/document\":50,\"document/events\":51,\"document/index\":52,\"embed/dom\":53,\"embed/index\":54,\"embed/notebook\":55,\"embed/server\":56,\"embed/standalone\":57,main:58,model:59,\"models/annotations/annotation\":60,\"models/annotations/arrow\":61,\"models/annotations/arrow_head\":62,\"models/annotations/band\":63,\"models/annotations/box_annotation\":64,\"models/annotations/color_bar\":65,\"models/annotations/index\":66,\"models/annotations/label\":67,\"models/annotations/label_set\":68,\"models/annotations/legend\":69,\"models/annotations/legend_item\":70,\"models/annotations/poly_annotation\":71,\"models/annotations/slope\":72,\"models/annotations/span\":73,\"models/annotations/text_annotation\":74,\"models/annotations/title\":75,\"models/annotations/toolbar_panel\":76,\"models/annotations/tooltip\":77,\"models/annotations/whisker\":78,\"models/axes/axis\":79,\"models/axes/categorical_axis\":80,\"models/axes/continuous_axis\":81,\"models/axes/datetime_axis\":82,\"models/axes/index\":83,\"models/axes/linear_axis\":84,\"models/axes/log_axis\":85,\"models/axes/mercator_axis\":86,\"models/callbacks/callback\":87,\"models/callbacks/customjs\":88,\"models/callbacks/index\":89,\"models/callbacks/open_url\":90,\"models/canvas/canvas\":91,\"models/canvas/cartesian_frame\":92,\"models/canvas/index\":93,\"models/expressions/cumsum\":94,\"models/expressions/expression\":95,\"models/expressions/index\":96,\"models/expressions/stack\":97,\"models/filters/boolean_filter\":98,\"models/filters/customjs_filter\":99,\"models/filters/filter\":100,\"models/filters/group_filter\":101,\"models/filters/index\":102,\"models/filters/index_filter\":103,\"models/formatters/basic_tick_formatter\":104,\"models/formatters/categorical_tick_formatter\":105,\"models/formatters/datetime_tick_formatter\":106,\"models/formatters/func_tick_formatter\":107,\"models/formatters/index\":108,\"models/formatters/log_tick_formatter\":109,\"models/formatters/mercator_tick_formatter\":110,\"models/formatters/numeral_tick_formatter\":111,\"models/formatters/printf_tick_formatter\":112,\"models/formatters/tick_formatter\":113,\"models/glyphs/annular_wedge\":114,\"models/glyphs/annulus\":115,\"models/glyphs/arc\":116,\"models/glyphs/bezier\":117,\"models/glyphs/box\":118,\"models/glyphs/center_rotatable\":119,\"models/glyphs/circle\":120,\"models/glyphs/ellipse\":121,\"models/glyphs/ellipse_oval\":122,\"models/glyphs/glyph\":123,\"models/glyphs/hbar\":124,\"models/glyphs/hex_tile\":125,\"models/glyphs/image\":126,\"models/glyphs/image_rgba\":127,\"models/glyphs/image_url\":128,\"models/glyphs/index\":129,\"models/glyphs/line\":130,\"models/glyphs/multi_line\":131,\"models/glyphs/multi_polygons\":132,\"models/glyphs/oval\":133,\"models/glyphs/patch\":134,\"models/glyphs/patches\":135,\"models/glyphs/quad\":136,\"models/glyphs/quadratic\":137,\"models/glyphs/ray\":138,\"models/glyphs/rect\":139,\"models/glyphs/segment\":140,\"models/glyphs/step\":141,\"models/glyphs/text\":142,\"models/glyphs/utils\":143,\"models/glyphs/vbar\":144,\"models/glyphs/wedge\":145,\"models/glyphs/xy_glyph\":146,\"models/graphs/graph_hit_test_policy\":147,\"models/graphs/index\":148,\"models/graphs/layout_provider\":149,\"models/graphs/static_layout_provider\":150,\"models/grids/grid\":151,\"models/grids/index\":152,\"models/index\":153,\"models/layouts/box\":154,\"models/layouts/column\":155,\"models/layouts/index\":156,\"models/layouts/layout_dom\":157,\"models/layouts/row\":158,\"models/layouts/spacer\":159,\"models/layouts/widget_box\":160,\"models/mappers/categorical_color_mapper\":161,\"models/mappers/categorical_mapper\":162,\"models/mappers/categorical_marker_mapper\":163,\"models/mappers/color_mapper\":164,\"models/mappers/continuous_color_mapper\":165,\"models/mappers/index\":166,\"models/mappers/linear_color_mapper\":167,\"models/mappers/log_color_mapper\":168,\"models/mappers/mapper\":169,\"models/markers/defs\":170,\"models/markers/index\":171,\"models/markers/marker\":172,\"models/markers/scatter\":173,\"models/plots/gmap_plot\":174,\"models/plots/gmap_plot_canvas\":175,\"models/plots/index\":176,\"models/plots/plot\":177,\"models/plots/plot_canvas\":178,\"models/ranges/data_range\":179,\"models/ranges/data_range1d\":180,\"models/ranges/factor_range\":181,\"models/ranges/index\":182,\"models/ranges/range\":183,\"models/ranges/range1d\":184,\"models/renderers/glyph_renderer\":185,\"models/renderers/graph_renderer\":186,\"models/renderers/guide_renderer\":187,\"models/renderers/index\":188,\"models/renderers/renderer\":189,\"models/scales/categorical_scale\":190,\"models/scales/index\":191,\"models/scales/linear_scale\":192,\"models/scales/log_scale\":193,\"models/scales/scale\":194,\"models/selections/index\":195,\"models/selections/interaction_policy\":196,\"models/selections/selection\":197,\"models/sources/ajax_data_source\":198,\"models/sources/cds_view\":199,\"models/sources/column_data_source\":200,\"models/sources/columnar_data_source\":201,\"models/sources/data_source\":202,\"models/sources/geojson_data_source\":203,\"models/sources/index\":204,\"models/sources/remote_data_source\":205,\"models/tickers/adaptive_ticker\":206,\"models/tickers/basic_ticker\":207,\"models/tickers/categorical_ticker\":208,\"models/tickers/composite_ticker\":209,\"models/tickers/continuous_ticker\":210,\"models/tickers/datetime_ticker\":211,\"models/tickers/days_ticker\":212,\"models/tickers/fixed_ticker\":213,\"models/tickers/index\":214,\"models/tickers/log_ticker\":215,\"models/tickers/mercator_ticker\":216,\"models/tickers/months_ticker\":217,\"models/tickers/single_interval_ticker\":218,\"models/tickers/ticker\":219,\"models/tickers/util\":220,\"models/tickers/years_ticker\":221,\"models/tiles/bbox_tile_source\":222,\"models/tiles/image_pool\":223,\"models/tiles/index\":224,\"models/tiles/mercator_tile_source\":225,\"models/tiles/quadkey_tile_source\":226,\"models/tiles/tile_renderer\":227,\"models/tiles/tile_source\":228,\"models/tiles/tile_utils\":229,\"models/tiles/tms_tile_source\":230,\"models/tiles/wmts_tile_source\":231,\"models/tools/actions/action_tool\":232,\"models/tools/actions/custom_action\":233,\"models/tools/actions/help_tool\":234,\"models/tools/actions/redo_tool\":235,\"models/tools/actions/reset_tool\":236,\"models/tools/actions/save_tool\":237,\"models/tools/actions/undo_tool\":238,\"models/tools/actions/zoom_in_tool\":239,\"models/tools/actions/zoom_out_tool\":240,\"models/tools/button_tool\":241,\"models/tools/edit/box_edit_tool\":242,\"models/tools/edit/edit_tool\":243,\"models/tools/edit/freehand_draw_tool\":244,\"models/tools/edit/point_draw_tool\":245,\"models/tools/edit/poly_draw_tool\":246,\"models/tools/edit/poly_edit_tool\":247,\"models/tools/edit/poly_tool\":248,\"models/tools/gestures/box_select_tool\":249,\"models/tools/gestures/box_zoom_tool\":250,\"models/tools/gestures/gesture_tool\":251,\"models/tools/gestures/lasso_select_tool\":252,\"models/tools/gestures/pan_tool\":253,\"models/tools/gestures/poly_select_tool\":254,\"models/tools/gestures/range_tool\":255,\"models/tools/gestures/select_tool\":256,\"models/tools/gestures/tap_tool\":257,\"models/tools/gestures/wheel_pan_tool\":258,\"models/tools/gestures/wheel_zoom_tool\":259,\"models/tools/index\":260,\"models/tools/inspectors/crosshair_tool\":261,\"models/tools/inspectors/customjs_hover\":262,\"models/tools/inspectors/hover_tool\":263,\"models/tools/inspectors/inspect_tool\":264,\"models/tools/on_off_button\":265,\"models/tools/tool\":266,\"models/tools/tool_proxy\":267,\"models/tools/toolbar\":268,\"models/tools/toolbar_base\":269,\"models/tools/toolbar_box\":270,\"models/tools/util\":271,\"models/transforms/customjs_transform\":272,\"models/transforms/dodge\":273,\"models/transforms/index\":274,\"models/transforms/interpolator\":275,\"models/transforms/jitter\":276,\"models/transforms/linear_interpolator\":277,\"models/transforms/step_interpolator\":278,\"models/transforms/transform\":279,polyfill:280,\"protocol/index\":281,\"protocol/message\":282,\"protocol/receiver\":283,safely:284,testing:285,version:286},r={},(l=(a=function(t){var e=null!=s[t]?s[t]:t;if(!r[e]){if(!o[e]){var i=new Error(\"Cannot find module '\"+t+\"'\");throw i.code=\"MODULE_NOT_FOUND\",i}var n=r[e]={exports:{}};o[e].call(n.exports,a,n,n.exports)}return r[e].exports})(58)).require=a,l.register_plugin=function(t,e,i){for(var n in t)o[n]=t[n];for(var n in e)s[n]=e[n];var r=a(i);for(var n in r)l[n]=r[n];return r},l)}(this);\n      //# sourceMappingURL=bokeh.min.js.map\n      /* END bokeh.min.js */\n    },\n    \n    function(Bokeh) {\n      /* BEGIN bokeh-widgets.min.js */\n      /*!\n       * Copyright (c) 2012 - 2018, 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(t,e){var i;i=t.Bokeh,function(t,e,n){if(null!=i)return i.register_plugin(t,{\"core/menus\":400,\"models/widgets/abstract_button\":401,\"models/widgets/abstract_icon\":402,\"models/widgets/abstract_slider\":403,\"models/widgets/autocomplete_input\":404,\"models/widgets/button\":405,\"models/widgets/checkbox_button_group\":406,\"models/widgets/checkbox_group\":407,\"models/widgets/date_picker\":408,\"models/widgets/date_range_slider\":409,\"models/widgets/date_slider\":410,\"models/widgets/div\":411,\"models/widgets/dropdown\":412,\"models/widgets/index\":413,\"models/widgets/input_widget\":414,\"models/widgets/main\":415,\"models/widgets/markup\":416,\"models/widgets/multiselect\":417,\"models/widgets/panel\":418,\"models/widgets/paragraph\":419,\"models/widgets/password_input\":420,\"models/widgets/pretext\":421,\"models/widgets/radio_button_group\":422,\"models/widgets/radio_group\":423,\"models/widgets/range_slider\":424,\"models/widgets/selectbox\":425,\"models/widgets/slider\":426,\"models/widgets/tabs\":427,\"models/widgets/text_input\":428,\"models/widgets/toggle\":429,\"models/widgets/widget\":440},415);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")}({400:function(t,e,n){var i=t(19);n.clear_menus=new i.Signal0({},\"clear_menus\"),document.addEventListener(\"click\",function(){return n.clear_menus.emit()})},401:function(t,e,n){var i=t(391),r=t(15),o=t(5),s=t(4),a=t(440),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.icon_views={},this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.remove=function(){s.remove_views(this.icon_views),n.prototype.remove.call(this)},t.prototype._render_button=function(){for(var t=[],e=0;e<arguments.length;e++)t[e]=arguments[e];return o.button.apply(void 0,[{type:\"button\",disabled:this.model.disabled,class:[\"bk-bs-btn\",\"bk-bs-btn-\"+this.model.button_type]}].concat(t))},t.prototype.render=function(){var e=this;n.prototype.render.call(this),o.empty(this.el),this.buttonEl=this._render_button(this.model.label),this.buttonEl.addEventListener(\"click\",function(t){return e._button_click(t)}),this.el.appendChild(this.buttonEl);var t=this.model.icon;null!=t&&(s.build_views(this.icon_views,[t],{parent:this}),o.prepend(this.buttonEl,this.icon_views[t.id].el,o.nbsp))},t.prototype._button_click=function(t){t.preventDefault(),this.change_input()},t.prototype.change_input=function(){null!=this.model.callback&&this.model.callback.execute(this.model)},t}(a.WidgetView);n.AbstractButtonView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AbstractButton\",this.define({label:[r.String,\"Button\"],icon:[r.Instance],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(a.Widget);(n.AbstractButton=u).initClass()},402:function(t,e,n){var i=t(391),r=t(440),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e}(r.WidgetView);n.AbstractIconView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AbstractIcon\"},t}(r.Widget);(n.AbstractIcon=s).initClass()},403:function(t,e,n){var i=t(391),f=t(431),r=t(15),m=t(5),v=t(14),g=t(21),y=t(25),o=t(440),s=function(p){function t(){return null!==p&&p.apply(this,arguments)||this}return i.__extends(t,p),t.prototype.initialize=function(t){p.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;p.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var r=this;if(null==this.sliderEl&&p.prototype.render.call(this),null!=this.model.callback){var t=function(){return r.model.callback.execute(r.model)};switch(this.model.callback_policy){case\"continuous\":this.callback_wrapper=t;break;case\"throttle\":this.callback_wrapper=y.throttle(t,this.model.callback_throttle)}}var e,o=\"bk-noUi-\",n=this._calc_to(),i=n.start,s=n.end,a=n.value,l=n.step;if(this.model.tooltips){var u={to:function(t){return r.model.pretty(t)}};e=g.repeat(u,a.length)}else e=!1;if(this.el.classList.add(\"bk-slider\"),null==this.sliderEl){this.sliderEl=m.div(),this.el.appendChild(this.sliderEl),f.create(this.sliderEl,{cssPrefix:o,range:{min:i,max:s},start:a,step:l,behaviour:this.model.behaviour,connect:this.model.connected,tooltips:e,orientation:this.model.orientation,direction:this.model.direction}),this.sliderEl.noUiSlider.on(\"slide\",function(t,e,n){return r._slide(n)}),this.sliderEl.noUiSlider.on(\"change\",function(t,e,n){return r._change(n)});var c=this.sliderEl.querySelector(\".\"+o+\"handle\");c.setAttribute(\"tabindex\",\"0\"),c.addEventListener(\"keydown\",function(t){var e=r._calc_to().value[0];switch(t.which){case 37:e=Math.max(e-l,i);break;case 39:e=Math.min(e+l,s);break;default:return}var n=r.model.pretty(e);v.logger.debug(\"[slider keypress] value = \"+n),r.model.value=e,r.sliderEl.noUiSlider.set(e),null!=r.valueEl&&(r.valueEl.textContent=n),null!=r.callback_wrapper&&r.callback_wrapper()});var d=function(t,e){var n=r.sliderEl.querySelectorAll(\".\"+o+\"handle\")[t],i=n.querySelector(\".\"+o+\"tooltip\");i.style.display=e?\"block\":\"\"};this.sliderEl.noUiSlider.on(\"start\",function(t,e){return d(e,!0)}),this.sliderEl.noUiSlider.on(\"end\",function(t,e){return d(e,!1)})}else this.sliderEl.noUiSlider.updateOptions({range:{min:i,max:s},start:a,step:l});if(null!=this.titleEl&&this.el.removeChild(this.titleEl),null!=this.valueEl&&this.el.removeChild(this.valueEl),null!=this.model.title&&(0!=this.model.title.length&&(this.titleEl=m.label({},this.model.title+\":\"),this.el.insertBefore(this.titleEl,this.sliderEl)),this.model.show_value)){var h=a.map(function(t){return r.model.pretty(t)}).join(\" .. \");this.valueEl=m.div({class:\"bk-slider-value\"},h),this.el.insertBefore(this.valueEl,this.sliderEl)}this.model.disabled||(this.sliderEl.querySelector(\".\"+o+\"connect\").style.backgroundColor=this.model.bar_color),this.model.disabled?this.sliderEl.setAttribute(\"disabled\",\"true\"):this.sliderEl.removeAttribute(\"disabled\")},t.prototype._slide=function(t){var e=this,n=this._calc_from(t),i=t.map(function(t){return e.model.pretty(t)}).join(\" .. \");v.logger.debug(\"[slider slide] value = \"+i),null!=this.valueEl&&(this.valueEl.textContent=i),this.model.value=n,null!=this.callback_wrapper&&this.callback_wrapper()},t.prototype._change=function(t){var e=this,n=this._calc_from(t),i=t.map(function(t){return e.model.pretty(t)}).join(\" .. \");switch(v.logger.debug(\"[slider change] value = \"+i),null!=this.valueEl&&(this.valueEl.dataset.value=i),this.model.value=n,this.model.callback_policy){case\"mouseup\":case\"throttle\":null!=this.model.callback&&this.model.callback.execute(this.model)}},t}(o.WidgetView);n.AbstractSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.connected=!1,e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"AbstractSlider\",this.define({title:[r.String,\"\"],show_value:[r.Bool,!0],start:[r.Any],end:[r.Any],value:[r.Any],step:[r.Number,1],format:[r.String],orientation:[r.Orientation,\"horizontal\"],direction:[r.Any,\"ltr\"],tooltips:[r.Boolean,!0],callback:[r.Instance],callback_throttle:[r.Number,200],callback_policy:[r.String,\"throttle\"],bar_color:[r.Color,\"#e6e6e6\"]})},t.prototype._formatter=function(t,e){return\"\"+t},t.prototype.pretty=function(t){return this._formatter(t,this.format)},t}(o.Widget);(n.AbstractSlider=a).initClass()},404:function(t,e,n){var i=t(391),r=t(428),s=t(5),o=t(400),a=t(15),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),o.clear_menus.connect(function(){return t._clear_menu()})},t.prototype.render=function(){var e=this;n.prototype.render.call(this),this.inputEl.classList.add(\"bk-autocomplete-input\"),this.inputEl.addEventListener(\"keydown\",function(t){return e._keydown(t)}),this.inputEl.addEventListener(\"keyup\",function(t){return e._keyup(t)}),this.menuEl=s.ul({class:\"bk-bs-dropdown-menu\"}),this.menuEl.addEventListener(\"click\",function(t){return e._item_click(t)}),this.el.appendChild(this.menuEl)},t.prototype._render_items=function(t){s.empty(this.menuEl);for(var e=0,n=t;e<n.length;e++){var i=n[e],r=s.li({},s.a({data:{text:i}},i));this.menuEl.appendChild(r)}},t.prototype._open_menu=function(){this.el.classList.add(\"bk-bs-open\")},t.prototype._clear_menu=function(){this.el.classList.remove(\"bk-bs-open\")},t.prototype._item_click=function(t){if(t.preventDefault(),t.target!=t.currentTarget){var e=t.target,n=e.dataset.text;this.model.value=n}},t.prototype._keydown=function(t){},t.prototype._keyup=function(t){switch(t.keyCode){case s.Keys.Enter:console.log(\"enter\");break;case s.Keys.Esc:this._clear_menu();break;case s.Keys.Up:case s.Keys.Down:console.log(\"up/down\");break;default:var e=this.inputEl.value;if(e.length<=1)return void this._clear_menu();for(var n=[],i=0,r=this.model.completions;i<r.length;i++){var o=r[i];-1!=o.indexOf(e)&&n.push(o)}0==n.length?this._clear_menu():(this._render_items(n),this._open_menu())}},t}(r.TextInputView);n.AutocompleteInputView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"AutocompleteInput\",this.prototype.default_view=l,this.define({completions:[a.Array,[]]}),this.internal({active:[a.Boolean,!0]})},t}(r.TextInput);(n.AutocompleteInput=u).initClass()},405:function(t,e,n){var i=t(391),r=t(15),o=t(3),s=t(401),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.change_input=function(){this.model.trigger_event(new o.ButtonClick({})),this.model.clicks=this.model.clicks+1,t.prototype.change_input.call(this)},e}(s.AbstractButtonView);n.ButtonView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Button\",this.prototype.default_view=a,this.define({clicks:[r.Number,0]}),o.register_with_event(o.ButtonClick,this)},t}(s.AbstractButton);(n.Button=l).initClass()},406:function(t,e,n){var i=t(391),l=t(5),r=t(15),u=t(21),o=t(440),s=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var i=this;n.prototype.render.call(this),l.empty(this.el);var r=l.div({class:\"bk-bs-btn-group\"});this.el.appendChild(r);for(var o=this.model.active,s=this.model.labels,t=function(t){var e=l.input({type:\"checkbox\",value:\"\"+t,checked:t in o});e.addEventListener(\"change\",function(){return i.model.change_input(t)});var n=l.label({class:[\"bk-bs-btn\",\"bk-bs-btn-\"+a.model.button_type]},e,s[t]);u.includes(o,t)&&n.classList.add(\"bk-bs-active\"),r.appendChild(n)},a=this,e=0;e<s.length;e++)t(e)},t}(o.WidgetView);n.CheckboxButtonGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.prototype.change_input=function(e){var t=u.copy(this.active);u.includes(t,e)?u.removeBy(t,function(t){return e==t}):t.push(e),t.sort(),this.active=t,null!=this.callback&&this.callback.execute(this)},t.initClass=function(){this.prototype.type=\"CheckboxButtonGroup\",this.prototype.default_view=s,this.define({active:[r.Array,[]],labels:[r.Array,[]],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(o.Widget);(n.CheckboxButtonGroup=a).initClass()},407:function(t,e,n){var i=t(391),u=t(5),r=t(15),c=t(21),o=t(440),s=function(l){function t(){return null!==l&&l.apply(this,arguments)||this}return i.__extends(t,l),t.prototype.initialize=function(t){l.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;l.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;l.prototype.render.call(this),u.empty(this.el);for(var e=this.model.active,n=this.model.labels,i=0;i<n.length;i++){var r=n[i],o=u.input({type:\"checkbox\",value:\"\"+i});o.addEventListener(\"change\",function(){return t.change_input()}),this.model.disabled&&(o.disabled=!0),c.includes(e,i)&&(o.checked=!0);var s=u.label({},o,r);if(this.model.inline)s.classList.add(\"bk-bs-checkbox-inline\"),this.el.appendChild(s);else{var a=u.div({class:\"bk-bs-checkbox\"},s);this.el.appendChild(a)}}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e,null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.CheckboxGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"CheckboxGroup\",this.prototype.default_view=s,this.define({active:[r.Array,[]],labels:[r.Array,[]],inline:[r.Bool,!1],callback:[r.Instance]})},t}(o.Widget);(n.CheckboxGroup=a).initClass()},408:function(t,e,n){var i=t(391),r=t(414),o=t(5),s=t(15),a=t(432);a.prototype.adjustPosition=function(){if(!this._o.container){this.el.style.position=\"absolute\";var t=this._o.trigger,e=this.el.offsetWidth,n=this.el.offsetHeight,i=window.innerWidth||document.documentElement.clientWidth,r=window.innerHeight||document.documentElement.clientHeight,o=window.pageYOffset||document.body.scrollTop||document.documentElement.scrollTop,s=t.getBoundingClientRect(),a=s.left+window.pageXOffset,l=s.bottom+window.pageYOffset;a-=this.el.parentElement.offsetLeft,l-=this.el.parentElement.offsetTop,(this._o.reposition&&i<a+e||-1<this._o.position.indexOf(\"right\")&&0<a-e+t.offsetWidth)&&(a=a-e+t.offsetWidth),(this._o.reposition&&r+o<l+n||-1<this._o.position.indexOf(\"top\")&&0<l-n-t.offsetHeight)&&(l=l-n-t.offsetHeight),this.el.style.left=a+\"px\",this.el.style.top=l+\"px\"}};var l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-widget-form-group\")},e.prototype.render=function(){var e=this;t.prototype.render.call(this),null!=this._picker&&this._picker.destroy(),o.empty(this.el),this.labelEl=o.label({},this.model.title),this.el.appendChild(this.labelEl),this.inputEl=o.input({type:\"text\",class:\"bk-widget-form-input\",disabled:this.model.disabled}),this.el.appendChild(this.inputEl),this._picker=new a({field:this.inputEl,defaultDate:new Date(this.model.value),setDefaultDate:!0,minDate:null!=this.model.min_date?new Date(this.model.min_date):void 0,maxDate:null!=this.model.max_date?new Date(this.model.max_date):void 0,onSelect:function(t){return e._on_select(t)}}),this._root_element.appendChild(this._picker.el)},e.prototype._on_select=function(t){this.model.value=t.toDateString(),this.change_input()},e}(r.InputWidgetView);n.DatePickerView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"DatePicker\",this.prototype.default_view=l,this.define({value:[s.Any,(new Date).toDateString()],min_date:[s.Any],max_date:[s.Any]})},t}(r.InputWidget);(n.DatePicker=u).initClass()},409:function(t,e,n){var i=t(391),r=t(390),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}},e.prototype._calc_from=function(t){return t},e}(o.AbstractSliderView);n.DateRangeSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"drag\",e.connected=[!1,!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"DateRangeSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},t.prototype._formatter=function(t,e){return r(t,e)},t}(o.AbstractSlider);(n.DateRangeSlider=a).initClass()},410:function(t,e,n){var i=t(391),r=t(390),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}},e.prototype._calc_from=function(t){var e=t[0];return e},e}(o.AbstractSliderView);n.DateSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"tap\",e.connected=[!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"DateSlider\",this.prototype.default_view=s,this.override({format:\"%d %b %Y\"})},t.prototype._formatter=function(t,e){return r(t,e)},t}(o.AbstractSlider);(n.DateSlider=a).initClass()},411:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=t(15),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.div();this.model.render_as_text?t.textContent=this.model.text:t.innerHTML=this.model.text,this.markupEl.appendChild(t)},t}(r.MarkupView);n.DivView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Div\",this.prototype.default_view=a,this.define({render_as_text:[s.Bool,!1]})},t}(r.Markup);(n.Div=l).initClass()},412:function(t,e,n){var i=t(391),h=t(5),r=t(400),o=t(15),s=t(401),a=function(d){function t(){return null!==d&&d.apply(this,arguments)||this}return i.__extends(t,d),t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),r.clear_menus.connect(function(){return t._clear_menu()})},t.prototype.render=function(){var e=this;if(d.prototype.render.call(this),this.model.is_split_button){this.el.classList.add(\"bk-bs-btn-group\");var t=this._render_button(h.span({class:\"bk-bs-caret\"}));t.classList.add(\"bk-bs-dropdown-toggle\"),t.addEventListener(\"click\",function(t){return e._caret_click(t)}),this.el.appendChild(t)}else this.el.classList.add(\"bk-bs-dropdown\"),this.buttonEl.classList.add(\"bk-bs-dropdown-toggle\"),this.buttonEl.appendChild(h.span({class:\"bk-bs-caret\"}));this.model.active&&this.el.classList.add(\"bk-bs-open\");for(var n=[],i=0,r=this.model.menu;i<r.length;i++){var o=r[i],s=void 0;if(null!=o){var a=o[0],l=o[1],u=h.a({},a);u.dataset.value=l,u.addEventListener(\"click\",function(t){return e._item_click(t)}),s=h.li({},u)}else s=h.li({class:\"bk-bs-divider\"});n.push(s)}var c=h.ul({class:\"bk-bs-dropdown-menu\"},n);this.el.appendChild(c)},t.prototype._clear_menu=function(){this.model.active=!1},t.prototype._toggle_menu=function(){var t=this.model.active;r.clear_menus.emit(),t||(this.model.active=!0)},t.prototype._button_click=function(t){t.preventDefault(),t.stopPropagation(),this.model.is_split_button?(this._clear_menu(),this.set_value(this.model.default_value)):this._toggle_menu()},t.prototype._caret_click=function(t){t.preventDefault(),t.stopPropagation(),this._toggle_menu()},t.prototype._item_click=function(t){t.preventDefault(),this._clear_menu(),this.set_value(t.currentTarget.dataset.value)},t.prototype.set_value=function(t){this.buttonEl.value=this.model.value=t,this.change_input()},t}(s.AbstractButtonView);n.DropdownView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Dropdown\",this.prototype.default_view=a,this.define({value:[o.String],default_value:[o.String],menu:[o.Array,[]]}),this.override({label:\"Dropdown\"}),this.internal({active:[o.Boolean,!1]})},Object.defineProperty(t.prototype,\"is_split_button\",{get:function(){return null!=this.default_value},enumerable:!0,configurable:!0}),t}(s.AbstractButton);(n.Dropdown=l).initClass()},413:function(t,e,n){var i=t(401);n.AbstractButton=i.AbstractButton;var r=t(402);n.AbstractIcon=r.AbstractIcon;var o=t(404);n.AutocompleteInput=o.AutocompleteInput;var s=t(405);n.Button=s.Button;var a=t(406);n.CheckboxButtonGroup=a.CheckboxButtonGroup;var l=t(407);n.CheckboxGroup=l.CheckboxGroup;var u=t(408);n.DatePicker=u.DatePicker;var c=t(409);n.DateRangeSlider=c.DateRangeSlider;var d=t(410);n.DateSlider=d.DateSlider;var h=t(411);n.Div=h.Div;var p=t(412);n.Dropdown=p.Dropdown;var f=t(414);n.InputWidget=f.InputWidget;var m=t(416);n.Markup=m.Markup;var v=t(417);n.MultiSelect=v.MultiSelect;var g=t(418);n.Panel=g.Panel;var y=t(419);n.Paragraph=y.Paragraph;var b=t(420);n.PasswordInput=b.PasswordInput;var _=t(421);n.PreText=_.PreText;var w=t(422);n.RadioButtonGroup=w.RadioButtonGroup;var x=t(423);n.RadioGroup=x.RadioGroup;var k=t(424);n.RangeSlider=k.RangeSlider;var S=t(425);n.Select=S.Select;var C=t(426);n.Slider=C.Slider;var E=t(427);n.Tabs=E.Tabs;var D=t(428);n.TextInput=D.TextInput;var M=t(429);n.Toggle=M.Toggle;var A=t(440);n.Widget=A.Widget},414:function(t,e,n){var i=t(391),r=t(440),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.change_input=function(){null!=this.model.callback&&this.model.callback.execute(this.model)},e}(r.WidgetView);n.InputWidgetView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"InputWidget\",this.prototype.default_view=s,this.define({title:[o.String,\"\"],callback:[o.Instance]})},t}(r.Widget);(n.InputWidget=a).initClass()},415:function(t,e,n){var i=t(413);n.Widgets=i;var r=t(0);r.register_models(i)},416:function(t,e,n){var i=t(391),r=t(15),o=t(5),s=t(440),a=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.initialize=function(t){e.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;e.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){e.prototype.render.call(this),o.empty(this.el);var t=i.__assign({width:this.model.width+\"px\",height:this.model.height+\"px\"},this.model.style);this.markupEl=o.div({style:t}),this.el.appendChild(this.markupEl)},t}(s.WidgetView);n.MarkupView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Markup\",this.define({text:[r.String,\"\"],style:[r.Any,{}]})},t}(s.Widget);(n.Markup=l).initClass()},417:function(t,e,n){var i=t(391),r=t(5),s=t(44),a=t(29),o=t(15),l=t(414),u=function(o){function t(){return null!==o&&o.apply(this,arguments)||this}return i.__extends(t,o),t.prototype.initialize=function(t){o.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;o.prototype.connect_signals.call(this),this.connect(this.model.properties.value.change,function(){return t.render_selection()}),this.connect(this.model.properties.options.change,function(){return t.render()}),this.connect(this.model.properties.name.change,function(){return t.render()}),this.connect(this.model.properties.title.change,function(){return t.render()}),this.connect(this.model.properties.size.change,function(){return t.render()}),this.connect(this.model.properties.disabled.change,function(){return t.render()})},t.prototype.render=function(){var t=this;o.prototype.render.call(this),r.empty(this.el);var e=r.label({for:this.model.id},this.model.title);this.el.appendChild(e);var n=this.model.options.map(function(t){var e,n;return s.isString(t)?e=n=t:(e=t[0],n=t[1]),r.option({value:e},n)});this.selectEl=r.select({multiple:!0,class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,disabled:this.model.disabled},n),this.selectEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.selectEl),this.render_selection()},t.prototype.render_selection=function(){for(var t=new a.Set(this.model.value),e=0,n=Array.from(this.el.querySelectorAll(\"option\"));e<n.length;e++){var i=n[e];i.selected=t.has(i.value)}this.selectEl.size=this.model.size},t.prototype.change_input=function(){for(var t=null!=this.el.querySelector(\"select:focus\"),e=[],n=0,i=Array.from(this.el.querySelectorAll(\"option\"));n<i.length;n++){var r=i[n];r.selected&&e.push(r.value)}this.model.value=e,o.prototype.change_input.call(this),t&&this.selectEl.focus()},t}(l.InputWidgetView);n.MultiSelectView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"MultiSelect\",this.prototype.default_view=u,this.define({value:[o.Array,[]],options:[o.Array,[]],size:[o.Number,4]})},t}(l.InputWidget);(n.MultiSelect=c).initClass()},418:function(t,e,n){var i=t(391),r=t(440),o=t(15),s=t(5),a=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),s.empty(this.el)},e}(r.WidgetView);n.PanelView=a;var l=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Panel\",this.prototype.default_view=a,this.define({title:[o.String,\"\"],child:[o.Instance],closable:[o.Bool,!1]})},t}(r.Widget);(n.Panel=l).initClass()},419:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.p({style:{margin:0}},this.model.text);this.markupEl.appendChild(t)},t}(r.MarkupView);n.ParagraphView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Paragraph\",this.prototype.default_view=s},t}(r.Markup);(n.Paragraph=a).initClass()},420:function(t,e,n){var i=t(391),r=t(428),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.inputEl.type=\"password\"},e}(r.TextInputView);n.PasswordInputView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"PasswordInput\",this.prototype.default_view=o},t}(r.TextInput);(n.PasswordInput=s).initClass()},421:function(t,e,n){var i=t(391),r=t(416),o=t(5),s=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return i.__extends(t,e),t.prototype.render=function(){e.prototype.render.call(this);var t=o.pre({style:{overflow:\"auto\"}},this.model.text);this.markupEl.appendChild(t)},t}(r.MarkupView);n.PreTextView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"PreText\",this.prototype.default_view=s},t}(r.Markup);(n.PreText=a).initClass()},422:function(t,e,n){var i=t(391),c=t(5),d=t(38),r=t(15),o=t(440),s=function(u){function t(){return null!==u&&u.apply(this,arguments)||this}return i.__extends(t,u),t.prototype.initialize=function(t){u.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;u.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;u.prototype.render.call(this),c.empty(this.el);var e=c.div({class:\"bk-bs-btn-group\"});this.el.appendChild(e);for(var n=d.uniqueId(),i=this.model.active,r=this.model.labels,o=0;o<r.length;o++){var s=r[o],a=c.input({type:\"radio\",name:n,value:\"\"+o,checked:o==i});a.addEventListener(\"change\",function(){return t.change_input()});var l=c.label({class:[\"bk-bs-btn\",\"bk-bs-btn-\"+this.model.button_type]},a,s);o==i&&l.classList.add(\"bk-bs-active\"),e.appendChild(l)}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e[0],null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.RadioButtonGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"RadioButtonGroup\",this.prototype.default_view=s,this.define({active:[r.Any,null],labels:[r.Array,[]],button_type:[r.String,\"default\"],callback:[r.Instance]})},t}(o.Widget);(n.RadioButtonGroup=a).initClass()},423:function(t,e,n){var i=t(391),c=t(5),d=t(38),r=t(15),o=t(440),s=function(u){function t(){return null!==u&&u.apply(this,arguments)||this}return i.__extends(t,u),t.prototype.initialize=function(t){u.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;u.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.render=function(){var t=this;u.prototype.render.call(this),c.empty(this.el);for(var e=d.uniqueId(),n=this.model.active,i=this.model.labels,r=0;r<i.length;r++){var o=i[r],s=c.input({type:\"radio\",name:e,value:\"\"+r});s.addEventListener(\"change\",function(){return t.change_input()}),this.model.disabled&&(s.disabled=!0),r==n&&(s.checked=!0);var a=c.label({},s,o);if(this.model.inline)a.classList.add(\"bk-bs-radio-inline\"),this.el.appendChild(a);else{var l=c.div({class:\"bk-bs-radio\"},a);this.el.appendChild(l)}}},t.prototype.change_input=function(){for(var t=this.el.querySelectorAll(\"input\"),e=[],n=0;n<t.length;n++){var i=t[n];i.checked&&e.push(n)}this.model.active=e[0],null!=this.model.callback&&this.model.callback.execute(this.model)},t}(o.WidgetView);n.RadioGroupView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"RadioGroup\",this.prototype.default_view=s,this.define({active:[r.Any,null],labels:[r.Array,[]],inline:[r.Bool,!1],callback:[r.Instance]})},t}(o.Widget);(n.RadioGroup=a).initClass()},424:function(t,e,n){var i=t(391),r=t(361),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:this.model.value,step:this.model.step}},e.prototype._calc_from=function(t){return t},e}(o.AbstractSliderView);n.RangeSliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"drag\",e.connected=[!1,!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"RangeSlider\",this.prototype.default_view=s,this.override({format:\"0[.]00\"})},t.prototype._formatter=function(t,e){return r.format(t,e)},t}(o.AbstractSlider);(n.RangeSlider=a).initClass()},425:function(t,e,n){var i=t(391),a=t(5),l=t(44),r=t(14),o=t(15),s=t(414),u=function(s){function t(){return null!==s&&s.apply(this,arguments)||this}return i.__extends(t,s),t.prototype.initialize=function(t){s.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;s.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.build_options=function(t){var r=this;return t.map(function(t){var e,n;l.isString(t)?e=n=t:(e=t[0],n=t[1]);var i=r.model.value==e;return a.option({selected:i,value:e},n)})},t.prototype.render=function(){var t=this;s.prototype.render.call(this),a.empty(this.el);var e,n=a.label({for:this.model.id},this.model.title);if(this.el.appendChild(n),l.isArray(this.model.options))e=this.build_options(this.model.options);else{e=[];var i=this.model.options;for(var r in i){var o=i[r];e.push(a.optgroup({label:r},this.build_options(o)))}}this.selectEl=a.select({class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,disabled:this.model.disabled},e),this.selectEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.selectEl)},t.prototype.change_input=function(){var t=this.selectEl.value;r.logger.debug(\"selectbox: value = \"+t),this.model.value=t,s.prototype.change_input.call(this)},t}(s.InputWidgetView);n.SelectView=u;var c=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Select\",this.prototype.default_view=u,this.define({value:[o.String,\"\"],options:[o.Any,[]]})},t}(s.InputWidget);(n.Select=c).initClass()},426:function(t,e,n){var i=t(391),r=t(361),o=t(403),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype._calc_to=function(){return{start:this.model.start,end:this.model.end,value:[this.model.value],step:this.model.step}},e.prototype._calc_from=function(t){var e=t[0];return Number.isInteger(this.model.start)&&Number.isInteger(this.model.end)&&Number.isInteger(this.model.step)?Math.round(e):e},e}(o.AbstractSliderView);n.SliderView=s;var a=function(n){function t(t){var e=n.call(this,t)||this;return e.behaviour=\"tap\",e.connected=[!0,!1],e}return i.__extends(t,n),t.initClass=function(){this.prototype.type=\"Slider\",this.prototype.default_view=s,this.override({format:\"0[.]00\"})},t.prototype._formatter=function(t,e){return r.format(t,e)},t}(o.AbstractSlider);(n.Slider=a).initClass()},427:function(t,e,n){var i=t(391),h=t(5),p=t(21),r=t(15),o=t(440),s=function(d){function t(){return null!==d&&d.apply(this,arguments)||this}return i.__extends(t,d),t.prototype.connect_signals=function(){var t=this;d.prototype.connect_signals.call(this),this.connect(this.model.properties.tabs.change,function(){return t.rebuild_child_views()}),this.connect(this.model.properties.active.change,function(){return t.render()})},t.prototype.render=function(){var r=this;d.prototype.render.call(this),h.empty(this.el);var t=this.model.tabs.length;if(0!=t){this.model.active>=t&&(this.model.active=t-1);var o=this.model.tabs.map(function(t,e){return h.li({},h.span({data:{index:e}},t.title))});o[this.model.active].classList.add(\"bk-bs-active\");var e=h.ul({class:[\"bk-bs-nav\",\"bk-bs-nav-tabs\"]},o);this.el.appendChild(e);var s=this.model.tabs.map(function(t){return h.div({class:\"bk-bs-tab-pane\"})});s[this.model.active].classList.add(\"bk-bs-active\");var n=h.div({class:\"bk-bs-tab-content\"},s);this.el.appendChild(n),e.addEventListener(\"click\",function(t){if(t.preventDefault(),t.target!=t.currentTarget){var e=t.target,n=r.model.active,i=parseInt(e.dataset.index);n!=i&&(o[n].classList.remove(\"bk-bs-active\"),s[n].classList.remove(\"bk-bs-active\"),o[i].classList.add(\"bk-bs-active\"),s[i].classList.add(\"bk-bs-active\"),r.model.active=i,null!=r.model.callback&&r.model.callback.execute(r.model))}});for(var i=0,a=p.zip(this.model.children,s);i<a.length;i++){var l=a[i],u=l[0],c=l[1];c.appendChild(this.child_views[u.id].el)}}},t}(o.WidgetView);n.TabsView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Tabs\",this.prototype.default_view=s,this.define({tabs:[r.Array,[]],active:[r.Number,0],callback:[r.Instance]})},t.prototype.get_layoutable_children=function(){return this.children},Object.defineProperty(t.prototype,\"children\",{get:function(){return this.tabs.map(function(t){return t.child})},enumerable:!0,configurable:!0}),t}(o.Widget);(n.Tabs=a).initClass()},428:function(t,e,n){var i=t(391),r=t(14),o=t(15),s=t(5),a=t(414),l=function(n){function t(){return null!==n&&n.apply(this,arguments)||this}return i.__extends(t,n),t.prototype.initialize=function(t){n.prototype.initialize.call(this,t),this.render()},t.prototype.connect_signals=function(){var t=this;n.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return t.render()})},t.prototype.css_classes=function(){return n.prototype.css_classes.call(this).concat(\"bk-widget-form-group\")},t.prototype.render=function(){var t=this;n.prototype.render.call(this),s.empty(this.el);var e=s.label({for:this.model.id},this.model.title);this.el.appendChild(e),this.inputEl=s.input({type:\"text\",class:\"bk-widget-form-input\",id:this.model.id,name:this.model.name,value:this.model.value,disabled:this.model.disabled,placeholder:this.model.placeholder}),this.inputEl.addEventListener(\"change\",function(){return t.change_input()}),this.el.appendChild(this.inputEl),this.model.height&&(this.inputEl.style.height=this.model.height-35+\"px\")},t.prototype.change_input=function(){var t=this.inputEl.value;r.logger.debug(\"widget/text_input: value = \"+t),this.model.value=t,n.prototype.change_input.call(this)},t}(a.InputWidgetView);n.TextInputView=l;var u=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextInput\",this.prototype.default_view=l,this.define({value:[o.String,\"\"],placeholder:[o.String,\"\"]})},t}(a.InputWidget);(n.TextInput=u).initClass()},429:function(t,e,n){var i=t(391),r=t(401),o=t(15),s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.render=function(){t.prototype.render.call(this),this.model.active&&this.buttonEl.classList.add(\"bk-bs-active\")},e.prototype.change_input=function(){this.model.active=!this.model.active,t.prototype.change_input.call(this)},e}(r.AbstractButtonView);n.ToggleView=s;var a=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Toggle\",this.prototype.default_view=s,this.define({active:[o.Bool,!1]}),this.override({label:\"Toggle\"})},t}(r.AbstractButton);(n.Toggle=a).initClass()},440:function(t,e,n){var i=t(391),r=t(157),o=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return i.__extends(e,t),e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-widget\")},e.prototype.render=function(){this._render_classes(),null!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),null!=this.model.width&&(this.el.style.width=this.model.width+\"px\")},e.prototype.get_width=function(){throw new Error(\"unused\")},e.prototype.get_height=function(){throw new Error(\"unused\")},e}(r.LayoutDOMView);n.WidgetView=o;var s=function(e){function t(t){return e.call(this,t)||this}return i.__extends(t,e),t.initClass=function(){this.prototype.type=\"Widget\"},t}(r.LayoutDOM);(n.Widget=s).initClass()},431:function(t,e,n){\n      /*! nouislider - 10.1.0 - 2017-07-28 17:11:18 */var i;i=function(){\"use strict\";var $=\"10.1.0\";function Q(t){t.preventDefault()}function r(t){return\"number\"==typeof t&&!isNaN(t)&&isFinite(t)}function Z(t,e,n){0<n&&(et(t,e),setTimeout(function(){nt(t,e)},n))}function tt(t){return Array.isArray(t)?t:[t]}function e(t){var e=(t=String(t)).split(\".\");return 1<e.length?e[1].length:0}function et(t,e){t.classList?t.classList.add(e):t.className+=\" \"+e}function nt(t,e){t.classList?t.classList.remove(e):t.className=t.className.replace(new RegExp(\"(^|\\\\b)\"+e.split(\" \").join(\"|\")+\"(\\\\b|$)\",\"gi\"),\" \")}function it(t){var e=void 0!==window.pageXOffset,n=\"CSS1Compat\"===(t.compatMode||\"\"),i=e?window.pageXOffset:n?t.documentElement.scrollLeft:t.body.scrollLeft,r=e?window.pageYOffset:n?t.documentElement.scrollTop:t.body.scrollTop;return{x:i,y:r}}function c(t,e){return 100/(e-t)}function d(t,e){return 100*e/(t[1]-t[0])}function h(t,e){for(var n=1;t>=e[n];)n+=1;return n}function n(t,e,n){if(n>=t.slice(-1)[0])return 100;var i,r,o,s,a,l,u=h(n,t);return i=t[u-1],r=t[u],o=e[u-1],s=e[u],o+(l=n,d(a=[i,r],a[0]<0?l+Math.abs(a[0]):l-a[0])/c(o,s))}function i(t,e,n,i){if(100===i)return i;var r,o,s,a,l=h(i,t);return n?(r=t[l-1],((o=t[l])-r)/2<i-r?o:r):e[l-1]?t[l-1]+(s=i-t[l-1],a=e[l-1],Math.round(s/a)*a):i}function o(t,e,n){var i;if(\"number\"==typeof e&&(e=[e]),\"[object Array]\"!==Object.prototype.toString.call(e))throw new Error(\"noUiSlider (\"+$+\"): 'range' contains invalid value.\");if(!r(i=\"min\"===t?0:\"max\"===t?100:parseFloat(t))||!r(e[0]))throw new Error(\"noUiSlider (\"+$+\"): 'range' value isn't numeric.\");n.xPct.push(i),n.xVal.push(e[0]),i?n.xSteps.push(!isNaN(e[1])&&e[1]):isNaN(e[1])||(n.xSteps[0]=e[1]),n.xHighestCompleteStep.push(0)}function s(t,e,n){if(!e)return!0;n.xSteps[t]=d([n.xVal[t],n.xVal[t+1]],e)/c(n.xPct[t],n.xPct[t+1]);var i=(n.xVal[t+1]-n.xVal[t])/n.xNumSteps[t],r=Math.ceil(Number(i.toFixed(3))-1),o=n.xVal[t]+n.xNumSteps[t]*r;n.xHighestCompleteStep[t]=o}function a(t,e,n){this.xPct=[],this.xVal=[],this.xSteps=[n||!1],this.xNumSteps=[!1],this.xHighestCompleteStep=[],this.snap=e;var i,r=[];for(i in t)t.hasOwnProperty(i)&&r.push([t[i],i]);for(r.length&&\"object\"==typeof r[0][0]?r.sort(function(t,e){return t[0][0]-e[0][0]}):r.sort(function(t,e){return t[0]-e[0]}),i=0;i<r.length;i++)o(r[i][1],r[i][0],this);for(this.xNumSteps=this.xSteps.slice(0),i=0;i<this.xNumSteps.length;i++)s(i,this.xNumSteps[i],this)}a.prototype.getMargin=function(t){var e=this.xNumSteps[0];if(e&&t/e%1!=0)throw new Error(\"noUiSlider (\"+$+\"): 'limit', 'margin' and 'padding' must be divisible by step.\");return 2===this.xPct.length&&d(this.xVal,t)},a.prototype.toStepping=function(t){return t=n(this.xVal,this.xPct,t)},a.prototype.fromStepping=function(t){return function(t,e,n){if(100<=n)return t.slice(-1)[0];var i,r,o,s,a,l=h(n,e);return i=t[l-1],r=t[l],o=e[l-1],s=e[l],a=[i,r],(n-o)*c(o,s)*(a[1]-a[0])/100+a[0]}(this.xVal,this.xPct,t)},a.prototype.getStep=function(t){return t=i(this.xPct,this.xSteps,this.snap,t)},a.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-0],step:this.xNumSteps[e-0],highestStep:this.xHighestCompleteStep[e-0]}}},a.prototype.countStepDecimals=function(){var t=this.xNumSteps.map(e);return Math.max.apply(null,t)},a.prototype.convert=function(t){return this.getStep(this.toStepping(t))};var l={to:function(t){return void 0!==t&&t.toFixed(2)},from:Number};function u(t){if(\"object\"==typeof(e=t)&&\"function\"==typeof e.to&&\"function\"==typeof e.from)return!0;var e;throw new Error(\"noUiSlider (\"+$+\"): 'format' requires 'to' and 'from' methods.\")}function p(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'step' is not numeric.\");t.singleStep=e}function f(t,e){if(\"object\"!=typeof e||Array.isArray(e))throw new Error(\"noUiSlider (\"+$+\"): 'range' is not an object.\");if(void 0===e.min||void 0===e.max)throw new Error(\"noUiSlider (\"+$+\"): Missing 'min' or 'max' in 'range'.\");if(e.min===e.max)throw new Error(\"noUiSlider (\"+$+\"): 'range' 'min' and 'max' cannot be equal.\");t.spectrum=new a(e,t.snap,t.singleStep)}function m(t,e){if(e=tt(e),!Array.isArray(e)||!e.length)throw new Error(\"noUiSlider (\"+$+\"): 'start' option is incorrect.\");t.handles=e.length,t.start=e}function v(t,e){if(\"boolean\"!=typeof(t.snap=e))throw new Error(\"noUiSlider (\"+$+\"): 'snap' option must be a boolean.\")}function g(t,e){if(\"boolean\"!=typeof(t.animate=e))throw new Error(\"noUiSlider (\"+$+\"): 'animate' option must be a boolean.\")}function y(t,e){if(\"number\"!=typeof(t.animationDuration=e))throw new Error(\"noUiSlider (\"+$+\"): 'animationDuration' option must be a number.\")}function b(t,e){var n,i=[!1];if(\"lower\"===e?e=[!0,!1]:\"upper\"===e&&(e=[!1,!0]),!0===e||!1===e){for(n=1;n<t.handles;n++)i.push(e);i.push(!1)}else{if(!Array.isArray(e)||!e.length||e.length!==t.handles+1)throw new Error(\"noUiSlider (\"+$+\"): 'connect' option doesn't match handle count.\");i=e}t.connect=i}function _(t,e){switch(e){case\"horizontal\":t.ort=0;break;case\"vertical\":t.ort=1;break;default:throw new Error(\"noUiSlider (\"+$+\"): 'orientation' option is invalid.\")}}function w(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'margin' option must be numeric.\");if(0!==e&&(t.margin=t.spectrum.getMargin(e),!t.margin))throw new Error(\"noUiSlider (\"+$+\"): 'margin' option is only supported on linear sliders.\")}function x(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'limit' option must be numeric.\");if(t.limit=t.spectrum.getMargin(e),!t.limit||t.handles<2)throw new Error(\"noUiSlider (\"+$+\"): 'limit' option is only supported on linear sliders with 2 or more handles.\")}function k(t,e){if(!r(e))throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be numeric.\");if(0!==e){if(t.padding=t.spectrum.getMargin(e),!t.padding)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option is only supported on linear sliders.\");if(t.padding<0)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be a positive number.\");if(50<=t.padding)throw new Error(\"noUiSlider (\"+$+\"): 'padding' option must be less than half the range.\")}}function S(t,e){switch(e){case\"ltr\":t.dir=0;break;case\"rtl\":t.dir=1;break;default:throw new Error(\"noUiSlider (\"+$+\"): 'direction' option was not recognized.\")}}function C(t,e){if(\"string\"!=typeof e)throw new Error(\"noUiSlider (\"+$+\"): 'behaviour' must be a string containing options.\");var n=0<=e.indexOf(\"tap\"),i=0<=e.indexOf(\"drag\"),r=0<=e.indexOf(\"fixed\"),o=0<=e.indexOf(\"snap\"),s=0<=e.indexOf(\"hover\");if(r){if(2!==t.handles)throw new Error(\"noUiSlider (\"+$+\"): 'fixed' behaviour must be used with 2 handles\");w(t,t.start[1]-t.start[0])}t.events={tap:n||o,drag:i,fixed:r,snap:o,hover:s}}function E(t,e){if(\"boolean\"!=typeof(t.multitouch=e))throw new Error(\"noUiSlider (\"+$+\"): 'multitouch' option must be a boolean.\")}function D(t,e){if(!1!==e)if(!0===e){t.tooltips=[];for(var n=0;n<t.handles;n++)t.tooltips.push(!0)}else{if(t.tooltips=tt(e),t.tooltips.length!==t.handles)throw new Error(\"noUiSlider (\"+$+\"): 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 (\"+$+\"): 'tooltips' must be passed a formatter or 'false'.\")})}}function M(t,e){u(t.ariaFormat=e)}function A(t,e){u(t.format=e)}function N(t,e){if(void 0!==e&&\"string\"!=typeof e&&!1!==e)throw new Error(\"noUiSlider (\"+$+\"): 'cssPrefix' must be a string or `false`.\");t.cssPrefix=e}function V(t,e){if(void 0!==e&&\"object\"!=typeof e)throw new Error(\"noUiSlider (\"+$+\"): 'cssClasses' must be an object.\");if(\"string\"==typeof t.cssPrefix)for(var n in t.cssClasses={},e)e.hasOwnProperty(n)&&(t.cssClasses[n]=t.cssPrefix+e[n]);else t.cssClasses=e}function I(t,e){if(!0!==e&&!1!==e)throw new Error(\"noUiSlider (\"+$+\"): 'useRequestAnimationFrame' option should be true (default) or false.\");t.useRequestAnimationFrame=e}function rt(e){var n={margin:0,limit:0,padding:0,animate:!0,animationDuration:300,ariaFormat:l,format:l},i={step:{r:!1,t:p},start:{r:!0,t:m},connect:{r:!0,t:b},direction:{r:!0,t:S},snap:{r:!1,t:v},animate:{r:!1,t:g},animationDuration:{r:!1,t:y},range:{r:!0,t:f},orientation:{r:!1,t:_},margin:{r:!1,t:w},limit:{r:!1,t:x},padding:{r:!1,t:k},behaviour:{r:!0,t:C},multitouch:{r:!0,t:E},ariaFormat:{r:!1,t:M},format:{r:!1,t:A},tooltips:{r:!1,t:D},cssPrefix:{r:!1,t:N},cssClasses:{r:!1,t:V},useRequestAnimationFrame:{r:!1,t:I}},r={connect:!1,direction:\"ltr\",behaviour:\"tap\",multitouch:!1,orientation:\"horizontal\",cssPrefix:\"noUi-\",cssClasses:{target:\"target\",base:\"base\",origin:\"origin\",handle:\"handle\",handleLower:\"handle-lower\",handleUpper:\"handle-upper\",horizontal:\"horizontal\",vertical:\"vertical\",background:\"background\",connect:\"connect\",ltr:\"ltr\",rtl:\"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\"},useRequestAnimationFrame:!0};e.format&&!e.ariaFormat&&(e.ariaFormat=e.format),Object.keys(i).forEach(function(t){if(void 0===e[t]&&void 0===r[t]){if(i[t].r)throw new Error(\"noUiSlider (\"+$+\"): '\"+t+\"' is required.\");return!0}i[t].t(n,void 0===e[t]?r[t]:e[t])}),n.pips=e.pips;var t=[[\"left\",\"top\"],[\"right\",\"bottom\"]];return n.style=t[n.dir][n.ort],n.styleOposite=t[n.dir?0:1][n.ort],n}function P(t,d,o){var u,l,s,a,h,r,c,e,p=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\"},n=window.CSS&&CSS.supports&&CSS.supports(\"touch-action\",\"none\"),f=n&&function(){var t=!1;try{var e=Object.defineProperty({},\"passive\",{get:function(){t=!0}});window.addEventListener(\"test\",null,e)}catch(t){}return t}(),_=t,m=[],v=[],g=0,w=d.spectrum,y=[],b={},x=t.ownerDocument,k=x.documentElement,S=x.body;function C(t,e){var n=x.createElement(\"div\");return e&&et(n,e),t.appendChild(n),n}function i(t,e){var n=C(t,d.cssClasses.origin),i=C(n,d.cssClasses.handle);return i.setAttribute(\"data-handle\",e),i.setAttribute(\"tabindex\",\"0\"),i.setAttribute(\"role\",\"slider\"),i.setAttribute(\"aria-orientation\",d.ort?\"vertical\":\"horizontal\"),0===e?et(i,d.cssClasses.handleLower):e===d.handles-1&&et(i,d.cssClasses.handleUpper),n}function E(t,e){return!!e&&C(t,d.cssClasses.connect)}function D(t,e){return!!d.tooltips[e]&&C(t.firstChild,d.cssClasses.tooltip)}function M(e,i,r){var o=x.createElement(\"div\"),s=[d.cssClasses.valueNormal,d.cssClasses.valueLarge,d.cssClasses.valueSub],a=[d.cssClasses.markerNormal,d.cssClasses.markerLarge,d.cssClasses.markerSub],l=[d.cssClasses.valueHorizontal,d.cssClasses.valueVertical],u=[d.cssClasses.markerHorizontal,d.cssClasses.markerVertical];function c(t,e){var n=e===d.cssClasses.value,i=n?l:u,r=n?s:a;return e+\" \"+i[d.ort]+\" \"+r[t]}return et(o,d.cssClasses.pips),et(o,0===d.ort?d.cssClasses.pipsHorizontal:d.cssClasses.pipsVertical),Object.keys(e).forEach(function(t){!function(t,e){e[1]=e[1]&&i?i(e[0],e[1]):e[1];var n=C(o,!1);n.className=c(e[1],d.cssClasses.marker),n.style[d.style]=t+\"%\",e[1]&&((n=C(o,!1)).className=c(e[1],d.cssClasses.value),n.style[d.style]=t+\"%\",n.innerText=r.to(e[0]))}(t,e[t])}),o}function A(){var t;h&&((t=h).parentElement.removeChild(t),h=null)}function N(t){A();var p,f,m,e,v,n,i,g,y,b,r=t.mode,o=t.density||1,s=t.filter||!1,a=t.values||!1,l=t.stepped||!1,u=function(t,e,n){if(\"range\"===t||\"steps\"===t)return w.xVal;if(\"count\"===t){if(!e)throw new Error(\"noUiSlider (\"+$+\"): 'values' required for mode 'count'.\");var i,r=100/(e-1),o=0;for(e=[];(i=o++*r)<=100;)e.push(i);t=\"positions\"}return\"positions\"===t?e.map(function(t){return w.fromStepping(n?w.getStep(t):t)}):\"values\"===t?n?e.map(function(t){return w.fromStepping(w.getStep(w.toStepping(t)))}):e:void 0}(r,a,l),c=(p=o,f=r,m=u,v={},n=w.xVal[0],i=w.xVal[w.xVal.length-1],y=g=!1,b=0,(e=m.slice().sort(function(t,e){return t-e}),m=e.filter(function(t){return!this[t]&&(this[t]=!0)},{}))[0]!==n&&(m.unshift(n),g=!0),m[m.length-1]!==i&&(m.push(i),y=!0),m.forEach(function(t,e){var n,i,r,o,s,a,l,u,c,d=t,h=m[e+1];if(\"steps\"===f&&(n=w.xNumSteps[e]),n||(n=h-d),!1!==d&&void 0!==h)for(n=Math.max(n,1e-7),i=d;i<=h;i=(i+n).toFixed(7)/1){for(l=(s=(o=w.toStepping(i))-b)/p,c=s/(u=Math.round(l)),r=1;r<=u;r+=1)v[(b+r*c).toFixed(5)]=[\"x\",0];a=-1<m.indexOf(i)?1:\"steps\"===f?2:0,!e&&g&&(a=0),i===h&&y||(v[o.toFixed(5)]=[i,a]),b=o}}),v),d=t.format||{to:Math.round};return h=_.appendChild(M(c,s,d))}function V(){var t=u.getBoundingClientRect(),e=\"offset\"+[\"Width\",\"Height\"][d.ort];return 0===d.ort?t.width||u[e]:t.height||u[e]}function I(i,r,o,s){var e=function(t){return!_.hasAttribute(\"disabled\")&&(e=_,n=d.cssClasses.tap,(e.classList?!e.classList.contains(n):!new RegExp(\"\\\\b\"+n+\"\\\\b\").test(e.className))&&!!(t=function(t,e,n){var i,r,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),o&&d.multitouch){var l=function(t){return t.target===n||n.contains(t.target)};if(\"touchstart\"===t.type){var u=Array.prototype.filter.call(t.touches,l);if(1<u.length)return!1;i=u[0].pageX,r=u[0].pageY}else{var c=Array.prototype.find.call(t.changedTouches,l);if(!c)return!1;i=c.pageX,r=c.pageY}}else if(o){if(1<t.touches.length)return!1;i=t.changedTouches[0].pageX,r=t.changedTouches[0].pageY}return e=e||it(x),(s||a)&&(i=t.clientX+e.x,r=t.clientY+e.y),t.pageOffset=e,t.points=[i,r],t.cursor=s||a,t}(t,s.pageOffset,s.target||r))&&!(i===p.start&&void 0!==t.buttons&&1<t.buttons)&&(!s.hover||!t.buttons)&&(f||t.preventDefault(),t.calcPoint=t.points[d.ort],void o(t,s)));var e,n},n=[];return i.split(\" \").forEach(function(t){r.addEventListener(t,e,!!f&&{passive:!0}),n.push([t,e])}),n}function P(t){var e,n,i,r,o,s,a=t-(e=u,n=d.ort,i=e.getBoundingClientRect(),r=e.ownerDocument,o=r.documentElement,s=it(r),/webkit.*Chrome.*Mobile/i.test(navigator.userAgent)&&(s.x=0),n?i.top+s.y-o.clientTop:i.left+s.x-o.clientLeft),l=100*a/V();return d.dir?100-l:l}function R(t,i,n,e){var r=n.slice(),o=[!t,t],s=[t,!t];e=e.slice(),t&&e.reverse(),1<e.length?e.forEach(function(t,e){var n=z(r,t,r[t]+i,o[e],s[e],!1);!1===n?i=0:(i=n-r[t],r[t]=n)}):o=s=[!0];var a=!1;e.forEach(function(t,e){a=H(t,n[t]+i,o[e],s[e])||a}),a&&e.forEach(function(t){L(\"update\",t),L(\"slide\",t)})}function L(n,i,r){Object.keys(b).forEach(function(t){var e=t.split(\".\")[0];n===e&&b[t].forEach(function(t){t.call(a,y.map(d.format.to),i,y.slice(),r||!1,m.slice())})})}function T(t,e){\"mouseout\"===t.type&&\"HTML\"===t.target.nodeName&&null===t.relatedTarget&&W(t,e)}function O(t,e){if(-1===navigator.appVersion.indexOf(\"MSIE 9\")&&0===t.buttons&&0!==e.buttonsProperty)return W(t,e);var n=(d.dir?-1:1)*(t.calcPoint-e.startCalcPoint),i=100*n/e.baseSize;R(0<n,i,e.locations,e.handleNumbers)}function W(t,e){e.handle&&(nt(e.handle,d.cssClasses.active),g-=1),e.listeners.forEach(function(t){k.removeEventListener(t[0],t[1])}),0===g&&(nt(_,d.cssClasses.drag),Y(),t.cursor&&(S.style.cursor=\"\",S.removeEventListener(\"selectstart\",Q))),e.handleNumbers.forEach(function(t){L(\"change\",t),L(\"set\",t),L(\"end\",t)})}function B(t,e){var n;if(1===e.handleNumbers.length){var i=l[e.handleNumbers[0]];if(i.hasAttribute(\"disabled\"))return!1;n=i.children[0],g+=1,et(n,d.cssClasses.active)}t.stopPropagation();var r=[],o=I(p.move,k,O,{target:t.target,handle:n,listeners:r,startCalcPoint:t.calcPoint,baseSize:V(),pageOffset:t.pageOffset,handleNumbers:e.handleNumbers,buttonsProperty:t.buttons,locations:m.slice()}),s=I(p.end,k,W,{target:t.target,handle:n,listeners:r,handleNumbers:e.handleNumbers}),a=I(\"mouseout\",k,T,{target:t.target,handle:n,listeners:r,handleNumbers:e.handleNumbers});r.push.apply(r,o.concat(s,a)),t.cursor&&(S.style.cursor=getComputedStyle(t.target).cursor,1<l.length&&et(_,d.cssClasses.drag),S.addEventListener(\"selectstart\",Q,!1)),e.handleNumbers.forEach(function(t){L(\"start\",t)})}function U(t){t.stopPropagation();var i,r,o,e=P(t.calcPoint),n=(i=e,o=!(r=100),l.forEach(function(t,e){if(!t.hasAttribute(\"disabled\")){var n=Math.abs(m[e]-i);n<r&&(o=e,r=n)}}),o);if(!1===n)return!1;d.events.snap||Z(_,d.cssClasses.tap,d.animationDuration),H(n,e,!0,!0),Y(),L(\"slide\",n,!0),L(\"update\",n,!0),L(\"change\",n,!0),L(\"set\",n,!0),d.events.snap&&B(t,{handleNumbers:[n]})}function j(t){var e=P(t.calcPoint),n=w.getStep(e),i=w.fromStepping(n);Object.keys(b).forEach(function(t){\"hover\"===t.split(\".\")[0]&&b[t].forEach(function(t){t.call(a,i)})})}function z(t,e,n,i,r,o){var s;return 1<l.length&&(i&&0<e&&(n=Math.max(n,t[e-1]+d.margin)),r&&e<l.length-1&&(n=Math.min(n,t[e+1]-d.margin))),1<l.length&&d.limit&&(i&&0<e&&(n=Math.min(n,t[e-1]+d.limit)),r&&e<l.length-1&&(n=Math.max(n,t[e+1]-d.limit))),d.padding&&(0===e&&(n=Math.max(n,d.padding)),e===l.length-1&&(n=Math.min(n,100-d.padding))),n=w.getStep(n),s=n,!((n=Math.max(Math.min(s,100),0))===t[e]&&!o)&&n}function F(t){return t+\"%\"}function Y(){v.forEach(function(t){var e=50<m[t]?-1:1,n=3+(l.length+e*t);l[t].childNodes[0].style.zIndex=n})}function H(t,e,n,i){return!1!==(e=z(m,t,e,n,i,!1))&&(function(t,e){m[t]=e,y[t]=w.fromStepping(e);var n=function(){l[t].style[d.style]=F(e),q(t),q(t+1)};window.requestAnimationFrame&&d.useRequestAnimationFrame?window.requestAnimationFrame(n):n()}(t,e),!0)}function q(t){if(s[t]){var e=0,n=100;0!==t&&(e=m[t-1]),t!==s.length-1&&(n=m[t]),s[t].style[d.style]=F(e),s[t].style[d.styleOposite]=F(100-n)}}function G(t,e){null!==t&&!1!==t&&(\"number\"==typeof t&&(t=String(t)),!1===(t=d.format.from(t))||isNaN(t)||H(e,w.toStepping(t),!1,!1))}function X(t,e){var n=tt(t),i=void 0===m[0];e=void 0===e||!!e,n.forEach(G),d.animate&&!i&&Z(_,d.cssClasses.tap,d.animationDuration),v.forEach(function(t){H(t,m[t],!0,!1)}),Y(),v.forEach(function(t){L(\"update\",t),null!==n[t]&&e&&L(\"set\",t)})}function K(){var t=y.map(d.format.to);return 1===t.length?t[0]:t}function J(t,e){b[t]=b[t]||[],b[t].push(e),\"update\"===t.split(\".\")[0]&&l.forEach(function(t,e){L(\"update\",e)})}if(_.noUiSlider)throw new Error(\"noUiSlider (\"+$+\"): Slider was already initialized.\");return et(e=_,d.cssClasses.target),0===d.dir?et(e,d.cssClasses.ltr):et(e,d.cssClasses.rtl),0===d.ort?et(e,d.cssClasses.horizontal):et(e,d.cssClasses.vertical),u=C(e,d.cssClasses.base),function(t,e){l=[],(s=[]).push(E(e,t[0]));for(var n=0;n<d.handles;n++)l.push(i(e,n)),v[n]=n,s.push(E(e,t[n+1]))}(d.connect,u),a={destroy:function(){for(var t in d.cssClasses)d.cssClasses.hasOwnProperty(t)&&nt(_,d.cssClasses[t]);for(;_.firstChild;)_.removeChild(_.firstChild);delete _.noUiSlider},steps:function(){return m.map(function(t,e){var n=w.getNearbySteps(t),i=y[e],r=n.thisStep.step,o=null;!1!==r&&i+r>n.stepAfter.startValue&&(r=n.stepAfter.startValue-i),o=i>n.thisStep.startValue?n.thisStep.step:!1!==n.stepBefore.step&&i-n.stepBefore.highestStep,100===t?r=null:0===t&&(o=null);var s=w.countStepDecimals();return null!==r&&!1!==r&&(r=Number(r.toFixed(s))),null!==o&&!1!==o&&(o=Number(o.toFixed(s))),[o,r]})},on:J,off:function(t){var i=t&&t.split(\".\")[0],r=i&&t.substring(i.length);Object.keys(b).forEach(function(t){var e=t.split(\".\")[0],n=t.substring(e.length);i&&i!==e||r&&r!==n||delete b[t]})},get:K,set:X,reset:function(t){X(d.start,t)},__moveHandles:function(t,e,n){R(t,e,m,n)},options:o,updateOptions:function(e,t){var n=K(),i=[\"margin\",\"limit\",\"padding\",\"range\",\"animate\",\"snap\",\"step\",\"format\"];i.forEach(function(t){void 0!==e[t]&&(o[t]=e[t])});var r=rt(o);i.forEach(function(t){void 0!==e[t]&&(d[t]=r[t])}),w=r.spectrum,d.margin=r.margin,d.limit=r.limit,d.padding=r.padding,d.pips&&N(d.pips),m=[],X(e.start||n,t)},target:_,removePips:A,pips:N},(c=d.events).fixed||l.forEach(function(t,e){I(p.start,t.children[0],B,{handleNumbers:[e]})}),c.tap&&I(p.start,u,U,{}),c.hover&&I(p.move,u,j,{hover:!0}),c.drag&&s.forEach(function(t,e){if(!1!==t&&0!==e&&e!==s.length-1){var n=l[e-1],i=l[e],r=[t];et(t,d.cssClasses.draggable),c.fixed&&(r.push(n.children[0]),r.push(i.children[0])),r.forEach(function(t){I(p.start,t,B,{handles:[n,i],handleNumbers:[e-1,e]})})}}),X(d.start),d.pips&&N(d.pips),d.tooltips&&(r=l.map(D),J(\"update\",function(t,e,n){if(r[e]){var i=t[e];!0!==d.tooltips[e]&&(i=d.tooltips[e].to(n[e])),r[e].innerHTML=i}})),J(\"update\",function(t,e,s,n,a){v.forEach(function(t){var e=l[t],n=z(m,t,0,!0,!0,!0),i=z(m,t,100,!0,!0,!0),r=a[t],o=d.ariaFormat.to(s[t]);e.children[0].setAttribute(\"aria-valuemin\",n.toFixed(1)),e.children[0].setAttribute(\"aria-valuemax\",i.toFixed(1)),e.children[0].setAttribute(\"aria-valuenow\",r.toFixed(1)),e.children[0].setAttribute(\"aria-valuetext\",o)})}),a}return{version:$,create:function(t,e){if(!t||!t.nodeName)throw new Error(\"noUiSlider (\"+$+\"): create requires a single element, got: \"+t);var n=rt(e),i=P(t,n,e);return t.noUiSlider=i}}},\"object\"==typeof n?e.exports=i():window.noUiSlider=i()},432:function(i,r,o){\n      /*!\n           * Pikaday\n           *\n           * Copyright © 2014 David Bushell | BSD & MIT license | https://github.com/dbushell/Pikaday\n           */\n      !function(t,e){\"use strict\";var n;if(\"object\"==typeof o){try{n=i(\"moment\")}catch(t){}r.exports=e(n)}else t.Pikaday=e(t.moment)}(this,function(n){\"use strict\";var o=\"function\"==typeof n,s=!!window.addEventListener,c=window.document,u=window.setTimeout,a=function(t,e,n,i){s?t.addEventListener(e,n,!!i):t.attachEvent(\"on\"+e,n)},i=function(t,e,n,i){s?t.removeEventListener(e,n,!!i):t.detachEvent(\"on\"+e,n)},l=function(t,e){return-1!==(\" \"+t.className+\" \").indexOf(\" \"+e+\" \")},g=function(t){return/Array/.test(Object.prototype.toString.call(t))},B=function(t){return/Date/.test(Object.prototype.toString.call(t))&&!isNaN(t.getTime())},U=function(t,e){return[31,(n=t,n%4==0&&n%100!=0||n%400==0?29:28),31,30,31,30,31,31,30,31,30,31][e];var n},j=function(t){B(t)&&t.setHours(0,0,0,0)},z=function(t,e){return t.getTime()===e.getTime()},d=function(t,e,n){var i,r;for(i in e)(r=void 0!==t[i])&&\"object\"==typeof e[i]&&null!==e[i]&&void 0===e[i].nodeName?B(e[i])?n&&(t[i]=new Date(e[i].getTime())):g(e[i])?n&&(t[i]=e[i].slice(0)):t[i]=d({},e[i],n):!n&&r||(t[i]=e[i]);return t},r=function(t,e,n){var i;c.createEvent?((i=c.createEvent(\"HTMLEvents\")).initEvent(e,!0,!1),i=d(i,n),t.dispatchEvent(i)):c.createEventObject&&(i=c.createEventObject(),i=d(i,n),t.fireEvent(\"on\"+e,i))},e=function(t){return t.month<0&&(t.year-=Math.ceil(Math.abs(t.month)/12),t.month+=12),11<t.month&&(t.year+=Math.floor(Math.abs(t.month)/12),t.month-=12),t},h={field:null,bound:void 0,position:\"bottom left\",reposition:!0,format:\"YYYY-MM-DD\",toString:null,parse:null,defaultDate:null,setDefaultDate:!1,firstDay:0,formatStrict:!1,minDate:null,maxDate:null,yearRange:10,showWeekNumber:!1,pickWholeWeek:!1,minYear:0,maxYear:9999,minMonth:void 0,maxMonth:void 0,startRange:null,endRange:null,isRTL:!1,yearSuffix:\"\",showMonthAfterYear:!1,showDaysInNextAndPreviousMonths:!1,enableSelectionDaysInNextAndPreviousMonths:!1,numberOfMonths:1,mainCalendar:\"left\",container:void 0,blurFieldOnSelect:!0,i18n:{previousMonth:\"Previous Month\",nextMonth:\"Next Month\",months:[\"January\",\"February\",\"March\",\"April\",\"May\",\"June\",\"July\",\"August\",\"September\",\"October\",\"November\",\"December\"],weekdays:[\"Sunday\",\"Monday\",\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\"],weekdaysShort:[\"Sun\",\"Mon\",\"Tue\",\"Wed\",\"Thu\",\"Fri\",\"Sat\"]},theme:null,events:[],onSelect:null,onOpen:null,onClose:null,onDraw:null,keyboardInput:!0},p=function(t,e,n){for(e+=t.firstDay;7<=e;)e-=7;return n?t.i18n.weekdaysShort[e]:t.i18n.weekdays[e]},F=function(t){var e=[],n=\"false\";if(t.isEmpty){if(!t.showDaysInNextAndPreviousMonths)return'<td class=\"is-empty\"></td>';e.push(\"is-outside-current-month\"),t.enableSelectionDaysInNextAndPreviousMonths||e.push(\"is-selection-disabled\")}return t.isDisabled&&e.push(\"is-disabled\"),t.isToday&&e.push(\"is-today\"),t.isSelected&&(e.push(\"is-selected\"),n=\"true\"),t.hasEvent&&e.push(\"has-event\"),t.isInRange&&e.push(\"is-inrange\"),t.isStartRange&&e.push(\"is-startrange\"),t.isEndRange&&e.push(\"is-endrange\"),'<td data-day=\"'+t.day+'\" class=\"'+e.join(\" \")+'\" aria-selected=\"'+n+'\"><button class=\"pika-button pika-day\" type=\"button\" data-pika-year=\"'+t.year+'\" data-pika-month=\"'+t.month+'\" data-pika-day=\"'+t.day+'\">'+t.day+\"</button></td>\"},f=function(t,e,n,i,r,o){var s,a,l,u,c,d=t._o,h=n===d.minYear,p=n===d.maxYear,f='<div id=\"'+o+'\" class=\"pika-title\" role=\"heading\" aria-live=\"assertive\">',m=!0,v=!0;for(l=[],s=0;s<12;s++)l.push('<option value=\"'+(n===r?s-e:12+s-e)+'\"'+(s===i?' selected=\"selected\"':\"\")+(h&&s<d.minMonth||p&&s>d.maxMonth?'disabled=\"disabled\"':\"\")+\">\"+d.i18n.months[s]+\"</option>\");for(u='<div class=\"pika-label\">'+d.i18n.months[i]+'<select class=\"pika-select pika-select-month\" tabindex=\"-1\">'+l.join(\"\")+\"</select></div>\",g(d.yearRange)?(s=d.yearRange[0],a=d.yearRange[1]+1):(s=n-d.yearRange,a=1+n+d.yearRange),l=[];s<a&&s<=d.maxYear;s++)s>=d.minYear&&l.push('<option value=\"'+s+'\"'+(s===n?' selected=\"selected\"':\"\")+\">\"+s+\"</option>\");return c='<div class=\"pika-label\">'+n+d.yearSuffix+'<select class=\"pika-select pika-select-year\" tabindex=\"-1\">'+l.join(\"\")+\"</select></div>\",d.showMonthAfterYear?f+=c+u:f+=u+c,h&&(0===i||d.minMonth>=i)&&(m=!1),p&&(11===i||d.maxMonth<=i)&&(v=!1),0===e&&(f+='<button class=\"pika-prev'+(m?\"\":\" is-disabled\")+'\" type=\"button\">'+d.i18n.previousMonth+\"</button>\"),e===t._o.numberOfMonths-1&&(f+='<button class=\"pika-next'+(v?\"\":\" is-disabled\")+'\" type=\"button\">'+d.i18n.nextMonth+\"</button>\"),f+=\"</div>\"},Y=function(t,e,n){return'<table cellpadding=\"0\" cellspacing=\"0\" class=\"pika-table\" role=\"grid\" aria-labelledby=\"'+n+'\">'+function(t){var e,n=[];for(t.showWeekNumber&&n.push(\"<th></th>\"),e=0;e<7;e++)n.push('<th scope=\"col\"><abbr title=\"'+p(t,e)+'\">'+p(t,e,!0)+\"</abbr></th>\");return\"<thead><tr>\"+(t.isRTL?n.reverse():n).join(\"\")+\"</tr></thead>\"}(t)+\"<tbody>\"+e.join(\"\")+\"</tbody></table>\"},t=function(t){var i=this,r=i.config(t);i._onMouseDown=function(t){if(i._v){var e=(t=t||window.event).target||t.srcElement;if(e)if(l(e,\"is-disabled\")||(!l(e,\"pika-button\")||l(e,\"is-empty\")||l(e.parentNode,\"is-disabled\")?l(e,\"pika-prev\")?i.prevMonth():l(e,\"pika-next\")&&i.nextMonth():(i.setDate(new Date(e.getAttribute(\"data-pika-year\"),e.getAttribute(\"data-pika-month\"),e.getAttribute(\"data-pika-day\"))),r.bound&&u(function(){i.hide(),r.blurFieldOnSelect&&r.field&&r.field.blur()},100))),l(e,\"pika-select\"))i._c=!0;else{if(!t.preventDefault)return t.returnValue=!1;t.preventDefault()}}},i._onChange=function(t){var e=(t=t||window.event).target||t.srcElement;e&&(l(e,\"pika-select-month\")?i.gotoMonth(e.value):l(e,\"pika-select-year\")&&i.gotoYear(e.value))},i._onKeyChange=function(t){if(t=t||window.event,i.isVisible())switch(t.keyCode){case 13:case 27:r.field&&r.field.blur();break;case 37:t.preventDefault(),i.adjustDate(\"subtract\",1);break;case 38:i.adjustDate(\"subtract\",7);break;case 39:i.adjustDate(\"add\",1);break;case 40:i.adjustDate(\"add\",7)}},i._onInputChange=function(t){var e;t.firedBy!==i&&(e=r.parse?r.parse(r.field.value,r.format):o?(e=n(r.field.value,r.format,r.formatStrict))&&e.isValid()?e.toDate():null:new Date(Date.parse(r.field.value)),B(e)&&i.setDate(e),i._v||i.show())},i._onInputFocus=function(){i.show()},i._onInputClick=function(){i.show()},i._onInputBlur=function(){var t=c.activeElement;do{if(l(t,\"pika-single\"))return}while(t=t.parentNode);i._c||(i._b=u(function(){i.hide()},50)),i._c=!1},i._onClick=function(t){var e=(t=t||window.event).target||t.srcElement,n=e;if(e){!s&&l(e,\"pika-select\")&&(e.onchange||(e.setAttribute(\"onchange\",\"return;\"),a(e,\"change\",i._onChange)));do{if(l(n,\"pika-single\")||n===r.trigger)return}while(n=n.parentNode);i._v&&e!==r.trigger&&n!==r.trigger&&i.hide()}},i.el=c.createElement(\"div\"),i.el.className=\"pika-single\"+(r.isRTL?\" is-rtl\":\"\")+(r.theme?\" \"+r.theme:\"\"),a(i.el,\"mousedown\",i._onMouseDown,!0),a(i.el,\"touchend\",i._onMouseDown,!0),a(i.el,\"change\",i._onChange),r.keyboardInput&&a(c,\"keydown\",i._onKeyChange),r.field&&(r.container?r.container.appendChild(i.el):r.bound?c.body.appendChild(i.el):r.field.parentNode.insertBefore(i.el,r.field.nextSibling),a(r.field,\"change\",i._onInputChange),r.defaultDate||(o&&r.field.value?r.defaultDate=n(r.field.value,r.format).toDate():r.defaultDate=new Date(Date.parse(r.field.value)),r.setDefaultDate=!0));var e=r.defaultDate;B(e)?r.setDefaultDate?i.setDate(e,!0):i.gotoDate(e):i.gotoDate(new Date),r.bound?(this.hide(),i.el.className+=\" is-bound\",a(r.trigger,\"click\",i._onInputClick),a(r.trigger,\"focus\",i._onInputFocus),a(r.trigger,\"blur\",i._onInputBlur)):this.show()};return t.prototype={config:function(t){this._o||(this._o=d({},h,!0));var e=d(this._o,t,!0);e.isRTL=!!e.isRTL,e.field=e.field&&e.field.nodeName?e.field:null,e.theme=\"string\"==typeof e.theme&&e.theme?e.theme:null,e.bound=!!(void 0!==e.bound?e.field&&e.bound:e.field),e.trigger=e.trigger&&e.trigger.nodeName?e.trigger:e.field,e.disableWeekends=!!e.disableWeekends,e.disableDayFn=\"function\"==typeof e.disableDayFn?e.disableDayFn:null;var n=parseInt(e.numberOfMonths,10)||1;if(e.numberOfMonths=4<n?4:n,B(e.minDate)||(e.minDate=!1),B(e.maxDate)||(e.maxDate=!1),e.minDate&&e.maxDate&&e.maxDate<e.minDate&&(e.maxDate=e.minDate=!1),e.minDate&&this.setMinDate(e.minDate),e.maxDate&&this.setMaxDate(e.maxDate),g(e.yearRange)){var i=(new Date).getFullYear()-10;e.yearRange[0]=parseInt(e.yearRange[0],10)||i,e.yearRange[1]=parseInt(e.yearRange[1],10)||i}else e.yearRange=Math.abs(parseInt(e.yearRange,10))||h.yearRange,100<e.yearRange&&(e.yearRange=100);return e},toString:function(t){return t=t||this._o.format,B(this._d)?this._o.toString?this._o.toString(this._d,t):o?n(this._d).format(t):this._d.toDateString():\"\"},getMoment:function(){return o?n(this._d):null},setMoment:function(t,e){o&&n.isMoment(t)&&this.setDate(t.toDate(),e)},getDate:function(){return B(this._d)?new Date(this._d.getTime()):null},setDate:function(t,e){if(!t)return this._d=null,this._o.field&&(this._o.field.value=\"\",r(this._o.field,\"change\",{firedBy:this})),this.draw();if(\"string\"==typeof t&&(t=new Date(Date.parse(t))),B(t)){var n=this._o.minDate,i=this._o.maxDate;B(n)&&t<n?t=n:B(i)&&i<t&&(t=i),this._d=new Date(t.getTime()),j(this._d),this.gotoDate(this._d),this._o.field&&(this._o.field.value=this.toString(),r(this._o.field,\"change\",{firedBy:this})),e||\"function\"!=typeof this._o.onSelect||this._o.onSelect.call(this,this.getDate())}},gotoDate:function(t){var e=!0;if(B(t)){if(this.calendars){var n=new Date(this.calendars[0].year,this.calendars[0].month,1),i=new Date(this.calendars[this.calendars.length-1].year,this.calendars[this.calendars.length-1].month,1),r=t.getTime();i.setMonth(i.getMonth()+1),i.setDate(i.getDate()-1),e=r<n.getTime()||i.getTime()<r}e&&(this.calendars=[{month:t.getMonth(),year:t.getFullYear()}],\"right\"===this._o.mainCalendar&&(this.calendars[0].month+=1-this._o.numberOfMonths)),this.adjustCalendars()}},adjustDate:function(t,e){var n,i=this.getDate()||new Date,r=24*parseInt(e)*60*60*1e3;\"add\"===t?n=new Date(i.valueOf()+r):\"subtract\"===t&&(n=new Date(i.valueOf()-r)),this.setDate(n)},adjustCalendars:function(){this.calendars[0]=e(this.calendars[0]);for(var t=1;t<this._o.numberOfMonths;t++)this.calendars[t]=e({month:this.calendars[0].month+t,year:this.calendars[0].year});this.draw()},gotoToday:function(){this.gotoDate(new Date)},gotoMonth:function(t){isNaN(t)||(this.calendars[0].month=parseInt(t,10),this.adjustCalendars())},nextMonth:function(){this.calendars[0].month++,this.adjustCalendars()},prevMonth:function(){this.calendars[0].month--,this.adjustCalendars()},gotoYear:function(t){isNaN(t)||(this.calendars[0].year=parseInt(t,10),this.adjustCalendars())},setMinDate:function(t){t instanceof Date?(j(t),this._o.minDate=t,this._o.minYear=t.getFullYear(),this._o.minMonth=t.getMonth()):(this._o.minDate=h.minDate,this._o.minYear=h.minYear,this._o.minMonth=h.minMonth,this._o.startRange=h.startRange),this.draw()},setMaxDate:function(t){t instanceof Date?(j(t),this._o.maxDate=t,this._o.maxYear=t.getFullYear(),this._o.maxMonth=t.getMonth()):(this._o.maxDate=h.maxDate,this._o.maxYear=h.maxYear,this._o.maxMonth=h.maxMonth,this._o.endRange=h.endRange),this.draw()},setStartRange:function(t){this._o.startRange=t},setEndRange:function(t){this._o.endRange=t},draw:function(t){if(this._v||t){var e,n=this._o,i=n.minYear,r=n.maxYear,o=n.minMonth,s=n.maxMonth,a=\"\";this._y<=i&&(this._y=i,!isNaN(o)&&this._m<o&&(this._m=o)),this._y>=r&&(this._y=r,!isNaN(s)&&this._m>s&&(this._m=s)),e=\"pika-title-\"+Math.random().toString(36).replace(/[^a-z]+/g,\"\").substr(0,2);for(var l=0;l<n.numberOfMonths;l++)a+='<div class=\"pika-lendar\">'+f(this,l,this.calendars[l].year,this.calendars[l].month,this.calendars[0].year,e)+this.render(this.calendars[l].year,this.calendars[l].month,e)+\"</div>\";this.el.innerHTML=a,n.bound&&\"hidden\"!==n.field.type&&u(function(){n.trigger.focus()},1),\"function\"==typeof this._o.onDraw&&this._o.onDraw(this),n.bound&&n.field.setAttribute(\"aria-label\",\"Use the arrow keys to pick a date\")}},adjustPosition:function(){var t,e,n,i,r,o,s,a,l,u;if(!this._o.container){if(this.el.style.position=\"absolute\",t=this._o.trigger,e=t,n=this.el.offsetWidth,i=this.el.offsetHeight,r=window.innerWidth||c.documentElement.clientWidth,o=window.innerHeight||c.documentElement.clientHeight,s=window.pageYOffset||c.body.scrollTop||c.documentElement.scrollTop,\"function\"==typeof t.getBoundingClientRect)u=t.getBoundingClientRect(),a=u.left+window.pageXOffset,l=u.bottom+window.pageYOffset;else for(a=e.offsetLeft,l=e.offsetTop+e.offsetHeight;e=e.offsetParent;)a+=e.offsetLeft,l+=e.offsetTop;(this._o.reposition&&r<a+n||-1<this._o.position.indexOf(\"right\")&&0<a-n+t.offsetWidth)&&(a=a-n+t.offsetWidth),(this._o.reposition&&o+s<l+i||-1<this._o.position.indexOf(\"top\")&&0<l-i-t.offsetHeight)&&(l=l-i-t.offsetHeight),this.el.style.left=a+\"px\",this.el.style.top=l+\"px\"}},render:function(t,e,n){var i=this._o,r=new Date,o=U(t,e),s=new Date(t,e,1).getDay(),a=[],l=[];j(r),0<i.firstDay&&(s-=i.firstDay)<0&&(s+=7);for(var u=0===e?11:e-1,c=11===e?0:e+1,d=0===e?t-1:t,h=11===e?t+1:t,p=U(d,u),f=o+s,m=f;7<m;)m-=7;f+=7-m;for(var v,g,y,b,_,w,x,k=!1,S=0,C=0;S<f;S++){var E=new Date(t,e,S-s+1),D=!!B(this._d)&&z(E,this._d),M=z(E,r),A=-1!==i.events.indexOf(E.toDateString()),N=S<s||o+s<=S,V=S-s+1,I=e,P=t,R=i.startRange&&z(i.startRange,E),L=i.endRange&&z(i.endRange,E),T=i.startRange&&i.endRange&&i.startRange<E&&E<i.endRange,O=i.minDate&&E<i.minDate||i.maxDate&&E>i.maxDate||i.disableWeekends&&(0===(x=E.getDay())||6===x)||i.disableDayFn&&i.disableDayFn(E);N&&(S<s?(V=p+V,I=u,P=d):(V-=o,I=c,P=h));var W={day:V,month:I,year:P,hasEvent:A,isSelected:D,isToday:M,isDisabled:O,isEmpty:N,isStartRange:R,isEndRange:L,isInRange:T,showDaysInNextAndPreviousMonths:i.showDaysInNextAndPreviousMonths,enableSelectionDaysInNextAndPreviousMonths:i.enableSelectionDaysInNextAndPreviousMonths};i.pickWholeWeek&&D&&(k=!0),l.push(F(W)),7==++C&&(i.showWeekNumber&&l.unshift((y=S-s,b=e,_=t,w=void 0,w=new Date(_,0,1),'<td class=\"pika-week\">'+Math.ceil(((new Date(_,b,y)-w)/864e5+w.getDay()+1)/7)+\"</td>\")),a.push((v=l,g=i.isRTL,'<tr class=\"pika-row'+(i.pickWholeWeek?\" pick-whole-week\":\"\")+(k?\" is-selected\":\"\")+'\">'+(g?v.reverse():v).join(\"\")+\"</tr>\")),C=0,k=!(l=[]))}return Y(i,a,n)},isVisible:function(){return this._v},show:function(){var t,e,n;this.isVisible()||(this._v=!0,this.draw(),t=this.el,e=\"is-hidden\",t.className=(n=(\" \"+t.className+\" \").replace(\" \"+e+\" \",\" \")).trim?n.trim():n.replace(/^\\s+|\\s+$/g,\"\"),this._o.bound&&(a(c,\"click\",this._onClick),this.adjustPosition()),\"function\"==typeof this._o.onOpen&&this._o.onOpen.call(this))},hide:function(){var t,e,n=this._v;!1!==n&&(this._o.bound&&i(c,\"click\",this._onClick),this.el.style.position=\"static\",this.el.style.left=\"auto\",this.el.style.top=\"auto\",t=this.el,l(t,e=\"is-hidden\")||(t.className=\"\"===t.className?e:t.className+\" \"+e),this._v=!1,void 0!==n&&\"function\"==typeof this._o.onClose&&this._o.onClose.call(this))},destroy:function(){var t=this._o;this.hide(),i(this.el,\"mousedown\",this._onMouseDown,!0),i(this.el,\"touchend\",this._onMouseDown,!0),i(this.el,\"change\",this._onChange),t.keyboardInput&&i(c,\"keydown\",this._onKeyChange),t.field&&(i(t.field,\"change\",this._onInputChange),t.bound&&(i(t.trigger,\"click\",this._onInputClick),i(t.trigger,\"focus\",this._onInputFocus),i(t.trigger,\"blur\",this._onInputBlur))),this.el.parentNode&&this.el.parentNode.removeChild(this.el)}},t})}})}(this);\n      //# sourceMappingURL=bokeh-widgets.min.js.map\n      /* END bokeh-widgets.min.js */\n    },\n    \n    function(Bokeh) {\n      /* BEGIN bokeh-tables.min.js */\n      /*!\n       * Copyright (c) 2012 - 2018, 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(a,b){!function(Bokeh){var define;(function(e,t,n){if(null!=Bokeh)return Bokeh.register_plugin(e,{\"models/widgets/tables/cell_editors\":433,\"models/widgets/tables/cell_formatters\":434,\"models/widgets/tables/data_table\":435,\"models/widgets/tables/index\":436,\"models/widgets/tables/main\":437,\"models/widgets/tables/table_column\":438,\"models/widgets/tables/table_widget\":439,\"models/widgets/widget\":440},437);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")})({433:function(e,t,n){var o=e(391),r=e(15),i=e(5),l=e(6),s=e(59),a=e(435),c=function(t){function e(e){return t.call(this,o.__assign({model:e.column.model},e))||this}return o.__extends(e,t),Object.defineProperty(e.prototype,\"emptyValue\",{get:function(){return null},enumerable:!0,configurable:!0}),e.prototype.initialize=function(e){t.prototype.initialize.call(this,e),this.inputEl=this._createInput(),this.defaultValue=null,this.args=e,this.render()},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-cell-editor\")},e.prototype.render=function(){t.prototype.render.call(this),this.args.container.appendChild(this.el),this.el.appendChild(this.inputEl),this.renderEditor(),this.disableNavigation()},e.prototype.renderEditor=function(){},e.prototype.disableNavigation=function(){this.inputEl.addEventListener(\"keydown\",function(e){switch(e.keyCode){case i.Keys.Left:case i.Keys.Right:case i.Keys.Up:case i.Keys.Down:case i.Keys.PageUp:case i.Keys.PageDown:e.stopImmediatePropagation()}})},e.prototype.destroy=function(){this.remove()},e.prototype.focus=function(){this.inputEl.focus()},e.prototype.show=function(){},e.prototype.hide=function(){},e.prototype.position=function(){},e.prototype.getValue=function(){return this.inputEl.value},e.prototype.setValue=function(e){this.inputEl.value=e},e.prototype.serializeValue=function(){return this.getValue()},e.prototype.isValueChanged=function(){return!(\"\"==this.getValue()&&null==this.defaultValue)&&this.getValue()!==this.defaultValue},e.prototype.applyValue=function(e,t){var n=this.args.grid.getData(),o=n.index.indexOf(e[a.DTINDEX_NAME]);n.setField(o,this.args.column.field,t)},e.prototype.loadValue=function(e){var t=e[this.args.column.field];this.defaultValue=null!=t?t:this.emptyValue,this.setValue(this.defaultValue)},e.prototype.validateValue=function(e){if(this.args.column.validator){var t=this.args.column.validator(e);if(!t.valid)return t}return{valid:!0,msg:null}},e.prototype.validate=function(){return this.validateValue(this.getValue())},e}(l.DOMView);n.CellEditorView=c;var u=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"CellEditor\"},t}(s.Model);(n.CellEditor=u).initClass();var d=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),Object.defineProperty(e.prototype,\"emptyValue\",{get:function(){return\"\"},enumerable:!0,configurable:!0}),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e}(c);n.StringEditorView=d;var p=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"StringEditor\",this.prototype.default_view=d,this.define({completions:[r.Array,[]]})},t}(u);(n.StringEditor=p).initClass();var f=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.textarea()},t}(c);n.TextEditorView=f;var h=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"TextEditor\",this.prototype.default_view=f},t}(u);(n.TextEditor=h).initClass();var g=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.select()},t.prototype.renderEditor=function(){for(var e=0,t=this.model.options;e<t.length;e++){var n=t[e];this.inputEl.appendChild(i.option({value:n},n))}this.focus()},t}(c);n.SelectEditorView=g;var m=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"SelectEditor\",this.prototype.default_view=g,this.define({options:[r.Array,[]]})},t}(u);(n.SelectEditor=m).initClass();var v=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},t}(c);n.PercentEditorView=v;var w=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"PercentEditor\",this.prototype.default_view=v},t}(u);(n.PercentEditor=w).initClass();var y=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"checkbox\",value:\"true\"})},t.prototype.renderEditor=function(){this.focus()},t.prototype.loadValue=function(e){this.defaultValue=!!e[this.args.column.field],this.inputEl.checked=this.defaultValue},t.prototype.serializeValue=function(){return this.inputEl.checked},t}(c);n.CheckboxEditorView=y;var C=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"CheckboxEditor\",this.prototype.default_view=y},t}(u);(n.CheckboxEditor=C).initClass();var b=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.remove=function(){t.prototype.remove.call(this)},e.prototype.serializeValue=function(){return parseInt(this.getValue(),10)||0},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e.prototype.validateValue=function(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid integer\"}:t.prototype.validateValue.call(this,e)},e}(c);n.IntEditorView=b;var x=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"IntEditor\",this.prototype.default_view=b,this.define({step:[r.Number,1]})},t}(u);(n.IntEditor=x).initClass();var R=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return o.__extends(e,t),e.prototype._createInput=function(){return i.input({type:\"text\"})},e.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},e.prototype.remove=function(){t.prototype.remove.call(this)},e.prototype.serializeValue=function(){return parseFloat(this.getValue())||0},e.prototype.loadValue=function(e){t.prototype.loadValue.call(this,e),this.inputEl.defaultValue=this.defaultValue,this.inputEl.select()},e.prototype.validateValue=function(e){return isNaN(e)?{valid:!1,msg:\"Please enter a valid number\"}:t.prototype.validateValue.call(this,e)},e}(c);n.NumberEditorView=R;var S=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"NumberEditor\",this.prototype.default_view=R,this.define({step:[r.Number,.01]})},t}(u);(n.NumberEditor=S).initClass();var E=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},t}(c);n.TimeEditorView=E;var k=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"TimeEditor\",this.prototype.default_view=E},t}(u);(n.TimeEditor=k).initClass();var T=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype._createInput=function(){return i.input({type:\"text\"})},Object.defineProperty(t.prototype,\"emptyValue\",{get:function(){return new Date},enumerable:!0,configurable:!0}),t.prototype.renderEditor=function(){this.inputEl.focus(),this.inputEl.select()},t.prototype.destroy=function(){e.prototype.destroy.call(this)},t.prototype.show=function(){e.prototype.show.call(this)},t.prototype.hide=function(){e.prototype.hide.call(this)},t.prototype.position=function(){return e.prototype.position.call(this)},t.prototype.getValue=function(){},t.prototype.setValue=function(e){},t}(c);n.DateEditorView=T;var P=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.initClass=function(){this.prototype.type=\"DateEditor\",this.prototype.default_view=T},t}(u);(n.DateEditor=P).initClass()},434:function(e,t,n){var a=e(391),u=e(361),c=e(449),s=e(390),o=e(15),d=e(5),p=e(44),r=e(59),i=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.prototype.doFormat=function(e,t,n,o,r){return null==n?\"\":(n+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")},e}(r.Model),l=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"StringFormatter\",this.define({font_style:[o.FontStyle,\"normal\"],text_align:[o.TextAlign,\"left\"],text_color:[o.Color]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this.font_style,l=this.text_align,s=this.text_color,a=d.div({},null==n?\"\":\"\"+n);switch(i){case\"bold\":a.style.fontWeight=\"bold\";break;case\"italic\":a.style.fontStyle=\"italic\"}return null!=l&&(a.style.textAlign=l),null!=s&&(a.style.color=s),a.outerHTML},e}(n.CellFormatter=i);(n.StringFormatter=l).initClass();var f=function(c){function e(e){return c.call(this,e)||this}return a.__extends(e,c),e.initClass=function(){this.prototype.type=\"NumberFormatter\",this.define({format:[o.String,\"0,0\"],language:[o.String,\"en\"],rounding:[o.String,\"round\"]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this,l=this.format,s=this.language,a=function(){switch(i.rounding){case\"round\":case\"nearest\":return Math.round;case\"floor\":case\"rounddown\":return Math.floor;case\"ceil\":case\"roundup\":return Math.ceil}}();return n=u.format(n,l,s,a),c.prototype.doFormat.call(this,e,t,n,o,r)},e}(l);(n.NumberFormatter=f).initClass();var h=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"BooleanFormatter\",this.define({icon:[o.String,\"check\"]})},e.prototype.doFormat=function(e,t,n,o,r){return n?d.i({class:this.icon}).outerHTML:\"\"},e}(i);(n.BooleanFormatter=h).initClass();var g=function(l){function e(e){return l.call(this,e)||this}return a.__extends(e,l),e.initClass=function(){this.prototype.type=\"DateFormatter\",this.define({format:[o.String,\"ISO-8601\"]})},e.prototype.getFormat=function(){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}},e.prototype.doFormat=function(e,t,n,o,r){n=p.isString(n)?parseInt(n,10):n;var i=s(n,this.getFormat());return l.prototype.doFormat.call(this,e,t,i,o,r)},e}(i);(n.DateFormatter=g).initClass();var m=function(t){function e(e){return t.call(this,e)||this}return a.__extends(e,t),e.initClass=function(){this.prototype.type=\"HTMLTemplateFormatter\",this.define({template:[o.String,\"<%= value %>\"]})},e.prototype.doFormat=function(e,t,n,o,r){var i=this.template;if(null==n)return\"\";var l=c(i),s=a.__assign({},r,{value:n});return l(s)},e}(i);(n.HTMLTemplateFormatter=m).initClass()},435:function(e,t,i){var o=e(391),s=e(447).Grid,a=e(445).RowSelectionModel,c=e(444).CheckboxSelectColumn,r=e(15),n=e(38),l=e(21),u=e(32),d=e(14),p=e(439),f=e(440);i.DTINDEX_NAME=\"__bkdt_internal_index__\";var h=function(){function e(e,t){if(this.source=e,this.view=t,i.DTINDEX_NAME in this.source.data)throw new Error(\"special name \"+i.DTINDEX_NAME+\" cannot be used as a data table column\");this.index=this.view.indices}return e.prototype.getLength=function(){return this.index.length},e.prototype.getItem=function(e){for(var t={},n=0,o=u.keys(this.source.data);n<o.length;n++){var r=o[n];t[r]=this.source.data[r][this.index[e]]}return t[i.DTINDEX_NAME]=this.index[e],t},e.prototype.getField=function(e,t){return t==i.DTINDEX_NAME?this.index[e]:this.source.data[t][this.index[e]]},e.prototype.setField=function(e,t,n){var o={},r=this.index[e];o[t]=[[r,n]],this.source.patch(o)},e.prototype.getItemMetadata=function(e){return null},e.prototype.getRecords=function(){var t=this;return l.range(0,this.getLength()).map(function(e){return t.getItem(e)})},e.prototype.sort=function(e){var u=e.map(function(e){return[e.sortCol.field,e.sortAsc?1:-1]});0==u.length&&(u=[[i.DTINDEX_NAME,1]]);var d=this.getRecords(),p=this.index.slice();this.index.sort(function(e,t){for(var n=0,o=u;n<o.length;n++){var r=o[n],i=r[0],l=r[1],s=d[p.indexOf(e)][i],a=d[p.indexOf(t)][i],c=s==a?0:a<s?l:-l;if(0!=c)return c}return 0})},e}();i.DataProvider=h;var g=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._in_selection_update=!1,e._warned_not_reorderable=!1,e}return o.__extends(e,t),e.prototype.connect_signals=function(){var e=this;t.prototype.connect_signals.call(this),this.connect(this.model.change,function(){return e.render()}),this.connect(this.model.source.streaming,function(){return e.updateGrid()}),this.connect(this.model.source.patching,function(){return e.updateGrid()}),this.connect(this.model.source.change,function(){return e.updateGrid()}),this.connect(this.model.source.properties.data.change,function(){return e.updateGrid()}),this.connect(this.model.source.selected.change,function(){return e.updateSelection()}),this.connect(this.model.source.selected.properties.indices.change,function(){return e.updateSelection()})},e.prototype.updateGrid=function(){var t=this;this.model.view.compute_indices(),this.data.constructor(this.model.source,this.model.view);var n=this.grid.getColumns(),e=this.grid.getSortColumns().map(function(e){return{sortCol:{field:n[t.grid.getColumnIndex(e.columnId)].field},sortAsc:e.sortAsc}});this.data.sort(e),this.grid.invalidate(),this.grid.render()},e.prototype.updateSelection=function(){var t=this;if(!this._in_selection_update){var e=this.model.source.selected,n=e.indices.map(function(e){return t.data.index.indexOf(e)});this._in_selection_update=!0,this.grid.setSelectedRows(n),this._in_selection_update=!1;var o=this.grid.getViewport(),r=this.model.get_scroll_index(o,n);null!=r&&this.grid.scrollRowToTop(r)}},e.prototype.newIndexColumn=function(){return{id:n.uniqueId(),name:this.model.index_header,field:i.DTINDEX_NAME,width:this.model.index_width,behavior:\"select\",cannotTriggerInsert:!0,resizable:!1,selectable:!1,sortable:!0,cssClass:\"bk-cell-index\",headerCssClass:\"bk-header-index\"}},e.prototype.css_classes=function(){return t.prototype.css_classes.call(this).concat(\"bk-data-table\")},e.prototype.render=function(){var e,n=this,o=this.model.columns.map(function(e){return e.toColumn()});if(\"checkbox\"==this.model.selectable&&(e=new c({cssClass:\"bk-cell-select\"}),o.unshift(e.getColumnDefinition())),null!=this.model.index_position){var t=this.model.index_position,r=this.newIndexColumn();-1==t?o.push(r):t<-1?o.splice(t+1,0,r):o.splice(t,0,r)}var i=this.model.reorderable;!i||\"undefined\"!=typeof $&&null!=$.fn&&null!=$.fn.sortable||(this._warned_not_reorderable||(d.logger.warn(\"jquery-ui is required to enable DataTable.reorderable\"),this._warned_not_reorderable=!0),i=!1);var l={enableCellNavigation:!1!==this.model.selectable,enableColumnReorder:i,forceFitColumns:this.model.fit_columns,autoHeight:\"auto\"==this.model.height,multiColumnSort:this.model.sortable,editable:this.model.editable,autoEdit:!1,rowHeight:this.model.row_height};null!=this.model.width?this.el.style.width=this.model.width+\"px\":this.el.style.width=this.model.default_width+\"px\",null!=this.model.height&&\"auto\"!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),this.data=new h(this.model.source,this.model.view),this.grid=new s(this.el,this.data,o,l),this.grid.onSort.subscribe(function(e,t){o=t.sortCols,n.data.sort(o),n.grid.invalidate(),n.updateSelection(),n.grid.render(),n.model.header_row||n._hide_header()}),!1!==this.model.selectable&&(this.grid.setSelectionModel(new a({selectActiveRow:null==e})),null!=e&&this.grid.registerPlugin(e),this.grid.onSelectedRowsChanged.subscribe(function(e,t){n._in_selection_update||(n.model.source.selected.indices=t.rows.map(function(e){return n.data.index[e]}))}),this.updateSelection(),this.model.header_row||this._hide_header())},e.prototype._hide_header=function(){for(var e=0,t=Array.from(this.el.querySelectorAll(\".slick-header-columns\"));e<t.length;e++){var n=t[e];n.style.height=\"0px\"}this.grid.resizeCanvas()},e}(f.WidgetView);i.DataTableView=g;var m=function(n){function e(e){var t=n.call(this,e)||this;return t.default_width=600,t}return o.__extends(e,n),e.initClass=function(){this.prototype.type=\"DataTable\",this.prototype.default_view=g,this.define({columns:[r.Array,[]],fit_columns:[r.Bool,!0],sortable:[r.Bool,!0],reorderable:[r.Bool,!0],editable:[r.Bool,!1],selectable:[r.Any,!0],index_position:[r.Int,0],index_header:[r.String,\"#\"],index_width:[r.Int,40],scroll_to_selection:[r.Bool,!0],header_row:[r.Bool,!0],row_height:[r.Int,25]}),this.override({height:400})},e.prototype.get_scroll_index=function(t,e){return this.scroll_to_selection&&0!=e.length?l.any(e,function(e){return t.top<=e&&e<=t.bottom})?null:Math.max(0,Math.min.apply(Math,e)-1):null},e}(p.TableWidget);(i.DataTable=m).initClass()},436:function(e,t,n){var o=e(391);o.__exportStar(e(433),n),o.__exportStar(e(434),n);var r=e(435);n.DataTable=r.DataTable;var i=e(438);n.TableColumn=i.TableColumn;var l=e(439);n.TableWidget=l.TableWidget},437:function(e,t,n){var o=e(436);n.Tables=o;var r=e(0);r.register_models(o)},438:function(e,t,n){var o=e(391),r=e(434),i=e(433),l=e(15),s=e(38),a=e(59),c=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"TableColumn\",this.define({field:[l.String],title:[l.String],width:[l.Number,300],formatter:[l.Instance,function(){return new r.StringFormatter}],editor:[l.Instance,function(){return new i.StringEditor}],sortable:[l.Bool,!0],default_sort:[l.String,\"ascending\"]})},e.prototype.toColumn=function(){return{id:s.uniqueId(),field:this.field,name:this.title,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}},e}(a.Model);(n.TableColumn=c).initClass()},439:function(e,t,n){var o=e(391),r=e(440),i=e(199),l=e(15),s=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"TableWidget\",this.define({source:[l.Instance],view:[l.Instance,function(){return new i.CDSView}]})},e.prototype.initialize=function(){t.prototype.initialize.call(this),null==this.view.source&&(this.view.source=this.source,this.view.compute_indices())},e}(r.Widget);(n.TableWidget=s).initClass()},440:function(e,t,n){var o=e(391),r=e(157),i=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return o.__extends(t,e),t.prototype.css_classes=function(){return e.prototype.css_classes.call(this).concat(\"bk-widget\")},t.prototype.render=function(){this._render_classes(),null!=this.model.height&&(this.el.style.height=this.model.height+\"px\"),null!=this.model.width&&(this.el.style.width=this.model.width+\"px\")},t.prototype.get_width=function(){throw new Error(\"unused\")},t.prototype.get_height=function(){throw new Error(\"unused\")},t}(r.LayoutDOMView);n.WidgetView=i;var l=function(t){function e(e){return t.call(this,e)||this}return o.__extends(e,t),e.initClass=function(){this.prototype.type=\"Widget\"},e}(r.LayoutDOM);(n.Widget=l).initClass()},441:function(e,n,t){\n      /*!\n           * jQuery JavaScript Library v3.2.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: 2017-03-20T18:59Z\n           */\n      !function(e,t){\"use strict\";\"object\"==typeof n&&\"object\"==typeof n.exports?n.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error(\"jQuery requires a window with a document\");return t(e)}:t(e)}(\"undefined\"!=typeof window?window:this,function(R,e){\"use strict\";var t=[],S=R.document,o=Object.getPrototypeOf,s=t.slice,g=t.concat,a=t.push,r=t.indexOf,n={},i=n.toString,h=n.hasOwnProperty,l=h.toString,c=l.call(Object),m={};function v(e,t){var n=(t=t||S).createElement(\"script\");n.text=e,t.head.appendChild(n).parentNode.removeChild(n)}var E=function(e,t){return new E.fn.init(e,t)},u=/^[\\s\\uFEFF\\xA0]+|[\\s\\uFEFF\\xA0]+$/g,d=/^-ms-/,p=/-([a-z])/g,f=function(e,t){return t.toUpperCase()};function w(e){var t=!!e&&\"length\"in e&&e.length,n=E.type(e);return\"function\"!==n&&!E.isWindow(e)&&(\"array\"===n||0===t||\"number\"==typeof t&&0<t&&t-1 in e)}E.fn=E.prototype={jquery:\"3.2.1\",constructor:E,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=E.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return E.each(this,e)},map:function(n){return this.pushStack(E.map(this,function(e,t){return n.call(e,t,e)}))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(0<=n&&n<t?[this[n]]:[])},end:function(){return this.prevObject||this.constructor()},push:a,sort:t.sort,splice:t.splice},E.extend=E.fn.extend=function(){var e,t,n,o,r,i,l=arguments[0]||{},s=1,a=arguments.length,c=!1;for(\"boolean\"==typeof l&&(c=l,l=arguments[s]||{},s++),\"object\"==typeof l||E.isFunction(l)||(l={}),s===a&&(l=this,s--);s<a;s++)if(null!=(e=arguments[s]))for(t in e)n=l[t],o=e[t],l!==o&&(c&&o&&(E.isPlainObject(o)||(r=Array.isArray(o)))?(r?(r=!1,i=n&&Array.isArray(n)?n:[]):i=n&&E.isPlainObject(n)?n:{},l[t]=E.extend(c,i,o)):void 0!==o&&(l[t]=o));return l},E.extend({expando:\"jQuery\"+(\"3.2.1\"+Math.random()).replace(/\\D/g,\"\"),isReady:!0,error:function(e){throw new Error(e)},noop:function(){},isFunction:function(e){return\"function\"===E.type(e)},isWindow:function(e){return null!=e&&e===e.window},isNumeric:function(e){var t=E.type(e);return(\"number\"===t||\"string\"===t)&&!isNaN(e-parseFloat(e))},isPlainObject:function(e){var t,n;return!(!e||\"[object Object]\"!==i.call(e))&&(!(t=o(e))||\"function\"==typeof(n=h.call(t,\"constructor\")&&t.constructor)&&l.call(n)===c)},isEmptyObject:function(e){var t;for(t in e)return!1;return!0},type:function(e){return null==e?e+\"\":\"object\"==typeof e||\"function\"==typeof e?n[i.call(e)]||\"object\":typeof e},globalEval:function(e){v(e)},camelCase:function(e){return e.replace(d,\"ms-\").replace(p,f)},each:function(e,t){var n,o=0;if(w(e))for(n=e.length;o<n&&!1!==t.call(e[o],o,e[o]);o++);else for(o in e)if(!1===t.call(e[o],o,e[o]))break;return e},trim:function(e){return null==e?\"\":(e+\"\").replace(u,\"\")},makeArray:function(e,t){var n=t||[];return null!=e&&(w(Object(e))?E.merge(n,\"string\"==typeof e?[e]:e):a.call(n,e)),n},inArray:function(e,t,n){return null==t?-1:r.call(t,e,n)},merge:function(e,t){for(var n=+t.length,o=0,r=e.length;o<n;o++)e[r++]=t[o];return e.length=r,e},grep:function(e,t,n){for(var o=[],r=0,i=e.length,l=!n;r<i;r++)!t(e[r],r)!==l&&o.push(e[r]);return o},map:function(e,t,n){var o,r,i=0,l=[];if(w(e))for(o=e.length;i<o;i++)null!=(r=t(e[i],i,n))&&l.push(r);else for(i in e)null!=(r=t(e[i],i,n))&&l.push(r);return g.apply([],l)},guid:1,proxy:function(e,t){var n,o,r;if(\"string\"==typeof t&&(n=e[t],t=e,e=n),E.isFunction(e))return o=s.call(arguments,2),(r=function(){return e.apply(t||this,o.concat(s.call(arguments)))}).guid=e.guid=e.guid||E.guid++,r},now:Date.now,support:m}),\"function\"==typeof Symbol&&(E.fn[Symbol.iterator]=t[Symbol.iterator]),E.each(\"Boolean Number String Function Array Date RegExp Object Error Symbol\".split(\" \"),function(e,t){n[\"[object \"+t+\"]\"]=t.toLowerCase()});var y=\n      /*!\n               * Sizzle CSS Selector Engine v2.3.3\n               * https://sizzlejs.com/\n               *\n               * Copyright jQuery Foundation and other contributors\n               * Released under the MIT license\n               * http://jquery.org/license\n               *\n               * Date: 2016-08-08\n               */\n      function(n){var e,f,C,i,r,h,d,g,b,a,c,x,R,l,S,m,s,u,v,E=\"sizzle\"+1*new Date,w=n.document,k=0,o=0,p=le(),y=le(),T=le(),P=function(e,t){return e===t&&(c=!0),0},D={}.hasOwnProperty,t=[],A=t.pop,N=t.push,$=t.push,H=t.slice,L=function(e,t){for(var n=0,o=e.length;n<o;n++)if(e[n]===t)return n;return-1},_=\"checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped\",F=\"[\\\\x20\\\\t\\\\r\\\\n\\\\f]\",I=\"(?:\\\\\\\\.|[\\\\w-]|[^\\0-\\\\xa0])+\",M=\"\\\\[\"+F+\"*(\"+I+\")(?:\"+F+\"*([*^$|!~]?=)\"+F+\"*(?:'((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\"|(\"+I+\"))|)\"+F+\"*\\\\]\",W=\":(\"+I+\")(?:\\\\((('((?:\\\\\\\\.|[^\\\\\\\\'])*)'|\\\"((?:\\\\\\\\.|[^\\\\\\\\\\\"])*)\\\")|((?:\\\\\\\\.|[^\\\\\\\\()[\\\\]]|\"+M+\")*)|.*)\\\\)|)\",j=new RegExp(F+\"+\",\"g\"),V=new RegExp(\"^\"+F+\"+|((?:^|[^\\\\\\\\])(?:\\\\\\\\.)*)\"+F+\"+$\",\"g\"),B=new RegExp(\"^\"+F+\"*,\"+F+\"*\"),q=new RegExp(\"^\"+F+\"*([>+~]|\"+F+\")\"+F+\"*\"),O=new RegExp(\"=\"+F+\"*([^\\\\]'\\\"]*?)\"+F+\"*\\\\]\",\"g\"),z=new RegExp(W),X=new RegExp(\"^\"+I+\"$\"),U={ID:new RegExp(\"^#(\"+I+\")\"),CLASS:new RegExp(\"^\\\\.(\"+I+\")\"),TAG:new RegExp(\"^(\"+I+\"|[*])\"),ATTR:new RegExp(\"^\"+M),PSEUDO:new RegExp(\"^\"+W),CHILD:new RegExp(\"^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\\\(\"+F+\"*(even|odd|(([+-]|)(\\\\d*)n|)\"+F+\"*(?:([+-]|)\"+F+\"*(\\\\d+)|))\"+F+\"*\\\\)|)\",\"i\"),bool:new RegExp(\"^(?:\"+_+\")$\",\"i\"),needsContext:new RegExp(\"^\"+F+\"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\\\(\"+F+\"*((?:-\\\\d)?\\\\d*)\"+F+\"*\\\\)|)(?=[^-]|$)\",\"i\")},K=/^(?:input|select|textarea|button)$/i,G=/^h\\d$/i,Y=/^[^{]+\\{\\s*\\[native \\w/,Q=/^(?:#([\\w-]+)|(\\w+)|\\.([\\w-]+))$/,J=/[+~]/,Z=new RegExp(\"\\\\\\\\([\\\\da-f]{1,6}\"+F+\"?|(\"+F+\")|.)\",\"ig\"),ee=function(e,t,n){var o=\"0x\"+t-65536;return o!=o||n?t:o<0?String.fromCharCode(o+65536):String.fromCharCode(o>>10|55296,1023&o|56320)},te=/([\\0-\\x1f\\x7f]|^-?\\d)|^-$|[^\\0-\\x1f\\x7f-\\uFFFF\\w-]/g,ne=function(e,t){return t?\"\\0\"===e?\"�\":e.slice(0,-1)+\"\\\\\"+e.charCodeAt(e.length-1).toString(16)+\" \":\"\\\\\"+e},oe=function(){x()},re=we(function(e){return!0===e.disabled&&(\"form\"in e||\"label\"in e)},{dir:\"parentNode\",next:\"legend\"});try{$.apply(t=H.call(w.childNodes),w.childNodes),t[w.childNodes.length].nodeType}catch(e){$={apply:t.length?function(e,t){N.apply(e,H.call(t))}:function(e,t){for(var n=e.length,o=0;e[n++]=t[o++];);e.length=n-1}}}function ie(e,t,n,o){var r,i,l,s,a,c,u,d=t&&t.ownerDocument,p=t?t.nodeType:9;if(n=n||[],\"string\"!=typeof e||!e||1!==p&&9!==p&&11!==p)return n;if(!o&&((t?t.ownerDocument||t:w)!==R&&x(t),t=t||R,S)){if(11!==p&&(a=Q.exec(e)))if(r=a[1]){if(9===p){if(!(l=t.getElementById(r)))return n;if(l.id===r)return n.push(l),n}else if(d&&(l=d.getElementById(r))&&v(t,l)&&l.id===r)return n.push(l),n}else{if(a[2])return $.apply(n,t.getElementsByTagName(e)),n;if((r=a[3])&&f.getElementsByClassName&&t.getElementsByClassName)return $.apply(n,t.getElementsByClassName(r)),n}if(f.qsa&&!T[e+\" \"]&&(!m||!m.test(e))){if(1!==p)d=t,u=e;else if(\"object\"!==t.nodeName.toLowerCase()){for((s=t.getAttribute(\"id\"))?s=s.replace(te,ne):t.setAttribute(\"id\",s=E),c=h(e),i=c.length;i--;)c[i]=\"#\"+s+\" \"+ve(c[i]);u=c.join(\",\"),d=J.test(e)&&ge(t.parentNode)||t}if(u)try{return $.apply(n,d.querySelectorAll(u)),n}catch(e){}finally{s===E&&t.removeAttribute(\"id\")}}}return g(e.replace(V,\"$1\"),t,n,o)}function le(){var o=[];return function e(t,n){o.push(t+\" \")>C.cacheLength&&delete e[o.shift()];return e[t+\" \"]=n}}function se(e){return e[E]=!0,e}function ae(e){var t=R.createElement(\"fieldset\");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function ce(e,t){for(var n=e.split(\"|\"),o=n.length;o--;)C.attrHandle[n[o]]=t}function ue(e,t){var n=t&&e,o=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(o)return o;if(n)for(;n=n.nextSibling;)if(n===t)return-1;return e?1:-1}function de(n){return function(e){var t=e.nodeName.toLowerCase();return\"input\"===t&&e.type===n}}function pe(n){return function(e){var t=e.nodeName.toLowerCase();return(\"input\"===t||\"button\"===t)&&e.type===n}}function fe(t){return function(e){return\"form\"in e?e.parentNode&&!1===e.disabled?\"label\"in e?\"label\"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&re(e)===t:e.disabled===t:\"label\"in e&&e.disabled===t}}function he(l){return se(function(i){return i=+i,se(function(e,t){for(var n,o=l([],e.length,i),r=o.length;r--;)e[n=o[r]]&&(e[n]=!(t[n]=e[n]))})})}function ge(e){return e&&void 0!==e.getElementsByTagName&&e}for(e in f=ie.support={},r=ie.isXML=function(e){var t=e&&(e.ownerDocument||e).documentElement;return!!t&&\"HTML\"!==t.nodeName},x=ie.setDocument=function(e){var t,n,o=e?e.ownerDocument||e:w;return o!==R&&9===o.nodeType&&o.documentElement&&(l=(R=o).documentElement,S=!r(R),w!==R&&(n=R.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener(\"unload\",oe,!1):n.attachEvent&&n.attachEvent(\"onunload\",oe)),f.attributes=ae(function(e){return e.className=\"i\",!e.getAttribute(\"className\")}),f.getElementsByTagName=ae(function(e){return e.appendChild(R.createComment(\"\")),!e.getElementsByTagName(\"*\").length}),f.getElementsByClassName=Y.test(R.getElementsByClassName),f.getById=ae(function(e){return l.appendChild(e).id=E,!R.getElementsByName||!R.getElementsByName(E).length}),f.getById?(C.filter.ID=function(e){var t=e.replace(Z,ee);return function(e){return e.getAttribute(\"id\")===t}},C.find.ID=function(e,t){if(void 0!==t.getElementById&&S){var n=t.getElementById(e);return n?[n]:[]}}):(C.filter.ID=function(e){var n=e.replace(Z,ee);return function(e){var t=void 0!==e.getAttributeNode&&e.getAttributeNode(\"id\");return t&&t.value===n}},C.find.ID=function(e,t){if(void 0!==t.getElementById&&S){var n,o,r,i=t.getElementById(e);if(i){if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i];for(r=t.getElementsByName(e),o=0;i=r[o++];)if((n=i.getAttributeNode(\"id\"))&&n.value===e)return[i]}return[]}}),C.find.TAG=f.getElementsByTagName?function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):f.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,o=[],r=0,i=t.getElementsByTagName(e);if(\"*\"===e){for(;n=i[r++];)1===n.nodeType&&o.push(n);return o}return i},C.find.CLASS=f.getElementsByClassName&&function(e,t){if(void 0!==t.getElementsByClassName&&S)return t.getElementsByClassName(e)},s=[],m=[],(f.qsa=Y.test(R.querySelectorAll))&&(ae(function(e){l.appendChild(e).innerHTML=\"<a id='\"+E+\"'></a><select id='\"+E+\"-\\r\\\\' msallowcapture=''><option selected=''></option></select>\",e.querySelectorAll(\"[msallowcapture^='']\").length&&m.push(\"[*^$]=\"+F+\"*(?:''|\\\"\\\")\"),e.querySelectorAll(\"[selected]\").length||m.push(\"\\\\[\"+F+\"*(?:value|\"+_+\")\"),e.querySelectorAll(\"[id~=\"+E+\"-]\").length||m.push(\"~=\"),e.querySelectorAll(\":checked\").length||m.push(\":checked\"),e.querySelectorAll(\"a#\"+E+\"+*\").length||m.push(\".#.+[+~]\")}),ae(function(e){e.innerHTML=\"<a href='' disabled='disabled'></a><select disabled='disabled'><option/></select>\";var t=R.createElement(\"input\");t.setAttribute(\"type\",\"hidden\"),e.appendChild(t).setAttribute(\"name\",\"D\"),e.querySelectorAll(\"[name=d]\").length&&m.push(\"name\"+F+\"*[*^$|!~]?=\"),2!==e.querySelectorAll(\":enabled\").length&&m.push(\":enabled\",\":disabled\"),l.appendChild(e).disabled=!0,2!==e.querySelectorAll(\":disabled\").length&&m.push(\":enabled\",\":disabled\"),e.querySelectorAll(\"*,:x\"),m.push(\",.*:\")})),(f.matchesSelector=Y.test(u=l.matches||l.webkitMatchesSelector||l.mozMatchesSelector||l.oMatchesSelector||l.msMatchesSelector))&&ae(function(e){f.disconnectedMatch=u.call(e,\"*\"),u.call(e,\"[s!='']:x\"),s.push(\"!=\",W)}),m=m.length&&new RegExp(m.join(\"|\")),s=s.length&&new RegExp(s.join(\"|\")),t=Y.test(l.compareDocumentPosition),v=t||Y.test(l.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,o=t&&t.parentNode;return e===o||!(!o||1!==o.nodeType||!(n.contains?n.contains(o):e.compareDocumentPosition&&16&e.compareDocumentPosition(o)))}:function(e,t){if(t)for(;t=t.parentNode;)if(t===e)return!0;return!1},P=t?function(e,t){if(e===t)return c=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!f.sortDetached&&t.compareDocumentPosition(e)===n?e===R||e.ownerDocument===w&&v(w,e)?-1:t===R||t.ownerDocument===w&&v(w,t)?1:a?L(a,e)-L(a,t):0:4&n?-1:1)}:function(e,t){if(e===t)return c=!0,0;var n,o=0,r=e.parentNode,i=t.parentNode,l=[e],s=[t];if(!r||!i)return e===R?-1:t===R?1:r?-1:i?1:a?L(a,e)-L(a,t):0;if(r===i)return ue(e,t);for(n=e;n=n.parentNode;)l.unshift(n);for(n=t;n=n.parentNode;)s.unshift(n);for(;l[o]===s[o];)o++;return o?ue(l[o],s[o]):l[o]===w?-1:s[o]===w?1:0}),R},ie.matches=function(e,t){return ie(e,null,null,t)},ie.matchesSelector=function(e,t){if((e.ownerDocument||e)!==R&&x(e),t=t.replace(O,\"='$1']\"),f.matchesSelector&&S&&!T[t+\" \"]&&(!s||!s.test(t))&&(!m||!m.test(t)))try{var n=u.call(e,t);if(n||f.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){}return 0<ie(t,R,null,[e]).length},ie.contains=function(e,t){return(e.ownerDocument||e)!==R&&x(e),v(e,t)},ie.attr=function(e,t){(e.ownerDocument||e)!==R&&x(e);var n=C.attrHandle[t.toLowerCase()],o=n&&D.call(C.attrHandle,t.toLowerCase())?n(e,t,!S):void 0;return void 0!==o?o:f.attributes||!S?e.getAttribute(t):(o=e.getAttributeNode(t))&&o.specified?o.value:null},ie.escape=function(e){return(e+\"\").replace(te,ne)},ie.error=function(e){throw new Error(\"Syntax error, unrecognized expression: \"+e)},ie.uniqueSort=function(e){var t,n=[],o=0,r=0;if(c=!f.detectDuplicates,a=!f.sortStable&&e.slice(0),e.sort(P),c){for(;t=e[r++];)t===e[r]&&(o=n.push(r));for(;o--;)e.splice(n[o],1)}return a=null,e},i=ie.getText=function(e){var t,n=\"\",o=0,r=e.nodeType;if(r){if(1===r||9===r||11===r){if(\"string\"==typeof e.textContent)return e.textContent;for(e=e.firstChild;e;e=e.nextSibling)n+=i(e)}else if(3===r||4===r)return e.nodeValue}else for(;t=e[o++];)n+=i(t);return n},(C=ie.selectors={cacheLength:50,createPseudo:se,match:U,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(Z,ee),e[3]=(e[3]||e[4]||e[5]||\"\").replace(Z,ee),\"~=\"===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]||ie.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]&&ie.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return U.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||\"\":n&&z.test(n)&&(t=h(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(Z,ee).toLowerCase();return\"*\"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+\" \"];return t||(t=new RegExp(\"(^|\"+F+\")\"+e+\"(\"+F+\"|$)\"))&&p(e,function(e){return t.test(\"string\"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute(\"class\")||\"\")})},ATTR:function(n,o,r){return function(e){var t=ie.attr(e,n);return null==t?\"!=\"===o:!o||(t+=\"\",\"=\"===o?t===r:\"!=\"===o?t!==r:\"^=\"===o?r&&0===t.indexOf(r):\"*=\"===o?r&&-1<t.indexOf(r):\"$=\"===o?r&&t.slice(-r.length)===r:\"~=\"===o?-1<(\" \"+t.replace(j,\" \")+\" \").indexOf(r):\"|=\"===o&&(t===r||t.slice(0,r.length+1)===r+\"-\"))}},CHILD:function(h,e,t,g,m){var v=\"nth\"!==h.slice(0,3),w=\"last\"!==h.slice(-4),y=\"of-type\"===e;return 1===g&&0===m?function(e){return!!e.parentNode}:function(e,t,n){var o,r,i,l,s,a,c=v!==w?\"nextSibling\":\"previousSibling\",u=e.parentNode,d=y&&e.nodeName.toLowerCase(),p=!n&&!y,f=!1;if(u){if(v){for(;c;){for(l=e;l=l[c];)if(y?l.nodeName.toLowerCase()===d:1===l.nodeType)return!1;a=c=\"only\"===h&&!a&&\"nextSibling\"}return!0}if(a=[w?u.firstChild:u.lastChild],w&&p){for(i=(l=u)[E]||(l[E]={}),r=i[l.uniqueID]||(i[l.uniqueID]={}),o=r[h]||[],s=o[0]===k&&o[1],f=s&&o[2],l=s&&u.childNodes[s];l=++s&&l&&l[c]||(f=s=0)||a.pop();)if(1===l.nodeType&&++f&&l===e){r[h]=[k,s,f];break}}else if(p&&(i=(l=e)[E]||(l[E]={}),r=i[l.uniqueID]||(i[l.uniqueID]={}),o=r[h]||[],s=o[0]===k&&o[1],f=s),!1===f)for(;(l=++s&&l&&l[c]||(f=s=0)||a.pop())&&((y?l.nodeName.toLowerCase()!==d:1!==l.nodeType)||!++f||(p&&(i=l[E]||(l[E]={}),(r=i[l.uniqueID]||(i[l.uniqueID]={}))[h]=[k,f]),l!==e)););return(f-=m)===g||f%g==0&&0<=f/g}}},PSEUDO:function(e,i){var t,l=C.pseudos[e]||C.setFilters[e.toLowerCase()]||ie.error(\"unsupported pseudo: \"+e);return l[E]?l(i):1<l.length?(t=[e,e,\"\",i],C.setFilters.hasOwnProperty(e.toLowerCase())?se(function(e,t){for(var n,o=l(e,i),r=o.length;r--;)n=L(e,o[r]),e[n]=!(t[n]=o[r])}):function(e){return l(e,0,t)}):l}},pseudos:{not:se(function(e){var o=[],r=[],s=d(e.replace(V,\"$1\"));return s[E]?se(function(e,t,n,o){for(var r,i=s(e,null,o,[]),l=e.length;l--;)(r=i[l])&&(e[l]=!(t[l]=r))}):function(e,t,n){return o[0]=e,s(o,null,n,r),o[0]=null,!r.pop()}}),has:se(function(t){return function(e){return 0<ie(t,e).length}}),contains:se(function(t){return t=t.replace(Z,ee),function(e){return-1<(e.textContent||e.innerText||i(e)).indexOf(t)}}),lang:se(function(n){return X.test(n||\"\")||ie.error(\"unsupported lang: \"+n),n=n.replace(Z,ee).toLowerCase(),function(e){var t;do{if(t=S?e.lang:e.getAttribute(\"xml:lang\")||e.getAttribute(\"lang\"))return(t=t.toLowerCase())===n||0===t.indexOf(n+\"-\")}while((e=e.parentNode)&&1===e.nodeType);return!1}}),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===l},focus:function(e){return e===R.activeElement&&(!R.hasFocus||R.hasFocus())&&!!(e.type||e.href||~e.tabIndex)},enabled:fe(!1),disabled:fe(!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!C.pseudos.empty(e)},header:function(e){return G.test(e.nodeName)},input:function(e){return K.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:he(function(){return[0]}),last:he(function(e,t){return[t-1]}),eq:he(function(e,t,n){return[n<0?n+t:n]}),even:he(function(e,t){for(var n=0;n<t;n+=2)e.push(n);return e}),odd:he(function(e,t){for(var n=1;n<t;n+=2)e.push(n);return e}),lt:he(function(e,t,n){for(var o=n<0?n+t:n;0<=--o;)e.push(o);return e}),gt:he(function(e,t,n){for(var o=n<0?n+t:n;++o<t;)e.push(o);return e})}}).pseudos.nth=C.pseudos.eq,{radio:!0,checkbox:!0,file:!0,password:!0,image:!0})C.pseudos[e]=de(e);for(e in{submit:!0,reset:!0})C.pseudos[e]=pe(e);function me(){}function ve(e){for(var t=0,n=e.length,o=\"\";t<n;t++)o+=e[t].value;return o}function we(s,e,t){var a=e.dir,c=e.next,u=c||a,d=t&&\"parentNode\"===u,p=o++;return e.first?function(e,t,n){for(;e=e[a];)if(1===e.nodeType||d)return s(e,t,n);return!1}:function(e,t,n){var o,r,i,l=[k,p];if(n){for(;e=e[a];)if((1===e.nodeType||d)&&s(e,t,n))return!0}else for(;e=e[a];)if(1===e.nodeType||d)if(i=e[E]||(e[E]={}),r=i[e.uniqueID]||(i[e.uniqueID]={}),c&&c===e.nodeName.toLowerCase())e=e[a]||e;else{if((o=r[u])&&o[0]===k&&o[1]===p)return l[2]=o[2];if((r[u]=l)[2]=s(e,t,n))return!0}return!1}}function ye(r){return 1<r.length?function(e,t,n){for(var o=r.length;o--;)if(!r[o](e,t,n))return!1;return!0}:r[0]}function Ce(e,t,n,o,r){for(var i,l=[],s=0,a=e.length,c=null!=t;s<a;s++)(i=e[s])&&(n&&!n(i,o,r)||(l.push(i),c&&t.push(s)));return l}function be(f,h,g,m,v,e){return m&&!m[E]&&(m=be(m)),v&&!v[E]&&(v=be(v,e)),se(function(e,t,n,o){var r,i,l,s=[],a=[],c=t.length,u=e||function(e,t,n){for(var o=0,r=t.length;o<r;o++)ie(e,t[o],n);return n}(h||\"*\",n.nodeType?[n]:n,[]),d=!f||!e&&h?u:Ce(u,s,f,n,o),p=g?v||(e?f:c||m)?[]:t:d;if(g&&g(d,p,n,o),m)for(r=Ce(p,a),m(r,[],n,o),i=r.length;i--;)(l=r[i])&&(p[a[i]]=!(d[a[i]]=l));if(e){if(v||f){if(v){for(r=[],i=p.length;i--;)(l=p[i])&&r.push(d[i]=l);v(null,p=[],r,o)}for(i=p.length;i--;)(l=p[i])&&-1<(r=v?L(e,l):s[i])&&(e[r]=!(t[r]=l))}}else p=Ce(p===t?p.splice(c,p.length):p),v?v(null,t,p,o):$.apply(t,p)})}function xe(e){for(var r,t,n,o=e.length,i=C.relative[e[0].type],l=i||C.relative[\" \"],s=i?1:0,a=we(function(e){return e===r},l,!0),c=we(function(e){return-1<L(r,e)},l,!0),u=[function(e,t,n){var o=!i&&(n||t!==b)||((r=t).nodeType?a(e,t,n):c(e,t,n));return r=null,o}];s<o;s++)if(t=C.relative[e[s].type])u=[we(ye(u),t)];else{if((t=C.filter[e[s].type].apply(null,e[s].matches))[E]){for(n=++s;n<o&&!C.relative[e[n].type];n++);return be(1<s&&ye(u),1<s&&ve(e.slice(0,s-1).concat({value:\" \"===e[s-2].type?\"*\":\"\"})).replace(V,\"$1\"),t,s<n&&xe(e.slice(s,n)),n<o&&xe(e=e.slice(n)),n<o&&ve(e))}u.push(t)}return ye(u)}return me.prototype=C.filters=C.pseudos,C.setFilters=new me,h=ie.tokenize=function(e,t){var n,o,r,i,l,s,a,c=y[e+\" \"];if(c)return t?0:c.slice(0);for(l=e,s=[],a=C.preFilter;l;){for(i in n&&!(o=B.exec(l))||(o&&(l=l.slice(o[0].length)||l),s.push(r=[])),n=!1,(o=q.exec(l))&&(n=o.shift(),r.push({value:n,type:o[0].replace(V,\" \")}),l=l.slice(n.length)),C.filter)!(o=U[i].exec(l))||a[i]&&!(o=a[i](o))||(n=o.shift(),r.push({value:n,type:i,matches:o}),l=l.slice(n.length));if(!n)break}return t?l.length:l?ie.error(e):y(e,s).slice(0)},d=ie.compile=function(e,t){var n,m,v,w,y,o,r=[],i=[],l=T[e+\" \"];if(!l){for(t||(t=h(e)),n=t.length;n--;)(l=xe(t[n]))[E]?r.push(l):i.push(l);(l=T(e,(m=i,w=0<(v=r).length,y=0<m.length,o=function(e,t,n,o,r){var i,l,s,a=0,c=\"0\",u=e&&[],d=[],p=b,f=e||y&&C.find.TAG(\"*\",r),h=k+=null==p?1:Math.random()||.1,g=f.length;for(r&&(b=t===R||t||r);c!==g&&null!=(i=f[c]);c++){if(y&&i){for(l=0,t||i.ownerDocument===R||(x(i),n=!S);s=m[l++];)if(s(i,t||R,n)){o.push(i);break}r&&(k=h)}w&&((i=!s&&i)&&a--,e&&u.push(i))}if(a+=c,w&&c!==a){for(l=0;s=v[l++];)s(u,d,t,n);if(e){if(0<a)for(;c--;)u[c]||d[c]||(d[c]=A.call(o));d=Ce(d)}$.apply(o,d),r&&!e&&0<d.length&&1<a+v.length&&ie.uniqueSort(o)}return r&&(k=h,b=p),u},w?se(o):o))).selector=e}return l},g=ie.select=function(e,t,n,o){var r,i,l,s,a,c=\"function\"==typeof e&&e,u=!o&&h(e=c.selector||e);if(n=n||[],1===u.length){if(2<(i=u[0]=u[0].slice(0)).length&&\"ID\"===(l=i[0]).type&&9===t.nodeType&&S&&C.relative[i[1].type]){if(!(t=(C.find.ID(l.matches[0].replace(Z,ee),t)||[])[0]))return n;c&&(t=t.parentNode),e=e.slice(i.shift().value.length)}for(r=U.needsContext.test(e)?0:i.length;r--&&(l=i[r],!C.relative[s=l.type]);)if((a=C.find[s])&&(o=a(l.matches[0].replace(Z,ee),J.test(i[0].type)&&ge(t.parentNode)||t))){if(i.splice(r,1),!(e=o.length&&ve(i)))return $.apply(n,o),n;break}}return(c||d(e,u))(o,t,!S,n,!t||J.test(e)&&ge(t.parentNode)||t),n},f.sortStable=E.split(\"\").sort(P).join(\"\")===E,f.detectDuplicates=!!c,x(),f.sortDetached=ae(function(e){return 1&e.compareDocumentPosition(R.createElement(\"fieldset\"))}),ae(function(e){return e.innerHTML=\"<a href='#'></a>\",\"#\"===e.firstChild.getAttribute(\"href\")})||ce(\"type|href|height|width\",function(e,t,n){if(!n)return e.getAttribute(t,\"type\"===t.toLowerCase()?1:2)}),f.attributes&&ae(function(e){return e.innerHTML=\"<input/>\",e.firstChild.setAttribute(\"value\",\"\"),\"\"===e.firstChild.getAttribute(\"value\")})||ce(\"value\",function(e,t,n){if(!n&&\"input\"===e.nodeName.toLowerCase())return e.defaultValue}),ae(function(e){return null==e.getAttribute(\"disabled\")})||ce(_,function(e,t,n){var o;if(!n)return!0===e[t]?t.toLowerCase():(o=e.getAttributeNode(t))&&o.specified?o.value:null}),ie}(R);E.find=y,E.expr=y.selectors,E.expr[\":\"]=E.expr.pseudos,E.uniqueSort=E.unique=y.uniqueSort,E.text=y.getText,E.isXMLDoc=y.isXML,E.contains=y.contains,E.escapeSelector=y.escape;var C=function(e,t,n){for(var o=[],r=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(r&&E(e).is(n))break;o.push(e)}return o},b=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},x=E.expr.match.needsContext;function k(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}var T=/^<([a-z][^\\/\\0>:\\x20\\t\\r\\n\\f]*)[\\x20\\t\\r\\n\\f]*\\/?>(?:<\\/\\1>|)$/i,P=/^.[^:#\\[\\.,]*$/;function D(e,n,o){return E.isFunction(n)?E.grep(e,function(e,t){return!!n.call(e,t,e)!==o}):n.nodeType?E.grep(e,function(e){return e===n!==o}):\"string\"!=typeof n?E.grep(e,function(e){return-1<r.call(n,e)!==o}):P.test(n)?E.filter(n,e,o):(n=E.filter(n,e),E.grep(e,function(e){return-1<r.call(n,e)!==o&&1===e.nodeType}))}E.filter=function(e,t,n){var o=t[0];return n&&(e=\":not(\"+e+\")\"),1===t.length&&1===o.nodeType?E.find.matchesSelector(o,e)?[o]:[]:E.find.matches(e,E.grep(t,function(e){return 1===e.nodeType}))},E.fn.extend({find:function(e){var t,n,o=this.length,r=this;if(\"string\"!=typeof e)return this.pushStack(E(e).filter(function(){for(t=0;t<o;t++)if(E.contains(r[t],this))return!0}));for(n=this.pushStack([]),t=0;t<o;t++)E.find(e,r[t],n);return 1<o?E.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&&x.test(e)?E(e):e||[],!1).length}});var A,N=/^(?:\\s*(<[\\w\\W]+>)[^>]*|#([\\w-]+))$/,$=E.fn.init=function(e,t,n){var o,r;if(!e)return this;if(n=n||A,\"string\"==typeof e){if(!(o=\"<\"===e[0]&&\">\"===e[e.length-1]&&3<=e.length?[null,e,null]:N.exec(e))||!o[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(o[1]){if(t=t instanceof E?t[0]:t,E.merge(this,E.parseHTML(o[1],t&&t.nodeType?t.ownerDocument||t:S,!0)),T.test(o[1])&&E.isPlainObject(t))for(o in t)E.isFunction(this[o])?this[o](t[o]):this.attr(o,t[o]);return this}return(r=S.getElementById(o[2]))&&(this[0]=r,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):E.isFunction(e)?void 0!==n.ready?n.ready(e):e(E):E.makeArray(e,this)};$.prototype=E.fn,A=E(S);var H=/^(?:parents|prev(?:Until|All))/,L={children:!0,contents:!0,next:!0,prev:!0};function _(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}E.fn.extend({has:function(e){var t=E(e,this),n=t.length;return this.filter(function(){for(var e=0;e<n;e++)if(E.contains(this,t[e]))return!0})},closest:function(e,t){var n,o=0,r=this.length,i=[],l=\"string\"!=typeof e&&E(e);if(!x.test(e))for(;o<r;o++)for(n=this[o];n&&n!==t;n=n.parentNode)if(n.nodeType<11&&(l?-1<l.index(n):1===n.nodeType&&E.find.matchesSelector(n,e))){i.push(n);break}return this.pushStack(1<i.length?E.uniqueSort(i):i)},index:function(e){return e?\"string\"==typeof e?r.call(E(e),this[0]):r.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(E.uniqueSort(E.merge(this.get(),E(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),E.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return C(e,\"parentNode\")},parentsUntil:function(e,t,n){return C(e,\"parentNode\",n)},next:function(e){return _(e,\"nextSibling\")},prev:function(e){return _(e,\"previousSibling\")},nextAll:function(e){return C(e,\"nextSibling\")},prevAll:function(e){return C(e,\"previousSibling\")},nextUntil:function(e,t,n){return C(e,\"nextSibling\",n)},prevUntil:function(e,t,n){return C(e,\"previousSibling\",n)},siblings:function(e){return b((e.parentNode||{}).firstChild,e)},children:function(e){return b(e.firstChild)},contents:function(e){return k(e,\"iframe\")?e.contentDocument:(k(e,\"template\")&&(e=e.content||e),E.merge([],e.childNodes))}},function(o,r){E.fn[o]=function(e,t){var n=E.map(this,r,e);return\"Until\"!==o.slice(-5)&&(t=e),t&&\"string\"==typeof t&&(n=E.filter(t,n)),1<this.length&&(L[o]||E.uniqueSort(n),H.test(o)&&n.reverse()),this.pushStack(n)}});var F=/[^\\x20\\t\\r\\n\\f]+/g;function I(e){return e}function M(e){throw e}function W(e,t,n,o){var r;try{e&&E.isFunction(r=e.promise)?r.call(e).done(t).fail(n):e&&E.isFunction(r=e.then)?r.call(e,t,n):t.apply(void 0,[e].slice(o))}catch(e){n.apply(void 0,[e])}}E.Callbacks=function(o){var e,n;o=\"string\"==typeof o?(e=o,n={},E.each(e.match(F)||[],function(e,t){n[t]=!0}),n):E.extend({},o);var r,t,i,l,s=[],a=[],c=-1,u=function(){for(l=l||o.once,i=r=!0;a.length;c=-1)for(t=a.shift();++c<s.length;)!1===s[c].apply(t[0],t[1])&&o.stopOnFalse&&(c=s.length,t=!1);o.memory||(t=!1),r=!1,l&&(s=t?[]:\"\")},d={add:function(){return s&&(t&&!r&&(c=s.length-1,a.push(t)),function n(e){E.each(e,function(e,t){E.isFunction(t)?o.unique&&d.has(t)||s.push(t):t&&t.length&&\"string\"!==E.type(t)&&n(t)})}(arguments),t&&!r&&u()),this},remove:function(){return E.each(arguments,function(e,t){for(var n;-1<(n=E.inArray(t,s,n));)s.splice(n,1),n<=c&&c--}),this},has:function(e){return e?-1<E.inArray(e,s):0<s.length},empty:function(){return s&&(s=[]),this},disable:function(){return l=a=[],s=t=\"\",this},disabled:function(){return!s},lock:function(){return l=a=[],t||r||(s=t=\"\"),this},locked:function(){return!!l},fireWith:function(e,t){return l||(t=[e,(t=t||[]).slice?t.slice():t],a.push(t),r||u()),this},fire:function(){return d.fireWith(this,arguments),this},fired:function(){return!!i}};return d},E.extend({Deferred:function(e){var i=[[\"notify\",\"progress\",E.Callbacks(\"memory\"),E.Callbacks(\"memory\"),2],[\"resolve\",\"done\",E.Callbacks(\"once memory\"),E.Callbacks(\"once memory\"),0,\"resolved\"],[\"reject\",\"fail\",E.Callbacks(\"once memory\"),E.Callbacks(\"once memory\"),1,\"rejected\"]],r=\"pending\",l={state:function(){return r},always:function(){return s.done(arguments).fail(arguments),this},catch:function(e){return l.then(null,e)},pipe:function(){var r=arguments;return E.Deferred(function(o){E.each(i,function(e,t){var n=E.isFunction(r[t[4]])&&r[t[4]];s[t[1]](function(){var e=n&&n.apply(this,arguments);e&&E.isFunction(e.promise)?e.promise().progress(o.notify).done(o.resolve).fail(o.reject):o[t[0]+\"With\"](this,n?[e]:arguments)})}),r=null}).promise()},then:function(t,n,o){var a=0;function c(r,i,l,s){return function(){var n=this,o=arguments,e=function(){var e,t;if(!(r<a)){if((e=l.apply(n,o))===i.promise())throw new TypeError(\"Thenable self-resolution\");t=e&&(\"object\"==typeof e||\"function\"==typeof e)&&e.then,E.isFunction(t)?s?t.call(e,c(a,i,I,s),c(a,i,M,s)):(a++,t.call(e,c(a,i,I,s),c(a,i,M,s),c(a,i,I,i.notifyWith))):(l!==I&&(n=void 0,o=[e]),(s||i.resolveWith)(n,o))}},t=s?e:function(){try{e()}catch(e){E.Deferred.exceptionHook&&E.Deferred.exceptionHook(e,t.stackTrace),a<=r+1&&(l!==M&&(n=void 0,o=[e]),i.rejectWith(n,o))}};r?t():(E.Deferred.getStackHook&&(t.stackTrace=E.Deferred.getStackHook()),R.setTimeout(t))}}return E.Deferred(function(e){i[0][3].add(c(0,e,E.isFunction(o)?o:I,e.notifyWith)),i[1][3].add(c(0,e,E.isFunction(t)?t:I)),i[2][3].add(c(0,e,E.isFunction(n)?n:M))}).promise()},promise:function(e){return null!=e?E.extend(e,l):l}},s={};return E.each(i,function(e,t){var n=t[2],o=t[5];l[t[1]]=n.add,o&&n.add(function(){r=o},i[3-e][2].disable,i[0][2].lock),n.add(t[3].fire),s[t[0]]=function(){return s[t[0]+\"With\"](this===s?void 0:this,arguments),this},s[t[0]+\"With\"]=n.fireWith}),l.promise(s),e&&e.call(s,s),s},when:function(e){var n=arguments.length,t=n,o=Array(t),r=s.call(arguments),i=E.Deferred(),l=function(t){return function(e){o[t]=this,r[t]=1<arguments.length?s.call(arguments):e,--n||i.resolveWith(o,r)}};if(n<=1&&(W(e,i.done(l(t)).resolve,i.reject,!n),\"pending\"===i.state()||E.isFunction(r[t]&&r[t].then)))return i.then();for(;t--;)W(r[t],l(t),i.reject);return i.promise()}});var j=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;E.Deferred.exceptionHook=function(e,t){R.console&&R.console.warn&&e&&j.test(e.name)&&R.console.warn(\"jQuery.Deferred exception: \"+e.message,e.stack,t)},E.readyException=function(e){R.setTimeout(function(){throw e})};var V=E.Deferred();function B(){S.removeEventListener(\"DOMContentLoaded\",B),R.removeEventListener(\"load\",B),E.ready()}E.fn.ready=function(e){return V.then(e).catch(function(e){E.readyException(e)}),this},E.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--E.readyWait:E.isReady)||(E.isReady=!0)!==e&&0<--E.readyWait||V.resolveWith(S,[E])}}),E.ready.then=V.then,\"complete\"===S.readyState||\"loading\"!==S.readyState&&!S.documentElement.doScroll?R.setTimeout(E.ready):(S.addEventListener(\"DOMContentLoaded\",B),R.addEventListener(\"load\",B));var q=function(e,t,n,o,r,i,l){var s=0,a=e.length,c=null==n;if(\"object\"===E.type(n))for(s in r=!0,n)q(e,t,s,n[s],!0,i,l);else if(void 0!==o&&(r=!0,E.isFunction(o)||(l=!0),c&&(l?(t.call(e,o),t=null):(c=t,t=function(e,t,n){return c.call(E(e),n)})),t))for(;s<a;s++)t(e[s],n,l?o:o.call(e[s],s,t(e[s],n)));return r?e:c?t.call(e):a?t(e[0],n):i},O=function(e){return 1===e.nodeType||9===e.nodeType||!+e.nodeType};function z(){this.expando=E.expando+z.uid++}z.uid=1,z.prototype={cache:function(e){var t=e[this.expando];return t||(t={},O(e)&&(e.nodeType?e[this.expando]=t:Object.defineProperty(e,this.expando,{value:t,configurable:!0}))),t},set:function(e,t,n){var o,r=this.cache(e);if(\"string\"==typeof t)r[E.camelCase(t)]=n;else for(o in t)r[E.camelCase(o)]=t[o];return r},get:function(e,t){return void 0===t?this.cache(e):e[this.expando]&&e[this.expando][E.camelCase(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,o=e[this.expando];if(void 0!==o){if(void 0!==t){t=Array.isArray(t)?t.map(E.camelCase):(t=E.camelCase(t))in o?[t]:t.match(F)||[],n=t.length;for(;n--;)delete o[t[n]]}(void 0===t||E.isEmptyObject(o))&&(e.nodeType?e[this.expando]=void 0:delete e[this.expando])}},hasData:function(e){var t=e[this.expando];return void 0!==t&&!E.isEmptyObject(t)}};var X=new z,U=new z,K=/^(?:\\{[\\w\\W]*\\}|\\[[\\w\\W]*\\])$/,G=/[A-Z]/g;function Y(e,t,n){var o;if(void 0===n&&1===e.nodeType)if(o=\"data-\"+t.replace(G,\"-$&\").toLowerCase(),\"string\"==typeof(n=e.getAttribute(o))){try{n=function(e){if(\"true\"===e)return!0;if(\"false\"===e)return!1;if(\"null\"===e)return null;if(e===+e+\"\")return+e;if(K.test(e))return JSON.parse(e);return e}(n)}catch(e){}U.set(e,t,n)}else n=void 0;return n}E.extend({hasData:function(e){return U.hasData(e)||X.hasData(e)},data:function(e,t,n){return U.access(e,t,n)},removeData:function(e,t){U.remove(e,t)},_data:function(e,t,n){return X.access(e,t,n)},_removeData:function(e,t){X.remove(e,t)}}),E.fn.extend({data:function(n,e){var t,o,r,i=this[0],l=i&&i.attributes;if(void 0===n){if(this.length&&(r=U.get(i),1===i.nodeType&&!X.get(i,\"hasDataAttrs\"))){for(t=l.length;t--;)l[t]&&0===(o=l[t].name).indexOf(\"data-\")&&(o=E.camelCase(o.slice(5)),Y(i,o,r[o]));X.set(i,\"hasDataAttrs\",!0)}return r}return\"object\"==typeof n?this.each(function(){U.set(this,n)}):q(this,function(e){var t;if(i&&void 0===e)return void 0!==(t=U.get(i,n))?t:void 0!==(t=Y(i,n))?t:void 0;this.each(function(){U.set(this,n,e)})},null,e,1<arguments.length,null,!0)},removeData:function(e){return this.each(function(){U.remove(this,e)})}}),E.extend({queue:function(e,t,n){var o;if(e)return t=(t||\"fx\")+\"queue\",o=X.get(e,t),n&&(!o||Array.isArray(n)?o=X.access(e,t,E.makeArray(n)):o.push(n)),o||[]},dequeue:function(e,t){t=t||\"fx\";var n=E.queue(e,t),o=n.length,r=n.shift(),i=E._queueHooks(e,t);\"inprogress\"===r&&(r=n.shift(),o--),r&&(\"fx\"===t&&n.unshift(\"inprogress\"),delete i.stop,r.call(e,function(){E.dequeue(e,t)},i)),!o&&i&&i.empty.fire()},_queueHooks:function(e,t){var n=t+\"queueHooks\";return X.get(e,n)||X.access(e,n,{empty:E.Callbacks(\"once memory\").add(function(){X.remove(e,[t+\"queue\",n])})})}}),E.fn.extend({queue:function(t,n){var e=2;return\"string\"!=typeof t&&(n=t,t=\"fx\",e--),arguments.length<e?E.queue(this[0],t):void 0===n?this:this.each(function(){var e=E.queue(this,t,n);E._queueHooks(this,t),\"fx\"===t&&\"inprogress\"!==e[0]&&E.dequeue(this,t)})},dequeue:function(e){return this.each(function(){E.dequeue(this,e)})},clearQueue:function(e){return this.queue(e||\"fx\",[])},promise:function(e,t){var n,o=1,r=E.Deferred(),i=this,l=this.length,s=function(){--o||r.resolveWith(i,[i])};for(\"string\"!=typeof e&&(t=e,e=void 0),e=e||\"fx\";l--;)(n=X.get(i[l],e+\"queueHooks\"))&&n.empty&&(o++,n.empty.add(s));return s(),r.promise(t)}});var Q=/[+-]?(?:\\d*\\.|)\\d+(?:[eE][+-]?\\d+|)/.source,J=new RegExp(\"^(?:([+-])=|)(\"+Q+\")([a-z%]*)$\",\"i\"),Z=[\"Top\",\"Right\",\"Bottom\",\"Left\"],ee=function(e,t){return\"none\"===(e=t||e).style.display||\"\"===e.style.display&&E.contains(e.ownerDocument,e)&&\"none\"===E.css(e,\"display\")},te=function(e,t,n,o){var r,i,l={};for(i in t)l[i]=e.style[i],e.style[i]=t[i];for(i in r=n.apply(e,o||[]),t)e.style[i]=l[i];return r};function ne(e,t,n,o){var r,i=1,l=20,s=o?function(){return o.cur()}:function(){return E.css(e,t,\"\")},a=s(),c=n&&n[3]||(E.cssNumber[t]?\"\":\"px\"),u=(E.cssNumber[t]||\"px\"!==c&&+a)&&J.exec(E.css(e,t));if(u&&u[3]!==c)for(c=c||u[3],n=n||[],u=+a||1;u/=i=i||\".5\",E.style(e,t,u+c),i!==(i=s()/a)&&1!==i&&--l;);return n&&(u=+u||+a||0,r=n[1]?u+(n[1]+1)*n[2]:+n[2],o&&(o.unit=c,o.start=u,o.end=r)),r}var oe={};function re(e){var t,n=e.ownerDocument,o=e.nodeName,r=oe[o];return r||(t=n.body.appendChild(n.createElement(o)),r=E.css(t,\"display\"),t.parentNode.removeChild(t),\"none\"===r&&(r=\"block\"),oe[o]=r)}function ie(e,t){for(var n,o,r=[],i=0,l=e.length;i<l;i++)(o=e[i]).style&&(n=o.style.display,t?(\"none\"===n&&(r[i]=X.get(o,\"display\")||null,r[i]||(o.style.display=\"\")),\"\"===o.style.display&&ee(o)&&(r[i]=re(o))):\"none\"!==n&&(r[i]=\"none\",X.set(o,\"display\",n)));for(i=0;i<l;i++)null!=r[i]&&(e[i].style.display=r[i]);return e}E.fn.extend({show:function(){return ie(this,!0)},hide:function(){return ie(this)},toggle:function(e){return\"boolean\"==typeof e?e?this.show():this.hide():this.each(function(){ee(this)?E(this).show():E(this).hide()})}});var le=/^(?:checkbox|radio)$/i,se=/<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]+)/i,ae=/^$|\\/(?:java|ecma)script/i,ce={option:[1,\"<select multiple='multiple'>\",\"</select>\"],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 ue(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||\"*\"):void 0!==e.querySelectorAll?e.querySelectorAll(t||\"*\"):[],void 0===t||t&&k(e,t)?E.merge([e],n):n}function de(e,t){for(var n=0,o=e.length;n<o;n++)X.set(e[n],\"globalEval\",!t||X.get(t[n],\"globalEval\"))}ce.optgroup=ce.option,ce.tbody=ce.tfoot=ce.colgroup=ce.caption=ce.thead,ce.th=ce.td;var pe,fe,he,ge=/<|&#?\\w+;/;function me(e,t,n,o,r){for(var i,l,s,a,c,u,d=t.createDocumentFragment(),p=[],f=0,h=e.length;f<h;f++)if((i=e[f])||0===i)if(\"object\"===E.type(i))E.merge(p,i.nodeType?[i]:i);else if(ge.test(i)){for(l=l||d.appendChild(t.createElement(\"div\")),s=(se.exec(i)||[\"\",\"\"])[1].toLowerCase(),a=ce[s]||ce._default,l.innerHTML=a[1]+E.htmlPrefilter(i)+a[2],u=a[0];u--;)l=l.lastChild;E.merge(p,l.childNodes),(l=d.firstChild).textContent=\"\"}else p.push(t.createTextNode(i));for(d.textContent=\"\",f=0;i=p[f++];)if(o&&-1<E.inArray(i,o))r&&r.push(i);else if(c=E.contains(i.ownerDocument,i),l=ue(d.appendChild(i),\"script\"),c&&de(l),n)for(u=0;i=l[u++];)ae.test(i.type||\"\")&&n.push(i);return d}pe=S.createDocumentFragment(),fe=pe.appendChild(S.createElement(\"div\")),(he=S.createElement(\"input\")).setAttribute(\"type\",\"radio\"),he.setAttribute(\"checked\",\"checked\"),he.setAttribute(\"name\",\"t\"),fe.appendChild(he),m.checkClone=fe.cloneNode(!0).cloneNode(!0).lastChild.checked,fe.innerHTML=\"<textarea>x</textarea>\",m.noCloneChecked=!!fe.cloneNode(!0).lastChild.defaultValue;var ve=S.documentElement,we=/^key/,ye=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ce=/^([^.]*)(?:\\.(.+)|)/;function be(){return!0}function xe(){return!1}function Re(){try{return S.activeElement}catch(e){}}function Se(e,t,n,o,r,i){var l,s;if(\"object\"==typeof t){for(s in\"string\"!=typeof n&&(o=o||n,n=void 0),t)Se(e,s,n,o,t[s],i);return e}if(null==o&&null==r?(r=n,o=n=void 0):null==r&&(\"string\"==typeof n?(r=o,o=void 0):(r=o,o=n,n=void 0)),!1===r)r=xe;else if(!r)return e;return 1===i&&(l=r,(r=function(e){return E().off(e),l.apply(this,arguments)}).guid=l.guid||(l.guid=E.guid++)),e.each(function(){E.event.add(this,t,r,o,n)})}E.event={global:{},add:function(t,e,n,o,r){var i,l,s,a,c,u,d,p,f,h,g,m=X.get(t);if(m)for(n.handler&&(n=(i=n).handler,r=i.selector),r&&E.find.matchesSelector(ve,r),n.guid||(n.guid=E.guid++),(a=m.events)||(a=m.events={}),(l=m.handle)||(l=m.handle=function(e){return void 0!==E&&E.event.triggered!==e.type?E.event.dispatch.apply(t,arguments):void 0}),e=(e||\"\").match(F)||[\"\"],c=e.length;c--;)s=Ce.exec(e[c])||[],f=g=s[1],h=(s[2]||\"\").split(\".\").sort(),f&&(d=E.event.special[f]||{},f=(r?d.delegateType:d.bindType)||f,d=E.event.special[f]||{},u=E.extend({type:f,origType:g,data:o,handler:n,guid:n.guid,selector:r,needsContext:r&&E.expr.match.needsContext.test(r),namespace:h.join(\".\")},i),(p=a[f])||((p=a[f]=[]).delegateCount=0,d.setup&&!1!==d.setup.call(t,o,h,l)||t.addEventListener&&t.addEventListener(f,l)),d.add&&(d.add.call(t,u),u.handler.guid||(u.handler.guid=n.guid)),r?p.splice(p.delegateCount++,0,u):p.push(u),E.event.global[f]=!0)},remove:function(e,t,n,o,r){var i,l,s,a,c,u,d,p,f,h,g,m=X.hasData(e)&&X.get(e);if(m&&(a=m.events)){for(t=(t||\"\").match(F)||[\"\"],c=t.length;c--;)if(s=Ce.exec(t[c])||[],f=g=s[1],h=(s[2]||\"\").split(\".\").sort(),f){for(d=E.event.special[f]||{},f=(o?d.delegateType:d.bindType)||f,p=a[f]||[],s=s[2]&&new RegExp(\"(^|\\\\.)\"+h.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"),l=i=p.length;i--;)u=p[i],!r&&g!==u.origType||n&&n.guid!==u.guid||s&&!s.test(u.namespace)||o&&o!==u.selector&&(\"**\"!==o||!u.selector)||(p.splice(i,1),u.selector&&p.delegateCount--,d.remove&&d.remove.call(e,u));l&&!p.length&&(d.teardown&&!1!==d.teardown.call(e,h,m.handle)||E.removeEvent(e,f,m.handle),delete a[f])}else for(f in a)E.event.remove(e,f+t[c],n,o,!0);E.isEmptyObject(a)&&X.remove(e,\"handle events\")}},dispatch:function(e){var t,n,o,r,i,l,s=E.event.fix(e),a=new Array(arguments.length),c=(X.get(this,\"events\")||{})[s.type]||[],u=E.event.special[s.type]||{};for(a[0]=s,t=1;t<arguments.length;t++)a[t]=arguments[t];if(s.delegateTarget=this,!u.preDispatch||!1!==u.preDispatch.call(this,s)){for(l=E.event.handlers.call(this,s,c),t=0;(r=l[t++])&&!s.isPropagationStopped();)for(s.currentTarget=r.elem,n=0;(i=r.handlers[n++])&&!s.isImmediatePropagationStopped();)s.rnamespace&&!s.rnamespace.test(i.namespace)||(s.handleObj=i,s.data=i.data,void 0!==(o=((E.event.special[i.origType]||{}).handle||i.handler).apply(r.elem,a))&&!1===(s.result=o)&&(s.preventDefault(),s.stopPropagation()));return u.postDispatch&&u.postDispatch.call(this,s),s.result}},handlers:function(e,t){var n,o,r,i,l,s=[],a=t.delegateCount,c=e.target;if(a&&c.nodeType&&!(\"click\"===e.type&&1<=e.button))for(;c!==this;c=c.parentNode||this)if(1===c.nodeType&&(\"click\"!==e.type||!0!==c.disabled)){for(i=[],l={},n=0;n<a;n++)o=t[n],r=o.selector+\" \",void 0===l[r]&&(l[r]=o.needsContext?-1<E(r,this).index(c):E.find(r,this,null,[c]).length),l[r]&&i.push(o);i.length&&s.push({elem:c,handlers:i})}return c=this,a<t.length&&s.push({elem:c,handlers:t.slice(a)}),s},addProp:function(t,e){Object.defineProperty(E.Event.prototype,t,{enumerable:!0,configurable:!0,get:E.isFunction(e)?function(){if(this.originalEvent)return e(this.originalEvent)}:function(){if(this.originalEvent)return this.originalEvent[t]},set:function(e){Object.defineProperty(this,t,{enumerable:!0,configurable:!0,writable:!0,value:e})}})},fix:function(e){return e[E.expando]?e:new E.Event(e)},special:{load:{noBubble:!0},focus:{trigger:function(){if(this!==Re()&&this.focus)return this.focus(),!1},delegateType:\"focusin\"},blur:{trigger:function(){if(this===Re()&&this.blur)return this.blur(),!1},delegateType:\"focusout\"},click:{trigger:function(){if(\"checkbox\"===this.type&&this.click&&k(this,\"input\"))return this.click(),!1},_default:function(e){return k(e.target,\"a\")}},beforeunload:{postDispatch:function(e){void 0!==e.result&&e.originalEvent&&(e.originalEvent.returnValue=e.result)}}}},E.removeEvent=function(e,t,n){e.removeEventListener&&e.removeEventListener(t,n)},E.Event=function(e,t){if(!(this instanceof E.Event))return new E.Event(e,t);e&&e.type?(this.originalEvent=e,this.type=e.type,this.isDefaultPrevented=e.defaultPrevented||void 0===e.defaultPrevented&&!1===e.returnValue?be:xe,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&&E.extend(this,t),this.timeStamp=e&&e.timeStamp||E.now(),this[E.expando]=!0},E.Event.prototype={constructor:E.Event,isDefaultPrevented:xe,isPropagationStopped:xe,isImmediatePropagationStopped:xe,isSimulated:!1,preventDefault:function(){var e=this.originalEvent;this.isDefaultPrevented=be,e&&!this.isSimulated&&e.preventDefault()},stopPropagation:function(){var e=this.originalEvent;this.isPropagationStopped=be,e&&!this.isSimulated&&e.stopPropagation()},stopImmediatePropagation:function(){var e=this.originalEvent;this.isImmediatePropagationStopped=be,e&&!this.isSimulated&&e.stopImmediatePropagation(),this.stopPropagation()}},E.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,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&&ye.test(e.type)?1&t?1:2&t?3:4&t?2:0:e.which}},E.event.addProp),E.each({mouseenter:\"mouseover\",mouseleave:\"mouseout\",pointerenter:\"pointerover\",pointerleave:\"pointerout\"},function(e,r){E.event.special[e]={delegateType:r,bindType:r,handle:function(e){var t,n=e.relatedTarget,o=e.handleObj;return n&&(n===this||E.contains(this,n))||(e.type=o.origType,t=o.handler.apply(this,arguments),e.type=r),t}}}),E.fn.extend({on:function(e,t,n,o){return Se(this,e,t,n,o)},one:function(e,t,n,o){return Se(this,e,t,n,o,1)},off:function(e,t,n){var o,r;if(e&&e.preventDefault&&e.handleObj)return o=e.handleObj,E(e.delegateTarget).off(o.namespace?o.origType+\".\"+o.namespace:o.origType,o.selector,o.handler),this;if(\"object\"==typeof e){for(r in e)this.off(r,t,e[r]);return this}return!1!==t&&\"function\"!=typeof t||(n=t,t=void 0),!1===n&&(n=xe),this.each(function(){E.event.remove(this,e,n,t)})}});var Ee=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)[^>]*)\\/>/gi,ke=/<script|<style|<link/i,Te=/checked\\s*(?:[^=]|=\\s*.checked.)/i,Pe=/^true\\/(.*)/,De=/^\\s*<!(?:\\[CDATA\\[|--)|(?:\\]\\]|--)>\\s*$/g;function Ae(e,t){return k(e,\"table\")&&k(11!==t.nodeType?t:t.firstChild,\"tr\")&&E(\">tbody\",e)[0]||e}function Ne(e){return e.type=(null!==e.getAttribute(\"type\"))+\"/\"+e.type,e}function $e(e){var t=Pe.exec(e.type);return t?e.type=t[1]:e.removeAttribute(\"type\"),e}function He(e,t){var n,o,r,i,l,s,a,c;if(1===t.nodeType){if(X.hasData(e)&&(i=X.access(e),l=X.set(t,i),c=i.events))for(r in delete l.handle,l.events={},c)for(n=0,o=c[r].length;n<o;n++)E.event.add(t,r,c[r][n]);U.hasData(e)&&(s=U.access(e),a=E.extend({},s),U.set(t,a))}}function Le(e,t){var n=t.nodeName.toLowerCase();\"input\"===n&&le.test(e.type)?t.checked=e.checked:\"input\"!==n&&\"textarea\"!==n||(t.defaultValue=e.defaultValue)}function _e(n,o,r,i){o=g.apply([],o);var e,t,l,s,a,c,u=0,d=n.length,p=d-1,f=o[0],h=E.isFunction(f);if(h||1<d&&\"string\"==typeof f&&!m.checkClone&&Te.test(f))return n.each(function(e){var t=n.eq(e);h&&(o[0]=f.call(this,e,t.html())),_e(t,o,r,i)});if(d&&(e=me(o,n[0].ownerDocument,!1,n,i),t=e.firstChild,1===e.childNodes.length&&(e=t),t||i)){for(l=E.map(ue(e,\"script\"),Ne),s=l.length;u<d;u++)a=e,u!==p&&(a=E.clone(a,!0,!0),s&&E.merge(l,ue(a,\"script\"))),r.call(n[u],a,u);if(s)for(c=l[l.length-1].ownerDocument,E.map(l,$e),u=0;u<s;u++)a=l[u],ae.test(a.type||\"\")&&!X.access(a,\"globalEval\")&&E.contains(c,a)&&(a.src?E._evalUrl&&E._evalUrl(a.src):v(a.textContent.replace(De,\"\"),c))}return n}function Fe(e,t,n){for(var o,r=t?E.filter(t,e):e,i=0;null!=(o=r[i]);i++)n||1!==o.nodeType||E.cleanData(ue(o)),o.parentNode&&(n&&E.contains(o.ownerDocument,o)&&de(ue(o,\"script\")),o.parentNode.removeChild(o));return e}E.extend({htmlPrefilter:function(e){return e.replace(Ee,\"<$1></$2>\")},clone:function(e,t,n){var o,r,i,l,s=e.cloneNode(!0),a=E.contains(e.ownerDocument,e);if(!(m.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||E.isXMLDoc(e)))for(l=ue(s),i=ue(e),o=0,r=i.length;o<r;o++)Le(i[o],l[o]);if(t)if(n)for(i=i||ue(e),l=l||ue(s),o=0,r=i.length;o<r;o++)He(i[o],l[o]);else He(e,s);return 0<(l=ue(s,\"script\")).length&&de(l,!a&&ue(e,\"script\")),s},cleanData:function(e){for(var t,n,o,r=E.event.special,i=0;void 0!==(n=e[i]);i++)if(O(n)){if(t=n[X.expando]){if(t.events)for(o in t.events)r[o]?E.event.remove(n,o):E.removeEvent(n,o,t.handle);n[X.expando]=void 0}n[U.expando]&&(n[U.expando]=void 0)}}}),E.fn.extend({detach:function(e){return Fe(this,e,!0)},remove:function(e){return Fe(this,e)},text:function(e){return q(this,function(e){return void 0===e?E.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 _e(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ae(this,e);t.appendChild(e)}})},prepend:function(){return _e(this,arguments,function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=Ae(this,e);t.insertBefore(e,t.firstChild)}})},before:function(){return _e(this,arguments,function(e){this.parentNode&&this.parentNode.insertBefore(e,this)})},after:function(){return _e(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&&(E.cleanData(ue(e,!1)),e.textContent=\"\");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map(function(){return E.clone(this,e,t)})},html:function(e){return q(this,function(e){var t=this[0]||{},n=0,o=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if(\"string\"==typeof e&&!ke.test(e)&&!ce[(se.exec(e)||[\"\",\"\"])[1].toLowerCase()]){e=E.htmlPrefilter(e);try{for(;n<o;n++)1===(t=this[n]||{}).nodeType&&(E.cleanData(ue(t,!1)),t.innerHTML=e);t=0}catch(e){}}t&&this.empty().append(e)},null,e,arguments.length)},replaceWith:function(){var n=[];return _e(this,arguments,function(e){var t=this.parentNode;E.inArray(this,n)<0&&(E.cleanData(ue(this)),t&&t.replaceChild(e,this))},n)}}),E.each({appendTo:\"append\",prependTo:\"prepend\",insertBefore:\"before\",insertAfter:\"after\",replaceAll:\"replaceWith\"},function(e,l){E.fn[e]=function(e){for(var t,n=[],o=E(e),r=o.length-1,i=0;i<=r;i++)t=i===r?this:this.clone(!0),E(o[i])[l](t),a.apply(n,t.get());return this.pushStack(n)}});var Ie=/^margin/,Me=new RegExp(\"^(\"+Q+\")(?!px)[a-z%]+$\",\"i\"),We=function(e){var t=e.ownerDocument.defaultView;return t&&t.opener||(t=R),t.getComputedStyle(e)};function je(e,t,n){var o,r,i,l,s=e.style;return(n=n||We(e))&&(\"\"!==(l=n.getPropertyValue(t)||n[t])||E.contains(e.ownerDocument,e)||(l=E.style(e,t)),!m.pixelMarginRight()&&Me.test(l)&&Ie.test(t)&&(o=s.width,r=s.minWidth,i=s.maxWidth,s.minWidth=s.maxWidth=s.width=l,l=n.width,s.width=o,s.minWidth=r,s.maxWidth=i)),void 0!==l?l+\"\":l}function Ve(e,t){return{get:function(){if(!e())return(this.get=t).apply(this,arguments);delete this.get}}}!function(){function e(){if(l){l.style.cssText=\"box-sizing:border-box;position:relative;display:block;margin:auto;border:1px;padding:1px;top:1%;width:50%\",l.innerHTML=\"\",ve.appendChild(i);var e=R.getComputedStyle(l);t=\"1%\"!==e.top,r=\"2px\"===e.marginLeft,n=\"4px\"===e.width,l.style.marginRight=\"50%\",o=\"4px\"===e.marginRight,ve.removeChild(i),l=null}}var t,n,o,r,i=S.createElement(\"div\"),l=S.createElement(\"div\");l.style&&(l.style.backgroundClip=\"content-box\",l.cloneNode(!0).style.backgroundClip=\"\",m.clearCloneStyle=\"content-box\"===l.style.backgroundClip,i.style.cssText=\"border:0;width:8px;height:0;top:0;left:-9999px;padding:0;margin-top:1px;position:absolute\",i.appendChild(l),E.extend(m,{pixelPosition:function(){return e(),t},boxSizingReliable:function(){return e(),n},pixelMarginRight:function(){return e(),o},reliableMarginLeft:function(){return e(),r}}))}();var Be=/^(none|table(?!-c[ea]).+)/,qe=/^--/,Oe={position:\"absolute\",visibility:\"hidden\",display:\"block\"},ze={letterSpacing:\"0\",fontWeight:\"400\"},Xe=[\"Webkit\",\"Moz\",\"ms\"],Ue=S.createElement(\"div\").style;function Ke(e){var t=E.cssProps[e];return t||(t=E.cssProps[e]=function(e){if(e in Ue)return e;var t=e[0].toUpperCase()+e.slice(1),n=Xe.length;for(;n--;)if((e=Xe[n]+t)in Ue)return e}(e)||e),t}function Ge(e,t,n){var o=J.exec(t);return o?Math.max(0,o[2]-(n||0))+(o[3]||\"px\"):t}function Ye(e,t,n,o,r){var i,l=0;for(i=n===(o?\"border\":\"content\")?4:\"width\"===t?1:0;i<4;i+=2)\"margin\"===n&&(l+=E.css(e,n+Z[i],!0,r)),o?(\"content\"===n&&(l-=E.css(e,\"padding\"+Z[i],!0,r)),\"margin\"!==n&&(l-=E.css(e,\"border\"+Z[i]+\"Width\",!0,r))):(l+=E.css(e,\"padding\"+Z[i],!0,r),\"padding\"!==n&&(l+=E.css(e,\"border\"+Z[i]+\"Width\",!0,r)));return l}function Qe(e,t,n){var o,r=We(e),i=je(e,t,r),l=\"border-box\"===E.css(e,\"boxSizing\",!1,r);return Me.test(i)?i:(o=l&&(m.boxSizingReliable()||i===e.style[t]),\"auto\"===i&&(i=e[\"offset\"+t[0].toUpperCase()+t.slice(1)]),(i=parseFloat(i)||0)+Ye(e,t,n||(l?\"border\":\"content\"),o,r)+\"px\")}function Je(e,t,n,o,r){return new Je.prototype.init(e,t,n,o,r)}E.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=je(e,\"opacity\");return\"\"===n?\"1\":n}}}},cssNumber:{animationIterationCount:!0,columnCount:!0,fillOpacity:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,widows:!0,zIndex:!0,zoom:!0},cssProps:{float:\"cssFloat\"},style:function(e,t,n,o){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var r,i,l,s=E.camelCase(t),a=qe.test(t),c=e.style;if(a||(t=Ke(s)),l=E.cssHooks[t]||E.cssHooks[s],void 0===n)return l&&\"get\"in l&&void 0!==(r=l.get(e,!1,o))?r:c[t];\"string\"===(i=typeof n)&&(r=J.exec(n))&&r[1]&&(n=ne(e,t,r),i=\"number\"),null!=n&&n==n&&(\"number\"===i&&(n+=r&&r[3]||(E.cssNumber[s]?\"\":\"px\")),m.clearCloneStyle||\"\"!==n||0!==t.indexOf(\"background\")||(c[t]=\"inherit\"),l&&\"set\"in l&&void 0===(n=l.set(e,n,o))||(a?c.setProperty(t,n):c[t]=n))}},css:function(e,t,n,o){var r,i,l,s=E.camelCase(t),a=qe.test(t);return a||(t=Ke(s)),(l=E.cssHooks[t]||E.cssHooks[s])&&\"get\"in l&&(r=l.get(e,!0,n)),void 0===r&&(r=je(e,t,o)),\"normal\"===r&&t in ze&&(r=ze[t]),\"\"===n||n?(i=parseFloat(r),!0===n||isFinite(i)?i||0:r):r}}),E.each([\"height\",\"width\"],function(e,l){E.cssHooks[l]={get:function(e,t,n){if(t)return!Be.test(E.css(e,\"display\"))||e.getClientRects().length&&e.getBoundingClientRect().width?Qe(e,l,n):te(e,Oe,function(){return Qe(e,l,n)})},set:function(e,t,n){var o,r=n&&We(e),i=n&&Ye(e,l,n,\"border-box\"===E.css(e,\"boxSizing\",!1,r),r);return i&&(o=J.exec(t))&&\"px\"!==(o[3]||\"px\")&&(e.style[l]=t,t=E.css(e,l)),Ge(e,t,i)}}}),E.cssHooks.marginLeft=Ve(m.reliableMarginLeft,function(e,t){if(t)return(parseFloat(je(e,\"marginLeft\"))||e.getBoundingClientRect().left-te(e,{marginLeft:0},function(){return e.getBoundingClientRect().left}))+\"px\"}),E.each({margin:\"\",padding:\"\",border:\"Width\"},function(r,i){E.cssHooks[r+i]={expand:function(e){for(var t=0,n={},o=\"string\"==typeof e?e.split(\" \"):[e];t<4;t++)n[r+Z[t]+i]=o[t]||o[t-2]||o[0];return n}},Ie.test(r)||(E.cssHooks[r+i].set=Ge)}),E.fn.extend({css:function(e,t){return q(this,function(e,t,n){var o,r,i={},l=0;if(Array.isArray(t)){for(o=We(e),r=t.length;l<r;l++)i[t[l]]=E.css(e,t[l],!1,o);return i}return void 0!==n?E.style(e,t,n):E.css(e,t)},e,t,1<arguments.length)}}),((E.Tween=Je).prototype={constructor:Je,init:function(e,t,n,o,r,i){this.elem=e,this.prop=n,this.easing=r||E.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=o,this.unit=i||(E.cssNumber[n]?\"\":\"px\")},cur:function(){var e=Je.propHooks[this.prop];return e&&e.get?e.get(this):Je.propHooks._default.get(this)},run:function(e){var t,n=Je.propHooks[this.prop];return this.options.duration?this.pos=t=E.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):Je.propHooks._default.set(this),this}}).init.prototype=Je.prototype,(Je.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=E.css(e.elem,e.prop,\"\"))&&\"auto\"!==t?t:0},set:function(e){E.fx.step[e.prop]?E.fx.step[e.prop](e):1!==e.elem.nodeType||null==e.elem.style[E.cssProps[e.prop]]&&!E.cssHooks[e.prop]?e.elem[e.prop]=e.now:E.style(e.elem,e.prop,e.now+e.unit)}}}).scrollTop=Je.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},E.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:\"swing\"},E.fx=Je.prototype.init,E.fx.step={};var Ze,et,tt,nt,ot,rt=/^(?:toggle|show|hide)$/,it=/queueHooks$/;function lt(){et&&(!1===S.hidden&&R.requestAnimationFrame?R.requestAnimationFrame(lt):R.setTimeout(lt,E.fx.interval),E.fx.tick())}function st(){return R.setTimeout(function(){Ze=void 0}),Ze=E.now()}function at(e,t){var n,o=0,r={height:e};for(t=t?1:0;o<4;o+=2-t)n=Z[o],r[\"margin\"+n]=r[\"padding\"+n]=e;return t&&(r.opacity=r.width=e),r}function ct(e,t,n){for(var o,r=(ut.tweeners[t]||[]).concat(ut.tweeners[\"*\"]),i=0,l=r.length;i<l;i++)if(o=r[i].call(n,t,e))return o}function ut(l,e,t){var n,s,o=0,r=ut.prefilters.length,a=E.Deferred().always(function(){delete i.elem}),i=function(){if(s)return!1;for(var e=Ze||st(),t=Math.max(0,c.startTime+c.duration-e),n=t/c.duration||0,o=1-n,r=0,i=c.tweens.length;r<i;r++)c.tweens[r].run(o);return a.notifyWith(l,[c,o,t]),o<1&&i?t:(i||a.notifyWith(l,[c,1,0]),a.resolveWith(l,[c]),!1)},c=a.promise({elem:l,props:E.extend({},e),opts:E.extend(!0,{specialEasing:{},easing:E.easing._default},t),originalProperties:e,originalOptions:t,startTime:Ze||st(),duration:t.duration,tweens:[],createTween:function(e,t){var n=E.Tween(l,c.opts,e,t,c.opts.specialEasing[e]||c.opts.easing);return c.tweens.push(n),n},stop:function(e){var t=0,n=e?c.tweens.length:0;if(s)return this;for(s=!0;t<n;t++)c.tweens[t].run(1);return e?(a.notifyWith(l,[c,1,0]),a.resolveWith(l,[c,e])):a.rejectWith(l,[c,e]),this}}),u=c.props;for(!function(e,t){var n,o,r,i,l;for(n in e)if(o=E.camelCase(n),r=t[o],i=e[n],Array.isArray(i)&&(r=i[1],i=e[n]=i[0]),n!==o&&(e[o]=i,delete e[n]),(l=E.cssHooks[o])&&\"expand\"in l)for(n in i=l.expand(i),delete e[o],i)n in e||(e[n]=i[n],t[n]=r);else t[o]=r}(u,c.opts.specialEasing);o<r;o++)if(n=ut.prefilters[o].call(c,l,u,c.opts))return E.isFunction(n.stop)&&(E._queueHooks(c.elem,c.opts.queue).stop=E.proxy(n.stop,n)),n;return E.map(u,ct,c),E.isFunction(c.opts.start)&&c.opts.start.call(l,c),c.progress(c.opts.progress).done(c.opts.done,c.opts.complete).fail(c.opts.fail).always(c.opts.always),E.fx.timer(E.extend(i,{elem:l,anim:c,queue:c.opts.queue})),c}E.Animation=E.extend(ut,{tweeners:{\"*\":[function(e,t){var n=this.createTween(e,t);return ne(n.elem,e,J.exec(t),n),n}]},tweener:function(e,t){E.isFunction(e)?(t=e,e=[\"*\"]):e=e.match(F);for(var n,o=0,r=e.length;o<r;o++)n=e[o],ut.tweeners[n]=ut.tweeners[n]||[],ut.tweeners[n].unshift(t)},prefilters:[function(e,t,n){var o,r,i,l,s,a,c,u,d=\"width\"in t||\"height\"in t,p=this,f={},h=e.style,g=e.nodeType&&ee(e),m=X.get(e,\"fxshow\");n.queue||(null==(l=E._queueHooks(e,\"fx\")).unqueued&&(l.unqueued=0,s=l.empty.fire,l.empty.fire=function(){l.unqueued||s()}),l.unqueued++,p.always(function(){p.always(function(){l.unqueued--,E.queue(e,\"fx\").length||l.empty.fire()})}));for(o in t)if(r=t[o],rt.test(r)){if(delete t[o],i=i||\"toggle\"===r,r===(g?\"hide\":\"show\")){if(\"show\"!==r||!m||void 0===m[o])continue;g=!0}f[o]=m&&m[o]||E.style(e,o)}if(!(a=!E.isEmptyObject(t))&&E.isEmptyObject(f))return;d&&1===e.nodeType&&(n.overflow=[h.overflow,h.overflowX,h.overflowY],null==(c=m&&m.display)&&(c=X.get(e,\"display\")),\"none\"===(u=E.css(e,\"display\"))&&(c?u=c:(ie([e],!0),c=e.style.display||c,u=E.css(e,\"display\"),ie([e]))),(\"inline\"===u||\"inline-block\"===u&&null!=c)&&\"none\"===E.css(e,\"float\")&&(a||(p.done(function(){h.display=c}),null==c&&(u=h.display,c=\"none\"===u?\"\":u)),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]}));for(o in a=!1,f)a||(m?\"hidden\"in m&&(g=m.hidden):m=X.access(e,\"fxshow\",{display:c}),i&&(m.hidden=!g),g&&ie([e],!0),p.done(function(){for(o in g||ie([e]),X.remove(e,\"fxshow\"),f)E.style(e,o,f[o])})),a=ct(g?m[o]:0,o,p),o in m||(m[o]=a.start,g&&(a.end=a.start,a.start=0))}],prefilter:function(e,t){t?ut.prefilters.unshift(e):ut.prefilters.push(e)}}),E.speed=function(e,t,n){var o=e&&\"object\"==typeof e?E.extend({},e):{complete:n||!n&&t||E.isFunction(e)&&e,duration:e,easing:n&&t||t&&!E.isFunction(t)&&t};return E.fx.off?o.duration=0:\"number\"!=typeof o.duration&&(o.duration in E.fx.speeds?o.duration=E.fx.speeds[o.duration]:o.duration=E.fx.speeds._default),null!=o.queue&&!0!==o.queue||(o.queue=\"fx\"),o.old=o.complete,o.complete=function(){E.isFunction(o.old)&&o.old.call(this),o.queue&&E.dequeue(this,o.queue)},o},E.fn.extend({fadeTo:function(e,t,n,o){return this.filter(ee).css(\"opacity\",0).show().end().animate({opacity:t},e,n,o)},animate:function(t,e,n,o){var r=E.isEmptyObject(t),i=E.speed(e,n,o),l=function(){var e=ut(this,E.extend({},t),i);(r||X.get(this,\"finish\"))&&e.stop(!0)};return l.finish=l,r||!1===i.queue?this.each(l):this.queue(i.queue,l)},stop:function(r,e,i){var l=function(e){var t=e.stop;delete e.stop,t(i)};return\"string\"!=typeof r&&(i=e,e=r,r=void 0),e&&!1!==r&&this.queue(r||\"fx\",[]),this.each(function(){var e=!0,t=null!=r&&r+\"queueHooks\",n=E.timers,o=X.get(this);if(t)o[t]&&o[t].stop&&l(o[t]);else for(t in o)o[t]&&o[t].stop&&it.test(t)&&l(o[t]);for(t=n.length;t--;)n[t].elem!==this||null!=r&&n[t].queue!==r||(n[t].anim.stop(i),e=!1,n.splice(t,1));!e&&i||E.dequeue(this,r)})},finish:function(l){return!1!==l&&(l=l||\"fx\"),this.each(function(){var e,t=X.get(this),n=t[l+\"queue\"],o=t[l+\"queueHooks\"],r=E.timers,i=n?n.length:0;for(t.finish=!0,E.queue(this,l,[]),o&&o.stop&&o.stop.call(this,!0),e=r.length;e--;)r[e].elem===this&&r[e].queue===l&&(r[e].anim.stop(!0),r.splice(e,1));for(e=0;e<i;e++)n[e]&&n[e].finish&&n[e].finish.call(this);delete t.finish})}}),E.each([\"toggle\",\"show\",\"hide\"],function(e,o){var r=E.fn[o];E.fn[o]=function(e,t,n){return null==e||\"boolean\"==typeof e?r.apply(this,arguments):this.animate(at(o,!0),e,t,n)}}),E.each({slideDown:at(\"show\"),slideUp:at(\"hide\"),slideToggle:at(\"toggle\"),fadeIn:{opacity:\"show\"},fadeOut:{opacity:\"hide\"},fadeToggle:{opacity:\"toggle\"}},function(e,o){E.fn[e]=function(e,t,n){return this.animate(o,e,t,n)}}),E.timers=[],E.fx.tick=function(){var e,t=0,n=E.timers;for(Ze=E.now();t<n.length;t++)(e=n[t])()||n[t]!==e||n.splice(t--,1);n.length||E.fx.stop(),Ze=void 0},E.fx.timer=function(e){E.timers.push(e),E.fx.start()},E.fx.interval=13,E.fx.start=function(){et||(et=!0,lt())},E.fx.stop=function(){et=null},E.fx.speeds={slow:600,fast:200,_default:400},E.fn.delay=function(o,e){return o=E.fx&&E.fx.speeds[o]||o,e=e||\"fx\",this.queue(e,function(e,t){var n=R.setTimeout(e,o);t.stop=function(){R.clearTimeout(n)}})},tt=S.createElement(\"input\"),nt=S.createElement(\"select\"),ot=nt.appendChild(S.createElement(\"option\")),tt.type=\"checkbox\",m.checkOn=\"\"!==tt.value,m.optSelected=ot.selected,(tt=S.createElement(\"input\")).value=\"t\",tt.type=\"radio\",m.radioValue=\"t\"===tt.value;var dt,pt=E.expr.attrHandle;E.fn.extend({attr:function(e,t){return q(this,E.attr,e,t,1<arguments.length)},removeAttr:function(e){return this.each(function(){E.removeAttr(this,e)})}}),E.extend({attr:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return void 0===e.getAttribute?E.prop(e,t,n):(1===i&&E.isXMLDoc(e)||(r=E.attrHooks[t.toLowerCase()]||(E.expr.match.bool.test(t)?dt:void 0)),void 0!==n?null===n?void E.removeAttr(e,t):r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:(e.setAttribute(t,n+\"\"),n):r&&\"get\"in r&&null!==(o=r.get(e,t))?o:null==(o=E.find.attr(e,t))?void 0:o)},attrHooks:{type:{set:function(e,t){if(!m.radioValue&&\"radio\"===t&&k(e,\"input\")){var n=e.value;return e.setAttribute(\"type\",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,o=0,r=t&&t.match(F);if(r&&1===e.nodeType)for(;n=r[o++];)e.removeAttribute(n)}}),dt={set:function(e,t,n){return!1===t?E.removeAttr(e,n):e.setAttribute(n,n),n}},E.each(E.expr.match.bool.source.match(/\\w+/g),function(e,t){var l=pt[t]||E.find.attr;pt[t]=function(e,t,n){var o,r,i=t.toLowerCase();return n||(r=pt[i],pt[i]=o,o=null!=l(e,t,n)?i:null,pt[i]=r),o}});var ft=/^(?:input|select|textarea|button)$/i,ht=/^(?:a|area)$/i;function gt(e){var t=e.match(F)||[];return t.join(\" \")}function mt(e){return e.getAttribute&&e.getAttribute(\"class\")||\"\"}E.fn.extend({prop:function(e,t){return q(this,E.prop,e,t,1<arguments.length)},removeProp:function(e){return this.each(function(){delete this[E.propFix[e]||e]})}}),E.extend({prop:function(e,t,n){var o,r,i=e.nodeType;if(3!==i&&8!==i&&2!==i)return 1===i&&E.isXMLDoc(e)||(t=E.propFix[t]||t,r=E.propHooks[t]),void 0!==n?r&&\"set\"in r&&void 0!==(o=r.set(e,n,t))?o:e[t]=n:r&&\"get\"in r&&null!==(o=r.get(e,t))?o:e[t]},propHooks:{tabIndex:{get:function(e){var t=E.find.attr(e,\"tabindex\");return t?parseInt(t,10):ft.test(e.nodeName)||ht.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:\"htmlFor\",class:\"className\"}}),m.optSelected||(E.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)}}),E.each([\"tabIndex\",\"readOnly\",\"maxLength\",\"cellSpacing\",\"cellPadding\",\"rowSpan\",\"colSpan\",\"useMap\",\"frameBorder\",\"contentEditable\"],function(){E.propFix[this.toLowerCase()]=this}),E.fn.extend({addClass:function(t){var e,n,o,r,i,l,s,a=0;if(E.isFunction(t))return this.each(function(e){E(this).addClass(t.call(this,e,mt(this)))});if(\"string\"==typeof t&&t)for(e=t.match(F)||[];n=this[a++];)if(r=mt(n),o=1===n.nodeType&&\" \"+gt(r)+\" \"){for(l=0;i=e[l++];)o.indexOf(\" \"+i+\" \")<0&&(o+=i+\" \");s=gt(o),r!==s&&n.setAttribute(\"class\",s)}return this},removeClass:function(t){var e,n,o,r,i,l,s,a=0;if(E.isFunction(t))return this.each(function(e){E(this).removeClass(t.call(this,e,mt(this)))});if(!arguments.length)return this.attr(\"class\",\"\");if(\"string\"==typeof t&&t)for(e=t.match(F)||[];n=this[a++];)if(r=mt(n),o=1===n.nodeType&&\" \"+gt(r)+\" \"){for(l=0;i=e[l++];)for(;-1<o.indexOf(\" \"+i+\" \");)o=o.replace(\" \"+i+\" \",\" \");s=gt(o),r!==s&&n.setAttribute(\"class\",s)}return this},toggleClass:function(r,t){var i=typeof r;return\"boolean\"==typeof t&&\"string\"===i?t?this.addClass(r):this.removeClass(r):E.isFunction(r)?this.each(function(e){E(this).toggleClass(r.call(this,e,mt(this),t),t)}):this.each(function(){var e,t,n,o;if(\"string\"===i)for(t=0,n=E(this),o=r.match(F)||[];e=o[t++];)n.hasClass(e)?n.removeClass(e):n.addClass(e);else void 0!==r&&\"boolean\"!==i||((e=mt(this))&&X.set(this,\"__className__\",e),this.setAttribute&&this.setAttribute(\"class\",e||!1===r?\"\":X.get(this,\"__className__\")||\"\"))})},hasClass:function(e){var t,n,o=0;for(t=\" \"+e+\" \";n=this[o++];)if(1===n.nodeType&&-1<(\" \"+gt(mt(n))+\" \").indexOf(t))return!0;return!1}});var vt=/\\r/g;E.fn.extend({val:function(n){var o,e,r,t=this[0];return arguments.length?(r=E.isFunction(n),this.each(function(e){var t;1===this.nodeType&&(null==(t=r?n.call(this,e,E(this).val()):n)?t=\"\":\"number\"==typeof t?t+=\"\":Array.isArray(t)&&(t=E.map(t,function(e){return null==e?\"\":e+\"\"})),(o=E.valHooks[this.type]||E.valHooks[this.nodeName.toLowerCase()])&&\"set\"in o&&void 0!==o.set(this,t,\"value\")||(this.value=t))})):t?(o=E.valHooks[t.type]||E.valHooks[t.nodeName.toLowerCase()])&&\"get\"in o&&void 0!==(e=o.get(t,\"value\"))?e:\"string\"==typeof(e=t.value)?e.replace(vt,\"\"):null==e?\"\":e:void 0}}),E.extend({valHooks:{option:{get:function(e){var t=E.find.attr(e,\"value\");return null!=t?t:gt(E.text(e))}},select:{get:function(e){var t,n,o,r=e.options,i=e.selectedIndex,l=\"select-one\"===e.type,s=l?null:[],a=l?i+1:r.length;for(o=i<0?a:l?i:0;o<a;o++)if(((n=r[o]).selected||o===i)&&!n.disabled&&(!n.parentNode.disabled||!k(n.parentNode,\"optgroup\"))){if(t=E(n).val(),l)return t;s.push(t)}return s},set:function(e,t){for(var n,o,r=e.options,i=E.makeArray(t),l=r.length;l--;)((o=r[l]).selected=-1<E.inArray(E.valHooks.option.get(o),i))&&(n=!0);return n||(e.selectedIndex=-1),i}}}}),E.each([\"radio\",\"checkbox\"],function(){E.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=-1<E.inArray(E(e).val(),t)}},m.checkOn||(E.valHooks[this].get=function(e){return null===e.getAttribute(\"value\")?\"on\":e.value})});var wt=/^(?:focusinfocus|focusoutblur)$/;E.extend(E.event,{trigger:function(e,t,n,o){var r,i,l,s,a,c,u,d=[n||S],p=h.call(e,\"type\")?e.type:e,f=h.call(e,\"namespace\")?e.namespace.split(\".\"):[];if(i=l=n=n||S,3!==n.nodeType&&8!==n.nodeType&&!wt.test(p+E.event.triggered)&&(-1<p.indexOf(\".\")&&(p=(f=p.split(\".\")).shift(),f.sort()),a=p.indexOf(\":\")<0&&\"on\"+p,(e=e[E.expando]?e:new E.Event(p,\"object\"==typeof e&&e)).isTrigger=o?2:3,e.namespace=f.join(\".\"),e.rnamespace=e.namespace?new RegExp(\"(^|\\\\.)\"+f.join(\"\\\\.(?:.*\\\\.|)\")+\"(\\\\.|$)\"):null,e.result=void 0,e.target||(e.target=n),t=null==t?[e]:E.makeArray(t,[e]),u=E.event.special[p]||{},o||!u.trigger||!1!==u.trigger.apply(n,t))){if(!o&&!u.noBubble&&!E.isWindow(n)){for(s=u.delegateType||p,wt.test(s+p)||(i=i.parentNode);i;i=i.parentNode)d.push(i),l=i;l===(n.ownerDocument||S)&&d.push(l.defaultView||l.parentWindow||R)}for(r=0;(i=d[r++])&&!e.isPropagationStopped();)e.type=1<r?s:u.bindType||p,(c=(X.get(i,\"events\")||{})[e.type]&&X.get(i,\"handle\"))&&c.apply(i,t),(c=a&&i[a])&&c.apply&&O(i)&&(e.result=c.apply(i,t),!1===e.result&&e.preventDefault());return e.type=p,o||e.isDefaultPrevented()||u._default&&!1!==u._default.apply(d.pop(),t)||!O(n)||a&&E.isFunction(n[p])&&!E.isWindow(n)&&((l=n[a])&&(n[a]=null),E.event.triggered=p,n[p](),E.event.triggered=void 0,l&&(n[a]=l)),e.result}},simulate:function(e,t,n){var o=E.extend(new E.Event,n,{type:e,isSimulated:!0});E.event.trigger(o,null,t)}}),E.fn.extend({trigger:function(e,t){return this.each(function(){E.event.trigger(e,t,this)})},triggerHandler:function(e,t){var n=this[0];if(n)return E.event.trigger(e,t,n,!0)}}),E.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,n){E.fn[n]=function(e,t){return 0<arguments.length?this.on(n,null,e,t):this.trigger(n)}}),E.fn.extend({hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),m.focusin=\"onfocusin\"in R,m.focusin||E.each({focus:\"focusin\",blur:\"focusout\"},function(n,o){var r=function(e){E.event.simulate(o,e.target,E.event.fix(e))};E.event.special[o]={setup:function(){var e=this.ownerDocument||this,t=X.access(e,o);t||e.addEventListener(n,r,!0),X.access(e,o,(t||0)+1)},teardown:function(){var e=this.ownerDocument||this,t=X.access(e,o)-1;t?X.access(e,o,t):(e.removeEventListener(n,r,!0),X.remove(e,o))}}});var yt=R.location,Ct=E.now(),bt=/\\?/;E.parseXML=function(e){var t;if(!e||\"string\"!=typeof e)return null;try{t=(new R.DOMParser).parseFromString(e,\"text/xml\")}catch(e){t=void 0}return t&&!t.getElementsByTagName(\"parsererror\").length||E.error(\"Invalid XML: \"+e),t};var xt=/\\[\\]$/,Rt=/\\r?\\n/g,St=/^(?:submit|button|image|reset|file)$/i,Et=/^(?:input|select|textarea|keygen)/i;function kt(n,e,o,r){var t;if(Array.isArray(e))E.each(e,function(e,t){o||xt.test(n)?r(n,t):kt(n+\"[\"+(\"object\"==typeof t&&null!=t?e:\"\")+\"]\",t,o,r)});else if(o||\"object\"!==E.type(e))r(n,e);else for(t in e)kt(n+\"[\"+t+\"]\",e[t],o,r)}E.param=function(e,t){var n,o=[],r=function(e,t){var n=E.isFunction(t)?t():t;o[o.length]=encodeURIComponent(e)+\"=\"+encodeURIComponent(null==n?\"\":n)};if(Array.isArray(e)||e.jquery&&!E.isPlainObject(e))E.each(e,function(){r(this.name,this.value)});else for(n in e)kt(n,e[n],t,r);return o.join(\"&\")},E.fn.extend({serialize:function(){return E.param(this.serializeArray())},serializeArray:function(){return this.map(function(){var e=E.prop(this,\"elements\");return e?E.makeArray(e):this}).filter(function(){var e=this.type;return this.name&&!E(this).is(\":disabled\")&&Et.test(this.nodeName)&&!St.test(e)&&(this.checked||!le.test(e))}).map(function(e,t){var n=E(this).val();return null==n?null:Array.isArray(n)?E.map(n,function(e){return{name:t.name,value:e.replace(Rt,\"\\r\\n\")}}):{name:t.name,value:n.replace(Rt,\"\\r\\n\")}}).get()}});var Tt=/%20/g,Pt=/#.*$/,Dt=/([?&])_=[^&]*/,At=/^(.*?):[ \\t]*([^\\r\\n]*)$/gm,Nt=/^(?:GET|HEAD)$/,$t=/^\\/\\//,Ht={},Lt={},_t=\"*/\".concat(\"*\"),Ft=S.createElement(\"a\");function It(i){return function(e,t){\"string\"!=typeof e&&(t=e,e=\"*\");var n,o=0,r=e.toLowerCase().match(F)||[];if(E.isFunction(t))for(;n=r[o++];)\"+\"===n[0]?(n=n.slice(1)||\"*\",(i[n]=i[n]||[]).unshift(t)):(i[n]=i[n]||[]).push(t)}}function Mt(t,r,i,l){var s={},a=t===Lt;function c(e){var o;return s[e]=!0,E.each(t[e]||[],function(e,t){var n=t(r,i,l);return\"string\"!=typeof n||a||s[n]?a?!(o=n):void 0:(r.dataTypes.unshift(n),c(n),!1)}),o}return c(r.dataTypes[0])||!s[\"*\"]&&c(\"*\")}function Wt(e,t){var n,o,r=E.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((r[n]?e:o||(o={}))[n]=t[n]);return o&&E.extend(!0,e,o),e}Ft.href=yt.href,E.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:yt.href,type:\"GET\",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(yt.protocol),global:!0,processData:!0,async:!0,contentType:\"application/x-www-form-urlencoded; charset=UTF-8\",accepts:{\"*\":_t,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\":E.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Wt(Wt(e,E.ajaxSettings),t):Wt(E.ajaxSettings,e)},ajaxPrefilter:It(Ht),ajaxTransport:It(Lt),ajax:function(e,t){\"object\"==typeof e&&(t=e,e=void 0),t=t||{};var u,d,p,n,f,o,h,g,r,i,m=E.ajaxSetup({},t),v=m.context||m,w=m.context&&(v.nodeType||v.jquery)?E(v):E.event,y=E.Deferred(),C=E.Callbacks(\"once memory\"),b=m.statusCode||{},l={},s={},a=\"canceled\",x={readyState:0,getResponseHeader:function(e){var t;if(h){if(!n)for(n={};t=At.exec(p);)n[t[1].toLowerCase()]=t[2];t=n[e.toLowerCase()]}return null==t?null:t},getAllResponseHeaders:function(){return h?p:null},setRequestHeader:function(e,t){return null==h&&(e=s[e.toLowerCase()]=s[e.toLowerCase()]||e,l[e]=t),this},overrideMimeType:function(e){return null==h&&(m.mimeType=e),this},statusCode:function(e){var t;if(e)if(h)x.always(e[x.status]);else for(t in e)b[t]=[b[t],e[t]];return this},abort:function(e){var t=e||a;return u&&u.abort(t),c(0,t),this}};if(y.promise(x),m.url=((e||m.url||yt.href)+\"\").replace($t,yt.protocol+\"//\"),m.type=t.method||t.type||m.method||m.type,m.dataTypes=(m.dataType||\"*\").toLowerCase().match(F)||[\"\"],null==m.crossDomain){o=S.createElement(\"a\");try{o.href=m.url,o.href=o.href,m.crossDomain=Ft.protocol+\"//\"+Ft.host!=o.protocol+\"//\"+o.host}catch(e){m.crossDomain=!0}}if(m.data&&m.processData&&\"string\"!=typeof m.data&&(m.data=E.param(m.data,m.traditional)),Mt(Ht,m,t,x),h)return x;for(r in(g=E.event&&m.global)&&0==E.active++&&E.event.trigger(\"ajaxStart\"),m.type=m.type.toUpperCase(),m.hasContent=!Nt.test(m.type),d=m.url.replace(Pt,\"\"),m.hasContent?m.data&&m.processData&&0===(m.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&(m.data=m.data.replace(Tt,\"+\")):(i=m.url.slice(d.length),m.data&&(d+=(bt.test(d)?\"&\":\"?\")+m.data,delete m.data),!1===m.cache&&(d=d.replace(Dt,\"$1\"),i=(bt.test(d)?\"&\":\"?\")+\"_=\"+Ct+++i),m.url=d+i),m.ifModified&&(E.lastModified[d]&&x.setRequestHeader(\"If-Modified-Since\",E.lastModified[d]),E.etag[d]&&x.setRequestHeader(\"If-None-Match\",E.etag[d])),(m.data&&m.hasContent&&!1!==m.contentType||t.contentType)&&x.setRequestHeader(\"Content-Type\",m.contentType),x.setRequestHeader(\"Accept\",m.dataTypes[0]&&m.accepts[m.dataTypes[0]]?m.accepts[m.dataTypes[0]]+(\"*\"!==m.dataTypes[0]?\", \"+_t+\"; q=0.01\":\"\"):m.accepts[\"*\"]),m.headers)x.setRequestHeader(r,m.headers[r]);if(m.beforeSend&&(!1===m.beforeSend.call(v,x,m)||h))return x.abort();if(a=\"abort\",C.add(m.complete),x.done(m.success),x.fail(m.error),u=Mt(Lt,m,t,x)){if(x.readyState=1,g&&w.trigger(\"ajaxSend\",[x,m]),h)return x;m.async&&0<m.timeout&&(f=R.setTimeout(function(){x.abort(\"timeout\")},m.timeout));try{h=!1,u.send(l,c)}catch(e){if(h)throw e;c(-1,e)}}else c(-1,\"No Transport\");function c(e,t,n,o){var r,i,l,s,a,c=t;h||(h=!0,f&&R.clearTimeout(f),u=void 0,p=o||\"\",x.readyState=0<e?4:0,r=200<=e&&e<300||304===e,n&&(s=function(e,t,n){var o,r,i,l,s=e.contents,a=e.dataTypes;for(;\"*\"===a[0];)a.shift(),void 0===o&&(o=e.mimeType||t.getResponseHeader(\"Content-Type\"));if(o)for(r in s)if(s[r]&&s[r].test(o)){a.unshift(r);break}if(a[0]in n)i=a[0];else{for(r in n){if(!a[0]||e.converters[r+\" \"+a[0]]){i=r;break}l||(l=r)}i=i||l}if(i)return i!==a[0]&&a.unshift(i),n[i]}(m,x,n)),s=function(e,t,n,o){var r,i,l,s,a,c={},u=e.dataTypes.slice();if(u[1])for(l in e.converters)c[l.toLowerCase()]=e.converters[l];i=u.shift();for(;i;)if(e.responseFields[i]&&(n[e.responseFields[i]]=t),!a&&o&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),a=i,i=u.shift())if(\"*\"===i)i=a;else if(\"*\"!==a&&a!==i){if(!(l=c[a+\" \"+i]||c[\"* \"+i]))for(r in c)if((s=r.split(\" \"))[1]===i&&(l=c[a+\" \"+s[0]]||c[\"* \"+s[0]])){!0===l?l=c[r]:!0!==c[r]&&(i=s[0],u.unshift(s[1]));break}if(!0!==l)if(l&&e.throws)t=l(t);else try{t=l(t)}catch(e){return{state:\"parsererror\",error:l?e:\"No conversion from \"+a+\" to \"+i}}}return{state:\"success\",data:t}}(m,s,x,r),r?(m.ifModified&&((a=x.getResponseHeader(\"Last-Modified\"))&&(E.lastModified[d]=a),(a=x.getResponseHeader(\"etag\"))&&(E.etag[d]=a)),204===e||\"HEAD\"===m.type?c=\"nocontent\":304===e?c=\"notmodified\":(c=s.state,i=s.data,l=s.error,r=!l)):(l=c,!e&&c||(c=\"error\",e<0&&(e=0))),x.status=e,x.statusText=(t||c)+\"\",r?y.resolveWith(v,[i,c,x]):y.rejectWith(v,[x,c,l]),x.statusCode(b),b=void 0,g&&w.trigger(r?\"ajaxSuccess\":\"ajaxError\",[x,m,r?i:l]),C.fireWith(v,[x,c]),g&&(w.trigger(\"ajaxComplete\",[x,m]),--E.active||E.event.trigger(\"ajaxStop\")))}return x},getJSON:function(e,t,n){return E.get(e,t,n,\"json\")},getScript:function(e,t){return E.get(e,void 0,t,\"script\")}}),E.each([\"get\",\"post\"],function(e,r){E[r]=function(e,t,n,o){return E.isFunction(t)&&(o=o||n,n=t,t=void 0),E.ajax(E.extend({url:e,type:r,dataType:o,data:t,success:n},E.isPlainObject(e)&&e))}}),E._evalUrl=function(e){return E.ajax({url:e,type:\"GET\",dataType:\"script\",cache:!0,async:!1,global:!1,throws:!0})},E.fn.extend({wrapAll:function(e){var t;return this[0]&&(E.isFunction(e)&&(e=e.call(this[0])),t=E(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(n){return E.isFunction(n)?this.each(function(e){E(this).wrapInner(n.call(this,e))}):this.each(function(){var e=E(this),t=e.contents();t.length?t.wrapAll(n):e.append(n)})},wrap:function(t){var n=E.isFunction(t);return this.each(function(e){E(this).wrapAll(n?t.call(this,e):t)})},unwrap:function(e){return this.parent(e).not(\"body\").each(function(){E(this).replaceWith(this.childNodes)}),this}}),E.expr.pseudos.hidden=function(e){return!E.expr.pseudos.visible(e)},E.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},E.ajaxSettings.xhr=function(){try{return new R.XMLHttpRequest}catch(e){}};var jt={0:200,1223:204},Vt=E.ajaxSettings.xhr();m.cors=!!Vt&&\"withCredentials\"in Vt,m.ajax=Vt=!!Vt,E.ajaxTransport(function(r){var i,l;if(m.cors||Vt&&!r.crossDomain)return{send:function(e,t){var n,o=r.xhr();if(o.open(r.type,r.url,r.async,r.username,r.password),r.xhrFields)for(n in r.xhrFields)o[n]=r.xhrFields[n];for(n in r.mimeType&&o.overrideMimeType&&o.overrideMimeType(r.mimeType),r.crossDomain||e[\"X-Requested-With\"]||(e[\"X-Requested-With\"]=\"XMLHttpRequest\"),e)o.setRequestHeader(n,e[n]);i=function(e){return function(){i&&(i=l=o.onload=o.onerror=o.onabort=o.onreadystatechange=null,\"abort\"===e?o.abort():\"error\"===e?\"number\"!=typeof o.status?t(0,\"error\"):t(o.status,o.statusText):t(jt[o.status]||o.status,o.statusText,\"text\"!==(o.responseType||\"text\")||\"string\"!=typeof o.responseText?{binary:o.response}:{text:o.responseText},o.getAllResponseHeaders()))}},o.onload=i(),l=o.onerror=i(\"error\"),void 0!==o.onabort?o.onabort=l:o.onreadystatechange=function(){4===o.readyState&&R.setTimeout(function(){i&&l()})},i=i(\"abort\");try{o.send(r.hasContent&&r.data||null)}catch(e){if(i)throw e}},abort:function(){i&&i()}}}),E.ajaxPrefilter(function(e){e.crossDomain&&(e.contents.script=!1)}),E.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 E.globalEval(e),e}}}),E.ajaxPrefilter(\"script\",function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type=\"GET\")}),E.ajaxTransport(\"script\",function(n){var o,r;if(n.crossDomain)return{send:function(e,t){o=E(\"<script>\").prop({charset:n.scriptCharset,src:n.url}).on(\"load error\",r=function(e){o.remove(),r=null,e&&t(\"error\"===e.type?404:200,e.type)}),S.head.appendChild(o[0])},abort:function(){r&&r()}}});var Bt,qt=[],Ot=/(=)\\?(?=&|$)|\\?\\?/;E.ajaxSetup({jsonp:\"callback\",jsonpCallback:function(){var e=qt.pop()||E.expando+\"_\"+Ct++;return this[e]=!0,e}}),E.ajaxPrefilter(\"json jsonp\",function(e,t,n){var o,r,i,l=!1!==e.jsonp&&(Ot.test(e.url)?\"url\":\"string\"==typeof e.data&&0===(e.contentType||\"\").indexOf(\"application/x-www-form-urlencoded\")&&Ot.test(e.data)&&\"data\");if(l||\"jsonp\"===e.dataTypes[0])return o=e.jsonpCallback=E.isFunction(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,l?e[l]=e[l].replace(Ot,\"$1\"+o):!1!==e.jsonp&&(e.url+=(bt.test(e.url)?\"&\":\"?\")+e.jsonp+\"=\"+o),e.converters[\"script json\"]=function(){return i||E.error(o+\" was not called\"),i[0]},e.dataTypes[0]=\"json\",r=R[o],R[o]=function(){i=arguments},n.always(function(){void 0===r?E(R).removeProp(o):R[o]=r,e[o]&&(e.jsonpCallback=t.jsonpCallback,qt.push(o)),i&&E.isFunction(r)&&r(i[0]),i=r=void 0}),\"script\"}),m.createHTMLDocument=((Bt=S.implementation.createHTMLDocument(\"\").body).innerHTML=\"<form></form><form></form>\",2===Bt.childNodes.length),E.parseHTML=function(e,t,n){return\"string\"!=typeof e?[]:(\"boolean\"==typeof t&&(n=t,t=!1),t||(m.createHTMLDocument?(t=S.implementation.createHTMLDocument(\"\"),(o=t.createElement(\"base\")).href=S.location.href,t.head.appendChild(o)):t=S),r=T.exec(e),i=!n&&[],r?[t.createElement(r[1])]:(r=me([e],t,i),i&&i.length&&E(i).remove(),E.merge([],r.childNodes)));var o,r,i},E.fn.load=function(e,t,n){var o,r,i,l=this,s=e.indexOf(\" \");return-1<s&&(o=gt(e.slice(s)),e=e.slice(0,s)),E.isFunction(t)?(n=t,t=void 0):t&&\"object\"==typeof t&&(r=\"POST\"),0<l.length&&E.ajax({url:e,type:r||\"GET\",dataType:\"html\",data:t}).done(function(e){i=arguments,l.html(o?E(\"<div>\").append(E.parseHTML(e)).find(o):e)}).always(n&&function(e,t){l.each(function(){n.apply(this,i||[e.responseText,t,e])})}),this},E.each([\"ajaxStart\",\"ajaxStop\",\"ajaxComplete\",\"ajaxError\",\"ajaxSuccess\",\"ajaxSend\"],function(e,t){E.fn[t]=function(e){return this.on(t,e)}}),E.expr.pseudos.animated=function(t){return E.grep(E.timers,function(e){return t===e.elem}).length},E.offset={setOffset:function(e,t,n){var o,r,i,l,s,a,c=E.css(e,\"position\"),u=E(e),d={};\"static\"===c&&(e.style.position=\"relative\"),s=u.offset(),i=E.css(e,\"top\"),a=E.css(e,\"left\"),(\"absolute\"===c||\"fixed\"===c)&&-1<(i+a).indexOf(\"auto\")?(o=u.position(),l=o.top,r=o.left):(l=parseFloat(i)||0,r=parseFloat(a)||0),E.isFunction(t)&&(t=t.call(e,n,E.extend({},s))),null!=t.top&&(d.top=t.top-s.top+l),null!=t.left&&(d.left=t.left-s.left+r),\"using\"in t?t.using.call(e,d):u.css(d)}},E.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){E.offset.setOffset(this,t,e)});var e,n,o,r,i=this[0];return i?i.getClientRects().length?(o=i.getBoundingClientRect(),e=i.ownerDocument,n=e.documentElement,r=e.defaultView,{top:o.top+r.pageYOffset-n.clientTop,left:o.left+r.pageXOffset-n.clientLeft}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n=this[0],o={top:0,left:0};return\"fixed\"===E.css(n,\"position\")?t=n.getBoundingClientRect():(e=this.offsetParent(),t=this.offset(),k(e[0],\"html\")||(o=e.offset()),o={top:o.top+E.css(e[0],\"borderTopWidth\",!0),left:o.left+E.css(e[0],\"borderLeftWidth\",!0)}),{top:t.top-o.top-E.css(n,\"marginTop\",!0),left:t.left-o.left-E.css(n,\"marginLeft\",!0)}}},offsetParent:function(){return this.map(function(){for(var e=this.offsetParent;e&&\"static\"===E.css(e,\"position\");)e=e.offsetParent;return e||ve})}}),E.each({scrollLeft:\"pageXOffset\",scrollTop:\"pageYOffset\"},function(t,r){var i=\"pageYOffset\"===r;E.fn[t]=function(e){return q(this,function(e,t,n){var o;if(E.isWindow(e)?o=e:9===e.nodeType&&(o=e.defaultView),void 0===n)return o?o[r]:e[t];o?o.scrollTo(i?o.pageXOffset:n,i?n:o.pageYOffset):e[t]=n},t,e,arguments.length)}}),E.each([\"top\",\"left\"],function(e,n){E.cssHooks[n]=Ve(m.pixelPosition,function(e,t){if(t)return t=je(e,n),Me.test(t)?E(e).position()[n]+\"px\":t})}),E.each({Height:\"height\",Width:\"width\"},function(l,s){E.each({padding:\"inner\"+l,content:s,\"\":\"outer\"+l},function(o,i){E.fn[i]=function(e,t){var n=arguments.length&&(o||\"boolean\"!=typeof e),r=o||(!0===e||!0===t?\"margin\":\"border\");return q(this,function(e,t,n){var o;return E.isWindow(e)?0===i.indexOf(\"outer\")?e[\"inner\"+l]:e.document.documentElement[\"client\"+l]:9===e.nodeType?(o=e.documentElement,Math.max(e.body[\"scroll\"+l],o[\"scroll\"+l],e.body[\"offset\"+l],o[\"offset\"+l],o[\"client\"+l])):void 0===n?E.css(e,t,r):E.style(e,t,n,r)},s,n?e:void 0,n)}})}),E.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,o){return this.on(t,e,n,o)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,\"**\"):this.off(t,e||\"**\",n)}}),E.holdReady=function(e){e?E.readyWait++:E.ready(!0)},E.isArray=Array.isArray,E.parseJSON=JSON.parse,E.nodeName=k,\"function\"==typeof define&&define.amd&&define(\"jquery\",[],function(){return E});var zt=R.jQuery,Xt=R.$;return E.noConflict=function(e){return R.$===E&&(R.$=Xt),e&&R.jQuery===E&&(R.jQuery=zt),E},e||(R.jQuery=R.$=E),E})},442:function(e,t,n){\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 f=e(448);f.fn.drag=function(e,t,n){var o=\"string\"==typeof e?e:\"\",r=f.isFunction(e)?e:f.isFunction(t)?t:null;return 0!==o.indexOf(\"drag\")&&(o=\"drag\"+o),n=(e==r?t:n)||{},r?this.on(o,n,r):this.trigger(o)};var h=f.event,o=h.special,g=o.drag={defaults:{which:1,distance:0,not:\":input\",handle:null,relative:!1,drop:!0,click:!1},datakey:\"dragdata\",noBubble:!0,add:function(e){var n=f.data(this,g.datakey),o=e.data||{};n.related+=1,f.each(g.defaults,function(e,t){void 0!==o[e]&&(n[e]=o[e])})},remove:function(){f.data(this,g.datakey).related-=1},setup:function(){if(!f.data(this,g.datakey)){var e=f.extend({related:0},g.defaults);f.data(this,g.datakey,e),h.add(this,\"touchstart mousedown\",g.init,e),this.attachEvent&&this.attachEvent(\"ondragstart\",g.dontstart)}},teardown:function(){var e=f.data(this,g.datakey)||{};e.related||(f.removeData(this,g.datakey),h.remove(this,\"touchstart mousedown\",g.init),g.textselect(!0),this.detachEvent&&this.detachEvent(\"ondragstart\",g.dontstart))},init:function(e){if(!g.touched){var t,n=e.data;if(!(0!=e.which&&0<n.which&&e.which!=n.which)&&!f(e.target).is(n.not)&&(!n.handle||f(e.target).closest(n.handle,e.currentTarget).length)&&(g.touched=\"touchstart\"==e.type?this:null,n.propagates=1,n.mousedown=this,n.interactions=[g.interaction(this,n)],n.target=e.target,n.pageX=e.pageX,n.pageY=e.pageY,n.dragging=null,t=g.hijack(e,\"draginit\",n),n.propagates))return(t=g.flatten(t))&&t.length&&(n.interactions=[],f.each(t,function(){n.interactions.push(g.interaction(this,n))})),n.propagates=n.interactions.length,!1!==n.drop&&o.drop&&o.drop.handler(e,n),g.textselect(!1),g.touched?h.add(g.touched,\"touchmove touchend\",g.handler,n):h.add(document,\"mousemove mouseup\",g.handler,n),!(!g.touched||n.live)&&void 0}},interaction:function(e,t){var n=e&&e.ownerDocument&&f(e)[t.relative?\"position\":\"offset\"]()||{top:0,left:0};return{drag:e,callback:new g.callback,droppable:[],offset:n}},handler:function(e){var t=e.data;switch(e.type){case!t.dragging&&\"touchmove\":e.preventDefault();case!t.dragging&&\"mousemove\":if(Math.pow(e.pageX-t.pageX,2)+Math.pow(e.pageY-t.pageY,2)<Math.pow(t.distance,2))break;e.target=t.target,g.hijack(e,\"dragstart\",t),t.propagates&&(t.dragging=!0);case\"touchmove\":e.preventDefault();case\"mousemove\":if(t.dragging){if(g.hijack(e,\"drag\",t),t.propagates){!1!==t.drop&&o.drop&&o.drop.handler(e,t);break}e.type=\"mouseup\"}case\"touchend\":case\"mouseup\":default:g.touched?h.remove(g.touched,\"touchmove touchend\",g.handler):h.remove(document,\"mousemove mouseup\",g.handler),t.dragging&&(!1!==t.drop&&o.drop&&o.drop.handler(e,t),g.hijack(e,\"dragend\",t)),g.textselect(!0),!1===t.click&&t.dragging&&f.data(t.mousedown,\"suppress.click\",(new Date).getTime()+5),t.dragging=g.touched=!1}},hijack:function(n,o,r,e,t){if(r){var i,l,s,a={event:n.originalEvent,type:n.type},c=o.indexOf(\"drop\")?\"drag\":\"drop\",u=e||0,d=isNaN(e)?r.interactions.length:e;n.type=o;var p=function(){};n.originalEvent=new f.Event(a.event,{preventDefault:p,stopPropagation:p,stopImmediatePropagation:p}),r.results=[];do{if(l=r.interactions[u]){if(\"dragend\"!==o&&l.cancelled)continue;s=g.properties(n,r,l),l.results=[],f(t||l[c]||r.droppable).each(function(e,t){if(s.target=t,!(n.isPropagationStopped=function(){return!1})===(i=t?h.dispatch.call(t,n,s):null)?(\"drag\"==c&&(l.cancelled=!0,r.propagates-=1),\"drop\"==o&&(l[c][e]=null)):\"dropinit\"==o&&l.droppable.push(g.element(i)||t),\"dragstart\"==o&&(l.proxy=f(g.element(i)||l.drag)[0]),l.results.push(i),delete n.result,\"dropinit\"!==o)return i}),r.results[u]=g.flatten(l.results),\"dropinit\"==o&&(l.droppable=g.flatten(l.droppable)),\"dragstart\"!=o||l.cancelled||s.update()}}while(++u<d);return n.type=a.type,n.originalEvent=a.event,g.flatten(r.results)}},properties:function(e,t,n){var o=n.callback;return o.drag=n.drag,o.proxy=n.proxy||n.drag,o.startX=t.pageX,o.startY=t.pageY,o.deltaX=e.pageX-t.pageX,o.deltaY=e.pageY-t.pageY,o.originalX=n.offset.left,o.originalY=n.offset.top,o.offsetX=o.originalX+o.deltaX,o.offsetY=o.originalY+o.deltaY,o.drop=g.flatten((n.drop||[]).slice()),o.available=g.flatten((n.droppable||[]).slice()),o},element:function(e){if(e&&(e.jquery||1==e.nodeType))return e},flatten:function(e){return f.map(e,function(e){return e&&e.jquery?f.makeArray(e):e&&e.length?g.flatten(e):e})},textselect:function(e){f(document)[e?\"off\":\"on\"](\"selectstart\",g.dontstart).css(\"MozUserSelect\",e?\"\":\"none\"),document.unselectable=e?\"off\":\"on\"},dontstart:function(){return!1},callback:function(){}};g.callback.prototype={update:function(){o.drop&&this.available.length&&f.each(this.available,function(e){o.drop.locate(this,e)})}};var r=h.dispatch;h.dispatch=function(e){if(!(0<f.data(this,\"suppress.\"+e.type)-(new Date).getTime()))return r.apply(this,arguments);f.removeData(this,\"suppress.\"+e.type)},o.draginit=o.dragstart=o.dragend=g},443:function(e,t,n){\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 f=e(448);f.fn.drop=function(e,t,n){var o=\"string\"==typeof e?e:\"\",r=f.isFunction(e)?e:f.isFunction(t)?t:null;return 0!==o.indexOf(\"drop\")&&(o=\"drop\"+o),n=(e==r?t:n)||{},r?this.on(o,n,r):this.trigger(o)},f.drop=function(e){e=e||{},g.multi=!0===e.multi?1/0:!1===e.multi?1:isNaN(e.multi)?g.multi:e.multi,g.delay=e.delay||g.delay,g.tolerance=f.isFunction(e.tolerance)?e.tolerance:null===e.tolerance?null:g.tolerance,g.mode=e.mode||g.mode||\"intersect\"};var o=f.event,h=o.special,g=f.event.special.drop={multi:1,delay:20,mode:\"overlap\",targets:[],datakey:\"dropdata\",noBubble:!0,add:function(e){var t=f.data(this,g.datakey);t.related+=1},remove:function(){f.data(this,g.datakey).related-=1},setup:function(){if(!f.data(this,g.datakey)){f.data(this,g.datakey,{related:0,active:[],anyactive:0,winner:0,location:{}}),g.targets.push(this)}},teardown:function(){var e=f.data(this,g.datakey)||{};if(!e.related){f.removeData(this,g.datakey);var t=this;g.targets=f.grep(g.targets,function(e){return e!==t})}},handler:function(e,t){var n;if(t)switch(e.type){case\"mousedown\":case\"touchstart\":n=f(g.targets),\"string\"==typeof t.drop&&(n=n.filter(t.drop)),n.each(function(){var e=f.data(this,g.datakey);e.active=[],e.anyactive=0,e.winner=0}),t.droppable=n,h.drag.hijack(e,\"dropinit\",t);break;case\"mousemove\":case\"touchmove\":g.event=e,g.timer||g.tolerate(t);break;case\"mouseup\":case\"touchend\":g.timer=clearTimeout(g.timer),t.propagates&&(h.drag.hijack(e,\"drop\",t),h.drag.hijack(e,\"dropend\",t))}},locate:function(e,t){var n=f.data(e,g.datakey),o=f(e),r=o.offset()||{},i=o.outerHeight(),l=o.outerWidth(),s={elem:e,width:l,height:i,top:r.top,left:r.left,right:r.left+l,bottom:r.top+i};return n&&(n.location=s,n.index=t,n.elem=e),s},contains:function(e,t){return(t[0]||t.left)>=e.left&&(t[0]||t.right)<=e.right&&(t[1]||t.top)>=e.top&&(t[1]||t.bottom)<=e.bottom},modes:{intersect:function(e,t,n){return this.contains(n,[e.pageX,e.pageY])?1e9:this.modes.overlap.apply(this,arguments)},overlap:function(e,t,n){return Math.max(0,Math.min(n.bottom,t.bottom)-Math.max(n.top,t.top))*Math.max(0,Math.min(n.right,t.right)-Math.max(n.left,t.left))},fit:function(e,t,n){return this.contains(n,t)?1:0},middle:function(e,t,n){return this.contains(n,[t.left+.5*t.width,t.top+.5*t.height])?1:0}},sort:function(e,t){return t.winner-e.winner||e.index-t.index},tolerate:function(e){var t,n,o,r,i,l,s,a,c=0,u=e.interactions.length,d=[g.event.pageX,g.event.pageY],p=g.tolerance||g.modes[g.mode];do{if(a=e.interactions[c]){if(!a)return;a.drop=[],i=[],l=a.droppable.length,p&&(o=g.locate(a.proxy)),t=0;do{if(s=a.droppable[t]){if(r=f.data(s,g.datakey),!(n=r.location))continue;r.winner=p?p.call(g,g.event,o,n):g.contains(n,d)?1:0,i.push(r)}}while(++t<l);for(i.sort(g.sort),t=0;(r=i[t])&&(r.winner&&a.drop.length<g.multi?(r.active[c]||r.anyactive||(!1!==h.drag.hijack(g.event,\"dropstart\",e,c,r.elem)[0]?(r.active[c]=1,r.anyactive+=1):r.winner=0),r.winner&&a.drop.push(r.elem)):r.active[c]&&1==r.anyactive&&(h.drag.hijack(g.event,\"dropend\",e,c,r.elem),r.active[c]=0,r.anyactive-=1)),++t<l;);}}while(++c<u);g.last&&d[0]==g.last.pageX&&d[1]==g.last.pageY?delete g.timer:g.timer=setTimeout(function(){g.tolerate(e)},g.delay),g.last=g.event}};h.dropinit=h.dropstart=h.dropend=g},444:function(e,t,n){var d=e(448),p=e(446);t.exports={CheckboxSelectColumn:function(e){var l,t=new p.EventHandler,s={},a=d.extend(!0,{},{columnId:\"_checkbox_selector\",cssClass:null,toolTip:\"Select/Deselect All\",width:30},e);function n(e,t){var n,o,r=l.getSelectedRows(),i={};for(o=0;o<r.length;o++)n=r[o],i[n]=!0,i[n]!==s[n]&&(l.invalidateRow(n),delete s[n]);for(o in s)l.invalidateRow(o);s=i,l.render(),r.length&&r.length==l.getDataLength()?l.updateColumnHeader(a.columnId,\"<input type='checkbox' checked='checked'>\",a.toolTip):l.updateColumnHeader(a.columnId,\"<input type='checkbox'>\",a.toolTip)}function o(e,t){32==e.which&&l.getColumns()[t.cell].id===a.columnId&&(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit()||i(t.row),e.preventDefault(),e.stopImmediatePropagation())}function r(e,t){if(l.getColumns()[t.cell].id===a.columnId&&d(e.target).is(\":checkbox\")){if(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();i(t.row),e.stopPropagation(),e.stopImmediatePropagation()}}function i(t){s[t]?l.setSelectedRows(d.grep(l.getSelectedRows(),function(e){return e!=t})):l.setSelectedRows(l.getSelectedRows().concat(t))}function c(e,t){if(t.column.id==a.columnId&&d(e.target).is(\":checkbox\")){if(l.getEditorLock().isActive()&&!l.getEditorLock().commitCurrentEdit())return e.preventDefault(),void e.stopImmediatePropagation();if(d(e.target).is(\":checked\")){for(var n=[],o=0;o<l.getDataLength();o++)n.push(o);l.setSelectedRows(n)}else l.setSelectedRows([]);e.stopPropagation(),e.stopImmediatePropagation()}}function u(e,t,n,o,r){return r?s[e]?\"<input type='checkbox' checked='checked'>\":\"<input type='checkbox'>\":null}d.extend(this,{init:function(e){l=e,t.subscribe(l.onSelectedRowsChanged,n).subscribe(l.onClick,r).subscribe(l.onHeaderClick,c).subscribe(l.onKeyDown,o)},destroy:function(){t.unsubscribeAll()},deSelectRows:function(e){var t,n=e.length,o=[];for(t=0;t<n;t++)s[e[t]]&&(o[o.length]=e[t]);l.setSelectedRows(d.grep(l.getSelectedRows(),function(e){return o.indexOf(e)<0}))},selectRows:function(e){var t,n=e.length,o=[];for(t=0;t<n;t++)s[e[t]]||(o[o.length]=e[t]);l.setSelectedRows(l.getSelectedRows().concat(o))},getColumnDefinition:function(){return{id:a.columnId,name:\"<input type='checkbox'>\",toolTip:a.toolTip,field:\"sel\",width:a.width,resizable:!1,sortable:!1,cssClass:a.cssClass,formatter:u}}})}}},445:function(e,t,n){var v=e(448),w=e(446);t.exports={RowSelectionModel:function(t){var c,n,o,u=[],r=this,i=new w.EventHandler,l={selectActiveRow:!0};function s(e){return function(){n||(n=!0,e.apply(this,arguments),n=!1)}}function d(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 p(e){for(var t=[],n=c.getColumns().length-1,o=0;o<e.length;o++)t.push(new w.Range(e[o],0,e[o],n));return t}function a(){return d(u)}function f(e){(u&&0!==u.length||e&&0!==e.length)&&(u=e,r.onSelectedRangesChanged.notify(u))}function h(e,t){o.selectActiveRow&&null!=t.row&&f([new w.Range(t.row,0,t.row,c.getColumns().length-1)])}function g(e){var t=c.getActiveCell();if(t&&e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&(38==e.which||40==e.which)){var n=a();n.sort(function(e,t){return e-t}),n.length||(n=[t.row]);var o,r=n[0],i=n[n.length-1];if(0<=(o=40==e.which?t.row<i||r==i?++i:++r:t.row<i?--i:--r)&&o<c.getDataLength()){c.scrollRowIntoView(o);var l=p(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}(r,i));f(l)}e.preventDefault(),e.stopPropagation()}}function m(e){var n=c.getCellFromEvent(e);if(!n||!c.canCellBeActive(n.row,n.cell))return!1;if(!c.getOptions().multiSelect||!e.ctrlKey&&!e.shiftKey&&!e.metaKey)return!1;var t=d(u),o=v.inArray(n.row,t);if(-1===o&&(e.ctrlKey||e.metaKey))t.push(n.row),c.setActiveCell(n.row,n.cell);else if(-1!==o&&(e.ctrlKey||e.metaKey))t=v.grep(t,function(e,t){return e!==n.row}),c.setActiveCell(n.row,n.cell);else if(t.length&&e.shiftKey){var r=t.pop(),i=Math.min(n.row,r),l=Math.max(n.row,r);t=[];for(var s=i;s<=l;s++)s!==r&&t.push(s);t.push(r),c.setActiveCell(n.row,n.cell)}var a=p(t);return f(a),e.stopImmediatePropagation(),!0}v.extend(this,{getSelectedRows:a,setSelectedRows:function(e){f(p(e))},getSelectedRanges:function(){return u},setSelectedRanges:f,init:function(e){o=v.extend(!0,{},l,t),c=e,i.subscribe(c.onActiveCellChanged,s(h)),i.subscribe(c.onKeyDown,s(g)),i.subscribe(c.onClick,s(m))},destroy:function(){i.unsubscribeAll()},onSelectedRangesChanged:new w.Event})}}},446:function(e,t,n){function l(){var e=!1,t=!1;this.stopPropagation=function(){e=!0},this.isPropagationStopped=function(){return e},this.stopImmediatePropagation=function(){t=!0},this.isImmediatePropagationStopped=function(){return t}}function o(){this.__nonDataRow=!0}function r(){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 i(){this.__groupTotals=!0,this.group=null,this.initialized=!1}function s(){var t=null;this.isActive=function(e){return e?t===e:null!==t},this.activate=function(e){if(e!==t){if(null!==t)throw new Error(\"SlickGrid.EditorLock.activate: an editController is still active, can't activate another editController\");if(!e.commitCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .commitCurrentEdit()\");if(!e.cancelCurrentEdit)throw new Error(\"SlickGrid.EditorLock.activate: editController must implement .cancelCurrentEdit()\");t=e}},this.deactivate=function(e){if(t!==e)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()}}(r.prototype=new o).equals=function(e){return this.value===e.value&&this.count===e.count&&this.collapsed===e.collapsed&&this.title===e.title},i.prototype=new o,t.exports={Event:function(){var i=[];this.subscribe=function(e){i.push(e)},this.unsubscribe=function(e){for(var t=i.length-1;0<=t;t--)i[t]===e&&i.splice(t,1)},this.notify=function(e,t,n){var o;t=t||new l,n=n||this;for(var r=0;r<i.length&&!t.isPropagationStopped()&&!t.isImmediatePropagationStopped();r++)o=i[r].call(n,t,e);return o}},EventData:l,EventHandler:function(){var o=[];this.subscribe=function(e,t){return o.push({event:e,handler:t}),e.subscribe(t),this},this.unsubscribe=function(e,t){for(var n=o.length;n--;)if(o[n].event===e&&o[n].handler===t)return o.splice(n,1),void e.unsubscribe(t);return this},this.unsubscribeAll=function(){for(var e=o.length;e--;)o[e].event.unsubscribe(o[e].handler);return o=[],this}},Range:function(e,t,n,o){void 0===n&&void 0===o&&(n=e,o=t);this.fromRow=Math.min(e,n),this.fromCell=Math.min(t,o),this.toRow=Math.max(e,n),this.toCell=Math.max(t,o),this.isSingleRow=function(){return this.fromRow==this.toRow},this.isSingleCell=function(){return this.fromRow==this.toRow&&this.fromCell==this.toCell},this.contains=function(e,t){return e>=this.fromRow&&e<=this.toRow&&t>=this.fromCell&&t<=this.toCell},this.toString=function(){return this.isSingleCell()?\"(\"+this.fromRow+\":\"+this.fromCell+\")\":\"(\"+this.fromRow+\":\"+this.fromCell+\" - \"+this.toRow+\":\"+this.toCell+\")\"}},NonDataRow:o,Group:r,GroupTotals:i,EditorLock:s,GlobalEditorLock:new s,keyCode:{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,C:67,V:86},preClickClassName:\"slick-edit-preclick\"}},447:function _(require,module,exports){\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.3\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(448),Slick=require(446),scrollbarDimensions,maxSupportedCssHeight;function SlickGrid(container,data,columns,options){$.fn.drag||require(442),$.fn.drop||require(443);var defaults={explicitInitialization:!1,rowHeight:25,defaultColumnWidth:80,enableAddRow:!1,leaveSpaceForNewRows:!1,editable:!1,autoEdit:!0,enableCellNavigation:!0,enableColumnReorder:!0,asyncEditorLoading:!1,asyncEditorLoadDelay:100,forceFitColumns:!1,enableAsyncPostRender:!1,asyncPostRenderDelay:50,enableAsyncPostRenderCleanup:!1,asyncPostRenderCleanupDelay:40,autoHeight:!1,editorLock:Slick.GlobalEditorLock,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,fullWidthRows:!1,multiColumnSort:!1,numberedMultiColumnSort:!1,tristateMultiColumnSort:!1,defaultFormatter:defaultFormatter,forceSyncScrolling:!1,addNewRowCssClass:\"new-row\",preserveCopiedSelectionOnPaste:!1,showCellSelection:!0},columnDefaults={name:\"\",resizable:!0,sortable:!1,minWidth:30,rerenderOnResize:!1,headerCssClass:null,defaultSortAsc:!0,focusable:!0,selectable:!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,$headerScroller,$headers,$headerRow,$headerRowScroller,$headerRowSpacer,$footerRow,$footerRowScroller,$footerRowSpacer,$preHeaderPanel,$preHeaderPanelScroller,$preHeaderPanelSpacer,$topPanelScroller,$topPanel,$viewport,$canvas,$style,$boundAncestors,stylesheet,columnCssRulesL,columnCssRulesR,viewportH,viewportW,canvasWidth,viewportHasHScroll,viewportHasVScroll,headerColumnWidthDiff=0,headerColumnHeightDiff=0,cellWidthDiff=0,cellHeightDiff=0,jQueryNewWidthBehaviour=!1,absoluteColumnMinWidth,sortIndicatorCssClass=\"slick-sort-indicator\",tabbingDirection=1,activePosX,activeRow,activeCell,activeCellNode=null,currentEditor=null,serializedEditorValue,editController,rowsCache={},renderedRows=0,numVisibleRows,prevScrollTop=0,scrollTop=0,lastRenderedScrollTop=0,lastRenderedScrollLeft=0,prevScrollLeft=0,scrollLeft=0,selectionModel,selectedRows=[],plugins=[],cellCssClasses={},columnsById={},sortColumns=[],columnPosLeft=[],columnPosRight=[],pagingActive=!1,pagingIsLastPage=!1,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,cssShow={position:\"absolute\",visibility:\"hidden\",display:\"block\"},$hiddenParents,oldProps=[];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.\");cacheCssForHiddenInit(),maxSupportedCssHeight=maxSupportedCssHeight||getMaxSupportedCssHeight(),scrollbarDimensions=scrollbarDimensions||measureScrollbar(),options=$.extend({},defaults,options),validateAndEnforceOptions(),columnDefaults.width=options.defaultColumnWidth,columnsById={};for(var e=0;e<columns.length;e++){var t=columns[e]=$.extend({},columnDefaults,columns[e]);columnsById[t.id]=e,t.minWidth&&t.width<t.minWidth&&(t.width=t.minWidth),t.maxWidth&&t.width>t.maxWidth&&(t.width=t.maxWidth)}if(options.enableColumnReorder&&!$.fn.sortable)throw new Error(\"SlickGrid's 'enableColumnReorder = true' option requires jquery-ui.sortable module to be loaded\");editController={commitCurrentEdit:commitCurrentEdit,cancelCurrentEdit: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),options.createPreHeaderPanel&&($preHeaderPanelScroller=$(\"<div class='slick-preheader-panel ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$preHeaderPanel=$(\"<div />\").appendTo($preHeaderPanelScroller),$preHeaderPanelSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($preHeaderPanelScroller),options.showPreHeaderPanel||$preHeaderPanelScroller.hide()),$headerScroller=$(\"<div class='slick-header ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),($headers=$(\"<div class='slick-header-columns' style='left:-1000px' />\").appendTo($headerScroller)).width(getHeadersWidth()),$headerRowScroller=$(\"<div class='slick-headerrow ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$headerRow=$(\"<div class='slick-headerrow-columns' />\").appendTo($headerRowScroller),$headerRowSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($headerRowScroller),$topPanelScroller=$(\"<div class='slick-top-panel-scroller ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$topPanel=$(\"<div class='slick-top-panel' style='width:10000px' />\").appendTo($topPanelScroller),options.showTopPanel||$topPanelScroller.hide(),options.showHeaderRow||$headerRowScroller.hide(),($viewport=$(\"<div class='slick-viewport' style='width:100%;overflow:auto;outline:0;position:relative;;'>\").appendTo($container)).css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),$canvas=$(\"<div class='grid-canvas' />\").appendTo($viewport),options.createFooterRow&&($footerRowScroller=$(\"<div class='slick-footerrow ui-state-default' style='overflow:hidden;position:relative;' />\").appendTo($container),$footerRow=$(\"<div class='slick-footerrow-columns' />\").appendTo($footerRowScroller),$footerRowSpacer=$(\"<div style='display:block;height:1px;position:absolute;top:0;left:0;'></div>\").css(\"width\",getCanvasWidth()+scrollbarDimensions.width+\"px\").appendTo($footerRowScroller),options.showFooterRow||$footerRowScroller.hide()),options.numberedMultiColumnSort&&(sortIndicatorCssClass=\"slick-sort-indicator-numbered\"),$focusSink2=$focusSink.clone().appendTo($container),options.explicitInitialization||finishInitialization()}function finishInitialization(){initialized||(initialized=!0,viewportW=parseFloat($.css($container[0],\"width\",!0)),measureCellPaddingAndBorder(),disableSelection($headers),options.enableTextSelectionOnCells||$viewport.on(\"selectstart.ui\",function(e){return $(e.target).is(\"input,textarea\")}),updateColumnCaches(),createColumnHeaders(),setupColumnSort(),createCssRules(),resizeCanvas(),bindAncestorScrollEvents(),$container.on(\"resize.slickgrid\",resizeCanvas),$viewport.on(\"scroll\",handleScroll),$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&&$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),navigator.userAgent.toLowerCase().match(/webkit/)&&navigator.userAgent.toLowerCase().match(/macintosh/)&&$canvas.on(\"mousewheel\",handleMouseWheel),restoreCssFromHiddenInit())}function cacheCssForHiddenInit(){($hiddenParents=$container.parents().addBack().not(\":visible\")).each(function(){var e={};for(var t in cssShow)e[t]=this.style[t],this.style[t]=cssShow[t];oldProps.push(e)})}function restoreCssFromHiddenInit(){$hiddenParents.each(function(e){var t=oldProps[e];for(var n in cssShow)this.style[n]=t[n]})}function registerPlugin(e){plugins.unshift(e),e.init(self)}function unregisterPlugin(e){for(var t=plugins.length;0<=t;t--)if(plugins[t]===e){plugins[t].destroy&&plugins[t].destroy(),plugins.splice(t,1);break}}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(){return $canvas[0]}function measureScrollbar(){var e=$(\"<div style='position:absolute; top:-10000px; left:-10000px; width:100px; height:100px; overflow:scroll;'></div>\").appendTo(\"body\"),t={width:e.width()-e[0].clientWidth,height:e.height()-e[0].clientHeight};return e.remove(),t}function getColumnTotalWidth(e){for(var t=0,n=0,o=columns.length;n<o;n++){var r=columns[n].width;t+=r}return e&&(t+=scrollbarDimensions.width),t}function getHeadersWidth(){var e=getColumnTotalWidth(!0);return Math.max(e,viewportW)+1e3}function getCanvasWidth(){for(var e=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW,t=0,n=columns.length;n--;)t+=columns[n].width;return options.fullWidthRows?Math.max(t,e):t}function updateCanvasWidth(e){var t=canvasWidth;(canvasWidth=getCanvasWidth())!=t&&($canvas.width(canvasWidth),$headerRow.width(canvasWidth),options.createFooterRow&&$footerRow.width(canvasWidth),options.createPreHeaderPanel&&$preHeaderPanel.width(canvasWidth),$headers.width(getHeadersWidth()),viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width);var n=canvasWidth+(viewportHasVScroll?scrollbarDimensions.width:0);$headerRowSpacer.width(n),options.createFooterRow&&$footerRowSpacer.width(n),options.createPreHeaderPanel&&$preHeaderPanelSpacer.width(n),(canvasWidth!=t||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,t=navigator.userAgent.toLowerCase().match(/firefox/)?6e6:1e9,n=$(\"<div style='display:none' />\").appendTo(document.body);;){var o=2*e;if(n.css(\"height\",o),t<o||n.height()!==o)break;e=o}return n.remove(),e}function getUID(){return uid}function getHeaderColumnWidthDiff(){return headerColumnWidthDiff}function getScrollbarDimensions(){return scrollbarDimensions}function bindAncestorScrollEvents(){for(var e=$canvas[0];(e=e.parentNode)!=document.body&&null!=e;)if(e==$viewport[0]||e.scrollWidth!=e.clientWidth||e.scrollHeight!=e.clientHeight){var t=$(e);$boundAncestors=$boundAncestors?$boundAncestors.add(t):t,t.on(\"scroll.\"+uid,handleActiveCellPositionChange)}}function unbindAncestorScrollEvents(){$boundAncestors&&($boundAncestors.off(\"scroll.\"+uid),$boundAncestors=null)}function updateColumnHeader(e,t,n){if(initialized){var o=getColumnIndex(e);if(null!=o){var r=columns[o],i=$headers.children().eq(o);i&&(void 0!==t&&(columns[o].name=t),void 0!==n&&(columns[o].toolTip=n),trigger(self.onBeforeHeaderCellDestroy,{node:i[0],column:r,grid:self}),i.attr(\"title\",n||\"\").children().eq(0).html(t),trigger(self.onHeaderCellRendered,{node:i[0],column:r,grid:self}))}}}function getHeaderRow(){return $headerRow[0]}function getFooterRow(){return $footerRow[0]}function getPreHeaderPanel(){return $preHeaderPanel[0]}function getHeaderRowColumn(e){var t=getColumnIndex(e),n=$headerRow.children().eq(t);return n&&n[0]}function getFooterRowColumn(e){var t=getColumnIndex(e),n=$footerRow.children().eq(t);return n&&n[0]}function createColumnHeaders(){function e(){$(this).addClass(\"ui-state-hover\")}function t(){$(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})}),$headers.empty(),$headers.width(getHeadersWidth()),$headerRow.find(\".slick-headerrow-column\").each(function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeHeaderRowCellDestroy,{node:this,column:e,grid:self})}),$headerRow.empty(),options.createFooterRow&&($footerRow.find(\".slick-footerrow-column\").each(function(){var e=$(this).data(\"column\");e&&trigger(self.onBeforeFooterRowCellDestroy,{node:this,column:e})}),$footerRow.empty());for(var n=0;n<columns.length;n++){var o=columns[n],r=$(\"<div class='ui-state-default slick-header-column' />\").html(\"<span class='slick-column-name'>\"+o.name+\"</span>\").width(o.width-headerColumnWidthDiff).attr(\"id\",\"\"+uid+o.id).attr(\"title\",o.toolTip||\"\").data(\"column\",o).addClass(o.headerCssClass||\"\").appendTo($headers);if((options.enableColumnReorder||o.sortable)&&r.on(\"mouseenter\",e).on(\"mouseleave\",t),o.sortable&&(r.addClass(\"slick-header-sortable\"),r.append(\"<span class='\"+sortIndicatorCssClass+\"' />\")),trigger(self.onHeaderCellRendered,{node:r[0],column:o,grid:self}),options.showHeaderRow){var i=$(\"<div class='ui-state-default slick-headerrow-column l\"+n+\" r\"+n+\"'></div>\").data(\"column\",o).appendTo($headerRow);trigger(self.onHeaderRowCellRendered,{node:i[0],column:o,grid:self})}if(options.createFooterRow&&options.showFooterRow){var l=$(\"<div class='ui-state-default slick-footerrow-column l\"+n+\" r\"+n+\"'></div>\").data(\"column\",o).appendTo($footerRow);trigger(self.onFooterRowCellRendered,{node:l[0],column:o})}}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(e.metaKey=e.metaKey||e.ctrlKey,!$(e.target).hasClass(\"slick-resizable-handle\")){var t=$(e.target).closest(\".slick-header-column\");if(t.length){var n=t.data(\"column\");if(n.sortable){if(!getEditorLock().commitCurrentEdit())return;for(var o=null,r=0;r<sortColumns.length;r++)if(sortColumns[r].columnId==n.id){(o=sortColumns[r]).sortAsc=!o.sortAsc;break}var i=!!o;options.tristateMultiColumnSort?(o||(o={columnId:n.id,sortAsc:n.defaultSortAsc}),i&&o.sortAsc&&(sortColumns.splice(r,1),o=null),options.multiColumnSort||(sortColumns=[]),!o||i&&options.multiColumnSort||sortColumns.push(o)):e.metaKey&&options.multiColumnSort?o&&sortColumns.splice(r,1):((e.shiftKey||e.metaKey)&&options.multiColumnSort||(sortColumns=[]),o?0==sortColumns.length&&sortColumns.push(o):(o={columnId:n.id,sortAsc:n.defaultSortAsc},sortColumns.push(o))),setSortColumns(sortColumns),0<sortColumns.length&&(options.multiColumnSort?trigger(self.onSort,{multiColumnSort:!0,sortCols:$.map(sortColumns,function(e){return{sortCol:columns[getColumnIndex(e.columnId)],sortAsc:e.sortAsc}}),grid:self},e):trigger(self.onSort,{multiColumnSort:!1,sortCol:n,sortAsc:sortColumns[0].sortAsc,grid:self},e))}}}})}function setupColumnReorder(){$headers.filter(\":ui-sortable\").sortable(\"destroy\"),$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(e,t){t.placeholder.width(t.helper.outerWidth()-headerColumnWidthDiff),$(t.helper).addClass(\"slick-header-column-active\")},beforeStop:function(e,t){$(t.helper).removeClass(\"slick-header-column-active\")},stop:function(e){if(getEditorLock().commitCurrentEdit()){for(var t=$headers.sortable(\"toArray\"),n=[],o=0;o<t.length;o++)n.push(columns[getColumnIndex(t[o].replace(uid,\"\"))]);setColumns(n),trigger(self.onColumnsReordered,{grid:self}),e.stopPropagation(),setupColumnResize()}else $(this).sortable(\"cancel\")}})}function setupColumnResize(){var s,a,c,u,d,p,n,o;(u=$headers.children()).find(\".slick-resizable-handle\").remove(),u.each(function(e,t){e>=columns.length||columns[e].resizable&&(void 0===n&&(n=e),o=e)}),void 0!==n&&u.each(function(l,e){l>=columns.length||l<n||options.forceFitColumns&&o<=l||($(e),$(\"<div class='slick-resizable-handle' />\").appendTo(e).on(\"dragstart\",function(e,t){if(!getEditorLock().commitCurrentEdit())return!1;c=e.pageX,$(this).parent().addClass(\"slick-header-column-active\");var n=null,o=null;if(u.each(function(e,t){e>=columns.length||(columns[e].previousWidth=$(t).outerWidth())}),options.forceFitColumns)for(o=n=0,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(null!==o&&(a.maxWidth?o+=a.maxWidth-a.previousWidth:o=null),n+=a.previousWidth-Math.max(a.minWidth||0,absoluteColumnMinWidth));var r=0,i=0;for(s=0;s<=l;s++)(a=columns[s]).resizable&&(null!==i&&(a.maxWidth?i+=a.maxWidth-a.previousWidth:i=null),r+=a.previousWidth-Math.max(a.minWidth||0,absoluteColumnMinWidth));null===n&&(n=1e5),null===r&&(r=1e5),null===o&&(o=1e5),null===i&&(i=1e5),p=c+Math.min(n,i),d=c-Math.min(r,o)}).on(\"drag\",function(e,t){var n,o,r=Math.min(p,Math.max(d,e.pageX))-c;if(r<0){for(o=r,s=l;0<=s;s--)(a=columns[s]).resizable&&(n=Math.max(a.minWidth||0,absoluteColumnMinWidth),o&&a.previousWidth+o<n?(o+=a.previousWidth-n,a.width=n):(a.width=a.previousWidth+o,o=0));if(options.forceFitColumns)for(o=-r,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(o&&a.maxWidth&&a.maxWidth-a.previousWidth<o?(o-=a.maxWidth-a.previousWidth,a.width=a.maxWidth):(a.width=a.previousWidth+o,o=0))}else{for(o=r,s=l;0<=s;s--)(a=columns[s]).resizable&&(o&&a.maxWidth&&a.maxWidth-a.previousWidth<o?(o-=a.maxWidth-a.previousWidth,a.width=a.maxWidth):(a.width=a.previousWidth+o,o=0));if(options.forceFitColumns)for(o=-r,s=l+1;s<columns.length;s++)(a=columns[s]).resizable&&(n=Math.max(a.minWidth||0,absoluteColumnMinWidth),o&&a.previousWidth+o<n?(o+=a.previousWidth-n,a.width=n):(a.width=a.previousWidth+o,o=0))}applyColumnHeaderWidths(),options.syncColumnCellResize&&applyColumnWidths()}).on(\"dragend\",function(e,t){var n;for($(this).parent().removeClass(\"slick-header-column-active\"),s=0;s<columns.length;s++)a=columns[s],n=$(u[s]).outerWidth(),a.previousWidth!==n&&a.rerenderOnResize&&invalidateAllRows();updateCanvasWidth(!0),render(),trigger(self.onColumnsResized,{grid:self})}))})}function getVBoxDelta(n){var o=0;return $.each([\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],function(e,t){o+=parseFloat(n.css(t))||0}),o}function measureCellPaddingAndBorder(){var n,e=[\"borderLeftWidth\",\"borderRightWidth\",\"paddingLeft\",\"paddingRight\"],t=[\"borderTopWidth\",\"borderBottomWidth\",\"paddingTop\",\"paddingBottom\"],o=$.fn.jquery.split(\".\");jQueryNewWidthBehaviour=1==o[0]&&8<=o[1]||2<=o[0],n=$(\"<div class='ui-state-default slick-header-column' style='visibility:hidden'>-</div>\").appendTo($headers),headerColumnWidthDiff=headerColumnHeightDiff=0,\"border-box\"!=n.css(\"box-sizing\")&&\"border-box\"!=n.css(\"-moz-box-sizing\")&&\"border-box\"!=n.css(\"-webkit-box-sizing\")&&($.each(e,function(e,t){headerColumnWidthDiff+=parseFloat(n.css(t))||0}),$.each(t,function(e,t){headerColumnHeightDiff+=parseFloat(n.css(t))||0})),n.remove();var r=$(\"<div class='slick-row' />\").appendTo($canvas);n=$(\"<div class='slick-cell' id='' style='visibility:hidden'>-</div>\").appendTo(r),cellWidthDiff=cellHeightDiff=0,\"border-box\"!=n.css(\"box-sizing\")&&\"border-box\"!=n.css(\"-moz-box-sizing\")&&\"border-box\"!=n.css(\"-webkit-box-sizing\")&&($.each(e,function(e,t){cellWidthDiff+=parseFloat(n.css(t))||0}),$.each(t,function(e,t){cellHeightDiff+=parseFloat(n.css(t))||0})),r.remove(),absoluteColumnMinWidth=Math.max(headerColumnWidthDiff,cellWidthDiff)}function createCssRules(){$style=$(\"<style type='text/css' rel='stylesheet' />\").appendTo($(\"head\"));for(var e=options.rowHeight-cellHeightDiff,t=[\".\"+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; }\"],n=0;n<columns.length;n++)t.push(\".\"+uid+\" .l\"+n+\" { }\"),t.push(\".\"+uid+\" .r\"+n+\" { }\");$style[0].styleSheet?$style[0].styleSheet.cssText=t.join(\" \"):$style[0].appendChild(document.createTextNode(t.join(\" \")))}function getColumnCssRules(e){var t;if(!stylesheet){var n=document.styleSheets;for(t=0;t<n.length;t++)if((n[t].ownerNode||n[t].owningElement)==$style[0]){stylesheet=n[t];break}if(!stylesheet)throw new Error(\"Cannot find stylesheet.\");columnCssRulesL=[],columnCssRulesR=[];var o,r,i=stylesheet.cssRules||stylesheet.rules;for(t=0;t<i.length;t++){var l=i[t].selectorText;(o=/\\.l\\d+/.exec(l))?(r=parseInt(o[0].substr(2,o[0].length-2),10),columnCssRulesL[r]=i[t]):(o=/\\.r\\d+/.exec(l))&&(r=parseInt(o[0].substr(2,o[0].length-2),10),columnCssRulesR[r]=i[t])}}return{left:columnCssRulesL[e],right:columnCssRulesR[e]}}function removeCssRules(){$style.remove(),stylesheet=null}function destroy(){getEditorLock().cancelCurrentEdit(),trigger(self.onBeforeDestroy,{grid:self});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)}function trigger(e,t,n){return n=n||new Slick.EventData,(t=t||{}).grid=self,e.notify(t,n,self)}function getEditorLock(){return options.editorLock}function getEditController(){return editController}function getColumnIndex(e){return columnsById[e]}function autosizeColumns(){var e,t,n,o=[],r=0,i=0,l=viewportHasVScroll?viewportW-scrollbarDimensions.width:viewportW;for(e=0;e<columns.length;e++)t=columns[e],o.push(t.width),i+=t.width,t.resizable&&(r+=t.width-Math.max(t.minWidth,absoluteColumnMinWidth));for(n=i;l<i&&r;){var s=(i-l)/r;for(e=0;e<columns.length&&l<i;e++){t=columns[e];var a=o[e];if(!(!t.resizable||a<=t.minWidth||a<=absoluteColumnMinWidth)){var c=Math.max(t.minWidth,absoluteColumnMinWidth),u=Math.floor(s*(a-c))||1;u=Math.min(u,a-c),i-=u,r-=u,o[e]-=u}}if(n<=i)break;n=i}for(n=i;i<l;){var d=l/i;for(e=0;e<columns.length&&i<l;e++){t=columns[e];var p,f=o[e];p=!t.resizable||t.maxWidth<=f?0:Math.min(Math.floor(d*f)-f,t.maxWidth-f||1e6)||1,i+=p,o[e]+=i<=l?p:0}if(i<=n)break;n=i}var h=!1;for(e=0;e<columns.length;e++)columns[e].rerenderOnResize&&columns[e].width!=o[e]&&(h=!0),columns[e].width=o[e];applyColumnHeaderWidths(),updateCanvasWidth(!0),h&&(invalidateAllRows(),render())}function applyColumnHeaderWidths(){if(initialized){for(var e,t=0,n=$headers.children(),o=columns.length;t<o;t++)e=$(n[t]),jQueryNewWidthBehaviour?e.outerWidth()!==columns[t].width&&e.outerWidth(columns[t].width):e.width()!==columns[t].width-headerColumnWidthDiff&&e.width(columns[t].width-headerColumnWidthDiff);updateColumnCaches()}}function applyColumnWidths(){for(var e,t,n=0,o=0;o<columns.length;o++)e=columns[o].width,(t=getColumnCssRules(o)).left.style.left=n+\"px\",t.right.style.right=canvasWidth-n-e+\"px\",n+=columns[o].width}function setSortColumn(e,t){setSortColumns([{columnId:e,sortAsc:t}])}function setSortColumns(e){sortColumns=e;var o=options.numberedMultiColumnSort&&1<sortColumns.length,r=$headers.children(),i=r.removeClass(\"slick-header-column-sorted\").find(\".\"+sortIndicatorCssClass).removeClass(\"slick-sort-indicator-asc slick-sort-indicator-desc\");o&&i.text(\"\"),$.each(sortColumns,function(e,t){null==t.sortAsc&&(t.sortAsc=!0);var n=getColumnIndex(t.columnId);null!=n&&(i=r.eq(n).addClass(\"slick-header-column-sorted\").find(\".\"+sortIndicatorCssClass).addClass(t.sortAsc?\"slick-sort-indicator-asc\":\"slick-sort-indicator-desc\"),o&&i.text(e+1))})}function getSortColumns(){return sortColumns}function handleSelectedRangesChanged(e,t){selectedRows=[];for(var n={},o=0;o<t.length;o++)for(var r=t[o].fromRow;r<=t[o].toRow;r++){n[r]||(selectedRows.push(r),n[r]={});for(var i=t[o].fromCell;i<=t[o].toCell;i++)canCellBeSelected(r,i)&&(n[r][columns[i].id]=options.selectedCellCssClass)}setCellCssStyles(options.selectedCellCssClass,n),trigger(self.onSelectedRowsChanged,{rows:getSelectedRows(),grid:self},e)}function getColumns(){return columns}function updateColumnCaches(){columnPosLeft=[],columnPosRight=[];for(var e=0,t=0,n=columns.length;t<n;t++)columnPosLeft[t]=e,columnPosRight[t]=e+columns[t].width,e+=columns[t].width}function setColumns(e){columns=e,columnsById={};for(var t=0;t<columns.length;t++){var n=columns[t]=$.extend({},columnDefaults,columns[t]);columnsById[n.id]=t,n.minWidth&&n.width<n.minWidth&&(n.width=n.minWidth),n.maxWidth&&n.width>n.maxWidth&&(n.width=n.maxWidth)}updateColumnCaches(),initialized&&(invalidateAllRows(),createColumnHeaders(),removeCssRules(),createCssRules(),resizeCanvas(),applyColumnWidths(),handleScroll())}function getOptions(){return options}function setOptions(e,t){getEditorLock().commitCurrentEdit()&&(makeActiveCellNormal(),options.enableAddRow!==e.enableAddRow&&invalidateRow(getDataLength()),options=$.extend(options,e),validateAndEnforceOptions(),$viewport.css(\"overflow-y\",options.autoHeight?\"hidden\":\"auto\"),t||render())}function validateAndEnforceOptions(){options.autoHeight&&(options.leaveSpaceForNewRows=!1)}function setData(e,t){data=e,invalidateAllRows(),updateRowCount(),t&&scrollTo(0)}function getData(){return data}function getDataLength(){return data.getLength?data.getLength():data.length}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){options.showTopPanel!=e&&((options.showTopPanel=e)?$topPanelScroller.slideDown(\"fast\",resizeCanvas):$topPanelScroller.slideUp(\"fast\",resizeCanvas))}function setHeaderRowVisibility(e){options.showHeaderRow!=e&&((options.showHeaderRow=e)?$headerRowScroller.slideDown(\"fast\",resizeCanvas):$headerRowScroller.slideUp(\"fast\",resizeCanvas))}function setFooterRowVisibility(e){options.showFooterRow!=e&&((options.showFooterRow=e)?$footerRowScroller.slideDown(\"fast\",resizeCanvas):$footerRowScroller.slideUp(\"fast\",resizeCanvas))}function setPreHeaderPanelVisibility(e){options.showPreHeaderPanel!=e&&((options.showPreHeaderPanel=e)?$preHeaderPanelScroller.slideDown(\"fast\",resizeCanvas):$preHeaderPanelScroller.slideUp(\"fast\",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-viewportH+(viewportHasHScroll?scrollbarDimensions.height:0));var t=offset;page=Math.min(n-1,Math.floor(e/ph)),offset=Math.round(page*cj);var o=e-offset;if(offset!=t){var r=getVisibleRange(o);cleanupRows(r),updateRowPositions()}prevScrollTop!=o&&(vScrollDir=prevScrollTop+t<o+offset?1:-1,$viewport[0].scrollTop=lastRenderedScrollTop=scrollTop=prevScrollTop=o,trigger(self.onViewportChanged,{grid:self}))}function defaultFormatter(e,t,n,o,r){return null==n?\"\":(n+\"\").replace(/&/g,\"&amp;\").replace(/</g,\"&lt;\").replace(/>/g,\"&gt;\")}function getFormatter(e,t){var n=data.getItemMetadata&&data.getItemMetadata(e),o=n&&n.columns&&(n.columns[t.id]||n.columns[getColumnIndex(t.id)]);return o&&o.formatter||n&&n.formatter||t.formatter||options.formatterFactory&&options.formatterFactory.getFormatter(t)||options.defaultFormatter}function getEditor(e,t){var n=columns[t],o=data.getItemMetadata&&data.getItemMetadata(e),r=o&&o.columns;return r&&r[n.id]&&void 0!==r[n.id].editor?r[n.id].editor:r&&r[t]&&void 0!==r[t].editor?r[t].editor:n.editor||options.editorFactory&&options.editorFactory.getEditor(n)}function getDataItemValueForColumn(e,t){return options.dataItemColumnValueExtractor?options.dataItemColumnValueExtractor(e,t):e[t.field]}function appendRowHtml(e,t,n,o){var r=getDataItem(t),i=t<o&&!r,l=\"slick-row\"+(i?\" loading\":\"\")+(t===activeRow?\" active\":\"\")+(t%2==1?\" odd\":\" even\");r||(l+=\" \"+options.addNewRowCssClass);var s,a,c=data.getItemMetadata&&data.getItemMetadata(t);c&&c.cssClasses&&(l+=\" \"+c.cssClasses),e.push(\"<div class='ui-widget-content \"+l+\"' style='top:\"+getRowTop(t)+\"px'>\");for(var u=0,d=columns.length;u<d;u++){if(a=columns[u],s=1,c&&c.columns){var p=c.columns[a.id]||c.columns[u];\"*\"===(s=p&&p.colspan||1)&&(s=d-u)}if(columnPosRight[Math.min(d-1,u+s-1)]>n.leftPx){if(columnPosLeft[u]>n.rightPx)break;appendCellHtml(e,t,u,s,r)}1<s&&(u+=s-1)}e.push(\"</div>\")}function appendCellHtml(e,t,n,o,r){var i=columns[n],l=\"slick-cell l\"+n+\" r\"+Math.min(columns.length-1,n+o-1)+(i.cssClass?\" \"+i.cssClass:\"\");for(var s in t===activeRow&&n===activeCell&&(l+=\" active\"),cellCssClasses)cellCssClasses[s][t]&&cellCssClasses[s][t][i.id]&&(l+=\" \"+cellCssClasses[s][t][i.id]);var a=null;r&&(a=getDataItemValueForColumn(r,i));var c=getFormatter(t,i)(t,n,a,i,r),u=trigger(self.onBeforeAppendCell,{row:t,cell:n,grid:self,value:a,dataContext:r})||\"\";u+=c.addClasses?(u?\" \":\"\")+c.addClasses:\"\",e.push(\"<div class='\"+l+(u?\" \"+u:\"\")+\"'>\"),r&&e.push(\"object\"!=typeof c?c:c.text),e.push(\"</div>\"),rowsCache[t].cellRenderQueue.push(n),rowsCache[t].cellColSpans[n]=o}function cleanupRows(e){for(var t in rowsCache)(t=parseInt(t,10))!==activeRow&&(t<e.top||t>e.bottom)&&removeRowFromCache(t);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,t,n){for(var o in postProcessgroupId++,t)t.hasOwnProperty(o)&&postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e.cellNodesByColumnIdx[0|o],columnIdx:0|o,rowIdx:n});postProcessedCleanupQueue.push({actionType:\"R\",groupId:postProcessgroupId,node:e.rowNode}),$(e.rowNode).detach()}function queuePostProcessedCellForCleanup(e,t,n){postProcessedCleanupQueue.push({actionType:\"C\",groupId:postProcessgroupId,node:e,columnIdx:t,rowIdx:n}),$(e).detach()}function removeRowFromCache(e){var t=rowsCache[e];t&&(rowNodeFromLastMouseWheelEvent===t.rowNode?(t.rowNode.style.display=\"none\",zombieRowNodeFromLastMouseWheelEvent=rowNodeFromLastMouseWheelEvent,zombieRowCacheFromLastMouseWheelEvent=t,zombieRowPostProcessedFromLastMouseWheelEvent=postProcessedRows[e]):options.enableAsyncPostRenderCleanup&&postProcessedRows[e]?queuePostProcessedRowForCleanup(t,postProcessedRows[e],e):$canvas[0].removeChild(t.rowNode),delete rowsCache[e],delete postProcessedRows[e],renderedRows--,counter_rows_removed++)}function invalidateRows(e){var t,n;if(e&&e.length){for(vScrollDir=0,n=e.length,t=0;t<n;t++)currentEditor&&activeRow===e[t]&&makeActiveCellNormal(),rowsCache[e[t]]&&removeRowFromCache(e[t]);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()}}function invalidateRow(e){invalidateRows([e])}function applyFormatResultToCellNode(e,t,n){\"object\"==typeof e?(t.innerHTML=e.text,e.removeClasses&&!n&&t.removeClass(e.removeClasses),e.addClasses&&t.addClass(e.addClasses)):t.innerHTML=e}function updateCell(e,t){var n=getCellNode(e,t);if(n){var o=columns[t],r=getDataItem(e);if(currentEditor&&activeRow===e&&activeCell===t)currentEditor.loadValue(r);else{var i=r?getFormatter(e,o)(e,t,getDataItemValueForColumn(r,o),o,r):\"\";applyFormatResultToCellNode(i,n),invalidatePostProcessingResults(e)}}}function updateRow(e){var t=rowsCache[e];if(t){ensureCellNodesInRowsCache(e);var n=getDataItem(e);for(var o in t.cellNodesByColumnIdx)if(t.cellNodesByColumnIdx.hasOwnProperty(o)){var r=columns[o|=0],i=t.cellNodesByColumnIdx[o];e===activeRow&&o===activeCell&&currentEditor?currentEditor.loadValue(n):n?applyFormatResultToCellNode(getFormatter(e,r)(e,o,getDataItemValueForColumn(n,r),r,n),i):i.innerHTML=\"\"}invalidatePostProcessingResults(e)}}function getViewportHeight(){return parseFloat($.css($container[0],\"height\",!0))-parseFloat($.css($container[0],\"paddingTop\",!0))-parseFloat($.css($container[0],\"paddingBottom\",!0))-parseFloat($.css($headerScroller[0],\"height\"))-getVBoxDelta($headerScroller)-(options.showTopPanel?options.topPanelHeight+getVBoxDelta($topPanelScroller):0)-(options.showHeaderRow?options.headerRowHeight+getVBoxDelta($headerRowScroller):0)-(options.createFooterRow&&options.showFooterRow?options.footerRowHeight+getVBoxDelta($footerRowScroller):0)-(options.createPreHeaderPanel&&options.showPreHeaderPanel?options.preHeaderPanelHeight+getVBoxDelta($preHeaderPanelScroller):0)}function resizeCanvas(){initialized&&(viewportH=options.autoHeight?options.rowHeight*getDataLengthIncludingAddNew():getViewportHeight(),numVisibleRows=Math.ceil(viewportH/options.rowHeight),viewportW=parseFloat($.css($container[0],\"width\",!0)),options.autoHeight||$viewport.height(viewportH),options.forceFitColumns&&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(),t=getDataLengthIncludingAddNew(),o=t+(options.leaveSpaceForNewRows?numVisibleRows-1:0),r=viewportHasVScroll;viewportHasVScroll=!options.autoHeight&&o*options.rowHeight>viewportH,viewportHasHScroll=canvasWidth>viewportW-scrollbarDimensions.width,makeActiveCellNormal();var i=e-1;for(var l in rowsCache)i<l&&removeRowFromCache(l);options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup(),activeCellNode&&i<activeRow&&resetActiveCell();var s=h;(th=Math.max(options.rowHeight*o,viewportH-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!==s&&($canvas.css(\"height\",h),scrollTop=$viewport[0].scrollTop);var a=scrollTop+offset<=th-viewportH;0==th||0==scrollTop?page=offset=0:scrollTo(a?scrollTop+offset:th-viewportH),h!=s&&options.autoHeight&&resizeCanvas(),options.forceFitColumns&&r!=viewportHasVScroll&&autosizeColumns(),updateCanvasWidth(!1)}}function getVisibleRange(e,t){return null==e&&(e=scrollTop),null==t&&(t=scrollLeft),{top:getRowFromPosition(e),bottom:getRowFromPosition(e+viewportH)+1,leftPx:t,rightPx:t+viewportW}}function getRenderedRange(e,t){var n=getVisibleRange(e,t),o=Math.round(viewportH/options.rowHeight);return-1==vScrollDir?(n.top-=o,n.bottom+=3):1==vScrollDir?(n.top-=3,n.bottom+=o):(n.top-=3,n.bottom+=3),n.top=Math.max(0,n.top),n.bottom=Math.min(getDataLengthIncludingAddNew()-1,n.bottom),n.leftPx-=viewportW,n.rightPx+=viewportW,n.leftPx=Math.max(0,n.leftPx),n.rightPx=Math.min(canvasWidth,n.rightPx),n}function ensureCellNodesInRowsCache(e){var t=rowsCache[e];if(t&&t.cellRenderQueue.length)for(var n=t.rowNode.lastChild;t.cellRenderQueue.length;){var o=t.cellRenderQueue.pop();n=(t.cellNodesByColumnIdx[o]=n).previousSibling}}function cleanUpCells(e,t){var n,o,r=rowsCache[t],i=[];for(var l in r.cellNodesByColumnIdx)if(r.cellNodesByColumnIdx.hasOwnProperty(l)){l|=0;var s=r.cellColSpans[l];(columnPosLeft[l]>e.rightPx||columnPosRight[Math.min(columns.length-1,l+s-1)]<e.leftPx)&&(t==activeRow&&l==activeCell||i.push(l))}for(postProcessgroupId++;null!=(n=i.pop());)o=r.cellNodesByColumnIdx[n],options.enableAsyncPostRenderCleanup&&postProcessedRows[t]&&postProcessedRows[t][n]?queuePostProcessedCellForCleanup(o,n,t):r.rowNode.removeChild(o),delete r.cellColSpans[n],delete r.cellNodesByColumnIdx[n],postProcessedRows[t]&&delete postProcessedRows[t][n],0}function cleanUpAndRenderCells(e){for(var t,n,o,r=[],i=[],l=e.top,s=e.bottom;l<=s;l++)if(t=rowsCache[l]){ensureCellNodesInRowsCache(l),cleanUpCells(e,l),n=0;var a=data.getItemMetadata&&data.getItemMetadata(l);a=a&&a.columns;for(var c=getDataItem(l),u=0,d=columns.length;u<d&&!(columnPosLeft[u]>e.rightPx);u++)if(null==(o=t.cellColSpans[u])){if(o=1,a){var p=a[columns[u].id]||a[u];\"*\"===(o=p&&p.colspan||1)&&(o=d-u)}columnPosRight[Math.min(d-1,u+o-1)]>e.leftPx&&(appendCellHtml(r,l,u,o,c),n++),u+=1<o?o-1:0}else u+=1<o?o-1:0;n&&(n,i.push(l))}if(r.length){var f,h,g=document.createElement(\"div\");for(g.innerHTML=r.join(\"\");null!=(f=i.pop());){var m;for(t=rowsCache[f];null!=(m=t.cellRenderQueue.pop());)h=g.lastChild,t.rowNode.appendChild(h),t.cellNodesByColumnIdx[m]=h}}}function renderRows(e){for(var t=$canvas[0],n=[],o=[],r=!1,i=getDataLength(),l=e.top,s=e.bottom;l<=s;l++)rowsCache[l]||(renderedRows++,o.push(l),rowsCache[l]={rowNode:null,cellColSpans:[],cellNodesByColumnIdx:[],cellRenderQueue:[]},appendRowHtml(n,l,e,i),activeCellNode&&activeRow===l&&(r=!0),counter_rows_rendered++);if(o.length){var a=document.createElement(\"div\");a.innerHTML=n.join(\"\");for(var l=0,s=o.length;l<s;l++)rowsCache[o[l]].rowNode=t.appendChild(a.firstChild);r&&(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 t in postProcessedRows[e])postProcessedRows[e].hasOwnProperty(t)&&(postProcessedRows[e][t]=\"C\");postProcessFromRow=Math.min(postProcessFromRow,e),postProcessToRow=Math.max(postProcessToRow,e),startPostProcessing()}function updateRowPositions(){for(var e in rowsCache)rowsCache[e].rowNode.style.top=getRowTop(e)+\"px\"}function render(){if(initialized){var e=getVisibleRange(),t=getRenderedRange();cleanupRows(t),lastRenderedScrollLeft!=scrollLeft&&cleanUpAndRenderCells(t),renderRows(t),postProcessFromRow=e.top,postProcessToRow=Math.min(getDataLengthIncludingAddNew()-1,e.bottom),startPostProcessing(),lastRenderedScrollTop=scrollTop,lastRenderedScrollLeft=scrollLeft,h_render=null}}function handleHeaderRowScroll(){var e=$headerRowScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handleFooterRowScroll(){var e=$footerRowScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handlePreHeaderPanelScroll(){var e=$preHeaderPanelScroller[0].scrollLeft;e!=$viewport[0].scrollLeft&&($viewport[0].scrollLeft=e)}function handleScroll(){scrollTop=$viewport[0].scrollTop,scrollLeft=$viewport[0].scrollLeft;var e=Math.abs(scrollTop-prevScrollTop),t=Math.abs(scrollLeft-prevScrollLeft);if(t&&(prevScrollLeft=scrollLeft,$headerScroller[0].scrollLeft=scrollLeft,$topPanelScroller[0].scrollLeft=scrollLeft,$headerRowScroller[0].scrollLeft=scrollLeft,options.createFooterRow&&($footerRowScroller[0].scrollLeft=scrollLeft),options.createPreHeaderPanel&&($preHeaderPanelScroller[0].scrollLeft=scrollLeft)),e)if(vScrollDir=prevScrollTop<scrollTop?1:-1,prevScrollTop=scrollTop,e<viewportH)scrollTo(scrollTop+offset);else{var o=offset;page=h==viewportH?0:Math.min(n-1,Math.floor(scrollTop*((th-viewportH)/(h-viewportH))*(1/ph))),offset=Math.round(page*cj),o!=offset&&invalidateAllRows()}(t||e)&&(h_render&&clearTimeout(h_render),(20<Math.abs(lastRenderedScrollTop-scrollTop)||20<Math.abs(lastRenderedScrollLeft-scrollLeft))&&(options.forceSyncScrolling||Math.abs(lastRenderedScrollTop-scrollTop)<viewportH&&Math.abs(lastRenderedScrollLeft-scrollLeft)<viewportW?render():h_render=setTimeout(render,50),trigger(self.onViewportChanged,{grid:self}))),trigger(self.onScroll,{scrollLeft:scrollLeft,scrollTop:scrollTop,grid:self})}function asyncPostProcessRows(){for(var e=getDataLength();postProcessFromRow<=postProcessToRow;){var t=0<=vScrollDir?postProcessFromRow++:postProcessToRow--,n=rowsCache[t];if(n&&!(e<=t)){for(var o in postProcessedRows[t]||(postProcessedRows[t]={}),ensureCellNodesInRowsCache(t),n.cellNodesByColumnIdx)if(n.cellNodesByColumnIdx.hasOwnProperty(o)){var r=columns[o|=0],i=postProcessedRows[t][o];if(r.asyncPostRender&&\"R\"!==i){var l=n.cellNodesByColumnIdx[o];l&&r.asyncPostRender(l,t,getDataItem(t),r,\"C\"===i),postProcessedRows[t][o]=\"R\"}}return void(h_postrender=setTimeout(asyncPostProcessRows,options.asyncPostRenderDelay))}}}function asyncPostProcessCleanupRows(){if(0<postProcessedCleanupQueue.length){for(var e=postProcessedCleanupQueue[0].groupId;0<postProcessedCleanupQueue.length&&postProcessedCleanupQueue[0].groupId==e;){var t=postProcessedCleanupQueue.shift();if(\"R\"==t.actionType&&$(t.node).remove(),\"C\"==t.actionType){var n=columns[t.columnIdx];n.asyncPostRenderCleanup&&t.node&&n.asyncPostRenderCleanup(t.node,t.rowIdx,n)}}h_postrenderCleanup=setTimeout(asyncPostProcessCleanupRows,options.asyncPostRenderCleanupDelay)}}function updateCellCssStylesOnRenderedRows(e,t){var n,o,r,i;for(var l in rowsCache){if(i=t&&t[l],r=e&&e[l],i)for(o in i)r&&i[o]==r[o]||(n=getCellNode(l,getColumnIndex(o)))&&$(n).removeClass(i[o]);if(r)for(o in r)i&&i[o]==r[o]||(n=getCellNode(l,getColumnIndex(o)))&&$(n).addClass(r[o])}}function addCellCssStyles(e,t){if(cellCssClasses[e])throw new Error(\"addCellCssStyles: cell CSS hash with key '\"+e+\"' already exists.\");updateCellCssStylesOnRenderedRows(cellCssClasses[e]=t,null),trigger(self.onCellCssStylesChanged,{key:e,hash:t,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,t){var n=cellCssClasses[e];updateCellCssStylesOnRenderedRows(cellCssClasses[e]=t,n),trigger(self.onCellCssStylesChanged,{key:e,hash:t,grid:self})}function getCellCssStyles(e){return cellCssClasses[e]}function flashCell(e,t,n){if(n=n||100,rowsCache[e]){var o=$(getCellNode(e,t)),r=function(e){e&&setTimeout(function(){o.queue(function(){o.toggleClass(options.cellFlashingCssClass).dequeue(),r(e-1)})},n)};r(4)}}function handleMouseWheel(e){var t=$(e.target).closest(\".slick-row\")[0];t!=rowNodeFromLastMouseWheelEvent&&(zombieRowNodeFromLastMouseWheelEvent&&zombieRowNodeFromLastMouseWheelEvent!=t&&(options.enableAsyncPostRenderCleanup&&zombieRowPostProcessedFromLastMouseWheelEvent?queuePostProcessedRowForCleanup(zombieRowCacheFromLastMouseWheelEvent,zombieRowPostProcessedFromLastMouseWheelEvent):$canvas[0].removeChild(zombieRowNodeFromLastMouseWheelEvent),zombieRowPostProcessedFromLastMouseWheelEvent=zombieRowCacheFromLastMouseWheelEvent=zombieRowNodeFromLastMouseWheelEvent=null,options.enableAsyncPostRenderCleanup&&startPostProcessingCleanup()),rowNodeFromLastMouseWheelEvent=t)}function handleDragInit(e,t){var n=getCellFromEvent(e);if(!n||!cellExists(n.row,n.cell))return!1;var o=trigger(self.onDragInit,t,e);return!!e.isImmediatePropagationStopped()&&o}function handleDragStart(e,t){var n=getCellFromEvent(e);if(!n||!cellExists(n.row,n.cell))return!1;var o=trigger(self.onDragStart,t,e);return!!e.isImmediatePropagationStopped()&&o}function handleDrag(e,t){return trigger(self.onDrag,t,e)}function handleDragEnd(e,t){trigger(self.onDragEnd,t,e)}function handleKeyDown(e){trigger(self.onKeyDown,{row:activeRow,cell:activeCell,grid:self},e);var t=e.isImmediatePropagationStopped(),n=Slick.keyCode;if(!t)if(e.shiftKey||e.altKey||e.ctrlKey)e.which!=n.TAB||!e.shiftKey||e.ctrlKey||e.altKey||(t=navigatePrev());else{if(options.editable&&currentEditor&&currentEditor.keyCaptureList&&-1<currentEditor.keyCaptureList.indexOf(e.which))return;if(e.which==n.ESCAPE){if(!getEditorLock().isActive())return;cancelEditAndSetFocus()}else e.which==n.PAGE_DOWN?(navigatePageDown(),t=!0):e.which==n.PAGE_UP?(navigatePageUp(),t=!0):e.which==n.LEFT?t=navigateLeft():e.which==n.RIGHT?t=navigateRight():e.which==n.UP?t=navigateUp():e.which==n.DOWN?t=navigateDown():e.which==n.TAB?t=navigateNext():e.which==n.ENTER&&(options.editable&&(currentEditor?activeRow===getDataLength()?navigateDown():commitEditAndSetFocus():getEditorLock().commitCurrentEdit()&&makeActiveCellEditable()),t=!0)}if(t){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 t=getCellFromEvent(e);if(t&&(null===currentEditor||activeRow!=t.row||activeCell!=t.cell)&&(trigger(self.onClick,{row:t.row,cell:t.cell,grid:self},e),!e.isImmediatePropagationStopped()&&canCellBeActive(t.row,t.cell)&&(!getEditorLock().isActive()||getEditorLock().commitCurrentEdit()))){scrollRowIntoView(t.row,!1);var n=e.target&&e.target.className===Slick.preClickClassName;setActiveCellInternal(getCellNode(t.row,t.cell),null,n)}}function handleContextMenu(e){var t=$(e.target).closest(\".slick-cell\",$canvas);0!==t.length&&(activeCellNode===t[0]&&null!==currentEditor||trigger(self.onContextMenu,{grid:self},e))}function handleDblClick(e){var t=getCellFromEvent(e);!t||null!==currentEditor&&activeRow==t.row&&activeCell==t.cell||(trigger(self.onDblClick,{row:t.row,cell:t.cell,grid:self},e),e.isImmediatePropagationStopped()||options.editable&&gotoCell(t.row,t.cell,!0))}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 t=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),n=t&&t.data(\"column\");trigger(self.onHeaderContextMenu,{column:n,grid:self},e)}function handleHeaderClick(e){var t=$(e.target).closest(\".slick-header-column\",\".slick-header-columns\"),n=t&&t.data(\"column\");n&&trigger(self.onHeaderClick,{column:n,grid:self},e)}function handleMouseEnter(e){trigger(self.onMouseEnter,{grid:self},e)}function handleMouseLeave(e){trigger(self.onMouseLeave,{grid:self},e)}function cellExists(e,t){return!(e<0||e>=getDataLength()||t<0||t>=columns.length)}function getCellFromPoint(e,t){for(var n=getRowFromPosition(t),o=0,r=0,i=0;i<columns.length&&r<e;i++)r+=columns[i].width,o++;return o<0&&(o=0),{row:n,cell:o-1}}function getCellFromNode(e){var t=/l\\d+/.exec(e.className);if(!t)throw new Error(\"getCellFromNode: cannot get cell - \"+e.className);return parseInt(t[0].substr(1,t[0].length-1),10)}function getRowFromNode(e){for(var t in rowsCache)if(rowsCache[t].rowNode===e)return 0|t;return null}function getCellFromEvent(e){var t=$(e.target).closest(\".slick-cell\",$canvas);if(!t.length)return null;var n=getRowFromNode(t[0].parentNode),o=getCellFromNode(t[0]);return null==n||null==o?null:{row:n,cell:o}}function getCellNodeBox(e,t){if(!cellExists(e,t))return null;for(var n=getRowTop(e),o=n+options.rowHeight-1,r=0,i=0;i<t;i++)r+=columns[i].width;var l=r+columns[t].width;return{top:n,left:r,bottom:o,right:l}}function resetActiveCell(){setActiveCellInternal(null,!1)}function setFocus(){-1==tabbingDirection?$focusSink[0].focus():$focusSink2[0].focus()}function scrollCellIntoView(e,t,n){scrollRowIntoView(e,n);var o=getColspan(e,t);internalScrollColumnIntoView(columnPosLeft[t],columnPosRight[t+(1<o?o-1:0)])}function internalScrollColumnIntoView(e,t){var n=scrollLeft+viewportW;e<scrollLeft?($viewport.scrollLeft(e),handleScroll(),render()):n<t&&($viewport.scrollLeft(Math.min(e,t-$viewport[0].clientWidth)),handleScroll(),render())}function scrollColumnIntoView(e){internalScrollColumnIntoView(columnPosLeft[e],columnPosRight[e])}function setActiveCellInternal(e,t,n,o){null!==activeCellNode&&(makeActiveCellNormal(),$(activeCellNode).removeClass(\"active\"),rowsCache[activeRow]&&$(rowsCache[activeRow].rowNode).removeClass(\"active\"));null!=(activeCellNode=e)?(activeRow=getRowFromNode(activeCellNode.parentNode),activeCell=activePosX=getCellFromNode(activeCellNode),null==t&&(t=activeRow==getDataLength()||options.autoEdit),options.showCellSelection&&($(activeCellNode).addClass(\"active\"),$(rowsCache[activeRow].rowNode).addClass(\"active\")),options.editable&&t&&isCellPotentiallyEditable(activeRow,activeCell)&&(clearTimeout(h_editorLoader),options.asyncEditorLoading?h_editorLoader=setTimeout(function(){makeActiveCellEditable(void 0,n)},options.asyncEditorLoadDelay):makeActiveCellEditable(void 0,n))):activeRow=activeCell=null,o||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,t){var n=getDataLength();return!(e<n&&!getDataItem(e))&&(!(columns[t].cannotTriggerInsert&&n<=e)&&!!getEditor(e,t))}function makeActiveCellNormal(){if(currentEditor){if(trigger(self.onBeforeCellEditorDestroy,{editor:currentEditor,grid:self}),currentEditor.destroy(),currentEditor=null,activeCellNode){var e=getDataItem(activeRow);if($(activeCellNode).removeClass(\"editable invalid\"),e){var t=columns[activeCell],n=getFormatter(activeRow,t),o=n(activeRow,activeCell,getDataItemValueForColumn(e,t),t,e,self);applyFormatResultToCellNode(o,activeCellNode),invalidatePostProcessingResults(activeRow)}}navigator.userAgent.toLowerCase().match(/msie/)&&clearTextSelection(),getEditorLock().deactivate(editController)}}function makeActiveCellEditable(e,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],o=getDataItem(activeRow);if(!1!==trigger(self.onBeforeEditCell,{row:activeRow,cell:activeCell,item:o,column:n,grid:self})){getEditorLock().activate(editController),$(activeCellNode).addClass(\"editable\");var r=e||getEditor(activeRow,activeCell);e||r.suppressClearOnEdit||(activeCellNode.innerHTML=\"\"),currentEditor=new r({grid:self,gridPosition:absBox($container[0]),position:absBox(activeCellNode),container:activeCellNode,column:n,item:o||{},commitChanges:commitEditAndSetFocus,cancelChanges:cancelEditAndSetFocus}),o&&(currentEditor.loadValue(o),t&&currentEditor.preClick&&currentEditor.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 t={top:e.offsetTop,left:e.offsetLeft,bottom:0,right:0,width:$(e).outerWidth(),height:$(e).outerHeight(),visible:!0};t.bottom=t.top+t.height,t.right=t.left+t.width;for(var n=e.offsetParent;(e=e.parentNode)!=document.body&&null!=e;)t.visible&&e.scrollHeight!=e.offsetHeight&&\"visible\"!=$(e).css(\"overflowY\")&&(t.visible=t.bottom>e.scrollTop&&t.top<e.scrollTop+e.clientHeight),t.visible&&e.scrollWidth!=e.offsetWidth&&\"visible\"!=$(e).css(\"overflowX\")&&(t.visible=t.right>e.scrollLeft&&t.left<e.scrollLeft+e.clientWidth),t.left-=e.scrollLeft,t.top-=e.scrollTop,e===n&&(t.left+=e.offsetLeft,t.top+=e.offsetTop,n=e.offsetParent),t.bottom=t.top+t.height,t.right=t.left+t.width;return t}function getActiveCellPosition(){return absBox(activeCellNode)}function getGridPosition(){return absBox($container[0])}function handleActiveCellPositionChange(){if(activeCellNode&&(trigger(self.onActiveCellPositionChanged,{grid:self}),currentEditor)){var e=getActiveCellPosition();currentEditor.show&&currentEditor.hide&&(e.visible?currentEditor.show():currentEditor.hide()),currentEditor.position&&currentEditor.position(e)}}function getCellEditor(){return currentEditor}function getActiveCell(){return activeCellNode?{row:activeRow,cell:activeCell,grid:self}:null}function getActiveCellNode(){return activeCellNode}function scrollRowIntoView(e,t){var n=e*options.rowHeight,o=(e+1)*options.rowHeight-viewportH+(viewportHasHScroll?scrollbarDimensions.height:0);(e+1)*options.rowHeight>scrollTop+viewportH+offset?(scrollTo(t?n:o),render()):e*options.rowHeight<scrollTop+offset&&(scrollTo(t?o:n),render())}function scrollRowToTop(e){scrollTo(e*options.rowHeight),render()}function scrollPage(e){var t=e*numVisibleRows;if(scrollTo((getRowFromPosition(scrollTop)+t)*options.rowHeight),render(),options.enableCellNavigation&&null!=activeRow){var n=activeRow+t,o=getDataLengthIncludingAddNew();o<=n&&(n=o-1),n<0&&(n=0);for(var r=0,i=null,l=activePosX;r<=activePosX;)canCellBeActive(n,r)&&(i=r),r+=getColspan(n,r);null!==i?(setActiveCellInternal(getCellNode(n,i)),activePosX=l):resetActiveCell()}}function navigatePageDown(){scrollPage(1)}function navigatePageUp(){scrollPage(-1)}function getColspan(e,t){var n=data.getItemMetadata&&data.getItemMetadata(e);if(!n||!n.columns)return 1;var o=n.columns[columns[t].id]||n.columns[t],r=o&&o.colspan;return r=\"*\"===r?columns.length-t:r||1}function findFirstFocusableCell(e){for(var t=0;t<columns.length;){if(canCellBeActive(e,t))return t;t+=getColspan(e,t)}return null}function findLastFocusableCell(e){for(var t=0,n=null;t<columns.length;)canCellBeActive(e,t)&&(n=t),t+=getColspan(e,t);return n}function gotoRight(e,t,n){if(t>=columns.length)return null;for(;(t+=getColspan(e,t))<columns.length&&!canCellBeActive(e,t););return t<columns.length?{row:e,cell:t,posX:t}:null}function gotoLeft(e,t,n){if(t<=0)return null;var o=findFirstFocusableCell(e);if(null===o||t<=o)return null;for(var r,i={row:e,cell:o,posX:o};;){if(!(r=gotoRight(i.row,i.cell,i.posX)))return null;if(r.cell>=t)return i;i=r}}function gotoDown(e,t,n){for(var o,r=getDataLengthIncludingAddNew();;){if(++e>=r)return null;for(o=t=0;t<=n;)t+=getColspan(e,o=t);if(canCellBeActive(e,o))return{row:e,cell:o,posX:n}}}function gotoUp(e,t,n){for(var o;;){if(--e<0)return null;for(o=t=0;t<=n;)t+=getColspan(e,o=t);if(canCellBeActive(e,o))return{row:e,cell:o,posX:n}}}function gotoNext(e,t,n){if(null==e&&null==t&&canCellBeActive(e=t=n=0,t))return{row:e,cell:t,posX:t};var o=gotoRight(e,t,n);if(o)return o;var r=null,i=getDataLengthIncludingAddNew();for(e===i-1&&e--;++e<i;)if(null!==(r=findFirstFocusableCell(e)))return{row:e,cell:r,posX:r};return null}function gotoPrev(e,t,n){if(null==e&&null==t&&(e=getDataLengthIncludingAddNew()-1,t=n=columns.length-1,canCellBeActive(e,t)))return{row:e,cell:t,posX:t};for(var o,r;!o&&!(o=gotoLeft(e,t,n));){if(--e<0)return null;t=0,null!==(r=findLastFocusableCell(e))&&(o={row:e,cell:r,posX:r})}return o}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 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}[e];var t={up:gotoUp,down:gotoDown,left:gotoLeft,right:gotoRight,prev:gotoPrev,next:gotoNext},n=t[e],o=n(activeRow,activeCell,activePosX);if(o){var r=o.row==getDataLength();return scrollCellIntoView(o.row,o.cell,!r),setActiveCellInternal(getCellNode(o.row,o.cell)),activePosX=o.posX,!0}return setActiveCellInternal(getCellNode(activeRow,activeCell)),!1}function getCellNode(e,t){return rowsCache[e]?(ensureCellNodesInRowsCache(e),rowsCache[e].cellNodesByColumnIdx[t]):null}function setActiveCell(e,t,n,o,r){initialized&&(e>getDataLength()||e<0||t>=columns.length||t<0||options.enableCellNavigation&&(scrollCellIntoView(e,t,!1),setActiveCellInternal(getCellNode(e,t),n,o,r)))}function canCellBeActive(e,t){if(!options.enableCellNavigation||e>=getDataLengthIncludingAddNew()||e<0||t>=columns.length||t<0)return!1;var n=data.getItemMetadata&&data.getItemMetadata(e);if(n&&\"boolean\"==typeof n.focusable)return n.focusable;var o=n&&n.columns;return o&&o[columns[t].id]&&\"boolean\"==typeof o[columns[t].id].focusable?o[columns[t].id].focusable:o&&o[t]&&\"boolean\"==typeof o[t].focusable?o[t].focusable:columns[t].focusable}function canCellBeSelected(e,t){if(e>=getDataLength()||e<0||t>=columns.length||t<0)return!1;var n=data.getItemMetadata&&data.getItemMetadata(e);if(n&&\"boolean\"==typeof n.selectable)return n.selectable;var o=n&&n.columns&&(n.columns[columns[t].id]||n.columns[t]);return o&&\"boolean\"==typeof o.selectable?o.selectable:columns[t].selectable}function gotoCell(e,t,n){if(initialized&&canCellBeActive(e,t)&&getEditorLock().commitCurrentEdit()){scrollCellIntoView(e,t,!1);var o=getCellNode(e,t);setActiveCellInternal(o,n||e===getDataLength()||options.autoEdit),currentEditor||setFocus()}}function commitCurrentEdit(){var e=getDataItem(activeRow),t=columns[activeCell];if(currentEditor){if(currentEditor.isValueChanged()){var n=currentEditor.validate();if(n.valid){if(activeRow<getDataLength()){var o={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:activeRow,cell:activeCell,item:e,grid:self})},undo:function(){this.editor.applyValue(e,this.prevSerializedValue),updateRow(this.row),trigger(self.onCellChange,{row:activeRow,cell:activeCell,item:e,grid:self})}};options.editCommandHandler?(makeActiveCellNormal(),options.editCommandHandler(e,t,o)):(o.execute(),makeActiveCellNormal())}else{var r={};currentEditor.applyValue(r,currentEditor.serializeValue()),makeActiveCellNormal(),trigger(self.onAddNewRow,{item:r,column:t,grid:self})}return!getEditorLock().isActive()}return $(activeCellNode).removeClass(\"invalid\"),$(activeCellNode).width(),$(activeCellNode).addClass(\"invalid\"),trigger(self.onValidationError,{editor:currentEditor,cellNode:activeCellNode,validationResults:n,row:activeRow,cell:activeCell,column:t,grid:self}),currentEditor.focus(),!1}makeActiveCellNormal()}return!0}function cancelCurrentEdit(){return makeActiveCellNormal(),!0}function rowsToRanges(e){for(var t=[],n=columns.length-1,o=0;o<e.length;o++)t.push(new Slick.Range(e[o],0,e[o],n));return t}function getSelectedRows(){if(!selectionModel)throw new Error(\"Selection model is not set\");return selectedRows}function setSelectedRows(e){if(!selectionModel)throw new Error(\"Selection model is not set\");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.3.4\",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,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,onColumnsResized: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,registerPlugin:registerPlugin,unregisterPlugin:unregisterPlugin,getColumns:getColumns,setColumns:setColumns,getColumnIndex:getColumnIndex,updateColumnHeader:updateColumnHeader,setSortColumn:setSortColumn,setSortColumns:setSortColumns,getSortColumns:getSortColumns,autosizeColumns:autosizeColumns,getOptions:getOptions,setOptions:setOptions,getData:getData,getDataLength:getDataLength,getDataItem:getDataItem,setData:setData,getSelectionModel:getSelectionModel,setSelectionModel:setSelectionModel,getSelectedRows:getSelectedRows,setSelectedRows:setSelectedRows,getContainerNode:getContainerNode,updatePagingStatusFromView:updatePagingStatusFromView,render:render,invalidate:invalidate,invalidateRow:invalidateRow,invalidateRows:invalidateRows,invalidateAllRows:invalidateAllRows,updateCell:updateCell,updateRow:updateRow,getViewport:getVisibleRange,getRenderedRange:getRenderedRange,resizeCanvas:resizeCanvas,updateRowCount:updateRowCount,scrollRowIntoView:scrollRowIntoView,scrollRowToTop:scrollRowToTop,scrollCellIntoView:scrollCellIntoView,scrollColumnIntoView:scrollColumnIntoView,getCanvasNode:getCanvasNode,getUID:getUID,getHeaderColumnWidthDiff:getHeaderColumnWidthDiff,getScrollbarDimensions:getScrollbarDimensions,getHeadersWidth:getHeadersWidth,getCanvasWidth:getCanvasWidth,focus:setFocus,getCellFromPoint:getCellFromPoint,getCellFromEvent:getCellFromEvent,getActiveCell:getActiveCell,setActiveCell:setActiveCell,getActiveCellNode:getActiveCellNode,getActiveCellPosition:getActiveCellPosition,resetActiveCell:resetActiveCell,editActiveCell:makeActiveCellEditable,getCellEditor:getCellEditor,getCellNode:getCellNode,getCellNodeBox:getCellNodeBox,canCellBeSelected:canCellBeSelected,canCellBeActive:canCellBeActive,navigatePrev:navigatePrev,navigateNext:navigateNext,navigateUp:navigateUp,navigateDown:navigateDown,navigateLeft:navigateLeft,navigateRight:navigateRight,navigatePageUp:navigatePageUp,navigatePageDown:navigatePageDown,gotoCell:gotoCell,getTopPanel:getTopPanel,setTopPanelVisibility:setTopPanelVisibility,getPreHeaderPanel:getPreHeaderPanel,setPreHeaderPanelVisibility:setPreHeaderPanelVisibility,setHeaderRowVisibility:setHeaderRowVisibility,getHeaderRow:getHeaderRow,getHeaderRowColumn:getHeaderRowColumn,setFooterRowVisibility:setFooterRowVisibility,getFooterRow:getFooterRow,getFooterRowColumn:getFooterRowColumn,getGridPosition:getGridPosition,flashCell:flashCell,addCellCssStyles:addCellCssStyles,setCellCssStyles:setCellCssStyles,removeCellCssStyles:removeCellCssStyles,getCellCssStyles:getCellCssStyles,init:finishInitialization,destroy:destroy,getEditorLock:getEditorLock,getEditController:getEditController}),init()}module.exports={Grid:SlickGrid}},448:function(e,t,n){t.exports=\"undefined\"!=typeof $?$:e(441)},449:function(e,t,n){var o=e(450),r=o.template;function i(e,t,n){return r(e,t,n)}i._=o,t.exports=i,\"function\"==typeof define&&define.amd?define(function(){return i}):\"undefined\"==typeof window&&\"undefined\"==typeof navigator||(window.UnderscoreTemplate=i)},450:function(e,t,n){\n      //     (c) 2009-2013 Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors\n      //     Underscore may be freely distributed under the MIT license.\n      var l={},o=Array.prototype,r=Object.prototype,i=o.slice,s=r.toString,a=r.hasOwnProperty,c=o.forEach,u=Object.keys,d=Array.isArray,p=function(){},f=p.each=p.forEach=function(e,t,n){if(null!=e)if(c&&e.forEach===c)e.forEach(t,n);else if(e.length===+e.length){for(var o=0,r=e.length;o<r;o++)if(t.call(n,e[o],o,e)===l)return}else for(var i=p.keys(e),o=0,r=i.length;o<r;o++)if(t.call(n,e[i[o]],i[o],e)===l)return};p.keys=u||function(e){if(e!==Object(e))throw new TypeError(\"Invalid object\");var t=[];for(var n in e)p.has(e,n)&&t.push(n);return t},p.defaults=function(n){return f(i.call(arguments,1),function(e){if(e)for(var t in e)void 0===n[t]&&(n[t]=e[t])}),n},p.isArray=d||function(e){return\"[object Array]\"===s.call(e)},p.has=function(e,t){if(!p.isArray(t))return null!=e&&a.call(e,t);for(var n=t.length,o=0;o<n;o++){var r=t[o];if(null==e||!a.call(e,r))return!1;e=e[r]}return!!n};var h={escape:{\"&\":\"&amp;\",\"<\":\"&lt;\",\">\":\"&gt;\",'\"':\"&quot;\",\"'\":\"&#x27;\"}},g={escape:new RegExp(\"[\"+p.keys(h.escape).join(\"\")+\"]\",\"g\")};p.each([\"escape\"],function(t){p[t]=function(e){return null==e?\"\":(\"\"+e).replace(g[t],function(e){return h[t][e]})}}),p.templateSettings={evaluate:/<%([\\s\\S]+?)%>/g,interpolate:/<%=([\\s\\S]+?)%>/g,escape:/<%-([\\s\\S]+?)%>/g};var m=/(.)^/,v={\"'\":\"'\",\"\\\\\":\"\\\\\",\"\\r\":\"r\",\"\\n\":\"n\",\"\\t\":\"t\",\"\\u2028\":\"u2028\",\"\\u2029\":\"u2029\"},w=/\\\\|'|\\r|\\n|\\t|\\u2028|\\u2029/g;p.template=function(i,e,t){var n;t=p.defaults({},t,p.templateSettings);var o=new RegExp([(t.escape||m).source,(t.interpolate||m).source,(t.evaluate||m).source].join(\"|\")+\"|$\",\"g\"),l=0,s=\"__p+='\";i.replace(o,function(e,t,n,o,r){return s+=i.slice(l,r).replace(w,function(e){return\"\\\\\"+v[e]}),t&&(s+=\"'+\\n((__t=(\"+t+\"))==null?'':_.escape(__t))+\\n'\"),n&&(s+=\"'+\\n((__t=(\"+n+\"))==null?'':__t)+\\n'\"),o&&(s+=\"';\\n\"+o+\"\\n__p+='\"),l=r+e.length,e}),s+=\"';\\n\",t.variable||(s=\"with(obj||{}){\\n\"+s+\"}\\n\"),s=\"var __t,__p='',__j=Array.prototype.join,print=function(){__p+=__j.call(arguments,'');};\\n\"+s+\"return __p;\\n\";try{n=new Function(t.variable||\"obj\",\"_\",s)}catch(e){throw e.source=s,e}if(e)return n(e,p);var r=function(e){return n.call(this,e,p)};return r.source=\"function(\"+(t.variable||\"obj\")+\"){\\n\"+s+\"}\",r},t.exports=p}},0,0)}(a.Bokeh)}(this);\n      //# sourceMappingURL=bokeh-tables.min.js.map\n      /* END bokeh-tables.min.js */\n    },\n    \n    function(Bokeh) {\n      /* BEGIN bokeh-gl.min.js */\n      /*!\n       * Copyright (c) 2012 - 2018, 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(t,e){var a;a=t.Bokeh,function(t,e,n){if(null!=a)return a.register_plugin(t,{\"models/glyphs/webgl/base\":451,\"models/glyphs/webgl/index\":452,\"models/glyphs/webgl/line.frag\":453,\"models/glyphs/webgl/line\":454,\"models/glyphs/webgl/line.vert\":455,\"models/glyphs/webgl/main\":456,\"models/glyphs/webgl/markers.frag\":457,\"models/glyphs/webgl/markers\":458,\"models/glyphs/webgl/markers.vert\":459},456);throw new Error(\"Cannot find Bokeh. You have to load it prior to loading plugins.\")}({451:function(t,e,n){var g=t(27),y=t(14),a=function(){function t(t,e){this.gl=t,this.glyph=e,this.nvertices=0,this.size_changed=!1,this.data_changed=!1,this.visuals_changed=!1,this.init()}return t.prototype.set_data_changed=function(t){t!=this.nvertices&&(this.nvertices=t,this.size_changed=!0),this.data_changed=!0},t.prototype.set_visuals_changed=function(){this.visuals_changed=!0},t.prototype.render=function(t,e,n){var a,s=[0,1,2],i=s[0],r=s[1],o=s[2],l=1,_=1,h=this.glyph.renderer.map_to_screen([i*l,r*l,o*l],[i*_,r*_,o*_]),c=h[0],f=h[1];if(isNaN(c[0]+c[1]+c[2]+f[0]+f[1]+f[2]))return y.logger.warn(\"WebGL backend (\"+this.glyph.model.type+\"): falling back to canvas rendering\"),!1;if(l=100/Math.min(Math.max(Math.abs(c[1]-c[0]),1e-12),1e12),_=100/Math.min(Math.max(Math.abs(f[1]-f[0]),1e-12),1e12),a=this.glyph.renderer.map_to_screen([i*l,r*l,o*l],[i*_,r*_,o*_]),c=a[0],f=a[1],1e-6<Math.abs(c[1]-c[0]-(c[2]-c[1]))||1e-6<Math.abs(f[1]-f[0]-(f[2]-f[1])))return y.logger.warn(\"WebGL backend (\"+this.glyph.model.type+\"): falling back to canvas rendering\"),!1;var d=[(c[1]-c[0])/l,(f[1]-f[0])/_],u=d[0],g=d[1],p=this.glyph.renderer.plot_view.gl.canvas,v=p.width,m=p.height,x={pixel_ratio:this.glyph.renderer.plot_view.canvas.pixel_ratio,width:v,height:m,dx:c[0]/u,dy:f[0]/g,sx:u,sy:g};return this.draw(e,n,x),!0},t}();function p(t,e){for(var n=new Float32Array(t),a=0,s=t;a<s;a++)n[a]=e;return n}function v(t,e){return void 0!==t[e].spec.value}n.BaseGLGlyph=a,n.line_width=function(t){return t<2&&(t=Math.sqrt(2*t)),t},n.fill_array_with_float=p,n.fill_array_with_vec=function(t,e,n){for(var a=new Float32Array(t*e),s=0;s<t;s++)for(var i=0;i<e;i++)a[s*e+i]=n[i];return a},n.visual_prop_is_singular=v,n.attach_float=function(t,e,n,a,s,i){if(s.doit)if(v(s,i))e.used=!1,t.set_attribute(n,\"float\",s[i].value());else{e.used=!0;var r=new Float32Array(s.cache[i+\"_array\"]);e.set_size(4*a),e.set_data(0,r),t.set_attribute(n,\"float\",e)}else e.used=!1,t.set_attribute(n,\"float\",[0])},n.attach_color=function(t,e,n,a,s,i){var r,o=i+\"_color\",l=i+\"_alpha\";if(s.doit)if(v(s,o)&&v(s,l))e.used=!1,r=g.color2rgba(s[o].value(),s[l].value()),t.set_attribute(n,\"vec4\",r);else{var _=void 0,h=void 0;e.used=!0,h=v(s,o)?function(){for(var t=[],e=0,n=a;e<n;e++)t.push(s[o].value());return t}():s.cache[o+\"_array\"],_=v(s,l)?p(a,s[l].value()):s.cache[l+\"_array\"];for(var c=new Float32Array(4*a),f=0,d=a;f<d;f++){r=g.color2rgba(h[f],_[f]);for(var u=0;u<4;u++)c[4*f+u]=r[u]}e.set_size(4*a*4),e.set_data(0,c),t.set_attribute(n,\"vec4\",e)}else e.used=!1,t.set_attribute(n,\"vec4\",[0,0,0,0])}},452:function(t,e,n){var a=t(391);a.__exportStar(t(454),n),a.__exportStar(t(458),n)},453:function(t,e,n){n.fragment_shader=\"\\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\"},454:function(t,e,n){var a=t(391),s=t(460),i=t(451),r=t(455),o=t(453),l=t(27),_=function(){function t(t){this._atlas={},this._index=0,this._width=256,this._height=256,this.tex=new s.Texture2D(t),this.tex.set_wrapping(t.REPEAT,t.REPEAT),this.tex.set_interpolation(t.NEAREST,t.NEAREST),this.tex.set_size([this._height,this._width],t.RGBA),this.tex.set_data([0,0],[this._height,this._width],new Uint8Array(this._height*this._width*4)),this.get_atlas_data([1])}return t.prototype.get_atlas_data=function(t){var e=t.join(\"-\"),n=this._atlas[e];if(void 0===n){var a=this.make_pattern(t),s=a[0],i=a[1];this.tex.set_data([this._index,0],[1,this._width],new Uint8Array(s.map(function(t){return t+10}))),this._atlas[e]=[this._index/this._height,i],this._index+=1}return this._atlas[e]},t.prototype.make_pattern=function(t){1<t.length&&t.length%2&&(t=t.concat(t));for(var e=0,n=0,a=t;n<a.length;n++){var s=a[n];e+=s}for(var i=[],r=0,o=0,l=t.length+2;o<l;o+=2){var _=Math.max(1e-4,t[o%t.length]),h=Math.max(1e-4,t[(o+1)%t.length]);i.push(r,r+_),r+=_+h}for(var c=this._width,f=new Float32Array(4*c),o=0,l=c;o<l;o++){for(var d=void 0,u=void 0,g=void 0,p=e*o/(c-1),v=0,m=1e16,x=0,y=i.length;x<y;x++){var b=Math.abs(i[x]-p);b<m&&(v=x,m=b)}v%2==0?(g=p<=i[v]?1:0,u=i[v],d=i[v+1]):(g=p>i[v]?-1:0,u=i[v-1],d=i[v]),f[4*o+0]=i[v],f[4*o+1]=g,f[4*o+2]=u,f[4*o+3]=d}return[f,e]},t}(),h={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},f=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),e.prototype.init=function(){var t=this.gl;this._scale_aspect=0;var e=r.vertex_shader,n=o.fragment_shader;this.prog=new s.Program(t),this.prog.set_shaders(e,n),this.index_buffer=new s.IndexBuffer(t),this.vbo_position=new s.VertexBuffer(t),this.vbo_tangents=new s.VertexBuffer(t),this.vbo_segment=new s.VertexBuffer(t),this.vbo_angles=new s.VertexBuffer(t),this.vbo_texcoord=new s.VertexBuffer(t),this.dash_atlas=new _(t)},e.prototype.draw=function(t,e,n){var a=e.glglyph;if(a.data_changed){if(!isFinite(n.dx)||!isFinite(n.dy))return;a._baked_offset=[n.dx,n.dy],a._set_data(),a.data_changed=!1}this.visuals_changed&&(this._set_visuals(),this.visuals_changed=!1);var s=n.sx,i=n.sy,r=Math.sqrt(s*s+i*i);s/=r,i/=r,Math.abs(this._scale_aspect-i/s)>Math.abs(.001*this._scale_aspect)&&(a._update_scale(s,i),this._scale_aspect=i/s),this.prog.set_attribute(\"a_position\",\"vec2\",a.vbo_position),this.prog.set_attribute(\"a_tangents\",\"vec4\",a.vbo_tangents),this.prog.set_attribute(\"a_segment\",\"vec2\",a.vbo_segment),this.prog.set_attribute(\"a_angles\",\"vec2\",a.vbo_angles),this.prog.set_attribute(\"a_texcoord\",\"vec2\",a.vbo_texcoord),this.prog.set_uniform(\"u_length\",\"float\",[a.cumsum]),this.prog.set_texture(\"u_dash_atlas\",this.dash_atlas.tex);var o=a._baked_offset;if(this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[n.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[n.width,n.height]),this.prog.set_uniform(\"u_offset\",\"vec2\",[n.dx-o[0],n.dy-o[1]]),this.prog.set_uniform(\"u_scale_aspect\",\"vec2\",[s,i]),this.prog.set_uniform(\"u_scale_length\",\"float\",[r]),this.I_triangles=a.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);for(var l=this.I_triangles.length,_=64008,h=[],c=0,f=Math.ceil(l/_);c<f;c++)h.push([]);for(var c=0,f=t.length;c<f;c++){var d=t[c]%_,u=Math.floor(t[c]/_);h[u].push(d)}for(var u=0,f=h.length;u<f;u++){var g=new Uint16Array(h[u]),p=u*_*4;0!==g.length&&(this.prog.set_attribute(\"a_position\",\"vec2\",a.vbo_position,0,2*p),this.prog.set_attribute(\"a_tangents\",\"vec4\",a.vbo_tangents,0,4*p),this.prog.set_attribute(\"a_segment\",\"vec2\",a.vbo_segment,0,2*p),this.prog.set_attribute(\"a_angles\",\"vec2\",a.vbo_angles,0,2*p),this.prog.set_attribute(\"a_texcoord\",\"vec2\",a.vbo_texcoord,0,2*p),this.index_buffer.set_size(2*g.length),this.index_buffer.set_data(0,g),this.prog.draw(this.gl.TRIANGLES,this.index_buffer))}}},e.prototype._set_data=function(){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)},e.prototype._set_visuals=function(){var t,e=l.color2rgba(this.glyph.visuals.line.line_color.value(),this.glyph.visuals.line.line_alpha.value()),n=c[this.glyph.visuals.line.line_cap.value()],a=h[this.glyph.visuals.line.line_join.value()];this.prog.set_uniform(\"u_color\",\"vec4\",e),this.prog.set_uniform(\"u_linewidth\",\"float\",[this.glyph.visuals.line.line_width.value()]),this.prog.set_uniform(\"u_antialias\",\"float\",[.9]),this.prog.set_uniform(\"u_linecaps\",\"vec2\",[n,n]),this.prog.set_uniform(\"u_linejoin\",\"float\",[a]),this.prog.set_uniform(\"u_miter_limit\",\"float\",[10]);var s=this.glyph.visuals.line.line_dash.value(),i=0,r=1;s.length&&(t=this.dash_atlas.get_atlas_data(s),i=t[0],r=t[1]),this.prog.set_uniform(\"u_dash_index\",\"float\",[i]),this.prog.set_uniform(\"u_dash_phase\",\"float\",[this.glyph.visuals.line.line_dash_offset.value()]),this.prog.set_uniform(\"u_dash_period\",\"float\",[r]),this.prog.set_uniform(\"u_dash_caps\",\"vec2\",[n,n]),this.prog.set_uniform(\"u_closed\",\"float\",[0])},e.prototype._bake=function(){for(var t,e,n,a,s,i,r,o,l=this.nvertices,_=new Float64Array(this.glyph._x),h=new Float64Array(this.glyph._y),c=r=new Float32Array(2*l),f=new Float32Array(2*l),d=o=new Float32Array(4*l),u=0,g=l;u<g;u++)c[2*u+0]=_[u]+this._baked_offset[0],c[2*u+1]=h[u]+this._baked_offset[1];this.tangents=e=new Float32Array(2*l-2);for(var u=0,g=l-1;u<g;u++)e[2*u+0]=r[2*(u+1)+0]-r[2*u+0],e[2*u+1]=r[2*(u+1)+1]-r[2*u+1];for(var u=0,g=l-1;u<g;u++)d[4*(u+1)+0]=e[2*u+0],d[4*(u+1)+1]=e[2*u+1],d[4*u+2]=e[2*u+0],d[4*u+3]=e[2*u+1];d[0]=e[0],d[1]=e[1],d[4*(l-1)+2]=e[2*(l-2)+0],d[4*(l-1)+3]=e[2*(l-2)+1];for(var p=new Float32Array(l),u=0,g=l;u<g;u++)p[u]=Math.atan2(o[4*u+0]*o[4*u+3]-o[4*u+1]*o[4*u+2],o[4*u+0]*o[4*u+2]+o[4*u+1]*o[4*u+3]);for(var u=0,g=l-1;u<g;u++)f[2*u+0]=p[u],f[2*u+1]=p[u+1];var v=4*l-4;this.V_position=a=new Float32Array(2*v),this.V_angles=n=new Float32Array(2*v),this.V_tangents=s=new Float32Array(4*v),this.V_texcoord=i=new Float32Array(2*v);for(var u=0,g=l;u<g;u++)for(var m=0;m<4;m++){for(var x=0;x<2;x++)a[2*(4*u+m-2)+x]=c[2*u+x],n[2*(4*u+m)+x]=f[2*u+x];for(var x=0;x<4;x++)s[4*(4*u+m-2)+x]=d[4*u+x]}for(var u=0,g=l;u<g;u++)i[2*(4*u+0)+0]=-1,i[2*(4*u+1)+0]=-1,i[2*(4*u+2)+0]=1,i[2*(4*u+3)+0]=1,i[2*(4*u+0)+1]=-1,i[2*(4*u+1)+1]=1,i[2*(4*u+2)+1]=-1,i[2*(4*u+3)+1]=1;var y=6*(l-1);this.I_triangles=t=new Uint32Array(y);for(var u=0,g=l;u<g;u++)t[6*u+0]=0+4*u,t[6*u+1]=1+4*u,t[6*u+2]=3+4*u,t[6*u+3]=2+4*u,t[6*u+4]=0+4*u,t[6*u+5]=3+4*u},e.prototype._update_scale=function(t,e){var n,a=this.nvertices,s=4*a-4,i=this.tangents,r=new Float32Array(a-1),o=new Float32Array(2*a);this.V_segment=n=new Float32Array(2*s);for(var l=0,_=a-1;l<_;l++)r[l]=Math.sqrt(Math.pow(i[2*l+0]*t,2)+Math.pow(i[2*l+1]*e,2));for(var h=0,l=0,_=a-1;l<_;l++)h+=r[l],o[2*(l+1)+0]=h,o[2*l+1]=h;for(var l=0,_=a;l<_;l++)for(var c=0;c<4;c++)for(var f=0;f<2;f++)n[2*(4*l+c)+f]=o[2*l+f];this.cumsum=h,this.vbo_segment.set_size(4*this.V_segment.length),this.vbo_segment.set_data(0,this.V_segment)},e}(i.BaseGLGlyph);n.LineGLGlyph=f},455:function(t,e,n){n.vertex_shader=\"\\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 + u_offset) * abs_scale;\\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\"},456:function(t,e,n){t(452)},457:function(t,e,n){n.fragment_shader=function(t){return\"\\nprecision mediump float;\\nconst float SQRT_2 = 1.4142135623730951;\\nconst float PI = 3.14159265358979323846264;\\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\"+t+\"\\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    //gl_FragColor.rgb *= gl_FragColor.a;  // pre-multiply alpha\\n}\\n\"},n.circle=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return length(P) - size/2.0;\\n}\\n\",n.square=\"\\nfloat marker(vec2 P, float size)\\n{\\n    return max(abs(P.x), abs(P.y)) - size/2.0;\\n}\\n\",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\",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\",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\",n.invertedtriangle=\"\\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\",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',n.circlecross=\"\\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\",n.squarecross=\"\\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\",n.diamondcross=\"\\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\",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',n.circlex='\\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',n.squarex=\"\\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\",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'},458:function(t,e,n){var a=t(391),s=t(460),i=t(451),r=t(459),o=t(457),u=t(120),g=t(22),p=t(14),l=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),e.prototype.init=function(){var t=this.gl,e=r.vertex_shader,n=o.fragment_shader(this._marker_code);this.prog=new s.Program(t),this.prog.set_shaders(e,n),this.vbo_x=new s.VertexBuffer(t),this.prog.set_attribute(\"a_x\",\"float\",this.vbo_x),this.vbo_y=new s.VertexBuffer(t),this.prog.set_attribute(\"a_y\",\"float\",this.vbo_y),this.vbo_s=new s.VertexBuffer(t),this.prog.set_attribute(\"a_size\",\"float\",this.vbo_s),this.vbo_a=new s.VertexBuffer(t),this.prog.set_attribute(\"a_angle\",\"float\",this.vbo_a),this.vbo_linewidth=new s.VertexBuffer(t),this.vbo_fg_color=new s.VertexBuffer(t),this.vbo_bg_color=new s.VertexBuffer(t),this.index_buffer=new s.IndexBuffer(t)},e.prototype.draw=function(t,e,n){var a=e.glglyph,s=a.nvertices;if(a.data_changed){if(!isFinite(n.dx)||!isFinite(n.dy))return;a._baked_offset=[n.dx,n.dy],a._set_data(s),a.data_changed=!1}else this.glyph instanceof u.CircleView&&null!=this.glyph._radius&&(null==this.last_trans||n.sx!=this.last_trans.sx||n.sy!=this.last_trans.sy)&&(this.last_trans=n,this.vbo_s.set_data(0,new Float32Array(g.map(this.glyph.sradius,function(t){return 2*t}))));this.visuals_changed&&(this._set_visuals(s),this.visuals_changed=!1);var i=a._baked_offset;if(this.prog.set_uniform(\"u_pixel_ratio\",\"float\",[n.pixel_ratio]),this.prog.set_uniform(\"u_canvas_size\",\"vec2\",[n.width,n.height]),this.prog.set_uniform(\"u_offset\",\"vec2\",[n.dx-i[0],n.dy-i[1]]),this.prog.set_uniform(\"u_scale\",\"vec2\",[n.sx,n.sy]),this.prog.set_attribute(\"a_x\",\"float\",a.vbo_x),this.prog.set_attribute(\"a_y\",\"float\",a.vbo_y),this.prog.set_attribute(\"a_size\",\"float\",a.vbo_s),this.prog.set_attribute(\"a_angle\",\"float\",a.vbo_a),0!=t.length)if(t.length===s)this.prog.draw(this.gl.POINTS,[0,s]);else if(s<65535){var r=window.navigator.userAgent;0<r.indexOf(\"MSIE \")+r.indexOf(\"Trident/\")+r.indexOf(\"Edge/\")&&p.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{for(var o=[],l=0,_=Math.ceil(s/64e3);l<_;l++)o.push([]);for(var l=0,_=t.length;l<_;l++){var h=t[l]%64e3,c=Math.floor(t[l]/64e3);o[c].push(h)}for(var c=0,_=o.length;c<_;c++){var f=new Uint16Array(o[c]),d=64e3*c*4;0!==f.length&&(this.prog.set_attribute(\"a_x\",\"float\",a.vbo_x,0,d),this.prog.set_attribute(\"a_y\",\"float\",a.vbo_y,0,d),this.prog.set_attribute(\"a_size\",\"float\",a.vbo_s,0,d),this.prog.set_attribute(\"a_angle\",\"float\",a.vbo_a,0,d),this.vbo_linewidth.used&&this.prog.set_attribute(\"a_linewidth\",\"float\",this.vbo_linewidth,0,d),this.vbo_fg_color.used&&this.prog.set_attribute(\"a_fg_color\",\"vec4\",this.vbo_fg_color,0,4*d),this.vbo_bg_color.used&&this.prog.set_attribute(\"a_bg_color\",\"vec4\",this.vbo_bg_color,0,4*d),this.index_buffer.set_size(2*f.length),this.index_buffer.set_data(0,f),this.prog.draw(this.gl.POINTS,this.index_buffer))}}},e.prototype._set_data=function(t){var e=4*t;this.vbo_x.set_size(e),this.vbo_y.set_size(e),this.vbo_a.set_size(e),this.vbo_s.set_size(e);for(var n=new Float64Array(this.glyph._x),a=new Float64Array(this.glyph._y),s=0,i=t;s<i;s++)n[s]+=this._baked_offset[0],a[s]+=this._baked_offset[1];this.vbo_x.set_data(0,new Float32Array(n)),this.vbo_y.set_data(0,new Float32Array(a)),null!=this.glyph._angle&&this.vbo_a.set_data(0,new Float32Array(this.glyph._angle)),this.glyph instanceof u.CircleView&&null!=this.glyph._radius?this.vbo_s.set_data(0,new Float32Array(g.map(this.glyph.sradius,function(t){return 2*t}))):this.vbo_s.set_data(0,new Float32Array(this.glyph._size))},e.prototype._set_visuals=function(t){i.attach_float(this.prog,this.vbo_linewidth,\"a_linewidth\",t,this.glyph.visuals.line,\"line_width\"),i.attach_color(this.prog,this.vbo_fg_color,\"a_fg_color\",t,this.glyph.visuals.line,\"line\"),i.attach_color(this.prog,this.vbo_bg_color,\"a_bg_color\",t,this.glyph.visuals.fill,\"fill\"),this.prog.set_uniform(\"u_antialias\",\"float\",[.8])},e}(i.BaseGLGlyph);function _(n){return function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return a.__extends(e,t),Object.defineProperty(e.prototype,\"_marker_code\",{get:function(){return n},enumerable:!0,configurable:!0}),e}(l)}n.MarkerGLGlyph=l;var h=t(457);n.CircleGLGlyph=_(h.circle),n.SquareGLGlyph=_(h.square),n.DiamondGLGlyph=_(h.diamond),n.TriangleGLGlyph=_(h.triangle),n.InvertedTriangleGLGlyph=_(h.invertedtriangle),n.HexGLGlyph=_(h.hex),n.CrossGLGlyph=_(h.cross),n.CircleCrossGLGlyph=_(h.circlecross),n.SquareCrossGLGlyph=_(h.squarecross),n.DiamondCrossGLGlyph=_(h.diamondcross),n.XGLGlyph=_(h.x),n.CircleXGLGlyph=_(h.circlex),n.SquareXGLGlyph=_(h.squarex),n.AsteriskGLGlyph=_(h.asterisk)},459:function(t,e,n){n.vertex_shader=\"\\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_x;\\nattribute float a_y;\\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    // Calculate position - the -0.5 is to correct for canvas origin\\n    vec2 pos = (vec2(a_x, a_y) + u_offset) * u_scale; // 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\"},460:function(t,e,n){var a,s,o,i,r,p,d,l,u,x=function(t,e){return Array.isArray(t)&&Array.isArray(e)?t.concat(e):t+e},g=function(t,e){if(null==e);else{if(Array.isArray(e)){for(var n=0;n<e.length;n++)if(v(t,e[n]))return!0;return!1}if(e.constructor===Object){for(var a in e)if(t==a)return!0;return!1}if(e.constructor==String)return 0<=e.indexOf(t)}var s=Error(\"Not a container: \"+e);throw s.name=\"TypeError\",s},v=function t(e,n){if(null==e||null==n);else{if(Array.isArray(e)&&Array.isArray(n)){for(var a=0,s=e.length==n.length;s&&a<e.length;)s=t(e[a],n[a]),a+=1;return s}if(e.constructor===Object&&n.constructor===Object){var i=Object.keys(e),r=Object.keys(n);i.sort(),r.sort();for(var o,a=0,s=t(i,r);s&&a<i.length;)o=i[a],s=t(e[o],n[o]),a+=1;return s}}return e==n},_=function(t,e){if(void 0===t||\"undefined\"!=typeof window&&window===t||\"undefined\"!=typeof global&&global===t)throw\"Class constructor is called as a function.\";for(var n in t)void 0!==Object[n]||\"function\"!=typeof t[n]||t[n].nobind||(t[n]=t[n].bind(t));t.__init__&&t.__init__.apply(t,e)},m=function(t,e){if((\"number\"==typeof t)+(\"number\"==typeof e)===1){if(t.constructor===String)return h.call(t,e);if(e.constructor===String)return h.call(e,t);if(Array.isArray(e)){var n=t;t=e,e=n}if(Array.isArray(t)){for(var a=[],s=0;s<e;s++)a=a.concat(t);return a}}return t*e},y=function(t){return null===t||\"object\"!=typeof t?t:void 0!==t.length?!!t.length&&t:void 0!==t.byteLength?!!t.byteLength&&t:t.constructor!==Object||!!Object.getOwnPropertyNames(t).length&&t},b=function(t){if(!Array.isArray(this))return this.append.apply(this,arguments);this.push(t)},w=function(t,e){return this.constructor!==Object?this.get.apply(this,arguments):void 0!==this[t]?this[t]:void 0!==e?e:null},P=function(t){if(!Array.isArray(this))return this.remove.apply(this,arguments);for(var e=0;e<this.length;e++)if(v(this[e],t))return void this.splice(e,1);var n=Error(t);throw n.name=\"ValueError\",n},h=function(t){if(this.repeat)return this.repeat(t);if(t<1)return\"\";for(var e=\"\",n=this.valueOf();1<t;)1&t&&(e+=n),t>>=1,n+=n;return e+n},c=function(t){return this.constructor!==String?this.startswith.apply(this,arguments):0==this.indexOf(t)};u=window.console,l=function(t,e){var n,a,s,i,r,o,l;for(e=void 0===e?\"periodic check\":e,i=[];a=t.getError(),!(v(a,t.NO_ERROR)||y(i)&&v(a,i[i.length-1]));)b.call(i,a);if(i.length){for(r=\"\",\"object\"!=typeof(o=i)||Array.isArray(o)||(o=Object.keys(o)),l=0;l<o.length;l+=1)n=o[l],r=x(r,n);throw(s=new Error(\"RuntimeError:OpenGL got errors (\"+e+\"): \"+r)).name=\"RuntimeError\",s}return null},(s=function(){_(this,arguments)}).prototype._base_class=Object,s.prototype._class_name=\"GlooObject\",s.prototype.__init__=function(t){if(this._gl=t,this.handle=null,this._create(),null===this.handle)throw\"AssertionError: this.handle !== null\";return null},s.prototype._create=function(){var t;throw(t=new Error(\"NotImplementedError:\")).name=\"NotImplementedError\",t},((i=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,i.prototype._class_name=\"Program\",i.prototype.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\"},i.prototype.ATYPEMAP={float:\"vertexAttrib1f\",vec2:\"vertexAttrib2f\",vec3:\"vertexAttrib3f\",vec4:\"vertexAttrib4f\"},i.prototype.ATYPEINFO={float:[1,5126],vec2:[2,5126],vec3:[3,5126],vec4:[4,5126]},i.prototype._create=function(){return this.handle=this._gl.createProgram(),this.locations={},this._unset_variables=[],this._validated=!1,this._samplers={},this._attributes={},this._known_invalid=[],null},i.prototype.delete=function(){return this._gl.deleteProgram(this.handle),null},i.prototype.activate=function(){return this._gl.useProgram(this.handle),null},i.prototype.deactivate=function(){return this._gl.useProgram(0),null},i.prototype.set_shaders=function(t,e){var n,a,s,i,r,o,l,_,h,c,f,d,u;for(o=this._gl,this._linked=!1,u=o.createShader(o.VERTEX_SHADER),r=o.createShader(o.FRAGMENT_SHADER),f=[[t,u,\"vertex\"],[e,r,\"fragment\"]],_=0;_<2;_+=1)if(n=(c=f[_])[0],l=c[1],d=c[2],o.shaderSource(l,n),o.compileShader(l),h=o.getShaderParameter(l,o.COMPILE_STATUS),!y(h))throw i=o.getShaderInfoLog(l),(s=new Error(\"RuntimeError:\"+x(\"errors in \"+d+\" shader:\\n\",i))).name=\"RuntimeError\",s;if(o.attachShader(this.handle,u),o.attachShader(this.handle,r),o.linkProgram(this.handle),!y(o.getProgramParameter(this.handle,o.LINK_STATUS)))throw(a=new Error(\"RuntimeError:Program link error:\\n\"+o.getProgramInfoLog(this.handle))).name=\"RuntimeError\",a;return this._unset_variables=this._get_active_attributes_and_uniforms(),o.detachShader(this.handle,u),o.detachShader(this.handle,r),o.deleteShader(u),o.deleteShader(r),this._known_invalid=[],this._linked=!0,null},i.prototype._get_active_attributes_and_uniforms=function(){var s,t,e,n,a,i,r,o,l,_,h,c,f,d,u,g,p,v,m;for(o=this._gl,this.locations={},d=new window.RegExp(\"(\\\\w+)\\\\s*(\\\\[(\\\\d+)\\\\])\\\\s*\"),a=o.getProgramParameter(this.handle,o.ACTIVE_UNIFORMS),t=o.getProgramParameter(this.handle,o.ACTIVE_ATTRIBUTES),v=[],\"object\"!=typeof(g=[[s=[],t,o.getActiveAttrib,o.getAttribLocation],[v,a,o.getActiveUniform,o.getUniformLocation]])||Array.isArray(g)||(g=Object.keys(g)),p=0;p<g.length;p+=1)for(m=g[p],e=(u=m)[0],n=u[1],i=u[2],r=u[3],l=0;l<n;l+=1){if(_=i.call(o,this.handle,l),f=_.name,c=f.match(d),y(c))for(f=c[1],h=0;h<_.size;h+=1)b.call(e,[f+\"[\"+h+\"]\",_.type]);else b.call(e,[f,_.type]);this.locations[f]=r.call(o,this.handle,f)}return x(function(){var t,e,n,a=[];for(\"object\"!=typeof(e=s)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(t[0]);return a}.apply(this),function(){var t,e,n,a=[];for(\"object\"!=typeof(e=v)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(t[0]);return a}.apply(this))},i.prototype.set_texture=function(t,e){var n,a,s;if(!y(this._linked))throw(n=new Error(\"RuntimeError:Cannot set uniform when program has no code\")).name=\"RuntimeError\",n;return a=w.call(this.locations,t,-1),y(a<0)?g(t,this._known_invalid)||(b.call(this._known_invalid,t),u.log(\"Variable \"+t+\" is not an active texture\")):(g(t,this._unset_variables)&&P.call(this._unset_variables,t),this.activate(),s=function(){return\"function\"==typeof this.keys?this.keys.apply(this,arguments):Object.keys(this)}.call(this._samplers).length,g(t,this._samplers)&&(s=this._samplers[t][this._samplers[t].length-1]),this._samplers[t]=[e._target,e.handle,s],this._gl.uniform1i(a,s)),null},i.prototype.set_uniform=function(t,e,n){var a,s,i,r,o,l,_;if(!y(this._linked))throw(i=new Error(\"RuntimeError:Cannot set uniform when program has no code\")).name=\"RuntimeError\",i;if(o=w.call(this.locations,t,-1),y(o<0))return g(t,this._known_invalid)||(b.call(this._known_invalid,t),u.log(\"Variable \"+t+\" is not an active uniform\")),null;if(g(t,this._unset_variables)&&P.call(this._unset_variables,t),s=1,c.call(e,\"mat\")||(a=w.call({int:\"float\",bool:\"float\"},e,function(t){if(this.constructor!==String)return this.lstrip.apply(this,arguments);t=void 0===t?\" \\t\\r\\n\":t;for(var e=0;e<this.length;e++)if(t.indexOf(this[e])<0)return this.slice(e);return\"\"}.call(e,\"ib\")),s=Math.floor(n.length/this.ATYPEINFO[a][0])),y(1<s))for(l=0;l<s;l+=1)g(t+\"[\"+l+\"]\",this._unset_variables)&&g(_=t+\"[\"+l+\"]\",this._unset_variables)&&P.call(this._unset_variables,_);return r=this.UTYPEMAP[e],this.activate(),c.call(e,\"mat\")?this._gl[r](o,!1,n):this._gl[r](o,n),null},i.prototype.set_attribute=function(t,e,n,a,s){var i,r,o,l,_,h,c,f;if(a=void 0===a?0:a,s=void 0===s?0:s,!y(this._linked))throw(r=new Error(\"RuntimeError:Cannot set attribute when program has no code\")).name=\"RuntimeError\",r;return h=n instanceof d,_=w.call(this.locations,t,-1),y(_<0)?g(t,this._known_invalid)||(b.call(this._known_invalid,t),y(h)&&y(0<s)||u.log(\"Variable \"+t+\" is not an active attribute\")):(g(t,this._unset_variables)&&P.call(this._unset_variables,t),this.activate(),y(h)?(f=this.ATYPEINFO[e],c=f[0],l=f[1],o=\"vertexAttribPointer\",i=[c,l,this._gl.FALSE,a,s],this._attributes[t]=[n.handle,_,o,i]):(o=this.ATYPEMAP[e],this._attributes[t]=[0,_,o,n])),null},i.prototype._pre_draw=function(){var t,e,n,a,s,i,r,o,l,_,h,c;for(c in this.activate(),r=this._samplers)r.hasOwnProperty(c)&&(c=r[c],l=(i=c)[0],o=i[1],_=i[2],this._gl.activeTexture(x(this._gl.TEXTURE0,_)),this._gl.bindTexture(l,o));for(c in s=this._attributes)s.hasOwnProperty(c)&&(c=s[c],h=(a=c)[0],e=a[1],n=a[2],t=a[3],y(h)?(this._gl.bindBuffer(this._gl.ARRAY_BUFFER,h),this._gl.enableVertexAttribArray(e)):(this._gl.bindBuffer(this._gl.ARRAY_BUFFER,null),this._gl.disableVertexAttribArray(e)),this._gl[n].apply(this._gl,[].concat([e],t)));return y(this._validated)||(this._validated=!0,this._validate()),null},i.prototype._validate=function(){var t;if(this._unset_variables.length&&u.log(\"Program has unset variables: \"+this._unset_variables),this._gl.validateProgram(this.handle),!y(this._gl.getProgramParameter(this.handle,this._gl.VALIDATE_STATUS)))throw u.log(this._gl.getProgramInfoLog(this.handle)),(t=new Error(\"RuntimeError:Program validation error\")).name=\"RuntimeError\",t;return null},i.prototype.draw=function(t,e){var n,a,s,i,r;if(!y(this._linked))throw(a=new Error(\"RuntimeError:Cannot draw program if code has not been set\")).name=\"RuntimeError\",a;return l(this._gl,\"before draw\"),y(e instanceof o)?(this._pre_draw(),e.activate(),n=e._buffer_size/2,i=this._gl.UNSIGNED_SHORT,this._gl.drawElements(t,n,i,0),e.deactivate()):(s=(r=e)[0],n=r[1],y(n)&&(this._pre_draw(),this._gl.drawArrays(t,s,n))),l(this._gl,\"after draw\"),null},((a=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,a.prototype._class_name=\"Buffer\",a.prototype._target=null,a.prototype._usage=35048,a.prototype._create=function(){return this.handle=this._gl.createBuffer(),this._buffer_size=0,null},a.prototype.delete=function(){return this._gl.deleteBuffer(this.handle),null},a.prototype.activate=function(){return this._gl.bindBuffer(this._target,this.handle),null},a.prototype.deactivate=function(){return this._gl.bindBuffer(this._target,null),null},a.prototype.set_size=function(t){return v(t,this._buffer_size)||(this.activate(),this._gl.bufferData(this._target,t,this._usage),this._buffer_size=t),null},a.prototype.set_data=function(t,e){return this.activate(),this._gl.bufferSubData(this._target,t,e),null},(d=function(){_(this,arguments)}).prototype=Object.create(a.prototype),d.prototype._base_class=a.prototype,d.prototype._class_name=\"VertexBuffer\",d.prototype._target=34962,(o=function(){_(this,arguments)}).prototype=Object.create(a.prototype),o.prototype._base_class=a.prototype,o.prototype._class_name=\"IndexBuffer\",o.prototype._target=34963,((r=function(){_(this,arguments)}).prototype=Object.create(s.prototype))._base_class=s.prototype,r.prototype._class_name=\"Texture2D\",r.prototype._target=3553,r.prototype._types={Int8Array:5120,Uint8Array:5121,Int16Array:5122,Uint16Array:5123,Int32Array:5124,Uint32Array:5125,Float32Array:5126},r.prototype._create=function(){return this.handle=this._gl.createTexture(),this._shape_format=null},r.prototype.delete=function(){return this._gl.deleteTexture(this.handle),null},r.prototype.activate=function(){return this._gl.bindTexture(this._target,this.handle),null},r.prototype.deactivate=function(){return this._gl.bindTexture(this._target,0),null},r.prototype._get_alignment=function(t){var e,n,a;for(\"object\"!=typeof(n=[4,8,2,1])||Array.isArray(n)||(n=Object.keys(n)),a=0;a<n.length;a+=1)if(e=n[a],v(t%e,0))return e;return null},r.prototype.set_wrapping=function(t,e){return this.activate(),this._gl.texParameterf(this._target,this._gl.TEXTURE_WRAP_S,t),this._gl.texParameterf(this._target,this._gl.TEXTURE_WRAP_T,e),null},r.prototype.set_interpolation=function(t,e){return this.activate(),this._gl.texParameterf(this._target,this._gl.TEXTURE_MIN_FILTER,t),this._gl.texParameterf(this._target,this._gl.TEXTURE_MAG_FILTER,e),null},r.prototype.set_size=function(t,e){var n,a,s;return n=(a=t)[0],s=a[1],v([n,s,e],this._shape_format)||(this._shape_format=[n,s,e],this.activate(),this._gl.texImage2D(this._target,0,e,s,n,0,e,this._gl.UNSIGNED_BYTE,null)),this.u_shape=[n,s],null},r.prototype.set_data=function(t,e,n){var a,s,i,r,o,l,_,h,c,f;if(v(e.length,2)&&(e=[e[0],e[1],1]),this.activate(),i=this._shape_format[2],o=(l=e)[0],h=l[1],l[2],f=(_=t)[0],c=_[1],null===(r=w.call(this._types,n.constructor.name,null)))throw(s=new Error(\"ValueError:Type \"+n.constructor.name+\" not allowed for texture\")).name=\"ValueError\",s;return a=this._get_alignment(m(e[e.length-2],e[e.length-1])),v(a,4)||this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,a),this._gl.texSubImage2D(this._target,0,c,f,h,o,i,r,n),v(a,4)||this._gl.pixelStorei(this._gl.UNPACK_ALIGNMENT,4),null},((p=function(){_(this,arguments)}).prototype=Object.create(r.prototype))._base_class=r.prototype,p.prototype._class_name=\"Texture3DLike\",p.prototype.GLSL_SAMPLE_NEAREST=\"\\n        vec4 sample3D(sampler2D tex, vec3 texcoord, vec3 shape, vec2 tiles) {\\n            shape.xyz = shape.zyx;  // silly row-major convention\\n            float nrows = tiles.y, ncols = tiles.x;\\n            // Don't let adjacent frames be interpolated into this one\\n            texcoord.x = min(texcoord.x * shape.x, shape.x - 0.5);\\n            texcoord.x = max(0.5, texcoord.x) / shape.x;\\n            texcoord.y = min(texcoord.y * shape.y, shape.y - 0.5);\\n            texcoord.y = max(0.5, texcoord.y) / shape.y;\\n\\n            float zindex = floor(texcoord.z * shape.z);\\n\\n            // Do a lookup in the 2D texture\\n            float u = (mod(zindex, ncols) + texcoord.x) / ncols;\\n            float v = (floor(zindex / ncols) + texcoord.y) / nrows;\\n\\n            return texture2D(tex, vec2(u,v));\\n        }\\n    \",p.prototype.GLSL_SAMPLE_LINEAR=\"\\n        vec4 sample3D(sampler2D tex, vec3 texcoord, vec3 shape, vec2 tiles) {\\n            shape.xyz = shape.zyx;  // silly row-major convention\\n            float nrows = tiles.y, ncols = tiles.x;\\n            // Don't let adjacent frames be interpolated into this one\\n            texcoord.x = min(texcoord.x * shape.x, shape.x - 0.5);\\n            texcoord.x = max(0.5, texcoord.x) / shape.x;\\n            texcoord.y = min(texcoord.y * shape.y, shape.y - 0.5);\\n            texcoord.y = max(0.5, texcoord.y) / shape.y;\\n\\n            float z = texcoord.z * shape.z;\\n            float zindex1 = floor(z);\\n            float u1 = (mod(zindex1, ncols) + texcoord.x) / ncols;\\n            float v1 = (floor(zindex1 / ncols) + texcoord.y) / nrows;\\n\\n            float zindex2 = zindex1 + 1.0;\\n            float u2 = (mod(zindex2, ncols) + texcoord.x) / ncols;\\n            float v2 = (floor(zindex2 / ncols) + texcoord.y) / nrows;\\n\\n            vec4 s1 = texture2D(tex, vec2(u1, v1));\\n            vec4 s2 = texture2D(tex, vec2(u2, v2));\\n\\n            return s1 * (zindex2 - z) + s2 * (z - zindex1);\\n        }\\n    \",p.prototype._get_tile_info=function(t){var e,n,a,s;if(n=this._gl.getParameter(this._gl.MAX_TEXTURE_SIZE),s=Math.floor(n/t[1]),s=Math.min(s,t[0]),a=window.Math.ceil(t[0]/s),y(m(a,t[2])>n))throw(e=new Error(\"RuntimeError:Cannot fit 3D data with shape \"+t+\" onto simulated 2D texture.\")).name=\"RuntimeError\",e;return[s,a]},p.prototype.set_size=function(t,e){var n,a,s,i;return i=this._get_tile_info(t),a=i[0],n=i[1],s=[m(t[1],a),m(t[2],n)],p.prototype._base_class.set_size.call(this,s,e),this.u_shape=[t[0],t[1],t[2]],this.u_tiles=[n,a],null},p.prototype.set_data=function(s,t,e){var n,a,i,r,o,l,_,h,c,f,d,u,g;if(v(t.length,3)&&(t=[t[0],t[1],t[2],1]),!function(t){for(var e=0;e<t.length;e++)if(!y(t[e]))return!1;return!0}(function(){var t,e,n,a=[];for(\"object\"!=typeof(e=s)||Array.isArray(e)||(e=Object.keys(e)),n=0;n<e.length;n++)t=e[n],a.push(v(t,0));return a}.apply(this)))throw(r=new Error(\"ValueError:Texture3DLike does not support nonzero offset (for now)\")).name=\"ValueError\",r;if(c=this._get_tile_info(t),l=c[0],o=c[1],h=[m(t[1],l),m(t[2],o),t[3]],v(o,1))p.prototype._base_class.set_data.call(this,[0,0],h,e);else for(n=e.constructor,g=new n(m(m(h[0],h[1]),h[2])),p.prototype._base_class.set_data.call(this,[0,0],h,g),u=0;u<t[0];u+=1)f=[Math.floor(u/o),u%o],_=f[0],a=f[1],i=Math.floor(e.length/t[0]),d=e.slice(m(u,i),m(u+1,i)),p.prototype._base_class.set_data.call(this,[m(_,t[1]),m(a,t[2])],t.slice(1),d);return null},e.exports={Buffer:a,GlooObject:s,IndexBuffer:o,Program:i,Texture2D:r,Texture3DLike:p,VertexBuffer:d,check_error:l,console:u}}})}(this);\n      //# sourceMappingURL=bokeh-gl.min.js.map\n      /* END bokeh-gl.min.js */\n    },\n    \n    function(Bokeh) {\n      Bokeh.set_log_level(\"info\");\n    },\n    \n    function(Bokeh) {\n      \n    },\n    function(Bokeh) {\n      console.log(\"Bokeh: injecting raw CSS\");\n      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh.min.css */\\n.bk-root{font-family:\\\"Helvetica Neue\\\",Helvetica,Arial,sans-serif;font-size:10pt;position:relative;width:auto;height:auto}.bk-root .bk-shading{position:absolute;display:block;border:1px dashed green}.bk-root .bk-tile-attribution a{color:black}.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-grid-row,.bk-root .bk-grid-column{display:flex;display:-webkit-flex;flex-wrap:nowrap;-webkit-flex-wrap:nowrap}.bk-root .bk-grid-row>*,.bk-root .bk-grid-column>*{flex-shrink:0;-webkit-flex-shrink:0}.bk-root .bk-grid-row{flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-grid-column{flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-canvas-wrapper{position:relative;font-size:12pt}.bk-root .bk-canvas,.bk-root .bk-canvas-overlays,.bk-root .bk-canvas-events{position:absolute;top:0;left:0;width:100%;height:100%}.bk-root .bk-canvas-map{position:absolute;border:0}.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-notebook{display:inline-block;vertical-align:middle;margin-right:5px}.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-toolbar,.bk-root .bk-toolbar *{box-sizing:border-box;margin:0;padding:0}.bk-root .bk-toolbar-hidden{visibility:hidden;opacity:0;transition:visibility .3s linear,opacity .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;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none}.bk-root .bk-toolbar .bk-logo{flex-shrink:0;-webkit-flex-shrink:0}.bk-root .bk-toolbar-above,.bk-root .bk-toolbar-below{flex-direction:row;-webkit-flex-direction:row;justify-content:flex-end;-webkit-justify-content:flex-end}.bk-root .bk-toolbar-above .bk-button-bar,.bk-root .bk-toolbar-below .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:row;-webkit-flex-direction:row}.bk-root .bk-toolbar-above .bk-logo,.bk-root .bk-toolbar-below .bk-logo{order:1;-webkit-order:1;margin-left:5px}.bk-root .bk-toolbar-left,.bk-root .bk-toolbar-right{flex-direction:column;-webkit-flex-direction:column;justify-content:flex-start;-webkit-justify-content:flex-start}.bk-root .bk-toolbar-left .bk-button-bar,.bk-root .bk-toolbar-right .bk-button-bar{display:flex;display:-webkit-flex;flex-direction:column;-webkit-flex-direction:column}.bk-root .bk-toolbar-left .bk-logo,.bk-root .bk-toolbar-right .bk-logo{order:0;-webkit-order:0;margin-bottom:5px}.bk-root .bk-toolbar-button{width:30px;height:30px;background-size:60%;background-color:transparent;background-repeat:no-repeat;background-position:center center}.bk-root .bk-toolbar-button:hover{background-color:#f9f9f9}.bk-root .bk-toolbar-button:focus{outline:0}.bk-root .bk-toolbar-button::-moz-focus-inner{border:0}.bk-root .bk-toolbar-above .bk-toolbar-button{border-bottom:2px solid transparent}.bk-root .bk-toolbar-above .bk-toolbar-button.bk-active{border-bottom-color:#26aae1}.bk-root .bk-toolbar-below .bk-toolbar-button{border-top:2px solid transparent}.bk-root .bk-toolbar-below .bk-toolbar-button.bk-active{border-top-color:#26aae1}.bk-root .bk-toolbar-right .bk-toolbar-button{border-left:2px solid transparent}.bk-root .bk-toolbar-right .bk-toolbar-button.bk-active{border-left-color:#26aae1}.bk-root .bk-toolbar-left .bk-toolbar-button{border-right:2px solid transparent}.bk-root .bk-toolbar-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-above .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-below .bk-button-bar+.bk-button-bar:before{height:10px;width:1px}.bk-root .bk-toolbar-left .bk-button-bar+.bk-button-bar:before,.bk-root .bk-toolbar-right .bk-button-bar+.bk-button-bar:before{height:1px;width:10px}.bk-root .bk-tooltip{font-family:\\\"HelveticaNeue-Light\\\",\\\"Helvetica Neue Light\\\",\\\"Helvetica Neue\\\",Helvetica,Arial,\\\"Lucida Grande\\\",sans-serif;font-weight:300;font-size:12px;position:absolute;padding:5px;border:1px solid #e5e5e5;color:#2f2f2f;background-color:white;pointer-events:none;opacity:.95}.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:#ddd solid 1px;display:inline-block}.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:0;padding:1px}\\n/* END bokeh.min.css */\");\n      console.log(\"Bokeh: injecting raw CSS\");\n      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh-widgets.min.css */\\n@charset \\\"UTF-8\\\";.bk-root{/*!\\n * Pikaday\\n * Copyright \\u00a9 2014 David Bushell | BSD & MIT license | http://dbushell.com/\\n */}.bk-root .bk-noUi-target,.bk-root .bk-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 .bk-noUi-target{position:relative;direction:ltr}.bk-root .bk-noUi-base{width:100%;height:100%;position:relative;z-index:1}.bk-root .bk-noUi-connect{position:absolute;right:0;top:0;left:0;bottom:0}.bk-root .bk-noUi-origin{position:absolute;height:0;width:0}.bk-root .bk-noUi-handle{position:relative;z-index:1}.bk-root .bk-noUi-state-tap .bk-noUi-connect,.bk-root .bk-noUi-state-tap .bk-noUi-origin{-webkit-transition:top .3s,right .3s,bottom .3s,left .3s;transition:top .3s,right .3s,bottom .3s,left .3s}.bk-root .bk-noUi-state-drag *{cursor:inherit !important}.bk-root .bk-noUi-base,.bk-root .bk-noUi-handle{-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.bk-root .bk-noUi-horizontal{height:18px}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:34px;height:28px;left:-17px;top:-6px}.bk-root .bk-noUi-vertical{width:18px}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:28px;height:34px;left:-6px;top:-17px}.bk-root .bk-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 .bk-noUi-connect{background:#3fb8af;border-radius:4px;box-shadow:inset 0 0 3px rgba(51,51,51,0.45);-webkit-transition:background 450ms;transition:background 450ms}.bk-root .bk-noUi-draggable{cursor:ew-resize}.bk-root .bk-noUi-vertical .bk-noUi-draggable{cursor:ns-resize}.bk-root .bk-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 .bk-noUi-active{box-shadow:inset 0 0 1px #FFF,inset 0 1px 7px #DDD,0 3px 6px -3px #BBB}.bk-root .bk-noUi-handle:before,.bk-root .bk-noUi-handle:after{content:\\\"\\\";display:block;position:absolute;height:14px;width:1px;background:#e8e7e6;left:14px;top:6px}.bk-root .bk-noUi-handle:after{left:17px}.bk-root .bk-noUi-vertical .bk-noUi-handle:before,.bk-root .bk-noUi-vertical .bk-noUi-handle:after{width:14px;height:1px;left:6px;top:14px}.bk-root .bk-noUi-vertical .bk-noUi-handle:after{top:17px}.bk-root [disabled] .bk-noUi-connect{background:#b8b8b8}.bk-root [disabled].bk-noUi-target,.bk-root [disabled].bk-noUi-handle,.bk-root [disabled] .bk-noUi-handle{cursor:not-allowed}.bk-root .bk-noUi-pips,.bk-root .bk-noUi-pips *{-moz-box-sizing:border-box;box-sizing:border-box}.bk-root .bk-noUi-pips{position:absolute;color:#999}.bk-root .bk-noUi-value{position:absolute;white-space:nowrap;text-align:center}.bk-root .bk-noUi-value-sub{color:#ccc;font-size:10px}.bk-root .bk-noUi-marker{position:absolute;background:#CCC}.bk-root .bk-noUi-marker-sub{background:#AAA}.bk-root .bk-noUi-marker-large{background:#AAA}.bk-root .bk-noUi-pips-horizontal{padding:10px 0;height:80px;top:100%;left:0;width:100%}.bk-root .bk-noUi-value-horizontal{-webkit-transform:translate3d(-50%,50%,0);transform:translate3d(-50%,50%,0)}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker{margin-left:-1px;width:2px;height:5px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-sub{height:10px}.bk-root .bk-noUi-marker-horizontal.bk-noUi-marker-large{height:15px}.bk-root .bk-noUi-pips-vertical{padding:0 10px;height:100%;top:0;left:100%}.bk-root .bk-noUi-value-vertical{-webkit-transform:translate3d(0,50%,0);transform:translate3d(0,50%,0);padding-left:25px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker{width:5px;height:2px;margin-top:-1px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-sub{width:10px}.bk-root .bk-noUi-marker-vertical.bk-noUi-marker-large{width:15px}.bk-root .bk-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 .bk-noUi-horizontal .bk-noUi-tooltip{-webkit-transform:translate(-50%,0);transform:translate(-50%,0);left:50%;bottom:120%}.bk-root .bk-noUi-vertical .bk-noUi-tooltip{-webkit-transform:translate(0,-50%);transform:translate(0,-50%);top:50%;right:120%}.bk-root .bk-noUi-handle{cursor:grab;cursor:-webkit-grab}.bk-root .bk-noUi-handle.bk-noUi-active{cursor:grabbing;cursor:-webkit-grabbing}.bk-root .bk-noUi-tooltip{display:none;white-space:nowrap}.bk-root .bk-noUi-handle:hover .bk-noUi-tooltip{display:block}.bk-root .bk-noUi-horizontal{width:100%;height:10px}.bk-root .bk-noUi-horizontal .bk-noUi-handle{width:14px;height:18px;left:-7px;top:-5px}.bk-root .bk-noUi-vertical{width:10px;height:100%}.bk-root .bk-noUi-vertical .bk-noUi-handle{width:18px;height:14px;left:-5px;top:-7px}.bk-root .bk-noUi-handle:after,.bk-root .bk-noUi-handle:before{display:none}.bk-root .bk-noUi-connect{box-shadow:none}.bk-root fieldset{padding:0;margin:0;border:0;min-width:0}.bk-root legend{display:block;width:100%;padding:0;margin-bottom:17px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}.bk-root label{display:inline-block;margin-bottom:5px}.bk-root input[type=\\\"search\\\"]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.bk-root input[type=\\\"radio\\\"],.bk-root input[type=\\\"checkbox\\\"]{margin:4px 0 0;margin-top:1px \\\\9;line-height:normal}.bk-root input[type=\\\"file\\\"]{display:block}.bk-root input[type=\\\"range\\\"]{display:block;width:100%}.bk-root select[multiple],.bk-root select[size]{height:auto}.bk-root input[type=\\\"file\\\"]:focus,.bk-root input[type=\\\"radio\\\"]:focus,.bk-root input[type=\\\"checkbox\\\"]:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.bk-root output{display:block;padding-top:7px;line-height:1.42857143;color:#555}.bk-root .bk-bs-form-control{display:block;height:31px;padding:0 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px}.bk-root .bk-bs-form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6)}.bk-root .bk-bs-form-control::-moz-placeholder{color:#999;opacity:1}.bk-root .bk-bs-form-control:-ms-input-placeholder{color:#999}.bk-root .bk-bs-form-control::-webkit-input-placeholder{color:#999}.bk-root .bk-bs-form-control[disabled],.bk-root .bk-bs-form-control[readonly],fieldset[disabled] .bk-root .bk-bs-form-control{cursor:not-allowed;background-color:#eee;opacity:1}textarea.bk-root .bk-bs-form-control{height:auto}.bk-root input[type=\\\"search\\\"]{-webkit-appearance:none}.bk-root input[type=\\\"date\\\"]{line-height:31px}.bk-root .bk-bs-form-group{margin-bottom:15px}.bk-root .bk-bs-radio,.bk-root .bk-bs-checkbox{display:block;min-height:17px;margin-top:10px;margin-bottom:10px;padding-left:20px}.bk-root .bk-bs-radio label,.bk-root .bk-bs-checkbox label{display:inline;font-weight:normal;cursor:pointer}.bk-root .bk-bs-radio input[type=\\\"radio\\\"],.bk-root .bk-bs-radio-inline input[type=\\\"radio\\\"],.bk-root .bk-bs-checkbox input[type=\\\"checkbox\\\"],.bk-root .bk-bs-checkbox-inline input[type=\\\"checkbox\\\"]{float:left;margin-left:-20px}.bk-root .bk-bs-radio+.bk-bs-radio,.bk-root .bk-bs-checkbox+.bk-bs-checkbox{margin-top:-5px}.bk-root .bk-bs-radio-inline,.bk-root .bk-bs-checkbox-inline{display:inline-block;padding-left:20px;margin-bottom:0;vertical-align:middle;font-weight:normal;cursor:pointer}.bk-root .bk-bs-radio-inline+.bk-bs-radio-inline,.bk-root .bk-bs-checkbox-inline+.bk-bs-checkbox-inline{margin-top:0;margin-left:10px}.bk-root input[type=\\\"radio\\\"][disabled],.bk-root input[type=\\\"checkbox\\\"][disabled],.bk-root .bk-bs-radio[disabled],.bk-root .bk-bs-radio-inline[disabled],.bk-root .bk-bs-checkbox[disabled],.bk-root .bk-bs-checkbox-inline[disabled],fieldset[disabled] .bk-root input[type=\\\"radio\\\"],fieldset[disabled] .bk-root input[type=\\\"checkbox\\\"],fieldset[disabled] .bk-root .bk-bs-radio,fieldset[disabled] .bk-root .bk-bs-radio-inline,fieldset[disabled] .bk-root .bk-bs-checkbox,fieldset[disabled] .bk-root .bk-bs-checkbox-inline{cursor:not-allowed}.bk-root .bk-bs-input-sm{height:28px;padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}select.bk-root .bk-bs-input-sm{height:28px;line-height:28px}textarea.bk-root .bk-bs-input-sm,select[multiple].bk-root .bk-bs-input-sm{height:auto}.bk-root .bk-bs-input-lg{height:42px;padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}select.bk-root .bk-bs-input-lg{height:42px;line-height:42px}textarea.bk-root .bk-bs-input-lg,select[multiple].bk-root .bk-bs-input-lg{height:auto}.bk-root .bk-bs-has-feedback{position:relative}.bk-root .bk-bs-has-feedback .bk-bs-form-control{padding-right:38.75px}.bk-root .bk-bs-has-feedback .bk-bs-form-control-feedback{position:absolute;top:22px;right:0;display:block;width:31px;height:31px;line-height:31px;text-align:center}.bk-root .bk-bs-has-success .bk-bs-help-block,.bk-root .bk-bs-has-success .bk-bs-control-label,.bk-root .bk-bs-has-success .bk-bs-radio,.bk-root .bk-bs-has-success .bk-bs-checkbox,.bk-root .bk-bs-has-success .bk-bs-radio-inline,.bk-root .bk-bs-has-success .bk-bs-checkbox-inline{color:#3c763d}.bk-root .bk-bs-has-success .bk-bs-form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-success .bk-bs-form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #67b168}.bk-root .bk-bs-has-success .bk-bs-input-group-addon{color:#3c763d;border-color:#3c763d;background-color:#dff0d8}.bk-root .bk-bs-has-success .bk-bs-form-control-feedback{color:#3c763d}.bk-root .bk-bs-has-warning .bk-bs-help-block,.bk-root .bk-bs-has-warning .bk-bs-control-label,.bk-root .bk-bs-has-warning .bk-bs-radio,.bk-root .bk-bs-has-warning .bk-bs-checkbox,.bk-root .bk-bs-has-warning .bk-bs-radio-inline,.bk-root .bk-bs-has-warning .bk-bs-checkbox-inline{color:#8a6d3b}.bk-root .bk-bs-has-warning .bk-bs-form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-warning .bk-bs-form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #c0a16b}.bk-root .bk-bs-has-warning .bk-bs-input-group-addon{color:#8a6d3b;border-color:#8a6d3b;background-color:#fcf8e3}.bk-root .bk-bs-has-warning .bk-bs-form-control-feedback{color:#8a6d3b}.bk-root .bk-bs-has-error .bk-bs-help-block,.bk-root .bk-bs-has-error .bk-bs-control-label,.bk-root .bk-bs-has-error .bk-bs-radio,.bk-root .bk-bs-has-error .bk-bs-checkbox,.bk-root .bk-bs-has-error .bk-bs-radio-inline,.bk-root .bk-bs-has-error .bk-bs-checkbox-inline{color:#a94442}.bk-root .bk-bs-has-error .bk-bs-form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.bk-root .bk-bs-has-error .bk-bs-form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #ce8483}.bk-root .bk-bs-has-error .bk-bs-input-group-addon{color:#a94442;border-color:#a94442;background-color:#f2dede}.bk-root .bk-bs-has-error .bk-bs-form-control-feedback{color:#a94442}.bk-root .bk-bs-form-control-static{margin-bottom:0}.bk-root .bk-bs-help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media(min-width:768px){.bk-root .bk-bs-form-inline .bk-bs-form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-form-control{display:inline-block;width:auto;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-input-group>.bk-bs-form-control{width:100%}.bk-root .bk-bs-form-inline .bk-bs-control-label{margin-bottom:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-radio,.bk-root .bk-bs-form-inline .bk-bs-checkbox{display:inline-block;margin-top:0;margin-bottom:0;padding-left:0;vertical-align:middle}.bk-root .bk-bs-form-inline .bk-bs-radio input[type=\\\"radio\\\"],.bk-root .bk-bs-form-inline .bk-bs-checkbox input[type=\\\"checkbox\\\"]{float:none;margin-left:0}.bk-root .bk-bs-form-inline .bk-bs-has-feedback .bk-bs-form-control-feedback{top:0}}.bk-root .bk-bs-form-horizontal .bk-bs-control-label,.bk-root .bk-bs-form-horizontal .bk-bs-radio,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox,.bk-root .bk-bs-form-horizontal .bk-bs-radio-inline,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox-inline{margin-top:0;margin-bottom:0;padding-top:7px}.bk-root .bk-bs-form-horizontal .bk-bs-radio,.bk-root .bk-bs-form-horizontal .bk-bs-checkbox{min-height:24px}.bk-root .bk-bs-form-horizontal .bk-bs-form-group{margin-left:-15px;margin-right:-15px}.bk-root .bk-bs-form-horizontal .bk-bs-form-control-static{padding-top:7px}@media(min-width:768px){.bk-root .bk-bs-form-horizontal .bk-bs-control-label{text-align:right}}.bk-root .bk-bs-form-horizontal .bk-bs-has-feedback .bk-bs-form-control-feedback{top:0;right:15px}.bk-root .bk-bs-btn{display:inline-block;margin-bottom:0;font-weight:normal;text-align:center;vertical-align:middle;cursor:pointer;background-image:none;border:1px solid transparent;white-space:nowrap;padding:6px 12px;font-size:12px;line-height:1.42857143;border-radius:4px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.bk-root .bk-bs-btn:focus,.bk-root .bk-bs-btn:active:focus,.bk-root .bk-bs-btn.bk-bs-active:focus{outline:thin dotted;outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.bk-root .bk-bs-btn:hover,.bk-root .bk-bs-btn:focus{color:#333;text-decoration:none}.bk-root .bk-bs-btn:active,.bk-root .bk-bs-btn.bk-bs-active{outline:0;background-image:none;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.bk-root .bk-bs-btn.bk-bs-disabled,.bk-root .bk-bs-btn[disabled],fieldset[disabled] .bk-root .bk-bs-btn{cursor:not-allowed;pointer-events:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn-default{color:#333;background-color:#fff;border-color:#ccc}.bk-root .bk-bs-btn-default:hover,.bk-root .bk-bs-btn-default:focus,.bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-default{color:#333;background-color:#ebebeb;border-color:#adadad}.bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-default{background-image:none}.bk-root .bk-bs-btn-default.bk-bs-disabled,.bk-root .bk-bs-btn-default[disabled],fieldset[disabled] .bk-root .bk-bs-btn-default,.bk-root .bk-bs-btn-default.bk-bs-disabled:hover,.bk-root .bk-bs-btn-default[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-default:hover,.bk-root .bk-bs-btn-default.bk-bs-disabled:focus,.bk-root .bk-bs-btn-default[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-default:focus,.bk-root .bk-bs-btn-default.bk-bs-disabled:active,.bk-root .bk-bs-btn-default[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-default:active,.bk-root .bk-bs-btn-default.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-default[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-default.bk-bs-active{background-color:#fff;border-color:#ccc}.bk-root .bk-bs-btn-default .bk-bs-badge{color:#fff;background-color:#333}.bk-root .bk-bs-btn-primary{color:#fff;background-color:#428bca;border-color:#357ebd}.bk-root .bk-bs-btn-primary:hover,.bk-root .bk-bs-btn-primary:focus,.bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-primary{color:#fff;background-color:#3276b1;border-color:#285e8e}.bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-primary{background-image:none}.bk-root .bk-bs-btn-primary.bk-bs-disabled,.bk-root .bk-bs-btn-primary[disabled],fieldset[disabled] .bk-root .bk-bs-btn-primary,.bk-root .bk-bs-btn-primary.bk-bs-disabled:hover,.bk-root .bk-bs-btn-primary[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-primary:hover,.bk-root .bk-bs-btn-primary.bk-bs-disabled:focus,.bk-root .bk-bs-btn-primary[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-primary:focus,.bk-root .bk-bs-btn-primary.bk-bs-disabled:active,.bk-root .bk-bs-btn-primary[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-primary:active,.bk-root .bk-bs-btn-primary.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-primary[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-primary.bk-bs-active{background-color:#428bca;border-color:#357ebd}.bk-root .bk-bs-btn-primary .bk-bs-badge{color:#428bca;background-color:#fff}.bk-root .bk-bs-btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.bk-root .bk-bs-btn-success:hover,.bk-root .bk-bs-btn-success:focus,.bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-success{color:#fff;background-color:#47a447;border-color:#398439}.bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-success{background-image:none}.bk-root .bk-bs-btn-success.bk-bs-disabled,.bk-root .bk-bs-btn-success[disabled],fieldset[disabled] .bk-root .bk-bs-btn-success,.bk-root .bk-bs-btn-success.bk-bs-disabled:hover,.bk-root .bk-bs-btn-success[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-success:hover,.bk-root .bk-bs-btn-success.bk-bs-disabled:focus,.bk-root .bk-bs-btn-success[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-success:focus,.bk-root .bk-bs-btn-success.bk-bs-disabled:active,.bk-root .bk-bs-btn-success[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-success:active,.bk-root .bk-bs-btn-success.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-success[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-success.bk-bs-active{background-color:#5cb85c;border-color:#4cae4c}.bk-root .bk-bs-btn-success .bk-bs-badge{color:#5cb85c;background-color:#fff}.bk-root .bk-bs-btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.bk-root .bk-bs-btn-info:hover,.bk-root .bk-bs-btn-info:focus,.bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-info{color:#fff;background-color:#39b3d7;border-color:#269abc}.bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-info{background-image:none}.bk-root .bk-bs-btn-info.bk-bs-disabled,.bk-root .bk-bs-btn-info[disabled],fieldset[disabled] .bk-root .bk-bs-btn-info,.bk-root .bk-bs-btn-info.bk-bs-disabled:hover,.bk-root .bk-bs-btn-info[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-info:hover,.bk-root .bk-bs-btn-info.bk-bs-disabled:focus,.bk-root .bk-bs-btn-info[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-info:focus,.bk-root .bk-bs-btn-info.bk-bs-disabled:active,.bk-root .bk-bs-btn-info[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-info:active,.bk-root .bk-bs-btn-info.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-info[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-info.bk-bs-active{background-color:#5bc0de;border-color:#46b8da}.bk-root .bk-bs-btn-info .bk-bs-badge{color:#5bc0de;background-color:#fff}.bk-root .bk-bs-btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.bk-root .bk-bs-btn-warning:hover,.bk-root .bk-bs-btn-warning:focus,.bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-warning{color:#fff;background-color:#ed9c28;border-color:#d58512}.bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-warning{background-image:none}.bk-root .bk-bs-btn-warning.bk-bs-disabled,.bk-root .bk-bs-btn-warning[disabled],fieldset[disabled] .bk-root .bk-bs-btn-warning,.bk-root .bk-bs-btn-warning.bk-bs-disabled:hover,.bk-root .bk-bs-btn-warning[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-warning:hover,.bk-root .bk-bs-btn-warning.bk-bs-disabled:focus,.bk-root .bk-bs-btn-warning[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-warning:focus,.bk-root .bk-bs-btn-warning.bk-bs-disabled:active,.bk-root .bk-bs-btn-warning[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-warning:active,.bk-root .bk-bs-btn-warning.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-warning[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-warning.bk-bs-active{background-color:#f0ad4e;border-color:#eea236}.bk-root .bk-bs-btn-warning .bk-bs-badge{color:#f0ad4e;background-color:#fff}.bk-root .bk-bs-btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.bk-root .bk-bs-btn-danger:hover,.bk-root .bk-bs-btn-danger:focus,.bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-danger{color:#fff;background-color:#d2322d;border-color:#ac2925}.bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-active,.bk-bs-open .bk-bs-dropdown-toggle.bk-root .bk-bs-btn-danger{background-image:none}.bk-root .bk-bs-btn-danger.bk-bs-disabled,.bk-root .bk-bs-btn-danger[disabled],fieldset[disabled] .bk-root .bk-bs-btn-danger,.bk-root .bk-bs-btn-danger.bk-bs-disabled:hover,.bk-root .bk-bs-btn-danger[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-danger:hover,.bk-root .bk-bs-btn-danger.bk-bs-disabled:focus,.bk-root .bk-bs-btn-danger[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-danger:focus,.bk-root .bk-bs-btn-danger.bk-bs-disabled:active,.bk-root .bk-bs-btn-danger[disabled]:active,fieldset[disabled] .bk-root .bk-bs-btn-danger:active,.bk-root .bk-bs-btn-danger.bk-bs-disabled.bk-bs-active,.bk-root .bk-bs-btn-danger[disabled].bk-bs-active,fieldset[disabled] .bk-root .bk-bs-btn-danger.bk-bs-active{background-color:#d9534f;border-color:#d43f3a}.bk-root .bk-bs-btn-danger .bk-bs-badge{color:#d9534f;background-color:#fff}.bk-root .bk-bs-btn-link{color:#428bca;font-weight:normal;cursor:pointer;border-radius:0}.bk-root .bk-bs-btn-link,.bk-root .bk-bs-btn-link:active,.bk-root .bk-bs-btn-link[disabled],fieldset[disabled] .bk-root .bk-bs-btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn-link,.bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link:focus,.bk-root .bk-bs-btn-link:active{border-color:transparent}.bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link:focus{color:#2a6496;text-decoration:underline;background-color:transparent}.bk-root .bk-bs-btn-link[disabled]:hover,fieldset[disabled] .bk-root .bk-bs-btn-link:hover,.bk-root .bk-bs-btn-link[disabled]:focus,fieldset[disabled] .bk-root .bk-bs-btn-link:focus{color:#999;text-decoration:none}.bk-root .bk-bs-btn-lg{padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}.bk-root .bk-bs-btn-sm{padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}.bk-root .bk-bs-btn-xs{padding:1px 5px;font-size:11px;line-height:1.5;border-radius:3px}.bk-root .bk-bs-btn-block{display:block;width:100%;padding-left:0;padding-right:0}.bk-root .bk-bs-btn-block+.bk-bs-btn-block{margin-top:5px}.bk-root input[type=\\\"submit\\\"].bk-bs-btn-block,.bk-root input[type=\\\"reset\\\"].bk-bs-btn-block,.bk-root input[type=\\\"button\\\"].bk-bs-btn-block{width:100%}.bk-root .bk-bs-caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px solid;border-right:4px solid transparent;border-left:4px solid transparent}.bk-root .bk-bs-dropdown{position:relative}.bk-root .bk-bs-dropdown-toggle:focus{outline:0}.bk-root .bk-bs-dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;list-style:none;font-size:12px;background-color:#fff;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,0.175);box-shadow:0 6px 12px rgba(0,0,0,0.175);background-clip:padding-box}.bk-root .bk-bs-dropdown-menu.bk-bs-pull-right{right:0;left:auto}.bk-root .bk-bs-dropdown-menu .bk-bs-divider{height:1px;margin:7.5px 0;overflow:hidden;background-color:#e5e5e5}.bk-root .bk-bs-dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:normal;line-height:1.42857143;color:#333;white-space:nowrap}.bk-root .bk-bs-dropdown-menu>li>a:hover,.bk-root .bk-bs-dropdown-menu>li>a:focus{text-decoration:none;color:#262626;background-color:#f5f5f5}.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a,.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-active>a:focus{color:#fff;text-decoration:none;outline:0;background-color:#428bca}.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:focus{color:#999}.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:hover,.bk-root .bk-bs-dropdown-menu>.bk-bs-disabled>a:focus{text-decoration:none;background-color:transparent;background-image:none;filter:progid:DXImageTransform.bk-bs-Microsoft.bk-bs-gradient(enabled = false);cursor:not-allowed}.bk-root .bk-bs-open>.bk-bs-dropdown-menu{display:block}.bk-root .bk-bs-open>a{outline:0}.bk-root .bk-bs-dropdown-menu-right{left:auto;right:0}.bk-root .bk-bs-dropdown-menu-left{left:0;right:auto}.bk-root .bk-bs-dropdown-header{display:block;padding:3px 20px;font-size:11px;line-height:1.42857143;color:#999}.bk-root .bk-bs-dropdown-backdrop{position:fixed;left:0;right:0;bottom:0;top:0;z-index:990}.bk-root .bk-bs-pull-right>.bk-bs-dropdown-menu{right:0;left:auto}.bk-root .bk-bs-dropup .bk-bs-caret,.bk-root .bk-bs-navbar-fixed-bottom .bk-bs-dropdown .bk-bs-caret{border-top:0;border-bottom:4px solid;content:\\\"\\\"}.bk-root .bk-bs-dropup .bk-bs-dropdown-menu,.bk-root .bk-bs-navbar-fixed-bottom .bk-bs-dropdown .bk-bs-dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}@media(min-width:768px){.bk-root .bk-bs-navbar-right .bk-bs-dropdown-menu{left:auto;right:0}.bk-root .bk-bs-navbar-right .bk-bs-dropdown-menu-left{left:0;right:auto}}.bk-root .bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.bk-root .bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn{position:relative;float:left}.bk-root .bk-bs-btn-group>.bk-bs-btn:hover,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:hover,.bk-root .bk-bs-btn-group>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group>.bk-bs-btn:active,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:active,.bk-root .bk-bs-btn-group>.bk-bs-btn.bk-bs-active,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn.bk-bs-active{z-index:2}.bk-root .bk-bs-btn-group>.bk-bs-btn:focus,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:focus{outline:0}.bk-root .bk-bs-btn-group .bk-bs-btn+.bk-bs-btn,.bk-root .bk-bs-btn-group .bk-bs-btn+.bk-bs-btn-group,.bk-root .bk-bs-btn-group .bk-bs-btn-group+.bk-bs-btn,.bk-root .bk-bs-btn-group .bk-bs-btn-group+.bk-bs-btn-group{margin-left:-1px}.bk-root .bk-bs-btn-toolbar{margin-left:-5px}.bk-root .bk-bs-btn-toolbar .bk-bs-btn-group,.bk-root .bk-bs-btn-toolbar .bk-bs-input-group{float:left}.bk-root .bk-bs-btn-toolbar>.bk-bs-btn,.bk-root .bk-bs-btn-toolbar>.bk-bs-btn-group,.bk-root .bk-bs-btn-toolbar>.bk-bs-input-group{margin-left:5px}.bk-root .bk-bs-btn-group>.bk-bs-btn:not(:first-child):not(:last-child):not(.bk-bs-dropdown-toggle){border-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:first-child{margin-left:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:first-child:not(:last-child):not(.bk-bs-dropdown-toggle){border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn:last-child:not(:first-child),.bk-root .bk-bs-btn-group>.bk-bs-dropdown-toggle:not(:first-child){border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group{float:left}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:not(:first-child):not(:last-child)>.bk-bs-btn{border-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:first-child>.bk-bs-btn:last-child,.bk-root .bk-bs-btn-group>.bk-bs-btn-group:first-child>.bk-bs-dropdown-toggle{border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-btn-group>.bk-bs-btn-group:last-child>.bk-bs-btn:first-child{border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group .bk-bs-dropdown-toggle:active,.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle{outline:0}.bk-root .bk-bs-btn-group>.bk-bs-btn+.bk-bs-dropdown-toggle{padding-left:8px;padding-right:8px}.bk-root .bk-bs-btn-group>.bk-bs-btn-lg+.bk-bs-dropdown-toggle{padding-left:12px;padding-right:12px}.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,0.125);box-shadow:inset 0 3px 5px rgba(0,0,0,0.125)}.bk-root .bk-bs-btn-group.bk-bs-open .bk-bs-dropdown-toggle.bk-bs-btn-link{-webkit-box-shadow:none;box-shadow:none}.bk-root .bk-bs-btn .bk-bs-caret{margin-left:0}.bk-root .bk-bs-btn-lg .bk-bs-caret{border-width:5px 5px 0;border-bottom-width:0}.bk-root .bk-bs-dropup .bk-bs-btn-lg .bk-bs-caret{border-width:0 5px 5px}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group>.bk-bs-btn{display:block;float:none;width:100%;max-width:100%}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group>.bk-bs-btn{float:none}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn+.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn+.bk-bs-btn-group,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group+.bk-bs-btn,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group+.bk-bs-btn-group{margin-top:-1px;margin-left:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:not(:first-child):not(:last-child){border-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:first-child:not(:last-child){border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn:last-child:not(:first-child){border-bottom-left-radius:4px;border-top-right-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:not(:first-child):not(:last-child)>.bk-bs-btn{border-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:first-child:not(:last-child)>.bk-bs-btn:last-child,.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:first-child:not(:last-child)>.bk-bs-dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.bk-root .bk-bs-btn-group-vertical>.bk-bs-btn-group:last-child:not(:first-child)>.bk-bs-btn:first-child{border-top-right-radius:0;border-top-left-radius:0}.bk-root .bk-bs-btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.bk-root .bk-bs-btn-group-justified>.bk-bs-btn,.bk-root .bk-bs-btn-group-justified>.bk-bs-btn-group{float:none;display:table-cell;width:1%}.bk-root .bk-bs-btn-group-justified>.bk-bs-btn-group .bk-bs-btn{width:100%}.bk-root .bk-bs-btn-group>.bk-bs-btn>input[type=\\\"radio\\\"],.bk-root .bk-bs-btn-group>.bk-bs-btn>input[type=\\\"checkbox\\\"]{display:none}.bk-root .bk-bs-input-group{position:relative;display:table;border-collapse:separate}.bk-root .bk-bs-input-group[class*=\\\"col-\\\"]{float:none;padding-left:0;padding-right:0}.bk-root .bk-bs-input-group .bk-bs-form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:42px;padding:10px 16px;font-size:15px;line-height:1.33;border-radius:6px}select.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,select.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,select.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:42px;line-height:42px}textarea.bk-root .bk-bs-input-group-lg>.bk-bs-form-control,textarea.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,textarea.bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-form-control,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-input-group-addon,select[multiple].bk-root .bk-bs-input-group-lg>.bk-bs-input-group-btn>.bk-bs-btn{height:auto}.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:28px;padding:5px 10px;font-size:11px;line-height:1.5;border-radius:3px}select.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,select.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,select.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:28px;line-height:28px}textarea.bk-root .bk-bs-input-group-sm>.bk-bs-form-control,textarea.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,textarea.bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-form-control,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-input-group-addon,select[multiple].bk-root .bk-bs-input-group-sm>.bk-bs-input-group-btn>.bk-bs-btn{height:auto}.bk-root .bk-bs-input-group-addon,.bk-root .bk-bs-input-group-btn,.bk-root .bk-bs-input-group .bk-bs-form-control{display:table-cell}.bk-root .bk-bs-input-group-addon:not(:first-child):not(:last-child),.bk-root .bk-bs-input-group-btn:not(:first-child):not(:last-child),.bk-root .bk-bs-input-group .bk-bs-form-control:not(:first-child):not(:last-child){border-radius:0}.bk-root .bk-bs-input-group-addon,.bk-root .bk-bs-input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.bk-root .bk-bs-input-group-addon{padding:6px 12px;font-size:12px;font-weight:normal;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.bk-root .bk-bs-input-group-addon.bk-bs-input-sm{padding:5px 10px;font-size:11px;border-radius:3px}.bk-root .bk-bs-input-group-addon.bk-bs-input-lg{padding:10px 16px;font-size:15px;border-radius:6px}.bk-root .bk-bs-input-group-addon input[type=\\\"radio\\\"],.bk-root .bk-bs-input-group-addon input[type=\\\"checkbox\\\"]{margin-top:0}.bk-root .bk-bs-input-group .bk-bs-form-control:first-child,.bk-root .bk-bs-input-group-addon:first-child,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-dropdown-toggle,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn:not(:last-child):not(.bk-bs-dropdown-toggle),.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group:not(:last-child)>.bk-bs-btn{border-bottom-right-radius:0;border-top-right-radius:0}.bk-root .bk-bs-input-group-addon:first-child{border-right:0}.bk-root .bk-bs-input-group .bk-bs-form-control:last-child,.bk-root .bk-bs-input-group-addon:last-child,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-dropdown-toggle,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn:not(:first-child),.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group:not(:first-child)>.bk-bs-btn{border-bottom-left-radius:0;border-top-left-radius:0}.bk-root .bk-bs-input-group-addon:last-child{border-left:0}.bk-root .bk-bs-input-group-btn{position:relative;font-size:0;white-space:nowrap}.bk-root .bk-bs-input-group-btn>.bk-bs-btn{position:relative}.bk-root .bk-bs-input-group-btn>.bk-bs-btn+.bk-bs-btn{margin-left:-1px}.bk-root .bk-bs-input-group-btn>.bk-bs-btn:hover,.bk-root .bk-bs-input-group-btn>.bk-bs-btn:focus,.bk-root .bk-bs-input-group-btn>.bk-bs-btn:active{z-index:2}.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:first-child>.bk-bs-btn-group{margin-right:-1px}.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn,.bk-root .bk-bs-input-group-btn:last-child>.bk-bs-btn-group{margin-left:-1px}.bk-root .bk-bs-nav{margin-bottom:0;padding-left:0;list-style:none}.bk-root .bk-bs-nav>li{position:relative;display:block}.bk-root .bk-bs-nav>li>span{position:relative;display:block;padding:10px 15px}.bk-root .bk-bs-nav>li>span:hover,.bk-root .bk-bs-nav>li>span:focus{text-decoration:none;background-color:#eee}.bk-root .bk-bs-nav>li.bk-bs-disabled>span{color:#999}.bk-root .bk-bs-nav>li.bk-bs-disabled>span:hover,.bk-root .bk-bs-nav>li.bk-bs-disabled>span:focus{color:#999;text-decoration:none;background-color:transparent;cursor:not-allowed}.bk-root .bk-bs-nav-tabs{border-bottom:1px solid #ddd}.bk-root .bk-bs-nav-tabs>li{float:left;margin-bottom:-1px}.bk-root .bk-bs-nav-tabs>li>span{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.bk-root .bk-bs-nav-tabs>li>span:hover{border-color:#eee #eee #ddd;cursor:pointer}.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span,.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span:hover,.bk-root .bk-bs-nav-tabs>li.bk-bs-active>span:focus{color:#555;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent;cursor:default}.bk-root .bk-bs-tab-content>.bk-bs-tab-pane{display:none}.bk-root .bk-bs-tab-content>.bk-bs-active{display:block}.bk-root .pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:\\\"Helvetica Neue\\\",Helvetica,Arial,sans-serif}.bk-root .pika-single:before,.bk-root .pika-single:after{content:\\\" \\\";display:table}.bk-root .pika-single:after{clear:both}.bk-root .pika-single{*zoom:1}.bk-root .pika-single.is-hidden{display:none}.bk-root .pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,0.5)}.bk-root .pika-lendar{float:left;width:240px;margin:8px}.bk-root .pika-title{position:relative;text-align:center}.bk-root .pika-label{display:inline-block;*display:inline;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:bold;background-color:#fff}.bk-root .pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;filter:alpha(opacity=0);opacity:0}.bk-root .pika-prev,.bk-root .pika-next{display:block;cursor:pointer;position:relative;outline:0;border:0;padding:0;width:20px;height:30px;text-indent:20px;white-space:nowrap;overflow:hidden;background-color:transparent;background-position:center center;background-repeat:no-repeat;background-size:75% 75%;opacity:.5;*position:absolute;*top:0}.bk-root .pika-prev:hover,.bk-root .pika-next:hover{opacity:1}.bk-root .pika-prev,.bk-root .is-rtl .pika-next{float:left;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAUklEQVR42u3VMQoAIBADQf8Pgj+OD9hG2CtONJB2ymQkKe0HbwAP0xucDiQWARITIDEBEnMgMQ8S8+AqBIl6kKgHiXqQqAeJepBo/z38J/U0uAHlaBkBl9I4GwAAAABJRU5ErkJggg==');*left:0}.bk-root .pika-next,.bk-root .is-rtl .pika-prev{float:right;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAeCAYAAAAsEj5rAAAAU0lEQVR42u3VOwoAMAgE0dwfAnNjU26bYkBCFGwfiL9VVWoO+BJ4Gf3gtsEKKoFBNTCoCAYVwaAiGNQGMUHMkjGbgjk2mIONuXo0nC8XnCf1JXgArVIZAQh5TKYAAAAASUVORK5CYII=');*right:0}.bk-root .pika-prev.is-disabled,.bk-root .pika-next.is-disabled{cursor:default;opacity:.2}.bk-root .pika-select{display:inline-block;*display:inline}.bk-root .pika-table{width:100%;border-collapse:collapse;border-spacing:0;border:0}.bk-root .pika-table th,.bk-root .pika-table td{width:14.285714285714286%;padding:0}.bk-root .pika-table th{color:#999;font-size:12px;line-height:25px;font-weight:bold;text-align:center}.bk-root .pika-button{cursor:pointer;display:block;box-sizing:border-box;-moz-box-sizing:border-box;outline:0;border:0;margin:0;width:100%;padding:5px;color:#666;font-size:12px;line-height:15px;text-align:right;background:#f5f5f5}.bk-root .pika-week{font-size:11px;color:#999}.bk-root .is-today .pika-button{color:#3af;font-weight:bold}.bk-root .is-selected .pika-button,.bk-root .has-event .pika-button{color:#fff;font-weight:bold;background:#3af;box-shadow:inset 0 1px 3px #178fe5;border-radius:3px}.bk-root .has-event .pika-button{background:#005da9;box-shadow:inset 0 1px 3px #0076c9}.bk-root .is-disabled .pika-button,.bk-root .is-inrange .pika-button{background:#d5e9f7}.bk-root .is-startrange .pika-button{color:#fff;background:#6cb31d;box-shadow:none;border-radius:3px}.bk-root .is-endrange .pika-button{color:#fff;background:#3af;box-shadow:none;border-radius:3px}.bk-root .is-disabled .pika-button{pointer-events:none;cursor:default;color:#999;opacity:.3}.bk-root .is-outside-current-month .pika-button{color:#999;opacity:.3}.bk-root .is-selection-disabled{pointer-events:none;cursor:default}.bk-root .pika-button:hover,.bk-root .pika-row.pick-whole-week:hover .pika-button{color:#fff;background:#ff8000;box-shadow:none;border-radius:3px}.bk-root .pika-table abbr{border-bottom:0;cursor:help}.bk-root .bk-widget-box{overflow:visible;padding:5px 10px}.bk-root .bk-widget label{margin-bottom:2px}.bk-root .bk-widget{margin-top:10px}.bk-root .bk-widget h1:first-child,.bk-root .bk-widget h2:first-child,.bk-root .bk-widget h3:first-child,.bk-root .bk-widget h4:first-child,.bk-root .bk-widget h5:first-child,.bk-root .bk-widget h6:first-child,.bk-root .bk-widget p:first-child{margin-top:0}.bk-root .bk-widget-form-input{display:block;height:31px;padding:0 12px;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px}.bk-root .bk-widget-form-input:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,0.6)}.bk-root .bk-widget-form-input::-moz-placeholder{color:#999;opacity:1}.bk-root .bk-widget-form-input:-ms-input-placeholder{color:#999}.bk-root .bk-widget-form-input::-webkit-input-placeholder{color:#999}.bk-root .bk-widget-form-input[disabled],.bk-root .bk-widget-form-input[readonly],fieldset[disabled] .bk-root .bk-widget-form-input{cursor:not-allowed;background-color:#eee;opacity:1}textarea.bk-root .bk-widget-form-input{height:auto}.bk-root .bk-widget button{min-width:100%}.bk-root .bk-widget input[type=\\\"text\\\"]{min-width:90%}.bk-root .bk-widget select{min-width:97%}.bk-root .bk-bs-dropdown-toggle .bk-bs-caret{margin-left:5px}.bk-root .bk-bs-dropdown-menu{width:100%}.bk-root .bk-bs-nav-tabs{overflow:hidden}.bk-root .bk-slider label{margin-right:5px}.bk-root .bk-slider .bk-slider-value{display:inline-block;font-weight:600}.bk-root .bk-slider input,.bk-root .bk-slider .bk-slider-value{margin-bottom:5px}\\n/* END bokeh-widgets.min.css */\");\n      console.log(\"Bokeh: injecting raw CSS\");\n      Bokeh.embed.inject_raw_css(\"/* BEGIN bokeh-tables.min.css */\\n.bk-root .slick-header.ui-state-default,.bk-root .slick-headerrow.ui-state-default,.bk-root .slick-footerrow.ui-state-default{width:100%;overflow:hidden;border-left:0 !important}.bk-root .slick-header-columns,.bk-root .slick-headerrow-columns,.bk-root .slick-footerrow-columns{position:relative;white-space:nowrap;cursor:default;overflow:hidden}.bk-root .slick-header-column.ui-state-default{position:relative;display:inline-block;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:0 !important;border-top:0 !important;border-bottom:0 !important;float:left}.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;padding-left:1px;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:.1px;display:block;cursor:col-resize;width:4px;right:0;top:0;height:100%}.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:0;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 .5s;-moz-transition:all .5s;-o-transition:all .5s;transition:all .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:0}.bk-root .slick-reorder-proxy{display:inline-block;background:blue;opacity:.15;cursor:move}.bk-root .slick-reorder-guide{display:inline-block;height:2px;background:blue;opacity:.7}.bk-root .slick-selection{z-index:10;position:absolute;border:2px dashed black}.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:0;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:.5}.bk-root .slick-cell.invalid{border-color:red;-moz-animation-duration:.2s;-webkit-animation-duration:.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:.2s width;-ms-transition:.2s width;transition:.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-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:100px;cursor:default}.bk-root .slick-columnpicker li{list-style:none;margin:0;padding:0;background:0}.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-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{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .slick-header-column:hover,.bk-root .slick-header-column-active{background-image:url(\\\"data:image/gif;base64,R0lGODlhAgAWAIcAAKrM9tno++vz/QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABYAAAgUAAUIHEiwoIAACBMqXMhwIQAAAQEAOw==\\\")}.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:url(\\\"data:image/gif;base64,R0lGODlhAgAYAIcAANDQ0Ovs7uzt7+3u8O7v8e/w8vDx8/Hy9Pn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAP8ALAAAAAACABgAAAghABEIHEiwYMEDCA8YWMiwgMMCBAgMmDhAgIAAGAMAABAQADs=\\\")}.bk-root .bk-data-table{font-size:11px}.bk-root .bk-data-table input[type=\\\"checkbox\\\"]{margin-left:4px;margin-right:4px}.bk-root .bk-data-table *{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.bk-root .bk-data-table *:before,.bk-root .bk-data-table *:after{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}.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 .bk-cell-index{border-right-color:silver;border-right-style:solid;background:#f5f5f5;text-align:right;color:gray}.bk-root .bk-header-index .slick-column-name{float:right}.bk-root .slick-row.selected .bk-cell-index{background-color:transparent}.bk-root .slick-cell{padding-left:4px;padding-right:4px}.bk-root .slick-cell.active{border-style:dashed}.bk-root .slick-cell.editable{padding-left:0;padding-right:0}.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/* END bokeh-tables.min.css */\");\n    }\n  ];\n\n  function run_inline_js() {\n    \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    } else if (force !== true) {\n      var cell = $(document.getElementById(null)).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.log(\"Bokeh: BokehJS loaded, going straight to plotting\");\n    run_inline_js();\n  } else {\n    load_libs(js_urls, function() {\n      console.log(\"Bokeh: BokehJS plotting callback run at\", now());\n      run_inline_js();\n    });\n  }\n}(window));"
2182
+     },
2183
+     "metadata": {},
2184
+     "output_type": "display_data"
2185
+    },
2186
+    {
2187
+     "data": {
2188
+      "text/html": [
2189
+       "\n",
2190
+       "<script src=\"https://code.jquery.com/ui/1.10.4/jquery-ui.min.js\" type=\"text/javascript\"></script>\n",
2191
+       "<script type=\"text/javascript\">function HoloViewsWidget(){\n",
2192
+       "}\n",
2193
+       "\n",
2194
+       "HoloViewsWidget.comms = {};\n",
2195
+       "HoloViewsWidget.comm_state = {};\n",
2196
+       "\n",
2197
+       "HoloViewsWidget.prototype.init_slider = function(init_val){\n",
2198
+       "  if(this.load_json) {\n",
2199
+       "    this.from_json()\n",
2200
+       "  } else {\n",
2201
+       "    this.update_cache();\n",
2202
+       "  }\n",
2203
+       "}\n",
2204
+       "\n",
2205
+       "HoloViewsWidget.prototype.populate_cache = function(idx){\n",
2206
+       "  this.cache[idx].html(this.frames[idx]);\n",
2207
+       "  if (this.embed) {\n",
2208
+       "    delete this.frames[idx];\n",
2209
+       "  }\n",
2210
+       "}\n",
2211
+       "\n",
2212
+       "HoloViewsWidget.prototype.process_error = function(msg){\n",
2213
+       "\n",
2214
+       "}\n",
2215
+       "\n",
2216
+       "HoloViewsWidget.prototype.from_json = function() {\n",
2217
+       "  var data_url = this.json_path + this.id + '.json';\n",
2218
+       "  $.getJSON(data_url, $.proxy(function(json_data) {\n",
2219
+       "    this.frames = json_data;\n",
2220
+       "    this.update_cache();\n",
2221
+       "    this.update(0);\n",
2222
+       "  }, this));\n",
2223
+       "}\n",
2224
+       "\n",
2225
+       "HoloViewsWidget.prototype.dynamic_update = function(current){\n",
2226
+       "  if (current === undefined) {\n",
2227
+       "    return\n",
2228
+       "  }\n",
2229
+       "  if(this.dynamic) {\n",
2230
+       "    current = JSON.stringify(current);\n",
2231
+       "  }\n",
2232
+       "  function callback(initialized, msg){\n",
2233
+       "    /* This callback receives data from Python as a string\n",
2234
+       "       in order to parse it correctly quotes are sliced off*/\n",
2235
+       "    if (msg.content.ename != undefined) {\n",
2236
+       "      this.process_error(msg);\n",
2237
+       "    }\n",
2238
+       "    if (msg.msg_type != \"execute_result\") {\n",
2239
+       "      console.log(\"Warning: HoloViews callback returned unexpected data for key: (\", current, \") with the following content:\", msg.content)\n",
2240
+       "    } else {\n",
2241
+       "      if (msg.content.data['text/plain'].includes('Complete')) {\n",
2242
+       "        if (this.queue.length > 0) {\n",
2243
+       "          this.time = Date.now();\n",
2244
+       "          this.dynamic_update(this.queue[this.queue.length-1]);\n",
2245
+       "          this.queue = [];\n",
2246
+       "        } else {\n",
2247
+       "          this.wait = false;\n",
2248
+       "        }\n",
2249
+       "        return\n",
2250
+       "      }\n",
2251
+       "    }\n",
2252
+       "  }\n",
2253
+       "  this.current = current;\n",
2254
+       "  if ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel != null)) {\n",
2255
+       "    var kernel = Jupyter.notebook.kernel;\n",
2256
+       "    callbacks = {iopub: {output: $.proxy(callback, this, this.initialized)}};\n",
2257
+       "    var cmd = \"holoviews.plotting.widgets.NdWidget.widgets['\" + this.id + \"'].update(\" + current + \")\";\n",
2258
+       "    kernel.execute(\"import holoviews;\" + cmd, callbacks, {silent : false});\n",
2259
+       "  }\n",
2260
+       "}\n",
2261
+       "\n",
2262
+       "HoloViewsWidget.prototype.update_cache = function(force){\n",
2263
+       "  var frame_len = Object.keys(this.frames).length;\n",
2264
+       "  for (var i=0; i<frame_len; i++) {\n",
2265
+       "    if(!this.load_json || this.dynamic)  {\n",
2266
+       "      frame = Object.keys(this.frames)[i];\n",
2267
+       "    } else {\n",
2268
+       "      frame = i;\n",
2269
+       "    }\n",
2270
+       "    if(!(frame in this.cache) || force) {\n",
2271
+       "      if ((frame in this.cache) && force) { this.cache[frame].remove() }\n",
2272
+       "      this.cache[frame] = $('<div />').appendTo(\"#\"+\"_anim_img\"+this.id).hide();\n",
2273
+       "      var cache_id = \"_anim_img\"+this.id+\"_\"+frame;\n",
2274
+       "      this.cache[frame].attr(\"id\", cache_id);\n",
2275
+       "      this.populate_cache(frame);\n",
2276
+       "    }\n",
2277
+       "  }\n",
2278
+       "}\n",
2279
+       "\n",
2280
+       "HoloViewsWidget.prototype.update = function(current){\n",
2281
+       "  if(current in this.cache) {\n",
2282
+       "    $.each(this.cache, function(index, value) {\n",
2283
+       "      value.hide();\n",
2284
+       "    });\n",
2285
+       "    this.cache[current].show();\n",
2286
+       "    this.wait = false;\n",
2287
+       "  }\n",
2288
+       "}\n",
2289
+       "\n",
2290
+       "HoloViewsWidget.prototype.init_comms = function() {\n",
2291
+       "  if ((window.Jupyter !== undefined) && (Jupyter.notebook.kernel !== undefined)) {\n",
2292
+       "    var widget = this;\n",
2293
+       "    comm_manager = Jupyter.notebook.kernel.comm_manager;\n",
2294
+       "    comm_manager.register_target(this.id, function (comm) {\n",
2295
+       "      comm.on_msg(function (msg) { widget.process_msg(msg) });\n",
2296
+       "    });\n",
2297
+       "  }\n",
2298
+       "}\n",
2299
+       "\n",
2300
+       "HoloViewsWidget.prototype.process_msg = function(msg) {\n",
2301
+       "}\n",
2302
+       "\n",
2303
+       "function SelectionWidget(frames, id, slider_ids, keyMap, dim_vals, notFound, load_json, mode, cached, json_path, dynamic){\n",
2304
+       "  this.frames = frames;\n",
2305
+       "  this.id = id;\n",
2306
+       "  this.slider_ids = slider_ids;\n",
2307
+       "  this.keyMap = keyMap\n",
2308
+       "  this.current_frame = 0;\n",
2309
+       "  this.current_vals = dim_vals;\n",
2310
+       "  this.load_json = load_json;\n",
2311
+       "  this.mode = mode;\n",
2312
+       "  this.notFound = notFound;\n",
2313
+       "  this.cached = cached;\n",
2314
+       "  this.dynamic = dynamic;\n",
2315
+       "  this.cache = {};\n",
2316
+       "  this.json_path = json_path;\n",
2317
+       "  this.init_slider(this.current_vals[0]);\n",
2318
+       "  this.queue = [];\n",
2319
+       "  this.wait = false;\n",
2320
+       "  if (!this.cached || this.dynamic) {\n",
2321
+       "    this.init_comms()\n",
2322
+       "  }\n",
2323
+       "}\n",
2324
+       "\n",
2325
+       "SelectionWidget.prototype = new HoloViewsWidget;\n",
2326
+       "\n",
2327
+       "\n",
2328
+       "SelectionWidget.prototype.get_key = function(current_vals) {\n",
2329
+       "  var key = \"(\";\n",
2330
+       "  for (var i=0; i<this.slider_ids.length; i++)\n",
2331
+       "  {\n",
2332
+       "    val = this.current_vals[i];\n",
2333
+       "    if (!(typeof val === 'string')) {\n",
2334
+       "      if (val % 1 === 0) { val = val.toFixed(1); }\n",
2335
+       "      else { val = val.toFixed(10); val = val.slice(0, val.length-1);}\n",
2336
+       "    }\n",
2337
+       "    key += \"'\" + val + \"'\";\n",
2338
+       "    if(i != this.slider_ids.length-1) { key += ', ';}\n",
2339
+       "    else if(this.slider_ids.length == 1) { key += ',';}\n",
2340
+       "  }\n",
2341
+       "  key += \")\";\n",
2342
+       "  return this.keyMap[key];\n",
2343
+       "}\n",
2344
+       "\n",
2345
+       "SelectionWidget.prototype.set_frame = function(dim_val, dim_idx){\n",
2346
+       "  this.current_vals[dim_idx] = dim_val;\n",
2347
+       "  var key = this.current_vals;\n",
2348
+       "  if (!this.dynamic) {\n",
2349
+       "    key = this.get_key(key)\n",
2350
+       "  }\n",
2351
+       "  if (this.dynamic || !this.cached) {\n",
2352
+       "    if ((this.time !== undefined) && ((this.wait) && ((this.time + 10000) > Date.now()))) {\n",
2353
+       "      this.queue.push(key);\n",
2354
+       "      return\n",
2355
+       "    }\n",
2356
+       "    this.queue = [];\n",
2357
+       "    this.time = Date.now();\n",
2358
+       "    this.current_frame = key;\n",
2359
+       "    this.wait = true;\n",
2360
+       "    this.dynamic_update(key)\n",
2361
+       "  } else if (key !== undefined) {\n",
2362
+       "    this.update(key)\n",
2363
+       "  }\n",
2364
+       "}\n",
2365
+       "\n",
2366
+       "\n",
2367
+       "/* Define the ScrubberWidget class */\n",
2368
+       "function ScrubberWidget(frames, num_frames, id, interval, load_json, mode, cached, json_path, dynamic){\n",
2369
+       "  this.slider_id = \"_anim_slider\" + id;\n",
2370
+       "  this.loop_select_id = \"_anim_loop_select\" + id;\n",
2371
+       "  this.id = id;\n",
2372
+       "  this.interval = interval;\n",
2373
+       "  this.current_frame = 0;\n",
2374
+       "  this.direction = 0;\n",
2375
+       "  this.dynamic = dynamic;\n",
2376
+       "  this.timer = null;\n",
2377
+       "  this.load_json = load_json;\n",
2378
+       "  this.mode = mode;\n",
2379
+       "  this.cached = cached;\n",
2380
+       "  this.frames = frames;\n",
2381
+       "  this.cache = {};\n",
2382
+       "  this.length = num_frames;\n",
2383
+       "  this.json_path = json_path;\n",
2384
+       "  document.getElementById(this.slider_id).max = this.length - 1;\n",
2385
+       "  this.init_slider(0);\n",
2386
+       "  this.wait = false;\n",
2387
+       "  this.queue = [];\n",
2388
+       "  if (!this.cached || this.dynamic) {\n",
2389
+       "    this.init_comms()\n",
2390
+       "  }\n",
2391
+       "}\n",
2392
+       "\n",
2393
+       "ScrubberWidget.prototype = new HoloViewsWidget;\n",
2394
+       "\n",
2395
+       "ScrubberWidget.prototype.set_frame = function(frame){\n",
2396
+       "  this.current_frame = frame;\n",
2397
+       "  widget = document.getElementById(this.slider_id);\n",
2398
+       "  if (widget === null) {\n",
2399
+       "    this.pause_animation();\n",
2400
+       "    return\n",
2401
+       "  }\n",
2402
+       "  widget.value = this.current_frame;\n",
2403
+       "  if(this.cached) {\n",
2404
+       "    this.update(frame)\n",
2405
+       "  } else {\n",
2406
+       "    this.dynamic_update(frame)\n",
2407
+       "  }\n",
2408
+       "}\n",
2409
+       "\n",
2410
+       "\n",
2411
+       "ScrubberWidget.prototype.get_loop_state = function(){\n",
2412
+       "  var button_group = document[this.loop_select_id].state;\n",
2413
+       "  for (var i = 0; i < button_group.length; i++) {\n",
2414
+       "    var button = button_group[i];\n",
2415
+       "    if (button.checked) {\n",
2416
+       "      return button.value;\n",
2417
+       "    }\n",
2418
+       "  }\n",
2419
+       "  return undefined;\n",
2420
+       "}\n",
2421
+       "\n",
2422
+       "\n",
2423
+       "ScrubberWidget.prototype.next_frame = function() {\n",
2424
+       "  this.set_frame(Math.min(this.length - 1, this.current_frame + 1));\n",
2425
+       "}\n",
2426
+       "\n",
2427
+       "ScrubberWidget.prototype.previous_frame = function() {\n",
2428
+       "  this.set_frame(Math.max(0, this.current_frame - 1));\n",
2429
+       "}\n",
2430
+       "\n",
2431
+       "ScrubberWidget.prototype.first_frame = function() {\n",
2432
+       "  this.set_frame(0);\n",
2433
+       "}\n",
2434
+       "\n",
2435
+       "ScrubberWidget.prototype.last_frame = function() {\n",
2436
+       "  this.set_frame(this.length - 1);\n",
2437
+       "}\n",
2438
+       "\n",
2439
+       "ScrubberWidget.prototype.slower = function() {\n",
2440
+       "  this.interval /= 0.7;\n",
2441
+       "  if(this.direction > 0){this.play_animation();}\n",
2442
+       "  else if(this.direction < 0){this.reverse_animation();}\n",
2443
+       "}\n",
2444
+       "\n",
2445
+       "ScrubberWidget.prototype.faster = function() {\n",
2446
+       "  this.interval *= 0.7;\n",
2447
+       "  if(this.direction > 0){this.play_animation();}\n",
2448
+       "  else if(this.direction < 0){this.reverse_animation();}\n",
2449
+       "}\n",
2450
+       "\n",
2451
+       "ScrubberWidget.prototype.anim_step_forward = function() {\n",
2452
+       "  if(this.current_frame < this.length - 1){\n",
2453
+       "    this.next_frame();\n",
2454
+       "  }else{\n",
2455
+       "    var loop_state = this.get_loop_state();\n",
2456
+       "    if(loop_state == \"loop\"){\n",
2457
+       "      this.first_frame();\n",
2458
+       "    }else if(loop_state == \"reflect\"){\n",
2459
+       "      this.last_frame();\n",
2460
+       "      this.reverse_animation();\n",
2461
+       "    }else{\n",
2462
+       "      this.pause_animation();\n",
2463
+       "      this.last_frame();\n",
2464
+       "    }\n",
2465
+       "  }\n",
2466
+       "}\n",
2467
+       "\n",
2468
+       "ScrubberWidget.prototype.anim_step_reverse = function() {\n",
2469
+       "  if(this.current_frame > 0){\n",
2470
+       "    this.previous_frame();\n",
2471
+       "  } else {\n",
2472
+       "    var loop_state = this.get_loop_state();\n",
2473
+       "    if(loop_state == \"loop\"){\n",
2474
+       "      this.last_frame();\n",
2475
+       "    }else if(loop_state == \"reflect\"){\n",
2476
+       "      this.first_frame();\n",
2477
+       "      this.play_animation();\n",
2478
+       "    }else{\n",
2479
+       "      this.pause_animation();\n",
2480
+       "      this.first_frame();\n",
2481
+       "    }\n",
2482
+       "  }\n",
2483
+       "}\n",
2484
+       "\n",
2485
+       "ScrubberWidget.prototype.pause_animation = function() {\n",
2486
+       "  this.direction = 0;\n",
2487
+       "  if (this.timer){\n",
2488
+       "    clearInterval(this.timer);\n",
2489
+       "    this.timer = null;\n",
2490
+       "  }\n",
2491
+       "}\n",
2492
+       "\n",
2493
+       "ScrubberWidget.prototype.play_animation = function() {\n",
2494
+       "  this.pause_animation();\n",
2495
+       "  this.direction = 1;\n",
2496
+       "  var t = this;\n",
2497
+       "  if (!this.timer) this.timer = setInterval(function(){t.anim_step_forward();}, this.interval);\n",
2498
+       "}\n",
2499
+       "\n",
2500
+       "ScrubberWidget.prototype.reverse_animation = function() {\n",
2501
+       "  this.pause_animation();\n",
2502
+       "  this.direction = -1;\n",
2503
+       "  var t = this;\n",
2504
+       "  if (!this.timer) this.timer = setInterval(function(){t.anim_step_reverse();}, this.interval);\n",
2505
+       "}\n",
2506
+       "\n",
2507
+       "function extend(destination, source) {\n",
2508
+       "  for (var k in source) {\n",
2509
+       "    if (source.hasOwnProperty(k)) {\n",
2510
+       "      destination[k] = source[k];\n",
2511
+       "    }\n",
2512
+       "  }\n",
2513
+       "  return destination;\n",
2514
+       "}\n",
2515
+       "\n",
2516
+       "function update_widget(widget, values) {\n",
2517
+       "  if (widget.hasClass(\"ui-slider\")) {\n",
2518
+       "    widget.slider('option', {\n",
2519
+       "      min: 0,\n",
2520
+       "      max: values.length-1,\n",
2521
+       "      dim_vals: values,\n",
2522
+       "      value: 0,\n",
2523
+       "      dim_labels: values\n",
2524
+       "\t})\n",
2525
+       "    widget.slider('option', 'slide').call(widget, event, {value: 0})\n",
2526
+       "  } else {\n",
2527
+       "    widget.empty();\n",
2528
+       "    for (var i=0; i<values.length; i++){\n",
2529
+       "      widget.append($(\"<option>\", {\n",
2530
+       "        value: i,\n",
2531
+       "        text: values[i]\n",
2532
+       "      }))\n",
2533
+       "    };\n",
2534
+       "    widget.data('values', values);\n",
2535
+       "    widget.data('value', 0);\n",
2536
+       "    widget.trigger(\"change\");\n",
2537
+       "  };\n",
2538
+       "}\n",
2539
+       "\n",
2540
+       "// Define Bokeh specific subclasses\n",
2541
+       "function BokehSelectionWidget() {\n",
2542
+       "\tSelectionWidget.apply(this, arguments);\n",
2543
+       "}\n",
2544
+       "\n",
2545
+       "function BokehScrubberWidget() {\n",
2546
+       "\tScrubberWidget.apply(this, arguments);\n",
2547
+       "}\n",
2548
+       "\n",
2549
+       "// Let them inherit from the baseclasses\n",
2550
+       "BokehSelectionWidget.prototype = Object.create(SelectionWidget.prototype);\n",
2551
+       "BokehScrubberWidget.prototype = Object.create(ScrubberWidget.prototype);\n",
2552
+       "\n",
2553
+       "// Define methods to override on widgets\n",
2554
+       "var BokehMethods = {\n",
2555
+       "\tupdate_cache : function(){\n",
2556
+       "\t\t$.each(this.frames, $.proxy(function(index, frame) {\n",
2557
+       "\t\t\tthis.frames[index] = JSON.parse(frame);\n",
2558
+       "\t\t}, this));\n",
2559
+       "\t},\n",
2560
+       "\tupdate : function(current){\n",
2561
+       "\t\tif (current === undefined) {\n",
2562
+       "\t\t\tvar data = undefined;\n",
2563
+       "\t\t} else {\n",
2564
+       "\t\t\tvar data = this.frames[current];\n",
2565
+       "\t\t}\n",
2566
+       "\t\tif (data !== undefined) {\n",
2567
+       "\t\t\tvar doc = Bokeh.index[data.root].model.document;\n",
2568
+       "\t\t\tdoc.apply_json_patch(data.content);\n",
2569
+       "\t\t}\n",
2570
+       "\t},\n",
2571
+       "\tinit_comms : function() {\n",
2572
+       "\t}\n",
2573
+       "}\n",
2574
+       "\n",
2575
+       "// Extend Bokeh widgets with backend specific methods\n",
2576
+       "extend(BokehSelectionWidget.prototype, BokehMethods);\n",
2577
+       "extend(BokehScrubberWidget.prototype, BokehMethods);\n",
2578
+       "</script>\n",
2579
+       "\n",
2580
+       "\n",
2581
+       "<link rel=\"stylesheet\" href=\"https://code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css\">\n",
2582
+       "<style>div.hololayout {\n",
2583
+       "    display: flex;\n",
2584
+       "    align-items: center;\n",
2585
+       "    margin: 0;\n",
2586
+       "}\n",
2587
+       "\n",
2588
+       "div.holoframe {\n",
2589
+       "\twidth: 75%;\n",
2590
+       "}\n",
2591
+       "\n",
2592
+       "div.holowell {\n",
2593
+       "    display: flex;\n",
2594
+       "    align-items: center;\n",
2595
+       "    margin: 0;\n",
2596
+       "}\n",
2597
+       "\n",
2598
+       "form.holoform {\n",
2599
+       "    background-color: #fafafa;\n",
2600
+       "    border-radius: 5px;\n",
2601
+       "    overflow: hidden;\n",
2602
+       "\tpadding-left: 0.8em;\n",
2603
+       "    padding-right: 0.8em;\n",
2604
+       "    padding-top: 0.4em;\n",
2605
+       "    padding-bottom: 0.4em;\n",
2606
+       "}\n",
2607
+       "\n",
2608
+       "div.holowidgets {\n",
2609
+       "    padding-right: 0;\n",
2610
+       "\twidth: 25%;\n",
2611
+       "}\n",
2612
+       "\n",
2613
+       "div.holoslider {\n",
2614
+       "    min-height: 0 !important;\n",
2615
+       "    height: 0.8em;\n",
2616
+       "    width: 60%;\n",
2617
+       "}\n",
2618
+       "\n",
2619
+       "div.holoformgroup {\n",
2620
+       "    padding-top: 0.5em;\n",
2621
+       "    margin-bottom: 0.5em;\n",
2622
+       "}\n",
2623
+       "\n",
2624
+       "div.hologroup {\n",
2625
+       "    padding-left: 0;\n",
2626
+       "    padding-right: 0.8em;\n",
2627
+       "    width: 50%;\n",
2628
+       "}\n",
2629
+       "\n",
2630
+       ".holoselect {\n",
2631
+       "    width: 92%;\n",
2632
+       "    margin-left: 0;\n",
2633
+       "    margin-right: 0;\n",
2634
+       "}\n",
2635
+       "\n",
2636
+       ".holotext {\n",
2637
+       "    width: 100%;\n",
2638
+       "    padding-left:  0.5em;\n",
2639
+       "    padding-right: 0;\n",
2640
+       "}\n",
2641
+       "\n",
2642
+       ".holowidgets .ui-resizable-se {\n",
2643
+       "\tvisibility: hidden\n",
2644
+       "}\n",
2645
+       "\n",
2646
+       ".holoframe > .ui-resizable-se {\n",
2647
+       "\tvisibility: hidden\n",
2648
+       "}\n",
2649
+       "\n",
2650
+       ".holowidgets .ui-resizable-s {\n",
2651
+       "\tvisibility: hidden\n",
2652
+       "}\n",
2653
+       "\n",
2654
+       "div.bk-hbox {\n",
2655
+       "    display: flex;\n",
2656
+       "    justify-content: center;\n",
2657
+       "}\n",
2658
+       "\n",
2659
+       "div.bk-hbox div.bk-plot {\n",
2660
+       "    padding: 8px;\n",
2661
+       "}\n",
2662
+       "\n",
2663
+       "div.bk-hbox div.bk-data-table {\n",
2664
+       "    padding: 20px;\n",
2665
+       "}\n",
2666
+       "</style>\n",
2667
+       "\n"
2668
+      ],
2669
+      "text/plain": [
2670
+       "<IPython.core.display.HTML object>"
2671
+      ]
2672
+     },
2673
+     "metadata": {},
2674
+     "output_type": "display_data"
2675
+    }
2676
+   ],
2677
+   "source": [
2678
+    "# run once to enable live info and plotting\n",
2679
+    "adaptive.notebook_extension()"
2680
+   ]
2681
+  },
2682
+  {
2683
+   "cell_type": "code",
2684
+   "execution_count": 16,
2685
+   "metadata": {
2686
+    "tags": [
2687
+     "hide-output"
2688
+    ]
2689
+   },
2690
+   "outputs": [
2691
+    {
2692
+     "data": {
2693
+      "application/vnd.jupyter.widget-view+json": {
2694
+       "model_id": "9ead4c0bf2b84a6f8fbc94486449a694",
2695
+       "version_major": 2,
2696
+       "version_minor": 0
2697
+      },
2698
+      "text/plain": [
2699
+       "HBox(children=(HTML(value='\\n        <dl>\\n        <dt class=\"ignore-css\">status</dt><dd><font color=\"blue\">ru…"
2700
+      ]
2701
+     },
2702
+     "metadata": {},
2703
+     "output_type": "display_data"
2704
+    },
2705
+    {
2706
+     "data": {
2707
+      "application/vnd.jupyter.widget-view+json": {
2708
+       "model_id": "ccba88ee31674559b5056f1c831c5f41",
2709
+       "version_major": 2,
2710
+       "version_minor": 0
2711
+      },
2712
+      "text/plain": [
2713
+       "Button(description='cancel live-plot', layout=Layout(width='150px'), style=ButtonStyle())"
2714
+      ]
2715
+     },
2716
+     "metadata": {},
2717
+     "output_type": "display_data"
2718
+    },
2719
+    {
2720
+     "data": {
2721
+      "text/html": [
2722
+       "<div style='display: table; margin: 0 auto;'>\n",
2723
+       "\n",
2724
+       "\n",
2725
+       "\n",
2726
+       "\n",
2727
+       "\n",
2728
+       "\n",
2729
+       "  <div class=\"bk-root\" id=\"dfe715cb-618e-4540-96e5-db1a9d726fe3\"></div>\n",
2730
+       "\n",
2731
+       "<script type=\"text/javascript\">\n",
2732
+       "  (function(root) {\n",
2733
+       "  function embed_document(root) {\n",
2734
+       "    \n",
2735
+       "  var docs_json = {\"d21955d6-2bf3-41b4-bde4-f7af639a8cec\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"1507\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1512\",\"type\":\"LinearAxis\"}],\"min_border_bottom\":10,\"min_border_left\":10,\"min_border_right\":10,\"min_border_top\":10,\"plot_height\":300,\"plot_width\":300,\"renderers\":[{\"id\":\"1507\",\"type\":\"LinearAxis\"},{\"id\":\"1511\",\"type\":\"Grid\"},{\"id\":\"1512\",\"type\":\"LinearAxis\"},{\"id\":\"1516\",\"type\":\"Grid\"},{\"id\":\"1525\",\"type\":\"BoxAnnotation\"},{\"id\":\"1539\",\"type\":\"GlyphRenderer\"},{\"id\":\"1547\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"1498\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"1522\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"1496\",\"type\":\"Range1d\"},\"x_scale\":{\"id\":\"1503\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"1497\",\"type\":\"Range1d\"},\"y_scale\":{\"id\":\"1505\",\"type\":\"LinearScale\"}},\"id\":\"1499\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"axis_label\":\"y\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1533\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1499\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1513\",\"type\":\"BasicTicker\"}},\"id\":\"1512\",\"type\":\"LinearAxis\"},{\"attributes\":{\"line_alpha\":{\"value\":0},\"line_color\":{\"value\":\"#000000\"},\"line_width\":{\"value\":0.5},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1543\",\"type\":\"MultiLine\"},{\"attributes\":{\"line_alpha\":{\"value\":0.2},\"line_color\":{\"value\":\"#000000\"},\"line_width\":{\"value\":0.5},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1544\",\"type\":\"MultiLine\"},{\"attributes\":{},\"id\":\"1513\",\"type\":\"BasicTicker\"},{\"attributes\":{\"line_color\":{\"value\":\"#32CD32\"},\"line_width\":{\"value\":0.5},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1545\",\"type\":\"MultiLine\"},{\"attributes\":{\"dimension\":1,\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1499\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1513\",\"type\":\"BasicTicker\"}},\"id\":\"1516\",\"type\":\"Grid\"},{\"attributes\":{},\"id\":\"1556\",\"type\":\"Selection\"},{\"attributes\":{\"line_color\":{\"value\":\"#CD5C5C\"},\"line_width\":{\"value\":0.5},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1546\",\"type\":\"MultiLine\"},{\"attributes\":{\"callback\":null,\"start\":-1.0},\"id\":\"1497\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"1533\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"data_source\":{\"id\":\"1541\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1543\",\"type\":\"MultiLine\"},\"hover_glyph\":{\"id\":\"1546\",\"type\":\"MultiLine\"},\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1544\",\"type\":\"MultiLine\"},\"selection_glyph\":{\"id\":\"1545\",\"type\":\"MultiLine\"},\"view\":{\"id\":\"1548\",\"type\":\"CDSView\"}},\"id\":\"1547\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1517\",\"type\":\"SaveTool\"},{\"attributes\":{},\"id\":\"1557\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1517\",\"type\":\"SaveTool\"},{\"id\":\"1518\",\"type\":\"PanTool\"},{\"id\":\"1519\",\"type\":\"WheelZoomTool\"},{\"id\":\"1520\",\"type\":\"BoxZoomTool\"},{\"id\":\"1521\",\"type\":\"ResetTool\"}]},\"id\":\"1522\",\"type\":\"Toolbar\"},{\"attributes\":{\"source\":{\"id\":\"1541\",\"type\":\"ColumnDataSource\"}},\"id\":\"1548\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1555\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1518\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1519\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1558\",\"type\":\"Selection\"},{\"attributes\":{\"overlay\":{\"id\":\"1525\",\"type\":\"BoxAnnotation\"}},\"id\":\"1520\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1521\",\"type\":\"ResetTool\"},{\"attributes\":{\"plot\":null,\"text\":\"\",\"text_color\":{\"value\":\"black\"},\"text_font_size\":{\"value\":\"12pt\"}},\"id\":\"1498\",\"type\":\"Title\"},{\"attributes\":{\"callback\":null,\"data\":{\"dh\":[2.0],\"dw\":[2.0],\"image\":[{\"__ndarray__\":\"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\",\"dtype\":\"float64\",\"shape\":[104,104]}],\"x\":[-1.0],\"y\":[-1.0]},\"selected\":{\"id\":\"1556\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1555\",\"type\":\"UnionRenderers\"}},\"id\":\"1535\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"high\":1.4784297618377549,\"low\":-1.0,\"palette\":[\"#440154\",\"#440255\",\"#440357\",\"#450558\",\"#45065a\",\"#45085b\",\"#46095c\",\"#460b5e\",\"#460c5f\",\"#460e61\",\"#470f62\",\"#471163\",\"#471265\",\"#471466\",\"#471567\",\"#471669\",\"#47186a\",\"#48196b\",\"#481a6c\",\"#481c6e\",\"#481d6f\",\"#481e70\",\"#482071\",\"#482172\",\"#482273\",\"#482374\",\"#472575\",\"#472676\",\"#472777\",\"#472878\",\"#472a79\",\"#472b7a\",\"#472c7b\",\"#462d7c\",\"#462f7c\",\"#46307d\",\"#46317e\",\"#45327f\",\"#45347f\",\"#453580\",\"#453681\",\"#443781\",\"#443982\",\"#433a83\",\"#433b83\",\"#433c84\",\"#423d84\",\"#423e85\",\"#424085\",\"#414186\",\"#414286\",\"#404387\",\"#404487\",\"#3f4587\",\"#3f4788\",\"#3e4888\",\"#3e4989\",\"#3d4a89\",\"#3d4b89\",\"#3d4c89\",\"#3c4d8a\",\"#3c4e8a\",\"#3b508a\",\"#3b518a\",\"#3a528b\",\"#3a538b\",\"#39548b\",\"#39558b\",\"#38568b\",\"#38578c\",\"#37588c\",\"#37598c\",\"#365a8c\",\"#365b8c\",\"#355c8c\",\"#355d8c\",\"#345e8d\",\"#345f8d\",\"#33608d\",\"#33618d\",\"#32628d\",\"#32638d\",\"#31648d\",\"#31658d\",\"#31668d\",\"#30678d\",\"#30688d\",\"#2f698d\",\"#2f6a8d\",\"#2e6b8e\",\"#2e6c8e\",\"#2e6d8e\",\"#2d6e8e\",\"#2d6f8e\",\"#2c708e\",\"#2c718e\",\"#2c728e\",\"#2b738e\",\"#2b748e\",\"#2a758e\",\"#2a768e\",\"#2a778e\",\"#29788e\",\"#29798e\",\"#287a8e\",\"#287a8e\",\"#287b8e\",\"#277c8e\",\"#277d8e\",\"#277e8e\",\"#267f8e\",\"#26808e\",\"#26818e\",\"#25828e\",\"#25838d\",\"#24848d\",\"#24858d\",\"#24868d\",\"#23878d\",\"#23888d\",\"#23898d\",\"#22898d\",\"#228a8d\",\"#228b8d\",\"#218c8d\",\"#218d8c\",\"#218e8c\",\"#208f8c\",\"#20908c\",\"#20918c\",\"#1f928c\",\"#1f938b\",\"#1f948b\",\"#1f958b\",\"#1f968b\",\"#1e978a\",\"#1e988a\",\"#1e998a\",\"#1e998a\",\"#1e9a89\",\"#1e9b89\",\"#1e9c89\",\"#1e9d88\",\"#1e9e88\",\"#1e9f88\",\"#1ea087\",\"#1fa187\",\"#1fa286\",\"#1fa386\",\"#20a485\",\"#20a585\",\"#21a685\",\"#21a784\",\"#22a784\",\"#23a883\",\"#23a982\",\"#24aa82\",\"#25ab81\",\"#26ac81\",\"#27ad80\",\"#28ae7f\",\"#29af7f\",\"#2ab07e\",\"#2bb17d\",\"#2cb17d\",\"#2eb27c\",\"#2fb37b\",\"#30b47a\",\"#32b57a\",\"#33b679\",\"#35b778\",\"#36b877\",\"#38b976\",\"#39b976\",\"#3bba75\",\"#3dbb74\",\"#3ebc73\",\"#40bd72\",\"#42be71\",\"#44be70\",\"#45bf6f\",\"#47c06e\",\"#49c16d\",\"#4bc26c\",\"#4dc26b\",\"#4fc369\",\"#51c468\",\"#53c567\",\"#55c666\",\"#57c665\",\"#59c764\",\"#5bc862\",\"#5ec961\",\"#60c960\",\"#62ca5f\",\"#64cb5d\",\"#67cc5c\",\"#69cc5b\",\"#6bcd59\",\"#6dce58\",\"#70ce56\",\"#72cf55\",\"#74d054\",\"#77d052\",\"#79d151\",\"#7cd24f\",\"#7ed24e\",\"#81d34c\",\"#83d34b\",\"#86d449\",\"#88d547\",\"#8bd546\",\"#8dd644\",\"#90d643\",\"#92d741\",\"#95d73f\",\"#97d83e\",\"#9ad83c\",\"#9dd93a\",\"#9fd938\",\"#a2da37\",\"#a5da35\",\"#a7db33\",\"#aadb32\",\"#addc30\",\"#afdc2e\",\"#b2dd2c\",\"#b5dd2b\",\"#b7dd29\",\"#bade27\",\"#bdde26\",\"#bfdf24\",\"#c2df22\",\"#c5df21\",\"#c7e01f\",\"#cae01e\",\"#cde01d\",\"#cfe11c\",\"#d2e11b\",\"#d4e11a\",\"#d7e219\",\"#dae218\",\"#dce218\",\"#dfe318\",\"#e1e318\",\"#e4e318\",\"#e7e419\",\"#e9e419\",\"#ece41a\",\"#eee51b\",\"#f1e51c\",\"#f3e51e\",\"#f6e61f\",\"#f8e621\",\"#fae622\",\"#fde724\"]},\"id\":\"1534\",\"type\":\"LinearColorMapper\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":{\"value\":0.5},\"fill_color\":{\"value\":\"lightgrey\"},\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":{\"value\":1.0},\"line_color\":{\"value\":\"black\"},\"line_dash\":[4,4],\"line_width\":{\"value\":2},\"plot\":null,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1525\",\"type\":\"BoxAnnotation\"},{\"attributes\":{},\"id\":\"1505\",\"type\":\"LinearScale\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1534\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1537\",\"type\":\"Image\"},{\"attributes\":{},\"id\":\"1531\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"color_mapper\":{\"id\":\"1534\",\"type\":\"LinearColorMapper\"},\"dh\":{\"field\":\"dh\",\"units\":\"data\"},\"dw\":{\"field\":\"dw\",\"units\":\"data\"},\"image\":{\"field\":\"image\"},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1538\",\"type\":\"Image\"},{\"attributes\":{\"data_source\":{\"id\":\"1535\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1537\",\"type\":\"Image\"},\"hover_glyph\":null,\"muted_glyph\":null,\"nonselection_glyph\":{\"id\":\"1538\",\"type\":\"Image\"},\"selection_glyph\":null,\"view\":{\"id\":\"1540\",\"type\":\"CDSView\"}},\"id\":\"1539\",\"type\":\"GlyphRenderer\"},{\"attributes\":{},\"id\":\"1508\",\"type\":\"BasicTicker\"},{\"attributes\":{\"axis_label\":\"x\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1531\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1499\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1508\",\"type\":\"BasicTicker\"}},\"id\":\"1507\",\"type\":\"LinearAxis\"},{\"attributes\":{\"callback\":null,\"start\":-1.0},\"id\":\"1496\",\"type\":\"Range1d\"},{\"attributes\":{\"source\":{\"id\":\"1535\",\"type\":\"ColumnDataSource\"}},\"id\":\"1540\",\"type\":\"CDSView\"},{\"attributes\":{\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1499\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1508\",\"type\":\"BasicTicker\"}},\"id\":\"1511\",\"type\":\"Grid\"},{\"attributes\":{\"callback\":null,\"data\":{\"xs\":[],\"ys\":[]},\"selected\":{\"id\":\"1558\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1557\",\"type\":\"UnionRenderers\"}},\"id\":\"1541\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1503\",\"type\":\"LinearScale\"}],\"root_ids\":[\"1499\"]},\"title\":\"Bokeh Application\",\"version\":\"1.0.2\"}};\n",
2736
+       "  var render_items = [{\"docid\":\"d21955d6-2bf3-41b4-bde4-f7af639a8cec\",\"notebook_comms_target\":\"8abdd9de825f41b28fdadc56dde51dfc\",\"roots\":{\"1499\":\"dfe715cb-618e-4540-96e5-db1a9d726fe3\"}}];\n",
2737
+       "  root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n",
2738
+       "\n",
2739
+       "  }\n",
2740
+       "  if (root.Bokeh !== undefined) {\n",
2741
+       "    embed_document(root);\n",
2742
+       "  } else {\n",
2743
+       "    var attempts = 0;\n",
2744
+       "    var timer = setInterval(function(root) {\n",
2745
+       "      if (root.Bokeh !== undefined) {\n",
2746
+       "        embed_document(root);\n",
2747
+       "        clearInterval(timer);\n",
2748
+       "      }\n",
2749
+       "      attempts++;\n",
2750
+       "      if (attempts > 100) {\n",
2751
+       "        console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n",
2752
+       "        clearInterval(timer);\n",
2753
+       "      }\n",
2754
+       "    }, 10, root)\n",
2755
+       "  }\n",
2756
+       "})(window);\n",
2757
+       "</script>\n",
2758
+       "</div>"
2759
+      ],
2760
+      "text/plain": [
2761
+       ":DynamicMap   []"
2762
+      ]
2763
+     },
2764
+     "execution_count": 16,
2765
+     "metadata": {},
2766
+     "output_type": "execute_result"
2767
+    }
2768
+   ],
2769
+   "source": [
2770
+    "runner.live_info()\n",
2771
+    "runner.live_plot(update_interval=0.1)"
2772
+   ]
2773
+  },
2774
+  {
2775
+   "cell_type": "markdown",
2776
+   "metadata": {},
2777
+   "source": [
2778
+    "<video src=\"runner.webm\" controls></video>"
2779
+   ]
2780
+  },
2781
+  {
2782
+   "cell_type": "markdown",
2783
+   "metadata": {},
2784
+   "source": [
2785
+    "### But how does it work?"
2786
+   ]
2787
+  },
2788
+  {
2789
+   "cell_type": "markdown",
2790
+   "metadata": {},
2791
+   "source": [
2792
+    "I said above that we modelled the core `Learner` API after `scikit-optimize`, however in practice the `Learner`s that we have implemented so far are *not* based on Bayesian optimization (although we would welcome pull requests!)\n",
2793
+    "\n",
2794
+    "In practice the learners implemented so far all work in more or less the same way:\n",
2795
+    "\n",
2796
+    "+ Divide the function domain into *subdomains* (intervals in 1D, triangles in 2D etc.), and put points at the corners\n",
2797
+    "+ Define a *loss function* over each subdomain\n",
2798
+    "+ *Sort* the subdomains by their loss\n",
2799
+    "+ When asked for more points, select the subdomains with the largest losses, bisect them, and add points at the corners of the newly added subdomains"
2800
+   ]
2801
+  },
2802
+  {
2803
+   "cell_type": "markdown",
2804
+   "metadata": {},
2805
+   "source": [
2806
+    "It's illustrative to look at the algorithm in 1D to see how this works.\n",
2807
+    "\n",
2808
+    "You can use the slider below to add points; the red line and red points indicate the interval with the largest loss. If you increase the number of points by 1, the learner will place a point in the center of the red interval (bisecting it) and the interval with the next-largest loss will be marked in red."
2809
+   ]
2810
+  },
2811
+  {
2812
+   "cell_type": "code",
2813
+   "execution_count": 17,
2814
+   "metadata": {
2815
+    "tags": [
2816
+     "hide-input"
2817
+    ]
2818
+   },
2819
+   "outputs": [
2820
+    {
2821
+     "data": {
2822
+      "text/html": [
2823
+       "<div class=\"hololayout row row-fluid\">\n",
2824
+       "  <div class=\"holoframe\" id=\"display_aread9d78d6e6e174e009947049b1fb70b43\">\n",
2825
+       "    <div id=\"_anim_imgd9d78d6e6e174e009947049b1fb70b43\">\n",
2826
+       "      \n",
2827
+       "      <div style='display: table; margin: 0 auto;'>\n",
2828
+       "\n",
2829
+       "\n",
2830
+       "\n",
2831
+       "\n",
2832
+       "\n",
2833
+       "\n",
2834
+       "  <div class=\"bk-root\" id=\"8952599e-deea-44ba-8bf5-633fe1397814\"></div>\n",
2835
+       "\n",
2836
+       "<script type=\"text/javascript\">\n",
2837
+       "  (function(root) {\n",
2838
+       "  function embed_document(root) {\n",
2839
+       "    \n",
2840
+       "  var docs_json = {\"695c5fb9-5176-4c78-bb6d-2abe6633dd7d\":{\"roots\":{\"references\":[{\"attributes\":{\"below\":[{\"id\":\"1892\",\"type\":\"LinearAxis\"}],\"left\":[{\"id\":\"1897\",\"type\":\"LinearAxis\"}],\"min_border_bottom\":10,\"min_border_left\":10,\"min_border_right\":10,\"min_border_top\":10,\"plot_height\":300,\"plot_width\":300,\"renderers\":[{\"id\":\"1892\",\"type\":\"LinearAxis\"},{\"id\":\"1896\",\"type\":\"Grid\"},{\"id\":\"1897\",\"type\":\"LinearAxis\"},{\"id\":\"1901\",\"type\":\"Grid\"},{\"id\":\"1910\",\"type\":\"BoxAnnotation\"},{\"id\":\"1925\",\"type\":\"GlyphRenderer\"},{\"id\":\"1932\",\"type\":\"GlyphRenderer\"},{\"id\":\"1940\",\"type\":\"GlyphRenderer\"},{\"id\":\"1948\",\"type\":\"GlyphRenderer\"}],\"title\":{\"id\":\"1883\",\"type\":\"Title\"},\"toolbar\":{\"id\":\"1907\",\"type\":\"Toolbar\"},\"x_range\":{\"id\":\"1881\",\"type\":\"Range1d\"},\"x_scale\":{\"id\":\"1888\",\"type\":\"LinearScale\"},\"y_range\":{\"id\":\"1882\",\"type\":\"Range1d\"},\"y_scale\":{\"id\":\"1890\",\"type\":\"LinearScale\"}},\"id\":\"1884\",\"subtype\":\"Figure\",\"type\":\"Plot\"},{\"attributes\":{\"callback\":null,\"end\":1.1,\"start\":-1.1},\"id\":\"1881\",\"type\":\"Range1d\"},{\"attributes\":{\"callback\":null,\"data\":{\"x\":{\"__ndarray__\":\"gMb60Fgfuj+QJEmSJEnCPw==\",\"dtype\":\"float64\",\"shape\":[2]},\"y\":{\"__ndarray__\":\"lDsSSC/+8D9UjuEREOXIPw==\",\"dtype\":\"float64\",\"shape\":[2]}},\"selected\":{\"id\":\"1975\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1974\",\"type\":\"UnionRenderers\"}},\"id\":\"1935\",\"type\":\"ColumnDataSource\"},{\"attributes\":{},\"id\":\"1903\",\"type\":\"PanTool\"},{\"attributes\":{},\"id\":\"1890\",\"type\":\"LinearScale\"},{\"attributes\":{},\"id\":\"1973\",\"type\":\"Selection\"},{\"attributes\":{},\"id\":\"1904\",\"type\":\"WheelZoomTool\"},{\"attributes\":{},\"id\":\"1974\",\"type\":\"UnionRenderers\"},{\"attributes\":{},\"id\":\"1898\",\"type\":\"BasicTicker\"},{\"attributes\":{},\"id\":\"1918\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"fill_color\":{\"value\":\"#ff0000\"},\"line_color\":{\"value\":\"#ff0000\"},\"size\":{\"units\":\"screen\",\"value\":2.449489742783178},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1937\",\"type\":\"Scatter\"},{\"attributes\":{\"overlay\":{\"id\":\"1910\",\"type\":\"BoxAnnotation\"}},\"id\":\"1905\",\"type\":\"BoxZoomTool\"},{\"attributes\":{},\"id\":\"1975\",\"type\":\"Selection\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#ff0000\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#ff0000\"},\"size\":{\"units\":\"screen\",\"value\":2.449489742783178},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1938\",\"type\":\"Scatter\"},{\"attributes\":{\"axis_label\":\"y\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1918\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1884\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1898\",\"type\":\"BasicTicker\"}},\"id\":\"1897\",\"type\":\"LinearAxis\"},{\"attributes\":{},\"id\":\"1906\",\"type\":\"ResetTool\"},{\"attributes\":{},\"id\":\"1976\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"active_drag\":\"auto\",\"active_inspect\":\"auto\",\"active_multi\":null,\"active_scroll\":\"auto\",\"active_tap\":\"auto\",\"tools\":[{\"id\":\"1902\",\"type\":\"SaveTool\"},{\"id\":\"1903\",\"type\":\"PanTool\"},{\"id\":\"1904\",\"type\":\"WheelZoomTool\"},{\"id\":\"1905\",\"type\":\"BoxZoomTool\"},{\"id\":\"1906\",\"type\":\"ResetTool\"}]},\"id\":\"1907\",\"type\":\"Toolbar\"},{\"attributes\":{\"fill_color\":{\"value\":\"#30a2da\"},\"line_color\":{\"value\":\"#30a2da\"},\"size\":{\"units\":\"screen\",\"value\":2.449489742783178},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1922\",\"type\":\"Scatter\"},{\"attributes\":{},\"id\":\"1977\",\"type\":\"Selection\"},{\"attributes\":{\"bottom_units\":\"screen\",\"fill_alpha\":{\"value\":0.5},\"fill_color\":{\"value\":\"lightgrey\"},\"left_units\":\"screen\",\"level\":\"overlay\",\"line_alpha\":{\"value\":1.0},\"line_color\":{\"value\":\"black\"},\"line_dash\":[4,4],\"line_width\":{\"value\":2},\"plot\":null,\"render_mode\":\"css\",\"right_units\":\"screen\",\"top_units\":\"screen\"},\"id\":\"1910\",\"type\":\"BoxAnnotation\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.2},\"fill_color\":{\"value\":\"#ff0000\"},\"line_alpha\":{\"value\":0.2},\"line_color\":{\"value\":\"#ff0000\"},\"size\":{\"units\":\"screen\",\"value\":2.449489742783178},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1939\",\"type\":\"Scatter\"},{\"attributes\":{\"data_source\":{\"id\":\"1935\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1937\",\"type\":\"Scatter\"},\"hover_glyph\":null,\"muted_glyph\":{\"id\":\"1939\",\"type\":\"Scatter\"},\"nonselection_glyph\":{\"id\":\"1938\",\"type\":\"Scatter\"},\"selection_glyph\":null,\"view\":{\"id\":\"1941\",\"type\":\"CDSView\"}},\"id\":\"1940\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"plot\":null,\"text\":\"npoints: 50\",\"text_color\":{\"value\":\"black\"},\"text_font_size\":{\"value\":\"12pt\"}},\"id\":\"1883\",\"type\":\"Title\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.1},\"fill_color\":{\"value\":\"#30a2da\"},\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#30a2da\"},\"size\":{\"units\":\"screen\",\"value\":2.449489742783178},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1923\",\"type\":\"Scatter\"},{\"attributes\":{\"source\":{\"id\":\"1935\",\"type\":\"ColumnDataSource\"}},\"id\":\"1941\",\"type\":\"CDSView\"},{\"attributes\":{\"fill_alpha\":{\"value\":0.2},\"fill_color\":{\"value\":\"#30a2da\"},\"line_alpha\":{\"value\":0.2},\"line_color\":{\"value\":\"#30a2da\"},\"size\":{\"units\":\"screen\",\"value\":2.449489742783178},\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1924\",\"type\":\"Scatter\"},{\"attributes\":{},\"id\":\"1888\",\"type\":\"LinearScale\"},{\"attributes\":{\"dimension\":1,\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1884\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1898\",\"type\":\"BasicTicker\"}},\"id\":\"1901\",\"type\":\"Grid\"},{\"attributes\":{\"callback\":null,\"data\":{\"x\":{\"__ndarray__\":\"gMb60Fgfuj+QJEmSJEnCPw==\",\"dtype\":\"float64\",\"shape\":[2]},\"y\":{\"__ndarray__\":\"lDsSSC/+8D9UjuEREOXIPw==\",\"dtype\":\"float64\",\"shape\":[2]}},\"selected\":{\"id\":\"1977\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1976\",\"type\":\"UnionRenderers\"}},\"id\":\"1943\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"1920\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1922\",\"type\":\"Scatter\"},\"hover_glyph\":null,\"muted_glyph\":{\"id\":\"1924\",\"type\":\"Scatter\"},\"nonselection_glyph\":{\"id\":\"1923\",\"type\":\"Scatter\"},\"selection_glyph\":null,\"view\":{\"id\":\"1926\",\"type\":\"CDSView\"}},\"id\":\"1925\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"callback\":null,\"end\":1.0620568099290937,\"start\":-0.999917362201471},\"id\":\"1882\",\"type\":\"Range1d\"},{\"attributes\":{},\"id\":\"1902\",\"type\":\"SaveTool\"},{\"attributes\":{\"source\":{\"id\":\"1920\",\"type\":\"ColumnDataSource\"}},\"id\":\"1926\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1970\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"grid_line_color\":{\"value\":null},\"plot\":{\"id\":\"1884\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1893\",\"type\":\"BasicTicker\"}},\"id\":\"1896\",\"type\":\"Grid\"},{\"attributes\":{\"line_color\":\"#ff0000\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1945\",\"type\":\"Line\"},{\"attributes\":{\"line_alpha\":0.1,\"line_color\":\"#ff0000\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1946\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1916\",\"type\":\"BasicTickFormatter\"},{\"attributes\":{\"line_color\":{\"value\":\"#30a2da\"},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1929\",\"type\":\"MultiLine\"},{\"attributes\":{\"line_alpha\":0.2,\"line_color\":\"#ff0000\",\"line_width\":2,\"x\":{\"field\":\"x\"},\"y\":{\"field\":\"y\"}},\"id\":\"1947\",\"type\":\"Line\"},{\"attributes\":{},\"id\":\"1971\",\"type\":\"Selection\"},{\"attributes\":{\"line_alpha\":{\"value\":0.1},\"line_color\":{\"value\":\"#30a2da\"},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1930\",\"type\":\"MultiLine\"},{\"attributes\":{\"callback\":null,\"data\":{\"x\":{\"__ndarray__\":\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+AxvrQWB+6P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\",\"dtype\":\"float64\",\"shape\":[51]},\"y\":{\"__ndarray__\":\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z+UOxJIL/7wP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\",\"dtype\":\"float64\",\"shape\":[51]}},\"selected\":{\"id\":\"1971\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1970\",\"type\":\"UnionRenderers\"}},\"id\":\"1920\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"data_source\":{\"id\":\"1943\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1945\",\"type\":\"Line\"},\"hover_glyph\":null,\"muted_glyph\":{\"id\":\"1947\",\"type\":\"Line\"},\"nonselection_glyph\":{\"id\":\"1946\",\"type\":\"Line\"},\"selection_glyph\":null,\"view\":{\"id\":\"1949\",\"type\":\"CDSView\"}},\"id\":\"1948\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"line_alpha\":{\"value\":0.2},\"line_color\":{\"value\":\"#30a2da\"},\"xs\":{\"field\":\"xs\"},\"ys\":{\"field\":\"ys\"}},\"id\":\"1931\",\"type\":\"MultiLine\"},{\"attributes\":{},\"id\":\"1972\",\"type\":\"UnionRenderers\"},{\"attributes\":{\"callback\":null,\"data\":{\"xs\":[],\"ys\":[]},\"selected\":{\"id\":\"1973\",\"type\":\"Selection\"},\"selection_policy\":{\"id\":\"1972\",\"type\":\"UnionRenderers\"}},\"id\":\"1927\",\"type\":\"ColumnDataSource\"},{\"attributes\":{\"source\":{\"id\":\"1943\",\"type\":\"ColumnDataSource\"}},\"id\":\"1949\",\"type\":\"CDSView\"},{\"attributes\":{\"data_source\":{\"id\":\"1927\",\"type\":\"ColumnDataSource\"},\"glyph\":{\"id\":\"1929\",\"type\":\"MultiLine\"},\"hover_glyph\":null,\"muted_glyph\":{\"id\":\"1931\",\"type\":\"MultiLine\"},\"nonselection_glyph\":{\"id\":\"1930\",\"type\":\"MultiLine\"},\"selection_glyph\":null,\"view\":{\"id\":\"1933\",\"type\":\"CDSView\"},\"visible\":false},\"id\":\"1932\",\"type\":\"GlyphRenderer\"},{\"attributes\":{\"axis_label\":\"x\",\"bounds\":\"auto\",\"formatter\":{\"id\":\"1916\",\"type\":\"BasicTickFormatter\"},\"major_label_orientation\":\"horizontal\",\"plot\":{\"id\":\"1884\",\"subtype\":\"Figure\",\"type\":\"Plot\"},\"ticker\":{\"id\":\"1893\",\"type\":\"BasicTicker\"}},\"id\":\"1892\",\"type\":\"LinearAxis\"},{\"attributes\":{\"source\":{\"id\":\"1927\",\"type\":\"ColumnDataSource\"}},\"id\":\"1933\",\"type\":\"CDSView\"},{\"attributes\":{},\"id\":\"1893\",\"type\":\"BasicTicker\"}],\"root_ids\":[\"1884\"]},\"title\":\"Bokeh Application\",\"version\":\"1.0.2\"}};\n",
2841
+       "  var render_items = [{\"docid\":\"695c5fb9-5176-4c78-bb6d-2abe6633dd7d\",\"roots\":{\"1884\":\"8952599e-deea-44ba-8bf5-633fe1397814\"}}];\n",
2842
+       "  root.Bokeh.embed.embed_items_notebook(docs_json, render_items);\n",
2843
+       "\n",
2844
+       "  }\n",
2845
+       "  if (root.Bokeh !== undefined) {\n",
2846
+       "    embed_document(root);\n",
2847
+       "  } else {\n",
2848
+       "    var attempts = 0;\n",
2849
+       "    var timer = setInterval(function(root) {\n",
2850
+       "      if (root.Bokeh !== undefined) {\n",
2851
+       "        embed_document(root);\n",
2852
+       "        clearInterval(timer);\n",
2853
+       "      }\n",
2854
+       "      attempts++;\n",
2855
+       "      if (attempts > 100) {\n",
2856
+       "        console.log(\"Bokeh: ERROR: Unable to run BokehJS code because BokehJS library is missing\");\n",
2857
+       "        clearInterval(timer);\n",
2858
+       "      }\n",
2859
+       "    }, 10, root)\n",
2860
+       "  }\n",
2861
+       "})(window);\n",
2862
+       "</script>\n",
2863
+       "</div>\n",
2864
+       "      \n",
2865
+       "    </div>\n",
2866
+       "  </div>\n",
2867
+       "  <div class=\"holowidgets\" id=\"widget_aread9d78d6e6e174e009947049b1fb70b43\">\n",
2868
+       "    <form class=\"holoform well\" id=\"formd9d78d6e6e174e009947049b1fb70b43\">\n",
2869
+       "      \n",
2870
+       "      \n",
2871
+       "      <div class=\"form-group control-group holoformgroup\" style=''>\n",
2872
+       "        <label for=\"textInputd9d78d6e6e174e009947049b1fb70b43_npoints\">\n",
2873
+       "          <strong>npoints:</strong>\n",
2874
+       "        </label>\n",
2875
+       "        <div class=\"holowell row row-fluid\">\n",
2876
+       "          <div class=\"hologroup\">\n",
2877
+       "            <input type=\"text\" class=\"holotext form-control input-small\"\n",
2878
+       "                   id=\"textInputd9d78d6e6e174e009947049b1fb70b43_npoints\" value=\"\" readonly>\n",
2879
+       "          </div>\n",
2880
+       "          <div class=\"holoslider\"\n",
2881
+       "               id=\"_anim_widgetd9d78d6e6e174e009947049b1fb70b43_npoints\"></div>\n",
2882
+       "        </div>\n",
2883
+       "      </div>\n",
2884
+       "\t  <script>\n",
2885
+       "\t    function init_slider() {\n",
2886
+       "        // Slider JS Block START\n",
2887
+       "        function loadcssfile(filename){\n",
2888
+       "            var fileref=document.createElement(\"link\")\n",
2889
+       "            fileref.setAttribute(\"rel\", \"stylesheet\")\n",
2890
+       "            fileref.setAttribute(\"type\", \"text/css\")\n",
2891
+       "            fileref.setAttribute(\"href\", filename)\n",
2892
+       "            document.getElementsByTagName(\"head\")[0].appendChild(fileref)\n",
2893
+       "        }\n",
2894
+       "        loadcssfile(\"https://code.jquery.com/ui/1.10.4/themes/smoothness/jquery-ui.css\");\n",
2895
+       "        /* Check if jQuery and jQueryUI have been loaded\n",
2896
+       "           otherwise load with require.js */\n",
2897
+       "        var jQuery = window.jQuery,\n",
2898
+       "            // check for old versions of jQuery\n",
2899
+       "            oldjQuery = jQuery && !!jQuery.fn.jquery.match(/^1\\.[0-4](\\.|$)/),\n",
2900
+       "            jquery_path = '',\n",
2901
+       "            paths = {},\n",
2902
+       "            noConflict;\n",
2903
+       "        var jQueryUI = jQuery.ui;\n",
2904
+       "        // check for jQuery\n",
2905
+       "        if (!jQuery || oldjQuery) {\n",
2906
+       "            // load if it's not available or doesn't meet min standards\n",
2907
+       "            paths.jQuery = jQuery;\n",
2908
+       "            noConflict = !!oldjQuery;\n",
2909
+       "        } else {\n",
2910
+       "            // register the current jQuery\n",
2911
+       "            define('jquery', [], function() { return jQuery; });\n",
2912
+       "        }\n",
2913
+       "        if (!jQueryUI) {\n",
2914
+       "            paths.jQueryUI = \"https://code.jquery.com/ui/1.10.4/jquery-ui.min\"\n",
2915
+       "        } else {\n",
2916
+       "            define('jQueryUI', [], function() { return jQuery.ui; });\n",
2917
+       "        }\n",
2918
+       "        paths.underscore = \"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.3/underscore-min\";\n",
2919
+       "        var jquery_require = {\n",
2920
+       "            paths: paths,\n",
2921
+       "            shim: {\n",
2922
+       "                \"jQueryUI\": {\n",
2923
+       "                    exports:\"$\",\n",
2924
+       "                    deps: ['jquery']\n",
2925
+       "                },\n",
2926
+       "                \"underscore\": {\n",
2927
+       "                    exports: '_'\n",
2928
+       "                }\n",
2929
+       "            }\n",
2930
+       "        }\n",
2931
+       "        require.config(jquery_require);\n",
2932
+       "        require([\"jQueryUI\", \"underscore\"], function(jUI, _){\n",
2933
+       "            if (noConflict) $.noConflict(true);\n",
2934
+       "            var vals = ['50.0', '51.0', '52.0', '53.0', '54.0', '55.0', '56.0', '57.0', '58.0', '59.0', '60.0', '61.0', '62.0', '63.0', '64.0', '65.0', '66.0', '67.0', '68.0', '69.0', '70.0', '71.0', '72.0', '73.0', '74.0', '75.0', '76.0', '77.0', '78.0', '79.0', '80.0', '81.0', '82.0', '83.0', '84.0'];\n",
2935
+       "            var next_vals = {};\n",
2936
+       "            if (false && vals.constructor === Array) {\n",
2937
+       "                var min = parseFloat(vals[0]);\n",
2938
+       "                var max = parseFloat(vals[vals.length-1]);\n",
2939
+       "                var step = 1;\n",
2940
+       "                var labels = [min];\n",
2941
+       "            } else {\n",
2942
+       "                var min = 0;\n",
2943
+       "                if (false) {\n",
2944
+       "                    var max = Object.keys(vals).length - 1;\n",
2945
+       "                } else {\n",
2946
+       "                    var max = vals.length - 1;\n",
2947
+       "                }\n",
2948
+       "                var step = 1;\n",
2949
+       "\t\t\t\tvar labels = ['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'];\n",
2950
+       "            }\n",
2951
+       "\t\t\tfunction adjustFontSize(text) {\n",
2952
+       "\t\t\t\tvar width_ratio = (text.parent().width()/8)/text.val().length;\n",
2953
+       "\t\t\t\tvar size = Math.min(0.9, Math.max(0.6, width_ratio))+'em';\n",
2954
+       "\t\t\t\ttext.css('font-size', size);\n",
2955
+       "\t\t\t}\n",
2956
+       "            var slider = $('#_anim_widgetd9d78d6e6e174e009947049b1fb70b43_npoints');\n",
2957
+       "\t\t\tslider.slider({\n",
2958
+       "                animate: \"fast\",\n",
2959
+       "                min: min,\n",
2960
+       "                max: max,\n",
2961
+       "                step: step,\n",
2962
+       "                value: min,\n",
2963
+       "                dim_vals: vals,\n",
2964
+       "                dim_labels: labels,\n",
2965
+       "                next_vals: next_vals,\n",
2966
+       "                slide: function(event, ui) {\n",
2967
+       "                    var vals = slider.slider(\"option\", \"dim_vals\");\n",
2968
+       "                    var next_vals = slider.slider(\"option\", \"next_vals\");\n",
2969
+       "                    var labels = slider.slider(\"option\", \"dim_labels\");\n",
2970
+       "                    if (false) {\n",
2971
+       "\t\t\t\t\t    var dim_val = ui.value;\n",
2972
+       "\t\t\t\t\t    if (vals.constructor === Array) {\n",
2973
+       "\t\t\t\t\t\t   var label = ui.value;\n",
2974
+       "\t\t\t\t\t\t} else {\n",
2975
+       "\t\t\t\t\t\t   var label = labels[ui.value];\n",
2976
+       "\t\t\t\t\t\t}\n",
2977
+       "                    } else {\n",
2978
+       "                        var dim_val = vals[ui.value];\n",
2979
+       "\t\t\t\t\t\tvar label = labels[ui.value];\n",
2980
+       "                    }\n",
2981
+       "\t\t\t\t\tvar text = $('#textInputd9d78d6e6e174e009947049b1fb70b43_npoints');\n",
2982
+       "\t\t\t\t\ttext.val(label);\n",
2983
+       "\t\t\t\t\tadjustFontSize(text);\n",
2984
+       "                    animd9d78d6e6e174e009947049b1fb70b43.set_frame(dim_val, 0);\n",
2985
+       "                    if (Object.keys(next_vals).length > 0) {\n",
2986
+       "                        var new_vals = next_vals[dim_val];\n",
2987
+       "                        var next_widget = $('#_anim_widgetd9d78d6e6e174e009947049b1fb70b43_');\n",
2988
+       "                        update_widget(next_widget, new_vals);\n",
2989
+       "                    }\n",
2990
+       "                }\n",
2991
+       "            });\n",
2992
+       "            slider.keypress(function(event) {\n",
2993
+       "                if (event.which == 80 || event.which == 112) {\n",
2994
+       "                    var start = slider.slider(\"option\", \"value\");\n",
2995
+       "                    var stop =  slider.slider(\"option\", \"max\");\n",
2996
+       "                    for (var i=start; i<=stop; i++) {\n",
2997
+       "                        var delay = i*50;\n",
2998
+       "                        $.proxy(function doSetTimeout(i) { setTimeout($.proxy(function() {\n",
2999
+       "                            var val = {value:i};\n",
3000
+       "                            slider.slider('value',i);\n",
3001
+       "                            slider.slider(\"option\", \"slide\")(null, val);\n",
3002
+       "                        }, slider), delay);}, slider)(i);\n",
3003
+       "                    }\n",
3004
+       "                }\n",
3005
+       "                if (event.which == 82 || event.which == 114) {\n",
3006
+       "                    var start = slider.slider(\"option\", \"value\");\n",
3007
+       "                    var stop =  slider.slider(\"option\", \"min\");\n",
3008
+       "                    var count = 0;\n",
3009
+       "                    for (var i=start; i>=stop; i--) {\n",
3010
+       "                        var delay = count*50;\n",
3011
+       "                        count = count + 1;\n",
3012
+       "                        $.proxy(function doSetTimeout(i) { setTimeout($.proxy(function() {\n",
3013
+       "                            var val = {value:i};\n",
3014
+       "                            slider.slider('value',i);\n",
3015
+       "                            slider.slider(\"option\", \"slide\")(null, val);\n",
3016
+       "                        }, slider), delay);}, slider)(i);\n",
3017
+       "                    }\n",
3018
+       "                }\n",
3019
+       "            });\n",
3020
+       "\t\t\tvar textInput = $('#textInputd9d78d6e6e174e009947049b1fb70b43_npoints')\n",
3021
+       "\t\t\ttextInput.val(labels[0]);\n",
3022
+       "\t\t\tadjustFontSize(textInput);\n",
3023
+       "        });\n",
3024
+       "\t\t}\n",
3025
+       "        $(document).ready(init_slider)\n",
3026
+       "        // Slider JS Block END\n",
3027
+       "        </script>\n",
3028
+       "        \n",
3029
+       "        \n",
3030
+       "        </form>\n",
3031
+       "    </div>\n",
3032
+       "</div>\n",
3033
+       "\n",
3034
+       "\n",
3035
+       "<script language=\"javascript\">\n",
3036
+       "/* Instantiate the BokehSelectionWidget class. */\n",
3037
+       "/* The IDs given should match those used in the template above. */\n",
3038
+       "(function() {\n",
3039
+       "\tif (jQuery.ui !== undefined) {\n",
3040
+       "\t\t$(\"#display_aread9d78d6e6e174e009947049b1fb70b43\").resizable({\n",
3041
+       "\t\t\tresize: function(event, ui) {\n",
3042
+       "\t\t\t\t$(\"#widget_aread9d78d6e6e174e009947049b1fb70b43\").width($(this).parent().width()-ui.size.width);\n",
3043
+       "\t\t\t}\n",
3044
+       "\t\t});\n",
3045
+       "\t\t$(\"#widget_aread9d78d6e6e174e009947049b1fb70b43\").resizable();\n",
3046
+       "\t}\n",
3047
+       "    var widget_ids = new Array(1);\n",
3048
+       "    \n",
3049
+       "    widget_ids[0] = \"_anim_widgetd9d78d6e6e174e009947049b1fb70b43_npoints\";\n",
3050
+       "    \n",
3051
+       "    var frame_data = {\"0\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+AxvrQWB+6P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[51]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z+UOxJIL/7wP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[51]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj+QJEmSJEnCPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D9UjuEREOXIPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj+QJEmSJEnCPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D9UjuEREOXIPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 50\\\"},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+AxvrQWB+6P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[51]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z+UOxJIL/7wP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[51]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj+QJEmSJEnCPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D9UjuEREOXIPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj+QJEmSJEnCPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D9UjuEREOXIPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"1\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+AxvrQWB+6P9CHxvrQWL8/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[52]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z+UOxJIL/7wPxLVgj37btI/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[52]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj/Qh8b60Fi/Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D8S1YI9+27SPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj/Qh8b60Fi/Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D8S1YI9+27SPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 51\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"2\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+AxvrQWB+6Pyin4OUUvLw/0IfG+tBYvz+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[53]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z+UOxJIL/7wPz32rRchZeA/EtWCPftu0j9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[53]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"MAUvp+DltD+AxvrQWB+6Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"1gkRWJbb0z+UOxJIL/7wPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"MAUvp+DltD+AxvrQWB+6Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"1gkRWJbb0z+UOxJIL/7wPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 52\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"3\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD/Y5RS8nIK3P4DG+tBYH7o/KKfg5RS8vD/Qh8b60Fi/P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[54]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z8ZC2J0WCTmP5Q7Ekgv/vA/PfatFyFl4D8S1YI9+27SP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[54]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj8op+DlFLy8Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D899q0XIWXgPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj8op+DlFLy8Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D899q0XIWXgPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 53\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"4\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD/Y5RS8nIK3P4DG+tBYH7o/1LZt27Ztuz8op+DlFLy8P9CHxvrQWL8/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[55]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z8ZC2J0WCTmP5Q7Ekgv/vA/HgpSjyWe6D899q0XIWXgPxLVgj37btI/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[55]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"MAUvp+DltD/Y5RS8nIK3Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"1gkRWJbb0z8ZC2J0WCTmPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"MAUvp+DltD/Y5RS8nIK3Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"1gkRWJbb0z8ZC2J0WCTmPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 54\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"5\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+E9aGxPjS2P9jlFLycgrc/gMb60Fgfuj/Utm3btm27Pyin4OUUvLw/0IfG+tBYvz+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[56]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z8TcJBX+b3cPxkLYnRYJOY/lDsSSC/+8D8eClKPJZ7oPz32rRchZeA/EtWCPftu0j9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[56]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"2OUUvJyCtz+AxvrQWB+6Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"GQtidFgk5j+UOxJIL/7wPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"2OUUvJyCtz+AxvrQWB+6Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"GQtidFgk5j+UOxJIL/7wPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 55\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"6\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+E9aGxPjS2P9jlFLycgrc/LNaHxvrQuD+AxvrQWB+6P9S2bdu2bbs/KKfg5RS8vD/Qh8b60Fi/P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[57]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z8TcJBX+b3cPxkLYnRYJOY/2TDw9Bsu8D+UOxJIL/7wPx4KUo8lnug/PfatFyFl4D8S1YI9+27SP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[57]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"2OUUvJyCtz8s1ofG+tC4Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"GQtidFgk5j/ZMPD0Gy7wPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"2OUUvJyCtz8s1ofG+tC4Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"GQtidFgk5j/ZMPD0Gy7wPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 56\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"7\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+E9aGxPjS2P9jlFLycgrc/Al5OwcspuD8s1ofG+tC4P4DG+tBYH7o/1LZt27Ztuz8op+DlFLy8P9CHxvrQWL8/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[58]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z8TcJBX+b3cPxkLYnRYJOY/Qp+asgJb6z/ZMPD0Gy7wP5Q7Ekgv/vA/HgpSjyWe6D899q0XIWXgPxLVgj37btI/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[58]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj/Utm3btm27Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D8eClKPJZ7oPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj/Utm3btm27Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D8eClKPJZ7oPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 57\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"8\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+E9aGxPjS2P9jlFLycgrc/Al5OwcspuD8s1ofG+tC4P4DG+tBYH7o/qj401ofGuj/Utm3btm27Pyin4OUUvLw/0IfG+tBYvz+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[59]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z8TcJBX+b3cPxkLYnRYJOY/Qp+asgJb6z/ZMPD0Gy7wP5Q7Ekgv/vA/RFNBSVDG7T8eClKPJZ7oPz32rRchZeA/EtWCPftu0j9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[59]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"1LZt27Ztuz8op+DlFLy8Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"HgpSjyWe6D899q0XIWXgPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"1LZt27Ztuz8op+DlFLy8Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"HgpSjyWe6D899q0XIWXgPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 58\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"9\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+E9aGxPjS2P9jlFLycgrc/Al5OwcspuD8s1ofG+tC4P4DG+tBYH7o/qj401ofGuj/Utm3btm27P/4up+DlFLw/KKfg5RS8vD/Qh8b60Fi/P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[60]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z8TcJBX+b3cPxkLYnRYJOY/Qp+asgJb6z/ZMPD0Gy7wP5Q7Ekgv/vA/RFNBSVDG7T8eClKPJZ7oP2W18hPrAeQ/PfatFyFl4D8S1YI9+27SP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[60]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"hPWhsT40tj/Y5RS8nIK3Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"E3CQV/m93D8ZC2J0WCTmPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"hPWhsT40tj/Y5RS8nIK3Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"E3CQV/m93D8ZC2J0WCTmPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 59\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"10\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+E9aGxPjS2P65t27Zt27Y/2OUUvJyCtz8CXk7Byym4PyzWh8b60Lg/gMb60Fgfuj+qPjTWh8a6P9S2bdu2bbs//i6n4OUUvD8op+DlFLy8P9CHxvrQWL8/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[61]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z8TcJBX+b3cPwqHeQNIweE/GQtidFgk5j9Cn5qyAlvrP9kw8PQbLvA/lDsSSC/+8D9EU0FJUMbtPx4KUo8lnug/ZbXyE+sB5D899q0XIWXgPxLVgj37btI/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[61]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"KKfg5RS8vD/Qh8b60Fi/Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"PfatFyFl4D8S1YI9+27SPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"KKfg5RS8vD/Qh8b60Fi/Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"PfatFyFl4D8S1YI9+27SPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 60\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"11\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/MAUvp+DltD+E9aGxPjS2P65t27Zt27Y/2OUUvJyCtz8CXk7Byym4PyzWh8b60Lg/gMb60Fgfuj+qPjTWh8a6P9S2bdu2bbs//i6n4OUUvD8op+DlFLy8P3yXU/ByCr4/0IfG+tBYvz+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[62]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/1gkRWJbb0z8TcJBX+b3cPwqHeQNIweE/GQtidFgk5j9Cn5qyAlvrP9kw8PQbLvA/lDsSSC/+8D9EU0FJUMbtPx4KUo8lnug/ZbXyE+sB5D899q0XIWXgP47NED1Aedc/EtWCPftu0j9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[62]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"wIfG+tBYrz8wBS+n4OW0Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"/aISg12jvz/WCRFYltvTPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"wIfG+tBYrz8wBS+n4OW0Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"/aISg12jvz/WCRFYltvTPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 61\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"12\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj8wBS+n4OW0P4T1obE+NLY/rm3btm3btj/Y5RS8nIK3PwJeTsHLKbg/LNaHxvrQuD+AxvrQWB+6P6o+NNaHxro/1LZt27Ztuz/+Lqfg5RS8Pyin4OUUvLw/fJdT8HIKvj/Qh8b60Fi/P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[63]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz/WCRFYltvTPxNwkFf5vdw/Cod5A0jB4T8ZC2J0WCTmP0KfmrICW+s/2TDw9Bsu8D+UOxJIL/7wP0RTQUlQxu0/HgpSjyWe6D9ltfIT6wHkPz32rRchZeA/js0QPUB51z8S1YI9+27SP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[63]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"2OUUvJyCtz8CXk7Byym4Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"GQtidFgk5j9Cn5qyAlvrPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"2OUUvJyCtz8CXk7Byym4Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"GQtidFgk5j9Cn5qyAlvrPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 62\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"13\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj8wBS+n4OW0P4T1obE+NLY/rm3btm3btj/Y5RS8nIK3P+2hsT401rc/Al5OwcspuD8s1ofG+tC4P4DG+tBYH7o/qj401ofGuj/Utm3btm27P/4up+DlFLw/KKfg5RS8vD98l1Pwcgq+P9CHxvrQWL8/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[64]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz/WCRFYltvTPxNwkFf5vdw/Cod5A0jB4T8ZC2J0WCTmP0jC1szjrug/Qp+asgJb6z/ZMPD0Gy7wP5Q7Ekgv/vA/RFNBSVDG7T8eClKPJZ7oP2W18hPrAeQ/PfatFyFl4D+OzRA9QHnXPxLVgj37btI/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[64]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"qj401ofGuj/Utm3btm27Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"RFNBSVDG7T8eClKPJZ7oPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"qj401ofGuj/Utm3btm27Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"RFNBSVDG7T8eClKPJZ7oPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 63\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"14\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj8wBS+n4OW0P4T1obE+NLY/rm3btm3btj/Y5RS8nIK3P+2hsT401rc/Al5OwcspuD8s1ofG+tC4P4DG+tBYH7o/qj401ofGuj+/+tBYHxq7P9S2bdu2bbs//i6n4OUUvD8op+DlFLy8P3yXU/ByCr4/0IfG+tBYvz+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[65]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz/WCRFYltvTPxNwkFf5vdw/Cod5A0jB4T8ZC2J0WCTmP0jC1szjrug/Qp+asgJb6z/ZMPD0Gy7wP5Q7Ekgv/vA/RFNBSVDG7T+GH5jaVTHrPx4KUo8lnug/ZbXyE+sB5D899q0XIWXgP47NED1Aedc/EtWCPftu0j9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[65]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"Al5OwcspuD8s1ofG+tC4Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"Qp+asgJb6z/ZMPD0Gy7wPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"Al5OwcspuD8s1ofG+tC4Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"Qp+asgJb6z/ZMPD0Gy7wPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 64\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"15\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj8wBS+n4OW0P4T1obE+NLY/rm3btm3btj/Y5RS8nIK3P+2hsT401rc/Al5OwcspuD8XGutDY324PyzWh8b60Lg/gMb60Fgfuj+qPjTWh8a6P7/60FgfGrs/1LZt27Ztuz/+Lqfg5RS8Pyin4OUUvLw/fJdT8HIKvj/Qh8b60Fi/P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[66]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz/WCRFYltvTPxNwkFf5vdw/Cod5A0jB4T8ZC2J0WCTmP0jC1szjrug/Qp+asgJb6z+5BcPh3/7tP9kw8PQbLvA/lDsSSC/+8D9EU0FJUMbtP4YfmNpVMes/HgpSjyWe6D9ltfIT6wHkPz32rRchZeA/js0QPUB51z8S1YI9+27SP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[66]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"KKfg5RS8vD98l1Pwcgq+Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"PfatFyFl4D+OzRA9QHnXPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"KKfg5RS8vD98l1Pwcgq+Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"PfatFyFl4D+OzRA9QHnXPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 65\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"16\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj8wBS+n4OW0P4T1obE+NLY/rm3btm3btj/Y5RS8nIK3P+2hsT401rc/Al5OwcspuD8XGutDY324PyzWh8b60Lg/gMb60Fgfuj+qPjTWh8a6P7/60FgfGrs/1LZt27Ztuz/+Lqfg5RS8Pyin4OUUvLw/Uh8a60NjvT98l1Pwcgq+P9CHxvrQWL8/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[67]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz/WCRFYltvTPxNwkFf5vdw/Cod5A0jB4T8ZC2J0WCTmP0jC1szjrug/Qp+asgJb6z+5BcPh3/7tP9kw8PQbLvA/lDsSSC/+8D9EU0FJUMbtP4YfmNpVMes/HgpSjyWe6D9ltfIT6wHkPz32rRchZeA/9HgP8Cpq2z+OzRA9QHnXPxLVgj37btI/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[67]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"1LZt27Ztuz/+Lqfg5RS8Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"HgpSjyWe6D9ltfIT6wHkPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"1LZt27Ztuz/+Lqfg5RS8Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"HgpSjyWe6D9ltfIT6wHkPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 66\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"17\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj8wBS+n4OW0P4T1obE+NLY/rm3btm3btj/Y5RS8nIK3P+2hsT401rc/Al5OwcspuD8XGutDY324PyzWh8b60Lg/gMb60Fgfuj+qPjTWh8a6P7/60FgfGrs/1LZt27Ztuz/pcgpeTsG7P/4up+DlFLw/KKfg5RS8vD9SHxrrQ2O9P3yXU/ByCr4/0IfG+tBYvz+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[68]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz/WCRFYltvTPxNwkFf5vdw/Cod5A0jB4T8ZC2J0WCTmP0jC1szjrug/Qp+asgJb6z+5BcPh3/7tP9kw8PQbLvA/lDsSSC/+8D9EU0FJUMbtP4YfmNpVMes/HgpSjyWe6D/zYUtgezLmP2W18hPrAeQ/PfatFyFl4D/0eA/wKmrbP47NED1Aedc/EtWCPftu0j9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[68]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"MAUvp+DltD+E9aGxPjS2Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"1gkRWJbb0z8TcJBX+b3cPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"MAUvp+DltD+E9aGxPjS2Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"1gkRWJbb0z8TcJBX+b3cPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 67\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"18\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj8wBS+n4OW0P1p9aKwPjbU/hPWhsT40tj+ubdu2bdu2P9jlFLycgrc/7aGxPjTWtz8CXk7Byym4Pxca60Njfbg/LNaHxvrQuD+AxvrQWB+6P6o+NNaHxro/v/rQWB8auz/Utm3btm27P+lyCl5Owbs//i6n4OUUvD8op+DlFLy8P1IfGutDY70/fJdT8HIKvj/Qh8b60Fi/P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[69]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz/WCRFYltvTP4yYoPZRqtc/E3CQV/m93D8Kh3kDSMHhPxkLYnRYJOY/SMLWzOOu6D9Cn5qyAlvrP7kFw+Hf/u0/2TDw9Bsu8D+UOxJIL/7wP0RTQUlQxu0/hh+Y2lUx6z8eClKPJZ7oP/NhS2B7MuY/ZbXyE+sB5D899q0XIWXgP/R4D/Aqats/js0QPUB51z8S1YI9+27SP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[69]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"rm3btm3btj/Y5RS8nIK3Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"Cod5A0jB4T8ZC2J0WCTmPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"rm3btm3btj/Y5RS8nIK3Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"Cod5A0jB4T8ZC2J0WCTmPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 68\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"19\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj8wBS+n4OW0P1p9aKwPjbU/hPWhsT40tj+ubdu2bdu2P8MpeDkFL7c/2OUUvJyCtz/tobE+NNa3PwJeTsHLKbg/FxrrQ2N9uD8s1ofG+tC4P4DG+tBYH7o/qj401ofGuj+/+tBYHxq7P9S2bdu2bbs/6XIKXk7Buz/+Lqfg5RS8Pyin4OUUvLw/Uh8a60NjvT98l1Pwcgq+P9CHxvrQWL8/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[70]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz/WCRFYltvTP4yYoPZRqtc/E3CQV/m93D8Kh3kDSMHhP/mxsOsx0uM/GQtidFgk5j9IwtbM467oP0KfmrICW+s/uQXD4d/+7T/ZMPD0Gy7wP5Q7Ekgv/vA/RFNBSVDG7T+GH5jaVTHrPx4KUo8lnug/82FLYHsy5j9ltfIT6wHkPz32rRchZeA/9HgP8Cpq2z+OzRA9QHnXPxLVgj37btI/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[70]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj+qPjTWh8a6Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D9EU0FJUMbtPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"gMb60Fgfuj+qPjTWh8a6Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"lDsSSC/+8D9EU0FJUMbtPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 69\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"20\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj8wBS+n4OW0P1p9aKwPjbU/hPWhsT40tj+ubdu2bdu2P8MpeDkFL7c/2OUUvJyCtz/tobE+NNa3PwJeTsHLKbg/FxrrQ2N9uD8s1ofG+tC4P4DG+tBYH7o/lYKXU/Byuj+qPjTWh8a6P7/60FgfGrs/1LZt27Ztuz/pcgpeTsG7P/4up+DlFLw/KKfg5RS8vD9SHxrrQ2O9P3yXU/ByCr4/0IfG+tBYvz+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[71]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz/WCRFYltvTP4yYoPZRqtc/E3CQV/m93D8Kh3kDSMHhP/mxsOsx0uM/GQtidFgk5j9IwtbM467oP0KfmrICW+s/uQXD4d/+7T/ZMPD0Gy7wP5Q7Ekgv/vA/Awag61YR8D9EU0FJUMbtP4YfmNpVMes/HgpSjyWe6D/zYUtgezLmP2W18hPrAeQ/PfatFyFl4D/0eA/wKmrbP47NED1Aedc/EtWCPftu0j9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[71]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"iCRJkiRJsj8wBS+n4OW0Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"5nfS2JYcxz/WCRFYltvTPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"iCRJkiRJsj8wBS+n4OW0Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"5nfS2JYcxz/WCRFYltvTPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 70\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"21\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj/cFLycgpezPzAFL6fg5bQ/Wn1orA+NtT+E9aGxPjS2P65t27Zt27Y/wyl4OQUvtz/Y5RS8nIK3P+2hsT401rc/Al5OwcspuD8XGutDY324PyzWh8b60Lg/gMb60Fgfuj+VgpdT8HK6P6o+NNaHxro/v/rQWB8auz/Utm3btm27P+lyCl5Owbs//i6n4OUUvD8op+DlFLy8P1IfGutDY70/fJdT8HIKvj/Qh8b60Fi/P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[72]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz+l+JXfsXbNP9YJEViW29M/jJig9lGq1z8TcJBX+b3cPwqHeQNIweE/+bGw6zHS4z8ZC2J0WCTmP0jC1szjrug/Qp+asgJb6z+5BcPh3/7tP9kw8PQbLvA/lDsSSC/+8D8DBqDrVhHwP0RTQUlQxu0/hh+Y2lUx6z8eClKPJZ7oP/NhS2B7MuY/ZbXyE+sB5D899q0XIWXgP/R4D/Aqats/js0QPUB51z8S1YI9+27SP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[72]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"/i6n4OUUvD8op+DlFLy8Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"ZbXyE+sB5D899q0XIWXgPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"/i6n4OUUvD8op+DlFLy8Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"ZbXyE+sB5D899q0XIWXgPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 71\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"22\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj/cFLycgpezPzAFL6fg5bQ/Wn1orA+NtT+E9aGxPjS2P65t27Zt27Y/wyl4OQUvtz/Y5RS8nIK3P+2hsT401rc/Al5OwcspuD8XGutDY324PyzWh8b60Lg/gMb60Fgfuj+VgpdT8HK6P6o+NNaHxro/v/rQWB8auz/Utm3btm27P+lyCl5Owbs//i6n4OUUvD8T60NjfWi8Pyin4OUUvLw/Uh8a60NjvT98l1Pwcgq+P9CHxvrQWL8/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[73]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz+l+JXfsXbNP9YJEViW29M/jJig9lGq1z8TcJBX+b3cPwqHeQNIweE/+bGw6zHS4z8ZC2J0WCTmP0jC1szjrug/Qp+asgJb6z+5BcPh3/7tP9kw8PQbLvA/lDsSSC/+8D8DBqDrVhHwP0RTQUlQxu0/hh+Y2lUx6z8eClKPJZ7oP/NhS2B7MuY/ZbXyE+sB5D8hBY/JKRPiPz32rRchZeA/9HgP8Cpq2z+OzRA9QHnXPxLVgj37btI/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[73]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"hPWhsT40tj+ubdu2bdu2Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"E3CQV/m93D8Kh3kDSMHhPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"hPWhsT40tj+ubdu2bdu2Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"E3CQV/m93D8Kh3kDSMHhPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 72\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"23\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUP8CHxvrQWK8/iCRJkiRJsj/cFLycgpezPzAFL6fg5bQ/Wn1orA+NtT+E9aGxPjS2P5mxPjTWh7Y/rm3btm3btj/DKXg5BS+3P9jlFLycgrc/7aGxPjTWtz8CXk7Byym4Pxca60Njfbg/LNaHxvrQuD+AxvrQWB+6P5WCl1Pwcro/qj401ofGuj+/+tBYHxq7P9S2bdu2bbs/6XIKXk7Buz/+Lqfg5RS8PxPrQ2N9aLw/KKfg5RS8vD9SHxrrQ2O9P3yXU/ByCr4/0IfG+tBYvz+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[74]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP/2iEoNdo78/5nfS2JYcxz+l+JXfsXbNP9YJEViW29M/jJig9lGq1z8TcJBX+b3cP//q1+Z0498/Cod5A0jB4T/5sbDrMdLjPxkLYnRYJOY/SMLWzOOu6D9Cn5qyAlvrP7kFw+Hf/u0/2TDw9Bsu8D+UOxJIL/7wPwMGoOtWEfA/RFNBSVDG7T+GH5jaVTHrPx4KUo8lnug/82FLYHsy5j9ltfIT6wHkPyEFj8kpE+I/PfatFyFl4D/0eA/wKmrbP47NED1Aedc/EtWCPftu0j9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[74]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"QAUvp+DllD/Ah8b60FivPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"bK0DB9hnoj/9ohKDXaO/Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"QAUvp+DllD/Ah8b60FivPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"bK0DB9hnoj/9ohKDXaO/Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 73\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"24\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/MAUvp+DltD9afWisD421P4T1obE+NLY/mbE+NNaHtj+ubdu2bdu2P8MpeDkFL7c/2OUUvJyCtz/tobE+NNa3PwJeTsHLKbg/FxrrQ2N9uD8s1ofG+tC4P4DG+tBYH7o/lYKXU/Byuj+qPjTWh8a6P7/60FgfGrs/1LZt27Ztuz/pcgpeTsG7P/4up+DlFLw/E+tDY31ovD8op+DlFLy8P1IfGutDY70/fJdT8HIKvj/Qh8b60Fi/P5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[75]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/1gkRWJbb0z+MmKD2UarXPxNwkFf5vdw//+rX5nTj3z8Kh3kDSMHhP/mxsOsx0uM/GQtidFgk5j9IwtbM467oP0KfmrICW+s/uQXD4d/+7T/ZMPD0Gy7wP5Q7Ekgv/vA/Awag61YR8D9EU0FJUMbtP4YfmNpVMes/HgpSjyWe6D/zYUtgezLmP2W18hPrAeQ/IQWPySkT4j899q0XIWXgP/R4D/Aqats/js0QPUB51z8S1YI9+27SP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[75]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"0IfG+tBYvz+QJEmSJEnCPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"EtWCPftu0j9UjuEREOXIPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"0IfG+tBYvz+QJEmSJEnCPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"EtWCPftu0j9UjuEREOXIPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 74\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"25\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/MAUvp+DltD9afWisD421P4T1obE+NLY/mbE+NNaHtj+ubdu2bdu2P8MpeDkFL7c/2OUUvJyCtz/tobE+NNa3PwJeTsHLKbg/FxrrQ2N9uD8s1ofG+tC4P4DG+tBYH7o/lYKXU/Byuj+qPjTWh8a6P7/60FgfGrs/1LZt27Ztuz/pcgpeTsG7P/4up+DlFLw/E+tDY31ovD8op+DlFLy8P1IfGutDY70/fJdT8HIKvj/Qh8b60Fi/Pzw01ofG+sA/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[76]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/1gkRWJbb0z+MmKD2UarXPxNwkFf5vdw//+rX5nTj3z8Kh3kDSMHhP/mxsOsx0uM/GQtidFgk5j9IwtbM467oP0KfmrICW+s/uQXD4d/+7T/ZMPD0Gy7wP5Q7Ekgv/vA/Awag61YR8D9EU0FJUMbtP4YfmNpVMes/HgpSjyWe6D/zYUtgezLmP2W18hPrAeQ/IQWPySkT4j899q0XIWXgP/R4D/Aqats/js0QPUB51z8S1YI9+27SPzAMOPqH9Ms/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[76]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"KKfg5RS8vD9SHxrrQ2O9Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"PfatFyFl4D/0eA/wKmrbPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"KKfg5RS8vD9SHxrrQ2O9Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"PfatFyFl4D/0eA/wKmrbPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 75\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"26\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/MAUvp+DltD9afWisD421P4T1obE+NLY/mbE+NNaHtj+ubdu2bdu2P8MpeDkFL7c/2OUUvJyCtz/tobE+NNa3PwJeTsHLKbg/FxrrQ2N9uD8s1ofG+tC4P4DG+tBYH7o/lYKXU/Byuj+qPjTWh8a6P7/60FgfGrs/1LZt27Ztuz/pcgpeTsG7P/4up+DlFLw/E+tDY31ovD8op+DlFLy8Pz1jfWisD70/Uh8a60NjvT98l1Pwcgq+P9CHxvrQWL8/PDTWh8b6wD+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[77]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/1gkRWJbb0z+MmKD2UarXPxNwkFf5vdw//+rX5nTj3z8Kh3kDSMHhP/mxsOsx0uM/GQtidFgk5j9IwtbM467oP0KfmrICW+s/uQXD4d/+7T/ZMPD0Gy7wP5Q7Ekgv/vA/Awag61YR8D9EU0FJUMbtP4YfmNpVMes/HgpSjyWe6D/zYUtgezLmP2W18hPrAeQ/IQWPySkT4j899q0XIWXgP9iC1+9h5d0/9HgP8Cpq2z+OzRA9QHnXPxLVgj37btI/MAw4+of0yz9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[77]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"7aGxPjTWtz8CXk7Byym4Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"SMLWzOOu6D9Cn5qyAlvrPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"7aGxPjTWtz8CXk7Byym4Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"SMLWzOOu6D9Cn5qyAlvrPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 76\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"27\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/MAUvp+DltD9afWisD421P4T1obE+NLY/mbE+NNaHtj+ubdu2bdu2P8MpeDkFL7c/2OUUvJyCtz/tobE+NNa3P/j//////7c/Al5OwcspuD8XGutDY324PyzWh8b60Lg/gMb60Fgfuj+VgpdT8HK6P6o+NNaHxro/v/rQWB8auz/Utm3btm27P+lyCl5Owbs//i6n4OUUvD8T60NjfWi8Pyin4OUUvLw/PWN9aKwPvT9SHxrrQ2O9P3yXU/ByCr4/0IfG+tBYvz88NNaHxvrAP5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[78]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/1gkRWJbb0z+MmKD2UarXPxNwkFf5vdw//+rX5nTj3z8Kh3kDSMHhP/mxsOsx0uM/GQtidFgk5j9IwtbM467oPyuBC1zgAuo/Qp+asgJb6z+5BcPh3/7tP9kw8PQbLvA/lDsSSC/+8D8DBqDrVhHwP0RTQUlQxu0/hh+Y2lUx6z8eClKPJZ7oP/NhS2B7MuY/ZbXyE+sB5D8hBY/JKRPiPz32rRchZeA/2ILX72Hl3T/0eA/wKmrbP47NED1Aedc/EtWCPftu0j8wDDj6h/TLP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[78]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"Al5OwcspuD8XGutDY324Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"Qp+asgJb6z+5BcPh3/7tPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"Al5OwcspuD8XGutDY324Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"Qp+asgJb6z+5BcPh3/7tPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 77\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"28\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/MAUvp+DltD9afWisD421P4T1obE+NLY/mbE+NNaHtj+ubdu2bdu2P8MpeDkFL7c/2OUUvJyCtz/tobE+NNa3P/j//////7c/Al5OwcspuD8MvJyCl1O4Pxca60Njfbg/LNaHxvrQuD+AxvrQWB+6P5WCl1Pwcro/qj401ofGuj+/+tBYHxq7P9S2bdu2bbs/6XIKXk7Buz/+Lqfg5RS8PxPrQ2N9aLw/KKfg5RS8vD89Y31orA+9P1IfGutDY70/fJdT8HIKvj/Qh8b60Fi/Pzw01ofG+sA/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[79]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/1gkRWJbb0z+MmKD2UarXPxNwkFf5vdw//+rX5nTj3z8Kh3kDSMHhP/mxsOsx0uM/GQtidFgk5j9IwtbM467oPyuBC1zgAuo/Qp+asgJb6z++biyxarHsP7kFw+Hf/u0/2TDw9Bsu8D+UOxJIL/7wPwMGoOtWEfA/RFNBSVDG7T+GH5jaVTHrPx4KUo8lnug/82FLYHsy5j9ltfIT6wHkPyEFj8kpE+I/PfatFyFl4D/YgtfvYeXdP/R4D/Aqats/js0QPUB51z8S1YI9+27SPzAMOPqH9Ms/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[79]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"qj401ofGuj+/+tBYHxq7Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"RFNBSVDG7T+GH5jaVTHrPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"qj401ofGuj+/+tBYHxq7Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"RFNBSVDG7T+GH5jaVTHrPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 78\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"29\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/MAUvp+DltD9afWisD421P4T1obE+NLY/mbE+NNaHtj+ubdu2bdu2P8MpeDkFL7c/2OUUvJyCtz/tobE+NNa3P/j//////7c/Al5OwcspuD8MvJyCl1O4Pxca60Njfbg/LNaHxvrQuD+AxvrQWB+6P5WCl1Pwcro/qj401ofGuj+0nIKXU/C6P7/60FgfGrs/1LZt27Ztuz/pcgpeTsG7P/4up+DlFLw/E+tDY31ovD8op+DlFLy8Pz1jfWisD70/Uh8a60NjvT98l1Pwcgq+P9CHxvrQWL8/PDTWh8b6wD+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[80]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/1gkRWJbb0z+MmKD2UarXPxNwkFf5vdw//+rX5nTj3z8Kh3kDSMHhP/mxsOsx0uM/GQtidFgk5j9IwtbM467oPyuBC1zgAuo/Qp+asgJb6z++biyxarHsP7kFw+Hf/u0/2TDw9Bsu8D+UOxJIL/7wPwMGoOtWEfA/RFNBSVDG7T9YHcaexn7sP4YfmNpVMes/HgpSjyWe6D/zYUtgezLmP2W18hPrAeQ/IQWPySkT4j899q0XIWXgP9iC1+9h5d0/9HgP8Cpq2z+OzRA9QHnXPxLVgj37btI/MAw4+of0yz9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[80]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"v/rQWB8auz/Utm3btm27Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"hh+Y2lUx6z8eClKPJZ7oPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"v/rQWB8auz/Utm3btm27Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"hh+Y2lUx6z8eClKPJZ7oPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 79\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"30\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/MAUvp+DltD9afWisD421P4T1obE+NLY/mbE+NNaHtj+ubdu2bdu2P8MpeDkFL7c/2OUUvJyCtz/tobE+NNa3P/j//////7c/Al5OwcspuD8MvJyCl1O4Pxca60Njfbg/LNaHxvrQuD+AxvrQWB+6P5WCl1Pwcro/qj401ofGuj+0nIKXU/C6P7/60FgfGrs/ylgfGutDuz/Utm3btm27P+lyCl5Owbs//i6n4OUUvD8T60NjfWi8Pyin4OUUvLw/PWN9aKwPvT9SHxrrQ2O9P3yXU/ByCr4/0IfG+tBYvz88NNaHxvrAP5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[81]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/1gkRWJbb0z+MmKD2UarXPxNwkFf5vdw//+rX5nTj3z8Kh3kDSMHhP/mxsOsx0uM/GQtidFgk5j9IwtbM467oPyuBC1zgAuo/Qp+asgJb6z++biyxarHsP7kFw+Hf/u0/2TDw9Bsu8D+UOxJIL/7wPwMGoOtWEfA/RFNBSVDG7T9YHcaexn7sP4YfmNpVMes/nuADF67k6T8eClKPJZ7oP/NhS2B7MuY/ZbXyE+sB5D8hBY/JKRPiPz32rRchZeA/2ILX72Hl3T/0eA/wKmrbP47NED1Aedc/EtWCPftu0j8wDDj6h/TLP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[81]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"3BS8nIKXsz8wBS+n4OW0Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"pfiV37F2zT/WCRFYltvTPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"3BS8nIKXsz8wBS+n4OW0Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"pfiV37F2zT/WCRFYltvTPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 80\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"31\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/Bo31obE+tD8wBS+n4OW0P1p9aKwPjbU/hPWhsT40tj+ZsT401oe2P65t27Zt27Y/wyl4OQUvtz/Y5RS8nIK3P+2hsT401rc/+P//////tz8CXk7Byym4Pwy8nIKXU7g/FxrrQ2N9uD8s1ofG+tC4P4DG+tBYH7o/lYKXU/Byuj+qPjTWh8a6P7ScgpdT8Lo/v/rQWB8auz/KWB8a60O7P9S2bdu2bbs/6XIKXk7Buz/+Lqfg5RS8PxPrQ2N9aLw/KKfg5RS8vD89Y31orA+9P1IfGutDY70/fJdT8HIKvj/Qh8b60Fi/Pzw01ofG+sA/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[82]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/DY/MrWr30D/WCRFYltvTP4yYoPZRqtc/E3CQV/m93D//6tfmdOPfPwqHeQNIweE/+bGw6zHS4z8ZC2J0WCTmP0jC1szjrug/K4ELXOAC6j9Cn5qyAlvrP75uLLFqsew/uQXD4d/+7T/ZMPD0Gy7wP5Q7Ekgv/vA/Awag61YR8D9EU0FJUMbtP1gdxp7Gfuw/hh+Y2lUx6z+e4AMXruTpPx4KUo8lnug/82FLYHsy5j9ltfIT6wHkPyEFj8kpE+I/PfatFyFl4D/YgtfvYeXdP/R4D/Aqats/js0QPUB51z8S1YI9+27SPzAMOPqH9Ms/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[82]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"2OUUvJyCtz/tobE+NNa3Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"GQtidFgk5j9IwtbM467oPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"2OUUvJyCtz/tobE+NNa3Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"GQtidFgk5j9IwtbM467oPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 81\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"32\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/Bo31obE+tD8wBS+n4OW0P1p9aKwPjbU/hPWhsT40tj+ZsT401oe2P65t27Zt27Y/wyl4OQUvtz/Y5RS8nIK3P+JDY31orLc/7aGxPjTWtz/4//////+3PwJeTsHLKbg/DLycgpdTuD8XGutDY324PyzWh8b60Lg/gMb60Fgfuj+VgpdT8HK6P6o+NNaHxro/tJyCl1Pwuj+/+tBYHxq7P8pYHxrrQ7s/1LZt27Ztuz/pcgpeTsG7P/4up+DlFLw/E+tDY31ovD8op+DlFLy8Pz1jfWisD70/Uh8a60NjvT98l1Pwcgq+P9CHxvrQWL8/PDTWh8b6wD+QJEmSJEnCP+DlFLycgsc/KKfg5RS8zD88NNaHxvrQP+QUvJyCl9M/jPWhsT401j801ofG+tDYP9i2bdu2bds/gJdT8HIK3j8UvJyCl1PgP2isD431oeE/upyCl1Pw4j8OjfWhsT7kP2J9aKwPjeU/tm3btm3b5j8KXk7ByynoP1xOwcspeOk/sD401ofG6j8EL6fg5RTsP1gfGutDY+0/rA+N9aGx7j8AAAAAAADwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[83]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/DY/MrWr30D/WCRFYltvTP4yYoPZRqtc/E3CQV/m93D//6tfmdOPfPwqHeQNIweE/+bGw6zHS4z8ZC2J0WCTmP36P/teZY+c/SMLWzOOu6D8rgQtc4ALqP0KfmrICW+s/vm4ssWqx7D+5BcPh3/7tP9kw8PQbLvA/lDsSSC/+8D8DBqDrVhHwP0RTQUlQxu0/WB3GnsZ+7D+GH5jaVTHrP57gAxeu5Ok/HgpSjyWe6D/zYUtgezLmP2W18hPrAeQ/IQWPySkT4j899q0XIWXgP9iC1+9h5d0/9HgP8Cpq2z+OzRA9QHnXPxLVgj37btI/MAw4+of0yz9UjuEREOXIP85ywVoNUMk/2tVj7CmOzT/M0FCigzbRP6NNl4b7vdM/e/dfvBFP1j+LaAoRvuTYP31KTFjgfNs/ku7On3IW3j89RVEXdVjgPzc+iP77peE//uHmK7bz4j+rLmGJlEHkPxldWyuNj+U/E2NPVJnd5j+n/Z9OtCvoP0l1W7vaeek/2hOtIwrI6j8lismxQBbsP8OYAgJ9ZO0/BUkQA76y7j+0wBZwgQDwPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[83]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"Wn1orA+NtT+E9aGxPjS2Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"jJig9lGq1z8TcJBX+b3cPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"Wn1orA+NtT+E9aGxPjS2Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"jJig9lGq1z8TcJBX+b3cPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 82\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"33\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/Bo31obE+tD8wBS+n4OW0P1p9aKwPjbU/bzkFL6fgtT+E9aGxPjS2P5mxPjTWh7Y/rm3btm3btj/DKXg5BS+3P9jlFLycgrc/4kNjfWistz/tobE+NNa3P/j//////7c/Al5OwcspuD8MvJyCl1O4Pxca60Njfbg/LNaHxvrQuD+AxvrQWB+6P5WCl1Pwcro/qj401ofGuj+0nIKXU/C6P7/60FgfGrs/ylgfGutDuz/Utm3btm27P+lyCl5Owbs//i6n4OUUvD8T60NjfWi8Pyin4OUUvLw/PWN9aKwPvT9SHxrrQ2O9P3yXU/ByCr4/0IfG+tBYvz88NNaHxvrAP5AkSZIkScI/4OUUvJyCxz8op+DlFLzMPzw01ofG+tA/5BS8nIKX0z+M9aGxPjTWPzTWh8b60Ng/2LZt27Zt2z+Al1PwcgrePxS8nIKXU+A/aKwPjfWh4T+6nIKXU/DiPw6N9aGxPuQ/Yn1orA+N5T+2bdu2bdvmPwpeTsHLKeg/XE7Byyl46T+wPjTWh8bqPwQvp+DlFOw/WB8a60Nj7T+sD431obHuPwAAAAAAAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[84]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/DY/MrWr30D/WCRFYltvTP4yYoPZRqtc/O1rjY/cE2j8TcJBX+b3cP//q1+Z0498/Cod5A0jB4T/5sbDrMdLjPxkLYnRYJOY/fo/+15lj5z9IwtbM467oPyuBC1zgAuo/Qp+asgJb6z++biyxarHsP7kFw+Hf/u0/2TDw9Bsu8D+UOxJIL/7wPwMGoOtWEfA/RFNBSVDG7T9YHcaexn7sP4YfmNpVMes/nuADF67k6T8eClKPJZ7oP/NhS2B7MuY/ZbXyE+sB5D8hBY/JKRPiPz32rRchZeA/2ILX72Hl3T/0eA/wKmrbP47NED1Aedc/EtWCPftu0j8wDDj6h/TLP1SO4REQ5cg/znLBWg1QyT/a1WPsKY7NP8zQUKKDNtE/o02Xhvu90z9791+8EU/WP4toChG+5Ng/fUpMWOB82z+S7s6fchbePz1FURd1WOA/Nz6I/vul4T/+4eYrtvPiP6suYYmUQeQ/GV1bK42P5T8TY09Umd3mP6f9n060K+g/SXVbu9p56T/aE60jCsjqPyWKybFAFuw/w5gCAn1k7T8FSRADvrLuP7TAFnCBAPA/\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[84]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"fJdT8HIKvj/Qh8b60Fi/Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"js0QPUB51z8S1YI9+27SPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"fJdT8HIKvj/Qh8b60Fi/Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"js0QPUB51z8S1YI9+27SPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 83\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\", \"34\": \"{\\\"content\\\":{\\\"events\\\":[{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1920\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"AAAAAAAA8L+sD431obHuv1kfGutDY+2/BS+n4OUU7L+yPjTWh8bqv15OwcspeOm/Cl5Owcsp6L+3bdu2bdvmv2R9aKwPjeW/EI31obE+5L+8nIKXU/Div2msD431oeG/FbycgpdT4L+El1Pwcgrev9y2bdu2bdu/NtaHxvrQ2L+O9aGxPjTWv+YUvJyCl9O/QDTWh8b60L8wp+DlFLzMv+TlFLycgse/lCRJkiRJwr+QxvrQWB+6v+CHxvrQWK+/QAUvp+DllL9ABS+n4OWUPzAFL6fg5aQ/wIfG+tBYrz+IJEmSJEmyP9wUvJyCl7M/Bo31obE+tD8wBS+n4OW0P1p9aKwPjbU/bzkFL6fgtT+E9aGxPjS2P5mxPjTWh7Y/rm3btm3btj/DKXg5BS+3P9jlFLycgrc/4kNjfWistz/tobE+NNa3P/j//////7c/Al5OwcspuD8MvJyCl1O4Pxca60Njfbg/LNaHxvrQuD+AxvrQWB+6P5WCl1Pwcro/qj401ofGuj+0nIKXU/C6P7/60FgfGrs/ylgfGutDuz/Utm3btm27P+lyCl5Owbs//i6n4OUUvD8T60NjfWi8Pyin4OUUvLw/PWN9aKwPvT9SHxrrQ2O9P3yXU/ByCr4/pg+N9aGxvj/Qh8b60Fi/Pzw01ofG+sA/kCRJkiRJwj/g5RS8nILHPyin4OUUvMw/PDTWh8b60D/kFLycgpfTP4z1obE+NNY/NNaHxvrQ2D/Ytm3btm3bP4CXU/ByCt4/FLycgpdT4D9orA+N9aHhP7qcgpdT8OI/Do31obE+5D9ifWisD43lP7Zt27Zt2+Y/Cl5Owcsp6D9cTsHLKXjpP7A+NNaHxuo/BC+n4OUU7D9YHxrrQ2PtP6wPjfWhse4/AAAAAAAA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[85]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"9HMrslL/778vBtEK57DuvwptJbh5Yu2/XQFVcQoU7L9Xc1jdmMXqv/Q1bo4kd+m/DAII/Kwo6L8K74l6Mdrmv7uL6S+xi+W/IB+/Ays95L+yq5OIne7iv+YR7toGoOG/eDd3cGRR4L8unpCbZQXev6KHXSXaZ9u/K3cOgBjK2L9Y6z0DDCzWv/803yeVjdO/j2ZR34Hu0L8T2+uV/ZzMv1zFUT3xWce/G+0Fv60Rwr/cVAdFMX+5vxqyyxp/Yq2/4BXHxUfEi79srQMH2GeiP0U12egDjrE//aISg12jvz/md9LYlhzHP6X4ld+xds0/DY/MrWr30D/WCRFYltvTP4yYoPZRqtc/O1rjY/cE2j8TcJBX+b3cP//q1+Z0498/Cod5A0jB4T/5sbDrMdLjPxkLYnRYJOY/fo/+15lj5z9IwtbM467oPyuBC1zgAuo/Qp+asgJb6z++biyxarHsP7kFw+Hf/u0/2TDw9Bsu8D+UOxJIL/7wPwMGoOtWEfA/RFNBSVDG7T9YHcaexn7sP4YfmNpVMes/nuADF67k6T8eClKPJZ7oP/NhS2B7MuY/ZbXyE+sB5D8hBY/JKRPiPz32rRchZeA/2ILX72Hl3T/0eA/wKmrbP47NED1Aedc/yAWPvBuU1D8S1YI9+27SPzAMOPqH9Ms/VI7hERDlyD/OcsFaDVDJP9rVY+wpjs0/zNBQooM20T+jTZeG+73TP3v3X7wRT9Y/i2gKEb7k2D99SkxY4HzbP5Luzp9yFt4/PUVRF3VY4D83Poj++6XhP/7h5iu28+I/qy5hiZRB5D8ZXVsrjY/lPxNjT1SZ3eY/p/2fTrQr6D9JdVu72nnpP9oTrSMKyOo/JYrJsUAW7D/DmAICfWTtPwVJEAO+su4/tMAWcIEA8D8=\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[85]}}},{\\\"cols\\\":[\\\"ys\\\",\\\"xs\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1927\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"xs\\\":[],\\\"ys\\\":[]}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1935\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"1LZt27Ztuz/pcgpeTsG7Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"HgpSjyWe6D/zYUtgezLmPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"cols\\\":[\\\"x\\\",\\\"y\\\"],\\\"column_source\\\":{\\\"id\\\":\\\"1943\\\",\\\"type\\\":\\\"ColumnDataSource\\\"},\\\"kind\\\":\\\"ColumnDataChanged\\\",\\\"new\\\":{\\\"x\\\":{\\\"__ndarray__\\\":\\\"1LZt27Ztuz/pcgpeTsG7Pw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]},\\\"y\\\":{\\\"__ndarray__\\\":\\\"HgpSjyWe6D/zYUtgezLmPw==\\\",\\\"dtype\\\":\\\"float64\\\",\\\"shape\\\":[2]}}},{\\\"attr\\\":\\\"text\\\",\\\"kind\\\":\\\"ModelChanged\\\",\\\"model\\\":{\\\"id\\\":\\\"1883\\\",\\\"type\\\":\\\"Title\\\"},\\\"new\\\":\\\"npoints: 84\\\"}],\\\"references\\\":[]},\\\"root\\\":\\\"1884\\\"}\"};\n",
3052
+       "    var dim_vals = ['50.0'];\n",
3053
+       "    var keyMap = {\"('50.0',)\": 0, \"('51.0',)\": 1, \"('52.0',)\": 2, \"('53.0',)\": 3, \"('54.0',)\": 4, \"('55.0',)\": 5, \"('56.0',)\": 6, \"('57.0',)\": 7, \"('58.0',)\": 8, \"('59.0',)\": 9, \"('60.0',)\": 10, \"('61.0',)\": 11, \"('62.0',)\": 12, \"('63.0',)\": 13, \"('64.0',)\": 14, \"('65.0',)\": 15, \"('66.0',)\": 16, \"('67.0',)\": 17, \"('68.0',)\": 18, \"('69.0',)\": 19, \"('70.0',)\": 20, \"('71.0',)\": 21, \"('72.0',)\": 22, \"('73.0',)\": 23, \"('74.0',)\": 24, \"('75.0',)\": 25, \"('76.0',)\": 26, \"('77.0',)\": 27, \"('78.0',)\": 28, \"('79.0',)\": 29, \"('80.0',)\": 30, \"('81.0',)\": 31, \"('82.0',)\": 32, \"('83.0',)\": 33, \"('84.0',)\": 34};\n",
3054
+       "    var notFound = \"<h2 style='vertical-align: middle>No frame at selected dimension value.<h2>\";\n",
3055
+       "    function create_widget() {\n",
3056
+       "        setTimeout(function() {\n",
3057
+       "            animd9d78d6e6e174e009947049b1fb70b43 = new BokehSelectionWidget(frame_data, \"d9d78d6e6e174e009947049b1fb70b43\", widget_ids,\n",
3058
+       "\t\t\t\tkeyMap, dim_vals, notFound, false, \"default\",\n",
3059
+       "\t\t\t\ttrue, \"./json_figures/\", false);\n",
3060
+       "        }, 0);\n",
3061
+       "    }\n",
3062
+       "    \n",
3063
+       "    create_widget();\n",
3064
+       "    \n",
3065
+       "})();\n",
3066
+       "</script>"
3067
+      ],
3068
+      "text/plain": [
3069
+       ":HoloMap   [npoints]\n",
3070
+       "   :Overlay\n",
3071
+       "      .Scatter.I  :Scatter   [x]   (y)\n",
3072
+       "      .Path.I     :Path   [x,y]\n",
3073
+       "      .Scatter.II :Scatter   [x]   (y)\n",
3074
+       "      .Curve.I    :Curve   [x]   (y)"
3075
+      ]
3076
+     },
3077
+     "execution_count": 17,
3078
+     "metadata": {},
3079
+     "output_type": "execute_result"
3080
+    }
3081
+   ],
3082
+   "source": [
3083
+    "def g(x):\n",
3084
+    "    a, d = 0.01, 0.1\n",
3085
+    "    return x + a**2 / (a**2 + (x - d)**2)\n",
3086
+    "\n",
3087
+    "\n",
3088
+    "def plot_loss_interval(learner):\n",
3089
+    "    x_0, x_1 = max(learner.losses, key=learner.losses.get)\n",
3090
+    "    y_0, y_1 = learner.data[x_0], learner.data[x_1]\n",
3091
+    "    pts = ([x_0, x_1], [y_0, y_1])\n",
3092
+    "    plot = (hv.Scatter(pts).opts(style=dict(color='r')) *\n",
3093
+    "            hv.Curve(pts).opts(style=dict(color='r')))\n",
3094
+    "    return plot\n",
3095
+    "\n",
3096
+    "\n",
3097
+    "learner = adaptive.Learner1D(f, bounds=(-1, 1))\n",
3098
+    "\n",
3099
+    "xs, _ = learner.ask(50)\n",
3100
+    "\n",
3101
+    "ys = [g(x) for x in xs]\n",
3102
+    "\n",
3103
+    "for x, y in zip(xs, ys):\n",
3104
+    "    learner.tell(x, y)\n",
3105
+    "\n",
3106
+    "frames = []\n",
3107
+    "for i in range(35):\n",
3108
+    "    (x,), _ = learner.ask(1)\n",
3109
+    "    learner.tell(x, g(x))\n",
3110
+    "    frames.append(learner.plot() * plot_loss_interval(learner))\n",
3111
+    "    \n",
3112
+    "hv.HoloMap(dict(enumerate(frames, 50)), kdims=['npoints'])"
3113
+   ]
3114
+  },
3115
+  {
3116
+   "cell_type": "markdown",
3117
+   "metadata": {},
3118
+   "source": [
3119
+    "Decomposing the problem in terms of subdomains and loss functions is useful for a couple of reasons: it's *cheap*, and it's *easily parallelizable*.\n",
3120
+    "\n",
3121
+    "Because the loss function is *local* – it depends only on a single subdomain and perhaps its neighbours – it costs $O(1)$ to compute for new subdomains, and $O(\\log N)$ to insert into the priority queue of subdomains. This means that sampling $N$ points should take $O(N \\log N)$ time. The easy parallelism comes from simply asking for $n$ points at a time, where $n$ is matched with the available computational resources.\n",
3122
+    "\n",
3123
+    "In practice these two properties mean that the Learners implemented in adaptive are very effective for plotting and interactive exploration."
3124
+   ]
3125
+  },
3126
+  {
3127
+   "cell_type": "markdown",
3128
+   "metadata": {},
3129
+   "source": [
3130
+    "### What loss function do you use?"
3131
+   ]
3132
+  },
3133
+  {
3134
+   "cell_type": "markdown",
3135
+   "metadata": {},
3136
+   "source": [
3137
+    "In the first few sentences of this article I said:\n",
3138
+    "\n",
3139
+    "> We don't care about *how* points are sampled, just that they're sampled *well*\n",
3140
+    "\n",
3141
+    "but how do we *define* \"well-sampled\"? It's largely a matter of opinion. Perhaps you really care about regions where your function is steep, or only where the slope changes rapidly. Maybe you want to *guarantee* that features of a certain size will definitely be captured, or maybe you don't really care about the details, and just want something that \"looks good\" when plotted.\n",
3142
+    "\n",
3143
+    "With the Learner implementation I introduced in the last section we can choose what \"well-sampled\" means for us by choosing a *loss function*. By constructing a loss function that is large on regions that we consider \"interesting\" we can guide the algorithm to prefer these regions.\n",
3144
+    "\n",
3145
+    "The Learners implemented in `adaptive` leave the choice of loss function up to you, however we also provide a simple default that seems to work pretty well in practice (all of the examples in this post use the default loss). The process of designing a good loss function is worth a whole blog post by itself, so for now we'll just say what the default is and save the lengthy explanations for later.\n",
3146
+    "\n",
3147
+    "\n",
3148
+    "The default loss we use is the simplest thing that could possibly work: the distance in the plane between neighboring points."
3149
+   ]
3150
+  },
3151
+  {
3152
+   "cell_type": "markdown",
3153
+   "metadata": {},
3154
+   "source": [
3155
+    "<div class=\"row justify-content-center\" style=\"margin-left: 0; margin-right: 0\">\n",
3156
+    "<div class=\"col-md-7\">\n",
3157
+    "    <img class=\"img-responsive\" src=\"default-loss.svg\"> </img>\n",
3158
+    "</div>\n",
3159
+    "</div>"
3160
+   ]
3161
+  },
3162
+  {
3163
+   "cell_type": "markdown",
3164
+   "metadata": {},
3165
+   "source": [
3166
+    "That's it. I was pretty astounded that this would produce intelligible results, but it does a stellar job, given its simplicity. Another advantage of using this loss function as a default is that it trivially extends to higher-dimensional domains domains and codomains: for a function $\\;f : ℝ^n \\to ℝ^m$ the default loss corresponds to the volume of the $n$-simplex defining a subdomain (line, triangle, tetrahedron in 1D, 2D and 3D respectively) embedded in $n+m$ dimensional space.\n",
3167
+    "\n",
3168
+    "Recently we've also been tinkering with alternate loss functions, which we may use as the default in the future. One particularly neat idea is to use a \"reverse\" [Visvalingam Whyatt algorithm](https://bost.ocks.org/mike/simplify/) (RVW), where we assign loss based on the area of the triangles \"associated\" with the interval. The figure below should give you the gist of the idea:"
3169
+   ]
3170
+  },
3171
+  {
3172
+   "cell_type": "markdown",
3173
+   "metadata": {},
3174
+   "source": [
3175
+    "<div class=\"row justify-content-center\" style=\"margin-left: 0; margin-right: 0\">\n",
3176
+    "<div class=\"col-md-7\">\n",
3177
+    "    <img class=\"img-responsive\" src=\"whyatt-loss.svg\"> </img>\n",
3178
+    "</div>\n",
3179
+    "</div>"
3180
+   ]
3181
+  },
3182
+  {
3183
+   "cell_type": "markdown",
3184
+   "metadata": {},
3185
+   "source": [
3186
+    "This loss has the advantage that it prioritizes *changes* in slope, rather than just steep regions, so it will zoom in on features that \"stick out\". On the other hand, it will penalize very abrupt and isolated changes, so won't get stuck on discontinuities as much as the distance-in-the-plane loss function."
3187
+   ]
3188
+  },
3189
+  {
3190
+   "cell_type": "markdown",
3191
+   "metadata": {},
3192
+   "source": [
3193
+    "## Where we're going"
3194
+   ]
3195
+  },
3196
+  {
3197
+   "cell_type": "markdown",
3198
+   "metadata": {},
3199
+   "source": [
3200
+    "Adaptive is a work in progress, and there are a few areas where I'd like to see us improve in the coming months. \n",
3201
+    "\n",
3202
+    "### Experimental control\n",
3203
+    "\n",
3204
+    "The main area where I'd like to see `adaptive` become more powerful is in controlling physics (or other) experiments. Maybe you've got some circuit attached to a voltage source and an electromagnet, and you want to measure the current flowing through the circuit for different voltages and magnetic fields. Instead of sweeping the parameters manually, we'd like to hand the reins to `adaptive` and have it control the experiment for us.\n",
3205
+    "In my opinion adaptive sampling can transform how experiments are done, especially in my own domain of quantum nanoelectronics.\n",
3206
+    "With that possibility comes a metric tonne of of new challenges to overcome. For one, jumping around in parameter space is just fine and dandy when you're doing a simulation, but if you suddenly crank your electromagnet up to 5 Tesla you're going to have a bad time. There's also the joy of dealing with hysteresis, where you have to care not only *where* you are in parameter space but *how you got there* too.\n",
3207
+    "\n",
3208
+    "\n",
3209
+    "### Better abstractions\n",
3210
+    "\n",
3211
+    "We'd like to make `adaptive` more composable and extensible, so that it can be used in ways that we haven't even thought of yet. While dogfooding `adaptive` within our research group we found ourselves bolting on bits and pieces as we needed: easy saving/loading of data from previous runs, having functions return metadata (e.g. runtime) in addition to results, balancing resources between several learners based on their loss, etc. Our approach while adding these pieces was \"if it solves our immediate problem, we'll add it\". This is because it's really hard to know how to make something extensible if you have no idea in what *direction* you'd like to extend it. By progressively adding features that \"get the job done\", but without thinking too hard how everything fits together as a whole, we've managed to accumulate a body of use-cases. Now I'd like to see us use that data to make a cleaner and more ergonomic interface to `adaptive`.\n"
3212
+   ]
3213
+  },
3214
+  {
3215
+   "cell_type": "markdown",
3216
+   "metadata": {},
3217
+   "source": [
3218
+    "### How you can help"
3219
+   ]
3220
+  },
3221
+  {
3222
+   "cell_type": "markdown",
3223
+   "metadata": {},
3224
+   "source": [
3225
+    "#### Give it a try!\n",
3226
+    "\n",
3227
+    "If you think you'd find `adaptive` useful, please give it a try! We are very interested in hearing about different use cases, and suggestions about how we can make adaptive even more awesome. You can install adaptive *right now* by opening a terminal and typing\n",
3228
+    "\n",
3229
+    "```\n",
3230
+    "conda install -c conda-forge adaptive\n",
3231
+    "```\n",
3232
+    "\n",
3233
+    "or\n",
3234
+    "\n",
3235
+    "```\n",
3236
+    "pip install adaptive[notebook]\n",
3237
+    "```\n",
3238
+    "\n",
3239
+    "#### Get involved!\n",
3240
+    "\n",
3241
+    "If you'd like to get involved with developing `adaptive` further, that would be awesome. We're on [on Github](https://github.com/python-adaptive/adaptive), so get yourself over there to open an issue or a pull request!"
3242
+   ]
3243
+  }
3244
+ ],
3245
+ "metadata": {
3246
+  "celltoolbar": "Tags",
3247
+  "kernelspec": {
3248
+   "display_name": "adaptive",
3249
+   "language": "python",
3250
+   "name": "adaptive"
3251
+  },
3252
+  "language_info": {
3253
+   "codemirror_mode": {
3254
+    "name": "ipython",
3255
+    "version": 3
3256
+   },
3257
+   "file_extension": ".py",
3258
+   "mimetype": "text/x-python",
3259
+   "name": "python",
3260
+   "nbconvert_exporter": "python",
3261
+   "pygments_lexer": "ipython3",
3262
+   "version": "3.6.10"
3263
+  },
3264
+  "widgets": {
3265
+   "application/vnd.jupyter.widget-state+json": {
3266
+    "state": {
3267
+     "0c16f44a2abf4a3d9d8d7a87421eb528": {
3268
+      "model_module": "@jupyter-widgets/controls",
3269
+      "model_module_version": "1.1.0",
3270
+      "model_name": "HBoxModel",
3271
+      "state": {
3272
+       "children": [
3273
+        "IPY_MODEL_358f0bb352b442659cf2d80c46b5f643",
3274
+        "IPY_MODEL_86af8782c15142f5af7c02b0285ab88a"
3275
+       ],
3276
+       "layout": "IPY_MODEL_f8ed6971ae644925afc29c7cce97e75e"
3277
+      }
3278
+     },
3279
+     "0e91590123684c28a667a422dd86f1a1": {
3280
+      "model_module": "@jupyter-widgets/controls",
3281
+      "model_module_version": "1.1.0",
3282
+      "model_name": "ButtonStyleModel",
3283
+      "state": {}
3284
+     },
3285
+     "161db3c25348428d9397f97838773f63": {
3286
+      "model_module": "@jupyter-widgets/base",
3287
+      "model_module_version": "1.0.0",
3288
+      "model_name": "LayoutModel",
3289
+      "state": {
3290
+       "display": "none",
3291
+       "width": "150px"
3292
+      }
3293
+     },
3294
+     "16d40ad86068447896cec0ab0c7f00fe": {
3295
+      "model_module": "@jupyter-widgets/base",
3296
+      "model_module_version": "1.0.0",
3297
+      "model_name": "LayoutModel",
3298
+      "state": {}
3299
+     },
3300
+     "181d296e82cc4acc965567055a1d0c6e": {
3301
+      "model_module": "@jupyter-widgets/base",
3302
+      "model_module_version": "1.0.0",
3303
+      "model_name": "LayoutModel",
3304
+      "state": {}
3305
+     },
3306
+     "1a0fe02e290d456783204bb2f14bd702": {
3307
+      "model_module": "@jupyter-widgets/controls",
3308
+      "model_module_version": "1.1.0",
3309
+      "model_name": "ButtonModel",
3310
+      "state": {
3311
+       "description": "cancel live-plot",
3312
+       "layout": "IPY_MODEL_96cb9e75f87b4750a04cf7c8dcbc4717",
3313
+       "style": "IPY_MODEL_d84a96982f7e4f9681de037be1808a32"
3314
+      }
3315
+     },
3316
+     "358f0bb352b442659cf2d80c46b5f643": {
3317
+      "model_module": "@jupyter-widgets/controls",
3318
+      "model_module_version": "1.1.0",
3319
+      "model_name": "HTMLModel",
3320
+      "state": {
3321
+       "layout": "IPY_MODEL_16d40ad86068447896cec0ab0c7f00fe",
3322
+       "style": "IPY_MODEL_fca5b176c8c44760becdc8391d71eff2",
3323
+       "value": "\n        <dl>\n        <dt>status</dt><dd><font color=\"green\">finished</font></dd>\n<dt>elapsed time</dt><dd>0:00:03.006836</dd>\n<dt>overhead</dt><dd>58.00%</dd>\n<dt># of points</dt><dd>1000</dd>\n        </dl>\n    "
3324
+      }
3325
+     },
3326
+     "42bd4c04f82740a3a654c55e61bb21d0": {
3327
+      "model_module": "@jupyter-widgets/controls",
3328
+      "model_module_version": "1.1.0",
3329
+      "model_name": "DescriptionStyleModel",
3330
+      "state": {
3331
+       "description_width": ""
3332
+      }
3333
+     },
3334
+     "49060433a6734b169751b1c67a023227": {
3335
+      "model_module": "@jupyter-widgets/base",
3336
+      "model_module_version": "1.0.0",
3337
+      "model_name": "LayoutModel",
3338
+      "state": {
3339
+       "display": "none",
3340
+       "width": "150px"
3341
+      }
3342
+     },
3343
+     "4d6a8e47975245759bc2e83baa619fc9": {
3344
+      "model_module": "@jupyter-widgets/base",
3345
+      "model_module_version": "1.0.0",
3346
+      "model_name": "LayoutModel",
3347
+      "state": {}
3348
+     },
3349
+     "55435048adc64497bf44e37c8cf71d62": {
3350
+      "model_module": "@jupyter-widgets/base",
3351
+      "model_module_version": "1.0.0",
3352
+      "model_name": "LayoutModel",
3353
+      "state": {
3354
+       "align_items": "center",
3355
+       "border": "solid 1px",
3356
+       "width": "200px"
3357
+      }
3358
+     },
3359
+     "5b2e641cadf84225bf9df791aea7fed3": {
3360
+      "model_module": "@jupyter-widgets/controls",
3361
+      "model_module_version": "1.1.0",
3362
+      "model_name": "HTMLModel",
3363
+      "state": {
3364
+       "layout": "IPY_MODEL_181d296e82cc4acc965567055a1d0c6e",
3365
+       "style": "IPY_MODEL_42bd4c04f82740a3a654c55e61bb21d0",
3366
+       "value": "\n        <dl>\n        <dt class=\"ignore-css\">status</dt><dd><font color=\"green\">finished</font></dd>\n<dt class=\"ignore-css\">elapsed time</dt><dd>0:00:05.547482</dd>\n<dt class=\"ignore-css\">overhead</dt><dd>26.98%</dd>\n<dt class=\"ignore-css\"># of points</dt><dd>1000</dd>\n        </dl>\n    "
3367
+      }
3368
+     },
3369
+     "6f7a8225ad274ce9af357c80b0aa2f15": {
3370
+      "model_module": "@jupyter-widgets/base",
3371
+      "model_module_version": "1.0.0",
3372
+      "model_name": "LayoutModel",
3373
+      "state": {
3374
+       "align_items": "center",
3375
+       "border": "solid 1px",
3376
+       "width": "200px"
3377
+      }
3378
+     },
3379
+     "7faff9c45a264049bc15c2e44fad61df": {
3380
+      "model_module": "@jupyter-widgets/base",
3381
+      "model_module_version": "1.0.0",
3382
+      "model_name": "LayoutModel",
3383
+      "state": {
3384
+       "display": "none",
3385
+       "width": "100px"
3386
+      }
3387
+     },
3388
+     "86af8782c15142f5af7c02b0285ab88a": {
3389
+      "model_module": "@jupyter-widgets/controls",
3390
+      "model_module_version": "1.1.0",
3391
+      "model_name": "ButtonModel",
3392
+      "state": {
3393
+       "description": "cancel runner",
3394
+       "layout": "IPY_MODEL_971c9689ec9b406384f010d46a5014f4",
3395
+       "style": "IPY_MODEL_fdb1cba7ecdc48979f5645585909c8c3"
3396
+      }
3397
+     },
3398
+     "96cb9e75f87b4750a04cf7c8dcbc4717": {
3399
+      "model_module": "@jupyter-widgets/base",
3400
+      "model_module_version": "1.0.0",
3401
+      "model_name": "LayoutModel",
3402
+      "state": {
3403
+       "display": "none",
3404
+       "width": "150px"
3405
+      }
3406
+     },
3407
+     "971c9689ec9b406384f010d46a5014f4": {
3408
+      "model_module": "@jupyter-widgets/base",
3409
+      "model_module_version": "1.0.0",
3410
+      "model_name": "LayoutModel",
3411
+      "state": {
3412
+       "display": "none",
3413
+       "width": "100px"
3414
+      }
3415
+     },
3416
+     "9c063084e7634dd6bba883f55ee717d6": {
3417
+      "model_module": "@jupyter-widgets/controls",
3418
+      "model_module_version": "1.1.0",
3419
+      "model_name": "HBoxModel",
3420
+      "state": {
3421
+       "children": [
3422
+        "IPY_MODEL_b519e05f23b14e99b70738a21e9da9a8",
3423
+        "IPY_MODEL_aee06cf209af414e96f0fcafc39e8c0c"
3424
+       ],
3425
+       "layout": "IPY_MODEL_6f7a8225ad274ce9af357c80b0aa2f15"
3426
+      }
3427
+     },
3428
+     "a787f52e8f1343cfa99d583b24538fa5": {
3429
+      "model_module": "@jupyter-widgets/base",
3430
+      "model_module_version": "1.0.0",
3431
+      "model_name": "LayoutModel",
3432
+      "state": {
3433
+       "display": "none",
3434
+       "width": "100px"
3435
+      }
3436
+     },
3437
+     "ab05f57f758b4cc088c74dd31e10a440": {
3438
+      "model_module": "@jupyter-widgets/controls",
3439
+      "model_module_version": "1.1.0",
3440
+      "model_name": "ButtonModel",
3441
+      "state": {
3442
+       "description": "cancel runner",
3443
+       "layout": "IPY_MODEL_7faff9c45a264049bc15c2e44fad61df",
3444
+       "style": "IPY_MODEL_cd7ec7748846490d8672813c204dff48"
3445
+      }
3446
+     },
3447
+     "aee06cf209af414e96f0fcafc39e8c0c": {
3448
+      "model_module": "@jupyter-widgets/controls",
3449
+      "model_module_version": "1.1.0",
3450
+      "model_name": "ButtonModel",
3451
+      "state": {
3452
+       "description": "cancel runner",
3453
+       "layout": "IPY_MODEL_a787f52e8f1343cfa99d583b24538fa5",
3454
+       "style": "IPY_MODEL_ed70e2a190a647bdad19a82b31045fa2"
3455
+      }
3456
+     },
3457
+     "b519e05f23b14e99b70738a21e9da9a8": {
3458
+      "model_module": "@jupyter-widgets/controls",
3459
+      "model_module_version": "1.1.0",
3460
+      "model_name": "HTMLModel",
3461
+      "state": {
3462
+       "layout": "IPY_MODEL_4d6a8e47975245759bc2e83baa619fc9",
3463
+       "style": "IPY_MODEL_d27bda63f10c48da967b96d4c0fed134",
3464
+       "value": "\n        <dl>\n        <dt>status</dt><dd><font color=\"green\">finished</font></dd>\n<dt>elapsed time</dt><dd>0:00:04.360202</dd>\n<dt>overhead</dt><dd>71.02%</dd>\n<dt># of points</dt><dd>1000</dd>\n        </dl>\n    "
3465
+      }
3466
+     },
3467
+     "b98576b8a0fd41f69c90599a1523e1ee": {
3468
+      "model_module": "@jupyter-widgets/controls",
3469
+      "model_module_version": "1.1.0",
3470
+      "model_name": "ButtonStyleModel",
3471
+      "state": {}
3472
+     },
3473
+     "bf83e52b2d3a43d6a5e95ea2a36488f5": {
3474
+      "model_module": "@jupyter-widgets/controls",
3475
+      "model_module_version": "1.1.0",
3476
+      "model_name": "HBoxModel",
3477
+      "state": {
3478
+       "children": [
3479
+        "IPY_MODEL_5b2e641cadf84225bf9df791aea7fed3",
3480
+        "IPY_MODEL_ab05f57f758b4cc088c74dd31e10a440"
3481
+       ],
3482
+       "layout": "IPY_MODEL_55435048adc64497bf44e37c8cf71d62"
3483
+      }
3484
+     },
3485
+     "cd7ec7748846490d8672813c204dff48": {
3486
+      "model_module": "@jupyter-widgets/controls",
3487
+      "model_module_version": "1.1.0",
3488
+      "model_name": "ButtonStyleModel",
3489
+      "state": {}
3490
+     },
3491
+     "d27bda63f10c48da967b96d4c0fed134": {
3492
+      "model_module": "@jupyter-widgets/controls",
3493
+      "model_module_version": "1.1.0",
3494
+      "model_name": "DescriptionStyleModel",
3495
+      "state": {
3496
+       "description_width": ""
3497
+      }
3498
+     },
3499
+     "d84a96982f7e4f9681de037be1808a32": {
3500
+      "model_module": "@jupyter-widgets/controls",
3501
+      "model_module_version": "1.1.0",
3502
+      "model_name": "ButtonStyleModel",
3503
+      "state": {}
3504
+     },
3505
+     "ed70e2a190a647bdad19a82b31045fa2": {
3506
+      "model_module": "@jupyter-widgets/controls",
3507
+      "model_module_version": "1.1.0",
3508
+      "model_name": "ButtonStyleModel",
3509
+      "state": {}
3510
+     },
3511
+     "edbcaeb325b64efd9dba8e0ee7e06c05": {
3512
+      "model_module": "@jupyter-widgets/controls",
3513
+      "model_module_version": "1.1.0",
3514
+      "model_name": "ButtonModel",
3515
+      "state": {
3516
+       "description": "cancel live-plot",
3517
+       "layout": "IPY_MODEL_49060433a6734b169751b1c67a023227",
3518
+       "style": "IPY_MODEL_b98576b8a0fd41f69c90599a1523e1ee"
3519
+      }
3520
+     },
3521
+     "f014d5ec75a0497e86c7e523dd32da21": {
3522
+      "model_module": "@jupyter-widgets/controls",
3523
+      "model_module_version": "1.1.0",
3524
+      "model_name": "ButtonModel",
3525
+      "state": {
3526
+       "description": "cancel live-plot",
3527
+       "layout": "IPY_MODEL_161db3c25348428d9397f97838773f63",
3528
+       "style": "IPY_MODEL_0e91590123684c28a667a422dd86f1a1"
3529
+      }
3530
+     },
3531
+     "f8ed6971ae644925afc29c7cce97e75e": {
3532
+      "model_module": "@jupyter-widgets/base",
3533
+      "model_module_version": "1.0.0",
3534
+      "model_name": "LayoutModel",
3535
+      "state": {
3536
+       "align_items": "center",
3537
+       "border": "solid 1px",
3538
+       "width": "200px"
3539
+      }
3540
+     },
3541
+     "fca5b176c8c44760becdc8391d71eff2": {
3542
+      "model_module": "@jupyter-widgets/controls",
3543
+      "model_module_version": "1.1.0",
3544
+      "model_name": "DescriptionStyleModel",
3545
+      "state": {
3546
+       "description_width": ""
3547
+      }
3548
+     },
3549
+     "fdb1cba7ecdc48979f5645585909c8c3": {
3550
+      "model_module": "@jupyter-widgets/controls",
3551
+      "model_module_version": "1.1.0",
3552
+      "model_name": "ButtonStyleModel",
3553
+      "state": {}
3554
+     }
3555
+    },
3556
+    "version_major": 2,
3557
+    "version_minor": 0
3558
+   }
3559
+  }
3560
+ },
3561
+ "nbformat": 4,
3562
+ "nbformat_minor": 2
3563
+}
0 3564
new file mode 100644
1 3565
Binary files /dev/null and b/content/posts/coding/adaptive-sampling/runner.webm differ
2 3566
new file mode 100644
... ...
@@ -0,0 +1,250 @@
1
+<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+<!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+<svg
5
+   xmlns:dc="http://purl.org/dc/elements/1.1/"
6
+   xmlns:cc="http://creativecommons.org/ns#"
7
+   xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
8
+   xmlns:svg="http://www.w3.org/2000/svg"
9
+   xmlns="http://www.w3.org/2000/svg"
10
+   xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11
+   xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12
+   width="232.79803mm"
13
+   height="113.12663mm"
14
+   viewBox="0 0 232.79803 113.12663"
15
+   version="1.1"
16
+   id="svg8"
17
+   inkscape:version="0.92.3 (2405546, 2018-03-11)"
18
+   sodipodi:docname="whyatt-loss.svg">
19
+  <defs
20
+     id="defs2">
21
+    <marker
22
+       inkscape:stockid="TriangleOutL"
23
+       orient="auto"
24
+       refY="0"
25
+       refX="0"
26
+       id="marker1492"
27
+       style="overflow:visible"
28
+       inkscape:isstock="true">
29
+      <path
30
+         inkscape:connector-curvature="0"
31
+         id="path1490"
32
+         d="M 5.77,0 -2.88,5 V -5 Z"
33
+         style="fill:#808080;fill-opacity:1;fill-rule:evenodd;stroke:#808080;stroke-width:1.00000003pt;stroke-opacity:1"
34
+         transform="scale(0.8)" />
35
+    </marker>
36
+    <marker
37
+       inkscape:isstock="true"
38
+       style="overflow:visible"
39
+       id="marker1222"
40
+       refX="0"
41
+       refY="0"
42
+       orient="auto"
43
+       inkscape:stockid="TriangleOutL"
44
+       inkscape:collect="always">
45
+      <path
46
+         transform="scale(0.8)"
47
+         style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.00000003pt;stroke-opacity:1"
48
+         d="M 5.77,0 -2.88,5 V -5 Z"
49
+         id="path1220"
50
+         inkscape:connector-curvature="0" />
51
+    </marker>
52
+    <marker
53
+       inkscape:stockid="TriangleOutL"
54
+       orient="auto"
55
+       refY="0"
56
+       refX="0"
57
+       id="TriangleOutL"
58
+       style="overflow:visible"
59
+       inkscape:isstock="true"
60
+       inkscape:collect="always">
61
+      <path
62
+         id="path1052"
63
+         d="M 5.77,0 -2.88,5 V -5 Z"
64
+         style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:#333333;stroke-width:1.00000003pt;stroke-opacity:1"
65
+         transform="scale(0.8)"
66
+         inkscape:connector-curvature="0" />
67
+    </marker>
68
+  </defs>
69
+  <sodipodi:namedview
70
+     id="base"
71
+     pagecolor="#ffffff"
72
+     bordercolor="#666666"
73
+     borderopacity="1.0"
74
+     inkscape:pageopacity="0.0"
75
+     inkscape:pageshadow="2"
76
+     inkscape:zoom="0.49497475"
77
+     inkscape:cx="-152.45381"
78
+     inkscape:cy="344.18185"
79
+     inkscape:document-units="mm"
80
+     inkscape:current-layer="layer1"
81
+     showgrid="false"
82
+     inkscape:window-width="1888"
83
+     inkscape:window-height="1025"
84
+     inkscape:window-x="14"
85
+     inkscape:window-y="37"
86
+     inkscape:window-maximized="0"
87
+     showguides="false"
88
+     fit-margin-top="0"
89
+     fit-margin-left="0"
90
+     fit-margin-right="0"
91
+     fit-margin-bottom="0" />
92
+  <metadata
93
+     id="metadata5">
94
+    <rdf:RDF>
95
+      <cc:Work
96
+         rdf:about="">
97
+        <dc:format>image/svg+xml</dc:format>
98
+        <dc:type
99
+           rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
100
+        <dc:title></dc:title>
101
+      </cc:Work>
102
+    </rdf:RDF>
103
+  </metadata>
104
+  <g
105
+     inkscape:label="Layer 1"
106
+     inkscape:groupmode="layer"
107
+     id="layer1"
108
+     transform="translate(-7.0756181,-29.567122)">
109
+    <path
110
+       inkscape:connector-curvature="0"
111
+       id="path904"
112
+       d="M 158.21632,84.001397 81.675222,57.351431 228.61663,67.583822 Z"
113
+       style="fill:#ffd5d5;fill-rule:evenodd;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
114
+       sodipodi:nodetypes="cccc" />
115
+    <path
116
+       style="fill:#ffd5d5;fill-rule:evenodd;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
117
+       d="M 81.67522,57.351429 38.24339,114.14236 158.21632,84.001395 Z"
118
+       id="path902"
119
+       inkscape:connector-curvature="0" />
120
+    <path
121
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.5, 1.5;stroke-dashoffset:0;stroke-opacity:1"
122
+       d="M 38.24339,114.14236 158.21632,84.001395"
123
+       id="path892"
124
+       inkscape:connector-curvature="0" />
125
+    <path
126
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:1.5, 1.5;stroke-dashoffset:0;stroke-opacity:1"
127
+       d="M 81.675222,57.351431 228.61663,67.583822"
128
+       id="path894"
129
+       inkscape:connector-curvature="0"
130
+       sodipodi:nodetypes="cc" />
131
+    <path
132
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
133
+       d="M 158.21632,84.001397 228.61663,67.583822"
134
+       id="path833"
135
+       inkscape:connector-curvature="0"
136
+       sodipodi:nodetypes="cc" />
137
+    <path
138
+       style="fill:none;fill-rule:evenodd;stroke:#ff2a2a;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
139
+       d="M 81.675222,57.351431 158.21632,84.001397"
140
+       id="path829"
141
+       inkscape:connector-curvature="0"
142
+       sodipodi:nodetypes="cc" />
143
+    <path
144
+       sodipodi:nodetypes="cc"
145
+       inkscape:connector-curvature="0"
146
+       id="path831"
147
+       d="M 81.675222,57.351431 38.243392,114.14236"
148
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" />
149
+    <path
150
+       style="opacity:1;fill:#333333;fill-opacity:1;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
151
+       id="path819"
152
+       sodipodi:type="arc"
153
+       sodipodi:cx="38.175594"
154
+       sodipodi:cy="114.05952"
155
+       sodipodi:rx="2.2678571"
156
+       sodipodi:ry="2.2678571"
157
+       sodipodi:start="0.6422864"
158
+       sodipodi:end="0.6203319"
159
+       sodipodi:open="true"
160
+       d="m 39.991532,115.41803 a 2.2678571,2.2678571 0 0 1 -3.16446,0.46485 2.2678571,2.2678571 0 0 1 -0.482218,-3.16186 2.2678571,2.2678571 0 0 1 3.159166,-0.49956 2.2678571,2.2678571 0 0 1 0.516897,3.15637" />
161
+    <path
162
+       d="m 83.458798,58.721596 a 2.2678571,2.2678571 0 0 1 -3.16446,0.464857 2.2678571,2.2678571 0 0 1 -0.482218,-3.16186 2.2678571,2.2678571 0 0 1 3.159166,-0.499565 2.2678571,2.2678571 0 0 1 0.516897,3.156376"
163
+       sodipodi:open="true"
164
+       sodipodi:end="0.6203319"
165
+       sodipodi:start="0.6422864"
166
+       sodipodi:ry="2.2678571"
167
+       sodipodi:rx="2.2678571"
168
+       sodipodi:cy="57.363087"
169
+       sodipodi:cx="81.64286"
170
+       sodipodi:type="arc"
171
+       id="path821"
172
+       style="opacity:1;fill:#ff2a2a;fill-opacity:1;stroke:#ff2a2a;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
173
+    <path
174
+       style="opacity:1;fill:#ff2a2a;fill-opacity:1;stroke:#ff2a2a;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal"
175
+       id="path823"
176
+       sodipodi:type="arc"
177
+       sodipodi:cx="-102.90166"
178
+       sodipodi:cy="-146.75374"
179
+       sodipodi:rx="2.2678571"
180
+       sodipodi:ry="2.2678571"
181
+       sodipodi:start="0.6422864"
182
+       sodipodi:end="0.61669274"
183
+       sodipodi:open="true"
184
+       d="m -101.08572,-145.39523 a 2.2678571,2.2678571 0 0 1 -3.1628,0.46608 2.2678571,2.2678571 0 0 1 -0.48631,-3.15975 2.2678571,2.2678571 0 0 1 3.15658,-0.50652 2.2678571,2.2678571 0 0 1 0.5267,3.15327"
185
+       transform="rotate(153.02268)" />
186
+    <path
187
+       d="m 230.49154,68.926953 a 2.2678571,2.2678571 0 0 1 -3.16446,0.464856 2.2678571,2.2678571 0 0 1 -0.48222,-3.16186 2.2678571,2.2678571 0 0 1 3.15916,-0.499565 2.2678571,2.2678571 0 0 1 0.5169,3.156377"
188
+       sodipodi:open="true"
189
+       sodipodi:end="0.6203319"
190
+       sodipodi:start="0.6422864"
191
+       sodipodi:ry="2.2678571"
192
+       sodipodi:rx="2.2678571"
193
+       sodipodi:cy="67.568443"
194
+       sodipodi:cx="228.6756"
195
+       sodipodi:type="arc"
196
+       id="path825"
197
+       style="opacity:1;fill:#333333;fill-opacity:1;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1;paint-order:normal" />
198
+    <path
199
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1222)"
200
+       d="M 26.836309,137.90506 V 35.248842"
201
+       id="path906"
202
+       inkscape:connector-curvature="0"
203
+       sodipodi:nodetypes="cc" />
204
+    <path
205
+       style="fill:none;fill-rule:evenodd;stroke:#333333;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#TriangleOutL)"
206
+       d="M 20.78869,132.20237 H 234.19193"
207
+       id="path908"
208
+       inkscape:connector-curvature="0"
209
+       sodipodi:nodetypes="cc" />
210
+    <text
211
+       xml:space="preserve"
212
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:6.61458349px;font-family:sans-serif;-inkscape-font-specification:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
213
+       x="6.8327389"
214
+       y="85.951286"
215
+       id="text1458"><tspan
216
+         sodipodi:role="line"
217
+         id="tspan1456"
218
+         x="6.8327389"
219
+         y="85.951286"
220
+         style="font-size:10.58333302px;line-height:6.61458349px;stroke-width:0.26458332px">f(x)</tspan></text>
221
+    <text
222
+       xml:space="preserve"
223
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:6.61458349px;font-family:sans-serif;-inkscape-font-specification:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
224
+       x="128.25722"
225
+       y="142.69376"
226
+       id="text1462"><tspan
227
+         sodipodi:role="line"
228
+         id="tspan1460"
229
+         x="128.25722"
230
+         y="142.69376"
231
+         style="font-size:10.58333302px;line-height:6.61458349px;stroke-width:0.26458332px">x</tspan></text>
232
+    <path
233
+       style="fill:#808080;fill-rule:evenodd;stroke:#808080;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker1492)"
234
+       d="M 145.7885,106.3451 111.42938,87.072654"
235
+       id="path1482"
236
+       inkscape:connector-curvature="0"
237
+       sodipodi:nodetypes="cc" />
238
+    <text
239
+       xml:space="preserve"
240
+       style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.58333302px;line-height:6.61458302px;font-family:sans-serif;-inkscape-font-specification:sans-serif;letter-spacing:0px;word-spacing:0px;fill:#808080;fill-opacity:1;stroke:none;stroke-width:0.26458332px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;"
241
+       x="147.59454"
242
+       y="111.35836"
243
+       id="text1610"><tspan
244
+         sodipodi:role="line"
245
+         id="tspan1608"
246
+         x="147.59454"
247
+         y="111.35836"
248
+         style="font-size:10.58333302px;stroke-width:0.26458332px;fill:#808080;">loss</tspan></text>
249
+  </g>
250
+</svg>